Beiträge von SLM

    Nun hab ich meine xampp-Installation neu aufgesetzt (neueste Version) und gleich mal gecheckt welche MYSQL-Version dabei ist:

    C:\xampp\mysql\bin>mysql --version

    mysql Ver 15.1 Distrib 10.4.27-MariaDB, for Win64 (AMD64), source revision 0946c99e7d6f7ac9dfcf3e60dae6ae85161d5ef2

    Der Skipping-Fehler loopt immer noch...

    Beim Update auf meiner lokalen XAMPP-Installation tritt schon beim Aufruf der /setup/update.php ein Fehler auf:

    Warning: Undefined variable $showDbMailsNote in C:\xampp\htdocs\oss.loc\setup\update.php on line 190

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Im weiteren Verlauf des Datenbank-Updates erhalte ich laufend diese Fehlermeldungen, das Datenbank-Update wird nicht fertiggestellt bzw. nicht durchgeführt.

    "Unexpected response - skipping position ....... "

    Die Fehlermeldung wird immer um 1 hochgezählt. und endet nicht.

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Meine lokale MySQL-Datenbank funktioniert unter b1gMail Version 7.4.

    Woran könnte das liegen?

    Kannst du eventuell etwas dazu sagen, ob es damit auch möglich wäre, die Gruppenlimits bzw. Gruppeneinstellungen zu übernehmen?

    Mittlerweile ist auch reCaptcha (zumindest V2) kein Garant mehr für Sicherheit. Das übernehmen auch schon Bots. Genauso wie sie unsichere Server kapern und deren IP-Adressen verwenden. Ich hatte das ja auch hier angesprochen: RE: reCaptcha V3

    Aktuell habe ich wieder auf das b1g-eigene Captcha gewechselt und das noch etwas angepasst. Andere Hintergrundgrafiken, andere Fonts, zusätzlich Sonderzeichen integriert (serverlib/safecode.class.php). Wenn es sein muss baue ich da auch noch Umlaute ein, denn die gehen nur mit deutscher Tastatur ^^ . Ob der Bot dann so lange klickt oder rechnet bis er die richtigen Zeichen findet, wage ich zu bezweifeln.

    Umstellen auf Verifizierung per SMS- oder Mailverifizierung möchte ich nicht, denn das widerspricht dem Gedanken der Datensparsamkeit und ist zudem umständlich. Wenn ich ein E-Mailkonto benötige, warum soll ich mir vorher ein anderes anlegen um mich irgendwo zu verifizieren?!

    Es muss halt auch eine datenschutzkonforme Lösung sein. Denn alles was mit Google oder Anbietern zu tun hat, deren Infrastruktur in unsicheren Drittstaaten beheimatet ist, muss vermieden werden.

    b1gMail wird aktuell primär auf Deutsch entwickelt und im Nachhinein mit der englischen abgeglichen. Das soll sich später ab 7.5 ändern.

    welche Sprachen sonst noch verfügbar sind: https://github.com/b1gMail-OSS/b1gMail-languages (alles die frei verfügbaren + Fränzösisch von zamana). Sind alle für b1gMail 7.4, wobei die Russische und Rumänische nur ältere sind und die fehlenden Phrasen auf Englisch sind.

    Cool, danke. Das es noch mehr Sprachen gibt war mir so bislang nicht bekannt. :thumbup:

    Die Größe eines Dialogs wird ja in den .js-Dateien festgelegt:

    Code
    function folderViewOptions(folderID)
    {
        openOverlay('email.php?sid=' + currentSID + '&do=viewOptions&folder=' + folderID,
            lang['viewoptions'],
            650,
            140,
            true);
    }

    In diesem Beispiel: 650px Breite, 140px Höhe.

    Gibt es einen technisch versierten Fuchs unter euch der mir eventuell sagen kann, wie man die Werte, beispielsweise per CSS überschreiben und die Dialoge an den Viewport anpassen könnte?

    Alternativ dazu auch die Möglichkeit, Platzhalter anzugeben, die dann per CSS angesteuert werden können.

    Eventuell könnte das eine Alternative für Widgets sein: https://gridstackjs.com/

    gridstack.js is a modern Typescript library designed to help developers create beautiful draggable, resizable, responsive bootstrap-friendly layouts with just a few lines of code.

    You can create more advanced grids: allow users to persist changes, create a sidebar of widgets to drag into your grid, and much more.

    Features:

    • pure JS can be used in any UI framework
    • mobile support
    • draggable, resizable items
    • drag'n'drop from sidebar to insert/delete
    • responsive layouts, column based
    • save/restore
    • drag between multiple grids
    • nested grids
    • external Angular, Vue, React, Ember, Knockout.js bindings and more

    Sebijk wäre es möglich das Template von mir als Standardtemplate für die Opensource Version zu verwenden?

    Dein Template (freshtemp) habe ich mir mal installiert, sieht ja aus wie ehemals in V7.3. Man muss in erster Linie weg von den Tabellen und da sehe ich Bootstrap eigentlich als gute Basis für.

    Ich denke, ein Webdesigner wird sich dazu besser äußern können. Die Frage für mich ist, ob Widgets auch responsive gestaltet werden können oder nicht.

    Bzgl. Lizenz: Ich denke, wenn wir das zusammen mit b1gMail ausliefern, muss diese mit der GPL kompatibel sein, da patrick keine Ausnahmen dazu definiert hat.

    Das mit den Widgets ist das eigentliche Problem dabei. Mit der aktuell verwendeten Methode (/clientlib/dragcontainer.js) lässt sich leider keine responsive Darstellung ermöglichen. Zumindest hab ich es noch nicht geschafft :)

    Zudem sind einige Funktionen darin mittlerweile als deprecated gekennzeichnet.

    Im PremiumPlugin kann man die Abo-Ablauf-Benachrichtigung festlegen. In meinem System ist der Wert auf 14 Tage eingestellt.

    Aufgrund der Tatsache, dass mittlerweile über 50% mobile Nutzer das System nutzen und das aktuelle Template nicht responsive ausgelegt ist, sollte der Prozess der Abo-Verlängerung einfacher gestaltet werden.

    Mein Gedanke dazu geht in folgende Richtung:

    • Mit der Abo-Ablauf-Benachrichtigungsmail (pacc_nm_text) wird ein Link generiert, der bis zum Ende der Laufzeit gültig ist.
    • Der Link führt direkt zu einem externen Bezahlformular mit dem gewohnten Procedere, ohne dass sich der Kunde in sein Konto einloggen muss.
    • Der Prozess könnte ja ähnlich dem der externen Buchung im PremiumPlugin ausgestaltet sein.

    Was meint Ihr? Jemand ne andere Idee?

    ja, geht problemlos. Man muss in der user.class.php bei der Funktion BuildvCard es auch so machen: 'firma' => $this->_row['company']. Sonst wird das Keyword firma nicht angesprochen. Deine Änderungen (bis auf die Anrede, siehe dazu separates Thema Anrede) habe ich soweit übernommen und ist im letzten Commit enthalten.

    OK, aber man muss halt zusätzlich die user.class.php anpassen. Zusätzliche Änderungen wollte ich vermeiden ;) Meine Installation werde ich dann irgendwann auch entpsrechend anpassen, sonst gibts später bei eventuellen Updates ja wieder Probleme.

    Um auch auf die Themen Datenschutz und Datensicherheit mal ein wenig einzugehen:

    • Es sollte künftig ermöglicht werden, dass Daten nicht mehr in Klartext sondern verschlüsselt in der Datenbank abgelegt werden (wahlweise)
    • Bei der Speichermethode (Dateisystem: Eine Datei pro Objekt) ist ebenfalls anzudenken, dass die Dateien verschlüsselt werden (können).

    Ergänzung #1:

    • DSGVO-kompatibles Captcha.

    Weitere Vorschläge diesbezüglich?

    Das Feld "firma" in den Kontaktdaten des Users wurde über Jahre bislang schlichtweg vergessen. Deshalb habe ich mir selbst diese Lösung mit Firma + UST-ID gebaut, vor allem, weil kunden das Fehlen reklamiert haben.

    Sebijk kannst du bitte mal prüfen, ob die Visitenkarte (anzuhängen beim E-Mailversand) auch die richtigen Daten aus deinem Feld "company" statt "firma" enthält? Die vcard.class.php verwendet nämlich den Wert "firma" beim erstellen der Datei den Wert "firma". Mit meiner Version wird die Firma in die Visitenkarte übernommen:

    Code
    else if($key == 'firma')
                {
                    $lines[] = 'ORG:' . $value;
                }

    Mein Rechnungstemplate kann ich nicht anhängen, da ich über die Jahre zu viele Änderungen am Original vorgenommen habe. Das Original-Rechnungstemplate um die beiden Tags zu erweitern sollte nicht so schwer sein.

    Zum Thema Code: Da ich - wie bereits mehrfach erwähnt - kein Entwickler bin und lediglich die Anpassungen / Änderungen die ich beitragen kann mit euch teilen möchte, kann ich das nur in der mir möglichen Form.

    Danke für den Hinweis mit dem Hinweis auf die Tabelle bm60_adressen.

    Für alle, die die kompletten Daten bei der Registrierung abfragen muss auch noch die index.php im Abschnitt "signup" und das "signup.tpl" angepasst werden. Da ich diese Daten bei der Registrierung nicht abfrage, habe ich das bei mir nicht umgesetzt.

    Hat sich schon jemand Gedanken über das Template für den internen Bereich gemacht? Es sollte auf jeden Fall responsive sein und letztendlich die mobile Version gleich mit ersetzen.

    Ich würde gerne eure Vorschläge hören/lesen, in welche Richtung das ganze gehen soll und mit welcher/m Technik / Framework es umgesetzt werden sollte.

    Schon jemand ein Beispiel an dem man mitarbeiten und helfen könnte?

    • Freigegebene Ordner können nur per eindeutiger Url geöffnet werden (/share/?folder=asd8fasdfasdfasdg), der Hash wird z.B. anhand der Ordner ID und Timestamp erstellt
      • Als Konsequenz können nicht mehr alle freigegebenen Ordner eines Benutzers angezeigt werden
    • Als Option kann angegeben werden ob man Daten hochladen kann oder nicht (aber nur falls ein Passwort angegeben wurde)

    Super!

    Toll wäre es, wenn man im UCP auswählen könnte, ob der Link zur Freigabe generell (dauerhaft) oder zeitlich limitiert gültig ist.

    Die zeitliche Limitierung könnte man dann noch gruppenabhängig machen.

    • Grundfunktion: Link dauerhaft erreichbar.
    • Premiumfunktion: Link zu Ordner zeitlich limitiert gültig.

    Wenn ich dich unterstützen kann (z.B. beim Testen) sag Bescheid.

    Wichtiger Hinweis: viele Nutzer haben als optionales Profilfeld bereits Firma/Verein angelegt, dieses sollte dann genutzt werden oder in neue Spalte übernommen und aus Profilfeldern gelöscht werden !!!

    Tabelle firma und inv_firma Länge 255 statt 50, da sonst Firmennamen abgeschnitten werden beim speichern!

    Profilfeld kam nicht in Frage, da nicht mehrsprachig. Und genau darum, weil jeder so seine eigene Lösung zwischenzeitlich gebastelt hat, sollte man die beiden Felder mal fest integrieren, zumal diese Angaben heutzutage überall Standard sind.

    Patrick hat früher oft schon Vorschläge oder Plugins irgendwann in das System integriert, wenn er einen Mehrwert gesehen hat.

    Mein Vorschlag ist ja nicht in Stein gemeißelt, soll nur einen Lösungsansatz darstellen. Den Längenwert auf 255 Zeichen anzupassen ist eine gute Idee ;)