Zeile 6 | Zeile 6 |
---|
* Website: http://mybb.com * License: http://mybb.com/about/license *
|
* Website: http://mybb.com * License: http://mybb.com/about/license *
|
* $Id: member.php 5465 2011-05-16 20:11:06Z jammerx2 $
| * $Id$
|
*/
define("IN_MYBB", 1);
| */
define("IN_MYBB", 1);
|
Zeile 14 | Zeile 14 |
---|
define("ALLOWABLE_PAGE", "register,do_register,login,do_login,logout,lostpw,do_lostpw,activate,resendactivation,do_resendactivation,resetpassword");
$nosession['avatar'] = 1;
|
define("ALLOWABLE_PAGE", "register,do_register,login,do_login,logout,lostpw,do_lostpw,activate,resendactivation,do_resendactivation,resetpassword");
$nosession['avatar'] = 1;
|
$templatelist = "member_register,error_nousername,error_nopassword,error_passwordmismatch,error_invalidemail,error_usernametaken,error_emailmismatch,error_noemail,redirect_registered"; $templatelist .= ",redirect_loggedout,login,redirect_loggedin,error_invalidusername,error_invalidpassword,member_profile_email,member_profile_offline,member_profile_reputation,member_profile_warn,member_profile_warninglevel,member_profile_customfields_field,member_profile_customfields,member_profile_adminoptions,member_profile,member_login,member_profile_online,member_profile_modoptions,member_profile_signature,member_profile_groupimage,member_profile_referrals";
| $templatelist = "member_register,member_register_hiddencaptcha,member_coppa_form,member_register_coppa,member_register_agreement_coppa,member_register_agreement,usercp_options_tppselect,usercp_options_pppselect,member_register_referrer,member_register_customfield,member_register_requiredfields,member_register_password,member_activate,member_resendactivation,member_lostpw"; $templatelist .= ",member_resetpassword,member_loggedin_notice,member_profile_away,member_emailuser,member_register_regimage,member_register_regimage_recaptcha,post_captcha_hidden,post_captcha,post_captcha_recaptcha"; $templatelist .= ",member_profile_email,member_profile_offline,member_profile_reputation,member_profile_warn,member_profile_warninglevel,member_profile_customfields_field,member_profile_customfields,member_profile_adminoptions,member_profile,member_login,member_profile_online,member_profile_modoptions,member_profile_signature,member_profile_groupimage,member_profile_referrals";
|
require_once "./global.php";
require_once MYBB_ROOT."inc/functions_post.php";
| require_once "./global.php";
require_once MYBB_ROOT."inc/functions_post.php";
|
Zeile 80 | Zeile 81 |
---|
if($mybb->input['action'] == "do_register" && $mybb->request_method == "post") { $plugins->run_hooks("member_do_register_start");
|
if($mybb->input['action'] == "do_register" && $mybb->request_method == "post") { $plugins->run_hooks("member_do_register_start");
|
| // If we have hidden CATPCHA enabled and it's filled, deny registration if($mybb->settings['hiddencaptchaimage']) { $string = $mybb->settings['hiddencaptchaimagefield'];
if($mybb->input[$string] != '') { error($lang->error_spam_deny); } }
|
if($mybb->settings['regtype'] == "randompass") {
| if($mybb->settings['regtype'] == "randompass") {
|
Zeile 115 | Zeile 127 |
---|
"regip" => $session->ipaddress, "longregip" => my_ip2long($session->ipaddress), "coppa_user" => intval($mybb->cookies['coppauser']),
|
"regip" => $session->ipaddress, "longregip" => my_ip2long($session->ipaddress), "coppa_user" => intval($mybb->cookies['coppauser']),
|
| "regcheck1" => $mybb->input['regcheck1'], "regcheck2" => $mybb->input['regcheck2']
|
);
|
);
|
if(isset($mybb->input['regcheck1']) && isset($mybb->input['regcheck2'])) { $user['regcheck1'] = $mybb->input['regcheck1']; $user['regcheck2'] = $mybb->input['regcheck2']; }
| |
// Do we have a saved COPPA DOB? if($mybb->cookies['coppadob'])
| // Do we have a saved COPPA DOB? if($mybb->cookies['coppadob'])
|
Zeile 140 | Zeile 148 |
---|
"subscriptionmethod" => $mybb->input['subscriptionmethod'], "receivepms" => $mybb->input['receivepms'], "pmnotice" => $mybb->input['pmnotice'],
|
"subscriptionmethod" => $mybb->input['subscriptionmethod'], "receivepms" => $mybb->input['receivepms'], "pmnotice" => $mybb->input['pmnotice'],
|
"emailpmnotify" => $mybb->input['emailpmnotify'],
| "pmnotify" => $mybb->input['pmnotify'],
|
"invisible" => $mybb->input['invisible'], "dstcorrection" => $mybb->input['dstcorrection'] );
| "invisible" => $mybb->input['invisible'], "dstcorrection" => $mybb->input['dstcorrection'] );
|
Zeile 154 | Zeile 162 |
---|
$errors = $userhandler->get_friendly_errors(); }
|
$errors = $userhandler->get_friendly_errors(); }
|
if($mybb->settings['captchaimage'] == 1 && function_exists("imagecreatefrompng"))
| if($mybb->settings['captchaimage'])
|
{
|
{
|
$imagehash = $db->escape_string($mybb->input['imagehash']); $imagestring = $db->escape_string(my_strtolower($mybb->input['imagestring'])); $query = $db->simple_select("captcha", "*", "imagehash='$imagehash' AND LOWER(imagestring)='$imagestring'"); $imgcheck = $db->fetch_array($query); if(!$imgcheck['dateline'])
| require_once MYBB_ROOT.'inc/class_captcha.php'; $captcha = new captcha;
if($captcha->validate_captcha() == false)
|
{
|
{
|
$errors[] = $lang->error_regimageinvalid;
| // CAPTCHA validation failed foreach($captcha->get_errors() as $error) { $errors[] = $error; }
|
}
|
}
|
$db->delete_query("captcha", "imagehash='$imagehash'");
| |
}
if(is_array($errors))
| }
if(is_array($errors))
|
Zeile 200 | Zeile 210 |
---|
if($mybb->input['receivepms'] == 1) { $receivepmscheck = "checked=\"checked\"";
|
if($mybb->input['receivepms'] == 1) { $receivepmscheck = "checked=\"checked\"";
|
}
| }
|
if($mybb->input['pmnotice'] == 1) { $pmnoticecheck = " checked=\"checked\""; }
|
if($mybb->input['pmnotice'] == 1) { $pmnoticecheck = " checked=\"checked\""; }
|
if($mybb->input['emailpmnotify'] == 1)
| if($mybb->input['pmnotify'] == 1)
|
{
|
{
|
$emailpmnotifycheck = "checked=\"checked\"";
| $pmnotifycheck = "checked=\"checked\"";
|
}
if($mybb->input['invisible'] == 1)
| }
if($mybb->input['invisible'] == 1)
|
Zeile 237 | Zeile 247 |
---|
else { $user_info = $userhandler->insert_user();
|
else { $user_info = $userhandler->insert_user();
|
| // Invalidate solved captcha if($mybb->settings['captchaimage']) { $captcha->invalidate_captcha(); }
|
if($mybb->settings['regtype'] != "randompass" && !$mybb->cookies['coppauser']) {
| if($mybb->settings['regtype'] != "randompass" && !$mybb->cookies['coppauser']) {
|
Zeile 264 | Zeile 280 |
---|
); $db->insert_query("awaitingactivation", $activationarray); $emailsubject = $lang->sprintf($lang->emailsubject_activateaccount, $mybb->settings['bbname']);
|
); $db->insert_query("awaitingactivation", $activationarray); $emailsubject = $lang->sprintf($lang->emailsubject_activateaccount, $mybb->settings['bbname']);
|
$emailmessage = $lang->sprintf($lang->email_activateaccount, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode);
| switch($mybb->settings['username_method']) { case 0: $emailmessage = $lang->sprintf($lang->email_activateaccount, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode); break; case 1: $emailmessage = $lang->sprintf($lang->email_activateaccount1, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode); break; case 2: $emailmessage = $lang->sprintf($lang->email_activateaccount2, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode); break; default: $emailmessage = $lang->sprintf($lang->email_activateaccount, $user_info['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user_info['uid'], $activationcode); break; }
|
my_mail($user_info['email'], $emailsubject, $emailmessage); $lang->redirect_registered_activation = $lang->sprintf($lang->redirect_registered_activation, $mybb->settings['bbname'], $user_info['username']);
|
my_mail($user_info['email'], $emailsubject, $emailmessage); $lang->redirect_registered_activation = $lang->sprintf($lang->redirect_registered_activation, $mybb->settings['bbname'], $user_info['username']);
|
$plugins->run_hooks("member_do_register_end");
| $plugins->run_hooks("member_do_register_end");
|
error($lang->redirect_registered_activation); } else if($mybb->settings['regtype'] == "randompass") { $emailsubject = $lang->sprintf($lang->emailsubject_randompassword, $mybb->settings['bbname']);
|
error($lang->redirect_registered_activation); } else if($mybb->settings['regtype'] == "randompass") { $emailsubject = $lang->sprintf($lang->emailsubject_randompassword, $mybb->settings['bbname']);
|
$emailmessage = $lang->sprintf($lang->email_randompassword, $user['username'], $mybb->settings['bbname'], $user_info['username'], $user_info['password']);
| switch($mybb->settings['username_method']) { case 0: $emailmessage = $lang->sprintf($lang->email_randompassword, $user['username'], $mybb->settings['bbname'], $user_info['username'], $user_info['password']); break; case 1: $emailmessage = $lang->sprintf($lang->email_randompassword1, $user['username'], $mybb->settings['bbname'], $user_info['username'], $user_info['password']); break; case 2: $emailmessage = $lang->sprintf($lang->email_randompassword2, $user['username'], $mybb->settings['bbname'], $user_info['username'], $user_info['password']); break; default: $emailmessage = $lang->sprintf($lang->email_randompassword, $user['username'], $mybb->settings['bbname'], $user_info['username'], $user_info['password']); break; }
|
my_mail($user_info['email'], $emailsubject, $emailmessage);
$plugins->run_hooks("member_do_register_end");
| my_mail($user_info['email'], $emailsubject, $emailmessage);
$plugins->run_hooks("member_do_register_end");
|
Zeile 287 | Zeile 331 |
---|
{ $lang->redirect_registered_admin_activate = $lang->sprintf($lang->redirect_registered_admin_activate, $mybb->settings['bbname'], $user_info['username']);
|
{ $lang->redirect_registered_admin_activate = $lang->sprintf($lang->redirect_registered_admin_activate, $mybb->settings['bbname'], $user_info['username']);
|
$plugins->run_hooks("member_do_register_end");
| $plugins->run_hooks("member_do_register_end");
|
error($lang->redirect_registered_admin_activate); } else
| error($lang->redirect_registered_admin_activate); } else
|
Zeile 299 | Zeile 343 |
---|
redirect("index.php", $lang->redirect_registered); }
|
redirect("index.php", $lang->redirect_registered); }
|
} }
| } }
|
if($mybb->input['action'] == "coppa_form") { if(!$mybb->settings['faxno'])
| if($mybb->input['action'] == "coppa_form") { if(!$mybb->settings['faxno'])
|
Zeile 314 | Zeile 358 |
---|
}
if($mybb->input['action'] == "register")
|
}
if($mybb->input['action'] == "register")
|
{
| {
|
$bdaysel = ''; if($mybb->settings['coppa'] == "disabled") { $bdaysel = $bday2blank = "<option value=\"\"> </option>"; } for($i = 1; $i <= 31; ++$i)
|
$bdaysel = ''; if($mybb->settings['coppa'] == "disabled") { $bdaysel = $bday2blank = "<option value=\"\"> </option>"; } for($i = 1; $i <= 31; ++$i)
|
{
| {
|
if($mybb->input['bday1'] == $i) { $bdaysel .= "<option value=\"$i\" selected=\"selected\">$i</option>\n";
|
if($mybb->input['bday1'] == $i) { $bdaysel .= "<option value=\"$i\" selected=\"selected\">$i</option>\n";
|
}
| }
|
else { $bdaysel .= "<option value=\"$i\">$i</option>\n";
| else { $bdaysel .= "<option value=\"$i\">$i</option>\n";
|
Zeile 342 | Zeile 386 |
---|
{ // Just selected DOB, we check if($mybb->input['bday1'] && $mybb->input['bday2'] && $mybb->input['bday3'])
|
{ // Just selected DOB, we check if($mybb->input['bday1'] && $mybb->input['bday2'] && $mybb->input['bday3'])
|
{ my_unsetcookie("coppauser"); $bdaytime = @mktime(0, 0, 0, $mybb->input['bday2'], $mybb->input['bday1'], $mybb->input['bday3']);
| { my_unsetcookie("coppauser"); $mybb->input['bday1'] = intval($mybb->input['bday1']); $mybb->input['bday2'] = intval($mybb->input['bday2']); $mybb->input['bday3'] = intval($mybb->input['bday3']); $months = get_bdays($mybb->input['bday3']); if($mybb->input['bday2'] < 1 || $mybb->input['bday2'] > 12 || $mybb->input['bday3'] < (date("Y")-100) || $mybb->input['bday3'] > date("Y") || $mybb->input['bday1'] > $months[$mybb->input['bday2']-1]) { error($lang->error_invalid_birthday); } $bdaytime = @mktime(0, 0, 0, $mybb->input['bday2'], $mybb->input['bday1'], $mybb->input['bday3']);
|
// Store DOB in cookie so we can save it with the registration my_setcookie("coppadob", "{$mybb->input['bday1']}-{$mybb->input['bday2']}-{$mybb->input['bday3']}", -1);
| // Store DOB in cookie so we can save it with the registration my_setcookie("coppadob", "{$mybb->input['bday1']}-{$mybb->input['bday2']}-{$mybb->input['bday3']}", -1);
|
Zeile 368 | Zeile 421 |
---|
eval("\$coppa = \"".$templates->get("member_register_coppa")."\";"); output_page($coppa); exit;
|
eval("\$coppa = \"".$templates->get("member_register_coppa")."\";"); output_page($coppa); exit;
|
} }
| } }
|
if((!isset($mybb->input['agree']) && !isset($mybb->input['regsubmit'])) || $mybb->request_method != "post") {
| if((!isset($mybb->input['agree']) && !isset($mybb->input['regsubmit'])) || $mybb->request_method != "post") {
|
Zeile 383 | Zeile 436 |
---|
$lang->coppa_agreement_1 = $lang->sprintf($lang->coppa_agreement_1, $mybb->settings['bbname']); eval("\$coppa_agreement = \"".$templates->get("member_register_agreement_coppa")."\";"); }
|
$lang->coppa_agreement_1 = $lang->sprintf($lang->coppa_agreement_1, $mybb->settings['bbname']); eval("\$coppa_agreement = \"".$templates->get("member_register_agreement_coppa")."\";"); }
|
|
|
$plugins->run_hooks("member_register_agreement");
eval("\$agreement = \"".$templates->get("member_register_agreement")."\";");
| $plugins->run_hooks("member_register_agreement");
eval("\$agreement = \"".$templates->get("member_register_agreement")."\";");
|
Zeile 396 | Zeile 449 |
---|
$validator_extra = '';
if(isset($mybb->input['timezoneoffset']))
|
$validator_extra = '';
if(isset($mybb->input['timezoneoffset']))
|
{
| {
|
$timezoneoffset = $mybb->input['timezoneoffset']; } else
| $timezoneoffset = $mybb->input['timezoneoffset']; } else
|
Zeile 450 | Zeile 503 |
---|
$referrername = $ref['username']; } elseif($referrername)
|
$referrername = $ref['username']; } elseif($referrername)
|
{
| {
|
$query = $db->simple_select("users", "uid", "LOWER(username)='".$db->escape_string(my_strtolower($referrername))."'"); $ref = $db->fetch_array($query); if(!$ref['uid'])
| $query = $db->simple_select("users", "uid", "LOWER(username)='".$db->escape_string(my_strtolower($referrername))."'"); $ref = $db->fetch_array($query); if(!$ref['uid'])
|
Zeile 477 | Zeile 530 |
---|
} // Custom profile fields baby! $altbg = "trow1";
|
} // Custom profile fields baby! $altbg = "trow1";
|
$query = $db->simple_select("profilefields", "*", "editable=1", array('order_by' => 'disporder'));
| $query = $db->simple_select("profilefields", "*", "required='1' AND editable='1'", array('order_by' => 'disporder'));
|
while($profilefield = $db->fetch_array($query)) { $profilefield['type'] = htmlspecialchars_uni($profilefield['type']);
| while($profilefield = $db->fetch_array($query)) { $profilefield['type'] = htmlspecialchars_uni($profilefield['type']);
|
Zeile 531 | Zeile 584 |
---|
$profilefield['length'] = 3; } $code = "<select name=\"profile_fields[$field][]\" id=\"{$field}\" size=\"{$profilefield['length']}\" multiple=\"multiple\">$select</select>";
|
$profilefield['length'] = 3; } $code = "<select name=\"profile_fields[$field][]\" id=\"{$field}\" size=\"{$profilefield['length']}\" multiple=\"multiple\">$select</select>";
|
} }
| } }
|
elseif($type == "select") { $expoptions = explode("\n", $options);
| elseif($type == "select") { $expoptions = explode("\n", $options);
|
Zeile 577 | Zeile 630 |
---|
if($errors) { $useropts = $userfield;
|
if($errors) { $useropts = $userfield;
|
} else {
| } else {
|
$useropts = explode("\n", $userfield); } if(is_array($useropts)) { foreach($useropts as $key => $val)
|
$useropts = explode("\n", $userfield); } if(is_array($useropts)) { foreach($useropts as $key => $val)
|
{
| {
|
$seloptions[$val] = $val; } }
| $seloptions[$val] = $val; } }
|
Zeile 601 | Zeile 654 |
---|
} $code .= "<input type=\"checkbox\" class=\"checkbox\" name=\"profile_fields[$field][]\" id=\"{$field}{$key}\" value=\"$val\" $checked /> <span class=\"smalltext\">$val</span><br />"; }
|
} $code .= "<input type=\"checkbox\" class=\"checkbox\" name=\"profile_fields[$field][]\" id=\"{$field}{$key}\" value=\"$val\" $checked /> <span class=\"smalltext\">$val</span><br />"; }
|
} }
| } }
|
elseif($type == "textarea") { $value = htmlspecialchars_uni($userfield);
| elseif($type == "textarea") { $value = htmlspecialchars_uni($userfield);
|
Zeile 652 | Zeile 705 |
---|
$emailnotifycheck = ''; $receivepmscheck = "checked=\"checked\""; $pmnoticecheck = " checked=\"checked\"";
|
$emailnotifycheck = ''; $receivepmscheck = "checked=\"checked\""; $pmnoticecheck = " checked=\"checked\"";
|
$emailpmnotifycheck = '';
| $pmnotifycheck = '';
|
$invisiblecheck = ''; if($mybb->settings['dstcorrection'] == 1) {
| $invisiblecheck = ''; if($mybb->settings['dstcorrection'] == 1) {
|
Zeile 661 | Zeile 714 |
---|
} // Spambot registration image thingy
|
} // Spambot registration image thingy
|
if($mybb->settings['captchaimage'] == 1 && function_exists("imagecreatefrompng"))
| if($mybb->settings['captchaimage'])
|
{
|
{
|
$randomstr = random_str(5); $imagehash = md5(random_str(12)); $regimagearray = array( "imagehash" => $imagehash, "imagestring" => $randomstr, "dateline" => TIME_NOW ); $db->insert_query("captcha", $regimagearray); eval("\$regimage = \"".$templates->get("member_register_regimage")."\";");
| require_once MYBB_ROOT.'inc/class_captcha.php'; $captcha = new captcha(true, "member_register_regimage");
|
|
|
// JS validator extra $validator_extra .= "\tregValidator.register('imagestring', 'ajax', {url:'xmlhttp.php?action=validate_captcha', extra_body: 'imagehash', loading_message:'{$lang->js_validator_captcha_valid}', failure_message:'{$lang->js_validator_no_image_text}'});\n";
| if($captcha->html) { $regimage = $captcha->html;
if($mybb->settings['captchaimage'] == 1) { // JS validator extra for our default CAPTCHA $validator_extra .= "\tregValidator.register('imagestring', 'ajax', { url: 'xmlhttp.php?action=validate_captcha', extra_body: 'imagehash', loading_message: '{$lang->js_validator_captcha_valid}', failure_message: '{$lang->js_validator_no_image_text}'} );\n"; } } } // Hidden CAPTCHA for Spambots if($mybb->settings['hiddencaptchaimage']) { $captcha_field = $mybb->settings['hiddencaptchaimagefield'];
eval("\$hiddencaptcha = \"".$templates->get("member_register_hiddencaptcha")."\";");
|
} if($mybb->settings['regtype'] != "randompass") {
| } if($mybb->settings['regtype'] != "randompass") {
|
Zeile 705 | Zeile 766 |
---|
foreach($languages as $lname => $language) { $language = htmlspecialchars_uni($language);
|
foreach($languages as $lname => $language) { $language = htmlspecialchars_uni($language);
|
if($user['language'] == $lname)
| if(isset($user['language']) && $user['language'] == $lname)
|
{ $langoptions .= "<option value=\"$lname\" selected=\"selected\">$language</option>\n"; }
| { $langoptions .= "<option value=\"$lname\" selected=\"selected\">$language</option>\n"; }
|
Zeile 728 | Zeile 789 |
---|
if($mybb->input['username']) {
|
if($mybb->input['username']) {
|
$query = $db->simple_select("users", "*", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['username']))."'", array('limit' => 1));
| switch($mybb->settings['username_method']) { case 0: $query = $db->simple_select("users", "*", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['username']))."'", array('limit' => 1)); break; case 1: $query = $db->simple_select("users", "*", "LOWER(email)='".$db->escape_string(my_strtolower($mybb->input['username']))."'", array('limit' => 1)); break; case 2: $query = $db->simple_select("users", "*", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['username']))."' OR LOWER(email)='".$db->escape_string(my_strtolower($mybb->input['username']))."'", array('limit' => 1)); break; default: $query = $db->simple_select("users", "*", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['username']))."'", array('limit' => 1)); break; }
|
$user = $db->fetch_array($query); if(!$user['username']) {
|
$user = $db->fetch_array($query); if(!$user['username']) {
|
error($lang->error_invalidpworusername);
| switch($mybb->settings['username_method']) { case 0: error($lang->error_invalidpworusername); break; case 1: error($lang->error_invalidpworusername1); break; case 2: error($lang->error_invalidpworusername2); break; default: error($lang->error_invalidpworusername); break; }
|
} $uid = $user['uid']; }
| } $uid = $user['uid']; }
|
Zeile 845 | Zeile 934 |
---|
$email = $user['email']; $activationcode = $user['code']; $emailsubject = $lang->sprintf($lang->emailsubject_activateaccount, $mybb->settings['bbname']);
|
$email = $user['email']; $activationcode = $user['code']; $emailsubject = $lang->sprintf($lang->emailsubject_activateaccount, $mybb->settings['bbname']);
|
$emailmessage = $lang->sprintf($lang->email_activateaccount, $user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user['uid'], $activationcode);
| switch($mybb->settings['username_method']) { case 0: $emailmessage = $lang->sprintf($lang->email_activateaccount, $user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user['uid'], $activationcode); break; case 1: $emailmessage = $lang->sprintf($lang->email_activateaccount1, $user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user['uid'], $activationcode); break; case 2: $emailmessage = $lang->sprintf($lang->email_activateaccount2, $user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user['uid'], $activationcode); break; default: $emailmessage = $lang->sprintf($lang->email_activateaccount, $user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $user['uid'], $activationcode); break; }
|
my_mail($email, $emailsubject, $emailmessage); } }
| my_mail($email, $emailsubject, $emailmessage); } }
|
Zeile 893 | Zeile 996 |
---|
$email = $user['email']; $activationcode = $user['activationcode']; $emailsubject = $lang->sprintf($lang->emailsubject_lostpw, $mybb->settings['bbname']);
|
$email = $user['email']; $activationcode = $user['activationcode']; $emailsubject = $lang->sprintf($lang->emailsubject_lostpw, $mybb->settings['bbname']);
|
$emailmessage = $lang->sprintf($lang->email_lostpw, $username, $mybb->settings['bbname'], $mybb->settings['bburl'], $uid, $activationcode);
| switch($mybb->settings['username_method']) { case 0: $emailmessage = $lang->sprintf($lang->email_lostpw, $username, $mybb->settings['bbname'], $mybb->settings['bburl'], $uid, $activationcode); break; case 1: $emailmessage = $lang->sprintf($lang->email_lostpw1, $username, $mybb->settings['bbname'], $mybb->settings['bburl'], $uid, $activationcode); break; case 2: $emailmessage = $lang->sprintf($lang->email_lostpw2, $username, $mybb->settings['bbname'], $mybb->settings['bburl'], $uid, $activationcode); break; default: $emailmessage = $lang->sprintf($lang->email_lostpw, $username, $mybb->settings['bbname'], $mybb->settings['bburl'], $uid, $activationcode); break; }
|
my_mail($email, $emailsubject, $emailmessage); } } $plugins->run_hooks("member_do_lostpw_end");
|
my_mail($email, $emailsubject, $emailmessage); } } $plugins->run_hooks("member_do_lostpw_end");
|
|
|
redirect("index.php", $lang->redirect_lostpwsent); }
|
redirect("index.php", $lang->redirect_lostpwsent); }
|
|
|
if($mybb->input['action'] == "resetpassword") { $plugins->run_hooks("member_resetpassword_start");
if($mybb->input['username']) {
|
if($mybb->input['action'] == "resetpassword") { $plugins->run_hooks("member_resetpassword_start");
if($mybb->input['username']) {
|
$query = $db->simple_select("users", "*", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['username']))."'");
| switch($mybb->settings['username_method']) { case 0: $query = $db->simple_select("users", "*", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['username']))."'"); break; case 1: $query = $db->simple_select("users", "*", "LOWER(email)='".$db->escape_string(my_strtolower($mybb->input['username']))."'"); break; case 2: $query = $db->simple_select("users", "*", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['username']))."' OR LOWER(email)='".$db->escape_string(my_strtolower($mybb->input['username']))."'"); break; default: $query = $db->simple_select("users", "*", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['username']))."'"); break; }
|
$user = $db->fetch_array($query); if(!$user['uid']) {
|
$user = $db->fetch_array($query); if(!$user['uid']) {
|
error($lang->error_invalidpworusername);
| switch($mybb->settings['username_method']) { case 0: error($lang->error_invalidpworusername); break; case 1: error($lang->error_invalidpworusername1); break; case 2: error($lang->error_invalidpworusername2); break; default: error($lang->error_invalidpworusername); break; }
|
} } else
| } } else
|
Zeile 933 | Zeile 1078 |
---|
$username = $user['username'];
// Generate a new password, then update it
|
$username = $user['username'];
// Generate a new password, then update it
|
$password = random_str(); $logindetails = update_password($user['uid'], md5($password), $user['salt']);
| $password_length = intval($mybb->settings['minpasswordlength']);
|
|
|
$email = $user['email'];
| if($password_length < 8) { $password_length = 8; }
$password = random_str($password_length); $logindetails = update_password($user['uid'], md5($password), $user['salt']);
|
|
|
$plugins->run_hooks("member_resetpassword_process");
| $email = $user['email'];
$plugins->run_hooks("member_resetpassword_process");
|
$emailsubject = $lang->sprintf($lang->emailsubject_passwordreset, $mybb->settings['bbname']); $emailmessage = $lang->sprintf($lang->email_passwordreset, $username, $mybb->settings['bbname'], $password); my_mail($email, $emailsubject, $emailmessage);
|
$emailsubject = $lang->sprintf($lang->emailsubject_passwordreset, $mybb->settings['bbname']); $emailmessage = $lang->sprintf($lang->email_passwordreset, $username, $mybb->settings['bbname'], $password); my_mail($email, $emailsubject, $emailmessage);
|
|
|
$plugins->run_hooks("member_resetpassword_reset");
error($lang->redirect_passwordreset);
| $plugins->run_hooks("member_resetpassword_reset");
error($lang->redirect_passwordreset);
|
Zeile 951 | Zeile 1103 |
---|
else { $plugins->run_hooks("member_resetpassword_form");
|
else { $plugins->run_hooks("member_resetpassword_form");
|
| switch($mybb->settings['username_method']) { case 0: $lang_username = $lang->username; break; case 1: $lang_username = $lang->username1; break; case 2: $lang_username = $lang->username2; break; default: $lang_username = $lang->username; break; }
|
eval("\$activate = \"".$templates->get("member_resetpassword")."\";"); output_page($activate); } }
|
eval("\$activate = \"".$templates->get("member_resetpassword")."\";"); output_page($activate); } }
|
$do_captcha = $correct = false; $inline_errors = "";
| $correct = false; $inline_errors = '';
|
if($mybb->input['action'] == "do_login" && $mybb->request_method == "post") { $plugins->run_hooks("member_do_login_start");
|
if($mybb->input['action'] == "do_login" && $mybb->request_method == "post") { $plugins->run_hooks("member_do_login_start");
|
|
|
// Checks to make sure the user can login; they haven't had too many tries at logging in. // Is a fatal call if user has had too many tries $logins = login_attempt_check(); $login_text = '';
|
// Checks to make sure the user can login; they haven't had too many tries at logging in. // Is a fatal call if user has had too many tries $logins = login_attempt_check(); $login_text = '';
|
|
|
// Did we come from the quick login form if($mybb->input['quick_login'] == "1" && $mybb->input['quick_password'] && $mybb->input['quick_username']) {
| // Did we come from the quick login form if($mybb->input['quick_login'] == "1" && $mybb->input['quick_password'] && $mybb->input['quick_username']) {
|
Zeile 979 | Zeile 1147 |
---|
if(!username_exists($mybb->input['username'])) { my_setcookie('loginattempts', $logins + 1);
|
if(!username_exists($mybb->input['username'])) { my_setcookie('loginattempts', $logins + 1);
|
error($lang->error_invalidpworusername.$login_text);
| switch($mybb->settings['username_method']) { case 0: error($lang->error_invalidpworusername.$login_text); break; case 1: error($lang->error_invalidpworusername1.$login_text); break; case 2: error($lang->error_invalidpworusername2.$login_text); break; default: error($lang->error_invalidpworusername.$login_text); break; }
|
}
|
}
|
$query = $db->simple_select("users", "loginattempts", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['username']))."'", array('limit' => 1));
| $query = $db->simple_select("users", "loginattempts", "LOWER(username)='".$db->escape_string(my_strtolower($mybb->input['username']))."' OR LOWER(email)='".$db->escape_string(my_strtolower($mybb->input['username']))."'", array('limit' => 1));
|
$loginattempts = $db->fetch_field($query, "loginattempts");
|
$loginattempts = $db->fetch_field($query, "loginattempts");
|
|
|
$errors = array();
|
$errors = array();
|
$user = validate_password_from_username($mybb->input['username'], $mybb->input['password']); if(!$user['uid']) { my_setcookie('loginattempts', $logins + 1); $db->update_query("users", array('loginattempts' => 'loginattempts+1'), "LOWER(username) = '".$db->escape_string(my_strtolower($mybb->input['username']))."'", 1, true); $mybb->input['action'] = "login"; $mybb->input['request_method'] = "get"; if($mybb->settings['failedlogincount'] != 0 && $mybb->settings['failedlogintext'] == 1) { $login_text = $lang->sprintf($lang->failed_login_again, $mybb->settings['failedlogincount'] - $logins); } $errors[] = $lang->error_invalidpworusername.$login_text; } else
| $login_captcha = false; if($mybb->settings['failedcaptchalogincount'] > 0 && ($loginattempts > $mybb->settings['failedcaptchalogincount'] || intval($mybb->cookies['loginattempts']) > $mybb->settings['failedcaptchalogincount']))
|
{
|
{
|
$correct = true; } if($mybb->settings['failedcaptchalogincount'] > 0 && ($loginattempts > $mybb->settings['failedcaptchalogincount'] || intval($mybb->cookies['loginattempts']) > $mybb->settings['failedcaptchalogincount'])) {
| |
// Show captcha image if enabled
|
// Show captcha image if enabled
|
if($mybb->settings['captchaimage'] == 1 && function_exists("imagepng"))
| if($mybb->settings['captchaimage'])
|
{
|
{
|
| $do_captcha = false;
|
// Check their current captcha input - if correct, hide the captcha input area
|
// Check their current captcha input - if correct, hide the captcha input area
|
if($mybb->input['imagestring']) { $imagehash = $db->escape_string($mybb->input['imagehash']); $imagestring = $db->escape_string($mybb->input['imagestring']); $query = $db->simple_select("captcha", "*", "imagehash='{$imagehash}' AND imagestring='{$imagestring}'"); $imgcheck = $db->fetch_array($query); if($imgcheck['dateline'] > 0) { $correct = true; } else
| require_once MYBB_ROOT.'inc/class_captcha.php'; $login_captcha = new captcha;
if($login_captcha->validate_captcha() == false) { $correct = true; $do_captcha = true; // CAPTCHA validation failed foreach($login_captcha->get_errors() as $error)
|
{
|
{
|
$db->delete_query("captcha", "imagehash='{$imagehash}'"); $errors[] = $lang->error_regimageinvalid;
| $errors[] = $error;
|
}
|
}
|
} else if($mybb->input['quick_login'] == 1 && $mybb->input['quick_password'] && $mybb->input['quick_username']) { $errors[] = $lang->error_regimagerequired; } else { $errors[] = $lang->error_regimagerequired; } } $do_captcha = true; }
| } } }
// Don't check password when captcha isn't solved if(empty($errors)) { $user = validate_password_from_username($mybb->input['username'], $mybb->input['password']); if(!$user['uid']) { my_setcookie('loginattempts', $logins + 1); $db->update_query("users", array('loginattempts' => 'loginattempts+1'), "LOWER(username) = '".$db->escape_string(my_strtolower($mybb->input['username']))."'", 1, true);
$mybb->input['action'] = "login"; $mybb->input['request_method'] = "get";
if($mybb->settings['failedlogincount'] != 0 && $mybb->settings['failedlogintext'] == 1) { $login_text = $lang->sprintf($lang->failed_login_again, $mybb->settings['failedlogincount'] - $logins); }
switch($mybb->settings['username_method']) { case 0: $errors[] = $lang->error_invalidpworusername.$login_text; break; case 1: $errors[] = $lang->error_invalidpworusername1.$login_text; break; case 2: $errors[] = $lang->error_invalidpworusername2.$login_text; break; default: $errors[] = $lang->error_invalidpworusername.$login_text; break; } } else { $correct = true; } }
|
if(!empty($errors)) { $mybb->input['action'] = "login";
| if(!empty($errors)) { $mybb->input['action'] = "login";
|
Zeile 1056 | Zeile 1247 |
---|
{ error($lang->error_awaitingcoppa); }
|
{ error($lang->error_awaitingcoppa); }
|
| // Invalidate captcha if($login_captcha !== false) { $login_captcha->invalidate_captcha(); }
|
my_setcookie('loginattempts', 1); $db->delete_query("sessions", "ip='".$db->escape_string($session->ipaddress)."' AND sid != '".$session->sid."'"); $newsession = array(
| my_setcookie('loginattempts', 1); $db->delete_query("sessions", "ip='".$db->escape_string($session->ipaddress)."' AND sid != '".$session->sid."'"); $newsession = array(
|
Zeile 1076 | Zeile 1273 |
---|
} my_setcookie("mybbuser", $user['uid']."_".$user['loginkey'], $remember, true); my_setcookie("sid", $session->sid, -1, true);
|
} my_setcookie("mybbuser", $user['uid']."_".$user['loginkey'], $remember, true); my_setcookie("sid", $session->sid, -1, true);
|
|
|
$plugins->run_hooks("member_do_login_end");
|
$plugins->run_hooks("member_do_login_end");
|
|
|
if($mybb->input['url'] != "" && my_strpos(basename($mybb->input['url']), 'member.php') === false) { if((my_strpos(basename($mybb->input['url']), 'newthread.php') !== false || my_strpos(basename($mybb->input['url']), 'newreply.php') !== false) && my_strpos($mybb->input['url'], '&processed=1') !== false)
| if($mybb->input['url'] != "" && my_strpos(basename($mybb->input['url']), 'member.php') === false) { if((my_strpos(basename($mybb->input['url']), 'newthread.php') !== false || my_strpos(basename($mybb->input['url']), 'newreply.php') !== false) && my_strpos($mybb->input['url'], '&processed=1') !== false)
|
Zeile 1101 | Zeile 1298 |
---|
$mybb->input['action'] = "login"; $mybb->input['request_method'] = "get"; }
|
$mybb->input['action'] = "login"; $mybb->input['request_method'] = "get"; }
|
|
|
$plugins->run_hooks("member_do_login_end"); }
|
$plugins->run_hooks("member_do_login_end"); }
|
|
|
if($mybb->input['action'] == "login") { $plugins->run_hooks("member_login");
|
if($mybb->input['action'] == "login") { $plugins->run_hooks("member_login");
|
|
|
$member_loggedin_notice = ""; if($mybb->user['uid'] != 0) {
| $member_loggedin_notice = ""; if($mybb->user['uid'] != 0) {
|
Zeile 1121 | Zeile 1318 |
---|
login_attempt_check();
// Redirect to the page where the user came from, but not if that was the login page.
|
login_attempt_check();
// Redirect to the page where the user came from, but not if that was the login page.
|
| $redirect_url = '';
|
if($_SERVER['HTTP_REFERER'] && strpos($_SERVER['HTTP_REFERER'], "action=login") === false) { $redirect_url = htmlentities($_SERVER['HTTP_REFERER']);
|
if($_SERVER['HTTP_REFERER'] && strpos($_SERVER['HTTP_REFERER'], "action=login") === false) { $redirect_url = htmlentities($_SERVER['HTTP_REFERER']);
|
} else { $redirect_url = '';
| |
}
|
}
|
$captcha = ""; // Show captcha image for guests if enabled if($mybb->settings['captchaimage'] == 1 && function_exists("imagepng") && $do_captcha == true)
| $captcha = ''; // Show captcha image for guests if enabled and only if we have to do if($mybb->settings['captchaimage'] && isset($do_captcha))
|
{
|
{
|
$randomstr = random_str(5); $imagehash = md5(random_str(12)); $imagearray = array( "imagehash" => $imagehash, "imagestring" => $randomstr, "dateline" => TIME_NOW ); $db->insert_query("captcha", $imagearray); eval("\$captcha = \"".$templates->get("post_captcha")."\";"); }
| $correct = false; require_once MYBB_ROOT.'inc/class_captcha.php'; $login_captcha = new captcha(false, "post_captcha");
if($do_captcha == false && $login_captcha->type == 1) { if($login_captcha->validate_captcha() == true) { $correct = true; $captcha = $login_captcha->build_hidden_captcha(); } }
if(!$correct) { if($login_captcha->type == 1) { $login_captcha->build_captcha(); } elseif($login_captcha->type == 2) { $login_captcha->build_recaptcha(); }
if($login_captcha->html) { $captcha = $login_captcha->html; } } elseif($correct && $login_captcha->type == 2) { $login_captcha->build_recaptcha();
if($login_captcha->html) { $captcha = $login_captcha->html; } } }
|
$username = ""; $password = ""; if($mybb->input['username'] && $mybb->request_method == "post")
|
$username = ""; $password = ""; if($mybb->input['username'] && $mybb->request_method == "post")
|
{
| {
|
$username = htmlspecialchars_uni($mybb->input['username']);
|
$username = htmlspecialchars_uni($mybb->input['username']);
|
}
| }
|
if($mybb->input['password'] && $mybb->request_method == "post") { $password = htmlspecialchars_uni($mybb->input['password']); }
|
if($mybb->input['password'] && $mybb->request_method == "post") { $password = htmlspecialchars_uni($mybb->input['password']); }
|
| switch($mybb->settings['username_method']) { case 1: $lang->username = $lang->username1; break; case 2: $lang->username = $lang->username2; break; default: break; }
|
eval("\$login = \"".$templates->get("member_login")."\";"); output_page($login);
|
eval("\$login = \"".$templates->get("member_login")."\";"); output_page($login);
|
}
| }
|
if($mybb->input['action'] == "logout") { $plugins->run_hooks("member_logout_start");
|
if($mybb->input['action'] == "logout") { $plugins->run_hooks("member_logout_start");
|
|
|
if(!$mybb->user['uid']) { redirect("index.php", $lang->redirect_alreadyloggedout);
| if(!$mybb->user['uid']) { redirect("index.php", $lang->redirect_alreadyloggedout);
|
Zeile 1172 | Zeile 1406 |
---|
// Check session ID if we have one if($mybb->input['sid'] && $mybb->input['sid'] != $session->sid)
|
// Check session ID if we have one if($mybb->input['sid'] && $mybb->input['sid'] != $session->sid)
|
{ error($lang->error_notloggedout);
| { error($lang->error_notloggedout);
|
} // Otherwise, check logoutkey else if(!$mybb->input['sid'] && $mybb->input['logoutkey'] != $mybb->user['logoutkey'])
|
} // Otherwise, check logoutkey else if(!$mybb->input['sid'] && $mybb->input['logoutkey'] != $mybb->user['logoutkey'])
|
{
| {
|
error($lang->error_notloggedout); }
| error($lang->error_notloggedout); }
|
Zeile 1186 | Zeile 1420 |
---|
if($mybb->user['uid']) { $time = TIME_NOW;
|
if($mybb->user['uid']) { $time = TIME_NOW;
|
$lastvisit = array( "lastactive" => $time-900, "lastvisit" => $time, ); $db->update_query("users", $lastvisit, "uid='".$mybb->user['uid']."'");
| // Run this after the shutdown query from session system $db->shutdown_query("UPDATE ".TABLE_PREFIX."users SET lastvisit='{$time}', lastactive='{$time}' WHERE uid='{$mybb->user['uid']}'");
|
$db->delete_query("sessions", "sid='".$session->sid."'"); } $plugins->run_hooks("member_logout_end");
| $db->delete_query("sessions", "sid='".$session->sid."'"); } $plugins->run_hooks("member_logout_end");
|
Zeile 1245 | Zeile 1476 |
---|
else { if($mybb->input['uid'])
|
else { if($mybb->input['uid'])
|
{
| {
|
$uid = intval($mybb->input['uid']); } else
| $uid = intval($mybb->input['uid']); } else
|
Zeile 1279 | Zeile 1510 |
---|
$lang->users_forum_info = $lang->sprintf($lang->users_forum_info, $memprofile['username']); $lang->users_contact_details = $lang->sprintf($lang->users_contact_details, $memprofile['username']);
|
$lang->users_forum_info = $lang->sprintf($lang->users_forum_info, $memprofile['username']); $lang->users_contact_details = $lang->sprintf($lang->users_contact_details, $memprofile['username']);
|
if($mybb->settings['enablepms'] != 0 && $memprofile['receivepms'] != 0 && $memperms['canusepms'] != 0 && my_strpos(",".$memprofile['ignorelist'].",", ",".$mybb->user['uid'].",") === false)
| if($mybb->settings['enablepms'] != 0 && (($memprofile['receivepms'] != 0 && $memperms['canusepms'] != 0 && my_strpos(",".$memprofile['ignorelist'].",", ",".$mybb->user['uid'].",") === false) || $mybb->usergroup['canoverridepm'] == 1))
|
{ $lang->send_pm = $lang->sprintf($lang->send_pm, $memprofile['username']); }
| { $lang->send_pm = $lang->sprintf($lang->send_pm, $memprofile['username']); }
|
Zeile 1307 | Zeile 1538 |
---|
$avatar = ''; }
|
$avatar = ''; }
|
if($memprofile['hideemail'] != 1)
| if($memprofile['hideemail'] != 1 && (my_strpos(",".$memprofile['ignorelist'].",", ",".$mybb->user['uid'].",") === false || $mybb->usergroup['cansendemailoverride'] != 0))
|
{ eval("\$sendemail = \"".$templates->get("member_profile_email")."\";"); }
| { eval("\$sendemail = \"".$templates->get("member_profile_email")."\";"); }
|
Zeile 1332 | Zeile 1563 |
---|
$bgcolors[$cat] = alt_trow(); }
|
$bgcolors[$cat] = alt_trow(); }
|
| $website = '';
|
if($memprofile['website']) { $memprofile['website'] = htmlspecialchars_uni($memprofile['website']); $website = "<a href=\"{$memprofile['website']}\" target=\"_blank\">{$memprofile['website']}</a>";
|
if($memprofile['website']) { $memprofile['website'] = htmlspecialchars_uni($memprofile['website']); $website = "<a href=\"{$memprofile['website']}\" target=\"_blank\">{$memprofile['website']}</a>";
|
} else { $website = '';
| |
}
|
}
|
| $signature = '';
|
if($memprofile['signature'] && ($memprofile['suspendsignature'] == 0 || $memprofile['suspendsigtime'] < TIME_NOW)) { $sig_parser = array(
| if($memprofile['signature'] && ($memprofile['suspendsignature'] == 0 || $memprofile['suspendsigtime'] < TIME_NOW)) { $sig_parser = array(
|
Zeile 1349 | Zeile 1578 |
---|
"allow_mycode" => $mybb->settings['sigmycode'], "allow_smilies" => $mybb->settings['sigsmilies'], "allow_imgcode" => $mybb->settings['sigimgcode'],
|
"allow_mycode" => $mybb->settings['sigmycode'], "allow_smilies" => $mybb->settings['sigsmilies'], "allow_imgcode" => $mybb->settings['sigimgcode'],
|
"me_username" => $memprofile['username']
| "me_username" => $memprofile['username'], "filter_badwords" => 1
|
);
|
);
|
| if($memperms['signofollow']) { $sig_parser['nofollow_on'] = 1; }
|
$memprofile['signature'] = $parser->parse_message($memprofile['signature'], $sig_parser); eval("\$signature = \"".$templates->get("member_profile_signature")."\";");
| $memprofile['signature'] = $parser->parse_message($memprofile['signature'], $sig_parser); eval("\$signature = \"".$templates->get("member_profile_signature")."\";");
|
Zeile 1395 | Zeile 1630 |
---|
$memprofile['icq'] = ''; }
|
$memprofile['icq'] = ''; }
|
| $awaybit = '';
|
if($memprofile['away'] == 1 && $mybb->settings['allowaway'] != 0) { $lang->away_note = $lang->sprintf($lang->away_note, $memprofile['username']); $awaydate = my_date($mybb->settings['dateformat'], $memprofile['awaydate']); if(!empty($memprofile['awayreason'])) {
|
if($memprofile['away'] == 1 && $mybb->settings['allowaway'] != 0) { $lang->away_note = $lang->sprintf($lang->away_note, $memprofile['username']); $awaydate = my_date($mybb->settings['dateformat'], $memprofile['awaydate']); if(!empty($memprofile['awayreason'])) {
|
$awayreason = htmlspecialchars_uni($memprofile['awayreason']); } else {
| $reason = $parser->parse_badwords($memprofile['awayreason']); $awayreason = htmlspecialchars_uni($reason); } else {
|
$awayreason = $lang->away_no_reason; } if($memprofile['returndate'] == '')
| $awayreason = $lang->away_no_reason; } if($memprofile['returndate'] == '')
|
Zeile 1412 | Zeile 1649 |
---|
$returndate = "$lang->unknown"; } else
|
$returndate = "$lang->unknown"; } else
|
{
| {
|
$returnhome = explode("-", $memprofile['returndate']);
|
$returnhome = explode("-", $memprofile['returndate']);
|
| // PHP native date functions use integers so timestamps for years after 2038 will not work // Thus we use adodb_mktime
|
if($returnhome[2] >= 2038) { require_once MYBB_ROOT."inc/functions_time.php"; $returnmkdate = adodb_mktime(0, 0, 0, $returnhome[1], $returnhome[0], $returnhome[2]); $returndate = my_date($mybb->settings['dateformat'], $returnmkdate, "", 1, true);
|
if($returnhome[2] >= 2038) { require_once MYBB_ROOT."inc/functions_time.php"; $returnmkdate = adodb_mktime(0, 0, 0, $returnhome[1], $returnhome[0], $returnhome[2]); $returndate = my_date($mybb->settings['dateformat'], $returnmkdate, "", 1, true);
|
}
| }
|
else { $returnmkdate = mktime(0, 0, 0, $returnhome[1], $returnhome[0], $returnhome[2]); $returndate = my_date($mybb->settings['dateformat'], $returnmkdate); }
|
else { $returnmkdate = mktime(0, 0, 0, $returnhome[1], $returnhome[0], $returnhome[2]); $returndate = my_date($mybb->settings['dateformat'], $returnmkdate); }
|
| // If our away time has expired already, we should be back, right? if($returnmkdate < TIME_NOW) { $db->update_query('users', array('away' => '0', 'awaydate' => '0', 'returndate' => '', 'awayreason' => ''), 'uid=\''.intval($memprofile['uid']).'\''); // Update our status to "not away" $memprofile['away'] = 0; } } // Check if our away status is set to 1, it may have been updated already (see a few lines above) if($memprofile['away'] == 1) { eval("\$awaybit = \"".$templates->get("member_profile_away")."\";");
|
}
|
}
|
eval("\$awaybit = \"".$templates->get("member_profile_away")."\";");
| |
} if($memprofile['dst'] == 1) {
| } if($memprofile['dst'] == 1) {
|
Zeile 1527 | Zeile 1781 |
---|
// Get the user title for this user unset($usertitle); unset($stars);
|
// Get the user title for this user unset($usertitle); unset($stars);
|
| $starimage = '';
|
if(trim($memprofile['usertitle']) != '') { // User has custom user title
| if(trim($memprofile['usertitle']) != '') { // User has custom user title
|
Zeile 1540 | Zeile 1795 |
---|
else { // No usergroup title so get a default one
|
else { // No usergroup title so get a default one
|
$query = $db->simple_select("usertitles", "*", "", array('order_by' => 'posts', 'order_dir' => 'DESC')); while($title = $db->fetch_array($query))
| $usertitles = $cache->read('usertitles');
if(is_array($usertitles))
|
{
|
{
|
if($memprofile['postnum'] >= $title['posts'])
| foreach($usertitles as $title)
|
{
|
{
|
$usertitle = $title['title']; $stars = $title['stars']; $starimage = $title['starimage']; break;
| if($memprofile['postnum'] >= $title['posts']) { $usertitle = $title['title']; $stars = $title['stars']; $starimage = $title['starimage'];
break; }
|
}
|
}
|
}
| }
|
} if($displaygroup['stars'] || $displaygroup['usertitle'])
| } if($displaygroup['stars'] || $displaygroup['usertitle'])
|
Zeile 1560 | Zeile 1820 |
---|
} elseif(!$stars) {
|
} elseif(!$stars) {
|
// This is for cases where the user has a title, but the group has no defined number of stars (use number of stars as per default usergroups) $query = $db->simple_select("usertitles", "*", "", array('order_by' => 'posts', 'order_dir' => 'DESC')); while($title = $db->fetch_array($query))
| if(!is_array($usertitles))
|
{
|
{
|
if($memprofile['postnum'] >= $title['posts']) { $stars = $title['stars']; $starimage = $title['starimage']; break; }
| $usertitles = $cache->read('usertitles'); }
// This is for cases where the user has a title, but the group has no defined number of stars (use number of stars as per default usergroups) if(is_array($usertitles)) { foreach($usertitles as $title) { if($memprofile['postnum'] >= $title['posts']) { $stars = $title['stars']; $starimage = $title['starimage']; break; } }
|
} }
|
} }
|
| $groupimage = '';
|
if(!empty($displaygroup['image'])) { if(!empty($mybb->user['language']))
|
if(!empty($displaygroup['image'])) { if(!empty($mybb->user['language']))
|
{
| {
|
$language = $mybb->user['language'];
|
$language = $mybb->user['language'];
|
}
| }
|
else { $language = $mybb->settings['bblanguage'];
| else { $language = $mybb->settings['bblanguage'];
|
Zeile 1586 | Zeile 1854 |
---|
$displaygroup['image'] = str_replace("{lang}", $language, $displaygroup['image']); $displaygroup['image'] = str_replace("{theme}", $theme['imgdir'], $displaygroup['image']); eval("\$groupimage = \"".$templates->get("member_profile_groupimage")."\";");
|
$displaygroup['image'] = str_replace("{lang}", $language, $displaygroup['image']); $displaygroup['image'] = str_replace("{theme}", $theme['imgdir'], $displaygroup['image']); eval("\$groupimage = \"".$templates->get("member_profile_groupimage")."\";");
|
}
if(!$starimage)
| }
if(empty($starimage))
|
{ $starimage = $displaygroup['starimage'];
|
{ $starimage = $displaygroup['starimage'];
|
}
| }
|
|
|
if($starimage)
| if(!empty($starimage))
|
{ // Only display stars if we have an image to use... $starimage = str_replace("{theme}", $theme['imgdir'], $starimage);
| { // Only display stars if we have an image to use... $starimage = str_replace("{theme}", $theme['imgdir'], $starimage);
|
Zeile 1608 | Zeile 1876 |
---|
$timesearch = TIME_NOW - $mybb->settings['wolcutoffmins']*60; $query = $db->simple_select("sessions", "location,nopermission", "uid='$uid' AND time>'{$timesearch}'", array('order_by' => 'time', 'order_dir' => 'DESC', 'limit' => 1)); $session = $db->fetch_array($query);
|
$timesearch = TIME_NOW - $mybb->settings['wolcutoffmins']*60; $query = $db->simple_select("sessions", "location,nopermission", "uid='$uid' AND time>'{$timesearch}'", array('order_by' => 'time', 'order_dir' => 'DESC', 'limit' => 1)); $session = $db->fetch_array($query);
|
|
|
if(($memprofile['invisible'] != 1 || $mybb->usergroup['canviewwolinvis'] == 1 || $memprofile['uid'] == $mybb->user['uid']) && !empty($session)) { // Fetch their current location
| if(($memprofile['invisible'] != 1 || $mybb->usergroup['canviewwolinvis'] == 1 || $memprofile['uid'] == $mybb->user['uid']) && !empty($session)) { // Fetch their current location
|
Zeile 1647 | Zeile 1915 |
---|
$reputation = get_reputation($memprofile['reputation']);
// If this user has permission to give reputations show the vote link
|
$reputation = get_reputation($memprofile['reputation']);
// If this user has permission to give reputations show the vote link
|
if($mybb->usergroup['cangivereputations'] == 1 && $memprofile['uid'] != $mybb->user['uid'])
| $vote_link = ''; if($mybb->usergroup['cangivereputations'] == 1 && $memprofile['uid'] != $mybb->user['uid'] && ($mybb->settings['posrep'] || $mybb->settings['neurep'] || $mybb->settings['negrep']))
|
{ $vote_link = "[<a href=\"javascript:MyBB.reputation({$memprofile['uid']});\">{$lang->reputation_vote}</a>]"; }
| { $vote_link = "[<a href=\"javascript:MyBB.reputation({$memprofile['uid']});\">{$lang->reputation_vote}</a>]"; }
|
Zeile 1671 | Zeile 1940 |
---|
} else {
|
} else {
|
$warning_link = "usercp.php";
| $warn_user = ''; $warning_link = 'usercp.php';
|
} eval("\$warning_level = \"".$templates->get("member_profile_warninglevel")."\";"); }
| } eval("\$warning_level = \"".$templates->get("member_profile_warninglevel")."\";"); }
|
Zeile 1683 | Zeile 1953 |
---|
$alttrow = "trow1"; // If this user is an Administrator or a Moderator then we wish to show all profile fields if($mybb->usergroup['cancp'] == 1 || $mybb->usergroup['issupermod'] == 1 || $mybb->usergroup['canmodcp'] == 1)
|
$alttrow = "trow1"; // If this user is an Administrator or a Moderator then we wish to show all profile fields if($mybb->usergroup['cancp'] == 1 || $mybb->usergroup['issupermod'] == 1 || $mybb->usergroup['canmodcp'] == 1)
|
{
| {
|
$field_hidden = '1=1'; } else
| $field_hidden = '1=1'; } else
|
Zeile 1695 | Zeile 1965 |
---|
{ $thing = explode("\n", $customfield['type'], "2"); $type = trim($thing[0]);
|
{ $thing = explode("\n", $customfield['type'], "2"); $type = trim($thing[0]);
|
| $customfieldval = '';
|
$field = "fid{$customfield['fid']}";
|
$field = "fid{$customfield['fid']}";
|
$useropts = explode("\n", $userfields[$field]); $customfieldval = $comma = ''; if(is_array($useropts) && ($type == "multiselect" || $type == "checkbox"))
| if(isset($userfields[$field]))
|
{
|
{
|
foreach($useropts as $val)
| $useropts = explode("\n", $userfields[$field]); $customfieldval = $comma = ''; if(is_array($useropts) && ($type == "multiselect" || $type == "checkbox"))
|
{
|
{
|
if($val != '')
| foreach($useropts as $val)
|
{
|
{
|
$customfieldval .= "<li style=\"margin-left: 0;\">{$val}</li>";
| if($val != '') { $customfieldval .= "<li style=\"margin-left: 0;\">{$val}</li>"; } } if($customfieldval != '') { $customfieldval = "<ul style=\"margin: 0; padding-left: 15px;\">{$customfieldval}</ul>"; } } else { $userfields[$field] = $parser->parse_badwords($userfields[$field]); if($customfield['type'] == "textarea") { $customfieldval = nl2br(htmlspecialchars_uni($userfields[$field])); } else { $customfieldval = htmlspecialchars_uni($userfields[$field]);
|
}
|
}
|
} if($customfieldval != '') { $customfieldval = "<ul style=\"margin: 0; padding-left: 15px;\">{$customfieldval}</ul>"; } } else { if($customfield['type'] == "textarea") { $customfieldval = nl2br(htmlspecialchars_uni($userfields[$field])); } else { $customfieldval = htmlspecialchars_uni($userfields[$field]);
| |
} }
| } }
|
Zeile 1730 | Zeile 2007 |
---|
$bgcolor = alt_trow(); } if($customfields)
|
$bgcolor = alt_trow(); } if($customfields)
|
{
| {
|
eval("\$profilefields = \"".$templates->get("member_profile_customfields")."\";"); } $memprofile['postnum'] = my_number_format($memprofile['postnum']);
| eval("\$profilefields = \"".$templates->get("member_profile_customfields")."\";"); } $memprofile['postnum'] = my_number_format($memprofile['postnum']);
|
Zeile 1739 | Zeile 2016 |
---|
if($memprofile['timeonline'] > 0) { $timeonline = nice_time($memprofile['timeonline']);
|
if($memprofile['timeonline'] > 0) { $timeonline = nice_time($memprofile['timeonline']);
|
}
| }
|
else { $timeonline = $lang->none_registered; }
|
else { $timeonline = $lang->none_registered; }
|
| $adminoptions = '';
|
if($mybb->usergroup['cancp'] == 1 && $mybb->config['hide_admin_links'] != 1) { eval("\$adminoptions = \"".$templates->get("member_profile_adminoptions")."\";"); }
|
if($mybb->usergroup['cancp'] == 1 && $mybb->config['hide_admin_links'] != 1) { eval("\$adminoptions = \"".$templates->get("member_profile_adminoptions")."\";"); }
|
else { $adminoptions = ''; } if($mybb->usergroup['canmodcp'] == 1)
| $modoptions = ''; if($mybb->usergroup['canmodcp'] == 1)
|
{ $memprofile['usernotes'] = nl2br(htmlspecialchars_uni($memprofile['usernotes']));
| { $memprofile['usernotes'] = nl2br(htmlspecialchars_uni($memprofile['usernotes']));
|
Zeile 1772 | Zeile 2047 |
---|
eval("\$modoptions = \"".$templates->get("member_profile_modoptions")."\";"); }
|
eval("\$modoptions = \"".$templates->get("member_profile_modoptions")."\";"); }
|
else { $modoptions = ''; }
|
|
$buddy_options = '';
|
$buddy_options = '';
|
| |
if($mybb->user['uid'] != $memprofile['uid'] && $mybb->user['uid'] != 0) { $buddy_list = explode(',', $mybb->user['buddylist']);
| if($mybb->user['uid'] != $memprofile['uid'] && $mybb->user['uid'] != 0) { $buddy_list = explode(',', $mybb->user['buddylist']);
|
Zeile 1803 | Zeile 2073 |
---|
}
$plugins->run_hooks("member_profile_end");
|
}
$plugins->run_hooks("member_profile_end");
|
|
|
eval("\$profile = \"".$templates->get("member_profile")."\";"); output_page($profile);
|
eval("\$profile = \"".$templates->get("member_profile")."\";"); output_page($profile);
|
}
| }
|
if($mybb->input['action'] == "do_emailuser" && $mybb->request_method == "post") { // Verify incoming POST request
| if($mybb->input['action'] == "do_emailuser" && $mybb->request_method == "post") { // Verify incoming POST request
|
Zeile 1819 | Zeile 2089 |
---|
if($mybb->usergroup['cansendemail'] == 0 || !$mybb->user['uid']) { error_no_permission();
|
if($mybb->usergroup['cansendemail'] == 0 || !$mybb->user['uid']) { error_no_permission();
|
}
| }
|
// Check group limits if($mybb->usergroup['maxemails'] > 0)
| // Check group limits if($mybb->usergroup['maxemails'] > 0)
|
Zeile 1827 | Zeile 2097 |
---|
$query = $db->simple_select("maillogs", "COUNT(*) AS sent_count", "fromuid='{$mybb->user['uid']}' AND dateline >= '".(TIME_NOW - (60*60*24))."'"); $sent_count = $db->fetch_field($query, "sent_count"); if($sent_count >= $mybb->usergroup['maxemails'])
|
$query = $db->simple_select("maillogs", "COUNT(*) AS sent_count", "fromuid='{$mybb->user['uid']}' AND dateline >= '".(TIME_NOW - (60*60*24))."'"); $sent_count = $db->fetch_field($query, "sent_count"); if($sent_count >= $mybb->usergroup['maxemails'])
|
{ $lang->error_max_emails_day = $lang->sprintf($lang->error_max_emails_day, $mybb->usergroup['maxemails']); error($lang->error_max_emails_day); } }
| { $lang->error_max_emails_day = $lang->sprintf($lang->error_max_emails_day, $mybb->usergroup['maxemails']); error($lang->error_max_emails_day); } }
|
$query = $db->simple_select("users", "uid, username, email, hideemail", "uid='".intval($mybb->input['uid'])."'"); $to_user = $db->fetch_array($query); if(!$to_user['username']) { error($lang->error_invalidusername);
|
$query = $db->simple_select("users", "uid, username, email, hideemail", "uid='".intval($mybb->input['uid'])."'"); $to_user = $db->fetch_array($query); if(!$to_user['username']) { error($lang->error_invalidusername);
|
}
| }
|
if($to_user['hideemail'] != 0)
|
if($to_user['hideemail'] != 0)
|
{
| {
|
error($lang->error_hideemail);
|
error($lang->error_hideemail);
|
}
| }
|
if(empty($mybb->input['subject'])) { $errors[] = $lang->error_no_email_subject; } if(empty($mybb->input['message']))
|
if(empty($mybb->input['subject'])) { $errors[] = $lang->error_no_email_subject; } if(empty($mybb->input['message']))
|
{ $errors[] = $lang->error_no_email_message; }
if(count($errors) == 0) { if($mybb->settings['mail_handler'] == 'smtp')
| { $errors[] = $lang->error_no_email_message; }
if(count($errors) == 0) { if($mybb->settings['mail_handler'] == 'smtp')
|
{ $from = $mybb->user['email']; }
| { $from = $mybb->user['email']; }
|
Zeile 1909 | Zeile 2179 |
---|
// Check group limits if($mybb->usergroup['maxemails'] > 0)
|
// Check group limits if($mybb->usergroup['maxemails'] > 0)
|
{
| {
|
$query = $db->simple_select("maillogs", "COUNT(*) AS sent_count", "fromuid='{$mybb->user['uid']}' AND dateline >= '".(TIME_NOW - (60*60*24))."'"); $sent_count = $db->fetch_field($query, "sent_count"); if($sent_count > $mybb->usergroup['maxemails'])
| $query = $db->simple_select("maillogs", "COUNT(*) AS sent_count", "fromuid='{$mybb->user['uid']}' AND dateline >= '".(TIME_NOW - (60*60*24))."'"); $sent_count = $db->fetch_field($query, "sent_count"); if($sent_count > $mybb->usergroup['maxemails'])
|
Zeile 1919 | Zeile 2189 |
---|
} }
|
} }
|
$query = $db->simple_select("users", "uid, username, email, hideemail", "uid='".intval($mybb->input['uid'])."'");
| $query = $db->simple_select("users", "uid, username, email, hideemail, ignorelist", "uid='".intval($mybb->input['uid'])."'");
|
$to_user = $db->fetch_array($query); $lang->email_user = $lang->sprintf($lang->email_user, $to_user['username']);
|
$to_user = $db->fetch_array($query); $lang->email_user = $lang->sprintf($lang->email_user, $to_user['username']);
|
|
|
if(!$to_user['uid']) { error($lang->error_invaliduser);
| if(!$to_user['uid']) { error($lang->error_invaliduser);
|
Zeile 1932 | Zeile 2202 |
---|
if($to_user['hideemail'] != 0) { error($lang->error_hideemail);
|
if($to_user['hideemail'] != 0) { error($lang->error_hideemail);
|
| }
if($to_user['ignorelist'] && (my_strpos(",".$to_user['ignorelist'].",", ",".$mybb->user['uid'].",") !== false && $mybb->usergroup['cansendemailoverride'] != 1)) { error_no_permission();
|
} if(count($errors) > 0)
| } if(count($errors) > 0)
|