Switch to Helvetica font
[misc/hallinta-metro] / ordersatz_pos.php
index c7002aa..b4743b7 100644 (file)
@@ -33,7 +33,7 @@ grid_column_edit[1] = {
             ['8 mal bestellen', '8', 8],
             ['10 mal bestellen', '10', 10],
             ['12 mal bestellen', '12', 12],
-            ['14 mal bestellen', '14', 14]
+            ['Wert eingeben', 'Bitte geben Sie die gewünschte Menge ein', 'prompt']
             ]
 };
 
@@ -73,7 +73,7 @@ function finish()
   return false;
 }
 
-function import_callback(data)
+function import_articles_callback(data)
 {
   if (data.status == true) {
     info('Ordersatz aktualisiert');
@@ -85,13 +85,13 @@ function import_callback(data)
   }
 }
 
-function import()
+function import_articles()
 {
   var source = document.getElementById('source');
   if (!source) return false;
 
   var parms = 'source=' + source.innerHTML + '&callback=import';
-  ajax_request('function', parms, import_callback);
+  ajax_request('function', parms, import_articles_callback);
   return false;
 }
 
@@ -99,11 +99,11 @@ EOC;
 
 $buttons = <<<EOC
 <p style="margin-top: 0px; margin-bottom: 4px; text-align: center;">
-<button onclick="return import()">Artikel importieren</button>
+<button class="custom" onclick="return import_articles()">Artikel importieren</button>
 &nbsp;
-<button onclick="return build_pdf()">PDF erstellen</button>
+<button class="custom" onclick="return build_pdf()">PDF erstellen</button>
 &nbsp;
-<button onclick="return finish()">Abschließen</button>
+<button class="custom" onclick="return finish()">Abschließen</button>
 <br>Bei Abschluß wird ein Fax zu Metro und eine Kopie per Mail an den Koch geschickt.
 </p>
 EOC;
@@ -137,18 +137,17 @@ $mask = array(
                              'anzahl' => array(
                                            'name' => 'Anzahl',
                                            'width' => 60,
-                                           'specs' => "ClassName: 'alignrightpad', filterUI: 't'",
+                                           'specs' => "ClassName: 'alignrightpad'",
                                            ),
                              'artnr' => array(
                                            'name' => 'Artnr',
                                            'width' => 60,
-                                           'specs' => "filterUI: 't'",
                                            'visible' => false,
                                            ),
                              'menge' => array(
                                            'name' => 'Menge',
                                            'width' => 60,
-                                           'specs' => "ClassName: 'alignrightpad', filterUI: 't'",
+                                           'specs' => "ClassName: 'alignrightpad', filterUI: 't2'",
                                            ),
                              'bezeichnung' => array(
                                            'name' => 'Bezeichnung',
@@ -159,26 +158,36 @@ $mask = array(
                                            'name' => 'Preis',
                                            'width' => 60,
                                            'type' => 'number',
-                                           'specs' => "decPlaces: 2, ClassName: 'alignrightpad', filterUI: 't'",
+                                           'specs' => "decPlaces: 2, ClassName: 'alignrightpad'",
                                            'sql' => '(SELECT preis * ((100 + steuersatz)/100) FROM metro_artikel_preis ' .
                                                     'WHERE artikel = metro_artikel.id ORDER BY datum DESC LIMIT 1)',
                                            ),
+                             'datum' => array(
+                                           'name' => 'Datum',
+                                           'width' => 85,
+                                           'type' => 'text',
+                                           'sql' => '(SELECT datum FROM metro_artikel_preis ' .
+                                                    'WHERE artikel = metro_artikel.id ORDER BY datum DESC LIMIT 1)',
+                                           'visible' => false,
+                                           ),
                              'hersteller' => array(
                                            'name' => 'Hersteller',
                                            'width' => 80,
-                                           'specs' => "filterUI: 't'",
+                                           'specs' => "filterUI: 't5'",
                                            ),
                              'vpe' => array(
                                            'name' => 'Einheit',
                                            'width' => 70,
                                            'specs' => "ClassName: 'aligncenter', filterUI: 's'",
                                            'control' => "new Rico.TableColumn.lookup(".grid_lookup_sql('metro_vpe','id','name').", 0, '')",
+                                           'distinct' => "SELECT DISTINCT vpe,metro_vpe.name FROM metro_artikel JOIN metro_vpe ON vpe = metro_vpe.id ORDER BY name",
                                            ),
                              'abteilung' => array(
                                            'name' => 'Abteilung',
                                            'width' => 80,
                                            'specs' => "ClassName: 'aligncenter', filterUI: 's'",
                                            'control' => "new Rico.TableColumn.lookup(".grid_lookup_sql('metro_abteilung','id','name').", 0, '')",
+                                           'distinct' => "SELECT DISTINCT abteilung,metro_abteilung.name FROM metro_artikel JOIN metro_abteilung ON abteilung = metro_abteilung.id ORDER BY name",
                                            'visible' => false,
                                            ),
                              'gang' => array(
@@ -187,6 +196,7 @@ $mask = array(
                                            'sql' => 'abteilung',
                                            'specs' => "ClassName: 'aligncenter', filterUI: 's'",
                                            'control' => "new Rico.TableColumn.lookup(".grid_lookup_sql('metro_abteilung','id','gang').", 0, '')",
+                                           'distinct' => "SELECT DISTINCT abteilung,metro_abteilung.gang FROM metro_artikel JOIN metro_abteilung ON abteilung = metro_abteilung.id ORDER BY gang",
                                            'visible' => false,
                                            ),
                              ),
@@ -210,6 +220,7 @@ $mask = array(
                                 'save' => false,
                                 'insert' => false,
                                 'delete' => false,
+                                'changes' => false,
                                 ),
              );
 
@@ -235,8 +246,11 @@ function cb_pdf()
   $tmpdir = mk_tempdir();
   $result = ordersatz_write($_SESSION['ordersatz'], $tmpdir, false);
 
-  if ($result !== true)
+  if ($result !== true) {
+    error_log($tmpdir);
+    error_log($result);
     return array('error' => $result);
+  }
 
   return array('tmpdir' => substr($tmpdir,strlen($_SESSION['sys']['basedir'])));
 }