public function load() { //pull sites $site_model = new Site(); $sites = $site_model->get(); $this->view->sites = $sites; //pull site groups $rgroup_model = new ResourceGroup(); $rgroups = $rgroup_model->get(); $this->view->rgs = array(); $site_ids = $this->process_sitelist(); foreach ($site_ids as $site_id) { $rgs = array(); foreach ($rgroups as $rgroup) { //filter by gridtype if (isset($_REQUEST["gridtype"])) { $gridtype = $rgroup->osg_grid_type_id; if (!isset($_REQUEST["gridtype_" . $gridtype])) { continue; } } //only pass non-disable resource group if ($rgroup->disable == 1) { continue; } if ($rgroup->site_id == $site_id) { $rgs[] = $rgroup; } } $this->view->rgs[$site_id] = $rgs; } //pull sites (grouped by site group id) $rgrouped_model = new ResourceByGroupID(); $this->view->resources_bygid = $rgrouped_model->getindex(); //get resource status $model = new LatestResourceStatus(); $this->view->resource_status = $model->getgroupby("resource_id"); $downtime_model = new Downtime(); $this->view->downtime = $downtime_model->getindex(array("start_time" => time(), "end_time" => time())); //get campus grid icons if (isset($_REQUEST["map_attrs_showcampusgrid"])) { $model = new CampusGrid(); $this->view->campusgrids = $model->get(); } $this->setpagetitle(self::default_title()); }
private function process_rg_filter_gt() { $rg_to_keep = array(); $model = new GridTypes(); $list = $model->get(); foreach ($list as $item) { if ($this->ison("gridtype", $item->id)) { //if(isset($_REQUEST["gridtype_".$item->id])) { //pull resource groups $model = new ResourceGroup(); $rgs = $model->get(array("osg_grid_type_id" => $item->id)); foreach ($rgs as $rg) { if (!in_array($rg->id, $rg_to_keep)) { $rg_to_keep[] = $rg->id; } } } } return $rg_to_keep; }