summaryrefslogtreecommitdiff
path: root/web/html/tu.php
diff options
context:
space:
mode:
Diffstat (limited to 'web/html/tu.php')
-rw-r--r--web/html/tu.php438
1 files changed, 70 insertions, 368 deletions
diff --git a/web/html/tu.php b/web/html/tu.php
index 524e14d..e2e44b7 100644
--- a/web/html/tu.php
+++ b/web/html/tu.php
@@ -8,44 +8,30 @@ set_lang();
check_sid();
html_header();
-# get login privileges
-#
+# Default votes per page
+$pp = 5;
+
+$atype = "";
if (isset($_COOKIE["AURSID"])) {
- # Only logged in users can do stuff
- #
$atype = account_from_sid($_COOKIE["AURSID"]);
-} else {
- $atype = "";
}
if ($atype == "Trusted User" OR $atype == "Developer") {
- # Show the TU interface
- #
-
- # Temp value for results per page
$pp = 5;
- if (isset($_REQUEST['id'])) {
- # Show application details
- # depending on action and time frame will show either
- # sponsor button, comments and vote buttons
- #
-
- if (intval($_REQUEST['id'])) {
+ if (isset($_GET['id'])) {
+ if (is_numeric($_GET['id'])) {
$q = "SELECT * FROM TU_VoteInfo ";
- $q.= "WHERE ID = " . $_REQUEST['id'];
+ $q.= "WHERE ID = " . $_GET['id'];
$dbh = db_connect();
$results = db_query($q, $dbh);
$row = mysql_fetch_assoc($results);
if (empty($row)) {
- print "Could not retrieve proposal details.\n";
+ print __("Could not retrieve proposal details.");
} else {
- # Print out application details, thanks again AUR
- #
-
$isrunning = $row['End'] > time() ? 1 : 0;
$qvoted = "SELECT * FROM TU_Votes WHERE ";
@@ -53,30 +39,27 @@ if ($atype == "Trusted User" OR $atype == "Developer") {
$qvoted.= "UserID = " . uid_from_sid($_COOKIE["AURSID"]);
$hasvoted = mysql_num_rows(db_query($qvoted, $dbh));
- # Can this person vote?
- #
- $canvote = 1; // we assume they can
- $errorvote = ""; // error message to give
+ $canvote = 1;
+ $errorvote = "";
if ($isrunning == 0) {
$canvote = 0;
- $errorvote = "Voting is closed for this proposal.";
+ $errorvote = __("Voting is closed for this proposal.");
} else if ($row['User'] == username_from_sid($_COOKIE["AURSID"])) {
$canvote = 0;
- $errorvote = "You cannot vote in an proposal regarding you.";
+ $errorvote = __("You cannot vote in an proposal about you.");
} else if ($hasvoted != 0) {
$canvote = 0;
- $errorvote = "You've already voted in this proposal.";
+ $errorvote = __("You've already voted in this proposal.");
}
- # have to put this here so results are correct immediately after voting
if ($canvote == 1) {
if (isset($_POST['doVote'])) {
if (isset($_POST['voteYes'])) {
- $myvote = "Yes";
+ $myvote = __("Yes");
} else if (isset($_POST['voteNo'])) {
- $myvote = "No";
+ $myvote = __("No");
} else if (isset($_POST['voteAbstain'])) {
- $myvote = "Abstain";
+ $myvote = __("Abstain");
}
$qvote = "UPDATE TU_VoteInfo SET " . $myvote . " = " . ($row[$myvote] + 1) . " WHERE ID = " . $row['ID'];
@@ -87,7 +70,7 @@ if ($atype == "Trusted User" OR $atype == "Developer") {
# Can't vote anymore
#
$canvote = 0;
- $errorvote = "You've already voted for this proposal.";
+ $errorvote = __("You've already voted for this proposal.");
# Update if they voted
$hasvoted = mysql_num_rows(db_query($qvoted, $dbh));
@@ -95,357 +78,76 @@ if ($atype == "Trusted User" OR $atype == "Developer") {
$row = mysql_fetch_assoc($results);
}
}
-
- # I think I understand why MVC is good for this stuff..
- echo "<div class=\"pgbox\">\n";
- echo " <div class=\"pgboxtitle\"><span class=\"f3\">Proposal Details</span></div>\n";
- echo " <div class=\"pgboxbody\">\n";
-
- if ($isrunning == 1) {
- print "<div style='text-align: center; font-weight: bold; color: red'>This vote is still running.</div>";
- print "<br />";
- }
-
- print "User: <b>";
-
- if (!empty($row['User'])) {
- print "<a href='packages.php?K=" . $row['User'] . "&SeB=m'>" . $row['User'] . "</a>";
- } else {
- print "N/A";
- }
-
- print "</b><br />\n";
-
- print "Submitted: <b>" . gmdate("r", $row['Submitted']) . "</b> by ";
- print "<b>" . username_from_id($row['SubmitterID']) . "</b><br />\n";
-
- if ($isrunning == 0) {
- print "Ended: ";
- } else {
- print "Ends: ";
- }
- print "<b>" . gmdate("r", $row['End']) . "</b><br />\n";
-
- print "<br />\n";
-
- $row['Agenda'] = htmlentities($row['Agenda']);
- # str_replace seems better than <pre> because it still maintains word wrapping
- print str_replace("\n", "<br />\n", $row['Agenda']);
-
- print "<br />\n";
- print "<br />\n";
-
- print "<center>\n";
- print "<table cellspacing='3' class='boxSoft' style='width: 50%'>\n";
- print "</tr>\n";
- print "<tr>\n";
- print " <td class='boxSoft'>\n";
- print "<table width='100%' cellspacing='0' cellpadding='2'>\n";
-
- print "<tr>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "Yes";
- print "</span></th>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "No";
- print "</span></th>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "Abstain";
- print "</span></th>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "Total";
- print "</span></th>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "Voted?";
- print "</span></th>\n";
- print "</tr>\n";
-
- $c = "data1";
-
- print "<tr>\n";
- print " <td class='".$c."'><span class='f5'><span class='blue'>";
- print $row['Yes'];
- print "</span></span></td>\n";
- print " <td class='".$c."'><span class='f5'><span class='blue'>";
- print $row['No'];
- print "</span></span></td>\n";
- print " <td class='".$c."'><span class='f5'><span class='blue'>";
- print $row['Abstain'];
- print "</span></span></td>\n";
- print " <td class='".$c."'><span class='f5'><span class='blue'>";
- print ($row['Yes'] + $row['No'] + $row['Abstain']);
- print "</span></span></td>\n";
- print " <td class='".$c."'><span class='f5'><span class='blue'>";
-
- if ($hasvoted == 0) {
- print "<span style='color: red; font-weight: bold'>No</span>";
- } else {
- print "<span style='color: green; font-weight: bold'>Yes</span>";
- }
-
- print "</span></span></td>\n";
- print "</tr>\n";
-
- print "</table>\n";
- print "</table>\n";
-
- echo "</div></div>\n";
-
- # Actions, vote buttons
- #
- print "<br />\n";
- print "<div class='pgbox'>\n";
- print "<div class='pgboxtitle'><span class='f3'>Vote Actions</span></div>\n";
- print "<div class='pgboxbody'>\n";
-
- if ($canvote == 1) {
- print "<center><form action='tu.php?id=" . $row['ID'] . "' method='post'>\n";
- print "<input type='submit' class='button' name='voteYes' value='Yes'>\n";
- print "<input type='submit' class='button' name='voteNo' value='No'>\n";
- print "<input type='submit' class='button' name='voteAbstain' value='Abstain'>\n";
- print "<input type='hidden' name='doVote' value='1'>\n";
- print "</form></center>\n";
- } else {
- print "<center>$errorvote</center>";
- }
-
- print "</div></div>\n";
- print "<br /><center><a href='tu.php'>Back</a></center>\n";
-
+ include("tu_details.php");
}
-
} else {
- print "Vote ID not valid.\n";
+ print __("Vote ID not valid.");
}
} else {
- # page listing applications being discussed, voted on and all those finished
- #
-
- # I guess there should be a function since I use this a few times
- function gen_results($offset, $limit, $sort, $by, $type="normal") {
-
- $dbh = db_connect();
-
- if (!empty($offset) AND is_numeric($offset)) {
- if ($offset >= 1) {
- $off = $offset;
- } else {
- $off = 0;
- }
- } else {
- $off = 0;
- }
-
- $q = "SELECT * FROM TU_VoteInfo";
-
- if ($type == "new") {
- $q.= " WHERE End > " . time();
- $application = "Current Votes";
- } else {
- $application = "All Votes";
- }
-
- $order = ($by == 'down') ? 'DESC' : 'ASC';
-
- # not much to sort, I'm unsure how to sort by username
- # when we only store the userid, someone come up with a nifty
- # way to do this
- #
- switch ($sort) {
- case 'sub':
- $q.= " ORDER BY Submitted $order";
- break;
- default:
- $q.= " ORDER BY Submitted $order";
- break;
- }
-
- if ($limit != 0) {
- $q.= " LIMIT " . $off . ", ". $limit;
- }
-
- $result = db_query($q, $dbh);
-
- if ($by == "down") {
- $by_next = "up";
- } else {
- $by_next = "down";
- }
-
- print "<center>\n";
- print "<table cellspacing='3' class='boxSoft'>\n";
- print "<tr>\n";
- print " <td class='boxSoftTitle' align='right'>\n";
- print " <span class='f3'>$application</span>\n";
- print " </td>\n";
- print "</tr>\n";
- print "<tr>\n";
- print " <td class='boxSoft'>\n";
- print "<table width='100%' cellspacing='0' cellpadding='2'>\n";
-
- print "<tr>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "Proposal";
- print "</span></th>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "<a href='?off=$off&sort=sub&by=$by_next'>Start</a>";
- print "</span></th>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "End";
- print "</span></th>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "User";
- print "</span></th>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "Yes";
- print "</span></th>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "No";
- print "</span></th>\n";
-# I'm not sure if abstains are necessary inthis view, it's just extra clutter
-# print " <th style='border-bottom: #666 1px solid; vertical-align:";
-# print " bottom'><span class='f2'>";
-# print "Abstain";
-# print "</span></th>\n";
- print " <th style='border-bottom: #666 1px solid; vertical-align:";
- print " bottom'><span class='f2'>";
- print "Voted?";
- print "</span></th>\n";
- print "</tr>\n";
-
- if (mysql_num_rows($result) == 0) {
- print "<tr><td align='center' colspan='0'>No results found.</td></tr>\n";
- } else {
- for ($i = 0; $row = mysql_fetch_assoc($result); $i++) {
- # Thankyou AUR
-
- # alright, I'm going to just have a "new" table and the
- # "old" table can just have every vote, works just as well
- # and probably saves on doing some crap
- #
-
- (($i % 2) == 0) ? $c = "data1" : $c = "data2";
- print "<tr>\n";
- print " <td class='".$c."'><span class='f4'><span class='blue'>";
-
- $prev_Len = 100;
-
- if (strlen($row["Agenda"]) >= $prev_Len) {
- $row["Agenda"] = htmlentities(substr($row["Agenda"], 0, $prev_Len)) . "... -";
- } else {
- $row["Agenda"] = htmlentities($row["Agenda"]) . " -";
- }
-
- print $row["Agenda"];
- print " <a href='/tu.php?id=" . $row['ID'] . "'>[More]</a>";
- print "</span></span></td>\n";
- print " <td class='".$c."'><span class='f5'><span class='blue'>";
- # why does the AUR use gmdate with formatting that includes the offset
- # to GMT?!
- print gmdate("j M y", $row["Submitted"]);
- print "</span></span></td>\n";
- print " <td class='".$c."'><span class='f5'><span class='blue'>";
- print gmdate("j M y", $row["End"]);
- print "</span></span></td>\n";
- print " <td class='".$c."'><span class='f6'><span class='blue'>";
-
- if (!empty($row['User'])) {
- print "<a href='packages.php?K=" . $row['User'] . "&SeB=m'>";
- print $row['User'] . "</a>";
- } else {
- print "N/A";
- }
-
- print "</span></span></td>\n";
- print " <td class='".$c."'><span class='f5'><span class='blue'>";
- print $row['Yes'];
- print "</span></span></td>\n";
- print " <td class='".$c."'><span class='f5'><span class='blue'>";
- print $row['No'];
- print "</span></span></td>\n";
- print " <td class='".$c."'><span class='f5'><span class='blue'>";
- # See above
- # print $row['Abstain'];
- # print "</span></span></td>\n";
- # print " <td class='".$c."'><span class='f5'><span class='blue'>";
-
- $qvoted = "SELECT * FROM TU_Votes WHERE ";
- $qvoted.= "VoteID = " . $row['ID'] . " AND ";
- $qvoted.= "UserID = " . uid_from_sid($_COOKIE["AURSID"]);
- $hasvoted = mysql_num_rows(db_query($qvoted, $dbh));
-
- if ($hasvoted == 0) {
- print "<span style='color: red; font-weight: bold'>No</span>";
- } else {
- print "<span style='color: green; font-weight: bold'>Yes</span>";
- }
-
- print "</span></span></td>\n";
- print "</tr>\n";
- }
- }
+ $dbh = db_connect();
- print "</table>\n";
- print "</table>\n";
+ $offset = $_GET['off'];
+ $limit = $pp;
+ $by = $_GET['by'];
- if ($type == "old" AND $limit != 0) {
- $qnext = "SELECT ID FROM TU_VoteInfo";
- $nextresult = db_query($qnext, $dbh);
+ if (!empty($offset) AND is_numeric($offset)) {
+ if ($offset >= 1) {
+ $off = $offset;
+ } else {
+ $off = 0;
+ }
+ } else {
+ $off = 0;
+ }
- print "<table style='width: 90%'>\n";
+ $order = ($by == 'down') ? 'DESC' : 'ASC';
+ $lim = ($limit > 0) ? " LIMIT " . $off . ", " . $limit : "";
+ $by_next = ($by == "down") ? "up" : "down";
- if (mysql_num_rows($result)) {
- $sort = htmlentities($sort, ENT_QUOTES);
- $by = htmlentities($by, ENT_QUOTES);
+ $prev_Len = 100;
- print "<tr>\n";
- print "<td align='left'>\n";
- if ($off != 0) {
- $back = (($off - $limit) <= 0) ? 0 : $off - $limit;
- print "<a href='tu.php?off=$back&sort=" . $sort . "&by=" . $by . "'>Back</a>";
- }
- print "</td>\n";
+ $q = "SELECT * FROM TU_VoteInfo WHERE End > " . time() . " ORDER BY Submitted " . $order;
+ $result = db_query($q, $dbh);
- print "<td align='right'>\n";
- if (($off + $limit) < mysql_num_rows($nextresult)) {
- $forw = $off + $limit;
- print "<a href='tu.php?off=$forw&sort=" . $sort . "&by=" . $by . "'>Next</a>";
- }
- print "</td>\n";
- print "</tr>\n";
- }
- print "</table>\n";
- }
+ $type = __("Current Votes");
+ include("tu_list.php");
+?>
- print "</center>\n";
- }
+<center>
+ <a href='addvote.php'><?php print __("Add") ?></a>
+</center><br />
- # stop notices, ythanku Xilon
- if (empty($_REQUEST['sort'])) { $_REQUEST['sort'] = ""; }
- if (empty($_REQUEST['by'])) { $_REQUEST['by'] = ""; }
- if (empty($_REQUEST['off'])) { $_REQUEST['off'] = ""; }
+<?php
+ $q = "SELECT * FROM TU_VoteInfo ORDER BY Submitted " . $order . $lim;
+ $result = db_query($q, $dbh);
- gen_results(0, 0, $_REQUEST['sort'], $_REQUEST['by'], "new");
- print "<center><a href='addvote.php'>Add</a></center><br />";
- gen_results($_REQUEST['off'], $pp, $_REQUEST['sort'], $_REQUEST['by'], "old");
+ $type = __("All Votes");
+ include("tu_list.php");
+ $qnext = "SELECT ID FROM TU_VoteInfo";
+ $nextresult = db_query($qnext, $dbh);
+?>
+<table style='width: 90%'>
+ <?php if (mysql_num_rows($result)) { $by = htmlentities($by, ENT_QUOTES); ?>
+ <tr>
+ <td align='left'>
+ <?php if ($off != 0) { $back = (($off - $limit) <= 0) ? 0 : $off - $limit; ?>
+ <a href='tu.php?off=<?php print $back ?>&amp;by=<?php print $by ?>'><?php print __("Back") ?></a>
+ <?php } ?>
+ </td>
+ <td align='right'>
+ <?php if (($off + $limit) < mysql_num_rows($nextresult)) { $forw = $off + $limit; ?>
+ <a href='tu.php?off=<?php print $forw ?>&amp;by=<?php print $by ?>'><?php print __("Next") ?></a>
+ <?php } ?>
+ </td>
+ </tr>
+ <?php } ?>
+</table>
+<?php
}
} else {
- print "You are not allowed to access this area.\n";
+ print __("You are not allowed to access this area.");
}
html_footer(AUR_VERSION);
-
-?>