adding blog support (development code)

This commit is contained in:
toyomoyo
2006-03-10 06:50:37 +00:00
parent 6cafc73db1
commit 89d38fdddc
6 changed files with 178 additions and 1 deletions
+10
View File
@@ -92,6 +92,16 @@ class configvarrss extends configvar {
$misc['mymoodleredirect'] = new configvar (get_string('configmymoodleredirect','admin'),
choose_from_menu($noyesoptions,'mymoodleredirect',$config->mymoodleredirect,'','','',true));
unset($options);
$options[5] = get_string('worldblogs','blog');
$options[4] = get_string('siteblogs','blog');
$options[3] = get_string('courseblogs','blog');
$options[2] = get_string('groupblogs','blog');
$options[1] = get_string('personalblogs','blog');
$options[0] = get_string('diableblogs','blog');
$misc['bloglevel'] = new configvar (get_string('blogleveldes', 'admin'),
choose_from_menu ($options, 'bloglevel', $config->bloglevel,'','','',true));
////////////////////////////////////////////////////////////////////
/// OPERATING SYSTEM config variables
+43
View File
@@ -1678,6 +1678,49 @@ function main_upgrade($oldversion=0) {
execute_sql("UPDATE {$CFG->prefix}user_teachers SET enrol='manual' WHERE enrol=''");
}
if ($oldversion < 2006031000) {
modify_database("","CREATE TABLE prefix_post (
`id` int(11) NOT NULL auto_increment,
`userid` int(11) NOT NULL default '0',
`courseid` int(11) NOT NULL default'0',
`groupid` int(11) NOT NULL default'0',
`moduleid` int(11) NOT NULL default'0',
`coursemoduleid` int(11) NOT NULL default'0',
`subject` varchar(128) NOT NULL default '',
`summary` longtext,
`content` longtext,
`uniquehash` varchar(128) NOT NULL default '',
`rating` int(11) NOT NULL default'0',
`format` int(11) NOT NULL default'0',
`publishstate` enum('draft','site','public') NOT NULL default 'draft',
`lastmodified` int(10) NOT NULL default '0',
`created` int(10) NOT NULL default '0',
PRIMARY KEY (`id`),
UNIQUE KEY `id_user_idx` (`id`, `userid`),
KEY `post_lastmodified_idx` (`lastmodified`),
KEY `post_subject_idx` (`subject`)
) TYPE=MyISAM COMMENT='New moodle post table. Holds data posts such as forum entries or blog entries.';");
modify_database("","CREATE TABLE prefix_tags (
`id` int(11) NOT NULL auto_increment,
`type` varchar(255) NOT NULL default 'official',
`userid` int(11) NOT NULL default'0',
`text` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM COMMENT ='tags structure for moodle.';");
modify_database("","CREATE TABLE prefix_blog_tag_instance (
`id` int(11) NOT NULL auto_increment,
`entryid` int(11) NOT NULL default'0',
`tagid` int(11) NOT NULL default'0',
`groupid` int(11) NOT NULL default'0',
`courseid` int(11) NOT NULL default'0',
`userid` int(11) NOT NULL default'0',
PRIMARY KEY (`id`)
) TYPE=MyISAM COMMENT ='tag instance for blogs.';");
}
return $result;
}
+45
View File
@@ -840,6 +840,51 @@ CREATE TABLE prefix_stats_user_monthly (
KEY `timeend` (`timeend`)
);
#
# Table structure for BRAND NEW MOODLE POST table `prefix_post`
#
CREATE TABLE prefix_post (
`id` int(11) NOT NULL auto_increment,
`userid` int(11) NOT NULL default '0',
`courseid` int(11) NOT NULL default'0',
`groupid` int(11) NOT NULL default'0',
`moduleid` int(11) NOT NULL default'0',
`coursemoduleid` int(11) NOT NULL default'0',
`subject` varchar(128) NOT NULL default '',
`summary` longtext,
`content` longtext,
`uniquehash` varchar(128) NOT NULL default '',
`rating` int(11) NOT NULL default'0',
`format` int(11) NOT NULL default'0',
`publishstate` enum('draft','site','public') NOT NULL default 'draft',
`lastmodified` int(10) NOT NULL default '0',
`created` int(10) NOT NULL default '0',
PRIMARY KEY (`id`),
UNIQUE KEY `id_user_idx` (`id`, `userid`),
KEY `post_lastmodified_idx` (`lastmodified`),
KEY `post_subject_idx` (`subject`)
) TYPE=MyISAM COMMENT='New moodle post table. Holds data posts such as forum entries or blog entries.';
# tags are not limited to blogs
CREATE TABLE prefix_tags (
`id` int(11) NOT NULL auto_increment,
`type` varchar(255) NOT NULL default 'official',
`userid` int(11) NOT NULL default'0',
`text` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM COMMENT ='tags structure for moodle.';
# instance of a tag for a blog
CREATE TABLE prefix_blog_tag_instance (
`id` int(11) NOT NULL auto_increment,
`entryid` int(11) NOT NULL default'0',
`tagid` int(11) NOT NULL default'0',
`groupid` int(11) NOT NULL default'0',
`courseid` int(11) NOT NULL default'0',
`userid` int(11) NOT NULL default'0',
PRIMARY KEY (`id`)
) TYPE=MyISAM COMMENT ='tag instance for blogs.';
INSERT INTO prefix_log_display VALUES ('user', 'view', 'user', 'CONCAT(firstname," ",lastname)');
INSERT INTO prefix_log_display VALUES ('course', 'user report', 'user', 'CONCAT(firstname," ",lastname)');
+41
View File
@@ -1421,6 +1421,47 @@ function main_upgrade($oldversion=0) {
execute_sql("UPDATE {$CFG->prefix}user_teachers SET enrol='manual' WHERE enrol=''");
}
if ($oldversion > 2006031000) {
modify_database("","CREATE TABLE prefix_post (
id SERIAL PRIMARY KEY,
userid INTEGER NOT NULL default 0,
courseid INTEGER NOT NULL default 0,
groupid INTEGER NOT NULL default 0,
moduleid INTEGER NOT NULL default 0,
coursemoduleid INTEGER NOT NULL default 0,
subject varchar(128) NOT NULL default '',
summary longtext,
content longtext,
uniquehash varchar(128) NOT NULL default '',
rating INTEGER NOT NULL default 0,
format INTEGER NOT NULL default 0,
publishstate varchar(10) CHECK (type IN ('draft','site','public')) NOT NULL default 'draft',
lastmodified INTEGER NOT NULL default '0',
created INTEGER NOT NULL default '0'
);");
modify_database("","CREATE INDEX id_user_idx ON prefix_post (id, courseid);");
modify_database("","CREATE INDEX post_lastmodified_idx ON prefix_post (lastmodified);");
modify_database("","CREATE INDEX post_subject_idx ON prefix_post (subject);");
modify_database("","CREATE TABLE prefix_tags (
id SERIAL PRIMARY KEY,
type varchar(255) NOT NULL default 'official',
userid INTEGER NOT NULL default 0,
text varchar(255) NOT NULL default ''
);");
modify_database("","CREATE TABLE prefix_blog_tag_instance (
id SERIAL PRIMARY KEY,
entryid id SERIAL PRIMARY KEY, NOT NULL default 0,
tagid id SERIAL PRIMARY KEY, NOT NULL default 0,
groupid id SERIAL PRIMARY KEY, NOT NULL default 0,
courseid id SERIAL PRIMARY KEY, NOT NULL default 0,
userid id SERIAL PRIMARY KEY, NOT NULL default 0
);");
}
return $result;
}
+38
View File
@@ -620,6 +620,44 @@ CREATE INDEX prefix_stats_user_monthly_userid_idx ON prefix_stats_user_monthly (
CREATE INDEX prefix_stats_user_monthly_roleid_idx ON prefix_stats_user_monthly (roleid);
CREATE INDEX prefix_stats_user_monthly_timeend_idx ON prefix_stats_user_monthly (timeend);
CREATE TABLE prefix_post (
id SERIAL PRIMARY KEY,
userid INTEGER NOT NULL default 0,
courseid INTEGER NOT NULL default 0,
groupid INTEGER NOT NULL default 0,
moduleid INTEGER NOT NULL default 0,
coursemoduleid INTEGER NOT NULL default 0,
subject varchar(128) NOT NULL default '',
summary longtext,
content longtext,
uniquehash varchar(128) NOT NULL default '',
rating INTEGER NOT NULL default 0,
format INTEGER NOT NULL default 0,
publishstate varchar(10) CHECK (type IN ('draft','site','public')) NOT NULL default 'draft',
lastmodified INTEGER NOT NULL default '0',
created INTEGER NOT NULL default '0'
);
CREATE INDEX id_user_idx ON prefix_post (id, courseid);
CREATE INDEX post_lastmodified_idx ON prefix_post (lastmodified);
CREATE INDEX post_subject_idx ON prefix_post (subject);
CREATE TABLE prefix_tags (
id SERIAL PRIMARY KEY,
type varchar(255) NOT NULL default 'official',
userid INTEGER NOT NULL default 0,
text varchar(255) NOT NULL default ''
);
CREATE TABLE prefix_blog_tag_instance (
id SERIAL PRIMARY KEY,
entryid id SERIAL PRIMARY KEY, NOT NULL default 0,
tagid id SERIAL PRIMARY KEY, NOT NULL default 0,
groupid id SERIAL PRIMARY KEY, NOT NULL default 0,
courseid id SERIAL PRIMARY KEY, NOT NULL default 0,
userid id SERIAL PRIMARY KEY, NOT NULL default 0
);
INSERT INTO prefix_log_display VALUES ('user', 'view', 'user', 'firstname||\' \'||lastname');
INSERT INTO prefix_log_display VALUES ('course', 'user report', 'user', 'firstname||\' \'||lastname');
INSERT INTO prefix_log_display VALUES ('course', 'view', 'course', 'fullname');
+1 -1
View File
@@ -6,7 +6,7 @@
// This is compared against the values stored in the database to determine
// whether upgrades should be performed (see lib/db/*.php)
$version = 2006030901; // YYYYMMDD = date
$version = 2006031000; // YYYYMMDD = date
// XY = increments within a single day
$release = '1.6 development'; // Human-friendly version name