%PDF- %PDF- 403WebShell
403Webshell
Server IP : 37.220.80.31  /  Your IP : 18.189.182.211
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64
User : www-root ( 1010)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/sale/admin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/modules/sale/admin//delivery_edit.php
<?

/*
 * Deprecated
 * Use delivery_service_edit.php instead this.
 */

use Bitrix\Sale\Location;

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__);

\Bitrix\Main\Loader::includeModule('sale');

require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/sale/prolog.php");

$aTabs = array(
	array(
		"DIV" => "edit1",
		"TAB" => GetMessage("SDEN_TAB_DELIVERY"),
		"ICON" => "sale",
		"TITLE" => GetMessage("SDEN_TAB_DELIVERY_DESCR"),
	),
	array(
		"DIV" => "edit2",
		"TAB" => GetMessage("SDEN_TAB_PAYSYSTEM"),
		"ICON" => "sale",
		"TITLE" => GetMessage("SDEN_TAB_PAYSYSTEM_DESCR"),
	),
);

$tabControl = new CAdminTabControl("tabControl", $aTabs);

ClearVars();

$ID = intval($ID);

$strError = "";
$bInitVars = false;

$lpEnabled = !!CSaleLocation::isLocationProEnabled();

if (($save <> '' || $apply <> '') && $_SERVER['REQUEST_METHOD']=="POST" && $saleModulePermissions=="W" && check_bitrix_sessid())
{
	$store = "";
	if (isset($_POST["STORE"]) && count($_POST["STORE"]) > 0)
		$store = serialize($_POST["STORE"]);

	$LID = Trim($LID);
	if ($LID == '')
		$strError .= GetMessage("ERROR_NO_LID")."<br>";

	$NAME = Trim($NAME);
	if ($NAME == '')
		$strError .= GetMessage("ERROR_NO_NAME")."<br>";

	$PRICE = str_replace(",", ".", $PRICE);
	$PRICE = DoubleVal($PRICE);
	if ($PRICE<0)
		$strError .= GetMessage("ERROR_NO_PRICE")."<br>";

	$CURRENCY = Trim($CURRENCY);
	if ($CURRENCY == '')
		$strError .= GetMessage("ERROR_NO_CURRENCY")."<br>";

	$ORDER_PRICE_FROM = str_replace(",", ".", $ORDER_PRICE_FROM);
	$ORDER_PRICE_TO = str_replace(",", ".", $ORDER_PRICE_TO);
	$ORDER_CURRENCY = Trim($ORDER_CURRENCY);
	if ((DoubleVal($ORDER_PRICE_FROM)>0 || DoubleVal($ORDER_PRICE_TO)>0) && $ORDER_CURRENCY == '')
		$strError .= GetMessage("ERROR_PRICE_NO_CUR")."<br>";

	if ($ACTIVE!="Y") $ACTIVE = "N";

	$SORT = intval($SORT);
	if ($SORT<=0) $SORT = 100;

	$arLocation = array();
	if($lpEnabled)
	{
		if($_REQUEST['LOCATION']['L'] <> '')
		{
			$LOCATION1 = explode(':', $_REQUEST['LOCATION']['L']);
		}

		if($_REQUEST['LOCATION']['G'] <> '')
		{
			$LOCATION2 = explode(':', $_REQUEST['LOCATION']['G']);
		}
	}

	if (isset($LOCATION1) && is_array($LOCATION1) && count($LOCATION1)>0)
	{
		$locationCount = count($LOCATION1);
		for ($i = 0; $i<$locationCount; $i++)
		{
			if($LOCATION1[$i] <> '')
			{
				$arLocation[] = array(
					"LOCATION_ID" => $LOCATION1[$i],
					"LOCATION_TYPE" => "L"
				);
			}
		}
	}

	if (isset($LOCATION2) && is_array($LOCATION2) && count($LOCATION2)>0)
	{
		$locationCount = count($LOCATION2);
		for ($i = 0; $i<$locationCount; $i++)
		{
			if ($LOCATION2[$i] <> '')
			{
				$arLocation[] = array(
					"LOCATION_ID" => $LOCATION2[$i],
					"LOCATION_TYPE" => "G"
				);
			}
		}
	}

	if (!is_array($arLocation) || count($arLocation)<=0)
		$strError .= GetMessage("ERROR_NO_LOCATION")."<br>";

	if ($strError == '')
	{
		unset($arFields);

		//add logotip
		$arPicture = array();
		if(array_key_exists("LOGOTIP", $_FILES) && $_FILES["LOGOTIP"]["error"] == 0)
			$arPicture = $_FILES["LOGOTIP"];

		//$arPicture["old_file"] = $arPSAction["LOGOTIP"];
		$arPicture["del"] = trim($_POST["LOGOTIP_del"]);

		$arFields = array(
			"NAME" => $NAME,
			"LID" => $LID,
			"PERIOD_FROM" => $PERIOD_FROM,
			"PERIOD_TO" => $PERIOD_TO,
			"PERIOD_TYPE" => $PERIOD_TYPE,
			"WEIGHT_FROM" => $WEIGHT_FROM,
			"WEIGHT_TO" => $WEIGHT_TO,
			"ORDER_PRICE_FROM" => $ORDER_PRICE_FROM,
			"ORDER_PRICE_TO" => $ORDER_PRICE_TO,
			"ORDER_CURRENCY" => $ORDER_CURRENCY,
			"ACTIVE" => $ACTIVE,
			"PRICE" => $PRICE,
			"CURRENCY" => $CURRENCY,
			"SORT" => $SORT,
			"DESCRIPTION" => $DESCRIPTION,
			"LOGOTIP" => $arPicture,
			"STORE" => $store,

			"LOCATIONS" => $arLocation
			);

		//pay system for delivery
		if (is_set($_POST["PAY_SYSTEM"]) && is_array($_POST["PAY_SYSTEM"]))
		{
			$arFields["PAY_SYSTEM"] = array();
			$arPaySystem = $_POST["PAY_SYSTEM"];

			if ($arPaySystem[0] == "")
				unset($arPaySystem[0]);

			$arFields["PAY_SYSTEM"] = $arPaySystem;
		}

		if ($ID>0)
		{
			$delivery = new CSaleDelivery();

			if (!$delivery->Update($ID, $arFields, array("EXPECT_LOCATION_CODES" => $lpEnabled)))
				$strError .= GetMessage("ERROR_EDIT_DELIVERY")."<br>";
		}
		else
		{
			$ID = CSaleDelivery::Add($arFields, array("EXPECT_LOCATION_CODES" => $lpEnabled));
			if ($ID<=0)
				$strError .= GetMessage("ERROR_ADD_DELIVERY")."<br>";
		}
	}

	if ($strError != '')
	{
		$bInitVars = true;
	}
	else
	{
		if ($apply <> '')
			LocalRedirect("sale_delivery_edit.php?ID=".$ID."&lang=".LANG."&".$tabControl->ActiveTabParam());
		else
			LocalRedirect("sale_delivery.php?lang=".LANG);
	}
}

$oldLogo = 0;
if ($ID>0)
{
	$db_delivery = CSaleDelivery::GetList(Array("SORT"=>"ASC"), Array("ID"=>$ID));
	$db_delivery->ExtractFields("str_");
	$oldLogo = (int)$str_LOGOTIP;
	$arDeliveryDescription = CSaleDelivery::GetByID($ID);
	$str_DESCRIPTION = htmlspecialcharsbx($arDeliveryDescription["DESCRIPTION"]);
}
else
{
	$str_ACTIVE = 'Y';
}

if ($bInitVars)
{
	$DB->InitTableVarsForEdit("b_sale_delivery", "", "str_");
	$str_LOGOTIP = $oldLogo;
}

$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("SDEN_2FLIST"),
				"LINK" => "/bitrix/admin/sale_delivery.php?lang=".LANGUAGE_ID.GetFilterParams("filter_"),
				"ICON" => "btn_list"
			)
	);

if ($ID > 0 && $saleModulePermissions >= "W")
{
	$aMenu[] = array("SEPARATOR" => "Y");

	$aMenu[] = array(
			"TEXT" => GetMessage("SDEN_NEW_DELIVERY"),
			"LINK" => "/bitrix/admin/sale_delivery_edit.php?lang=".LANGUAGE_ID.GetFilterParams("filter_"),
			"ICON" => "btn_new"
		);

	$aMenu[] = array(
			"TEXT" => GetMessage("SDEN_DELETE_DELIVERY"),
			"LINK" => "javascript:if(confirm('".GetMessage("SDEN_DELETE_DELIVERY_CONFIRM")."')) window.location='/bitrix/admin/sale_delivery.php?ID=".$ID."&action=delete&lang=".LANGUAGE_ID."&".bitrix_sessid_get()."#tb';",
			"ICON" => "btn_delete"
		);
}
$context = new CAdminContextMenu($aMenu);
$context->Show();
?>

<?if($strError <> '')
	echo CAdminMessage::ShowMessage(Array("DETAILS"=>$strError, "TYPE"=>"ERROR", "MESSAGE"=>GetMessage("SDEN_ERROR"), "HTML"=>true));?>

<form method="POST" action="<?echo $APPLICATION->GetCurPage()?>?" name="form1" enctype="multipart/form-data">
<?echo GetFilterHiddens("filter_");?>
<input type="hidden" name="Update" value="Y">
<input type="hidden" name="lang" value="<?echo LANGUAGE_ID; ?>">
<input type="hidden" name="ID" value="<?echo $ID ?>">
<?=bitrix_sessid_post()?>

<?
$tabControl->Begin();
?>

<?
$tabControl->BeginNextTab();
	if ($ID>0):?>
		<tr>
			<td width="40%">ID:</td>
			<td width="60%"><?echo $ID ?></td>
		</tr>
	<?endif;?>

	<tr class="adm-detail-required-field">
		<td width="40%"><?echo GetMessage("F_NAME") ?>:</td>
		<td width="60%"><input type="text" name="NAME" value="<?echo $str_NAME ?>" size="40"></td>
	</tr>
	<tr class="adm-detail-required-field">
		<td width="40%"><?echo GetMessage("F_LANG") ?>:</td>
		<td width="60%"><?echo CLang::SelectBox("LID", $str_LID, "")?></td>
	</tr>
	<tr>
		<td width="40%"><?echo GetMessage("F_PERIOD_FROM") ?>:</td>
		<td width="60%">
			<?echo GetMessage("SALE_FROM")?>
			<input type="text" name="PERIOD_FROM" value="<?echo $str_PERIOD_FROM ?>" size="3">
			<?echo GetMessage("SALE_TO")?>
			<input type="text" name="PERIOD_TO" value="<?echo $str_PERIOD_TO ?>" size="3">
			<?
			$arPerType = array(
				"D" => GetMessage("PER_DAY"),
				"H" => GetMessage("PER_HOUR"),
				"M" => GetMessage("PER_MONTH")
				);
			?>
			<select name="PERIOD_TYPE">
				<?foreach ($arPerType as $key => $value):?>
					<option value="<?echo $key ?>" <?if ($key==$str_PERIOD_TYPE) echo "selected"?>><?echo $value ?></option>
				<?endforeach;?>
			</select>

		</td>
	</tr>
	<tr>
		<td width="40%"><?echo GetMessage("F_WEIGHT")?> (<?echo GetMessage('WEIGHT_G')?>):</td>
		<td width="60%">
			<?echo GetMessage("SALE_FROM")?>
			<input type="text" name="WEIGHT_FROM" value="<?echo $str_WEIGHT_FROM ?>" size="7">
			<?echo GetMessage("SALE_TO")?>
			<input type="text" name="WEIGHT_TO" value="<?echo $str_WEIGHT_TO ?>" size="7">
		</td>
	</tr>
	<tr>
		<td width="40%"><?echo GetMessage("F_ORDER_PRICE")?>:</td>
		<td width="60%">
			<?echo GetMessage("SALE_FROM")?>
			<input type="text" name="ORDER_PRICE_FROM" value="<?echo $str_ORDER_PRICE_FROM ?>" size="10">
			<?echo GetMessage("SALE_TO")?>
			<input type="text" name="ORDER_PRICE_TO" value="<?echo $str_ORDER_PRICE_TO ?>" size="10">
			<?echo CCurrency::SelectBox("ORDER_CURRENCY", $str_ORDER_CURRENCY, "", false, "", "")?>
		</td>
	</tr>
	<tr>
		<td width="40%"><?echo GetMessage("F_ACTIVE")?>:</td>
		<td width="60%">
			<input type="checkbox" name="ACTIVE" value="Y" <?if ($str_ACTIVE=="Y") echo "checked";?>>
		</td>
	</tr>
	<tr>
		<td width="40%"><?echo GetMessage("F_PRICE");?>:</td>
		<td width="60%">
			<input type="text" name="PRICE" value="<?echo $str_PRICE ?>" size="10">
			<?echo CCurrency::SelectBox("CURRENCY", $str_CURRENCY, "", false, "", "")?>
		</td>
	</tr>
	<tr>
		<td width="40%"><?echo GetMessage("F_SORT") ?>:</td>
		<td width="60%">
			<input type="text" name="SORT" value="<?echo $str_SORT ?>" size="40">
		</td>
	</tr>
	<tr>
		<td width="40%" valign="top"><?echo GetMessage("F_DESCRIPTION");?>:</td>
		<td width="60%" valign="top">
			<textarea rows="3" cols="40" name="DESCRIPTION"><?echo $str_DESCRIPTION;?></textarea>
		</td>
	</tr>

<?
$arStoreList = array();
if (CModule::IncludeModule('catalog'))
{
	$dbList = CCatalogStore::GetList(
		array("SORT" => "DESC", "ID" => "DESC"),
		array("ACTIVE" => "Y"),
		false,
		false,
		array("ID", "SITE_ID", "TITLE", "ADDRESS", "DESCRIPTION", "IMAGE_ID", "PHONE", "SCHEDULE", "LOCATION_ID", "GPS_N", "GPS_S")
	);
	while ($arList = $dbList->Fetch())
		$arStoreList[] = $arList;
}

if (!empty($arStoreList))
{
	$dbList = CSaleDelivery::GetList(array(), array("ID" => $str_ID), false, false,	array("STORE"));
	$arList = $dbList->Fetch();
	$str_STORE = $arList["STORE"];

	$arStore = array();
	if ($str_STORE <> '')
		$arStore = unserialize($str_STORE, ['allowed_classes' => false]);
?>
	<tr>
		<td width="40%" valign="top"><?echo GetMessage("SDEN_STORE");?>:</td>
		<td width="60%" valign="top">
			<select name="STORE[]" size="5" multiple>
			<?
			foreach ($arStoreList as $items):

				$siteInfo = ($items["SITE_ID"] <> '') ? " [".$items["SITE_ID"]."]" : "";
			?>
				<option value="<?=$items["ID"]?>" <?=(in_array($items["ID"], $arStore)?"selected":"")?> ><?=htmlspecialcharsbx($items["TITLE"].$siteInfo)?></option>
			<?
			endforeach
			?>
			</select>
		</td>
	</tr>
<?
}
?>
	<tr>
		<td width="40%"><?echo GetMessage("SDEN_LOGOTIP");?>:</td>
		<td width="60%">
			<div><input type="file" name="LOGOTIP"></div>
			<?if ($str_LOGOTIP > 0):?>
				<br>
				<?
				$arLogotip = CFile::GetFileArray($str_LOGOTIP);
				echo CFile::ShowImage($arLogotip, 150, 150, "border=0", "", false);
				?>
				<br />
				<div>
					<input type="checkbox" name="LOGOTIP_del" value="Y" id="LOGOTIP_del" >
					<label for="LOGOTIP_del"><?=GetMessage("SPS_LOGOTIP_DEL");?></label>
				</div>
			<?endif;?>
		</td>
	</tr>
	<?if($lpEnabled):?>

		<tr class="heading">
			<td colspan="2">
				<?=GetMessage('F_LOCATION1')?>
			</td>
		</tr>

		<tr class="adm-detail-required-field">
			<td colspan="2">

				<?$APPLICATION->IncludeComponent("bitrix:sale.location.selector.system", "", array(
						"ENTITY_PRIMARY" => $ID,
						"LINK_ENTITY_NAME" => CSaleDelivery::CONN_ENTITY_NAME,
						"INPUT_NAME" => 'LOCATION',
						"SELECTED_IN_REQUEST" => array(
							'L' => isset($_REQUEST['LOCATION']['L']) ? explode(':', $_REQUEST['LOCATION']['L']) : false,
							'G' => isset($_REQUEST['LOCATION']['G']) ? explode(':', $_REQUEST['LOCATION']['G']) : false
						)
					),
					false
				);?>

			</td>
		</tr>

	<?else:?>
		<tr class="adm-detail-required-field">
			<td width="40%" valign="top"><?echo GetMessage("F_LOCATION1");?>:</td>
			<td width="60%" valign="top">

				<?$db_vars = CSaleLocation::GetList(Array("COUNTRY_NAME_LANG"=>"ASC", "REGION_NAME_LANG"=>"ASC", "CITY_NAME_LANG"=>"ASC"), array(), LANG);?>

				<select name="LOCATION1[]" size="5" multiple>
					<?
					$arLOCATION1 = array();
					if ($bInitVars)
					{
						$arLOCATION1 = $LOCATION1;
					}
					else
					{
						$db_location = CSaleDelivery::GetLocationList(Array("DELIVERY_ID" => $ID, "LOCATION_TYPE" => "L"));
						while ($arLocation = $db_location->Fetch())
						{
							$arLOCATION1[] = $arLocation["LOCATION_ID"];
						}
					}
					?>
					<?while ($vars = $db_vars->Fetch()):
						$locationName = $vars["COUNTRY_NAME"];

						if ($vars["REGION_NAME"] <> '')
						{
							if ($locationName <> '')
								$locationName .= " - ";
							$locationName .= $vars["REGION_NAME"];
						}
						if ($vars["CITY_NAME"] <> '')
						{
							if ($locationName <> '')
								$locationName .= " - ";
							$locationName .= $vars["CITY_NAME"];
						}
					?>
						<option value="<?echo $vars["ID"]?>"<?if (is_array($arLOCATION1) && in_array(intval($vars["ID"]), $arLOCATION1)) echo " selected"?>><?echo htmlspecialcharsbx($locationName)?></option>
					<?endwhile;?>
				</select>
			</td>
		</tr>
		<tr class="adm-detail-required-field">
			<td width="40%" valign="top"><?echo GetMessage("F_LOCATION2");?>:</td>
			<td width="60%" valign="top">

				<?$db_vars = CSaleLocationGroup::GetList(Array("NAME"=>"ASC"), array(), LANG);?>

				<select name="LOCATION2[]" size="5" multiple>
					<?
					$arLOCATION2 = array();
					if ($bInitVars)
					{
						$arLOCATION2 = $LOCATION2;
					}
					else
					{
						$db_location = CSaleDelivery::GetLocationList(Array("DELIVERY_ID" => $ID, "LOCATION_TYPE" => "G"));
						while ($arLocation = $db_location->Fetch())
						{
							$arLOCATION2[] = $arLocation["LOCATION_ID"];
						}
					}
					?>
					<?while ($vars = $db_vars->Fetch()):?>
						<option value="<?echo $vars["ID"]?>"<?if (is_array($arLOCATION2) && in_array(intval($vars["ID"]), $arLOCATION2)) echo " selected"?>><?echo htmlspecialcharsbx($vars["NAME"])?></option>
					<?endwhile;?>
				</select>
			</td>
		</tr>

	<?endif?>

<?
$tabControl->BeginNextTab();
?>
	<tr>
		<td width="40%">
			<?=GetMessage("SDEN_PAY_NAME");?>:
		</td>
		<td width="60%">
			<select multiple="multiple" size="5" name="PAY_SYSTEM[]">
			<?
			$arPaySystemId = array();
			$dbRes = CSaleDelivery::GetDelivery2PaySystem(array("DELIVERY_ID" => $ID));
			while ($arRes = $dbRes->Fetch())
				$arPaySystemId[] = $arRes["PAYSYSTEM_ID"];

			$dbResultList = CSalePaySystem::GetList(
				array("SORT"=>"ASC", "NAME"=>"ASC"),
				array("ACTIVE" => "Y"),
				false,
				false,
				array("ID", "NAME", "ACTIVE", "SORT", "LID")
			);
			while ($arPayType = $dbResultList->Fetch()):
				$name = ($arPayType["LID"] <> '') ? htmlspecialcharsbx($arPayType["NAME"]). " (".$arPayType["LID"].")" : htmlspecialcharsbx($arPayType["NAME"]);
			?>
				<option value="<?=intval($arPayType["ID"]);?>" <?=(in_array($arPayType["ID"], $arPaySystemId) || empty($arPaySystemId) ? "selected":"")?>><?=$name?></option>
			<?endwhile;?>
			</select>
		</td>
	</tr>

<?
$tabControl->EndTab();

$tabControl->Buttons(
	array(
		"disabled" => ($saleModulePermissions < "W"),
		"back_url" => "/bitrix/admin/sale_delivery.php?lang=".LANGUAGE_ID.GetFilterParams("filter_")
	)
);

$tabControl->End();
?>
</form>
<?require($DOCUMENT_ROOT."/bitrix/modules/main/include/epilog_admin.php");?>

Youez - 2016 - github.com/yon3zu
LinuXploit