<?php
/************************************************************************
- * MXChange v0.2.1 Start: 10/10/2003 *
- * =============== Last change: 07/04/2004 *
+ * Mailer v0.2.1-FINAL Start: 10/10/2003 *
+ * =================== Last change: 07/04/2004 *
* *
* -------------------------------------------------------------------- *
* File : what-config_cats.php *
* Kurzbeschreibung : Neue Kategorien hinzufuegen und bestehende *
* editieren / loeschen *
* -------------------------------------------------------------------- *
- * *
+ * $Revision:: $ *
+ * $Date:: $ *
+ * $Tag:: 0.2.1-FINAL $ *
+ * $Author:: $ *
* -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder *
+ * Copyright (c) 2003 - 2009 by Roland Haeder *
+ * Copyright (c) 2009, 2010 by Mailer Developer Team *
* For more information visit: http://www.mxchange.org *
* *
* This program is free software; you can redistribute it and/or modify *
************************************************************************/
// Some security stuff...
-if ((ereg(basename(__FILE__), $_SERVER['PHP_SELF'])) || (!IS_ADMIN())) {
- $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
- require($INC);
-}
+if ((!defined('__SECURITY')) || (!isAdmin())) {
+ die();
+} // END - if
// Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
+addMenuDescription('admin', __FILE__);
// Init variable to avoid a notice
-$CATS = "";
+$CATS = '';
-if (isset($_POST['add'])) {
+if (isFormSent('add')) {
// Add a new category
- $result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_cats WHERE cat='%s' LIMIT 1",
- array(addslashes($_POST['catname'])), __FILE__, __LINE__);
- if (SQL_NUMROWS($result) == 0) {
+ $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_cats` WHERE `cat`='%s' LIMIT 1",
+ array(postRequestParameter('catname')), __FILE__, __LINE__);
+ if (SQL_HASZERONUMS($result)) {
// Category does not exists, we simply add it...
- $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_cats (cat, visible, sort) VALUES ('%s', '%s', '%s')",
- array(addslashes($_POST['catname']), $_POST['visible'], bigintval($_POST['parent'] + 1)), __FILE__, __LINE__);
- $content = "<SPAN class=\"admin_done\">".CATEGORY_ADDED."</SPAN>";
+ SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_cats` (`cat`, `visible`, `sort`) VALUES ('%s','%s','%s')",
+ array(
+ postRequestParameter('catname'),
+ postRequestParameter('visible'),
+ bigintval(postRequestParameter('parent') + 1)
+ ), __FILE__, __LINE__);
+ $content = '{--CATEGORY_ADDED--}';
} else {
// Category does already exists
- $content = "<SPAN class=\"admin_failed\">".CATEGORY_ALREADY_EXISTS."</SPAN>";
+ $content = '<span class="notice">{--CATEGORY_ALREADY_EXISTS--}</span>';
}
// Free memory
SQL_FREERESULT($result);
// Display message
- LOAD_TEMPLATE("admin_settings_saved", false, $content);
-} elseif ((isset($_POST['ok'])) && (isset($_POST['id'])) && (is_array($_POST['id']))) {
+ loadTemplate('admin_settings_saved', false, $content);
+} elseif ((isFormSent()) && (isPostRequestParameterSet('id')) && (is_array(postRequestParameter('id')))) {
// Change or delete categories...
- $TEXT = "";
- foreach ($_POST['id'] as $id => $cat) {
- // Secure ID
+ $TEXT = '';
+ foreach (postRequestParameter('id') as $id => $cat) {
+ // Secure id
$id = bigintval($id);
// Is the entry set?
if (!empty($cat)) {
- switch ($_GET['do'])
- {
- case "edit": // Change categories
- $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_cats SET cat='%s', visible='%s', sort=%s WHERE id=%s LIMIT 1",
- array($cat, $_POST['vis'][$id], $_POST['sort'][$id], $id), __FILE__, __LINE__);
- $TEXT = CATEGORIES_SAVED;
- break;
-
- case "del": // Delete categories
- $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_cats WHERE id=%s LIMIT 1",
- array($id), __FILE__, __LINE__);
- $result = SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_user_cats WHERE cat_id=%s",
- array($id), __FILE__, __LINE__);
- $TEXT = CATEGORIES_DELETED;
- break;
- }
+ switch (getRequestParameter('do')) {
+ case 'edit': // Change categories
+ SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_cats` SET `cat`='%s', `visible`='%s', `sort`=%s WHERE `id`=%s LIMIT 1",
+ array(
+ $cat,
+ postRequestParameter('visible', $id),
+ postRequestParameter('sort', $id),
+ $id
+ ), __FILE__, __LINE__);
+ $TEXT = '{--ADMIN_CATEGORIES_SAVED--}';
+ break;
+
+ case 'delete': // Delete categories
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_cats` WHERE `id`=%s LIMIT 1",
+ array($id), __FILE__, __LINE__);
+ SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_user_cats` WHERE `cat_id`=%s",
+ array($id), __FILE__, __LINE__);
+ $TEXT = '{--ADMIN_CATEGORIES_DELETED--}';
+ break;
+ } // END - switch
} else {
// Entry not saved
- $TEXT .= sprintf(CATEGORY_NOT_SAVED, $id);
+ $TEXT .= getMaskedMessage('ADMIN_CATEGORY_NOT_SAVED', $id);
}
- }
+ } // END - foreach
if (isset($TEXT)) {
// Display message
- LOAD_TEMPLATE("admin_settings_saved", false, $TEXT);
- }
-}
- elseif ((isset($_POST['del'])) && ((SELECTION_COUNT($_POST['sel']) > 0) || (isset($_POST['sel'][0]))))
-{
+ loadTemplate('admin_settings_saved', false, $TEXT);
+ } // END - if
+} elseif ((isFormSent('delete')) && (ifPostContainsSelections())) {
// Delete categories
- $SW = 2; $OUT = "";
- foreach ($_POST['sel'] as $id => $value)
- {
- // Load data of category
- $result = SQL_QUERY_ESC("SELECT cat FROM "._MYSQL_PREFIX."_cats WHERE id=%s LIMIT 1",
- array(bigintval($id)), __FILE__, __LINE__);
- list($cat) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
-
- // Prepare data for the row template
- $content = array(
- 'sw' => $SW,
- 'id' => $id,
- 'cat' => $cat,
- );
-
+ $OUT = '';
+ foreach (postRequestParameter('sel') as $id => $value) {
// Load row template and switch colors
- $OUT .= LOAD_TEMPLATE("admin_del_cats_row", true, $content);
- $SW = 3 - $SW;
- }
- define('__CAT_ROWS', $OUT);
+ $OUT .= loadTemplate('admin_delete_cats_row', true, $id);
+ } // END - foreach
// Load main template
- LOAD_TEMPLATE("admin_del_cats");
-} elseif ((isset($_POST['edit'])) && ((SELECTION_COUNT($_POST['sel']) > 0) || (isset($_POST['sel'][0])))) {
+ loadTemplate('admin_delete_cats', false, $OUT);
+} elseif ((isFormSent('edit')) && (ifPostContainsSelections())) {
// Edit categories
- $SW = 2; $OUT = "";
- foreach ($_POST['sel'] as $id => $value)
- {
+ $OUT = '';
+ foreach (postRequestParameter('sel') as $id => $value) {
// Load data from the category
- $result = SQL_QUERY_ESC("SELECT cat, visible, sort FROM "._MYSQL_PREFIX."_cats WHERE id=%s LIMIT 1",
- array(bigintval($id)), __FILE__, __LINE__);
- list($cat, $vis, $sort) = SQL_FETCHROW($result);
+ $result = SQL_QUERY_ESC("SELECT `id`, `visible`, `sort` FROM `{?_MYSQL_PREFIX?}_cats` WHERE `id`=%s LIMIT 1",
+ array(bigintval($id)), __FILE__, __LINE__);
+ $content = SQL_FETCHARRAY($result);
+
+ // Free result
SQL_FREERESULT($result);
// Prepare data for the row template
- $content = array(
- 'sw' => $SW,
- 'id' => $id,
- 'cat' => $cat,
- 'vis' => ADD_SELECTION("yn", $vis, "vis", $id),
- 'sort' => $sort,
- );
+ $content['visible_selection'] = addSelectionBox('yn', $content['visible'], 'visible', $content['id']);
// Load row template and switch colors
- $OUT .= LOAD_TEMPLATE("admin_edit_cats_row", true, $content);
- $SW = 3 - $SW;
- }
- define('__CAT_ROWS', $OUT);
+ $OUT .= loadTemplate('admin_edit_cats_row', true, $content);
+ } // END - foreach
// Load main template
- LOAD_TEMPLATE("admin_edit_cats");
-}
- else
-{
+ loadTemplate('admin_edit_cats', false, $OUT);
+} else {
+ // Init variable here
+ $CATS = '';
+
// Load all categories
- $result = SQL_QUERY("SELECT id, cat, visible, sort FROM "._MYSQL_PREFIX."_cats ORDER BY sort", __FILE__, __LINE__);
- if (SQL_NUMROWS($result) > 0)
- {
- // List already existing categories for editing
- $SW = 2; $OUT = ""; $CATS = "";
- while (list($id, $cat, $visible, $sort) = SQL_FETCHROW($result))
- {
- // Prepare data for the row template
- $content = array(
- 'sw' => $SW,
- 'id' => $id,
- 'cat' => $cat,
- 'vis' => TRANSLATE_YESNO($visible),
- 'sort' => $sort,
- );
+ $result = SQL_QUERY("SELECT `id`, `cat`, `visible`, `sort` FROM `{?_MYSQL_PREFIX?}_cats` ORDER BY `sort` ASC", __FILE__, __LINE__);
+ if (!SQL_HASZERONUMS($result)) {
+ // Init variables
+ $OUT = '';
+ // List already existing categories for editing
+ while ($content = SQL_FETCHARRAY($result)) {
// Put cat descriptions into variable for the selection box
- if (strlen($cat) > 20) $cat = substr($cat, 0, 17)."...";
- $CATS .= " <OPTION value=\"".$sort."\">".$cat."</OPTION>\n";
+ $cat = $content['cat'];
+ if (strlen($cat) > 40) $cat = substr($cat, 0, 37) . '...';
+ $CATS .= '<option value="' . $content['sort'] . '">' . $cat . '</option>';
// Load row template and switch color
- $OUT .= LOAD_TEMPLATE("admin_config_cats_row", true, $content);
- $SW = 3 - $SW;
- }
+ $OUT .= loadTemplate('admin_config_cats_row', true, $content);
+ } // END - while
// Free memory
SQL_FREERESULT($result);
- define('__CAT_ROWS', $OUT);
// Load main template
- LOAD_TEMPLATE("admin_config_cats");
- }
+ loadTemplate('admin_config_cats', false, $OUT);
+ } // END - if
- define('CATS', $CATS);
+ // Remember in array
+ $content['cats'] = $CATS;
// Form to add a new category
- LOAD_TEMPLATE("admin_add_cat");
+ loadTemplate('admin_add_cat', false, $content);
}
-//
+// [EOF]
?>