diff options
Diffstat (limited to 'views/default')
28 files changed, 861 insertions, 688 deletions
diff --git a/views/default/event_calendar/conference_button.php b/views/default/event_calendar/conference_button.php new file mode 100644 index 000000000..f6fedf4f6 --- /dev/null +++ b/views/default/event_calendar/conference_button.php @@ -0,0 +1,32 @@ +<?php +// A non-admin / non-event-creator only sees the button if they have the event on his/her personal calendar  +// and it is at most 15 minutes before the conference starts. + +// The button is removed for everyone (even admins) one day after the conference ends. + +$event = $vars['event']; + +if ($event) { +	elgg_load_library('elgg:event_calendar'); +	$user_guid = elgg_get_logged_in_user_guid(); +	$termination_time = $event->real_end_time + 60*60*24; +	if ($termination_time < time()) { +		$in_time_window = FALSE; +	} else if ($event->canEdit()) { +		$in_time_window = TRUE; +	} else if (event_calendar_has_personal_event($event->guid, $user_guid) && ($event->start_date - 15*60) >= time()) { +		$in_time_window = TRUE; +	} else { +		$in_time_window = FALSE; +	} +	if ( $in_time_window ) { +		$button = elgg_view('output/url', array( +			'href' => event_calendar_get_join_bbb_url($event), +			'text' => elgg_echo('event_calendar:join_conf_button'), +			'class' => 'elgg-button elgg-button-action', +			'target' => '_blank', +		)); +	 +		echo '<div class="event-calendar-conf-join-button">'.$button.'</div>'; +	} +} diff --git a/views/default/event_calendar/container.php b/views/default/event_calendar/container.php new file mode 100644 index 000000000..cb5c8620c --- /dev/null +++ b/views/default/event_calendar/container.php @@ -0,0 +1,28 @@ +<?php +elgg_load_library('elgg:event_calendar'); +$site_calendar = elgg_get_plugin_setting('site_calendar', 'event_calendar'); +$group_calendar = elgg_get_plugin_setting('group_calendar', 'event_calendar'); +$admin = elgg_is_admin_logged_in(); +$containers = array(); +if (($site_calendar != 'no') && ($admin || !$site_calendar || ($site_calendar == 'loggedin'))) { +	$containers[0] = elgg_echo('event_calendar:site_calendar'); +} +$user = elgg_get_logged_in_user_entity(); +$groups = $user->getGroups('',0,0); +foreach ($groups as $group) { +	if (event_calendar_activated_for_group($group)) { +		if ($admin || !$group_calendar || $group_calendar == 'members') { +			if ($group->canWriteToContainer($user->guid)) { +				$containers[$group->guid] = $group->name; +			} +		} else if ($group->canEdit()) { +			$containers[$group->guid] = $group->name; +		} +	} +} +if ($vars['container_guid']) { +	$value = $vars['container_guid']; +} else { +	$value = 0; +} +echo elgg_view('input/dropdown',array('name'=>'group_guid', 'value'=>$vars['container_guid'],'options_values'=>$containers)); diff --git a/views/default/event_calendar/css.php b/views/default/event_calendar/css.php index a2437e065..c1dbf4633 100644 --- a/views/default/event_calendar/css.php +++ b/views/default/event_calendar/css.php @@ -171,8 +171,117 @@ li.event-calendar-filter-menu-show-only {  	margin-right: 10px;  } -.event-calendar-date-time-setter label { +.event-calendar-medium-text { +	width: 500px !important; +} + +.event-calendar-edit-form-block label {  	float: left; -	width: 50px; +	width: 90px; +	margin-top: 5px; +} + +.event-calendar-long-text { +	width: 500px !important; +} + +.event-calendar-edit-form-other-block .mceLayout  { +	width: 500px !important; +} + +.event-calendar-edit-form { +	background-color: #FFFFFF; +} + +.event-calendar-edit-form-block { +	width: 90%; +	background-color: #DDDDDD; +	border-width:1px; +	border-style:solid; +	border-color:#bfbfbf; +	padding: 5px; +	margin-bottom: 10px; +	clear: both; +} + +.event-calendar-repeating-wrapper { +	padding: 0;  	margin-top: 5px; -}
\ No newline at end of file +} +.event-calendar-repeating-unselected { +	font-size: 16px; +	font-weight: bold; +	color: #DDDDDD; +	background-color: #AAAAAA; +	border: 1px solid #444444; +	padding: 5px; +	width: 25px; +	text-align: center; +	display: inline-block; +	margin: 0; +} + +.event-calendar-repeating-unselected:hover { +	text-decoration: none; +} + +.event-calendar-repeating-selected { +	font-size: 16px; +	font-weight: bold; +	color: #000000; +	background-color: #FFFFFF; +	border: 1px solid #000000; +	padding: 5px; +	width: 25px; +	text-align: center; +	display: inline-block; +	margin: 0; +} + +.event-calendar-repeating-selected:hover { +	text-decoration: none; +	color: #CCCCCC; +} + +.event-calendar-edit-form-schedule-block ul.elgg-vertical li { +	display: block !important; +	clear: both; +} + +.event-calendar-edit-form-block ul.elgg-vertical li label { +	font-weight: normal; +	width: 500px; +} + +.event-calendar-edit-form-block h2 { +	font-size: 18px; +	color: #000000; +} + +.event-calendar-edit-date-wrapper { +	clear: both; +	margin-left: 20px; +	display: none; +} + +.event-calendar-edit-reminder-wrapper { +	margin-top: 10px; +	display: none; +} + +.event-calendar-edit-form-membership-block, .event-calendar-edit-form-share-block { +	display: none; +} + +.event-calendar-description { +	display: none; +} + +.event-calendar-edit-bottom { +	clear: both; +	margin-bottom: 5px; +} + +.event-calendar-date-selected { +	background-color: #DDDDFF; +} diff --git a/views/default/event_calendar/datetime_edit.php b/views/default/event_calendar/datetime_edit.php new file mode 100644 index 000000000..64af30f53 --- /dev/null +++ b/views/default/event_calendar/datetime_edit.php @@ -0,0 +1,49 @@ +<?php +$event_calendar_times = elgg_get_plugin_setting('times', 'event_calendar'); +$event_calendar_hide_end = elgg_get_plugin_setting('hide_end', 'event_calendar'); +$prefix = $vars['prefix']; +$body = ''; + +if ($event_calendar_times != 'no') { +	if ($event_calendar_hide_end != 'yes') { +		$body .= '<p><label>'.elgg_echo('event_calendar:from_label').'</label>'; +	} +	$body .= elgg_view("event_calendar/input/date_local",array( +		//'timestamp'=>TRUE,  +		'autocomplete'=>'off', +		'class'=>'event-calendar-compressed-date', +		'name' => 'start_date', +		'value'=>$vars['start_date'])); +	$body .= '<span id="event-calendar-start-time-wrapper">'; +	$body .= elgg_view("input/timepicker",array('name' => 'start_time','value'=>$vars['start_time'])); +	$body .= '</span>'; +	if ($event_calendar_hide_end != 'yes') { +		$body .= '</p><p id="event-calendar-to-time-wrapper"><label>'.elgg_echo('event_calendar:to_label').'</label>'; +		$body .= elgg_view("event_calendar/input/date_local",array( +			//'timestamp'=>TRUE, +			'autocomplete'=>'off', +			'class'=>'event-calendar-compressed-date', +			'name' => 'end_date', +			'value'=>$vars['end_date'], +		)); +		$body .= '<span id="event-calendar-end-time-wrapper">'; +		$body .= elgg_view("input/timepicker",array('name' => 'end_time','value'=>$vars['end_time'])); +		$body .= '</span>'; +	} +	$body .= '</p></span>'; +} else { + +	$body .= '<p><label>'.elgg_echo("event_calendar:start_date_label").'<br />'; +	$body .= elgg_view("event_calendar/input/date_local",array('timestamp'=>TRUE, 'autocomplete'=>'off','name' => 'start_date','value'=>$vars['start_date'])); +	$body .= '</label></p>'; +	$body .= '<p class="description">'.$prefix['start_date'].elgg_echo('event_calendar:start_date_description').'</p>'; +	 +	if ($event_calendar_hide_end != 'yes') {		 +		$body .= '<p id="event-calendar-to-time-wrapper"><label>'.elgg_echo("event_calendar:end_date_label").'<br />'; +		$body .= elgg_view("event_calendar/input/date_local",array('timestamp'=>TRUE,'autocomplete'=>'off','name' => 'end_date','value'=>$vars['end_date'])); +		$body .= '</label></p>'; +		//$body .= '<p class="description">'.$prefix['end_date'].elgg_echo('event_calendar:end_date_description').'</p>'; +	} +} + +echo $body;
\ No newline at end of file diff --git a/views/default/event_calendar/filter_menu.php b/views/default/event_calendar/filter_menu.php index 369d09e5f..926a29d0d 100644 --- a/views/default/event_calendar/filter_menu.php +++ b/views/default/event_calendar/filter_menu.php @@ -15,19 +15,25 @@ $tabs = array(  		'selected' => ($filter_context == 'all'),  		'priority' => 200,  	), -	'mine' => array( +); + +if (elgg_is_logged_in()) { +	$tabs ['mine'] = array(  		'text' => elgg_echo('event_calendar:show_mine'),  		'href' => "$url_start/mine",  		'selected' => ($filter_context == 'mine'),  		'priority' => 300, -	), -	'friend' => array( +	); +	$tabs['friend'] = array(  		'text' => elgg_echo('event_calendar:show_friends'),  		'href' =>  "$url_start/friends",  		'selected' => ($filter_context == 'friends'),  		'priority' => 400, -	), -); +	); +	$text_bit = '<li class="event-calendar-filter-menu-show-only">'.elgg_echo('event_calendar:show_only').'</li>'; +} else { +	$text_bit = ''; +}  $tab_rendered = array(); @@ -56,8 +62,6 @@ foreach ($tabs as $name => $tab) {  //echo elgg_view_menu('filter', array('sort_by' => 'priority', 'class' => 'elgg-menu-hz')); -$text_bit = '<li class="event-calendar-filter-menu-show-only">'.elgg_echo('event_calendar:show_only').'</li>'; -  $menu = <<<__MENU  <ul class="elgg-menu elgg-menu-filter elgg-menu-hz elgg-menu-filter-default">  	{$tab_rendered['open']} diff --git a/views/default/event_calendar/forms/add_to_group.php b/views/default/event_calendar/forms/add_to_group.php index f9640733c..2c8fdec53 100644 --- a/views/default/event_calendar/forms/add_to_group.php +++ b/views/default/event_calendar/forms/add_to_group.php @@ -72,5 +72,3 @@ if ($add_options || $remove_options) {  	}  	echo '</div>';  } -	 -?>
\ No newline at end of file diff --git a/views/default/event_calendar/forms/delete_confirm.php b/views/default/event_calendar/forms/delete_confirm.php deleted file mode 100644 index 37134e695..000000000 --- a/views/default/event_calendar/forms/delete_confirm.php +++ /dev/null @@ -1,13 +0,0 @@ -<?php - -$body = '<p class="description">'.sprintf(elgg_echo('event_calendar:delete_confirm_description'),$vars['title']).'</p>'; -                     -$body .= '<form action="'.$vars['url'].'action/event_calendar/manage" method="post" >'; -$body .= elgg_view('input/securitytoken'); -$body .= elgg_view('input/hidden',array('internalname'=>'event_action', 'value'=>'delete_event')); -$body .= elgg_view('input/hidden',array('internalname'=>'event_id', 'value'=>$vars['event_id'])); -$body .= elgg_view('input/submit', array('internalname'=>'submit','value'=>elgg_echo('event_calendar:submit'))); -$body .= '</form>'; - -echo elgg_view('page_elements/contentwrapper', array('body'=>$body)); -?>
\ No newline at end of file diff --git a/views/default/event_calendar/forms/manage_event.php b/views/default/event_calendar/forms/manage_event.php deleted file mode 100644 index f9d78e3f4..000000000 --- a/views/default/event_calendar/forms/manage_event.php +++ /dev/null @@ -1,22 +0,0 @@ -<?php - -/** - * Elgg manage event view - * - * @package event_calendar - * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 - * @author Kevin Jardine <kevin@radagast.biz> - * @copyright Radagast Solutions 2008 - * @link http://radagast.biz/ - * - */ - -elgg_extend_view('metatags','event_calendar/metatags'); -	  -$body = elgg_view('event_calendar/forms/manage_event_content',$vars); - -$body .= elgg_view('input/submit', array('internalname'=>'submit','value'=>elgg_echo('event_calendar:submit'))); -$form = elgg_view('input/form',array('action'=>$vars['url'].'action/event_calendar/manage','body'=>$body)); - -print elgg_view('page_elements/contentwrapper',array('body'=>$form)); -?>
\ No newline at end of file diff --git a/views/default/event_calendar/forms/manage_event_content.php b/views/default/event_calendar/forms/manage_event_content.php deleted file mode 100644 index f28788132..000000000 --- a/views/default/event_calendar/forms/manage_event_content.php +++ /dev/null @@ -1,254 +0,0 @@ -<?php -$event = $vars['event']; -$event_id = $vars['event_id']; -$event_calendar_times = get_plugin_setting('times', 'event_calendar'); -$event_calendar_region_display = get_plugin_setting('region_display', 'event_calendar'); -$event_calendar_type_display = get_plugin_setting('type_display', 'event_calendar'); -$event_calendar_spots_display = get_plugin_setting('spots_display', 'event_calendar'); -$event_calendar_add_users = get_plugin_setting('add_users', 'event_calendar'); -$event_calendar_hide_access = get_plugin_setting('hide_access', 'event_calendar'); -$event_calendar_hide_end = get_plugin_setting('hide_end', 'event_calendar'); -$event_calendar_more_required = get_plugin_setting('more_required', 'event_calendar'); - -if ($event_calendar_more_required == 'yes') { -	$required_fields = array('title','venue','start_date','start_time', -		'brief_description','region','event_type','fees','contact','organiser', -		'event_tags','spots'); -} else { -	$required_fields = array('title','venue','start_date'); -} -$all_fields = array('title','venue','start_time','start_date','end_time','end_date', -	'brief_description','region','event_type','fees','contact','organiser','event_tags', -	'long_description','spots'); -$prefix = array(); -foreach ($all_fields as $fn) { -	if (in_array($fn,$required_fields)) { -		$prefix[$fn] = elgg_echo('event_calendar:required').' '; -	} else { -		$prefix[$fn] = elgg_echo('event_calendar:optional').' '; -	} -} - -if ($event) { -	$title = $event->title; -	$brief_description = $event->description; -	$venue = $event->venue; -	if ($event->form_data) { -		// this is a form redisplay, so take the values as submitted -		$start_date = $event->start_date; -		$end_date = $event->end_date; -	} else { -		// the values are from the database, -		// so convert -		$start_date = date("l, F j, Y",$event->start_date); -		if ($event->end_date) { -			$end_date = date("l, F j, Y",$event->end_date); -		} else { -			$end_date = ''; -		} -	} -	 -	if ($event_calendar_region_display) { -		$region = $event->region; -		if (!$region) { -			$region = '-'; -		} -	} -	 -	if ($event_calendar_spots_display) { -		$spots = trim($event->spots); -	} -	if ($event_calendar_type_display) { -		$event_type = $event->event_type; -		if (!$event_type) { -			$event_type = '-'; -		} -	} -	$fees = $event->fees; -	$contact = $event->contact; -	$organiser = $event->organiser; -	$event_tags = $event->event_tags; -	$long_description = $event->long_description; -	$access = $event->access_id; -	if ($event_calendar_times == 'yes') { -		$start_time = $event->start_time; -		$end_time = $event->end_time; -	} -	$event_action = 'manage_event'; -} else { -	$event_id = 0; -	$title = ''; -	$brief_description = ''; -	$venue = ''; -	$start_date = ''; -	$end_date = ''; -	$fees = ''; -	if ($event_calendar_spots_display) { -		$spots = ''; -	} -	if ($event_calendar_region_display) { -		$region = '-'; -	} -	if ($event_calendar_type_display) { -		$event_type = '-'; -	} -	$contact = ''; -	$organiser = ''; -	$event_tags = ''; -	$long_description = ''; -	$access = get_default_access(); -	if ($event_calendar_times == 'yes') { -		$start_time = ''; -		$end_time = ''; -	} -	$event_action = 'add_event'; -} -$body = ''; - -$body .= elgg_view('input/hidden',array('internalname'=>'event_action', 'value'=>$event_action)); -$body .= elgg_view('input/hidden',array('internalname'=>'event_id', 'value'=>$event_id)); -$body .= elgg_view('input/hidden',array('internalname'=>'group_guid', 'value'=>$vars['group_guid'])); - -$body .= '<p><label>'.elgg_echo("event_calendar:title_label").'<br />'; -$body .= elgg_view("input/text",array('internalname' => 'title','value'=>$title)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['title'].elgg_echo('event_calendar:title_description').'</p>'; - -$body .= '<p><label>'.elgg_echo("event_calendar:venue_label").'<br />'; -$body .= elgg_view("input/text",array('internalname' => 'venue','value'=>$venue)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['venue'].elgg_echo('event_calendar:venue_description').'</p>'; - -if ($event_calendar_times != 'no') { -	$body .= '<p><label>'.elgg_echo("event_calendar:start_time_label").'</label><br />'; -	$body .= elgg_view("input/timepicker",array('internalname' => 'start_time','value'=>$start_time)); -	$body .= '</p>'; -	$body .= '<p class="description">'.$prefix['start_time'].elgg_echo('event_calendar:start_time_description').'</p>'; -} - -$body .= '<p><label>'.elgg_echo("event_calendar:start_date_label").'<br />'; -$body .= elgg_view("input/datepicker_popup",array('internalname' => 'start_date','value'=>$start_date)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['start_date'].elgg_echo('event_calendar:start_date_description').'</p>'; - -if ($event_calendar_hide_end != 'yes') { -	if ($event_calendar_times != 'no') { -		$body .= '<p><label>'.elgg_echo("event_calendar:end_time_label").'</label><br />'; -		$body .= elgg_view("input/timepicker",array('internalname' => 'end_time','value'=>$end_time)); -		$body .= '</p>'; -		$body .= '<p class="description">'.$prefix['end_time'].elgg_echo('event_calendar:end_time_description').'</p>'; -	} -	 -	$body .= '<p><label>'.elgg_echo("event_calendar:end_date_label").'<br />'; -	$body .= elgg_view("input/datepicker_popup",array('internalname' => 'end_date','value'=>$end_date)); -	$body .= '</label></p>'; -	$body .= '<p class="description">'.$prefix['end_date'].elgg_echo('event_calendar:end_date_description').'</p>'; -} - -if ($event_calendar_spots_display == 'yes') { -	$body .= '<p><label>'.elgg_echo("event_calendar:spots_label").'<br />'; -	$body .= elgg_view("input/text",array('internalname' => 'spots','value'=>$spots)); -	$body .= '</label></p>'; -	$body .= '<p class="description">'.$prefix['spots'].elgg_echo('event_calendar:spots_description').'</p>'; -} - -if ($event_calendar_add_users == 'yes') { -	$body .= '<p><label>'.elgg_echo("event_calendar:add_user_label").'<br />'; -	$body .= elgg_view("input/adduser",array('internalname' => 'adduser','internalid' => 'do_adduser','width'=> 200, 'minChars'=>2)); -	$body .= '</label></p><br /><br />'; -	$body .= '<p class="description">'.elgg_echo('event_calendar:add_user_description').'</p>'; -} - -$body .= '<p><label>'.elgg_echo("event_calendar:brief_description_label").'<br />'; -$body .= elgg_view("input/text",array('internalname' => 'brief_description','value'=>$brief_description)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['brief_description'].elgg_echo('event_calendar:brief_description_description').'</p>'; - -if ($event_calendar_region_display == 'yes') { -	$region_list = trim(elgg_get_plugin_setting('region_list', 'event_calendar')); -	$region_list_handles = elgg_get_plugin_setting('region_list_handles', 'event_calendar'); -	// make sure that we are using Unix line endings -	$region_list = str_replace("\r\n","\n",$region_list); -	$region_list = str_replace("\r","\n",$region_list); -	if ($region_list) { -		$options = array(); -		$options[] = '-'; -		foreach(explode("\n",$region_list) as $region_item) { -			$region_item = trim($region_item); -			if ($region_list_handles == 'yes') { -				$options[$region_item] = elgg_echo('event_calendar:region:'.$region_item); -			} else { -				$options[$region_item] = $region_item; -			} -		} -		$body .= '<p><label>'.elgg_echo("event_calendar:region_label").'<br />'; -		$body .= elgg_view("input/dropdown",array('internalname' => 'region','value'=>$region,'options_values'=>$options)); -		$body .= '</label></p>'; -		$body .= '<p class="description">'.$prefix['region'].elgg_echo('event_calendar:region_description').'</p>'; -	} -} - -if ($event_calendar_type_display == 'yes') { -	$type_list = trim(elgg_get_plugin_setting('type_list', 'event_calendar')); -	$type_list_handles = elgg_get_plugin_setting('type_list_handles', 'event_calendar'); -	// make sure that we are using Unix line endings -	$type_list = str_replace("\r\n","\n",$type_list); -	$type_list = str_replace("\r","\n",$type_list); -	if ($type_list) { -		$options = array(); -		$options[] = '-'; -		foreach(explode("\n",$type_list) as $type_item) { -			$type_item = trim($type_item); -			if ($type_list_handles == 'yes') { -				$options[$type_item] = elgg_echo('event_calendar:type:'.$type_item); -			} else { -				$options[$type_item] = $type_item; -			}			 -		} -		$body .= '<p><label>'.elgg_echo("event_calendar:type_label").'<br />'; -		$body .= elgg_view("input/dropdown",array('internalname' => 'event_type','value'=>$event_type,'options_values'=>$options)); -		$body .= '</label></p>'; -		$body .= '<p class="description">'.$prefix['event_type'].elgg_echo('event_calendar:type_description').'</p>'; -	} -} - -$body .= '<p><label>'.elgg_echo("event_calendar:fees_label").'<br />'; -$body .= elgg_view("input/text",array('internalname' => 'fees','value'=>$fees)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['fees'].elgg_echo('event_calendar:fees_description').'</p>'; - -$body .= '<p><label>'.elgg_echo("event_calendar:contact_label").'<br />'; -$body .= elgg_view("input/text",array('internalname' => 'contact','value'=>$contact)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['contact'].elgg_echo('event_calendar:contact_description').'</p>'; - -$body .= '<p><label>'.elgg_echo("event_calendar:organiser_label").'<br />'; -$body .= elgg_view("input/text",array('internalname' => 'organiser','value'=>$organiser)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['organiser'].elgg_echo('event_calendar:organiser_description').'</p>'; - -$body .= '<p><label>'.elgg_echo("event_calendar:event_tags_label").'<br />'; -$body .= elgg_view("input/tags",array('internalname' => 'event_tags','value'=>$event_tags)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['event_tags'].elgg_echo('event_calendar:event_tags_description').'</p>'; - -$body .= '<p><label>'.elgg_echo("event_calendar:long_description_label").'<br />'; -$body .= elgg_view("input/longtext",array('internalname' => 'long_description','value'=>$long_description)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['long_description'].elgg_echo('event_calendar:long_description_description').'</p>'; - -if($event_calendar_hide_access == 'yes') { -	$event_calendar_default_access = get_plugin_setting('default_access', 'event_calendar'); -	if($event_calendar_default_access) { -		$body .= elgg_view("input/hidden",array('internalname' => 'access','value'=>$event_calendar_default_access)); -	} else { -		$body .= elgg_view("input/hidden",array('internalname' => 'access','value'=>ACCESS_PRIVATE)); -	} -} else { -	$body .= '<p><label>'.elgg_echo("access").'<br />'; -	$body .= elgg_view("input/access",array('internalname' => 'access','value'=>$access)); -	$body .= '</label></p>'; -} - -print $body; -?>
\ No newline at end of file diff --git a/views/default/event_calendar/full_calendar_view.php b/views/default/event_calendar/full_calendar_view.php index 58aefe741..4316b5359 100644 --- a/views/default/event_calendar/full_calendar_view.php +++ b/views/default/event_calendar/full_calendar_view.php @@ -1,56 +1,85 @@  <?php  elgg_load_js('elgg.full_calendar'); - -$events = $vars['events']; - -$event_array = array(); -$times_supported = elgg_get_plugin_setting('times','event_calendar') != 'no'; - -foreach($events as $e) { -	$event_item = array( -		'guid' => $e->guid, -		//'title' => '<a href="'.$e->url.'">'.$e->title.'</a>', -		'title' => $e->title, -		'url' => $e->getURL(), -		'start_date' => $e->start_date, -		'end_date' => $e->real_end_time, -	); -	if ($times_supported) { -		$event_item['allDay'] = FALSE; -	} else { -		$event_item['allDay'] = TRUE; -	} - -	$event_array[] = $event_item; -} - -$json_events_string = json_encode($event_array); +elgg_load_js('lightbox'); +elgg_load_css('lightbox');  // TODO: is there an easy way to avoid embedding JS?  ?>  <script> +var goToDateFlag = 0; +  handleEventClick = function(event) {      if (event.url) { -        window.location.href = event.url; +        if (event.is_event_poll) { +        	window.location.href = event.url; +        } else {             +        	//window.location.href = event.url; +        	$.fancybox({'href':event.url}); +        }          return false;      }  }; -handleEventDrop = function(event,dayDelta,minuteDelta,allDay,revertFunc) { +handleDayClick = function(date,allDay,jsEvent,view) { +	var iso = getISODate(date); +	var link = $('.elgg-menu-item-event-calendar-0add').find('a').attr('href'); +	var ss = link.split('/'); +	var link = $('.elgg-menu-item-event-calendar-0add').find('a').attr('href'); +	var ss = link.split('/'); +	var last_ss = ss[ss.length-1]; +	var group_guid; +	if (last_ss == 'add') { +		group_guid = 0; +	} else if (last_ss.split('-').length == 3) { +		group_guid = ss[ss.length-2]; +	} else { +		group_guid = last_ss; +	} +	var url = elgg.get_site_url(); +	$('.fc-widget-content').removeClass('event-calendar-date-selected'); +	var current_iso = $('#event-calendar-selected-date').val(); +	if (current_iso == iso) { +		// deselect		 +		$('#event-calendar-selected-date').val(""); +		$('.elgg-menu-item-event-calendar-0add').find('a').attr('href',url+'event_calendar/add/'+group_guid); +		$('.elgg-menu-item-event-calendar-1schedule').find('a').attr('href',url+'event_calendar/schedule/'+group_guid); +	} else { +		$('#event-calendar-selected-date').val(iso); +		$('.elgg-menu-item-event-calendar-0add').find('a').attr('href',url+'event_calendar/add/'+group_guid+'/'+iso); +		$('.elgg-menu-item-event-calendar-1schedule').find('a').attr('href',url+'event_calendar/schedule/'+group_guid+'/'+iso); +		 +		$(this).addClass('event-calendar-date-selected'); +	} +} -    if (!confirm("Are you sure about this change?")) { +handleEventDrop = function(event,dayDelta,minuteDelta,allDay,revertFunc) { +	 +	if (!event.is_event_poll && !confirm("<?php echo elgg_echo('event_calendar:are_you_sure'); ?>")) {          revertFunc();      } else { +        if (event.is_event_poll) { +            if (confirm("<?php echo elgg_echo('event_calendar:resend_poll_invitation'); ?>")) { +            	var resend = 1; +	        } else { +	            resend = 0; +	        } +        	var data = {event_guid: event.guid, startTime: event.start.toISOString(), dayDelta: dayDelta, minuteDelta: minuteDelta, resend: resend, minutes: event.minutes, iso_date: event.iso_date}; +        } else { +        	data = {event_guid: event.guid, startTime: event.start.toISOString(), dayDelta: dayDelta, minuteDelta: minuteDelta}; +        }      	elgg.action('event_calendar/modify_full_calendar',      		{ -    			data: {event_guid: event.guid,dayDelta: dayDelta, minuteDelta: minuteDelta}, +    			data: data,      			success: function (res) {      				var success = res.success;      				var msg = res.message;      				if (!success) {      					elgg.register_error(msg,2000);      					revertFunc() +    				} else { +        				event.minutes = res.minutes; +        				event.iso_date = res.iso_date;      				}      			}      		} @@ -58,32 +87,85 @@ handleEventDrop = function(event,dayDelta,minuteDelta,allDay,revertFunc) {      }  }; -$(document).ready(function() { -	var events = <?php echo $json_events_string; ?>; -	var cal_events = []; -	for (var i = 0; i < events.length; i++) { -		cal_events.push({ -			guid: events[i].guid, -			title : events[i].title, -			url: events[i].url, -			start : new Date(1000*events[i].start_date), -			end : new Date(1000*events[i].end_date), -			allDay: events[i].allDay -		}); +getISODate = function(d) { +	var year = d.getFullYear(); +	var month = d.getMonth()+1; +	month =	month < 10 ? '0' + month : month; +	var day = d.getDate(); +	day = day < 10 ? '0' + day : day; +	return year +"-"+month+"-"+day; +} + +handleEventRender = function(event, element, view) { +	/*if (event.is_event_poll) { +		element.draggable = false; +	}*/ +} + +handleGetEvents = function(start, end, callback) { +	var start_date = getISODate(start); +	var end_date = getISODate(end); +	var url = "event_calendar/get_fullcalendar_events/"+start_date+"/"+end_date+"/<?php echo $vars['filter']; ?>/<?php echo $vars['group_guid']; ?>"; +	elgg.getJSON(url, {success:  +		function(events) { +			callback(events); +		} +	}); +	// reset date links and classes +	//$('.fc-widget-content').removeClass('event-calendar-date-selected'); +	var link = $('.elgg-menu-item-event-calendar-0add').find('a').attr('href'); +	if (link != undefined) { +		var ss = link.split('/'); +		var last_ss = ss[ss.length-1]; +		var group_guid; +		if (last_ss == 'add') { +			group_guid = 0; +		} else if (last_ss.split('-').length == 3) { +			group_guid = ss[ss.length-2]; +		} else { +			group_guid = last_ss; +		} +		var url = elgg.get_site_url(); +		$('.elgg-menu-item-event-calendar-0add').find('a').attr('href',url+'event_calendar/add/'+group_guid); +		$('.elgg-menu-item-event-calendar-1schedule').find('a').attr('href',url+'event_calendar/schedule/'+group_guid); +	} +} + +handleViewDisplay = function(view) { +	// TODO: finish this, need to highlight selected date if any +	var current_iso = $('#event-calendar-selected-date').val(); +	if (view == 'month') { +		goToDateFlag = 0; +	} else if (goToDateFlag == 0 && current_iso != "") { +		goToDateFlag = 1; +		var a = current_iso.split("-"); +		$('#calendar').fullCalendar('gotoDate',parseInt(a[0],10),parseInt(a[1],10)-1,parseInt(a[2],10)); +		//$('.fc-widget-content').removeClass('event-calendar-date-selected'); +		//$(".fc-widget-content[data-date='"+ciso+"']").addClass('event-calendar-date-selected');  	} +	//$(".fc-widget-content[data-date='20120105']") +} + +$(document).ready(function() {	  	$('#calendar').fullCalendar({  		header: {  			left: 'prev,next today',  			center: 'title',  			right: 'month,agendaWeek,agendaDay'  		}, +		month: <?php echo date('n',strtotime($vars['start_date']))-1; ?>, +		ignoreTimezone: true,  		editable: true,  		slotMinutes: 15, +		eventRender: handleEventRender,  		eventDrop: handleEventDrop,  		eventClick: handleEventClick, -		events: cal_events +		dayClick: handleDayClick, +		events: handleGetEvents, +		viewDisplay: handleViewDisplay,  	});  });  </script>  <div id='calendar'></div> +<input type="hidden" id="event-calendar-selected-date" /> diff --git a/views/default/event_calendar/groupprofile_calendar.php b/views/default/event_calendar/groupprofile_calendar.php index 7ee09104f..c71780be8 100644 --- a/views/default/event_calendar/groupprofile_calendar.php +++ b/views/default/event_calendar/groupprofile_calendar.php @@ -26,10 +26,8 @@ if (event_calendar_activated_for_group($page_owner_entity)) {  	if (is_array($events) && sizeof($events) > 0) {  		foreach($events as $event) { -			echo elgg_view("object/event_calendar",array('entity' => $event)); +			echo elgg_view("object/event_calendar",array('entity' => $event['event']));  		}      }  } -	 -?>
\ No newline at end of file diff --git a/views/default/event_calendar/input/date_local.php b/views/default/event_calendar/input/date_local.php index f4cb48d11..a0ce7f4d3 100644 --- a/views/default/event_calendar/input/date_local.php +++ b/views/default/event_calendar/input/date_local.php @@ -44,7 +44,6 @@ if ($timestamp) {  	$vars['class'] = "{$vars['class']} elgg-input-timestamp";  	$vars['id'] = $vars['name'];  	unset($vars['name']); -	unset($vars['internalname']);  }  // convert timestamps to text for display diff --git a/views/default/event_calendar/input/longtext.php b/views/default/event_calendar/input/longtext.php deleted file mode 100644 index 86b0f3fc4..000000000 --- a/views/default/event_calendar/input/longtext.php +++ /dev/null @@ -1,25 +0,0 @@ -<?php - -	/** -	 * Elgg long text input -	 * Displays a long text input field -	 *  -	 * @package Elgg -	 * @subpackage Core - -	 * @author Curverider Ltd - -	 * @link http://elgg.org/ -	 *  -	 * @uses $vars['value'] The current value, if any -	 * @uses $vars['js'] Any Javascript to enter into the input tag -	 * @uses $vars['internalname'] The name of the input field -	 *  -	 */ - -	$class = $vars['class']; -	if (!$class) $class = "input-textarea"; -	 -?> - -<textarea class="<?php echo $class; ?>" name="<?php echo $vars['internalname']; ?>" <?php if (isset($vars['internalid'])) echo "id=\"{$vars['internalid']}\""; ?> <?php if ($vars['disabled']) echo ' disabled="yes" '; ?> <?php echo $vars['js']; ?>><?php echo htmlentities($vars['value'], ENT_QUOTES, 'UTF-8'); ?></textarea> 
\ No newline at end of file diff --git a/views/default/event_calendar/personal_manage_section.php b/views/default/event_calendar/personal_manage_section.php new file mode 100644 index 000000000..9e03db0ab --- /dev/null +++ b/views/default/event_calendar/personal_manage_section.php @@ -0,0 +1,20 @@ +<?php +$fd = $vars['form_data']; +$event_calendar_personal_manage = elgg_get_plugin_setting('personal_manage', 'event_calendar'); +$body = ''; + +if ($event_calendar_personal_manage == 'by_event') { +	$personal_manage_options = array( +		elgg_echo('event_calendar:personal_manage:by_event:open') => 'open', +		elgg_echo('event_calendar:personal_manage:by_event:closed') => 'closed', +		elgg_echo('event_calendar:personal_manage:by_event:private') => 'private', +	); +	$body .= '<div class="event-calendar-edit-form-block event-calendar-edit-form-membership-block">'; +	$body .= '<h2>'.elgg_echo('event_calendar:personal_manage:label').'</h2>'; +	$body .= elgg_view("input/radio",array('name' => 'personal_manage','value'=>$fd['personal_manage'],'options'=>$personal_manage_options)); +	//$body .= '<p class="event-calendar-description">'.$prefix['personal_manage'].elgg_echo('event_calendar:personal_manage:description').'</p>'; +	$body .= '<br clear="both" />'; +	$body .= '</div>'; +} + +echo $body; diff --git a/views/default/event_calendar/reminder_section.php b/views/default/event_calendar/reminder_section.php new file mode 100644 index 000000000..fffa6d065 --- /dev/null +++ b/views/default/event_calendar/reminder_section.php @@ -0,0 +1,28 @@ +<?php +$fd = $vars['form_data']; +$event_calendar_reminders = elgg_get_plugin_setting('reminders', 'event_calendar'); +$body = ''; +if ($event_calendar_reminders == 'yes') { +	$body .= '<div class="event-calendar-edit-reminder-wrapper">'; +	if ($fd['send_reminder']) { +		$body .= elgg_view('input/checkbox',array('name'=>'send_reminder','checked' => 'checked','value'=>1)); +	} else { +		$body .= elgg_view('input/checkbox',array('name'=>'send_reminder','value'=>1)); +	} +	$body .= elgg_echo('elgg_calendar:send_reminder_label'). ' '; +	$numbers = array(); +	for ($i=1;$i<60;$i++) { +		$numbers[$i] = $i; +	} +	$intervals = array( +		1 => elgg_echo('event_calendar:interval:minute'), +		60 => elgg_echo('event_calendar:interval:hour'), +		60*24 => elgg_echo('event_calendar:interval:day'), +	); +	 +	$body .= elgg_view('input/dropdown',array('name'=>'reminder_number','options_values'=>$numbers,'value'=>$fd['reminder_number'])); +	$body .= elgg_view('input/dropdown',array('name'=>'reminder_interval','options_values'=>$intervals,'value'=>$fd['reminder_interval'])); +	$body .= elgg_echo('elgg_calendar:send_reminder_before'); +	$body .= '</div>'; +} +echo $body; diff --git a/views/default/event_calendar/repeat_form_element.php b/views/default/event_calendar/repeat_form_element.php new file mode 100644 index 000000000..45fdabfa1 --- /dev/null +++ b/views/default/event_calendar/repeat_form_element.php @@ -0,0 +1,43 @@ +<?php +$event = $vars['event']; +$fd = $vars['form_data']; +if ($fd['repeats'] == 'yes') { +	echo elgg_view('input/checkbox',array('name'=>'repeats','value'=>'yes','checked'=>'checked')); +} else { +	echo elgg_view('input/checkbox',array('name'=>'repeats','value'=>'yes')); +} +echo elgg_echo('event_calendar:repeat_interval_label').' '; +echo elgg_view('input/dropdown',array('name'=>'repeat_interval','value'=>$fd['repeat_interval'],'options_values'=>array('1'=>'1','2'=>'2','3'=>'3','4'=>'4','5'=>'5','6'=>'6','7'=>'7','8'=>'8'))); +echo ' '.elgg_echo('event_calendar:repeat_weeks'); +echo ' '.elgg_echo('event_calendar:on_these_days'); +?> +<div class="event-calendar-repeating-wrapper"> +<a id="event-calendar-repeating-monday" href="javascript:void(0);" class="event-calendar-repeating-unselected"> +	<?php echo elgg_echo('event_calendar:day_abbrev:monday'); ?> +</a> +<a id="event-calendar-repeating-tuesday" href="javascript:void(0);" class="event-calendar-repeating-unselected"> +	<?php echo elgg_echo('event_calendar:day_abbrev:tuesday'); ?> +</a> +<a id="event-calendar-repeating-wednesday" href="javascript:void(0);" class="event-calendar-repeating-unselected"> +	<?php echo elgg_echo('event_calendar:day_abbrev:wednesday'); ?> +</a> +<a id="event-calendar-repeating-thursday" href="javascript:void(0);" class="event-calendar-repeating-unselected"> +	<?php echo elgg_echo('event_calendar:day_abbrev:thursday'); ?> +</a> +<a id="event-calendar-repeating-friday" href="javascript:void(0);" class="event-calendar-repeating-unselected"> +	<?php echo elgg_echo('event_calendar:day_abbrev:friday'); ?> +</a> +<a id="event-calendar-repeating-saturday" href="javascript:void(0);" class="event-calendar-repeating-unselected"> +	<?php echo elgg_echo('event_calendar:day_abbrev:saturday'); ?> +</a> +<a id="event-calendar-repeating-sunday" href="javascript:void(0);" class="event-calendar-repeating-unselected"> +	<?php echo elgg_echo('event_calendar:day_abbrev:sunday'); ?> +</a> +</div> +<input type="hidden" name="event-calendar-repeating-monday-value" value="<?php echo $fd['event-calendar-repeating-monday-value']; ?>"> +<input type="hidden" name="event-calendar-repeating-tuesday-value" value="<?php echo $fd['event-calendar-repeating-tuesday-value']; ?>"> +<input type="hidden" name="event-calendar-repeating-wednesday-value" value="<?php echo $fd['event-calendar-repeating-wednesday-value']; ?>"> +<input type="hidden" name="event-calendar-repeating-thursday-value" value="<?php echo $fd['event-calendar-repeating-thursday-value']; ?>"> +<input type="hidden" name="event-calendar-repeating-friday-value" value="<?php echo $fd['event-calendar-repeating-friday-value']; ?>"> +<input type="hidden" name="event-calendar-repeating-saturday-value" value="<?php echo $fd['event-calendar-repeating-saturday-value']; ?>"> +<input type="hidden" name="event-calendar-repeating-sunday-value" value="<?php echo $fd['event-calendar-repeating-sunday-value']; ?>"> diff --git a/views/default/event_calendar/schedule_section.php b/views/default/event_calendar/schedule_section.php new file mode 100644 index 000000000..3a74dc789 --- /dev/null +++ b/views/default/event_calendar/schedule_section.php @@ -0,0 +1,22 @@ +<?php +$event = $vars['event']; +$fd = $vars['form_data']; +$event_calendar_repeated_events = elgg_get_plugin_setting('repeated_events', 'event_calendar'); + +$body = '<div class="event-calendar-edit-date-wrapper">'; +$body .= elgg_view('event_calendar/datetime_edit',  +	array( +		'start_date' => $fd['start_date'], +		'end_date' => $fd['end_date'], +		'start_time' => $fd['start_time'], +		'end_time' => $fd['end_time'], +		'prefix' => $vars['prefix'], +)); +if ($event_calendar_repeated_events == 'yes') { +	$body .= elgg_view('event_calendar/repeat_form_element',$vars); +} + +$body .= elgg_view('event_calendar/reminder_section',$vars); +$body .= '</div>'; + +echo $body; diff --git a/views/default/event_calendar/share_section.php b/views/default/event_calendar/share_section.php new file mode 100644 index 000000000..134f07656 --- /dev/null +++ b/views/default/event_calendar/share_section.php @@ -0,0 +1,26 @@ +<?php +$fd = $vars['form_data']; +$event_calendar_hide_access = elgg_get_plugin_setting('hide_access', 'event_calendar'); +$body = '<div class="event-calendar-edit-form-block event-calendar-edit-form-share-block">'; +$body .= '<h2>'.elgg_echo('event_calendar:permissions:header').'</h2>'; +if($event_calendar_hide_access == 'yes') { +	$event_calendar_default_access = elgg_get_plugin_setting('default_access', 'event_calendar'); +	if($event_calendar_default_access) { +		$body .= elgg_view("input/hidden",array('name' => 'access_id','value'=>$event_calendar_default_access)); +	} else { +		$body .= elgg_view("input/hidden",array('name' => 'access_id','value'=>ACCESS_DEFAULT)); +	} +} else { +	$body .= '<p><label>'.elgg_echo('event_calendar:read_access').'</label>'; +	$body .= elgg_view("input/access",array('name' => 'access_id','value'=>$fd['access_id'])); +	$body .= '</p>'; +} +if (elgg_plugin_exists('entity_admins')) { +	$body .= elgg_echo('event_calendar:share_ownership:label'); +	$body .= '<br />'; +	$body .= elgg_echo('event_calendar:share_ownership:description'); +	$body .= elgg_view('input/entity_admins_dropdown',array('entity'=>$vars['event'])); +} +$body .= '</div>'; + +echo $body; diff --git a/views/default/event_calendar/show_events.php b/views/default/event_calendar/show_events.php index 63d722247..3a484e756 100644 --- a/views/default/event_calendar/show_events.php +++ b/views/default/event_calendar/show_events.php @@ -10,16 +10,21 @@   *    */ +elgg_load_library('elgg:event_calendar'); +  $listing_format = $vars['listing_format'];  if ($vars['events']) {  	if ($listing_format == 'agenda') { +		$vars['events'] = event_calendar_flatten_event_structure($vars['events']);  		$event_list = elgg_view('event_calendar/agenda_view',$vars);  	} else if ($listing_format == 'paged') { +		$vars['events'] = event_calendar_flatten_event_structure($vars['events']);  		$event_list = elgg_view('event_calendar/paged_view',$vars);  	} else if ($listing_format == 'full') {  		$event_list = elgg_view('event_calendar/full_calendar_view',$vars);  	} else { +		$vars['events'] = event_calendar_flatten_event_structure($vars['events']);  		$options = array(  			'list_class' => 'elgg-list-entity',  			'full_view' => FALSE, @@ -32,7 +37,12 @@ if ($vars['events']) {  		$event_list = elgg_view_entity_list($vars['events'], $options);  	}  } else { -	$event_list = '<p>'.elgg_echo('event_calendar:no_events_found').'</p>'; +	if ($listing_format == 'full') { +		// show the empty calendar +		$event_list = elgg_view('event_calendar/full_calendar_view',$vars); +	} else { +		$event_list = '<p>'.elgg_echo('event_calendar:no_events_found').'</p>'; +	}  }  if ($listing_format == 'paged' || $listing_format == 'full') {  	echo $event_list; diff --git a/views/default/forms/event_calendar/edit.php b/views/default/forms/event_calendar/edit.php index 3526627a7..2ba744fc4 100644 --- a/views/default/forms/event_calendar/edit.php +++ b/views/default/forms/event_calendar/edit.php @@ -2,21 +2,24 @@  $event = $vars['event'];  $fd = $vars['form_data']; -$personal_manage_options = array( -	elgg_echo('event_calendar:personal_manage:open') => 'open', -	elgg_echo('event_calendar:personal_manage:closed') => 'closed', -	elgg_echo('event_calendar:personal_manage:private') => 'private', +$schedule_options = array( +	elgg_echo('event_calendar:all_day_label') => 'all_day', +	elgg_echo('event_calendar:schedule_type:fixed')=>'fixed',  ); -$event_calendar_times = elgg_get_plugin_setting('times', 'event_calendar'); +if (elgg_plugin_exists('event_poll')) { +	$schedule_options = array_merge(array(elgg_echo('event_calendar:schedule_type:poll')=>'poll'),$schedule_options); +}	 + +$event_calendar_fewer_fields = elgg_get_plugin_setting('fewer_fields', 'event_calendar'); +$event_calendar_repeating_events = elgg_get_plugin_setting('repeating_events', 'event_calendar'); +  $event_calendar_region_display = elgg_get_plugin_setting('region_display', 'event_calendar');  $event_calendar_type_display = elgg_get_plugin_setting('type_display', 'event_calendar');  $event_calendar_spots_display = elgg_get_plugin_setting('spots_display', 'event_calendar'); -//$event_calendar_add_users = elgg_get_plugin_setting('add_users', 'event_calendar'); -$event_calendar_hide_access = elgg_get_plugin_setting('hide_access', 'event_calendar'); -$event_calendar_hide_end = elgg_get_plugin_setting('hide_end', 'event_calendar'); +  $event_calendar_more_required = elgg_get_plugin_setting('more_required', 'event_calendar'); -$event_calendar_personal_manage = elgg_get_plugin_setting('personal_manage', 'event_calendar'); +$event_calendar_bbb_server_url = elgg_get_plugin_setting('bbb_server_url', 'event_calendar');  if ($event_calendar_more_required == 'yes') {  	$required_fields = array('title','venue','start_date','start_time', @@ -39,237 +42,184 @@ foreach ($all_fields as $fn) {  }  if ($event) { -	$title = $event->title; -	$brief_description = $event->description; -	$venue = $event->venue; -	// this is a form redisplay, so take the values as submitted -	$start_date = $event->start_date; -	$end_date = $event->end_date; -	 -	if ($event_calendar_region_display) { -		$region = $event->region; -		if (!$region) { -			$region = '-'; -		} -	} -	 -	if ($event_calendar_spots_display) { -		$spots = trim($event->spots); -	} -	if ($event_calendar_type_display) { -		$event_type = $event->event_type; -		if (!$event_type) { -			$event_type = '-'; -		} -	} -	$fees = $event->fees; -	$contact = $event->contact; -	$organiser = $event->organiser; -	$event_tags = $event->event_tags; -	$long_description = $event->long_description; -	$access = $event->access_id; -	if ($event_calendar_times != 'no') { -		$start_time = $event->start_time; -		$end_time = $event->end_time; -	} -	if ($event_calendar_personal_manage == 'by_event') { -		$personal_manage = $event->personal_manage; -		if (!$personal_manage) { -			$personal_manage = 'open'; -		} -	}  	$event_action = 'manage_event';  	$event_guid = $event->guid; -} else { -	$title = $fd['title']; -	$brief_description = $fd['description']; -	$venue = $fd['venue']; -	$start_date = $fd['start_date']; -	$end_date = $fd['end_date']; -	$fees = $fd['fees']; -	if ($event_calendar_spots_display) { -		$spots = $fd['spots']; -	} -	if ($event_calendar_region_display) { -		$region = $fd['region']; -	} -	if ($event_calendar_type_display) { -		$event_type = $fd['event_type']; -	} -	$contact = $fd['contact']; -	$organiser = $fd['organiser']; -	$event_tags = $fd['event_tags']; -	$long_description = $fd['long_description']; -	$access = $fd['access_id']; -	if ($event_calendar_times != 'no') { -		$start_time = $fd['start_time']; -		$end_time = $fd['end_time']; -	} -	if ($event_calendar_personal_manage == 'by_event') { -		$personal_manage = $fd['personal_manage']; -	} +} else {	  	$event_action = 'add_event';  	$event_guid = 0;  } -$body = ''; + +$title = $fd['title']; +$brief_description = $fd['description']; +$venue = $fd['venue']; + +$fees = $fd['fees']; +if ($event_calendar_spots_display) { +	$spots = $fd['spots']; +} +if ($event_calendar_region_display) { +	$region = $fd['region']; +} +if ($event_calendar_type_display) { +	$event_type = $fd['event_type']; +} +$contact = $fd['contact']; +$organiser = $fd['organiser']; +$event_tags = $fd['tags']; +$all_day = $fd['all_day']; +$schedule_type = $fd['schedule_type']; +$long_description = $fd['long_description']; + +$body = '<div class="event-calendar-edit-form">';  $body .= elgg_view('input/hidden',array('name'=>'event_action', 'value'=>$event_action));  $body .= elgg_view('input/hidden',array('name'=>'event_guid', 'value'=>$event_guid)); -$body .= elgg_view('input/hidden',array('name'=>'group_guid', 'value'=>$vars['group_guid'])); -$body .= '<p><label>'.elgg_echo("event_calendar:title_label").'<br />'; -$body .= elgg_view("input/text",array('name' => 'title','value'=>$title)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['title'].elgg_echo('event_calendar:title_description').'</p>'; +$body .= '<div class="event-calendar-edit-form-block event-calendar-edit-form-top-block">'; -$body .= '<p><label>'.elgg_echo("event_calendar:venue_label").'<br />'; -$body .= elgg_view("input/text",array('name' => 'venue','value'=>$venue)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['venue'].elgg_echo('event_calendar:venue_description').'</p>'; +$body .= '<p><label>'.elgg_echo("event_calendar:title_label").'</label>'; +$body .= elgg_view("input/text",array('name' => 'title','class'=>'event-calendar-medium-text','value'=>$title)); +$body .= '</p>'; +$body .= '<p class="event-calendar-description">'.$prefix['title'].elgg_echo('event_calendar:title_description').'</p>'; -if ($event_calendar_times != 'no') { -	$body .= '<div class="event-calendar-date-time-setter">'; -	if ($event_calendar_hide_end != 'yes') { -		$body .= '<p><label>'.elgg_echo('event_calendar:from_label').'</label>'; -	} -	$body .= elgg_view("event_calendar/input/date_local",array('timestamp'=>TRUE, 'autocomplete'=>'off','class'=>'event-calendar-compressed-date','name' => 'start_date','value'=>$start_date)); -	$body .= elgg_view("input/timepicker",array('name' => 'start_time','value'=>$start_time)); -	if ($event_calendar_hide_end != 'yes') { -		$body .= '</p><p><label>'.elgg_echo('event_calendar:to_label').'</label>'; -		$body .= elgg_view("event_calendar/input/date_local",array('timestamp'=>TRUE,'autocomplete'=>'off','class'=>'event-calendar-compressed-date','name' => 'end_date','value'=>$end_date)); -		$body .= elgg_view("input/timepicker",array('name' => 'end_time','value'=>$end_time)); -	} +$body .= '<p><label>'.elgg_echo("event_calendar:venue_label").'</label>'; +$body .= elgg_view("input/text",array('name' => 'venue','class'=>'event-calendar-medium-text','value'=>$venue)); +$body .= '</p>'; +$body .= '<p class="event-calendar-description">'.$prefix['venue'].elgg_echo('event_calendar:venue_description').'</p>'; + +$body .= '<p><label>'.elgg_echo("event_calendar:brief_description_label").'</label>'; +$body .= elgg_view("input/text",array('name' => 'description','class'=>'event-calendar-medium-text','value'=>$brief_description)); +$body .= '</p>'; +$body .= '<p class="event-calendar-description">'.$prefix['brief_description'].elgg_echo('event_calendar:brief_description_description').'</p>'; + +$body .= '<p><label>'.elgg_echo("event_calendar:event_tags_label").'</label>'; +$body .= elgg_view("input/tags",array('name' => 'tags','class'=>'event-calendar-medium-text','value'=>$event_tags)); +$body .= '</p>'; +$body .= '<p class="event-calendar-description">'.$prefix['event_tags'].elgg_echo('event_calendar:event_tags_description').'</p>'; + +if ($event || !$vars['group_guid']) { +	$body .= '<p><label>'.elgg_echo("event_calendar:calendar_label").'</label>'; +	$body .= elgg_view('event_calendar/container',array('container_guid'=>$vars['group_guid']));  	$body .= '</p>'; -	$body .= '</div>'; +	$body .= '<p class="event-calendar-description">'.$prefix['calendar'].elgg_echo('event_calendar:calendar_description').'</p>';  } else { +	$body .= elgg_view('input/hidden',array('name'=>'group_guid', 'value'=>$vars['group_guid'])); +} -	$body .= '<p><label>'.elgg_echo("event_calendar:start_date_label").'<br />'; -	$body .= elgg_view("event_calendar/input/date_local",array('timestamp'=>TRUE, 'autocomplete'=>'off','name' => 'start_date','value'=>$start_date)); -	$body .= '</label></p>'; -	$body .= '<p class="description">'.$prefix['start_date'].elgg_echo('event_calendar:start_date_description').'</p>'; -	 -	if ($event_calendar_hide_end != 'yes') {		 -		$body .= '<p><label>'.elgg_echo("event_calendar:end_date_label").'<br />'; -		$body .= elgg_view("event_calendar/input/date_local",array('timestamp'=>TRUE,'autocomplete'=>'off','name' => 'end_date','value'=>$end_date)); -		$body .= '</label></p>'; -		$body .= '<p class="description">'.$prefix['end_date'].elgg_echo('event_calendar:end_date_description').'</p>'; +if($event_calendar_bbb_server_url) { +	$body .= '<p>'; +	if ($fd['web_conference']) { +		$body .= elgg_view('input/checkbox',array('name'=>'web_conference','value'=>1,'checked'=>'checked')); +	} else { +		$body .= elgg_view('input/checkbox',array('name'=>'web_conference','value'=>1));  	} +	$body .= elgg_echo('event_calendar:web_conference_label'); +	$body .= '</p>';  } +$body .= '</div>'; + +$body .= '<div class="event-calendar-edit-form-block event-calendar-edit-form-schedule-block">'; +$body .= '<h2>'.elgg_echo('event_calendar:schedule:header').'</h2>'; +$body .= elgg_view('input/radio',array('id'=>'event-calendar-edit-schedule-type','name'=>'schedule_type','value'=>$schedule_type,'options'=>$schedule_options)); + +$vars['prefix'] = $prefix; + +$body .= elgg_view('event_calendar/schedule_section',$vars); +  if ($event_calendar_spots_display == 'yes') {  	$body .= '<p><label>'.elgg_echo("event_calendar:spots_label").'<br />'; -	$body .= elgg_view("input/text",array('name' => 'spots','value'=>$spots)); +	$body .= elgg_view("input/text",array('name' => 'spots','class'=>'event-calendar-medium-text','value'=>$spots));  	$body .= '</label></p>'; -	$body .= '<p class="description">'.$prefix['spots'].elgg_echo('event_calendar:spots_description').'</p>'; +	$body .= '<p class="event-calendar-description">'.$prefix['spots'].elgg_echo('event_calendar:spots_description').'</p>';  } -// the following feature has been superceded by the manage subscribers feature +$body .= '<div class="event-calendar-edit-bottom"></div>'; +$body .= '</div>'; -/*if ($event_calendar_add_users == 'yes') { -	$body .= '<p><label>'.elgg_echo("event_calendar:add_user_label").'<br />'; -	$body .= elgg_view("input/adduser",array('name' => 'adduser','internalid' => 'do_adduser','width'=> 200, 'minChars'=>2)); -	$body .= '</label></p><br /><br />'; -	$body .= '<p class="description">'.elgg_echo('event_calendar:add_user_description').'</p>'; -}*/ +$body .= elgg_view('event_calendar/personal_manage_section',$vars); -$body .= '<p><label>'.elgg_echo("event_calendar:brief_description_label").'<br />'; -$body .= elgg_view("input/text",array('name' => 'description','value'=>$brief_description)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['brief_description'].elgg_echo('event_calendar:brief_description_description').'</p>'; +$body .= elgg_view('event_calendar/share_section',$vars); -if ($event_calendar_region_display == 'yes') { -	$region_list = trim(elgg_get_plugin_setting('region_list', 'event_calendar')); -	$region_list_handles = elgg_get_plugin_setting('region_list_handles', 'event_calendar'); -	// make sure that we are using Unix line endings -	$region_list = str_replace("\r\n","\n",$region_list); -	$region_list = str_replace("\r","\n",$region_list); -	if ($region_list) { -		$options = array(); -		$options[] = '-'; -		foreach(explode("\n",$region_list) as $region_item) { -			$region_item = trim($region_item); -			if ($region_list_handles == 'yes') { -				$options[$region_item] = elgg_echo('event_calendar:region:'.$region_item); -			} else { -				$options[$region_item] = $region_item; +if ($event_calendar_region_display == 'yes' || $event_calendar_type_display == 'yes' || $event_calendar_fewer_fields != 'yes') { +	$body .= '<div class="event-calendar-edit-form-block event-calendar-edit-form-other-block">'; +	 +	if ($event_calendar_region_display == 'yes') { +		$region_list = trim(elgg_get_plugin_setting('region_list', 'event_calendar')); +		$region_list_handles = elgg_get_plugin_setting('region_list_handles', 'event_calendar'); +		// make sure that we are using Unix line endings +		$region_list = str_replace("\r\n","\n",$region_list); +		$region_list = str_replace("\r","\n",$region_list); +		if ($region_list) { +			$options = array(); +			$options[] = '-'; +			foreach(explode("\n",$region_list) as $region_item) { +				$region_item = trim($region_item); +				if ($region_list_handles == 'yes') { +					$options[$region_item] = elgg_echo('event_calendar:region:'.$region_item); +				} else { +					$options[$region_item] = $region_item; +				}  			} +			$body .= '<p><label>'.elgg_echo("event_calendar:region_label").'</label>'; +			$body .= elgg_view("input/dropdown",array('name' => 'region','value'=>$region,'options_values'=>$options)); +			$body .= '</p>'; +			$body .= '<p class="event-calendar-description">'.$prefix['region'].elgg_echo('event_calendar:region_description').'</p>';  		} -		$body .= '<p><label>'.elgg_echo("event_calendar:region_label").'<br />'; -		$body .= elgg_view("input/dropdown",array('name' => 'region','value'=>$region,'options_values'=>$options)); -		$body .= '</label></p>'; -		$body .= '<p class="description">'.$prefix['region'].elgg_echo('event_calendar:region_description').'</p>';  	} -} - -if ($event_calendar_type_display == 'yes') { -	$type_list = trim(elgg_get_plugin_setting('type_list', 'event_calendar')); -	$type_list_handles = elgg_get_plugin_setting('type_list_handles', 'event_calendar'); -	// make sure that we are using Unix line endings -	$type_list = str_replace("\r\n","\n",$type_list); -	$type_list = str_replace("\r","\n",$type_list); -	if ($type_list) { -		$options = array(); -		$options[] = '-'; -		foreach(explode("\n",$type_list) as $type_item) { -			$type_item = trim($type_item); -			if ($type_list_handles == 'yes') { -				$options[$type_item] = elgg_echo('event_calendar:type:'.$type_item); -			} else { -				$options[$type_item] = $type_item; -			}			 +	 +	if ($event_calendar_type_display == 'yes') { +		$type_list = trim(elgg_get_plugin_setting('type_list', 'event_calendar')); +		$type_list_handles = elgg_get_plugin_setting('type_list_handles', 'event_calendar'); +		// make sure that we are using Unix line endings +		$type_list = str_replace("\r\n","\n",$type_list); +		$type_list = str_replace("\r","\n",$type_list); +		if ($type_list) { +			$options = array(); +			$options[] = '-'; +			foreach(explode("\n",$type_list) as $type_item) { +				$type_item = trim($type_item); +				if ($type_list_handles == 'yes') { +					$options[$type_item] = elgg_echo('event_calendar:type:'.$type_item); +				} else { +					$options[$type_item] = $type_item; +				}			 +			} +			$body .= '<p><label>'.elgg_echo("event_calendar:type_label").'</label>'; +			$body .= elgg_view("input/dropdown",array('name' => 'event_type','value'=>$event_type,'options_values'=>$options)); +			$body .= '</p>'; +			$body .= '<p class="event-calendar-description">'.$prefix['event_type'].elgg_echo('event_calendar:type_description').'</p>';  		} -		$body .= '<p><label>'.elgg_echo("event_calendar:type_label").'<br />'; -		$body .= elgg_view("input/dropdown",array('name' => 'event_type','value'=>$event_type,'options_values'=>$options)); -		$body .= '</label></p>'; -		$body .= '<p class="description">'.$prefix['event_type'].elgg_echo('event_calendar:type_description').'</p>';  	} -} - -$body .= '<p><label>'.elgg_echo("event_calendar:fees_label").'<br />'; -$body .= elgg_view("input/text",array('name' => 'fees','value'=>$fees)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['fees'].elgg_echo('event_calendar:fees_description').'</p>'; - -$body .= '<p><label>'.elgg_echo("event_calendar:contact_label").'<br />'; -$body .= elgg_view("input/text",array('name' => 'contact','value'=>$contact)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['contact'].elgg_echo('event_calendar:contact_description').'</p>'; - -$body .= '<p><label>'.elgg_echo("event_calendar:organiser_label").'<br />'; -$body .= elgg_view("input/text",array('name' => 'organiser','value'=>$organiser)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['organiser'].elgg_echo('event_calendar:organiser_description').'</p>'; - -if ($event_calendar_personal_manage == 'by_event') { -	$body .= '<p><label>'.elgg_echo('event_calendar:personal_manage:label').'<br />'; -	$body .= elgg_view("input/radio",array('name' => 'personal_manage','value'=>$personal_manage,'options'=>$personal_manage_options)); -	$body .= '</label></p>'; -	$body .= '<p class="description">'.$prefix['personal_manage'].elgg_echo('event_calendar:personal_manage:description').'</p>'; -} - -$body .= '<p><label>'.elgg_echo("event_calendar:event_tags_label").'<br />'; -$body .= elgg_view("input/tags",array('name' => 'tags','value'=>$event_tags)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['event_tags'].elgg_echo('event_calendar:event_tags_description').'</p>'; - -$body .= '<p><label>'.elgg_echo("event_calendar:long_description_label").'<br />'; -$body .= elgg_view("input/longtext",array('name' => 'long_description','value'=>$long_description)); -$body .= '</label></p>'; -$body .= '<p class="description">'.$prefix['long_description'].elgg_echo('event_calendar:long_description_description').'</p>'; - -if($event_calendar_hide_access == 'yes') { -	$event_calendar_default_access = elgg_get_plugin_setting('default_access', 'event_calendar'); -	if($event_calendar_default_access) { -		$body .= elgg_view("input/hidden",array('name' => 'access_id','value'=>$event_calendar_default_access)); -	} else { -		$body .= elgg_view("input/hidden",array('name' => 'access_id','value'=>ACCESS_PRIVATE)); +	 +	if ($event_calendar_fewer_fields != 'yes') { +	 +		$body .= '<p><label>'.elgg_echo("event_calendar:fees_label").'</label>'; +		$body .= elgg_view("input/text",array('name' => 'fees','class'=>'event-calendar-medium-text','value'=>$fees)); +		$body .= '</p>'; +		$body .= '<p class="event-calendar-description">'.$prefix['fees'].elgg_echo('event_calendar:fees_description').'</p>'; +		 +		$body .= '<p><label>'.elgg_echo("event_calendar:contact_label").'</label>'; +		$body .= elgg_view("input/text",array('name' => 'contact','class'=>'event-calendar-medium-text','value'=>$contact)); +		$body .= '</p>'; +		$body .= '<p class="event-calendar-description">'.$prefix['contact'].elgg_echo('event_calendar:contact_description').'</p>'; +		 +		$body .= '<p><label>'.elgg_echo("event_calendar:organiser_label").'</label>'; +		$body .= elgg_view("input/text",array('name' => 'organiser','class'=>'event-calendar-medium-text','value'=>$organiser)); +		$body .= '</p>'; +		$body .= '<p class="event-calendar-description">'.$prefix['organiser'].elgg_echo('event_calendar:organiser_description').'</p>'; +		 +		$body .= '<p><label>'.elgg_echo("event_calendar:long_description_label").'</label>'; +		$body .= elgg_view("input/longtext",array('name' => 'long_description','class'=>'event-calendar-long-text','value'=>$long_description)); +		$body .= '</p>'; +		$body .= '<p class="event-calendar-description">'.$prefix['long_description'].elgg_echo('event_calendar:long_description_description').'</p>';  	} -} else { -	$body .= '<p><label>'.elgg_echo("access").'<br />'; -	$body .= elgg_view("input/access",array('name' => 'access_id','value'=>$access)); -	$body .= '</label></p>'; +	 +	$body .= '</div>';  }  $body .= elgg_view('input/submit', array('name'=>'submit','value'=>elgg_echo('event_calendar:submit'))); +$body .= '</div>'; +  echo $body; diff --git a/views/default/input/datepicker_inline.php b/views/default/input/datepicker_inline.php index 1d0a0689d..3fd9c37af 100644 --- a/views/default/input/datepicker_inline.php +++ b/views/default/input/datepicker_inline.php @@ -65,7 +65,6 @@ $("#<?php echo $vars['name']; ?>").datepicker({          document.location.href = "<?php echo $link_bit; ?>".replace('%s', date.substring(0,10));      },      dateFormat: "yy-mm-dd", -    <?php echo $vars['range_bit']; ?>      defaultDate: "<?php echo $vars['start_date'] .' - '.$vars['end_date']; ?>",      beforeShowDay: highlightWeek  }); @@ -76,7 +75,7 @@ if ("<?php echo $vars['mode'] ?>" == "month") {  	end_date += 1;  }  $("#<?php echo $vars['name']; ?>").datepicker("setDate", start_date, end_date); -var done_loading = true; +done_loading = true;  });  </script> diff --git a/views/default/input/datepicker_popup.php b/views/default/input/datepicker_popup.php deleted file mode 100644 index 0daeb7307..000000000 --- a/views/default/input/datepicker_popup.php +++ /dev/null @@ -1,31 +0,0 @@ -<?php - -/** - * JQuery data picker - *  - * @package event_calendar - * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 - * @author Kevin Jardine <kevin@radagast.biz> - * @copyright Radagast Solutions 2008 - * @link http://radagast.biz/ - *  - */ - -if ($vars['dateformat']) { -	$date_format = $vars['dateformat']; -} else { -	$date_format = "yy/mm/dd"; -} -?> - -<script language="javascript"> -$(document).ready(function(){ -$("#<?php echo $vars['internalname']; ?>").datepicker({  -    dateFormat: "<?php echo $date_format; ?>",  -    showOn: "both",  -    buttonImage: "<?php echo $vars['url']; ?>mod/event_calendar/images/calendar.gif",  -    buttonImageOnly: true  -}) -}); -</script> -<input type="text" size="30" value="<?php echo $vars['value']; ?>" name="<?php echo $vars['internalname']; ?>" id="<?php echo $vars['internalname']; ?>"/>
\ No newline at end of file diff --git a/views/default/input/timepicker.php b/views/default/input/timepicker.php index d7df04699..2cc95ced7 100644 --- a/views/default/input/timepicker.php +++ b/views/default/input/timepicker.php @@ -1,5 +1,4 @@  <?php -  $time_format = elgg_get_plugin_setting('timeformat', 'event_calendar');  if (!$time_format) {  	$time_format = '24'; @@ -9,45 +8,44 @@ $value = $vars['value'];  if (is_numeric($value)) {  	$hour = floor($value/60);  	$minute = ($value -60*$hour);	 -	$time = $hour*60+$minute;  } else { -	$time = '-'; +	$hour = 0; +	$minute = 0;  } -$dates = array(); -$dates['-'] = '-'; +$hours = array(); +$minutes = array();  if ($time_format == '12') { -	for($h=0;$h<=12;$h++) { -		$ht = sprintf("%02d",$h); -		for($m=0;$m<60;$m=$m+15) { -			$mt = sprintf("%02d",$m); -			$t = $h*60+$m; -			if ($h < 12) { -				$dates[$t] = "$ht:$mt am"; -			} else { -				$dates[$t] = "$ht:$mt pm"; -			} -		} +	$meridians = array('am'=>'am','pm'=>'pm'); +	if ($hour == 0) { +		$hour = 12; +		$meridian = 'am'; +	} else if ($hour == 12) { +		$meridian = 'pm'; +	} else if ($hour < 12) { +		$meridian = 'am'; +	} else { +		$hour -= 12; +		$meridian = 'pm';  	} -	for($h=1;$h<12;$h++) { -		$ht = sprintf("%02d",$h); -		for($m=0;$m<60;$m=$m+15) { -			$mt = sprintf("%02d",$m); -			$t = 12*60+$h*60+$m; -			$dates[$t] = "$ht:$mt pm"; -		} +	for($h=1;$h<=12;$h++) { +		$hours[$h] = $h;  	}  } else { -	for($h=0;$h<24;$h++) { -		$ht = sprintf("%02d",$h); -		for($m=0;$m<60;$m=$m+15) { -			$mt = sprintf("%02d",$m); -			$t = $h*60+$m; -			$dates[$t] = "$ht:$mt"; -		} +	for($h=0;$h<=23;$h++) { +		$hours[$h] = $h;  	} -} +}	 -echo elgg_view('input/dropdown',array('name'=>$vars['name'],'value'=>$time,'options_values'=>$dates)); +for($m=0;$m<60;$m=$m+5) { +	$mt = sprintf("%02d",$m); +	$minutes[$m] = $mt; +} +echo elgg_view('input/dropdown',array('name'=>$vars['name'].'_hour','value'=>$hour,'options_values'=>$hours)); +echo " <b>:</b> "; +echo elgg_view('input/dropdown',array('name'=>$vars['name'].'_minute','value'=>$minute,'options_values'=>$minutes)); +if ($time_format == '12') { +	echo elgg_view('input/dropdown',array('name'=>$vars['name'].'_meridian','value'=>$meridian,'options_values'=>$meridians)); +} diff --git a/views/default/js/event_calendar/event_calendar.php b/views/default/js/event_calendar/event_calendar.php index 8c4e735a6..65c4d2952 100644 --- a/views/default/js/event_calendar/event_calendar.php +++ b/views/default/js/event_calendar/event_calendar.php @@ -6,6 +6,88 @@ elgg.event_calendar.init = function () {  	$('.event-calendar-personal-calendar-toggle').click(elgg.event_calendar.handleDisplayPagePersonalCalendarToggle);  	$('#event-calendar-region').change(elgg.event_calendar.handleRegionChange);  	$('#event-calendar-ical-link').click(elgg.event_calendar.handleIcalPopup); +	$('.event-calendar-repeating-unselected').each(elgg.event_calendar.setRepeatingClass); +	$('.event-calendar-repeating-unselected').live('click',elgg.event_calendar.handleRepeatingSelect); +	$('.event-calendar-repeating-selected').live('click',elgg.event_calendar.handleRepeatingUnselect); +	$('#event-calendar-edit').submit(elgg.event_calendar.handleEditFormSubmit); +	$('#event-calendar-edit-schedule-type').click(elgg.event_calendar.handleScheduleType); +	elgg.event_calendar.handleScheduleType(); + +	var all_day_field = $('[name="all_day"][type="checkbox"]'); +	if (all_day_field.is(':checked')) { +		//$('[name="start_time"]').val(0); +		$('#event-calendar-start-time-wrapper').attr('disabled','disabled'); +		//$('[name="end_time"]').val(0); +		$('#event-calendar-end-time-wrapper').attr('disabled','disabled'); +	} +	all_day_field.change(elgg.event_calendar.handleAllDayField); +} + +elgg.event_calendar.handleScheduleType = function(e) { +	var st = $('#event-calendar-edit-schedule-type:checked').val(); +	if (st == 'poll') { +		$(".event-calendar-edit-date-wrapper").hide(); +		$(".event-calendar-edit-reminder-wrapper").hide(); +		$(".event-calendar-edit-form-membership-block").hide(); +		$(".event-calendar-edit-form-share-block").hide(); +	} else { +		$(".event-calendar-edit-date-wrapper").show(); +		$(".event-calendar-edit-reminder-wrapper").show(); +		$(".event-calendar-edit-form-membership-block").show(); +		$(".event-calendar-edit-form-share-block").show(); +		if (st == 'all_day') { +			$("#event-calendar-start-time-wrapper").hide(); +			$("#event-calendar-end-time-wrapper").hide(); +		} else { +			$("#event-calendar-start-time-wrapper").show(); +			$("#event-calendar-end-time-wrapper").show(); +		} +	} +} + +elgg.event_calendar.handleAllDayField = function(e) { +	var field = $('[name="start_time"]'); +	if (field.attr('disabled') == 'disabled') { +		field.removeAttr('disabled'); +	} else { +		field.attr('disabled','disabled'); +	} + +	field = $('[name="end_time"]'); +	if (field.attr('disabled') == 'disabled') { +		field.removeAttr('disabled'); +	} else { +		field.attr('disabled','disabled'); +	} +} + +elgg.event_calendar.handleEditFormSubmit = function(e) { +	if ($.trim($('[name="title"]').val()) == '') { +		alert(elgg.echo('event_calendar:edit_form:error:missing_title')); +		e.preventDefault(); +	} +} + +elgg.event_calendar.setRepeatingClass = function(e) { +	var id = $(this).attr('id'); +	if ($("[name='"+id+"-value']").val() == 1) { +		$(this).removeClass('event-calendar-repeating-unselected'); +		$(this).addClass('event-calendar-repeating-selected'); +	} +} + +elgg.event_calendar.handleRepeatingSelect = function(e) { +	$(this).removeClass('event-calendar-repeating-unselected'); +	$(this).addClass('event-calendar-repeating-selected'); +	var id = $(this).attr('id'); +	$("[name='"+id+"-value']").val(1); +} + +elgg.event_calendar.handleRepeatingUnselect = function(e) { +	$(this).removeClass('event-calendar-repeating-selected'); +	$(this).addClass('event-calendar-repeating-unselected'); +	var id = $(this).attr('id'); +	$("[name='"+id+"-value']").val(0);  }  elgg.event_calendar.handleRegionChange = function(e) { diff --git a/views/default/object/event_calendar.php b/views/default/object/event_calendar.php index 717e2803e..afd4325f1 100644 --- a/views/default/object/event_calendar.php +++ b/views/default/object/event_calendar.php @@ -11,11 +11,17 @@   *    */ +elgg_load_library('elgg:event_calendar'); +  $event = $vars['entity'];  $full = elgg_extract('full_view', $vars, FALSE);  if ($full) {  	$body = elgg_view('event_calendar/strapline',$vars); +	if ($event->web_conference) { +		$body .= '<br />'; +		$body .= elgg_view('event_calendar/conference_button',array('event'=>$event)); +	}  	$event_items = event_calendar_get_formatted_full_items($event);  	$body .= '<br />'; diff --git a/views/default/plugins/event_calendar/settings.php b/views/default/plugins/event_calendar/settings.php index 93724484c..db6e00913 100644 --- a/views/default/plugins/event_calendar/settings.php +++ b/views/default/plugins/event_calendar/settings.php @@ -79,6 +79,28 @@ $body .= elgg_view('input/radio',array('name'=>'params[listing_format]','value'=  $body .= '<br />'; +$event_calendar_repeated_events = elgg_get_plugin_setting('repeated_events', 'event_calendar'); +if (!$event_calendar_repeated_events) { +	$event_calendar_repeated_events = 'no'; +} + +$body .= elgg_echo('event_calendar:settings:repeated_events:title'); +$body .= '<br />'; +$body .= elgg_view('input/radio',array('name'=>'params[repeated_events]','value'=>$event_calendar_repeated_events,'options'=>$yn_options)); + +$body .= '<br />'; + +$event_calendar_reminders = elgg_get_plugin_setting('reminders', 'event_calendar'); +if (!$event_calendar_reminders) { +	$event_calendar_reminders = 'no'; +} + +$body .= elgg_echo('event_calendar:settings:reminders:title'); +$body .= '<br />'; +$body .= elgg_view('input/radio',array('name'=>'params[reminders]','value'=>$event_calendar_reminders,'options'=>$yn_options)); + +$body .= '<br />'; +  $event_calendar_times = elgg_get_plugin_setting('times', 'event_calendar');  if (!$event_calendar_times) {  	$event_calendar_times = 'yes'; @@ -90,6 +112,17 @@ $body .= elgg_view('input/radio',array('name'=>'params[times]','value'=>$event_c  $body .= '<br />'; +/*$event_calendar_restricted_times = elgg_get_plugin_setting('restricted_times', 'event_calendar'); +if (!$event_calendar_restricted_times) { +	$event_calendar_restricted_times = 'no'; +} + +$body .= elgg_echo('event_calendar:settings:restricted_times:title'); +$body .= '<br />'; +$body .= elgg_view('input/radio',array('name'=>'params[restricted_times]','value'=>$event_calendar_restricted_times,'options'=>$yn_options)); + +$body .= '<br />';*/ +  $event_calendar_time_format = elgg_get_plugin_setting('timeformat', 'event_calendar');  if (!$event_calendar_time_format) {  	$event_calendar_time_format = '24'; @@ -158,6 +191,17 @@ $body .= elgg_view('input/radio',array('name'=>'params[venue_view]','value'=>$ev  $body .= '<br />'; +$event_calendar_fewer_fields = elgg_get_plugin_setting('fewer_fields', 'event_calendar'); +if (!$event_calendar_fewer_fields) { +	$event_calendar_fewer_fields = 'no'; +} + +$body .= elgg_echo('event_calendar:settings:fewer_fields:title'); +$body .= '<br />'; +$body .= elgg_view('input/radio',array('name'=>'params[fewer_fields]','value'=>$event_calendar_fewer_fields,'options'=>$yn_options)); + +$body .= '<br />'; +  $options = array(elgg_echo('event_calendar:settings:no')=>'no',  	elgg_echo('event_calendar:settings:site_calendar:admin')=>'admin',  	elgg_echo('event_calendar:settings:site_calendar:loggedin')=>'loggedin', @@ -314,7 +358,7 @@ if (!$event_calendar_region_list) {  $body .= elgg_echo('event_calendar:settings:region_list:title');  $body .= '<br />'; -$body .= elgg_view('event_calendar/input/longtext',array('name'=>'params[region_list]','value'=>$event_calendar_region_list)); +$body .= elgg_view('input/plaintext',array('name'=>'params[region_list]','value'=>$event_calendar_region_list));  $body .= '<br />'; @@ -347,7 +391,7 @@ if (!$event_calendar_type_list) {  $body .= elgg_echo('event_calendar:settings:type_list:title');  $body .= '<br />'; -$body .= elgg_view('event_calendar/input/longtext',array('name'=>'params[type_list]','value'=>$event_calendar_type_list)); +$body .= elgg_view('input/plaintext',array('name'=>'params[type_list]','value'=>$event_calendar_type_list));  $body .= '<br />'; @@ -401,4 +445,30 @@ $body .= elgg_echo('event_calendar:ical_auth_file_name:title');  $body .= '<br />';  $body .= elgg_view('input/text',array('name'=>'params[ical_auth_file_name]','value'=>$ical_auth_file_name, 'class'=>'event-calendar-ical-auth-setting')); +$body .= '<br /><br />'; + +$event_calendar_bbb_server_url = elgg_get_plugin_setting('bbb_server_url', 'event_calendar'); + +$body .= elgg_echo('event_calendar:bbb_server_url'); +$body .= '<br />'; +$body .= elgg_view('input/text', array( +	'name' => 'params[bbb_server_url]', +	'value' => $event_calendar_bbb_server_url, +	'class' => 'text_input', +)); + +$body .= '<br /><br />'; + +$event_calendar_bbb_security_salt = elgg_get_plugin_setting('bbb_security_salt', 'event_calendar'); + +$body .= elgg_echo('event_calendar:bbb_security_salt'); +$body .= '<br />'; +$body .= elgg_view('input/text', array( +	'name' => 'params[bbb_security_salt]', +	'value' => $event_calendar_bbb_security_salt, +	'class' => 'text_input', +)); + +$body .= '<br /><br />'; +  echo $body; diff --git a/views/default/widgets/event_calendar/content.php b/views/default/widgets/event_calendar/content.php index 329046cb0..eaedb76bd 100644 --- a/views/default/widgets/event_calendar/content.php +++ b/views/default/widgets/event_calendar/content.php @@ -20,8 +20,12 @@  		$num = 5;      // Get the events - -	$events = event_calendar_get_personal_events_for_user(elgg_get_page_owner_guid(),$num); +  $owner = elgg_get_page_owner_entity(); +  if(elgg_instanceof($owner, 'group')) { +    $events = event_calendar_get_events_for_group(elgg_get_page_owner_guid(),$num); +  } else { +    $events = event_calendar_get_personal_events_for_user(elgg_get_page_owner_guid(),$num); +  }  	// If there are any events to view, view them  	if (is_array($events) && sizeof($events) > 0) { diff --git a/views/default/widgets/event_calendar/view.php b/views/default/widgets/event_calendar/view.php deleted file mode 100644 index 329046cb0..000000000 --- a/views/default/widgets/event_calendar/view.php +++ /dev/null @@ -1,39 +0,0 @@ -<?php - -/** - * Elgg event calendar widget - * - * @package event_calendar - * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 - * @author Kevin Jardine <kevin@radagast.biz> - * @copyright Radagast Solutions 2008 - * @link http://radagast.biz/ - * - */ - -	// Load event calendar model -	elgg_load_library('elgg:event_calendar'); - -    //the number of events to display -	$num = (int) $vars['entity']->num_display; -	if (!$num) -		$num = 5; -		 -    // Get the events - -	$events = event_calendar_get_personal_events_for_user(elgg_get_page_owner_guid(),$num); -		 -	// If there are any events to view, view them -	if (is_array($events) && sizeof($events) > 0) { - -		echo "<div id=\"widget_calendar\">"; - -		foreach($events as $event) { -			echo elgg_view("object/event_calendar",array('entity' => $event)); -		} - -		echo "</div>"; -			 -    } -	 -?>
\ No newline at end of file  | 
