This patch allows the much requested selection of individual instances of modules within a course to backup and restore.
It needs A LOT of testing and probably some prettyifying too.
Only tab, newline and return are allowed in XML 1.0.
This feature is controlled by $CFG->backup_strip_controlchars.
Please, test it!
Merged from MOODLE_15_STABLE
- It's automatic. No setting for it. Does it sound ok?
- Any info related to non-exported modules is skipped.
- Any info related to non-exported users is skipped.
Used before execute the backup of a course to enforce integrity.
Perhaps this function should go to central code and be executed
at upgrade time (and be available in health center too!).
See bug 2380
(http://moodle.org/bugs/bug.php?op=show&bugid=2380)
for scheduled backups and only done in SITE backups. Structure is:
<MESSAGES>
<MESSAGE>
Content of the message with one flag to difference read & unread
</MESSAGE>
<CONTACTS>
<CONTACT>
Content of the contact
</CONTACT>
</CONTACTS>
</MESSAGES>
message_get_participants() should include contact users too!!
The new constant is PAGE_COURSE_VIEW, and it's more streamlined with the
new CSS-related ids for 1.5. There are great possibilities for the future
here, so we 're getting ready.
On the other hand, this has to be the ugliest hack I 've ever inflicted
on any program (look at pagelib.php). Thankfully it will only stay for just
a little while.
- user->policyagreed:
if the destination server is different, reset it
- user_students->enrol and user_teachers->enrol
if not set or the destination server is different, set it to $CFG->enrol
somethings should be modified in the rest of moodle:
- update all the 'manual' entries to 'internal'
- modify the enrol_teacher() to use $CFG->enrol by default
- make every enrol method set this field properly.
- perhaps, mark metadata users with a new value too.
I hope this time I got everything changed to the new Page interface! I 'm
really sorry for messing up and breaking new installations... :(
Also moved the only two functions of the API outside the page_base class.
--------------
Brand-new pagelib.php at your disposal! It slices, it dices, it makes your coffee.
It still doesn't understand women... Read the comments in pagelib.php for a first
impression. Feedback highly encouraged!
Blocks code has undergone significant changes to work with Pages. Flexibility is its
middle name, since I think (without having tried it) that adding e.g. a third
placeholder for "center" blocks in courses, with full support for moving around etc,
will now take about 15 lines of new or edited code. If you are not impressed yet, I
suggest watching a documentary on solar physics. :P
MINOR CHANGES:
--------------
Added instance_allow_config() in the blocks class hierarchy to supplement per-instance
configuration options. You can override it to return true and thus get configuration
amenities without allowing multiple instances.
Minor polishing to comments and documentation (whatever caught my eye was game).
Tightened up some code here and there by utilizing all the new features.
BUGFIXES:
---------
A bug in restore_execute.html caused hidden blocks to not be restored at all.
Backward compatibility is maintained, i.e. you can restore ANY version
backups without problems in 1.5. When "adding backup data to an existing
course", no blocks are added. I 'm not sure what the correct behavior
would be in this case.
When restoring a backup from Moodle <= 1.2, the new course SHOULD be given
default blocks when it is restored. I have not actually tested this, my
tests were with version 1.3 and 1.4 backup format.
directories excluded so backup_delete_old_dirs() was no
working fine! This should delete REALLY old dirs in sites
with problems in their scheduled backup.
Merged from MOODLE_14_STABLE
Now both type of links (slasharguments on and off) are
detected in the backup process. And the restore process
take care of the slasharguments seting in destination
and translate all the links to the correct format.
I think it's really a nice addition, ;-)
Ready to 1.3.3 bump!!!
Bug 1634
(http://moodle.org/bugs/bug.php?op=show&bugid=1634)
Merged from MOODLE_13_STABLE
I've tested it against 10 courses (manual and scheduled) and
everything seems to work fine. In some days I'll test it againt
some BIG course (if moodle.org is updated to this version).
Dump version to 1.3 beta (as I think everything is finished now).
:-)