Loading...
 
Skip to main content

History: Tracker Handler

Source of version: 32 (current)

Copy to clipboard
            This ((handler)) allows to create trackers and the related fields. This page describes the syntax and available options. To use trackers in profiles, ((Object References)) are required. Item creation is also supported.

!Tracker Handler Example for a Bug Tracker
{CODE(caption="YAML" wrap="1")}
preferences:
 feature_trackers: y
objects:
 -
  type: tracker
  ref: bug_tracker
  data:
   name: Bugs
   description: Simple Bug Tracker
   default_status: open
   show: [status, creation_date, modification_date, list_modification_date ]
   allow: comments
 -
  type: tracker_field
  ref: bug_summary
  data:
   name: Summary
   tracker: $bug_tracker
   type: text_field
   flags: [searchable, public, list, mandatory]
   order: 1
 -
  type: tracker_field
  ref: bug_priority
  data:
   name: Priority
   tracker: $bug_tracker
   type: numeric
   flags: [searchable, public, list]
   order: 2
 -
  type: tracker_field
  ref: bug_description
  data:
   name: Description
   tracker: $bug_tracker
   type: text_area
   flags: [public, mandatory]
   order: 3
 -
  type: tracker_field
  ref: bug_assignee
  data:
   name: Assigned to
   tracker: $bug_tracker
   type: user
   flags: [searchable, public, list]
   order: 4
 -
  type: tracker_item
  ref: bug_001
  data:
   tracker: $bug_tracker
   status: open
   values:
    - [ $bug_summary, No interface to install profiles ]
    - [ $bug_assignee, lph ]
    - [ $bug_priority, 3 ]
    - [ $bug_description, "Some description" ]
{CODE}

Some options containing field ids cannot be set during the tracker creation due to circular dependencies. To solve this, the tracker_option handler can be used:

{CODE(caption=YAML)}
objects:
 type: tracker_option
 data:
  name: popup_fields
  value: $bug_assignee
  tracker: $bug_tracker
{CODE}

!Tracker Object
||__Field Name__|__Mandatory__|__Value__
name|yes|Tracker name
description| |Full tracker description
list_default_status| |A single value or multiple values from (open,pending,closed)
email| |The email address to contact for any activity on the tracker
email_simplified| |Send the emails in a simplified format
default_status| |Status applied to new items from (open,pending,closed)
modification_status| |Status applied on item modification (open,pending,closed)
show| |__List of display options to activate__
| |status|Display the field status field
| |status_admin_only|Make the status field only visible to admins
| |creation_date|Display the creation date in the full view
| |list_creation_date|Display the creation date in the item list
| |modification_date|Display the last modification date in the full view
| |list_modification_date|Display the last modification date in the item list
allow| |__List of permissions granted__
| |user_see_own|Allow the user to see his/her own items through Plugin TrackerList with param view=user. No extra perm is needed at the tracker level. (Tiki 12.1+)
| |creator_modification|Allow the creator to modify the item
| |creator_group_modification|Allow users in the same default group as the creator to edit the item
| |creator_deletion|Allow the creator to delete the item
| |creator_group_deletion|Allow users in the same default group as the creator to delete the item
| |rating|Enable ratings on items
| |comments|Enable comments on items
| |attachments|Enable attachments on items
| |one_item_per_user|Only one item per user or IP (Tiki 5.1+)
creation_date_format| |Format to display the creation date in
modification_date_format| |Format to display the last modification date in
sort_default_field| |The field to sort the tracker list with (creation,modification,item)
sort_default_order| |Sort order (asc,desc)
restrict_start| |Only allow items to be added from the provided date
restrict_end| |Only allow items to be added until the provided date
hide_list_empty_fields | | (y,n)
allow_one_item_per_user | | Only one item per user or IP  (y,n)
section_format | | Determines how headers will be rendered when using header fields as form section dividers (flat, tab)
popup_fields | | List detail pop-up (Comma-separated list of field IDs)
admin_only_view | | Restrict non admins to wiki page access only (y,n) Tiki 10.1+ ||
!Tracker Field Object
||__Field Name__|__Mandatory__|__Value__
name|yes|The label of the field
permname| |Reference name to be used in webservices and internal libraries, defaults to the profile object reference or field id
tracker|yes|The ID of the tracker, usually a reference to a tracker object
description| |A full description of the field
descparsed| |description field is wiki parsed y/n (default n): available from v6.0 onwards
errordesc| |error message text for the field: available from v6.0 onwards
type| |Tracker field type (list below)
options|''no*''|Option string, same as tracker field form. Not always needed.
order| |numeric field to indicate the display order of the tracker fields
visible| |Field accessibility (public, admin_only, admin_editable, creator_editable, immutable)
visBy | | Groupnames separated by comma that can view the field. Available since 16.0 (and 15.3)
editBy | | Groupnames separated by comma that can edit the field. Available since 16.0 (and 15.3)
validation| |
validation_param| |
validation_message| |
flags| |__List of field options__
| |list|Display field in item list
| |link|Link field to full item view
| |searchable|Allow to filter on field
| |public|Display field in trackerlist
| |mandatory|If field is required
| |multilingual|If field is multilingual||

!! Field types
These are the field names as recognized by TikiProfiles. For more information about the ''options'' argument, see [http://doc.tiki.org/Tracker+Field+Type|Trackers Documentation].
{SORT()}
* text_field
* a (this type is for textarea, ''text_area'' keyword is not supported yet)
* checkbox
* numeric
* dropdown
* dropdown_other
* radio
* user
* group
* ip_address
* country
* datetime ~~grey:(corresponds to the field "Date and Time", the 5-drop-down [[dd-mm-yyyy hh-mm] basic date picker). See also __calendar__ above.~~
* calendar ~~grey:(corresponds to the field "Date and Time (Date Picker)", the jQuery-UI datetime picker)~~
* image
* action
* header
* static
* category
* item_link
* item_list
* item_list_dynamic
* email
* multimedia
* auto_increment
* user_subscription
* map
* system
* computed
* preference
* attachment
{SORT}

!! Field preference names (since Tiki8)
Since ((doc:Tiki8)), some tracker fields are not enabled by default, and you need to set them as enabled in the profile definition. Their names are not necessarily the same ones (unluckily). Some of those names are (uncompleted list):
{SORT()}
* trackerfield_autoincrement: y
* trackerfield_itemlink: y
* trackerfield_itemslist: y
*{SORT}

! Tracker Item Object
||__Field Name__|__Mandatory__|__Value__
tracker|yes|The tracker to add the item to.
status| |The status of the tracker item (open,pending,closed)
values|yes|A list of field-value pairs. For each item in the list, the first value is the ID of the tracker field and the second value is the value to attribute to it.||

{CODE(caption="YAML")}
objects:
  -
    type: tracker_item
    ref: event_calendar_demo_item
    data:
      tracker: $profileobject:event_calendar$
      values:
        - [4, Demo Event]
        - [5, This is a demo event that is installed together with the add-on.]
{CODE}

From Tiki 14 on you can use permNames, as follows:
{CODE(caption="YAML")}
objects:
  -
    type: tracker_item
    ref: event_calendar_demo_item
    data:
      tracker: $profileobject:event_calendar$
      values:
        - [eventName, Demo Event]
        - [eventDescription, This is a demo event that is installed together with the add-on.]
        - [eventMap, -79.3831843,43.653226,10]
        - [eventStart, 1425913200]
        - [eventEnd, 1425938400]
{CODE}
!Questions/bugs

How can I assign specific permissions to a tracker I create? Ex.: tiki_p_create_tracker_items assigned  to Anonymous