mirror of
https://github.com/moodle/moodle.git
synced 2025-08-10 11:26:41 +02:00
Merge branch 'MDL-49561_m28' of git://github.com/markn86/moodle into MOODLE_28_STABLE
Conflicts: lib/bennu/readme_moodle.txt
This commit is contained in:
commit
685aa0b7c9
3 changed files with 23 additions and 11 deletions
|
@ -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)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue