require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_before.php");
$saleModulePermissions = $APPLICATION->GetGroupRight("sale");
if ($saleModulePermissions < "W")
$APPLICATION->AuthForm(GetMessage("ACCESS_DENIED"));
IncludeModuleLangFile(__FILE__);
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/sale/include.php");
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/sale/prolog.php");
$ID = IntVal($ID);
ClearVars();
$langCount = 0;
$arSysLangs = Array();
$arSysLangNames = Array();
$db_lang = CLangAdmin::GetList(($b="sort"), ($o="asc"), array("ACTIVE" => "Y"));
while ($arLang = $db_lang->Fetch())
{
$arSysLangs[$langCount] = $arLang["LID"];
$arSysLangNames[$langCount] = htmlspecialcharsbx($arLang["NAME"]);
$langCount++;
}
$strError = "";
$bInitVars = false;
if ((strlen($save)>0 || strlen($apply)>0) && $REQUEST_METHOD=="POST" && $saleModulePermissions=="W" && check_bitrix_sessid())
{
$SORT = IntVal($SORT);
if ($SORT<=0) $SORT = 100;
if (!is_array($LOCATION_ID) || count($LOCATION_ID)<=0)
$strError .= GetMessage("ERROR_EMPTY_LOCATION")."
";
$langCnt = count($arSysLangs);
for ($i = 0; $i<$langCnt; $i++)
{
${"NAME_".$arSysLangs[$i]} = Trim(${"NAME_".$arSysLangs[$i]});
if (strlen(${"NAME_".$arSysLangs[$i]})<=0)
$strError .= GetMessage("ERROR_EMPTY_NAME")." [".$arSysLangs[$i]."] ".$arSysLangNames[$i].".
";
}
if (strlen($strError)<=0)
{
$arFields = array(
"SORT" => $SORT,
"LOCATION_ID" => $LOCATION_ID
);
$langCnt = count($arSysLangs);
for ($i = 0; $i<$langCnt; $i++)
{
$arFields["LANG"][] = array(
"LID" => $arSysLangs[$i],
"NAME" => ${"NAME_".$arSysLangs[$i]}
);
}
if ($ID>0)
{
if (!CSaleLocationGroup::Update($ID, $arFields))
$strError .= GetMessage("ERROR_EDIT_GROUP")."
";
}
else
{
$ID = CSaleLocationGroup::Add($arFields);
if (IntVal($ID)<=0)
$strError .= GetMessage("ERROR_ADD_GROUP")."
";
}
}
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 *****************************************/
/*********************************************************************/
?>
$aMenu = array(
array(
"TEXT" => GetMessage("SLGEN_2FLIST"),
"ICON" => "btn_list",
"LINK" => "/bitrix/admin/sale_location_group_admin.php?lang=".LANG.GetFilterParams("filter_")
)
);
if ($ID > 0 && $saleModulePermissions >= "W")
{
$aMenu[] = array("SEPARATOR" => "Y");
$aMenu[] = array(
"TEXT" => GetMessage("SLGEN_NEW_LGROUP"),
"ICON" => "btn_new",
"LINK" => "/bitrix/admin/sale_location_group_edit.php?lang=".LANG.GetFilterParams("filter_")
);
$aMenu[] = array(
"TEXT" => GetMessage("SLGEN_DELETE_LGROUP"),
"ICON" => "btn_delete",
"LINK" => "javascript:if(confirm('".GetMessage("SLGEN_DELETE_LGROUP_CONFIRM")."')) window.location='/bitrix/admin/sale_location_group_admin.php?action=delete&ID[]=".$ID."&lang=".LANG."&".bitrix_sessid_get()."#tb';",
);
}
$context = new CAdminContextMenu($aMenu);
$context->Show();
?>