Vergleich usercp.php - 1.8.3 - 1.8.14

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 17Zeile 17
$templatelist .= ",usercp_attachments_attachment,usercp_attachments,usercp_profile_away,usercp_profile_customfield,usercp_profile_profilefields,usercp_profile_customtitle,usercp_forumsubscriptions_none,usercp_profile_customtitle_currentcustom";
$templatelist .= ",usercp_forumsubscriptions,usercp_subscriptions_none,usercp_subscriptions,usercp_options_pms_from_buddys,usercp_options_tppselect,usercp_options_pppselect,usercp_themeselector,usercp_profile_customtitle_reverttitle";
$templatelist .= ",usercp_nav_editsignature,usercp_referrals,usercp_notepad,usercp_latest_threads_threads,forumdisplay_thread_gotounread,usercp_latest_threads,usercp_subscriptions_remove,usercp_nav_messenger_folder,usercp_profile_profilefields_text";

$templatelist .= ",usercp_attachments_attachment,usercp_attachments,usercp_profile_away,usercp_profile_customfield,usercp_profile_profilefields,usercp_profile_customtitle,usercp_forumsubscriptions_none,usercp_profile_customtitle_currentcustom";
$templatelist .= ",usercp_forumsubscriptions,usercp_subscriptions_none,usercp_subscriptions,usercp_options_pms_from_buddys,usercp_options_tppselect,usercp_options_pppselect,usercp_themeselector,usercp_profile_customtitle_reverttitle";
$templatelist .= ",usercp_nav_editsignature,usercp_referrals,usercp_notepad,usercp_latest_threads_threads,forumdisplay_thread_gotounread,usercp_latest_threads,usercp_subscriptions_remove,usercp_nav_messenger_folder,usercp_profile_profilefields_text";

$templatelist .= ",usercp_editsig_suspended,usercp_editsig,usercp_avatar_current,usercp_options_timezone_option,usercp_drafts";

$templatelist .= ",usercp_editsig_suspended,usercp_editsig,usercp_avatar_current,usercp_options_timezone_option,usercp_drafts,usercp_options_language,usercp_options_date_format,usercp_profile_website,usercp_latest_subscribed,usercp_warnings";

$templatelist .= ",usercp_avatar,usercp_editlists_userusercp_editlists,usercp_drafts_draft,usercp_usergroups_joingroup,usercp_attachments_none,usercp_avatar_upload,usercp_options_timezone,usercp_usergroups_joinable_usergroup_join";

$templatelist .= ",usercp_avatar,usercp_editlists_userusercp_editlists,usercp_drafts_draft,usercp_usergroups_joingroup,usercp_attachments_none,usercp_avatar_upload,usercp_options_timezone,usercp_usergroups_joinable_usergroup_join";

$templatelist .= ",usercp_warnings_warning,usercp_warnings,usercp_latest_subscribed_threads,usercp_latest_subscribed,usercp_nav_messenger_tracking,multipage,multipage_end,multipage_jump_page,multipage_nextpage,multipage_page,multipage_page_current,multipage_page_link_current,multipage_prevpage,multipage_start,usercp_options_language,usercp_options_date_format";
$templatelist .= ",codebuttons,smilieinsert_getmore,smilieinsert_smilie,smilieinsert_smilie_empty,smilieinsert,usercp_nav_messenger_compose,usercp_options_language_option,usercp_editlists";

$templatelist .= ",usercp_warnings_warning,usercp_nav_messenger_tracking,multipage,multipage_end,multipage_jump_page,multipage_nextpage,multipage_page,multipage_page_current,multipage_page_link_current,multipage_prevpage,multipage_start";
$templatelist .= ",codebuttons,usercp_nav_messenger_compose,usercp_options_language_option,usercp_editlists,usercp_profile_contact_fields_field,usercp_latest_subscribed_threads,usercp_profile_contact_fields,usercp_profile_day,usercp_nav_home";

$templatelist .= ",usercp_profile_profilefields_select_option,usercp_profile_profilefields_multiselect,usercp_profile_profilefields_select,usercp_profile_profilefields_textarea,usercp_profile_profilefields_radio,usercp_profile_profilefields_checkbox";
$templatelist .= ",usercp_options_tppselect_option,usercp_options_pppselect_option,forumbit_depth2_forum_lastpost_never,forumbit_depth2_forum_lastpost_hidden,usercp_avatar_auto_resize_auto,usercp_avatar_auto_resize_user,usercp_options";

$templatelist .= ",usercp_profile_profilefields_select_option,usercp_profile_profilefields_multiselect,usercp_profile_profilefields_select,usercp_profile_profilefields_textarea,usercp_profile_profilefields_radio,usercp_profile_profilefields_checkbox";
$templatelist .= ",usercp_options_tppselect_option,usercp_options_pppselect_option,forumbit_depth2_forum_lastpost_never,forumbit_depth2_forum_lastpost_hidden,usercp_avatar_auto_resize_auto,usercp_avatar_auto_resize_user,usercp_options";

$templatelist .= ",usercp_editlists_no_buddies,usercp_editlists_no_ignored,usercp_editlists_no_requests,usercp_editlists_received_requests,usercp_editlists_sent_requests,usercp_drafts_draft_thread,usercp_drafts_draft_forum";
$templatelist .= ",usercp_usergroups_leader_usergroup_memberlist,usercp_usergroups_leader_usergroup_moderaterequests,usercp_usergroups_memberof_usergroup_leaveprimary,usercp_usergroups_memberof_usergroup_display,usercp_email";

$templatelist .= ",usercp_editlists_no_buddies,usercp_editlists_no_ignored,usercp_editlists_no_requests,usercp_editlists_received_requests,usercp_editlists_sent_requests,usercp_drafts_draft_thread,usercp_drafts_draft_forum,usercp_editlists_user";
$templatelist .= ",usercp_usergroups_leader_usergroup_memberlist,usercp_usergroups_leader_usergroup_moderaterequests,usercp_usergroups_memberof_usergroup_leaveprimary,usercp_usergroups_memberof_usergroup_display,usercp_email,usercp_options_pms";

$templatelist .= ",usercp_usergroups_memberof_usergroup_leaveleader,usercp_usergroups_memberof_usergroup_leaveother,usercp_usergroups_memberof_usergroup_leave,usercp_usergroups_joinable_usergroup_description,usercp_options_time_format";

$templatelist .= ",usercp_usergroups_memberof_usergroup_leaveleader,usercp_usergroups_memberof_usergroup_leaveother,usercp_usergroups_memberof_usergroup_leave,usercp_usergroups_joinable_usergroup_description,usercp_options_time_format";

$templatelist .= ",usercp_editlists_sent_request,usercp_editlists_received_request,usercp_drafts_none,usercp_usergroups_memberof_usergroup_setdisplay,usercp_usergroups_memberof_usergroup_description,usercp_editlists_user,usercp_profile_day,usercp_profile_contact_fields,usercp_profile_contact_fields_field, usercp_profile_website";

$templatelist .= ",usercp_editlists_sent_request,usercp_editlists_received_request,usercp_drafts_none,usercp_usergroups_memberof_usergroup_setdisplay,usercp_usergroups_memberof_usergroup_description,usercp_options_quick_reply";


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 44Zeile 44

if(!$mybb->user['pmfolders'])
{


if(!$mybb->user['pmfolders'])
{

	$mybb->user['pmfolders'] = "1**".$lang->folder_inbox."$%%$2**".$lang->folder_sent_items."$%%$3**".$lang->folder_drafts."$%%$4**".$lang->folder_trash;
$db->update_query("users", array('pmfolders' => $mybb->user['pmfolders']), "uid='".$mybb->user['uid']."'");

	$mybb->user['pmfolders'] = '1**$%%$2**$%%$3**$%%$4**';
$db->update_query('users', array('pmfolders' => $mybb->user['pmfolders']), "uid = {$mybb->user['uid']}");

}

$errors = '';

}

$errors = '';

Zeile 57Zeile 57
$plugins->run_hooks("usercp_start");
if($mybb->input['action'] == "do_editsig" && $mybb->request_method == "post")
{

$plugins->run_hooks("usercp_start");
if($mybb->input['action'] == "do_editsig" && $mybb->request_method == "post")
{

	$parser_options = array(
'allow_html' => $mybb->settings['sightml'],
'filter_badwords' => 1,
'allow_mycode' => $mybb->settings['sigmycode'],
'allow_smilies' => $mybb->settings['sigsmilies'],
'allow_imgcode' => $mybb->settings['sigimgcode'],
"filter_badwords" => 1

	require_once MYBB_ROOT."inc/datahandlers/user.php";
$userhandler = new UserDataHandler();

$data = array(
'uid' => $mybb->user['uid'],
'signature' => $mybb->get_input('signature'),


	);


	);


	if($mybb->user['showimages'] != 1 && $mybb->user['uid'] != 0)



	$userhandler->set_data($data);

if(!$userhandler->verify_signature())

	{

	{

		$parser_options['allow_imgcode'] = 0;
}

$parsed_sig = $parser->parse_message($mybb->get_input('signature'), $parser_options);
if((($mybb->settings['sigimgcode'] == 0 && $mybb->settings['sigsmilies'] != 1) &&
substr_count($parsed_sig, "<img") > 0) ||
(($mybb->settings['sigimgcode'] == 1 || $mybb->settings['sigsmilies'] == 1) &&
substr_count($parsed_sig, "<img") > $mybb->settings['maxsigimages'])
)
{
if($mybb->settings['sigimgcode'] == 1)
{
$imgsallowed = $mybb->settings['maxsigimages'];
}
else
{
$imgsallowed = 0;
}
$lang->too_many_sig_images2 = $lang->sprintf($lang->too_many_sig_images2, $imgsallowed);
$error = inline_error($lang->too_many_sig_images." ".$lang->too_many_sig_images2);
$mybb->input['preview'] = 1;
}
else if($mybb->settings['siglength'] > 0)
{
if($mybb->settings['sigcountmycode'] == 0)
{
$parsed_sig = $parser->text_parse_message($mybb->get_input('signature'));
}
else
{
$parsed_sig = $mybb->get_input('signature');
}
$parsed_sig = preg_replace("#\s#", "", $parsed_sig);
$sig_length = my_strlen($parsed_sig);
if($sig_length > $mybb->settings['siglength'])
{
$lang->sig_too_long = $lang->sprintf($lang->sig_too_long, $mybb->settings['siglength']);
if($sig_length - $mybb->settings['siglength'] > 1)
{
$lang->sig_too_long .= $lang->sprintf($lang->sig_remove_chars_plural, $sig_length-$mybb->settings['siglength']);
}
else
{
$lang->sig_too_long .= $lang->sig_remove_chars_singular;
}
$error = inline_error($lang->sig_too_long);
}

		$error = inline_error($userhandler->get_friendly_errors());















































	}

	}

 


	if(isset($error) || !empty($mybb->input['preview']))
{
$mybb->input['action'] = "editsig";

	if(isset($error) || !empty($mybb->input['preview']))
{
$mybb->input['action'] = "editsig";

Zeile 187Zeile 143

$plugins->run_hooks("usercp_do_profile_start");



$plugins->run_hooks("usercp_do_profile_start");


	if($mybb->get_input('away', 1) == 1 && $mybb->settings['allowaway'] != 0)

	if($mybb->get_input('away', MyBB::INPUT_INT) == 1 && $mybb->settings['allowaway'] != 0)

	{
$awaydate = TIME_NOW;
if(!empty($mybb->input['awayday']))
{
// If the user has indicated that they will return on a specific day, but not month or year, assume it is current month and year

	{
$awaydate = TIME_NOW;
if(!empty($mybb->input['awayday']))
{
// If the user has indicated that they will return on a specific day, but not month or year, assume it is current month and year

			if(!$mybb->get_input('awaymonth', 1))

			if(!$mybb->get_input('awaymonth', MyBB::INPUT_INT))

			{
$mybb->input['awaymonth'] = my_date('n', $awaydate);
}

			{
$mybb->input['awaymonth'] = my_date('n', $awaydate);
}

			if(!$mybb->get_input('awayyear', 1))

			if(!$mybb->get_input('awayyear', MyBB::INPUT_INT))

			{
$mybb->input['awayyear'] = my_date('Y', $awaydate);
}

			{
$mybb->input['awayyear'] = my_date('Y', $awaydate);
}

Zeile 219Zeile 175
		else
{
$returndate = "";

		else
{
$returndate = "";

		}
$away = array(

		}
$away = array(

			"away" => 1,
"date" => $awaydate,
"returndate" => $returndate,
"awayreason" => $mybb->get_input('awayreason')

			"away" => 1,
"date" => $awaydate,
"returndate" => $returndate,
"awayreason" => $mybb->get_input('awayreason')

		);

		);

	}
else
{

	}
else
{

Zeile 238Zeile 194
	}

$bday = array(

	}

$bday = array(

		"day" => $mybb->get_input('bday1', 1),
"month" => $mybb->get_input('bday2', 1),
"year" => $mybb->get_input('bday3', 1)
);


		"day" => $mybb->get_input('bday1', MyBB::INPUT_INT),
"month" => $mybb->get_input('bday2', MyBB::INPUT_INT),
"year" => $mybb->get_input('bday3', MyBB::INPUT_INT)
);


	// Set up user handler.

	// Set up user handler.

	require_once "inc/datahandlers/user.php";

	require_once MYBB_ROOT."inc/datahandlers/user.php";

	$userhandler = new UserDataHandler("update");

$user = array(

	$userhandler = new UserDataHandler("update");

$user = array(

Zeile 255Zeile 211
		"birthday" => $bday,
"birthdayprivacy" => $mybb->get_input('birthdayprivacy'),
"away" => $away,

		"birthday" => $bday,
"birthdayprivacy" => $mybb->get_input('birthdayprivacy'),
"away" => $away,

		"profile_fields" => $mybb->get_input('profile_fields', 2)

		"profile_fields" => $mybb->get_input('profile_fields', MyBB::INPUT_ARRAY)

	);
foreach(array('icq', 'aim', 'yahoo', 'skype', 'google') as $cfield)
{

	);
foreach(array('icq', 'aim', 'yahoo', 'skype', 'google') as $cfield)
{

Zeile 265Zeile 221
			continue;
}


			continue;
}


		if($mybb->settings[$csetting] != -1 && !is_member($mybb->settings[$csetting]))
{
continue;
}


		if(!is_member($mybb->settings[$csetting]))
{
continue;
}


		if($cfield == 'icq')
{
$user[$cfield] = $mybb->get_input($cfield, 1);

		if($cfield == 'icq')
{
$user[$cfield] = $mybb->get_input($cfield, 1);

Zeile 279Zeile 235
			$user[$cfield] = $mybb->get_input($cfield);
}
}

			$user[$cfield] = $mybb->get_input($cfield);
}
}

	



	if($mybb->usergroup['canchangewebsite'] == 1)
{
$user['website'] = $mybb->get_input('website');

	if($mybb->usergroup['canchangewebsite'] == 1)
{
$user['website'] = $mybb->get_input('website');

Zeile 326Zeile 282
	{
$user = $mybb->input;
$bday = array();

	{
$user = $mybb->input;
$bday = array();

		$bday[0] = $mybb->get_input('bday1', 1);
$bday[1] = $mybb->get_input('bday2', 1);
$bday[2] = $mybb->get_input('bday3', 1);

		$bday[0] = $mybb->get_input('bday1', MyBB::INPUT_INT);
$bday[1] = $mybb->get_input('bday2', MyBB::INPUT_INT);
$bday[2] = $mybb->get_input('bday3', MyBB::INPUT_INT);

	}
else
{

	}
else
{

Zeile 382Zeile 338
		$ageselected = " selected=\"selected\"";
}


		$ageselected = " selected=\"selected\"";
}


	if($user['website'] == "" || $user['website'] == "http://")

	if(!my_validate_url($user['website']))

	{

	{

		$user['website'] = "http://";

		$user['website'] = '';

	}
else
{

	}
else
{

Zeile 394Zeile 350
	if($user['icq'] != "0")
{
$user['icq'] = (int)$user['icq'];

	if($user['icq'] != "0")
{
$user['icq'] = (int)$user['icq'];

	}


	}


	if($user['icq'] == 0)
{
$user['icq'] = '';

	if($user['icq'] == 0)
{
$user['icq'] = '';

	}


	}


	if($errors)
{
$user['skype'] = htmlspecialchars_uni($user['skype']);

	if($errors)
{
$user['skype'] = htmlspecialchars_uni($user['skype']);

Zeile 411Zeile 367

$contact_fields = array();
$contactfields = '';


$contact_fields = array();
$contactfields = '';

 
	$cfieldsshow = false;


	foreach(array('icq', 'aim', 'yahoo', 'skype', 'google') as $cfield)

	foreach(array('icq', 'aim', 'yahoo', 'skype', 'google') as $cfield)

	{

	{

		$contact_fields[$cfield] = '';
$csetting = 'allow'.$cfield.'field';
if($mybb->settings[$csetting] == '')

		$contact_fields[$cfield] = '';
$csetting = 'allow'.$cfield.'field';
if($mybb->settings[$csetting] == '')

		{
continue;
}

if($mybb->settings[$csetting] != -1 && !is_member($mybb->settings[$csetting]))

		{
continue;
}

if(!is_member($mybb->settings[$csetting]))

		{
continue;
}

		{
continue;
}

Zeile 434Zeile 392
		eval('$contact_fields[$cfield] = "'.$templates->get('usercp_profile_contact_fields_field').'";');
}


		eval('$contact_fields[$cfield] = "'.$templates->get('usercp_profile_contact_fields_field').'";');
}


	if(!empty($cfieldsshow))

	if($cfieldsshow)

	{
eval('$contactfields = "'.$templates->get('usercp_profile_contact_fields').'";');
}

	{
eval('$contactfields = "'.$templates->get('usercp_profile_contact_fields').'";');
}

Zeile 445Zeile 403
		if($errors)
{
if($user['away'] == 1)

		if($errors)
{
if($user['away'] == 1)

			{
$awaycheck[1] = "checked=\"checked\"";
}
else
{
$awaycheck[0] = "checked=\"checked\"";
}

			{
$awaycheck[1] = "checked=\"checked\"";
}
else
{
$awaycheck[0] = "checked=\"checked\"";
}

			$returndate = array();

			$returndate = array();

			$returndate[0] = $mybb->get_input('awayday', 1);
$returndate[1] = $mybb->get_input('awaymonth', 1);
$returndate[2] = $mybb->get_input('awayyear', 1);

			$returndate[0] = $mybb->get_input('awayday', MyBB::INPUT_INT);
$returndate[1] = $mybb->get_input('awaymonth', MyBB::INPUT_INT);
$returndate[2] = $mybb->get_input('awayyear', MyBB::INPUT_INT);

			$user['awayreason'] = htmlspecialchars_uni($mybb->get_input('awayreason'));
}
else

			$user['awayreason'] = htmlspecialchars_uni($mybb->get_input('awayreason'));
}
else

Zeile 511Zeile 469
	// Custom profile fields baby!
$altbg = "trow1";
$requiredfields = $customfields = '';

	// Custom profile fields baby!
$altbg = "trow1";
$requiredfields = $customfields = '';

	$mybb->input['profile_fields'] = $mybb->get_input('profile_fields', 2);

	$mybb->input['profile_fields'] = $mybb->get_input('profile_fields', MyBB::INPUT_ARRAY);


$pfcache = $cache->read('profilefields');



$pfcache = $cache->read('profilefields');


Zeile 519Zeile 477
	{
foreach($pfcache as $profilefield)
{

	{
foreach($pfcache as $profilefield)
{

			if(empty($profilefield['editableby']) || ($profilefield['editableby'] != -1 && !is_member($profilefield['editableby'])))
{
continue;
}

// Does this field have a minimum post count?
if($profilefield['postnum'] && $profilefield['postnum'] > $mybb->user['postnum'])

			if(!is_member($profilefield['editableby']) || ($profilefield['postnum'] && $profilefield['postnum'] > $mybb->user['postnum']))







			{
continue;
}

			{
continue;
}

Zeile 538Zeile 490
			if(isset($thing[1]))
{
$options = $thing[1];

			if(isset($thing[1]))
{
$options = $thing[1];

			}
else
{

			}
else
{

				$options = array();
}
$field = "fid{$profilefield['fid']}";

				$options = array();
}
$field = "fid{$profilefield['fid']}";

Zeile 550Zeile 502
				if(!isset($mybb->input['profile_fields'][$field]))
{
$mybb->input['profile_fields'][$field] = '';

				if(!isset($mybb->input['profile_fields'][$field]))
{
$mybb->input['profile_fields'][$field] = '';

				}

				}

				$userfield = $mybb->input['profile_fields'][$field];
}
else

				$userfield = $mybb->input['profile_fields'][$field];
}
else

Zeile 566Zeile 518
				else
{
$useropts = explode("\n", $userfield);

				else
{
$useropts = explode("\n", $userfield);

				}

				}

				if(is_array($useropts))
{
foreach($useropts as $key => $val)
{
$val = htmlspecialchars_uni($val);

				if(is_array($useropts))
{
foreach($useropts as $key => $val)
{
$val = htmlspecialchars_uni($val);

						$seloptions[$val] = $val;
}
}
$expoptions = explode("\n", $options);
if(is_array($expoptions))
{
foreach($expoptions as $key => $val)
{
$val = trim($val);
$val = str_replace("\n", "\\n", $val);

$sel = "";
if($val == $seloptions[$val])
{
$sel = " selected=\"selected\"";
}

eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");
}
if(!$profilefield['length'])

						$seloptions[$val] = $val;
}
}
$expoptions = explode("\n", $options);
if(is_array($expoptions))
{
foreach($expoptions as $key => $val)
{
$val = trim($val);
$val = str_replace("\n", "\\n", $val);

$sel = "";
if(isset($seloptions[$val]) && $val == $seloptions[$val])
{
$sel = " selected=\"selected\"";
}

eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");
}
if(!$profilefield['length'])

					{
$profilefield['length'] = 3;
}

eval("\$code = \"".$templates->get("usercp_profile_profilefields_multiselect")."\";");

					{
$profilefield['length'] = 3;
}

eval("\$code = \"".$templates->get("usercp_profile_profilefields_multiselect")."\";");

				}
}

				}
}

			elseif($type == "select")

			elseif($type == "select")

			{
$expoptions = explode("\n", $options);
if(is_array($expoptions))
{
foreach($expoptions as $key => $val)
{

			{
$expoptions = explode("\n", $options);
if(is_array($expoptions))
{
foreach($expoptions as $key => $val)
{

						$val = trim($val);
$val = str_replace("\n", "\\n", $val);
$sel = "";

						$val = trim($val);
$val = str_replace("\n", "\\n", $val);
$sel = "";

Zeile 613Zeile 565
						{
$sel = " selected=\"selected\"";
}

						{
$sel = " selected=\"selected\"";
}





						eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");
}
if(!$profilefield['length'])

						eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");
}
if(!$profilefield['length'])

Zeile 633Zeile 585
					{
$checked = "";
if($val == $userfield)

					{
$checked = "";
if($val == $userfield)

						{
$checked = " checked=\"checked\"";

						{
$checked = " checked=\"checked\"";

						}

eval("\$code .= \"".$templates->get("usercp_profile_profilefields_radio")."\";");

						}

eval("\$code .= \"".$templates->get("usercp_profile_profilefields_radio")."\";");

Zeile 642Zeile 594
				}
}
elseif($type == "checkbox")

				}
}
elseif($type == "checkbox")

			{

			{

				if($errors)
{
$useropts = $userfield;

				if($errors)
{
$useropts = $userfield;

Zeile 656Zeile 608
					foreach($useropts as $key => $val)
{
$seloptions[$val] = $val;

					foreach($useropts as $key => $val)
{
$seloptions[$val] = $val;

					}

					}

				}
$expoptions = explode("\n", $options);
if(is_array($expoptions))

				}
$expoptions = explode("\n", $options);
if(is_array($expoptions))

Zeile 664Zeile 616
					foreach($expoptions as $key => $val)
{
$checked = "";

					foreach($expoptions as $key => $val)
{
$checked = "";

						if($val == $seloptions[$val])

						if(isset($seloptions[$val]) && $val == $seloptions[$val])

						{
$checked = " checked=\"checked\"";
}

eval("\$code .= \"".$templates->get("usercp_profile_profilefields_checkbox")."\";");
}

						{
$checked = " checked=\"checked\"";
}

eval("\$code .= \"".$templates->get("usercp_profile_profilefields_checkbox")."\";");
}

				}
}

				}
}

			elseif($type == "textarea")
{
$value = htmlspecialchars_uni($userfield);
eval("\$code = \"".$templates->get("usercp_profile_profilefields_textarea")."\";");
}
else

			elseif($type == "textarea")
{
$value = htmlspecialchars_uni($userfield);
eval("\$code = \"".$templates->get("usercp_profile_profilefields_textarea")."\";");
}
else

			{

			{

				$value = htmlspecialchars_uni($userfield);
$maxlength = "";
if($profilefield['maxlength'] > 0)
{
$maxlength = " maxlength=\"{$profilefield['maxlength']}\"";
}

				$value = htmlspecialchars_uni($userfield);
$maxlength = "";
if($profilefield['maxlength'] > 0)
{
$maxlength = " maxlength=\"{$profilefield['maxlength']}\"";
}





				eval("\$code = \"".$templates->get("usercp_profile_profilefields_text")."\";");
}

if($profilefield['required'] == 1)
{
eval("\$requiredfields .= \"".$templates->get("usercp_profile_customfield")."\";");

				eval("\$code = \"".$templates->get("usercp_profile_profilefields_text")."\";");
}

if($profilefield['required'] == 1)
{
eval("\$requiredfields .= \"".$templates->get("usercp_profile_customfield")."\";");

			}

			}

			else
{
eval("\$customfields .= \"".$templates->get("usercp_profile_customfield")."\";");

			else
{
eval("\$customfields .= \"".$templates->get("usercp_profile_customfield")."\";");

Zeile 705Zeile 657
			$options = "";
$expoptions = "";
$useropts = "";

			$options = "";
$expoptions = "";
$useropts = "";

			$seloptions = "";
}
}

			$seloptions = array();
}
}

	if($customfields)
{
eval("\$customfields = \"".$templates->get("usercp_profile_profilefields")."\";");

	if($customfields)
{
eval("\$customfields = \"".$templates->get("usercp_profile_profilefields")."\";");

Zeile 719Zeile 671
		{
$defaulttitle = '';
$usertitles = $cache->read('usertitles');

		{
$defaulttitle = '';
$usertitles = $cache->read('usertitles');





			foreach($usertitles as $title)
{
if($title['posts'] <= $mybb->user['postnum'])
{

			foreach($usertitles as $title)
{
if($title['posts'] <= $mybb->user['postnum'])
{

					$defaulttitle = $title['title'];

					$defaulttitle = htmlspecialchars_uni($title['title']);

					break;
}

					break;
}

			}

			}

		}
else
{

		}
else
{

			$defaulttitle = $mybb->usergroup['usertitle'];

			$defaulttitle = htmlspecialchars_uni($mybb->usergroup['usertitle']);

		}

$newtitle = '';

		}

$newtitle = '';

Zeile 747Zeile 699
				$user['usertitle'] = $mybb->user['usertitle'];
}
}

				$user['usertitle'] = $mybb->user['usertitle'];
}
}

		



		$user['usertitle'] = htmlspecialchars_uni($user['usertitle']);

$currentcustom = $reverttitle = '';

		$user['usertitle'] = htmlspecialchars_uni($user['usertitle']);

$currentcustom = $reverttitle = '';

Zeile 760Zeile 712
				eval("\$reverttitle = \"".$templates->get("usercp_profile_customtitle_reverttitle")."\";");
}
}

				eval("\$reverttitle = \"".$templates->get("usercp_profile_customtitle_reverttitle")."\";");
}
}

		



		eval("\$customtitle = \"".$templates->get("usercp_profile_customtitle")."\";");
}
else
{
$customtitle = "";

		eval("\$customtitle = \"".$templates->get("usercp_profile_customtitle")."\";");
}
else
{
$customtitle = "";

	}


	}


	if($mybb->usergroup['canchangewebsite'] == 1)
{
eval("\$website = \"".$templates->get("usercp_profile_website")."\";");
}

	if($mybb->usergroup['canchangewebsite'] == 1)
{
eval("\$website = \"".$templates->get("usercp_profile_website")."\";");
}

	



	$plugins->run_hooks("usercp_profile_end");

eval("\$editprofile = \"".$templates->get("usercp_profile")."\";");

	$plugins->run_hooks("usercp_profile_end");

eval("\$editprofile = \"".$templates->get("usercp_profile")."\";");

Zeile 785Zeile 737
	verify_post_check($mybb->get_input('my_post_key'));

$plugins->run_hooks("usercp_do_options_start");

	verify_post_check($mybb->get_input('my_post_key'));

$plugins->run_hooks("usercp_do_options_start");





	// Set up user handler.
require_once MYBB_ROOT."inc/datahandlers/user.php";
$userhandler = new UserDataHandler("update");

$user = array(
"uid" => $mybb->user['uid'],

	// Set up user handler.
require_once MYBB_ROOT."inc/datahandlers/user.php";
$userhandler = new UserDataHandler("update");

$user = array(
"uid" => $mybb->user['uid'],

		"style" => $mybb->get_input('style', 1),
"dateformat" => $mybb->get_input('dateformat', 1),
"timeformat" => $mybb->get_input('timeformat', 1),

		"style" => $mybb->get_input('style', MyBB::INPUT_INT),
"dateformat" => $mybb->get_input('dateformat', MyBB::INPUT_INT),
"timeformat" => $mybb->get_input('timeformat', MyBB::INPUT_INT),

		"timezone" => $db->escape_string($mybb->get_input('timezoneoffset')),

		"timezone" => $db->escape_string($mybb->get_input('timezoneoffset')),

		"language" => $mybb->get_input('language')



		"language" => $mybb->get_input('language'),
'usergroup' => $mybb->user['usergroup'],
'additionalgroups' => $mybb->user['additionalgroups']

	);

$user['options'] = array(

	);

$user['options'] = array(

		"allownotices" => $mybb->get_input('allownotices', 1),
"hideemail" => $mybb->get_input('hideemail', 1),
"subscriptionmethod" => $mybb->get_input('subscriptionmethod', 1),
"invisible" => $mybb->get_input('invisible', 1),
"dstcorrection" => $mybb->get_input('dstcorrection', 1),

		"allownotices" => $mybb->get_input('allownotices', MyBB::INPUT_INT),
"hideemail" => $mybb->get_input('hideemail', MyBB::INPUT_INT),
"subscriptionmethod" => $mybb->get_input('subscriptionmethod', MyBB::INPUT_INT),
"invisible" => $mybb->get_input('invisible', MyBB::INPUT_INT),
"dstcorrection" => $mybb->get_input('dstcorrection', MyBB::INPUT_INT),

		"threadmode" => $mybb->get_input('threadmode'),

		"threadmode" => $mybb->get_input('threadmode'),

		"showimages" => $mybb->get_input('showimages', 1),
"showvideos" => $mybb->get_input('showvideos', 1),
"showsigs" => $mybb->get_input('showsigs', 1),
"showavatars" => $mybb->get_input('showavatars', 1),
"showquickreply" => $mybb->get_input('showquickreply', 1),
"receivepms" => $mybb->get_input('receivepms', 1),
"pmnotice" => $mybb->get_input('pmnotice', 1),
"receivefrombuddy" => $mybb->get_input('receivefrombuddy', 1),
"daysprune" => $mybb->get_input('daysprune', 1),
"showcodebuttons" => $mybb->get_input('showcodebuttons', 1),
"sourceeditor" => $mybb->get_input('sourceeditor', 1),
"pmnotify" => $mybb->get_input('pmnotify', 1),
"buddyrequestspm" => $mybb->get_input('buddyrequestspm', 1),
"buddyrequestsauto" => $mybb->get_input('buddyrequestsauto', 1),
"showredirect" => $mybb->get_input('showredirect', 1),
"classicpostbit" => $mybb->get_input('classicpostbit', 1)

		"showimages" => $mybb->get_input('showimages', MyBB::INPUT_INT),
"showvideos" => $mybb->get_input('showvideos', MyBB::INPUT_INT),
"showsigs" => $mybb->get_input('showsigs', MyBB::INPUT_INT),
"showavatars" => $mybb->get_input('showavatars', MyBB::INPUT_INT),
"showquickreply" => $mybb->get_input('showquickreply', MyBB::INPUT_INT),
"receivepms" => $mybb->get_input('receivepms', MyBB::INPUT_INT),
"pmnotice" => $mybb->get_input('pmnotice', MyBB::INPUT_INT),
"receivefrombuddy" => $mybb->get_input('receivefrombuddy', MyBB::INPUT_INT),
"daysprune" => $mybb->get_input('daysprune', MyBB::INPUT_INT),
"showcodebuttons" => $mybb->get_input('showcodebuttons', MyBB::INPUT_INT),
"sourceeditor" => $mybb->get_input('sourceeditor', MyBB::INPUT_INT),
"pmnotify" => $mybb->get_input('pmnotify', MyBB::INPUT_INT),
"buddyrequestspm" => $mybb->get_input('buddyrequestspm', MyBB::INPUT_INT),
"buddyrequestsauto" => $mybb->get_input('buddyrequestsauto', MyBB::INPUT_INT),
"showredirect" => $mybb->get_input('showredirect', MyBB::INPUT_INT),
"classicpostbit" => $mybb->get_input('classicpostbit', MyBB::INPUT_INT)

	);

if($mybb->settings['usertppoptions'])
{

	);

if($mybb->settings['usertppoptions'])
{

		$user['options']['tpp'] = $mybb->get_input('tpp', 1);

		$user['options']['tpp'] = $mybb->get_input('tpp', MyBB::INPUT_INT);

	}

if($mybb->settings['userpppoptions'])
{

	}

if($mybb->settings['userpppoptions'])
{

		$user['options']['ppp'] = $mybb->get_input('ppp', 1);

		$user['options']['ppp'] = $mybb->get_input('ppp', MyBB::INPUT_INT);

	}

$userhandler->set_data($user);

	}

$userhandler->set_data($user);



 

if(!$userhandler->validate_user())
{


if(!$userhandler->validate_user())
{

Zeile 899Zeile 852
	if(isset($user['invisible']) && $user['invisible'] == 1)
{
$invisiblecheck = "checked=\"checked\"";

	if(isset($user['invisible']) && $user['invisible'] == 1)
{
$invisiblecheck = "checked=\"checked\"";

	}

	}

	else
{
$invisiblecheck = "";

	else
{
$invisiblecheck = "";

Zeile 926Zeile 879
	else if(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 3)
{
$instant_pm_subscribe_selected = "selected=\"selected\"";

	else if(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 3)
{
$instant_pm_subscribe_selected = "selected=\"selected\"";

	}
else
{

	}
else
{

		$no_auto_subscribe_selected = "selected=\"selected\"";
}

if(isset($user['showimages']) && $user['showimages'] == 1)
{
$showimagescheck = "checked=\"checked\"";

		$no_auto_subscribe_selected = "selected=\"selected\"";
}

if(isset($user['showimages']) && $user['showimages'] == 1)
{
$showimagescheck = "checked=\"checked\"";

	}
else

	}
else

	{
$showimagescheck = "";
}

	{
$showimagescheck = "";
}

Zeile 957Zeile 910
	else
{
$showsigscheck = "";

	else
{
$showsigscheck = "";

	}

	}


if(isset($user['showavatars']) && $user['showavatars'] == 1)
{


if(isset($user['showavatars']) && $user['showavatars'] == 1)
{

Zeile 1053Zeile 1006
	{
$pmnotifycheck = '';
}

	{
$pmnotifycheck = '';
}

	



	if(isset($user['buddyrequestspm']) && $user['buddyrequestspm'] != 0)
{
$buddyrequestspmcheck = "checked=\"checked\"";

	if(isset($user['buddyrequestspm']) && $user['buddyrequestspm'] != 0)
{
$buddyrequestspmcheck = "checked=\"checked\"";

	}
else

	}
else

	{
$buddyrequestspmcheck = '';

	{
$buddyrequestspmcheck = '';

	}

	}


if(isset($user['buddyrequestsauto']) && $user['buddyrequestsauto'] != 0)
{
$buddyrequestsautocheck = "checked=\"checked\"";


if(isset($user['buddyrequestsauto']) && $user['buddyrequestsauto'] != 0)
{
$buddyrequestsautocheck = "checked=\"checked\"";

	}

	}

	else
{
$buddyrequestsautocheck = '';
}

if(!isset($user['threadmode']) || ($user['threadmode'] != "threaded" && $user['threadmode'] != "linear"))

	else
{
$buddyrequestsautocheck = '';
}

if(!isset($user['threadmode']) || ($user['threadmode'] != "threaded" && $user['threadmode'] != "linear"))

	{

	{

		$user['threadmode'] = ''; // Leave blank to show default
}


		$user['threadmode'] = ''; // Leave blank to show default
}


Zeile 1088Zeile 1041

$date_format_options = $dateformat = '';
foreach($date_formats as $key => $format)


$date_format_options = $dateformat = '';
foreach($date_formats as $key => $format)

	{

	{

		$selected = '';
if(isset($user['dateformat']) && $user['dateformat'] == $key)
{

		$selected = '';
if(isset($user['dateformat']) && $user['dateformat'] == $key)
{

Zeile 1110Zeile 1063

$timeformat = my_date($format, TIME_NOW, "", 0);
eval("\$time_format_options .= \"".$templates->get("usercp_options_time_format")."\";");


$timeformat = my_date($format, TIME_NOW, "", 0);
eval("\$time_format_options .= \"".$templates->get("usercp_options_time_format")."\";");

	}

	}


$tzselect = build_timezone_select("timezoneoffset", $mybb->user['timezone'], true);



$tzselect = build_timezone_select("timezoneoffset", $mybb->user['timezone'], true);


Zeile 1118Zeile 1071
	if($mybb->settings['allowbuddyonly'] == 1)
{
eval("\$pms_from_buddys = \"".$templates->get("usercp_options_pms_from_buddys")."\";");

	if($mybb->settings['allowbuddyonly'] == 1)
{
eval("\$pms_from_buddys = \"".$templates->get("usercp_options_pms_from_buddys")."\";");

 
	}

$pms = '';
if($mybb->settings['enablepms'] != 0 && $mybb->usergroup['canusepms'] == 1)
{
eval("\$pms = \"".$templates->get("usercp_options_pms")."\";");
}

$quick_reply = '';
if($mybb->settings['quickreply'] == 1)
{
eval("\$quick_reply = \"".$templates->get("usercp_options_quick_reply")."\";");

	}

$threadview = array('linear' => '', 'threaded' => '');
if(isset($user['threadmode']) && is_scalar($user['threadmode']))
{
$threadview[$user['threadmode']] = 'selected="selected"';

	}

$threadview = array('linear' => '', 'threaded' => '');
if(isset($user['threadmode']) && is_scalar($user['threadmode']))
{
$threadview[$user['threadmode']] = 'selected="selected"';

	}

	}

	$daysprunesel = array(1 => '', 5 => '', 10 => '', 20 => '', 50 => '', 75 => '', 100 => '', 365 => '', 9999 => '');
if(isset($user['daysprune']) && is_numeric($user['daysprune']))
{
$daysprunesel[$user['daysprune']] = 'selected="selected"';
}
if(!isset($user['style']))

	$daysprunesel = array(1 => '', 5 => '', 10 => '', 20 => '', 50 => '', 75 => '', 100 => '', 365 => '', 9999 => '');
if(isset($user['daysprune']) && is_numeric($user['daysprune']))
{
$daysprunesel[$user['daysprune']] = 'selected="selected"';
}
if(!isset($user['style']))

	{

	{

		$user['style'] = '';
}

		$user['style'] = '';
}





	$board_style = $stylelist = '';
$stylelist = build_theme_select("style", $user['style']);

	$board_style = $stylelist = '';
$stylelist = build_theme_select("style", $user['style']);





	if(!empty($stylelist))
{
eval('$board_style = "'.$templates->get('usercp_options_style').'";');

	if(!empty($stylelist))
{
eval('$board_style = "'.$templates->get('usercp_options_style').'";');

Zeile 1151Zeile 1116
		if(is_array($explodedtpp))
{
foreach($explodedtpp as $key => $val)

		if(is_array($explodedtpp))
{
foreach($explodedtpp as $key => $val)

			{

			{

				$val = trim($val);
$selected = "";
if(isset($user['tpp']) && $user['tpp'] == $val)

				$val = trim($val);
$selected = "";
if(isset($user['tpp']) && $user['tpp'] == $val)

				{
$selected = " selected=\"selected\"";
}


				{
$selected = " selected=\"selected\"";
}


				$tpp_option = $lang->sprintf($lang->tpp_option, $val);
eval("\$tppoptions .= \"".$templates->get("usercp_options_tppselect_option")."\";");
}
}
eval("\$tppselect = \"".$templates->get("usercp_options_tppselect")."\";");

				$tpp_option = $lang->sprintf($lang->tpp_option, $val);
eval("\$tppoptions .= \"".$templates->get("usercp_options_tppselect_option")."\";");
}
}
eval("\$tppselect = \"".$templates->get("usercp_options_tppselect")."\";");

	}


	}


	if($mybb->settings['userpppoptions'])
{
$explodedppp = explode(",", $mybb->settings['userpppoptions']);

	if($mybb->settings['userpppoptions'])
{
$explodedppp = explode(",", $mybb->settings['userpppoptions']);

Zeile 1186Zeile 1151
			}
}
eval("\$pppselect = \"".$templates->get("usercp_options_pppselect")."\";");

			}
}
eval("\$pppselect = \"".$templates->get("usercp_options_pppselect")."\";");

	}

$plugins->run_hooks("usercp_options_end");


	}

$plugins->run_hooks("usercp_options_end");


	eval("\$editprofile = \"".$templates->get("usercp_options")."\";");
output_page($editprofile);
}

	eval("\$editprofile = \"".$templates->get("usercp_options")."\";");
output_page($editprofile);
}

Zeile 1209Zeile 1174
	else
{
// Set up user handler.

	else
{
// Set up user handler.

		require_once "inc/datahandlers/user.php";

		require_once MYBB_ROOT."inc/datahandlers/user.php";

		$userhandler = new UserDataHandler("update");

$user = array(

		$userhandler = new UserDataHandler("update");

$user = array(

Zeile 1299Zeile 1264

$plugins->run_hooks("usercp_do_password_start");
if(validate_password_from_uid($mybb->user['uid'], $mybb->get_input('oldpassword')) == false)


$plugins->run_hooks("usercp_do_password_start");
if(validate_password_from_uid($mybb->user['uid'], $mybb->get_input('oldpassword')) == false)

	{
$errors[] = $lang->error_invalidpassword;
}
else
{
// Set up user handler.
require_once "inc/datahandlers/user.php";
$userhandler = new UserDataHandler("update");


	{
$errors[] = $lang->error_invalidpassword;
}
else
{
// Set up user handler.
require_once MYBB_ROOT."inc/datahandlers/user.php";
$userhandler = new UserDataHandler("update");


		$user = array(
"uid" => $mybb->user['uid'],
"password" => $mybb->get_input('password'),

		$user = array(
"uid" => $mybb->user['uid'],
"password" => $mybb->get_input('password'),

Zeile 1323Zeile 1288
		else
{
$userhandler->update_user();

		else
{
$userhandler->update_user();

			my_setcookie("mybbuser", $mybb->user['uid']."_".$userhandler->data['loginkey']);

			my_setcookie("mybbuser", $mybb->user['uid']."_".$userhandler->data['loginkey'], null, true);


// Notify the user by email that their password has been changed
$mail_message = $lang->sprintf($lang->email_changepassword, $mybb->user['username'], $mybb->user['email'], $mybb->settings['bbname'], $mybb->settings['bburl']);


// Notify the user by email that their password has been changed
$mail_message = $lang->sprintf($lang->email_changepassword, $mybb->user['username'], $mybb->user['email'], $mybb->settings['bbname'], $mybb->settings['bburl']);

Zeile 1367Zeile 1332
	else
{
// Set up user handler.

	else
{
// Set up user handler.

		require_once "inc/datahandlers/user.php";

		require_once MYBB_ROOT."inc/datahandlers/user.php";

		$userhandler = new UserDataHandler("update");

$user = array(

		$userhandler = new UserDataHandler("update");

$user = array(

Zeile 1423Zeile 1388
	}

// Clean input - only accept integers thanks!

	}

// Clean input - only accept integers thanks!

	$mybb->input['check'] = array_map('intval', $mybb->get_input('check', 2));

	$mybb->input['check'] = array_map('intval', $mybb->get_input('check', MyBB::INPUT_ARRAY));

	$tids = implode(",", $mybb->input['check']);

// Deleting these subscriptions?

	$tids = implode(",", $mybb->input['check']);

// Deleting these subscriptions?

Zeile 1482Zeile 1447
	}

$perpage = $mybb->settings['threadsperpage'];

	}

$perpage = $mybb->settings['threadsperpage'];

	$page = $mybb->get_input('page', 1);

	$page = $mybb->get_input('page', MyBB::INPUT_INT);

	if($page > 0)
{
$start = ($page-1) * $perpage;

	if($page > 0)
{
$start = ($page-1) * $perpage;

Zeile 1542Zeile 1507
		if($sids)
{
$db->delete_query("threadsubscriptions", "sid IN ({$sids}) AND uid='{$mybb->user['uid']}'");

		if($sids)
{
$db->delete_query("threadsubscriptions", "sid IN ({$sids}) AND uid='{$mybb->user['uid']}'");

		}

		}


$threadcount = $threadcount - count($del_subscriptions);



$threadcount = $threadcount - count($del_subscriptions);


Zeile 1555Zeile 1520
	if(!empty($subscriptions))
{
$tids = implode(",", array_keys($subscriptions));

	if(!empty($subscriptions))
{
$tids = implode(",", array_keys($subscriptions));

 
		$readforums = array();

// Build a forum cache.
$query = $db->query("
SELECT f.fid, fr.dateline AS lastread
FROM ".TABLE_PREFIX."forums f
LEFT JOIN ".TABLE_PREFIX."forumsread fr ON (fr.fid=f.fid AND fr.uid='{$mybb->user['uid']}')
WHERE f.active != 0
ORDER BY pid, disporder
");





		if($mybb->user['uid'] == 0)
{
// Build a forum cache.
$query = $db->query("
SELECT fid
FROM ".TABLE_PREFIX."forums
WHERE active != 0
ORDER BY pid, disporder
");

$forumsread = my_unserialize($mybb->cookies['mybb']['forumread']);
}
else
{
// Build a forum cache.
$query = $db->query("
SELECT f.fid, fr.dateline AS lastread
FROM ".TABLE_PREFIX."forums f
LEFT JOIN ".TABLE_PREFIX."forumsread fr ON (fr.fid=f.fid AND fr.uid='{$mybb->user['uid']}')
WHERE f.active != 0
ORDER BY pid, disporder
");
}

 
		while($forum = $db->fetch_array($query))
{

		while($forum = $db->fetch_array($query))
{

			if($mybb->user['uid'] == 0)
{
if($forumsread[$forum['fid']])
{
$forum['lastread'] = $forumsread[$forum['fid']];
}
}

 
			$readforums[$forum['fid']] = $forum['lastread'];

			$readforums[$forum['fid']] = $forum['lastread'];

		}


		}


		// Check participation by the current user in any of these threads - for 'dot' folder icons
if($mybb->settings['dotfolders'] != 0)
{

		// Check participation by the current user in any of these threads - for 'dot' folder icons
if($mybb->settings['dotfolders'] != 0)
{

Zeile 1618Zeile 1563

// Now we can build our subscription list
foreach($subscriptions as $thread)


// Now we can build our subscription list
foreach($subscriptions as $thread)

		{

		{

			$bgcolor = alt_trow();

			$bgcolor = alt_trow();





			$folder = '';
$prefix = '';
$thread['threadprefix'] = '';

			$folder = '';
$prefix = '';
$thread['threadprefix'] = '';





			// If this thread has a prefix, insert a space between prefix and subject
if($thread['prefix'] != 0 && !empty($threadprefixes[$thread['prefix']]))
{

			// If this thread has a prefix, insert a space between prefix and subject
if($thread['prefix'] != 0 && !empty($threadprefixes[$thread['prefix']]))
{

Zeile 1638Zeile 1583
			// Build our links
$thread['threadlink'] = get_thread_link($thread['tid']);
$thread['lastpostlink'] = get_thread_link($thread['tid'], 0, "lastpost");

			// Build our links
$thread['threadlink'] = get_thread_link($thread['tid']);
$thread['lastpostlink'] = get_thread_link($thread['tid'], 0, "lastpost");





			// Fetch the thread icon if we have one
if($thread['icon'] > 0 && $icon_cache[$thread['icon']])
{

			// Fetch the thread icon if we have one
if($thread['icon'] > 0 && $icon_cache[$thread['icon']])
{

Zeile 1651Zeile 1596
			else
{
$icon = "&nbsp;";

			else
{
$icon = "&nbsp;";

			}


			}


			// Determine the folder
$folder = '';
$folder_label = '';

			// Determine the folder
$folder = '';
$folder_label = '';

Zeile 1668Zeile 1613
			$donenew = 0;
$lastread = 0;


			$donenew = 0;
$lastread = 0;


			if($mybb->settings['threadreadcut'] > 0 && $mybb->user['uid'])

			if($mybb->settings['threadreadcut'] > 0)

			{
$forum_read = $readforums[$thread['fid']];

$read_cutoff = TIME_NOW-$mybb->settings['threadreadcut']*60*60*24;
if($forum_read == 0 || $forum_read < $read_cutoff)

			{
$forum_read = $readforums[$thread['fid']];

$read_cutoff = TIME_NOW-$mybb->settings['threadreadcut']*60*60*24;
if($forum_read == 0 || $forum_read < $read_cutoff)

				{

				{

					$forum_read = $read_cutoff;
}

					$forum_read = $read_cutoff;
}

			}
else
{
$forum_read = $forumsread[$thread['fid']];

 
			}

$cutoff = 0;
if($mybb->settings['threadreadcut'] > 0 && $thread['lastpost'] > $forum_read)

			}

$cutoff = 0;
if($mybb->settings['threadreadcut'] > 0 && $thread['lastpost'] > $forum_read)

			{

			{

				$cutoff = TIME_NOW-$mybb->settings['threadreadcut']*60*60*24;
}

if($thread['lastpost'] > $cutoff)
{
if($thread['lastread'])

				$cutoff = TIME_NOW-$mybb->settings['threadreadcut']*60*60*24;
}

if($thread['lastpost'] > $cutoff)
{
if($thread['lastread'])

				{

				{

					$lastread = $thread['lastread'];

					$lastread = $thread['lastread'];

				}

				}

				else
{
$lastread = 1;

				else
{
$lastread = 1;

				}
}

				}
}


if(!$lastread)
{


if(!$lastread)
{

Zeile 1712Zeile 1653
				{
$lastread = $forum_read;
}

				{
$lastread = $forum_read;
}

			}


			}


			if($lastread && $lastread < $thread['lastpost'])
{
$folder .= "new";

			if($lastread && $lastread < $thread['lastpost'])
{
$folder .= "new";

Zeile 1733Zeile 1674
			{
$folder .= "hot";
$folder_label .= $lang->icon_hot;

			{
$folder .= "hot";
$folder_label .= $lang->icon_hot;

			}


			}


			if($thread['closed'] == 1)
{
$folder .= "lock";
$folder_label .= $lang->icon_lock;

			if($thread['closed'] == 1)
{
$folder .= "lock";
$folder_label .= $lang->icon_lock;

			}

			}


$folder .= "folder";



$folder .= "folder";


Zeile 1750Zeile 1691

// Build last post info
$lastpostdate = my_date('relative', $thread['lastpost']);


// Build last post info
$lastpostdate = my_date('relative', $thread['lastpost']);

			$lastposter = $thread['lastposter'];








			if(!$lastposteruid && !$thread['lastposter'])
{
$lastposter = htmlspecialchars_uni($lang->guest);
}
else
{
$lastposter = htmlspecialchars_uni($thread['lastposter']);
}

			$lastposteruid = $thread['lastposteruid'];

			$lastposteruid = $thread['lastposteruid'];





			// Don't link to guest's profiles (they have no profile).
if($lastposteruid == 0)
{

			// Don't link to guest's profiles (they have no profile).
if($lastposteruid == 0)
{

Zeile 1765Zeile 1713

$thread['replies'] = my_number_format($thread['replies']);
$thread['views'] = my_number_format($thread['views']);


$thread['replies'] = my_number_format($thread['replies']);
$thread['views'] = my_number_format($thread['views']);





			// What kind of notification type do we have here?
switch($thread['notification'])
{
case "2": // PM
$notification_type = $lang->pm_notification;

			// What kind of notification type do we have here?
switch($thread['notification'])
{
case "2": // PM
$notification_type = $lang->pm_notification;

					break;

					break;

				case "1": // Email
$notification_type = $lang->email_notification;
break;

				case "1": // Email
$notification_type = $lang->email_notification;
break;

Zeile 1784Zeile 1732

// Provide remove options
eval("\$remove_options = \"".$templates->get("usercp_subscriptions_remove")."\";");


// Provide remove options
eval("\$remove_options = \"".$templates->get("usercp_subscriptions_remove")."\";");

	}
else
{

	}
else
{

		$remove_options = '';
eval("\$threads = \"".$templates->get("usercp_subscriptions_none")."\";");
}

		$remove_options = '';
eval("\$threads = \"".$templates->get("usercp_subscriptions_none")."\";");
}

Zeile 1800Zeile 1748
if($mybb->input['action'] == "forumsubscriptions")
{
$plugins->run_hooks("usercp_forumsubscriptions_start");

if($mybb->input['action'] == "forumsubscriptions")
{
$plugins->run_hooks("usercp_forumsubscriptions_start");


if($mybb->user['uid'] == 0)
{
// Build a forum cache.
$query = $db->query("
SELECT fid
FROM ".TABLE_PREFIX."forums
WHERE active != 0
ORDER BY pid, disporder
");

if(isset($mybb->cookies['mybb']['forumread']))
{
$forumsread = my_unserialize($mybb->cookies['mybb']['forumread']);
}
}
else
{
// Build a forum cache.
$query = $db->query("
SELECT f.fid, fr.dateline AS lastread
FROM ".TABLE_PREFIX."forums f
LEFT JOIN ".TABLE_PREFIX."forumsread fr ON (fr.fid=f.fid AND fr.uid='{$mybb->user['uid']}')
WHERE f.active != 0
ORDER BY pid, disporder
");
}


// Build a forum cache.
$query = $db->query("
SELECT f.fid, fr.dateline AS lastread
FROM ".TABLE_PREFIX."forums f
LEFT JOIN ".TABLE_PREFIX."forumsread fr ON (fr.fid=f.fid AND fr.uid='{$mybb->user['uid']}')
WHERE f.active != 0
ORDER BY pid, disporder
");



















	$readforums = array();
while($forum = $db->fetch_array($query))
{

	$readforums = array();
while($forum = $db->fetch_array($query))
{

		if($mybb->user['uid'] == 0)
{
if($forumsread[$forum['fid']])
{
$forum['lastread'] = $forumsread[$forum['fid']];
}
}

 
		$readforums[$forum['fid']] = $forum['lastread'];
}


		$readforums[$forum['fid']] = $forum['lastread'];
}


Zeile 1858Zeile 1781
	{
$forum_url = get_forum_link($forum['fid']);
$forumpermissions = $fpermissions[$forum['fid']];

	{
$forum_url = get_forum_link($forum['fid']);
$forumpermissions = $fpermissions[$forum['fid']];





		if($forumpermissions['canview'] == 0 || $forumpermissions['canviewthreads'] == 0)
{
continue;

		if($forumpermissions['canview'] == 0 || $forumpermissions['canviewthreads'] == 0)
{
continue;

Zeile 1871Zeile 1794
		{
$posts = '-';
$threads = '-';

		{
$posts = '-';
$threads = '-';

		}
else

		}
else

		{
$posts = my_number_format($forum['posts']);
$threads = my_number_format($forum['threads']);

		{
$posts = my_number_format($forum['posts']);
$threads = my_number_format($forum['threads']);

		}

		}





		if($forum['lastpost'] == 0 || $forum['lastposter'] == "")

		if($forum['lastpost'] == 0)

		{
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_never")."\";");
}

		{
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_never")."\";");
}

Zeile 1892Zeile 1815
			$forum['lastpostsubject'] = $parser->parse_badwords($forum['lastpostsubject']);
$lastpost_date = my_date('relative', $forum['lastpost']);
$lastposttid = $forum['lastposttid'];

			$forum['lastpostsubject'] = $parser->parse_badwords($forum['lastpostsubject']);
$lastpost_date = my_date('relative', $forum['lastpost']);
$lastposttid = $forum['lastposttid'];

			$lastposter = $forum['lastposter'];
$lastpost_profilelink = build_profile_link($lastposter, $forum['lastposteruid']);















			if(!$forum['lastposteruid'] && !$forum['lastposter'])
{
$lastposter = htmlspecialchars_uni($lang->guest);
}
else
{
$lastposter = htmlspecialchars_uni($forum['lastposter']);
}
if($forum['lastposteruid'] == 0)
{
$lastpost_profilelink = $lastposter;
}
else
{
$lastpost_profilelink = build_profile_link($lastposter, $forum['lastposteruid']);
}

			$full_lastpost_subject = $lastpost_subject = htmlspecialchars_uni($forum['lastpostsubject']);
if(my_strlen($lastpost_subject) > 25)
{

			$full_lastpost_subject = $lastpost_subject = htmlspecialchars_uni($forum['lastpostsubject']);
if(my_strlen($lastpost_subject) > 25)
{

Zeile 1901Zeile 1838
			}
$lastpost_link = get_thread_link($forum['lastposttid'], 0, "lastpost");
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost")."\";");

			}
$lastpost_link = get_thread_link($forum['lastposttid'], 0, "lastpost");
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost")."\";");

		}


		}


		if($mybb->settings['showdescriptions'] == 0)
{
$forum['description'] = "";

		if($mybb->settings['showdescriptions'] == 0)
{
$forum['description'] = "";

Zeile 1920Zeile 1857

eval("\$forumsubscriptions = \"".$templates->get("usercp_forumsubscriptions")."\";");
output_page($forumsubscriptions);


eval("\$forumsubscriptions = \"".$templates->get("usercp_forumsubscriptions")."\";");
output_page($forumsubscriptions);

}


}


if($mybb->input['action'] == "do_editsig" && $mybb->request_method == "post")
{
// Verify incoming POST request

if($mybb->input['action'] == "do_editsig" && $mybb->request_method == "post")
{
// Verify incoming POST request

Zeile 2011Zeile 1948
			"filter_badwords" => 1
);


			"filter_badwords" => 1
);


		if($mybb->user['showimages'] != 1 && $mybb->user['uid'] != 0)

		if($mybb->user['showimages'] != 1)

		{
$sig_parser['allow_imgcode'] = 0;
}

		{
$sig_parser['allow_imgcode'] = 0;
}

Zeile 2035Zeile 1972
		{
$sigsmilies = $lang->on;
$smilieinserter = build_clickable_smilies();

		{
$sigsmilies = $lang->on;
$smilieinserter = build_clickable_smilies();

		}
else

		}
else

		{
$sigsmilies = $lang->off;
}

		{
$sigsmilies = $lang->off;
}

Zeile 2125Zeile 2062
			$db->update_query("users", $updated_avatar, "uid='".$mybb->user['uid']."'");
}
}

			$db->update_query("users", $updated_avatar, "uid='".$mybb->user['uid']."'");
}
}

	else // remote avatar

	elseif($mybb->settings['allowremoteavatars']) // remote avatar

	{
$mybb->input['avatarurl'] = trim($mybb->get_input('avatarurl'));
if(validate_email_format($mybb->input['avatarurl']) != false)

	{
$mybb->input['avatarurl'] = trim($mybb->get_input('avatarurl'));
if(validate_email_format($mybb->input['avatarurl']) != false)

Zeile 2158Zeile 2095
			$s = "?s={$maxheight}&r={$rating}&d=mm";

$updated_avatar = array(

			$s = "?s={$maxheight}&r={$rating}&d=mm";

$updated_avatar = array(

				"avatar" => "http://www.gravatar.com/avatar/{$email}{$s}.jpg",

				"avatar" => "https://www.gravatar.com/avatar/{$email}{$s}",

				"avatardimensions" => "{$maxheight}|{$maxheight}",
"avatartype" => "gravatar"
);

				"avatardimensions" => "{$maxheight}|{$maxheight}",
"avatartype" => "gravatar"
);

Zeile 2211Zeile 2148
			}

if(empty($avatar_error))

			}

if(empty($avatar_error))

			{

			{

				if($width > 0 && $height > 0)
{
$avatar_dimensions = (int)$width."|".(int)$height;

				if($width > 0 && $height > 0)
{
$avatar_dimensions = (int)$width."|".(int)$height;

Zeile 2225Zeile 2162
				remove_avatars($mybb->user['uid']);
}
}

				remove_avatars($mybb->user['uid']);
}
}

	}





	}
else // remote avatar, but remote avatars are not allowed
{
$avatar_error = $lang->error_remote_avatar_not_allowed;
}


if(empty($avatar_error))
{


if(empty($avatar_error))
{

Zeile 2246Zeile 2187
	$avatarmsg = $avatarurl = '';

if($mybb->user['avatartype'] == "upload" || stristr($mybb->user['avatar'], $mybb->settings['avataruploadpath']))

	$avatarmsg = $avatarurl = '';

if($mybb->user['avatartype'] == "upload" || stristr($mybb->user['avatar'], $mybb->settings['avataruploadpath']))

	{

	{

		$avatarmsg = "<br /><strong>".$lang->already_uploaded_avatar."</strong>";

		$avatarmsg = "<br /><strong>".$lang->already_uploaded_avatar."</strong>";

	}
elseif($mybb->user['avatartype'] == "remote" || my_strpos(my_strtolower($mybb->user['avatar']), "http://") !== false)

	}
elseif($mybb->user['avatartype'] == "remote" || my_validate_url($mybb->user['avatar']))

	{
$avatarmsg = "<br /><strong>".$lang->using_remote_avatar."</strong>";
$avatarurl = htmlspecialchars_uni($mybb->user['avatar']);

	{
$avatarmsg = "<br /><strong>".$lang->using_remote_avatar."</strong>";
$avatarurl = htmlspecialchars_uni($mybb->user['avatar']);

	}

$useravatar = format_avatar(htmlspecialchars_uni($mybb->user['avatar']), $mybb->user['avatardimensions'], '100x100');

	}

$useravatar = format_avatar($mybb->user['avatar'], $mybb->user['avatardimensions'], '100x100');

	eval("\$currentavatar = \"".$templates->get("usercp_avatar_current")."\";");

if($mybb->settings['maxavatardims'] != "")
{
list($maxwidth, $maxheight) = explode("x", my_strtolower($mybb->settings['maxavatardims']));
$lang->avatar_note .= "<br />".$lang->sprintf($lang->avatar_note_dimensions, $maxwidth, $maxheight);

	eval("\$currentavatar = \"".$templates->get("usercp_avatar_current")."\";");

if($mybb->settings['maxavatardims'] != "")
{
list($maxwidth, $maxheight) = explode("x", my_strtolower($mybb->settings['maxavatardims']));
$lang->avatar_note .= "<br />".$lang->sprintf($lang->avatar_note_dimensions, $maxwidth, $maxheight);

	}


	}


	if($mybb->settings['avatarsize'])
{
$maxsize = get_friendly_size($mybb->settings['avatarsize']*1024);
$lang->avatar_note .= "<br />".$lang->sprintf($lang->avatar_note_size, $maxsize);
}

	if($mybb->settings['avatarsize'])
{
$maxsize = get_friendly_size($mybb->settings['avatarsize']*1024);
$lang->avatar_note .= "<br />".$lang->sprintf($lang->avatar_note_size, $maxsize);
}

 

$plugins->run_hooks("usercp_avatar_intermediate");


$auto_resize = '';
if($mybb->settings['avatarresizing'] == "auto")


$auto_resize = '';
if($mybb->settings['avatarresizing'] == "auto")

Zeile 2284Zeile 2227
	if($mybb->usergroup['canuploadavatars'] == 1)
{
eval("\$avatarupload = \"".$templates->get("usercp_avatar_upload")."\";");

	if($mybb->usergroup['canuploadavatars'] == 1)
{
eval("\$avatarupload = \"".$templates->get("usercp_avatar_upload")."\";");

 
	}

$avatar_remote = '';
if($mybb->settings['allowremoteavatars'] == 1)
{
eval("\$avatar_remote = \"".$templates->get("usercp_avatar_remote")."\";");

	}

$removeavatar = '';
if(!empty($mybb->user['avatar']))
{
eval("\$removeavatar = \"".$templates->get("usercp_avatar_remove")."\";");

	}

$removeavatar = '';
if(!empty($mybb->user['avatar']))
{
eval("\$removeavatar = \"".$templates->get("usercp_avatar_remove")."\";");

	}


	}


	$plugins->run_hooks("usercp_avatar_end");

if(!isset($avatar_error))

	$plugins->run_hooks("usercp_avatar_end");

if(!isset($avatar_error))

Zeile 2302Zeile 2251
	eval("\$avatar = \"".$templates->get("usercp_avatar")."\";");
output_page($avatar);
}

	eval("\$avatar = \"".$templates->get("usercp_avatar")."\";");
output_page($avatar);
}





if($mybb->input['action'] == "acceptrequest")
{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

if($mybb->input['action'] == "acceptrequest")
{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));





	// Validate request

	// Validate request

	$query = $db->simple_select('buddyrequests', '*', 'id='.(int)$mybb->input['id'].' AND touid='.(int)$mybb->user['uid']);

	$query = $db->simple_select('buddyrequests', '*', 'id='.$mybb->get_input('id', MyBB::INPUT_INT).' AND touid='.(int)$mybb->user['uid']);

	$request = $db->fetch_array($query);
if(empty($request))
{
error($lang->invalid_request);
}

	$request = $db->fetch_array($query);
if(empty($request))
{
error($lang->invalid_request);
}

	



	$plugins->run_hooks("usercp_acceptrequest_start");

	$plugins->run_hooks("usercp_acceptrequest_start");

	



	$user = get_user($request['uid']);
if(!empty($user))
{

	$user = get_user($request['uid']);
if(!empty($user))
{

Zeile 2330Zeile 2279
		{
$user['buddylist'] = array();
}

		{
$user['buddylist'] = array();
}

		



		$user['buddylist'][] = (int)$mybb->user['uid'];

		$user['buddylist'][] = (int)$mybb->user['uid'];

		
// Now we have the new list, so throw it all back together


// Now we have the new list, so throw it all back together

		$new_list = implode(",", $user['buddylist']);

		$new_list = implode(",", $user['buddylist']);


// And clean it up a little to ensure there is no possibility of bad values
$new_list = preg_replace("#,{2,}#", ",", $new_list);
$new_list = preg_replace("#[^0-9,]#", "", $new_list);

if(my_substr($new_list, 0, 1) == ",")
{


// And clean it up a little to ensure there is no possibility of bad values
$new_list = preg_replace("#,{2,}#", ",", $new_list);
$new_list = preg_replace("#[^0-9,]#", "", $new_list);

if(my_substr($new_list, 0, 1) == ",")
{

			$new_list = my_substr($new_list, 1);

			$new_list = my_substr($new_list, 1);

		}

		}

		if(my_substr($new_list, -1) == ",")
{
$new_list = my_substr($new_list, 0, my_strlen($new_list)-2);
}

		if(my_substr($new_list, -1) == ",")
{
$new_list = my_substr($new_list, 0, my_strlen($new_list)-2);
}

		



		$user['buddylist'] = $db->escape_string($new_list);

		$user['buddylist'] = $db->escape_string($new_list);

		



		$db->update_query("users", array('buddylist' => $user['buddylist']), "uid='".(int)$user['uid']."'");

		$db->update_query("users", array('buddylist' => $user['buddylist']), "uid='".(int)$user['uid']."'");

		





		// We want to add the user to our buddy list
if($mybb->user['buddylist'] != '')
{

		// We want to add the user to our buddy list
if($mybb->user['buddylist'] != '')
{

Zeile 2363Zeile 2312
		{
$mybb->user['buddylist'] = array();
}

		{
$mybb->user['buddylist'] = array();
}

		



		$mybb->user['buddylist'][] = (int)$request['uid'];

		$mybb->user['buddylist'][] = (int)$request['uid'];

		



		// Now we have the new list, so throw it all back together
$new_list = implode(",", $mybb->user['buddylist']);

		// Now we have the new list, so throw it all back together
$new_list = implode(",", $mybb->user['buddylist']);





		// And clean it up a little to ensure there is no possibility of bad values
$new_list = preg_replace("#,{2,}#", ",", $new_list);
$new_list = preg_replace("#[^0-9,]#", "", $new_list);

		// And clean it up a little to ensure there is no possibility of bad values
$new_list = preg_replace("#,{2,}#", ",", $new_list);
$new_list = preg_replace("#[^0-9,]#", "", $new_list);

Zeile 2381Zeile 2330
		{
$new_list = my_substr($new_list, 0, my_strlen($new_list)-2);
}

		{
$new_list = my_substr($new_list, 0, my_strlen($new_list)-2);
}

		



		$mybb->user['buddylist'] = $db->escape_string($new_list);

		$mybb->user['buddylist'] = $db->escape_string($new_list);

		



		$db->update_query("users", array('buddylist' => $mybb->user['buddylist']), "uid='".(int)$mybb->user['uid']."'");

		$db->update_query("users", array('buddylist' => $mybb->user['buddylist']), "uid='".(int)$mybb->user['uid']."'");

	



		$pm = array(
'subject' => 'buddyrequest_accepted_request',
'message' => 'buddyrequest_accepted_request_message',

		$pm = array(
'subject' => 'buddyrequest_accepted_request',
'message' => 'buddyrequest_accepted_request_message',

Zeile 2393Zeile 2342
			'language' => $user['language'],
'language_file' => 'usercp'
);

			'language' => $user['language'],
'language_file' => 'usercp'
);

	



		send_pm($pm, $mybb->user['uid'], true);

		send_pm($pm, $mybb->user['uid'], true);

		
$db->delete_query('buddyrequests', 'id='.(int)$request['id']);
}
else
{
error($lang->user_doesnt_exist);
}



$db->delete_query('buddyrequests', 'id='.(int)$request['id']);
}
else
{
error($lang->user_doesnt_exist);
}


	$plugins->run_hooks("usercp_acceptrequest_end");

	$plugins->run_hooks("usercp_acceptrequest_end");

	



	redirect("usercp.php?action=editlists", $lang->buddyrequest_accepted);
}

	redirect("usercp.php?action=editlists", $lang->buddyrequest_accepted);
}

 


elseif($mybb->input['action'] == "declinerequest")

elseif($mybb->input['action'] == "declinerequest")

{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

// Validate request
$query = $db->simple_select('buddyrequests', '*', 'id='.(int)$mybb->input['id'].' AND touid='.(int)$mybb->user['uid']);
$request = $db->fetch_array($query);
if(empty($request))
{

{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

// Validate request
$query = $db->simple_select('buddyrequests', '*', 'id='.$mybb->get_input('id', MyBB::INPUT_INT).' AND touid='.(int)$mybb->user['uid']);
$request = $db->fetch_array($query);
if(empty($request))
{

		error($lang->invalid_request);
}

		error($lang->invalid_request);
}

	



	$plugins->run_hooks("usercp_declinerequest_start");

	$plugins->run_hooks("usercp_declinerequest_start");

	



	$user = get_user($request['uid']);

	$user = get_user($request['uid']);

	if(!empty($user))

	if(!empty($user))

	{
$db->delete_query('buddyrequests', 'id='.(int)$request['id']);
}
else

	{
$db->delete_query('buddyrequests', 'id='.(int)$request['id']);
}
else

	{

	{

		error($lang->user_doesnt_exist);
}

		error($lang->user_doesnt_exist);
}





	$plugins->run_hooks("usercp_declinerequest_end");

	$plugins->run_hooks("usercp_declinerequest_end");

	



	redirect("usercp.php?action=editlists", $lang->buddyrequest_declined);
}

	redirect("usercp.php?action=editlists", $lang->buddyrequest_declined);
}

 


elseif($mybb->input['action'] == "cancelrequest")
{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

elseif($mybb->input['action'] == "cancelrequest")
{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

	



	// Validate request

	// Validate request

	$query = $db->simple_select('buddyrequests', '*', 'id='.(int)$mybb->input['id'].' AND uid='.(int)$mybb->user['uid']);

	$query = $db->simple_select('buddyrequests', '*', 'id='.$mybb->get_input('id', MyBB::INPUT_INT).' AND uid='.(int)$mybb->user['uid']);

	$request = $db->fetch_array($query);
if(empty($request))
{
error($lang->invalid_request);
}

	$request = $db->fetch_array($query);
if(empty($request))
{
error($lang->invalid_request);
}

	



	$plugins->run_hooks("usercp_cancelrequest_start");

	$plugins->run_hooks("usercp_cancelrequest_start");

	



	$db->delete_query('buddyrequests', 'id='.(int)$request['id']);

	$db->delete_query('buddyrequests', 'id='.(int)$request['id']);





	$plugins->run_hooks("usercp_cancelrequest_end");

	$plugins->run_hooks("usercp_cancelrequest_end");

	



	redirect("usercp.php?action=editlists", $lang->buddyrequest_cancelled);
}


	redirect("usercp.php?action=editlists", $lang->buddyrequest_cancelled);
}


Zeile 2522Zeile 2473
			}
$users[$key] = $db->escape_string($username);
}

			}
$users[$key] = $db->escape_string($username);
}

		



		// Get the requests we have sent that are still pending
$query = $db->simple_select('buddyrequests', 'touid', 'uid='.(int)$mybb->user['uid']);
$requests = array();

		// Get the requests we have sent that are still pending
$query = $db->simple_select('buddyrequests', 'touid', 'uid='.(int)$mybb->user['uid']);
$requests = array();

Zeile 2530Zeile 2481
		{
$requests[$req['touid']] = true;
}

		{
$requests[$req['touid']] = true;
}

		



		// Get the requests we have received that are still pending
$query = $db->simple_select('buddyrequests', 'uid', 'touid='.(int)$mybb->user['uid']);
$requests_rec = array();

		// Get the requests we have received that are still pending
$query = $db->simple_select('buddyrequests', 'uid', 'touid='.(int)$mybb->user['uid']);
$requests_rec = array();

Zeile 2538Zeile 2489
		{
$requests_rec[$req['uid']] = true;
}

		{
$requests_rec[$req['uid']] = true;
}

		



		$sent = false;

// Fetch out new users
if(count($users) > 0)
{

		$sent = false;

// Fetch out new users
if(count($users) > 0)
{

			$query = $db->simple_select("users", "uid,buddyrequestsauto,buddyrequestspm,language", "LOWER(username) IN ('".my_strtolower(implode("','", $users))."')");











			switch($db->type)
{
case 'mysql':
case 'mysqli':
$field = 'username';
break;
default:
$field = 'LOWER(username)';
break;
}
$query = $db->simple_select("users", "uid,buddyrequestsauto,buddyrequestspm,language", "{$field} IN ('".my_strtolower(implode("','", $users))."')");

			while($user = $db->fetch_array($query))
{
++$found_users;

// Make sure we're not adding a duplicate
if(in_array($user['uid'], $existing_users) || in_array($user['uid'], $selected_list))

			while($user = $db->fetch_array($query))
{
++$found_users;

// Make sure we're not adding a duplicate
if(in_array($user['uid'], $existing_users) || in_array($user['uid'], $selected_list))

				{

				{

					if($mybb->get_input('manage') == "ignored")
{
$error_message = "ignore";
}
else

					if($mybb->get_input('manage') == "ignored")
{
$error_message = "ignore";
}
else

					{

					{

						$error_message = "buddy";
}


						$error_message = "buddy";
}


Zeile 2583Zeile 2544
					{
$error_message = $lang->users_already_sent_request_alt;
}

					{
$error_message = $lang->users_already_sent_request_alt;
}

					



					array_pop($users); // To maintain a proper count when we call count($users)
continue;
}

					array_pop($users); // To maintain a proper count when we call count($users)
continue;
}

				



				if(isset($requests_rec[$user['uid']]))
{
if($mybb->get_input('manage') != "ignored")

				if(isset($requests_rec[$user['uid']]))
{
if($mybb->get_input('manage') != "ignored")

Zeile 2598Zeile 2559
					{
$error_message = $lang->users_already_rec_request_alt;
}

					{
$error_message = $lang->users_already_rec_request_alt;
}

					



					array_pop($users); // To maintain a proper count when we call count($users)
continue;
}

					array_pop($users); // To maintain a proper count when we call count($users)
continue;
}

Zeile 2607Zeile 2568
				if($user['buddyrequestsauto'] == 1 && $mybb->get_input('manage') != "ignored")
{
$existing_users[] = $user['uid'];

				if($user['buddyrequestsauto'] == 1 && $mybb->get_input('manage') != "ignored")
{
$existing_users[] = $user['uid'];

	



					$pm = array(
'subject' => 'buddyrequest_new_buddy',
'message' => 'buddyrequest_new_buddy_message',

					$pm = array(
'subject' => 'buddyrequest_new_buddy',
'message' => 'buddyrequest_new_buddy_message',

						'touid' => $user['uid'],
'receivepms' => (int)$user['buddyrequestspm'],
'language' => $user['language'],
'language_file' => 'usercp'
);

send_pm($pm);
}

						'touid' => $user['uid'],
'receivepms' => (int)$user['buddyrequestspm'],
'language' => $user['language'],
'language_file' => 'usercp'
);

send_pm($pm);
}

				elseif($user['buddyrequestsauto'] != 1 && $mybb->get_input('manage') != "ignored")
{
// Send request
$id = $db->insert_query('buddyrequests', array('uid' => (int)$mybb->user['uid'], 'touid' => (int)$user['uid'], 'date' => TIME_NOW));

				elseif($user['buddyrequestsauto'] != 1 && $mybb->get_input('manage') != "ignored")
{
// Send request
$id = $db->insert_query('buddyrequests', array('uid' => (int)$mybb->user['uid'], 'touid' => (int)$user['uid'], 'date' => TIME_NOW));

	



					$pm = array(
'subject' => 'buddyrequest_received',
'message' => 'buddyrequest_received_message',

					$pm = array(
'subject' => 'buddyrequest_received',
'message' => 'buddyrequest_received_message',

Zeile 2632Zeile 2593
						'language' => $user['language'],
'language_file' => 'usercp'
);

						'language' => $user['language'],
'language_file' => 'usercp'
);

					



					send_pm($pm);

					send_pm($pm);

					



					$sent = true;
}
elseif($mybb->get_input('manage') == "ignored")

					$sent = true;
}
elseif($mybb->get_input('manage') == "ignored")

Zeile 2649Zeile 2610
			if($error_message)
{
$error_message .= "<br />";

			if($error_message)
{
$error_message .= "<br />";

			}


			}


			$error_message .= $lang->invalid_user_selected;
}

if(($adding_self != true || ($adding_self == true && count($users) > 0)) && ($error_message == "" || count($users) > 1))

			$error_message .= $lang->invalid_user_selected;
}

if(($adding_self != true || ($adding_self == true && count($users) > 0)) && ($error_message == "" || count($users) > 1))

		{
if($mybb->get_input('manage') == "ignored")

		{
if($mybb->get_input('manage') == "ignored")

			{
$message = $lang->users_added_to_ignore_list;
}

			{
$message = $lang->users_added_to_ignore_list;
}

Zeile 2669Zeile 2630
		if($adding_self == true)
{
if($mybb->get_input('manage') == "ignored")

		if($adding_self == true)
{
if($mybb->get_input('manage') == "ignored")

			{

			{

				$error_message = $lang->cant_add_self_to_ignore_list;
}
else
{
$error_message = $lang->cant_add_self_to_buddy_list;

				$error_message = $lang->cant_add_self_to_ignore_list;
}
else
{
$error_message = $lang->cant_add_self_to_buddy_list;

			}

			}

		}

		}





		if(count($existing_users) == 0)
{
$message = "";

		if(count($existing_users) == 0)
{
$message = "";

			



			if($sent === true)
{
$message = $lang->buddyrequests_sent_success;

			if($sent === true)
{
$message = $lang->buddyrequests_sent_success;

Zeile 2690Zeile 2651
	}

// Removing a user from this list

	}

// Removing a user from this list

	else if($mybb->get_input('delete', 1))

	else if($mybb->get_input('delete', MyBB::INPUT_INT))

	{
// Check if user exists on the list

	{
// Check if user exists on the list

		$key = array_search($mybb->get_input('delete', 1), $existing_users);

		$key = array_search($mybb->get_input('delete', MyBB::INPUT_INT), $existing_users);

		if($key !== false)
{
unset($existing_users[$key]);

		if($key !== false)
{
unset($existing_users[$key]);

			$user = get_user($mybb->get_input('delete', 1));

			$user = get_user($mybb->get_input('delete', MyBB::INPUT_INT));

			if(!empty($user))
{
// We want to remove us from this user's buddy list
if($user['buddylist'] != '')
{
$user['buddylist'] = explode(',', $user['buddylist']);

			if(!empty($user))
{
// We want to remove us from this user's buddy list
if($user['buddylist'] != '')
{
$user['buddylist'] = explode(',', $user['buddylist']);

				}

				}

				else
{
$user['buddylist'] = array();
}

				else
{
$user['buddylist'] = array();
}

				
$key = array_search((int)$mybb->input['delete'], $user['buddylist']);


$key = array_search($mybb->get_input('delete', MyBB::INPUT_INT), $user['buddylist']);

				unset($user['buddylist'][$key]);

				unset($user['buddylist'][$key]);

				



				// Now we have the new list, so throw it all back together
$new_list = implode(",", $user['buddylist']);


				// Now we have the new list, so throw it all back together
$new_list = implode(",", $user['buddylist']);


Zeile 2728Zeile 2689
				{
$new_list = my_substr($new_list, 0, my_strlen($new_list)-2);
}

				{
$new_list = my_substr($new_list, 0, my_strlen($new_list)-2);
}

				



				$user['buddylist'] = $db->escape_string($new_list);

				$user['buddylist'] = $db->escape_string($new_list);

				



				$db->update_query("users", array('buddylist' => $user['buddylist']), "uid='".(int)$user['uid']."'");
}

				$db->update_query("users", array('buddylist' => $user['buddylist']), "uid='".(int)$user['uid']."'");
}

			



			if($mybb->get_input('manage') == "ignored")

			if($mybb->get_input('manage') == "ignored")

			{

			{

				$message = $lang->removed_from_ignore_list;
}
else
{
$message = $lang->removed_from_buddy_list;
}

				$message = $lang->removed_from_ignore_list;
}
else
{
$message = $lang->removed_from_buddy_list;
}

 
			$user['username'] = htmlspecialchars_uni($user['username']);

			$message = $lang->sprintf($message, $user['username']);
}
}

// Now we have the new list, so throw it all back together
$new_list = implode(",", $existing_users);

			$message = $lang->sprintf($message, $user['username']);
}
}

// Now we have the new list, so throw it all back together
$new_list = implode(",", $existing_users);





	// And clean it up a little to ensure there is no possibility of bad values
$new_list = preg_replace("#,{2,}#", ",", $new_list);
$new_list = preg_replace("#[^0-9,]#", "", $new_list);

if(my_substr($new_list, 0, 1) == ",")

	// And clean it up a little to ensure there is no possibility of bad values
$new_list = preg_replace("#,{2,}#", ",", $new_list);
$new_list = preg_replace("#[^0-9,]#", "", $new_list);

if(my_substr($new_list, 0, 1) == ",")

	{

	{

		$new_list = my_substr($new_list, 1);
}
if(my_substr($new_list, -1) == ",")
{
$new_list = my_substr($new_list, 0, my_strlen($new_list)-2);

		$new_list = my_substr($new_list, 1);
}
if(my_substr($new_list, -1) == ",")
{
$new_list = my_substr($new_list, 0, my_strlen($new_list)-2);

	}

	}


// And update
$user = array();


// And update
$user = array();

Zeile 2794Zeile 2756
		$message_js = '';
if($message)
{

		$message_js = '';
if($message)
{

			$message_js = "$.jGrowl('{$message}');";

			$message_js = "$.jGrowl('{$message}', {theme:'jgrowl_success'});";

		}

if($error_message)
{

		}

if($error_message)
{

			$message_js .= " $.jGrowl('{$error_message}');";

			$message_js .= " $.jGrowl('{$error_message}', {theme:'jgrowl_error'});";

		}


		}


		if($mybb->get_input('delete', 1))

		if($mybb->get_input('delete', MyBB::INPUT_INT))

		{
header("Content-type: text/javascript");

		{
header("Content-type: text/javascript");

			echo "$(\"#".$mybb->get_input('manage')."_".$mybb->get_input('delete', 1)."\").remove();\n";

			echo "$(\"#".$mybb->get_input('manage')."_".$mybb->get_input('delete', MyBB::INPUT_INT)."\").remove();\n";

			if($new_list == "")
{
echo "\$(\"#".$mybb->get_input('manage')."_count\").html(\"0\");\n";

			if($new_list == "")
{
echo "\$(\"#".$mybb->get_input('manage')."_count\").html(\"0\");\n";

Zeile 2852Zeile 2814
		$query = $db->simple_select("users", "*", "uid IN ({$mybb->user['buddylist']})", array("order_by" => "username"));
while($user = $db->fetch_array($query))
{

		$query = $db->simple_select("users", "*", "uid IN ({$mybb->user['buddylist']})", array("order_by" => "username"));
while($user = $db->fetch_array($query))
{

 
			$user['username'] = htmlspecialchars_uni($user['username']);

			$profile_link = build_profile_link(format_name($user['username'], $user['usergroup'], $user['displaygroup']), $user['uid']);
if($user['lastactive'] > $timecut && ($user['invisible'] == 0 || $mybb->usergroup['canviewwolinvis'] == 1) && $user['lastvisit'] != $user['lastactive'])
{

			$profile_link = build_profile_link(format_name($user['username'], $user['usergroup'], $user['displaygroup']), $user['uid']);
if($user['lastactive'] > $timecut && ($user['invisible'] == 0 || $mybb->usergroup['canviewwolinvis'] == 1) && $user['lastvisit'] != $user['lastactive'])
{

Zeile 2881Zeile 2844
		$query = $db->simple_select("users", "*", "uid IN ({$mybb->user['ignorelist']})", array("order_by" => "username"));
while($user = $db->fetch_array($query))
{

		$query = $db->simple_select("users", "*", "uid IN ({$mybb->user['ignorelist']})", array("order_by" => "username"));
while($user = $db->fetch_array($query))
{

 
			$user['username'] = htmlspecialchars_uni($user['username']);

			$profile_link = build_profile_link(format_name($user['username'], $user['usergroup'], $user['displaygroup']), $user['uid']);
if($user['lastactive'] > $timecut && ($user['invisible'] == 0 || $mybb->usergroup['canviewwolinvis'] == 1) && $user['lastvisit'] != $user['lastactive'])
{

			$profile_link = build_profile_link(format_name($user['username'], $user['usergroup'], $user['displaygroup']), $user['uid']);
if($user['lastactive'] > $timecut && ($user['invisible'] == 0 || $mybb->usergroup['canviewwolinvis'] == 1) && $user['lastvisit'] != $user['lastactive'])
{

Zeile 2916Zeile 2880
				$sent_rows = '';
$query = $db->query("
SELECT r.*, u.username

				$sent_rows = '';
$query = $db->query("
SELECT r.*, u.username

					FROM `".TABLE_PREFIX."buddyrequests` r
LEFT JOIN `".TABLE_PREFIX."users` u ON (u.uid=r.touid)
WHERE r.uid=".(int)$mybb->user['uid']."
");

					FROM ".TABLE_PREFIX."buddyrequests r
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=r.touid)
WHERE r.uid=".(int)$mybb->user['uid']);


				while($request = $db->fetch_array($query))

				while($request = $db->fetch_array($query))

				{

				{

					$bgcolor = alt_trow();
$request['username'] = build_profile_link(htmlspecialchars_uni($request['username']), (int)$request['touid']);

					$bgcolor = alt_trow();
$request['username'] = build_profile_link(htmlspecialchars_uni($request['username']), (int)$request['touid']);

					$request['date'] = my_date($mybb->settings['dateformat'], $request['date'])." ".my_date($mybb->settings['timeformat'], $request['date']);

					$request['date'] = my_date('relative', $request['date']);

					eval("\$sent_rows .= \"".$templates->get("usercp_editlists_sent_request", 1, 0)."\";");
}

					eval("\$sent_rows .= \"".$templates->get("usercp_editlists_sent_request", 1, 0)."\";");
}

				



				if($sent_rows == '')
{
eval("\$sent_rows = \"".$templates->get("usercp_editlists_no_requests", 1, 0)."\";");
}

				if($sent_rows == '')
{
eval("\$sent_rows = \"".$templates->get("usercp_editlists_no_requests", 1, 0)."\";");
}

				



				eval("\$sent_requests = \"".$templates->get("usercp_editlists_sent_requests", 1, 0)."\";");

				eval("\$sent_requests = \"".$templates->get("usercp_editlists_sent_requests", 1, 0)."\";");

			



				echo $sentrequests;
echo $sent_requests."<script type=\"text/javascript\">{$message_js}</script>";
}

				echo $sentrequests;
echo $sent_requests."<script type=\"text/javascript\">{$message_js}</script>";
}

Zeile 2946Zeile 2910
		}
exit;
}

		}
exit;
}

	



	$received_rows = '';

	$received_rows = '';

	$query = $db->query("
SELECT r.*, u.username
FROM `".TABLE_PREFIX."buddyrequests` r
LEFT JOIN `".TABLE_PREFIX."users` u ON (u.uid=r.uid)
WHERE r.touid=".(int)$mybb->user['uid']."
");
while($request = $db->fetch_array($query))

	$query = $db->query("
SELECT r.*, u.username
FROM ".TABLE_PREFIX."buddyrequests r
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=r.uid)
WHERE r.touid=".(int)$mybb->user['uid']);

while($request = $db->fetch_array($query))

	{
$bgcolor = alt_trow();
$request['username'] = build_profile_link(htmlspecialchars_uni($request['username']), (int)$request['uid']);

	{
$bgcolor = alt_trow();
$request['username'] = build_profile_link(htmlspecialchars_uni($request['username']), (int)$request['uid']);

		$request['date'] = my_date($mybb->settings['dateformat'], $request['date'])." ".my_date($mybb->settings['timeformat'], $request['date']);

		$request['date'] = my_date('relative', $request['date']);

		eval("\$received_rows .= \"".$templates->get("usercp_editlists_received_request")."\";");
}

		eval("\$received_rows .= \"".$templates->get("usercp_editlists_received_request")."\";");
}

	



	if($received_rows == '')

	if($received_rows == '')

	{

	{

		eval("\$received_rows = \"".$templates->get("usercp_editlists_no_requests")."\";");
}

		eval("\$received_rows = \"".$templates->get("usercp_editlists_no_requests")."\";");
}

	



	eval("\$received_requests = \"".$templates->get("usercp_editlists_received_requests")."\";");

	eval("\$received_requests = \"".$templates->get("usercp_editlists_received_requests")."\";");

	



	$sent_rows = '';
$query = $db->query("
SELECT r.*, u.username

	$sent_rows = '';
$query = $db->query("
SELECT r.*, u.username

		FROM `".TABLE_PREFIX."buddyrequests` r
LEFT JOIN `".TABLE_PREFIX."users` u ON (u.uid=r.touid)
WHERE r.uid=".(int)$mybb->user['uid']."
");

		FROM ".TABLE_PREFIX."buddyrequests r
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=r.touid)
WHERE r.uid=".(int)$mybb->user['uid']);


	while($request = $db->fetch_array($query))
{
$bgcolor = alt_trow();
$request['username'] = build_profile_link(htmlspecialchars_uni($request['username']), (int)$request['touid']);

	while($request = $db->fetch_array($query))
{
$bgcolor = alt_trow();
$request['username'] = build_profile_link(htmlspecialchars_uni($request['username']), (int)$request['touid']);

		$request['date'] = my_date($mybb->settings['dateformat'], $request['date'])." ".my_date($mybb->settings['timeformat'], $request['date']);

		$request['date'] = my_date('relative', $request['date']);

		eval("\$sent_rows .= \"".$templates->get("usercp_editlists_sent_request")."\";");
}

		eval("\$sent_rows .= \"".$templates->get("usercp_editlists_sent_request")."\";");
}

	



	if($sent_rows == '')
{
eval("\$sent_rows = \"".$templates->get("usercp_editlists_no_requests")."\";");
}

	if($sent_rows == '')
{
eval("\$sent_rows = \"".$templates->get("usercp_editlists_no_requests")."\";");
}

	



	eval("\$sent_requests = \"".$templates->get("usercp_editlists_sent_requests")."\";");

	eval("\$sent_requests = \"".$templates->get("usercp_editlists_sent_requests")."\";");

	



	$plugins->run_hooks("usercp_editlists_end");

eval("\$listpage = \"".$templates->get("usercp_editlists")."\";");

	$plugins->run_hooks("usercp_editlists_end");

eval("\$listpage = \"".$templates->get("usercp_editlists")."\";");

Zeile 3065Zeile 3029
	verify_post_check($mybb->get_input('my_post_key'));

$plugins->run_hooks("usercp_do_drafts_start");

	verify_post_check($mybb->get_input('my_post_key'));

$plugins->run_hooks("usercp_do_drafts_start");

	$mybb->input['deletedraft'] = $mybb->get_input('deletedraft', 2);

	$mybb->input['deletedraft'] = $mybb->get_input('deletedraft', MyBB::INPUT_ARRAY);

	if(empty($mybb->input['deletedraft']))
{
error($lang->no_drafts_selected);

	if(empty($mybb->input['deletedraft']))
{
error($lang->no_drafts_selected);

Zeile 3115Zeile 3079
	$usergroups = $mybb->cache->read('usergroups');

// Changing our display group

	$usergroups = $mybb->cache->read('usergroups');

// Changing our display group

	if($mybb->get_input('displaygroup', 1))

	if($mybb->get_input('displaygroup', MyBB::INPUT_INT))

	{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

	{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

Zeile 3125Zeile 3089
			error($lang->not_member_of_group);
}


			error($lang->not_member_of_group);
}


		$dispgroup = $usergroups[$mybb->get_input('displaygroup', 1)];

		$dispgroup = $usergroups[$mybb->get_input('displaygroup', MyBB::INPUT_INT)];

		if($dispgroup['candisplaygroup'] != 1)
{
error($lang->cannot_set_displaygroup);
}

		if($dispgroup['candisplaygroup'] != 1)
{
error($lang->cannot_set_displaygroup);
}

		$db->update_query("users", array('displaygroup' => $mybb->get_input('displaygroup', 1)), "uid='".$mybb->user['uid']."'");

		$db->update_query("users", array('displaygroup' => $mybb->get_input('displaygroup', MyBB::INPUT_INT)), "uid='".$mybb->user['uid']."'");

		$cache->update_moderators();
$plugins->run_hooks("usercp_usergroups_change_displaygroup");
redirect("usercp.php?action=usergroups", $lang->display_group_changed);

		$cache->update_moderators();
$plugins->run_hooks("usercp_usergroups_change_displaygroup");
redirect("usercp.php?action=usergroups", $lang->display_group_changed);

Zeile 3138Zeile 3102
	}

// Leaving a group

	}

// Leaving a group

	if($mybb->get_input('leavegroup', 1))

	if($mybb->get_input('leavegroup', MyBB::INPUT_INT))

	{
// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);


	{
// Verify incoming POST request
verify_post_check($mybb->input['my_post_key']);


		if(my_strpos($ingroups, ",".$mybb->get_input('leavegroup', 1).",") === false)

		if(my_strpos($ingroups, ",".$mybb->get_input('leavegroup', MyBB::INPUT_INT).",") === false)

		{
error($lang->not_member_of_group);
}

		{
error($lang->not_member_of_group);
}

		if($mybb->user['usergroup'] == $mybb->get_input('leavegroup', 1))

		if($mybb->user['usergroup'] == $mybb->get_input('leavegroup', MyBB::INPUT_INT))

		{
error($lang->cannot_leave_primary_group);
}


		{
error($lang->cannot_leave_primary_group);
}


		$usergroup = $usergroups[$mybb->get_input('leavegroup', 1)];

		$usergroup = $usergroups[$mybb->get_input('leavegroup', MyBB::INPUT_INT)];

		if($usergroup['type'] != 4 && $usergroup['type'] != 3 && $usergroup['type'] != 5)
{
error($lang->cannot_leave_group);
}

		if($usergroup['type'] != 4 && $usergroup['type'] != 3 && $usergroup['type'] != 5)
{
error($lang->cannot_leave_group);
}

		leave_usergroup($mybb->user['uid'], $mybb->get_input('leavegroup', 1));

		leave_usergroup($mybb->user['uid'], $mybb->get_input('leavegroup', MyBB::INPUT_INT));

		$plugins->run_hooks("usercp_usergroups_leave_group");
redirect("usercp.php?action=usergroups", $lang->left_group);
exit;

		$plugins->run_hooks("usercp_usergroups_leave_group");
redirect("usercp.php?action=usergroups", $lang->left_group);
exit;

Zeile 3167Zeile 3131

// List of usergroup leaders
$query = $db->query("


// List of usergroup leaders
$query = $db->query("

		SELECT g.*, u.username, u.displaygroup, u.usergroup

		SELECT g.*, u.username, u.displaygroup, u.usergroup, u.email, u.language

		FROM ".TABLE_PREFIX."groupleaders g
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=g.uid)
ORDER BY u.username ASC

		FROM ".TABLE_PREFIX."groupleaders g
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=g.uid)
ORDER BY u.username ASC

Zeile 3178Zeile 3142
	}

// Joining a group

	}

// Joining a group

	if($mybb->get_input('joingroup', 1))

	if($mybb->get_input('joingroup', MyBB::INPUT_INT))

	{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));


	{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));


		$usergroup = $usergroups[$mybb->get_input('joingroup', 1)];

		$usergroup = $usergroups[$mybb->get_input('joingroup', MyBB::INPUT_INT)];


if($usergroup['type'] == 5)
{


if($usergroup['type'] == 5)
{

Zeile 3195Zeile 3159
			error($lang->cannot_join_group);
}


			error($lang->cannot_join_group);
}


		if(my_strpos($ingroups, ",".$mybb->get_input('joingroup', 1).",") !== false)

		if(my_strpos($ingroups, ",".$mybb->get_input('joingroup', MyBB::INPUT_INT).",") !== false)

		{
error($lang->already_member_of_group);
}


		{
error($lang->already_member_of_group);
}


		$query = $db->simple_select("joinrequests", "*", "uid='".$mybb->user['uid']."' AND gid='".$mybb->get_input('joingroup', 1)."'");

		$query = $db->simple_select("joinrequests", "*", "uid='".$mybb->user['uid']."' AND gid='".$mybb->get_input('joingroup', MyBB::INPUT_INT)."'");

		$joinrequest = $db->fetch_array($query);
if($joinrequest['rid'])
{

		$joinrequest = $db->fetch_array($query);
if($joinrequest['rid'])
{

Zeile 3211Zeile 3175
			$now = TIME_NOW;
$joinrequest = array(
"uid" => $mybb->user['uid'],

			$now = TIME_NOW;
$joinrequest = array(
"uid" => $mybb->user['uid'],

				"gid" => $mybb->get_input('joingroup', 1),

				"gid" => $mybb->get_input('joingroup', MyBB::INPUT_INT),

				"reason" => $db->escape_string($mybb->get_input('reason')),
"dateline" => TIME_NOW
);

$db->insert_query("joinrequests", $joinrequest);


				"reason" => $db->escape_string($mybb->get_input('reason')),
"dateline" => TIME_NOW
);

$db->insert_query("joinrequests", $joinrequest);


			foreach($groupleaders as $key => $groupleader)

			if(array_key_exists($usergroup['gid'], $groupleaders))

			{

			{

				foreach($groupleader as $leader)

				foreach($groupleaders[$usergroup['gid']] as $leader)

				{

				{

					$leader_user = get_user($leader['uid']);


 
					// Load language

					// Load language

					$lang->set_language($leader_user['language']);

					$lang->set_language($leader['language']);

					$lang->load("messages");

					$lang->load("messages");

					



					$subject = $lang->sprintf($lang->emailsubject_newjoinrequest, $mybb->settings['bbname']);

					$subject = $lang->sprintf($lang->emailsubject_newjoinrequest, $mybb->settings['bbname']);

					$message = $lang->sprintf($lang->email_groupleader_joinrequest, $leader_user['username'], $mybb->user['username'], $usergroups[$leader['gid']]['title'], $mybb->settings['bbname'], $mybb->get_input('reason'), $mybb->settings['bburl'], $leader['gid']);
my_mail($leader_user['email'], $subject, $message);

					$message = $lang->sprintf($lang->email_groupleader_joinrequest, $leader['username'], $mybb->user['username'], $usergroup['title'], $mybb->settings['bbname'], $mybb->get_input('reason'), $mybb->settings['bburl'], $leader['gid']);
my_mail($leader['email'], $subject, $message);

				}
}

				}
}





			// Load language
$lang->set_language($mybb->user['language']);
$lang->load("messages");

			// Load language
$lang->set_language($mybb->user['language']);
$lang->load("messages");

			



			$plugins->run_hooks("usercp_usergroups_join_group_request");
redirect("usercp.php?action=usergroups", $lang->group_join_requestsent);
exit;
}
elseif($usergroup['type'] == 4)
{

			$plugins->run_hooks("usercp_usergroups_join_group_request");
redirect("usercp.php?action=usergroups", $lang->group_join_requestsent);
exit;
}
elseif($usergroup['type'] == 4)
{

			$joingroup = $mybb->get_input('joingroup', 1);

			$joingroup = $mybb->get_input('joingroup', MyBB::INPUT_INT);

			eval("\$joinpage = \"".$templates->get("usercp_usergroups_joingroup")."\";");
output_page($joinpage);
exit;

			eval("\$joinpage = \"".$templates->get("usercp_usergroups_joingroup")."\";");
output_page($joinpage);
exit;

		}
else

		}
else

		{

		{

			join_usergroup($mybb->user['uid'], $mybb->get_input('joingroup', 1));

			join_usergroup($mybb->user['uid'], $mybb->get_input('joingroup', MyBB::INPUT_INT));

			$plugins->run_hooks("usercp_usergroups_join_group");
redirect("usercp.php?action=usergroups", $lang->joined_group);
}
}

// Accepting invitation

			$plugins->run_hooks("usercp_usergroups_join_group");
redirect("usercp.php?action=usergroups", $lang->joined_group);
}
}

// Accepting invitation

	if($mybb->get_input('acceptinvite', 1))

	if($mybb->get_input('acceptinvite', MyBB::INPUT_INT))

	{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));


	{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));


		$usergroup = $usergroups[$mybb->get_input('acceptinvite', 1)];

		$usergroup = $usergroups[$mybb->get_input('acceptinvite', MyBB::INPUT_INT)];





		if(my_strpos($ingroups, ",".$mybb->get_input('acceptinvite', 1).",") !== false)

		if(my_strpos($ingroups, ",".$mybb->get_input('acceptinvite', MyBB::INPUT_INT).",") !== false)

		{
error($lang->already_accepted_invite);
}


		{
error($lang->already_accepted_invite);
}


		$query = $db->simple_select("joinrequests", "*", "uid='".$mybb->user['uid']."' AND gid='".$mybb->get_input('acceptinvite', 1)."' AND invite='1'");

		$query = $db->simple_select("joinrequests", "*", "uid='".$mybb->user['uid']."' AND gid='".$mybb->get_input('acceptinvite', MyBB::INPUT_INT)."' AND invite='1'");

		$joinrequest = $db->fetch_array($query);
if($joinrequest['rid'])
{

		$joinrequest = $db->fetch_array($query);
if($joinrequest['rid'])
{

			join_usergroup($mybb->user['uid'], $mybb->get_input('acceptinvite', 1));
$db->delete_query("joinrequests", "uid='{$mybb->user['uid']}' AND gid='".$mybb->get_input('acceptinvite', 1)."'");

			join_usergroup($mybb->user['uid'], $mybb->get_input('acceptinvite', MyBB::INPUT_INT));
$db->delete_query("joinrequests", "uid='{$mybb->user['uid']}' AND gid='".$mybb->get_input('acceptinvite', MyBB::INPUT_INT)."'");

			$plugins->run_hooks("usercp_usergroups_accept_invite");
redirect("usercp.php?action=usergroups", $lang->joined_group);
}

			$plugins->run_hooks("usercp_usergroups_accept_invite");
redirect("usercp.php?action=usergroups", $lang->joined_group);
}

Zeile 3311Zeile 3273
				LEFT JOIN ".TABLE_PREFIX."users u ON(((CONCAT(',', u.additionalgroups, ',') LIKE CONCAT('%,', g.gid, ',%')) OR u.usergroup = g.gid))
LEFT JOIN ".TABLE_PREFIX."joinrequests j ON(j.gid=g.gid AND j.uid != 0)
WHERE l.uid='".$mybb->user['uid']."'

				LEFT JOIN ".TABLE_PREFIX."users u ON(((CONCAT(',', u.additionalgroups, ',') LIKE CONCAT('%,', g.gid, ',%')) OR u.usergroup = g.gid))
LEFT JOIN ".TABLE_PREFIX."joinrequests j ON(j.gid=g.gid AND j.uid != 0)
WHERE l.uid='".$mybb->user['uid']."'

				GROUP BY l.gid

				GROUP BY g.gid, g.title, g.type, l.canmanagerequests, l.canmanagemembers, l.caninvitemembers

			");
}


			");
}


Zeile 3319Zeile 3281
	{
$memberlistlink = $moderaterequestslink = '';
eval("\$memberlistlink = \"".$templates->get("usercp_usergroups_leader_usergroup_memberlist")."\";");

	{
$memberlistlink = $moderaterequestslink = '';
eval("\$memberlistlink = \"".$templates->get("usercp_usergroups_leader_usergroup_memberlist")."\";");

 
		$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);

		if($usergroup['type'] != 4)
{
$usergroup['joinrequests'] = '--';

		if($usergroup['type'] != 4)
{
$usergroup['joinrequests'] = '--';

Zeile 3340Zeile 3303
	// Fetch the list of groups the member is in
// Do the primary group first
$usergroup = $usergroups[$mybb->user['usergroup']];

	// Fetch the list of groups the member is in
// Do the primary group first
$usergroup = $usergroups[$mybb->user['usergroup']];

 
	$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);
$usergroup['usertitle'] = htmlspecialchars_uni($usergroup['usertitle']);
$usergroup['description'] = htmlspecialchars_uni($usergroup['description']);

	eval("\$leavelink = \"".$templates->get("usercp_usergroups_memberof_usergroup_leaveprimary")."\";");
$trow = alt_trow();
if($usergroup['candisplaygroup'] == 1 && $usergroup['gid'] == $mybb->user['displaygroup'])

	eval("\$leavelink = \"".$templates->get("usercp_usergroups_memberof_usergroup_leaveprimary")."\";");
$trow = alt_trow();
if($usergroup['candisplaygroup'] == 1 && $usergroup['gid'] == $mybb->user['displaygroup'])

Zeile 3378Zeile 3344
			}

$description = '';

			}

$description = '';

 
			$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);
$usergroup['usertitle'] = htmlspecialchars_uni($usergroup['usertitle']);

			if($usergroup['description'])
{

			if($usergroup['description'])
{

 
				$usergroup['description'] = htmlspecialchars_uni($usergroup['description']);

				eval("\$description = \"".$templates->get("usercp_usergroups_memberof_usergroup_description")."\";");
}
$trow = alt_trow();

				eval("\$description = \"".$templates->get("usercp_usergroups_memberof_usergroup_description")."\";");
}
$trow = alt_trow();

Zeile 3421Zeile 3390
		$trow = alt_trow();

$description = '';

		$trow = alt_trow();

$description = '';

 
		$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);

		if($usergroup['description'])
{

		if($usergroup['description'])
{

 
			$usergroup['description'] = htmlspecialchars_uni($usergroup['description']);

			eval("\$description = \"".$templates->get("usercp_usergroups_joinable_usergroup_description")."\";");
}


			eval("\$description = \"".$templates->get("usercp_usergroups_joinable_usergroup_description")."\";");
}


Zeile 3465Zeile 3436
			$usergroupleaders = '';
foreach($groupleaders[$usergroup['gid']] as $leader)
{

			$usergroupleaders = '';
foreach($groupleaders[$usergroup['gid']] as $leader)
{

				$leader['username'] = format_name($leader['username'], $leader['usergroup'], $leader['displaygroup']);

				$leader['username'] = format_name(htmlspecialchars_uni($leader['username']), $leader['usergroup'], $leader['displaygroup']);

				$usergroupleaders .= $comma.build_profile_link($leader['username'], $leader['uid']);
$comma = $lang->comma;
}

				$usergroupleaders .= $comma.build_profile_link($leader['username'], $leader['uid']);
$comma = $lang->comma;
}

Zeile 3508Zeile 3479
	}

$perpage = $mybb->settings['threadsperpage'];

	}

$perpage = $mybb->settings['threadsperpage'];

	$page = $mybb->get_input('page', 1);

	$page = $mybb->get_input('page', MyBB::INPUT_INT);


if($page > 0)
{


if($page > 0)
{

Zeile 3667Zeile 3638
	$lang->posts_day = $lang->sprintf($lang->posts_day, my_number_format($perday), $percent);
$regdate = my_date('relative', $mybb->user['regdate']);


	$lang->posts_day = $lang->sprintf($lang->posts_day, my_number_format($perday), $percent);
$regdate = my_date('relative', $mybb->user['regdate']);


	$useravatar = format_avatar(htmlspecialchars_uni($mybb->user['avatar']), $mybb->user['avatardimensions'], '100x100');


	$useravatar = format_avatar($mybb->user['avatar'], $mybb->user['avatardimensions'], '100x100');
$avatar_username = htmlspecialchars_uni($mybb->user['username']);

	eval("\$avatar = \"".$templates->get("usercp_currentavatar")."\";");


	eval("\$avatar = \"".$templates->get("usercp_currentavatar")."\";");


	$usergroup = $groupscache[$mybb->user['usergroup']]['title'];

	$usergroup = htmlspecialchars_uni($groupscache[$mybb->user['usergroup']]['title']);

	if($mybb->user['usergroup'] == 5 && $mybb->settings['regtype'] != "admin")
{
eval("\$usergroup .= \"".$templates->get("usercp_resendactivation")."\";");

	if($mybb->user['usergroup'] == 5 && $mybb->settings['regtype'] != "admin")
{
eval("\$usergroup .= \"".$templates->get("usercp_resendactivation")."\";");

Zeile 3686Zeile 3658
	$latest_warnings = '';
if($mybb->settings['enablewarningsystem'] != 0 && $mybb->settings['canviewownwarning'] != 0)
{

	$latest_warnings = '';
if($mybb->settings['enablewarningsystem'] != 0 && $mybb->settings['canviewownwarning'] != 0)
{

 
		if($mybb->settings['maxwarningpoints'] < 1)
{
$mybb->settings['maxwarningpoints'] = 10;
}

		$warning_level = round($mybb->user['warningpoints']/$mybb->settings['maxwarningpoints']*100);
if($warning_level > 100)
{

		$warning_level = round($mybb->user['warningpoints']/$mybb->settings['maxwarningpoints']*100);
if($warning_level > 100)
{

Zeile 3727Zeile 3703
					$warning['postlink'] = get_post_link($warning['pid']);
eval("\$post_link .= \"".$templates->get("usercp_warnings_warning_post")."\";");
}

					$warning['postlink'] = get_post_link($warning['pid']);
eval("\$post_link .= \"".$templates->get("usercp_warnings_warning_post")."\";");
}

 
				$warning['username'] = htmlspecialchars_uni($warning['username']);

				$issuedby = build_profile_link($warning['username'], $warning['issuedby']);
$date_issued = my_date('relative', $warning['dateline']);
if($warning['type_title'])

				$issuedby = build_profile_link($warning['username'], $warning['issuedby']);
$date_issued = my_date('relative', $warning['dateline']);
if($warning['type_title'])

Zeile 3759Zeile 3736
				}
else
{

				}
else
{

					$expires = my_date('relative', $warning['expires']);

					$expires = nice_time($warning['expires']-TIME_NOW);

				}

$alt_bg = alt_trow();
eval("\$warnings .= \"".$templates->get("usercp_warnings_warning")."\";");
}
if($warnings)

				}

$alt_bg = alt_trow();
eval("\$warnings .= \"".$templates->get("usercp_warnings_warning")."\";");
}
if($warnings)

			{

			{

				eval("\$latest_warnings = \"".$templates->get("usercp_warnings")."\";");
}
}
}

// Format username

				eval("\$latest_warnings = \"".$templates->get("usercp_warnings")."\";");
}
}
}

// Format username

	$username = format_name($mybb->user['username'], $mybb->user['usergroup'], $mybb->user['displaygroup']);

	$username = format_name(htmlspecialchars_uni($mybb->user['username']), $mybb->user['usergroup'], $mybb->user['displaygroup']);

	$username = build_profile_link($username, $mybb->user['uid']);

// Format post numbers

	$username = build_profile_link($username, $mybb->user['uid']);

// Format post numbers

Zeile 3847Zeile 3824
			if($subscriptions)
{
if($mybb->settings['dotfolders'] != 0)

			if($subscriptions)
{
if($mybb->settings['dotfolders'] != 0)

				{

				{

					$query = $db->simple_select("posts", "tid,uid", "uid='{$mybb->user['uid']}' AND tid IN ({$tids})");
while($post = $db->fetch_array($query))
{

					$query = $db->simple_select("posts", "tid,uid", "uid='{$mybb->user['uid']}' AND tid IN ({$tids})");
while($post = $db->fetch_array($query))
{

Zeile 3925Zeile 3902
						}

$lastpostdate = my_date('relative', $thread['lastpost']);

						}

$lastpostdate = my_date('relative', $thread['lastpost']);

						$lastposter = $thread['lastposter'];

 
						$lastposteruid = $thread['lastposteruid'];

						$lastposteruid = $thread['lastposteruid'];

 
						if(!$lastposteruid && !$thread['lastposter'])
{
$lastposter = htmlspecialchars_uni($lang->guest);
}
else
{
$lastposter = htmlspecialchars_uni($thread['lastposter']);
}


if($lastposteruid == 0)
{


if($lastposteruid == 0)
{

Zeile 3939Zeile 3923

$thread['replies'] = my_number_format($thread['replies']);
$thread['views'] = my_number_format($thread['views']);


$thread['replies'] = my_number_format($thread['replies']);
$thread['views'] = my_number_format($thread['views']);

 
						$thread['username'] = htmlspecialchars_uni($thread['username']);

						$thread['author'] = build_profile_link($thread['username'], $thread['uid']);

eval("\$latest_subscribed_threads .= \"".$templates->get("usercp_latest_subscribed_threads")."\";");

						$thread['author'] = build_profile_link($thread['username'], $thread['uid']);

eval("\$latest_subscribed_threads .= \"".$templates->get("usercp_latest_subscribed_threads")."\";");

Zeile 3957Zeile 3942
	$inactiveforums = get_inactive_forums();
if($unviewable_forums)
{

	$inactiveforums = get_inactive_forums();
if($unviewable_forums)
{

		$f_perm_sql = " AND t.fid NOT IN (".$unviewable_forums.")";

		$f_perm_sql = " AND t.fid NOT IN ($unviewable_forums)";

	}
if($inactiveforums)
{

	}
if($inactiveforums)
{

		$f_perm_sql .= " AND t.fid NOT IN (".$inactiveforums.")";

		$f_perm_sql .= " AND t.fid NOT IN ($inactiveforums)";

	}

$visible = " AND t.visible != 0";

	}

$visible = " AND t.visible != 0";

Zeile 4001Zeile 3986
	if(!empty($threadcache))
{
$tids = implode(",", array_keys($threadcache));

	if(!empty($threadcache))
{
$tids = implode(",", array_keys($threadcache));

 
		$readforums = array();


// Read Forums
$query = $db->query("


// Read Forums
$query = $db->query("

Zeile 4010Zeile 3996
			WHERE f.active != 0
ORDER BY pid, disporder
");

			WHERE f.active != 0
ORDER BY pid, disporder
");

 


		while($forum = $db->fetch_array($query))
{
$readforums[$forum['fid']] = $forum['lastread'];

		while($forum = $db->fetch_array($query))
{
$readforums[$forum['fid']] = $forum['lastread'];

Zeile 4165Zeile 4152
				$folder .= "folder";

$lastpostdate = my_date('relative', $thread['lastpost']);

				$folder .= "folder";

$lastpostdate = my_date('relative', $thread['lastpost']);

				$lastposter = $thread['lastposter'];

				$lastposter = htmlspecialchars_uni($thread['lastposter']);

				$lastposteruid = $thread['lastposteruid'];

if($lastposteruid == 0)

				$lastposteruid = $thread['lastposteruid'];

if($lastposteruid == 0)

Zeile 4179Zeile 4166

$thread['replies'] = my_number_format($thread['replies']);
$thread['views'] = my_number_format($thread['views']);


$thread['replies'] = my_number_format($thread['replies']);
$thread['views'] = my_number_format($thread['views']);

 
				$thread['username'] = htmlspecialchars_uni($thread['username']);

				$thread['author'] = build_profile_link($thread['username'], $thread['uid']);

eval("\$latest_threads_threads .= \"".$templates->get("usercp_latest_threads_threads")."\";");

				$thread['author'] = build_profile_link($thread['username'], $thread['uid']);

eval("\$latest_threads_threads .= \"".$templates->get("usercp_latest_threads_threads")."\";");