Vergleich usercp.php - 1.6.9 - 1.6.14

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 12Zeile 12
define("IN_MYBB", 1);
define('THIS_SCRIPT', 'usercp.php');


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


$templatelist = "usercp,usercp_home,usercp_nav,usercp_profile,error_nopermission,buddy_online,buddy_offline,usercp_changename,usercp_nav_changename";

$templatelist = "usercp,usercp_nav,usercp_profile,usercp_changename,usercp_email,usercp_password,usercp_subscriptions_thread,forumbit_depth2_forum_lastpost,usercp_forumsubscriptions_forum";

$templatelist .= ",usercp_usergroups_memberof_usergroup,usercp_usergroups_memberof,usercp_usergroups_joinable_usergroup,usercp_usergroups_joinable,usercp_usergroups";
$templatelist .= ",usercp_nav_messenger,usercp_nav_changename,usercp_nav_profile,usercp_nav_misc,usercp_usergroups_leader_usergroup,usercp_usergroups_leader,usercp_currentavatar,usercp_reputation";

$templatelist .= ",usercp_usergroups_memberof_usergroup,usercp_usergroups_memberof,usercp_usergroups_joinable_usergroup,usercp_usergroups_joinable,usercp_usergroups";
$templatelist .= ",usercp_nav_messenger,usercp_nav_changename,usercp_nav_profile,usercp_nav_misc,usercp_usergroups_leader_usergroup,usercp_usergroups_leader,usercp_currentavatar,usercp_reputation";

$templatelist .= ",usercp_attachments_attachment,usercp_attachments,usercp_profile_away,usercp_profile_customfield,usercp_profile_profilefields,usercp_profile_customtitle,usercp_forumsubscriptions_none,usercp_forumsubscriptions,usercp_subscriptions_none,usercp_subscriptions,usercp_options_pms_from_buddys,usercp_options_tppselect,usercp_options_pppselect,usercp_options";


$templatelist .= ",usercp_attachments_attachment,usercp_attachments,usercp_profile_away,usercp_profile_customfield,usercp_profile_profilefields,usercp_profile_customtitle,usercp_forumsubscriptions_none";
$templatelist .= ",usercp_forumsubscriptions,usercp_subscriptions_none,usercp_subscriptions,usercp_options_pms_from_buddys,usercp_options_tppselect,usercp_options_pppselect,usercp_options";

$templatelist .= ",usercp_nav_editsignature,usercp_referrals,usercp_notepad,usercp_latest_threads_threads,forumdisplay_thread_gotounread,usercp_latest_threads,usercp_subscriptions_remove";

$templatelist .= ",usercp_nav_editsignature,usercp_referrals,usercp_notepad,usercp_latest_threads_threads,forumdisplay_thread_gotounread,usercp_latest_threads,usercp_subscriptions_remove";

 
$templatelist .= ",usercp_editsig_suspended,usercp_editsig,usercp_avatar_gallery_avatar,usercp_avatar_gallery_blankblock,usercp_avatar_gallery_noavatars,usercp_avatar_gallery,usercp_avatar_current";
$templatelist .= ",usercp_avatar,usercp_editlists_userusercp_editlists,usercp_drafts_draft,usercp_drafts_none,usercp_drafts_submit,usercp_drafts,usercp_usergroups_joingroup,usercp_attachments_none";
$templatelist .= ",usercp_warnings_warning,usercp_warnings,usercp_latest_subscribed_threads,usercp_latest_subscribed,usercp_nav_messenger_tracking,multipage_prevpage,multipage_start,multipage_end";
$templatelist .= ",multipage_nextpage,multipage,multipage_page_current,codebuttons,smilieinsert_getmore,smilieinsert";


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

$errors = '';

}

$errors = '';

 

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

$collapse_options = array('usercppms', 'usercpprofile', 'usercpmisc');
foreach($collapse_options as $option)
{
if(!isset($collapsedimg[$option]))
{
$collapsedimg[$option] = '';
}
if(!isset($collapsed[$option.'_e']))
{
$collapsed[$option.'_e'] = '';
}
}


usercp_menu();



usercp_menu();


Zeile 59Zeile 82
		(($mybb->settings['sigimgcode'] == 1 || $mybb->settings['sigsmilies'] == 1) &&
substr_count($parsed_sig, "<img") > $mybb->settings['maxsigimages'])
)

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

		if($mybb->settings['sigimgcode'] == 1)
{
$imgsallowed = $mybb->settings['maxsigimages'];

Zeile 79Zeile 102
			$parsed_sig = $parser->text_parse_message($mybb->input['signature']);
}
else

			$parsed_sig = $parser->text_parse_message($mybb->input['signature']);
}
else

		{

		{

			$parsed_sig = $mybb->input['signature'];
}
$parsed_sig = preg_replace("#\s#", "", $parsed_sig);

			$parsed_sig = $mybb->input['signature'];
}
$parsed_sig = preg_replace("#\s#", "", $parsed_sig);

Zeile 90Zeile 113
			if($sig_length - $mybb->settings['siglength'] > 1)
{
$lang->sig_too_long .= $lang->sprintf($lang->sig_remove_chars_plural, $sig_length-$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
{

			}
else
{

				$lang->sig_too_long .= $lang->sig_remove_chars_singular;
}
$error = inline_error($lang->sig_too_long);

				$lang->sig_too_long .= $lang->sig_remove_chars_singular;
}
$error = inline_error($lang->sig_too_long);

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

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

			



			$return_month = intval(substr($mybb->input['awaymonth'], 0, 2));
$return_day = intval(substr($mybb->input['awayday'], 0, 2));
$return_year = min(intval($mybb->input['awayyear']), 9999);

			$return_month = intval(substr($mybb->input['awaymonth'], 0, 2));
$return_day = intval(substr($mybb->input['awayday'], 0, 2));
$return_year = min(intval($mybb->input['awayyear']), 9999);

Zeile 195Zeile 218
			{
error($lang->error_usercp_return_date_past);
}

			{
error($lang->error_usercp_return_date_past);
}

			



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

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

Zeile 231Zeile 254

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


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

 
		"postnum" => $mybb->user['postnum'],

		"website" => $mybb->input['website'],
"icq" => intval($mybb->input['icq']),
"aim" => $mybb->input['aim'],

		"website" => $mybb->input['website'],
"icq" => intval($mybb->input['icq']),
"aim" => $mybb->input['aim'],

Zeile 258Zeile 282
	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))
{
$mybb->input['birthdayprivacy'] = 'none';
}


		$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", $lang->redirect_profileupdated);
}

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

Zeile 294Zeile 325
		if($bday[0] == $i)
{
$bdaydaysel .= "<option value=\"$i\" selected=\"selected\">$i</option>\n";

		if($bday[0] == $i)
{
$bdaydaysel .= "<option value=\"$i\" selected=\"selected\">$i</option>\n";

		}

		}

		else
{
$bdaydaysel .= "<option value=\"$i\">$i</option>\n";

		else
{
$bdaydaysel .= "<option value=\"$i\">$i</option>\n";

Zeile 306Zeile 337
	if($user['birthdayprivacy'] == 'all' || !$user['birthdayprivacy'])
{
$bdayprivacysel .= "<option value=\"all\" selected=\"selected\">{$lang->birthdayprivacyall}</option>\n";

	if($user['birthdayprivacy'] == 'all' || !$user['birthdayprivacy'])
{
$bdayprivacysel .= "<option value=\"all\" selected=\"selected\">{$lang->birthdayprivacyall}</option>\n";

		$bdayprivacysel .= "<option value=\"none\">{$lang->birthdayprivacynone}</option>\n";

		$bdayprivacysel .= "<option value=\"none\">{$lang->birthdayprivacynone}</option>\n";

		$bdayprivacysel .= "<option value=\"age\">{$lang->birthdayprivacyage}</option>";
}
else if($user['birthdayprivacy'] == 'none')

		$bdayprivacysel .= "<option value=\"age\">{$lang->birthdayprivacyage}</option>";
}
else if($user['birthdayprivacy'] == 'none')

Zeile 403Zeile 434
	while($profilefield = $db->fetch_array($query))
{
// Does this field have a minimum post count?

	while($profilefield = $db->fetch_array($query))
{
// Does this field have a minimum post count?

		if($profilefield['postnum'] && $profilefield['postnum'] > $user['postnum'])

		if($profilefield['postnum'] && $profilefield['postnum'] > $mybb->user['postnum'])

		{
continue;
}

		{
continue;
}

Zeile 465Zeile 496
			}
}
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 485Zeile 516
					$profilefield['length'] = 1;
}
$code = "<select name=\"profile_fields[$field]\" size=\"{$profilefield['length']}\">$select</select>";

					$profilefield['length'] = 1;
}
$code = "<select name=\"profile_fields[$field]\" size=\"{$profilefield['length']}\">$select</select>";

			}
}

			}
}

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

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

				{

				{

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

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

Zeile 506Zeile 537
		elseif($type == "checkbox")
{
if($errors)

		elseif($type == "checkbox")
{
if($errors)

			{

			{

				$useropts = $userfield;
}
else

				$useropts = $userfield;
}
else

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

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

				}
}

				}
}

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

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

Zeile 532Zeile 563
					}
$code .= "<input type=\"checkbox\" class=\"checkbox\" name=\"profile_fields[$field][]\" value=\"$val\"$checked /> <span class=\"smalltext\">$val</span><br />";
}

					}
$code .= "<input type=\"checkbox\" class=\"checkbox\" name=\"profile_fields[$field][]\" value=\"$val\"$checked /> <span class=\"smalltext\">$val</span><br />";
}

			}
}

			}
}

		elseif($type == "textarea")
{
$value = htmlspecialchars_uni($userfield);
$code = "<textarea name=\"profile_fields[$field]\" rows=\"6\" cols=\"30\" style=\"width: 95%\">$value</textarea>";

		elseif($type == "textarea")
{
$value = htmlspecialchars_uni($userfield);
$code = "<textarea name=\"profile_fields[$field]\" rows=\"6\" cols=\"30\" style=\"width: 95%\">$value</textarea>";

		}
else

		}
else

		{
$value = htmlspecialchars_uni($userfield);
$maxlength = "";

		{
$value = htmlspecialchars_uni($userfield);
$maxlength = "";

Zeile 572Zeile 603
	}

if($mybb->usergroup['cancustomtitle'] == 1)

	}

if($mybb->usergroup['cancustomtitle'] == 1)

	{

	{

		if($mybb->usergroup['usertitle'] == "")
{

		if($mybb->usergroup['usertitle'] == "")
{

			$query = $db->simple_select("usertitles", "*", "posts <='".$mybb->user['postnum']."'", array('order_by' => 'posts', 'order_dir' => 'DESC', 'limit' => 1));
$utitle = $db->fetch_array($query);
$defaulttitle = $utitle['title'];
}
else
{
$defaulttitle = $mybb->usergroup['usertitle'];









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

foreach($usertitles as $title)
{
if($title['posts'] <= $mybb->user['postnum'])
{
$defaulttitle = $title['title'];
break;
}
}
}
else
{
$defaulttitle = $mybb->usergroup['usertitle'];

		}

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

		}

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

Zeile 602Zeile 641
	{
$customtitle = "";
}

	{
$customtitle = "";
}

	



	$plugins->run_hooks("usercp_profile_end");

	$plugins->run_hooks("usercp_profile_end");

	



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

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

Zeile 683Zeile 722
	$plugins->run_hooks("usercp_options_start");

if($errors != '')

	$plugins->run_hooks("usercp_options_start");

if($errors != '')

	{

	{

		$user = $mybb->input;
}
else

		$user = $mybb->input;
}
else

Zeile 779Zeile 818
	{
$receivepmscheck = "";
}

	{
$receivepmscheck = "";
}

	



	if($user['receivefrombuddy'] == 1)

	if($user['receivefrombuddy'] == 1)

	{

	{

		$receivefrombuddycheck = "checked=\"checked\"";
}
else

		$receivefrombuddycheck = "checked=\"checked\"";
}
else

Zeile 790Zeile 829
	}

if($user['pmnotice'] == 1 || $user['pmnotice'] == 2)

	}

if($user['pmnotice'] == 1 || $user['pmnotice'] == 2)

	{

	{

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

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

	}

	}


if($user['dstcorrection'] == 2)
{


if($user['dstcorrection'] == 2)
{

Zeile 818Zeile 857
	else
{
$showcodebuttonscheck = "";

	else
{
$showcodebuttonscheck = "";

	}


	}


	if($user['showredirect'] != 0)

	if($user['showredirect'] != 0)

	{

	{

		$showredirectcheck = "checked=\"checked\"";

		$showredirectcheck = "checked=\"checked\"";

	}
else
{

	}
else
{

		$showredirectcheck = "";
}


		$showredirectcheck = "";
}


Zeile 838Zeile 877
		$pmnotifycheck = '';
}


		$pmnotifycheck = '';
}


	



	if($user['threadmode'] != "threaded" && $user['threadmode'] != "linear")
{
$user['threadmode'] = ''; // Leave blank to show default

	if($user['threadmode'] != "threaded" && $user['threadmode'] != "linear")
{
$user['threadmode'] = ''; // Leave blank to show default

Zeile 881Zeile 920
	}

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

	}

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

	



	if($mybb->settings['allowbuddyonly'] == 1)

	if($mybb->settings['allowbuddyonly'] == 1)

	{

	{

		eval("\$pms_from_buddys = \"".$templates->get("usercp_options_pms_from_buddys")."\";");
}


		eval("\$pms_from_buddys = \"".$templates->get("usercp_options_pms_from_buddys")."\";");
}


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

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

			{

			{

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

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

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

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

				}
$tppoptions .= "<option value=\"$val\" $selected>".$lang->sprintf($lang->tpp_option, $val)."</option>\n";
}
}
eval("\$tppselect = \"".$templates->get("usercp_options_tppselect")."\";");

				}
$tppoptions .= "<option value=\"$val\" $selected>".$lang->sprintf($lang->tpp_option, $val)."</option>\n";
}
}
eval("\$tppselect = \"".$templates->get("usercp_options_tppselect")."\";");

	}

	}

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

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

Zeile 928Zeile 967
		}
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 943Zeile 982
	$errors = array();

$plugins->run_hooks("usercp_do_email_start");

	$errors = array();

$plugins->run_hooks("usercp_do_email_start");

	if(validate_password_from_uid($mybb->user['uid'], $mybb->input['password']) == false)
{
$errors[] = $lang->error_invalidpassword;
}
else
{
// Set up user handler.
require_once "inc/datahandlers/user.php";
$userhandler = new UserDataHandler("update");


	if(validate_password_from_uid($mybb->user['uid'], $mybb->input['password']) == false)
{
$errors[] = $lang->error_invalidpassword;
}
else
{
// Set up user handler.
require_once "inc/datahandlers/user.php";
$userhandler = new UserDataHandler("update");


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

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

Zeile 1002Zeile 1041
	if(count($errors) > 0)
{
$mybb->input['action'] = "email";

	if(count($errors) > 0)
{
$mybb->input['action'] = "email";

			$errors = inline_error($errors);
}
}


			$errors = inline_error($errors);
}
}


if($mybb->input['action'] == "email")
{
// Coming back to this page after one or more errors were experienced, show fields the user previously entered (with the exception of the password)

if($mybb->input['action'] == "email")
{
// Coming back to this page after one or more errors were experienced, show fields the user previously entered (with the exception of the password)

Zeile 1018Zeile 1057
	{
$email = $email2 = '';
}

	{
$email = $email2 = '';
}





	$plugins->run_hooks("usercp_email");

	$plugins->run_hooks("usercp_email");

	



	eval("\$changemail = \"".$templates->get("usercp_email")."\";");
output_page($changemail);
}

	eval("\$changemail = \"".$templates->get("usercp_email")."\";");
output_page($changemail);
}

Zeile 1073Zeile 1112
if($mybb->input['action'] == "password")
{
$plugins->run_hooks("usercp_password");

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

	



	eval("\$editpassword = \"".$templates->get("usercp_password")."\";");
output_page($editpassword);
}

	eval("\$editpassword = \"".$templates->get("usercp_password")."\";");
output_page($editpassword);
}

Zeile 1132Zeile 1171
	{
error_no_permission();
}

	{
error_no_permission();
}

	



	$plugins->run_hooks("usercp_changename_end");

	$plugins->run_hooks("usercp_changename_end");

	



	eval("\$changename = \"".$templates->get("usercp_changename")."\";");
output_page($changename);
}

	eval("\$changename = \"".$templates->get("usercp_changename")."\";");
output_page($changename);
}





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

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

Zeile 1147Zeile 1186
	$plugins->run_hooks("usercp_do_subscriptions_start");

if(!is_array($mybb->input['check']))

	$plugins->run_hooks("usercp_do_subscriptions_start");

if(!is_array($mybb->input['check']))

	{

	{

		error($lang->no_subscriptions_selected);
}


		error($lang->no_subscriptions_selected);
}


Zeile 1168Zeile 1207
			$new_notification = 0;
}
else if($mybb->input['do'] == "instant_notification")

			$new_notification = 0;
}
else if($mybb->input['do'] == "instant_notification")

		{

		{

			$new_notification = 1;
}

// Update
$update_array = array("notification" => $new_notification);
$db->update_query("threadsubscriptions", $update_array, "tid IN ($tids) AND uid='{$mybb->user['uid']}'");

			$new_notification = 1;
}

// Update
$update_array = array("notification" => $new_notification);
$db->update_query("threadsubscriptions", $update_array, "tid IN ($tids) AND uid='{$mybb->user['uid']}'");

	}

	}


// Done, redirect
redirect("usercp.php?action=subscriptions", $lang->redirect_subscriptions_updated);


// Done, redirect
redirect("usercp.php?action=subscriptions", $lang->redirect_subscriptions_updated);

Zeile 1188Zeile 1227
	// Thread visiblity
$visible = "AND t.visible != 0";
if(is_moderator() == true)

	// Thread visiblity
$visible = "AND t.visible != 0";
if(is_moderator() == true)

	{

	{

		$visible = '';
}


		$visible = '';
}


Zeile 1202Zeile 1241
	$threadcount = $db->fetch_field($query, "threads");

if(!$mybb->settings['threadsperpage'])

	$threadcount = $db->fetch_field($query, "threads");

if(!$mybb->settings['threadsperpage'])

	{

	{

		$mybb->settings['threadsperpage'] = 20;
}


		$mybb->settings['threadsperpage'] = 20;
}


Zeile 1210Zeile 1249
	$page = intval($mybb->input['page']);
if($page > 0)
{

	$page = intval($mybb->input['page']);
if($page > 0)
{

		$start = ($page-1) *$perpage;








		$start = ($page-1) * $perpage;
$pages = $threadcount / $perpage;
$pages = ceil($pages);
if($page > $pages || $page <= 0)
{
$start = 0;
$page = 1;
}

	}
else
{

	}
else
{

Zeile 1221Zeile 1267
	$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 1239Zeile 1285
		LIMIT $start, $perpage
");
while($subscription = $db->fetch_array($query))

		LIMIT $start, $perpage
");
while($subscription = $db->fetch_array($query))

	{

	{

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


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


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

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

		{
// Hmm, you don't have permission to view this thread - unsubscribe!

		{
// Hmm, you don't have permission to view this thread - unsubscribe!

			$del_subscriptions[] = $subscription['tid'];
}

			$del_subscriptions[] = $subscription['sid'];
}

		else if($subscription['tid'])
{
$subscriptions[$subscription['tid']] = $subscription;
}

		else if($subscription['tid'])
{
$subscriptions[$subscription['tid']] = $subscription;
}

	}

if(is_array($del_subscriptions))
{
$tids = implode(',', $del_subscriptions);

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

	}

if(is_array($del_subscriptions))
{
$sids = implode(',', $del_subscriptions);

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


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



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


Zeile 1273Zeile 1319
	if(is_array($subscriptions))
{
$tids = implode(",", array_keys($subscriptions));

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

		



		if($mybb->user['uid'] == 0)
{
// Build a forum cache.

		if($mybb->user['uid'] == 0)
{
// Build a forum cache.

Zeile 1283Zeile 1329
				WHERE active != 0
ORDER BY pid, disporder
");

				WHERE active != 0
ORDER BY pid, disporder
");

			



			$forumsread = my_unserialize($mybb->cookies['mybb']['forumread']);
}
else

			$forumsread = my_unserialize($mybb->cookies['mybb']['forumread']);
}
else

Zeile 1296Zeile 1342
				WHERE f.active != 0
ORDER BY pid, disporder
");

				WHERE f.active != 0
ORDER BY pid, disporder
");

		}

		}


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


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

Zeile 1308Zeile 1354
				}
}
$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;
}
}

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

Zeile 1329Zeile 1375
				$subscriptions[$readthread['tid']]['lastread'] = $readthread['dateline'];
}
}

				$subscriptions[$readthread['tid']]['lastread'] = $readthread['dateline'];
}
}

		



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

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

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

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

		{

		{

			$bgcolor = alt_trow();

			$bgcolor = alt_trow();





			$folder = '';
$prefix = '';

			$folder = '';
$prefix = '';

			



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

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

			{

			{

				$thread['threadprefix'] .= '&nbsp;';
}

				$thread['threadprefix'] .= '&nbsp;';
}

			



			// Sanitize
$thread['subject'] = $parser->parse_badwords($thread['subject']);
$thread['subject'] = htmlspecialchars_uni($thread['subject']);

			// Sanitize
$thread['subject'] = $parser->parse_badwords($thread['subject']);
$thread['subject'] = htmlspecialchars_uni($thread['subject']);





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

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

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

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

			{

			{

				$icon = $icon_cache[$thread['icon']];
$icon = "<img src=\"{$icon['path']}\" alt=\"{$icon['name']}\" />";
}

				$icon = $icon_cache[$thread['icon']];
$icon = "<img src=\"{$icon['path']}\" alt=\"{$icon['name']}\" />";
}

Zeile 1383Zeile 1429
			if($mybb->settings['threadreadcut'] > 0 && $mybb->user['uid'])
{
$forum_read = $readforums[$thread['fid']];

			if($mybb->settings['threadreadcut'] > 0 && $mybb->user['uid'])
{
$forum_read = $readforums[$thread['fid']];

			



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

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

				}
}

				}
}

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

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

Zeile 1498Zeile 1544
	{
eval("\$threads = \"".$templates->get("usercp_subscriptions_none")."\";");
}

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

	



	$plugins->run_hooks("usercp_subscriptions_end");

	$plugins->run_hooks("usercp_subscriptions_end");

	



	eval("\$subscriptions = \"".$templates->get("usercp_subscriptions")."\";");
output_page($subscriptions);
}

	eval("\$subscriptions = \"".$templates->get("usercp_subscriptions")."\";");
output_page($subscriptions);
}

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

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

	



	if($mybb->user['uid'] == 0)

	if($mybb->user['uid'] == 0)

	{
// Build a forum cache.
$query = $db->query("

	{
// Build a forum cache.
$query = $db->query("

			SELECT fid
FROM ".TABLE_PREFIX."forums
WHERE active != 0

			SELECT fid
FROM ".TABLE_PREFIX."forums
WHERE active != 0

			ORDER BY pid, disporder
");


			ORDER BY pid, disporder
");


		$forumsread = my_unserialize($mybb->cookies['mybb']['forumread']);
}
else

		$forumsread = my_unserialize($mybb->cookies['mybb']['forumread']);
}
else

Zeile 1546Zeile 1592
	}

$fpermissions = forum_permissions();

	}

$fpermissions = forum_permissions();

	require_once MYBB_ROOT."inc/functions_forumlist.php";

	require_once MYBB_ROOT."inc/functions_forumlist.php";


$query = $db->query("
SELECT fs.*, f.*, t.subject AS lastpostsubject, fr.dateline AS lastread


$query = $db->query("
SELECT fs.*, f.*, t.subject AS lastpostsubject, fr.dateline AS lastread

Zeile 1557Zeile 1603
		WHERE f.type='f' AND fs.uid='".$mybb->user['uid']."'
ORDER BY f.name ASC
");

		WHERE f.type='f' AND fs.uid='".$mybb->user['uid']."'
ORDER BY f.name ASC
");





	$forums = '';
while($forum = $db->fetch_array($query))
{
$forum_url = get_forum_link($forum['fid']);
$forumpermissions = $fpermissions[$forum['fid']];

	$forums = '';
while($forum = $db->fetch_array($query))
{
$forum_url = get_forum_link($forum['fid']);
$forumpermissions = $fpermissions[$forum['fid']];


if($forumpermissions['canview'] == 0)


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

		{
continue;
}

$lightbulb = get_forum_lightbulb(array('open' => $forum['open'], 'lastread' => $forum['lastread']), array('lastpost' => $forum['lastpost']));
$folder = $lightbulb['folder'];

		{
continue;
}

$lightbulb = get_forum_lightbulb(array('open' => $forum['open'], 'lastread' => $forum['lastread']), array('lastpost' => $forum['lastpost']));
$folder = $lightbulb['folder'];

 

if($forumpermissions['canonlyviewownthreads'] != 0)
{
$posts = '-';
$threads = '-';
}
else
{
$posts = my_number_format($forum['posts']);
$threads = my_number_format($forum['threads']);
}


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


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

			$lastpost = "<div align=\"center\">$lang->never</div>";






			$lastpost = "<div align=\"center\">{$lang->never}</div>";
}
// Hide last post
elseif($forumpermissions['canonlyviewownthreads'] != 0 && $forum['lastposteruid'] != $mybb->user['uid'])
{
$lastpost = "<div align=\"center\">{$lang->na}</div>";

		}
else
{

		}
else
{

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

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


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

 

if($mybb->settings['showdescriptions'] == 0)
{


if($mybb->settings['showdescriptions'] == 0)
{

Zeile 1616Zeile 1675
}

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

}

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

{	

{

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


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


Zeile 1707Zeile 1766
	if($mybb->user['suspendsignature'] && $mybb->user['suspendsigtime'] > TIME_NOW)
{
$plugins->run_hooks("usercp_editsig_end");

	if($mybb->user['suspendsignature'] && $mybb->user['suspendsigtime'] > TIME_NOW)
{
$plugins->run_hooks("usercp_editsig_end");

		



		// User either doesn't have permission, or has their signature suspended
eval("\$editsig = \"".$templates->get("usercp_editsig_suspended")."\";");
}

		// User either doesn't have permission, or has their signature suspended
eval("\$editsig = \"".$templates->get("usercp_editsig_suspended")."\";");
}

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

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

		}
else
{

		}
else
{

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

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

		}

		}

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

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

		{

		{

			$sightml = $lang->on;
}
else
{
$sightml = $lang->off;

			$sightml = $lang->on;
}
else
{
$sightml = $lang->off;

		}

		}

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

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

		{

		{

			$sigimgcode = $lang->off;
}
$sig = htmlspecialchars_uni($sig);

			$sigimgcode = $lang->off;
}
$sig = htmlspecialchars_uni($sig);

Zeile 1754Zeile 1813
		{
$codebuttons = build_mycode_inserter("signature");
}

		{
$codebuttons = build_mycode_inserter("signature");
}

		



		$plugins->run_hooks("usercp_editsig_end");

		$plugins->run_hooks("usercp_editsig_end");

		



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

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

	



	output_page($editsig);
}


	output_page($editsig);
}


Zeile 1789Zeile 1848
		{
$avatar_error = $lang->error_noavatar;
}

		{
$avatar_error = $lang->error_noavatar;
}

		



		$mybb->input['gallery'] = str_replace(array("./", ".."), "", $mybb->input['gallery']);
$mybb->input['avatar'] = str_replace(array("./", ".."), "", $mybb->input['avatar']);


		$mybb->input['gallery'] = str_replace(array("./", ".."), "", $mybb->input['gallery']);
$mybb->input['avatar'] = str_replace(array("./", ".."), "", $mybb->input['avatar']);


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

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

		{

		{

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

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

Zeile 1839Zeile 1898
				"avatar" => $avatar['avatar'].'?dateline='.TIME_NOW,
"avatardimensions" => $avatar_dimensions,
"avatartype" => "upload"

				"avatar" => $avatar['avatar'].'?dateline='.TIME_NOW,
"avatardimensions" => $avatar_dimensions,
"avatartype" => "upload"

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

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

		}
}
else // remote avatar
{
$mybb->input['avatarurl'] = preg_replace("#script:#i", "", $mybb->input['avatarurl']);
$ext = get_extension($mybb->input['avatarurl']);

		}
}
else // remote avatar
{
$mybb->input['avatarurl'] = preg_replace("#script:#i", "", $mybb->input['avatarurl']);
$ext = get_extension($mybb->input['avatarurl']);





		// Copy the avatar to the local server (work around remote URL access disabled for getimagesize)
$file = fetch_remote_file($mybb->input['avatarurl']);
if(!$file)
{
$avatar_error = $lang->error_invalidavatarurl;

		// Copy the avatar to the local server (work around remote URL access disabled for getimagesize)
$file = fetch_remote_file($mybb->input['avatarurl']);
if(!$file)
{
$avatar_error = $lang->error_invalidavatarurl;

		}

		}

		else
{
$tmp_name = $mybb->settings['avataruploadpath']."/remote_".md5(random_str());

		else
{
$tmp_name = $mybb->settings['avataruploadpath']."/remote_".md5(random_str());

Zeile 1871Zeile 1930
				if(!$type)
{
$avatar_error = $lang->error_invalidavatarurl;

				if(!$type)
{
$avatar_error = $lang->error_invalidavatarurl;

				}
}

				}
}

		}

if(empty($avatar_error))

		}

if(empty($avatar_error))

Zeile 1891Zeile 1950
		if(empty($avatar_error))
{
if($width > 0 && $height > 0)

		if(empty($avatar_error))
{
if($width > 0 && $height > 0)

			{

			{

				$avatar_dimensions = intval($width)."|".intval($height);
}
$updated_avatar = array(

				$avatar_dimensions = intval($width)."|".intval($height);
}
$updated_avatar = array(

Zeile 1923Zeile 1982
	$gallerylist['default'] = $lang->default_gallery;
$avatardir = @opendir($mybb->settings['avatardir']);
while($dir = @readdir($avatardir))

	$gallerylist['default'] = $lang->default_gallery;
$avatardir = @opendir($mybb->settings['avatardir']);
while($dir = @readdir($avatardir))

	{

	{

		if(is_dir($mybb->settings['avatardir']."/$dir") && substr($dir, 0, 1) != ".")
{
$gallerylist[$dir] = str_replace("_", " ", $dir);

		if(is_dir($mybb->settings['avatardir']."/$dir") && substr($dir, 0, 1) != ".")
{
$gallerylist[$dir] = str_replace("_", " ", $dir);

Zeile 1942Zeile 2001
		}
$galleries .= "<option value=\"$dir\" $selected>$friendlyname</option>\n";
$selected = "";

		}
$galleries .= "<option value=\"$dir\" $selected>$friendlyname</option>\n";
$selected = "";

	}

	}


// Check to see if we're in a gallery or not
if($activegallery)


// Check to see if we're in a gallery or not
if($activegallery)

Zeile 2001Zeile 2060
		{
eval("\$avatarlist = \"".$templates->get("usercp_avatar_gallery_noavatars")."\";");
}

		{
eval("\$avatarlist = \"".$templates->get("usercp_avatar_gallery_noavatars")."\";");
}

		



		$plugins->run_hooks("usercp_avatar_end");

		$plugins->run_hooks("usercp_avatar_end");

		



		eval("\$gallery = \"".$templates->get("usercp_avatar_gallery")."\";");
output_page($gallery);
}

		eval("\$gallery = \"".$templates->get("usercp_avatar_gallery")."\";");
output_page($gallery);
}

Zeile 2056Zeile 2115
		{
$auto_resize = "<br /><span class=\"smalltext\"><input type=\"checkbox\" name=\"auto_resize\" value=\"1\" checked=\"checked\" id=\"auto_resize\" /> <label for=\"auto_resize\">{$lang->avatar_auto_resize_option}</label></span>";
}

		{
$auto_resize = "<br /><span class=\"smalltext\"><input type=\"checkbox\" name=\"auto_resize\" value=\"1\" checked=\"checked\" id=\"auto_resize\" /> <label for=\"auto_resize\">{$lang->avatar_auto_resize_option}</label></span>";
}

		



		$plugins->run_hooks("usercp_avatar_end");

		$plugins->run_hooks("usercp_avatar_end");

		



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

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





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

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





	$plugins->run_hooks("usercp_do_editlists_start");

$existing_users = array();

	$plugins->run_hooks("usercp_do_editlists_start");

$existing_users = array();

Zeile 2078Zeile 2137
		if($mybb->user['ignorelist'])
{
$existing_users = explode(",", $mybb->user['ignorelist']);

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

		}

		}


if($mybb->user['buddylist'])
{
// Create a list of buddies...


if($mybb->user['buddylist'])
{
// Create a list of buddies...

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

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

		}
}
else

		}
}
else

Zeile 2099Zeile 2158
			$selected_list = explode(",", $mybb->user['ignorelist']);
}
}

			$selected_list = explode(",", $mybb->user['ignorelist']);
}
}

	



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

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

	



	// Adding one or more users to this list
if($mybb->input['add_username'])
{

	// Adding one or more users to this list
if($mybb->input['add_username'])
{

Zeile 2160Zeile 2219
					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;
}

				



				$existing_users[] = $user['uid'];

				$existing_users[] = $user['uid'];

			}
}

if(($adding_self != true || ($adding_self == true && count($users) > 0)) && ($error_message == "" || count($users) > 1))
{
if($mybb->input['manage'] == "ignored")
{
$message = $lang->users_added_to_ignore_list;
}
else
{
$message = $lang->users_added_to_buddy_list;
}
}

if($adding_self == true)
{
if($mybb->input['manage'] == "ignored")
{
$error_message = $lang->cant_add_self_to_ignore_list;
}
else
{
$error_message = $lang->cant_add_self_to_buddy_list;
}
}

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


			}
}































		if($found_users < count($users))
{
if($error_message)

		if($found_users < count($users))
{
if($error_message)

Zeile 2203Zeile 2233

$error_message .= $lang->invalid_user_selected;
}


$error_message .= $lang->invalid_user_selected;
}

	}































if(($adding_self != true || ($adding_self == true && count($users) > 0)) && ($error_message == "" || count($users) > 1))
{
if($mybb->input['manage'] == "ignored")
{
$message = $lang->users_added_to_ignore_list;
}
else
{
$message = $lang->users_added_to_buddy_list;
}
}

if($adding_self == true)
{
if($mybb->input['manage'] == "ignored")
{
$error_message = $lang->cant_add_self_to_ignore_list;
}
else
{
$error_message = $lang->cant_add_self_to_buddy_list;
}
}

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


// Removing a user from this list
else if($mybb->input['delete'])


// Removing a user from this list
else if($mybb->input['delete'])

Zeile 2393Zeile 2452
		}
exit;
}

		}
exit;
}

	



	$plugins->run_hooks("usercp_editlists_end");

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

	$plugins->run_hooks("usercp_editlists_end");

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

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

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

		{

		{

			$detail = $lang->thread." <a href=\"".get_thread_link($draft['tid'])."\">".htmlspecialchars_uni($draft['threadsubject'])."</a>";
$editurl = "newreply.php?action=editdraft&amp;pid={$draft['pid']}";
$id = $draft['pid'];

			$detail = $lang->thread." <a href=\"".get_thread_link($draft['tid'])."\">".htmlspecialchars_uni($draft['threadsubject'])."</a>";
$editurl = "newreply.php?action=editdraft&amp;pid={$draft['pid']}";
$id = $draft['pid'];

Zeile 2425Zeile 2484
		}
elseif($draft['threadvisible'] == -2) // We're looking at a draft thread
{

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

			$detail = $lang->forum." <a href=\"".get_forum_link($draft['fid'])."\">".htmlspecialchars_uni($draft['forumname'])."</a>";

			$detail = $lang->forum." <a href=\"".get_forum_link($draft['fid'])."\">{$draft['forumname']}</a>";

			$editurl = "newthread.php?action=editdraft&amp;tid={$draft['tid']}";
$id = $draft['tid'];
$type = "thread";

			$editurl = "newthread.php?action=editdraft&amp;tid={$draft['tid']}";
$id = $draft['tid'];
$type = "thread";

Zeile 2445Zeile 2504
		eval("\$draftsubmit = \"".$templates->get("usercp_drafts_submit")."\";");
$disable_delete_drafts = '';
}

		eval("\$draftsubmit = \"".$templates->get("usercp_drafts_submit")."\";");
$disable_delete_drafts = '';
}

	



	$query = $db->simple_select("posts", "COUNT(*) AS draftcount", "visible='-2' AND uid='".$mybb->user['uid']."'");
$count = $db->fetch_array($query);
$draftcount = "(".my_number_format($count['draftcount']).")";

	$query = $db->simple_select("posts", "COUNT(*) AS draftcount", "visible='-2' AND uid='".$mybb->user['uid']."'");
$count = $db->fetch_array($query);
$draftcount = "(".my_number_format($count['draftcount']).")";

	



	$plugins->run_hooks("usercp_drafts_end");

	$plugins->run_hooks("usercp_drafts_end");

	



	eval("\$draftlist = \"".$templates->get("usercp_drafts")."\";");
output_page($draftlist);


	eval("\$draftlist = \"".$templates->get("usercp_drafts")."\";");
output_page($draftlist);


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

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

		exit;
}


		exit;
}


	// Leaving a group
if($mybb->input['leavegroup'])

	// Leaving a group
if($mybb->input['leavegroup'])

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


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


		if(my_strpos($ingroups, ",".$mybb->input['leavegroup'].",") === false)
{
error($lang->not_member_of_group);
}

		if(my_strpos($ingroups, ",".$mybb->input['leavegroup'].",") === false)
{
error($lang->not_member_of_group);
}

		if($mybb->user['usergroup'] == $mybb->input['leavegroup'])
{
error($lang->cannot_leave_primary_group);
}

		if($mybb->user['usergroup'] == $mybb->input['leavegroup'])
{
error($lang->cannot_leave_primary_group);
}

		$query = $db->simple_select("usergroups", "*", "gid='".intval($mybb->input['leavegroup'])."'");
$usergroup = $db->fetch_array($query);
if($usergroup['type'] != 4 && $usergroup['type'] != 3)

		$query = $db->simple_select("usergroups", "*", "gid='".intval($mybb->input['leavegroup'])."'");
$usergroup = $db->fetch_array($query);
if($usergroup['type'] != 4 && $usergroup['type'] != 3)

Zeile 2554Zeile 2613
		redirect("usercp.php?action=usergroups", $lang->left_group);
exit;
}

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





	// Joining a group
if($mybb->input['joingroup'])
{

	// Joining a group
if($mybb->input['joingroup'])
{

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

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

		}

		}

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

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

			$reason = $db->escape_string($reason);

			$reason = $db->escape_string($mybb->input['reason']);

			$now = TIME_NOW;
$joinrequest = array(
"uid" => $mybb->user['uid'],
"gid" => intval($mybb->input['joingroup']),

			$now = TIME_NOW;
$joinrequest = array(
"uid" => $mybb->user['uid'],
"gid" => intval($mybb->input['joingroup']),

				"reason" => $db->escape_string($mybb->input['reason']),

				"reason" => $reason,

				"dateline" => TIME_NOW
);


				"dateline" => TIME_NOW
);


Zeile 2633Zeile 2692
	{
case "pgsql":
case "sqlite":

	{
case "pgsql":
case "sqlite":

			$query = $db->query("
SELECT g.title, g.gid, g.type, COUNT(u.uid) AS users, COUNT(j.rid) AS joinrequests, l.canmanagerequests, l.canmanagemembers
FROM ".TABLE_PREFIX."groupleaders l
LEFT JOIN ".TABLE_PREFIX."usergroups g ON(g.gid=l.gid)

			$query = $db->query("
SELECT g.title, g.gid, g.type, COUNT(DISTINCT u.uid) AS users, COUNT(DISTINCT j.rid) AS joinrequests, l.canmanagerequests, l.canmanagemembers
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']."'

				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']."'

Zeile 2719Zeile 2778
			if($usergroup['description'])
{
$description = "<br /><span class=\"smalltext\">".$usergroup['description']."</span>";

			if($usergroup['description'])
{
$description = "<br /><span class=\"smalltext\">".$usergroup['description']."</span>";

			}
else

			}
else

			{
$description = '';
}

			{
$description = '';
}

Zeile 2821Zeile 2880
	}

$plugins->run_hooks("usercp_usergroups_end");

	}

$plugins->run_hooks("usercp_usergroups_end");

	



	eval("\$groupmemberships = \"".$templates->get("usercp_usergroups")."\";");
output_page($groupmemberships);
}

	eval("\$groupmemberships = \"".$templates->get("usercp_usergroups")."\";");
output_page($groupmemberships);
}

Zeile 2921Zeile 2980
		eval("\$attachments = \"".$templates->get("usercp_attachments_none")."\";");
$usagenote = '';
}

		eval("\$attachments = \"".$templates->get("usercp_attachments_none")."\";");
$usagenote = '';
}

	



	$plugins->run_hooks("usercp_attachments_end");

	$plugins->run_hooks("usercp_attachments_end");

	



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

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

Zeile 2975Zeile 3034
	{
$daysreg = 1;
}

	{
$daysreg = 1;
}

	



	$perday = $mybb->user['postnum'] / $daysreg;
$perday = round($perday, 2);
if($perday > $mybb->user['postnum'])

	$perday = $mybb->user['postnum'] / $daysreg;
$perday = round($perday, 2);
if($perday > $mybb->user['postnum'])

Zeile 3006Zeile 3065
		{
$avatar_width_height = "width=\"{$avatar_dimensions[0]}\" height=\"{$avatar_dimensions[1]}\"";
}

		{
$avatar_width_height = "width=\"{$avatar_dimensions[0]}\" height=\"{$avatar_dimensions[1]}\"";
}

		$mybb->user['avatar'] = htmlspecialchars($mybb->user['avatar']);

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

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

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

Zeile 3028Zeile 3087
		eval("\$reputation = \"".$templates->get("usercp_reputation")."\";");
}


		eval("\$reputation = \"".$templates->get("usercp_reputation")."\";");
}


 
	$latest_warnings = '';

	if($mybb->settings['enablewarningsystem'] != 0 && $mybb->settings['canviewownwarning'] != 0)
{
$warning_level = round($mybb->user['warningpoints']/$mybb->settings['maxwarningpoints']*100);

	if($mybb->settings['enablewarningsystem'] != 0 && $mybb->settings['canviewownwarning'] != 0)
{
$warning_level = round($mybb->user['warningpoints']/$mybb->settings['maxwarningpoints']*100);

Zeile 3117Zeile 3177

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


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

	



	// Build referral link
if($mybb->settings['usereferrals'] == 1)
{

	// Build referral link
if($mybb->settings['usereferrals'] == 1)
{

Zeile 3130Zeile 3190
	$mybb->user['notepad'] = htmlspecialchars_uni($mybb->user['notepad']);
eval("\$user_notepad = \"".$templates->get("usercp_notepad")."\";");
$plugins->run_hooks("usercp_notepad_end");

	$mybb->user['notepad'] = htmlspecialchars_uni($mybb->user['notepad']);
eval("\$user_notepad = \"".$templates->get("usercp_notepad")."\";");
$plugins->run_hooks("usercp_notepad_end");

	



	// Thread Subscriptions with New Posts

	// Thread Subscriptions with New Posts

 
	$latest_subscribed = '';

	$query = $db->simple_select("threadsubscriptions", "sid", "uid = '".$mybb->user['uid']."'", array("limit" => 1));
if($db->num_rows($query))
{

	$query = $db->simple_select("threadsubscriptions", "sid", "uid = '".$mybb->user['uid']."'", array("limit" => 1));
if($db->num_rows($query))
{

Zeile 3150Zeile 3211
			ORDER BY t.lastpost DESC
LIMIT 0, 10
");

			ORDER BY t.lastpost DESC
LIMIT 0, 10
");

		



		$fpermissions = forum_permissions();
while($subscription = $db->fetch_array($query))
{
$forumpermissions = $fpermissions[$subscription['fid']];

		$fpermissions = forum_permissions();
while($subscription = $db->fetch_array($query))
{
$forumpermissions = $fpermissions[$subscription['fid']];

			if($forumpermissions['canview'] != 0 || $forumpermissions['canviewthreads'] != 0)

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

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

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

		



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

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

Zeile 3176Zeile 3237
						unset($subscriptions[$readthread['tid']]); // If it's already been read, then don't display the thread
}
else

						unset($subscriptions[$readthread['tid']]); // If it's already been read, then don't display the thread
}
else

					{			

					{

						$subscriptions[$readthread['tid']]['lastread'] = $readthread['dateline'];
}
}
}

						$subscriptions[$readthread['tid']]['lastread'] = $readthread['dateline'];
}
}
}

			



			if($subscriptions)
{
if($mybb->settings['dotfolders'] != 0)

			if($subscriptions)
{
if($mybb->settings['dotfolders'] != 0)

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

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





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

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

				



				foreach($subscriptions as $thread)
{
$folder = '';

				foreach($subscriptions as $thread)
{
$folder = '';

Zeile 3208Zeile 3269
						$thread['subject'] = htmlspecialchars_uni($thread['subject']);
$thread['threadlink'] = get_thread_link($thread['tid']);
$thread['lastpostlink'] = get_thread_link($thread['tid'], 0, "lastpost");

						$thread['subject'] = htmlspecialchars_uni($thread['subject']);
$thread['threadlink'] = get_thread_link($thread['tid']);
$thread['lastpostlink'] = get_thread_link($thread['tid'], 0, "lastpost");





						// If this thread has a prefix...
if($thread['prefix'] != 0)
{
$query = $db->simple_select('threadprefixes', 'prefix, displaystyle', "pid='{$thread['prefix']}'");
$threadprefix = $db->fetch_array($query);

						// If this thread has a prefix...
if($thread['prefix'] != 0)
{
$query = $db->simple_select('threadprefixes', 'prefix, displaystyle', "pid='{$thread['prefix']}'");
$threadprefix = $db->fetch_array($query);

	



							$thread['displayprefix'] = $threadprefix['displaystyle'].'&nbsp;';

							$thread['displayprefix'] = $threadprefix['displaystyle'].'&nbsp;';

						}
else
{

						}
else
{

							$thread['displayprefix'] = '';
}

// Icons
if($thread['icon'] > 0 && $icon_cache[$thread['icon']])

							$thread['displayprefix'] = '';
}

// Icons
if($thread['icon'] > 0 && $icon_cache[$thread['icon']])

						{

						{

							$icon = $icon_cache[$thread['icon']];
$icon = "<img src=\"{$icon['path']}\" alt=\"{$icon['name']}\" />";

							$icon = $icon_cache[$thread['icon']];
$icon = "<img src=\"{$icon['path']}\" alt=\"{$icon['name']}\" />";

						}
else
{

						}
else
{

							$icon = "&nbsp;";
}

							$icon = "&nbsp;";
}

						



						if($thread['doticon'])
{
$folder = "dot_";
$folder_label .= $lang->icon_dot;
}

						if($thread['doticon'])
{
$folder = "dot_";
$folder_label .= $lang->icon_dot;
}

						



						// Check to see which icon we display
if($thread['lastread'] && $thread['lastread'] < $thread['lastpost'])

						// Check to see which icon we display
if($thread['lastread'] && $thread['lastread'] < $thread['lastpost'])

						{

						{

							$folder .= "new";
$folder_label .= $lang->icon_new;
$new_class = "subject_new";
$thread['newpostlink'] = get_thread_link($thread['tid'], 0, "newpost");
eval("\$gotounread = \"".$templates->get("forumdisplay_thread_gotounread")."\";");

							$folder .= "new";
$folder_label .= $lang->icon_new;
$new_class = "subject_new";
$thread['newpostlink'] = get_thread_link($thread['tid'], 0, "newpost");
eval("\$gotounread = \"".$templates->get("forumdisplay_thread_gotounread")."\";");

						}

						}

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

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

						}


						}


						$folder .= "folder";

if($thread['visible'] == 0)
{
$bgcolor = "trow_shaded";
}

						$folder .= "folder";

if($thread['visible'] == 0)
{
$bgcolor = "trow_shaded";
}

		



						$lastpostdate = my_date($mybb->settings['dateformat'], $thread['lastpost']);
$lastposttime = my_date($mybb->settings['timeformat'], $thread['lastpost']);
$lastposter = $thread['lastposter'];
$lastposteruid = $thread['lastposteruid'];

						$lastpostdate = my_date($mybb->settings['dateformat'], $thread['lastpost']);
$lastposttime = my_date($mybb->settings['timeformat'], $thread['lastpost']);
$lastposter = $thread['lastposter'];
$lastposteruid = $thread['lastposteruid'];

		



						if($lastposteruid == 0)
{
$lastposterlink = $lastposter;

						if($lastposteruid == 0)
{
$lastposterlink = $lastposter;

Zeile 3274Zeile 3335
						{
$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['author'] = build_profile_link($thread['username'], $thread['uid']);

						$thread['replies'] = my_number_format($thread['replies']);
$thread['views'] = my_number_format($thread['views']);
$thread['author'] = build_profile_link($thread['username'], $thread['uid']);

	



						eval("\$latest_subscribed_threads .= \"".$templates->get("usercp_latest_subscribed_threads")."\";");
}
}

						eval("\$latest_subscribed_threads .= \"".$templates->get("usercp_latest_subscribed_threads")."\";");
}
}

Zeile 3286Zeile 3347
			}
}
}

			}
}
}

	



	// User's Latest Threads

// Get unviewable forums

	// User's Latest Threads

// Get unviewable forums

 
	$f_perm_sql = '';

	$unviewable_forums = get_unviewable_forums();
if($unviewable_forums)
{

	$unviewable_forums = get_unviewable_forums();
if($unviewable_forums)
{

Zeile 3365Zeile 3427
				$threadcache[$post['tid']]['doticon'] = 1;
}
}

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

		



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

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

		



		// Run the threads...

		// Run the threads...

 
		$latest_threads_threads = '';

		foreach($threadcache as $thread)
{
if($thread['tid'])

		foreach($threadcache as $thread)
{
if($thread['tid'])

Zeile 3381Zeile 3444
				$isnew = 0;
$donenew = 0;
$lastread = 0;

				$isnew = 0;
$donenew = 0;
$lastread = 0;

				



				// If this thread has a prefix...
if($thread['prefix'] != 0)
{

				// If this thread has a prefix...
if($thread['prefix'] != 0)
{

Zeile 3389Zeile 3452
					$threadprefix = $db->fetch_array($query);

$thread['displayprefix'] = $threadprefix['displaystyle'].'&nbsp;';

					$threadprefix = $db->fetch_array($query);

$thread['displayprefix'] = $threadprefix['displaystyle'].'&nbsp;';

				}
else

				}
else

				{
$thread['displayprefix'] = '';
}

				{
$thread['displayprefix'] = '';
}

				



				$thread['subject'] = $parser->parse_badwords($thread['subject']);
$thread['subject'] = htmlspecialchars_uni($thread['subject']);
$thread['threadlink'] = get_thread_link($thread['tid']);

				$thread['subject'] = $parser->parse_badwords($thread['subject']);
$thread['subject'] = htmlspecialchars_uni($thread['subject']);
$thread['threadlink'] = get_thread_link($thread['tid']);

Zeile 3413Zeile 3476
				if($mybb->settings['threadreadcut'] > 0)
{
$forum_read = $readforums[$thread['fid']];

				if($mybb->settings['threadreadcut'] > 0)
{
$forum_read = $readforums[$thread['fid']];

				



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

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

	



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

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

				{

				{

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

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

	



$cutoff = 0;

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

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

Zeile 3433Zeile 3497
						$lastread = $thread['lastread'];
}
}

						$lastread = $thread['lastread'];
}
}

	



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

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

Zeile 3513Zeile 3577

eval("\$latest_threads = \"".$templates->get("usercp_latest_threads")."\";");
}


eval("\$latest_threads = \"".$templates->get("usercp_latest_threads")."\";");
}

	



	$plugins->run_hooks("usercp_end");

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

	$plugins->run_hooks("usercp_end");

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