Date post: | 28-Nov-2014 |
Category: |
Internet |
Upload: | calvin-hendryx-parker |
View: | 361 times |
Download: | 0 times |
Plone and Drupal: CMS Coexistence in Higher Education
Calvin Hendryx-Parker CTO
June 18th, 2014 #psm14
#psm14
And more...
#psm14
#psm14
Fast forward...
#psm14
Newly spawned websites...
#psm14
Built on various CMS...
#psm14
March 2014 Data
69%COEXISTENCE
#psm14
How do you control web branding, content & infrastructure?
Source: http://www.jaquesamerica.com
#psm14
Consolidation may be very tempting...
Source: http://www.jaquesamerica.com
#psm14Consolidation
#psm14Cons...• Expensive:
• CMS Evaluation • Migration • Bit Rot • Training
• Demotivating • Polarizing
Credits: http://ekladata.com
#psm14
There is another option...
#psm14Integration
#psm14UCLA - Integration
http://www.rosebowlstadium.com/teams/detail/ucla
#psm14
• PushHub Implementation:
• Pyramid with ZODB
• Redis
• Feedparser
• Solr
What is PushHub?
#psm14
Standards
5/15/14 Webinar
PHP I can’t believe I’m about to do this
#psm14
/** * Implements hook_node_insert(). */function pushhub_node_insert($node) { if ($node->status && $node->promote) { pushhub_notify(array($node->nid), 'shared.xml'); }}
#psm14
/** * Put stuff in the queue */function pushhub_notify($nids, $topic='shared.xml', $timeout=60){ $hub_url = variable_get('pushhub_huburl', 'http://example.com/hub'); Resque::setBackend('localhost:6379'); $headers = array('Content-Type' => 'application/x-www-form-urlencoded'); $topic_url = url("pushhub/" . $topic, array('absolute' => TRUE)); $payload = array('hub.mode' => 'publish', 'hub.url' => $topic_url); $hub_endpoint = $hub_url . "/publish"; # Add the job to the queue Resque::enqueue('default', 'Post', array($hub_endpoint, $payload, $headers, $timeout));}
#psm14
class Post { public function perform() { $endpoint_url = $this->args[0]; $payload = $this->args[1]; $headers = $this->args[2]; $timeout = $this->args[3]; $request = Requests::post($endpoint_url, $headers, $payload, array('timeout' => $timeout)); }}
#psm14
import requests!!def post(endpoint, payload, headers, timeout=60): response = requests.post( endpoint, data=payload, headers=headers, timeout=timeout) return response.status_code
5/15/14 Webinar
Demo
Check out
sixfeetup.com/pushhub
Check out
sixfeetup.com/pushhub
Check out
sixfeetup.com/pushhub
Check out
sixfeetup.com/pushhub
Check out
sixfeetup.com/pushhub
Check out
sixfeetup.com/pushhub
Check out
sixfeetup.com/pushhub
Check out
sixfeetup.com/pushhub
Check out
sixfeetup.com/pushhub
#psm14Learn More
Download case studies at sixfeetup.com
Talk to Sixies:
Calvin Carol
Check out
sixfeetup.com/pushhub