var]=$r->val; } echo i18n("Based on your configuration data above, here are some calculations"); echo "
"; $totalteams=0; $catq=mysql_query("SELECT * FROM projectcategories WHERE year='{$config['FAIRYEAR']}' ORDER BY mingrade"); while($catr=mysql_fetch_object($catq)) { echo "

$catr->category

"; echo ""; echo ""; $divq=mysql_query("SELECT * FROM projectdivisions WHERE year='{$config['FAIRYEAR']}' ORDER BY id"); while($divr=mysql_fetch_object($divq)) { $langq=mysql_query("SELECT * FROM languages WHERE active='Y'"); while($langr=mysql_fetch_object($langq)) { $numq=mysql_query("SELECT COUNT(id) AS num FROM projects WHERE projectcategories_id='$catr->id' AND projectdivisions_id='$divr->id' AND year='{$config['FAIRYEAR']}' AND language='$langr->lang'"); $numr=mysql_fetch_object($numq); echo ""; echo ""; $numteams=ceil($numr->num/$schedulerconfig['max_projects_per_team']*$schedulerconfig['num_times_judged']); if($numteams<$schedulerconfig['num_times_judged']) $numteams=$schedulerconfig['num_times_judged']; echo ""; $totalteams+=$numteams; echo ""; } } echo "
DivisionProjectsTeams
".i18n($divr->division)." ($langr->lang)$numr->num$numteams
"; echo "
"; echo "
"; } echo ""; echo "Total judging teams required: $totalteams"; echo "
"; $minjudges=($totalteams*$schedulerconfig['min_judges_per_team']); $maxjudges=($totalteams*$schedulerconfig['max_judges_per_team']); echo "Minimum number of judges required: $minjudges"; echo "
"; echo "Maximum number of judges acceptable: $maxjudges"; echo "
"; $jq=mysql_query("SELECT COUNT(judges.id) AS num FROM judges,judges_years WHERE complete='yes' AND judges_years.year='{$config['FAIRYEAR']}' AND judges_years.judges_id=judges.id"); $jr=mysql_fetch_object($jq); $currentjudges=$jr->num; echo "Current number of registered judges: $currentjudges"; echo "
"; echo "
"; $ok=true; if($currentjudges<$minjudges) { echo error(i18n("You do not have sufficient number of judges based on your parameters")); echo "  "; echo "".i18n("Update Scheduler Configuration")." (".i18n("or get more judges!").")"; $ok=false; } else echo happy(i18n("You have a sufficient number of judges based on your parameters")); //now check if we can find a divisional award for each division and category $q=mysql_query("SELECT * FROM projectdivisions WHERE year='".$config['FAIRYEAR']."' ORDER BY id"); while($r=mysql_fetch_object($q)) $div[$r->id]=$r->division; $q=mysql_query("SELECT * FROM projectcategories WHERE year='".$config['FAIRYEAR']."' ORDER BY id"); while($r=mysql_fetch_object($q)) $cat[$r->id]=$r->category; $foundawards=""; $notfoundawards=""; $foundteams=""; foreach($div AS $d_id=>$d_division) { foreach($cat AS $c_id=>$c_category) { $q=mysql_query("SELECT award_awards.id FROM award_awards, award_awards_projectcategories, award_awards_projectdivisions WHERE award_awards.year='{$config['FAIRYEAR']}' AND award_awards_projectcategories.year='{$config['FAIRYEAR']}' AND award_awards_projectdivisions.year='{$config['FAIRYEAR']}' AND award_awards.id=award_awards_projectcategories.award_awards_id AND award_awards.id=award_awards_projectdivisions.award_awards_id AND award_awards_projectcategories.projectcategories_id='$c_id' AND award_awards_projectdivisions.projectdivisions_id='$d_id' AND award_awards.award_types_id='1' "); echo mysql_error(); if(mysql_num_rows($q)!=1) { while($r=mysql_fetch_object($q)) print_r($r); $notfoundawards.="$c_category - $d_division, "; $ok=false; } else { $r=mysql_fetch_object($q); $foundawards.="$c_category - $d_division, "; //if we found an award thats good, but it would be bad if there's already a judges team //that is assigned to the award, so now lets check the judges teams to see if ones assigned //to this award. $q=mysql_query("SELECT judges_teams.num,judges_teams.name FROM judges_teams, judges_teams_awards_link WHERE judges_teams_awards_link.award_awards_id='$r->id' AND judges_teams.year='".$config['FAIRYEAR']."' AND judges_teams_awards_link.judges_teams_id=judges_teams.id"); if(mysql_num_rows($q)) { $r=mysql_fetch_object($q); $ok=false; $foundteams.=i18n("(%1) %2, ",array($r->num,$r->name)); } } } } $notfoundawards=substr($notfoundawards,0,-2); $foundawards=substr($foundawards,0,-2); $foundteams=substr($foundteams,0,-2); if($notfoundawards) { echo error(i18n("Cannot find awards for: %1. These awards must be created first",array($notfoundawards))); echo "  "; echo "".i18n("Awards Manager").""; } if($foundawards) echo happy(i18n("Found awards for: %1",array($foundawards))); if($foundteams) { echo error(i18n("Found judging teams that are currently assigned to divisional awards: %1. These teams must be removed first",array($foundteams))); echo "  ".i18n("Judging Teams Manager").""; } else echo happy(i18n("No judging teams are assigned to divisional awards (good!)")); //now check if we have enough timeslots available... $q=mysql_query("SELECT COUNT(id) AS num FROM judges_timeslots WHERE year='".$config['FAIRYEAR']."' AND allowdivisional='yes'"); $r=mysql_fetch_object($q); $numslots=$r->num; if($numslots<$schedulerconfig['max_projects_per_team']) { echo error(i18n("You do not have enough judging timeslots available for divisional judging. Please create more timeslots first. Available: %1, Required: %2",array($numslots,$schedulerconfig['max_projects_per_team']))); echo "  ".i18n("Timeslot Manager").""; $ok=false; } else { echo happy(i18n("You have sufficient timeslots available. Available: %1, Required: %2",array($numslots,$schedulerconfig['max_projects_per_team']))); } //asdf return $ok; } ?>