function GetConfig() { $arConfig = array("CONFIG_GROUPS" => array("all" => GetMessage('SALE_DH_SIMPLE_CONFIG_TITLE')), "CONFIG" => array()); $dbLocationGroups = CSaleLocationGroup::GetList(); while ($arLocationGroup = $dbLocationGroups->Fetch()) { $arConfig["CONFIG"]["price_" . $arLocationGroup["ID"]] = array("TYPE" => "STRING", "DEFAULT" => "", "TITLE" => GetMessage("SALE_DH_SIMPLE_GROUP_PRICE") . " \"" . $arLocationGroup["NAME"] . "\" (" . COption::GetOptionString("sale", "default_currency", "RUB") . ')', "GROUP" => "all"); } return $arConfig; }
$defCurrency = "RUB"; } elseif ($lang == "en") { $defCurrency = "USD"; } $delivery = $wizard->GetVar("delivery"); WizardServices::IncludeServiceLang("step2.php", $lang); if (COption::GetOptionString("eshop", "wizard_installed", "N", WIZARD_SITE_ID) != "Y" || WIZARD_INSTALL_DEMO_DATA) { $locationGroupID = 0; $arLocation4Delivery = array(); $arLocationArr = array(); $dbLocation = CSaleLocation::GetList(array(), array("LID" => $lang)); while ($arLocation = $dbLocation->Fetch()) { $arLocation4Delivery[] = array("LOCATION_ID" => $arLocation["ID"], "LOCATION_TYPE" => "L"); $arLocationArr[] = $arLocation["ID"]; } $dbGroup = CSaleLocationGroup::GetList(); if ($arGroup = $dbGroup->Fetch()) { $arLocation4Delivery[] = array("LOCATION_ID" => $arGroup["ID"], "LOCATION_TYPE" => "G"); } else { $groupLang = array(array("LID" => "en", "NAME" => "Group 1")); if ($bRus) { $groupLang[] = array("LID" => $lang, "NAME" => GetMessage("SALE_WIZARD_GROUP")); } $locationGroupID = CSaleLocationGroup::Add(array("SORT" => 150, "LOCATION_ID" => $arLocationArr, "LANG" => $groupLang)); } //Location group if (IntVal($locationGroupID) > 0) { $arLocation4Delivery[] = array("LOCATION_ID" => $locationGroupID, "LOCATION_TYPE" => "G"); } $dbDelivery = CSaleDelivery::GetList(array(), array("LID" => WIZARD_SITE_ID)); if (!$dbDelivery->Fetch()) {
} $siteID = $arParams["site_id"]; if (strlen($arParams["site_id"]) <= 0) { $siteID = "s1"; } $dbSite = CSite::GetByID($siteID); if ($arSite = $dbSite->Fetch()) { $lang = $arSite["LANGUAGE_ID"]; } if (strlen($lang) <= 0) { $lang = "ru"; } $bRus = false; if ($lang == "ru") { $bRus = true; } __IncludeLang(GetLangFileName(dirname(__FILE__) . "/lang/", "/step8.php", $lang)); $dbLocation = CSaleLocation::GetList(array("ID" => "ASC"), array("LID" => $lang)); if ($arLocation = $dbLocation->Fetch()) { $arLocation4Delivery = array(); do { $arLocation4Delivery[] = array("LOCATION_ID" => $arLocation["ID"], "LOCATION_TYPE" => "L"); } while ($arLocation = $dbLocation->Fetch()); //Location group $dblocationGroupID = CSaleLocationGroup::GetList(array("ID" => "DESC")); if ($arLocationGroupID = $dblocationGroupID->Fetch()) { $locationGroupID = $arLocationGroupID["ID"]; } $arLocation4Delivery[] = array("LOCATION_ID" => $locationGroupID, "LOCATION_TYPE" => "G"); CSaleDelivery::Add(array("NAME" => GetMessage("SALE_WIZARD_COUR"), "LID" => $siteID, "PERIOD_FROM" => 7, "PERIOD_TO" => 15, "PERIOD_TYPE" => "D", "WEIGHT_FROM" => 2000, "WEIGHT_TO" => 0, "ORDER_PRICE_FROM" => 0, "ORDER_PRICE_TO" => 0, "ORDER_CURRENCY" => $bRus ? "RUB" : "USD", "ACTIVE" => "N", "PRICE" => "55", "CURRENCY" => $bRus ? "RUB" : "USD", "SORT" => 100, "DESCRIPTION" => "", "LOCATIONS" => $arLocation4Delivery)); }
</option> <?php } ?> </select> </td> </tr> <tr class="adm-detail-required-field"> <td width="40%" valign="top"><?php echo GetMessage("F_LOCATION2"); ?> :</td> <td width="60%" valign="top"> <select name="LOCATION2[]" size="5" multiple> <?php $db_vars = CSaleLocationGroup::GetList(array("NAME" => "ASC"), array(), LANG); ?> <?php $arLOCATION2 = array(); if ($bInitVars) { $arLOCATION2 = $LOCATION2; } else { $db_location = CSaleTaxRate::GetLocationList(array("TAX_RATE_ID" => $ID, "LOCATION_TYPE" => "G")); while ($arLocation = $db_location->Fetch()) { $arLOCATION2[] = $arLocation["LOCATION_ID"]; } } if (!is_array($arLOCATION2)) { $arLOCATION2 = array(); } ?>
} else { $ID = CSaleLocationGroup::Add($arFields); if (IntVal($ID) <= 0) { $strError .= GetMessage("ERROR_ADD_GROUP") . "<br>"; } } } if (strlen($strError) > 0) { $bInitVars = True; } if (strlen($save) > 0 && strlen($strError) <= 0) { LocalRedirect("sale_location_group_admin.php?lang=" . LANG . GetFilterParams("filter_", false)); } } if ($ID > 0) { $db_location = CSaleLocationGroup::GetList(array("NAME" => "ASC"), array("ID" => $ID)); if (!$db_location->ExtractFields("str_")) { $ID = 0; } } if ($bInitVars) { $DB->InitTableVarsForEdit("b_sale_location_group", "", "str_"); } $sDocTitle = $ID > 0 ? str_replace("#ID#", $ID, GetMessage("SALE_EDIT_RECORD")) : GetMessage("SALE_NEW_RECORD"); $APPLICATION->SetTitle($sDocTitle); require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_admin_after.php"; /*********************************************************************/ /******************** BODY *****************************************/ /*********************************************************************/ ?>
echo EndNote(); echo BeginNote(); echo GetMessage("SALE_DH_HINT_ADD") . " " . htmlspecialcharsEx(COption::GetOptionString('sale', 'delivery_handles_custom_path', BX_PERSONAL_ROOT . "/php_interface/include/sale_delivery/")); echo EndNote(); $lAdmin->DisplayList(); echo BeginNote(); echo GetMessage("SALE_DH_LOCATIONS_STATS") . ': <ul style="font-size: 100%">'; $rsLocations = CSaleLocation::GetList(array(), array(), array("COUNTRY_ID", "COUNT" => "CITY_ID")); $numLocations = 0; $numCountries = 0; $numCities = 0; while ($arStat = $rsLocations->Fetch()) { $numCountries++; $numCities += $arStat["CITY_ID"]; $numLocations += $arStat['CNT']; } echo '<li>' . GetMessage('SALE_DH_LOCATIONS_COUNTRY_STATS') . ': ' . $numCountries . '</li>'; echo '<li>' . GetMessage('SALE_DH_LOCATIONS_CITY_STATS') . ': ' . $numCities . '</li>'; echo '<li>' . GetMessage('SALE_DH_LOCATIONS_LOC_STATS') . ': ' . $numLocations . '</li>'; $rsLocationGroups = CSaleLocationGroup::GetList(); $numGroups = 0; while ($arGroup = $rsLocationGroups->Fetch()) { $numGroups++; } echo '<li>' . GetMessage('SALE_DH_LOCATIONS_GROUP_STATS') . ': ' . $numGroups . '</li>'; echo '</ul>'; echo '<a href="/bitrix/admin/sale_location_admin.php?lang=' . LANG . '">' . GetMessage('SALE_DH_LOCATIONS_LINK') . '</a>'; echo ' | '; echo '<a href="/bitrix/admin/sale_location_import.php?lang=' . LANG . '">' . GetMessage('SALE_DH_LOCATIONS_IMPORT_LINK') . '</a>'; echo EndNote(); require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_admin.php";
@set_time_limit(0); $DB->StartTransaction(); if (!CSaleLocationGroup::Delete($ID)) { $DB->Rollback(); if ($ex = $APPLICATION->GetException()) { $lAdmin->AddGroupError($ex->GetString(), $ID); } else { $lAdmin->AddGroupError(GetMessage("ERROR_DELETE"), $ID); } } $DB->Commit(); break; } } } $dbResultList = CSaleLocationGroup::GetList(array($by => $order), $arFilter, LANG); $dbResultList = new CAdminResult($dbResultList, $sTableID); $dbResultList->NavStart(); $lAdmin->NavText($dbResultList->GetNavPrint(GetMessage("SALE_PRLIST"))); $lAdmin->AddHeaders(array(array("id" => "ID", "content" => "ID", "sort" => "id", "default" => true), array("id" => "NAME", "content" => GetMessage("SALE_NAME"), "sort" => "NAME", "default" => true), array("id" => "SORT", "content" => GetMessage("SALE_SORT"), "sort" => "SORT", "default" => true))); $arVisibleColumns = $lAdmin->GetVisibleHeaderColumns(); while ($arCCard = $dbResultList->NavNext(true, "f_")) { $row =& $lAdmin->AddRow($f_ID, $arCCard); $row->AddField("ID", $f_ID); $row->AddField("NAME", $f_NAME); $row->AddField("SORT", $f_SORT); $arActions = array(); $arActions[] = array("ICON" => "edit", "TEXT" => GetMessage("SALE_EDIT_DESCR"), "ACTION" => $lAdmin->ActionRedirect("sale_location_group_edit.php?ID=" . $f_ID . "&lang=" . LANGUAGE_ID . GetFilterParams("filter_") . ""), "DEFAULT" => true); if ($saleModulePermissions >= "W") { $arActions[] = array("SEPARATOR" => true); $arActions[] = array("ICON" => "delete", "TEXT" => GetMessage("SALE_DELETE_TEXT"), "ACTION" => "if(confirm('" . GetMessage('SALE_CONFIRM_DEL_MESSAGE') . "')) " . $lAdmin->ActionDoGroup($f_ID, "delete"));