Beiträge von Terra

    Und die Komponenten einzeln nacheinander von Hand installieren - wie oft macht man das denn schon in einem Intranet?


    Im Moment oft. :D Ein bis zweimal am Tag. Zum ausprobieren und programmieren, nehme ich nicht den Intranetserver. Es wäre ja nur ein Package zu installieren, was dann alle anderen Komponenten beinhaltet.


    Im Moment werde ich erst einmal die angefangen Sachen fertig machen. Wenn die dann soweit sind, werde ich die Komponente nach ihren Aufgaben aufteilen. Mir geht es im Moment um die Planung.


    Viele Dateien sind an sich nichts schlechtes


    Finde ich auch. Mit den verschiedenen Komponenten möchte ich es meinen Nachfolger einfacher machen sich einzuarbeiten.

    Ich meine mit unübersichtlich zu viele Dateien. Ohne Grafiken sind es fast 300. Im Frontend ist es schön übersichtlich, da dort fast nur Ausgaben gemacht werden, habe ich die Listen und Detail-Ausgabe zu einer View mit verschiedenen Templates zusammengefasst. Im Backend gelingt mir das nicht so richtig. Da ist halt eine View für die Übersicht-Tabelle und eine View für das Eingabeformular da.


    Es ist ein Intranet. Unter anderem ist eine Verwaltung der Mitarbeiter und Teilnehmer vorgesehen, Verwaltung des Büromaterial, Bestellung von Mittagessen, Verwaltung der Kaffeekasse, Telefonverzeichnis, etc. Wegen spezieller Anforderungen, habe ich dafür keine fertigen Komponenten gefunden.


    Zum Beispiel: Die Kaffeekasse wird von Teilnehmern verwaltet. Da diese in Regelmäßigen Abständen wechseln, soll bei jeden Vorgang der dort gespeichert wird der Teilnehmer mit gespeichert werden. So ergibt sich, dass immer eine Abhängigkeit zur Teilnehmer-Tabelle besteht.


    Meine Überlegung ist:
    - Teilnehmer und Mitarbeiter zu einer Komponente zusammenfassen
    - Büromaterial-Verwaltung als Einzelkomponente
    - Bestellung des Essens und die Kaffeekasse als eine Komponente


    An eine Library habe ich auch schon gedacht. Aber wegen 2 oder 3 Helper-Klassen denke ich, wäre das überdimensioniert. In den Helper-Klassen sind hauptsächlich Methoden implementiert, die wiederkehrenden HTML-Code erzeugen. Zum Beispiel habe ich einen Helper der mir Bilder einfügt. Den brauche ich beispielsweise bei den Mitarbeitern für ihre Fotos und beim Büromaterial für die Abbildungen. Da wüsste ich nicht, wie ich das durch Vererbung lösen sollte.


    Ich muss dazusagen, die letzten 6 Jahre habe ich mit Joomla nicht mehr gearbeitet. Es ist vieles anders geworden, dafür einfacher.

    Hallo,


    ich hoffe dass hier im Forum mit meiner Frage richtig bin.


    Die Benutzer lege ich per Skript an. Das funktioniert soweit. Da ich den Benutzern ein Standard-Passwort vergebe möchte ich, dass sie beim 1. Login ihr Passwort ändern und dass sie dort auch die Bestimmungen der Seite akzeptieren. Gibt es die Möglichkeit dies mit der Standard-Benutzer-Verwaltung von Joomla umzusetzen? Wenn ja, wie? Wenn nein, wisst ihr eine Komponente / ein Plugin, die das kann?


    Einen schönen Sonntag Nachmittag
    René Majewski

    Hallo,


    da meine Komponente mittlerweile sehr groß und unübersichtlich geworden ist, würde ich diese gerne aufteilen. Dabei tauchen ein paar Fragen auf.

    • Ich habe einige Helper die ich dann in mehreren Komponenten bräuchte. Gibt es da eine andere Möglichkeit als diese in einer Komponente zu hinterlegen und mit folgenden Code einzubinden?

      Code
      JLoader::register('HelperClass', JPATH_ADMINISTRATOR . '/[com_name]/helpers/helper.php');


      Wie handhabt ihr solche Sachen?

    • Werden die Komponenten in der Reihenfolge installiert, in der sie in der Manifest-Datei der Package-Datei angegeben werden? Oder werden sie in einer beliebigen Reihenfolge installiert? Ich frage deshalb, weil zwei Komponenten jeweils einen Fremdschlüssel auf die Datenbank-Tabelle einer anderen Komponente haben. Oder ist es sinnvoller ohne Fremdschlüssel zu arbeiten? Wie macht ihr das?

    Ich wünsche euch einen sonnigen Sonntag-Nachmittag.
    René Majewski

    Danke dir Christiane!


    Das mit der Ausgabe der 1 hat sich auch geklärt. Ich hatte zum testen was ausgegeben, was ich vergessen hatte zu löschen. Nun wird auch wieder die normale Ausgabe angezeigt.


    Das mit dem quoten und dem Casten steht auf meiner ToDo-Liste, da ich noch mehr entdeckt habe, wo ich das nicht so gemacht habe. :)

    Hallo Christiane,


    vielen DANK für die Anregung. Ich hatte versucht das über die save-Methode des Controllers zu lösen, bevor ich deinen Beitrag gelesen hatte. Über das Model ist es ja einfacher, da das Daten-Array direkt übergeben wird. Manchmal habe ich eine lange Leitung. ;) Hätte ja gleich ans Model denken sollen.


    Das was ich nicht verstehe ist, dass als Speichern-Nachricht nur eine 1 angezeigt. Meine save-Methode sieht nun so aus:

    Code
    public function save($data) {        if (parent::save($data)) {            $db = JFactory::getDbo();            $id = $data['id'];            if ($id <= 0) {                $id = $db->lastInsertId();            }            foreach($data['subform'] as $data) {                $record = new stdClass();                $record->training_id = $id;                $record->room_id = $data['room_id'];                if ($data['id'] > 0) {                    $record->id = $data['id'];                    $result = $db->updateObject('#__btzleipzig_training_room', $record);                } else {                    $result = $db->insertObject('#__btzleipzig_training_room', $record);                }                if (!$result) {                    return JError::raiseError(404, JText::_('COM_BTZLEIPZIG_TRAINING_ROOM_NOT_INSERT'));                }            }            return true;        }        return false;    }


    Das laden der Daten war dann wieder einfach. Ich habe einfach die loadFormData-Methode erweitert:

    Vielen Dank für deinen Hinweis und entschuldige bitte, dass ich mich nicht ganz präzise ausgedrückt habe.
    Ich weiß nicht an welcher Stelle ich das durchlaufen des Arrays implementieren muss. Im Controller, im View oder im Model? Welche Funktion muss ich dazu überschreiben?

    Hallo,


    ich entwickle gerade eine Komponente, wo Informationen für Trainingsbereiche eingegeben werden. Um zu den Trainingsbereichen Räume zuzuordnen, habe ich gedacht das wiederkehrende Subform-Feld einzusetzen. Es klappt wunderbar das ich im Formular mehre Räume hinzufügen kann.


    Ich habe folgende Tabellen:


    training

    • id
    • name
    • description

    room

    • id
    • room
    • description

    training_room

    • id
    • training_id
    • room_id

    Nun meine Frage: Wie kann ich die eingegebenen Daten aus dem Subform-Feldern in die Datenbank speichern? Die Daten aus dem Subform sollen in die Tabelle training_room gespeichert werden.


    Schon einmal vielen Dank für eure Antworten.