<?php
/************************************************************************
- * MXChange v0.2.1 Start: 04/24/2005 *
- * =============== Last change: 05/18/2008 *
+ * Mailer v0.2.1-FINAL Start: 04/24/2005 *
+ * =================== Last change: 05/12/2005 *
* *
* -------------------------------------------------------------------- *
* File : what-edit_sponsor.php *
* -------------------------------------------------------------------- *
* Kurzbeschreibung : Sponsorenaccount aendern *
* -------------------------------------------------------------------- *
- * *
+ * $Revision:: $ *
+ * $Date:: $ *
+ * $Tag:: 0.2.1-FINAL $ *
+ * $Author:: $ *
+ * Needs to be in all Files and every File needs "svn propset *
+ * svn:keywords Date Revision" (autoprobset!) at least!!!!!! *
* -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder *
+ * Copyright (c) 2003 - 2009 by Roland Haeder *
+ * Copyright (c) 2009, 2010 by Mailer Developer Team *
* For more information visit: http://www.mxchange.org *
* *
- * This program is free software. You can redistribute it and/or modify *
+ * 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 *
- * the Free Software Foundation; either version 2 of the License. *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
************************************************************************/
// 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);
+if ((!defined('__SECURITY')) || (!isAdmin())) {
+ die();
}
// Add description as navigation point
-ADD_DESCR("admin", basename(__FILE__));
+addMenuDescription('admin', __FILE__);
-if ((!empty($HTTP_GET_VARS['id'])) && (!empty($HTTP_GET_VARS['mode'])))
-{
+if ((isGetRequestParameterSet('id')) && (isGetRequestParameterSet('mode'))) {
// Check for selected sponsor
- $result = SQL_QUERY_ESC("SELECT company, position, salut, 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",
- array($HTTP_GET_VARS['id']), __FILE__, __LINE__);
- if (SQL_NUMROWS($result) == 1)
- {
+ $result_main = 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",
+ array(bigintval(getRequestParameter('id'))), __FILE__, __LINE__);
+ if (SQL_NUMROWS($result_main) == 1) {
// Load sponsor details
- $DATA = SQL_FETCHARRAY($result);
- SQL_FREERESULT($result);
+ $content = SQL_FETCHARRAY($result_main);
// Prepare all data for the template
- // Sponsor's ID
- define('__SPONSOR_ID' , $HTTP_GET_VARS['id']);
- // Company's data
- define('__COMPANY' , $DATA['company']);
- define('__POSITION' , $DATA['position']);
- define('__TAX_IDENT' , $DATA['tax_ident']);
- // Personal data
- switch ($DATA['salut'])
- {
- case "M":
- define('__SALUT_M', " selected");
- define('__SALUT_F', "");
- define('__SALUT_C', "");
- break;
-
- case "F":
- define('__SALUT_M', "");
- define('__SALUT_F', " selected");
- define('__SALUT_C', "");
- break;
-
- case "C":
- define('__SALUT_M', "");
- define('__SALUT_F', "");
- define('__SALUT_C', " selected");
- break;
- }
- define('__SURNAME' , $DATA['surname']);
- define('__FAMILY' , $DATA['family']);
- define('__STREET1' , $DATA['street_nr1']);
- define('__STREET2' , $DATA['street_nr2']);
- define('__ZIP' , $DATA['zip']);
- define('__CITY' , $DATA['city']);
- define('__COUNTRY' , $DATA['country']);
- // Contact data
- define('__PHONE' , $DATA['phone']);
- define('__FAX' , $DATA['fax']);
- define('__CELL' , $DATA['cell']);
- define('__EMAIL' , $DATA['email']);
- define('__URL' , $DATA['url']);
+ // Sponsor's id
+ $content['id'] = bigintval(getRequestParameter('id'));
+
+ // Init gender
+ foreach (array('m', 'f', 'c') as $gender) {
+ $content['gender_' . $gender] = '';
+ } // END - foreach
+
+ // Check for gender selection
+ $content['gender_' . strtolower($content['gender'])] = ' selected="selected"';
+
// Warning because low points
- define('__REC_WARNING', ADD_SELECTION("yn", $DATA['receive_warnings'], "receive_warning"));
- define('__INTERVAL' , CREATE_TIME_SELECTIONS($DATA['warning_interval'], "warning_interval", "MWDh"));
+ $content['receive_warnings'] = addSelectionBox('yn', $content['receive_warnings'], 'receive_warning');
+ $content['warning_interval'] = createTimeSelections($content['warning_interval'], 'warning_interval', 'MWDh');
+
+ // Init variables here
+ $TPL = sprintf("admin_edit_sponsor_%s", getRequestParameter('mode'));
+ initSqls();
// Sponsor was found
- $TPL = "admin_edit_sponsor_".$HTTP_GET_VARS['mode']; $SQLs = array();
- if ((isset($HTTP_POST_VARS['ok'])) || (isset($HTTP_POST_VARS['edit'])))
- {
+ if ((isFormSent()) || (isFormSent('edit'))) {
// Perform action on mode
- switch ($HTTP_GET_VARS['mode'])
- {
- case "add_points": // Add points
- if (strval($HTTP_POST_VARS['points']) > 0)
- {
- // Replace german decimal comma with computer's decimal dot
- $POINTS = strval(str_replace(",", ".", $HTTP_POST_VARS['points']));
-
- // Add points to account
- $result_add = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_sponsor_data SET points_amount=points_amount+%s WHERE id='%s' LIMIT 1",
- array($POINTS, bigintval($HTTP_GET_VARS['id'])), __FILE__, __LINE__);
-
- // Remember points /reason for the template
- define('__POINTS' , TRANSLATE_COMMA($POINTS));
- define('__REASON' , $HTTP_POST_VARS['reason']);
-
- // Send email
- $msg = LOAD_EMAIL_TEMPLATE("sponsor_add_points", $HTTP_POST_VARS['reason'], true);
- SEND_EMAIL(__EMAIL, SPONSOR_ADMIN_ADD_POINTS, $msg);
- $MSG = ADMIN_SPONSOR_POINTS_ADDED;
- }
- else
- {
- // No points entered to add!
- $MSG = ADMIN_SPONSPOR_NO_POINTS_TO_ADD;
- }
- break;
-
- case "sub_points": // Subtract points
- if (strval($HTTP_POST_VARS['points']) > 0)
- {
- // Replace german decimal comma with computer's decimal dot
- $POINTS = strval(str_replace(",", ".", $HTTP_POST_VARS['points']));
-
- // Add points to account
- $result_add = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_sponsor_data SET points_used=points_used+%s WHERE id='%s' LIMIT 1",
- array($POINTS, bigintval($HTTP_GET_VARS['id'])), __FILE__, __LINE__);
-
- // Remember points /reason for the template
- define('__POINTS' , TRANSLATE_COMMA($POINTS));
- define('__REASON' , $HTTP_POST_VARS['reason']);
-
- // Send email
- $msg = LOAD_EMAIL_TEMPLATE("sponsor_sub_points", $HTTP_POST_VARS['reason'], true);
- SEND_EMAIL(__EMAIL, SPONSOR_ADMIN_SUB_POINTS, $msg);
- $MSG = ADMIN_SPONSOR_POINTS_SUBTRACTED;
- }
- else
- {
- // No points entered to add!
- $MSG = ADMIN_SPONSPOR_NO_POINTS_TO_SUBTRACT;
- }
- break;
-
- case "edit": // Edit sponsor account
- $PASS = true;
- if (($HTTP_POST_VARS['pass1'] != $HTTP_POST_VARS['pass2']) || ((empty($HTTP_POST_VARS['pass1'])) && (empty($HTTP_POST_VARS['pass1']))))
- {
- // Remove passwords
- unset($HTTP_POST_VARS['pass1']);
- unset($HTTP_POST_VARS['pass2']);
- $PASS = false;
- }
- SPONSOR_HANDLE_SPONSOR($HTTP_POST_VARS);
-
- // Convert some data for the email template
- $HTTP_POST_VARS['salut'] = TRANSLATE_SEX($HTTP_POST_VARS['salut']);
- $HTTP_POST_VARS['warning_interval'] = CREATE_FANCY_TIME($HTTP_POST_VARS['warning_interval']);
- if (!$PASS) $HTTP_POST_VARS['pass1'] = SPONSOR_PASS_UNCHANGED;
-
- // Load email template and send the mail away
- $msg = LOAD_EMAIL_TEMPLATE("admin_sponsor_edit", $HTTP_POST_VARS, false);
- SEND_EMAIL($HTTP_POST_VARS['email'], SPONSOR_ADMIN_EDIT_SUBJECT, $msg);
- break;
-
- default: // Unknown mode
- $MSG = ADMIN_INVALID_MODE_1.$HTTP_GET_VARS['mode'].ADMIN_INVALID_MODE_2;
- break;
+ switch (getRequestParameter('mode')) {
+ case 'add_points': // Add points
+ if (bigintval(postRequestParameter('points')) > 0) {
+ // Replace german decimal comma with computer's decimal dot
+ $points = bigintval(convertCommaToDot(postRequestParameter('points')));
+
+ // Add points to account
+ SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_sponsor_data` SET `points_amount`=`points_amount`+%s WHERE `id`='%s' LIMIT 1",
+ array($points, bigintval(getRequestParameter('id'))), __FILE__, __LINE__);
+
+ // Remember points /reason for the template
+ $content['points'] = $points;
+ $content['reason'] = secureString(postRequestParameter('reason'));
+
+ // Send email
+ $message = loadEmailTemplate('sponsor_add_points', $content);
+ sendEmail($content['email'], '{--ADMIN_SPONSOR_ADD_POINTS_SUBJECT--}', $message);
+ $message = '{--ADMIN_SPONSOR_POINTS_ADDED--}';
+ } else {
+ // No points entered to add!
+ $message = '{--ADMIN_SPONSPOR_NO_POINTS_TO_ADD--}';
+ }
+ break;
+
+ case 'sub_points': // Subtract points
+ if (bigintval(postRequestParameter('points')) > 0) {
+ // Replace german decimal comma with computer's decimal dot
+ $points = bigintval(convertCommaToDot(postRequestParameter('points')));
+
+ // Add points to account
+ SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_sponsor_data` SET `points_used`=`points_used`+%s WHERE `id`='%s' LIMIT 1",
+ array($points, bigintval(getRequestParameter('id'))), __FILE__, __LINE__);
+
+ // Remember points /reason for the template
+ $content['points'] = $points;
+ $content['reason'] = secureString(postRequestParameter('reason'));
+
+ // Send email
+ $message = loadEmailTemplate('sponsor_sub_points', $content);
+ sendEmail($content['email'], '{--ADMIN_SPONSOR_SUB_POINTS_SUBJECT--}', $message);
+ $message = '{--ADMIN_SPONSOR_POINTS_SUBTRACTED--}';
+ } else {
+ // No points entered to add!
+ $message = '{--ADMIN_SPONSPOR_NO_POINTS_TO_SUBTRACT--}';
+ }
+ break;
+
+ case 'edit': // Edit sponsor account
+ $PASS = true;
+ if ((postRequestParameter('pass1') != postRequestParameter('pass2')) || ((!isPostRequestParameterSet('pass1')) && (!isPostRequestParameterSet('pass1')))) {
+ // Remove passwords
+ unsetPostRequestParameter('pass1');
+ unsetPostRequestParameter('pass2');
+ $PASS = false;
+ } // END - if
+
+ // Convert time selection
+ $DATA = array(); $id = 'warning_interval_ye'; $skip = false;
+ convertSelectionsToTimestamp(postRequestArray(), $DATA, $id, $skip);
+
+ // Save the sponsor
+ handlSponsorRequest(postRequestArray());
+
+ // Convert some data for the email template
+ postRequestParameter('gender' , translateGender(postRequestParameter('gender')));
+ postRequestParameter('warning_interval', createFancyTime(postRequestParameter('warning_interval')));
+
+ if ($PASS === false) setPostRequestParameter('pass1', '{--SPONSOR_PASS_UNCHANGED--}');
+
+ // Load email template and send the mail away
+ $message = loadEmailTemplate('admin_sponsor_edit', postRequestArray(), false);
+ sendEmail(postRequestParameter('email'), '{--ADMIN_SPONSOR_EDIT_SUBJECT--}', $message);
+ break;
+
+ default: // Unknown mode
+ logDebugMessage(__FILE__, __LINE__, sprintf("Unknown mode %s detected.", getRequestParameter('mode')));
+ $message = getMaskedMessage('ADMIN_SPONSOR_INVALID_MODE', getRequestParameter('mode'));
+ break;
}
- if (!empty($MSG))
- {
+ if (!empty($message)) {
// Output message
- LOAD_TEMPLATE("admin_settings_saved", false, $MSG);
- }
- }
- elseif (file_exists(PATH."templates/".GET_LANGUAGE()."/html/admin/".$TPL.".tpl"))
- {
+ loadTemplate('admin_settings_saved', false, $message);
+ } // END - if
+ } elseif (isFileReadable(sprintf("%stemplates/%s/html/admin/%s.tpl", getPath(), getLanguage(), $TPL))) {
// Create mailto link
- define('__SPONSOR_VALUE', "<A href=\"mailto:".__EMAIL."\">".__SURNAME." ".__FAMILY."</A>");
+ $content['contact'] = '<a href="' . generateEmailLink($content['email'], 'sponsor_data') . '">' . $content['surname'] . ' ' . $content['family'] . '</a>';
// Load mode template
- LOAD_TEMPLATE($TPL);
- }
- else
- {
+ loadTemplate($TPL);
+ } else {
// Template not found!
- LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_TPL_404_1.$HTTP_GET_VARS['mode'].ADMIN_TPL_404_2);
+ loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_SPONSOR_MODUS_TPL_404', getRequestParameter('mode')));
}
- }
- else
- {
+ } else {
// Sponsor not found!
- LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_SPONSOR_404_1.$HTTP_GET_VARS['id'].ADMIN_SPONSOR_404_2);
+ loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_SPONSOR_404', bigintval(getRequestParameter('id'))));
}
-}
- else
-{
+
+ // Free result
+ SQL_FREERESULT($result_main);
+} else {
// Not called by what-list_sponsor.php
- LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_CALL_NOT_DIRECTLY);
+ loadTemplate('admin_settings_saved', false, '{--ADMIN_CALL_NOT_DIRECTLY--}');
}
-//
+// [EOF]
?>