SlideShare uma empresa Scribd logo
1 de 28
SilverStripe CMS
  NZYP Case Study

SilverStripe Community Meetup
          27th Oct 2011
First Up…
• NZYP/NZYPOD?
• New Zealand Young Professionals Online
  Development.
• Joint Venture – Canterbury, Auckland &
  Dunedin Young Professionals (or YPOs).
  – Social and Business Events.
  – Networking and Career Development.
  – Discounts/Supporting from Local Business.
History
Early Days
• Initial brainstorms over a year ago.
• Originally to replace CYP’s website –
  improving management of content.
• …but became apparent that YPOs do the same
  things...we can create a turn-key set of
  common tools for all YPOs!
• DRY concept… applied at a organisation
  process level.
Standardise where it makes sense
…But lots of flexibility everywhere else
Who was involved?
         Project Team
         (Remote team based in Wellington
         and Christchurch).

         •Shea Dawson (Development and
         Template Integration)
         www.livesource.co.nz

         •Simon Waterhouse (Design, Layout
         and Photography)
         www.pxl.co.nz

         •Cam Findlay (Project
         Management, Development)
         www.camfindlay.com
Project Objectives
1. Engage and communicate better with
   members to encourage growth and increase
   value of membership.
2. Turn-Key & scalable system for
   YPOs, efficiency in development and on-
   going costs.
3. Improve and automate processes that are
   currently time consuming.
Why SilverStripe CMS?
Some Interesting Bits…
1. The Great Wall Of Subsites
2. Colouring-In For Big Kids
3. New Module - APES
The Great Wall Of Subsites
Single Site


Content/Pages/SiteConfig

      Images/Files

       Members

    Blog Comments

      DataObjects
Default Subsites


Content/Pages/SiteConfig                       Content/Pages/SiteConfig

      Images/Files                                    Images/Files

                               Members

                            Blog Comments

              DataObjects (Sponsors, Events, Benefits etc)
The Brick Wall


Content/Pages/SiteConfig        Content/Pages/SiteConfig

      Images/Files                    Images/Files

       Members                         Members

    Blog Comments                   Blog Comments

      DataObjects                     DataObjects
Brick Wall with Decorators
function extraStatics() {
           return array(
           'has_one' => array(
              'Subsite' => 'Subsite',
           ),
        );
      }

function augmentSQL(SQLQuery &$query) {
        […] Code here to pre-filter for the current Subsite SQL query […]
      }

function onBeforeWrite() {
        if (!$this->owner->ID && !$this->owner->SubsiteID) {
           if (self::$default_root_folders_global) {
              $this->owner->SubsiteID = 0;
           } else {
              $this->owner->SubsiteID = Subsite::currentSubsiteID();
           }
        }
      }
Colouring-In For Big Kids!

 Custom Branding & Design with
      Custom SiteConfig
Custom SiteConfig – More Decorators!
function extraStatics(){
return array(
 'db' => array(
                  'BrandingBackgroundAlign'=>"Enum('Repeat,Centre','Repeat')",
                  'BrandingHighlightColour' => 'Varchar(6)',
                  […]
                 ‘MembershipType'=>"Enum('Paid,Free','Paid')",
        'MembershipModel'=>"Enum('Fixed,Rolling','Fixed')",
            [...]
              'FacebookURL' => 'Varchar(255)',
              'Twitter' => 'Varchar(255)',
                 [...]
               ),
 'has_one' => array(
                   'BrandingLogo' => 'Image',
                   'BrandingHeader' => 'Image',
                   'BrandingBackground' => 'Image',
                   'BrandingFontHeader'=>'GoogleFont',
            'BrandingFontBody'=>'GoogleFont',
               'Favicon' => 'File',
                   )
          );
       }
…Take your stinking paws off me
      you damn dirty…

               APES
    (Automated Provision for Email
          Services/Syncing)
APES - What does it do?
• Creates automatic data sync to 3rd party mail
  services like MailChimp from SilverStripe
  Members data.
• Simple install with API keys in SiteConfig&
  setup in the config file.
• Provides other widgets and page types
  around email sign up for email newsletters or
  e-marketing campaigns.
APES – Basic Setup
_config.php
Object::add_extension('Member', 'MailChimp');
Object::add_extension('SiteConfig', 'MailChimpSiteConfig');
APES::setSyncFields(array('Birthday','Interests'));

Module Code - MailChimp
$api = new MCAPI($siteconfig->MailchimpApiKey);
$fields = APES::$syncFields;
$mergefields = array();

//check to see if they have set up extra merge fields, if not - set them up
foreach($api->listMergeVars($siteconfig->MailchimpListId) as $merge){
      $mergefields[] = $merge['name'];
      }
foreach($fields as $field){
      if(!in_array($field, $mergefields)){
              $tag = strtoupper(substr($field,0,8));
$api->listMergeVarAdd($siteconfig->MailchimpListId, $tag, $field, array('field_type'=>'text') );
              }
      }
Where can I get it?


Click here to get the code
Project Outcome
• Completed on time, on budget and to the
  scope/quality.
• The system covered all the objectives that
  were set out at the beginning.
• However… the “iron-triangle” does not
  guarantee a project success… especially in IT
  projects.
Defining Success
1. Success is more than just time, cost & quality.
2. We implemented the DeLone& McLean
   Information Systems Success Model as part
   of the project success criteria.
3. This research adds some additional key
   indicators of success for IT projects.
D & M IS Success Model
Information
   Quality
                      Intention to
                        Use/Use

  System
                                        Net Benefits
  Quality

                    User Satisfaction

  Service
  Quality
Original Website
New Website
Thank You

cam@camfindlay.com
  @cameronfindlay

Mais conteúdo relacionado

Semelhante a NZYP Project Casestudy using SilverStripe CMS

jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)Doris Chen
 
BackboneJS Training - Giving Backbone to your applications
BackboneJS Training - Giving Backbone to your applicationsBackboneJS Training - Giving Backbone to your applications
BackboneJS Training - Giving Backbone to your applicationsJoseph Khan
 
SPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuerySPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQueryMark Rackley
 
The SharePoint & jQuery Guide - Updated 1/14/14
The SharePoint & jQuery Guide - Updated 1/14/14The SharePoint & jQuery Guide - Updated 1/14/14
The SharePoint & jQuery Guide - Updated 1/14/14Mark Rackley
 
SPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePointSPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePointMark Rackley
 
Python - A Comprehensive Programming Language
Python - A Comprehensive Programming LanguagePython - A Comprehensive Programming Language
Python - A Comprehensive Programming LanguageTsungWei Hu
 
O365Engage17 - Managing exchange online using power shell, tips & tricks
O365Engage17 - Managing exchange online using power shell, tips & tricksO365Engage17 - Managing exchange online using power shell, tips & tricks
O365Engage17 - Managing exchange online using power shell, tips & tricksNCCOMMS
 
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction Mark Ginnebaugh
 
Curtin University Frontend Web Development
Curtin University Frontend Web DevelopmentCurtin University Frontend Web Development
Curtin University Frontend Web DevelopmentDaryll Chu
 
Social features in SharePoint 2013
Social features in SharePoint 2013Social features in SharePoint 2013
Social features in SharePoint 2013Michael Doyle
 
Building Social Enterprise with Ruby and Salesforce
Building Social Enterprise with Ruby and SalesforceBuilding Social Enterprise with Ruby and Salesforce
Building Social Enterprise with Ruby and SalesforceRaymond Gao
 
From Business Intelligence to Big Data - hack/reduce Dec 2014
From Business Intelligence to Big Data - hack/reduce Dec 2014From Business Intelligence to Big Data - hack/reduce Dec 2014
From Business Intelligence to Big Data - hack/reduce Dec 2014Adam Ferrari
 
MSBI Online Training in Hyderabad
MSBI Online Training in HyderabadMSBI Online Training in Hyderabad
MSBI Online Training in Hyderabadunited global soft
 
Utilizing jQuery in SharePoint: Get More Done Faster
Utilizing jQuery in SharePoint: Get More Done FasterUtilizing jQuery in SharePoint: Get More Done Faster
Utilizing jQuery in SharePoint: Get More Done FasterMark Rackley
 
Django Overview
Django OverviewDjango Overview
Django OverviewBrian Tol
 
The SharePoint & jQuery Guide
The SharePoint & jQuery GuideThe SharePoint & jQuery Guide
The SharePoint & jQuery GuideMark Rackley
 
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConThe SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConSPTechCon
 

Semelhante a NZYP Project Casestudy using SilverStripe CMS (20)

jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
 
Mstr meetup
Mstr meetupMstr meetup
Mstr meetup
 
BackboneJS Training - Giving Backbone to your applications
BackboneJS Training - Giving Backbone to your applicationsBackboneJS Training - Giving Backbone to your applications
BackboneJS Training - Giving Backbone to your applications
 
SPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuerySPTechCon DevDays - SharePoint & jQuery
SPTechCon DevDays - SharePoint & jQuery
 
The SharePoint & jQuery Guide - Updated 1/14/14
The SharePoint & jQuery Guide - Updated 1/14/14The SharePoint & jQuery Guide - Updated 1/14/14
The SharePoint & jQuery Guide - Updated 1/14/14
 
SPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePointSPTechCon Boston 2015 - Utilizing jQuery in SharePoint
SPTechCon Boston 2015 - Utilizing jQuery in SharePoint
 
Python - A Comprehensive Programming Language
Python - A Comprehensive Programming LanguagePython - A Comprehensive Programming Language
Python - A Comprehensive Programming Language
 
O365Engage17 - Managing exchange online using power shell, tips & tricks
O365Engage17 - Managing exchange online using power shell, tips & tricksO365Engage17 - Managing exchange online using power shell, tips & tricks
O365Engage17 - Managing exchange online using power shell, tips & tricks
 
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction
Microsoft SQL Server Analysis Services (SSAS) - A Practical Introduction
 
Curtin University Frontend Web Development
Curtin University Frontend Web DevelopmentCurtin University Frontend Web Development
Curtin University Frontend Web Development
 
Social features in SharePoint 2013
Social features in SharePoint 2013Social features in SharePoint 2013
Social features in SharePoint 2013
 
Building Social Enterprise with Ruby and Salesforce
Building Social Enterprise with Ruby and SalesforceBuilding Social Enterprise with Ruby and Salesforce
Building Social Enterprise with Ruby and Salesforce
 
From Business Intelligence to Big Data - hack/reduce Dec 2014
From Business Intelligence to Big Data - hack/reduce Dec 2014From Business Intelligence to Big Data - hack/reduce Dec 2014
From Business Intelligence to Big Data - hack/reduce Dec 2014
 
MSBI Online Training in Hyderabad
MSBI Online Training in HyderabadMSBI Online Training in Hyderabad
MSBI Online Training in Hyderabad
 
MSBI Online Training in India
MSBI Online Training in IndiaMSBI Online Training in India
MSBI Online Training in India
 
MSBI Online Training
MSBI Online Training MSBI Online Training
MSBI Online Training
 
Utilizing jQuery in SharePoint: Get More Done Faster
Utilizing jQuery in SharePoint: Get More Done FasterUtilizing jQuery in SharePoint: Get More Done Faster
Utilizing jQuery in SharePoint: Get More Done Faster
 
Django Overview
Django OverviewDjango Overview
Django Overview
 
The SharePoint & jQuery Guide
The SharePoint & jQuery GuideThe SharePoint & jQuery Guide
The SharePoint & jQuery Guide
 
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechConThe SharePoint and jQuery Guide by Mark Rackley - SPTechCon
The SharePoint and jQuery Guide by Mark Rackley - SPTechCon
 

Último

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 

Último (20)

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 

NZYP Project Casestudy using SilverStripe CMS

  • 1. SilverStripe CMS NZYP Case Study SilverStripe Community Meetup 27th Oct 2011
  • 2. First Up… • NZYP/NZYPOD? • New Zealand Young Professionals Online Development. • Joint Venture – Canterbury, Auckland & Dunedin Young Professionals (or YPOs). – Social and Business Events. – Networking and Career Development. – Discounts/Supporting from Local Business.
  • 4. Early Days • Initial brainstorms over a year ago. • Originally to replace CYP’s website – improving management of content. • …but became apparent that YPOs do the same things...we can create a turn-key set of common tools for all YPOs! • DRY concept… applied at a organisation process level.
  • 5. Standardise where it makes sense
  • 6. …But lots of flexibility everywhere else
  • 7. Who was involved? Project Team (Remote team based in Wellington and Christchurch). •Shea Dawson (Development and Template Integration) www.livesource.co.nz •Simon Waterhouse (Design, Layout and Photography) www.pxl.co.nz •Cam Findlay (Project Management, Development) www.camfindlay.com
  • 8. Project Objectives 1. Engage and communicate better with members to encourage growth and increase value of membership. 2. Turn-Key & scalable system for YPOs, efficiency in development and on- going costs. 3. Improve and automate processes that are currently time consuming.
  • 10. Some Interesting Bits… 1. The Great Wall Of Subsites 2. Colouring-In For Big Kids 3. New Module - APES
  • 11. The Great Wall Of Subsites
  • 12. Single Site Content/Pages/SiteConfig Images/Files Members Blog Comments DataObjects
  • 13. Default Subsites Content/Pages/SiteConfig Content/Pages/SiteConfig Images/Files Images/Files Members Blog Comments DataObjects (Sponsors, Events, Benefits etc)
  • 14. The Brick Wall Content/Pages/SiteConfig Content/Pages/SiteConfig Images/Files Images/Files Members Members Blog Comments Blog Comments DataObjects DataObjects
  • 15. Brick Wall with Decorators function extraStatics() { return array( 'has_one' => array( 'Subsite' => 'Subsite', ), ); } function augmentSQL(SQLQuery &$query) { […] Code here to pre-filter for the current Subsite SQL query […] } function onBeforeWrite() { if (!$this->owner->ID && !$this->owner->SubsiteID) { if (self::$default_root_folders_global) { $this->owner->SubsiteID = 0; } else { $this->owner->SubsiteID = Subsite::currentSubsiteID(); } } }
  • 16. Colouring-In For Big Kids! Custom Branding & Design with Custom SiteConfig
  • 17. Custom SiteConfig – More Decorators! function extraStatics(){ return array( 'db' => array( 'BrandingBackgroundAlign'=>"Enum('Repeat,Centre','Repeat')", 'BrandingHighlightColour' => 'Varchar(6)', […] ‘MembershipType'=>"Enum('Paid,Free','Paid')", 'MembershipModel'=>"Enum('Fixed,Rolling','Fixed')", [...] 'FacebookURL' => 'Varchar(255)', 'Twitter' => 'Varchar(255)', [...] ), 'has_one' => array( 'BrandingLogo' => 'Image', 'BrandingHeader' => 'Image', 'BrandingBackground' => 'Image', 'BrandingFontHeader'=>'GoogleFont', 'BrandingFontBody'=>'GoogleFont', 'Favicon' => 'File', ) ); }
  • 18. …Take your stinking paws off me you damn dirty… APES (Automated Provision for Email Services/Syncing)
  • 19. APES - What does it do? • Creates automatic data sync to 3rd party mail services like MailChimp from SilverStripe Members data. • Simple install with API keys in SiteConfig& setup in the config file. • Provides other widgets and page types around email sign up for email newsletters or e-marketing campaigns.
  • 20. APES – Basic Setup _config.php Object::add_extension('Member', 'MailChimp'); Object::add_extension('SiteConfig', 'MailChimpSiteConfig'); APES::setSyncFields(array('Birthday','Interests')); Module Code - MailChimp $api = new MCAPI($siteconfig->MailchimpApiKey); $fields = APES::$syncFields; $mergefields = array(); //check to see if they have set up extra merge fields, if not - set them up foreach($api->listMergeVars($siteconfig->MailchimpListId) as $merge){ $mergefields[] = $merge['name']; } foreach($fields as $field){ if(!in_array($field, $mergefields)){ $tag = strtoupper(substr($field,0,8)); $api->listMergeVarAdd($siteconfig->MailchimpListId, $tag, $field, array('field_type'=>'text') ); } }
  • 21. Where can I get it? Click here to get the code
  • 22. Project Outcome • Completed on time, on budget and to the scope/quality. • The system covered all the objectives that were set out at the beginning. • However… the “iron-triangle” does not guarantee a project success… especially in IT projects.
  • 23. Defining Success 1. Success is more than just time, cost & quality. 2. We implemented the DeLone& McLean Information Systems Success Model as part of the project success criteria. 3. This research adds some additional key indicators of success for IT projects.
  • 24. D & M IS Success Model Information Quality Intention to Use/Use System Net Benefits Quality User Satisfaction Service Quality
  • 27.
  • 28. Thank You cam@camfindlay.com @cameronfindlay

Notas do Editor

  1. Initial discussion almost a year ago led to a business analysis project and report.THe original approach was to overhaul CYP’s website but after brainstorms and realising that most YPO’s had similar goals, ways of operating and would likely require similar functionality we decided to look at the project from a bigger pictire and turn it into a turn-key style system for providing websites for any regional YPO that required a new website.
  2. Initial discussion almost a year ago led to a business analysis project and report.THe original approach was to overhaul CYP’s website but after brainstorms and realising that most YPO’s had similar goals, ways of operating and would likely require similar functionality we decided to look at the project from a bigger pictire and turn it into a turn-key style system for providing websites for any regional YPO that required a new website.
  3. Fix business problems/objectivesObjectives, 1. More freqently and effectively communicate with members through taking the information to them via email, social media and engaging them where they are rather than require them to always be checking the website. 2. Build a “turn-key” system that will scale and provide websites and related services to other YPO’s around NZ. 3. Rework and automate many of the (at the time) manual processes carried out as part of the website and save time of the already very busy executive committee (these people are in busy professions, convienvance was a big factor!).
  4. why we used siliverstripeSilverStripe was chosen as it was seen as a flexible framework which could be built upon in future developments of the project.Open Source - no ongoing license fees or being locked in to one vendor.The subsites module was close to what we were looking for to match the need to multiple sites being managed independantly.NZ Made! - they liked the idea of supporting a NZ made open source product that had a great community following around it - felt there was a match in cultures. Also the benefit that they can get support for the project direct from SilverStripe if ever required in the future.Open SourceNZ MadeCommunity SupportModules
  5. What we developed A system based on the SilverStripe CMS and Subsites module that can supply many independant websites, managed by many admins. Each site has its own managed branding look and feel while gaining the benefits from a shared base template. The YPO’s on board also share the costs of the web infrastructure (server etc) and for future development there is now a “build once and everyone benefits” collaborative mentality in place.The system also integrates with selected 3rd party services for membership payment, email newletters, event listings and content syndication.
  6. Subsites by default
  7. Subsites by default
  8. Iron triangle refers to time, cost and quality/scope
  9. System Quality – Usability, Responsiveness, Reliability, Availablility.Information Quality – personalised, complete, relevant, easy to understand.Service Quality – Support, Self-Service, Feedback.Usage – Intention to use (attitude), Use (behaviour). – Measure number of visits, goalsUser Satisfaction – Opinions, User Experience. Measure return visitsNet Benefits – Most important (Objectives you set out to achieve… but you cannot measure in isolation… requires the full system model to make sense).Example… you cannot measure the impact of improved value to members without considering the System Quality and Information quality ie relevant content and usabilityNot always easy to measure this at the time of delivery… requires follow up, user survey/feedback and analytics.
  10. @johnclegg at WDCNZCacheGet the requests down!Performance matters