science-ation/admin/judges.inc.php
jacob b9bcb127a6 Updated these tables to include the conference id:
award_awards
	award_prizes
	award_types
	award_awards_projectcategories
	award_awards_projectdivisions
	winners
	students
	projects
	registrations

Also modified all code that uses those tables to work with the conference id
instead of the year, with the exception of these files:
	communication.inc.php
	reports_students.inc.php
	rerollprizes.php
	remote.php
The "rerollprizes.php" probably doesn't matter, having been a one-time usage
file anyway.  The others will need to be modified in the future to correctly
use the conference id instead of the year.
2010-10-20 21:58:26 +00:00

271 lines
6.3 KiB
PHP

<?
function getJudgingTeams()
{
global $config, $conference;
$q=mysql_query("SELECT judges_teams.id,
judges_teams.num,
judges_teams.name
FROM
judges_teams
WHERE
judges_teams.conferences_id='".$conference['id']."'
ORDER BY
num,name
");
$lastteamid=-1;
$lastteamnum=-1;
echo mysql_error();
$teams=array();
while($r=mysql_fetch_object($q))
{
$teams[$r->id]['id']=$r->id;
$teams[$r->id]['num']=$r->num;
$teams[$r->id]['name']=$r->name;
$lastteamid=$r->id;
$lastteamnum=$r->num;
/* Load timeslots */
$rounds = array();
$tq = mysql_query("SELECT * FROM judges_teams_timeslots_link
LEFT JOIN judges_timeslots ON judges_timeslots.id=judges_teams_timeslots_link.judges_timeslots_id
WHERE judges_teams_timeslots_link.judges_teams_id='{$r->id}'");
$teams[$r->id]['timeslots'] = array();
$teams[$r->id]['rounds'] = array();
while($ts = mysql_fetch_assoc($tq)) {
$teams[$r->id]['timeslots'][] = $ts;
$rounds[$ts['round_id']] = $ts['round_id'];
}
foreach($rounds as $round_id) {
$tq = mysql_query("SELECT * FROM judges_timeslots WHERE id='{$round_id}'");
$teams[$r->id]['rounds'][] = mysql_fetch_assoc($tq);
}
//get the members for this team
$mq=mysql_query("SELECT
users.id AS judges_id,
users.firstname,
users.lastname,
judges_teams_link.captain
FROM
users,
judges_teams_link
WHERE
judges_teams_link.users_id=users.id AND
judges_teams_link.judges_teams_id='$r->id'
ORDER BY
captain DESC,
lastname,
firstname");
echo mysql_error();
$teamlangs=array();
while($mr=mysql_fetch_object($mq))
{
$u = user_load($mr->judges_id, false);
$judgelangs = join('/', $u['languages']);
foreach($u['languages'] AS $l) {
if(!in_array($l,$teamlangs))
$teamlangs[]=$l;
}
$teams[$lastteamid]['members'][]=array(
"id"=>$mr->judges_id,
"firstname"=>$mr->firstname,
"lastname"=>$mr->lastname,
"captain"=>$mr->captain,
"languages"=>$judgelangs,
"languages_array"=>$u['languages']
);
}
$teams[$r->id]['languages_members']=$teamlangs;
//we also need to add all the languages that the team must JUDGE to the teams languages.
$lq=mysql_query("SELECT projects.language
FROM judges_teams_timeslots_projects_link
LEFT JOIN projects ON judges_teams_timeslots_projects_link.projects_id=projects.id
WHERE judges_teams_timeslots_projects_link.conferences_id='{$conference['id']}' AND
judges_teams_id='$r->id' ");
echo mysql_error();
$projectlangs=array();
while($lr=mysql_fetch_object($lq)) {
if(!in_array($lr->language,$projectlangs))
$projectlangs[]=$lr->language;
if(!in_array($lr->language,$teamlangs))
$teamlangs[]=$lr->language;
}
$teams[$r->id]['languages_projects']=$projectlangs;
$teams[$r->id]['languages']=$teamlangs;
//get the awards for this team
$aq=mysql_query("SELECT award_awards.id,
award_awards.name,
award_awards.criteria,
award_awards.award_types_id,
award_types.type AS award_type
FROM
award_awards,
judges_teams_awards_link,
award_types
WHERE
judges_teams_awards_link.award_awards_id=award_awards.id
AND judges_teams_awards_link.judges_teams_id='$r->id'
AND award_awards.award_types_id=award_types.id
AND award_types.conferences_id='{$conference['id']}'
ORDER BY
name
");
while($ar=mysql_fetch_object($aq))
{
$teams[$r->id]['awards'][]=array(
"id"=>$ar->id,
"name"=>$ar->name,
"criteria"=>$ar->criteria,
"award_types_id"=>$ar->award_types_id,
"award_type"=>$ar->award_type
);
}
}
return $teams;
}
function getJudgingTeam($teamid)
{
global $config;
$q=mysql_query("SELECT judges_teams.id,
judges_teams.num,
judges_teams.name
FROM
judges_teams
WHERE
judges_teams.conferences_id='".$conference['id']."' AND
judges_teams.id='$teamid'
ORDER BY
num,
name
");
$team=array();
$first=true;
while($r=mysql_fetch_object($q))
{
$team['id']=$r->id;
$team['num']=$r->num;
$team['name']=$r->name;
//get the members for this team
$mq=mysql_query("SELECT
users.id AS judges_id,
users.firstname,
users.lastname,
judges_teams_link.captain
FROM
users,
judges_teams_link
WHERE
judges_teams_link.users_id=users.id AND
judges_teams_link.judges_teams_id='$r->id'
ORDER BY
captain DESC,
lastname,
firstname");
echo mysql_error();
while($mr=mysql_fetch_object($mq))
{
$team['members'][]=array(
"id"=>$mr->judges_id,
"firstname"=>$mr->firstname,
"lastname"=>$mr->lastname,
"captain"=>$mr->captain
);
}
//get the awards for this team
$aq=mysql_query("SELECT award_awards.id,
award_awards.name,
award_awards.award_types_id,
award_types.type AS award_type
FROM
award_awards,
judges_teams_awards_link,
award_types
WHERE
judges_teams_awards_link.award_awards_id=award_awards.id
AND judges_teams_awards_link.judges_teams_id='$r->id'
AND award_awards.award_types_id=award_types.id
AND award_types.conferences_id='{$conference['id']}'
ORDER BY
name
");
while($ar=mysql_fetch_object($aq))
{
$team['awards'][]=array(
"id"=>$ar->id,
"name"=>$ar->name,
"award_types_id"=>$ar->award_types_id,
"award_type"=>$ar->award_type
);
}
}
return $team;
}
function getJudgingEligibilityCode() {
global $config;
switch($config['project_status']) {
case 'open' :
return " AND registrations.status != 'open' ";
break;
case 'payment_pending' :
return " AND registrations.status IN ('paymentpending', 'complete')";
break;
case 'complete' :
return " AND registrations.status = 'complete'";
break;
}
}
function teamMemberToName($member)
{
return $member["firstname"] . " " . $member["lastname"];
}
function judges_load_all()
{
global $config;
$ret = array();
$r = mysql_query("
SELECT users.id FROM users JOIN user_roles ur ON ur.users_id = users.id
JOIN roles ON roles.id = ur.roles_id WHERE roles.type = 'judge'
AND conferences_id='{$conference['id']}'
AND deleted='no'
ORDER BY lastname, firstname
");
while($i = mysql_fetch_assoc($r)) {
$u = user_load($i['id']);
if($u['judge_complete'] == 'no') continue;
if($u['judge_active'] == 'no') continue;
$ret[$i['id']] = $u;
}
return $ret;
}
?>