Stärkemeldung

Alles, was nicht in die anderen Foren passt, kannst du hier loswerden.
Jochen J.
Beiträge: 41
Registriert: 30. Mär 2008, 11:58
Wohnort: Heinsberg-Dremmen
Kontaktdaten:

Stärkemeldung

Beitrag von Jochen J. »

Hallo zusammen!
Demnächst steht wieder eine Aufgabe an, die sicher viele Vereinsvorstände betrifft: Die jährliche Stärkemeldung an den (Bundes-, Landes-) Verband. Auch muss muss in wenigen Wochen melden, wieviele Mitglieder welchen Geschlechtes in welcher Altergruppe sind:
bis 6 Jahre
7 - 14 Jahre
15 - 18 Jahre
19 - 26 Jahre
27 - 40 Jahre
41 - 60 Jahre
über 60 Jahre

Bislang gehe ich so vor, dass ich mir nach Alter und Geschlecht sortierte Listen genommen habe, selbst geschaut habe, wo die Altergrenze ist, und dann einfach zählen. Nun ja, Computer heißt wörtlich übersetzt "Zähler", also liegt der Gedanke sehr nahe, den Rechenknecht das Zählen übernehmen zu lassen :-)
Ich behaupte mal: Für die ausgefuxten Admidioentwickler ist es sicher ein leichtes, diese Funktion zu integrieren oder ein als Plugin zu machen. Das fände ich äußerst sinnvoll, denn diese lästige und immer wiederkehrende Aufgabe hat so ziemlich jeder Verein an der Backe.
Vielleicht hat aber auch schon der eine oder andere Nutzer da eine Lösung parat?
Für Perfektionisten: Ist es gar möglich, die Ausgabe direkt in eine OO-Tabelle zu parsen, oder ein sonstwie ein fertiges Formular zu erzeugen? Wer immer das löst, der Dank ungezählter Vereinsvorstände wird ihn auf ewig verfolgen! :wink:
Mit freundlichen Grüßen

Jochen
Jochen
Team
Beiträge: 1506
Registriert: 22. Feb 2006, 18:11

Beitrag von Jochen »

Hallo,

da guck Dir doch dieses thread mal an: http://forum.admidio.org/viewtopic.php?t=1515.

Gruß Jochen
Jochen J.
Beiträge: 41
Registriert: 30. Mär 2008, 11:58
Wohnort: Heinsberg-Dremmen
Kontaktdaten:

Beitrag von Jochen J. »

Uff, das ist aber nix für "Endjochens" wie mich ;-)

Was steht so schön in dem von Dir genannten Thread? "Das richt förmlich nach einem Plugin" - Stimmt!!!
Mit freundlichen Grüßen

Jochen
Weatherman
Beiträge: 8
Registriert: 18. Jun 2009, 23:29

Beitrag von Weatherman »

Hallo Admidio Team,
ich lese nun schon seit einigen Tagen hier im Forum mit und habe auch den oben genannten Thread gelesen. Leider habe ich (überhaupt) keine Ahnung von PHP und komme auch mit SQL Statements nicht wirklich klar...

Genau dieses Plugin / Modul, das die Stärkemeldung für den WLSB ausgibt fehlt mir noch... Außerdem fehlen noch die Funktionen für wiederkehrende Termine im Kalender, aber das wird ja in einer der nächsten Versionen noch kommen.

Ansonsten muss ich sagen, dass Admidio eine sehr gelungene und geniale Lösung für Vereine ist!!! Riesen Lob an das Entwicklerteam!!

Gruß
Chris
matzman2000
Former team member
Beiträge: 1087
Registriert: 2. Sep 2007, 17:12
Wohnort: Itzstedt
Kontaktdaten:

Beitrag von matzman2000 »

Ich glaube, ich hatte das auch schon in dem anderen Thread geschrieben: Jeder hat bei den Auswertungen andere Präferenzen, daher ist es aus meiner Sicht schwierig ein einheitliches Plugin daraus zu generieren. Wenn es einen "Standard" bei der Auswertung gibt, dann baue ich gerne bei Gelegenheit eine Abfrage zusammen, die man als Plugin einbinden kann. Ich bin aber im Moment noch skeptisch... :roll:
Jochen J.
Beiträge: 41
Registriert: 30. Mär 2008, 11:58
Wohnort: Heinsberg-Dremmen
Kontaktdaten:

Beitrag von Jochen J. »

Na, wie bei der Listenausgabe: Jenes Feld -> Bedingung - dann >dieses Feld ->addieren, usw.
Eigentlich genauso wie Ihr "eigene Listen" gemacht hat: Nur eben erweitert um das Feature, Felder über Bedingungen zu selektieren (klassischerweise Geschlecht und Alter), und diese dann zu addieren, und das ganze dann anders als Bildschirm aus zu geben (CSV usw), die Ausgabefelder sollte noch optional benannt werden können (Also wenn ich nach Geschlecht und Alter selektiert habe, soll ich das Ergebnisfeld dann "Mädchen über 14" nennen kennen, das macht das spätere Verarbeitung einfacher). Schön wäre es, wenn man die einmal formulierte Abfrage dann fürs nächste Jahr speichern kann. Ein Formular, dass das CSV liest und die vom Verband gewünschte Form bringt, wird sich wohl jeder mit OpenOffice et al selber basteln müssen. Die kann man ja dann hier posten und mit anderen teilen.
Mit freundlichen Grüßen

Jochen
matzman2000
Former team member
Beiträge: 1087
Registriert: 2. Sep 2007, 17:12
Wohnort: Itzstedt
Kontaktdaten:

Beitrag von matzman2000 »

Gut, aber die einfache Abfrage in den Listen kann ja den grössten Teil schon:

Beispiel: 27 - 40 Jahre
Eigene Liste > Alle Felder, die für die Ausgabe gewünscht werden > Feld "Geburtstag" = "> 26j < 41j"

Damit erhälst Du eine Liste, die Du als CSV exportieren kannst...
Jochen J.
Beiträge: 41
Registriert: 30. Mär 2008, 11:58
Wohnort: Heinsberg-Dremmen
Kontaktdaten:

Beitrag von Jochen J. »

...und das will man in einer Liste mehrfach zusammen fassen. Wir müssen unserem Landesverband alljährlich melden, wieviele Mädchen und Jungen bis 8 Jahre, bis 14, bis 40, usw. Wäre schon erheblich praktisch, wenn man das nur einmal formuliert, und künftig immer nur noch per Knopfdruck - dafür hat man ja die Rechenknechte :D
Mit freundlichen Grüßen

Jochen
Weatherman
Beiträge: 8
Registriert: 18. Jun 2009, 23:29

Beitrag von Weatherman »

Hallo zusammen,
ich weiß nicht, ob ein Plugin für so etwas ausreicht, oder ob es ein komplettes Modul sein muss... Aber hier nochmal die Anforderungen, denen wohl auch Jochen zustimmen würde:

Es sollte eine Art Listenfunktion sein in der man mehrere verschiedene Abfragen zusammenfassen und diese zu einem beliebigen späteren Zeitpunkt wieder ausführen kann.

Man müsste sich also einmal die Abfragen zusammenbasteln (Bedingungen selbst festlegen) und diese dann in einer Liste zusammenfassen können.

Ich weiß leider nicht welchen Aufwand das bedeutet, aber es wäre echt eine schöne Sache :)

Gruß
Chris
Jochen J.
Beiträge: 41
Registriert: 30. Mär 2008, 11:58
Wohnort: Heinsberg-Dremmen
Kontaktdaten:

Beitrag von Jochen J. »

Genau!
Mit freundlichen Grüßen

Jochen
joesch
Beiträge: 683
Registriert: 22. Mai 2006, 14:40
Kontaktdaten:

Beitrag von joesch »

matzman2000 hat geschrieben:... Jeder hat bei den Auswertungen andere Präferenzen ...
Da hast du mit Sicherheit Recht. Aber ich glaube, genau die beschriebene Abfrage braucht eigentlich jeder, der Admidio in Deutschland einsetzt. Meines Wissens nach werden von allen Landes-, Kreis- und Stadtsportbünden jährlich Statistiken derart abgefragt, dass eine Auflistung
- Alter von x bis y
- Mitglieder weiblich
- Mitglieder männlich
- Mitglieder gesamt
erforderlich ist.

Letztlich könnte ich mir eine Matrix wie folgt vorstellen:
Einzelzeile: <Rollenname> <Alter von> <Alter bis> <männlich> <weiblich> <gesamt>
Summenzeile: ....

Die Altersbereiche ließen sich m.E. in den Orgaeinstellungen gut unterbringen, da sie sich selten oder eher gar nicht ändern. Die Auswahl der Rollen, welche mit aufgelistet werden sollen, können in einem Dialog ähnlich der Rollenzuordnung der Mitglieder erfolgen. Dadurch hätte man dann die notwendige Flexibilität, dass jeder über seine definierten Rollen (z.B. Sparten, Abteilungen, ...) die zu berücksichtigenden Mitglieder auswählen kann. Nur mal so als Idee :idea: weil man ja dafür die Rechenknechte hat :wink:

VG - Joesch
Weatherman
Beiträge: 8
Registriert: 18. Jun 2009, 23:29

Beitrag von Weatherman »

Hallo zusammen,
ich habe von Gerhard den PHP Code bekommen und nach einigen Fehlversuchen frage ich hier im Forum mal nach...

Hier der Code:

Code: Alles auswählen

<?php 
include_once($_SERVER['DOCUMENT_ROOT']. "/admidio/adm_program/system/common.php"); 

$anzahl_mitglieder = 0; 
$anzahl_maenner = 0; 
$anzahl_frauen = 0; 
$anzahl_sonstige = 0; 
$alter_mitglieder = 0; 
$alter_maenner = 0; 
$alter_frauen = 0; 
$juengster = 200; 
$aeltester = 0; 

function Geburtstag($gebdat) 
{ 
$tag = substr($gebdat,8,2); 
$monat = substr($gebdat,5,2); 
$jahr = substr($gebdat,0,4); 

$jetzt = mktime(0,0,0,date("m"),date("d"),date("Y")); 
$gb = mktime(0,0,0,$monat,$tag,$jahr); 
$alter = intval(($jetzt - $gb) / (3600 * 24 * 365)); 

return $alter; 
} 

$sql = "SELECT usr_id, row1id1.usd_value, row4id2.usd_value, row7id10.usd_value, row10id11.usd_value, rol_id 
FROM ". TBL_ROLES. ", ". TBL_CATEGORIES. ", ". TBL_MEMBERS. ", ". TBL_USERS. " 
LEFT JOIN adm_user_data row1id1 ON row1id1.usd_usr_id = usr_id 
AND row1id1.usd_usf_id = 1 
LEFT JOIN adm_user_data row4id2 ON row4id2.usd_usr_id = usr_id 
AND row4id2.usd_usf_id = 2 
LEFT JOIN adm_user_data row7id10 ON row7id10.usd_usr_id = usr_id 
AND row7id10.usd_usf_id = 10 
LEFT JOIN adm_user_data row10id11 ON row10id11.usd_usr_id = usr_id 
AND row10id11.usd_usf_id = 11 
WHERE rol_id in (5) 
AND rol_valid = 1 
AND rol_cat_id = cat_id 
AND cat_org_id = 1 
AND mem_rol_id = rol_id 
AND mem_usr_id = usr_id 
AND usr_valid = 1 
ORDER BY row1id1.usd_value ASC"; 

$result = $g_db->query($sql); 

while($row = $g_db->fetch_array($result)) 
{ 
$user = new User($g_db, $row['usr_id']); 

// Anzahl und Alter der Männer / Frauen 
$geschlecht = $user->getValue("Geschlecht"); 
$geburtstag = Geburtstag($user->getValue("Geburtstag")); 
if($geschlecht == 1) 
{ 
$anzahl_maenner++; 
$alter_maenner = $alter_maenner+$geburtstag; 

} 
else if($geschlecht == 2) 
{ 
$anzahl_frauen++; 
$alter_frauen = $alter_frauen+$geburtstag; 
}else{ 
$anzahl_sonstige++; 
$alter_sonstige = $alter_sonstige+$geburtstag; 
} 
if($geburtstag > $aeltester) 
{ 
$aeltester = $geburtstag; 
} 
if($geburtstag < $juengster) 
{ 
$juengster = $geburtstag; 
} 
} 


echo "<h1>Statistiken der TTG Sonnenb&uuml;hl</h1>"; 
echo "<br>"; 

echo "<h2>Allgemeine Statistiken</h2>"; 
echo "<br>";

echo "Anzahl Mitglieder: ". ($anzahl_frauen+$anzahl_maenner+$anzahl_sonstige); 
echo "<br>"; 
echo "Anzahl Frauen: ". $anzahl_frauen; 
echo "<br>"; 
echo "Anzahl M&auml;nner: ". $anzahl_maenner; 
echo "<br>"; 
echo "Anzahl Geschlecht nicht zugeordnet: ". $anzahl_sonstige; 
echo "<br>"; 
echo "Durchschnittsalter: ". round((($alter_maenner+$alter_frauen+$alter_sonstige)/($anzahl_frauen+$anzahl_maenner+$anzahl_sonstige)),1); 
echo "<br>"; 
echo "Durchschnittsalter Frauen: ". round(($alter_frauen/$anzahl_frauen),1); 
echo "<br>"; 
echo "Durchschnittsalter M&auml;nner: ". round(($alter_maenner/$anzahl_maenner),1); 
echo "<br>"; 
echo "J&uuml;ngstes Mitglied: ". $juengster; 
echo "<br>"; 
echo "&Auml;ltestes Mitglied: ". $aeltester; 
echo "<br>"; 

echo "<h2>Statistiken M&auml;nner</h2>"; 
echo "<br>";

echo "<h2>Statistiken Frauen</h2>"; 
echo "<br>";


?> 
Ich brauche nun mal ein Beispiel, wie ich alle Männer von 7-14 Jahre in der Liste ausgeben kann... Ich denke, dass ich die anderen Abfragen dann hinbekommen würde. Aber irgendwie fehlt mir da doch einiges an Hintergrundwissen... Ich würde mich sehr über etwas Hilfe freuen...

Gruß
Chris
Weatherman
Beiträge: 8
Registriert: 18. Jun 2009, 23:29

Beitrag von Weatherman »

So, muss mich nun doch nochmal melden... (sorry für Doppelpost)
Ich hab das Problem erst mal gelöst (für meine Bedürfnisse). Ich habe den Code in ein PHP File gepackt, das ich innerhalb von Admidio über die Navigation öffne. Deshalb habe ich auch das Standard Layout gleich mit eingebunden.

Eine Frage hätte ich aber noch: Und zwar dauert es 28 Sekunden, bis die Seite komplett geladen ist... Eine ganz schöne Dauer für eine kleine Statistikseite. Liegt das daran, dass ich lauter if s eingebaut habe, statt der else if s? Oder liegt das einfach daran, dass die Schleife ewig braucht, bis sie komplett durchgelaufen ist?

Hoffe ich vergesse jetzt nichts... Anzupassen sind:
- Pfad zur Common PHP
- EDIT: In der SQL Abfrage muss die rol_id angepasst werden auf die Rollen ID('s) die abgefragt werden soll(en)
- Berechnungen der Altersklassen (bei Bedarf)
- Überschriften der verschiedenen Statistikbereiche

Hier der Code:

Code: Alles auswählen

<?php 
include_once($_SERVER['DOCUMENT_ROOT']. "/admidio/adm_program/system/common.php"); 

// Url-Stack loeschen
$_SESSION['navigation']->clear();

// Html-Kopf ausgeben
$g_layout['title']  = 'Statistiken';
$g_layout['header'] = '<link rel="stylesheet" href="'. THEME_PATH. '/css/overview_modules.css" type="text/css" />';

require(THEME_SERVER_PATH. '/overall_header.php');



echo'<div class="formLayout" id="modules_list_form">
    <div class="formHead">Statistiken</div>
    <div class="formBody">
        <ul class="formFieldList">';

$anzahl_mitglieder = 0; 
$anzahl_maenner = 0; 
$anzahl_frauen = 0; 
$anzahl_sonstige = 0; 
$alter_mitglieder = 0; 
$alter_maenner = 0; 
$alter_frauen = 0; 
$juengster = 200; 
$aeltester = 0; 

//Variablen zur Altersstatistik Maenner
$m6 = 0;
$m714 = 0;
$m1518 = 0;
$m1926 = 0;
$m2740 = 0;
$m4160 = 0;
$m60pl = 0;


//Variablen zur Altersstatistik Frauen
$f6 = 0;
$f714 = 0;
$f1518 = 0;
$f1926 = 0;
$f2740 = 0;
$f4160 = 0;
$f60pl = 0;

//Variablen zur Altersstatistik gesamt
$g6 = 0;
$g714 = 0;
$g1518 = 0;
$g1926 = 0;
$g2740 = 0;
$g4160 = 0;
$g60pl = 0;


function Geburtstag($gebdat) 
{ 
$tag = substr($gebdat,8,2); 
$monat = substr($gebdat,5,2); 
$jahr = substr($gebdat,0,4); 

$jetzt = mktime(0,0,0,date("m"),date("d"),date("Y")); 
$gb = mktime(0,0,0,$monat,$tag,$jahr); 
$alter = intval(($jetzt - $gb) / (3600 * 24 * 365)); 

return $alter; 
} 

$sql = "SELECT usr_id, row1id1.usd_value, row4id2.usd_value, row7id10.usd_value, row10id11.usd_value, rol_id 
FROM ". TBL_ROLES. ", ". TBL_CATEGORIES. ", ". TBL_MEMBERS. ", ". TBL_USERS. " 
LEFT JOIN adm_user_data row1id1 ON row1id1.usd_usr_id = usr_id 
AND row1id1.usd_usf_id = 1 
LEFT JOIN adm_user_data row4id2 ON row4id2.usd_usr_id = usr_id 
AND row4id2.usd_usf_id = 2 
LEFT JOIN adm_user_data row7id10 ON row7id10.usd_usr_id = usr_id 
AND row7id10.usd_usf_id = 10 
LEFT JOIN adm_user_data row10id11 ON row10id11.usd_usr_id = usr_id 
AND row10id11.usd_usf_id = 11 
WHERE rol_id in (5) 
AND rol_valid = 1 
AND rol_cat_id = cat_id 
AND cat_org_id = 1 
AND mem_rol_id = rol_id 
AND mem_usr_id = usr_id 
AND usr_valid = 1 
ORDER BY row1id1.usd_value ASC"; 

$result = $g_db->query($sql); 

while($row = $g_db->fetch_array($result)) 
{ 
$user = new User($g_db, $row['usr_id']); 

// Anzahl und Alter der Männer / Frauen 
$geschlecht = $user->getValue("Geschlecht"); 
$geburtstag = Geburtstag($user->getValue("Geburtstag")); 
if($geschlecht == 1) 
{ 
$anzahl_maenner++; 
$alter_maenner = $alter_maenner+$geburtstag; 


if($geburtstag <= 6)
	{
		$m6++;
	}

if(($geburtstag >= 7) AND ($geburtstag <= 14))
	{
		$m714++;
	}

if(($geburtstag >= 15) AND ($geburtstag <= 18))
	{
		$m1518++;
	}

if(($geburtstag >= 19) AND ($geburtstag <= 26))
	{
		$m1926++;
	}

if(($geburtstag >= 27) AND ($geburtstag <= 40))
	{
		$m2740++;
	}

if(($geburtstag >= 41) AND ($geburtstag <= 60))
	{
		$m4160++;
	}

if($geburtstag >= 61)
	{
		$m60pl++;
	}

//Ende Statistik Maenner
}

else if($geschlecht == 2) 
	{ 
		$anzahl_frauen++; 
		$alter_frauen = $alter_frauen+$geburtstag; 

if($geburtstag <= 6)
	{
		$f6++;
	}

if(($geburtstag >= 7) AND ($geburtstag <= 14))
	{
		$f714++;
	}

if(($geburtstag >= 15) AND ($geburtstag <= 18))
	{
		$f1518++;
	}

if(($geburtstag >= 19) AND ($geburtstag <= 26))
	{
		$f1926++;
	}

if(($geburtstag >= 27) AND ($geburtstag <= 40))
	{
		$f2740++;
	}

if(($geburtstag >= 41) AND ($geburtstag <= 60))
	{
		$f4160++;
	}

if($geburtstag >= 61)
	{
		$f60pl++;
	}

//Ende Statistik Frauen
	}


	else
	{ 
		$anzahl_sonstige++; 
		$alter_sonstige = $alter_sonstige+$geburtstag; 
	} 
if($geburtstag > $aeltester) 
	{ 
		$aeltester = $geburtstag; 
	} 
if($geburtstag < $juengster) 
	{ 
		$juengster = $geburtstag; 
	} 
	

if($geburtstag <= 6)
	{
		$g6++;
	}

if(($geburtstag >= 7) AND ($geburtstag <= 14))
	{
		$g714++;
	}

if(($geburtstag >= 15) AND ($geburtstag <= 18))
	{
		$g1518++;
	}

if(($geburtstag >= 19) AND ($geburtstag <= 26))
	{
		$g1926++;
	}

if(($geburtstag >= 27) AND ($geburtstag <= 40))
	{
		$g2740++;
	}

if(($geburtstag >= 41) AND ($geburtstag <= 60))
	{
		$g4160++;
	}

if($geburtstag >= 61)
	{
		$g60pl++;
	}


//Schleifenende
	}




echo "<h2>Allgemeine Statistiken:</h2>"; 
echo "<br>";

echo "Anzahl Mitglieder: ". ($anzahl_frauen+$anzahl_maenner+$anzahl_sonstige); 
echo "<br>"; 
echo "Anzahl Frauen: ". $anzahl_frauen; 
echo "<br>"; 
echo "Anzahl M&auml;nner: ". $anzahl_maenner; 
echo "<br>"; 
echo "Durchschnittsalter: ". round((($alter_maenner+$alter_frauen+$alter_sonstige)/($anzahl_frauen+$anzahl_maenner+$anzahl_sonstige)),0); 
echo "<br>"; 
echo "Durchschnittsalter Frauen: ". round(($alter_frauen/$anzahl_frauen),0); 
echo "<br>"; 
echo "Durchschnittsalter M&auml;nner: ". round(($alter_maenner/$anzahl_maenner),0); 
echo "<br>"; 
echo "J&uuml;ngstes Mitglied: ". $juengster; 
echo "<br>"; 
echo "&Auml;ltestes Mitglied: ". $aeltester; 
echo "<br>"; 
echo "<br>"; 

echo "<h2>Statistiken M&auml;nner:</h2>"; 
echo "<br>";

echo "M&auml;nner bis 6 Jahre: ". $m6; 
echo "<br>";
echo "M&auml;nner 7 bis 14 Jahre: ". $m714; 
echo "<br>";
echo "M&auml;nner 15 bis 18 Jahre: ". $m1518; 
echo "<br>";
echo "M&auml;nner 19 bis 26 Jahre: ". $m1926; 
echo "<br>";
echo "M&auml;nner 27 bis 40 Jahre: ". $m2740; 
echo "<br>";
echo "M&auml;nner 41 bis 60 Jahre: ". $m4160; 
echo "<br>";
echo "M&auml;nner &Auml;lter 60 Jahre: ". $m60pl; 
echo "<br>";
echo "<br>";

echo "<h2>Statistiken Frauen:</h2>"; 
echo "<br>";

echo "Frauen bis 6 Jahre: ". $f6; 
echo "<br>";
echo "Frauen 7 bis 14 Jahre: ". $f714; 
echo "<br>";
echo "Frauen 15 bis 18 Jahre: ". $f1518; 
echo "<br>";
echo "Frauen 19 bis 26 Jahre: ". $f1926; 
echo "<br>";
echo "Frauen 27 bis 40 Jahre: ". $f2740; 
echo "<br>";
echo "Frauen 41 bis 60 Jahre: ". $f4160; 
echo "<br>";
echo "Frauen &Auml;lter 60 Jahre: ". $f60pl; 
echo "<br>";
echo "<br>";

echo "<h2>Gesamtstatistiken:</h2>"; 
echo "<br>";

echo "Gesamt bis 6 Jahre: ". $g6; 
echo "<br>";
echo "Gesamt 7 bis 14 Jahre: ". $g714; 
echo "<br>";
echo "Gesamt 15 bis 18 Jahre: ". $g1518; 
echo "<br>";
echo "Gesamt 19 bis 26 Jahre: ". $g1926; 
echo "<br>";
echo "Gesamt 27 bis 40 Jahre: ". $g2740; 
echo "<br>";
echo "Gesamt 41 bis 60 Jahre: ". $g4160; 
echo "<br>";
echo "Gesamt &Auml;lter 60 Jahre: ". $g60pl; 
echo "<br>";


echo '
        </ul>
    </div>
</div>';

require(THEME_SERVER_PATH. '/overall_footer.php');

?> 
Ich hoffe, dass ich einigen von euch damit helfen konnte. Ein Dank auch nochmal an Gerhard, für das Grundgerüst des PHP Files. Ebenso an Matze und das Team für die Hilfe, die sie im anderen Thread Gerhard zukommen lassen haben.

Gruß
Chris
Zuletzt geändert von Weatherman am 26. Jun 2009, 13:05, insgesamt 1-mal geändert.
Jochen J.
Beiträge: 41
Registriert: 30. Mär 2008, 11:58
Wohnort: Heinsberg-Dremmen
Kontaktdaten:

Beitrag von Jochen J. »

Kewl!! :D
Sowas haben wir wohl alle gesucht!

Jetzt erzähl uns DAUs noch, wie mans einbindet, und dann sind wir wohl alle glücklich, denn die Altersklassen lassen sich da ja leicht anpassen *freu*

@admidio-Team: In den Code übernehmen! Ggf. noch so erweitern, dass man die jeweiligen Altergruppen anpassen (oder ein Readme beilegen, wo's im Code steht). Sowas da braucht beinahe jeder Verein einmal im Jahr!
Mit freundlichen Grüßen

Jochen
Weatherman
Beiträge: 8
Registriert: 18. Jun 2009, 23:29

Beitrag von Weatherman »

Ich habe das ganze folgendermaßen gemacht:

1. Neuen Ordner bei den Modulen angelegt (/admidio/adm_programm/modules/stats/stats.php) und dort das PHP File von oben reingelegt - hier stats.php

2. Folgende Dateien editiert:
- /adm_program/index.php
- /adm_themes/modern/my_body_bottom.php

index.php:

Code: Alles auswählen

            if($g_valid_login)
            {
                echo '
                <li>
                    <dl>
                        <dt>
                            <a href="'.$g_root_path.'/adm_program/modules/stats/stats.php"><img
                            src="'.THEME_PATH.'/icons/announcements_big.png" alt="Statistiken" title="Statistiken" /></a>
                        </dt>
                        <dd>
                            <span class="veryBigFontSize"><a href="'.$g_root_path.'/adm_program/modules/stats/stats.php">Statistiken (l&aumldt sehr lange)</a></span><br />
                            <span class="smallFontSize">Modul wird noch weiterentwickelt</span>
                        </dd>
                    </dl>
                </li>';
            }
Das könnt ihr an einer Stelle platzieren, die ihr wünscht. Ich habe es direkt unter die Announcements platziert - allerdings mit dem gleichen Logo - das könnt ihr bei Bedarf ja selbst austauschen. Das Statistik "Modul" wird nur angezeigt, wenn der Benutzer eingeloggt ist. Wenn es immer angezeigt werden soll, dann einfach die Zeile if($g_valid_login) mit der öffnenden und schließenden { und }entfernen. Wenn ihr damit fertig seid, dann wird das Statistik-Tool direkt im Body-Bereich bei den anderen Modulen angezeigt.

Code: Alles auswählen

            if($g_valid_login)
            {
                echo '
                <span class="menu"><a href="'. $g_root_path. '/adm_program/modules/stats/stats.php"><img
                    style="vertical-align: middle;" src="'. THEME_PATH. '/icons/announcements.png" alt="Statistiken" title="Statistiken" /></a>
                    <a href="'. $g_root_path. '/adm_program/modules/stats/stats.php">Statistiken (l&aumldt sehr lange)</a></span>';
            }
Damit erreicht ihr, dass das Statistik Tool in der Navigationsleiste angezeigt wird. Ihr könnt den Link ja ändern. Da es bei mir noch eine Testversion ist, habe ich beim Link in Klammern "lädt sehr lange" eingetragen. Nicht dass die Leute meinen, dass da ein Fehler drin ist... Ach ja, diesen Code Schnipsel platziert ihr auch an einer Stelle eurer Wahl. Auch hier wird der Link erst angezeigt, wenn ihr euch erfolgreich angemeldet habt. Soll der Link immer angezeigt werden, einfach wieder die Zeile if($g_valid_login) mit der öffnenden und schließenden { und } entfernen.

Ich habe bei mir beide Codes direkt nach den Announcements eingebunden.

Hinweis: Beim nächsten Update von Admidio sind die Änderungen ggf. wieder weg...

Hoffe, dass ich euch helfen konnte... Und nichts vergessen habe ;)

Gruß
Chris
Antworten