Version 3.1.0b1:
- New: mailboxes can read email from a regular mailbox over IMAP instead of the Mailgun webhook (IMAP button in the Mailbox Browser) - works with Gmail (App Password) and other IMAP servers, and needs no PHP imap or mailparse extension - small inline images (signature logos and icons under 15 KB) are not imported
- New: "test settings" and "check for email now" for IMAP mailboxes, and the IMAP status of each mailbox in the Mailbox Browser and System Check
- New: "trusted authentication server" IMAP mailbox setting - the mail server whose Authentication-Results header verifies senders (DMARC) of an IMAP mailbox, as Mailgun does for the webhook
- Change: the Webhook Browser also lists email read from IMAP mailboxes - Resubmit processes such an email again, without its attachments
- Change: the "mailgun integration" Global Config section is now called "inbound email" (its settings apply to IMAP mailboxes too)
- Bug Fix: a second email with the same subject from the same sender within the duplicate subject window still created a ticket while the result of the duplicate check was cached
- Developer: inbound email processing moved from views/webhook.php to jrTicket_process_incoming_email() (lib/inbound.php), shared by the Mailgun webhook and IMAP mailboxes - the incoming_ticket event $_args has the source (mailgun or imap) and mailbox_id
Version 3.0.0b1:
- New: "priority support notice" Global Config option for the email sent to registered users without Priority Inbox access who open a ticket by email (on by default, as before)
- New: "webhook history" and "duplicate subject window" Global Config options (they were fixed at 180 days and 5 minutes)
- New: "verified senders only" Global Config option (on by default) for linking inbound email to site accounts only for senders Mailgun verified
- New: "blocked email attachment types" Global Config option (default: Gmail's blocked file types plus macro Office files, OneNote, other program launchers and web files)
- Change: inbound email webhook requests must be signed by Mailgun - when no Mailgun Webhook Signing Key (or API key) is configured inbound email is refused and System Check shows it
- Change: an email follow-up from a sender who is not a participant of the ticket in its subject now starts a new ticket
- Change: following a ticket, deleting an attachment and deleting a mailbox now check the request comes from the site
- Change: changing the state of a ticket requires a login, and the customer check no longer replaces the ticket data
- Change: ticket template titles are unique per mailbox (they were unique across all mailboxes)
- Change: ticket notifications are no longer sent to inactive or blocked staff accounts, or to watchers who are no longer staff of the ticket mailbox
- Change: deleting a mailbox moves its templates to the default mailbox and refuses a mailbox that does not exist, and the default mailbox can only be changed by making another mailbox the default
- Change: searches by mailbox staff only return tickets from the mailboxes they are staff for (site admins see all)
- Change: blocked senders match the exact email address, or a whole domain for entries starting with @ - existing entries without an @ are converted to @domain entries
- Change: the Webhook Browser reports the result the webhook recorded for a resubmit, and long email subjects are no longer cut in the middle of a multi-byte character
- Change: the priority support email is no longer sent for priority mailboxes, or when the email reaches no mailbox
- Change: contact form tickets from logged in members are regular tickets on their profile (they were internet inquiries the member could not see) and update the unread counter
- Change: the ticket reports only cover the mailboxes the viewer is staff for (site admins see all)
- Change: the "Opened Versus Resolved" report counts resolved tickets on the day they were closed (it used their last update)
- Change: auto-close also closes tickets last answered by staff of the ticket's mailbox (it only did for site admins)
- Change: the Block Sender button is only shown to staff, and works for addresses with an apostrophe
- Change: an inbound email from the address of a site account is only filed under that account (or posted as staff for a staff address) when Mailgun verified the sender with a DMARC pass for its From domain - other emails from those addresses become internet inquiries marked "sender not verified" for staff
- Change: email attachments are checked against the blocked email attachment types for every sender (priority senders and priority mailboxes accepted any file type, everyone else was limited to the allowed attachment types, which now only apply to the website forms) - zip contents and compressed files (setup.exe.gz) are checked too
- Change: a blocked email attachment is no longer dropped: it is kept renamed to name.ext.blocked, shown only to mailbox staff with a "potentially harmful file" warning, and not attached to notification emails - attachments without a file extension are handled the same way
- Bug Fix: ticket attachments could be downloaded by users who can not view the ticket
- Bug Fix: the inbound email webhook processed requests without checking the Mailgun signature
- Bug Fix: inbound email attachments were downloaded with the Mailgun API key from any URL in the webhook data
- Bug Fix: the email "opened" beacon did not check the address token in its URL
- Bug Fix: getting the previous/next ticket, moving a ticket and saving a template did not check that the user is staff of that mailbox
- Bug Fix: mailbox staff who are not site admins were refused on Reports, Blocked Senders, User Settings and other staff pages
- Bug Fix: ticket page controls (status, owner, notes, templates, tags) did not work for mailbox staff who are not site admins
- Bug Fix: replying to a ticket checked staff rights against the mailbox id sent by the form instead of the ticket's mailbox
- Bug Fix: the ticket status flag could be changed by the ticket's customer, and not by mailbox staff who are not site admins
- Bug Fix: bulk delete removed only the first item of each ticket, leaving its replies, status markers and attachments
- Bug Fix: bulk delete and bulk close did not check permission for ids of ticket replies
- Bug Fix: the has_attachment: ticket search ignored the own-tickets restriction for users and did not escape the search term
- Bug Fix: some values on staff pages (status filter, blocked sender, tracker URL, webhook status) were output without HTML escaping
- Bug Fix: HTML entities in ticket text became HTML in ticket notification emails sent as HTML
- Bug Fix: creating a mailbox failed with a database error
- Bug Fix: removing the "waiting for reply" state of a ticket did not remove it, and unassigned the ticket instead
- Bug Fix: a ticket could be assigned to a user who is not staff of its mailbox
- Bug Fix: errors from loading or saving a template and from moving a ticket were handled as success (loading "-" emptied the ticket text)
- Bug Fix: saving a template from a ticket page emptied the template list
- Bug Fix: CC addresses containing an underscore never received ticket updates
- Bug Fix: the email "opened" beacon was sent to CC recipients instead of the ticket owner
- Bug Fix: a reply from a priority user did not raise the ticket to high priority
- Bug Fix: a closed ticket that staff opened for a registered user re-opened as an internet inquiry
- Bug Fix: users with read-only access could reply to tickets that are not open by posting the reply form directly
- Bug Fix: mailbox staff who are not site admins did not see the status, note and assignment rows of a ticket
- Bug Fix: a customer viewing their open tickets reset the unread counter of the mailbox
- Bug Fix: mailbox aliases with upper case letters never matched incoming email
- Bug Fix: the mailbox selector was missing for mailbox staff who are not site admins
- Bug Fix: with more than 5 mailboxes the mailbox selector listed table columns instead of mailboxes
- Bug Fix: an invalid _user_id: or user_email: ticket search failed with a fatal error on PHP 8
- Bug Fix: user images in the "Sent to" email search were looked up with the wrong user id
- Bug Fix: a blocked sender address also blocked every address that contained it (blocking bob@example.com blocked jimbob@example.com)
- Bug Fix: an email follow-up sent to two mailbox addresses was added to the ticket twice
- Bug Fix: an email follow-up from a non-priority sender lowered a high-priority ticket to low priority
- Bug Fix: email follow-ups updated the unread counters the wrong way round and for the wrong mailbox
- Bug Fix: auto-reply emails without a subject were not recognised as auto-replies
- Bug Fix: moving a ticket to another mailbox sent the "new ticket created" email to the customer again
- Bug Fix: two tickets created within the same millisecond got the same ticket id
- Bug Fix: the "Average Time To Close" report plotted the duration of each ticket (and zeros for days without tickets) instead of an average
- Bug Fix: deleting an unread open ticket did not decrement the unread counter
- Bug Fix: bulk close left the in-progress/waiting state and owner on closed tickets, and wrote no "closed by" note
- Bug Fix: an inbound email with invalid UTF-8 bytes was stored as an empty webhook in the Webhook Browser, and its accented characters were dropped from the ticket text
- Bug Fix: when the first attachment of an inbound email was not accepted, none of its attachments were shown on the ticket page
- Bug Fix: attachment file names from inbound email were shown on the ticket page without escaping
- Bug Fix: on tickets without tags the tag message and tag list areas were missing from the ticket page, so Save Tags had nowhere to show its result
- Bug Fix: the mailbox move row on the ticket page showed the mailbox name where the user who moved the ticket belongs
- Bug Fix: tickets created from an inbound email showed the sender's address as "Sent to:" - it is now labelled "From:"
- Bug Fix: a reply whose text started with the user's signature showed the signature twice
- Bug Fix: User Settings could not be saved without a signature, even with the signature turned off
- Bug Fix: the signature of mailbox staff who are not site admins was never added to their replies
- Bug Fix: mailbox staff lists stopped at 50 staff per quota, so other staff were missing from the Assign To list
- Bug Fix: the CC field was shown to users who can not reply to the ticket
- Bug Fix: on PHP 8 the ticket page logged an "Undefined array key user_name" warning and a deprecation for every message from inbound email or the contact form
- Developer: removed the unused post_delete_save view - tickets are deleted by mailbox staff with Delete
- Developer: removed the unused attachment_delete view - it was linked from nowhere in Support Tickets
- Developer: removed an unreachable "to and from addresses are the same" webhook check - an email sent to only its own address is refused as "empty receiver address after processing", as before
- Developer: mailbox staff lists are cached, and reset when users, profile quotas or mailboxes change
- Developer: removed a duplicate and an unused element id from the ticket page, unused notes CSS, the unused jrTicket_get_user_mailboxes() function, and a read of a missing URL value on the User Settings page
Version 2.5.4:
- Change: Inbound email attachments use the Mailgun API key from the Email Support Mailgun plugin (Email Support 3.0+) - the MailGun API module setting is used with older versions
- Bug Fix: Setting a ticket status reset the cache of the user's active profile instead of the ticket's profile
Version 2.5.3:
- New: Notice added to ticket when a ticket is moved from one mailbox to another
Version 2.5.2:
- Change: Subject is now populated from the template name when loaded
- Change: Confirm overwrite when a template name already exists
- Change: Show the file attachemnts button for tickets in the Email Inquiries tab
- Change: When it a ticket is closed it is now automatically marked as read
- Bug Fix: Changing the "From Mailbox" in a new Ticket could prevent templates from loading
- Bug Fix: Updated email parser to do a better job of extracting "from" email in webhook
- Bug Fix: Ticket tags with an ampersand (&) in them do not return search results
Version 2.5.1:
- Bug Fix: Replying to a ticket may instead add a "closed ticket" ticket note
Version 2.5.0:
- New: "Reports" tab in ticket dashboard with new Support Ticket canned reports
- New: "Webhook Browser" tool with ability to resubmit failed webhooks
- New: Added the ability to attach multiple bug reports to a single tracker
- New: Clicking the 'in progress' button now opens owner selector
- New: Tickets can be tagged if the tag module is enabled.
- New: New Tickets can be CC'd to other email addresses too, not just Update.
- New: Notes added to tickets show a time and snippet in the detail page
- New: "Toggle Previous Replies" button when viewing a ticket to see inline replies
- Change: Improved webhook parsing for To and From email addresses
- Change: Template sort order has changed from created order to alphabetical
- Bug Fix: fixed PHP notices when running on PHP 8+
Version 2.4.0:
- New: Ability to block a sender added via "Block Sender" button when viewing a ticket
- New: "Blocked Senders" tab in tickets where you can remove senders that were previously blocked
- Change: Updated several templates with correct language strings
Version 2.3.9:
- Bug Fix: Attachments may not be attached when creating a new ticket
Version 2.3.8:
- New: Default indicator and ability to set default mailbox added to Mailboxes browser
- Bug Fix: It was possible to delete the default mailbox
Version 2.3.7:
- Bug Fix: User images may not be visible in the "assign ticket to user" modal popup
Version 2.3.6:
- Bug Fix: Attachments may not be saved correctly when running on a cluster
Version 2.3.5:
- Bug Fix: Subsequent User images may not show if the initial ticket creator does not have an account
Version 2.3.4:
- Bug Fix: Incoming email tickets with attachments but no text body were not creating a ticket
Version 2.3.3:
- Bug Fix: Some "from" fields could contain invalid characters and fail to parse
Version 2.3.2:
- Change: Added new "invalid_mailbox_address" event fired with unknown incoming TO email address
- Bug Fix: User image may not show on tickets when running on a cluster
Version 2.3.1:
- Bug Fix: Items per page jumper was not working correctly in the View Tickets browser
Version 2.3.0:
- New: Prevent duplicate ticket subject from same sender within 5 minutes of previous ticket
- Bug Fix: Mailbox Admin Group selection could allocate incorrect quotas
Version 2.2.3:
- Bug Fix: Mailgun webhook could report "invalid ticket_id received" error in Activity Log
Version 2.2.2:
- Change: Added sender, subject and message to $_data array for incoming_ticket event
- Bug Fix: Mailbox Admin Group selection could allocate incorrect quotas
Version 2.2.1:
- Bug Fix: Deleting an existing mailbox could orphan tickets that were in the mailbox
Version 2.2.0:
- New: When creating or updating a ticket, all profile users will be notified of ticket update
Version 2.1.2:
- Bug Fix: Some users were not able to download ticket file attachments
Version 2.1.1:
- Bug Fix: Possible "invalid email address" error when attempting to create a new ticket
Version 2.1.0:
- New: Click the "assigned to" name when viewing a ticket to assign the ticket to a mailbox admin
- New: User image is shown in live select field when creating a new ticket
Version 2.0.3:
- Bug Fix: Trying to delete a mailbox would result in an "invalid ticket id" error
Version 2.0.2:
- Change: A ticket will always show green if it is currently in progress by a mailbox admin
Version 2.0.1:
- New: In Progress tickets now show ticket owner in ticket browser
- Change: Improved search to search across all Open, Email Inquiries and Closed tickets
Version 2.0.0:
- New: Support added for multiple email addresses via new "Mailboxes" functionality
- New: Support added for "Ticket Notes" for mailbox admins to add and view notes on a ticket
- New: A notice is shown when replying to a user who has ticket notifications disabled
- New: Next and Previous buttons for navigating to next/previous ticket when viewing a ticket
- Change: Replying to a ticket automatically sets the ticket state to "waiting"
- Change: Removed "Support Ticket Access" quota config - was not being used
- Change: Quotas with Read Access can reply to existing open tickets but cannot create new tickets
- Change: Removed notify options added in 1.8.0 - replaced with new Mailbox functionality
- Bug Fix: A new ticket could be created without entering a problem or a question
- Bug Fix: Ticket state images not showing in browser in skins that use a custom icon color
Version 1.8.0:
- New: "Notification Group" Global Config setting to give control over users who get ticket notifications
- New: "Notify Quota IDs" setting to specify admin quota IDs for notification
- New: Support for multiple file attachments when creating or updating a ticket
Version 1.7.3:
- Change: Updated to work with new image info listener to selectively block cached image access
Version 1.7.2:
- Change: Create Ticket "Send To Email" now shows User Name associated with email address
Version 1.7.1:
- New: Updated to properly handle email updates with multiple file attachments
Version 1.7.0:
- New: Ticket Template support in ticket followups and "Create New Ticket" tab for admin users
- New: "Notify to Followup" option when viewing a ticket to highlight ticket 7 days later
- New: Internet tickets with CC'd emails can now respond to CC'd emails with an update
- New: View tracking of ticket updates to show when ticket has been viewed by recipient
- New: Title of the ticket appears in browser tab
- Change: Custom Form responses will now create an "Internet Inquiries" ticket if installed
- Change: Replying to a closed ticket now sets the ticket status as being "open"
- Bug Fix: Search in open/closed tickets may not find all tickets matching search string
- Bug Fix: Some ticket data not being removed when Developer Tools "Reset System" tool is run
Version 1.6.0:
- New: Priority inbox updated so highlighting goes from minor -> critical if no followups
- New: "Close" or "Open" ticket button in header of ticket to make it easier to open/close
- New: "Waiting for Reply" and "In Progress" action buttons added to view ticket
- New: Issue Tracker button to add Tracker URL to a ticket (requires Issue Tracker module)
- New: "Auto Close After" global config setting to auto-close tickets due to inactivity
- Change: Highlighting removed from Priority inbox tickets if last updated by an admin
- Change: Tickets use plain text email instead of HTML to prevent email client threading issues
Version 1.5.0:
- New: "Enable Webhook Log" to log all incoming webhook emails to the Activity Log
- New: Small attachment image shown in Ticket Browser to indicate tickets with attachments
- New: 96mb and 128mb options added to Max Attachment File Size setting
- Change: CSS updates to better handle long line overflow in ticket view
Version 1.4.1:
- Change: Tickets created from "Create Ticket" now strip HTML from body of ticket
Version 1.4.0:
- New: "Can Close Tickets" Global Config option to allow users to self-close tickets
- New: Add any "Contact Us" responses from Simple Custom Forms to Email Inquiries tab
Version 1.3.0:
- New: "New Ticket Notice" Global Config for setting notice text on the Create Ticket form
- Change: "ticket_updated" key removed from ticket datastore items - no longer used
- Bug Fix: Order of tickets when browsing Closed tickets may be incorrect
- Bug Fix: Timestamp in ticket browser was not using the format as defined in the core
- Bug Fix: Deleting ticket from page greater than 1 resetting to page 1
Version 1.2.5:
- Change: CSS Updates to prevent any text in a ticket from changing the ticket layout
- Bug Fix: Gravatar images not working for email addresses not associated with a User Account
- Bug Fix: Date and Time stamps in tickets not using format as set in Core Date and Time
Version 1.2.4:
- Change: User Images updated to work properly with Gravatar module (if installed)
Version 1.2.3:
- Bug Fix: Untranslatable language strings added to translation system.
Version 1.2.2:
- Bug Fix: Possible "Invalid HTML" error when creating or updating a ticket
Version 1.2.1:
- Change: Ticket Priority hi-lighting no longer applied to normal user view
- Bug Fix: Layout of ticket browser columns could be incorrect on user view
Version 1.2.0:
- New: "Blocked Subjects" Global Config option for subject keyword email blocking
- New: Select and delete/close checkboxes now work in Open Tickets
- New: Click on username or email in Browse to see other tickets by same user
- New: Attachment file icons if File Downloads module is installed and activated
- Change: Email addresses longer than 32 characters are truncated when viewing ticket browser
- Bug Fix: Power and Multi users not able to see tickets created by other profile users
- Bug Fix: Tickets created by admins for a user may not be updatable by the user
- Bug Fix: Attachments not working for some text attachments types
Version 1.1.0:
- New: Tickets will now include attachments in tickets for updates done via Email
- New: "Your Settings" admin section for configuring a custom signature
Version 1.0.2:
- Bug Fix: Ticket "Updated By" not being updated correctly in some instances
Version 1.0.1:
- Bug Fix: New Ticket created by an Admin User may be saved with incorrect _profile_id
Version 1.0.0:
- Initial Release