Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
de:2.0:probleme_rund_um_admidio [2018/06/24 12:39] fassede:2.0:probleme_rund_um_admidio [2023/09/26 20:15] (current) fasse
Line 5: Line 5:
  
 Zu diesen Informationen gehören (Beispiele): Zu diesen Informationen gehören (Beispiele):
-  * PHP Version (v7.1.2)+  * PHP Version (v8.2.5)
   * Datenbank Typ + Version (MySQL v10.1.2)   * Datenbank Typ + Version (MySQL v10.1.2)
-  * Admidio Version (v3.2.10+  * Admidio Version (v4.2.12
-  * Verwendete Plugins + Versionen (Mitgliedsbeitrag v4.2.1Geburtstagsliste)+  * Verwendete Plugins + Versionen (statistics v3.1.3written communication)
   * Eigene Anpassungen die durchgeführt wurden (anderes Design, eigene Code Änderungen)   * Eigene Anpassungen die durchgeführt wurden (anderes Design, eigene Code Änderungen)
-  * Exception Messages -> Siehe "Debugmodus setzen(auf sensible Informationen achten!) +  * Exception Messages -> Siehe [[de:2.0:probleme_rund_um_admidio#debugmodus_setzen|Debugmodus setzen]] (auf sensible Informationen achten!) 
-  * Logdatei Auszüge -> Siehe "Debugmodus setzen(auf sensible Informationen achten!)+  * Logdatei Auszüge -> Siehe [[de:2.0:probleme_rund_um_admidio#debugmodus_setzen|Debugmodus setzen]] (auf sensible Informationen achten!)
   * Genaue Anleitung der Schritte wie es zum Fehler gekommen ist -> Nicht reproduzierbare Fehler sind sehr schwer zu finden   * Genaue Anleitung der Schritte wie es zum Fehler gekommen ist -> Nicht reproduzierbare Fehler sind sehr schwer zu finden
   * Screenshots wenn sinnvoll   * Screenshots wenn sinnvoll
Line 26: Line 26:
 Nun werden Exceptions und andere schwerwiegende Fehler direkt in der Webseite ausgegeben, sowie erweiterte Informationen in die Logdateien geschrieben. Für jeden Tag wird eine eigene Datei angelegt. Diese könnt ihr mit jedem beliebigen Texteditor öffnen und analysieren. Nun werden Exceptions und andere schwerwiegende Fehler direkt in der Webseite ausgegeben, sowie erweiterte Informationen in die Logdateien geschrieben. Für jeden Tag wird eine eigene Datei angelegt. Diese könnt ihr mit jedem beliebigen Texteditor öffnen und analysieren.
 <file>adm_my_files/logs/admidio-2017-08-23.log</file> <file>adm_my_files/logs/admidio-2017-08-23.log</file>
 +
 +===== PHP-Code in Template-Dateien einbauen =====
 +Admidio nutzt seit Version 4.0 die Template-Engine [[https://www.smarty.net|Smarty]]. Im Theme-Ordner ''adm_themes/simple/templates'' befinden sich die Template-Dateien, welche von euch angepasst werden können um das [[de:2.0:admidio_customization|Layout von Admidio]] euren Wünschen anzupassen.
 +
 +PHP-Code kann man aus Sicherheitsgründen dort nicht einbinden. Wollt ihr dennoch eigenen PHP-Code in einer Template-Datei nutzen, so könnt ihr dies über ein Plugin machen. Erstellt im Ordner ''adm_plugins'' einen neuen Ordner mit einem beliebigen Namen z.B. **skripte**. In diesem Ordner erstellt ihr nun für jeden PHP-Schnipsel den ihr irgendwo einbinden wollt eine eigene Datei z.B. **date.php**. In dieser Datei könnt ihr nun HTML und PHP hinterlegen: <code php><b>Das heutige Datum ist <?php echo date('d.m.Y', time()); ?></b></code> Im nächsten Schritt könnt ihr mit dem folgenden Code die Ausgabe dieser Datei in jeder Template-Datei an einer beliebigen Stelle hinterlegen: <code html>{load_admidio_plugin plugin="skripte" file="date.php"}</code>Dieser Code kann einfach direkt im HTML der Template-Datei abgelegt werden. Dabei wird bei ''plugin="xyz"'' der Name eures Unterordners von adm_plugins angegeben und mit ''file="xyz"'' der Dateiname.
  
 ===== Probleme beim Fotoupload ===== ===== Probleme beim Fotoupload =====
Line 51: Line 56:
 Hier ist es ganz einfach, wenn du dich mit der Konsole und dem Editor [[http://www.vim.org|Vim]] auskennst. Öffne die Datei mit Vim und gebe '':set nobomb'' ein. Jetzt die Datei noch Speichern und alles wird gut. Hier ist es ganz einfach, wenn du dich mit der Konsole und dem Editor [[http://www.vim.org|Vim]] auskennst. Öffne die Datei mit Vim und gebe '':set nobomb'' ein. Jetzt die Datei noch Speichern und alles wird gut.
  
-===== Überschriften der Plugins nicht anzeigen ===== +===== Massenzuordnung von Rollen über den Import =====
-Seit Version 2.2 besitzen die meisten Plugins Überschriften, die über dem Plugininhalt angezeigt werden. Sollen diese nicht angezeigt werden, da du selber eine Überschrift auf der Homepage nutzt, oder es einfach nicht in das Layout der Seite passt, so kann man diese Überschriften mit einem einfachen CSS-Schnipsel entfernen. Dazu ergänzt du folgenden Code in der **system.css** in deinem Themeordner im Unterordner **css**: +
-<code css>.admPluginHeader { +
-    display:            none; +
-}</code> +
- +
-===== Massenrollenzuordnung über den Import =====+
 Will man schnell vielen Benutzern eine bestimmte Rolle zuordnen, so kann man dies auch über den Import tätigen. Dazu erstellt man eine Excelliste mit Vorname und Nachname der Personen, die die Rolle zugeordnet bekommen sollen. Ggf. kann man diese Liste über den Export einer anderen Rolle erstellen lassen und verändert diese Liste nur noch.  Will man schnell vielen Benutzern eine bestimmte Rolle zuordnen, so kann man dies auch über den Import tätigen. Dazu erstellt man eine Excelliste mit Vorname und Nachname der Personen, die die Rolle zugeordnet bekommen sollen. Ggf. kann man diese Liste über den Export einer anderen Rolle erstellen lassen und verändert diese Liste nur noch. 
  
 Diese Liste gibt man nun beim Import an und wählt den bei **Existierende Benutzer** den Typ **Ergänzen**. Im nächsten Schritt ordnet man seine Pflichtfelder zu und danach werden die Benutzer importiert und die Rollenzuordnung angelegt. Da die Benutzer bereits alle existieren und auch keine Änderungen an den Feldinhalten vorgenommen wurden, werden so nur die Rollenzuordnung schnell und einfach angelegt. Diese Liste gibt man nun beim Import an und wählt den bei **Existierende Benutzer** den Typ **Ergänzen**. Im nächsten Schritt ordnet man seine Pflichtfelder zu und danach werden die Benutzer importiert und die Rollenzuordnung angelegt. Da die Benutzer bereits alle existieren und auch keine Änderungen an den Feldinhalten vorgenommen wurden, werden so nur die Rollenzuordnung schnell und einfach angelegt.
- 
-===== Grafiken anpassen ===== 
- 
-**Icons**\\  
-Im Ordner Icons des von euch gewählten Themes findet ihr alle Icons die in Admidio verwendet werden. Alle Icons sind entweder 16x16 (z.B.{{:de:2.0:home_small.png|}}) oder 32x32 (z.B.{{:de:2.0:home_big.png|}}) Pixel groß. Solltet ihr die bestehenden Icons ändern wollen, ersetzt einfach die bestehenden Dateien durch eure eigenen. Dabei solltet ihr darauf achten, dass ihr die Größe entsprechend anpasst. Manche Symbole werden in beiden Größen verwendet. Damit eure Nutzer ein einheitliches Bild vorfinden, solltet ihr wenn beide Formate erneuern. 
- 
- 
-**Sonstige verwendete Grafiken**\\  
-Hier werden einige der für das "modern"-Layout verwendeten Grafiken als Photoshop-Rohdaten zur Verfügung gestellt. So lassen sich z.B. die Farben recht einfach anpassen. Noch ein Tipp: Nach den Änderungen das Bild einfach über "Datei > Für Web und Geräte speichern" ins png-Format umwandel und in den richtigen Ordner speichern. 
- 
-**no_profile_pic**\\  
-Diese Grafik wird angezeigt, wenn ein Benutzer kein eigenes Foto in sein Profil geladen hat.[[http://www.admidio.org/daten/no_profile_pic.psd]] 
  
 ===== Admidio-Ordner verschieben ===== ===== Admidio-Ordner verschieben =====
Line 84: Line 71:
 Jetzt läuft Admidio in dem neuen Ordner. Jetzt läuft Admidio in dem neuen Ordner.
  
- +===== Zurück-Link ins Theme einbauen ===== 
-===== Umstellung des Menüs auf die Datenbank ===== +Hin und wieder ist es praktisch einen Link zu haben, der einen Zurück zur vorherigen Seite bringtWenn ihr diesen Link benötigt, könnt ihr diesen an beliebiger Stelle in der Templatedatei hinterlegenÖffnet dazu die Datei ''adm_themes/simple/templates/index.tpl'und fügt dort an der gewünschten Stelle diesen Codeschnipsel ein: <code smarty>{if $hasPreviousUrl
- +    <!-- Add link to previous page --> 
-Mit Version 3.3 wird das Menü jetzt nicht mehr statisch in der Datei **my_body_bottom.php** zusammengebautsondern aus der Datenbank ausgelesenDamit dies dann auch bei euch funktioniert, müsst ihr die **my_body_bottom.php** bei einem Update auf die Version 3.3 oder neuer anpassen. +    <a id="admidio-back-link" class="" href="{$urlAdmidio}/adm_program/system/back.php"><i class="fas fa-arrow-circle-left fa-fw"></i> {$l10n->get('SYS_BACK')}</a
- +{/if}</code>Es wird in diesem Fall nur ein Link angezeigt, sofern auch eine sinnvolle URL von einer vorherigen Seite vorhanden istDie optische Gestaltung könnt ihr über CSS noch weiter anpassen oder auch in dem Code-Schnipsel das HTML entsprechend abändern.
-Folgende 3 Möglichkeiten habt ihr: +
-  - Habt ihr keine Anpassungen in unserem Standard-Theme gemachtso könnt ihr einfach beim Update den Theme-Ordner **adm_themes** austauschen. +
-  - Habt ihr Anpassungen im Theme vorgenommen, allerdings nicht in der Datei **my_body_bottom.php**, dann tauscht einfach nur diese Datei aus. +
-  - Habt ihr die Datei **my_body_bottom.php** an eure Bedürfnisse angepasst, so müsst ihr nun dort hineingehen und ein wenig Code austauschen.\\  Dazu entfernt ihr bitte folgenden Code: <code html>               <div id="plugin_menu" class="admidio-plugin-content"> +
-                    <?php +
-                    // Module Menu +
-                    $moduleMenu = new Menu('modules', $gL10n->get('SYS_MODULES')); +
-                    $moduleMenu->addItem('overview', '/adm_program/index.php'+
-                                         $gL10n->get('SYS_OVERVIEW'), '/icons/home.png'); +
-                    if($gPreferences['enable_announcements_module'] == 1 +
-                    || ($gPreferences['enable_announcements_module'] == 2 && $gValidLogin)) +
-                    { +
-                        $moduleMenu->addItem('announcements', FOLDER_MODULES . '/announcements/announcements.php', +
-                                             $gL10n->get('ANN_ANNOUNCEMENTS'), '/icons/announcements.png'); +
-                    } +
-                    if($gPreferences['enable_download_module'] == 1) +
-                    { +
-                        $moduleMenu->addItem('download', FOLDER_MODULES . '/downloads/downloads.php', +
-                                             $gL10n->get('DOW_DOWNLOADS'), '/icons/download.png'); +
-                    +
-                    if($gPreferences['enable_mail_module'] == 1 && !$gValidLogin) +
-                    { +
-                        $moduleMenu->addItem('email', FOLDER_MODULES . '/messages/messages_write.php', +
-                                             $gL10n->get('SYS_EMAIL'), '/icons/email.png'); +
-                    } +
-                    if(($gPreferences['enable_pm_module'] == 1 || $gPreferences['enable_mail_module'] == 1) && $gValidLogin) +
-                    { +
-                        $unreadBadge = ''; +
-                        // get number of unread messages for user +
-                        $message = new TableMessage($gDb); +
-                        $unread = $message->countUnreadMessageRecords($gCurrentUser->getValue('usr_id')); +
-                        if($unread > 0) +
-                        { +
-                            $unreadBadge = '<span class="badge">' . $unread . '</span>'; +
-                        } +
-                        $moduleMenu->addItem('private_message', FOLDER_MODULES . '/messages/messages.php', +
-                                             $gL10n->get('SYS_MESSAGES') . $unreadBadge, '/icons/messages.png'); +
-                    } +
-                    if($gPreferences['enable_photo_module'== +
-                    || ($gPreferences['enable_photo_module'] == 2 && $gValidLogin)) +
-                    { +
-                        $moduleMenu->addItem('photo', FOLDER_MODULES . '/photos/photos.php', +
-                                             $gL10n->get('PHO_PHOTOS'), '/icons/photo.png'); +
-                    } +
-                    if($gPreferences['enable_guestbook_module'] == 1 +
-                    || ($gPreferences['enable_guestbook_module'] == 2 && $gValidLogin)) +
-                    { +
-                        $moduleMenu->addItem('guestbk', FOLDER_MODULES . '/guestbook/guestbook.php', +
-                                             $gL10n->get('GBO_GUESTBOOK'), '/icons/guestbook.png'); +
-                    } +
-                    $moduleMenu->addItem('lists', FOLDER_MODULES . '/lists/lists.php', +
-                                         $gL10n->get('LST_LISTS'), '/icons/lists.png'); +
-                    if($gValidLogin) +
-                    { +
-                        $moduleMenu->addItem('mylist', FOLDER_MODULES . '/lists/mylist.php', +
-                                             $gL10n->get('LST_MY_LIST'), '/icons/mylist.png'); +
-                    } +
-                    if($gPreferences['enable_dates_module'== 1 +
-                    || ($gPreferences['enable_dates_module'] == 2 && $gValidLogin)) +
-                    { +
-                        $moduleMenu->addItem('dates', FOLDER_MODULES . '/dates/dates.php', +
-                                             $gL10n->get('DAT_DATES'), '/icons/dates.png'); +
-                    } +
-                    if($gPreferences['enable_weblinks_module'] == 1 +
-                    || ($gPreferences['enable_weblinks_module'] == 2 && $gValidLogin)) +
-                    { +
-                        $moduleMenu->addItem('links', FOLDER_MODULES . '/links/links.php', +
-                                             $gL10n->get('LNK_WEBLINKS'), '/icons/weblinks.png'); +
-                    } +
-                    echo $moduleMenu->show(); +
-                    // Administration Menu +
-                    if($gCurrentUser->approveUsers() || $gCurrentUser->editUsers() +
-                    || $gCurrentUser->manageRoles()  || $gCurrentUser->isAdministrator()) +
-                    { +
-                        $adminMenu = new Menu('administration', $gL10n->get('SYS_ADMINISTRATION')); +
-                        if($gCurrentUser->approveUsers() && $gPreferences['registration_mode'] > 0) +
-                        { +
-                            $adminMenu->addItem('newreg', FOLDER_MODULES . '/registration/registration.php', +
-                                                $gL10n->get('NWU_NEW_REGISTRATIONS'), '/icons/new_registrations.png'); +
-                        } +
-                        if($gCurrentUser->editUsers()) +
-                        { +
-                            $adminMenu->addItem('usrmgt', FOLDER_MODULES . '/members/members.php', +
-                                                $gL10n->get('MEM_USER_MANAGEMENT'), '/icons/user_administration.png'); +
-                        } +
-                        if($gCurrentUser->manageRoles()) +
-                        { +
-                            $adminMenu->addItem('roladm', FOLDER_MODULES . '/roles/roles.php', +
-                                                $gL10n->get('ROL_ROLE_ADMINISTRATION'), '/icons/roles.png'); +
-                        } +
-                        if($gCurrentUser->isAdministrator()) +
-                        { +
-                            $adminMenu->addItem('dbback', FOLDER_MODULES . '/backup/backup.php', +
-                                                $gL10n->get('BAC_DATABASE_BACKUP'), '/icons/backup.png'); +
-                            $adminMenu->addItem('orgprop', FOLDER_MODULES . '/preferences/preferences.php', +
-                                                $gL10n->get('SYS_SETTINGS'), '/icons/options.png'); +
-                        } +
-                        echo $adminMenu->show(); +
-                    } +
-                    ?> +
-</div><!-- closes "div#plugin_menu" --></code> Ergänzt nun nach folgender Zeile: <code php>require(ADMIDIO_PATH FOLDER_PLUGINS . '/login_form/login_form.php');</code> diese Zeilen Code: <code php>// create html page object and display Menu +
-$page = new HtmlPage(); +
-echo $page->showMainMenu(false);</code> +
-Nun sollte die Seitenleiste immer das Menü anzeigen, welches ihr in Admidio konfiguriert habt.+
  • de/2.0/probleme_rund_um_admidio.1529836761.txt.gz
  • Last modified: 2018/06/24 12:39
  • by fasse