/[health_html]/inc/newsEdit.php
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Annotation of /inc/newsEdit.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.13 - (hide annotations)
Wed Oct 10 12:40:58 2001 UTC (17 years, 7 months ago) by ravilov
Branch: MAIN
Changes since 1.12: +0 -1 lines
Improved Arhiva, Alergijski semafor and Home. Added a second Q&A page (test version). Other improvements & bugfixes.

1 ravilov 1.1 <?php
2 ravilov 1.7 set_magic_quotes_runtime(false);
3 ravilov 1.1 # ---KLUDGE-BEGIN---
4     function ss(&$i, $k) {
5     if (is_array($i)) array_walk($i, "ss");
6     if (!is_string($i)) return;
7     $i = stripslashes($i);
8     if ($k) { global $$k; $$k = stripslashes($$k); }
9     }
10     $ss = array("HTTP_GET_VARS", "HTTP_POST_VARS", "HTTP_POST_FILES");
11     while (list($key, $val) = each($ss)) array_walk($$val, "ss");
12     # ---KLUDGE-END---
13 ravilov 1.5 $phptmp = "^php";
14 ravilov 1.1 function sql($sql) {
15 ravilov 1.7 #echo "<TT><B>[SQL]</B> $sql<BR>\n";
16 ravilov 1.1 }
17 ravilov 1.7 function my_cmp($a, $b) { return MyCompare($a["txt"], $b["txt"]); }
18     function newsEdit($art, $trigger = "", $isVijest = false) {
19 ravilov 1.9 global $phptmp, $picdir, $syspicdir, $aupicdir, $sysaupicdir, $dbh, $tpl;
20     global $section, $section_menu, $section_menu2, $spec;
21 ravilov 1.7 global $ed_id, $ed_cat, $isMed;
22 ravilov 1.1 $i = 1;
23     global $ed_delete_main, $ed_del_main;
24     $delete_main = $ed_delete_main;
25     $del_main = $ed_del_main;
26     global $ed_clear_main, $ed_clr_main;
27 ravilov 1.7 global $ed_clear_author, $ed_clr_author;
28 ravilov 1.1 $clear_main = $ed_clear_main;
29     $clr_main = $ed_clr_main;
30 ravilov 1.7 $clear_author = $ed_clear_author;
31     $clr_author = $ed_clr_author;
32 ravilov 1.1 global $ed_titlepic_url, $ed_titlepic_url2, $ed_titlepic_name;
33     $titlepic_url = $ed_titlepic_url;
34     $titlepic_url2 = $ed_titlepic_url2;
35 ravilov 1.7 $titlepic_name = urldecode($ed_titlepic_name);
36     # Fix for M$IE
37 ravilov 1.1 if ($titlepic_url == "none") $titlepic_url = "";
38 ravilov 1.7 global $ed_author_url, $ed_author_url2, $ed_author_name;
39     $author_url = $ed_author_url;
40     $author_url2 = $ed_author_url2;
41     $author_name = urldecode($ed_author_name);
42     # Fix for M$IE
43     if ($author_url == "none") $author_url = "";
44 ravilov 1.1 while (true) {
45     global ${"ed_text_id_".$i};
46     if (!isset(${"ed_text_id_".$i})) break;
47     global ${"ed_delete_".$i}, ${"ed_del_".$i};
48     ${"delete_".$i} = ${"ed_delete_".$i};
49     ${"del_".$i} = ${"ed_del_".$i};
50     global ${"ed_clear_".$i}, ${"ed_clr_".$i};
51     ${"clear_".$i} = ${"ed_clear_".$i};
52     ${"clr_".$i} = ${"ed_clr_".$i};
53 ravilov 1.7 global ${"ed_textpic_url_".$i}, ${"ed_textpic_url2_".$i}, ${"ed_textpic_name_".$i};
54 ravilov 1.1 ${"textpic_url_".$i} = ${"ed_textpic_url_".$i};
55     ${"textpic_url2_".$i} = ${"ed_textpic_url2_".$i};
56 ravilov 1.7 ${"textpic_name_".$i} = urldecode(${"ed_textpic_name_".$i});
57     # Fix for M$IE
58 ravilov 1.1 if (${"textpic_url_".$i} == "none") ${"textpic_url_".$i} = "";
59     $i++;
60     }
61 ravilov 1.7 // -----
62     $categories = array();
63     $sql = "SELECT cat_id, text FROM news_categories ORDER BY text";
64     sql($sql);
65     $sth = $dbh->prepare($sql);
66     if (!$sth) error("Cannot prepare query: \"$sql\"");
67     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
68     while ($row = $sth->fetchrow_array()) array_push($categories,
69     array("id" => $row[0], "txt" => $row[1]));
70     $sth->finish();
71     usort($categories, "my_cmp");
72     // -----
73     $specs = array();
74 ravilov 1.8 $sql = "SELECT spec_id, opis FROM specijalizacije WHERE (spec_id != 0) AND (NOT link)";
75 ravilov 1.7 sql($sql);
76     $sth = $dbh->prepare($sql);
77     if (!$sth) error("Cannot prepare query: \"$sql\"");
78     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
79     while ($row = $sth->fetchrow_array()) array_push($specs, array("id" => $row[0], "txt" => $row[1]));
80     $sth->finish();
81     usort($specs, "my_cmp");
82     // -----
83 ravilov 1.8 $levels = array();
84     $sql = "SELECT level_id, class, name FROM par_levels ORDER BY name";
85     sql($sql);
86     $sth = $dbh->prepare($sql);
87     if (!$sth) error("Cannot prepare query: \"$sql\"");
88     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
89     while ($row = $sth->fetchrow_array()) array_push($levels, array("id" => $row[0], "class" => $row[1], "name" => $row[2]));
90     $sth->finish();
91     // -----
92 ravilov 1.1 global $cancel, $save;
93     if ($cancel || $save) {
94     if ($save) {
95     // Move temp pics & save article.
96 ravilov 1.8 if (ereg("$phptmp", $titlepic_url2) && $ed_id > 0 && file_exists("$syspicdir/$titlepic_url2")) {
97 ravilov 1.1 $sql = "SELECT title_pic FROM news WHERE (news_id = $ed_id)";
98     sql($sql);
99     $sth = $dbh->prepare($sql);
100     if (!$sth) error("Cannot prepare query: \"$sql\"");
101     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
102     $row = $sth->fetchrow_array();
103     $sth->finish();
104     $row = array_shift($row);
105     if ($row) MyDelete($syspicdir."/".$row);
106     }
107 ravilov 1.8 if (ereg("$phptmp", $author_url2) && $ed_id > 0 && file_exists("$sysaupicdir/$author_url2")) {
108 ravilov 1.7 $sql = "SELECT author_pic FROM news WHERE (news_id = $ed_id)";
109     sql($sql);
110     $sth = $dbh->prepare($sql);
111     if (!$sth) error("Cannot prepare query: \"$sql\"");
112     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
113     $row = $sth->fetchrow_array();
114     $sth->finish();
115     $row = array_shift($row);
116     if ($row) MyDelete($sysaupicdir."/".$row);
117     }
118 ravilov 1.1 global $ed_title, $ed_lead, $ed_titlepic_alt,
119 ravilov 1.6 $ed_titlepic_pos, $ed_more, $ed_more_title,
120 ravilov 1.11 $ed_cat, $ed_author_alt, $ed_author_info,
121 ravilov 1.12 $ed_author_ime, $ed_prikazi;
122 ravilov 1.1 $ed_title = MyQuote($ed_title);
123     $ed_lead = MyQuote($ed_lead);
124 ravilov 1.7 $ed_author_nm = urldecode(MyQuote(basename($author_name)));
125     $ed_author_alt = MyQuote($ed_author_alt);
126 ravilov 1.11 $ed_author_ime = MyQuote($ed_author_ime);
127 ravilov 1.7 $ed_author_info = MyQuote($ed_author_info);
128     $ed_titlepic_nm = urldecode(MyQuote(basename($titlepic_name)));
129 ravilov 1.1 $ed_titlepic_alt = MyQuote($ed_titlepic_alt);
130     $ed_more = MyQuote($ed_more);
131 ravilov 1.6 $ed_more_title = MyQuote($ed_more_title);
132 ravilov 1.1 if (!$ed_titlepic_pos) $ed_titlepic_pos = 0;
133     if ($ed_id > 0) {
134 ravilov 1.12 $sql = "UPDATE news SET category = '$ed_cat', title = $ed_title, lead = $ed_lead, title_pic = $ed_titlepic_nm, title_alt = $ed_titlepic_alt, title_pos = $ed_titlepic_pos, author_pic = $ed_author_nm, author_alt = $ed_author_alt, author_info = $ed_author_info, author_name = $ed_author_ime, url = $ed_more, url_title = $ed_more_title, plivamed = ".($isMed?"true":"false").", prikazi = ".($ed_prikazi?"true":"false").", ord = 0, d_change = NOW() WHERE (news_id = $ed_id)";
135 ravilov 1.1 sql($sql);
136     $dbh->dbh_do($sql);
137     } else {
138 ravilov 1.12 $sql = "INSERT INTO news (category, title, lead, title_pic, title_alt, title_pos, author_pic, author_alt, author_info, author_name, url, url_title, plivamed, prikazi, d_orig, d_change) VALUES ('$ed_cat', $ed_title, $ed_lead, $ed_titlepic_nm, $ed_titlepic_alt, $ed_titlepic_pos, $ed_author_nm, $ed_author_alt, $ed_author_info, $ed_author_ime, $ed_more, $ed_more_title, ".($isMed?"true":"false").", ".($ed_prikazi?"true":"false").", NOW(), NOW())";
139 ravilov 1.1 sql($sql);
140     $dbh->dbh_do($sql);
141 ravilov 1.10 $sql = "SELECT currval('news_news_id_seq')::text";
142 ravilov 1.1 sql($sql);
143     $sth = $dbh->prepare($sql);
144     if (!$sth) error("Cannot prepare query: \"$sql\"");
145     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
146     $rows = array();
147     while ($row = $sth->fetchrow_array()) array_push($rows, $row);
148     $sth->finish();
149     $row = array_pop($rows);
150     if (is_array($row)) $row = array_shift($row);
151     if ($row) $ed_id = $row;
152     }
153 ravilov 1.7 if ($titlepic_url2) MyMove("$syspicdir/$titlepic_url2", urldecode("$syspicdir/$titlepic_name"));
154     if ($author_url2) MyMove("$sysaupicdir/$author_url2", urldecode("$sysaupicdir/$author_name"));
155 ravilov 1.1 $i = 1;
156 ravilov 1.8 $parents = array();
157     $last_level = 0;
158     $last_id = 0;
159 ravilov 1.1 while ($ed_id > 0 && isset(${"ed_text_id_".$i})) {
160     global ${"ed_text_title_".$i}, ${"ed_text_".$i},
161     ${"ed_textpic_alt_".$i}, ${"ed_textpic_pos_".$i},
162 ravilov 1.8 ${"ed_text_level_".$i}, ${"ed_hl_".$i},
163     ${"ed_textpic_exp_".$i};
164     list($id, $tit, $txt, $pic, $orig, $alt, $pos, $del, $lev, $hl, $exp) = array(
165 ravilov 1.1 ${"ed_text_id_".$i}, ${"ed_text_title_".$i},
166     ${"ed_text_".$i}, ${"textpic_url2_".$i}, ${"textpic_name_".$i},
167     ${"ed_textpic_alt_".$i}, ${"ed_textpic_pos_".$i},
168 ravilov 1.8 ${"del_".$i}, ${"ed_text_level_".$i}, ${"ed_hl_".$i},
169     ${"ed_textpic_exp_".$i});
170     if ($lev != $last_level) {
171     if ($last_level) {
172     if ($last_level < $lev) array_push($parents, $id);
173     if ($last_level > $lev && count($parents) > 0) array_pop($parents);
174     }
175     $last_level = $lev;
176     $parent = $parents[0];
177     if ($parent < 0) $parent = $last_id;
178     }
179 ravilov 1.1 $tit = MyQuote($tit);
180     $txt = MyQuote($txt);
181 ravilov 1.8 $exp = MyQuote($exp);
182 ravilov 1.7 $hl = MyQuote($hl);
183 ravilov 1.1 $orig = basename($orig);
184     $org = MyQuote($orig);
185     $alt = MyQuote($alt);
186     if (!$pos) $pos = 0;
187     if ($id && $id > 0) {
188     if ($del || !$orig) {
189     $sql = "SELECT pic FROM paragraphs WHERE (news_id = $ed_id) AND (paragraph_id = $id)";
190     sql($sql);
191     $sth = $dbh->prepare($sql);
192     if (!$sth) error("Cannot prepare query: \"$sql\"");
193     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
194     while ($row = $sth->fetchrow_array()) {
195     list($pic) = $row;
196     MyDelete($syspicdir."/".$pic);
197     }
198     $sth->finish();
199     }
200     if ($del) $sql = "DELETE FROM paragraphs WHERE (news_id = $ed_id) AND (paragraph_id = $id)";
201 ravilov 1.8 else $sql = "UPDATE paragraphs SET title = $tit, level = $lev, text = $txt, hl = $hl, pic = $org, alt = $alt, pos = $pos, pic_title = $exp WHERE (news_id = $ed_id) AND (paragraph_id = $id)";
202 ravilov 1.1 sql($sql);
203     $dbh->dbh_do($sql);
204     } else if (!$del) {
205 ravilov 1.8 $sql = "INSERT INTO paragraphs (news_id, title, level, text, pic, alt, pos, hl, pic_title) VALUES ($ed_id, $tit, $lev, $txt, $org, $alt, $pos, $hl, $exp)";
206 ravilov 1.1 sql($sql);
207     $dbh->dbh_do($sql);
208 ravilov 1.8 $sql = "SELECT currval('paragraphs_paragraph_id_seq')::text";
209 ravilov 1.1 sql($sql);
210     $sth = $dbh->prepare($sql);
211     if (!$sth) error("Cannot prepare query: \"$sql\"");
212     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
213 ravilov 1.8 $row = $sth->fetchrow_array();
214 ravilov 1.1 $sth->finish();
215 ravilov 1.8 $row = array_shift($row);
216     $last_id = $id = $row;
217 ravilov 1.1 }
218     if ($pic) MyMove("$syspicdir/$pic", "$syspicdir/$orig");
219     $i++;
220     }
221 ravilov 1.7 if ($ed_id) {
222     $sql = "DELETE FROM spec_news WHERE (news_id = $ed_id)";
223     sql($sql);
224     $dbh->dbh_do($sql);
225     for ($k = 0; $k < count($specs); $k++) {
226     $var = "ed_spec_".$specs[$k]["id"]; global $$var;
227     if (!$$var) continue;
228     $sql = "INSERT INTO spec_news (news_id, spec_id) VALUES ($ed_id, ".$specs[$k]["id"].")";
229     sql($sql);
230     $dbh->dbh_do($sql);
231     }
232     $sql = "DELETE FROM cat_news WHERE (news_id = $ed_id)";
233     sql($sql);
234     $dbh->dbh_do($sql);
235     for ($k = 0; $k < count($categories); $k++) {
236     $var = "ed_cat_".$categories[$k]["id"];
237     global $$var;
238 ravilov 1.8 if ($categories[$k]["id"] != $ed_cat && !$$var) continue;
239 ravilov 1.7 $sql = "INSERT INTO cat_news (news_id, cat_id) VALUES ($ed_id, '".$categories[$k]["id"]."')";
240     sql($sql);
241     $dbh->dbh_do($sql);
242     }
243     }
244 ravilov 1.1 } else {
245     // Delete temp pics.
246 ravilov 1.7 if (ereg("$phptmp", $titlepic_url2)) MyDelete($syspicdir."/".$titlepic_url2);
247     if (ereg("$phptmp", $author_url2)) MyDelete($sysaupicdir."/".$author_url2);
248 ravilov 1.1 $i = 1;
249     while (isset(${"ed_textpic_id_".$i})) {
250     $tmp = ${"textpic_url2_".$i};
251 ravilov 1.5 if (ereg("$phptmp", $tmp)) MyDelete($syspicdir."/".$tmp);
252 ravilov 1.1 $i++;
253     }
254     }
255 ravilov 1.2 if (!isset($art["limit"])) $art["limit"] = 1;
256     if (!isset($art["npar"])) $art["npar"] = 1;
257 ravilov 1.1 return array_shift(newsLoad($ed_id, $ed_cat,
258 ravilov 1.4 $art["limit"], $art["offset"], $art["npar"]));
259 ravilov 1.1 }
260     // Handle temp pic upload.
261     global $HTTP_POST_FILES;
262     while (list($key, $val) = each($HTTP_POST_FILES)) {
263     list($name, $type, $tname, $size) = array(
264     $val["name"], $val["type"],
265     $val["tmp_name"], $val["size"]);
266     if ($size <= 0) continue;
267     if (!$name) continue;
268     if ($tname == "none") continue;
269 ravilov 1.8 $name = strtr($name, "¹šðè澞©ŠÐÈÆ®Ž ", "ssdcczzSSDCCZZ_");
270 ravilov 1.1 $nm = basename($tname);
271     $ext = ereg_replace('^.*(\..+)$', '\1', $name);
272     if ($key == "ed_titlepic_url") {
273 ravilov 1.7 move_uploaded_file($tname, $syspicdir."/".$nm.$ext);
274 ravilov 1.1 $titlepic_url = $nm.$ext;
275     $titlepic_name = $name;
276     $u = $titlepic_url2;
277 ravilov 1.5 if (ereg("$phptmp", $u)) MyDelete($syspicdir."/".$u);
278 ravilov 1.1 unset($clear_main, $clr_main);
279 ravilov 1.7 } else if ($key == "ed_author_url") {
280     move_uploaded_file($tname, $sysaupicdir."/".$nm.$ext);
281     $author_url = $nm.$ext;
282     $author_name = $name;
283     $u = $author_url2;
284     if (ereg("$phptmp", $u)) MyDelete($sysaupicdir."/".$u);
285     unset($clear_author, $clr_author);
286 ravilov 1.1 } else if (ereg("^ed_textpic_url_([1-9][0-9]*)$", $key, $regs)) {
287 ravilov 1.7 move_uploaded_file($tname, $syspicdir."/".$nm.$ext);
288 ravilov 1.1 $n = $regs[1];
289     ${"textpic_url_".$n} = $nm.$ext;
290     ${"textpic_name_".$n} = $name;
291     $u = ${"textpic_url2_".$n};
292 ravilov 1.5 if (ereg("$phptmp", $u)) MyDelete($syspicdir."/".$u2);
293 ravilov 1.1 unset(${"clear_".$n}, ${"clr_".$n});
294     } else {
295     // [?!?]
296     }
297     }
298     // -----
299     $tp = new Smarty();
300     $tp->assign("levels", $levels);
301     // -----
302     global $ed_id, $ed_title, $ed_lead, $ed_titlepic_pos,
303 ravilov 1.6 $ed_titlepic_alt, $ed_cat, $ed_more,
304 ravilov 1.7 $ed_more_title, $ed_author_url, $ed_author_alt,
305 ravilov 1.12 $ed_author_info, $ed_author_ime, $ed_prikazi;
306 ravilov 1.1 global $ed_edit, $ed_preview, $preview, $add;
307     if (!$ed_preview) $ed_preview = ($preview ? true : false);
308     if ($ed_edit) $ed_preview = false;
309     global $HTTP_POST_VARS, $HTTP_GET_VARS;
310     $delete = count(preg_grep('/^ed_delete_[0-9]+$/',
311     array_keys(array_merge($HTTP_GET_VARS,
312     $HTTP_POST_VARS)))) > 0;
313 ravilov 1.7 global $ed_clear_author;
314     $clear = (count(preg_grep('/^ed_clear_(main|author|[0-9]+)$/',
315 ravilov 1.1 array_keys(array_merge($HTTP_GET_VARS,
316     $HTTP_POST_VARS)))) > 0);
317     $ed_pgfs = array();
318 ravilov 1.2 $ed_warning = 0;
319 ravilov 1.7 $nspecs = array();
320     $ncats = array();
321     // Transfer data
322 ravilov 1.1 if ($ed_edit || $ed_preview || $add || $delete || $clear) {
323 ravilov 1.7 for ($i = 0; $i < count($specs); $i++) {
324     $var = "ed_spec_".$specs[$i]["id"];
325     global $$var;
326     $nspecs[$specs[$i]["id"]] = $$var ? true : false;
327     }
328     for ($i = 0; $i < count($categories); $i++) {
329     $var = "ed_cat_".$categories[$i]["id"];
330     global $$var;
331     $ncats[$categories[$i]["id"]] = $$var ? true : false;
332     }
333 ravilov 1.1 global $ed_title, $ed_lead, $ed_titlepic_pos,
334 ravilov 1.6 $ed_titlepic_alt, $ed_cat, $ed_more,
335 ravilov 1.7 $ed_more_title, $ed_author_url,
336 ravilov 1.11 $ed_author_alt, $ed_author_info,
337 ravilov 1.12 $ed_author_ime, $ed_prikazi;
338 ravilov 1.1 if (!$HTTP_POST_FILES["ed_titlepic_url"]["name"]) $titlepic_url = "";
339     if (!$titlepic_url) $titlepic_url = $titlepic_url2;
340 ravilov 1.7 if (!$titlepic_url && !($clear_main || $clr_main)) $titlepic_url = $art["pic_url"];
341     if (!$author_url && !($clear_author || $clr_author)) $author_url = $art["au_pic"];
342 ravilov 1.1 list($width, $height) = PicSize($titlepic_url);
343 ravilov 1.7 list($width2, $height2) = PicSize($author_url, $sysaupicdir);
344 ravilov 1.2 global $ed_title_force;
345     if ($titlepic_url && !$ed_titlepic_pos && !$ed_title_force) $ed_warning = 2;
346 ravilov 1.1 $i = 1;
347     while (isset(${"ed_text_id_".$i})) {
348     $id = ${"ed_text_id_".$i};
349     global ${"ed_text_".$i}, ${"ed_text_title_".$i},
350     ${"ed_text_level_".$i}, ${"ed_textpic_alt_".$i},
351 ravilov 1.8 ${"ed_textpic_pos_".$i}, ${"ed_hl_".$i},
352     ${"ed_textpic_exp_".$i};
353 ravilov 1.1 $pic_url = ($HTTP_POST_FILES["ed_textpic_url_".$i]["name"]) ?
354     ${"textpic_url_".$i} : "";
355     if (!$pic_url) $pic_url = ${"textpic_url2_".$i};
356     $tmp = "";
357     for ($j = 0; $j < count($art["text"]); $j++)
358     if ($art["text"][$j]["id"] == $id) $tmp = $art["text"][$j]["pic"];
359     if (!$pic_url && $tmp && !(${"clear_".$i} || ${"clr_".$i})) $pic_url = $tmp;
360     $level = ${"ed_text_level_".$i};
361 ravilov 1.8 list($w, $h) = PicSize($pic_url);
362 ravilov 1.1 array_push($ed_pgfs, array($id,
363     ${"ed_text_".$i}, ${"ed_text_title_".$i},
364 ravilov 1.8 $level, $pic_url, ${"textpic_name_".$i},
365 ravilov 1.1 ${"ed_textpic_alt_".$i}, ${"ed_textpic_pos_".$i},
366 ravilov 1.8 $w, $h, ${"ed_hl_".$i}, ${"ed_textpic_exp_".$i}, false));
367 ravilov 1.1 $i++;
368     }
369     } else {
370 ravilov 1.7 if ($ed_id) {
371     $sql = "SELECT spec_id FROM spec_news WHERE (news_id = $ed_id)";
372     sql($sql);
373     $sth = $dbh->prepare($sql);
374     if (!$sth) error("Cannot prepare query: \"$sql\"");
375     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
376     while ($row = $sth->fetchrow_array()) $nspecs[$row[0]] = true;
377     $sth->finish();
378     $sql = "SELECT cat_id FROM cat_news WHERE (news_id = $ed_id)";
379     sql($sql);
380     $sth = $dbh->prepare($sql);
381     if (!$sth) error("Cannot prepare query: \"$sql\"");
382     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
383     while ($row = $sth->fetchrow_array()) $ncats[$row[0]] = true;
384     $sth->finish();
385 ravilov 1.12 } else $art["show"] = true;
386 ravilov 1.1 list($ed_title, $ed_lead, $ed_titlepic_pos, $titlepic_url,
387     $titlepic_url2, $titlepic_name, $ed_titlepic_alt,
388 ravilov 1.7 $ed_cat, $ed_more, $ed_more_title, $width, $height,
389     $author_url, $author_url2, $author_name,
390 ravilov 1.11 $ed_author_alt, $ed_author_info, $width2, $height2,
391 ravilov 1.12 $ed_author_ime, $ed_prikazi) = array($art["title"], $art["lead"],
392     $art["pic_pos"], $art["pic_url"], $art["pic_url"],
393     urldecode($art["pic_url"]), $art["pic_alt"], $art["category"],
394     $art["more"], $art["more_title"], $art["pic_w"], $art["pic_h"],
395 ravilov 1.7 $art["au_pic"], $art["au_pic"], urldecode($art["au_pic"]),
396 ravilov 1.11 $art["au_alt"], $art["au_info"], $art["au_w"], $art["au_h"],
397 ravilov 1.12 $art["au_name"], $art["show"]);
398     if ($art["text"]) reset($art["text"]);
399 ravilov 1.1 while ($art["text"] && list($id, $val) = each($art["text"])) {
400 ravilov 1.7 array_push($ed_pgfs, array($val["id"], $val["text"], $val["title"],
401 ravilov 1.8 $val["level"], urldecode($val["pic"]),
402 ravilov 1.7 urldecode($val["pic"]), $val["alt"], $val["pos"], $val["w"],
403 ravilov 1.8 $val["h"], $val["hl"], $val["exp"], false));
404 ravilov 1.1 }
405     $ed_id = $art["id"];
406     if (!$ed_id) $ed_id = -1;
407     }
408 ravilov 1.7 $ncats[$ed_cat] = true;
409     for ($i = 0; $i < count($specs); $i++) $specs[$i]["check"] = $nspecs[$specs[$i]["id"]];
410     for ($i = 0; $i < count($categories); $i++) $categories[$i]["check"] = $ncats[$categories[$i]["id"]];
411     $tp->assign("specs", $specs);
412     $tp->assign("categories", $categories);
413     if ($ed_more && !strstr($ed_more, "://")) {
414     $pos = strpos($ed_more, "?");
415     if ($pos === false || $pos != 0) $ed_more = "http://".$ed_more;
416     }
417 ravilov 1.1 if ($add) {
418     global $add_num;
419     for ($i = 0; $i < intval($add_num); $i++)
420 ravilov 1.8 array_push($ed_pgfs, array(-1, "", "", -1, "", "", "", 0, 0, 0, "", "", true));
421 ravilov 1.1 }
422 ravilov 1.3 $ed_empty = ($ed_title || $ed_lead || $ed_titlepic_pos || $ed_more) ? false : true;
423 ravilov 1.1 $ed_text = array();
424     $ed_records = array();
425 ravilov 1.2 $ed_warnings = ($ed_warning ? true : false);
426 ravilov 1.1 $i = 1;
427     while (list($key, $val) = each($ed_pgfs)) {
428 ravilov 1.8 list($id, $txt, $tit, $lev, $pic, $name, $alt, $pos, $w, $h, $hl, $exp, $new) = $val;
429 ravilov 1.1 $del = ((${"delete_".$i} || ${"del_".$i}) ? true : false);
430     array_push($ed_records, array("val" => $del, "id" => $id));
431     if ($del) { $i++; continue; }
432     $picurl = ${"textpic_url_".$id};
433     if (!$picurl) $picurl = $pic;
434     $class = "";
435 ravilov 1.8 reset($levels);
436     while (list($k, $v) = each($levels)) if ($v["id"] == $lev) $class = $v["class"];
437 ravilov 1.1 if ((${"clear_".$i} || ${"clr_".$i}) && $ed_preview && (${"textpic_name_".$i} != ${"textpic_url2_".$i})) {
438     $tmp = ${"textpic_url2_".$i};
439 ravilov 1.5 if (ereg("$phptmp", $tmp)) MyDelete($syspicdir."/".$tmp);
440 ravilov 1.1 $picurl = ${"textpic_url_".$i} = ${"textpic_url2_".$i} = $name = "";
441     }
442     if (!$name) $name = $picurl;
443 ravilov 1.7 $txt = MyEscape(convert_html($txt), false);
444 ravilov 1.5 $txt2 = ParseNewline($txt, true);
445 ravilov 1.7 $txt3 = str_replace("&", "&amp;", $txt);
446     $txt3 = str_replace("\"", "&quot;", $txt3);
447     $txt3 = str_replace("<", "&lt;", $txt3);
448     $txt3 = str_replace(">", "&gt;", $txt3);
449     $hl = MyEscape(convert_html($hl), false);
450     $hl2 = ParseNewline($hl, true);
451 ravilov 1.8 if ($hl2) $hl2 = GetHighlight($hl2);
452 ravilov 1.7 $hl3 = str_replace("&", "&amp;", $hl);
453     $hl3 = str_replace("\"", "&quot;", $hl3);
454     $hl3 = str_replace("<", "&lt;", $hl3);
455     $hl3 = str_replace(">", "&gt;", $hl3);
456 ravilov 1.2 global ${"ed_text_force_".$i};
457     $force = ${"ed_text_force_".$i};
458 ravilov 1.1 $empty = (($ed_preview && !$txt && !$pos && !$new) ? true : false);
459 ravilov 1.2 $warning = 0;
460     if ($empty && !$force) $warning = 1;
461     if ($picurl && !$pos && !$force) $warning = 2;
462 ravilov 1.1 $ed_empty = $ed_empty && $empty;
463 ravilov 1.2 $ed_warnings = $ed_warnings || ($warning && !$force);
464 ravilov 1.1 array_push($ed_text, array(
465     "id" => $id,
466     "n" => $i,
467     "txt" => $txt2,
468     "txt2" => $txt,
469 ravilov 1.7 "txt3" => $txt3,
470     "hl" => $hl2,
471     "hl2" => $hl,
472     "hl3" => $hl3,
473 ravilov 1.5 "title" => MyEscape(convert_html($tit)),
474 ravilov 1.1 "level" => $lev,
475 ravilov 1.5 "class" => MyEscape(convert_html($class)),
476     "url" => MyEscape(convert_html($picurl)),
477     "name" => MyEscape(convert_html($name)),
478     "alt" => MyEscape(convert_html($alt)),
479 ravilov 1.8 "w" => $w,
480     "h" => $h,
481 ravilov 1.1 "pos" => $pos,
482 ravilov 1.8 "exp" => MyEscape(convert_html($exp)),
483 ravilov 1.2 "warning" => $warning,
484 ravilov 1.1 "clr" => (${"clear_".$i} || ${"clr_".$i} || !$picurl) ? true : false
485     ));
486     $i++;
487     }
488 ravilov 1.2 if ($ed_warnings) $ed_preview = false;
489 ravilov 1.1 $tp->assign("ed_id", $ed_id);
490     $tp->assign("ed_cat", $ed_cat);
491     $tp->assign("ed_preview", $ed_preview);
492     $tp->assign("ed_trigger", $trigger);
493 ravilov 1.5 $tp->assign("ed_title", MyEscape(convert_html($ed_title)));
494     $tp->assign("ed_lead", MyEscape(convert_html($ed_lead)));
495 ravilov 1.1 $tp->assign("ed_titlepic_pos", $ed_titlepic_pos);
496 ravilov 1.5 $tp->assign("ed_titlepic_url", MyEscape(convert_html($titlepic_url)));
497     $tp->assign("ed_titlepic_url2", MyEscape(convert_html($titlepic_url2)));
498     $tp->assign("ed_titlepic_name", MyEscape(convert_html($titlepic_name)));
499     $tp->assign("ed_titlepic_alt", MyEscape(convert_html($ed_titlepic_alt)));
500 ravilov 1.1 $tp->assign("ed_titlepic_width", $width);
501     $tp->assign("ed_titlepic_height", $height);
502 ravilov 1.7 $tp->assign("ed_author_url", MyEscape(convert_html($author_url)));
503     $tp->assign("ed_author_url2", MyEscape(convert_html($author_url2)));
504     $tp->assign("ed_author_name", MyEscape(convert_html($author_name)));
505     $tp->assign("ed_author_alt", MyEscape(convert_html($ed_author_alt)));
506     $tp->assign("ed_author_info", MyEscape(convert_html($ed_author_info)));
507 ravilov 1.11 $tp->assign("ed_author_ime", MyEscape(convert_html($ed_author_ime)));
508 ravilov 1.7 $tp->assign("ed_author_width", $width2);
509     $tp->assign("ed_author_height", $height2);
510 ravilov 1.1 $tp->assign("ed_more", MyEscape($ed_more));
511 ravilov 1.7 $tp->assign("ed_more_new", strstr($ed_more, "://") ? true : false);
512 ravilov 1.6 $tp->assign("ed_more_title", MyEscape($ed_more_title));
513 ravilov 1.12 $tp->assign("ed_prikazi", $ed_prikazi);
514 ravilov 1.1 $tp->assign("ed_clr_main", ($clear_main || $clr_main || !$titlepic_url) ? true : false);
515 ravilov 1.7 $tp->assign("ed_clr_author", ($clear_author || $clr_author || !$author_url) ? true : false);
516 ravilov 1.1 $tp->assign("ed_text", $ed_text);
517     $tp->assign("ed_empty", $ed_empty);
518 ravilov 1.2 $tp->assign("ed_warning", $ed_warning);
519     $tp->assign("ed_warnings", $ed_warnings);
520 ravilov 1.1 $tp->assign("ed_records", $ed_records);
521     $tp->assign("newspicdir", "$picdir/");
522 ravilov 1.7 $tp->assign("aupicdir", "$aupicdir/");
523     $tp->assign("vijest", $isVijest ? true : false);
524     if ($ed_preview) {
525     $tp->assign("AUTHOR", GetAuthor(MyEscape(convert_html($author_url)),
526     MyEscape(convert_html($ed_author_alt)),
527     MyEscape(convert_html($ed_author_info)),
528     $width2, $height2));
529     }
530     $tp->assign("med", $isMed ? true : false);
531 ravilov 1.1 $params = array();
532     if ($section) array_push($params, "section=$section");
533 ravilov 1.6 if ($section_menu) array_push($params, "section_menu=$section_menu");
534 ravilov 1.9 if ($section_menu2) array_push($params, "section_menu2=$section_menu2");
535     if ($spec) array_push($params, "spec=$spec");
536 ravilov 1.1 if ($ed_id) array_push($params, "ed_id=$ed_id");
537     if ($ed_preview) array_push($params, "ed_preview=$ed_preview");
538     if ($trigger) array_push($params, "$trigger=1");
539 ravilov 1.9 $tp->assign("FORM_ACTION", HTMLSpecialChars("?".implode("&", $params)));
540 ravilov 1.7 if (!$ed_preview) {
541     global $onload;
542 ravilov 1.8 $onload .= "document.forms[1].elements[0].focus();";
543 ravilov 1.7 }
544 ravilov 1.1 return $tp->fetch("edit.tpl");
545     }
546     ?>

  ViewVC Help
Powered by ViewVC 1.1.26