Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to DotNetNuke Scott McCulloch DotNetNuke Core Team www.smcculloch.net.

Similar presentations


Presentation on theme: "Introduction to DotNetNuke Scott McCulloch DotNetNuke Core Team www.smcculloch.net."— Presentation transcript:

1 Introduction to DotNetNuke Scott McCulloch DotNetNuke Core Team www.smcculloch.net

2 IBUYSPY Developed by Vertigo Software to showcase ASP.NET 1.0 Developed by Vertigo Software to showcase ASP.NET 1.0 VB.Net/C# VB.Net/C# Dynamic Site Layout using User Controls Dynamic Site Layout using User Controls Portal Module Implementation Portal Module Implementation Portal Configuration using Sql Server Portal Configuration using Sql Server Role-Based Security Role-Based Security Great Starting Point! Great Starting Point!

3 IBUYSPY - Problems Support/Enhancements – No longer being worked on! (www.aspsmith.com/ibs) Support/Enhancements – No longer being worked on! (www.aspsmith.com/ibs) Missing Features Missing Features –Multiple Communities –Portal Management Customisation Customisation –Module Development –Graphical Changes –Core Extensibility

4 DotNetNuke

5 The DotNetNuke Project Started by Shaun Walker of Perpetual Motion Interactive Systems Inc. in Jan. 2002 as an extension to IBuySpy, initially called IBuySpy Workshop. Started by Shaun Walker of Perpetual Motion Interactive Systems Inc. in Jan. 2002 as an extension to IBuySpy, initially called IBuySpy Workshop. 105,538 Registered Users (18 th Nov, 2004) 105,538 Registered Users (18 th Nov, 2004) Now consists of 30 core team developers. Now consists of 30 core team developers. Large community support, ASP.NET forums. Large community support, ASP.NET forums. Written in VB.NET Written in VB.NET Open Source license. Open Source license. 10,000 to over 50,000 lines of code 10,000 to over 50,000 lines of code

6 Timeline  01/1/2002 - IBS Release  24/12/2002 – Released on ASP.Net forums –Shaun Walker – Perpetual Motion (Canada) -IBuySpy Workshop  15/3/2003 – 15/5/2003 -Re-branded as DotNetNuke (1.05 – 1.08) -Private Assemblies  1/9/2003 – DNN 1.10 (x) -Core team formed world-wide -Stable release with some security patches

7 Timeline (cont.)  23/3/2004 – DNN 2.0 –Complete Re-Write –1500+ Source Control Transactions/Month -Provider Pattern for Data Access -Skinning Engine  4/6/2004 – DNN 2.1 -Providers for Scheduler/Logging/RichText -Crucial bug fixes

8 Timeline (cont.)  The Future -Multi-Lingual (2.2) -Friendly Urls (2.2) -Search (2.2) -Whidbey Providers (2.2) -www.dotnetnuke.com (roadmap) www.dotnetnuke.com

9 More Features!

10 Completing the Portal Implementation Multiple Portals per Installation Multiple Portals per Installation Extended Basic Features Extended Basic Features –User Membership, Role Membership, Content Authoring Implement Advanced Features Implement Advanced Features –Search Engine Optimization, Banner Advertising, Affiliate Relationship Management, and Hosting

11 Portal Architecture 1 Installation (1DB/Web) Host CarPoint.ninemsn.com.au BikePoint.ninemsn.com.au BoatPoint.ninemsn.com.au

12 Core Extensibility

13 Provider Pattern “a provider is simply a contract between an API and the Business Logic/Data Abstraction Layer.” “a provider is simply a contract between an API and the Business Logic/Data Abstraction Layer.” Whidbey Pattern for Extensibility Whidbey Pattern for Extensibility Build new core features using this Pattern! Build new core features using this Pattern! Modules built using this pattern as well! Modules built using this pattern as well!

14 Portal Architecture for Data Access Abstract Base Class Config AccessDataProvider SqlDataProvider OracleDataProvider

15 Provider Pattern Everywhere Data Provider Data Provider Rich Text Provider Rich Text Provider Logging Provider Logging Provider Scheduler Provider Scheduler Provider Whidbey Providers (Membership, Role, Profile) coming soon! Whidbey Providers (Membership, Role, Profile) coming soon! Everywhere customisation *may* occur! Everywhere customisation *may* occur!

16 Skinning

17 The Skinning Process Design Design Skin in Any Editor (Designer) Replace Mark Dynamic Section in Skin with special PlaceHolders (Designer) Pack Package into Zip File for Distribution (Designer) Deploy Install into your portal (Admin)

18 Setup 1. Design HTML in any editor Note: “Normal Design” as you would design any website Note: “Normal Design” as you would design any website Design Design Skin in Any Editor (Designer)

19 Replace 2. Mark sections to inject module (ContentPane, LeftPane) 3. Mark dynamic functionality based on Skin Objects ([Title], [Menu], [Login]) Note: You can write your own Skin Objects! (Not Covered) Note: You can write your own Skin Objects! (Not Covered) Replace Mark Dynamic Section in Skin with special PlaceHolders (Designer)

20 Pack 4. Pack up all files into a Zip Pack Package into Zip File for Distribution (Designer)

21 Setup 5. Install through File Manager as “Skin Package” Note: You can apply at “Host”, “Portal”, “Page” Note: You can apply at “Host”, “Portal”, “Page” Deploy Install into your portal (Admin)

22 Further Notes You can write your own Skin Objects (e.g. replacement menu’s) You can write your own Skin Objects (e.g. replacement menu’s) Container Packages are the content around a Module Container Packages are the content around a Module You can write Skin’s as ASCX to skip conversion Process You can write Skin’s as ASCX to skip conversion Process

23 More Information Skinning Guide (/Documentation) Skinning Guide (/Documentation) Skinning Contest (http://www.dotnetnuke.com/contest ) Skinning Contest (http://www.dotnetnuke.com/contest )http://www.dotnetnuke.com/contest Skin Object Example (/DesktopModules/PageTitle/) Skin Object Example (/DesktopModules/PageTitle/) Free/Buy Skins (http://www.dnnskins.com, http://www.snowcovered.com ) Free/Buy Skins (http://www.dnnskins.com, http://www.snowcovered.com )http://www.dnnskins.com http://www.snowcovered.comhttp://www.dnnskins.com http://www.snowcovered.com

24 Module Development

25 What are Modules? Written in.NET code, C#, VB.NET Written in.NET code, C#, VB.NET Promotes code reuse. Promotes code reuse. Allows you to extend DotNetNuke. Allows you to extend DotNetNuke. Customizable (using the module container) Customizable (using the module container) Compiled assemblies. Compiled assemblies.

26 Development Process Setup Initial Project Creation in Visual Studio (Developer) Develop Create your Custom Functionality (Developer) Pack Package Module for Installation (Developer) Deploy Install into Portal (Admin)

27 Setup Create a new Class Project (/DesktopModules) Create a new Class Project (/DesktopModules) Compilation Path (../../bin/) Compilation Path (../../bin/) Name Project Appropriately (CompanyName.Module) Name Project Appropriately (CompanyName.Module) Reference DotNetNuke Project Reference DotNetNuke Project Setup Initial Project Creation in Visual Studio (Developer)

28 Develop Add User Controls to Project Add User Controls to Project User Controls must Implement “PortalModuleControl” User Controls must Implement “PortalModuleControl” Develop as “Normal” Develop as “Normal” Register Controls through Portal for Debugging Register Controls through Portal for Debugging Develop Create your Custom Functionality (Developer)

29 Pack Write Xml Manifest File (ModuleName.dnn) Write Xml Manifest File (ModuleName.dnn) Package into Zip File Package into Zip File Distribute Distribute Pack Package Module for Installation (Developer)

30 Deploy Install to your portal through “File Manager” Install to your portal through “File Manager” Add to any page (Module will appear in list now) Add to any page (Module will appear in list now) Deploy Install into Portal (Admin)

31 More Information Module Developers Guide (/Documentation) Module Developers Guide (/Documentation) www.smcculloch.net (Sample Modules/CodeSmith Templates) www.smcculloch.net (Sample Modules/CodeSmith Templates) www.smcculloch.net www.dotnetnuke.dk (Tutorials/Dev Environment) www.dotnetnuke.dk (Tutorials/Dev Environment) www.dotnetnuke.dk dnnjungle.vmasanas.net (Tutorials/VS.NET Enterprise Templates) dnnjungle.vmasanas.net (Tutorials/VS.NET Enterprise Templates) dnnjungle.vmasanas.net

32 Conclusion Open Source Application with Strong Development Community Open Source Application with Strong Development Community Extensible through Provider Pattern Extensible through Provider Pattern Customisable through Skinning & Modules Customisable through Skinning & Modules “Off the Shelf” Portal Application at the right price! “Off the Shelf” Portal Application at the right price!

33 Questions?

34 www.DotNetNuke.com Scott McCulloch DotNetNuke Core Team www.smcculloch.net smcculloch@iinet.net.au


Download ppt "Introduction to DotNetNuke Scott McCulloch DotNetNuke Core Team www.smcculloch.net."

Similar presentations


Ads by Google