//wizard customization file $bxProductConfig = array(); if (file_exists($_SERVER["DOCUMENT_ROOT"] . BX_ROOT . "/.config.php")) { include $_SERVER["DOCUMENT_ROOT"] . BX_ROOT . "/.config.php"; } //Title $curPage = $APPLICATION->GetCurPage(true); if ($curPage != "/bitrix/admin/index.php") { $currentFavId = null; $currentItemsId = ''; if (!defined('BX_ADMIN_SECTION_404') || BX_ADMIN_SECTION_404 != 'Y') { $arLastItem = null; //Navigation chain $adminChain->Init(); $arLastItem = $adminChain->Show(); $currentFavId = CFavorites::GetIDByUrl($_SERVER["REQUEST_URI"]); $currentItemsId = ''; } } foreach (GetModuleEvents("main", "OnPrologAdminTitle", true) as $arEvent) { $arPageParams = array(); $arPageParams[] = $curPage; if (isset($_GET["pageid"])) { $arPageParams[] = $_GET["pageid"]; } ExecuteModuleEventEx($arEvent, $arPageParams); } if ($curPage != "/bitrix/admin/index.php") { ?> <h1 class="adm-title" id="adm-title"><?php $adminPage->ShowTitle();
$aFav = array( array( "TEXT"=>GetMessage("get_start_menu_add_fav"), "TITLE"=>($aUserOpt['start_menu_title'] <> 'N'? GetMessage("get_start_menu_add_fav_title"):''), "ACTION"=>"BX.admin.startMenuFavAdd(".($_REQUEST["back_url_pub"]<>''? "'".CUtil::JSEscape($_REQUEST["back_url_pub"])."'":"").");" ), array( "TEXT"=>GetMessage("get_start_menu_org_fav"), "TITLE"=>($aUserOpt['start_menu_title'] <> 'N'? GetMessage("get_start_menu_org_fav_title"):''), "LINK"=> BX_ROOT."/admin/favorite_list.php?lang=".LANGUAGE_ID."&back_url_pub=".urlencode($_REQUEST["back_url_pub"]) ), ); $aFav[1]["ONCLICK"] = 'BX.admin.startMenuRecent('.CUtil::PhpToJsObject($aFav[1]).')'; $db_fav = CFavorites::GetList(array("COMMON"=>"ASC", "SORT"=>"ASC", "NAME"=>"ASC"), array("MENU_FOR_USER"=>$USER->GetID(), "LANGUAGE_ID"=>LANGUAGE_ID)); $prevCommon = ""; while($db_fav_arr = $db_fav->Fetch()) { if($db_fav_arr["COMMON"] == "Y" && $db_fav_arr["MODULE_ID"] <> "" && $APPLICATION->GetGroupRight($db_fav_arr["MODULE_ID"]) < "R") continue; if($db_fav_arr["COMMON"] <> $prevCommon) { $aFav[] = array("SEPARATOR"=>true); $prevCommon = $db_fav_arr["COMMON"]; } $sTitle = ''; if($aUserOpt['start_menu_title'] <> 'N') { $sTitle = $db_fav_arr["COMMENTS"];
$message = new CAdminMessage(GetMessage("fav_edit_error"), $e); } $bVarsFromForm = true; } } if ($_REQUEST["encoded"] == "Y") { CUtil::decodeURIComponent($_REQUEST["name"]); } $str_NAME = htmlspecialcharsbx($_REQUEST["name"]); $str_URL = htmlspecialcharsbx($_REQUEST["addurl"]); $str_C_SORT = 100; $str_COMMON = 'N'; $str_USER_ID = $USER->GetID(); $str_LANGUAGE_ID = LANGUAGE_ID; if ($ID > 0) { $fav = CFavorites::GetByID($ID); if (!($fav_arr = $fav->ExtractFields("str_"))) { $ID = 0; } } if ($bVarsFromForm) { $DB->InitTableVarsForEdit("b_favorite", "", "str_"); } $sDocTitle = $ID > 0 ? GetMessage("MAIN_EDIT_RECORD", array("#ID#" => $ID)) : GetMessage("MAIN_NEW_RECORD"); $APPLICATION->SetTitle($sDocTitle); require $_SERVER["DOCUMENT_ROOT"] . BX_ROOT . "/modules/main/include/prolog_admin_after.php"; $aMenu = array(array("TEXT" => GetMessage("MAIN_RECORDS_LIST"), "TITLE" => GetMessage("fav_edit_list_title"), "LINK" => "favorite_list.php?lang=" . LANG, "ICON" => "btn_list")); if ($ID > 0) { $aMenu[] = array("SEPARATOR" => "Y"); $aMenu[] = array("TEXT" => GetMessage("fav_edit_add"), "TITLE" => GetMessage("fav_edit_add_title"), "LINK" => "favorite_edit.php?lang=" . LANG, "ICON" => "btn_new"); $aMenu[] = array("TEXT" => GetMessage("fav_edit_del"), "TITLE" => GetMessage("fav_edit_del_title"), "LINK" => "javascript:if(confirm('" . GetMessage("fav_edit_del_conf") . "')) window.location='favorite_list.php?ID=" . $ID . "&action=delete&lang=" . LANG . "&" . bitrix_sessid_get() . "';", "ICON" => "btn_delete");
if (!$isAdmin) { $db_fav = CFavorites::GetByID($ID); if (($db_fav_arr = $db_fav->Fetch()) && $USER->GetID() != $db_fav_arr["USER_ID"]) { continue; } } switch ($_REQUEST['action']) { case "delete": if (!CFavorites::Delete($ID)) { $lAdmin->AddGroupError(GetMessage("fav_list_err_del"), $ID); } break; } } } $rsData = CFavorites::GetList(array($by => $order), $arFilter); $rsData = new CAdminResult($rsData, $sTableID); $rsData->NavStart(); $lAdmin->NavText($rsData->GetNavPrint(GetMessage("fav_list_nav"))); $aHeaders = array(array("id" => "NAME", "content" => GetMessage("MAIN_TITLE"), "sort" => "name", "default" => true), array("id" => "URL", "content" => GetMessage("fav_list_head_link"), "sort" => "url", "default" => true), array("id" => "C_SORT", "content" => GetMessage("MAIN_SORT"), "sort" => "sort", "align" => "right", "default" => true), array("id" => "LANGUAGE_ID", "content" => GetMessage("fav_list_head_lang"), "sort" => "language_id", "default" => true), array("id" => "MENU_ID", "content" => GetMessage("fav_list_flt_menu_id"), "sort" => "menu_id", "default" => true)); if ($isAdmin) { $aHeaders[] = array("id" => "COMMON", "content" => GetMessage("fav_list_head_common"), "sort" => "common", "default" => true); $aHeaders[] = array("id" => "USER_ID", "content" => GetMessage("fav_list_head_user"), "sort" => "user_id", "default" => true); $aHeaders[] = array("id" => "MODULE_ID", "content" => GetMessage("MAIN_MODULE"), "sort" => "module_id", "default" => true); } $aHeaders[] = array("id" => "TIMESTAMP_X", "content" => GetMessage("MAIN_TIMESTAMP_X"), "sort" => "timestamp_x", "default" => false); $aHeaders[] = array("id" => "MODIFIED_BY", "content" => GetMessage("MAIN_MODIFIED_BY"), "sort" => "modified_by", "default" => false); $aHeaders[] = array("id" => "ID", "content" => "ID", "sort" => "id", "default" => true); $lAdmin->AddHeaders($aHeaders); while ($arRes = $rsData->NavNext(true, "f_")) { $row =& $lAdmin->AddRow($f_ID, $arRes);
private function Init() { global $USER, $adminPage, $adminMenu; //for ajax requests, and menu autoupdates $adminPage->Init(); $adminMenu->Init($adminPage->aModules); $dbFav = CFavorites::GetList(array("COMMON" => "ASC", "SORT" => "ASC", "NAME" => "ASC"), array("MENU_FOR_USER" => $USER->GetID(), "LANGUAGE_ID" => LANGUAGE_ID)); while ($arFav = $dbFav->GetNext()) { $this->arItems[] = $arFav; } return true; }
if (!isset($_REQUEST["id"]) || !$_REQUEST["id"]) { break; } $dbFav = CFavorites::GetByID($_REQUEST["id"]); while ($arFav = $dbFav->GetNext()) { if ($arFav["USER_ID"] == $uid) { $res = CFavorites::Delete($_REQUEST["id"]); } } if ($res) { $favMenu = new CBXFavAdmMenu(); $res = $favMenu->GenerateMenuHTML(); } break; case 'get_list': $dbFav = CFavorites::GetList(); while ($arFav = $dbFav->GetNext()) { if ($uid == $arFav["USER_ID"] || $arFav["COMMON"] == "Y") { $res[] = array("NAME" => $arFav["NAME"], "URL" => $arFav["URL"], "LANGUAGE_ID" => $arFav["LANGUAGE_ID"]); } } if ($res) { $res = CUtil::PhpToJSObject($res); } break; case 'get_menu_html': $favMenu = new CBXFavAdmMenu(); $res = $favMenu->GenerateMenuHTML(); break; } echo $res;
private function Init() { global $APPLICATION, $USER, $adminPage, $adminMenu; //for ajax requests, and menu autoupdates $adminPage->Init(); $adminMenu->Init($adminPage->aModules); $dbFav = CFavorites::GetList(array("COMMON" => "ASC", "SORT" => "ASC", "NAME" => "ASC"), array("MENU_FOR_USER" => $USER->GetID(), "LANGUAGE_ID" => LANGUAGE_ID)); while ($arFav = $dbFav->GetNext()) { if ($arFav["COMMON"] == "Y" && $arFav["MODULE_ID"] != "" && $APPLICATION->GetGroupRight($arFav["MODULE_ID"]) < "R") { continue; } $this->arItems[] = $arFav; } return true; }
public static function GetList($aSort = array(), $arFilter = array()) { $err_mess = CFavorites::err_mess() . "<br>Function: GetList<br>Line: "; global $DB, $USER; $arSqlSearch = array(); $strSqlSearch = ""; if (is_array($arFilter)) { foreach ($arFilter as $key => $val) { if (strlen($val) <= 0 || $val == "NOT_REF") { continue; } switch (strtoupper($key)) { case "ID": $arSqlSearch[] = GetFilterQuery("F.ID", $val, "N"); break; case "USER_ID": $arSqlSearch[] = "F.USER_ID = " . intval($val); break; case "MENU_FOR_USER": $arSqlSearch[] = "(F.USER_ID=" . intval($val) . " OR F.COMMON='Y')"; break; case "COMMON": $arSqlSearch[] = "F.COMMON = '" . $DB->ForSql($val, 1) . "'"; break; case "LANGUAGE_ID": $arSqlSearch[] = "F.LANGUAGE_ID = '" . $DB->ForSql($val, 2) . "'"; break; case "DATE1": $arSqlSearch[] = "F.TIMESTAMP_X >= FROM_UNIXTIME('" . MkDateTime(FmtDate($val, "D.M.Y"), "d.m.Y") . "')"; break; case "DATE2": $arSqlSearch[] = "F.TIMESTAMP_X <= FROM_UNIXTIME('" . MkDateTime(FmtDate($val, "D.M.Y") . " 23:59:59", "d.m.Y") . "')"; break; case "MODIFIED": $arSqlSearch[] = GetFilterQuery("UM.ID, UM.LOGIN, UM.LAST_NAME, UM.NAME", $val); break; case "MODIFIED_ID": $arSqlSearch[] = "F.MODIFIED_BY = " . intval($val); break; case "CREATED": $arSqlSearch[] = GetFilterQuery("UC.ID, UC.LOGIN, UC.LAST_NAME, UC.NAME", $val); break; case "CREATED_ID": $arSqlSearch[] = "F.CREATED_BY = " . intval($val); break; case "KEYWORDS": $arSqlSearch[] = GetFilterQuery("F.COMMENTS", $val); break; case "NAME": $arSqlSearch[] = GetFilterQuery("F.NAME", $val); break; case "URL": $arSqlSearch[] = GetFilterQuery("F.URL", $val); break; case "MODULE_ID": $arSqlSearch[] = "F.MODULE_ID='" . $DB->ForSql($val, 50) . "'"; break; case "MENU_ID": $arSqlSearch[] = "F.MENU_ID='" . $DB->ForSql($val, 255) . "'"; break; } } } $sOrder = ""; foreach ($aSort as $key => $val) { $ord = strtoupper($val) != "ASC" ? "DESC" : "ASC"; switch (strtoupper($key)) { case "ID": $sOrder .= ", F.ID " . $ord; break; case "LANGUAGE_ID": $sOrder .= ", F.LANGUAGE_ID " . $ord; break; case "COMMON": $sOrder .= ", F.COMMON " . $ord; break; case "USER_ID": $sOrder .= ", F.USER_ID " . $ord; break; case "TIMESTAMP_X": $sOrder .= ", F.TIMESTAMP_X " . $ord; break; case "MODIFIED_BY": $sOrder .= ", F.MODIFIED_BY " . $ord; break; case "NAME": $sOrder .= ", F.NAME " . $ord; break; case "URL": $sOrder .= ", F.URL " . $ord; break; case "SORT": $sOrder .= ", F.C_SORT " . $ord; break; case "MODULE_ID": $sOrder .= ", F.MODULE_ID " . $ord; break; case "MENU_ID": $sOrder .= ", F.MENU_ID " . $ord; break; } } if (strlen($sOrder) <= 0) { $sOrder = "F.ID DESC"; } $strSqlOrder = " ORDER BY " . TrimEx($sOrder, ","); $strSqlSearch = GetFilterSqlSearch($arSqlSearch); $strSql = "\n\t\t\tSELECT\n\t\t\t\tF.ID, F.C_SORT, F.NAME, F.MENU_ID, F.URL, F.MODIFIED_BY, F.CREATED_BY, F.MODULE_ID, F.LANGUAGE_ID,\n\t\t\t\tF.COMMENTS, F.COMMON, F.USER_ID, UM.LOGIN AS M_LOGIN, UC.LOGIN as C_LOGIN, U.LOGIN, F.CODE_ID,\n\t\t\t\t" . $DB->DateToCharFunction("F.TIMESTAMP_X") . "\tTIMESTAMP_X,\n\t\t\t\t" . $DB->DateToCharFunction("F.DATE_CREATE") . "\tDATE_CREATE,\n\t\t\t\t" . $DB->Concat($DB->IsNull("UM.NAME", "''"), "' '", $DB->IsNull("UM.LAST_NAME", "''")) . " as M_USER_NAME,\n\t\t\t\t" . $DB->Concat($DB->IsNull("UC.NAME", "''"), "' '", $DB->IsNull("UC.LAST_NAME", "''")) . " as C_USER_NAME,\n\t\t\t\t" . $DB->Concat($DB->IsNull("U.NAME", "''"), "' '", $DB->IsNull("U.LAST_NAME", "''")) . " as USER_NAME\n\t\t\tFROM\n\t\t\t\tb_favorite F\n\t\t\t\tLEFT JOIN b_user UM ON (UM.ID = F.MODIFIED_BY)\n\t\t\t\tLEFT JOIN b_user UC ON (UC.ID = F.CREATED_BY)\n\t\t\t\tLEFT JOIN b_user U ON (U.ID = F.USER_ID)\n\t\t\tWHERE\n\t\t\t" . $strSqlSearch . "\n\t\t\t" . $strSqlOrder; $res = $DB->Query($strSql, false, $err_mess . __LINE__); return $res; }
private function Init() { global $USER,$adminPage,$adminMenu; //for ajax requests, and menu autoupdates $adminPage->Init(); $adminMenu->Init($adminPage->aModules); $dbFav = CFavorites::GetList(); while ($arFav = $dbFav->GetNext()) if($USER->GetID() == $arFav["USER_ID"] || $arFav["COMMON"]=="Y") $this->arItems[] = $arFav; return true; }