Changeset 486 for dev/mods

Show
Ignore:
Timestamp:
01/02/10 02:37:09 (10 years ago)
Author:
kovell
Message:

Fixes: Default value_fetch modified to use CTL's pricing xml.

Location:
dev/mods/value_fetch
Files:
1 added
2 modified

Legend:

Unmodified
Added
Removed
  • dev/mods/value_fetch/fetcher.php

    r370 r486  
    1515        var $buy_median; 
    1616        var $factionPrice; 
    17         var $compfile = "http://svn.nsbit.dk/itemfetch/items.xml.gzphp.php"; 
    18         var $uncompfile = "http://svn.nsbit.dk/itemfetch/items.xml.php"; 
     17        // download the items.xml.gzphp and items.xml files from http://www.ekchu.com/dev/ 
     18        // upload them to a directory on your own webspace 
     19        // modify the two paths below to point to the downloaded files 
     20        var $compfile = "http://www.ekchu.com/dev/items.xml.gzphp"; 
     21        var $uncompfile = "http://www.ekchu.com/dev/items.xml"; 
    1922 
    2023        function updateShips() 
     
    3841 
    3942        // Some of this work is based of the value_editor from Eve-dev killboard 
    40         function fetch_values_php5($factionin)  
     43        function fetch_values_php5($factionin) 
    4144        { 
    4245                $this->faction = $factionin; 
    4346                // Fetch the gzip file. 
    44 // Switch fopen to cURL if it exists 
    45 if (function_exists('curl_init')) 
    46 { 
    47     $ch = curl_init(); 
    48     curl_setopt($ch, CURLOPT_URL, $this->compfile); 
    49     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    50     curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); 
    51     $content = curl_exec($ch); 
    52     curl_close($ch); 
    53     if(strlen($content)==0) return 0; 
    54 } 
    55 else 
    56 { 
    57     $file = fopen($this->compfile , "r"); 
    58  
    59                 if (! $file) { 
    60                         return 0; 
    61                 } 
    62                 $content = stream_get_contents($file); 
    63                 fclose($file); 
    64 }        
    65                 $content = gzinflate($content); 
     47                // Switch fopen to cURL if it exists 
     48                if (function_exists('curl_init')) 
     49                { 
     50                        $ch = curl_init(); 
     51                        curl_setopt($ch, CURLOPT_URL, $this->compfile); 
     52                        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
     53                        curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); 
     54                        $content = curl_exec($ch); 
     55                        curl_close($ch); 
     56                        if(strlen($content)==0) return 0; 
     57                } 
     58                else 
     59                { 
     60                        $file = fopen($this->compfile , "r"); 
     61 
     62                        if (! $file) { 
     63                                return 0; 
     64                        } 
     65                        $content = stream_get_contents($file); 
     66                        fclose($file); 
     67                } 
     68                $content = gzinflate($content); 
    6669                // Old style, direct, no gzip! 
    6770                // $sxe = simplexml_load_file("http://svn.nsbit.dk/itemfetch/items.xml"); 
     
    7477                foreach($sxe->market_stat as $stat) 
    7578                { 
    76                         // If there is almost nothing for sale, AT ALL, don't include! 
    77                         // if ($stat->total_sell_volume < 5) continue; 
    78                         // Same average as used in value_editor (eve_central_sync) 
    79                         //$weighted_average = round(((1.6 * $stat->avg_buy_price + 0.8 * $stat->avg_sell_price) / 2),0); 
    80                         // Use global sell prices 
    81                         //$weighted_average = round($stat->avg_sell_price,0); 
    82                         // Use sell median 
     79                // If there is almost nothing for sale, AT ALL, don't include! 
     80                // if ($stat->total_sell_volume < 5) continue; 
     81                // Same average as used in value_editor (eve_central_sync) 
     82                //$weighted_average = round(((1.6 * $stat->avg_buy_price + 0.8 * $stat->avg_sell_price) / 2),0); 
     83                // Use global sell prices 
     84                //$weighted_average = round($stat->avg_sell_price,0); 
     85                // Use sell median 
    8386                        if (($stat->sell_median != null) && ($stat->sell_median != 0)) 
    8487                                $weighted_average = round($stat->sell_median,0); 
     
    8891                        if (($this->faction == true) && ($stat->factionPrice > 0)) 
    8992                                $weighted_average = round($stat->factionPrice,0); 
    90 //                      if (!$weighted_average) continue;        
     93                        //                      if (!$weighted_average) continue; 
    9194                        // Insert new values into the database and update the old 
    9295                        // For the first item start the query. For later items add ',' 
     
    113116                xml_set_element_handler($this->xml_parser, "startElement", "endElement"); 
    114117                xml_set_character_data_handler($this->xml_parser, "characterData"); 
    115                  
     118 
    116119                if (!($fp = fopen($this->uncompfile, "r"))) { 
    117120                        die("could not open XML input"); 
    118                 }     
    119  
    120                 while ($data = fread($fp, 4096))  
    121                 { 
    122                         if (!xml_parse($this->xml_parser, $data, feof($fp)))  
     121                } 
     122 
     123                while ($data = fread($fp, 4096)) 
     124                { 
     125                        if (!xml_parse($this->xml_parser, $data, feof($fp))) 
    123126                        { 
    124127                                die(sprintf("XML error: %s at line %d", 
    125                                 xml_error_string(xml_get_error_code($this->xml_parser)), xml_get_current_line_number($this->xml_parser))); 
     128                                        xml_error_string(xml_get_error_code($this->xml_parser)), xml_get_current_line_number($this->xml_parser))); 
    126129                        } 
    127130                } 
     
    181184        { 
    182185                if ($this->insideitem && (strtolower($name) == "market_stat")) 
    183                 {  
     186                { 
    184187                        if (true)//($this->tooLow > 4) 
    185                         {  
     188                        { 
    186189                                $qry = new DBQuery(); 
    187190                                // Old average calculation 
     
    212215        } 
    213216 
    214         function destroy()  
     217        function destroy() 
    215218        { 
    216219                xml_parser_free($this->xml_parser); 
    217220        } 
    218221} 
    219 ?> 
  • dev/mods/value_fetch/settings.php

    r338 r486  
    44$page = new Page( "Settings - Value fetcher" ); 
    55// Set version 
    6 $html = '<center>Mod version: <b><a href="http://www.eve-dev.net/e107_plugins/forum/forum_viewtopic.php?9153.0">'. $version .'</a></b><br><br>'; 
     6$html = '<center>Mod version: <b><a href="http://eve-id.net/forum/viewtopic.php?f=505&t=14731">'. $version .'</a></b><br><br>'; 
    77 
    88$html .= '<form method="post" action="?a=fetch_values">'; 
     
    1717$page->addContext( $menubox->generate() ); 
    1818$page->generate(); 
    19 ?> 
     19