Using multiple skin in DotNetNuke - dotnetnuke

I have a portal with BackEnd and FrontEnd sides.
I use skin A for BackEnd, skin B for FrontEnd.
I create a page P1 on FrontEnd and then drag a module with two controls:
Control ListItem: Key = black, to show all item
Control Detail: Key = "Display", to show item in detail
When P1 is shown up, the skin B is loaded correctly (Skin of FrontEnd). But when i click on an item, the skin A is loaded (Skin of BackEnd). I don't know why and how to solve this problem.
This is link of all Item: http://dnndev.me/vi-VN/dich-vu/cateid/104
This is link of one item: http://dnndev.me/vi-vn/dich-vu/ctl/Display/mid/544/id/88
Thanks for your help :)

With DNN, when you load a secondary control the site moves into "Isolation Mode". This isolation mode uses the "Edit Skin" as defined in the site settings, rather than the actual skin that is created. (It also removes all other modules from the page.)
To combat this, you might need to handle control switching on your own. (Without using the ctl or mid parameters that trigger Isolation Mode.

Related

Revert to default skin in DotNetNuke

Today I was looking for a skin to edit but I accidently clicked apply button of a skin. That skin is for displaying videos. Now when I click any item in admin menu I am seeing my video page template and its completely empty. So now I can't do any changes in admin menus. I looked also in database but I can't find anything about it. Now I must to revert it. Any ideas? (Running DNN 6)
The apply command will replace the default skin in the settings of your website.
You could find this setting in PortalSettings table. Its name is "DefaultPortalSkin".
I suggest you to update its value with "[G]Skins/MinimalExtropy/index.ascx" which is the default value for DNN6. You also could update the "DefaultPortalContainer", if you need, with "[G]Containers/MinimalExtropy/Title_Red.ascx" for example.
FYI [G] means that the skin is located in /Portals/_default, [L] means that the skin is located in the portals folder.
In addition, don't forget to restart the corresponding application pool because of cache mechanisms which keep the old settings in memory.
You also could rename the folder of the current selected skins in order to force the website to load the default skin. It will permit you to go to the site settings to select the desired skin.

Dotnetnuke with responsive skin

Is there a way to mark containers by numbers so that they show one after another in a certain order when responsive skin is used (when mobile device loads the page)?
I am using "Tidy" responsive skin and my plan is to have a module that sits on every page and gets "Request.Browser.Browser" on load so if it's a mobile browser I just plan to add this "?SkinSrc=%5BG%5DSkins/Tidy/TidySocial&ContainerSrc=%5BG%5DContainers/Tidy/PanelGrey" to my url and reload the page with Tidy skin, while making a Session variable that the user is on mobile. The problem is that containers with modules (html module, gallery, my custom modules) are not ordered one after another in a way I would like them to be.
This isn't really possible within DNN. The way to handle responsiveness and order is to control the order of the panes and modules within those panes when they are placed on the page (or change the order after). You can't easily target modules once they are on the page to control their positioning without doing custom development within the skin that would need to know details about the modules and locations of those.
ivan
you need to Change mobie.css of tidy to get you desire result
it is not possible in DNN by default
Latest DNN Install has responsive feature which is also good.

DNN Session Variable Issues

I am developing skin in DNN 6.02.04. In my insidepage.ascx page how to handle the session variable?.Without creating usercontrol or module how can i set session variable?.
For Example
1st time if anyone went to this webpage http://www.solodyn.com/FORPHYSICIANS.aspx you get one dialogue box .In that dialogue box one button was there. if i click that button " i am healthcare professional". they set session not getting the dialogue box until my session close. In my developement website every page load i am getting that dailogue box again and again. How to use session variable in DNN Skin pages?
Thanks & Regards
Gopinath.R
Session is typically not recommended for use within DNN environments. I would set a cookie and then in the Skin file you could add logic that reads from the cookie using inline code in the ASCX for the skin.

DotNetNuke - Module settings disapear on new user control

I have a DNN module which renders a user control (view.ascx)
All is ok ( I am logged in ) and I get the DNN settings menu.
however when I add another control and load it like so:
string url = Globals.NavigateURL(PortalSettings.ActiveTab.TabID, "View_Details", "mid=" + ModuleId.ToString());
Response.Redirect(url);
I lose the settings link when the new control loads.
Any ideas? Is there a property somewhere to turn on settings for the loaded user control?
When you have "mid" in the querystring, you're going to be using module isolation (i.e. that module control will show up in the edit skin's ContentPane and will be the only module on the page). When in module isolation, the action menu doesn't include settings. This is just a fact of DNN.
You have a couple of options. First, you could choose another navigation method (see Michael Washington's old (but still good) Module Navigation Options for your DotNetNuke® Module article).
Second, you could put your own link to the Settings on that control. You may be able to implement IActionable and just add it back to the action menu (I'm not sure if that would work), or you can add some sort of button or navigation bar to your module (potentially on all of the controls for consistency).
Are you designing this module for the general DNN community, or for a client that isn't familiar with DNN? People with DNN experience won't expect to be able to get to the settings one they're "inside" a module.

dotnetnuke: can we create a master page?

Can we create a content managed master page in dotnetnuke?
eg. I want the right pane and bottom pane to be content managed, but to show the same thing across all pages.
Thanks
What you are describing is essentially what DNN calls a Skin.
A DNN skin is actually just an ASP.NET user control (ascx) that dictates page-wide or site-wide look and feel, which offers developers the same functionality as a Master page, except that it ties into DNN-specific elements and uses some DNN-specific user controls, such as menu/navigation, logo, breadcrumbs, login/user account links, etc.
Now, in order to add the ability to provide content management capabilities site-wide, you specify an area in your skin to place a module (let's say, a Text/HTML module). This area is called a pane. Once you add a module to this pane, in its settings you can tell it to appear on every page. This way, the module can be edited on any page, and its changes will be reflected on all pages automatically.
Check out DNN's site, as it contains a TON of documentation on how to do many common tasks: http://www.dotnetnuke.com/Support/Documentation/DownloadableFiles/tabid/478/Default.aspx. Under the Technical Documentation section, you'll want to grab the Skinning document (I believe it's a PDF).
DNN Modules can be set to appear on all pages by checking a checkbox in the module settings. However DNN does not use the concept of a Master Page. It injects modules (user controls) in containers on a single aspx page at runtime.
A Master Page would be a great addition to DotNetNuke you cannot replace content in a single area of the page. The whole page refreshes. For example if you have a menu and you only want the content of what you select to appear in a specific content area without refreshing the rest of the page you have to resort to third party modules that attempt to do that but usually fail. There are 'module wrappers' but all the ones I've tested have issues with modules that allow the user to edit content. Edit screens are usualy different user control files (ascx) that are launched when you edit the module content. Since the page refreshes with the new page you have lost your place. Those module wrappers work fine for static content and some other controls but not for all controls.
IFrames can be used (DNN has one) to trade out content but that doesn't get rid of the probelms mentione above. I'm heavily invested in DNN, running the UCanUse.com web site so this isn't a slam on DNN. I just thought I'd try to answer the quesiton with detail.

Resources