-
Notifications
You must be signed in to change notification settings - Fork 1
/
TODO.txt
124 lines (113 loc) · 8.51 KB
/
TODO.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
TODO for Version 2.x:
===========================
High:
- Fix problems with the drop-down and event listing (pertaining to repeating events) in manageevents.php.
- A toggle for RSS exporting that puts the date/time in the pubDate element rather than in the description.
A default setting will need to be included in config.inc.php as well as an override in the RSS export form.
This may also need an include/exclude list (in config.inc.php) to handle this differently depending on the user agent string (but will this mess up caching?).
Low:
- Give final warning about truncating records in "Upgrade Database" section in upgradedb.php
- Improve description on export page.
- After login do a redirect to avoid resubmitting POST when using the back button
- Allow data currently stored in session to be loaded from the DB or a file.
- Validate iCalendar export format: http://www.kanzaki.com/docs/ical/
- Assign DB results by reference. Example: $var =& DBQuery(...) or $results =& $db->query(...)
- Get row by reference. Example $row =& $results->fetchRow()
- Free results by using $results->free()
- Properly handle string returns from functions like DBQuery.
- Expand AUTH_HTTP_CACHE to LDAP
- Improve the way AUTH_HTTP checks if the authentication was successful or not successful by also checking the body text.
- "Send event to a friend" form.
- A 'comments' field for sponsors where additional information (e.g. mailing address or phone number) could be stored.
Future:
- Allow events to be flagged private so that you can only see them if you log in.
- Rich Text Editor for description (http://developer.yahoo.com/yui/editor/ or http://www.kevinroth.com/rte/)
- Full text searching
- Store IP if logged in and logout if IP changes.
- Develop tool for assisting with translations.
- When creating a new calendar allow settings (i.e. colors, header/footer HTML, sponsors) to be copied from another calendar. Allow user to select what settings by (un)checking boxes. [bkgray]
- List other calendars in the default calendar's column. Allow calendars to chose not be displayed there. Implement it in the export script to allow the list to be displayed on other Web sites. [Wingrunner]
Finished:
- Check for the url column in upgradedb.php, and move the URL data to description as part of the upgrade (unless the URL data is empty). The URL column should be emptied as well (Finished 2008-11-07)
- Change the drop-down on 'my submitted events' page to only show months that actually have events (Finished 2008-11-06)
- Add RSS text to 'Subscribe & Download' description (Finished 2008-11-06)
- upgradedb.php failed with an empty database (Finished 2008-11-06)
- Rename TABLEPREFIX to SCHEMANAME so it is not confused with the 'vtcal_' table prefix (Finished 2008-11-06)
- Added new calendar setting for header (Finished ~2008-11-04)
- Improve iCal/RSS caching (Finished 2008-10-30)
- Check help text to see if it is still accurate (Finished ~2008-10-24)
- Move all lang files to languages/en.inc.php (Finished 2008-10-22)
- For upgradedb.php make sure 'int(11)' is aliased to 'int'. (Finished ~2008-10-19)
- Check existing column max lengths, 'max(length(X))', for fields that are being updated in upgradedb.php. (Finished 2008-10-21)
- Update install/upgradedb.php for PostgreSQL. (Finished 2008-10-21)
- Add a customizable prefix for table names to support multiple sets of vtcalendar tables within one Postgres database: (Finished 2008-10-21)
Search: (?<!"\.TABLEPREFIX\.")(?<![."'])(?=vtcal_(adminuser|admin|calendar|calendarviewauth|category|colors|event|searchedkeywords|searchfeatured|searchkeyword|searchlog|sponsor|template|user))
Replace: ".TABLEPREFIX."
- Add RSS links to subscribe page. (Finished 2008-10-20)
- Change fields to NotNull. Many fields are allowed to be null. (Finished 2008-10-20)
- Change 'Jump To' in column back to being a single drop-down. (Finished 2008-10-20)
- Include file from static-includes before sub-calendar headers, and after sub-calendar footers.
- Improve 'Upcoming' print view (Finished 08-10-15)
- Disable admin buttons/icons in print view (Finished 08-10-15)
- Disable AJAX in month view for little calendar month-navigation arrows.
- Add helpsignup.php link back to displaylogin() in functions.inc.php
- Should probably remove checking for HTTPS and just use SECUREBASEURL for the action of any forms that need to be secured. Search scripts for: _SERVER['HTTPS']
- Filters need to work on upcoming events view.
- A message should output when a keyword is being used in day/week/month view. There is currently no way for a user to know its filtering.
- $iday['css'] and $iday['color'] should be removed if not being used.
- Check current database schema vs 2.2.2.
- Determine what 'detailscaller' did and if they can be removed.
- Why was the saveall button disabled? ((Logic was unstable. Was removed in 2.2.2))
- Add colors to vtcal_colors for new CSS
- Allow SMTP e-mail via Pear::Mail.
- Check input validation constants in constants.inc.php to determine the correct values and merge the constants as necessary.
- Static files are now included pre/post the header/footer for sub-calendars. This allows for mandatory header/footer HTML.
- Added new "view authentication" mode that allows any successfully authenticated user to view the calendar.
TODO for Version 3.x:
- Modular DB, allow DB actions to be customized/optimized per database.
- Modular authentication
- Approval chain (e.g. SponsorA approves SponsorB's events who approves SponsorC's events)
- Allow multiple reoccurring definitions with an include/exclude flag. See http://www.imc.org/pdi/vcal-10.txt and http://tools.ietf.org/html/rfc2445
- Allow any sponsor to be the end of the approval chain, to allow sponsors that can make events public without having access to modify the calendar settings.
- Allow 'additional categories' for events, which would be used when a user filters the calendar.
- Allow URLs to built programmatically to allow links like http://localhost/vtcalendar/{calendarid}/{eventid} or http://localhost/vtcalendar/{calendarid}/month/2008-01
- Allow an instance of an event to be separated from the original repeating event. This would essentially be a copy, followed by adding an exclude to the repeating definition once the copy is posted.
- Event details appear in small box when hovering over event in month/week/day view.
- Database connection persistence?
- Allow any sponsor to accept submissions via a public 'add new event' form.
Events submitted this way would also need an e-mail address (and other contact info) for the person submitting the event.
A confirmation e-mail would be sent to the address with a link the submitter will need to click to act as a spam filter.
When the event is accepted or rejected, a confirmation e-mail will be sent to the submitter as well.
- An address field that will link to Google Maps. Maybe preview the map directly in the page?
- Allow week/month to be viewed as a list of events (like upcoming view).
Other Ideas:
- Icons for events that are displayed in the event/day/week/month views. [Wingrunner]
OLD TODO:
===========================
FEATURES
--------
X don't allow calendar admins to lock themselves out from the calendar by restricting access
- search by sponsor
- display email addresses as javascript to protect against spammers
- harden against cross-site scripting attacks
X make "manage users" available in default calendar for all newly created calendars (from Andre: Not sure what this means, but main admins can always access calendars now)
(important for setting passwords when LDAP is not used)
- document export parameters timebegin=today and rangedays=30
- document difference between a calendar and categories
BUGS
----
- when admin edits an "to-be-approved" item it is automatically approved (which is OK) but
also becomes the event of the admin (which is not OK)
- using the filter resets the calendar to the view that includes today
- userids are sometime case sensitive, sometimes not -> you may be able to login with an upper/lowercase Id but not "Manage users" for example
IDEAS FOR FUTURE IMPROVEMENTS
-----------------------------
- iCal import
- sorted log
- have a print view for the calendar
- have a calendar output designed for pocket PC
- implement a year view that highlights certain admin or user-defined categories
- make it an option whether or not the admin gets an email upon a new event submission (the admin should be able to change that)
- remember search parameter after using the back button
- have a feature to allow copy of all search results via vCalendar/iCalendar
- improve search further (take out special characters [intelligently]) e.g. "parents' day"