Skip to content
Snippets Groups Projects
  1. Oct 22, 2018
    • Jared Hancock's avatar
      queues: Add "rough" counts · c8c42d8a
      Jared Hancock authored
      This changes the queue counts shown at the bottom of the page to no longer be
      calculated using the SQL_CALC_FOUND_ROWS method of MySQL. Such is very slow for
      large recordsets. Instead, a rough count is computed based on the total number of
      tickets in the queue without respect for staff access. This is the fastest way to
      get a maximum number of possible tickets to be shown. The pagenation interface
      should be changed to show only NEXT and PREVIOUS pages where the rough estimate can
      be used to provide a rough idea of whether or not another page of data would be
      available.
      
      Furthermore, if APCu is available, the rough count is stashed and kept between
      requests so that the rough counts do not need to be re-tallied until they would
      change from a ticket state change.
      
      Another optimization might be to increment and decrement the queue rough counts when
      tickets are created or change states. In such a case, it could be identified which
      queues the old ticket would have been (and decrement the count) and which queues the
      updated ticket would be in (and increment the count).
      c8c42d8a
    • Jared Hancock's avatar
      queues: cache queue counts · ef67b713
      Jared Hancock authored
      If APCu is available, then the queue counts can be cached between requests.
      They are automatically cleared and recalculated if the status of a ticket
      changes or if a queue or saved search is edited. Otherwise, the queue counts
      will expire after an hour and be recalculated anyway.
      ef67b713
    • Jared Hancock's avatar
      cron: specify index for ticket aging query · 387fe1ae
      Jared Hancock authored
      Somehow on large datasets (like >1M tickets), MySQL can get confused on which
      index will provide the best performance. Generally, as systems age, they will
      have significantly more closed tickets than open ones. Therefore, it should be
      safe to assume that scanning the `status_id` index on the ticket table for
      `open` tickets would be the fastest way to arrive at the sort-of short list of
      tickets which should need to possibly be aged.
      387fe1ae
    • Peter Rotich's avatar
      Queue: Hierarchical Queues · e04778d1
      Peter Rotich authored
      The commit fixes queues display and sorting.
      e04778d1
    • Peter Rotich's avatar
      Advanced Search: Keyword search · bf848662
      Peter Rotich authored
      * Require keyword search term to be 3 words or less
      * Show keyword search option on Advanced Search dialog
      bf848662
    • Peter Rotich's avatar
      Make Primary Queues Buckets · 78e7114b
      Peter Rotich authored
      This commit makes Primary Queues buckets for sub queues with forced inheritance of
      criteria. Primary queues are now hidden unless there are no sub queues
      attached. Agents can still get to primary queue by clicking on it.
      
      The commit also adds default sub queues for Closed queue, utilizing DateTime
      periods.
      78e7114b
  2. Oct 03, 2018
    • aydreeihn's avatar
      File Disposition · 0c6e9acc
      aydreeihn authored
      This commit ensures that we use the correct disposition for downloading files.
      0c6e9acc
  3. Oct 02, 2018
    • aydreeihn's avatar
      Attachment Names Issue · 86946d58
      aydreeihn authored
      This commit ensures that we will always get the correct attachment name regardless of if the file content is the same. Additionally, it ensures that the file_ids for attachments are compared in the correct order (elseifs)
      86946d58
  4. Oct 01, 2018
    • aydreeihn's avatar
      Attachment Names Issue · 08c0ac71
      aydreeihn authored
      This commit ensures that we will always get the correct attachment name regardless of if the file content is the same. Additionally, it ensures that the file_ids for attachments are compared in the correct order (elseifs)
      08c0ac71
  5. Sep 27, 2018
    • aydreeihn's avatar
      Form Attachment Issues · 31591904
      aydreeihn authored
      - Make sure we keep attachments in the session even if the page refreshes to display an error message
      - Reverse the array of files to be id => name instead of name => id
      - Make sure we retain the old ticket or task id if we encounter an error while trying to create a ticket or task from a thread entry
      - Make sure we have a valid fileId before returning file info
      - Make sure we can still add files for Canned Responses (id and name flip issue)
      - Make sure we can still add attachments to Internal Notes for Tickets and Tasks
      31591904
    • Peter Rotich's avatar
      Add period to DateTimeField · 7d3dfd0a
      Peter Rotich authored
      Add support for periods to DateTimeField allowing the search on range of
      dates based on set period like 'Today', 'This Quarter' or 'Last Week' etc.
      7d3dfd0a
  6. Sep 26, 2018
    • aydreeihn's avatar
      Ticket Sources · a20e98ed
      aydreeihn authored
      This commit ensures that we will always have the correct display of values for the Ticket Source regardless of if the key and value differ.
      Ex: if we had a Ticket Source that contained a space in the value, the key would be camelcased
      a20e98ed
  7. Sep 14, 2018
  8. Sep 13, 2018
    • aydreeihn's avatar
      Advanced Search Column Conditions · 417acb96
      aydreeihn authored
      This commit fixes an issue we had where the bolding on the Ticket Number and Subject columns of advanced searches showed the opposite of what they should have. We instead want them to be bold if the Tickets are Unanswered.
      417acb96
  9. Sep 12, 2018
    • aydreeihn's avatar
      Filter Action Validation Fixes · 3d45adc5
      aydreeihn authored
      - Let validate_actions pass if we are trying to disable/archive a Help Topic so that the filter flag can be set.
      - Make sure we do not throw validation errors when deleting a filter action. Just delete it.
      3d45adc5
    • Peter Rotich's avatar
      export: Field Display · 8adbd37d
      Peter Rotich authored
      Only use field display when fetch value is not string
      8adbd37d
    • aydreeihn's avatar
      Retain Help Topics for Emails · a4c02622
      aydreeihn authored
      If a Help Topic is disabled or archived and it is also selected as the Help Topic for an Email, make sure we do not remove that Help Topic from the Email. Instead, if that email receives a Ticket, we should just assign the ticket to the Default Help Topic. If there is no Default Help Topic, the Ticket will not have a Help Topic at all.
      a4c02622
    • Peter Rotich's avatar
      Add Queue Columns Annotation as Fields. · aa0924a8
      Peter Rotich authored
      aa0924a8
  10. Sep 11, 2018
  11. Sep 10, 2018
    • aydreeihn's avatar
      Oops: Creating Tickets with Attachments · da6075c4
      aydreeihn authored
      This addresses a careless copy/paste mistake made with 4496
      da6075c4
    • Peter Rotich's avatar
      DatetimeField: Format · 8623ed60
      Peter Rotich authored
      This commit adds the ability for DatetimeField to specify format string -
      this is useful when the field display requires specific format different
      from the system defined formats. For example during export.
      8623ed60
    • Peter Rotich's avatar
      Export: Make Export Fast Again · a0115226
      Peter Rotich authored
      This commit addresses longstanding memory and speed issues with ticket
      export especially when exporting large set of tickets.
      
      The implementation borrows heavily on Custom Columns, which introduced the
      idea of using placeholder field to parse the data from query (db) instead of
      making models to do the  parsing which led to related models getting fetched
      too -- and hence the memory issues.
      
      The commit also addresses caching of choices for selection fields and such
      to avoid expensive trips to database for each row!
      a0115226
  12. Sep 05, 2018
  13. Sep 04, 2018
    • aydreeihn's avatar
      Email Name Format · 015d45a6
      aydreeihn authored
      This commit further corrects issues where emails were being sent out with names being improperly formatted if the name format is set as 'Last, First' or if it has special characters.
      015d45a6
  14. Aug 31, 2018
    • JediKev's avatar
      oops: Selection Search Bug · 2f3ecc59
      JediKev authored
      This addresses an issue introduced with 4124 where searching for a Selection
      Field with the criteria "does not have a value" throws an `implode()`
      warning.
      2f3ecc59
  15. Aug 29, 2018
  16. Aug 28, 2018
    • aydreeihn's avatar
      Implement Referral Internal Notes · 74ed76b9
      aydreeihn authored
      This commit stores internal notes if an Agent includes one while creating a Thread Referral.
      74ed76b9
    • JediKev's avatar
      issue: Default Help Topic Issue Summary · 77e44464
      JediKev authored
      This addresses issue 4473 where users creating a ticket with the Help Topic
      preselected shows a validation error for the Issue Summary field. This is
      due to the new `getFormName()` function that creates new field form names
      based on the user’s/agent’s session. When the Help Topic is preselected,
      `_form` is not set for each field so the hashed name of the fields before
      ticket submit is different than after ticket submit.
      77e44464
  17. Aug 27, 2018
Loading