Ejemplo n.º 1
0
 public function listing()
 {
     $role = $this->fetchParam('role', false);
     $limit = $this->fetchParam('limit', null, 'is_numeric');
     // defaults to none
     $offset = $this->fetchParam('offset', 0, 'is_numeric');
     // defaults to zero
     $sort_by = $this->fetchParam('sort_by', 'title');
     // defaults to date
     $sort_dir = $this->fetchParam('sort_dir', 'desc');
     // defaults to desc
     $members = Statamic_Auth::get_user_list(false);
     if (is_array($members) && count($members) > 0) {
         $members = array_slice($members, $offset, $limit, true);
         if ($sort_by == 'random') {
             shuffle($list);
         } elseif ($sort_by != 'title' || $sort_by != 'username') {
             # sort by any other field
             usort($members, function ($a, $b) use($sort_by) {
                 if (isset($a[$sort_by]) && isset($b[$sort_by])) {
                     return strcmp($b[$sort_by], $a[$sort_by]);
                 }
             });
         }
         // default sort is asc
         if ($sort_dir == 'desc') {
             $members = array_reverse($members);
         }
         return Parse::tagLoop($this->content, $members);
     } else {
         return array('no_results' => true);
     }
 }
Ejemplo n.º 2
0
Archivo: ft.users.php Proyecto: nob/joi
 public function render()
 {
     $html = "<div class='input-select-wrap'><select name='{$this->fieldname}' tabindex='{$this->tabindex}'>";
     $html .= "<option value=''>- None Selected-</option>";
     $current_user = Statamic_Auth::get_current_user();
     $current_username = $current_user->get_name();
     if ($this->field_data == '') {
         $this->field_data = $current_username;
     }
     foreach (Statamic_Auth::get_user_list() as $key => $data) {
         $selected = $this->field_data == $key ? " selected='selected'" : '';
         $html .= "<option {$selected} value='{$key}'>{$data->get_first_name()} {$data->get_last_name()}</option>";
     }
     $html .= "</select></div>";
     return $html;
 }
Ejemplo n.º 3
0
Archivo: routes.php Proyecto: nob/joi
        $tests = array('_app' => Localization::fetch('security_app_folder'), '_config' => Localization::fetch('security_config_folder'), '_config/settings.yaml' => Localization::fetch('security_settings_files'), '_config/users/' . $username . '.yaml' => Localization::fetch('security_user_files'), Config::getContentRoot() => Localization::fetch('security_content_folder'), Config::getTemplatesPath() . 'layouts/default.html' => Localization::fetch('security_template_files'), '_logs' => Localization::fetch('security_logs_folder'));
        $site_url = 'http://' . $_SERVER['HTTP_HOST'] . '/';
        foreach ($tests as $url => $message) {
            $test_url = $site_url . $url;
            $http = curl_init($test_url);
            curl_setopt($http, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($http, CURLOPT_TIMEOUT, 3);
            $result = curl_exec($http);
            $http_status = curl_getinfo($http, CURLINFO_HTTP_CODE);
            curl_close($http);
            $data['system_checks'][$url]['status_code'] = $http_status;
            $data['system_checks'][$url]['status'] = $http_status !== 200 ? 'good' : 'warning';
            $data['system_checks'][$url]['message'] = $message;
        }
    }
    $data['users'] = Statamic_Auth::get_user_list();
    $admin_app->render(null, array('route' => 'security', 'app' => $admin_app) + $data);
})->name('security');
// Logs
// --------------------------------------------------------
$admin_app->get('/system/logs', function () use($admin_app) {
    authenticateForRole('admin');
    doStatamicVersionCheck($admin_app);
    $template_list = array("logs");
    Statamic_View::set_templates(array_reverse($template_list));
    $data = array();
    $data['enabled'] = Config::get("_log_enabled", false);
    $data['raw_path'] = Config::get("_log_file_path");
    $data['prefix'] = Config::get("_log_file_prefix");
    $data['log_level'] = Config::get("_log_level");
    $data['time_format'] = Config::get("_time_format");