Commit 685aa0b7 authored by David Monllaó's avatar David Monllaó
Browse files

Merge branch 'MDL-49561_m28' of git://github.com/markn86/moodle into MOODLE_28_STABLE

Conflicts:
	lib/bennu/readme_moodle.txt
parents 57caaace dbeeebc0
......@@ -189,10 +189,14 @@ foreach($events as $event) {
$ev->add_property('class', 'PUBLIC'); // PUBLIC / PRIVATE / CONFIDENTIAL
$ev->add_property('last-modified', Bennu::timestamp_to_datetime($event->timemodified));
$ev->add_property('dtstamp', Bennu::timestamp_to_datetime()); // now
$ev->add_property('dtstart', Bennu::timestamp_to_datetime($event->timestart)); // when event starts
if ($event->timeduration > 0) {
//dtend is better than duration, because it works in Microsoft Outlook and works better in Korganizer
$ev->add_property('dtstart', Bennu::timestamp_to_datetime($event->timestart)); // when event starts.
$ev->add_property('dtend', Bennu::timestamp_to_datetime($event->timestart + $event->timeduration));
} else {
// When no duration is present, ie an all day event, VALUE should be date instead of time and dtend = dtstart + 1 day.
$ev->add_property('dtstart', Bennu::timestamp_to_date($event->timestart), array('value' => 'DATE')); // All day event.
$ev->add_property('dtend', Bennu::timestamp_to_date($event->timestart + DAYSECS), array('value' => 'DATE')); // All day event.
}
if ($event->courseid != 0) {
$coursecontext = context_course::instance($event->courseid);
......
......@@ -8,7 +8,7 @@
*
* See http://bennu.sourceforge.net/ for more information and downloads.
*
* @author Ioannis Papaioannou
* @author Ioannis Papaioannou
* @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
*/
......@@ -20,37 +20,44 @@ class Bennu {
return gmstrftime('%Y%m%dT%H%M%SZ', $t);
}
static function timestamp_to_date($t = NULL) {
if ($t === NULL) {
$t = time();
}
return gmstrftime('%Y%m%d', $t);
}
static function generate_guid() {
// Implemented as per the Network Working Group draft on UUIDs and GUIDs
// These two octets get special treatment
$time_hi_and_version = sprintf('%02x', (1 << 6) + mt_rand(0, 15)); // 0100 plus 4 random bits
$clock_seq_hi_and_reserved = sprintf('%02x', (1 << 7) + mt_rand(0, 63)); // 10 plus 6 random bits
// Need another 14 random octects
$pool = '';
for($i = 0; $i < 7; ++$i) {
$pool .= sprintf('%04x', mt_rand(0, 65535));
}
// time_low = 4 octets
$random = substr($pool, 0, 8).'-';
// time_mid = 2 octets
$random .= substr($pool, 8, 4).'-';
// time_high_and_version = 2 octets
$random .= $time_hi_and_version.substr($pool, 12, 2).'-';
// clock_seq_high_and_reserved = 1 octet
$random .= $clock_seq_hi_and_reserved;
// clock_seq_low = 1 octet
$random .= substr($pool, 13, 2).'-';
// node = 6 octets
$random .= substr($pool, 14, 12);
return $random;
}
}
......
......@@ -8,3 +8,4 @@ modifications:
5/ updated DTEND;TZID and DTSTAR;TZID values to support quotations (7 Nov 2014)
6/ added calendar_normalize_tz function to convert region timezone to php supported timezone (7 Nov 2014)
7/ MDL-49032: fixed rfc2445_fold() to fix incorrect RFC2445_WSP definition (16 Sep 2015)
8/ added timestamp_to_date function to support zero duration events (16 Sept 2015)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment