]> git.mjollnir.org Git - moodle.git/commitdiff
Oracle tables, etc converted from mysql, plus test transactions.
authorles_kopari <les_kopari>
Sat, 13 Sep 2003 08:05:21 +0000 (08:05 +0000)
committerles_kopari <les_kopari>
Sat, 13 Sep 2003 08:05:21 +0000 (08:05 +0000)
lib/db/oci8po.sql [new file with mode: 0755]
mod/assignment/db/oci8po.sql [new file with mode: 0755]
mod/chat/db/oci8po.sql [new file with mode: 0755]
mod/choice/db/oci8po.sql [new file with mode: 0755]
mod/forum/db/oci8po.sql [new file with mode: 0755]
mod/journal/db/oci8po.sql [new file with mode: 0755]
mod/quiz/db/oci8po.sql [new file with mode: 0755]
mod/resource/db/oci8po.sql [new file with mode: 0755]
mod/survey/db/oci8po.sql [new file with mode: 0755]
mod/workshop/db/oci8po.sql [new file with mode: 0755]

diff --git a/lib/db/oci8po.sql b/lib/db/oci8po.sql
new file mode 100755 (executable)
index 0000000..b6546fe
--- /dev/null
@@ -0,0 +1,612 @@
+rem   DRAFT DRAFT DRAFT DRAFT - untested\r
+\r
+rem\r
+rem Table structure for table config\r
+rem\r
+\r
+drop TABLE prefix_config;\r
+CREATE TABLE prefix_config (\r
+  id number(10) primary key,\r
+  name varchar2(255) default '' not null constraint unq_name unique,\r
+  value varchar2(255) default '' not null\r
+);\r
+\r
+COMMENT on table prefix_config is 'Moodle configuration variables';\r
+\r
+drop sequence p_config_seq;\r
+create sequence p_config_seq;\r
+\r
+create or replace trigger p_config_trig\r
+  before insert on prefix_config\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_config_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_config (name,value) values ('Name1','Value1');\r
+insert into prefix_config (name,value) values ('Name2','Value2');\r
+insert into prefix_config (name,value) values ('Name3','Value3');\r
+\r
+rem testing unique column constraint on name: this should fail\r
+insert into prefix_config (name,value) values ('Name1','Value4');\r
+\r
+\r
+select * from prefix_config order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table course\r
+rem\r
+\r
+drop TABLE prefix_course;\r
+CREATE TABLE prefix_course (\r
+  id number(10) primary key,\r
+  category number(10) default '0' not null,\r
+  sortorder number(10) default '0' not null,\r
+  password varchar2(50) default '' not null,\r
+  fullname varchar2(254) default '' not null,\r
+  shortname varchar2(15) default '' not null,\r
+  summary varchar2(254) not null,\r
+  format varchar2(10) default 'topics' not null,\r
+  showgrades number(2) default '1' not null,\r
+  modinfo varchar2(1024)  not null,\r
+  newsitems number(5) default '1' not null,\r
+  teacher varchar2(100) default 'Teacher' not null,\r
+  teachers varchar2(100) default 'Teachers' not null,\r
+  student varchar2(100) default 'Student' not null,\r
+  students varchar2(100) default 'Students' not null,\r
+  guest number(2) default '0' not null,\r
+  startdate number(10) default '0' not null,\r
+  numsections number(5) default '1' not null,\r
+  showrecent number(5) default '1' not null,\r
+  marker number(10) default '0' not null,\r
+  visible number(10) default '1' not null,\r
+  timecreated number(10) default '0' not null,\r
+  timemodified number(10) default '0' not null\r
+); \r
+\r
+create index category on prefix_course(category);\r
+\r
+COMMENT on table prefix_course is 'Moodle prefix course table';\r
+\r
+drop sequence p_course_seq;\r
+create sequence p_course_seq;\r
+\r
+create or replace trigger p_course_trig\r
+  before insert on prefix_course\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_course_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_course ( category,password,fullname,shortname,summary,modinfo) values ( 1,'password1','fullname1','shortname1','summary1','modinfo1');\r
+insert into prefix_course ( category,password,fullname,shortname,summary,format,modinfo) values ( 2,'password2','fullname2','shortname2','summary2','social','modinfo2');\r
+insert into prefix_course ( category,password,fullname,shortname,summary,format,modinfo) values ( 2,'password2','fullname2','shortname2','summary2','topics','modinfo2');\r
+\r
+select * from prefix_course order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table course_categories\r
+rem\r
+\r
+drop TABLE prefix_course_categories;\r
+CREATE TABLE prefix_course_categories (\r
+  id number(10) primary key,\r
+  name varchar2(255) default '' not null,\r
+  description varchar2(1024),\r
+  parent number(10) default '0' not null,\r
+  sortorder number(10) default '0' not null,\r
+  coursecount number(10) default '0' not null,\r
+  visible number(1) default '1' not null,\r
+  timemodified number(10) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_course_categories is 'Course categories';\r
+\r
+drop sequence p_course_categories_seq;\r
+create sequence p_course_categories_seq;\r
+\r
+create or replace trigger p_course_categories_trig\r
+  before insert on prefix_course_categories\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_course_categories_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_course_categories (name) values ('name1');\r
+insert into prefix_course_categories (name) values ('name2');\r
+insert into prefix_course_categories (name) values ('name3');\r
+insert into prefix_course_categories (name) values ('name4');\r
+\r
+\r
+select * from prefix_course_categories;\r
+\r
+rem \r
+rem Table structure for table course_display\r
+rem\r
+\r
+drop TABLE prefix_course_display;\r
+CREATE TABLE prefix_course_display (\r
+  id number(10) primary key,\r
+  course number(10) default '0' not null,\r
+  userid number(10) default '0' not null,\r
+  display number(10) default '0' not null\r
+);\r
+\r
+drop sequence p_course_display_seq;\r
+create sequence p_course_display_seq;\r
+\r
+create or replace trigger p_course_display_trig\r
+  before insert on prefix_course_display\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_course_display_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+create index courseuserid on prefix_course_display(course,userid);\r
+\r
+COMMENT on table prefix_course_display is 'Stores info about how to display the course';\r
+\r
+insert into prefix_course_display (course,userid,display) values (1,1,1);\r
+insert into prefix_course_display (course,userid,display) values (2,2,2);\r
+insert into prefix_course_display (course,userid,display) values (3,3,3);\r
+insert into prefix_course_display (course,userid,display) values (4,4,4);\r
+\r
+select * from prefix_course_display;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table course_modules\r
+rem\r
+\r
+drop TABLE prefix_course_modules;\r
+CREATE TABLE prefix_course_modules (\r
+  id number(10) primary key,\r
+  course number(10) default '0' not null,\r
+  module number(10) default '0' not null,\r
+  instance number(10) default '0' not null,\r
+  section number(10) default '0' not null,\r
+  added number(10) default '0' not null, \r
+  deleted number(1) default '0' not null,\r
+  score number(4) default '0' not null,\r
+  visible number(1) default '1' not null\r
+);\r
+\r
+COMMENT on table prefix_course_modules is 'prefix_course_modules';\r
+\r
+drop sequence p_course_modules_seq;\r
+create sequence p_course_modules_seq;\r
+\r
+create or replace trigger p_course_modules_trig\r
+  before insert on prefix_course_modules\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_course_modules_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_course_modules (course,module,instance,section,added,deleted,score) values (1,1,1,1,1,1,1); \r
+insert into prefix_course_modules (course,module,instance,section,added,deleted,score) values (2,2,2,2,2,2,2); \r
+insert into prefix_course_modules (course,module,instance,section,added,deleted,score) values (3,3,3,3,3,3,3); \r
+insert into prefix_course_modules (course,module,instance,section,added,deleted,score) values (4,4,4,4,4,4,4); \r
+\r
+select * from prefix_course_modules;\r
+\r
+rem --------------------------------------------------------\r
+rem\r
+rem Table structure for table course_sections\r
+rem\r
+\r
+drop TABLE prefix_course_sections;\r
+CREATE TABLE prefix_course_sections (\r
+  id number(10) primary key,\r
+  course number(10) default '0' not null,\r
+  section number(10) default '0' not null,\r
+  summary varchar2(254) NOT NULL,\r
+  sequence varchar2(255) default '' not null,\r
+  visible number(1) default '1' not null\r
+);\r
+\r
+COMMENT on table prefix_course_sections is 'prefix_course_sections';\r
+\r
+drop sequence p_course_sections_seq;\r
+create sequence p_course_sections_seq;\r
+\r
+create or replace trigger p_course_sections_trig\r
+  before insert on prefix_course_sections\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_course_sections_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_course_sections (course,section,summary,sequence) values (1,1,1,1); \r
+insert into prefix_course_sections (course,section,summary,sequence) values (2,2,2,2); \r
+insert into prefix_course_sections (course,section,summary,sequence) values (3,3,3,3); \r
+insert into prefix_course_sections (course,section,summary,sequence) values (4,4,4,4); \r
+\r
+select * from prefix_course_sections;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table log\r
+rem\r
+\r
+drop TABLE prefix_log;\r
+CREATE TABLE prefix_log (\r
+  id number(10) primary key,\r
+  time number(10) default '0' not null,\r
+  userid number(10) default '0' not null,\r
+  ip varchar2(15) default '' not null,\r
+  course number(10) default '0' not null,\r
+  module varchar2(10) default '' not null,\r
+  action varchar2(15) default '' not null,\r
+  url varchar2(100) default '' not null,\r
+  info varchar2(255) default '' not null\r
+);\r
+\r
+col module format a10\r
+\r
+create index timecoursemoduleaction on prefix_log(time,course,module,action);\r
+\r
+create index coursemoduleaction on prefix_log(course,module,action);\r
+\r
+create index courseuserid0 on prefix_log(course,userid);\r
+\r
+COMMENT on table prefix_log is 'Every action is logged as far as possible.';\r
+\r
+drop sequence p_log_seq;\r
+create sequence p_log_seq;\r
+\r
+create or replace trigger p_log_trig\r
+  before insert on prefix_log\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_log_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_log (time,userid,ip,course,module,action,url,info) values (1,1,'ip1',1,'module1','action1','url1','info1'); \r
+insert into prefix_log (time,userid,ip,course,module,action,url,info) values (2,2,'ip2',2,'module2','action2','url2','info2'); \r
+insert into prefix_log (time,userid,ip,course,module,action,url,info) values (3,3,'ip3',3,'module3','action3','url3','info3'); \r
+insert into prefix_log (time,userid,ip,course,module,action,url,info) values (4,4,'ip4',4,'module4','action4','url4','info4'); \r
+\r
+select * from prefix_log;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table log_display\r
+rem\r
+\r
+drop TABLE prefix_log_display;\r
+CREATE TABLE prefix_log_display (\r
+  module varchar2(20) default '' not null,\r
+  action varchar2(20) default '' not null,\r
+  mtable varchar2(20) default '' not null,\r
+  field varchar2(40) default '' not null\r
+) ;\r
+\r
+COMMENT on table prefix_log_display is 'For a particular module/action, specifies a moodle table/field.';\r
+\r
+rem for testing only\r
+rem insert into prefix_log_display (module,action,mtable,field) values ('module1','action1','mtable1','field1'); \r
+rem insert into prefix_log_display (module,action,mtable,field) values ('module2','action2','mtable2','field2'); \r
+rem insert into prefix_log_display (module,action,mtable,field) values ('module3','action3','mtable3','field3'); \r
+rem insert into prefix_log_display (module,action,mtable,field) values ('module4','action4','mtable4','field4'); \r
+\r
+select * from prefix_log_display;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table modules\r
+rem\r
+\r
+drop TABLE prefix_modules;\r
+CREATE TABLE prefix_modules (\r
+  id number(10) primary key,\r
+  name varchar2(20) default '' not null,\r
+  version number(10) default '0' not null,\r
+  cron number(10) default '0' not null,\r
+  lastcron number(10) default '0' not null,\r
+  search varchar2(255) default '' not null,\r
+  visible number(1) default '1' not null\r
+);\r
+\r
+drop sequence p_modules_seq;\r
+create sequence p_modules_seq;\r
+\r
+create or replace trigger p_modules_trig\r
+  before insert on prefix_modules\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_modules_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_modules (name,version,cron,lastcron,search) values ('name1',1,1,1,'search1'); \r
+insert into prefix_modules (name,version,cron,lastcron,search) values ('name2',2,2,2,'search2'); \r
+insert into prefix_modules (name,version,cron,lastcron,search) values ('name3',3,3,3,'search3'); \r
+insert into prefix_modules (name,version,cron,lastcron,search) values ('name4',4,4,4,'search4'); \r
+\r
+select * from prefix_modules;\r
+\r
+rem --------------------------------------------------------\r
+\r
+drop TABLE prefix_scale;\r
+CREATE TABLE prefix_scale (\r
+  id number(10) primary key,\r
+  courseid number(10) default '0' not null,\r
+  userid number(10) default '0' not null,\r
+  name varchar2(255) default '' not null,\r
+  scale varchar2(1024),\r
+  description varchar2(1024),\r
+  timemodified number(10) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_scale is 'Defines grading scales';\r
+\r
+drop sequence p_scale_seq;\r
+create sequence p_scale_seq;\r
+\r
+create or replace trigger p_scale_trig\r
+  before insert on prefix_scale\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_scale_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_scale( courseid, userid, name, scale, description, timemodified) values(1,1,'1','1','1',1);\r
+insert into prefix_scale( courseid, userid, name, scale, description, timemodified) values(2,2,'2','2','2',2);\r
+insert into prefix_scale( courseid, userid, name, scale, description, timemodified) values(3,3,'3','3','3',3);\r
+insert into prefix_scale( courseid, userid, name, scale, description, timemodified) values(4,4,'4','4','4',4);\r
+\r
+select * from prefix_scale order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table user\r
+rem\r
+\r
+drop TABLE prefix_user;\r
+CREATE TABLE prefix_user (\r
+  id number(10) primary key,\r
+  confirmed number(1) default '0' not null,\r
+  deleted number(1) default '0' not null,\r
+  username varchar2(100) default '' not null \r
+    constraint unq_username unique,\r
+  password varchar2(32) default '' not null,\r
+  idnumber varchar2(12) default NULL,\r
+  firstname varchar2(20) default '' not null,\r
+  lastname varchar2(20) default '' not null,\r
+  email varchar2(100) default '' not null,\r
+  icq varchar2(15) default NULL,\r
+  phone1 varchar2(20) default NULL,\r
+  phone2 varchar2(20) default NULL,\r
+  institution varchar2(40) default NULL,\r
+  department varchar2(30) default NULL,\r
+  address varchar2(70) default NULL,\r
+  city varchar2(20) default NULL,\r
+  country varchar2(2) default NULL,\r
+  lang varchar2(5) default 'en',\r
+  timezone float default '99' not null,\r
+  firstaccess number(10) default '0' not null,\r
+  lastaccess number(10) default '0' not null,\r
+  lastlogin number(10) default '0' not null,\r
+  currentlogin number(10) default '0' not null,\r
+  lastIP varchar2(15) default NULL,\r
+  secret varchar2(15) default NULL,\r
+  picture number(1) default NULL,\r
+  url varchar2(255) default NULL,\r
+  description varchar2(255),\r
+  mailformat number(1) default '1' not null,\r
+  maildisplay number(2) default '2' not null,\r
+  htmleditor number(1) default '1' not null,\r
+  autosubscribe number(1) default '1' not null,\r
+  timemodified number(10) default '0' not null\r
+) ;\r
+\r
+COMMENT on table prefix_user is 'One record for each person';\r
+\r
+drop sequence p_user_seq;\r
+create sequence p_user_seq;\r
+\r
+create or replace trigger p_user_trig\r
+  before insert on prefix_user\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_user_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_user ( confirmed, deleted, username, password, idnumber, firstname, lastname, email, icq, phone1, phone2, institution, department, address, city, country, lang, timezone, firstaccess, lastaccess, lastlogin, currentlogin, lastIP, secret, picture, url, description, mailformat, maildisplay, htmleditor, timemodified ) values ( 1, 1, 'username1', 'password1', 'idnumber1', 'firstname1', 'lastname1', 'email1', 'icq1', 'phone11', 'phone21', 'institution1', 'department1', 'address1', 'city1', 'c1', 'lang1', 1, 1, 1, 1, 1, 'lastIP1', 'secret1', 1, 'url1', 'description1', 1, 1, 1, 1);\r
+insert into prefix_user ( confirmed, deleted, username, password, idnumber, firstname, lastname, email, icq, phone1, phone2, institution, department, address, city, country, lang, timezone, firstaccess, lastaccess, lastlogin, currentlogin, lastIP, secret, picture, url, description, mailformat, maildisplay, htmleditor, timemodified ) \r
+values ( 2, 2, 'username2', 'password2', 'idnumber2', 'firstname2', 'lastname2', 'email2', 'icq2', 'phone12', 'phone22', 'institution2', 'department2', 'address2', 'city2', 'c2', 'lang2', 2, 2, 2, 2, 2, 'lastIP2', 'secret2', 2, 'url2', 'description2', 2, 2, 2, 2);\r
+insert into prefix_user ( confirmed, deleted, username, password, idnumber, firstname, lastname, email, icq, phone1, phone2, institution, department, address, city, country, lang, timezone, firstaccess, lastaccess, lastlogin, currentlogin, lastIP, secret, picture, url, description, mailformat, maildisplay, htmleditor, timemodified ) values ( 3, 3, 'username3', 'password3', 'idnumber3', 'firstname3', 'lastname3', 'email3', 'icq3', 'phone13', 'phone23', 'institution3', 'department3', 'address3', 'city3', 'c3', 'lang3', 3, 3, 3, 3, 3, 'lastIP3', 'secret3', 3, 'url3', 'description3', 3, 3, 3, 3);\r
+\r
+rem test unique constraint on username: this statement should fail\r
+insert into prefix_user ( confirmed, deleted, username, password, idnumber, firstname, lastname, email, icq, phone1, phone2, institution, department, address, city, country, lang, timezone, firstaccess, lastaccess, lastlogin, currentlogin, lastIP, secret, picture, url, description, mailformat, maildisplay, htmleditor, timemodified ) values ( 4, 4, 'username1', 'password4', 'idnumber4', 'firstname4', 'lastname4', 'email4', 'icq4', 'phone14', 'phone24', 'institution4', 'department4', 'address4', 'city4', 'c4', 'lang4', 4, 4, 4, 4, 4, 'lastIP4', 'secret4', 4, 'url4', 'description4', 4, 4, 4, 4);\r
+\r
+select * from prefix_user;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table user_admins\r
+rem\r
+\r
+drop TABLE prefix_user_admins;\r
+CREATE TABLE prefix_user_admins (\r
+  id number(10) primary key,\r
+  userid number(10) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_user_admins is 'One record per administrator user';\r
+\r
+drop sequence p_user_admins_seq;\r
+create sequence p_user_admins_seq;\r
+\r
+create or replace trigger p_user_admins_trig\r
+  before insert on prefix_user_admins\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_user_admins_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_user_admins (userid) values (1); \r
+insert into prefix_user_admins (userid) values (2); \r
+insert into prefix_user_admins (userid) values (3); \r
+insert into prefix_user_admins (userid) values (4); \r
+\r
+select * from prefix_user_admins;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table user_students\r
+rem\r
+\r
+drop TABLE prefix_user_students;\r
+CREATE TABLE prefix_user_students (\r
+  id number(10) primary key,\r
+  userid number(10) default '0' not null,\r
+  course number(10) default '0' not null,\r
+  timestart number(10) default '0' not null,\r
+  timeend number(10) default '0' not null,\r
+  time number(10) default '0' not null\r
+);\r
+\r
+create index courseuserid1 on prefix_user_students(course,userid);\r
+\r
+drop sequence p_user_students_seq;\r
+create sequence p_user_students_seq;\r
+\r
+create or replace trigger p_user_students_trig\r
+  before insert on prefix_user_students\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_user_students_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_user_students (userid,course,timestart,timeend,time) values (1,1,1,1,1); \r
+insert into prefix_user_students (userid,course,timestart,timeend,time) values (2,2,2,2,2); \r
+insert into prefix_user_students (userid,course,timestart,timeend,time) values (3,3,3,3,3); \r
+insert into prefix_user_students (userid,course,timestart,timeend,time) values (4,4,4,4,4); \r
+\r
+select * from prefix_user_students;\r
+\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table user_teachers\r
+rem\r
+\r
+drop TABLE prefix_user_teachers;\r
+CREATE TABLE prefix_user_teachers (\r
+  id number(10) primary key,\r
+  userid number(10) default '0' not null,\r
+  course number(10) default '0' not null,\r
+  authority number(10) default '3' not null,\r
+  role varchar2(40) default '' not null,\r
+  editall number(1) default '1' not null,\r
+  timemodified number(10) default '0' not null\r
+);\r
+\r
+create index courseuserid2 on prefix_user_teachers(course,userid);\r
+\r
+COMMENT on table prefix_user_teachers is 'One record per teacher per course';\r
+\r
+drop sequence p_user_teachers_seq;\r
+create sequence p_user_teachers_seq;\r
+\r
+create or replace trigger p_user_teachers_trig\r
+  before insert on prefix_user_teachers\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_user_teachers_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_user_teachers (userid,course,authority,role) values (1,1,1,'role1'); \r
+insert into prefix_user_teachers (userid,course,authority,role) values (2,2,2,'role2'); \r
+insert into prefix_user_teachers (userid,course,authority,role) values (3,3,3,'role3'); \r
+insert into prefix_user_teachers (userid,course,authority,role) values (3,3,3,'role3'); \r
+\r
+select * from prefix_user_teachers;\r
+\r
+rem\r
+rem Table structure for table user_coursecreators\r
+rem\r
+\r
+drop TABLE prefix_user_coursecreators;\r
+CREATE TABLE prefix_user_coursecreators (\r
+  id number(10) primary key,\r
+  userid number(10) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_user_coursecreators is 'One record per course creator';\r
+drop sequence p_user_coursecreators_seq;\r
+create sequence p_user_coursecreators_seq;\r
+\r
+create or replace trigger p_user_coursecreators_trig\r
+  before insert on prefix_user_coursecreators\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_user_coursecreators_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_user_coursecreators (userid) values (1);\r
+insert into prefix_user_coursecreators (userid) values (2);\r
+insert into prefix_user_coursecreators (userid) values (3);\r
+insert into prefix_user_coursecreators (userid) values (4);\r
+\r
+select * from prefix_user_coursecreators;\r
+\r
+rem --------------------------------------------------------\r
+\r
+INSERT INTO prefix_log_display VALUES ('user', 'view', 'user', 'firstname'||' '||'lastname');\r
+INSERT INTO prefix_log_display VALUES ('course', 'view', 'course', 'fullname');\r
+INSERT INTO prefix_log_display VALUES ('course', 'update', 'course', 'fullname');\r
+INSERT INTO prefix_log_display VALUES ('course', 'enrol', 'course', 'fullname');\r
+INSERT INTO prefix_log_display VALUES ('course', 'update', 'course', 'fullname');\r
+\r
+select * from prefix_log_display where module in ('user','course') order by 1,2;\r
diff --git a/mod/assignment/db/oci8po.sql b/mod/assignment/db/oci8po.sql
new file mode 100755 (executable)
index 0000000..c92ffc1
--- /dev/null
@@ -0,0 +1,98 @@
+rem\r
+rem Table structure for table assignment\r
+rem\r
+\r
+drop TABLE prefix_assignment;\r
+CREATE TABLE prefix_assignment (\r
+ id number(10) primary key,\r
+ course number(10) default '0' not null,\r
+ name varchar(255) default '' not null,\r
+ description varchar2(255) NOT NULL,\r
+ format number(2) default '0' not null,\r
+ resubmit number(2) default '0' not null,\r
+ type number(10) default '1' not null,\r
+ maxbytes number(10) default '100000' not null,\r
+ timedue number(10) default '0' not null,\r
+ grade number(10) default '0' not null, \r
+ timemodified number(10) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_assignment is 'Defines assignments';\r
+\r
+drop sequence p_assignment_seq;\r
+create sequence p_assignment_seq;\r
+\r
+create or replace trigger p_assignment_trig\r
+  before insert on prefix_assignment\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_assignment_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_assignment (course,name,description,format,resubmit,type,maxbytes,timedue,grade,timemodified) values (1,'name1','description1','1','1','1','111111','1','1','1');\r
+insert into prefix_assignment (course,name,description,format,resubmit,type,maxbytes,timedue,grade,timemodified) values (2,'name2','description2','2','2','2','222222','2','2','2');\r
+insert into prefix_assignment (course,name,description,format,resubmit,type,maxbytes,timedue,grade,timemodified) values (3,'name3','description3','3','3','3','333333','3','3','3');\r
+insert into prefix_assignment (course,name,description,format,resubmit,type,maxbytes,timedue,grade,timemodified) values (4,'name4','description4','4','4','4','444444','4','4','4');\r
+\r
+col format format 99\r
+select * from prefix_assignment order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table assignment_submissions\r
+rem\r
+\r
+drop TABLE prefix_assignment_submissions;\r
+CREATE TABLE prefix_assignment_submissions (\r
+ id number(10) primary key ,\r
+ assignment number(10) default '0' not null,\r
+ userid number(10) default '0' not null,\r
+ timecreated number(10) default '0' not null,\r
+ timemodified number(10) default '0' not null,\r
+ numfiles number(10) default '0' not null,\r
+ grade number(11) default '0' not null,\r
+ commentt varchar2(255) not null,\r
+ teacher number(10) default '0' not null,\r
+ timemarked number(10) default '0' not null,\r
+ mailed number(1) default '0' not null\r
+);\r
+\r
+\r
+COMMENT on table prefix_assignment_submissions is 'Info about submitted assignments';\r
+\r
+drop sequence p_assignment_sub_seq;\r
+create sequence p_assignment_sub_seq;\r
+\r
+create or replace trigger p_assignment_sub_trig\r
+  before insert on prefix_assignment_submissions\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_assignment_sub_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_assignment_submissions(\r
+ assignment,userid,timecreated,timemodified,numfiles,grade,commentt,teacher,timemarked,mailed) values ('1','1','1','1','1','1','comment1','1','1','1');\r
+insert into prefix_assignment_submissions(assignment,userid,timecreated,timemodified,numfiles,grade,commentt,teacher,timemarked,mailed) values ('2','2','2','2','2','2','comment2','2','2','2');\r
+insert into prefix_assignment_submissions(assignment,userid,timecreated,timemodified,numfiles,grade,commentt,teacher,timemarked,mailed) values ('3','3','3','3','3','3','comment3','3','3','3');\r
+insert into prefix_assignment_submissions(assignment,userid,timecreated,timemodified,numfiles,grade,commentt,teacher,timemarked,mailed) values ('4','4','4','4','4','4','comment4','4','4','4');\r
+\r
+col teacher format 99\r
+select * from prefix_assignment_submissions order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+delete from prefix_log_display where module='assignment';\r
+INSERT INTO prefix_log_display VALUES ('assignment', 'view', 'assignment', 'name');\r
+INSERT INTO prefix_log_display VALUES ('assignment', 'add', 'assignment', 'name');\r
+INSERT INTO prefix_log_display VALUES ('assignment', 'update', 'assignment', 'name');\r
+INSERT INTO prefix_log_display VALUES ('assignment', 'view submissions', 'assignment', 'name');\r
+INSERT INTO prefix_log_display VALUES ('assignment', 'upload', 'assignment', 'name');\r
+\r
+select * from prefix_log_display where module='assignment' order by 1,2;\r
diff --git a/mod/chat/db/oci8po.sql b/mod/chat/db/oci8po.sql
new file mode 100755 (executable)
index 0000000..b31fa04
--- /dev/null
@@ -0,0 +1,131 @@
+rem\r
+rem Table structure for table chat\r
+rem\r
+\r
+drop TABLE prefix_chat;\r
+CREATE TABLE prefix_chat (\r
+  id number(10) primary key,\r
+  course number(10) default '0' not null,\r
+  name varchar2(255) default '' not null,\r
+  intro varchar2(1024) NOT NULL,\r
+  keepdays number(11) default '0' not null,\r
+  studentlogs number(4) default '0' not null,\r
+  chattime number(10) default '0' not null,\r
+  schedule number(4) default '0' not null,\r
+  timemodified number(10) default '0' not null\r
+);\r
+\r
+\r
+COMMENT on table prefix_chat is 'Each of these is a chat room';\r
+\r
+drop sequence p_chat_seq;\r
+create sequence p_chat_seq;\r
+\r
+create or replace trigger p_chat_trig\r
+  before insert on prefix_chat\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_chat_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_chat(course,name,intro,keepdays,studentlogs,chattime,schedule,timemodified) values(1,'name 1','intro 1',1,1,1,1,1);\r
+insert into prefix_chat(course,name,intro,keepdays,studentlogs,chattime,schedule,timemodified) values(2,'name 2','intro 2',2,2,2,2,2);\r
+insert into prefix_chat(course,name,intro,keepdays,studentlogs,chattime,schedule,timemodified) values(3,'name 3','intro 3',3,3,3,3,3);\r
+insert into prefix_chat(course,name,intro,keepdays,studentlogs,chattime,schedule,timemodified) values(4,'name 4','intro 4',4,4,4,4,4);\r
+\r
+select * from prefix_chat;\r
+\r
+rem --------------------------------------------------------\r
+rem\r
+rem Table structure for table chat_messages\r
+rem\r
+\r
+drop TABLE prefix_chat_messages;\r
+CREATE TABLE prefix_chat_messages (\r
+  id number(10) primary key,\r
+  chatid number(10) default '0' not null,\r
+  userid number(10) default '0' not null,\r
+  system number(1) default '0' not null,\r
+  message varchar2(1024) NOT NULL,\r
+  timestamp number(10) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_chat_messages is 'Stores all the actual chat messages';\r
+\r
+create index timemodifiedchat on prefix_chat_messages(timestamp,chatid);\r
+\r
+drop sequence p_chat_messages_seq;\r
+create sequence p_chat_messages_seq;\r
+\r
+create or replace trigger p_chat_messages_trig\r
+  before insert on prefix_chat_messages\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_chat_messages_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_chat_messages (chatid,userid,system,message,timestamp) values(1,1,1,'message1',1);\r
+insert into prefix_chat_messages (chatid,userid,system,message,timestamp) values(2,2,2,'message2',2);\r
+insert into prefix_chat_messages (chatid,userid,system,message,timestamp) values(3,3,3,'message3',3);\r
+insert into prefix_chat_messages (chatid,userid,system,message,timestamp) values(4,4,4,'message4',4);\r
+\r
+select * from prefix_chat_messages;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table chat_users\r
+rem\r
+\r
+drop TABLE prefix_chat_users;\r
+CREATE TABLE prefix_chat_users (\r
+  id number(10) primary key,\r
+  chatid number(11) default '0' not null,\r
+  userid number(11) default '0' not null,\r
+  version varchar2(16) default '' not null,\r
+  ip varchar2(15) default '' not null,\r
+  firstping number(10) default '0' not null,\r
+  lastping number(10) default '0' not null,\r
+  lastmessageping number(10) default '0' not null,\r
+  sid varchar2(32) default '' not null\r
+);\r
+\r
+create index userid on prefix_chat_users(userid);\r
+create index lastping on prefix_chat_users(lastping);\r
+\r
+drop sequence p_chat_users_seq;\r
+create sequence p_chat_users_seq;\r
+\r
+create or replace trigger p_chat_users_trig\r
+  before insert on prefix_chat_users\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_chat_users_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+COMMENT on table prefix_chat_users is 'Keeps track of which users are in which chat rooms';\r
+\r
+insert into prefix_chat_users (chatid,userid,version,ip,firstping,lastping,lastmessageping,sid) values(1,1,'version1','ip1',1,1,1,'sid1');\r
+insert into prefix_chat_users (chatid,userid,version,ip,firstping,lastping,lastmessageping,sid) values(2,2,'version2','ip2',2,2,2,'sid2');\r
+insert into prefix_chat_users (chatid,userid,version,ip,firstping,lastping,lastmessageping,sid) values(3,3,'version3','ip3',3,3,3,'sid3');\r
+insert into prefix_chat_users (chatid,userid,version,ip,firstping,lastping,lastmessageping,sid) values(4,4,'version4','ip4',4,4,4,'sid4');\r
+\r
+select * from prefix_chat_users;\r
+\r
+delete from prefix_log_display where module='chat';\r
+\r
+INSERT INTO prefix_log_display VALUES ('chat', 'view', 'chat', 'name');\r
+INSERT INTO prefix_log_display VALUES ('chat', 'add', 'chat', 'name');\r
+INSERT INTO prefix_log_display VALUES ('chat', 'update', 'chat', 'name');\r
+INSERT INTO prefix_log_display VALUES ('chat', 'report', 'chat', 'name');\r
+\r
+select * from prefix_log_display where module='chat' order by 1,2,3,4;\r
diff --git a/mod/choice/db/oci8po.sql b/mod/choice/db/oci8po.sql
new file mode 100755 (executable)
index 0000000..7f41d4e
--- /dev/null
@@ -0,0 +1,93 @@
+rem\r
+rem Table structure for table choice\r
+rem\r
+\r
+drop TABLE prefix_choice;\r
+CREATE TABLE prefix_choice (\r
+  id number(10) primary key,\r
+  course number(10) default '0' not null,\r
+  name varchar2(255) default '' not null,\r
+  text varchar2(1024) NOT NULL,\r
+  format number(2) default '0' not null,\r
+  answer1 varchar2(255) default 'Yes' not null,\r
+  answer2 varchar2(255) default 'No' not null,\r
+  answer3 varchar2(255) default NULL,\r
+  answer4 varchar2(255) default NULL,\r
+  answer5 varchar2(255) default NULL,\r
+  answer6 varchar2(255) default NULL,\r
+  publish number(2) default '0' not null,\r
+  timemodified number(10) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_choice is 'Available choices are stored here.';\r
+\r
+drop sequence p_choice_seq;\r
+create sequence p_choice_seq;\r
+\r
+create or replace trigger p_choice_trig\r
+  before insert on prefix_choice\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_choice_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_choice(course,name,text,format,answer1,answer2,answer3,answer4,answer5,answer6,publish,timemodified) values(1,'name1','text1',1,'1','1','1','1','1','1',1,1);\r
+insert into prefix_choice(course,name,text,format,answer1,answer2,answer3,answer4,answer5,answer6,publish,timemodified) values(2,'name2','text2',2,'2','2','2','2','2','2',2,2);\r
+insert into prefix_choice(course,name,text,format,answer1,answer2,answer3,answer4,answer5,answer6,publish,timemodified) values(3,'name3','text3',3,'3','3','3','3','3','3',3,3);\r
+insert into prefix_choice(course,name,text,format,answer1,answer2,answer3,answer4,answer5,answer6,publish,timemodified) values(4,'name4','text4',4,'4','4','4','4','4','4',4,4);\r
+\r
+select * from prefix_choice order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table choice_answers\r
+rem\r
+\r
+drop TABLE prefix_choice_answers;\r
+CREATE TABLE prefix_choice_answers (\r
+  id number(10) primary key,\r
+  choice number(10) default '0' not null,\r
+  userid number(10) default '0' not null,\r
+  answer number(4) default '0' not null,\r
+  timemodified number(10) default '0' not null\r
+);\r
+\r
+comment on table prefix_choice_answers is 'Answers for each choice';\r
+\r
+drop sequence p_choice_answers_seq;\r
+create sequence p_choice_answers_seq;\r
+\r
+create or replace trigger p_choice_answers_trig\r
+  before insert on prefix_choice_answers\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_choice_answers_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_choice_answers (choice,userid,answer,timemodified) values(1,1,1,1);\r
+insert into prefix_choice_answers (choice,userid,answer,timemodified) values(2,2,2,2);\r
+insert into prefix_choice_answers (choice,userid,answer,timemodified) values(3,3,3,3);\r
+insert into prefix_choice_answers (choice,userid,answer,timemodified) values(4,4,4,4);\r
+\r
+select * from prefix_choice_answers order by 1,2;\r
+\r
+rem\r
+rem Dumping data for table log_display\r
+rem\r
+\r
+delete from prefix_log_display where module = 'choice';\r
+INSERT INTO prefix_log_display VALUES ('choice', 'view', 'choice', 'name');\r
+INSERT INTO prefix_log_display VALUES ('choice', 'update', 'choice', 'name');\r
+INSERT INTO prefix_log_display VALUES ('choice', 'add', 'choice', 'name');\r
+INSERT INTO prefix_log_display VALUES ('choice', 'report', 'choice', 'name');\r
+\r
+    \r
+\r
+\r
diff --git a/mod/forum/db/oci8po.sql b/mod/forum/db/oci8po.sql
new file mode 100755 (executable)
index 0000000..6bad0b8
--- /dev/null
@@ -0,0 +1,214 @@
+rem\r
+rem Table structure for table forum\r
+rem\r
+\r
+drop TABLE prefix_forum;\r
+CREATE TABLE prefix_forum (\r
+  id number(10) primary key,\r
+  course number(10)  default '0' NOT NULL,\r
+  type varchar2(64) default 'general' not null,\r
+    constraint type_check CHECK (type IN (\r
+    'single','news','general','social','eachuser','teacher')), \r
+  name varchar2(255) default '' not null,\r
+  intro varchar2(1024) NOT NULL,\r
+  open number(2)  default '2' not null,\r
+  assessed number(10)  default '0' NOT NULL,\r
+  scale number(10)  default '0' NOT NULL,\r
+  forcesubscribe number(1)  default '0' NOT NULL,\r
+  timemodified number(10)  default '0' NOT NULL\r
+);\r
+\r
+COMMENT on table prefix_forum is 'Forums contain and structure discussion';\r
+\r
+drop sequence p_forum_seq;\r
+create sequence p_forum_seq;\r
+\r
+create or replace trigger p_forum_trig\r
+  before insert on prefix_forum\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_forum_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_forum(course,type,name,intro,open,assessed,scale,forcesubscribe,timemodified) values(1,'single','1','1',1,1,1,1,1);\r
+insert into prefix_forum(course,type,name,intro,open,assessed,scale,forcesubscribe,timemodified) values(2,'general','2','2',2,2,2,2,2);\r
+insert into prefix_forum(course,type,name,intro,open,assessed,scale,forcesubscribe,timemodified) values(3,'eachuser','3','3',3,3,3,3,3);\r
+rem should fail the check constraint\r
+insert into prefix_forum(course,type,name,intro,open,assessed,scale,forcesubscribe,timemodified) values(4,'4','4','4',4,4,4,4,4);\r
+\r
+select * from prefix_forum order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+rem\r
+rem Table structure for table forum_discussions\r
+rem\r
+\r
+drop TABLE prefix_forum_discussions;\r
+CREATE TABLE prefix_forum_discussions (\r
+  id number(10) primary key,\r
+  course number(10)  default '0' NOT NULL,\r
+  forum number(10)  default '0' NOT NULL,\r
+  name varchar2(255) default '' not null,\r
+  firstpost number(10)  default '0' NOT NULL,\r
+  assessed number(1) default '1' not null,\r
+  timemodified number(10)  default '0' NOT NULL\r
+);\r
+\r
+COMMENT on table prefix_forum_discussions is 'Forums are composed of discussions';\r
+\r
+drop sequence p_forum_disc_seq;\r
+create sequence p_forum_disc_seq;\r
+\r
+create or replace trigger p_forum_disc_trig\r
+  before insert on prefix_forum_discussions\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_forum_disc_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_forum_discussions(course,forum,name,firstpost,assessed,timemodified) values(1,1,'1',1,1,1);\r
+insert into prefix_forum_discussions(course,forum,name,firstpost,assessed,timemodified) values(2,2,'2',2,2,2);\r
+insert into prefix_forum_discussions(course,forum,name,firstpost,assessed,timemodified) values(3,3,'3',3,3,3);\r
+insert into prefix_forum_discussions(course,forum,name,firstpost,assessed,timemodified) values(4,4,'4',4,4,4);\r
+\r
+select * from prefix_forum_discussions order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+rem\r
+rem Table structure for table forum_posts\r
+rem\r
+\r
+drop TABLE prefix_forum_posts;\r
+CREATE TABLE prefix_forum_posts (\r
+  id number(10) primary key,\r
+  discussion number(10)  default '0' NOT NULL,\r
+  parent number(10)  default '0' NOT NULL,\r
+  userid number(10)  default '0' NOT NULL,\r
+  created number(10)  default '0' NOT NULL,\r
+  modified number(10)  default '0' NOT NULL,\r
+  mailed number(1)  default '0' NOT NULL,\r
+  subject varchar2(255) default '' not null,\r
+  message varchar2(1024) NOT NULL,\r
+  format number(2) default '0' NOT NULL,\r
+  attachment varchar2(100) default '' not null,\r
+  totalscore number(4) default '0' NOT NULL\r
+);\r
+\r
+drop sequence p_forum_posts_seq;\r
+create sequence p_forum_posts_seq;\r
+\r
+create or replace trigger p_forum_posts_trig\r
+  before insert on prefix_forum_posts\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_forum_posts_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+COMMENT on table prefix_forum_posts is 'All posts are stored in this table';\r
+\r
+insert into prefix_forum_posts (discussion,parent,userid,created,modified,mailed,subject,message,format,attachment,totalscore) values(1,1,1,1,1,1,'1','1',1,'1',1);\r
+insert into prefix_forum_posts (discussion,parent,userid,created,modified,mailed,subject,message,format,attachment,totalscore) values(2,2,2,2,2,2,'2','2',2,'2',2);\r
+insert into prefix_forum_posts (discussion,parent,userid,created,modified,mailed,subject,message,format,attachment,totalscore) values(3,3,3,3,3,3,'3','3',3,'3',3);\r
+insert into prefix_forum_posts (discussion,parent,userid,created,modified,mailed,subject,message,format,attachment,totalscore) values(4,4,4,4,4,4,'4','4',4,'4',4);\r
+\r
+select * from prefix_forum_posts order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+rem\r
+rem Table structure for table forum_ratings\r
+rem\r
+\r
+drop TABLE prefix_forum_ratings;\r
+CREATE TABLE prefix_forum_ratings (\r
+  id number(10) primary key,\r
+  userid number(10)  default '0' NOT NULL,\r
+  post number(10)  default '0' NOT NULL,\r
+  time number(10)  default '0' NOT NULL,\r
+  rating number(4) default '0' NOT NULL\r
+);\r
+\r
+drop sequence p_forum_ratings_seq;\r
+create sequence p_forum_ratings_seq;\r
+\r
+create or replace trigger p_forum_ratings_trig\r
+  before insert on prefix_forum_ratings\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_forum_ratings_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+COMMENT on table prefix_forum_ratings is 'Contains user ratings for individual posts';\r
+\r
+insert into prefix_forum_ratings(userid,post,time,rating) values(1,1,1,1);\r
+insert into prefix_forum_ratings(userid,post,time,rating) values(2,2,2,2);\r
+insert into prefix_forum_ratings(userid,post,time,rating) values(3,3,3,3);\r
+insert into prefix_forum_ratings(userid,post,time,rating) values(4,4,4,4);\r
+\r
+select * from prefix_forum_ratings order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+rem\r
+rem Table structure for table forum_subscriptions\r
+rem\r
+\r
+drop TABLE prefix_forum_subscriptions;\r
+CREATE TABLE prefix_forum_subscriptions (\r
+  id number(10) primary key,\r
+  userid number(10)  default '0' NOT NULL,\r
+  forum number(10)  default '0' NOT NULL\r
+);\r
+\r
+drop sequence p_forum_subscrip_seq;\r
+create sequence p_forum_subscrip_seq;\r
+\r
+create or replace trigger p_forum_subscrip_trig\r
+  before insert on prefix_forum_subscriptions\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_forum_subscrip_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+COMMENT on table prefix_forum_subscriptions is 'Keeps track of who is subscribed to what forum';\r
+\r
+insert into prefix_forum_subscriptions(userid,forum) values(1,1);\r
+insert into prefix_forum_subscriptions(userid,forum) values(2,2);\r
+insert into prefix_forum_subscriptions(userid,forum) values(3,3);\r
+insert into prefix_forum_subscriptions(userid,forum) values(4,4);\r
+\r
+select * from prefix_forum_subscriptions order by 1,2;\r
+\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Dumping data for table log_display\r
+rem\r
+delete from prefix_log_display where module = 'forum';\r
+INSERT INTO prefix_log_display VALUES ('forum', 'add', 'forum', 'name');\r
+INSERT INTO prefix_log_display VALUES ('forum', 'update', 'forum', 'name');\r
+INSERT INTO prefix_log_display VALUES ('forum', 'add discussion', 'forum_discussions', 'name');\r
+INSERT INTO prefix_log_display VALUES ('forum', 'add post', 'forum_posts', 'subject');\r
+INSERT INTO prefix_log_display VALUES ('forum', 'update post', 'forum_posts', 'subject');\r
+INSERT INTO prefix_log_display VALUES ('forum', 'move discussion', 'forum_discussions', 'name');\r
+INSERT INTO prefix_log_display VALUES ('forum', 'view subscribers', 'forum', 'name');\r
+INSERT INTO prefix_log_display VALUES ('forum', 'view discussion', 'forum_discussions', 'name');\r
+INSERT INTO prefix_log_display VALUES ('forum', 'view forum', 'forum', 'name');\r
+INSERT INTO prefix_log_display VALUES ('forum', 'subscribe', 'forum', 'name');\r
+INSERT INTO prefix_log_display VALUES ('forum', 'unsubscribe', 'forum', 'name');\r
+\r
+select * from prefix_log_display where module = 'forum';\r
diff --git a/mod/journal/db/oci8po.sql b/mod/journal/db/oci8po.sql
new file mode 100755 (executable)
index 0000000..13c5f3e
--- /dev/null
@@ -0,0 +1,89 @@
+rem\r
+rem Table structure for table journal\r
+rem\r
+\r
+drop TABLE prefix_journal;\r
+CREATE TABLE prefix_journal (\r
+ id number(10) primary key,\r
+ course number(10) default '0' not null,\r
+ name varchar(255) default NULL,\r
+ intro varchar2(1024),\r
+ days number(5) default '7' not null,\r
+ assessed number(10) default '0' not null,\r
+ timemodified number(10) default '0' not null\r
+);\r
+\r
+drop sequence p_journal_seq;\r
+create sequence p_journal_seq;\r
+\r
+create or replace trigger p_journal_trig\r
+  before insert on prefix_journal\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_journal_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_journal(course,name,intro,days,assessed,timemodified) values(1,'1','1',1,1,1);\r
+insert into prefix_journal(course,name,intro,days,assessed,timemodified) values(2,'2','2',2,2,2);\r
+insert into prefix_journal(course,name,intro,days,assessed,timemodified) values(3,'3','3',3,3,3);\r
+insert into prefix_journal(course,name,intro,days,assessed,timemodified) values(4,'4','4',4,4,4);\r
+\r
+select * from prefix_journal order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table journal_entries\r
+rem\r
+\r
+drop TABLE prefix_journal_entries;\r
+CREATE TABLE prefix_journal_entries (\r
+ id number(10) primary key,\r
+ journal number(10) default '0' not null,\r
+ userid number(10) default '0' not null,\r
+ modified number(10) default '0' not null,\r
+ text varchar2(1024) NOT NULL,\r
+ format number(2) default '0' not null,\r
+ rating number(10) default '0',\r
+ commentt varchar2(1024),\r
+ teacher number(10) default '0' not null,\r
+ timemarked number(10) default '0' not null,\r
+ mailed number(1) default '0' not null\r
+);\r
+\r
+comment on table prefix_journal_entries is 'All the journal entries of all people';\r
+\r
+drop sequence p_journal_entries_seq;\r
+create sequence p_journal_entries_seq;\r
+\r
+create or replace trigger p_journal_entries_trig\r
+  before insert on prefix_journal_entries\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_journal_entries_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_journal_entries(journal,userid,modified,text,format,rating,commentt,teacher,timemarked,mailed) values(1,1,1,'1',1,1,'1',1,1,1);\r
+insert into prefix_journal_entries(journal,userid,modified,text,format,rating,commentt,teacher,timemarked,mailed) values(2,2,2,'2',2,2,'2',2,2,2);\r
+insert into prefix_journal_entries(journal,userid,modified,text,format,rating,commentt,teacher,timemarked,mailed) values(3,3,3,'3',3,3,'3',3,3,3);\r
+insert into prefix_journal_entries(journal,userid,modified,text,format,rating,commentt,teacher,timemarked,mailed) values(4,4,4,'4',4,4,'4',4,4,4);\r
+\r
+select * from prefix_journal_entries order by 1,2;\r
+\r
+rem\r
+rem Dumping data for table log_display\r
+rem\r
+delete from prefix_log_display where module = 'journal';\r
+INSERT INTO prefix_log_display VALUES ('journal', 'view', 'journal', 'name');\r
+INSERT INTO prefix_log_display VALUES ('journal', 'add entry', 'journal', 'name');\r
+INSERT INTO prefix_log_display VALUES ('journal', 'update entry', 'journal', 'name');\r
+INSERT INTO prefix_log_display VALUES ('journal', 'view responses', 'journal', 'name');\r
+\r
+col module format a10\r
+select * from prefix_log_display where module = 'journal';\r
diff --git a/mod/quiz/db/oci8po.sql b/mod/quiz/db/oci8po.sql
new file mode 100755 (executable)
index 0000000..d220b37
--- /dev/null
@@ -0,0 +1,630 @@
+rem\r
+rem Oracle - draft draft draft untested untested untested\r
+rem\r
+\r
+set echo on pagesize 60\r
+\r
+rem\r
+rem Table structure for table quiz\r
+rem\r
+\r
+drop table prefix_quiz;\r
+CREATE TABLE prefix_quiz (\r
+  id number(10) primary key,\r
+  course number(10)  default '0' not null,\r
+  name varchar2(255) default '' not null,\r
+  intro varchar2(255) NOT NULL,\r
+  timeopen number(10) default '0' not null,\r
+  timeclose number(10) default '0' not null,\r
+  attempts number(6) default '0' not null,\r
+  attemptonlast number(1) default '0',\r
+  feedback number(4) default '0' not null,\r
+  correctanswers number(4) default '1' not null,\r
+  grademethod number(4) default '1' not null,\r
+  review number(4) default '0' not null,\r
+  shufflequestions number(4) default '0' not null,\r
+  shuffleanswers number(4) default '0' not null,\r
+  questions varchar2(255) NOT NULL,\r
+  sumgrades number(10) default '0' not null,\r
+  grade number(10) default '0' not null,\r
+  timecreated number(10) default '0' not null,\r
+  timemodified number(10) default '0' not null\r
+);\r
+\r
+comment on table prefix_quiz is 'Main information about each quiz';\r
+\r
+drop sequence pqs;\r
+create sequence pqs;\r
+\r
+create or replace trigger pqt\r
+  before insert on prefix_quiz\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pqs.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_quiz(course,name,intro, timeopen,timeclose,attempts,attemptonlast,feedback,correctanswers,grademethod,review,shufflequestions,shuffleanswers,questions,sumgrades,grade,timecreated,timemodified) values(1,'1','1',1,1,1,1,1,1,1,1,1,1,'1',1,1,1,1);\r
+insert into prefix_quiz(course,name,intro, timeopen,timeclose,attempts,attemptonlast,feedback,correctanswers,grademethod,review,shufflequestions,shuffleanswers,questions,sumgrades,grade,timecreated,timemodified) values(2,'2','2',2,2,2,2,2,2,2,2,2,2,'2',2,2,2,2);\r
+insert into prefix_quiz(course,name,intro, timeopen,timeclose,attempts,attemptonlast,feedback,correctanswers,grademethod,review,shufflequestions,shuffleanswers,questions,sumgrades,grade,timecreated,timemodified) values(3,'3','3',3,3,3,3,3,3,3,3,3,3,'3',3,3,3,3);\r
+insert into prefix_quiz(course,name,intro, timeopen,timeclose,attempts,attemptonlast,feedback,correctanswers,grademethod,review,shufflequestions,shuffleanswers,questions,sumgrades,grade,timecreated,timemodified) values(4,'4','4',4,4,4,4,4,4,4,4,4,4,'4',4,4,4,4);\r
+\r
+select * from prefix_quiz order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table quiz_answers\r
+rem\r
+\r
+drop TABLE prefix_quiz_answers;\r
+CREATE TABLE prefix_quiz_answers (\r
+  id number(10)  NOT NULL  PRIMARY KEY,\r
+  question number(10)  default '0' not null,\r
+  answer varchar(255) default '' not null,\r
+  fraction varchar(10) default '0.0',\r
+  feedback varchar2(255) NOT NULL\r
+);\r
+\r
+COMMENT on table prefix_quiz_answers is 'Answers, with a fractional grade (0-1) and feedback';\r
+\r
+create index question on prefix_quiz_answers(question);\r
+\r
+drop sequence pqas;\r
+create sequence pqas;\r
+\r
+create or replace trigger pqat\r
+  before insert on prefix_quiz_answers\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pqas.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_quiz_answers(question,answer,fraction,feedback) values(1,'1','1','1');\r
+insert into prefix_quiz_answers(question,answer,fraction,feedback) values(2,'2','2','2');\r
+insert into prefix_quiz_answers(question,answer,fraction,feedback) values(3,'3','3','3');\r
+insert into prefix_quiz_answers(question,answer,fraction,feedback) values(4,'4','4','4');\r
+\r
+col feedback format a10\r
+select * from prefix_quiz_answers order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table quiz_attempts\r
+rem\r
+\r
+drop table prefix_quiz_attempts;\r
+CREATE TABLE prefix_quiz_attempts (\r
+  id number(10)  primary key,\r
+  quiz number(10)  default '0' not null,\r
+  userid number(10)  default '0' not null,\r
+  attempt number(6) default '0' not null,\r
+  sumgrades varchar(10) default '0.0' not null,\r
+  timestart number(10)  default '0' not null,\r
+  timefinish number(10)  default '0' not null,\r
+  timemodified number(10)  default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_attempts is 'Stores various attempts on a quiz';\r
+\r
+create index quiz on prefix_quiz_attempts(quiz);\r
+create index userid0 on prefix_quiz_attempts(userid);\r
+\r
+drop sequence pq_attempts_seq;\r
+create sequence pq_attempts_seq;\r
+\r
+create or replace trigger pq_attempts_trig\r
+  before insert on prefix_quiz_attempts\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_attempts_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_quiz_attempts(quiz,userid,attempt,sumgrades,timestart,timefinish,timemodified) values(1,1,1,'1',1,1,1);\r
+insert into prefix_quiz_attempts(quiz,userid,attempt,sumgrades,timestart,timefinish,timemodified) values(2,2,2,'2',2,2,2);\r
+insert into prefix_quiz_attempts(quiz,userid,attempt,sumgrades,timestart,timefinish,timemodified) values(3,3,3,'3',3,3,3);\r
+insert into prefix_quiz_attempts(quiz,userid,attempt,sumgrades,timestart,timefinish,timemodified) values(4,4,4,'4',4,4,4);\r
+\r
+select * from prefix_quiz_attempts order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table quiz_categories\r
+rem\r
+\r
+drop table prefix_quiz_categories;\r
+CREATE TABLE prefix_quiz_categories (\r
+  id number(10) primary key,\r
+  course number(10)  default '0' not null,\r
+  name varchar(255) default '' not null,\r
+  info varchar2(1024) not null,\r
+  publish number(4) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_categories is 'Categories are for grouping questions';\r
+\r
+drop sequence pq_categories_seq;\r
+create sequence pq_categories_seq;\r
+\r
+create or replace trigger pq_categories_trig\r
+  before insert on prefix_quiz_categories\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_categories_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_quiz_categories (course,name,info,publish) values (1,1,1,1);\r
+insert into prefix_quiz_categories (course,name,info,publish) values (2,2,2,2);\r
+insert into prefix_quiz_categories (course,name,info,publish) values (3,3,3,3);\r
+insert into prefix_quiz_categories (course,name,info,publish) values (4,4,4,4);\r
+\r
+select * from prefix_quiz_categories order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table quiz_grades\r
+rem\r
+\r
+drop TABLE prefix_quiz_grades;\r
+CREATE TABLE prefix_quiz_grades (\r
+  id number(10)  NOT NULL ,\r
+  quiz number(10)  default '0' not null,\r
+  userid number(10) default '0' not null,\r
+  grade varchar(10) default '0.0' not null,\r
+  timemodified number(10) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_grades is 'Final quiz grade (may be best of several attempts)';\r
+\r
+create index quiz0 on prefix_quiz_grades(quiz);\r
+create index userid1 on prefix_quiz_grades(userid);\r
+\r
+drop sequence pq_grades_seq;\r
+create sequence pq_grades_seq;\r
+\r
+create or replace trigger pq_grades_trig\r
+  before insert on prefix_quiz_grades\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_grades_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_quiz_grades (quiz,userid,grade,timemodified) values (1,1,1,1);\r
+insert into prefix_quiz_grades (quiz,userid,grade,timemodified) values (2,2,2,2);\r
+insert into prefix_quiz_grades (quiz,userid,grade,timemodified) values (3,3,3,3);\r
+insert into prefix_quiz_grades (quiz,userid,grade,timemodified) values (4,4,4,4);\r
+\r
+select * from prefix_quiz_grades order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table quiz_match\r
+rem\r
+\r
+drop TABLE prefix_quiz_match;\r
+CREATE TABLE prefix_quiz_match (\r
+  id number(10) primary key,\r
+  question number(10) default '0' not null,\r
+  subquestions varchar2(255) default '' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_match is 'Defines fixed matching questions';\r
+\r
+drop sequence pq_match_seq;\r
+create sequence pq_match_seq;\r
+\r
+create or replace trigger pq_match_trig\r
+  before insert on prefix_quiz_match\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_match_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+create index question4 on prefix_quiz_match(question);\r
+\r
+insert into prefix_quiz_match(question,subquestions) values(1,'1');\r
+insert into prefix_quiz_match(question,subquestions) values(2,'2');\r
+insert into prefix_quiz_match(question,subquestions) values(3,'3');\r
+insert into prefix_quiz_match(question,subquestions) values(4,'4');\r
+\r
+rem --------------------------------------------------------\r
+rem\r
+rem Table structure for table quiz_match_sub\r
+rem\r
+\r
+drop TABLE prefix_quiz_match_sub;\r
+CREATE TABLE prefix_quiz_match_sub (\r
+  id number(10)  primary key,\r
+  question number(10)  default '0' not null,\r
+  questiontext varchar2(1024) NOT NULL,\r
+  answertext varchar2(255) default '' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_match_sub is 'Defines the subquestions that make up a matching question';\r
+\r
+CREATE index question6 on prefix_quiz_match_sub (question);\r
+\r
+drop sequence pq_match_sub_seq;\r
+create sequence pq_match_sub_seq;\r
+\r
+create or replace trigger pq_match_sub_trig\r
+  before insert on prefix_quiz_match_sub\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_match_sub_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_quiz_match_sub (question,questiontext,answertext) values(1,'1','1');\r
+insert into prefix_quiz_match_sub (question,questiontext,answertext) values(2,'2','2');\r
+insert into prefix_quiz_match_sub (question,questiontext,answertext) values(3,'3','3');\r
+insert into prefix_quiz_match_sub (question,questiontext,answertext) values(4,'4','4');\r
+\r
+select * from prefix_quiz_match_sub order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+rem Table structure for table quiz_multichoice\r
+rem\r
+\r
+drop TABLE prefix_quiz_multichoice;\r
+CREATE TABLE prefix_quiz_multichoice (\r
+  id number(10) primary key,\r
+  question number(10) default '0' not null,\r
+  layout number(4) default '0' not null,\r
+  answers varchar(255) default '' not null,\r
+  single number(4) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_multichoice is 'Options for multiple choice questions';\r
+\r
+CREATE index question7 on prefix_quiz_multichoice(question);\r
+\r
+drop sequence pq_multichoice_seq;\r
+create sequence pq_multichoice_seq;\r
+\r
+create or replace trigger pq_multichoice_trig\r
+  before insert on prefix_quiz_multichoice\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_multichoice_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_quiz_multichoice (question,layout,answers,single) values (1,1,1,1);\r
+insert into prefix_quiz_multichoice (question,layout,answers,single) values (2,2,2,2);\r
+insert into prefix_quiz_multichoice (question,layout,answers,single) values (3,3,3,3);\r
+insert into prefix_quiz_multichoice (question,layout,answers,single) values (4,4,4,4);\r
+\r
+select * from prefix_quiz_multichoice order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table quiz_question_grades\r
+rem\r
+\r
+drop TABLE prefix_quiz_question_grades;\r
+CREATE TABLE prefix_quiz_question_grades (\r
+  id number(10)  NOT NULL ,\r
+  quiz number(10)  default '0',\r
+  question number(10) default '0',\r
+  grade number(6) default '0'\r
+);\r
+\r
+COMMENT on table prefix_quiz_question_grades is 'The grade for a question in a quiz';\r
+\r
+CREATE index quiz1 on prefix_quiz_question_grades(quiz);\r
+CREATE index question8 on prefix_quiz_question_grades(question);\r
+\r
+drop sequence pq_question_grades_seq;\r
+create sequence pq_question_grades_seq;\r
+\r
+create or replace trigger pq_question_grades_trig\r
+  before insert on prefix_quiz_question_grades\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_question_grades_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_quiz_question_grades (quiz,question,grade) values (1,1,1);\r
+insert into prefix_quiz_question_grades (quiz,question,grade) values (2,2,2);\r
+insert into prefix_quiz_question_grades (quiz,question,grade) values (3,3,3);\r
+insert into prefix_quiz_question_grades (quiz,question,grade) values (4,4,4);\r
+\r
+select * from prefix_quiz_question_grades order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table quiz_questions\r
+rem\r
+\r
+drop TABLE prefix_quiz_questions;\r
+CREATE TABLE prefix_quiz_questions (\r
+  id number(10) primary key,\r
+  category number(10) default '0' not null,\r
+  name varchar(255) default '' not null,\r
+  questiontext varchar2(1024) NOT NULL,\r
+  image varchar(255) default '' not null,\r
+  defaultgrade number(4) default '1' not null,\r
+  qtype number(6) default '0' not null,\r
+  stamp varchar2(255) default '' not null,\r
+  version number(10) default '1' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_questions is 'The quiz questions themselves';\r
+\r
+drop sequence pq_questions_seq;\r
+create sequence pq_questions_seq;\r
+\r
+create or replace trigger pq_questions_trig\r
+  before insert on prefix_quiz_questions\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_questions_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_quiz_questions (category,name,questiontext,image,defaultgrade,qtype,stamp,version) values(1,'1','1','1',1,1,'1',1);\r
+insert into prefix_quiz_questions (category,name,questiontext,image,defaultgrade,qtype,stamp,version) values(2,'2','2','2',2,2,'2',2);\r
+insert into prefix_quiz_questions (category,name,questiontext,image,defaultgrade,qtype,stamp,version) values(3,'3','3','3',3,3,'3',3);\r
+insert into prefix_quiz_questions (category,name,questiontext,image,defaultgrade,qtype,stamp,version) values(4,'4','4','4',4,4,'4',4);\r
+\r
+select * from prefix_quiz_questions order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+rem\r
+rem Table structure for table quiz_randomsamatch\r
+rem\r
+\r
+drop TABLE prefix_quiz_randomsamatch;\r
+CREATE TABLE prefix_quiz_randomsamatch (\r
+  id number(10) primary key,\r
+  question number(10) default '0' not null,\r
+  choose number(4) DEFAULT '4' NOT NULL\r
+);\r
+\r
+COMMENT on table prefix_quiz_randomsamatch is 'Info about a random short-answer matching question';\r
+\r
+drop sequence pq_quiz_randoms_seq;\r
+create sequence pq_quiz_randoms_seq;\r
+\r
+create or replace trigger pq_quiz_randoms_trig\r
+  before insert on prefix_quiz_randomsamatch\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_quiz_randoms_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+\r
+create index question0 on prefix_quiz_randomsamatch (question);\r
+\r
+insert into prefix_quiz_randomsamatch(id,question,choose) values(1,1,1);\r
+insert into prefix_quiz_randomsamatch(id,question,choose) values(2,2,2);\r
+insert into prefix_quiz_randomsamatch(id,question,choose) values(3,3,3);\r
+insert into prefix_quiz_randomsamatch(id,question,choose) values(4,4,4);\r
+\r
+select * from prefix_quiz_randomsamatch order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table quiz_responses\r
+rem\r
+\r
+drop TABLE prefix_quiz_responses;\r
+CREATE TABLE prefix_quiz_responses (\r
+  id number(10)  primary key,\r
+  attempt number(10) default '0' not null,\r
+  question number(10) default '0' not null,\r
+  answer varchar(255) default '' not null,\r
+  grade varchar(10) default '0.0' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_questions is 'Stores user responses to a quiz, and percentage grades';\r
+\r
+create index attempt on prefix_quiz_responses(attempt);\r
+create index question1 on prefix_quiz_responses(question);\r
+\r
+drop sequence pq_responses_seq;\r
+create sequence pq_responses_seq;\r
+\r
+create or replace trigger pq_responses_trig\r
+  before insert on prefix_quiz_responses\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_responses_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_quiz_responses (attempt,question,answer,grade) values (1,1,'answer1','grade1');\r
+insert into prefix_quiz_responses (attempt,question,answer,grade) values (2,2,'answer2','grade2');\r
+insert into prefix_quiz_responses (attempt,question,answer,grade) values (3,3,'answer3','grade3');\r
+insert into prefix_quiz_responses (attempt,question,answer,grade) values (4,4,'answer4','grade4');\r
+\r
+select * from prefix_quiz_responses order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table quiz_shortanswer\r
+rem\r
+\r
+drop TABLE prefix_quiz_shortanswer;\r
+CREATE TABLE prefix_quiz_shortanswer (\r
+  id number(10) primary key,\r
+  question number(10) default '0' not null,\r
+  answers varchar(255) default '' not null,\r
+  usecase number(2) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_shortanswer is 'Options for short answer questions';\r
+\r
+create index question2 on prefix_quiz_shortanswer(question);\r
+\r
+drop sequence pq_shortanswer_seq;\r
+create sequence pq_shortanswer_seq;\r
+\r
+create or replace trigger pq_shortanswer_trig\r
+  before insert on prefix_quiz_shortanswer\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_shortanswer_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_quiz_shortanswer (question,answers,usecase) values (1,'answer1',1);\r
+insert into prefix_quiz_shortanswer (question,answers,usecase) values (2,'answer2',2);\r
+insert into prefix_quiz_shortanswer (question,answers,usecase) values (3,'answer3',3);\r
+insert into prefix_quiz_shortanswer (question,answers,usecase) values (4,'answer4',4);\r
+\r
+select * from prefix_quiz_shortanswer order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+\r
+rem\r
+rem Table structure for table quiz_numerical\r
+rem\r
+\r
+drop TABLE prefix_quiz_numerical;\r
+CREATE TABLE prefix_quiz_numerical (\r
+  id number(10) primary key,\r
+  question number(10) default '0' not null,\r
+  answer number(10) default '0' not null,\r
+  min varchar2(255) default '' not null,\r
+  max varchar2(255) default '' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_numerical is 'Options for numerical questions';\r
+\r
+create index answer on prefix_quiz_numerical(answer);\r
+\r
+drop sequence pq_numerical_seq;\r
+create sequence pq_numerical_seq;\r
+\r
+create or replace trigger pq_numerical_trig\r
+  before insert on prefix_quiz_numerical\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_numerical_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_quiz_numerical (question,answer,min,max) values (1,1,'1','1');\r
+insert into prefix_quiz_numerical (question,answer,min,max) values (2,2,'2','2');\r
+insert into prefix_quiz_numerical (question,answer,min,max) values (3,3,'3','3');\r
+insert into prefix_quiz_numerical (question,answer,min,max) values (4,4,'4','4');\r
+\r
+select * from prefix_quiz_numerical order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+rem\r
+rem Table structure for table quiz_truefalse\r
+rem\r
+\r
+drop TABLE prefix_quiz_truefalse;\r
+CREATE TABLE prefix_quiz_truefalse (\r
+  id number(10)  primary key,\r
+  question number(10)  default '0' not null,\r
+  trueanswer number(10)  default '0' not null,\r
+  falseanswer number(10) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_truefalse is 'Options for True-False questions';\r
+\r
+create index question3 on prefix_quiz_truefalse(question);\r
+\r
+drop sequence pq_truefalse_seq;\r
+create sequence pq_truefalse_seq;\r
+\r
+create or replace trigger pq_truefalse_trig\r
+  before insert on prefix_quiz_truefalse\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_truefalse_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_quiz_truefalse (question,trueanswer,falseanswer) values (1,1,1);\r
+insert into prefix_quiz_truefalse (question,trueanswer,falseanswer) values (2,2,2);\r
+insert into prefix_quiz_truefalse (question,trueanswer,falseanswer) values (3,3,3);\r
+insert into prefix_quiz_truefalse (question,trueanswer,falseanswer) values (4,4,4);\r
+\r
+select * from prefix_quiz_truefalse order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+rem\r
+rem Table structure for table quiz_multianswers\r
+rem\r
+\r
+drop TABLE prefix_quiz_multianswers;\r
+CREATE TABLE prefix_quiz_multianswers (\r
+  id number(10)  primary key,\r
+  question number(10)  default '0' not null,\r
+  trueanswer number(10)  default '0' not null,\r
+  falseanswer number(10) default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_quiz_multianswers is 'Options for True-False questions';\r
+\r
+create index question5 on prefix_quiz_multianswers(question);\r
+\r
+drop sequence pq_multianswers_seq;\r
+create sequence pq_multianswers_seq;\r
+\r
+create or replace trigger pq_multianswers_trig\r
+  before insert on prefix_quiz_multianswers\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select pq_multianswers_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+insert into prefix_quiz_multianswers (question,trueanswer,falseanswer) values (1,1,1);\r
+insert into prefix_quiz_multianswers (question,trueanswer,falseanswer) values (2,2,2);\r
+insert into prefix_quiz_multianswers (question,trueanswer,falseanswer) values (3,3,3);\r
+insert into prefix_quiz_multianswers (question,trueanswer,falseanswer) values (4,4,4);\r
+\r
+select * from prefix_quiz_multianswers order by 1,2;\r
+\r
+delete from prefix_log_display where module='quiz';\r
+INSERT INTO prefix_log_display VALUES ('quiz', 'view', 'quiz', 'name');\r
+INSERT INTO prefix_log_display VALUES ('quiz', 'report', 'quiz', 'name');\r
+INSERT INTO prefix_log_display VALUES ('quiz', 'attempt', 'quiz', 'name');\r
+INSERT INTO prefix_log_display VALUES ('quiz', 'submit', 'quiz', 'name');\r
+\r
+select * from prefix_log_display where module='quiz' order by 1,2;\r
+\r
diff --git a/mod/resource/db/oci8po.sql b/mod/resource/db/oci8po.sql
new file mode 100755 (executable)
index 0000000..a90de96
--- /dev/null
@@ -0,0 +1,45 @@
+rem\r
+rem Table structure for table resource\r
+rem\r
+\r
+drop TABLE prefix_resource;\r
+CREATE TABLE prefix_resource (\r
+  id number(10) primary key,\r
+  course number(10)  default '0' not null,\r
+  name varchar2(255) default '' not null,\r
+  type number(4) default '0' not null,\r
+  reference varchar2(255) default NULL,\r
+  summary varchar2(1024) NOT NULL,\r
+  alltext varchar2(1024) NOT NULL,\r
+  timemodified number(10)  default '0' not null\r
+);\r
+\r
+drop sequence p_resource_seq;\r
+create sequence p_resource_seq;\r
+\r
+create or replace trigger p_resource_trig\r
+  before insert on prefix_resource\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_resource_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+comment on table prefix_resource is 'table of resources';\r
+\r
+insert into prefix_resource(course,name,type,reference,summary,alltext,timemodified) values(1,'1',1,1,'1','1',1);\r
+insert into prefix_resource(course,name,type,reference,summary,alltext,timemodified) values(2,'2',2,2,'2','2',2);\r
+insert into prefix_resource(course,name,type,reference,summary,alltext,timemodified) values(3,'3',3,3,'3','3',3);\r
+insert into prefix_resource(course,name,type,reference,summary,alltext,timemodified) values(4,'4',4,4,'4','4',4);\r
+\r
+select * from prefix_resource order by 1,2;\r
+\r
+rem\r
+rem Dumping data for table log_display\r
+rem\r
+\r
+delete from prefix_log_display where module = 'resource';\r
+INSERT INTO prefix_log_display VALUES ('resource', 'view', 'resource', 'name');\r
+select * from prefix_log_display where module = 'resource';\r
diff --git a/mod/survey/db/oci8po.sql b/mod/survey/db/oci8po.sql
new file mode 100755 (executable)
index 0000000..7e1599e
--- /dev/null
@@ -0,0 +1,227 @@
+rem\r
+rem Table structure for table survey\r
+rem\r
+\r
+drop TABLE prefix_survey;\r
+CREATE TABLE prefix_survey (\r
+  id number(10) primary key,\r
+  course number(10) default '0' not null,\r
+  template number(10) default '0' not null,\r
+  days number(6) default '0' not null,\r
+  timecreated number(10) default '0' not null,\r
+  timemodified number(10) default '0' not null,\r
+  name varchar2(255) default '' not null,\r
+  intro varchar2(1024),\r
+  questions varchar2(255) default NULL\r
+);\r
+\r
+drop sequence p_survey_seq;\r
+create sequence p_survey_seq;\r
+\r
+create or replace trigger p_survey_trig\r
+  before insert on prefix_survey\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_survey_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+COMMENT on table prefix_survey is 'all surveys';\r
+\r
+INSERT INTO prefix_survey (course, template, days, timecreated, timemodified, name, intro, questions) VALUES (0, 0, 0, 985017600, 985017600, 'collesaname', 'collesaintro', '25,26,27,28,29,30,43,44');\r
+INSERT INTO prefix_survey (course, template, days, timecreated, timemodified, name, intro, questions) VALUES (0, 0, 0, 985017600, 985017600, 'collespname', 'collespintro', '31,32,33,34,35,36,43,44');\r
+INSERT INTO prefix_survey (course, template, days, timecreated, timemodified, name, intro, questions) VALUES (0, 0, 0, 985017600, 985017600, 'collesapname', 'collesapintro', '37,38,39,40,41,42,43,44');\r
+INSERT INTO prefix_survey (course, template, days, timecreated, timemodified, name, intro, questions) VALUES (0, 0, 0, 985017600, 985017600, 'attlsname', 'attlsintro', '65,67,68');\r
+\r
+select * from prefix_survey order by 1,2;\r
+\r
+rem\r
+rem Table structure for table survey_analysis\r
+rem\r
+\r
+drop TABLE prefix_survey_analysis;\r
+CREATE TABLE prefix_survey_analysis (\r
+id number(10) primary key,\r
+survey number(10) default '0' not null,\r
+userid number(10) default '0' not null,\r
+notes varchar2(1024) NOT NULL\r
+\r
+drop sequence p_survey_analysis_seq;\r
+create sequence p_survey_analysis_seq;\r
+\r
+create or replace trigger p_survey_analysis_trig\r
+  before insert on prefix_survey_analysis\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_survey_analysis_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+);\r
+\r
+comment on table prefix_survey_analysis is 'Survey analysis';\r
+\r
+rem\r
+rem Dumping data for table survey_analysis\r
+rem\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table survey_answers\r
+rem\r
+\r
+drop TABLE prefix_survey_answers;\r
+CREATE TABLE prefix_survey_answers (\r
+id number(10) primary key,\r
+userid number(10) default '0' not null,\r
+survey number(10) default '0' not null,\r
+question number(10) default '0' not null,\r
+time number(10) default NULL,\r
+answer1 varchar2(255) default NULL,\r
+answer2 varchar2(255) default NULL\r
+);\r
+\r
+drop sequence p_survey_answers_seq;\r
+create sequence p_survey_answers_seq;\r
+\r
+create or replace trigger p_survey_answers_trig\r
+before insert on prefix_survey_answers\r
+referencing new as new_row\r
+for each row\r
+begin\r
+  select p_survey_answers_seq.nextval into :new_row.id from dual;\r
+end;\r
+.\r
+/\r
+\r
+\r
+rem\r
+rem Dumping data for table survey_answers\r
+rem\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table survey_questions\r
+rem\r
+\r
+drop TABLE prefix_survey_questions;\r
+CREATE TABLE prefix_survey_questions (\r
+id number(10) primary key,\r
+text varchar2(255) default '' not null,\r
+shorttext varchar2(30) default '' not null,\r
+multi varchar2(100) default '' not null,\r
+intro varchar2(50) default NULL,\r
+type number(3) default '0' not null,\r
+options varchar2(1024)\r
+);\r
+\r
+comment on table prefix_survey_questions is 'structure for survey_questions';\r
+\r
+drop sequence p_survey_questions_seq;\r
+create sequence p_survey_questions_seq;\r
+\r
+create or replace trigger p_survey_questions_trig\r
+  before insert on prefix_survey_questions\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_survey_questions_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+rem\r
+rem Dumping data for table survey_questions\r
+rem\r
+\r
+INSERT INTO prefix_survey_questions ( text, shorttext, multi, intro, type, options) VALUES ('colles1', 'colles1short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles2', 'colles2short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles3', 'colles3short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles4', 'colles4short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles5', 'colles5short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles6', 'colles6short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles7', 'colles7short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles8', 'colles8short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles9', 'colles9short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ( 'colles10', 'colles10short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ( 'colles11', 'colles11short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ( 'colles12', 'colles12short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ( 'colles13', 'colles13short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles14', 'colles14short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles15', 'colles15short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles16', 'colles16short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles17', 'colles17short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles18', 'colles18short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles19', 'colles19short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles20', 'colles20short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles21', 'colles21short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles22', 'colles22short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles23', 'colles23short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('colles24', 'colles24short', '1', '1', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm1', 'collesm1short', '1,2,3,4', 'collesmintro', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm2', 'collesm2short', '5,6,7,8', 'collesmintro', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm3', 'collesm3short', '9,10,11,12', 'collesmintro', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm4', 'collesm4short', '13,14,15,16', 'collesmintro', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm5', 'collesm5short', '17,18,19,20', 'collesmintro', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm6', 'collesm6short', '21,22,23,24', 'collesmintro', 1, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm1', 'collesm1short', '1,2,3,4', 'collesmintro', 2, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm2', 'collesm2short', '5,6,7,8', 'collesmintro', 2, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm3', 'collesm3short', '9,10,11,12', 'collesmintro', 2, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm4', 'collesm4short', '13,14,15,16', 'collesmintro', 2, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm5', 'collesm5short', '17,18,19,20', 'collesmintro', 2, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm6', 'collesm6short', '21,22,23,24', 'collesmintro', 2, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm1', 'collesm1short', '1,2,3,4', 'collesmintro', 3, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm2', 'collesm2short', '5,6,7,8', 'collesmintro', 3, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm3', 'collesm3short', '9,10,11,12', 'collesmintro', 3, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm4', 'collesm4short', '13,14,15,16', 'collesmintro', 3, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm5', 'collesm5short', '17,18,19,20', 'collesmintro', 3, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('collesm6', 'collesm6short', '21,22,23,24', 'collesmintro', 3, 'scaletimes5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('howlong', '1', '1', '1', 1, 'howlongoptions');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('othercomments', '1', '1', '1', 0, '');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls20', 'attls20short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls14', 'attls14short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls15', 'attls15short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls16', 'attls16short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls17', 'attls17short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls18', 'attls18short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls19', 'attls19short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls12', 'attls12short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls13', 'attls13short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls11', 'attls11short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls10', 'attls10short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls9', 'attls9short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls8', 'attls8short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls7', 'attls7short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls6', 'attls6short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls5', 'attls5short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls4', 'attls4short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls3', 'attls3short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls1', 'attls1short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attls2', 'attls2short', '1', '1', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attlsm1', 'attlsm1', '45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64', 'attlsmintro', 1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attlsm2', 'attlsm2', '63,62,59,57,55,49,52,50,48,47', 'attlsmintro', -1, 'scaleagree5');\r
+INSERT INTO prefix_survey_questions (text, shorttext, multi, intro, type, options) VALUES ('attlsm3', 'attlsm3', '46,54,45,51,60,53,56,58,61,64', 'attlsmintro', -1, 'scaleagree5');\r
+\r
+rem select * from prefix_survey_questions where text like 'colles%' or text like 'attlsm%'\r
+\r
+col id format 99\r
+select * from prefix_survey_questions;\r
+\r
+\r
+rem\r
+rem Dumping data for table log_display\r
+rem\r
+\r
+delete from prefix_log_display where module = 'survey';\r
+INSERT INTO prefix_log_display VALUES ('survey', 'download', 'survey', 'name');\r
+INSERT INTO prefix_log_display VALUES ('survey', 'view form', 'survey', 'name');\r
+INSERT INTO prefix_log_display VALUES ('survey', 'view graph', 'survey', 'name');\r
+INSERT INTO prefix_log_display VALUES ('survey', 'view report', 'survey', 'name');\r
+INSERT INTO prefix_log_display VALUES ('survey', 'submit', 'survey', 'name');\r
+select * from prefix_log_display where module = 'survey';\r
diff --git a/mod/workshop/db/oci8po.sql b/mod/workshop/db/oci8po.sql
new file mode 100755 (executable)
index 0000000..720e581
--- /dev/null
@@ -0,0 +1,316 @@
+rem\r
+rem Table structure for table workshop\r
+rem\r
+\r
+drop TABLE prefix_workshop;\r
+CREATE TABLE prefix_workshop (\r
+  id number(10) primary key,\r
+  course number(10)  default '0' not null,\r
+  name varchar2(255) default '' not null,\r
+  description varchar2(255) NOT NULL,\r
+  nelements number(3)  default '1' not null,\r
+  phase number(2)  default '0' not null,\r
+  format number(2)  default '0' not null,\r
+  gradingstrategy number(2)  default '1' not null,\r
+  resubmit number(2)  default '0' not null,\r
+  agreeassessments number(2)  default '0' not null,\r
+  hidegrades number(2)  default '0' not null,\r
+  anonymous number(2)  default '0' not null,\r
+  includeself number(2)  default '0' not null,\r
+  maxbytes number(10)  default '100000' not null,\r
+  deadline number(10)  default '0' not null,\r
+  grade number(10) default '0' not null,\r
+  ntassessments number(3)  default '0' not null,\r
+  nsassessments number(3)  default '0' not null,\r
+  timemodified number(10)  default '0' not null,\r
+  mergegrades number(3)  default '0' not null,\r
+  teacherweight number(3)  default '5' NOT NULL,\r
+  peerweight number(3)  default '5' NOT NULL,\r
+  includeteachersgrade number(3)  default '0' not null,\r
+  biasweight number(3)  default '5' NOT NULL,\r
+  reliabilityweight number(3)  default '5' NOT NULL,\r
+  gradingweight number(3)  default '5' NOT NULL,\r
+  showleaguetable number(3)  default '0' not null\r
+);\r
+\r
+COMMENT on table prefix_workshop is 'Defines workshop';\r
+\r
+drop sequence p_workshop_seq;\r
+create sequence p_workshop_seq;\r
+\r
+create or replace trigger p_workshop_trig\r
+  before insert on prefix_workshop\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_workshop_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_workshop( course,name,description,nelements,phase,format,gradingstrategy,resubmit,agreeassessments,hidegrades,anonymous,includeself,maxbytes,deadline,grade,ntassessments,nsassessments,timemodified,mergegrades,teacherweight,peerweight,includeteachersgrade,biasweight,reliabilityweight,gradingweight,showleaguetable) values (1,'1','1',1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1);\r
+insert into prefix_workshop( course,name,description,nelements,phase,format,gradingstrategy,resubmit,agreeassessments,hidegrades,anonymous,includeself,maxbytes,deadline,grade,ntassessments,nsassessments,timemodified,mergegrades,teacherweight,peerweight,includeteachersgrade,biasweight,reliabilityweight,gradingweight,showleaguetable) values (2,'2','2',2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2);\r
+insert into prefix_workshop( course,name,description,nelements,phase,format,gradingstrategy,resubmit,agreeassessments,hidegrades,anonymous,includeself,maxbytes,deadline,grade,ntassessments,nsassessments,timemodified,mergegrades,teacherweight,peerweight,includeteachersgrade,biasweight,reliabilityweight,gradingweight,showleaguetable) values (3,'3','3',3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3);\r
+insert into prefix_workshop( course,name,description,nelements,phase,format,gradingstrategy,resubmit,agreeassessments,hidegrades,anonymous,includeself,maxbytes,deadline,grade,ntassessments,nsassessments,timemodified,mergegrades,teacherweight,peerweight,includeteachersgrade,biasweight,reliabilityweight,gradingweight,showleaguetable) values (4,'4','4',4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4);\r
+\r
+col format format 9999\r
+select * from prefix_workshop order by 1,2;\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table workshop_submissions\r
+rem\r
+\r
+drop TABLE prefix_workshop_submissions;\r
+CREATE TABLE prefix_workshop_submissions (\r
+  id number(10) primary key,\r
+  workshopid number(10)  default '0' not null,\r
+  userid number(10)  default '0' not null,\r
+  title varchar2(100) default '' not null,\r
+  timecreated number(10)  default '0' not null,\r
+  mailed number(2)  default '0' not null,\r
+  teachergrade number(3)  default '0' not null,\r
+  peergrade number(3)  default '0' not null,\r
+  biasgrade number(3)  default '0' not null,\r
+  reliabilitygrade number(3)  default '0' not null,\r
+  gradinggrade number(3)  default '0' not null,\r
+  finalgrade number(3)  default '0' not null\r
+);\r
+\r
+CREATE INDEX title ON prefix_workshop_submissions(title);\r
+\r
+comment on TABLE prefix_workshop_submissions is 'Info about submitted work from teacher and students';\r
+\r
+drop sequence p_workshop_submissions_seq;\r
+create sequence p_workshop_submissions_seq;\r
+\r
+create or replace trigger p_workshop_submissions_trig\r
+  before insert on prefix_workshop_submissions\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_workshop_submissions_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_workshop_submissions ( workshopid,userid,title,timecreated,mailed,teachergrade,peergrade,biasgrade,reliabilitygrade,gradinggrade,finalgrade) values(1,1,'1',1,1,1,1,1,1,1,1);\r
+insert into prefix_workshop_submissions ( workshopid,userid,title,timecreated,mailed,teachergrade,peergrade,biasgrade,reliabilitygrade,gradinggrade,finalgrade) values(2,2,'2',2,2,2,2,2,2,2,2);\r
+insert into prefix_workshop_submissions ( workshopid,userid,title,timecreated,mailed,teachergrade,peergrade,biasgrade,reliabilitygrade,gradinggrade,finalgrade) values(3,3,'3',3,3,3,3,3,3,3,3);\r
+insert into prefix_workshop_submissions ( workshopid,userid,title,timecreated,mailed,teachergrade,peergrade,biasgrade,reliabilitygrade,gradinggrade,finalgrade) values(4,4,'4',4,4,4,4,4,4,4,4);\r
+\r
+select * from prefix_workshop_submissions order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table workshop_assessments\r
+rem\r
+\r
+drop TABLE prefix_workshop_assessments;\r
+CREATE TABLE prefix_workshop_assessments (\r
+  id number(10) primary key,\r
+  workshopid number(10)  default '0' not null,\r
+  submissionid number(10)  default '0' not null,\r
+  userid number(10)  default '0' not null,\r
+  timecreated number(10)  default '0' not null,\r
+  timegraded number(10)  default '0' not null,\r
+  timeagreed number(10)  default '0' not null,\r
+  grade float default '0' not null,\r
+  gradinggrade number(3) default '0' not null,\r
+  mailed number(2)  default '0' not null,\r
+  generalcomment varchar2(255) NOT NULL,\r
+  teachercomment varchar2(255) NOT NULL\r
+);\r
+\r
+comment on TABLE prefix_workshop_assessments is 'Info about assessments by teacher and students';\r
+\r
+drop sequence p_workshop_assessments_seq;\r
+create sequence p_workshop_assessments_seq;\r
+\r
+create or replace trigger p_workshop_assessments_trig\r
+  before insert on prefix_workshop_assessments\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_workshop_assessments_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_workshop_assessments (workshopid,submissionid,userid,timecreated,timegraded,timeagreed,grade,gradinggrade,mailed,generalcomment,teachercomment) values(1,1,1,1,1,1,1,1,1,'1','1'); \r
+insert into prefix_workshop_assessments (workshopid,submissionid,userid,timecreated,timegraded,timeagreed,grade,gradinggrade,mailed,generalcomment,teachercomment) values(2,2,2,2,2,2,2,2,2,'2','2'); \r
+insert into prefix_workshop_assessments (workshopid,submissionid,userid,timecreated,timegraded,timeagreed,grade,gradinggrade,mailed,generalcomment,teachercomment) values(3,3,3,3,3,3,3,3,3,'3','3'); \r
+insert into prefix_workshop_assessments (workshopid,submissionid,userid,timecreated,timegraded,timeagreed,grade,gradinggrade,mailed,generalcomment,teachercomment) values(4,4,4,4,4,4,4,4,4,'4','4'); \r
+\r
+select * from prefix_workshop_assessments order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table workshop_elements\r
+rem\r
+\r
+drop TABLE prefix_workshop_elements;\r
+CREATE TABLE prefix_workshop_elements (\r
+  id number(10) primary key,\r
+  workshopid number(10)  default '0' not null,\r
+  elementno number(3)  default '0' not null,\r
+  description varchar2(255) NOT NULL,\r
+  scale number(3)  default '0' not null,\r
+  maxscore number(3)  default '1' not null,\r
+  weight float default '1.0' not null\r
+);\r
+\r
+comment on TABLE prefix_workshop_elements is 'Info about marking scheme of assignment';\r
+\r
+drop sequence p_workshop_elements_seq;\r
+create sequence p_workshop_elements_seq;\r
+\r
+create or replace trigger p_workshop_elements_trig\r
+  before insert on prefix_workshop_elements\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_workshop_elements_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_workshop_elements ( workshopid, elementno, description, scale, maxscore, weight) values(1,1,'1',1,1,1);\r
+insert into prefix_workshop_elements ( workshopid, elementno, description, scale, maxscore, weight) values(2,2,'2',2,2,2);\r
+insert into prefix_workshop_elements ( workshopid, elementno, description, scale, maxscore, weight) values(3,3,'3',3,3,3);\r
+insert into prefix_workshop_elements ( workshopid, elementno, description, scale, maxscore, weight) values(4,4,'4',4,4,4);\r
+\r
+select * from prefix_workshop_elements order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table workshop_rubrics\r
+rem\r
+\r
+drop TABLE prefix_workshop_rubrics;\r
+CREATE TABLE prefix_workshop_rubrics (\r
+  id number(10) primary key,\r
+  workshopid number(10)  default '0' not null,\r
+  elementno number(10)  default '0' not null,\r
+  rubricno number(3)  default '0' not null,\r
+  description varchar2(255) NOT NULL\r
+  );\r
+\r
+comment on TABLE prefix_workshop_rubrics is 'Info about the rubrics marking scheme';\r
+\r
+drop sequence p_workshop_rubrics_seq;\r
+create sequence p_workshop_rubrics_seq;\r
+\r
+create or replace trigger p_workshop_rubrics_trig\r
+  before insert on prefix_workshop_rubrics\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_workshop_rubrics_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_workshop_rubrics ( workshopid,elementno,rubricno,description) values(1,1,1,'1');\r
+insert into prefix_workshop_rubrics ( workshopid,elementno,rubricno,description) values(2,2,2,'2');\r
+insert into prefix_workshop_rubrics ( workshopid,elementno,rubricno,description) values(3,3,3,'3');\r
+insert into prefix_workshop_rubrics ( workshopid,elementno,rubricno,description) values(4,4,4,'4');\r
+\r
+select * from prefix_workshop_rubrics order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table workshop_grades\r
+rem\r
+\r
+drop TABLE prefix_workshop_grades;\r
+CREATE TABLE prefix_workshop_grades (\r
+  id number(10) primary key,\r
+  workshopid number(10)  default '0' not null, \r
+  assessmentid number(10)  default '0' not null,\r
+  elementno number(10)  default '0' not null,\r
+  feedback varchar2(255) default '' not null,\r
+  grade number(3) default '0' not null\r
+  );\r
+\r
+comment on TABLE prefix_workshop_grades is 'Info about individual grades given to each element';\r
+\r
+drop sequence p_workshop_grades_seq;\r
+create sequence p_workshop_grades_seq;\r
+\r
+create or replace trigger p_workshop_grades_trig\r
+  before insert on prefix_workshop_grades\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_workshop_grades_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_workshop_grades (workshopid,assessmentid,elementno,feedback,grade) values(1,1,1,'1',1);\r
+insert into prefix_workshop_grades (workshopid,assessmentid,elementno,feedback,grade) values(2,2,2,'2',2);\r
+insert into prefix_workshop_grades (workshopid,assessmentid,elementno,feedback,grade) values(3,3,3,'3',3);\r
+insert into prefix_workshop_grades (workshopid,assessmentid,elementno,feedback,grade) values(4,4,4,'4',4);\r
+\r
+col feedback format a10\r
+select * from prefix_workshop_grades order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+rem\r
+rem Table structure for table workshop_comments\r
+rem\r
+\r
+drop TABLE prefix_workshop_comments;\r
+CREATE TABLE prefix_workshop_comments (\r
+  id number(10) primary key,\r
+  workshopid number(10)  default '0' not null, \r
+  assessmentid number(10)  default '0' not null,\r
+  userid number(10)  default '0' not null,\r
+  timecreated number(10)  default '0' not null,\r
+  mailed number(2)  default '0' not null,\r
+  comments varchar2(255) NOT NULL\r
+  );\r
+\r
+comment on TABLE prefix_workshop_comments is 'Defines comments';\r
+\r
+drop sequence p_workshop_comments_seq;\r
+create sequence p_workshop_comments_seq;\r
+\r
+create or replace trigger p_workshop_comments_trig\r
+  before insert on prefix_workshop_comments\r
+  referencing new as new_row\r
+  for each row\r
+  begin\r
+    select p_workshop_comments_seq.nextval into :new_row.id from dual;\r
+  end;\r
+.\r
+/\r
+\r
+insert into prefix_workshop_comments ( workshopid, assessmentid, userid, timecreated, mailed, comments) values(1,1,1,1,1,'1');\r
+insert into prefix_workshop_comments ( workshopid, assessmentid, userid, timecreated, mailed, comments) values(2,2,2,2,2,'2');\r
+insert into prefix_workshop_comments ( workshopid, assessmentid, userid, timecreated, mailed, comments) values(3,3,3,3,3,'3');\r
+insert into prefix_workshop_comments ( workshopid, assessmentid, userid, timecreated, mailed, comments) values(4,4,4,4,4,'4');\r
+\r
+select * from prefix_workshop_comments order by 1,2;\r
+\r
+rem --------------------------------------------------------\r
+\r
+delete from prefix_log_display where module='workshop';\r
+\r
+INSERT INTO prefix_log_display VALUES ('workshop', 'assess', 'workshop', 'name');\r
+INSERT INTO prefix_log_display VALUES ('workshop', 'close', 'workshop', 'name');\r
+INSERT INTO prefix_log_display VALUES ('workshop', 'display grades', 'workshop', 'name');\r
+INSERT INTO prefix_log_display VALUES ('workshop', 'grade', 'workshop', 'name');\r
+INSERT INTO prefix_log_display VALUES ('workshop', 'hide grades', 'workshop', 'name');\r
+INSERT INTO prefix_log_display VALUES ('workshop', 'open', 'workshop', 'name');\r
+INSERT INTO prefix_log_display VALUES ('workshop', 'submit', 'workshop', 'name');\r
+INSERT INTO prefix_log_display VALUES ('workshop', 'view', 'workshop', 'name');\r
+INSERT INTO prefix_log_display VALUES ('workshop', 'update', 'workshop', 'name');\r
+\r
+select * from prefix_log_display where module='workshop' order by 1,2;\r