Changeset 431

Show
Ignore:
Timestamp:
07/19/09 06:41:24 (11 years ago)
Author:
kovell
Message:

portraits are fetched from CCP using cURL and lower timeouts. mysqli-based boards use only one connection, eveapi reverted to standard 3.3

Location:
dev/common/includes
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • dev/common/includes/class.eveapi.php

    r404 r431  
    1414require_once('common/includes/class.alliance.php'); 
    1515require_once( "common/includes/db.php" ); 
    16 require_once('common/includes/class.apicache.php'); 
    1716 
    1817// Checks for configuration of files and folders 
    19 if (!file_exists("cache/api"))  
     18if (!file_exists("cache/api")) 
    2019{ 
    2120    if (!mkdir("cache/api", 0777)) 
     
    2423                echo "Failed to create folder 'cache/api' you should create the folder yourself and set chmod 777"; 
    2524        } 
    26 }  
     25} 
    2726 
    2827// ********************************************************************************************************************************************** 
     
    3029// ********************************************************************************************************************************************** 
    3130 
    32 class API_KillLog  
     31class API_KillLog 
    3332{ 
    34     function Import($keystring, $typestring, $keyindex)  
     33    function Import($keystring, $typestring, $keyindex) 
    3534        { 
    3635                $this->mailcount_ = 0; 
     
    4544                $this->errortext_ = ""; 
    4645                $this->CachedUntil_ = ""; 
    47                 $this->killmailExists_ = false; 
    48                  
     46 
    4947        // reduces strain on DB 
    5048                if(function_exists("set_time_limit")) 
     
    6664                $this->myIDName = new API_IDtoName(); 
    6765                $this->myNameID = new API_NametoID(); 
    68                  
     66 
    6967        $lastdatakillid = 1; 
    7068        $currentdatakillid = 0; 
     
    7573                $this->API_CacheTime = "2005-01-01 00:00:00"; // fake date to ensure that it runs first time. 
    7674        } 
    77                  
     75 
    7876                if (is_file(getcwd().'/cache/api/'.config::get('API_Name_'.$keyindex).'_KillLog.xml')) 
    7977                        $cacheexists = true; 
    8078                else 
    8179                        $cacheexists = false; 
    82                  
     80 
    8381                // if API_UseCache = 1 (off) then don't use cache 
    8482        if ((strtotime(gmdate("M d Y H:i:s")) - strtotime($this->API_CacheTime_) > 0) || ($this->API_UseCaching_ == 1)  || !$cacheexists ) 
     
    9391                $currentdatakillid = $this->getlastkillid($data); 
    9492                } while ( $lastdatakillid != $currentdatakillid ); 
    95                 $data .= '</myxml>';  
    96  
    97                         if ( ( $this->API_UseCaching_ ) == 0 )//&& ( $this->iscronjob_ == false ) )  
     93                $data .= '</myxml>'; 
     94 
     95                        if ( ( $this->API_UseCaching_ ) == 0 )//&& ( $this->iscronjob_ == false ) ) 
    9896                        { 
    9997                                // save the file if no errors have occurred 
     
    106104                                        @chmod(getcwd().'/cache/api/'.config::get('API_Name_'.$keyindex).'_KillLog.xml',0666); 
    107105                                } 
    108                         }  
    109         } else {  
     106                        } 
     107        } else { 
    110108            // re-use cached XML 
    111109                        $this->Output_ .= "<i>Using cached XML file for " . config::get('API_Name_'.$keyindex) . "</i><br><br>"; 
    112110                        $logsource = "Cache"; 
    113                          
     111 
    114112                        if ($fp = @fopen(getcwd().'/cache/api/'.config::get('API_Name_'.$keyindex).'_KillLog.xml', 'r')) { 
    115113                $data = fread($fp, filesize(getcwd().'/cache/api/'.config::get('API_Name_'.$keyindex).'_KillLog.xml')); 
    116114                        fclose($fp); 
    117115                } else { 
    118                                 return "<i>error loading cached file ".config::get('API_Name_'.$keyindex)."_KillLog.xml</i><br><br>";   
     116                                return "<i>error loading cached file ".config::get('API_Name_'.$keyindex)."_KillLog.xml</i><br><br>"; 
    119117                } 
    120118        } 
    121     
     119 
    122120        $xml_parser = xml_parser_create(); 
    123121        xml_set_object ( $xml_parser, $this ); 
     
    128126            return $this->Output_ .= "<i>Error getting XML data from api.eve-online.com</i><br><br>"; 
    129127 
    130         if ( strlen($data) == 28 )  
     128        if ( strlen($data) == 28 ) 
    131129            return $this->Output_ .= "<i>Error contacting api.eve-online.com</i><br><br>"; 
    132130 
     
    143141        else 
    144142            $this->Output_ .= "<div class=block-header2>No kills added, ". $this->malformedmails_ . " malformed, " . $this->ignoredmails_." ignored and " . $this->verified_ . " verified from feed: " . config::get('API_Name_'.$keyindex) . " which contained ".$this->totalmails_." mails.<br></div>"; 
    145                          
     143 
    146144                // Write to kb3_apilog 
    147145                $qry = new DBQuery(); 
     
    150148                else 
    151149                        $logtype = "Manual"; 
    152                          
     150 
    153151        $qry->execute( "insert into kb3_apilog  values( '" . KB_SITE . "', '" 
    154152                                                                                                                . config::get('API_Name_'.$keyindex) . "'," 
     
    160158                                                                                                                . $logsource . "','" 
    161159                                                                                                                . $logtype . "',now() )" ); 
    162                  
     160 
    163161        return $this->Output_; 
    164162 
    165163    } 
    166164 
    167     function startElement($parser, $name, $attribs)  
    168     { 
    169                 if($this->killmailExists_ && ($name != "ROW" ||  !is_numeric($attribs['KILLID']))) return; 
    170                 else $this->killmailExists_ = false; 
     165    function startElement($parser, $name, $attribs) 
     166    { 
    171167        if ($name == "ROWSET") 
    172         {  
     168        { 
    173169                        //echo $this->rowsetCounter_ . " "; 
    174170            if (($this->pname_ == "") && ($this->typeid_ != "0")) 
    175             {  
     171            { 
    176172                                $this->isContainer = true; 
    177173                                // this is to catch containers that spawn a new rowset so are missed off loot 
    178                 if ($this->qtydropped_ !=0)  
     174                if ($this->qtydropped_ !=0) 
    179175                                { 
    180176                    // dropped items 
     
    187183                                                $this->droppeditems_['flag'][] = $this->itemFlag_; 
    188184                                        //} 
    189                 }  
    190                 if ($this->qtydestroyed_ != 0)  
     185                } 
     186                if ($this->qtydestroyed_ != 0) 
    191187                                { 
    192188                    // destroyed items 
     
    202198                $this->typeid_ = 0; 
    203199                $this->itemFlag_ = 0; 
    204                 $this->qtydropped_ = 0;  
     200                $this->qtydropped_ = 0; 
    205201                $this->qtydestroyed_ = 0; 
    206202            } 
    207203                        // goes after so container itself doesn't count as "(in countainer) 
    208                          
     204 
    209205        } 
    210206 
    211         if (count($attribs))  
     207        if (count($attribs)) 
    212208        { 
    213             foreach ($attribs as $k => $v)  
     209            foreach ($attribs as $k => $v) 
    214210                        { 
    215                 switch ($k)  
     211                switch ($k) 
    216212                                { 
    217213                    case "CHARACTERID": 
    218214                        $this->charid_ = $v; 
    219215                        break; 
    220                     case "CHARACTERNAME":   
     216                    case "CHARACTERNAME": 
    221217                                                $this->pname_ = $v; 
    222                                                  
     218 
    223219                                                // Error Correction is on (0 = on, 1 = off(I know, just don't ask)) 
    224                                                 if ( $this->API_CCPErrorCorrecting == 0 )  
     220                                                if ( $this->API_CCPErrorCorrecting == 0 ) 
    225221                                                { 
    226222                                                        if ( ($this->charid_ != "0" ) && (strlen($this->pname_) == 0) ) 
    227                                                         {  
     223                                                        { 
    228224                                                                // name is blank but ID is valid - convert ID into name 
    229225                                                                $this->myIDName->clear(); 
    230                                                                 $this->myIDName->setIDs($this->charid_);  
     226                                                                $this->myIDName->setIDs($this->charid_); 
    231227                                                                $this->Output_ .= $this->myIDName->fetchXML(); 
    232228                                                                $myNames = $this->myIDName->getIDData(); 
    233229                                                                $this->pname_ = $myNames[0]['name']; 
    234230                                                        } 
    235                                                 }  
     231                                                } 
    236232                        break; 
    237                                         case "CORPORATIONID":  
     233                                        case "CORPORATIONID": 
    238234                        $this->corporationID_ = $v; 
    239235                                                break; 
    240                     case "CORPORATIONNAME":  
     236                    case "CORPORATIONNAME": 
    241237                                                $this->corporation_ = $v; 
    242                                                  
     238 
    243239                                                // Error Correction is on (0 = on, 1 = off(I know, just don't ask)) 
    244                                                 if ( $this->API_CCPErrorCorrecting == 0 )  
     240                                                if ( $this->API_CCPErrorCorrecting == 0 ) 
    245241                                                { 
    246                                                         if ( ($this->corporationID_ != "0" ) && (strlen($this->corporation_) == 0) )  
     242                                                        if ( ($this->corporationID_ != "0" ) && (strlen($this->corporation_) == 0) ) 
    247243                                                        { // name is blank but ID is valid - convert ID into name 
    248244                                                                $this->myIDName->clear(); 
    249                                                                 $this->myIDName->setIDs($this->corporationID_);  
     245                                                                $this->myIDName->setIDs($this->corporationID_); 
    250246                                                                $this->Output_ .= $this->myIDName->fetchXML(); 
    251247                                                                $myNames = $this->myIDName->getIDData(); 
     
    257253                        $this->allianceID_ = $v; 
    258254                        break; 
    259                     case "ALLIANCENAME":  
     255                    case "ALLIANCENAME": 
    260256                                                $this->alliance_ = $v; 
    261                                                  
     257 
    262258                                                // Error Correction is on (0 = on, 1 = off(I know, just don't ask)) 
    263                                                 //if ( $this->API_CCPErrorCorrecting == 0 )  
     259                                                //if ( $this->API_CCPErrorCorrecting == 0 ) 
    264260                                                // conditional branch removed - ALWAYS fix alliance name bugs 
    265261                                                { 
     
    267263                                                        { // name is blank but ID is valid - convert ID into name 
    268264                                                                $this->myIDName->clear(); 
    269                                                                 $this->myIDName->setIDs($this->allianceID_);  
     265                                                                $this->myIDName->setIDs($this->allianceID_); 
    270266                                                                $this->Output_ .= $this->myIDName->fetchXML(); 
    271267                                                                $myNames = $this->myIDName->getIDData(); 
     
    273269                                                        } 
    274270                                                } 
    275                                                  
     271 
    276272                                                if (strlen($this->alliance_) == 0) 
    277273                                                        $this->alliance_ = "NONE"; 
    278274                        break; 
    279                     case "DAMAGETAKEN":  
     275                    case "DAMAGETAKEN": 
    280276                        $this->damagetaken_ = $v; 
    281277                        break; 
    282                     case "DAMAGEDONE":  
     278                    case "DAMAGEDONE": 
    283279                        $this->damagedone_ = $v; 
    284280                        break; 
    285                     case "SHIPTYPEID":  
    286                         if ($v == 0)  
     281                    case "SHIPTYPEID": 
     282                        if ($v == 0) 
    287283                                                { 
    288284                            $this->shipname_ = "Unknown"; 
     
    291287                        } 
    292288                        break; 
    293                     case "FINALBLOW":  
    294                         $this->finalblow_ = $v;  
     289                    case "FINALBLOW": 
     290                        $this->finalblow_ = $v; 
    295291                        break; 
    296                     case "SECURITYSTATUS":  
     292                    case "SECURITYSTATUS": 
    297293                        //$this->security_ = $v; 
    298294                                                $this->security_ = round($v,2); // allows number to pass with strict settings (number is usually much longer than 5 chars as defined in DB) 
    299295                        break; 
    300                     case "WEAPONTYPEID":  
     296                    case "WEAPONTYPEID": 
    301297                        $this->weapon_ = gettypeIDname($v); 
    302298                        break; 
    303299                    // for items 
    304                     case "TYPEID":  
     300                    case "TYPEID": 
    305301                        $this->typeid_ = gettypeIDname($v); 
    306                                                  
     302 
    307303                                                // Missing Item correction 
    308304                                                if ($this->typeid_ == "") 
    309305                                                { 
    310306                                                        $this->myIDName->clear(); 
    311                                                         $this->myIDName->setIDs($v);  
     307                                                        $this->myIDName->setIDs($v); 
    312308                                                        $this->Output_ .= $this->myIDName->fetchXML(); 
    313309                                                        $myNames = $this->myIDName->getIDData(); 
     
    316312                                                } 
    317313                        break; 
    318                     case "FLAG":  
     314                    case "FLAG": 
    319315                        $this->itemFlag_ = $v; 
    320316                        break; 
    321                     case "QTYDROPPED":  
     317                    case "QTYDROPPED": 
    322318                        $this->qtydropped_ = $v; 
    323319                        break; 
    324                     case "QTYDESTROYED":  
     320                    case "QTYDESTROYED": 
    325321                        $this->qtydestroyed_ = $v; 
    326322                        break; 
    327323 
    328324                    // for system/kill mail details (start of mail) 
    329                     case "KILLID":  
     325                    case "KILLID": 
    330326                        // print mail here - this will miss the last mail but it can be caught on exit. This weird way of doing things prevents falling foul 
    331327                        // of the CCP API cargo bug - using function, avoids the repetition 
    332                         if ($this->beforekillid_ != 0)  
     328                        if ($this->beforekillid_ != 0) 
    333329                        { 
    334330                            $this->parseendofmail(); 
    335331                        } 
     332                        $this->beforekillid_ = $v; 
    336333                                                $this->killid_ = $v; // added v2.6 for help tracing erroneous mails 
    337334                                                $this->totalmails_++; // Count total number of mails in XML feed 
     
    339336                                                { 
    340337                                                        $this->killmailExists_ = true; 
    341         unset($this->destroyeditems_ ); 
    342         unset($this->droppeditems_); 
    343                 $this->beforekillid_ = 0; 
    344338                                                        return; 
    345339                                                } else { 
    346340                                                        $this->killmailExists_ = false; 
    347                                 $this->beforekillid_ = $v; 
    348341                                                } 
    349342                        break; 
     
    364357                    case "MOONID": // only given with POS related stuff - unanchored mods however, do not have a moonid. 
    365358                                                $this->moonid_ = $v; 
    366                                                  
    367                                                 $this->moonname_ = getMoonName($v);      
     359 
     360                                                $this->moonname_ = getMoonName($v); 
    368361                                                // Missing Moon DB correction 
    369362                                                if (($this->moonname_ == "") && ($this->moonid_ != 0)) 
    370363                                                { 
    371364                                                        $this->myIDName->clear(); 
    372                                                         $this->myIDName->setIDs($v);  
     365                                                        $this->myIDName->setIDs($v); 
    373366                                                        $this->Output_ .= $this->myIDName->fetchXML(); 
    374367                                                        $myNames = $this->myIDName->getIDData(); 
    375368                                                        //$this->typeid_ = "Item missing from DB: " . $myNames[0]['name']; 
    376369                                                        $this->moonname_ = $myNames[0]['name']; 
    377                                                 }        
     370                                                } 
    378371                        break; 
    379372                    case "KILLTIME": // Time Kill took place 
     
    398391    } 
    399392 
    400     function endElement($parser, $name)  
    401     { 
    402                 if($this->killmailExists_ && $name != "RESULT") return; 
    403                 else $this->killmailExists_ = false; 
    404         switch ($name)  
     393    function endElement($parser, $name) 
     394    { 
     395        switch ($name) 
    405396        { 
    406397                        case "ROWSET": 
     
    438429 
    439430                if ( config::get('API_Update') == 0 ) 
    440                 {  
     431                { 
    441432                                        // update Victim portrait while we're here 
    442433                    $sql = 'select plts.plt_id, plts.plt_externalid from kb3_pilots plts where plts.plt_name = "' . $this->pname_ . '"'; 
     
    451442 
    452443                        if ( $pilot_external_id == 0 && $pilot_id != 0) 
    453                         {        
     444                        { 
    454445                                                        // update DB with ID 
    455446                            $qry->execute("update kb3_pilots set plt_externalid = " . intval($this->charid_) . " 
    456447                                            where plt_id = " . $pilot_id); 
    457                         }  
     448                        } 
    458449                    } 
    459450                } 
    460                                  
     451 
    461452                                // update crp_external_id 
    462453                                Update_CorpID($this->corporation_, $this->corporationID_); 
     
    464455                                if ($this->allianceID_ != 0) 
    465456                                        Update_AllianceID($this->alliance_, $this->allianceID_); 
    466                                          
     457 
    467458                // set victim corp and alliance for FF check 
    468459                $this->valliance_ = $this->alliance_; 
     
    487478            case "ROW": 
    488479                if ( $this->typeid_ != "0" ) 
    489                 {  
     480                { 
    490481                                        // it's cargo 
    491                     if ($this->qtydropped_ !=0)  
     482                    if ($this->qtydropped_ !=0) 
    492483                    { 
    493484                        // dropped items 
     
    500491                                                        $this->droppeditems_['flag'][] = $this->itemFlag_; 
    501492                                                } 
    502                                         }  
     493                                        } 
    503494                    if ($this->qtydestroyed_ != 0) 
    504495                    { 
     
    515506                    $this->typeid_ = 0; 
    516507                    $this->itemFlag_ = 0; 
    517                     $this->qtydropped_ = 0;  
     508                    $this->qtydropped_ = 0; 
    518509                    $this->qtydestroyed_ = 0; 
    519                 }  
     510                } 
    520511                                // using corporation_ not pname_ as NPCs don't have a name *** CHANGED to corporationID 16/03/2009 to catch 'sleeper' NPCs 
    521                 if ($this->corporationID_ != 0)   
    522                 {  
     512                if ($this->corporationID_ != 0) 
     513                { 
    523514                                        // it's an attacker 
    524515                    $this->attackerslist_['name'][] = $this->pname_; 
     
    528519                    $this->attackerslist_['alliance'][] = $this->alliance_; 
    529520                    $this->attackerslist_['faction'][] = $this->factionname_; 
    530                     $this->attackerslist_['shiptypeid'][] = $this->shipname_;  
    531                     $this->attackerslist_['weapon'][] = $this->weapon_;  
     521                    $this->attackerslist_['shiptypeid'][] = $this->shipname_; 
     522                    $this->attackerslist_['weapon'][] = $this->weapon_; 
    532523                    $this->attackerslist_['damagedone'][] = $this->damagedone_; 
    533524 
    534525                    if ( config::get('API_Update') == 0 ) 
    535                     {  
     526                    { 
    536527                                                // update Attacker portrait while we're here 
    537528                        $sql = 'select plts.plt_id, plts.plt_externalid from kb3_pilots plts where plts.plt_name = "' . $this->pname_ . '"'; 
     
    541532                        $row = $qry->getRow(); 
    542533                        if ($qry->recordCount() != 0) 
    543                         {                                                
     534                        { 
    544535                            $pilot_id = $row['plt_id']; 
    545536                            $pilot_external_id = $row['plt_externalid']; 
    546537 
    547538                            if ( $pilot_external_id == 0 && $pilot_id != 0 ) 
    548                             {    
     539                            { 
    549540                                                                // update DB with ID 
    550541                                $qry->execute("update kb3_pilots set plt_externalid = " . intval($this->charid_) . " 
     
    553544                        } 
    554545                    } 
    555                                          
     546 
    556547                                        // update crp_external_id 
    557548                                        Update_CorpID($this->corporation_, $this->corporationID_); 
     
    559550                                        if ($this->allianceID_ != 0) 
    560551                                                Update_AllianceID($this->alliance_, $this->allianceID_); 
    561                                                  
     552 
    562553                    $this->pname_ = ""; 
    563554                    $this->finalblow_ = 0; 
     
    579570 
    580571                // does last killmail 
    581                 if ($this->hasdownloaded_)  
    582                                 {  
     572                if ($this->hasdownloaded_) 
     573                                { 
    583574                                        // catch to prevent processing without any mails 
    584575                    $this->parseendofmail(); 
     
    588579                // end of data xml, process cachedtime here 
    589580                //$ApiCache->set('API_CachedUntil_' . $this->keyindex_, $this->cachetext_); 
    590                 break;   
     581                break; 
    591582                        case "ERROR": //  Error Message 
    592583                                if ($this->errortext_ == "") 
     
    610601    } 
    611602 
    612     function characterData($parser, $data)  
     603    function characterData($parser, $data) 
    613604    { 
    614605                $this->characterDataValue = $data; 
     
    617608    function parseendofmail() 
    618609    { 
    619             // print attacks  
     610            // print attacks 
    620611                $attackercounter = count($this->attackerslist_['name']); 
    621612        // sort array into descending damage 
    622         if ($attackercounter != 0 )  
     613        if ($attackercounter != 0 ) 
    623614        { 
    624615                array_multisort($this->attackerslist_['damagedone'], SORT_NUMERIC, SORT_DESC, 
     
    633624        } 
    634625 
    635         // Initialise some flags to use                          
     626        // Initialise some flags to use 
    636627        $hasplayersonmail = false; 
    637628        $this->corpFF_ = true; 
    638629        $this->allianceFF_ = true; 
    639630        $poswasfriendly = false; 
    640                                  
     631 
    641632        // catch for victim being in no alliance 
    642633        if ($this->valliance_ == "NONE") 
    643634                $this->allianceFF_ = false; 
    644635 
    645         for ($attackerx = 0; $attackerx < $attackercounter; $attackerx++)  
     636        for ($attackerx = 0; $attackerx < $attackercounter; $attackerx++) 
    646637        { 
    647638                // if NPC (name will be "") then set pname_ as corporation_ for mail parsing 
     
    660651                $this->allianceFF_ = false; 
    661652            } else { 
    662                 $hasplayersonmail = true;        
     653                $hasplayersonmail = true; 
    663654                $this->killmail_ .= "Name: ".$this->attackerslist_['name'][$attackerx]; 
    664655                if ($this->attackerslist_['finalblow'][$attackerx] == 1) 
     
    672663                $this->killmail_ .= "Alliance: ".$this->attackerslist_['alliance'][$attackerx]."\r\n"; 
    673664                $this->killmail_ .= "Faction: ".$this->attackerslist_['faction'][$attackerx]."\r\n"; 
    674                 $this->killmail_ .= "Ship: ".$this->attackerslist_['shiptypeid'][$attackerx]."\r\n";  
    675                 $this->killmail_ .= "Weapon: ".$this->attackerslist_['weapon'][$attackerx]."\r\n";  
     665                $this->killmail_ .= "Ship: ".$this->attackerslist_['shiptypeid'][$attackerx]."\r\n"; 
     666                $this->killmail_ .= "Weapon: ".$this->attackerslist_['weapon'][$attackerx]."\r\n"; 
    676667                $this->killmail_ .= "Damage Done: ".$this->attackerslist_['damagedone'][$attackerx]."\r\n"; 
    677668 
     
    680671                        $this->allianceFF_ = false; 
    681672                if ($this->attackerslist_['corporation'][$attackerx] != $this->vcorp_) 
    682                         $this->corpFF_ = false;                          
     673                        $this->corpFF_ = false; 
    683674            } 
    684675            $this->killmail_ .= "\r\n"; 
    685676        } //end for next loop 
    686                  
     677 
    687678        // clear attackerslist 
    688679        $this->attackerslist_ = array(); 
    689680 
    690         if (count($this->destroyeditems_['qty']) != 0)  
     681        if (count($this->destroyeditems_['qty']) != 0) 
    691682        { 
    692683            $this->killmail_ .= "\r\nDestroyed items:\r\n\r\n"; 
    693684 
    694685            $counter = count($this->destroyeditems_['qty']); 
    695             for ($x = 0; $x < $counter; $x++)  
     686            for ($x = 0; $x < $counter; $x++) 
    696687            { 
    697688                if ($this->destroyeditems_['qty'][$x] > 1) 
    698                 {  
     689                { 
    699690                                        // show quantity 
    700691                        $this->killmail_ .= $this->destroyeditems_['typeid'][$x].", Qty: ".$this->destroyeditems_['qty'][$x]; 
    701                 } else {  
     692                } else { 
    702693                                        // just the one 
    703694                        $this->killmail_ .= $this->destroyeditems_['typeid'][$x]; 
    704695                } 
    705          
     696 
    706697                if ($this->destroyeditems_['flag'][$x] == 5) { 
    707698                        $this->killmail_ .= " (Cargo)"; 
    708699                } elseif ($this->destroyeditems_['flag'][$x] == 87) { 
    709700                        $this->killmail_ .= " (Drone Bay)"; 
    710                 }  elseif ($this->destroyeditems_['flag'][$x] == -1)  
    711                                 { 
    712                                         $this->killmail_ .= " (In Container)"; 
    713                                 } 
    714                 $this->killmail_ .= "\r\n"; 
    715             } 
    716         }        
    717  
    718         if (count($this->droppeditems_['qty']) != 0)  
    719         { 
    720             $this->killmail_ .= "\r\nDropped items:\r\n\r\n"; 
    721  
    722             $counter = count($this->droppeditems_['qty']); 
    723             for ($x = 0; $x < $counter; $x++)  
    724             { 
    725                 if ($this->droppeditems_['qty'][$x] > 1) 
    726                 {  
    727                                         // show quantity 
    728                     $this->killmail_ .= $this->droppeditems_['typeid'][$x].", Qty: ".$this->droppeditems_['qty'][$x]; 
    729                 } else {  
    730                                         // just the one 
    731                     $this->killmail_ .= $this->droppeditems_['typeid'][$x]; 
    732                 } 
    733  
    734                 if ($this->droppeditems_['flag'][$x] == 5)  
    735                 { 
    736                         $this->killmail_ .= " (Cargo)"; 
    737                 } elseif ($this->droppeditems_['flag'][$x] == 87)  
    738                 { 
    739                         $this->killmail_ .= " (Drone Bay)"; 
    740                 } elseif ($this->droppeditems_['flag'][$x] == -1)  
     701                }  elseif ($this->destroyeditems_['flag'][$x] == -1) 
    741702                                { 
    742703                                        $this->killmail_ .= " (In Container)"; 
     
    746707        } 
    747708 
     709        if (count($this->droppeditems_['qty']) != 0) 
     710        { 
     711            $this->killmail_ .= "\r\nDropped items:\r\n\r\n"; 
     712 
     713            $counter = count($this->droppeditems_['qty']); 
     714            for ($x = 0; $x < $counter; $x++) 
     715            { 
     716                if ($this->droppeditems_['qty'][$x] > 1) 
     717                { 
     718                                        // show quantity 
     719                    $this->killmail_ .= $this->droppeditems_['typeid'][$x].", Qty: ".$this->droppeditems_['qty'][$x]; 
     720                } else { 
     721                                        // just the one 
     722                    $this->killmail_ .= $this->droppeditems_['typeid'][$x]; 
     723                } 
     724 
     725                if ($this->droppeditems_['flag'][$x] == 5) 
     726                { 
     727                        $this->killmail_ .= " (Cargo)"; 
     728                } elseif ($this->droppeditems_['flag'][$x] == 87) 
     729                { 
     730                        $this->killmail_ .= " (Drone Bay)"; 
     731                } elseif ($this->droppeditems_['flag'][$x] == -1) 
     732                                { 
     733                                        $this->killmail_ .= " (In Container)"; 
     734                                } 
     735                $this->killmail_ .= "\r\n"; 
     736            } 
     737        } 
     738 
    748739        // If ignoring friendly POS Structures 
    749740        if ($this->isposkill_) { 
    750741        // is board an alliance board? 
    751742                if ( ALLIANCE_ID == 0) 
    752             {  
     743            { 
    753744                                // no it's set as a corp 
    754745                $thiscorp = new Corporation(CORP_ID); 
    755746                if ( $this->vcorp_ == $thiscorp->getName() ) 
    756747                        $poswasfriendly = true; 
    757             } else {  
     748            } else { 
    758749                                // yes it's an Alliance board 
    759750                $thisalliance = new Alliance(ALLIANCE_ID); 
     
    763754        } 
    764755 
    765         if ( ( $this->API_IgnoreFriendPos_ == 0 ) &&  ( $poswasfriendly ) &&  ( $this->isposkill_ ) )  
     756        if ( ( $this->API_IgnoreFriendPos_ == 0 ) &&  ( $poswasfriendly ) &&  ( $this->isposkill_ ) ) 
    766757        { 
    767                 if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_ ) )  
     758                if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_ ) ) 
    768759                { 
    769760                // do not write to $this->Output_ 
     
    772763            } 
    773764            $this->ignoredmails_++; 
    774         } elseif ( ( $this->API_IgnoreEnemyPos_ == 0 ) &&  ( !$poswasfriendly ) &&  ( $this->isposkill_ ) )  
     765        } elseif ( ( $this->API_IgnoreEnemyPos_ == 0 ) &&  ( !$poswasfriendly ) &&  ( $this->isposkill_ ) ) 
    775766        { 
    776                 if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_ ) )  
     767                if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_ ) ) 
    777768            { 
    778769                // do not write to $this->Output_ 
     
    781772            } 
    782773            $this->ignoredmails_++; 
    783         } elseif ( ( $this->API_IgnoreNPC_ == 0 ) && ($hasplayersonmail == false) )  
     774        } elseif ( ( $this->API_IgnoreNPC_ == 0 ) && ($hasplayersonmail == false) ) 
    784775        { 
    785776            if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_ ) ) 
     
    790781            } 
    791782            $this->ignoredmails_++; 
    792         } elseif ( ( $this->API_IgnoreCorpFF_ == 0 ) && ($this->corpFF_ == true ) )  
     783        } elseif ( ( $this->API_IgnoreCorpFF_ == 0 ) && ($this->corpFF_ == true ) ) 
    793784        { 
    794             if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_ ) )  
     785            if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_ ) ) 
    795786            { 
    796787                // do not write to $this->Output_ 
     
    799790            } 
    800791            $this->ignoredmails_++; 
    801         } elseif ( ( $this->API_IgnoreAllianceFF_ == 0 ) && ($this->allianceFF_ == true ) )  
     792        } elseif ( ( $this->API_IgnoreAllianceFF_ == 0 ) && ($this->allianceFF_ == true ) ) 
    802793        { 
    803             if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_) )  
     794            if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_) ) 
    804795            { 
    805796                 // do not write to $this->Output_ 
     
    810801        } else { 
    811802            $this->postimportmail(); 
    812         }        
     803        } 
    813804 
    814805        // clear destroyed/dropped arrays 
     
    819810    function postimportmail() 
    820811    { 
    821         if ( ( isset( $this->killmail_ ) ) && ( !$this->killmailExists_ ) )  
     812        if ( ( isset( $this->killmail_ ) ) && ( !$this->killmailExists_ ) ) 
    822813        { 
    823814            $parser = new Parser( $this->killmail_ ); 
    824815            //$killid = $parser->parse( true ); 
    825                          
     816 
    826817                        if (config::get('filter_apply')) 
    827818                { 
     
    843834                } 
    844835 
    845             if ( $killid == 0 || $killid == -1 || $killid == -2 || $killid == -3 )  
     836            if ( $killid == 0 || $killid == -1 || $killid == -2 || $killid == -3 ) 
    846837            { 
    847838                if ( $killid == 0 ) 
     
    849840                    $this->Output_ .= "Killmail ID:".$this->killid_." is malformed.<br>"; 
    850841                                        $this->malformedmails_++; 
    851                                          
     842 
    852843                    if ($errors = $parser->getError()) 
    853844                    { 
     
    860851                            } 
    861852                        } 
    862                                                  
     853 
    863854                                                //if ( $this->iscronjob_ ) 
    864855                                                //{ 
     
    877868                                        $this->ignoredmails_++; 
    878869                } 
    879                                  
     870 
    880871                if ( $killid == -2 ) 
    881872                                { 
     
    886877                if ( $killid == -1 ) 
    887878                { 
    888                     if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_ ) )  
     879                    if ( ( $this->API_NoSpam_ == 0 ) && ( $this->iscronjob_ ) ) 
    889880                    { 
    890881                    // do not write to $this->Output_ 
    891882                    } else { 
    892                         // $this->Output_ .= "Killmail already exists <a href=\"?a=kill_detail&amp;kll_id=".$parser->dupeid_."\">here</a>.<br>"; 
     883                        // $this->Output_ .= "Killmail already exists <a href=\"?a=kill_detail&kll_id=".$parser->dupeid_."\">here</a>.<br>"; 
    893884                                                // write API KillID to kb3_kills killID column row $parser->dupeid_ 
    894885                                                $this->VerifyKill($this->killid_, $parser->dupeid_); 
    895886                                                $this->verified_++; 
    896887                    } 
    897                 }  
     888                } 
    898889            } else { 
    899890                $qry = new DBQuery(); 
    900891                $qry->execute( "insert into kb3_log     values( ".$killid.", '".KB_SITE."','API ".APIVERSION."',now() )" ); 
    901                 $this->Output_ .= "API Killmail ID:".$this->killid_. " successfully imported <a href=\"?a=kill_detail&amp;kll_id=".$killid."\">here</a> as KB ID:". $killid ."<br>"; 
    902                          
     892                $this->Output_ .= "API Killmail ID:".$this->killid_. " successfully imported <a href=\"?a=kill_detail&kll_id=".$killid."\">here</a> as KB ID:". $killid ."<br>"; 
     893 
    903894                                // Now place killID (API) into killboard row $killid 
    904895                                $this->VerifyKill($this->killid_, $killid); 
    905                                  
     896 
    906897                                // mail forward 
    907898                                event::call('killmail_imported', $this); 
     
    909900                                // For testing purposes 
    910901                                //$this->Output_ .= str_replace("\r\n", "<br>", $this->killmail_); 
    911                                  
    912                                 if ( file_exists("common/includes/class.comments.php") )  
     902 
     903                                if ( file_exists("common/includes/class.comments.php") ) 
    913904                                        require_once( "common/includes/class.comments.php" ); 
    914905                if (class_exists('Comments') && config::get('API_Comment')) { // for the Eve-Dev Comment Class 
     
    959950                $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    960951            } 
    961         }  
     952        } 
    962953        return $contents; 
    963954    } 
    964955 
    965     function mystrripos($haystack, $needle, $offset=0)  
     956    function mystrripos($haystack, $needle, $offset=0) 
    966957    { 
    967958        if($offset<0) 
     
    1002993 
    1003994        $counter = count($this->alliancearray_['Name']); 
    1004         for ($x = 0; $x < $counter; $x++)  
     995        for ($x = 0; $x < $counter; $x++) 
    1005996        { 
    1006997            if ($this->alliancearray_['allianceID'][$x] == $v) 
     
    10101001        return $alliancenamereturn; 
    10111002    } 
    1012          
     1003 
    10131004        function VerifyKill($killid, $mailid) 
    10141005        { 
     
    10161007        $qry->execute( "UPDATE `kb3_kills` SET `kll_external_id` = '" . $killid . "' WHERE `kb3_kills`.`kll_id` =" . $mailid . " LIMIT 1" ); 
    10171008        } 
    1018          
     1009 
    10191010        function isKillIDVerified($killid) 
    10201011        { 
     
    10301021// ********************************************************************************************************************************************** 
    10311022 
    1032 class APIChar  
     1023class APIChar 
    10331024{ 
    1034     function fetchChars($apistring)  
     1025    function fetchChars($apistring) 
    10351026    { 
    10361027        $data = $this->loaddata($apistring); 
     
    10451036 
    10461037        xml_parser_free($xml_parser); 
    1047          
     1038 
    10481039        // add any characters not already in the kb 
    10491040        $numchars = count($this->chars_); 
     
    10561047            $qry->execute($sql); 
    10571048            if ($qry->recordCount() != 0) 
    1058             {  
     1049            { 
    10591050                                // pilot is in kb db, check he has his char id 
    10601051                $row = $qry->getRow(); 
     
    10641055 
    10651056                if ( $pilot_external_id == 0 && $pilot_id != 0 ) 
    1066                 {        
     1057                { 
    10671058                                        // update DB with ID 
    10681059                    $qry->execute("update kb3_pilots set plt_externalid = " . intval($this->chars_[$x]['charID']) . " 
     
    10911082    } 
    10921083 
    1093     function startElement($parser, $name, $attribs)  
     1084    function startElement($parser, $name, $attribs) 
    10941085    { 
    10951086                global $character; 
    1096                  
    1097         if ($name == "ROW")  
    1098         {  
    1099             if (count($attribs))  
     1087 
     1088        if ($name == "ROW") 
     1089        { 
     1090            if (count($attribs)) 
    11001091            { 
    1101                 foreach ($attribs as $k => $v)  
     1092                foreach ($attribs as $k => $v) 
    11021093                { 
    1103                     switch ($k)  
     1094                    switch ($k) 
    11041095                    { 
    11051096                        case "NAME": 
    11061097                            $character['Name'] = $v; 
    11071098                            break; 
    1108                         case "CORPORATIONNAME":   
     1099                        case "CORPORATIONNAME": 
    11091100                            $character['corpName'] = $v; 
    11101101                            break; 
    1111                         case "CHARACTERID":   
     1102                        case "CHARACTERID": 
    11121103                            $character['charID'] = $v; 
    11131104                            break; 
    1114                         case "CORPORATIONID":   
     1105                        case "CORPORATIONID": 
    11151106                            $character['corpID'] = $v; 
    11161107                            break; 
     
    11211112    } 
    11221113 
    1123     function endElement($parser, $name)  
     1114    function endElement($parser, $name) 
    11241115    { 
    11251116                global $character; 
    1126                  
     1117 
    11271118        if ($name == "ROW") 
    11281119                { 
     
    11331124    } 
    11341125 
    1135     function characterData($parser, $data)  
     1126    function characterData($parser, $data) 
    11361127    { 
    11371128        // nothing 
     
    11711162                $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    11721163            } 
    1173         }  
     1164        } 
    11741165        return $contents; 
    11751166    } 
     
    11801171// ********************************************************************************************************************************************** 
    11811172 
    1182 class AllianceAPI  
     1173class AllianceAPI 
    11831174{ 
    11841175        function getCachedUntil() 
     
    11861177                return $this->CachedUntil_; 
    11871178        } 
    1188          
     1179 
    11891180        function getCurrentTime() 
    11901181        { 
    11911182                return $this->CurrentTime_; 
    11921183        } 
    1193          
    1194          
     1184 
     1185 
    11951186        function initXML() 
    11961187        { 
    11971188                global $myalliancelist; 
    1198                  
     1189 
    11991190                $data = LoadGlobalData('/eve/AllianceList.xml.aspx'); 
    12001191 
     
    12061197        if (!xml_parse($xml_parser, $data, true)) 
    12071198                return false; 
    1208          
     1199 
    12091200                xml_parser_free($xml_parser); 
    12101201                return true; 
    12111202        } 
    1212          
    1213     function fetchalliances($overide=false)  
     1203 
     1204    function fetchalliances($overide=false) 
    12141205    { 
    12151206        global $myalliancelist; 
    1216                  
     1207 
    12171208                if (!isset($this->alliances_)) 
    12181209                        $this->initXML($overide); 
    1219                          
     1210 
    12201211        return $myalliancelist; 
    12211212    } 
    12221213 
    1223     function startElement($parser, $name, $attribs)  
     1214    function startElement($parser, $name, $attribs) 
    12241215    { 
    12251216        global $myalliancelist, $alliancedetail, $membercorps, $membercorp, $iscorpsection; 
    12261217 
    1227         if ($name == "ROW")  
     1218        if ($name == "ROW") 
    12281219        { 
    1229             if (count($attribs))  
     1220            if (count($attribs)) 
    12301221            { 
    1231                 foreach ($attribs as $k => $v)  
     1222                foreach ($attribs as $k => $v) 
    12321223                { 
    1233                     switch ($k)  
     1224                    switch ($k) 
    12341225                    { 
    12351226                        case "NAME": 
     
    12391230                            $alliancedetail['shortName'] = $v; 
    12401231                            break; 
    1241                         case "ALLIANCEID":   
     1232                        case "ALLIANCEID": 
    12421233                            $alliancedetail['allianceID'] = $v; 
    12431234                            break; 
    1244                                                 case "EXECUTORCORPID":   
     1235                                                case "EXECUTORCORPID": 
    12451236                            $alliancedetail['executorCorpID'] = $v; 
    12461237                            break; 
    1247                                                 case "MEMBERCOUNT":   
     1238                                                case "MEMBERCOUNT": 
    12481239                            $alliancedetail['memberCount'] = $v; 
    12491240                            break; 
    1250                                                 case "STARTDATE":  
    1251                                                         if (!$iscorpsection)  
     1241                                                case "STARTDATE": 
     1242                                                        if (!$iscorpsection) 
    12521243                                                        { 
    12531244                                $alliancedetail['startDate'] = $v; 
     
    12571248                                                        } 
    12581249                            break; 
    1259                                                 case "CORPORATIONID":   
     1250                                                case "CORPORATIONID": 
    12601251                            $membercorp['corporationID'] = $v; 
    12611252                                                        $iscorpsection = true; 
     
    12671258    } 
    12681259 
    1269     function endElement($parser, $name)  
     1260    function endElement($parser, $name) 
    12701261    { 
    12711262        global $myalliancelist, $alliancedetail, $membercorps, $membercorp, $iscorpsection; 
    12721263                global $tempvalue; 
    1273                  
     1264 
    12741265                if ($name == "CURRENTTIME") 
    12751266                        $this->CurrentTime_ = $tempvalue; 
     
    12841275                        ApiCache::set('API_eve_AllianceList' , $this->CachedUntil_); 
    12851276                } 
    1286                  
    1287         switch ($name)  
     1277 
     1278        switch ($name) 
    12881279        { 
    12891280            case "ROWSET": 
    1290                 if ($alliancedetail['allianceName'] != "" && $alliancedetail['allianceID'] != "0")  
     1281                if ($alliancedetail['allianceName'] != "" && $alliancedetail['allianceID'] != "0") 
    12911282                { 
    12921283                    $myalliancelist['Name'][] = $alliancedetail['allianceName']; 
     
    12951286                                $alliancedetail['memberCorps'] = $membercorps; 
    12961287                                $this->alliances_[] = $alliancedetail; 
    1297                                  
     1288 
    12981289                                $alliancedetail['allianceName'] = ""; 
    12991290                                $alliancedetail['shortName'] = ""; 
     
    13131304    } 
    13141305 
    1315     function characterData($parser, $data)  
     1306    function characterData($parser, $data) 
    13161307    { 
    13171308                global $tempvalue; 
    1318          
     1309 
    13191310                $tempvalue = $data; 
    13201311    } 
    1321          
     1312 
    13221313        function updatealliancetable() 
    13231314    { 
    13241315        if (!isset($this->alliances_)) 
    13251316            $this->initXML(); 
    1326          
     1317 
    13271318        if (!isset($this->alliances_)) 
    13281319            return false; 
    1329              
     1320 
    13301321        $qry = new DBQuery(); 
    13311322        $qry->execute("DROP TABLE IF EXISTS `kb3_all_corp`;"); 
     
    13371328 
    13381329        $alliances = $this->alliances_; 
    1339          
     1330 
    13401331        foreach ($alliances as $arraykey => $arrayvalue) 
    13411332        { 
     
    13721363                        break; 
    13731364                } 
    1374             }                   
     1365            } 
    13751366        } 
    13761367        return true; 
    13771368    } 
    1378          
     1369 
    13791370        function LocateAlliance($name) 
    13801371        { 
    13811372                if (!isset($this->alliances_)) 
    13821373            $this->initXML(); 
    1383          
     1374 
    13841375        if (!isset($this->alliances_)) 
    13851376            return false; 
    1386                          
     1377 
    13871378                $alliances = $this->alliances_; 
    1388          
     1379 
    13891380        foreach ($alliances as $arraykey => $arrayvalue) 
    13901381        { 
     
    14031394                        break; 
    14041395                } 
    1405             }                   
     1396            } 
    14061397        } 
    14071398                return false; 
    14081399        } 
    1409          
     1400 
    14101401        function LocateAllianceID($id) 
    14111402        { 
    14121403                if (!isset($this->alliances_)) 
    14131404            $this->initXML(); 
    1414          
     1405 
    14151406        if (!isset($this->alliances_)) 
    14161407            return false; 
    1417                          
     1408 
    14181409                $alliances = $this->alliances_; 
    1419          
     1410 
    14201411        foreach ($alliances as $arraykey => $arrayvalue) 
    14211412        { 
     
    14341425                        break; 
    14351426                } 
    1436             }                   
     1427            } 
    14371428        } 
    14381429                return false; 
    14391430        } 
    1440          
     1431 
    14411432        function UpdateAlliances($andCorps = false) 
    14421433        { 
    14431434                if (!isset($this->alliances_)) 
    14441435            $this->initXML(); 
    1445          
     1436 
    14461437        if (!isset($this->alliances_)) 
    14471438            return false; 
    1448                  
     1439 
    14491440                if ($andCorps) 
    14501441                { 
     
    14541445                                                        SET crp_all_id = 14"); 
    14551446                } 
    1456                  
     1447 
    14571448                $alliances = $this->alliances_; 
    14581449                $alliance = new Alliance(); 
    1459                 $tempMyCorp = new Corporation();                                 
     1450                $tempMyCorp = new Corporation(); 
    14601451                $myCorpAPI = new API_CorporationSheet(); 
    1461                  
     1452 
    14621453                $NumberOfAlliances = 0; 
    14631454                $NumberOfCorps = 0; 
    14641455                $NumberOfAlliancesAdded = 0; // we won't know this 
    14651456                $NumberOfCorpsAdded = 0; 
    1466                  
     1457 
    14671458                foreach ($alliances as $arraykey => $arrayvalue) 
    14681459        { 
    14691460            $tempally = $arrayvalue; 
    14701461                        $NumberOfAlliances++; 
    1471                          
     1462 
    14721463            foreach ($tempally as $key => $value) 
    14731464            { 
     
    14851476                                                        { 
    14861477                                                                $NumberOfCorps++; 
    1487                                                                  
     1478 
    14881479                                                                $myCorpAPI->setCorpID($tempcorp["corporationID"]); 
    14891480                                                                $result .= $myCorpAPI->fetchXML(); 
    1490          
     1481 
    14911482                                                                //$NumberOfCorpsAdded++; 
    14921483                                                                $tempMyCorp->add($myCorpAPI->getCorporationName(), $alliance , gmdate("Y-m-d H:i:s")); 
    1493                                                                  
     1484 
    14941485                                                        } 
    1495                                                  
     1486 
    14961487                                                } 
    14971488                                                break; 
    14981489                } 
    1499             }                   
     1490            } 
    15001491        } 
    15011492                $returnarray["NumAlliances"] = $NumberOfAlliances; 
     
    15041495                $returnarray["NumCorpsAdded"] = $NumberOfCorpsAdded; 
    15051496                return $returnarray; 
    1506                  
     1497 
    15071498        } 
    15081499} 
     
    15121503// ********************************************************************************************************************************************** 
    15131504 
    1514 class API_ConquerableStationList  
     1505class API_ConquerableStationList 
    15151506{ 
    15161507        function getCachedUntil() 
     
    15181509                return $this->CachedUntil_; 
    15191510        } 
    1520          
     1511 
    15211512        function getCurrentTime() 
    15221513        { 
    15231514                return $this->CurrentTime_; 
    15241515        } 
    1525          
     1516 
    15261517        function getStations() 
    15271518        { 
    15281519                return $this->Stations_; 
    15291520        } 
    1530          
    1531     function fetchXML()  
     1521 
     1522    function fetchXML() 
    15321523    { 
    15331524        $data = LoadGlobalData('/eve/ConquerableStationList.xml.aspx'); 
     
    15421533 
    15431534        xml_parser_free($xml_parser); 
    1544       
     1535 
    15451536        return $this->html; 
    15461537    } 
    15471538 
    1548     function startElement($parser, $name, $attribs)  
     1539    function startElement($parser, $name, $attribs) 
    15491540    { 
    15501541                global $Station; 
    1551                  
    1552         if ($name == "ROW")  
    1553         {  
    1554             if (count($attribs))  
     1542 
     1543        if ($name == "ROW") 
     1544        { 
     1545            if (count($attribs)) 
    15551546            { 
    1556                 foreach ($attribs as $k => $v)  
     1547                foreach ($attribs as $k => $v) 
    15571548                { 
    1558                     switch ($k)  
     1549                    switch ($k) 
    15591550                    { 
    15601551                        case "STATIONID": 
    15611552                            $Station['stationID'] = $v; 
    15621553                            break; 
    1563                         case "STATIONNAME":   
     1554                        case "STATIONNAME": 
    15641555                            $Station['stationName'] = $v; 
    15651556                            break; 
    1566                         case "STATIONTYPEID":   
     1557                        case "STATIONTYPEID": 
    15671558                            $Station['stationTypeID'] = $v; 
    15681559                            break; 
    1569                         case "SOLARSYSTEMID":   
     1560                        case "SOLARSYSTEMID": 
    15701561                            $Station['solarSystemID'] = $v; 
    15711562                            break; 
    1572                                                 case "CORPORATIONID":   
     1563                                                case "CORPORATIONID": 
    15731564                            $Station['corporationID'] = $v; 
    15741565                            break; 
    1575                                                 case "CORPORATIONNAME":   
     1566                                                case "CORPORATIONNAME": 
    15761567                            $Station['corporationName'] = $v; 
    15771568                            break; 
     
    15821573    } 
    15831574 
    1584     function endElement($parser, $name)  
     1575    function endElement($parser, $name) 
    15851576    { 
    15861577                global $Station; 
    15871578                global $tempvalue; 
    1588                  
     1579 
    15891580                if ($name == "CURRENTTIME") 
    15901581                        $this->CurrentTime_ = $tempvalue; 
     
    15991590                        ApiCache::set('API_eve_ConquerableStationList' , $this->CachedUntil_); 
    16001591                } 
    1601                  
     1592 
    16021593        if ($name == "ROW") 
    16031594                { 
     
    16081599    } 
    16091600 
    1610     function characterData($parser, $data)  
     1601    function characterData($parser, $data) 
    16111602    { 
    16121603        global $tempvalue; 
    1613          
     1604 
    16141605                $tempvalue = $data; 
    16151606    } 
     
    16201611// ********************************************************************************************************************************************** 
    16211612 
    1622 class API_ErrorList  
     1613class API_ErrorList 
    16231614{ 
    16241615        function getCachedUntil() 
     
    16261617                return $this->CachedUntil_; 
    16271618        } 
    1628          
     1619 
    16291620        function getCurrentTime() 
    16301621        { 
    16311622                return $this->CurrentTime_; 
    16321623        } 
    1633          
     1624 
    16341625        function getErrorList() 
    16351626        { 
    16361627                return $this->Error_; 
    16371628        } 
    1638          
    1639     function fetchXML()  
     1629 
     1630    function fetchXML() 
    16401631    { 
    16411632        $data = LoadGlobalData('/eve/ErrorList.xml.aspx'); 
     
    16501641 
    16511642        xml_parser_free($xml_parser); 
    1652       
     1643 
    16531644        return $this->html; 
    16541645    } 
    16551646 
    1656     function startElement($parser, $name, $attribs)  
     1647    function startElement($parser, $name, $attribs) 
    16571648    { 
    16581649                global $ErrorData; 
    1659                  
    1660         if ($name == "ROW")  
    1661         {  
    1662             if (count($attribs))  
     1650 
     1651        if ($name == "ROW") 
     1652        { 
     1653            if (count($attribs)) 
    16631654            { 
    1664                 foreach ($attribs as $k => $v)  
     1655                foreach ($attribs as $k => $v) 
    16651656                { 
    1666                     switch ($k)  
     1657                    switch ($k) 
    16671658                    { 
    16681659                        case "ERRORCODE": 
    16691660                            $ErrorData['errorCode'] = $v; 
    16701661                            break; 
    1671                         case "ERRORTEXT":   
     1662                        case "ERRORTEXT": 
    16721663                            $ErrorData['errorText'] = $v; 
    16731664                            break; 
     
    16781669    } 
    16791670 
    1680     function endElement($parser, $name)  
     1671    function endElement($parser, $name) 
    16811672    { 
    16821673                global $ErrorData; 
    16831674                global $tempvalue; 
    1684                  
     1675 
    16851676                if ($name == "CURRENTTIME") 
    16861677                        $this->CurrentTime_ = $tempvalue; 
     
    16901681                        ApiCache::set('API_eve_ErrorList' , $tempvalue); 
    16911682                } 
    1692                  
     1683 
    16931684        if ($name == "ROW") 
    16941685                { 
     
    16991690    } 
    17001691 
    1701     function characterData($parser, $data)  
     1692    function characterData($parser, $data) 
    17021693    { 
    17031694        global $tempvalue; 
    1704          
     1695 
    17051696                $tempvalue = $data; 
    17061697    } 
     
    17111702// ********************************************************************************************************************************************** 
    17121703 
    1713 class API_Jumps  
     1704class API_Jumps 
    17141705{ 
    17151706        function getCachedUntil() 
     
    17171708                return $this->CachedUntil_; 
    17181709        } 
    1719          
     1710 
    17201711        function getCurrentTime() 
    17211712        { 
    17221713                return $this->CurrentTime_; 
    17231714        } 
    1724          
     1715 
    17251716        function getDataTime() 
    17261717        { 
    17271718                return $this->DataTime_; 
    17281719        } 
    1729          
     1720 
    17301721        function getJumps() 
    17311722        { 
    17321723                return $this->Jumps_; 
    17331724        } 
    1734          
    1735     function fetchXML()  
     1725 
     1726    function fetchXML() 
    17361727    { 
    17371728        $data = LoadGlobalData('/map/Jumps.xml.aspx'); 
     
    17461737 
    17471738        xml_parser_free($xml_parser); 
    1748       
     1739 
    17491740        return $this->html; 
    17501741    } 
    17511742 
    1752     function startElement($parser, $name, $attribs)  
     1743    function startElement($parser, $name, $attribs) 
    17531744    { 
    17541745                global $JumpData; 
    1755                  
    1756         if ($name == "ROW")  
    1757         {  
    1758             if (count($attribs))  
     1746 
     1747        if ($name == "ROW") 
     1748        { 
     1749            if (count($attribs)) 
    17591750            { 
    1760                 foreach ($attribs as $k => $v)  
     1751                foreach ($attribs as $k => $v) 
    17611752                { 
    1762                     switch ($k)  
     1753                    switch ($k) 
    17631754                    { 
    17641755                        case "SOLARSYSTEMID": 
    17651756                            $JumpData['solarSystemID'] = $v; 
    17661757                            break; 
    1767                         case "SHIPJUMPS":   
     1758                        case "SHIPJUMPS": 
    17681759                            $JumpData['shipJumps'] = $v; 
    17691760                            break; 
     
    17741765    } 
    17751766 
    1776     function endElement($parser, $name)  
     1767    function endElement($parser, $name) 
    17771768    { 
    17781769                global $JumpData; 
    17791770                global $tempvalue; 
    1780                  
     1771 
    17811772                if ($name == "CURRENTTIME") 
    17821773                        $this->CurrentTime_ = $tempvalue; 
     
    17881779                        ApiCache::set('API_map_Jumps' , $tempvalue); 
    17891780                } 
    1790                  
     1781 
    17911782        if ($name == "ROW") 
    17921783                { 
     
    17971788    } 
    17981789 
    1799     function characterData($parser, $data)  
     1790    function characterData($parser, $data) 
    18001791    { 
    18011792        global $tempvalue; 
    1802          
     1793 
    18031794                $tempvalue = $data; 
    18041795    } 
     
    18091800// ********************************************************************************************************************************************** 
    18101801 
    1811 class API_Kills  
     1802class API_Kills 
    18121803{ 
    18131804        function getCachedUntil() 
     
    18151806                return $this->CachedUntil_; 
    18161807        } 
    1817          
     1808 
    18181809        function getCurrentTime() 
    18191810        { 
    18201811                return $this->CurrentTime_; 
    18211812        } 
    1822          
     1813 
    18231814        function getDataTime() 
    18241815        { 
    18251816                return $this->DataTime_; 
    18261817        } 
    1827          
     1818 
    18281819        function getkills() 
    18291820        { 
    18301821                return $this->kills_; 
    18311822        } 
    1832          
    1833     function fetchXML()  
     1823 
     1824    function fetchXML() 
    18341825    { 
    18351826        $data = LoadGlobalData('/map/Kills.xml.aspx'); 
     
    18441835 
    18451836        xml_parser_free($xml_parser); 
    1846       
     1837 
    18471838        return $this->html; 
    18481839    } 
    18491840 
    1850     function startElement($parser, $name, $attribs)  
     1841    function startElement($parser, $name, $attribs) 
    18511842    { 
    18521843                global $KillsData; 
    1853                  
    1854         if ($name == "ROW")  
    1855         {  
    1856             if (count($attribs))  
     1844 
     1845        if ($name == "ROW") 
     1846        { 
     1847            if (count($attribs)) 
    18571848            { 
    1858                 foreach ($attribs as $k => $v)  
     1849                foreach ($attribs as $k => $v) 
    18591850                { 
    1860                     switch ($k)  
     1851                    switch ($k) 
    18611852                    { 
    18621853                        case "SOLARSYSTEMID": 
    18631854                            $KillsData['solarSystemID'] = $v; 
    18641855                            break; 
    1865                         case "SHIPKILLS":   
     1856                        case "SHIPKILLS": 
    18661857                            $KillsData['shipKills'] = $v; 
    18671858                            break; 
    1868                                                 case "FACTIONKILLS":   
     1859                                                case "FACTIONKILLS": 
    18691860                            $KillsData['factionKills'] = $v; 
    18701861                            break; 
    1871                                                 case "PODKILLS":   
     1862                                                case "PODKILLS": 
    18721863                            $KillsData['podKills'] = $v; 
    18731864                            break; 
     
    18781869    } 
    18791870 
    1880     function endElement($parser, $name)  
     1871    function endElement($parser, $name) 
    18811872    { 
    18821873                global $KillsData; 
    18831874                global $tempvalue; 
    1884                  
     1875 
    18851876                if ($name == "CURRENTTIME") 
    18861877                        $this->CurrentTime_ = $tempvalue; 
     
    18921883                        ApiCache::set('API_map_Kills' , $tempvalue); 
    18931884                } 
    1894                  
     1885 
    18951886        if ($name == "ROW") 
    18961887                { 
     
    19011892    } 
    19021893 
    1903     function characterData($parser, $data)  
     1894    function characterData($parser, $data) 
    19041895    { 
    19051896        global $tempvalue; 
    1906          
     1897 
    19071898                $tempvalue = $data; 
    19081899    } 
     
    19191910                return $this->CachedUntil_; 
    19201911        } 
    1921          
     1912 
    19221913        function getCurrentTime() 
    19231914        { 
    19241915                return $this->CurrentTime_; 
    19251916        } 
    1926          
     1917 
    19271918        function getDataTime() 
    19281919        { 
    19291920                return $this->DataTime_; 
    19301921        } 
    1931          
     1922 
    19321923        function getSovereignty() 
    19331924        { 
     
    19351926        } 
    19361927 
    1937     function fetchXML()  
     1928    function fetchXML() 
    19381929    { 
    19391930        $data = LoadGlobalData('/map/Sovereignty.xml.aspx'); 
     
    19481939 
    19491940        xml_parser_free($xml_parser); 
    1950       
     1941 
    19511942        return $this->html; 
    19521943    } 
    19531944 
    1954     function startElement($parser, $name, $attribs)  
     1945    function startElement($parser, $name, $attribs) 
    19551946    { 
    19561947                global $SovereigntyData; 
    1957                  
    1958         if ($name == "ROW")  
    1959         {  
    1960             if (count($attribs))  
     1948 
     1949        if ($name == "ROW") 
     1950        { 
     1951            if (count($attribs)) 
    19611952            { 
    1962                 foreach ($attribs as $k => $v)  
     1953                foreach ($attribs as $k => $v) 
    19631954                { 
    1964                     switch ($k)  
     1955                    switch ($k) 
    19651956                    { 
    19661957                        case "SOLARSYSTEMID": 
    19671958                            $SovereigntyData['solarSystemID'] = $v; 
    19681959                            break; 
    1969                         case "ALLIANCEID":   
     1960                        case "ALLIANCEID": 
    19701961                            $SovereigntyData['allianceID'] = $v; 
    19711962                            break; 
    1972                                                 case "CONSTELLATIONSOVEREIGNTY":   
     1963                                                case "CONSTELLATIONSOVEREIGNTY": 
    19731964                            $SovereigntyData['constellationSovereignty'] = $v; 
    19741965                            break; 
    1975                                                 case "SOVEREIGNTYLEVEL":   
     1966                                                case "SOVEREIGNTYLEVEL": 
    19761967                            $SovereigntyData['sovereigntyLevel'] = $v; 
    19771968                            break; 
    1978                                                 case "FACTIONID":   
     1969                                                case "FACTIONID": 
    19791970                            $SovereigntyData['factionID'] = $v; 
    19801971                            break; 
    1981                                                 case "SOLARSYSTEMNAME":   
     1972                                                case "SOLARSYSTEMNAME": 
    19821973                            $SovereigntyData['solarSystemName'] = $v; 
    19831974                            break; 
     
    19881979    } 
    19891980 
    1990     function endElement($parser, $name)  
     1981    function endElement($parser, $name) 
    19911982    { 
    19921983                global $SovereigntyData; 
    19931984                global $tempvalue; 
    1994                  
     1985 
    19951986                if ($name == "CURRENTTIME") 
    19961987                        $this->CurrentTime_ = $tempvalue; 
     
    20071998                        ApiCache::set('API_map_Sovereignty' , $this->CachedUntil_); 
    20081999                } 
    2009                          
     2000 
    20102001        if ($name == "ROW") 
    20112002                { 
     
    20162007    } 
    20172008 
    2018     function characterData($parser, $data)  
     2009    function characterData($parser, $data) 
    20192010    { 
    20202011                global $tempvalue; 
    2021          
     2012 
    20222013                $tempvalue = $data; 
    20232014    } 
    2024          
     2015 
    20252016        function getSystemDetails($sysname) 
    20262017        { 
    20272018                if (!isset($this->Sovereignty_)) 
    20282019            $this->fetchXML(); 
    2029          
     2020 
    20302021        if (!isset($this->Sovereignty_)) 
    20312022            return false; 
    2032                  
     2023 
    20332024                $Sov = $this->Sovereignty_; 
    2034                  
     2025 
    20352026                foreach ($Sov as $myTempData) 
    20362027                { 
     
    20382029                                return $myTempData; 
    20392030                } 
    2040                  
     2031 
    20412032                return; 
    20422033        } 
    2043          
     2034 
    20442035        function getSystemIDDetails($sysID) 
    20452036        { 
    20462037                if (!isset($this->Sovereignty_)) 
    20472038            $this->fetchXML(); 
    2048          
     2039 
    20492040        if (!isset($this->Sovereignty_)) 
    20502041            return false; 
    2051                          
     2042 
    20522043                //echo var_dump($this->Sovereignty_); 
    2053                  
     2044 
    20542045                $Sov = $this->Sovereignty_; 
    2055                  
     2046 
    20562047                foreach ($Sov as $myTempData) 
    20572048                { 
     
    20592050                                return $myTempData; 
    20602051                } 
    2061                  
     2052 
    20622053                return false; 
    20632054        } 
     
    20742065                return $this->CachedUntil_; 
    20752066        } 
    2076          
     2067 
    20772068        function getCurrentTime() 
    20782069        { 
    20792070                return $this->CurrentTime_; 
    20802071        } 
    2081          
     2072 
    20822073        function getRefTypes() 
    20832074        { 
    20842075                return $this->RefTypes_; 
    20852076        } 
    2086          
    2087     function fetchXML()  
     2077 
     2078    function fetchXML() 
    20882079    { 
    20892080        $data = LoadGlobalData('/eve/RefTypes.xml.aspx'); 
     
    20982089 
    20992090        xml_parser_free($xml_parser); 
    2100       
     2091 
    21012092        return $this->html; 
    21022093    } 
    21032094 
    2104     function startElement($parser, $name, $attribs)  
     2095    function startElement($parser, $name, $attribs) 
    21052096    { 
    21062097                global $RefTypeData; 
    2107                  
    2108         if ($name == "ROW")  
    2109         {  
    2110             if (count($attribs))  
     2098 
     2099        if ($name == "ROW") 
     2100        { 
     2101            if (count($attribs)) 
    21112102            { 
    2112                 foreach ($attribs as $k => $v)  
     2103                foreach ($attribs as $k => $v) 
    21132104                { 
    2114                     switch ($k)  
     2105                    switch ($k) 
    21152106                    { 
    21162107                        case "REFTYPEID": 
    21172108                            $RefTypeData['refTypeID'] = $v; 
    21182109                            break; 
    2119                         case "REFTYPENAME":   
     2110                        case "REFTYPENAME": 
    21202111                            $RefTypeData['refTypeName'] = $v; 
    21212112                            break; 
     
    21262117    } 
    21272118 
    2128     function endElement($parser, $name)  
     2119    function endElement($parser, $name) 
    21292120    { 
    21302121                global $RefTypeData; 
    21312122                global $tempvalue; 
    2132                  
     2123 
    21332124                if ($name == "CURRENTTIME") 
    21342125                        $this->CurrentTime_ = $tempvalue; 
     
    21382129                        ApiCache::set('API_eve_RefTypes' , $tempvalue); 
    21392130                } 
    2140                          
     2131 
    21412132        if ($name == "ROW") 
    21422133                { 
     
    21472138    } 
    21482139 
    2149     function characterData($parser, $data)  
     2140    function characterData($parser, $data) 
    21502141    { 
    21512142        global $tempvalue; 
    2152         
     2143 
    21532144                $tempvalue = $data; 
    21542145    } 
     
    21652156                return $this->CachedUntil_; 
    21662157        } 
    2167          
     2158 
    21682159        function getCurrentTime() 
    21692160        { 
    21702161                return $this->CurrentTime_; 
    21712162        } 
    2172          
     2163 
    21732164        function getFacWarSystems() 
    21742165        { 
    21752166                return $this->FacWarSystems_; 
    21762167        } 
    2177          
    2178     function fetchXML()  
     2168 
     2169    function fetchXML() 
    21792170    { 
    21802171        $data = LoadGlobalData('/map/FacWarSystems.xml.aspx'); 
     
    21892180 
    21902181        xml_parser_free($xml_parser); 
    2191       
     2182 
    21922183        return $this->FacWarSystems_; 
    21932184    } 
    21942185 
    2195     function startElement($parser, $name, $attribs)  
     2186    function startElement($parser, $name, $attribs) 
    21962187    { 
    21972188                global $FacWarSystem; 
    2198                  
    2199         if ($name == "ROW")  
    2200         {  
    2201             if (count($attribs))  
     2189 
     2190        if ($name == "ROW") 
     2191        { 
     2192            if (count($attribs)) 
    22022193            { 
    2203                 foreach ($attribs as $k => $v)  
     2194                foreach ($attribs as $k => $v) 
    22042195                { 
    2205                     switch ($k)  
     2196                    switch ($k) 
    22062197                    { 
    22072198                        case "SOLARSYSTEMID": 
    22082199                            $FacWarSystem['solarSystemID'] = $v; 
    22092200                            break; 
    2210                         case "SOLARSYSTEMNAME":   
     2201                        case "SOLARSYSTEMNAME": 
    22112202                            $FacWarSystem['solarSystemName'] = $v; 
    22122203                            break; 
     
    22262217    } 
    22272218 
    2228     function endElement($parser, $name)  
     2219    function endElement($parser, $name) 
    22292220    { 
    22302221                global $FacWarSystem; 
    22312222                global $tempvalue; 
    2232                  
     2223 
    22332224                if ($name == "CURRENTTIME") 
    22342225                        $this->CurrentTime_ = $tempvalue; 
     
    22432234                        ApiCache::set('API_map_FacWarSystems' , $this->CachedUntil_); 
    22442235                } 
    2245                  
     2236 
    22462237        if ($name == "ROW") 
    22472238                { 
     
    22522243    } 
    22532244 
    2254     function characterData($parser, $data)  
     2245    function characterData($parser, $data) 
    22552246    { 
    22562247        global $tempvalue; 
    2257         
     2248 
    22582249                $tempvalue = $data; 
    22592250    } 
     
    22642255// ********************************************************************************************************************************************** 
    22652256class API_Standings 
    2266 {                
     2257{ 
    22672258        function getCachedUntil() 
    22682259        { 
    22692260                return $this->CachedUntil_; 
    22702261        } 
    2271          
     2262 
    22722263        function getCurrentTime() 
    22732264        { 
    22742265                return $this->CurrentTime_; 
    22752266        } 
    2276          
     2267 
    22772268        // boolean value - sets between char/corp 
    2278         function isUser($value)  
     2269        function isUser($value) 
    22792270        { 
    22802271                $this->isUser_ = $value; 
    22812272        } 
    2282          
     2273 
    22832274        function setAPIKey($key) 
    22842275        { 
    22852276                $this->API_apiKey_ = $key; 
    22862277        } 
    2287          
     2278 
    22882279        function setUserID($uid) 
    22892280        { 
    22902281                $this->API_userID_ = $uid; 
    22912282        } 
    2292          
     2283 
    22932284        function setCharacterID($cid) 
    22942285        { 
    22952286                $this->API_characterID_ = $cid; 
    22962287        } 
    2297          
     2288 
    22982289        function getCharacters() 
    22992290        { 
     
    23282319                return $this->AliianceAlliances_; 
    23292320        } 
    2330          
     2321 
    23312322        function fetchXML() 
    23322323        { 
    23332324                $this->isAllianceStandings_ = false; 
    23342325                $this->isCorporationStandings_ = false; 
    2335                  
     2326 
    23362327                if ($this->isUser_) 
    2337                 {  
     2328                { 
    23382329                        // is a player feed - take details from logged in user 
    23392330                        if (user::get('usr_pilot_id')) 
     
    23412332                                $myEveCharAPI = new API_CharacterSheet(); 
    23422333                                $this->html .= $myEveCharAPI->fetchXML(); 
    2343          
     2334 
    23442335                                $skills = $myEveCharAPI->getSkills(); 
    2345          
     2336 
    23462337                                $this->connections_ = 0; 
    23472338                                $this->diplomacy_ = 0; 
    2348          
     2339 
    23492340                                foreach ((array)$skills as $myTempData) 
    23502341                                { 
     
    23562347 
    23572348                                $myKeyString = "userID=" . $this->API_userID_ . "&apiKey=" . $this->API_apiKey_ . "&characterID=" . $this->API_characterID_; 
    2358                                  
     2349 
    23592350                                $data = $this->loaddata($myKeyString, "char"); 
    23602351                        } else { 
    23612352                                return "You are not logged in."; 
    23622353                        } 
    2363                  
    2364                 } else {  
     2354 
     2355                } else { 
    23652356                        // is a corp feed 
    23662357                        $myKeyString = "userID=" . $this->API_userID_ . "&apiKey=" . $this->API_apiKey_ . "&characterID=" . $this->API_characterID_; 
     
    23772368 
    23782369        xml_parser_free($xml_parser); 
    2379                  
     2370 
    23802371                // sort the arrays (in descending order of standing) 
    23812372                $this->Factions_ = $this->mysortarray($this->Factions_); 
     
    23872378                $this->AllianceCorporations_ = $this->mysortarray($this->AllianceCorporations_); 
    23882379                $this->AllianceAlliances_ = $this->mysortarray($this->AliianceAlliances_); 
    2389                  
     2380 
    23902381                return $this->html; 
    23912382        } 
    2392          
     2383 
    23932384        function mysortarray($arraydata) 
    23942385        { 
    2395                 if (count($arraydata) != 0 )  
    2396                 {  
     2386                if (count($arraydata) != 0 ) 
     2387                { 
    23972388                        foreach ((array)$arraydata as $key => $row) { 
    23982389                        $standing[$key]  = $row['Standing']; 
     
    24002391                                $id[$key] = $row['ID']; 
    24012392                        } 
    2402                          
     2393 
    24032394                        array_multisort($standing, SORT_DESC, $name, SORT_ASC, $id, SORT_ASC, $arraydata); 
    2404                                  
     2395 
    24052396                        $standing = array(); 
    24062397                        unset($standing); 
     
    24092400                        $id = array(); 
    24102401                        unset($id); 
    2411                          
     2402 
    24122403                        return $arraydata; 
    24132404                } 
    24142405        } 
    2415          
    2416         function startElement($parser, $name, $attribs)  
    2417     { 
    2418                  
     2406 
     2407        function startElement($parser, $name, $attribs) 
     2408    { 
     2409 
    24192410                if ($name == "CORPORATIONSTANDINGS") 
    24202411                { 
     
    24352426                        $this->isCorporationStandings_ = false; 
    24362427                } 
    2437                  
     2428 
    24382429                if ($name == "ROWSET") // In this If statement we set booleans to ultimately determine where the data in the next If statement is stored 
    24392430        { 
    2440             if (count($attribs))  
     2431            if (count($attribs)) 
    24412432            { 
    2442                 foreach ($attribs as $k => $v)  
     2433                foreach ($attribs as $k => $v) 
    24432434                { 
    2444                     switch ($k)  
     2435                    switch ($k) 
    24452436                    { 
    24462437                        case "NAME": 
    2447                                                         switch ($v)  
    2448                                 {        
     2438                                                        switch ($v) 
     2439                                { 
    24492440                                                                // bitwise or numeric flag would be better and more concise - but fuck it! 
    24502441                                                                case "characters": // can only be personal/corp 
     
    24672458                                                                        $this->isAllianceCorporations_ = false; 
    24682459                                                                        $this->isAllianceAlliances_ = false; 
    2469                                                                          
     2460 
    24702461                                                                        if (!$this->isAllianceStandings_) // then it is personal/corp 
    24712462                                                                        { 
     
    24842475                                                                        $this->isAllianceCorporations_ = false; 
    24852476                                                                        $this->isAllianceAlliances_ = false; 
    2486                                                                          
     2477 
    24872478                                                                        if (!$this->isAllianceStandings_) // then it is personal/corp 
    24882479                                                                        { 
     
    24902481                                                                        } else { // then it is alliance 
    24912482                                                                                $this->isAllianceAlliances_ = true; 
    2492                                                                         }        
     2483                                                                        } 
    24932484                                                                        break; 
    24942485                                                                case "agents": // can only be personal/corp 
     
    25212512                                                                        $this->isAllianceCorporations_ = false; 
    25222513                                                                        $this->isAllianceAlliances_ = false; 
    2523                                                                         break;   
     2514                                                                        break; 
    25242515                                                        } 
    25252516                            break; 
     
    25282519                        } 
    25292520                } 
    2530                  
    2531                 if ($name == "ROW")  
     2521 
     2522                if ($name == "ROW") 
    25322523        { 
    25332524                        global $tempdata; 
    2534                          
    2535                         if (count($attribs))  
     2525 
     2526                        if (count($attribs)) 
    25362527            { 
    2537                 foreach ($attribs as $k => $v)  
     2528                foreach ($attribs as $k => $v) 
    25382529                { 
    2539                     switch ($k)  
     2530                    switch ($k) 
    25402531                    { 
    25412532                                                case "TOID": 
    25422533                                                        $tempdata['ID'] = $v; 
    2543                             break;       
     2534                            break; 
    25442535                                                case "FROMID": 
    25452536                                                        $tempdata['ID'] = $v; 
    2546                             break;       
     2537                            break; 
    25472538                                                case "TONAME": 
    25482539                                                        $tempdata['Name'] = $v; 
    2549                             break;       
     2540                            break; 
    25502541                                                case "FROMNAME": 
    25512542                                                        $tempdata['Name'] = $v; 
    2552                             break;       
     2543                            break; 
    25532544                                                case "STANDING": 
    25542545                                                        // use flags determined in previous If... to load the correct array[] 
    25552546                                                        if ($this->isUser_ && !$this->StandingsTo_) 
    2556                                                         {  
     2547                                                        { 
    25572548                                                                // set standings bonus where applicable 
    25582549                                                                // calculate bonus 
     
    25642555                                                                $tempdata['Standing'] = $v; 
    25652556                                                        } 
    2566                                                          
     2557 
    25672558                                                        // check that 'Name' isn't empty as this means the value was reset 
    25682559                                                        if ($tempdata['Name'] != "") 
    2569                                                         {        
     2560                                                        { 
    25702561                                                                if ($this->isCharacters_) { 
    25712562                                                                        $this->Characters_[] = $tempdata; 
     
    25862577                                                                } 
    25872578                                                        } 
    2588                                                          
     2579 
    25892580                                                        $tempdata = array(); 
    25902581                                                        unset($tempdata); 
    2591                             break;                       
     2582                            break; 
    25922583                                        } 
    25932584                                } 
    25942585                        } 
    25952586                } 
    2596     }                            
    2597  
    2598     function endElement($parser, $name)  
    2599     { 
    2600          
     2587    } 
     2588 
     2589    function endElement($parser, $name) 
     2590    { 
     2591 
    26012592                if ($name == "CURRENTTIME") 
    26022593                        $this->CurrentTime_ = $this->characterDataValue; 
     
    26082599    } 
    26092600 
    2610     function characterData($parser, $data)  
     2601    function characterData($parser, $data) 
    26112602    { 
    26122603                $this->characterDataValue = $data; 
    26132604    } 
    2614          
     2605 
    26152606        function loaddata($keystring, $typestring) 
    26162607    { 
    26172608                $configvalue = $this->API_characterID_ . '_Standings'; 
    2618                  
     2609 
    26192610                $CachedTime = ApiCache::get($configvalue); 
    26202611                $UseCaching = config::get('API_UseCache'); 
    2621                  
     2612 
    26222613        $url = "http://api.eve-online.com/" . $typestring . "/Standings.xml.aspx" . $keystring; 
    26232614        $path = "/" . $typestring . "/Standings.xml.aspx"; 
    2624                          
     2615 
    26252616                // API Caching system, If we're still under cachetime reuse the last XML, if not download the new one. Helps with Bug hunting and just better all round. 
    26262617                if ($CachedTime == "") 
     
    26282619                $CachedTime = "2005-01-01 00:00:00"; // fake date to ensure that it runs first time. 
    26292620        } 
    2630                  
     2621 
    26312622                if (is_file(getcwd().'/cache/api/'.$configvalue.'.xml')) 
    26322623                        $cacheexists = true; 
    26332624                else 
    26342625                        $cacheexists = false; 
    2635                          
    2636                  
     2626 
     2627 
    26372628                if ((strtotime(gmdate("M d Y H:i:s")) - strtotime($CachedTime) > 0) || ($UseCaching == 1)  || !$cacheexists )// if API_UseCache = 1 (off) then don't use cache 
    26382629        { 
     
    26672658                        $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    26682659                        } 
    2669                          
     2660 
    26702661                                if ($UseCaching == 0) // Save the file if we're caching (0 = true in Thunks world) 
    26712662                                { 
     
    26742665                                fclose($file); 
    26752666                                        @chmod(getcwd().'/cache/api/'.$configvalue.'.xml',0666); 
    2676                                 }  
    2677                 }  
     2667                                } 
     2668                } 
    26782669                } else { 
    26792670                        // re-use cached XML 
     
    26822673                        fclose($fp); 
    26832674                } else { 
    2684                                 return "<i>error loading cached file ".$configvalue.".xml</i><br><br>";   
     2675                                return "<i>error loading cached file ".$configvalue.".xml</i><br><br>"; 
    26852676                } 
    26862677                } 
     
    26932684// ********************************************************************************************************************************************** 
    26942685// Incomplete - Does not read Certificates or Roles 
    2695 class API_CharacterSheet  
    2696 {                
     2686class API_CharacterSheet 
     2687{ 
    26972688        function getCachedUntil() 
    26982689        { 
    26992690                return $this->CachedUntil_; 
    27002691        } 
    2701          
     2692 
    27022693        function getCurrentTime() 
    27032694        { 
    27042695                return $this->CurrentTime_; 
    27052696        } 
    2706          
     2697 
    27072698        function getSkills() 
    27082699        { 
    27092700                return $this->Skills_; 
    27102701        } 
    2711          
     2702 
    27122703        // array 1-5 based on implant slot position. 6-10 don't seem to appear, presumably because Hardwirings do not affect skill training. 
    2713         function getImplants()  
     2704        function getImplants() 
    27142705        { 
    27152706                return $this->Implant_; 
    27162707        } 
    2717          
     2708 
    27182709        function getIntelligence() 
    27192710        { 
    27202711                return $this->Intelligence_; 
    27212712        } 
    2722          
     2713 
    27232714        function getMemory() 
    27242715        { 
    27252716                return $this->Memory_; 
    27262717        } 
    2727          
     2718 
    27282719        function getCharisma() 
    27292720        { 
    27302721                return $this->Charisma_; 
    27312722        } 
    2732          
     2723 
    27332724        function getPerception() 
    27342725        { 
    27352726                return $this->Perception_; 
    27362727        } 
    2737          
     2728 
    27382729        function getWillpower() 
    27392730        { 
    27402731                return $this->Willpower_; 
    2741         }        
     2732        } 
    27422733        function getCharacterID() 
    27432734        { 
     
    27882779                        $plt = new pilot(user::get('usr_pilot_id')); 
    27892780                        $usersname = $plt->getName(); 
    2790                          
     2781 
    27912782                        $this->CharName_ = $usersname;  // $this->CharName_ is used later for config key value for caching 
    2792                          
     2783 
    27932784                        $sql = 'select plts.plt_id, plts.plt_externalid from kb3_pilots plts where plts.plt_name = "' . $usersname . '"'; 
    27942785 
     
    28042795                        return "Something went wrong with finiding pilots external ID<br>"; 
    28052796                } 
    2806                  
     2797 
    28072798                        $newsql = 'SELECT userID , apiKey FROM kb3_api_user WHERE charID = "' . $API_charID . '"'; 
    28082799                        $qry->execute($newsql); 
    28092800                $userrow = $qry->getRow(); 
    2810                  
     2801 
    28112802                        $API_userID = $userrow['userID']; 
    28122803                        $API_apiKey = $userrow['apiKey']; 
    2813                          
     2804 
    28142805                        $myKeyString = "userID=" . $API_userID . "&apiKey=" . $API_apiKey . "&characterID=" . $API_charID; 
    2815                                  
     2806 
    28162807                        $data = $this->loaddata($myKeyString); 
    28172808                } else { 
     
    28282819 
    28292820        xml_parser_free($xml_parser); 
    2830                  
     2821 
    28312822                return $this->html; 
    28322823        } 
    2833          
    2834         function startElement($parser, $name, $attribs)  
    2835     { 
    2836                 if ($name == "ROW")  
     2824 
     2825        function startElement($parser, $name, $attribs) 
     2826    { 
     2827                if ($name == "ROW") 
    28372828        { 
    28382829                        global $tempdata; 
    2839                          
    2840                         if (count($attribs))  
     2830 
     2831                        if (count($attribs)) 
    28412832            { 
    2842                 foreach ($attribs as $k => $v)  
     2833                foreach ($attribs as $k => $v) 
    28432834                { 
    2844                     switch ($k)  
     2835                    switch ($k) 
    28452836                    { 
    28462837                                                case "TYPEID": 
     
    28502841                                                        $tempdata['GroupName'] = getgroupIDname($tempdata['GroupID']); 
    28512842                                                        $tempdata['Rank'] = gettypeIDrank($v); 
    2852                             break;       
     2843                            break; 
    28532844                                                case "SKILLPOINTS": 
    28542845                                                        $tempdata['SkillPoints'] = $v; 
    2855                             break;       
     2846                            break; 
    28562847                                                case "LEVEL": 
    28572848                                                        $tempdata['Level'] = $v; 
    2858                                                          
     2849 
    28592850                                                        $this->Skills_[] = $tempdata; 
    2860                                                          
     2851 
    28612852                                                        $tempdata = array(); 
    28622853                                                        unset($tempdata); 
    2863                             break;       
     2854                            break; 
    28642855                                                case "UNPUBLISHED": // unused skill eg. Black Market Trading 
    28652856                                                        $tempdata = array(); 
     
    28702861                        } 
    28712862                } 
    2872     }                            
    2873  
    2874     function endElement($parser, $name)  
     2863    } 
     2864 
     2865    function endElement($parser, $name) 
    28752866    { 
    28762867                // Player Details 
     
    28902881                        $this->CorporationID_ = $this->characterDataValue; 
    28912882                if ($name == "CLONENAME") 
    2892                         $this->CloneName_ = $this->characterDataValue;   
     2883                        $this->CloneName_ = $this->characterDataValue; 
    28932884                if ($name == "CLONESKILLPOINTS") 
    28942885                        $this->CloneSkillPoints_ = $this->characterDataValue; 
    28952886                if ($name == "BALANCE") 
    2896                         $this->Balance_ = $this->characterDataValue;     
    2897                  
     2887                        $this->Balance_ = $this->characterDataValue; 
     2888 
    28982889                // Augmentations 
    28992890                if ($name == "AUGMENTATORNAME") 
     
    29012892                if ($name == "AUGMENTATORVALUE") 
    29022893                        $tempaug['Value'] = $this->characterDataValue; 
    2903                  
     2894 
    29042895                if ($name == "PERCEPTIONBONUS") 
    29052896                { 
    29062897                        $this->Implant_[1] = $tempaug; 
    2907                          
     2898 
    29082899                        $tempaug = array(); 
    29092900                        unset($tempaug); 
     
    29122903                { 
    29132904                        $this->Implant_[2] = $tempaug; 
    2914                          
     2905 
    29152906                        $tempaug = array(); 
    29162907                        unset($tempaug); 
     
    29192910                { 
    29202911                        $this->Implant_[3] = $tempaug; 
    2921                          
     2912 
    29222913                        $tempaug = array(); 
    29232914                        unset($tempaug); 
     
    29262917                { 
    29272918                        $this->Implant_[4] = $tempaug; 
    2928                          
     2919 
    29292920                        $tempaug = array(); 
    29302921                        unset($tempaug); 
     
    29332924                { 
    29342925                        $this->Implant_[5] = $tempaug; 
    2935                          
     2926 
    29362927                        $tempaug = array(); 
    29372928                        unset($tempaug); 
    29382929                } 
    2939                          
     2930 
    29402931                // Attributes 
    29412932                if ($name == "INTELLIGENCE") 
     
    29442935                        $this->Memory_ = $this->characterDataValue; 
    29452936                if ($name == "CHARISMA") 
    2946                         $this->Charisma_ = $this->characterDataValue;    
     2937                        $this->Charisma_ = $this->characterDataValue; 
    29472938                if ($name == "PERCEPTION") 
    29482939                        $this->Perception_ = $this->characterDataValue; 
    29492940                if ($name == "WILLPOWER") 
    29502941                        $this->Willpower_ = $this->characterDataValue; 
    2951                  
     2942 
    29522943                if ($name == "CURRENTTIME") 
    29532944                        $this->CurrentTime_ = $this->characterDataValue; 
     
    29602951    } 
    29612952 
    2962     function characterData($parser, $data)  
     2953    function characterData($parser, $data) 
    29632954    { 
    29642955                $this->characterDataValue = $data; 
     
    29682959    { 
    29692960                $configvalue = $this->CharName_ . '_CharacterSheet'; 
    2970                  
     2961 
    29712962                $CachedTime = ApiCache::get($configvalue); 
    29722963                $UseCaching = config::get('API_UseCache'); 
    2973                  
     2964 
    29742965        $url = "http://api.eve-online.com/char/CharacterSheet.xml.aspx" . $keystring; 
    29752966 
    29762967        $path = '/char/CharacterSheet.xml.aspx'; 
    2977                  
     2968 
    29782969                // API Caching system, If we're still under cachetime reuse the last XML, if not download the new one. Helps with Bug hunting and just better all round. 
    29792970                if ($CachedTime == "") 
     
    29812972                $CachedTime = "2005-01-01 00:00:00"; // fake date to ensure that it runs first time. 
    29822973        } 
    2983                  
     2974 
    29842975                if (is_file(getcwd().'/cache/api/'.$configvalue.'.xml')) 
    29852976                        $cacheexists = true; 
    29862977                else 
    29872978                        $cacheexists = false; 
    2988                          
     2979 
    29892980                // if API_UseCache = 1 (off) then don't use cache 
    29902981                if ((strtotime(gmdate("M d Y H:i:s")) - strtotime($CachedTime) > 0) || ($UseCaching == 1)  || !$cacheexists ) 
     
    30203011                        $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    30213012                } 
    3022                                  
     3013 
    30233014                                // Save the file if we're caching (0 = true in Thunks world) 
    3024                                 if ($UseCaching == 0)  
     3015                                if ($UseCaching == 0) 
    30253016                                { 
    30263017                                        $file = fopen(getcwd().'/cache/api/'.$configvalue.'.xml', 'w+'); 
     
    30283019                                fclose($file); 
    30293020                                        @chmod(getcwd().'/cache/api/'.$configvalue.'.xml',0666); 
    3030                                 }  
    3031                 }  
     3021                                } 
     3022                } 
    30323023                } else { 
    30333024                        // re-use cached XML 
     
    30363027                        fclose($fp); 
    30373028                } else { 
    3038                                 return "<i>error loading cached file ".$configvalue.".xml</i><br><br>";   
     3029                                return "<i>error loading cached file ".$configvalue.".xml</i><br><br>"; 
    30393030                } 
    30403031                } 
     
    30463037// ****************                                 API Skill Training Sheet - char/SkillInTraining.xml.aspx                     **************** 
    30473038// ********************************************************************************************************************************************** 
    3048 class API_SkillInTraining  
    3049 {                
     3039class API_SkillInTraining 
     3040{ 
    30503041 
    30513042        function getSkillInTraining() 
     
    30533044                return $this->SkillInTraining_; 
    30543045        } 
    3055          
     3046 
    30563047        function getCurrentTQTime() 
    30573048        { 
    30583049                return $this->CurrentTQTime_; 
    30593050        } 
    3060          
     3051 
    30613052        function getTrainingEndTime() 
    30623053        { 
    30633054                return $this->TrainingEndTime_; 
    30643055        } 
    3065          
     3056 
    30663057        function getTrainingStartTime() 
    30673058        { 
    30683059                return $this->TrainingStartTime_; 
    30693060        } 
    3070          
     3061 
    30713062        function getTrainingTypeID() 
    30723063        { 
    30733064                return $this->TrainingTypeID_; 
    30743065        } 
    3075          
     3066 
    30763067        function getTrainingStartSP() 
    30773068        { 
    30783069                return $this->TrainingStartSP_; 
    30793070        } 
    3080          
     3071 
    30813072        function getTrainingDestinationSP() 
    30823073        { 
    30833074                return $this->TrainingDestinationSP_; 
    30843075        } 
    3085          
     3076 
    30863077        function getTrainingToLevel() 
    30873078        { 
    30883079                return $this->TrainingToLevel_; 
    30893080        } 
    3090          
     3081 
    30913082        function getCachedUntil() 
    30923083        { 
    30933084                return $this->CachedUntil_; 
    30943085        } 
    3095          
     3086 
    30963087        function getCurrentTime() 
    30973088        { 
     
    31033094                return $this->SPTrained_; 
    31043095        } 
    3105          
     3096 
    31063097        function getTrainingTimeRemaining() 
    31073098        { 
    31083099                return $this->TrainingTimeRemaining_; 
    31093100        } 
    3110          
     3101 
    31113102        function fetchXML() 
    31123103        { 
     
    31173108                        $plt = new pilot(user::get('usr_pilot_id')); 
    31183109                        $usersname = $plt->getName(); 
    3119                          
     3110 
    31203111                        $this->CharName_ = $usersname; 
    3121                          
     3112 
    31223113                        $sql = 'select plts.plt_id, plts.plt_externalid from kb3_pilots plts where plts.plt_name = "' . $usersname . '"'; 
    31233114 
     
    31333124                        return "Something went wrong with finiding pilots external ID<br>"; 
    31343125                } 
    3135                  
     3126 
    31363127                        $newsql = 'SELECT userID , apiKey FROM kb3_api_user WHERE charID = "' . $API_charID . '"'; 
    31373128                        $qry->execute($newsql); 
    31383129                $userrow = $qry->getRow(); 
    3139                  
     3130 
    31403131                        $API_userID = $userrow['userID']; 
    31413132                        $API_apiKey = $userrow['apiKey']; 
    3142                          
     3133 
    31433134                        $myKeyString = "userID=" . $API_userID . "&apiKey=" . $API_apiKey . "&characterID=" . $API_charID; 
    3144                                  
     3135 
    31453136                        $data = $this->loaddata($myKeyString); 
    31463137                } else { 
     
    31573148 
    31583149        xml_parser_free($xml_parser); 
    3159                  
     3150 
    31603151                // Calculate Time Training remaining and amount of SP Done 
    31613152                if ($this->SkillInTraining_ == 1) 
     
    31763167                $difference = gmmktime($hour, $minute, $second, $month, $day, $year) - $now; 
    31773168                        $timedone = $difference; 
    3178                 if ($difference >= 1)  
     3169                if ($difference >= 1) 
    31793170                        { 
    31803171                        $days = floor($difference/86400); 
     
    31893180                        $this->TrainingTimeRemaining_ = "Done !"; 
    31903181                } 
    3191                  
     3182 
    31923183                        // Calculate SP done by using the ratio gained from Time spent training so far. 
    31933184                $finaltime = strtotime($this->TrainingEndTime_) - strtotime($this->TrainingStartTime_); // in seconds 
     
    31953186                        $this->SPTrained_ = ($this->TrainingDestinationSP_ - $this->TrainingStartSP_) * $ratio; 
    31963187                } 
    3197                  
     3188 
    31983189                return $this->html; // should be empty, but keeping just incase - errors are returned by Text so worth looking anyway. 
    31993190        } 
    3200          
    3201         function startElement($parser, $name, $attribs)  
     3191 
     3192        function startElement($parser, $name, $attribs) 
    32023193    { 
    32033194                // Nothing to do here 
    3204     }                            
    3205  
    3206     function endElement($parser, $name)  
     3195    } 
     3196 
     3197    function endElement($parser, $name) 
    32073198    { 
    32083199                // Details 
     
    32233214                if ($name == "TRAININGTOLEVEL") 
    32243215                        $this->TrainingToLevel_ = $this->characterDataValue; 
    3225                          
     3216 
    32263217                if ($name == "CURRENTTIME") 
    32273218                        $this->CurrentTime_ = $this->characterDataValue; 
     
    32343225    } 
    32353226 
    3236     function characterData($parser, $data)  
     3227    function characterData($parser, $data) 
    32373228    { 
    32383229                $this->characterDataValue = $data; 
    32393230    } 
    3240          
     3231 
    32413232        function loaddata($keystring) 
    32423233    { 
    32433234                $configvalue = $this->CharName_ . '_SkillInTraining'; 
    3244                  
     3235 
    32453236                $CachedTime = ApiCache::get($configvalue); 
    32463237                $UseCaching = config::get('API_UseCache'); 
    3247                  
     3238 
    32483239        $url = "http://api.eve-online.com/char/SkillInTraining.xml.aspx" . $keystring; 
    32493240 
    32503241        $path = '/char/SkillInTraining.xml.aspx'; 
    3251                  
     3242 
    32523243                // API Caching system, If we're still under cachetime reuse the last XML, if not download the new one. Helps with Bug hunting and just better all round. 
    32533244                if ($CachedTime == "") 
     
    32553246                $CachedTime = "2005-01-01 00:00:00"; // fake date to ensure that it runs first time. 
    32563247        } 
    3257                  
     3248 
    32583249                if (is_file(getcwd().'/cache/api/'.$configvalue.'.xml')) 
    32593250                        $cacheexists = true; 
    32603251                else 
    32613252                        $cacheexists = false; 
    3262                          
     3253 
    32633254                // if API_UseCache = 1 (off) then don't use cache 
    32643255                if ((strtotime(gmdate("M d Y H:i:s")) - strtotime($CachedTime) > 0) || ($UseCaching == 1)  || !$cacheexists ) 
     
    32943285                        $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    32953286                } 
    3296                                  
     3287 
    32973288                                // Save the file if we're caching (0 = true in Thunks world) 
    3298                                 if ($UseCaching == 0)  
     3289                                if ($UseCaching == 0) 
    32993290                                { 
    33003291                                        $file = fopen(getcwd().'/cache/api/'.$configvalue.'.xml', 'w+'); 
     
    33023293                                fclose($file); 
    33033294                                        @chmod(getcwd().'/cache/api/'.$configvalue.'.xml',0666); 
    3304                                 }  
    3305                 }  
     3295                                } 
     3296                } 
    33063297                } else { 
    33073298                        // re-use cached XML 
     
    33103301                        fclose($fp); 
    33113302                } else { 
    3312                                 return "<i>error loading cached file ".$configvalue.".xml</i><br><br>";   
     3303                                return "<i>error loading cached file ".$configvalue.".xml</i><br><br>"; 
    33133304                } 
    33143305                } 
     
    33203311// ****************                                       API StarbaseList - /corp/StarbaseList.xml.aspx                         **************** 
    33213312// ********************************************************************************************************************************************** 
    3322 class API_StarbaseList  
    3323 {                
     3313class API_StarbaseList 
     3314{ 
    33243315        function getCachedUntil() 
    33253316        { 
    33263317                return $this->CachedUntil_; 
    33273318        } 
    3328          
     3319 
    33293320        function getCurrentTime() 
    33303321        { 
    33313322                return $this->CurrentTime_; 
    33323323        } 
    3333          
     3324 
    33343325        function setAPIKey($key) 
    33353326        { 
    33363327                $this->API_apiKey_ = $key; 
    33373328        } 
    3338          
     3329 
    33393330        function setUserID($uid) 
    33403331        { 
    33413332                $this->API_userID_ = $uid; 
    33423333        } 
    3343          
     3334 
    33443335        function setCharacterID($cid) 
    33453336        { 
    33463337                $this->API_charID_ = $cid; 
    33473338        } 
    3348          
     3339 
    33493340        function getStarbases() 
    33503341        { 
    33513342                return $this->Starbase_; 
    33523343        } 
    3353          
     3344 
    33543345        function fetchXML() 
    33553346        { 
     
    33603351                        $plt = new pilot(user::get('usr_pilot_id')); 
    33613352                        $usersname = $plt->getName(); 
    3362                          
     3353 
    33633354                        $this->CharName_ = $usersname; 
    3364                          
     3355 
    33653356                        $sql = 'select plts.plt_id, plts.plt_externalid from kb3_pilots plts where plts.plt_name = "' . $usersname . '"'; 
    33663357 
     
    33763367                        return "Something went wrong with finiding pilots external ID<br>"; 
    33773368                } 
    3378                  
     3369 
    33793370                        $newsql = 'SELECT userID , apiKey FROM kb3_api_user WHERE charID = "' . $API_charID . '"'; 
    33803371                        $qry->execute($newsql); 
    33813372                $userrow = $qry->getRow(); 
    3382                  
     3373 
    33833374                        $API_userID = $userrow['userID']; 
    33843375                        $API_apiKey = $userrow['apiKey']; 
    3385                          
     3376 
    33863377                        $myKeyString = "userID=" . $API_userID . "&apiKey=" . $API_apiKey . "&characterID=" . $API_charID; 
    3387                                  
     3378 
    33883379                        $data = $this->loaddata($myKeyString); 
    33893380                } else { 
     
    34073398 
    34083399        xml_parser_free($xml_parser); 
    3409                  
     3400 
    34103401                return $this->html; // should be empty, but keeping just incase - errors are returned by Text so worth looking anyway. 
    34113402        } 
    3412          
    3413         function startElement($parser, $name, $attribs)  
    3414     { 
    3415                 if ($name == "ROW")  
     3403 
     3404        function startElement($parser, $name, $attribs) 
     3405    { 
     3406                if ($name == "ROW") 
    34163407        { 
    34173408                        global $tempdata; 
    3418                          
    3419                         if (count($attribs))  
     3409 
     3410                        if (count($attribs)) 
    34203411            { 
    3421                 foreach ($attribs as $k => $v)  
     3412                foreach ($attribs as $k => $v) 
    34223413                { 
    3423                     switch ($k)  
     3414                    switch ($k) 
    34243415                    { 
    34253416                                                case "ITEMID": 
    34263417                                                        $tempdata['itemID'] = $v; 
    3427                             break;       
     3418                            break; 
    34283419                                                case "TYPEID": 
    34293420                                                        $tempdata['typeID'] = $v; 
    34303421                                                        $tempdata['typeName'] = gettypeIDname($v); 
    3431                             break;       
     3422                            break; 
    34323423                                                case "LOCATIONID": 
    34333424                                                        $tempdata['locationID'] = $v; 
     
    34443435                                else 
    34453436                                $tempdata['locationSec'] = number_format(round($mysec, 1), 1); 
    3446                             break;       
     3437                            break; 
    34473438                                                case "MOONID": 
    34483439                                                        $tempdata['moonID'] = $v; 
    34493440                                                        $tempmoon = getMoonName($v); 
    3450                                                          
     3441 
    34513442                                                        if ($tempmoon == "") 
    34523443                                                        { 
     
    34543445                                                                $this->myIDName = new API_IDtoName(); 
    34553446                                                                $this->myIDName->clear(); 
    3456                                                                 $this->myIDName->setIDs($v);  
     3447                                                                $this->myIDName->setIDs($v); 
    34573448                                                                $this->Output_ .= $this->myIDName->fetchXML(); 
    34583449                                                                $myNames = $this->myIDName->getIDData(); 
    3459                                                                 $tempdata['moonName'] = $myNames[0]['name'];             
     3450                                                                $tempdata['moonName'] = $myNames[0]['name']; 
    34603451                                                        } else { 
    34613452                                                                $tempdata['moonName'] = $tempmoon; 
    34623453                                                        } 
    3463                             break;       
    3464                                                 case "STATE":  
     3454                            break; 
     3455                                                case "STATE": 
    34653456                                                        $tempdata['state'] = $v; 
    34663457                            break; 
    3467                                                 case "STATETIMESTAMP":  
     3458                                                case "STATETIMESTAMP": 
    34683459                                                        $tempdata['stateTimestamp'] = $v; 
    34693460                            break; 
    3470                                                 case "ONLINETIMESTAMP":  
     3461                                                case "ONLINETIMESTAMP": 
    34713462                                                        $tempdata['onlineTimestamp'] = $v; 
    34723463                                                        $this->Starbase_[] = $tempdata; 
    3473                                                          
     3464 
    34743465                                                        $tempdata = array(); 
    34753466                                                        unset($tempdata); 
     
    34793470                        } 
    34803471                } 
    3481     }                            
    3482  
    3483     function endElement($parser, $name)  
     3472    } 
     3473 
     3474    function endElement($parser, $name) 
    34843475    { 
    34853476                // Details 
     
    34963487    } 
    34973488 
    3498     function characterData($parser, $data)  
     3489    function characterData($parser, $data) 
    34993490    { 
    35003491                $this->characterDataValue = $data; 
    35013492    } 
    3502          
     3493 
    35033494        function loaddata($keystring) 
    35043495    { 
    35053496                $configvalue = $this->CharName_ . '_StarbaseList'; 
    3506                  
     3497 
    35073498                $CachedTime = ApiCache::get($configvalue); 
    35083499                $UseCaching = config::get('API_UseCache'); 
    3509                  
     3500 
    35103501        $url = "http://api.eve-online.com/corp/StarbaseList.xml.aspx" . $keystring; 
    35113502 
    35123503        $path = '/corp/StarbaseList.xml.aspx'; 
    3513                  
     3504 
    35143505                // API Caching system, If we're still under cachetime reuse the last XML, if not download the new one. Helps with Bug hunting and just better all round. 
    35153506                if ($CachedTime == "") 
     
    35173508                $CachedTime = "2005-01-01 00:00:00"; // fake date to ensure that it runs first time. 
    35183509        } 
    3519                  
     3510 
    35203511                if (is_file(getcwd().'/cache/api/'.$configvalue.'.xml')) 
    35213512                        $cacheexists = true; 
    35223513                else 
    35233514                        $cacheexists = false; 
    3524                          
     3515 
    35253516                // if API_UseCache = 1 (off) then don't use cache 
    35263517                if ((strtotime(gmdate("M d Y H:i:s")) - strtotime($CachedTime) > 0) || ($UseCaching == 1)  || !$cacheexists ) 
     
    35563547                        $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    35573548                } 
    3558                                  
     3549 
    35593550                                // Save the file if we're caching (0 = true in Thunks world) 
    3560                                 if ($UseCaching == 0)  
     3551                                if ($UseCaching == 0) 
    35613552                                { 
    35623553                                        $file = fopen(getcwd().'/cache/api/'.$configvalue.'.xml', 'w+'); 
     
    35643555                                fclose($file); 
    35653556                                        @chmod(getcwd().'/cache/api/'.$configvalue.'.xml',0666); 
    3566                                 }  
    3567                 }  
     3557                                } 
     3558                } 
    35683559                } else { 
    35693560                        // re-use cached XML 
     
    35723563                        fclose($fp); 
    35733564                } else { 
    3574                                 return "<i>error loading cached file ".$configvalue.".xml</i><br><br>";   
     3565                                return "<i>error loading cached file ".$configvalue.".xml</i><br><br>"; 
    35753566                } 
    35763567                } 
     
    35823573// ****************                                       API StarbaseDetail - /corp/StarbaseDetail.xml.aspx                          **************** 
    35833574// ********************************************************************************************************************************************** 
    3584 class API_StarbaseDetail  
    3585 {                
     3575class API_StarbaseDetail 
     3576{ 
    35863577        function getCachedUntil() 
    35873578        { 
    35883579                return $this->CachedUntil_; 
    35893580        } 
    3590          
     3581 
    35913582        function getCurrentTime() 
    35923583        { 
    35933584                return $this->CurrentTime_; 
    35943585        } 
    3595          
     3586 
    35963587        function setAPIKey($key) 
    35973588        { 
    35983589                $this->API_apiKey_ = $key; 
    35993590        } 
    3600          
     3591 
    36013592        function setUserID($uid) 
    36023593        { 
    36033594                $this->API_userID_ = $uid; 
    36043595        } 
    3605          
     3596 
    36063597        function setCharacterID($cid) 
    36073598        { 
    36083599                $this->API_charID_ = $cid; 
    36093600        } 
    3610          
     3601 
    36113602        function setitemID($itemID) 
    36123603        { 
     
    36653656                return $this->onCorporationWar_; 
    36663657        } 
    3667          
    3668          
     3658 
     3659 
    36693660        function fetchXML() 
    36703661        { 
     
    36753666                        $plt = new pilot(user::get('usr_pilot_id')); 
    36763667                        $usersname = $plt->getName(); 
    3677                          
     3668 
    36783669                        $this->CharName_ = $usersname; 
    3679                          
     3670 
    36803671                        $sql = 'select plts.plt_id, plts.plt_externalid from kb3_pilots plts where plts.plt_name = "' . $usersname . '"'; 
    36813672 
     
    36913682                        return "Something went wrong with finding pilots external ID<br>"; 
    36923683                } 
    3693                  
     3684 
    36943685                        $newsql = 'SELECT userID , apiKey FROM kb3_api_user WHERE charID = "' . $API_charID . '"'; 
    36953686                        $qry->execute($newsql); 
    36963687                $userrow = $qry->getRow(); 
    3697                  
     3688 
    36983689                        $API_userID = $userrow['userID']; 
    36993690                        $API_apiKey = $userrow['apiKey']; 
    3700                          
     3691 
    37013692                        $myKeyString = "userID=" . $API_userID . "&apiKey=" . $API_apiKey . "&characterID=" . $API_charID . "&itemID=" . $this->API_itemID_; 
    3702                                  
     3693 
    37033694                        $data = $this->loaddata($myKeyString); 
    37043695                } else { 
     
    37223713 
    37233714        xml_parser_free($xml_parser); 
    3724                  
     3715 
    37253716                return $this->html; // should be empty, but keeping just incase - errors are returned by Text so worth looking anyway. 
    37263717        } 
    3727          
    3728         function startElement($parser, $name, $attribs)  
    3729     { 
    3730                 if ($name == "ROW")  
     3718 
     3719        function startElement($parser, $name, $attribs) 
     3720    { 
     3721                if ($name == "ROW") 
    37313722        { 
    37323723                        global $tempdata; 
    3733                          
    3734                         if (count($attribs))  
     3724 
     3725                        if (count($attribs)) 
    37353726            { 
    3736                 foreach ($attribs as $k => $v)  
     3727                foreach ($attribs as $k => $v) 
    37373728                { 
    3738                     switch ($k)  
     3729                    switch ($k) 
    37393730                    { 
    37403731                                                case "TYPEID": 
    37413732                                                        $fueldata['typeID'] = $v; 
    37423733                                                        $fueldata['typeName'] = gettypeIDname($v); 
    3743                             break;       
     3734                            break; 
    37443735                                                case "QUANTITY": 
    37453736                                                        $fueldata['quantity'] = $v; 
    37463737                                                        $this->Fuel_[] = $fueldata; 
    3747                                                          
     3738 
    37483739                                                        $fueldata = array(); 
    37493740                                                        unset($fueldata); 
    3750                             break;       
     3741                            break; 
    37513742                                        } 
    37523743                                } 
    37533744                        } 
    37543745                } 
    3755                  
    3756                 if ($name == "ONSTANDINGDROP")  
     3746 
     3747                if ($name == "ONSTANDINGDROP") 
    37573748        { 
    3758                         if (count($attribs))  
     3749                        if (count($attribs)) 
    37593750            { 
    3760                 foreach ($attribs as $k => $v)  
     3751                foreach ($attribs as $k => $v) 
    37613752                { 
    3762                     switch ($k)  
     3753                    switch ($k) 
    37633754                    { 
    37643755                                                case "ENABLED": 
    37653756                                                        $this->onStandingDrop_['enabled'] = $v; 
    3766                             break;       
     3757                            break; 
    37673758                                                case "STANDING": 
    37683759                                                        $this->onStandingDrop_['standing'] = $v; 
    3769                             break;       
     3760                            break; 
    37703761                                        } 
    37713762                                } 
    37723763                        } 
    37733764                } 
    3774                  
    3775                 if ($name == "ONSTATUSDROP")  
     3765 
     3766                if ($name == "ONSTATUSDROP") 
    37763767        { 
    3777                         if (count($attribs))  
     3768                        if (count($attribs)) 
    37783769            { 
    3779                 foreach ($attribs as $k => $v)  
     3770                foreach ($attribs as $k => $v) 
    37803771                { 
    3781                     switch ($k)  
     3772                    switch ($k) 
    37823773                    { 
    37833774                                                case "ENABLED": 
    37843775                                                        $this->onStatusDrop_['enabled'] = $v; 
    3785                             break;       
     3776                            break; 
    37863777                                                case "STANDING": 
    37873778                                                        $this->onStatusDrop_['standing'] = $v; 
    3788                             break;               
     3779                            break; 
    37893780                                        } 
    37903781                                } 
    37913782                        } 
    37923783                } 
    3793                  
    3794                 if ($name == "ONAGGRESSION")  
     3784 
     3785                if ($name == "ONAGGRESSION") 
    37953786        { 
    3796                         if (count($attribs))  
     3787                        if (count($attribs)) 
    37973788            { 
    3798                 foreach ($attribs as $k => $v)  
     3789                foreach ($attribs as $k => $v) 
    37993790                { 
    3800                     switch ($k)  
     3791                    switch ($k) 
    38013792                    { 
    38023793                                                case "ENABLED": 
    38033794                                                        $this->onAggression_['enabled'] = $v; 
    3804                             break;       
     3795                            break; 
    38053796                                        } 
    38063797                                } 
    38073798                        } 
    38083799                } 
    3809                  
    3810                 if ($name == "ONCORPORATIONWAR")  
     3800 
     3801                if ($name == "ONCORPORATIONWAR") 
    38113802        { 
    3812                         if (count($attribs))  
     3803                        if (count($attribs)) 
    38133804            { 
    3814                 foreach ($attribs as $k => $v)  
     3805                foreach ($attribs as $k => $v) 
    38153806                { 
    3816                     switch ($k)  
     3807                    switch ($k) 
    38173808                    { 
    38183809                                                case "ENABLED": 
    38193810                                                        $this->onCorporationWar_['enabled'] = $v; 
    3820                             break;       
     3811                            break; 
    38213812                                        } 
    38223813                                } 
    38233814                        } 
    38243815                } 
    3825     }                            
    3826  
    3827     function endElement($parser, $name)  
     3816    } 
     3817 
     3818    function endElement($parser, $name) 
    38283819    { 
    38293820                // Details 
    38303821                if ($name == "ERROR") 
    38313822                        $this->html .= $this->characterDataValue; 
    3832                  
     3823 
    38333824                if ($name == "STATE") 
    38343825                        $this->State_ .= $this->characterDataValue; 
     
    38373828                if ($name == "ONLINETIMESTAMP") 
    38383829                        $this->onlineTimestamp_ .= $this->characterDataValue; 
    3839                  
     3830 
    38403831                // General Settings 
    38413832                if ($name == "USAGEFLAGS") 
     
    38493840                if ($name == "CLAIMSOVEREIGNTY") 
    38503841                        $this->claimSovereignty_ .= $this->characterDataValue; 
    3851                          
     3842 
    38523843                if ($name == "CURRENTTIME") 
    38533844                        $this->CurrentTime_ = $this->characterDataValue; 
     
    38603851    } 
    38613852 
    3862     function characterData($parser, $data)  
     3853    function characterData($parser, $data) 
    38633854    { 
    38643855                $this->characterDataValue = $data; 
    38653856    } 
    3866          
     3857 
    38673858        function loaddata($keystring) 
    38683859    { 
    38693860                $configvalue = $this->API_itemID_ . '_StarbaseDetail'; 
    3870                  
     3861 
    38713862                $CachedTime = ApiCache::get($configvalue); 
    38723863                $UseCaching = config::get('API_UseCache'); 
     
    38753866 
    38763867        $path = '/corp/StarbaseDetail.xml.aspx'; 
    3877                  
     3868 
    38783869                // API Caching system, If we're still under cachetime reuse the last XML, if not download the new one. Helps with Bug hunting and just better all round. 
    38793870                if ($CachedTime == "") 
     
    38813872                $CachedTime = "2005-01-01 00:00:00"; // fake date to ensure that it runs first time. 
    38823873        } 
    3883                  
     3874 
    38843875                if (is_file(getcwd().'/cache/api/'.$configvalue.'.xml')) 
    38853876                        $cacheexists = true; 
    38863877                else 
    38873878                        $cacheexists = false; 
    3888                          
     3879 
    38893880                // if API_UseCache = 1 (off) then don't use cache 
    38903881                if ((strtotime(gmdate("M d Y H:i:s")) - strtotime($CachedTime) > 0) || ($UseCaching == 1)  || !$cacheexists ) 
     
    39203911                        $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    39213912                } 
    3922                                  
     3913 
    39233914                                // Save the file if we're caching (0 = true in Thunks world) 
    3924                                 if ($UseCaching == 0)  
     3915                                if ($UseCaching == 0) 
    39253916                                { 
    39263917                                        $file = fopen(getcwd().'/cache/api/'.$configvalue.'.xml', 'w+'); 
     
    39283919                                fclose($file); 
    39293920                                        @chmod(getcwd().'/cache/api/'.$configvalue.'.xml',0666); 
    3930                                 }  
    3931                 }  
     3921                                } 
     3922                } 
    39323923                } else { 
    39333924                        // re-use cached XML 
     
    39363927                        fclose($fp); 
    39373928                } else { 
    3938                                 return "<i>error loading cached file ".$configvalue.".xml</i><br><br>";   
     3929                                return "<i>error loading cached file ".$configvalue.".xml</i><br><br>"; 
    39393930                } 
    39403931                } 
     
    39473938// ********************************************************************************************************************************************** 
    39483939// INCOMPLETE - MISSING CORP DIVISIONS AND WALLET DIVISIONS 
    3949 class API_CorporationSheet   
    3950 {                
     3940class API_CorporationSheet 
     3941{ 
    39513942        function getCachedUntil() 
    39523943        { 
    39533944                return $this->CachedUntil_; 
    39543945        } 
    3955          
     3946 
    39563947        function getCurrentTime() 
    39573948        { 
    39583949                return $this->CurrentTime_; 
    39593950        } 
    3960          
     3951 
    39613952        function setAPIKey($key) 
    39623953        { 
    39633954                $this->API_apiKey_ = $key; 
    39643955        } 
    3965          
     3956 
    39663957        function setUserID($uid) 
    39673958        { 
    39683959                $this->API_userID_ = $uid; 
    39693960        } 
    3970          
     3961 
    39713962        function setCharacterID($cid) 
    39723963        { 
    39733964                $this->API_charID_ = $cid; 
    39743965        } 
    3975          
     3966 
    39763967        function setCorpID($corpid) 
    39773968        { 
    39783969                $this->API_corpID_ = $corpid; 
    39793970        } 
    3980          
     3971 
    39813972        function getAllianceID() 
    39823973        { 
    39833974                return $this->allianceID_; 
    39843975        } 
    3985          
     3976 
    39863977        function getAllianceName() 
    39873978        { 
    39883979                return $this->allianceName_; 
    39893980        } 
    3990          
     3981 
    39913982        function getCorporationID() 
    39923983        { 
    39933984                return $this->corporationID_; 
    39943985        } 
    3995          
     3986 
    39963987        function getCorporationName() 
    39973988        { 
    39983989                return $this->corporationName_; 
    39993990        } 
    4000          
     3991 
    40013992        function getTicker() 
    40023993        { 
    40033994                return $this->ticker_; 
    40043995        } 
    4005          
     3996 
    40063997        function getCeoID() 
    40073998        { 
    40083999                return $this->ceoID_; 
    40094000        } 
    4010          
     4001 
    40114002        function getCeoName() 
    40124003        { 
    40134004                return $this->ceoName_; 
    40144005        } 
    4015                  
     4006 
    40164007        function getStationID() 
    40174008        { 
    40184009                return $this->stationID_; 
    40194010        } 
    4020          
     4011 
    40214012        function getStationName() 
    40224013        { 
    40234014                return $this->stationName_; 
    4024         }        
    4025          
     4015        } 
     4016 
    40264017        function getDescription() 
    40274018        { 
    40284019                return $this->description_; 
    4029         }                
    4030          
     4020        } 
     4021 
    40314022        function getUrl() 
    40324023        { 
    40334024                return $this->url_; 
    40344025        } 
    4035                  
     4026 
    40364027        function getLogo() 
    40374028        { 
    40384029                return $this->logo_; 
    4039         }        
    4040          
     4030        } 
     4031 
    40414032        function getTaxRate() 
    40424033        { 
    40434034                return $this->taxRate_; 
    40444035        } 
    4045          
     4036 
    40464037        function getMemberCount() 
    40474038        { 
    40484039                return $this->memberCount_; 
    40494040        } 
    4050          
     4041 
    40514042        function getMemberLimit() 
    40524043        { 
    40534044                return $this->memberLimit_; 
    40544045        } 
    4055          
     4046 
    40564047        function getShares() 
    40574048        { 
    40584049                return $this->shares_; 
    40594050        } 
    4060                  
     4051 
    40614052        function fetchXML() 
    40624053        { 
    40634054                // is a player feed - take details from logged in user 
    4064                 if ($this->API_corpID_ != "")  
     4055                if ($this->API_corpID_ != "") 
    40654056                { 
    40664057                        $myKeyString = "corporationID=" . $this->API_corpID_; 
    40674058                        $this->CharName_ = $this->API_corpID_; 
    40684059                        $data = $this->loaddata($myKeyString); 
    4069                          
     4060 
    40704061                } elseif (user::get('usr_pilot_id')) { 
    40714062                        require_once('class.pilot.php'); 
    40724063                        $plt = new pilot(user::get('usr_pilot_id')); 
    40734064                        $usersname = $plt->getName(); 
    4074                          
     4065 
    40754066                        $this->CharName_ = $usersname; 
    4076                          
     4067 
    40774068                        $sql = 'select plts.plt_id, plts.plt_externalid from kb3_pilots plts where plts.plt_name = "' . $usersname . '"'; 
    40784069 
     
    40884079                        return "Something went wrong with finding pilots external ID<br>"; 
    40894080                } 
    4090                  
     4081 
    40914082                        $newsql = 'SELECT userID , apiKey FROM kb3_api_user WHERE charID = "' . $API_charID . '"'; 
    40924083                        $qry->execute($newsql); 
    40934084                $userrow = $qry->getRow(); 
    4094                  
     4085 
    40954086                        $API_userID = $userrow['userID']; 
    40964087                        $API_apiKey = $userrow['apiKey']; 
    4097                          
     4088 
    40984089                        $myKeyString = "userID=" . $API_userID . "&apiKey=" . $API_apiKey . "&characterID=" . $API_charID; 
    4099                                  
     4090 
    41004091                        $data = $this->loaddata($myKeyString); 
    41014092                } else { 
     
    41194110 
    41204111        xml_parser_free($xml_parser); 
    4121                  
     4112 
    41224113                return $this->html; // should be empty, but keeping just incase - errors are returned by Text so worth looking anyway. 
    41234114        } 
    4124          
    4125         function startElement($parser, $name, $attribs)  
     4115 
     4116        function startElement($parser, $name, $attribs) 
    41264117    { 
    41274118                $this->characterDataValue = ""; 
    4128                  
     4119 
    41294120                if ($name == "DESCRIPTION") 
    41304121                { 
     
    41344125                        $this->DataIsDescription = false; 
    41354126                } 
    4136     }                            
    4137  
    4138     function endElement($parser, $name)  
     4127    } 
     4128 
     4129    function endElement($parser, $name) 
    41394130    { 
    41404131                // Details 
    4141                 switch ($name)  
     4132                switch ($name) 
    41424133        { 
    41434134                        case "ERROR": 
     
    41464137                        case "CORPORATIONID": 
    41474138                                $this->corporationID_ = $this->characterDataValue; 
    4148                 break;           
     4139                break; 
    41494140                        case "CORPORATIONNAME": 
    41504141                                $this->corporationName_ = $this->characterDataValue; 
    4151                 break;   
     4142                break; 
    41524143                        case "TICKER": 
    41534144                                $this->ticker_ = $this->characterDataValue; 
    4154                 break;   
     4145                break; 
    41554146                        case "CEOID": 
    41564147                                $this->ceoID_ = $this->characterDataValue; 
     
    41604151                break; 
    41614152                        case "STATIONID": 
    4162                                 $this->stationID_ = $this->characterDataValue;   
     4153                                $this->stationID_ = $this->characterDataValue; 
    41634154                break; 
    41644155                        case "STATIONNAME": 
     
    41874178                break; 
    41884179                        case "SHARES": 
    4189                                 $this->shares_ = $this->characterDataValue;      
     4180                                $this->shares_ = $this->characterDataValue; 
    41904181                break; 
    4191                                  
     4182 
    41924183                        case "GRAPHICID": 
    41934184                                $this->logo_["graphicID"] = $this->characterDataValue; 
     
    42044195                        case "COLOR1": 
    42054196                                $this->logo_["colour1"] = $this->characterDataValue; 
    4206                 break;   
     4197                break; 
    42074198                        case "COLOR2": 
    42084199                                $this->logo_["colour2"] = $this->characterDataValue; 
    4209                 break;   
     4200                break; 
    42104201                        case "COLOR3": 
    42114202                                $this->logo_["colour3"] = $this->characterDataValue; 
    4212                 break;   
    4213                 } 
    4214                          
     4203                break; 
     4204                } 
     4205 
    42154206                if ($name == "CURRENTTIME") 
    42164207                        $this->CurrentTime_ = $this->characterDataValue; 
     
    42234214    } 
    42244215 
    4225     function characterData($parser, $data)  
     4216    function characterData($parser, $data) 
    42264217    { 
    42274218                //  This is a fix for some hosts that strip "<" and ">" from the API XML when it's put into a string. I have no idea why this happens, where or how - but this puts them back 
     
    42324223                                $this->tagsareworking = true; 
    42334224                        } 
    4234                  
     4225 
    42354226                        if (!$this->tagsareworking) 
    42364227                        { 
     
    42444235                        $this->characterDataValue = $data; 
    42454236                } 
    4246                  
    4247                  
     4237 
     4238 
    42484239                //echo $data; 
    42494240    } 
    4250          
     4241 
    42514242        function loaddata($keystring) 
    4252     {    
     4243    { 
    42534244                $configvalue = $this->CharName_ . '_CorporationSheet'; 
    4254                  
     4245 
    42554246                $CachedTime = ApiCache::get($configvalue); 
    42564247                $UseCaching = config::get('API_UseCache'); 
     
    42594250 
    42604251        $path = '/corp/CorporationSheet.xml.aspx'; 
    4261                  
     4252 
    42624253                // API Caching system, If we're still under cachetime reuse the last XML, if not download the new one. Helps with Bug hunting and just better all round. 
    42634254                if ($CachedTime == "") 
     
    42654256                $CachedTime = "2005-01-01 00:00:00"; // fake date to ensure that it runs first time. 
    42664257        } 
    4267                  
     4258 
    42684259                if (is_file(getcwd().'/cache/api/'.$configvalue.'.xml')) 
    42694260                        $cacheexists = true; 
    42704261                else 
    42714262                        $cacheexists = false; 
    4272                          
     4263 
    42734264                // if API_UseCache = 1 (off) then don't use cache 
    42744265                if ((strtotime(gmdate("M d Y H:i:s")) - strtotime($CachedTime) > 0) || ($UseCaching == 1)  || !$cacheexists ) 
     
    43044295                        $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    43054296                } 
    4306                                  
     4297 
    43074298                                // Save the file if we're caching (0 = true in Thunks world) 
    4308                                 if ($UseCaching == 0)  
     4299                                if ($UseCaching == 0) 
    43094300                                { 
    43104301                                        $file = fopen(getcwd().'/cache/api/'.$configvalue.'.xml', 'w+'); 
     
    43124303                                fclose($file); 
    43134304                                        @chmod(getcwd().'/cache/api/'.$configvalue.'.xml',0666); 
    4314                                 }  
    4315                 }  
     4305                                } 
     4306                } 
    43164307                } else { 
    43174308                        // re-use cached XML 
     
    43204311                        fclose($fp); 
    43214312                } else { 
    4322                                 return "<i>error loading cached file ".$configvalue.".xml</i><br><br>";   
     4313                                return "<i>error loading cached file ".$configvalue.".xml</i><br><br>"; 
    43234314                } 
    43244315                } 
     
    43294320// ****************                                   API Name -> ID Conversion /eve/CharacterID.xml.aspx                            **************** 
    43304321// ********************************************************************************************************************************************** 
    4331 class API_NametoID  
    4332 {                
     4322class API_NametoID 
     4323{ 
    43334324        function getCachedUntil() 
    43344325        { 
    43354326                return $this->CachedUntil_; 
    43364327        } 
    4337          
     4328 
    43384329        function getCurrentTime() 
    43394330        { 
    43404331                return $this->CurrentTime_; 
    43414332        } 
    4342          
     4333 
    43434334        function setNames($names) 
    43444335        { 
     
    43494340                return $this->NameData_; 
    43504341        } 
    4351          
     4342 
    43524343        function clear() 
    43534344        { 
     
    43554346                unset($this->NameData_); 
    43564347        } 
    4357          
     4348 
    43584349        function fetchXML() 
    43594350        { 
    4360                 if ($this->API_Names_ != "")  
     4351                if ($this->API_Names_ != "") 
    43614352                { 
    43624353                        $myKeyString = "names=" . $this->API_Names_; 
     
    43754366 
    43764367        xml_parser_free($xml_parser); 
    4377                  
     4368 
    43784369                return $this->html; // should be empty, but keeping just incase - errors are returned by Text so worth looking anyway. 
    43794370        } 
    4380          
    4381         function startElement($parser, $name, $attribs)  
     4371 
     4372        function startElement($parser, $name, $attribs) 
    43824373    { 
    43834374                global $NameData; 
    4384                  
    4385                 if ($name == "ROW")  
    4386         {  
    4387             if (count($attribs))  
     4375 
     4376                if ($name == "ROW") 
     4377        { 
     4378            if (count($attribs)) 
    43884379            { 
    4389                 foreach ($attribs as $k => $v)  
     4380                foreach ($attribs as $k => $v) 
    43904381                { 
    4391                     switch ($k)  
     4382                    switch ($k) 
    43924383                    { 
    43934384                        case "NAME": 
    43944385                            $NameData['name'] = $v; 
    43954386                            break; 
    4396                         case "CHARACTERID":   
     4387                        case "CHARACTERID": 
    43974388                            $NameData['characterID'] = $v; 
    43984389                            break; 
     
    44014392            } 
    44024393        } 
    4403     }                            
    4404  
    4405     function endElement($parser, $name)  
     4394    } 
     4395 
     4396    function endElement($parser, $name) 
    44064397    { 
    44074398                global $NameData; 
    4408                  
     4399 
    44094400                // Details 
    44104401                if ($name == "ERROR") 
    44114402                        $this->html .= $this->characterDataValue; 
    4412                  
     4403 
    44134404                if ($name == "ROW") 
    44144405                { 
     
    44174408                        unset($NameData); 
    44184409                } 
    4419                          
     4410 
    44204411                if ($name == "CURRENTTIME") 
    44214412                        $this->CurrentTime_ = $this->characterDataValue; 
     
    44254416                        //ApiCache::set('API_eve_RefTypes' , $this->characterDataValue); 
    44264417                        //ApiCache::set( $this->CharName_ . 'CharacterID' , $this->characterDataValue); 
    4427                 }  
    4428     } 
    4429  
    4430     function characterData($parser, $data)  
     4418                } 
     4419    } 
     4420 
     4421    function characterData($parser, $data) 
    44314422    { 
    44324423                $this->characterDataValue = $data; 
    44334424    } 
    4434          
     4425 
    44354426        function loaddata($keystring) 
    4436     {    
     4427    { 
    44374428        $url = "http://api.eve-online.com/eve/CharacterID.xml.aspx" . $keystring; 
    44384429 
    44394430        $path = '/eve/CharacterID.xml.aspx'; 
    4440                  
    4441                  
     4431 
     4432 
    44424433        $fp = fsockopen("api.eve-online.com", 80); 
    44434434 
     
    44704461                        $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    44714462            } 
    4472         }  
     4463        } 
    44734464 
    44744465        return $contents; 
     
    44784469// ****************                                   API ID -> Name Conversion /eve/CharacterID.xml.aspx                            **************** 
    44794470// ********************************************************************************************************************************************** 
    4480 class API_IDtoName  
    4481 {                
     4471class API_IDtoName 
     4472{ 
    44824473        function getCachedUntil() 
    44834474        { 
    44844475                return $this->CachedUntil_; 
    44854476        } 
    4486          
     4477 
    44874478        function getCurrentTime() 
    44884479        { 
    44894480                return $this->CurrentTime_; 
    44904481        } 
    4491          
     4482 
    44924483        function setIDs($IDs) 
    44934484        { 
     
    44984489                return $this->NameData_; 
    44994490        } 
    4500          
     4491 
    45014492        function clear() 
    45024493        { 
     
    45044495                unset($this->NameData_); 
    45054496        } 
    4506          
     4497 
    45074498        function fetchXML() 
    45084499        { 
    4509                 if ($this->API_IDs_ != "")  
     4500                if ($this->API_IDs_ != "") 
    45104501                { 
    45114502                        $myKeyString = "ids=" . $this->API_IDs_; 
     
    45244515 
    45254516        xml_parser_free($xml_parser); 
    4526                  
     4517 
    45274518                return $this->html; // should be empty, but keeping just incase - errors are returned by Text so worth looking anyway. 
    45284519        } 
    4529          
    4530         function startElement($parser, $name, $attribs)  
     4520 
     4521        function startElement($parser, $name, $attribs) 
    45314522    { 
    45324523                global $NameData; 
    4533                  
    4534                 if ($name == "ROW")  
    4535         {  
    4536             if (count($attribs))  
     4524 
     4525                if ($name == "ROW") 
     4526        { 
     4527            if (count($attribs)) 
    45374528            { 
    4538                 foreach ($attribs as $k => $v)  
     4529                foreach ($attribs as $k => $v) 
    45394530                { 
    4540                     switch ($k)  
     4531                    switch ($k) 
    45414532                    { 
    45424533                        case "NAME": 
    45434534                            $NameData['name'] = $v; 
    45444535                            break; 
    4545                         case "CHARACTERID":   
     4536                        case "CHARACTERID": 
    45464537                            $NameData['characterID'] = $v; 
    45474538                            break; 
     
    45504541            } 
    45514542        } 
    4552     }                            
    4553  
    4554     function endElement($parser, $name)  
     4543    } 
     4544 
     4545    function endElement($parser, $name) 
    45554546    { 
    45564547                global $NameData; 
    4557                  
     4548 
    45584549                // Details 
    45594550                if ($name == "ERROR") 
    45604551                        $this->html .= $this->characterDataValue; 
    4561                  
     4552 
    45624553                if ($name == "ROW") 
    45634554                { 
     
    45664557                        unset($NameData); 
    45674558                } 
    4568                          
     4559 
    45694560                if ($name == "CURRENTTIME") 
    45704561                        $this->CurrentTime_ = $this->characterDataValue; 
     
    45744565                        //ApiCache::set('API_eve_RefTypes' , $this->characterDataValue); 
    45754566                        //ApiCache::set( $this->CharName_ . 'CharacterID' , $this->characterDataValue); 
    4576                 }  
    4577     } 
    4578  
    4579     function characterData($parser, $data)  
     4567                } 
     4568    } 
     4569 
     4570    function characterData($parser, $data) 
    45804571    { 
    45814572                $this->characterDataValue = $data; 
    45824573    } 
    4583          
     4574 
    45844575        function loaddata($keystring) 
    4585     {    
     4576    { 
    45864577        $url = "http://api.eve-online.com/eve/CharacterName.xml.aspx" . $keystring; 
    45874578 
    45884579        $path = '/eve/CharacterName.xml.aspx'; 
    4589                  
    4590                  
     4580 
     4581 
    45914582        $fp = fsockopen("api.eve-online.com", 80); 
    45924583 
     
    46194610                        $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    46204611            } 
    4621         }  
     4612        } 
    46224613 
    46234614        return $contents; 
     
    46354626      return $this->CachedUntil_; 
    46364627   } 
    4637     
     4628 
    46384629   function getCurrentTime() 
    46394630   { 
    46404631      return $this->CurrentTime_; 
    46414632   } 
    4642     
     4633 
    46434634   function getserverOpen() 
    46444635   { 
    46454636      return $this->serverOpen_; 
    46464637   } 
    4647     
     4638 
    46484639   function getonlinePlayers() 
    46494640   { 
     
    46514642   } 
    46524643 
    4653     function fetchXML()  
     4644    function fetchXML() 
    46544645    { 
    46554646        $data = LoadGlobalData('/server/ServerStatus.xml.aspx'); 
     
    46644655 
    46654656        xml_parser_free($xml_parser); 
    4666       
     4657 
    46674658        return $this->html; 
    46684659    } 
     
    46734664    } 
    46744665 
    4675     function endElement($parser, $name)  
     4666    function endElement($parser, $name) 
    46764667    { 
    46774668      global $tempvalue; 
    4678        
     4669 
    46794670      if ($name == "CURRENTTIME") 
    46804671         $this->CurrentTime_ = $tempvalue; 
     
    46894680      } 
    46904681    } 
    4691      
    4692         function characterData($parser, $data)  
     4682 
     4683        function characterData($parser, $data) 
    46934684    { 
    46944685      global $tempvalue; 
    4695          
     4686 
    46964687      $tempvalue = $data; 
    46974688    } 
     
    47094700 
    47104701// loads a generic XML sheet that requires no API Login as such 
    4711 function LoadGlobalData($path)  
     4702function LoadGlobalData($path) 
    47124703{ 
    4713         $temppath = substr($path, 0, strlen($path) - 14); 
     4704        $temppath = substr($path, 0, strlen(£path) - 14); 
    47144705        $configvalue = "API" . str_replace("/", "_", $temppath); 
    4715                  
     4706 
    47164707        $CachedTime = ApiCache::get($configvalue); 
    47174708        $UseCaching = config::get('API_UseCache'); 
    4718                  
     4709 
    47194710        // API Caching system, If we're still under cachetime reuse the last XML, if not download the new one. Helps with Bug hunting and just better all round. 
    47204711        if ($CachedTime == "") 
     
    47224713        $CachedTime = "2005-01-01 00:00:00"; // fake date to ensure that it runs first time. 
    47234714    } 
    4724                  
     4715 
    47254716        if (is_file(getcwd().'/cache/api/'.$configvalue.'.xml')) 
    47264717                $cacheexists = true; 
    47274718        else 
    47284719                $cacheexists = false; 
    4729          
     4720 
    47304721        if ((strtotime(gmdate("M d Y H:i:s")) - strtotime($CachedTime) > 0) || ($UseCaching == 1)  || !$cacheexists )// if API_UseCache = 1 (off) then don't use cache 
    47314722    { 
     
    47604751                $contents = substr($contents, $start + strlen("\r\n\r\n")); 
    47614752            } 
    4762                          
     4753 
    47634754                        // Save the file if we're caching (0 = true in Thunks world) 
    4764                         if ( $UseCaching == 0 )  
     4755                        if ( $UseCaching == 0 ) 
    47654756                        { 
    47664757                                $file = fopen(getcwd().'/cache/api/'.$configvalue.'.xml', 'w+'); 
     
    47684759                        fclose($file); 
    47694760                                @chmod(getcwd().'/cache/api/'.$configvalue.'.xml',0666); 
    4770                         }  
    4771         }  
     4761                        } 
     4762        } 
    47724763        } else { 
    47734764                // re-use cached XML 
     
    47764767                fclose($fp); 
    47774768        } else { 
    4778                         return "<i>error loading cached file ".$configvalue.".xml</i><br><br>";   
     4769                        return "<i>error loading cached file ".$configvalue.".xml</i><br><br>"; 
    47794770        } 
    47804771        } 
     
    47884779{ 
    47894780        $sql = 'select inv.typeName from kb3_invtypes inv where inv.typeID = ' . $id; 
    4790                                  
     4781 
    47914782    $qry = new DBQuery(); 
    47924783    $qry->execute($sql); 
    47934784    $row = $qry->getRow(); 
    4794                          
     4785 
    47954786    return $row['typeName']; 
    47964787} 
     
    48024793{ 
    48034794        $sql = 'select inv.groupID from kb3_invtypes inv where inv.typeID = ' . $id; 
    4804                                  
     4795 
    48054796    $qry = new DBQuery(); 
    48064797    $qry->execute($sql); 
    48074798    $row = $qry->getRow(); 
    4808                          
     4799 
    48094800    return $row['groupID']; 
    48104801} 
     
    48144805// ********************************************************************************************************************************************** 
    48154806function getgroupIDname($id) 
    4816 {                
     4807{ 
    48174808        $sql = 'select itt.itt_name from kb3_item_types itt where itt.itt_id = ' . $id; 
    4818          
     4809 
    48194810    $qry = new DBQuery(); 
    48204811    $qry->execute($sql); 
    48214812    $row = $qry->getRow(); 
    4822          
     4813 
    48234814        return $row['itt_name']; 
    48244815} 
     
    48304821{ 
    48314822        $sql = 'select att.value from kb3_dgmtypeattributes att where att.typeID = ' . $id . ' and att.attributeID = 275'; 
    4832                                  
     4823 
    48334824    $qry = new DBQuery(); 
    48344825    $qry->execute($sql); 
    48354826    $row = $qry->getRow(); 
    4836                          
     4827 
    48374828    return $row['value']; 
    48384829} 
     
    48504841        $qry->execute($sql); 
    48514842        $row = $qry->getRow(); 
    4852                                                  
     4843 
    48534844        return $row['itemName']; 
    48544845        } else { 
    48554846                return "Unknown"; 
    4856         }                                
     4847        } 
    48574848} 
    48584849 
     
    48724863 
    48734864    if ( $pilot_id != 0 )       { 
    4874         return '<a href="?a=pilot_detail&amp;plt_id=' . $pilot_id . '" ><font size="2">Captain Thunk</font></a>'; 
     4865        return '<a href="?a=pilot_detail&plt_id=' . $pilot_id . '" ><font size="2">Captain Thunk</font></a>'; 
    48754866    } else { 
    48764867        return "Captain Thunk"; 
     
    48844875{ 
    48854876        if ( (strlen($corpName) != 0) && ($corpID != 0) ) 
    4886         {        
     4877        { 
    48874878                $qry = new DBQuery(); 
    48884879                $qry->execute( "SELECT * FROM `kb3_corps` WHERE `crp_name` = '" . slashfix($corpName) . "'"); 
    4889                  
     4880 
    48904881                if ($qry->recordCount() != 0) 
    48914882        { 
     
    49084899                $qry = new DBQuery(); 
    49094900                $qry->execute( "SELECT * FROM `kb3_alliances` WHERE `all_name` = '" . slashfix($allianceName) . "'"); 
    4910                  
     4901 
    49114902                if ($qry->recordCount() != 0) 
    49124903        { 
     
    49314922                //if (!config::get('API_ForceDST')) 
    49324923                        //$gmoffset = $gmoffset + 3600; 
    4933                  
     4924 
    49344925                $cachetime = date("Y-m-d H:i:s",  strtotime($timeStampGMT) + $gmoffset); 
    49354926        } else { 
    49364927                $cachetime = $timeStampGMT; 
    49374928        } 
    4938          
     4929 
    49394930        return $cachetime; 
    49404931} 
  • dev/common/includes/class.thumb.php

    r396 r431  
    131131                } 
    132132            } 
    133  
    134             // in case of a dead eve server we only want to wait 5 seconds 
    135             @ini_set('default_socket_timeout', 5); 
    136             $file = @file_get_contents('http://img.eve.is/serv.asp?s=256&c='.$this->_id); 
    137             if ($img = @imagecreatefromstring($file)) 
    138             { 
    139                 $fp = fopen('cache/portraits/'.$this->_id.'_256.jpg', 'w'); 
    140                 fwrite($fp, $file); 
    141                 fclose($fp); 
    142             } 
    143             else 
    144             { 
    145                 // try alternative access via fsockopen 
    146                 // happens if allow_url_fopen wrapper is false 
    147                 require_once('class.http.php'); 
    148  
    149                 $url = 'http://img.eve.is/serv.asp?s=256&c='.$this->_id; 
    150                 $http = new http_request($url); 
    151                 $file = $http->get_content(); 
    152  
    153                 if ($img = @imagecreatefromstring($file)) 
    154                 { 
    155                     $fp = fopen('cache/portraits/'.$id.'_256.jpg', 'w'); 
    156                     fwrite($fp, $file); 
    157                 } 
    158             } 
     133            // in case of a dead eve server we only want to wait 2 seconds 
     134            @ini_set('default_socket_timeout', 2); 
     135                        if (function_exists('curl_init')) 
     136                        { 
     137                                $ch = curl_init(); 
     138                                curl_setopt($ch, CURLOPT_URL, 'http://img.eve.is/serv.asp?s=256&c='.$this->_id); 
     139                                curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
     140                                curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 2); 
     141                                $file = curl_exec($ch); 
     142                                curl_close($ch); 
     143                                if ($img = @imagecreatefromstring($file)) 
     144                                { 
     145                                        $fp = fopen('cache/portraits/'.$this->_id.'_256.jpg', 'w'); 
     146                                        fwrite($fp, $file); 
     147                                        fclose($fp); 
     148                                } 
     149                        } 
     150                        else 
     151                        { 
     152                                $file = @file_get_contents('http://img.eve.is/serv.asp?s=256&c='.$this->_id); 
     153                                if ($img = @imagecreatefromstring($file)) 
     154                                { 
     155                                        $fp = fopen('cache/portraits/'.$this->_id.'_256.jpg', 'w'); 
     156                                        fwrite($fp, $file); 
     157                                        fclose($fp); 
     158                                } 
     159                                else 
     160                                { 
     161                                        // try alternative access via fsockopen 
     162                                        // happens if allow_url_fopen wrapper is false 
     163                                        require_once('class.http.php'); 
     164 
     165                                        $url = 'http://img.eve.is/serv.asp?s=256&c='.$this->_id; 
     166                                        $http = new http_request($url); 
     167                                        $file = $http->get_content(); 
     168 
     169                                        if ($img = @imagecreatefromstring($file)) 
     170                                        { 
     171                                                $fp = fopen('cache/portraits/'.$id.'_256.jpg', 'w'); 
     172                                                fwrite($fp, $file); 
     173                                        } 
     174                                } 
     175                        } 
    159176        } 
    160177 
  • dev/common/includes/db.php

    r416 r431  
    1212// get mysql server info and store it in a define so we know if its 
    1313// safe to use subquerys or not. (mysqli only works on 4.1+) 
    14 $conn = new DBConnection; 
    15 $value = (float) mysql_get_server_info($conn->id_); 
     14if(DB_TYPE_USED == 'mysqli') 
     15{ 
     16        $conn = new DBConnection_mysqli; 
     17        $value = (float) mysqli_get_server_info($conn->id_); 
     18} 
     19else 
     20{ 
     21        $conn = new DBConnection; 
     22        $value = (float) mysql_get_server_info($conn->id_); 
     23} 
     24 
    1625if ($value >= 4.1) 
    1726{