public function beforeRender() { if ($this->Auth->loggedIn()) { $this->settings['menu'] = array(array('id' => '', 'label' => 'Profil', 'href' => 'paszport')); } parent::beforeRender(); }
public function beforeRender() { parent::beforeRender(); if ($this->request->params['action'] == 'grid') { $data = $this->viewVars['dataBrowser']['aggs']['map']; foreach ($data['grid']['buckets'] as &$b) { if ($b['doc_count'] === 1) { $b['data'] = $b['top']['hits']['hits'][0]['fields']['source'][0]['data']; $b['location'] = array('lat' => $b['top']['hits']['hits'][0]['fields']['position.lat'][0], 'lon' => $b['top']['hits']['hits'][0]['fields']['position.lon'][0]); unset($b['top']); } else { unset($b['top']); } $b['inner_key'] = $b['inner_grid']['buckets'][0]['key']; unset($b['inner_grid']); } $this->viewVars['dataBrowser'] = $data; } else { if (@$this->viewVars['dataBrowser']['mode'] == 'cover' && ($hits = @$this->viewVars['dataBrowser']['aggs']['miejsca']['top']['hits']['hits'])) { $wojewodztwa = array(); foreach ($hits as $h) { $wojewodztwa[] = array_merge($h['fields']['source'][0]['data'], $h['fields']['source'][0]['static']); } $this->set('mapParams', array('mode' => 'start', 'title' => 'Mapa', 'children' => array('wojewodztwa' => $wojewodztwa))); } } }
public function beforeRender() { parent::beforeRender(); $this->set('_edit', $this->hasUserRole('3')); if ($hits = @$this->viewVars['dataBrowser']['aggs']['wskazniki']['top']['hits']['hits']) { // debug($hits); die(); $tree = array(); foreach ($hits as $h) { $h = $h['fields']['source'][0]['data']; $tree[$h['bdl_wskazniki.kategoria_id']]['kategoria'] = array('id' => $h['bdl_wskazniki.kategoria_id'], 'nazwa' => $h['bdl_wskazniki.kategoria_tytul'], 'slug' => @$h['bdl_wskazniki.kategoria_slug']); $tree[$h['bdl_wskazniki.kategoria_id']]['grupy'][$h['bdl_wskazniki.grupa_id']]['grupa'] = array('id' => $h['bdl_wskazniki.grupa_id'], 'nazwa' => $h['bdl_wskazniki.grupa_tytul'], 'slug' => @$h['bdl_wskazniki.grupa_slug']); $tree[$h['bdl_wskazniki.kategoria_id']]['grupy'][$h['bdl_wskazniki.grupa_id']]['wskazniki'][] = $h; } unset($this->viewVars['dataBrowser']['aggs']['wskazniki']); $tree = array_values($tree); $this->set('tree', $tree); } }
public function beforeRender() { parent::beforeRender(); // debug( $this->viewVars['dataBrowser']['aggs'] ); die(); if ($this->request->params['action'] == 'map') { $data = $this->viewVars['dataBrowser']['aggs']['map']; foreach ($data['grid']['buckets'] as &$b) { if ($b['doc_count'] === 1) { $b['data'] = $b['top']['hits']['hits'][0]['fields']['source'][0]['data']; $b['location'] = array('lat' => $b['top']['hits']['hits'][0]['fields']['position.lat'][0], 'lon' => $b['top']['hits']['hits'][0]['fields']['position.lon'][0]); unset($b['top']); } else { unset($b['top']); } $b['inner_key'] = $b['inner_grid']['buckets'][0]['key']; unset($b['inner_grid']); } $this->viewVars['dataBrowser'] = $data; } }
public function beforeRender() { parent::beforeRender(); if ($this->request->params['action'] == 'gminy') { $aggs = $this->viewVars['dataBrowser']['aggs']; $this->viewVars['dataBrowser']['aggs']['gminy'] = null; $this->viewVars['dataBrowser']['aggs']['gmina'] = null; $global = array('min' => array('value' => $aggs['gminy']['sumy']['timerange']['min']['buckets'][0]['key'], 'label' => $aggs['gminy']['sumy']['timerange']['min']['buckets'][0]['reverse']['top']['hits']['hits'][0]['fields']['source'][0]['data']['gminy.nazwa'], 'id' => $aggs['gminy']['sumy']['timerange']['min']['buckets'][0]['reverse']['top']['hits']['hits'][0]['fields']['source'][0]['data']['gminy.id']), 'max' => array('value' => $aggs['gminy']['sumy']['timerange']['max']['buckets'][0]['key'], 'label' => $aggs['gminy']['sumy']['timerange']['max']['buckets'][0]['reverse']['top']['hits']['hits'][0]['fields']['source'][0]['data']['gminy.nazwa'], 'id' => $aggs['gminy']['sumy']['timerange']['max']['buckets'][0]['reverse']['top']['hits']['hits'][0]['fields']['source'][0]['data']['gminy.id']), 'median' => $aggs['gminy']['sumy']['timerange']['percentiles']['values']['50.0'], 'histogram' => $aggs['gminy']['sumy']['timerange']['histogram']['buckets']); $global = array_merge($global, array('median_left' => $global['min']['value'] == $global['max']['value'] ? 0 : 100 * ($global['median'] - $global['min']['value']) / ($global['max']['value'] - $global['min']['value']))); $dzialy = array(); foreach ($aggs['gmina']['dzialy']['timerange']['dzialy']['buckets'] as $b) { $dzial = array('id' => $b['key'], 'label' => @$b['label']['buckets'][0]['key']); foreach ($aggs['gminy']['dzialy']['timerange']['dzialy']['buckets'] as $d) { if ($d['key'] == $b['key']) { $min = (int) $d['min']['buckets'][0]['key']; $max = (int) $d['max']['buckets'][0]['key']; $range = $max - $min; $histogram_i = (string) (count($this->histogramIntervals) - 1); foreach ($this->histogramIntervals as $i => $interval) { $buckets = ceil($range / $interval); if ($buckets > 8 && $buckets < 100) { $histogram_i = $i; break; } } if ($range > 300000 && $histogram_i == count($this->histogramIntervals) - 1) { $histogram_i = (string) (count($this->histogramIntervals) - 2); } $dzial['global'] = array('min' => array('value' => $d['min']['buckets'][0]['key'], 'label' => $d['min']['buckets'][0]['reverse']['top']['hits']['hits'][0]['fields']['source'][0]['data']['gminy.nazwa'], 'id' => $d['min']['buckets'][0]['reverse']['top']['hits']['hits'][0]['fields']['source'][0]['data']['gminy.id']), 'max' => array('value' => $d['max']['buckets'][0]['key'], 'label' => $d['max']['buckets'][0]['reverse']['top']['hits']['hits'][0]['fields']['source'][0]['data']['gminy.nazwa'], 'id' => $d['max']['buckets'][0]['reverse']['top']['hits']['hits'][0]['fields']['source'][0]['data']['gminy.id']), 'cur' => $b['wydatki']['value'], 'median' => $d['percentiles']['values']['50.0'], 'histogram' => $d['histogram_' . $histogram_i]['buckets'], 'interval' => $this->histogramIntervals[(int) $histogram_i]); $dzial['global'] = array_merge($dzial['global'], array('left' => $dzial['global']['min']['value'] == $dzial['global']['max']['value'] ? 0 : 100 * ($dzial['global']['cur'] - $dzial['global']['min']['value']) / ($dzial['global']['max']['value'] - $dzial['global']['min']['value']), 'median_left' => $dzial['global']['min']['value'] == $dzial['global']['max']['value'] ? 0 : 100 * ($dzial['global']['median'] - $dzial['global']['min']['value']) / ($dzial['global']['max']['value'] - $dzial['global']['min']['value']), 'class' => $dzial['global']['cur'] > $dzial['global']['median'] ? 'more' : 'less')); break; } } foreach ($aggs['gmina']['rozdzialy']['timerange']['dzialy']['buckets'] as &$c) { if ($c['key'] == $dzial['id']) { $rozdzialy = $c['rozdzialy']['buckets']; foreach ($rozdzialy as &$r) { if (!$r['key']) { continue; } $r = array('id' => $r['key'], 'label' => $r['nazwa']['buckets'][0]['key'], 'wydatki' => $r['wydatki']['value']); } $dzial['rozdzialy'] = $rozdzialy; unset($c); break; } } $dzialy[] = $dzial; } // debug( $dzialy ); die(); $this->set('global', $global); $this->set('dzialy', $dzialy); } }