1. 03 Oct, 2014 13 commits
    • Randall Leeds's avatar
      Switch to BrowserID "Goldilocks" API · c07ea769
      Randall Leeds authored
      Rather than support the fiddly matrix of possiblities when a user
      may not have a session with the application but has a session with
      the identity provider, borrow the newer "Goldilocks" API design from
      upstream where the application is responsible for its own session
      and the BrowserId implementation is less stateful.
      c07ea769
    • Randall Leeds's avatar
      Move session service back to h module · 30d2c5dd
      Randall Leeds authored
      This is in preparation for using the so-called "Goldilocks API" of
      Persona where we manage the session ourselves.
      30d2c5dd
    • Randall Leeds's avatar
      6e389b17
    • Randall Leeds's avatar
      Tighten up the identity and auth interaction · 0f66a5de
      Randall Leeds authored
      Handle errors, ready notification, cancellations and cleanups.
      0f66a5de
    • Randall Leeds's avatar
      4fd12f8b
    • Randall Leeds's avatar
      393fc0d4
    • Randall Leeds's avatar
      3c1764df
    • gergely-ujvari's avatar
      Merge pull request #1540 from hypothesis/frontend-module-reorg · b47b6bd0
      gergely-ujvari authored
      Frontend module reorg
      b47b6bd0
    • Randall Leeds's avatar
      Start to simplify our angular namespaces · 8f64e090
      Randall Leeds authored
      Move toward cleaning up our angular namespaces and organization. By
      flattening our namespaces and changing our file naming we're able to
      reduce the boilerplate needed for angular module and asset bundle
      definitions.
      
      - Kill all the ``h.*`` angular submodules except for ``h.auth``,
        ``h.helpers`` and ``h.identity``. This vastly reduces the amount
        of dependency repetition throughout our angular files as all
        the dependencies of the entire main h module can be declared in
        app.coffee and all the other files simply add their exports to
        the main module.
      
      - Add a helpers/helpers.coffee module definition file so that the
        rest of the helpers can use the 1-arity ``angular.module`` getter
        to attach themselves. These files can all be included with a glob
        in the asset bundle definition.
      
      - Use the glob syntax to include all the directives in the asset
        bundle definition.
      
      - Rename the controller modules in the auth bundle with a '-controller'
        suffix. These can be similarly globbed in the bundle definition.
      
      - Make auth/auth.coffee a module definition file so that the
        rest of the component can use the 1-arity ``angular.module`` getter
        to attach themselves. These files can all be included with globs
        in the asset bundle definition.
      
      - Ensure that all controllers are named in the ``FooController`` style.
      8f64e090
    • Randall Leeds's avatar
      Add ngdocs to the session module · f547c126
      Randall Leeds authored
      f547c126
    • Randall Leeds's avatar
      dff7efd4
    • Randall Leeds's avatar
      Decouple identity and authentication · 1ac5b1a8
      Randall Leeds authored
      Pull the identity service out of the auth module so that it can be
      used separately. Wrap the service in a provider with properties
      that applications can configure to adapt to different authentication
      environments. These properties provide a way to configure injected
      functions that the identity service can invoke in order to fulfill
      requests from client applications for authorization grants without
      tying the identity service itself to particular implementations of
      sessions or authentication.
      1ac5b1a8
    • Randall Leeds's avatar
      Squash session and profile; auth and account · 54dfa394
      Randall Leeds authored
      These resources are one resource on the backend. The pattern of
      preserving object identity for the session response is unnecessary.
      The identity module now listens for events on the root scope instead
      of watching the session. The auth controller publishes the session
      change directly and the auth directive is completely removed. Timeout
      is handled in the controller.
      
      Include the account and auth forms via a macro in the blocks template
      so that all the dialogs can be overridden together and get rid of the
      ``show-account`` directive.
      54dfa394
  2. 29 Sep, 2014 1 commit
  3. 28 Sep, 2014 1 commit
    • Randall Leeds's avatar
      Don't resolve the updater in the promise store · a9771176
      Randall Leeds authored
      Besides potentially delaying the websocket connection unnecessarily,
      this was causing a subtle race condition wherein the stream would
      miss a digest and appear blank. Reasons are unclear, and may hide
      dragons.
      a9771176
  4. 27 Sep, 2014 3 commits
  5. 26 Sep, 2014 5 commits
  6. 25 Sep, 2014 17 commits