Eigene Listen verlinken

Hast du Vorschläge, was wir an Admidio noch verbessern könnten ? Hier kannst du uns deine Vorstellung an neuen Funktionen mitteilen.
Antworten
Delta6400
Beiträge: 17
Registriert: 11. Okt 2016, 20:37

Eigene Listen verlinken

Beitrag von Delta6400 »

Anleitung siehe unten:
Zuletzt geändert von Delta6400 am 23. Okt 2016, 15:40, insgesamt 2-mal geändert.
Delta6400
Beiträge: 17
Registriert: 11. Okt 2016, 20:37

Anleitung: Eigene Altersgestaffelte Listen haben und anzeigen.

Beitrag von Delta6400 »

Moin Moin zusammen,
da ich mehrere tage an mein Vorhaben dran saß wollte ich euch eine Anleitung schreiben wie ihr es selber bei euch auch machen könnt.

Zum System:
Admidio Version: 3.1.7
Admidio läuft bei mir über meine Synology Diskstation dies ist aber egal für die weiteren Sachen.

Mein Vorhaben:
Ich wollte auf der Übersichtsseite alle Mannschaften aufgeführt haben jeweils Männlich und Weiblich getrennt und immer aktuell.

Was brauch ich hierfür?
Natürlich Admidio, etwas kenntnisse bei der html bzw php Programmierung, FTP Zugang und Zugang zur Datenbank

1. Das Plugin Mitgliedsbeitrag
Ladet euch folgendes Plugin herunter: https://www.admidio.org/dokuwiki/doku.p ... edsbeitrag
Unter dem Ordner "adm_plugins" einen Ordner mit dem Namen "mitgliedsbeitrag" erstellen und da alle Dateien reinkopieren aus der zip-Datei.
Nun unter "\adm_themes\modern\" die Datei "my_body_bottom.php" öffnen.
Dann DIREKT VOR der vorhandenen Anweisung „echo $moduleMenu→show();“ diese Zeile einfügen:

Code: Alles auswählen

include(SERVER_PATH. '/adm_plugins/mitgliedsbeitrag/mitgliedsbeitrag.php');
Achtung: Achtet darauf das euer System schreib zugriff auf die neu hinzugefügten Dateien hat!

Nun sollte bei euch auf der rechten Seite ein Link mit Mitgliedsbeitrag erscheinen.
Wenn ja könnt Ihr weiter machen sonst natürlich nicht.

2. Die Mannschaften anlegen

Hierfür müsst ihr erst einmal in die Rollenverwaltung gehen.
Ich hab mit eine zusätzliche Kategorie angelegt namens Mannschaften.
In dieser erstellt Ihr jetzt neue Rollen.
Beispiel:
Name: Herren von -18- bis -90- Jahren (Hier bitte immer das selbe Symbol "-" benutzen. Ihr könnt auch ein * benutzen)
Kategorie:Mannschaften (Es geht natürlich auch unter einer anderen)
Beitrag €: 60 (Unbedingt eine Zahl eingeben auch wenn es nur 1€ ist, dies ist für das Plugin nötig!!
Beitragszeitraum: Jährlich (Andere Auswahl geht natürlich auch)
Speichern: Natürlich das abspeichern nicht vergessen ;)

Achtung: Achtet darauf, dass Ihr jede Altersklasse abgedeckt habt!

Meine sind folgender maßen (Hier ist noch nicht nach Männlich und Weiblich getrennt dies kommt erst Später):
Herren von -18- bis -90- Jahren
Jugend A von -16- bis -17- Jahren
Jugend B von -14- bis -15- Jahren
Knaben A von -12- bis -13- Jahren
Knaben B von -10- bis -11- Jahren
Knaben C von -8- bis -9- Jahren
Knaben D von -6- bis -7- Jahren
Minis von -0- bis -5- Jahren

3. Mitglieder zuordnen Teil1
Hierbei zu erst darauf achten, dass:
1. Alle Mitglieder ein Geburtstag besitzen
2. Ein Geschlecht eingetragen haben

Nun ordnet alle eure Mitglieder einer Rolle zu.
Dazu geht ihr wieder in die Rollenverwaltung. Geht ganz rechts von einer eurer Rollen auf das + Symbol (Text: Mitglieder zuordnen). Hier nun bei jedem Mitglied einen Hacken setzen. Speichern müsst Ihr nicht, da dies automatisch geschiedt.
Ich hab alles bei Minis eingepflegt, da wir alle mal 0 Jahre Alt waren...

4. Mitglieder zuordnen Teil2
Nun lassen wir mal das Plugin arbeiten. Bevor wir dies jedoch machen können müssen wir es noch einstellen:
Geht nun unter Mitgliedsbeitrag auf Einstellungen.
Hier unter "Altersgestaffelte Rollen" den Stichtag setzen und euer Trennzeichen eingeben. Bei mir war es ja ein "-".

Achtung: Speichern nicht vergessen!

Jetzt können wir zurück gehen. Als nächstes Kontrollieren wir ob alle Rollen erkannt worden sind:
Hierfür unter Optionen->Rollenübersicht schauen ob eure Rollen alle da sind.

Jetzt ist das Plugin richtig konfiguriert und wir können es arbeiten lassen.
Hierfür unter Beiträge->Neuzuordnung altersgestaffelte Rollen auf Neuzuordnung klicken.
Jetzt ordnet das Plugin eure Mitglieder nach dem Alter in eure Mannschaften.
Bei fehlern zeigt es euch dies an.

So jetzt haben wir unsere Mitglieder altermäßig gestaffelt. Wer nicht mehr haben möchte kann jetzt aufhören.
Wer diese nun auch über die Übersicht unter Listen einen sofort-Link haben möchte macht noch weiter:

5. Eigene Liste erstellen
Um die Mannschaften nach Männlich und Weiblich zu trennen, erstellen wir verschiedene Listen.
Hierfür gehen wir auf "Eigene Liste" und gehen folgender maßen vor:
(Persönliche Änderunund Anpassung möglich!)
Konfiguration Globalisieren: Ja Wichtig, damit jeder Benutzer die Liste nutzen kann
Nun eure Spalten je nach Wünsche eintragen.
Als letztes eine Spalte mit Geschlecht und als Bedingung Männlich auswählen.
Diese Konfiguration speichern unter den Namen "Männlich".

Nun oben auf Konfiguration auswählen und dann Männlich auswählen.
Als nächstes unten auf Konfiguration kopieren und diese den Namen "Weiblich" geben.
Hier unter Geschlecht "Weiblich" auswählen und dann speichern.

Nun dies alles nochmal machen nur dieses mal sagen wir unter Geschlecht das es keine Filtern soll, also das Feld mit " " auswählen und dies Konfiguration als "Mitglieder" speichern.

So jetzt haben wir unsere T´rennung der Geschlechter schon. Jetzt kommt die Programmierung.

6. Die Übersicht bearbeiten

Um am einfachsten html bzw php zu Programmieren ladet euch das Programm Notepad++ runter, dieses färbt euch bestimmte Befehle und sagt euch die Zeilen Nummern.

Mit Notepad++ nun folgende Datei öffnen: /adm_program/index.php

Ab Zeile 112 beginnt die Darstellung der kleinen "Listen", hier wollen wir uns anhängen.
Ich mache es Anhand der Herren Mannschaft jetzt einmal:

Code: Alles auswählen

$moduleMenu->addSubItem('lists', 'herren', '/adm_program/modules/lists/lists_show.php?mode=html&lst_id=14&rol_ids=4','Herren');
Erklärung zum Code:
Wir fangen mal von hinten an. Anstatt dem

Code: Alles auswählen

$gL10n->get('LST_MY_LIST')
habe ich bei mir

Code: Alles auswählen

'Herren'
stehen. Dies ist der Text der bei der Übersicht angezeigt wird nachher und worauf Ihr klickt.
Nun haben wir einen Link, diesen müsst Ihr nach euren System umändern.
Am einfachsten bekommt Ihr euren Link folgender maßen heraus:
Ihr geht unter Listen und wählt eure Rolle aus (bei mir jetzt Herren) und wählt dort unter Liste anezigen auf die Liste die ihr gerne haben möchtet. Nun erscheint die Liste und ihr habt oben eine URL. Diese könnt ihr jetzt ab /adm... kopieren und einfügen.
Als kleine Erklärung noch: Am Anfang sagt ihr einfach ihr möchtet eine Liste aufrufen.
mode=html sagt aus, dass es als HTML angezeigt werden soll
lst_id=14 (bei euch eine andere Zahl) ist die von euch erstellte Liste (Männlich,Weiblich,Mitglieder)
rol_ids=4 (bei euch eine andere Zahl) ist die genommene Rolle im Beispiel Herren.

Nun müsst Ihr für jede Mannschaft, wo ihr einen sofort Link haben möchtet, diesen Link rausfinden.
Ich habe es mir anchher einfach gemacht und bei männlich und weiblich jeweils die Zahl bei lst_id geändert. Somit musste ich nur jede Altersklasse einmal durchgehen.

Beispiel für 3 Mannschaften:

Code: Alles auswählen

//Minis
	$moduleMenu->addSubItem('lists', 'minis', '/adm_program/modules/lists/lists_show.php?mode=html&lst_id=14&rol_ids=10','Minis');
	
//Knaben D
	$moduleMenu->addSubItem('lists', 'knabend', '/adm_program/modules/lists/lists_show.php?mode=html&lst_id=21&rol_ids=9','Knaben D');
	
//Mädchen D
	$moduleMenu->addSubItem('lists', 'mädchend', '/adm_program/modules/lists/lists_show.php?mode=html&lst_id=19&rol_ids=9', 'Mädchen D');
So nun alles speichern und das Ergebnis anschauen.
Ich übernehme keine Garantie das alles einwandfrei Funktioniert und das keine daten verloren gehen. Ich empfehle vorher ein Backup zu machen. Bei Fragen stehe ich gerne zur Verfügung.

Was kommt demnächst?
Da ich selber noch nicht komplett zufireden bin kommen folgende Anpassungen bald:
Wenn die Liste aufgerufen wird steht oben die Rolle und danach die Liste. Dies möchte ich zu dem entsprechenden Mansnchaften ändern.

Muss ich auf etwas achten?
Ja, Ihr müsste regelmäßig das Plugin einmal durchlaufen alssen, am besten wenn die Saison beginnt.
Achtet auf den Stichtag. Dieser kann eurer Leben vereinfachen oder zur Hölle machen.

Im Anhang sind Bilder von meinem Ergebnis

Grüße und gutes gelingen,
Andreas
Dateianhänge
Mannschaften.JPG
Mannschaften.JPG (49.91 KiB) 6555 mal betrachtet
Listen.JPG
Listen.JPG (25.85 KiB) 6555 mal betrachtet
bratenbengel
Beiträge: 9
Registriert: 12. Feb 2016, 10:07

Re: Eigene Listen verlinken

Beitrag von bratenbengel »

Hallo Delta6400,

ich werde mir das nächste Woche mal ansehen in meinem System.
Das Mitgliedsbeitrag Modul wollte ich eigentlich nicht installieren, aber ich probiere es erst mal aus da es ein sehr guter Ansatz ist.

Vielen Dank für Deine Info.

cu Bratenbengel :wink:
Delta6400
Beiträge: 17
Registriert: 11. Okt 2016, 20:37

Re: Eigene Listen verlinken

Beitrag von Delta6400 »

Hey,
eigentlich hatte ich es auch nicht vor gehabt.
Aber aktuell gibt es leider keine andere "schnelle" Variante.
Wenn ich Zeit habe (was noch was länger dauern könnte) schau ich mal ob ich ein fertiges Modul programiiert bekomme. Was dann auch ordnetlicher Funktioniert. Müsste machbar sein, kenne mich nur nicht so gut mit php und mySQL und html aus, heißt es dauerd etwas.

Gruß,
Andreas
stammkoenigartus
Beiträge: 1
Registriert: 20. Feb 2017, 15:47

Re: Eigene Listen verlinken

Beitrag von stammkoenigartus »

Hallo zusammen

Ich habe mir eure Anleitung
für die altersgestaffelten Listen angesehen.
Ich muss dazu sagen ich nutze gerade Version 3.1.9

Ich bin bis zum einstellen des Plugins Mitgliedsbeitrag gekommen und weis nun nicht mehr weiter.
Das Plugin ist installiert und läuft. Ich sehe es nur unter Einstellungen nicht. Somit komm ich mit dem Schritt auch nicht weiter.
Kann mir jemand helfen?

Grüße
Felix
bratenbengel
Beiträge: 9
Registriert: 12. Feb 2016, 10:07

Re: Eigene Listen verlinken

Beitrag von bratenbengel »

Leider bekomme ich bei der Version admidio-3.2.5 nur noch eine weisse Seite angezeigt,hast Du vielleicht eine Idee dafür?

Gibt es vielleicht eine alternative für ein Plugin, damit die Altersklassen entsprechend angezeigt und ausgewählt werden können?
Ich denke das dies Problem noch andere Interessieren dürfte.
Antworten