forked from science-ation/science-ation
1144 lines
40 KiB
PHP
1144 lines
40 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_once('../common.inc.php');
|
|
require_once('../user.inc.php');
|
|
user_auth_required('admin');
|
|
require_once('awards.inc.php');
|
|
|
|
switch($_GET['action']) {
|
|
case 'draw_awards_table':
|
|
draw_awards_table();
|
|
exit;
|
|
case 'awardinfo_load':
|
|
$id = intval($_GET['id']);
|
|
$q=mysql_query("SELECT * FROM award_awards WHERE id='$id'");
|
|
$ret = mysql_fetch_assoc($q);
|
|
echo json_encode($ret);
|
|
exit;
|
|
|
|
case 'award_delete':
|
|
$id=intval($_GET['id']);
|
|
award_delete($id);
|
|
exit;
|
|
|
|
case 'awardinfo_save':
|
|
/* Scrub the data while we save it */
|
|
$id=intval($_POST['id']);
|
|
|
|
if($id == -1) {
|
|
$q=mysql_query("INSERT INTO award_awards (conferences_id,self_nominate,schedule_judges)
|
|
VALUES ('{$conference['id']}','yes','yes')");
|
|
$id = mysql_insert_id();
|
|
happy_("Award Created");
|
|
/* Set the award_id in the client */
|
|
echo "<script type=\"text/javascript\">award_id=$id;</script>";
|
|
}
|
|
|
|
$q = "UPDATE award_awards SET
|
|
award_types_id='".intval($_POST['award_types_id'])."',
|
|
presenter='".mysql_escape_string(stripslashes($_POST['presenter']))."',
|
|
excludefromac='".(($_POST['excludefromac'] == 1) ? 1 : 0)."',
|
|
cwsfaward='".(($_POST['cwsfaward'] == 1) ? 1 : 0)."',
|
|
self_nominate='".(($_POST['self_nominate'] == 'yes') ? 'yes' : 'no')."',
|
|
schedule_judges='".(($_POST['schedule_judges'] == 'yes') ? 'yes' : 'no')."',
|
|
description='".mysql_escape_string(stripslashes($_POST['description']))."' ";
|
|
|
|
if(array_key_exists('name', $_POST)) {
|
|
/* These values may be disabled, if they name key exists, assume
|
|
* they aren't disabled and save them too */
|
|
$q .= ",name='".mysql_escape_string(stripslashes($_POST['name']))."',
|
|
criteria='".mysql_escape_string(stripslashes($_POST['criteria']))."',
|
|
sponsors_id='".intval($_POST['sponsors_id'])."' ";
|
|
}
|
|
$q .= "WHERE id='$id'";
|
|
mysql_query($q);
|
|
print_r($_POST);
|
|
echo $q;
|
|
echo mysql_error();
|
|
happy_("Award information saved");
|
|
exit;
|
|
|
|
case 'eligibility_load':
|
|
$id = intval($_GET['id']);
|
|
//select the current categories that this award is linked to
|
|
$ret = array('categories'=>array(), 'divisions'=>array() );
|
|
$q=mysql_query("SELECT * FROM award_awards_projectcategories WHERE award_awards_id='$id'");
|
|
while($r=mysql_fetch_assoc($q)) {
|
|
$ret['categories'][] = $r['projectcategories_id'];
|
|
}
|
|
|
|
//select the current categories that this award is linked to
|
|
$q=mysql_query("SELECT * FROM award_awards_projectdivisions WHERE award_awards_id='$id'");
|
|
while($r=mysql_fetch_assoc($q)) {
|
|
$ret['divisions'][] = $r['projectdivisions_id'];
|
|
}
|
|
echo json_encode($ret);
|
|
exit;
|
|
|
|
case 'eligibility_save':
|
|
$id = intval($_POST['award_awards_id']);
|
|
|
|
//now add the new ones
|
|
if(!is_array($_POST['categories']) || !is_array($_POST['divisions'])) {
|
|
error_("Invalid data");
|
|
exit;
|
|
}
|
|
foreach($_POST['categories'] AS $key=>$cat) {
|
|
if(!is_numeric($cat)) {
|
|
error_("Invalid data");
|
|
exit;
|
|
}
|
|
}
|
|
foreach($_POST['divisions'] AS $key=>$div) {
|
|
if(!is_numeric($div)) {
|
|
error_("Invalid data");
|
|
exit;
|
|
}
|
|
}
|
|
|
|
$q=mysql_query("SELECT (CASE WHEN ((SELECT a.award_types_id FROM award_awards AS a WHERE id=$id) = 1) THEN (
|
|
SELECT COUNT(*) AS c FROM award_awards AS aa
|
|
LEFT JOIN award_awards_projectcategories AS aapc ON (aa.id = aapc.award_awards_id)
|
|
LEFT JOIN award_awards_projectdivisions AS aapd ON (aa.id = aapd.award_awards_id)
|
|
WHERE aa.conferences_id = {$conference['id']} AND
|
|
aa.award_types_id=1 AND
|
|
aa.id != $id AND
|
|
projectcategories_id IN (". implode(",", $_POST['categories']) .") AND
|
|
projectdivisions_id IN (". implode(",", $_POST['divisions']) .")
|
|
) ELSE 0 END) as c");
|
|
|
|
$r = mysql_fetch_object($q);
|
|
if($r->c != 0) {
|
|
error_("Cannot save. There is already a divisional award with the same eligibility criteria.");
|
|
exit;
|
|
}
|
|
|
|
//wipe out any old award-category links
|
|
mysql_query("DELETE FROM award_awards_projectcategories WHERE award_awards_id='$id'");
|
|
|
|
foreach($_POST['categories'] AS $key=>$cat) {
|
|
$c = intval($cat);
|
|
mysql_query("INSERT INTO award_awards_projectcategories (award_awards_id,projectcategories_id,conferences_id)
|
|
VALUES ('$id','$c','{$conference['id']}')");
|
|
echo mysql_error();
|
|
}
|
|
|
|
//wipe out any old award-divisions links
|
|
mysql_query("DELETE FROM award_awards_projectdivisions WHERE award_awards_id='$id'");
|
|
|
|
//now add the new ones
|
|
foreach($_POST['divisions'] AS $key=>$div) {
|
|
$d = intval($div);
|
|
mysql_query("INSERT INTO award_awards_projectdivisions (award_awards_id,projectdivisions_id,conferences_id)
|
|
VALUES ('$id','$d','{$conference['id']}')");
|
|
echo mysql_error();
|
|
}
|
|
happy_("Eligibility information saved");
|
|
exit;
|
|
|
|
case 'prize_order':
|
|
$order = 0;
|
|
foreach ($_GET['prizelist'] as $position=>$id) {
|
|
if($id == '') continue;
|
|
$order++;
|
|
mysql_query("UPDATE `award_prizes` SET `order`='$order' WHERE `id`='$id'");
|
|
}
|
|
// print_r($_GET);
|
|
happy_("Order Updated.");
|
|
exit;
|
|
|
|
case 'award_order':
|
|
$order = 0;
|
|
foreach ($_GET['awardlist'] as $position=>$id) {
|
|
if($id == '') continue;
|
|
$order++;
|
|
mysql_query("UPDATE `award_awards` SET `order`='$order' WHERE `id`='$id'");
|
|
}
|
|
happy_("Order updated");
|
|
exit;
|
|
|
|
case 'prizeinfo_load':
|
|
$id = intval($_GET['id']);
|
|
if($id == -1) {
|
|
$q=mysql_query("SELECT * FROM award_prizes WHERE conferences_id='-1' AND award_awards_id='0' ORDER BY `order`");
|
|
} else {
|
|
$q = mysql_query("SELECT * FROM award_prizes WHERE award_awards_id='$id' ORDER BY `order`");
|
|
}
|
|
while($r=mysql_fetch_assoc($q)) {
|
|
$ret[] = $r;
|
|
}
|
|
echo json_encode($ret);
|
|
exit;
|
|
case 'prize_load':
|
|
$id = intval($_GET['id']);
|
|
$q = mysql_query("SELECT * FROM award_prizes WHERE id='$id'");
|
|
$ret=mysql_fetch_assoc($q);
|
|
foreach($ret AS $k=>$v) {
|
|
$ret[$k]=$v;
|
|
}
|
|
echo json_encode($ret);
|
|
exit;
|
|
|
|
case 'prize_create':
|
|
$aaid = intval($_GET['award_awards_id']);
|
|
$conferenceId = $conference['id'];
|
|
if($aaid == -1) {
|
|
$aaid = 0;
|
|
$conferenceId = -1;
|
|
}
|
|
mysql_query("INSERT INTO award_prizes(award_awards_id,conferences_id) VALUES ('$aaid','$conferenceId');");
|
|
$ret = array('id' => mysql_insert_id() );
|
|
echo json_encode($ret);
|
|
exit;
|
|
|
|
case 'prize_save':
|
|
$id = intval($_POST['id']);
|
|
$q="UPDATE award_prizes SET
|
|
prize='".mysql_escape_string(stripslashes($_POST['prize']))."',
|
|
cash='".intval($_POST['cash'])."',
|
|
scholarship='".intval($_POST['scholarship'])."',
|
|
value='".intval($_POST['value'])."',
|
|
number='".intval($_POST['number'])."',
|
|
excludefromac='".(($_POST['excludefromac']==1)? 1 : 0)."',
|
|
trophystudentkeeper='".(array_key_exists('trophystudentkeeper', $_POST) ? 1 : 0)."',
|
|
trophystudentreturn='".(array_key_exists('trophystudentreturn', $_POST) ? 1 : 0)."',
|
|
trophyschoolkeeper='".(array_key_exists('trophyschoolkeeper', $_POST) ? 1 : 0)."',
|
|
trophyschoolreturn='".(array_key_exists('trophyschoolreturn', $_POST) ? 1 : 0)."'
|
|
WHERE id='$id'";
|
|
mysql_query($q);
|
|
// echo $q;
|
|
// echo mysql_error();
|
|
happy_("Prize saved");
|
|
exit;
|
|
|
|
case 'prize_delete':
|
|
$id = intval($_GET['id']);
|
|
award_prize_delete($id);
|
|
happy_("Prize deleted");
|
|
exit;
|
|
|
|
case 'feeder_load':
|
|
$id = intval($_GET['id']);
|
|
/* Prepare two lists of fair IDs, for which fairs can upload and download this award */
|
|
$q=mysql_query("SELECT * FROM fairs_awards_link WHERE award_awards_id='$id'");
|
|
$ul = array();
|
|
$dl = array();
|
|
while($r=mysql_fetch_assoc($q)) {
|
|
if($r['upload_winners'] == 'yes') $ul[$r['fairs_id']] = true;
|
|
if($r['download_award'] == 'yes') $dl[$r['fairs_id']] = true;
|
|
}
|
|
$q = mysql_query("SELECT * FROM award_awards WHERE id='$id'");
|
|
$a = mysql_fetch_assoc($q);
|
|
?>
|
|
<h4><?=i18n("Feeder Fairs")?></h4>
|
|
<form id="feeder_form">
|
|
<input type="hidden" id="feeder_id" name="award_awards_id" value="<?=$a['id']?>"/>
|
|
|
|
<? $ch = $a['per_fair'] == 'yes' ? 'checked="checked"' : ''; ?>
|
|
<p><input type="checkbox" name="per_fair" value="yes" <?=$ch?> />
|
|
<?=i18n("Treat this award as a separate award for each feeder fair (instead of as a single award across the whole system). This will allow winners to be assigned to prizes for each feeder fair. If disabled, only a single group if winners will be permitted across all feeder fairs.")?></p>
|
|
|
|
<? $ch = (count($ul) || count($dl)) ? 'checked="checked"' : ''; ?>
|
|
<p><input type="checkbox" id="feeder_enable" name="enable" value="yes" <?=$ch?> />
|
|
<?=i18n("Allow feeder fairs to download this award.")?></p>
|
|
<div id="feeder_en">
|
|
<table class="editor">
|
|
<tr><td><?=i18n('Unique Name')?>:</td>
|
|
<td><input type="text" name="identifier" value="<?=$a['external_identifier']?>" size="40" maxlength="128" /></td></tr>
|
|
<? $ch = $a['external_additional_materials'] ? 'checked="checked"' : ''; ?>
|
|
<tr><td><input type="checkbox" name="register_winners" value="1" <?=$ch?> /></td>
|
|
<td><?=i18n("Winners uploaded by a feeder fair should be registered as participants at this fair (both download award and upload winners should be turned on below)")?></td></tr>
|
|
<? $ch = $a['external_register_winners'] ? 'checked="checked"' : ''; ?>
|
|
<tr><td><input type="checkbox" name="additional_materials" value="1" <?=$ch?> /></td>
|
|
<td><?=i18n("There is additional material for this award (e.g. forms, instructions). If a feeder fair assigns a winner to this award, they will be told they need to contact this fair to get the additional material.")?></td></tr>
|
|
</table>
|
|
<p><?=i18n("Select which feeder fairs can download this award and upload winners.")?></p>
|
|
<table class="tableview">
|
|
<tr><th><?=i18n("Fair")?></th>
|
|
<th style="width: 5em"><?=i18n("Download Award")?></th>
|
|
<th style="width: 5em"><?=i18n("Upload Winners")?></th>
|
|
</tr>
|
|
<?
|
|
$q = mysql_query("SELECT * FROM fairs WHERE type='feeder'");
|
|
while($r = mysql_fetch_assoc($q)) {
|
|
echo "<tr><td style=\"padding-left:1em;padding-right:1em\">{$r['name']}</td>";
|
|
$ch = $dl[$r['id']] == true ? 'checked="checked"' : '';
|
|
echo "<td style=\"text-align:center\"><input type=\"checkbox\" name=\"feeder_dl[]\" value=\"{$r['id']} $ch \"></td>";
|
|
$ch = $ul[$r['id']] == true ? 'checked="checked"' : '';
|
|
echo "<td style=\"text-align:center\"><input type=\"checkbox\" name=\"feeder_ul[]\" value=\"{$r['id']} $ch \"></td>";
|
|
echo '</tr>';
|
|
}
|
|
?>
|
|
</table>
|
|
</div>
|
|
<br />
|
|
<button id="feeder_save"><?=i18n("Save")?></button>
|
|
</form>
|
|
<?
|
|
exit;
|
|
|
|
case 'feeder_save':
|
|
// print_r($_POST);
|
|
|
|
$id = intval($_POST['award_awards_id']);
|
|
$dl = is_array($_POST['feeder_dl']) ? $_POST['feeder_dl'] : array();
|
|
$ul = is_array($_POST['feeder_ul']) ? $_POST['feeder_ul'] : array();
|
|
|
|
/* Prepare a fair-wise list */
|
|
$data = array();
|
|
foreach($dl AS $fairs_id) $data[$fairs_id]['dl'] = true;
|
|
foreach($ul AS $fairs_id) $data[$fairs_id]['ul'] = true;
|
|
|
|
/* Now save each one */
|
|
mysql_query("DELETE FROM fairs_awards_link WHERE award_awards_id='$id'");
|
|
echo mysql_error();
|
|
foreach($data as $fairs_id=>$f) {
|
|
$dl = ($f['dl'] == true) ? 'yes' : 'no';
|
|
$ul = ($f['ul'] == true) ? 'yes' : 'no';
|
|
mysql_query("INSERT INTO fairs_awards_link (award_awards_id,fairs_id,download_award,upload_winners)
|
|
VALUES ('$id','$fairs_id','$dl','$ul')");
|
|
echo mysql_error();
|
|
}
|
|
$ident=mysql_escape_string(stripslashes($_POST['identifier']));
|
|
$per_fair = $_POST['per_fair'] == 'yes' ? 'yes' : 'no';
|
|
$mat = intval($_POST['additional_materials']);
|
|
$w = intval($_POST['register_winners']);
|
|
mysql_query("UPDATE award_awards SET external_identifier='$ident',
|
|
external_additional_materials='$mat',
|
|
external_register_winners='$w',
|
|
per_fair='$per_fair'
|
|
WHERE id='$id'");
|
|
|
|
happy_("Feeder Fair information saved");
|
|
exit;
|
|
}
|
|
|
|
send_header("Awards Management",
|
|
array('Committee Main' => 'committee_main.php',
|
|
'Administration' => 'admin/index.php',
|
|
'Awards Main' => 'admin/awards.php') );
|
|
|
|
?>
|
|
<script type="text/javascript" src="../js/jquery.tablednd_0_5.js"></script>
|
|
<script type="text/javascript">
|
|
|
|
var award_id = 0;
|
|
var award_tab_update = new Array();
|
|
|
|
function update_awardinfo()
|
|
{
|
|
if(award_tab_update['awardinfo'] == award_id) return;
|
|
award_tab_update['awardinfo'] = award_id;
|
|
// alert(award_id);
|
|
if(award_id == -1) {
|
|
// $("#awardinfo input:text").val('');
|
|
/* New award, set defaults and clear everythign else */
|
|
$("#awardinfo_id").val(-1);
|
|
$("#awardinfo_name").val("");
|
|
$("#awardinfo_sponsors_id").val(0);
|
|
$("#awardinfo_presenter").val("");
|
|
$("#awardinfo_description").val("");
|
|
$("#awardinfo_criteria").val("");
|
|
$("#awardinfo_award_types_id").val(5);
|
|
// For some reason, with checkboxes, these have to be arrays
|
|
$("#awardinfo_excludefromac").val([]);
|
|
$("#awardinfo_cwsfaward").val([]);
|
|
$("#awardinfo_selfnominate").val(["yes"]);
|
|
$("#awardinfo_schedulejudges").val(["yes"]);
|
|
return;
|
|
}
|
|
|
|
/* Enable all fields */
|
|
$("#awardinfo *").removeAttr('disabled');
|
|
|
|
$.getJSON("<?=$_SERVER['PHP_SELF']?>?action=awardinfo_load&id="+award_id,
|
|
function(json){
|
|
$("#awardinfo_id").val(json.id);
|
|
$("#awardinfo_name").val(json.name);
|
|
$("#awardinfo_award_source_fairs_id").val(json.award_source_fairs_id);
|
|
$("#awardinfo_sponsors_id").val(json.sponsors_id);
|
|
$("#awardinfo_presenter").val(json.presenter);
|
|
$("#awardinfo_description").val(json.description);
|
|
$("#awardinfo_criteria").val(json.criteria);
|
|
$("#awardinfo_award_types_id").val(json.award_types_id);
|
|
// For some reason, with checkboxes, these have to be arrays
|
|
$("#awardinfo_excludefromac").val([json.excludefromac]);
|
|
$("#awardinfo_cwsfaward").val([json.cwsfaward]);
|
|
$("#awardinfo_selfnominate").val([json.self_nominate]);
|
|
$("#awardinfo_schedulejudges").val([json.schedule_judges]);
|
|
|
|
/* Disable fields we don't want the user to edit
|
|
* for downloaded awards */
|
|
if(json.award_source_fairs_id>0) {
|
|
$("#awardinfo_name").attr('disabled', 'disabled');
|
|
$("#awardinfo_sponsors_id").attr('disabled', 'disabled');
|
|
$("#awardinfo_criteria").attr('disabled', 'disabled');
|
|
}
|
|
|
|
/* Update the dialog title */
|
|
$('#popup_editor').dialog('option', 'title', "<?=i18n('Award')?>: " + $('#awardinfo_name').val());
|
|
/* Update the status */
|
|
if($('#awardinfo_award_source_fairs_id').val() != 0) {
|
|
$('#popup_status').html("<?=addslashes(notice(i18n('This award was downloaded, some fields are not edittable')))?>");
|
|
} else {
|
|
$('#popup_status').html("");
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
|
|
function awardinfo_save()
|
|
{
|
|
var reload = (award_id == -1) ? true : false;
|
|
/* This is sneaky, we're going to make the awardinfo_save possibly emit
|
|
* javascript to set a new award_id, so it will ALWAYS be correct
|
|
* after the .load finishes */
|
|
$("#debug").load("<?$_SERVER['PHP_SELF']?>?action=awardinfo_save", $("#awardinfo").serializeArray(),
|
|
function(responseText, textStatus, XMLHttpRequest)
|
|
{
|
|
/* At this point, award_id has been updated by the load */
|
|
/* We want to do this AFTER the load completes.
|
|
* Somehow, the value of reload properly makes
|
|
* it into this function */
|
|
if(reload) {
|
|
$("#popup_editor").dialog('close');
|
|
popup_editor(award_id, '');
|
|
}
|
|
draw_awards_table();
|
|
});
|
|
return false;
|
|
}
|
|
|
|
function update_eligibility()
|
|
{
|
|
if(award_tab_update['eligibility'] == award_id) return;
|
|
award_tab_update['eligibility'] = award_id;
|
|
$.getJSON("<?=$_SERVER['PHP_SELF']?>?action=eligibility_load&id="+award_id,
|
|
function(json){
|
|
$("[name^=\"divisions\"]").attr('checked',false);
|
|
$("[name^=\"categories\"]").attr('checked',false);
|
|
|
|
for(i=0;i<json.categories.length;i++) {
|
|
var c=json.categories[i];
|
|
$("#eligibility_categories_"+c).attr('checked', 'checked');
|
|
}
|
|
for(i=0;i<json.divisions.length;i++) {
|
|
var d=json.divisions[i];
|
|
$("#eligibility_divisions_"+d).attr('checked', 'checked');
|
|
}
|
|
});
|
|
}
|
|
|
|
function prizefields_reset() {
|
|
$(".prizeinfo").removeAttr("checked");
|
|
$(".prizeinfo").attr("disabled", "disabled").val('');
|
|
$("#prizeinfo_save").attr("disabled", "disabled");
|
|
}
|
|
|
|
function prizelist_refresh()
|
|
{
|
|
$("#prizelist").tableDnD({
|
|
onDrop: function(table, row) {
|
|
var order = $.tableDnD.serialize();
|
|
$("#debug").load("<?=$_SERVER['PHP_SELF']?>?action=prize_order&"+order);
|
|
/* Change the order */
|
|
var rows = table.tBodies[0].rows;
|
|
for (var i=0; i<rows.length; i++) {
|
|
$("#prizelist_order_"+rows[i].id).html(i);
|
|
}
|
|
},
|
|
dragHandle: "drag_handle"
|
|
});
|
|
}
|
|
|
|
function update_prizeinfo()
|
|
{
|
|
/* We can't do this filtering here, sometimes we need to fiorce
|
|
* a prizeinfo reload */
|
|
// if(award_tab_update['prizeinfo'] == award_id) return;
|
|
// award_tab_update['prizeinfo'] = award_id;
|
|
/* This also works for the prize template, id=-1 */
|
|
$.getJSON("<?=$_SERVER['PHP_SELF']?>?action=prizeinfo_load&id="+award_id,
|
|
function(json) {
|
|
$(".prizelist_tr").remove();
|
|
for( var i in json ) {
|
|
var p = json[i];
|
|
var oc = " onclick=\"edit_prize("+p.id+");\" ";
|
|
$("#prizelist").append("<tr class=\"prizelist_tr\" id=\""+p.id+"\"><td class=\"drag_handle\" style=\"cursor:move; text-align:center;\" id=\"prizelist_order_"+p.id+"\">"+p.order+"</td>"+
|
|
"<td style=\"cursor:pointer; text-align:center;\" "+oc+" >"+p.number+"</td>"+
|
|
"<td style=\"cursor:pointer;\" "+oc+" >"+p.prize+"</td>"+
|
|
"<td style=\"cursor:pointer; width:4em; text-align:right; padding-left:2em; padding-right:2em;\" "+oc+">"+p.cash+"</td>"+
|
|
"<td style=\"cursor:pointer; width:4em; text-align:right; padding-left:2em; padding-right:2em;\" "+oc+">"+p.scholarship+"</td>"+
|
|
"<td style=\"cursor:pointer; width:4em; text-align:right; padding-left:2em; padding-right:2em;\" "+oc+">"+p.value+"</td>"+
|
|
"<td style=\"text-align:center;\">"+
|
|
" <a onclick=\"edit_prize("+p.id+");\" href=\"#\"><img border=\"0\" src=\"<?=$config['SFIABDIRECTORY']?>/images/16/edit.<?=$config['icon_extension']?>\"></a> "+
|
|
"<a onclick=\"prize_delete("+p.id+");\" href=\"#\" ><img border=0 src=\"<?=$config['SFIABDIRECTORY']?>/images/16/button_cancel.<?=$config['icon_extension']?>\"></a>"+
|
|
"</td></tr>");
|
|
}
|
|
prizelist_refresh();
|
|
});
|
|
}
|
|
|
|
function edit_prize(id)
|
|
{
|
|
$.getJSON("<?=$_SERVER['PHP_SELF']?>?action=prize_load&id="+id,
|
|
function(json){
|
|
$("#prizeinfo_edit_header").html("<?=i18n("Edit Prize")?>");
|
|
$("#prizeinfo_id").val(json.id);
|
|
$("#prizeinfo_prize").val(json.prize);
|
|
$("#prizeinfo_cash").val(json.cash);
|
|
$("#prizeinfo_scholarship").val(json.scholarship);
|
|
$("#prizeinfo_value").val(json.value);
|
|
$("#prizeinfo_number").val(json.number);
|
|
if(json.trophystudentkeeper == 1) {
|
|
$("#prizeinfo_trophystudentkeeper").attr("checked", "checked");
|
|
} else {
|
|
$("#prizeinfo_trophystudentkeeper").removeAttr("checked");
|
|
}
|
|
if(json.trophystudentreturn == 1) {
|
|
$("#prizeinfo_trophystudentreturn").attr("checked", "checked");
|
|
} else {
|
|
$("#prizeinfo_trophystudentreturn").removeAttr("checked");
|
|
}
|
|
if(json.trophyschoolreturn == 1) {
|
|
$("#prizeinfo_trophyschoolreturn").attr("checked", "checked");
|
|
} else {
|
|
$("#prizeinfo_trophyschoolreturn").removeAttr("checked");
|
|
}
|
|
if(json.trophyschoolkeeper == 1) {
|
|
$("#prizeinfo_trophyschoolkeeper").attr("checked", "checked");
|
|
} else {
|
|
$("#prizeinfo_trophyschoolkeeper").removeAttr("checked");
|
|
}
|
|
if(json.excludefromac == 1) {
|
|
$("#prizeinfo_excludefromac").attr("checked", "checked");
|
|
} else {
|
|
$("#prizeinfo_excludefromac").removeAttr("checked");
|
|
}
|
|
$(".prizeinfo").removeAttr("disabled");
|
|
$("#prizeinfo_save").removeAttr("disabled");
|
|
});
|
|
}
|
|
|
|
function eligibility_save()
|
|
{
|
|
$("#eligibility_award_awards_id").val(award_id);
|
|
$("#debug").load("<?$_SERVER['PHP_SELF']?>?action=eligibility_save", $("#eligibility").serializeArray());
|
|
return false;
|
|
}
|
|
|
|
function prize_save()
|
|
{
|
|
$("#debug").load("<?$_SERVER['PHP_SELF']?>?action=prize_save", $("#prizeinfo").serializeArray(),
|
|
function(responseText, textStatus, XMLHttpRequest)
|
|
{
|
|
update_prizeinfo();
|
|
});
|
|
return false;
|
|
}
|
|
|
|
function prize_delete(id)
|
|
{
|
|
var confirm = confirmClick('Are you sure you want to delete this prize?');
|
|
if(confirm == true) {
|
|
$("#debug").load("<?$_SERVER['PHP_SELF']?>?action=prize_delete&id="+id, $("#prizeinfo").serializeArray(),
|
|
function(responseText, textStatus, XMLHttpRequest)
|
|
{
|
|
$(".prizelist_tr#"+id).fadeTo('slow', 0);
|
|
$(".prizelist_tr#"+id).remove();
|
|
prizelist_refresh();
|
|
prizefields_reset();
|
|
});
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
function prize_create()
|
|
{
|
|
$.getJSON("<?=$_SERVER['PHP_SELF']?>?action=prize_create&award_awards_id="+award_id,
|
|
function(json){
|
|
$(".prizeinfo").val("");
|
|
$("#prizeinfo_id").val(json.id);
|
|
$("#prizeinfo_edit_header").html("<?=i18n("New Prize")?>");
|
|
$(".prizeinfo").removeAttr("disabled");
|
|
$("#prizeinfo_save").removeAttr("disabled");
|
|
update_prizeinfo();
|
|
});
|
|
}
|
|
|
|
function update_feeder()
|
|
{
|
|
if(award_tab_update['feeder'] == award_id) return;
|
|
award_tab_update['feeder'] = award_id;
|
|
|
|
$("#editor_tab_feeder").load("<?=$_SERVER['PHP_SELF']?>?action=feeder_load&id="+award_id, '',
|
|
function(responseText, textStatus, XMLHttpRequest) {
|
|
/* Register buttons and handlers */
|
|
$("#feeder_enable").change(function() {
|
|
update_feeder_enable();
|
|
});
|
|
$("#feeder_save").click(function() {
|
|
$("#debug").load("<?$_SERVER['PHP_SELF']?>?action=feeder_save", $("#feeder_form").serializeArray());
|
|
return false;
|
|
});
|
|
|
|
update_feeder_enable();
|
|
});
|
|
}
|
|
|
|
function update_feeder_enable()
|
|
{
|
|
var checked = $('#feeder_enable:checkbox').is(':checked');
|
|
if(checked==true) {
|
|
$('#feeder_en *').removeAttr('disabled');
|
|
} else {
|
|
$("#feeder_en *").attr('disabled', 'disabled');
|
|
$('#feeder_enable').removeAttr('disabled');
|
|
}
|
|
}
|
|
|
|
/* Setup the popup window */
|
|
$(document).ready(function() {
|
|
$("#popup_editor").dialog({
|
|
bgiframe: true, autoOpen: false,
|
|
modal: true, resizable: false,
|
|
draggable: false,
|
|
close: function() {
|
|
var $tabs = $('#editor_tabs').tabs();
|
|
var selected = $tabs.tabs('option', 'selected');
|
|
if(award_id == -1 && selected== 0) {
|
|
notice_("<?=i18n('New Award Cancelled')?>");
|
|
}
|
|
}
|
|
});
|
|
|
|
$("#editor_tabs").tabs({
|
|
show: function(event, ui) {
|
|
switch(ui.panel.id) {
|
|
case 'editor_tab_awardinfo':
|
|
update_awardinfo();
|
|
break;
|
|
case 'editor_tab_eligibility':
|
|
update_eligibility();
|
|
break;
|
|
case 'editor_tab_prizes':
|
|
update_prizeinfo();
|
|
break;
|
|
case 'editor_tab_feeder':
|
|
update_feeder();
|
|
break;
|
|
}
|
|
return true;
|
|
},
|
|
collapsible: true,
|
|
selected: -1 /* None selected */
|
|
});
|
|
|
|
});
|
|
|
|
</script>
|
|
|
|
<?
|
|
/* Begin popup */
|
|
?>
|
|
|
|
<div id="popup_editor" title="Award Editor" style="display: none">
|
|
<div id="popup_status"></div>
|
|
<div id="editor_tabs">
|
|
<ul><li><a href="#editor_tab_awardinfo"><span><?=i18n('Award Info')?></span></a></li>
|
|
<li><a href="#editor_tab_eligibility"><span><?=i18n('Eligibility')?></span></a></li>
|
|
<li><a href="#editor_tab_prizes"><span><?=i18n('Prizes')?></span></a></li>
|
|
<li><a href="#editor_tab_feeder"><span><?=i18n('Feeder Fairs')?></span></a></li>
|
|
</ul>
|
|
|
|
<div id="editor_tab_awardinfo">
|
|
<h4><?=i18n("Award Info")?></h4>
|
|
<form>
|
|
<?/* We dont' want to ever change this, but we want it's value, so put it in
|
|
* a form by itself */?>
|
|
<input type="hidden" name="award_source_fairs_id" id="awardinfo_award_source_fairs_id" value="0" />
|
|
</form>
|
|
<form id="awardinfo">
|
|
<input type="hidden" name="id" id="awardinfo_id" value="0" />
|
|
<table class="editor">
|
|
<tr><td><?=i18n("Name")?>:</td>
|
|
<td><input class="translatable" type="text" id="awardinfo_name" name="name" value="Loading..." size="50" maxlength="128">
|
|
</td></tr>
|
|
<tr><td><?=i18n("Sponsor")?>:</td><td>
|
|
<?
|
|
$sq=mysql_query("SELECT id,organization FROM sponsors ORDER BY organization");
|
|
echo "<select id=\"awardinfo_sponsors_id\" name=\"sponsors_id\">";
|
|
echo "<option value=\"\">".i18n("Choose a sponsor")."</option>\n";
|
|
while($sr=mysql_fetch_object($sq)) {
|
|
echo "<option value=\"$sr->id\">".i18n($sr->organization)."</option>";
|
|
}
|
|
?>
|
|
</select></td></tr>
|
|
<tr><td><?=i18n("Presenter")?>:</td>
|
|
<td><input type="text" id="awardinfo_presenter" name="presenter" value="Loading..." size="50" maxlength="128" />
|
|
</td></tr>
|
|
<tr><td><?=i18n("Type")?>:</td><td>
|
|
<?
|
|
$tq=mysql_query("SELECT id,type FROM award_types WHERE conferences_id='{$conference['id']}' ORDER BY type");
|
|
echo "<select id=\"awardinfo_award_types_id\" 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)) {
|
|
echo "<option value=\"$tr->id\">".i18n($tr->type)."</option>";
|
|
}
|
|
?>
|
|
</select></td></tr>
|
|
<tr><td><label><?=i18n("Criteria")?>:</label></td>
|
|
<td><textarea class="translatable" id="awardinfo_criteria" name="criteria" rows="3" cols="50">Loading...</textarea></td></tr>
|
|
<tr><td><?=i18n("Description")?>:</td>
|
|
<td><textarea class="translatable" id="awardinfo_description" name="description" rows="3" cols="50">Loading...</textarea></td></tr>
|
|
</table>
|
|
|
|
<h4>Options</h4>
|
|
<table class="editor">
|
|
<tr> <td><input type="checkbox" id="awardinfo_excludefromac" name="excludefromac" value="1"></td>
|
|
<td><?=i18n("Exclude this award from the award ceremony script")?></td>
|
|
</tr><tr>
|
|
<td><input type="checkbox" id="awardinfo_cwsfaward" name="cwsfaward" value="1"></td>
|
|
<td><?=i18n("This award identifies the students that will be attending the Canada-Wide Science Fair")?></td>
|
|
</tr><tr>
|
|
<td><input type="checkbox" id="awardinfo_selfnominate" name="self_nominate" value="yes"></td>
|
|
<td><?=i18n("Students can self-nominate for this award (this is usually checked for special awards)")?></td>
|
|
</tr><tr>
|
|
<td><input type="checkbox" id="awardinfo_schedulejudges" name="schedule_judges" value="yes"></td>
|
|
<td><?=i18n("Allow the Automatic Judge Scheduler to assign judges to this award (usually checked)")?></td>
|
|
</tr></table>
|
|
<input type="submit" onClick="awardinfo_save();return false;" value="Save" />
|
|
</form>
|
|
</div>
|
|
|
|
<? /* Next Tab */ ?>
|
|
<div id="editor_tab_eligibility">
|
|
<h4><?=i18n("Eligibility")?></h4>
|
|
<br />
|
|
<form id="eligibility">
|
|
<input type="hidden" id="eligibility_award_awards_id" name="award_awards_id" value="" />
|
|
<table class="editor">
|
|
<tr><td><?=i18n("Age Categories")?>:</td><td>
|
|
<?
|
|
// if(count($currentcategories)==0) $class="class=\"error\""; else $class="";
|
|
|
|
//now select all the categories so we can list them all
|
|
$cq=mysql_query("SELECT * FROM projectcategories WHERE conferences_id='{$conference['id']}' ORDER BY mingrade");
|
|
echo mysql_error();
|
|
while($cr=mysql_fetch_object($cq)) {
|
|
echo "<input type=\"checkbox\" id=\"eligibility_categories_{$cr->id}\" name=\"categories[]\" value=\"$cr->id\" /> ".i18n($cr->category)."<br />";
|
|
}
|
|
?>
|
|
</td></tr>
|
|
|
|
<tr><td><?=i18n("Divisions")?>:</td><td>
|
|
<?
|
|
$dq=mysql_query("SELECT * FROM projectdivisions WHERE conferences_id='{$conference['id']}' ORDER BY division");
|
|
echo mysql_error();
|
|
while($dr=mysql_fetch_object($dq)) {
|
|
echo "<input type=\"checkbox\" id=\"eligibility_divisions_{$dr->id}\" name=\"divisions[]\" value=\"$dr->id\" /> ".i18n($dr->division)."<br />";
|
|
}
|
|
// if(count($currentcategories)==0 || count($currentdivisions)==0)
|
|
// echo "<tr><td colspan=\"2\" class=\"error\">".i18n("At least one age category and one division must be selected")."</td></tr>";
|
|
|
|
?>
|
|
</td></tr></table>
|
|
<input type="submit" onClick="eligibility_save();return false;" value="Save" />
|
|
</form>
|
|
</div>
|
|
|
|
<? /* Next Tab */ ?>
|
|
|
|
<div id="editor_tab_prizes">
|
|
<h4><?=i18n("Prizes")?></h4>
|
|
<br />
|
|
<table id="prizelist" class="tableview">
|
|
<tr class="nodrop nodrag">
|
|
<th style="width:4em"><?=i18n("Script Order")?></th>
|
|
<th><?=i18n("# Available")?></th>
|
|
<th style="width: 15em"><?=i18n("Prize Description")?></th>
|
|
<th><?=i18n("Cash")?></th>
|
|
<th><?=i18n("Scholarship")?></th>
|
|
<th><?=i18n("Value")?></th>
|
|
<th><?=i18n("Actions")?></th>
|
|
</tr></table>
|
|
<br >
|
|
* <?=i18n("Click on the Script Order and drag to re-order the prizes")?>
|
|
<br >
|
|
<hr>
|
|
|
|
<br /><h4 id="prizeinfo_edit_header">Click on a prize to edit</h4><br />
|
|
<form id="prizeinfo">
|
|
<input type="hidden" id="prizeinfo_id" name="id" value=""/>
|
|
<input type="hidden" id="prizeinfo_award_awards_id" name="award_awards_id" value=""/>
|
|
<table class="editor">
|
|
<tr>
|
|
<td><?=i18n("Number available")?>:</td>
|
|
<td><input type="text" id="prizeinfo_number" class="prizeinfo" name="number" value="" size="3" maxlength="5" disabled="disabled" /></td>
|
|
</tr><tr>
|
|
<td><?=i18n("Prize Description")?>:</td>
|
|
<td><input type="text" id="prizeinfo_prize" class="prizeinfo translatable" name="prize" value="" size="40" maxlength="128" disabled="disabled"/></td>
|
|
</tr><tr>
|
|
<td><?=i18n("Cash Amount")?> ($):</td>
|
|
<td><input type="text" id="prizeinfo_cash" class="prizeinfo" name="cash" value="" size="10" maxlength="10" disabled="disabled" /></td>
|
|
</tr><tr>
|
|
<td><?=i18n("Scholarship Amount")?> ($):</td>
|
|
<td><input type="text" id="prizeinfo_scholarship" class="prizeinfo" name="scholarship" value="" size="10" maxlength="10" disabled="disabled" /></td>
|
|
</tr><tr>
|
|
<td><?=i18n("Prize Value")?> ($):</td>
|
|
<td><input type="text" id="prizeinfo_value" class="prizeinfo" name="value" value="" size="10" maxlength="10" disabled="disabled" /></td>
|
|
</tr><tr>
|
|
<td><?=i18n("Plaque/Trophy")?>:</td>
|
|
<td>
|
|
<table>
|
|
<tr> <td style="width:5%;"><input type="checkbox" id="prizeinfo_trophystudentkeeper" class="prizeinfo" name="trophystudentkeeper" value="1" disabled="disabled"></td>
|
|
<td style="width:45%"><?=i18n("Student(s) keeper trophy")?></td>
|
|
<td style="width:5%;"><input type="checkbox" id="prizeinfo_trophystudentreturn" class="prizeinfo" name="trophystudentreturn" value="1" disabled="disabled"></td>
|
|
<td style="width:45%"><?=i18n("Student(s) annual return/reuse trophy")?></td>
|
|
</tr><tr>
|
|
<td style="width:5%;"><input type="checkbox" id="prizeinfo_trophyschoolkeeper" class="prizeinfo" name="trophyschoolkeeper" value="1" disabled="disabled"></td>
|
|
<td style="width:45%;"><?=i18n("School keeper trophy")?></td>
|
|
<td style="width:5%;"><input type="checkbox" id="prizeinfo_trophyschoolreturn" class="prizeinfo" name="trophyschoolreturn" value="1" disabled="disabled"></td>
|
|
<td style="width:45%;"><?=i18n("School annual return/reuse trophy")?></td>
|
|
</tr></table></td>
|
|
</tr><tr>
|
|
<td><?=i18n("Awards Ceremony")?>:</td>
|
|
<td><input type="checkbox" id="prizeinfo_excludefromac" class="prizeinfo" name="excludefromac" value="1" disabled="disabled"><?=i18n("Exclude this prize from the award ceremony script")?></td>
|
|
</tr>
|
|
</table>
|
|
</form>
|
|
<br />
|
|
<form>
|
|
<input type="submit" onClick="prize_create();return false;" value="<?=i18n("Create New Prize")?>" />
|
|
<input type="submit" id="prizeinfo_save" onClick="prize_save();return false;" value="<?=i18n("Save Prize")?>" disabled="disabled" />
|
|
</form>
|
|
</div>
|
|
|
|
<? /* Next Tab */ ?>
|
|
<div id="editor_tab_feeder"></div>
|
|
|
|
<? /* End tabs, end popup */ ?>
|
|
</div></div>
|
|
|
|
<?
|
|
/* Here's all the code for the award list, except for the AJAX queries which are
|
|
* at the top of this file */
|
|
?>
|
|
|
|
<script type="text/javascript">
|
|
|
|
function popup_editor(id, mode)
|
|
{
|
|
var w = (document.documentElement.clientWidth * 0.8);
|
|
var h = (document.documentElement.clientHeight * 0.8);
|
|
|
|
award_id = id;
|
|
/* We don't really need this, but we'll force all the tabs to reload on
|
|
* activation anyway */
|
|
award_tab_update = new Array();
|
|
|
|
prizefields_reset();
|
|
|
|
/* Force no tabs to be selected, need to set collapsible
|
|
* to true first */
|
|
$('#editor_tabs').tabs('option', 'collapsible', true);
|
|
$('#editor_tabs').tabs('option', 'selected', -1);
|
|
|
|
/* Then we'll select a tab to force a reload */
|
|
switch(mode) {
|
|
case 'new':
|
|
$('#editor_tabs').tabs('option', 'disabled', [1, 2, 3]);
|
|
$('#editor_tabs').tabs('select', 0);
|
|
break;
|
|
case 'template':
|
|
$('#editor_tabs').tabs('option', 'disabled', [0, 1, 3]);
|
|
$('#editor_tabs').tabs('select', 2);
|
|
break;
|
|
default:
|
|
$('#editor_tabs').tabs('option', 'disabled', []);
|
|
$('#editor_tabs').tabs('select', 0);
|
|
break;
|
|
}
|
|
/* Don't let anything collapse */
|
|
$('#editor_tabs').tabs('option', 'collapsible', false);
|
|
|
|
/* Force an awardinfo update, there's some info in there that we want now */
|
|
update_awardinfo();
|
|
|
|
/* Show the dialog */
|
|
$('#popup_editor').dialog('option', 'width', w);
|
|
$('#popup_editor').dialog('option', 'height', h);
|
|
$("#popup_editor").dialog('open');
|
|
|
|
|
|
|
|
return true;
|
|
}
|
|
|
|
function awardlist_refresh()
|
|
{
|
|
$("#awardlist").tableDnD({
|
|
onDrop: function(table, row) {
|
|
var order = $.tableDnD.serialize();
|
|
// $(row).fadeTo('fast',1);
|
|
$("#debug").load("<?=$_SERVER['PHP_SELF']?>?action=award_order&"+order);
|
|
|
|
/* Change the order */
|
|
var rows = table.tBodies[0].rows;
|
|
for (var i=0; i<rows.length; i++) {
|
|
$("#awardlist_order_"+rows[i].id).html(i);
|
|
}
|
|
},
|
|
onDragStart: function(table, row) {
|
|
// $(row).fadeTo('fast',0.2);
|
|
},
|
|
dragHandle: "drag_handle"
|
|
});
|
|
}
|
|
|
|
function award_delete(id)
|
|
{
|
|
var conf = confirmClick('<?=i18n("Are you sure you want to remove this award?")?>');
|
|
if(conf == true) {
|
|
$("#info_info").load("<?$_SERVER['PHP_SELF']?>?action=award_delete&id="+id);
|
|
/* The TRs need to have just a numeric ID, which could conflict with other lists, so
|
|
* tag each TR with a class too, and select both the class and the ID */
|
|
$(".awardlist_tr#"+id).fadeTo('slow', 0);
|
|
$(".awardlist_tr#"+id).remove();
|
|
/* Rows changed, need to refresh the drag list */
|
|
awardlist_refresh();
|
|
}
|
|
|
|
}
|
|
|
|
function draw_awards_table(){
|
|
$('#awards_table').load("<?=$_SERVER['PHP_SELF']?>?action=draw_awards_table");
|
|
}
|
|
|
|
$(document).ready(function() {
|
|
awardlist_refresh();
|
|
});
|
|
|
|
</script>
|
|
|
|
|
|
<div id="info_info"></div>
|
|
|
|
<?
|
|
|
|
|
|
|
|
/* List filtering */
|
|
if($_GET['sponsors_id'] && $_GET['sponsors_id']!="all")
|
|
$_SESSION['sponsors_id']=$_GET['sponsors_id'];
|
|
else if($_GET['sponsors_id']=="all")
|
|
unset($_SESSION['sponsors_id']);
|
|
|
|
if($_GET['award_types_id'] && $_GET['award_types_id']!="all")
|
|
$_SESSION['award_types_id']=$_GET['award_types_id'];
|
|
else if($_GET['award_types_id']=="all")
|
|
unset($_SESSION['award_types_id']);
|
|
|
|
/*
|
|
if($_GET['award_sponsors_confirmed'] && $_GET['award_sponsors_confirmed']!="all")
|
|
$_SESSION['award_sponsors_confirmed']=$_GET['award_sponsors_confirmed'];
|
|
|
|
if($_GET['sponsors_id']=="all")
|
|
unset($_SESSION['sponsors_id']);
|
|
if($_GET['award_types_id']=="all")
|
|
unset($_SESSION['award_types_id']);
|
|
if($_GET['award_sponsors_confirmed']=="all")
|
|
unset($_SESSION['award_sponsors_confirmed']);
|
|
*/
|
|
|
|
$award_types_id=$_SESSION['award_types_id'];
|
|
$sponsors_id=$_SESSION['sponsors_id'];
|
|
//$award_sponsors_confirmed=$_SESSION['award_sponsors_confirmed'];
|
|
|
|
echo "<br />";
|
|
echo i18n("Filter By:");
|
|
echo "<form method=\"get\" action=\"award_awards.php\" name=\"filterchange\">";
|
|
|
|
echo "<table><tr><td colspan=\"2\">";
|
|
|
|
$q=mysql_query("SELECT id,organization FROM sponsors ORDER BY organization");
|
|
echo "<select name=\"sponsors_id\" onchange=\"document.forms.filterchange.submit()\">";
|
|
echo "<option value=\"all\">".i18n("All Sponsors")."</option>";
|
|
while($r=mysql_fetch_object($q)) {
|
|
if($r->id == $sponsors_id) {
|
|
$sel="selected=\"selected\"";
|
|
$sponsors_organization=$r->organization;
|
|
} else
|
|
$sel="";
|
|
echo "<option $sel value=\"$r->id\">".i18n($r->organization)."</option>";
|
|
}
|
|
echo "</select>";
|
|
echo "</td></tr>";
|
|
echo "<tr><td>";
|
|
|
|
$q=mysql_query("SELECT id,type FROM award_types WHERE conferences_id='{$conference['id']}' 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 "</td><td>";
|
|
|
|
/*
|
|
//FIXME: 'confirmed' no longer exists, we need to lookup their sponsorship record and check the status there, either pending, confirmed or received, dunno if it makes sense to put that here or not..
|
|
|
|
echo "<select name=\"award_sponsors_confirmed\" onchange=\"document.forms.filterchange.submit()\">";
|
|
if($award_sponsors_confirmed=="all") $sel="selected=\"selected\""; else $sel="";
|
|
echo "<option value=\"all\">".i18n("Any Status")."</option>";
|
|
if($award_sponsors_confirmed=="yes") $sel="selected=\"selected\""; else $sel="";
|
|
echo "<option $sel value=\"yes\">".i18n("Confirmed Only")."</option>";
|
|
if($award_sponsors_confirmed=="no") $sel="selected=\"selected\""; else $sel="";
|
|
echo "<option $sel value=\"no\">".i18n("Unconfirmed Only")."</option>";
|
|
echo "</select>";
|
|
*/
|
|
echo "</form>";
|
|
echo "</td></tr>";
|
|
echo "</table>";
|
|
|
|
?>
|
|
<br />
|
|
<form>
|
|
<input type="button" onClick="popup_editor(-1, 'new');" value="<?=i18n("Create New Award")?>" />
|
|
<input type="button" onClick="popup_editor(-1, 'template');" value="<?=i18n("Edit Generic Prize Template")?>" />
|
|
</form>
|
|
<br /><br />
|
|
|
|
<?
|
|
echo "<div id=\"awards_table\">";
|
|
draw_awards_table();
|
|
echo "</div>";
|
|
|
|
if($_GET['action'] == 'edit_prize_template') {
|
|
|
|
?><script type="text/javascript">
|
|
$(document).ready(function() {
|
|
popup_editor(-1,'template');
|
|
});
|
|
</script>
|
|
<?
|
|
}
|
|
send_footer();
|
|
|
|
function draw_awards_table(){
|
|
global $config;
|
|
global $conference;
|
|
$award_types_id=$_SESSION['award_types_id'];
|
|
$sponsors_id=$_SESSION['sponsors_id'];
|
|
|
|
/* For some reason, this submit button opens the dialog then it closes right away, but it doesn't
|
|
* if the entry is done through the a href */
|
|
//<input type="submit" onClick="award_create();" value="<?=i18n("Create New Award")>" />
|
|
|
|
if($sponsors_id) $where_asi="AND sponsors_id='$sponsors_id'";
|
|
if($award_types_id) $where_ati="AND award_types_id='$award_types_id'";
|
|
// if($award_sponsors_confirmed) $where_asc="AND award_sponsors.confirmed='$award_sponsors_confirmed'";
|
|
|
|
if(!$orderby) $orderby="order";
|
|
|
|
$q=mysql_query("SELECT
|
|
award_awards.id,
|
|
award_awards.name,
|
|
award_awards.order,
|
|
award_awards.award_source_fairs_id,
|
|
award_types.type,
|
|
sponsors.organization
|
|
FROM
|
|
award_awards
|
|
LEFT JOIN sponsors ON sponsors.id = award_awards.sponsors_id
|
|
LEFT JOIN award_types ON award_types.id = award_awards.award_types_id
|
|
WHERE
|
|
award_awards.conferences_id='{$conference['id']}'
|
|
$where_asi
|
|
$where_ati
|
|
AND award_types.conferences_id='{$conference['id']}'
|
|
ORDER BY `$orderby`");
|
|
|
|
echo mysql_error();
|
|
|
|
if(mysql_num_rows($q)){
|
|
echo "* ".i18n("Click on the Script Order and drag to re-order the awards");
|
|
echo "<table id=\"awardlist\" class=\"tableview\" >";
|
|
echo "<tr class=\"nodrop nodrag\">";
|
|
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_source_fairs_id) {
|
|
$cl="externalaward";
|
|
$hasexternal=true;
|
|
}
|
|
else $cl="";
|
|
$eh = "style=\"cursor:pointer;\" onclick=\"popup_editor({$r->id},'');\"";
|
|
echo "<tr class=\"$cl awardlist_tr\" id=\"{$r->id}\" >\n";
|
|
echo " <td id=\"awardlist_order_{$r->id}\" class=\"drag_handle\" style=\"cursor:move; text-align:right;\">{$r->order}</td>\n";
|
|
echo " <td $eh>{$r->organization}</td>\n";
|
|
echo " <td $eh>{$r->type}</td>\n";
|
|
echo " <td $eh>{$r->name}</td>\n";
|
|
|
|
$numq=mysql_query("SELECT SUM(number) AS num FROM award_prizes WHERE award_awards_id='{$r->id}'");
|
|
$numr=mysql_fetch_assoc($numq);
|
|
if(!$numr['num'])
|
|
$numr['num']=0;
|
|
|
|
echo " <td $eh align=\"center\">{$numr['num']}</td>";
|
|
|
|
echo " <td align=\"center\">";
|
|
// echo "<img border=\"0\" src=\"{$config['SFIABDIRECTORY']}/images/16/edit.{$config['icon_extension']}\">";
|
|
// echo " ";
|
|
echo "<a onclick=\"award_delete({$r->id});\" href=\"#\" ><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 "</form>";
|
|
}
|
|
echo "<br />";
|
|
//echo "<a href=\"award_prizes.php?award_awards_id=-1\">Edit prizes for the generic prize template</a>";
|
|
}
|
|
?>
|