Ankündigung

Einklappen
Keine Ankündigung bisher.

Bildupload und Auswahl im CC FrontendEdit nur ins jeweiligen Homeverzeichnis

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Bildupload und Auswahl im CC FrontendEdit nur ins jeweiligen Homeverzeichnis

    Hallo Allerseits,
    ich weiß gerade nicht wie ich es realisieren kann, dass der File-Picker im Feedit bei "Auswahl ändern" dem eingeloggten Mitglied nur seinen persönlichen Ordner anzeigt.
    Momentan sehe ich immer alle Ordner bei Auswahl ändern, die unterhalb des freigegebenen Filemounts von den Mitgliedergruppen-Einstellungen sind. Im Attribut selber kann man das ja auch nicht festlegen.
    Allerdings gibt es ja die Anweisung
    PHP-Code:
    $arrSettings['useHomeDir'
    . Würde diese denn das bewirken und wo genau muss ich das denn einsetzen??

    Vielen Dank


  • #2
    Hi,
    diese Einstellung dient nur dem Upload. Die Restriktion der Ordner-Auswahl kann nur manuell auf Mitglieder-Einstellungsebene erfolgen oder dynmaisch via DCA Manipulation. Siehe "path" Setting für die Felddefinition. https://docs.contao.org/dev/reference/dca/fields/
    http://www.premium-contao-themes.com

    Kommentar


    • #3
      Ich habe zu den Uploads auch noch eine Frage zur Sicherheit.
      Gibt es aus eurer Sicht Bedenken, Uploads von Video-Formate zuzulassen?

      Kommentar


      • #4
        Gibt es aus eurer Sicht Bedenken, Uploads von Video-Formate zuzulassen?
        kommt vielleicht auf den Inhalt der Videos an

        Ich wüsste nicht warum, ausser vielleicht Dateigrößen. Aber das ist eher eine Limitierung als ein Sicherheitsaspekt.
        http://www.premium-contao-themes.com

        Kommentar


        • #5
          Hi Tim,
          selbst wenn dies manuell für jedes Mitglied auf Mitglieder-Einstellungsebene gemacht wurde, kann das jeweilige Mitglied alle vorhanden Mitglieder-Ordner sehen.

          Was aber schon mal (glücklicherweise) nicht geht, ist diese auch zu öffnen... bzw. geht es doch wenn man ein zweites mal versucht an seine Fotos zu gelangen.

          Meinst Du, es würde auch gehen, das das Mitglied wirklich nur seinen eigenen Ordner zu sehen bekommt und nicht den ganzen Dateibaum der Mitgliederebene?
          Könntest Du mir bitte zeigen wie ich das mittels DCA Manipulation umsetzen kann?


          Besten Dank

          Kommentar


          • #6
            Ich habe es jetzt mal über das Fine-Uploader Modul versucht, welches im Handling ein bisschen schöner daher kommt, allerdings werden die Fotos nicht sofort "einsortiert". Sie gelangen zwar in den Ordner des neuen Mitgliedes, aber müssen doch erstmal noch mittels Picker aktiviert werden...
            Gibt es da vl. eine Möglichkeit das die Fotos dann auch gleich am Start sind ohne das sie erst noch ausgewählt werden müssen...

            Mit dem Content Element Downloads besteht ja die Möglichkeit Dateien aus dem Home-Verzeichnis eines Mitgliedes aufzulisten.

            Kommentar


            • #7
              selbst wenn dies manuell für jedes Mitglied auf Mitglieder-Einstellungsebene gemacht wurde, kann das jeweilige Mitglied alle vorhanden Mitglieder-Ordner sehen.
              Ist die Auswahl direkt auf das spezifische Mitglieder-Verzeichnis, werden nur ab diesem Ordner angezeigt. Ist ein übergeordneter Ordner ausgewählt werden alle enthaltenden Ordner angezeigt. Das Verhalten entspricht dem Contao-Standard.

              Ungetestet (ich weiss gerade nicht ob im FE die dcaconfig.php ausgeführt wird). Im Picker selbst sollte sie ausgeführt werden.

              if(FE_USER_LOGGED_IN)
              {
              $objMember = FrontendUser::getInstance();

              $GLOBALS['TL_DCA']['tl_files']['list']['sorting']['root'] = array( FilesModel::findByPk($objMember->homeDir)->path );
              }

              Das Fe-Editing merged bei einem angemeldeten Mitglied dessen Ordner zu der Auswahl des Filemounts. Falls keine Auswahl getroffen wurde, entspricht die Ordnerauswahl nur der des Mitglieder-Ordners.
              https://github.com/timgatzky/pct_cus...ndFile.php#L63


              aber müssen doch erstmal noch mittels Picker aktiviert werden...
              Es reicht nicht einfach eine Datei hochzuladen. Neue Resourcen müssen dem Dateisystem von Contao mitgeteilt werden. Die Dbafs::addResource Routine ist für jede Datei auszuführen. Die Sortierung erfolgt durch ein separates orderSRC_ Feld. Auch das müsste der Uploader unterstützen. Wende dich diesbezüglich bitte an den Ersteller des Moduls.
              Zuletzt geändert von Tim; 06.12.2021, 12:37.
              http://www.premium-contao-themes.com

              Kommentar


              • #8
                Hey, danke schon mal - bin jetzt erst dazu gekommen mal den Code in die, bei mir noch nicht vorhandenen, (im Verzeichnis /contao/dca) dcaconfig.php zu schreiben.

                Leider meckert der Contao-Manager ...


                In dcaconfig.php line 6:

                syntax error, unexpected ';'

                Kommentar


                • #9
                  Sorry, innerhalb der Array Klammer natürlich kein Semikolon (hinter -> path)
                  http://www.premium-contao-themes.com

                  Kommentar


                  • #10
                    Suuper, es funktioniert - DANKE!!

                    Es lag aber nicht am Semikolon, sondern am falschen Ordner ... die dcaconfig.php muss ja in /system/config rein und nicht in /contao/dca ...

                    Kommentar


                    • #11
                      Hallo Tim,
                      es ist schon eine Weile her und das kleine dcaconfig-script hatte bis jetzt auch gut funktioniert, aber mit der Umstellung auf PHP 8.1 ist leider die Mitglieder-Seite zum Profil-Editieren nicht mehr erreichbar und meine Versuche es wieder zum laufen zu bringen sind nur mittels löschen bzw. verschieben der dcaconfig-Datei gelungen.

                      Ich hatte Eclipse+alle Module upgedatet alle Templates angepasst und soweit funktionierte dann auch alles wie gewohnt, bis jetzt aber noch unter Contao 4.9.
                      Die Umstellung auf PHP 8.1 gab dann leider die erste Fehlermeldung bezüglich der dcaconfig-Datei auf der FrontendEdit-Seite im Mitgliederbereich.

                      Ich hatte dann noch versucht das Snippet in die /contao/dca/tl_member.php unterzubringen aber von dort wird es auch nicht ausgeführt bzw. sind jetzt wieder alle Ordner zu sehen.

                      Hier nochmal die dcaconfig.php, die so unter PHP 8 nicht mehr funktioniert:

                      PHP-Code:
                      if(FE_USER_LOGGED_IN)
                      {
                      $objMember FrontendUser::getInstance();

                      $GLOBALS['TL_DCA']['tl_files']['list']['sorting']['root'] = array( FilesModel::findByPk($objMember->homeDir)->path )


                      Vielleicht hast Du ja noch eine Idee wie ich es auch unter PHP 8.1 zum laufen bekomme kann...
                      Zuletzt geändert von Flex; 27.10.2023, 10:49.

                      Kommentar


                      • #12
                        Ich dachte ich hätte es jetzt hinbekommen indem ich "FE_USER_LOGGED_IN" mit einem Wert definiert hatte:

                        PHP-Code:
                        define('Contao\FE_USER_LOGGED_IN'true); 
                        Aber das ging dann nur im Frontend-Modus und im Backend kam ich dann nicht mehr auf die Dateiverwaltung... und ausserdem soll es (laut Contao-Forum) auch nicht verwendet werden.

                        Nochmal dann mein FRAGE:
                        Woran kann es liegen das unter PHP8 der Zugriff nichgt mehr mittels dem dcaconfig-script funktioniert und gibt es event. noch eine andere Methode??
                        Zuletzt geändert von Flex; 30.10.2023, 17:08.

                        Kommentar

                        Lädt...
                        X