0byt3m1n1
Path:
/
data
/
applications
/
aps.bak
/
geeklog
/
1.4.1-4
/
standard
/
scripts
/
[
Home
]
File: geeklog_upgrade.php
<?php function geeklog_upgrade(){ require_once('db-util.php'); mysql_db_connect(get_db_address('main'), get_db_login('main'), get_db_password('main'), get_db_name('main')); $db_prefix = get_db_prefix('main'); $update_query=" CREATE TABLE @@DB_MAIN_PREFIX@@trackback ( cid int(10) unsigned NOT NULL auto_increment, sid varchar(40) NOT NULL, url varchar(255) default NULL, title varchar(128) default NULL, blog varchar(80) default NULL, excerpt text, date datetime default NULL, type varchar(30) NOT NULL default 'article', ipaddress varchar(15) NOT NULL default '', PRIMARY KEY (cid), INDEX trackback_sid(sid), INDEX trackback_url(url), INDEX trackback_date(date), INDEX trackback_type(type) ) TYPE=MyISAM; CREATE TABLE ".$db_prefix."pingservice ( pid smallint(5) unsigned NOT NULL auto_increment, name varchar(128) default NULL, ping_url varchar(255) default NULL, site_url varchar(255) default NULL, method varchar(80) default NULL, is_enabled tinyint(1) unsigned NOT NULL DEFAULT '1', PRIMARY KEY (pid), INDEX pingservice_is_enabled(is_enabled) ) TYPE=MyISAM; CREATE TABLE ".$db_prefix."trackbackcodes ( code tinyint(4) NOT NULL default '0', name varchar(32) default NULL, PRIMARY KEY (code) ) TYPE=MyISAM; INSERT INTO ".$db_prefix."pingservice (pid, name, site_url, ping_url, method, is_enabled) VALUES (1, 'Ping-O-Matic', 'http://pingomatic.com/', 'http://rpc.pingomatic.com/', 'weblogUpdates.ping', 1); INSERT INTO ".$db_prefix."trackbackcodes (code, name) VALUES (0,'Trackback Enabled') ; INSERT INTO ".$db_prefix."trackbackcodes (code, name) VALUES (-1,'Trackback Disabled') ; ALTER TABLE ".$db_prefix."blocks ADD rdflimit smallint(5) unsigned NOT NULL default '0' AFTER rdfupdated; INSERT INTO ".$db_prefix."features (ft_name, ft_descr, ft_gl_core) VALUES ('story.ping', 'Ability to send pings, pingbacks, or trackbacks for stories', 1); ALTER TABLE ".$db_prefix."users ADD remoteusername varchar(60) NULL after username; ALTER TABLE ".$db_prefix."users ADD remoteservice varchar(60) NULL after remoteusername; ALTER TABLE ".$db_prefix."users ADD status smallint(5) unsigned NOT NULL default '1'; UPDATE ".$db_prefix."users SET status=3 WHERE (passwd IS NOT NULL) OR (passwd != ''); ALTER TABLE ".$db_prefix."users ADD INDEX users_username(username); ALTER TABLE ".$db_prefix."users ADD INDEX users_fullname(fullname); ALTER TABLE ".$db_prefix."users ADD INDEX users_email(email); ALTER TABLE ".$db_prefix."users ADD INDEX users_passwd(passwd); ALTER TABLE ".$db_prefix."users ADD INDEX users_pwrequestid(pwrequestid); INSERT INTO ".$db_prefix."groups (grp_name, grp_descr, grp_gl_core) VALUES ('Remote Users', 'Users in this group can have authenticated against a remote server.',1) ; ALTER TABLE ".$db_prefix."speedlimit ADD INDEX type_ipaddress(type,ipaddress); ALTER TABLE ".$db_prefix."speedlimit ADD INDEX date(date); ALTER TABLE ".$db_prefix."stories ADD in_transit tinyint(1) unsigned default '0' AFTER frontpage; ALTER TABLE ".$db_prefix."stories ADD INDEX stories_in_transit(in_transit); ALTER TABLE ".$db_prefix."stories ADD trackbackcode tinyint(4) NOT NULL default '0' AFTER commentcode; ALTER TABLE ".$db_prefix."stories ADD trackbacks mediumint(8) unsigned NOT NULL default '0' AFTER comments; ALTER TABLE ".$db_prefix."syndication ADD header_tid varchar(48) NOT NULL default 'none' AFTER topic;; ALTER TABLE ".$db_prefix."syndication ADD feedlogo varchar(255) AFTER description;; ALTER TABLE ".$db_prefix."syndication CHANGE format format varchar(20) NOT NULL default 'RSS-2.0';; UPDATE ".$db_prefix."syndication SET format='Atom-0.3' WHERE format='atom'; UPDATE ".$db_prefix."syndication SET format='RDF-1.0' WHERE format='rdf'; UPDATE ".$db_prefix."syndication SET format='RSS-0.9x' WHERE format='rss'; UPDATE ".$db_prefix."syndication SET format='RSS-2.0' WHERE format='rss2'; INSERT INTO ".$db_prefix."plugins (pi_name, pi_version, pi_gl_version, pi_enabled, pi_homepage) VALUES ('links', '1.0', '1.4.0', 1, 'http://www.geeklog.net/'); UPDATE ".$db_prefix."syndication SET type = 'links', topic = 'all' WHERE topic = '::links';; INSERT INTO ".$db_prefix."plugins (pi_name, pi_version, pi_gl_version,pi_enabled, pi_homepage) VALUES ('polls', '1.0', '1.4.0', '1', 'http://www.geeklog.net/'); UPDATE ".$db_prefix."blocks SET type = 'phpblock', phpblockfn ='phpblock_polls' WHERE name = 'poll_block';; UPDATE ".$db_prefix."features SET ft_gl_core = '0', ft_name='polls.edit' WHERE ft_name = 'poll.edit';; UPDATE ".$db_prefix."groups SET grp_gl_core = '0', grp_name = 'Links Admin' WHERE grp_name = 'Link Admin';; UPDATE ".$db_prefix."groups SET grp_gl_core = '0', grp_name = 'Polls Admin' WHERE grp_name = 'Poll Admin';; UPDATE ".$db_prefix."features SET ft_name = 'links.moderate', ft_gl_core = '0' WHERE ft_name = 'link.moderate';; UPDATE ".$db_prefix."features SET ft_name = 'links.edit', ft_gl_core = '0' WHERE ft_name = 'link.edit';; UPDATE ".$db_prefix."features SET ft_name = 'links.submit', ft_gl_core = '0' WHERE ft_name = 'link.submit';; UPDATE ".$db_prefix."plugins SET pi_version = '1.0.3', pi_gl_version = '1.4.0' WHERE pi_name = 'spamx'; UPDATE ".$db_prefix."plugins SET pi_version = '1.4.2', pi_gl_version = '1.4.0', pi_homepage = 'http://www.geeklog.net/' WHERE pi_name = 'staticpages'; UPDATE ".$db_prefix."comments SET type = 'polls' WHERE type = 'poll'; ALTER TABLE ".$db_prefix."userindex CHANGE etids etids text; ALTER TABLE ".$db_prefix."events ADD hits mediumint(8) unsigned NOT NULL default '0' AFTER url; ALTER TABLE ".$db_prefix."events ADD postmode varchar(10) NOT NULL default 'plaintext' AFTER description; ALTER TABLE ".$db_prefix."personal_events ADD postmode varchar(10) NOT NULL default 'plaintext' AFTER description; ALTER TABLE ".$db_prefix."links CHANGE lid lid varchar(40) NOT NULL default ''; ALTER TABLE ".$db_prefix."linksubmission CHANGE lid lid varchar(40) NOT NULL default ''; "; mysql_query($update_query); $result = mysql_fetch_array(mysql_query("SELECT grp_id FROM ".$db_prefix."groups WHERE grp_name = 'Story Admin'"),MYSQL_ASSOC); $grp_id = $result['grp_id']; $result = mysql_fetch_array(mysql_query("SELECT ft_id FROM ".$db_prefix."features WHERE ft_name = 'story.ping'"),MYSQL_ASSOC); $ft_id = $result['ft_id']; if (($grp_id > 0) && ($ft_id > 0)) { mysql_query("INSERT INTO ".$db_prefix."access (acc_ft_id, acc_grp_id) VALUES ($ft_id,$grp_id)"); } $result = mysql_fetch_array(mysql_query("SELECT COUNT(*) AS a FROM ".$db_prefix."groups"),MYSQL_ASSOC); $groups = $result['a']; $result = mysql_query("SELECT DISTINCT grp_name FROM ".$db_prefix."groups ORDER BY grp_gl_core ASC"); $numGroups = mysql_num_rows($result); if ($groups != $numGroups) { $names = array (); for ($i = 0; $i < $numGroups; $i++) { mysql_fetch_array($result,MYSQL_ASSOC); $names[] = $A['grp_name']; } foreach ($names as $name) { $result = mysql_query("SELECT grp_id FROM ".$db_prefix."groups WHERE grp_name = '$name'"); $num = mysql_num_rows($result); if ($num > 1) { $A = mysql_fetch_array($result,MYSQL_ASSOC); $num--; for ($i = 0; $i < $num; $i++) { list($grp_id) = mysql_fetch_array($result,MYSQL_ASSOC); mysql_query("DELETE FROM ".$db_prefix."access WHERE acc_grp_id = '$grp_id'"); mysql_query("DELETE FROM ".$db_prefix."group_assignments WHERE ug_grp_id = '$grp_id'"); mysql_query("DELETE FROM ".$db_prefix."group_assignments WHERE ug_main_grp_id = '$grp_id'"); mysql_query("DELETE FROM ".$db_prefix."groups WHERE grp_id = '$grp_id'"); } $groups -= $num; if ($groups == $numGroups) { break; } } } } $update_query=" ALTER TABLE ".$db_prefix."groups DROP INDEX grp_name; ALTER TABLE ".$db_prefix."groups ADD UNIQUE grp_name(grp_name); INSERT INTO ".$db_prefix."features (ft_name, ft_descr, ft_gl_core) VALUES ('syndication.edit', 'Access to Content Syndication', 1); INSERT INTO ".$db_prefix."groups (grp_name, grp_descr, grp_gl_core) VALUES ('Syndication Admin', 'Can create and modify web feeds for the site',1) ; UPDATE ".$db_prefix."plugins SET pi_version = '1.0.1', pi_gl_version = '1.4.1' WHERE pi_name = 'links'; UPDATE ".$db_prefix."plugins SET pi_version = '1.1.0', pi_gl_version = '1.4.1' WHERE pi_name = 'polls'; UPDATE ".$db_prefix."plugins SET pi_version = '1.1.0', pi_gl_version = '1.4.1' WHERE pi_name = 'spamx'; UPDATE ".$db_prefix."plugins SET pi_version = '1.4.3', pi_gl_version = '1.4.1' WHERE pi_name = 'staticpages'; INSERT INTO ".$db_prefix."plugins (pi_name, pi_version, pi_gl_version, pi_enabled, pi_homepage) VALUES ('calendar', '1.0.0', '1.4.1', 1, 'http://www.geeklog.net/'); UPDATE ".$db_prefix."features SET ft_name = 'calendar.edit', ft_gl_core = '0' WHERE ft_name = 'event.edit'; UPDATE ".$db_prefix."features SET ft_name = 'calendar.moderate', ft_gl_core = '0' WHERE ft_name = 'event.moderate'; UPDATE ".$db_prefix."features SET ft_name = 'calendar.submit', ft_gl_core = '0' WHERE ft_name = 'event.submit'; UPDATE ".$db_prefix."groups SET grp_name = 'Calendar Admin', grp_gl_core = '0' WHERE grp_name = 'Event Admin'; UPDATE ".$db_prefix."blocks SET type = 'phpblock', phpblockfn ='phpblock_calendar' WHERE name = 'events_block'; ALTER TABLE ".$db_prefix."stories ADD advanced_editor_mode tinyint(1) unsigned default '0' AFTER postmode; ALTER TABLE ".$db_prefix."blocks ADD allow_autotags tinyint(1) unsigned NOT NULL DEFAULT '0' AFTER content; ALTER TABLE ".$db_prefix."blocks CHANGE help help varchar(255) default ''; UPDATE ".$db_prefix."users SET regdate = '2001-12-17 00:00:00' WHERE regdate = '0000-00-00 00:00:00'; "; mysql_query($update_query); $result = mysql_fetch_array(mysql_query("SELECT grp_id FROM ".$db_prefix."groups WHERE grp_name = 'Syndication Admin'"),MYSQL_ASSOC); $grp_id = $result['grp_id']; $result = mysql_fetch_array(mysql_query("SELECT ft_id FROM ".$db_prefix."features WHERE ft_name = 'syndication.edit'"),MYSQL_ASSOC); $ft_id = $result['ft_id']; $result = mysql_fetch_array(mysql_query("SELECT grp_id FROM ".$db_prefix."groups WHERE grp_name = 'Root'"),MYSQL_ASSOC); $rootgrp = $result['grp_id']; if(($grp_id > 0) && ($ft_id > 0)) { mysql_query("INSERT INTO ".$db_prefix."access (acc_ft_id, acc_grp_id) VALUES ($ft_id, $grp_id)"); if($rootgrp > 0) { mysql_query("INSERT INTO ".$db_prefix."group_assignments (ug_main_grp_id, ug_uid, ug_grp_id) VALUES ($grp_id, NULL, $rootgrp)"); } } $result = mysql_fetch_array(mysql_query("SELECT value FROM ".$db_prefix."vars WHERE name = 'last_scheduled_run'"),MYSQL_ASSOC); $val = $result['value']; if (empty ($val)) { mysql_query("REPLACE INTO ".$db_prefix."vars (name,value) VALUES ('last_scheduled_run','')"); } $result = mysql_query("SELECT COUNT(*) FROM ".$db_prefix."plugins WHERE pi_name='polls'"); if (mysql_num_rows($result) == 1) { mysql_query("ALTER TABLE ".$db_prefix."pollanswers ADD remark varchar(255) NULL AFTER votes"); } $result = mysql_query("SELECT COUNT(*) FROM ".$db_prefix."plugins WHERE pi_name='spamx'"); if (mysql_num_rows($result) == 1) { mysql_query("DELETE FROM ".$db_prefix."spamx WHERE name = 'MTBlacklist'"); $result = mysql_fetch_array(mysql_query("SELECT value FROM ".$db_prefix."vars WHERE name = 'spamx.counter'"),MYSQL_ASSOC); $val = $result['value']; if (empty ($val)) { mysql_query("REPLACE INTO ".$db_prefix."vars (name,value) VALUES ('spamx.counter','0')"); } } $result = mysql_query("SELECT COUNT(*) FROM ".$db_prefix."plugins WHERE pi_name='staticpages'"); if (mysql_num_rows($result) == 1) { mysql_query("ALTER TABLE ".$db_prefix."staticpage ADD postmode varchar(16) DEFAULT 'html' NOT NULL AFTER sp_inblock"); mysql_query("ALTER TABLE ".$db_prefix."staticpage ADD sp_help varchar(255) default '' AFTER sp_centerblock"); } } ?>