Loading...
 

Event_Management_System




Implementation


The following tracker definitions contain the minimal fields required to run an event and display a schedule. It should be augmented to suit specific needs.

YAML
preferences:
 enable: [ feature_trackers, feature_wiki, wikiplugin_schedule, wikiplugin_trackerlist ]



Event Tracks


The track fields are left to a minimum. More fields can be added for specific events as required.

YAML
objects:
 -
  type: tracker
  ref: track
  data:
   name: Tracks
   description: Tracks running in parallel during the event.
 -
  type: tracker_field
  ref: track_name
  data:
   name: Name
   tracker: $track
   type: text_field
   flags: [ public, list, mandatory, link ]
   order: 10


Speakers


YAML
objects:
 -
  type: tracker
  ref: speaker
  data:
   name: Speakers
   description: Speakers presenting in the event.
 -
  type: tracker_field
  ref: speaker_name
  data:
   name: Name
   tracker: $speaker
   type: text_field
   flags: [ public, list, mandatory, link ]
   order: 10
 -
  type: tracker_field
  ref: speaker_title
  data:
   name: Title
   tracker: $speaker
   type: text_field
   flags: [ public, list ]
   order: 20
 -
  type: tracker_field
  ref: speaker_org
  data:
   name: Organization
   tracker: $speaker
   type: text_field
   flags: [ public, list ]
   order: 30
 -
  type: tracker_field
  ref: speaker_bio
  data:
   name: Bio
   tracker: $speaker
   type: text_area
   flags: [ public ]
   order: 40


Sessions


YAML
objects:
 -
  type: tracker
  ref: session
  data:
   name: Sessions
   description: Sessions on the schedule
   allow: [ attachments ]
   default_status: open
 -
  type: tracker_field
  ref: session_title
  data:
   name: Title
   tracker: $session
   type: text_field
   flags: [ public, list, mandatory, link ]
   order: 10
 -
  type: tracker_field
  ref: session_track
  data:
   name: Track
   tracker: $session
   type: item_link
   options: $profileobject:track$,$profileobject:track_name$
   flags: [ public, list, mandatory ]
   order: 20
 -
  type: tracker_field
  ref: session_speaker
  data:
   name: Speaker
   tracker: $session
   type: item_link
   options: $profileobject:speaker$,$profileobject:speaker_name$,1
   flags: [ public, list, mandatory ]
   order: 30
 -
  type: tracker_field
  ref: session_start
  data:
   name: Start Time
   tracker: $session
   type: calendar
   options: dt
   flags: [ public, list ]
   order: 40
 -
  type: tracker_field
  ref: session_end
  data:
   name: End Time
   tracker: $session
   type: calendar
   options: dt
   flags: [ public, list ]
   order: 50
 -
  type: tracker_field
  ref: session_tiny
  data:
   name: Short Description
   description: Very short description displayed as additional information on the conference schedule.
   tracker: $session
   type: text_area
   flags: [ public ]
   order: 60
 -
  type: tracker_field
  ref: session_abstract
  data:
   name: Abstract
   description: Complete session description.
   tracker: $session
   type: text_area
   flags: [ public ]
   order: 70


SCHEDULE Plugin


YAML
objects:
 -
  type: plugin_alias
  data:
   name: schedule
   implementation: trackertimeline
   description:
    name: Event Schedule
    description: Displays the events as a schedule with tracks in the horizontal axis and time in the vertical axis.
    prefs: [ wikiplugin_schedule ]
    params:
     lower:
      required: true
      name: From Date
      description: "Lower bound date/time of the schedule (ex: 2008-08-22 08:00:00)"
     upper:
      required: true
      name: To Date
      description: "Upper bound date/time of the schedule (ex: 2008-08-22 17:00:00)"
   body:
    input: ignore
    default: ""
   params:
    lower: ""
    upper: ""
    tracker: $session
    title: $session_title
    group: $session_track
    start: $session_start
    end: $session_end
    summary: $session_tiny



Sample Data


Tracks

YAML
objects:
 -
  type: tracker_item
  ref: track_001
  data:
   tracker: $track
   status: open
   values:
    - [ $track_name, Technical ]
 -
  type: tracker_item
  ref: track_002
  data:
   tracker: $track
   status: open
   values:
    - [ $track_name, Business ]


Speakers

YAML
objects:
 -
  type: tracker_item
  ref: speaker_001
  data:
   tracker: $speaker
   status: open
   values:
    - [ $speaker_name, John Smith ]
    - [ $speaker_title, Lead Developer ]
    - [ $speaker_org, ABC Systems ]
    - [ $speaker_bio, Started on a Commodore 64... ]
 -
  type: tracker_item
  ref: speaker_002
  data:
   tracker: $speaker
   status: open
   values:
    - [ $speaker_name, Jane Doe ]
    - [ $speaker_title, Lead Evangelist ]
    - [ $speaker_org, ACME Systems ]
    - [ $speaker_bio, Mother of 2... ]


Sessions


YAML
objects:
 -
  type: tracker_item
  ref: session_001
  data:
   tracker: $session
   status: open
   values:
    - [ $session_title, The real story ]
    - [ $session_track, Business ]
    - [ $session_speaker, John Smith ]
    - [ $session_tiny, John Smith tells it all ]
    - [ $session_abstract, "From the earlier years, to the recent huge success of ABC Systems, learn it all from this captivating speaker." ]
    - [ $session_start, D(2008-11-01 12:00:00) ]
    - [ $session_end, D(2008-11-01 13:00:00) ]
 -
  type: tracker_item
  ref: session_002
  data:
   tracker: $session
   status: open
   values:
    - [ $session_title, "YAML, explained" ]
    - [ $session_track, Technical ]
    - [ $session_speaker, Jane Doe ]
    - [ $session_tiny, The real power of YAML ]
    - [ $session_abstract, "A real-life case study use of YAML for the wildly popular profiles.tiki.org project" ]
    - [ $session_start, D(2008-11-01 14:00:00) ]
    - [ $session_end, D(2008-11-01 15:00:00) ]

Add wiki pages with the schedule & trackerlist plugins


This will use event_management_system_schedule_wiki_include and Event_Management_System_List_of_Speakers_wiki_include
YAML
preferences:
  enable: [ feature_wiki ]
objects:
  -
    type: wiki_page
    ref:  event_management_system_schedule_wiki_page
    data:
      name: Schedule
      description: Schedule
      lang: en
      content: wikicontent:event_management_system_schedule_wiki_include
  -
    type: wiki_page
    ref:  Event_Management_System_List_of_Speakers_wiki_include
    data:
      name: List_of_Speakers
      description: List of speakers
      lang: en
      content: wikicontent:Event_Management_System_List_of_Speakers_wiki_include


Permissions

YAML
permissions:
 Admins:
  allow: [ admin_trackers ]
 Anonymous:
  allow: [ view, wiki_view_history ]
  objects:
   -
    type: tracker
    id: $track
    allow: [ view_trackers ]
   -
    type: tracker
    id: $speaker
    allow: [ view_trackers ]
   -
    type: tracker
    id: $session
    allow: [ view_trackers ]


Todo: add permissions for speakers to update their profile and session.


Related

EventZuppa
http://www.eventbrite.com/
http://phpbeer.com/tiki-index.php?page=EventManagementSoftwareList
http://www.techsoup.org/learningcenter/software/page7510.cfm?cg=event&sg=email1
http://tiki.org/TikiFestPorto#9_Event_Management_System_profile
http://www.codefest.ws
http://wikisym.org/ws2008/index.php/Program
http://onlinux.ca/newschedule
http://pentabarf.org/

Paper_Submission_and_Reviewing_System