# --
# TODO - todo list OTRS
# Copyright (C) 2001-2009 OTRS AG, http://otrs.org/
# --
# $Id: TODO,v 1.117 2009/02/26 09:57:22 tr Exp $
# --
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
# the enclosed file COPYING for license information (AGPL). If you
# did not receive this file, see http://www.gnu.org/licenses/agpl.txt.
# --

2.2
- GenericAgent modules for PendingJobs.pl, UnlockTickets.pl and DeleteSessionIDs.pl
- add "--please select--" in queue selection of customer panel
- disable form multi submit
- prevent unauthorized person submit ticket via email via PostMaster*.pl
- send bulk answer -
   http://lists.otrs.org/pipermail/otrs/2002-June/000066.html (martin)
- add info that a ticket is already closed!
- allow users to add or change stored replies for their queue without giving them full admin rights
- rework responses and relations in resposes (sort order)
- change SysConfig XML-files form iso8859-1 to utf8 - Warning, be careful of
  conflicts between the modules
- add possebility (maybe a Configoption) that for external notes not the
  email address of the agent but the queue address is used:
   http://lists.otrs.org/pipermail/otrs-de/2005-December/005103.html
- insert in each form requierd field stars, because of the patency to the other modules
- GenericAgent: insert a delete.dtl if job should be removed (tr)
- dublicate configuration in Config.pm (Webinstaller) and SysConfig
  Solution 1: insert the settings from the Webinstaller in ZZZAAuto
  Solution 2: Checkfunction in SysConfig, witch check if the current
              value is also configured in the Config.pm
- localisation emails for "New OTRS Password!" and "New Account"
- insert a function which marks all config settings in the SysConfig which still defined in the Config.pm
- stats functionality: - add a function, to handle stats with the package manager
                         especially for quality assurance in customer systems dev->test>productive.
                         At the same time the actual import and export function should have the
                         configoption to deactivate them. Because in some situation it can't be useful
                         to have two ways for handling stats! (var/Stats - a possible location for stats
                         coming from the package manager)
                       - insert a function to handle new default stats
                       - when a agent hit the start button (in the view mode) give a expertise how long
                         it takes to generate the stat.
                       - stats doku in admin manual
                       - include a step 4 mask for static stats,
                         because the actual solution is irritating
                       - a the moment it is not allowed to select only one attribute of for x-axis and value series.
                         Now I (tr) can say it is usefull to select one attribute
                       - a ticket timeaccounting stats is especially useful as default stats
3.0
- master ticket feature
- new templates without logic (no <dtl if>)
- use more references in functions
- log with log level

misc (not scheduled yet - nobody is working on it yet)
- Module Layer for signature, salutation in composing answers
- store ticket before sending
- AdminQueueList with all config options on one screen
- interfaceing with bugzilla (martin)
- interfaceing with Nagios (http://www.nagios.org/)
- interfaceing with ISPMan (http://www.ispman.org/)
- agent email interface (control via email - answer, ...)
- add save draft in compose window
- add count of user/customer user to admin area (LDAP-performance)
   "You currently have 467 customers on the OTRS system"
- enhance AdminEmail with customer user
- ldap auth modules with multi group options (not just one)
- the function $XMLObject->{XMLHashSearch} has no search limit

ideas (just ideas - nobody is working on it)
- copy std response botton
- add 'Mark as Read' feature for QueueView like other 'web based email system'
- add icon in QueueView to show if there is a note on it or it's a new ticket
- module feature on set state, owner, lock and queue
- QueueView: Additional drop-down to set ticket owner
   http://bugs.otrs.org/show_bug.cgi?id=129
- read/unread highlighting of articles
- show agent name in CustomerTicketOverView
- GenericAgent with forward full message tree to other email address
- improve fulltext search with 'article-type'
- if a search is performed, directly open the article where the result is found
- drop html Content-Type: multipart/alternative parts if text/plain extists
- have easy insertion into the reply of a response 'template'
- allow admin to create response templates like this:
  <SALUTATION>
  <GENERIC_BRUSH_OFF_RESPONSE>
  <SIGNATURE>
  <QUOTED_MESSAGE>
- "Ticket" Threading - http://bugs.otrs.org/show_bug.cgi?id=353
- FAQ category with permissions like queues
- ticket order by pending time
- view/search for tickets which escalate in future, e. g. in one hour
- http://bugs.otrs.org/show_bug.cgi?id=728 - Last Told
- opm package installing by click on Ticket-Attachment-
- show more Systemlog items
- formattedtext elments for the sysconfig
- include xml-attributes in the ConfigXML, which manage if the delete or new-Buttons be shown.
- maybe could format tags in the ConfigXML be useful, simular like EISPP-DAF
- ConfigOption for use other separators for e.g. comma, semicolon, colon and tabulator in the function OutputCSV
- include a check function to CustomerUserAdd and CustomerUserUpdate
  if the values a valid. A Extension of $CustomerUser->{map} with regexp
  can be the solution. Also a extension of $CustomerUser-{map} for a description
  can be useful
- Insert new attributes in the sysconfig to generate drop down menues for
  queue, status and group settings
  e.g. <String elements="Queue">Advisory</String>
  advantages: -> less operating errors in using sysconfig
              -> useful for a validity check for the sysconfigsettings
                 which came via module by the packagemanager
- SysConfig - a changelog function for the Sysconfig or
              a function like "show all changed Configoptions"
- Queueview: insert a link or button to change quickly the viewmode of the shown tickets
- Queueview: insert a "<a name "- Tag to work through from the last edit Ticket
- accurate nameing of function attributes. For example function CustomerUserDataGet
  Change User in UserLogin or CustomerUserLogin
- SysConfig: a Descriptionfield for each SysConfigElement. That each admin can reproduce why this change of the Configuration had been done.
  (a idea of Alex Schollerer)
- a Extension of the generic agent that he can be triggered by an event
- Systemchecklist - with all information of the system, for better support. Plus a function for a automatic apache errorlog export
- stats functionality: - use a existing stat as template for a new stat
                       - integrate a CustomerFrontendModul Stats/Dynamic/Customer.pm
- Agent ticket search base on customer name
- Agent ticket search ticket processed from - to absorb
- Agent ticket search escalate from - to  absorb
- Package Manager: - If a module will be uninstalled check if other modules depends on it and give an error
                   - If there are dependencies try to load the needed package automatically
