From f9e03406f13e41dabfe134d2be7af0c29bddb40a Mon Sep 17 00:00:00 2001 From: SirCotare Date: Mon, 20 Aug 2012 15:52:35 +0200 Subject: [PATCH] #1470 some cleanup; some bugfix; some documentation --- .../app_achievements/_API/ach_progress.php | 8 +- .../app/app_achievements/_API/ach_struct.php | 10 +- .../_API/class/mySQL_class.php | 4 +- .../_AchWebParser/AchWebMonitor.php | 35 - .../_AchWebParser/AchWebParser.php | 66 +- .../_AchWebParser/_AchWebParser.php | 207 --- .../_AchWebParser/class/Atom_class.php | 33 +- .../_AchWebParser/class/Callback_class.php | 5 +- .../class/DataSource_abstract.php | 47 - .../_AchWebParser/class/DataTable_class.php | 88 -- .../_AchWebParser/class/Logfile_class.php | 1 - .../class/ParallelCURL_class.php | 160 --- .../_AchWebParser/class/mySQL_class.php | 2 +- .../app_achievements/_AchWebParser/conf.php | 4 + .../_AchWebParser/include/functions_inc.php | 11 +- .../app_achievements/_AchWebParser/parser.php | 132 -- .../script/include_InPoly_class.php | 2 + .../PDRtoXMLdriver/PDRtoXMLdriver_class.php | 2 +- .../source/ValueCache/ValueCache_class.php | 19 - .../_AchWebParser/source/ValueCache/conf.php | 7 - .../source/XMLapi/XMLapi_class.php | 229 --- .../_AchWebParser/source/XMLapi/conf.php | 8 - .../app_achievements/_doc/Class_scheme.dia | Bin 4790 -> 6819 bytes .../app_achievements/_doc/Class_scheme.png | Bin 38928 -> 67725 bytes .../app/app_achievements/_doc/ER_scheme.dia | Bin 10696 -> 12693 bytes .../app/app_achievements/_doc/ER_scheme.png | Bin 192469 -> 240138 bytes .../_doc/Ryzom Player Achievements.pdf | Bin 0 -> 14921 bytes .../_doc/app_achievements.sql | 161 ++- .../app/app_achievements/_doc/devshot_005.jpg | Bin 33804 -> 0 bytes .../app_achievements/class/AVLTree_class.php | 2 +- .../class/AchAchievement_class.php | 29 +- .../class/AchCategory_class.php | 15 +- .../class/AchList_abstract.php | 4 +- .../class/AchObjective_class.php | 21 +- .../class/AchSummary_class.php | 31 +- .../{AchPerk_class.php => AchTask_class.php} | 25 +- .../app/app_achievements/class/DLL_class.php | 26 +- .../app_achievements/class/InDev_trait.php | 8 +- .../class/NodeIterator_class.php | 16 +- .../app_achievements/class/Node_abstract.php | 2 +- code/web/app/app_achievements/conf.php | 2 +- code/web/app/app_achievements/fb.php | 57 - .../app/app_achievements/fb/base_facebook.php | 1269 +++++++++++++++++ .../fb/fb_ca_chain_bundle.crt | 121 ++ .../include/ach_render_ig.php | 98 +- .../include/ach_render_web.php | 102 +- code/web/app/app_achievements/index.php | 32 +- .../_doc/ADM_scheme.dia | Bin 0 -> 6187 bytes .../_doc/ADM_scheme.png | Bin 0 -> 35003 bytes .../class/AdmAchievement_class.php | 68 +- .../class/AdmAtom_class.php | 29 +- .../class/AdmCategory_class.php | 13 +- .../class/AdmMenuNode_class.php | 4 +- .../class/AdmMenu_class.php | 34 +- .../class/AdmObjective_class.php | 36 +- .../class/AdmPerk_class.php | 181 --- .../class/AdmTask_class.php | 198 +++ .../class/CSRAchievement_class.php | 17 +- .../class/CSRCategory_class.php | 32 +- .../class/CSRDispatcher_trait.php | 8 +- .../class/CSRObjective_class.php | 7 +- .../{CSRPerk_class.php => CSRTask_class.php} | 17 +- .../class/Dispatcher_trait.php | 30 - .../class/mySQL_class.php | 3 +- code/web/app/app_achievements_admin/conf.php | 2 + .../include/ach_render_admin.php | 171 --- .../include/adm_render_ach.php | 344 +++-- .../include/adm_render_atom.php | 25 +- .../include/adm_render_csr.php | 52 +- .../include/adm_render_lang.php | 176 ++- .../include/adm_render_menu.php | 4 +- code/web/app/app_achievements_admin/index.php | 205 ++- 72 files changed, 2693 insertions(+), 2064 deletions(-) delete mode 100644 code/web/app/app_achievements/_AchWebParser/AchWebMonitor.php delete mode 100644 code/web/app/app_achievements/_AchWebParser/_AchWebParser.php delete mode 100644 code/web/app/app_achievements/_AchWebParser/class/DataSource_abstract.php delete mode 100644 code/web/app/app_achievements/_AchWebParser/class/DataTable_class.php delete mode 100644 code/web/app/app_achievements/_AchWebParser/class/ParallelCURL_class.php delete mode 100644 code/web/app/app_achievements/_AchWebParser/parser.php delete mode 100644 code/web/app/app_achievements/_AchWebParser/source/ValueCache/ValueCache_class.php delete mode 100644 code/web/app/app_achievements/_AchWebParser/source/ValueCache/conf.php delete mode 100644 code/web/app/app_achievements/_AchWebParser/source/XMLapi/XMLapi_class.php delete mode 100644 code/web/app/app_achievements/_AchWebParser/source/XMLapi/conf.php create mode 100644 code/web/app/app_achievements/_doc/Ryzom Player Achievements.pdf delete mode 100644 code/web/app/app_achievements/_doc/devshot_005.jpg rename code/web/app/app_achievements/class/{AchPerk_class.php => AchTask_class.php} (74%) delete mode 100644 code/web/app/app_achievements/fb.php create mode 100644 code/web/app/app_achievements/fb/base_facebook.php create mode 100644 code/web/app/app_achievements/fb/fb_ca_chain_bundle.crt create mode 100644 code/web/app/app_achievements_admin/_doc/ADM_scheme.dia create mode 100644 code/web/app/app_achievements_admin/_doc/ADM_scheme.png delete mode 100644 code/web/app/app_achievements_admin/class/AdmPerk_class.php create mode 100644 code/web/app/app_achievements_admin/class/AdmTask_class.php rename code/web/app/app_achievements_admin/class/{CSRPerk_class.php => CSRTask_class.php} (75%) delete mode 100644 code/web/app/app_achievements_admin/class/Dispatcher_trait.php delete mode 100644 code/web/app/app_achievements_admin/include/ach_render_admin.php diff --git a/code/web/app/app_achievements/_API/ach_progress.php b/code/web/app/app_achievements/_API/ach_progress.php index 9665a6bb3..eaffd703d 100644 --- a/code/web/app/app_achievements/_API/ach_progress.php +++ b/code/web/app/app_achievements/_API/ach_progress.php @@ -14,12 +14,12 @@ echo ''; echo ""; - echo ""; - $res = $DBc->sendSQL("SELECT * FROM ach_player_perk WHERE app_player='".$DBc->mre($_REQUEST['cid'])."'","ARRAY"); + echo ""; + $res = $DBc->sendSQL("SELECT * FROM ach_player_task WHERE apt_player='".$DBc->mre($_REQUEST['cid'])."'","ARRAY"); foreach($res as $elem) { - echo ""; + echo ""; } - echo ""; + echo ""; echo ""; echo ""; diff --git a/code/web/app/app_achievements/_API/ach_struct.php b/code/web/app/app_achievements/_API/ach_struct.php index 604dc03e5..b640dd1d2 100644 --- a/code/web/app/app_achievements/_API/ach_struct.php +++ b/code/web/app/app_achievements/_API/ach_struct.php @@ -11,15 +11,15 @@ require_once($_CONF['app_achievements_path']."class/AchList_abstract.php"); require_once($_CONF['app_achievements_path']."class/Tieable_inter.php"); require_once($_CONF['app_achievements_path']."class/NodeIterator_class.php"); - require_once($_CONF['app_achievements_path']."class/Node_trait.php"); - require_once($_CONF['app_achievements_path']."class/InDev_trait.php"); + #require_once($_CONF['app_achievements_path']."class/Node_trait.php"); + #require_once($_CONF['app_achievements_path']."class/InDev_trait.php"); require_once($_CONF['app_achievements_path']."class/AchMenu_class.php"); require_once($_CONF['app_achievements_path']."class/AchMenuNode_class.php"); require_once($_CONF['app_achievements_path']."class/AchSummary_class.php"); require_once($_CONF['app_achievements_path']."class/AchCategory_class.php"); require_once($_CONF['app_achievements_path']."class/AchAchievement_class.php"); - require_once($_CONF['app_achievements_path']."class/AchPerk_class.php"); + require_once($_CONF['app_achievements_path']."class/AchTask_class.php"); require_once($_CONF['app_achievements_path']."class/AchObjective_class.php"); class RUser { @@ -72,13 +72,13 @@ $iter4 = $curr3->getIterator(); while($iter4->hasNext()) { $curr4 = $iter4->getNext(); - echo "getDisplayName()."]]>"; + echo "getDisplayName()."]]>"; $iter5 = $curr4->getIterator(); while($iter5->hasNext()) { $curr5 = $iter5->getNext(); echo "getMetaImage()."'>getDisplayName()."]]>"; } - echo ""; + echo ""; } echo ""; } diff --git a/code/web/app/app_achievements/_API/class/mySQL_class.php b/code/web/app/app_achievements/_API/class/mySQL_class.php index 67ce66226..002abb709 100644 --- a/code/web/app/app_achievements/_API/class/mySQL_class.php +++ b/code/web/app/app_achievements/_API/class/mySQL_class.php @@ -42,6 +42,8 @@ return false; } mysql_select_db($db,$this->DBc) or $this->error(mysql_error()); + + return true; } function resetStats() { @@ -99,7 +101,7 @@ else { return $res; } - mysql_free_result($res); + //mysql_free_result($res); } else { return false; diff --git a/code/web/app/app_achievements/_AchWebParser/AchWebMonitor.php b/code/web/app/app_achievements/_AchWebParser/AchWebMonitor.php deleted file mode 100644 index 7a5895418..000000000 --- a/code/web/app/app_achievements/_AchWebParser/AchWebMonitor.php +++ /dev/null @@ -1,35 +0,0 @@ -connect($CONF['mysql_server'],$CONF['mysql_user'],$CONF['mysql_pass'],$CONF['mysql_database']); - - //check status - $res = $DBc->sendSQL("SELECT * FROM ach_monitor_status ORDER by ams_start DESC LIMIT 0,1","ARRAY"); - - if(($res[0]['ams_start'] < (time()-$CONF['timeout']) && $res[0]['ams_end'] == 0) || ($res[0]['ams_end'] > 0 && $res[0]['ams_end'] < (time()-$CONF['timeout']))) { - $fp = fsockopen($CONF['self_host'], 80, $errno, $errstr, 30); - if(!$fp) { - logf("ERROR: self call; socket: ".$errstr." (."$errno.")"); - } - else { - $out = "GET ".$CONF['self_path']." HTTP/1.1\r\n"; - $out .= "Host: ".$CONF['self_host']."\r\n"; - $out .= "Connection: Close\r\n\r\n"; - - fwrite($fp, $out); - fclose($fp); - } - } - - exit(0); -?> \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/AchWebParser.php b/code/web/app/app_achievements/_AchWebParser/AchWebParser.php index 3394635f3..e7f588b99 100644 --- a/code/web/app/app_achievements/_AchWebParser/AchWebParser.php +++ b/code/web/app/app_achievements/_AchWebParser/AchWebParser.php @@ -75,10 +75,10 @@ $atom_list = array(); - $res = $DBc->sendSQL("SELECT ap_id FROM ach_perk WHERE NOT EXISTS (SELECT * FROM ach_player_perk WHERE app_player='".$cid."' AND app_perk=ap_id)","ARRAY"); - foreach($res as $perk) { + $res = $DBc->sendSQL("SELECT at_id FROM ach_task WHERE NOT EXISTS (SELECT * FROM ach_player_task WHERE apt_player='".$cid."' AND apt_task=at_id)","ARRAY"); + foreach($res as $task) { //get unfinished atoms belonging to unfinished objectives - $res2 = $DBc->sendSQL("SELECT ach_atom.* FROM ach_atom,ach_objective,ach_achievement WHERE ao_perk='".$perk['ap_id']."' AND ao_id=atom_objective AND ap_achievement=aa_id AND NOT EXISTS (SELECT * FROM ach_player_objective WHERE apo_player='".$cid."' AND apo_objective=ao_id) AND (aa_tie_race IS NULL OR aa_tie_race='') AND (aa_tie_cult IS NULL OR aa_tie_cult='') AND (aa_tie_civ IS NULL OR aa_tie_civ='')","ARRAY"); + $res2 = $DBc->sendSQL("SELECT ach_atom.* FROM ach_atom,ach_objective,ach_achievement WHERE ao_task='".$task['at_id']."' AND ao_id=atom_objective AND ap_achievement=aa_id AND NOT EXISTS (SELECT * FROM ach_player_objective WHERE apo_player='".$cid."' AND apo_objective=ao_id)","ARRAY"); foreach($res2 as $atom) { $a = new Atom($atom,$cid); $atom_list[] = $a; @@ -96,8 +96,9 @@ $log->logf("done!"); - #STEP 3: detect obj/perk progression + #STEP 3: detect obj/task progression $log->logi("Detecting Objectives... ",false); + //obj $res = $DBc->sendSQL("SELECT ao_id FROM ach_objective WHERE ao_condition='all' AND NOT EXISTS (SELECT * FROM ach_player_objective WHERE apo_objective=ao_id AND apo_player='".$cid."') AND NOT EXISTS (SELECT * FROM ach_atom WHERE atom_objective=ao_id AND NOT EXISTS (SELECT * FROM ach_player_atom WHERE apa_atom=atom_id AND apa_state='GRANT' AND apa_player='".$cid."')) AND EXISTS (SELECT * FROM ach_atom WHERE atom_objective=ao_id)","ARRAY"); $sz = sizeof($res); @@ -117,6 +118,13 @@ $DBc->sendSQL("INSERT INTO ach_player_objective (apo_objective,apo_player,apo_date) VALUES ('".$res[$i]['ao_id']."','".$cid."','".time()."')","NONE"); } + //meta + $res = $DBc->sendSQL("SELECT ao_id FROM ach_objective,ach_task as t1,ach_achievement WHERE ao_display='meta' ao_task=t1.at_id AND t1.at_achievement=aa_id AND NOT EXISTS (SELECT * FROM ach_task as t2 WHERE t2.at_achievement=aa_metalink AND NOT EXISTS (SELECT * FROM ach_player_task WHERE apt_task=t2.at_id AND apt_player='".$cid."'))"); + $sz = sizeof($res); + for($i=0;$i<$sz;$i++) { + $DBc->sendSQL("INSERT INTO ach_player_objective (apo_objective,apo_player,apo_date) VALUES ('".$res[$i]['ao_id']."','".$cid."','".time()."')","NONE"); + } + $log->logf("done!"); $log->logi("Clearing atom data... ",false); @@ -125,24 +133,58 @@ $log->logf("done!"); - //perk - $log->logi("Detecting Perks... ",false); - $res = $DBc->sendSQL("SELECT ap_id FROM ach_perk WHERE ap_condition='all' AND NOT EXISTS (SELECT * FROM ach_player_perk WHERE app_perk=ap_id AND app_player='".$cid."') AND NOT EXISTS (SELECT * FROM ach_objective WHERE ao_perk=ap_id AND NOT EXISTS (SELECT * FROM ach_player_objective WHERE apo_objective=ao_id AND apo_player='".$cid."')) AND EXISTS (SELECT * FROM ach_objective WHERE ao_perk=ap_id) AND ap_dev='0'","ARRAY"); + //task + $log->logi("Detecting Tasks... ",false); + $res = $DBc->sendSQL("SELECT at_id FROM ach_task WHERE at_condition='all' AND NOT EXISTS (SELECT * FROM ach_player_task WHERE apt_task=at_id AND aptp_player='".$cid."') AND NOT EXISTS (SELECT * FROM ach_objective WHERE ao_task=ap_id AND NOT EXISTS (SELECT * FROM ach_player_objective WHERE apo_objective=ao_id AND apo_player='".$cid."')) AND EXISTS (SELECT * FROM ach_objective WHERE ao_task=ap_id) AND at_dev='0'","ARRAY"); $sz = sizeof($res); for($i=0;$i<$sz;$i++) { - $DBc->sendSQL("INSERT INTO ach_player_perk (app_perk,app_player,app_date) VALUES ('".$res[$i]['ap_id']."','".$cid."','".time()."')","NONE"); + $DBc->sendSQL("INSERT INTO ach_player_task (apt_task,apt_player,apt_date) VALUES ('".$res[$i]['ap_id']."','".$cid."','".time()."')","NONE"); } - $res = $DBc->sendSQL("SELECT ap_id FROM ach_perk WHERE ap_condition='value' AND NOT EXISTS (SELECT * FROM ach_player_perk WHERE app_perk=ap_id AND app_player='".$cid."') AND ap_value<=(SELECT count(*) FROM ach_objective WHERE ao_perk=ap_id AND EXISTS (SELECT * FROM ach_player_objective WHERE apo_objective=ao_id AND apo_player='".$cid."')) AND EXISTS (SELECT * FROM ach_objective WHERE ao_perk=ap_id) AND ap_dev='0'","ARRAY"); + $res = $DBc->sendSQL("SELECT ap_id FROM ach_task WHERE at_condition='value' AND NOT EXISTS (SELECT * FROM ach_player_task WHERE apt_task=at_id AND apt_player='".$cid."') AND at_value<=(SELECT count(*) FROM ach_objective WHERE ao_task=at_id AND EXISTS (SELECT * FROM ach_player_objective WHERE apo_objective=ao_id AND apo_player='".$cid."')) AND EXISTS (SELECT * FROM ach_objective WHERE ao_task=at_id) AND at_dev='0'","ARRAY"); $sz = sizeof($res); for($i=0;$i<$sz;$i++) { - $DBc->sendSQL("INSERT INTO ach_player_perk (app_perk,app_player,app_date) VALUES ('".$res[$i]['ap_id']."','".$cid."','".time()."')","NONE"); + $DBc->sendSQL("INSERT INTO ach_player_task (apt_task,apt_player,apt_date) VALUES ('".$res[$i]['ap_id']."','".$cid."','".time()."')","NONE"); } - $res = $DBc->sendSQL("SELECT ap_id FROM ach_perk WHERE ap_condition='any' AND NOT EXISTS (SELECT * FROM ach_player_perk WHERE app_perk=ap_id AND app_player='".$cid."') AND EXISTS (SELECT * FROM ach_objective WHERE ao_perk=ap_id AND EXISTS (SELECT * FROM ach_player_objective WHERE apo_objective=ao_id AND apo_player='".$cid."')) AND EXISTS (SELECT * FROM ach_objective WHERE ao_perk=ap_id) AND ap_dev='0'","ARRAY"); + $res = $DBc->sendSQL("SELECT at_id FROM ach_task WHERE ap_condition='any' AND NOT EXISTS (SELECT * FROM ach_player_task WHERE apt_task=at_id AND apt_player='".$cid."') AND EXISTS (SELECT * FROM ach_objective WHERE ao_task=at_id AND EXISTS (SELECT * FROM ach_player_objective WHERE apo_objective=ao_id AND apo_player='".$cid."')) AND EXISTS (SELECT * FROM ach_objective WHERE ao_task=at_id) AND at_dev='0'","ARRAY"); $sz = sizeof($res); for($i=0;$i<$sz;$i++) { - $DBc->sendSQL("INSERT INTO ach_player_perk (app_perk,app_player,app_date) VALUES ('".$res[$i]['ap_id']."','".$cid."','".time()."')","NONE"); + $DBc->sendSQL("INSERT INTO ach_player_task (apt_task,apt_player,apt_date) VALUES ('".$res[$i]['ap_id']."','".$cid."','".time()."')","NONE"); + } + + if($CONF['facebook'] == true) { + require_once("../fb/facebook.php"); + + $facebook = new Facebook(array(appId=>$CONF['fb_id'], secret=>$CONF['fb_secret'])); + + + $res = $DBc->sendSQL("SELECT * FROM ach_fb_token WHERE aft_player='".$cid."'","ARRAY"); + + $access_token = $res[0]['aft_token']; + + if($res[0]['aft_allow'] == 1) { + + $res2 = $DBc->sendSQL("SELECT * FROM ach_player_task WHERE apt_player='".$cid."' AND apt_fb='0'","ARRAY"); + $sz = sizeof($res2); + + for($i=0;$i<$sz;$i++) { + + //this has to be adapted! + + /*$result = $facebook->api( + '/me/feed/', + array('access_token' => $$access_token, 'message' => 'Playing around with FB Graph..') + );*/ + + } + + $DBc->sendSQL("UPDATE ach_player_task SET apt_fb='1' WHERE apt_player='".$cid."'","NONE"); + + + + + } } $log->logf("done!"); diff --git a/code/web/app/app_achievements/_AchWebParser/_AchWebParser.php b/code/web/app/app_achievements/_AchWebParser/_AchWebParser.php deleted file mode 100644 index 425b62540..000000000 --- a/code/web/app/app_achievements/_AchWebParser/_AchWebParser.php +++ /dev/null @@ -1,207 +0,0 @@ - 0 || $_REQUEST["invoke"] == "TRUE") { - if($_REQUEST["cid"] > 0 && $_REQUEST["invoke"] == "TRUE") { - $MODE = "SINGLE"; - $CID = $DBc->mre($_REQUEST["cid"]); - } - else { - $e = "Failed to start SINGLE mode; cid=".$_REQUEST["cid"]; - logf($e); - die($e); - } - } - - //create database connection - $DBc = new mySQL($CONF['mysql_error']); - $DBc->connect($CONF['mysql_server'],$CONF['mysql_user'],$CONF['mysql_pass'],$CONF['mysql_database']); - - if($MODE == "CRON") { - $RID = $DBc->sendSQL("INSERT INTO ach_monitor_state (ams_start,ams_end) VALUES ('".time()."','0')","INSERT"); // insert run into monitoring table - } - - require_once("class/DataSourceHandler_class.php"); - require_once("class/DataSource_abstract.php"); - - require_once("class/Atom_class.php"); - - //create datasource handler - $_DATA = new DataSourceHandler(); - foreach($CONF['data_source'] as $elem) { //populate - require_once("source/".$elem."/".$elem."_class.php"); - eval('$tmp = new '.$elem.'();'); - $_DATA->registerDataSource($tmp); - } - - //synch chars from ring_open character table - if($CONF['synch_chars'] == true) { - $DBc_char = new mySQL($CONF['mysql_error']); - $DBc_char->connect($CONF['char_mysql_server'],$CONF['char_mysql_user'],$CONF['char_mysql_pass'],$CONF['char_mysql_database']); - - $DBc->sendSQL("UPDATE ach_monitor_character SET amc_confirmed='0'","NONE"); - - $res = $DBc_char->sendSQL("SELECT char_id,last_played_date FROM characters","ARRAY"); - $sz = sizeof($res); - for($i=0;$i<$sz;$i++) { - $DBc->sendSQL("INSERT INTO ach_monitor_character (amc_character,amc_last_import,amc_last_login,amc_confirmed) VALUES ('".$res[$i]['char_id']."','0','".dateTime_to_timestamp($res[$i]['last_played_date'])."','1') ON DUPLICATE KEY UPDATE amc_confirmed='1', amc_last_login='".dateTime_to_timestamp($res[$i]['last_played_date'])."'","NONE"); - } - - $DBc->sendSQL("DELETE FROM ach_monitor_character WHERE amc_confirmed='0'","NONE"); //remove deleted characters - //remove data for deleted chars - $DBc->sendSQL("DELETE FROM ach_player_atom WHERE NOT EXISTS (SELECT * FROM ach_monitor_character WHERE amc_character='apa_player')","NONE"); - $DBc->sendSQL("DELETE FROM ach_player_objective WHERE NOT EXISTS (SELECT * FROM ach_monitor_character WHERE amc_character='apo_player')","NONE"); - $DBc->sendSQL("DELETE FROM ach_player_perk WHERE NOT EXISTS (SELECT * FROM ach_monitor_character WHERE amc_character='app_player')","NONE"); - $DBc->sendSQL("DELETE FROM ach_player_valuecache WHERE NOT EXISTS (SELECT * FROM ach_monitor_character WHERE amc_character='apv_player')","NONE"); - } - - // fetch candidates - if($MODE == "SINGLE") { - $chars = array(); - $chars[] = array('amc_character',$CID); - } - else { - #$chars = array(); - - $DBc->sendSQL("UPDATE ach_monitor_character SET amc_working='0' WHERE amc_last_import<'".(time()-60*60)."'"); // unlock if something went wrong - - $DBc->sendSQL("UPDATE ach_monitor_character SET amc_working='".$RID."' WHERE amc_last_login>amc_last_import AND amc_working='0'","NONE"); - - $chars = $DBc->sendSQL("SELECT amc_character FROM ach_monitor_character WHERE amc_working='".$RID."'","ARRAY"); - } - - - //fork if enabled in conf - if($CONF['fork'] == true && $MODE == "CRON") { - require_once("class/ParallelCURL_class.php"); - - $max_requests = 0; - $curl_options = array( - CURLOPT_SSL_VERIFYPEER => FALSE, - CURLOPT_SSL_VERIFYHOST => FALSE, - CURLOPT_USERAGENT, 'Ryzom - Achievement Tracker', - ); - - $_CURL = new ParallelCurl($max_requests, $curl_options); - - foreach($chars as $elem) { - $_CURL->startRequest("http://".$CONF['self_host']."/".$CONF['self_path']."?invoke=TRUE&cid=".$elem['amc_character'], 'received_char',null); - } - } - else { - $atom_list = array(); - - foreach($chars as $elem) { - $_DATA->freeData($elem['amc_character']); - - #STEP 1: evaluate atoms - - //get unfinished perks which have no parent or complete parent - #$res = $DBc->sendSQL("SELECT ap_id FROM ach_perk WHERE (ap_parent IS NULL OR EXISTS (SELECT * FROM ach_player_perk WHERE app_player='".$elem['amc_character']."' AND app_perk=ap_parent)) AND (NOT EXISTS (SELECT * FROM ach_player_perk WHERE app_player='".$elem['amc_character']."' AND app_perk=ap_id))","ARRAY"); - - //get all unfinished perks since perks my not directly inherit objectives... - $res = $DBc->sendSQL("SELECT ap_id FROM ach_perk WHERE NOT EXISTS (SELECT * FROM ach_player_perk WHERE app_player='".$elem['amc_character']."' AND app_perk=ap_id)","ARRAY"); - foreach($res as $perk) { - //get unfinished atoms belonging to unfinished objectives - $res = $DBc->sendSQL("SELECT ach_atom.* FROM ach_atom,ach_objective WHERE ao_perk='".$perk['ap_id']."' AND ao_id=atom_objective AND NOT EXISTS (SELECT * FROM ach_player_objective WHERE apo_player='".$elem['amc_character']."' AND apo_objective=ao_id)","ARRAY"); - foreach($res2 as $atom) { - if(!isset($atom_list[$atom['atom_id']])) { // only load if not already cached - $atom_list[$atom['atom_id']] = new Atom($atom); - } - - $atom_list[$atom['atom_id']]->evalRuleset($elem['amc_character']); - } - } - - $_DATA->freeData($elem['amc_character']); - - $DBc->sendSQL("UPDATE ach_monitor_character SET amc_last_import='".time()."', amc_working='0' WHERE amc_character='".$elem['amc_character']."' AND amc_working='".$RID."'","NONE"); - - #STEP 2: detect obj/perk progression - //obj - $res = $DBc->sendSQL("SELECT ao_id FROM ach_objective WHERE ao_condition='all' AND NOT EXISTS (SELECT * FROM ach_atom WHERE atom_objective=ao_id AND NOT EXISTS (SELECT * FROM ach_player_atom WHERE apa_atom=atom_id AND apa_state!='GRANT' AND apa_player='".$elem['amc_character']."'))","ARRAY"); - $sz = sizeof($res); - for($i=0;$i<$sz;$i++) { - $DBc->sendSQL("INSERT INTO ach_player_objective (apo_objective,apo_player,apo_date) VALUES ('".$res[$i]['ao_id']."','".$elem['amc_character']."','".time()."')","NONE"); - } - - $res = $DBc->sendSQL("SELECT ao_id FROM ach_objective WHERE ao_condition='value' AND ao_value<=(SELECT count(*) FROM ach_atom WHERE atom_objective=ao_id AND EXISTS (SELECT * FROM ach_player_atom WHERE apa_atom=atom_id AND apa_state='GRANT' AND apa_player='".$elem['amc_character']."'))","ARRAY"); - $sz = sizeof($res); - for($i=0;$i<$sz;$i++) { - $DBc->sendSQL("INSERT INTO ach_player_objective (apo_objective,apo_player,apo_date) VALUES ('".$res[$i]['ao_id']."','".$elem['amc_character']."','".time()."')","NONE"); - } - - $res = $DBc->sendSQL("SELECT ao_id FROM ach_objective WHERE ao_condition='any' AND EXISTS (SELECT * FROM ach_atom WHERE atom_objective=ao_id AND EXISTS (SELECT * FROM ach_player_atom WHERE apa_atom=atom_id AND apa_state='GRANT' AND apa_player='".$elem['amc_character']."'))","ARRAY"); - $sz = sizeof($res); - for($i=0;$i<$sz;$i++) { - $DBc->sendSQL("INSERT INTO ach_player_objective (apo_objective,apo_player,apo_date) VALUES ('".$res[$i]['ao_id']."','".$elem['amc_character']."','".time()."')","NONE"); - } - - //perk - $res = $DBc->sendSQL("SELECT ap_id FROM ach_perk WHERE ap_condition='all' AND NOT EXISTS (SELECT * FROM ach_objective WHERE ao_perk=ap_id AND NOT EXISTS (SELECT * FROM ach_player_objective WHERE apo_objective=ao_id AND apo_state!='GRANT' AND apo_player='".$elem['amc_character']."'))","ARRAY"); - $sz = sizeof($res); - for($i=0;$i<$sz;$i++) { - $DBc->sendSQL("INSERT INTO ach_player_perk (app_objective,app_player,app_date) VALUES ('".$res[$i]['ap_id']."','".$elem['amc_character']."','".time()."')","NONE"); - } - - $res = $DBc->sendSQL("SELECT ap_id FROM ach_perk WHERE ap_condition='value' AND ap_value<=(SELECT count(*) FROM ach_objective WHERE ao_perk=ap_id AND EXISTS (SELECT * FROM ach_player_objective WHERE apo_objective=ao_id AND apo_state='GRANT' AND apo_player='".$elem['amc_character']."'))","ARRAY"); - $sz = sizeof($res); - for($i=0;$i<$sz;$i++) { - $DBc->sendSQL("INSERT INTO ach_player_perk (app_objective,app_player,app_date) VALUES ('".$res[$i]['ap_id']."','".$elem['amc_character']."','".time()."')","NONE"); - } - - $res = $DBc->sendSQL("SELECT ap_id FROM ach_perk WHERE ap_condition='any' AND EXISTS (SELECT * FROM ach_objective WHERE ao_perk=ap_id AND EXISTS (SELECT * FROM ach_player_objective WHERE apo_objective=ao_id AND apo_state='GRANT' AND apo_player='".$elem['amc_character']."'))","ARRAY"); - $sz = sizeof($res); - for($i=0;$i<$sz;$i++) { - $DBc->sendSQL("INSERT INTO ach_player_perk (app_objective,app_player,app_date) VALUES ('".$res[$i]['ap_id']."','".$elem['amc_character']."','".time()."')","NONE"); - } - } - } - - if($CONF['sleep_time'] != false) { - sleep($CONF['sleep_time']); - } - - //self call if cron mode is on - if($MODE == "CRON" && $CONF['enable_selfcall'] == true) { - $DBc->sendSQL("UPDATE ach_monitor_state SET ams_end='".time()."' WHERE ams_id='".$RID."'","NONE"); - - $fp = fsockopen($CONF['self_host'], 80, $errno, $errstr, 30); - if(!$fp) { - logf("ERROR: self call; socket: ".$errstr." (."$errno.")"); - } - else { - $out = "GET ".$CONF['self_path']." HTTP/1.1\r\n"; - $out .= "Host: ".$CONF['self_host']."\r\n"; - $out .= "Connection: Close\r\n\r\n"; - - fwrite($fp, $out); - fclose($fp); - } - } - - if($logfile) { - $logfile->write(); - } - - exit(0); -?> \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/class/Atom_class.php b/code/web/app/app_achievements/_AchWebParser/class/Atom_class.php index 9e9bc30ab..628d454b0 100644 --- a/code/web/app/app_achievements/_AchWebParser/class/Atom_class.php +++ b/code/web/app/app_achievements/_AchWebParser/class/Atom_class.php @@ -1,4 +1,10 @@ user = $user; } - function register() { - global $DBc,$_DATA; - - #echo "register
"; + function register() { // register the atom's ruleset code try { return eval($this->ruleset); @@ -25,53 +28,55 @@ catch(Exception $e) { echo $e->getMessage(); } + + return null; } - function registerValue($name,$func) { + function registerValue($name,$func) { // register to listen for a value global $_DISPATCHER; $tmp = new Callback($this,$func); $_DISPATCHER->registerValue($name,$tmp); } - function unregisterValue($name,$callback) { + function unregisterValue($name,$callback) { // unregister listening global $_DISPATCHER; $_DISPATCHER->unregisterValue($name,$callback); } - function registerEntity($name,$func) { + function registerEntity($name,$func) { // register to listen for an entity global $_DISPATCHER; $tmp = new Callback($this,$func); $_DISPATCHER->registerEntity($name,$tmp); } - function unregisterEntity($name,$callback) { + function unregisterEntity($name,$callback) { // unregister global $_DISPATCHER; $_DISPATCHER->unregisterEntity($name,$callback); } - function grant($count = 1) { + function grant($count = 1) { // grant an atom global $DBc; $DBc->sendSQL("INSERT INTO ach_player_atom (apa_atom,apa_player,apa_date,apa_expire,apa_state,apa_value) VALUES ('".$this->id."','".$this->user."','".time()."',null,'GRANT','".$count."')","NONE"); } - function deny() { + function deny() { // deny an atom global $DBc; $DBc->sendSQL("INSERT INTO ach_player_atom (apa_atom,apa_player,apa_date,apa_expire,apa_state) VALUES ('".$this->id."','".$this->user."','".time()."',null,'DENY','1')","NONE"); } - function reset_() { + function reset_() { // reset progress for this atom global $DBc; $DBc->sendSQL("DELETE FROM ach_player_atom WHERE apa_atom='".$this->id."' AND apa_player='".$this->user."'","NONE"); } - function reset_all() { + function reset_all() { // reset progress for all atoms of the same objective global $DBc; $res = $DBc->sendSQL("SELECT atom_id FROM ach_atom WHERE atom_objective='".$this->objective."'","ARRAY"); @@ -81,13 +86,13 @@ } } - function unlock() { + function unlock() { // unlock atom global $DBc; $DBc->sendSQL("DELETE FROM ach_player_atom WHERE apa_atom='".$this->id."' AND apa_player='".$this->user."' AND apa_state='DENY'","NONE"); } - function unlock_all() { + function unlock_all() { // unlock all atoms of the same objective global $DBc; $res = $DBc->sendSQL("SELECT atom_id FROM ach_atom WHERE atom_objective='".$this->objective."'","ARRAY"); diff --git a/code/web/app/app_achievements/_AchWebParser/class/Callback_class.php b/code/web/app/app_achievements/_AchWebParser/class/Callback_class.php index 5d7351f74..3449d024f 100644 --- a/code/web/app/app_achievements/_AchWebParser/class/Callback_class.php +++ b/code/web/app/app_achievements/_AchWebParser/class/Callback_class.php @@ -1,4 +1,7 @@ func = $func; } - function call($what) { + function call($what) { // now call it eval(''.$this->func.'($what,$this->who,$this);'); } } diff --git a/code/web/app/app_achievements/_AchWebParser/class/DataSource_abstract.php b/code/web/app/app_achievements/_AchWebParser/class/DataSource_abstract.php deleted file mode 100644 index bfda4f00e..000000000 --- a/code/web/app/app_achievements/_AchWebParser/class/DataSource_abstract.php +++ /dev/null @@ -1,47 +0,0 @@ -types = $CONF["types"]; - $this->write = $CONF["write"]; - $this->data = array(); - } - - function freeData($ident) { - unset $this->data[$ident]; - } - - function getTypes() { - return $this->types; - } - - function isWriteable() { - return $this->write; - } - - function getData($ident,$type,$mode,$cond) { - if(!isset($this->data[$ident])) { - $this->data[$ident] = array(); - } - - if(!isset($this->data[$ident][$type])) { - $this->loadData($ident,$type); - } - - if($mode == "*") { - return $this->data[$ident][$type]->getRows($cond); - } - else { - return $this->data[$ident][$type]->countRows($cond); - } - } - - abstract function loadData($ident,$type); - abstract function writeData($ident,$type,$keys,$data); - } -?> \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/class/DataTable_class.php b/code/web/app/app_achievements/_AchWebParser/class/DataTable_class.php deleted file mode 100644 index fcc7ba8b5..000000000 --- a/code/web/app/app_achievements/_AchWebParser/class/DataTable_class.php +++ /dev/null @@ -1,88 +0,0 @@ -table = $res; - } - - function countRows(&$cond) { - $rules = $this->parseCond($cond); - - $res = 0; - - foreach($this->table as $elem) { - $m = true; - - foreach($rules as $r) { - $tmp = ' - if($elem[$r[0]] '.$r[1].') { } - else { - $m = false; - } - '; - - try { - eval($tmp); - } - catch(Exception $e) { - return $e->getMessage(); - } - } - - if($m == true) { - $res++; - } - } - - return $res; - } - - function getRows(&$cond) { - $rules = $this->parseCond($cond); - - $res = array(); - - foreach($this->table as $elem) { - $m = true; - - foreach($rules as $r) { - $tmp = ' - if($elem[$r[0]] '.$r[1].') { } - else { - $m = false; - } - '; - - try { - eval($tmp); - } - catch(Exception $e) { - return $e->getMessage(); - } - } - - if($m == true) { - $res[] = $elem; - } - } - - return $res; - } - - private function parseCond(&$cond) { - $c = array(); - - $tmp = explode("and",strtolower($cond)); - - foreach($tmp as $elem) { - $matches = array(); - preg_match("#([a-zA-Z0-9_]+) ?([.]*)#", trim($elem), $matches); - - $c[] = array($matches[1],$matches[2]); - } - - return $c; - } - } -?> \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/class/Logfile_class.php b/code/web/app/app_achievements/_AchWebParser/class/Logfile_class.php index aab4cb01c..02ff15356 100644 --- a/code/web/app/app_achievements/_AchWebParser/class/Logfile_class.php +++ b/code/web/app/app_achievements/_AchWebParser/class/Logfile_class.php @@ -1,7 +1,6 @@ logfile = false; diff --git a/code/web/app/app_achievements/_AchWebParser/class/ParallelCURL_class.php b/code/web/app/app_achievements/_AchWebParser/class/ParallelCURL_class.php deleted file mode 100644 index 233d7a101..000000000 --- a/code/web/app/app_achievements/_AchWebParser/class/ParallelCURL_class.php +++ /dev/null @@ -1,160 +0,0 @@ -startRequest('http://example.com', 'on_request_done', array('something')); -// -// The first argument is the address that should be fetched -// The second is the callback function that will be run once the request is done -// The third is a 'cookie', that can contain arbitrary data to be passed to the callback -// -// This startRequest call will return immediately, as long as less than the maximum number of -// requests are outstanding. Once the request is done, the callback function will be called, eg: -// -// on_request_done($content, 'http://example.com', $ch, array('something')); -// -// The callback should take four arguments. The first is a string containing the content found at -// the URL. The second is the original URL requested, the third is the curl handle of the request that -// can be queried to get the results, and the fourth is the arbitrary 'cookie' value that you -// associated with this object. This cookie contains user-defined data. -// -// By Pete Warden , freely reusable, see http://petewarden.typepad.com for more - -class ParallelCurl { - - public $max_requests; - public $options; - - public $outstanding_requests; - public $multi_handle; - - public function __construct($in_max_requests = 10, $in_options = array()) { - $this->max_requests = $in_max_requests; - $this->options = $in_options; - - $this->outstanding_requests = array(); - $this->multi_handle = curl_multi_init(); - } - - //Ensure all the requests finish nicely - public function __destruct() { - $this->finishAllRequests(); - } - - // Sets how many requests can be outstanding at once before we block and wait for one to - // finish before starting the next one - public function setMaxRequests($in_max_requests) { - $this->max_requests = $in_max_requests; - } - - // Sets the options to pass to curl, using the format of curl_setopt_array() - public function setOptions($in_options) { - - $this->options = $in_options; - } - - // Start a fetch from the $url address, calling the $callback function passing the optional - // $user_data value. The callback should accept 3 arguments, the url, curl handle and user - // data, eg on_request_done($url, $ch, $user_data); - public function startRequest($url, $callback, $user_data = array(), $post_fields=null) { - - if( $this->max_requests > 0 ) - $this->waitForOutstandingRequestsToDropBelow($this->max_requests); - - $ch = curl_init(); - curl_setopt_array($ch, $this->options); - curl_setopt($ch, CURLOPT_URL, $url); - curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); - - if (isset($post_fields)) { - curl_setopt($ch, CURLOPT_POST, TRUE); - curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields); - } - - curl_multi_add_handle($this->multi_handle, $ch); - - $ch_array_key = (int)$ch; - - $this->outstanding_requests[$ch_array_key] = array( - 'url' => $url, - 'callback' => $callback, - 'user_data' => $user_data, - ); - - $this->checkForCompletedRequests(); - } - - // You *MUST* call this function at the end of your script. It waits for any running requests - // to complete, and calls their callback functions - public function finishAllRequests() { - $this->waitForOutstandingRequestsToDropBelow(1); - } - - // Checks to see if any of the outstanding requests have finished - private function checkForCompletedRequests() { - - // Call select to see if anything is waiting for us - if (curl_multi_select($this->multi_handle, 0.0) === -1) - return; - - // Since something's waiting, give curl a chance to process it - do { - $mrc = curl_multi_exec($this->multi_handle, $active); - } while ($mrc == CURLM_CALL_MULTI_PERFORM); - - // Now grab the information about the completed requests - while ($info = curl_multi_info_read($this->multi_handle)) { - - $ch = $info['handle']; - $ch_array_key = (int)$ch; - - if (!isset($this->outstanding_requests[$ch_array_key])) { - die("Error - handle wasn't found in requests: '$ch' in ". - print_r($this->outstanding_requests, true)); - } - - $request = $this->outstanding_requests[$ch_array_key]; - - $url = $request['url']; - $content = curl_multi_getcontent($ch); - $callback = $request['callback']; - $user_data = $request['user_data']; - - call_user_func($callback, $content, $url, $ch, $user_data); - - unset($this->outstanding_requests[$ch_array_key]); - - curl_multi_remove_handle($this->multi_handle, $ch); - } - - } - - // Blocks until there's less than the specified number of requests outstanding - private function waitForOutstandingRequestsToDropBelow($max) - { - while (1) { - $this->checkForCompletedRequests(); - if (count($this->outstanding_requests)<$max) - break; - - usleep(10000); - } - } - -} - - -?> \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/class/mySQL_class.php b/code/web/app/app_achievements/_AchWebParser/class/mySQL_class.php index 5aca70da4..7e1fd43c2 100644 --- a/code/web/app/app_achievements/_AchWebParser/class/mySQL_class.php +++ b/code/web/app/app_achievements/_AchWebParser/class/mySQL_class.php @@ -95,7 +95,7 @@ else { return $res; } - mysql_free_result($res); + //mysql_free_result($res); } else { return false; diff --git a/code/web/app/app_achievements/_AchWebParser/conf.php b/code/web/app/app_achievements/_AchWebParser/conf.php index dc5286fd1..cf259daba 100644 --- a/code/web/app/app_achievements/_AchWebParser/conf.php +++ b/code/web/app/app_achievements/_AchWebParser/conf.php @@ -18,4 +18,8 @@ $CONF['char_mysql_database'] = "app_achievements"; $CONF['data_source'] = array("PDRtoXMLdriver"); + + $CONF['facebook'] = false; + $CONF['fb_id'] = "447985781893176"; + $CONF['fb_secret'] = "f953772f1f7d871db022a6023e7a3f42"; ?> \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/include/functions_inc.php b/code/web/app/app_achievements/_AchWebParser/include/functions_inc.php index 969ffc2f1..ed1a02ded 100644 --- a/code/web/app/app_achievements/_AchWebParser/include/functions_inc.php +++ b/code/web/app/app_achievements/_AchWebParser/include/functions_inc.php @@ -26,7 +26,14 @@ return mktime($t[0],$t[1],$t[2],$d[1],$d[2],$d[0]); } - function received_char($res, $url, $ch, $argv) { - logf("character tracking returned: ".$res); + function curl_get_file_contents($URL) { // http://developers.facebook.com/blog/post/2011/05/13/how-to--handle-expired-access-tokens/ + $c = curl_init(); + curl_setopt($c, CURLOPT_RETURNTRANSFER, 1); + curl_setopt($c, CURLOPT_URL, $URL); + $contents = curl_exec($c); + $err = curl_getinfo($c,CURLINFO_HTTP_CODE); + curl_close($c); + if ($contents) return $contents; + else return FALSE; } ?> \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/parser.php b/code/web/app/app_achievements/_AchWebParser/parser.php deleted file mode 100644 index 65836d1ee..000000000 --- a/code/web/app/app_achievements/_AchWebParser/parser.php +++ /dev/null @@ -1,132 +0,0 @@ -private function parseRuleset() { - $this->ruleset_parsed = $this->ruleset; - #WORKPAD:#### - /* - Trigger: - by value - (by event) - - Sources: - XML - valuecache - ring_open - (Achievement Service) - (Mirror Service) - - Keywords: - VALUE - GRANT:EVENT player_death - DENY:TIMER 3600 - RESET - RESET_ALL - UNLOCK - UNLOCK_ALL - - IF - SCRIPT - MSG - - VALUE dappers = c_money - IF(dappers >= 5000) { - GRANT - } - - VALUE sum = c_cache:sum - IF(sum > 1000) { - GRANT - } - - VALUE tmp = c_fame[scorchers] - IF(tmp == 0) { - DENY:3600 - } - - VALUE x = c_pos_x - VALUE y = c_pos_y - SCRIPT inside(x,y) { - IF(MSG == "Majestic Garden") { - GRANT - } - } - - EVENT player_death - ON player_death { - UNLOCK - } - - EVENT region_changed - ON region_changed { - IF(MSG == "Majestic Garden") { - GRANT - } - } - */ - ############# - - - #VALUE var = name; - $match = array(); - preg_match_all("#VALUE ([a-zA-Z0-9_]) ?= ?([a-zA-Z0-9_]);#", $this->ruleset_parsed, $match,PREG_PATTERN_ORDER); - foreach($match[0] as $key=>$elem) { - $tmp = '$'.$match[1][$key].' = $_DATA->getData("VALUE","'.$match[2][$key].'",$user);\n'; - $tmp .= 'if($'.$match[1][$key].' == ) {\n'; - $tmp .= 'ERROR\n'; - $tmp .= '}\n'; - $this->ruleset_parsed = str_replace($elem,$tmp,$this->ruleset_parsed); - } - - - #IF(statement) { } - $match = array(); - preg_match_all("#IF ?\(([^\)]*)\) ?{#", $this->ruleset_parsed, $match,PREG_PATTERN_ORDER); - foreach($match[0] as $key=>$elem) { - $tmp = 'if() {\n'; - $this->ruleset_parsed = str_replace($elem,$tmp,$this->ruleset_parsed); - } - - - SCRIPT script(a,r,g,s) { - MSG - } - - #EVENT name; - $match = array(); - preg_match_all("#EVENT ([^;]*);#", $this->ruleset_parsed, $match,PREG_PATTERN_ORDER); - foreach($match[0] as $key=>$elem) { - $tmp = ''; - $this->ruleset_parsed = str_replace($elem,$tmp,$this->ruleset_parsed); - } - - ON name { - MSG - } - - #GRANT; - #GRANT:EVENT name; - #GRANT:TIMER seconds; - $match = array(); - preg_match_all("#GRANT:?([^;]*);#", $this->ruleset_parsed, $match,PREG_PATTERN_ORDER); - foreach($match[0] as $key=>$elem) { - $tmp = '$this->grant("'.$match[1][$key].'");'; - $this->ruleset_parsed = str_replace($elem,$tmp,$this->ruleset_parsed); - } - - #DENY; - #DENY:EVENT name; - #DENY:TIMER seconds; - $match = array(); - preg_match_all("#DENY:?([^;]*);#", $this->ruleset_parsed, $match,PREG_PATTERN_ORDER); - foreach($match[0] as $key=>$elem) { - $tmp = '$this->deny("'.$match[1][$key].'");'; - $this->ruleset_parsed = str_replace($elem,$tmp,$this->ruleset_parsed); - } - - #RESET; - #RESET_ALL; - #UNLOCK; - #UNLOCK_ALL; - $this->ruleset_parsed = str_replace("RESET_ALL;",'$this->reset_all();',$this->ruleset_parsed); - $this->ruleset_parsed = str_replace("RESET;",'$this->reset_();',$this->ruleset_parsed); - $this->ruleset_parsed = str_replace("UNLOCK_ALL;",'$this->unlock_all();',$this->ruleset_parsed); - $this->ruleset_parsed = str_replace("UNLOCK;",'$this->unlock();',$this->ruleset_parsed); - } \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/script/include_InPoly_class.php b/code/web/app/app_achievements/_AchWebParser/script/include_InPoly_class.php index 491fa11bb..14e2ff3a2 100644 --- a/code/web/app/app_achievements/_AchWebParser/script/include_InPoly_class.php +++ b/code/web/app/app_achievements/_AchWebParser/script/include_InPoly_class.php @@ -58,6 +58,8 @@ } } + return false; + } function pointStringToCoordinates($pointString) { diff --git a/code/web/app/app_achievements/_AchWebParser/source/PDRtoXMLdriver/PDRtoXMLdriver_class.php b/code/web/app/app_achievements/_AchWebParser/source/PDRtoXMLdriver/PDRtoXMLdriver_class.php index b48da1c0d..655a02623 100644 --- a/code/web/app/app_achievements/_AchWebParser/source/PDRtoXMLdriver/PDRtoXMLdriver_class.php +++ b/code/web/app/app_achievements/_AchWebParser/source/PDRtoXMLdriver/PDRtoXMLdriver_class.php @@ -80,7 +80,7 @@ } function drive($cid) { - global $CONF,$_DISPATCHER; + global $_DISPATCHER; echo "kk"; diff --git a/code/web/app/app_achievements/_AchWebParser/source/ValueCache/ValueCache_class.php b/code/web/app/app_achievements/_AchWebParser/source/ValueCache/ValueCache_class.php deleted file mode 100644 index 7d92d4996..000000000 --- a/code/web/app/app_achievements/_AchWebParser/source/ValueCache/ValueCache_class.php +++ /dev/null @@ -1,19 +0,0 @@ -sendSQL("SELECT apv_value,apv_date,apv_name FROM ach_player_valuecache WHERE apv_player='".$DBc->mre($ident)."'","ARRAY"); - - $this->data[$ident][$type] = new DataTable($res); - } - - function writeData($ident,$type,$keys,$data) { - global $DBc; - - $DBc->sendSQL("INSERT INTO ach_player_valuecache (apv_name,apv_player,apv_value,apv_date) VALUES ('".$DBc->mre($keys[0])."','".$DBc->mre($ident)."','".$DBc->mre($data[0])."','".time()."') ON DUPLICATE KEY UPDATE apv_value='".$DBc->mre($data)."', apv_date='".time()."'","NONE"); - } - } -?> \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/source/ValueCache/conf.php b/code/web/app/app_achievements/_AchWebParser/source/ValueCache/conf.php deleted file mode 100644 index 69f6c5cf8..000000000 --- a/code/web/app/app_achievements/_AchWebParser/source/ValueCache/conf.php +++ /dev/null @@ -1,7 +0,0 @@ - \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/source/XMLapi/XMLapi_class.php b/code/web/app/app_achievements/_AchWebParser/source/XMLapi/XMLapi_class.php deleted file mode 100644 index 9ba55aa0a..000000000 --- a/code/web/app/app_achievements/_AchWebParser/source/XMLapi/XMLapi_class.php +++ /dev/null @@ -1,229 +0,0 @@ -xml_path = $CONF['xml_path']; - } - - function loadData($ident,$type) { - switch($type) { - case 'c_stats': - case 'c_connection': - case 'c_gear': - case 'c_fp': - case 'c_skills': - case 'c_fame': - case 'c_pet': - $path = $this->xml_path."full/".$ident.".xml"; - break; - case 'c_items': - $path = $this->xml_path."item/".$ident.".xml"; - break; - default: - return false; - break; - } - - $xml = new SimpleXMLElement(file_get_contents($path)); - - switch($type) { - case 'c_stats': - $this->loadStats($xml); - break; - case 'c_connection': - $this->loadConnection($xml); - break; - case 'c_gear': - $this->loadGear($xml); - break; - case 'c_fp': - $this->loadFp($xml); - break; - case 'c_skills': - $this->loadSkills($xml); - break; - case 'c_fame': - $this->loadFame($xml); - break; - case 'c_pet': - $this->loadPet($xml); - break; - case 'c_items': - $this->loadItems($xml); - break; - default: - return false; - break; - } - } - - private function getItems(&$xml) { - $dta = array(); - - $r = $xml->xpath('item'); - $dta[] = $r->attributes(); - - return $dta; - } - - private function loadGear(&$xml) { - $this->data['c_gear'] = $this->getItems($xml); - } - - private function loadFp(&$xml) { - $dta = array(); - - $r = $xml->xpath('faction_points'); - foreach($r->children() as $elem) { - $dta[] = array($elem->getName()=>$elem); - } - - $this->data['c_fp'] = $dta; - } - - private function loadSkills(&$xml) { - $dta = array(); - - $r = $xml->xpath('skills'); - foreach($r->children() as $elem) { - $dta[] = array($elem->getName()=>$elem); - } - - $this->data['c_skills'] = $dta; - } - - private function loadPet(&$xml) { - $dta = array(); - - $r = $xml->xpath('pet'); - foreach($r as $pet) { - $tmp = $pet->attributes(); - $child = $pet->children(); - $tmp = array_merge($tmp,$child[0]->attributes()); - - $dta[] = $tmp; - } - - $this->data['c_pet'] = $dta; - } - - private function loadFame(&$xml) { - $dta = array(); - - $r = $xml->xpath('fames'); - foreach($r->children() as $elem) { - $dta[] = array($elem->getName()=>$elem); - } - - $this->data['c_fame'] = $dta; - } - - private function loadItems(&$xml) { - $this->data['c_items'] = $this->getItems($xml); - } - - private function loadConnection(&$xml) { - $dta = array(); - - $r = $xml->xpath('log'); - - while(list( , $node) = each($r)) { - #$attr = $node->attributes(); - #$dta[] = array("in"=>$attr[],"out"=>$attr[1],"duration"=>$attr[2]); - $dta[] = $node->attributes(); - } - - $this->data['c_connection'] = $dta; - } - - private function loadStats(&$xml) { - $dta = array(); - - $slist = array( 'name', - 'shard', - 'uid', - 'slot', - 'cid', - 'race', - 'gender', - 'titleid', - 'played_time', - 'latest_login', - 'latest_logout', - 'hair_type', - 'hair_color', - 'tattoo', - 'eyes_color', - 'gabarit_height', - 'gabarit_torso_width', - 'gabarit_arms_width', - 'gabarit_legs_width', - 'gabarit_breast_size', - 'morph1', - 'morph2', - 'morph3', - 'morph4', - 'morph5', - 'morph6', - 'morph7', - 'morph8', - 'gid', - 'name', - 'icon', - 'money', - 'cult', - 'civ', - 'constitution', - 'metabolism', - 'intelligence', - 'wisdom', - 'strength', - 'wellbalanced', - 'dexterity', - 'will', - 'building'); - - foreach($slist as $elem) { - $r = $xml->xpath($elem); - $dta[$elem] = $r[0]; - } - - # - $r = $xml->xpath("position"); - $attr = $r->attributes(); - $dta['pos_x'] = $attr['x']; - $dta['pos_y'] = $attr['y']; - $dta['pos_head'] = $attr['head']; - - #3941 - #1790 - #1890 - #2750 - $r = $xml->xpath("hitpoints"); - $attr = $r->attributes(); - $dta['hitpoints'] = $attr['hitpoints']; - - $r = $xml->xpath("stamina"); - $attr = $r->attributes(); - $dta['stamina'] = $attr['stamina']; - - $r = $xml->xpath("sap"); - $attr = $r->attributes(); - $dta['sap'] = $attr['sap']; - - $r = $xml->xpath("focus"); - $attr = $r->attributes(); - $dta['focus'] = $attr['focus']; - - $this->data['c_stats'] = array($dta); - } - - function writeData($ident,$field,$data,$type) { - return false; - } - - } -?> \ No newline at end of file diff --git a/code/web/app/app_achievements/_AchWebParser/source/XMLapi/conf.php b/code/web/app/app_achievements/_AchWebParser/source/XMLapi/conf.php deleted file mode 100644 index d243c6a67..000000000 --- a/code/web/app/app_achievements/_AchWebParser/source/XMLapi/conf.php +++ /dev/null @@ -1,8 +0,0 @@ - \ No newline at end of file diff --git a/code/web/app/app_achievements/_doc/Class_scheme.dia b/code/web/app/app_achievements/_doc/Class_scheme.dia index 7237838181a70355dcde0c757403593d44388e6c..111831ea0f686fc48d839a9777cec026ce70a0ed 100644 GIT binary patch literal 6819 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 diff --git a/code/web/app/app_achievements/_doc/Class_scheme.png b/code/web/app/app_achievements/_doc/Class_scheme.png index f282dad0ee5d508813982d82d06c79df3c3ff3d9..9c37c3570fbd8406cbc8faa73f5a7a0560dca01a 100644 GIT binary patch literal 67725 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ॆy1a`eAmj2ffe=0jgmtr(MfC&n%E?NJL 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 I-u>SH0oM4?1poj5 literal 38928 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 AB>(^b diff --git a/code/web/app/app_achievements/_doc/ER_scheme.dia b/code/web/app/app_achievements/_doc/ER_scheme.dia index bfac940f48aa51675753cd6c6ace74eca826f00a..c2ae2694d31aa1e8fc958d39b06ba628a3640204 100644 GIT binary patch literal 12693 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≷tHR0Ya3q{|#H1^)dU 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 literal 10696 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 diff --git a/code/web/app/app_achievements/_doc/ER_scheme.png b/code/web/app/app_achievements/_doc/ER_scheme.png index c1e7f5e592aa018c5899af5f49ac1f6138b4247b..898378ac0d7ae9fa01966ba2e602cd27a7be2251 100644 GIT binary patch literal 240138 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

-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 literal 192469 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%0DK9|FoaP);}Np8eVHnkrQ}6}dYbPp;^reR2b``1 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ν!b9-qy=1H>j;6hsX8PhE8Ak&5cwQR$7OcZnEJkhkay2Ly7%$+$r0!y;w$CQONpMRD?<@0>~tIVodbxlogbgEtN>o=mW zS0Cuee`O>(0MXkPF3WXy@kboDS<$@=R9DC+01R3h%%w)O{mscA_8a4W77MaudMVxo z4t?P^8~B~0EpQHkZCFf9vnY;`n3fiW*V&3Li*UOE^f3xy_m5!YP&qj{AzlT*DXW?z z`m0y3s_@>T)z_;%-NpcI?knh$Vv>?OaDeP+YEgjiQYGPR+^Hv*oP6u_xhv40TIX3~ z1BRy;xga0;`JT`{VH~d$%;S)+dFj*;{SiDroI!*yMBE4D*&nYM-Bbfq)gOGX$(fl3 zh;pQC);~nLJ`^Jm%ePyZb4j${|0S{cx1lNCe()epV52GmcmYH#8X+g6USu4u;wBcE zrD_X!#mFqBz+74 z87Tav#-sZZ2+#Xr&aahH!3FiudTc6T3J`y;R zdMknaT-n>-WR�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�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�O(2?`#|LYQfCwzg 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®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

~PE1&t)mqM&sjY&%YHWm{>8EWt@T|Adt8< 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
You haven't earned any Heroic Deeds so far.
"; + } + if($cat->isTiedCult() || $cat->isTiedCiv()) { $html .= ach_render_tiebar($cat->getCurrentCult(),$cat->getCurrentCiv(),$cat); } @@ -183,22 +187,22 @@ $iter = $cat->getDone(); while($iter->hasNext()) { $curr = $iter->getNext(); - #$sz = sizeof($tmp); - #for($i=0;$i<$sz;$i++) { - #echo "A"; - if($curr->inDev()) { + + if($curr->inDev() || !$curr->parentDone()) { continue; } $html .= ach_render_achievement_done($curr); } + if($cat->isHeroic()) { + return $html; + } + $iter = $cat->getOpen(); while($iter->hasNext()) { $curr = $iter->getNext(); - #$sz = sizeof($tmp); - #for($i=0;$i<$sz;$i++) { - #echo "B"; - if($curr->inDev()) { + + if($curr->inDev() || !$curr->parentDone()) { continue; } $html .= ach_render_achievement_open($curr); @@ -218,9 +222,13 @@ getImage()."'>
".$ach->getName()."
- ".ach_render_perk_done($ach)."
+ ".ach_render_task_done($ach)."
- ".$ach->getValueDone()."
+ "; + if(!$ach->isHeroic()) { + $html .= "".$ach->getValueDone()."
"; + } + $html .= " @@ -242,7 +250,7 @@ getImage()."'>
".$ach->getName()."
- ".ach_render_perk_open($ach)."
+ ".ach_render_task_open($ach)."
".$ach->getValueOpen()."
@@ -255,40 +263,38 @@ return $html; } - function ach_render_perk_open(&$ach) { + function ach_render_task_open(&$ach) { $html = ""; - $perk_list = $ach->getOpen(); - $perk = $perk_list->getNext(); + $task_list = $ach->getOpen(); + $task = $task_list->getNext(); - if($perk->inDev()) { + if($task->inDev()) { return $html; } - if($perk->getName() != null) { - $html .= "".$perk->getDisplayName()." "; + if($task->getName() != null) { + $html .= "".$task->getDisplayName()." "; } - if($perk->objDrawable()) { - $html .= "".ach_render_obj_list($perk->getIterator()).""; + if($task->objDrawable()) { + $html .= "".ach_render_obj_list($task->getIterator()).""; } return $html; } - function ach_render_perk_done(&$ach) { + function ach_render_task_done(&$ach) { global $_CONF; $html = ""; - $perk_list = $ach->getDone(); - while($perk_list->hasNext()) { - $perk = $perk_list->getNext(); + $task_list = $ach->getDone(); + while($task_list->hasNext()) { + $task = $task_list->getNext(); - #foreach($perk_list as $elem) { - #$perk = $ach->getChild($elem); - if($perk->inDev()) { + if($task->inDev()) { continue; } - $html .= "".$perk->getDisplayName()." ( ".date('d.m.Y',$perk->getDone())." ) ".$perk->getValue().""; + $html .= "".$task->getDisplayName()." ( ".date('d.m.Y',$task->getDone())." ) ".$task->getValue().""; } return $html; @@ -301,7 +307,6 @@ $skip = false; while($obj->hasNext()) { - #foreach($obj as $elem) { $elem = $obj->getNext(); if(($i%2) == 0) { $html .= ""; @@ -366,7 +371,7 @@ function ach_render_obj_meta(&$obj) { global $_CONF; - $html = ""; + if($obj->isdone()) { $col = "#71BE02"; $grey = ""; @@ -402,6 +407,11 @@ } function ach_render_progressbar($prog,$val,$width) { + $hero = false; + if($val == false) { + $hero = true; + $val = $prog; + } $val = max(1,$val); $left = floor($width*(100*($prog/$val))/100); $left = max(1,$left); @@ -413,13 +423,18 @@ + - @@ -451,7 +466,16 @@ $html .= ""; } - $html .= ""; + $html .= ""; + $sum_done += $elem[1]; $sum_total += $elem[2]; diff --git a/code/web/app/app_achievements/include/ach_render_web.php b/code/web/app/app_achievements/include/ach_render_web.php index 8c9df92bd..a82005496 100644 --- a/code/web/app/app_achievements/include/ach_render_web.php +++ b/code/web/app/app_achievements/include/ach_render_web.php @@ -51,7 +51,7 @@ } function ach_render_tiebar($cult = "c_neutral", $civ = "c_neutral",&$cat) { - global $_USER,$_CONF; + global $_USER; $html = ""; - - $html .= "
-
- -
"; - if(($prog/$val) > 0.5) { - $html .= " ".nf($prog)." / ".nf($val)." "; + if($hero == false) { + if(($prog/$val) > 0.5) { + $html .= " ".nf($prog)." / ".nf($val)." "; + } + $html .= ""; + if(($prog/$val) <= 0.5) { + $html .= " ".nf($prog)." / ".nf($val)." "; + } } - $html .= ""; - if(($prog/$val) <= 0.5) { - $html .= " ".nf($prog)." / ".nf($val)." "; + else { + $html .= " ".nf($prog)." "; } $html .= "
".$elem[0]."
".ach_render_progressbar($elem[1],$elem[2],150)."
".$elem[0]."
"; + if($elem[3] == false) { + $html .= ach_render_progressbar($elem[1],$elem[2],150); + } + else { + $html .= ach_render_progressbar($elem[1],false,150); + } + + $html .= "
- - - - - - - - - - - - -
name
image
 
- - - "; - - if($_REQUEST['ac_id'] > 0 && $_REQUEST['confirm'] == "delete") { - $curr = $menu->getNode($_REQUEST['ac_id']); - $html .= "
-
- Are you sure you want to delete this category?"; - if($curr->hasAchievements()) { - $html .= "You may NOT DELETE this category since there are still achievements tied to it or one of its sub-categories!"; - } - else { - $html .= "".$curr->getName()."

"; - - if($curr->getParentID() == null) { - $html .= "WARNING: Deleting this category will also delete ALL sub-categories!
"; - } - $html .= "delete"; - } - $html .= "

-
"; - } - - $html .= ""; - - return $html.ach_render_mnode($menu,$sub); - } - - function ach_render_mnode(&$menu,$sub) { - global $_CONF; - - # echo "1"; - - $iter = $menu->getIterator(); - while($iter->hasNext()) { - $curr = $iter->getNext(); - #$sz = $menu->getSize(); - #for($i=0;$i<$sz;$i++) { - # $curr = $menu->getChild($i); - - $html .= " - "; - if($sub == 0) { - $html .= ""; - } - $html .= " - - -
getImage()."' />"; - if($curr->inDev()) { - $html .= ""; - } - - $html .= $curr->getName(); - - if($curr->inDev()) { - $html .= ""; - } - $html .= " "; - - if($sub == 0) { - $html .= " "; - } - - $html .= "   
"; - if($sub == 0) { - $html .= ""; - } - - $html .= ""; - - if(!$curr->isEmpty()) { - $html .= "
".ach_render_mnode($curr,($sub+4))."
"; - } - } - - return $html; - } -?> \ No newline at end of file diff --git a/code/web/app/app_achievements_admin/include/adm_render_ach.php b/code/web/app/app_achievements_admin/include/adm_render_ach.php index 1639d5b66..6f4475adc 100644 --- a/code/web/app/app_achievements_admin/include/adm_render_ach.php +++ b/code/web/app/app_achievements_admin/include/adm_render_ach.php @@ -22,16 +22,13 @@ function adm_render_mnode(&$menu,$sub) { global $_CONF; + + $html = ""; $iter = $menu->getIterator(); while($iter->hasNext()) { $curr = $iter->getNext(); - #$sz = $menu->getSize(); - #for($i=0;$i<$sz;$i++) { - # $curr = $menu->getChild($i); - if($curr->inDev()) { - #continue; - } + $html .= ""; if($sub == 0) { @@ -53,6 +50,40 @@ } function adm_render_category(&$cat) { + global $menu,$metalist,$DBc,$_USER; + + $html = ""; + + $m = $menu->getIterator(); + while($m->hasNext()) { + $n = $m->getNext(); + $html .= ""; + + $m2 = $n->getIterator(); + while($m2->hasNext()) { + $n2 = $m2->getNext(); + $html .= ""; + + //db + $res = $DBc->sqlQuery("SELECT aa_id,aal_name FROM ach_achievement LEFT JOIN (ach_achievement_lang) ON (aal_lang='".$_USER->getLang()."' AND aal_achievement=aa_id) WHERE aa_category='".$n2->getID()."' ORDER by aa_sticky DESC, aal_name ASC"); + $sz = sizeof($res); + for($i=0;$i<$sz;$i++) { + $html .= ""; + } + } + + //db + $res = $DBc->sqlQuery("SELECT aa_id,aal_name FROM ach_achievement LEFT JOIN (ach_achievement_lang) ON (aal_lang='".$_USER->getLang()."' AND aal_achievement=aa_id) WHERE aa_category='".$n->getID()."' ORDER by aa_sticky DESC, aal_name ASC"); + $sz = sizeof($res); + for($i=0;$i<$sz;$i++) { + $html .= ""; + } + } + + $metalist = $html; + + + $html = " -
+
"; - if($cat->isTiedCult()) { + if($cat->isTiedCultDev()) { $html.= ""; } - if($cat->isTiedCiv()) { + if($cat->isTiedCivDev()) { $html.= "
'; - $html .= ach_render_perk_done($ach); + $html .= ach_render_task_done($ach); $html .= '
@@ -217,7 +219,7 @@ '.$ach->getValueOpen().'
'; - $html .= ach_render_perk_open($ach); + $html .= ach_render_task_open($ach); $html .= ' @@ -232,52 +234,46 @@ return $html; } - function ach_render_perk_open(&$ach) { - #echo var_export($perk_list,true); + function ach_render_task_open(&$ach) { $html = ""; - $perk_list = $ach->getOpen(); - $perk = $perk_list->getNext(); + $task_list = $ach->getOpen(); + $task = $task_list->getNext(); - #$perk = $ach->getChild($perk_list[0]); - - if($perk->inDev()) { + if($task->inDev()) { return $html; } $html .= ""; - if($perk->getName() != null) { - $html .= $perk->getName(); + if($task->getName() != null) { + $html .= $task->getName(); } else { - $tml .= "[untitled]"; + $html .= "[untitled]"; } - $html .= "
Perk: grant"; - #if($perk->getName() != null) { - $html .= "
"; - #} - if($perk->objDrawable()) { - $html .= ach_render_obj_list($perk->getIterator()); + $html .= " Task: grant"; + + if($task->objDrawable()) { + $html .= ach_render_obj_list($task->getIterator()); } return $html; } - function ach_render_perk_done(&$ach) { + function ach_render_task_done(&$ach) { global $_CONF; $html = ""; - $perk_list = $ach->getDone(); - while($perk_list->hasNext()) { - $perk = $perk_list->getNext(); - #foreach($perk_list as $elem) { - #$perk = $ach->getChild($elem); - if($perk->inDev()) { + $task_list = $ach->getDone(); + while($task_list->hasNext()) { + $task = $task_list->getNext(); + + if($task->inDev()) { continue; } - $html .= "
".$perk->getName()." ( ".date('d.m.Y',$perk->getDone())." ) ".$perk->getValue()." Perk: deny
"; + $html .= "
".$task->getName()." ( ".date('d.m.Y',$task->getDone())." ) ".$task->getValue()." Task: deny
"; } return $html; @@ -489,7 +485,7 @@ } function ach_render_tiebar($cult = "c_neutral", $civ = "c_neutral",&$cat) { - global $_USER,$_CONF; + global $_USER; $html = "

>$jT=OU8XPUuLr{MyV0A6J!RIwBn1pwX^5||{> zgo?SUikcG^+!cENd8#$9cac8}XTYv}$C&Gnx&71vznly(!)7YG-@< zTX!?(=an(^>Z&L{cKk?Zd>R z6xu>|m|>IAL}9(qE?-+Zs&{XW-rJr?e3a>7Vxl0W4cmvkc6AovvD@Mvy?bYgscX~0 zWme$7{$$PHwoq7|H7O~GBcWD5zbfF?K^yeJq;>!%+6fOw!()lfbFZZU7>fMy{l4)# zYz~y6PVsZ6I@XzM*n3YdD)Gm`f^q_6mbdU4R3a1KPu6x}zIr!R|M1_pw*OL#dG~f& z=-BzGYTNqt_Io+GX3nzIzK>kg??2!D2}i^gAIT}3yYs6MgW-1X3J{R#Lta^?y1LV; z6oQJjwkP%9m%OG?2O@Dn;slM11gRwGNKcJ_QCdGc#JFG{OT+mDRlnrkQnd|!8cpl_ zs#0Z#6Z?+oiXtKe=#-X^k19fagAo*&_2j^G^az(azZLl`O$`Ce&xUGVxu{oMR9EZp z zDzAijuL25deFK9tC>Q&ePzFUZ2{;gt5EvS&0gex%UcOngNc7s!b6%+JJ#z=EG2F!{ z$AcRNOqYP&otPdPH)LiecjSQN9h|D(*!&SEi=s+)2+j~I=+A8e?A+aRjCG!j%(YBO zlQ^e8`%L}TpbXO)9f)A|KBAjUjDt-Y4DwySG#F@YWL5K zg3LB;QIuhrJi}W0{R20qNzuMT85DE{yLYF%9;c=MLt1}jZ{nY>s2voMht|plU@74- zG+y(7pXtr&>wTwn0~@CHZTqFb0hv2R%+i?F%;0aldyvL-=dY z<@EU2h}C{wW!vM|1({eJCjybN@G0Jc=IxHo3p`r1b{-uR7yGj`?~3sUWDzeb{eF7# zZe3T}YQ@-y3ywejan2sFx7bptRz`dt#TDgqJA0pJpW_eAsl2JlD9h)|$Ow^Lq&rSa zPp3v^==sUtvk(;C>>B;&0lR-kOOlJfn}t8Ww$sJ(@6S)iEGrpeE&VlS*6oExw+g`T zEss}ylCxI+I^o{cyQ}E?jCkz8Pzcw)TZFM2R4SsG70jEDlUQ7AT|_zK6uNMlbhNAZ zNS0go2((13uf37mfG8mvT|i>{2iYwKZkG23_EpZ#GEY zW+kky`eWbXPj-u4^ZYqO{}6+Vg@Pr-#-MfuL?ujVHz}V1u&nvJN zFckLI@Y1MFC`A4uH3LQfC^YN zS2Ih%1p5#HVcZS)dir=XA0AXY^`1JG+$h_VkQO>c($N`e%A{ zih7fg>MN~*MH~(zf3&Xp7&g75J-T`9i;*8^=tqF?G;g!3s|yD7_t*og31I#Bu{mKR zPuD6<#o`@jDDW4GQl^FpRR}0qf7JOO@MrgPu;XN#lZP@djN)`KO=Sjw6!`iK1`=RN zrWNnmCxg!SUenyYitBKLDfoWupEn`M1pI*hox#AA6>{ty!$I>^DC^3^rx;E>F32=MMh@ z?;#doAOV*yiQol7a>jQKi{ssbsD&L3jkQbFm!4}GeHS9nFN_@pZ~_GnW7s7J*r}3{ zS~+-LHNKh^Gk(6GIe&O`8iOp^IfVa?42w0!U zKZs_PL8H%Ub}H(uC3x9q;?;|k_~pXdNjv3c)+AT=hyrEL49^|yZH4#0<*8a+R%~Cp z!2IbS6Tzd}o~cT&Orrjr%;+=RUtDl4TP25On^m4xnuF9*?Kb-re#za#mrhh)zL0ba z{Sy%naQnL!f%@Z{BN&Efkdc{5@F$%T7?7uS{P;b$%ZTj4SE4INBO(SLf9L#VeHXEv zfsCOE6o9NXLB;_6h-n`j7@#U=-Pc9~8mx#D^_(SpKWr>HLeg#tdWvj!5Nx@GnHIkxHpvk1-`kiU@d0w zL~769gg%JS2!8(4s9n$W3@h)$GaR%RM=6W|S)kUQ2Al&e z-?CYAmjV*OYx159kc6`_CzSewPl~>9VO4tz5~ZPZ#&J&|3cbys5P}8nb@cZ9U>&Tp zbaA>C{`yqrtixuXuK%O!<5ivcv$Wno=hB7jIuX9Xu=0Az6Xud?dE?$j)~xC)M6VjZ zXy~2$qpDXN_j7NC`}uPFbU=^L=D-FgPEv~K=(Fg<2;I4zO(`^>&nSo%j}y^SMy2R8 z$zWg}AjgH40Szy4)N*oL$7>OrfW9C)#Ceqz@}%n3XNrMCM{b@P5}B~3GNSS&wrOg+ zj2hORbaB3x@|iob+L7GI@e0y^*?7b8tlHMTZB2TG6U}1{U0;lp z*Bb>18C4esaE6BSd71{bt~O^@KUXdIg|lRqEvtrzA>#b`)6_kJ2gGfxsjYQX%4w(p z;6}*Z*cgqD9!W(G8m8Tv`XJz~clhb4A3r=1vJ8@y9Rmc$-vK&=RahIo8=`TL(m@f$ z==M zednYu*7b7Bqlc4sT3%zTRo)HYo-~?a-@cD*Nql%SfLPshjiUw)v?!uA5cGR0PU>PIni+XKlOXgqR%%@q-e-Z65>-QC-YD;SaoU@0KRX)GNzvk)3Fui;2UM@QKF zIPnwNes(o4w@j{wr*XR_VagiTI=79ltfk1>{y+af^qR>QWCn2IKp+werl0`Gx3DGf z&Y#aLRY4kfh9p5BaPn8bCG8$G(g}SfSu8JNXeF(5>v%17H9fSmlf}HH(MwCxXJmtDw$D1pCVY zAEYBvVU3n-o%SAVhH!f1MK9uUuQ-5Y70aq}h3J@B?pCEF#iJ3@Magw>-okqaAV@ugUSI&OU``ss*}F|YS8nh&MlYk z;4=%}&|DDQdf*56wlU5=FVnSlrsp-SDosdW0sFaoTUd(-zAJ`=ES8fqkk%DBi8`4w znw+beleA~zj3LV@7?fjBvQxZiIIZCZ1>Xji0V6`_HqdBpl-U@R7Xn6cOFG3uN+kVWCj>p1{DGl0(x&j|e+u2dm`Fam?mwfgHl1dtiX)-kxVl3ZXih zno|(R=!&oeu;rZqleEpv&2xRQ&d3{tT8^e6qM@frB)G4ko*H}c=uyi0Vaq3EiEOHv z@aqb^dS8na1JXo442i{6bmmmguYjSHL>xQ2aNyOV1^Dwc%j8BzMn+R-@Hlx3()KTN?M^c)8^uRS4?YWNrlQxf2!c%xdHG#H@tG{d6<14F|eFT!_A6g9dpTSR+f zoQSjn&lwE5qFK0TKRQt~GZ^UE2!|uA9z^aEx3ejqKngGufDtW?x`)9a2oVzl1R5 zbAUG}u%yXLA=ti3aFCw^!0sH<2||X2W_Nq8G*?b9$7sCOvHBnQc0;%wH2 zoRB5+tozZEv>3UeXc%&kVUPJEL82F)#nozV25HSi#b6BshKmVJSKeyZk&V&@HTE|m zJdgxH!mTolaK)L!E>oE0A#J)f-2RUF%c6EU^`?9^uTS+OcQ1U-4^7DbWmK7(j;h2K zJOzc1L7%4p3M}ghvcWp{8ye_fYYM;-M+QwSu~i{melj^IJ@9{%T>>lwWvbc)prV)V z0u92>0K~qhz6+qLUTNEw#VgtzfOF_cStX54bPe$Cqp3Cjoi*l6k%fUU*a#{|6NS=F4P9saz^Z%4pl| z(PpjN_i|L#<#`#iFx+#7D;j1Yp@6nr`8@c8%Lv-l#1mtW!&_HWKi+{K{+$*xuP?&OtMT?SXL$w~1?~#gpx9B-z3ETz$-K~N0(lqEZb}@KE8&NE04G#h^9YzqPgvHv(|n`JS@+A z=S-uprw5#5GmGq|Ie=bZoPz$g|HgV;oj0z|D!cYfYbKi0QA--R2%E;L1Fa-G&wAo? zKz**IbAF`mT9&pg4Ey4#Q5lM+RT;f&(mXA%DxQr-_z`w0ni@xe*3bGS@U*Q~(!OVJ zZ0yv|{M3}ESVh$G1Jy~{ac#!EJ-0mKmd={U(ycUXioEW;$hXKYFaKP|;rfCT3A3mo zKo+nscz)0s=K|(?>eP>5FFQ7;&Oirs49v*WQ1~D^8gY|5`W4Ok6YO10wcW#gKEwW$w>at2ak%*zXJ_8 zMSx)|VZVB!Em~y<=gWfo4K0BjK21rrXl-Z&0GKQr*dgF~DX|JEq!qCOD`LRN8aF;N zM|RmVq2xE>O(=GTuzaa-2?`2=db$EUcjb&sqopkg{7&Yw>bp4xVDzbwIJfRJN*2uQ z>_p}glJEKSS770?DcrOWv`tsP_BAc>xkXGBpD-pOJcKO4eJ2NBWD%P37z432*bjh+ z4?mijRSM`H7fyzMy@$8hXJ z&>{@gkxFTTo=~a0$86&=#LORqPs!TO z?uPLke?^rC7t_4z^g(3daO^{*yJ_(H|7|SP)6r%69 zg){*Zo$^O|-4G&EjiQCNgL8CZ>ddiYWkVIREA)nmAC(-EC^`J$6?>12zDjIr3-L1#T9F%VWr_>O1n+rE=Siqn`8qz0W`{A@_Gn0Q3vL{H}(o>A3lt9anw;W$;BBRl8#YPGBT!a#7J|?sUq<1C#A2Bv!docZ9HJDwSg@90V3s{Lb`s3uHKV}- ztzsgfeSMC96&|E?0kxZ}J@p$}4|3+Ac=Nc^gPEFfLQ$KoR*J0mX2M25GzcVb#c*tL zv6Gs_<>XHaDEt{7QNZ8K!UG^lq7MGp%DO*!nN zyl4IWX+j6p#u&3_wB1Z;3Z4km;ri0YXd)%rs|1Ln?w!NFh&#Xh#KbWYpkQbDc*z!k zwQv+(8KgO($e~2!PN3gZ8Iny6Wi|Gx+a{XRnFofCXHP-^k4;-Dl8}iOEx}MTgb%KU z$OtbsDH%!f0A2kn!-Y_xfwxYC$7JZ+H*LtRczJmlc;g`d3_d0;Y5rfnk&lT6)4)F2WUMxl^X&~<4MG7b?T6SzxP;^*l zZ{cQMq-O*o4S*4mhL*7ry(0uo5tuba^UeSSA|(ZKeXd)3?v0cW1ARyN&JUyV zOoPG#52OkXcZz2@@|%}0^6f=$)+8A~#yoQr*)cc=`z}4~z?J))oHDQ6YD)u%geD5` zqiOD{F}&0?0TqN6oYF=Y2D`f0*REX)vWX;b=vHp$%{W10#%wJt&msF{Am0M z@n1l!cQC&a-dT-C*CMms=Wz}6qq7kEJa#txL_YYh9foIqOZoLxh_mcO;Y0=?sO?B( z0Hh=K33P*``~s+6(>=lwo?lR4ynZ+txH1s3vw#QCB15yz4$&li|2J>$zp}Z3-ki{%Qo&}z~uhcz$P1T`1=;tULuVpjugq^v4He&m9!H6b-B$^+2Z_aA{w+RM{= z0_XHSbgVp(Igr(vMDoz&L;`AsrVrqBf!7rzEv{R)j?8qp2D@dUfb1qwJNRP&Tr60P zu+7<6olMTm?(;c(ISgPzF@q^;6ow222p>e4ZB|uBe}4!v5k^11TYx2e40~h)Qt}5k z2;;u8RgGOnZHKX$+amB8kQEWJh&^l}hC$$@n>o;uyMG5zkCpvO1bsp}-+>S$aFo4L zZ}CfDz$Nsi&htElH&e{9ot+qztdJ9ij0gj`LYE?jMjw5!Cg5uHxL^5~;X%pY{v{28 z;(}SiOg$B>JTwN>6@5E&$8v?QaIj!wCcOiNHUEVwuwcZsCM?NEgSDEl=w7cprxz=hgz3>yu=jife(Cudk z)>^WBIUkWs_*ID3zTy22^g5>2K12gUn-X9TSP(;m(k^)W_|Of7xnR#Y#f{RQPf!AU z+nP`+(&z~kcO*R9gsq$9dQ-d{?(_1TUk8hS%}2sW{IL(5R0bg8SzK#}hK9dRBIFu2 z9Gm*&;0eOAp=Ok67W;;S0*Hqn=tJU-_bJbV1)tJV2Vg>30EB|_(wCU-_zl^tJHf936c>)tTk}R{q*3`{x-)l=K}}e zX{e-?aLJmrLgzK6MFO_0fb10lV$Sy)gj9)KhZP3Uo7}-uQb#j36w2fnXiU;Eq*S z4G~kvhY#XMj%mptu!!bh0gwpA<^Z^$1IKcA9edu7{Kag0|%oK6P@p&7*VqV5EOaTcr-$*4j0Okt1|kc5rcWHiG=Ywp5R zNPbl}$-M_ib&M=lkzWG*1@DTOPXw2}5I`mh+GIrL%vNDakD&x33XH=+|? zM4QHdB3l{7G^TMI4%7#R8e>DO<8r8NZK0>I;XqkX;M2LW?yCqJMvh}u@#j)*!fTeR$Z`Uj2y_Kj+71S3_{kfck)5l9&e;Fd-&*AfEE}1o!4ZCl-35A3-&;4I}T- z8gV{g^DF7bfi@b6wDzRp8pc>+#L+&@lHO)Nb_{mV#If7IW^=T=h>L%DG`pFB_D2|# z5M@yKFy}7){@!U5u$OmK$q}&=T=2y_%zeH-gqnCbKyeb*Z+(MJw50V!NXVcvU*tG| zfxXkGPv3=Z;1D8AmVIE2pRs#8eLb1!l zLMe1ktl(W=-sisN_J)2o-M;xuqv-|Pb$y{- zL36IPj*y1hqtuZ2%UZy988m#e7gPv;_$|-FmoL22iTx@pXMXax8ua)f*SksS1V!+Q z%(1z=2ib4Pmnzee-G*~Q92E+rm?DHn6f+#tvos6ZE|+CE76XU#Dkdd_FxAL-lP1ET2v4Tv4lTSL=@>@Rn)h26M!%g#UJ8*7OcaD}>Tn7{O z_ImQ<{4zdTEZb+Xz`p%A*FAqh=A$ZS_phP(s{o)0PzRL3ck}gy9iQ!w`!>)+TR;!( zq?27*aCX+Ov%%R)AV#T^V=$0Np0dym?XZJl>{zixd%K)j)UPJm5^B5^e61N++fyN3 zIM7}&9Xl4^+IhK#NVY%>A%-F>09f$=VEdyPK{W$;t3GV08SHCpkL)yRde^KlF=nGD zXsg}XXFqszTznO{)d&4>z?B&gIMy)*aFrNJN&-P4 zm}#}Yu0o79pe0Do*-kLk=Nz!yY#4TFy_vjRz%V?!Z76nnG zKiC9e*#BrVd@_HEFO7(!!9Ms$kn@o5jru;=m<6#h=I$Lh*_jt+Iq*d}`a1>^MqatH zL}&L8NyDG_A;cBca=3`vM`?={^Hp(~=WBfmvgRR#ZhwGHlyM4k7zH44+_-Dk#hS=D zWoSbQW2UnTH68F9nl4TUpiO|*-cc15)+7lD_LXZa+J6|ur1uVs&M{B;%qM)QG23Bx zmcu+>YCJVGH66T5WD&1ONcH>ff@J5P&f%P)s02~TroE;|&Ih%Ma30O_q0>W4Ybs+Q z&KA0Jn3#d<=erw3Zcp56={Xz zl#;?|MkaD=sAHis8ktTx>MM_-8)RCO!M~9zjm042$JxnjHq&GaPi5Q!V9CSLN?_EZ=o&{TZG zjf2OrIADNvBQ!UJPlG2{myHP)mWu4PWvx)?TORGHWL*onPU{KfYAV@QR1VbU?hK>kUEA#U8=o4*ttO|OufgGr+XsLPM$MV>pz;EOdSbD+=L+MXs zI~)+Rpwht!TR|ZWv9SS&mZgafV9a05Gk1pR@FC2O==On_1mLz1g@_Yd#u6|5)V1p_ zpxs_TuMyubp;^NFo`ISr*$!T%_Sf18dUd)F{c zeJ#6q41Na_sTC$Xfdy_;DAf^w9fBgCuNaRTwj1<$nNcI1ot?wj_WP0#;IF)xN!Oyo z3tffKTK2?MP`EI!Xm8iuz(vff1w*$k9JC<-N;b@Rq|FLDJ=7JXG{SxgX(Ijw{ls;q z;$XtpHY+O&BPke+9>mYm+)LOa(ewidLEgihN$@HFf2MRt7}OK&lg4rBg^&k8@B&)v zz*ucvohIZ}(C>}%BQa$b7AZmI@V9Rr?*noQNfkacEp|0-;3&~)s8=*ddPvGWNlB9W zQSbzCDF}z!Ri7b89P%!j#F?9$>n1?R!~Yw6=ZWofWmU$44aTZAIS!sr35WmVm^O_ga6T zQ5^z-_k)Ae@pjU{xMjnDsK~~PQIQ8%@poaHr0G|1QDT`B)3NxR>*2%dyLJf^Hi|S~ zyeH+j!ezr)FT)X#3;DHfBFLzBC;VC@{X=<%RF)vo@GXQqLVE*oaWH|brKJ}4>X6C` zxgF&a&?p?jQSglbLGUlP`3fMLd{uxT30kJ<-WaL0?6>G>smrFvjl{KO|*kx&DhLKn)A+5Fon0 zpDU$6NDr*O)*$V`U$YNgORhw%i81dy$iWMqdz~dcJG&ZIoMA}7ZSV~7Tc$EVD%rxD zbqt{p$gh@giv}DplL_2KK3);cj_};66t_W2SjfEq!#z6uTr~g!>kd#2vzN--lD`KN z({5#tm* z3Z3Y3AE6>3(7?^T$_bJjQn+Ah9?jB56t)!@aU$3eP1@Q4v}?xXOP9=suA4bb0gM-l zY-;3BP7HI9CvElW)q$e%k0}b9Xqcb>tfeJ{jTH_&cNHxKDjAImZQ~0#}Y~! z350k62Co80gd~?mN9<3d+q4O&4~01k5r(8XrEA)^58gq3*cMShBBf{YY3f*!IhZW# zuzWG6TitV$S}>l@fqX>BV(6*T2y*L(XZM{;#Ukjex&VDjpw33p_mkxve~oZ99OHLe z#pba4gtd`+1B-nKW@{3QQ<5(QOq_IqbfZe6Sn_V(q_wxNa|Lg|N_uyY{d>3K99 zsFDb1qsjm@tI%4IZ2Sma!gi&>x&}P~m{tX_Hkb*nQ-4Q_KWL<>`KRcsTMloWMYA(b z=sw#t4cyv8Fqvo-xhW|U9<*7>Xnpx-{{56!@Ln+9hbh11b+3he&6kLLQ@LVSv(Dd_ z4!UIjwOo6x5Dgzv3mqFacql(lBdapS5!orEqq**mI!RbM* z^Z01^1?BI$g@s4HWIGm1e=Rij&-mWfwj=GkX%uP|%79=DVc6W{lc2Gw_+dey+Vrup zF-i!BWk>?tYdR<$z#eKi6p?j%dd=aFfuj8QjWl13{>In;)#UcMM{aS}kvxCIvZ@Cq zmN4dcL&sW=;osOTE9{^90UGTTVJ<}#n&i6f%hMI)aK!4kjUf)*5~`b(XUtz0C}eSr z1!U4RF0O|(T)4MahBQEuypt8d3t!rHK%`KX0^V3cJUaowt!Ql!uDXefhAo#STj@c1 zNnS>I`S8a`d7CvEP!kzWVMG+=h>gn?tAj2=7^E5w&4oworNIb_pi>LLIQ7!sKb*k3 z+X9utY384qnaSLT%2!Y3jm@MTAAq$e^gWDIFquQwG7lxUxb{A85G1#Wt%bk}SOhi` z>V^qd0}~P?Iv?*b4UfZ*CrGR_G&hZ)V#v~17;IB{m~LS>e%%^Rap5Q>Qj~0G7?V~3 z=nR)r0s9-#XE_y+Wr$AFH9F79u`~Y9fHOr&e|~%fo@8(cxT^zP&Q582 z2+TmBau&FH4!9ywlmWCd3bi3B8!uvyCM)Q9EAC?=WC=ynva$5t4A2LCeEI6Vt$RgMq7? z96UWci=u(^ilA-yz~e7Li>yF%$$R(i?YPJVT*1yRt`~Cvc-;wbd*uJ@_jz%CoQDk> z;uqCCO-^1GD6#3FNva~ZbZY9!{o35GR6K*F-biRpo;b<#$c5dP3;QlxF2DDvc6VLr z`gzrb`t#SlTmGD#t(kG%_1Ax6LPJev`nggs%r1d(@&fHmN$p3 zZY|r*>wCFi_uY5T<@(uw*2t||RojdM4fU3>8ea1Bl#)cl=q%ewQncgL-7uiM}Mu%P4c z!w=E(&p&V0IXxj&5_n?yCLQNVDjkbBJSPDU>r&u2w7gwr`DM;&sfk;o4sOy}b3I#U zy7!sqpQ~ps>rB6XF2$&`XlD-)c`a=UTFJ8g_TQDjTd*#EKfnNLYrN<#lwqHIl4bEl zj$P~SZxCHqz;yTYs(OJv`7vM?gqS!829dOqm8HdC(L^zz-+zc}Nd8zu31g2#WAspXcQ0T?MVyfYp^OWRzjbO3GpgMP)cdNkv{<87Yr|t0+iH zh$$%{p(+rltc)^LQbGZNKq3(ea0Mj#WQv-|x z*u(+~f`Om_2wns{2IWpm?KEs>ho-Z&wX>Zir$3hmieOTM)Kk*SfuRs6EbK8WD{Ji0 zZTP?!5-JEupVQtsT515juam#x=tV%`34VBt11&X#mYR=GSyzRY`Wv>O7B=XzNpirVkkub0!NDTUm!nU@yWO=nT=S~`2438lt^$UY((FoIUQabpu zLLdcCU{qmjCmWg@a*g*CWQ3>h6w=24Y~KZc&QPqTo3S2~0GfLNw%_@#hjPSdq3kejKnr|#$ZnHA&YJ+%#bS0T3MMuZhro7cIb-ZG zUsWJ#gFyr5im1*%DlQBBfDHk~>SE97R0NLjmV!LDX7IQcM&E10fMGD`3lLXVjlMfKvwu_`V4Pj2F%uZ;v4! zL}fpMsv!Y5Y`|w#LkPh99W00^5m**zG%_MK?(W{m2nu{AIt~M%9iTp97fT}}IPiH# zIbfn59%pZeAy|L`Xuw7oKLT(-fU`tg1hCRB47(Z;t!9L>^8y?0o+={NKZ8Jo=qm_+ z@Cz!=crOA-0{)HS;$mWepOV}arEBM6NO1p|=yj>?xJ(FLOMRRT7HlAgvM(q$=oT9+ zsJNj~u2a0(sCl0}_9Xf3-jGilG|xfWccZlo39miBJdz#DIlz8MiSE2$(kQFlKHqE} zp_J7_1{%nvbMRTR*z2Q-`|Xq%$k?J-F=Uss$4dHUu03}hkI+=|l)~bAG?jFy9^IX; zc*vsr!QQ1ptlCmyvp*xy$Ff5km8c;o+c&4nZy_v_cbabNA)@ zsq$TFh~f(Q_;$#m`rc=crAGOo*M&v&4uj3%KB53l3K67;T~n^?KJ~?FqI+ zk<^0F*pmq|!^j-)mzN34MT{){4Vm+%PXsmukKeLQ-VR>f=DEkAII2kH+;;6Y4}O9D z+VJQLOMmQBGD6!sp4qIB>XMO0`BQfe@o^4tr=1=k3P2S=jF*sz|^*1HKmaY7-nV&hLJ@W;->h{`8DKS@5o)+=J%u_ ziKC{GT9%ffGDh1mNMZcLZw@QzT&2ExWf(_BxmNb@ptHf@b_dSDY|pIHGYqo$HJ&%T z?6+78RLgnZ41gKUuW*?yUeR+h^Er8R1QI|+dGK{XWrb*sY;xw!+vS4G#uUEnMt4F!aJqZJiOjv#9o@|JmEKj z*}OCCM|kJULPWT4^TPdfr(Qg~B$YhwHm;cQb}}|Q(L4fjHoX|5Ax*PNsW zj3egZk}*HjGO>M&NmdntbKBpNn?q{bGUi8Ro-?O@LvTx~MZbTXu9fVBgb^pZP@PEh z{3}@6>EQM!4|!udBKH{Dh&<3}i=+7P;>ooA08XPeK}T6y5C|Bb#CC5;T`|RJi{O(WAB?5meJKG4tQTSREP=4 z=&zP@u9fR!4JN0sQ-7^UQ{uMt8R?)7mMk&iudwg3DJ8q>*lkAv4{b3U`vA#j&W!I% zHuu?V7RK*gvEk42a z)!(wtU`n`p1lrf7>JwMn5^7268zO)iAdQ8Q?V|5 zNoU$vM+dR;hx&ASb}k6_Oe*<;BR=lk>Nd+ydn0#NOZLV4J`9WNvF4n8y^`4b$bxY# z$XMlI`eCfChlQ!W7$joSWg=hTnA{t>9M-N{j>8;l+p)6;`Q9Bt^BvKs^@;WOpq6@{ zyN|%jazn#mGs?;V-O83G?4r(aWV4XU^W1D@H%)zGuRM{?#4Mq-zt~cA(lx0N4 znA;g*{YAjjnW9JZkVhus3#fzlq?mp5C^+W((Vs#*$jdz!JcFlj(Hzp3d-M zm5rATgP%HFltcZ4qAVJ59{UsMn**_Bl>Ge%-_u*xiIG-j3WfO(`ptB8xw%PI-8_taNzn zlG;}685IG=!4%TXT-94`&Nk1CI}BRySG%G*x%M8mq}KLCsu`SPpB~Mn5%xHFTsap|1F^3{lD)2 zJf4UCLp)F1>wg*Ez#wqs&*4phi7Rffnf~*l4U{S_LRk0`&On>tWZBEdEb*?dv<5&z z5f#-*>3RhXR{e)W7enjewLvrT{O)9r#tdF8KF#uSK(2C2O4f#tgh&Slhxn6<%Y<%^ zjdAKcw;t{C{MTs7_%?D}MTXPe3wn{09ZIcqswyNu>pO z*I{3gYhpRVlBNAgPcy^IU@a72c1mW4GtFk%X$cL6b*(d+g42b#Fe8r1=*jY&Ba4TR z>d3?1u~o4MrL54P_pbH$cMmS+M_2_1Y3 zl~9d8n(^{rRqdX2(YKW&O^|Ksx0UuA*s}qtBFuGUr~q`Y7~|_bN`b)dEtJB1`V8d5 zty1xRvxy3!Q=Uz4iW%vjP8iA^jkk{)r_iLeGgFVIH@mB09=6g?mQ2q_!eG{Yko<|k z<+|G+6;EN69z>;d+>N*<^&nBU+~LvzQRzaiXHQHW{07c3l?tyiKEB!3OE1xJ0mmqR z^}zIFo@6sKn&ruZ@5Bn}7Epx>BX`HDqZf481YR;I#fV4PJE%}Xq(Z=ASag4jcmcn9 zg9?bz?wKQ7y9L&#_^hE9Jf0mp3LlZZXnZUs1>XIFIsQN>Um^xh$Wx@T?z=1-~ia!us+JJ0M# zCytT1HmJDVs5aV1NrNp7sB6@!4&NwD502_7eK?4f)C!S=2HcAs7@^;9rBBEU7z`X| zYT?Y4q2nvYVx+`tP9J#()*7}&|r(XA{Zg8?-t}^~S)A;zMWzfp4T zh;-UBIaaw_bY+L+r`Rq0be1|C*TTC7#7~sIna-)GU%naW5(Zi7fTJ;2Z zNZ-%o*Zs6-Wt|MaC7$bn%$wR=@xfnC=Lwp$3u070oF55&(4{L{a?zBt86WuX{l{IA#5n9PQ)znvu!Us-@CC=Tg!{uy#?Iu5>a`=y2UqI9Kfv`R+aJKp8kLgv@v?(FH=Bb~QL&G-Bo_DsE% z630W`5~j(twJWEVM#pOy<1jS`NTs&p@AL}Nz}41Ci__n-j8is9}8Pqks zc{f8c?tH@jQ(a<{#U!#t#%gnMJ}b&9gKc&vQ-*ypiB&nuI-Sj|!G(qkSJP zG8}zS^M%(J6e^_XM#qA+^6fdVyqw?)NZ{~6*H^1wZbjc83h9@gO)J~S)uJsOe|$*t zp8o3tI?WqH?q6EpcnSgn*X?AVRCCM0mD;ZIL0UGSPcqZ97cbdmXWNCI zcQ0GqE)_5qDbKaAmJ9DMEbe5Be`MNMM|oM@cuKY6+2zHcPy@-V{DpWlVS<^Ni8dBVYFjgQ+7E4zrOq$Ae^c4DHT{S93@|@|ia}F44&{h;wXQZ_X)XxWT`)9c>(8vS(_H zbjVk2;C_woSSNL3GiwrMsLP};g?=)E<+;XbX2*hiV+QmekwuG#23CBLSCT%=n=jSE z?v8R+oNatob$G&4HRLsoUfhb-?AC?HotH9*T?y_$7_l+t81 z8(ZY1^~%dXx4szmB2Fc;%BvwV^p2Vo17_ad{nqtAo!;^Haw3Z!zy< zeboKLhvJaEX_;(byHP?G+1B&ST%pr<=Xn}P zrY@=k{sEAmp5A;9CU=9k|ASz1CnNkXW`1G+5GfKj^7q#Mnh1ma{2W6qR;g3pwGl!` zxx5|{_r;#fHPF*snvSa+ChkFVQR3av$|^BE3#YqrBOxYH>Y#OjHzBHb%Jes5UmhF6 zjZo9|&S{q^r#uKb6cR01anaVco=4-1V5G<)-L9v$;0u@0>ShK>j;0PNta*;Fya;++ zLGqIkiZAExt?;bx(NNcEQK>*eEva-4v|T!0{h=7nv}HD}fgPY`2`*n+f4E`49K;@^ z_rO`NHt~>)b8>Vt4dA+!x)nCjRk$EeZnIY&Y(66|^Vl4r*PT>A`DNIxyO7@JPHjfUkX}5MdC5DS z^ve0vCJPbeDk-zB)+vKG`7WDjMmS5&3S*V#nv{W8pH-bwAT(`?uIwU|gRV-3jsZ=M zP^jSeM{(H&UnkG2EtM<#!nn-Z(>|w5x9=CwM7llppMtdGXLw@|j_HhEh&^OVnkHRJ zmdsLgkbVf?9CR{OKMvm#8Q?>a)~FphT+hF9Ey$BMltU!Y^UlQRVXySb`=lrXBfk?{ zjO9RLKl9{4>z=TLXHx)UOh z(w(T!dqUk+ox*_CNF@s@q&^Qfh@;s)&Tr2tqqb1utWcyXq$q32;DMfN^6=TS2~ zmr=>qg7E2cytFb2P3(Td{x#LCmbZM`$@C-VHXJM-XTfXO>Ml3k15fwZ%mponm}|~)&Ln#?-u)(ym4iKY#`^Hg{k;V}Pk6-*!F)zGqQ2WlhklA9J~Nl&Je_(d*z( zm$3ivNSdN*Sn|F-wXRtjx8J5TuHIFn7d;VKaN&wK|72XHstMsnRLv*P)0M4F^LiB* zOfAi?-}M>wz85v_S<(1D|Jod@qr66r8{zWORikObDD!)cv8SBx)jHV(_z>(ij`!&a zeYg3j#>2}RUP_AV6j|XroO^Ol1;3czUVR~TMIydqMkNrRwasKplCBHV_yha@`ANj? z?N%Hq@s0gZ7*Z0TKN6@B`137yK200PC`lLnMMM2{mDMC}pEC6$6_BiQ#0NT0)+GLO z;!n>>U1r+)6g)I}`gFzx=$rBZMFaQRt(1kT;=yrlHhkwsC? z!|V7e-CCu`8dyJ+M)-u$W(4uZXS7D9hAp!(uSOhw?r}iNj>eGAlt6LTmSX$>vpk(X zQh+*KDJ!221>d5Ntw^L(aKkgw#@^LBB*Vg>yjb%L2lh#L+{5%nb^?YZ+HiNo6n#?^< z^V#3iLQ>CpTr#sQyGLVf=15U;li{daY3b-*Vg5)KKDzh@74p_mzO#xFB>Xp%%G4as z85fy)3_F38{5>Yf&)Sc_BOyqdIa+zfPrRPUdg4Eo$A2VFhGsG{?3^`=N9R+JDg`Cw zlmft#{6yQbx$5BqzUJ|V4T3^dv|rCsp-Z>4f@s<-=VWfRg-TPf@adj zyE@nTqHybVi}mr~O&q$`_r~gjrz!y~Y5BOh2hyA|?a8f6LoQ;A3rE}DAZ@ar$MlTT zv&ZvwpkxUN4j=ThgXd$;CU-m<>-nhGwt23*lBTU-^l;<{7mv7&v1&Do2qw(S8kgXT zD+8wP#iv-zc#Yd%o;qUk^ObG%+a=iH+S7NjG4f7iUSv{aL?k}aF47>vl}{#2Uf$mgB0o zZz-~tb91p{@-1HM!_eHy63M=he6gqXYePLvazm?=8+QF%A=&wyvvm?__HXA7^sQoi zT_=i>HC0y$%%STy+RJLJLh6ug%yV;7H3gs6IT1;87iGJ^G z-ur3NSuV(?sd8*C`(1C%Ty|@3(p+}`{rg{Bt_CBw>tFbQ#j-B;vd1~pKX~)*1oZ0K ztidgX%SNU6(p14rkUGCi`Mn9D1gnyDxT6VFzDZWd>&Ez2+CHa&B|a!)F$E z7Z#Tn9dj?%`0GcPL8A)y;sJ4E_srtniu+Z!M&37xa9nA`UisK2x5yqRp-}PG-D|vM zuCKo3wsufe+a&)&}r{&M+_r}3RP2cUDW&vSHJ zF%Q3wxRB9$+zV8N%!h`*OwjXAF?%jhd#jum&~*u z8jN3=RtXiqRf`H~@G%`|d{+5|Vz{p0vl|nBBz0liaOD=mrR3A&isC5)F7B(xsx*y< z{L5-XeH#zHx~%3^9fOW3cOd@GryQ>T)bjDRO=jp`R+6<4+VMYl+MlX<{x(#DelKxA zhy!jGh@AiIWnl<$J%}CzA#MbL>6Mmstsj3T5+6;)DoEZm&`;VF@!o2Fo&<;*@9p3B zC#SztDDyS!{#FkKLr8)Rz3m7)HBZ`FyDNVyt@)9sm67uUDsfyf1dtuZ(HVP!d#Sdb z8{~{W!EGX@4bk>c#5g&t1>iA;0XjzZ0j~CvXl^-KY8gK%KX(szpil?o=kA8}lJYyj zjRK0vFjBy0Vl$W>+37(3m3)V z9l=mZNl7pS28O{zfDs~I{#XLaPXz15vn%AA93_mGJ>J=a;Ecn9h;mVOK;h5{Ztm~J zTEw-#?#tcd`$AYR(Vabt+T+~8ekczxR1^aKE}1ACz(h(Bs3!vo;DCR!#3CpW2vP(F zF@lOoAtZo}9f!cAAP^bwZzF%K{6hu~Z-m3S$;#W~ads#I2q?+XM!8~uVmpW^1my6j z4i7TH;n6>d`a0n^Svy5p{(sg70r^>gW zAhv5_{Cxquy};jf|95Q)ZU3EO9^QDj9VVmg!5BA;JF$2S*cbHIeWC589B_Dd6hRi{ z;o;_Nk0LUesJsmLN7qm41C91XR^ssAbSD!0>!C8lc>db@t;5Y(*3cQR2vmRJF}nr? zT7F0+4%|!43191R^iw-3Y(7{?LGU3Z>joSjQ9Gej;d$1IpWt zz%6UwAAoZQ>A9i&0V~SeJ2_)~cA@$wHGf@YN6p_AA}Wdg;TwKcYR3cpDg@B;zfko% zS-uY40qj>HJDU7q)qmTW0bGr?_IHN;a%#RgF?aW03AQsuN(pE0O=O_DlB~D4Gg=C$ z(nF$vB1#bi6m2Jha6pKOAQ1?Z2oi&Yqs8H9C|W{%#~o>F|2+2xWr)5F=u^i6m9ki% z81t)Kj3g9^KuL&+U@#asAY9T;1SyF`il7jZ;ur`_%mI#){3iFOxqp%C*NNYh_-&zoo27sg4BSV*-qwCG6tU-z{>@KH5$EoK!urb^ z8G}rmF<6iY$dKTT2F!-R`T%9NfM?k8Yd;45gd0&TQNXUB`HAl`J3WRwwWi;ydS!pA z>V+d95Q(pHe;f5x{GUPDZ3XV*KnMZ;9z*=J@UCtCSN{Ik_y3CcU7`P3K|DM;9aT{+`d4L;SU)XDD)qnE`CjJe@ktP zA^+)7GLUgGfDltHzR$tWj_X5u*Pm+%#fu}v_ry^Mu|}vf(6Qa%GBCSP%yl6>+uY5O zlFpVSRQCYzrr2NJ`-1*+dE9Sm!QlU>ms_W<=A)BzdzVY@RAK3!O(ZB4Fe*f{2$37U zy_)9kqhXSKIK$0+%yE6xH15MF#vhU}5~+PhEBsQ&IG%>mZU|{@06C{$SMWfUiy}Cl zt64YTbFuh=`!&YethYG3xDqKaLdK&KGkAYllUzAo(ZkADziDXp{OU!W zN8)i~(JEMdqbgsgl73-I!2-zQa49Y9zRwlK&#+*FlG*24+!q%fzB$w(#~{Ky0%Wot zFrdZ%gym1=0{>sUclg&g4J9Fedc6>i*v+v0!|R14Wc(`I4ix+pDxkCBk0>6~lOOVx zKfULIEuMn@>6b8aS7x=F9BNdul=L(`@|Ik=qympmS~}1@q~c~}rQ~_|(Wz6)J%wb< h8^YWZ>Y+deyoi_;y`SR`ApZ0sA`}Xs{Pk7D{|5$?>?Z&K literal 0 HcmV?d00001 diff --git a/code/web/app/app_achievements/_doc/app_achievements.sql b/code/web/app/app_achievements/_doc/app_achievements.sql index 15d92eb41..572dc9d55 100644 --- a/code/web/app/app_achievements/_doc/app_achievements.sql +++ b/code/web/app/app_achievements/_doc/app_achievements.sql @@ -1,13 +1,14 @@ -- phpMyAdmin SQL Dump --- version 3.3.3 +-- version 3.5.1 -- http://www.phpmyadmin.net -- -- Host: localhost --- Erstellungszeit: 27. Mai 2012 um 21:05 --- Server Version: 5.1.46 --- PHP-Version: 5.3.2 +-- Generation Time: Aug 20, 2012 at 01:48 PM +-- Server version: 5.5.24-log +-- PHP Version: 5.4.3 SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; +SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; @@ -16,13 +17,13 @@ SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; /*!40101 SET NAMES utf8 */; -- --- Datenbank: `app_achievements` +-- Database: `app_achievements_test` -- -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_achievement` +-- Table structure for table `ach_achievement` -- CREATE TABLE IF NOT EXISTS `ach_achievement` ( @@ -33,26 +34,29 @@ CREATE TABLE IF NOT EXISTS `ach_achievement` ( `aa_tie_cult` varchar(64) COLLATE utf8_bin DEFAULT NULL, `aa_tie_civ` varchar(64) COLLATE utf8_bin DEFAULT NULL, `aa_image` varchar(64) COLLATE utf8_bin NOT NULL, + `aa_dev` tinyint(1) unsigned NOT NULL DEFAULT '0', + `aa_sticky` tinyint(1) unsigned NOT NULL, PRIMARY KEY (`aa_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=5 ; +) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=346 ; -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_achievement_lang` +-- Table structure for table `ach_achievement_lang` -- CREATE TABLE IF NOT EXISTS `ach_achievement_lang` ( `aal_achievement` bigint(20) unsigned NOT NULL, `aal_lang` varchar(2) COLLATE utf8_bin NOT NULL, `aal_name` varchar(255) COLLATE utf8_bin NOT NULL, + `aal_template` varchar(255) COLLATE utf8_bin DEFAULT NULL, PRIMARY KEY (`aal_achievement`,`aal_lang`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin; -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_atom` +-- Table structure for table `ach_atom` -- CREATE TABLE IF NOT EXISTS `ach_atom` ( @@ -60,28 +64,30 @@ CREATE TABLE IF NOT EXISTS `ach_atom` ( `atom_objective` bigint(20) unsigned NOT NULL, `atom_mandatory` tinyint(1) unsigned NOT NULL, `atom_ruleset` blob NOT NULL, - `atom_primary` tinyint(1) unsigned NOT NULL, + `atom_ruleset_parsed` blob NOT NULL, PRIMARY KEY (`atom_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=2 ; +) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=25 ; -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_category` +-- Table structure for table `ach_category` -- CREATE TABLE IF NOT EXISTS `ach_category` ( `ac_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `ac_parent` bigint(20) unsigned DEFAULT NULL, `ac_order` smallint(5) unsigned NOT NULL, - `ac_image` varchar(64) COLLATE utf8_bin NOT NULL, + `ac_image` varchar(64) COLLATE utf8_bin DEFAULT NULL, + `ac_dev` tinyint(1) unsigned NOT NULL DEFAULT '0', + `ac_heroic` tinyint(1) unsigned NOT NULL, PRIMARY KEY (`ac_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=6 ; +) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=50 ; -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_category_lang` +-- Table structure for table `ach_category_lang` -- CREATE TABLE IF NOT EXISTS `ach_category_lang` ( @@ -94,77 +100,66 @@ CREATE TABLE IF NOT EXISTS `ach_category_lang` ( -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_objective` +-- Table structure for table `ach_fb_token` -- -CREATE TABLE IF NOT EXISTS `ach_objective` ( - `ao_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, - `ao_perk` bigint(20) unsigned NOT NULL, - `ao_condition` enum('all','any','value') COLLATE utf8_bin NOT NULL, - `ao_value` int(10) unsigned DEFAULT NULL, - `ao_display` enum('simple','meta','value','hidden') COLLATE utf8_bin NOT NULL DEFAULT 'hidden', - PRIMARY KEY (`ao_id`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=14 ; +CREATE TABLE IF NOT EXISTS `ach_fb_token` ( + `aft_player` bigint(20) unsigned NOT NULL, + `aft_token` varchar(255) NOT NULL, + `aft_date` bigint(20) unsigned NOT NULL, + `aft_allow` tinyint(1) unsigned NOT NULL, + PRIMARY KEY (`aft_player`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_objective_lang` +-- Table structure for table `ach_objective` +-- + +CREATE TABLE IF NOT EXISTS `ach_objective` ( + `ao_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `ao_task` bigint(20) unsigned NOT NULL, + `ao_condition` enum('all','any','value') COLLATE utf8_bin NOT NULL, + `ao_value` bigint(20) unsigned DEFAULT NULL, + `ao_display` enum('simple','meta','value','hidden') COLLATE utf8_bin NOT NULL DEFAULT 'hidden', + `ao_metalink` bigint(20) unsigned DEFAULT NULL, + PRIMARY KEY (`ao_id`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=2026 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `ach_objective_lang` -- CREATE TABLE IF NOT EXISTS `ach_objective_lang` ( `aol_objective` bigint(20) unsigned NOT NULL, `aol_lang` varchar(2) COLLATE utf8_bin NOT NULL, - `aol_name` varchar(255) COLLATE utf8_bin NOT NULL, + `aol_name` varchar(255) COLLATE utf8_bin DEFAULT NULL, PRIMARY KEY (`aol_objective`,`aol_lang`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin; -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_perk` --- - -CREATE TABLE IF NOT EXISTS `ach_perk` ( - `ap_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, - `ap_achievement` bigint(20) unsigned NOT NULL, - `ap_parent` bigint(20) unsigned DEFAULT NULL, - `ap_value` int(10) unsigned NOT NULL, - PRIMARY KEY (`ap_id`), - UNIQUE KEY `ap_parent` (`ap_parent`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=7 ; - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `ach_perk_lang` --- - -CREATE TABLE IF NOT EXISTS `ach_perk_lang` ( - `apl_perk` bigint(20) unsigned NOT NULL, - `apl_lang` varchar(2) COLLATE utf8_bin NOT NULL, - `apl_name` varchar(255) COLLATE utf8_bin NOT NULL, - PRIMARY KEY (`apl_perk`,`apl_lang`) -) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin; - --- -------------------------------------------------------- - --- --- Tabellenstruktur für Tabelle `ach_player_atom` +-- Table structure for table `ach_player_atom` -- CREATE TABLE IF NOT EXISTS `ach_player_atom` ( `apa_atom` bigint(20) unsigned NOT NULL, `apa_player` bigint(20) unsigned NOT NULL, `apa_date` bigint(20) unsigned NOT NULL, - `apa_expire` blob NOT NULL, + `apa_expire` blob, + `apa_state` enum('GRANT','DENY') COLLATE utf8_bin NOT NULL, + `apa_value` bigint(20) unsigned NOT NULL, KEY `apa_atom` (`apa_atom`,`apa_player`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin; -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_player_objective` +-- Table structure for table `ach_player_objective` -- CREATE TABLE IF NOT EXISTS `ach_player_objective` ( @@ -177,20 +172,21 @@ CREATE TABLE IF NOT EXISTS `ach_player_objective` ( -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_player_perk` +-- Table structure for table `ach_player_task` -- -CREATE TABLE IF NOT EXISTS `ach_player_perk` ( - `app_perk` bigint(20) unsigned NOT NULL, - `app_player` bigint(20) unsigned NOT NULL, - `app_date` bigint(20) unsigned NOT NULL, - PRIMARY KEY (`app_perk`,`app_player`) +CREATE TABLE IF NOT EXISTS `ach_player_task` ( + `apt_task` bigint(20) unsigned NOT NULL, + `apt_player` bigint(20) unsigned NOT NULL, + `apt_date` bigint(20) unsigned NOT NULL, + `apt_fb` tinyint(1) unsigned NOT NULL, + PRIMARY KEY (`apt_task`,`apt_player`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin; -- -------------------------------------------------------- -- --- Tabellenstruktur für Tabelle `ach_player_valuecache` +-- Table structure for table `ach_player_valuecache` -- CREATE TABLE IF NOT EXISTS `ach_player_valuecache` ( @@ -200,3 +196,40 @@ CREATE TABLE IF NOT EXISTS `ach_player_valuecache` ( `apv_date` bigint(20) unsigned NOT NULL, PRIMARY KEY (`apv_name`,`apv_player`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `ach_task` +-- + +CREATE TABLE IF NOT EXISTS `ach_task` ( + `at_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, + `at_achievement` bigint(20) unsigned NOT NULL, + `at_parent` bigint(20) unsigned DEFAULT NULL, + `at_value` int(10) unsigned NOT NULL, + `at_condition` enum('all','any','value') COLLATE utf8_bin NOT NULL DEFAULT 'all', + `at_condition_value` int(10) unsigned DEFAULT NULL, + `at_dev` tinyint(1) unsigned NOT NULL DEFAULT '0', + `at_torder` smallint(5) unsigned NOT NULL, + PRIMARY KEY (`at_id`), + UNIQUE KEY `ap_parent` (`at_parent`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=635 ; + +-- -------------------------------------------------------- + +-- +-- Table structure for table `ach_task_lang` +-- + +CREATE TABLE IF NOT EXISTS `ach_task_lang` ( + `atl_task` bigint(20) unsigned NOT NULL, + `atl_lang` varchar(2) COLLATE utf8_bin NOT NULL, + `atl_name` varchar(255) COLLATE utf8_bin NOT NULL, + `atl_template` varchar(255) COLLATE utf8_bin DEFAULT NULL, + PRIMARY KEY (`atl_task`,`atl_lang`) +) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin; + +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; diff --git a/code/web/app/app_achievements/_doc/devshot_005.jpg b/code/web/app/app_achievements/_doc/devshot_005.jpg deleted file mode 100644 index 63fc3380d04c923f20f8ba5d6b88e36df590c7e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33804 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 diff --git a/code/web/app/app_achievements/class/AVLTree_class.php b/code/web/app/app_achievements/class/AVLTree_class.php index 61944bde5..4c751d041 100644 --- a/code/web/app/app_achievements/class/AVLTree_class.php +++ b/code/web/app/app_achievements/class/AVLTree_class.php @@ -29,7 +29,6 @@ } function inorder() { - #echo "
inorder: "; $this->AVLinorder($this->root); } @@ -145,6 +144,7 @@ } private function balance($r) { + #return $r; if($r->bal() == -2) { $lc = $r->getLeft(); if($lc->getHeightLeft() >= $lc->getHeightRight()) { diff --git a/code/web/app/app_achievements/class/AchAchievement_class.php b/code/web/app/app_achievements/class/AchAchievement_class.php index 4de86b646..f4f69e9e2 100644 --- a/code/web/app/app_achievements/class/AchAchievement_class.php +++ b/code/web/app/app_achievements/class/AchAchievement_class.php @@ -37,6 +37,7 @@ protected $image; protected $name; protected $template; + protected $sticky; function AchAchievement($data,$parent) { global $DBc,$_USER; @@ -54,8 +55,9 @@ $this->name = $data['aal_name']; $this->template = $data['aal_template']; $this->dev = $data['aa_dev']; + $this->sticky = $data['aa_sticky']; - $res = $DBc->sqlQuery("SELECT * FROM ach_perk LEFT JOIN (ach_perk_lang) ON (apl_lang='".$_USER->getLang()."' AND apl_perk=ap_id) LEFT JOIN (ach_player_perk) ON (app_perk=ap_id AND app_player='".$_USER->getID()."') WHERE ap_achievement='".$this->id."' ORDER by ap_porder ASC"); + $res = $DBc->sqlQuery("SELECT * FROM ach_task LEFT JOIN (ach_task_lang) ON (atl_lang='".$_USER->getLang()."' AND atl_task=at_id) LEFT JOIN (ach_player_task) ON (apt_task=at_id AND apt_player='".$_USER->getID()."') WHERE at_achievement='".$this->id."' ORDER by at_torder ASC"); $sz = sizeof($res); for($i=0;$i<$sz;$i++) { @@ -70,8 +72,19 @@ } } + function parentDone() { + if($this->parent_id == null) { + return true; + } + else { + $p = $this->parent->getChildDataByID($this->parent_id); + + return ($p->hasOpen() == false); + } + } + protected function makeChild($a) { - return new AchPerk($a,$this); + return new AchTask($a,$this); } function unlockedByParent() { @@ -148,6 +161,18 @@ function getCategory() { return $this->category; } + + function getSticky() { + return $this->sticky; + } + + function isSticky() { + return ($this->sticky == 1); + } + + function isHeroic() { + return $this->parent->isHeroic(); + } } ?> \ No newline at end of file diff --git a/code/web/app/app_achievements/class/AchCategory_class.php b/code/web/app/app_achievements/class/AchCategory_class.php index 218b9078c..a43aad899 100644 --- a/code/web/app/app_achievements/class/AchCategory_class.php +++ b/code/web/app/app_achievements/class/AchCategory_class.php @@ -1,6 +1,5 @@ id = $DBc->sqlEscape($id); - $res = $DBc->sqlQuery("SELECT * FROM ach_achievement LEFT JOIN (ach_achievement_lang) ON (aal_lang='".$_USER->getLang()."' AND aal_achievement=aa_id) WHERE aa_category='".$this->id."' AND (aa_parent IS NULL OR NOT EXISTS (SELECT * FROM ach_perk WHERE ap_achievement=aa_id AND NOT EXISTS (SELECT * FROM ach_player_perk WHERE app_player='".$_USER->getID()."' AND app_perk=ap_id))) AND (aa_tie_race IS NULL OR aa_tie_race LIKE '".$race."') AND (aa_tie_cult IS NULL OR aa_tie_cult LIKE '".$cult."') AND (aa_tie_civ IS NULL OR aa_tie_civ LIKE '".$civ."') ORDER by aal_name ASC"); + $res = $DBc->sqlQuery("SELECT * FROM ach_achievement LEFT JOIN (ach_achievement_lang) ON (aal_lang='".$_USER->getLang()."' AND aal_achievement=aa_id) WHERE aa_category='".$this->id."' AND (aa_tie_race IS NULL OR aa_tie_race LIKE '".$race."') AND (aa_tie_cult IS NULL OR aa_tie_cult LIKE '".$cult."') AND (aa_tie_civ IS NULL OR aa_tie_civ LIKE '".$civ."') ORDER by aa_sticky DESC, aal_name ASC"); $sz = sizeof($res); for($i=0;$i<$sz;$i++) { @@ -49,6 +49,9 @@ $this->addDone($tmp); #AchList::addDone() } } + + $res = $DBc->sqlQuery("SELECT ac_heroic FROM ach_category WHERE ac_id='".$this->id."'"); + $this->heroic = $res[0]['ac_heroic']; //load counts for tie determination $res = $DBc->sqlQuery("SELECT count(*) as anz FROM ach_achievement WHERE aa_tie_cult IS NOT NULL AND aa_category='".$this->id."' AND aa_dev='0'"); @@ -75,10 +78,6 @@ return new AchAchievement($a,$this); } - #function getID() { - # return $this->id; - #} - function isTiedCult() { return ($this->ties_cult > 0); } @@ -102,5 +101,9 @@ function getCurrentCult() { return $this->cult; } + + function isHeroic() { + return ($this->heroic == 1); + } } ?> \ No newline at end of file diff --git a/code/web/app/app_achievements/class/AchList_abstract.php b/code/web/app/app_achievements/class/AchList_abstract.php index 7d9846637..77ed94786 100644 --- a/code/web/app/app_achievements/class/AchList_abstract.php +++ b/code/web/app/app_achievements/class/AchList_abstract.php @@ -3,7 +3,7 @@ /*--------------------------- This class organizes nodes to distinguish between "open" and "done" nodes. - child_open and child_done refer to the index set in Parentum::nodes[] + child_open and child_done refer to Parentum::nodes ---------------------------*/ protected $child_done; @@ -25,12 +25,10 @@ } final function hasOpen() { - #echo "hasOpen: ".$this->child_open->getSize()."
"; return ($this->child_open->getSize() != 0); } final function hasDone() { - #echo "hasDone: ".$this->child_done->getSize()."
"; return ($this->child_done->getSize() != 0); } diff --git a/code/web/app/app_achievements/class/AchObjective_class.php b/code/web/app/app_achievements/class/AchObjective_class.php index 5a314a8fc..3189f98c9 100644 --- a/code/web/app/app_achievements/class/AchObjective_class.php +++ b/code/web/app/app_achievements/class/AchObjective_class.php @@ -1,6 +1,6 @@ setParent($parent); $this->setID($data['ao_id']); - $this->perk = $data['ao_perk']; + $this->task = $data['ao_task']; $this->condition = $data['ao_condition']; $this->value = $data['ao_value']; $this->name = $data['aol_name']; $this->display = $data['ao_display']; $this->done = $data['apo_date']; $this->meta_image = $data['aa_image']; + $this->metalink = $data['ao_metalink']; + + if($this->metalink != null) { + $this->name = $data['aal_name']; + } $this->progress = $this->value; @@ -41,8 +47,12 @@ return $this->meta_image; } - function getPerk() { - return $this->perk; + function getMetalink() { + return $this->metalink; + } + + function getTask() { + return $this->task; } function getCondition() { @@ -62,6 +72,9 @@ } function getDisplayName() { + if(substr($this->name,0,1) == "!") { + return substr($this->name,1); + } return $this->parent->fillTemplate(explode(";",$this->name)); } diff --git a/code/web/app/app_achievements/class/AchSummary_class.php b/code/web/app/app_achievements/class/AchSummary_class.php index c607774de..cf459028d 100644 --- a/code/web/app/app_achievements/class/AchSummary_class.php +++ b/code/web/app/app_achievements/class/AchSummary_class.php @@ -10,17 +10,15 @@ $this->menu = $menu; - //read all recent perks of user + //read all recent tasks of user //make distinct achievement list - $res = $DBc->sqlQuery("SELECT DISTINCT aa_id,ach.*,(SELECT aal_name FROM ach_achievement_lang WHERE aal_lang='".$_USER->getLang()."' AND aal_achievement=ach.aa_id) as aal_name, (SELECT aal_template FROM ach_achievement_lang WHERE aal_lang='".$_USER->getLang()."' AND aal_achievement=ach.aa_id) as aal_template FROM ach_achievement as ach,ach_perk,ach_player_perk WHERE ap_achievement=aa_id AND app_player='".$_USER->getID()."' AND app_perk=ap_id ORDER by app_date DESC LIMIT 0,".($size-1)); + $res = $DBc->sqlQuery("SELECT DISTINCT aa_id,ach.*,(SELECT aal_name FROM ach_achievement_lang WHERE aal_lang='".$_USER->getLang()."' AND aal_achievement=ach.aa_id) as aal_name, (SELECT aal_template FROM ach_achievement_lang WHERE aal_lang='".$_USER->getLang()."' AND aal_achievement=ach.aa_id) as aal_template FROM ach_achievement as ach,ach_task,ach_player_task WHERE at_achievement=aa_id AND apt_player='".$_USER->getID()."' AND apt_task=at_id ORDER by apt_date DESC LIMIT 0,".($size-1)); $sz = sizeof($res); for($i=0;$i<$sz;$i++) { $this->addDone($this->makeChild($res[$i])); } - - #echo var_export($this->child_done,true); } #@override: Parentum::makeChild() @@ -30,23 +28,21 @@ function getSummary() { if(!is_array($this->stats)) { // only load if needed - //now we have to find the # of perks for each main menu entry + //now we have to find the # of tasks for each main menu entry //and also sum up how many have been completed $this->stats = array(); // [][name,done,total] $iter = $this->menu->getIterator(); while($iter->hasNext()) { - #echo "1"; $curr = $iter->getNext(); if($curr->getID() == 0 || $curr->inDev()) { continue; // skip summary page } - #echo $curr->getID().","; - #echo var_export($curr,true); + $res = $this->sumStats($curr); - $this->stats[] = array($curr->getName(),$res[0],$res[1]); + $this->stats[] = array($curr->getName(),$res[0],$res[1],$res[2]); } } @@ -62,14 +58,20 @@ $done = 0; $total = 0; + $hero = false; //read for current ID //sum - $res = $DBc->sqlQuery("SELECT count(ap_id) as anz FROM ach_perk,ach_achievement,ach_player_perk WHERE aa_category='".$node->getID()."' AND ap_achievement=aa_id AND app_player='".$_USER->getID()."' AND app_perk=ap_id"); + $res = $DBc->sqlQuery("SELECT count(at_id) as anz FROM ach_task,ach_achievement,ach_player_task WHERE aa_category='".$node->getID()."' AND at_achievement=aa_id AND apt_player='".$_USER->getID()."' AND apt_task=at_id"); $done += $res[0]["anz"]; - $res = $DBc->sqlQuery("SELECT count(ap_id) as anz FROM ach_perk,ach_achievement WHERE aa_category='".$node->getID()."' AND ap_achievement=aa_id AND aa_dev='0' AND ap_dev='0'"); + $res = $DBc->sqlQuery("SELECT count(at_id) as anz FROM ach_task,ach_achievement WHERE aa_category='".$node->getID()."' AND at_achievement=aa_id AND aa_dev='0' AND at_dev='0'"); $total += $res[0]["anz"]; + + $res = $DBc->sqlQuery("SELECT ac_heroic FROM ach_category WHERE ac_id='".$node->getID()."' AND ac_dev='0'"); + if($res[0]["ac_heroic"] == 1) { + $hero = true; + } $iter = $node->getIterator(); while($iter->hasNext()) { @@ -78,9 +80,10 @@ $res = $this->sumStats($curr); $done += $res[0]; $total += $res[1]; + $hero = ($hero == true || $res[2] == true); } - return array($done,$total); + return array($done,$total,$hero); } @@ -99,5 +102,9 @@ function getCurrentCult() { return "c_neutral"; } + + function isHeroic() { + return false; + } } ?> \ No newline at end of file diff --git a/code/web/app/app_achievements/class/AchPerk_class.php b/code/web/app/app_achievements/class/AchTask_class.php similarity index 74% rename from code/web/app/app_achievements/class/AchPerk_class.php rename to code/web/app/app_achievements/class/AchTask_class.php index 25585db11..f9c27eddd 100644 --- a/code/web/app/app_achievements/class/AchPerk_class.php +++ b/code/web/app/app_achievements/class/AchTask_class.php @@ -1,5 +1,5 @@ setParent($parent); - $this->setID($data['ap_id']); - $this->achievement = $data['ap_achievement']; - $this->value = $data['ap_value']; - $this->name = $data['apl_name']; - $this->done = $data['app_date']; - $this->dev = $data['ap_dev']; - $this->template = $data['apl_template']; - $this->parent_id = $data['ap_parent']; + $this->setID($data['at_id']); + $this->achievement = $data['at_achievement']; + $this->value = $data['at_value']; + $this->name = $data['atl_name']; + $this->done = $data['apt_date']; + $this->dev = $data['at_dev']; + $this->template = $data['atl_template']; + $this->parent_id = $data['at_parent']; - $res = $DBc->sqlQuery("SELECT * FROM ach_objective LEFT JOIN (ach_objective_lang) ON (aol_lang='".$_USER->getLang()."' AND aol_objective=ao_id) LEFT JOIN (ach_player_objective) ON (apo_objective=ao_id AND apo_player='".$_USER->getID()."') LEFT JOIN (ach_achievement) ON (aa_id=ao_metalink) WHERE ao_perk='".$this->id."'"); + $res = $DBc->sqlQuery("SELECT * FROM ach_objective LEFT JOIN (ach_objective_lang) ON (aol_lang='".$_USER->getLang()."' AND aol_objective=ao_id) LEFT JOIN (ach_player_objective) ON (apo_objective=ao_id AND apo_player='".$_USER->getID()."') LEFT JOIN (ach_achievement,ach_achievement_lang) ON (aa_id=ao_metalink AND aa_id=aal_achievement AND aal_lang='".$_USER->getLang()."') WHERE ao_task='".$this->id."' ORDER by aol_name ASC,aal_name ASC"); $sz = sizeof($res); for($i=0;$i<$sz;$i++) { $this->addChild($this->makeChild($res[$i])); @@ -72,6 +72,9 @@ } function getDisplayName() { + if(substr($this->name,0,1) == "!") { + return substr($this->name,1); + } return $this->parent->fillTemplate(explode(";",$this->name)); } diff --git a/code/web/app/app_achievements/class/DLL_class.php b/code/web/app/app_achievements/class/DLL_class.php index 38e4be733..2d989208e 100644 --- a/code/web/app/app_achievements/class/DLL_class.php +++ b/code/web/app/app_achievements/class/DLL_class.php @@ -73,19 +73,16 @@ $this->avl->insert($n); $this->size++; - - #$this->avl->inorder(); - #echo "
"; + + return null; } function removeNode($id) { - echo "rid: ".$id."
"; $this->avl->inorder(); - echo "
"; $n = $this->findNode($id); if($n != null) { - echo "removed; "; + $p = $n->getParent(); $c = $n->getChild(); @@ -116,23 +113,11 @@ $this->size--; } - $this->avl->inorder(); - echo "
"; } function findNode($id) { return $this->avl->find($id); } - - /*function storeOrder() { - $iter = $this->getIterator(); - $i = 0; - while($iter->hasNext()) { - $curr = $iter->getNext(); - $curr->StoreOrder($i); - $i++; - } - }*/ } class DLLnode { @@ -166,11 +151,6 @@ return new NodeIterator($this); } - #function ListStoreOrder($i) { - # $this->data->setListOrder($i); - # $this->data->update(); - #} - function getID() { return $this->data->getID(); } diff --git a/code/web/app/app_achievements/class/InDev_trait.php b/code/web/app/app_achievements/class/InDev_trait.php index 3f749526a..8fd627e35 100644 --- a/code/web/app/app_achievements/class/InDev_trait.php +++ b/code/web/app/app_achievements/class/InDev_trait.php @@ -7,15 +7,15 @@ protected $dev; - function inDev() { + final function inDev() { return ($this->dev == 1); } - function getDev() { + final function getDev() { return $this->dev; } - function setInDev($tf) { + final function setInDev($tf) { if($tf == true) { $this->setDev(1); } @@ -26,7 +26,7 @@ $this->update(); } - function setDev($d) { + final function setDev($d) { $this->dev = $d; } } diff --git a/code/web/app/app_achievements/class/NodeIterator_class.php b/code/web/app/app_achievements/class/NodeIterator_class.php index fe71b44b0..5508ff86e 100644 --- a/code/web/app/app_achievements/class/NodeIterator_class.php +++ b/code/web/app/app_achievements/class/NodeIterator_class.php @@ -1,8 +1,7 @@ node = $node; - #$this->curr = 0; } function hasNext() { - #$tmp = array_keys($this->nodes); - #return isset($this->nodes[$tmp[$this->curr]]); if($this->node == null) { - #echo "empty"; return false; } - - #if($this->node->getChild() == null) { - # return false; - #} - - #echo "true"; return true; } function getNext() { - #$tmp = array_keys($this->nodes); - #return $this->nodes[$tmp[$this->curr++]]; $n = $this->node; $this->node = $this->node->getChild(); return $n->data; diff --git a/code/web/app/app_achievements/class/Node_abstract.php b/code/web/app/app_achievements/class/Node_abstract.php index 091e5b10d..7b15d74b4 100644 --- a/code/web/app/app_achievements/class/Node_abstract.php +++ b/code/web/app/app_achievements/class/Node_abstract.php @@ -10,7 +10,7 @@ protected $parent; function Node() { - + // dummy constructor } final function getID() { diff --git a/code/web/app/app_achievements/conf.php b/code/web/app/app_achievements/conf.php index f31fc7bc3..e63550b19 100644 --- a/code/web/app/app_achievements/conf.php +++ b/code/web/app/app_achievements/conf.php @@ -11,7 +11,7 @@ $_CONF['enable_offgame'] = true; $_CONF['image_url'] = "http://www.3025-game.de/special/app_achievements/"; - $_CONF['use_fb'] = true; + $_CONF['use_fb'] = false; $_CONF['fb_id'] = "447985781893176"; $_CONF['fb_secret'] = "f953772f1f7d871db022a6023e7a3f42"; ?> \ No newline at end of file diff --git a/code/web/app/app_achievements/fb.php b/code/web/app/app_achievements/fb.php deleted file mode 100644 index 57b33dbbd..000000000 --- a/code/web/app/app_achievements/fb.php +++ /dev/null @@ -1,57 +0,0 @@ - $_CONF['fb_id'], - 'secret' => $_CONF['fb_secret'], - 'cookie' => true - )); - - // Get the url to redirect for login to facebook - // and request permission to write on the user's wall. - $login_url = $facebook->getLoginUrl( - array('scope' => 'publish_stream') - ); - - - // If not authenticated, redirect to the facebook login dialog. - // The $login_url will take care of redirecting back to us - // after successful login. - if (!$facebook->getUser()) { - - echo ''; - } - else { - echo var_export($facebook->getUser(),true); - // Do the wall post. - try { - - $facebook->api("/me/feed", "post", array( - message => "My character Talvela just earned 'Bejeweled' on Ryzom!", - picture => "http://www.3025-game.de/special/app_achievements/pic/icon/test.png", - link => "http://www.ryzom.com", - name => "Ryzom - MMO", - caption => "Join and play for fee!" - )); - echo "post"; - - } catch (FacebookApiException $e) { - echo $e; - $login_url = $facebook->getLoginUrl( array( - 'scope' => 'publish_stream' - )); - echo 'Please
login.'; - #error_log($e->getType()); - #error_log($e->getMessage()); - } - } -?> \ No newline at end of file diff --git a/code/web/app/app_achievements/fb/base_facebook.php b/code/web/app/app_achievements/fb/base_facebook.php new file mode 100644 index 000000000..772cc97e1 --- /dev/null +++ b/code/web/app/app_achievements/fb/base_facebook.php @@ -0,0 +1,1269 @@ + + */ +class FacebookApiException extends Exception +{ + /** + * The result from the API server that represents the exception information. + */ + protected $result; + + /** + * Make a new API Exception with the given result. + * + * @param array $result The result from the API server + */ + public function __construct($result) { + $this->result = $result; + + $code = isset($result['error_code']) ? $result['error_code'] : 0; + + if (isset($result['error_description'])) { + // OAuth 2.0 Draft 10 style + $msg = $result['error_description']; + } else if (isset($result['error']) && is_array($result['error'])) { + // OAuth 2.0 Draft 00 style + $msg = $result['error']['message']; + } else if (isset($result['error_msg'])) { + // Rest server style + $msg = $result['error_msg']; + } else { + $msg = 'Unknown Error. Check getResult()'; + } + + parent::__construct($msg, $code); + } + + /** + * Return the associated result object returned by the API server. + * + * @return array The result from the API server + */ + public function getResult() { + return $this->result; + } + + /** + * Returns the associated type for the error. This will default to + * 'Exception' when a type is not available. + * + * @return string + */ + public function getType() { + if (isset($this->result['error'])) { + $error = $this->result['error']; + if (is_string($error)) { + // OAuth 2.0 Draft 10 style + return $error; + } else if (is_array($error)) { + // OAuth 2.0 Draft 00 style + if (isset($error['type'])) { + return $error['type']; + } + } + } + + return 'Exception'; + } + + /** + * To make debugging easier. + * + * @return string The string representation of the error + */ + public function __toString() { + $str = $this->getType() . ': '; + if ($this->code != 0) { + $str .= $this->code . ': '; + } + return $str . $this->message; + } +} + +/** + * Provides access to the Facebook Platform. This class provides + * a majority of the functionality needed, but the class is abstract + * because it is designed to be sub-classed. The subclass must + * implement the four abstract methods listed at the bottom of + * the file. + * + * @author Naitik Shah + */ +abstract class BaseFacebook +{ + /** + * Version. + */ + const VERSION = '3.1.1'; + + /** + * Default options for curl. + */ + public static $CURL_OPTS = array( + CURLOPT_CONNECTTIMEOUT => 10, + CURLOPT_RETURNTRANSFER => true, + CURLOPT_TIMEOUT => 60, + CURLOPT_USERAGENT => 'facebook-php-3.1', + ); + + /** + * List of query parameters that get automatically dropped when rebuilding + * the current URL. + */ + protected static $DROP_QUERY_PARAMS = array( + 'code', + 'state', + 'signed_request', + ); + + /** + * Maps aliases to Facebook domains. + */ + public static $DOMAIN_MAP = array( + 'api' => 'https://api.facebook.com/', + 'api_video' => 'https://api-video.facebook.com/', + 'api_read' => 'https://api-read.facebook.com/', + 'graph' => 'https://graph.facebook.com/', + 'graph_video' => 'https://graph-video.facebook.com/', + 'www' => 'https://www.facebook.com/', + ); + + /** + * The Application ID. + * + * @var string + */ + protected $appId; + + /** + * The Application App Secret. + * + * @var string + */ + protected $appSecret; + + /** + * The ID of the Facebook user, or 0 if the user is logged out. + * + * @var integer + */ + protected $user; + + /** + * The data from the signed_request token. + */ + protected $signedRequest; + + /** + * A CSRF state variable to assist in the defense against CSRF attacks. + */ + protected $state; + + /** + * The OAuth access token received in exchange for a valid authorization + * code. null means the access token has yet to be determined. + * + * @var string + */ + protected $accessToken = null; + + /** + * Indicates if the CURL based @ syntax for file uploads is enabled. + * + * @var boolean + */ + protected $fileUploadSupport = false; + + /** + * Initialize a Facebook Application. + * + * The configuration: + * - appId: the application ID + * - secret: the application secret + * - fileUpload: (optional) boolean indicating if file uploads are enabled + * + * @param array $config The application configuration + */ + public function __construct($config) { + $this->setAppId($config['appId']); + $this->setAppSecret($config['secret']); + if (isset($config['fileUpload'])) { + $this->setFileUploadSupport($config['fileUpload']); + } + + $state = $this->getPersistentData('state'); + if (!empty($state)) { + $this->state = $this->getPersistentData('state'); + } + } + + /** + * Set the Application ID. + * + * @param string $appId The Application ID + * @return BaseFacebook + */ + public function setAppId($appId) { + $this->appId = $appId; + return $this; + } + + /** + * Get the Application ID. + * + * @return string the Application ID + */ + public function getAppId() { + return $this->appId; + } + + /** + * Set the App Secret. + * + * @param string $apiSecret The App Secret + * @return BaseFacebook + * @deprecated + */ + public function setApiSecret($apiSecret) { + $this->setAppSecret($apiSecret); + return $this; + } + + /** + * Set the App Secret. + * + * @param string $appSecret The App Secret + * @return BaseFacebook + */ + public function setAppSecret($appSecret) { + $this->appSecret = $appSecret; + return $this; + } + + /** + * Get the App Secret. + * + * @return string the App Secret + * @deprecated + */ + public function getApiSecret() { + return $this->getAppSecret(); + } + + /** + * Get the App Secret. + * + * @return string the App Secret + */ + public function getAppSecret() { + return $this->appSecret; + } + + /** + * Set the file upload support status. + * + * @param boolean $fileUploadSupport The file upload support status. + * @return BaseFacebook + */ + public function setFileUploadSupport($fileUploadSupport) { + $this->fileUploadSupport = $fileUploadSupport; + return $this; + } + + /** + * Get the file upload support status. + * + * @return boolean true if and only if the server supports file upload. + */ + public function getFileUploadSupport() { + return $this->fileUploadSupport; + } + + /** + * DEPRECATED! Please use getFileUploadSupport instead. + * + * Get the file upload support status. + * + * @return boolean true if and only if the server supports file upload. + */ + public function useFileUploadSupport() { + return $this->getFileUploadSupport(); + } + + /** + * Sets the access token for api calls. Use this if you get + * your access token by other means and just want the SDK + * to use it. + * + * @param string $access_token an access token. + * @return BaseFacebook + */ + public function setAccessToken($access_token) { + $this->accessToken = $access_token; + return $this; + } + + /** + * Determines the access token that should be used for API calls. + * The first time this is called, $this->accessToken is set equal + * to either a valid user access token, or it's set to the application + * access token if a valid user access token wasn't available. Subsequent + * calls return whatever the first call returned. + * + * @return string The access token + */ + public function getAccessToken() { + if ($this->accessToken !== null) { + // we've done this already and cached it. Just return. + return $this->accessToken; + } + + // first establish access token to be the application + // access token, in case we navigate to the /oauth/access_token + // endpoint, where SOME access token is required. + $this->setAccessToken($this->getApplicationAccessToken()); + $user_access_token = $this->getUserAccessToken(); + if ($user_access_token) { + $this->setAccessToken($user_access_token); + } + + return $this->accessToken; + } + + /** + * Determines and returns the user access token, first using + * the signed request if present, and then falling back on + * the authorization code if present. The intent is to + * return a valid user access token, or false if one is determined + * to not be available. + * + * @return string A valid user access token, or false if one + * could not be determined. + */ + protected function getUserAccessToken() { + // first, consider a signed request if it's supplied. + // if there is a signed request, then it alone determines + // the access token. + $signed_request = $this->getSignedRequest(); + if ($signed_request) { + // apps.facebook.com hands the access_token in the signed_request + if (array_key_exists('oauth_token', $signed_request)) { + $access_token = $signed_request['oauth_token']; + $this->setPersistentData('access_token', $access_token); + return $access_token; + } + + // the JS SDK puts a code in with the redirect_uri of '' + if (array_key_exists('code', $signed_request)) { + $code = $signed_request['code']; + $access_token = $this->getAccessTokenFromCode($code, ''); + if ($access_token) { + $this->setPersistentData('code', $code); + $this->setPersistentData('access_token', $access_token); + return $access_token; + } + } + + // signed request states there's no access token, so anything + // stored should be cleared. + $this->clearAllPersistentData(); + return false; // respect the signed request's data, even + // if there's an authorization code or something else + } + + $code = $this->getCode(); + if ($code && $code != $this->getPersistentData('code')) { + $access_token = $this->getAccessTokenFromCode($code); + if ($access_token) { + $this->setPersistentData('code', $code); + $this->setPersistentData('access_token', $access_token); + return $access_token; + } + + // code was bogus, so everything based on it should be invalidated. + $this->clearAllPersistentData(); + return false; + } + + // as a fallback, just return whatever is in the persistent + // store, knowing nothing explicit (signed request, authorization + // code, etc.) was present to shadow it (or we saw a code in $_REQUEST, + // but it's the same as what's in the persistent store) + return $this->getPersistentData('access_token'); + } + + /** + * Retrieve the signed request, either from a request parameter or, + * if not present, from a cookie. + * + * @return string the signed request, if available, or null otherwise. + */ + public function getSignedRequest() { + if (!$this->signedRequest) { + if (isset($_REQUEST['signed_request'])) { + $this->signedRequest = $this->parseSignedRequest( + $_REQUEST['signed_request']); + } else if (isset($_COOKIE[$this->getSignedRequestCookieName()])) { + $this->signedRequest = $this->parseSignedRequest( + $_COOKIE[$this->getSignedRequestCookieName()]); + } + } + return $this->signedRequest; + } + + /** + * Get the UID of the connected user, or 0 + * if the Facebook user is not connected. + * + * @return string the UID if available. + */ + public function getUser() { + if ($this->user !== null) { + // we've already determined this and cached the value. + return $this->user; + } + + return $this->user = $this->getUserFromAvailableData(); + } + + /** + * Determines the connected user by first examining any signed + * requests, then considering an authorization code, and then + * falling back to any persistent store storing the user. + * + * @return integer The id of the connected Facebook user, + * or 0 if no such user exists. + */ + protected function getUserFromAvailableData() { + // if a signed request is supplied, then it solely determines + // who the user is. + $signed_request = $this->getSignedRequest(); + if ($signed_request) { + if (array_key_exists('user_id', $signed_request)) { + $user = $signed_request['user_id']; + $this->setPersistentData('user_id', $signed_request['user_id']); + return $user; + } + + // if the signed request didn't present a user id, then invalidate + // all entries in any persistent store. + $this->clearAllPersistentData(); + return 0; + } + + $user = $this->getPersistentData('user_id', $default = 0); + $persisted_access_token = $this->getPersistentData('access_token'); + + // use access_token to fetch user id if we have a user access_token, or if + // the cached access token has changed. + $access_token = $this->getAccessToken(); + if ($access_token && + $access_token != $this->getApplicationAccessToken() && + !($user && $persisted_access_token == $access_token)) { + $user = $this->getUserFromAccessToken(); + if ($user) { + $this->setPersistentData('user_id', $user); + } else { + $this->clearAllPersistentData(); + } + } + + return $user; + } + + /** + * Get a Login URL for use with redirects. By default, full page redirect is + * assumed. If you are using the generated URL with a window.open() call in + * JavaScript, you can pass in display=popup as part of the $params. + * + * The parameters: + * - redirect_uri: the url to go to after a successful login + * - scope: comma separated list of requested extended perms + * + * @param array $params Provide custom parameters + * @return string The URL for the login flow + */ + public function getLoginUrl($params=array()) { + $this->establishCSRFTokenState(); + $currentUrl = $this->getCurrentUrl(); + + // if 'scope' is passed as an array, convert to comma separated list + $scopeParams = isset($params['scope']) ? $params['scope'] : null; + if ($scopeParams && is_array($scopeParams)) { + $params['scope'] = implode(',', $scopeParams); + } + + return $this->getUrl( + 'www', + 'dialog/oauth', + array_merge(array( + 'client_id' => $this->getAppId(), + 'redirect_uri' => $currentUrl, // possibly overwritten + 'state' => $this->state), + $params)); + } + + /** + * Get a Logout URL suitable for use with redirects. + * + * The parameters: + * - next: the url to go to after a successful logout + * + * @param array $params Provide custom parameters + * @return string The URL for the logout flow + */ + public function getLogoutUrl($params=array()) { + return $this->getUrl( + 'www', + 'logout.php', + array_merge(array( + 'next' => $this->getCurrentUrl(), + 'access_token' => $this->getAccessToken(), + ), $params) + ); + } + + /** + * Get a login status URL to fetch the status from Facebook. + * + * The parameters: + * - ok_session: the URL to go to if a session is found + * - no_session: the URL to go to if the user is not connected + * - no_user: the URL to go to if the user is not signed into facebook + * + * @param array $params Provide custom parameters + * @return string The URL for the logout flow + */ + public function getLoginStatusUrl($params=array()) { + return $this->getUrl( + 'www', + 'extern/login_status.php', + array_merge(array( + 'api_key' => $this->getAppId(), + 'no_session' => $this->getCurrentUrl(), + 'no_user' => $this->getCurrentUrl(), + 'ok_session' => $this->getCurrentUrl(), + 'session_version' => 3, + ), $params) + ); + } + + /** + * Make an API call. + * + * @return mixed The decoded response + */ + public function api(/* polymorphic */) { + $args = func_get_args(); + if (is_array($args[0])) { + return $this->_restserver($args[0]); + } else { + return call_user_func_array(array($this, '_graph'), $args); + } + } + + /** + * Constructs and returns the name of the cookie that + * potentially houses the signed request for the app user. + * The cookie is not set by the BaseFacebook class, but + * it may be set by the JavaScript SDK. + * + * @return string the name of the cookie that would house + * the signed request value. + */ + protected function getSignedRequestCookieName() { + return 'fbsr_'.$this->getAppId(); + } + + /** + * Constructs and returns the name of the coookie that potentially contain + * metadata. The cookie is not set by the BaseFacebook class, but it may be + * set by the JavaScript SDK. + * + * @return string the name of the cookie that would house metadata. + */ + protected function getMetadataCookieName() { + return 'fbm_'.$this->getAppId(); + } + + /** + * Get the authorization code from the query parameters, if it exists, + * and otherwise return false to signal no authorization code was + * discoverable. + * + * @return mixed The authorization code, or false if the authorization + * code could not be determined. + */ + protected function getCode() { + if (isset($_REQUEST['code'])) { + if ($this->state !== null && + isset($_REQUEST['state']) && + $this->state === $_REQUEST['state']) { + + // CSRF state has done its job, so clear it + $this->state = null; + $this->clearPersistentData('state'); + return $_REQUEST['code']; + } else { + self::errorLog('CSRF state token does not match one provided.'); + return false; + } + } + + return false; + } + + /** + * Retrieves the UID with the understanding that + * $this->accessToken has already been set and is + * seemingly legitimate. It relies on Facebook's Graph API + * to retrieve user information and then extract + * the user ID. + * + * @return integer Returns the UID of the Facebook user, or 0 + * if the Facebook user could not be determined. + */ + protected function getUserFromAccessToken() { + try { + $user_info = $this->api('/me'); + return $user_info['id']; + } catch (FacebookApiException $e) { + return 0; + } + } + + /** + * Returns the access token that should be used for logged out + * users when no authorization code is available. + * + * @return string The application access token, useful for gathering + * public information about users and applications. + */ + protected function getApplicationAccessToken() { + return $this->appId.'|'.$this->appSecret; + } + + /** + * Lays down a CSRF state token for this process. + * + * @return void + */ + protected function establishCSRFTokenState() { + if ($this->state === null) { + $this->state = md5(uniqid(mt_rand(), true)); + $this->setPersistentData('state', $this->state); + } + } + + /** + * Retrieves an access token for the given authorization code + * (previously generated from www.facebook.com on behalf of + * a specific user). The authorization code is sent to graph.facebook.com + * and a legitimate access token is generated provided the access token + * and the user for which it was generated all match, and the user is + * either logged in to Facebook or has granted an offline access permission. + * + * @param string $code An authorization code. + * @return mixed An access token exchanged for the authorization code, or + * false if an access token could not be generated. + */ + protected function getAccessTokenFromCode($code, $redirect_uri = null) { + if (empty($code)) { + return false; + } + + if ($redirect_uri === null) { + $redirect_uri = $this->getCurrentUrl(); + } + + try { + // need to circumvent json_decode by calling _oauthRequest + // directly, since response isn't JSON format. + $access_token_response = + $this->_oauthRequest( + $this->getUrl('graph', '/oauth/access_token'), + $params = array('client_id' => $this->getAppId(), + 'client_secret' => $this->getAppSecret(), + 'redirect_uri' => $redirect_uri, + 'code' => $code)); + } catch (FacebookApiException $e) { + // most likely that user very recently revoked authorization. + // In any event, we don't have an access token, so say so. + return false; + } + + if (empty($access_token_response)) { + return false; + } + + $response_params = array(); + parse_str($access_token_response, $response_params); + if (!isset($response_params['access_token'])) { + return false; + } + + return $response_params['access_token']; + } + + /** + * Invoke the old restserver.php endpoint. + * + * @param array $params Method call object + * + * @return mixed The decoded response object + * @throws FacebookApiException + */ + protected function _restserver($params) { + // generic application level parameters + $params['api_key'] = $this->getAppId(); + $params['format'] = 'json-strings'; + + $result = json_decode($this->_oauthRequest( + $this->getApiUrl($params['method']), + $params + ), true); + + // results are returned, errors are thrown + if (is_array($result) && isset($result['error_code'])) { + $this->throwAPIException($result); + } + + if ($params['method'] === 'auth.expireSession' || + $params['method'] === 'auth.revokeAuthorization') { + $this->destroySession(); + } + + return $result; + } + + /** + * Return true if this is video post. + * + * @param string $path The path + * @param string $method The http method (default 'GET') + * + * @return boolean true if this is video post + */ + protected function isVideoPost($path, $method = 'GET') { + if ($method == 'POST' && preg_match("/^(\/)(.+)(\/)(videos)$/", $path)) { + return true; + } + return false; + } + + /** + * Invoke the Graph API. + * + * @param string $path The path (required) + * @param string $method The http method (default 'GET') + * @param array $params The query/post data + * + * @return mixed The decoded response object + * @throws FacebookApiException + */ + protected function _graph($path, $method = 'GET', $params = array()) { + if (is_array($method) && empty($params)) { + $params = $method; + $method = 'GET'; + } + $params['method'] = $method; // method override as we always do a POST + + if ($this->isVideoPost($path, $method)) { + $domainKey = 'graph_video'; + } else { + $domainKey = 'graph'; + } + + $result = json_decode($this->_oauthRequest( + $this->getUrl($domainKey, $path), + $params + ), true); + + // results are returned, errors are thrown + if (is_array($result) && isset($result['error'])) { + $this->throwAPIException($result); + } + + return $result; + } + + /** + * Make a OAuth Request. + * + * @param string $url The path (required) + * @param array $params The query/post data + * + * @return string The decoded response object + * @throws FacebookApiException + */ + protected function _oauthRequest($url, $params) { + if (!isset($params['access_token'])) { + $params['access_token'] = $this->getAccessToken(); + } + + // json_encode all params values that are not strings + foreach ($params as $key => $value) { + if (!is_string($value)) { + $params[$key] = json_encode($value); + } + } + + return $this->makeRequest($url, $params); + } + + /** + * Makes an HTTP request. This method can be overridden by subclasses if + * developers want to do fancier things or use something other than curl to + * make the request. + * + * @param string $url The URL to make the request to + * @param array $params The parameters to use for the POST body + * @param CurlHandler $ch Initialized curl handle + * + * @return string The response text + */ + protected function makeRequest($url, $params, $ch=null) { + if (!$ch) { + $ch = curl_init(); + } + + $opts = self::$CURL_OPTS; + if ($this->getFileUploadSupport()) { + $opts[CURLOPT_POSTFIELDS] = $params; + } else { + $opts[CURLOPT_POSTFIELDS] = http_build_query($params, null, '&'); + } + $opts[CURLOPT_URL] = $url; + + // disable the 'Expect: 100-continue' behaviour. This causes CURL to wait + // for 2 seconds if the server does not support this header. + if (isset($opts[CURLOPT_HTTPHEADER])) { + $existing_headers = $opts[CURLOPT_HTTPHEADER]; + $existing_headers[] = 'Expect:'; + $opts[CURLOPT_HTTPHEADER] = $existing_headers; + } else { + $opts[CURLOPT_HTTPHEADER] = array('Expect:'); + } + + curl_setopt_array($ch, $opts); + $result = curl_exec($ch); + + if (curl_errno($ch) == 60) { // CURLE_SSL_CACERT + self::errorLog('Invalid or no certificate authority found, '. + 'using bundled information'); + curl_setopt($ch, CURLOPT_CAINFO, + dirname(__FILE__) . '/fb_ca_chain_bundle.crt'); + $result = curl_exec($ch); + } + + if ($result === false) { + $e = new FacebookApiException(array( + 'error_code' => curl_errno($ch), + 'error' => array( + 'message' => curl_error($ch), + 'type' => 'CurlException', + ), + )); + curl_close($ch); + throw $e; + } + curl_close($ch); + return $result; + } + + /** + * Parses a signed_request and validates the signature. + * + * @param string $signed_request A signed token + * @return array The payload inside it or null if the sig is wrong + */ + protected function parseSignedRequest($signed_request) { + list($encoded_sig, $payload) = explode('.', $signed_request, 2); + + // decode the data + $sig = self::base64UrlDecode($encoded_sig); + $data = json_decode(self::base64UrlDecode($payload), true); + + if (strtoupper($data['algorithm']) !== 'HMAC-SHA256') { + self::errorLog('Unknown algorithm. Expected HMAC-SHA256'); + return null; + } + + // check sig + $expected_sig = hash_hmac('sha256', $payload, + $this->getAppSecret(), $raw = true); + if ($sig !== $expected_sig) { + self::errorLog('Bad Signed JSON signature!'); + return null; + } + + return $data; + } + + /** + * Build the URL for api given parameters. + * + * @param $method String the method name. + * @return string The URL for the given parameters + */ + protected function getApiUrl($method) { + static $READ_ONLY_CALLS = + array('admin.getallocation' => 1, + 'admin.getappproperties' => 1, + 'admin.getbannedusers' => 1, + 'admin.getlivestreamvialink' => 1, + 'admin.getmetrics' => 1, + 'admin.getrestrictioninfo' => 1, + 'application.getpublicinfo' => 1, + 'auth.getapppublickey' => 1, + 'auth.getsession' => 1, + 'auth.getsignedpublicsessiondata' => 1, + 'comments.get' => 1, + 'connect.getunconnectedfriendscount' => 1, + 'dashboard.getactivity' => 1, + 'dashboard.getcount' => 1, + 'dashboard.getglobalnews' => 1, + 'dashboard.getnews' => 1, + 'dashboard.multigetcount' => 1, + 'dashboard.multigetnews' => 1, + 'data.getcookies' => 1, + 'events.get' => 1, + 'events.getmembers' => 1, + 'fbml.getcustomtags' => 1, + 'feed.getappfriendstories' => 1, + 'feed.getregisteredtemplatebundlebyid' => 1, + 'feed.getregisteredtemplatebundles' => 1, + 'fql.multiquery' => 1, + 'fql.query' => 1, + 'friends.arefriends' => 1, + 'friends.get' => 1, + 'friends.getappusers' => 1, + 'friends.getlists' => 1, + 'friends.getmutualfriends' => 1, + 'gifts.get' => 1, + 'groups.get' => 1, + 'groups.getmembers' => 1, + 'intl.gettranslations' => 1, + 'links.get' => 1, + 'notes.get' => 1, + 'notifications.get' => 1, + 'pages.getinfo' => 1, + 'pages.isadmin' => 1, + 'pages.isappadded' => 1, + 'pages.isfan' => 1, + 'permissions.checkavailableapiaccess' => 1, + 'permissions.checkgrantedapiaccess' => 1, + 'photos.get' => 1, + 'photos.getalbums' => 1, + 'photos.gettags' => 1, + 'profile.getinfo' => 1, + 'profile.getinfooptions' => 1, + 'stream.get' => 1, + 'stream.getcomments' => 1, + 'stream.getfilters' => 1, + 'users.getinfo' => 1, + 'users.getloggedinuser' => 1, + 'users.getstandardinfo' => 1, + 'users.hasapppermission' => 1, + 'users.isappuser' => 1, + 'users.isverified' => 1, + 'video.getuploadlimits' => 1); + $name = 'api'; + if (isset($READ_ONLY_CALLS[strtolower($method)])) { + $name = 'api_read'; + } else if (strtolower($method) == 'video.upload') { + $name = 'api_video'; + } + return self::getUrl($name, 'restserver.php'); + } + + /** + * Build the URL for given domain alias, path and parameters. + * + * @param $name string The name of the domain + * @param $path string Optional path (without a leading slash) + * @param $params array Optional query parameters + * + * @return string The URL for the given parameters + */ + protected function getUrl($name, $path='', $params=array()) { + $url = self::$DOMAIN_MAP[$name]; + if ($path) { + if ($path[0] === '/') { + $path = substr($path, 1); + } + $url .= $path; + } + if ($params) { + $url .= '?' . http_build_query($params, null, '&'); + } + + return $url; + } + + /** + * Returns the Current URL, stripping it of known FB parameters that should + * not persist. + * + * @return string The current URL + */ + protected function getCurrentUrl() { + if (isset($_SERVER['HTTPS']) && + ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) || + isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && + $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') { + $protocol = 'https://'; + } + else { + $protocol = 'http://'; + } + $currentUrl = $protocol . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; + $parts = parse_url($currentUrl); + + $query = ''; + if (!empty($parts['query'])) { + // drop known fb params + $params = explode('&', $parts['query']); + $retained_params = array(); + foreach ($params as $param) { + if ($this->shouldRetainParam($param)) { + $retained_params[] = $param; + } + } + + if (!empty($retained_params)) { + $query = '?'.implode($retained_params, '&'); + } + } + + // use port if non default + $port = + isset($parts['port']) && + (($protocol === 'http://' && $parts['port'] !== 80) || + ($protocol === 'https://' && $parts['port'] !== 443)) + ? ':' . $parts['port'] : ''; + + // rebuild + return $protocol . $parts['host'] . $port . $parts['path'] . $query; + } + + /** + * Returns true if and only if the key or key/value pair should + * be retained as part of the query string. This amounts to + * a brute-force search of the very small list of Facebook-specific + * params that should be stripped out. + * + * @param string $param A key or key/value pair within a URL's query (e.g. + * 'foo=a', 'foo=', or 'foo'. + * + * @return boolean + */ + protected function shouldRetainParam($param) { + foreach (self::$DROP_QUERY_PARAMS as $drop_query_param) { + if (strpos($param, $drop_query_param.'=') === 0) { + return false; + } + } + + return true; + } + + /** + * Analyzes the supplied result to see if it was thrown + * because the access token is no longer valid. If that is + * the case, then we destroy the session. + * + * @param $result array A record storing the error message returned + * by a failed API call. + */ + protected function throwAPIException($result) { + $e = new FacebookApiException($result); + switch ($e->getType()) { + // OAuth 2.0 Draft 00 style + case 'OAuthException': + // OAuth 2.0 Draft 10 style + case 'invalid_token': + // REST server errors are just Exceptions + case 'Exception': + $message = $e->getMessage(); + if ((strpos($message, 'Error validating access token') !== false) || + (strpos($message, 'Invalid OAuth access token') !== false) || + (strpos($message, 'An active access token must be used') !== false) + ) { + $this->destroySession(); + } + break; + } + + throw $e; + } + + + /** + * Prints to the error log if you aren't in command line mode. + * + * @param string $msg Log message + */ + protected static function errorLog($msg) { + // disable error log if we are running in a CLI environment + // @codeCoverageIgnoreStart + if (php_sapi_name() != 'cli') { + error_log($msg); + } + // uncomment this if you want to see the errors on the page + // print 'error_log: '.$msg."\n"; + // @codeCoverageIgnoreEnd + } + + /** + * Base64 encoding that doesn't need to be urlencode()ed. + * Exactly the same as base64_encode except it uses + * - instead of + + * _ instead of / + * + * @param string $input base64UrlEncoded string + * @return string + */ + protected static function base64UrlDecode($input) { + return base64_decode(strtr($input, '-_', '+/')); + } + + /** + * Destroy the current session + */ + public function destroySession() { + $this->accessToken = null; + $this->signedRequest = null; + $this->user = null; + $this->clearAllPersistentData(); + + // Javascript sets a cookie that will be used in getSignedRequest that we + // need to clear if we can + $cookie_name = $this->getSignedRequestCookieName(); + if (array_key_exists($cookie_name, $_COOKIE)) { + unset($_COOKIE[$cookie_name]); + if (!headers_sent()) { + // The base domain is stored in the metadata cookie if not we fallback + // to the current hostname + $base_domain = '.'. $_SERVER['HTTP_HOST']; + + $metadata = $this->getMetadataCookie(); + if (array_key_exists('base_domain', $metadata) && + !empty($metadata['base_domain'])) { + $base_domain = $metadata['base_domain']; + } + + setcookie($cookie_name, '', 0, '/', $base_domain); + } else { + self::errorLog( + 'There exists a cookie that we wanted to clear that we couldn\'t '. + 'clear because headers was already sent. Make sure to do the first '. + 'API call before outputing anything' + ); + } + } + } + + /** + * Parses the metadata cookie that our Javascript API set + * + * @return an array mapping key to value + */ + protected function getMetadataCookie() { + $cookie_name = $this->getMetadataCookieName(); + if (!array_key_exists($cookie_name, $_COOKIE)) { + return array(); + } + + // The cookie value can be wrapped in "-characters so remove them + $cookie_value = trim($_COOKIE[$cookie_name], '"'); + + if (empty($cookie_value)) { + return array(); + } + + $parts = explode('&', $cookie_value); + $metadata = array(); + foreach ($parts as $part) { + $pair = explode('=', $part, 2); + if (!empty($pair[0])) { + $metadata[urldecode($pair[0])] = + (count($pair) > 1) ? urldecode($pair[1]) : ''; + } + } + + return $metadata; + } + + /** + * Each of the following four methods should be overridden in + * a concrete subclass, as they are in the provided Facebook class. + * The Facebook class uses PHP sessions to provide a primitive + * persistent store, but another subclass--one that you implement-- + * might use a database, memcache, or an in-memory cache. + * + * @see Facebook + */ + + /** + * Stores the given ($key, $value) pair, so that future calls to + * getPersistentData($key) return $value. This call may be in another request. + * + * @param string $key + * @param array $value + * + * @return void + */ + abstract protected function setPersistentData($key, $value); + + /** + * Get the data for $key, persisted by BaseFacebook::setPersistentData() + * + * @param string $key The key of the data to retrieve + * @param boolean $default The default value to return if $key is not found + * + * @return mixed + */ + abstract protected function getPersistentData($key, $default = false); + + /** + * Clear the data with $key from the persistent storage + * + * @param string $key + * @return void + */ + abstract protected function clearPersistentData($key); + + /** + * Clear all data from the persistent storage + * + * @return void + */ + abstract protected function clearAllPersistentData(); +} diff --git a/code/web/app/app_achievements/fb/fb_ca_chain_bundle.crt b/code/web/app/app_achievements/fb/fb_ca_chain_bundle.crt new file mode 100644 index 000000000..b92d7190e --- /dev/null +++ b/code/web/app/app_achievements/fb/fb_ca_chain_bundle.crt @@ -0,0 +1,121 @@ +-----BEGIN CERTIFICATE----- +MIIFgjCCBGqgAwIBAgIQDKKbZcnESGaLDuEaVk6fQjANBgkqhkiG9w0BAQUFADBm +MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMSUwIwYDVQQDExxEaWdpQ2VydCBIaWdoIEFzc3VyYW5j +ZSBDQS0zMB4XDTEwMDExMzAwMDAwMFoXDTEzMDQxMTIzNTk1OVowaDELMAkGA1UE +BhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExEjAQBgNVBAcTCVBhbG8gQWx0bzEX +MBUGA1UEChMORmFjZWJvb2ssIEluYy4xFzAVBgNVBAMUDiouZmFjZWJvb2suY29t +MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC9rzj7QIuLM3sdHu1HcI1VcR3g +b5FExKNV646agxSle1aQ/sJev1mh/u91ynwqd2BQmM0brZ1Hc3QrfYyAaiGGgEkp +xbhezyfeYhAyO0TKAYxPnm2cTjB5HICzk6xEIwFbA7SBJ2fSyW1CFhYZyo3tIBjj +19VjKyBfpRaPkzLmRwIDAQABo4ICrDCCAqgwHwYDVR0jBBgwFoAUUOpzidsp+xCP +nuUBINTeeZlIg/cwHQYDVR0OBBYEFPp+tsFBozkjrHlEnZ9J4cFj2eM0MA4GA1Ud +DwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMF8GA1UdHwRYMFYwKaAnoCWGI2h0dHA6 +Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9jYTMtZmIuY3JsMCmgJ6AlhiNodHRwOi8vY3Js +NC5kaWdpY2VydC5jb20vY2EzLWZiLmNybDCCAcYGA1UdIASCAb0wggG5MIIBtQYL +YIZIAYb9bAEDAAEwggGkMDoGCCsGAQUFBwIBFi5odHRwOi8vd3d3LmRpZ2ljZXJ0 +LmNvbS9zc2wtY3BzLXJlcG9zaXRvcnkuaHRtMIIBZAYIKwYBBQUHAgIwggFWHoIB +UgBBAG4AeQAgAHUAcwBlACAAbwBmACAAdABoAGkAcwAgAEMAZQByAHQAaQBmAGkA +YwBhAHQAZQAgAGMAbwBuAHMAdABpAHQAdQB0AGUAcwAgAGEAYwBjAGUAcAB0AGEA +bgBjAGUAIABvAGYAIAB0AGgAZQAgAEQAaQBnAGkAQwBlAHIAdAAgAEMAUAAvAEMA +UABTACAAYQBuAGQAIAB0AGgAZQAgAFIAZQBsAHkAaQBuAGcAIABQAGEAcgB0AHkA +IABBAGcAcgBlAGUAbQBlAG4AdAAgAHcAaABpAGMAaAAgAGwAaQBtAGkAdAAgAGwA +aQBhAGIAaQBsAGkAdAB5ACAAYQBuAGQAIABhAHIAZQAgAGkAbgBjAG8AcgBwAG8A +cgBhAHQAZQBkACAAaABlAHIAZQBpAG4AIABiAHkAIAByAGUAZgBlAHIAZQBuAGMA +ZQAuMB0GA1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjANBgkqhkiG9w0BAQUF +AAOCAQEACOkTIdxMy11+CKrbGNLBSg5xHaTvu/v1wbyn3dO/mf68pPfJnX6ShPYy +4XM4Vk0x4uaFaU4wAGke+nCKGi5dyg0Esg7nemLNKEJaFAJZ9enxZm334lSCeARy +wlDtxULGOFRyGIZZPmbV2eNq5xdU/g3IuBEhL722mTpAye9FU/J8Wsnw54/gANyO +Gzkewigua8ip8Lbs9Cht399yAfbfhUP1DrAm/xEcnHrzPr3cdCtOyJaM6SRPpRqH +ITK5Nc06tat9lXVosSinT3KqydzxBYua9gCFFiR3x3DgZfvXkC6KDdUlDrNcJUub +a1BHnLLP4mxTHL6faAXYd05IxNn/IA== +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIGVTCCBT2gAwIBAgIQCFH5WYFBRcq94CTiEsnCDjANBgkqhkiG9w0BAQUFADBs +MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 +d3cuZGlnaWNlcnQuY29tMSswKQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5j +ZSBFViBSb290IENBMB4XDTA3MDQwMzAwMDAwMFoXDTIyMDQwMzAwMDAwMFowZjEL +MAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3 +LmRpZ2ljZXJ0LmNvbTElMCMGA1UEAxMcRGlnaUNlcnQgSGlnaCBBc3N1cmFuY2Ug +Q0EtMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL9hCikQH17+NDdR +CPge+yLtYb4LDXBMUGMmdRW5QYiXtvCgFbsIYOBC6AUpEIc2iihlqO8xB3RtNpcv +KEZmBMcqeSZ6mdWOw21PoF6tvD2Rwll7XjZswFPPAAgyPhBkWBATaccM7pxCUQD5 +BUTuJM56H+2MEb0SqPMV9Bx6MWkBG6fmXcCabH4JnudSREoQOiPkm7YDr6ictFuf +1EutkozOtREqqjcYjbTCuNhcBoz4/yO9NV7UfD5+gw6RlgWYw7If48hl66l7XaAs +zPw82W3tzPpLQ4zJ1LilYRyyQLYoEt+5+F/+07LJ7z20Hkt8HEyZNp496+ynaF4d +32duXvsCAwEAAaOCAvcwggLzMA4GA1UdDwEB/wQEAwIBhjCCAcYGA1UdIASCAb0w +ggG5MIIBtQYLYIZIAYb9bAEDAAIwggGkMDoGCCsGAQUFBwIBFi5odHRwOi8vd3d3 +LmRpZ2ljZXJ0LmNvbS9zc2wtY3BzLXJlcG9zaXRvcnkuaHRtMIIBZAYIKwYBBQUH +AgIwggFWHoIBUgBBAG4AeQAgAHUAcwBlACAAbwBmACAAdABoAGkAcwAgAEMAZQBy +AHQAaQBmAGkAYwBhAHQAZQAgAGMAbwBuAHMAdABpAHQAdQB0AGUAcwAgAGEAYwBj +AGUAcAB0AGEAbgBjAGUAIABvAGYAIAB0AGgAZQAgAEQAaQBnAGkAQwBlAHIAdAAg +AEMAUAAvAEMAUABTACAAYQBuAGQAIAB0AGgAZQAgAFIAZQBsAHkAaQBuAGcAIABQ +AGEAcgB0AHkAIABBAGcAcgBlAGUAbQBlAG4AdAAgAHcAaABpAGMAaAAgAGwAaQBt +AGkAdAAgAGwAaQBhAGIAaQBsAGkAdAB5ACAAYQBuAGQAIABhAHIAZQAgAGkAbgBj +AG8AcgBwAG8AcgBhAHQAZQBkACAAaABlAHIAZQBpAG4AIABiAHkAIAByAGUAZgBl +AHIAZQBuAGMAZQAuMA8GA1UdEwEB/wQFMAMBAf8wNAYIKwYBBQUHAQEEKDAmMCQG +CCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wgY8GA1UdHwSBhzCB +hDBAoD6gPIY6aHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0SGlnaEFz +c3VyYW5jZUVWUm9vdENBLmNybDBAoD6gPIY6aHR0cDovL2NybDQuZGlnaWNlcnQu +Y29tL0RpZ2lDZXJ0SGlnaEFzc3VyYW5jZUVWUm9vdENBLmNybDAfBgNVHSMEGDAW +gBSxPsNpA/i/RwHUmCYaCALvY2QrwzAdBgNVHQ4EFgQUUOpzidsp+xCPnuUBINTe +eZlIg/cwDQYJKoZIhvcNAQEFBQADggEBAF1PhPGoiNOjsrycbeUpSXfh59bcqdg1 +rslx3OXb3J0kIZCmz7cBHJvUV5eR13UWpRLXuT0uiT05aYrWNTf58SHEW0CtWakv +XzoAKUMncQPkvTAyVab+hA4LmzgZLEN8rEO/dTHlIxxFVbdpCJG1z9fVsV7un5Tk +1nq5GMO41lJjHBC6iy9tXcwFOPRWBW3vnuzoYTYMFEuFFFoMg08iXFnLjIpx2vrF +EIRYzwfu45DC9fkpx1ojcflZtGQriLCnNseaIGHr+k61rmsb5OPs4tk8QUmoIKRU +9ZKNu8BVIASm2LAXFszj0Mi0PeXZhMbT9m5teMl5Q+h6N/9cNUm/ocU= +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIEQjCCA6ugAwIBAgIEQoclDjANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UEBhMC +VVMxFDASBgNVBAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50cnVzdC5u +ZXQvQ1BTIGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMc +KGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDE6MDgGA1UEAxMxRW50cnVzdC5u +ZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjEy +MjIxNTI3MjdaFw0xNDA3MjIxNTU3MjdaMGwxCzAJBgNVBAYTAlVTMRUwEwYDVQQK +EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xKzApBgNV +BAMTIkRpZ2lDZXJ0IEhpZ2ggQXNzdXJhbmNlIEVWIFJvb3QgQ0EwggEiMA0GCSqG +SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGzOVz5vvUu+UtLTKm3+WBP8nNJUm2cSrD +1ZQ0Z6IKHLBfaaZAscS3so/QmKSpQVk609yU1jzbdDikSsxNJYL3SqVTEjju80lt +cZF+Y7arpl/DpIT4T2JRvvjF7Ns4kuMG5QiRDMQoQVX7y1qJFX5x6DW/TXIJPb46 +OFBbdzEbjbPHJEWap6xtABRaBLe6E+tRCphBQSJOZWGHgUFQpnlcid4ZSlfVLuZd +HFMsfpjNGgYWpGhz0DQEE1yhcdNafFXbXmThN4cwVgTlEbQpgBLxeTmIogIRfCdm +t4i3ePLKCqg4qwpkwr9mXZWEwaElHoddGlALIBLMQbtuC1E4uEvLAgMBAAGjggET +MIIBDzASBgNVHRMBAf8ECDAGAQH/AgEBMCcGA1UdJQQgMB4GCCsGAQUFBwMBBggr +BgEFBQcDAgYIKwYBBQUHAwQwMwYIKwYBBQUHAQEEJzAlMCMGCCsGAQUFBzABhhdo +dHRwOi8vb2NzcC5lbnRydXN0Lm5ldDAzBgNVHR8ELDAqMCigJqAkhiJodHRwOi8v +Y3JsLmVudHJ1c3QubmV0L3NlcnZlcjEuY3JsMB0GA1UdDgQWBBSxPsNpA/i/RwHU +mCYaCALvY2QrwzALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAU8BdiE1U9s/8KAGv7 +UISX8+1i0BowGQYJKoZIhvZ9B0EABAwwChsEVjcuMQMCAIEwDQYJKoZIhvcNAQEF +BQADgYEAUuVY7HCc/9EvhaYzC1rAIo348LtGIiMduEl5Xa24G8tmJnDioD2GU06r +1kjLX/ktCdpdBgXadbjtdrZXTP59uN0AXlsdaTiFufsqVLPvkp5yMnqnuI3E2o6p +NpAkoQSbB6kUCNnXcW26valgOjDLZFOnr241QiwdBAJAAE/rRa8= +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIE2DCCBEGgAwIBAgIEN0rSQzANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UEBhMC +VVMxFDASBgNVBAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50cnVzdC5u +ZXQvQ1BTIGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMc +KGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDE6MDgGA1UEAxMxRW50cnVzdC5u +ZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw05OTA1 +MjUxNjA5NDBaFw0xOTA1MjUxNjM5NDBaMIHDMQswCQYDVQQGEwJVUzEUMBIGA1UE +ChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5j +b3JwLiBieSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBF +bnRydXN0Lm5ldCBMaW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUg +U2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUA +A4GLADCBhwKBgQDNKIM0VBuJ8w+vN5Ex/68xYMmo6LIQaO2f55M28Qpku0f1BBc/ +I0dNxScZgSYMVHINiC3ZH5oSn7yzcdOAGT9HZnuMNSjSuQrfJNqc1lB5gXpa0zf3 +wkrYKZImZNHkmGw6AIr1NJtl+O3jEP/9uElY3KDegjlrgbEWGWG5VLbmQwIBA6OC +AdcwggHTMBEGCWCGSAGG+EIBAQQEAwIABzCCARkGA1UdHwSCARAwggEMMIHeoIHb +oIHYpIHVMIHSMQswCQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5 +BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBieSByZWYuIChsaW1p +dHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBMaW1pdGVk +MTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRp +b24gQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMCmgJ6AlhiNodHRwOi8vd3d3LmVu +dHJ1c3QubmV0L0NSTC9uZXQxLmNybDArBgNVHRAEJDAigA8xOTk5MDUyNTE2MDk0 +MFqBDzIwMTkwNTI1MTYwOTQwWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAU8Bdi +E1U9s/8KAGv7UISX8+1i0BowHQYDVR0OBBYEFPAXYhNVPbP/CgBr+1CEl/PtYtAa +MAwGA1UdEwQFMAMBAf8wGQYJKoZIhvZ9B0EABAwwChsEVjQuMAMCBJAwDQYJKoZI +hvcNAQEFBQADgYEAkNwwAvpkdMKnCqV8IY00F6j7Rw7/JXyNEwr75Ji174z4xRAN +95K+8cPV1ZVqBLssziY2ZcgxxufuP+NXdYR6Ee9GTxj005i7qIcyunL2POI9n9cd +2cNgQ4xYDiKWL2KjLB+6rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G+bI= +-----END CERTIFICATE----- diff --git a/code/web/app/app_achievements/include/ach_render_ig.php b/code/web/app/app_achievements/include/ach_render_ig.php index e9f54c163..0d9574924 100644 --- a/code/web/app/app_achievements/include/ach_render_ig.php +++ b/code/web/app/app_achievements/include/ach_render_ig.php @@ -110,7 +110,7 @@ function ach_render_yubopoints() { global $DBc,$_USER,$_CONF; - $res = $DBc->sqlQuery("SELECT sum(ap_value) as anz FROM ach_perk,ach_player_perk WHERE ap_id=app_perk AND app_player='".$_USER->getID()."'"); + $res = $DBc->sqlQuery("SELECT sum(at_value) as anz FROM ach_task,ach_player_task WHERE ap_id=apt_task AND apt_player='".$_USER->getID()."'"); $html = "".$_USER->getName()."  ".max(0,$res[0]['anz']).""; @@ -176,6 +176,10 @@ #return ""; $html = ""; + if($cat->isHeroic() && !$cat->hasDone()) { + return "