public function initiate() { $assign = new assign($this->application); if ($assign->host()->dir($this->configuration)) { $module = new module(); $module->loader(); if (module::request(support\configuration::class)->configuration()) { $rewrite = avail::configuration($this->rewrite)->request('rewrite'); if ($assign->rewrite($rewrite)) { if ($route = $module->route()) { module::request(support\validation::class)->extension('ASV'); module::request(support\authorization::class)->extension('ASA'); module::request(support\mail::class)->extension('ASM'); $ase = $module->environment(); if ($ase) { if (isset($ase['database'])) { if ($assign->database(array_merge(avail::$database, $ase['database']))) { return true; } else { unset($ase['database']); } } avail::configuration($ase)->merge(); } avail::authorization()->subscribe(); avail::directory()->set(avail::configuration($this->directory)->request('directory')); new verse(); $verso = new verso($route->page); $verso->set(); $verso->execute(); } } } } }
/** * support extension for configuration */ public function configuration() { $filename = avail::$config['ASC']; avail::$config['ASC'] = $this->nameExists($filename); if (avail::$config['ASC']) { if (is_subclass_of(avail::configuration(), $this->Id)) { return 1; } else { assign::template('configuration')->error(array('filename' => $filename, 'require' => 'require to extends!', 'root' => avail::$config['ARO'])); } } else { return avail::$config['ASC'] = $this->Id; } }
public function requestVisits() { if ($this->table) { $this->requestVisitsUpdate(array('ip' => $_SERVER['REMOTE_ADDR']), array('hit' => array('(hit+1)'))); $select = avail::$database->select("SUM(hit) AS hits, COUNT(hit) AS total")->from($this->table)->execute()->toObject(); avail::content('visitor.hits')->set(number_format($select->rows->hits + avail::configuration('visitsPrevious')->get(0))); if (isset($_GET['visitsReset']) || $select->rows->total >= avail::configuration('visitsReset')->get(999)) { avail::$database->truncate('TABLE')->from($this->table)->execute(); $this->requestVisitsUpdate(array('ip' => $_SERVER['REMOTE_ADDR'], 'hit' => $select->rows->hits), array('hit' => $select->rows->hits)); avail::content('visitor.total')->set($update->result); } else { avail::content('visitor.total')->set($select->rows->total); } } }