Copyright (C) 2005 James Grant 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. */ ?> 'committee_main.php', 'Administration' => 'admin/index.php', 'Judges' => 'admin/judges.php') ); ?> id]=$r->division_shortform; $div[$r->id]=$r->division; } $cat = array(); $q=mysql_query("SELECT * FROM projectcategories WHERE year='".$config['FAIRYEAR']."' ORDER BY id"); while($r=mysql_fetch_object($q)) { $cat[$r->id]=$r->category; } $langr = array(); $q=mysql_query("SELECT * FROM languages WHERE active='Y'"); while($r=mysql_fetch_object($q)) { $langr[$r->lang] = $r->langname; } function get_all_divs() { global $config; global $divshort, $div,$cat, $langr; $cdlcheck = array(); $cdl = array(); $q=mysql_query("SELECT * FROM judges_jdiv"); while($r=mysql_fetch_object($q)) { $cdl[$r->id]['id'] = $r->id; $cdl[$r->id]['jdiv'] = $r->jdiv_id; $cdl[$r->id]['div'] = $r->projectdivisions_id; $cdl[$r->id]['cat'] = $r->projectcategories_id; $cdl[$r->id]['lang'] = $r->lang; $cdlcheck[$r->projectcategories_id][$r->projectdivisions_id][$r->lang] = 1; } /* Check for missing cdls */ $divkeys = array_keys($divshort); $catkeys = array_keys($cat); $lankeys = array_keys($langr); foreach($catkeys as $x) { foreach($divkeys as $y) { foreach($lankeys as $z) { if($cdlcheck[$x][$y][$z] == 1) continue; /* Also, make an entry in the DB, so that this isn't * unassigned anymore */ mysql_query("INSERT INTO judges_jdiv (id, jdiv_id, projectdivisions_id, projectcategories_id, lang) ". " VALUES('', 0, '$y', '$x', '$z')"); $q = mysql_query("SELECT id FROM judges_jdiv WHERE ". " projectdivisions_id='$y' ". " AND projectcategories_id='$x' ". " AND lang='$z' "); $r = mysql_fetch_object($q); $cdl[$r->id]['id'] = $r->id; $cdl[$r->id]['jdiv'] = 0; /* Unassigned */ $cdl[$r->id]['cat'] = $x; $cdl[$r->id]['div'] = $y; $cdl[$r->id]['lang'] = $z; } reset($lankeys); } reset($catkeys); } reset($divkeys); /* Make names for all the DCLs, and count the number of projects */ $dkeys = array_keys($cdl); foreach($dkeys as $id) { $x = $cat[$cdl[$id]['cat']]; $y = $divshort[$cdl[$id]['div']]; $z = $div[$cdl[$id]['div']]; $q = mysql_query("SELECT count(projects.id) AS cnt FROM projects,registrations WHERE ". " projectdivisions_id='{$cdl[$id]['div']}' ". " AND projectcategories_id='{$cdl[$id]['cat']}' ". " AND language='{$cdl[$id]['lang']}' ". " AND registrations.year='{$config['FAIRYEAR']}'". " AND projects.registrations_id=registrations.id". " AND (registrations.status='complete' OR registrations.status='paymentpending')"); $r = mysql_fetch_object($q); echo mysql_error(); $c = $r->cnt; $cdl[$id]['name'] = "$x $y ({$cdl[$id]['lang']}) ($c project".($c==1?'':'s').")"; $cdl[$id]['lname'] = "$x $z ({$cdl[$id]['lang']}) ($c project".($c==1?'':'s').")"; $cdl[$id]['projects'] = $c; } return $cdl; } echo "<< ".i18n("Back to Administration")."\n"; echo "<< ".i18n("Back to Judges")."\n"; if($_POST['action']=="add" && $_POST['jdiv_id'] && count($_POST['cdllist'])>0) { foreach($_POST['cdllist'] AS $selectedcdl) { $q=mysql_query("UPDATE judges_jdiv SET jdiv_id='{$_POST['jdiv_id']}' WHERE ". " id='$selectedcdl' "); } echo happy(i18n("Judging Division(s) successfully added")); } if($_GET['action']=="del" && $_GET['cdl_id']) { mysql_query("UPDATE judges_jdiv SET jdiv_id=0 WHERE id='{$_GET['cdl_id']}'"); } if($_GET['action']=="empty" && $_GET['jdiv_id']) { mysql_query("UPDATE judges_jdiv SET jdiv_id=0 WHERE jdiv_id='{$_GET['jdiv_id']}' "); echo happy(i18n("Emptied all divisions from Judging Division Group %1",array($_GET['jdiv_id']))); } /* Sort out all the judging divisions */ $cdl = get_all_divs(); $dkeys = array_keys($cdl); /* Count the divisions, or, use the posted variable so we can create new * and empty judging divisions */ if($_POST['jdivs'] > 0) { $jdivs = $_POST['jdivs']; } else { $jdivs = 0; foreach($dkeys as $d) { if($cdl[$d]['jdiv'] > $jdivs) $jdivs = $cdl[$d]['jdiv']; } } echo "
"; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo "
".i18n("Division List"); echo "
"; echo "
".i18n("Judging Division Groups")."
"; // echo ""; // echo "
"; echo ""; echo "
"; /* Print he groupings of the assigned ones */ for($jdiv = 1; $jdiv <= $jdivs; $jdiv++) { echo "
"; echo ""; echo "
"; echo "
"; echo "
"; echo ""; echo ""; echo " ".i18n("Empty")." "; echo ""; echo "
"; $p = 0; reset($dkeys); foreach($dkeys as $id) { if($cdl[$id]['jdiv'] != $jdiv) continue; $p += $cdl[$id]['projects']; } echo "\n"; echo "\n"; $x = 0; reset($dkeys); foreach($dkeys as $id) { if($cdl[$id]['jdiv'] != $jdiv) continue; echo ""; $x++; } if($x) { echo ""; } else { echo ""; } echo "
Judging Division $jdiv ($p project".($p==1?'':'s').")"; echo "
"; echo ""; echo ""; echo $cdl[$id]['lname']; echo "
"; // echo ""; // echo " ".i18n("Empty All Divisions")." "; // echo ""; // echo ""; echo "
"; echo error(i18n("No divisions present"),"inline"); echo "
"; echo "
"; } echo "
"; echo "
"; echo "
"; echo "
"; send_footer(); ?>