2 /************************************************************************
3 * M-XChange v0.2.1 Start: 04/24/2005 *
4 * ================ Last change: 05/12/2005 *
6 * -------------------------------------------------------------------- *
7 * File : what-edit_sponsor.php *
8 * -------------------------------------------------------------------- *
9 * Short description : Edit sponsor account *
10 * -------------------------------------------------------------------- *
11 * Kurzbeschreibung : Sponsorenaccount aendern *
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__);
43 if ((!empty($_GET['id'])) && (!empty($_GET['mode']))) {
44 // Check for selected sponsor
45 $result = SQL_QUERY_ESC("SELECT company, position, gender, surname, family, street_nr1, street_nr2, zip, city, country, phone, fax, cell, email, url, tax_ident, receive_warnings, warning_interval FROM "._MYSQL_PREFIX."_sponsor_data WHERE id='%s' LIMIT 1",
46 array(bigintval($_GET['id'])), __FILE__, __LINE__);
47 if (SQL_NUMROWS($result) == 1) {
48 // Load sponsor details
49 $DATA = SQL_FETCHARRAY($result);
50 SQL_FREERESULT($result);
52 // Prepare all data for the template
54 define('__SPONSOR_ID' , bigintval($_GET['id']));
56 define('__COMPANY' , $DATA['company']);
57 define('__POSITION' , $DATA['position']);
58 define('__TAX_IDENT' , $DATA['tax_ident']);
60 switch ($DATA['gender'])
63 define('__GENDER_M', " selected=\"selected\"");
64 define('__GENDER_F', "");
65 define('__GENDER_C', "");
69 define('__GENDER_M', "");
70 define('__GENDER_F', " selected=\"selected\"");
71 define('__GENDER_C', "");
75 define('__GENDER_M', "");
76 define('__GENDER_F', "");
77 define('__GENDER_C', " selected=\"selected\"");
80 define('__SURNAME' , $DATA['surname']);
81 define('__FAMILY' , $DATA['family']);
82 define('__STREET1' , $DATA['street_nr1']);
83 define('__STREET2' , $DATA['street_nr2']);
84 define('__ZIP' , $DATA['zip']);
85 define('__CITY' , $DATA['city']);
86 define('__COUNTRY' , $DATA['country']);
88 define('__PHONE' , $DATA['phone']);
89 define('__FAX' , $DATA['fax']);
90 define('__CELL' , $DATA['cell']);
91 define('__EMAIL' , $DATA['email']);
92 define('__URL' , $DATA['url']);
93 // Warning because low points
94 define('__REC_WARNING', ADD_SELECTION("yn", $DATA['receive_warnings'], "receive_warning"));
95 define('__INTERVAL' , CREATE_TIME_SELECTIONS($DATA['warning_interval'], "warning_interval", "MWDh"));
97 // Init variables here
98 $TPL = sprintf("admin_edit_sponsor_%s", SQL_ESCAPE($_GET['mode']));
102 if ((isset($_POST['ok'])) || (isset($_POST['edit']))) {
103 // Perform action on mode
104 switch ($_GET['mode'])
106 case "add_points": // Add points
107 if (strval($_POST['points']) > 0) {
108 // Replace german decimal comma with computer's decimal dot
109 $POINTS = strval(REVERT_COMMA($_POST['points']));
111 // Add points to account
112 $result_add = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_sponsor_data SET points_amount=points_amount+%s WHERE id='%s' LIMIT 1",
113 array($POINTS, bigintval($_GET['id'])), __FILE__, __LINE__);
115 // Remember points /reason for the template
116 define('__POINTS' , TRANSLATE_COMMA($POINTS));
117 define('__REASON' , $_POST['reason']);
120 $msg = LOAD_EMAIL_TEMPLATE("sponsor_add_points", $_POST['reason'], true);
121 SEND_EMAIL(__EMAIL, SPONSOR_ADMIN_ADD_POINTS, $msg);
122 $MSG = ADMIN_SPONSOR_POINTS_ADDED;
124 // No points entered to add!
125 $MSG = ADMIN_SPONSPOR_NO_POINTS_TO_ADD;
129 case "sub_points": // Subtract points
130 if (strval($_POST['points']) > 0) {
131 // Replace german decimal comma with computer's decimal dot
132 $POINTS = strval(REVERT_COMMA($_POST['points']));
134 // Add points to account
135 $result_add = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_sponsor_data SET points_used=points_used+%s WHERE id='%s' LIMIT 1",
136 array($POINTS, bigintval($_GET['id'])), __FILE__, __LINE__);
138 // Remember points /reason for the template
139 define('__POINTS' , TRANSLATE_COMMA($POINTS));
140 define('__REASON' , $_POST['reason']);
143 $msg = LOAD_EMAIL_TEMPLATE("sponsor_sub_points", $_POST['reason'], true);
144 SEND_EMAIL(__EMAIL, SPONSOR_ADMIN_SUB_POINTS, $msg);
145 $MSG = ADMIN_SPONSOR_POINTS_SUBTRACTED;
147 // No points entered to add!
148 $MSG = ADMIN_SPONSPOR_NO_POINTS_TO_SUBTRACT;
152 case "edit": // Edit sponsor account
154 if (($_POST['pass1'] != $_POST['pass2']) || ((empty($_POST['pass1'])) && (empty($_POST['pass1'])))) {
156 unset($_POST['pass1']);
157 unset($_POST['pass2']);
160 SPONSOR_HANDLE_SPONSOR($_POST);
162 // Convert some data for the email template
163 $_POST['gender'] = TRANSLATE_GENDER($_POST['gender']);
164 $_POST['warning_interval'] = CREATE_FANCY_TIME($_POST['warning_interval']);
165 if (!$PASS) $_POST['pass1'] = SPONSOR_PASS_UNCHANGED;
167 // Load email template and send the mail away
168 $msg = LOAD_EMAIL_TEMPLATE("admin_sponsor_edit", $_POST, false);
169 SEND_EMAIL($_POST['email'], SPONSOR_ADMIN_EDIT_SUBJECT, $msg);
172 default: // Unknown mode
173 DEBUG_LOG(__FILE__, __LINE__, sprintf("Unknown mode %s detected.", $_GET['mode']));
174 $MSG = ADMIN_INVALID_MODE_1.SQL_ESCAPE($_GET['mode']).ADMIN_INVALID_MODE_2;
180 LOAD_TEMPLATE("admin_settings_saved", false, $MSG);
182 } elseif (FILE_READABLE(sprintf("%stemplates/%s/html/admin/%s.tpl", PATH, GET_LANGUAGE(), $TPL))) {
183 // Create mailto link
184 define('__SPONSOR_VALUE', "<A href=\"mailto:".__EMAIL."\">".__SURNAME." ".__FAMILY."</A>");
186 // Load mode template
189 // Template not found!
190 LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_TPL_404_1.SQL_ESCAPE($_GET['mode']).ADMIN_TPL_404_2);
193 // Sponsor not found!
194 LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_SPONSOR_404_1.bigintval($_GET['id']).ADMIN_SPONSOR_404_2);
197 // Not called by what-list_sponsor.php
198 LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_CALL_NOT_DIRECTLY);