1. 13 Nov, 2018 1 commit
    • Jérome Perrin's avatar
      officejs_support_request_ui: Rework homepage dashboard · 1fe39865
      Jérome Perrin authored
      * Make it obvious that this script works with catalog brains and does
      not want to call getObject
      * Make two queries, one to get the "latest" support requests (by date)
      and another one to get the "current" (by state), making one big query
      will return too many results when the number of SR grow
      * backend directly returns the data in the format expected by graph
      library.
      1fe39865
  2. 05 Nov, 2018 1 commit
  3. 02 Nov, 2018 3 commits
  4. 01 Nov, 2018 8 commits
  5. 31 Oct, 2018 6 commits
  6. 30 Oct, 2018 12 commits
  7. 29 Oct, 2018 4 commits
    • Arnaud Fontaine's avatar
      ZODB Components: Modules loaded by one Request were being GC'ed while executing in another Request. · f523edc4
      Arnaud Fontaine authored
      Until this commit, loading a ZODB Component would add it to the current Request
      object to prevent its reference counter reaching 0 (thus its global being reset to
      None and then being later GC'ed) when a reset happens in another Request.
      
      This problem was found when investigating testFunctionalConfigurator failure
      when installing bt5s as requested by the Configurator:
        1. Request R1 calls Zuite_waitForActivities importing extension.erp5.ERP5Zuite (M1).
           => Add M1 to R1._module_cache_set.
           => M1 ref counter equals to 2 (sys.modules and R1._module_cache_set references).
        2. R1 terminates and is GC'ed.
           => M1 ref counter equals to 1 (sys.modules).
        3. Request R2 runs Configurator configuring the Site.
        4. testFunctionalConfigurator calls Zuite_waitForActivities to wait for the
           Configurator to finish (request R3 which may take ~15 minutes). This calls
           time.sleep() in a loop where 'time' module is imported at top-level.
        5. R2 installs bt5 triggering reset.
           => M1 ref counter equals to 0.
              ===> M1 global variables are reset to None and thus 'time' is set to None
                   raising an Exception in the next call of time.sleep() in the loop.
      
      The easiest way would be to have a hook on sys.modules dict lookup and thus add M1
      to R2._module_cache_set when being imported, but this is not supported... Instead
      create a global cache on erp5.component package.
      f523edc4
    • Jérome Perrin's avatar
      officejs_support_request_ui: don't use non existing action · f5026161
      Jérome Perrin authored
      There is no action with referecne `list` on support request module.
      f5026161
    • Jérome Perrin's avatar
    • Vincent Pelletier's avatar
      testTradeReports: Allow reusing in site-dependent security group setups. · fc3da930
      Vincent Pelletier authored
      This test alone does not define site-dependent security groups, so this
      change is not required as such.
      But in real configuration, ERP5 instance define security groups, which
      sometimes (often ?) depend on which site a document or user is linked to.
      When multiple groups apply (ex: having a certain function at a certain
      site), the final group is composed by joining group identifiers using
      underscores. This forbids using underscores in group identifiers.
      And group identifiers are generated from document's (here, the Category)
      codification if set, otherwise the reference if set, otherwise the document
      identifier.
      So set a underscore-less codification on these categories so this test can
      be run on tests where security is configured to include site in security
      groups.
      fc3da930
  8. 26 Oct, 2018 3 commits
  9. 25 Oct, 2018 2 commits
    • Xiaowu Zhang's avatar
      erp5_font: ',' is necessary between urls · c5b0cf68
      Xiaowu Zhang authored
      c5b0cf68
    • Jérome Perrin's avatar
      CRM / Support Request App time tracking and bug fixes · cc202866
      Jérome Perrin authored
      This is a mix of features to help time tracking and reporting with small unrelated bug fixes and improvements.
      
      To help time tracking we show the time on support request with hour:minutes everywhere and set a stop date automatically. We also add interaction so that "user doing" is automatically added to the support request so that we can see "who did" and make reports based on this.
      
      Bug fixes/unrelated features:
       * when project does not have supply lines, show all services members of the support request use. Also change to pass relative URL of services, usually we don't pass IDs, but relative URLs. This is a visible/breaking change, because it's now required to configure services use. Because it's also required in erp5_crm, I expect it would not break too much. 
       * momentjs' related time was not refreshed, so they kept displaying "a few second ago" even hours later
       * don't set HTML source as post title
       * prevent double submit of comments in support request app.
      
      
      /reviewed-on nexedi/erp5!780
      cc202866