Your IP : 3.17.190.212


Current Path : /home/bitrix/ext_www/dev.ballu.in.ua/bitrix/modules/main/admin/
Upload File :
Current File : /home/bitrix/ext_www/dev.ballu.in.ua/bitrix/modules/main/admin/geoip_handler_edit.php

<?
/**
 * @global CUser $USER
 * @global CMain $APPLICATION
 */

use \Bitrix\Main\Localization\Loc,
	\Bitrix\Main\Service\GeoIp;

require_once(dirname(__FILE__)."/../include/prolog_admin_before.php");

if(!$USER->CanDoOperation('edit_other_settings'))
	$APPLICATION->AuthForm(GetMessage("ACCESS_DENIED"));

Loc::loadMessages(__FILE__);

$className = isset($_REQUEST['CLASS_NAME']) ? htmlspecialcharsbx($_REQUEST['CLASS_NAME']) : '';
$id = intval($_REQUEST["ID"]) > 0 ? intval($_REQUEST["ID"]) : 0;
$errMess = null;

$handler = GeoIp\Manager::getHandlerByClassName($className);

if(!$handler)
	LocalRedirect(!empty($_REQUEST["back_url"]) ? $_REQUEST["back_url"] : 'geoip_handlers_list.php?lang='.LANG);

if($_SERVER['REQUEST_METHOD'] == "POST" && ($_POST['save'] <> "" || $_POST['apply'] <> "") && check_bitrix_sessid())
{
	$fields = array(
		"CLASS_NAME" => $className,
		"SORT" => intval($_POST["SORT"]),
		"ACTIVE" => $_POST["ACTIVE"] == 'Y' ? 'Y' : 'N',
		"CONFIG" => $handler->createConfigField($_POST),
	);

	if($id > 0)
	{
		$res = GeoIp\HandlerTable::update($id, $fields);
	}
	else
	{
		$res = GeoIp\HandlerTable::add($fields);
	}

	if($res->isSuccess())
	{
		$id = $res->getId();

		if(isset($_POST['apply']))
			LocalRedirect("geoip_handler_edit.php?lang=".LANG."&ID=".$id."&CLASS_NAME=".urlencode($className));
		else
			LocalRedirect(!empty($_REQUEST["back_url"]) ? $_REQUEST["back_url"] : 'geoip_handlers_list.php?lang='.LANG);
	}
	else
	{
		$errMess = new CAdminMessage(
			implode("\n<br>", $res->getErrorMessages()
		));
	}
}

$providingInfo = $handler->getProvidingInfo();
$APPLICATION->SetTitle(Loc::getMessage('GEOIP_EDIT_TITLE'));

require($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/include/prolog_admin_after.php");

$menu = array(
	array(
		"TEXT" => Loc::getMessage('GEOIP_EDIT_LIST'),
		"TITLE" => Loc::getMessage('GEOIP_EDIT_LIST_T'),
		"LINK"=>"geoip_handlers_list.php?lang=".LANG,
		"ICON"=>"btn_list",
	)
);

if($id > 0)
{
	$menu[] = array(
		"TEXT" => Loc::getMessage('GEOIP_EDIT_DELETE'),
		"TITLE" => Loc::getMessage('GEOIP_EDIT_DELETE_T'),
		"LINK" => "javascript:if(confirm('".GetMessage("GEOIP_EDIT_DELETE_CONFIRM")."')) window.location='geoip_handlers_list.php?ID=".$id."&action=delete&lang=".LANG."&".bitrix_sessid_get()."';",
		"ICON" => "btn_delete",
	);
}

$context = new CAdminContextMenu($menu);
$context->Show();

if($errMess)
	echo $errMess->Show();

$aTabs = array(
	array("DIV" => "edit1", "TAB" => Loc::getMessage('GEOIP_EDIT_MAIN_SETTINGS'), "TITLE" => Loc::getMessage('GEOIP_EDIT_MAIN_SETTINGS_T')),
	array("DIV" => "edit2", "TAB" => Loc::getMessage('GEOIP_EDIT_SPECIFIC_SETTINGS'), "TITLE" => Loc::getMessage('GEOIP_EDIT_SPECIFIC_SETTINGS_T')),
);

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

<form method="POST" action="<?= $APPLICATION->GetCurPage()?>" name="geoip_handlers_form">
<?=bitrix_sessid_post()?>
<input type="hidden" name="ID" value=<?=$id?>>
<input type="hidden" name="lang" value="<?=LANGUAGE_ID?>">
<?
$tabControl->Begin();
$tabControl->BeginNextTab();
?>
<?if($id > 0):?>
	<tr>
		<td width="40%"><?=Loc::getMessage('GEOIP_EDIT_F_ID')?>:</td>
		<td width="60%"><?=$id?></td>
	</tr>
<?endif;?>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_F_TITLE')?>:</td>
		<td><?=$handler->getTitle()?></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_F_DESCRIPTION')?>:</td>
		<td><?=$handler->getDescription()?></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_F_ACTIVE')?>:</td>
		<td><input type="checkbox" name="ACTIVE" value="Y"<?=$handler->isActive() ? ' checked' : ''?>></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_F_SORT')?>:</td>
		<td><input type="text" name="SORT" size="3" maxlength="10" value="<?=$handler->getSort()?>"></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_F_CLASS')?>:</td>
		<td><input type="text" name="CLASS_NAME" size="45" maxlength="255" value="<?=$className?>" readonly></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_F_IS_INSTALLED')?>:</td>
		<td><input type="checkbox" name="IS_INSTALLED" value="Y"<?=$handler->isInstalled() ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_F_LANG')?>:</td>
		<td><?=implode(', ', $handler->getSupportedLanguages())?></td>
	</tr>

	<tr class="heading">
		<td colspan="2"><?=Loc::getMessage('GEOIP_EDIT_PROVIDING_INFO')?>:</td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_ASN')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->asn ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_COUNTRY_NAME')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->countryName ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_COUNTRY_CODE')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->countryCode ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_REGION_NAME')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->regionName ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_REGION_CODE')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->regionCode ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_SUBREGION_NAME')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->subRegionName ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_CITY_NAME')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->cityName ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_ZIP')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->zipCode ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_LAT')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->latitude ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_LON')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->longitude ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_TIMEZONE')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->timezone ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_ISP')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->ispName ? ' checked' : ''?> disabled></td>
	</tr>
	<tr>
		<td><?=Loc::getMessage('GEOIP_EDIT_PI_ORG')?>:</td>
		<td><input type="checkbox"<?=$providingInfo->organizationName ? ' checked' : ''?> disabled></td>
	</tr>



<?$tabControl->BeginNextTab();?>
	<?$adminConfigHtml = $handler->getAdminConfigHtml();?>

	<?if(!empty($adminConfigHtml)):?>
		<?=$adminConfigHtml?>
	<?else:?>
		<tr>
			<td colspan="2"><?=Loc::getMessage('GEOIP_EDIT_SPECIFIC_ABSENT')?>:</td>
		</tr>
	<?endif;?>
<?
$tabControl->Buttons(array(
	"back_url" => "geoip_handlers_list.php?lang=".LANG,
));
$tabControl->End();
?>
</form>

<?
require_once($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/include/epilog_admin.php");