Welcome to "The Mighty Blog"

Will StrohlWelcome to the personal website of Will Strohl, technologist, speaker, and Director of Product Development at Hotcakes Commerce.  Will is a published author and regularly speaks at user groups, code camps, and other events across the country.  In this website, you will find resources from the events and the personal blog of Will Strohl.

My Recent Blog Entries

Presentation: DNN Database Tips and Tricks

Hotcakes Commerce Presents: DNN Database Tips & Tricks

If you’re arriving to this blog for the first time, you may not know that I’ve been working with DNN nearly since it was released.  That’s well over 10 years of managing DNN sites of various sizes, purposes, and deployments.  This experience has ranged from businesses that run on the platform, to running subsets of an organizations web properties on it, and more.  During my consulting days, I saw all kinds of DNN sites.  This wide range of challenges has resulted in learning a large number of things – including how to leverage SQL Server to solve problems in a creative way.  That’s what this session was about.

One could spend all day long discussion this topic, but I only had about an hour.  So, I chose the following topics in this area:

  • Clear Space – How to reduce the amount of space that some tables take up in your database.
  • Change DBO Role Owner – Sometimes, you can’t use a desired username in your database because it is the same as where it came from.
  • Change or Replace Themes – There are cases when you need to either fix skin assignments from administrators, or roll out a new theme.
  • Database Object Sizes – Running a query to determine what database objects are too large.
  • Take Over a Site Locally – Automating the task of preparing an inherited site to be used in support or development environments.

We also had time to delve into another topic…  Wiping out the entire database using SQL scripts, instead of deleting the database and creating a new one.  This has come in handy for me when managing a DNN site in shared hosting environments on multiple occasions.

David Poindexter recorded the meeting, so keep an eye on the @QCDUG twitter account if you want to watch it.  I am sure they’ll make an announcement when it’s ready.  In the meantime, the slide deck and SQL scripts we went over a linked below.  Enjoy!

Download the Presentation

Download the SQL Scripts

DNNCon Presentation: Easily Build Customized E-Commerce in DNN Featuring Hotcakes Commerce

Hotcakes Commerce Swag at DNNCon 2014

The past few weeks have been a blur for us here at Hotcakes Commerce for quite a few reasons… We were highly involved at DNNCon Palm Beach 2014. This is the third consecutive DNN event that we’ve sponsored and attended. We not only sponsored this time, but we also co-organized, provided a training track, presented 2 sessions, and emceed the event. It’s always great to participate with the DNN community and this time we took it to a whole new level.

A General Wrap Up

Overall, the trend seems to continue. DNNCon Palm Beach 2014 was the most fun and successful one yet. Registration and attendance records were yet again broken. Half the attendees raised their hands when asked if this was their first DNNCon event. Sponsorship was at an all-time high both in terms of donations, as well as vendors in booths at the event itself. There were attendees from as far away as Nigeria and Singapore. Place of Hope had a higher donation than last year. Let’s also not forget that there were also more rum cakes at this DNNCon than ever before! (Thanks to Clint Patterson’s amazing mother!)

Place of Hope Charity gets a donation

If you attended, you definitely felt the vibe and had a great time – from the ice cream social, to the closing ceremony prizes – it was a great time had by all and we got to learn a lot at the same time.

Our Session

I gave a session about Hotcakes to show just how easy it is to begin building an e-commerce website with our product. We can’t say that enough… We make things easy. For everyone. This isn’t very true both within and outside of the DNN ecosystem.

I first gave everyone an overview of what Hotcakes is and why it exists. I then spoke about how we’re not just another vendor. We are a real company, with a real team, and our only focus is e-commerce. From there, I dove into how easy designers can customize the look and feel of Hotcakes using contemporary web standards. We had a ton of great questions, so we didn’t complete the final demo, but I think we got the point across.

You’ll find our presentation below, and a video of this presentation should be available on the DNNCon website in another week or two.

Download the Presentation | Free Trial of Hotcakes

Thank You

As a company and a product, we of course participate with one of the goals being to market ourselves and maybe get a few sales out of it at the same time. This is the same for all sponsors.

We just want to thank the overwhelming number of people that were doing our job for us. We definitely felt the love. Not only did we hear people talking about us in general, but Tony Carter (Carter Solutions) gave a great session that included Hotcakes, and Cassidi Brickner (10 Pound Gorilla) gave a session that was almost exclusively about Hotcakes. DNN Corp co-founder and VP of Technology gave us a few plugs during the keynote. The bottom line is this…

We very much appreciate the support you all have provided to us as we make e-commerce something you can do again in DNN. We are very excited to continue to make you proud and even take it to the next level next year.

This blog post is cross-posted from Hotcakes Commerce.

DNNCon Presentation – Flexible Project Setup for Teams and Complicated Applications

Flexible Project Set-Up for Teams and Complicated Applications

One of the sessions I presented at DNNCon Palm Beach 2014 was greatly inspired by all of you.  During my years consulting and then into my time training large companies at DNN Corp, I kept getting a common question, “how do I do this with large/enterprise teams?”  It’s way too easy to try and walk them through doing all of the hard work of trying work around the single-developer project architecture that you’re used to seeing in videos and wiki articles – but that’s not the answer they’re looking for.  If you have a complicated project and/or a team of 2 or more people working on code that’s all supposed to work together, there has to be a far simpler solution – and there is!

When you’re working with teams and/or have a requirement for a more flexible project set-up, you’re in luck.  DNN has had the tools that you need included with its source for quite some time.  With a bit of creativity, you too can put all of your projects into a single solution and never even think of checking in your website.  Oh yeah, we know you’ve done it.  No need for that mess anymore.

If you attended my training session the Friday before DNNCon, then you were lucky enough to build this together with me, hands-on!

The slide deck from my presentation is below.  A download link to an empty solution and a PDF version of the slide deck follow.

Download the Sample Solution | Download the PDF of the slide deck

A huge thanks goes out to Joe Brinkman.  Without his help, I wouldn’t have figured this all out on my own.

DNNHangout – November 2014 – Beautiful Content and Apps Featuring Daniel Mettler

Daniel Mettler of 2sic

I had the pleasure of meeting Daniel Mettler in Italy this past June.  He is quite easily one of the most interesting people I have ever met.  Once we began broadcasting the DNN Hangout shows, I could not wait to schedule Daniel for an interview, and while we had to wait for a while, Daniel did not disappoint with his interview and presentation.  He even performed his demo on his live 2 Sexy Content website.  During his interview, we learned about how 2sic became a company, killing pigs, spear fishing – oh, and we spoke about DNN as well! 

Featured Site of the Month

The featured site of the month this episode was Travel Gurus.  We actually planned to present them last month, but sadly we forgot to do so.  Travel Gurus has a great looking website and I was able to see them making great use of DNN extensions such as EasyDNNRotator and EasyDNNNews.

sotm-201411-520x316

If you have a great looking DNN site, let us know in the comments below and maybe we’ll choose to highlight your site next month!

DNN Hangout

At this point, please enjoy the DNN Hangout and the show notes just below the video.  Also, we apologize for the sound quality.  As mentioned during the show, we had internet challenges since all of us were broadcasting from remote locations.

Show Notes

Here are some of the topics and extensions we discussed during the show.

As always, thank you for viewing and please let us know if you want to be part of the hangout, have any suggestions, or have a site that you want us to feature.  Just leave a comment below.

DNNHangout – October 2014 – Cool Skinning Tricks for DNN Featuring Tracy Wittenkeller

Tracy Wittenkeller of T-Worx in DNN Community Hangout

We’ve just gotten done with the October episode of DNNHangout – this time featuring longtime DNN community member and skin designer, Tracy Wittenkeller.  You may or may not have heard of Tracy, but he’s the man behind the team that brings you T-Worx and DNN Magazine.  Chance are that you’ve already used or purchase one of his skins at some point.  Tracy walks us through some new and exciting techniques that his company is applying to their new skins to help use contemporary design techniques, while at the same time making the content editing experience accessible to the average content editor.  From what we could see, he’s taken this a long way to fill in that gap and by using a lot of existing DNN features!

You’ll always be able to see our upcoming DNNHangouts on the DNN Software Community Events page.  The next two shows include:

And now for this month’s featured guest, simply play the video below.

Show Notes:

Reset the Passwords for All Users in a DNN Site

WillStrohl.com DNN Logo Code Background

I don’t know if you deal with as many websites as I do, but I’ve been dealing with other peoples DNN sites since I first began dabbling with it over a decade ago.  (Boy, does that make me feel old!)  Restoring the website from someone else’s environment to test, troubleshoot, and fix an issue isn’t a major issue as long as you have some experience with IIS, SQL Server, and Windows.  However, the testing you need to do often requires access to multiple accounts.  This is the problem.  Duplicating those accounts is either non-trivial, or time consuming.  So why not just reset all of their passwords?

A tool I used to use a lot in the past is the LetMeIn ASPX page by Evotiva.  It allows you to quickly create a new host user.  From there, you have access to everything except for other user accounts.  Depending on the type of client, customers, and privacy laws in your area, this is a good thing.  However, if you are able to, it’s a convenient thing to be able to use the very user accounts that are having the issues while performing your troubleshooting.  This is where my tip comes in to play.

First, The Red Tape

Now, before I go any further, it would be an absolute best practice to have and you’d be irresponsible if you didn’t have a formal policy to protect yourself and the clients you’re providing services to.  Have a clear understanding of how you accept sites, how you maintain them, and when you destroy your copies of them.  If you’re in support, I’d suggest destroying your backups as soon as your client confirms that their issue is solved.  The rule of thumb here, don’t keep copies.  Destroy them at your earliest convenience.  That being said, I am not a lawyer either, so you’ll want to review your policies and the laws in your region.

Resetting the Passwords for All Users

The context of this DNN tip is to allow you access to literally impersonate the users on a DNN site.  If the number of users is low, I’d suggest leaving this article now to use my DNN Demo Skin Objects.  Seriously, they’re pretty cool.  You should check them out.

Ideally, it would be convenient if you knew all of the passwords of the users on the site, but we won’t and we shouldn’t.  Instead, we’ll change every password for every user to “password” using the ASPX file below.  All you have to do is create an ASPX file in the root of the site, paste this code into it, and then view it in a web browser of your choice.  From there, it’s a single click to reset all of the passwords to “password.”

WARNING!!!  Never do this on a production site for any reason or put this file on a production server, anywhere.  Also, it should only be used for LEGAL and ETHICAL purposes. 

The code below does the meat of the work for you, but you can just download the file by clicking the button below and save yourself some time.

Download Password Reset ASPX File for DNN

    private int PortalId
    {
        get
        {
            return PortalController.GetCurrentPortalSettings().PortalId;
        }
    }

    protected void ProcessUsers(object sender, EventArgs e)
    {
        try
        {
            IterateThroughUsers();
        }
        catch (Exception ex)
        {
            Exceptions.ProcessModuleLoadException(this, ex, true);
        }
    }

    private void IterateThroughUsers()
    {
        var sb = new StringBuilder();
        var totalRecords = 0;

        sb.Append("

Updating Superusers

"); var superUsers = UserController.GetUsers(false, true, Null.NullInteger); UpdateUserInfo(superUsers, ref sb); sb.Append("

Updating Normal Users

"); var normalUsers = UserController.GetUsers(PortalId, -1, -1, ref totalRecords, true, false); UpdateUserInfo(normalUsers, ref sb); plcUserLog.Controls.Add(new LiteralControl(sb.ToString())); } private void UpdateUserInfo(ArrayList users, ref StringBuilder sb) { foreach (var user in users) { // convert the user object to UserInfo var oUser = (UserInfo)user; // update the password // REQUIRES: Change the enablePasswordRetrieval attribute to True in the web.config // for newer versions of DNN, use this: //MembershipProvider.Instance().ResetAndChangePassword(oUser, "password"); var success = DotNetNuke.Security.Membership.MembershipProvider.Instance().ChangePassword(oUser, string.Empty, "password"); sb.AppendFormat( success ? "
{0} {1} ({2}) updated with a new password.
" : "
{0} {1} ({2}) NOT UPDATED!
", oUser.FirstName, oUser.LastName, oUser.Username); // save the user UserController.UpdateUser(PortalId, oUser, false); } }

Introducing the DNN Training Working Group

Participate with DNN

It’s been a LONG time since I began and last updated the “participate” blog series.  A lot of things have changed since then.  I am at a new company.  Shaun Walker moved on tooJoe Brinkman is now leading communityCharles Nurse took over as the Chief Architect.  The DNN core is now much more open for contributions, and so many more changes.  Regardless to your personal opinions, there is a bright future for DNN.  Part of this is the introduction of working groups, one of which is the Training working group that I am leading – and I need your help.  Nay…  The COMMUNITY needs your help!

What is the Training Working Group?

Instead of rewriting it, here it is in Joe Brinkman’s own words:

The training group is responsible for developing and coordinating educational events and content for the community including community webinars, virtual conferences and platform documentation. This group will also work where possible with various community organizations like DNN-Connect and DNNCon to ensure we are providing valuable educational events and content throughout the year and to help avoid scheduling conflicts between the various events.

There are a few focuses that are very high on my priority list.  They include:

  • Maintaining and growing community events overall
  • Recruiting event coordinators & scheduling more DNNCon events (DNN-Connect is in good hands already)
  • Recruiting more speakers for DNNHangout
  • Getting more DNN documentation and videos generated & added to the DNN wiki and blog
  • Plan a virtual DNN conference for next spring
  • Plan a resurgence for DNN user groups (will likely include some development)

The Current Team

As of right now, the team is small.  It includes Jay Mathis, Chris Hammond, and myself – but there is room for you too!

How Can You Help?

If you are reading this, you already qualify to be able to help us out.  We have a growing backlog of tasks that need to be taken care of.  We need people of all skill sets…  Designers, administrators, technical writers, bloggers, and yes – developers too.  Even if you can only commit to a single task every month, your participation will be most welcome.  

We might have meetings from time to time, but they won’t be regularly held and they won’t be mandatory.

What Do You Do Next?

If you are interested – even as a proofreader – please just leave a comment about what you want to do and we’ll get  you started.  I would like to match you up with any area that you are passionate about and let you loose on it.

DNNHangout–September 2014–Peter Donker Introduces Us to the Blog Module

DNNHangout Featuring Peter Donker

Joe Brinkman and I have begun hosting a monthly show called DNNHangout.  In each episode we will talk to you about recent DNN news, events, and anything else that might be useful to the DNN community.  We also will be talking to and showcasing a speaker that will present an interesting topic that you can apply on your own DNN site. 

Yesterday was the first of the DNNHangout series.  You can think of a hangout as a cross between a video podcast and a conference session.  While the next few hangouts are not posted yet, you’ll be able to find the upcoming hangouts in the events section on the DNN website.  Tracy Wittenkeller (T-Worx) will be showing us some cool skinning tricks on October 2, and Daniel Mettler (2sic) will be joining us from Switzerland to talk to us about DNN administration November 4.

The show we had yesterday was not without challenges and we knew there would be some kinks to work out too.  Joe was fighting with his webcam until minutes before the broadcast, and I was literally running through the door from a client meeting.  Also, I was speaking WAY TOO FAST.  I’ll work on that for you. 

We would love your feedback about the show and how we can improve it for you.  Feel free to leave your feedback in the comments below or on the youtube video page. 

Here’s what we need from you for future episodes:

  • Showcase examples of a DNN site that you’d like for us to highlight
  • A speaker for December

With no further delay, here is yesterday’s DNNHangout… Enjoy!

Links to articles and items we spoke about during the hangout:

Easily Embed a Google Hangout on Your Website

Google Hangouts

If you’re not sure what a Google Hangout is, well…  You’ve been under a rock for a while.  Simply put, this is a very easy and web-based way to talk to someone face-to-face, from any nearly web-based device that has a web browser.  You can do this one-on-one like with Skype, or you can use this for more of a public webinar kind of use case.  It’s part of the whole Google+ suite of features.  Even if you’re not actively using Google+, this feature is pretty sweet.  It’s amazing what they’re able to enable you to do with a web browser!  If you’re doing the latter, you might want to read on…

It’s been a long while since I’ve released a NEW module into the DNN community – maybe at least a year ago since my last release.  It’s been even longer since I’ve blogged here, and I am sorry for that.  But as I said on twitter the other night, I’m back! I’ve had some modules go out into the wild that you might not have heard of, including a couple for user groups as proof of concepts, and even an update to the Media Module in February.  (Do a search for “user group labs” for the others on codeplex.)

Google Hangout for DNN

If you’re reading this and not using DNN, sorry.  But this is an open source module, so if you’re a developer, you can take a look at the source for this module (and many of my others) on github.  You’ll be able to see this module in action next week though for a live DNN webinar with

Peter Donker (T|B|L), Joe Brinkman (T|B|L), and myself.  You can follow our twitter feeds to get those details as soon as they’re available.

“Hey Will.  Why should I build a module for this?  Google Hangouts has an embed code.  I can just copy and paste it.”

If you are asking yourself that, you’re absolutely right, and there’s nothing to prevent you from doing that.  However, having a module to manage this gives you the benefit of structured content, ability to delegate management of Hangouts to non-technical people, and there are more features and purposes planned for this module that will be announced later.

DNN Hangout Features

This is a first release, so there is going to of course be a minimal number of features, and they include:

  • Quickly add a Google Hangout via copy/paste
  • Template available to change how the module is displayed to users
  • Show start date/time and duration for future/past Hangouts

For those of you that are developers, here is a feature list for you!

  • Uses content items for the DAL
  • Uses DNN token replace
  • Uses PortalSecurity for user input filtering

This version 01.00.00 release has the following minimum requirements.

  • DNN version 07.02.00 or newer
  • SQL Server 2005 or newer
  • Microsoft.Net version 4.0 or newer

How do I use DNN hangout? 

Today, the features are simple…  You create a hangout in Google Hangout.  It can be a regular hangout, but what this module is really meant for is On Air Hangouts.  These are the kind of hangouts where you would be broadcasting an even to the public. 

Next, you copy the hangout URL, video ID, or embed code.  This module will accept them all and magically grab the information it needs from you.  Go into the module’s edit view to manage those settings.

Choose to edit the DNN Hangout Module

Once you see the edit view, add the relevant information, including the Google Hangout information you copied earlier.

Edit the DNN Hangout Module settings

You even have some sample Google Hangout addresses to test and compare with to make sure you’re adding the right information.  As long as you add the right address, it will be parsed and the video ID will be the only thing that remains once you save.

DNN Hangout module settings (bottom half)

Now that you have the right information in place, you can save your new hangout and you’ll see it immediately on the page.

Google Hangout with default template in DNN

This is probably not how you want your hangout to be displayed on you site.  Don’t worry…  You’re covered with the module settings.  Just update the default template with your own HTML and use the placeholder tokens to add the hangout information in the places of the HTML that you want.  Once you save it, your changes will be reflected on the page.  You should know that this module also supports DNN tokens, so feel free to add things like user personalization if you want.

DNN Hangout module settings - template

DNN Hangout Downloads

If you want to try out the DNN Hangout Module, all you have to do is download it and install it like any other module.  You’ll find a link below.

Download DNN Hangout

Are You the 2013 DNN Super Fan?

DNN Super Fan 2012 Winner: Clint Patterson

It has been over two years since the first DNN Super Fan was crowned.  The DNN Super Fan contest has become a very fun event that a lot of the community looks forward to.  A handful of folks submit themselves as being the most passionate fans of DNN by creating a contest entry and then the community votes for their favorite.  This regularly results in a lot of fun “marketing” done by the entrants and voters as they try to bribe others in the community for their votes.  Year three of the DNN Super Fan contest starts now and anyone can win!

Are You Asking Yourself Am I a “Super” Fan?

If you have ever attended a user group, DNNCon, DNN World, created an open source extension, helped someone in the forums or exchange, or even simply said the words, “I love DNN!” you might be this years DNN Super Fan!  Seriously… If you’re reading this blog and have gotten this far, you’re already qualified.  You love DNN and now is your chance to be rewarded for being named the DNN Super Fan for 2013.

This year we have a slight different way to participate in the DNN Super Fan contest and that is by telling everyone else out there why you love DNN.  It’s literally that simple!

Contest Entries

The entry for being a DNN Super Fan contest contestant simply needs to be a short video of you in some way telling people why you love DNN.  The video needs to be 60 seconds or less – no exceptions!  What you say and do in the video, what tools and resources you use, and everything else is up to you.  All you have to do is keep it family-friendly.

You can host your video entries anywhere you’d like, such as Vine, Instagram, Vimeo, Flickr, or YouTube.  However, you will be required to send your video file to us as well.  We’ll make arrangements to send large files as needed. 

Once we receive your file and approve the content, not only are you part of the contest, but you will also be awarded 100 community points to help boost your ranking in the DNN Community!

If you want some ideas for your own video, take a look at what some of the employees at DNN Corp cooked up!

Believe it or not, the videos above only took a couple of hours to create.  Imagine what you could create if you spent an hour of so more!

Grand Prize Winner

You probably have noticed that DNN recently refreshed its brand including a shiny new logo.  The old logo was one that we who love DNN have done a lot of things with since we loved it so much.  It’s been the subject matter for fake tattoos, real tattoos (ask @ErikVB) , cakes, bowls, and more.  Years ago when Nik Kalyani was helping create the old logo, he imagined it as if it were to be one day created as a 3-dimensional object.  As you can see below, that dream came true in the DNN Corp offices, and numerous people stopped by to have their pictures with it.  If you haven’t seen it before, check it out below…

DotNetNuke Logo on the Wall

Yes. The logo is real.  However, since the brand refresh, the new DNN logo is on the wall.  That means that we need to find a new home for the old logo, and that home could be YOURS!  That’s right, the winner of this years DNN Super Fan contest will win the 3D logo from DNN Corp headquarters!  You know you want it!  They’ve had to hide it from us because we’re already fighting over it here…  (True story.)

Will Power: Fighting for the DNN Logo

Second and third place will get a nice prize too, but I can’t stop thinking about having that logo mounted in my house!

How to Enter

Entering the contest is easy.  You simply need to send an email to superfan@dnnsoftware.com.  Be sure to include the details below.  Incomplete details may result in your entry not being accepted.

  • Your DNNSoftware.com website username
  • Your first and last name
  • Your video entry file (either as an attachment or a link to download the actual video file)

It doesn’t get any more simple than that…  We’ll be accepting entries through October 1, 2013 and voting will commence shortly after.

The winners will be announced at DNNCon Palm Beach on October 19, 2013.

Now tell us all about why you love DNN and win!

My Twitter Updates

    © Copyright 2004-2013 by Will Strohl. All rights reserved. Website Skinned By: Ralph Williams  Website Hosted By: Applied Innovations
    | Login