Dotclear

Changeset 1036


Ignore:
Timestamp:
04/18/09 09:51:05 (14 years ago)
Author:
Tomtom33
Message:

notifications 0.3.2 :

  • Fixed notifications log and display
Location:
plugins/notifications
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • plugins/notifications/_define.php

    r1024 r1036  
    1818          /* Author */             'Tomtom (http://blog.zenstyle.fr/)', 
    1919          /* Version */            '0.3.2', 
    20           /* Permissions */        'admin', 
     20          /* Permissions */        'usage', 
    2121                                   null, 
    2222          /* Priority */           10000 
  • plugins/notifications/_prepend.php

    r1011 r1036  
    3030 
    3131$core->addBehavior('adminDashboardHeaders',array('notificationsBehaviors','headers')); 
    32 $core->addBehavior('adminDashboardItems',array('notificationsBehaviors','update')); 
     32//$core->addBehavior('adminDashboardItems',array('notificationsBehaviors','update')); 
    3333 
    3434$core->rest->addFunction('getNotifications',array('notificationsRestMethods','getNotifications')); 
  • plugins/notifications/_services.php

    r1024 r1036  
    4747          } 
    4848 
    49           notificationsBehaviors::update($core); 
     49          notificationsBehaviors::update($core,(!$rs->isEmpty() ? strtotime($rs->notification_dt) : '')); 
    5050 
    5151          return $rsp; 
  • plugins/notifications/inc/class.notifications.behaviors.php

    r1024 r1036  
    135135     } 
    136136 
    137      public static function update(&$core) 
     137     public static function update(&$core,$ref = '') 
    138138     { 
    139           $strReq = 'SELECT MAX(log_id) FROM '.$core->prefix.'log'; 
     139          $strReq = 'SELECT MAX(log_id) as max FROM '.$core->prefix.'log'; 
    140140 
    141141          $id = $core->con->select($strReq)->f(0) + 1; 
    142142 
    143           $cur = $core->con->openCursor($core->prefix.'log'); 
    144           $cur->log_id = $id; 
    145           $cur->user_id = $core->auth->userID(); 
    146           $cur->log_table = $core->prefix.'notifications'; 
    147           $cur->log_dt = date('Y-m-d H:i:s',time() + dt::getTimeOffset($core->blog->settings->blog_timezone)); 
    148           $cur->log_ip = http::realIP(); 
    149           $cur->log_msg = __('Last visit on administration interface'); 
    150           $cur->insert(); 
     143          $strReq = 
     144          'SELECT log_id, log_dt FROM '.$core->prefix."log WHERE user_id = '". 
     145          $core->auth->userID()."' GROUP BY log_id"; 
     146 
     147          $rs = $core->con->select($strReq); 
     148 
     149          if (empty($ref)) { 
     150               $ref = $rs->isEmpty() ? time() + dt::getTimeOffset($core->blog->settings->blog_timezone) : strtotime($rs->log_dt); 
     151          } 
     152 
     153          $cur                = $core->con->openCursor($core->prefix.'log'); 
     154          $cur->log_id        = $rs->isEmpty() ? $id : $rs->log_id; 
     155          $cur->user_id       = $core->auth->userID(); 
     156          $cur->log_table     = $core->prefix.'notifications'; 
     157          $cur->log_dt        = date('Y-m-d H:i:s',$ref); 
     158          $cur->log_ip        = http::realIP(); 
     159          $cur->log_msg       = __('Last visit on administration interface'); 
     160 
     161          if ($rs->isEmpty()) { 
     162               $cur->insert(); 
     163          } 
     164          elseif ($rs->log_dt != $ref) { 
     165               $cur->update("WHERE user_id = '".$core->auth->userID()."'"); 
     166          } 
    151167     } 
    152168} 
Note: See TracChangeset for help on using the changeset viewer.

Sites map