forked from science-ation/science-ation
149 lines
5.4 KiB
PHP
149 lines
5.4 KiB
PHP
<?
|
|
//THIS FILE IS NEEDED to fix a bug in the rollover script that some people might have already used
|
|
//the prizes werent properly rolled over, so if it detects that there are no prizes this year but there were
|
|
//prizes last year, it re-rolls the prizes over properly.
|
|
//it only does this if the number of awards matchces exactly (aka hasnt been modified yet since the rollover)
|
|
//it is safe to include this script at any point, since it does all the checks required.
|
|
//this file will eventually be deleted
|
|
|
|
//we know the years needed, so hardcode them in
|
|
$currentfairyear=2007;
|
|
$newfairyear=2008;
|
|
|
|
//first make sure they have indeed done the rollover...
|
|
if($config['FAIRYEAR']==2008)
|
|
{
|
|
|
|
//make sure the number of awards are identical (aka they havent added any new ones)
|
|
$nq1=$pdo->prepare("SELECT * FROM award_awards WHERE year='$newfairyear'");
|
|
$nq1->execute();
|
|
$nq2=$pdo->prepare("SELECT * FROM award_awards WHERE year='$currentfairyear'");
|
|
$nq2->execute();
|
|
if($nq1->rowCount()==$nq2->rowcount())
|
|
{
|
|
$npq1=$pdo->prepare("SELECT * FROM award_prizes WHERE year='$newfairyear'");
|
|
$npq1->execute();
|
|
$npq2=$pdo->prepare("SELECT * FROM award_prizes WHERE year='$currentfairyear'");
|
|
$npq2->execute();
|
|
|
|
if($npq2->rowCount()>0 && $npq1->rowCount()==0)
|
|
{
|
|
|
|
|
|
echo "<br />";
|
|
echo notice(i18n("A BUG WAS IDENTIFIED IN YOUR PREVIOUS YEAR ROLLOVER WHICH CAUSED AWARD PRIZES TO NOT BE ROLLED OVER PROPERLY. THEY ARE NOW BEING RE-ROLLED OVER WITH THE PROPER PRIZE INFORMATION. THIS WILL ONLY HAPPEN ONCE."))."<br />";
|
|
$stmt = $pdo->prepare("DELETE FROM award_awards WHERE year='$newfairyear'");
|
|
$stmt->execute();
|
|
$stmt = $pdo->prepare("DELETE FROM award_prizes WHERE year='$newfairyear'");
|
|
$stmt->execute();
|
|
$stmt = $pdo->prepare("DELETE FROM award_contacts WHERE year='$newfairyear'");
|
|
$stmt->execute();
|
|
$stmt = $pdo->prepare("DELETE FROM award_types WHERE year='$newfairyear'");
|
|
$stmt->execute();
|
|
$stmt = $pdo->prepare("DELETE FROM award_awards_projectcategories WHERE year='$newfairyear'");
|
|
$stmt->execute();
|
|
$stmt = $pdo->prepare("DELETE FROM award_awards_projectdivisions WHERE year='$newfairyear'");
|
|
$stmt->execute();
|
|
|
|
echo i18n("Rolling awards")."<br />";
|
|
//awards
|
|
$q=$pdo->prepare("SELECT * FROM award_awards WHERE year='$currentfairyear'");
|
|
$q->execute();
|
|
echo $pdo->errorInfo();
|
|
while($r=$q->fetch(PDO::FETCH_OBJ))
|
|
{
|
|
$stmt = $pdo->prepare("INSERT INTO award_awards (award_sponsors_id,award_types_id,name,criteria,presenter,`order`,year,excludefromac,cwsfaward) VALUES (
|
|
'".$r->award_sponsors_id."',
|
|
'".$r->award_types_i."',
|
|
'".$r->name."',
|
|
'".$r->criteria."',
|
|
'".$r->presenter."',
|
|
'".$r->order."',
|
|
'".$newfairyear."',
|
|
'".$r->excludefromac."',
|
|
'".$r->cwsfaward."')");
|
|
$award_awards_id=$pdo->lastInsertId();
|
|
|
|
$q2=$pdo->prepare("SELECT * FROM award_awards_projectcategories WHERE year='$currentfairyear' AND award_awards_id='$r->id'");
|
|
$q2->execute();
|
|
echo $pdo->errorInfo();
|
|
while($r2=$q2->fetch(PDO::FETCH_OBJ))
|
|
{
|
|
$stmt = $pdo->prepare("INSERT INTO award_awards_projectcategories (award_awards_id,projectcategories_id,year) VALUES (
|
|
'".$award_awards_id."',
|
|
'".$r2->projectcategories_id."',
|
|
'".$newfairyear."')");
|
|
$stmt->execute();
|
|
|
|
}
|
|
|
|
$q2=$pdo->prepare("SELECT * FROM award_awards_projectdivisions WHERE year='$currentfairyear' AND award_awards_id='$r->id'");
|
|
$q2->execute();
|
|
echo $pdo->errorInfo();
|
|
while($r2=$q2->fetch(PDO::FETCH_OBJ))
|
|
{
|
|
$stmt = $pdo->prepare("INSERT INTO award_awards_projectdivisions (award_awards_id,projectdivisions_id,year) VALUES (
|
|
'".$award_awards_id."',
|
|
'".$r2->projectdivisions_id."',
|
|
'".$newfairyear."')");
|
|
$stmt->execute();
|
|
|
|
}
|
|
|
|
echo i18n(" Rolling award prizes")."<br />";
|
|
$q2=$pdo->prepare("SELECT * FROM award_prizes WHERE year='$currentfairyear' AND award_awards_id='$r->id'");
|
|
$q2->execute();
|
|
echo $pdo->errorInfo();
|
|
while($r2=$q2->fetch(PDO::FETCH_OBJ))
|
|
{
|
|
$stmt = $pdo->prepare("INSERT INTO award_prizes (award_awards_id,cash,scholarship,`value`,prize,number,`order`,year,excludefromac) VALUES (
|
|
'".$award_awards_id."',
|
|
'".$r2->cash."',
|
|
'".$r2->scholarship."',
|
|
'".$r2->value."',
|
|
'".$r2->prize."',
|
|
'".$r2->number."',
|
|
'".$r2->order."',
|
|
'".$newfairyear."',
|
|
'".$r2->excludefromac."')");
|
|
}
|
|
}
|
|
|
|
echo i18n("Rolling award contacts")."<br />";
|
|
//award contacts
|
|
$q=$pdo->prepare("SELECT * FROM award_contacts WHERE year='$currentfairyear'");
|
|
$q->execute();
|
|
echo $pdo->errorInfo();
|
|
while($r=$q->fetch(PDO::FETCH_OBJ))
|
|
$stmt = $pdo->prepare("INSERT INTO award_contacts (award_sponsors_id,salutation,firstname,lastname,position,email,phonehome,phonework,phonecell,fax,notes,year) VALUES (
|
|
'".$r->award_sponsors_id."',
|
|
'".$r->salutation."',
|
|
'".$r->firstname."',
|
|
'".$r->lastname."',
|
|
'".$r->position."',
|
|
'".$r->email."',
|
|
'".$r->phonehome."',
|
|
'".$r->phonework."',
|
|
'".$r->phonecell."',
|
|
'".$r->fax."',
|
|
'".$r->notes."',
|
|
'".$newfairyear."')");
|
|
|
|
echo i18n("Rolling award types")."<br />";
|
|
//award types
|
|
$q=$pdo->prepare("SELECT * FROM award_types WHERE year='$currentfairyear'");
|
|
$q->execute();
|
|
echo $pdo->errorInfo();
|
|
while($r=$q->fetch(PDO::FETCH_OBJ))
|
|
$stmt = $pdo->prepare("INSERT INTO award_types (id,type,`order`,year) VALUES (
|
|
'".$r->id."',
|
|
'".$r->type."',
|
|
'".$r->order."',
|
|
'".$newfairyear."')");
|
|
$stmt->execute();
|
|
|
|
}
|
|
}
|
|
}
|
|
?>
|