GetGroupRight("mail"); if($MOD_RIGHT<"R") $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); IncludeModuleLangFile(__FILE__); Bitrix\Main\Loader::includeModule('mail'); $err_mess = "File: ".__FILE__."
Line: "; $strError = ""; $ID = intval($ID); $bCanUseTLS = (defined('BX_MAIL_FORCE_USE_TLS') && BX_MAIL_FORCE_USE_TLS === true) || function_exists('openssl_open'); if($REQUEST_METHOD=="POST" && ($save <> '' || $save_ext <> '' || $apply <> '') && $MOD_RIGHT=="W" && check_bitrix_sessid()) { $arFields = array( 'ACTIVE' => $ACTIVE, 'LID' => $LID, 'SERVICE_ID' => $SERVICE_ID, 'NAME' => $NAME, 'SERVER' => $SERVER, 'PORT' => $PORT, 'RELAY' => $RELAY, 'AUTH_RELAY' => $AUTH_RELAY, 'DOMAINS' => $DOMAINS, 'SERVER_TYPE' => $SERVER_TYPE, 'LOGIN' => $LOGIN, 'PASSWORD' => $PASSWORD, 'CHARSET' => $CHARSET, 'USE_MD5' => $USE_MD5, 'DELETE_MESSAGES' => $DELETE_MESSAGES, 'PERIOD_CHECK' => $PERIOD_CHECK, 'DESCRIPTION' => $DESCRIPTION, 'MAX_MSG_COUNT' => $MAX_MSG_COUNT, 'MAX_MSG_SIZE' => ((int) $MAX_MSG_SIZE) * 1024, 'MAX_KEEP_DAYS' => (int) $MAX_KEEP_DAYS, 'USE_TLS' => $bCanUseTLS && $USE_TLS == 'Y' ? ($SKIP_CERT == 'Y' ? 'S' : 'Y') : 'N', 'USER_ID' => $USER_ID, 'LINK' => $LINK ); if ($ID > 0) { if ($arFields['PASSWORD'] == '') unset($arFields['PASSWORD']); $res = CMailbox::Update($ID, $arFields); } else { $ID = CMailbox::Add($arFields); $res = $ID > 0; } if (!$res) { if ($e = $APPLICATION->GetException()) $message = new CAdminMessage(GetMessage("MAIL_MBOX_EDT_ERROR"), $e); } else { if ($save_ext <> '' && $filter_type != '') LocalRedirect("mail_filter_edit.php?lang=".LANG."&filter_type=".$filter_type."&find_mailbox_id=".$ID); elseif ($save <> '') LocalRedirect("mail_mailbox_admin.php?lang=".LANG); else LocalRedirect($APPLICATION->GetCurPage()."?lang=".LANG."&ID=".$ID); } } $mb = CMailbox::GetByID($ID); if (!$mb->ExtractFields("str_")) $ID = 0; if($ID===0){ $str_SERVER_TYPE = $mailbox_type == 'user' ? 'imap' : 'pop3'; $str_PORT = $str_SERVER_TYPE == 'imap' ? ($bCanUseTLS ? '993' : '143') : '110'; $str_USE_TLS = $str_SERVER_TYPE == 'imap' && $bCanUseTLS ? 'Y' : 'N'; $str_ACTIVE = 'Y'; $str_AUTH_RELAY = 'Y'; $str_RELAY = 'Y'; } if ($message) $DB->InitTableVarsForEdit("b_mail_mailbox", "", "str_"); $sDocTitle = ($ID > 0) ? preg_replace("'#ID#'i", $ID, GetMessage("MAIL_MBOX_EDT_TITLE_1")) : GetMessage("MAIL_MBOX_EDT_TITLE_2"); $APPLICATION->SetTitle($sDocTitle); require($_SERVER["DOCUMENT_ROOT"].BX_ROOT."/modules/main/include/prolog_admin_after.php"); $aMenu = array( array( "ICON" => "btn_list", "TEXT" => GetMessage("MAIL_MBOX_EDT_BACK_LINK"), "LINK" => "mail_mailbox_admin.php?lang=".LANG ) ); if ($ID > 0) { $aMenu[] = array("SEPARATOR"=>"Y"); $aMenu[] = array( "ICON" => "btn_new", "TEXT" => GetMessage("MAIL_MBOX_EDT_NEW"), "LINK" => "mail_mailbox_edit.php?lang=".LANG ); if ($MOD_RIGHT=="W") { $aMenu[] = array( "TEXT" => GetMessage("MAIL_MBOX_EDT_DEL"), "ICON" => "btn_delete", "LINK" => "javascript:if(confirm('".GetMessage("MAIL_MBOX_EDT_DEL_CONFIRM")."'))window.location='mail_mailbox_admin.php?action=delete&ID=".$ID."&lang=".LANG."&".bitrix_sessid_get()."';", ); } } //echo ShowSubMenu($aMenu); $context = new CAdminContextMenu($aMenu); $context->Show(); $aTabs = array( array("DIV" => "edit1", "TAB" => GetMessage("MAIL_MBOX_EDT_TAB"), "ICON"=>"mail_mailbox_edit", "TITLE"=>$sDocTitle), ); if (in_array($str_SERVER_TYPE, array('pop3', 'smtp'))) $aTabs[] = array("DIV" => "edit2", "TAB" => GetMessage("MAIL_MBOX_EDT_TAB2"), "ICON"=>"mail_mailbox_edit", "TITLE"=>$sDocTitle); $tabControl = new CAdminTabControl("tabControl", $aTabs); if (in_array($str_SERVER_TYPE, array('imap', 'domain', 'crdomain', 'controller'))) { $mailServices = array(); $result = Bitrix\Mail\MailServicesTable::getList(array( 'filter' => array('ACTIVE' => 'Y'), 'order' => array('SORT' => 'ASC', 'NAME' => 'ASC') )); while (($service = $result->fetch()) !== false) { if (!isset($mailServices[$service['SITE_ID']])) $mailServices[$service['SITE_ID']] = array(); $mailServices[$service['SITE_ID']][$service['ID']] = $service; } } ?> Show(); ?>