SilverStripe Meetup 07/06/2011


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

SilverStripe Meetup 07/06/2011

  1. 1. One suffolk SilverStripe UK Meetup GPMD Ltd
  2. 2. Core Requirements • Central administration control panel – Site, Theme and Module management • Self serve sign up process • A range of standard modules and widgets • Support for custom modules • Flexible themes with customisable palettes • SilverStripe SilverStripe UK Meetup GPMD Ltd
  3. 3. Architecture • Loosely coupled – Admin tasks are scheduled in a queue • Self contained community sites – Should be relocatable to outside hosting if necessary • Shared code/templates • Git for provisioning and version control • Support for multiple servers under single admin SilverStripe UK Meetup GPMD Ltd
  4. 4. Architecture Diagram SilverStripe UK Meetup GPMD Ltd
  5. 5. Control Panel • ModelAdmin used as framework • ModelAdmin saves relationships _before_ onBeforeWrite – Required addition of beforeSave hook • Standard Security Admin SilverStripe UK Meetup GPMD Ltd
  6. 6. Sites • Used to create, deploy and manage community sites • Sites identified by unique code string – Combined with to form default domain name • When approved, sites are deployed to a server • Title, Domain Name and Primary Contact Details can be edited • Disabling sites will switch them off, not remove them SilverStripe UK Meetup GPMD Ltd
  7. 7. Organisations • Each organisation can have many sites if required • Name, Address and Contact details can be edited • Activity is used toin MetaData SilverStripe UK Meetup GPMD Ltd
  8. 8. Servers • Multiple servers are supported • Hostname • IP Address SilverStripe UK Meetup GPMD Ltd
  9. 9. Lookups • Tables which are cloned onto community sites • Category – IPSV • Activity • Postcode – Parish, Ward, District – Co-ordinates SilverStripe UK Meetup GPMD Ltd
  10. 10. Themes and Palettes • A theme is a set of templates, css and images – css is templated • Each theme can have one or more palettes – Sets the variables in the css templates – Theme contains default values • Together these are compiled into standard silverstripe themes – One theme with three palettes produces three standard themes • A theme has one or more sites – Give a site access to that theme's palettes SilverStripe UK Meetup GPMD Ltd
  11. 11. Modules • All community site code is modular – Including sapphire and cms • Modules may be required and/or standard • A module can have one or more versions – Different sites can be running different versions of a module SilverStripe UK Meetup GPMD Ltd
  12. 12. Jobs • Most admin operations only modify the admin database – Real work is done using a aynchronous jobs • Jobs extend an abstract job class – Define a run() method that does the work and returns a status • ScheduledJobs extend DataObject – Produces a queue • JobManager used to push jobs onto the queue • JobRunner processes the queue – Errors are appended to the job – Serious errors will halt the queue (panic) SilverStripe UK Meetup GPMD Ltd
  13. 13. Modules • Site Configuration • Blog/News • Classifieds • Events Calendar • RSS Aggregator • Image Gallery • Reporting • User Defined Forms • Contact Directory • Spam Protection SilverStripe UK Meetup GPMD Ltd
  14. 14. GPMD Ltd 14 City Road London ECY1 2AA 020 7183 1071 SilverStripe UK Meetup GPMD Ltd