LV
EN
LT
RU
DE
); } return $this->find($q); } function getByPath($path, $draft=false) { if (!$path || $path == '/' || $path{0} != '/') { return null; } $parts = explode('/', $path); array_shift($parts); $name = array_pop($parts); if (!$name) { return null; } $parent = ''; foreach ($parts as $part) { if (!$part) { return null; } $sql = 'SELECT id FROM ' . $this->table; $sql .= ' WHERE name=' . $this->db->quote($part); if (!$draft) { $sql .= ' AND locked=0 AND published_id IS NOT NULL'; } $sql .= ' AND parent_id'; if ($parent) { $sql .= '=(' . $parent . ')'; } else { $sql .= ' IS NULL'; } $parent = $sql; } if ($parent) { $parent = '(' . $parent . ')'; } else { $parent = ' IS NULL'; } $q = $this->createQuery(); $q->joinOnField('published'); if ($draft) { $q->joinOnField('draft'); } $q->filter('parent', '', '=', $parent); $q->filter('name', $name); if (!$draft) { $q->filter('locked', false); $q->filter('published', null, '<>'); } $this->debug_sql = true; return $this->find($q); } function getListQuery($parent) { if ($parent) { $id = $parent->id; $ranked = !$parent->ordered; } else { $id = null; $ranked = true; } $q = $this->createQuery(); $q->joinOnField('draft'); $q->joinOnField('published'); $q->filter('parent', $id); if ($ranked) { $q->order('rank'); } else { $q->order('name'); } return $q; } private $_tools = false; function parseFlags($raw) { $flags = array(); $parts = explode('||', $raw); $title = trim(array_shift($parts)); if ($parts) { $tools = $this->_tools; if ($tools === false) { $tools = $this->getSite()->getObject('DPages:/xinha'); $this->_tools = $tools; } if ($tools) { $flags = $tools->parseFlags($parts); } } if (!$flags) { $flags = array(); } return array($title, $flags); } } class m_DPages_pages_page_record extends dgRecord { function get_may_access() { return $this->access_rights; } function get_may_view() { if ($this->context()->adminRecordsBrowseable('pages')) { return true; } return $this->page_rights; } function get_may_publish() { return $this->publishing_rights; } function get_may_edit() { if (!$this->parent) { return $this->context()->isAdmin(); } if ($this->is_published) { return $this->parent->publishing_rights; } else { return $this->parent->page_rights; } } function get_may_reorder() { if ($this->parent) { return $this->parent->page_rights; } return $this->context()->isAdmin(); } function get_may_add_version() { return $this->page_rights; } function get_may_edit_pages() { return $this->page_rights; } function get_may_view_pages() { if ($this->may_view) { return true; } if ($this->page_rights || $this->block_rights || $this->menu_rights) { return true; } return false; } function get_may_view_blocks() { if ($this->context()->adminRecordsBrowseable('blocks')) { return true; } return $this->block_rights; } function get_may_edit_blocks() { return $this->block_rights; } function get_may_view_menus() { if ($this->context()->adminRecordsBrowseable('menus')) { return true; } return $this->menu_rights; } function get_may_edit_menus() { return $this->menu_rights; } function get_may_edit_users() { return $this->context()->isAdmin(); } function get_access_rights($init=true) { if ($init) { if ($this->context()->isAdmin()) { return true; } $this->model()->initUsers(); } if ($this->_allow_access) { return true; } if ($this->parent) { return $this->parent->get_access_rights(false); } return false; } function get_publishing_rights($init=true) { if ($init) { if ($this->context()->isAdmin()) { return true; } $this->model()->initUsers(); } if ($this->_allow_publish) { return true; } if ($this->parent) { return $this->parent->get_publishing_rights(false); } return false; } function get_page_rights($init=true) { if ($init) { if ($this->context()->isAdmin()) { return true; } $this->model()->initUsers(); } if ($this->_allow_edit) { return true; } if ($this->parent) { return $this->parent->get_page_rights(false); } return false; } function get_block_rights($init=true) { if ($init) { if ($this->context()->isAdmin()) { return true; } $this->model()->initUsers(); } if ($this->_allow_blocks) { return true; } if ($this->parent) { return $this->parent->get_block_rights(false); } return false; } function get_menu_rights($init=true) { if ($init) { if ($this->context()->isAdmin()) { return true; } $this->model()->initUsers(); } if ($this->_allow_menus) { return true; } if ($this->parent) { return $this->parent->get_menu_rights(false); } return false; } function get_path() { $parts = array(''); foreach ($this->parents as $parent) { $parts[] = $parent->name; } if ($this->isNew()) { $parts[] = '?'; } else { $parts[] = $this->name; } return implode('/', $parts); } function get_path_pages() { $items = array(); foreach ($this->parents as $parent) { $items[] = $parent; } $items[] = $this; return $items; } function get_name_with_parents() { $names = array(); foreach ($this->parents as $parent) { $names[] = $parent->name; } $names[] = $this->name; return implode(' › ', $names); } function get_title() { if ($this->published_id) { return $this->published->title; } if ($this->draft_id) { return $this->draft->title; } return ''; } function get_real_title() { list($title, $flags) = $this->getModel()->parseFlags($this->title); $this->real_title = $title; $this->flags = $flags; return $title; } function get_flags() { list($title, $flags) = $this->getModel()->parseFlags($this->title); $this->real_title = $title; $this->flags = $flags; return $this->flags; } function get_parents() { if ($this->_parents === null) { $this->loadParents(); } return $this->_parents; } function get_ids_path() { return $this->parent_path . $this->id; } function getParentKeys() { if ($this->_parent_keys === null) { $this->loadParents(); } return $this->_parent_keys; } private function loadParents() { $this->_parents = array(); $this->_parent_keys = array(); $path = $this->parent_path; if (!$path) { return; } $ids = array_map('intval', array_filter(explode('/', $path))); $this->_parent_keys = $ids; if (!$ids) { return; } $model = $this->getModel(); $q = $model->createQuery(); $q->filter('id', $ids, 'in'); $items = array(); foreach($model->findAll($q) as $item) { $items[$item->id] = $item; } $parents = array(); foreach ($ids as $id) { $parents[] = $items[$id]; } $this->_parents = $parents; } function get_is_published() { return (bool)$this->published_id; } function isPublic() { if (!$this->published_id || $this->locked) { return false; } foreach ($this->parents as $parent) { if (!$parent->published_id || $parent->locked) { return false; } } return true; } function isWap() { if (!$this->parent_id) { return false; } $parents = $this->parents; return $parents[0]->name == 'wap'; } private $_status_icons = null; function get_status_icons() { if ($this->_status_icons === null) { $_ = $this->node()->getStrings(); $icons = array(); if ($this->locked) { $icons[] = array('type' => 'locked', 'label' => $_->PAGE_LOCKED); } if ($this->protected) { $icons[] = array('type' => 'protected', 'label' => $_->PAGE_PROTECTED); } $this->_status_icons = $icons; } return $this->_status_icons; } private $_effective_status_icons = null; function get_effective_status_icons() { if ($this->_effective_status_icons === null) { $_ = $this->node()->getStrings(); $locked = $unpublished = $hidden = $protected = false; foreach ($this->parents as $parent) { if ($parent->locked) { $locked = true; } if ($parent->protected) { $protected = true; } } if ($this->locked) { $locked = true; } if ($this->protected) { $protected = true; } $icons = array(); if ($locked) { $icons[] = array('type' => 'locked', 'label' => $_->PAGE_LOCKED); } if ($protected) { $icons[] = array('type' => 'protected', 'label' => $_->PAGE_PROTECTED); } $this->_effective_status_icons = $icons; } return $this->_effective_status_icons; } } ?>
Allgemeine Informationen
Die Routen
Foto Gallerie
Wohin den Weg nehmen?
•
•
Museen
Handwerken
Kulturhistorische Objekte
Naturobjekte
Unterkunft in der Stadt
Unterkunft auf dem Lande
Mahlzeitmöglichkeiten
Erholung am wasser
Reiten
Aktivitätserholung
Dampfhäuser
SPA
Konferenzräume
Suchen
MONTH_NAME_7 2025
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Partneri
Neue e-Grußkarte
Ihr e-Mail
Ihr Name
e-Mail des Empfängers
Thema
Text
BalticLakes.com
MONTH_NAME_7 2025
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Partneri