|
Scouting Nederland Akela scripts
Om onze leden automatisch van een login op de website te kunnen voorzien en om over zelf samen te stellen overzichten, ledenlijsten en mailmerge bestanden te kunnen beschikken, hebben we een aantal php-scripts geschreven die de website koppelen aan de gegevens bekend in Akela.
|
Via het XML-bestand dat secretarissen en gegevensbeheerders kunnen downloaden kun je met deze scripts beschikken over de meest actuele speleenheid-, functie- en lidgegevens van je eigen groep.
Voorwaarde is dat je een SOL-account gebruikt met als standaardrol 'gegevensbeheerder' of 'secretaris'. (Anders kun je de XML niet downloaden). Handmatig de XML op je server plaatsen voor import kan natuurlijk ook.
Er zitten een aantal bestanden in de zip:
- akela_config.php: De configuratie. Dit bestand moet je aanpassen naar je eigen situatie om de scripts te laten werken.
- akela_getxml.php: Het script dat het XML bestand kopieert naar je eigen server. Draai dit script en de xml wordt gekopieerd naar de lokatie in het configbestand.
- akela_import.php: Het script dat de inhoud van de xml omzet naar een multidimensionale array en hieruit de gegevens schrijft in je database.
- akela_helper.php: Dit script bevat functies en bewerkingen die het importscript nodig heeft om de bewerkingen te kunnen uitvoeren.
- xml.php: De parser klasse. Dit script wordt gebruikt voor het omzetten van de XML naar een multidimensionale array.
- snoopy_class.php: Snoopy-klasse. Dit script wordt gebruikt door het xml-ophaal script en simuleert een browsersessie om in te loggen in SOL en de XML te kunnen ophalen zonder Curl te hoeven installeren.
- akela_lists.php: Lijstengenerator. Formulier om overzichten samen te stellen.
- akela_rapport_handler.php: Het bestand waar de rapporten-magic happens. Bouwt de queries en spuugt nette tabelletjes uit, zowel op scherm als naar xls.
Met deze scripts heb je -goeddeels- een kopie van de SOL tabellen van je groep. Wat nog mist zijn de teams binnen speleenheden (nesten/patrouilles/boten). Zit in de planning, maar heeft voor ons geen hoge prioriteit.
Over de lijstengenerator:
Je kunt kiezen voor output naar je scherm of naar een excel-file. Verder de optie om slechts mailadressen (csv) in platte tekst te krijgen om te kunnen kopieren naar outlook of je favoriete webmail-client. Mailmerge functionaliteit geeft altijd alle leden. Let op dat sortering dan op achternaam of postcode staat en niet op speltak (geeft fout). Er zit in de mailmerge een piepklein bugje: wanneer meerdere personen waarvan één of meer jonger dan 18 en één of meer ouderr dan 18, komt er aan de ouders/verzorgers van te staan voor de namen.
Om de scripts te gebruiken zul je moeten beschikken over een webserver met php (4+) en mySQL. De webmaster/programmeur moet een beetje thuis zijn in php en SQL en dan dan kun je met deze scripts als basis hele mooie toepassingen in elkaar schroeven. Denk bijvoorbeeld aan een Joomla-component dat de gebruikers en rollen op de website up-to-date houdt met de Akela-gegevens. (Is beschikbaar, maar (nog) niet publiek). Je kunt ook denken aan cron-jobs etc.
Heb je opmerkingen, aanvullingen, vragen of een mooie toepassing bedacht, schroom dan niet om contact op te nemen. (Gegevens in readme.pdf).
Disclaimer: Garanties dat wat voor onze situatie werkt ook voor jouw situatie werkt zijn simpelweg niet te geven. Als iemand anders er iets aan heeft: mooi! We zijn altijd bereid om te helpen. Het echter is geenszins onze verantwoordelijkheid dat de scripts gaan doen wat jij ervan verwacht. De phpscripts zijn grotendeels voorzien van commentaren. Neem de moeite zelf op onderzoek uit te gaan alvorens je je vragen afvuurt. Onder deze pagina is een reactiemogelijkheid, eventuele vragen en opmerkingen die je daar plaatst zullen met voorrang worden behandeld. Het is ook een ruimte om elkaar (en ons!) te helpen of voorzien van nuttige tips en truuks!
|
Geschreven door: Tom Op 25-02-2009 21:54
Ook op scoutingforum loopt een draadje: http://www.scoutingforum.nl/ topic.asp?TOPIC_ID=7594
» Is deze reactie niet OK? Meld het hier!