public function main()
 {
     $page = Request::get(0, VAR_URI);
     if (preg_match('/^(\\d+)-/', $page, $matches) > 0 && !empty($matches[1])) {
         $airlineData = new CustomData($this->airlinePage->getPosition());
         if ($airlineData->load($matches[1])) {
             $uri = AirlineTools::buildUri($airlineData->getId(), $airlineData->getData('name'), true);
             $this->flightPage->setBaseUri($uri);
             $this->breadcrumb->add($airlineData->getData('name'), URI::build($uri));
             $flight = Request::get(1, VAR_INT);
             if (is_id($flight)) {
                 $this->flight($flight);
             } else {
                 $this->airline($matches[1]);
             }
         } else {
             $this->header();
             $this->notFoundError();
             $this->footer();
         }
     } else {
         $this->header();
         $this->airlinePage->overview('/Airlines/categories');
         $this->footer();
     }
 }
 public function __construct()
 {
     parent::__construct();
     $this->breadcrumb->add('Bewertungen', URI::build('airlines/admin/evals'));
     $this->breadcrumb->add('Kategorien', URI::build('airlines/admin/categories'));
     $this->breadcrumb->add('Felder', URI::build('airlines/admin/cfields'));
 }
 public static function buildUri($id, $name, $raw = false)
 {
     $uri = 'airlines/airlines/' . $id . '-' . URI::clean($name);
     if (!$raw) {
         $uri = URI::build($uri);
     }
     return $uri;
 }
 private function parse($page)
 {
     // URI conversion, example: [@uri:/cms/contact]
     $page = preg_replace_callback('~\\[@uri:([^]]+)\\]~i', function ($m) {
         return URI::build($m[1]);
     }, $page);
     return $page;
 }
 public function __construct($package = 'Cms')
 {
     parent::__construct($package);
     $this->scriptFiles[URI::build('client/scripts/jquery/jquery.admin.js')] = 'text/javascript';
     $this->scriptFiles[URI::build('client/scripts/admin.js')] = 'text/javascript';
     $this->cssFiles[URI::build('client/styles/admin.css')] = 'all';
     $this->loadMenu();
     $this->breadcrumb->add('Administrationsbereich', URI::build('cms/admin'));
 }
 public function getMenu($class)
 {
     switch ($class) {
         case 'Cms.Modules.AdminDocPages':
             return array(URI::build('cms/admin/documents') => 'Übersicht', URI::build('cms/admin/documents/write') => 'Hinzufügen');
         case 'Cms.Modules.AdminMemberPages':
             return array(URI::build('cms/admin/members') => 'Übersicht', URI::build('cms/admin/members/groups') => 'Gruppen', URI::build('cms/admin/members/emailexport') => 'E-Mail-Adressen exportieren');
         default:
             return array(URI::build('cms/admin/sys') => 'Startseite', URI::build('cms/admin/sys/serverinfo') => 'Server-Info');
     }
 }
 public function __construct($package = 'Cms')
 {
     parent::__construct($package);
     $cache = Core::getObject('Core.Cache.CacheServer');
     $cache->setSourceDir('Cms.Cache.Items');
     // URL => content for media-attribute
     $this->cssFiles = array(URI::build('client/styles/stylesheet.css') => 'all');
     // URL => content for type-attribute
     $cdn = Config::get('ui.jquery_cdn');
     $this->scriptFiles = array(URI::build($cdn ? $cdn : 'client/scripts/jquery/jquery.js') => 'text/javascript', URI::build('client/scripts/jquery/jquery.plugins.js') => 'text/javascript');
     // Html to be placed into the head tag of the page (at last)
     $this->headHtml = array();
     Session::getObject();
     // Init session
     $this->breadcrumb = new Breadcrumb();
     $this->breadcrumb->add(Config::get('general.title'), URI::frontPage());
 }
 public function delete()
 {
     $this->breadcrumb->add("Löschen");
     $this->header();
     $id = Request::get(1, VAR_INT);
     if (Request::get(2) == 'yes') {
         try {
             Database::getObject()->query("DELETE FROM <p>airports WHERE id = <id:int>", compact("id"));
             CmsPage::ok("Der gewählte Airport wurde gelöscht.");
         } catch (QueryException $e) {
             CmsPage::error("Der gewählte Airport konnte leider nicht gelöscht werden. Möglicherweise referenzieren noch andere Daten auf diesen Airport.");
         }
         $this->show();
     } else {
         CmsPage::yesNo("Möchten Sie den ausgewählten Airport wirklich löschen?", URI::build('airlines/admin/airports/delete/' . $id . '/yes'), URI::build('airlines/admin/airports'));
     }
     $this->footer();
 }
 public function write()
 {
     $db = Database::getObject();
     $id = Request::get(1, VAR_INT);
     $action = Request::get(2, VAR_URI);
     $options = array('title' => array(Validator::MESSAGE => 'Der Name muss mindestens 2 und darf maximal 255 Zeichen lang sein.', Validator::MIN_LENGTH => 2, Validator::MAX_LENGTH => 255), 'uri' => array(Validator::MULTIPLE => array(array(Validator::MESSAGE => 'Die URI enthält Zeichen die nicht erlaubt sind. Erlaubt sind: a-z, 0-9, _, -', Validator::REGEXP => '/^[\\w\\d\\-]*$/i'), array(Validator::MESSAGE => 'Die angegebene URI existiert bereits für eine andere Seite.', Validator::CLOSURE => function ($uri) use($db, $id) {
         $db->query("SELECT uri FROM <p>page WHERE id != <id:int> AND uri = <uri>", compact("id", "uri"));
         return $db->numRows() == 0;
     }))), 'content' => array(Validator::OPTIONAL => true));
     $this->breadcrumb->add(iif($id > 0, "Bearbeiten", "Hinzufügen"));
     $this->scriptFiles[URI::build('client/scripts/wymeditor/jquery.wymeditor.js')] = 'text/javascript';
     $this->header();
     $data = array('id' => $id, 'title' => '', 'uri' => '', 'content' => '');
     if ($action == 'send') {
         extract(Validator::checkRequest($options));
         $data['id'] = $id;
         if (count($error) > 0) {
             CmsPage::error($error);
         } else {
             if ($id > 0) {
                 $db->query("UPDATE <p>page SET title = <title>, uri = <uri>, content = <content> WHERE id = <id:int>", $data);
             } else {
                 $db->query("INSERT INTO <p>page SET title = <title>, uri = <uri>, content = <content>", $data);
                 $data['id'] = $db->insertId();
             }
             CmsPage::ok("Die Seite wurde erfolgreich gespeichert.");
         }
     } else {
         if ($id > 0) {
             $db->query("SELECT id, title, uri, content FROM <p>page WHERE id = <id:int>", compact("id"));
             if ($db->numRows() == 1) {
                 $data = $db->fetchAssoc();
             }
         }
     }
     $tpl = Response::getObject()->appendTemplate('Cms/admin/docs_write');
     $tpl->assign('data', $data);
     $tpl->output();
     $this->footer();
 }
 protected function createUri($pageNo)
 {
     $uri = $this->uri;
     if ($this->isQueryMode()) {
         $query = parse_url($uri, PHP_URL_QUERY);
         if (empty($query)) {
             $uri .= '?';
         } else {
             $uri .= '&';
         }
     } else {
         $uri = $uri . '/';
     }
     $uri .= str_replace('$$', $pageNo, $this->appendix);
     return URI::build($uri);
 }
 public function getThumbnail()
 {
     return URI::build($this->thumb);
 }
 public function __construct()
 {
     parent::__construct('Airlines.DataFields.Positions.AirlinesCategoryPosition', 'airlines/admin/categories', array('name', 'code'), 'Airlines');
     $this->breadcrumb->add('Bewertungen', URI::build('airlines/admin/evals'));
     $this->breadcrumb->add('Kategorien', URI::build('airlines/admin/categories'));
 }
 public function delete()
 {
     $this->breadcrumb->add("Löschen");
     $this->header();
     $id = Request::get(1, VAR_INT);
     if (Request::get(2) == 'yes') {
         $db = Database::getObject();
         try {
             $db->query("DELETE FROM <p>user WHERE id = <id:int>", compact("id"));
             CmsPage::ok("Das gewählte Mitglied wurde gelöscht.");
         } catch (QueryException $e) {
             CmsPage::error("Das gewählte Mitglied konnte leider nicht gelöscht werden. Möglicherweise referenzieren noch Daten auf dieses Mitglied.");
         }
         $this->members();
     } else {
         CmsPage::yesNo("Möchten Sie das gewählte Mitglied wirklich löschen?", URI::build('cms/admin/members/delete/' . $id . '/yes'), URI::build('cms/admin/members'));
     }
     $this->footer();
 }
 public function pwverify()
 {
     $this->breadcrumb->add('Neues Passwort generieren');
     $this->header();
     if (Me::get()->loggedIn()) {
         CmsPage::error('Sie sind bereits angemeldet!');
     } else {
         $uid = Request::get(1, VAR_INT);
         $hash = Request::get(2, VAR_ALNUM);
         $user = UserUtils::getById($uid);
         if ($user !== null && $user->isActive() && strcmp($hash, $user->getVerificationCode()) == 0) {
             $pw = Password::generate();
             $pwh = Hash::generate($pw);
             $db = Database::getObject();
             $db->query("UPDATE <p>user SET pw = <pwh>, verification = '' WHERE id = <uid:int>", compact("uid", "pwh"));
             if ($db->affectedRows() == 1) {
                 $db = Database::getObject();
                 $db->query("UPDATE <p>user SET verification = <pwh> WHERE id = <uid:int> AND active = 1", compact("pwh", "uid"));
                 $tpl = Response::getObject()->getTemplate('Cms/mails/pwremind_newpw');
                 $tpl->assign('pw', $pw, false);
                 $tpl->assign('name', UserUtils::getSalutation($user->getGender(), $user->getForeName(), $user->getSurName()), false);
                 CmsTools::sendMail($user->getEmail(), Config::get('general.title') . ': Ihr neues Passwort', $tpl->parse());
                 CmsPage::ok("Ihr neues Passwort wurden Ihnen per E-Mail zugeschicht.", URI::build("cms/user/login"));
             } else {
                 CmsPage::error("Es ist ein Fehler bei der Generierung eines neuen Passworts aufgetreten. Bitte wernden Sie sich an den Systemadministrator.", URI::build("cms/contact"));
             }
         } else {
             CmsPage::error("Die angegebenen Daten sind nicht mehr gültig.", URI::build("cms/user/pwremind"));
         }
     }
     $this->footer();
 }
Esempio n. 15
0
	</div>
	<div class="mid">
		<a href="<?=URI::build($params + ['filter'=>"voting"])?>" title="<?
printf(_("%d issues in voting, %d in voting preparation and %d in counting phase"), $counts['voting'], $counts['preparation'], $counts['counting']);
$nyvic = $ngroup->not_yet_voted_issues_count();
if ($nyvic) { ?> &mdash; <?=Ngroup::not_yet_voted($nyvic); }
?>"<?
if ($filter=="voting") { ?> class="active"<? }
?>><?=_("Voting")?> (<?=($counts['voting']+$counts['preparation']+$counts['counting']);
if ($nyvic) { ?>, <? printf(_("not voted on %d"), $nyvic); }
?>)</a>
	</div>
</div>
<div class="top">
	<div class="mid_dummy">
		<a href="<?=URI::build($params + ['filter'=>"closed"])?>" title="<?
printf(_("%d issues are finished, %d issues are cancelled"), $counts['finished'], $counts['cancelled']);
?>" class="top<?
if ($filter=="closed") { ?> active<? }
?>"><?=_("closed")?> (<?=($counts['finished']+$counts['cancelled'])?>)</a>
	</div>
</div>
<form id="search" action="<?=BN?>" method="GET">
<?
input_hidden('ngroup', $ngroup->id);
if ($filter) input_hidden("filter", $filter);
?>
<?=_("Search")?>: <input type="search" name="search" value="<?=h($search)?>">
<input type="submit" value="<?=_("search")?>">
<a href="<?=URI::strip(['search'])?>"><?=_("reset")?></a>
</form>
 public function remove()
 {
     $id = Request::get(1, VAR_INT);
     $this->breadcrumb->add('Löschen');
     $this->header();
     $db = Database::getObject();
     $db->query("SELECT * FROM <p>fields WHERE id = <id:int>", compact("id"));
     if ($db->numRows() == 1) {
         $field = CustomField::constructObject($db->fetchAssoc());
         if ($field->isImplemented()) {
             CmsPage::error('Das Feld kann nicht gelöscht werden, da es durch Nutzung gesperrt wurde.');
         } else {
             if (Request::get(2) == 'yes') {
                 if ($field->remove()) {
                     CmsPage::ok("Das Feld wurde erfolgreich gelöscht.");
                 } else {
                     CmsPage::error("Das Feld konnte leider nicht gelöscht werden.");
                 }
                 $this->overview();
             } else {
                 CmsPage::yesNo("Möchten Sie das gewählte Feld inkl. aller verknüpften Daten wirklich löschen? Eine vorherige Datensicherung wird dringend empfohlen!", URI::build($this->getBaseURI() . '/remove/' . $id . '/yes'), URI::build($this->getBaseURI()));
             }
         }
     } else {
         CmsPage::error('Das Feld wurde nicht gefunden.');
     }
     $this->footer();
 }
 public function __construct()
 {
     parent::__construct('Airlines.DataFields.Positions.AirlinesFlightPosition', 'airlines/admin/evals', array('title'), 'Airlines');
     $this->breadcrumb->add('Bewertungen', URI::build('airlines/admin/evals'));
 }
 public function remove()
 {
     $id = Request::get(1, VAR_INT);
     $data = new CustomData($this->position);
     if ($data->load($id)) {
         if (Request::get(2) == 'yes') {
             if ($data->remove()) {
                 CmsPage::ok("Der Datensatz wurde erfolgreich gelöscht.");
             } else {
                 CmsPage::error("Der Datensatz konnte leider nicht gelöscht werden.");
             }
         } else {
             CmsPage::yesNo("Möchten Sie den gewählten Datensatz inkl. aller evtl. verknüpften Daten wirklich löschen?", URI::build($this->baseUri . '/remove/' . $id . '/yes'), URI::build($this->baseUri));
         }
     } else {
         CmsPage::error('Der Datensatz wurde nicht gefunden.');
     }
 }
 public function getMenu($class)
 {
     return array(URI::build('airlines/admin/evals') => 'Übersicht', URI::build('airlines/admin/evals/activate') => 'Freischalten', URI::build('airlines/admin/efields') => 'Felder', URI::build('airlines/admin/airports') => 'Flughäfen', 'Kategorien' => array(URI::build('airlines/admin/categories') => 'Übersicht', URI::build('airlines/admin/cfields') => 'Felder'));
 }