40FINGERS DNN StyleHelper SkinObject 02.08.09

Rating: No reviews yet
Downloads: 19
Released: Jun 3, 2015
Updated: Jul 25, 2015 by Timo_Design
Dev status: Stable Help Icon

Recommended Download

Application 40Fingers-StyleHelper-02.08.09-SKO-Install.zip
application, 26K, uploaded Jun 3, 2015 - 19 downloads

Release Notes

This version will work with DNN 06.01.01 and up.

Version 02.08.09:


- AddCssFile now accepts path starting with "http://", "https://" and "//" without adding the skin path.

Version 02.08.08:


- AddBodyClass reported "Edit" for users without any edit rights. This was caused by DNN reporting the Controlpanel being in Edit state for registered users and is now fixed by adding an extra check.

Version 02.08.07:


- AddToBodyTop, now injects the content just after <body>
- AddToBodyBottom, now injects the content just before </body>


- Doctype is no longer case sensitive + you can now also use "html5" (was "html 5" before)
- Packaging script changes(should not influence functionality)

Version 02.08.06:

Added: CorrectModuleCss attribute

Some module load style sheets after skin.css, while they should be loaded before.
Although you can overwrite their styles by using a more specific selector or !important, I prefer them loading in the correct order.<br />
If CorrectModuleCss = true, StyleHelper will look for style sheets from the /Desktopmodules/ and /Admin/ folder and move them to position before skin.css.
(Only for style sheets loaded through Client Resource Management)

Added: AddAfterBody attribute

This will render the passed string after the Body tag, before the From tag.
In some cases Google analytics needs code to be injected between Body and Form tag.
Example: <fortyfingers:STYLEHELPER ID="SH1" AddAfterBody="Injected after the Body tag" runat="server" />

Version 02.08.05:

Added: BodyClass Token for Control panel state
BodyClass token: [CPState].
This will render "View, Edit or Layout" depending on the state of the controlpanel.
Default in BodyClass attribute = "CP-[CPState]", rendering:
CP-None, CP-View, CP-Edit or CP-Layout

Version 02.08.04:

Fixed fallback for unsupported doctype attribute to: do nothing

Version 02.08.03:

Fixed some small RedirectStop issues

Version 02.08.02:

Added: Page Type Body Class
When you add this to the Body Class Attribute: [PageType]
The Body element on the page will get a class indicating if this is the Home, Splash, Login page etc.
The injected class will be like this: "PageType_xxx"
Where "xxx" can be replaced by "Home", "Splash", "Login", "Register", "User", "Search" or "Normal" depending on the Site Settings.

Example: <fortyfingers:STYLEHELPER id="SH1" BodyClass="PageType" runat="server" />

Version 02.08.01:

Remove Javascript files
The new "RemoveJsFile" attribute allows you to remove JS files that have been injected using DNN Client Resource Mangement (CRM).
This version will only remove DNN's JS files, not the ones injected by Modules!
In short; when a JS link in the HEAD of the page looks like this: ..../file.js?cdv=xx you can remove it.
(Don't include the ?cdv=xx" part when referencing a file for removal)

Example: <fortyfingers:STYLEHELPER ID="SH1" RemoveJsFile="/jquery-ui.min.js" runat="server" />
Will remove jQuery UI from the page.
Remove multiple items using a comma separated list

Redirect user without page rights
Attribute: IfNoViewRights

This can be used to redirect Users that don't have view rights on a page.
I used this to give logged in users a better explanation than the standard DNN message.
Should be used in combination with the RedirectTo attribute for the redirect URL.
Ignores the redirectmode attribute as the redirect needs to be done before DNN processes the page.

Example: <fortyfingers:STYLEHELPER ID="SH1" IfNoViewRights="true" RedirectTo="/NoViewRights.aspx" runat="server" />
Redirect users without view rights to a page (using this skin) to the "/NoViewRights.aspx" page.

Version 02.08.00:

Remove Control
This will hide the control based on its server id (the ID in the ascx file).
Can be used to remove for instance a pane, based on one of the conditions. RemoveControl="RightPane" will remove the RightPane from the page source.
Multiple ID's can be passed like this: RemoveControl="BottomPane||RightPane"

Version 02.07.06:

IE 11 detection issue
ASP.NET detects IE11 as "internetexplorer", while previous versions returned "ie".
That's corrected now, StyleHelper now also return "ie" for IE11. :-)

Added BodyClassToken for Levels
BodyClass="BcLevel" will render a class for the current pages level and it's parents

Version 02.07.05:

Fixed mulitple remove from head issue
Adding multiple items to remove from the head caused an error.
That's fixed now.

Version 02.07.04:

Added [Culture] and [Language] tokens for BodyClass
This allows you to address certain cultures or languages using CSS.
The default template for the BodyClass attribute is now: "[BcName] [BcId] [BcNr] [UserPageRoles] Cult-[Culture] Lang-[Language]"
Example body element:
<body class="... Cult-en-US Lang-en">

Version 02.07.03:

Fixed order of inject and remove from head
The order of injecting and removing was incorrect.
Because of this a combination of removing and injecting could also remove the injected element.

Version 02.07.02:

Fixed issue with comma separated values
Fixed issue in mobile detection REGEX

Version 02.07.01:

Added: IfUserMode
Condition based on the user mode
Possible values:
None = User Not logged in</li>
View = User Logged in, Control Panel in View Mode
Edit = User Logged in, Control Panel in Edit Mode
Layout = User Logged in, Control Panel in Layout Mode

<fortyfingers:STYLEHELPER ID="SH1" RemoveCssFile="default.css,portal.css" IfUserMode="None" runat="server" />
Will remove Default.css and Portal.css only for not Authenticated users.

Version 02.07.00:

Fixed Remove individual style sheets in DNN 6.1+
From this version it is again possible to remove individual style sheets in DNN 6 & 7
I found a way around the issues I had before, without adding a custom provider.

Version 02.06.06:

Added RemoveFromHead
Allows you to remove elements from the head of the page, depending of their attributes.
For instance: &lt;fortyfingers:STYLEHELPER ID=&quot;SH1&quot; RemoveFromHead=&quot;rel=SHORTCUT ICON&quot; runat=&quot;server&quot; /&gt;
will remove the favicon.
This will not work for the style sheets or JS as they are injected in a different way.
Pass multiple pairs separated by two pipe characters (||).

AddToHead support tokens
Now allows the use of tokens for the path. <br />
For instance:
<fortyfingers:STYLEHELPER ID="SH1" IfBrowser="!IE<9" AddToHead="<script src='SJs/40fingers.js' type='text/javascript'></script>" runat="server" />

Will inject a JS file for all browsers but IE below version 9.<br />

[S] = Skin folder
P = Portal Home directory
M = Skin object home folder
R = Installation Root
D = DesktopModules Folder

Version 02.06.05:

Bug Fix Page Order class in Body Class
On upgraded installations where some pages have a CultureCode and some not the order was incorrect.
This has been corrected by removing a not needed CultureCode check.

Version 02.06.04:

Bug Fix SuperUser Detection
Passing IfRole="SuperUsers" did not detect Host users
This has been corrected now and the code has been rewritten.

New Attribute ContentFalse
This is the content that gets injected when the conditions

Version 02.06.03:

Changed IfQs behavior:
IfQs also to test if a query String Parameter exists
You can now pass a QS paramter without value
Where IfQS="ProductId:122" would test for a QS parameter ProductId with value 122
IfQS="ProductId" allows you to test if querystring parameter ProductId exists (has any value).

Version 02.06.02:

Added Simple Content Injection:
Added attribute Content
The passed value of this attribute will be injected if the set conditions are met.<br />
This will be expanded in the future (load HTML file content and the use of tokens).

Fixed bug in DNN5 Stylesheet removal:
The code change for DNN6 caused stylsheets not be removed in DNN 5 anymore, fixed now..
Also added a warning for DNN6 users if the try something that does not work in DNN6.

Version 02.06.01:

Changes to detectmobilebrowser detection:
Added attribute DetectMobileRegex1
You can use this attribute to overwrite the first regex used by the detectmobilebrowser.com method

Added attribute DetectMobileRegex2
You can use this attribute to overwrite the second regex used by the detectmobilebrowser.com method

Added Attribute: DetectMobileIncludeTablet
On detectmobilebrowser.com/about there's a method to include tablets as mobile devices (by changing the first regex).

If you set DetectMobileIncludeTablet to True, the first regex is replaced and Tablets are treated as mobile (although I'm not 100% sure this is up to date).

Version 02.06.00

- Changes to Redirection (mostly used for mobile)
- Add conditions for inject body class (used to inject a class for a role for instance)

Version 02.04.00

- Remove all stylesheets in DNN 6.1+

Version 02.03.00

- Change an existing Meta tag
- You can now also use tokens to add or manipulate Meta tags

Version 02.02.02

- AddHtmlAttribute, now replaces an attribute if it already exists

Version 02.02.01

- Bug fix in Referrer handling

Version 02.02.00

- Improved Redirect Handling
- Get Backlink to the Page that casued the redirect
- Add anything to the Head of the DotNetNuke page
- Remove Existing DotNetNuke MetaTags
- Links to Style sheets and Javascript files are now templatable

Version 02.00.01

Fixed bug in Mobile detection

Reviews for this release

No reviews yet for this release.