<rss version="2.0" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"><channel><title>AppTheory</title><link>http://www.apptheory.com</link><description>RSS feeds for AppTheory</description><ttl>60</ttl><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/510/0-Telerik-RadEditor-Google-Chrome.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=510</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=510&amp;PortalID=2&amp;TabID=411</trackback:ping><title>$0 Telerik RadEditor Google Chrome</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/510/0-Telerik-RadEditor-Google-Chrome.aspx</link><description>On a clients site we were receiving complaints of ‘$0’ showing up in peoples posted content. After a bit of research we narrowed this down to an issue with older versions of the Telerik RadEditor rich text editor and the Google Chrome browser. You can read the thread on the Telerik forums here. According to Telerik staff this was resolved in the SP2 release of RadControls for ASP.NET AJAX Q2 2008. So updating the installed version of RadEditor should resolve the issue.</description><dc:creator>Scott Schecter</dc:creator><pubDate>Tue, 29 Sep 2009 01:09:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:510</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/509/Easily-Identify-Missing-Localization-Keys-in-DotNetNuke.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=509</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=509&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Easily Identify Missing Localization Keys in DotNetNuke</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/509/Easily-Identify-Missing-Localization-Keys-in-DotNetNuke.aspx</link><description>One thing I find myself having to remind our developers at AppTheory, from time to time, is how to easily identify missing localization elements in the user interface. This can be done by setting the “ShowMissingKeys” property in the web.config. If you develop locally by starting with the development.config (as your web.config), this will already be set for you. When set to true, this will show a [L] in front of all items that are properly localized. If something does not display an [L] in front of it, it is not localized. While a very simple concept, it is something I have found myself explaining several times over again and figured it was worth repeating here.</description><dc:creator>Chris Paterra</dc:creator><pubDate>Fri, 25 Sep 2009 21:02:45 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:509</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/508/Managing-the-Root-Drive-Space-on-AWS-Instances.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=508</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=508&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Managing the Root Drive Space on AWS Instances</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/508/Managing-the-Root-Drive-Space-on-AWS-Instances.aspx</link><description>At AppTheory here is how I would become aware of a drive space problem. I would get an email notification from the monitoring system that a client DNN web site has suddenly become unavailable or it’s performance has started to decline. I would then remote into the server to identify the issue. I would see that the root drive was down to 100MB. After a little investigation I find that a log file or temp file is eating up the drive space. Has anyone seen a few 250 MB log files? The resolution is fairly simple, either delete or move the offending files to another drive.</description><dc:creator>Max Schneider</dc:creator><pubDate>Fri, 25 Sep 2009 20:32:16 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:508</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/507/Convert-A-ASPNET-Web-Site-Project-WSP-To-A-Web-Application-Project-WAP-Quickly.aspx#Comments</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=507</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=507&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Convert A ASP.NET Web Site Project (WSP) To A Web Application Project (WAP) Quickly</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/507/Convert-A-ASPNET-Web-Site-Project-WSP-To-A-Web-Application-Project-WAP-Quickly.aspx</link><description>I was asked what the quickest way to convert an ASP.NET Web Site Project (WSP) to a Web Application Project (WAP) was. The client had previously been creating a new project and copying in each file. I can imagine this became quite time consuming for them. Luckily, there is a better and much easier way to do this.</description><dc:creator>Scott Schecter</dc:creator><pubDate>Tue, 22 Sep 2009 00:26:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:507</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/506/Vote-for-Us.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=506</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=506&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Vote for Us!</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/506/Vote-for-Us.aspx</link><description>Vote for us at the OpenForce Community Choice Awards</description><dc:creator>Ryan Wofford</dc:creator><pubDate>Mon, 21 Sep 2009 20:49:03 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:506</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/505/Missing-DotNetNuke-Controls.aspx#Comments</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=505</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=505&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Missing DotNetNuke Controls</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/505/Missing-DotNetNuke-Controls.aspx</link><description>Recently I was reading some forum posts on www.dotnetnuke.com and I noticed that a handful of people are missing module controls after an installation. What I mean when I say this is that they are using a module, they do something that should load a different view (such as a module action, thus a ctl=key) and nothing displays on the page. After some investigation into some of these issues, I found that those posts were related to missing DotNetNuke controls for the module definition. What was happening is during the install process the controls were in the .dnn manifest file but somehow were not added to the definition. I know in some 5.x betas this was a problem but the team had fixed this (it was related to caching). So my question to all of you, has anyone else seen this type of behavior after installing a module (most likely upgrade, but possibly new installs too)?</description><dc:creator>Chris Paterra</dc:creator><pubDate>Fri, 18 Sep 2009 21:37:37 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:505</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/504/Amazon-Elastic-Cloud-Computing-Bundle-Management.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=504</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=504&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Amazon Elastic Cloud Computing Bundle Management</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/504/Amazon-Elastic-Cloud-Computing-Bundle-Management.aspx</link><description>At Apptheory we have been using Amazon Web Service (AWS) Elastic Cloud Computing instance bundles as part of our backup strategy for clients.  The DotNetNuke (DNN) installs that we run for clients regularly receive updates to the operating system, new modules and DNN updates. Bundling instances while a nice option and a critical step is a bit cumbersome in its current configuration.</description><dc:creator>Max Schneider</dc:creator><pubDate>Fri, 18 Sep 2009 21:25:53 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:504</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/503/Some-pitfalls-of-SaaS.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=503</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=503&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Some pitfalls of SaaS</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/503/Some-pitfalls-of-SaaS.aspx</link><description>Some potential pitfalls of the SaaS business model.</description><dc:creator>Ryan Wofford</dc:creator><pubDate>Fri, 18 Sep 2009 16:23:22 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:503</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/502/Rendering-embedded-styles-during-a-AJAX-post-back-does-not-work-in-Internet-Explorer-ndash-Solution.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=502</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=502&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Rendering embedded styles during a AJAX post back does not work in Internet Explorer &amp;ndash; Solution</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/502/Rendering-embedded-styles-during-a-AJAX-post-back-does-not-work-in-Internet-Explorer-ndash-Solution.aspx</link><description>You may remember last week we talked about how Internet Explorer would ignore embedded styles during AJAX post backs. After a little trial and error we found the easiest workaround for this to be to use jQuery to apply the styles client side. jQuery makes this very easy to do with very little code. After programmatically emitting our embedded style we also programmatically emit the required JavaScript. Specifically you will want to look at the .CSS function of jQuery to apply said styles to your desired elements. Below is a very brief example of the JavaScript being emitted.</description><dc:creator>Scott Schecter</dc:creator><pubDate>Mon, 14 Sep 2009 20:38:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:502</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/501/RadUpload-Doesnrsquot-Run-Under-Medium-Trust.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=501</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=501&amp;PortalID=2&amp;TabID=411</trackback:ping><title>RadUpload Doesn&amp;rsquo;t Run Under Medium Trust</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/501/RadUpload-Doesnrsquot-Run-Under-Medium-Trust.aspx</link><description>One thing I often take for granted is that DotNetNuke runs under Medium Trust. Of course, you can add modules and this may no longer be the case but out of the box it does work. As a core module developer, we are required to ensure our modules run in Medium Trust environments. However, most of my time is spent working on things for AppTheory where this requirement is often not necessary. Recently I was checking to see if our modules work properly under Medium trust (there is a setting in your DNN web.config file for this) and found that those using Telerik’s RadUpload had problems. After a bit of research I found that it cannot run under Medium trust. Telerik’s explanation is they require reflection (and with this component it does make sense) but I can’t figure out (honestly, haven’t spent much time investigating) what exactly they are doing that can’t be worked around. </description><dc:creator>Chris Paterra</dc:creator><pubDate>Mon, 14 Sep 2009 07:08:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:501</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/500/DotNetNuke-Corp-acquires-Snowcovered.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=500</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=500&amp;PortalID=2&amp;TabID=411</trackback:ping><title>DotNetNuke Corp acquires Snowcovered</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/500/DotNetNuke-Corp-acquires-Snowcovered.aspx</link><description>DotNetNuke Corp. announced recently that it has acquired Snowcovered, the leading vendor of third-party modules and skins for the DNN platform.</description><dc:creator>Ryan Wofford</dc:creator><pubDate>Fri, 11 Sep 2009 20:18:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:500</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/499/Whatrsquos-your-social-media-strategy.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=499</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=499&amp;PortalID=2&amp;TabID=411</trackback:ping><title>What&amp;rsquo;s your social media strategy?</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/499/Whatrsquos-your-social-media-strategy.aspx</link><description>Sure, your organization is “hip” and has a Twitter account, but do you really know how to use it?</description><dc:creator>Ryan Wofford</dc:creator><pubDate>Thu, 10 Sep 2009 15:45:19 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:499</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/498/AWS-and-Spam.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=498</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=498&amp;PortalID=2&amp;TabID=411</trackback:ping><title>AWS and Spam</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/498/AWS-and-Spam.aspx</link><description>     If you plan on running a DotNetNuke solution on Amazon Web Services you need to lock down your servers.&amp;#160; This same rules that apply in a traditional hosted environment apply to a virtual environment like AWS. At Apptheory we specialize in deploying and managing secure DNN environments. For those of you out there that don’t think Amazon is paying attention to your server you were wrong.&amp;#160; Amazon does pay attention and if your server is not locked down you will get a nice email that starts with(instances and IP addresses have been edit to protect the victims):  Dear EC2 Customer,We have received a report that your instance(s):Instance ID: ******* IP Address: ***.***.***.**** Start date: 2009-**-** 09:15 +0000* End date: Nonehave been sending spam/unsolicited email.&amp;#160;

You have a 24 hour window within which to reply or face suspension of your instance or termination of your account. I would suggest several things to solve and prevent your instance being used for spam:


  Check your security groups and authorization&amp;#160; 

  Check your active sites for open relays 

  Audit your sites regularly 

  Read Amazon’s Whitepaper on securing your instances 
</description><dc:creator>Max Schneider</dc:creator><pubDate>Thu, 10 Sep 2009 15:40:28 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:498</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/497/Amazon-EC2-Wish-List.aspx#Comments</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=497</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=497&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Amazon EC2 Wish List</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/497/Amazon-EC2-Wish-List.aspx</link><description>For the last year I have been using Amazon Web Services(AWS) to host DotNetNuke(DNN). In that time I have noticed that AWS&amp;#160; Elastic Cloud Computing is missing a few features. Most of these missing features have not been deal breakers for our clients at AppTheory.&amp;#160; To truly offer a robust environment I believe that Amazon will need to start offering these features.&amp;#160;&amp;#160; In no particular order here are the features I have noticed that are missing are:     Multiple IPs         This is a must for servers that will house multiple sites with ssl.        Windows Server 2008         For windows users 2003 is nice but with the Windows Server 2008 R2 on the horizon it is time to look into making Windows Server 2008 available.        Reverse DNS         This is a standard feature provided by most ISP’s.        Reserved Windows Instances         They offer discounted reserved instances for linux servers but not for windows servers. I know it is most likely a licensing issue but reserved instances should be made available to windows instances.       Bundles Improvements         Bundling an instance should not require shutting down the instance. A graceful scale-up procedure would also be good. Amazon offers multiple instance types and for smaller companies you often need to scale-up before you scale-out. Scaling-up right now requires creation of a new instance making sure that it matches your current environment and rolling over to the new instance.        Elastic Volume Improvements         There needs to be shared volumes between instances.       Amazon is offering a great service with AWS but they need to start realizing that clients will expect to see a few things:     lower costs    scalability    a feature set that equals or rivals ISPs and Hosting solutions&amp;#160;  </description><dc:creator>Max Schneider</dc:creator><pubDate>Thu, 10 Sep 2009 15:06:42 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:497</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/496/Rendering-embedded-styles-during-a-AJAX-post-back-does-not-work-in-Internet-Explorer.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=496</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=496&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Rendering embedded styles during a AJAX post back does not work in Internet Explorer</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/496/Rendering-embedded-styles-during-a-AJAX-post-back-does-not-work-in-Internet-Explorer.aspx</link><description>I ran into this issue recently and it took me a few to determine the cause. We have a DotNetNuke module that provides live preview of a skin designer. It allows users to choose skins, themes, motifs, and supply custom colors, a logo, and a background image. This all worked perfectly when browsing with Firefox. However, in Internet Explorer it would work on page load (aka synchronous post back) however the changes would not be reflected during asynchronous post back. After a bit of digging I discovered that this is a known issue with Internet Explorer and the only workaround is to move the embedded styles to the head section of your page or apply the styles on the client side via JavaScript after the AJAX rendering is complete. Next week I’ll show you our solution to achieve just this.</description><dc:creator>Scott Schecter</dc:creator><pubDate>Wed, 09 Sep 2009 01:16:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:496</guid></item><item><comments>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/495/Custom-Module-Permissions-in-DotNetNuke-5.aspx#Comments</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=411&amp;ModuleID=1002&amp;ArticleID=495</wfw:commentRss><trackback:ping>http://www.apptheory.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=495&amp;PortalID=2&amp;TabID=411</trackback:ping><title>Custom Module Permissions in DotNetNuke 5</title><link>http://www.apptheory.com/DotNetNuke/articleType/ArticleView/articleId/495/Custom-Module-Permissions-in-DotNetNuke-5.aspx</link><description>For several years DotNetNuke has permitted module developer to extend the types of permissions applied at the module. For example, in the Forum module there was a need to permit “Global Moderators” and “Forum Administrators” as columns in the permissions grid you see when editing a module’s settings. By adding the permissions to the grid, module editors can assign permissions via Role or User just the same as they do when setting “Edit” permissions on the module (if extending it beyond the default admin edit permissions). As module developers, you can take advantage of this by adding more granular permissions to your module and utilizing the core security classes to handle the majority of work for you (ie. you do a check on the current user, similar to how you would check if the user was an admin). If you would like to review an example, you can download the Source version of the Forum module from CodePlex and check it out, or you can take a look at an article that describes it here. (NOTE: The link and the current Forum Source 4.5.3 are examples for DNN 3.x and 4.x ONLY!)  Previously, if I wanted to implement custom permissions in my module the only way to do this was to use IUpgradeable. Unfortunately, IUpgradeable had some problems in its past. In early implementations, there was no guarantee it would fire off and even in later versions (closer to 5.x) it seems that it still wouldn’t fire (on install) in some scenarios. With the release of DotNetNuke 5, custom permissions no longer need to be setup via IUpgradeable and instead you can use new nodes in the .dnn manifest file. If properly placed in the manifest file, the module installtion process will do all the work for you without requiring code or the use of IUpgradeable. An example of this can be seen below.  &amp;#160;             1: &amp;lt;/moduleControls&amp;gt;

       2:  &amp;lt;permissions&amp;gt;

       3:   &amp;lt;permission code=&amp;quot;FORUM_MODULE&amp;quot; key=&amp;quot;FORUMADMIN&amp;quot; name=&amp;quot;Forum Administrator&amp;quot; /&amp;gt;

       4:   &amp;lt;permission code=&amp;quot;FORUM_MODULE&amp;quot; key=&amp;quot;FORUMGLBMOD&amp;quot; name=&amp;quot;Global Moderator&amp;quot; /&amp;gt;

       5:  &amp;lt;/permissions&amp;gt;

       6: &amp;lt;/moduleDefinition&amp;gt;

       7: /moduleDefinitions&amp;gt;
  


&amp;#160;


  
</description><dc:creator>Chris Paterra</dc:creator><pubDate>Thu, 03 Sep 2009 04:25:46 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:495</guid></item></channel></rss>