News-System mehrere Ebenentiefen

Wie verwendet man Module oder Aktion und passt diese an.

News-System mehrere Ebenentiefen

Beitragvon Eruadan » 29. Aug 2011, 14:55

Hallo,

ich mißbrauche das News-System etwas angepasst zur Artikelvorschau.
Jetzt stelle ich aber fest das dieses Modul nur eine Unterebene nutzt. Wie könnte ich das anpassen, damit er noch z.B. 2 Ebenen tiefer suchen geht?

Hier mein Eingabecode:
Code: Alles auswählen
<?php
/**
*===============================
* Modul: News-System
* Bereich: Eingabe
* Version: 1.0
* Redaxo Version: 4.2
*
* Features:
*  - Wahlweise Onlinestatus Artikel
*  - Wahlweise Onlinestatus Kategorien
*  - Wahlweise Erstelldatum
*  - Wahlweise Verfasser/Autor
*  - Auswahl Subkategorien
*  - Auswahl eigene Kategroie
*  - Angabe der Artikelvorschaulänge
*  - Anzeige des Metafile/Bildes
*  - Sortierung nach
*  -  - Erstell Datum
*  -  - Update Datum
*  -  - Name
*  -  - Priorität
*  - Debugging
*
* Erstellt von:
*
* Jan Menzel
* www.arche-netvision.de
* jan.menzel ( at ) arche-netvision.de
* Datum: 08.07.2009
*
*===============================
*/

//CSS für die Moduleingabe
echo('
<style type="text/css">
    .ns_section
    {
        float: left;
        width: 100%;
        border-bottom: 1px solid lightgrey;
        margin-top: 5px;
        margin-right: 5px;
        padding-bottom: 10px;
    }
   
    .ns_block
    {
        float:left;
        width: 350px;
    }
   
    .ns_headline
    {
        font-weight: bold;
        margin-bottom: 5px;
        width: auto;
    }
   
    input
    {
        margin-top: 7px;
    }
</style>

');

$value1 = explode("~~","REX_VALUE[1]");

echo('<div class="ns_section">');
    echo('<div class="ns_block">');
        echo('<span class="ns_headline">W&auml;hlen Sie die Unterkategorien aus, aus denen die Newsartikel angezeigt werden sollen</span>');
        echo('<br />');
        echo('<span>');
       
            $select = new select();
            $select->set_name('VALUE[1][]');
            $select->multiple(true);

            foreach(OOCategory::getChildrenById("REX_CATEGORY_ID", false, false) AS $category)
            {
                $select->add_option($category->getName(), $category->getId());
               
                if(in_array($category->getId(), $value1))
                {
                    $select->set_selected($category->getId());
                }
            }

            echo($select->out());
        echo('</span>');
        echo('<br style="clear:both;" />');
        echo('<span>');
            echo('<label style="width:auto; margin-right: 15px;" for="chk_ownCat">Eigene Kategorie mit einbeziehen</label>');
           
            if("REX_VALUE[6]" == "on" || "REX_VALUE[6]" == "On" || "REX_VALUE[6]" == 1)
            {
                echo('<input type="checkbox" checked="checked" id="chk_ownCat" name="VALUE[6]">');
            }
            else
            {
                echo('<input type="checkbox" id="chk_ownCat" name="VALUE[6]">');
            }
        echo('</span>');
    echo('</div>');


    echo('<div class="ns_block">');

        echo('<span class="ns_headline">Online / Offline - Status ber&uuml;cksichtigen?</span>');   

        echo('<span style="float:left; width:200px;">');
       
        if("REX_VALUE[2]" == "on" || "REX_VALUE[2]" == "On" || "REX_VALUE[2]" == 1)
        {
            echo('<input type="checkbox" checked="checked" name="VALUE[2]" id="cat_online">');
        }
        else
        {
            echo('<input type="checkbox" name="VALUE[2]" id="cat_online">');
        }
            echo('<label for="cat_online">Kategorien</label>');
        echo('</span>');

        echo('<span style="float:left; width:200px;">');
       
            if("REX_VALUE[3]" == "on" || "REX_VALUE[3]" == "On" || "REX_VALUE[3]" == 1)
            {
                echo('<input type="checkbox" checked="checked" name="VALUE[3]" id="art_online">');
            }
            else
            {
                echo('<input type="checkbox" name="VALUE[3]" id="art_online">');
            }
            echo('<label for="art_online">Artikel</label>');
        echo('</span>');

    echo('</div>');

echo('</div>');

echo('<br style="clear:both" />');
echo('<br />');

echo('<div class="ns_section">');

        echo('<span class="ns_headline">Anzahl der Zeichen, die von einem News-Artikel angezeigt werden sollen:</span>');
        echo('<br />');
        echo('<input name="VALUE[4]" value="REX_VALUE[4]" />');
        echo('<br style="clear:both" />');
        echo('<span>');
            if("REX_VALUE[8]" == "on" || "REX_VALUE[8]" == "On" || "REX_VALUE[8]" == 1)
            {
                echo('<input type="checkbox" checked="checked" id="chk_useCreated" name="VALUE[8]">');
            }
            else
            {
                echo('<input type="checkbox" id="chk_useCreated" name="VALUE[8]">');
            }
            echo('<label style="width:150px; margin-right: 15px;" for="chk_useCreated">Erstelldatum anzeigen</label>');
        echo('</span>');
        echo('<br style="clear:both" />');
        echo('<span>');
            if("REX_VALUE[9]" == "on" || "REX_VALUE[9]" == "On" || "REX_VALUE[9]" == 1)
            {
                echo('<input type="checkbox" checked="checked" id="chk_useCreatedBy" name="VALUE[9]">');
            }
            else
            {
                echo('<input type="checkbox" id="chk_useCreatedBy" name="VALUE[9]">');
            }
            echo('<label style="width:150px; margin-right: 15px;" for="chk_useCreatedBy">Verfasser anzeigen</label>');
        echo('</span>');

echo('</div>');

echo('<br style="clear:both" />');

echo('<div class="ns_section">');
        echo('<span class="ns_headline"><label style="width:auto;" for="select_sort">Sortierung der News-Artikel:</label></span>');
        echo('<br style="clear:both" />');
            echo('<select name="VALUE[5]" id="select_sort">');
                  foreach (array("Priorität" => "Prio","Name" => "Name","Erstell Datum" => "CreateDate","Update Datum" => "UpdateDate") AS $key => $value)
                  {
                        echo ('<option value="'.$value.'" ');
                        if ("REX_VALUE[5]"=="$value" )
                        {
                            echo ('selected="selected" ');
                        }
                        echo ('>'.$key.'</option>');
                  }
            echo('</select>');

echo('</div>');

echo("Debugging :<br />");
$select = new select();
$select->set_name('VALUE[7]');
$select->setsize('0');

foreach(array('Anschalten' => 1, 'Ausschalten' => 0) AS $value => $key)
{
    $select->add_option($value, $key);

    if("REX_VALUE[7]" == $key)
    {
        $select->set_selected($key);
    }
}
echo($select->out());
?>


Es handelt sich um dieses Schnipsel denke ich mal:

Code: Alles auswählen
$select = new select();
            $select->set_name('VALUE[1][]');
            $select->multiple(true);

            foreach(OOCategory::getChildrenById("REX_CATEGORY_ID", false, false) AS $category)
            {
                $select->add_option($category->getName(), $category->getId());
               
                if(in_array($category->getId(), $value1))
                {
                    $select->set_selected($category->getId());
                }
            }

            echo($select->out());



Anregungen oder Hilfe sind mir sehr willkommen.

Vielen Dank!

mfG

Eru
Eruadan
 
Beiträge: 12
Registriert: 17. Jun 2010, 13:05

Zurück zu Module/Aktionen [R4]

Wer ist online?

Mitglieder in diesem Forum: jackomono und 1 Gast