External widget dashboard extension

The External widget dashboard feature helps you display card content in the dashboard panel based on an external URL request.  

This feature is available from the OpenKM version 8.1.10.

This option is only available if you have enabled the External dashboard widget feature.

Several parameters are passed as request parameters in the URL:

  • The authentication token (encrypted)
  • The record uuid
  • The userId

Configuration

Field / PropertyTypeDescription

extension.external.widget.dashboard

List

Each row is a set of values with a tab-content declaration; the format is: label;url;height

Label 1;http://localhost:8180/openkm/test.jsp;370
Label 2;http://www.openkm.com;240

The default height of the card in the dashboard is 370 pixels.

When you embed a URL in an iframe that belongs to a subdomain that is different from the application's domain, you must include that domain in the configuration; otherwise, the browser will block it for security reasons. You can find more information about the okm.content.security.policy configuration parameter in the section Experimental configuration parameters  

webservices.visible.properties

 List

To make the values of the parameter "extension.external.widget.dashboard" accessible to all users, the parameter name "extension.external.widget.dashboard" must be added to the current list.

If you forget to add the property name, only administrators will be able to retrieve the value; as a result, some extensions may produce errors for regular users.

More information is available at Configuration parameters.

Sample

Configuration

Create a file named test.jsp and copy it into the $TOMCAT_HOME/webapps/openkm folder.

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>External URL request example</title>
</head>
<body>
	Request parameters
	<br />
	<br />
	<b>uuid:</b><%=request.getParameter("uuid")%><br />
</body>
</html>

Usage

  • Show the dashboard panel.