Sveiki, manau daugumai žinoma modifikacija ip_poll_panel. Bet kiek ieškojau, visur jinai palaiko iki 10-ies atsakymų pasirinkimų, gal kas galėtų padėti pasidaryti daugiau? Kad ir 15, užvedus ant kelio pasidaryčiau ir pats, nes kiek bandžiau, tiek meta errorus. 
 
Redaguotini failai: 
 
infusion.php 
 
<?php 
/*-------------------------------------------------------+ 
| <span style="border-bottom: 1px dotted black;">PHP</span>-Fusion Content Management System 
| Copyright (C) 2002 - 2008 Nick Jones 
| <a href='http://www.php-fusion.co.uk/' target='_blank'><span style='color:005C5B'>http://www.php-fusion.co.uk/</span></a> 
+--------------------------------------------------------+ 
| Released under the terms & conditions of v2 of the 
| GNU General Public License. For details refer to 
| the included gpl.txt file or visit <a href='http://gnu.org' target='_blank'><span style='color:005C5B'>http://gnu.org</span></a> 
+--------------------------------------------------------+ 
Przystosowanie do v7: bartek124 
E-Mail: <a href="mailto:bartek124@php-fusion.pl"><span style="color:005C5B">bartek124@php-fusion.pl</span></a> 
+--------------------------------------------------------*/ 
if (!defined("IN_FUSION")) { die("Access Denied"); } 
  
include INFUSIONS."ip_poll_panel/infusion_db.php"; 
  
if (file_exists(INFUSIONS."ip_poll_panel/locale/".$settings['locale'].".php")) { 
	include INFUSIONS."ip_poll_panel/locale/".$settings['locale'].".php"; 
} else { 
	include INFUSIONS."ip_poll_panel/locale/English.php"; 
} 
  
$inf_title = $locale['PLAN_TITLE']; 
$inf_description = $locale['PLAN_DESC']; 
$inf_version = "1.0"; 
$inf_developer = "Digitanium & bartek124"; 
$inf_email = "digitanium@php-fusion.co.uk"; 
$inf_weburl = "http://www.php-fusion.co.uk"; 
  
$inf_folder = "ip_poll_panel"; 
  
$inf_newtable[1] = DB_IP_POLLS." ( 
		poll_id mediumint(8) unsigned NOT NULL auto_increment, 
		poll_title varchar(200) NOT NULL default '', 
		poll_opt_0 varchar(200) NOT NULL default '', 
		poll_opt_1 varchar(200) NOT NULL default '', 
		poll_opt_2 varchar(200) NOT NULL default '', 
		poll_opt_3 varchar(200) NOT NULL default '', 
		poll_opt_4 varchar(200) NOT NULL default '', 
		poll_opt_5 varchar(200) NOT NULL default '', 
		poll_opt_6 varchar(200) NOT NULL default '', 
		poll_opt_7 varchar(200) NOT NULL default '', 
		poll_opt_8 varchar(200) NOT NULL default '', 
		poll_opt_9 varchar(200) NOT NULL default '', 
		poll_votes_0 MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0', 
		poll_votes_1 MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0', 
		poll_votes_2 MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0', 
		poll_votes_3 MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0', 
		poll_votes_4 MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0', 
		poll_votes_5 MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0', 
		poll_votes_6 MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0', 
		poll_votes_7 MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0', 
		poll_votes_8 MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0', 
		poll_votes_9 MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0', 
		poll_ips text NOT NULL, 
		poll_started int(10) unsigned NOT NULL default '0', 
		poll_ended int(10) unsigned NOT NULL default '0', 
		PRIMARY KEY (poll_id) 
	) ENGINE=MyISAM;"; 
  
$inf_droptable[1] = DB_IP_POLLS; 
  
$inf_adminpanel[1] = array( 
	"title" => $locale['PLAN_ADMIN1'], 
	"image" => "image.gif", 
	"panel" => "ip_poll_admin.php", 
	"rights" => "IPP" 
); 
?>  
 
ip_poll_admin.php 
 
<?php 
/*---------------------------------------------------+ 
| <span style="border-bottom: 1px dotted black;">PHP</span>-Fusion 6 Content Management System 
+----------------------------------------------------+ 
| Copyright (c) 2005 Nick Jones 
| <a href='http://www.php-fusion.co.uk/' target='_blank'><span style='color:005C5B'>http://www.php-fusion.co.uk/</span></a> 
+----------------------------------------------------+ 
| Released under the terms & conditions of v2 of the 
| GNU General Public License. For details refer to 
| the included gpl.txt file or visit <a href='http://gnu.org' target='_blank'><span style='color:005C5B'>http://gnu.org</span></a> 
+----------------------------------------------------*/ 
require_once "../../maincore.php"; 
require_once THEMES."templates/admin_header.php"; 
  
include INFUSIONS."ip_poll_panel/infusion_db.php"; 
  
if (file_exists(INFUSIONS."ip_poll_panel/locale/".$settings['locale'].".php")) { 
	include INFUSIONS."ip_poll_panel/locale/".$settings['locale'].".php"; 
} else { 
	include INFUSIONS."ip_poll_panel/locale/English.php"; 
} 
  
if (!checkrights("IPP") || !defined("iAUTH") || $_GET['aid'] != iAUTH) { redirect("../../index.php"); } 
if (isset($_GET['poll_id']) && !isnum($_GET['poll_id'])) redirect("../../index.php"); 
  
if (isset($_POST['save'])) { 
	$poll_title = stripinput($_POST['poll_title']); 
	foreach($_POST['poll_option'] as $key => $value) { 
		$poll_option[$key] = stripinput($_POST['poll_option'][$key]); 
	} 
	if (isset($_GET['poll_id'])) { 
		if (!isNum($_GET['poll_id'])) { header("Location: ".FUSION_SELF); exit; } 
		$ended = (isset($_POST['close']) ? time() : 0); 
		$result = dbquery("UPDATE ".DB_IP_POLLS." SET poll_title='$poll_title', poll_opt_0='".$_POST['poll_option'][0]."', poll_opt_1='".$_POST['poll_option'][1]."', poll_opt_2='".(isset($_POST['poll_option'][2]) ? $_POST['poll_option'][2] : "")."', poll_opt_3='".(isset($_POST['poll_option'][3]) ? $_POST['poll_option'][3] : "")."', poll_opt_4='".(isset($_POST['poll_option'][4]) ? $_POST['poll_option'][4] : "")."', poll_opt_5='".(isset($_POST['poll_option'][5]) ? $_POST['poll_option'][5] : "")."', poll_opt_6='".(isset($_POST['poll_option'][6]) ? $_POST['poll_option'][6] : "")."', poll_opt_7='".(isset($_POST['poll_option'][7]) ? $_POST['poll_option'][7] : "")."', poll_opt_8='".(isset($_POST['poll_option'][8]) ? $_POST['poll_option'][8] : "")."', poll_opt_9='".(isset($_POST['poll_option'][9]) ? $_POST['poll_option'][9] : "")."', poll_ended='$ended' WHERE poll_id='".$_GET['poll_id']."'"); 
		opentable($locale['PLAN_400']); 
		echo "<center><br>\n".$locale['PLAN_401']."<br /><br />\n<a href='".FUSION_SELF.$aidlink."'>".$locale['PLAN_405']."</a><br><br>\n</center>\n"; 
		closetable(); 
	} else { 
  
		$result = dbquery("UPDATE ".DB_IP_POLLS." SET poll_ended='".time()."' WHERE poll_ended='0'"); 
		$result = dbquery("INSERT INTO ".DB_IP_POLLS." VALUES('', '$poll_title', '".$_POST['poll_option'][0]."', '".$_POST['poll_option'][1]."', '".(isset($_POST['poll_option'][2]) ? $_POST['poll_option'][2] : "")."', '".(isset($_POST['poll_option'][3]) ? $_POST['poll_option'][3] : "")."', '".(isset($_POST['poll_option'][4]) ? $_POST['poll_option'][4] : "")."', '".(isset($_POST['poll_option'][5]) ? $_POST['poll_option'][5] : "")."', '".(isset($_POST['poll_option'][6]) ? $_POST['poll_option'][6] : "")."', '".(isset($_POST['poll_option'][7]) ? $_POST['poll_option'][7] : "")."', '".(isset($_POST['poll_option'][8]) ? $_POST['poll_option'][8] : "")."', '".(isset($_POST['poll_option'][9]) ? $_POST['poll_option'][9] : "")."', '', '', '', '', '', '', '', '', '', '', '', '".time()."', '0')"); 
		opentable($locale['PLAN_400']); 
		echo "<center><br>\n".$locale['PLAN_402']."<br><br>\n<a href='".FUSION_SELF.$aidlink."'>".$locale['PLAN_405']."</a><br><br>\n</center>\n"; 
		closetable(); 
	} 
} else if (isset($_POST['delete'])) { 
	$result = dbquery("SELECT * FROM ".DB_IP_POLLS." WHERE poll_id='".$_POST['poll_id']."'"); 
	if (dbrows($result) != 0) $result = dbquery("DELETE FROM ".DB_IP_POLLS." WHERE poll_id='".$_POST['poll_id']."'"); 
	opentable($locale['PLAN_403']); 
	echo "<center><br>\n".$locale['PLAN_404']."<br><br>\n<a href='".FUSION_SELF.$aidlink."'>".$locale['PLAN_405']."</a><br><br>\n</center>\n"; 
	closetable(); 
} else { 
	if (isset($_POST['preview'])) { 
		$poll = ""; $i = 0; 
		$poll_title = stripinput($_POST['poll_title']); 
		while ($i < count($_POST['poll_option'])) { 
			$poll_option[$i] = stripinput($_POST['poll_option'][$i]); 
			$poll .= "<input type='checkbox' name='option[$i]'> $poll_option[$i]<br><br>\n"; 
			$i++; 
		} 
		$opt_count = (isset($_POST['opt_count']) && $_POST['opt_count'] != 10 ? count($poll_option) : $_POST['opt_count']); 
		opentable($locale['PLAN_410']); 
		echo "<table align='center' width='280' cellpadding='0' cellspacing='0' class='tbl'> 
<tr> 
<td>$poll_title<br><br> 
$poll</td> 
</tr> 
<tr> 
<td align='center'><input type='button' name='blank' value='".$locale['PLAN_411']."' class='button' style='width:70px'></td> 
</tr> 
</table>\n"; 
		closetable(); 
		tablebreak(); 
	} 
	$editlist = ""; 
	$result = dbquery("SELECT * FROM ".DB_IP_POLLS." ORDER BY poll_id DESC"); 
	if (dbrows($result) != 0) { 
		while ($data = dbarray($result)) { 
			$editlist .= "<option value='".$data['poll_id']."'>".$data['poll_title']."</option>\n"; 
		} 
		opentable($locale['PLAN_420']); 
		echo "<form name='editform' method='post' action='".FUSION_SELF.$aidlink."'> 
<center> 
<select name='poll_id' class='textbox' style='width:200px;'> 
$editlist</select> 
<input type='submit' name='edit' value='".$locale['PLAN_421']."' class='button'> 
<input type='submit' name='delete' value='".$locale['PLAN_422']."' class='button'> 
</center> 
</form>\n"; 
		closetable(); 
		tablebreak(); 
	} 
	if (isset($_POST['edit'])) { 
		//if (!isNum($poll_id)) { header("Location: ".FUSION_SELF); exit; } 
		$data = dbarray(dbquery("SELECT * FROM ".DB_IP_POLLS." WHERE poll_id='".$_POST['poll_id']."'")); 
		$poll_title = $data['poll_title']; 
		for ($i=0; $i<=9; $i++) { 
			if ($data["poll_opt_".$i]) $poll_option[$i] = $data["poll_opt_".$i]; 
		} 
		$opt_count = count($poll_option); 
		$poll_started = $data['poll_started']; 
		$poll_ended = $data['poll_ended']; 
	} 
	if (isset($_POST['addoption'])) { 
		$poll_title = stripinput($_POST['poll_title']); 
		foreach($_POST['poll_option'] as $key => $value) { 
			$poll_option[$key] = stripinput($_POST['poll_option'][$key]); 
		} 
		$opt_count = ($_POST['opt_count'] != 10 ? count($poll_option) + 1 : $_POST['opt_count']); 
	} 
	$i = 0; $opt = 1; 
	$poll_title = isset($poll_title) ? $poll_title : ""; 
	$opt_count = isset($opt_count) ? $opt_count : 2; 
	if (isset($poll_id)) $poll_ended = isset($_POST['poll_ended']) ? $_POST['poll_ended'] : 0; 
	opentable((isset($_POST['poll_id']) ? $locale['PLAN_431'] : $locale['PLAN_430'])); 
	echo "<form name='pollform' method='post' action='".FUSION_SELF.$aidlink.(isset($_POST['poll_id']) ? "&poll_id=".$_POST['poll_id']."&poll_ended=$poll_ended" : "")."'> 
<table align='center' width='280' cellpadding='0' cellspacing='0' class='tbl'> 
<tr> 
<td width='80'>".$locale['PLAN_433']."</td><td><input type='text' name='poll_title' value='$poll_title' class='textbox' style='width:200px'></td> 
</tr> 
<tr>\n"; 
	while ($i != $opt_count) { 
		$poll_opt = isset($poll_option[$i]) ? $poll_option[$i] : ""; 
		echo "<tr>\n<td width='80'>".$locale['PLAN_434']."$opt</td>\n"; 
		echo "<td><input type='text' name='poll_option[$i]' value='$poll_opt' class='textbox' style='width:200px'></td>\n</tr>\n"; 
		$i++; $opt++; 
	} 
	echo "</table> 
<table align='center' width='280' cellpadding='0' cellspacing='0'> 
<tr> 
<td align='center'><br>\n"; 
	if (isset($_POST['poll_id']) && $poll_ended == 0) { 
		echo "<input type='checkbox' name='close' value='yes'>".$locale['PLAN_435']."<br><br>\n"; 
	} 
	if (!isset($_POST['poll_id']) || isset($_POST['poll_id']) && $poll_ended == 0) { 
		echo "<input type='hidden' name='opt_count' value='$opt_count'> 
<input type='submit' name='addoption' value='".$locale['PLAN_438']."' class='button'> 
<input type='submit' name='preview' value='".$locale['PLAN_439']."' class='button'> 
<input type='submit' name='save' value='".$locale['PLAN_440']."' class='button'>\n"; 
	} else { 
		echo $locale['PLAN_436'].showdate("shortdate", $poll_started)."<br>\n"; 
		echo $locale['PLAN_437'].showdate("shortdate", $poll_ended)."<br>\n"; 
	} 
	echo "</td>\n</tr>\n</table>\n</form>\n"; 
	closetable(); 
} 
  
require_once THEMES."templates/footer.php"; 
?>  
 
ip_poll_archive.php 
 
<?php 
/*---------------------------------------------------+ 
| <span style="border-bottom: 1px dotted black;">PHP</span>-Fusion 6 Content Management System 
+----------------------------------------------------+ 
| Copyright (c) 2005 Nick Jones 
| <a href='http://www.php-fusion.co.uk/' target='_blank'><span style='color:005C5B'>http://www.php-fusion.co.uk/</span></a> 
+----------------------------------------------------+ 
| Released under the terms & conditions of v2 of the 
| GNU General Public License. For details refer to 
| the included gpl.txt file or visit <a href='http://gnu.org' target='_blank'><span style='color:005C5B'>http://gnu.org</span></a> 
+----------------------------------------------------*/ 
require_once "../../maincore.php"; 
require_once THEMES."templates/header.php"; 
  
include INFUSIONS."ip_poll_panel/infusion_db.php"; 
  
if (file_exists(INFUSIONS."ip_poll_panel/locale/".$settings['locale'].".php")) { 
	include INFUSIONS."ip_poll_panel/locale/".$settings['locale'].".php"; 
} else { 
	include INFUSIONS."ip_poll_panel/locale/English.php"; 
} 
  
$result = dbquery("SELECT * FROM ".DB_IP_POLLS." WHERE poll_ended!='0' ORDER BY poll_id DESC"); 
if (dbrows($result) != 0) { 
	$view_list = ""; 
	while ($data = dbarray($result)) { 
		$view_list .= "<option value='".$data['poll_id']."'>".$data['poll_title']."</option>\n"; 
	} 
	opentable($locale['PLAN_107']); 
	echo "<form name='pollsform' method='post' action='".FUSION_SELF."'> 
<center> 
".$locale['PLAN_108']."<br> 
<select name='oldpoll_id' class='textbox'> 
$view_list</select> 
<input type='submit' name='view' value='".$locale['PLAN_109']."' class='button'> 
</center> 
</form>\n"; 
	closetable(); 
} 
if (isset($_POST['oldpoll_id'])) { 
	$data = dbarray(dbquery("SELECT * FROM ".DB_IP_POLLS." WHERE poll_id='".$_POST['oldpoll_id']."' AND poll_ended!='0'")); 
	$oldpoll_votes = 0; 
	for ($i=0; $i<=9; $i++) { 
		if ($data["poll_opt_".$i]) $oldpoll_option[$i] = $data["poll_opt_".$i]; 
		$oldpoll_votes = $oldpoll_votes + $data["poll_votes_".$i]; 
	} 
	$poll_archive = ""; $i = 0; 
	while ($i < count($oldpoll_option)) { 
		$oldnum_votes = $data["poll_votes_".$i]; 
		$oldopt_votes = ($oldpoll_votes ? number_format(100 / $oldpoll_votes * $oldnum_votes) : 0); 
		$poll_archive .= $oldpoll_option[$i]."<br> 
<img src='".THEME."images/pollbar.gif' alt='".$oldpoll_option[$i]."' height='12' width='$oldopt_votes%' class='poll'><br> 
".$oldopt_votes."% [".$oldnum_votes." ".($oldnum_votes == 1 ? $locale['PLAN_102'] : $locale['PLAN_103'])."]<br>\n"; 
		$i++; 
	} 
	tablebreak(); 
	opentable($locale['PLAN_110']); 
	echo "<table align='center' width='200' cellspacing='0' cellpadding='0' class='tbl'> 
<tr> 
<td>".$data['poll_title']." 
<hr> 
$poll_archive 
<center><br> 
".$locale['PLAN_104'].$oldpoll_votes."<br> 
".$locale['PLAN_105'].showdate("shortdate", $data['poll_started'])."<br> 
".$locale['PLAN_106'].showdate("shortdate", $data['poll_ended'])." 
</center> 
</td> 
</td> 
</table>\n"; 
	closetable(); 
} 
  
require_once THEMES."templates/footer.php"; 
?>  
 
ip_poll_panel.php 
 
<?php 
/*---------------------------------------------------+ 
| <span style="border-bottom: 1px dotted black;">PHP</span>-Fusion 6 Content Management System 
+----------------------------------------------------+ 
| Copyright (c) 2005 Nick Jones 
| <a href='http://www.php-fusion.co.uk/' target='_blank'><span style='color:005C5B'>http://www.php-fusion.co.uk/</span></a> 
+----------------------------------------------------+ 
| Released under the terms & conditions of v2 of the 
| GNU General Public License. For details refer to 
| the included gpl.txt file or visit <a href='http://gnu.org' target='_blank'><span style='color:005C5B'>http://gnu.org</span></a> 
+----------------------------------------------------*/ 
if (!defined("IN_FUSION")) { die("Access Denied"); } 
  
include INFUSIONS."ip_poll_panel/infusion_db.php"; 
  
if (file_exists(INFUSIONS."ip_poll_panel/locale/".$settings['locale'].".php")) { 
	include INFUSIONS."ip_poll_panel/locale/".$settings['locale'].".php"; 
} else { 
	include INFUSIONS."ip_poll_panel/locale/English.php"; 
} 
  
openside($locale['PLAN_100']); 
if (isset($_POST['cast_vote'])) { 
	$sql = dbquery("SELECT * FROM ".DB_IP_POLLS." WHERE poll_id='".$_POST['poll_id']."'"); 
	$data = dbarray($sql); 
	$poll_ips = explode("|", $data['poll_ips']); 
	if (!in_array(USER_IP, $poll_ips)) { 
		array_push($poll_ips, USER_IP); 
		$poll_ips = implode("|", $poll_ips); 
		$result = dbquery("UPDATE ".DB_IP_POLLS." SET poll_votes_".$_POST['voteoption']."=poll_votes_".$_POST['voteoption']."+1, poll_ips='$poll_ips' WHERE poll_id=".$_POST['poll_id'].""); 
		header("Location: ".FUSION_SELF.(FUSION_QUERY ? "?".FUSION_QUERY : "")); 
	} 
} 
$result = dbquery("SELECT * FROM ".DB_IP_POLLS." ORDER BY poll_started DESC LIMIT 1"); 
if (dbrows($result) != 0) { 
	$data = dbarray($result); 
	$poll_title = $data['poll_title']; 
	$poll_ips = explode("|", $data['poll_ips']); 
	$poll_votes = 0; 
	for ($i=0; $i<=9; $i++) { 
		if ($data["poll_opt_".$i]) $poll_option[$i] = $data["poll_opt_".$i]; 
		$poll_votes = $poll_votes + $data["poll_votes_".$i]; 
	} 
	if (!in_array(USER_IP, $poll_ips) && $data['poll_ended'] == 0) { 
		$poll = ""; $i = 0; $num_opts = count($poll_option); 
		while ($i < $num_opts) { 
			$poll .= "<input type='radio' name='voteoption' value='$i'> $poll_option[$i]<br><br>\n"; 
			$i++; 
		} 
		echo "<form name='voteform' method='post' action='".FUSION_SELF.(FUSION_QUERY ? "?".FUSION_QUERY : "")."'> 
<b>$poll_title</b><br><br> 
$poll<center><input type='hidden' name='poll_id' value='".$data['poll_id']."'> 
<input type='submit' name='cast_vote' value='".$locale['PLAN_101']."' class='button'></center> 
</form>\n"; 
	} else { 
		$poll =  ""; $i = 0; $num_opts = count($poll_option); 
		while ($i < $num_opts) { 
			$num_votes = $data["poll_votes_".$i]; 
			$opt_votes = ($poll_votes ? number_format(100 / $poll_votes * $num_votes) : 0); 
			$poll .= "<div>".$poll_option[$i]."</div> 
<div><img src='".THEME."images/pollbar.gif' alt='".$poll_option[$i]."' height='12' width='$opt_votes' class='poll'></div> 
<div>".$opt_votes."% [".$num_votes." ".($num_votes == 1 ? $locale['PLAN_102'] : $locale['PLAN_103'])."]</div><br>\n"; 
			$i++; 
		} 
		echo "<b>".$poll_title."</b><br><br> 
$poll 
<center>".$locale['PLAN_104'].$poll_votes."<br> 
".$locale['PLAN_105'].showdate("shortdate", $data['poll_started']); 
		if ($data['poll_ended'] > 0) { 
			echo "<br>\n".$locale['PLAN_106'].showdate("shortdate", $data['poll_ended'])."\n"; 
		} 
		$result = dbquery("SELECT * FROM ".DB_IP_POLLS); 
		if (dbrows($result) > 1) { 
			echo "<br><br><img src='".THEME."images/bulletb.gif'> 
<a href='".INFUSIONS."ip_poll_panel/ip_poll_archive.php' class='side'>".$locale['PLAN_107']."</a> <img src='".THEME."images/bulletb.gif'>\n"; 
		} 
		echo "</center>\n"; 
	} 
} else { 
	echo "<center>".$locale['global_142']."</center>\n"; 
} 
closeside(); 
?> 
 
  |