Use general function to set variable
[misc/kostenrechnung] / masks / gereinigt.php
1 <?php
2
3 $jscode[] = <<<EOC
4
5 Rico.moduleDependencies['checkboxDB'] = ['+LiveGrid', '../ricoTableColumnDB.js'];
6 Rico.loadModule('checkboxDB');
7
8 function select_year_calback(data)
9 {
10   grid_update(grid);
11 }
12
13 function select_year_status(obj, value, html)
14 {
15   if (value.length)
16     info('Jahr ' + value + ' ausgewählt');
17   else
18     info('');
19 }
20 EOC;
21
22 include_once($_SESSION['sys']['basedir'].'/lib/overview_utils.php');
23
24 if (empty($_SESSION['gereinigt.year'])) $_SESSION['gereinigt.year'] = date('Y');
25
26 $mask = array(
27               'table' => 'kostenstellen',
28               'title' => 'Gewässer gereinigt?',
29               'join' => array('gebiet ON kostenstellen.gebiet = gebiet.id'),
30               'select' => array(
31                                 'title' => 'Auswahl',
32                                 'options' => discover_years(true),
33                                 'default' => 'Jahr wählen',
34                                 'selected' => $_SESSION['gereinigt.year'],
35                                 'onchange' => 'select_year(this)',
36                                 'onchange' => "setvar(this,'year',select_year_calback,select_year_status)",
37                                 ),
38               'variables' => array('year'),
39               'list' => array(
40                               'id' => array(
41                                             'name' => 'ID',
42                                             'sql' => 'kostenstellen.id',
43                                             'visible' => false,
44                                             ),
45                               'gebiet' => array(
46                                             'name' => 'Gebiet',
47                                             'sql' => 'gebiet.gebiet',
48                                             'specs' => "filterUI: 's'",
49                                             'width' => 250,
50                                             ),
51                               'kostenstelle' => array(
52                                             'name' => 'Kostenstelle',
53                                             'specs' => "filterUI: 's'",
54                                             'width' => 250,
55                                             ),
56                               'gereinigt' => array(
57                                             'name' => 'gereinigt',
58                                             'width' => 65,
59                                             'sql' => '(SELECT count(*) FROM gereinigt WHERE jahr = '
60                                                 . intval($_SESSION['gereinigt.year'])
61                                                 . ' AND gereinigt.kostenstelle = kostenstellen.id)',
62                                             'control' => "new Rico.TableColumn.checkboxDB(0, 'ajax/ricoUpdateConnection.php')",
63                                             'specs' => "filterUI: 'c', ClassName: 'aligncenter'",
64                                             'update' => array('table' => 'gereinigt',
65                                                               'basecol' => 'jahr',
66                                                               'baseval' => $_SESSION['gereinigt.year'],
67                                                               'refcol' => 'kostenstelle',
68                                                               'reftable' => 'kostenstellen',
69                                                               'refid' => 'kostenstellen.id',
70                                                               ),
71                                             ),
72                               ),
73               'rows' => 20,
74               );
75
76 ?>