+EaP 4/2010 (164)
[www.energie.vellum.cz.git] / inzerat-submit.php
1 <?php $cvs_id='$Id$';
2
3         include("common.php");
4
5         $title_tail="Elektronické podání øádkové inzerce";
6         no_cache();
7         heading();
8
9 prepvar("text");
10 prepvar("name");
11 prepvar("adresa");
12 prepvar("doklad",".*",false/*require*/);
13 prepvar("ico");
14 prepvar("dic");
15 prepvar("pocet");
16 prepvar("mail");
17
18 prepvar("confirm",".*",false/*require*/);
19
20
21 $out=stamp_line();
22 $err=false;
23
24 if (""==($text=trim($text))) {
25         print("<h1 class=\"red\">Chybí jakýkoliv text inzerátu!</h1>\n");
26         $err=true;
27         }
28
29 if (!ereg("^[0-9]*\$",$pocet)) {
30         print("<h1 class=\"red\">Jako poèet zveøejnìní je povoleno zadat jen èíselnou hodnotu!</h1>\n");
31         $err=true;
32         $pocet=1;
33         }
34 if (""==$pocet) {
35         print("<h1 class=\"red\">Nutno zadat platný poèet opakování! (pro jediné uveøejnìní zadejte 1)</h1>\n");
36         $err=true;
37         $pocet=1;
38         }
39 if ($pocet<=0 || $pocet>120) {
40         print("<h1 class=\"red\">Takový poèet zveøejnìní není povolen!</h1>\n");
41         $err=true;
42         }
43
44 if (!($f=fopen("inzerat.js","r")))
45         fatal("Nepodaøilo se naèíst ceny inzerce");
46 $price_a=array();
47 while (($s=fgets($f,0x1000))) {
48         if (!($s=trim($s)))
49                 break;
50         if (!(ereg("^var price_([a-z]*) *=([0-9]*);$",$s,$matched)))
51                 continue;
52         $price_a[$matched[1]]=$matched[2];
53         }
54 fclose($f);
55
56 $total=(ceil((strlen($text)+3)/40)*$pocet-1)*$price_a["line"];
57 if ($total<=0) {
58         $total=0;
59         $total_pretty="zdarma";
60         // hack for common.php/format_fields_to_text()
61         unset($HTTP_POST_VARS["doklad"]);
62         }
63 else {
64         if (isset($doklad))
65                 $total+=$price_a["doklad"];
66         $total_pretty="$total Kè";
67         // hack for common.php/format_fields_to_text()
68         $HTTP_POST_VARS["doklad"]=isset($doklad);
69         }
70
71 if (""==$name) {
72         print("<h1 class=\"red\">Chybí zadání názvu firmy èi jména osoby!</h1>\n");
73         $err=true;
74         }
75
76 if (""==$adresa) {
77         print("<h1 class=\"red\">Chybí zadání úplné adresy!</h1>\n");
78         $err=true;
79         }
80
81 if ($total>0 && isset($doklad)) {
82         if (""==$ico) {
83                 print("<h1 class=\"red\">Po¾adujete zaslání daòového dokladu, ale chybí IÈO!</h1>\n");
84                 $err=true;
85                 }
86         if (""==$dic) {
87                 print("<h1 class=\"red\">Po¾adujete zaslání daòového dokladu, ale chybí DIÈ!</h1>\n");
88                 $err=true;
89                 }
90         }
91
92 if (""!=$mail && !ereg(".@..",$mail)) {
93         print("<h1 class=\"red\">Jakmile jste uvedli e-mailovou adresu, tak ale musí být v&nbsp;platném tvaru!</h1>\n");
94         $err=true;
95         }
96
97 $out.=format_fields_to_text();
98 $out.="Celkem:\t$total_pretty\n";
99
100 if ($err)
101         datacheck_fail();
102
103 if (!isset($confirm)) {
104         print("<p>");
105         if (!$total)
106                 print("Tento inzerát bude oti¹tìn zdarma.");
107         else
108                 print("Cena tohoto inzerátu je $total Kè.");
109         print(" Pokud chcete inzerát pozmìnit, mù¾ete se ".return_back("vrátit zpìt")
110                         ." na pøedchozí stránku a zadaná data upravit. Jinak prosím potvrïte"
111                         ." odeslání tlaèítkem <a href=\"#submit_button\">Ode¹li inzerát</a>.</p>\n");
112         print_form_radkova_inzerce(true/*readonly*/,$total_pretty,"confirm","Ode¹li inzerát");
113         footer();
114         }
115
116 // Successful data acquisition, write&send:
117
118 /*** Table initialization:
119         drop   table energie_inzerat;
120         create table energie_inzerat (varsym int not null auto_increment primary key,contents text null);
121         alter  table energie_inzerat add index (varsym);
122         insert into  energie_inzerat (varsym) values (20025000);
123  *** crontab(5) entry:
124         0 0 1 1 *       mysql -ushort -p`cat ~/priv/mysql.short.pwd ` -e 'insert into energie_inzerat (varsym) values (year(curdate())*10000+5000);' short
125 ***/
126
127 db_query("insert into $tb_inzerat (contents) values('".addslashes($out)."')");
128 if (!($varsym=mysql_insert_id()))
129         fatal("Nepodaøilo se zapsat objednávku do SQL");
130 if ($total)
131         $out="VarSym:\t$varsym\n".$out;
132
133 if (mail_data("inzerat",$out))
134         fatal("Chyba pøi odesílání inzerátu, data inzerátu ji¾ ale byla úspì¹nì ulo¾ena");
135
136 print("<h1>Inzerát byl úspì¹nì pøijat</h1>\n");
137 if ($total>0)
138         print("<p>Celkovou èástku $total_pretty uhraïte pøevodním pøíkazem\n"
139                         ." nebo po¹tovní poukázkou na úèet vydavatele u&nbsp;Èeské spoøitelny:</p>"
140                         .gsm_table($total,$varsym)
141                         ."<p>Po provedení platby bude Vá¹ inzerát v&nbsp;nejbli¾¹ím èísle zveøejnìn"
142                         .(!isset($doklad) ? "" : " a bude Vám také zaslán daòový doklad")
143                         .".</p>\n");
144 else
145         print("<p>Vá¹ inzerát bude v&nbsp;nejbli¾¹ím èísle zveøejnìn zdarma.</p>\n");
146
147 print(return_to_homepage());
148
149         footer();
150 ?>