By Will on
6/28/2009
I was recently asked how someone could manually delete a module once it is installed. The number of use cases where this would be useful is limited, but it is still a valid scenario that needs to be considered – especially during development. Here is a walk through of the general steps required to delete a module manually. Run the Uninstall script (if necessary) Delete the module files from the DesktopModules and App_Code folder Grab the DesktopModuleId Delete the permissions associated with the module Delete the module from the database Refresh the site cache to update the UI with your changes While I have not fully verified these steps to be the same in DNN version 5.x, they should generally be the same. Here is some guidance to follow each of the defined steps above… WARNING! Performing these steps incorrectly could result in your DNN site being broken and/or no longer accessible. In some cases, this might be permanent. It is HIGHLY recommended that you perform a...
|
By Will on
6/27/2009
 In DotNetNuke®, a favicon of the DNN gear logo is placed as the default favicon. For some websites, this is no big deal. However, for any site that requires its own branding, changing the favicon is a really big requirement. Luckily, DNN makes changing this easy, and flexible. First of all, in the root of your DNN site, there are two favicons: favicon.ico DotNetNuke.ico Both files contain the same image, the DNN gear. You could just overwrite the favicon file with your own. However, that is technically making a core code change,...
|
By Will on
6/27/2009
The Orlando DotNetNuke® Users Group ( ODUG) is not very old. We are still working toward finishing our second year as a user group. Our first meeting was February of 2008. However, it was several months later before we actually were able to claim our status as member of INETA. Well, a few days ago I was reminded of this, as there was a package that showed up for me at work. Looking at the package, I was confused since it was from INETA. I wasn’t expecting any packages, much less one from INETA. When I opened it, I was greeted with a pleasant surprise. It was a mounted certificate, celebrating our one year anniversary with the INETA user group...
|
By Will on
6/26/2009
I wasn’t really listening to podcasts until a few months ago. I just really didn’t find anything that truly interested me to the point of putting down my personal 60+ GB of music and streaming my favorite radio stations. Not to mention, I am a fan of the popular streaming service known as Pandora. Anyway, I found the DotNetNuke Podcast about that time, and shortly after, DNN Voice was born. Since I am so passionate about DotNetNuke®, I began listening. Right now, I only know of those two DNN podcasts. I have been listening to both podcasts for a while now. Honestly, I like them both. They have a different focus, and because of that focus, both are going to have a different fan base. DotNetNuke Podcast  ...
|
By Will on
6/26/2009
 Today, part of the family and I had to go to Tampa, Florida for an appointment. Of course, when the appointment was over, it was after lunchtime. We proceeded to look for a place to eat near us. We ended up finding what looked like another small business sub shop from the outside. I soon found out I was wrong, but it was still a great visit!  ...
|
By Will on
6/25/2009
There may come a time when you will want to programmatically add a user to an existing role in DotNetNuke®. It’s actually quite easy. If you take a look at how the core code in DNN does it, just emulate that. This method of using and reusing the existing DNN core code is what DNN development is supposed to be about, so make sure you don’t reinvent the wheel. In the source code for DotNetNuke®, there is a controller class for nearly everything that you want to do with the various objects that you work with in DNN every day. Since I am familiar with the DNN source, I knew where to go. But many people are not familiar with the source code. In those cases, you need to either do some searches in the Object Browser, or browse around until you find the code you’re looking for. Thinking it through logically, you can usually browse right to the code you’re looking for since the core team...
|
|
|
By Will on
6/23/2009
I am working on a project where we have an outside party developing a DotNetNuke® module for us that relies almost entirely on client side code. When I way client-side code, I mean JavaScript, the jQuery library, and various jQuery plug-ins. The module itself is really a beautiful thing. It is actually able to be used outside of DNN without any problems at all. Well, like any other project in the history of time, things go wrong. This time, I need to troubleshoot part of the the JavaScript chain of code to find out where an object is not getting reassigned. However, the JavaScript code is all compressed using the JavaScript Compressor online utility (based on the Packer by Dean Edward). What...
|
By Will on
6/23/2009
I was one of the many people who watched Nik Kalyani’s first webinar, showcasing the anticipated Professional Edition version of DotNetNuke® version 5.01.00. As always, he did a fantastic job of presenting his topic to us. I really enjoy his talks. This blog is coming a bit late, as the webcast was last Wednesday. I do want to calm any conspiracy theorists first though. The only affiliation I have with the DotNetNuke Corporation is that I am on the Media Module project team. They are in no way asking me to review DNN PE (which I do not have a copy of), and they might even be unhappy about it since they have a Marketing team who is dedicated to speak about such things. I am just like most of you. I am on...
|
By Will on
6/22/2009
 If you attended the Day of DotNetNuke® this year, you probably already know. If you don’t know, those who attended the event are getting a software bundle from SmarterTools, Inc. They were incredibly generous to us. They gave each attendee a license for each of their product offerings, which is a whopping $750 USD value for each attendee. The e-mails with all of the license information just went out. Here are the software packages that each...
|
By Will on
6/22/2009
The DotNetNuke Corporation is on the verge of releasing version 5.01.00 of the popular DotNetNuke® web application framework. I am so excited, because this is going to be the reason to finally jump aboard the version 5+ band wagon. Especially, when you include the fix they found for the high load performance issues from last week, this version of DotNetNuke® is going to be the best yet. DotNetNuke® version 5.01.00 has all of the great things I love about version 5.00.00 and 5.00.01, but it is stable! Numerous bugs, performance updates, and workflow issues have been resolved. Among the new features to look forward to in version 5.01.00 are: Site Map Priorities, Human Friendly URL’s are turned on by default, a few SEO updates,...
|
By Will on
6/22/2009
On many DotNetNuke® (DNN) websites you will find an unacceptable number of the following exception: System.Exception: Error Creating BusinessControllerClass ‘YourModule.Modules.ModuleName.ControllerName’ of module(ModuleName) id=(ModuleID) in tab(TabID) and portal(PortalID) ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object. I have put the changing words in bold. Those words will be different for you. This is almost always the result of the wrong business controller class being specified in the DNN manifest file. In the manifest file, the module developer will specify the business controller class so that DNN knows what Interfaces the module implements (such as: IPortable, and ISearchable). This is very important, because DNN will treat those module a little differently. For...
|
By Will on
6/20/2009
 I have been to quite a few Japanese steakhouses in my day. I really enjoy the atmosphere and the entertaining nature that they tend to provide. The cuisine is not so bad either. Today, I went to the Yabi Japanese Steakhouse in Winter Garden, Florida for the first time. It is new place that we happened upon this evening in looking for a good place for a pre-Father’s Day dinner. I gave the family one piece of criteria in choosing...
|
By Will on
6/20/2009
One of the more misunderstood, and underestimated modules in the Core offering of DotNetNuke® Modules is by far the Blog Module. Everyone has an opinion on it, and most of us are wrong. Blogs are one of those adaptive concepts – it is what it is. A blog is one of those many, many things that simply give you back value based on what you put into it. Luckily, the latest release of the Blog Module makes that easier than ever before in DotNetNuke® (that is, without paying for it). On July 9th, I will be presenting the DNN Core Blog Module for our next session at the Orlando DotNetNuke® Users Group, or ODUG. In this session, I hope to make the Blog Module understood by anyone that might be thinking about using it, or may have been confused about it...
|
By Will on
6/20/2009
Any serious tea drinker knows that the teas they drink are only one part of the lifestyle. That’s right. Coffee is a drink, and tea is a lifestyle. Few things have changed my life in a similar way. Anyhow, tea is one part of the equation, but the sweeteners and the tea pot are the remaining portions of the equation. Because of my busy lifestyle, I mostly opt for a tea maker over a tea pot. For the longest time, I thought that I had the coolest tea maker, but I was wrong. How could I be wrong though? My tea maker worked much like a coffee maker, only it was clearly designed for tea drinkers. It wasn’t a coffee pot by any means. In fact, using it for coffee would present a few challenges. It had an automatic timer, a variable heating element that worked off of the timer and everything. Any true tea drinker knows how valuable those features are.  Some...
|
By Will on
6/19/2009
Do you not know what a “headhunter” is? Well, let me school you… A “headhunter” in the professional world is usually referred to as a recruiter. Their job is to gather up as many contacts as possible into a network of people, and in turn, they use their network to generate leads for employers looking for employees, and vice versa. This sounds innocent enough. It does. The fact is though, that the list of recruiters that I will talk to is very, very, very short. Over the past 8 months or so, recruiters have been getting more and more aggressive in their tactics of generating and building their networks. That in itself can be a good thing, but most often in this industry, it is definitely a BAD thing. This began for me as one or more annoying emails a week, asking me if I knew anyone who fit a profile for a job, or if I was looking for any new “opportunities.” I can tell from experience, I have never really had any luck using the services of a staffing company, from either side of the coin. I know...
|
|
|
By Will on
6/17/2009
 The first annual Day of DotNetNuke® was less than a week ago. We had been thinking about this event for over a year, but only planning it for about 2-3 months. I have been blogging about it for most of the 2-3 months as well, so you can look forward to me returning to my usual DotNetNuke® blog content following this post. Before we can get there, I need to let you know my perspective of how the Day of DotNetNuke®...
|
By Will on
6/15/2009
 I would hope that all of the 3 readers of my blog know that there was an event being planned called the Day of DotNetNuke® by now. If you don’t know, we had a full day code camp type event this past weekend which focused 100% on DotNetNuke®. Now, I am going to tell you how it went. The Beginning Last year, we were lucky enough to have the OpenForce Connect – Orlando event in June. Since then, we have been eager to repeat the event. Unfortunately, we were not able...
|
By Will on
6/9/2009
 We are a few short days away from the first annual Day of DotNetNuke® 2009. For the most party, we are ready. Sure there are some final details to work out – but we cannot wait to kick this event off. I have blogged about the various reasons you should be attending the Day of DotNetNuke®, so I will skip that this time. What we DO need are a few non-monetary donations and volunteers to make our vision a reality. Here is what we need: ...
|
By Will on
6/7/2009
If you are a user of the newest rage, twitter, then you might have seen or heard a term called “retweet.” When someone retweets, it means that they are repeating someone else’s tweet. Usually, this form of passing on information includes giving the original tweeter credit. Before we can talk about this more, we need to tell you what a tweet is. A tweet is the name given to an update that you place on twitter. So, once you have posted your update to twitter, you have tweeted. So, why might someone want to retweet your tweet? They might think that you said someone very cool or interesting Your tweet might contain some very relevant and new information Your tweet could be something that someone feels passionate about The information in your tweet is marketable Regardless of the reason, the end result is the same – the person(s) who retweeted your tweet wanted to spread the word. For example, I have retweeted an update from...
|
By Will on
6/7/2009
The June 2009 Orlando DotNetNuke®Users Group meeting was last night. Our first meetings began with us getting together to just ask each other questions, and others would answer them. This was a great format. Beginners especially loved this format. Remember what this is? It’s what we used to do before there was such a thing as a bulletin board system, or community forums. It is very retro, much like the newest graphic design product, Crane. (funny) The meeting began as it always does… Bob Santuci ( ODUG Secretary) and I set up the room, and then wait for the members to show up. This month though, we went back to our roots. We all came in with no game plan. We just knew that whatever happened,...
|
By Will on
6/2/2009
 I have finally gotten to the point of having a good idea of what we have in store for the Day of DotNetNuke® attendees. We have lots of cool stuff to give away and raffle. First of all, attendees will all get the follow standard things: Cool T-Shirt Breakfast, Lunch, and drinks DNN After Dark (after party social event) Networking with your fellow DNN peers & experts 5 great tracks 21 incredible...
|
By Will on
6/2/2009
We have been trying to work this out for a long time now, but I kept dropping the ball on it. We now have a block of rooms reserved at the Embassy Suites, only a few blocks away from where the Day of DotNetNuke® is being held. That is really cool, because it puts all of us in the same area with each other at...
|