Zuverlässigkeit eingebaut

Willkommen bei Geeklog
Freitag, 10. Februar 2012, 12:51 Uhr

"Meine offenen Artikel" - Block

PluginsHallöle zusammen,

ich einen kleinen PHP-Block entwickelt, der einem ausgibt, welche selbst-angelegten Artikel noch im Entwurfsmodus sind.
Ich finde das für einen Überblick auf der Startseite ganz praktisch.

Hier der Code:
/**
 * Draft-Stories - Blockfunktion
 *
 * Listet die Artikel des aktuellen Users, die im Entwurfs-Modus sind.
 **/
function phpblock_draftStories() {
    global $_TABLES, $_CONF, $_USER, $LANG01, $LANG24;

    // Ignore users that are not logged in. Including Mr Anonymous
    if( empty($_USER['uid']) OR $_USER['uid'] == 1 ) {
        $lReturnValue .= $LANG01[37];
    } else {
        // Find all draft articles of the loggid in user
        $lResult = DB_query("SELECT sid,draft_flag,date,title,owner_id FROM "
                    ." WHERE draft_flag=1 AND owner_id="
                    ." ORDER BY date ASC");
        $lNumRows = DB_numRows($lResult);
        if ($lNumRows > 0) {
            $lStories = array();
            for ($i = 0; $i < $lNumRows; $i++) {
                $lRow = DB_fetchArray($lResult);
                // Extract date and reformat it
                $lStoryDate = strtotime($lRow['date']);
                $lStoryDate = getdate($lStoryDate);
                $lStories[count($lStories)] = ''. $lRow['title'] .' '. $lStoryDate['mday'] .'.'. $lStoryDate['mon'] .'.';
            }
            $lReturnValue .= COM_makeList($lStories);
        } else {
            // Sorry didn't find anything
            $lReturnValue .= $LANG24[6];
        }
    }
    return $lReturnValue;
} 
Der Block muss als PHP-Block eingebunden werden, der Name der Methode ist ja oben ersichtlich. Ach ja, diese muss in die lib-common.php eingefügt werden. Auch klar... ;)
Statt hier die Strings mit dem li-Tag selber zusammenzusetzen, kann man auch die Funktion COM_makeList() benutzen (siehe Kommentare zu Top-Links-Block). Hab ich jetzt aber mal nicht gemacht... ;)
Angezeigt werden in dem Block dann die eigenen Artikel im Entwurfsmodus, in Form von Titel und Erstelldatum. Der Titel ist auf den eigentlichen Artikel verlinkt.

Gruß,
Alex
"Meine offenen Artikel" - Block | 5 Kommentar(e) | Neuen Account anlegen
Die folgenden Kommentare geben Meinungen von Lesern wieder und entsprechen nicht notwendigerweise der Meinung der Betreiber dieser Site. Die Betreiber behalten sich die Löschung von Kommentaren vor.
\"Meine offenen Artikel\" - Block
Autor: schmaxelander am Freitag, 18. Oktober 2002, 15:57 Uhr

Grrrr, manchmal ist HTML schon ätzend...
Also der Code oben ist unvollständig. Wer die komplette Variante haben möchte, bitte einfach kurz mailen...

Gruß,
Alex

Aber Dank an Dirk
Autor: schmaxelander am Freitag, 18. Oktober 2002, 16:00 Uhr

...dafür, dass er den Artikel so schnell heile gemacht hat. Vorher hat er die Seitenbreite der Homepage etwas gesprengt... ;)
Hier würde es helfen, wenn auch Otto-Normal-Artikelschreiber zwei Eingabefelder hätte für Einleitung und Haupttext.
Wieso ist das überhaupt so? Welcher Sinn steckt dahinter?

~Alex

Zweigeteilte Postings
Autor: Dirk am Freitag, 18. Oktober 2002, 16:47 Uhr

Was genau die Gründe waren, warum man Normalusern nur ein Texteingabefeld zur Verfügung gestellt hat, weiß ich leider auch nicht. Vielleicht, damit es nicht so verwirrend ist (bei manchen Leuten hat man gelegentlich den Eindruck, sie wären mit einem Eingabefeld schon überfordert ...).

Tatsächlich wird derzeit in submit.php auch nur der erste Teil gespeichert, d.h. außer den Templates müsste man auch den Quelltext ändern.

Aber ich hatte auch schon die Idee, mir mal anzusehen, ob man das nicht (als zuschaltbare Option) einbauen könnte. Reicht es jemand als Feature Request ein?

bye, Dirk

Zweigeteilte Postings
Autor: schmaxelander am Mittwoch, 13. November 2002, 10:13 Uhr
Hab ich übrigens letztlich als Change Request eingereicht.
Siehe hier.

~Alex
\"Meine offenen Artikel\" - Block
Autor: Dirk am Freitag, 18. Oktober 2002, 16:36 Uhr

Ich habe den Code jetzt gemäß E-Mail von Alex repariert.

Tipp: Wer Code posten will, sollte diesen in [code] ... [/code] (mit eckigen Klammern, nicht <code>) einschließen. Das ist eine Geeklog-Spezialität, die Sonderzeichen und Zeilenumbrüche beibehält, so dass man einfach per Copy&Paste seinen Code hier veröffentlichen kann.

bye, Dirk