I2CE Framework I2CE: Intrahealth Informatics Core Engine Base Web Framework on which iHRIS Manage and iHRIS Qualify are built on: Module Structure Magic.

Slides:



Advertisements
Similar presentations
Samsung Smart TV is a web-based application running on an application engine installed on digital TVs connected to the Internet.
Advertisements

A really fairly simple guide to: mobile browser-based application development (part 1) Chris Greenhalgh G54UBI / Chris Greenhalgh
Web 2.0 with AJAX Students : LASC Ioana KELEMEN Csilla POP Dan Adrian CIOBANU Dumitru Daniel Project leaders : Jean Luc LARBOT Ahmed RHIAT.
Week 2 IBS 685. Static Page Architecture The user requests the page by typing a URL in a browser The Browser requests the page from the Web Server The.
Direct Congress Dan Skorupski Dan Vingo. Inner workings Reminder: MVC design pattern Procedural view: From request to response o Request passed to a view.
Justin Klein Keane Drupal Training Session 1 Introduction to Drupal.
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
Form Handling, Validation and Functions. Form Handling Forms are a graphical user interfaces (GUIs) that enables the interaction between users and servers.
Web Server Configuration Alokes Chattopadhyay Computer & Informatics Centre IIT Kharagpur.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Chapter 33 CGI Technology for Dynamic Web Documents There are two alternative forms of retrieving web documents. Instead of retrieving static HTML documents,
Server-side Scripting Powering the webs favourite services.
® IBM Software Group © 2006 IBM Corporation JSF Tree Control This Learning Module describes the use of the JSF Tree Control – for hierarchical organization.
5 Chapter Five Web Servers. 5 Chapter Objectives Learn about the Microsoft Personal Web Server Software Learn how to improve Web site performance Learn.
LiveCycle Data Services Introduction Part 2. Part 2? This is the second in our series on LiveCycle Data Services. If you missed our first presentation,
Client side web programming Introduction Jaana Holvikivi, DSc. School of ICT.
JavaScript, Fourth Edition
WEB BASED DATA TRANSFORMATION USING XML, JAVA Group members: Darius Balarashti & Matt Smith.
1 © Netskills Quality Internet Training, University of Newcastle HTML Forms © Netskills, Quality Internet Training, University of Newcastle Netskills is.
Web Design (1) Terminology. Coding ‘languages’ (1) HTML - Hypertext Markup Language - describes the content of a web page CSS - Cascading Style Sheets.
Dynamic web content HTTP and HTML: Berners-Lee’s Basics.
Overview Web Session 3 Matakuliah: Web Database Tahun: 2008.
Server-side Programming The combination of –HTML –JavaScript –DOM is sometimes referred to as Dynamic HTML (DHTML) Web pages that include scripting are.
AxKit A member of the Apache XML project Ryan Maslyn Kyle Bechtel.
 Registry itself is easy and straightforward in implementation  The objects of registry are actually complicated to store and manage  Objects of Registry.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
 Pages within our Framework  Categories within Framework  Products within Framework  Model-View-Controller description of Page, category and products.
HTML A brief introduction HTML1. HTML, what is? HTML is a markup language for describing web documents (web pages). HTML stands for Hyper Text Markup.
Fundamentals of Web DevelopmentRandy Connolly and Ricardo HoarFundamentals of Web DevelopmentRandy Connolly and Ricardo Hoar Fundamentals of Web DevelopmentRandy.
CSC 2720 Building Web Applications Basic Frameworks for Building Dynamic Web Sites / Web Applications.
AJAX and REST. Slide 2 What is AJAX? It’s an acronym for Asynchronous JavaScript and XML Although requests need not be asynchronous It’s not really a.
Document Object Model Nasrullah. DOM When a page is loaded,browser creates a Document Object Model of the Page.
Bundles, Minification Andres Käver, IT Kolledž
Introduction to JavaScript MIS 3502, Spring 2016 Jeremy Shafer Department of MIS Fox School of Business Temple University 2/2/2016.
Introduction. Internet Worldwide collection of computers and computer networks that link people to businesses, governmental agencies, educational institutions,
Apache Cocoon – XML Publishing Framework 데이터베이스 연구실 박사 1 학기 이 세영.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
Adding Forms Example of adding a new form to iHRIS Manage Create a module to contain functionality Create a form Add fields to the form Relate the form.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
Section 10.1 Define scripting
DHTML.
Introduction to Dynamic Web Content
Managing State Chapter 13.
Web Technologies Computing Science Thompson Rivers University
Project 1 Introduction to HTML.
Javascript and Dynamic Web Pages: Client Side Processing
JavaScript and Ajax (Ajax Tutorial)
Introduction to Dynamic Web Programming
WWW and HTTP King Fahd University of Petroleum & Minerals
CISC103 Web Development Basics: Web site:
Chapter 1 Introduction to HTML.
AJAX and REST.
The Document Object Model (DOM) is a W3C standard.
Chapter 19 PHP Part III Credits: Parts of the slides are based on slides created by textbook authors, P.J. Deitel and H. M. Deitel by Prentice Hall ©
Project 1 Introduction to HTML.
AVOIR -African virtual
Web UI Basics ITM 352.
Customizing your Theme
PHP / MySQL Introduction
Secure Web Programming
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Developing a Model-View-Controller Component for Joomla
Introduction to World Wide Web
PHP Forms and Databases.
Web Technologies Computing Science Thompson Rivers University
Client-Server Model: Requesting a Web Page
PHP By Prof. B.A.Khivsara Note: The material to prepare this presentation has been taken from internet and are generated only for students reference and.
Presentation transcript:

I2CE Framework I2CE: Intrahealth Informatics Core Engine Base Web Framework on which iHRIS Manage and iHRIS Qualify are built on: Module Structure Magic Data Pages and the Wrangler Templates HTTP Requests

I2CE Framework: Modules Basic functional unit for the I2CE Framework Defined by configuration.xml file Contain a collection CSS, HTML, Javascript, PHP, SQL, graphic files, etc. Can define configuration data (Magic Data) Modules have versions and can require or conflict with other modules Modules can optionally enable other modules

I2CE Framework: Modules Modules can also be associated with a subclass of I2CE_Module Allows for adding new fuzzy methods to a class Allows for hooks into various parts of the code Handles the updating process as the module's code changes

I2CE Framework: Modules Configuration File Structure Determined by: I2CE/lib/I2CE_Configuration.dtd I2CE/tools/check_validity.php Required: Version, name and displayName in the metadata sections Optional: Dependent modules Search paths for different file types (SQL, images, html templates) Configuration/Magic data

I2CE Framework: Magic Data Tree structure for dynamic definiton of iHRIS software: Enabled Modules Pages Forms Reports Defined in configuration xml files Stored in the database table config_alt Cached in APC or memcached for speed Values of a node are specified by a path: /some/path/to/a/magic/data/node

I2CE Framework: Magic Data Example from background process module: Can view background processes Says we are we working with magic data value at: /I2CE/tasks/task_description/can_view_background_processes

I2CE Framework: Magic Data Example from background process module: Can view background processes Sets magic data value at: /I2CE/tasks/task_description/can_view_background_processes to be: Can view background process

I2CE Framework: Magic Data Example from background process module: Can view background processes Says magic data value at: /I2CE/tasks/task_description/can_view_background_processes can be translated

I2CE Framework: Pages Pages are used to handle user interaction A page subclasses I2CE_Page Pre-process GET and POST variables into nested arrays Loads main html template for the page Define web interaction by action() Define CLI interaction by actionCommandLine() After action processing page is display() ed

I2CE Framework: Pages The Wrangler determines which page is run Rules for turning a URL into a page: Check if A is registered as a ”top-level” page under the magic data node /I2CE/page/A Check if B is registed as a page for the module A under the magic data node /modules/A/page/B Go to the default page (usually home) for the module A Fail Any unused portion of URL is passed as the ”request remainder” to the page's constructor

I2CE Framework: Pages Need to registering a page and its class in magic data Example from list module: I2CE_PageFormLists.... Creates a top-level page called lists which is handled by class I2CE_PageFormLists

I2CE Framework: Pages Access restricted by tasks and roles set in the page's args which is passed to the constructor Example from lists page in list module:.... can_edit_database_lists.... User's role has to have task can_edit_database_lists to access the page

I2CE Framework: Pages A page style is a collection of characteristics shared by many pages: default html files,access control, etc. Passed in args array to page's constructor Example from lists page in list module:.... main.... Defines the lists page to have the main style

I2CE Framework: Templates An html template is a small bit of (almost) html A page loads various html template files as needed via I2CE_Template class. I2CE_Template is a helper class for the Document Object Module (DOM) Data can be associated to nodes in the DOM Special tags and attributes are processed showCurrentAccidents()"/>

I2CE Framework: HTTP Request Everything handled by index.php Ensure we connection to the database If the system is not up-to-date go to the Updater The system is initialized There has been no changes to an enabled module's configuration file There has been no change to an enabled module's class file Check to see if the request for a static file, and if so dump the file to the user and exit Otherwise pass off control to Wrangler