Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function create_poll_table() {
- global $wpdb;
- polls_textdomain();
- if(@is_file(ABSPATH.'/wp-admin/includes/upgrade.php')) {
- include_once(ABSPATH.'/wp-admin/includes/upgrade.php');
- }elseif(@is_file(ABSPATH.'/wp-admin/upgrade-functions.php')) {
- include_once(ABSPATH.'/wp-admin/upgrade-functions.php');
- } elseif(@is_file(ABSPATH.'/wp-admin/includes/upgrade.php')) {
- include_once(ABSPATH.'/wp-admin/includes/upgrade.php');
- } else {
- die('We have problem finding your \'/wp-admin/upgrade-functions.php\' and \'/wp-admin/includes/upgrade.php\'');
- }
- // Create Poll Tables (3 Tables)
- $charset_collate = '';
- if($wpdb->supports_collation()) {
- if(!empty($wpdb->charset)) {
- $charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
- }
- if(!empty($wpdb->collate)) {
- $charset_collate .= " COLLATE $wpdb->collate";
- }
- }
- $create_table = array();
- $blog_ids = $wpdb->get_results("SELECT `blog_id` FROM `".$wpdb->base_prefix ."blogs` ", ARRAY_N);
- if($blog_ids) {
- foreach($blog_ids as $blog_id) {
- if ($blog_id[0] == 1) {$blog_id = 0; $blog_id_='';
- } else { $blog_id = $blog_id[0] ; $blog_id_ = $blog_id.'_';}
- $pollsq = $blog_id_.'pollsq'; $pollsa = $blog_id_.'pollsa'; $pollsip = $blog_id_.'pollsip';
- $create_table = array();
- $create_table['pollsq'] = "CREATE TABLE ".$wpdb->base_prefix .$blog_id_."pollsq (".
- "pollq_id int(10) NOT NULL auto_increment,".
- "pollq_question varchar(200) character set utf8 NOT NULL default '',".
- "pollq_timestamp varchar(20) NOT NULL default '',".
- "pollq_totalvotes int(10) NOT NULL default '0',".
- "pollq_active tinyint(1) NOT NULL default '1',".
- "pollq_expiry varchar(20) NOT NULL default '',".
- "pollq_multiple tinyint(3) NOT NULL default '0',".
- "pollq_totalvoters int(10) NOT NULL default '0',".
- "PRIMARY KEY (pollq_id)) $charset_collate;";
- $create_table['pollsa'] = "CREATE TABLE ".$wpdb->base_prefix .$blog_id_."pollsa (".
- "polla_aid int(10) NOT NULL auto_increment,".
- "polla_qid int(10) NOT NULL default '0',".
- "polla_answers varchar(200) character set utf8 NOT NULL default '',".
- "polla_votes int(10) NOT NULL default '0',".
- "PRIMARY KEY (polla_aid)) $charset_collate;";
- $create_table['pollsip'] = "CREATE TABLE ".$wpdb->base_prefix .$blog_id_."pollsip (".
- "pollip_id int(10) NOT NULL auto_increment,".
- "pollip_qid varchar(10) NOT NULL default '',".
- "pollip_aid varchar(10) NOT NULL default '',".
- "pollip_ip varchar(100) NOT NULL default '',".
- "pollip_host VARCHAR(200) NOT NULL default '',".
- "pollip_timestamp varchar(20) NOT NULL default '0000-00-00 00:00:00',".
- "pollip_user tinytext NOT NULL,".
- "pollip_userid int(10) NOT NULL default '0',".
- "PRIMARY KEY (pollip_id),".
- "KEY pollip_ip (pollip_id),".
- "KEY pollip_qid (pollip_qid)".
- ") $charset_collate;";
- maybe_create_table($wpdb->$pollsq, $create_table['pollsq']);
- maybe_create_table($wpdb->$pollsa, $create_table['pollsa']);
- maybe_create_table($wpdb->$pollsip, $create_table['pollsip']);
- // Check Whether It is Install Or Upgrade
- $first_poll = $wpdb->get_var("SELECT pollq_id FROM ".$wpdb->base_prefix .$blog_id_."pollsq LIMIT 1");
- // If Install, Insert 1st Poll Question With 5 Poll Answers
- if(empty($first_poll)) {
- // Insert Poll Question (1 Record)
- $insert_pollq = $wpdb->query("INSERT INTO ".$wpdb->base_prefix .$blog_id_."pollsq VALUES (1, '".__('How Is My Site?', 'wp-polls')."', '".current_time('timestamp')."', 0, 1, '', 0, 0);");
- if($insert_pollq) {
- // Insert Poll Answers (5 Records)
- $wpdb->query("INSERT INTO ".$wpdb->base_prefix .$blog_id_."pollsa VALUES (1, 1, '".__('Good', 'wp-polls')."', 0);");
- $wpdb->query("INSERT INTO ".$wpdb->base_prefix .$blog_id_."pollsa VALUES (2, 1, '".__('Excellent', 'wp-polls')."', 0);");
- $wpdb->query("INSERT INTO ".$wpdb->base_prefix .$blog_id_."pollsa VALUES (3, 1, '".__('Bad', 'wp-polls')."', 0);");
- $wpdb->query("INSERT INTO ".$wpdb->base_prefix .$blog_id_."pollsa VALUES (4, 1, '".__('Can Be Improved', 'wp-polls')."', 0);");
- $wpdb->query("INSERT INTO ".$wpdb->base_prefix .$blog_id_."pollsa VALUES (5, 1, '".__('No Comments', 'wp-polls')."', 0);");
- }
- }
- // Add In Options (16 Records)
- add_blog_option ($blog_id,'poll_template_voteheader', '<p style="text-align:left;"><strong>%POLL_QUESTION%</strong></p>'.
- '<div id="polls-%POLL_ID%-ans" class="wp-polls-ans">'.
- '<ul class="wp-polls-ul">');
- add_blog_option($blog_id,'poll_template_votebody', '<li><input type="%POLL_CHECKBOX_RADIO%" id="poll-answer-%POLL_ANSWER_ID%" name="poll_%POLL_ID%" value="%POLL_ANSWER_ID%" /> <label for="poll-answer-%POLL_ANSWER_ID%">%POLL_ANSWER%</label></li>');
- add_blog_option($blog_id,'poll_template_votefooter', '</ul>'.
- '<p style="text-align: center;"><input type="button" name="vote" value=" '.__('Vote', 'wp-polls').' " class="Buttons" onclick="poll_vote(%POLL_ID%);" /></p>'.
- '<p style="text-align: center;"><a href="#ViewPollResults" onclick="poll_result(%POLL_ID%); return false;" title="'.__('View Results Of This Poll', 'wp-polls').'">'.__('View Results', 'wp-polls').'</a></p>'.
- '</div>');
- add_blog_option($blog_id,'poll_template_resultheader', '<p style="text-align:left;"><strong>%POLL_QUESTION%</strong></p>'.
- '<div id="polls-%POLL_ID%-ans" class="wp-polls-ans">'.
- '<ul class="wp-polls-ul">');
- add_blog_option($blog_id,'poll_template_resultbody', '<li>%POLL_ANSWER% <small>(%POLL_ANSWER_PERCENTAGE%%'.__(',', 'wp-polls').' %POLL_ANSWER_VOTES% '.__('Votes', 'wp-polls').')</small><div class="pollbar" style="width: %POLL_ANSWER_IMAGEWIDTH%%;" title="%POLL_ANSWER_TEXT% (%POLL_ANSWER_PERCENTAGE%% | %POLL_ANSWER_VOTES% '.__('Votes', 'wp-polls').')"></div></li>');
- add_blog_option($blog_id,'poll_template_resultbody2', '<li><strong><i>%POLL_ANSWER% <small>(%POLL_ANSWER_PERCENTAGE%%'.__(',', 'wp-polls').' %POLL_ANSWER_VOTES% '.__('Votes', 'wp-polls').')</small></i></strong><div class="pollbar" style="width: %POLL_ANSWER_IMAGEWIDTH%%;" title="'.__('You Have Voted For This Choice', 'wp-polls').' - %POLL_ANSWER_TEXT% (%POLL_ANSWER_PERCENTAGE%% | %POLL_ANSWER_VOTES% '.__('Votes', 'wp-polls').')"></div></li>');
- add_blog_option($blog_id,'poll_template_resultfooter', '</ul>'.
- '<p style="text-align: center;">'.__('Total Voters', 'wp-polls').': <strong>%POLL_TOTALVOTERS%</strong></p>'.
- '</div>');
- add_blog_option($blog_id,'poll_template_resultfooter2', '</ul>'.
- '<p style="text-align: left;">'.__('Total Voters', 'wp-polls').': <strong>%POLL_TOTALVOTERS%</strong></p>'.
- '<p style="text-align: center;"><a href="#VotePoll" onclick="poll_booth(%POLL_ID%); return false;" title="'.__('Vote For This Poll', 'wp-polls').'">'.__('Vote', 'wp-polls').'</a></p>'.
- '</div>');
- add_blog_option($blog_id,'poll_template_disable', __('Sorry, there are no polls available at the moment.', 'wp-polls'));
- add_blog_option($blog_id,'poll_template_error', __('An error has occurred when processing your poll.', 'wp-polls'));
- add_blog_option($blog_id,'poll_currentpoll', 0);
- add_blog_option($blog_id,'poll_latestpoll', 1);
- add_blog_option($blog_id,'poll_archive_perpage', 5);
- add_blog_option($blog_id,'poll_ans_sortby', 'polla_aid');
- add_blog_option($blog_id,'poll_ans_sortorder', 'asc');
- add_blog_option($blog_id,'poll_ans_result_sortby', 'polla_votes');
- add_blog_option($blog_id,'poll_ans_result_sortorder', 'desc');
- // Database Upgrade For WP-Polls 2.1
- add_blog_option($blog_id,'poll_logging_method', '3');
- add_blog_option($blog_id,'poll_allowtovote', '2');
- maybe_add_column($wpdb->$pollsq, 'pollq_active', "ALTER TABLE ".$wpdb->base_prefix .$blog_id_."pollsq ADD pollq_active TINYINT( 1 ) NOT NULL DEFAULT '1';");
- // Database Upgrade For WP-Polls 2.12
- maybe_add_column($wpdb->$pollsip, 'pollip_userid', "ALTER TABLE ".$wpdb->base_prefix .$blog_id_."pollsip ADD pollip_userid INT( 10 ) NOT NULL DEFAULT '0';");
- add_blog_option($blog_id,'poll_archive_url', site_url('pollsarchive'));
- // Database Upgrade For WP-Polls 2.13
- add_blog_option($blog_id,'poll_bar', array('style' => 'default', 'background' => 'd8e1eb', 'border' => 'c8c8c8', 'height' => 8));
- // Database Upgrade For WP-Polls 2.14
- maybe_add_column($wpdb->$pollsq, 'pollq_expiry', "ALTER TABLE ".$wpdb->base_prefix .$blog_id_."pollsq ADD pollq_expiry varchar(20) NOT NULL default '';");
- add_blog_option($blog_id,'poll_close', 1);
- // Database Upgrade For WP-Polls 2.20
- add_blog_option($blog_id,'poll_ajax_style', array('loading' => 1, 'fading' => 1));
- add_blog_option($blog_id,'poll_template_pollarchivelink', '<ul>'.
- '<li><a href="%POLL_ARCHIVE_URL%">'.__('Polls Archive', 'wp-polls').'</a></li>'.
- '</ul>');
- add_blog_option($blog_id,'poll_archive_displaypoll', 2);
- add_blog_option($blog_id,'poll_template_pollarchiveheader', '');
- add_blog_option($blog_id,'poll_template_pollarchivefooter', '<p>'.__('Start Date:', 'wp-polls').' %POLL_START_DATE%<br />'.__('End Date:', 'wp-polls').' %POLL_END_DATE%</p>');
- maybe_add_column($wpdb->$pollsq, 'pollq_multiple', "ALTER TABLE ".$wpdb->base_prefix .$blog_id_."pollsq ADD pollq_multiple TINYINT( 3 ) NOT NULL DEFAULT '0';");
- $pollq_totalvoters = maybe_add_column($wpdb->$pollsq, 'pollq_totalvoters', "ALTER TABLE ".$wpdb->base_prefix .$blog_id_."pollsq ADD pollq_totalvoters INT( 10 ) NOT NULL DEFAULT '0';");
- if($pollq_totalvoters) {
- $pollq_totalvoters = intval($wpdb->get_var("SELECT SUM(pollq_totalvoters) FROM ".$wpdb->base_prefix .$blog_id_."pollsq"));
- if($pollq_totalvoters == 0) {
- $wpdb->query("UPDATE ".$wpdb->base_prefix .$blog_id_."pollsq SET pollq_totalvoters = pollq_totalvotes");
- }
- }
- // Database Upgrade For WP-Polls 2.30
- add_blog_option($blog_id,'poll_cookielog_expiry', 0);
- add_blog_option($blog_id,'poll_template_pollarchivepagingheader', '');
- add_blog_option($blog_id,'poll_template_pollarchivepagingfooter', '');
- // Database Upgrade For WP-Polls 2.50
- delete_blog_option($blog_id,'poll_archive_show');
- // Database Upgrade For WP-Polls 2.61
- $wpdb->query("ALTER TABLE ".$wpdb->base_prefix .$blog_id_."pollsip ADD INDEX pollip_ip (pollip_id);");
- $wpdb->query("ALTER TABLE ".$wpdb->base_prefix .$blog_id_."pollsip ADD INDEX pollip_qid (pollip_qid);");
- }
- }
- // Set 'manage_polls' Capabilities To Administrator
- $role = get_role('administrator');
- if(!$role->has_cap('manage_polls')) {
- $role->add_cap('manage_polls');
- }
- cron_polls_place();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement