Index: trunk/core/kernel/db/db_tag_processor.php
===================================================================
diff -u -r4996 -r5081
--- trunk/core/kernel/db/db_tag_processor.php (.../db_tag_processor.php) (revision 4996)
+++ trunk/core/kernel/db/db_tag_processor.php (.../db_tag_processor.php) (revision 5081)
@@ -110,7 +110,7 @@
$submit = 1;
$status = 0;
}
- $block_params['filter_action'] = 'set_filter("'.$prefix_special.'","'.$filter_key.'","'.$submit.'");';
+ $block_params['filter_action'] = 'set_filter("'.$prefix_special.'","'.$filter_key.'","'.$submit.'",'.$params['ajax'].');';
$block_params['filter_status'] = $status;
$filters[] = $this->Application->ParseBlock($block_params);
}
Index: trunk/kernel/admin_templates/incs/script.js
===================================================================
diff -u -r5073 -r5081
--- trunk/kernel/admin_templates/incs/script.js (.../script.js) (revision 5073)
+++ trunk/kernel/admin_templates/incs/script.js (.../script.js) (revision 5081)
@@ -76,13 +76,14 @@
submit_event($prefix_special, 'OnSetSorting', null, null, $ajax);
}
-function direct_sort_grid($prefix_special,$field,$direction,$field_pos)
+function direct_sort_grid($prefix_special, $field, $direction, $field_pos, $ajax)
{
if(!isset($field_pos)) $field_pos = 1;
+ set_form($prefix_special, $ajax);
set_hidden_field($prefix_special+'_Sort'+$field_pos,$field);
set_hidden_field($prefix_special+'_Sort'+$field_pos+'_Dir',$direction);
set_hidden_field($prefix_special+'_SortPos',$field_pos);
- submit_event($prefix_special,'OnSetSortingDirect');
+ submit_event($prefix_special,'OnSetSortingDirect', null, null, $ajax);
}
function reset_sorting($prefix_special)
@@ -585,21 +586,24 @@
$window.document.title = (main_title.length ? main_title + ' - ' : '') + $title;
}
-function set_filter($prefix_special, $filter_id, $filter_value)
+function set_filter($prefix_special, $filter_id, $filter_value, $ajax)
{
- set_hidden_field('filter_id',$filter_id);
- set_hidden_field('filter_value',$filter_value);
- submit_event($prefix_special,'OnSetFilter');
+ set_form($prefix_special, $ajax);
+ set_hidden_field('filter_id', $filter_id);
+ set_hidden_field('filter_value', $filter_value);
+ submit_event($prefix_special, 'OnSetFilter', null, null, $ajax);
}
-function filters_remove_all($prefix_special)
+function filters_remove_all($prefix_special, $ajax)
{
- submit_event($prefix_special,'OnRemoveFilters');
+ set_form($prefix_special, $ajax);
+ submit_event($prefix_special,'OnRemoveFilters', null, null, $ajax);
}
-function filters_apply_all($prefix_special)
+function filters_apply_all($prefix_special, $ajax)
{
- submit_event($prefix_special,'OnApplyFilters');
+ set_form($prefix_special, $ajax);
+ submit_event($prefix_special,'OnApplyFilters', null, null, $ajax);
}
function RemoveTranslationLink($string, $escaped)
Index: trunk/core/units/categories/categories_config.php
===================================================================
diff -u -r5030 -r5081
--- trunk/core/units/categories/categories_config.php (.../categories_config.php) (revision 5030)
+++ trunk/core/units/categories/categories_config.php (.../categories_config.php) (revision 5081)
@@ -152,7 +152,23 @@
),
),
-
+
+ 'FilterMenu' => Array(
+ 'Groups' => Array(
+ Array('mode' => 'AND', 'filters' => Array('show_active','show_pending','show_disabled'), 'type' => WHERE_FILTER),
+ Array('mode' => 'AND', 'filters' => Array('show_new'), 'type' => HAVING_FILTER),
+ Array('mode' => 'AND', 'filters' => Array('show_pick'), 'type' => WHERE_FILTER),
+ ),
+ 'Filters' => Array(
+ 'show_active' => Array('label' =>'la_Active', 'on_sql' => '', 'off_sql' => 'Status != 1' ),
+ 'show_pending' => Array('label' => 'la_Pending', 'on_sql' => '', 'off_sql' => 'Status != 2' ),
+ 'show_disabled' => Array('label' => 'la_Disabled', 'on_sql' => '', 'off_sql' => 'Status != 0' ),
+ 's1' => Array(),
+ 'show_new' => Array('label' => 'la_Text_New', 'on_sql' => '', 'off_sql' => '`IsNew` != 1' ),
+ 'show_pick' => Array('label' => 'la_prompt_EditorsPick', 'on_sql' => '', 'off_sql' => '`EditorsPick` != 1' ),
+ )
+ ),
+
'ListSQLs' => Array( ''=> ' SELECT %1$s.* %2$s
FROM %1$s
LEFT JOIN '.TABLE_PREFIX.'PermCache ON '.TABLE_PREFIX.'PermCache.CategoryId = %1$s.CategoryId
Index: trunk/kernel/admin_templates/xml/categories_list.tpl
===================================================================
diff -u -r5078 -r5081
--- trunk/kernel/admin_templates/xml/categories_list.tpl (.../categories_list.tpl) (revision 5078)
+++ trunk/kernel/admin_templates/xml/categories_list.tpl (.../categories_list.tpl) (revision 5081)
@@ -5,7 +5,7 @@
Grids['c'].AddItemsByIdMask('td', /^c_([0-9-]+)/, 'c[$$ID$$][CategoryId]');
Grids['c'].InitItems();
Grids['c'].SetDependantToolbarButtons( new Array('edit','delete','approve','decline','sep3','cut','copy','move_up','move_down','sep6'));
-
+
document.getElementById('categories_form').action = '';
Index: trunk/core/admin_templates/categories/xml/categories_list.tpl
===================================================================
diff -u -r5078 -r5081
--- trunk/core/admin_templates/categories/xml/categories_list.tpl (.../categories_list.tpl) (revision 5078)
+++ trunk/core/admin_templates/categories/xml/categories_list.tpl (.../categories_list.tpl) (revision 5081)
@@ -5,7 +5,7 @@
Grids['c'].AddItemsByIdMask('td', /^c_([0-9-]+)/, 'c[$$ID$$][CategoryId]');
Grids['c'].InitItems();
Grids['c'].SetDependantToolbarButtons( new Array('edit','delete','approve','decline','sep3','cut','copy','move_up','move_down','sep6'));
-
+
document.getElementById('categories_form').action = '';
Index: trunk/kernel/units/categories/categories_config.php
===================================================================
diff -u -r5030 -r5081
--- trunk/kernel/units/categories/categories_config.php (.../categories_config.php) (revision 5030)
+++ trunk/kernel/units/categories/categories_config.php (.../categories_config.php) (revision 5081)
@@ -152,7 +152,23 @@
),
),
-
+
+ 'FilterMenu' => Array(
+ 'Groups' => Array(
+ Array('mode' => 'AND', 'filters' => Array('show_active','show_pending','show_disabled'), 'type' => WHERE_FILTER),
+ Array('mode' => 'AND', 'filters' => Array('show_new'), 'type' => HAVING_FILTER),
+ Array('mode' => 'AND', 'filters' => Array('show_pick'), 'type' => WHERE_FILTER),
+ ),
+ 'Filters' => Array(
+ 'show_active' => Array('label' =>'la_Active', 'on_sql' => '', 'off_sql' => 'Status != 1' ),
+ 'show_pending' => Array('label' => 'la_Pending', 'on_sql' => '', 'off_sql' => 'Status != 2' ),
+ 'show_disabled' => Array('label' => 'la_Disabled', 'on_sql' => '', 'off_sql' => 'Status != 0' ),
+ 's1' => Array(),
+ 'show_new' => Array('label' => 'la_Text_New', 'on_sql' => '', 'off_sql' => '`IsNew` != 1' ),
+ 'show_pick' => Array('label' => 'la_prompt_EditorsPick', 'on_sql' => '', 'off_sql' => '`EditorsPick` != 1' ),
+ )
+ ),
+
'ListSQLs' => Array( ''=> ' SELECT %1$s.* %2$s
FROM %1$s
LEFT JOIN '.TABLE_PREFIX.'PermCache ON '.TABLE_PREFIX.'PermCache.CategoryId = %1$s.CategoryId
Index: trunk/kernel/admin_templates/incs/grid_blocks.tpl
===================================================================
diff -u -r5073 -r5081
--- trunk/kernel/admin_templates/incs/grid_blocks.tpl (.../grid_blocks.tpl) (revision 5073)
+++ trunk/kernel/admin_templates/incs/grid_blocks.tpl (.../grid_blocks.tpl) (revision 5081)
@@ -197,7 +197,7 @@
- $Menus[''+'_sorting_menu'].addMenuItem('','direct_sort_grid("","","");','2');
+ $Menus[''+'_sorting_menu'].addMenuItem('','direct_sort_grid("","","", null, );','2');
@@ -208,27 +208,27 @@
$Menus[''+'_filter_menu'].addMenuSeparator();
-
+
// define ViewMenu
$fw_menus[''+'_view_menu'] = function()
{
// filtring menu
$Menus[''+'_filter_menu'] = new Menu('');
- $Menus[''+'_filter_menu'].addMenuItem('All','filters_remove_all("");');
- $Menus[''+'_filter_menu'].addMenuItem('None','filters_apply_all("");');
+ $Menus[''+'_filter_menu'].addMenuItem('All','filters_remove_all("", );');
+ $Menus[''+'_filter_menu'].addMenuItem('None','filters_apply_all("", );');
$Menus[''+'_filter_menu'].addMenuSeparator();
-
+
// sorting menu
$Menus[''+'_sorting_menu'] = new Menu('');
- $Menus[''+'_sorting_menu'].addMenuItem('','direct_sort_grid("","","asc");','2');
- $Menus[''+'_sorting_menu'].addMenuItem('','direct_sort_grid("","","desc");','2');
+ $Menus[''+'_sorting_menu'].addMenuItem('','direct_sort_grid("","","asc",null,);','2');
+ $Menus[''+'_sorting_menu'].addMenuItem('','direct_sort_grid("","","desc",null,);','2');
$Menus[''+'_sorting_menu'].addMenuSeparator();
$Menus[''+'_sorting_menu'].addMenuItem('','reset_sorting("");');
-
+