Index: epublish.install =================================================================== --- epublish.install (revision 282) +++ epublish.install (working copy) @@ -13,6 +13,7 @@ ) TYPE=MyISAM;"); db_query("CREATE TABLE {epublish_abstract} ( nid int(10) NOT NULL default '0', + vid int(10) NOT NULL default '0', epublish_abstract longtext NOT NULL, use_as_teaser int(2) NOT NULL default '0', UNIQUE KEY nid (nid) @@ -35,6 +36,7 @@ db_query("CREATE TABLE {epublish_edition_node} ( eid int(10) unsigned NOT NULL default '0', nid int(10) unsigned NOT NULL default '0', + vid int(10) unsigned NOT NULL default '0', weight tinyint(4) NOT NULL default '0', tid int(10) NOT NULL default '0', KEY eid (eid,nid), @@ -75,4 +77,53 @@ 'epublish_section', 'epublish_topic', 'epublish_volume')); } -?> +function epublish_update_2() { + $ret = array(); + switch ($GLOBALS['db_type']) { + case 'mysql': + case 'mysqli': + $sql = "SELECT nid FROM {epublish_abstract} ORDER BY nid"; + $sql2 = "UPDATE {epublish_abstract} SET vid = %d WHERE nid = %d"; + $sql3 = "SELECT vid FROM {node} WHERE nid = %d"; + $ret[] = update_sql("ALTER TABLE {epublish_abstract} ADD vid int(10) unsigned default '0' NOT NULL"); + $results = db_query($sql); + while ($result = db_fetch_object($results)) { + $vid = db_fetch_object(db_query($sql3, $result->nid)); + db_query($sql2, $vid->vid, $result->nid); + } + $sql4 = "SELECT nid FROM {epublish_edition_node} ORDER BY nid"; + $sql5 = "UPDATE {epublish_edition_node} SET vid = %d WHERE nid = %d"; + $sql6 = "SELECT vid FROM {node} WHERE nid = %d"; + $ret[] = update_sql("ALTER TABLE {epublish_edition_node} ADD vid int(10) unsigned default '0' NOT NULL"); + $results = db_query($sql4); + while ($result = db_fetch_object($results)) { + $vid = db_fetch_object(db_query($sql6, $result->nid)); + db_query($sql5, $vid->vid, $result->nid); + } + break; + } + return $ret; +} + +function epublish_uninstall() { + $vardel = FALSE; + $query1 = db_query('DROP TABLE {epublish_publication}'); + $query2 = db_query('DROP TABLE {epublish_abstract}'); + $query3 = db_query('DROP TABLE {epublish_edition}'); + $query4 = db_query('DROP TABLE {epublish_edition_node}'); + $query5 = db_query('DROP TABLE {epublish_section}'); + $query6 = db_query('DROP TABLE {epublish_topic}'); + $query7 = db_query('DROP TABLE {epublish_volume}'); + //TODO delte every item from the variable table + //if(variable_del('accounttypes_default')) { + $vardel = TRUE; + //} + + if ($query1 && $query2 && $query3 && $query4 && $query5 && $varde6 && $varde7 && $vardel) { + drupal_set_message('The epublish module was uninstalled successfully.'); + } + else { + drupal_set_message('There was an error removing the epublish database tables.', 'error'); + } + +} \ No newline at end of file Index: epublish.module =================================================================== --- epublish.module (revision 282) +++ epublish.module (working copy) @@ -1,29 +1,4 @@ If you want users to be able to enter brief abstracts of postings for displays on headlines and publication pages, check the has abstract box.
'); break; - case 'admin/help#epublish': + case 'admin/help#epublish': $output = t("This module helps organize a publication or group of publications, each with multiple editions.
". "To use this module, you have to take a few steps:
". "