コード例 #1
0
ファイル: advertising.php プロジェクト: andy-profi/bxApiDocs
 /**
  * <p>Метод фиксирует клик по баннеру в базе данных.</p>
  *
  *
  * @param int $BANNER_ID  ID баннера.
  *
  * @param int $CONTRACT_ID = false ID контракта которому принадлежит баннер; если задано false - ID
  * контракта берется из параметров баннера. Необязательный
  * параметр.
  *
  * @return mixed 
  *
  * @static
  * @link http://dev.1c-bitrix.ru/api_help/advertising/classes/cadvbanner/click.php
  * @author Bitrix
  */
 public static function Click($BANNER_ID)
 {
     $err_mess = CAdvBanner::err_mess() . "<br>Function: Click<br>Line: ";
     global $DB;
     $BANNER_ID = intval($BANNER_ID);
     if ($BANNER_ID <= 0) {
         return false;
     }
     $strSql = "\n\t\t\tSELECT\n\t\t\t\tB.FIX_CLICK,\n\t\t\t\tB.CONTRACT_ID\n\t\t\tFROM\n\t\t\t\tb_adv_banner B\n\t\t\tWHERE\n\t\t\t\tB.ID = {$BANNER_ID}\n\t\t\t";
     $rsBanner = $DB->Query($strSql, false, $err_mess . __LINE__);
     if ($arBanner = $rsBanner->Fetch()) {
         if ($arBanner["FIX_CLICK"] == "Y") {
             /********************
             				обновим баннер
             			********************/
             // параметры баннера
             $arFields = array("CLICK_COUNT" => "CLICK_COUNT + 1", "DATE_LAST_CLICK" => $DB->GetNowFunction());
             $rows = $DB->Update("b_adv_banner", $arFields, "WHERE ID = {$BANNER_ID}", $err_mess . __LINE__);
             if (intval($rows) > 0) {
                 foreach (getModuleEvents('advertising', 'onBannerClick', true) as $arEvent) {
                     executeModuleEventEx($arEvent, array($BANNER_ID, $arFields));
                 }
                 // счетчик по дням
                 $strSql = "\n\t\t\t\t\t\tUPDATE b_adv_banner_2_day SET\n\t\t\t\t\t\t\tCLICK_COUNT = CLICK_COUNT + 1\n\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\tBANNER_ID = {$BANNER_ID}\n\t\t\t\t\t\tand\tDATE_STAT = " . $DB->GetNowDate() . "\n\t\t\t\t\t\t";
                 $z = $DB->Query($strSql, false, $err_mess . __LINE__);
                 $rows = $z->AffectedRowsCount();
                 if (intval($rows) <= 0) {
                     $strSql = "\n\t\t\t\t\t\t\tSELECT\n\t\t\t\t\t\t\t\t'x'\n\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\tb_adv_banner_2_day\n\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\tBANNER_ID = {$BANNER_ID}\n\t\t\t\t\t\t\tand\tDATE_STAT = " . $DB->GetNowDate() . "\n\t\t\t\t\t\t\t";
                     $w = $DB->Query($strSql, false, $err_mess . __LINE__);
                     if (!($wr = $w->Fetch())) {
                         $strSql = "\n\t\t\t\t\t\t\t\tINSERT INTO b_adv_banner_2_day (DATE_STAT, BANNER_ID, CLICK_COUNT) VALUES (\n\t\t\t\t\t\t\t\t\t" . $DB->GetNowDate() . ",\n\t\t\t\t\t\t\t\t\t{$BANNER_ID},\n\t\t\t\t\t\t\t\t\t1)\n\t\t\t\t\t\t\t\t";
                         $DB->Query($strSql, true, $err_mess . __LINE__);
                     }
                 }
             }
             /*************************
             				обновим контракт
             			*************************/
             $DONT_USE_CONTRACT = COption::GetOptionString("advertising", "DONT_USE_CONTRACT", "N");
             $CONTRACT_ID = intval($arBanner["CONTRACT_ID"]);
             if ($CONTRACT_ID > 0 && $DONT_USE_CONTRACT == "N") {
                 $arFields = array("CLICK_COUNT" => "CLICK_COUNT + 1");
                 $DB->Update("b_adv_contract", $arFields, "WHERE ID = {$CONTRACT_ID}", $err_mess . __LINE__);
             }
         }
     }
 }
コード例 #2
0
ファイル: mobile.php プロジェクト: DarneoStudio/bitrix
 public static function onMobileInit()
 {
     if (!defined("MOBILE_INIT_EVENT_SKIP")) {
         $db_events = getModuleEvents("mobileapp", "OnMobileInit");
         while ($arEvent = $db_events->Fetch()) {
             ExecuteModuleEventEx($arEvent);
         }
     }
 }
コード例 #3
0
ファイル: mobile.php プロジェクト: ASDAFF/1C_Bitrix_info_site
 /**
  *  detects mobile platform and attaches all needed javascript files
  */
 protected function _Init()
 {
     if (self::$isAlreadyInit) {
         return;
     }
     header("BX-Cordova-Version: " . self::$supportedCordovaVersion);
     $GLOBALS["BITRIX_PLATFORM"] = self::$platform;
     $GLOBALS["BITRIX_API_VERSION"] = self::$apiVersion;
     AddEventHandler("main", "OnBeforeEndBufferContent", array(__CLASS__, "initScripts"));
     self::$isAlreadyInit = true;
     $db_events = getModuleEvents("mobileapp", "OnMobileInit");
     while ($arEvent = $db_events->Fetch()) {
         ExecuteModuleEventEx($arEvent);
     }
 }