// this function will add link info to the array
function addLink(array, label, url, image) {
	array[array.length] = new Array();
	array[array.length-1][0] = label;
	array[array.length-1][1] = url;
	if (image)
		array[array.length-1][2] = image;
}

// this function will open a file
function openFile (docId, version) {
	//Turned off confirmation - MTD 2/3/05 
	//if (confirm('Click \'OK\' if you want to open this file.'))
		
		window.open('redirect.cfm?Template=doc_mgmt\\doc_mgmt_tools.cfm&Action=OpenFile&dID='+docId+'&v='+version);
}

//Function that will load the document options
function loadOptions (docId, docTitle, isFile, isTrash, isEditable, hasOldVersions, version, checkedOut, usesNotifications, mainUrl, toolsUrl) {
	var options = new Array();
	var docType = isFile? 'file': 'folder';
	
	if (docId != null && !isTrash && docId >= 0) {
		if (isFile) {
			addLink(options, 'Open', 'redirect.cfm?Template=doc_mgmt\\\\doc_mgmt_tools.cfm&Action=OpenFile&dID='+docId+'&v='+version, 'icons/open.png', false);
			addLink(options, 'Save', 'redirect.cfm?Template=doc_mgmt\\\\doc_mgmt_tools.cfm&Action=SaveFile&dID='+docId+'&v='+version, 'icons/save.png');
		} else { // is folder
			addLink(options, 'Open all subfolders', 'javascript:changeAllStates(lastClicked, true)', 'icons/open.png');
			addLink(options, 'Close all subfolders', 'javascript:changeAllStates(lastClicked, false)', 'icons/close.png');
		}
		
		addLink(options, 'View details', mainUrl+'&Action=DocDetails&dID='+docId, 'icons/search.png');
	
		if (isEditable) {
			if (isFile) {
				if (checkedOut == 0) {
					addLink(options, 'Check out', toolsUrl+'&Action=CheckOut&dID='+docId, 'icons/lock.png');
				} else if (checkedOut == 2)
					addLink(options, 'Check in', toolsUrl+'&Action=CheckIn&dID='+docId, 'icons/unlock.png');

				if (checkedOut != 1) {
					addLink(options, 'Update', toolsUrl+'&Action=PublishFile&dID='+docId, 'icons/upload.png');
					addLink(options, 'Overwrite', toolsUrl+'&Action=OverwriteFile&dID='+docId, 'icons/upload.png');
					addLink(options, 'Key doc attributes', toolsUrl+'&Action=SetKeyDoc&dID='+docId, 'icons/key.png');
					if (hasOldVersions)
						addLink(options, 'Revert', toolsUrl+'&Action=DocRevert&dID='+docId, 'icons/revert.png');
				}
				
			} else { //is folder
				addLink(options, 'Publish file', toolsUrl+'&Action=PublishFile&pID='+docId, 'icons/upload.png');
				addLink(options, 'Create sub-folder', toolsUrl+'&Action=CreateFolder&pID='+docId, 'icons/newFolder.png');
			}

			if (!isFile || checkedOut != 1) { //is folder or is not checked out
				addLink(options, 'Edit permissions', toolsUrl+'&Action=SetPermissions&dID='+docId, 'icons/prefs.png');
				addLink(options, 'Rename', toolsUrl+'&Action=RenameDocument&dID='+docId, 'icons/rename.png');
				addLink(options, 'Move', toolsUrl+'&Action=MoveDocument&dID='+docId, 'icons/move.png');
				addLink(options, 'Delete', toolsUrl+'&Action=DeleteDocument&dID='+docId, 'icons/delete.png');
			}
		}
	}
	else if (docId != null && !isTrash) { //is the root folder for site
		addLink(options, 'Open all folders', 'javascript:changeAllStates(foldersTree, true)', 'icons/open.png');
		addLink(options, 'Close all folders', 'javascript:changeAllStates(foldersTree, false)', 'icons/close.png');

		if (isEditable) {
			addLink(options, 'Publish file', toolsUrl+'&Action=PublishFile', 'icons/upload.png');
			addLink(options, 'Create folder', toolsUrl+'&Action=CreateFolder', 'icons/newFolder.png');
			addLink(options, 'Edit permissions', toolsUrl+'&Action=SitePermissions', 'icons/prefs.png');
		}
		
		addLink(options, 'Subscribe to all', mainUrl+'&Subscribe=1', 'icons/newspaper.png');
		addLink(options, 'Unsubscribe from all', mainUrl+'&Subscribe=0', 'icons/newspaper.png');
	}
	else if (isTrash) {
		addLink(options, 'Remove from trash bin', toolsUrl+'&Action=DeleteFromTrash&dID='+docId, 'icons/delete.png');
		addLink(options, 'Restore from trash bin', toolsUrl+'&Action=RestoreFromTrash&dID='+docId, 'icons/help.png');
	}
	else { //is the trash bin
		addLink(options, 'Empty trash bin', toolsUrl+'&Action=EmptyTrash', 'icons/delete.png');
	}
	
	if (usesNotifications) { //user uses system for notifications
		addLink(options, 'Notifications', toolsUrl+'&Action=Notifications', 'icons/mail.png');
	}
	
	// re-write the html inside of the options DIV
	var html = '<DIV CLASS="fileHeader">'+ docTitle +'</DIV>';
	for (i=0; i<options.length; i++) {
		html += '<IMG SRC="/ts_images/'+(options[i].length == 3?options[i][2]:'spacer.gif')+'" ALT="" BORDER="0" HEIGHT="16" WIDTH="16">'
		html += '<INPUT CLASS="clear" TYPE="button" VALUE="'+((options[i][0].length<21)?options[i][0]:options[i][0].substr(0,20)+'...')+'"' +
		 			'onmouseover="this.className=\'inputLink\'" onmouseout="this.className=\'clear\'" ' +
					'onclick="window.location.href=\''+options[i][1]+'\'"' +
					'title="'+options[i][0]+'">' +
				'<BR>'
	}
		
	if (options.length == 0)
		html += 'There are no options for this '+ docType +'.'
	
	var divObj = document.getElementById('fileOptions');
	divObj.innerHTML = html;
	
	adjustForFooter();
}

