Sag mal könnte mir jemand sagen wie das mit dem RSS-frend funktioniert hat Ilch schon sowas im CMS dabei ?
betroffene Homepage: externer Link
Hier kann eine Notiz zum Merk-Eintrag hinzugefügt werden (optional)
Geschlossen |
$design->addheader('<link rel="alternate" type="application/atom+xml" title="News (Atom)" href="index.php?news-atom" /> <link rel="alternate" type="application/rss+xml" title="News (RSS)" href="index.php?news-rss" />');
$design = new design ( $title , $hmenu );
<?php # Copyright by: Manuel Staechele # Support: www.ilch.de defined ('main') or die ( 'no direct access' ); $title = $allgAr['title'].'Aktuelle News'; $hmenu = 'News'; $design = new design ( $title , $hmenu ); function news_find_kat ($kat) { $katpfad = 'include/images/news/'; $katjpg = $katpfad.$kat.'.jpg'; $katgif = $katpfad.$kat.'.gif'; $katpng = $katpfad.$kat.'.png'; if ( file_exists( $katjpg ) ) { $pfadzumBild = $katjpg; } elseif ( file_exists ( $katgif ) ) { $pfadzumBild = $katgif; } elseif ( file_exists ( $katpng ) ) { $pfadzumBild = $katpng; } if ( !empty( $pfadzumBild ) ) { $kategorie = '<img style="" src="'.$pfadzumBild.'" alt="'.$kat.'">'; } else { $kategorie = '<b>'.$kat.'</b><br /><br />'; } return ( $kategorie ); } if ( !is_numeric($menu->get(1)) ) { if($menu->get(1) == 'rss' || $menu->get(1) == 'atom') { #ob_clean(); $feed_type = $menu->get(1); $abf = "SELECT MAX(news_time) AS last_update FROM prefix_news"; $erg = db_query($abf); $row = db_fetch_assoc($erg); $last_update = str_replace(' ', 'T', $row['last_update']) . 'Z'; $abf = "SELECT a.news_title as title, a.news_title2 as title2, a.news_id as id,"; $abf .= ($feed_type == 'atom') ? 'a.news_time as datum,' : "DATE_FORMAT(a.news_time,'%a, %e %b %y %H:%i:%s') as datum,"; $abf .= "a.news_kat as kate, a.news_text as text, b.name as username FROM prefix_news as a LEFT JOIN prefix_user as b ON a.user_id = b.id WHERE a.news_recht = 0 ORDER BY news_time ASC LIMIT 15"; $erg = db_query($abf); $tpl = new tpl( 'news_'.$menu->get(1).'.htm' ); header('Content-type: application/' . $menu->get(1) . '+xml'); $tpl->set_ar_out(array('FEEDTITLE' => $allgAr['title'], 'UPDATED' => $last_update), 0); while ($row = db_fetch_assoc($erg)) { if($feed_type == 'atom') { $row['datum'] = str_replace(' ', 'T', $row['datum']) . 'Z'; } $a = explode('[PREVIEWENDE]', $row['text']); $tpl->set_ar_out(array('TITLE' => $row['title'], 'TITLE2' => $row['title2'], 'TXT' => bbcode($a[0]), 'LINK' => 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']). '/index.php?news-' . $row['id'], 'AUTHOR' => $row['username'], 'DATE' => $row['datum'] ), 1); } $tpl->out(2); exit; } else { $design->header(); $limit = $allgAr['Nlimit']; $page = ( $menu->getA(1) == 'p' ? $menu->getE(1) : 1 ); $MPL = db_make_sites ($page , "WHERE news_recht >= ".$_SESSION['authright'] , $limit , '?news' , 'news' ); $anfang = ($page - 1) * $limit; $tpl = new tpl ( 'news.htm' ); $abf = "SELECT a.news_title as title, a.news_title2 as title2, a.news_id as id, DATE_FORMAT(a.news_time,'%d.%m.%Y') as datum, DATE_FORMAT(a.news_time,'%W') as dayofweek, a.news_kat as kate, a.news_text as text, a.news_recht as nrecht, b.name as username FROM prefix_news as a LEFT JOIN prefix_user as b ON a.user_id = b.id WHERE ".$_SESSION['authright']." <= a.news_recht OR a.news_recht = 0 ORDER BY news_time DESC LIMIT ".$anfang.",".$limit; #echo '<pre>'.$abf.'</pre>'; $erg = db_query($abf); while ($row = db_fetch_assoc($erg)) { $abf1 = "SELECT * FROM prefix_grundrechte where id = ".$row['nrecht']." "; $erg1 = db_query($abf1); $row1 = db_fetch_object($erg1); $k0m = db_query("SELECT COUNT(ID) FROM `prefix_koms` WHERE uid = ".$row['id']." AND cat = 'NEWS'"); $row['kom'] = db_result($k0m,0); $row['fur'] = 'Sichtbar ab '.$row1->name; $row['kate'] = news_find_kat($row['kate']); $row['datum'] = $lang[$row['datum']].' '.$row['datum']; $row['dayofweek'] = $lang[$row['dayofweek']]; if ( strpos ( $row['text'] , '[PREVIEWENDE]' ) !== FALSE ) { $a = explode('[PREVIEWENDE]' , $row['text']); $row['text'] = $a[0]; } $row['text'] = bbcode($row['text']); $tpl->set_ar_out($row,0); } $tpl->set_out('SITELINK', $MPL,1); unset($tpl); } } else { $design->header(); $nid = escape($menu->get(1), 'integer'); $row = db_fetch_object(db_query("SELECT * FROM `prefix_news` WHERE news_id = '".$nid."'")); if ( has_right(array($row->news_recht)) ) { $komsOK = true; if ( $allgAr['Ngkoms'] == 0 ) { if ( loggedin() ) { $komsOK = true; } else { $komsOK = false; } } if ( $allgAr['Nukoms'] == 0 ) { $komsOK = false; } # kommentar add if ( (loggedin() OR chk_antispam ('newskom')) AND $komsOK AND !empty($_POST['name']) AND !empty($_POST['txt']) ) { $_POST['txt'] = escape($_POST['txt'],'string'); $_POST['name'] = escape($_POST['name'],'string'); db_query("INSERT INTO `prefix_koms` VALUES ('',".$nid.",'NEWS','".$_POST['name']."','".$_POST['txt']."')"); } # kommentar add # kommentar loeschen if ($menu->getA(2) == 'd' AND is_numeric($menu->getE(2)) AND has_right(-7, 'news')) { $kommentar_id = escape($menu->getE(2),'integer'); db_query("DELETE FROM prefix_koms WHERE uid = ".$nid." AND cat = 'NEWS' AND id = ".$kommentar_id); } # kommentar loeschen $kategorie = news_find_kat($row->news_kat); $textToShow = bbcode($row->news_text); $textToShow = str_replace('[PREVIEWENDE]','',$textToShow); if ( !empty($such) ) { $textToShow = markword($textToShow,$such); } $tpl = new tpl ( 'news.htm' ); $ar = array ( 'TEXT' => $textToShow, 'KATE' => $kategorie, 'NID' => $nid, 'uname' => $_SESSION['authname'], 'ANTISPAM' => (loggedin()?'':get_antispam ('newskom', 0)), 'NAME' => $row->news_title ); $tpl->set_ar_out($ar, 2 ); if ($komsOK) { $tpl->set_ar_out ( array ( 'NAME' => $row->news_title , 'NID' => $nid ), 3 ); } $erg1 = db_query("SELECT text, name, id FROM `prefix_koms` WHERE uid = ".$nid." AND cat = 'NEWS' ORDER BY id DESC"); $ergAnz1 = db_num_rows($erg1); if ( $ergAnz1 == 0 ) { echo '<b>'.$lang['nocomments'].'</b>'; } else { $zahl = $ergAnz1; while ($row1 = db_fetch_assoc($erg1)) { $row1['text'] = bbcode(trim($row1['text'])); if (has_right(-7, 'news')) { $row1['text'] .= '<a href="?news-'.$nid.'-d'.$row1['id'].'"><img src="include/images/icons/del.gif" alt="löschen" border="0" title="löschen" /></a>'; } $abf2 = 'SELECT id, name, avatar FROM prefix_user WHERE name = "'.$row1['name'].'" '; $erg2 = db_query($abf2); $row2 = db_fetch_object($erg2); if ( file_exists($row2->avatar) ) { $ava = '<img src="'.$row2->avatar.'" border="0" width="75" height="75">'; }elseif ($row2->id != 0){ $ava = '<img src="ich bin ein user ohne avatar" border="0" width="75" height="75">'; }elseif ($row2->id == 0){ $ava = '<img src="ich bin ein gast border="0" width="75" height="75">'; } $tpl->set_ar_out( array('NAME' => $row1['name'], 'TEXT' => $row1['text'], 'AVATA' => $ava, 'ZAHL' => $zahl ) , 4 ); $zahl--; } } } $tpl->out(5); } $design->footer(); ?>
Geschlossen | ||
Zurück zu Module und Modifikationen |