wiki:WikiTicketCalendarMacro

Version 41 (modified by hasienda, 4 years ago) (diff)

announce upcoming securitiy fix releases

Calendar view of Milestones and Tickets

Look at ticket #7239 containing 'serious concerns related to use of HTML generator with potentially insecure input' before deployment of this plugin and audit current applications of versions >= 0.5.0 as well.
Update: Latest version of these fixes, replacing potentially vulnerable code and doing a bunch of other changes, is ready, running private release-candidate tests now and will be propagated until 19-Jul-2010 or earlier to 0.11 as well as 0.12 branch. Ask hasienda, if you need to be faster, testing the preliminary version then.

Description

Macro for the Trac Wiki Ticketing system to display Milestones and Tickets in a calendar view. The original version of the macro was hosted here.

No image "wikiticketcalendar_screenshot.png" attached to WikiTicketCalendarMacro
screenshot of WikiTicketCalendarMacro 1.1.0 for Trac 0.12 with German localization (calendar header and tooltip)

Versions compatible with Trac 0.11, 0.12 and even for old 0.10 are available now, so test, enjoy and report back any issue, please.

Bugs/Feature Requests

Existing bugs and feature requests for WikiTicketCalendarMacro are here.

If you have any issues, create a new ticket.

All native English speakers: Vote on #7228 for the requested change of navigation tooltip text or provide better suggestions, please.

Download

Download the zipped source from here.
However, to get the one-file version you could look at and save it with the Trac repository browser:

1 Note: The 0.11 single-file macro install is somewhat smaller than the Python egg with translations,
and there's no visible difference to the genuine 0.12 version, if you don't use localization for Trac 0.12.

Historically the macro code was activated for a long time by

    [components]
    WikiTicketCalendarMacro.* = enabled

what is still correct for 0.11 branch.

New versions from 0.12 branch and trunk with i18n support have a different code structure due to packaging.
See i18n/l10n section for an important hint on egg creation. The statement required for activation has changed as well:

    [components]
    wikiticketcalendar.* = enabled

Source

You can check out WikiTicketCalendarMacro from here using Subversion, or browse the source with Trac.

Example

See download section on how to activate your version.

The invocation for the screenshot above is [[WikiTicketCalendar(*,*,true,Wochenberatung/%Y-%m-%d,true,Beratung)]].
Excerpt of the source documentation:

    Usage
    -----
    [[WikiTicketCalendar([year,month,[showbuttons,[wiki_page_format,
        [show_ticket_open_dates,[wiki_page_template]]]]])]]

    Arguments
    ---------
    year, month = display calendar for month in year ('*' for current year/month)
    showbuttons = true/false, show prev/next buttons
    wiki_page_format = strftime format for wiki pages to display as link
                       (if there is not a milestone placed on that day)
                       (if exist, otherwise link to create page)
                       default is "%Y-%m-%d", '*' for default
    show_ticket_open_dates = true/false, show also when a ticket was opened
    wiki_page_template = wiki template tried to create new page

    Examples
    --------
    [[WikiTicketCalendar(2006,07)]]
    [[WikiTicketCalendar(2006,07,false)]]
    [[WikiTicketCalendar(*,*,true,Meeting-%Y-%m-%d)]]
    [[WikiTicketCalendar(2006,07,false,Meeting-%Y-%m-%d)]]
    [[WikiTicketCalendar(2006,07,true,*,true)]]
    [[WikiTicketCalendar(2006,07,true,Meeting-%Y-%m-%d,true,Meeting)]]

About i18n/l10n support

The development version of this plugin is prepared for localization (tooltip customization in calendar navigation).
But English message texts are still the (POSIX) default. If this isn't your preferred language, you can

  1. look, if it's already available from the Trac plugin l10n project at Transifex or
  2. do it yourself (see the l10n cookbook page for Trac plugins for more details).

You've done a new translation? Superb! Contributing your translation is highly appreciated.
You could send it to the plugin's maintainer or contribute to Trac plugin l10n project via Transifex:

Top translations: Trac_Plugin-L10N » wikiticketcalendar

http://www.transifex.net/projects/p/Trac_Plugin-L10N/c/wikiticketcalendar/chart/image_png

Kindly provided by http://sw.transifex.net/2/static/charts/images/tx-logo-micro.png

Preparing the plugin from source requires the additional step of compiling message catalog files. Walk through:

cd wikiticketcalendarmacro
python ./setup.py egg_info
python ./setup.py compile_catalog -f
python ./setup.py bdist_egg

If you missed the 3rd step, you'll get an error in the 4th step complaining about missing locale directory. This is just a side-effect, because there are no complied message catalogs for inclusion into Python egg, hence the whole path is missing.
To exclude translations marked as # fuzzy by the translator, you'll want to omit the extra -f argument to message catalog compilation. Again, for more details see the l10n cookbook page for Trac plugins.

Recent Changes

[9668] by hasienda on 2010-12-13 00:55:10
WikiCalendarMacro: Pulling trunk in from WikiTicketCalendarMacro, refs #7564.

After separate development for some years lines of these plugins
are crossing again, as I do aim at bundling both to join the best
from both branches.

[9637] by hasienda on 2010-12-08 00:40:35
WikiTicketCalendarMacro: Split plugin/macro code into several modules, refs #7564.
[9615] by hasienda on 2010-12-06 23:08:54
WikiTicketCalendarMacro: Improve my quite historical i18n implementation.

An optional i18n implementation with backwards-compatibility to Trac 0.11
could be done, and much more elegant using a dedicated translation method
for Trac plugins from trac.util.dist, correcting [8264] once more.

Author/Contributors

Author: mcomb
Maintainer: rjollos
Contributors: hasienda

Attachments (2)

Download all attachments as: .zip