Vergleich usercp.php - 1.8.22 - 1.8.30

  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 42Zeile 43
if($mybb->user['uid'] == 0 || $mybb->usergroup['canusercp'] == 0)
{
error_no_permission();

if($mybb->user['uid'] == 0 || $mybb->usergroup['canusercp'] == 0)
{
error_no_permission();

}

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

 
}

$errors = '';

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

}

$errors = '';

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





usercp_menu();

usercp_menu();


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

if(my_strpos($server_http_referer, $mybb->settings['bburl'].'/') !== 0)
{
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);






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

if(my_strpos($server_http_referer, $mybb->settings['bburl'].'/') !== 0)
{
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);
}

}

$plugins->run_hooks("usercp_start");

}

$plugins->run_hooks("usercp_start");

Zeile 84Zeile 83
	if(!$userhandler->verify_signature())
{
$error = inline_error($userhandler->get_friendly_errors());

	if(!$userhandler->verify_signature())
{
$error = inline_error($userhandler->get_friendly_errors());

	}

	}


if(isset($error) || !empty($mybb->input['preview']))
{


if(isset($error) || !empty($mybb->input['preview']))
{

Zeile 100Zeile 99
	case "profile":
case "do_profile":
add_breadcrumb($lang->ucp_nav_profile);

	case "profile":
case "do_profile":
add_breadcrumb($lang->ucp_nav_profile);

		break;

		break;

	case "options":
case "do_options":
add_breadcrumb($lang->nav_options);

	case "options":
case "do_options":
add_breadcrumb($lang->nav_options);

		break;

		break;

	case "email":
case "do_email":
add_breadcrumb($lang->nav_email);

	case "email":
case "do_email":
add_breadcrumb($lang->nav_email);

		break;

		break;

	case "password":
case "do_password":
add_breadcrumb($lang->nav_password);

	case "password":
case "do_password":
add_breadcrumb($lang->nav_password);

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

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

		break;

		break;

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

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

Zeile 144Zeile 143
		break;
case "usergroups":
add_breadcrumb($lang->ucp_nav_usergroups);

		break;
case "usergroups":
add_breadcrumb($lang->ucp_nav_usergroups);

		break;

		break;

	case "attachments":
add_breadcrumb($lang->ucp_nav_attachments);
break;

	case "attachments":
add_breadcrumb($lang->ucp_nav_attachments);
break;

}

}


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



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


	$plugins->run_hooks("usercp_do_profile_start");



	$user = array();

$plugins->run_hooks("usercp_do_profile_start");


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


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

Zeile 164Zeile 165
		{
// If the user has indicated that they will return on a specific day, but not month or year, assume it is current month and year
if(!$mybb->get_input('awaymonth', MyBB::INPUT_INT))

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

			{

			{

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

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

Zeile 180Zeile 181
			$returntimestamp = gmmktime(0, 0, 0, $return_month, $return_day, $return_year);
$awaytimestamp = gmmktime(0, 0, 0, my_date('n', $awaydate), my_date('j', $awaydate), my_date('Y', $awaydate));
if($return_year < my_date('Y', $awaydate) || ($returntimestamp < $awaytimestamp && $return_year == my_date('Y', $awaydate)))

			$returntimestamp = gmmktime(0, 0, 0, $return_month, $return_day, $return_year);
$awaytimestamp = gmmktime(0, 0, 0, my_date('n', $awaydate), my_date('j', $awaydate), my_date('Y', $awaydate));
if($return_year < my_date('Y', $awaydate) || ($returntimestamp < $awaytimestamp && $return_year == my_date('Y', $awaydate)))

			{

			{

				error($lang->error_usercp_return_date_past);
}


				error($lang->error_usercp_return_date_past);
}


Zeile 195Zeile 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 212Zeile 213
		"month" => $mybb->get_input('bday2', MyBB::INPUT_INT),
"year" => $mybb->get_input('bday3', MyBB::INPUT_INT)
);

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





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


$user = array_merge($user, array(

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

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

Zeile 226Zeile 227
		"birthdayprivacy" => $mybb->get_input('birthdayprivacy'),
"away" => $away,
"profile_fields" => $mybb->get_input('profile_fields', MyBB::INPUT_ARRAY)

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

	);

	));

	foreach(array('icq', 'skype', 'google') as $cfield)
{
$csetting = 'allow'.$cfield.'field';
if($mybb->settings[$csetting] == '')

	foreach(array('icq', 'skype', 'google') as $cfield)
{
$csetting = 'allow'.$cfield.'field';
if($mybb->settings[$csetting] == '')

		{
continue;
}

		{
continue;
}


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


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

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

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

 

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

		}
else

		}
else

		{

		{

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

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

		}
}








if(my_strlen($user[$cfield]) > 75)
{
error($lang->contact_field_error);
}
}
}


	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->usergroup['cancustomtitle'] == 1)
{

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

	}
else

	{
$userhandler->update_user();


	{
$userhandler->update_user();


Zeile 294Zeile 311
if($mybb->input['action'] == "profile")
{
if($errors)

if($mybb->input['action'] == "profile")
{
if($errors)

	{

	{

		$user = $mybb->input;
$bday = array();
$bday[0] = $mybb->get_input('bday1', MyBB::INPUT_INT);

		$user = $mybb->input;
$bday = array();
$bday[0] = $mybb->get_input('bday1', MyBB::INPUT_INT);

Zeile 302Zeile 319
		$bday[2] = $mybb->get_input('bday3', MyBB::INPUT_INT);
}
else

		$bday[2] = $mybb->get_input('bday3', MyBB::INPUT_INT);
}
else

	{

	{

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

		$user = $mybb->user;
$bday = explode("-", $user['birthday']);
if(!isset($bday[1]))
{
$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 751Zeile 768
	// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));


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


	$plugins->run_hooks("usercp_do_options_start");



	$user = array();

$plugins->run_hooks("usercp_do_options_start");


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

	$user = array_merge($user, array(

		"uid" => $mybb->user['uid'],
"style" => $mybb->get_input('style', MyBB::INPUT_INT),
"dateformat" => $mybb->get_input('dateformat', MyBB::INPUT_INT),

		"uid" => $mybb->user['uid'],
"style" => $mybb->get_input('style', MyBB::INPUT_INT),
"dateformat" => $mybb->get_input('dateformat', MyBB::INPUT_INT),

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

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

	);

	));


$user['options'] = array(
"allownotices" => $mybb->get_input('allownotices', MyBB::INPUT_INT),


$user['options'] = array(
"allownotices" => $mybb->get_input('allownotices', MyBB::INPUT_INT),

Zeile 823Zeile 842

if($mybb->input['action'] == "options")
{


if($mybb->input['action'] == "options")
{

	$plugins->run_hooks("usercp_options_start");


 
	if($errors != '')

	if($errors != '')

	{

	{

		$user = $mybb->input;
}
else
{
$user = $mybb->user;
}

		$user = $mybb->input;
}
else
{
$user = $mybb->user;
}

 

$plugins->run_hooks("usercp_options_start");


$languages = $lang->get_languages();
$board_language = $langoptions = '';


$languages = $lang->get_languages();
$board_language = $langoptions = '';

Zeile 864Zeile 883
		$allownoticescheck = "";
}


		$allownoticescheck = "";
}


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








	$canbeinvisible = '';

// Check usergroup permission before showing invisible check box
if($mybb->usergroup['canbeinvisible'] == 1)
{
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 880Zeile 906
	else
{
$hideemailcheck = "";

	else
{
$hideemailcheck = "";

	}

	}


$no_auto_subscribe_selected = $instant_email_subscribe_selected = $instant_pm_subscribe_selected = $no_subscribe_selected = '';
if(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 1)


$no_auto_subscribe_selected = $instant_email_subscribe_selected = $instant_pm_subscribe_selected = $no_subscribe_selected = '';
if(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 1)

	{

	{

		$no_subscribe_selected = "selected=\"selected\"";
}
elseif(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 2)

		$no_subscribe_selected = "selected=\"selected\"";
}
elseif(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 2)

Zeile 894Zeile 920
	elseif(isset($user['subscriptionmethod']) && $user['subscriptionmethod'] == 3)
{
$instant_pm_subscribe_selected = "selected=\"selected\"";

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

	}

	}

	else
{
$no_auto_subscribe_selected = "selected=\"selected\"";

	else
{
$no_auto_subscribe_selected = "selected=\"selected\"";

	}


	}


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

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

	{

	{

		$showimagescheck = "checked=\"checked\"";

		$showimagescheck = "checked=\"checked\"";

	}
else
{

	}
else
{

		$showimagescheck = "";
}

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

		$showimagescheck = "";
}

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

	{

	{

		$showvideoscheck = "checked=\"checked\"";

		$showvideoscheck = "checked=\"checked\"";

	}

	}

	else
{
$showvideoscheck = "";

	else
{
$showvideoscheck = "";

	}

	}


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


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

	}
else

	}
else

	{
$showsigscheck = "";
}

	{
$showsigscheck = "";
}

Zeile 939Zeile 965
	if(isset($user['showquickreply']) && $user['showquickreply'] == 1)
{
$showquickreplycheck = "checked=\"checked\"";

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

	}
else

	}
else

	{
$showquickreplycheck = "";
}

	{
$showquickreplycheck = "";
}

Zeile 1078Zeile 1104

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


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

	}


	}


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

$pms_from_buddys = '';

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

$pms_from_buddys = '';

Zeile 1102Zeile 1128

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


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

	{

	{

		$threadview[$user['threadmode']] = 'selected="selected"';
}
$daysprunesel = array(1 => '', 5 => '', 10 => '', 20 => '', 50 => '', 75 => '', 100 => '', 365 => '', 9999 => '');

		$threadview[$user['threadmode']] = 'selected="selected"';
}
$daysprunesel = array(1 => '', 5 => '', 10 => '', 20 => '', 50 => '', 75 => '', 100 => '', 365 => '', 9999 => '');

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

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

	}


	}


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


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


Zeile 1125Zeile 1151

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


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

	{

	{

		$explodedtpp = explode(",", $mybb->settings['usertppoptions']);
$tppoptions = $tpp_option = '';
if(is_array($explodedtpp))

		$explodedtpp = explode(",", $mybb->settings['usertppoptions']);
$tppoptions = $tpp_option = '';
if(is_array($explodedtpp))

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


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


 
	$user = array();

	$errors = array();

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

	$errors = array();

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

		$errors[] = $lang->error_invalidpassword;
}
else
{

		$errors[] = $lang->error_invalidpassword;
}
else
{

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

		$user = array_merge($user, array(

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

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

		);

		));


$userhandler->set_data($user);



$userhandler->set_data($user);


Zeile 1361Zeile 1388
	{
$mybb->input['action'] = "password";
$errors = inline_error($errors);

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

	}
}

	}
}


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


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

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

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





	$errors = array();

	$errors = array();


$plugins->run_hooks("usercp_do_changename_start");




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

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

 

$user = array();

$plugins->run_hooks("usercp_do_changename_start");


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


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

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


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


		$user = array(

		$user = array_merge($user, array(

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

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

		);

		));


$userhandler->set_data($user);



$userhandler->set_data($user);


Zeile 1411Zeile 1441
			$userhandler->update_user();
$plugins->run_hooks("usercp_do_changename_end");
redirect("usercp.php?action=changename", $lang->redirect_namechanged);

			$userhandler->update_user();
$plugins->run_hooks("usercp_do_changename_end");
redirect("usercp.php?action=changename", $lang->redirect_namechanged);



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

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

	}
}

	}
}


if($mybb->input['action'] == "changename")
{


if($mybb->input['action'] == "changename")
{

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

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


$plugins->run_hooks("usercp_do_subscriptions_start");

 

if(!isset($mybb->input['check']) || !is_array($mybb->input['check']))
{
error($lang->no_subscriptions_selected);
}


if(!isset($mybb->input['check']) || !is_array($mybb->input['check']))
{
error($lang->no_subscriptions_selected);
}

 

$plugins->run_hooks("usercp_do_subscriptions_start");


// Clean input - only accept integers thanks!
$mybb->input['check'] = array_map('intval', $mybb->get_input('check', MyBB::INPUT_ARRAY));


// Clean input - only accept integers thanks!
$mybb->input['check'] = array_map('intval', $mybb->get_input('check', MyBB::INPUT_ARRAY));

Zeile 1496Zeile 1525
	$plugins->run_hooks("usercp_subscriptions_start");

// Thread visiblity

	$plugins->run_hooks("usercp_subscriptions_start");

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


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


Zeile 1551Zeile 1591
		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 1559Zeile 1599
	{
$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 1666Zeile 1706
			else
{
$icon = "&nbsp;";

			else
{
$icon = "&nbsp;";

			}


			}


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

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

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

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

			{

			{

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

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

Zeile 1685Zeile 1725

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 1702Zeile 1744

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


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

				if($thread['lastread'])

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

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

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

Zeile 1761Zeile 1803

// 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'])
{
$lastposter = htmlspecialchars_uni($lang->guest);

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

			}
else

			}
else

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

			{
$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 1796Zeile 1838
				default: // No notification
$notification_type = $lang->no_notification;
}

				default: // No notification
$notification_type = $lang->no_notification;
}





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

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

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

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

	}
else

	}
else

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

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

Zeile 1820Zeile 1862
	$plugins->run_hooks("usercp_forumsubscriptions_start");

// Build a forum cache.

	$plugins->run_hooks("usercp_forumsubscriptions_start");

// Build a forum cache.

	$query = $db->query("

	$query = $db->query("

		SELECT f.fid, fr.dateline AS lastread
FROM ".TABLE_PREFIX."forums f
LEFT JOIN ".TABLE_PREFIX."forumsread fr ON (fr.fid=f.fid AND fr.uid='{$mybb->user['uid']}')

		SELECT f.fid, fr.dateline AS lastread
FROM ".TABLE_PREFIX."forums f
LEFT JOIN ".TABLE_PREFIX."forumsread fr ON (fr.fid=f.fid AND fr.uid='{$mybb->user['uid']}')

Zeile 1828Zeile 1870
		ORDER BY pid, disporder
");
$readforums = array();

		ORDER BY pid, disporder
");
$readforums = array();

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

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

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


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


Zeile 1845Zeile 1887
		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))
{

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

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

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

		}


		}


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

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

		{

		{

			eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_never")."\";");
}
// Hide last post
elseif(isset($forumpermissions['canonlyviewownthreads']) && $forumpermissions['canonlyviewownthreads'] != 0 && $forum['lastposteruid'] != $mybb->user['uid'])
{
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_hidden")."\";");

			eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_never")."\";");
}
// Hide last post
elseif(isset($forumpermissions['canonlyviewownthreads']) && $forumpermissions['canonlyviewownthreads'] != 0 && $forum['lastposteruid'] != $mybb->user['uid'])
{
eval("\$lastpost = \"".$templates->get("forumbit_depth2_forum_lastpost_hidden")."\";");

		}

		}

		else
{
$forum['lastpostsubject'] = $parser->parse_badwords($forum['lastpostsubject']);

		else
{
$forum['lastpostsubject'] = $parser->parse_badwords($forum['lastpostsubject']);

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

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





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

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

Zeile 1936Zeile 1978

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


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

	{

	{

		error($lang->error_invalidthread);
}

		error($lang->error_invalidthread);
}





	// Is the currently logged in user a moderator of this forum?

	// Is the currently logged in user a moderator of this forum?

	$ismod = is_moderator($thread['fid']);


	$ismod = is_moderator($thread['fid']);


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

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

	}


	}


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

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

Zeile 1980Zeile 2022
		$url = htmlspecialchars_uni($mybb->input['referrer']);
}
else

		$url = htmlspecialchars_uni($mybb->input['referrer']);
}
else

	{

	{

		$url = get_thread_link($thread['tid']);
}
redirect($url, $lang->redirect_subscriptionadded);
}

		$url = get_thread_link($thread['tid']);
}
redirect($url, $lang->redirect_subscriptionadded);
}





if($mybb->input['action'] == "addsubscription")

if($mybb->input['action'] == "addsubscription")

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

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


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

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


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

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





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

add_subscribed_forum($forum['fid']);
if($server_http_referer && $mybb->request_method != 'post')

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

add_subscribed_forum($forum['fid']);
if($server_http_referer && $mybb->request_method != 'post')

		{

		{

			$url = $server_http_referer;
}
else

			$url = $server_http_referer;
}
else

Zeile 2025Zeile 2067
	{
$thread = get_thread($mybb->get_input('tid', MyBB::INPUT_INT));
if(!$thread || $thread['visible'] == -1)

	{
$thread = get_thread($mybb->get_input('tid', MyBB::INPUT_INT));
if(!$thread || $thread['visible'] == -1)

		{
error($lang->error_invalidthread);
}


		{
error($lang->error_invalidthread);
}


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


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


Zeile 2036Zeile 2078
		if(($thread['visible'] != 1 && $ismod == false) || ($thread['visible'] > 1 && $ismod == true))
{
error($lang->error_invalidthread);

		if(($thread['visible'] != 1 && $ismod == false) || ($thread['visible'] > 1 && $ismod == true))
{
error($lang->error_invalidthread);

		}

		}


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


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

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

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

		}

		}


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


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

Zeile 2067Zeile 2109
		{
$notification_none_checked = "checked=\"checked\"";
}

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

		elseif($mybb->user['subscriptionmethod'] == 2)
{
$notification_email_checked = "checked=\"checked\"";
}

		elseif($mybb->user['subscriptionmethod'] == 2)
{
$notification_email_checked = "checked=\"checked\"";
}

		elseif($mybb->user['subscriptionmethod'] == 3)
{
$notification_pm_checked = "checked=\"checked\"";

		elseif($mybb->user['subscriptionmethod'] == 3)
{
$notification_pm_checked = "checked=\"checked\"";

Zeile 2085Zeile 2127
	}
}


	}
}


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

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

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

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

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

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

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

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

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

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

// Show remove subscription form when GET method and without valid my_post_key

if($mybb->input['action'] == "removesubscription")
{

if($mybb->input['action'] == "removesubscription")
{

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


	$referrer = '';



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

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

 
		}

add_breadcrumb($lang->nav_forumsubscriptions, "usercp.php?action=forumsubscriptions");
add_breadcrumb($lang->nav_removesubscription);

$forumpermissions = forum_permissions($forum['fid']);
if($forumpermissions['canview'] == 0 || $forumpermissions['canviewthreads'] == 0)
{
error_no_permission();

		}

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

		}

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

 

$lang->unsubscribe_from_forum = $lang->sprintf($lang->unsubscribe_from_forum, $forum['name']);


// Naming of the hook retained for backward compatibility while dropping usercp2.php


// Naming of the hook retained for backward compatibility while dropping usercp2.php

		$plugins->run_hooks("usercp2_removesubscription_forum");

remove_subscribed_forum($forum['fid']);
if($server_http_referer && $mybb->request_method != 'post')
{
$url = $server_http_referer;
}
else
{
$url = "usercp.php?action=forumsubscriptions";
}
redirect($url, $lang->redirect_forumsubscriptionremoved);

		$plugins->run_hooks("usercp2_removesubscription_display_forum");

eval("\$remove_forum_subscription = \"".$templates->get("usercp_removesubscription_forum")."\";");
output_page($remove_forum_subscription);
exit;








	}
else
{

	}
else
{

		$thread = get_thread($mybb->get_input('tid', MyBB::INPUT_INT));
if(!$thread)
{
error($lang->error_invalidthread);

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

		}

		}





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

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

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

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

		{

		{

			error($lang->error_invalidthread);

			error($lang->error_invalidthread);

 
		}

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

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

		}

// check if the forum requires a password to view. If so, we need to show a form to the user

		}

// check if the forum requires a password to view. If so, we need to show a form to the user

		check_forum_password($thread['fid']);

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







		check_forum_password($thread['fid']);

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

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





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

		eval("\$remove_thread_subscription = \"".$templates->get("usercp_removesubscription_thread")."\";");
output_page($remove_thread_subscription);
exit;








	}
}

if($mybb->input['action'] == "removesubscriptions")

	}
}

if($mybb->input['action'] == "removesubscriptions")

{

{

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

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





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

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





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

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

		if($server_http_referer)
{
$url = $server_http_referer;
}
else
{

		if($server_http_referer)
{
$url = $server_http_referer;
}
else
{

			$url = "usercp.php?action=forumsubscriptions";
}
redirect($url, $lang->redirect_forumsubscriptionsremoved);

			$url = "usercp.php?action=forumsubscriptions";
}
redirect($url, $lang->redirect_forumsubscriptionsremoved);

Zeile 2189Zeile 2308
		redirect($url, $lang->redirect_subscriptionsremoved);
}
}

		redirect($url, $lang->redirect_subscriptionsremoved);
}
}





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

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


$plugins->run_hooks("usercp_do_editsig_start");






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

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

	{
error_no_permission();
}




	{
error_no_permission();
}

$plugins->run_hooks("usercp_do_editsig_start");


	if($mybb->get_input('updateposts') == "enable")
{
$update_signature = array(

	if($mybb->get_input('updateposts') == "enable")
{
$update_signature = array(

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

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

		}
else

		}
else

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

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

		{

		{

			$sigmycode = $lang->on;

			$sigmycode = $lang->on;

		}
else
{

		}
else
{

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

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

		{

		{

			$sightml = $lang->on;

			$sightml = $lang->on;

		}
else
{

		}
else
{

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

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

		{

		{

			$sigimgcode = $lang->on;

			$sigimgcode = $lang->on;

		}
else
{

		}
else
{

			$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['bbcodeinserter'] != 0 || $mybb->user['showcodebuttons'] != 0)

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

		{
$codebuttons = build_mycode_inserter("signature");

		{
$codebuttons = build_mycode_inserter("signature");

		}


		}


		$plugins->run_hooks("usercp_editsig_end");

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

		$plugins->run_hooks("usercp_editsig_end");

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

	}


	}


	output_page($editsig);
}


	output_page($editsig);
}


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

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





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


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


Zeile 2373Zeile 2502
		if($mybb->usergroup['canuploadavatars'] == 0)
{
error_no_permission();

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

		}

		}

		$avatar = upload_avatar();

		$avatar = upload_avatar();

		if($avatar['error'])

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

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

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

Zeile 2392Zeile 2521
			);
$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 2400Zeile 2533
		{
// Gravatar
$mybb->input['avatarurl'] = my_strtolower($mybb->input['avatarurl']);

		{
// Gravatar
$mybb->input['avatarurl'] = my_strtolower($mybb->input['avatarurl']);





			// If user image does not exist, or is a higher rating, use the mystery man
$email = md5($mybb->input['avatarurl']);


			// If user image does not exist, or is a higher rating, use the mystery man
$email = md5($mybb->input['avatarurl']);


Zeile 2408Zeile 2541
			if(!$mybb->settings['maxavatardims'])
{
$mybb->settings['maxavatardims'] = '100x100'; // Hard limit of 100 if there are no limits

			if(!$mybb->settings['maxavatardims'])
{
$mybb->settings['maxavatardims'] = '100x100'; // Hard limit of 100 if there are no limits

			}

			}


// Because Gravatars are square, hijack the width
list($maxwidth, $maxheight) = preg_split('/[|x]/', my_strtolower($mybb->settings['maxavatardims']));


// Because Gravatars are square, hijack the width
list($maxwidth, $maxheight) = preg_split('/[|x]/', my_strtolower($mybb->settings['maxavatardims']));

Zeile 2476Zeile 2609
						$avatar_error = $lang->error_avatartoobig;
}
}

						$avatar_error = $lang->error_avatartoobig;
}
}

 
			}

// Limiting URL string to stay within database limit
if(strlen($mybb->input['avatarurl']) > 200)
{
$avatar_error = $lang->error_avatarurltoolong;

			}

if(empty($avatar_error))

			}

if(empty($avatar_error))

Zeile 3103Zeile 3242
			{
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 3123Zeile 3262
		$mybb->input['action'] = "editlists";
}
else

		$mybb->input['action'] = "editlists";
}
else

	{

	{

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

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

Zeile 3164Zeile 3303

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

	{
eval("\$buddy_list = \"".$templates->get("usercp_editlists_no_buddies")."\";");

	{
eval("\$buddy_list = \"".$templates->get("usercp_editlists_no_buddies")."\";");

	}

// Fetch out ignore list users

	}

// Fetch out ignore list users

Zeile 3232Zeile 3371

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 3244Zeile 3382
		exit;
}


		exit;
}


	$received_rows = '';

	$received_rows = $bgcolor = '';

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

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





	while($request = $db->fetch_array($query))
{
$bgcolor = alt_trow();
$request['username'] = build_profile_link(htmlspecialchars_uni($request['username']), (int)$request['uid']);
$request['date'] = my_date('relative', $request['date']);
eval("\$received_rows .= \"".$templates->get("usercp_editlists_received_request")."\";");

	while($request = $db->fetch_array($query))
{
$bgcolor = alt_trow();
$request['username'] = build_profile_link(htmlspecialchars_uni($request['username']), (int)$request['uid']);
$request['date'] = my_date('relative', $request['date']);
eval("\$received_rows .= \"".$templates->get("usercp_editlists_received_request")."\";");

	}


	}


	if($received_rows == '')

	if($received_rows == '')

	{

	{

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

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





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

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


$sent_rows = '';


$sent_rows = $bgcolor = '';

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

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


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


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

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

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

Zeile 3300Zeile 3438

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


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





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


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


Zeile 3313Zeile 3451
			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 3342Zeile 3480
			$draft['subject'] = htmlspecialchars_uni($draft['subject']);
$savedate = my_date('relative', $draft['dateline']);
eval("\$drafts .= \"".$templates->get("usercp_drafts_draft")."\";");

			$draft['subject'] = htmlspecialchars_uni($draft['subject']);
$savedate = my_date('relative', $draft['dateline']);
eval("\$drafts .= \"".$templates->get("usercp_drafts_draft")."\";");

		}
}

		}
}

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

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

	}

$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 3361Zeile 3499
	// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));


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


	$plugins->run_hooks("usercp_do_drafts_start");

 
	$mybb->input['deletedraft'] = $mybb->get_input('deletedraft', MyBB::INPUT_ARRAY);
if(empty($mybb->input['deletedraft']))
{
error($lang->no_drafts_selected);
}

	$mybb->input['deletedraft'] = $mybb->get_input('deletedraft', MyBB::INPUT_ARRAY);
if(empty($mybb->input['deletedraft']))
{
error($lang->no_drafts_selected);
}

 

$plugins->run_hooks("usercp_do_drafts_start");


	$pidin = array();
$tidin = array();

	$pidin = array();
$tidin = array();

 


	foreach($mybb->input['deletedraft'] as $id => $val)
{
if($val == "post")

	foreach($mybb->input['deletedraft'] as $id => $val)
{
if($val == "post")

Zeile 3385Zeile 3526
		$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 3406Zeile 3551

if($mybb->input['action'] == "usergroups")
{


if($mybb->input['action'] == "usergroups")
{

	$plugins->run_hooks("usercp_usergroups_start");

 
	$ingroups = ",".$mybb->user['usergroup'].",".$mybb->user['additionalgroups'].",".$mybb->user['displaygroup'].",";

	$ingroups = ",".$mybb->user['usergroup'].",".$mybb->user['additionalgroups'].",".$mybb->user['displaygroup'].",";





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

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

 

$plugins->run_hooks("usercp_usergroups_start");


// Changing our display group
if($mybb->get_input('displaygroup', MyBB::INPUT_INT))


// Changing our display group
if($mybb->get_input('displaygroup', MyBB::INPUT_INT))

Zeile 3438Zeile 3584
	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)
{
error($lang->not_member_of_group);


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

		}

		}

		if($mybb->user['usergroup'] == $mybb->get_input('leavegroup', MyBB::INPUT_INT))
{
error($lang->cannot_leave_primary_group);

		if($mybb->user['usergroup'] == $mybb->get_input('leavegroup', MyBB::INPUT_INT))
{
error($lang->cannot_leave_primary_group);

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

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

	}

$groupleaders = array();

	}

$groupleaders = array();


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


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

Zeile 3476Zeile 3622

// Joining a group
if($mybb->get_input('joingroup', MyBB::INPUT_INT))


// Joining a group
if($mybb->get_input('joingroup', MyBB::INPUT_INT))

	{

	{

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


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


Zeile 3488Zeile 3634
		}

if(($usergroup['type'] != 4 && $usergroup['type'] != 3) || !$usergroup['gid'])

		}

if(($usergroup['type'] != 4 && $usergroup['type'] != 3) || !$usergroup['gid'])

		{

		{

			error($lang->cannot_join_group);
}

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

			error($lang->cannot_join_group);
}

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

		}


		}


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


Zeile 3504Zeile 3650
		{
error($lang->already_sent_join_request);
}

		{
error($lang->already_sent_join_request);
}





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

Zeile 3655Zeile 3805
		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")."\";");

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

	}

	}

	else

	else

	{

	{

		$displaycode = '';
}


		$displaycode = '';
}


Zeile 3667Zeile 3817
	$showmemberof = false;
if($mybb->user['additionalgroups'])
{

	$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 3722Zeile 3879
	$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 3804Zeile 3968

if($mybb->input['action'] == "attachments")
{


if($mybb->input['action'] == "attachments")
{

	$plugins->run_hooks("usercp_attachments_start");

 
	require_once MYBB_ROOT."inc/functions_upload.php";

	require_once MYBB_ROOT."inc/functions_upload.php";





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

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

	}

// Get unviewable forums



	}

$plugins->run_hooks("usercp_attachments_start");

// Get unviewable forums

	$f_perm_sql = '';
$unviewable_forums = get_unviewable_forums(true);
$inactiveforums = get_inactive_forums();

	$f_perm_sql = '';
$unviewable_forums = get_unviewable_forums(true);
$inactiveforums = get_inactive_forums();

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

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

	}

$attachments = '';

	}







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

	$attachments = '';




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


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

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

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

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

 
	}
else
{

	}
else
{

Zeile 3865Zeile 4020
		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}

		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 = 0;

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

	while($attachment = $db->fetch_array($query))
{
if($attachment['dateline'] && $attachment['tid'])

	while($attachment = $db->fetch_array($query))
{
if($attachment['dateline'] && $attachment['tid'])

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

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

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

		}
else
{
// This little thing delets attachments without a thread/post
remove_attachment($attachment['pid'], $attachment['posthash'], $attachment['aid']);
}

		}
else
{
// This little thing delets attachments without a thread/post
remove_attachment($attachment['pid'], $attachment['posthash'], $attachment['aid']);
}

 
		++$processedattachments;
}

$multipage = '';
if($processedattachments >= $perpage || $page > 1)
{
$query = $db->query("
SELECT SUM(a.filesize) AS ausage, COUNT(a.aid) AS acount
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}
");
$usage = $db->fetch_array($query);
$totalusage = $usage['ausage'];
$totalattachments = $usage['acount'];

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

	}


	}


	$totalusage = $usage['ausage'];

 
	$friendlyusage = get_friendly_size((int)$totalusage);
if($mybb->usergroup['attachquota'])
{

	$friendlyusage = get_friendly_size((int)$totalusage);
if($mybb->usergroup['attachquota'])
{

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

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

	}

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

	}



	$bandwidth = get_friendly_size($bandwidth);

	$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 3933Zeile 4109
{
// Verify incoming POST request
verify_post_check($mybb->get_input('my_post_key'));

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


$plugins->run_hooks("usercp_do_attachments_start");




	require_once MYBB_ROOT."inc/functions_upload.php";
if(!isset($mybb->input['attachments']) || !is_array($mybb->input['attachments']))
{
error($lang->no_attachments_selected);
}

	require_once MYBB_ROOT."inc/functions_upload.php";
if(!isset($mybb->input['attachments']) || !is_array($mybb->input['attachments']))
{
error($lang->no_attachments_selected);
}

 

$plugins->run_hooks("usercp_do_attachments_start");


// Get unviewable forums
$f_perm_sql = '';


// Get unviewable forums
$f_perm_sql = '';

Zeile 3952Zeile 4129
	if($inactiveforums)
{
$f_perm_sql .= " AND p.fid NOT IN ($inactiveforums)";

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

	}

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

	}

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


$query = $db->query("
SELECT a.*, p.fid


$query = $db->query("
SELECT a.*, p.fid

Zeile 4140Zeile 4317
	$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 4165Zeile 4343
	$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($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 4225Zeile 4418

$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 4265Zeile 4459
							$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 4327Zeile 4521
	}

// 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 4421Zeile 4602
		$latest_threads_threads = '';
foreach($threadcache as $thread)
{

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

			$plugins->run_hooks("usercp_latest_threads_thread"); 

			$plugins->run_hooks("usercp_latest_threads_thread");

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

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

Zeile 4483Zeile 4664
				$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'];
}