Aktuelle Version / als naechstes brauche ich ein Kontroll-Frontend
[infodrom.org/infocon.infodrom.org] / src / shop / order.wml
1 #include <infocon.style>
2 #include <shop.inc>
3
4 <page title="InfoCon - Online-Shop">
5
6 <h1 align=center>Bestellung aufgeben</h1>
7
8 <form method=post action=orderit.php3>
9
10 <?
11   # Porto erst einmal auf 20,-- festgesetzt
12   $porto = 20.00;
13
14   # Colors
15 #  $ch = "#5dbbf9";
16 #  $cd = "#9bd4fa";
17 #  $ch = "#85c5f0";
18 #  $cd = "#abdcfc";
19   $ch = "<colh>";
20   $cd = "<cold>";
21   $cn = "<coln>";
22
23   $tind = "<tr bgcolor=\"$ch\"><th><font face=\"Helvetica,Arial\">Anzahl</font></th>"
24          ."<th align=\"left\"><font face=\"Helvetica,Arial\">Artikel</font></th>"
25          ."<th align=\"right\"><font face=\"Helvetica,Arial\">Einzel</font></th>"
26          ."<th align=\"right\"><font face=\"Helvetica,Arial\">Gesamt</font></th></tr>";
27
28   $dbh = dbconnect();
29
30   # WHERE spool > 0
31   $sth = dbquery ($dbh, "SELECT article.name,article.article,offer.subname,offer.price,offer.articleid,spool.count_spare "
32                        ."FROM article,offer,spool WHERE article.article = offer.article AND offer.articleid = spool.articleid "
33                        ."ORDER BY offer.articleid");
34
35   $sum = 0.0;
36   <btable_begin>
37
38   $color = $cd;
39   $maybe_split = 0;
40   for ($i=0; $i < pg_NumRows ($sth); $i++) {
41     $row = pg_fetch_array ($sth, $i);
42
43     if (${$row['articleid']} > 0) {
44       if (${$row['articleid']} > $row['count_spare']) {
45         $maybe_split = 1;
46       }
47       if ($sum == 0.0) {
48         echo ($tind);
49       }
50       $color = $color == $cd?$cn:$cd;
51       printf ("<tr bgcolor=\"%s\">", $color);
52       printf ("<td width=\"10%%\" align=\"right\"><font face=\"Helvetica,Arial\">"
53              ."<input type=\"hidden\" name=\"%s\" value=\"%d\">%d&nbsp;</font></td>",
54              $row['articleid'], ${$row['articleid']}, ${$row['articleid']});
55
56       printf ("<td width=\"70%%\" align=\"left\"><font face=\"Helvetica,Arial\">"
57              ."<a href=\"show.php3?article=%s\">%s, %s</a></font></td>",
58              $row['article'], $row['name'], $row['subname']);
59
60       printf ("<td width=\"10%%\" align=\"right\"><font face=\"Helvetica,Arial\">%6.2f</font></td>",
61              $row['price']);
62
63       printf ("<td width=\"10%%\" align=\"right\"><font face=\"Helvetica,Arial\">%6.2f</font></td></tr>",
64              $row['price'] * ${$row['articleid']});
65       $sum += $row['price'] * ${$row['articleid']};
66     }
67   }
68   if ($sum == 0.0) {
69     printf ("<tr bgcolor=\"%s\"><th colspan=\"4\" align=\"left\"><font face=\"Helvetica,Arial\">%s</font></th>",
70             $ch, "Sie haben vergessen, Waren auszuwählen");
71   } else {
72
73     $color = $color == $cd?$cn:$cd;
74     printf ("<tr bgcolor=\"%s\">", $color);
75     printf ("<td width=\"10%%\" align=\"right\"><font face=\"Helvetica,Arial\">1&nbsp;</font></td>");
76     printf ("<td width=\"70%%\" align=\"left\"><font face=\"Helvetica,Arial\">"
77            ."<a href=\"porto.html\">Porto und Verpackung</a></font></td>");
78     printf ("<td width=\"10%%\" align=\"right\"><font face=\"Helvetica,Arial\">%6.2f</font></td>",
79            $porto);
80     printf ("<td width=\"10%%\" align=\"right\"><font face=\"Helvetica,Arial\">%6.2f</font></td></tr>",
81            $porto);
82     $sum += $porto;
83
84     printf ("<tr bgcolor=\"%s\"><th colspan=\"3\" align=\"left\"><font face=\"Helvetica,Arial\">Summe</font></th>", $ch);
85     printf ("<th align=\"right\"><font face=\"Helvetica,Arial\">%7.2f</font></th></tr>", $sum);
86   }
87   <btable_end>
88 ?>
89
90 <?
91   if ($sum > 0.0) {
92
93   if ($maybe_split) {
94     echo ("<p><b>Nicht alle Artikel sind im Moment vorrrätig.</b><br>");
95     echo ("Sie haben die Möglichkeit, die Bestellung komplett zu erhalten, wenn die Ware vollständig ist oder "
96          ."sie aufzuteilen.  Dann erhalten Sie den ersten Teil sofort und den zweiten sobald die Ware da "
97          ."ist.  Achtung, bei zwei Bestellungen fällt auch zweimal Porto an.<p>");
98
99     echo ("<input name=\"split\" type=\"checkbox\" value=\"1\"> Bestellung aufteilen");
100   }
101 ?>
102 <p><b>Bitte geben Sie Ihre Kundennummer oder Ihre Anschrift an.</b>
103
104 <? <btable_begin> ?>
105 <tr>
106 <td align=right><font face="Helvetica,Arial"><b>Kundennr.</b></font></td>
107 <td width=5></td>
108 <td align=left><font face="Helvetica,Arial"><input name=customer size=20 maxlength=10></font></td>
109 <td align=right><font face="Helvetica,Arial"><b>Kennwort</b></font></td>
110 <td width=5></td>
111 <td align=left><font face="Helvetica,Arial"><input name=passwd type=password size=20 maxlength=10></font></td>
112 </tr>
113 <? <btable_end> ?>
114
115 <define-tag field>
116 <set-var %attributes>
117 <tr>
118 <td align=right width=15%><font face="Helvetica,Arial"><b><get-var n></b></font></td>
119 <td width=5></td>
120 <td align=left><font face="Helvetica,Arial"><input name=<get-var f> size=50 maxlength=<get-var s>> <get-var r></font></td>
121 </tr>
122 </define-tag>
123
124 <? <btable_begin> ?>
125 <field n=Firma   f=company   s=60 r=>
126 <field n=Name    f=lastname  s=60 r=*>
127 <field n=Vorname f=firstname s=60 r=*>
128 <field n=Zusatz  f=appendix  s=60 r=>
129 <field n=Straße  f=street    s=60 r=*>
130
131 <tr>
132 <td align=right width=15%><font face="Helvetica,Arial"><b>PLZ</b></font></td>
133 <td width=5></td>
134 <td align=left><font face="Helvetica,Arial"><input name=plz size=5 maxlength=5> *</font>
135 &nbsp;<font face="Helvetica,Arial"><b>Stadt</b></font>
136 &nbsp;<font face="Helvetica,Arial"><input name=city size=35 maxlength=60> *</font></td>
137 </tr>
138
139 <tr>
140 <td align=right width=15%><font face="Helvetica,Arial"><b>Land</b></font></td>
141 <td width=5></td>
142 <td align=left><font face="Helvetica,Arial">Deutschland<input type=hidden name=country value=Germany size=50 maxlength=60></font></td>
143 </tr>
144
145 <tr>
146 <td colspan=3 align=left width=100%><font face="Helvetica,Arial">
147 <p>Die mit einem Stern (*) markierten Eingabefelder sind erforderlich.</font></td>
148 </tr>
149 <? <btable_end> ?>
150
151
152 <p><center><input type=submit value="Bestellen"> . <input type=reset value="Reset"></center>
153 <? } ?>
154 </form><p>
155
156 </page>
157 # Local variables:
158 # mode: indented-text
159 # mode: auto-fill
160 # mode-: iso-accents
161 # end: