<?php
/************************************************************************
- * MXChange v0.2.1 Start: 10/16/2003 *
- * =============== Last change: 06/30/2004 *
+ * Mailer v0.2.1-FINAL Start: 10/16/2003 *
+ * =================== Last change: 06/30/2004 *
* *
* -------------------------------------------------------------------- *
* File : what-mydata.php *
* $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 - 2009 by Roland Haeder *
- * For more information visit: http://www.mxchange.org *
+ * Copyright (c) 2009 - 2012 by Mailer Developer Team *
+ * For more information visit: http://mxchange.org *
* *
* 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 *
// Some security stuff...
if (!defined('__SECURITY')) {
- die();
+ exit();
} elseif (!isMember()) {
redirectToIndexMemberOnlyModule();
}
// Add description as navigation point
-addMenuDescription('member', __FILE__);
+addYouAreHereLink('member', __FILE__);
if ((!isExtensionActive('mydata')) && (!isAdmin())) {
- loadTemplate('admin_settings_saved', false, generateExtensionInactiveNotInstalledMessage('mydata'));
+ displayMessage('{%pipe,generateExtensionInactiveNotInstalledMessage=mydata%}');
return;
} // END - if
-// Remember userid
-$content['userid'] = getUserId();
+// Add userid
+$content = array();
// Init variable to prevent notices
-$URL = '';
+$url = '';
// Detect what the member wants to do
$mode = 'show'; // Show his data
if (isPostRequestElementSet('save')) $mode = 'save'; // Save entered data
-if (isPostRequestElementSet('edit')) $mode = 'edit'; // Edit data
+if (isFormSent('edit')) $mode = 'edit'; // Edit data
if (isPostRequestElementSet('notify')) $mode = 'notify'; // Switch off notification
switch ($mode) {
case 'show': // Show his data
- if (isExtensionActive('country', true)) {
- // New way 0 1 2 3 4 5 6 7 8 9 10 11 12 13
- $result = SQL_QUERY_ESC("SELECT surname, family, street_nr, country_code, zip, city, email, birth_day, birth_month, birth_year, gender, max_mails, receive_mails, last_update FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1",
- array(getUserId()), __FILE__, __LINE__);
- } else {
- // Old way 0 1 2 3 4 5 6 7 8 9 10 11 12 13
- $result = SQL_QUERY_ESC("SELECT surname, family, street_nr, country, zip, city, email, birth_day, birth_month, birth_year, gender, max_mails, receive_mails, last_update FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1",
- array(getUserId()), __FILE__, __LINE__);
- }
- $content = SQL_FETCHARRAY($result, 0, false);
- SQL_FREERESULT($result);
+ // Get line
+ $content = merge_array($content, getUserDataArray());
// Translate some things
- $content['gender'] = translateGender($content['gender']);
- $content['last_update'] = generateDateTime($content['last_update'], '0');
+ $content['last_update'] = generateDateTime($content['last_update'], 0);
// How far is last change on his profile away from now?
- if ((($content['last_update'] + getConfig('profile_lock')) > time()) && (!isAdmin()) && (getConfig('profile_lock') > 0)) {
+ if ((($content['last_update'] + getProfileLock()) > time()) && (!isAdmin()) && (getProfileLock() > 0)) {
// You cannot change your account
- $content['change'] = loadTemplate('admin_settings_saved', true, "<div class=\"member_failed\">".sprintf(getMessage('MEMBER_PROFILE_LOCKED'), generateDateTime($content['last_update'] + getConfig('profile_lock'), '0'))."</div>");
+ $content['change'] = displayMessage('<div class="notice">{%message,MEMBER_PROFILE_LOCKED=' . generateDateTime($content['last_update'] + getProfileLock(), 0) . '%}</div>', true);
} else {
// He is allowed to change his profile
$content['change'] = loadTemplate('member_mydata_button', true);
$content['country'] = generateCountryInfo($content['country_code']);
} // END - if
- // Merge data in
- $content = merge_array($content, $content);
-
// Load template
loadTemplate('member_mydata_overview', false, $content);
break;
case 'edit': // Edit data
if (isExtensionActive('country', true)) {
- // New way 0 1 2 3 4 5 6 7 8 9 10 11 12 13
- $result = SQL_QUERY_ESC("SELECT `surname`, `family`, `street_nr`, `country_code`, `zip`, `city`, `email`, `birth_day`, `birth_month`, `birth_year`, `gender`, `max_mails`, `receive_mails`, `last_update`
+ // New way
+ $result = SQL_QUERY_ESC("SELECT
+ `surname`,
+ `family`,
+ `street_nr`,
+ `country_code`,
+ `zip`,
+ `city`,
+ `email`,
+ `birth_day`,
+ `birth_month`,
+ `birth_year`,
+ `gender`,
+ `max_mails`,
+ `receive_mails`,
+ `last_update`
FROM
`{?_MYSQL_PREFIX?}_user_data`
WHERE
`userid`=%s
LIMIT 1",
- array(getUserId()), __FILE__, __LINE__);
+ array(getMemberId()), __FILE__, __LINE__);
} else {
- // Old way 0 1 2 3 4 5 6 7 8 9 10 11 12 13
- $result = SQL_QUERY_ESC("SELECT `surname`, `family`, `street_nr`, `country`, `zip`, `city`, `email`, `birth_day`, `birth_month`, `birth_year`, `gender`, `max_mails`, `receive_mails`, `last_update`
+ // Old way
+ $result = SQL_QUERY_ESC("SELECT
+ `surname`,
+ `family`,
+ `street_nr`,
+ `country`,
+ `zip`,
+ `city`,
+ `email`,
+ `birth_day`,
+ `birth_month`,
+ `birth_year`,
+ `gender`,
+ `max_mails`,
+ `receive_mails`,
+ `last_update`
FROM
`{?_MYSQL_PREFIX?}_user_data`
WHERE
`userid`=%s
LIMIT 1",
- array(getUserId()), __FILE__, __LINE__);
+ array(getMemberId()), __FILE__, __LINE__);
}
- $content = SQL_FETCHARRAY($result, 0, false);
+ // Get line
+ $content = merge_array($content, SQL_FETCHARRAY($result));
+
+ // Free result
SQL_FREERESULT($result);
- $content['update_check'] = $content['last_update'] + getConfig('profile_lock');
+
+ $content['update_check'] = $content['last_update'] + getProfileLock();
// How far is last change on his profile away from now?
- if (($content['update_check'] > time()) && (!isAdmin()) && (getConfig('profile_lock') > 0)) {
- $content['update_check'] = generateDateTime($content['update_check'] + getConfig('profile_lock'), '0');
+ if (($content['update_check'] > time()) && (!isAdmin()) && (getProfileLock() > 0)) {
+ // Profile is locked, so output propper message
+ $content['update_check'] = '{%message,MEMBER_PROFILE_LOCKED=' . generateDateTime($content['update_check'] + getProfileLock(), '0') . '%}';
+
// You cannot change your account
- loadTemplate('member_mydata_locked', false, $content);
+ displayMessage($content['update_check']);
} else {
- // He is allowed to change his profile
- foreach (array('gender_m','gender_f','gender_c') as $entry) {
- $content[$entry] = '';
- } // END - foreach
-
- $content['gender_' . strtolower($content['gender'])] = ' selected="selected"';
+ // Init elements
$content['dob'] = '';
switch (getLanguage()) {
break;
} // END - if
- $content['max_receive_list'] = addMaxReceiveList('member', $content['max_mails'], true);
+ $content['max_receive_list'] = addMaxReceiveList('member', $content['max_mails']);
if (isExtensionActive('country')) {
- // Generate selection box
- $OUT = "<select name=\"country_code\" class=\"member_select\" size=\"1\">\n";
+ // Init WHERE statement
$whereStatement = "WHERE `is_active`='Y'";
if (isAdmin()) $whereStatement = '';
- $OUT .= generateOptionList('countries', 'id', 'descr', $content['country_code'], 'code', $whereStatement);
- $OUT .= "</select>";
+
+ // Generate selection box
+ $OUT = '<select name="country_code" class="form_select" size="1">';
+ $OUT .= generateOptions('countries', 'id', 'descr', $content['country_code'], 'code', $whereStatement);
+ $OUT .= '</select>';
$content['country'] = $OUT;
} else {
// Ouput default input box
- $content['country'] = "<input type=\"text\" name=\"cntry\" class=\"member_normal\" size=\"2\" maxlength=\"3\" value=\"".$content['country']."\" />";
+ $content['country'] = '<input type="text" name="cntry" class="form_field" size="2" maxlength="3" value="' . $content['country'] . '" />';
}
- // Merge data in
- $content = merge_array($content, $content);
-
// Load template
loadTemplate('member_mydata_edit', false, $content);
}
break;
case 'save': // Save entered data
- // Load old email / password: 0 1 2
- $result = SQL_QUERY_ESC("SELECT `email`, `password`, `last_update` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE `userid`=%s LIMIT 1",
- array(getUserId()), __FILE__, __LINE__);
- $content = SQL_FETCHARRAY($result, 0, false);
- SQL_FREERESULT($result);
- $content['last_change'] = $content['last_update'] + getConfig('profile_lock');
+ // Get line
+ $content = merge_array($content, getUserDataArray());
+
+ // Calculate time to check
+ $content['update_check'] = $content['last_update'] + getProfileLock();
// How far is last change on his profile away from now?
- if (($content['last_change'] > time()) && (!isAdmin()) && (getConfig('profile_lock') > 0)) {
- $content['last_change'] = generateDateTime($content['last_change'] + getConfig('profile_lock'), '0');
+ if (($content['update_check'] > time()) && (!isAdmin()) && (getProfileLock() > 0)) {
// You cannot change your account
- loadTemplate('member_mydata_locked');
+ $content['update_check'] = generateDateTime($content['update_check'] + getProfileLock(), 0);
+
+ displayMessage($content['update_check']);
} elseif ((!isEmailValid(postRequestElement('email'))) && (!isAdmin())) {
// Invalid email address!
- loadTemplate('admin_settings_saved', false, getMessage('INVALID_EMAIL_ADDRESS_ENTERED'));
+ displayMessage('{--INVALID_EMAIL_ENTERED--}');
+ } elseif ((isEmailTaken(postRequestElement('email'))) && (isCheckDoubleEmailEnabled()) && (!isAdmin())) {
+ // Email address is already registered
+ displayMessage('{--MEMBER_EMAIL_IS_ALREADY_REGISTERED--}');
} else {
// Generate hash
$hash = generateHash(postRequestElement('pass1'), substr($content['password'], 0, -40));
if ((($hash == $content['password']) || (postRequestElement('pass1') == postRequestElement('pass2'))) && (isPostRequestElementSet('pass1'))) {
// Only on simple changes normal mode is active = no email or password changed
- $mode = 'normal'; $AND = '';
+ $mode = 'normal';
+ $AND = '';
// Did the user changed the password?
- if ($hash != $content['password']) { $AND = ", `password`='".$hash."'"; $mode = 'pass'; }
+ if ($hash != $content['password']) {
+ $AND = ",`password`='" . $hash . "'";
+ $mode = 'password';
+ } // END - if
// Or did he changed his password?
if (postRequestElement('email') != $content['email']) {
} else {
$mode .= ';email';
}
- setRequestPostElement('old_email', $content['email']);
+ setPostRequestElement('old_email', $content['email']);
} // END - if
// Update member's profile
SQL_QUERY_ESC("UPDATE
`{?_MYSQL_PREFIX?}_user_data`
SET
- `gender`='%s', `surname`='%s', `family`='%s',
+ `gender`='%s',
+ `surname`='%s',
+ `family`='%s',
`street_nr`='%s',
- `country_code`=%s, `zip`=%s, `city`='%s',
+ `country_code`=%s,
+ `zip`=%s,
+ `city`='%s',
`email`='%s',
- `birth_day`=%s, `birth_month`=%s, `birth_year`=%s,
+ `birth_day`=%s,
+ `birth_month`=%s,
+ `birth_year`=%s,
`max_mails`='%s',
`last_update`=UNIX_TIMESTAMP()".$AND.",
`notified`='N',
bigintval(postRequestElement('month')),
bigintval(postRequestElement('year')),
bigintval(postRequestElement('max_mails')),
- getUserId()
+ getMemberId()
), __FILE__, __LINE__);
} else {
// Old way
SQL_QUERY_ESC("UPDATE
`{?_MYSQL_PREFIX?}_user_data`
SET
- `gender`='%s', `surname`='%s', `family`='%s',
+ `gender`='%s',
+ `surname`='%s',
+ `family`='%s',
`street_nr`='%s',
- `country`='%s', `zip`=%s, `city`='%s',
+ `country`='%s',
+ `zip`=%s,
+ `city`='%s',
`email`='%s',
- `birth_day`=%s, `birth_month`=%s, `birth_year`=%s,
+ `birth_day`=%s,
+ `birth_month`=%s,
+ `birth_year`=%s,
`max_mails`='%s',
`last_update`=UNIX_TIMESTAMP()".$AND.",
`notified`='N',
bigintval(postRequestElement('month')),
bigintval(postRequestElement('year')),
bigintval(postRequestElement('max_mails')),
- getUserId()
+ getMemberId()
), __FILE__, __LINE__);
}
// Did something change?
- if (SQL_AFFECTEDROWS() == 1) {
+ if (!SQL_HASZEROAFFECTED()) {
// Get all modes ...
$modes = explode(';', $mode);
sendModeMails ('mydata', $modes);
} else {
// Something went wrong
- loadTemplate('admin_settings_saved', false, getMessage('MEMBER_UPDATE_FAILED'));
+ displayMessage('{--MEMBER_UPDATE_FAILED--}');
}
} else {
// Entered wrong pass for updating profile
- loadTemplate('admin_settings_saved', false, getMessage('MEBER_UPDATE_PWD_WRONG'));
+ displayMessage('{--MEBER_UPDATE_PWD_WRONG--}');
}
}
break;
case 'notify': // Switch off notfication
- SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `notified`='N', `last_update`=UNIX_TIMESTAMP() WHERE `userid`=%s LIMIT 1",
- array(getUserId()), __FILE__, __LINE__);
- $URL = 'modules.php?module=login&what=welcome&code=' . urlencode(getMessage('PROFILE_UPDATED'));
+ SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `notified`='N',`last_update`=UNIX_TIMESTAMP() WHERE `userid`=%s LIMIT 1",
+ array(getMemberId()), __FILE__, __LINE__);
+ $url = 'modules.php?module=login&what=mydata&code=' . getCode('PROFILE_UPDATED');
break;
} // END - switch
-if (!empty($URL)) {
+if (!empty($url)) {
// Load generated URL
- redirectToUrl($URL);
+ redirectToUrl($url);
} // END - if
// [EOF]