Skip to end of metadata
Go to start of metadata

Zend Framework: Zend_Calendar Component Proposal

Proposed Component Name Zend_Calendar
Developer Notes http://framework.zend.com/wiki/display/ZFDEV/Zend_Calendar
Proposers Kyle Spraggs
Zend Liaison TBD
Revision 1.0 - 26 February 2010: Initial Draft.
1.1 - 11 March 2010: Initial Ready for Review proposal.
1.2 - 24 March 2010: Reworked proposal for new rewrite of Zend_Calendar (wiki revision: 20)

Table of Contents

1. Overview

Zend_Calendar is a calendar component that can generate a calendar from a renderer (such as Zend View). Zend_Calendar includes the ability to add events from different sources and ships with source handlers for Arrays, Zend_Db_Table, and Doctrine Collections.

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

  • This component will include adapters for various event sources.
  • This component will include support for events from arrays.
  • This component will include support for events from Zend_Db_Table.
  • This component will include support for events from Doctrine Collections.
  • This component may include support for events from iCal format.
  • This component will include support for multi-day events.
  • This component will not include support for recurring events.
  • This component will include adapters for rendering.
  • This component will include support for rendering using Zend_View.
  • This component will support caching of the Zend_Date object.
  • This component will support merging of multiple Zend_Calendar objects.

4. Dependencies on Other Framework Components

  • Zend_Date
  • Zend_Exception
  • Zend_Locale
  • Zend_View

5. Theory of Operation

The component is used to render a calendar and includes the ability to add events from various sources.

6. Milestones / Tasks

  • Milestone 1: [DONE] Initial Class Design
  • Milestone 2: [DONE] Create working prototype.
  • Milestone 3: Submitted to Ready for Review.
  • Milestone 4: Create initial documentation.
  • Milestone 5: Create unit tests.
  • Milestone 6: (...)

7. Class Index

  • Zend_Calendar
  • Zend_Calendar_Day
  • Zend_Calendar_Event
  • Zend_Calendar_Event_Abstract
  • Zend_Calendar_Event_Array
  • Zend_Calendar_Event_DoctrineCollection
  • Zend_Calendar_Event_Interface
  • Zend_Calendar_Event_ZendDbTable
  • Zend_Calendar_Render
  • Zend_Calendar_Render_Abstract
  • Zend_Calendar_Render_Interface
  • Zend_Calendar_Render_ZendView

8. Use Cases

9. Class Skeletons

Labels:
zend zend Delete
calendar calendar Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Mar 11, 2010

    would be nice to have an ability to merge calendars

  2. Mar 11, 2010

    What do you mean by merging calendars?

    1. Mar 11, 2010

      Something like this:

      $project = new Zend_Calendar();
      $project->addEvent('meeting today');
      $project->merge($holidays); // calendar with office holidays

      1. Mar 15, 2010

        Very good idea. I'll have to add it to the proposal.

  3. Feb 05, 2011

    Archiving this proposal, feel free to recover it when you want to work on it again. For more details see this email.