Dotclear

Changeset 2229:d5e819e27bea


Ignore:
Timestamp:
10/03/13 15:17:58 (12 years ago)
Author:
Dsls
Branch:
default
Message:

reworked favorites handling (wip)

Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • admin/index.php

    r2225 r2229  
    7474$__dashboard_icons = new ArrayObject(); 
    7575 
    76 # Dashboard favorites 
    77 $post_count = $core->blog->getPosts(array(),true)->f(0); 
    78 $str_entries = ($post_count > 1) ? __('%d entries') : __('%d entry'); 
    79  
    80 $comment_count = $core->blog->getComments(array(),true)->f(0); 
    81 $str_comments = ($comment_count > 1) ? __('%d comments') : __('%d comment'); 
    82  
    83 $ws = $core->auth->user_prefs->addWorkspace('favorites'); 
    84 $count = 0; 
    85 foreach ($ws->dumpPrefs() as $k => $v) { 
    86      // User favorites only 
    87      if (!$v['global']) { 
    88           $fav = unserialize($v['value']); 
    89           if (($fav['permissions'] == '*') || $core->auth->check($fav['permissions'],$core->blog->id)) { 
    90                if (dc_valid_fav($fav['url'])) { 
    91                     $count++; 
    92                     $title = ($fav['name'] == 'posts' ? sprintf($str_entries,$post_count) :  
    93                          ($fav['name'] == 'comments' ? sprintf($str_comments,$comment_count) : $fav['title'])); 
    94                     $__dashboard_icons[$fav['name']] = new ArrayObject(array(__($title),$fav['url'],$fav['large-icon'])); 
    95  
    96                     # Let plugins set their own title for favorite on dashboard 
    97                     $core->callBehavior('adminDashboardFavsIcon',$core,$fav['name'],$__dashboard_icons[$fav['name']]); 
    98                } 
    99           } 
    100      } 
    101 }     
    102 if (!$count) { 
    103      // Global favorites if any 
    104      foreach ($ws->dumpPrefs() as $k => $v) { 
    105           $fav = unserialize($v['value']); 
    106           if (($fav['permissions'] == '*') || $core->auth->check($fav['permissions'],$core->blog->id)) { 
    107                if (dc_valid_fav($fav['url'])) { 
    108                     $count++; 
    109                     $title = ($fav['name'] == 'posts' ? sprintf($str_entries,$post_count) :  
    110                          ($fav['name'] == 'comments' ? sprintf($str_comments,$comment_count) : $fav['title'])); 
    111                     $__dashboard_icons[$fav['name']] = new ArrayObject(array(__($title),$fav['url'],$fav['large-icon'])); 
    112  
    113                     # Let plugins set their own title for favorite on dashboard 
    114                     $core->callBehavior('adminDashboardFavsIcon',$core,$fav['name'],$__dashboard_icons[$fav['name']]); 
    115                } 
    116           } 
    117      } 
    118 } 
    119 if (!$count) { 
    120      // No user or global favorites, add "user pref" and "new entry" fav 
    121      if ($core->auth->check('usage,contentadmin',$core->blog->id)) { 
    122           $__dashboard_icons['new_post'] = new ArrayObject(array(__('New entry'),'post.php','images/menu/edit-b.png')); 
    123      } 
    124      $__dashboard_icons['prefs'] = new ArrayObject(array(__('My preferences'),'preferences.php','images/menu/user-pref-b.png')); 
    125 } 
     76$favs = $core->favs->getUserFavorites(); 
     77$core->favs->appendDashboardIcons($__dashboard_icons); 
    12678 
    12779# Latest news for dashboard 
    128 $__dashboard_items = new ArrayObject(array(new ArrayObject,new ArrayObject)); 
     80$__dashboard_items = new ArrayObject(array(new ArrayObject(),new ArrayObject())); 
    12981 
    13082$dashboardItem = 0; 
  • admin/preferences.php

    r2206 r2229  
    215215               throw new Exception(__('No favorite selected')); 
    216216          } 
    217  
    218           $ws = $core->auth->user_prefs->addWorkspace('favorites'); 
    219           $user_favs = $ws->DumpLocalPrefs(); 
    220           $count = count($user_favs); 
     217          $user_favs = $core->favs->getFavoriteIDs(false); 
    221218          foreach ($_POST['append'] as $k => $v) 
    222219          { 
    223                try { 
    224                     $found = false; 
    225                     foreach ($user_favs as $f) { 
    226                          $f = unserialize($f['value']); 
    227                          if ($f['name'] == $v) { 
    228                               $found = true; 
    229                               break; 
    230                          } 
    231                     } 
    232                     if (!$found) { 
    233                          $uid = sprintf("u%03s",$count); 
    234                          $fav = array('name' => $_fav[$v][0],'title' => $_fav[$v][1],'url' => $_fav[$v][2],'small-icon' => $_fav[$v][3], 
    235                               'large-icon' => $_fav[$v][4],'permissions' => $_fav[$v][5],'id' => $_fav[$v][6],'class' => $_fav[$v][7]); 
    236                          $core->auth->user_prefs->favorites->put($uid,serialize($fav),'string'); 
    237                          $count++; 
    238                     } 
    239                } catch (Exception $e) { 
    240                     $core->error->add($e->getMessage()); 
    241                     break; 
     220               if ($core->favs->exists($v)) { 
     221                    $user_favs[] = $v; 
    242222               } 
    243223          } 
    244       
     224          $core->favs->setFavoriteIDs($user_favs,false); 
     225 
    245226          if (!$core->error->flag()) { 
    246227               http::redirect('preferences.php?append=1'); 
     
    258239               throw new Exception(__('No favorite selected')); 
    259240          } 
    260            
    261           $ws = $core->auth->user_prefs->addWorkspace('favorites'); 
    262           foreach ($_POST['remove'] as $k => $v) 
     241          $user_fav_ids = array(); 
     242          foreach ($core->favs->getFavoriteIDs(false) as $v) { 
     243               $user_fav_ids[$v]=true; 
     244          } 
     245          foreach ($_POST['remove'] as $v) 
    263246          { 
    264                try { 
    265                     $core->auth->user_prefs->favorites->drop($v); 
    266                } catch (Exception $e) { 
    267                     $core->error->add($e->getMessage()); 
    268                     break; 
     247               if (isset($user_fav_ids[$v])) { 
     248                    unset($user_fav_ids[$v]); 
    269249               } 
    270250          } 
    271           // Update pref_id values 
    272           try { 
    273                $user_favs = $ws->DumpLocalPrefs(); 
    274                $core->auth->user_prefs->favorites->dropAll(); 
    275                $count = 0; 
    276                foreach ($user_favs as $k => $v) 
    277                { 
    278                     $uid = sprintf("u%03s",$count); 
    279                     $f = unserialize($v['value']); 
    280                     $fav = array('name' => $f['name'],'title' => $f['title'],'url' => $f['url'],'small-icon' => $f['small-icon'], 
    281                          'large-icon' => $f['large-icon'],'permissions' => $f['permissions'],'id' => $f['id'],'class' => $f['class']); 
    282                     $core->auth->user_prefs->favorites->put($uid,serialize($fav),'string'); 
    283                     $count++; 
    284                } 
    285           } catch (Exception $e) { 
    286                $core->error->add($e->getMessage()); 
    287           } 
    288       
     251          $core->favs->setFavoriteIDs(array_keys($user_fav_ids),false); 
    289252          if (!$core->error->flag()) { 
    290253               http::redirect('preferences.php?removed=1'); 
     
    307270if (!empty($_POST['saveorder']) && !empty($order)) 
    308271{ 
    309      try { 
    310           $ws = $core->auth->user_prefs->addWorkspace('favorites'); 
    311           $user_favs = $ws->DumpLocalPrefs(); 
    312           $core->auth->user_prefs->favorites->dropAll(); 
    313           $count = 0; 
    314           foreach ($order as $i => $k) { 
    315                $uid = sprintf("u%03s",$count); 
    316                $f = unserialize($user_favs[$k]['value']); 
    317                $fav = array('name' => $f['name'],'title' => $f['title'],'url' => $f['url'],'small-icon' => $f['small-icon'], 
    318                     'large-icon' => $f['large-icon'],'permissions' => $f['permissions'],'id' => $f['id'],'class' => $f['class']); 
    319                $core->auth->user_prefs->favorites->put($uid,serialize($fav),'string'); 
    320                $count++; 
    321           } 
    322      } catch (Exception $e) { 
    323           $core->error->add($e->getMessage()); 
    324      } 
    325  
     272     foreach ($order as $k => $v) { 
     273          if (!$core->favs->exists($v)) { 
     274               unset($order[$k]); 
     275          } 
     276     }     
     277     $core->favs->setFavoriteIDs($order,false); 
    326278     if (!$core->error->flag()) { 
    327279          http::redirect('preferences.php?&neworder=1'); 
     
    331283# Replace default favorites by current set (super admin only) 
    332284if (!empty($_POST['replace']) && $core->auth->isSuperAdmin()) { 
    333      try { 
    334           $ws = $core->auth->user_prefs->addWorkspace('favorites'); 
    335           $user_favs = $ws->DumpLocalPrefs(); 
    336           $core->auth->user_prefs->favorites->dropAll(true); 
    337           $count = 0; 
    338           foreach ($user_favs as $k => $v) 
    339           { 
    340                $uid = sprintf("g%03s",$count); 
    341                $f = unserialize($v['value']); 
    342                $fav = array('name' => $f['name'],'title' => $f['title'],'url' => $f['url'],'small-icon' => $f['small-icon'], 
    343                     'large-icon' => $f['large-icon'],'permissions' => $f['permissions'],'id' => $f['id'],'class' => $f['class']); 
    344                $core->auth->user_prefs->favorites->put($uid,serialize($fav),'string',null,null,true); 
    345                $count++; 
    346           } 
    347      } catch (Exception $e) { 
    348           $core->error->add($e->getMessage()); 
    349      } 
     285     $user_favs = $core->favs->getFavoriteIDs(false); 
     286     $core->favs->setFavoriteIDs($user_favs,true); 
    350287 
    351288     if (!$core->error->flag()) { 
     
    548485 
    549486$count = 0; 
    550 $user_fav = array(); 
    551 foreach ($ws->dumpPrefs() as $k => $v) { 
    552      // User favorites only 
    553      if (!$v['global']) { 
    554           $fav = unserialize($v['value']); 
    555           if (($fav['permissions'] == '*') || $core->auth->check($fav['permissions'],$core->blog->id)) { 
    556                if ($count == 0) echo '<ul class="fav-list">'; 
    557                $count++; 
    558                echo '<li id="fu-'.$k.'">'.'<label for="fuk-'.$k.'">'. 
    559                     '<img src="'.dc_admin_icon_url($fav['small-icon']).'" alt="" /> '.'<span class="zoom"><img src="'.dc_admin_icon_url($fav['large-icon']).'" alt="" /></span>'. 
    560                     form::field(array('order['.$k.']'),2,3,$count,'position','',false,'title="'.sprintf(__('position of %s'),$fav['title']).'"'). 
    561                     form::hidden(array('dynorder[]','dynorder-'.$k.''),$k). 
    562                     form::checkbox(array('remove[]','fuk-'.$k),$k).__($fav['title']).'</label>'. 
    563                     '</li>'; 
    564                $user_fav[] = $fav['name']; 
    565           } 
     487$user_fav = $core->favs->getFavoriteIDs(false); 
     488foreach ($user_fav as $id) { 
     489     $fav = $core->favs->getFavorite($id); 
     490     if ($fav != false) { 
     491          // User favorites only 
     492          if ($count == 0) echo '<ul class="fav-list">'; 
     493          $count++; 
     494          echo '<li id="fu-'.$id.'">'.'<label for="fuk-'.$id.'">'. 
     495               '<img src="'.dc_admin_icon_url($fav['small-icon']).'" alt="" /> '.'<span class="zoom"><img src="'.dc_admin_icon_url($fav['large-icon']).'" alt="" /></span>'. 
     496               form::field(array('order['.$id.']'),2,3,$count,'position','',false,'title="'.sprintf(__('position of %s'),$fav['title']).'"'). 
     497               form::hidden(array('dynorder[]','dynorder-'.$id.''),$id). 
     498               form::checkbox(array('remove[]','fuk-'.$id),$id).__($fav['title']).'</label>'. 
     499               '</li>'; 
    566500     } 
    567501} 
     
    593527} 
    594528 
    595 $default_fav = array(); 
    596 foreach ($ws->dumpPrefs() as $k => $v) { 
    597      // Global favorites only 
    598      if ($v['global']) { 
    599           $fav = unserialize($v['value']); 
    600           if (($fav['permissions'] == '*') || $core->auth->check($fav['permissions'],$core->blog->id)) { 
    601                $default_fav[] = $fav['name']; 
    602           } 
    603      } 
    604 } 
    605  
     529$avail_fav = $core->favs->getFavorites($core->favs->getAvailableFavoritesIDs()); 
     530$default_fav_ids = array(); 
     531foreach($core->favs->getFavoriteIDs(true) as $v) { 
     532     $default_fav_ids[$v]=true; 
     533} 
    606534echo '</div>'; # /box my-fav 
    607535 
     
    610538echo '<h5 class="pretty-title">'.__('Other available favorites').'</h5>'; 
    611539$count = 0; 
    612 $array = $_fav; 
    613540function cmp($a,$b) { 
    614     if (__($a[1]) == __($b[1])) { 
     541    if ($a['title'] == $b['title']) { 
    615542        return 0; 
    616543    } 
    617     return (__($a[1]) < __($b[1])) ? -1 : 1; 
    618 } 
    619 $array=$array->getArrayCopy(); 
    620 uasort($array,'cmp'); 
    621 foreach ($array as $k => $fav) { 
    622      if (($fav[5] == '*') || $core->auth->check($fav[5],$core->blog->id)) { 
    623           if (!in_array($fav[0], $user_fav)) { 
    624                if ($count == 0) echo '<ul class="fav-list">'; 
    625                $count++; 
    626                echo '<li id="fa-'.$fav[0].'">'.'<label for="fak-'.$fav[0].'">'. 
    627                     '<img src="'.dc_admin_icon_url($fav[3]).'" alt="" /> '. 
    628                     '<span class="zoom"><img src="'.dc_admin_icon_url($fav[4]).'" alt="" /></span>'. 
    629                     form::checkbox(array('append[]','fak-'.$fav[0]),$k). 
    630                     __($fav[1]).'</label>'. 
    631                     (in_array($fav[0], $default_fav) ? ' <span class="default-fav"><img src="images/selected.png" alt="'.__('(default favorite)').'" /></span>' : ''). 
    632                     '</li>'; 
    633           } 
    634      } 
     544    return ($a['title'] < $b['title']) ? -1 : 1; 
     545} 
     546uasort($avail_fav,'cmp'); 
     547 
     548foreach ($avail_fav as $k => $v) { 
     549     if (in_array($k,$user_fav)) { 
     550          unset($avail_fav[$k]); 
     551     } 
     552} 
     553foreach ($avail_fav as $k=>$fav) { 
     554     if ($count == 0) echo '<ul class="fav-list">'; 
     555     $count++; 
     556     echo '<li id="fa-'.$k.'">'.'<label for="fak-'.$k.'">'. 
     557          '<img src="'.dc_admin_icon_url($fav['small-icon']).'" alt="" /> '. 
     558          '<span class="zoom"><img src="'.dc_admin_icon_url($fav['large-icon']).'" alt="" /></span>'. 
     559          form::checkbox(array('append[]','fak-'.$k),$k). 
     560          $fav['title'].'</label>'. 
     561          (isset($default_fav_ids[$k]) ? ' <span class="default-fav"><img src="images/selected.png" alt="'.__('(default favorite)').'" /></span>' : ''). 
     562          '</li>'; 
    635563} 
    636564if ($count > 0) echo '</ul>'; 
  • inc/admin/prepend.php

    r2159 r2229  
    2121// HTTP/1.0 
    2222header("Pragma: no-cache"); 
    23  
    24 function dc_valid_fav($url) { 
    25      global $core; 
    26  
    27      if (preg_match('#plugin\.php\?p=([^&]+)#',$url,$matches)) { 
    28           if (isset($matches[1])) { 
    29                if (!$core->plugins->moduleExists($matches[1])) { 
    30                     return false; 
    31                } 
    32           } 
    33      } 
    34      return true; 
    35 } 
    36  
    37 function dc_check_active($url) { 
    38      $u = explode('?',$url,2); 
    39      if (!preg_match('/'.preg_quote($u[0],"/").'/',$_SERVER['REQUEST_URI'])) { 
    40           return false; 
    41      } 
    42      if (count($u) == 2) { 
    43           parse_str($u[1],$p); 
    44           foreach ($p as $k => $v) { 
    45                if (!isset($_REQUEST[$k]) || $_REQUEST[$k] !== $v) { 
    46                     return false; 
    47                } 
    48           } 
    49      } 
    50      return true; 
    51 } 
    52  
    5323 
    5424function dc_load_locales() { 
     
    230200     $user_ui_nofavmenu = $core->auth->user_prefs->interface->nofavmenu; 
    231201 
    232      # Standard favorites 
    233      $_fav = new ArrayObject(); 
     202     $core->favs = new dcFavorites($core); 
     203 
    234204 
    235205     # [] : Title, URL, small icon, large icon, permissions, id, class 
    236206     # NB : '*' in permissions means any, null means super admin only 
    237207      
    238      $_fav['prefs'] = new ArrayObject(array('prefs','My preferences','preferences.php', 
    239           'images/menu/user-pref.png','images/menu/user-pref-b.png', 
    240           '*',null,null)); 
    241  
    242      $_fav['new_post'] = new ArrayObject(array('new_post','New entry','post.php', 
    243           'images/menu/edit.png','images/menu/edit-b.png', 
    244           'usage,contentadmin',null,'menu-new-post')); 
    245      $_fav['posts'] = new ArrayObject(array('posts','Entries','posts.php', 
    246           'images/menu/entries.png','images/menu/entries-b.png', 
    247           'usage,contentadmin',null,null)); 
    248      $_fav['comments'] = new ArrayObject(array('comments','Comments','comments.php', 
    249           'images/menu/comments.png','images/menu/comments-b.png', 
    250           'usage,contentadmin',null,null)); 
    251      $_fav['search'] = new ArrayObject(array('search','Search','search.php', 
    252           'images/menu/search.png','images/menu/search-b.png', 
    253           'usage,contentadmin',null,null)); 
    254      $_fav['categories'] = new ArrayObject(array('categories','Categories','categories.php', 
    255           'images/menu/categories.png','images/menu/categories-b.png', 
    256           'categories',null,null)); 
    257      $_fav['media'] = new ArrayObject(array('media','Media manager','media.php', 
    258           'images/menu/media.png','images/menu/media-b.png', 
    259           'media,media_admin',null,null)); 
    260      $_fav['blog_pref'] = new ArrayObject(array('blog_pref','Blog settings','blog_pref.php', 
    261           'images/menu/blog-pref.png','images/menu/blog-pref-b.png', 
    262           'admin',null,null)); 
    263      $_fav['blog_theme'] = new ArrayObject(array('blog_theme','Blog appearance','blog_theme.php', 
    264           'images/menu/themes.png','images/menu/blog-theme-b.png', 
    265           'admin',null,null)); 
    266  
    267      $_fav['blogs'] = new ArrayObject(array('blogs','Blogs','blogs.php', 
    268           'images/menu/blogs.png','images/menu/blogs-b.png', 
    269           'usage,contentadmin',null,null)); 
    270      $_fav['users'] = new ArrayObject(array('users','Users','users.php', 
    271           'images/menu/users.png','images/menu/users-b.png', 
    272           null,null,null)); 
    273      $_fav['plugins'] = new ArrayObject(array('plugins','Plugins management','plugins.php', 
    274           'images/menu/plugins.png','images/menu/plugins-b.png', 
    275           null,null,null)); 
    276      $_fav['langs'] = new ArrayObject(array('langs','Languages','langs.php', 
    277           'images/menu/langs.png','images/menu/langs-b.png', 
    278           null,null,null)); 
    279  
    280      $_fav['help'] = new ArrayObject(array('help','Global help','help.php', 
    281           'images/menu/help.png','images/menu/help-b.png', 
    282           '*',null,null)); 
    283208      
    284209     # Menus creation 
     210     $_menu = new ArrayObject(); 
    285211     $_menu['Dashboard'] = new dcMenu('dashboard-menu',null); 
    286      if (!$user_ui_nofavmenu) 
    287           $_menu['Favorites'] = new dcMenu('favorites-menu','My favorites'); 
     212     if (!$user_ui_nofavmenu) { 
     213          $core->favs->appendMenuTitle($_menu); 
     214     } 
    288215     $_menu['Blog'] = new dcMenu('blog-menu','Blog'); 
    289216     $_menu['System'] = new dcMenu('system-menu','System'); 
    290217     $_menu['Plugins'] = new dcMenu('plugins-menu','Plugins'); 
    291       
    292218     # Loading plugins 
    293219     $core->plugins->loadModules(DC_PLUGINS_ROOT,'admin',$_lang); 
    294  
    295      # Loading favorites info from plugins 
    296      $core->callBehavior('adminDashboardFavs', $core, $_fav); 
     220     $core->favs->setup(); 
     221      
     222     if (!$user_ui_nofavmenu) { 
     223          $core->favs->appendMenu($_menu); 
     224     } 
     225 
    297226      
    298227     # Set menu titles 
     
    301230     $_menu['Blog']->title = __('Blog'); 
    302231     $_menu['Plugins']->title = __('Plugins'); 
    303      if (!$user_ui_nofavmenu) 
    304           $_menu['Favorites']->title = __('My favorites'); 
     232 
    305233 
    306234/*    
     
    352280          $core->auth->isSuperAdmin() || 
    353281          $core->auth->check('usage,contentadmin',$core->blog->id) && $core->auth->getBlogCount() > 1); 
    354  
    355      if (!$user_ui_nofavmenu) { 
    356           // Set favorites menu 
    357           $ws = $core->auth->user_prefs->addWorkspace('favorites'); 
    358           $count = 0; 
    359           foreach ($ws->dumpPrefs() as $k => $v) { 
    360                // User favorites only 
    361                if (!$v['global']) { 
    362                     $fav = unserialize($v['value']); 
    363                     if (dc_valid_fav($fav['url'])) { 
    364                          $count++; 
    365                          $_menu['Favorites']->addItem(__($fav['title']),$fav['url'],$fav['small-icon'], 
    366                               dc_check_active($fav['url']), 
    367                               (($fav['permissions'] == '*') || $core->auth->check($fav['permissions'],$core->blog->id)),$fav['id'],$fav['class']); 
    368                     } 
    369                } 
    370           }     
    371           if (!$count) { 
    372                // Global favorites if any 
    373                foreach ($ws->dumpPrefs() as $k => $v) { 
    374                     $fav = unserialize($v['value']); 
    375                     if (dc_valid_fav($fav['url'])) { 
    376                          $count++; 
    377                          $_menu['Favorites']->addItem(__($fav['title']),$fav['url'],$fav['small-icon'], 
    378                               dc_check_active($fav['url']), 
    379                               (($fav['permissions'] == '*') || $core->auth->check($fav['permissions'],$core->blog->id)),$fav['id'],$fav['class']); 
    380                     } 
    381                } 
    382           } 
    383           if (!$count) { 
    384                // No user or global favorites, add "new entry" fav 
    385                $_menu['Favorites']->addItem(__('New entry'),'post.php','images/menu/edit.png', 
    386                     preg_match('/post.php$/',$_SERVER['REQUEST_URI']), 
    387                     $core->auth->check('usage,contentadmin',$core->blog->id),'menu-new-post',null); 
    388           } 
    389      } 
    390282      
    391283     if (empty($core->blog->settings->system->jquery_migrate_mute)) { 
  • inc/core/class.dc.workspace.php

    r1179 r2229  
    127127          return null; 
    128128     } 
    129       
     129 
     130     /** 
     131     Returns global pref value if exists. 
     132      
     133     @param    n         <b>string</b>       Pref name 
     134     @return   <b>mixed</b> 
     135     */ 
     136     public function getGlobal($n) 
     137     { 
     138          if (isset($this->global_prefs[$n]['value'])) { 
     139               return $this->global_prefs[$n]['value']; 
     140          } 
     141           
     142          return null; 
     143     } 
     144      
     145     /** 
     146     Returns local pref value if exists. 
     147      
     148     @param    n         <b>string</b>       Pref name 
     149     @return   <b>mixed</b> 
     150     */ 
     151     public function getLocal($n) 
     152     { 
     153          if (isset($this->local_prefs[$n]['value'])) { 
     154               return $this->local_prefs[$n]['value']; 
     155          } 
     156           
     157          return null; 
     158     }     
    130159     /** 
    131160     Magic __get method. 
  • inc/prepend.php

    r1999 r2229  
    4646$__autoload['dcWorkspace']              = dirname(__FILE__).'/core/class.dc.workspace.php'; 
    4747$__autoload['dcPrefs']                  = dirname(__FILE__).'/core/class.dc.prefs.php'; 
     48$__autoload['dcFavorites']              = dirname(__FILE__).'/admin/class.dC.favorites.php'; 
    4849 
    4950$__autoload['rsExtPost']                = dirname(__FILE__).'/core/class.dc.rs.extensions.php'; 
Note: See TracChangeset for help on using the changeset viewer.

Sites map