Commit Graph

241 Commits

Author SHA1 Message Date
Andrew Nicols 0b3ae20700 Merge branch 'MDL-48644_restoreLegacyLogs27' of https://github.com/moodlerooms/moodle into MOODLE_27_STABLE 2015-01-05 14:33:04 +08:00
Aaron Barnes 77fd878edb MDL-40097 completion: Apply robust role detection to samesite restores. 2015-01-05 10:38:24 +08:00
Aaron Barnes 43ed7bfd0f MDL-40097 completion: Make restoring grade criteria more robust 2015-01-05 10:38:01 +08:00
Mark Nielsen 1463260443 MDL-48644 backup: Preserve log IP and time during restore 2014-12-18 11:38:22 -08:00
Joshua Johnston c5d0af083f MDL-46651 Backup: Handle duplicate course completions during restore
Cron can cause duplicate completion records if triggered during a long
running restore process. If this is the case, replace the new record
with the record from the backup file
2014-12-11 15:56:13 -05:00
Dan Poltawski 49ba5a31c9 Merge branch 'MDL-47323-enrol-plugin-backup-27_STABLE' of https://github.com/mpetrowi/moodle into MOODLE_27_STABLE 2014-12-09 22:30:04 +00:00
Matt Petro d05cc63706 MDL-47323 backup: added enrol plugin backup structure and annotation 2014-12-02 22:02:00 -05:00
Frederic Massart 37c2a7aba9 MDL-40419 backup: Advanced comparison when restoring blocks in course 2014-11-27 16:19:54 +08:00
Adrian Greeve 3c40f7eb61 MDL-36240 backup: Activity calendar events backed up.
Activity calendar events can now be backed up and restored
when no user data is selected.
2014-11-17 10:13:37 +08:00
sam marshall 81c4057908 MDL-46991 Availability: Conditional dates not updated on restore 2014-09-18 16:36:38 +01:00
David Curry 3ae804809e MDL-47076 badges: Add checks to user fields during badges restoration
Change-Id: I49d2137666d2d7c1f6abca7ae83c07b326d9b0c4
2014-09-09 16:20:41 +12:00
zbdd 0c18577317 MDL-37312 backup: Keep course idnumber on same site course restore
When the course idnumber is set during a same site course restore,
retain the course idnumber if there are no duplicates.
2014-09-01 10:44:50 +08:00
Mark Nelson 68fb3969e1 MDL-34248 core_backup: used API instead of inserting into the log table directly 2014-07-17 18:12:01 -07:00
Marina Glancy d468b949f1 MDL-39726 backup: fix SQL syntax for Oracle 2014-06-11 17:16:40 +08:00
Marina Glancy a0881872c7 MDL-39726 backup: fix SQL syntax for Oracle 2014-06-11 12:17:25 +08:00
Damyon Wiese 11be1e8b2b Merge branch 'MDL-39726-27' of https://github.com/merrill-oakland/moodle into MOODLE_27_STABLE 2014-06-09 12:43:27 +08:00
Eric Merrill 9ec7228b03 MDL-39726 backup: Move question files by context, not one at a time
Use question category contexts to send file to the file pool in bulk.
Questions are only restored in whole category chunks, so this is safe
to do.
2014-06-04 09:19:52 -04:00
Eric Merrill 9d18c714b8 MDL-45714 backup: Less aggressive removal of old backup dirs
The old 4 hour standard was too aggressive and can cause backup files
to be removed while they were still in use. Now the same as cron,
1 week.
2014-06-02 21:50:48 -04:00
Frederic Massart 98fed696dc MDL-45283 restore: Prevent failure when user course grade exists
When we restore a course, the grade that a user has for the
grade item of the course cannot be created twice. If we try
to create it when it already exists, a database exception is
raised because of index duplication.

The safest way to proceed is certainly to ignore the grade
information from the backup, otherwise we could potentially
overwrite existing information. Though, this only applies
to restore as merge, and it does not affect the update of
the course grade.
2014-04-30 12:09:13 +08:00
sam marshall 38674ef91a MDL-44070 Conditional availability enhancements (4): backup
Implements backup and restore for the new conditional availability
data. This includes:

* Backup and restore of new field.
* Restore updates IDs in conditions, as required.
* Restore converts availability data from legacy (Moodle 2.6) backups.
* Unit tests for all this.
2014-04-07 20:11:41 +01:00
Marina Glancy f316de8a7f MDL-44316 core_tag: correction to the default value 2014-03-25 14:05:06 +08:00
Mark Nelson cc033d48b5 MDL-44316 core_tag: changed the API to accept a contextid and component 2014-03-22 13:50:08 -07:00
Tim Hunt ccba5b8805 MDL-43749 normalise quiz database structure.
The sequence of questions that made up a quiz used to be stored as a
comma-separated list in quiz.questions. Now the same information is
stored in the rows in the quiz_slots table. This is not just 'better' in
a database design sense, but it allows for the future changes we will
need as we enhance the quiz in the MDL-40987 epic.

Having changed the database structure, all the rest of the code needs to
be changed to account for it, and that is done here.

Note that there are not many unit tests for the changed bit. That is
because as part of MDL-40987 we will be changing the code further, and
we will add unit tests then.
2014-03-02 10:00:40 +01:00
Tim Hunt 3f87a74b60 MDL-44018 quesiton variant was not backed up or restored. 2014-02-07 21:55:10 +00:00
James Pratt 809fdb83b1 MDL-41754 (1) Progress tracking : moved from backup and restore to core 2014-01-27 17:45:50 +07:00
Dan Poltawski e6fbca9f65 Merge branch 'wip-mdl-43306-m' of git://github.com/rajeshtaneja/moodle 2014-01-20 09:45:43 +08:00
Rajesh Taneja 8acec2a693 MDL-43306 restore: Fix grade_item sortorder after restoring course
While restoring course/activity, restore will blindly insert grade_item
sortorder. Which cause dulicate sortorder and lead to unpredicatble sorting
results.

Now we will call grade_item::fix_duplicate_sortorder() after restore is finished
to fix duplicate sortorder and order grade items to the closest order possible
2014-01-15 10:28:00 +08:00
Frederic Massart bc213518dc MDL-43460 calendar: Decode event description links on restore 2014-01-06 11:26:48 +01:00
Eloy Lafuente (stronk7) f03671d87e Revert "MDL-43306 restore: fix grade item sortorder restoration"
This reverts commit e238b2cb92.
2013-12-19 02:13:05 +01:00
Dan Poltawski e238b2cb92 MDL-43306 restore: fix grade item sortorder restoration
Previously, restore was blindly inserting the old sort order into the
database, causing duplicate sortorders which lead to unpredicatble
sorting results.

Now we will use the api function to add it after the original sortorder,
this means if a duplicate exists in the original location, this item
will appear after it.
2013-12-10 12:32:36 +08:00
Frederic Massart c7b3c10e3b MDL-42768 restore: Use sql_compare_text instead for text comparison 2013-11-13 14:46:30 +08:00
sam marshall 62182e89cf MDL-42388 Restore: Some warnings displayed with debugging() 2013-10-18 11:59:45 +01:00
sam marshall 93eddacc61 MDL-42039 Restore: Add progress tracking while creating question files
If a backup contains a large number of questions, the
create_question_files function can take a very long time. This
change adds progress reporting during that function.
2013-10-10 10:57:31 +08:00
sam marshall 0e2637054f MDL-42039 Restore: Add progress tracking while creating users
When restoring a backup that contains a large number of users
to a different server where those users don't already exist,
creating users can take a significant time. This change adds
progress reporting so that it doesn't time out and shows
activity in the user interface while doing the creation.
2013-10-10 10:57:31 +08:00
sam marshall 1cd39657b5 MDL-42039 Restore: Add progress reporting to directory deletion
Deleting directories at the end of backup can take a long time if
there are many directories (potentially up to 65536 file
directories). This change reports progress while deleting
directories to avoid timeout.
2013-10-10 10:56:30 +08:00
Damyon Wiese f0ae8d7a66 Merge branch 'MDL-38196-master' of git://github.com/sammarshallou/moodle
Conflicts:
	backup/backup.php
	theme/bootstrapbase/style/moodle.css
2013-10-10 09:31:33 +08:00
sam marshall 77b3d9dfdf MDL-38196 Backup/restore: Display log if non-empty
When doing a backup or restore operation with the normal user interface,
if there is anything in the backup/restore log, it will now be displayed
at the end of the process below the Continue button.

If you have developer debugging enabled, it sets the display level to
LOG_DEBUG and there will always be content in the log. Otherwise, it
uses LOG_INFO which generally means the log is empty, and nothing
displays (no visible change for users).
2013-10-08 11:00:11 +01:00
Tim Hunt 4e3d829350 MDL-42105 questions: let attempts have a max fraction > 1.
This parallels question_attempt->minfraction, which allows the
fractional mark to go below zere.

This is needed to allow the certainty-base marking behaviours to work
better.
2013-10-04 17:52:19 +01:00
sam marshall 4fb31ae6cd MDL-41669 Restore: Progress bar needs to include more tasks
1. Changes progress bar code to allow headings for progress bar (so users have
   some clue what's going on if a page has more than one progress bar).
2. Changes restore code so that a progress bar can display during pre-checks if
   they take longer than 5 seconds.
3. Changes pre-check and restore code so that, in various points where the system
   can take a long time within an individual step, intederminate progress is
   indicated and it won't time out.
2013-09-16 17:18:12 +01:00
Damyon Wiese f6c2af867f Merge branch 'master_MDL-40122' of git://github.com/danmarsden/moodle
Conflicts:
	lib/db/upgrade.php
	version.php
2013-08-27 13:16:55 +08:00
Russell Smith cdd8382b63 MDL-41380 backup: Fix incorrect function name from MDL-40618. 2013-08-22 12:41:51 +10:00
Dan Marsden 3d1808c6e2 MDL-40122 SCORM: replace SCORM course format with singleactivity 2013-08-21 20:26:06 +12:00
Russell Smith 3e7e2ab2ee MDL-40618 backup: centralize info field, use info in queries.
encode_backup_temp_info() and decode_backup_temp_info() have been
introduced to keep the info field encoding in one place.
Many locations used get_backup_ids_record() to obtain info, that
makes lots of calls to get_backup_ids_record() which can be slow.
We now complete all those inline by adding the info field to the query.
To reduce memory usage, all queries of that nature have been changed
to use get_recordset_*. gzcompress was introduced if available to minimize
traffic to/from the database and to decrease the memory required for caching.
The compression time is saved by the benefits in other places of having smaller data.
2013-07-23 19:50:53 +10:00
Petr Škoda b0d1d941c9 MDL-40220 use new core_component::get_component_directory() 2013-07-16 22:42:37 +02:00
Petr Škoda bd3b3bba9f MDL-40220 use new core_component::get_plugin_list() 2013-07-16 22:36:11 +02:00
Yuliya Bozhko e50220f840 MDL-40112 badges: Drop unused image field from badge table 2013-07-05 09:18:59 +12:00
Yuliya Bozhko bd0d2bdcc9 MDL-39558 badges: Add backup/restore of manually awarded badges 2013-07-03 09:36:45 +08:00
Yuliya Bozhko 2832093f53 MDL-39558 badges: Add backup/restore to course badges 2013-07-03 09:35:06 +08:00
Petr Škoda 4b75f49a63 MDL-28394 fix enrolment method restore logic
This patch fixes:
* missing enrolment methods after 1.9 backup restore - defaults are added
* enrolment methods are restored only when users option is enabled
* manual enrolment override option is disabled if users not available
2013-06-07 10:02:59 +02:00
Marina Glancy cdb6045d54 MDL-38773 Purge coursecat cache on course restore 2013-06-05 12:02:33 +10:00