$l_aReturn = array_merge($l_aReturn, $temp); $temp = array(); } } if ($id != 0) { $allResults = $sph->multiSearch(); for ($i = 0; $i < sizeof($allResults); $i++) { $l_iTotalFound = $sph->getTotalFound($i); $temp[$i]['count'] = $l_iTotalFound; unset($temp[$i]['lat']); unset($temp[$i]['lng']); unset($temp[$i]['radius']); } $l_aReturn = array_merge($l_aReturn, $temp); } if (!empty($l_aReturn)) { $l_sXMLbase = '<?xml version="1.0" encoding="UTF-8"?><Regions></Regions>'; $l_sFilename = "/home/eyezeek/netup/ru/seo/regions_" . $l_sSection . "_data.xml"; echo "Saving to XML file {$l_sFilename}...\n"; $l_oXML = new SimpleXMLElement($l_sXMLbase); foreach ($l_aReturn as $region) { $l_nodePartner = $l_oXML->AddChild('Region'); $l_nodePartner->AddChild('name', $region['name']); $l_nodePartner->AddChild('icon', $region['icon']); $l_nodePartner->AddChild('count', $region['count']); $l_nodePartner->AddChild('translit', $region['translit']); } file_put_contents($l_sFilename, $l_oXML->asXML()); unset($l_oXML); $l_oXML = NULL; }
$sph->setOptions($options); $res = $sph->search(); if ($res) { array_unshift($l_aXmlData, array('count' => $res['total_found'], 'name' => 'Московская область', 'translit' => 'moskovskaya-oblast')); } } /** * Creating XML */ if (!empty($l_aXmlData)) { $l_sXMLbase = '<?xml version="1.0" encoding="UTF-8"?><TopFortyCities></TopFortyCities>'; $l_sFilename = "/home/eyezeek/netup/ru/seo/top_forty_cities_" . $l_sSection . "_data.xml"; echo "Saving to XML file {$l_sFilename}...\n"; $l_oXML = new SimpleXMLElement($l_sXMLbase); foreach ($l_aXmlData as $city) { $l_nodePartner = $l_oXML->AddChild('City'); $l_nodePartner->AddChild('name', $city['name']); $l_nodePartner->AddChild('count', $city['count']); $l_nodePartner->AddChild('translit', $city['translit']); } file_put_contents($l_sFilename, $l_oXML->asXML()); unset($l_oXML); $l_oXML = NULL; echo "\nCompleted.\n"; } } function translit($origin, $link) { $sql = "SELECT origin,translit\n\t\t\tFROM translitted_values t\n\t\t\tWHERE origin='{$origin}'"; //echo"\n$sql\n"; $res = mysqli_query($link, $sql);
public $port; public function __construct($port) { $this->port = $port; } } $sph = new CSphinx(new sph_conf('3313')); $options = array('connectTimeout' => 5, 'arrayResult' => TRUE, 'matchMode' => SPH_MATCH_EXTENDED2, 'index' => 'i_ref_vehicles i_delta_vehicles', 'page' => 1, 'limit' => 1); $l_sSection = 'vehicles'; $sph->resetSphinx(); $options['groupBy'] = array('l_www_id', SPH_GROUPBY_ATTR); $sph->setAttribute('www_site_type', '2'); $sph->setAttribute('what', $l_sSection); $sph->setFilter($sph->VALUE_FILTER, array('alps_promoted', array(1), FALSE)); $sph->setOptions($options); $result = $sph->search(NULL, FALSE); foreach ($result['matches'] as $one_promoted_dealer) { $l_aReturnIDs[] = $one_promoted_dealer['attrs']['l_www_id']; } if (!empty($result)) { $l_sXMLbase = '<?xml version="1.0" encoding="UTF-8"?><Default_top_dealers></Default_top_dealers>'; $l_sFile_name = "/home/eyezeek/netup/ru/seo/" . $l_sSection . "_default_top_dealers.xml"; $l_oXML = new SimpleXMLElement($l_sXMLbase); foreach ($l_aReturnIDs as $dealer) { $l_node = $l_oXML->AddChild('dealer'); $l_node->AddChild('id', $dealer); } file_put_contents($l_sFile_name, $l_oXML->asXML()); unset($l_oXML); $l_oXML = NULL; }
$tmp_arr = array(); for ($i = 0; $i < count($cities); $i++) { $sph->setAttribute('what', $l_sSection); //don't filter for all Russia if ($i > 0) { $sph->setAttribute('llocationcity,', $cities[$i]['city_name']); } $sph->setOptions($options); $cities[$i]['count'] = $sph->addQuery(); } $allResults = $sph->multiSearch(); for ($i = 0; $i < sizeof($allResults); $i++) { $l_iTotalFound = $sph->getTotalFound($i); $cities[$i]['count'] = $l_iTotalFound; } $result = $cities; if (!empty($result)) { $l_sXMLbase = '<?xml version="1.0" encoding="UTF-8"?><Top_cities_jobs></Top_cities_jobs>'; $l_sFilecity_name = "/home/eyezeek/netup/ru/seo/top_cities_" . $l_sSection . ".xml"; $l_oXML = new SimpleXMLElement($l_sXMLbase); echo "Saving to XML file {$l_sFilecity_name}...\n"; foreach ($result as $city) { $l_nodeCity = $l_oXML->AddChild('City'); $l_nodeCity->AddChild('city_name', $city['city_name']); $l_nodeCity->AddChild('city_icon', $city['city_icon']); $l_nodeCity->AddChild('count', $city['count']); } } file_put_contents($l_sFilecity_name, $l_oXML->asXML()); unset($l_oXML); $l_oXML = NULL;
/** * This method returns a nice utf8-formatted XML file * with the data it got from self::exportArray. * * @param array Language array * @param string Invoice number * @return string Contains the XML data. * * @author Former03 GmbH :: Florian Lippert <*****@*****.**> */ function exportXml($lng = array(), $invoice_number = '') { if ($this->userId == 0 || !is_array($this->user) || empty($this->user) || $this->user[getModeDetails($this->mode, 'TABLE_PANEL_USERS', 'key')] != $this->userId) { return false; } $invoice = $this->exportArray($lng); $invoiceXml = new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8"?><invoice></invoice>'); $invoiceXml->addChild('invoice_number', utf8_encode(htmlspecialchars($invoice_number))); $invoiceXml->addChild('invoice_date', makeNicePresentableDate(date('Y-m-d'), $lng['panel']['dateformat_function'])); $address = $invoiceXml->addChild('address'); $address->addChild('name', utf8_encode(htmlspecialchars($this->user['name']))); $address->addChild('firstname', utf8_encode(htmlspecialchars($this->user['firstname']))); $address->addChild('title', utf8_encode(htmlspecialchars($this->user['title']))); $address->addChild('company', utf8_encode(htmlspecialchars($this->user['company']))); $address->addChild('street', utf8_encode(htmlspecialchars($this->user['street']))); $address->addChild('zipcode', utf8_encode(htmlspecialchars($this->user['zipcode']))); $address->addChild('city', utf8_encode(htmlspecialchars($this->user['city']))); $address->addChild('country', utf8_encode(htmlspecialchars($this->user['country']))); $billing = $invoiceXml->addChild('billing'); $billing->addChild('contract_number', utf8_encode(htmlspecialchars($this->user['contract_number']))); $billing->addChild('contract_details', utf8_encode(htmlspecialchars(sprintf(html_entity_decode($lng['invoice']['contract_details_template']), makeNicePresentableDate($this->user['contract_date'], $lng['panel']['dateformat_function']), (int) $this->user['diskspace'] / 1024 == '-1' ? html_entity_decode($lng['customer']['unlimited']) : (string) round((int) $this->user['diskspace'] / 1024, 2), $this->user['additional_diskspace_fee'], (string) round((int) $this->user['additional_diskspace_unit'] / 1024, 4), (int) $this->user['traffic'] / (1024 * 1024) == '-1' ? html_entity_decode($lng['customer']['unlimited']) : (string) round((int) $this->user['traffic'] / (1024 * 1024), 4), $this->user['additional_traffic_fee'], (string) round((int) $this->user['additional_traffic_unit'] / (1024 * 1024), 4), $this->user['included_domains_qty'], $this->user['interval_fee'], str_replace('1 ' . $lng['panel']['intervalfee_type'][$this->user['interval_type']], $lng['panel']['intervalfee_type_one'][$this->user['interval_type']], $this->user['interval_length'] . ' ' . $lng['panel']['intervalfee_type'][$this->user['interval_type']]), str_replace('1 ' . $lng['panel']['intervalfee_type'][$this->user['interval_type']], '1 ' . $lng['panel']['intervalfee_type_one'][$this->user['interval_type']], (string) ((int) $this->user['interval_length'] * (int) $this->user['payment_every']) . ' ' . $lng['panel']['intervalfee_type'][$this->user['interval_type']]))))); $billing->addChild('payment_method', utf8_encode(htmlspecialchars($this->user['payment_method']))); $billing->addChild('term_of_payment', utf8_encode(htmlspecialchars($this->user['term_of_payment']))); $billing->addChild('bankaccount_holder', utf8_encode(htmlspecialchars($this->user['bankaccount_holder']))); $billing->addChild('bankaccount_number', utf8_encode(htmlspecialchars($this->user['bankaccount_number']))); $billing->addChild('bankaccount_blz', utf8_encode(htmlspecialchars($this->user['bankaccount_blz']))); $billing->addChild('bankaccount_bank', utf8_encode(htmlspecialchars($this->user['bankaccount_bank']))); $billing->addChild('taxid', utf8_encode(htmlspecialchars($this->user['taxid']))); $billing->addChild('calc_tax', utf8_encode(htmlspecialchars($this->user['calc_tax']))); $total_fee = 0; $total_fee_taxed = 0; $tax = array(); $allservices_begin = 0; $allservices_end = 0; foreach ($invoice as $service_type => $service_details) { $service_category = $invoiceXml->addChild('service_category'); $service_category->addAttribute('service_type', utf8_encode(htmlspecialchars($service_type))); $service_category->addChild('caption', utf8_encode(htmlspecialchars(html_entity_decode($service_details['caption'])))); $service_category->addChild('interval', utf8_encode(htmlspecialchars(html_entity_decode($service_details['interval'])))); if (calculateDayDifference($service_details['service_date_begin'], $service_details['service_date_end']) != 0) { $invoiceXml->addChild('service_date_begin', utf8_encode(htmlspecialchars($service_details['service_date_begin']))); $invoiceXml->addChild('service_date_end', utf8_encode(htmlspecialchars($service_details['service_date_end']))); } else { $invoiceXml->addChild('service_date', utf8_encode(htmlspecialchars($service_details['service_date_begin']))); } if (calculateDayDifference($service_details['service_date_begin'], $allservices_begin) > 0 || $allservices_begin == 0) { $allservices_begin = $service_details['service_date_begin']; } if (calculateDayDifference($allservices_end, $service_details['service_date_end']) > 0 || $allservices_end == 0) { $allservices_end = $service_details['service_date_end']; } foreach ($service_details['rows'] as $rowid => $row) { $invoice_row = $service_category->addChild('invoice_row'); $invoice_row->addAttribute('key', utf8_encode(htmlspecialchars($row['key']))); $invoice_row->addChild('service_occurence', utf8_encode(htmlspecialchars($row['service_occurence']))); switch ($row['service_occurence']) { case 'once': $invoice_row->addAttribute('date', utf8_encode(htmlspecialchars(makeNicePresentableDate($row['service_date'], 'Ymd')))); $invoice_row->addChild('service_date', utf8_encode(htmlspecialchars($row['service_date']))); break; case 'period': $invoice_row->addAttribute('date', utf8_encode(htmlspecialchars(makeNicePresentableDate($row['service_date_begin'], 'Ymd')))); $invoice_row->addChild('service_date_begin', utf8_encode(htmlspecialchars($row['service_date_begin']))); $invoice_row->addChild('service_date_end', utf8_encode(htmlspecialchars($row['service_date_end']))); break; } $invoice_row->addChild('caption', utf8_encode(htmlspecialchars(html_entity_decode($row['description']['caption'])))); $invoice_row->addChild('interval', utf8_encode(htmlspecialchars($row['interval']))); $invoice_row->addChild('quantity', utf8_encode(htmlspecialchars($row['quantity']))); $invoice_row->addChild('single_fee', utf8_encode(htmlspecialchars($row['single_fee']))); $invoice_row->addChild('total_fee', utf8_encode(htmlspecialchars($row['total_fee']))); $invoice_row->addChild('taxrate', utf8_encode(htmlspecialchars($row['taxrate']))); $invoice_row->addChild('tax', utf8_encode(htmlspecialchars($row['tax']))); $invoice_row->addChild('total_fee_taxed', utf8_encode(htmlspecialchars($row['total_fee_taxed']))); if (!isset($tax[$row['taxrate']])) { $tax[$row['taxrate']] = 0; } $tax[$row['taxrate']] += $row['tax']; $total_fee += $row['total_fee']; $total_fee_taxed += $row['total_fee_taxed']; } } if (calculateDayDifference($allservices_begin, $allservices_end) != 0) { $invoiceXml->addChild('invoice_period', utf8_encode(htmlspecialchars(makeNicePresentableDate($allservices_begin, $lng['panel']['dateformat_function']) . ' - ' . makeNicePresentableDate($allservices_end, $lng['panel']['dateformat_function'])))); } else { $invoiceXml->addChild('invoice_period', utf8_encode(htmlspecialchars(makeNicePresentableDate($allservices_begin, $lng['panel']['dateformat_function'])))); } $credit_note = $this->getCreditNote(); if ($credit_note != 0) { $invoiceXml->addChild('credit_note', utf8_encode(htmlspecialchars(sprintf("%01.2f", $credit_note)))); $total_fee_taxed -= $credit_note; } $invoiceXml->addChild('total_fee', utf8_encode(htmlspecialchars(sprintf("%01.2f", $total_fee)))); foreach ($tax as $taxrate => $taxamount) { $taxXml = $invoiceXml->AddChild('tax', utf8_encode(htmlspecialchars(sprintf("%01.2f", $taxamount)))); $taxXml->addAttribute('taxrate', utf8_encode(htmlspecialchars($taxrate))); } $invoiceXml->addChild('total_fee_taxed', utf8_encode(htmlspecialchars(sprintf("%01.2f", $total_fee_taxed)))); return $invoiceXml->asXML(); }