Index: trunk/kernel/admin/include/toolbar/advanced_view.php =================================================================== diff -u -N -r609 -r1333 --- trunk/kernel/admin/include/toolbar/advanced_view.php (.../advanced_view.php) (revision 609) +++ trunk/kernel/admin/include/toolbar/advanced_view.php (.../advanced_view.php) (revision 1333) @@ -124,11 +124,24 @@ $lang_SubCats = language("la_Text_SubCats"); $lang_SubItems = language("la_Text_Subitems"); +// View, Sort, Select, Per Page +$lang_View = language('la_Text_View'); +$lang_Sort = language('la_Text_Sort'); +$lang_PerPage = language('la_prompt_PerPage'); +$lang_Select = language('la_Text_Select'); + $ItemTabs->AddTab(language("la_ItemTab_Categories"),"category",$objCatList->QueryItemCount, $m_tab_Categories_hide, $CatTotal); print << +// global usage phrases +var lang_View = '$lang_View'; +var lang_Sort = '$lang_Sort'; +var lang_PerPage = '$lang_PerPage'; +var lang_Select = '$lang_Select'; + +// local usage phrases var default_tab = "$DefaultTab"; var Category_Sortfield = '$Category_Sortfield'; var Category_Sortorder = '$Category_Sortorder'; @@ -166,7 +179,7 @@ addCommonActions(); initToolbar('mainToolBar', actionHandler); initCheckBoxes(null, false); - toggleMenu(); + //toggleMenu(); } function AddButtonAction(actionname,actionval) @@ -241,38 +254,58 @@ } } + \$fw_menus['c_view_menu'] = function() + { + // filtring menu + \$Menus['c_filtring_menu'] = new Menu(lang_View); + \$Menus['c_filtring_menu'].addMenuItem(lang_All,"config_val('Category_View', 127);",CategoryView==127); + \$Menus['c_filtring_menu'].addMenuSeparator(); + \$Menus['c_filtring_menu'].addMenuItem(lang_Active,"FlipBit('Category_View',CategoryView,6);",BitStatus(CategoryView,6)); + \$Menus['c_filtring_menu'].addMenuItem(lang_Pending,"FlipBit('Category_View',CategoryView,5);", BitStatus(CategoryView,5)); + \$Menus['c_filtring_menu'].addMenuItem(lang_Disabled,"FlipBit('Category_View',CategoryView,4);",BitStatus(CategoryView,4)); + \$Menus['c_filtring_menu'].addMenuSeparator(); + \$Menus['c_filtring_menu'].addMenuItem(lang_New,"FlipBit('Category_View',CategoryView,3);",BitStatus(CategoryView,3)); + \$Menus['c_filtring_menu'].addMenuItem(lang_EdPick,"FlipBit('Category_View',CategoryView,0);",BitStatus(CategoryView,0)); + + // sorting menu + \$Menus['c_sorting_menu'] = new Menu(lang_Sort); + \$Menus['c_sorting_menu'].addMenuItem(lang_Asc,"config_val('Category_Sortorder','asc');",RadioIsSelected(Category_Sortorder,'asc')); + \$Menus['c_sorting_menu'].addMenuItem(lang_Desc,"config_val('Category_Sortorder','desc');",RadioIsSelected(Category_Sortorder,'desc')); + \$Menus['c_sorting_menu'].addMenuSeparator(); + \$Menus['c_sorting_menu'].addMenuItem(lang_Default,"config_val('Category_Sortfield','Name');",""); + \$Menus['c_sorting_menu'].addMenuItem(lang_Name,"config_val('Category_Sortfield','Name');",RadioIsSelected(Category_Sortfield,'Name')); + \$Menus['c_sorting_menu'].addMenuItem(lang_Description,"config_val('Category_Sortfield','Description');",RadioIsSelected(Category_Sortfield,'Description')); + \$Menus['c_sorting_menu'].addMenuItem(lang_CreatedOn,"config_val('Category_Sortfield','CreatedOn');",RadioIsSelected(Category_Sortfield,'CreatedOn')); + \$Menus['c_sorting_menu'].addMenuItem(lang_SubCats,"config_val('Category_Sortfield','CachedDescendantCatsQty');",RadioIsSelected(Category_Sortfield,'CachedDescendantCatsQty')); + \$Menus['c_sorting_menu'].addMenuItem(lang_SubItems,"config_val('Category_Sortfield','SubItems');",RadioIsSelected(Category_Sortfield,'SubItems')); + + // perpage menu + \$Menus['c_perpage_menu'] = new Menu(lang_PerPage); + \$Menus['c_perpage_menu'].addMenuItem("10","config_val('Perpage_Category', '10');",RadioIsSelected(Category_Perpage,10)); + \$Menus['c_perpage_menu'].addMenuItem("20","config_val('Perpage_Category', '20');",RadioIsSelected(Category_Perpage,20)); + \$Menus['c_perpage_menu'].addMenuItem("50","config_val('Perpage_Category', '50');",RadioIsSelected(Category_Perpage,50)); + \$Menus['c_perpage_menu'].addMenuItem("100","config_val('Perpage_Category', '100');",RadioIsSelected(Category_Perpage,100)); + \$Menus['c_perpage_menu'].addMenuItem("500","config_val('Perpage_Category', '500');",RadioIsSelected(Category_Perpage,500)); + + // select menu + \$Menus['c_select_menu'] = new Menu(lang_Select); + \$Menus['c_select_menu'].addMenuItem(lang_All,"javascript:selectAllC('"+activeTab.id+"');",""); + \$Menus['c_select_menu'].addMenuItem(lang_Unselect,"javascript:unselectAll('"+activeTab.id+"');",""); + \$Menus['c_select_menu'].addMenuItem(lang_Invert,"javascript:invert('"+activeTab.id+"');",""); + + // view menu + \$Menus['c_view_menu'] = new Menu(lang_Categories); + \$Menus['c_view_menu'].addMenuItem( \$Menus['c_filtring_menu'] ); + \$Menus['c_view_menu'].addMenuItem( \$Menus['c_sorting_menu'] ); + \$Menus['c_view_menu'].addMenuItem( \$Menus['c_perpage_menu'] ); + \$Menus['c_view_menu'].addMenuItem( \$Menus['c_select_menu'] ); + } + function toggleMenu() { - if (activeTab) - { - // module filtring menu - filterfunc = activeTab.getAttribute("tabTitle")+'_FilterMenu(cat_menu_filter);'; - window.cat_menu_filter = new Menu(lang_View); - cat_menu_filter = eval(filterfunc); - - // module sorting menu - sortfunc = activeTab.getAttribute("tabTitle")+'_SortMenu(cat_menu_sorting);'; - window.cat_menu_sorting = new Menu(lang_Sort); - cat_menu_sorting = eval(sortfunc); - - // module select menu - selectfunc = activeTab.getAttribute("tabTitle")+"_SelectMenu(cat_menu_select);"; - window.cat_menu_select = new Menu(lang_Select); - cat_menu_select = eval(selectfunc); - - // module per-page menu (in case if module selected) - pagefunc = activeTab.getAttribute("tabTitle")+"_PerPageMenu();"; - window.PerPageMenu = eval(pagefunc); - } - window.cat_menu = new Menu("root"); - if (activeTab) - { - // add root ViewMenu elements - window.cat_menu.addMenuItem(cat_menu_filter); // "View" menu - window.cat_menu.addMenuItem(cat_menu_sorting); // "Sort" menu - window.cat_menu.addMenuItem(PerPageMenu); // Module "Per-Page" menu - window.cat_menu.addMenuItem(cat_menu_select); // "Select" menu - } + var prefix_special = activeTab.getAttribute('PrefixSpecial'); + \$fw_menus[prefix_special+'_view_menu'](); + window.cat_menu = \$Menus[prefix_special+'_view_menu']; window.triedToWriteMenus = false; window.cat_menu.writeMenus(); } @@ -365,68 +398,7 @@ window.contextMenu.writeMenus(); return true; } - - - // only "Category" tab functions - function Categories_SortMenu(menu_sorting) - { - if(menu_sorting == null && typeof(menu_sorting) == 'undefined') menu_sorting = new Menu(lang_Categories); - - menu_sorting.addMenuItem(lang_Asc,"config_val('Category_Sortorder','asc');",RadioIsSelected(Category_Sortorder,'asc')); - menu_sorting.addMenuItem(lang_Desc,"config_val('Category_Sortorder','desc');",RadioIsSelected(Category_Sortorder,'desc')); - menu_sorting.addMenuSeparator(); - - menu_sorting.addMenuItem(lang_Default,"config_val('Category_Sortfield','Name');",""); - menu_sorting.addMenuItem(lang_Name,"config_val('Category_Sortfield','Name');",RadioIsSelected(Category_Sortfield,'Name')); - menu_sorting.addMenuItem(lang_Description,"config_val('Category_Sortfield','Description');",RadioIsSelected(Category_Sortfield,'Description')); - - menu_sorting.addMenuItem(lang_CreatedOn,"config_val('Category_Sortfield','CreatedOn');",RadioIsSelected(Category_Sortfield,'CreatedOn')); - menu_sorting.addMenuItem(lang_SubCats,"config_val('Category_Sortfield','CachedDescendantCatsQty');",RadioIsSelected(Category_Sortfield,'CachedDescendantCatsQty')); - menu_sorting.addMenuItem(lang_SubItems,"config_val('Category_Sortfield','SubItems');",RadioIsSelected(Category_Sortfield,'SubItems')); - - return menu_sorting; - - } - - function Categories_FilterMenu(menu_filter) - { - if(menu_filter == null && typeof(menu_filter) == 'undefined') menu_filter = new Menu(lang_Categories); - menu_filter.addMenuItem(lang_All,"config_val('Category_View', 127);",CategoryView==127); - menu_filter.addMenuSeparator(); - menu_filter.addMenuItem(lang_Active,"FlipBit('Category_View',CategoryView,6);",BitStatus(CategoryView,6)); - menu_filter.addMenuItem(lang_Pending,"FlipBit('Category_View',CategoryView,5);", BitStatus(CategoryView,5)); - menu_filter.addMenuItem(lang_Disabled,"FlipBit('Category_View',CategoryView,4);",BitStatus(CategoryView,4)); - - menu_filter.addMenuSeparator(); - menu_filter.addMenuItem(lang_New,"FlipBit('Category_View',CategoryView,3);",BitStatus(CategoryView,3)); - menu_filter.addMenuItem(lang_EdPick,"FlipBit('Category_View',CategoryView,0);",BitStatus(CategoryView,0)); - - return menu_filter; - } - - function Categories_SelectMenu(menu_select) - { - if(menu_select == null && typeof(menu_select) == 'undefined') menu_select = new Menu(lang_Categories); - menu_select.addMenuItem(lang_All,"javascript:selectAllC('"+activeTab.id+"');",""); - menu_select.addMenuItem(lang_Unselect,"javascript:unselectAll('"+activeTab.id+"');",""); - menu_select.addMenuItem(lang_Invert,"javascript:invert('"+activeTab.id+"');",""); - return menu_select; - } - - function Categories_PerPageMenu() - { - caption = lang_Categories +" "+lang_PerPage; - - menu_results = new Menu(caption); - menu_results.addMenuItem("10","config_val('Perpage_Category', '10');",RadioIsSelected(Category_Perpage,10)); - menu_results.addMenuItem("20","config_val('Perpage_Category', '20');",RadioIsSelected(Category_Perpage,20)); - menu_results.addMenuItem("50","config_val('Perpage_Category', '50');",RadioIsSelected(Category_Perpage,50)); - menu_results.addMenuItem("100","config_val('Perpage_Category', '100');",RadioIsSelected(Category_Perpage,100)); - menu_results.addMenuItem("500","config_val('Perpage_Category', '500');",RadioIsSelected(Category_Perpage,500)); - return menu_results; - } - // Event Handling Stuff Cross-Browser getEvent = window.Event ? function(e){return e} Index: trunk/admin/browse.php =================================================================== diff -u -N -r927 -r1333 --- trunk/admin/browse.php (.../browse.php) (revision 927) +++ trunk/admin/browse.php (.../browse.php) (revision 1333) @@ -253,7 +253,7 @@ 0) print "tab=\"".$btn["Tab"]."\""; print ">\n"; Index: trunk/admin/include/mainscript.php =================================================================== diff -u -N -r1027 -r1333 --- trunk/admin/include/mainscript.php (.../mainscript.php) (revision 1027) +++ trunk/admin/include/mainscript.php (.../mainscript.php) (revision 1333) @@ -76,6 +76,8 @@