Skip to content
Snippets Groups Projects
  1. Jun 03, 2015
    • Jared Hancock's avatar
      search: Eliminate join to view for search on custom fields · 4828dd6f
      Jared Hancock authored
      * Fix search on boolean field
      4828dd6f
    • Jared Hancock's avatar
      search: Fix several advanced search issues · bb9ed017
      Jared Hancock authored
      * Fix crash visiting tasks page while ticket adv search
      * Fix search on custom fields
      * Add search on ticket source
      * Move more advanced fields to drop-down
      bb9ed017
    • Jared Hancock's avatar
      Make several optimizations to ticket-view page · 091fe701
      Jared Hancock authored
      * Log events for AJAX collaborator list edits
      * Avoid extra selects for inline image handling
      * Avoid using htmLawed to add target="_blank" and class="no-pjax" to links
        in the ticket thread
      * Cache instances of IntlDateFormatter; seems expensive to set up
      * Cache filetypes Yaml in APC if available
      * Cache I18n::getDefaltLanguage() in the request
      * Avoid extraneous usage of Model::_inspect and Model::$meta
      * Add aggregated query support to the ORM
      * Lazily compile SQL query for InstrumentedLists
      * Apply `select_related` setting when setting up InstrumentedList instances
      * Slight optimization in SqlCompiler::getField
      * Avoid double compiling Sql annotations in the ORDER BY clause
      * Cache Thread::getEntries
      * Break out event types for ThreadEvent for more legible code
      * Eliminate one query from Ticket::loadDynamicData
      * Fix ticket number bolding if already answered
      * Use dependent subqueries for ticket statistics in the queue page, which is
        significantly faster for large data sets (like hundreds of attachments or
        thread entries)
      * Fixup sidebar layout on client knowledge base pages
      091fe701
  2. May 28, 2015
  3. May 27, 2015
    • Jared Hancock's avatar
      file: Allow different names for duplicated content · 3bbe2933
      Jared Hancock authored
      This patch (which needs further development), introduces an extra field to
      the %attachment table to store a file's name, in the event that two files
      with the same content are stored in the database with differing names. In
      such a case, the name is stored in the %attachment table. This allows the
      attachment to specify a different name each time the same file is attached
      to something in the system.
      3bbe2933
    • Jared Hancock's avatar
      forms: Retire the `private`, `required`, and `edit_mask` fields · abcf0d60
      Jared Hancock authored
      These fields have been consolidated into the `flags` column.
      abcf0d60
    • Jared Hancock's avatar
      Fix numerous issues with attachments · bdc4d127
      Jared Hancock authored
      * Fix attachments not sticking on new dynamic form entry
      * Fix attachments not sticking on thread post validation error
      * Fix missing inline images in FAQ article viewing
      * Fix missing inline images in FAQ article printing
      * Fix crash rendering sidebar in staff faq view with attachments
      * Rewrite GenericAttachments to be an ORM object
      * Port CannedResponse to ORM
      * Fix attachments not being displayed when editing a FAQ article
      * Fix squirly empty blue box on faq articles with no attachments
      bdc4d127
  4. May 22, 2015
  5. May 21, 2015
  6. May 20, 2015
  7. May 13, 2015
  8. May 11, 2015
  9. May 05, 2015
  10. May 04, 2015
  11. May 03, 2015
  12. Apr 30, 2015
  13. Apr 15, 2015
    • Jared Hancock's avatar
      custom-data: Address major confusion · 4efef017
      Jared Hancock authored
      This feature addresses a major issue with the initial implementation of the
      custom data system. The original system confused the usage of
      database-backed field (dynamic-fields) and their corresponding
      implementation. This created the need to crate awkward caching pieces to
      ensure that validation errors and data was maintained. Furthermore, the
      system confused the linking between form instances (dynamic-entry) and the
      form used to represent that entry.
      
      This patch addresses the confusion in two ways:
      
      Dynamic form entries do not link directly to the dynamic form. Instead, the
      ::getForm() method returns something from the forms API directly.
      Furthermore, the ::getFields() method does not return dynamic field
      instances (database backed / designed fields). Instead, the actual
      implementation of the fields from the forms API is retrieved. This allows
      the fields to *always* be cached, which helps preserve data and validation
      state.
      
      Secondly, the dynamic form uses the same system, so that requests to turn a
      dynamic form into a form (via ::getForm) will also result in the same
      behavior, again, where the fields are represented as forms API fields rather
      than the dynamic fields.
      
      So going forward, the dynamic fields are *only* used to create corresponding
      forms API field implementations. The are associated with the dynamic
      counterparts as sparingly as possible.
      4efef017
  14. Apr 10, 2015
  15. Apr 09, 2015
  16. Mar 30, 2015
  17. Mar 18, 2015
  18. Mar 13, 2015
  19. Mar 09, 2015
  20. Mar 02, 2015
Loading