You are previewing Beginning DotNetNuke® Skinning and Design.
O'Reilly logo
Beginning DotNetNuke® Skinning and Design

Book Description

  • "Skinning" refers to an application's ability to change the look of the design by a setting in the application

  • Explains how DotNetNuke skins can be created in either ASP.NET or HTML with CSS and can be developed with any Web tool that creates HTML/CSS or ASP.NET

  • Combines the hot topic of using the DotNetNuke application framework with CSS and other site layout technologies to manage the user experience, look, feel, and functionality of Web sites

  • Covers how to package, install, and remove a skin and offers programming tools for skins

  • Discusses efficient design, when to use HTML versus CSS versus ASP.NET for a design, and browser-safe designs

Table of Contents

  1. Copyright
  2. About the Author
  3. Credits
  4. Acknowledgments
  5. Foreword
  6. Introduction
    1. Whom This Book Is For
    2. What This Book Covers
    3. How This Book Is Structured
    4. Part I: Getting Acquainted
    5. Part II: Welcome to the Neighborhood
    6. Part III: Increasing the Property Value
    7. What You Need to Use This Book
    8. Conventions
    9. Source Code
    10. Errata
    11. p2p.wrox.com
  7. I. Getting Acquainted
    1. 1. Introducing DotNetNuke Skinning
      1. 1.1. The Origins of DotNetNuke
      2. 1.2. Why Use DotNetNuke
      3. 1.3. What Is Skinning?
      4. 1.4. DNN Modules
      5. 1.5. Learning About Containers
      6. 1.6. Learning About Skins
        1. 1.6.1. Developing Skins
        2. 1.6.2. Installing Skins
        3. 1.6.3. Browsing the DNN-Blue Skins
      7. 1.7. Cascading Style Sheets
        1. 1.7.1. CSS Zen Garden
        2. 1.7.2. CSS and Web Browsers
      8. 1.8. Building a Website with DNN
        1. 1.8.1. Skinning Made Easy
        2. 1.8.2. Site Map Diagram
          1. 1.8.2.1. Home Page
          2. 1.8.2.2. Landing Pages
          3. 1.8.2.3. Detail Pages
          4. 1.8.2.4. Parent-Child Page Relationships
          5. 1.8.2.5. Setting the Parent and Child Pages
      9. 1.9. Installing DNN Automatically
      10. 1.10. Summary
    2. 2. Installing DotNetNuke
      1. 2.1. Installing Prerequisites
        1. 2.1.1. Installing a Web Server
          1. 2.1.1.1. Installing IIS on Windows XP Professional
          2. 2.1.1.2. Using Cassini
        2. 2.1.2. Installing ASP.Net 2.0
        3. 2.1.3. Using Microsoft SQL Server
          1. 2.1.3.1. Understanding Abstraction and the Provider Model
          2. 2.1.3.2. Installing Microsoft SQL Server Express Edition, Service Pack 1
          3. 2.1.3.3. Installing SQL Server Management Studio Express
        4. 2.1.4. Installing Microsoft Visual Studio 2005
        5. 2.1.5. Checking Microsoft Update
      2. 2.2. Installing DotNetNuke
        1. 2.2.1. Getting the Latest Release
        2. 2.2.2. Experimenting with Installation Approaches
          1. 2.2.2.1. Using Visual Web Developer and Cassini
            1. 2.2.2.1.1. Starter Kit Installation
            2. 2.2.2.1.2. DotNetNuke File Installation
            3. 2.2.2.1.3. Controlling Ports in Cassini
            4. 2.2.2.1.4. Using the DotNetNuke Installation Wizard
          2. 2.2.2.2. Using Internet Information Server
            1. 2.2.2.2.1. DotNetNuke File Installation
            2. 2.2.2.2.2. Confirm ASP.Net 2.0 Mapping
            3. 2.2.2.2.3. DotNetNuke Database Installation
            4. 2.2.2.2.4. Edit the Database Connection
            5. 2.2.2.2.5. Launch the Website
          3. 2.2.2.3. Installing DotNetNuke on IIS Remotely
            1. 2.2.2.3.1. DotNetNuke File Installation
            2. 2.2.2.3.2. DotNetNuke Database Installation
            3. 2.2.2.3.3. Edit the Database Connection
            4. 2.2.2.3.4. Launch the Website
      3. 2.3. A Brief Tour
        1. 2.3.1. Host and Admin Accounts
        2. 2.3.2. Browsing the Modules
      4. 2.4. Summary
    3. 3. Installing Skin Packages
      1. 3.1. What Is a Skin Package?
        1. 3.1.1. Containers.zip File
        2. 3.1.2. Skins.zip File
      2. 3.2. Searching for DotNetNuke Skins
      3. 3.3. Uploading a Skin
      4. 3.4. Applying Skins to Pages
      5. 3.5. Using Portals
        1. 3.5.1. Parent and Child Portals
        2. 3.5.2. Discover Skins in Host and Portal Skins
      6. 3.6. Using the Install Folder
      7. 3.7. Summary
      8. 3.8. Exercises
    4. 4. Exploring Skins
      1. 4.1. Examining Skins and Containers
        1. 4.1.1. Examining the Skin File
          1. 4.1.1.1. Using Directives
          2. 4.1.1.2. Using the HTML and Skin Objects
            1. 4.1.1.2.1. Using the Logo Skin Object
            2. 4.1.1.2.2. Using the Banner Skin Object
          3. 4.1.1.3. Understanding Panes
            1. 4.1.1.3.1. Using the ControlPanel
            2. 4.1.1.3.2. Using the ContentPane
        2. 4.1.2. Examining the Container File
          1. 4.1.2.1. Using Directives
          2. 4.1.2.2. Using HTML and Skin Objects
            1. 4.1.2.2.1. Using the Actions Menu Control
            2. 4.1.2.2.2. Using the Icon Control
            3. 4.1.2.2.3. Using the Title Control
            4. 4.1.2.2.4. Using the Visibility Control
            5. 4.1.2.2.5. Using the Module Help Control
            6. 4.1.2.2.6. Using the Add Content Control
            7. 4.1.2.2.7. Using the Syndicate Content Control
            8. 4.1.2.2.8. Using the Print Content Control
            9. 4.1.2.2.9. Using the Module Settings Control
          3. 4.1.2.3. Using the Content Pane
          4. 4.1.2.4. Configuring Containers
      2. 4.2. A Look at the Pros
        1. 4.2.1. Providing Proper Formatting
        2. 4.2.2. Using Version Control
        3. 4.2.3. Comparing File Comparison Utilities
      3. 4.3. Exploring Skin Objects
        1. 4.3.1. Exploring Standard Skin Objects
        2. 4.3.2. Using House of Nuke Skin Objects
      4. 4.4. Summary
      5. 4.5. Exercises
    5. 5. Creating Custom Skins
      1. 5.1. Considering Design
      2. 5.2. How to Build Skin Files
        1. 5.2.1. Building an HTML Skin
          1. 5.2.1.1. Creating the HTML File
          2. 5.2.1.2. Creating the XML File
          3. 5.2.1.3. Creating the CSS File
        2. 5.2.2. Building an ASCX Skin
        3. 5.2.3. Setting the Document Type Definition
      3. 5.3. Implementing Container Files
        1. 5.3.1. Building an HTML Container
          1. 5.3.1.1. Creating the HTML File
          2. 5.3.1.2. Creating the XML File
          3. 5.3.1.3. Adding Sample Content
        2. 5.3.2. Building an ASCX Container
      4. 5.4. Selecting Tools for Analyzing Skins
        1. 5.4.1. Microsoft Internet Explorer Developer Toolbar
        2. 5.4.2. Firefox Add-Ons
          1. 5.4.2.1. Using View Source Chart
          2. 5.4.2.2. Using Firebug
      5. 5.5. Summary
      6. 5.6. Exercises
  8. II. Welcome to the Neighborhood
    1. 6. The Neighborhood Association Website
      1. 6.1. About the Neighborhood Association
      2. 6.2. Planning a DotNetNuke Site
        1. 6.2.1. Getting Started
        2. 6.2.2. Planning the Sitemap
        3. 6.2.3. Configuring User Registration
        4. 6.2.4. Securing Pages for Selected Roles
      3. 6.3. Selecting DotNetNuke Modules
        1. 6.3.1. Installing Available Modules
        2. 6.3.2. Using the Announcements Module
          1. 6.3.2.1. Adding an Announcement
          2. 6.3.2.2. Announcement Module Settings
        3. 6.3.3. Using the Blog Module
        4. 6.3.4. Using the Forum Module
        5. 6.3.5. Using the Documents Module
      4. 6.4. Summary
      5. 6.5. Exercises
    2. 7. Skinning the Neighborhood Association Website
      1. 7.1. Designing the Site
        1. 7.1.1. Defining the Home Page Layout
        2. 7.1.2. Defining the Wide Layout
        3. 7.1.3. Defining the Blog Layout
      2. 7.2. Avoiding Traps
        1. 7.2.1. Allowing for Control Panel Injection
        2. 7.2.2. Solving Pains with Panes
      3. 7.3. Creating Custom Skins
        1. 7.3.1. Creating the Initial Skin
        2. 7.3.2. Building the Home Page Skin
        3. 7.3.3. Building the Wide Skin
        4. 7.3.4. Building the Blog Skin
      4. 7.4. Deploying and Testing the Custom Skin
        1. 7.4.1. Testing the Blog Module
        2. 7.4.2. Testing the Forum Module
      5. 7.5. Summary
      6. 7.6. Exercises
    3. 8. Designing the Navigation
      1. 8.1. Examining the Menu Provider Pattern
        1. 8.1.1. A Closer Look at the Default Menu
        2. 8.1.2. Changing Menu Providers
        3. 8.1.3. Using the ASP2 Menu Skin Object
        4. 8.1.4. Using the TreeViewMenu Skin Object
      2. 8.2. Implementing a Third-Party Menu Control
        1. 8.2.1. Using the HouseMenu Skin Object
        2. 8.2.2. Building an Interactive Menu
        3. 8.2.3. Skinning the HouseMenu
      3. 8.3. Summary
      4. 8.4. Exercises
    4. 9. Leveraging Web User Controls
      1. 9.1. Consolidating Code
      2. 9.2. Developing Interactive Skins
        1. 9.2.1. Inserting a Token on Private Pages
        2. 9.2.2. Adding Personalization
      3. 9.3. Summary
      4. 9.4. Exercises
  9. III. Increasing the Property Value
    1. 10. Exploring Silverlight
      1. 10.1. Getting Started with Silverlight
      2. 10.2. Applying Animation in XAML
        1. 10.2.1. Using Basic Animation
        2. 10.2.2. Applying Animation to a DotNetNuke Skin
      3. 10.3. Investigating Interactive Media
      4. 10.4. Summary
      5. 10.5. Exercises
    2. 11. Using Cascading Style Sheets
      1. 11.1. Exploring CSS Fundamentals
        1. 11.1.1. Targeting HTML
          1. 11.1.1.1. Using Class Attributes
          2. 11.1.1.2. Using ID Attributes
          3. 11.1.1.3. Using the Document Object Model Hierarchy
          4. 11.1.1.4. Sharing Rules with Targets
        2. 11.1.2. Applying a Custom Font Treatment
        3. 11.1.3. Working with Rectangles
          1. 11.1.3.1. Using Margins
          2. 11.1.3.2. Using Padding
          3. 11.1.3.3. Applying the Universal Selector
          4. 11.1.3.4. Using Borders
        4. 11.1.4. Working in the Background
        5. 11.1.5. Defining Position
          1. 11.1.5.1. Using Relative Positioning
          2. 11.1.5.2. Using Absolute Positioning
      2. 11.2. Clearing Default DNN Styles
        1. 11.2.1. Customizing the Portal Style Sheet
        2. 11.2.2. Customizing the Global Style Sheet
      3. 11.3. Summary
      4. 11.4. Exercises
    3. 12. Web Standards and Compliance
      1. 12.1. Web Standards
        1. 12.1.1. HTML Standards Validation
        2. 12.1.2. CSS Standards Validation
      2. 12.2. Moving Toward Compliance
        1. 12.2.1. Implementing Standards Compliance in DotNetNuke
        2. 12.2.2. Changing Menu Providers
        3. 12.2.3. Changing HTML Editor Providers
      3. 12.3. Maintaining Compliance
      4. 12.4. Summary
      5. 12.5. Exercises
    4. 13. Targeting Modules with CSS
      1. 13.1. Getting Started with Module Styling
      2. 13.2. UsersOnline Module
        1. 13.2.1. Evaluation
        2. 13.2.2. Customization
      3. 13.3. Contacts Module
        1. 13.3.1. Evaluation
        2. 13.3.2. Customization
      4. 13.4. Wiki Module
        1. 13.4.1. Evaluation
        2. 13.4.2. Customization
      5. 13.5. News Feeds Module
        1. 13.5.1. Evaluation
        2. 13.5.2. Customization
      6. 13.6. Summary
      7. 13.7. Exercises
    5. 14. Exploring AJAX in DotNetNuke
      1. 14.1. Examining Microsoft ASP.Net AJAX
        1. 14.1.1. ASP.Net AJAX Extensions
        2. 14.1.2. ASP.Net AJAX Control Toolkit
        3. 14.1.3. AJAX Library
        4. 14.1.4. ASP.Net Futures
      2. 14.2. Merging the Client API and ASP.Net AJAX
      3. 14.3. Using ASP.Net AJAX in DotNetNuke
        1. 14.3.1. Adding a Watermark to the Search Text Box
        2. 14.3.2. Checking DotNetNuke Password Strength
      4. 14.4. Skinning a Custom Module with AJAX
        1. 14.4.1. Installing the Balloon Pop Game
        2. 14.4.2. Enhancing the Existing Game with AJAX Controls
          1. 14.4.2.1. Register the AJAX ScriptManager in C#
          2. 14.4.2.2. Convert the Game into Targetable Server Controls
          3. 14.4.2.3. Add the Animation Controls
          4. 14.4.2.4. Change the JavaScript Behavior
          5. 14.4.2.5. Update the Module Style Sheet
        3. 14.4.3. Upgrading the Module
      5. 14.5. Summary
      6. 14.6. Exercises
    6. 15. Using sIFR with DotNetNuke
      1. 15.1. Getting Started with sIFR
      2. 15.2. Selecting and Embedding Fonts
        1. 15.2.1. Selecting a Font
        2. 15.2.2. Using Adobe Flash CS3 Professional
        3. 15.2.3. Using sIFR Font Embedder
      3. 15.3. Customizing a Page with sIFR
        1. 15.3.1. Calling sIFR.replaceElement()
        2. 15.3.2. Creating Decoy Styles in CSS
      4. 15.4. Applying sIFR to DotNetNuke
        1. 15.4.1. Modifying a DotNetNuke Container
        2. 15.4.2. Working with JavaScript Timing
      5. 15.5. Summary
      6. 15.6. Exercises
    7. A. Exercises and Solutions
      1. A.1. Chapter 3
      2. A.2. Chapter 4
      3. A.3. Chapter 5
      4. A.4. Chapter 6
      5. A.5. Chapter 7
      6. A.6. Chapter 8
      7. A.7. Chapter 9
      8. A.8. Chapter 10
      9. A.9. Chapter 11
      10. A.10. Chapter 12
      11. A.11. Chapter 13
      12. A.12. Chapter 14
      13. A.13. Chapter 15
    8. B. Glossary of Terms and Acronyms