Remove unmaintained Document Library action webscripts that have been superceded by new functionality (Forms & Advanced Workflow support).

Reminder: /slingshot REST APIs are not public and therefore prone to change between versions without maintaining compatibility.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@22622 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Mike Hatfield
2010-09-17 16:41:58 +00:00
parent 43cb616ec1
commit f53156341d
6 changed files with 0 additions and 256 deletions

View File

@@ -1,8 +0,0 @@
<webscript>
<shortname>assign-workflow</shortname>
<description>Document List Action - Assign Workflow</description>
<url>/slingshot/doclib/action/assign-workflow</url>
<format default="json">argument</format>
<authentication>user</authentication>
<transaction>required</transaction>
</webscript>

View File

@@ -1,2 +0,0 @@
<#import "action.lib.ftl" as actionLib />
<@actionLib.resultsJSON results=results />

View File

@@ -1,147 +0,0 @@
<import resource="classpath:/alfresco/templates/webscripts/org/alfresco/slingshot/documentlibrary/action/action.lib.js">
/**
* Assign Workflow to single/multiple files and single/multiple people action
* @method POST
*/
/**
* Entrypoint required by action.lib.js
*
* @method runAction
* @param p_params {object} Object literal containing files array
* @return {object|null} object representation of action results
*/
function runAction(p_params)
{
var result, results = [], file, files = [], i, j, workflowName, assignees, dueDate, description;
// Must have workflow type
if (json.isNull("type"))
{
status.setCode(status.STATUS_BAD_REQUEST, "No workflow type.");
return;
}
workflowName = "jbpm$" + json.get("type");
// Only add files that aren't containers
for (i in p_params.files)
{
file = search.findNode(p_params.files[i]);
if (file !== null && !file.isContainer)
{
files.push(file);
}
}
if (!files || files.length == 0)
{
status.setCode(status.STATUS_BAD_REQUEST, "No files.");
return;
}
// Must also have array of people
assignees = getMultipleInputValues("people");
if (typeof assignees == "string")
{
status.setCode(status.STATUS_BAD_REQUEST, "No people assigned.");
return;
}
if (!assignees || assignees.length == 0)
{
status.setCode(status.STATUS_BAD_REQUEST, "No people assigned.");
return;
}
for (i = 0, j = assignees.length; i < j; i++)
{
assignees[i] = people.getPerson(assignees[i]);
}
// Date supplied?
dueDate = null;
if (!json.isNull("date"))
{
if (json.get("date") != "")
{
dueDate = new Date(json.get("date"));
}
}
// Description supplied?
if (!json.isNull("description"))
{
description = json.get("description");
description = description.substr(0, 255);
}
else
{
description = "";
}
// Get the workflow definition
var workflowDefinition = workflow.getDefinitionByName(workflowName);
// Create the workflow package to contain the file nodes
var workflowPackage = workflow.createPackage();
// Add each file to the workflowPackage as a child association
for (i in files)
{
file = files[i];
result =
{
nodeRef: file.nodeRef,
action: "assignWorkflow",
success: false
};
try
{
result.id = file.name;
result.type = "document";
// Add the file as a child assoc of the workflow node
workflowPackage.addNode(file);
result.success = true;
}
catch (e)
{
result.id = file.name;
result.nodeRef = file.nodeRef;
result.success = false;
}
results.push(result);
}
var workflowParameters =
{
"bpm:workflowDescription": description
};
if (assignees.length == 1)
{
workflowParameters["bpm:assignee"] = assignees[0];
}
else
{
workflowParameters["bpm:assignees"] = assignees;
}
if (dueDate)
{
workflowParameters["bpm:workflowDueDate"] = dueDate;
}
var workflowPath = workflowDefinition.startWorkflow(workflowPackage, workflowParameters);
// Auto-end the start task
var tasks = workflowPath.tasks;
for (task in tasks)
{
tasks[task].endTask(null);
}
return results;
}
/* Bootstrap action script */
main();

View File

@@ -1,12 +0,0 @@
<webscript>
<shortname>folder</shortname>
<description>Document List Action - Create folder</description>
<url>/slingshot/doclib/action/folder/site/{site}/{container}/{path}</url>
<url>/slingshot/doclib/action/folder/site/{site}/{container}</url>
<url>/slingshot/doclib/action/folder/node/{store_type}/{store_id}/{id}/{path}</url>
<url>/slingshot/doclib/action/folder/node/{store_type}/{store_id}/{id}</url>
<format default="json">argument</format>
<authentication>user</authentication>
<transaction>required</transaction>
</webscript>

View File

@@ -1,2 +0,0 @@
<#import "action.lib.ftl" as actionLib />
<@actionLib.resultsJSON results=results />

View File

@@ -1,85 +0,0 @@
<import resource="classpath:/alfresco/templates/webscripts/org/alfresco/slingshot/documentlibrary/action/action.lib.js">
/**
* Create folder action
* @method POST
* @param uri {string} /{siteId}/{containerId}/{filepath}
* @param json.name {string} New folder name
* @param json.title {string} Title metadata
* @param json.description {string} Description metadata
*/
/**
* Entrypoint required by action.lib.js
*
* @method runAction
* @param p_params {object} common parameters
* @return {object|null} object representation of action result
*/
function runAction(p_params)
{
var results;
try
{
// Mandatory: json.name
if (json.isNull("name"))
{
status.setCode(status.STATUS_BAD_REQUEST, "Folder name is a mandatory parameter.");
return;
}
var folderName = json.get("name"),
destNode = p_params.destNode;
// Check folder doesn't already exist
var existsNode = getAssetNode(destNode, folderName);
if (typeof existsNode == "object")
{
status.setCode(status.STATUS_BAD_REQUEST, "Folder '" + folderName + "' already exists.");
return;
}
// Title and description
var folderTitle = "",
folderDescription = "";
if (!json.isNull("title"))
{
folderTitle = json.get("title");
}
if (!json.isNull("description"))
{
folderDescription = json.get("description");
}
// Create the folder and apply metadata
var folderNode = destNode.createFolder(folderName);
// Always add title & description, default icon
folderNode.properties["cm:title"] = folderTitle;
folderNode.properties["cm:description"] = folderDescription;
folderNode.properties["app:icon"] = "space-icon-default";
folderNode.save();
// Add uifacets aspect for the web client
folderNode.addAspect("app:uifacets");
// Construct the result object
results = [
{
id: folderName,
name: folderName,
nodeRef: folderNode.nodeRef.toString(),
action: "createFolder",
success: true
}];
}
catch(e)
{
status.setCode(status.STATUS_INTERNAL_SERVER_ERROR, e.toString());
return;
}
return results;
}
/* Bootstrap action script */
main();