Articles


Answers to annoying DNN problems

DotNetNuke is an ASP.net framework similar to PHPNuke. I will continue to list solutions to problems that can take a while to hunt down.


Problem

Saving custom user roles for the FCK editor does not take. You select your options, click \'Apply\' but when you go back, the \'All users\' is still selected


Solution

An odd way to do things - BEFORE you click the \'Apply\' link, you MUST click the checkbox to the left of the option. This is the checkbox above the \'Cancel\' image for that option. Once you\'ve done this with all options you want to change, click the \'Apply\' link. Strange - but it works.

Problem

You want to hide the control panel for some users, as sometimes you may want a logged in user to have access to editing the module but not the actual page controls


Solution

You need to set the control panel to be viewed by page editors only, and remove page edit permissions for the particular user role. Edit permissions are then set on the module, which allows the user to edit the module but not have the control panel available.

To do this:

  1. When logged in as SuperUser or Administrator, go to Admin/Site Settings

  2. Expand the 'Advanced Settings' section, then the 'Usability Settings' section

  3. For 'Control panel visibility', choose 'Page editors'. Save using the 'update' link

  4. Go to Admin/Pages. Select the page you wish to remove the control panel from

  5. Uncheck 'edit' for the user role you wish to remove the control panel for. Save using the 'update' link

  6. Navigate to the page you wish to remove the control panel for. In 'Design' mode (selected from the top control panel), choose to edit the settings of the module for that page which the particular user role group will be editing. On the settings page, make sure this user role group has 'edit' permissions as well as 'view' permissions. Save using the 'update' link


The user role group should not have the control panel displayed on the selected page. Do this for each page you need to hide the control panel on.





Problem

How do you add a column with a default value to a table


Solution

This is not a definitive guide for doing this, it is only an example of the syntax to use. If you have an existing table that you want to add a column to, it cannot be 'not null' unless a default value is provided. Use the following syntax:

alter table tablename ADD columname int DEFAULT 0 NOT NULL

In DotNetNuke, the 'Run as script' checkbox needs to be checked.





Problem

Not a problem, but a reference. Use the following queries to retrieve information from sql server 2008:
To get the last modified date of a procedure:


SELECT LAST_ALTERED, ROUTINE_NAME
FROM INFORMATION_SCHEMA.routines
ORDER BY LAST_ALTERED DESC


To get the date the procedure was modified:


SELECT CREATED, ROUTINE_NAME
FROM INFORMATION_SCHEMA.routines
ORDER BY CREATED DESC


To view a procedure:


SELECT routine_definition
FROM INFORMATION_SCHEMA.routines
where ROUTINE_NAME LIKE '%something in the name of the procedure%'
ORDER BY CREATED DESC


Or to view all prodecures:



SELECT routine_definition
FROM INFORMATION_SCHEMA.routines
ORDER BY CREATED DESC


Valid XHTML 1.0!

There is 1 user online

1,058,841 total unique visitors
2,041,403 total pageviews
120 visitors in the last 24 hours
78 total visitors today
168 pageviews today
This page has been visited 24,244 times

Most users online at once:
52 on 12/13/2009