Current Path : /var/www/html/clients/old.e-nkama.ru/e-nkama_bitrix/bitrix/template/ |
Current File : /var/www/html/clients/old.e-nkama.ru/e-nkama_bitrix/bitrix/template/softkey_editable.php |
<? if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die(); $STAT_RIGHT = $APPLICATION->GetGroupRight("statistic"); if($STAT_RIGHT=="D") $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); /*************************************************************************** Convertation of the standard Softkey CSV file to the CSV file format of the Statistics module. ***************************************************************************/ /* Input parameters: INPUT_CSV_FILE - path to the source file OUTPUT_CSV_FILE - path to the resulting file */ $SEPARATOR = ","; // CSV separator function CleanUpCsv(&$item) { $item = TrimEx($item, "\""); } function PrepareQuotes(&$item) { $item = "\"".str_replace("\"","\"\"", $item)."\""; } if ($fp_in = fopen($INPUT_CSV_FILE,"rb")) { $upload_dir = $_SERVER["DOCUMENT_ROOT"]."/".COption::GetOptionString("main","upload_dir","/upload/"). "/statistic"; if (substr($OUTPUT_CSV_FILE, 0, strlen($upload_dir))==$upload_dir && $fp_out = fopen($OUTPUT_CSV_FILE,"wb")) { $i = 0; // counter of the read valuable lines $j = 0; // counter of the written to the resulting file lines $lang_date_format = FORMAT_DATE; // date format for the current language $event1 = "softkey"; $event2 = "buy"; $EVENT_ID = CStatEventType::ConditionSet($event1, $event2, $arEventType)." (".$event1." / ".$event2.")"; $SITE_ID = GetEventSiteID(); // short site identifier (ID) while (!feof($fp_in)) { $arrCSV = fgetcsv($fp_in, 4096, $SEPARATOR); if (is_array($arrCSV) && count($arrCSV)>1) { array_walk($arrCSV, "CleanUpCsv"); reset($arrCSV); $i++; // if it is the first line then if ($arrCSV[0]=="AUTHOR_ID") { // get an array with the field numbers $arrS = array_flip($arrCSV); } elseif ($arrCSV[0]!="AUTHOR_ID" && is_array($arrS) && count($arrS)>0) // else form the CSV line in module format and write it to the resulting file { $arrRes = array(); // ID of an event type; $arrRes[] = $EVENT_ID; // event3 $arrRes[] = $arrCSV[$arrS["ORDER_ID"]]." / ".$arrCSV[$arrS["PROGRAM_ID"]]." / ".$arrCSV[$arrS["OPTION_ID"]]; // date $arrRes[] = $DB->FormatDate(trim($arrCSV[$arrS["PAID_DATE"]]), "DD.MM.YYYY", $lang_date_format); // additional parameter $ADDITIONAL_PARAMETER = $arrCSV[$arrS["REFERER1"]]; if (strpos($ADDITIONAL_PARAMETER,$SITE_ID)===false) { $ADDITIONAL_PARAMETER = $arrCSV[$arrS["REFERER2"]]; } $arrRes[] = $ADDITIONAL_PARAMETER; // money sum $arrRes[] = $arrCSV[$arrS["AMOUNT"]]; // currency $arrRes[] = $arrCSV[$arrS["CURRENCY"]]; $PAID_UP = $arrCSV[$arrS["PAID_UP"]]; // if short site identifier exists in Additional parameter then if (strpos($ADDITIONAL_PARAMETER,$SITE_ID)!==false && $PAID_UP=="Y") { // write the line to the resulting file $j++; array_walk($arrRes, "PrepareQuotes"); $str = implode(",",$arrRes); if ($j>1) $str = "\n".$str; fputs($fp_out, $str); } } } } @fclose($fp_out); } @fclose($fp_in); } /* Îïèñàíèå CSV ïîëåé: AUTHOR_ID - êîä êîìïàíèè àâòîðà; AUTHOR_NAME - íàçâàíèå êîìïàíèè àâòîðà; ORDER_ID - êîä çàêàçà; BASKET_ID - êîä ïîçèöèè çàêàçà; DATE_INSERT - äàòà ñîçäàíèÿ çàêàçà; PROGRAM_ID - êîä ïðîãðàììû; OPTION_ID - êîä îïöèè ïðîãðàììû; PROGRAM_NAME - íàçâàíèå ïðîãðàììû; LID - ðåãèîí ïðîäàæ; BUYER_NAME - ïîëíîå èìÿ ïîêóïàòåëÿ; BUYER_COMPANY_ID - êîä êîìïàíèè ïîêóïàòåëÿ; BUYER_COMPANY - íàçâàíèå êîìïàíèè ïîêóïàòåëÿ; QUANTITY - êîëè÷åñòâî êîïèé; AMOUNT - ñòîèìîñòü çàêàçà; CURRENCY - âàëþòà çàêàçà; CURRENCY_RATE_USD - êóðñ âàëþòû çàêàçà ïî îòíîøåíèþ ê USD; AMOUNT_USER_CURRENCY - ñòîèìîñòü â äîïîëíèòåëüíîé âàëþòå; CURRENCY_RATE_USER_CURRENCY - êóðñ äîïîëíèòåëüíîé âàëþòû ê USD; STATUS - òåêóùèé ñòàòóñ çàêàçà; DATE_STATUS - äàòà ïîñëåäíåãî èçìåíåíèÿ ñòàòóñà; DATE_DISPATCH - äàòà óñòàíîâëåíèÿ ñòàòóñà "îòãðóæåí"; CANCEL_REASON - ïðè÷èíà îòìåíû çàêàçà; CANCEL_REASON_ANOTHER - ïðîèçâîëüíàÿ ïðè÷èíà îòìåíû; PAID_UP - îïëà÷åí ëè çàêàç (Y/N) PAID_DATE - äàòà îïëàòû çàêàçà; DEALER_AGREEMENT_ID - êîä äèëåðñêîãî äîãîâîðà; DEALER_DISCOUNT - äèëåðñêàÿ ñêèäêà; BUYER_AGREEMENT_ID - êîä äîãîâîðà ïîêóïàòåëüñêîé ñêèäêè; BUYER_DISCOUNT - ïîêóïàòåëüñêàÿ ñêèäêà; COUPON - çíà÷åíèå êóïîíà äëÿ ñêèäêè; AUTHOR_AMOUNT - àâòîðñêîå âîçíàãðàæäåíèå; AUTHOR_AMOUNT_USER_CURRENCY - àâòîðñêîå âîçíàãðàæäåíèå â äîïîëíèòåëüíîé âàëþòå; COMMISSION_AGREEMENT_ID - êîä àâòîðñêîãî äîãîâîðà; COMMISSION_AMOUNT - âåëè÷èíà êîìèññèè; COMMISSION_CURRENCY - âàëþòà âûïëàòû àâòîðñêîãî âîçíàãðàæäåíèÿ; DELIVERY_LID - ïðåäñòàâèòåëüñòâî, îòâåòñòâåííîå çà îòãðóçêó çàêàçà; TRANSFER - ïåðåâåäåíû ëè ñðåäñòâà íà âíóòðåííèé ñ÷åò àâòîðà (Y/N); AFFILIATE_ID - êîä êîìïàíèè àôôèëèàòà; AFFILIATE_NAME - íàçâàíèå êîìïàíèè àôôèëèàòà; AFFILIATE_URL_FROM - ñ êàêîé ñòðàíèöû àôôèëèàòà ïåðåøåë ïîêóïàòåëü; AFFILIATE_URL_TO - íà êàêóþ ñòðàíèöó ïåðåøåë ïîêóïàòåëü îò àôôèëèàòà; AFFILIATE_DATE - äàòà ïåðåõîäà îò àôôèëèàòà; AFFILIATE_AGREEMENT_ID - êîä àôôèëèàòñêîãî äîãîâîðà; AFFILIATE_AMOUNT - êîìèññèÿ àôôèëèàòà; IP_ADDRESS - IP àäðåñ ïîêóïàòåëÿ; HTTP_HOST - õîñò ïîêóïàòåëÿ; HTTP_REFERER - ñ êàêîé ñòðàíèöû ïîêóïàòåëü îôîðìèë çàêàç; HTTP_ACCEPT_LANGUAGE - ÿçûêè áðàóçåðà ïîêóïàòåëÿ; HTTP_USER_AGENT - íàçâàíèå áðàóçåðà ïîêóïàòåëÿ; REG_NAME - èìÿ äëÿ ðåãèñòðàöèè; REG_COMPANY - íàçâàíèå êîìïàíèè äëÿ ðåãèñòðàöèè; REG_EMAIL - email äëÿ ðåãèñòðàöèè; REG_ZIPCODE - ïî÷òîâûé èíäåêñ äëÿ ðåãèñòðàöèè; REG_LOCATION - ìåñòîïîëîæåíèå äëÿ ðåãèñòðàöèè; REG_CITY - ãîðîä äëÿ ðåãèñòðàöèè; REG_ADDRESS - àäðåñ äëÿ ðåãèñòðàöèè; REG_PHONE - òåëåôîí äëÿ ðåãèñòðàöèè; REG_PARAM1 - äîïîëíèòåëüíîå ïîëå 1; REG_PARAM2 - äîïîëíèòåëüíîå ïîëå 2; REG_PARAM3 - äîïîëíèòåëüíîå ïîëå 3; REFERER1 - ïàðàìåòð referer1 èç ññûëêè íà çàêàç (èäåíòèôèêàòîð ðåêëàìíîé êàìïàíèè); REFERER2 - ïàðàìåòð referer2 èç ññûëêè íà çàêàç; REF_URL_FROM - îòêóäà ïåðåøåë ïîêóïàòåëü ïî ðåêëàìíîé êàìïàíèè; REF_URL_TO - êóäà ïåðåøåë ïîêóïàòåëü ïî ðåêëàìíîé êàìïàíèè; REF_DATE - äàòà ïåðåõîäà ïî ðåêëàìíîé êàìàïíèè; SESSION_REFERER - îòêóäà ïîêóïàòåëü ïðèøåë íà ñåðâåð; ORD_EMAIL - êîíòàêòíûé email â çàêàçå; ORD_CONTACT_PERSON - êîíòàêòíîå ëèöî â çàêàçå; ORD_COMPANY_NAME - íàçâàíèå êîìïàíèè â çàêàçå; ORD_INN - ÈÍÍ â çàêàçå; ORD_LOCATION - ìåñòîïîëîæåíèå â çàêàçå; ORD_COUNTRY - ñòðàíà â çàêàçå; ORD_ZIP_CODE - ïî÷òîâûé èíäåêñ â çàêàçå; ORD_STATE - øòàò â çàêàçå; ORD_CITY - ãîðîä â çàêàçå; ORD_ADDRESS - þðèäè÷åñêèé àäðåñ â çàêàçå; ORD_ADDRESS_FACT - ôàêòè÷åñêèé àäðåñ â çàêàçå; ORD_PHONE - òåëåôîí â çàêàçå; ORD_FAX - ôàêñ â çàêàçå; ORD_OKONH - ÎÊÎÍÕ â çàêàçå; ORD_OKPO - ÎÊÏÎ â çàêàçå; ORG_TYPE_NAME - îðãàíèçàöèîííàÿ ôîðìà ïëàòåëüùèêà; PAYMENT_SYS_NAME - íàçâàíèå ìåòîäà îïëàòû. */ ?>