AuthForm(GetMessage("ACCESS_DENIED")); $LIST_URL = '/bitrix/admin/ticket_coupon_list.php'; $ID = intval($ID); $message = false; if (($save <> '' || $apply <> '') && $REQUEST_METHOD=='POST' && $bAdmin && check_bitrix_sessid()) { $obSSC = new CSupportSuperCoupon(); $bOK = false; $new = false; $arFields = array( "ACTIVE_FROM" => $_POST['ACTIVE_FROM'], "ACTIVE_TO" => $_POST['ACTIVE_TO'], "ACTIVE" => $_POST['ACTIVE'], "COUNT_TICKETS" => intval($_POST['COUNT_TICKETS']), "SLA_ID" => intval($_POST['SLA_ID']), ); if ($ID > 0) { $bOK = $obSSC->Update($ID, $arFields); } else { if ($COUPON = $obSSC->Generate($arFields)) { if ($COUPON !== false) { $_SESSION['BX_LAST_COUPON'] = $COUPON; $rsCoupons = $obSSC->GetList(false, array('COUPON' => $COUPON)); $arCoupon = $rsCoupons->Fetch(); $ID = intval($arCoupon['ID']); $bOK = true; $new = true; } else { $bOK = false; } } } if ($bOK) { if ($save <> '') LocalRedirect($LIST_URL . '?lang='.LANG . ($new?'&SHOW_COUPON=Y':'')); elseif ($new) LocalRedirect($APPLICATION->GetCurPage() . '?ID='.$ID. '&lang='.LANG.'&tabControl_active_tab='.urlencode($tabControl_active_tab)); } else { if ($e = $APPLICATION->GetException()) $message = new CAdminMessage(GetMessage('SUP_CE_ERROR'), $e); } } $rsCoupons = CSupportSuperCoupon::GetList(false, array('ID' => $ID)); $arCoupon = $rsCoupons->GetNext(); if (!$arCoupon) { $ID = 0; $arCoupon = array( 'ACTIVE_FROM' => '', 'ACTIVE_TO' => '', 'ACTIVE' => 'Y', 'COUNT_TICKETS' => 5, 'SLA_ID' => COption::GetOptionString( "support", 'SUPERTICKET_DEFAULT_SLA' ), ); } $str_ACTIVE_FROM = isset($_REQUEST["ACTIVE_FROM"]) ? htmlspecialcharsbx($_REQUEST["ACTIVE_FROM"]) : $arCoupon["ACTIVE_FROM"]; $str_ACTIVE_TO = isset($_REQUEST["ACTIVE_TO"]) ? htmlspecialcharsbx($_REQUEST["ACTIVE_TO"]) : $arCoupon["ACTIVE_TO"]; $str_COUNT_TICKETS = isset($_REQUEST["COUNT_TICKETS"]) ? intval($_REQUEST["COUNT_TICKETS"]) : $arCoupon["COUNT_TICKETS"]; $str_SLA_ID = isset($_REQUEST["SLA_ID"]) ? intval($arCoupon["SLA_ID"]) : $arCoupon["SLA_ID"]; $str_ACTIVE = isset($_REQUEST["ACTIVE"]) ? ($_REQUEST["ACTIVE"] == 'Y' ? 'Y' : 'N') : $arCoupon["ACTIVE"]; if ($ID > 0) { $APPLICATION->SetTitle(GetMessage('SUP_CE_TITLE_EDIT', array('%COUPON%' => $arCoupon['~COUPON']))); } else { $APPLICATION->SetTitle(GetMessage('SUP_CE_TITLE_NEW')); } require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_after.php"); $aMenu = array( array( 'ICON' => 'btn_list', 'TEXT' => GetMessage('SUP_CE_COUPONS_LIST'), 'LINK' => $LIST_URL . '?lang=' . LANG ) ); $context = new CAdminContextMenu($aMenu); $context->Show(); if ($message) echo $message->Show(); $aTabs = array(); $aTabs[] = array( 'DIV' => 'edit1', 'TAB' => GetMessage('SUP_CE_COUPON'), //'ICON'=>'ticket_dict_edit', 'TITLE'=>GetMessage('SUP_CE_COUPON_TITLE') ); $tabControl = new CAdminTabControl('tabControl', $aTabs); ?>