/** * Start constructing the page. * Prepare all the shared variables such as dates and check alliance ID. */ function start() { $this->page = new Page(); $this->all_id = (int) edkURI::getArg('all_id'); $this->all_external_id = (int) edkURI::getArg('all_ext_id'); if (!$this->all_id && !$this->all_external_id) { $this->all_id = (int) edkURI::getArg('id', 1); // And now a bit of magic to test if this is an external ID if ($this->all_id > 500000 && $this->all_id < 500021 || $this->all_id > 1000000) { $this->all_external_id = $this->all_id; $this->all_id = 0; } } $this->view = preg_replace('/[^a-zA-Z0-9_-]/', '', edkURI::getArg('view', 2)); // Search engines should only index the main view. if ($this->view) { $this->page->addHeader('<meta name="robots" content="noindex, nofollow" />'); } if (!$this->all_id && !$this->all_external_id) { $html = 'No valid alliance id specified.'; $this->page->setContent($html); $this->page->generate(); exit; } if (!$this->all_id && $this->all_external_id) { $this->alliance = new Alliance($this->all_external_id, true); $this->all_id = $this->alliance->getID(); if (!$this->all_id) { echo 'No valid alliance id specified.'; exit; } } else { $this->alliance = Cacheable::factory('Alliance', $this->all_id); $this->all_external_id = $this->alliance->getExternalID(); } $this->page->addHeader("<link rel='canonical' href='" . $this->alliance->getDetailsURL() . "' />"); if ($this->view) { $this->year = (int) edkURI::getArg('y', 3); $this->month = (int) edkURI::getArg('m', 4); } else { $this->year = (int) edkURI::getArg('y', 2); $this->month = (int) edkURI::getArg('m', 3); } if (!$this->month) { $this->month = kbdate('m'); } if (!$this->year) { $this->year = kbdate('Y'); } if ($this->month == 12) { $this->nmonth = 1; $this->nyear = $this->year + 1; } else { $this->nmonth = $this->month + 1; $this->nyear = $this->year; } if ($this->month == 1) { $this->pmonth = 12; $this->pyear = $this->year - 1; } else { $this->pmonth = $this->month - 1; $this->pyear = $this->year; } $this->monthname = kbdate("F", strtotime("2000-" . $this->month . "-2")); global $smarty; $smarty->assign('monthname', $this->monthname); $smarty->assign('year', $this->year); $smarty->assign('pmonth', $this->pmonth); $smarty->assign('pyear', $this->pyear); $smarty->assign('nmonth', $this->nmonth); $smarty->assign('nyear', $this->nyear); if ($this->alliance->isFaction()) { $this->page->setTitle(Language::get('page_faction_det') . ' - ' . $this->alliance->getName()); } else { $this->page->setTitle(Language::get('page_all_det') . ' - ' . $this->alliance->getName()); } $smarty->assign('all_name', $this->alliance->getName()); $smarty->assign('all_id', $this->alliance->getID()); }