forked from science-ation/science-ation
302 lines
8.5 KiB
PHP
302 lines
8.5 KiB
PHP
<?
|
|
/*
|
|
This file is part of the 'Science Fair In A Box' project
|
|
SFIAB Website: http://www.sfiab.ca
|
|
|
|
Copyright (C) 2005 Sci-Tech Ontario Inc <info@scitechontario.org>
|
|
Copyright (C) 2005 James Grant <james@lightbox.org>
|
|
|
|
This program is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU General Public
|
|
License as published by the Free Software Foundation, version 2.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; see the file COPYING. If not, write to
|
|
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
Boston, MA 02111-1307, USA.
|
|
*/
|
|
?>
|
|
<?
|
|
require("common.inc.php");
|
|
require("projects.inc.php");
|
|
|
|
send_header("Winners");
|
|
|
|
if($_GET['edit']) $edit=$_GET['edit'];
|
|
if($_POST['edit']) $edit=$_POST['edit'];
|
|
|
|
if($_GET['action']) $action=$_GET['action'];
|
|
if($_POST['action']) $action=$_POST['action'];
|
|
|
|
if($_GET['year'] && $_GET['type']) {
|
|
$show_unawarded_awards="no";
|
|
$show_unawarded_prizes="no";
|
|
$year=intval($_GET['year']);
|
|
$type=$_GET['type'];
|
|
|
|
echo "<h2>".i18n("%1 ".$type." Award Winners",array($_GET['year']))."</h2>";
|
|
|
|
$ok=true;
|
|
//first, lets make sure someone isnt tryint to see something that they arent allowed to!
|
|
//but only if the year they want is the FAIRYEAR. If they want a past year, thats cool
|
|
if($_GET['year']>=$config['FAIRYEAR']) {
|
|
$q=$pdo->prepare("SELECT (NOW()>'".$config['dates']['postwinners']."') AS test");
|
|
$q->execute();
|
|
$r=$q->fetch(PDO::FETCH_OBJ);
|
|
if($r->test!=1)
|
|
{
|
|
echo error(i18n("Crystal ball says future is very hard to see!"));
|
|
$ok=false;
|
|
}
|
|
}
|
|
|
|
if($ok)
|
|
{
|
|
|
|
$q=$pdo->prepare("SELECT
|
|
award_awards.id,
|
|
award_awards.name,
|
|
award_awards.order AS awards_order,
|
|
award_types.type
|
|
FROM
|
|
award_awards,
|
|
award_types
|
|
WHERE
|
|
award_awards.year='$year'
|
|
AND award_awards.award_types_id=award_types.id
|
|
AND award_types.type='$type'
|
|
AND award_types.year='$year'
|
|
ORDER BY
|
|
awards_order");
|
|
|
|
echo $pdo->errorInfo();
|
|
|
|
if($q->rowCount())
|
|
{
|
|
echo "<a href=\"winners.php\">".i18n("Back to Winners main page")."</a>";
|
|
echo "<br />";
|
|
while($r=$q->fetch(PDO::FETCH_OBJ))
|
|
{
|
|
$pq=$pdo->prepare("SELECT
|
|
award_prizes.prize,
|
|
award_prizes.number,
|
|
award_prizes.id,
|
|
award_prizes.cash,
|
|
award_prizes.scholarship,
|
|
winners.projects_id,
|
|
projects.projectnumber,
|
|
projects.title,
|
|
projects.registrations_id AS reg_id
|
|
FROM
|
|
award_prizes
|
|
LEFT JOIN winners ON winners.awards_prizes_id=award_prizes.id
|
|
LEFT JOIN projects ON projects.id=winners.projects_id
|
|
WHERE
|
|
award_awards_id='$r->id'
|
|
AND award_prizes.year='$year'
|
|
ORDER BY
|
|
`order`");
|
|
$pq->execute();
|
|
echo $pdo->errorInfo();
|
|
$awarded_count = 0;
|
|
if($show_unawarded_awards=="no")
|
|
{
|
|
while($pr=$pq->fetch(PDO::FETCH_OBJ))
|
|
{
|
|
if($pr->projectnumber)
|
|
{
|
|
$awarded_count++;
|
|
}
|
|
}
|
|
// Still have to find the PDO equivalent
|
|
//mysql_data_seek($pq, 0);
|
|
$pq->fetch(PDO::FETCH_ORI_ABS(0));
|
|
}
|
|
if($show_unawarded_awards=="yes" || $awarded_count > 0)
|
|
{
|
|
echo "<h3>".i18n($r->name)."</h3> \n";
|
|
}
|
|
|
|
$prevprizeid=-1;
|
|
while($pr=$pq->fetch(PDO::FETCH_OBJ))
|
|
{
|
|
if(!($pr->projectnumber) && $show_unawarded_prizes=="no")
|
|
{
|
|
continue;
|
|
}
|
|
if($prevprizeid!=$pr->id)
|
|
{
|
|
echo " ";
|
|
echo " ";
|
|
echo "<b>";
|
|
echo i18n($pr->prize);
|
|
if(($pr->cash || $pr->scholarship) && $config['winners_show_prize_amounts'] == 'yes')
|
|
{
|
|
echo " (";
|
|
if($pr->cash && $pr->scholarship)
|
|
echo i18n("\$%1 cash / \$%2 scholarship",array($pr->cash,$pr->scholarship),array("Cash dollar value","Scholarship dollar value"));
|
|
else if($pr->cash)
|
|
echo i18n("\$%1 cash",array($pr->cash),array("Cash dollar value"));
|
|
else if($pr->scholarship)
|
|
echo i18n("\$%1 scholarship",array($pr->scholarship),array("Scholarship dollar value"));
|
|
echo ")";
|
|
|
|
}
|
|
echo "</b>";
|
|
echo "<br />";
|
|
$prevprizeid=$pr->id;
|
|
}
|
|
|
|
if($pr->projectnumber)
|
|
{
|
|
echo "  ";
|
|
echo "($pr->projectnumber) ".htmlspecialchars($pr->title);
|
|
|
|
$sq=$pdo->prepare("SELECT students.firstname,
|
|
students.lastname,
|
|
students.schools_id,
|
|
students.webfirst,
|
|
students.weblast,
|
|
students.webphoto,
|
|
schools.school
|
|
FROM
|
|
students,
|
|
schools
|
|
WHERE
|
|
students.registrations_id='$pr->reg_id'
|
|
AND students.schools_id=schools.id
|
|
");
|
|
$sq->execute();
|
|
|
|
$studnum=0;
|
|
$students="";
|
|
$schools=array();
|
|
while($studentinfo=$sq->fetch([PDO::FETCH_OBJ]))
|
|
{
|
|
if($studnum>0 && $prev) $students.=", ";
|
|
|
|
if($studentinfo->webfirst=="yes")
|
|
$students.="$studentinfo->firstname ";
|
|
if($studentinfo->weblast=="yes")
|
|
$students.="$studentinfo->lastname ";
|
|
if($r->studentinfo->webfirst=="yes" || $studentinfo->weblast=="yes")
|
|
$prev=true;
|
|
else
|
|
$prev=false;
|
|
|
|
// $students.="$studentinfo->firstname $studentinfo->lastname";
|
|
$studnum++;
|
|
|
|
//we will assume that they are coming from the same school, so lets just grab the last students school
|
|
//and use it.
|
|
if(!in_array($studentinfo->school,$schools))
|
|
$schools[]=$studentinfo->school;
|
|
|
|
// $school=$studentinfo->school;
|
|
}
|
|
echo "<br />";
|
|
echo "  ";
|
|
echo "  ";
|
|
if($studnum > 1)
|
|
echo i18n("Students").": ".htmlspecialchars($students);
|
|
else
|
|
echo i18n("Student").": ".htmlspecialchars($students);
|
|
|
|
echo "<br />";
|
|
echo "  ";
|
|
echo "  ";
|
|
echo i18n("School").": ";
|
|
$schoollist="";
|
|
foreach($schools AS $school) $schoollist.=$school.", ";
|
|
$schoollist=substr($schoollist,0,-2);
|
|
echo $schoollist;
|
|
echo "<br />";
|
|
}
|
|
else
|
|
{
|
|
echo "  ";
|
|
echo i18n("Prize not awarded");
|
|
echo "<br />";
|
|
}
|
|
echo "<br />";
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{ $q = $pdo->query("SELECT
|
|
DISTINCT(winners.year) AS year,
|
|
dates.date
|
|
FROM
|
|
winners,
|
|
dates
|
|
WHERE
|
|
winners.year=dates.year
|
|
AND dates.name='postwinners'
|
|
AND dates.date<=NOW()
|
|
ORDER BY
|
|
year DESC");
|
|
|
|
$first=true;
|
|
if($q->rowCount())
|
|
{
|
|
while($r=$q->fetch(PDO::FETCH_OBJ))
|
|
{
|
|
if($first && $r->year != $config['FAIRYEAR'])
|
|
{
|
|
list($d,$t)=explode(" ",$config['dates']['postwinners']);
|
|
echo "<h2>".i18n("%1 Winners",array($config['FAIRYEAR']))."</h2>";
|
|
echo i18n("Winners of the %1 %2 will be posted here on %3 at %4",array($config['FAIRYEAR'],$config['fairname'],format_date($d),format_time($t)));
|
|
echo "<br />\n";
|
|
echo "<br />\n";
|
|
$first=false;
|
|
}
|
|
//get the "winnersposted" date for the year, and make
|
|
echo "<h2>".i18n("%1 Winners",array($r->year))."</h2>";
|
|
|
|
//do this each time, because each year the names of the award types could change, along with what is actually given out.
|
|
//
|
|
$tq=$pdo->prepare("SELECT
|
|
DISTINCT(award_types.type) AS type
|
|
FROM
|
|
winners,
|
|
award_types,
|
|
award_awards,
|
|
award_prizes
|
|
WHERE
|
|
award_awards.award_types_id=award_types.id
|
|
AND winners.awards_prizes_id=award_prizes.id
|
|
AND award_prizes.award_awards_id=award_awards.id
|
|
AND winners.year='$r->year'
|
|
ORDER BY
|
|
award_types.order
|
|
");
|
|
$tq->execute();
|
|
echo $pdo->errorInfo();
|
|
while($tr=$tq->fetch(PDO::FETCH_OBJ)) {
|
|
echo " <a href=\"winners.php?year=$r->year&type=$tr->type\">".i18n("%1 $tr->type award winners",array($r->year))."</a><br />";
|
|
}
|
|
echo "<br />";
|
|
$first=false;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
list($d,$t)=explode(" ",$config['dates']['postwinners']);
|
|
echo "<h2>".i18n("%1 Winners",array($config['FAIRYEAR']))."</h2>";
|
|
echo i18n("Winners of the %1 %2 will be posted here on %3 at %4",array($config['FAIRYEAR'],$config['fairname'],format_date($d),format_time($t)));
|
|
}
|
|
|
|
}
|
|
|
|
send_footer();
|
|
|
|
?>
|