History: PluginTrackerFilter
Source of version: 68
Copy to clipboard
!Plugin TrackerFilter Use this ((wiki plugin)) to give an interface to filter a tracker's items by field values. {maketoc} !!Parameters {TABS(tabs="Main|Basic Filtering|Show/Hide|Calendar" toggle="y" inside_pretty="n")} {pluginmanager plugin="trackerfilter" paramtype="none"} ///// {REMARKSBOX(type=tip title=Note)}''These parameters allow the results to be pre-filtered before the user sees them. To allow the user to filter, sort or paginate results, see the parameters under the tablesorter tab.''{REMARKSBOX} {pluginmanager plugin="trackerfilter" paramtype="filter"} ///// {pluginmanager plugin="trackerfilter" paramtype="show"} ///// {pluginmanager plugin="trackerfilter" paramtype="calendar"} ///// {pluginmanager plugin="trackerfilter" paramtype="export"} {TABS} !!!Additional note on parameters * __Info on 'filters' parameter field formats:__ ** d: drop down list of all the values occurring for the field: only one value can be selected ** r: radio buttons of all the values occurring for the field: only one value can be selected ** m: multiple choice in the drop down list of all the values occurring for the field( a multiple choice acts as an OR between the values of the choice) ** c: checkbox (multiple choice) in the drop down list of all the values occurring for the field ** t: text entry: a text input where the user must enter a part of the text ++If the text contains % like a%. it will search all the values beginning with % (can also do %a or a%b%c) or a* or *a ** T: text entry: a text input where the user must enter an exact value of the field ** i: text entry + initial: a list of initial that will directly filter on an initial. Note: if you use initial, not other field can be filtered ** sqlsearch: advanced mysql search (Tiki5): a list of fields where a mysql advanced search will be done - Note: the search is done field content per field content: It means if you query A B and A is in a field and B in another one you will not find the item. The syntax will be (1:2)/sqlsearch means 'do a advanced mysqlsearch on fields 1 and 2. ** > or < or >= or <=: comparison (Tiki6): the field will be compared using the format as operator. Ex: filters="1/>=" will find all the items with the field 1 bigger (for a numeric) or after (for a date) the value the user will give *__Notes on the use of the export option:__ **if the export parameter is set to 'y' then the basic functionality of the plugin is changed to allow designated fields and other parameters to be exported as a CSV file for ALL the tracker items with the use of clickable button that is shown with text set by the export_action parameter **the fields that are exported are those specified in the 'fields' parameter **other item values can be exported by setting the following parameters: ***export_status is set to 'y' to show the status of the individual item in the CSV file (the default is 'n') ***export_created is set to 'y' to show the item's creation date in the CSV file (the default is 'n') ***export_modif is set to 'y' to show the item's modification date in the CSV file (the default is 'n') ***export_charset can be set to the character set to be used in the export ie typically UTF-8 which is the default **__Please note:__ if the export parameter is set to 'y' then there is currently a problem with using the plugin editor, since for the export option there is no need to set the filters parameter - but for normal use this is a required parameter. This exception is allowed for in the main plugin code but at present the plugin editor does not recognise the exception and will not complete the 'Insert' until this parameter is entered. It is therefore recommended that edits to the trackerfilter plugin are carried direct in the main editor(s) when using the export option. *__url__ replace tracker item url with the url you input in the field. You can include the Item Id. This is very useful combined with TrackerList and/or Pretty tracker to link the results of the tracker filter to another page (wiki or template) where the item will be displayed as single entity (using TrackerList plugin). +''Use Case'' : Search and display tracker item in wiki pages without any relation to the trackers usual design (buttons, pagination, etc) +Set the plugin TrackerFilter in a wiki page to display and filter tracker item. Be sure it is working with the usual parameters and display items. Set the parameter Show Links to yes ( -+showlinks="y"+- ) and in the parameter URL set the page that will be used to display the item once the item link is clicked with the following -+url="singleitem_tpl?itemId"+- . +Create a second wiki page named "singleitem_tpl". In this page set the plugin TrackerList with the Tracker Id parameter and set for Wiki Page ( -+wiki="item_tpl"+- ). +Create a third page named -+item_tpl+- that you are now free to design the way you want that will display the item fields. + That way you can design all the way the page using wiki syntax and CSS and the user will never have the feeling he is looking at a tracker or at trackers items. !!! Field types allowed || Field type | since tiki version category - e | 6, and probably earlier drop-down list - d | 6, and probably earlier email - m | 6, and probably earlier text field - t | 6, and probably earlier textarea - a | 6, and probably earlier numeric field - n | 6, and probably earlier country - y | 6, and probably earlier user | 6, and probably earlier group | 6, and probably earlier item list | 9, only as text item link | 9, only as text auto-increment | 9 freetags | 9 || Note: For a drop-down list, the values of the drop down list will be displayed, For the other field types, the values found in the database will be displayed. !!Examples It can be interesting to use the checkbox capacity of trackerlist to do some action on some filtered items: {CODE(colors="tiki")} {trackerfilter filters="82/d:84" fields="82:83" checkbox="85/to/Email to checked/send/soho-send_message.php/soho-send_message.tpl"} {CODE} You can also get directly connected to the message box {CODE(colors="tiki")} {trackerfilter filters="82/m:84" fields="82:83" checkbox="85/to/Email to checked/xxx/messu-compose.php"} {CODE} Imagine a tracker {BOX(bg=grey)}{img fileId=213 }{BOX} A search page like this {CODE(colors="tiki")} {trackerfilter trackerId="1" filters="5:6:9:8/d:(2:1:3)/sqlsearch" showlinks="y" fields="5:2:1" wiki="tracker ideas"} {CODE} The page will look like {BOX(bg=grey)}{img fileId=212 }{BOX} and when you click on filter you will have something like this {BOX(bg=grey)}{img fileId=214 }{BOX}