20
Aanmaken Dojo property EPISERVER CMS 7 www.patrickvankleef.com

EPiServer - Create dojo property

Embed Size (px)

Citation preview

Aanmaken Dojo propertyEPISERVER CMS 7

www.patrickvankleef.com

www.patrickvankleef.com

Patrick van Kleef• Werkzaam bij Macaw

• Arlanet

• Content management systems

• EPiServer• 3+ jaar ervaring• Find• Commerce• Community

• Umbraco

• Blog: www.patrickvankleef.com

www.patrickvankleef.com

Inleiding

• EPiServer CMS versies• Custom property versie 6• Custom property versie 7

• DOJO

• Scenario custom property• Oplossingen

• Demo

www.patrickvankleef.com

EPiServer CMS• Versie 4• Webforms

www.patrickvankleef.com

EPiServer CMS• Versie 5• Webforms

www.patrickvankleef.com

EPiServer CMS• Versie 6• Webforms

www.patrickvankleef.com

EPiServer CMS• Versie 7• Inline Page editing• DOJO

• Versie 8

• Toekomst?

www.patrickvankleef.com

EPiServer CMS (5)6 - property• Admin mode

• PageTypeBuilder – Joel Abrahamsson

• PropertyData• Verantwoordelijk voor opslaan en ophalen waardes• Type• Default waarde

• PropertyString• Op basis van een bestaande property

• PropertyDataControl• UI rendering

• Webforms

www.patrickvankleef.com

Page PropertyType = CustomProperty

PropertyDataCreatePropertyControl()Opslaan & ophalen value

PropertyDataControlUI Rendering

www.patrickvankleef.com

EPiServer CMS 7 - property• Strongly typed page properties

• Module.config• Configuratie widget

• Assembly• Path• Client resources

• EditorDescriptor• Instellingen voor DOJO widget

• PropertyData• Verantwoordelijk voor opslaan en ophalen waardes

• Dojo widget• UI Rendering property

www.patrickvankleef.com

Page PropertyType = IEnumerable<string>UIHint = “custom”BackingType = typeof(CustomPropertyData)

EditorDescriptorUIHint = “custom”TargetType = IEnumerable<string>ClientEditingClass = “app.editors.property”

DOJO WidgetDeclare “app.editors.property”

DOJO StoreContentdata

PropertyDataName = CustomPropertyDataType = IEnumerable<string>Opslaan & ophalen value

www.patrickvankleef.com

DOJO

• Javascript Library• Ondersteund door alle browsers en devices

• Modulair - AMD (Asynchronous Module Definition)

www.patrickvankleef.com

DOJO

• Classes and Extensibility• Dojo/declare

www.patrickvankleef.com

DOJO

• Dijit UI Framework• Form widgets• DojoX

• Extra form widgets• IO helpers• WebSocket• Charting• Mobile solutions

www.patrickvankleef.com

Scenario contactformulier

• Pagina met een contactformulier• Voornaam• Achternaam• Land

• Elk land heeft een apart e-mailadres

• E-mail versturen naar land e-mailadres

www.patrickvankleef.com

Scenario contactformulier – Oplossingen

• Oplossing 1• Container pagina type• Land dropdown• E-mailadres tekstveld

• Oplossing 2• Contact pagina type• Land # e-mailadres tekstveld

www.patrickvankleef.com

Scenario contactformulier – Oplossingen

• Oplossing 3• Custom DOJO property• Landen uitlezen• Dynamisch e-mailadres tekstvelden

• Oplossing 4• Custom DOJO property• Container pagina’s selecteren

www.patrickvankleef.com

Demo

www.patrickvankleef.com

Javascript Debug Files

• > EPiServer 7.6

• EPiServer.CMS.UI.Sources Nuget package

• <clientresources debug=“true” />

• Ben McKernan• http://world.episerver.com/Blogs/Ben-McKernan/Dates/2014/8/Uncompres

sed-JavaScript-for-EPiServer-76/

www.patrickvankleef.com

Bedankt

• www.patrickvankleef.com

• www.github.com/patkleef