Electos Architecture & Application Integration

30
Electos Architecture & Application Integration Electos architecture, template programming and application integration using AJAX.

Transcript of Electos Architecture & Application Integration

Page 1: Electos Architecture & Application Integration

Electos Architecture & Application Integration

Electos architecture, template programming and application

integration using AJAX.

Page 2: Electos Architecture & Application Integration

Overview

• Electos Architecture– Few things we need to know about Electos

• ASP Templates– Few basics on programming ASP templates

• Application Integration– How can we integrate parts of our own application into Electos

Thursday, May 27, 2010 2Harm Wibier

Electos Architecture & Application Integration

Page 3: Electos Architecture & Application Integration

ELECTOS ARCHITECTURE

Which tasks can Electos perform within your application?

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration3

Page 4: Electos Architecture & Application Integration

Electos Data

• Site Manager Database

• Studio Database

• WebSite Database

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration4

Page 5: Electos Architecture & Application Integration

Electos Processes

• Sitemanager

• Studio

– for each version

• WebSite

– for each website

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration5

Page 6: Electos Architecture & Application Integration

IIS Configuration

• Virtual Directories

– SiteManager

– Studio• Electos

• Website1Studio

• Website2Studio

– Website• MyWebsite

• Website1Website

• Website1Website

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration6

Page 7: Electos Architecture & Application Integration

Website Stucture

• Identified by page id

– Categories

• Name

– Pages

• Document structure items

• Name

– Catalogs

• Webshop items

– LinksThursday, May 27, 2010

Harm WibierElectos Architecture & Application Integration

7

Page 8: Electos Architecture & Application Integration

Document Structures

• Define the page items

– Single line text

– Multi line text

– File

– Image Gallery

• Identified by name

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration8

Page 9: Electos Architecture & Application Integration

ASP TEMPLATES

Programming ASP templates

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration9

Page 10: Electos Architecture & Application Integration

ASP Templates

• ASP Script

– Attached to page(s)

– Written for specific document structure

– Work using pageid

– Extract content using the API of the oPublisher Web Object

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration10

Page 11: Electos Architecture & Application Integration

ASP Templates – Print Page Items

• iPageID is the most important variable

<h1><%= oPublisher.call ("Get_PrintPageItem", iPageID, "Title") %></h1>

<%= oPublisher.call ("Get_PrintPageItem", iPageID, "Text") %>

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration11

Page 12: Electos Architecture & Application Integration

ASP Templates – Single level menu

• Single level using PrintMenu function

<% oPublisher.call "Get_PrintMenu", iPageID, 1, "ALL", "<a href=""{URL}"">{NAME}</a>", "<b><a href=""{URL}"">{NAME}</a></b>", "&nbsp;|&nbsp;" %>

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration12

Page 13: Electos Architecture & Application Integration

ASP Templates – Multi level menu

• ASP Classes

– ElectosMenu.inc• Should be customized for each different type of menu

• Methods are called by the engine

– MenuPrintHeader

– MenuPrintItem

– MenuPrintFooter

– Includes/ElectosMenuEngine.inc• The engine, should not be modified

• Updated with newer versions of Electos

• Contains cache logic using the AddToMenu method

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration13

Page 14: Electos Architecture & Application Integration

ASP Templates – Image Gallery

• Custom API

– GalleryCount – amount of items

– GalleryImageURL – url to the image

– GalleryAltText – description of the image

– GalleryThumbURL – url to an thumbnail of the image

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration14

Page 15: Electos Architecture & Application Integration

INTEGRATION ARCHITECTURE

How will your application components work within your website?

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration15

Page 16: Electos Architecture & Application Integration

Goals

• Integrate custom web application parts into Electos– Mail forms– Data entry forms– Display data

• Use modern techniques– AJAX– Web Services

• Clear separation between content and application – No ASP / JavaScript code in the content

Thursday, May 27, 2010 16Harm Wibier

Electos Architecture & Application Integration

Page 17: Electos Architecture & Application Integration

Advantages

• Tasks of Electos

– Content

– Site structure

– Authorization

• Your webapp

– Store custom data

– Do everything you can with Visual DataFlex Web Application’s

Thursday, May 27, 2010 17Harm Wibier

Electos Architecture & Application Integration

Page 18: Electos Architecture & Application Integration

Architecture

• Application running next to Electos

– Accessed using web services

• Use the AJAX Library to call the web services from the client

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration18

Page 19: Electos Architecture & Application Integration

IIS Configuration

• Virtual directory inside virtual directory

• Website

– http://www.mywebsite.com/

– http://localhost/mywebsite/

• Application

– http://www.mywebsite.com/data/

– http://localhost/mywebsite/data/

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration19

Page 20: Electos Architecture & Application Integration

Visual DataFlex AJAX Library

• Used for the communication from the client to the application

• Easiest way is to place the JavaScript and CSS files of the AJAX Library in the AppHTML folder of the website– Can also be placed in the application’s AppHTML, but then the VdfAjaxLib/2-

1/Includes.inc.asp can not be used

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration20

Page 21: Electos Architecture & Application Integration

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration21

Page 22: Electos Architecture & Application Integration

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration22

Page 23: Electos Architecture & Application Integration

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration23

Page 24: Electos Architecture & Application Integration

How to control from Electos

• Special ASP template that includes the extra JavaScript

• Document structure item determines which file to include

• Extra options can be given using parameters

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration25

Page 25: Electos Architecture & Application Integration

Include code

• Read document structure item “JSScriptFile”

• Generate HTML that includes the script file

<%

Dim sJSValue

sJSValue = oPublisher.call ("Get_PrintPageItem", iPageId, "JSScriptFile" )

If (sJSValue <> "") Then

%>

<script type="text/javascript" src="<%=sJSValue%>"></script>

<%

End If

%>

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration26

Page 26: Electos Architecture & Application Integration

Session management

• Copy Electos Session key to AJAX

• Create session record on first AJAX call

<%

' Sync AJAX session key with Electos session key

Response.Cookies("vdfSessionKey") = sSessionKey

%>

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration27

Page 27: Electos Architecture & Application Integration

EXAMPLES

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration28

Page 28: Electos Architecture & Application Integration

Next presentation

• Application Integration (Wed, Jun 2, 2010 3:00 PM - 4:00 PM GMT)

– Vincent Oorsprong

– Real world example

• Application integration

• Combined authentication

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration29

Page 29: Electos Architecture & Application Integration

QUESTIONS?

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration30

Page 30: Electos Architecture & Application Integration

THANKS!

Thursday, May 27, 2010Harm Wibier

Electos Architecture & Application Integration31