Vergleich calendar.php - 1.8.4 - 1.8.36

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


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


$templatelist = "calendar_weekdayheader,calendar_weekrow_day,calendar_weekrow,calendar,calendar_addevent,calendar_move,calendar_year,calendar_day,calendar_select,calendar_repeats,calendar_weekview_day_event_time";
$templatelist .= ",calendar_weekview_day,calendar_weekview_day_event,calendar_mini_weekdayheader,calendar_mini_weekrow_day,calendar_mini_weekrow,calendar_mini,calendar_weekview_month,calendar_weekview";
$templatelist .= ",calendar_event_editbutton,calendar_event_modoptions,calendar_dayview_event,calendar_dayview,codebuttons,smilieinsert,smilieinsert_getmore,smilieinsert_smilie,smilieinsert_smilie_empty";
$templatelist .= ",calendar_jump,calendar_jump_option,calendar_editevent,calendar_dayview_birthdays_bday,calendar_dayview_birthdays,calendar_dayview_noevents,calendar_addeventlink,calendar_addevent_calendarselect_hidden";
$templatelist .= ",calendar_weekrow_day_birthdays,calendar_weekview_day_birthdays,calendar_year_sel,calendar_event_userstar,calendar_addevent_calendarselect,calendar_eventbit,calendar_event";

$templatelist = "calendar_weekdayheader,calendar_weekrow_day,calendar_weekrow,calendar,calendar_addevent,calendar_year,calendar_day,calendar_select,calendar_repeats,calendar_weekview_day_event_time,calendar_weekview_nextlink";
$templatelist .= ",calendar_weekview_day,calendar_weekview_day_event,calendar_mini_weekdayheader,calendar_mini_weekrow_day,calendar_mini_weekrow,calendar_mini,calendar_mini_weekrow_day_link,calendar_weekview_prevlink";
$templatelist .= ",calendar_event_editbutton,calendar_event_modoptions,calendar_dayview_event,calendar_dayview,codebuttons,calendar_weekrow_day_events,calendar_weekview_month,calendar_addeventlink,calendar_weekview";
$templatelist .= ",calendar_jump,calendar_jump_option,calendar_editevent,calendar_dayview_birthdays_bday,calendar_dayview_birthdays,calendar_dayview_noevents,calendar_addevent_calendarselect_hidden,calendar_nextlink";
$templatelist .= ",calendar_weekrow_day_birthdays,calendar_weekview_day_birthdays,calendar_year_sel,calendar_event_userstar,calendar_addevent_calendarselect,calendar_eventbit,calendar_event,calendar_move,calendar_prevlink";


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


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

 
require_once MYBB_ROOT."inc/functions_time.php";

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


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


Zeile 542Zeile 543
		eval("\$calendar_select .= \"".$templates->get("calendar_addevent_calendarselect_hidden")."\";");
}


		eval("\$calendar_select .= \"".$templates->get("calendar_addevent_calendarselect_hidden")."\";");
}


	$event_errors = '';





	if(!isset($event_errors))
{
$event_errors = '';
}


	$plugins->run_hooks("calendar_addevent_end");

	$plugins->run_hooks("calendar_addevent_end");





	eval("\$addevent = \"".$templates->get("calendar_addevent")."\";");
output_page($addevent);

	eval("\$addevent = \"".$templates->get("calendar_addevent")."\";");
output_page($addevent);

}





















































}

// Delete an event
if($mybb->input['action'] == "do_deleteevent" && $mybb->request_method == "post")
{
$query = $db->simple_select("events", "*", "eid='{$mybb->input['eid']}'");
$event = $db->fetch_array($query);

if(!$event)
{
error($lang->error_invalidevent);
}

$query = $db->simple_select("calendars", "*", "cid='{$event['cid']}'");
$calendar = $db->fetch_array($query);

// Invalid calendar?
if(!$calendar)
{
error($lang->invalid_calendar);
}

// Do we have permission to view this calendar or post events?
$calendar_permissions = get_calendar_permissions($calendar['cid']);
if($calendar_permissions['canviewcalendar'] != 1 || $calendar_permissions['canaddevents'] != 1)
{
error_no_permission();
}

if(($event['uid'] != $mybb->user['uid'] || $mybb->user['uid'] == 0) && $calendar_permissions['canmoderateevents'] != 1)
{
error_no_permission();
}

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

$plugins->run_hooks("calendar_do_deleteevent_start");

// Is the checkbox set?
if($mybb->get_input('delete', MyBB::INPUT_INT) == 1)
{
$db->delete_query("events", "eid='{$event['eid']}'");
$plugins->run_hooks("calendar_do_deleteevent_end");

// Redirect back to the main calendar view.
redirect("calendar.php", $lang->redirect_eventdeleted);
}
else
{
error($lang->delete_no_checkbox);
}
}


// Edit an event
if($mybb->input['action'] == "do_editevent" && $mybb->request_method == "post")
{
$query = $db->simple_select("events", "*", "eid='{$mybb->input['eid']}'");
$event = $db->fetch_array($query);


// Edit an event
if($mybb->input['action'] == "do_editevent" && $mybb->request_method == "post")
{
$query = $db->simple_select("events", "*", "eid='{$mybb->input['eid']}'");
$event = $db->fetch_array($query);





	if(!$event)
{
error($lang->error_invalidevent);

	if(!$event)
{
error($lang->error_invalidevent);

Zeile 573Zeile 629
	// Do we have permission to view this calendar or post events?
$calendar_permissions = get_calendar_permissions($calendar['cid']);
if($calendar_permissions['canviewcalendar'] != 1 || $calendar_permissions['canaddevents'] != 1)

	// Do we have permission to view this calendar or post events?
$calendar_permissions = get_calendar_permissions($calendar['cid']);
if($calendar_permissions['canviewcalendar'] != 1 || $calendar_permissions['canaddevents'] != 1)

	{

	{

		error_no_permission();
}


		error_no_permission();
}


Zeile 584Zeile 640

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


// Are we going to delete this event or just edit it?
if($mybb->get_input('delete', MyBB::INPUT_INT) == 1)
{
$db->delete_query("events", "eid='{$event['eid']}'");

// Redirect back to the main calendar view.
redirect("calendar.php", $lang->redirect_eventdeleted);
}

 

$plugins->run_hooks("calendar_do_editevent_start");



$plugins->run_hooks("calendar_do_editevent_start");


Zeile 752Zeile 799
	}

$event['name'] = htmlspecialchars_uni($event['name']);

	}

$event['name'] = htmlspecialchars_uni($event['name']);

 
	$event['timezone'] = (float)$event['timezone'];


add_breadcrumb(htmlspecialchars_uni($calendar['name']), get_calendar_link($calendar['cid']));
add_breadcrumb($event['name'], get_event_link($event['eid']));


add_breadcrumb(htmlspecialchars_uni($calendar['name']), get_calendar_link($calendar['cid']));
add_breadcrumb($event['name'], get_event_link($event['eid']));

Zeile 889Zeile 937
	{
$event_errors = '';
$mybb->input['calendar'] = $event['cid'];

	{
$event_errors = '';
$mybb->input['calendar'] = $event['cid'];

		$name = htmlspecialchars_uni($event['name']);

		$name = $event['name'];

		$description = htmlspecialchars_uni($event['description']);
if($event['private'] == 1)
{

		$description = htmlspecialchars_uni($event['description']);
if($event['private'] == 1)
{

Zeile 899Zeile 947
		{
$privatecheck = '';
}

		{
$privatecheck = '';
}

		$start_date = explode("-", gmdate("j-n-Y-g:i A", $event['starttime']+$event['timezone']*3600));

		$start_date = explode("-", gmdate("j-n-Y", $event['starttime']+$event['timezone']*3600));

		$single_day = $start_date[0];
$single_month[$start_date[1]] = " selected=\"selected\"";
$single_year = $start_date[2];

		$single_day = $start_date[0];
$single_month[$start_date[1]] = " selected=\"selected\"";
$single_year = $start_date[2];

Zeile 916Zeile 964
		}
if($event['endtime'])
{

		}
if($event['endtime'])
{

			$end_date = explode("-", gmdate("j-n-Y-g:i A", $event['endtime']+$event['timezone']*3600));

			$end_date = explode("-", gmdate("j-n-Y", $event['endtime']+$event['timezone']*3600));

			$end_day = $end_date[0];
$end_month[$end_date[1]] = " selected=\"selected\"";
$end_year = $end_date[2];

			$end_day = $end_date[0];
$end_month[$end_date[1]] = " selected=\"selected\"";
$end_year = $end_date[2];

Zeile 1211Zeile 1259
	}

if($calendar_permissions[$calendar['cid']]['canmoderateevents'] != 1)

	}

if($calendar_permissions[$calendar['cid']]['canmoderateevents'] != 1)

	{

	{

		error_no_permission();
}


		error_no_permission();
}


Zeile 1221Zeile 1269
	if(!$new_calendar)
{
error($lang->invalid_calendar);

	if(!$new_calendar)
{
error($lang->invalid_calendar);

	}


	}


	if($calendar_permissions[$mybb->input['new_calendar']]['canviewcalendar'] != 1)
{
error_no_permission();

	if($calendar_permissions[$mybb->input['new_calendar']]['canviewcalendar'] != 1)
{
error_no_permission();

Zeile 1239Zeile 1287
	$plugins->run_hooks("calendar_do_move_end");

redirect(get_event_link($event['eid']), $lang->redirect_eventmoved);

	$plugins->run_hooks("calendar_do_move_end");

redirect(get_event_link($event['eid']), $lang->redirect_eventmoved);

}


}


// Approve an event
if($mybb->input['action'] == "approve")

// Approve an event
if($mybb->input['action'] == "approve")

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

$query = $db->simple_select("events", "*", "eid='{$mybb->input['eid']}'");
$event = $db->fetch_array($query);

if(!$event)
{
error($lang->error_invalidevent);
}

$query = $db->simple_select("calendars", "*", "cid='{$event['cid']}'");
$calendar = $db->fetch_array($query);

// Invalid calendar?
if(!$calendar)
{
error($lang->invalid_calendar);
}

// Do we have permission to view this calendar?
$calendar_permissions = get_calendar_permissions($calendar['cid']);
if($calendar_permissions['canviewcalendar'] != 1)
{

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

$query = $db->simple_select("events", "*", "eid='{$mybb->input['eid']}'");
$event = $db->fetch_array($query);

if(!$event)
{
error($lang->error_invalidevent);
}

$query = $db->simple_select("calendars", "*", "cid='{$event['cid']}'");
$calendar = $db->fetch_array($query);

// Invalid calendar?
if(!$calendar)
{
error($lang->invalid_calendar);
}

// Do we have permission to view this calendar?
$calendar_permissions = get_calendar_permissions($calendar['cid']);
if($calendar_permissions['canviewcalendar'] != 1)
{

		error_no_permission();
}


		error_no_permission();
}


Zeile 1281Zeile 1329
	);

$plugins->run_hooks("calendar_approve_start");

	);

$plugins->run_hooks("calendar_approve_start");





	$db->update_query("events", $updated_event, "eid='{$event['eid']}'");

$plugins->run_hooks("calendar_approve_end");

	$db->update_query("events", $updated_event, "eid='{$event['eid']}'");

$plugins->run_hooks("calendar_approve_end");

Zeile 1294Zeile 1342
{
// 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'));





	$query = $db->simple_select("events", "*", "eid='{$mybb->input['eid']}'");
$event = $db->fetch_array($query);

	$query = $db->simple_select("events", "*", "eid='{$mybb->input['eid']}'");
$event = $db->fetch_array($query);





	if(!$event)
{
error($lang->error_invalidevent);

	if(!$event)
{
error($lang->error_invalidevent);

Zeile 1310Zeile 1358
	if(!$calendar)
{
error($lang->invalid_calendar);

	if(!$calendar)
{
error($lang->invalid_calendar);

	}

	}


// Do we have permission to view this calendar?
$calendar_permissions = get_calendar_permissions($calendar['cid']);


// Do we have permission to view this calendar?
$calendar_permissions = get_calendar_permissions($calendar['cid']);

Zeile 1318Zeile 1366
	{
error_no_permission();
}

	{
error_no_permission();
}


if($calendar_permissions['canmoderateevents'] != 1)
{
error_no_permission();
}


if($calendar_permissions['canmoderateevents'] != 1)
{
error_no_permission();
}


$updated_event = array(
"visible" => 0


$updated_event = array(
"visible" => 0

Zeile 1384Zeile 1432
		"allow_videocode" => $calendar['allowvideocode']
);


		"allow_videocode" => $calendar['allowvideocode']
);


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

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

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


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


	if($mybb->user['showvideos'] != 1 && $mybb->user['uid'] != 0 || $mybb->settings['guestvideos'] != 1 && $mybb->user['uid'] == 0)

	if($mybb->user['uid'] != 0 && $mybb->user['showvideos'] != 1 || $mybb->settings['guestvideos'] != 1 && $mybb->user['uid'] == 0)

	{
$event_parser_options['allow_videocode'] = 0;
}

	{
$event_parser_options['allow_videocode'] = 0;
}

Zeile 1397Zeile 1445
	$event['description'] = $parser->parse_message($event['description'], $event_parser_options);

// Get the usergroup

	$event['description'] = $parser->parse_message($event['description'], $event_parser_options);

// Get the usergroup

	if($event['username'])

	if($event['usergroup'])

	{

	{

		if(!$event['displaygroup'])
{
$event['displaygroup'] = $event['usergroup'];
}
$user_usergroup = $groupscache[$event['displaygroup']];
}

		$user_usergroup = usergroup_permissions($event['usergroup']);
}





	else
{

	else
{

		$user_usergroup = $groupscache[1];














		$user_usergroup = usergroup_permissions(1);
}

$displaygroupfields = array("title", "description", "namestyle", "usertitle", "stars", "starimage", "image");

if(!$event['displaygroup'])
{
$event['displaygroup'] = $event['usergroup'];
}

$display_group = usergroup_displaygroup($event['displaygroup']);
if(is_array($display_group))
{
$user_usergroup = array_merge($user_usergroup, $display_group);

	}

$titles_cache = $cache->read("usertitles");

	}

$titles_cache = $cache->read("usertitles");

Zeile 1415Zeile 1472
	// Event made by registered user
if($event['uid'] > 0 && $event['username'])
{

	// Event made by registered user
if($event['uid'] > 0 && $event['username'])
{

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

		$event['profilelink'] = build_profile_link(format_name($event['username'], $event['usergroup'], $event['displaygroup']), $event['uid']);


		$event['profilelink'] = build_profile_link(format_name($event['username'], $event['usergroup'], $event['displaygroup']), $event['uid']);


		$hascustomtitle = 0;

 
		if(trim($event['usertitle']) != "")
{

		if(trim($event['usertitle']) != "")
{

			$hascustomtitle = 1;

			// Do nothing, no need for an extra variable..

		}

		}


if($user_usergroup['usertitle'] != "" && !$hascustomtitle)

		elseif($user_usergroup['usertitle'] != "")


		{
$event['usertitle'] = $user_usergroup['usertitle'];
}
elseif(is_array($titles_cache) && !$user_usergroup['usertitle'])
{
reset($titles_cache);

		{
$event['usertitle'] = $user_usergroup['usertitle'];
}
elseif(is_array($titles_cache) && !$user_usergroup['usertitle'])
{
reset($titles_cache);

			foreach($titles_cache as $key => $title)

			foreach($titles_cache as $title)

			{

			{

				if($event['postnum'] >= $key)

				if($event['postnum'] >= $title['posts'])

				{

				{

					if(!$hascustomtitle)
{
$event['usertitle'] = $title['title'];
}

					$event['usertitle'] = $title['title'];




					$event['stars'] = $title['stars'];
$event['starimage'] = $title['starimage'];
break;

					$event['stars'] = $title['stars'];
$event['starimage'] = $title['starimage'];
break;

Zeile 1446Zeile 1499
		}

if($user_usergroup['stars'])

		}

if($user_usergroup['stars'])

		{

		{

			$event['stars'] = $user_usergroup['stars'];
}


			$event['stars'] = $user_usergroup['stars'];
}


Zeile 1475Zeile 1528
			$event['username'] = $lang->guest;
}


			$event['username'] = $lang->guest;
}


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

		$event['profilelink'] = format_name($event['username'], 1);

if($user_usergroup['usertitle'])

		$event['profilelink'] = format_name($event['username'], 1);

if($user_usergroup['usertitle'])

Zeile 1488Zeile 1542
		$event['userstars'] = '';
}


		$event['userstars'] = '';
}


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

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


if($event['ignoretimezone'] == 0)
{


if($event['ignoretimezone'] == 0)
{

		$offset = $event['timezone'];

		$offset = (float)$event['timezone'];

	}
else
{

	}
else
{

		$offset = $mybb->user['timezone'];

		$offset = (float)$mybb->user['timezone'];

	}

$event['starttime_user'] = $event['starttime']+$offset*3600;

	}

$event['starttime_user'] = $event['starttime']+$offset*3600;

Zeile 1506Zeile 1560
	if($event['endtime'] > 0 && $event['endtime'] != $event['starttime'])
{
$event['endtime_user'] = $event['endtime']+$offset*3600;

	if($event['endtime'] > 0 && $event['endtime'] != $event['starttime'])
{
$event['endtime_user'] = $event['endtime']+$offset*3600;

		$start_day = gmmktime(0, 0, 0, gmdate("n", $event['starttime_user']), gmdate("j", $event['starttime_user']), gmdate("Y", $event['starttime_user']));
$end_day = gmmktime(0, 0, 0, gmdate("n", $event['endtime_user']), gmdate("j", $event['endtime_user']), gmdate("Y", $event['endtime_user']));

		$start_day = adodb_gmmktime(0, 0, 0, gmdate("n", $event['starttime_user']), gmdate("j", $event['starttime_user']), gmdate("Y", $event['starttime_user']));
$end_day = adodb_gmmktime(0, 0, 0, gmdate("n", $event['endtime_user']), gmdate("j", $event['endtime_user']), gmdate("Y", $event['endtime_user']));

		$start_time = gmdate("Hi", $event['starttime_user']);
$end_time = gmdate("Hi", $event['endtime_user']);


		$start_time = gmdate("Hi", $event['starttime_user']);
$end_time = gmdate("Hi", $event['endtime_user']);


Zeile 1620Zeile 1674
	}

// Incoming year?

	}

// Incoming year?

	$mybb->input['year'] = $mybb->get_input('year', MyBB::INPUT_INT);
if($mybb->input['year'] && $mybb->input['year'] <= my_date("Y")+5)

	if(isset($mybb->input['year']) && $mybb->get_input('year', MyBB::INPUT_INT) <= my_date("Y")+5 && $mybb->get_input('year', MyBB::INPUT_INT) >= 1901)


	{

	{

		$year = $mybb->input['year'];

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

	}
else
{

	}
else
{

Zeile 1643Zeile 1696

// And day?
$mybb->input['day'] = $mybb->get_input('day', MyBB::INPUT_INT);


// And day?
$mybb->input['day'] = $mybb->get_input('day', MyBB::INPUT_INT);

	if($mybb->input['day'] && $mybb->input['day'] <= gmdate("t", gmmktime(0, 0, 0, $month, 1, $year)))

	if($mybb->input['day'] && $mybb->input['day'] <= gmdate("t", adodb_gmmktime(0, 0, 0, $month, 1, $year)))

	{
$day = $mybb->input['day'];
}

	{
$day = $mybb->input['day'];
}

Zeile 1680Zeile 1733
						$age = '';
}


						$age = '';
}


					$birthday['username'] = format_name($birthday['username'], $birthday['usergroup'], $birthday['displaygroup']);

					$birthday['username'] = format_name(htmlspecialchars_uni($birthday['username']), $birthday['usergroup'], $birthday['displaygroup']);

					$birthday['profilelink'] = build_profile_link($birthday['username'], $birthday['uid']);
eval("\$birthday_list .= \"".$templates->get("calendar_dayview_birthdays_bday", 1, 0)."\";");
$comma = $lang->comma;

					$birthday['profilelink'] = build_profile_link($birthday['username'], $birthday['uid']);
eval("\$birthday_list .= \"".$templates->get("calendar_dayview_birthdays_bday", 1, 0)."\";");
$comma = $lang->comma;

Zeile 1701Zeile 1754
		}
if($birthday_list)
{

		}
if($birthday_list)
{

			$bdaydate = my_date($mybb->settings['dateformat'], gmmktime(0, 0, 0, $month, $day, $year), 0, 0);

			$bdaydate = my_date($mybb->settings['dateformat'], adodb_gmmktime(0, 0, 0, $month, $day, $year), 0, 0);

			$lang->birthdays_on_day = $lang->sprintf($lang->birthdays_on_day, $bdaydate);
eval("\$birthdays = \"".$templates->get("calendar_dayview_birthdays", 1, 0)."\";");
}
}

// So now we fetch events for this month

			$lang->birthdays_on_day = $lang->sprintf($lang->birthdays_on_day, $bdaydate);
eval("\$birthdays = \"".$templates->get("calendar_dayview_birthdays", 1, 0)."\";");
}
}

// So now we fetch events for this month

	$start_timestamp = gmmktime(0, 0, 0, $month, $day, $year);
$end_timestamp = gmmktime(23, 59, 59, $month, $day, $year);

	$start_timestamp = adodb_gmmktime(0, 0, 0, $month, $day, $year);
$end_timestamp = adodb_gmmktime(23, 59, 59, $month, $day, $year);


$events_cache = get_events($calendar, $start_timestamp, $end_timestamp, $calendar_permissions['canmoderateevents']);



$events_cache = get_events($calendar, $start_timestamp, $end_timestamp, $calendar_permissions['canmoderateevents']);


Zeile 1728Zeile 1781
				"allow_videocode" => $calendar['allowvideocode']
);


				"allow_videocode" => $calendar['allowvideocode']
);


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

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

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


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


			if($mybb->user['showvideos'] != 1 && $mybb->user['uid'] != 0 || $mybb->settings['guestvideos'] != 1 && $mybb->user['uid'] == 0)

			if($mybb->user['uid'] != 0 && $mybb->user['showvideos'] != 1 || $mybb->settings['guestvideos'] != 1 && $mybb->user['uid'] == 0)

			{
$event_parser_options['allow_videocode'] = 0;
}

			{
$event_parser_options['allow_videocode'] = 0;
}

Zeile 1741Zeile 1794
			$event['description'] = $parser->parse_message($event['description'], $event_parser_options);

// Get the usergroup

			$event['description'] = $parser->parse_message($event['description'], $event_parser_options);

// Get the usergroup

			if($event['username'])

			if($event['usergroup'])

			{

			{

				if(!$event['displaygroup'])
{
$event['displaygroup'] = $event['usergroup'];
}
$user_usergroup = $groupscache[$event['displaygroup']];
}

				$user_usergroup = usergroup_permissions($event['usergroup']);
}





			else
{

			else
{

				$user_usergroup = $groupscache[1];














				$user_usergroup = usergroup_permissions(1);
}

$displaygroupfields = array("title", "description", "namestyle", "usertitle", "stars", "starimage", "image");

if(!$event['displaygroup'])
{
$event['displaygroup'] = $event['usergroup'];
}

$display_group = usergroup_displaygroup($event['displaygroup']);
if(is_array($display_group))
{
$user_usergroup = array_merge($user_usergroup, $display_group);

			}

$titles_cache = $cache->read("usertitles");

			}

$titles_cache = $cache->read("usertitles");

Zeile 1759Zeile 1821
			// Event made by registered user
if($event['uid'] > 0 && $event['username'])
{

			// Event made by registered user
if($event['uid'] > 0 && $event['username'])
{

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

				$event['profilelink'] = build_profile_link(format_name($event['username'], $event['usergroup'], $event['displaygroup']), $event['uid']);


				$event['profilelink'] = build_profile_link(format_name($event['username'], $event['usergroup'], $event['displaygroup']), $event['uid']);


				$hascustomtitle = 0;

 
				if(trim($event['usertitle']) != "")
{

				if(trim($event['usertitle']) != "")
{

					$hascustomtitle = 1;

					// Do nothing, no need for an extra variable..

				}

				}


if($user_usergroup['usertitle'] != "" && !$hascustomtitle)

				elseif($user_usergroup['usertitle'] != "")


				{
$event['usertitle'] = $user_usergroup['usertitle'];

				{
$event['usertitle'] = $user_usergroup['usertitle'];

				}

				}

				elseif(is_array($titles_cache) && !$user_usergroup['usertitle'])
{
reset($titles_cache);

				elseif(is_array($titles_cache) && !$user_usergroup['usertitle'])
{
reset($titles_cache);

					foreach($titles_cache as $key => $title)

					foreach($titles_cache as $title)

					{

					{

						if($event['postnum'] >= $key)

						if($event['postnum'] >= $title['posts'])

						{

						{

							if(!$hascustomtitle)
{
$event['usertitle'] = $title['title'];
}

							$event['usertitle'] = $title['title'];




							$event['stars'] = $title['stars'];
$event['starimage'] = $title['starimage'];
break;

							$event['stars'] = $title['stars'];
$event['starimage'] = $title['starimage'];
break;

Zeile 1790Zeile 1848
				}

if($user_usergroup['stars'])

				}

if($user_usergroup['stars'])

				{

				{

					$event['stars'] = $user_usergroup['stars'];

					$event['stars'] = $user_usergroup['stars'];

				}

				}


if(empty($event['starimage']))
{
$event['starimage'] = $user_usergroup['starimage'];


if(empty($event['starimage']))
{
$event['starimage'] = $user_usergroup['starimage'];

				}


				}


				$event['userstars'] = '';
for($i = 0; $i < $event['stars']; ++$i)

				$event['userstars'] = '';
for($i = 0; $i < $event['stars']; ++$i)

				{

				{

					eval("\$event['userstars'] .= \"".$templates->get("calendar_event_userstar", 1, 0)."\";");

					eval("\$event['userstars'] .= \"".$templates->get("calendar_event_userstar", 1, 0)."\";");

				}

				}


if($event['userstars'] && $event['starimage'] && $event['stars'])
{
$event['userstars'] .= "<br />";


if($event['userstars'] && $event['starimage'] && $event['stars'])
{
$event['userstars'] .= "<br />";

				}
}

				}
}

			// Created by a guest or an unknown user
else
{

			// Created by a guest or an unknown user
else
{

Zeile 1818Zeile 1876
					$event['username'] = $lang->guest;
}


					$event['username'] = $lang->guest;
}


				$event['username'] = $event['username'];

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

				$event['profilelink'] = format_name($event['username'], 1);

if($user_usergroup['usertitle'])

				$event['profilelink'] = format_name($event['username'], 1);

if($user_usergroup['usertitle'])

Zeile 1832Zeile 1890
				$event['userstars'] = '';
}


				$event['userstars'] = '';
}


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

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


if($event['ignoretimezone'] == 0)
{


if($event['ignoretimezone'] == 0)
{

				$offset = $event['timezone'];

				$offset = (float)$event['timezone'];

			}
else
{

			}
else
{

				$offset = $mybb->user['timezone'];

				$offset = (float)$mybb->user['timezone'];

			}

$event['starttime_user'] = $event['starttime']+$offset*3600;

			}

$event['starttime_user'] = $event['starttime']+$offset*3600;

Zeile 1850Zeile 1908
			if($event['endtime'] > 0 && $event['endtime'] != $event['starttime'])
{
$event['endtime_user'] = $event['endtime']+$offset*3600;

			if($event['endtime'] > 0 && $event['endtime'] != $event['starttime'])
{
$event['endtime_user'] = $event['endtime']+$offset*3600;

				$start_day = gmmktime(0, 0, 0, gmdate("n", $event['starttime_user']), gmdate("j", $event['starttime_user']), gmdate("Y", $event['starttime_user']));
$end_day = gmmktime(0, 0, 0, gmdate("n", $event['endtime_user']), gmdate("j", $event['endtime_user']), gmdate("Y", $event['endtime_user']));

				$start_day = adodb_gmmktime(0, 0, 0, gmdate("n", $event['starttime_user']), gmdate("j", $event['starttime_user']), gmdate("Y", $event['starttime_user']));
$end_day = adodb_gmmktime(0, 0, 0, gmdate("n", $event['endtime_user']), gmdate("j", $event['endtime_user']), gmdate("Y", $event['endtime_user']));

				$start_time = gmdate("Hi", $event['starttime_user']);
$end_time = gmdate("Hi", $event['endtime_user']);


				$start_time = gmdate("Hi", $event['starttime_user']);
$end_time = gmdate("Hi", $event['endtime_user']);


Zeile 1911Zeile 1969
				}
}
eval("\$events .= \"".$templates->get("calendar_dayview_event")."\";");

				}
}
eval("\$events .= \"".$templates->get("calendar_dayview_event")."\";");

		}
}

$yearsel = '';
for($year_sel = my_date("Y"); $year_sel < (my_date("Y") + 5); ++$year_sel)
{
eval("\$yearsel .= \"".$templates->get("calendar_year_sel")."\";");
}

$addevent = '';
if($mybb->usergroup['canaddevents'] == 1)
{

		}
}

$yearsel = '';
for($year_sel = my_date("Y"); $year_sel < (my_date("Y") + 5); ++$year_sel)
{
eval("\$yearsel .= \"".$templates->get("calendar_year_sel")."\";");
}

$addevent = '';
if($mybb->usergroup['canaddevents'] == 1)
{

		eval("\$addevent = \"".$templates->get("calendar_addeventlink")."\";");
}


		eval("\$addevent = \"".$templates->get("calendar_addeventlink")."\";");
}


Zeile 1949Zeile 2007
		$calendar = $db->fetch_array($query);
}
// Showing the default calendar

		$calendar = $db->fetch_array($query);
}
// Showing the default calendar

	else

	else

	{
$query = $db->simple_select("calendars", "*", "disporder='1'");
$calendar = $db->fetch_array($query);

	{
$query = $db->simple_select("calendars", "*", "disporder='1'");
$calendar = $db->fetch_array($query);

Zeile 1980Zeile 2038
	if(empty($mybb->input['week']))
{
list($day, $month, $year) = explode("-", my_date("j-n-Y"));

	if(empty($mybb->input['week']))
{
list($day, $month, $year) = explode("-", my_date("j-n-Y"));

		$php_weekday = gmdate("w", gmmktime(0, 0, 0, $month, $day, $year));

		$php_weekday = gmdate("w", adodb_gmmktime(0, 0, 0, $month, $day, $year));

		$my_weekday = array_search($php_weekday, $weekdays);
// So now we have the start day of this week to show
$start_day = $day-$my_weekday;

		$my_weekday = array_search($php_weekday, $weekdays);
// So now we have the start day of this week to show
$start_day = $day-$my_weekday;

		$mybb->input['week'] = gmmktime(0, 0, 0, $month, $start_day, $year);

		$mybb->input['week'] = adodb_gmmktime(0, 0, 0, $month, $start_day, $year);

	}
else
{
$mybb->input['week'] = (int)str_replace("n", "-", $mybb->get_input('week'));

	}
else
{
$mybb->input['week'] = (int)str_replace("n", "-", $mybb->get_input('week'));

		// No negative years please ;)
if($mybb->input['week'] < -62167219200)

		// Nothing before 1901 please ;)
if($mybb->input['week'] < -2177625600)

		{

		{

			$mybb->input['week'] = -62167219200;

			$mybb->input['week'] = -2177625600;

		}

		}

	}


	}


	// This is where we've come from and where we're headed
$week_from = explode("-", gmdate("j-n-Y", $mybb->input['week']));
$week_from_one = $week_from[1];
$friendly_week_from = gmdate($mybb->settings['dateformat'], $mybb->input['week']);

	// This is where we've come from and where we're headed
$week_from = explode("-", gmdate("j-n-Y", $mybb->input['week']));
$week_from_one = $week_from[1];
$friendly_week_from = gmdate($mybb->settings['dateformat'], $mybb->input['week']);

	$week_to_stamp = gmmktime(0, 0, 0, $week_from[1], $week_from[0]+6, $week_from[2]);

	$week_to_stamp = adodb_gmmktime(0, 0, 0, $week_from[1], $week_from[0]+6, $week_from[2]);

	$week_to = explode("-", gmdate("j-n-Y-t", $week_to_stamp));
$friendly_week_to = gmdate($mybb->settings['dateformat'], $week_to_stamp);

	$week_to = explode("-", gmdate("j-n-Y-t", $week_to_stamp));
$friendly_week_to = gmdate($mybb->settings['dateformat'], $week_to_stamp);





	add_breadcrumb(htmlspecialchars_uni($calendar['name']), get_calendar_link($calendar['cid']));
add_breadcrumb("{$monthnames[$week_from[1]]} {$week_from[2]}", get_calendar_link($calendar['cid'], $week_from[2], $week_from[1]));
add_breadcrumb($lang->weekly_overview);

$plugins->run_hooks("calendar_weekview_start");

	add_breadcrumb(htmlspecialchars_uni($calendar['name']), get_calendar_link($calendar['cid']));
add_breadcrumb("{$monthnames[$week_from[1]]} {$week_from[2]}", get_calendar_link($calendar['cid'], $week_from[2], $week_from[1]));
add_breadcrumb($lang->weekly_overview);

$plugins->run_hooks("calendar_weekview_start");





	// Establish if we have a month ending in this week
if($week_from[1] != $week_to[1])
{

	// Establish if we have a month ending in this week
if($week_from[1] != $week_to[1])
{

Zeile 2030Zeile 2088
	}

// We load events for the entire month date range - for our mini calendars too

	}

// We load events for the entire month date range - for our mini calendars too

	$events_from = gmmktime(0, 0, 0, $week_from[1], 1, $week_from[2]);
$events_to = gmmktime(0, 0, 0, $week_to[1], $week_to[3], $week_to[2]);

	$events_from = adodb_gmmktime(0, 0, 0, $week_from[1], 1, $week_from[2]);
$events_to = adodb_gmmktime(0, 0, 0, $week_to[1], $week_to[3], $week_to[2]);


$events_cache = get_events($calendar, $events_from, $events_to, $calendar_permissions['canmoderateevents']);

$today = my_date("dnY");



$events_cache = get_events($calendar, $events_from, $events_to, $calendar_permissions['canmoderateevents']);

$today = my_date("dnY");


	$next_week = $mybb->input['week'] + 604800;
$next_link = get_calendar_week_link($calendar['cid'], $next_week);

 
	$prev_week = $mybb->input['week'] - 604800;

	$prev_week = $mybb->input['week'] - 604800;

	$prev_link = get_calendar_week_link($calendar['cid'], $prev_week);

























$prev_week_link = '';
if(my_date("Y", $prev_week) >= 1901)
{
$prev_link = get_calendar_week_link($calendar['cid'], $prev_week);

eval("\$prev_week_link = \"".$templates->get("calendar_weekview_prevlink")."\";");
}

$next_week = $mybb->input['week'] + 604800;

$next_week_link = '';
if(my_date("Y", $next_week)+1 <= my_date("Y")+5)
{
$next_link = get_calendar_week_link($calendar['cid'], $next_week);

eval("\$next_week_link = \"".$templates->get("calendar_weekview_nextlink")."\";");
}

$sep = '';
if(!empty($prev_week_link) && !empty($next_week_link))
{
$sep = " | ";
}


$weekday_date = $mybb->input['week'];



$weekday_date = $mybb->input['week'];


Zeile 2077Zeile 2156
				$time_period = '';
if($event['endtime'] > 0 && $event['endtime'] != $event['starttime'])
{

				$time_period = '';
if($event['endtime'] > 0 && $event['endtime'] != $event['starttime'])
{

					$start_day = gmmktime(0, 0, 0, gmdate("n", $event['starttime_user']), gmdate("j", $event['starttime_user']), gmdate("Y", $event['starttime_user']));
$end_day = gmmktime(0, 0, 0, gmdate("n", $event['endtime_user']), gmdate("j", $event['endtime_user']), gmdate("Y", $event['endtime_user']));

					$start_day = adodb_gmmktime(0, 0, 0, gmdate("n", $event['starttime_user']), gmdate("j", $event['starttime_user']), gmdate("Y", $event['starttime_user']));
$end_day = adodb_gmmktime(0, 0, 0, gmdate("n", $event['endtime_user']), gmdate("j", $event['endtime_user']), gmdate("Y", $event['endtime_user']));

					$start_time = gmdate("Hi", $event['starttime_user']);
$end_time = gmdate("Hi", $event['endtime_user']);
// Event only runs over one day

					$start_time = gmdate("Hi", $event['starttime_user']);
$end_time = gmdate("Hi", $event['endtime_user']);
// Event only runs over one day

Zeile 2172Zeile 2251
		}
eval("\$day_bits[$weekday_month] .= \"".$templates->get("calendar_weekview_day")."\";");
$day_events = $day_birthdays = "";

		}
eval("\$day_bits[$weekday_month] .= \"".$templates->get("calendar_weekview_day")."\";");
$day_events = $day_birthdays = "";

		$weekday_date = gmmktime(0, 0, 0, $weekday_month, $weekday_day+1, $weekday_year);

		$weekday_date = adodb_gmmktime(0, 0, 0, $weekday_month, $weekday_day+1, $weekday_year);

	}

// Now we build our month headers

	}

// Now we build our month headers

Zeile 2237Zeile 2316
	$plugins->run_hooks("calendar_main_view");

// Incoming year?

	$plugins->run_hooks("calendar_main_view");

// Incoming year?

	$mybb->input['year'] = $mybb->get_input('year', MyBB::INPUT_INT);
if($mybb->input['year'] && $mybb->input['year'] <= my_date("Y")+5)

	if(isset($mybb->input['year']) && $mybb->get_input('year', MyBB::INPUT_INT) <= my_date("Y")+5 && $mybb->get_input('year', MyBB::INPUT_INT) >= 1901)


	{

	{

		$year = $mybb->input['year'];

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

	}
else
{

	}
else
{

Zeile 2261Zeile 2339
	add_breadcrumb(htmlspecialchars_uni($calendar['name']), get_calendar_link($calendar['cid']));
add_breadcrumb("$monthnames[$month] $year", get_calendar_link($calendar['cid'], $year, $month));


	add_breadcrumb(htmlspecialchars_uni($calendar['name']), get_calendar_link($calendar['cid']));
add_breadcrumb("$monthnames[$month] $year", get_calendar_link($calendar['cid'], $year, $month));


	$next_month = get_next_month($month, $year);

 
	$prev_month = get_prev_month($month, $year);


	$prev_month = get_prev_month($month, $year);


	$prev_link = get_calendar_link($calendar['cid'], $prev_month['year'], $prev_month['month']);
$next_link = get_calendar_link($calendar['cid'], $next_month['year'], $next_month['month']);






















	$prev_month_link = '';
if($prev_month['year'] >= 1901)
{
$prev_link = get_calendar_link($calendar['cid'], $prev_month['year'], $prev_month['month']);

eval("\$prev_month_link = \"".$templates->get("calendar_prevlink")."\";");
}

$next_month = get_next_month($month, $year);

$next_month_link = '';
if($next_month['year'] <= my_date("Y")+5)
{
$next_link = get_calendar_link($calendar['cid'], $next_month['year'], $next_month['month']);

eval("\$next_month_link = \"".$templates->get("calendar_nextlink")."\";");
}

$sep = '';
if(!empty($prev_month_link) && !empty($next_month_link))
{
$sep = " | ";
}


// Start constructing the calendar

$weekdays = fetch_weekday_structure($calendar['startofweek']);



// Start constructing the calendar

$weekdays = fetch_weekday_structure($calendar['startofweek']);


	$month_start_weekday = gmdate("w", gmmktime(0, 0, 0, $month, $calendar['startofweek']+1, $year));

	$month_start_weekday = gmdate("w", adodb_gmmktime(0, 0, 0, $month, $calendar['startofweek']+1, $year));





	$prev_month_days = gmdate("t", gmmktime(0, 0, 0, $prev_month['month'], 1, $prev_month['year']));

	$prev_month_days = gmdate("t", adodb_gmmktime(0, 0, 0, $prev_month['month'], 1, $prev_month['year']));


// This is if we have days in the previous month to show
if($month_start_weekday != $weekdays[0] || $calendar['startofweek'] != 0)
{


// This is if we have days in the previous month to show
if($month_start_weekday != $weekdays[0] || $calendar['startofweek'] != 0)
{

		$prev_days = $day = gmdate("t", gmmktime(0, 0, 0, $prev_month['month'], 1, $prev_month['year']));

		$prev_days = $day = gmdate("t", adodb_gmmktime(0, 0, 0, $prev_month['month'], 1, $prev_month['year']));

		$day -= array_search(($month_start_weekday), $weekdays);
$day += $calendar['startofweek']+1;
if($day > $prev_month_days+1)

		$day -= array_search(($month_start_weekday), $weekdays);
$day += $calendar['startofweek']+1;
if($day > $prev_month_days+1)

Zeile 2294Zeile 2392
		$day = $calendar['startofweek']+1;
$calendar_month = $month;
$calendar_year = $year;

		$day = $calendar['startofweek']+1;
$calendar_month = $month;
$calendar_year = $year;

	}

// So now we fetch events for this month (nb, cache events for past month, current month and next month for mini calendars too)
$start_timestamp = gmmktime(0, 0, 0, $calendar_month, $day, $calendar_year);
$num_days = gmdate("t", gmmktime(0, 0, 0, $month, 1, $year));

	}

// So now we fetch events for this month (nb, cache events for past month, current month and next month for mini calendars too)
$start_timestamp = adodb_gmmktime(0, 0, 0, $calendar_month, $day, $calendar_year);
$num_days = gmdate("t", adodb_gmmktime(0, 0, 0, $month, 1, $year));





	$month_end_weekday = gmdate("w", gmmktime(0, 0, 0, $month, $num_days, $year));

	$month_end_weekday = gmdate("w", adodb_gmmktime(0, 0, 0, $month, $num_days, $year));

	$next_days = 6-$month_end_weekday+$calendar['startofweek'];

// More than a week? Go one week back
if($next_days >= 7)

	$next_days = 6-$month_end_weekday+$calendar['startofweek'];

// More than a week? Go one week back
if($next_days >= 7)

	{

	{

		$next_days -= 7;

		$next_days -= 7;

	}

	}

	if($next_days > 0)

	if($next_days > 0)

	{
$end_timestamp = gmmktime(23, 59, 59, $next_month['month'], $next_days, $next_month['year']);

	{
$end_timestamp = adodb_gmmktime(23, 59, 59, $next_month['month'], $next_days, $next_month['year']);

	}
else
{
// We don't need days from the next month

	}
else
{
// We don't need days from the next month

		$end_timestamp = gmmktime(23, 59, 59, $month, $num_days, $year);
}

		$end_timestamp = adodb_gmmktime(23, 59, 59, $month, $num_days, $year);
}


$events_cache = get_events($calendar, $start_timestamp, $end_timestamp, $calendar_permissions['canmoderateevents']);



$events_cache = get_events($calendar, $start_timestamp, $end_timestamp, $calendar_permissions['canmoderateevents']);


Zeile 2345Zeile 2443
		{
// Current month always starts on 1st row
if($row == 0 && $day == $calendar['startofweek']+1)

		{
// Current month always starts on 1st row
if($row == 0 && $day == $calendar['startofweek']+1)

			{
$in_month = 1;

			{
$in_month = 1;

				$calendar_month = $month;
$calendar_year = $year;
}

				$calendar_month = $month;
$calendar_year = $year;
}

Zeile 2371Zeile 2469

if($weekday_id == 0)
{


if($weekday_id == 0)
{

				$week_stamp = gmmktime(0, 0, 0, $calendar_month, $day, $calendar_year);

				$week_stamp = adodb_gmmktime(0, 0, 0, $calendar_month, $day, $calendar_year);

				$week_link = get_calendar_week_link($calendar['cid'], $week_stamp);
}


				$week_link = get_calendar_week_link($calendar['cid'], $week_stamp);
}


Zeile 2379Zeile 2477
			{
break;
}

			{
break;
}


$day_events = '';

 

// Any events on this specific day?


// Any events on this specific day?

 
			$day_events = $event_lang = '';

			if(is_array($events_cache) && array_key_exists("{$day}-{$calendar_month}-{$calendar_year}", $events_cache))
{
$total_events = count($events_cache["$day-$calendar_month-$calendar_year"]);
if($total_events > $calendar['eventlimit'] && $calendar['eventlimit'] != 0)
{
if($total_events > 1)

			if(is_array($events_cache) && array_key_exists("{$day}-{$calendar_month}-{$calendar_year}", $events_cache))
{
$total_events = count($events_cache["$day-$calendar_month-$calendar_year"]);
if($total_events > $calendar['eventlimit'] && $calendar['eventlimit'] != 0)
{
if($total_events > 1)

					{
$day_events = "<div style=\"margin-bottom: 4px;\"><a href=\"".get_calendar_link($calendar['cid'], $calendar_year, $calendar_month, $day)."\" class=\"smalltext\">{$total_events} {$lang->events}</a></div>\n";
}

					{
$event_lang = $lang->events;
}

					else
{

					else
{

						$day_events = "<div style=\"margin-bottom: 4px;\"><a href=\"".get_calendar_link($calendar['cid'], $calendar_year, $calendar_month, $day)."\" class=\"smalltext\">1 {$lang->event}</a></div>\n";

						$event_lang = $lang->event;

					}

					}

 

$calendar['link'] = get_calendar_link($calendar['cid'], $calendar_year, $calendar_month, $day);
eval("\$day_events = \"".$templates->get("calendar_weekrow_day_events")."\";");

				}
else
{

				}
else
{

Zeile 2448Zeile 2548
			// Is the current day
if($day.$calendar_month.$year == $today && $month == $calendar_month)
{

			// Is the current day
if($day.$calendar_month.$year == $today && $month == $calendar_month)
{

				$day_class = "trow_sep";

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

			}
// Not in this month
else if($in_month == 0)
{

			}
// Not in this month
else if($in_month == 0)
{

				$day_class = "trow1";

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

			}
// Just a normal day in this month
else
{

			}
// Just a normal day in this month
else
{

				$day_class = "trow2";

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

			}

			}

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

 
			$day_birthdays = $day_events = "";
++$day;
}

			$day_birthdays = $day_events = "";
++$day;
}