PHP Classes

File: docs/README.txt

Recommend this page to a friend!
  Classes of Kjell-Inge Gustafsson   PHP Mantis Export to iCal   docs/README.txt   Download  
File: docs/README.txt
Role: Documentation
Content type: text/plain
Description: Documentation
Class: PHP Mantis Export to iCal
Export Mantis bug reports in iCal format
Author: By
Last change:
Date: 2 years ago
Size: 5,395 bytes


Class file image Download
IcalExport: Mantis iCal Export Plugin ===================================== Copyright (C) 2013-2019 Kjell-Inge Gustafsson, kigkonsult, All rights reserved. author Kjell-Inge Gustafsson, kigkonsult link license GNU Lesser General Public License IcalExport 2.0 - 2019-03-25 The IcalExport Plugin adds calendar export capabilities to MantisBT. Export selected [MantisBT] issues as iCal ([rfc2445]/[rfc5545]) calendar tasks (i.e. TODOs) in a iCal media file (extension .ics) for import into - public calendars - business/organization calendars - private calendars in a PC, pad or smartphone - etc The IcalExport plugin adds buttons for calendar export in the 'View issues' and 'view' (issue) pages. You will find an iCal summary as The iCal standards are rfc5545/rfc5546 (obsoletes rfc2445/rfc2446): rfc5545 'Internet Calendaring and Scheduling Core Object Specification', download from, rfc5546 'iCalendar Transport-Independent Interoperability Protocol (iTIP) Scheduling Events, BusyTime, To-dos and Journal Entries', download from You can found the previous version (1.06) on github as tab, 1.06. REQUIREMENTS: ------------- Made for and tested with - PHP >= 5.6 - MantisBT version 2.20.0 - iCalcreator (version >=2.27.16!), not included INSTALLATION: ------------- Unstall any previous version of IcalExport. Download and extract the IcalExport plugin in the 'plugins' directory, sub-directory 'IcalExport'. Download iCalcreator from and extract into the 'api' folder. Access to the 'api/iCalcreator/autoload.php' is required. In 'Manage' and 'Manage Plugins', you should find and install 'IcalExport'. There is no configuration. Calendars (and Vtodos) produced with previous version of IcalExport do not correlate with Calendars (and Vtodos) produced with this version of IcalExport. DESCRIPTION: ------------ The iCal media file with vcalendar and vtodo components are built as follows; First, a <site/system unique id> is set, based on the MantisBT 'hostname' part config from "config_get( 'nostname' )" and used in each TODO component, below. METHOD value 'PUBLISH' The created iCal TODO calendar is simply a 'posting' one, NO 'request' TODO calendar (i.e. assuming that issues are already assigned). Some iCal calendar properties are set, optional in rfc5545 but 'required' by some calendar software: X-WR-CALNAME value: user_name + ' issues' X-WR-CALDESC value: user_name + ' issues at ' + <site/system unique id> + <date> X-WR-TIMEZONE value: 'UTC' For each bug report, an iCal VTODO component is created with the following properties and base input values : UID based on MantisBT bug report properties 'date_submitted' and 'id' and the <site/system unique id> ex. '' DTSTAMP component timestamp (create) date, automatically created by iCalcreator. The date timezone is 'UTC'. DTSTART from MantisBT bug report property 'date_submitted' (if assigned on registration) or the assign date The date timezone is 'UTC'. SEQUENCE from the number of bug (history) updates SUMMARY from MantisBT bug report property 'summary', if missing, empty. PRIORITY from MantisBT bug report property 'priority', if missing, 'priority'- value 'unknown is set'. MantisBT bug report properties 'reproducibility' and 'severity' are set as (x-)parameters. ORGANIZER from MantisBT bug report property 'handler_id'. Also set as ATTENDEE with role CHAIR. If no 'handler_id' is set, user is set. URL a link back to the MantisBT bug report CREATED from MantisBT bug report property 'date_submitted'. The date timezone is 'UTC'. LAST-MODIFIED from MantisBT bug report property 'last_updated' (if not equal to 'date_submitted'). The date timezone is 'UTC'. DUE from MantisBT bug report property 'due_date', if set. If 'due_date' is missing and 'eta' is set, a DUE date property is created, based on 'date_submitted' properties. The date timezone is 'UTC'. CATEGORIES from MantisBT bug report property 'category' and each MantisBT bug report 'tag' creates (additional) CATEGORIES CLASS from MantisBT bug report property 'view_state' STATUS from MantisBT bug report property 'status', 'resolution' is added as parameter. DESCRIPTION a concatenation of 'all' non-empty MantisBT bug report properties into one iCal DESCRIPTION (rendered with iCal row breaks) in the following order: project, id, summary, reporter, handler, category, priority, severity, reproducibility, status, resolution, projection, eta, view_state, description, steps_to_reproduce, additional_information, duplicate_id, bug_text_id, os, os_build, platform, version, fixed_in_version, build, profile_id, sponsorship_total, sticky and target_version COMMENT each MantisBT bug report (non-private) 'bugnote' (type=BUGNOTE) creates one iCal COMMENT ATTACH each MantisBT bug report 'attachment' creates one iCal ATTACH (link) ATTENDEE from MantisBT bug report reporter (role OPT-PARTICIPANT) assignee (role CHAIR) bugnote reporter (role OPT-PARTICIPANT) monitors (role OPT-PARTICIPANT) SUPPORT: --------