# --
# TODO - todo list OTRS
# Copyright (C) 2001-2006 Martin Edenhofer <martin+code@otrs.org>
# --
# $Id: TODO,v 1.104 2006/07/25 11:22:54 tr 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
- Possebility to search for customer (like for the To field) also in CC and
  BCC field and when forwarding and bouncing a ticket.
- Possebility to insert more than one attachment when a new ticket is
  created in customer interface
- change SysConfigSetting for PreApplication from String to Arrayversion
- -default- selection option in all state, answer type, ... fields
- GenericAgent modules for PendingJobs.pl, UnlockTickets.pl and DeleteSessionIDs.
- localisation emails for "New OTRS Password!" and "New Account"
- 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)
- delete option for records (martin)
- add info that a ticket is already closed!
- master ticket feature
- user info backend (LDAP and DB)
- allow users to add or change stored replies for their queue without giving them full admin rights
- Agent ticket search base on customer name
- Agent ticket search ticket processed from - to absorb
- Agent ticket search  escalate from - to  absorb
- 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
- sub categories in faq application
- checkfunction if all packages witch are registrated already exists when the admin open the package manager
- merge SIRIOS QueueView with OTRS QueueView
- QueueView: A config setting if all tickets or only unlocked Tickets should be shown
- QueueView: rename Tickets available to Tickets unlocked
- otrs installation: Check if perl is insert in ApacheModules
- create a configelement for max logfilesize in log.pm
- create a configelement for image path - delete path insert in header.dtl
- rework code of header.dtl and footer.dtl (espacially the footer.dtl)
- 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)
- rename SMIME to S/MIME
- 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
- delete in CVS the directory var/sesstions
- rework AdminGenericAgent.pm, theres useless Code e.g. StartHit and OrderBy
- AdminGenericAgent.pm: implement a unique ID für each generic agentjob.
- Remove Sql-Statements form AgentTicketQueue - Attention don't forget the SIRIOS-file
- Header.dtl and CustomerHeader.dtl move $Env{Images} to SysConfig
- stats functionality: - stats doku in admin manual
                       - include a step 4 mask for static stats,
                         because the actual solution is irritating


2.2
- move ticket and article free text fields to "reference tables".
- wording problem of these config settings Ticket::Frontend::QueueSort Ticket::Frontend::QueueSortByDefault Ticket::Frontend::QueueOrder::Default
  + a better description
- insert a function which marks all config settings in the SysConfig which still defined in the config.pm
- stats functionality: - use the pdf - backend for output
                       - insert a function to handle new default stats

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'
- 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.
- include a ticket monitoring function
- maybe could format tags in the ConfigXML be useful, simular like EISPP-DAF
- sopm: Maybe wie need tags like FileUninstall or FileDontUpdate
- 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