本文整理汇总了PHP中upgrade_minmaxgrade函数的典型用法代码示例。如果您正苦于以下问题:PHP upgrade_minmaxgrade函数的具体用法?PHP upgrade_minmaxgrade怎么用?PHP upgrade_minmaxgrade使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了upgrade_minmaxgrade函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: xmldb_main_upgrade
//.........这里部分代码省略.........
upgrade_main_savepoint(true, 2014101001.0);
}
if ($oldversion < 2014102000.0) {
// Define field aggregatesubcats to be dropped from grade_categories.
$table = new xmldb_table('grade_categories');
$field = new xmldb_field('aggregatesubcats');
// Conditionally launch drop field aggregatesubcats.
if ($dbman->field_exists($table, $field)) {
$sql = 'SELECT DISTINCT courseid
FROM {grade_categories}
WHERE aggregatesubcats = ?';
$courses = $DB->get_records_sql($sql, array(1));
foreach ($courses as $course) {
set_config('show_aggregatesubcats_upgrade_' . $course->courseid, 1);
// Set each of the grade items to needing an update so that when the user visits the grade reports the
// figures will be updated.
$DB->set_field('grade_items', 'needsupdate', 1, array('courseid' => $course->courseid));
}
$dbman->drop_field($table, $field);
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2014102000.0);
}
if ($oldversion < 2014110300.0) {
// Run script restoring missing folder records for draft file areas.
upgrade_fix_missing_root_folders_draft();
// Main savepoint reached.
upgrade_main_savepoint(true, 2014110300.0);
}
// Moodle v2.8.0 release upgrade line.
// Put any upgrade step following this.
if ($oldversion < 2014111000.0) {
// Coming from 2.7 or older, we need to flag the step minmaxgrade to be ignored.
set_config('upgrade_minmaxgradestepignored', 1);
// Coming from 2.7 or older, we need to flag the step for changing calculated grades to be regraded.
set_config('upgrade_calculatedgradeitemsonlyregrade', 1);
// Main savepoint reached.
upgrade_main_savepoint(true, 2014111000.0);
}
if ($oldversion < 2014120100.0) {
// Define field sslverification to be added to mnet_host.
$table = new xmldb_table('mnet_host');
$field = new xmldb_field('sslverification', XMLDB_TYPE_INTEGER, '1', null, XMLDB_NOTNULL, null, '0', 'applicationid');
// Conditionally launch add field sslverification.
if (!$dbman->field_exists($table, $field)) {
$dbman->add_field($table, $field);
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2014120100.0);
}
if ($oldversion < 2014120101.0) {
// Define field component to be added to comments.
$table = new xmldb_table('comments');
$field = new xmldb_field('component', XMLDB_TYPE_CHAR, '255', null, null, null, null, 'contextid');
// Conditionally launch add field component.
if (!$dbman->field_exists($table, $field)) {
$dbman->add_field($table, $field);
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2014120101.0);
}
if ($oldversion < 2014120102.0) {
// Define table user_password_history to be created.
$table = new xmldb_table('user_password_history');
// Adding fields to table user_password_history.
$table->add_field('id', XMLDB_TYPE_INTEGER, '10', null, XMLDB_NOTNULL, XMLDB_SEQUENCE, null);
开发者ID:isuruAb,项目名称:moodle,代码行数:67,代码来源:upgrade.php
示例2: test_upgrade_minmaxgrade
/**
* Test upgrade minmaxgrade step.
*/
public function test_upgrade_minmaxgrade()
{
global $CFG, $DB;
require_once $CFG->libdir . '/gradelib.php';
$initialminmax = $CFG->grade_minmaxtouse;
$this->resetAfterTest();
$c1 = $this->getDataGenerator()->create_course();
$c2 = $this->getDataGenerator()->create_course();
$c3 = $this->getDataGenerator()->create_course();
$u1 = $this->getDataGenerator()->create_user();
$a1 = $this->getDataGenerator()->create_module('assign', array('course' => $c1, 'grade' => 100));
$a2 = $this->getDataGenerator()->create_module('assign', array('course' => $c2, 'grade' => 100));
$a3 = $this->getDataGenerator()->create_module('assign', array('course' => $c3, 'grade' => 100));
$cm1 = get_coursemodule_from_instance('assign', $a1->id);
$ctx1 = context_module::instance($cm1->id);
$assign1 = new assign($ctx1, $cm1, $c1);
$cm2 = get_coursemodule_from_instance('assign', $a2->id);
$ctx2 = context_module::instance($cm2->id);
$assign2 = new assign($ctx2, $cm2, $c2);
$cm3 = get_coursemodule_from_instance('assign', $a3->id);
$ctx3 = context_module::instance($cm3->id);
$assign3 = new assign($ctx3, $cm3, $c3);
// Give a grade to the student.
$ug = $assign1->get_user_grade($u1->id, true);
$ug->grade = 10;
$assign1->update_grade($ug);
$ug = $assign2->get_user_grade($u1->id, true);
$ug->grade = 20;
$assign2->update_grade($ug);
$ug = $assign3->get_user_grade($u1->id, true);
$ug->grade = 30;
$assign3->update_grade($ug);
// Run the upgrade.
upgrade_minmaxgrade();
// Nothing has happened.
$this->assertFalse($DB->record_exists('config', array('name' => 'show_min_max_grades_changed_' . $c1->id)));
$this->assertSame(false, grade_get_setting($c1->id, 'minmaxtouse', false, true));
$this->assertFalse($DB->record_exists('grade_items', array('needsupdate' => 1, 'courseid' => $c1->id)));
$this->assertFalse($DB->record_exists('config', array('name' => 'show_min_max_grades_changed_' . $c2->id)));
$this->assertSame(false, grade_get_setting($c2->id, 'minmaxtouse', false, true));
$this->assertFalse($DB->record_exists('grade_items', array('needsupdate' => 1, 'courseid' => $c2->id)));
$this->assertFalse($DB->record_exists('config', array('name' => 'show_min_max_grades_changed_' . $c3->id)));
$this->assertSame(false, grade_get_setting($c3->id, 'minmaxtouse', false, true));
$this->assertFalse($DB->record_exists('grade_items', array('needsupdate' => 1, 'courseid' => $c3->id)));
// Create inconsistency in c1 and c2.
$giparams = array('itemtype' => 'mod', 'itemmodule' => 'assign', 'iteminstance' => $a1->id, 'courseid' => $c1->id, 'itemnumber' => 0);
$gi = grade_item::fetch($giparams);
$gi->grademin = 5;
$gi->update();
$giparams = array('itemtype' => 'mod', 'itemmodule' => 'assign', 'iteminstance' => $a2->id, 'courseid' => $c2->id, 'itemnumber' => 0);
$gi = grade_item::fetch($giparams);
$gi->grademax = 50;
$gi->update();
// C1 and C2 should be updated, but the course setting should not be set.
$CFG->grade_minmaxtouse = GRADE_MIN_MAX_FROM_GRADE_GRADE;
// Run the upgrade.
upgrade_minmaxgrade();
// C1 and C2 were partially updated.
$this->assertTrue($DB->record_exists('config', array('name' => 'show_min_max_grades_changed_' . $c1->id)));
$this->assertSame(false, grade_get_setting($c1->id, 'minmaxtouse', false, true));
$this->assertTrue($DB->record_exists('grade_items', array('needsupdate' => 1, 'courseid' => $c1->id)));
$this->assertTrue($DB->record_exists('config', array('name' => 'show_min_max_grades_changed_' . $c2->id)));
$this->assertSame(false, grade_get_setting($c2->id, 'minmaxtouse', false, true));
$this->assertTrue($DB->record_exists('grade_items', array('needsupdate' => 1, 'courseid' => $c2->id)));
// Nothing has happened for C3.
$this->assertFalse($DB->record_exists('config', array('name' => 'show_min_max_grades_changed_' . $c3->id)));
$this->assertSame(false, grade_get_setting($c3->id, 'minmaxtouse', false, true));
$this->assertFalse($DB->record_exists('grade_items', array('needsupdate' => 1, 'courseid' => $c3->id)));
// Course setting should not be set on a course that has the setting already.
$CFG->grade_minmaxtouse = GRADE_MIN_MAX_FROM_GRADE_ITEM;
grade_set_setting($c1->id, 'minmaxtouse', -1);
// Sets different value than constant to check that it remained the same.
// Run the upgrade.
upgrade_minmaxgrade();
// C2 was updated.
$this->assertSame((string) GRADE_MIN_MAX_FROM_GRADE_GRADE, grade_get_setting($c2->id, 'minmaxtouse', false, true));
// Nothing has happened for C1.
$this->assertSame('-1', grade_get_setting($c1->id, 'minmaxtouse', false, true));
// Nothing has happened for C3.
$this->assertFalse($DB->record_exists('config', array('name' => 'show_min_max_grades_changed_' . $c3->id)));
$this->assertSame(false, grade_get_setting($c3->id, 'minmaxtouse', false, true));
$this->assertFalse($DB->record_exists('grade_items', array('needsupdate' => 1, 'courseid' => $c3->id)));
// Final check, this time we'll unset the default config.
unset($CFG->grade_minmaxtouse);
grade_set_setting($c1->id, 'minmaxtouse', null);
// Run the upgrade.
upgrade_minmaxgrade();
// C1 was updated.
$this->assertSame((string) GRADE_MIN_MAX_FROM_GRADE_GRADE, grade_get_setting($c1->id, 'minmaxtouse', false, true));
// Nothing has happened for C3.
$this->assertFalse($DB->record_exists('config', array('name' => 'show_min_max_grades_changed_' . $c3->id)));
$this->assertSame(false, grade_get_setting($c3->id, 'minmaxtouse', false, true));
$this->assertFalse($DB->record_exists('grade_items', array('needsupdate' => 1, 'courseid' => $c3->id)));
// Restore value.
$CFG->grade_minmaxtouse = $initialminmax;
}
开发者ID:alanaipe2015,项目名称:moodle,代码行数:99,代码来源:upgradelib_test.php
示例3: xmldb_main_upgrade
//.........这里部分代码省略.........
upgrade_main_savepoint(true, 2014100700.0);
}
if ($oldversion < 2014100700.01) {
// Define field visible to be added to cohort.
$table = new xmldb_table('cohort');
$field = new xmldb_field('visible', XMLDB_TYPE_INTEGER, '1', null, XMLDB_NOTNULL, null, '0', 'descriptionformat');
// Conditionally launch add field visible.
if (!$dbman->field_exists($table, $field)) {
$dbman->add_field($table, $field);
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2014100700.01);
}
if ($oldversion < 2014100800.0) {
// Remove qformat_learnwise (unless it has manually been added back).
if (!file_exists($CFG->dirroot . '/question/format/learnwise/format.php')) {
unset_all_config_for_plugin('qformat_learnwise');
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2014100800.0);
}
if ($oldversion < 2014101001.0) {
// Some blocks added themselves to the my/ home page, but they did not declare the
// subpage of the default my home page. While the upgrade script has been fixed, this
// upgrade script will fix the data that was wrongly added.
// We only proceed if we can find the right entry from my_pages. Private => 1 refers to
// the constant value MY_PAGE_PRIVATE.
if ($systempage = $DB->get_record('my_pages', array('userid' => null, 'private' => 1))) {
// Select the blocks there could have been automatically added. showinsubcontexts is hardcoded to 0
// because it is possible for administrators to have forced it on the my/ page by adding it to the
// system directly rather than updating the default my/ page.
$blocks = array('course_overview', 'private_files', 'online_users', 'badges', 'calendar_month', 'calendar_upcoming');
list($blocksql, $blockparams) = $DB->get_in_or_equal($blocks, SQL_PARAMS_NAMED);
$select = "parentcontextid = :contextid\n AND pagetypepattern = :page\n AND showinsubcontexts = 0\n AND subpagepattern IS NULL\n AND blockname {$blocksql}";
$params = array('contextid' => context_system::instance()->id, 'page' => 'my-index');
$params = array_merge($params, $blockparams);
$DB->set_field_select('block_instances', 'subpagepattern', $systempage->id, $select, $params);
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2014101001.0);
}
if ($oldversion < 2014102000.0) {
// Define field aggregatesubcats to be dropped from grade_categories.
$table = new xmldb_table('grade_categories');
$field = new xmldb_field('aggregatesubcats');
// Conditionally launch drop field aggregatesubcats.
if ($dbman->field_exists($table, $field)) {
$sql = 'SELECT DISTINCT courseid
FROM {grade_categories}
WHERE aggregatesubcats = ?';
$courses = $DB->get_records_sql($sql, array(1));
foreach ($courses as $course) {
set_config('show_aggregatesubcats_upgrade_' . $course->courseid, 1);
// Set each of the grade items to needing an update so that when the user visits the grade reports the
// figures will be updated.
// EClass: Disable marking needs update to minimize chance of changes
// $DB->set_field('grade_items', 'needsupdate', 1, array('courseid' => $course->courseid));
}
$dbman->drop_field($table, $field);
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2014102000.0);
}
if ($oldversion < 2014110300.0) {
// Run script restoring missing folder records for draft file areas.
upgrade_fix_missing_root_folders_draft();
// Main savepoint reached.
upgrade_main_savepoint(true, 2014110300.0);
}
// Moodle v2.8.0 release upgrade line.
// Put any upgrade step following this.
if ($oldversion < 2014111000.0) {
// Coming from 2.7 or older, we need to flag the step minmaxgrade to be ignored.
set_config('upgrade_minmaxgradestepignored', 1);
// Main savepoint reached.
upgrade_main_savepoint(true, 2014111000.0);
}
if ($oldversion < 2014111002.01) {
// Make sure the private files handler is not set to expire.
$DB->set_field('messageinbound_handlers', 'defaultexpiration', 0, array('classname' => '\\core\\message\\inbound\\private_files_handler'));
// Main savepoint reached.
upgrade_main_savepoint(true, 2014111002.01);
}
if ($oldversion < 2014111005.03) {
unset_config('crontime', 'registration');
upgrade_main_savepoint(true, 2014111005.03);
}
if ($oldversion < 2014111005.05) {
// Sites that were upgrading from 2.7 and older will ignore this step.
if (empty($CFG->upgrade_minmaxgradestepignored)) {
upgrade_minmaxgrade();
// Flags this upgrade step as already run to prevent it from running multiple times.
set_config('upgrade_minmaxgradestepignored', 1);
}
// Prepare all the courses with the max/min bug.
upgrade_mark_grading_configuration();
upgrade_main_savepoint(true, 2014111005.05);
}
return true;
}
开发者ID:MoodleMetaData,项目名称:MoodleMetaData,代码行数:101,代码来源:upgrade.php
示例4: xmldb_main_upgrade
//.........这里部分代码省略.........
upgrade_main_savepoint(true, 2014101001.0);
}
if ($oldversion < 2014102000.0) {
// Define field aggregatesubcats to be dropped from grade_categories.
$table = new xmldb_table('grade_categories');
$field = new xmldb_field('aggregatesubcats');
// Conditionally launch drop field aggregatesubcats.
if ($dbman->field_exists($table, $field)) {
$sql = 'SELECT DISTINCT courseid
FROM {grade_categories}
WHERE aggregatesubcats = ?';
$courses = $DB->get_records_sql($sql, array(1));
foreach ($courses as $course) {
set_config('show_aggregatesubcats_upgrade_' . $course->courseid, 1);
// Set each of the grade items to needing an update so that when the user visits the grade reports the
// figures will be updated.
$DB->set_field('grade_items', 'needsupdate', 1, array('courseid' => $course->courseid));
}
$dbman->drop_field($table, $field);
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2014102000.0);
}
if ($oldversion < 2014110300.0) {
// Run script restoring missing folder records for draft file areas.
upgrade_fix_missing_root_folders_draft();
// Main savepoint reached.
upgrade_main_savepoint(true, 2014110300.0);
}
// Moodle v2.8.0 release upgrade line.
// Put any upgrade step following this.
if ($oldversion < 2014111000.0) {
// Coming from 2.7 or older, we need to flag the step minmaxgrade to be ignored.
set_config('upgrade_minmaxgradestepignored', 1);
// Coming from 2.7 or older, we need to flag the step for changing calculated grades to be regraded.
set_config('upgrade_calculatedgradeitemsonlyregrade', 1);
// Main savepoint reached.
upgrade_main_savepoint(true, 2014111000.0);
}
if ($oldversion < 2014120100.0) {
// Define field sslverification to be added to mnet_host.
$table = new xmldb_table('mnet_host');
$field = new xmldb_field('sslverification', XMLDB_TYPE_INTEGER, '1', null, XMLDB_NOTNULL, null, '0', 'applicationid');
// Conditionally launch add field sslverification.
if (!$dbman->field_exists($table, $field)) {
$dbman->add_field($table, $field);
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2014120100.0);
}
if ($oldversion < 2014120101.0) {
// Define field component to be added to comments.
$table = new xmldb_table('comments');
$field = new xmldb_field('component', XMLDB_TYPE_CHAR, '255', null, null, null, null, 'contextid');
// Conditionally launch add field component.
if (!$dbman->field_exists($table, $field)) {
$dbman->add_field($table, $field);
}
// Main savepoint reached.
upgrade_main_savepoint(true, 2014120101.0);
}
if ($oldversion < 2014120102.0) {
// Define table user_password_history to be created.
$table = new xmldb_table('user_password_history');
// Adding fields to table user_password_history.
$table->add_field('id', XMLDB_TYPE_INTEGER, '10', null, XMLDB_NOTNULL, XMLDB_SEQUENCE, null);
开发者ID:lucaboesch,项目名称:moodle,代码行数:67,代码来源:upgrade.php
注:本文中的upgrade_minmaxgrade函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论