Joomla 6 Mitteilung

Wir freuen uns mitteilen zu können, dass seit dem 14. Oktober 2025 alle unsere Joomla Erweiterungen mit Joomla 6 kompatible sind.

Für alle die gerade noch von Joomla 3 auf 4 aktualisieren: Anleitungen für die Joomla 4 Migration gibt es hier:

Es gibt eigenständige Dokumentationen Visforms Joomla 4, Visforms Joomla 5 und Visforms Joomla 6.

Forum

Visforms Subscription Inhaber können in unserem Forum Fragen stellen. Bitte mit dem entsprechenden Benutzer anmelden.
Jeder kann lesend auf das Forum zugreifen.

Bitte stellen Sie nur 1 Frage pro Thema.

Wichtige Angaben für fast jede Frage:
V1: Welche Visforms-Version läuft?
V2: Welche Joomla-Version läuft?
V3: Welche PHP-Version läuft?

Optische Farbauswahl (Colorpicker) im Formular

Mehr
2 Wochen 6 Tage her #12409 von Erwinbln
Hallo,
ich benötige eine Optische Farbauswahl, damit der Anwender die gewünschte Farbe anwählen kann und der Code im Formalar übertragen wird. Dazu habe ich deine KI bemüht. Lässt sich das nachfolgende so umsetzen? Danke.Um eine moderne, optische Farbauswahl (inklusive Hex- und RGBA-Werten) in ein Visforms-Formular zu integrieren, eignet sich die schlanke und leistungsstarke JavaScript-Bibliothek Pickr hervorragend. Sie ist voll responsive, unterstützt Transparenzen (RGBA) und lässt sich nahtlos an ein standardmäßiges Visforms-Textfeld koppeln.Hier ist das fertige Skript inklusive einer kurzen Anleitung zur Integration.1. Das JavaScript-SkriptDieses Skript lädt die benötigte Bibliothek (CSS und JS) dynamisch nach, erstellt den interaktiven Colorpicker direkt neben deinem Visforms-Feld und schreibt den gewählten Wert (HEX oder RGBA) automatisch in das Eingabefeld zurück, damit er beim Absenden des Formulars übertragen wird.
JavaScript Code:
document.addEventListener('DOMContentLoaded', function () {
    // 1. EINSTELLUNG: Ersetze 'field-farbcode' mit der tatsächlichen ID deines Visforms-Textfelds
    const targetFieldId = 'field-farbcode'; 
    const inputField = document.getElementById(targetFieldId);

    if (!inputField) {
        console.warn(`Colorpicker: Feld mit der ID "${targetFieldId}" wurde nicht gefunden.`);
        return;
    }

    // CSS für Pickr dynamisch laden (Classic Theme)
    const link = document.createElement('link');
    link.rel = 'stylesheet';
    link.href = ' cdn.jsdelivr.net/npm/@simonwep/pickr/dis...emes/classic.min.css ';
    document.head.appendChild(link);

    // JS für Pickr dynamisch laden
    const script = document.createElement('script');
    script.src = ' cdn.jsdelivr.net/npm/@simonwep/pickr/dist/pickr.min.js ';
    script.onload = initializeColorPicker;
    document.head.appendChild(script);

    function initializeColorPicker() {
        // Erstelle ein Container-Element für den Colorpicker-Button direkt nach dem Input-Feld
        const pickerButton = document.createElement('div');
        pickerButton.className = 'visforms-colorpicker-btn';
        inputField.parentNode.insertBefore(pickerButton, inputField.nextSibling);

        // Pickr Instanz initialisieren
        const pickr = Pickr.create({
            el: pickerButton,
            theme: 'classic', // Alternativen: 'monolith', 'nano'
            default: inputField.value || '#30638e',
            swatches: [
                'rgba(244, 67, 54, 1)',
                'rgba(233, 30, 99, 0.95)',
                'rgba(156, 39, 176, 0.9)',
                'rgba(63, 81, 181, 1)',
                'rgba(33, 150, 243, 1)',
                'rgba(3, 169, 244, 1)'
            ],
            components: {
                // Hauptkomponenten
                preview: true,
                opacity: true, // Aktiviert den Alpha-Kanal für RGBA
                hue: true,

                // Interaktionsoptionen
                interaction: {
                    hex: true,
                    rgba: true,
                    input: true, // Erlaubt direkte Texteingabe im Picker
                    clear: false,
                    save: true  // "Speichern"-Button schließt den Picker und übernimmt den Wert
                }
            },
            // Übersetzungen für Buttons
            i18n: {
                'btn:save': 'Übernehmen',
                'aria:btn:save': 'Farbe speichern'
            }
        });

        // Event: Wenn der Nutzer eine Farbe speichert
        pickr.on('save', (color, instance) => {
            if (color) {
                // Prüfen, ob Transparenz (Alpha < 1) genutzt wird -> dann RGBA, sonst HEX
                const alpha = color.toRGBA()[3];
                const colorString = alpha < 1 
                    ? color.toRGBA().toString(2) // Gibt z.B. "rgba(10, 20, 30, 0.5)" zurück
                    : color.toHEXA().toString(); // Gibt z.B. "#FF0000" zurück

                inputField.value = colorString;
                
                // Event triggern, damit Visforms/Joomla die Änderung am Feld registriert
                inputField.dispatchEvent(new Event('change', { bubbles: true }));
            }
            pickr.hide();
        });
    }
}); 2. So bindest du den Code in Visforms ein
  1. Visforms-Feld vorbereiten:
    • Erstelle in deinem Visforms-Formular ein einfaches Feld vom Typ Text.
    • Gib dem Feld einen eindeutigen Namen oder eine ID (z. B.
      Code:
      farbcode
      ).
    • Überprüfe im Browser-Quellcode (Rechtsklick -> Untersuchen auf dem Feld) die generierte ID des
      Code:
      <input>
      -Elements (meistens aufgebaut wie
      Code:
      field-farbcode
      oder
      Code:
      field-12
      ). Trage diese ID im Skript oben bei
      Code:
      targetFieldId
      ein.
  2. JavaScript einfügen:
    • Möglichkeit A (Direkt in Visforms): Gehe in die Formularkonfiguration deines Visforms-Formulars. Viele Versionen bieten unter dem Reiter CSS/JS ein Feld für Benutzerdefiniertes Javascript. Füge den Code dort ein.
    • Möglichkeit B (Über das Template): Da du mit Helix Ultimate arbeitest, kannst du den Code auch global oder seitenspezifisch in die Template-Optionen einbinden (unter Custom Code -> Custom JS).
3. Optionales CSS für ein sauberes LayoutDamit der Colorpicker-Button optisch schön neben oder im Eingabefeld platziert ist, kannst du folgendes CSS in dein Stylesheet (z. B.
Code:
custom.css
) einfügen:

CSS:
/* Positioniert den Button sauber neben dem Textfeld */
.visforms-colorpicker-btn + .pickr {
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px;
}

/* Passt den Auslöse-Button von Pickr an */
.pickr .pcr-button {
    border: 1px solid #ccc;
    border-radius: 4px;
    width: 2.5em;
    height: 2.5em;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

Danke, Erwin

Mehr
2 Wochen 5 Tage her #12410 von Administrator AV
Administrator AV antwortete auf Optische Farbauswahl (Colorpicker) im Formular
Hallo Erwin,

das kann ich dir leider nicht beantworten.
Dazu müsste ich mich mir die vorgeschlagene Implementierung und den Code individuell ansehen.
Das kann ich gerne für dich tun.
Ich hoffe, du hast Verständnis dafür, dass wir diese individuelle Beratung nach Aufwand, basierend auf unserem aktuellen Stundensatz und mit mindestens 1 Stunde anbieten.

Liebe Grüße,
Aicha

:idea: I recommend you the new and up-to-date documentation for Joomla 6:
docs.joomla-6.visforms.vi-solutions.de/en/docs/
Please ask only 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 6:
docs.joomla-6.visforms.vi-solutions.de/docs/
Bitte immer nur 1 Frage pro Thema stellen :-).

Mehr
2 Wochen 1 Tag her #12415 von prffrost
wenn ein Plugin brauchst der funktioniert - ich hab da mal ein gebastelt -

Mehr
2 Wochen 1 Tag her #12416 von Erwinbln
Danke für die Nachricht. Ich konnte es umsetzen und funktioniert. Auch habe ich für den Upload eine Drag and Drop Funktion gemacht. Ich kam von RSForms über ConvertForms zu Visforms. Bin total zufrieden. DANKE
Folgende Benutzer bedankten sich: Administrator IV

Mehr
2 Wochen 1 Tag her #12417 von Erwinbln
Vielen Dank, ich habe es inzwischen auch hinbekommen, ebenso Drag and Drop.

Mehr
2 Wochen 23 Stunden her #12422 von Administrator IV
Administrator IV antwortete auf Optische Farbauswahl (Colorpicker) im Formular
Hallo Erwin, hallo Wolfgang,

Zu: Auch habe ich für den Upload eine Drag-and-Drop-Funktion gemacht.

Die aktuelle Version Subscription 6.2.0 enthält für das Upload-Feld eine neue Funktion zur Dateiauswahl mittels Drag&Drop.
Das neue Feature
- hat noch keine Beschreibung in der Dokumentation,
- wird in der Feld-Konfiguration aktiviert.

Subscription 6.2.0:
docs.joomla-6.visforms.vi-solutions.de/u...6/sub-version-6-2-x/

Liebe Grüße, Ingmar

:idea: I recommend you the new and up-to-date documentation for Joomla 6:
docs.joomla-6.visforms.vi-solutions.de/en/docs/
Please ask only 1 question per topic :-).

:idea: Ich empfehle Dir die neue und aktuelle Dokumentation für Joomla 6:
docs.joomla-6.visforms.vi-solutions.de/docs/
Bitte immer nur 1 Frage pro Thema stellen :-).

Moderatoren: Administrator AVAdministrator IV
Powered by Kunena Forum