cacert-boardvoting/motions.php
community.cacert.org 8094fd2df4 add withdrawl motion option
git-svn-id: http://svn.cacert.cl/Software/Voting/vote@43 d4452222-2f33-11de-9270-010000000000
2009-05-29 03:21:23 +00:00

135 lines
4.3 KiB
PHP

<?php
require_once("database.php");
$db = new DB();
$db->closeVotes();
$page = is_numeric($_REQUEST['page'])?$_REQUEST['page']:1;
?>
<html>
<head>
<title>CAcert Board Decisions</title>
<meta http-equiv="Content-Type" content="text/html; charset='UTF-8'" />
<link rel="stylesheet" type="text/css" href="styles.css" />
</head>
<body>
<table class="list">
<tr>
<th>Status</th>
<th>Motion</th>
<th>Actions</th>
</tr>
<?php
if ($_REQUEST['withdrawl'] && $_REQUEST['confirm'] && $_REQUEST['id']) {
$stmt = $db->getStatement("close decision");
$status = -2;
$stmt->bindParam(":status",$status);
$stmt->bindParam(":decision",$_REQUEST['id']);
$stmt->execute();
}
if ($_REQUEST['motion']) {
$stmt = $db->getStatement("list decision");
$stmt->execute(array($_REQUEST['motion']));
} else {
$stmt = $db->getStatement("list decisions");
$stmt->execute(array($page));
}
$items = 0;
$id = -1;
while ($row = $stmt->fetch()) {
$items++;
$id = $row['id'];
?><tr>
<td class="<?php switch($row['status']) { case 0: echo "pending"; break; case 1: echo "approved"; break; case -1: echo "declined"; break; case -2: echo "withdrawn"; break; }?>">
<?php
switch($row['status']) {
case 0: echo "Pending<br/><i>".$row['due']." UTC</i>"; break;
case 1: echo "Approved<br/><i>".$row['modified']." UTC</i>"; break;
case -1: echo "Declined<br/><i>".$row['modified']." UTC</i>"; break;
case -2: echo "Withdrawn<br/><i>".$row['modified']." UTC</i>"; break;
}
?>
</td>
<td>
<i><a href="motions.php?id=<?php echo $row['tag'].'">'.$row['tag']; ?></a></i><br/>
<b><?php echo htmlentities($row['title']); ?></b><br/>
<pre><?php echo htmlspecialchars($row['content']); ?></pre>
<br/>
<i>Due: <?php echo($row['due']); ?> UTC</i><br/>
<i>Proposed: <?php echo($row['proposer']); ?> (<?php echo($row['proposed']); ?> UTC)</i><br/>
<i>Required Votes: <?php echo($row['quorum']); ?></i><br/>
<i>Majority: <?php echo($row['majority']); ?>%</i><br/>
<i>Aye|Naye|Abstain: <?php echo($row['ayes']); ?>|<?php echo($row['nayes']); ?>|<?php echo($row['abstains']); ?></i><br/>
<?php
if ($row['status'] ==0 || $_REQUEST['showvotes']) {
$state = array('Naye','Abstain','Aye');
$vstmt = $db->getStatement("list votes");
$vstmt->execute(array($row['id']));
echo "<i>Votes:</i><br/>";
while ($vrow = $vstmt->fetch()) {
echo "<i>".$vrow['name']." ".$state[$vrow['vote']+1]."</i><br/>";
}
} else {
echo '<i><a href="motions.php?motion='.$row['tag'].'&showvotes=1">Show Votes</a></i><br/>';
}
?>
</td>
<td class="actions">
<?php
if ($row['status'] == 0) {
?>
<ul>
<li><a href="vote.php?motion=<?php echo($row['id']); ?>&amp;vote=1">Aye</a></li>
<li><a href="vote.php?motion=<?php echo($row['id']); ?>&amp;vote=0">Abstain</a></li>
<li><a href="vote.php?motion=<?php echo($row['id']); ?>&amp;vote=-1">Naye</a></li>
<li><a href="proxy.php?motion=<?php echo($row['id']); ?>">Proxy Vote</a></li>
<li><a href="motion.php?motion=<?php echo($row['id']); ?>">Modify</a></li>
<li><a href="motions.php?motion=<?php echo($row['tag']); ?>&amp;withdrawl=1">Withdrawl</a></li>
</ul>
<?php
} else {
?>
&nbsp;
<?php
}
?>
</td>
</tr><?php
}
?>
<tr>
<td colspan="2" class="navigation">
<?php if ($page>1) { ?><a href="?page=<?php echo($page-1); ?>">&lt;</a><?php } else { ?>&nbsp;<?php } ?>
&nbsp;
<?php if ($items>9) { ?><a href="?page=<?php echo($page+1); ?>">&gt;</a><?php } else { ?>&nbsp;<?php } ?>
</td>
<td class="actions">
<ul>
<li><a href="motion.php">New Motion</a></li>
</ul>
</td>
</tr>
<?php
if ($_REQUEST['withdrawl']) {
?>
<tr>
<td colspan="3">
<?php
if ($_REQUEST['confirm'] && $_REQUEST['id']) {
?>
<a href="motions.php">Motion Withdrawn</a>
<?php
} else {
?>
<form action="?withdrawl=1&amp;confirm=1&amp;id=<?php echo $id;?>" method="post">
<input type="submit" value="Withdrawl">
</form>
<?php
}
?>
</td>
</tr>
<?php
}
?>
</table>
</body>
</html>