<?php

// +----------------------------------------------------------------------+
// | OpenConf                                                             |
// +----------------------------------------------------------------------+
// | Copyright (c) 2002-2014 Zakon Group LLC.  All Rights Reserved.       |
// +----------------------------------------------------------------------+
// | This source file is subject to the OpenConf License, available on    |
// | the OpenConf web site: www.OpenConf.com                              |
// +----------------------------------------------------------------------+

require_once "../include.php";
require_once OCC_REVIEW_INC_FILE;

beginChairSession();

printHeader("Reviews",1);

$pq = "SELECT `" . OCC_TABLE_PAPER . "`.`paperid`, `" . OCC_TABLE_PAPERREVIEWER . "`.`reviewerid`, `" . OCC_TABLE_PAPERREVIEWER . "`.`recommendation`, CONCAT_WS(' ',`" . OCC_TABLE_REVIEWER . "`.`name_first`,`" . OCC_TABLE_REVIEWER . "`.`name_last`) AS `name`, `" . OCC_TABLE_PAPERREVIEWER . "`.`completed`, `" . OCC_TABLE_PAPERREVIEWER . "`.`updated`, `title` FROM `" . OCC_TABLE_PAPER . "` LEFT JOIN `" . OCC_TABLE_PAPERREVIEWER . "` ON `" . OCC_TABLE_PAPER . "`.`paperid`=`" . OCC_TABLE_PAPERREVIEWER . "`.`paperid` LEFT JOIN `" . OCC_TABLE_REVIEWER . "` ON `" . OCC_TABLE_PAPERREVIEWER . "`.`reviewerid`=`" . OCC_TABLE_REVIEWER . "`.`reviewerid`";

if (!isset($_GET['s']) || empty($_GET['s']) || ($_GET['s'] == "pid")) { 
	$q = $pq . " ORDER BY " . OCC_TABLE_PAPER . ".paperid, " . OCC_TABLE_REVIEWER . ".reviewerid";
	$sortid = "paper";
	$pidsort="<nobr>S-ID</nobr><br />" . $OC_sortImg; 
	$psort='<a href="'.$_SERVER['PHP_SELF'].'?s=paper">Submission</a>'; 
	$rsort='<a href="'.$_SERVER['PHP_SELF'].'?s=reviewer">Reviewer</a>'; 
	$ridsort='<nobr><a href="'.$_SERVER['PHP_SELF'].'?s=rid">R-ID</a></nobr>'; 
} elseif ($_GET['s'] == "paper") {
	$q = $pq . " ORDER BY " . OCC_TABLE_PAPER . ".title, " . OCC_TABLE_REVIEWER . ".reviewerid";
	$sortid = "paper";
	$pidsort='<nobr><a href="'.$_SERVER['PHP_SELF'].'?s=pid">S-ID</a></nobr>';  
	$psort="Submission<br />" . $OC_sortImg;
	$rsort='<a href="'.$_SERVER['PHP_SELF'].'?s=reviewer">Reviewer</a>'; 
	$ridsort='<nobr><a href="'.$_SERVER['PHP_SELF'].'?s=rid">R-ID</a></nobr>'; 
} elseif ($_GET['s'] == "rid") {
	$q = $pq . " ORDER BY " . OCC_TABLE_REVIEWER . ".reviewerid, " . OCC_TABLE_PAPER . ".paperid";
	$sortid = "reviewer";
	$pidsort='<nobr><a href="'.$_SERVER['PHP_SELF'].'?s=pid">S-ID</a></nobr>'; 
	$psort='<a href="'.$_SERVER['PHP_SELF'].'?s=paper">Submission</a>'; 
	$rsort='<a href="'.$_SERVER['PHP_SELF'].'?s=reviewer">Reviewer</a>'; 
	$ridsort="<nobr>R-ID</nobr><br />" . $OC_sortImg; 
} elseif ($_GET['s'] == "reviewer") {
	$q = $pq . " ORDER BY " . OCC_TABLE_REVIEWER . ".name_last, " . OCC_TABLE_REVIEWER . ".name_first, " . OCC_TABLE_PAPER . ".paperid";
	$sortid = "reviewer";
	$pidsort='<nobr><a href="'.$_SERVER['PHP_SELF'].'?s=pid">S-ID</a></nobr>'; 
	$psort='<a href="'.$_SERVER['PHP_SELF'].'?s=paper">Submission</a>'; 
	$rsort="Reviewer<br />" . $OC_sortImg;
	$ridsort= '<nobr><a href="'.$_SERVER['PHP_SELF'].'?s=rid">R-ID</a></nobr>'; 
} else {
	err("Unknown sort source");
}

$r = ocsql_query($q) or err("Unable to get information ".ocsql_errno());
if (ocsql_num_rows($r) == 0) {
        print '<span class="warn">No review assignments have been made yet.</span><p>';
} else {
	$s = substr($sortid,0,1);

	print '<dl><dt><strong>Links:</strong></dt>';
	
	if ($s == "p") {
		print '<dd><em>R-ID</em> &#8211; Show review</dd>';
	} else {
		print '<dd><em>S-ID</em> &#8211; Show review</dd>';
	}
	print '
<dd><em>Reviewer</em> &#8211; Show Reviewer info</dd>
<dd><em>Submission</em> &#8211; Show Submission info</dd>
<p />
<dt><strong>Legend:</strong></dt>
<dd><table border="0" cellspacing="0" cellpadding="0"><tr>
<td>Review Status: &nbsp; &nbsp; </td><td bgcolor="#ccffcc" class="box"> &nbsp; &nbsp; </td><td>&nbsp; Marked as Complete &nbsp; &nbsp; &nbsp; </td>
<td bgcolor="#ffffcc" class="box"> &nbsp; &nbsp; </td><td>&nbsp;Started &nbsp; &nbsp; &nbsp; </td>
<td bgcolor="#ffcccc" class="box"> &nbsp; &nbsp; </td><td>&nbsp;Not Yet Saved</td>
</tr>
</table>
';

	if (isset($OC_reviewQuestionsAR['recommendation'])) {
		print '<p />
<table border="0" cellspacing="0" cellpadding="0"><tr>
<tr><td valign="top">Recommendation: </td><td>';
		foreach ($OC_reviewQuestionsAR['recommendation']['values'] as $k => $v) {
			print '<span style="white-space: none">(' . $k . ') ' . (preg_match('/:/', $v) ? substr($v,0,strpos($v,':')) : $v) . ' &nbsp; </span>';
		}
		print '
	</td></tr>
	</table>
';
	}
	
	print '
</dd>
</dl><p />

<form method="post" action="unassign_review.php">
<input type="hidden" name="token" value="' . $_SESSION[OCC_SESSION_VAR_NAME]['chairtoken'] . '" />
<input type="hidden" name="src" value="' . $s . '">
<table border=0 cellspacing=1 cellpadding=4 COLS=3>
<tr><td align="right" colspan="6"><span style="border: 6px solid #ccf;"><input type="submit" name="submit" value="Unassign Reviews (UAR)" /></span></td></tr>
<tr class="rowheader"><th valign="top" style="width: 4em;">' . $pidsort . '</th><th valign="top">' . $psort . '</th>';
	if (isset($OC_reviewQuestionsAR['recommendation'])) {
		print '<th style="width: 7em;">Recomm.</th>';
	}
	print '<th valign="top" style="width: 4em;">' . $ridsort . '</th><th valign="top">' . $rsort . '</th><th bgcolor="#ccccff">UAR</th></tr>
	';
	$currid = -1;
	$row = 1;
	while ($l = ocsql_fetch_array($r)) {
	
		if ($l['completed'] == "F" ) {
			if ($l['updated']) { $reccolor = ' bgcolor="#ffffcc"'; }
			else { $reccolor = ' bgcolor="#ffcccc"'; }
		}
		elseif (isset($l['completed'])) { $reccolor = ' bgcolor="#ccffcc"'; }
		else { $reccolor = ''; }
		
		if ($sortid == "reviewer") {
			$pidbg = $reccolor;
			$ridbg = "";
			$ptags = '<td align="right"' . $pidbg . '><a href="show_review.php?pid=' . $l['paperid'] . '&rid=' . $l['reviewerid'] . '">'.$l['paperid'].'</a></td><td><a href="show_paper.php?pid=' . $l['paperid'] . '">' . safeHTMLstr($l['title']) . '</a></td>';
			$rtags = '<td align="right"' . $ridbg . '>' . $l['reviewerid'] . '</td><td><a href="show_reviewer.php?rid=' . $l['reviewerid'] . '">' . safeHTMLstr($l['name']) . '</a></td>';
		} else {
			$pidbg = "";
			$ridbg = $reccolor;
			$ptags = '<td align="right"' . $pidbg . '>'.$l['paperid'].'</td><td><a href="show_paper.php?pid=' . $l['paperid'] . '">' . safeHTMLstr($l['title']) . '</a></td>';
			$rtags = '<td align="right"' . $ridbg . '><a href="show_review.php?pid=' . $l['paperid'] . '&rid=' . $l['reviewerid'] . '">'.$l['reviewerid'].'</a></td><td><a href="show_reviewer.php?rid=' . $l['reviewerid'] . '">' . safeHTMLstr($l['name']) . '</a></td>';
		}
		
		$blanktags = '<td>&nbsp;</td><td>&nbsp;</td>';

		if ($currid != $l[$sortid.'id']) {
			if ($currid != -1) {
	        	if ($row==1) { $row=2; } else { $row=1; }
			}
			$currid = $l[$sortid.'id'];
		} else {
			if ($sortid == "reviewer") { $rtags = $blanktags; }
			else { $ptags = $blanktags; }
		}
		
		print '<tr class="row' . $row . '">' . $ptags;
		if (isset($OC_reviewQuestionsAR['recommendation'])) {
			print '<td align="center">' . $l['recommendation'] . '&nbsp;</td>';
		};
		print $rtags . '<td align="center" bgcolor="#ccccff">';
		if (empty($l['reviewerid'])) { print '&nbsp;'; }
		else {
			print '<input type="checkbox" name="drop[]" value="'.$l['paperid'].','.$l['reviewerid'].'">';
		}
		print '</td>';

		print "</tr>\n";
	}
	print '
<tr><td align="right" colspan="6"><span style="border: 6px solid #ccf;"><input type="submit" name="submit" value="Unassign Reviews (UAR)" /></span></td></tr>
</table>
</form>
';
}

printFooter();

?>