Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeUsing DNN Platf...Using DNN Platf...Upgrading DNN P...Upgrading DNN P...06.02.01 to 06.02.02 breaks my login06.02.01 to 06.02.02 breaks my login
Previous
 
Next
New Post
8/22/2012 5:07 AM
 

Hello,

I have the same problem.

Here is the information from the event log:

ArgumentNullException

Value cannot be null. Parameter name: source

at System.Linq.Enumerable.Select[TSource,TResult](IEnumerable`1 source, Func`2 selector) at DotNetNuke.Entities.Portals.PortalSettings.GetPortalSettings(Int32 tabID, PortalInfo portal) at DotNetNuke.HttpModules.UrlRewriteModule.OnBeginRequest(Object s, EventArgs e) at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously).

 
New Post
8/24/2012 6:58 AM
 

Sigfied

your issue is not related to the same we discuss here, please open a new post and give more details on your dnn version and wat you have done before the issue occures.

Thanks

 
New Post
9/11/2012 8:37 AM
 
I have the same problem after a new install of version 6.2.2 and 6.2.3.
Both version have problems with the login/register popup...

When the link is manualy copied to URL bar, i get the login but without popup.
 
New Post
9/12/2012 8:01 PM
 

What is the OS and version you worked with?

Have the appllication pool user Access to the .NET Version you are using on the Windows Folder?

Have you try to run DNN on Full trust ?

 
New Post
9/18/2012 9:49 PM
 

I've found a problem which I think is related.

If using a skin which includes the 'commands' at the bottom of the skin container in edit mode, you end up with double-escaping of Urls.

This doesn't affect the dnn6 drop-down 'manage' menu items, but rather the inline links that many containers use (generally containers written pre-dnn 6).

The problem can be demonstrated by using a page name that uses non-ascii characters (Forsíða  is Icelandic for 'Home', for example).

If you use a module container that includes in-line links for commands (any of the minimal extropy containers from DNN 5, used in a dnn 6 install, will do), then set up a page that will encode the Url, you'll see the error in the popup-url.

The relevant code is this:

In the Html MOdule (HtmlModule.ascx.cs) we see this common code:

var Actions = new ModuleActionCollection();
                Actions.Add(GetNextActionID(),
                            Localization.GetString(ModuleActionType.AddContent, LocalResourceFile),
                            ModuleActionType.AddContent,
                            "",
                            "",
                            EditUrl(),
                            false,
                            SecurityAccessLevel.Edit,
                            true,
                            false);

This adds an action to the menu.  So far, so good.   The EditUrl function contains a call down to the ModuleInstanceContext.cs NavigateUrl call - a wrapper around the base Common NavigateUrl call, but with this wrinkle:

// Making URLs call popups
            if (PortalSettings.EnablePopUps)
            {
                if (!UIUtilities.IsLegacyUI(ModuleId, controlKey, PortalId) && (url.Contains("ctl")))
                {
                    url = UrlUtils.PopUpUrl(url, null, PortalSettings, false, pageRedirect);
                }
            }

Now, you can see that the ModuleInstanceContext class is checking whether this is to be used in a Popup, and so is encoding the Url in the 'PopUpUrl' function. OK.

The problem then is compounded when it gets to the next part - displaying the container, which, again, is done in ModuleInstanceContext.  Here, in the LoadActions() method, we find this call:

ModuleActionCollection moduleActions = actionable.ModuleActions;

                foreach (ModuleAction action in moduleActions)
                {
                    if (ModulePermissionController.HasModuleAccess(action.Secure, "CONTENT", Configuration))
                    {
                        if (String.IsNullOrEmpty(action.Icon))
                        {
                            action.Icon = "edit.gif";
                        }
                        if (action.ID > maxActionId)
                        {
                            maxActionId = action.ID;
                        }
                        _moduleSpecificActions.Actions.Add(action);

                        if (!UIUtilities.IsLegacyUI(ModuleId, action.ControlKey, PortalId) && action.Url.Contains("ctl"))
                        {
                            action.ClientScript = UrlUtils.PopUpUrl(action.Url, _moduleControl as Control, PortalSettings, true, false);
                        }
                    }
                }

What we find here is that each of the module actions is iterated, and then, for the 'action.ClientScript' call, they're put through the PopUpUrl method again.  When this is done, it comes across the first line in the PopUpUrl method again:

var popUpUrl = Uri.EscapeUriString(url);

Ending up with a double-escaped Url.

I'm not sure of the exact fix here, but if a module is encoding it's action Urls, it doesn't need to be done again.  Either the encoding needs to be taken out of the module level, or the container level code needs to have a way of detecting that it doesn't get double-encoded.  

I can open a gemini ticket on this one if it hasn't already been raised.

 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Upgrading DNN P...Upgrading DNN P...06.02.01 to 06.02.02 breaks my login06.02.01 to 06.02.02 breaks my login


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out