Differences Between: [Versions 310 and 400] [Versions 311 and 400] [Versions 39 and 400] [Versions 400 and 401] [Versions 400 and 402] [Versions 400 and 403]
Upgrade helper functions This file is used for special upgrade functions - for example groups and gradebook. These functions must use SQL and database related functions only- no other Moodle API, because it might depend on db structures that are not yet present during upgrade. (Do not use functions from accesslib.php, grades classes or group functions at all!)
Copyright: | 2007 Petr Skoda (http://skodak.org) |
License: | http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later |
File Size: | 1599 lines (63 kb) |
Included or required: | 0 times |
Referenced: | 1 time |
Includes or requires: | 0 files |
upgrade_mysql_get_supported_tables() X-Ref |
Returns all non-view and non-temp tables with sane names. Prints list of non-supported tables using $OUTPUT->notification() return: array |
upgrade_group_members_only($groupingid, $availability) X-Ref |
Using data for a single course-module that has groupmembersonly enabled, returns the new availability value that incorporates the correct groupmembersonly option. Included as a function so that it can be shared between upgrade and restore, and unit-tested. return: string New value for availability for the module param: int $groupingid Grouping id for the course-module (0 if none) param: string $availability Availability JSON data for the module (null if none) |
upgrade_extra_credit_weightoverride($onlycourseid = 0) X-Ref |
Marks all courses with changes in extra credit weight calculation Used during upgrade and in course restore process This upgrade script is needed because we changed the algorithm for calculating the automatic weights of extra credit items and want to prevent changes in the existing student grades. param: int $onlycourseid |
upgrade_calculated_grade_items($courseid = null) X-Ref |
Marks all courses that require calculated grade items be updated. Used during upgrade and in course restore process. This upgrade script is needed because the calculated grade items were stuck with a maximum of 100 and could be changed. This flags the courses that are affected and the grade book is frozen to retain grade integrity. param: int $courseid Specify a course ID to run this script on just one course. |
make_default_scale() X-Ref |
This function creates a default separated/connected scale so there's something in the database. The locations of strings and files is a bit odd, but this is because we need to maintain backward compatibility with many different existing language translations and older sites. return: void |
make_competence_scale() X-Ref |
Create another default scale. return: bool always true param: int $oldversion |
upgrade_course_letter_boundary($courseid = null) X-Ref |
Marks all courses that require rounded grade items be updated. Used during upgrade and in course restore process. This upgrade script is needed because it has been decided that if a grade is rounded up, and it will changed a letter grade or satisfy a course completion grade criteria, then it should be set as so, and the letter will be awarded and or the course completion grade will be awarded. param: int $courseid Specify a course ID to run this script on just one course. |
upgrade_letter_boundary_needs_freeze($context) X-Ref |
Checks the letter boundary of the provided context to see if it needs freezing. Each letter boundary is tested to see if receiving that boundary number will result in achieving the cosponsoring letter. return: bool if the letter boundary for this context should be frozen. param: object $context Context object |
upgrade_standardise_score($rawgrade, $sourcemin, $sourcemax, $targetmin, $targetmax) X-Ref |
Given a float value situated between a source minimum and a source maximum, converts it to the corresponding value situated between a target minimum and a target maximum. Thanks to Darlene for the formula :-) return: float Converted value param: float $rawgrade param: float $sourcemin param: float $sourcemax param: float $targetmin param: float $targetmax |
upgrade_fix_serialized_objects($serializeddata) X-Ref |
Provides a way to check and update a serialized string that uses the deprecated object class. return: array Returns an array where the first variable is a bool with a status of whether the initial data was changed param: string $serializeddata Serialized string which may contain the now deprecated object. |
upgrade_delete_orphaned_file_records() X-Ref |
Deletes file records which have their repository deleted. |
upgrade_rename_prediction_actions_useful_incorrectly_flagged() X-Ref |
Updates the existing prediction actions in the database according to the new suggested actions. return: null |
upgrade_convert_hub_config_site_param_names(stdClass $hubconfig, string $huburl) X-Ref |
Convert the site settings for the 'hub' component in the config_plugins table. return: stdClass List of new settings to be applied (including null values to be unset). param: stdClass $hubconfig Settings loaded for the 'hub' component. param: string $huburl The URL of the hub to use as the valid one in case of conflict. |
upgrade_analytics_fix_contextids_defaults() X-Ref |
Fix the incorrect default values inserted into analytics contextids field. |
upgrade_core_licenses() X-Ref |
Upgrade core licenses shipped with Moodle. |
upgrade_calendar_site_status(bool $output = true) X-Ref |
Detects if the site may need to get the calendar events fixed or no. With optional output. return: bool true if the site needs to run the fixes, false if not. param: bool $output true if the function must output information, false if not. |
upgrade_calendar_events_status(bool $output = true) X-Ref |
Detects the calendar events needing to be fixed. With optional output. return: stdClass[] an array of event types (as keys) with total and bad counters, plus sql to retrieve them. param: bool $output true if the function must output information, false if not. |
upgrade_calendar_events_fix_remaining(array $info, bool $output = true, int $maxseconds = 0) X-Ref |
Detects the calendar events needing to be fixed. With optional output. return: bool true if the function has not finished fixing everything, false if it has finished. param: stdClass[] an array of event types (as keys) with total and bad counters, plus sql to retrieve them. param: bool $output true if the function must output information, false if not. param: int $maxseconds Number of seconds the function will run as max, with zero meaning no limit. |
upgrade_calendar_events_mtrace(string $string, bool $output) X-Ref |
Wrapper over mtrace() to allow a few more things to be specified. param: string $string string to output. param: bool $output true to perform the output, false to avoid it. |
upgrade_calendar_events_get_teacherid(int $courseid) X-Ref |
Get a valid editing teacher for a given courseid return: int A user id of an editing teacher or, if missing, the admin userid. param: int $courseid The course to look for editing teachers. |
upgrade_calendar_standard_events_fix(stdClass $info, bool $output = true, int $endtime = 0) X-Ref |
Detects the calendar standard events needing to be fixed. With optional output. return: bool true if the function has not finished fixing everything, false if it has finished. param: stdClass $info an object with total and bad counters, plus sql to retrieve them. param: bool $output true if the function must output information, false if not. param: int $endtime cutoff time when the process must stop (0 means no cutoff). |
upgrade_calendar_subscription_events_fix(stdClass $info, bool $output = true, int $endtime = 0) X-Ref |
Detects the calendar subscription events needing to be fixed. With optional output. return: bool true if the function has not finished fixing everything, false if it has finished. param: stdClass $info an object with total and bad counters, plus sql to retrieve them. param: bool $output true if the function must output information, false if not. param: int $endtime cutoff time when the process must stop (0 means no cutoff). |
upgrade_calendar_action_events_fix(stdClass $info, bool $output = true, int $endtime = 0) X-Ref |
Detects the calendar action events needing to be fixed. With optional output. return: bool true if the function has not finished fixing everything, false if it has finished. param: stdClass $info an object with total and bad counters, plus sql to retrieve them. param: bool $output true if the function must output information, false if not. param: int $endtime cutoff time when the process must stop (0 means no cutoff). |
upgrade_calendar_override_events_fix(stdClass $info, bool $output = true, int $endtime = 0) X-Ref |
Detects the calendar override events needing to be fixed. With optional output. return: bool true if the function has not finished fixing everything, false if it has finished. param: stdClass $info an object with total and bad counters, plus sql to retrieve them. param: bool $output true if the function must output information, false if not. param: int $endtime cutoff time when the process must stop (0 means no cutoff). |
upgrade_add_item_to_usermenu(string $menuitem) X-Ref |
Add a new item at the end of the usermenu. param: string $menuitem |
upgrade_block_set_defaultregion(string $blockname,string $pagename,string $pagetypepattern,string $newdefaultregion) X-Ref |
Update all instances of a block shown on a pagetype to a new default region, adding missing block instances where none is found. Note: This is intended as a helper to add blocks to all instances of the standard my-page. It will only work where the subpagepattern is a string representation of an integer. If there are any string values this will not work. param: string $blockname The block name, without the block_ frankenstyle component param: string $pagename The type of my-page to match param: string $pagetypepattern The page type pattern to match for the block param: string $newdefaultregion The new region to set |
upgrade_block_delete_instances(string $blockname,string $pagename,string $pagetypepattern) X-Ref |
Remove all instances of a block on pages of the specified pagetypepattern. Note: This is intended as a helper to add blocks to all instances of the standard my-page. It will only work where the subpagepattern is a string representation of an integer. If there are any string values this will not work. param: string $blockname The block name, without the block_ frankenstyle component param: string $pagename The type of my-page to match param: string $pagetypepattern This is typically used on the 'my-index' |
upgrade_block_set_my_user_parent_context(string $blockname,string $pagename,string $pagetypepattern) X-Ref |
Update the block instance parentcontext to point to the correct user context id for the specified block on a my page. param: string $blockname param: string $pagename param: string $pagetypepattern |