6. Troubleshooting

6.1. JavaScript issues

6.1.1. Overview

User interface is created at the top of AngularJS framework. JavaScript can be moody although it’s very fast. If you will see interface issues, for example view can’t be loaded or displayed, buttons aren’t responding, it’s worth to check JavaScript errors. Depending what browser you are using, check following articles that are describing how to display these errors in your browser:

If you have any problems with your plugin, please send above error messages to support@glanton.com

6.1.2. Edit & Delete buttons doesn’t work

When you can’t update module settings, and JavaScript throws error like Method Not Allowed... or requests throws 405 HTTP error code, please make sure that WebDAV is disabled. To disable WebDAV, please add following lines to the web.config file, in the section system.webServer-> modules add following line:

<modules>
    <remove name="WebDAVModule"/> <!-- add this -->
    ...
</modules>

in the section system.webServer-> handlers add following line:

<handlers>
    <remove name="WebDAV" />
    ...
</handlers>

the ExtensionlessUrl-Integrated-4.0 handler under the system.webServer-> handlers also applies the verb PUT:

<handlers>
    ...
    <remove name="ExtensionlessUrl-Integrated-4.0" />
    <add name="ExtensionlessUrl-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
    ...
</handlers>

Here you can read more about WebDAV.

6.1.3. View can’t be loaded

If you see situation like on figure below, where only upper part of interface is loaded and instead of bottom part of interface is displayed message Top level state template, probably it’s caused by minified js file.

_images/troubleshooting-javascript_02.png

To fix that issue sign in as DNN host and go to menu “Servers-> Server Settings”. At the bottom is section responsible for reducing Java Script files, please disable Minify JS attribute. See figure below for more info.

_images/troubleshooting-javascript_03.png

6.1.4. Multiple versions of AngularJS

There could be situation where DNN page is requesting two different versions of AngularJS library. For example two third-party plugins (module and skin), both wants AngularJS library, but in different versions. From “AD-Pro Authentication” perspective this could lead to issue like on figure below:

_images/troubleshooting-angular_01.png

Web browser console will display error like on figure below:

_images/troubleshooting-angular_02.png
Uncaught TypeError: angular.module(...).component is not a function...

If AngularJS library is loaded from DNN skin, we can temporary replace skin by following steps below:

  1. Go to page where “Module options” is.

  2. Add following parameter to the query string in url: ?SkinSrc=%5BG%5DSkins/Xcillion/Inner now url can look af follow:

    http://dnn800.test/AD-Pro/Authentication/ctl/Edit/mid/414?SkinSrc=%5BG%5DSkins/Xcillion/Inner

In this case was used Xcillion skin, but it can be any other skin that doesn’t have AngularJS dependency.