Changeset 428

Show
Ignore:
Timestamp:
07/17/09 14:37:57 (11 years ago)
Author:
kovell
Message:

Kill deletion and price updates wrapped in a transaction. eve_central_sync can fall back to fopen from cURL. Upgrade for suitable indexes

Location:
dev
Files:
7 modified

Legend:

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

    r427 r428  
    11561156                if (!$this->id_) 
    11571157                        return; 
     1158                $qry->autocommit(false); 
    11581159                summaryCache::delKill($this); 
    11591160 
     
    11731174                        $qry->execute("delete from kb3_comments where kll_id = ".$this->id_); 
    11741175                } 
     1176                $qry->autocommit(true); 
    11751177        } 
    11761178 
  • dev/common/includes/eve_central_sync.php

    r427 r428  
    5151        file_put_contents(KB_CACHEDIR.'/evecentral/activity.log', "Handling from live.\n", FILE_APPEND); 
    5252        $query = new DBQuery(); 
    53         if (function_exists('curl_init')) 
    54         { 
    55             $ch = curl_init(); 
    56             curl_setopt($ch, CURLOPT_URL, "http://api.eve-central.com/api/marketstat?regionlimit=10000002&typeid=".$item_id.""); 
    57             curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    58             $content = curl_exec($ch); 
    59             curl_close($ch); 
    60         } 
    61         else return -99; 
     53        if (function_exists('curl_init')) 
     54        { 
     55                $ch = curl_init(); 
     56                curl_setopt($ch, CURLOPT_URL, "http://api.eve-central.com/api/marketstat?regionlimit=10000002&typeid=".$item_id.""); 
     57                curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
     58                $content = curl_exec($ch); 
     59                curl_close($ch); 
     60        } 
     61        else 
     62        { 
     63                $file = fopen("http://api.eve-central.com/api/marketstat?regionlimit=10000002&typeid=".$item_id."" , "r"); 
     64                if (! $file) 
     65                { 
     66                        return -99; 
     67                } 
     68                $content = stream_get_contents($file); 
     69                fclose($file); 
     70        } 
    6271 
    63         if(strpos($content, '</evec_api>') == false) { 
    64             return -99; 
    65         } 
    66         else { 
    67             $parse = new XMLParser(); 
    68             $parse->preparseXML(); 
    69             $parse->parseXML($content); 
    7072 
    71             $values = $parse->get_data(); 
     73        if(strpos($content, '</evec_api>') == false) { 
     74                return -99; 
     75        } 
     76        else { 
     77                $parse = new XMLParser(); 
     78                $parse->preparseXML(); 
     79                $parse->parseXML($content); 
    7280 
    73             if (0 == $values['WEIGHTED']) { 
    74                 return -99; 
    75             } 
    76             $weighted_average = $values['WEIGHTED']; 
    77         } 
     81                $values = $parse->get_data(); 
     82 
     83                if (0 == $values['WEIGHTED']) { 
     84        return -99; 
     85                } 
     86                $weighted_average = $values['WEIGHTED']; 
     87        } 
    7888 
    7989        file_put_contents(KB_CACHEDIR.'/evecentral/activity.log', "$content\n", FILE_APPEND); 
  • dev/common/includes/globals.php

    r427 r428  
    77else 
    88{ 
    9         $svn_rev = '427'; 
     9        $svn_rev = '428'; 
    1010} 
    1111define('SVN_REV', $svn_rev); 
  • dev/common/kill_detail.php

    r420 r428  
    7979            $Val = $_POST[$IID]; 
    8080            $qry = new DBQuery(); 
     81                        $qry->autocommit(false); 
    8182            $qry->execute("INSERT INTO kb3_item_price (typeID, price) VALUES ('".$IID."', '".$Val."') ON DUPLICATE KEY UPDATE price = '".$Val."'"); 
    8283                        foreach($kill->destroyeditems_ as $i => $ditem) 
     
    9192                        } 
    9293                        $qry->execute("UPDATE kb3_kills SET kll_isk_loss = ".$kill->calculateISKLoss()." WHERE kll_id = ".$kill->getID()); 
     94                        $qry->autocommit(true); 
     95 
    9396        } 
    9497    } 
  • dev/common/kill_related.php

    r427 r428  
    476476$menubox->setIcon("menu-item.gif"); 
    477477$menubox->addOption("caption", "View"); 
    478 $menubox->addOption("link", "Back to Killmail", "?a=kill_detail&kll_id=".$_GET['kll_id']); 
    479 $menubox->addOption("link", "Kills & losses", "?a=kill_related&kll_id=".$_GET['kll_id']); 
     478$menubox->addOption("link", "Back to Killmail", "?a=kill_detail&amp;kll_id=".$_GET['kll_id']); 
     479$menubox->addOption("link", "Kills &amp; losses", "?a=kill_related&amp;kll_id=".$_GET['kll_id']); 
    480480$page->addContext($menubox->generate()); 
    481481 
  • dev/mods/apoc_fitting/kill_detail.php

    r420 r428  
    7878                        $Val=$_POST[$IID]; 
    7979                        $qry=new DBQuery(); 
     80                        $qry->autocommit(false); 
    8081                        $qry->execute("INSERT INTO kb3_item_price (typeID, price) VALUES ('" . $IID . "', '" . $Val 
    8182                                                          . "') ON DUPLICATE KEY UPDATE price = '" . $Val . "'"); 
     
    9394                        } 
    9495                        $qry->execute("UPDATE kb3_kills SET kll_isk_loss = ".$kill->calculateISKLoss()." WHERE kll_id = ".$kill->getID()); 
     96                        $qry->autocommit(true); 
    9597                } 
    9698        } 
  • dev/upgrade.php

    r417 r428  
    9696        // if update nesseary run updates 
    9797        if (CURRENT_DB_UPDATE < LASTEST_DB_UPDATE ){ 
     98                killCache(); 
    9899                update001(); 
    99100                update002(); 
     
    662663                if(!$indexcexists) 
    663664                { 
     665                        $qry->rewind(); 
     666                        $indexexists = false; 
     667                        while($testresult = $qry->getRow()) 
     668                        { 
     669                                if($testresult['Key_name'] == 'UPGRADE8_crp_name') 
     670                                        $indexexists = true; 
     671                        } 
     672                        if(!$indexexists) $qry->execute("ALTER TABLE `kb3_corps` ADD INDEX `UPGRADE8_crp_name` ( `crp_name` ) "); 
    664673                        $sqlcrp = 'select a.crp_id as newid, b.crp_id as oldid from kb3_corps a, kb3_corps b where a.crp_name = b.crp_name and a.crp_id < b.crp_id'; 
    665674 
     
    702711                        if(config::get('008updatestatus') <7) 
    703712                        { 
     713                                $qry->execute("ALTER TABLE `kb3_corps` DROP INDEX `UPGRADE8_crp_name`"); 
    704714                                $qry->execute("SHOW INDEXES FROM kb3_corps"); 
    705715                                $indexcexists = false; 
     
    736746                if(!$indexaexists) 
    737747                { 
     748                        $qry->rewind(); 
     749                        $indexexists = false; 
     750                        while($testresult = $qry->getRow()) 
     751                        { 
     752                                if($testresult['Key_name'] == 'UPGRADE8_all_name') 
     753                                        $indexexists = true; 
     754                        } 
     755                        if(!$indexexists) $qry->execute("ALTER TABLE `kb3_alliances` ADD INDEX `UPGRADE8_all_name` ( `all_name` ) "); 
    738756                        $sqlall = 'select a.all_id as newid, b.all_id as oldid from kb3_alliances a, kb3_alliances b where a.all_name = b.all_name and a.all_id < b.all_id'; 
    739757                        if(config::get('008updatestatus') <8) 
     
    776794                        if(config::get('008updatestatus') <13) 
    777795                        { 
     796                                $qry->execute("ALTER TABLE `kb3_alliances` DROP INDEX `UPGRADE8_all_name`"); 
    778797                                $qry->execute("SHOW INDEXES FROM kb3_alliances"); 
    779798                                $indexaexists = false; 
     
    809828                if(!$indexaexists) 
    810829                { 
     830                        $qry->rewind(); 
     831                        $indexexists = false; 
     832                        while($testresult = $qry->getRow()) 
     833                        { 
     834                                if($testresult['Key_name'] == 'UPGRADE8_plt_name') 
     835                                        $indexexists = true; 
     836                        } 
     837                        if(!$indexexists) $qry->execute("ALTER TABLE `kb3_pilots` ADD INDEX `UPGRADE8_plt_name` ( `plt_name` ) "); 
    811838                        $sqlplt = 'select a.plt_id as newid, b.plt_id as oldid from kb3_pilots a, kb3_pilots b where a.plt_name = b.plt_name and a.plt_id < b.plt_id'; 
    812839                        if(config::get('008updatestatus') <14) 
     
    848875                        if(config::get('008updatestatus') <18) 
    849876                        { 
     877                                $qry->execute("ALTER TABLE `kb3_pilots` DROP INDEX `UPGRADE8_plt_name`"); 
    850878                                $qry->execute("SHOW INDEXES FROM kb3_pilots"); 
    851879                                $indexpexists = false;