mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
[MNT-21551] Handle links path with a changed root-node (#824)
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
const THUMBNAIL_NAME = "doclib",
|
const THUMBNAIL_NAME = "doclib",
|
||||||
TYPE_SITES = "st:sites",
|
TYPE_SITES = "st:sites",
|
||||||
|
SITES_PATH = "Sites/",
|
||||||
PREF_DOCUMENT_FAVOURITES = "org.alfresco.share.documents.favourites",
|
PREF_DOCUMENT_FAVOURITES = "org.alfresco.share.documents.favourites",
|
||||||
PREF_FOLDER_FAVOURITES = "org.alfresco.share.folders.favourites",
|
PREF_FOLDER_FAVOURITES = "org.alfresco.share.folders.favourites",
|
||||||
LIKES_SCHEME = "likesRatingScheme";
|
LIKES_SCHEME = "likesRatingScheme";
|
||||||
@@ -277,10 +278,41 @@ var ParseArgs =
|
|||||||
path = url.templateArgs.path || "";
|
path = url.templateArgs.path || "";
|
||||||
pathNode = path.length > 0 ? rootNode.childByNamePath(path) : (pathNode || rootNode);
|
pathNode = path.length > 0 ? rootNode.childByNamePath(path) : (pathNode || rootNode);
|
||||||
if (pathNode === null)
|
if (pathNode === null)
|
||||||
|
{
|
||||||
|
// Path was not found in rootNode so a search attempt will be performed in companyHome
|
||||||
|
pathNode = path.length > 0 ? companyhome.childByNamePath(path) : null;
|
||||||
|
|
||||||
|
// At this point, if path hasn't been found yet, a site search will be executed (if path first element is a site)
|
||||||
|
if (pathNode === null)
|
||||||
|
{
|
||||||
|
if (path && path.length > 0)
|
||||||
|
{
|
||||||
|
var siteId;
|
||||||
|
var idx = path.startsWith("/") ? 1 : 0;
|
||||||
|
|
||||||
|
if (idx >= 0)
|
||||||
|
{
|
||||||
|
siteId = path.split("/")[idx];
|
||||||
|
if (siteId)
|
||||||
|
{
|
||||||
|
var siteNode = siteService.getSiteInfo(siteId);
|
||||||
|
if (siteNode !== null)
|
||||||
|
{
|
||||||
|
path = SITES_PATH + path;
|
||||||
|
pathNode = companyhome.childByNamePath(path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// If path node is still null, it wasn't possible to find it and STATUS_NOT_FOUND will be returned
|
||||||
|
if (pathNode === null)
|
||||||
{
|
{
|
||||||
status.setCode(status.STATUS_NOT_FOUND, "Path not found: '" + path + "'");
|
status.setCode(status.STATUS_NOT_FOUND, "Path not found: '" + path + "'");
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Parent location parameter adjustment
|
// Parent location parameter adjustment
|
||||||
var parentNode = null;
|
var parentNode = null;
|
||||||
|
Reference in New Issue
Block a user