/** * Load plugin configuration from database * * @param string $pi_name Plugin name * @return boolean true on success, otherwise false * @see plugin_initconfig_polls * */ function plugin_load_configuration_polls($pi_name) { global $_CONF; $base_path = $_CONF['path'] . 'plugins/' . $pi_name . '/'; require_once $_CONF['path_system'] . 'classes/config.class.php'; require_once $base_path . 'install_defaults.php'; return plugin_initconfig_polls(); }
/** * Loads the configuration records for the GL Online Config Manager * * @return boolean true = proceed with install, false = an error occured * */ function plugin_load_configuration() { global $_CONF, $base_path; require_once $_CONF['path_system'] . 'classes/config.class.php'; require_once $base_path . 'install_defaults.php'; return plugin_initconfig_polls(); }
function upgrade_PollsPlugin() { global $_CONF, $_TABLES; require_once $_CONF['path_system'] . 'classes/config.class.php'; $plugin_path = $_CONF['path'] . 'plugins/polls/'; require_once $plugin_path . 'install_defaults.php'; if (file_exists($plugin_path . 'config.php')) { global $_DB_table_prefix, $_PO_CONF; require_once $plugin_path . 'config.php'; } if (!plugin_initconfig_polls()) { echo 'There was an error upgrading the Polls plugin'; return false; } $P_SQL = array(); $P_SQL[] = "RENAME TABLE `{$_TABLES['pollquestions']}` TO `{$_TABLES['polltopics']}`;"; $P_SQL[] = "ALTER TABLE `{$_TABLES['polltopics']}` CHANGE `question` `topic` VARCHAR( 255 ) NULL DEFAULT NULL"; $P_SQL[] = "ALTER TABLE `{$_TABLES['polltopics']}` CHANGE `qid` `pid` VARCHAR( 20 ) NOT NULL"; $P_SQL[] = "ALTER TABLE `{$_TABLES['polltopics']}` ADD questions int(11) default '0' NOT NULL AFTER voters"; $P_SQL[] = "ALTER TABLE `{$_TABLES['polltopics']}` ADD is_open tinyint(1) NOT NULL default '1' AFTER display"; $P_SQL[] = "ALTER TABLE `{$_TABLES['polltopics']}` ADD hideresults tinyint(1) NOT NULL default '0' AFTER is_open"; $P_SQL[] = "ALTER TABLE `{$_TABLES['pollanswers']}` CHANGE `qid` `pid` VARCHAR( 20 ) NOT NULL"; $P_SQL[] = "ALTER TABLE `{$_TABLES['pollanswers']}` ADD `qid` VARCHAR( 20 ) NOT NULL DEFAULT '0' AFTER `pid`;"; $P_SQL[] = "ALTER TABLE `{$_TABLES['pollanswers']}` DROP PRIMARY KEY;"; $P_SQL[] = "ALTER TABLE `{$_TABLES['pollanswers']}` ADD INDEX (pid, qid, aid);"; $P_SQL[] = "ALTER TABLE `{$_TABLES['pollvoters']}` CHANGE `qid` `pid` VARCHAR( 20 ) NOT NULL"; $P_SQL[] = "CREATE TABLE {$_TABLES['pollquestions']} (\n qid mediumint(9) NOT NULL DEFAULT '0',\n pid varchar(20) NOT NULL,\n question varchar(255) NOT NULL,\n PRIMARY KEY (qid, pid)\n ) ENGINE=MyISAM"; // in 1.4.1, "don't display poll" was equivalent to "closed" $P_SQL[] = "UPDATE {$_TABLES['polltopics']} SET is_open = 0 WHERE display = 0"; $P_SQL[] = "UPDATE {$_TABLES['plugins']} SET pi_version = '2.0.1', pi_gl_version = '1.5.0' WHERE pi_name = 'polls'"; $P_SQL = INST_checkInnodbUpgrade($P_SQL); foreach ($P_SQL as $sql) { $rst = DB_query($sql); if (DB_error()) { echo "There was an error upgrading the polls, SQL: {$sql}<br>"; return false; } } $P_SQL = array(); $move_sql = "SELECT pid, topic FROM {$_TABLES['polltopics']}"; $move_rst = DB_query($move_sql); $count_move = DB_numRows($move_rst); for ($i = 0; $i < $count_move; $i++) { $A = DB_fetchArray($move_rst); $A[1] = mysql_real_escape_string($A[1]); $P_SQL[] = "INSERT INTO {$_TABLES['pollquestions']} (pid, question) VALUES ('{$A[0]}','{$A[1]}');"; } foreach ($P_SQL as $sql) { $rst = DB_query($sql); if (DB_error()) { echo "There was an error upgrading the polls, SQL: {$sql}<br>"; return false; } } return true; }
/** * Loads the configuration records for the Online Config Manager * * @return boolean true = proceed with install, false = an error occured * */ function plugin_load_configuration_polls() { global $_CONF; require_once $_CONF['path'] . 'plugins/polls/install_defaults.php'; return plugin_initconfig_polls(); }
function upgrade_PollsPlugin() { global $_CONF, $_TABLES; require_once $_CONF['path_system'] . 'classes/config.class.php'; $plugin_path = $_CONF['path'] . 'plugins/polls/'; require_once $plugin_path . 'install_defaults.php'; if (file_exists($plugin_path . 'config.php')) { global $_DB_table_prefix, $_PO_CONF; require_once $plugin_path . 'config.php'; } if (!plugin_initconfig_polls()) { echo 'There was an error upgrading the Polls plugin'; return false; } $P_SQL = array(); //$P_SQL[] = "ALTER TABLE {$_TABLES['polltopics']} RENAME TO {$_TABLES['pollquestions']};"; $P_SQL[] = "ALTER TABLE {$_TABLES['pollquestions']} DROP CONSTRAINT [PK_gl_pollquestions];"; $P_SQL[] = "EXEC sp_rename '{$_TABLES['pollquestions']}', '{$_TABLES['polltopics']}'"; $P_SQL[] = "EXEC sp_rename '{$_TABLES['polltopics']}.question', 'topic', 'COLUMN'"; $P_SQL[] = "ALTER TABLE {$_TABLES['polltopics']} ALTER COLUMN [topic] VARCHAR( 255 ) NULL"; $P_SQL[] = "EXEC sp_rename '{$_TABLES['polltopics']}.qid', 'pid', 'COLUMN'"; $P_SQL[] = "ALTER TABLE {$_TABLES['polltopics']} ADD questions int default '0' NOT NULL"; $P_SQL[] = "ALTER TABLE {$_TABLES['polltopics']} ADD is_open tinyint NOT NULL default '1'"; $P_SQL[] = "ALTER TABLE {$_TABLES['polltopics']} ADD hideresults tinyint NOT NULL default '0'"; $P_SQL[] = "EXEC sp_rename '{$_TABLES['pollanswers']}.qid', 'pid', 'COLUMN'"; $P_SQL[] = "ALTER TABLE {$_TABLES['pollanswers']} ADD qid VARCHAR(20) NOT NULL default '0'"; $P_SQL[] = "ALTER TABLE {$_TABLES['pollanswers']} DROP CONSTRAINT [PK_gl_pollanswers];"; $P_SQL[] = "ALTER TABLE {$_TABLES['pollanswers']} ADD CONSTRAINT [PK_{$_TABLES['pollanswers']}] PRIMARY KEY CLUSTERED ([pid], [qid], [aid]) ON [PRIMARY];"; $P_SQL[] = "EXEC sp_rename '{$_TABLES['pollvoters']}.qid', 'pid', 'COLUMN'"; $P_SQL[] = "ALTER TABLE {$_TABLES['pollvoters']} ALTER COLUMN [pid] VARCHAR( 20 ) NOT NULL"; $P_SQL[] = "CREATE TABLE [dbo].[{$_TABLES['pollquestions']}] (\r\n [qid] [int] NOT NULL DEFAULT 0,\r\n [pid] [varchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,\r\n [question] [varchar] (255) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,\r\n CONSTRAINT [PK_{$_TABLES['pollquestions']}] PRIMARY KEY CLUSTERED \r\n\t (\r\n\t\t [qid]\r\n\t ) ON [PRIMARY] \r\n ) ON [PRIMARY]"; // in 1.4.1, "don't display poll" was equivalent to "closed" $P_SQL[] = "UPDATE {$_TABLES['polltopics']} SET is_open = 0 WHERE display = 0"; $P_SQL[] = "UPDATE {$_TABLES['plugins']} SET pi_version = '2.0.1', pi_gl_version = '1.5.0' WHERE pi_name = 'polls'"; foreach ($P_SQL as $sql) { $rst = DB_query($sql); if (DB_error()) { echo "There was an error upgrading the polls, SQL: {$sql}<br>"; return false; } } $P_SQL = array(); $move_sql = "SELECT pid, topic FROM {$_TABLES['polltopics']}"; $move_rst = DB_query($move_sql); $count_move = DB_numRows($move_rst); for ($i = 0; $i < $count_move; $i++) { $A = DB_fetchArray($move_rst); $A[1] = str_replace("'", "''", $A[1]); $P_SQL[] = "INSERT INTO {$_TABLES['pollquestions']} (pid, question) VALUES ('{$A[0]}','{$A[1]}');"; } foreach ($P_SQL as $sql) { $rst = DB_query($sql); if (DB_error()) { echo "There was an error upgrading the polls, SQL: {$sql}<br>"; return false; } } return true; }