# --
# TODO - todo list OTRS
# Copyright (C) 2001-2006 OTRS GmbH, http://otrs.org/
# --
# $Id: TODO,v 1.110 2006/12/05 10:44:20 cs Exp $
# --
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
# the enclosed file COPYING for license information (GPL). If you
# did not receive this file, see http://www.gnu.org/licenses/gpl.txt.
# --

2.1
- -default- selection option in all state, answer type, ... fields
- 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)
- A better way to reset password, hash confirmation...
   http://bugs.otrs.org/show_bug.cgi?id=443
- otrs installation: Check if perl is insert in ApacheModules
- 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
- if you need two times the same ConfigItem you it should be possible
  to leave out the Description.
- configoption which shows or masking the Freetextfilds individual
- 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)
- a todo for tr: remove AgentWindowTabStart and Stop an change the Incident, Advisory and Statistic-Module
- 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
- stats functionality: - stats doku in admin manual
                       - include a step 4 mask for static stats,
                         because the actual solution is irritating


2.2
- master ticket feature
- wording problem of these config settings Ticket::Frontend::QueueSort Ticket::Frontend::QueueSortByDefault Ticket::Frontend::QueueOrder::Default
  + a better description
- 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
- implement new bulk action with own sysconfig settings for all params
- 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 but the start button (or in the view mode) give a expertise how long
                         it takes to generate the stat.

3.0
- new templates without logic
- use more references in functions
- log with log level

misc (not scheduled yet - nobody is working on it yet)
- delete personal queues if queue is set to invalid
- Module Layer for signature, salutation in composing answers
- store ticket before sending
- AdminQueueList with all config options on one screen
- Ticket print option for customer interface
- 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)
- agent/customer timezone selection in preferences
- copy std response botton
- add 'Mark as Read' feature for QueueView like other 'web based email system'
- imap service (queue view as imap service)
- 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 informations 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
- show only valid queues, users, responses, e.g. via the regarding modules
  in the admin interfaces and display also the invalid or invalid_temporarily
  items if wanted (special config item or a buttom that selects all items).

