2 /************************************************************************
3 * M-XChange v0.2.1 Start: 06/10/2005 *
4 * ================ Last change: 05/19/2008 *
6 * -------------------------------------------------------------------- *
7 * File : what-list_sponsor_pay.php *
8 * -------------------------------------------------------------------- *
9 * Short description : List/edit/delete all payments and add new *
10 * -------------------------------------------------------------------- *
11 * Kurzbeschreibung : Auflisten/Aendern/Loeschen aller Buchungspakete *
12 * -------------------------------------------------------------------- *
14 * -------------------------------------------------------------------- *
15 * Copyright (c) 2003 - 2008 by Roland Haeder *
16 * For more information visit: http://www.mxchange.org *
18 * This program is free software; you can redistribute it and/or modify *
19 * it under the terms of the GNU General Public License as published by *
20 * the Free Software Foundation; either version 2 of the License, or *
21 * (at your option) any later version. *
23 * This program is distributed in the hope that it will be useful, *
24 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
25 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
26 * GNU General Public License for more details. *
28 * You should have received a copy of the GNU General Public License *
29 * along with this program; if not, write to the Free Software *
30 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *
32 ************************************************************************/
34 // Some security stuff...
35 if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
36 $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4)."/security.php";
40 // Add description as navigation point
41 ADD_DESCR("admin", __FILE__);
45 if (isset($_POST['add'])) {
46 // Check input variables
47 if (empty($_POST['pay_name'])) unset($_POST['add']);
48 if ((round($_POST['pay_rate']) == 0) || (empty($_POST['pay_rate']))) unset($_POST['add']);
49 $_POST['pay_min_count'] = bigintval($_POST['pay_min_count']);
50 if (($_POST['pay_min_count'] == 0) || (empty($_POST['pay_min_count']))) unset($_POST['add']);
51 if (empty($_POST['pay_currency'])) unset($_POST['add']);
52 } elseif ((isset($_POST['edit'])) || (isset($_POST['del'])) || (isset($_POST['change'])) || (isset($_POST['remove']))) {
53 // Check if at least one entry was selected
54 if (empty($_POST['id'])) {
55 // Nothing selected for editing / deleting???
56 unset($_POST['edit']);
58 unset($_POST['change']);
59 unset($_POST['remove']);
60 } elseif (isset($_POST['change'])) {
61 // Change entries here...
62 foreach ($_POST['id'] as $id => $sel) {
67 SQL_QUERY_ESC("UPDATE `{!_MYSQL_PREFIX!}_sponsor_paytypes`
68 SET pay_name='%s', pay_rate='%s', pay_min_count='%s', pay_currency='%s' WHERE id='%s' LIMIT 1",
69 array($_POST['name'][$id], $_POST['rate'][$id], bigintval($_POST['min'][$id]), $_POST['curr'][$id], $id),
74 $MSG = SPONSOR_PAY_ENTRIES_CHANGED;
75 } elseif (isset($_POST['remove'])) {
76 // Remove entries here...
77 foreach ($_POST['id'] as $id => $sel) {
79 SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{!_MYSQL_PREFIX!}_sponsor_paytypes` WHERE id='%s' LIMIT 1",
80 array(bigintval($id)), __FILE__, __LINE__);
84 $MSG = SPONSOR_PAY_ENTRIES_REMOVED;
89 LOAD_TEMPLATE("admin_settings_saved", false, $MSG);
93 if (isset($_POST['add'])) {
94 // Check if entry with same name does exists
95 $result = SQL_QUERY_ESC("SELECT id FROM `{!_MYSQL_PREFIX!}_sponsor_paytypes` WHERE pay_name='%s' LIMIT 1",
96 array($_POST['pay_name']), __FILE__, __LINE__);
97 if (SQL_NUMROWS($result) == 0) {
98 // No entry found so add this line
99 SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_sponsor_paytypes` (pay_name, pay_rate, pay_min_count, pay_currency)
100 VALUES ('%s','%s','%s','%s')",
101 array(htmlspecialchars($_POST['pay_name']), REVERT_COMMA($_POST['pay_rate']), bigintval($_POST['pay_min_count']), htmlspecialchars($_POST['pay_currency'])),
104 // Payment type added!
105 $MSG = SPONSOR_ADMIN_PAYTYPE_ADDED_1.$_POST['pay_name'].SPONSOR_ADMIN_PAYTYPE_ADDED_2;
108 SQL_FREERESULT($result);
110 // Entry does already exists
111 $MSG = SPONSOR_ADMIN_PAYTYPE_ALREADY_1.$_POST['pay_name'].SPONSOR_ADMIN_PAYTYPE_ALREADY_2;
115 LOAD_TEMPLATE("admin_settings_saved", false, $MSG);
116 } elseif ((isset($_POST['edit'])) || (isset($_POST['del']))) {
119 foreach ($_POST['id'] as $id => $sel) {
121 $result = SQL_QUERY_ESC("SELECT pay_name, pay_rate, pay_min_count, pay_currency FROM `{!_MYSQL_PREFIX!}_sponsor_paytypes` WHERE id='%s' LIMIT 1",
122 array(bigintval($id)), __FILE__, __LINE__);
123 if (SQL_NUMROWS($result) == 1) {
125 list($name, $rate, $min, $curr) = SQL_FETCHROW($result);
126 SQL_FREERESULT($result);
128 // Transfer data to array
130 'id' => bigintval($id),
131 'sw' => bigintval($SW),
132 'name' => htmlspecialchars($name),
133 'rate' => TRANSLATE_COMMA($rate),
134 'min' => bigintval($min),
135 'curr' => htmlspecialchars($curr)
138 if (isset($_POST['edit'])) {
140 $OUT .= LOAD_TEMPLATE("admin_list_sponsor_pay_edit_row", true, $content);
143 $OUT .= LOAD_TEMPLATE("admin_list_sponsor_pay_del_row", true, $content);
147 $OUT .= LOAD_TEMPLATE("admin_list_sponsor_pay_404", true, $id);
154 // Remember content in constant
155 define('__SPONSOR_ROWS', $OUT);
157 // Load main template depending on mode (edit/delete)
158 if (isset($_POST['edit'])) {
159 // Load main edit template
160 LOAD_TEMPLATE("admin_list_sponsor_pay_edit");
162 // Load main delete template
163 LOAD_TEMPLATE("admin_list_sponsor_pay_del");
166 // Load all payment types
167 $result = SQL_QUERY("SELECT id, pay_name, pay_rate, pay_min_count, pay_currency FROM `{!_MYSQL_PREFIX!}_sponsor_paytypes` ORDER BY pay_name",
170 // Do we have some paytypes setup?
171 if (SQL_NUMROWS($result) > 0) {
172 // Prepare variables for listing
175 // List alle found payment types
176 while (list($id, $name, $rate, $min, $currency) = SQL_FETCHROW($result)) {
177 // Remember data in array
182 'rate' => TRANSLATE_COMMA($rate),
184 'currency' => $currency
188 $OUT .= LOAD_TEMPLATE("admin_list_sponsor_pay_row", true, $content);
195 SQL_FREERESULT($result);
197 // Remember rows in constant for the template
198 define('__LIST_ROWS', $OUT);
200 // Load list template
201 define('__LIST_CONTENT', LOAD_TEMPLATE("admin_list_sponsor_pay", true));
203 // Noting setup so far!
204 define('__LIST_CONTENT', LOAD_TEMPLATE("admin_settings_saved", true, SPONSOR_ADMIN_NO_PAYTYPES));
207 // Add new payment types here
208 define('__ADD_CONTENT', LOAD_TEMPLATE("admin_add_sponsor_paytype", true));
210 // Load final template
211 LOAD_TEMPLATE("admin_sponsor_paytypes");