<?php

  /*

      changelog.php

      Change Log. [Commented]
      
      Changelog:
        2006-01-14 dave: Cleaned up code for v1.0 release
      
      ----

      Copyright (C) 2003  Central Manchester CLC
      Copyright (C) 2003  David Thorne (davethorne@gmail.com)

      This program is free software; you can redistribute it and/or
      modify it under the terms of the GNU General Public License
      as published by the Free Software Foundation version 2.

      This program is distributed in the hope that it will be useful,
      but WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      GNU General Public License for more details.

      You should have received a copy of the GNU General Public License
      along with this program; if not, write to the Free Software
      Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

  */

  // Destroy any session that might exist effectively logging off
  session_start();
  session_destroy();

  // Page title
  $ptitle = 'Changelog';

  // Includes
  require 'header.php';

?>

  <h1>Change Log</h1>
  <h2>Change log for each version of the helpdesk system.</h2>
  
  <div class="block">
  
    <h3>Changes from version 0.9.2 to 1.0</h3>
    <ul>
        <li>CHANGE - Blah</li>
        <li>ENHANCEMENT - Blah</li>
        <li>BUG - Fixed a bug that broke the helpdesk when no domains were present</li>
    </ul>
    
    <h3>Changes from version 0.9.1 to 0.9.2</h3>
    <ul>
        <li>CHANGE - Changed all instances of the reserved word 'user' in the database schema</li>
        <li>CHANGE - Corrected all instances of the reserved word 'user' in the SQL code</li>
        <li>ENHANCEMENT - Modified the index page to auto-upgrade old database versions</li>
    </ul>
    
    <h3>Changes from PostgreSQL v0.9 to PearDB v0.9.1</h3>
    <ul>
        <li>ENHANCEMENT - Merged Andy's MySQL-changes with the current PostgreSQL CVS</li>
        <li>ENHANCEMENT - Customized db.php and recordset.php to use Pear::DB</li>
        <li>ENHANCEMENT - Replaced all use of mysql_insert_id() with new function db_next_id()</li>
        <li>CHANGE - Removed download links in download.php, added link to Sourceforge files instead</li>
        <li>CHANGE - Renamed non_web_dir to install, and implemented an upgrade script</li>
        <li>CHANGE - Modified what's logged about successful & failed login attempts</li>
    </ul>
    
    <h3>Changes from PostgreSQL v0.9 to MySQL v0.9.1</h3>
    <h3>Note: The MySQL version is a modified version of PostgreSQL v0.9
      and NOT from the original MySQL v0.1</h3>
    <ul>
      <li>CHANGE - Moved the webdir folder up one, and created a non_web_dir</li>
      <li>CHANGE - Removed the DOCS directory and unneeded files</li>
      <li>CHANGE - Modified this changelog</li>
      <li>CHANGE - Modified /about.php</li>
      <li>CHANGE - Modified all the database references to capitalised first
      letters. (e.g. tbl_Issues > tbl_Issues). This may cause problems if you
      try to dump your PostgreSQL database into a MySQL one. [note: MySQL is
      case sensitive in table names, whereas PostgreSQL isn't]</li>
      <li>CHANGE - Replaced many of the \" in queries to `. (e.g. \"id\"  > `id`)</li>
      <li>CHANGE - Modified any references to sequences in the databases to
      mysql_insert_id() </li>
      <li>CHANGE - Removed the downloads>archive section as by default when downloaded
      they are not there</li>
      <li>CHANGE - Removed the four footer.php files, replaced with one</li>
      <li>CHANGE - Made the page title's relevant.</li>
      <li>CHANGE - Enhanced security on the system folder and on some of the other files.</li>
      <li>CHANGE - Made the pages XHTML 1.0 Transitional complient</li>
      <li><strong>NOTE : There have been more changes not documented here.</strong></li>
  
    </ul>
    <h3>Changes from version 0.85 to 0.9</h3>
    <ul>
      <li>ENHANCEMENT - Issue searches can now be performed on more criteria,
      including a date range and issues that are assigned to a person.</li>
      <li>ENHANCEMENT - Added a printer friendly stylesheet that hides the
      navigation bar and footer when printing an issue.</li>
      <li>ENHANCEMENT - The sort order of issue lists is now remembered until a
      user logs out.</li>
      <li>ENHANCEMENT - Basic cross referencing of issues by way of several
      links to issues reported by the same person or issues with the same
      problem detail.</li>
      <li>ENHANCEMENT - (Beta) support for authenticating against an Active
      Directory server. Thanks to Jason Ellison for the patch.</li>
      <li>ENHANCEMENT - (Beta) support for authentication against an LDAP
      server. Note that at the moment, user information (name, email etc..) is
      still held within the helpdesk and the LDAP server is only used for
      verifying the password. This behaviour is expected to change in subsequent
      releases.</li>
      <li>ENHANCEMENT - Email address verification is now optional and can be
      set per domain. Note that the ability of a specific user to change their
      email without verification is wholly dependant on the setting in their
      <em>current</em> domain.</li>
      <li>ENHANCEMENT - Automatic detection of http:// or https:// servers,
      modifying links accordingly in emails and automatic redirects (E.g. when
      logging in/out of the helpdesk).</li>
      <li>ENHANCEMENT - Optional ability to hide sites and usernames in
      published issues. When this option is selected (either domain or helpdesk
      wide), names are also hidden in the recently published issues and
      knowledge base search sections. Names cannot be hidden in remarks made by
      users, so an option has been provided to hide all remarks in published
      issues. When setting this preference per domain, note that it is the
      domain of the person viewing the issue rather than the domain of the
      person publishing the issue that decides if names are visible. This allows
      for a 'guest' domain, in which names are not visible for any issues.</li>
      <li>BUG - Changed the behaviour of statuses when only one status is
      present. Originally the (lone) status was the final status in the list and
      was treated as closed. It is now treated as open until a second status is
      added, preventing some unexpected behaviour.</li>
      <li>BUG - Minor change to the behaviour of the preferences system to allow
      correct working of domain preferences that are not overridable by the
      user (specifically, the enabling/disabling of email verification)</li>
      <li>BUG - Fix to sql script that prevented the knowledge base from working
      in a new installation of helpdesk 0.85.</li>
      <li>BUG - Minor tweak to the font size settings in the CSS file.</li>
      <li>BUG - When a user receives an access denied or timeout message, when
      they log in they are now redirected to the page the originally tried to
      access (or were accessing previously in the case of timeout). This is most
      useful when accessing the verify email address page.</li>
      <li>BUG - Fixed a problem with email address verification not working
      correctly.</li>
      <li>BUG - Fixed a problem where domain administrators did not get
      automatically added to a new site in their domain (and if the domain
      administrator was the one who added the site, then they couldn't access it
      themselves).</li>
      <li>BUG - Deletion of sites now works.</li>
      <li>BUG - User/site deletion is now a little more sane. 'Deleted'
      users/sites have {deleted} appended to their name, and new users/sites can
      be created with the old name. Previously this caused a naming conflict
      with the deleted site.</li>
      <li>BUG - The time spent is now reduced when a time remark is deleted.
      However, this will only work with new time remarks. Existing time remarks
      still have the old behaviour.</li>
      <li>BUG - The behaviour of unassigned issues is now a little more sane. A
      user closing an unassigned issue will have the issue assigned to them if
      possible.</li>
    </ul>
    <h3>Changes from version 0.81 to 0.85</h3>
    <ul>
      <li>ENHANCEMENT - Preliminary support for i18n</li>
      <li>ENHANCEMENT - Users email addresses are now confirmed by sending out
      an email and requiring them to click on a link to change their email.</li>
      <li>ENHANCEMENT - The front page is now dynamically editable by the root
      user.</li>
      <li>ENHANCEMENT - New preferences system. Default user preferences can now
      be set by users with the relevant priviledges</li>
      <li>BUG - Actions can now be performed on an issue (e.g. commenting)
      without having the issue automatically assigned</li>
      <li>BUG - Fixed a warning message when publishing an issue to the
      knowledge base</li>
      <li>BUG - Closed, unassigned issues are no longer displayed in the
      unassigned issues list</li>
    </ul>
    <h3>Changes from version 0.8 to 0.81</h3>
    <ul>
      <li>ENHANCEMENT - Added the ability to restrict users from altering either
        their or others' details.</li>
      <li>BUG - Fixed two problems with the reporting system.</li>
      <li>BUG - Fixed a problem where users could search for issues in sites
        other than ones they were associated with. (Thanks to James Wyld of
        ResolvIT for the patch.)</li>
      <li>BUG - Successfully made some cosmetic changes.</li>
      <li>BUG - Cancel button on new issue now functions correctly.</li>
    </ul>
    <h3>Changes from version 0.72 to 0.8</h3>
    <ul>
      <li>ENHANCEMENT - Limited reporting functionality has been added.</li>
      <li>ENHANCEMENT - Administrators can now add/change email addresses when
            creating/editing a user</li>
      <li>ENHANCEMENT - Email notification has been enhanced - more detail
        about the issue is contained within emails sent</li>
      <li>ENHANCEMENT - Issues can now be unpublished</li>
      <li>ENHANCEMENT - A public notice can be created by root that is visible
        on index page</li>
      <li>BUG - Minor formatting changes of certain pages</li>
      <li>BUG - Fixed a bug where a user could publish open issues</li>
    </ul>
    <h3>Changes from version 0.71 to 0.72</h3>
    <ul>
      <li>BUG - Fixed a domain listing bug.</li>
      <li>BUG - Fixed a logical bug for choosing the domain when logging in as the Root user.</li>
      <li>BUG - Fixed a few minor rendering bugs.</li>
      <li>BUG - Fixed a email notification logic problem that caused some people not to receive
        email in certain circumstances.</li>
      <li>BUG - Fixed a few XHTML discrepencies.</li>
      <li>BUG - Fixed a problem with closing recalled issues due to an error in javascript.</li>
      <li>ENHANCEMENT - Implemented a page for Global Preferences that gives the Root user access
        to modify dynamically some key system preferences.</li>
      <li>ENHANCEMENT - Implemented the time management functionality allowing support agents to 
        register the time taken on particular issues.</li>
      <li>ENHANCEMENT - Properly implemented the Root access pages for when there are no domains
        in the system.</li>
      <li>ENHANCEMENT - Given the Root user the ability to set up the default priority for a
        domain.</li>
      <li>ENHANCEMENT - Added Session Timeout declaration page.</li>
      <li>ENHANCEMENT - Added automatic remarks for recalled issues.</li>
    </ul>

    <h3>Changes from version 0.7 to 0.71</h3>
    <ul>
      <li>BUG - Fixed a problem when deleting statuses - where the sortorders have been corrupted.</li>
      <li>BUG - Fixed two bugs with the knowledge base that caused errors when publishing issues.
        One caused an error when no keywords were added, and one caused an error when keywords WERE
        added.</li>
      <li>BUG - Fixed a mail sending error on windows platforms due to the non comliance with
        RFC822 formats of one-off addressing.</li>
      <li>BUG - Fixed a javascript error on the issue page caused by some naff logic in the PHP.</li>
      <li>ENHANCEMENT - Made the login form automatically focused for ease of use.</li>
      <li>ENHANCEMENT - Automatic assignment of unassigned issues when a support agent edits the
        issue for the first time.</li>
      <li>ENHANCEMENT - Given administrators the ability to delete remarks.</li>
      <li>ENHANCEMENT - Given administrators the ability to make confidential remarks public.</li>
      <li>DATABASE - Added the concept of the time taken for an issue, to be functionally added
        in a later release.</li>
      <li>DATABASE - Added the concept of a default priority for a domain to be functionally added
        in a later release.</li>
    </ul>

    <h3>Changes from version 0.63 to 0.7</h3>
    <ul>
      <li>BUG - Fixed a small CSS compatibility problem with the display of certain form controls
        in Internet Explorer.</li>
      <li>BUG - Fixed a small DHTML problem on the issue page caused by an earlier functionality
        enhancement.</li>
      <li>BUG - Fixed a HTML Entity problem that was causing indeterminate results on screen
        and added some anchor titles for accessinility. Both for paging.</li>
      <li>ENHANCEMENT - Built in the functionality to search for knowledge base items currently
        in the system.</li>
      <li>ENHANCEMENT - Built in the functionality to publish issues in the knowledge base with
        automatic thesaurus creation and mapping.</li>
      <li>ENHANCEMENT - Given administrators the ability to make public remarks confidential.</li>
      <li>MISCELLANEOUS - Reformed the 'issue.php' script to have only one HTML form and so have
        simplified that code a little.</li>
    </ul>

    <h3>Changes from version 0.62 to 0.63</h3>
    <ul>
      <li>BUG - Fixed the problem of not being able to close recalled issues. This was a bug
        that had been introduced after an earlier functional enhancement.</li>
      <li>ENHANCEMENT - Enhanced the paging links to display a maximum of ten direct links and
        also 'First', 'Last', 'Next' and 'Previous' links.</li>
      <li>MISCELLANEOUS - Written a fair chunk of documentation to deal with explaining the
        concept of the system.</li>
      <li>MISCELLANEOUS - Introduced an update script to update the database. This will now be
        a standard includion in each release, allowing current users to upgrade painlessly.</li>
      <li>DATABASE - The full concept of a knowledge base has been introduced into this version's
        database, although the system itself doesn't not yet know how to deal with it. This
        includes the facilities of a thesaurus. The next major release will include the actual
        functionality.</li>
    </ul>

    <h3>Changes from version 0.61 to 0.62</h3>
    <ul>
      <li>BUG - Fixed the problem of repeated submissions of new issues. When a submission is
        actioned, the submit button is disabled.</li>
      <li>BUG - Fixed the problem on the summary page so that when viewing by status and restricting
        to open the correct results are shown.</li>
      <li>ENHANCEMENT - Documentation has been updated and now has migration instructions and a
        start to the system user manual.</li>
      <li>ENHANCEMENT - Added the ability to download the summary stats pages in CSV format for
        those who want to easily import that data into their office documents.</li>
      <li>ENHANCEMENT - Moved the 'Add Remark' form from the top of the history list to the bottom, and
        added a link to it from the history title bar.</li>
      <li>MISCELLANEOUS - Changed the formatting of the summary page slightly, with the vertical
        axis no longer in bold, and with a background colour.</li>
    </ul>

    <p>This is where the change log ends. What follows is the old release notes, summaries of
      what each release had in them. They are not to be taken as complete change logs.</p>

    <h3>Current Version 0.6x (08-05-2003)</h3>
    <p>Implemented email notification and lots of bug fixes.</p>
    <ul>
      <li>Email notification.</li>
      <li>To accomodate the above, a user preferences system has been put in place which
        can be utilised elsewhere.</li>
      <li>Simple system logging has been implemented - for future elaboration.</li>
      <li>A change in the default stylesheet to increase contrast for the visually
        impaired. (Thanks Dirk!)</li>
      <li>Allow all users (not just support agents and above) to add remarks so that
        a dialogue can be started that would aid in knowledge flow.</li>
      <li>Recalled issues are now flagged as such in the issue lists for easier discrimination.
        </li>
    </ul>

    <h3>Version 0.5x (30-04-2003)</h3>
    <p>Upgraded the sites and users completely and the corresponding pages.</p>
    <ul>
      <li>Made certain pages refresh every two minutes (issue lists and summary).</li>
      <li>Allowed searching on issue ID#.</li>
      <li>Sorted out some variable quoting issues.</li>
      <li>Allowed issues to be closed on submission (only support agents and above).</li>
    </ul>

    <h3>Version 0.4x (18-04-2003)</h3>
    <p>Upgraded the sites and users admin to take into account future possibilities.</p>
    <ul>
      <li>Completely reworked the issue submission pages to ensure consistency between new
        site admin.</li>
      <li>New access type called 'Domain Administrator' has been added and security
        functionality has been shifted around (look out for the up and coming documentation).</li>
      <li>Allowed access types to be associated with users per site instead of per domain.</li>
      <li>Added the ability to choose only a category (not a detail) for issues.</li>
      <li>Added the summary page.</li>
      <li>Sorted out some bugs with the CSS.</li>
      <li>Site and user admin has been fundamentally changed in the database, but will
        work effectively the same as version 0.3.</li>
      <li>Added the MyDetails page.</li>
    </ul>

    <h3>Version 0.3 (14-04-2003)</h3>
    <p>Sorted some trivials out and reworked the system for use with domains.</p>
    <ul>
      <li>Domain Administration is now in place.</li>
      <li>The Root Access has now been implemented properly to allow administering
        of domains. The Root account is allowed to change any information of any of the
        domains. </li>
      <li></li>
      <li>Added the Root user.</li>
      <li>Added defaults for Level, Status, and Priority.</li>
      <li>Full text searching is now in place.</li>
      <li>Added the ability to post public notices.</li>
      <li>Sorting has been tidied up somewhat using functions.</li>
      <li>Modified the MyIssues page to work for both open or closed issues (?closed=true).</li>
      <li>Each issue list has now been paged, with the closed issues page being restricted in length (to show only recently closed issues). This paging is done using values from the <samp>tbl_System_Preferences</samp> database table.</li>
    </ul>

    <h3>Version 0.2 (11-04-2003)</h3>
    <p>Okay, well the first major version change brings with it actual functionality! Below is an initial list of what has been done.</p>
    <ul>
      <li>Migrated from MySQL to PostgreSQL - to speed up the database and to make my PHP code nicer.</li>
      <li>Full system configuration - to administer all the lookup tables in the system (priorities, categories etc.).</li>
      <li>Adding issues now works fully (I think).</li>
      <li>Started on the searching facilities.</li>
      <li>Most of the issue browsing pages are done.</li>
      <li>Incorporated database values to hold the concept of functional domains.</li>
    </ul>

    <h3>Version 0.1 (05-04-2003)</h3>
    <p>This system currently has little functionality built into it. All that it
      comprises so far is a group of PHP files and an SQL file. Once at a
      sufficient level, this page will give all the updates since the previous
      version.</p>

  </div>

<?php
  // Include
  require 'footer.php';
?>
