2012-06-25 13:04:51 +00:00
< ? php
2012-07-02 16:56:13 +00:00
class AdmObjective extends AchObjective implements ADM {
use AdmDispatcher ;
2012-06-25 13:04:51 +00:00
function AdmObjective ( $data , $parent ) {
2012-07-02 16:56:13 +00:00
$this -> init ();
2012-06-25 13:04:51 +00:00
parent :: __construct ( $data , $parent );
global $DBc ;
$res = $DBc -> sqlQuery ( " SELECT atom_id FROM ach_atom WHERE atom_objective=' " . $this -> getID () . " ' " );
$sz = sizeof ( $res );
for ( $i = 0 ; $i < $sz ; $i ++ ) {
$this -> nodes [] = $this -> makeChild ( $res [ $i ]);
}
}
2012-07-02 16:56:13 +00:00
protected function makeChild ( $d ) {
2012-06-25 13:04:51 +00:00
return new AdmAtom ( $d , $this );
}
function delete_me () {
global $DBc ;
$DBc -> sqlQuery ( " DELETE FROM ach_objective WHERE ao_id=' " . $this -> getID () . " ' " );
$DBc -> sqlQuery ( " DELETE FROM ach_player_objective WHERE apo_objective=' " . $this -> getID () . " ' " );
2012-07-02 16:56:13 +00:00
$iter = $this -> getIterator ();
while ( $iter -> hasNext ()) {
$curr = $iter -> getNext ();
$curr -> delete_me ();
$this -> removeChild ( $curr -> getID ());
2012-06-25 13:04:51 +00:00
}
}
function update () {
2012-07-02 16:56:13 +00:00
global $DBc ;
2012-06-25 13:04:51 +00:00
2012-07-02 16:56:13 +00:00
$DBc -> sqlQuery ( " UPDATE ach_objective SET ao_condition=' " . mysql_real_escape_string ( $this -> getCondition ()) . " ',ao_value= " . mre ( $this -> getValue ()) . " ,ao_display=' " . mysql_real_escape_string ( $this -> getDisplay ()) . " ',ao_metalink= " . mkn ( $this -> getMetalink ()) . " WHERE ao_id=' " . $this -> getID () . " ' " );
$DBc -> sqlQuery ( " INSERT INTO ach_objective_lang (aol_objective,aol_lang,aol_name) VALUES (' " . $this -> getID () . " ','en',' " . mysql_real_escape_string ( $this -> getName ()) . " ') ON DUPLICATE KEY UPDATE aol_name=' " . mysql_real_escape_string ( $this -> getName ()) . " ' " );
2012-06-25 13:04:51 +00:00
}
function insert () {
2012-07-02 16:56:13 +00:00
global $DBc ;
2012-06-25 13:04:51 +00:00
2012-07-02 16:56:13 +00:00
$DBc -> sqlQuery ( " INSERT INTO ach_objective (ao_perk,ao_condition,ao_value,ao_display,ao_metalink) VALUES (' " . $this -> getPerk () . " ',' " . mysql_real_escape_string ( $this -> getCondition ()) . " ', " . mre ( $this -> getValue ()) . " ,' " . mysql_real_escape_string ( $this -> getDisplay ()) . " ', " . mkn ( $this -> getMetalink ()) . " ) " );
$id = mysql_insert_id ();
$this -> setID ( $id );
2012-06-25 13:04:51 +00:00
2012-07-02 16:56:13 +00:00
$DBc -> sqlQuery ( " INSERT INTO ach_objective_lang (aol_objective,aol_lang,aopl_name) VALUES (' " . $this -> getID () . " ','en',' " . mysql_real_escape_string ( $this -> getName ()) . " ') " );
}
2012-06-25 13:04:51 +00:00
2012-07-02 16:56:13 +00:00
function setCondition ( $c ) {
$this -> condition = $c ;
2012-06-25 13:04:51 +00:00
}
}
?>