3 define('MODULE', 'metro');
4 define('TEMPLATE', 'ordersatz.tex');
5 define('FNAME_VARS', 'ordersatz_vars.tex');
6 define('FNAME_ITEMS', 'ordersatz_items.tex');
7 define('FAXNUMBER','2002-364');
11 $tmpdir = sprintf("%sarchive/%s/%s",
12 $_SESSION['sys']['basedir'],
21 function rm_tempdir($dir)
23 system(sprintf("rm -rf %s", $dir));
26 function latex_encode($text)
28 return str_replace(array("\\",'%'),
33 function ordersatz_write($id, $dir, $send)
37 $fname = sprintf("%smasks/%s/%s",
38 $_SESSION['sys']['basedir'],
42 if (!file_exists($fname))
43 return "Vorlage nicht gefunden";
45 copy($fname, $dir . '/ordersatz.tex');
48 $sql = sprintf("SELECT name,koch,email,telefon,datum,uhrzeit FROM metro_ordersatz WHERE id = %d",
50 $satz = query_db($sql);
52 $f = fopen(FNAME_VARS, 'w');
53 fwrite($f, sprintf('\newcommand{\koch}{%s}'."\n", latex_encode($satz[0]['koch'])));
54 fwrite($f, sprintf('\newcommand{\reise}{%s}'."\n", latex_encode($satz[0]['name'])));
55 fwrite($f, sprintf('\newcommand{\telefon}{%s}'."\n", latex_encode($satz[0]['telefon'])));
56 fwrite($f, sprintf('\newcommand{\uhrzeit}{%s}'."\n", latex_encode($satz[0]['uhrzeit'])));
58 $d = explode('-', $satz[0]['datum']);
59 fwrite($f, sprintf('\newcommand{\datum}{%d.%d.%d}'."\n", $d[2], $d[1], $d[0]));
62 $sql = sprintf("SELECT artnr,gang,metro_vpe.short AS vpname,menge,bezeichnung,hersteller,anzahl " .
63 "FROM metro_ordersatz_pos " .
64 "JOIN metro_artikel ON artikel = metro_artikel.id " .
65 "JOIN metro_abteilung ON abteilung = metro_abteilung.id " .
66 "JOIN metro_vpe ON vpe = metro_vpe.id " .
67 "WHERE ordersatz = %d AND anzahl IS NOT NULL " .
68 "ORDER BY gang,metro_abteilung.name",
72 $result = query_db($sql);
74 $f = fopen(FNAME_ITEMS, 'w');
76 foreach ($result as $row) {
77 $bez = $row['bezeichnung'];
78 if (strlen($row['hersteller']))
79 $bez .= ' (' . $row['hersteller'] . ')';
81 fwrite($f, sprintf('\order{%d}{%d}{%s %s}{%s}'."\n",
86 latex_encode($row['vpname'])));
91 system("latex ordersatz > ordersatz.out 2>&1 && dvips ordersatz >> ordersatz.out 2>&1 && ps2pdf ordersatz.ps", $ret);
94 return "Probleme beim Compilieren des Ordersatzes";
96 if (!file_exists('ordersatz.ps'))
97 return "Postscript-Datei nicht erstellt";
100 $cmd = sprintf("faxspool -f joey@finlandia.infodrom.org %s %s > /dev/null 2>&1",
106 # $fname = store_file($field, $info);
109 $message = sprintf("Hallo %s!\n\nDer angehänge Ordersatz wurde gerade an Metro Oldenburg verschickt.\n\n",
112 mail_attach($satz[0]['email'],
113 'Ordersatz ' . $satz[0]['name'],
115 'Infodrom ' . $satz[0]['koch'],
116 array($dir . '/ordersatz.pdf'),