openrat-cms

# OpenRat Content Management System
git clone http://git.code.weiherhei.de/openrat-cms.git
Log | Files | Refs

commit 7e0f0e57567b2d9f22e02d91323222f0637e944b
parent c0a67a3e7d6c8e6572966ecaf724178bdab42bef
Author: Jan Dankert <develop@jandankert.de>
Date:   Tue, 26 Nov 2019 22:04:46 +0100

Fix: Using the macro super class for generating links.

Diffstat:
modules/cms-core/model/Value.class.php | 11-----------
modules/cms-macros/macro/BlockMenu.class.php | 2+-
modules/cms-macros/macro/CommonMenu.class.php | 2+-
modules/cms-macros/macro/LanguageLinksForPage.class.php | 15++++++++-------
modules/cms-macros/macro/LinkList.class.php | 2+-
modules/cms-macros/macro/ListMenu.class.php | 2+-
modules/cms-macros/macro/MainMenu.class.php | 2+-
modules/cms-macros/macro/PagesNavigation.class.php | 5+++--
modules/cms-macros/macro/SearchIndex.class.php | 2+-
9 files changed, 17 insertions(+), 26 deletions(-)

diff --git a/modules/cms-core/model/Value.class.php b/modules/cms-core/model/Value.class.php @@ -175,17 +175,6 @@ class Value extends ModelBase - - function path_to_page( $pageid ) - { - return $this->page->path_to_object( $pageid ); - } - function path_to_object( $pageid ) - { - return $this->path_to_page( $pageid ); - } - - /** * Laden des aktuellen Inhaltes aus der Datenbank */ diff --git a/modules/cms-macros/macro/BlockMenu.class.php b/modules/cms-macros/macro/BlockMenu.class.php @@ -114,7 +114,7 @@ class BlockMenu extends Macro else { $this->output( ' <span class="small">o</span> - <a class="nav" href="'.$this->page->path_to_object($xid).'">'.$o->name.'</a> + <a class="nav" href="'.$this->pathToObject($xid).'">'.$o->name.'</a> <br />' ); } //Api::output( '<br/>' ); diff --git a/modules/cms-macros/macro/CommonMenu.class.php b/modules/cms-macros/macro/CommonMenu.class.php @@ -94,7 +94,7 @@ class CommonMenu extends Macro else { // Link erzeugen - $this->output( '<li><a href="'.$this->page->path_to_object($id).'">'.$o->name.'</a></li>' ); + $this->output( '<li><a href="'.$this->pathToObject($id).'">'.$o->name.'</a></li>' ); } } } diff --git a/modules/cms-macros/macro/LanguageLinksForPage.class.php b/modules/cms-macros/macro/LanguageLinksForPage.class.php @@ -48,15 +48,16 @@ class LanguageLinksForPage extends Macro foreach( $project->getLanguages() as $lid=>$lname) { - $l = new Language( $lid ); - $l->load(); + $language = new Language( $lid ); + $language->load(); - $p = new Page( $this->page->objectid ); - $p->publisher = $this->page->publisher; - $p->languageid = $lid; + $targetPage = new Page( $this->page->objectid ); + $targetPage->publisher = $this->page->publisher; + $targetPage->languageid = $lid; + $targetPage->modelid = $this->page->modelid; - $link = $p->path_to_object( $p->objectid ); - echo '<li><a hreflang="'.$l->isoCode.'" href="'.$link.'">'.strtolower($l->isoCode).'</a></li>'; + $link = $this->page->publisher->linkToObject( $this->page, $targetPage ); + echo '<li><a hreflang="'.$language->isoCode.'" href="'.$link.'">'.strtolower($language->isoCode).'</a></li>'; } $this->page->languageid = $languageId; diff --git a/modules/cms-macros/macro/LinkList.class.php b/modules/cms-macros/macro/LinkList.class.php @@ -74,7 +74,7 @@ class LinkList extends Macro // Wenn aktuelle Seite, dann markieren, sonst Link $class = ($this->getObjectId() == $id )?'actual':''; - echo '<li class="'.$class.'"><a href="'.$this->page->path_to_object($id).'">'.$o->name.'</a></li>'; + echo '<li class="'.$class.'"><a href="'.$this->pathToObject($id).'">'.$o->name.'</a></li>'; } echo '</ul>'; diff --git a/modules/cms-macros/macro/ListMenu.class.php b/modules/cms-macros/macro/ListMenu.class.php @@ -103,7 +103,7 @@ class ListMenu extends Macro } else { - $this->output( '<li class="menu"><a class="menu" href="'.$this->page->path_to_object($xid).'">'.$o->name.'</a></li>' ); + $this->output( '<li class="menu"><a class="menu" href="'.$this->pathToObject($xid).'">'.$o->name.'</a></li>' ); } } diff --git a/modules/cms-macros/macro/MainMenu.class.php b/modules/cms-macros/macro/MainMenu.class.php @@ -74,7 +74,7 @@ class MainMenu extends Macro // Ermitteln eines Objektes mit dem Dateinamen index $oid = $f->getObjectIdByFileName('index'); if ( is_numeric($oid) && $oid!=0 ) - $this->output( $this->arrowChar.'<a href="'.$this->page->path_to_object($oid).'" title="'.$o->desc.'">'.$o->name.'</a>' ); + $this->output( $this->arrowChar.'<a href="'.$this->pathToObject($oid).'" title="'.$o->desc.'">'.$o->name.'</a>' ); } } } diff --git a/modules/cms-macros/macro/PagesNavigation.class.php b/modules/cms-macros/macro/PagesNavigation.class.php @@ -63,13 +63,14 @@ class PagesNavigation extends Macro $nr = 0; // Schleife ueber alle Inhalte des Root-Ordners - foreach( $folder->getObjects() as $o ) + /** @var \cms\model\BaseObject $o */ + foreach($folder->getObjects() as $o ) { $nr++; if ( $o->isPage || $o->isLink ) { if ( $o->objectid != $this->page->objectid ) - $this->output( '<a href="'.$this->page->path_to_object($oid).'" title="'.$o->desc.'" class="pagenav">'.$nr.'</a>' ); + $this->output( '<a href="'.$this->pathToObject($o->objectid).'" title="'.$o->desc.'" class="pagenav">'.$nr.'</a>' ); else $this->output( '<strong>'.$nr.'</strong>' ); } diff --git a/modules/cms-macros/macro/SearchIndex.class.php b/modules/cms-macros/macro/SearchIndex.class.php @@ -54,7 +54,7 @@ class SearchIndex extends Macro 'id' => $pageid, 'title' => $name->name, 'filename'=> $page->filename, - 'url' => $this->page->path_to_object( $pageid ), + 'url' => $this->pathToObject( $pageid ), 'content' => $this->truncate(array_reduce( $page->values, function($act, $value)