2 function upgrade_do15() {
\r
4 if (upgrade_checkinstall(15))
\r
5 return "already installed";
\r
7 // first two queries are needed for people running the development version
\r
9 if (strstr($nucleus['version'],'dev')) {
\r
10 upgrade_query('Renaming table nucleus_plugins_events','RENAME TABLE '.sql_table('plugins_events').' TO '.sql_table('plugin_event'));
\r
11 upgrade_query('Renaming table nucleus_plugins','RENAME TABLE '.sql_table('plugins').' TO '.sql_table('plugin'));
\r
14 // create nucleus_plugin_event
\r
15 $query = 'CREATE TABLE '.sql_table('plugin_event').' (pid int(11) NOT NULL, event varchar(40)) TYPE=MyISAM;';
\r
16 upgrade_query("Creating nucleus_plugin_event table",$query);
\r
18 // create nucleus_plugin
\r
19 $query = 'CREATE TABLE '.sql_table('plugin')." (pid int(11) NOT NULL auto_increment, pfile varchar(40) NOT NULL, porder int(11) not null, PRIMARY KEY(pid)) TYPE=MyISAM;";
\r
20 upgrade_query("Creating nucleus_plugin table",$query);
\r
22 // add MaxUploadSize to config
\r
23 $query = 'INSERT INTO '.sql_table('config')." VALUES ('MaxUploadSize','1048576')";
\r
24 upgrade_query('MaxUploadSize setting',$query);
\r
27 // try to add cblog column when it does not exists yet
\r
28 $query = 'SELECT * FROM '.sql_table('comment').' WHERE cblog=0 LIMIT 1';
\r
29 $res = mysql_query($query);
\r
30 if (!$res || (mysql_num_rows($res) > 0)) {
\r
32 $query = 'ALTER TABLE '.sql_table('comment')." ADD cblog int(11) NOT NULL default '0'";
\r
33 upgrade_query('Adding cblog column in table nucleus_comment',$query);
\r
35 $query = 'SELECT inumber, iblog FROM '.sql_table('item').', '.sql_table('comment').' WHERE inumber=citem AND cblog=0';
\r
36 $res = sql_query($query);
\r
38 while($o = mysql_fetch_object($res)) {
\r
39 $query = 'UPDATE '.sql_table('comment')." SET cblog='".$o->iblog."' WHERE citem='".$o->inumber."'";
\r
40 upgrade_query('Filling cblog column for item ' . $o->inumber, $query);
\r
44 // add 'pluginURL' to config
\r
46 $pluginURL = $CONF['AdminURL'] . "plugins/";
\r
47 $query = 'INSERT INTO '.sql_table('config')." VALUES ('PluginURL', '$pluginURL');";
\r
48 upgrade_query('PluginURL setting', $query);
\r
50 // add 'EDITLINK' to all templates
\r
51 $query = 'SELECT tdnumber FROM '.sql_table('template_desc');
\r
52 $res = sql_query($query); // get all template ids
\r
53 while ($obj = mysql_fetch_object($res)) {
\r
54 $tid = $obj->tdnumber; // template id
\r
56 $query = 'INSERT INTO '.sql_table('template')." VALUES ($tid, 'EDITLINK', '<a href=\"<%editlink%>\" onclick=\"<%editpopupcode%>\">edit</a>');";
\r
57 upgrade_query("Adding editlink code to template $tid",$query);
\r
61 // in templates: update DATE_HEADER templates
\r
62 $res = sql_query('SELECT * FROM '.sql_table('template').' WHERE tpartname=\'DATE_HEADER\'');
\r
63 while ($o = mysql_fetch_object($res)) {
\r
64 $newval = str_replace('<%daylink%>','<%%daylink%%>',$o->tcontent);
\r
65 $query = 'UPDATE '.sql_table('template').' SET tcontent=\''. addslashes($newval).'\' WHERE tdesc=' . $o->tdesc . ' AND tpartname=\'DATE_HEADER\'';
\r
66 upgrade_query('Updating DATE_HEADER part in template ' . $o->tdesc, $query);
\r
69 // in templates: add 'comments'-templatevar to all non-empty ITEM templates
\r
70 $res = sql_query('SELECT * FROM '.sql_table('template').' WHERE tpartname=\'ITEM\'');
\r
71 while ($o = mysql_fetch_object($res)) {
\r
72 if (!strstr($o->tcontent,'<%comments%>')) {
\r
73 $newval = $o->tcontent . '<%comments%>';
\r
74 $query = 'UPDATE '.sql_table('template').' SET tcontent=\''. addslashes($newval).'\' WHERE tdesc=' . $o->tdesc . ' AND tpartname=\'ITEM\'';
\r
75 upgrade_query('Updating ITEM part in template ' . $o->tdesc, $query);
\r
79 // new setting: NonmemberMail
\r
80 upgrade_query('NonmemberMail setting', 'INSERT INTO '.sql_table('config')." VALUES ('NonmemberMail', '0');");
\r
82 // new setting: ProtectMemNames
\r
83 upgrade_query('ProtectMemNames setting', 'INSERT INTO '.sql_table('config')." VALUES ('ProtectMemNames', '1');");
\r
85 // create new table: nucleus_plugin_option
\r
86 $query = 'CREATE TABLE '.sql_table('plugin_option')." (opid int(11) NOT NULL, oname varchar(20) NOT NULL, ovalue varchar(128) not null, odesc varchar(255), otype varchar(8), PRIMARY KEY(opid, oname)) TYPE=MyISAM;";
\r
87 upgrade_query("Creating nucleus_plugin_option table",$query);
\r