<?php

set_include_path(get_include_path() . PATH_SEPARATOR . '../lib');

include_once("aur.inc.php");
set_lang();
check_sid();

$title = __("Trusted User");

html_header($title);

# Default votes per page
$pp = 10;
$prev_Len = 75;

$atype = "";
if (isset($_COOKIE["AURSID"])) {
  $atype = account_from_sid($_COOKIE["AURSID"]);
}

if ($atype == "Trusted User" || $atype == "Developer") {

	if (isset($_GET['id'])) {
		if (is_numeric($_GET['id'])) {
			$row = vote_details($_GET['id']);

			if (empty($row)) {
				print __("Could not retrieve proposal details.");
			} else {
				$isrunning = $row['End'] > time() ? 1 : 0;

				# List voters of a proposal.
				$whovoted = voter_list($row['ID']);

				$canvote = 1;
				$hasvoted = 0;
				$errorvote = "";
				if ($isrunning == 0) {
					$canvote = 0;
					$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 about you.");
				}
				if (tu_voted($row['ID'], uid_from_sid($_COOKIE["AURSID"]))) {
					$canvote = 0;
					$hasvoted = 1;
					if ($isrunning) {
						$errorvote = __("You've already voted for this proposal.");
					}
				}

				if ($canvote == 1) {
					if (isset($_POST['doVote']) && check_token()) {
						if (isset($_POST['voteYes'])) {
							$myvote = "Yes";
						} else if (isset($_POST['voteNo'])) {
							$myvote = "No";
						} else if (isset($_POST['voteAbstain'])) {
							$myvote = "Abstain";
						}

						cast_proposal_vote($row['ID'], uid_from_sid($_COOKIE["AURSID"]), $myvote, $row[$myvote] + 1);

						# Can't vote anymore
						#
						$canvote = 0;
						$errorvote = __("You've already voted for this proposal.");

						# Update if they voted
						if (tu_voted($row['ID'], uid_from_sid($_COOKIE["AURSID"]))) {
							$hasvoted = 1;
						}
						$row = vote_details($_GET['id']);
					}
				}
				include("tu_details.php");
			}
		} else {
			print __("Vote ID not valid.");
		}

	} else {
		$limit = $pp;
		if (isset($_GET['off']))
			$offset = $_GET['off'];

		if (isset($_GET['by']))
			$by = $_GET['by'];
		else
			$by = 'desc';

		if (!empty($offset) && is_numeric($offset)) {
			if ($offset >= 1) {
				$off = $offset;
			} else {
				$off = 0;
			}
		} else {
			$off = 0;
		}

		$order = ($by == 'asc') ? 'ASC' : 'DESC';
		$lim = ($limit > 0) ? " LIMIT $limit OFFSET $off" : "";
		$by_next = ($by == 'desc') ? 'asc' : 'desc';

		$result = current_proposal_list($order);
		$type = __("Current Votes");
		include("tu_list.php");
?>

<?php
		$result = past_proposal_list($order, $lim);

		$type = __("Past Votes");
		include("tu_list.php");

		$nextresult = proposal_count();
?>
<div class="box">
	<p><a href="<?= get_uri('/addvote/'); ?>"><?= __("Add Proposal") ?></a></p>

	<?php if ($result):
		$by = htmlentities($by, ENT_QUOTES); ?>
		<?php if ($off != 0):
			$back = (($off - $limit) <= 0) ? 0 : $off - $limit; ?>
			<a href='<?= get_uri('/tu/'); ?>?off=<?= $back ?>&amp;by=<?= $by ?>'><?= __("Back") ?></a>
		<?php endif; ?>
		<?php if (($off + $limit) < $nextresult):
			$forw = $off + $limit; ?>
		<a href="<?= get_uri('/tu/'); ?>?off=<?= $forw ?>&amp;by=<?= $by ?>"><?= __("Next") ?></a>
		<?php endif; ?>
	<?php endif; ?>
</div>
<?php
	}
}
else {
	header('Location: /');
}

html_footer(AUR_VERSION);