Skip to content

Commit

Permalink
MDL-20245 grade: increased the length of the user_preferences::value …
Browse files Browse the repository at this point in the history
…column and added an exception to set_user_preference() is this new length is exceeded

Conflicts:

	lib/db/upgrade.php
	version.php
  • Loading branch information
andyjdavis authored and stronk7 committed Dec 21, 2011
1 parent c42346a commit 8e54ce9
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 3 deletions.
4 changes: 2 additions & 2 deletions lib/db/install.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<XMLDB PATH="lib/db" VERSION="20111118" COMMENT="XMLDB file for core Moodle tables"
<XMLDB PATH="lib/db" VERSION="20111214" COMMENT="XMLDB file for core Moodle tables"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../lib/xmldb/xmldb.xsd"
>
Expand Down Expand Up @@ -788,7 +788,7 @@
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" SEQUENCE="true" NEXT="userid"/>
<FIELD NAME="userid" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" PREVIOUS="id" NEXT="name"/>
<FIELD NAME="name" TYPE="char" LENGTH="255" NOTNULL="true" SEQUENCE="false" PREVIOUS="userid" NEXT="value"/>
<FIELD NAME="value" TYPE="char" LENGTH="255" NOTNULL="true" SEQUENCE="false" PREVIOUS="name"/>
<FIELD NAME="value" TYPE="char" LENGTH="1333" NOTNULL="true" SEQUENCE="false" PREVIOUS="name"/>
</FIELDS>
<KEYS>
<KEY NAME="primary" TYPE="primary" FIELDS="id"/>
Expand Down
13 changes: 13 additions & 0 deletions lib/db/upgrade.php
Expand Up @@ -6979,6 +6979,19 @@ function xmldb_main_upgrade($oldversion) {
upgrade_main_savepoint(true, 2011120500.02);
}

if ($oldversion < 2011121400.00) {

// Changing precision of field value on table user_preferences to (1333)
$table = new xmldb_table('user_preferences');
$field = new xmldb_field('value', XMLDB_TYPE_CHAR, '1333', null, XMLDB_NOTNULL, null, null, 'name');

// Launch change of precision for field value
$dbman->change_field_precision($table, $field);

// Main savepoint reached
upgrade_main_savepoint(true, 2011121400.00);
}

return true;
}

3 changes: 3 additions & 0 deletions lib/moodlelib.php
Expand Up @@ -1652,6 +1652,9 @@ function set_user_preference($name, $value, $user = null) {
throw new coding_exception('Invalid value in set_user_preference() call, arrays are not allowed');
}
$value = (string)$value;
if (textlib::strlen($value) > 1333) { //value column maximum length is 1333 characters
throw new coding_exception('Invalid value in set_user_preference() call, value is is too long for the value column');
}

if (is_null($user)) {
$user = $USER;
Expand Down
2 changes: 1 addition & 1 deletion version.php
Expand Up @@ -30,7 +30,7 @@
defined('MOODLE_INTERNAL') || die();


$version = 2011120500.02; // YYYYMMDD = weekly release date of this DEV branch
$version = 2011121400.00; // YYYYMMDD = weekly release date of this DEV branch
// RR = release increments - 00 in DEV branches
// .XX = incremental changes

Expand Down

0 comments on commit 8e54ce9

Please sign in to comment.