<?php
/************************************************************************
- * MXChange v0.2.1 Start: 10/19/2003 *
- * =============== Last change: 12/12/2004 *
+ * Mailer v0.2.1-FINAL Start: 10/19/2003 *
+ * =================== Last change: 12/12/2004 *
* *
* -------------------------------------------------------------------- *
* File : what-payments.php *
* -------------------------------------------------------------------- *
* Short description : Payments (points) for confirmed mails *
* -------------------------------------------------------------------- *
- * Kurzbeschreibung : Verguetungen fuer bestaetigte Mails *
+ * Kurzbeschreibung : Verguetungen fuer bestätigte Mails *
* -------------------------------------------------------------------- *
- * *
+ * $Revision:: $ *
+ * $Date:: $ *
+ * $Tag:: 0.2.1-FINAL $ *
+ * $Author:: $ *
* -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder *
- * For more information visit: http://www.mxchange.org *
+ * Copyright (c) 2003 - 2009 by Roland Haeder *
+ * Copyright (c) 2009 - 2012 by Mailer Developer Team *
+ * For more information visit: http://mxchange.org *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
************************************************************************/
// 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);
-}
-// Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
-
-OPEN_TABLE("100%", "admin_content admin_content_align", "");
-global $link;
+if ((!defined('__SECURITY')) || (!isAdmin())) {
+ die();
+} // END - if
-if (empty($_GET['do'])) unset($_GET['do']);
-if (((empty($_POST['t_wait'])) || (empty($_POST['payment']))) && (!empty($_GET['do'])) && ($_GET['do'] == "add"))
-{
- unset($_POST['ok']);
-}
-
-if (isset($_POST['ok']))
-{
- $SQL = array();
- switch ($_GET['do'])
- {
- case "add":
- $SQL[] = "INSERT INTO "._MYSQL_PREFIX."_payments (time, payment, mail_title, price) VALUES ('".$_POST['t_wait']."', '".$_POST['payment']."', '".$_POST['title']."', '".$_POST['price']."')";
- $result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_payments WHERE time='%s' LIMIT 1",
- array($_POST['t_wait']), __FILE__, __LINE__);
- if (SQL_NUMROWS($result) == 1)
- {
- // Free memory
- $SQL[0] = "";
- SQL_FREERESULT($result);
- }
- break;
-
- case "edit":
- foreach ($_POST['time'] as $id=>$value)
- {
- $SQL[] = "UPDATE "._MYSQL_PREFIX."_payments SET time='".$value."', payment='".$_POST['pay'][$id]."', price='".$_POST['price'][$id]."', mail_title='".$_POST['title'][$id]."' WHERE id='".$id."' LIMIT 1";
- }
- break;
-
- case "del":
- foreach ($_POST['id'] as $id=>$value)
- {
- $SQL[] = "DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_payments WHERE id='".$id."' LIMIT 1";
- }
- break;
- }
- // Daten abspeichern
- if ((count($SQL) > 0) || (!empty($SQL[0])))
- {
- foreach ($SQL as $s)
- {
- if (!empty($s))
- {
- // Only run non-empty strings
- $result = SQL_QUERY(trim($s), __FILE__, __LINE__);
- if (empty($content))
- {
- if (SQL_AFFECTEDROWS($link, __FILE__, __LINE__) == 1)
- {
- $content = "<SPAN class=\"admin_done\">".SETTINGS_SAVED."</SPAN>";
- }
- else
- {
- $content = "<SPAN class=\"admin_failed\">".SETTINGS_NOT_SAVED."</SPAN>";
- }
- }
- }
- }
- }
- else
- {
- $content = "<SPAN class=\"admin_failed\">".SETTINGS_NOT_SAVED."</SPAN>";
- }
- LOAD_TEMPLATE("admin_settings_saved", false, $content);
-}
- elseif ((isset($_POST['del'])) && (SELECTION_COUNT($_POST['sel']) > 0))
-{
+// Add description as navigation point
+addYouAreHereLink('admin', __FILE__);
+
+if (((!isPostRequestElementSet('t_wait')) || (!isPostRequestElementSet('payment'))) && (isGetRequestElementSet('do')) && (getRequestElement('do') == 'add')) {
+ unsetPostRequestElement('ok');
+} // END - if
+
+if (isFormSent()) {
+ switch (getRequestElement('do')) {
+ case 'add':
+ addSql("INSERT INTO `{?_MYSQL_PREFIX?}_payments` (`time`, `payment`, `mail_title`, `price`) VALUES ('".postRequestElement('t_wait')."','".postRequestElement('payment')."','".postRequestElement('title')."','".postRequestElement('price')."')");
+ if (countSumTotalData(postRequestElement('t_wait'), 'payments', 'id', 'time', TRUE) == 1) {
+ // Re-init the array here
+ initSqls();
+ } // END - if
+ break;
+
+ case 'edit':
+ foreach (postRequestElement('time') as $id => $value) {
+ addSql("UPDATE `{?_MYSQL_PREFIX?}_payments` SET `time`='" . $value . "',`payment`='".postRequestElement('payment', $id)."', price='".postRequestElement('price', $id)."', mail_title='".postRequestElement('mail_title', $id)."' WHERE `id`='".$id."' LIMIT 1");
+ } // END - foreach
+ break;
+
+ case 'delete':
+ foreach (postRequestElement('id') as $id => $value) {
+ addSql("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_payments` WHERE `id`=" . bigintval($id) . " LIMIT 1");
+ } // END - foreach
+ break;
+ } // END - switch
+
+ // Nothing has changed by default
+ $content = '<span class="bad">{--SETTINGS_NOT_SAVED--}</span>';
+
+ // Save settings
+ if (countSqls() > 0) {
+ // Run all queries
+ runFilterChain('run_sqls');
+
+ // Purge cache
+ rebuildCache('payments', 'payments');
+
+ // Change message
+ $content = '<span class="good">{--SETTINGS_SAVED--}</span>';
+ } // END - if
+
+ // Output template
+ displayMessage($content);
+} elseif ((isFormSent('delete')) && (ifPostContainsSelections())) {
// Delete entries here
- $SW = 2; $OUT = "";
- foreach ($_POST['sel'] as $id=>$value)
- {
- $result = SQL_QUERY_ESC("SELECT time, mail_title FROM "._MYSQL_PREFIX."_payments WHERE id=%d LIMIT 1",
- array(bigintval($id)), __FILE__, __LINE__);
- list($time, $title) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
+ $OUT = '';
+ foreach (postRequestElement('sel') as $id => $value) {
+ $result = SQL_QUERY_ESC("SELECT `id`, `time`, `mail_title` FROM `{?_MYSQL_PREFIX?}_payments` WHERE `id`=%s LIMIT 1",
+ array(bigintval($id)), __FILE__, __LINE__);
+ $content = SQL_FETCHARRAY($result);
- // Prepare array for the row template
- $content = array(
- 'sw' => $SW,
- 'id' => $id,
- 'time' => $time,
- 'title' => $title,
- );
+ // Free result
+ SQL_FREERESULT($result);
// Load row template and switch colors
- $OUT .= LOAD_TEMPLATE("admin_del_payments_row", true, $content);
- $SW = 3 - $SW;
- }
- define('__PAYMENT_ROWS', $OUT);
+ $OUT .= loadTemplate('admin_delete_payments_row', TRUE, $content);
+ } // END - foreach
// Load main template
- LOAD_TEMPLATE("admin_del_payments");
-}
- elseif ((isset($_POST['edit'])) && (SELECTION_COUNT($_POST['sel']) > 0))
-{
+ loadTemplate('admin_delete_payments', FALSE, $OUT);
+} elseif ((isFormSent('edit')) && (ifPostContainsSelections())) {
// Edit entries
- $SW = 2; $OUT = "";
- foreach ($_POST['sel'] as $id=>$value)
- {
- $result = SQL_QUERY_ESC("SELECT time, payment, mail_title, price FROM "._MYSQL_PREFIX."_payments WHERE id=%d LIMIT 1",
- array(bigintval($id)), __FILE__, __LINE__);
- list($time, $pay, $title, $price) = SQL_FETCHROW($result);
- SQL_FREERESULT($result);
+ $OUT = '';
+ foreach (postRequestElement('sel') as $id => $value) {
+ $result = SQL_QUERY_ESC("SELECT `id`, `time`, `payment`, `mail_title`, `price` FROM `{?_MYSQL_PREFIX?}_payments` WHERE `id`=%s LIMIT 1",
+ array(bigintval($id)), __FILE__, __LINE__);
+ $content = SQL_FETCHARRAY($result);
- // Prepare array for the row template
- $content = array(
- 'sw' => $SW,
- 'id' => $id,
- 'time' => $time,
- 'title' => $title,
- 'pay' => $pay,
- 'price' => $price,
- );
+ // Free result
+ SQL_FREERESULT($result);
// Load row template and switch colors
- $OUT .= LOAD_TEMPLATE("admin_edit_payments_row", true, $content);
- $SW = 3 - $SW;
- }
- define('__PAYMENT_ROWS', $OUT);
+ $OUT .= loadTemplate('admin_edit_payments_row', TRUE, $content);
+ } // END - foreach
// Load main template
- LOAD_TEMPLATE("admin_edit_payments");
-}
- else
-{
+ loadTemplate('admin_edit_payments', FALSE, $OUT);
+} else {
// Referral levels
- $result = SQL_QUERY("SELECT id, time, payment, mail_title, price FROM "._MYSQL_PREFIX."_payments ORDER BY time", __FILE__, __LINE__);
- if (SQL_NUMROWS($result) > 0)
- {
+ $result = SQL_QUERY("SELECT `id`, `time`, `payment`, `mail_title`, `price` FROM `{?_MYSQL_PREFIX?}_payments` ORDER BY `time` ASC", __FILE__, __LINE__);
+ if (!SQL_HASZERONUMS($result)) {
// Make referral levels editable and deletable
- $SW = 2; $OUT = "";
+ $OUT = '';
// List already existing categories for editing
- while (list($id, $time, $pay, $title, $price) = SQL_FETCHROW($result))
- {
- $pay = TRANSLATE_COMMA($pay);
- $price = TRANSLATE_COMMA($price);
-
- // Prepare array for the row template
- $content = array(
- 'sw' => $SW,
- 'id' => $id,
- 'time' => $time,
- 'title' => $title,
- 'pay' => $pay,
- 'price' => $price,
- );
-
+ while ($content = SQL_FETCHARRAY($result)) {
// Load row template and switch colors
- $OUT .= LOAD_TEMPLATE("admin_payments_list_row", true, $content);
- $SW = 3 - $SW;
- }
+ $OUT .= loadTemplate('admin_list_payments_row', TRUE, $content);
+ } // END - switch
// Free memory
SQL_FREERESULT($result);
- define('__PAYMENT_ROWS', $OUT);
// Load main template
- LOAD_TEMPLATE("admin_list_payments");
- }
+ loadTemplate('admin_list_payments', FALSE, $OUT);
+ } // END - if
// Form for adding new referral levels
- LOAD_TEMPLATE("admin_add_payment");
+ loadTemplate('admin_add_payment');
}
-CLOSE_TABLE();
-//
+
+// [EOF]
?>