You Have Your HTML Archives Created. Now What?

By Brian Arnold

So, you’ve been using Teamstudio Export to create your archives of Notes databases. You may also have used the Export Config.js Generator to adjust the appearance of the HTML Archive Viewer. You’ve even received positive feedback from your users on how the HTML Archive looks and works!

Now it is time to make the HTML archives available to your end users. But how?

There are three primary methods for making the Teamstudio Export HTML Archives available to your end users. Some are simple, others are more complex. All offer the ability to secure the content and make it available to the people who need to see it.

I will cover the following methods:

  1. Using a File Server

  2. Using an IBM Domino server

  3. Using a Microsoft SharePoint server

1. Using a File Server

This is the simplest method for distributing the HTML archives. In fact, you can configure Teamstudio Export to place the HTML archives directly onto the file server during the conversion process.

Within Export, you can configure the application to place the HTML archives onto any hard drive, physical or mapped. If you have things set up this way, then you are already halfway to your solution:

In this example the XML archives are being placed on one file server while the HTML archives are on another.

Once the HTML files have been created, it is a simple process to secure the directory where the files are stored so that only selected people (or network groups) can access the files by opening the permissions settings for the directory where the new HTML archive was created.

Once you have selected your group(s) or user(s) that will have access to the HTML archive, make sure that you change their permissions so that they cannot inadvertently (or intentionally) change the data in the HTML archive. The permissions that I allow are as follows:

 
 

This will ensure that the authorized group(s) and/or user(s) cannot change or inadvertently damage the files for the HTML archive.

After the security is configured you would simply send the group(s)/user(s) a link to the launch page for the HTML archive with a URL similar to what you see below:

file://file_server_name/Export/HTML/TDNA_002FTDDev/office/Ives%20Dev%20Procedures_nsf.tse/index.html#/dbs

2. Using an IBM Domino Server

Many of our clients are using Teamstudio Export to reduce the number of IBM Notes databases that are on their server. In turn this can alleviate the IBM Domino tasks (e.g. Agent Manager, Indexer, Fixup, etc.) from running on the databases that are truly archives and/or no longer in use. It can also reduce the amount of used physical disk space on the IBM Domino server since the HTML archives can be drastically smaller than the original Notes databases (depending on the original content of the documents in the Notes databases).

The process for creating the HTML archives is very similar to how I configured my system to place the files onto a file server, but instead of having a drive mapped to my file server I have a drive mapped directly to the "Domino\Data\domino\html\.." directory on the IBM Domino server:

Now when the HTML archives are created, they are immediately placed onto the IBM Domino server.

Once the HTML archives are on the server, it is a simple process to secure them so that only selected people can see them.

To secure the newly created files you will need to create a "Website File Protection" document in the Domino directory on the IBM Domino server where the HTML archives were created. These can be created when you open the view "Web > Internet Sites".

Once you are in the view, locate the Web Site document for the IBM Domino server where the HTML archives were created and open the document. Then from the action bar select "Web Site… > Create File Protection" (as pictured below):

Now that the new "Web Site File Protection" document is open, it is a simple process for securing the HTML directory. Provide a meaningful description for the directory (e.g. "Legacy CRM System") and then provide the path to the main HTML archive directory. This directory can be relative to the Domino server's "Data" directory, so you would not need to know the entire file path (e.g. "domino\html\export\office\CRM\"). The nice part about using the directory instead of an actual reference to the HTML file "index.html" is that the "Access Control" will be applied to all files in the main directory and all subdirectories.

Once these fields have been set then it's on to securing the HTML archive. You will see a button labelled "Set/Modify Access Control List". This will present you with a dialog box where you can select individual users or groups of users (just like in a Notes database ACL). In this dialog you can indicate who has the ability to access the directory ("GET"), who can also create new files and folders in the directory ("PUT"), and who should have no access to the directory at all (as pictured below):

After that is all setup then save & close the document. You will need to restart the HTTP task on the server if you want this to be active immediately, else you can wait for the next time the IBM Domino server reloads the Internet Sites settings into memory.

Then you can provide a URL link to your users which points to the HTML archive file(s) on your IBM Domino server. The URL would look something like this:

https://dominoserver.com/export/office/crm/staff_nsf.tse/index.html

3. Using a Microsoft SharePoint Server

A new feature of Teamstudio Export that was recently introduced is the ability to use the HTML archive files in Microsoft SharePoint. This feature was added because a lot of our Export clients are using the application to prepare for a full migration away from IBM Domino to Microsoft SharePoint. The great part of the new functionality in Export is that you can have quick, measurable results for your Domino to SharePoint projects while you determine which IBM Domino applications you want to recreate in your SharePoint environment.

The process of using the HTML archive files in SharePoint is a bit different than what we have already covered but is just as simple to perform.

One change in how Teamstudio Export is configured can actually make it run slightly faster than with the other scenarios I have outlined. Because you cannot map a drive to your SharePoint system, Export can be configured to create the XML and HTML archives on your local hard drive (assuming you have ample disk space available). With Export configured this way you will not have performance delays due to network traffic to your file server or IBM Domino server.

All other actions in Export will be the same. You will create your XML and HTML archives in the same manner as our other examples. Once you are satisfied with the HTML archive output you can now import the files and folders into your SharePoint environment.

For the import process we use the Microsoft SharePoint Designer 2013 client. This can be obtained from Microsoft for free from the following link:

https://www.microsoft.com/en-us/download/details.aspx?id=35491

Once you have your SharePoint Designer client installed and connected to your SharePoint environment the process of importing the HTML archives into your environment is quite simple.

First, launch the SharePoint Designer client and then open the SharePoint site that you want to add the HTML archives into. Once the SharePoint site is open your SharePoint Designer should look similar to the image below:

When you have connected to your SharePoint site you will want to open the "Site Pages" object from the list of Site Objects on the left side navigator. This will then display a list of existing Site Pages folders on your SharePoint server. If the folder that you want to place the HTML archives into is already there then open it, otherwise you can create a new folder by clicking on the "Folder" icon on the Pages ribbon and then open that new folder (as shown below):

Now that the Site Pages folder is open you are now ready to import your HTML archives into your SharePoint environment. Launch Windows File Explorer and navigate to the directory where you are creating the HTML archives. When I do this I place the SharePoint Designer on the left side of my screen and the Windows File Explorer on the right side (as shown below):

When you are ready, it is a simple process to import your HTML archives into your SharePoint Site Page folder. Think of it more like organizing your files between two hard drives, just one of them happens to be your SharePoint environment. It's a simple "Drag & Drop" of the HTML archive folder into your Site Page folder (as shown below):

After all of the files have been imported it is a simple process to supply the link to your end users. Open the newly imported HTML archive folder, right click on the file "indexsp.aspx", click on "Properties", right click on the "Location" value, click on "Select All" and then right click again and select "Copy". You now will have the URL to open the HTML archive on your clipboard. Your URL should look something like this:

https://teamstudio.sharepoint.com/SitePages/Brian's Archives/Ives Dev Procedures_nsf.tse/indexsp.aspx

This can now be distributed to your users for them to access the HTML Archive on your SharePoint server.

To secure the new HTML archive you will need to log into your Office 365 account and navigate to the newly created HTML archive folder. You will need to select the folder (don't open it!) and then you will have options on the right navigator to manage access to the folder's contents (as shown below):

Now you have three different methods for providing access to the HTML archives that you are creating. These are just three methods for providing access, but there are many more that can be used as well. You can also use any web server to provide access to these files (e.g. NGINX, Apache Tomcat, IBM HTTP server, etc.), as long as the directory structures of the HTML archives are kept intact, and the web server does not encrypt the URL provided.

BONUS CONTENT! A MULTI-ARCHIVE LAUNCHER PAGE

For our own benefit here at Teamstudio I wanted to make it simple for the end users to be able to access the multiple HTML archives that were created without having to send them multiple URL links.

To do this I had to also create a special "lander" page in the parent directory where the HTML archives were created. The code is quite simple and merely has a list of the URL links to the various "index.html" (or "indexsp.aspx" for SharePoint) files for the multiple HTML archives that represent our legacy CRM system.

Below is the code for the lander page with instructions for changing it to suit your needs. Enjoy!

<!DOCTYPE html><html>

	<head>
		<title>HTML Archive Viewer - Teamstudio CRM Databases</title>
		<style>
			* {font-family: arial;}
			table, th, td, tr {
				border-collapse: collapse;
				background-color: #458bca;
				margin: 0px 10px 0px 10px;
				width: 99%;
				font-size: 30px;
				color: white;
			}
			th, td {
				padding: 15px;
				height: 50px;
			}
			div {
				border: 1px solid #dbdbdb;
				margin: 10px;
				padding: 0px 10px 0px 10px;
				height: 100px;
			}
			a:link {text-decoration: none;color:#000}
			a:visited {	text-decoration: none;}
			a:hover {text-decoration: underline;	}
			a:active {text-decoration: underline;}
			.div_hover { background-color: #FFFFFF; }
			.div_hover:hover { background-color: #efefef; }
		</style>
	</head>
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<body>
		<table><tr><td>HTML Archive Viewer - Teamstudio CRM Databases</td></tr></table>
		
		<div id="board" style="border: 0px; margin: 0px; padding: 0px;">
			<script>
				var linkArray = new Array ();
				/* INSTRUCTIONS FOR SETTING THE ARRAY
				The array below consists of all the information that will be displayed when this page is opened.
				
				To use the array you will need three (3) pieces of information:
					1. URL to Teamstudio Export HTML Viewer
					2. Title of the Notes Database
					3. Details of where the Notes database originally resided on the Domino server
				
				These pieces of information must then be combined together, being separated by the tilde character ~
				then you create as many array elements as you want, remembering to increment the array count for each new value
				*/
				
				linkArray[0] = "RmUSA_nsf.tse/index.html#/dbs/db~US Customers~office\\CRM\\RmUSA.nsf on CN=TSProd01/O=Teamstudio";
				linkArray[1] = "US%20Sales%2099_nsf.tse/index.html#/dbs/db~US Sales~office\\CRM\\US Sales 99.nsf on CN=TSProd01/O=Teamstudio";
				linkArray[2] = "Products_nsf.tse/index.html#/dbs/db~Products~office\\CRM\\Products.nsf on CN=TSProd01/O=Teamstudio";
				linkArray[3] = "TSAssets_nsf.tse/index.html#/dbs/db~Asset Management~office\\CRM\\TSAssets.nsf on CN=TSProd01/O=Teamstudio";
				linkArray[4] = "Staff_nsf.tse/index.html#/dbs/db~Staff~office\\CRM\\Staff.nsf on CN=TSProd01/O=Teamstudio";
				linkArray[5] = "Phone%20ListII_nsf.tse/index.html#/dbs/db~Telephone Directory~office\\CRM\\Phone ListII.nsf on CN=TSProd01/O=Teamstudio";
				linkArray[6] = "RMDocuments_nsf.tse/index.html#/dbs/db~Customer Documentation~office\\CRM\\RMDocuments.nsf on CN=TSProd01/O=Teamstudio";
				
				var y=linkArray.length;
				var strSplit;
				for(x=0; x<y;x++) {
					var board = document.createElement('div');
					strSplit=linkArray[x].split("~");
					var newDIV = document.getElementById('board').appendChild(board);
					newDIV.className="div_hover";
					newDIV.innerHTML = "<a href="+strSplit[0]+" target='newWindow_"+x+"'><h3>"+strSplit[1]+"</h3>"+strSplit[2]+"</a>";
				}
			</script>
		</div>
	</body>
</html>