The Mighty Blog

Creating a DotNetNuke Skin Widget Manifest File

Apr 13

Written by:
4/13/2009  RssIcon

I am still reading Mitchel Seller’s book, Professional DotNetNuke Module Programming.  It’s a great book so far, and I have already been using it as a quick desktop reference for my DNN development needs.  However, I came across a page last night that confused me.  I have been speaking at code camps recently about the new Skin Widgets available to DotNetNuke version 5.  One of the things I show during the session is how to package a widget to be installed on another DNN website. 

In the book, Mitchel describes the available manifest types being: Module, Provider, Skin, SkinObject, and Container.  However, another type is Widget.  That’s what we are going to talk about here.  First of all, since Charles Nurse has done a great job of covering the new Manifest file, I will not go into huge detail on it, but I will show you the entire manifest file that I used for my demo.

Here are the blog posts about the DNN 5.0 manifest files that Charles Nurse put out there for background:

Following the roadmap and guidelines that Charles has left for us, we can move on to the Widget manifest file.  The main difference begins with the PACKAGE node, near the top of the page.  For a module, it will look like this:

<package name="WillStrohl.ContactCollector" type="Module" version="1.0.0">

A Widget is only slightly different, as shown here:

<package name="WillStrohl.Widgets" type="Widget" version="1.0.0">

Notice that the TYPE attribute differs from Module to Widget.  This difference continues to the COMPONENTS child nodes.  Specifically, the component node itself.  There are various types that Charles has blogged about.  Now we use the “Widget” value for the TYPE attribute.  Then, the schema for the remaining child nodes also have a slight difference, but only in the element names themselves.  However, the function is the same as you’ve been using in all previous manifest files.

<components> 
    <!-- It is important to identify the type as a widget for the installer --> 
    <component type="Widget"> 
        <widgetFiles> 
            <!-- The name of the widget folder --> 
            <basePath>WillStrohl</basePath> 
            <!-- The listing of all of the widget files included in the zip file --> 
            <widgetFile> 
                <name>WillStrohl.Widgets.SampleWidget.js</name> 
            </widgetFile> 
            <widgetFile> 
                <name>WillStrohl.Widgets.TechnoratiInfoWidget.js</name> 
            </widgetFile> 
            <widgetFile> 
                <name>WillStrohl.Widgets.SocialBookmarkWidget.js</name> 
            </widgetFile> 
            <widgetFile> 
                <name>license.txt</name> 
            </widgetFile> 
            <widgetFile> 
                <name>releasenotes.txt</name> 
            </widgetFile> 
            <widgetFile> 
                <path>img</path> 
                <name>i_facebook.gif</name> 
            </widgetFile> 
            <widgetFile> 
                <path>EmbedWidgetResources\InjectScript</path> 
                <name>injectscript.snippet.htm</name> 
            </widgetFile> 
        </widgetFiles> 
    </component> 
</components>

That’s all there is too it.  Just replace a standard DNN 5 manifest file using my examples above, replacing the values with your own.  Here is a complete example of my own manifest file.

Tags:
Categories: DotNetNuke

6 comment(s) so far...


Gravatar

Re: Creating a DotNetNuke Skin Widget Manifest File

Whoaaaa. It's pretty cool to run into a website that makes me SLLOOWWW down and R E A D. Isn't there an easier way to simply download knowledge yet?

I'm trying to fix an upload error on a DNN 5.01 skin pack. The .dnn file isn't found in the temp directory during install, and yet i can see it in the temp folder? Does this mean there's an issue with the server not recognizing the .dnn file extension and what to do with it?

Ideas?

By Daniel Comp on   5/22/2009
Gravatar

Re: Creating a DotNetNuke Skin Widget Manifest File

It turns out that the manifest was zipped in the wrong place, so once I moved the file and re-zipped it, install, etc. things are fine. Is there a standard for file and manifest file/folder relationships - like an outline to follow?

By Daniel Comp on   5/22/2009
Gravatar

Re: Creating a DotNetNuke Skin Widget Manifest File

Yes. Which are you looking for? The relationship in the manifest, in the zip file, or both?

By Will on   5/22/2009
Gravatar

Re: Creating a DotNetNuke Skin Widget Manifest File

You can also use my "Dotnetnuke 5+ Skin Package Manifest Creator" here:

http://dotnetnuke.mywebsitedesigner.com.au

By Adam Kirkbride on   2/20/2010
Gravatar

Re: Creating a DotNetNuke Skin Widget Manifest File

While installing a skin, i get this issue Failure File specified in the dnn could not be found in the zip file: - E:\DNN\InstallationPackage\Install\Temp\zrsdhw2t\css\variations\largetext.css

By Magu on   12/16/2010
Gravatar

Re: Creating a DotNetNuke Skin Widget Manifest File

@Magu: Your comment really doesn't have anything to do with this blog post, but... That error is because the skin manifest file has specified a file that is supposed to be in the zip file, but it is actually not in the zip file.

By Will on   12/16/2010

Your name:
Gravatar Preview
Your email:
(Optional) Email used only to show Gravatar.
Your website:
Title:
Comment:
Add Comment   Cancel 
Add to Technorati Favorites
Tweet about my blog
The opinions expressed here are the personal opinions of Will Strohl and do not necessarily represent the views and opinions of the DotNetNuke Corporation.
© Copyright 2004-2011 by Will Strohl. All rights reserved. Website Skinned By: Ralph Williams  Website Hosted By: Applied Innovations