1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-28 17:52:43 +01:00
phorge-phorge/src/applications
epriestley 182611ef7e Schedule monthly events on the 29th, 30th or 31st relative to the end of the month
Summary:
Ref T11326. If you scheudle a monthly event on the 31st, the default behavior of RRULE means that it only occurs in months with 31 days.

This is actually how Google Calendar and Calendar.app both work: if you schedule a monthly event on the 31st, you get about six events per year.

This seems real confusing and bad to me?

Instead, if the user schedules a monthly event on the 29th, 30th or 31st, pretend they scheduled it on the "last day of the month" or "second-to-last day of the month" or similar, so they always get 12 events per year.

This could be slightly confusing too, but seems way less weird than not getting an event every month.

Test Plan: Scheduled events on the 31st of October, saw them occur in November too after the patch.

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T11326

Differential Revision: https://secure.phabricator.com/D16775
2016-10-31 14:13:50 -07:00
..
almanac Fix getIcon calls in PHUIObjectListItem 2016-08-19 09:35:09 -07:00
aphlict Cache user notification and message counts 2016-06-05 08:52:43 -07:00
arcanist/conduit Remove remaining arcanist project code 2015-07-08 19:37:28 +10:00
audit Fix a Herald issue where testing commits against rules with revision-related conditions would fail 2016-09-08 17:16:40 -07:00
auth Cache generation of the SSH authentication keyfile for sshd 2016-10-21 07:29:40 -07:00
badges Better destruction of PhameBlog, BadgesBadge 2016-06-27 18:24:23 -07:00
base Update RedirectController for handleRequest 2016-09-19 13:24:01 -04:00
cache Cache generation of the SSH authentication keyfile for sshd 2016-10-21 07:29:40 -07:00
calendar Schedule monthly events on the 29th, 30th or 31st relative to the end of the month 2016-10-31 14:13:50 -07:00
celerity Support ".ico" in Celerity and simplify rewite rule configuration 2016-10-20 11:28:11 -07:00
chatlog Update chatlog to newPage() 2016-04-02 13:20:55 -07:00
conduit Fixed undefined variable error in call from ConduitIntListParameterType 2016-10-17 12:38:15 +00:00
config When setup issues raise opcache configuration errors, point at the opcache configuration page 2016-10-07 08:23:13 -07:00
conpherence Fix Conpherence NUX showing empty Joinable Rooms 2016-10-20 17:34:28 -07:00
console Update DarkConsole for handleRequest 2016-09-19 13:18:27 -04:00
countdown Fix new Countdown link 2016-06-07 20:13:08 -07:00
daemon Fix a fatal when viewing a daemon task with an invalid ID 2016-07-08 07:08:45 -07:00
dashboard Implement a "pro" EditEngine for dashboard panels 2016-07-03 15:07:36 -07:00
differential Make "metamta.differential.inline-patches" imply a reasonable byte limit, not just a line limit 2016-10-17 15:56:21 -07:00
diffusion Write a basic SSH pull log for Git 2016-10-20 13:39:30 -07:00
diviner Update Diviner for array-valued @doc-stuff return values from DocblockParser 2016-09-02 05:24:29 -07:00
doorkeeper Recover from a race when importing external objects (like JIRA issues) for the first time 2016-09-07 11:16:42 -07:00
draft/storage Clean up some log spam caused by races in VersionedDraft 2016-09-05 13:01:53 -07:00
drydock Expose Drydock blueprints via Conduit 2016-10-13 20:48:24 +00:00
fact Update Facts for newPage 2016-04-03 15:07:52 -07:00
feed Make "Core Applications" more reasonable 2016-08-12 07:57:59 -07:00
files Allow users to drop .ics files on calendar views to import them 2016-10-18 15:26:44 -07:00
flag Move FontIcon calls to Icon 2016-01-28 08:48:45 -08:00
fund Consistently refer to 'Projects' as 'Tags' 2016-04-19 16:48:21 +00:00
guides Use new Guide layout in Config->Welcome 2016-09-03 07:32:22 -07:00
harbormaster Added a 'name' field to the results for harbormaster.build.search endpoint 2016-09-19 13:15:52 -04:00
help Use "book" instead of "life ring" icon for global help menu 2016-10-28 14:33:18 -07:00
herald Fix a Herald issue where testing commits against rules with revision-related conditions would fail 2016-09-08 17:16:40 -07:00
home Revert "Clean up more Quicksand" 2016-10-01 12:58:30 -07:00
legalpad Normalize casing on property boxes 2016-04-06 15:33:15 -07:00
lipsum Modularize content sources 2016-03-26 11:59:45 -07:00
macro Normalize casing on property boxes 2016-04-06 15:33:15 -07:00
maniphest Rough in most of Calendar exports 2016-10-06 04:06:35 -07:00
meta Fix policy capitalization 2016-10-20 17:34:59 -07:00
metamta Make Herald test workflow modular and more clear 2016-08-03 16:12:33 -07:00
multimeter Add a cluster.read-only option 2016-04-09 13:40:47 -07:00
notification Add an icon to aphlict connection status 2016-10-02 08:17:21 -07:00
nuance Fix some more setIcon() issues 2016-08-31 10:00:03 -07:00
oauthserver oauthserver: get client ID/secret from HTTP auth 2016-10-31 08:22:52 -07:00
owners Modularize Owners package transactions 2016-10-13 21:07:02 +00:00
packages Make "Core Applications" more reasonable 2016-08-12 07:57:59 -07:00
passphrase Prevent locked credentials from being made accessible via conduit 2016-05-18 14:54:44 -07:00
paste Update Phurl to use EditEngine 2016-09-20 09:38:49 -04:00
people Use more CalendarDateTime and fewer epoch timestamps in Calendar 2016-10-06 03:52:59 -07:00
phame Don't lock subscription in PhameBlog 2016-09-23 09:03:41 -04:00
phid Simplify how tag lists manage their handles 2016-08-19 11:09:40 -07:00
phlux Normalize casing on property boxes 2016-04-06 15:33:15 -07:00
pholio Make Herald test workflow modular and more clear 2016-08-03 16:12:33 -07:00
phortune Add a basic invoice view for printing to Phortune 2016-10-29 17:46:47 -07:00
phpast Update phpast for new UI 2016-04-05 13:52:59 -07:00
phragment Give Phragment a sort of tetris block thing as a title glyph 2016-09-22 15:13:06 -07:00
phrequent Redesign Config Application 2016-08-29 15:49:49 -07:00
phriction Fix Phriction document move on to existing document placeholder 2016-10-18 11:58:24 +00:00
phurl Expose conduit API methods for Phurl URLs 2016-09-27 00:21:49 -04:00
policy Allow *.search Conduit API methods to have data bulk-loaded by extensions 2016-07-31 11:15:18 -07:00
ponder Make "Core Applications" more reasonable 2016-08-12 07:57:59 -07:00
project Revert "Clean up more Quicksand" 2016-10-01 12:58:30 -07:00
releeph Make "Core Applications" more reasonable 2016-08-12 07:57:59 -07:00
remarkup/conduit phtize all the things 2015-05-22 21:16:39 +10:00
repository Fix an issue where repository message counts would never reset 2016-09-28 15:02:26 -07:00
search Add developer UI for accessing NUX and "Overheated" query states 2016-10-20 13:38:26 -07:00
settings Allow Durable Column to be minimized 2016-09-30 20:24:18 +00:00
slowvote Prepare for event imports in Calendar 2016-10-12 10:45:31 -07:00
spaces Allow *.search Conduit API methods to have data bulk-loaded by extensions 2016-07-31 11:15:18 -07:00
subscriptions Allow stacked comment actions to be explicitly ordered 2016-04-06 09:15:27 -07:00
support/application
system Support ".ico" in Celerity and simplify rewite rule configuration 2016-10-20 11:28:11 -07:00
tokens Added a token_token table in anticipation of some data-driven tokens 2016-09-27 11:12:34 -04:00
transactions Improve some setInitialValue() behavior for PhortuneMerchants 2016-10-28 14:54:13 -07:00
typeahead Push typehead browse result selector button down one <div> 2016-06-21 15:28:12 -07:00
uiexample Add setBackground to PHUIIconView 2016-08-19 13:19:53 -07:00
xhprof Removing deprecated method calls 2016-08-23 03:26:34 -05:00