Пример #1
0
 public function view()
 {
     if (isset($this->_data['username'])) {
         $username = $this->_data['username'];
         $res = $this->_uses[$this->modeltype]->load($username);
         if ($res === FALSE) {
             sendBack();
         }
     } else {
         $this->dataError();
         sendBack();
     }
     $this->view->set('companies', $res->getCompanies());
     $this->view->set('roles', $res->getCompanyRoles());
     // Get preferences based on username
     $prefs = UserPreferences::getPreferencesClass($username);
     $uzlets = $prefs->getDashboardContents($username);
     // Manipulate and combine the available and selected uzlets
     // for display
     foreach ($uzlets['available'] as $modules => $module) {
         foreach ($module as $detail) {
             if (isset($dashboard['available'][$modules])) {
                 $dashboard['available'][$modules] += $detail;
             } else {
                 $dashboard['available'][$modules] = $detail;
             }
         }
     }
     foreach ($uzlets['selected'] as $module => $details) {
         foreach ($details as $selected) {
             $dashboard['available'][$module][$selected['name']] = $dashboard['current'][$module][$selected['name']] = $selected['title'];
         }
         asort($dashboard['available'][$module]);
     }
     ksort($dashboard['available']);
     $this->view->set('dashboard', $dashboard);
     $shared_prefs['shared']['items_per_page'] = $prefs->getPreferenceValue('items-per-page', 'shared');
     $shared_prefs['shared']['pdf_preview'] = $prefs->getPreferenceValue('pdf-preview', 'shared');
     $shared_prefs['shared']['pdf_browser-printing'] = $prefs->getPreferenceValue('pdf-browser-printing', 'shared');
     $shared_prefs['shared']['default_page'] = $prefs->getPreferenceValue('default_page', 'shared');
     $default_printer = $prefs->getPreferenceValue('default_printer', 'shared');
     $printers = $this->selectPrinters();
     if (isset($printers[$default_printer])) {
         $shared_prefs['shared']['default_printer'] = $printers[$default_printer];
     } else {
         $shared_prefs['shared']['default_printer'] = '';
     }
     $this->view->set('preferences', $shared_prefs);
     $this->addSidebar($username);
 }
Пример #2
0
 function save()
 {
     if (isset($this->_data['eglets']) && count($this->_data['eglets']) > 0) {
         $prefs = UserPreferences::getPreferencesClass($this->getUser());
         $prefs->setPreferenceValue('dashboard_contents', $this->dashboard_module, $this->_data['eglets']);
         $flash = Flash::Instance();
         $flash->addMessage('Dashboard preferences set');
         // ATTN: see above for the reason for this commenting
         #			$cache = Cache::Instance();
         #			$cache->delete(array('eglet_store', $this->module));
     }
     sendTo($_SESSION['refererPage']['controller'], $_SESSION['refererPage']['action'], $_SESSION['refererPage']['modules'], isset($_SESSION['refererPage']['other']) ? $_SESSION['refererPage']['other'] : null);
 }