osTicket 1.9.x reaches end of life

There were two very important pieces of information in yesterdays Blog post over on osticket.com above and beyond the normal "Hey these new versions have been released".  If you haven't read the Blog post yet it is here: https://www.osticket.com/blog/126

First and foremost is that the 1.9 tree has reached it's end of life and is no longer being supported or maintained.  The devs highly recomnend that you upgrade immediately.  Historically osTicket has only supported two versions at a time so this tells me they expect 1.11 to be made stable quite quickly.

Secondly the tired and old wiki has been retired and been replaced with a brand new re-written Documentation Site.  You can get to the new site by clicking Docs on the osTicket site, or go there directly at: https://docs.osticket.com/

The release schedule slowed down for a while there, but things seem to have finally gotten back on track.  I'm really looking forward to some of the things that I have heard about in the pipeline and will share them as soon as I can!

osTicket v1.10.1 Security Update Released!

There is a new version of the 1.10 series, specifically the stable 1.10.1 Security Update. You can get this version via github or at https://osticket.com/download. It features some improvements/bug fixes, and an important security update. Here is a list of the changes:

Enhancements

  • Users: Support search by phone number
  • i18n: Fix getPrimaryLanguage() on non-object (#3799)
  • Add TimezoneField (#3786)
  • Chunk long text body (#37577b68c99)
  • Spyc: convert hex strings to INTs under PHP 7 (#3621)
  • forms: Proper Field Deletion
  • Move orphaned tasks on department deletion to the default department (42e2c55)
  • List: Save List Item Abbreviation (8513f13)

Performance and Security

  • XSS: Encode html entities of advanced search title (#3919)
  • XSS: Encode html entities of cached form data (#3960bcd58e8)
  • ORM: Addresses an SQL injection vulnerability in ORM lookup function (#39591eaa691)

 

Those still using the 1.9 series will be happy to see that there is also a new 1.9.16 release also.

Upgrading osTicket 1.9.x to current (1.10)

So you're running osTicket version 1.9.x and you want to upgrade it to current which as of this writing is 1.10, and you need a little help. Well, you've come to the right place.  One very important thing to note: contrary to what the osTicket FAQ at https://osticket.com/faq says, you need a newer version of PHP than 5.3.  I would recommend PHP 5.5 or 5.6 over any other versions at this time.  So if you have 5.3 go upgrade to 5.5 of 5.6.  This version introduces support for PHP 7.0, but there have been reports on the forums that newer versions of 7.0 and 7.1 have issues.

If you have ever upgraded osTicket in the past your experience this time will not be much different than it was previously.

Before you start it is important to mention that if you have installed any mods or performed any custom coding (including changing graphics, translations, etc.) that upgrading will not be as simple as it sounds in this article and you will lose all the modifications that you have made. You could very well break your site or at the very least lose some of the functionality that you currently enjoy.

  1. Put the site into offline mode.

To do this log into your site and navigate to Admin panel -> Settings -> Helpdesk Status and toggle the radial to "Offline (Disabled)", scroll down and click "Save Changes".

note: I personally leave the site open, but navigated back to the Client panel.

  2. Make a backup of your database.

There are various ways to do this and I am not going to cover all of them. My preferred way is to use command line. You can do this by simply issuing a command similar to:

mysqldump -u userName -p databaseName > fileName.sql

note: change userName to your DB username, databaseName to the name of your DB, and fileName to what ever you want to call the backup file.

One other easy way to do backups (on windows) is to use MySQL Admin (deprecated) or MySQL WorkBench.

  3. Make a backup of your site.

Once again there are various ways to achieve this. I trust that you know how you want to do it, just make sure that you do it.

NOTE: You should never rely on your ISPs automatic backups,
always make your own backups before upgrading!!!

While you are here, you may want to also make a separate copy of your /include/ost-config.php file. This file contains the database connection information.

  4. Download the latest version of OSTicket. osticket.com/download.

Note: If you are running any plugins (especially any of the auth plugins), you should also download the new versions of those.

  5. Extract it to your OSTicket directory. Yes, you can and should have it over write existing files.

Note: If you also downloaded upgrade to your plugins make sure that you put there in /include/plugins at this point.

  6. re load your web page. When the page loads you should be looking at the image below. Since this is an upgrade you should be looking at the upgrader. This is important to note since the Upgrader looks different from the Installer.

fig 1 – upgrader
click image to enlarge

 

At this point you should be able to click the "Start Upgrade Now" button. The next screen should look like this:

fig 2 – upgrader, page 2
click image to enlarge

 

Unless you have a reason not to, go ahead and click the "Do It Now!" button. This should result in a small rectangle popping up in the middle of your screen like this:

fig 3 – upgrader upgrading

 

Once it has completed you should be looking at the following page:

fig 4 – upgrader, upgrade completed
click image to enlarge

 

Now, if you click on the Settings tab you should be looking at the following:

fig 5 – admin panel, version
click image to enlarge

 

While you are here, if you had previously put the site into Offline mode, you should put it back in Online mode (don't forget to click Save Changes at the bottom of the page).

Congratulations! You've upgraded from 1.9.x to 1.10, however you are not quite finished yet.

  7. Time for post install clean up.

Go into your OSTicket directory and delete [or rename] the setup folder. It is not needed for a live or production site and should never be left on a publicly accessible server. I recommend that you delete it, but some people like renaming it to keep the files around should they need it again. For the record you should not need it again, and if you did you can always just re-download the distribution archive. This will also get rid of the annoying nag screen at the top of the site.

Next go to your /include folder and make the ost-config.php read only. How to do this varies by OS.

That's it for the "hard" stuff. I recommend that you take another backup of your site (both database and files) since you just made major changes to the site.

Enjoy!

N

tmib

 

p.s. the instructions for installing and configuring the LDAP/AD plugin really haven't changed.

Add a client side open ticket list to osTicket 1.9 or 1.10rc2

This mod was updated on 15 Dec 2015

Ever since 1.9 was released my old article on how to add a client side open ticket list has been deprecated. The article that your reading now is yet another updated version to work with both the 1.9.x and 1.10rc2 releases.

One of the features that I would love to see integrated into osTicket is an open ticket listing for clients. While I do beleive that this would be best added to core or made into a plugin this will have to suffice until one of those two things are realized.  

I feel that this simple version gives users the ability to see what tickets are already open so as to cut down on duplicate tickets, and gives the user a better idea of how many tickets are ahead of them when placing a request. This mod was originally written for osTicket 1.6ST and re-released for 1.7, 1.8 and now finally 1.9 and 1.10.  While this mod is here for everyone to be able to use, it would be great if the people who use it donated .

In the past I have included two ways to install (the mod). However with this release I am only including one way to install this (chiefly due to the fact that no one has ever donated a dime for this mod).

1. Save the display_open_topics.php into your base osTicket folder. Open it and edit the lines 18 through 24 to match your setup.

2. open osticketDirectory\assets\default\css\theme.css with your favorite text editor and scroll all the way to the bottom and add the following:

#openticks {
  padding:5px;
  background:#BFBFBF;
  -moz-border-radius: 5px;
  border-radius: 5px;
  -moz-box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.4);
  -webkit-box-shadow: 3px 3px rgba(0, 0, 0, 0.4);
  box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.4);
}

#openticks-a {
  border-right-style: solid;
  border-right-width: 1px;
  border-right-color: #BFBFBF;
  text-align:center;
  vertical-align:middle;
  padding-bottom:4px;
}

#openticks-b {
  text-align:center;
  vertical-align:middle;
  padding-bottom:4px;
}

3.  open and edit \index.php scroll down and replace line 79-82

</div>
</div>

<?php require(CLIENTINC_DIR.'footer.inc.php'); ?>

change to:

</div>
<p style="text-align:center">Be sure to browse both our <a href="kb/index.php">Featured Questions (FAQs)</a>, and the open tickets below before opening a ticket.  Thank you.
  <div id="openticks"><?php include('display_open_topics.php'); ?></div>
</p>
</div>

<?php require(CLIENTINC_DIR.'footer.inc.php'); ?>

The file archive for this mod can be downloaded here.

Running 1.8? Please use see this article instead for that version: Add a client side open ticket list to osTicket 1.8

osTicket v1.9.12 Released!

There is a new version of the 1.9 series, specifically the stable 1.9.12  You can get this version via github or at http://osticket.com/download.  It features some improvements/bug fixes, and an important performance update.  Here is a list of the changes:

 

Improvements

  • Fix missing search box adding user to organization (#2431)
  • Fix incorrect update time on FAQ view in staff portal (194f890)
  • Fix incorrect parsing of some multi-part MIME messages (fe62226)
  • Fix auto-claim for new ticket by staff if a filter added a canned response (eca531f)
  • Fix malformed results on remote user search when adding users (#2335)
  • Fix search by ticket number on client portal (#2294)
  • Fix association of user email without a domain to an organization without an email domain setting (#2293)

Performance and Security

  • Revert poor performing ticket stats query (#2318)

osTicket v1.9.9 Released!

There is a new version of the 1.9 series, specifically the stable 1.9.9  You can get this version via github or at http://osticket.com/download.  It features some improvements/bug fixes, and an important security update.  Here is a list of the changes:

Enhancements

  • Properly balance stripped and invalid HTML (#2145)
  • Add MANIFEST file to deployment process and retire duplicate code for packaging (#2052)

Improvements

  • Fix inability to configure LDAP and S3 plugins (regression) (59337b3)
  • Fix incorrect whitespace in search indexed HTML content (#2111)
  • Add support for invalid multipart/relative content type (aaf1b74)
  • Force line breaks for very long HTML lines (56cc709)

Performance and Security

  • Fix slow query for ticket counts for large datasets (c4ace2d)
  • Fix slow thread load query (thanks @torohill) (7b7e855)

osTicket v1.9.8 Released!

There is a new version of the 1.9 series, specifically the stable 1.9.8  You can get this version via github or at http://osticket.com/download.  It features some improvements/bug fixes, and an important security update.  Here is a list of the changes:

Enhancements

  • Update user information for existing users when importing CSV (#1993)
  • Agent names are consistently formatted and sorted throughout the system (#1972)
  • Memcache session backend support. (See include/ost-sampleconfig.php) (#2031)
  • Email domain validation includes DNS record verification (#2042)
  • Make ticket queue selection sticky (aa2dc85)

Improvements

  • Fix incorrect mapping of ISO charsets to ISO-8859-1, thanks @nerull7
  • Fix unnecessary drop of ticket CDATA table because of update to deleted field (#1932)
  • Fix inability to create or update organization custom data (#1942)
  • Fix inability to update some fields of user custom data (#1942)
  • Fix filtering user custom data for email tickets (#1943)
  • Fix missing email headers resulting in incorrectly threaded emails when delivered (#1947)
  • Cleanup file data when removing custom file uploads (#1942)
  • Fix crash when exporting PDF and PHAR extension is not enabled
  • Fix crash processing some TNEF documents (89f3ed7, #1956)
  • Fix handling of GBK charset when gb2312 is advertised (#2000)
  • Fix link to client ticket listing when logged in, thanks @neewy (#1952)
  • Disambiguate staff and collaborators when processing a some emails (#1983)
  • Fix several i18n phrase and layout issues (#1958, #1962, #2039)
  • Improve detection of some bounce notices with alternative content (#1994)
  • Fix image URL rewrite when pasting existing images, from a KB article for instance (#1960)
  • Preserve internal note formatting on new ticket by staff if HTML is disabled (#2001)
  • Touch organization updated timestamp on custom data update (#2007)
  • Fix deployment on Windows® platforms, thanks @yadimon (#2033)
  • Fix upgrade crash if retrying an old, failed upgrade from v1.6 (#1995)
  • Fix corruption of some html content (9ae01bf)

osTicket v1.9.6 Pending Release!

There is a new version of the 1.9 series being released soon! This maintenance release specifically stable version 1.9.6  can be grabbed via github or preferably at  http://osticket.com/download once it's released.  It features some enhancements, improvements/bug fixes, and and a few Performance and Security fixes.  Here is a list of the changes:

Enhancements

  • New Message-Id system allowing for better threading in mail clients (#1549, #1730)
  • Fix forced session expiration after 24 hours (#1677)
  • Staff panel logo is customizable (#1718)
  • Priority fields have a selectable default (instead of system default) (#1732)
  • Import/Export support for file contents via cli (#1661)

Improvements

  • Fix broken links in documentation, thanks @Chefkeks (#1675)
  • Fix handling of some Redmond-specific character set encoding names (#1698)
  • Include the user's name in the "To" field of outbound email (#1549)
  • Delete collaborators when deleting tickets (#1709)
  • Fix regression preventing auto-responses for staff new tickets (#1712)
  • Fix empty export if ticket details form has multiple priority fields (#1732)
  • Fix filtering by list item properties in ticket filters (#1741)
  • Fix missing icon for "add new filter", thanks @Chefkeks (#1735)
  • Support Firefox v6 – v12 on the file drop widget (#1776)
  • Show update errors on access templates (#1778)
  • Allow empty staff login banner on update (#1778)
  • Fix corruption of text thread bodies for third-party collaborator email posts (#1794)
  • Add some hidden template variables to pop out content (#1781)
  • Fix missing validation for user name and email address (#1816, eb8858e)
  • Turn off search indexing when complete, disable incorrectly implemented work breaking, squelch error 1062 email from search backend (afa9692)
  • Fix possible out of memory crash in custom forms (#1707, 0440111)

Performance and Security

  • Fix generation of random data on Windows® platforms (#1672)
  • Fix possible DoS and brute force on login pages (#1727)
  • Fix possible redirect away from HTTPS on client login page, thanks @ldrumm (#1782)

You can read more about it at the github repository.   As usual it is recommended that you upgrade immediately.