Ergebnis 1 bis 8 von 8

Thema: eigenes Modul geht lokal, online jedoch nicht

  1. #1
    Contao-Fan Avatar von lomex
    Registriert seit
    03.07.2009.
    Ort
    Werne
    Beiträge
    791
    User beschenken
    Wunschliste

    Standard eigenes Modul geht lokal, online jedoch nicht

    Hallo Leute,

    habe gerade ein neues Modul geschrieben. Die Umsetzung eines neuen Content-Sliders von Ryan Florence. Ja, noch einer. Habe einfach ein paar mehr Funktionen / API's benötigt.

    Zu meinem Problem:
    Lokal läuft das Modul (Mac, PHP 5.3.6 und MySQL 5.1 ohne Mamp). Ich kann also (ähnlich der Slideshow2) eine Slideshow anlegen, Elemente hinzufügen und ein Modul mit Auswahl der Slideshow erstellen. Im Artikel wird dann das Modul eingebaut.

    Und genau da hakt es scheinbar online. Es kommt zwar keine Fehlermeldung, aber das Modul zeigt nichts an ('be_wildcard') in der Artikelübersicht (Auflistung der Elemente). Auch im Frontend kommt nichts an. Lokal wie auch online habe ich Contao 2.10.3. Contao-Check lief durch. Am Server liegt es auch nicht (ist meiner). Wenn ich beim Artikel auf Modul bearbeiten klicke, sieht man ordnungsgemäß das ausgewählte Modul.

    Es ist verrückt. Hat jemand eine Idee, woran es liegen kann?

    olli

  2. #2
    AG CMS-Garden
    Contao-Urgestein
    Avatar von lindesbs
    Registriert seit
    05.06.2009.
    Ort
    Oer-Erkenschwick
    Beiträge
    4.154
    Partner-ID
    keine
    User beschenken
    Wunschliste

    Standard

    Ohne Code zu sehen hats selbst meine Glaskugel schwer
    von Willi Voltz aus PR 500: Henry George sagte einmal: »Kultur ist Zusammenarbeit.«


    Contao-Hosting: begeisterter Uberspace-Nutzer

  3. #3
    Contao-Fan Avatar von lomex
    Registriert seit
    03.07.2009.
    Ort
    Werne
    Beiträge
    791
    User beschenken
    Wunschliste

    Standard

    Ja. Sorry.

    system/modules/rfslideshow/ModuleRFSlideshow.php
    PHP-Code:
    <?php if (!defined('TL_ROOT')) die('You can not access this file directly!');

    class 
    ModuleRFSlideshow extends Module
    {

        protected 
    $strTemplate 'mod_rfslideshow';


        
    /**
         * Display a wildcard in the back end
         * @return string
         */
        
    public function generate()
        {
            if (
    TL_MODE == 'BE')
            {
                
    $objTemplate = new BackendTemplate('be_wildcard');

                
    $objTemplate->wildcard '### Slideshow by Ryan Florence ###';
                
    $objTemplate->id $this->id;
                
    $objTemplate->link $this->name;

                return 
    $objTemplate->parse();
            }

            return 
    parent::generate();
        }


        
    /**
         * Generate module
         */
        
    protected function compile()
        {
            
    $this->import('Database');
            
    $objDB $this->Database->prepare('SELECT * FROM tl_rfslideshow WHERE id = ?')->execute($this->arrData['rfslideshow']);
            
    $this->Template->transition $objDB->transition;
            
    $this->Template->duration $objDB->duration;
            
    $this->Template->delay $objDB->delay;
            
    $this->Template->autoplay = ($objDB->autoplay 1) ? 'true' 'false';


            
    $objDB $this->Database->prepare('SELECT * FROM tl_rfslideshow_elements WHERE pid = ? ORDER BY sorting ASC')->execute($this->arrData['rfslideshow']);
            
    $arrElements = array();
            
    $i=1;
            while(
    $objDB->next())
            {
                
    $arrElements[$i]['title'] = $objDB->title;
                
    $arrElements[$i]['img']   = $objDB->singleSRC;
                
    $arrElements[$i]['hovertext'] = $objDB->hovertext;
                
    $arrElements[$i]['title'] = $objDB->title;
                
    $arrElements[$i]['menutitle'] = $objDB->menutitle;
                
    $i++;
            }
            
    $this->Template->Elements $arrElements;
        }
    }

    ?>
    system/modules/rfslideshow/config/config.php
    PHP-Code:
    <?php if (!defined('TL_ROOT')) die('You can not access this file directly!');

    $GLOBALS['TL_JAVASCRIPT'][] = 'system/modules/rfslideshow/html/Loop.js';
    $GLOBALS['TL_JAVASCRIPT'][] = 'system/modules/rfslideshow/html/SlideShow.js';
    //$GLOBALS['TL_CSS']['slideshow'] = 'system/modules/slideshow/html/slideshow.css';


    /**
     * Backend end modules
     */
    array_insert($GLOBALS['BE_MOD']['content'], 5, array
        (
            
    'rfslideshow'  => array
                (
                        
    'tables'  => array('tl_rfslideshow','tl_rfslideshow_elements')
                )
        ));

    /**
     * Front end modules
     */

    array_insert($GLOBALS['FE_MOD']['miscellaneous'],0, array
            (
                
    'rfslideshow'  => 'ModuleRFSlideShow'
            
    )
        );

    ?>
    system/modules/rfslideshow/config/database.sql
    PHP-Code:
    -- ********************************************************
    -- *                                                      *
    -- * 
    IMPORTANT NOTE                                       *
    -- *                                                      *
    -- * Do 
    not import this file manually but use the Contao  *
    -- * 
    install tool to create and maintain database tables! *
    -- *                                                      *
    -- ********************************************************

    -- 
    -- 
    Table `tl_news`
    -- 

    CREATE TABLE `tl_rfslideshow` (
      `
    idint(10unsigned NOT NULL auto_increment,
      `
    sortingint(10unsigned NOT NULL default '0',
      `
    tstampint(10unsigned NOT NULL default '0',
      `
    titlevarchar(255NOT NULL default '',
      `
    durationint(10unsigned NOT NULL default '800',
      `
    delayint(10unsigned NOT NULL default '4000',
      `
    autoplaychar(1NOT NULL default '',
      `
    infoboxchar(1NOT NULL default '',
      `
    transitionvarchar(32NOT NULL default 'fade',
      
    PRIMARY KEY  (`id`)
    ENGINE=MyISAM DEFAULT CHARSET=utf8;


    CREATE TABLE `tl_rfslideshow_elements` (
      `
    idint(10unsigned NOT NULL auto_increment,
      `
    pidint(10unsigned NOT NULL default '0',
      `
    sortingint(10unsigned NOT NULL default '0',
      `
    tstampint(10unsigned NOT NULL default '0',
      `
    titlevarchar(255NOT NULL default '',
      `
    menutitlevarchar(255NOT NULL default '',
      `
    hovertexttext NULL,
      `
    singleSRCvarchar(255NOT NULL default '',
      
    PRIMARY KEY  (`id`),
      
    KEY `pid` (`pid`),
    ENGINE=MyISAM DEFAULT CHARSET=utf8;


    CREATE TABLE `tl_module` (
      `
    rfslideshowint(10unsigned NOT NULL default '0',
    ENGINE=MyISAM DEFAULT CHARSET=utf8
    Die DCA's auch?

    olli

  4. #4
    Contao-Fan Avatar von lomex
    Registriert seit
    03.07.2009.
    Ort
    Werne
    Beiträge
    791
    User beschenken
    Wunschliste

    Standard

    hier vielleicht noch die dca tl_module.php

    PHP-Code:
    <?php if (!defined('TL_ROOT')) die('You can not access this file directly!');

    /**
     * Add a palette to tl_module
     */
    $GLOBALS['TL_DCA']['tl_module']['palettes']['rfslideshow'] = '{title_legend},name,type;{config_legend},rfslideshow;{expert_legend:hide},cssID,space';

    /**
     * Add fields to tl_module
     */
    $GLOBALS['TL_DCA']['tl_module']['fields']['rfslideshow'] = array
    (
        
    'label'                   => &$GLOBALS['TL_LANG']['tl_module']['rfslideshow'],
        
    'exclude'                 => true,
        
    'inputType'               => 'radio',
        
    'foreignKey'              => 'tl_rfslideshow.title',
        
    'eval'                    => array('mandatory'=>true)
    );

    ?>
    Bleiben nur noch die tl_rfslideshow.php und tl_rfslideshow_elements.php. Aber das Backend-Modul geht ja. Und das Frontend-Modul anlegen auch.

  5. #5
    Contao-Fan Avatar von lomex
    Registriert seit
    03.07.2009.
    Ort
    Werne
    Beiträge
    791
    User beschenken
    Wunschliste

    Standard

    Falls jemand Lust hat, das Modul mal testweise zu installieren. Das Modul ist zwar theoretisch lauffähig, jedoch noch ohne CSS.
    Angehängte Dateien Angehängte Dateien

  6. #6
    Contao-Fan
    Registriert seit
    07.07.2011.
    Ort
    Kiel
    Beiträge
    254
    User beschenken
    Wunschliste

    Standard

    Zuerst die gute Nachricht: bei mir läuft es.
    Nun die schlechte: Die Effekte arbeiten nicht sauber, habe testweise einen Slider mit 2 Bildern angelegt und beim Effekt erscheint das zweite Bild zusätzlich unter dem Slider. Der Hover-Text erscheint unter dem Bild usw.

    Bemerkenswert, auf meinem Testsystem 2.10.2 ist zusätzlich jQuery installiert und deine Erweiterung kommt damit klar (was nicht immer der Fall ist)
    Geändert von Vollpfosten (04.12.2011 um 22:22 Uhr)

  7. #7
    Contao-Fan Avatar von lomex
    Registriert seit
    03.07.2009.
    Ort
    Werne
    Beiträge
    791
    User beschenken
    Wunschliste

    Standard

    Das Modul ist noch nicht fertig. Die CSS-Anweisungen sind z.B. noch nicht im Modul enthalten. Ohne die kann es noch nicht gehen. Aber danke für den Test. Ich verstehe die Welt nicht mehr. Habe meine komplette Seite, frische Contao-Installation mit Music-Template und dem Modul auf meinen Server gepackt. Lokal geht, online nicht. Meine anderen Module haken ja auch nicht.

  8. #8
    Contao-Fan Avatar von Schlauchbeutelmaschine
    Registriert seit
    16.06.2009.
    Ort
    Wiesbaden
    Beiträge
    668

    Standard

    Ich kann dir leider nicht sagen warum es online nicht läuft,
    aber wenn es auch bei anderen läuft, einfach nochmal die Extension löschen, Temp Dateien löschen
    und neu installieren.

    Was mir außerdem auffällt ist das du den Bildpfad direkt ins Template übergibst.
    Wenn jetzt jemand Dateien ändert ohne die Slideshow neu abzuspeichern,
    kriegst du eine Fehlermeldung. Ich würde es daher jedesmal auslesen,
    so kannst du dann auch Fehler abfangen.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •