00001 <?php
00002
00003
00004
00005
00006
00007
00031
00032 require_once('config.php');
00033 require_once('../util.php');
00034 require_once('../text.php');
00035 require_once('../fields.php');
00036
00037 session_start();
00038
00039
00040
00041 $lang = (isset($_GET['lang'])) ? $_GET['lang'] : $lang_default;
00042
00043 if (!isset($text_multi[$lang]))
00044 $l = $lang_default;
00045
00046 $text = $text_multi[$lang];
00047 $buttons = $buttons_multi[$lang];
00048 $months = $months_multi[$lang];
00049
00050
00056
00057 $valid_params = array(
00058 "sort" => "/^(last_name|first_name|birthday|sex|entry_date)$/",
00059 "order"=> "/^(up|down)$/",
00060 "status" => "/^(new|old)$/",
00061 "button" => "/^(" . $buttons['delete_all'] . "|" . $buttons['ok'] . "|" .
00062 $buttons['cancel'] . "|)$/",
00063 "action"=> "/^(delete_all|)$/",
00064 "lang" => "/^(de|en)$/"
00065 );
00066
00068
00069 $default_params = array (
00070 'sort' => "last_name",
00071 'order' => "up",
00072 'status' => "new",
00073 'lang' => $lang_default
00074 );
00075
00076 foreach ($default_params as $k => $v) {
00077 if (!isset($_SESSION[$k]))
00078 $_SESSION[$k] = $v;
00079 }
00080
00081 foreach ($_GET as $k => $v) {
00082 if (param_ok($valid_params, $k, $v))
00083 $_SESSION[$k] = $v;
00084 }
00085
00086
00087
00088
00089 $default_sortkeys = array( 'last_name', 'first_name', 'birthday');
00090
00091
00092
00093 $sort = $_SESSION['sort'];
00094
00095 print_header( array("@notabene@" => "", "@bodyattr@" => "",
00096 "@url-de@" => "index.php?lang=de", "@url-en@" => "index.php?lang=en" ));
00097
00098 print '<table border=0>
00099 <tr>
00100 <td><strong>' . $text['status'] . ': </strong></td>
00101 <td>';
00102
00103 link_maybe($text['status_new'],
00104 "index.php?lang=$lang&status=new&sort=$sort&order=" . $_SESSION["order"] ,
00105 $_SESSION["status"] != "new") ;
00106 print " / ";
00107 link_maybe($text['status_old'],
00108 "index.php?lang=$lang&status=old&sort=$sort&order=" . $_SESSION["order"],
00109 $_SESSION["status"] != "old");
00110
00111 print '</td></tr>
00112 <tr>
00113 <td> <strong>' . $text['order'] . ': </strong> </td>
00114 <td>';
00115
00116
00117
00118 link_maybe($text['order_asc'],
00119 "index.php?lang=$lang&order=up&sort=$sort&status=" . $_SESSION["status"],
00120 $_SESSION["order"] != "up") ;
00121 print " / ";
00122 link_maybe($text['order_desc'],
00123 "index.php?lang=$lang&order=down&sort=$sort&status=" . $_SESSION["status"],
00124 $_SESSION["order"] != "down");
00125
00126 print ' </td> </tr> </table> <br>';
00127
00128 ($link = mysql_pconnect($dbhost, $dbuser, $dbpass)) or db_error_mysql();
00129 mysql_select_db($dbname,$link) or db_error_mysql();
00130
00131 fields_init($link, $lang);
00132
00133
00134 $table_columns = array(
00135 'last_name' => $fields['last_name']['label'],
00136 'first_name' => $fields['first_name']['label'],
00137 'birthday' => $fields['birthday']['label'],
00138 'entry_date' => $fields['entry_date']['label']
00139 );
00140
00141
00142
00143 if (($_SESSION['action'] == 'delete_all') and $_SESSION['button'] == $buttons['ok']) {
00144
00145 $q = "DELETE addresses FROM persons, addresses ";
00146 $q .= "WHERE persons.status='old' and persons.id = addresses.person_id";
00147 db_query_mysql($link,$q, array());
00148
00149 $q = "DELETE FROM persons WHERE persons.status='old'";
00150 db_query_mysql($link, $q, array());
00151
00152 $_SESSION["button"] = "";
00153
00154 unset($_SESSION['action']);
00155 }
00156
00157
00158
00159 $sortkeys = $_SESSION["sort"];
00160
00161 if ($_SESSION["order"] == "down")
00162 $sortkeys .= " DESC";
00163
00164 foreach ($default_sortkeys as $s) {
00165 if ($s != $_SESSION["sort"])
00166 $sortkeys .= ", $s" ;
00167 }
00168
00169 $q = "SELECT id FROM persons WHERE status = ";
00170 $q .= "'" . $_SESSION["status"] . "' ";
00171
00172 $q .= "ORDER BY $sortkeys";
00173
00174
00175
00176
00177 $res = db_query_mysql($link,$q, array());
00178
00179
00180 if (empty($res)) {
00181 print $text['db_empty'];
00182 } else {
00183 print "<table border=0 cellpadding=5 >";
00184
00185
00186 print "<tr>\n";
00187 foreach ($table_columns as $k => $v ) {
00188 $order=$_SESSION['order'];
00189 print "<th align=\"left\" >";
00190 link_maybe(htmlentities($v), "index.php?lang=$lang&status=$status&order=$order&sort=$k",
00191 $_SESSION["sort"] != $k);
00192 print "</th>\n";
00193 }
00194 print "<th> </th>";
00195
00196 print "</tr>\n";
00197
00198
00199 foreach ($res as $row) {
00200 print "<tr>\n";
00201
00202 foreach ($table_columns as $f => $dummy ) {
00203
00204
00205
00206 $q = $fields[$f]["view_query"];
00207
00208
00209 $r = db_query_mysql($link,$q,
00210 array('@id@' => $row["id"]));
00211
00212 $v = (isset($r[1][0])) ? $r[1][0] : "";
00213
00214 print "<td>" . htmlentities($v) . " </td>\n";
00215
00216 }
00217
00218 print "<td>";
00219
00220 $id = $row["id"];
00221 print "<a href=\"action.php?&lang=$lang&action=show&id=" . $id . "\">";
00222 print $text['details'];
00223 print "</td>\n";
00224 print "</tr>\n";
00225 }
00226 print "</table>";
00227
00228 if ($_SESSION["status"] == "old") {
00229 print '<form method="GET">';
00230
00231
00232 if ($_SESSION['button'] == $buttons['delete_all']) {
00233 print '<br><strong>' . $text['confirm_delete_all'] . '</strong> ';
00234 print '<input type="hidden" value="' . $lang . '" name="lang">';
00235 print '<input type="hidden" value="delete_all" name="action">';
00236 print '<input type="submit" name="button" value="' . $buttons['ok'] . '"> ';
00237 print '<input type="submit" name="button" value="' . $buttons['cancel'] . '">';
00238 } else {
00239 print '<input type="hidden" value="' . $lang . '" name="lang">';
00240 print '<br><br><input type="submit" name="button" value="' .
00241 $buttons['delete_all'] . '">';
00242 }
00243
00244 print "</form>";
00245 }
00246
00247 }
00248
00249 mysql_close($link);
00250 print_footer(array());
00251
00252 ?>