diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/avatar.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/avatar.get.desc.xml
deleted file mode 100644
index e20c0bc1bf..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/avatar.get.desc.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
- Avatar
-
- Returns a user avatar image in the format specified by the thumbnailname, or the "avatar" preset if omitted.
-
- /slingshot/profile/avatar/avatar
- /slingshot/profile/avatar/avatar/thumbnail/{thumbnailname}
- /slingshot/profile/avatar/{store_type}/{store_id}/{id}/thumbnail/{thumbnailname}
- /slingshot/profile/avatar/{store_type}/{store_id}/{id}
- /slingshot/profile/avatar/{username}/thumbnail/{thumbnailname}
- /slingshot/profile/avatar/{username}
- argument
- user
- required
- internal
-
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/avatar.get.js b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/avatar.get.js
deleted file mode 100644
index f4b278a1aa..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/avatar.get.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/**
- * User Profile - User avatar GET method
- *
- * Returns a user avatar image in the format specified by the thumbnailname, or the "avatar" preset if omitted.
- *
- * @method GET
- */
-
-function getPlaceholder(thumbnailName)
-{
- // Try and get the place holder resource for a png avatar.
- var phPath = thumbnailService.getMimeAwarePlaceHolderResourcePath(thumbnailName, "images/png");
- if (phPath == null)
- {
- // 404 since no thumbnail was found
- status.setCode(status.STATUS_NOT_FOUND, "Thumbnail was not found and no place holder resource set for '" + thumbnailName + "'");
- return;
- }
-
- return phPath;
-}
-
-function main()
-{
- var userName = url.templateArgs.username,
- thumbnailName = url.templateArgs.thumbnailname || "avatar",
- avatarNode;
-
- // If there is no store type, store id or id on the request then this WebScript has most likely been requested
- // for a user with no avatar image so we will just return the placeholder image.
- if (userName == null && url.templateArgs.store_type == null && url.templateArgs.store_id == null && url.templateArgs.id == null)
- {
- // If there is no userName or nodeRef data then we want to return the browser cacheable placeholder...
- model.contentPath = getPlaceholder(thumbnailName);
- model.allowBrowserToCache = "true";
- return;
- }
- else if (url.templateArgs.store_type == null && url.templateArgs.store_id == null && url.templateArgs.id == null)
- {
- // There is no nodeRef data but there is a username... this should return the user image that needs revalidation
- var person = people.getPerson(userName);
- if (person == null)
- {
- // Stream the placeholder image
- model.contentPath = getPlaceholder(thumbnailName);
- return;
- }
- else
- {
- // Retrieve the avatar NodeRef for this person, if there is one.
- var avatarAssoc = person.assocs["cm:avatar"];
- if (avatarAssoc != null)
- {
- avatarNode = avatarAssoc[0];
- }
- }
- }
- else if (userName == null)
- {
- // There is no user name but there is nodeREf data... this should return the image that CAN be cached by the browser
- model.allowBrowserToCache = "true";
- avatarNode = search.findNode(url.templateArgs.store_type + "://" + url.templateArgs.store_id + "/" + url.templateArgs.id);
- if (avatarNode == null)
- {
- // Stream the placeholder image if the avatar node cannot be found.
- model.contentPath = getPlaceholder(thumbnailName);
- return;
- }
- }
-
- // Get the thumbnail for the avatar...
- if (avatarNode != null)
- {
- // Get the thumbnail
- var thumbnail = avatarNode.getThumbnail(thumbnailName);
- if (thumbnail == null || thumbnail.size == 0)
- {
- // Remove broken thumbnail
- if (thumbnail != null)
- {
- thumbnail.remove();
- }
-
- // Force the creation of the thumbnail
- thumbnail = avatarNode.createThumbnail(thumbnailName, false);
- if (thumbnail != null)
- {
- model.contentNode = thumbnail;
- return;
- }
- }
- else
- {
- // Place the details of the thumbnail into the model, this will be used to stream the content to the client
- model.contentNode = thumbnail;
- return;
- }
- }
-
- // Stream the placeholder image
- model.contentPath = getPlaceholder(thumbnailName);
-}
-
-main();
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/resetavatar.put.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/resetavatar.put.desc.xml
deleted file mode 100644
index ce0d21af7a..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/resetavatar.put.desc.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
- Reset Avatar image
- User Profile - Reset Avatar image for a user
- argument
- user
- required
- /slingshot/profile/resetavatar/{userName}
- internal
-
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/resetavatar.put.json.ftl b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/resetavatar.put.json.ftl
deleted file mode 100644
index c85c20f2b4..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/resetavatar.put.json.ftl
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "success": ${success?string}
-}
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/resetavatar.put.json.js b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/resetavatar.put.json.js
deleted file mode 100644
index 3f604c2726..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/resetavatar.put.json.js
+++ /dev/null
@@ -1,46 +0,0 @@
-/**
- * User Profile - Reset user avatar REST method
- *
- * Current user can only modify their own settings or an admin can reset all.
- *
- * @method PUT
- */
-
-function main()
-{
- // Get the person details and ensure they exist for update
- var userName = url.extension;
- var user = people.getPerson(userName);
- if (user == null)
- {
- status.setCode(status.STATUS_NOT_FOUND, "Person " + userName + " does not exist");
- return;
- }
-
- // ensure we found a valid user and that it is the current user or we are an admin
- if (user == null ||
- (people.isAdmin(person) == false && user.properties.userName != person.properties.userName))
- {
- status.code = 500;
- status.message = "Failed to locate user to modify or permission denied.";
- status.redirect = true;
- return;
- }
-
- // remove old image child node if we have one
- var assocs = user.childAssocs["cm:preferenceImage"];
- if (assocs != null && assocs.length == 1)
- {
- assocs[0].remove();
- }
- // remove 'cm:avatar' target association - backward compatible with JSF web-client avatar
- assocs = user.associations["cm:avatar"];
- if (assocs != null && assocs.length == 1)
- {
- user.removeAssociation(assocs[0], "cm:avatar");
- }
-
- model.success = true;
-}
-
-main();
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.desc.xml
deleted file mode 100644
index d6a0280f72..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.desc.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
- Avatar Upload
- Upload avatar file content and apply to person preferences
-
- user
- required
- /slingshot/profile/uploadavatar
- internal
-
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.html.ftl b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.html.ftl
deleted file mode 100644
index 91cac6770a..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.html.ftl
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
- Upload Avatar Success
-
-
-<#if (args.success!"")?matches("^[\\w\\d\\._]+$")>
-
-#if>
-
-
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.html.status.ftl b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.html.status.ftl
deleted file mode 100644
index 41659be481..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.html.status.ftl
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
- Upload Avatar Failure
-
-
-<#if (args.failure!"")?matches("^[\\w\\d\\._]+$")>
-
-#if>
-
-
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.js b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.js
deleted file mode 100644
index 5a2dae1149..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.js
+++ /dev/null
@@ -1,115 +0,0 @@
-/**
- * User Profile Avatar Upload method
- *
- * @method POST
- * @param username {string}
- * filedata {file}
- */
-
-function main()
-{
- try
- {
- var filename = null;
- var content = null;
- var username = null;
-
- // locate file attributes
- for each (field in formdata.fields)
- {
- if (field.name == "filedata" && field.isFile)
- {
- filename = field.filename;
- content = field.content;
- }
- else if (field.name == "username")
- {
- username = field.value;
- }
- }
-
- // ensure all mandatory attributes have been located
- if (filename == undefined || content == undefined)
- {
- status.code = 400;
- status.message = "Uploaded file cannot be located in request";
- status.redirect = true;
- return;
- }
- if (username == null || username.length == 0)
- {
- status.code = 500;
- status.message = "Username parameter not supplied.";
- status.redirect = true;
- return;
- }
-
- var user = people.getPerson(username);
- // ensure we found a valid user and that it is the current user or we are an admin
- if (user == null ||
- (people.isAdmin(person) == false && user.properties.userName != person.properties.userName))
- {
- status.code = 500;
- status.message = "Failed to locate user to modify or permission denied.";
- status.redirect = true;
- return;
- }
-
- // ensure cm:person has 'cm:preferences' aspect applied - as we want to add the avatar as
- // the child node of the 'cm:preferenceImage' association
- if (!user.hasAspect("cm:preferences"))
- {
- user.addAspect("cm:preferences");
- }
-
- // remove old image child node if we already have one
- var assocs = user.childAssocs["cm:preferenceImage"];
- if (assocs != null && assocs.length == 1)
- {
- assocs[0].remove();
- }
-
- // create the new image node
- var image = user.createNode(filename, "cm:content", "cm:preferenceImage");
- image.properties.content.write(content);
- image.properties.content.guessMimetype(filename);
-
- if (image.properties.content.getMimetype().indexOf("image/") != 0)
- {
- user.removeNode(image);
- status.code = 500;
- status.message = " Only image files are allowed for user avatar.";
- status.redirect = true;
- return;
- }
-
- image.properties.content.encoding = "UTF-8";
- image.save();
-
- // wire up 'cm:avatar' target association - backward compatible with JSF web-client avatar
- assocs = user.associations["cm:avatar"];
- if (assocs != null && assocs.length == 1)
- {
- user.removeAssociation(assocs[0], "cm:avatar");
- }
- user.createAssociation(image, "cm:avatar");
-
- // save ref to be returned
- model.image = image;
- }
- catch (e)
- {
- var x = e;
- status.code = 500;
- status.message = "Unexpected error occured during upload of new content.";
- if(x.message && x.message.indexOf("org.alfresco.service.cmr.usage.ContentQuotaException") == 0)
- {
- status.code = 413;
- status.message = x.message;
- }
- status.redirect = true;
- return;
- }
-}
-
-main();
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.json.ftl b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.json.ftl
deleted file mode 100644
index c12892eb08..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/uploadavatar.post.json.ftl
+++ /dev/null
@@ -1,12 +0,0 @@
-<#escape x as jsonUtils.encodeJSONString(x)>
-{
- "nodeRef": "${image.nodeRef}",
- "fileName": "${image.name}",
- "status":
- {
- "code": 200,
- "name": "OK",
- "description" : "File uploaded successfully"
- }
-}
-#escape>
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/usercontents.get.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/usercontents.get.desc.xml
deleted file mode 100644
index a807ece184..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/usercontents.get.desc.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
- Last edited user contents
- Last edited user contents
-
- guest
- /slingshot/profile/usercontents
- required
- internal
-
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/usercontents.get.js b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/usercontents.get.js
deleted file mode 100644
index a491873c6b..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/usercontents.get.js
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
-var maxResults = (args.maxResults !== undefined) ? parseInt(args.maxResults, 10) : DEFAULT_MAX_RESULTS;
-
-function padZeros(number)
-{
- return (number < 10) ? '0' + number : number;
-}
-
-function getContents(user, type)
-{
- // set range to within last 28 days
- var date = new Date();
- var toQuery = date.getFullYear() + "-" + padZeros((date.getMonth()+1)) + "-" + padZeros(date.getDate());
- date.setDate(date.getDate() - 28);
- var fromQuery = date.getFullYear() + "-" + padZeros((date.getMonth()+1)) + "-" + padZeros(date.getDate());
-
- var userProperty = (type == 'created') ? 'creator' : 'modifier';
-
- var getBlogPostsQuery = function getBlogPosts()
- {
- return 'PATH:"/app:company_home/st:sites/*/cm:blog/*" ' +
- 'AND +TYPE:"cm:content" ' +
- 'AND +@cm:' + userProperty + ':"' + user + '" ' +
- 'AND +@cm:' + type + ':["' + fromQuery + '" TO "' + toQuery + '"]';
- };
-
- var getWikiPagesQuery = function getWikiPagesQuery()
- {
- return 'PATH:"/app:company_home/st:sites/*/cm:wiki/*" ' +
- 'AND +TYPE:"cm:content" ' +
- 'AND +@cm:' + userProperty + ':"' + user + '" ' +
- 'AND +@cm:' + type + ':["' + fromQuery + '" TO "' + toQuery + '"]';
- };
-
- var getDiscussionsQuery = function getDiscussionsQuery()
- {
- return 'PATH:"/app:company_home/st:sites/*/cm:discussions//*" ' +
- 'AND +TYPE:"fm:post" ' +
- 'AND +@cm:' + userProperty + ':"' + user + '" ' +
- 'AND +@cm:' + type + ':["' + fromQuery + '" TO "' + toQuery + '"]';
- };
-
- var getDocumentsQuery = function getDocumentsQuery()
- {
- return 'TYPE:"cm:content" ' +
- 'AND +@cm:' + userProperty + ':"' + user + '" ' +
- 'AND +@cm:' + type + ':["' + fromQuery + '" TO "' + toQuery + '"] AND -QNAME:comment\\-*';
- };
-
- var sortColumns = [];
- sortColumns.push(
- {
- column: "@" + utils.longQName("cm:" + type),
- ascending: false
- });
-
- var queryDef = {
- query: "",
- language: "fts-alfresco",
- page: {maxItems: maxResults},
- onerror: "no-results",
- sort: sortColumns
- };
-
- // perform fts-alfresco language queries
- var results;
- queryDef.query = getBlogPostsQuery();
- results = search.query(queryDef);
- queryDef.query = getWikiPagesQuery();
- results = results.concat(search.query(queryDef));
- queryDef.query = getDiscussionsQuery();
- results = results.concat(search.query(queryDef));
- queryDef.query = getDocumentsQuery();
- results = results.concat(search.query(queryDef));
-
- results.sort(function(a, b)
- {
- var date1 = a.properties[type].getTime(),
- date2 = b.properties[type].getTime();
- return (date1 < date2) ? 1 : (date1 > date2) ? -1 : 0;
- }
- );
-
- return processResults(results, maxResults);
-}
-
-model.data = [];
-model.data['created'] = getContents(args.user, 'created', maxResults);
-model.data['modified'] = getContents(args.user, 'modified', maxResults);
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/usercontents.get.json.ftl b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/usercontents.get.json.ftl
deleted file mode 100644
index 5919dfb4ca..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/usercontents.get.json.ftl
+++ /dev/null
@@ -1,37 +0,0 @@
-<#macro dateFormat date>${date?string("yyyy-MM-dd'T'HH:mm:ss.SSSZ")}#macro>
-<#macro formatDataItems data>
-<#escape x as jsonUtils.encodeJSONString(x)>
-{
- "items":
- [
- <#list data.items as item>
- {
- "nodeRef": "${item.nodeRef}",
- "type": "${item.type}",
- "name": "${item.name!''}",
- "displayName": "${item.displayName!''}",
- "description": "${item.description!''}",
- "createdOn": "<@dateFormat item.createdOn />",
- "createdBy": "${item.createdBy!''}",
- "createdByUser": "${item.createdByUser!''}",
- "modifiedOn": "<@dateFormat item.modifiedOn />",
- "modifiedByUser": "${item.modifiedByUser}",
- "modifiedBy": "${item.modifiedBy}",
- "size": ${item.size?c},
- <#if item.site??>"site":
- {
- "shortName": "${item.site.shortName}",
- "title": "${item.site.title}"
- },#if>
- "container": "${item.container!""}",
- "tags": [<#list item.tags as tag>"${tag}"<#if tag_has_next>,#if>#list>]
- }<#if item_has_next>,#if>
- #list>
- ]
-}
-#escape>
-#macro>
-{
- "created": <@formatDataItems data['created'] />,
- "modified": <@formatDataItems data['modified'] />
-}
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userprofile.post.desc.xml b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userprofile.post.desc.xml
deleted file mode 100644
index 9380df58ec..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userprofile.post.desc.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
- User Profile
- User Profile POST for update
-
- user
- required
- /slingshot/profile/userprofile
- internal
-
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userprofile.post.json.ftl b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userprofile.post.json.ftl
deleted file mode 100644
index c85c20f2b4..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userprofile.post.json.ftl
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "success": ${success?string}
-}
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userprofile.post.json.js b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userprofile.post.json.js
deleted file mode 100644
index 4e547fa63d..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userprofile.post.json.js
+++ /dev/null
@@ -1,88 +0,0 @@
-/**
- * User Profile REST Update method
- *
- * @method POST
- * @param json {string}
- * {
- * username: "username",
- * properties:
- * {
- * "cm:propname": "value"
- * ...
- * },
- * content:
- * {
- * "cm:contentpropname": "contentstringvalue"
- * ...
- * }
- * }
- */
-
-function main()
-{
- model.success = false;
- var username = json.get("username");
- if (username == null)
- {
- status.code = 400;
- status.message = "Username parameter not supplied.";
- status.redirect = true;
- return;
- }
-
- var user = people.getPerson(username);
- // ensure we found a valid user and that it is the current user or we are an admin
- if (user == null ||
- (people.isAdmin(person) == false && user.properties.userName != person.properties.userName))
- {
- status.code = 500;
- status.message = "Failed to locate user to modify or permission denied.";
- status.redirect = true;
- return;
- }
-
- if (json.has("properties"))
- {
- var props = json.get("properties");
- if (props != null)
- {
- var names = props.names();
- for (var i=0; i
- User Status
- User Status POST for update
-
- user
- required
- /slingshot/profile/userstatus
- internal
-
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userstatus.post.json.ftl b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userstatus.post.json.ftl
deleted file mode 100644
index 9d91c6a79d..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userstatus.post.json.ftl
+++ /dev/null
@@ -1,9 +0,0 @@
-<#escape x as jsonUtils.encodeJSONString(x)>
-{
-<#if success>
- "userStatus": "${userStatus}",
- "userStatusTime": { "iso8601": "${xmldate(userStatusTime)}"},
-#if>
- "success": ${success?string}
-}
-#escape>
\ No newline at end of file
diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userstatus.post.json.js b/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userstatus.post.json.js
deleted file mode 100644
index 4786d850bc..0000000000
--- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/profile/userstatus.post.json.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * User Status REST Update method
- *
- * @method POST
- * @param json {string}
- * {
- * status: "value"
- * }
- */
-
-function main()
-{
- model.success = false;
-
- if (json.has("status"))
- {
- var newStatus = json.get("status");
- if (newStatus != null)
- {
- var statusTime = new Date();
- person.properties["cm:userStatus"] = newStatus;
- person.properties["cm:userStatusTime"] = statusTime;
- person.save();
-
- model.success = true;
- model.userStatus = newStatus;
- model.userStatusTime = statusTime;
-
- if (newStatus.trim() != "")
- {
- var activity = {};
- activity.status = newStatus;
- activities.postActivity("org.alfresco.profile.status-changed", null, "profile", jsonUtils.toJSONString(activity));
- }
- }
- }
-}
-
-main();
\ No newline at end of file