All Articles

Articles

DotNetNuke, Blog

DotNetNuke and IIS7 Integrated Pipeline Vs. Classic Mode

When I first started trying to install DNN on a local Vista installation I had various strange errors that I eventually determined to be due to the fact that I was running my IIS7 App Pool in Integrated Pipeline mode instead of Classic (IIS 6). And so, from that I learned DNN can't run in Integrated Pipeline more.

Today, I discovered that DotNetNuke can run in integrated pipeline mode as long as you're running DNN version 4.8 or greater. Charles Nurse discusses this in this blog.

DotNetNuke, Blog

DotNetNuke and MySQL

A question that I see a lot of is, "Can DotNetNuke run on top of MySQL?" The short answer: while It is possible, it is a terrible idea. The same answer is also true for Oracle. But that doesn't mean you can't write DotNetNuke modules that consume data from MySQL, Oracle, or any external data source.

The Long Answer

While DNN does provide a data abstraction layer so that it can, in theory, be run on top of any modern DBMS, the reality is DNN is a very large and complicated system that relies heavily on SQL Server specific Stored Procedures. The SQL used for DotNetNuke is chock full of Stored Procedures. The Stored Procedures improve the performance and security of the system.

A few intrepid souls have attempted to create and maintain MySQL providers but, with the availability of cheap hosting and free versions of SQL Server, there simply isn't enough need for that in order to make it worthwhile and those providers are long out of date.

Even if someone does manage get the latest version of DNN's core running against MySQL, it's still a bad idea because you would lose the key thing that makes DNN special, Modules. You would need to ensure that every module you ever want to use has a MySQL provider and that that provider would continue to be updated throughout the life of the module. Or, you would have to create a MySQL provider for every module that you want to use. The cost of doing this would far exceed the cost of using a hosting company that would provide you a shared SQL Server on which you can run DNN.

But don't lose hope...
Read More...
DotNetNuke, Blog

DotNetNuke: Hiding and Showing Checkbox with asp.net and Javascript

As I build out the settings for DotNetNuke modules, I only like to display settings that are relevant to the other selections the user has made. The best way to do this is with Javascript so users don't have to wait for a postback everytime they change a relevant control.

In trying to put these things in place, I often find the code often doesn't work quite the way I expect (or at least used to expect) it to. The issue usually has to do with the way asp.net renders controls. I usually find I have to dig into the source view a bit to see exactly how asp.net rendered something and then fiddle a bit to get everything working right.

Here, I'll describe, one particular case where I had two checkboxes linked. The 2nd checkbox should only be displayed when the first checkbox is checked...

Read More...
DotNetNuke, Blog

DotNetNuke: Custom Module Permissions

One of the under-utilized features in the DotNetNuke module development API is the ability to utilize DotNetNuke's built in Permissions architecture within your own custom modules.

Rather than having to write your own code to display a grid of available roles and special permissions, it's fairly easy to add your permissions to the existing permissions grid that usually just displays "View" and "Edit".

I found a nice article that gives a very good overview on how to do this
Extending DotNetNuke Module Permissions for Custom Modules

DotNetNuke, Articles Module

Articles 4.1.2 Now Available (Aug. 16, 2009)

Version 4.1.2 of Efficion's Articles module is now available. This release includes a variety of fixes, improvements, and new features.

View the complete list of changes

DotNetNuke, Articles Module

Articles 4.2.0 Now Available

Version 4.2.0 of Efficion's Articles Module for DotNetNuke is now available. This release adds lots of features and fixes and sets the ground work for new improvements.

Key amoung the features are the new Comment Moderation features that let selected roles moderate comments before they go live. Another key change was reworking the architecture so that list templates can use Repeaters instead of just DataLists which will enable us to better make use of jQuery effects and much more. Look for new templates coming soon to show off our new capabilities.

Read More...
DotNetNuke, Blog

DotNetNuke: Improving Paste From Word in the fckEditor

As most HTML aware folks know that when you paste content from Microsoft Word or Outlook for use as HTML, it includes all sorts of gobbledygook that clutters up your markup and overrides your CSS. Luckily, the fckEditor has a couple ways to handle this. If you're pasting from Word into the editor using IE, it pops up a dialog that gives you a chance to clean up the markup which is nice. If you're using Firefox you can achieve the same results by clicking on the special Paste from Word icon. But, there's an issue...

Read More...
DotNetNuke, Blog

Cleaning and Re-Indexing your DotNetNuke Search Tables

Last week, we put a lot of effort into improvements to the search and RSS aspects of Efficion's Articles module. As part of that, we noticed that no matter how many times you hit the Re-Index content link on the Host->Search Admin page, the links never actually get updated. As we dug further, it became clear that to update the links used by DNN's search and RSS, you actually have to purge the search tables.

This has implications beyond our module so I thought I'd share the steps as a good practice to do every once in awhile on your DNN site to make sure you Search Results and RSS Feeds are linking properly.

Read More...
DotNetNuke

Tableless Banners in DotNetNuke

A quick conversion of the DNN Banners Module to Tableless Display

We've been working on our first site that really makes heavy use of DotNetNuke's Banners module for displaying revenue generating ads. Today I was trying to get the banners module to work for a Newsletter piece (more on that later) of the site that has a very tight layout but the way Banners is implemented didn't allow me to do what I needed. Currently, the banners module renders banners in a table and the only way to add spacing between banners is by setting cellpadding and/or cellspacing. We needed a solution where we could ad space between the banners without adding space on the sides of the banners. This wasn't possible with the current implemenation (other than by adding whitespace to the banner images which we didn't feel was a good solution) so we needed another solution.

I could have gone in and made a couple quick changes to the banners module to get it to do what I needed but then, we would've have had to reapply the changes every time we upgraded the site.

Instead, I spent about 10 minutes creating a new module based on the existing banners module. Luckily, DNN makes this easy.

The change to the code is the easy part (though really it was all very easy). I just changed the RepeatLayout attribute for the DataList to "Flow" instead of the default "Table" and then added a class to the label within which the banner is implemented.

The more involved process was copying and renaming the files and class. In all though, it took less then 10 minutes to think up and implement this solution.

Read More...
DotNetNuke, Articles Module

Articles 4.2.4 Released

This release includes a great new feature that makes it easy to create articles from external RSS Feeds. If you've ever wanted to pick and choose favorite articles from other sites and let people discuss them on your site, now you can!

In addition, we fixed several fringe bugs and made other underlying enhancements. View full release notes.
DotNetNuke, Articles Module

Articles 4.2.5 Released

This release includes several fixes for incompatibilities introduced by DotNetNuke 5.5.x
DotNetNuke, Blog

DotNetNuke: Improving the tracking and reporting of Ad Views and Clicks - Part I

Adding the time dimension

This is the first in what we plan on being a 3 part series on improving the tracking and reporting of Ad viewership and clickthroughs within DNN.

Overall, DotNetNuke'sBanner / Ad / Vendor implementation is a nice solution. It does a great job of serving up the appropriate ads based on a nice variety of options. But there's been very little change to the implementation over the last few years and we've found some areas of needed improvement. Efficion is hoping to contribute new features and improvements to these modules based on work we've done to bring it up to the next level.

One of the biggest weaknesses we found was it's reporting capabilities. It's easy enough for us to create reports for our clients (we'll be covering that in Part II of this series) but in this case, we didn't have the data we needed.

Our client wanted to be able to provided statistics on the views and clicks of their ads for a given time period (i.e. September 2010). The problem is, DNN only stores the total number of clicks and views for a given ad. There's no associated time period with those numbers.

So, we need to start storing clicks and views in a way that is time oriented. After some thought on this we decided that we should really accumulate the numbers on daily basis for each ad. Daily seems to be the standard in the analytics world and provides enough granularity to get the time frame you want while also not collecting data at too granular a level.

Daily totals will make it easy to create reports that show totals for a given period or to create trend charts for a particular ad or all ads over a given time period.

Read More...
DotNetNuke, Blog

Styling the DotNetNuke Form and List module

Image: Styling the DotNetNuke Form and List module

The are lots of very powerful forms modules available for DotNetNuke, but many of them seem like overkill for what we are usually looking for. The Form and List module often meets our functional needs when we are looking for a simple form module but in the past, I was disappointed with the look of the forms it produced.

The Form and List team, (mostly Stefan Cullmann), has done a nice job of adding features to improve the styling options. In particular, I like the ability to use CSS and Separators/Fieldsets for form layout.

Stefan wrote a brief blog showing how he styled the Feedback Form on the formandlist.com site. We used that as our starting point for a membership form we created and found we needed some additional tweaking to get the form looking just right...

Read More...
DotNetNuke, Blog

Giving your IIS Worker processes a proper identity

For debugging and troubleshooting performance issues As part of hosting of DotNetNuke sites, I often take a look at the processor and memory usage of the various processes running on our servers using Task Manager. Prior to recent changes though, I didn't really have any way to really know which of my sites was really having the biggest impact as all I could really see was a list of the worker processes (w3wp.exe) associated with the app pools. The UserName for each w3wp.exe process was Network Service. I did notice that one of the worker processes, averaged around 14% of the overall utilization while most of them averaged 0% percent with an occasional bump up to 1% or 2%. I figured this must have been one of the busier sites we hosted. I was wrong... Read More...
DotNetNuke, Blog

Setting up SmarterStats against a multi-portal DotNetNuke installation

Image: Setting up SmarterStats against a multi-portal DotNetNuke installation Log Based Analytics provide a new perspective

We use Google Analytics extensively for tracking and analyzing website statistics. It does a great job of providing really useful information in a way that anyone can understand. Plus, its very easy to setup and has the power to let advanced users segment and drill down through the data to get even more detailed information. But, we've found it's a good idea to get another view of your visitors and traffic using a tool that provides information based on Log Analysis. Log based analytics let your see things that simply can't be tracked by script-based analyzers like Google Analytics.

As a big fan of SmarterMail, we decided to give SmarterStats a try. We've been using SmarterStats for awhile on several of our bigger sites but we also wanted to be able to use it on a few of our portals where we have multiple sites installed on a single instance of DotNetNuke. Before we could do this, we needed to do several things first to get this to work right...

Read More...
DotNetNuke, Site Announcement, Portfolio

PLM - Pallet Logistics Management

Image: PLM - Pallet Logistics Management This new DotNetNuke-based website for PLM features a new Efficion designed logo, a custom DNN skin, custom photography, extensive Search Engine Optimization (SEO), lots of new original content, custom job listings, an online employment application, and much more.

Technologies and Services: DNN, Responsive Grid, SEO, Custom Photography
Read More...
DotNetNuke

Module Categories - Specifying Which Modules are Common

Image: Module Categories - Specifying Which Modules are Common Making adding modules easier for admins Since the new Ribbon control panel for DotNetNuke has been out, it has seriously bugged me that when you go to add a module, the default module Category is Common and the only module in that category was the HTML module. Because of that, the new Category just made things more confusing.

Today, an intern at one of my clients was trying to make a simple change to the home page of their site and added the Configuration Manager module to the home page. This caused the home page to force users to login and due to another issue caused an error for anyone going to the homepage. Bad.

Once I got that fixed up, I finally had the needed incentive to dig a bit further into the Module Categories piece to help avoid this in the future. As it turns out, it's quite easy to add modules to the Common category.

Just go to Host->Extensions and edit the module you want to add to Common. Then, select Common for the Module Category. That's it.

Now that the Common category actually includes the common modules, I really like that feature and hope it will make it much easier (and safer) for our clients to edit their content.

For our clients, we're doing this for all sites where clients edit there own content. Generally I include the following modules: Efficion's Articles, HTML, Documents, Links, and Ventrian Gallery.

Learn more from this post from Charles Nurse on Module Categories
DotNetNuke

Updating CSS with Client Resource Management enabled and without having to "Clear Cache" constantly

I really like the idea of the Client Resource Management features added to DotNetNuke in version 6. But, it can make building a new skin or a new site on a live instance of DNN rather painful as any changes you make to the .CSS or .JS files won't be seen unless you clear the site's cache or put the site into DEBUG mode.

In theory, all skin development should probably happen on a development instance and the live site should only be updated once the skin updates are complete. But, in practice, we find lots of cases where we do need to be able to make CSS updates to a live instance (though not necessarily a live site) of DNN.

You can do this by updating the .css file and then clicking "Clear Cache" in the control panel. But, every time you do that, a new version of the combined files is created and users will need to download the file again. So, it's best to avoid that.

What I've found works better is to create a <style></style> section within your skin and for any changes you want to make, make those changes within that style section. Once you've got all your changes done, migrate them into the .css file and delete the <style></style> section from the skin, and clear the cache. That method allows us to quickly and painlessly make changes.

Also, for experimenting with minor updates, Firebug is a great tool as you can see what your changes will look like and then apply them when you're happy with them.

Happy coding!
DotNetNuke, Blog

Making Ventrian's Simple Gallery Responsive

Ventrian has been making great DNN modules for many years now. Some of the modules though are beginning to show their age a bit and are using markup heavy techniques that were at one time common but can now be replaced with much cleaner CSS for most browsers. In particular, the Ventrian Gallery module wraps each photo in a table that has a cell for every corner and every side so that fancy borders can be added around the photos. This technique results in lots of extra markup and causes issues if you're wanting the gallery to be responsive (adjust to the users viewable area). It is actually fairly easy to make a few changes to cleanup the rendered HTML to allow for more modern and lightweight techniques for styling. We'll go through the steps... Read More...
DotNetNuke, Articles Module

Articles Module Free Again

We've decided to stop selling the Articles module and just give it away for free like we did in the beginning. The download links will be available for everyone once we finish up 4.3. We also have plans to move the module into the DNNForge once we get further along in making the sweeping improvements we're planning. Stayed tuned!
Page 2 of 3First   Previous   1  [2]  3  Next   Last