Example #1
0
 function searchFieldListSelect($params)
 {
     $asset = $params['asset'] ? $params['asset'] : null;
     $searched_field = $params['searched_field'] ? $params['searched_field'] : null;
     if (isset($searched_field)) {
         $searched_field = str_replace(" ", "_", strtolower($searched_field));
     }
     $model = NModel::factory($asset);
     $fields = $model->fields();
     // Remove a bunch of fields if you're not an admin - makes it a little bit simpler.
     $auth = new NAuth();
     $current_user_level = $auth->getAuthData('user_level');
     unset($auth);
     // Preload for the search_field default.
     $acon = NController::factory('asset');
     $select = 'Search Field: <select name="search_field">';
     foreach ($fields as $field) {
         if ($current_user_level < N_USER_ADMIN) {
             if (in_array($field, $this->admin_only_fields)) {
                 continue;
             }
         }
         $select .= '<option value="' . $field . '"';
         if (isset($searched_field) && $searched_field == $field) {
             $select .= ' selected="selected"';
         } elseif (isset($model->search_field) && $field == $model->search_field && !$searched_field) {
             $select .= ' selected="selected"';
         } elseif (!isset($model->search_field) && $field == $acon->search_field && !$searched_field) {
             $select .= ' selected="selected"';
         }
         $select .= '>' . ucwords(str_replace('_', ' ', $field)) . '</option>';
     }
     $select .= '</select>';
     unset($model);
     unset($acon);
     print $select;
 }
 /**
  * checkRSSFeed - Checks the level of the user and exposes a link to an audit trail RSS feed
  * 		to that user if they're an admin level or higher.
  *
  * @return void
  **/
 function checkRSSFeed()
 {
     // Check the user level - this only shows up for admins or higher.
     $auth = new NAuth();
     $current_user_level = $auth->getAuthData('user_level');
     $user_id = $auth->currentUserID();
     if ($current_user_level >= N_USER_ADMIN) {
         // Get their feed token if they have it.
         $cms_user = NModel::factory('cms_auth');
         $feed_token = $cms_user->getFeedToken($user_id);
         unset($cms_user);
         // If they don't have one, we should help them to generate it.
         if (!isset($feed_token)) {
             $rss = '<p><a href="/nterchange/rss/generate_feed_token?redirect=' . urlencode('/nterchange/audit_trail/viewlist') . '">Click here to generate a private RSS feed</a></p>';
         } else {
             $rss = '<p><a href="/nterchange/rss/audit_trail?token=' . $feed_token . '">Private RSS Feed of Audit Trail Activity</a> - <a href="/nterchange/audit_trail/generate_feed_token">Regenerate Token</a></p>';
         }
         // Then show the link so that they can put it into their feed reader.
         $this->set('rss_feed', $rss);
     }
     unset($auth);
 }
 /**
  * dashboardVersionCheck - This runs for ADMIN users or higher and lets them know
  *		if there is an upgrade available for nterchange. Called from the dashboard
  *		helper and displays on the dashboard.
  *
  * @return void
  **/
 function dashboardVersionCheck()
 {
     // Check the user level - this only shows up for admins or higher.
     $auth = new NAuth();
     $current_user_level = $auth->getAuthData('user_level');
     unset($auth);
     if ($current_user_level >= N_USER_ADMIN) {
         $newest = $this->versionCheck();
         if (is_array($newest)) {
             $upgrade = $this->compareVersions(NTERCHANGE_VERSION, $newest['version']);
             if ($upgrade == true) {
                 $this->set('upgrade', $newest);
                 $this->set('nterchange_version', NTERCHANGE_VERSION);
             } else {
                 $this->set('uptodate', true);
             }
             $this->render(array('action' => 'dashboard_version_check', 'return' => false));
         } else {
             NDebug::debug('There was an error with the version check.', N_DEBUGTYPE_INFO);
         }
     }
 }