2 /************************************************************************
3 * Mailer v0.2.1-FINAL Start: 04/11/2004 *
4 * =================== Last change: 08/12/2004 *
6 * -------------------------------------------------------------------- *
7 * File : what-config_payouts.php *
8 * -------------------------------------------------------------------- *
9 * Short description : Configure payout types *
10 * -------------------------------------------------------------------- *
11 * Kurzbeschreibung : Auszahlungensarten editieren *
12 * -------------------------------------------------------------------- *
15 * $Tag:: 0.2.1-FINAL $ *
17 * -------------------------------------------------------------------- *
18 * Copyright (c) 2003 - 2009 by Roland Haeder *
19 * Copyright (c) 2009 - 2011 by Mailer Developer Team *
20 * For more information visit: http://mxchange.org *
22 * This program is free software; you can redistribute it and/or modify *
23 * it under the terms of the GNU General Public License as published by *
24 * the Free Software Foundation; either version 2 of the License, or *
25 * (at your option) any later version. *
27 * This program is distributed in the hope that it will be useful, *
28 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
29 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
30 * GNU General Public License for more details. *
32 * You should have received a copy of the GNU General Public License *
33 * along with this program; if not, write to the Free Software *
34 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, *
36 ************************************************************************/
38 // Some security stuff...
39 if ((!defined('__SECURITY')) || (!isAdmin())) {
43 // Add description as navigation point
44 addYouAreHereLink('admin', __FILE__);
46 // Do we add an entry?
47 if ((isFormSent('add')) && (isPostRequestElementSet('title')) && (postRequestElement('rate') > 0)) {
48 // Add new payout type
49 $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_payout_types` WHERE type='%s' LIMIT 1",
50 array(postRequestElement('title')), __FILE__, __LINE__);
51 if (SQL_HASZERONUMS($result)) {
53 SQL_QUERY_ESC("INSERT INTO
54 `{?_MYSQL_PREFIX?}_payout_types`
56 `type`,`rate`,`min_points`,`from_account`,`from_pass`,`engine_url`,`engine_ret_ok`,`engine_ret_failed`,`pass_enc`,`allow_url`
58 '%s', %s, %s,'%s','%s','%s','%s','%s','%s','%s'
61 postRequestElement('title'),
62 bigintval(postRequestElement('rate')),
63 bigintval(postRequestElement('min_points')),
64 postRequestElement('yacc'),
65 postRequestElement('ypass'),
66 postRequestElement('yurl'),
67 postRequestElement('yrdone'),
68 postRequestElement('yrfailed'),
69 postRequestElement('ytrans'),
70 postRequestElement('allow_url'),
71 ), __FILE__, __LINE__);
74 $message = '{--ADMIN_PAYOUT_TYPE_ADDED--}';
77 SQL_FREERESULT($result);
80 $message = '<div class="bad">{--ADMIN_PAYOUT_TYPE_ALREADY--}</div>';
84 // Payout requests by your members
85 $result_mem = SQL_QUERY("SELECT `id` FROM `{?_MYSQL_PREFIX?}_user_payouts` WHERE `status`='NEW' ORDER BY payout_timestamp DESC", __FILE__, __LINE__);
88 if ((isFormSent('edit')) && (ifPostContainsSelections())) {
89 // Make payouts configurable
90 $display = false; //Suppress any other outputs
92 foreach (postRequestElement('sel') as $id => $sel) {
94 $result = SQL_QUERY_ESC("SELECT `id`,`type`,`rate`,`min_points`,`allow_url` FROM `{?_MYSQL_PREFIX?}_payout_types` WHERE `id`=%s LIMIT 1",
95 array(bigintval($id)), __FILE__, __LINE__);
96 $content = SQL_FETCHARRAY($result);
97 SQL_FREERESULT($result);
99 // Prepare data for the row template
100 $content['allow_url'] = addSelectionBox('yn', $content['allow_url'], 'allow_url[' . $content['id'] . ']');
102 // Load row template and switch color
103 $OUT .= loadTemplate('admin_edit_payouts_row', true, $content);
106 // Load main template
107 loadTemplate('admin_edit_payouts', false, $OUT);
108 } elseif ((isFormSent('do_edit')) && (ifPostContainsSelections())) {
114 foreach (postRequestElement('sel') as $id => $sel) {
116 $id = bigintval($id);
118 // Edit only if something is entered
119 if ((isPostRequestElementSet('type', $id)) && (postRequestElement('rate', $id) > 0)) {
121 addSql(SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_payout_types` SET
130 postRequestElement('type', $id),
131 convertCommaToDot(postRequestElement('rate', $id)),
132 convertCommaToDot(postRequestElement('min_points' , $id)),
133 postRequestElement('allow_url', $id),
135 ),__FILE__, __LINE__, false));
140 runFilterChain('run_sqls');
143 $message = '{--ADMIN_PAYOUT_ENTRIES_CHANGED--}';
144 } elseif ((isFormSent('delete')) && (ifPostContainsSelections())) {
145 $display = false; //Suppress any other outputs
147 foreach (postRequestElement('sel') as $id => $sel) {
149 $id = bigintval($id);
152 $result = SQL_QUERY_ESC("SELECT `id`,`type`,`rate`,`min_points` FROM `{?_MYSQL_PREFIX?}_payout_types` WHERE `id`=%s LIMIT 1",
153 array($id), __FILE__, __LINE__);
154 $content = SQL_FETCHARRAY($result);
155 SQL_FREERESULT($result);
157 // Load row template and switch color
158 $OUT .= loadTemplate('admin_delete_payouts_row', true, $content);
161 // Load main template
162 loadTemplate('admin_delete_payouts', false, $OUT);
163 } elseif ((isFormSent('do_delete')) && (ifPostContainsSelections())) {
168 foreach (postRequestElement('sel') as $id => $sel) {
169 addSql(SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_payout_types` WHERE `id`=%s LIMIT 1",
170 array(bigintval($id)), __FILE__, __LINE__, false));
174 runFilterChain('run_sqls');
177 $message = '{--ADMIN_PAYOUT_ENTRIES_DELETED--}';
180 if (!empty($message)) {
182 displayMessage($message);
186 $result_type = SQL_QUERY("SELECT
187 `id`,`type`,`rate`,`min_points`,`from_account`
189 `{?_MYSQL_PREFIX?}_payout_types`
191 `type` ASC", __FILE__, __LINE__);
193 if ((!SQL_HASZERONUMS($result_type)) && ($display)) {
194 // List all payout types
196 while ($content = SQL_FETCHARRAY($result_type)) {
197 // Load row template and switch color
198 $OUT .= loadTemplate('admin_config_payouts_row', true, $content);
202 SQL_FREERESULT($result_type);
204 // Load main template
205 loadTemplate('admin_config_payouts', false, $OUT);
208 // Does your members request payouts?
209 if ((!SQL_HASZERONUMS($result_mem)) && ($display === true)) {
210 // Members has requested payouts
211 displayMessage('<a href="{%url=modules.php?module=admin&what=list_payouts%}">{--ADMIN_PAYOUT_LIST_REQUESTS--}</a>');
212 } elseif ($display === true) {
213 // No member requests so far
214 displayMessage('{--ADMIN_PAYOUT_NO_MEMBER_REQUESTS--}');
218 SQL_FREERESULT($result_mem);
220 // Add new payout type
221 if ($display === true) {
222 loadTemplate('admin_add_payout');