Administrator App User Guide

This user guide is a general overview of how to use and access the netDocShare Admin App designed for netDocShare Admin Users. In this Admin app, Admins can have the ability to control the Global settings that can reflect in the configs of each webpart or tab implementation of netDocShare.
In This documentation we will cover the below mentioned parts.

  1. What is the Admin App and how to access it
  2. Why to use the admin app and common use cases
  3. A Walkthrough of the admin App interface
  4. Global Defaults, overrides and how they will affect your webparts

Note: netDocShare Admin App is introduced in netDocShare version 3.2.0.2503. Using the admin app with a version of netDocShare earlier than 3.2 may cause issues as older versions of netDocShare do not support the processing of global Configs.

What is the Admin App?

The admin app is specially created for netDocShare admin users to view and manage global Configurations for netDocShare config settings. As you may know, netDocShare uses config options to control every aspect of what the users can view and interact with, as well as many default settings that are required for the netDocShare to function.

Using this app, administrators can control the config settings by restricting the override options for certain settings or by applying the pre-defined defaults which will be customized for your environment and replace the factory default settings. This system is applicable for SharePoint, Teams Custom Tabs and WebApps.

The admin app is a service hosted by KLST which can be reached with this url:

https://services.klobot.ai/apps/live/netdocshareadmin

Who can use Admin App?

netDocShare Admins can use this Admin app. Admins are automatically set to primary contact user emails when a client creates an account with our company. Admins are also be able to manage this list to add or remove user emails. Navigate to Admin Users page and add valid users’ Email IDs or remove them and click “save” to persist.

Why use the Admin App?

By default, we allow users to edit all config settings. We also provide some factory defaults that may or may not be fitting for your specific environment. Typically, users will have to change these settings on each webpart or tab that they wish to customize.

However, using this Admin app provides a solution which allows administrators to set up trusted defaults that will be applied across ALL SharePoint webparts or ALL Teams tabs. Admins can also override specific settings only, the experience can be as general or as granular as desired. As shown in below image Admins can allow whatever the settings that user can edit override.

Overall, there are 2 main questions that an Administrator must decide when setting up configurations globally:

  1. Does this setting need to have a default value that is different that the factory default?
    • If yes, then picking an option in the admin app will globally provide your selection as default in all environments
    • If no, then not picking an option will set the app to use individual user-defined values or factory defaults for that config option
  2. Should users be able to change from the setting that is provided to them?
    • If yes, then turning off “Allow override” in its respective environment will disallow users from changing this setting
    • If no, then turning on “Allow override” will let users change the setting

Using the system above there can be 4 different results for each setting:

  1. Default setting is provided via global config and user is NOT able to change it
  2. Default setting is not provided, user is NOT able to change it (this means the setting is effectively disabled or forced to use factory default)
  3. Default setting is provided via global config but user is able to change it
  4. Default setting is NOT provided and user is able to change it (the setting will use factory default but user is able to change it. This is the state that existed before Admin App)

Example Use Cases

Let us get through some examples to understand the Admin app more clearly.

Case 1: Defaulting display options to “off” and hiding them

In the example below, we have disabled override options for some settings which will restrict users from overriding in SharePoint. We have disabled Show Logo, Show Logout and Show Search Box with the pre-defined settings.

Show Logo : – Disable

Show Logout :- Hide

Show Search Box :- Hide

Now if the user navigates to a Config page or attempts to edit an existing webpart using config builder, they will be unable to edit these settings. They will see prompt message in the tooltip that states “This setting cannot be overridden!”.

In this state, all users across SharePoint & Teams will no longer be able to edit these 3 properties and also they will be provided default values which will disable and hide these display options.

Case 2: Removing undesired behaviors

In this case, we would like to remove “delete” from the list of available context menu options and disallow it in Teams only. This means that SharePoint users will still be able to add the “delete” option but now, Teams users will no longer be able see or select this option. To achieve this, simply de-select the ‘delete’ item from the list of context menu items and “allow override” in SharePoint only.

Case 3: Providing global defaults

In the final example case, we are setting up global defaults for settings that should rarely be changed. For example, in this case, we are setting default click Behavior to “Preview with Smart Previewer system”. Setting override to false for all environments should disallow users from deviating from this option on all environments.

Here is a detailed walkthrough that goes through every step of accessing and manipulating the configs. To enter the netDocShare Admin App panel, the client will need to providde a valid License key. This license key is typically provided by KLST when netDocShare is purchased.

After entering the License key, it will start validation. Once that is successfully completed, it will allow the user to authenticate with NetDocuments.

Now click on Login to NetDocuments button.

Enter valid netdocuments credentials to complete the auth process. After completion of the auth process it will lead to Admin app home page with success message.

Navigate to the Admin Users page to add or remove administrator emails.

Navigate to Valid domains page to add or remove domains which have permission to edit the Admin settings.

On the Policies page, admins can provide custom defaults for all the values in the form and allow or deny the option to override that setting. If the admin allows override then the user will be able to change the setting, otherwise the global setting that the admin has chosen will be applied. If no global Setting is chosen, a factory default setting will be applied.

Authentication

Admin Users can access the Admin App by entering a Valid License key.

Enter Valid License Key

After entering valid license key user need to verify captcha.

Once the captcha is successfully verified the license validation will start. If the License key is successfully verified, it will enable the Login to NetDocuments Button.

Users need to authenticate with NetDocuments login credentials.

After completion of all the authentications user will be navigated to Admin App home page.

Main Settings Screen

In the main settings screen, we will cover Company Details, Admin Users and Valid Domain details.

Company Details: Here we will get the Organization details along with Office address and Primary contact number which are derived from the license info that is stored in the KLST client database. You may change any settings here to update your firm’s information.

Also, we have additional settings of Admin Contact Name and Email ID which can be editable. These are the details end users can directly contact for any assistance.

Admin Users: As we can see below, we can add or remove admin users who can have the ability to access the admin app. These allowed users can manage all the settings in the admin app.

Valid Domains: In a single firm we may have multiple domains. By using this Valid domains we are able to control which domain user can able to access the Admin App.

Global Config

The Global config is the main part in the Admin app. Here only the Admin can restrict the settings that can be controlled by the users. As we can see in the screenshot below, Admins can Allow Override or not. Based on these settings only the config screens will be updated accordingly.

Note: Admin must select the Pre-defined setting to restrict the override option. Otherwise, users may end up with trying to select the setting.

Allowing Override

Admins will have almost all the settings to control except settings that are specific to particular web part view. For example, we are not allowing the compact mode options to be changed in admin settings because it is specific to normal view. Similarly, there is an option for treeview which determines whether the table shows only documents or documents AND containers, this option is also not available in the Admin interface.

If the Admin allows override, then users will be able to change the settings using the config builder or by manually editing the JSON. If admin does not allow the override, then users will get whatever the setting provided by Admin.

NetDocShare uses a JSON-formatted config object to customize views and webparts to suit a user’s needs. In the admin app, Admins can restrict the settings that can be overridable. Below you will find a list of possible properties admin can restrict.

Base Properties

CDNBaseUrl should be the root url of your SharePoint Site Collection. This URL must end with a forward slash: ‘/’

AuthSuffix should be the relative path of the page where the netDocShare Auth WebPart exists. An example webpage URL for the Auth WebPart would be:

https://m365x634254.SharePoint.com/SitePages/auth.aspx

NEW: Starting from version 2.4.1, users may input a Universal Authentication URL instead of one which leads to the auth page. Please see our Service-Based Authentication section for more info.

assetPath is the full path where static assets are stored and must be obtained during deploy. This config is mandatory as it is also used to determine licensing information.

If you are in SharePoint online (currently included in the config above) your asset path may look like the following:

https://{yourSharepointTenant}/sites/AppCatalog/ClientSideAssets/23dea53d-fbee-49c3-8b16-c6b586b0422f/

If you are on Share Point on Prem Your asset Path might look like the following:

https://{yourSharepointTenant}/SiteAssets/netDocShare/CDN/assets/images/folderIcons/

AuthPage is an optional, but very important property which will determine what type of Authorization process is preferred. The two available types are: iFrame and single-page redirect.

iFrame uses a popup window to display the login or Allow/Deny screen presented by NetDocuments.

The redirect option will change the current page url and navigate to the Auth page.

We recommend using iFrame as it tends to have a better user experience, however, we understand that many of our clients may work in environments which block iFrames by default.

In that case, please be sure to include this “authPage” config in ALL webparts intending to use this system and set to ‘redirect’. If this config is NOT included, the webpart will default to ‘iFrame’ behavior.

Once again, if you are intending to use the ‘redirect’ option for Auth, please include “authPage”: “redirect” in ALL webparts, not just the Auth webpart. If you are intending to use iFrame, you may omit this property in all webparts.

Additionally, if you wish to auth page with redirect enabled, once the page has been created you will not be able to edit the page, due to the default behavior of the page, that redirects you to the netdocuments auth pages.

Optional Display Properties

ndThread is a property used to hide or show a second tab which will connect to the ndThread instance that is associated with the current container on the NetDocuments ndThread site. Setting it to true will show the tab, setting it to false will hide it.

ndTasks: ndTasks is a property used to hide or show a third tab which will connect to the ndTasks instance that is associated with the current container on the NetDocuments ndTasks site. Setting it to true will show the tab, setting it to false will hide it.

menuSize property controls the size of the context menu mentioned in the above section. There are 3 sizes available: Small, Medium and Large, denoted by the letter’s ‘s’, ‘m’ and ‘l’. The default is small and omitting this property will set the webpart to use the default option.

showLogout is a property which control whether or not the welcome message on the top right appears. This message can be clicked to reveal a small dropdown containing the ‘logout’ option. The default value is false, omitting this value will set the value to false.

Note: On the Microsoft Teams implementation of our app, logout is required on every page, therefore this property is set to true and will not be editable by users

filters are an array of key-value pairs, denoting specific NetDocuments property filters you wish to place on the Web Part. The example above includes two filters for the document “property”: “Ext,” and the specific extension “value(s)”: “doc” and “pdf”. The filters array can take any specific filter-key-value-pair in relation to the list of NetDocuments properties noted previously, and desired values for those properties.

showSearchBox is to show or hide the search box to execute filtering on the container contents or execute a full API search to the parent container.

Example: “showSearchBox” : true, //Accepts Boolean

showLogo is to show or hide the netDocShare logo image at the top left. Note: Image can be customized by replacing the file in the static images' library.

Example: “showLogo” : true //Accepts Boolean

autoRefreshTimer will refresh the WebPart every 15+ seconds.

Example: “autoRefreshTimer”: 15 //Accepts int that is bigger than 1

authMsg is an optional value that is used to display an optional message that will be displayed when users authenticate with NetDocuments. Administrators tend to use this feature to reassure users that the login popup is part of the document retrieval process. Please see the image below for an example:

If you are editing JSON manually, you may insert html and css elements as a string to display a customized message. For users editing using the JSON config Builder, we have provided a rich-text editor as seen below:

Note: NetDocuments Configuration Properties are case-sensitive, follow the official spelling and character case as shown above.

Search Behavior is a global feature that exists on every WebPart. The search bar can be turned on or off in the configuration. Search functionality will vary depending on the type of content that is retrieved by the WebPart and also how it is configured. There are 2 main options for search configuration: “Search Current View” or “Search All”.

Search Current View: Will execute a search on NetDocuments with the current container as the search scope (including sub-containers). It will return all results matching the metadata columns of the existing view.

Search All: Will execute a search on NetDocuments with the current container as the search scope (including sub-containers). It will search across all metadata including keyword searching the content of the document.

Note: Search All cannot expand the search scope beyond the original source container.

Context menu determines what options will appear in the dropdown context menu that is opened from clicking the “…” button beside each document.

Default click behavior: The Default click behavior will define how the click behavior acts when user click on the documents. We have multiple behaviors as given below. Profile on NetDocuments (Default): opens document on NetDocuments.com. Preview with Secure link Enabled: opens preview in full screen. Preview with Secure link Disabled: opens on NetDocuments.com and preview will open. Preview with Smart Previewer system: opens preview pop up of the document within the window.