osTicket-1.10-rc.3 Third release candidate for osTicket v1.10 === Enhancements * Compatibility with PHP7 (#2828) * Share tickets among organization members (#2405) * Add lock semantics compatible with v1.9 (lock on view) (f826189) * Staff login backdrop is customizable (#2468) * Add advanced search for closed date, thread last message, thread last response (#2444) * Disable auto-claim by department (#2591) * Properly flag SYSTEM thread postings (#2702) * Add option to use dept/agent name on replies (#2700) * Add a preference option to set the sort order of the thread entries in DESC or ASC order (#2700) * Thread dates can be shown as relative or absolute timestamps (#2700) * Make Avatars optional on thread view (#2701) * Make Authentication Tokens Optional (auto-login links in emails) (#2714) * Use icons for ticket and task actions (#2760) * role: Add option to use primary role on assignment (#2832) === Improvements * All improvements cited in v1.9.12 and v1.9.13 * Fix deleting of custom logos (#2433) * Fix assignment setting on new tasks (#2452) * Fix subject display of non-short-answer fields on ticket view and ticket queue (#2463) * Fix advanced search of ticket source (#2479) * Forbid adding deleted forms via "Manage Forms" (#2483) * Use horizontal tabs for translatable article content rather than the left tabs in a table (#2484) * Fix lock expiration time if PHP and database have different time zones (#2533) * Fix user class and ID matching from email headers (#2549) * Fix emission of `Content-Language` header in client portal for multiple system languages, thanks @t-oster (#2555) * Fix deployment of fresh git repo or download on PHP 5.6 (#2571) * Fix handling of abbreviated database timezones like `CDT` (#2570) * Fix incorrect height display of avatars (#2580, #2609) * Sort help topic names case insensitively, thanks @jdelhome3578 (#2530) * Fix detection of looped emails (f2cac64) * Fix crash in ticket preview (popout) if ticket has no thread (bd9e9c5) * Fix javascript crash adding new ticket filter (d2af0eb) * Fix crash if the `name` field of a user is a drop-down (ec0b2c5) * Fix incorrect SQL query removing departments (cf6cd81) * Properly fallback to database file storage if system is misconfigured (1580136) * Fix crash handling fields with `__` in the name in the VisibilityConstraint class (b3d09b6) * Remove staff-dept records when removing an agent (ecf6931) * Avoid crashing processing ORM records with NULL select_related models (#2589) * Fix several full-text search related issues (#2588, #2603) * Fix crash sending registration link for a guest user (#2552) * Avoid showing lock icon for expired locks on ticket listing (#2617) * Fix incorrect redirect from SSO authentication, thanks @kevinoconnor7 (#2641) * Fix vertical overflow of uploaded image preview (#2616) * Fix unnecessary dropping of CDATA table on MySQL 5.6 (#2638) * Fix several issues on user directory ticket listing (#2626) * Fix encoding of attachment filenames in emails (#2586) * Fix warning rendering advanced search dialog, thanks @t-oster (#2594) * Fix bounce message loop for message alert to a bad agent email address (#2639) * Make fulltext search optional on user lookup (#2657) * Add the [claim] feature again (#2681) * Fix agent's Signature & Timezone dropped on update (#2720) * Fix crash in user CSV import (#2708) * Fix crash in user ajax lookup (#2600) * Send Reference and In-Reply-To headers only for thread items pertinent to the receiving user (#2723) * Properly clean HTML custom fields (#2736) * Fix changing/saving properties on internal ticket statuses, with the exception of the state (#2767) * Fix CSV list import (#2738) * Fix late redirect header for single ticket typeahead result (#2830) * Add sortable column headers in the ticket and task queues (#2761) * Fix several issues with the file CLI app (#2808) * Fix config crash on install (#2827, #2844) * Set due date based on user's timezone (#2812, #2981) * Fix crash rendering some email addresses to string (#2844) * Fix crash rendering thread with invalid timestamps (#2844) * Log assignment note (comments), if any, when staff created ticket is assigned (#2944) * Change transient SLA, on transfer, if target department has a valid SLA (#2944) * Fix typo on task transfer modal dialog (#2944) * Fix ticket source on ticket edit (#2944) * Convert user time to database time when querying stats (#2944) * Fix date picker clearing input on invalid date format (#2944) * Show topic-specific thank-you page (#2915) * Department manager can be excluded from the new ticket alert (#2974) * Do not scrub iframe `@src` attribute (#2940) * Use full-text search for quick-search typeahead boxes (#2479) * Speed up a few slow and noisy queries (5c68eb3, 340fee7, 208fcc3) * Lower memory requirements processing attachments (#2491, #2492) * Ensure agent still has access when reopening a ticket (#2768) * Always perform validation server-side for ajax uploads (#2844) * Protect access to files shown in the FileUpload field (#2618) * Decode entities prior to HTML scrubbing (#2940) === Known Issues * Uploading multiple files simultaneous (via drag and drop) will cause some files to be dropped