Vergleich usercp.php - 1.8.25 - 1.8.38

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

require_once "./global.php";
require_once MYBB_ROOT."inc/functions_post.php";


require_once "./global.php";
require_once MYBB_ROOT."inc/functions_post.php";

 
require_once MYBB_ROOT."inc/functions_search.php";

require_once MYBB_ROOT."inc/functions_user.php";
require_once MYBB_ROOT."inc/class_parser.php";
$parser = new postParser;

require_once MYBB_ROOT."inc/functions_user.php";
require_once MYBB_ROOT."inc/class_parser.php";
$parser = new postParser;

Zeile 50Zeile 51

usercp_menu();



usercp_menu();


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

if(my_strpos($server_http_referer, $mybb->settings['bburl'].'/') !== 0)

$server_http_referer = '';
if(isset($_SERVER['HTTP_REFERER']))


{

{

	if(my_strpos($server_http_referer, '/') === 0)



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

if(my_strpos($server_http_referer, $mybb->settings['bburl'].'/') !== 0)

	{

	{

		$server_http_referer = my_substr($server_http_referer, 1);






		if(my_strpos($server_http_referer, '/') === 0)
{
$server_http_referer = my_substr($server_http_referer, 1);
}
$url_segments = explode('/', $server_http_referer);
$server_http_referer = $mybb->settings['bburl'].'/'.end($url_segments);

	}

	}

	$url_segments = explode('/', $server_http_referer);
$server_http_referer = $mybb->settings['bburl'].'/'.end($url_segments);

 
}

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

{

{

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


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


Zeile 116Zeile 121
		break;
case "forumsubscriptions":
add_breadcrumb($lang->ucp_nav_forum_subscriptions);

		break;
case "forumsubscriptions":
add_breadcrumb($lang->ucp_nav_forum_subscriptions);

		break;

		break;

	case "editsig":
case "do_editsig":
add_breadcrumb($lang->nav_editsig);

	case "editsig":
case "do_editsig":
add_breadcrumb($lang->nav_editsig);

Zeile 124Zeile 129
	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);

		break;

		break;

	case "editlists":
case "do_editlists":
add_breadcrumb($lang->ucp_nav_editlists);

	case "editlists":
case "do_editlists":
add_breadcrumb($lang->ucp_nav_editlists);

		break;

		break;

	case "drafts":
add_breadcrumb($lang->ucp_nav_drafts);
break;

	case "drafts":
add_breadcrumb($lang->ucp_nav_drafts);
break;

Zeile 157Zeile 162
	{
$awaydate = TIME_NOW;
if(!empty($mybb->input['awayday']))

	{
$awaydate = TIME_NOW;
if(!empty($mybb->input['awayday']))

		{

		{

			// If the user has indicated that they will return on a specific day, but not month or year, assume it is current month and year
if(!$mybb->get_input('awaymonth', 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))
{

Zeile 191Zeile 196
			"date" => $awaydate,
"returndate" => $returndate,
"awayreason" => $mybb->get_input('awayreason')

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

		);
}

		);
}

	else
{
$away = array(

	else
{
$away = array(

Zeile 201Zeile 206
			"returndate" => '',
"awayreason" => ''
);

			"returndate" => '',
"awayreason" => ''
);

	}

	}


$bday = array(
"day" => $mybb->get_input('bday1', MyBB::INPUT_INT),


$bday = array(
"day" => $mybb->get_input('bday1', MyBB::INPUT_INT),

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

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

		}


		}


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

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

Zeile 243Zeile 248
			if(my_strlen($user[$cfield]) > 10)
{
error($lang->contact_field_icqerror);

			if(my_strlen($user[$cfield]) > 10)
{
error($lang->contact_field_icqerror);

			}

			}

		}
else
{

		}
else
{

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

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

	}


	}


	if($mybb->usergroup['cancustomtitle'] == 1)
{
if($mybb->get_input('usertitle') != '')

	if($mybb->usergroup['cancustomtitle'] == 1)
{
if($mybb->get_input('usertitle') != '')

Zeile 280Zeile 285
		$raw_errors = $userhandler->get_errors();

// Set to stored value if invalid

		$raw_errors = $userhandler->get_errors();

// Set to stored value if invalid

		if(array_key_exists("invalid_birthday_privacy", $raw_errors))

		if(array_key_exists("invalid_birthday_privacy", $raw_errors) || array_key_exists("conflicted_birthday_privacy", $raw_errors))

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

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

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

if(isset($bday[2]))
{
$mybb->input['bday3'] = $bday[2];
}

		}

$errors = inline_error($errors);
$mybb->input['action'] = "profile";

		}

$errors = inline_error($errors);
$mybb->input['action'] = "profile";

	}

	}

	else
{
$userhandler->update_user();

	else
{
$userhandler->update_user();

Zeile 312Zeile 323
		$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;
}

			$bday[1] = 0;
}

		if(!isset($bday[2]))
{
$bday[2] = '';
}

	}
if(!isset($bday[2]) || $bday[2] == 0)
{
$bday[2] = '';

	}

$plugins->run_hooks("usercp_profile_start");

	}

$plugins->run_hooks("usercp_profile_start");

Zeile 329Zeile 340
		if($bday[0] == $day)
{
$selected = "selected=\"selected\"";

		if($bday[0] == $day)
{
$selected = "selected=\"selected\"";

		}
else
{

		}
else
{

			$selected = '';
}

			$selected = '';
}





		eval("\$bdaydaysel .= \"".$templates->get("usercp_profile_day")."\";");
}

$bdaymonthsel = array();
foreach(range(1, 12) as $month)

		eval("\$bdaydaysel .= \"".$templates->get("usercp_profile_day")."\";");
}

$bdaymonthsel = array();
foreach(range(1, 12) as $month)

	{

	{

		$bdaymonthsel[$month] = '';
}
$bdaymonthsel[$bday[1]] = 'selected="selected"';

		$bdaymonthsel[$month] = '';
}
$bdaymonthsel[$bday[1]] = 'selected="selected"';

Zeile 349Zeile 360
	if($user['birthdayprivacy'] == 'all' || !$user['birthdayprivacy'])
{
$allselected = " selected=\"selected\"";

	if($user['birthdayprivacy'] == 'all' || !$user['birthdayprivacy'])
{
$allselected = " selected=\"selected\"";

	}

	}

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

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

	{

	{

		$noneselected = " selected=\"selected\"";
}
elseif($user['birthdayprivacy'] == 'age')
{
$ageselected = " selected=\"selected\"";

		$noneselected = " selected=\"selected\"";
}
elseif($user['birthdayprivacy'] == 'age')
{
$ageselected = " selected=\"selected\"";

	}

	}


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


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

	{

	{

		$user['website'] = '';
}
else
{
$user['website'] = htmlspecialchars_uni($user['website']);

		$user['website'] = '';
}
else
{
$user['website'] = htmlspecialchars_uni($user['website']);

	}

	}


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


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

Zeile 383Zeile 394
		$user['skype'] = htmlspecialchars_uni($user['skype']);
$user['google'] = htmlspecialchars_uni($user['google']);
}

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





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

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

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

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

		}

		}


$cfieldsshow = true;



$cfieldsshow = true;


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


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


 
	$awaysection = '';

	if($mybb->settings['allowaway'] != 0)
{
$awaycheck = array('', '');
if($errors)
{
if($user['away'] == 1)

	if($mybb->settings['allowaway'] != 0)
{
$awaycheck = array('', '');
if($errors)
{
if($user['away'] == 1)

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

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

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

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

Zeile 457Zeile 469
			if(!isset($returndate[2]))
{
$returndate[2] = '';

			if(!isset($returndate[2]))
{
$returndate[2] = '';

			}

			}

		}

$returndatesel = '';
for($day = 1; $day <= 31; ++$day)
{
if($returndate[0] == $day)

		}

$returndatesel = '';
for($day = 1; $day <= 31; ++$day)
{
if($returndate[0] == $day)

			{

			{

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

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

			}
else
{

			}
else
{

				$selected = '';
}

				$selected = '';
}





			eval("\$returndatesel .= \"".$templates->get("usercp_profile_day")."\";");
}

$returndatemonthsel = array();
foreach(range(1, 12) as $month)

			eval("\$returndatesel .= \"".$templates->get("usercp_profile_day")."\";");
}

$returndatemonthsel = array();
foreach(range(1, 12) as $month)

		{

		{

			$returndatemonthsel[$month] = '';
}
$returndatemonthsel[$returndate[1]] = "selected";

			$returndatemonthsel[$month] = '';
}
$returndatemonthsel[$returndate[1]] = "selected";

Zeile 501Zeile 513
				continue;
}


				continue;
}


 
			$userfield = $code = $select = $val = $options = $expoptions = $useropts = '';
$seloptions = array();

			$profilefield['type'] = htmlspecialchars_uni($profilefield['type']);
$profilefield['name'] = htmlspecialchars_uni($profilefield['name']);
$profilefield['description'] = htmlspecialchars_uni($profilefield['description']);

			$profilefield['type'] = htmlspecialchars_uni($profilefield['type']);
$profilefield['name'] = htmlspecialchars_uni($profilefield['name']);
$profilefield['description'] = htmlspecialchars_uni($profilefield['description']);

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

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

			}
else
{

			}
else
{

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

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

			$select = '';

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

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

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

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

				}

				}

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

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

Zeile 545Zeile 558
						$val = htmlspecialchars_uni($val);
$seloptions[$val] = $val;
}

						$val = htmlspecialchars_uni($val);
$seloptions[$val] = $val;
}

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

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

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

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

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

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

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

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

Zeile 571Zeile 584
				}
}
elseif($type == "select")

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

			{

			{

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

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

Zeile 605Zeile 618
					{
$checked = "";
if($val == $userfield)

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

						{

						{

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


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


Zeile 621Zeile 634
					$useropts = $userfield;
}
else

					$useropts = $userfield;
}
else

				{

				{

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

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

				}

				}

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

				if(is_array($useropts))
{
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 672Zeile 685
				eval("\$customfields .= \"".$templates->get("usercp_profile_customfield")."\";");
}
$altbg = alt_trow();

				eval("\$customfields .= \"".$templates->get("usercp_profile_customfield")."\";");
}
$altbg = alt_trow();

			$code = "";
$select = "";
$val = "";
$options = "";
$expoptions = "";
$useropts = "";
$seloptions = array();
}
}

		}
}








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

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

Zeile 741Zeile 747
		$customtitle = "";
}


		$customtitle = "";
}


 
	$website = '';

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

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

Zeile 872Zeile 879
		$allownoticescheck = "";
}


		$allownoticescheck = "";
}


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




	$canbeinvisible = '';

// Check usergroup permission before showing invisible check box
if($mybb->usergroup['canbeinvisible'] == 1)

	{

	{

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





		if(isset($user['invisible']) && $user['invisible'] == 1)
{
$invisiblecheck = "checked=\"checked\"";
}
else
{
$invisiblecheck = "";
}
eval('$canbeinvisible = "'.$templates->get("usercp_options_invisible")."\";");

	}

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

	}

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

Zeile 1159Zeile 1173
		$explodedppp = explode(",", $mybb->settings['userpppoptions']);
$pppoptions = $ppp_option = '';
if(is_array($explodedppp))

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

		{

		{

			foreach($explodedppp as $key => $val)
{
$val = trim($val);

			foreach($explodedppp as $key => $val)
{
$val = trim($val);

Zeile 1168Zeile 1182
				{
$selected = " selected=\"selected\"";
}

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

				$ppp_option = $lang->sprintf($lang->ppp_option, $val);
eval("\$pppoptions .= \"".$templates->get("usercp_options_pppselect_option")."\";");
}
}
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 1228Zeile 1242
				$db->delete_query("awaitingactivation", "uid='".$mybb->user['uid']."'");

// Send new activation mail for non-activated accounts

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

// Send new activation mail for non-activated accounts

				$activationcode = random_str();

				$activationcode = random_str();

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

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

Zeile 1275Zeile 1289
				);

$db->insert_query("awaitingactivation", $newactivation);

				);

$db->insert_query("awaitingactivation", $newactivation);





				$mail_message = $lang->sprintf($lang->email_changeemail, $mybb->user['username'], $mybb->settings['bbname'], $mybb->user['email'], $mybb->get_input('email'), $mybb->settings['bburl'], $activationcode, $mybb->user['username'], $mybb->user['uid']);

				$mail_message = $lang->sprintf($lang->email_changeemail, $mybb->user['username'], $mybb->settings['bbname'], $mybb->user['email'], $mybb->get_input('email'), $mybb->settings['bburl'], $activationcode, $mybb->user['username'], $mybb->user['uid']);





				$lang->emailsubject_changeemail = $lang->sprintf($lang->emailsubject_changeemail, $mybb->settings['bbname']);
my_mail($mybb->get_input('email'), $lang->emailsubject_changeemail, $mail_message);

$plugins->run_hooks("usercp_do_email_verify");
error($lang->redirect_changeemail_activation);

				$lang->emailsubject_changeemail = $lang->sprintf($lang->emailsubject_changeemail, $mybb->settings['bbname']);
my_mail($mybb->get_input('email'), $lang->emailsubject_changeemail, $mail_message);

$plugins->run_hooks("usercp_do_email_verify");
error($lang->redirect_changeemail_activation);

			}

			}

			else
{
$userhandler->update_user();

			else
{
$userhandler->update_user();

Zeile 1292Zeile 1306
				my_mail($mybb->get_input('email'), $lang->sprintf($lang->emailsubject_changeemail, $mybb->settings['bbname']), $mail_message);
$plugins->run_hooks("usercp_do_email_changed");
redirect("usercp.php?action=email", $lang->redirect_emailupdated);

				my_mail($mybb->get_input('email'), $lang->sprintf($lang->emailsubject_changeemail, $mybb->settings['bbname']), $mail_message);
$plugins->run_hooks("usercp_do_email_changed");
redirect("usercp.php?action=email", $lang->redirect_emailupdated);

			}
}
}
if(count($errors) > 0)
{

			}
}
}
if(count($errors) > 0)
{

		$mybb->input['action'] = "email";
$errors = inline_error($errors);
}

		$mybb->input['action'] = "email";
$errors = inline_error($errors);
}

Zeile 1313Zeile 1327
	else
{
$email = $email2 = '';

	else
{
$email = $email2 = '';

	}

	}


$plugins->run_hooks("usercp_email");



$plugins->run_hooks("usercp_email");


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

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





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

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

Zeile 1347Zeile 1361
		));

$userhandler->set_data($user);

		));

$userhandler->set_data($user);





		if(!$userhandler->validate_user())

		if(!$userhandler->validate_user())

		{

		{

			$errors = $userhandler->get_friendly_errors();
}
else
{
$userhandler->update_user();
my_setcookie("mybbuser", $mybb->user['uid']."_".$userhandler->data['loginkey'], null, true, "lax");

			$errors = $userhandler->get_friendly_errors();
}
else
{
$userhandler->update_user();
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']);
$lang->emailsubject_changepassword = $lang->sprintf($lang->emailsubject_changepassword, $mybb->settings['bbname']);

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

Zeile 1364Zeile 1378

$plugins->run_hooks("usercp_do_password_end");
redirect("usercp.php?action=password", $lang->redirect_passwordupdated);


$plugins->run_hooks("usercp_do_password_end");
redirect("usercp.php?action=password", $lang->redirect_passwordupdated);

		}

		}

	}
if(count($errors) > 0)
{

	}
if(count($errors) > 0)
{

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

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





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

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





	// Thread visiblity

	// Thread visiblity

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










	$where = array(
"s.uid={$mybb->user['uid']}",
get_visible_where('t')
);

if($unviewable_forums = get_unviewable_forums(true))
{
$where[] = "t.fid NOT IN ({$unviewable_forums})";
}

if($inactive_forums = get_inactive_forums())

	{

	{

		$visible = '';

		$where[] = "t.fid NOT IN ({$inactive_forums})";

	}

	}

 

$where = implode(' AND ', $where);


// Do Multi Pages
$query = $db->query("


// Do Multi Pages
$query = $db->query("

		SELECT COUNT(ts.tid) as threads
FROM ".TABLE_PREFIX."threadsubscriptions ts
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid = ts.tid)
WHERE ts.uid = '".$mybb->user['uid']."' AND t.visible >= 0 {$visible}

		SELECT COUNT(s.tid) as threads
FROM ".TABLE_PREFIX."threadsubscriptions s
LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid = s.tid)
WHERE {$where}

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

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

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

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


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

Zeile 1562Zeile 1587
		FROM ".TABLE_PREFIX."threadsubscriptions s
LEFT JOIN ".TABLE_PREFIX."threads t ON (s.tid=t.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)

		FROM ".TABLE_PREFIX."threadsubscriptions s
LEFT JOIN ".TABLE_PREFIX."threads t ON (s.tid=t.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)

		WHERE s.uid='".$mybb->user['uid']."' and t.visible >= 0 {$visible}

		WHERE {$where}

		ORDER BY t.lastpost DESC
LIMIT $start, $perpage
");

		ORDER BY t.lastpost DESC
LIMIT $start, $perpage
");

Zeile 1570Zeile 1595
	{
$forumpermissions = $fpermissions[$subscription['fid']];


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


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

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

Zeile 1578Zeile 1603
		elseif($subscription['tid'])
{
$subscriptions[$subscription['tid']] = $subscription;

		elseif($subscription['tid'])
{
$subscriptions[$subscription['tid']] = $subscription;

		}

		}

	}

if(!empty($del_subscriptions))

	}

if(!empty($del_subscriptions))

Zeile 1595Zeile 1620
		if($threadcount < 0)
{
$threadcount = 0;

		if($threadcount < 0)
{
$threadcount = 0;

		}

		}

	}

if(!empty($subscriptions))

	}

if(!empty($subscriptions))

Zeile 1629Zeile 1654

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


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

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

Zeile 1646Zeile 1671
		foreach($subscriptions as $thread)
{
$bgcolor = alt_trow();

		foreach($subscriptions as $thread)
{
$bgcolor = alt_trow();





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

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

Zeile 1655Zeile 1680
			if($thread['prefix'] != 0 && !empty($threadprefixes[$thread['prefix']]))
{
$thread['threadprefix'] = $threadprefixes[$thread['prefix']]['displaystyle'].'&nbsp;';

			if($thread['prefix'] != 0 && !empty($threadprefixes[$thread['prefix']]))
{
$thread['threadprefix'] = $threadprefixes[$thread['prefix']]['displaystyle'].'&nbsp;';

			}

			}


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


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

Zeile 1696Zeile 1721

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


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

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


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

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

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

				if(empty($readforums[$thread['fid']]) || $readforums[$thread['fid']] < $read_cutoff)

				{
$forum_read = $read_cutoff;

				{
$forum_read = $read_cutoff;

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

				}
}


				}
}


Zeile 1713Zeile 1740

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


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

				if($thread['lastread'])

				if(!empty($thread['lastread']))

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

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

				}
else

				}
else

				{
$lastread = 1;
}

				{
$lastread = 1;
}

Zeile 1749Zeile 1776
			{
$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'])
{

Zeile 1772Zeile 1799

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


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

 
			$lastposteruid = $thread['lastposteruid'];

			if(!$lastposteruid && !$thread['lastposter'])

			if(!$lastposteruid && !$thread['lastposter'])

			{

			{

				$lastposter = htmlspecialchars_uni($lang->guest);

				$lastposter = htmlspecialchars_uni($lang->guest);

			}

			}

			else
{
$lastposter = htmlspecialchars_uni($thread['lastposter']);
}

			else
{
$lastposter = htmlspecialchars_uni($thread['lastposter']);
}

			$lastposteruid = $thread['lastposteruid'];

 

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


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

Zeile 2387Zeile 2414
	else
{
// User is allowed to edit their signature

	else
{
// User is allowed to edit their signature

 
		$smilieinserter = '';

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

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

Zeile 2420Zeile 2448
		{
$sigimgcode = $lang->off;
}

		{
$sigimgcode = $lang->off;
}

 

if($mybb->settings['siglength'] == 0)
{
$siglength = $lang->unlimited;
}
else
{
$siglength = $mybb->settings['siglength'];
}


		$sig = htmlspecialchars_uni($sig);

		$sig = htmlspecialchars_uni($sig);

		$lang->edit_sig_note2 = $lang->sprintf($lang->edit_sig_note2, $sigsmilies, $sigmycode, $sigimgcode, $sightml, $mybb->settings['siglength']);

		$lang->edit_sig_note2 = $lang->sprintf($lang->edit_sig_note2, $sigsmilies, $sigmycode, $sigimgcode, $sightml, $siglength);


if($mybb->settings['sigmycode'] != 0 && $mybb->settings['bbcodeinserter'] != 0 && $mybb->user['showcodebuttons'] != 0)
{


if($mybb->settings['sigmycode'] != 0 && $mybb->settings['bbcodeinserter'] != 0 && $mybb->user['showcodebuttons'] != 0)
{

Zeile 2435Zeile 2473

output_page($editsig);
}


output_page($editsig);
}





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

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

Zeile 2457Zeile 2495
		remove_avatars($mybb->user['uid']);
}
elseif($_FILES['avatarupload']['name']) // upload avatar

		remove_avatars($mybb->user['uid']);
}
elseif($_FILES['avatarupload']['name']) // upload avatar

	{

	{

		if($mybb->usergroup['canuploadavatars'] == 0)
{
error_no_permission();
}
$avatar = upload_avatar();

		if($mybb->usergroup['canuploadavatars'] == 0)
{
error_no_permission();
}
$avatar = upload_avatar();

		if($avatar['error'])

		if(!empty($avatar['error']))

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

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

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

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

 
	}
elseif(!$mybb->settings['allowremoteavatars'] && !$_FILES['avatarupload']['name']) // missing avatar image
{
$avatar_error = $lang->error_avatarimagemissing;

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

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

Zeile 3197Zeile 3239
			{
echo "\$(\"#".$mybb->get_input('manage')."_count\").html(\"0\");\n";
echo "\$(\"#buddylink\").remove();\n";

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

				



				if($mybb->get_input('manage') == "ignored")
{
echo "\$(\"#ignore_list\").html(\"<li>{$lang->ignore_list_empty}</li>\");\n";

				if($mybb->get_input('manage') == "ignored")
{
echo "\$(\"#ignore_list\").html(\"<li>{$lang->ignore_list_empty}</li>\");\n";

Zeile 3236Zeile 3278
	$buddy_count = 0;
$buddy_list = '';
if($mybb->user['buddylist'])

	$buddy_count = 0;
$buddy_list = '';
if($mybb->user['buddylist'])

	{

	{

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

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

Zeile 3244Zeile 3286
			$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'])

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

			{

			{

				$status = "online";

				$status = "online";

			}

			}

			else
{
$status = "offline";
}
eval("\$buddy_list .= \"".$templates->get("usercp_editlists_user")."\";");
++$buddy_count;

			else
{
$status = "offline";
}
eval("\$buddy_list .= \"".$templates->get("usercp_editlists_user")."\";");
++$buddy_count;

		}
}


		}
}


	$lang->current_buddies = $lang->sprintf($lang->current_buddies, $buddy_count);
if(!$buddy_list)
{

	$lang->current_buddies = $lang->sprintf($lang->current_buddies, $buddy_count);
if(!$buddy_list)
{

Zeile 3326Zeile 3368

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>";
}
else

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

Zeile 3338Zeile 3379
		exit;
}


		exit;
}


	$received_rows = '';

	$received_rows = $bgcolor = '';

	$query = $db->query("
SELECT r.*, u.username
FROM ".TABLE_PREFIX."buddyrequests r

	$query = $db->query("
SELECT r.*, u.username
FROM ".TABLE_PREFIX."buddyrequests r

Zeile 3356Zeile 3397
	if($received_rows == '')
{
eval("\$received_rows = \"".$templates->get("usercp_editlists_no_requests")."\";");

	if($received_rows == '')
{
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 = '';

	$sent_rows = $bgcolor = '';

	$query = $db->query("
SELECT r.*, u.username
FROM ".TABLE_PREFIX."buddyrequests r

	$query = $db->query("
SELECT r.*, u.username
FROM ".TABLE_PREFIX."buddyrequests r

Zeile 3407Zeile 3448
			LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)
LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid=t.fid)
WHERE p.uid = '{$mybb->user['uid']}' AND p.visible = '-2'

			LEFT JOIN ".TABLE_PREFIX."threads t ON (t.tid=p.tid)
LEFT JOIN ".TABLE_PREFIX."forums f ON (f.fid=t.fid)
WHERE p.uid = '{$mybb->user['uid']}' AND p.visible = '-2'

			ORDER BY p.dateline DESC

			ORDER BY p.dateline DESC, p.pid DESC

		");

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

		");

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

Zeile 3482Zeile 3523
		$tidin = implode(",", $tidin);
$db->delete_query("threads", "tid IN ($tidin) AND visible='-2' AND uid='".$mybb->user['uid']."'");
$tidinp = "OR tid IN ($tidin)";

		$tidin = implode(",", $tidin);
$db->delete_query("threads", "tid IN ($tidin) AND visible='-2' AND uid='".$mybb->user['uid']."'");
$tidinp = "OR tid IN ($tidin)";

 
	}
else
{
$tidinp = '';

	}
if($pidin || $tidinp)
{

	}
if($pidin || $tidinp)
{

Zeile 3536Zeile 3581
	if($mybb->get_input('leavegroup', MyBB::INPUT_INT))
{
// Verify incoming POST request

	if($mybb->get_input('leavegroup', MyBB::INPUT_INT))
{
// Verify incoming POST request

		verify_post_check($mybb->input['my_post_key']);

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


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


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

Zeile 3598Zeile 3643
		$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'])

		if($joinrequest)

		{
error($lang->already_sent_join_request);
}

		{
error($lang->already_sent_join_request);
}

Zeile 3606Zeile 3651
		if($mybb->get_input('do') == "joingroup" && $usergroup['type'] == 4)
{
$reasonlength = my_strlen($mybb->get_input('reason'));

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

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

Zeile 3674Zeile 3719

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

		if($joinrequest['rid'])

		if($joinrequest)

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

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

Zeile 3745Zeile 3790
	$usergroup = $usergroups[$mybb->user['usergroup']];
$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);
$usergroup['usertitle'] = htmlspecialchars_uni($usergroup['usertitle']);

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

	$usergroup['description'] = htmlspecialchars_uni($usergroup['description']);





	if($usergroup['description'])
{
$usergroup['description'] = htmlspecialchars_uni($usergroup['description']);
eval("\$description = \"".$templates->get("usercp_usergroups_memberof_usergroup_description")."\";");
}

	eval("\$leavelink = \"".$templates->get("usercp_usergroups_memberof_usergroup_leaveprimary")."\";");
$trow = alt_trow();
if($usergroup['candisplaygroup'] == 1 && $usergroup['gid'] == $mybb->user['displaygroup'])

	eval("\$leavelink = \"".$templates->get("usercp_usergroups_memberof_usergroup_leaveprimary")."\";");
$trow = alt_trow();
if($usergroup['candisplaygroup'] == 1 && $usergroup['gid'] == $mybb->user['displaygroup'])

	{

	{

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

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

	{

	{

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

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





	eval("\$memberoflist = \"".$templates->get("usercp_usergroups_memberof_usergroup")."\";");
$showmemberof = false;
if($mybb->user['additionalgroups'])
{

	eval("\$memberoflist = \"".$templates->get("usercp_usergroups_memberof_usergroup")."\";");
$showmemberof = false;
if($mybb->user['additionalgroups'])
{

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








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

		while($usergroup = $db->fetch_array($query))
{
$showmemberof = true;

		while($usergroup = $db->fetch_array($query))
{
$showmemberof = true;

Zeile 3775Zeile 3831
				eval("\$leavelink = \"".$templates->get("usercp_usergroups_memberof_usergroup_leaveleader")."\";");
}
elseif($usergroup['type'] != 4 && $usergroup['type'] != 3 && $usergroup['type'] != 5)

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

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

			}

			}


$description = '';
$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);


$description = '';
$usergroup['title'] = htmlspecialchars_uni($usergroup['title']);

Zeile 3797Zeile 3853
				eval("\$displaycode = \"".$templates->get("usercp_usergroups_memberof_usergroup_display")."\";");
}
elseif($usergroup['candisplaygroup'] == 1)

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

			{

			{

				eval("\$displaycode = \"".$templates->get("usercp_usergroups_memberof_usergroup_setdisplay")."\";");
}
else

				eval("\$displaycode = \"".$templates->get("usercp_usergroups_memberof_usergroup_setdisplay")."\";");
}
else

Zeile 3808Zeile 3864
		}
}
eval("\$membergroups = \"".$templates->get("usercp_usergroups_memberof")."\";");

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





	// List of groups this user has applied for but has not been accepted in to
$query = $db->simple_select("joinrequests", "*", "uid='".$mybb->user['uid']."'");
while($request = $db->fetch_array($query))

	// List of groups this user has applied for but has not been accepted in to
$query = $db->simple_select("joinrequests", "*", "uid='".$mybb->user['uid']."'");
while($request = $db->fetch_array($query))

Zeile 3820Zeile 3876
	$existinggroups = $mybb->user['usergroup'];
if($mybb->user['additionalgroups'])
{

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

		$existinggroups .= ",".$mybb->user['additionalgroups'];








		$additionalgroups = implode(
',',
array_map(
'intval',
explode(',', $mybb->user['additionalgroups'])
)
);
$existinggroups .= ",".$additionalgroups;

	}

$joinablegroups = $joinablegrouplist = '';

	}

$joinablegroups = $joinablegrouplist = '';

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

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

	}

$plugins->run_hooks("usercp_attachments_start");

// Get unviewable forums
$f_perm_sql = '';

	}

$plugins->run_hooks("usercp_attachments_start");

// Get unviewable forums
$f_perm_sql = '';

	$unviewable_forums = get_unviewable_forums(true);
$inactiveforums = get_inactive_forums();
if($unviewable_forums)

	$unviewable_forums = get_unviewable_forums(true);
$inactiveforums = get_inactive_forums();
if($unviewable_forums)

Zeile 3930Zeile 3993
	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)
{
$start = ($page-1) * $perpage;

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

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

	}

	}

	else
{
$start = 0;

	else
{
$start = 0;

Zeile 3947Zeile 4010

$end = $start + $perpage;
$lower = $start+1;


$end = $start + $perpage;
$lower = $start+1;





	$query = $db->query("
SELECT a.*, p.subject, p.dateline, t.tid, t.subject AS threadsubject
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']."' {$f_perm_sql}

	$query = $db->query("
SELECT a.*, p.subject, p.dateline, t.tid, t.subject AS threadsubject
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']."' {$f_perm_sql}

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

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

	");

$bandwidth = $totaldownloads = $totalusage = $totalattachments = $processedattachments = 0;

	");

$bandwidth = $totaldownloads = $totalusage = $totalattachments = $processedattachments = 0;

Zeile 3974Zeile 4037
			$sizedownloads = $lang->sprintf($lang->attachment_size_downloads, $size, $attachment['downloads']);
$attachdate = my_date('relative', $attachment['dateline']);
$altbg = alt_trow();

			$sizedownloads = $lang->sprintf($lang->attachment_size_downloads, $size, $attachment['downloads']);
$attachdate = my_date('relative', $attachment['dateline']);
$altbg = alt_trow();





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

// Add to bandwidth total

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

// Add to bandwidth total

Zeile 3982Zeile 4045
			$totaldownloads += $attachment['downloads'];
$totalusage += $attachment['filesize'];
++$totalattachments;

			$totaldownloads += $attachment['downloads'];
$totalusage += $attachment['filesize'];
++$totalattachments;

		}

		}

		else
{
// This little thing delets attachments without a thread/post

		else
{
// This little thing delets attachments without a thread/post

Zeile 3991Zeile 4054
		++$processedattachments;
}


		++$processedattachments;
}


 
	$multipage = '';

	if($processedattachments >= $perpage || $page > 1)

	if($processedattachments >= $perpage || $page > 1)

	{

	{

		$query = $db->query("
SELECT SUM(a.filesize) AS ausage, COUNT(a.aid) AS acount
FROM ".TABLE_PREFIX."attachments a

		$query = $db->query("
SELECT SUM(a.filesize) AS ausage, COUNT(a.aid) AS acount
FROM ".TABLE_PREFIX."attachments a

Zeile 4022Zeile 4086
	}

$bandwidth = get_friendly_size($bandwidth);

	}

$bandwidth = get_friendly_size($bandwidth);

 

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


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


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

 
		$delete_button = '';

	}

$plugins->run_hooks("usercp_attachments_end");

	}

$plugins->run_hooks("usercp_attachments_end");

Zeile 4131Zeile 4198
	$useravatar = format_avatar($mybb->user['avatar'], $mybb->user['avatardimensions'], '100x100');
$avatar_username = htmlspecialchars_uni($mybb->user['username']);
eval("\$avatar = \"".$templates->get("usercp_currentavatar")."\";");

	$useravatar = format_avatar($mybb->user['avatar'], $mybb->user['avatardimensions'], '100x100');
$avatar_username = htmlspecialchars_uni($mybb->user['username']);
eval("\$avatar = \"".$templates->get("usercp_currentavatar")."\";");

 

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


$usergroup = htmlspecialchars_uni($groupscache[$mybb->user['usergroup']]['title']);
if($mybb->user['usergroup'] == 5 && $mybb->settings['regtype'] != "admin")


$usergroup = htmlspecialchars_uni($groupscache[$mybb->user['usergroup']]['title']);
if($mybb->user['usergroup'] == 5 && $mybb->settings['regtype'] != "admin")

Zeile 4138Zeile 4207
		eval("\$usergroup .= \"".$templates->get("usercp_resendactivation")."\";");
}
// Make reputations row

		eval("\$usergroup .= \"".$templates->get("usercp_resendactivation")."\";");
}
// Make reputations row

	$reputations = '';

	$reputation = '';

	if($mybb->usergroup['usereputationsystem'] == 1 && $mybb->settings['enablereputation'] == 1)
{
$reputation_link = get_reputation($mybb->user['reputation']);

	if($mybb->usergroup['usereputationsystem'] == 1 && $mybb->settings['enablereputation'] == 1)
{
$reputation_link = get_reputation($mybb->user['reputation']);

Zeile 4167Zeile 4236
		{
require_once MYBB_ROOT.'inc/datahandlers/warnings.php';
$warningshandler = new WarningsHandler('update');

		{
require_once MYBB_ROOT.'inc/datahandlers/warnings.php';
$warningshandler = new WarningsHandler('update');





			$warningshandler->expire_warnings();

$lang->current_warning_level = $lang->sprintf($lang->current_warning_level, $warning_level, $mybb->user['warningpoints'], $mybb->settings['maxwarningpoints']);

			$warningshandler->expire_warnings();

$lang->current_warning_level = $lang->sprintf($lang->current_warning_level, $warning_level, $mybb->user['warningpoints'], $mybb->settings['maxwarningpoints']);

Zeile 4187Zeile 4256
			{
$post_link = "";
if($warning['post_subject'])

			{
$post_link = "";
if($warning['post_subject'])

				{

				{

					$warning['post_subject'] = $parser->parse_badwords($warning['post_subject']);
$warning['post_subject'] = htmlspecialchars_uni($warning['post_subject']);
$warning['postlink'] = get_post_link($warning['pid']);

					$warning['post_subject'] = $parser->parse_badwords($warning['post_subject']);
$warning['post_subject'] = htmlspecialchars_uni($warning['post_subject']);
$warning['postlink'] = get_post_link($warning['pid']);

Zeile 4247Zeile 4316
	$mybb->user['posts'] = my_number_format($mybb->user['postnum']);

// Build referral link

	$mybb->user['posts'] = my_number_format($mybb->user['postnum']);

// Build referral link

 
	$referral_info = '';

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

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

Zeile 4272Zeile 4342
	$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))
{

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











		$where = array(
"s.uid={$mybb->user['uid']}",
"t.lastposteruid!={$mybb->user['uid']}",
get_visible_where('t')
);

if($unviewable_forums = get_unviewable_forums(true))
{
$where[] = "t.fid NOT IN ({$unviewable_forums})";
}

if($inactive_forums = get_inactive_forums())

		{

		{

			$visible = '';

			$where[] = "t.fid NOT IN ({$inactive_forums})";

		}

		}

 

$where = implode(' AND ', $where);


$query = $db->query("
SELECT s.*, t.*, t.username AS threadusername, u.username
FROM ".TABLE_PREFIX."threadsubscriptions s
LEFT JOIN ".TABLE_PREFIX."threads t ON (s.tid=t.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)


$query = $db->query("
SELECT s.*, t.*, t.username AS threadusername, u.username
FROM ".TABLE_PREFIX."threadsubscriptions s
LEFT JOIN ".TABLE_PREFIX."threads t ON (s.tid=t.tid)
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)

			WHERE s.uid='".$mybb->user['uid']."' {$visible}

			WHERE {$where}

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


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


 
		$subscriptions = array();

		$fpermissions = forum_permissions();

		$fpermissions = forum_permissions();

 


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

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

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



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

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


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


		if(is_array($subscriptions))

		if($subscriptions)

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


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


Zeile 4327Zeile 4412
					while($post = $db->fetch_array($query))
{
$subscriptions[$post['tid']]['doticon'] = 1;

					while($post = $db->fetch_array($query))
{
$subscriptions[$post['tid']]['doticon'] = 1;

					}
}


					}
}


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

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

 
				$latest_subscribed_threads = '';


foreach($subscriptions as $thread)
{


foreach($subscriptions as $thread)
{

Zeile 4340Zeile 4426
					$folder_label = '';
$gotounread = '';


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


					if($thread['tid'])

					if(!empty($thread['tid']))

					{
$bgcolor = alt_trow();
$thread['subject'] = $parser->parse_badwords($thread['subject']);

					{
$bgcolor = alt_trow();
$thread['subject'] = $parser->parse_badwords($thread['subject']);

Zeile 4372Zeile 4458
							$icon = "&nbsp;";
}


							$icon = "&nbsp;";
}


						if($thread['doticon'])

						if(!isset($thread['doticon']))

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

// Check to see which icon we display

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

// Check to see which icon we display

						if($thread['lastread'] && $thread['lastread'] < $thread['lastpost'])

						if(!empty($thread['lastread']) && $thread['lastread'] < $thread['lastpost'])

						{
$folder .= "new";
$folder_label .= $lang->icon_new;

						{
$folder .= "new";
$folder_label .= $lang->icon_new;

Zeile 4434Zeile 4520
	}

// User's Latest Threads

	}

// User's Latest Threads

 
	$where = array(
"t.uid={$mybb->user['uid']}",
get_visible_where('t')
);

if($unviewable_forums = get_unviewable_forums(true))
{
$where[] = "t.fid NOT IN ({$unviewable_forums})";
}

if($inactive_forums = get_inactive_forums())
{
$where[] = "t.fid NOT IN ({$inactive_forums})";
}

$where = implode(' AND ', $where);





	// Get unviewable forums
$f_perm_sql = '';
$unviewable_forums = get_unviewable_forums();
$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)";
}

$visible = " AND t.visible != 0";
if(is_moderator() == true)
{
$visible = '';
}


 
	$query = $db->query("
SELECT t.*, t.username AS threadusername, u.username
FROM ".TABLE_PREFIX."threads t
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)

	$query = $db->query("
SELECT t.*, t.username AS threadusername, u.username
FROM ".TABLE_PREFIX."threads t
LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid = t.uid)

		WHERE t.uid='".$mybb->user['uid']."' AND t.firstpost != 0 AND t.visible >= 0 {$visible}{$f_perm_sql}

		WHERE {$where}

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

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





	// Figure out whether we can view these threads...
$threadcache = array();
$fpermissions = forum_permissions();
while($thread = $db->fetch_array($query))
{

	// Figure out whether we can view these threads...
$threadcache = array();
$fpermissions = forum_permissions();
while($thread = $db->fetch_array($query))
{

		// Moderated, and not moderator?
if($thread['visible'] == 0 && is_moderator($thread['fid'], "canviewunapprove") === false)
{
continue;
}

$forumpermissions = $fpermissions[$thread['fid']];
if($forumpermissions['canview'] != 0 || $forumpermissions['canviewthreads'] != 0)
{
$threadcache[$thread['tid']] = $thread;
}

		$threadcache[$thread['tid']] = $thread;











	}

$latest_threads = '';

	}

$latest_threads = '';

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

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

			$plugins->run_hooks("usercp_latest_threads_thread"); 
if($thread['tid'])

			$plugins->run_hooks("usercp_latest_threads_thread");
if(!empty($thread['tid']))

			{
$bgcolor = alt_trow();
$folder = '';

			{
$bgcolor = alt_trow();
$folder = '';

Zeile 4590Zeile 4663
				$cutoff = 0;
if($thread['lastpost'] > $cutoff)
{

				$cutoff = 0;
if($thread['lastpost'] > $cutoff)
{

					if($thread['lastread'])

					if(!empty($thread['lastread']))

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

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

Zeile 4610Zeile 4683
				}

// Folder Icons

				}

// Folder Icons

				if($thread['doticon'])

				if(!empty($thread['doticon']))

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

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