ilch Forum » Ilch Clan 1.1 » Module und Modifikationen » News Beiträge anordnen

Geschlossen
  1. #1
    User Pic
    olos Mitglied
    Registriert seit
    30.10.2007
    Beiträge
    148
    Beitragswertungen
    1 Beitragspunkte
    Hallo,

    Es gibt zwar dazu schon einen Beitrag
    externer Link

    Aber weil er denk ich mal nicht im richtigen Forum ist bzw auch schon älter wollte ich die Sache hier nochmal schreiben.

    Es geht um die Möglichkeit News nach belieben anzuordnen

    Eben wie hier

    [BILD ENTFERNT ... da imageloader.de als Malware-Verbreiter gilt.]
    Gruß Lord|Schirmer


    Das wäre ideal.

    Ich habe aber keine Ahnung wie man das anstellt und wäre über Hilfe sehr dankbar. Denk mal für jemanden der sich damit auskennt sollte das nicht der Hit sein das zu machen.

    Gruss und Danke olos


    Zuletzt modifiziert von Lord|Schirmer am 04.01.2013 - 20:46:36
    =====================================
    Wenn man nur das macht, was man schon kann wird man immer nur das sein, was man schon ist.
    >>>> externer Link
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    lostboy2003 Mitglied
    Registriert seit
    09.09.2009
    Beiträge
    283
    Beitragswertungen
    14 Beitragspunkte
    Verstehe den sinn nicht im anordnen von news um diese nach oben oder unten zu verschieben .

    aber vergleiche es doch mit einer anderen datei wie die navigation zb da sind die punkte ja auch definiert vieleicht kannste se dir daraus mit einbauen also es zumindest zu versuchen .


    nimmst die include/admin/menu.php und die include/admin/templates/menu.htm
    suchst dir dort die entsprechenden bereiche raus
    und fügst sie an der gewünschten stelle in die
    include/admin/news.php und die include/admin/templates/news.htm wieder ein .

    weiss nicht ob es funktioniert was ich da sage so denke ich es mir zumindest . aber vieleicht meldet sich ja noch einer der könner hier und kann es dir sagen wie es dann richtig geht falls das nicht stimmmmt .
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    So ich habe Dir mal was auf Basis der originalen News-Dateien und ohne Veränderung der Datenbank gebastelt:

    <?php
    // Copyright by: Manuel
    // Support: www.ilch.de
    defined ('main') or die ('no direct access');
    defined ('admin') or die ('only admin access');
     
    $design = new design ('Admins Area', 'Admins Area', 2);
    $design->header();
    // -----------------------------------------------------------|
    // #
    // ##
    // ###
    // #### F u n k t i o n e n
    function getKats ($akt) {
        $katAR = array();
        $kats = '';
        $erg = db_query("SELECT DISTINCT news_kat FROM `prefix_news`");
        while ($row = db_fetch_object($erg)) {
            $katAr[] = $row->news_kat;
        }
        $katAr[] = 'Allgemein';
        $katAr = array_unique($katAr);
        foreach($katAr as $a) {
            if (trim($a) == trim($akt)) {
                $sel = ' selected';
            } else {
                $sel = '';
            }
            $kats .= '<option' . $sel . '>' . $a . '</option>';
        }
        return ($kats);
    }
    // #### F u n k t i o n
    // ###
    // ##
    // #
     
    // #
    // ##
    // ###
    // #### A k t i o n e n
    if (!empty($_REQUEST['um'])) {
        $um = $_REQUEST['um'];
        $_POST['titel'] = escape($_POST['titel'], 'string');
        $_POST['grecht'] = escape($_POST['grecht'], 'integer');
        $_POST['kat'] = escape($_POST['kat'], 'string');
        $_POST['katLis'] = escape($_POST['katLis'], 'string');
        $_POST['newsID'] = escape($_POST['newsID'], 'integer');
        if ($um == 'insert') {
            // insert
            $text = escape($_POST['txt'], 'textarea');
            if ($_POST['katLis'] == 'neu') {
                $_POST['katLis'] = $_POST['kat'];
            }
            db_query("INSERT INTO `prefix_news` (news_title,user_id,news_time,news_recht,news_kat,news_text)
            VALUES ('" . $_POST['titel'] . "'," . $_SESSION['authid'] . ",NOW()," . $_POST['grecht'] . ",'" . $_POST['katLis'] . "','" . $text . "')");
            // insert
        } elseif ($um == 'change') {
            // edit
            $text = escape($_POST['txt'], 'textarea');
     
            if ($_POST['katLis'] == 'neu') {
                $_POST['katLis'] = $_POST['kat'];
            }
            db_query('UPDATE `prefix_news` SET
                    news_title = "' . $_POST['titel'] . '",
                    user_id  = "' . $_SESSION['authid'] . '",
                    news_recht = "' . $_POST['grecht'] . '",
                    news_kat   = "' . $_POST['katLis'] . '",
                    news_text  = "' . $text . '" WHERE news_id = "' . $_POST['newsID'] . '" LIMIT 1');
            $edit = $_POST['newsID'];
        }
    }
    // edit
     
    // del
    if ($menu->get(1) == 'del') {
        db_query('DELETE FROM `prefix_news` WHERE news_id = "' . $menu->get(2) . '" LIMIT 1');
    }
    // del
     
    // move
    if ($menu->get(1) == 'move') {
        $id  = escape($menu->getE(2), 'integer');
        if ($menu->getA(2) == 'u' AND $id < db_result(db_query("SELECT MAX(news_id) FROM `prefix_news`"),0)) {
        $hoehereID = db_result(db_query("SELECT news_id FROM `prefix_news` WHERE news_id > ".$id." ORDER BY news_id ASC LIMIT 1"),0);
        db_query("UPDATE `prefix_news` SET news_id = 0 WHERE news_id = ".$hoehereID);
        db_query("UPDATE `prefix_koms` SET uid = 0 WHERE uid = ".$hoehereID);	
        db_query("UPDATE `prefix_news` SET news_id = ".$hoehereID." WHERE news_id = ".$id);
        db_query("UPDATE `prefix_koms` SET uid = ".$hoehereID." WHERE uid = ".$id);
        db_query("UPDATE `prefix_news` SET news_id = ".$id." WHERE news_id = 0");
        db_query("UPDATE `prefix_koms` SET uid = ".$id." WHERE uid = 0");
        } 
        elseif ($menu->getA(2) == 'd' AND $id > db_result(db_query("SELECT MIN(news_id) FROM `prefix_news`"),0)) {
        $niedrigereID = db_result(db_query("SELECT news_id FROM `prefix_news` WHERE news_id < ".$id." ORDER BY news_id DESC LIMIT 1"),0);
        db_query("UPDATE `prefix_news` SET news_id = 0 WHERE news_id = ".$niedrigereID);
        db_query("UPDATE `prefix_koms` SET uid = 0 WHERE uid = ".$niedrigereID);
        db_query("UPDATE `prefix_news` SET news_id = ".$niedrigereID." WHERE news_id = ".$id);
        db_query("UPDATE `prefix_koms` SET uid = ".$niedrigereID." WHERE uid = ".$id);
        db_query("UPDATE `prefix_news` SET news_id = ".$id." WHERE news_id = 0");
        db_query("UPDATE `prefix_koms` SET uid = ".$id." WHERE uid = 0");
        }
    }
    // move
     
    // #### A k t i o n e n
    // ###
    // ##
    // #
     
    // #
    // ##
    // ###
    // #### h t m l   E i n g a b e n
    if (empty ($doNoIn)) {
        $limit = 20; // Limit
        $page = ($menu->getA(1) == 'p' ? $menu->getE(1) : 1);
        $MPL = db_make_sites ($page , '' , $limit , "?news" , 'news');
        $anfang = ($page - 1) * $limit;
        if ($menu->get(1) != 'edit') {
            $FnewsID = '';
            $Faktion = 'insert';
            $Fueber = '';
            $Fstext = '';
            $Ftxt = '';
            $Fgrecht = '';
            $FkatLis = '';
            $Fsub = 'Eintragen';
        } else {
            $row = db_fetch_object(db_query("SELECT * FROM `prefix_news` WHERE news_id = " . $menu->get(2)));
            $FnewsID = $row->news_id;
            $Faktion = 'change';
            $Fueber = $row->news_title;
            $Ftxt = stripslashes($row->news_text);
            $Fgrecht = $row->news_recht;
            $FkatLis = $row->news_kat;
            $Fsub = '&Auml;ndern';
        }
        $tpl = new tpl ('news', 1);
     
        $ar = array
        (
            'NEWSID' => $FnewsID,
            'AKTION' => $Faktion,
            'MPL' => $MPL,
            'UEBER' => $Fueber,
            'txt' => $Ftxt,
            'SMILIS' => getsmilies(),
            'grecht' => dbliste($Fgrecht, $tpl, 'grecht', "SELECT id,name FROM prefix_grundrechte ORDER BY id DESC"),
            'KATS' => getKats($FkatLis),
            'FSUB' => $Fsub
     
            );
     
        $tpl->set_ar_out($ar, 0);
        // e d i t , d e l e t e
        $abf = 'SELECT news_id,news_title
                FROM `prefix_news`
                        ORDER BY news_id DESC
                        LIMIT ' . $anfang . ',' . $limit;
     
        $erg = db_query($abf);
        $class = '';
        while ($row = db_fetch_object($erg)) {
            $class = ($class == 'Cmite' ? 'Cnorm' : 'Cmite');
            $tpl->set_ar_out(array ('ID' => $row->news_id, 'class' => $class, 'TITEL' => $row->news_title) , 1);
        }
        // e d i t , d e l e t e
        $tpl->set_ar_out(array ('MPL' => $MPL) , 2);
    }
     
    $design->footer();
     
    ?>


    <script language="JavaScript" type="text/javascript"><!--
    function delcheck ( DELID ) {
    	var frage = confirm ( "Willst du diesen Eintrag wirklich löschen?" );
    	if ( frage == true ) {
    	  document.location.href="?news-del-"+DELID;
    	}
    }
    
    function delKcheck ( DELID , NID) {
    	var frage = confirm ( "Willst du dieses Kommentar wirklich löschen?" );
    	if ( frage == true ) {
    	  document.location.href="?news-sKoms-"+NID+"-Kdel-"+DELID+"#"+NID;
    	}
    }
    
    function sichtbar(){
    	if( document.form.katLis.value=="neu"){
    	  document.form.kat.style.visibility="visible";
    	} else {
    	  document.form.kat.style.visibility="hidden";
      }
    }
    //--></script>
    
    <script type='text/javascript' src='include/includes/js/bbcode.js'></script>
    
    <table cellpadding="0" cellspacing="0" border="0"><tr><td><img src="include/images/icons/admin/news.png" /></td><td width="30"></td><td valign="bottom"><h1>News</h1></td></tr></table>
    <hr style="width: 400px; margin: 0px;" >
    <br /><br />
    
    <table border="0" cellspacing="0" cellpadding="0"><tr><td valign="top">
    
    <form method="POST" name="form" action="?news">
      <input type="hidden" name="um"     value="{AKTION}">
      <input type="hidden" name="newsID" value="{NEWSID}">
    	<table cellpadding="2" cellspacing="1" border="0" class="border">
        <tr> 
          <td class="Cmite" align="right"><strong>Titel : </strong></td>
          <td class="Cnorm"><input size="50" type="text" name="titel" value="{UEBER}"></td>
        </tr><tr> 
          <td class="Cmite" align="right"><strong>News : </strong></td>
          <td rowspan="2" class="Cnorm">
          
          <!-- BB Code START -->
    	    <a href="javascript:simple('b')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.bold.gif" alt="b" title="{_lang_bold}" border="0"></a>
          <a href="javascript:simple('i')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.italic.gif" alt="i" title="{_lang_italic}" border="0"></a>
          <a href="javascript:simple('u')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.underline.gif" alt="u" title="{_lang_underlined}" border="0"></a>
          <a href="javascript:simple('code')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.code.gif" alt="Code" title="{_lang_code}" border="0"></a>
    	    <a href="javascript:simple_liste()"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.insertunorderedlist.gif" alt="{_lang_list}" title="{_lang_list}" border="0"></a>
          <a href="javascript:simple('url')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.link.gif" alt="Url" title="{_lang_link}" border="0"></a>
          <a href="javascript:simple('img')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.image.gif" alt="{_lang_picture}" title="{_lang_picture}" border="0"></a>
          <!-- BB Code ENDE -->
    
          </td>
        </tr><tr>
          <td rowspan="2" valign="top" class="Cmite">{SMILIS}</td>
        </tr><tr>
          <td class="Cnorm"><textarea name="txt" rows="15" cols="65" tabindex="2">{txt}</textarea></td>
        </tr><tr> 
          <td class="Cmite" align="right"><strong>Sichtbar ab : </strong></td>
          <td class="Cnorm"><select name="grecht">{_list_grecht@<option%1 value="%2">%3</option>}</select></td>
        </tr><tr> 
          <td class="Cmite" align="right"><strong>Kategorie : </strong></td>
          <td class="Cnorm"><select onChange="sichtbar()" name="katLis">{KATS}<option value="neu">Neu:</option></select>&nbsp;&nbsp;<input type="text" name="kat" size="40"></td>
        </tr><tr class="Cdark"> 
          <td></td>
          <td><input type="submit" value="{FSUB}" name="submit"></td>
        </tr>
      </table>
    </form>
    <br /><br />
    
    <div class="info_box">
    			<b>Merke (Kategorie Bild)</b>
    			<br />
    			<span class="smalfont">
    			Das Kategorie Bild muss in den Ordner include/images/news/
    			<br />
    			Das Bild muss genau wie die Kategorie heissen z.B. wenn die Kategorie
    			Allgemein heisst dann muss das Bild Allgemein heissen;)...
    			<br />
    			Die Endung muss entweder .jpg oder .gif sein bei uns also z.B. Allgemein.jpg
    			</span>
    </div>
    
    <div class="info_box">
    				<b>Merke (Vorschau Funktion)</b>
    				<br />
    				<span class="smalfont">
    				Soll nur ein kleinerer Vorschautext angezeigt werden, einfach erst die Vorschau
    				eingeben und nach der Vorschau dann <b>[PREVIEWENDE]</b> schreiben. Dann den langen
    				Text eintragen.
    				</span>
    </div>
    
    </td><td width="75">&nbsp;</td><td valign="top">
    
    {MPL}
    <table cellpadding="5" cellspacing="1" border="0" class="border">
      {EXPLODE}<tr class="{class}">
    	  <td><a href="#" name="{ID}"></a><a href="javascript:delcheck({ID})"><img src="include/images/icons/del.gif" alt="L&ouml;schen" title="L&ouml;schen" border="0"></a></td>
        <td><a href="?news-edit-{ID}"><img src="include/images/icons/edit.gif" alt="Ver&auml;ndern" title="Ver&auml;ndern" border="0"></a></td>
        <td><a href="?news-move-u{ID}"><img src="include/images/icons/pfeilo.gif" alt="Hoch" title="Hoch" /></a></td>
    			<td><a href="?news-move-d{ID}"><img src="include/images/icons/pfeilu.gif" alt="Runter" title="Runter" /></a></td>
    		<td>{TITEL}</td>
     </tr>{EXPLODE}
    </table>
    {MPL}
    
    </td></tr></table>
    
    <script language="JavaScript" type="text/javascript">
    <!--
      sichtbar();
    //-->
    </script>


    Wichtig ist, dass deine Sortierungen in der News-Box oder im News-Content nun nicht mehr per ORDER BY news_time DESC sondern per ORDER BY news_id DESC stattfinden muss. Also hier diese Dateien anpassen!


    Zuletzt modifiziert von Lord|Schirmer am 17.01.2012 - 21:31:21
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    T3BAss Mitglied
    Registriert seit
    21.12.2011
    Beiträge
    133
    Beitragswertungen
    18 Beitragspunkte
    Du hast einen kleinen Schönheitsfehler ( hab mir jetzt nicht alles ganau angeguckt ):

    Du änderst die ID des News in den Kommentaren nicht, was heißt, dass alte kommentare nicht übernommen werden
    1 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    Danke Dir, die Kommentare hatte ich nicht berücksichtigt.
    Ich habe oben den Code geändert ... sollte funktionieren.
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    @olos schon getestet?
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    olos Mitglied
    Registriert seit
    30.10.2007
    Beiträge
    148
    Beitragswertungen
    1 Beitragspunkte
    hi,
    erstmal danke für eure mühen

    also hab es heute getestet aber funzt irgendwie nicht. im adminbereich kann man zwar die beiträge schon schieben und anordnen aber diese anornnung wird auf der webseite nicht übernommen, obwohl ich dann in der

    include/contents/news.php

    ORDER BY news_time DESC gegen ORDER BY news_id DESC getauscht habe.

    Ich muss dazu sagen, dass ich den FCK Editor für 1.1f benutze.

    Ich poste mal hier zur sicherheit sie codes

    include/contents/news.php
    <?php
    #   Copyright by: Manuel
    #   Support: www.ilch.de
    
    
    defined ('main') or die ( 'no direct access' );
    
    
    
    $title = $allgAr['title'].' :: News';
    $hmenu = 'News';
    $design = new design ( $title , $hmenu );
    $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" />');
    
    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_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_id DESC 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,
                               'SITEURL' => 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF'])), 0);
        while ($row = db_fetch_assoc($erg))
        {
          if($feed_type == 'atom')
          {
    		$Z = (date('Z') > 0 ? '+' : '').date('H:i:s', date('Z') + 23 * 3600);
    		$row['datum'] = str_replace(' ', 'T', $row['datum']) . $Z;
          }
    
          $a = explode('[PREVIEWENDE]', $row['text']);
          $tpl->set_ar_out(array('TITLE' => $row['title'],
                                 '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_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,
          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)) {
    
          $k0m  = db_query("SELECT COUNT(ID) FROM `prefix_koms` WHERE uid = ".$row['id']." AND cat = 'NEWS'");
          $row['kom']  = db_result($k0m,0);
    
          $row['kate'] = news_find_kat($row['kate']);
          $row['datum'] = $lang[$row['dayofweek']].' '.$row['datum'];
          if ( strpos ( $row['text'] , '[PREVIEWENDE]' ) !== FALSE ) {
            $a = explode('[PREVIEWENDE]' , $row['text']);
            $row['text'] = $a[0];
            $row['readwholenews'] = '&raquo; <a href="index.php?news-'.$row['id'].'">'.$lang['readwholenews'].'</a>  &laquo;';
          } else {
            $row['readwholenews'] = '';
          }
          $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` (`uid`,`cat`,`name`,`text`) 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&ouml;schen" border="0" title="l&ouml;schen" /></a>';
            }
            $tpl->set_ar_out( array('NAME' => $row1['name'], 'TEXT' => $row1['text'], 'ZAHL' => $zahl ) , 4 );
            $zahl--;
    		  }
        }
    	}
      $tpl->out(5);
    }
    
    $design->footer();
    
    ?>


    include/admin/news.php
    <?php
    // Copyright by: Manuel
    // Support: www.ilch.de
    defined ('main') or die ('no direct access');
    defined ('admin') or die ('only admin access');
    
    $design = new design ('Admins Area', 'Admins Area', 2);
    $design->header();
    // -----------------------------------------------------------|
    // #
    // ##
    // ###
    // #### F u n k t i o n e n
    function getKats ($akt) {
        $katAR = array();
        $kats = '';
        $erg = db_query("SELECT DISTINCT news_kat FROM `prefix_news`");
        while ($row = db_fetch_object($erg)) {
            $katAr[] = $row->news_kat;
        }
        $katAr[] = 'Allgemein';
        $katAr = array_unique($katAr);
        foreach($katAr as $a) {
            if (trim($a) == trim($akt)) {
                $sel = ' selected';
            } else {
                $sel = '';
            }
            $kats .= '<option' . $sel . '>' . $a . '</option>';
        }
        return ($kats);
    }
    // #### F u n k t i o n
    // ###
    // ##
    // #
    
    // #
    // ##
    // ###
    // #### A k t i o n e n
    if (!empty($_REQUEST['um'])) {
        $um = $_REQUEST['um'];
        $_POST['titel'] = escape($_POST['titel'], 'string');
    	$_POST['grecht'] = escape($_POST['grecht'], 'integer');
    	$_POST['kat'] = escape($_POST['kat'], 'string');
    	$_POST['katLis'] = escape($_POST['katLis'], 'string');
    	$_POST['newsID'] = escape($_POST['newsID'], 'integer');
    	if ($um == 'insert') {
            // insert
            $text = escape($_POST['txt'], 'textarea');
            if ($_POST['katLis'] == 'neu') {
                $_POST['katLis'] = $_POST['kat'];
            }
            db_query("INSERT INTO `prefix_news` (news_title,user_id,news_time,news_recht,news_kat,news_text)
    		VALUES ('" . $_POST['titel'] . "'," . $_SESSION['authid'] . ",NOW()," . $_POST['grecht'] . ",'" . $_POST['katLis'] . "','" . $text . "')");
            // insert
        } elseif ($um == 'change') {
            // edit
            $text = escape($_POST['txt'], 'textarea');
    
            if ($_POST['katLis'] == 'neu') {
                $_POST['katLis'] = $_POST['kat'];
            }
            db_query('UPDATE `prefix_news` SET
    				news_title = "' . $_POST['titel'] . '",
    				user_id  = "' . $_SESSION['authid'] . '",
    				news_recht = "' . $_POST['grecht'] . '",
    				news_kat   = "' . $_POST['katLis'] . '",
    				news_text  = "' . $text . '" WHERE news_id = "' . $_POST['newsID'] . '" LIMIT 1');
            $edit = $_POST['newsID'];
        }
    }
    // edit
    // del
    if ($menu->get(1) == 'del') {
        db_query('DELETE FROM `prefix_news` WHERE news_id = "' . $menu->get(2) . '" LIMIT 1');
    }
    // del
    // move
    if ($menu->get(1) == 'move') {
        $id  = escape($menu->getE(2), 'integer');
        if ($menu->getA(2) == 'u' AND $id < db_result(db_query("SELECT MAX(news_id) FROM `prefix_news`"),0)) {
        $hoehereID = db_result(db_query("SELECT news_id FROM `prefix_news` WHERE news_id > ".$id." ORDER BY news_id ASC LIMIT 1"),0);
        db_query("UPDATE `prefix_news` SET news_id = 0 WHERE news_id = ".$hoehereID);
        db_query("UPDATE `prefix_koms` SET uid = 0 WHERE uid = ".$hoehereID);  
        db_query("UPDATE `prefix_news` SET news_id = ".$hoehereID." WHERE news_id = ".$id);
        db_query("UPDATE `prefix_koms` SET uid = ".$hoehereID." WHERE uid = ".$id);
        db_query("UPDATE `prefix_news` SET news_id = ".$id." WHERE news_id = 0");
        db_query("UPDATE `prefix_koms` SET uid = ".$id." WHERE uid = 0");
        }
        elseif ($menu->getA(2) == 'd' AND $id > db_result(db_query("SELECT MIN(news_id) FROM `prefix_news`"),0)) {
        $niedrigereID = db_result(db_query("SELECT news_id FROM `prefix_news` WHERE news_id < ".$id." ORDER BY news_id DESC LIMIT 1"),0);
        db_query("UPDATE `prefix_news` SET news_id = 0 WHERE news_id = ".$niedrigereID);
        db_query("UPDATE `prefix_koms` SET uid = 0 WHERE uid = ".$niedrigereID);
        db_query("UPDATE `prefix_news` SET news_id = ".$niedrigereID." WHERE news_id = ".$id);
        db_query("UPDATE `prefix_koms` SET uid = ".$niedrigereID." WHERE uid = ".$id);
        db_query("UPDATE `prefix_news` SET news_id = ".$id." WHERE news_id = 0");
        db_query("UPDATE `prefix_koms` SET uid = ".$id." WHERE uid = 0");
        }
    }
    // move
    // #### A k t i o n e n
    // ###
    // ##
    // #
    
    // #
    // ##
    // ###
    // #### h t m l   E i n g a b e n
    if (empty ($doNoIn)) {
        $limit = 20; // Limit
        $page = ($menu->getA(1) == 'p' ? $menu->getE(1) : 1);
        $MPL = db_make_sites ($page , '' , $limit , "?news" , 'news');
        $anfang = ($page - 1) * $limit;
        if ($menu->get(1) != 'edit') {
            $FnewsID = '';
            $Faktion = 'insert';
            $Fueber = '';
            $Fstext = '';
            $Ftxt = '';
            $Fgrecht = '';
            $FkatLis = '';
            $Fsub = 'Eintragen';
        } else {
            $row = db_fetch_object(db_query("SELECT * FROM `prefix_news` WHERE news_id = " . $menu->get(2)));
            $FnewsID = $row->news_id;
            $Faktion = 'change';
            $Fueber = $row->news_title;
            $Ftxt = stripslashes($row->news_text);
            $Fgrecht = $row->news_recht;
            $FkatLis = $row->news_kat;
            $Fsub = '&Auml;ndern';
        }
        $tpl = new tpl ('news', 1);
    
        $ar = array
        (
            'NEWSID' => $FnewsID,
            'AKTION' => $Faktion,
            'MPL' => $MPL,
            'UEBER' => $Fueber,
            'txt' => $Ftxt,
            'SMILIS' => getsmilies(),
            'grecht' => dbliste($Fgrecht, $tpl, 'grecht', "SELECT id,name FROM prefix_grundrechte ORDER BY id DESC"),
            'KATS' => getKats($FkatLis),
            'FSUB' => $Fsub
    
            );
    
        $tpl->set_ar_out($ar, 0);
        // e d i t , d e l e t e
        $abf = 'SELECT news_id,news_title
                FROM `prefix_news`
                        ORDER BY news_id DESC
                        LIMIT ' . $anfang . ',' . $limit;
                        
        $erg = db_query($abf);
        $class = '';
        while ($row = db_fetch_object($erg)) {
            $class = ($class == 'Cmite' ? 'Cnorm' : 'Cmite');
            $tpl->set_ar_out(array ('ID' => $row->news_id, 'class' => $class, 'TITEL' => $row->news_title) , 1);
        }
        // e d i t , d e l e t e
        $tpl->set_ar_out(array ('MPL' => $MPL) , 2);
    }
    
    $design->footer();
    
    ?>


    include/admin/templates/news.htm
    <script type="text/javascript" src="include/includes/fckeditor/fckeditor.js"></script>
        <script type="text/javascript">
          window.onload = function()
          {
            var oFCKeditor = new FCKeditor( 'MyTextarea' ) ;
            oFCKeditor.BasePath = "include/includes/fckeditor/" ;
            oFCKeditor.ReplaceTextarea() ;
          }
        </script>
    <script language="JavaScript" type="text/javascript"><!--
    function delcheck ( DELID ) {
    	var frage = confirm ( "Willst du diesen Eintrag wirklich l�schen?" );
    	if ( frage == true ) {
    	  document.location.href="?news-del-"+DELID;
    	}
    }
    
    function delKcheck ( DELID , NID) {
    	var frage = confirm ( "Willst du dieses Kommentar wirklich l�schen?" );
    	if ( frage == true ) {
    	  document.location.href="?news-sKoms-"+NID+"-Kdel-"+DELID+"#"+NID;
    	}
    }
    
    function sichtbar(){
    	if( document.form.katLis.value=="neu"){
    	  document.form.kat.style.visibility="visible";
    	} else {
    	  document.form.kat.style.visibility="hidden";
      }
    }
    //--></script>
    
    <table cellpadding="0" cellspacing="0" border="0"><tr><td><img src="include/images/icons/admin/news.png" /></td><td width="30"></td><td valign="bottom"><h1>News</h1></td></tr></table>
    <hr style="width: 400px; margin: 0px;">
    <br /><br />
    
    <table border="0" cellspacing="0" cellpadding="0" width="100%"><tr><td valign="top">
    
    <form method="POST" name="form" onsubmit="return submitForm();">
      <input type="hidden" name="um"     value="{AKTION}">
      <input type="hidden" name="newsID" value="{NEWSID}">
    	<table cellpadding="2" cellspacing="1" border="0" class="border" width="100%">
        <tr> 
          <td class="Cmite" align="right"><strong>Titel : </strong></td>
          <td class="Cnorm"><input size="72" type="text" name="titel" value="{UEBER}"></td>
        </tr><tr> 
          <td class="Cmite" align="right"><strong>News : </strong></td>
          <td rowspan="2" class="Cnorm">
          </td>
        </tr><tr>
          <td rowspan="2" valign="top" class="Cmite">{SMILIS}</td>
        </tr><tr>
          <td class="Cnorm">
         
          <textarea id="MyTextarea" name="txt" tabindex="2" rows="20" cols="80">{txt}</textarea>
          
          
          </td>
        </tr><tr> 
          <td class="Cmite" align="right"><strong>Sichtbar ab : </strong></td>
          <td class="Cnorm"><select name="grecht">{_list_grecht@<option%1 value="%2">%3</option>}</select></td>
        </tr><tr> 
          <td class="Cmite" align="right"><strong>Kategorie : </strong></td>
          <td class="Cnorm"><select onChange="sichtbar()" name="katLis">{KATS}<option value="neu">Neu:</option></select>&nbsp;&nbsp;<input type="text" name="kat" size="40"></td>
        </tr><tr class="Cdark"> 
          <td></td>
          <td><input type="submit" value="{FSUB}" name="submit"></td>
        </tr>
      </table>
    </form>
    <br /><br />
    
    <div class="info_box">
    			<b>Merke (Kategorie Bild)</b>
    			<br />
    			<span class="smalfont">
    			Das Kategorie Bild muss in den Ordner include/images/news/
    			<br />
    			Das Bild muss genau wie die Kategorie heissen z.B. wenn die Kategorie
    			Allgemein heisst dann muss das Bild Allgemein heissen;)...
    			<br />
    			Die Endung muss entweder .jpg oder .gif sein bei uns also z.B. Allgemein.jpg
    			</span>
    </div>
    
    <div class="info_box">
    				<b>Merke (Vorschau Funktion)</b>
    				<br />
    				<span class="smalfont">
    				Soll nur ein kleinerer Vorschautext angezeigt werden, einfach erst die Vorschau
    				eingeben und nach der Vorschau dann <b>[PREVIEWENDE]</b> schreiben. Dann den langen
    				Text eintragen.
    				</span>
    </div>
    
    </td><td width="75">&nbsp;</td><td valign="top">
     
    {MPL}
    <table cellpadding="5" cellspacing="1" border="0" class="border">
    {EXPLODE}<tr class="{class}">
          <td><a href="#" name="{ID}"></a><a href="javascript:delcheck({ID})"><img src="include/images/icons/del.gif" alt="L&ouml;schen" title="L&ouml;schen" border="0"></a></td>
        <td><a href="?news-edit-{ID}"><img src="include/images/icons/edit.gif" alt="Ver&auml;ndern" title="Ver&auml;ndern" border="0"></a></td>
        <td><a href="?news-move-u{ID}"><img src="include/images/icons/pfeilo.gif" alt="Hoch" title="Hoch" /></a></td>
                <td><a href="?news-move-d{ID}"><img src="include/images/icons/pfeilu.gif" alt="Runter" title="Runter" /></a></td>
            <td>{TITEL}</td>
     </tr>{EXPLODE}
    </table>
    {MPL}
     
    </td></tr></table>
    
    <script language="JavaScript" type="text/javascript">
    <!--
      sichtbar();
    //-->
    </script>

    Das sind sie Dateien wie sie bei mir drin sind.

    Danke und Gruss
    olos


    Zuletzt modifiziert von olos am 20.01.2012 - 15:15:59
    =====================================
    Wenn man nur das macht, was man schon kann wird man immer nur das sein, was man schon ist.
    >>>> externer Link
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    olos Mitglied
    Registriert seit
    30.10.2007
    Beiträge
    148
    Beitragswertungen
    1 Beitragspunkte
    @Lord|Schirmer oder jemand anderes

    habt ihr irgendeinen Plan warum es nicht geht??

    gruss olos
    =====================================
    Wenn man nur das macht, was man schon kann wird man immer nur das sein, was man schon ist.
    >>>> externer Link
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    Wie geschrieben habe ich es für das org. unveränderte Script geschrieben. Da eine Modifikation nie im Raum stand (auch die Bilder nicht).

    Ich müsste somit mal den Link zum Mod bekommen.
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    Sniper Mitglied
    Registriert seit
    31.10.2007
    Beiträge
    1.468
    Beitragswertungen
    63 Beitragspunkte
    Warum verwendest du nicht News Extended?
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    olos Mitglied
    Registriert seit
    30.10.2007
    Beiträge
    148
    Beitragswertungen
    1 Beitragspunkte
    sorry lord|schirmer

    ich hatte gedacht, daß ich die anpassung vom orginalen an meine versionb hinbekomme aber da dacht eich falsch.

    also ich habe die normale ilch 1.1 version plus fck editor für 1.1f mehr nicht
    also eben standart plus externer Link

    link zur seite kann ich im mom nicht geben, weil sie off ist und ich es morgen nochmal testen will und da kann ich auch mal nen link geben.

    Dachte Ihr könnt mit den quelltexten, die ich reingestellt habe schon was anfangen.
    Danke und Gruss
    =====================================
    Wenn man nur das macht, was man schon kann wird man immer nur das sein, was man schon ist.
    >>>> externer Link
    0 Mitglieder finden den Beitrag gut.
  12. #12
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    Ich schaue es mir später nochmal an. Bin gerade etwas K.O.
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  13. #13
    User Pic
    olos Mitglied
    Registriert seit
    30.10.2007
    Beiträge
    148
    Beitragswertungen
    1 Beitragspunkte
    ich danke dir schonmal vorab

    gruss olos
    =====================================
    Wenn man nur das macht, was man schon kann wird man immer nur das sein, was man schon ist.
    >>>> externer Link
    0 Mitglieder finden den Beitrag gut.
  14. #14
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    Also da die admin/news.php nicht verändert wird, sollte es eigentlich funktionieren. Wird bei Dir die news_id im Bezug zum news_title geändert?
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  15. #15
    User Pic
    olos Mitglied
    Registriert seit
    30.10.2007
    Beiträge
    148
    Beitragswertungen
    1 Beitragspunkte
    hurra es geht

    ungheimliches Danke an Lord|Schirmer Yes

    Fehler bei mir war, daß es in der content/news.php 2 mal ORDER BY news_time DESC gibt und ich ideot habe es nur bei einem gemacht.

    Danke für deine Geduld und gruss

    olos
    =====================================
    Wenn man nur das macht, was man schon kann wird man immer nur das sein, was man schon ist.
    >>>> externer Link
    0 Mitglieder finden den Beitrag gut.
  16. #16
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    Kein Problem lächeln
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  17. #17
    User Pic
    zillo gelöschter User
    bei mir gehts ne wenn ich es im admin verschiebe bleibt es auf der seite unverändert habe oben die zwei Codes genommen
    0 Mitglieder finden den Beitrag gut.
  18. #18
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    Funktioniert es im Adminbereich?
    Wenn ja, hast Du den letzten Satz meines Posts nicht gelesen.
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  19. #19
    User Pic
    zillo gelöschter User
    geht bei mir ne richtig habe fast 20 news aber der zeigt in admin bereich nur eins an an was kanns den liegen?
    0 Mitglieder finden den Beitrag gut.
  20. #20
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    Poste mal dein Code!
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  21. #21
    User Pic
    zillo gelöschter User
    ZitatZitat geschrieben von Lord|Schirmer

    Poste mal dein Code!


    hab den alten wieder hochgeladen.

    so sieht es jetzt aus



    ansonsten hate ich oben die codes benutzt
    0 Mitglieder finden den Beitrag gut.
  22. #22
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    Du redest schon von diesem Post im Thema:
    www.ilch.de/forum-showposts-46978-p1.html#334405
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  23. #23
    User Pic
    zillo gelöschter User
    tschuldigung das es wieder zwei themen sind könnt ihr die such option etwas einstellen das mann auch die themen besser finden kann?
    0 Mitglieder finden den Beitrag gut.
  24. #24
    User Pic
    zillo gelöschter User
    So habe mal nach geschaut das liegt ne am news.phph oder news.html sondern die fehlenden news sind auch im sql weg es sollten eigentlich 15 news sein sind aber nur 10
    0 Mitglieder finden den Beitrag gut.
  25. #25
    User Pic
    Lord|Schirmer Administrator
    Registriert seit
    21.03.2007
    Beiträge
    7.629
    Beitragswertungen
    1192 Beitragspunkte
    Sorry ich kann Dir nicht mehr helfen, da ich nicht weiss was Du machst.

    Ich habe gerade eben nochmal meine geposteten Dateien an einem jungfräulichen Ilch 1.1 O getestet und es funktioniert einwandfrei.

    Man braucht nur die beiden Dateien ersetzen und Abfrage wie beschrieben ändern. Einfacher geht es wirklich nicht.
    rules :: doku :: faq :: linkus
    0 Mitglieder finden den Beitrag gut.
  26. #26
    User Pic
    zillo gelöschter User
    ab ich doch auch so gemacht aber nun fehlen news weis auch ne warum. ich versuchs nochmal
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Module und Modifikationen

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten