4. Aug 2009 Glasgow College of Nautical Studies and Central
College of Commerce move from Blackboard to
Moodle 1.9
T I M E L I N E
Dec 2009 Glasgow Metropolitan College agree the business
case for a Moodle 1.9 pilot.
Jan 2010 Glasgow Metropolitan College begin development
of their Moodle 1.9 pilot.
Aug 2010 Glasgow Metropolitan College launches
Moodle 1.9 pilot.
Sep 2010 Glasgow Metropolitan College, Glasgow College of
Nautical Studies and Central College of Commerce
merge, o!cially becoming the City of Glasgow
College.
5. Aug 2010 Glasgow Metropolitan College launches
T I M E L I N E Moodle 1.9 pilot.
Sep 2010 Glasgow Metropolitan College, Glasgow College of
Nautical Studies and Central College of Commerce
merge, o!cially becoming the City of Glasgow
College.
Dec 2010 City of Glasgow College agrees the business case
for using Moodle 2
Jan 2011 City of Glasgow College begins development on
Moodle 2
Aug 2011 City of Glasgow College launches MyCity, based
on Moodle 2.1
6. 1 Identify Challenges
2 Create a Development Plan
3 Create a Contingency Plan (and another!)
4 Engage with Sta! and Students
5 Review Migration Options
6 Plan for Migration
7 Determine new Course Code Frameworks
7. 1 Identify Challenges
• Managing Change
• Sta! & Student
Engagement
• Sta! Training
• Technical Development
• Moodle 2 ‘early
adopters’
Gurumustuk Singh
• Plugins Not Available
8. 1 Identify Challenges
• Migration
• Blackboard to Moodle
• Duplicate Courses
• Concurrent Changes
• Student Records
Gurumustuk Singh
• IT Network
9. 2 The Plan...
Jan Feb Mar Apr May Jun Jul Aug Sep
Planning
Design
Development
Testing
Content Migration
Promotion & Launch ★
★ Launch of Moodle 2.0 Sandbox
10. 3 The Reality
Jan Feb Mar Apr May Jun Jul Aug Sep
Planning
Design
Development
Testing
Content Migration ✦
Promotion & Launch ★
★ Launch of Moodle 2.0 Sandbox
✦ Launch of Moodle 2.1
11. 4 Engage with Sta! and Students
Most Popular File Types 50.0 %
share ideas
93.3 % 85.3 %
& resources
54.7 % 46.7 %
57.7
more sta"
%
development
12. M
ul
tip
4
le
0
50
100
150
Fi
le
Up
lo
La ad
te
s tN
ew
s
Ca
le
nd
ar
Currently Use
Would Like to Use
Em
ai
l
Fo
r um
s
IM
/C
ha
t
Not Sure
Da
t ab
Im as
ag es
e
Would Never Use
Ga
lle
M ry
ed
ia
Pl
ay
e r
Q
ui
zz
es
Engage with Sta! and Students
O
th
er
13. 4 Engage with Sta! and Students
How Con"dent are You?
Very Fairly
58.5% 34.8%
50% 50%
Information Wanted
course materials (84.1%)
Use Moodle as a VLE course information (72.3%)
Use Blackboard as a VLE
0 50 100 150
14. 4 Engage with Sta! and Students
Accessing the VLE From:
Home In Class The Library Smartphone
87.2% 50.3% 47.7% 21.5%
Better Social Network Integration
97.7 % 38.5 % 32.3 %
15. 4 Engage with Sta! and Students
Library 81.6%
Student Association 50.4%
Canteen 41.8%
Guidance 48.2%
Learning Support 56%
Careers 68.8%
Study Skills 68.8%
Funding 66.7%
International 28.4%
ePortfolios 34.8%
16. 5 Review Existing Content
• Review existing content and prioritise
for migration.
• Opt-in migration for Blackboard
courses, with monthly reminder emails.
• Review and cost options for migration.
17. 6 Plan for Migration
• One month ‘blackout’ in July, except
for summer courses.
• De"ne hierarchical course structure.
18. 7 Separate Units
C1HNDPHOTO1
Course with 100 students
C1HNDPHOTO1D773G4 C1HNDPHOTO1DM0V34 C1HNDPHOTO1DV6034
Unit with 100 students Unit with 100 students Unit with 100 students
Course code plus year plus unit code
C1HNDPHOT1 DV6034
19. 7 Shared Units
M1HNDSPTHO1 L2HNDHOSPM1
Course with 50 students Course with 70 students
DF4F35 DL3E34 DV0M34
Unit with 50 students Unit with 120 students Unit with 70 students
Just the unit code
DV6034
20. 7 No Units
J2NQUESHG1 J2NQUESI21 H1HNCHAIRD1
Course with 30 students Course with 50 students Course with 70 students
Course code plus year
J2NQUESI21
21. Re#ecting on the Journey
• Set up a project team
and meet regularly.
• Create a development
plan and timeline.
• Work backwards from
immovable deadlines.
22. Re#ecting on the Journey
• Identify essential and
desirable functionality.
• Map user engagement.
• Work closely with IT /
Student Records.
24. Massive Overhaul Minor Update
Huge changes to code, Security updates and bug
plugins and page layout "xes for features.
2.2.3 Major Update
New features, parts of
Moodle re-written.
25. System Requirements
• Moodle 2 is much ‘heavier’.
• Higher PHP memory limit and script
timeout.
• You will need a more powerful server
for the same number of users.
26. System Requirements
“We run our “A company “We use Shared
own servers” hosts ours” hosting”
Check your Speak to Test Moodle 2
systems. your company out under
Upgrade if about realistic
necessary. upgrading circumstances.
27. Cheap Shared Hosting
• Cheap sites o!ering unlimited space
always have other limits.
• ‘Oversellers’ cram as many people onto
a server as possible.
• HostGator (et al) limit CPU usage,
memory and the number of emails you
can send.
28. This site has been suspended for excessive CPU usage.
29. System Requirements
• Newer versions of PHP and MySQL
required.
php --version
PHP 5.3.3 (cli)
mysql --version
mysql Ver 14.14 Distrib 5.1.52
35. Upgrading Versions
1.9 2.0 2.1 2.2
• Moodle recommend always upgrading
from one release to the next*.
• Major new features in 2.1 and 2.2.
* except Moodle 1.7: they recommend going from 1.6 straight to 1.8
36. Upgrading Versions
• Always test upgrades on a copy of your
site before upgrading the live site.
• Minor updates usually install quickly.
• Major updates can take much longer to
install, depending on your site.
37. Managing your Plugins
• Plugins, activities and blocks had to be
totally re-written.
• Check your themes: they’ll need
re-written too.
• Fewer plugins makes things easier.
38. Managing your Plugins
• Check which plugins you have installed.
• See if updated plugins are available for
Moodle 2.
• If a plugin isn’t well used, you may be
able to "nd an alternative.
43. What We Did
College of Nautical Studies Central College Metropolitan College
Moodle 1.9 Moodle 1.9 Blackboard 8
City of Glasgow College
Moodle 2
44. How We Did It
College of Nautical Studies Central College Metropolitan College
Moodle 1.9 Moodle 1.9 Blackboard 8
City of Glasgow College Migration Server
Moodle 2.1 Moodle 1.9
46. How We Did It
• No freely-available tools to convert
Blackboard courses to Moodle 2
• Several tools to convert Blackboard
courses to Moodle 1.9
• Moodle 2.1 can import Moodle 1.9
courses - Moodle 2.0 can’t.
50. BFree
• Developed by the University of North
Carolina.
• Not a ‘converter’: just gets the "les out
of a Blackboard course backup.
• UNC will not share the source code.
51.
52.
53. BFree: Upsides
• Gets stu! out of
Blackboard...
• ...and that’s about it.
54. BFree: Downsides
• Doesn’t do much more
than unzipping the
course backup
manually.
• Not useful for what
we’re looking for.
• Only included because
people keep talking
about it.
56. CCT / Reteach
• Three versions have been released:
CCT, CCT2 and Reteach.
• Works with blackboard exports, not
archives.
• CCT2 is used for Blackboard 8, Reteach
for Blackboard 9.
57. CCT / Reteach
• CCT1 has a web interface and is a little
complicated to set up.
• CCT2 has a web interface, it s bit easier
to set up, but has no documentation.
• Reteach is easy to set up, runs from
the command line and could easily be
scripted.
58. CCT / Reteach
• (Reteach) brings quizzes across.
• Converted courses don’t have any
blocks.
59.
60. Reteach: Upsides
• Well updated tool.
Support for Blackboard
8 and 9 out of the box.
• Premium support
available if you need
help.
• Brings quizzes across.
• Later versions can be
easily scripted.
61. Reteach: Downsides
• Courses we converted
couldn’t go straight
into Moodle 2.1: had to
take them into 1.9 and
back out "rst.
• Converted courses had
no blocks.
63. Built-In Utility
• Automatically runs if you try to import
a Blackboard archive to Moodle 1.9
• Outdated, was built for Blackboard 5.
• Open source, can be extended.
• Doesn’t bring quizzes across.
64.
65. Built-in Tool: Upsides
• Built in to Moodle.
• Kicks in automatically
when you try and
restore a Blackboard
archive in Moodle 1.9.
• Resulting course look
Moodle-native.
66. Built-in Tool: Downsides
• Some minor tidying up
required after
converting.
• Built for Blackboard 5
and 6: some tweaks
required for
Blackboard 8 courses.
• Doesn’t convert
quizzes.
67. Blackboard’s ZIP Problem
• ZIP "les should use forward slashes to
store things in folders ( / ).
• Blackboard on Windows generates ZIP
"les with backslashes ( ).
• A "le called ‘info.txt’ inside a folder
called ‘help’ becomes ‘helpinfo.txt’ at
the top of the ZIP.
68.
69. Choosing the Winner
• BFree didn’t do what we wanted and
couldn’t be extended.
• Compared CCT/Reteach and the built-
in utility to decide which to use.
• What worked for us might not be
what’s best for you.
• What’s essential and what’s desirable?
70. Choosing the Winner
• We chose to extend the built-in
Moodle converter.
• Your mileage may vary.
• We were very early adopters.
• Tools like Reteach may be better now
than they were when we migrated.
75. 1 Improve the Converter
• Many rules for handling di!erent
resource types.
• ‘If the resource type looks like this,
treat it this way’
76. 1 Improve the Converter
Blackboard Course Moodle 1.9 Course
Blackboard Manifest Moodle Course Manifest
Quizzes Announcements Quizzes Announcements
Documents Web Links Documents Web Links
77. 1 Improve the Converter
• Converter doesn’t bring quizzes across.
• We didn’t update the converter.
• Only 170 quizzes on Blackboard.
• Used Respondus to migrate quizzes.
78. 1 Improve the Converter
• Not well used in the college.
• Usually referred to special events in
the past.
• Not migrated.
79. 1 Improve the Converter
• Blackboard 5 stored web links
di!erently to Blackboard 8.
• Easy to extend the converter to pick up
links.
on the stick
Our improved Blackboard import
script is included on your USB stick.
80. 2 Batch-export all Blackboard courses
• Use blackboard archives, not exports.
• Automated backup tool built in to
Blackboard.
• Takes a CSV of course codes to export,
and folder to put them in.
COURSE101, d:backups
COURSE102, d:backups
COURSE103, d:backups
COURSE104, d:backups
81.
82. 3 Import courses to Moodle 1.9
• Free Firefox plugin called iOpus
iMacros.
• Custom script to import an entire
folder full of courses to a Moodle 1.9
category
on the stick
Our iMacros scripts are included on
your USB stick.
83. 3 Import courses to Moodle 1.9
• Left running on a spare PC overnight.
• Don’t use the PC while it’s importing.
• Make sure iMacros timeout setting is
high if you’re uploading large courses.
• Make sure the PC doesn’t go to sleep.
on the stick
Our iMacros scripts are included on
your USB stick.
84.
85. 3 Import courses to Moodle 1.9
• Some ‘housekeeping’ on imported
units.
• Not essential, but makes things a bit
tidier.
86.
87.
88. 3 Import courses to Moodle 1.9
• Blackboard exports have strange
sections names that aren’t too pretty.
• Simple database search and replace.
UPDATE mdl_course_sections
SET summary = REPLACE(summary,
"COURSE_DEFAULT.StaffInformation.ST
AFF.label", "Staff Information");
89.
90.
91. 3 Import courses to Moodle 1.9
• Blackboard backups have each "le in
its own folder, called ‘res12345’.
• Finding a document will be di%cult for
lecturers, because they need to look in
each ‘res‘ folder.
• Needs to be cleaned up in two places.
92. 3 Import courses to Moodle 1.9
• Command line script to move the "les
out of the ‘res’ folders.
• SQL script to tell Moodle the "les
aren’t in the ‘res’ folders any more.
• Be careful with this: if you don’t do it
right you’ll end up with a Moodle full
of broken "les.
on the stick
Our ‘Deresonator’ scripts are
included on your USB stick.
93. 1 Improve the Converter
2 Batch-export all Blackboard courses
3 Import courses to Moodle 1.9
4 Batch-export courses from Moodle 1.9
5 Import courses into Moodle 2
94. 4 Batch-export courses from Moodle 1.9
• Moodle 1.9 has a ‘scheduled backup’
tool.
• Use this to create a backup of all the
courses in your Moodle 1.9 site.
• Create a folder to hold your backups.
• Schedule a backup 5 minutes in the
future and run Cron.
95.
96.
97.
98. 5 Import courses into Moodle 2
• Use another iMacros script to load an
entire folder of Moodle 1.9 backups
into a Moodle 2 site.
• Script tested with Moodle 2.1 and 2.2
on the stick
Our iMacros scripts are included on
your USB stick.
101. Upgrade in Place
• Check the technical details listed in
‘Migrating to Moodle 2’, or get your
host / someone technical to do it.
• Don’t worry if you’ve missed
something: Moodle will check before it
starts the upgrade process.
102. Upgrade in Place
• Do not just drop Moodle 2.0 code over
the top of Moodle 1.9 site.
• Do not upgrade your live site without
testing it on a backup copy "rst!
103. Upgrade in Place
• Take a backup of your site and store it
in a safe place.
• Convert your database to Unicode
(UTF8).
• Database conversion is a technical
process, but Moodle provides
instructions on manually converting.
104. Upgrade in Place
• Make sure you backed up your Moodle
webroot and your backup is OK.
• Empty your moodle webroot of
everything except con"g.php and all
the plugins you know work with
Moodle 2.
• Extract the new version of Moodle to
your webroot.
105.
106. Upgrade in Place
• Visit your Moodle site in a web
browser.
• It will ask if you want to upgrade to
Moodle 2.
• On the second screen, it will perform a
health check on your system.
107.
108.
109.
110.
111. Upgrade in Place
• This next step could take a long time.
• Tested on a modest-spec server:
• Site with 60 courses: 25 minutes
• Site with 672 courses: 60 minutes
118. What could Go Wrong?
• You used a Moodle 1.9 activity, but
there’s no new version for Moodle 2.
The activity won’t be available after
the upgrade, and any activities that
were in courses will disappear.
119. What could Go Wrong?
• The pre-upgrade check shows there’s
something missing from your server.
Moodle 2 does require extra PHP
packages that Moodle 1.9 didn’t. These
are easy to install if you use standard
system packages.
121. Release Timeline
2008 2009 2010 2011 2012 2013 2014
1.8 Full Support
Major Security
1.9 Fixes Only
2.0
2.1
2.2
2.3
122. Release Timeline
• Moodle 1.x had a very long, irregular
release schedule.
• New releases came out when new
features were ready.
123. Release Timeline
• Moodle 2.x has a set, predictable
release schedule.
• Major updates in June and December.
• Minor updates every two months.
124. Release Timeline
• Bug "xes released for 12 months.
• Critical security updates releases for
18 months.
• More predictable upgrade planning.
125.
126. New in Moodle 2.0
• Many core Moodle
frameworks re-written
from scratch.
• Completely di!erent
plugin system from
Moodle 1.9
• Much more can be
customised without
changing Moodle’s
core.
127. New in Moodle 2.0
• New, more powerful
theming system.
• Plugin icons and
images can be
overridden in themes.
128. New in Moodle 2.0
• New repository
framework.
• Integrate with systems
like YouTube, Flickr,
Google Docs,
Wikipedia...
• New "le picker and
uploader.
129. New in Moodle 2.0
• New HTML editor.
More features and
works across more
browsers.
• New messaging
frameworks: receive
messages in Moodle,
as emails and through
Jabber.
130. New in Moodle 2.0
• New Backup/Restore
format.
• Restore from the front
page: don’t need an
empty ‘Upload Zone’
course any more.
• Moodle 2.0 cannot
restore Moodle 1.9
course backups.
131. New in Moodle 2.0
• Course completion
status.
• Conditional activities.
132. New in Moodle 2.0
• Cohorts: system-wide
groups of students.
• Users can now be
enrolled on
metacourses.
133. New in Moodle 2.1
• Import Moodle 1.9
course backups
(without user data)
134. New in Moodle 2.1
• New quiz engine.
• Quizzes need to be
converted when
upgrading to Moodle
2.1 - this takes time.
135. New in Moodle 2.1
• Automatically detects
smartphones, tablets
and old browsers and
send them to di!erent
themes.
• Built-in web services
let you use mobile
apps with Moodle.
William Hook
136. New in Moodle 2.2
• Support for ‘external
tools’ that integrate
with Moodle.
• Support for IMS
common cartridges.
• New types of plugins:
admin tools, reports
and quiz access rules.
137. New in Moodle 2.2
• Plugins can depend on
other plugins: won’t
install if requirements
aren’t already installed.
• Improvements to
cohorts: can now bulk-
add users.
• New ways to grade
students, including
Rubric support.
138. New in Moodle 2.2
• Course listings can now
include course
codes(short names).
• Navigation block now
drills down to
individual topics.
• Global search has been
removed. Will be
replaced in Moodle 2.3
139. Expected in
Moodle 2.3
Some of this is liable
‘Aus Bild der Wissenschaft’ (1965)
to change, we’re trying
to predict the future
Klaus Bürgle
140. New in Moodle 2.3
• New ‘Survey 2’ tool,
combining Survey,
Questionnaire and
Feedback tools.
• Improvements to quiz
editing tools.
141. New in Moodle 2.3
• MNet single sign-on
system replaced by
another tool. (OAuth?)
• Con#icting information
about whether MNet
will disappear in
Moodle 2.3
142. New in Moodle 2.3
• ‘Paged’ course format:
puts materials on many
‘tabs’ instead of one
long page.
• New assignment
framework.
144. Getting Users on to Courses
Authentication Enrolments
How to students log How does Moodle know
in to Moodle? which courses they’re on?
145. Getting Users on to Courses
• Both authentication and enrolments
support plugins.
• Get authentication and enrolment data
from a wide variety of sources.
146. Getting Users on to Courses
Manual Data Manual Data
Self-Registration Self-Enrolment
Active Directory
m CSV File
Novell eDirectory LDAP
Shibboleth Course Meta-links
MySQL Database MySQL Database
147. Authentication
• How are you creating accounts for
students (and sta!) in your current
VLE?
• Is there an easier way?
148. Authentication
• Moodle can read user data from MS
Active Directory and Novell
eDirectory using LDAP.
• When using LDAP, you don’t have to
create user accounts on Moodle at all.
149. Authentication
• User has an Active Directory account.
• User tries to log in to Moodle with
their AD username and password.
• Moodle checks with the AD server to
see if it’s a valid user account.
• Moodle creates a new account for the
user and logs them in.
150. Authentication
• These ‘LDAP’ accounts can stay synced
with the place they came from.
• Automatically pull down a user’s name,
email address and other data.
• Lock those pro"le "elds so students
can’t update their own data.
students
will enter
silly things!
151. Course Enrolment
• The best way to enrol students
depends on your institution’s needs.
• Where is enrolment data stored?
• What format are your usernames in?
• What format are your course codes in?
154. Username Course Code Role
city12345 CRSAAAA 5
city12346 CRSAAAB 5
city12347 CRSAAAC 5
city12348 CRSAAAD 5
Uploading a External
CSV File Database
m
155. CSV: Upsides
• Enrolments become
‘internal’ and can be
edited or deleted in
Moodle.
• Simpler technical
setup.
156. CSV: Downsides
• Can be complicated if
LDAP users haven’t
logged in (so don’t
exist) yet.
• You might need to
upload the CSV every
day
157. Database: Upsides
• Automatic syncing with
MIS = virtually no
manual updating.
• Any changes to the
database are
automatically picked
up next time the user
logs in.
• Much less manual
e!ort.
158. Database: Downsides
• Technical e!ort
required to set up.
• Liaising with other
departments = red
tape.
• Enrolments must be
managed at the
database level. Can’t
use built-in Moodle
tools.
159. Keeping Things Together
• Most enrolments will
be to a top-level course
and multiple units.
• You can sync
enrolments across
multiple units using
Metacourses or
Benjamin Earwicker
Cohorts.
160. Metacourse Link
• A metacourse link tells
a course “enrol
everybody who’s on
this other course”. META
META
• Automatically updated
when users are added
or removed from the
other course.
• As of Moodle 2, you
can add people to a
metacourse manually.
161. Metacourse Link
enrol HND Photography
students here 50 students enrolled
Unit A Unit B Unit C
Metacourse Metacourse Metacourse
students
appear here
162. Metacourse Limitations
• META
META
Metacourses transfer
enrolments, but they
do not transfer groups
or group memberships.
• Keep groups synced
manually (a nightmare)
or write your own
solution.
163. Cohort Sync
• Add your students to a
cohort.
• Enrol the cohort on the
course.
• Enrolments will be
updated automatically
when users are added
or deleted from the
cohort.
164. Cohort Sync Limitations
• Doesn’t create groups
for cohort members or
keep groups in sync.
• Administering cohorts
is an admin-level
setting, not a teacher-
level setting.
166. Theming Moodle 2
• Moodle 2 has completely rebuilt
theming engine.
• Your theme will have to be rewritten
for Moodle 2.
• Don’t panic! It’s easier than you think.
167. New in Moodle 2.0
• Moodle 2 supports
themes that build on
top of other themes.
• Simple, unstyled ‘base’
theme gives you a
simple three-column
layout.
178. base
Adds our styling
and top menu city
Strips out
city_dev city_acc colour. Keeps top
menu.
Apply the high
contrast colour city_acc_yb city_acc_by city_acc_gw
schemes
179. Anatomy of a Theme
con#g.php style javascript pix layout
Theme Con"guration
Contains your theme settings. Tells Moodle
what your theme is called, which JavaScript
and styles to use, and whether you use a
parent theme.
181. Con"g.php
$THEME->name = 'city'; This should be the same
as your theme’s folder.
$THEME->parents = array('base');
$THEME->sheets = array('city');
$THEME->hidefromselector = false;
$THEME->javascripts = array();
$THEME->javascripts_footer = array('jquery', 'expander');
182. Con"g.php
$THEME->name = 'city';
$THEME->parents = array('base'); Set this to the folder
name of your parent.
$THEME->sheets = array('city');
$THEME->hidefromselector = false;
$THEME->javascripts = array();
$THEME->javascripts_footer = array('jquery', 'expander');
183. Con"g.php
$THEME->name = 'city';
$THEME->parents = array('base');
Any Stylesheets you
$THEME->sheets = array('city', 'another');
want to use.
$THEME->hidefromselector = false;
$THEME->javascripts = array();
$THEME->javascripts_footer = array('jquery', 'expander');
184. Con"g.php
$THEME->name = 'city';
$THEME->parents = array('base');
$THEME->sheets = array('city', 'another');
$THEME->hidefromselector = false; Set this to ‘true’ to hide
it from the list of themes.
$THEME->javascripts = array();
$THEME->javascripts_footer = array('jquery', 'expander');
185. Con"g.php
$THEME->name = 'city';
$THEME->parents = array('base');
$THEME->sheets = array('city', 'another');
$THEME->hidefromselector = false;
Any scripts in here will
$THEME->javascripts = array(); be included at the top of
the page.
$THEME->javascripts_footer = array('jquery', 'expander');
186. Con"g.php
$THEME->name = 'city';
$THEME->parents = array('base');
$THEME->sheets = array('city', 'another');
$THEME->hidefromselector = false;
$THEME->javascripts = array();
Any scripts in here will
$THEME->javascripts_footer = array('jquery', 'expander'); at the bottom
be included
of the page.
187. Anatomy of a Theme
con#g.php style javascript pix layout
Stylesheets
Put all your CSS #les in here. They won’t be
automatically included, you’ll need to
include them in your con#g.php
189. Anatomy of a Theme
con#g.php style javascript pix layout
Javascript
Any scripts that are included in your theme
go in here. To include them in your page,
put them in con#g.php
191. Anatomy of a Theme
con#g.php style javascript pix layout
Images
Images you want to use in your theme go in
here. You can use special shortcuts in your
CSS to load the images.
193. Including Images in CSS
background-image: url([[pix:theme|clock]]);
• [[pix:theme|image-name]]
• Special shortcode tells Moodle to look in
the current theme’s folder for an image
called ‘clock’.
• If there’s no such image in the current
theme, it looks in the parent theme.
194. Including Images in CSS
background-image: url([[pix:theme|clock]]);
• ‘Top toolbar’ uses this format.
• ‘City’ theme has the CSS above.
• Moodle looks for the images in the
current theme, even if the CSS comes
from the parent theme.
195.
196. Anatomy of a Theme
con#g.php style javascript pix layout
Layout
You can customise bits of your page layout
in here. It’s how we get the login box in the
header.
197. George Howie
new Moodle 2
Launching your
The B-52’s - Detail Song for a Future Generation
Scanned by Adam Currell