210 likes | 422 Views
INDIA │ 18-20 august 2010. virtual techdays. Extending Orchard for HTML5 and IE9. Praveen Srivatsa │ Director, AsthraSoft Consulting Microsoft Regional Director, Bangalore MVP, ASP.NET. What Is Orchard?.
E N D
INDIA │ 18-20 august2010 virtual techdays Extending Orchard for HTML5 and IE9 Praveen Srivatsa│ Director, AsthraSoft Consulting Microsoft Regional Director, Bangalore MVP, ASP.NET
What Is Orchard? • Orchard is a free, open source, community-focused project aimed at delivering applications and reusable components on the ASP.NET platform. • CMS platform built on ASP.NET MVC 2 • Licensed under the New BSD license • Included in the ASP.NET Open Source Gallery under the CodePlex Foundation • Accepts external contributions/patches today • Hosted on http://orchard.codeplex.com • Community site: http://orchardproject.net • Preview release: http://orchard.codeplex.com/releases
Target Audiences • End-users • Pre-configured Orchard distributions enable creation of web sites through UI customization • Developers • Orchard is a CMS platform for creating custom applications and modules • Designers • Orchard offers a flexible theming platform • Web Professionals • Orchard is a highly customizable CMS application • Market place with a large choice of themes and modules
Extensibility Deep Dive • Audience for the rest of the presentation is developers • Building a (very) basic “Products” module • Goal is to give a glimpse of the CMS platform the core Orchard team is building
Orchard Architecture Orchard Modules Pages Blogs Comments Tags Media Feeds Scheduling XmlRpc Users Roles Themes Navigation Setup Settings Homepage Orchard CMS ASP.NET MVC
Orchard Themes Document.aspx Layout.ascx <view>.ascx <!DOCTYPE html> <html> <head> <title><%=Html.Title()%></title> <% Model.Zones.Add("head:before”); Html.Zone("head", ":metas :styles :scripts"); %> </head> <body> <%Html.ZoneBody(“layout");%> </body> </html> <% Html.RegisterStyle("site.css“) Model.Zones.Add("header”); %> <div class="page"> <div id="header"><% Html.Zone("header"); Html.Zone("menu"); %> </div> <div id="main"><% Html.ZoneBody("content");%> <div id="footer"><% Html.Zone("footer"); %></div> </div> </div> (action specific view) Layout View Context
Composition Routable Body Tags Comments Common
UI Composition ContentDriver Part 1 Controller 1 ContentManager (BuildXxxModel) ContentDriver Part 2 ContentItem ViewModel 3 2 (…) 4 View ContentDriver Part n
Conclusion What you’ve seen: • Defining a simple module as MVC “Area” • Working with data (ProductRecord) • Defining a content type (Product) • Data Composition • ProductHandler, wiring up “Parts” like Common, Comments, Tags • UI Composition • ProductDriver, ViewModels • Editor templates on back-end/admin • Complete sample code on http://orchardproject.net
Purpose of HTML 5 • Semantic Mark up • Web Form Function • Support Rich Web Application
Maintain capability from older version of HTML • Semantic mark up in order to have more readable code • Reduce other plug-in web application
<section> • Define a generic content • <article> • Representing independent article • <header> and <footer> • Topmost and bottommost Blocks of content • <nav> • Create navigation menu
It makes source code simpler • It will help developer to increase their productivity Source code for autofocus in HTML 4 source code for autofocus in HTML 5
This is not most important thing on HTML 5 But, Most Exciting thing. • Reduce use of Plug-in Web Application
Inner data storage, support database function based on SQL • Offline web application • Drag and drop API and others
Some bugs are exist because it is still developing. • However, it would be beneficial for user and developer when it is completely developed. • End of This year, final version of HTML 5 will be released. • HTML 4 has been most standard web-document form for last 10 years, so HTML 5 will be one of the most important standard web document form.
THANKS│18-20 august2010 virtual techdays praveens@asthra.net│ connect.asthrasoft.com/asthratimes