A liveblogging solution for Plone.
Project description
Life, the Universe, and Everything
A liveblog is a blog post which is intended to provide a rolling textual coverage of an ongoing event.
A liveblog is continuously updated with timestamped micro-updates which are placed above previous micro-updates.
Typical use case is the following:
The publisher of a news site creates a liveblog
Editors add micro-updates to the liveblog as the event goes on
Visitors of the site on the liveblog get micro-updates automatically via AJAX calls
Mostly Harmless
Todo list
Use fuzzy dates
Prettify the prepend of micro-updates
Do not load all micro-updates by default as the page could grow huge and implement infinite scrolling
Make it responsive
Got an idea? Found a bug? Let us know by opening a support ticket.
Don’t Panic
Installation
To enable this package in a buildout-based installation:
Edit your buildout.cfg and add add the following to it:
[buildout] ... eggs = collective.liveblog
After updating the configuration you need to run ‘’bin/buildout’’, which will take care of updating your system.
Go to the ‘Site Setup’ page in a Plone site and click on the ‘Add-ons’ link.
Check the box next to collective.liveblog and click the ‘Activate’ button.
Usage
After installing the package you will see a new content type available: Liveblog.
A liveblog has a title, a description and an image field. The image field is used to set up a header on the liveblog.
Before feeding the liveblog with micro-updates you will need to activate it. Now, go to the Update tab and start writing micro-updates.
A micro-update is basically a text that should optionally have a title. The date and time of the micro-update is automatically recorded for you. After publishing a micro-update you will see it on top of your liveblog before all previous micro-updates.
All people viewing your liveblog will receive automatic updates every minute.
Many editors can update the liveblog safely. When another editor adds a micro-update you will see it automatically on your screen even if you are writing a new one.
You can delete micro-updates also. This will trigger a complete page refresh on all current viewers to avoid the displaying of invalid content in your liveblog. The page refresh will happen withing the next minute. If another editor deletes a micro-update you will see a message on your screen but no content refresh will take place. This way we avoid interrupting editors from their work.
When a liveblog is not going to be updated anymore you should deactivate it.
Workflow
The package defines a workflow to be used with the content type (Liveblog Workflow).
The workflow defines 3 states: private, active and inactive. Liveblogs are created in the private state. When activated, the liveblog will be published and automatic refresh of micro-updates will be enabled. When deactivated, the liveblog will remain public, but automatic refresh of micro-updates will be disabled. No micro-updates can be added to a liveblog in inactive state. To continue adding micro-updates, just activate the liveblog again.
How does it work
TBD.
Changelog
1.0b2 (2014-09-13)
An adapter listing the URLs to be purged when a Liveblog is modified was added. [ericof]
Refactor recent-updates view to get rid of the timestamp parameter. This way we avoid a potential source of DoS attacks. [hvelarde]
1.0b1 (2014-09-05)
Timestamp handling was simplified. [hvelarde]
Implement the Expires header on recent-updates view. This will help us control better how long the page is going to live. [hvelarde]
Add a workflow specific to liveblogs. The workflow defines 3 states: private, active and inactive. This way we can control when automatic refresh of micro-updates happens. [hvelarde]
Refresh the whole view when a micro-update has been deleted to avoid displaying invalid content. [hvelarde]
The header viewlet was including the html and body tags on rendering. [hvelarde]
Lack of id attribute on field text was preventing TinyMCE editor from loading on Plone 4.2. [hvelarde]
Fire ObjectModifiedEvent event on micro-updates deletion to invalidate caching on views. [hvelarde]
Implement handling of If-Modified-Since request header on recent-updates view. [hvelarde]
Markup of time tag used on automatic updates was fixed. [hvelarde]
1.0a1 (2014-09-01)
Initial release.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.