예제 #1
0
 function ClearAffiliateSum($affiliate)
 {
     global $DB;
     $arAffiliate = CSaleAffiliate::CheckAffiliateFunc($affiliate);
     if (!$arAffiliate) {
         return False;
     }
     $arAffiliate["PAID_SUM"] = str_replace(",", ".", $arAffiliate["PAID_SUM"]);
     $arAffiliate["PAID_SUM"] = DoubleVal($arAffiliate["PAID_SUM"]);
     if ($arAffiliate["PAID_SUM"] > 0) {
         if (!array_key_exists("BASE_LANG_CURRENCIES", $GLOBALS)) {
             $GLOBALS["BASE_LANG_CURRENCIES"] = array();
         }
         if (!array_key_exists($arAffiliate["SITE_ID"], $GLOBALS["BASE_LANG_CURRENCIES"])) {
             $GLOBALS["BASE_LANG_CURRENCIES"][$arAffiliate["SITE_ID"]] = CSaleLang::GetLangCurrency($arAffiliate["SITE_ID"]);
         }
         if (!CSaleAffiliate::Update($arAffiliate["ID"], array("PAID_SUM" => 0))) {
             if ($ex = $GLOBALS["APPLICATION"]->GetException()) {
                 $GLOBALS["APPLICATION"]->ThrowException($ex->GetString(), "AF_UPDATE_ERROR");
             } else {
                 $GLOBALS["APPLICATION"]->ThrowException(GetMessage("ACGA1_ERROR_UPDATE_SUM"), "AF_UPDATE_ERROR");
             }
             return False;
         }
         $arFields = array("AFFILIATE_ID" => $arAffiliate["ID"], "TRANSACT_DATE" => date($DB->DateFormatToPHP(CSite::GetDateFormat("FULL", SITE_ID))), "AMOUNT" => $arAffiliate["PAID_SUM"], "CURRENCY" => $GLOBALS["BASE_LANG_CURRENCIES"][$arAffiliate["SITE_ID"]], "DEBIT" => "N", "DESCRIPTION" => "AFFILIATE_CLEAR", "EMPLOYEE_ID" => $GLOBALS["USER"]->IsAuthorized() ? $GLOBALS["USER"]->GetID() : False);
         CSaleAffiliateTransact::Add($arFields);
     }
     return True;
 }
예제 #2
0
 $PAID_SUM = str_replace(",", ".", $PAID_SUM);
 $PAID_SUM = DoubleVal($PAID_SUM);
 $APPROVED_SUM = str_replace(",", ".", $APPROVED_SUM);
 $APPROVED_SUM = DoubleVal($APPROVED_SUM);
 $PENDING_SUM = str_replace(",", ".", $PENDING_SUM);
 $PENDING_SUM = DoubleVal($PENDING_SUM);
 if (StrLen($errorMessage) <= 0) {
     $dbAffiliate = CSaleAffiliate::GetList(array(), array("USER_ID" => $USER_ID, "SITE_ID" => $SITE_ID, "!ID" => $ID));
     if ($dbAffiliate->Fetch()) {
         $errorMessage .= str_replace("#USER_ID#", $USER_ID, str_replace("#SITE_ID#", $SITE_ID, GetMessage("SAE_AFFILIATE_ALREADY_EXISTS"))) . ".<br>";
     }
 }
 if (StrLen($errorMessage) <= 0) {
     $arFields = array("SITE_ID" => $SITE_ID, "USER_ID" => $USER_ID, "AFFILIATE_ID" => IntVal($AFFILIATE_ID) > 0 ? $AFFILIATE_ID : false, "PLAN_ID" => $PLAN_ID, "ACTIVE" => $ACTIVE, "DATE_CREATE" => $DATE_CREATE, "PAID_SUM" => $PAID_SUM, "APPROVED_SUM" => $APPROVED_SUM, "PENDING_SUM" => $PENDING_SUM, "LAST_CALCULATE" => StrLen($LAST_CALCULATE) > 0 ? $LAST_CALCULATE : false, "AFF_SITE" => $AFF_SITE, "AFF_DESCRIPTION" => $AFF_DESCRIPTION, "FIX_PLAN" => $FIX_PLAN);
     if ($ID > 0) {
         if (!CSaleAffiliate::Update($ID, $arFields)) {
             if ($ex = $APPLICATION->GetException()) {
                 $errorMessage .= $ex->GetString() . ".<br>";
             } else {
                 $errorMessage .= GetMessage("SAE_ERROR_SAVE_AFF") . ".<br>";
             }
         }
     } else {
         $ID = CSaleAffiliate::Add($arFields);
         $ID = IntVal($ID);
         if ($ID <= 0) {
             if ($ex = $APPLICATION->GetException()) {
                 $errorMessage .= $ex->GetString() . ".<br>";
             } else {
                 $errorMessage .= GetMessage("SAE_ERROR_SAVE_AFF") . ".<br>";
             }