Newer
Older
<?php
// $Id$
/**
* @file
* Install file of the print_pdf module
*/
/**
* Implementation of hook_install().
*/
function print_pdf_install() {
switch ($GLOBALS['db_type']) {
case 'mysql':
case 'mysqli':
db_query("CREATE TABLE {print_pdf_node_conf} (
nid int(10) unsigned NOT NULL,
link tinyint(3) unsigned NOT NULL default '1',
comments tinyint(3) unsigned NOT NULL default '1',
url_list tinyint(3) unsigned NOT NULL default '1',
PRIMARY KEY (nid)
) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");
db_query("CREATE TABLE {print_pdf_page_counter} (
path varchar(128) NOT NULL,
totalcount bigint(20) unsigned NOT NULL default '0',
timestamp int(10) unsigned NOT NULL default '0',
PRIMARY KEY (path)
) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");
break;
case 'pgsql':
db_query("CREATE TABLE {print_pdf_node_conf} (
nid int_unsigned NOT NULL,
link smallint NOT NULL default '1',
comments smallint_unsigned NOT NULL default '1',
url_list smallint_unsigned NOT NULL default '1',
PRIMARY KEY (nid)
)");
db_query("CREATE TABLE {print_pdf_page_counter} (
path varchar(128) NOT NULL,
totalcount bigint NOT NULL default '0',
timestamp int_unsigned NOT NULL default '0',
PRIMARY KEY (path)
)");
break;
}
}
/**
* Implementation of hook_uninstall().
*/
function print_pdf_uninstall() {
db_query('DROP TABLE {print_pdf_node_conf}');
db_query('DROP TABLE {print_pdf_page_counter}');
variable_del('print_pdf_settings');
variable_del('print_pdf_show_link');
variable_del('print_pdf_link_pos');
variable_del('print_pdf_node_link_visibility');
variable_del('print_pdf_node_link_pages');
variable_del('print_pdf_link_class');
variable_del('print_pdf_sys_link_visibility');
variable_del('print_pdf_sys_link_pages');
variable_del('print_pdf_book_link');
variable_del('print_pdf_pdf_tool');
variable_del('print_pdf_content_disposition');
variable_del('print_pdf_paper_size');
variable_del('print_pdf_page_orientation');
variable_del('print_pdf_font_family');
variable_del('print_pdf_font_size');
variable_del('print_pdf_link_text');
variable_del('print_pdf_link_use_alias');
João Ventura
committed
variable_del('print_pdf_filename');
variable_del('print_pdf_wkhtmltopdf_xdisplay');
$settings = db_query("SELECT name FROM {variable} WHERE name LIKE 'print\_pdf\_display\_%'");
while ($variable = db_fetch_object($settings)) {
variable_del($variable->name);
}
}
/**
*/
function print_pdf_update_6000() {
global $conf;
$ret = array();
if (isset($conf['print_pdf_settings'])) {
$print_pdf_settings = variable_get('print_pdf_settings', '');
variable_set('print_pdf_link_pos', array('link' => ($print_pdf_settings['show_link'] ? 'link' : 0) ));
variable_set('print_pdf_show_link', max(1, $print_pdf_settings['show_link']));
variable_set('print_pdf_node_link_visibility', $print_pdf_settings['node_link_visibility']);
variable_set('print_pdf_node_link_pages', $print_pdf_settings['node_link_pages']);
variable_set('print_pdf_link_class', $print_pdf_settings['link_class']);
variable_set('print_pdf_sys_link_visibility', $print_pdf_settings['sys_link_visibility']);
variable_set('print_pdf_sys_link_pages', $print_pdf_settings['sys_link_pages']);
variable_set('print_pdf_book_link', $print_pdf_settings['book_link']);
variable_set('print_pdf_pdf_tool', $print_pdf_settings['pdf_tool']);
variable_set('print_pdf_content_disposition', $print_pdf_settings['content_disposition']);
variable_set('print_pdf_paper_size', $print_pdf_settings['paper_size']);
variable_set('print_pdf_page_orientation', $print_pdf_settings['page_orientation']);
variable_del('print_pdf_settings');
}
return $ret;
}
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
/**
* Update to version 5.x-4.1
*/
function print_pdf_update_6001() {
$ret = array();
switch ($GLOBALS['db_type']) {
case 'mysql':
case 'mysqli':
db_query("CREATE TABLE {print_pdf_node_conf} (
nid int(10) unsigned NOT NULL,
link tinyint(3) unsigned NOT NULL default '1',
comments tinyint(3) unsigned NOT NULL default '1',
url_list tinyint(3) unsigned NOT NULL default '1',
PRIMARY KEY (nid)
) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");
db_query("CREATE TABLE {print_pdf_page_counter} (
path varchar(128) NOT NULL,
totalcount bigint(20) unsigned NOT NULL default '0',
timestamp int(10) unsigned NOT NULL default '0',
PRIMARY KEY (path)
) /*!40100 DEFAULT CHARACTER SET UTF8 */ ");
break;
case 'pgsql':
db_query("CREATE TABLE {print_pdf_node_conf} (
nid int_unsigned NOT NULL,
link smallint NOT NULL default '1',
comments smallint_unsigned NOT NULL default '1',
url_list smallint_unsigned NOT NULL default '1',
PRIMARY KEY (nid)
)");
db_query("CREATE TABLE {print_pdf_page_counter} (
path varchar(128) NOT NULL,
totalcount bigint NOT NULL default '0',
timestamp int_unsigned NOT NULL default '0',
PRIMARY KEY (path)
)");
break;
}
return $ret;
}
João Ventura
committed
/**
* Update to version 5.x-4.2
*/
function print_pdf_update_6003() {
// Delete custom text strings set to the default
$ret = array();
$vars = array(
'print_pdf_link_text' => 'PDF version',
);
$t = get_t();
foreach ($vars as $name => $default) {
João Ventura
committed
variable_del($name);
}
}
menu_rebuild();
return $ret;
}