silverstripe-shortlist
, (*1)
Session based shortlist module for SilverStripe, (*2)
This module allows for front end users to create shortlists of pages or dataobjects (which must have associated controllers & Links) which exist within the site. The shortlist is stored against the users' session (so adding/removing items only occurs during the session), but a unique URL for the particular shortlist may be shared., (*3)
Install
The module can be installed via composer:, (*4)
composer require saltedherring/silverstripe-shortlist
Afterwards run a dev/build
, (*5)
Configuration Options
_config/_config.yml:, (*6)
---
Name: shortlist
After: 'framework/*','cms/*'
---
ShortList:
URLSegment: '/shortlist/'
PaginationCount: 12
The base URL segment can be modified here, as can the pagination count (for the page that displays the actual list of items)., (*7)
- [ ] Ensure that URL Segment can dynamically generate the route.
ShortList Object requirements
For an object to be able to be added to the shortlist it must:, (*8)
- Provide a
Link
function
- Extend
ShortListExtension
Front-end
The shortlist may be added to any template by including the supplied ShortListLinks
ss include:, (*9)
<% include ShortListLinks %>
This will provide a mechanism to allow objects to be added & removed from the shortlist., (*10)
The other templates provided are:, (*11)
- templates/Layout/ShortList.ss (provides the template for the actual shortlist, including pagination controls)
-
templates/Layout/ShortList_empty.ss (for displaying empty shortlist messages), (*12)
-
[ ] Supply AJAX example use of pagination & add/remove links., (*13)
TO DO
- [ ] Ensure that URL Segment can dynamically generate the route.
- [ ] Supply AJAX example use of pagination & add/remove links.
Coding Standards
The code has been written to PSR1., (*14)