events page: set calendar start date from url (events/[year]/[month]/) and show event popup from url anchor (#link-[event id])
This commit is contained in:
parent
7923404c83
commit
fc61616c53
8
boot.php
8
boot.php
|
@ -1249,11 +1249,11 @@ if(! function_exists('get_events')) {
|
||||||
$o .= '<div id="event-title-end"></div>';
|
$o .= '<div id="event-title-end"></div>';
|
||||||
|
|
||||||
foreach($r as $rr) {
|
foreach($r as $rr) {
|
||||||
|
|
||||||
if($rr['adjust'])
|
if($rr['adjust'])
|
||||||
$md = datetime_convert('UTC',$a->timezone,$rr['start'],'Y/m\#\l\i\n\k\-j');
|
$md = datetime_convert('UTC',$a->timezone,$rr['start'],'Y/m');
|
||||||
else
|
else
|
||||||
$md = datetime_convert('UTC','UTC',$rr['start'],'Y/m\#\l\i\n\k\-j');
|
$md = datetime_convert('UTC','UTC',$rr['start'],'Y/m');
|
||||||
|
$md .= "/#link-".$rr['id'];
|
||||||
|
|
||||||
$title = substr(strip_tags(bbcode($rr['desc'])),0,32) . '... ';
|
$title = substr(strip_tags(bbcode($rr['desc'])),0,32) . '... ';
|
||||||
if(! $title)
|
if(! $title)
|
||||||
|
@ -1262,7 +1262,7 @@ if(! function_exists('get_events')) {
|
||||||
$strt = datetime_convert('UTC',$rr['convert'] ? $a->timezone : 'UTC',$rr['start']);
|
$strt = datetime_convert('UTC',$rr['convert'] ? $a->timezone : 'UTC',$rr['start']);
|
||||||
$today = ((substr($strt,0,10) === datetime_convert('UTC',$a->timezone,'now','Y-m-d')) ? true : false);
|
$today = ((substr($strt,0,10) === datetime_convert('UTC',$a->timezone,'now','Y-m-d')) ? true : false);
|
||||||
|
|
||||||
$o .= '<div class="event-list" id="event-' . $rr['eid'] . '"></a> <a href="events/' . $md . '">' . $title . '</a>'
|
$o .= '<div class="event-list" id="event-' . $rr['id'] . '"></a> <a href="events/' . $md . '">' . $title . '</a>'
|
||||||
. day_translate(datetime_convert('UTC', $rr['adjust'] ? $a->timezone : 'UTC', $rr['start'], $bd_format)) . (($today) ? ' ' . t('[today]') : '')
|
. day_translate(datetime_convert('UTC', $rr['adjust'] ? $a->timezone : 'UTC', $rr['start'], $bd_format)) . (($today) ? ' ' . t('[today]') : '')
|
||||||
. '</div>' ;
|
. '</div>' ;
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,15 @@
|
||||||
src="$baseurl/library/fullcalendar/fullcalendar.min.js"></script>
|
src="$baseurl/library/fullcalendar/fullcalendar.min.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
function showEvent(eventid) {
|
||||||
|
$.get(
|
||||||
|
'$baseurl/events/?id='+eventid,
|
||||||
|
function(data){
|
||||||
|
$.fancybox(data);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
$('#events-calendar').fullCalendar({
|
$('#events-calendar').fullCalendar({
|
||||||
events: '$baseurl/events/json/',
|
events: '$baseurl/events/json/',
|
||||||
|
@ -13,12 +22,7 @@
|
||||||
},
|
},
|
||||||
timeFormat: 'H(:mm)',
|
timeFormat: 'H(:mm)',
|
||||||
eventClick: function(calEvent, jsEvent, view) {
|
eventClick: function(calEvent, jsEvent, view) {
|
||||||
$.get(
|
showEvent(calEvent.id);
|
||||||
'$baseurl/events/?id='+calEvent.id,
|
|
||||||
function(data){
|
|
||||||
$.fancybox(data);
|
|
||||||
}
|
|
||||||
);
|
|
||||||
},
|
},
|
||||||
|
|
||||||
eventRender: function(event, element, view) {
|
eventRender: function(event, element, view) {
|
||||||
|
@ -55,16 +59,27 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// center on date
|
||||||
|
var args=location.href.replace(baseurl,"").split("/");
|
||||||
|
if (args.length>=4) {
|
||||||
|
$("#events-calendar").fullCalendar('gotoDate',args[2] , args[3]-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// show event popup
|
||||||
|
var hash = location.hash.split("-")
|
||||||
|
if (hash.length==2 && hash[0]=="#link") showEvent(hash[1]);
|
||||||
|
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<script language="javascript" type="text/javascript"
|
<script language="javascript" type="text/javascript"
|
||||||
src="$baseurl/library/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
|
src="$baseurl/library/tinymce/jscripts/tiny_mce/tiny_mce_src.js"></script>
|
||||||
<script language="javascript" type="text/javascript">
|
<script language="javascript" type="text/javascript">
|
||||||
|
|
||||||
|
|
||||||
tinyMCE.init({
|
tinyMCE.init({
|
||||||
theme : "advanced",
|
theme : "advanced",
|
||||||
mode : "textareas",
|
mode : "textareas",
|
||||||
plugins : "bbcode,paste",
|
plugins : "bbcode,paste",
|
||||||
|
@ -90,10 +105,10 @@ tinyMCE.init({
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
|
|
||||||
$('#event-share-checkbox').change(function() {
|
$('#event-share-checkbox').change(function() {
|
||||||
|
|
||||||
|
@ -118,7 +133,7 @@ $(document).ready(function() {
|
||||||
|
|
||||||
}).trigger('change');
|
}).trigger('change');
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue