Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 uid=33(www-data) gid=33(www-data) groups=33(www-data) Safe-mode: OFF (not secure) /var/www/html/queuepro/node_modules/relateurl/lib/relate/ drwxrwxr-x | |
| Viewing file: Select action/file-type: "use strict";
var findRelation = require("./findRelation");
var objUtils = require("../util/object");
var pathUtils = require("../util/path");
function absolutize(urlObj, siteUrlObj, options)
{
findRelation.upToPath(urlObj, siteUrlObj, options);
// Fill in relative URLs
if (urlObj.extra.relation.minimumScheme) urlObj.scheme = siteUrlObj.scheme;
if (urlObj.extra.relation.minimumAuth) urlObj.auth = siteUrlObj.auth;
if (urlObj.extra.relation.minimumHost) urlObj.host = objUtils.clone(siteUrlObj.host);
if (urlObj.extra.relation.minimumPort) copyPort(urlObj, siteUrlObj);
if (urlObj.extra.relation.minimumScheme) copyPath(urlObj, siteUrlObj);
// Check remaining relativeness now that path has been copied and/or resolved
findRelation.pathOn(urlObj, siteUrlObj, options);
// Fill in relative URLs
if (urlObj.extra.relation.minimumResource) copyResource(urlObj, siteUrlObj);
if (urlObj.extra.relation.minimumQuery) urlObj.query = objUtils.clone(siteUrlObj.query);
if (urlObj.extra.relation.minimumHash) urlObj.hash = siteUrlObj.hash;
}
/*
Get an absolute path that's relative to site url.
*/
function copyPath(urlObj, siteUrlObj)
{
if (urlObj.extra.relation.maximumHost || !urlObj.extra.hrefInfo.minimumResourceOnly)
{
var pathArray = urlObj.path.absolute.array;
var pathString = "/";
// If not erroneous URL
if (pathArray)
{
// If is relative path
if (urlObj.extra.hrefInfo.minimumPathOnly && urlObj.path.absolute.string.indexOf("/")!==0)
{
// Append path to site path
pathArray = siteUrlObj.path.absolute.array.concat(pathArray);
}
pathArray = pathUtils.resolveDotSegments(pathArray);
pathString += pathUtils.join(pathArray);
}
else
{
pathArray = [];
}
urlObj.path.absolute.array = pathArray;
urlObj.path.absolute.string = pathString;
}
else
{
// Resource-, query- or hash-only or empty
urlObj.path = objUtils.clone(siteUrlObj.path);
}
}
function copyPort(urlObj, siteUrlObj)
{
urlObj.port = siteUrlObj.port;
urlObj.extra.portIsDefault = siteUrlObj.extra.portIsDefault;
}
function copyResource(urlObj, siteUrlObj)
{
urlObj.resource = siteUrlObj.resource;
urlObj.extra.resourceIsIndex = siteUrlObj.extra.resourceIsIndex;
}
module.exports = absolutize;
|
:: Command execute :: | |
--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0271 ]-- |