Discourse Signaturen

Bin ich verrückt oder gibt es überhaupt keine Validierung der URL des Benutzersignaturbildes?
Im Grunde kann ein Benutzer alles eingeben, und es wird an andere Benutzer weitergeleitet?

Außerdem, warum ist die DB-Größe der URL-Signatur auf 32.000 eingestellt?
Warum sollte jemand 32.000 Zeichen für eine URL zu einem Bild benötigen?

Gruselig :ghost:

Ich habe das CSS wie folgt geändert, um eine maximale Höhe und Breite festzulegen:

.signature-img {
  max-width: 600px;
  max-height: 100px;
  width: auto;
  height: auto;
  display: block;
  margin: 5px 0;
}

Ich habe die maximale Größe der Signatur-URL in plugin.rb auf 250 geändert

  register_user_custom_field_type("signature_url", :string, max_length: 250)
  register_user_custom_field_type("signature_raw", :string, max_length: 250)

Ich habe dies am Ende von “on(:user_updated) do |user|” in plugin.rb hinzugefügt (ich werde den erweiterten Modus nicht verwenden)

    # Validieren Sie die URL, wenn nicht im erweiterten Modus
    if !SiteSetting.signatures_advanced_mode && user.custom_fields["signature_url"]
      url = user.custom_fields["signature_url"]

      # Strikte Validierung: nur HTTPS, nur bestimmte Bilddateitypen
      unless url =~ /\Ahttps:\/\/\[a-zA-Z0-9.\-\/_]+\.(png|jpe?g|gif|webp)(\?[a-zA-Z0-9=\&]+)?\z/
        Rails.logger.warn("[discourse-signatures] Ungültige signature_url für Benutzer #{user.id} abgelehnt: #{url.inspect}")
        user.custom_fields["signature_url"] = nil
        user.save
      end
    end

Wenn ich hier etwas falsch mache (habe noch nie mit Discourse gearbeitet), korrigieren Sie es bitte und zeigen Sie mir den richtigen Weg.

1 „Gefällt mir“

Weil 250 nicht ausreichen…

Das ist die ganze Idee einer Signatur. Dasselbe gilt für ein Forum, Leute geben Dinge ein und andere Leute sehen es. Verrückte Welt, was?

5 „Gefällt mir“

Wenn Discourse auf 3.5.0.beta8 aktualisiert wird (3.5.0.beta9-dev ist ebenfalls ein Problem), wird festgestellt, dass der Benutzer die Signatur bearbeitet hat und sie nicht speichern kann (obwohl sie als gespeichert angezeigt wird, aber keine Wirkung zeigt). Auf 3.5.0.beta7 ist sie noch normal. Wir hoffen, dass dies bald behoben wird, da viele Plugins von beta7 zu beta8 integriert wurden.

2 „Gefällt mir“

Wir haben einen speziellen Anwendungsfall für Signaturen und ich frage mich, ob es relativ einfach wäre, einige Änderungen vorzunehmen.

  1. Ich stimme zu, dass ich Signaturen nur für bestimmte Gruppen in der Benutzeroberfläche sehen möchte. Ich bin nicht gut mit CSS.
  2. Wir nutzen unser Discourse sowohl als Community als auch als Support-Ticketsystem. Gibt es eine Möglichkeit, eine Einstellung zu erhalten, um “Signaturen nur in X-Kategorien anzuzeigen”?

Wir brauchen sie eigentlich nur in unserem Support-Bereich, wo die meisten unserer Interaktionen per E-Mail erfolgen.

2 „Gefällt mir“

Es stellt sich heraus, dass dieses Plugin für unseren Bedarf nicht funktioniert.

Die Signaturen werden zwar einwandfrei an den Beitrag angehängt, aber sie werden nicht als Teil einer E-Mail-Antwort gesendet, und das ist der springende Punkt bei der Verwendung in unserem Fall.

Ist das etwas, das mit dem Plugin geändert werden kann?

forum-sig
email-sig

1 „Gefällt mir“

Ich stimme dem zu, Signaturen können in Discourse v.3.5.0 nicht aus den Benutzereinstellungen gespeichert werden. Erleben Sie dasselbe Verhalten?

Werden Ihre E-Mails die vollständige Ankündigung oder die gekürzte Version senden?

Unabhängig davon vermute ich, dass die Signaturen nach der Fertigstellung des Beitrags eingefügt werden, die E-Mail jedoch nur den Rohinhalt sendet, sodass sie nicht übertragen wird.

Ja, die E-Mails sind die vollständigen Beiträge.
Ich stimme zu, die Signatur befindet sich außerhalb des eigentlichen Beitragsinhalts.
Deshalb wird Ihre Signatur, wenn Sie sie ändern, auch in bestehenden Beiträgen aktualisiert.

Ich würde mich freuen, wenn sich das ändern würde, aber bis dahin muss ich sie bei jedem Beitrag neu eingeben.

Ich kann bestätigen, dass wir dasselbe Problem auf unserer Instanz erleben. Benutzer können Änderungen an ihren Signaturen in Discourse v3.5.1 nicht speichern.

Ich freue mich auf eine Lösung.

Zugehöriger Artikel:
Signature Changes Not Saving in Discourse