1. Plone Conference
Arnhem, 2012
United Nations: training and
distance learning with Plone
Simone Orsi
2. Who am I
Simone Orsi
twitter.com/simahawk
simahawk <at> gmail.com
ITCILO (2007-2008)
IT specialist (WTH is Plone???)
DOMSENSE (2008-2012)
Python developer 4 years
doing mainly Plone and OpenERP
ABSTRACT (2012-)
Python developer (from 1/10/2012)
5. ITCILO
What is?
– International Training Centre of the International Labour Organization [1] [2]
– The campus is based in Turin, Piedmont, Italy
What it does?
– Provides residential, on-line and on-the-field training to organizations and
governments all around the world.
Where Plone comes in?
– Institutional portal
– Intranet
– E-learning platforms
– Evaluation system
[1] www.itcilo.org
[2] www.ilo.org
6. ITCILO
The Plone bet
– Security
– Flexibility
– TTW editing / scripting (pls don't throw this
away!)
– Powerful
– Using since v1 (huge knowledge so far)
– Unify platforms
10. Evaluation
Why Plone?
– They knew it
– I knew it
– Completely integrated into the intranet
– “Like it or not, Plone is a platform. It is a powerful
starting point for building intranets, extranets, and
all sorts of things that should never be built on
Plone but we do it anyways.” @eleddy :)
19. Evaluation
PAX Session – token
– When questionnaire's enabled for compilation a
unique token is generated
– Participants can then access the questionnaire
using a specific URL for every language
– When questionnaire's enabled for compilation all
the token are deleted
21. Evaluation
Future
– Multilang editable text
– Flexible answer options
– Flexible questionnaire web templates
– TTW web template editor
– Web stats with graphs
22. SCORM
Sharable Content Object Reference Model (SCORM)
is a collection of standards and specifications for web-
based e-learning.
It defines communications between client side content
and a host system called the run-time environment,
which is commonly supported by a learning management
system.
SCORM also defines how content may be packaged into
a transferable ZIP file called "Package Interchange
Format".
Source: http://en.wikipedia.org/wiki/SCORM
23. SCORM
Plone packages
– collective.scormviewer [1]
integrates SCORM JS API into Plone. Makes possible to play
flash quiz (created with Articulate for example) and to keep track
of usage and results. Thanks to Silvio Tomatis [silviot] :)
– collective.archiveviewer [2]
Allows to read zipped file content within Plone without having to
download and extract it. Used by c.scormviewer for loading
SCORM packages content.
[1] (not released yet)
[2] http://pypi.python.org/pypi/collective.archiveviewer
25. Course area
● Conferences
● Assignments
– Adaptation of ECAssignment
● Notifications
– Per-content per-user settings with manager override
● SCORM
● Selection
– Training tracks reservation
26. Conferences
● It was SoliComm (Plone 2.5, ICDL etc)
●
Purpose: asynchronous training across continents
●
Support Explorer 6/7
● Low bandwidth connections
● Ploneboard heavily customized
●
Read/unread feature [1]
●
Statistics
●
Local groups
[1] http://pypi.python.org/pypi/collective.readunread
27. Selection
A training track selection wizard
– ATCT
● for Selection, Session, SubSession, Track objects
– Wizard
● a page is generated for every session (like one
per day)
● A session contains sub-sessions (like time slots)
that group tracks
● The PAX can select tracks to attend
28. Selection
A training track selection wizard
– Contraints
● Track availability constrained on max PAX per
track and duplicated selection
– Results
● Web
● CSV export
29. Migrations
ITICILO.org
– 3.3.6 → 4.1
– 4 languages
– Custom content types and portlets
– Badly broken DB connection
– quintagroup.transmogrifier
● All went well except for a ton of XML marshalling error
– Up and running pretty fast without tuning!
30. Migrations
MMW.ITCILO.ORG
– 2.1 → 4.1
– 7 languages (including Bahasa Indonesia, Tiếng
Việt, Русский )
– Plone Article, Lingua Plone, Plone ExFile,
Remember + Membrane, Ploneboard, Custom
ATCTs for Member, Courses, etc
– A lot of scripts and templates into skins layers
– No portal_setup
– ...all the stuff you need for making a migration a
pure hell :)
– c.transmogrifier + json to the rescue
31. Migrations
ACTRAV.ITCILO.ORG: PHP4 → Plone 4.2
– Was hacked and broken every now and then
– Multilang (LinguaPlone)
– Very bad URLs
– Custom pipeline for Funnelweb [1]
collective.transmogrifier [2]
– Themed as the original one with thanks to
plone.app.theming [3]
[1] http://pypi.python.org/pypi/collective.transmogrifier
[2] http://pypi.python.org/pypi/funnelweb
[3] http://pypi.python.org/pypi/plone.app.theming