silverstripe-admin icon indicating copy to clipboard operation
silverstripe-admin copied to clipboard

Preload and cache "insert link" forms

Open chillu opened this issue 7 years ago • 0 comments

Acceptance Criteria

  • As a CMS author, I can insert links without breaking my writing flow due to sluggish UIs
  • All "insert link" forms are available without a loading delay in the browser after first load
  • The "page" dropdown refreshes whenever the "insert link to page" form is opened
  • The "insert anchor" form automatically has the current page set when the form is opened
  • The anchor list refreshes whenever the "insert anchor" form is opened
  • The caches are cleared when the CMS language is changed
  • The caches can be cleared by the user through default browser mechanisms

Notes

  • This is one of the most common user actions in the CMS, so detail optimisations are warranted
  • Every form schema based form should be able to opt-in to this logic
  • HTTP-based caching rules would allow easy cache clearing: Either through expiry times, or through a hard browser refresh by the user.
  • Technically different users could get different form schema responses - we should tie these caches to various environment criteria (UserID, SubsiteID)
  • This is a partial performance regression from SS3: The "insert link" form only loaded the first time and persists in the DOM until the browser is refreshed
  • Follow up from https://github.com/silverstripe/silverstripe-framework/issues/5947

chillu avatar May 16 '17 10:05 chillu