forked from science-ation/science-ation
461 lines
17 KiB
PHP
461 lines
17 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_once("../user.inc.php");
|
|
user_auth_required('committee', 'admin');
|
|
|
|
if($_GET['action']=="edit" || $_GET['action']=="add") {
|
|
send_header(($_GET['action']=="edit") ? "Edit Award" : "Add Award",
|
|
array('Committee Main' => 'committee_main.php',
|
|
'Administration' => 'admin/index.php',
|
|
'Awards Main' => 'admin/awards.php',
|
|
'Awards Management' => 'admin/award_awards.php') );
|
|
} else {
|
|
send_header("Awards Management",
|
|
array('Committee Main' => 'committee_main.php',
|
|
'Administration' => 'admin/index.php',
|
|
'Awards Main' => 'admin/awards.php') );
|
|
}
|
|
|
|
if($_GET['award_sponsors_id'] && $_GET['award_sponsors_id']!="all")
|
|
$_SESSION['award_sponsors_id']=$_GET['award_sponsors_id'];
|
|
|
|
if($_GET['award_types_id'] && $_GET['award_types_id']!="all")
|
|
$_SESSION['award_types_id']=$_GET['award_types_id'];
|
|
|
|
if($_GET['award_sponsors_id']=="all")
|
|
unset($_SESSION['award_sponsors_id']);
|
|
if($_GET['award_types_id']=="all")
|
|
unset($_SESSION['award_types_id']);
|
|
|
|
$award_types_id=$_SESSION['award_types_id'];
|
|
$award_sponsors_id=$_SESSION['award_sponsors_id'];
|
|
|
|
if($_POST['save']=="edit" || $_POST['save']=="add")
|
|
{
|
|
if(!$_POST['award_types_id']) {
|
|
echo error(i18n("Award Type is required"));
|
|
$_GET['action']=$_POST['save'];
|
|
}
|
|
else if(!$_POST['award_sponsors_id']) {
|
|
echo error(i18n("Award Sponsor is required"));
|
|
$_GET['action']=$_POST['save'];
|
|
}
|
|
else
|
|
{
|
|
|
|
if($_POST['save']=="add")
|
|
{
|
|
$q=mysql_query("INSERT INTO award_awards (award_sponsors_id,award_types_id,year) VALUES ('".$_POST['award_sponsors_id']."','".$_POST['award_types_id']."','".$config['FAIRYEAR']."')");
|
|
$id=mysql_insert_id();
|
|
}
|
|
else
|
|
$id=$_POST['id'];
|
|
|
|
$exec="UPDATE award_awards SET ".
|
|
"name='".mysql_escape_string(stripslashes($_POST['name']))."', ".
|
|
"`order`='".mysql_escape_string(stripslashes($_POST['order']))."', ".
|
|
"award_sponsors_id='".mysql_escape_string(stripslashes($_POST['award_sponsors_id']))."', ".
|
|
"award_types_id='".mysql_escape_string(stripslashes($_POST['award_types_id']))."', ".
|
|
"presenter='".mysql_escape_string(stripslashes($_POST['presenter']))."', ".
|
|
"excludefromac='".mysql_escape_string(stripslashes($_POST['excludefromac']))."', ".
|
|
"cwsfaward='".mysql_escape_string(stripslashes($_POST['cwsfaward']))."', ".
|
|
"criteria='".mysql_escape_string(stripslashes($_POST['criteria']))."', ".
|
|
"description='".mysql_escape_string(stripslashes($_POST['description']))."' ".
|
|
"WHERE id='$id'";
|
|
|
|
mysql_query($exec);
|
|
echo mysql_error();
|
|
|
|
//whipe out any old award-category links
|
|
mysql_query("DELETE FROM award_awards_projectcategories WHERE award_awards_id='$id'");
|
|
|
|
//now add the new ones
|
|
if(is_array($_POST['eligiblecategories']))
|
|
{
|
|
foreach($_POST['eligiblecategories'] AS $cat)
|
|
{
|
|
mysql_query("INSERT INTO award_awards_projectcategories (award_awards_id,projectcategories_id,year) VALUES ('$id','$cat','".$config['FAIRYEAR']."')");
|
|
}
|
|
}
|
|
|
|
//whipe out any old award-divisions links
|
|
mysql_query("DELETE FROM award_awards_projectdivisions WHERE award_awards_id='$id'");
|
|
|
|
//now add the new ones
|
|
if(is_array($_POST['eligibledivisions']))
|
|
{
|
|
foreach($_POST['eligibledivisions'] AS $div)
|
|
{
|
|
mysql_query("INSERT INTO award_awards_projectdivisions (award_awards_id,projectdivisions_id,year) VALUES ('$id','$div','".$config['FAIRYEAR']."')");
|
|
}
|
|
}
|
|
|
|
if($_POST['save']=="add")
|
|
echo happy("Award successfully added");
|
|
else
|
|
echo happy("Successfully saved changes to award");
|
|
}
|
|
}
|
|
|
|
if($_POST['action']=="reorder")
|
|
{
|
|
if(is_array($_POST['reorder']))
|
|
{
|
|
foreach($_POST['reorder'] AS $key=>$val)
|
|
{
|
|
mysql_query("UPDATE award_awards SET `order`='$val' WHERE id='$key'");
|
|
}
|
|
echo happy("Awards successfully reordered");
|
|
}
|
|
}
|
|
|
|
if($_GET['action']=="delete" && $_GET['delete'])
|
|
{
|
|
mysql_query("DELETE FROM award_awards WHERE id='".$_GET['delete']."'");
|
|
echo happy("Award successfully deleted");
|
|
}
|
|
|
|
if($_GET['action']=="edit" || $_GET['action']=="add")
|
|
{
|
|
//define these here so we dont forget :)
|
|
$currentcategories=array();
|
|
$currentdivisions=array();
|
|
|
|
if($_GET['action']=="edit")
|
|
{
|
|
$buttontext="Save Award";
|
|
|
|
$q=mysql_query("SELECT
|
|
award_awards.id,
|
|
award_awards.name,
|
|
award_awards.criteria,
|
|
award_awards.description,
|
|
award_awards.order,
|
|
award_awards.presenter,
|
|
award_awards.excludefromac,
|
|
award_awards.cwsfaward,
|
|
award_types.id AS award_types_id,
|
|
award_types.type,
|
|
award_sponsors.id AS award_sponsors_id,
|
|
award_sponsors.organization
|
|
|
|
FROM
|
|
award_awards,
|
|
award_types,
|
|
award_sponsors
|
|
WHERE
|
|
award_awards.year='".$config['FAIRYEAR']."'
|
|
AND award_awards.id='".$_GET['edit']."'
|
|
AND award_awards.award_sponsors_id=award_sponsors.id
|
|
AND award_awards.award_types_id=award_types.id
|
|
");
|
|
|
|
|
|
echo mysql_error();
|
|
$r=mysql_fetch_object($q);
|
|
$award_awards_id=$r->id;
|
|
$award_awards_name=$r->name;
|
|
$award_awards_order=$r->order;
|
|
$award_awards_criteria=$r->criteria;
|
|
$award_awards_description=$r->description;
|
|
$award_types_id=$r->award_types_id;
|
|
$award_type=$r->type;
|
|
$award_sponsors_id=$r->award_sponsors_id;
|
|
$award_sponsor=$r->organization;
|
|
$award_awards_presenter=$r->presenter;
|
|
$award_awards_excludefromac=$r->excludefromac;
|
|
$award_awards_cwsfaward=$r->cwsfaward;
|
|
|
|
//select the current categories that this award is linked to
|
|
$ccq=mysql_query("SELECT * FROM award_awards_projectcategories WHERE award_awards_id='$r->id'");
|
|
while($ccr=mysql_fetch_object($ccq))
|
|
$currentcategories[]=$ccr->projectcategories_id;
|
|
|
|
//select the current categories that this award is linked to
|
|
$cdq=mysql_query("SELECT * FROM award_awards_projectdivisions WHERE award_awards_id='$r->id'");
|
|
while($cdr=mysql_fetch_object($cdq))
|
|
$currentdivisions[]=$cdr->projectdivisions_id;
|
|
|
|
|
|
|
|
}
|
|
else if($_GET['action']=="add")
|
|
{
|
|
$buttontext="Add Award";
|
|
$firstsponsor="<option value=\"\">".i18n("Choose a sponsor")."</option>\n";
|
|
$firsttype="<option value=\"\">".i18n("Choose an award type")."</option>\n";
|
|
}
|
|
$buttontext=i18n($buttontext);
|
|
|
|
//if we have POST values, then they should be used instead of the db values
|
|
//esp for adding, if there is an error then the POST values will be redisplayed
|
|
if($_POST['name']) $award_awards_name=$_POST['name'];
|
|
if($_POST['order']) $award_awards_order=$_POST['order'];
|
|
if($_POST['criteria']) $award_awards_criteria=$_POST['criteria'];
|
|
if($_POST['description']) $award_awards_criteria=$_POST['description'];
|
|
if($_POST['award_types_id']) $award_types_id=$_POST['award_types_id'];
|
|
if($_POST['award_sponsors_id']) $award_sponsors_id=$_POST['award_sponsors_id'];
|
|
if($_POST['eligiblecategories']) $currentcategories=$_POST['eligiblecategories'];
|
|
if($_POST['eligibledivisions']) $currentdivisions=$_POST['eligibledivisions'];
|
|
if($_POST['presenter']) $award_awards_presenter=$_POST['presenter'];
|
|
if($_POST['excludefromac']) $award_awards_excludefromac=$_POST['excludefromac'];
|
|
if($_POST['cwsfaward']) $award_awards_cwsfaward=$_POST['cwsfaward'];
|
|
|
|
|
|
echo "<form method=\"post\" action=\"award_awards.php\">\n";
|
|
echo "<input type=\"hidden\" name=\"save\" value=\"".$_GET['action']."\">\n";
|
|
|
|
if($_GET['action']=="edit")
|
|
echo "<input type=\"hidden\" name=\"id\" value=\"".$_GET['edit']."\">\n";
|
|
|
|
echo "<table class=\"tableedit\">\n";
|
|
echo "<tr><td>".i18n("Name")."</td><td><input type=\"text\" id=\"name\" name=\"name\" value=\"".htmlspecialchars($award_awards_name)."\" size=\"50\" maxlength=\"128\" /><script type=\"text/javascript\">translateButton('name');</script></td></tr>\n";
|
|
echo "<tr><td>".i18n("Order")."</td><td><input type=\"text\" name=\"order\" value=\"".htmlspecialchars($award_awards_order)."\" size=\"5\" maxlength=\"5\" />(".i18n("presentation order").")</td></tr>\n";
|
|
echo "<tr><td>".i18n("Sponsor")."</td><td>";
|
|
$sq=mysql_query("SELECT id,organization FROM award_sponsors ORDER BY organization");
|
|
echo "<select name=\"award_sponsors_id\">";
|
|
//only show the "choose a sponsor" option if we are adding,if we are editing, then they must have already chosen one.
|
|
echo $firstsponsor;
|
|
while($sr=mysql_fetch_object($sq))
|
|
{
|
|
if($sr->id == $award_sponsors_id)
|
|
$sel="selected=\"selected\"";
|
|
else
|
|
$sel="";
|
|
echo "<option $sel value=\"$sr->id\">".i18n($sr->organization)."</option>";
|
|
}
|
|
echo "</select>";
|
|
echo "</td></tr>";
|
|
|
|
echo "<tr><td>".i18n("Presenter")."</td><td><input type=\"text\" name=\"presenter\" value=\"".htmlspecialchars($award_awards_presenter)."\" size=\"50\" maxlength=\"128\" /></td></tr>\n";
|
|
echo "<tr><td>".i18n("Type")."</td><td>";
|
|
$tq=mysql_query("SELECT id,type FROM award_types WHERE year='{$config['FAIRYEAR']}' ORDER BY type");
|
|
echo "<select name=\"award_types_id\">";
|
|
//only show the "choose a type" option if we are adding,if we are editing, then they must have already chosen one.
|
|
echo $firsttype;
|
|
while($tr=mysql_fetch_object($tq))
|
|
{
|
|
if($tr->id == $award_types_id)
|
|
$sel="selected=\"selected\"";
|
|
else
|
|
$sel="";
|
|
echo "<option $sel value=\"$tr->id\">".i18n($tr->type)."</option>";
|
|
}
|
|
echo "</select>";
|
|
echo "</td></tr>";
|
|
|
|
echo "<tr><td>".i18n("Criteria")."</td><td><textarea id=\"criteria\" name=\"criteria\" rows=\"3\" cols=\"50\">".htmlspecialchars($award_awards_criteria)."</textarea><script type=\"text/javascript\">translateButton('criteria');</script></td></tr>\n";
|
|
echo "<tr><td>".i18n("Description")."</td><td><textarea id=\"description\" name=\"description\" rows=\"3\" cols=\"50\">".htmlspecialchars($award_awards_description)."</textarea><script type=\"text/javascript\">translateButton('description');</script></td></tr>\n";
|
|
echo "<tr><td>".i18n("Eligibility")."</td><td>";
|
|
echo "<table>";
|
|
echo "<tr>";
|
|
echo "<th>".i18n("Age Categories")."</th>";
|
|
echo "<th>".i18n("Divisions")."</th>";
|
|
echo "</tr>";
|
|
echo "<tr><td>";
|
|
|
|
//now select all the categories so we can list them all
|
|
$cq=mysql_query("SELECT * FROM projectcategories WHERE year='".$config['FAIRYEAR']."' ORDER BY mingrade");
|
|
echo mysql_error();
|
|
while($cr=mysql_fetch_object($cq))
|
|
{
|
|
if(in_array($cr->id,$currentcategories))
|
|
$ch="checked=\"checked\"";
|
|
else
|
|
$ch="";
|
|
|
|
echo "<input $ch type=\"checkbox\" name=\"eligiblecategories[]\" value=\"$cr->id\" />".i18n($cr->category)."<br />";
|
|
}
|
|
echo "</td>";
|
|
echo "<td>";
|
|
|
|
|
|
$dq=mysql_query("SELECT * FROM projectdivisions WHERE year='".$config['FAIRYEAR']."' ORDER BY division");
|
|
echo mysql_error();
|
|
while($dr=mysql_fetch_object($dq))
|
|
{
|
|
if(in_array($dr->id,$currentdivisions))
|
|
$ch="checked=\"checked\"";
|
|
else
|
|
$ch="";
|
|
echo "<input $ch type=\"checkbox\" name=\"eligibledivisions[]\" value=\"$dr->id\" />".i18n($dr->division)."<br />";
|
|
}
|
|
|
|
echo "</td>";
|
|
echo "</tr>";
|
|
echo "</table>";
|
|
echo "</td></tr>";
|
|
|
|
echo "<tr><td align=\"right\">";
|
|
if($award_awards_excludefromac==1) $ch="checked=\"checked\""; else $ch="";
|
|
echo "<input $ch type=\"checkbox\" name=\"excludefromac\" value=\"1\"></td><td>".i18n("Exclude this award from the award ceremony script")."</td></tr>";
|
|
echo "<tr><td align=\"right\">";
|
|
if($award_awards_cwsfaward==1) $ch="checked=\"checked\""; else $ch="";
|
|
echo "<input $ch type=\"checkbox\" name=\"cwsfaward\" value=\"1\"></td><td>".i18n("This award identifies the students that will be attending the Canada-Wide Science Fair")."</td></tr>";
|
|
|
|
echo "<tr><td colspan=\"2\" align=\"center\"><input type=\"submit\" value=\"$buttontext\" /></td></tr>\n";
|
|
|
|
echo "</table>\n";
|
|
echo "</form>\n";
|
|
}
|
|
else
|
|
{
|
|
|
|
|
|
echo "<br />";
|
|
echo i18n("Filter By:");
|
|
echo "<form method=\"get\" action=\"award_awards.php\" name=\"filterchange\">";
|
|
echo "<table><tr><td>";
|
|
|
|
$q=mysql_query("SELECT id,organization FROM award_sponsors ORDER BY organization");
|
|
echo "<select name=\"award_sponsors_id\" onchange=\"document.forms.filterchange.submit()\">";
|
|
echo "<option value=\"all\">".i18n("All Sponsors")."</option>";
|
|
while($r=mysql_fetch_object($q))
|
|
{
|
|
if($r->id == $award_sponsors_id)
|
|
{
|
|
$sel="selected=\"selected\"";
|
|
$award_sponsors_organization=$r->organization;
|
|
}
|
|
else
|
|
$sel="";
|
|
echo "<option $sel value=\"$r->id\">".i18n($r->organization)."</option>";
|
|
}
|
|
echo "</select>";
|
|
echo "</td><td>";
|
|
|
|
$q=mysql_query("SELECT id,type FROM award_types WHERE year='{$config['FAIRYEAR']}' ORDER BY type");
|
|
echo "<select name=\"award_types_id\" onchange=\"document.forms.filterchange.submit()\">";
|
|
echo "<option value=\"all\">".i18n("All Award Types")."</option>";
|
|
while($r=mysql_fetch_object($q))
|
|
{
|
|
if($r->id == $award_types_id)
|
|
{
|
|
$sel="selected=\"selected\"";
|
|
$award_types_type=$r->type;
|
|
}
|
|
else
|
|
$sel="";
|
|
echo "<option $sel value=\"$r->id\">".i18n($r->type)."</option>";
|
|
}
|
|
echo "</select>";
|
|
echo "</form>";
|
|
echo "</td></tr>";
|
|
echo "</table>";
|
|
|
|
|
|
|
|
echo "<br />";
|
|
echo "<a href=\"award_awards.php?award_sponsors_id=$award_sponsors_id&award_types_id=$award_types_id&action=add\">".i18n("Add New Award")."</a>\n";
|
|
echo "<br />";
|
|
|
|
if($award_sponsors_id) $where_asi="AND award_sponsors_id='$award_sponsors_id'";
|
|
if($award_types_id) $where_ati="AND award_types_id='$award_types_id'";
|
|
|
|
if(!$orderby) $orderby="order";
|
|
|
|
$q=mysql_query("SELECT
|
|
award_awards.id,
|
|
award_awards.name,
|
|
award_awards.order,
|
|
award_awards.award_sources_id,
|
|
award_types.type,
|
|
award_sponsors.organization
|
|
|
|
FROM
|
|
award_awards,
|
|
award_types,
|
|
award_sponsors
|
|
WHERE
|
|
award_awards.year='".$config['FAIRYEAR']."'
|
|
$where_asi
|
|
$where_ati
|
|
AND award_awards.award_sponsors_id=award_sponsors.id
|
|
AND award_awards.award_types_id=award_types.id
|
|
AND award_types.year='".$config['FAIRYEAR']."'
|
|
ORDER BY `$orderby`");
|
|
|
|
echo mysql_error();
|
|
|
|
if(mysql_num_rows($q))
|
|
{
|
|
echo "<form method=\"post\" action=\"award_awards.php\">";
|
|
echo "<input type=\"hidden\" name=\"action\" value=\"reorder\">";
|
|
|
|
echo "<table class=\"tableview\">";
|
|
echo "<tr>";
|
|
echo " <th>".i18n("Order")."</th>";
|
|
echo " <th>".i18n("Sponsor")."</th>";
|
|
echo " <th>".i18n("Type")."</th>";
|
|
echo " <th>".i18n("Name")."</th>";
|
|
echo " <th>".i18n("Prizes")."</th>";
|
|
echo " <th>".i18n("Actions")."</th>";
|
|
echo "</tr>\n";
|
|
|
|
|
|
$hasexternal=false;
|
|
while($r=mysql_fetch_object($q))
|
|
{
|
|
if($r->award_sources_id){ $cl="class=\"externalaward\""; $hasexternal=true; } else $cl="";
|
|
echo "<tr $cl>\n";
|
|
echo " <td><input type=\"text\" name=\"reorder[$r->id]\" value=\"$r->order\" size=\"3\" /></td>\n";
|
|
echo " <td>$r->organization</td>\n";
|
|
echo " <td>$r->type</td>\n";
|
|
echo " <td>$r->name</td>\n";
|
|
|
|
$numq=mysql_query("SELECT COUNT(id) AS num FROM award_prizes WHERE award_awards_id='$r->id'");
|
|
$numr=mysql_fetch_object($numq);
|
|
$numprizes=$numr->num;
|
|
|
|
|
|
echo " <td align=\"center\" valign=\"top\">";
|
|
echo "$numprizes ";
|
|
echo "<a href=\"award_prizes.php?award_awards_id=$r->id\"><img alt=\"view\" border=\"0\" src=\"".$config['SFIABDIRECTORY']."/images/16/viewmag.".$config['icon_extension']."\"></a>";
|
|
echo "</td>";
|
|
|
|
echo " <td align=\"center\">";
|
|
echo "<a href=\"award_awards.php?action=edit&edit=$r->id\"><img border=\"0\" src=\"".$config['SFIABDIRECTORY']."/images/16/edit.".$config['icon_extension']."\"></a>";
|
|
echo " ";
|
|
echo "<a onclick=\"return confirmClick('Are you sure you want to remove this award?')\" href=\"award_awards.php?action=delete&delete=$r->id\"><img border=0 src=\"".$config['SFIABDIRECTORY']."/images/16/button_cancel.".$config['icon_extension']."\"></a>";
|
|
|
|
echo " </td>\n";
|
|
echo "</tr>\n";
|
|
}
|
|
if($hasexternal)
|
|
echo "<tr class=\"externalaward\"><td colspan=\"6\">".i18n("Indicates award imported from an external source")."</td></tr>";
|
|
echo "</table>\n";
|
|
echo "<input type=\"submit\" value=\"".i18n("Re-order awards")."\" />";
|
|
echo "</form>";
|
|
}
|
|
echo "<br />";
|
|
echo "<a href=\"award_prizes.php?award_awards_id=-1\">Edit prizes for the generic prize template</a>";
|
|
|
|
}
|
|
|
|
send_footer();
|
|
|
|
?>
|