Vergleich usercp.php - 1.8.6 - 1.8.20

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 10Zeile 10

define("IN_MYBB", 1);
define('THIS_SCRIPT', 'usercp.php');


define("IN_MYBB", 1);
define('THIS_SCRIPT', 'usercp.php');

 
define("ALLOWABLE_PAGE", "removesubscription,removesubscriptions");


$templatelist = "usercp,usercp_nav,usercp_profile,usercp_changename,usercp_password,usercp_subscriptions_thread,forumbit_depth2_forum_lastpost,usercp_forumsubscriptions_forum,postbit_reputation_formatted,usercp_subscriptions_thread_icon";
$templatelist .= ",usercp_usergroups_memberof_usergroup,usercp_usergroups_memberof,usercp_usergroups_joinable_usergroup,usercp_usergroups_joinable,usercp_usergroups,usercp_nav_attachments,usercp_options_style,usercp_warnings_warning_post";


$templatelist = "usercp,usercp_nav,usercp_profile,usercp_changename,usercp_password,usercp_subscriptions_thread,forumbit_depth2_forum_lastpost,usercp_forumsubscriptions_forum,postbit_reputation_formatted,usercp_subscriptions_thread_icon";
$templatelist .= ",usercp_usergroups_memberof_usergroup,usercp_usergroups_memberof,usercp_usergroups_joinable_usergroup,usercp_usergroups_joinable,usercp_usergroups,usercp_nav_attachments,usercp_options_style,usercp_warnings_warning_post";

Zeile 17Zeile 18
$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";
$templatelist .= ",usercp_addsubscription_thread,forumdisplay_password,forumdisplay_password_wrongpass,";


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 46

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 53Zeile 55
$mybb->input['action'] = $mybb->get_input('action');

usercp_menu();

$mybb->input['action'] = $mybb->get_input('action');

usercp_menu();

 

$server_http_referer = htmlentities($_SERVER['HTTP_REFERER']);


$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;

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

	}


	}


	$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);
}
}

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

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

Zeile 146Zeile 106
	case "changename":
case "do_changename":
add_breadcrumb($lang->nav_changename);

	case "changename":
case "do_changename":
add_breadcrumb($lang->nav_changename);

		break;

		break;

	case "subscriptions":
add_breadcrumb($lang->ucp_nav_subscribed_threads);
break;

	case "subscriptions":
add_breadcrumb($lang->ucp_nav_subscribed_threads);
break;

Zeile 160Zeile 120
	case "avatar":
case "do_avatar":
add_breadcrumb($lang->nav_avatar);

	case "avatar":
case "do_avatar":
add_breadcrumb($lang->nav_avatar);

		break;

		break;

	case "notepad":
case "do_notepad":
add_breadcrumb($lang->ucp_nav_notepad);

	case "notepad":
case "do_notepad":
add_breadcrumb($lang->ucp_nav_notepad);

Zeile 194Zeile 154
		{
// 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', MyBB::INPUT_INT))

		{
// 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', MyBB::INPUT_INT))

			{

			{

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

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

			}

			}

			if(!$mybb->get_input('awayyear', MyBB::INPUT_INT))
{
$mybb->input['awayyear'] = my_date('Y', $awaydate);

			if(!$mybb->get_input('awayyear', MyBB::INPUT_INT))
{
$mybb->input['awayyear'] = my_date('Y', $awaydate);

			}


			}


			$return_month = (int)substr($mybb->get_input('awaymonth'), 0, 2);
$return_day = (int)substr($mybb->get_input('awayday'), 0, 2);
$return_year = min((int)$mybb->get_input('awayyear'), 9999);

			$return_month = (int)substr($mybb->get_input('awaymonth'), 0, 2);
$return_day = (int)substr($mybb->get_input('awayday'), 0, 2);
$return_year = min((int)$mybb->get_input('awayyear'), 9999);

Zeile 215Zeile 175
			}

$returndate = "{$return_day}-{$return_month}-{$return_year}";

			}

$returndate = "{$return_day}-{$return_month}-{$return_year}";

		}
else
{

		}
else
{

			$returndate = "";
}
$away = array(

			$returndate = "";
}
$away = array(

Zeile 228Zeile 188
		);
}
else

		);
}
else

	{

	{

		$away = array(
"away" => 0,
"date" => '',

		$away = array(
"away" => 0,
"date" => '',

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

		"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 257Zeile 217
		"away" => $away,
"profile_fields" => $mybb->get_input('profile_fields', MyBB::INPUT_ARRAY)
);

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

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

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

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

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

		{
continue;
}


		{
continue;
}


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

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

		{

		{

			continue;

			continue;

		}

		}


if($cfield == 'icq')


if($cfield == 'icq')

		{
$user[$cfield] = $mybb->get_input($cfield, 1);
}
else

		{
$user[$cfield] = $mybb->get_input($cfield, 1);
}
else

		{
$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 291Zeile 251
		{
$user['usertitle'] = $mybb->get_input('usertitle');
}

		{
$user['usertitle'] = $mybb->get_input('usertitle');
}

		else if(!empty($mybb->input['reverttitle']))

		elseif(!empty($mybb->input['reverttitle']))

		{
$user['usertitle'] = '';
}
}
$userhandler->set_data($user);

		{
$user['usertitle'] = '';
}
}
$userhandler->set_data($user);





	if(!$userhandler->validate_user())
{
$errors = $userhandler->get_friendly_errors();

	if(!$userhandler->validate_user())
{
$errors = $userhandler->get_friendly_errors();


// Set allowed value otherwise select options disappear
if(in_array($lang->userdata_invalid_birthday_privacy, $errors))


		$raw_errors = $userhandler->get_errors();

// Set to stored value if invalid
if(array_key_exists("invalid_birthday_privacy", $raw_errors))

		{

		{

			$mybb->input['birthdayprivacy'] = 'none';

			$mybb->input['birthdayprivacy'] = $mybb->user['birthdayprivacy'];

		}

		}





		$errors = inline_error($errors);
$mybb->input['action'] = "profile";
}
else
{
$userhandler->update_user();

		$errors = inline_error($errors);
$mybb->input['action'] = "profile";
}
else
{
$userhandler->update_user();





		$plugins->run_hooks("usercp_do_profile_end");
redirect("usercp.php?action=profile", $lang->redirect_profileupdated);
}

		$plugins->run_hooks("usercp_do_profile_end");
redirect("usercp.php?action=profile", $lang->redirect_profileupdated);
}

Zeile 335Zeile 296
		$user = $mybb->user;
$bday = explode("-", $user['birthday']);
if(!isset($bday[1]))

		$user = $mybb->user;
$bday = explode("-", $user['birthday']);
if(!isset($bday[1]))

		{

		{

			$bday[1] = 0;
}
if(!isset($bday[2]))

			$bday[1] = 0;
}
if(!isset($bday[2]))

Zeile 373Zeile 334
	{
$allselected = " selected=\"selected\"";
}

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

	else if($user['birthdayprivacy'] == 'none')

	elseif($user['birthdayprivacy'] == 'none')

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

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

	else if($user['birthdayprivacy'] == 'age')

	elseif($user['birthdayprivacy'] == 'age')

	{
$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 405Zeile 366
	{
$user['skype'] = htmlspecialchars_uni($user['skype']);
$user['google'] = htmlspecialchars_uni($user['google']);

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

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

 
		$user['yahoo'] = htmlspecialchars_uni($user['yahoo']);
}

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

		$user['yahoo'] = htmlspecialchars_uni($user['yahoo']);
}

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

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


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

	{
$contact_fields[$cfield] = '';
$csetting = 'allow'.$cfield.'field';

	{
$contact_fields[$cfield] = '';
$csetting = 'allow'.$cfield.'field';

Zeile 568Zeile 528
					foreach($useropts as $key => $val)
{
$val = htmlspecialchars_uni($val);

					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)

						$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])

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

$sel = "";
if(isset($seloptions[$val]) && $val == $seloptions[$val])

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

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

						}

eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");

						}

eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");

Zeile 596Zeile 556
				}
}
elseif($type == "select")

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

			{
$expoptions = explode("\n", $options);

			{
$expoptions = explode("\n", $options);

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

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

Zeile 611Zeile 571
						}

eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");

						}

eval("\$select .= \"".$templates->get("usercp_profile_profilefields_select_option")."\";");

					}
if(!$profilefield['length'])

					}
if(!$profilefield['length'])

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

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

Zeile 622Zeile 582
			}
elseif($type == "radio")
{

			}
elseif($type == "radio")
{

 
				$userfield = htmlspecialchars_uni($userfield);

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

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

Zeile 634Zeile 595
						}

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

						}

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

					}

					}

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

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

 
				$userfield = htmlspecialchars_uni($userfield);

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

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

				}

				}

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

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

Zeile 664Zeile 626
						{
$checked = " checked=\"checked\"";
}

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





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

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

			{
$value = htmlspecialchars_uni($userfield);

			{
$value = htmlspecialchars_uni($userfield);

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

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

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

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

			}

			}

			$altbg = alt_trow();
$code = "";
$select = "";

			$altbg = alt_trow();
$code = "";
$select = "";

Zeile 701Zeile 663
			$options = "";
$expoptions = "";
$useropts = "";

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

			$seloptions = "";
}

			$seloptions = array();
}

	}
if($customfields)
{

	}
if($customfields)
{

Zeile 717Zeile 679
			$usertitles = $cache->read('usertitles');

foreach($usertitles as $title)

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

foreach($usertitles as $title)

			{

			{

				if($title['posts'] <= $mybb->user['postnum'])
{
$defaulttitle = htmlspecialchars_uni($title['title']);
break;
}

				if($title['posts'] <= $mybb->user['postnum'])
{
$defaulttitle = htmlspecialchars_uni($title['title']);
break;
}

			}
}

			}
}

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

$newtitle = '';

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

$newtitle = '';

		if(trim($user['usertitle']) == '')

		if(trim($user['usertitle']) == '')

		{
$lang->current_custom_usertitle = '';
}

		{
$lang->current_custom_usertitle = '';
}

Zeile 743Zeile 705
				$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 754Zeile 716
			if($mybb->user['usertitle'] != $mybb->usergroup['usertitle'])
{
eval("\$reverttitle = \"".$templates->get("usercp_profile_customtitle_reverttitle")."\";");

			if($mybb->user['usertitle'] != $mybb->usergroup['usertitle'])
{
eval("\$reverttitle = \"".$templates->get("usercp_profile_customtitle_reverttitle")."\";");

			}

			}

		}

		}

		



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

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

	}

	}

	else

	else

	{

	{

		$customtitle = "";

		$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 833Zeile 795
	}

$userhandler->set_data($user);

	}

$userhandler->set_data($user);



 

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


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

Zeile 917Zeile 878
	{
$no_subscribe_selected = "selected=\"selected\"";
}

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

	else if(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 2)

	elseif(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 2)

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

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

	else if(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 3)

	elseif(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 3)

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

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

Zeile 1007Zeile 968
	{
$dst_auto_selected = "selected=\"selected\"";
}

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

	else if(isset($user['dstcorrection']) && $user['dstcorrection'] == 1)

	elseif(isset($user['dstcorrection']) && $user['dstcorrection'] == 1)

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

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

Zeile 1051Zeile 1012
	{
$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 = '';
}

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

		$buddyrequestspmcheck = '';
}

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 1086Zeile 1047

$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 1109Zeile 1070
		$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);

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

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

$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 = array('linear' => '', 'threaded' => '');
if(isset($user['threadmode']) && is_scalar($user['threadmode']))

Zeile 1131Zeile 1104
	if(!isset($user['style']))
{
$user['style'] = '';

	if(!isset($user['style']))
{
$user['style'] = '';

	}


	}


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

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

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

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

	}

	}


$tppselect = $pppselect = '';
if($mybb->settings['usertppoptions'])


$tppselect = $pppselect = '';
if($mybb->settings['usertppoptions'])

Zeile 1175Zeile 1148
				$val = trim($val);
$selected = "";
if(isset($user['ppp']) && $user['ppp'] == $val)

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

				{

				{

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

$ppp_option = $lang->sprintf($lang->ppp_option, $val);
eval("\$pppoptions .= \"".$templates->get("usercp_options_pppselect_option")."\";");

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

$ppp_option = $lang->sprintf($lang->ppp_option, $val);
eval("\$pppoptions .= \"".$templates->get("usercp_options_pppselect_option")."\";");

			}

			}

		}
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 1207Zeile 1180
	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 1224Zeile 1197
		}
else
{

		}
else
{

			if($mybb->user['usergroup'] != "5" && $mybb->usergroup['cancp'] != 1 && $mybb->settings['regtype'] != "verify")












































			$activation = false;
// Checking for pending activations for non-activated accounts
if($mybb->user['usergroup'] == 5 && ($mybb->settings['regtype'] == "verify" || $mybb->settings['regtype'] == "both"))
{
$query = $db->simple_select("awaitingactivation", "*", "uid='".$mybb->user['uid']."' AND (type='r' OR type='b')");
$activation = $db->fetch_array($query);
}
if($activation)
{
$userhandler->update_user();

$db->delete_query("awaitingactivation", "uid='".$mybb->user['uid']."'");

// Send new activation mail for non-activated accounts
$activationcode = random_str();
$activationarray = array(
"uid" => $mybb->user['uid'],
"dateline" => TIME_NOW,
"code" => $activationcode,
"type" => $activation['type']
);
$db->insert_query("awaitingactivation", $activationarray);
$emailsubject = $lang->sprintf($lang->emailsubject_activateaccount, $mybb->settings['bbname']);
switch($mybb->settings['username_method'])
{
case 0:
$emailmessage = $lang->sprintf($lang->email_activateaccount, $mybb->user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $mybb->user['uid'], $activationcode);
break;
case 1:
$emailmessage = $lang->sprintf($lang->email_activateaccount1, $mybb->user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $mybb->user['uid'], $activationcode);
break;
case 2:
$emailmessage = $lang->sprintf($lang->email_activateaccount2, $mybb->user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $mybb->user['uid'], $activationcode);
break;
default:
$emailmessage = $lang->sprintf($lang->email_activateaccount, $mybb->user['username'], $mybb->settings['bbname'], $mybb->settings['bburl'], $mybb->user['uid'], $activationcode);
break;
}
my_mail($mybb->user['email'], $emailsubject, $emailmessage);

$plugins->run_hooks("usercp_do_email_changed");
redirect("usercp.php?action=email", $lang->redirect_emailupdated);
}
elseif($mybb->usergroup['cancp'] != 1 && ($mybb->settings['regtype'] == "verify" || $mybb->settings['regtype'] == "both"))

			{
$uid = $mybb->user['uid'];
$username = $mybb->user['username'];

			{
$uid = $mybb->user['uid'];
$username = $mybb->user['username'];

Zeile 1303Zeile 1319
	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 1321Zeile 1337
		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, "lax");


// 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 1353Zeile 1369
	verify_post_check($mybb->get_input('my_post_key'));

$plugins->run_hooks("usercp_do_changename_start");

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

$plugins->run_hooks("usercp_do_changename_start");

	if($mybb->usergroup['canchangename'] != 1)
{
error_no_permission();
}


	if($mybb->usergroup['canchangename'] != 1)
{
error_no_permission();
}


	if(validate_password_from_uid($mybb->user['uid'], $mybb->get_input('password')) == false)
{
$errors[] = $lang->error_invalidpassword;

	if(validate_password_from_uid($mybb->user['uid'], $mybb->get_input('password')) == false)
{
$errors[] = $lang->error_invalidpassword;

Zeile 1365Zeile 1381
	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 1436Zeile 1452
		{
$new_notification = 0;
}

		{
$new_notification = 0;
}

		else if($mybb->get_input('do') == "email_notification")

		elseif($mybb->get_input('do') == "email_notification")

		{
$new_notification = 1;
}

		{
$new_notification = 1;
}

		else if($mybb->get_input('do') == "pm_notification")

		elseif($mybb->get_input('do') == "pm_notification")

		{
$new_notification = 2;
}

		{
$new_notification = 2;
}

Zeile 1477Zeile 1493
	if(!$mybb->settings['threadsperpage'] || (int)$mybb->settings['threadsperpage'] < 1)
{
$mybb->settings['threadsperpage'] = 20;

	if(!$mybb->settings['threadsperpage'] || (int)$mybb->settings['threadsperpage'] < 1)
{
$mybb->settings['threadsperpage'] = 20;

	}


	}


	$perpage = $mybb->settings['threadsperpage'];
$page = $mybb->get_input('page', MyBB::INPUT_INT);
if($page > 0)

	$perpage = $mybb->settings['threadsperpage'];
$page = $mybb->get_input('page', MyBB::INPUT_INT);
if($page > 0)

Zeile 1493Zeile 1509
		}
}
else

		}
}
else

	{

	{

		$start = 0;
$page = 1;
}

		$start = 0;
$page = 1;
}

Zeile 1501Zeile 1517
	$lower = $start+1;
$upper = $end;
if($upper > $threadcount)

	$lower = $start+1;
$upper = $end;
if($upper > $threadcount)

	{

	{

		$upper = $threadcount;
}
$multipage = multipage($threadcount, $perpage, $page, "usercp.php?action=subscriptions");

		$upper = $threadcount;
}
$multipage = multipage($threadcount, $perpage, $page, "usercp.php?action=subscriptions");

Zeile 1523Zeile 1539
		$forumpermissions = $fpermissions[$subscription['fid']];

if($forumpermissions['canview'] == 0 || $forumpermissions['canviewthreads'] == 0 || (isset($forumpermissions['canonlyviewownthreads']) && $forumpermissions['canonlyviewownthreads'] != 0 && $subscription['uid'] != $mybb->user['uid']))

		$forumpermissions = $fpermissions[$subscription['fid']];

if($forumpermissions['canview'] == 0 || $forumpermissions['canviewthreads'] == 0 || (isset($forumpermissions['canonlyviewownthreads']) && $forumpermissions['canonlyviewownthreads'] != 0 && $subscription['uid'] != $mybb->user['uid']))

		{

		{

			// Hmm, you don't have permission to view this thread - unsubscribe!
$del_subscriptions[] = $subscription['sid'];
}

			// Hmm, you don't have permission to view this thread - unsubscribe!
$del_subscriptions[] = $subscription['sid'];
}

		else if($subscription['tid'])

		elseif($subscription['tid'])

		{
$subscriptions[$subscription['tid']] = $subscription;
}

		{
$subscriptions[$subscription['tid']] = $subscription;
}

Zeile 1538Zeile 1554
		$sids = implode(',', $del_subscriptions);

if($sids)

		$sids = implode(',', $del_subscriptions);

if($sids)

		{

		{

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

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





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

if($threadcount < 0)

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

if($threadcount < 0)

		{

		{

			$threadcount = 0;
}
}

			$threadcount = 0;
}
}

Zeile 1553Zeile 1569
	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->simple_select('forums', 'fid', 'active != 0', array('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)
{
$query = $db->simple_select("posts", "tid,uid", "uid='{$mybb->user['uid']}' AND tid IN ({$tids})");
while($post = $db->fetch_array($query))


// Check participation by the current user in any of these threads - for 'dot' folder icons
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))

			{

			{

				$subscriptions[$post['tid']]['doticon'] = 1;
}
}

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

				$subscriptions[$post['tid']]['doticon'] = 1;
}
}

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

		{

		{

			$query = $db->simple_select("threadsread", "*", "uid='{$mybb->user['uid']}' AND tid IN ({$tids})");
while($readthread = $db->fetch_array($query))
{
$subscriptions[$readthread['tid']]['lastread'] = $readthread['dateline'];
}
}

			$query = $db->simple_select("threadsread", "*", "uid='{$mybb->user['uid']}' AND tid IN ({$tids})");
while($readthread = $db->fetch_array($query))
{
$subscriptions[$readthread['tid']]['lastread'] = $readthread['dateline'];
}
}





		$icon_cache = $cache->read("posticons");
$threadprefixes = build_prefixes();

		$icon_cache = $cache->read("posticons");
$threadprefixes = build_prefixes();





		$threads = '';

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

		$threads = '';

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

		{

		{

			$bgcolor = alt_trow();

$folder = '';

			$bgcolor = alt_trow();

$folder = '';

Zeile 1654Zeile 1655
			{
$folder = "dot_";
$folder_label .= $lang->icon_dot;

			{
$folder = "dot_";
$folder_label .= $lang->icon_dot;

			}


			}


			$gotounread = '';
$isnew = 0;
$donenew = 0;
$lastread = 0;

			$gotounread = '';
$isnew = 0;
$donenew = 0;
$lastread = 0;


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


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

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


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


Zeile 1669Zeile 1670
				if($forum_read == 0 || $forum_read < $read_cutoff)
{
$forum_read = $read_cutoff;

				if($forum_read == 0 || $forum_read < $read_cutoff)
{
$forum_read = $read_cutoff;

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

				}





			}

$cutoff = 0;

			}

$cutoff = 0;

Zeile 1691Zeile 1688
				else
{
$lastread = 1;

				else
{
$lastread = 1;

				}
}


				}
}


			if(!$lastread)
{
$readcookie = $threadread = my_get_array_cookie("threadread", $thread['tid']);
if($readcookie > $forum_read)
{
$lastread = $readcookie;

			if(!$lastread)
{
$readcookie = $threadread = my_get_array_cookie("threadread", $thread['tid']);
if($readcookie > $forum_read)
{
$lastread = $readcookie;

				}

				}

				else
{
$lastread = $forum_read;

				else
{
$lastread = $forum_read;

Zeile 1720Zeile 1717
			{
$folder_label .= $lang->icon_no_new;
$new_class = "subject_old";

			{
$folder_label .= $lang->icon_no_new;
$new_class = "subject_old";

			}


			}


			if($thread['replies'] >= $mybb->settings['hottopic'] || $thread['views'] >= $mybb->settings['hottopicviews'])

			if($thread['replies'] >= $mybb->settings['hottopic'] || $thread['views'] >= $mybb->settings['hottopicviews'])

			{

			{

				$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 .= "close";
$folder_label .= $lang->icon_close;
}


			$folder .= "folder";

if($thread['visible'] == 0)

			$folder .= "folder";

if($thread['visible'] == 0)

Zeile 1743Zeile 1740

// 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'];

// Don't link to guest's profiles (they have no profile).

			$lastposteruid = $thread['lastposteruid'];

// Don't link to guest's profiles (they have no profile).

Zeile 1764Zeile 1768
			{
case "2": // PM
$notification_type = $lang->pm_notification;

			{
case "2": // PM
$notification_type = $lang->pm_notification;

					break;

					break;

				case "1": // Email
$notification_type = $lang->email_notification;
break;
default: // No notification
$notification_type = $lang->no_notification;
}

				case "1": // Email
$notification_type = $lang->email_notification;
break;
default: // No notification
$notification_type = $lang->no_notification;
}





			eval("\$threads .= \"".$templates->get("usercp_subscriptions_thread")."\";");
}


			eval("\$threads .= \"".$templates->get("usercp_subscriptions_thread")."\";");
}


Zeile 1794Zeile 1798
{
$plugins->run_hooks("usercp_forumsubscriptions_start");


{
$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 1871Zeile 1850
			$threads = my_number_format($forum['threads']);
}


			$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 1885Zeile 1864
			$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 1905Zeile 1898
	}

if(!$forums)

	}

if(!$forums)

	{

	{

		eval("\$forums = \"".$templates->get("usercp_forumsubscriptions_none")."\";");

		eval("\$forums = \"".$templates->get("usercp_forumsubscriptions_none")."\";");

	}

$plugins->run_hooks("usercp_forumsubscriptions_end");


	}

$plugins->run_hooks("usercp_forumsubscriptions_end");


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

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

 
}

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

$thread = get_thread($mybb->get_input('tid'));
if(!$thread || $thread['visible'] == -1)
{
error($lang->error_invalidthread);
}

// Is the currently logged in user a moderator of this forum?
$ismod = is_moderator($thread['fid']);

// Make sure we are looking at a real thread here.
if(($thread['visible'] != 1 && $ismod == false) || ($thread['visible'] > 1 && $ismod == true))
{
error($lang->error_invalidthread);
}

$forumpermissions = forum_permissions($thread['fid']);
if($forumpermissions['canview'] == 0 || $forumpermissions['canviewthreads'] == 0 || (isset($forumpermissions['canonlyviewownthreads']) && $forumpermissions['canonlyviewownthreads'] != 0 && $thread['uid'] != $mybb->user['uid']))
{
error_no_permission();
}

// check if the forum requires a password to view. If so, we need to show a form to the user
check_forum_password($thread['fid']);

// Naming of the hook retained for backward compatibility while dropping usercp2.php
$plugins->run_hooks("usercp2_do_addsubscription");

add_subscribed_thread($thread['tid'], $mybb->get_input('notification', MyBB::INPUT_INT));

if($mybb->get_input('referrer'))
{
$url = htmlspecialchars_uni($mybb->get_input('referrer'));
}
else
{
$url = get_thread_link($thread['tid']);
}
redirect($url, $lang->redirect_subscriptionadded);
}

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

if($mybb->get_input('type') == "forum")
{
$forum = get_forum($mybb->get_input('fid', MyBB::INPUT_INT));
if(!$forum)
{
error($lang->error_invalidforum);
}
$forumpermissions = forum_permissions($forum['fid']);
if($forumpermissions['canview'] == 0 || $forumpermissions['canviewthreads'] == 0)
{
error_no_permission();
}

// check if the forum requires a password to view. If so, we need to show a form to the user
check_forum_password($forum['fid']);

// Naming of the hook retained for backward compatibility while dropping usercp2.php
$plugins->run_hooks("usercp2_addsubscription_forum");

add_subscribed_forum($forum['fid']);
if($server_http_referer && $mybb->request_method != 'post')
{
$url = $server_http_referer;
}
else
{
$url = "index.php";
}
redirect($url, $lang->redirect_forumsubscriptionadded);
}
else
{
$thread = get_thread($mybb->get_input('tid', MyBB::INPUT_INT));
if(!$thread || $thread['visible'] == -1)
{
error($lang->error_invalidthread);
}

// Is the currently logged in user a moderator of this forum?
$ismod = is_moderator($thread['fid']);

// Make sure we are looking at a real thread here.
if(($thread['visible'] != 1 && $ismod == false) || ($thread['visible'] > 1 && $ismod == true))
{
error($lang->error_invalidthread);
}

add_breadcrumb($lang->nav_subthreads, "usercp.php?action=subscriptions");
add_breadcrumb($lang->nav_addsubscription);

$forumpermissions = forum_permissions($thread['fid']);
if($forumpermissions['canview'] == 0 || $forumpermissions['canviewthreads'] == 0 || (isset($forumpermissions['canonlyviewownthreads']) && $forumpermissions['canonlyviewownthreads'] != 0 && $thread['uid'] != $mybb->user['uid']))
{
error_no_permission();
}

// check if the forum requires a password to view. If so, we need to show a form to the user
check_forum_password($thread['fid']);

$referrer = '';
if($server_http_referer)
{
$referrer = $server_http_referer;
}

require_once MYBB_ROOT."inc/class_parser.php";
$parser = new postParser;
$thread['subject'] = $parser->parse_badwords($thread['subject']);
$thread['subject'] = htmlspecialchars_uni($thread['subject']);
$lang->subscribe_to_thread = $lang->sprintf($lang->subscribe_to_thread, $thread['subject']);

$notification_none_checked = $notification_email_checked = $notification_pm_checked = '';
if($mybb->user['subscriptionmethod'] == 1 || $mybb->user['subscriptionmethod'] == 0)
{
$notification_none_checked = "checked=\"checked\"";
}
elseif($mybb->user['subscriptionmethod'] == 2)
{
$notification_email_checked = "checked=\"checked\"";
}
elseif($mybb->user['subscriptionmethod'] == 3)
{
$notification_pm_checked = "checked=\"checked\"";
}

// Naming of the hook retained for backward compatibility while dropping usercp2.php
$plugins->run_hooks("usercp2_addsubscription_thread");

eval("\$add_subscription = \"".$templates->get("usercp_addsubscription_thread")."\";");
output_page($add_subscription);
exit;
}
}

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

if($mybb->get_input('type') == "forum")
{
$forum = get_forum($mybb->get_input('fid', MyBB::INPUT_INT));
if(!$forum)
{
error($lang->error_invalidforum);
}

// check if the forum requires a password to view. If so, we need to show a form to the user
check_forum_password($forum['fid']);

// Naming of the hook retained for backward compatibility while dropping usercp2.php
$plugins->run_hooks("usercp2_removesubscription_forum");

remove_subscribed_forum($forum['fid']);
if($server_http_referer && $mybb->request_method != 'post')
{
$url = $server_http_referer;
}
else
{
$url = "usercp.php?action=forumsubscriptions";
}
redirect($url, $lang->redirect_forumsubscriptionremoved);
}
else
{
$thread = get_thread($mybb->get_input('tid', MyBB::INPUT_INT));
if(!$thread)
{
error($lang->error_invalidthread);
}

// Is the currently logged in user a moderator of this forum?
$ismod = is_moderator($thread['fid']);

// Make sure we are looking at a real thread here.
if(($thread['visible'] != 1 && $ismod == false) || ($thread['visible'] > 1 && $ismod == true))
{
error($lang->error_invalidthread);
}

// check if the forum requires a password to view. If so, we need to show a form to the user
check_forum_password($thread['fid']);

// Naming of the hook retained for backward compatibility while dropping usercp2.php
$plugins->run_hooks("usercp2_removesubscription_thread");

remove_subscribed_thread($thread['tid']);
if($server_http_referer && $mybb->request_method != 'post')
{
$url = $server_http_referer;
}
else
{
$url = "usercp.php?action=subscriptions";
}
redirect($url, $lang->redirect_subscriptionremoved);
}
}

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

if($mybb->get_input('type') == "forum")
{
// Naming of the hook retained for backward compatibility while dropping usercp2.php
$plugins->run_hooks("usercp2_removesubscriptions_forum");

$db->delete_query("forumsubscriptions", "uid='".$mybb->user['uid']."'");
if($server_http_referer)
{
$url = $server_http_referer;
}
else
{
$url = "usercp.php?action=forumsubscriptions";
}
redirect($url, $lang->redirect_forumsubscriptionsremoved);
}
else
{
// Naming of the hook retained for backward compatibility while dropping usercp2.php
$plugins->run_hooks("usercp2_removesubscriptions_thread");

$db->delete_query("threadsubscriptions", "uid='".$mybb->user['uid']."'");
if($server_http_referer)
{
$url = $server_http_referer;
}
else
{
$url = "usercp.php?action=subscriptions";
}
redirect($url, $lang->redirect_subscriptionsremoved);
}

}

if($mybb->input['action'] == "do_editsig" && $mybb->request_method == "post")

}

if($mybb->input['action'] == "do_editsig" && $mybb->request_method == "post")

Zeile 1924Zeile 2166

// User currently has a suspended signature
if($mybb->user['suspendsignature'] == 1 && $mybb->user['suspendsigtime'] > TIME_NOW)


// User currently has a suspended signature
if($mybb->user['suspendsignature'] == 1 && $mybb->user['suspendsigtime'] > TIME_NOW)

	{

	{

		error_no_permission();
}


		error_no_permission();
}


Zeile 1986Zeile 2228
		// Usergroup has no permission to use this facility
error_no_permission();
}

		// Usergroup has no permission to use this facility
error_no_permission();
}

	else if($mybb->usergroup['canusesig'] == 1 && $mybb->usergroup['canusesigxposts'] > 0 && $mybb->user['postnum'] < $mybb->usergroup['canusesigxposts'])

	elseif($mybb->usergroup['canusesig'] == 1 && $mybb->usergroup['canusesigxposts'] > 0 && $mybb->user['postnum'] < $mybb->usergroup['canusesigxposts'])

	{
// Usergroup can use this facility, but only after x posts
error($lang->sprintf($lang->sig_suspended_posts, $mybb->usergroup['canusesigxposts']));

	{
// Usergroup can use this facility, but only after x posts
error($lang->sprintf($lang->sig_suspended_posts, $mybb->usergroup['canusesigxposts']));

Zeile 2004Zeile 2246
			"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 2044Zeile 2286
		if($mybb->settings['sightml'] == 1)
{
$sightml = $lang->on;

		if($mybb->settings['sightml'] == 1)
{
$sightml = $lang->on;

		}

		}

		else

		else

		{

		{

			$sightml = $lang->off;
}
if($mybb->settings['sigimgcode'] == 1)
{
$sigimgcode = $lang->on;

			$sightml = $lang->off;
}
if($mybb->settings['sigimgcode'] == 1)
{
$sigimgcode = $lang->on;

		}

		}

		else
{
$sigimgcode = $lang->off;
}
$sig = htmlspecialchars_uni($sig);
$lang->edit_sig_note2 = $lang->sprintf($lang->edit_sig_note2, $sigsmilies, $sigmycode, $sigimgcode, $sightml, $mybb->settings['siglength']);

		else
{
$sigimgcode = $lang->off;
}
$sig = htmlspecialchars_uni($sig);
$lang->edit_sig_note2 = $lang->sprintf($lang->edit_sig_note2, $sigsmilies, $sigmycode, $sigimgcode, $sightml, $mybb->settings['siglength']);





		if($mybb->settings['bbcodeinserter'] != 0 || $mybb->user['showcodebuttons'] != 0)
{
$codebuttons = build_mycode_inserter("signature");
}

$plugins->run_hooks("usercp_editsig_end");

		if($mybb->settings['bbcodeinserter'] != 0 || $mybb->user['showcodebuttons'] != 0)
{
$codebuttons = build_mycode_inserter("signature");
}

$plugins->run_hooks("usercp_editsig_end");





		eval("\$editsig = \"".$templates->get("usercp_editsig")."\";");
}


		eval("\$editsig = \"".$templates->get("usercp_editsig")."\";");
}


Zeile 2080Zeile 2322

$plugins->run_hooks("usercp_do_avatar_start");
require_once MYBB_ROOT."inc/functions_upload.php";


$plugins->run_hooks("usercp_do_avatar_start");
require_once MYBB_ROOT."inc/functions_upload.php";





	$avatar_error = "";

if(!empty($mybb->input['remove'])) // remove avatar

	$avatar_error = "";

if(!empty($mybb->input['remove'])) // remove avatar

Zeile 2101Zeile 2343
		}
$avatar = upload_avatar();
if($avatar['error'])

		}
$avatar = upload_avatar();
if($avatar['error'])

		{

		{

			$avatar_error = $avatar['error'];
}
else

			$avatar_error = $avatar['error'];
}
else

Zeile 2118Zeile 2360
			$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 2136Zeile 2378
			}

// Because Gravatars are square, hijack the width

			}

// Because Gravatars are square, hijack the width

			list($maxwidth, $maxheight) = explode("x", my_strtolower($mybb->settings['maxavatardims']));

			list($maxwidth, $maxheight) = preg_split('/[|x]/', my_strtolower($mybb->settings['maxavatardims']));

			$maxheight = (int)$maxwidth;

// Rating?

			$maxheight = (int)$maxwidth;

// Rating?

Zeile 2151Zeile 2393
			$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 2194Zeile 2436
			{
if($width && $height && $mybb->settings['maxavatardims'] != "")
{

			{
if($width && $height && $mybb->settings['maxavatardims'] != "")
{

					list($maxwidth, $maxheight) = explode("x", my_strtolower($mybb->settings['maxavatardims']));

					list($maxwidth, $maxheight) = preg_split('/[|x]/', my_strtolower($mybb->settings['maxavatardims']));

					if(($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight))
{
$lang->error_avatartoobig = $lang->sprintf($lang->error_avatartoobig, $maxwidth, $maxheight);

					if(($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight))
{
$lang->error_avatartoobig = $lang->sprintf($lang->error_avatartoobig, $maxwidth, $maxheight);

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

				);
$db->update_query("users", $updated_avatar, "uid='".$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 2239Zeile 2485
	$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($mybb->user['avatar'], $mybb->user['avatardimensions'], '100x100');
eval("\$currentavatar = \"".$templates->get("usercp_avatar_current")."\";");

if($mybb->settings['maxavatardims'] != "")
{

	$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']));

		list($maxwidth, $maxheight) = preg_split('/[|x]/', my_strtolower($mybb->settings['maxavatardims']));

		$lang->avatar_note .= "<br />".$lang->sprintf($lang->avatar_note_dimensions, $maxwidth, $maxheight);

		$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")
{
eval("\$auto_resize = \"".$templates->get("usercp_avatar_auto_resize_auto")."\";");
}

	$auto_resize = '';
if($mybb->settings['avatarresizing'] == "auto")
{
eval("\$auto_resize = \"".$templates->get("usercp_avatar_auto_resize_auto")."\";");
}

	else if($mybb->settings['avatarresizing'] == "user")

	elseif($mybb->settings['avatarresizing'] == "user")

	{
eval("\$auto_resize = \"".$templates->get("usercp_avatar_auto_resize_user")."\";");
}

	{
eval("\$auto_resize = \"".$templates->get("usercp_avatar_auto_resize_user")."\";");
}

Zeile 2277Zeile 2525
	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']))


$removeavatar = '';
if(!empty($mybb->user['avatar']))

Zeile 2300Zeile 2554
{
// 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'));





	// 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);

	// 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);

Zeile 2308Zeile 2562
	{
error($lang->invalid_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 2323Zeile 2577
		{
$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
$new_list = implode(",", $user['buddylist']);

		// Now we have the new list, so throw it all back together
$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) == ",")
{
$new_list = my_substr($new_list, 1);
}
if(my_substr($new_list, -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, 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'] != '')

		{

		{

			$mybb->user['buddylist'] = explode(',', $mybb->user['buddylist']);

			$mybb->user['buddylist'] = explode(',', $mybb->user['buddylist']);

		}

		}

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

		else
{
$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']);

// 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);

		// 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);





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

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

Zeile 2374Zeile 2628
		{
$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 2386Zeile 2640
			'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")
{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

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='.$mybb->get_input('id', MyBB::INPUT_INT).' AND touid='.(int)$mybb->user['uid']);

	// 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))

	$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']);
if(!empty($user))
{

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

Zeile 2426Zeile 2681
	}

$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
$query = $db->simple_select('buddyrequests', '*', 'id='.$mybb->get_input('id', MyBB::INPUT_INT).' AND uid='.(int)$mybb->user['uid']);
$request = $db->fetch_array($query);

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

Zeile 2441Zeile 2697
	{
error($lang->invalid_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 2471Zeile 2727
		{
// Create a list of buddies...
$selected_list = explode(",", $mybb->user['buddylist']);

		{
// Create a list of buddies...
$selected_list = explode(",", $mybb->user['buddylist']);

		}
}

		}
}

	else
{
if($mybb->user['buddylist'])
{
$existing_users = explode(",", $mybb->user['buddylist']);

	else
{
if($mybb->user['buddylist'])
{
$existing_users = explode(",", $mybb->user['buddylist']);

		}


		}


		if($mybb->user['ignorelist'])
{
// Create a list of ignored users
$selected_list = explode(",", $mybb->user['ignorelist']);
}
}

		if($mybb->user['ignorelist'])
{
// Create a list of ignored users
$selected_list = explode(",", $mybb->user['ignorelist']);
}
}





	$error_message = "";
$message = "";


	$error_message = "";
$message = "";


Zeile 2500Zeile 2756
		$users = array_map("trim", $users);
$users = array_unique($users);
foreach($users as $key => $username)

		$users = array_map("trim", $users);
$users = array_unique($users);
foreach($users as $key => $username)

		{

		{

			if(empty($username))
{
unset($users[$key]);

			if(empty($username))
{
unset($users[$key]);

Zeile 2514Zeile 2770
				continue;
}
$users[$key] = $db->escape_string($username);

				continue;
}
$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();
while($req = $db->fetch_array($query))
{
$requests[$req['touid']] = true;

		// Get the requests we have sent that are still pending
$query = $db->simple_select('buddyrequests', 'touid', 'uid='.(int)$mybb->user['uid']);
$requests = array();
while($req = $db->fetch_array($query))
{
$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 2531Zeile 2787
		{
$requests_rec[$req['uid']] = true;
}

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

		



		$sent = false;

// Fetch out new users

		$sent = false;

// Fetch out new users

Zeile 2586Zeile 2842
					{
$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 2601Zeile 2857
					{
$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;

				}


				}


				// Do we have auto approval set to On?
if($user['buddyrequestsauto'] == 1 && $mybb->get_input('manage') != "ignored")
{
$existing_users[] = $user['uid'];

				// Do we have auto approval set to On?
if($user['buddyrequestsauto'] == 1 && $mybb->get_input('manage') != "ignored")
{
$existing_users[] = $user['uid'];

	
$pm = array(


$pm = array(

						'subject' => 'buddyrequest_new_buddy',
'message' => 'buddyrequest_new_buddy_message',

						'subject' => 'buddyrequest_new_buddy',
'message' => 'buddyrequest_new_buddy_message',

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

						'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));

					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));

	



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

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

Zeile 2635Zeile 2891
						'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 2684Zeile 2940
		if(count($existing_users) == 0)
{
$message = "";

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

			



			if($sent === true)

			if($sent === true)

			{

			{

				$message = $lang->buddyrequests_sent_success;
}
}
}

// Removing a user from this list

				$message = $lang->buddyrequests_sent_success;
}
}
}

// Removing a user from this list

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

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

	{
// Check if user exists on the list
$key = array_search($mybb->get_input('delete', MyBB::INPUT_INT), $existing_users);

	{
// Check if user exists on the list
$key = array_search($mybb->get_input('delete', MyBB::INPUT_INT), $existing_users);

Zeile 2705Zeile 2961
			{
// We want to remove us from this user's buddy list
if($user['buddylist'] != '')

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

				{

				{

					$user['buddylist'] = explode(',', $user['buddylist']);

					$user['buddylist'] = explode(',', $user['buddylist']);

				}

				}

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

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

				



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

				$key = array_search($mybb->get_input('delete', MyBB::INPUT_INT), $user['buddylist']);
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 2731Zeile 2987
				{
$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")
{
$message = $lang->removed_from_ignore_list;

			if($mybb->get_input('manage') == "ignored")
{
$message = $lang->removed_from_ignore_list;

Zeile 2745Zeile 3001
			{
$message = $lang->removed_from_buddy_list;
}

			{
$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);

	// 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 2763Zeile 3020
	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);

	}


	}


	// And update
$user = array();
if($mybb->get_input('manage') == "ignored")

	// And update
$user = array();
if($mybb->get_input('manage') == "ignored")

Zeile 2796Zeile 3053

$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', MyBB::INPUT_INT))

		}

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

Zeile 2819Zeile 3076
				else
{
echo "\$(\"#buddy_list\").html(\"<li>{$lang->buddy_list_empty}</li>\");\n";

				else
{
echo "\$(\"#buddy_list\").html(\"<li>{$lang->buddy_list_empty}</li>\");\n";

				}
}
else

				}
}
else

			{
echo "\$(\"#".$mybb->get_input('manage')."_count\").html(\"".count(explode(",", $new_list))."\");\n";
}

			{
echo "\$(\"#".$mybb->get_input('manage')."_count\").html(\"".count(explode(",", $new_list))."\");\n";
}

Zeile 2855Zeile 3112
		$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 2884Zeile 3142
		$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 2927Zeile 3186
				{
$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 2949Zeile 3208
		}
exit;
}

		}
exit;
}

	



	$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']);

	$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))


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

Zeile 2983Zeile 3242
	{
$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")."\";");
}

		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")."\";");
output_page($listpage);
}

	$plugins->run_hooks("usercp_editlists_end");

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





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

$query = $db->simple_select("posts", "COUNT(pid) AS draftcount", "visible='-2' AND uid='{$mybb->user['uid']}'");
$draftcount = $db->fetch_field($query, 'draftcount');

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

$query = $db->simple_select("posts", "COUNT(pid) AS draftcount", "visible='-2' AND uid='{$mybb->user['uid']}'");
$draftcount = $db->fetch_field($query, 'draftcount');





	$drafts = $disable_delete_drafts = '';
$lang->drafts_count = $lang->sprintf($lang->drafts_count, my_number_format($draftcount));


	$drafts = $disable_delete_drafts = '';
$lang->drafts_count = $lang->sprintf($lang->drafts_count, my_number_format($draftcount));


Zeile 3027Zeile 3286
			$detail = '';
$trow = alt_trow();
if($draft['threadvisible'] == 1) // We're looking at a draft post

			$detail = '';
$trow = alt_trow();
if($draft['threadvisible'] == 1) // We're looking at a draft post

			{

			{

				$draft['threadlink'] = get_thread_link($draft['tid']);
$draft['threadsubject'] = htmlspecialchars_uni($draft['threadsubject']);
eval("\$detail = \"".$templates->get("usercp_drafts_draft_thread")."\";");
$editurl = "newreply.php?action=editdraft&amp;pid={$draft['pid']}";
$id = $draft['pid'];
$type = "post";

				$draft['threadlink'] = get_thread_link($draft['tid']);
$draft['threadsubject'] = htmlspecialchars_uni($draft['threadsubject']);
eval("\$detail = \"".$templates->get("usercp_drafts_draft_thread")."\";");
$editurl = "newreply.php?action=editdraft&amp;pid={$draft['pid']}";
$id = $draft['pid'];
$type = "post";

			}

			}

			elseif($draft['threadvisible'] == -2) // We're looking at a draft thread
{
$draft['forumlink'] = get_forum_link($draft['fid']);

			elseif($draft['threadvisible'] == -2) // We're looking at a draft thread
{
$draft['forumlink'] = get_forum_link($draft['fid']);

Zeile 3054Zeile 3313
	{
$disable_delete_drafts = 'disabled="disabled"';
eval("\$drafts = \"".$templates->get("usercp_drafts_none")."\";");

	{
$disable_delete_drafts = 'disabled="disabled"';
eval("\$drafts = \"".$templates->get("usercp_drafts_none")."\";");

	}

	}


$plugins->run_hooks("usercp_drafts_end");



$plugins->run_hooks("usercp_drafts_end");


Zeile 3084Zeile 3343
		elseif($val == "thread")
{
$tidin[] = "'".(int)$id."'";

		elseif($val == "thread")
{
$tidin[] = "'".(int)$id."'";

		}

		}

	}
if($tidin)
{

	}
if($tidin)
{

Zeile 3099Zeile 3358
		{
$pidin = implode(",", $pidin);
$pidinq = "pid IN ($pidin)";

		{
$pidin = implode(",", $pidin);
$pidinq = "pid IN ($pidin)";

		}

		}

		else
{
$pidinq = "1=0";

		else
{
$pidinq = "1=0";

Zeile 3114Zeile 3373
{
$plugins->run_hooks("usercp_usergroups_start");
$ingroups = ",".$mybb->user['usergroup'].",".$mybb->user['additionalgroups'].",".$mybb->user['displaygroup'].",";

{
$plugins->run_hooks("usercp_usergroups_start");
$ingroups = ",".$mybb->user['usergroup'].",".$mybb->user['additionalgroups'].",".$mybb->user['displaygroup'].",";





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

// Changing our display group

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

// Changing our display group

Zeile 3205Zeile 3464

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


$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'])
{
error($lang->already_sent_join_request);
}

		if($joinrequest['rid'])
{
error($lang->already_sent_join_request);
}

 


		if($mybb->get_input('do') == "joingroup" && $usergroup['type'] == 4)
{

		if($mybb->get_input('do') == "joingroup" && $usergroup['type'] == 4)
{

 
			$reasonlength = my_strlen($mybb->get_input('reason'));

if($reasonlength > 250) // Reason field is varchar(250) in database
{
error($lang->sprintf($lang->joinreason_too_long, ($reasonlength - 250)));
}


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

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

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

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





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


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


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

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

			{

			{

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

$subject = $lang->sprintf($lang->emailsubject_newjoinrequest, $mybb->settings['bbname']);
$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);




				foreach($groupleaders[$usergroup['gid']] as $leader)
{
// Load language
$lang->set_language($leader['language']);
$lang->load("messages");

$subject = $lang->sprintf($lang->emailsubject_newjoinrequest, $mybb->settings['bbname']);
$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);

			$plugins->run_hooks("usercp_usergroups_join_group_request");
redirect("usercp.php?action=usergroups", $lang->group_join_requestsent);

			exit;
}

			exit;
}

		elseif($usergroup['type'] == 4)
{
$joingroup = $mybb->get_input('joingroup', MyBB::INPUT_INT);

		elseif($usergroup['type'] == 4)
{
$joingroup = $mybb->get_input('joingroup', MyBB::INPUT_INT);

Zeile 3251Zeile 3522
		{
join_usergroup($mybb->user['uid'], $mybb->get_input('joingroup', MyBB::INPUT_INT));
$plugins->run_hooks("usercp_usergroups_join_group");

		{
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);
}

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

	}

// Accepting invitation

	}

// Accepting invitation

Zeile 3266Zeile 3537
		if(my_strpos($ingroups, ",".$mybb->get_input('acceptinvite', MyBB::INPUT_INT).",") !== false)
{
error($lang->already_accepted_invite);

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

		}

		}


$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);


$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);

Zeile 3296Zeile 3567
				FROM ".TABLE_PREFIX."groupleaders l
LEFT JOIN ".TABLE_PREFIX."usergroups g ON(g.gid=l.gid)
LEFT JOIN ".TABLE_PREFIX."users u ON(((','|| u.additionalgroups|| ',' LIKE '%,'|| g.gid|| ',%') OR u.usergroup = g.gid))

				FROM ".TABLE_PREFIX."groupleaders l
LEFT JOIN ".TABLE_PREFIX."usergroups g ON(g.gid=l.gid)
LEFT JOIN ".TABLE_PREFIX."users u ON(((','|| u.additionalgroups|| ',' LIKE '%,'|| 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 g.gid, g.title, g.type, l.canmanagerequests, l.canmanagemembers, l.caninvitemembers

				LEFT JOIN ".TABLE_PREFIX."joinrequests j ON(j.gid=g.gid AND j.uid != 0)
WHERE l.uid='".$mybb->user['uid']."'
GROUP BY g.gid, g.title, g.type, l.canmanagerequests, l.canmanagemembers, l.caninvitemembers

			");
break;
default:

			");
break;
default:

Zeile 3309Zeile 3580
				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

			");
}

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

			");
}

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

	{

	{

		$memberlistlink = $moderaterequestslink = '';
eval("\$memberlistlink = \"".$templates->get("usercp_usergroups_leader_usergroup_memberlist")."\";");
$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);

		$memberlistlink = $moderaterequestslink = '';
eval("\$memberlistlink = \"".$templates->get("usercp_usergroups_leader_usergroup_memberlist")."\";");
$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);

Zeile 3329Zeile 3600
		$groupleader[$usergroup['gid']] = 1;
$trow = alt_trow();
eval("\$groupsledlist .= \"".$templates->get("usercp_usergroups_leader_usergroup")."\";");

		$groupleader[$usergroup['gid']] = 1;
$trow = alt_trow();
eval("\$groupsledlist .= \"".$templates->get("usercp_usergroups_leader_usergroup")."\";");

	}

	}

	$leadinggroups = '';
if($groupsledlist)
{

	$leadinggroups = '';
if($groupsledlist)
{

Zeile 3359Zeile 3630

eval("\$memberoflist = \"".$templates->get("usercp_usergroups_memberof_usergroup")."\";");
$showmemberof = false;


eval("\$memberoflist = \"".$templates->get("usercp_usergroups_memberof_usergroup")."\";");
$showmemberof = false;

	if($mybb->user['additionalgroups'])

	if($mybb->user['additionalgroups'])

	{
$query = $db->simple_select("usergroups", "*", "gid IN (".$mybb->user['additionalgroups'].") AND gid !='".$mybb->user['usergroup']."'", array('order_by' => 'title'));
while($usergroup = $db->fetch_array($query))

	{
$query = $db->simple_select("usergroups", "*", "gid IN (".$mybb->user['additionalgroups'].") AND gid !='".$mybb->user['usergroup']."'", array('order_by' => 'title'));
while($usergroup = $db->fetch_array($query))

Zeile 3373Zeile 3644
			elseif($usergroup['type'] != 4 && $usergroup['type'] != 3 && $usergroup['type'] != 5)
{
eval("\$leavelink = \"".$templates->get("usercp_usergroups_memberof_usergroup_leaveother")."\";");

			elseif($usergroup['type'] != 4 && $usergroup['type'] != 3 && $usergroup['type'] != 5)
{
eval("\$leavelink = \"".$templates->get("usercp_usergroups_memberof_usergroup_leaveother")."\";");

			}

			}

			else
{
eval("\$leavelink = \"".$templates->get("usercp_usergroups_memberof_usergroup_leave")."\";");

			else
{
eval("\$leavelink = \"".$templates->get("usercp_usergroups_memberof_usergroup_leave")."\";");

Zeile 3395Zeile 3666
			elseif($usergroup['candisplaygroup'] == 1)
{
eval("\$displaycode = \"".$templates->get("usercp_usergroups_memberof_usergroup_setdisplay")."\";");

			elseif($usergroup['candisplaygroup'] == 1)
{
eval("\$displaycode = \"".$templates->get("usercp_usergroups_memberof_usergroup_setdisplay")."\";");

			}

			}

			else
{
$displaycode = '';
}
eval("\$memberoflist .= \"".$templates->get("usercp_usergroups_memberof_usergroup")."\";");
}

			else
{
$displaycode = '';
}
eval("\$memberoflist .= \"".$templates->get("usercp_usergroups_memberof_usergroup")."\";");
}

	}

	}

	eval("\$membergroups = \"".$templates->get("usercp_usergroups_memberof")."\";");

// List of groups this user has applied for but has not been accepted in to

	eval("\$membergroups = \"".$templates->get("usercp_usergroups_memberof")."\";");

// List of groups this user has applied for but has not been accepted in to

Zeile 3417Zeile 3688
	if($mybb->user['additionalgroups'])
{
$existinggroups .= ",".$mybb->user['additionalgroups'];

	if($mybb->user['additionalgroups'])
{
$existinggroups .= ",".$mybb->user['additionalgroups'];

	}


	}


	$joinablegroups = $joinablegrouplist = '';
$query = $db->simple_select("usergroups", "*", "(type='3' OR type='4' OR type='5') AND gid NOT IN ($existinggroups)", array('order_by' => 'title'));
while($usergroup = $db->fetch_array($query))

	$joinablegroups = $joinablegrouplist = '';
$query = $db->simple_select("usergroups", "*", "(type='3' OR type='4' OR type='5') AND gid NOT IN ($existinggroups)", array('order_by' => 'title'));
while($usergroup = $db->fetch_array($query))

Zeile 3441Zeile 3712
		elseif($usergroup['type'] == 5)
{
$conditions = $lang->usergroup_joins_invite;

		elseif($usergroup['type'] == 5)
{
$conditions = $lang->usergroup_joins_invite;

		}

		}

		else
{
$conditions = $lang->usergroup_joins_anyone;
}

if(isset($appliedjoin[$usergroup['gid']]) && $usergroup['type'] != 5)

		else
{
$conditions = $lang->usergroup_joins_anyone;
}

if(isset($appliedjoin[$usergroup['gid']]) && $usergroup['type'] != 5)

		{

		{

			$applydate = my_date('relative', $appliedjoin[$usergroup['gid']]);
$joinlink = $lang->sprintf($lang->join_group_applied, $applydate);
}
elseif(isset($appliedjoin[$usergroup['gid']]) && $usergroup['type'] == 5)
{
$joinlink = $lang->sprintf($lang->pending_invitation, $usergroup['gid'], $mybb->post_code);

			$applydate = my_date('relative', $appliedjoin[$usergroup['gid']]);
$joinlink = $lang->sprintf($lang->join_group_applied, $applydate);
}
elseif(isset($appliedjoin[$usergroup['gid']]) && $usergroup['type'] == 5)
{
$joinlink = $lang->sprintf($lang->pending_invitation, $usergroup['gid'], $mybb->post_code);

		}

		}

		elseif($usergroup['type'] == 5)
{
$joinlink = "--";

		elseif($usergroup['type'] == 5)
{
$joinlink = "--";

Zeile 3472Zeile 3743
			$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 = $lang->usergroup_leaders." ".$usergroupleaders;

				$usergroupleaders .= $comma.build_profile_link($leader['username'], $leader['uid']);
$comma = $lang->comma;
}
$usergroupleaders = $lang->usergroup_leaders." ".$usergroupleaders;

		}


		}


		if(my_strpos($usergroupleaders, $mybb->user['username']) === false)
{
// User is already a leader of the group, so don't show as a "Join Group"

		if(my_strpos($usergroupleaders, $mybb->user['username']) === false)
{
// User is already a leader of the group, so don't show as a "Join Group"

Zeile 3486Zeile 3757
		}
}
if($joinablegrouplist)

		}
}
if($joinablegrouplist)

	{

	{

		eval("\$joinablegroups = \"".$templates->get("usercp_usergroups_joinable")."\";");
}


		eval("\$joinablegroups = \"".$templates->get("usercp_usergroups_joinable")."\";");
}


Zeile 3504Zeile 3775
	if($mybb->settings['enableattachments'] == 0)
{
error($lang->attachments_disabled);

	if($mybb->settings['enableattachments'] == 0)
{
error($lang->attachments_disabled);

 
	}

// Get unviewable forums
$f_perm_sql = '';
$unviewable_forums = get_unviewable_forums(true);
$inactiveforums = get_inactive_forums();
if($unviewable_forums)
{
$f_perm_sql = " AND t.fid NOT IN ($unviewable_forums)";
}
if($inactiveforums)
{
$f_perm_sql .= " AND t.fid NOT IN ($inactiveforums)";

	}

$attachments = '';

	}

$attachments = '';

 

$query = $db->simple_select("attachments", "SUM(filesize) AS ausage, COUNT(aid) AS acount", "uid='".$mybb->user['uid']."'");
$usage = $db->fetch_array($query);
$totalattachments = $usage['acount'];


// Pagination
if(!$mybb->settings['threadsperpage'] || (int)$mybb->settings['threadsperpage'] < 1)


// Pagination
if(!$mybb->settings['threadsperpage'] || (int)$mybb->settings['threadsperpage'] < 1)

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

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

 
		$pages = ceil($totalattachments / $perpage);
if($page > $pages)
{
$start = 0;
$page = 1;
}

	}
else
{

	}
else
{

Zeile 3535Zeile 3829
		FROM ".TABLE_PREFIX."attachments a
LEFT JOIN ".TABLE_PREFIX."posts p ON (a.pid=p.pid)
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)

		FROM ".TABLE_PREFIX."attachments a
LEFT JOIN ".TABLE_PREFIX."posts p ON (a.pid=p.pid)
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)

		WHERE a.uid='".$mybb->user['uid']."'

		WHERE a.uid='".$mybb->user['uid']."' {$f_perm_sql}

		ORDER BY p.dateline DESC LIMIT {$start}, {$perpage}

		ORDER BY p.dateline DESC LIMIT {$start}, {$perpage}

	");


	");


	$bandwidth = $totaldownloads = 0;
while($attachment = $db->fetch_array($query))
{

	$bandwidth = $totaldownloads = 0;
while($attachment = $db->fetch_array($query))
{

Zeile 3558Zeile 3852
			$altbg = alt_trow();

eval("\$attachments .= \"".$templates->get("usercp_attachments_attachment")."\";");

			$altbg = alt_trow();

eval("\$attachments .= \"".$templates->get("usercp_attachments_attachment")."\";");





			// Add to bandwidth total
$bandwidth += ($attachment['filesize'] * $attachment['downloads']);
$totaldownloads += $attachment['downloads'];

			// Add to bandwidth total
$bandwidth += ($attachment['filesize'] * $attachment['downloads']);
$totaldownloads += $attachment['downloads'];

Zeile 3570Zeile 3864
		}
}


		}
}


	$query = $db->simple_select("attachments", "SUM(filesize) AS ausage, COUNT(aid) AS acount", "uid='".$mybb->user['uid']."'");
$usage = $db->fetch_array($query);

 
	$totalusage = $usage['ausage'];

	$totalusage = $usage['ausage'];

	$totalattachments = $usage['acount'];
$friendlyusage = get_friendly_size($totalusage);

	$friendlyusage = get_friendly_size((int)$totalusage);


	if($mybb->usergroup['attachquota'])

	if($mybb->usergroup['attachquota'])

	{
$percent = round(($totalusage/($mybb->usergroup['attachquota']*1024))*100)."%";


	{
$percent = round(($totalusage/($mybb->usergroup['attachquota']*1024))*100);
$friendlyusage .= $lang->sprintf($lang->attachments_usage_percent, $percent);

		$attachquota = get_friendly_size($mybb->usergroup['attachquota']*1024);

		$attachquota = get_friendly_size($mybb->usergroup['attachquota']*1024);

		$usagenote = $lang->sprintf($lang->attachments_usage_quota, $friendlyusage, $attachquota, $percent, $totalattachments);
}

		$usagenote = $lang->sprintf($lang->attachments_usage_quota, $friendlyusage, $attachquota, $totalattachments);
}

	else
{

	else
{

		$percent = $lang->unlimited;

 
		$attachquota = $lang->unlimited;
$usagenote = $lang->sprintf($lang->attachments_usage, $friendlyusage, $totalattachments);

		$attachquota = $lang->unlimited;
$usagenote = $lang->sprintf($lang->attachments_usage, $friendlyusage, $totalattachments);

	}

	}


$multipage = multipage($totalattachments, $perpage, $page, "usercp.php?action=attachments");
$bandwidth = get_friendly_size($bandwidth);


$multipage = multipage($totalattachments, $perpage, $page, "usercp.php?action=attachments");
$bandwidth = get_friendly_size($bandwidth);

Zeile 3601Zeile 3892

eval("\$manageattachments = \"".$templates->get("usercp_attachments")."\";");
output_page($manageattachments);


eval("\$manageattachments = \"".$templates->get("usercp_attachments")."\";");
output_page($manageattachments);

}


}


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

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





	$plugins->run_hooks("usercp_do_attachments_start");
require_once MYBB_ROOT."inc/functions_upload.php";
if(!isset($mybb->input['attachments']) || !is_array($mybb->input['attachments']))

	$plugins->run_hooks("usercp_do_attachments_start");
require_once MYBB_ROOT."inc/functions_upload.php";
if(!isset($mybb->input['attachments']) || !is_array($mybb->input['attachments']))

	{

	{

		error($lang->no_attachments_selected);
}

		error($lang->no_attachments_selected);
}

 

// Get unviewable forums
$f_perm_sql = '';
$unviewable_forums = get_unviewable_forums(true);
$inactiveforums = get_inactive_forums();
if($unviewable_forums)
{
$f_perm_sql = " AND p.fid NOT IN ($unviewable_forums)";
}
if($inactiveforums)
{
$f_perm_sql .= " AND p.fid NOT IN ($inactiveforums)";
}


	$aids = implode(',', array_map('intval', $mybb->input['attachments']));

	$aids = implode(',', array_map('intval', $mybb->input['attachments']));

	$query = $db->simple_select("attachments", "*", "aid IN ($aids) AND uid='".$mybb->user['uid']."'");









$query = $db->query("
SELECT a.*, p.fid
FROM ".TABLE_PREFIX."attachments a
LEFT JOIN ".TABLE_PREFIX."posts p ON (a.pid=p.pid)
WHERE aid IN ({$aids}) AND a.uid={$mybb->user['uid']} {$f_perm_sql}
");


	while($attachment = $db->fetch_array($query))
{
remove_attachment($attachment['pid'], '', $attachment['aid']);

	while($attachment = $db->fetch_array($query))
{
remove_attachment($attachment['pid'], '', $attachment['aid']);

Zeile 3675Zeile 3987
	$regdate = my_date('relative', $mybb->user['regdate']);

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

	$regdate = my_date('relative', $mybb->user['regdate']);

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

 
	$avatar_username = htmlspecialchars_uni($mybb->user['username']);

	eval("\$avatar = \"".$templates->get("usercp_currentavatar")."\";");

$usergroup = htmlspecialchars_uni($groupscache[$mybb->user['usergroup']]['title']);

	eval("\$avatar = \"".$templates->get("usercp_currentavatar")."\";");

$usergroup = htmlspecialchars_uni($groupscache[$mybb->user['usergroup']]['title']);

Zeile 3738Zeile 4051
					$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 3770Zeile 4084
				}
else
{

				}
else
{

					$expires = my_date('relative', $warning['expires']);

					$expires = nice_time($warning['expires']-TIME_NOW);

				}

$alt_bg = alt_trow();

				}

$alt_bg = alt_trow();

Zeile 3779Zeile 4093
			if($warnings)
{
eval("\$latest_warnings = \"".$templates->get("usercp_warnings")."\";");

			if($warnings)
{
eval("\$latest_warnings = \"".$templates->get("usercp_warnings")."\";");

			}
}
}

			}
}
}


// Format username


// 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
$mybb->user['posts'] = my_number_format($mybb->user['postnum']);

	$username = build_profile_link($username, $mybb->user['uid']);

// Format post numbers
$mybb->user['posts'] = my_number_format($mybb->user['postnum']);





	// Build referral link
if($mybb->settings['usereferrals'] == 1)
{
$referral_link = $lang->sprintf($lang->referral_link, $settings['bburl'], $mybb->user['uid']);

	// Build referral link
if($mybb->settings['usereferrals'] == 1)
{
$referral_link = $lang->sprintf($lang->referral_link, $settings['bburl'], $mybb->user['uid']);

 

$referral_count = (int) $mybb->user['referrals'];
if($referral_count > 0)
{
$uid = (int) $mybb->user['uid'];
eval("\$mybb->user['referrals'] = \"".$templates->get('member_referrals_link')."\";");
}


		eval("\$referral_info = \"".$templates->get("usercp_referrals")."\";");
}


		eval("\$referral_info = \"".$templates->get("usercp_referrals")."\";");
}


Zeile 3871Zeile 4193

foreach($subscriptions as $thread)
{


foreach($subscriptions as $thread)
{

 
					$plugins->run_hooks("usercp_thread_subscriptions_thread");

					$folder = '';
$folder_label = '';
$gotounread = '';

					$folder = '';
$folder_label = '';
$gotounread = '';

Zeile 3901Zeile 4224
							$icon['path'] = htmlspecialchars_uni($icon['path']);
$icon['name'] = htmlspecialchars_uni($icon['name']);
eval("\$icon = \"".$templates->get("usercp_subscriptions_thread_icon")."\";");

							$icon['path'] = htmlspecialchars_uni($icon['path']);
$icon['name'] = htmlspecialchars_uni($icon['name']);
eval("\$icon = \"".$templates->get("usercp_subscriptions_thread_icon")."\";");

						}

						}

						else
{
$icon = "&nbsp;";

						else
{
$icon = "&nbsp;";

Zeile 3931Zeile 4254
						$folder .= "folder";

if($thread['visible'] == 0)

						$folder .= "folder";

if($thread['visible'] == 0)

						{

						{

							$bgcolor = "trow_shaded";

							$bgcolor = "trow_shaded";

						}

						}


$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 3947Zeile 4277
						{
$lastposterlink = build_profile_link($lastposter, $lastposteruid);
}

						{
$lastposterlink = build_profile_link($lastposter, $lastposteruid);
}





						$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 4288
				}
eval("\$latest_subscribed = \"".$templates->get("usercp_latest_subscribed")."\";");
}

				}
eval("\$latest_subscribed = \"".$templates->get("usercp_latest_subscribed")."\";");
}

		}
}

// User's Latest Threads


		}
}

// User's Latest Threads


	// Get unviewable forums
$f_perm_sql = '';
$unviewable_forums = get_unviewable_forums();

	// Get unviewable forums
$f_perm_sql = '';
$unviewable_forums = get_unviewable_forums();

Zeile 3969Zeile 4300
	if($unviewable_forums)
{
$f_perm_sql = " AND t.fid NOT IN ($unviewable_forums)";

	if($unviewable_forums)
{
$f_perm_sql = " AND t.fid NOT IN ($unviewable_forums)";

	}

	}

	if($inactiveforums)
{
$f_perm_sql .= " AND t.fid NOT IN ($inactiveforums)";

	if($inactiveforums)
{
$f_perm_sql .= " AND t.fid NOT IN ($inactiveforums)";

Zeile 4012Zeile 4343
	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 4021Zeile 4353
			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 4053Zeile 4386
		$latest_threads_threads = '';
foreach($threadcache as $thread)
{

		$latest_threads_threads = '';
foreach($threadcache as $thread)
{

 
			$plugins->run_hooks("usercp_latest_threads_thread"); 

			if($thread['tid'])
{
$bgcolor = alt_trow();

			if($thread['tid'])
{
$bgcolor = alt_trow();

Zeile 4169Zeile 4503

if($thread['closed'] == 1)
{


if($thread['closed'] == 1)
{

					$folder .= "lock";
$folder_label .= $lang->icon_lock;

					$folder .= "close";
$folder_label .= $lang->icon_close;

				}

$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 4190Zeile 4524

$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")."\";");