/[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

Diff of /inc/newsEdit.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

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

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.26