Print

In dit artikel vind je meer informatie over de Iframe embeds die je op je website kan plaatsen op KampAdmin in je website op te nemen. Dit is dé manier om de dashboards te tonen aan ouders en monitoren.

Veel organisaties gebruiken deze methode ook om het kampaanbod te tonen, maar dat kan ook via onze API verlopen als je veel inschrijvingen hebt.

De basiscode

Er zijn verschillende soorten embeds van KampAdmin:

  1. Ouder dashboard (bv1bv2)
  2. Monitoren dashboard (bv1bv2)
  3. Activiteiten-lijst (bv1bv2)
  4. Activiteiten-zoeker (bv1bv2)
  5. Moni-activiteiten-zoeker (bv1bv2)
  6. Rechtstreekse inschrijf-knop 
  7. Nieuwsbrief registratie (bv1, bv2)

Deze hebben altijd dezelfde structuur:

<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
<script>jQuery.getScript("https://booking.kampadmin.be/embed/ka-embedv4.js?q=" + new Date().getTime());</script>
<div id="kampadmin-booking" style="width: 100%" data-theme-url="/t/organisation_code/dashboard">
<img src="https://booking.kampadmin.be/embed/loading.gif" />
</div>

Jouw organisation_code is altijd dezelfde en kan je navragen bij [email protected] .
Het oranje deel is afhankelijk van welke embed je wilt toevoegen (zie hieronder).

Deelnemers & aanbod

Dashboard ouders

Via de autologin-links komt een boeker steeds hier terecht. De info op de pagina kan sterk variëren: overzicht van de inschrijvingen, familie-info, medische info, financieel overzicht…

Het oranje deel hier is: dashboard 
Voorbeelden: bv1bv2

Activiteiten-lijst

Dit soort embed is handig voor een lijstje aan activiteiten binnen een bepaald thema. Meestal gaat het over een beperkte lijst aan activiteiten.
Enkele voorbeelden: bv1bv2

Het oranje deel hier is: activities/grouped? om het hele aanbod te tonen.
Je kan filteren op categorie, thema, periode, locatie en/of tag door hier nog een deeltje (of meerdere) aan vast te plakken.

&category=00000 om te filteren op categorie
&activity_info=
00000 om te filteren op thema
&period=
00000 om te filteren op periode
&location_id=
00000 om te filteren op locatie

Waarbij 00000 de ID is van de categorie/thema/… waarop je wilt filteren. Je kan meerdere opgeven door de ID’s te scheiden met komma’s. Hoe je een ID van een item kan vinden, wordt onderaan op deze pagina uitgelegd.

Optioneel kan je ook nog filteren via tag’s door &tags=nieuw toe te voegen achteraan. Daarbij wordt nu gefilterd op de tag nieuw. Gebruik hiervoor enkel tags zonder spaties. Ook hier kan je meerdere tags opgeven door ze te scheiden met komma’s.

Enkele voorbeelden van een eindresultaat:
– activities/grouped?&category=abc-def-ghi-jkl&location_id=jklm-aiidz-uzihziu
– activities/grouped?&activity_info=abc-def-ghi,jkl-mno-pqr-stu,vwx-yz0
– activities/grouped?&period=aaa-bbb-ccc&tags=’nieuw’,’vernieuwd’

Activiteiten-zoeker

Via een activiteitenzoeker kan men interactief zoeken door het aanbod op je website door te filteren. Dit is handig om een groter aanbod te tonen.
Enkele voorbeelden: bv1bv2

Het oranje deel hiervoor is: welcome?grouped=true indien je je hele aanbod wilt tonen.

Ook hier kan je filteren om een deel van het aanbod te tonen door achteraan delen toe te voegen. 
&search[category]=00000 om te filteren op categorie (via ID)
&search[period]=00000 om te filteren op periode (via ID)
&search[location_id]=00000 om te filteren op locatie (via ID)

&search[birth_year]=2018 om te filteren op geboortejaar (jaartal)
&search[still_place]=true om te filteren op aanbod met vrije plaatsen (true/false)
&search[sleepover]=true om te filteren op overnachting (true/false)
(filteren op thema is hier niet voorzien aangezien de activiteiten worden gebundeld per thema)

Het systeem is hierbij hetzelfde als word uitgelegd bij de activiteiten-lijst embed hierboven. 

Optioneel kan je ook nog filteren via tag’s door &search[tags]=nieuw toe te voegen achteraan. Daarbij wordt nu gefilterd op de tag nieuw. Gebruik hiervoor enkel tags zonder spaties. Ook hier kan je meerdere tags opgeven door ze te scheiden met komma’s.

Rechtstreekse inschrijf-knop

Naast embeds, kan je ook zelf pagina’s maken met uitleg over bepaalde concepten. Je kan de achter een knop of link een hyperlink zetten die meteen naar de inschrijfprocedure gaat voor een bepaalde activiteit:

www.kampadmin.be/login/?kampadmin=/t/organisation_code/activities/activity_id/persons

Waarbij:
– dit de link is naar de ouder-pagina (zie bovenaan)
– organisation_code dezelfde als altijd
– activity_id de external-id is van de activiteit.

Bv: https://www.soccerfun.be/login/?kampadmin=/t/soccerfun/activities/4f8d33df-7bd5-4258-850c-5109a8f4568e/persons 

Monitoren

Moni dashboard

Voor monitoren zijn er twee embeds: een aanmeld-pagina en een inlog-pagina

Op de aanmeld-pagina worden de gegevens gevraagd om je te registreren als nieuwe monitor (bv, bv)
Het oranje deel hiervoor is: leaders/sessions/sign_up 

Monitoren krijgen bij KampAdmin een wachtwoord waarmee ze kunnen inloggen (bv). Eens ingelogd wordt deze pagina gevuld met het dashboard.
Het oranje deel hiervoor is: leaders/sessions/sign_in 

Moni activiteiten-zoeker

Via een moni-activiteitenzoeker kunnen monitoren interactief zoeken door de moni-plaatsen waar jullie nog mensen voor zoeken. Om dit te activeren, moet je eerst KampAdmin contacteren.
Enkele voorbeelden: bv1bv2

Het oranje deel hiervoor is: leaders/dashboard/search/

Nieuwsbrieven

Je kan ook een embed toevoegen, bijvoorbeeld in de footer van je website of op de contactpagina, waarmee je mensen kan laten registreren voor je nieuwsbrief. Deze mensen krijgen dan in Podio de rol ‘nieuwsbrief’, eventueel bovenop andere rollen als die al bestonden.

Hiervoor gebruik je een andere embed-code zodat deze zeker geen conflicten geeft met andere embeds indien je de nieuwsbrief bijvoorbeeld in de footer van je website zou opnemen:

<iframe src="https://kampadmin-v2-2-production.herokuapp.com/t/organisation_code/newsletter" id="kampadmin-embed-2" style="width: 100%; height: 100px; border:none;" frameborder=0></iframe>
<script>jQuery('#kampadmin-embed-2').iFrameResize({ checkOrigin: ["https://kampadmin-v2-2-production.herokuapp.com"] });</script>

Voorbeelden: bv1, bv2

Externe ID vinden van een item

De ID (externe ID // External ID) van een Podio item kan je terugvinden door er naar toe te gaan in Podio en dan te klikken op ‘acties’ en vervolgens op ‘ontwikkelaarsinfo’:

Troubleshooting

Indien je problemen ondervind met de Embed-integratie op je website, kan je hieronder op zoek gaan naar een antwoord. Meestal volstaat een kleine ingreep in de website om dit te verhelpen:

Indien je een website hebt die veel Javascript (JS) gebruikt, kan het zijn dat de KampAdmin-embed zich niet automatisch in hoogte aanpast. Het kan daarbij helpen om het KampAdmin-script vertraagd in te laden. Vervang daarvoor de huidige inlading door:

setTimeout(() => {
jQuery.getScript("https://booking.kampadmin.be/embed/ka-embedv4.js?q=" + new Date().getTime());
}, 200)

De oorzaak is allicht een restrictie die door de website wordt gezet over wat op de pagina wel/niet mag gebeuren kwa gebruik van Javascript.

Kijk met je websitebouwer na of de volgende page-headers uit staan: 

  • Hoogst waarschijnlijk is deze page-header de boosdoener: 
    • sync-xhr=()
  • Maar het kan ook aan een van deze liggen:
    • Content-Security-Policy: connect-src
    • X-Content-Security-Policy
    • X-Frame-Options

Bekijk met je websitebouwer wat er juist fout loopt en/of contacteer KampAdmin. 

Tags:
In dit artikel: