Beiträge von Sebijk

    Ich hab Postfix testweise im Einsatz, als Empfangsmethode habe ich Postfix Transport Gateway genommen. Funktioniert soweit gut. Man muss halt immer dran denken, die Liste zu aktualisieren, wenn eine neue Domain hinzugekommen ist. Dafür habe ich zuletzt ein Script erstellt, der die Sache automatisieren kann: https://github.com/b1gMail-OSS/b1…ansportlist.php

    Zum Versenden per SMTP mit Postfix gab es mal vom b1gMailServer ein PAM-Plugin, der es erlaubt hatte, via SMTP über Postfix zu senden (damals gab es für b1gMailServer keinen eigenständigen SMTP-Server). Würde aber heute nicht mehr laufen. Eine Alternative wäre das hier: https://github.com/NigelCunningham/pam-MySQL . Man müsste halt es so anpassen, dass es mit dem b1gMail-MD5 salt zurechtkommt, geht über "md5(md5('Klartextpasswort').$userRow['passwort_salt'])"

    Hab den Hinweis von patrick übernommen und es dann verallgemeinert, da ThinkClever die Plugins auch nicht mehr anbietet. Hatte letztes Jahr mal ne Anfrage gestellt, ob sie es nicht OpenSource machen können, da kam wie erwartet leider keine Antwort.

    Wenn CleverBranding und CleverCron auch mit b1gMail 7.4 funktioniert hat, wird es wahrscheinlich auch mit 7.4.1 funktionieren, testen kann ich es nicht, da ich diese Plugins nicht habe.

    Sollte eines der Plugins die Funktion BMUser::Fetch() nutzen, muss dies spätestens ab PHP 8 zu BMUser::staticFetch() angepasst werden. Das gleiche gilt auch, wenn noch veraltete mysql-Funktionen genutzt werden, die müssen dann nach mysqli angepasst werden.

    Zeichensätze

    Vor Konvertierung UNBEDINGT Datenbank+Dateien sichern. Keine Haftung für Datenverluste!

    ISO-Zeichensatz

    b1gMail 7.4.1 wird die letzte Version sein, die noch das alte ISO-Zeichensatz bzw. latin1 unterstützen wird. Für einen problemlosen Betrieb wird deshalb die Konvertierung ins UTF-8 Format dringend empfohlen.

    Sofern Sie eine ältere Version als 7.4.0 einsetzen:

    Die Speicherung der E-Mails auf Datenbank verursacht Zeichensatzfehler, weshalb die Dateisystemvariante am sichersten ist. Daher loggen Sie sich vor der Konvertierung in den Adminbereich ein, gehen Sie zu "Einstellungen" » "E-Mail" und stellen Sie sicher, dass die Mail-Speicherung auf "Dateisystem" eingestellt ist. Gehen Sie, auch wenn dies bereits der Fall war, dann zu "Tools" » "Optimierung" » "Dateisystem" und führen Sie die Funktion "Mail-Speicherung" (Datenbank -> Dateien) aus. Dies ist nötig, um sicherzustellen, dass sich keine E-Mails mehr in der Datenbank befinden, da diese Speichermethode ab Version 7.4.0-Beta1 entfernt wurde.

    Bei Update: Nach Ausführung der setup/update.php den "setup"-Ordner noch nicht löschen sondern erst setup/utf8convert.php ausführen. Ein wenig Zeit für die Konvertierung einplanen.

    UTF8MB4

    Neuinstallationen sind standardmäßig mit UTF8MB4, da die alte UTF-8 Implementierung von MySQL keine 4 Byte-Zeichensätze speichern kann. Beim Update von einer älteren b1gMail-Version: setup/utf8mb4convert.php ausführen. Ein wenig Zeit für die Konvertierung einplanen.

    Hinweis für Nutzer, die bisher die kommerzielle Version nutzen:

    Bei b1gMail.org sind die Dienste bisher nicht erreichbar. Dazu zählt auch die Toolbox. Wenn man die vom b1gMail.com weiter benutzen möchte, fügt man in der config.inc.php folgendes ein:

    PHP: config.inc.php
    define('B1GMAIL_DLDATE', ''); //Hier dldate eintragen
    define('B1GMAIL_LICDOMAIN', ''); //Hier licdomain eintragen
    define('B1GMAIL_SIGNKEY', ''); //Hier signkey eintragen
    define('TOOLBOX_SERVER', 'http://service.b1gmail.com/toolbox/');
    define('UPDATE_SERVER', 'http://service.b1gmail.com/patches/');
    define('SIGNATURE_SERVER', 'http://service.b1gmail.com/signatures/');

    Die ersten drei Angaben holt man sich aus der serverlib/init.php aus der kommerziellen Version.

    For english version look here: b1gMail 7.4.1 Beta 3 released

    ---

    b1gMail 7.4.1 Beta 3 (PL 1) steht nun zum Download auf https://github.com/b1gMail-OSS/b1gMail/releases bereit! Wie bei jeder Beta-Version gilt: Nicht für den Produktiveinsatz bestimmt!


    Vor einem eventuellen Update unbedingt Datensicherung der Datenbank und des b1gMail-Ordners inkl. des data-Ordners anlegen!

    Änderungen 7.4.1-beta2->7.4.1-beta3

    • Neue Funktion: Feld Firma und UST-ID bereitgestellt von SLM
    • Neue Funktion: Alias-Absendername kann editiert werden
    • Neue Funktion: Aliaslogin ist standardmäßig deaktiviert, der Nutzer kann bei jedem Alias den Login explizit erlauben (Hat leider keine Auswirkungen auf b1gMailServer)
    • Neue Funktion: deref.php zeigt eine Warnung an, wenn eine externe URL angeklickt wird (kann auf Wunsch vom Admin deaktiviert werden)
    • Neue Funktion: favicon zeigt eine Nummer, wenn eine neue Benachrichtigung eintrifft (commit b497530)
    • Organizer kann nun über die Gruppeneinstellung deaktiviert werden
    • Auth-Plugins: wbb2 und MyBB hinzugefügt
    • Weitere Fehlerbehebungen für PHP 8 und höher
    • Deutsche PLZ-Datenbank aktualisiert (commit 8956ce0)
    • Neue Template-Hooks: afterButtons und beforemailSendOptions (commit facf6b3)
    • neues Tool: postfix transport list creator, wenn b1gMail mit Postfix Transport genutzt werden soll (commit 2fbda2e)
    • Wechsel zu Fork awesome (ein Fork von Font awesome 4.7, aber mit mehr Icons. Diese Entscheidung hat keinen Einfluss auf zukünftige Versionen, falls ein Update zu Font Awesome 5/6 oder höher geplant ist)
    • CKEditor auf 4.17.2 aktualisiert und Quelltext anzeigen wiederhergestellt.
    • Viele kleine Verbesserungen

    Wichtig für Plugin-Entwickler

    Mit Beta 3 wurde die Funktion BMUser::Fetch zu BMUser::staticFetch geändert. Wenn sie genutzt wird, muss das entsprechend in den Plugins geändert werden. Funktion Fetch in der user-Klasse kann weiterhin benutzt werden, darf aber nicht statisch aufgerufen werden (erzeugt ab PHP 8 einen fatalen Fehler).

    PL 1 behebt einen Fehler in deref.php, der möglicherweise auf einen leeren Link zeigte.

    Neuinstallation


    Komplettpaket herunterladen. In serverlib die Datei config.default.inc.php in config.inc.php und version.default.inc.php in version.inc.php umbenennen.

    Update von b1gMail 7.4.0, 7.4.1-beta1 und 7.4.1-beta2

    Die Dateien hochladen. Nach dem Upload /setup/update.php aufrufen.

    Alternativ: in serverlib die Datei version.inc.php löschen und version.default.inc.php in version.inc.php umbenennen und tools/db_sync.php aufrufen. In beiden Fällen muss der setup-Ordner danach gelöscht werden.


    Update von b1gMail 7.4.0-Beta4


    Nach dem Upload die /setup/update.php aufrufen.


    Update von b1gMail 7.3.0

    Nach dem Upload die /setup/update.php aufrufen.


    Update von anderen b1gMail 7.4 Beta-Versionen


    Es muss zuerst auf b1gMail 7.4.0-Beta4 aktualisiert werden.


    Update von b1gMail-Versionen älter als 7.3.0


    Die Update-Routine geht ab 7.0.0. Allerdings wurde das nicht getestet und es wird daher empfohlen zuerst auf b1gMail 7.3.0 zu aktualisieren, sofern man Zugang zu dieser Version hat.

    Update von b1gMail6

    Wenn Sie bereits b1gMail6 einsetzen, aktualisieren Sie bitte zuerst auf b1gMail 7.2.0, dann auf 7.3.0 und dann auf diese Version.


    Hinweise

    • Vor Update UNBEDINGT Datenbank+Dateien sichern. Keine Haftung für Datenverluste!
    • b1gMail 7.4.1 benötigt mindestens PHP 5.4
    • Bei Neuinstallation wird mind. MySQL / MariaDB 5.5.3 benötigt. MySQL 8.x und höher wird derzeit nicht unterstützt ( außer MariaDB ). Wir empfehlen MariaDB als Datenbanksoftware.
    • Nach dem Update bitte den Browser-Cache leeren
    • b1gMail 7.4.1 enthält zusätzlich auch das PremiumAccount und Fax-Plugin.
    • Falls b1gMailServer verwendet wird, nach dem Update bitte den Warteschleifendienst neu starten und sicherstellen, dass die neueste Version verwendet wird.
    • Der Serverteil von b1gMailServer ist aktuell NICHT OpenSource, nur die beiliegende Adminoberfläche.
    • Plugins von ThinkClever GmbH sind nicht mit der b1gMail 7.4-Version kompatibel. Diese müssen vor dem Update deinstalliert werden.
    • Sofern die b1gMail-Installation noch im ISO-Zeichensatz / latin-Modus betrieben wird, wird dringend empfohlen, ins UTF-8 Format zu konvertieren. Mehr dazu unten

    Einschränkungen gegenüber der alten kommerzielle Version:

    • Die Toolbox ist derzeit nicht für die freie Version verfügbar. Lizenzinhaber von der ehemals kommerzielle b1gMail-Version können den Dienst aber weiterhin nutzen, mehr dazu unten
    • Updatebenachrichtigung sind nicht verfügbar
    • Fax-Plugin: Da die proprietäre FPDI Parser Bibliothek nicht in einem GPL-Projekt ausgeliefert werden darf, wurde sie mit dem Update der FPDI-Klasse entfernt. Dadurch entfällt der Support für komprimierte PDF-Dateien. Wenn man das weiterhin braucht, muss eine Lizenz auf https://www.setasign.com/products/fpdi-pdf-parser/pricing/ erworben werden. Alternativ kann die letzte kommerzielle Version des Fax-Plugins genutzt wurde, falls damals eine Lizenz erworben wurde.

    Character sets

    Before converting, be sure to back up the database and files. No liability for data loss!

    ISO character set

    b1gMail 7.4.1 will be the last version that will still support the old ISO character set or latin1. For a problem-free operation the conversion to UTF-8 format is therefore strongly recommended.

    If you are using a version older than 7.4.0:

    Saving emails to database causes character set errors, so the file system variant is the safest. Therefore, before conversion, log into the admin area, go to "Settings" " "Mail" and make sure that mail storage is set to "File system". Even if this was already the case, then go to "Tools" " "Optimization" " "File System" and run the "Mail Storage" function (Database -> Files). This is necessary to make sure that there are no more emails in the database, since this storage method has been removed as of version 7.4.0-Beta1.

    When updating: After running setup/update.php do not delete the "setup" folder yet but run setup/utf8convert.php first. Allow some time for the conversion.

    UTF8MB4

    New installations always use UTF8MB4, because the old UTF-8 implementation of MySQL cannot store 4 byte character sets. When updating from an older b1gMail version: run setup/utf8mb4convert.php. You need a little time for the conversion.

    Note for users who previously used the commercial version:

    The service at b1gMail.org are currently not accessible. This includes the toolbox. If you want to use the toolbox from b1gMail.com, you have to add the following to config.inc.php:

    PHP: config.inc.php
    define('B1GMAIL_DLDATE', ''); //Here add dldate
    define('B1GMAIL_LICDOMAIN', ''); //Here add licdomain
    define('B1GMAIL_SIGNKEY', ''); //Here add signkey
    define('TOOLBOX_SERVER', 'http://service.b1gmail.com/toolbox/');
    define('UPDATE_SERVER', 'http://service.b1gmail.com/patches/');
    define('SIGNATURE_SERVER', 'http://service.b1gmail.com/signatures/');

    You get these values from serverlib/init.php of the commercial version.

    b1gMail 7.4.1 Beta 3 is now available for download at https://github.com/b1gMail-OSS/b1gMail/releases! It is the first version released under the GPL license. As with every beta version: Don't use for productive use!

    Before updating, please make a backup of the database and the b1gMail folder including the data folder!

    Changes 7.4.1-beta2->7.4.1-beta3

    • New feature: field company and taxid contributed by SLM
    • New feature: Edit alias sendername
    • New feature: Alias login is disabled by default, user can set if login is allowed for every alias (note: this has no effect on b1gMailServer)
    • New feature: deref.php shows a warning, if an external link is clicked (enabled by default, can disabled on admin)
    • New feature: favicon show a number, when new emails is coming (commit b497530)
    • Organizer can now disabled at group settings
    • Add auth plugin: wbb2 and MyBB
    • more fixes for PHP 8 and higher
    • Updated german plz (commit 8956ce0)
    • new template hooks: afterButtons and beforemailSendOptions (commit facf6b3)
    • new tool: postfix transport list creator, if you plan to use b1gMail with Postfix Transport (commit 2fbda2e)
    • switch to fork awesome (which is compatible with font awesome 4.7, but with more icons. Note: This decision has no impact on later versions, when an upgrade from Font Awesome to the latest one is planned.)
    • updated ckeditor to 4.17.2 and Restored show source button
    • a lot of small fixes and improvements

    Important for plugin authors

    With Beta 3, the static Function BMUser::Fetch was changed to BMUser::staticFetch. If you use this function in plugins you have to change this.

    New installation

    Download complete package. In serverlib rename config.default.inc.php to config.inc.php and version.default.inc.php to version.inc.php.

    Update from b1gMail 7.4.0, 7.4.1-beta1 and 2

    upload the files. After call /setup/update.php. Alternatively delete in serverlib the file version.inc.php and rename version.default.inc.php to version.inc.php and call tools/db_sync.php. In both cases the setup folder must be deleted afterwards.

    Update from b1gMail 7.3.0

    Call /setup/update.php after the upload.

    Update from other b1gMail 7.4 beta versions

    You have to update to b1gMail 7.4.0-Beta4 first.

    Update from b1gMail versions older than 7.3.0

    The update routine goes from 7.0.0. However, this has not been tested and it is therefore recommended to update to b1gMail 7.3.0 first, if you have access to this version.

    Update from b1gMail6

    If you are already using b1gMail6, please update to b1gMail 7.2.0 first, then to 7.3.0 and then to this version.

    Notes

    • Before updating, please make a backup of your database and files. No liability for data loss!
    • b1gMail 7.4.1 requires at least PHP 5.4
    • New installation requires at least MySQL / MariaDB 5.5.3. MySQL 8.x and higher is currently not supported ( except MariaDB ). We recommend MariaDB as Database Engine.
    • After the update please delete your browser cache
    • b1gMail 7.4.1 also contains the PremiumAccount and Fax plugin.
    • If b1gMailServer is used, please restart the queue service after the update and make sure that the latest version is used.
    • The server part of b1gMailServer is currently NOT OpenSource, only the included admin interface.
    • Plugins from ThinkClever GmbH are not compatible with the b1gMail 7.4 version. These must be uninstalled before update.
    • If the b1gMail installation is still running in ISO character set / Latin mode, it is strongly recommended to convert to UTF-8 format.

    Limitations compared with the old commercial version

    • The toolbox is currently not available for the free version. License holders of the former commercial b1gMail version can still use the service, see below for more information.
    • Update notifications are not available
    • Fax plugin: Since the proprietary FPDI parser library is not allowed to be shipped in a GPL project, it was removed with the update of the FPDI class. This removes support for compressed PDF files. If one still needs this, a license must be purchased at https://www.setasign.com/products/fpdi-pdf-parser/pricing/. Alternatively, the last commercial version of the fax plugin can be used if a license was purchased at that time.

    Was auch noch gut wäre wäre eine generelle HTML5 Desktop Benachrichtigung für E-Mail und Kalender, glaube aber das jemand das schon entwickelt hat.

    Wer denn?

    Ansonsten das lässt sich wohl leicht umsetzen: https://www.a-coding-project.de/ratgeber/html/…b-notifications

    Werd ich in der nächsten Veröffentlichung aufnehmen. Im aktuellen GitHub-Repository hab ich ein Favicon-Benachrichtigungscounter umgesetzt, das zeigt im Browser-Tab an, ob eine neue Nachricht eingetroffen ist.

    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;
                }

    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.

    Das ist eine sehr gute Idee. Hierfür sollte die offiziellen ISO-Ländercodes verwendet werden: https://de.wikipedia.org/wiki/ISO-3166-1-Kodierliste

    ManDal hat das vorausschauend ja schon mal in seinem Wetter-Widget in die Tabelle {pre}_staaten eingebaut. Die Möglichkeit die Daten anzuzeigen und zu editieren habe ich in die Templates integriert (siehe Anhang).

    Nur hab ich noch keine Möglichkeit gefunden, die ISO-Codes mit der Sprachdatei zu referenzieren und das Länder-Auswahlmenü damit zu bestücken :/

    Es fehlen außerdem noch viele Staaten: https://de.wikipedia.org/wiki/Liste_der_Staaten_der_Erde. Aktuell hat b1gMail etwa 144 (anderes Land nicht mitgezählt.

    Nein. bm60_ ist bei manchen Dateien (auch Plugins) fest kodiert. Ich schätze mal, dass Präfixe vorgesehen waren (an manchen stellen gibt es {pre}), aber das wurde wohl nie wirklich umgesetzt (oder gab es diese Möglichkeit bei b1gMail6/5?)

    Spaltenname nachträglich internationalisieren könnte man evtl. ab b1gMail 8 machen. Solange b1gMailServer nicht opensource ist, sehe ich aktuell keinen Mehrwert drin.

    Im der aktuellen DB-Struktur sind deine Änderungen nun enthalten, allerdings mit ein paar Änderungen:

    Ich habe company genommen, weil für neue Felder stets englische benutzt werden soll und b1gMail internationalisiert werden sollte. Nur bei anrede bin ich davon ausgewichen. Außerdem hab ich 255 bzw. 128 in orders genutzt, weil Firmennamen können auch mal länger als 50 Zeichen sein können.

    Ist in bm60_prefs in der Spalte rgtemplate gespeichert. Kannst du es exportieren? Ich bin am überlegen, ob ich das beim Update überhaupt überschreiben soll, meine Tendenz eher nicht, evtl. nur wenn das Template seit der Installation nie geändert wurde. im setup.php ist das Template in der Variable $defaultInvoice gespeichert.

    PS: Insbesondere in include-Verzeichnis wäre es besser, du schreibst die Änderungen im Post, anstatt komplette Dateien anzuhängen. Noch idealer wäre es, wenn du mit "diff -u" arbeitest, dann sieht man gleich die Änderungen.

    Die Datei serverlib/vcard.class.php muss ggfls. noch um die zusätzliche Anrede ergänzt werden, das habe ich bislang noch nicht geschafft.

    anrede kommt auch in bm60_adressen vor.

    Edit: Bezüglich divers: b1gMail bietet ja bereits die Anrede leer zu lassen. Daher die Frage ob das sinnvoll ist, noch eine weitere hinzuzufügen. Soweit ich verstanden habe, ist divers ein Sammelbegriff und wenn b1gMail eine explizite Geschlechtsangabe hätte, fänd ich das auf jedenfall unterstützenswert. Vielleicht wären andere Anrede wie "Hallo" oder "Lieber" die bessere Varianten.

    Leider nirgendswo... Aber ein Blick zeigt, dass da eine serverlib/toolinterface.class.php eingebunden wird und BMToolInterface exportiert wird. Jetzt muss man sich nur die Aufrufe von der Toolbox in einem Log ausgeben lassen.

    EDIT: /interface/clientapi.php?class=BMToolInterface&method=GetServiceInfo gibt mir folgendes aus.

    GetServiceInfo ist eine Funktion, die innerhalb vom toolinterface.class.php zu finden ist.