Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 40 von 43

Thema: Mitgliederfelder anzeigen, aber NICHT editieren

  1. #1
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Frage Mitgliederfelder anzeigen, aber NICHT editieren

    Hallo,

    ich brauche mal wieder einen Rat oder Tip von euch.

    Ich habe die normalen Felder der Mitglieder um die Felder aus xtmembers 2.0.3 in einer Contao 2.11.6-Installation erweitert.

    Leider habe ich es hier nicht geschafft, dem eingeloggten Mitglied das Feld Anzuzeigen, ihm aber das Editieren zu verwehren.
    Gibt es dort eine Konfigurationsmöglichkeit ?

    Entsprechend hab ich testweise das Feld "notes" via Insertag eingebunden, bekomme aber leider den dort hinterlegten HTML-Code mit ausgegeben.
    Wo kann ich einhaken mit der Text zwar als p formatiert wird, jedoch die HTML-Tags nicht als Text angezeigt werden !?

    Danke vorab für eure Mühe.

    Gruß,

    Samuell
    Geändert von xchs (02.11.2012 um 12:40 Uhr) Grund: Typo

  2. #2
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Fehler

    Hat niemand eine Idee oder einen Tip ?

  3. #3
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.583
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Welches Modul verwendest Du denn für das Anzeigen der Mitgliederdaten?
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  4. #4
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Standard

    Zuerst hab ich alle zur Verfügung stehenden Module im Mitgleiderbereich ausprobiert, es aber nicht hinbekommen, dass der nutzer nur die Feldinhalte sieht, diese aber nicht editieren kann.
    Ich schließe aber nicht aus, schlicht doch irgendwo etwas übersehen zu haben.

    Danach hab ich den Inserttag einfach über ein Textfeld, bzw auch über ein HTML-Modul eingebunden.
    Hier hab ich allerdings das oben ausgeführte Problem, dass <p> Tags direkt als Text angezeigt werden.

  5. #5
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.583
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Würde es ausreichen, die betreffenden Felder über HTML-Attribute wie readonly oder disabled zu deaktivieren?
    Geändert von xchs (02.11.2012 um 09:53 Uhr)
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  6. #6
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Standard

    CSS ist doch eigentlich nur das Aussehen.
    Aber im Zusammenhand mit HTML5 hab ich diese Begriffe schonmal irgendwo gelesen. Das steht und fällt also mit der Browserkompatibilität.

    Primär frag ich mich ob es nicht doch irgendwie möglich ist den Inserttag zu überreden p-Tags nicht als Text auszugeben.

  7. #7
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.583
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von Samuell Beitrag anzeigen
    CSS ist doch eigentlich nur das Aussehen.
    Aber im Zusammenhand mit HTML5 hab ich diese Begriffe schonmal irgendwo gelesen.
    Hast Du es denn probiert? Das ist nichts HTML5-spezifisches.

    Zitat Zitat von Samuell Beitrag anzeigen
    Das steht und fällt also mit der Browserkompatibilität.
    Nein.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  8. #8
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Standard

    Bisher kenn ich es nur so, dass im Formular, bzw. im input-Tag disabled stehen muss.

    Solltest du eine reine CSS-Lösung ohne diesen Zusatz kennen, freu ich mich noch was dazu zu lernen und hoff Du hast ein Beispiel parat.

  9. #9
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.583
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ich schau mir das gleich noch im Detail an. Aber nochmals auf meine Frage zurückzukommen: Welches Frontend-Modul hast Du nun für die Ausgabe der Mitgliederdaten verwendet?
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  10. #10
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Standard

    Aktuell habei chein Inhaltselement vom Type HTML eingebunden, dass den Inserttag {{user::notes}} enthält.
    Alles andere ist aktuell nicht eingebunden.

    Danke übrigens schonmal vorab, dass Du Dir so viel Zeit nimmst und Dich um meine Fragestellung über mehrere Posts hinweg kümmerst :-)

  11. #11
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.583
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Soderla, ich hab's jetzt folgendermaßen versucht:
    • ein Frontend-Modul vom Typ "Persönliche Daten" erstellt
    • in den Moduleinstellungen unter "Editierbare Felder" die gewünschten Felder ausgewählt

    Um nun beispielsweise die beiden Felder für "Vorname" und "Nachname" zu sperren, habe ich in der "system/config/dcaconfig.php" die folgenden Einträge ergänzt:
    PHP-Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['firstname']['eval']['disabled'] = true;
    $GLOBALS['TL_DCA']['tl_member']['fields']['lastname']['eval']['disabled'] = true
    Den beiden Feldern wird dann automatisch das Element-Attribut "disabled" zugewiesen.

    Du kannst selbstverständlich noch weitere Einträge ergänzen und den jeweils passenden Feldnamen einsetzen.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  12. #12
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Standard

    Ok. Danke für den Hinweis. Ich werd mir das am WE mal anschauen.

    Bleibt trotzdem noch die Frage wo man ansetzen muss um diesen Inserttag "richtig" auszugeben, ohne dass er mir die HTML-Tags anzeigt !?
    Hast Du dazu auch noch eine Idee ?

  13. #13
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.583
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ist "notes" ein Feld, das durch die Erweiterung ergänzt wird? Weil [xtmembers] habe ich zurzeit nicht installiert.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  14. #14
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Standard

    Ja. Das ist ein Textarea für Notizen, dass durch xtmembers hinzugefügt wird.

  15. #15
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.583
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    In den {{user::*}} Inserttags werden mit Hilfe der Methode specialchars() Sonderzeichen usw. im generierten Output entsprechend ersetzt, d.h. aus Deinem Absatz im Feld "Notizen" wird dann beispielsweise
    HTML-Code:
    &lt;p&gt;Das ist eine Notiz.&lt;/p&gt;
    Die Umwandlung erfolgt in der Controller::replaceInsertTags() und wurde aufgrund des Tickets #1890 eingebaut.

    Müsste mir aber erst genauer anschauen, ob man das irgendwie abstellen oder umgehen kann.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  16. #16
    Contao-Nutzer
    Registriert seit
    06.11.2012.
    Beiträge
    7

    Standard Felder auch im BE deaktiviert

    Zitat Zitat von xchs Beitrag anzeigen
    Soderla, ich hab's jetzt folgendermaßen versucht:
    • ein Frontend-Modul vom Typ "Persönliche Daten" erstellt
    • in den Moduleinstellungen unter "Editierbare Felder" die gewünschten Felder ausgewählt

    Um nun beispielsweise die beiden Felder für "Vorname" und "Nachname" zu sperren, habe ich in der "system/config/dcaconfig.php" die folgenden Einträge ergänzt:
    PHP-Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['firstname']['eval']['disabled'] = true;
    $GLOBALS['TL_DCA']['tl_member']['fields']['lastname']['eval']['disabled'] = true
    Den beiden Feldern wird dann automatisch das Element-Attribut "disabled" zugewiesen.

    Du kannst selbstverständlich noch weitere Einträge ergänzen und den jeweils passenden Feldnamen einsetzen.
    Hallo Leute,

    ich habe das selbe Problem und habe es mit dem Code von xchs versucht. Das hat auch wunderbar funktioniert, allerdings sind die Felder dann auch im Backend deaktiviert und nicht beschreibbar. Hat jemand eine Idee, wie ich die Änderung auf das Frontend beschränke?

    Vielen Dank.

  17. #17
    Contao-Fan Avatar von melzebub
    Registriert seit
    21.05.2010.
    Ort
    Lüneburg
    Beiträge
    292
    User beschenken
    Wunschliste

    Standard

    Code:
    if (TL_MODE == 'FE') {
    
    code...
    
    }
    Contao Webentwickler / Webdesigner aus Lüneburg - slash-works.de
    kein Support per PN. Fragen gehören ins Forum.

  18. #18
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Standard

    @melzebub: Kannst Du das etwas näher erläufern wo Du genau meinst, dass man das einsetzen soll ?

    Danke vorab.

    Gruß,

    Samuell

  19. #19
    Contao-Fan Avatar von melzebub
    Registriert seit
    21.05.2010.
    Ort
    Lüneburg
    Beiträge
    292
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von redmarketing Beitrag anzeigen
    Hallo Leute,

    ich habe das selbe Problem und habe es mit dem Code von xchs versucht. Das hat auch wunderbar funktioniert, allerdings sind die Felder dann auch im Backend deaktiviert und nicht beschreibbar. Hat jemand eine Idee, wie ich die Änderung auf das Frontend beschränke?

    Vielen Dank.
    Bezog sich hierauf. Also der Code würde dann so aussehen:

    PHP-Code:
    if (TL_MODE == 'FE') {
    $GLOBALS['TL_DCA']['tl_member']['fields']['firstname']['eval']['disabled'] = true
    $GLOBALS['TL_DCA']['tl_member']['fields']['lastname']['eval']['disabled'] = true;  

    Contao Webentwickler / Webdesigner aus Lüneburg - slash-works.de
    kein Support per PN. Fragen gehören ins Forum.

  20. #20
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Gesicht zeigt die Zunge

    Hallo,
    habe eure Vorschläge druchgetestet.

    Leider gibt er mir bei dem Eintrag "disabled" trotzdem den Editor mit Inhalt.
    Allerdings wird die Änderung nicht gespeichert.

    Das bringt mich leider kein Stück weiter.

    Hat noch jemand eine Idee wie ich den Inhalt des Feldes Feld tl_members::notes, dass aus der Erweiterung xtmembers kommt in einen Artikel einbinden kann, ohne das das betreffende Mitglied mehr als die Inhalt sieht ?

    Danke vorab für eure Mühe.

    Gruß,

    Samuell

  21. #21
    Contao-Fan Avatar von melzebub
    Registriert seit
    21.05.2010.
    Ort
    Lüneburg
    Beiträge
    292
    User beschenken
    Wunschliste

    Standard

    disabled bei einer Textarea? Oder habe ich das falsch verstanden? Versuchs mal mit readonly="readonly" als Attribut.
    edit:

    Hier mal ein Beispiel - http://jsfiddle.net/55Aav/

    Gruß
    Stefan
    Geändert von melzebub (28.11.2012 um 22:53 Uhr)
    Contao Webentwickler / Webdesigner aus Lüneburg - slash-works.de
    kein Support per PN. Fragen gehören ins Forum.

  22. #22
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Standard

    Ja, genau. Ist ein Textarea.

    Leider gibt er den Editor immer noch mit aus.

    Werd den nun Übergangsweise mit CSS ausblenden. Aber das ist definitiv eine extrem unschöne Lösung.

    Hoff es findet sich noch eine bessere Lösung um vllt. doch den Insert-Tag zu nutzen oder so.


    @Melze: Dich muss ich morgen sowieso wegen eines anderen Themas noch anrufen :-)

  23. #23
    Contao-Fan Avatar von melzebub
    Registriert seit
    21.05.2010.
    Ort
    Lüneburg
    Beiträge
    292
    User beschenken
    Wunschliste

    Standard

    Ach, da habe ich dich falsch verstanden. Du willst also die Textarea ohne Editor haben. Das wäre dann wohl

    PHP-Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['notes']['eval']['rte'] = ''
    Contao Webentwickler / Webdesigner aus Lüneburg - slash-works.de
    kein Support per PN. Fragen gehören ins Forum.

  24. #24
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Standard

    Eigentlich will ich einfach nur den Inhalt des Feldes haben. Ohne Textarea oder sonstiges.
    Aber anscheinend gibt es dafür keine schöne Lösung.

  25. #25
    Contao-Fan Avatar von melzebub
    Registriert seit
    21.05.2010.
    Ort
    Lüneburg
    Beiträge
    292
    User beschenken
    Wunschliste

    Standard

    Im Frontend? Benutz doch einfach das Auflisten Modul. Da kriegste dann reinen Text raus.
    Contao Webentwickler / Webdesigner aus Lüneburg - slash-works.de
    kein Support per PN. Fragen gehören ins Forum.

  26. #26
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Fehler

    Danke. Das schaut schonmal ziemlich gut aus.
    Hab diesem Modul nie sonderlich viel Beachtung geschenkt.

    So hab ich glatt mal wieder was dazu gelernt :-)

  27. #27
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Standard

    Nun muss ich leider nochm la fragen wie ich die Bedingung beim Auflistungsmodul setzen muss, dass er nur das Notice-Feld des aktuell angemeldeten Benutzers abfragt.

    Danke abermals vorab für eure Mühe.

  28. #28
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Frage

    Hat niemand eine Idee wie ich die Bedingung des Auflistungsmodul setzen kann, damit der angemeldete Nutzer nur sein eigenes Feld und kein anderes sieht ?

    Danke vorab.

  29. #29
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard

    Hi.

    Nutze Inserttags oder das Modul Auflistung. ich mache es mit dem Modul. Musst allerdings etwas SQl und am besten auch Zugriff auf die Datenbank haben, damit du weißt was angezeigt werden kann. Die Tabelle ist: tl_members.


    Edit: Sorry, was überlesen ...

    Die frage ist, wie man herausbekommt wer gerade angemeldet ist. Also dessen ID. Hmmmm. ???
    {{user::username}} oder ähnliches wird man darin wohl kaum nutzen können ...
    Geändert von Toad (27.12.2012 um 17:36 Uhr)
    while(!asleep()) {sheep++;}

  30. #30
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard

    Code:
    $this->import("FrontendUser","User"); 
    echo $this->User->id;
    Damit kann man wohl die ID ermitteln. Bringt aber auch nichts. Wie kriegt man sie von dort ins Modul?

    Sorry, passe.
    while(!asleep()) {sheep++;}

  31. #31
    Alter Contao-Hase
    Registriert seit
    20.03.2010.
    Ort
    Hannover
    Beiträge
    1.041

    Fehler

    @ Toad: Ich nutze das Auflistungsmodul aktuell bereits und fragte in diesem Fall ganz Konkret wie eine Bedingung für mein Vorhaben aussehen muss.
    Leider bringt mich Dein Kommentar kein Stück weiter.

    Ich habe nun folgendes als Bedingung eingefügt, dass zu funktionieren scheint

    username="{{user::username}}"

    Falls noch jemand eine bessere Idee hat wie ich einem Mitglied die Daten aus SEINEM Feld tl_members:note (Feld kommt aus xtmembers) anzeigen lasse, der möge mir bitte auf die Sprünge helfen.

    Danke vorab für eure Mühe.
    Geändert von Samuell (27.12.2012 um 18:00 Uhr)

  32. #32
    Contao-Nutzer
    Registriert seit
    30.11.2012.
    Beiträge
    34

    Standard

    Ich habe derzeit folgenden Aufbau:
    Textmodul mit einer Tabelle, erste Spalte gibt an was ausgegeben wird 2. was hinterlegt ist. Also zB:
    Benutzername: {{user::username}}

    jetzt gibt es aber Felder (wie "Geburtstag", "Geschlecht" "E-Mails erlauben" oder "Handynummer") zu denen ich den Code nicht kenne und auch nicht im Contao Handbuch finde. Kann mir jemand verraten wie ich das ähnlich einfach ausgeben kann?

  33. #33
    Contao-Urgestein
    Registriert seit
    30.01.2011.
    Ort
    Stuttgart
    Beiträge
    4.138

    Standard

    villeicht ist es eine bessere Wahl die Tabelle per Auflistungsmodul zu erzeugen.

  34. #34
    Contao-Nutzer
    Registriert seit
    30.11.2012.
    Beiträge
    34

    Standard

    Wo kann ich das besagte "Auflistenmodul" finden? ich habe da nichts dementsprechendes unter "Modul" bei der Artikelart

  35. #35
    Contao-Nutzer
    Registriert seit
    30.11.2012.
    Beiträge
    34

    Standard

    Ich schätze mal ihr habt den Elementtyp "Aufzählung" gemeint, wie kann ich damit arbeiten? ich würde wie gesagt gerne eine Tabellarische Ansicht haben in etwa so:

    Benutzername: testuser
    Vorname: Test
    Nachname: User
    Geburtstag 01.01.2000

    das ganze auch mit den Zusatzfeldern aus der Xtmembers Erweiterung

  36. #36
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard

    Hast du Zugriff aauf deine Datenbank per phpMyAdmin o.ä.?

    Die tabelle die du dir anzeigen lassen musst heißt: tl_members
    Schau dir an wie die Felder heißen und lasse sie dir anzeigen wie du es magst.

    Beispielsweise kannst du als Tabelle "tl_members"
    und als Felder "username,gender" angeben.
    damit hast du schon mal was auf dem Bildschirm.

    im übrigen ist dein Beispiel eher keine tabellarische Ansicht, sonder ein Feld. Tabellarisch wäre:

    Vorname Nachname Geb. Datum
    Otto Walkes 01.04.1950
    Balder Hugo 22.12.2012
    ...

    Aber alles ist möglich. Tabelle am einfachsten, denn das Template ist schon da.
    Geändert von Toad (14.01.2013 um 12:15 Uhr)
    while(!asleep()) {sheep++;}

  37. #37
    Contao-Nutzer
    Registriert seit
    30.11.2012.
    Beiträge
    34

    Standard

    Ja Zugriff auf die Datenbank habe ich mittels phpMyAdmin, kenne mich damit aber nicht aus.
    Könntest du mir die Zeilen auflisten (beispielhaft, die Spaltennamen kann ich eh selber ändern) die ich im Auflistenmodul eingeben muss um die Daten auszugeben - habe leider keine SQL Kenntnisse....

  38. #38

  39. #39
    Contao-Nutzer
    Registriert seit
    30.11.2012.
    Beiträge
    34

    Standard

    was hilft mir deine Tabelle? ich muss das doch in die Zeile im Backend eingeben und habe keine Ahnung was ich da eingeben soll
    Folgende Felder würde ich gerne wie oben beschrieben in einer Tabelle ausgeben (es sollen nur die eingepflegten/öffentlichen Daten des aktuell eingeloggten Users sein). Linke Spalte: was wird ausgegeben, rechte Spalte: Ausgabe. Ausgeben würde ich gerne: username, firstname, lastname, dateOfbirth, street, postal, city, state, gender, website, email, registriert seit, letzter Login.

  40. #40
    Contao-Nutzer Avatar von Toad
    Registriert seit
    18.02.2010.
    Ort
    NRW
    Beiträge
    177

    Standard

    ???

    Hab' ich gepostet:

    Zitat Zitat von Toad Beitrag anzeigen
    Die Tabelle die du dir anzeigen lassen musst heißt: tl_members
    Schau dir an wie die Felder heißen und lasse sie dir anzeigen wie du es magst.

    Beispielsweise kannst du als Tabelle "tl_members"
    und als Felder "username,gender" angeben.
    damit hast du schon mal was auf dem Bildschirm.
    Die Felder kannst du dir oben aus der Zeile aussuchen: id, firstname, lastname, ...
    Das schreibst du im Backend in "Felder"
    while(!asleep()) {sheep++;}

Aktive Benutzer

Aktive Benutzer

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

Berechtigungen

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