rlanvin
3a84bcc6be
Fix cache related bug at weekly frequencies
2016-03-24 09:23:11 +02:00
rlanvin
c52b61f2a5
Keep RDATE and EXDATE ordered in RSet
2016-03-23 18:04:10 +02:00
rlanvin
0a46d7cd35
OccursAt for RSet
...
Ref #7
2016-03-23 17:36:24 +02:00
rlanvin
d949e96c59
getOccurrencesBetween and cache for RSet
2016-03-23 17:05:33 +02:00
rlanvin
65886d99a2
Making sure DateTime objects are cloned
...
To avoid problems with cache corruption because DateTime are mutable
2016-03-23 16:00:40 +02:00
rlanvin
e0ca376396
Adding tests for occursAt + timezone
...
Ref #8
2016-03-23 12:03:43 +02:00
rlanvin
0cf1540f85
count, offsetExists and offsetGet for RSet
...
offsetGet is uncached at the moment (ref #7 )
2016-03-21 23:56:35 +02:00
rlanvin
d2384c1997
Adding interface to make RSet behave like RRule
...
Recurrence rules and a recurrence sets now share the same interface.
Also added isFinite() and isInfinite() methods, and improved
the implementation of RSet (ref #7 )
2016-03-21 22:43:38 +02:00
rlanvin
58a8475ba7
First draft implementation for recurrence set
...
The new class RSet can contain multiple RRULE, RDATE, EXRULE and EXDATE.
Ref #7
2016-03-15 23:31:57 +02:00
rlanvin
7e312eaf76
Adding a dedicated test for timezone
2016-03-11 11:02:40 +02:00
gordonzhao
4442384a6f
Fix bug with timezone which is not UTC
...
- Add timezone to the Datetime creation
- Add timezone to the rfcExample test
2016-03-11 15:42:34 +10:00
rlanvin
13626f66c5
Better string generation & parsing
2015-07-08 12:40:45 +03:00
rlanvin
fba57c4ef2
Various methods to convert from and to strings
...
- rfcString() (as well as __toString() to convert to RFC 5545
- parseRfcString() to parse RFC 5545
- humanReadable() to output the rule as a sentence
humanReadable is still a work in progress - in particular the
i18n and some BYXXX parts are not finished.
It also requires intl extension.
2015-07-07 19:19:35 +03:00
rlanvin
b1000a4afd
Implementing cache, ArrayAccess and Countable
2015-07-02 17:12:48 +03:00
rlanvin
b3ec2fb271
Fix a bug with year 2038 on 32bits systems
...
There was still a few mktime() left. They have been replaced
by DateTime.
2015-07-01 14:14:05 +03:00
rlanvin
5f409deae9
Adding debug for failing test on Travis
2015-07-01 12:56:09 +03:00
rlanvin
8de2807d17
More tests, code cleanup
2015-07-01 12:23:39 +03:00
rlanvin
66e56cd4f9
Implementing BYSETPOS with freq > DAILY
...
Needs more tests
2015-06-30 18:19:09 +03:00
rlanvin
066a97d517
Implementing HOURLY/MINUTELY/SECONDLY frequencies
...
Also adding more tests and fixing bugs
BYSETPOS + time is still broken!!
2015-06-29 15:51:54 +03:00
rlanvin
783a9b5c97
More PHP 5.3 compatibility fixes
2015-06-27 14:18:58 +03:00
rlanvin
3cf95e57ef
Attempt to lower compatibility to PHP 5.3
2015-06-27 14:12:57 +03:00
rlanvin
fd31af6ae4
Adding examples from the RFC as tests
...
And fixing the bugs exposed by these tests.
2015-06-27 13:50:28 +03:00
rlanvin
5bc02593fe
First implementation of occursAt
2015-06-26 21:24:52 +03:00
rlanvin
8a20641693
Work in progress
2015-06-26 17:02:29 +03:00
rlanvin
1535174243
Initial commit
2015-06-24 19:28:25 +03:00