Multiple Features #70

Merged
merged 26 commits into from Apr 23, 2012

Conversation

Projects
None yet
2 participants
Owner

protich commented Apr 23, 2012

Upgrader and db migrator
The upgrader now supports ability to monkey patch the database.

Unified ticket thread table
Messages, Response and Notes stored in one table.

Ticket events tracking
Track ticket events like Opened, Closed, Reopened, Overdue...etc

Advanced Ticket Search

greezybacon and others added some commits Apr 6, 2012

Track ticket owners at each tracked ticket event
Track assigned department, team, staff, and help topic when the ticket event
occurs. This will greatly help in correlation of various reports and queries

Also start plowing the way toward incremental database updates using a
patching technique. The hash of the main install SQL script for a respective
database will be used to track the signature of the database currently. The
signature will be stored in %config::schema_signature, and the main.inc.php
script can simply check the value in the schema against the value known to
the source code to be the signature the code expects. Should the two
signatures differ, patches in the setup/inc/sql/patches folder should exist
and be executed to assist in incrementally upgrading the database to the
new-current schema version.
Merge ticket thread tables into one (1 of 2)
Replace the ticket_{message,response,note} tables with a single
ticket_thread table that will contain data for all three current message
types. This simplifies much of the ticket thread code and paves the way for
other types of messages in the future.
Merge ticket thread tables into one (2 of 2)
Add SQL patch file and update the main install SQL (MySQL) script to
transfer messages, responses, and notes into the new ticket_thread table.
For new installations, transfer is not necessary because there are no
messages
Add database migration helper
Implement attachment migration for attachments
Add support for more information stored about the patches in the individual
patche files with a Javadoc style syntax

Regression: Should be PREFIX+ticket_thread { thread_type='M' } instead of ticket_message

also { message=... } => { body=... }

Owner

protich commented on 20e5b7f Apr 22, 2012

I hadn't merged the ticket thread branch - It's now merged.

Member

greezybacon commented Apr 23, 2012

Advanced search works, database upgrader almost works. Please log errors to a log file for system admin review.

  • Try a fresh install
  • Run the lint test suite against the new stuff
setup/inc/class.upgrader.php
+ return $action;
+ }
+
+ function getNextStepInfo() {
@greezybacon

greezybacon Apr 23, 2012

Member

This function is unused. Remove it

@protich

protich Apr 23, 2012

Owner

Removed.

include/ajax.tickets.php
+
+ //Have fun with dates.
+ if($startTime)
+ $qwhere.=' AND ticket.created>=FROM_UNIXTIME('.$startTime.')';
@greezybacon

greezybacon Apr 23, 2012

Member

Think you meant $where .= ...

Member

greezybacon commented Apr 23, 2012

Once merged, create a new pull-request to add an 'annulled' column to the %ticket_event table and, when closed and reopened events are logged, annul the previous, opposite event if any. For instance, reopening a ticket should annul a previous closed event and visa-versa. This will greatly assist the reporting engine generate better statistics.

Owner

protich commented Apr 23, 2012

New install works : Installer completed with no errors - initial ticket got created as expected.
Inline Comments : Commit for the 2 inline comments pushed to the PR branch.

greezybacon added a commit that referenced this pull request Apr 23, 2012

Merge pull request #70 from protich/feature/advanced-search
Support continuous database updates / migration 
Advanced search form
Merge message, response, and notes tables into one ticket thread table (which will support more extensible message options in the future)
Add ticket state event tracking, which will be used for reporting

Reviewed-by: Jared Hancock

@greezybacon greezybacon merged commit 1e77eaa into osTicket:develop Apr 23, 2012

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment