Changeset 404

Show
Ignore:
Timestamp:
07/07/09 02:52:45 (11 years ago)
Author:
kovell
Message:

Fixes: db debug code no longer errors on some setups. upgrade now gives updates on progress. apicache returned to index.php for better eve api compatibility. cache options now has clear summary cache option. siglist shows correct urls. summary cache correctly updates. feedfetcher excludes kills before exclude date. exclude date on kills works

Location:
dev
Files:
1 added
13 modified

Legend:

Unmodified
Added
Removed
  • dev/common/admin/feed_fetcher.php

    r396 r404  
    128128                        if ( isset( $description ) ) 
    129129                        { 
     130                                //Check age of mail 
     131                                if(config::get('filter_apply')) 
     132                                { 
     133                                        $filterdate = config::get('filter_date'); 
     134                                        $year = substr($description, 0, 4); 
     135                                        $month = substr($description, 5, 2); 
     136                                        $day = substr($description, 8, 2); 
     137                                        $killstamp = mktime(0, 0, 0, $month, $day, $year); 
     138                                        if ($killstamp < $filterdate) $killid = -4; 
     139                                } 
     140                                if(config::get('filter_apply') && $killid == -4); 
    130141                                // If the kill has an external id then check if it is already 
    131142                                // on this board. 
    132                                 $apiID = intval($apiID); 
    133                                 if( $apiID) 
     143                                elseif($apiID = intval($apiID)) 
    134144                                { 
    135145                                        $qry = new DBQuery(); 
     
    140150                                                $killid = $parser->parse( true ); 
    141151                                        } 
    142                                         else 
    143                                         { 
    144                                                 $killid = -3; 
    145                                                 $html .= "Killmail already posted <a href=\"?a=kill_detail&amp;kll_external_id=".$apiID."\">here</a>.<br>"; 
    146                                         } 
     152                                        else $killid = -3; 
    147153                                } 
    148154                                elseif(!$apikills) 
     
    158164                                                config::set($this->trackkey_, $uurl . ':::' . intval($title) . ':::' . $this->trackfriend_ . ':::' ); 
    159165                                } 
    160                                 if ( $killid == 0 || $killid == -1 || $killid == -2 || $killid == -3) 
     166                                if ( $killid <= 0 ) 
    161167                                { 
    162168                                        if ( $killid == 0 && config::get('fetch_verbose') ) 
    163169                                                $html .= "Killmail is malformed. ".$uurl." Kill ID = ".$title." <br>"; 
     170                                        if ( $killid == -1 && config::get('fetch_verbose') ) 
     171                                                $html .= "Killmail already posted <a href=\"?a=kill_detail&amp;kll_id=".$parser->dupeid_."\">here</a>.<br>"; 
    164172                                        if ( $killid == -2 && config::get('fetch_verbose') ) 
    165173                                                $html .= "Killmail is not related to ".KB_TITLE.".<br>"; 
    166                                         if ( $killid == -1 && config::get('fetch_verbose') ) 
    167                                                 $html .= "Killmail already posted <a href=\"?a=kill_detail&amp;kll_id=".$parser->dupeid_."\">here</a>.<br>"; 
     174                                        if ( $killid == -3 && config::get('fetch_verbose') ) 
     175                                                $html .= "Killmail already posted <a href=\"?a=kill_detail&amp;kll_external_id=".$apiID."\">here</a>.<br>"; 
     176                                        if ( $killid == -4 && config::get('fetch_verbose') ) 
     177                                                $html .= "Killmail too old to post with current settings.<br>"; 
    168178                                } 
    169179                                else 
  • dev/common/admin/option_acache.php

    r397 r404  
    3737//options::fadd('Mail Cache', 'none', 'custom', array('admin_acache', 'optionClearMail'), array('admin_acache', 'clearCaches')); 
    3838options::fadd('SQL Query Cache', 'none', 'custom', array('admin_acache', 'optionClearSQL'), array('admin_acache', 'clearCaches')); 
     39options::fadd('Kill Summary Cache', 'none', 'custom', array('admin_acache', 'optionClearSum'), array('admin_acache', 'clearCaches')); 
    3940options::fadd('All Caches', 'none', 'custom', array('admin_acache', 'optionClearAll'), array('admin_acache', 'clearCaches')); 
    4041 
     
    9697        function optionClearPage() 
    9798        { 
    98                 return '<input type="checkbox" name="option[clean_page]">Clear cache ?'; 
     99                return '<input type="checkbox" name="option[clear_page]">Clear cache ?'; 
    99100        } 
    100101        function optionClearMail() 
    101102        { 
    102                 return '<input type="checkbox" name="option[clean_mail]">Clear cache ?'; 
     103                return '<input type="checkbox" name="option[clear_mail]">Clear cache ?'; 
     104        } 
     105        function optionClearSum() 
     106        { 
     107                return '<input type="checkbox" name="option[clear_sum]">Clear cache ?'; 
    103108        } 
    104109        function optionClearSQL() 
    105110        { 
    106                 return '<input type="checkbox" name="option[clean_sql]">Clear cache ?'; 
     111                return '<input type="checkbox" name="option[clear_sql]">Clear cache ?'; 
    107112        } 
    108113        function optionClearTemplate() 
    109114        { 
    110                 return '<input type="checkbox" name="option[clean_template]">Clear cache ?'; 
     115                return '<input type="checkbox" name="option[clear_template]">Clear cache ?'; 
    111116        } 
    112117        function optionClearAll() 
    113118        { 
    114                 return '<input type="checkbox" name="option[clean_all]">Clear cache ?'; 
     119                return '<input type="checkbox" name="option[clear_all]">Clear cache ?'; 
    115120        } 
    116121        function clearCaches() 
    117122        { 
    118         if ($_POST['option']['clean_page'] == 'on') 
     123        if ($_POST['option']['clear_page'] == 'on') 
    119124        { 
    120125                        admin_acache::removeOld(0, KB_CACHEDIR.'/'.KB_SITE, false); 
    121                         $_POST['option']['clean_page'] = 'off'; 
     126                        $_POST['option']['clear_page'] = 'off'; 
    122127        } 
    123         if ($_POST['option']['clean_template'] == 'on') 
     128        if ($_POST['option']['clear_template'] == 'on') 
    124129        {//hardcoded in index.php 
    125130                        admin_acache::removeOld(0, 'cache/templates_c', false); 
    126                         $_POST['option']['clean_template'] == 'off'; 
     131                        $_POST['option']['clear_template'] == 'off'; 
    127132        } 
    128         if ($_POST['option']['clean_mail'] == 'on') 
     133        if ($_POST['option']['clear_mail'] == 'on') 
    129134        { 
    130135                        admin_acache::removeOld(0, config::get('km_cache_dir'), false); 
    131                         $_POST['option']['clean_mail'] == 'off'; 
     136                        $_POST['option']['clear_mail'] == 'off'; 
    132137        } 
    133         if ($_POST['option']['clean_sql'] == 'on') 
     138        if ($_POST['option']['clear_sum'] == 'on') 
     139        { 
     140                        $qry = new DBQuery(); 
     141                        $qry->execute("DELETE FROM kb3_sum_alliance"); 
     142                        $qry->execute("DELETE FROM kb3_sum_corp"); 
     143                        $qry->execute("DELETE FROM kb3_sum_pilot"); 
     144                        $_POST['option']['clear_sum'] == 'off'; 
     145        } 
     146        if ($_POST['option']['clear_sql'] == 'on') 
    134147        { 
    135148                        admin_acache::clearQCache(); 
    136                         $_POST['option']['clean_sql'] == 'off'; 
     149                        $_POST['option']['clear_sql'] == 'off'; 
    137150        } 
    138         if ($_POST['option']['clean_all'] == 'on') 
     151        if ($_POST['option']['clear_all'] == 'on') 
    139152        { 
    140153                        admin_acache::removeOld(0, KB_CACHEDIR.'/'.KB_SITE, false); 
     
    147160                        admin_acache::removeOld(0, 'cache/api', false); 
    148161                        admin_acache::removeOld(0, 'cache/corp', false); 
    149                         $_POST['option']['clean_all'] == 'off'; 
     162                        $qry = new DBQuery(); 
     163                        $qry->execute("DELETE FROM kb3_sum_alliance"); 
     164                        $qry->execute("DELETE FROM kb3_sum_corp"); 
     165                        $qry->execute("DELETE FROM kb3_sum_pilot"); 
     166                        $_POST['option']['clear_all'] == 'off'; 
    150167        } 
    151168                return; 
  • dev/common/includes/autoupgrade.php

    r403 r404  
    1818        // if update nesseary run updates 
    1919        if (CURRENT_DB_UPDATE < LASTEST_DB_UPDATE ){ 
    20  
     20        header('Location: '.KB_HOST."/upgrade.php"); 
     21        die; 
     22 
     23        // Functional but very rough 
     24 
     25        // Plan for the future: 
     26        // Check here to see if an update is needed. If so redirect to 
     27        // KB_HOST/upgrade.php 
    2128                update001(); 
    2229                update002(); 
  • dev/common/includes/class.db.mysqli.php

    r399 r404  
    9494                        { 
    9595                                DBDebug::recordError("Database error: ".$this->dbconn_->id()->error); 
    96                                 DBDebug::recordError("SQL: ".$this->_sql); 
     96                                DBDebug::recordError("SQL: ".$sql); 
    9797                        } 
    9898            if (defined('DB_HALTONERROR') && DB_HALTONERROR) 
  • dev/common/includes/class.db.php

    r399 r404  
    33class DBConnection 
    44{ 
    5     function DBConnection() 
    6     { 
    7         static $conn_id; 
    8  
    9         if (is_resource($conn_id)) 
    10         { 
    11             $this->id_ = $conn_id; 
    12             return; 
    13         } 
    14         if(defined('DB_PORT')) 
    15         { 
    16                 if (!$this->id_ = mysql_connect(DB_HOST.':'.DB_PORT, DB_USER, DB_PASS)) 
    17                     die("Unable to connect to mysql database."); 
    18         } 
    19         else 
    20         { 
    21                 if (!$this->id_ = mysql_connect(DB_HOST, DB_USER, DB_PASS)) 
    22                     die("Unable to connect to mysql database."); 
    23         } 
    24         mysql_select_db(DB_NAME); 
    25         $conn_id = $this->id_; 
    26     } 
    27  
    28     function id() 
    29     { 
    30         return $this->id_; 
    31     } 
    32  
    33     function affectedRows() 
    34     { 
    35         return mysql_affected_rows($this->id_); 
    36     } 
     5        function DBConnection() 
     6        { 
     7                static $conn_id; 
     8 
     9                if (is_resource($conn_id)) 
     10                { 
     11                        $this->id_ = $conn_id; 
     12                        return; 
     13                } 
     14                if(defined('DB_PORT')) 
     15                { 
     16                        if (!$this->id_ = mysql_connect(DB_HOST.':'.DB_PORT, DB_USER, DB_PASS)) 
     17                                die("Unable to connect to mysql database."); 
     18                } 
     19                else 
     20                { 
     21                        if (!$this->id_ = mysql_connect(DB_HOST, DB_USER, DB_PASS)) 
     22                                die("Unable to connect to mysql database."); 
     23                } 
     24                mysql_select_db(DB_NAME); 
     25                $conn_id = $this->id_; 
     26        } 
     27 
     28        function id() 
     29        { 
     30                return $this->id_; 
     31        } 
     32 
     33        function affectedRows() 
     34        { 
     35                return mysql_affected_rows($this->id_); 
     36        } 
    3737} 
    3838 
    3939class DBQuery 
    4040{ 
    41     var $object; 
    42  
    43     // php5 style object overloading 
    44     // we internally load up the wanted object and reroute all 
    45     // object actions to it 
    46     function __construct($forceNormal = false) 
    47     { 
    48         if (DB_TYPE_USED === 'mysqli' ) 
    49         { 
    50             if (DB_USE_MEMCACHE === true && !$forceNormal) 
    51             { 
    52                 $object = new DBMemCachedQuery_mysqli(); 
    53             } 
    54             elseif (DB_USE_QCACHE === true && !$forceNormal) 
    55             { 
    56                 $object = new DBCachedQuery_mysqli(); 
    57             } 
    58             else 
    59             { 
    60                 $object = new DBNormalQuery_mysqli(); 
    61             } 
    62         } 
    63         elseif (DB_USE_MEMCACHE === true && !$forceNormal) 
    64         { 
    65             $object = new DBMemCachedQuery(); 
    66         } 
    67         elseif (DB_USE_QCACHE === true && !$forceNormal) 
    68         { 
    69             $object = new DBCachedQuery(); 
    70         } 
    71         else 
    72         { 
    73             $object = new DBNormalQuery(); 
    74         } 
    75         $this->object = $object; 
    76     } 
    77  
    78     function __call($name, $args) 
    79     { 
    80         return call_user_func_array(array($this->object, $name), $args); 
    81     } 
    82  
    83     function __set($name, $value) 
    84     { 
    85         $this->object->$name = $value; 
    86     } 
    87  
    88     function __unset($name) 
    89     { 
    90         unset($this->object->$name); 
    91     } 
    92  
    93     function __isset($name) 
    94     { 
    95         return isset($this->object->$name); 
    96     } 
    97  
    98     function __get($name) 
    99     { 
    100         return $this->object->$name; 
    101     } 
    102  
    103     // php4 style object overloading 
    104     // we just hijack $this but we need to use a helper 
    105     // function for this because php5 fatals if it sees 
    106     // $this = ... in the src 
    107     function DBQuery($forceNormal = false) 
    108     { 
    109         $object = &$this->getRef($this); 
    110         if (DB_TYPE_USED === 'mysqli' ) 
    111         { 
    112             if (DB_USE_MEMCACHE === true && !$forceNormal) 
    113             { 
    114                 $object = new DBMemCachedQuery_mysqli(); 
    115             } 
    116             elseif (DB_USE_QCACHE === true && !$forceNormal) 
    117             { 
    118                 $object = new DBCachedQuery_mysqli(); 
    119             } 
    120             else 
    121             { 
    122                 $object = new DBNormalQuery_mysqli(); 
    123             } 
    124         } 
    125         elseif (DB_USE_MEMCACHE === true && !$forceNormal) 
    126         { 
    127             $object = new DBMemCachedQuery(); 
    128         } 
    129         elseif (DB_USE_QCACHE === true && !$forceNormal) 
    130         { 
    131             $object = new DBCachedQuery(); 
    132         } 
    133         else 
    134         { 
    135             $object = new DBNormalQuery(); 
    136         } 
    137     } 
    138  
    139     function &getRef(&$var) 
    140     { 
    141         return $var; 
    142     } 
     41        var $object; 
     42 
     43        // php5 style object overloading 
     44        // we internally load up the wanted object and reroute all 
     45        // object actions to it 
     46        function __construct($forceNormal = false) 
     47        { 
     48                if (DB_TYPE_USED === 'mysqli' ) 
     49                { 
     50                        if (DB_USE_MEMCACHE === true && !$forceNormal) 
     51                        { 
     52                                $object = new DBMemCachedQuery_mysqli(); 
     53                        } 
     54                        elseif (DB_USE_QCACHE === true && !$forceNormal) 
     55                        { 
     56                                $object = new DBCachedQuery_mysqli(); 
     57                        } 
     58                        else 
     59                        { 
     60                                $object = new DBNormalQuery_mysqli(); 
     61                        } 
     62                } 
     63                elseif (DB_USE_MEMCACHE === true && !$forceNormal) 
     64                { 
     65                        $object = new DBMemCachedQuery(); 
     66                } 
     67                elseif (DB_USE_QCACHE === true && !$forceNormal) 
     68                { 
     69                        $object = new DBCachedQuery(); 
     70                } 
     71                else 
     72                { 
     73                        $object = new DBNormalQuery(); 
     74                } 
     75                $this->object = $object; 
     76        } 
     77 
     78        function __call($name, $args) 
     79        { 
     80                return call_user_func_array(array($this->object, $name), $args); 
     81        } 
     82 
     83        function __set($name, $value) 
     84        { 
     85                $this->object->$name = $value; 
     86        } 
     87 
     88        function __unset($name) 
     89        { 
     90                unset($this->object->$name); 
     91        } 
     92 
     93        function __isset($name) 
     94        { 
     95                return isset($this->object->$name); 
     96        } 
     97 
     98        function __get($name) 
     99        { 
     100                return $this->object->$name; 
     101        } 
     102 
     103        // php4 style object overloading 
     104        // we just hijack $this but we need to use a helper 
     105        // function for this because php5 fatals if it sees 
     106        // $this = ... in the src 
     107        function DBQuery($forceNormal = false) 
     108        { 
     109                $object = &$this->getRef($this); 
     110                if (DB_TYPE_USED === 'mysqli' ) 
     111                { 
     112                        if (DB_USE_MEMCACHE === true && !$forceNormal) 
     113                        { 
     114                                $object = new DBMemCachedQuery_mysqli(); 
     115                        } 
     116                        elseif (DB_USE_QCACHE === true && !$forceNormal) 
     117                        { 
     118                                $object = new DBCachedQuery_mysqli(); 
     119                        } 
     120                        else 
     121                        { 
     122                                $object = new DBNormalQuery_mysqli(); 
     123                        } 
     124                } 
     125                elseif (DB_USE_MEMCACHE === true && !$forceNormal) 
     126                { 
     127                        $object = new DBMemCachedQuery(); 
     128                } 
     129                elseif (DB_USE_QCACHE === true && !$forceNormal) 
     130                { 
     131                        $object = new DBCachedQuery(); 
     132                } 
     133                else 
     134                { 
     135                        $object = new DBNormalQuery(); 
     136                } 
     137        } 
     138 
     139        function &getRef(&$var) 
     140        { 
     141                return $var; 
     142        } 
    143143} 
    144144 
     
    146146class DBNormalQuery 
    147147{ 
    148     //! Prepare a connection for a new mysql query. 
    149     function DBNormalQuery() 
    150     { 
    151         static $totalexectime = 0; 
     148//! Prepare a connection for a new mysql query. 
     149        function DBNormalQuery() 
     150        { 
     151                static $totalexectime = 0; 
    152152                $this->totalexectime_ = &$totalexectime; 
    153         $this->executed_ = false; 
    154         $this->dbconn_ = new DBConnection; 
    155     } 
    156  
    157     //! Return the count of queries performed. 
     153                $this->executed_ = false; 
     154                $this->dbconn_ = new DBConnection; 
     155        } 
     156 
     157        //! Return the count of queries performed. 
    158158 
    159159    /*! 
     
    161161     * \return the count of queries so far. 
    162162     */ 
    163     function queryCount($increase = false) 
    164     { 
    165         static $count; 
    166  
    167         if ($increase) 
    168         { 
    169             $count++; 
    170         } 
    171  
    172         return $count; 
    173     } 
    174  
    175     //! Return the count of cached queries performed - 0 for uncaches queries. 
    176     function queryCachedCount($increase = false) 
    177     { 
    178         return 0; 
    179     } 
    180  
    181     //! Execute an SQL string. 
    182  
    183     /*  
     163        function queryCount($increase = false) 
     164        { 
     165                static $count; 
     166 
     167                if ($increase) 
     168                { 
     169                        $count++; 
     170                } 
     171 
     172                return $count; 
     173        } 
     174 
     175        //! Return the count of cached queries performed - 0 for uncaches queries. 
     176        function queryCachedCount($increase = false) 
     177        { 
     178                return 0; 
     179        } 
     180 
     181        //! Execute an SQL string. 
     182 
     183    /* 
    184184     * If DB_HALTONERROR is set then this will exit on an error. 
    185185     * \return false on error or true if successful. 
    186186     */ 
    187     function execute($sql) 
    188     { 
    189         $t1 = strtok(microtime(), ' ') + strtok(''); 
    190  
    191         $this->resid_ = mysql_query($sql, $this->dbconn_->id()); 
    192  
    193         if (!$this->resid_ || mysql_errno($this->dbconn_->id())) 
    194         { 
    195             if(defined('KB_PROFILE')) 
    196                         { 
    197                                 DBDebug::recordError("Database error: ".$this->dbconn_->id()->error); 
    198                                 DBDebug::recordError("SQL: ".$this->_sql); 
    199                         } 
    200             if (defined('DB_HALTONERROR') && DB_HALTONERROR) 
    201             { 
    202                 echo "Database error: " . mysql_error($this->dbconn_->id()) . "<br>"; 
    203                 echo "SQL: " . $sql . "<br>"; 
    204                 exit; 
    205             } 
    206             else 
    207             { 
    208                 return false; 
    209             } 
    210         } 
    211  
    212         $this->exectime_ = strtok(microtime(), ' ') + strtok('') - $t1; 
    213         $this->totalexectime_ += $this->exectime_; 
    214         $this->executed_ = true; 
    215  
    216         if(defined('KB_PROFILE')) DBDebug::profile($sql, $this); 
    217  
    218         $this->queryCount(true); 
    219  
    220         return true; 
    221     } 
    222  
    223     //! Return the number of rows returned by the last query. 
    224     function recordCount() 
    225     { 
    226         return mysql_num_rows($this->resid_); 
    227     } 
    228  
    229     //! Return the next row of results from the last query. 
    230     function getRow() 
    231     { 
    232         if ($this->resid_) 
    233         { 
    234             return mysql_fetch_assoc($this->resid_); 
    235         } 
    236         return false; 
    237     } 
    238  
    239     //! Reset list of results to return the first row from the last query. 
    240     function rewind() 
    241     { 
    242         @mysql_data_seek($this->resid_, 0); 
    243     } 
    244  
    245     //! Return the auto-increment ID from the last insert operation. 
    246     function getInsertID() 
    247     { 
    248         return mysql_insert_id(); 
    249     } 
    250  
    251     //! Return the execution time of the last query. 
    252     function execTime() 
    253     { 
    254         return $this->exectime_; 
    255     } 
    256  
    257     //! Return true if a query has been executed or false if none has been. 
    258     function executed() 
    259     { 
    260         return $this->executed_; 
    261     } 
    262  
    263     //! Return the most recent error message for the DB connection. 
    264     function getErrorMsg() 
    265     { 
    266         $msg = $this->sql_ . "<br>"; 
    267         $msg .= "Query failed. " . mysql_error($this->dbconn_->id()); 
    268  
    269         return $msg; 
    270     } 
    271     //! Set the autocommit status. 
    272      
    273     //! Not implemented with mysql library 
    274     function autocommit($commit = true) 
    275     { 
    276         return false; 
    277     } 
    278      
    279     //! Rollback all queries in the current transaction. 
    280      
    281     //! Not implemented with mysql library 
    282     function rollback() 
    283     { 
    284         return false; 
    285     } 
     187        function execute($sql) 
     188        { 
     189                $t1 = strtok(microtime(), ' ') + strtok(''); 
     190 
     191                $this->resid_ = mysql_query($sql, $this->dbconn_->id()); 
     192 
     193                if (!$this->resid_ || mysql_errno($this->dbconn_->id())) 
     194                { 
     195                        if(defined('KB_PROFILE')) 
     196                        { 
     197                                DBDebug::recordError("Database error: ".mysql_error($this->dbconn_->id())); 
     198                                DBDebug::recordError("SQL: ".$sql); 
     199                        } 
     200                        if (defined('DB_HALTONERROR') && DB_HALTONERROR) 
     201                        { 
     202                                echo "Database error: " . mysql_error($this->dbconn_->id()) . "<br>"; 
     203                                echo "SQL: " . $sql . "<br>"; 
     204                                exit; 
     205                        } 
     206                        else 
     207                        { 
     208                                return false; 
     209                        } 
     210                } 
     211 
     212                $this->exectime_ = strtok(microtime(), ' ') + strtok('') - $t1; 
     213                $this->totalexectime_ += $this->exectime_; 
     214                $this->executed_ = true; 
     215 
     216                if(defined('KB_PROFILE')) DBDebug::profile($sql); 
     217 
     218                $this->queryCount(true); 
     219 
     220                return true; 
     221        } 
     222 
     223        //! Return the number of rows returned by the last query. 
     224        function recordCount() 
     225        { 
     226                return mysql_num_rows($this->resid_); 
     227        } 
     228 
     229        //! Return the next row of results from the last query. 
     230        function getRow() 
     231        { 
     232                if ($this->resid_) 
     233                { 
     234                        return mysql_fetch_assoc($this->resid_); 
     235                } 
     236                return false; 
     237        } 
     238 
     239        //! Reset list of results to return the first row from the last query. 
     240        function rewind() 
     241        { 
     242                @mysql_data_seek($this->resid_, 0); 
     243        } 
     244 
     245        //! Return the auto-increment ID from the last insert operation. 
     246        function getInsertID() 
     247        { 
     248                return mysql_insert_id(); 
     249        } 
     250 
     251        //! Return the execution time of the last query. 
     252        function execTime() 
     253        { 
     254                return $this->exectime_; 
     255        } 
     256 
     257        //! Return true if a query has been executed or false if none has been. 
     258        function executed() 
     259        { 
     260                return $this->executed_; 
     261        } 
     262 
     263        //! Return the most recent error message for the DB connection. 
     264        function getErrorMsg() 
     265        { 
     266                $msg = $this->sql_ . "<br>"; 
     267                $msg .= "Query failed. " . mysql_error($this->dbconn_->id()); 
     268 
     269                return $msg; 
     270        } 
     271        //! Set the autocommit status. 
     272 
     273        //! Not implemented with mysql library 
     274        function autocommit($commit = true) 
     275        { 
     276                return false; 
     277        } 
     278 
     279        //! Rollback all queries in the current transaction. 
     280 
     281        //! Not implemented with mysql library 
     282        function rollback() 
     283        { 
     284                return false; 
     285        } 
    286286} 
    287287 
    288     class DBDebug 
    289     { 
    290         function recordError($text) 
    291         { 
    292             $qerrfile = "/tmp/EDKprofile.lst"; 
    293             if($text) file_put_contents($qerrfile, $text."\n", FILE_APPEND); 
    294         } 
    295         function profile($sql, $text='') 
    296         { 
    297             $qerrfile = "/tmp/EDKprofile.lst"; 
    298             if($text) file_put_contents($qerrfile, $text."\n", FILE_APPEND); 
    299             if (KB_PROFILE == 2) 
    300             { 
    301                     file_put_contents($qerrfile, $sql . "\nExecution time: " . $this->exectime_ . "\n", FILE_APPEND); 
    302             } 
    303                         if(DB_TYPE != 'mysqli') return; 
    304             if (KB_PROFILE == 3) 
    305             { 
    306                     if(strtolower(substr($sql,0,6))=='select') 
    307                     { 
    308                             $prof_qry= mysqli_query($this->dbconn_->id(),'EXPLAIN extended '.$sql.";"); 
    309                             while($prof_row = mysqli_fetch_assoc($prof_qry)) 
    310                             $prof_out_exp .= implode(' | ', $prof_row)."\n"; 
    311                             $prof_qry= mysqli_query($this->dbconn_->id(),'show warnings'); 
    312  
    313                             while($prof_row = mysqli_fetch_assoc($prof_qry)) 
    314                             $prof_out_ext .= implode(' | ', $prof_row)."\n"; 
    315                             file_put_contents($qerrfile, $sql . "\n". 
    316                                     $prof_out_ext. $prof_out_exp. 
    317                     "\n-- Execution time: " . $this->exectime_ . " --\n", FILE_APPEND); 
    318                     } 
    319                     else file_put_contents($qerrfile, $sql."\nExecution time: ".$this->exectime_."\n", FILE_APPEND); 
    320             } 
    321  
    322             if (KB_PROFILE == 4) 
    323             { 
    324                     if($this->exectime_ > 0.1 && strtolower(substr($sql,0,6))=='select') 
    325                     { 
    326                             $prof_qry= mysqli_query($this->dbconn_->id(),'EXPLAIN extended '.$sql); 
    327                             while($prof_row = mysqli_fetch_assoc($prof_qry)) 
    328                             $prof_out_exp .= implode(' | ', $prof_row)."\n"; 
    329                             $prof_qry= mysqli_query($this->dbconn_->id(),'show warnings'); 
    330  
    331                             while($prof_row = mysqli_fetch_assoc($prof_qry)) 
    332                             $prof_out_ext .= implode(' | ', $prof_row)."\n"; 
    333                             file_put_contents($qerrfile, $sql . "\n". 
    334                                     $prof_out_ext. $prof_out_exp. 
    335                     "\n-- Execution time: " . $this->exectime_ . " --\n", FILE_APPEND); 
    336                     } 
    337             } 
    338  
    339         } 
    340     } 
     288class DBDebug 
     289{ 
     290        function recordError($text) 
     291        { 
     292                $qerrfile = "/tmp/EDKprofile.lst"; 
     293                if($text) file_put_contents($qerrfile, $text."\n", FILE_APPEND); 
     294        } 
     295        function profile($sql, $text='') 
     296        { 
     297                $qerrfile = "/tmp/EDKprofile.lst"; 
     298                if($text) file_put_contents($qerrfile, $text."\n", FILE_APPEND); 
     299                if (KB_PROFILE == 2) 
     300                { 
     301                        file_put_contents($qerrfile, $sql . "\nExecution time: " . $this->exectime_ . "\n", FILE_APPEND); 
     302                } 
     303                if (KB_PROFILE == 3) 
     304                { 
     305                        if(DB_TYPE == 'mysqli' && strtolower(substr($sql,0,6))=='select') 
     306                        { 
     307                                $prof_qry= mysqli_query($this->dbconn_->id(),'EXPLAIN extended '.$sql.";"); 
     308                                while($prof_row = mysqli_fetch_assoc($prof_qry)) 
     309                                        $prof_out_exp .= implode(' | ', $prof_row)."\n"; 
     310                                $prof_qry= mysqli_query($this->dbconn_->id(),'show warnings'); 
     311 
     312                                while($prof_row = mysqli_fetch_assoc($prof_qry)) 
     313                                        $prof_out_ext .= implode(' | ', $prof_row)."\n"; 
     314                                file_put_contents($qerrfile, $sql . "\n". 
     315                                        $prof_out_ext. $prof_out_exp. 
     316                                        "\n-- Execution time: " . $this->exectime_ . " --\n", FILE_APPEND); 
     317                        } 
     318                        else file_put_contents($qerrfile, $sql."\nExecution time: ".$this->exectime_."\n", FILE_APPEND); 
     319                } 
     320 
     321                if (KB_PROFILE == 4) 
     322                { 
     323                        if($this->exectime_ > 0.1 && strtolower(substr($sql,0,6))=='select') 
     324                        { 
     325                                $prof_qry= mysqli_query($this->dbconn_->id(),'EXPLAIN extended '.$sql); 
     326                                while($prof_row = mysqli_fetch_assoc($prof_qry)) 
     327                                        $prof_out_exp .= implode(' | ', $prof_row)."\n"; 
     328                                $prof_qry= mysqli_query($this->dbconn_->id(),'show warnings'); 
     329 
     330                                while($prof_row = mysqli_fetch_assoc($prof_qry)) 
     331                                        $prof_out_ext .= implode(' | ', $prof_row)."\n"; 
     332                                file_put_contents($qerrfile, $sql . "\n". 
     333                                        $prof_out_ext. $prof_out_exp. 
     334                                        "\n-- Execution time: " . $this->exectime_ . " --\n", FILE_APPEND); 
     335                        } 
     336                } 
     337 
     338        } 
     339} 
    341340 
    342341?> 
  • dev/common/includes/class.db_cache.php

    r399 r404  
    268268            if(defined('KB_PROFILE')) 
    269269                        { 
    270                                 DBDebug::recordError("Database error: ".$this->dbconn_->id()->error); 
     270                                DBDebug::recordError("Database error: ".mysql_error($this->dbconn_->id())); 
    271271                                DBDebug::recordError("SQL: ".$this->_sql); 
    272272                        } 
  • dev/common/includes/class.db_memcache.php

    r399 r404  
    141141            if(defined('KB_PROFILE')) 
    142142                        { 
    143                                 DBDebug::recordError("Database error: ".$this->dbconn_->id()->error); 
     143                                DBDebug::recordError("Database error: ".mysql_error($this->dbconn_->id())); 
    144144                                DBDebug::recordError("SQL: ".$this->_sql); 
    145145                        } 
  • dev/common/includes/class.eveapi.php

    r378 r404  
    1515require_once( "common/includes/db.php" ); 
    1616require_once('common/includes/class.apicache.php'); 
    17  
    18 $ApiCache = new ApiCache(KB_SITE); 
    1917 
    2018// Checks for configuration of files and folders 
  • dev/common/includes/class.options.php

    r370 r404  
    6363            foreach ($elements as $element) 
    6464            { 
    65                 // for callbacks we check their callback function on postdata to deal with it 
    66                 if ($element['onchange']) 
    67                 { 
    68                     if (!is_callable($element['onchange'])) 
    69                     { 
    70                         trigger_error('Unable to callback to '.$element['onchange'][0].'::'.$element['onchange'][1], E_USER_ERROR); 
    71                         return false; 
    72                     } 
    73                     call_user_func($element['onchange'], $element['name']); 
    74                     //continue; 
    75                 } 
    76  
    7765                // for checkboxes we need to set the value to zero if the option is not there 
    7866                if ($element['type'] == 'checkbox') 
     
    9280                    config::set($element['name'], $_POST['option'][$element['name']]); 
    9381                } 
     82                // for callbacks we check their callback function on postdata to deal with it 
     83                if ($element['onchange']) 
     84                { 
     85                    if (!is_callable($element['onchange'])) 
     86                    { 
     87                        trigger_error('Unable to callback to '.$element['onchange'][0].'::'.$element['onchange'][1], E_USER_ERROR); 
     88                        return false; 
     89                    } 
     90                    call_user_func($element['onchange'], $element['name']); 
     91                    //continue; 
     92                } 
     93 
    9494            } 
    9595        } 
  • dev/common/includes/class.summary.php

    r400 r404  
    138138// Causes big slowdowns for feeds so just return and leave summary creation until the page is viewed. 
    139139//              if(!$qry->recordCount()) allianceSummary::buildSummary($kill->getVictimAllianceID()); 
    140                 if(!$qry->recordCount()) return; 
    141                 $sql = "INSERT INTO kb3_sum_alliance (asm_all_id, asm_shp_id, asm_loss_count, asm_loss_isk) ". 
    142                         "VALUES ( ".$kill->getVictimAllianceID().", ".$kill->getVictimShip()->getClass()->getID().", 1, ". 
    143                         $kill->getISKLoss().") ON DUPLICATE KEY UPDATE ". 
    144                         "asm_loss_count = asm_loss_count + 1, ". 
    145                         "asm_loss_isk = asm_loss_isk + ".$kill->getISKLoss(); 
    146                 $qry->execute($sql); 
     140                if($qry->recordCount()) 
     141                { 
     142                        $sql = "INSERT INTO kb3_sum_alliance (asm_all_id, asm_shp_id, asm_loss_count, asm_loss_isk) ". 
     143                                "VALUES ( ".$kill->getVictimAllianceID().", ".$kill->getVictimShip()->getClass()->getID().", 1, ". 
     144                                $kill->getISKLoss().") ON DUPLICATE KEY UPDATE ". 
     145                                "asm_loss_count = asm_loss_count + 1, ". 
     146                                "asm_loss_isk = asm_loss_isk + ".$kill->getISKLoss(); 
     147                        $qry->execute($sql); 
     148                } 
    147149                foreach($kill->involvedparties_ as $inv) 
    148150                { 
     
    275277                $qry = new DBQuery(); 
    276278                $qry->execute("SELECT 1 FROM kb3_sum_corp WHERE csm_crp_id = ".$kill->getVictimcorpID()); 
    277 //              if(!$qry->recordCount()) corpSummary::buildSummary($kill->getVictimcorpID()); 
    278                 if(!$qry->recordCount()) return; 
    279                 $sql = "INSERT INTO kb3_sum_corp (csm_crp_id, csm_shp_id, csm_loss_count, csm_loss_isk) ". 
    280                         "VALUES ( ".$kill->getVictimcorpID().", ".$kill->getVictimShip()->getClass()->getID().", 1, ". 
    281                         $kill->getISKLoss().") ON DUPLICATE KEY UPDATE ". 
    282                         "csm_loss_count = csm_loss_count + 1, ". 
    283                         "csm_loss_isk = csm_loss_isk + ".$kill->getISKLoss(); 
    284                 $qry->execute($sql); 
     279                if(!$qry->recordCount()) 
     280                { 
     281                        $sql = "INSERT INTO kb3_sum_corp (csm_crp_id, csm_shp_id, csm_loss_count, csm_loss_isk) ". 
     282                                "VALUES ( ".$kill->getVictimcorpID().", ".$kill->getVictimShip()->getClass()->getID().", 1, ". 
     283                                $kill->getISKLoss().") ON DUPLICATE KEY UPDATE ". 
     284                                "csm_loss_count = csm_loss_count + 1, ". 
     285                                "csm_loss_isk = csm_loss_isk + ".$kill->getISKLoss(); 
     286                        $qry->execute($sql); 
     287                } 
    285288                foreach($kill->involvedparties_ as $inv) 
    286289                { 
     
    414417                $qry->execute("SELECT 1 FROM kb3_sum_pilot WHERE psm_plt_id = ".$kill->getVictimID()); 
    415418//              if(!$qry->recordCount()) pilotSummary::buildSummary($kill->getVictimpilotID()); 
    416                 if(!$qry->recordCount()) return; 
    417                 $sql = "INSERT INTO kb3_sum_pilot (psm_plt_id, psm_shp_id, psm_loss_count, psm_loss_isk) ". 
    418                         "VALUES ( ".$kill->getVictimID().", ".$kill->getVictimShip()->getClass()->getID().", 1, ". 
    419                         $kill->getISKLoss().") ON DUPLICATE KEY UPDATE ". 
    420                         "psm_loss_count = psm_loss_count + 1, ". 
    421                         "psm_loss_isk = psm_loss_isk + ".$kill->getISKLoss(); 
    422                 $qry->execute($sql); 
     419                if(!$qry->recordCount()) 
     420                { 
     421                        $sql = "INSERT INTO kb3_sum_pilot (psm_plt_id, psm_shp_id, psm_loss_count, psm_loss_isk) ". 
     422                                "VALUES ( ".$kill->getVictimID().", ".$kill->getVictimShip()->getClass()->getID().", 1, ". 
     423                                $kill->getISKLoss().") ON DUPLICATE KEY UPDATE ". 
     424                                "psm_loss_count = psm_loss_count + 1, ". 
     425                                "psm_loss_isk = psm_loss_isk + ".$kill->getISKLoss(); 
     426                        $qry->execute($sql); 
     427                } 
    423428                foreach($kill->involvedparties_ as $inv) 
    424429                { 
  • dev/common/includes/globals.php

    r403 r404  
    77else 
    88{ 
    9         $svn_rev = '403'; 
     9        $svn_rev = '404'; 
    1010} 
    1111define('SVN_REV', $svn_rev); 
  • dev/common/index.php

    r400 r404  
    2727require_once('common/includes/db.php'); 
    2828require_once('common/includes/class.config.php'); 
    29 //require_once('common/includes/class.apicache.php'); 
     29require_once('common/includes/class.apicache.php'); 
    3030require_once('common/includes/class.killboard.php'); 
    3131require_once('common/includes/class.page.php'); 
     
    6666// load the config from the database 
    6767$config = new Config(KB_SITE); 
    68 //$ApiCache = new ApiCache(KB_SITE); 
     68$ApiCache = new ApiCache(KB_SITE); 
    6969define('KB_HOST', config::get('cfg_kbhost')); 
    7070define('MAIN_SITE', config::get('cfg_mainsite')); 
  • dev/mods/signature_generator/sig_list.tpl

    r130 r404  
    1313<td align="center">This is the code you can try for phpBB<br/> 
    1414<textarea cols="80" rows="2">[url={$kb_host}?a=pilot_detail&plt_id={$pilot}] 
    15 [img]{$kb_host}sig.php/{$pilot}/{$signatures[tpl]}/signature.jpg[/img][/url]</textarea> 
     15[img]{$kb_host}/sig.php/{$pilot}/{$signatures[tpl]}/signature.jpg[/img][/url]</textarea> 
    1616<br/>&nbsp;</td> 
    1717</tr>