Quelltext yaml_layout_inc

Zur besseren Übersicht hier nochmal der gesamte Quelltext mit Zeilennummern.

Und hier gibt es ihn nochmal zum Kopieren: Quelltext ohne Zeilennnummern

  1. <?php
  2. /**
  3.  * ==================================================
  4.  * Template: yaml_layout_inc
  5.  * Version: 0.9
  6.  * Redaxo Version: 4.2.x
  7.  * HTML-/XHTML-Version: XHTML 1.0
  8.  *
  9.  * Hinweise:
  10.  * Includes für YAML-Seitenlayout
  11.  * YAML3.1-konformes Seiten-Template
  12.  * für Redaxo 4.2.x
  13.  *
  14.  * Bearbeitung: Peter Reiche
  15.  *        www.raybeam.de
  16.  *
  17.  * Datum: 13.12.2009
  18.  * Anpassung an redaxo-community-basis-addon
  19.  *
  20.  * Ursprung-Datum: 22.11..2009
  21.  * Meta-Angaben: htmlspecialchars in htmlentities umgewandelt
  22.  * ================================================== */
  23.  
  24.  
  25. // Authentifizierungs-Template einbinden
  26. // Falls keine Authentifizierung benötigt wird, Session starten,
  27. // dadurch können bei angemeldetem Backend Offline-Artikel über
  28. // "Anzeigen" trotzdem betrachtet werden.
  29. if($authTemplateId)
  30. {
  31.   $authTemplate = new rex_template($authTemplateId);
  32.   include $authTemplate->getFile();
  33. }
  34. else
  35. {
  36. }
  37.  
  38. // Navigationstemplate einbinden
  39. if($navTemplateId)
  40. {
  41.   $navTemplate = new rex_template($navTemplateId);
  42.   include $navTemplate->getFile();
  43. }
  44.  
  45. // Login-Template einbinden
  46. if($loginTemplateId)
  47. {
  48.   $loginTemplate = new rex_template($loginTemplateId);
  49.   include $loginTemplate->getFile();
  50. }
  51.  
  52. // encrypt-emails-Template einbinden
  53. if($encryptEmailsId)
  54. {
  55.   $encryptEmailTemplate = new rex_template($encryptEmailsId);
  56.   include $encryptEmailTemplate->getFile();
  57. }
  58.  
  59. // weitere Templates könnten hier eingebunden werden
  60. // -------------------------------------------------
  61.  
  62.  
  63.  
  64. // -------------------------------------------------
  65.  
  66. // Adminzugriffe von der Statistik ausschließen
  67. // und Backendzugriff auf Offlineartikel ermöglichen
  68. // redaxo 4.x
  69. $beLogin = $_SESSION[$REX['INSTNAME']]['UID'];
  70. // Zugriffsberechtigung für redaxo-community prüfen
  71. // falls community-Addon installiert und aktiviert ist
  72. if(OOAddon::isAvailable('community'))
  73. {
  74.   $chkUsrPerm = rex_com_checkUserPerm($this->getValue("art_com_perm"));
  75. }
  76. else
  77. {
  78.   // permisson-Check für redaxo-community umgehen
  79.   $chkUsrPerm = true;
  80. }
  81.  
  82. if ($beLogin>0)
  83. {
  84.   $REX[STATS] = 0;
  85. }
  86. else
  87. {
  88.   // Überprüfen ob der Artikel online ist
  89.   $von = $this->getValue('online_from');
  90.   $bis = $this->getValue('online_to');
  91.   $jetzt = time();
  92.  
  93.   // aktuellen On-/Offline-Status des Artikels abfragen
  94.   $aktStatus = $this->getValue('status');
  95.  
  96.   if( $von==$bis || ($jetzt > $von && $jetzt < $bis))
  97.   {
  98.     $status = 1;
  99.   }
  100.   else
  101.   {
  102.     $status = 0;
  103.   }
  104.  
  105.   if ($aktStatus == 0 || $status == 0 || !$chkUsrPerm)
  106.   {
  107.       if ($this->getValue("startpage") == 0)
  108.       {
  109.         // Weiterleitung für Artikel
  110.         header("Location: http://".$_SERVER[HTTP_HOST].$_SERVER[PHP_SELF].$notFoundArticleLink);
  111.         exit;
  112.       }
  113.       else
  114.       {
  115.         // Weiterleitung für Kategorien
  116.         header("Location: http://".$_SERVER[HTTP_HOST].$_SERVER[PHP_SELF].$notFoundArticleLink);
  117.         exit;
  118.       }
  119.   }
  120. }
  121.  
  122. // Meta-Angaben des Startartikels auslesen
  123. $startArticle = OOArticle::getArticleById($REX['START_ARTICLE_ID'], $REX['CUR_CLANG']);
  124. $startArticleKeywords = $startArticle->getValue("_keywords");
  125. $startArticleDescription = $startArticle->getDescription();
  126.  
  127. // Wenn aktueller Artikel Meta-Angaben hat, diese übernehmen,
  128. // ansonsten die des Startartikels eintragen
  129. if($this->getValue("description") != "")
  130. {
  131.   $metaDescription = htmlentities($this->getValue("description"),ENT_QUOTES, 'UTF-8');
  132. }
  133. else
  134. {
  135.   $metaDescription = htmlentities($startArticleDescription,ENT_QUOTES, 'UTF-8');
  136. }
  137.  
  138. if($this->getValue("keywords")!= "")
  139. {
  140.   $metaKeywords = htmlentities($this->getValue("keywords"),ENT_QUOTES, 'UTF-8');
  141. }
  142. else
  143. {
  144.   $metaKeywords = htmlentities($startArticleKeywords,ENT_QUOTES, 'UTF-8');
  145. }
  146. ?>
  147.