Ignore:
Timestamp:
Apr 4, 2011, 4:09:03 PM (13 years ago)
Author:
patdenice
Message:

Don't deactivate autoupdate when update itself.
Check merged extensions.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/autoupdate/trunk/include/autoupdate.class.php

    r10028 r10037  
    1313  var $default_themes = array();
    1414  var $default_languages = array();
     15  var $merged_extensions = array();
     16  var $merged_extension_url = 'http://piwigo.org/download/merged_extensions.txt';
    1517
    1618  function autoupdate()
     
    198200      foreach ($this->$type->$fs as $ext_id => $ext)
    199201      {
    200         if (isset($ext['extension']) and $id == $ext['extension'] and !in_array($ext_id, $this->$default))
     202        if (isset($ext['extension']) and $id == $ext['extension']
     203          and !in_array($ext_id, $this->$default)
     204          and !in_array($ext['extension'], $this->merged_extensions))
    201205        {
    202206          $this->missing[$type][] = $ext;
     
    207211  }
    208212
     213  function get_merged_extensions($version)
     214  {
     215    if (fetchRemote($this->merged_extension_url, $result))
     216    {
     217      $rows = explode("\n", $result);
     218      foreach ($rows as $row)
     219      {
     220        if (preg_match('/^(\d+\.\d+): *(.*)$/', $row, $match))
     221        {
     222          if (version_compare($version, $match[1], '>='))
     223          {
     224            $extensions = explode(',', trim($match[2]));
     225            $this->merged_extensions = array_merge($this->merged_extensions, $extensions);
     226          }
     227        }
     228      }
     229    }
     230  }
     231
    209232  function version_compare($a, $b, $type)
    210233  {
Note: See TracChangeset for help on using the changeset viewer.