Dotclear

Changeset 972


Ignore:
Timestamp:
03/31/09 22:42:16 (14 years ago)
Author:
Moe
Message:

DL Manager 1.1-alpha2:

  • moved download counter to (dc_)media (it doesn't work with current Dotclear release)
Location:
plugins/dlManager
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • plugins/dlManager/_admin.php

    r873 r972  
    4646     public static function adminMediaItem($file) 
    4747     { 
    48           $count_dl = unserialize($GLOBALS['core']->blog->settings->dlmanager_count_dl); 
     48          $count_dl = @unserialize($GLOBALS['core']->blog->settings->dlmanager_count_dl); 
    4949          if (!is_array($count_dl)) 
    5050          { 
     
    7070     public static function adminMediaListItem($file) 
    7171     { 
    72           $count_dl = unserialize($GLOBALS['core']->blog->settings->dlmanager_count_dl); 
     72          $count_dl = @unserialize($GLOBALS['core']->blog->settings->dlmanager_count_dl); 
    7373          if (!is_array($count_dl)) 
    7474          { 
  • plugins/dlManager/_define.php

    r873 r972  
    2828     /* Description*/                "Download manager with a public page and a widget", 
    2929     /* Author */                    "Moe (http://gniark.net/), Osku and Tomtom (http://blog.zenstyle.fr)", 
    30      /* Version */                   '1.1-alpha1', 
     30     /* Version */                   '1.1-alpha2', 
    3131     /* Permissions */               'admin' 
    3232); 
  • plugins/dlManager/_install.php

    r873 r972  
    5656 
    5757# move download counter to (dc_)media table 
    58 if (version_compare($i_version,'1.1-beta1','<')) 
     58if (version_compare($i_version,'1.1-alpha2','<')) 
    5959{ 
    6060     # add media_download column to (dc_)media 
     
    6464     $changes = $si->synchronize($s); 
    6565      
    66      // fixme : it works with only one blog 
    67      $count_dl = unserialize($core->blog->settings->dlmanager_count_dl); 
    68      if (is_array($count_dl)) 
     66     # move download counter from blog settings to (dc_)media 
     67     $rs = $core->con->select('SELECT setting_value, setting_id, blog_id '. 
     68          'FROM '.$core->prefix.'setting '. 
     69          'WHERE ((setting_ns = \'dlmanager\') '. 
     70          'AND (setting_id = \'dlmanager_count_dl\'));'); 
     71      
     72     while($rs->fetch()) 
    6973     { 
    70           foreach ($count_dl as $media_id => $dl) 
     74          $count_dl = @unserialize($rs->setting_value); 
     75          if (is_array($count_dl)) 
    7176          { 
    72                $cur = $core->con->openCursor($core->prefix.'media'); 
    73                $cur->media_download = $dl; 
    74                $cur->update('WHERE media_id = '.$media_id.';');        
     77               foreach ($count_dl as $media_id => $dl) 
     78               { 
     79                    $cur = $core->con->openCursor($core->prefix.'media'); 
     80                    $cur->media_download = $dl; 
     81                    $cur->update('WHERE media_id = '.$media_id.';'); 
     82               } 
    7583          } 
    7684     } 
    7785      
    78      $core->blog->settings->drop('dlmanager_count_dl'); 
     86     # delete obsolete blog settings 
     87     $core->con->execute('DELETE FROM '.$core->prefix.'setting '. 
     88          'WHERE ((setting_ns = \'dlmanager\') '. 
     89          'AND (setting_id = \'dlmanager_count_dl\'));'); 
    7990} 
    8091 
  • plugins/dlManager/_public.php

    r873 r972  
    297297                    if ($core->blog->settings->dlmanager_counter) 
    298298                    { 
    299                          $count = unserialize($core->blog->settings->dlmanager_count_dl); 
    300                          if (!is_array($count)) {$count = array();} 
    301                          $count[$file->media_id] = array_key_exists($file->media_id,$count) 
    302                               ? $count[$file->media_id]+1 : 1; 
     299                         $media_download = $core->con->select( 
     300                              'SELECT media_download '. 
     301                              'FROM '.$core->prefix.'media '. 
     302                              'WHERE media_id = '.$file->media_id.';')->f(0; 
    303303                          
    304                          $settings =& $core->blog->settings; 
     304                         $cur = $core->con->openCursor($core->prefix.'media'); 
     305                         $cur->media_download = $media_download + 1; 
     306                         $cur->update('WHERE media_id = '.$media_id.';'); 
    305307                          
    306                          $settings->setNamespace('dlmanager'); 
    307                          $settings->put('dlmanager_count_dl',serialize($count),'string', 
    308                               'Download counter'); 
    309308                         //$core->callBehavior('publicDownloadedFile',(integer)$args); 
    310309                    } 
     
    752751     } 
    753752      
     753      
    754754     /** 
    755755     Item icon path 
  • plugins/dlManager/lib.dlManager.php

    r873 r972  
    164164     { 
    165165          global $core; 
    166            
    167           $count_dl = unserialize($core->blog->settings->dlmanager_count_dl); 
    168           if (!is_array($count_dl)) 
    169           { 
    170                $count_dl = array(); 
    171           } 
    172            
     166 
    173167          $items = array(); 
    174168                     
     
    178172               if ($core->blog->settings->dlmanager_counter) 
    179173               { 
    180                     if ((isset($v->media_id)) 
    181                          && (array_key_exists($v->media_id,$count_dl))) 
     174                    # no download counter for directories 
     175                    if (isset($v->media_id)) 
    182176                    { 
    183                               $dl = $count_dl[$v->media_id]; 
     177                              $dl = $v->media_download; 
    184178                    } 
    185179               } 
Note: See TracChangeset for help on using the changeset viewer.

Sites map