2 /************************************************************************
3 * MXChange v0.2.1 Start: 10/19/2003 *
4 * =============== Last change: 12/12/2004 *
6 * -------------------------------------------------------------------- *
7 * File : what-payments.php *
8 * -------------------------------------------------------------------- *
9 * Short description : Payments (points) for confirmed mails *
10 * -------------------------------------------------------------------- *
11 * Kurzbeschreibung : Verguetungen fuer bestaetigte Mails *
12 * -------------------------------------------------------------------- *
15 * $Tag:: 0.2.1-FINAL $ *
17 * Needs to be in all Files and every File needs "svn propset *
18 * svn:keywords Date Revision" (autoprobset!) at least!!!!!! *
19 * -------------------------------------------------------------------- *
20 * Copyright (c) 2003 - 2008 by Roland Haeder *
21 * For more information visit: http://www.mxchange.org *
23 * This program is free software; you can redistribute it and/or modify *
24 * it under the terms of the GNU General Public License as published by *
25 * the Free Software Foundation; either version 2 of the License, or *
26 * (at your option) any later version. *
28 * This program is distributed in the hope that it will be useful, *
29 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
30 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
31 * GNU General Public License for more details. *
33 * You should have received a copy of the GNU General Public License *
34 * along with this program; if not, write to the Free Software *
35 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *
37 ************************************************************************/
39 // Some security stuff...
40 if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
41 $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
45 // Add description as navigation point
46 ADD_DESCR('admin', __FILE__);
48 if (((!REQUEST_ISSET_POST(('t_wait'))) || (!REQUEST_ISSET_POST(('payment')))) && (REQUEST_ISSET_GET('do')) && (REQUEST_GET('do') == 'add')) {
49 REQUEST_UNSET_POST('ok');
53 switch (REQUEST_GET('do')) {
55 ADD_SQL("INSERT INTO `{!_MYSQL_PREFIX!}_payments` (time, payment, mail_title, price) VALUES ('".REQUEST_POST('t_wait')."','".REQUEST_POST('payment')."','".REQUEST_POST('title')."','".REQUEST_POST('price')."')");
56 $result = SQL_QUERY_ESC("SELECT `id` FROM `{!_MYSQL_PREFIX!}_payments` WHERE time='%s' LIMIT 1",
57 array(REQUEST_POST('t_wait')), __FILE__, __LINE__);
58 if (SQL_NUMROWS($result) == 1) {
59 // Re-init the array here
63 SQL_FREERESULT($result);
68 foreach (REQUEST_POST('time') as $id => $value) {
69 ADD_SQL("UPDATE `{!_MYSQL_PREFIX!}_payments` SET time='".$value."', payment='".REQUEST_POST('pay', $id)."', price='".REQUEST_POST('price', $id)."', mail_title='".REQUEST_POST('title', $id)."' WHERE `id`='".$id."' LIMIT 1");
74 foreach (REQUEST_POST('id') as $id => $value) {
75 ADD_SQL("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_payments` WHERE `id`='".$id."' LIMIT 1");
81 if (COUNT_SQLS() > 0) {
83 runFilterChain('run_sqls');
84 $content = "<span class=\"admin_failed\">".SETTINGS_SAVED."</span>";
86 // Nothing has changed!
87 $content = "<span class=\"admin_failed\">{--SETTINGS_NOT_SAVED--}</span>";
91 LOAD_TEMPLATE('admin_settings_saved', false, $content);
92 } elseif ((REQUEST_ISSET_POST('del')) && (countPostSelection() > 0)) {
93 // Delete entries here
95 foreach (REQUEST_POST('sel') as $id => $value) {
96 $result = SQL_QUERY_ESC("SELECT time, mail_title FROM `{!_MYSQL_PREFIX!}_payments` WHERE `id`=%s LIMIT 1",
97 array(bigintval($id)), __FILE__, __LINE__);
98 list($time, $title) = SQL_FETCHROW($result);
99 SQL_FREERESULT($result);
101 // Prepare array for the row template
109 // Load row template and switch colors
110 $OUT .= LOAD_TEMPLATE("admin_del_payments_row", true, $content);
113 define('__PAYMENT_ROWS', $OUT);
115 // Load main template
116 LOAD_TEMPLATE("admin_del_payments");
117 } elseif ((REQUEST_ISSET_POST('edit')) && (countPostSelection() > 0)) {
120 foreach (REQUEST_POST('sel') as $id => $value) {
121 $result = SQL_QUERY_ESC("SELECT time, payment, mail_title, price FROM `{!_MYSQL_PREFIX!}_payments` WHERE `id`=%s LIMIT 1",
122 array(bigintval($id)), __FILE__, __LINE__);
123 list($time, $pay, $title, $price) = SQL_FETCHROW($result);
124 SQL_FREERESULT($result);
126 // Prepare array for the row template
136 // Load row template and switch colors
137 $OUT .= LOAD_TEMPLATE("admin_edit_payments_row", true, $content);
140 define('__PAYMENT_ROWS', $OUT);
142 // Load main template
143 LOAD_TEMPLATE("admin_edit_payments");
146 $result = SQL_QUERY("SELECT id, time, payment, mail_title, price FROM `{!_MYSQL_PREFIX!}_payments` ORDER BY time", __FILE__, __LINE__);
147 if (SQL_NUMROWS($result) > 0) {
148 // Make referal levels editable and deletable
151 // List already existing categories for editing
152 while ($content = SQL_FETCHARRAY($result)) {
153 // Prepare array for the row template
154 // @TODO Rewritings: title->mail_title, pay->payment in template
157 'id' => $content['id'],
158 'time' => $content['time'],
159 'title' => $content['mail_title'],
160 'pay' => translateComma($content['payment']),
161 'price' => translateComma($content['price'])
164 // Load row template and switch colors
165 $OUT .= LOAD_TEMPLATE("admin_payments_list_row", true, $content);
170 SQL_FREERESULT($result);
171 define('__PAYMENT_ROWS', $OUT);
173 // Load main template
174 LOAD_TEMPLATE("admin_list_payments");
177 // Form for adding new referal levels
178 LOAD_TEMPLATE("admin_add_payment");