Update filter select elements after selecting a new year
[misc/kostenrechnung] / masks / gereinigt.php
index c02c6fa..578e08f 100644 (file)
@@ -8,19 +8,13 @@ Rico.loadModule('checkboxDB');
 function select_year_calback(data)
 {
   grid_update(grid);
+  grid_update_filters(grid);
 }
 
-function select_year(obj)
+function select_year_status(obj, value, html)
 {
-  if (!obj.options[obj.selectedIndex].value.length)
-    val = -1;
-  else
-    val = obj.options[obj.selectedIndex].value;
-
-  ajax_request('setvar','source=gereinigt&name=year&value='+val,select_year_calback);
-
-  if (obj.options[obj.selectedIndex].value.length)
-    info('Jahr ' + obj.options[obj.selectedIndex].innerHTML + ' ausgewählt');
+  if (value.length)
+    info('Jahr ' + value + ' ausgewählt');
   else
     info('');
 }
@@ -39,9 +33,11 @@ $mask = array(
                                'options' => discover_years(true),
                                'default' => 'Jahr wählen',
                                'selected' => $_SESSION['gereinigt.year'],
-                               'onchange' => 'select_year(this)',
+                               'onchange' => "setvar(this,'year',select_year_calback,select_year_status)",
                                ),
-             'variables' => array('year'),
+             'variables' => array(
+                                  'year' => array(),
+                                  ),
              'list' => array(
                              'id' => array(
                                            'name' => 'ID',
@@ -66,7 +62,7 @@ $mask = array(
                                                . intval($_SESSION['gereinigt.year'])
                                                . ' AND gereinigt.kostenstelle = kostenstellen.id)',
                                            'control' => "new Rico.TableColumn.checkboxDB(0, 'ajax/ricoUpdateConnection.php')",
-                                           'specs' => "filterUI: 'c', ClassName: 'aligncenter'",
+                                           'specs' => "filterUI: 'c', ClassName: 'aligncenter', canSort: false",
                                            'update' => array('table' => 'gereinigt',
                                                              'basecol' => 'jahr',
                                                              'baseval' => $_SESSION['gereinigt.year'],