Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 17. Januar 2012 16:35

dalton
kennt CMS/ms
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

[GELÖST] News Modul selbsterstelltes Dropdown mit ID + Name vom Gallery Modul?

Hallo zusammen,

ich muss für einen Kunden das News Modul so anpassen damit er in einem Dropdown die Gallery aus dem Gallery Modul auswählen kann und diese dann auch in diesen News sichtbar sind.

Die eigentliche funktion wie Beschrieben funktioniert schon, jetzt habe ich aber noch einen kleines Problem und zwar:


Zuerst einmal der Code für die Herstellung des Dropdowns:

$query2 = 'SELECT filename,fileid FROM ' . cms_db_prefix() . 'module_gallery';
$gallerys = $db->getAssoc($query2);

$smarty->assign('inputgallery',$this->CreateInputDropdown($id,'gallery',$gallerys,-1,$gallery));

Durch die Variable $gallerys setz ich die filename und fileid aus der Modul Gallery Datenbank Tabelle in das das Dropdown als Option erscheint dan z.B. "Gallery/" und als Value die Fileid = "1".

Falls jemand die Tabelle in der Datebank des Gallery Moduls schon einmal angeschauet hat, weis das alle Bilder die im Gallery Ordner sind in der Datebank als einzelne Zeile gespeichert wird, das sieht dan etwa so aus in der Datebank:

fileid - filename -filepath etc..
1     - Gallery   - null
2    -  bild1.jpg - Gallery
3    -  bild2.jpg - Gallery
4   -  bild3.jpg - Gallery

etc...

Das Problem ist jetzt in meinem Dropdown erscheinen nicht jetzt nur alle Ordner und Unterordner also Gallery etc.. sondern auch die Bilder da die auch alle in der gleichen Tabelle sind.

Es gibt dann eine  risen Liste von den Bildern  im Dropdown die unnötig sind da ich ja nur die Verzeichnisse brauche um diese dann auszugeben und nicht einzelne Bilder.

Gibt es eine Möglichkeit eine Abfrage zu starten wie z.B. wen die Endung .jpg ist soll diese nicht ausgelesen werden, das dann diese auch nicht im Dropdown erscheinen?


besten dank für eure hilfe

Offline

#2 17. Januar 2012 16:41

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] News Modul selbsterstelltes Dropdown mit ID + Name vom Gallery Modul?

Schau dir folgendes Script an:
http://www.blattertech.ch/blog/44/CMSMS … -geben.htm

Da bist du unabhängig von der DB und erfasst auch Gallery's welche per FTP Upload erstellt wurden.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#3 18. Januar 2012 17:21

dalton
kennt CMS/ms
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re: [GELÖST] News Modul selbsterstelltes Dropdown mit ID + Name vom Gallery Modul?

nockenfell schrieb:

Schau dir folgendes Script an:
http://www.blattertech.ch/blog/44/CMSMS … -geben.htm

Da bist du unabhängig von der DB und erfasst auch Gallery's welche per FTP Upload erstellt wurden.

Danke das geht mit AdvancedContent super,nur wie bringe ich das ins News Modul?

Offline

#4 18. Januar 2012 21:24

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] News Modul selbsterstelltes Dropdown mit ID + Name vom Gallery Modul?

dalton schrieb:

Danke das geht mit AdvancedContent super,nur wie bringe ich das ins News Modul?

Ganz einfach in dem du im Quellcode folgendes von dir ersetzt:

$smarty->assign('inputgallery',$this->CreateInputDropdown($id,'gallery',$gallerys,-1,$gallery));

durch

$gallerys = getGalleryTree();
$smarty->assign('inputgallery', $this->CreateInputDropdown($id, 'gallery', $gallerys, -1, $gallery));

Dazu musst du das Plugin von ein wenig umbauen und einbinden, damit du es mit "getGalleryTree()" aufrufen kannst.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#5 19. Januar 2012 11:24

dalton
kennt CMS/ms
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re: [GELÖST] News Modul selbsterstelltes Dropdown mit ID + Name vom Gallery Modul?

Hallo,

irgendwie krieg ich das einfach nicht hin kannst du mir da villeicht einbischen helfen:)?


Hab jetzt den ganzen Code von deinem Plugin in die Dateigenommen um die News zu bearbeiten, da es die function.getGalleryTree.php nicht einfach so erkennt.

	
function smarty_cms_function_getGalleryTree($params, &$smarty)
{

    $config = cmsms()->GetConfig();
    $delimiter = "|";

    if (!function_exists("getGalleryTreeAsArray"))
    {
        function getGalleryTreeAsArray($path = '.', $ignore = array()) {
            $dirTree = array ();
            $dirTreeTemp = array ();
            $ignore[] = '.';
            $ignore[] = '..';
            $ignore[] = '.htaccess';
            $ignore[] = 'error_log';
            $ignore[] = 'cgi-bin';
            $ignore[] = '.DS_Store';
            $ignore[] = 'thumb';

            $config = cmsms()->GetConfig();

            if (strpos($path,$config['uploads_path']) === FALSE)
                $path = $config['uploads_path']."/".trim($path,"/");

            $dh = @opendir($path);

            while (false !== ($file = readdir($dh))) {

                if (!in_array($file, $ignore)) {
                    if (!is_dir("$path/$file")) {
                        $fileinfo=pathinfo($path."/".$file);
                                        if((strtolower($fileinfo['extension']) == "jpg"
                                         or  strtolower($fileinfo['extension']) == "jpeg"
                                         or strtolower($fileinfo['extension']) == "gif"
                                         or strtolower($fileinfo['extension']) == "png") and strpos($file,"thumb") === FALSE)
                        $dirTree["$path"][] = $file;

                    } else {

                        $dirTreeTemp = getGalleryTreeAsArray("$path/$file", $ignore);
                        if (is_array($dirTreeTemp))$dirTree = array_merge($dirTree, $dirTreeTemp);
                    }
                }
            }
            closedir($dh);

            return $dirTree;
        }
    }
 
     $subdir = "";
         if (isset($params['subdir'])) {
         $subdir = "/".trim($params['subdir'],"/");
     }



    $dirTree = getGalleryTreeAsArray('/images/Gallery'.$subdir);
    $gallerys = array();

    foreach ($dirTree as $k => $v) {
        $pfad = str_replace($config['uploads_path']."/images/Gallery/","",$k);
        $gallerys[$pfad] = $pfad." (".count($v)." Fotos)";
    }

    ksort($gallerys);

    $smarty->assign("galleryTreeArray",$gallerys);
    $smarty->assign("galleryTreeTitel",implode($delimiter, $gallerys));
    $smarty->assign("galleryTreePath",implode($delimiter, array_keys($gallerys)));

    if ($params['action'] == "url")
        return implode($delimiter, array_keys($gallerys));
    else
        return implode($delimiter, $gallerys);

}

$gallerys = getGalleryTree();
$smarty->assign('inputgallery', $this->CreateInputDropdown($id, 'gallery', $gallerys, -1, $gallery));

Die Function hab ich schon umbenannt in z.B. function getGalleryTree($params, &$smarty) etc.. aber so einfach geht das leider nicht.

Wenn ich die:
    $smarty->assign("galleryTreeArray",$gallerys);
    $smarty->assign("galleryTreeTitel",implode($delimiter, $gallerys));
    $smarty->assign("galleryTreePath",implode($delimiter, array_keys($gallerys)));

in der function lasse kommt:

Fatal error: Call to a member function assign() on a non-object in /home/httpd/vhost/httpdocs/modules/News/action.editnews.php on line 726

zusätzlich:

Warning: Missing argument 1 for getGalleryTree(), called in /home/httpd/vhosts/httpdocs/modules/News/action.editnews.php on line 737 and defined in /home/httpd/vhosts/httpdocs/modules/News/action.editnews.php on line 659

Warning: Missing argument 2 for getGalleryTree(), called in /home/httpd/vhosts/httpdocs/modules/News/action.editnews.php on line 737 and defined in /home/httpd/vhosts/httpdocs/modules/News/action.editnews.php on line 659

Danke für deine Hilfe, bin leider nicht so der php Spezialist.

Offline

#6 19. Januar 2012 11:38

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] News Modul selbsterstelltes Dropdown mit ID + Name vom Gallery Modul?

Kannst du mir deine gesamte "action.editnews.php" senden? Meine Mailadresse bekommst du via "Mein Blog" Link in der Signatur.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#7 20. Januar 2012 09:07

dalton
kennt CMS/ms
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re: [GELÖST] News Modul selbsterstelltes Dropdown mit ID + Name vom Gallery Modul?

nockenfell schrieb:

Kannst du mir deine gesamte "action.editnews.php" senden? Meine Mailadresse bekommst du via "Mein Blog" Link in der Signatur.

Hab dir eine Nachricht über das Forum geschrieben.

Offline

#8 20. Januar 2012 10:09

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] News Modul selbsterstelltes Dropdown mit ID + Name vom Gallery Modul?

dalton schrieb:
nockenfell schrieb:

Kannst du mir deine gesamte "action.editnews.php" senden? Meine Mailadresse bekommst du via "Mein Blog" Link in der Signatur.

Hab dir eine Nachricht über das Forum geschrieben.

Hab's bekommen. Bin bisher jedoch nicht dazu gekommen dir die entsprechenden Änderungen einzupflegen. Wird Abend bis du eine Antwort bekommst.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#9 20. Januar 2012 10:19

dalton
kennt CMS/ms
Ort: Schweiz
Registriert: 10. Januar 2011
Beiträge: 162
Webseite

Re: [GELÖST] News Modul selbsterstelltes Dropdown mit ID + Name vom Gallery Modul?

Okey kein Problem Danke smile

Offline

#10 20. Januar 2012 22:34

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] News Modul selbsterstelltes Dropdown mit ID + Name vom Gallery Modul?

Habe dir die modifizierte Datei geschickt.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline