<?php
/************************************************************************
- * M-XChange v0.2.1 Start: 04/24/2005 *
- * ================ Last change: 05/12/2005 *
+ * Mailer v0.2.1-FINAL Start: 04/24/2005 *
+ * =================== Last change: 05/12/2005 *
* *
* -------------------------------------------------------------------- *
* File : what-edit_sponsor.php *
* 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 *
* For more information visit: http://www.mxchange.org *
* *
* This program is free software; you can redistribute it and/or modify *
************************************************************************/
// Some security stuff...
-if ((!defined('__SECURITY')) || (!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', __FILE__);
+addMenuDescription('admin', __FILE__);
-if ((REQUEST_ISSET_GET(('id'))) && (REQUEST_ISSET_GET(('mode')))) {
+if ((isGetRequestElementSet('id')) && (isGetRequestElementSet('mode'))) {
// Check for selected sponsor
- $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",
- array(bigintval(REQUEST_GET('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(getRequestElement('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' , bigintval(REQUEST_GET('id')));
- // Company's data
- define('__COMPANY' , $DATA['company']);
- define('__POSITION' , $DATA['position']);
- define('__TAX_IDENT' , $DATA['tax_ident']);
- // Personal data
- switch ($DATA['gender'])
- {
- case "M":
- define('__GENDER_M', " selected=\"selected\"");
- define('__GENDER_F', '');
- define('__GENDER_C', '');
- break;
-
- case "F":
- define('__GENDER_M', '');
- define('__GENDER_F', " selected=\"selected\"");
- define('__GENDER_C', '');
- break;
-
- case "C":
- define('__GENDER_M', '');
- define('__GENDER_F', '');
- define('__GENDER_C', " selected=\"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(getRequestElement('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['interval'] = createTimeSelections($content['warning_interval'], 'warning_interval', 'MWDh');
// Init variables here
- $TPL = sprintf("admin_edit_sponsor_%s", REQUEST_GET(('mode')));
- INIT_SQLS();
+ $TPL = sprintf("admin_edit_sponsor_%s", getRequestElement('mode'));
+ initSqls();
// Sponsor was found
- if ((IS_FORM_SENT()) || (REQUEST_ISSET_POST('edit'))) {
+ if ((isFormSent()) || (isPostRequestElementSet('edit'))) {
// Perform action on mode
- switch (REQUEST_GET('mode'))
- {
- case "add_points": // Add points
- if (strval(REQUEST_POST('points')) > 0) {
- // Replace german decimal comma with computer's decimal dot
- $POINTS = strval(REVERT_COMMA(REQUEST_POST('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(REQUEST_GET('id'))), __FILE__, __LINE__);
-
- // Remember points /reason for the template
- define('__POINTS' , TRANSLATE_COMMA($POINTS));
- define('__REASON' , REQUEST_POST('reason'));
-
- // Send email
- $msg = LOAD_EMAIL_TEMPLATE("sponsor_add_points", REQUEST_POST('reason'), true);
- SEND_EMAIL(__EMAIL, ADMIN_SPONSOR_ADD_POINTS_SUBJ, $msg);
- $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 (strval(REQUEST_POST('points')) > 0) {
- // Replace german decimal comma with computer's decimal dot
- $POINTS = strval(REVERT_COMMA(REQUEST_POST('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(REQUEST_GET('id'))), __FILE__, __LINE__);
-
- // Remember points /reason for the template
- define('__POINTS' , TRANSLATE_COMMA($POINTS));
- define('__REASON' , REQUEST_POST('reason'));
-
- // Send email
- $msg = LOAD_EMAIL_TEMPLATE("sponsor_sub_points", REQUEST_POST('reason'), true);
- SEND_EMAIL(__EMAIL, ADMIN_SPONSOR_SUB_POINTS_SUBJ, $msg);
- $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 ((REQUEST_POST('pass1') != REQUEST_POST('pass2')) || ((!REQUEST_ISSET_POST(('pass1'))) && (!REQUEST_ISSET_POST(('pass1'))))) {
- // Remove passwords
- REQUEST_UNSET_POST(('pass1'));
- REQUEST_UNSET_POST(('pass2'));
- $PASS = false;
- }
-
- // Convert time selection
- $DATA = array(); $id = "warning_interval_ye"; $skip = false;
- CONVERT_SELECTIONS_TO_TIMESTAMP(REQUEST_POST_ARRAY(), $DATA, $id, $skip);
-
- // Save the sponsor
- SPONSOR_HANDLE_SPONSOR(REQUEST_POST_ARRAY());
-
- // Convert some data for the email template
- REQUEST_POST('gender' , TRANSLATE_GENDER(REQUEST_POST('gender')));
- REQUEST_POST('warning_interval', CREATE_FANCY_TIME(REQUEST_POST('warning_interval')));
-
- if (!$PASS) REQUEST_SET_POST('pass1', getMessage('SPONSOR_PASS_UNCHANGED'));
-
- // Load email template and send the mail away
- $msg = LOAD_EMAIL_TEMPLATE("admin_sponsor_edit", REQUEST_POST_ARRAY(), false);
- SEND_EMAIL(REQUEST_POST('email'), getMessage('ADMIN_SPONSOR_EDIT_SUBJECT'), $msg);
- break;
-
- default: // Unknown mode
- DEBUG_LOG(__FILE__, __LINE__, sprintf("Unknown mode %s detected.", REQUEST_GET('mode')));
- $message = sprintf(getMessage('ADMIN_SPONSOR_INVALID_MODE'), REQUEST_GET(('mode')));
- break;
+ switch (getRequestElement('mode')) {
+ case 'add_points': // Add points
+ if (bigintval(postRequestElement('points')) > 0) {
+ // Replace german decimal comma with computer's decimal dot
+ $points = bigintval(convertCommaToDot(postRequestElement('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(getRequestElement('id'))), __FILE__, __LINE__);
+
+ // Remember points /reason for the template
+ $content['points'] = translateComma($points);
+ $content['reason'] = secureString(postRequestElement('reason'));
+
+ // Send email
+ $message = loadEmailTemplate('sponsor_add_points', $content);
+ sendEmail($content['email'], getMessage('ADMIN_SPONSOR_ADD_POINTS_SUBJ'), $message);
+ $message = getMessage('ADMIN_SPONSOR_POINTS_ADDED');
+ } else {
+ // No points entered to add!
+ $message = getMessage('ADMIN_SPONSPOR_NO_POINTS_TO_ADD');
+ }
+ break;
+
+ case 'sub_points': // Subtract points
+ if (bigintval(postRequestElement('points')) > 0) {
+ // Replace german decimal comma with computer's decimal dot
+ $points = bigintval(convertCommaToDot(postRequestElement('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(getRequestElement('id'))), __FILE__, __LINE__);
+
+ // Remember points /reason for the template
+ $content['points'] = translateComma($points);
+ $content['reason'] = secureString(postRequestElement('reason'));
+
+ // Send email
+ $message = loadEmailTemplate('sponsor_sub_points', $content);
+ sendEmail($content['email'], getMessage('ADMIN_SPONSOR_SUB_POINTS_SUBJ'), $message);
+ $message = getMessage('ADMIN_SPONSOR_POINTS_SUBTRACTED');
+ } else {
+ // No points entered to add!
+ $message = getMessage('ADMIN_SPONSPOR_NO_POINTS_TO_SUBTRACT');
+ }
+ break;
+
+ case 'edit': // Edit sponsor account
+ $PASS = true;
+ if ((postRequestElement('pass1') != postRequestElement('pass2')) || ((!isPostRequestElementSet('pass1')) && (!isPostRequestElementSet('pass1')))) {
+ // Remove passwords
+ unsetPostRequestElement('pass1');
+ unsetPostRequestElement('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
+ postRequestElement('gender' , translateGender(postRequestElement('gender')));
+ postRequestElement('warning_interval', createFancyTime(postRequestElement('warning_interval')));
+
+ if ($PASS === false) setRequestPostElement('pass1', getMessage('SPONSOR_PASS_UNCHANGED'));
+
+ // Load email template and send the mail away
+ $message = loadEmailTemplate('admin_sponsor_edit', postRequestArray(), false);
+ sendEmail(postRequestElement('email'), getMessage('ADMIN_SPONSOR_EDIT_SUBJECT'), $message);
+ break;
+
+ default: // Unknown mode
+ logDebugMessage(__FILE__, __LINE__, sprintf("Unknown mode %s detected.", getRequestElement('mode')));
+ $message = getMaskedMessage('ADMIN_SPONSOR_INVALID_MODE', getRequestElement('mode'));
+ break;
}
if (!empty($message)) {
// Output message
- LOAD_TEMPLATE('admin_settings_saved', false, $message);
+ loadTemplate('admin_settings_saved', false, $message);
} // END - if
- } elseif (FILE_READABLE(sprintf("%stemplates/%s/html/admin/%s.tpl", constant('PATH'), GET_LANGUAGE(), $TPL))) {
+ } elseif (isFileReadable(sprintf("%stemplates/%s/html/admin/%s.tpl", getConfig('PATH'), 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);
+ loadTemplate($TPL);
} else {
// Template not found!
- LOAD_TEMPLATE('admin_settings_saved', false, sprintf(getMessage('ADMIN_SPONSOR_MODUS_TPL_404'), REQUEST_GET(('mode'))));
+ loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_SPONSOR_MODUS_TPL_404', getRequestElement('mode')));
}
} else {
// Sponsor not found!
- LOAD_TEMPLATE('admin_settings_saved', false, sprintf(getMessage('ADMIN_SPONSOR_404'), bigintval(REQUEST_GET('id'))));
+ loadTemplate('admin_settings_saved', false, getMaskedMessage('ADMIN_SPONSOR_404', bigintval(getRequestElement('id'))));
}
+
+ // Free result
+ SQL_FREERESULT($result_main);
} else {
// Not called by what-list_sponsor.php
- LOAD_TEMPLATE('admin_settings_saved', false, getMessage('ADMIN_CALL_NOT_DIRECTLY'));
+ loadTemplate('admin_settings_saved', false, getMessage('ADMIN_CALL_NOT_DIRECTLY'));
}
-//
+// [EOF]
?>