Replaceables
Binnen de editor bieden we de optie om teksten of afbeeldingen te personaliseren. Dit personaliseren kan met doen met de mailer module of via URL parameters mee te sturen in de frontend.
- vanuit de editor moet je een element via contextmenu personaliseerbaar maken.
- instellen via personaliseer popup
- opslaan van replaceable en ook van de pagina
- publiceren
- replacables json wordt gemaakt met daarin elementen velden in de spread die replaceable zijn. Dit doen we om de mogelijk niet ingevulde velden te replacen met de default die is opgegeven.
User komt op de frontend via:
Mailer module:
- via de hash bepaald de php wie het is
- de ingevulde velden in de mailer worden samengevoegd met de beschikbare velden
- de vaste sender en receiver velden wordt toegevoegd/gemerged met de overige velden
URL (parameters):
- de beschikbare replaceables van de pagina worden opgehaald via de gepubliceerde json
- de replaceable name worden gecleaned (spaties gestript, lowercase en alle niet letters en cijfers)
- komt de cleanedName voor in de url parameter keys dan wordt de value in de replaceable data gezet
Frontend
- de replaceables worden in de footer geprint (
window.replaceables), dit is per spread en een global bakje - de frontend JS voegt voor pro pagina's de replaceables toe aan de spread options als het spreadId bestaat in de
window.replaceables, tevens wordt het versie nummer van de assets er ook nog aan toegevoegd (geen idee waarvoor dit gedaan is) - de frontend geeft ook de globals door aan de
maglrControllervan de assets door eensetGlobalDataaan te roepen - Singlepages only: bij de createSpread worden de
window.replacablestoegevoegd aan de options als ze nog niet bestaan Spread.constructorgaat de beschikbare replaceables mergen met de default replaceables als ze niet bestaanSpread.createScenesgaat de replaceables loopen en de replacement (replace / remove) uitvoeren als het element bestaat