@mikezimm/npmfunctions
Version:
Functions used in my SPFx webparts
126 lines • 5.35 kB
JavaScript
//import { getBrowser, amIOnThisWeb, getWebUrlFromLink, getUrlVars, } from './LogFunctions';
//import { getCurrentPageLink, makeListLink, makeSiteLink, } from './LogFunctions';
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.makeSiteLink = exports.makeListLink = exports.getCurrentPageLink = exports.getUrlVars = exports.getWebUrlFromLink = exports.amIOnThisWeb = exports.getBrowser = void 0;
function getBrowser(validTypes, changeSiteIcon) {
var thisBrowser = "";
return thisBrowser;
}
exports.getBrowser = getBrowser;
function amIOnThisWeb(webUrl) {
var result = false;
var ImOnThisWeb = getWebUrlFromLink(null, 'abs');
webUrl = getWebUrlFromLink(webUrl, 'abs');
if (ImOnThisWeb == webUrl) {
result = true;
}
return result;
}
exports.amIOnThisWeb = amIOnThisWeb;
function getWebUrlFromLink(SiteLink, absoluteOrRelative) {
if (!SiteLink || SiteLink === '') {
SiteLink = window.location.pathname;
}
else {
SiteLink = SiteLink + '';
}
//Remove all search parameters first
if (SiteLink.toLowerCase().indexOf('?') > 0) {
SiteLink = SiteLink.toLowerCase().substring(0, SiteLink.toLowerCase().indexOf('?'));
}
if (SiteLink.toLowerCase().indexOf('/sitepages/') > 0) {
SiteLink = SiteLink.toLowerCase().substring(0, SiteLink.toLowerCase().indexOf('/sitepages/'));
}
if (SiteLink.toLowerCase().indexOf('/documents/') > 0) {
SiteLink = SiteLink.toLowerCase().substring(0, SiteLink.toLowerCase().indexOf('/documents/'));
}
if (SiteLink.toLowerCase().indexOf('/siteassets/') > 0) {
SiteLink = SiteLink.toLowerCase().substring(0, SiteLink.toLowerCase().indexOf('/siteassets/'));
}
if (SiteLink.toLowerCase().indexOf('/lists/') > 0) {
SiteLink = SiteLink.toLowerCase().substring(0, SiteLink.toLowerCase().indexOf('/lists/'));
}
if (SiteLink.toLowerCase().indexOf('/_layouts/') > 0) {
SiteLink = SiteLink.toLowerCase().substring(0, SiteLink.toLowerCase().indexOf('/_layouts/'));
}
if (SiteLink.toLowerCase().indexOf('/forms/') > 0) {
SiteLink = SiteLink.toLowerCase().substring(0, SiteLink.toLowerCase().indexOf('/forms/'));
//Need to take up one more notch
SiteLink = SiteLink.substr(0, SiteLink.lastIndexOf('/'));
}
if (absoluteOrRelative === 'abs') {
if (SiteLink.toLowerCase().indexOf('/sites/') === 0) {
SiteLink = window.location.origin + SiteLink;
}
}
else if (absoluteOrRelative === 'rel') {
if (SiteLink.toLowerCase().indexOf(window.location.origin) === 0) {
SiteLink = SiteLink.substring(window.location.origin.length);
}
}
else {
alert('whoops.... unexpected paramter in getWebUrlFromLink: absoluteOrRelative = ' + absoluteOrRelative);
}
return SiteLink;
}
exports.getWebUrlFromLink = getWebUrlFromLink;
function getUrlVars() {
var vars = {};
if (!location.search || location.search.length === 0) {
return [];
}
vars = location.search
.slice(1)
.split('&')
.map(function (p) { return p.split('='); })
.reduce(function (obj, pair) {
var _a;
var _b = pair.map(decodeURIComponent), key = _b[0], value = _b[1];
return (__assign(__assign({}, obj), (_a = {}, _a[key] = value, _a)));
}, {});
var params = Object.keys(vars).map(function (k) { return k + '=' + vars[k]; });
return params;
}
exports.getUrlVars = getUrlVars;
function getCurrentPageLink() {
var PageURL = window.location.href;
var PageTitle = PageURL;
if (PageTitle.indexOf('?') > 0) {
PageTitle = PageTitle.substring(0, PageTitle.indexOf('?'));
} //2021-05-10: Removed -1 because page title was missing last character.
var PageLink = {
'Url': PageURL,
'Description': PageTitle.substring(PageTitle.lastIndexOf("/") + 1),
};
return PageLink;
}
exports.getCurrentPageLink = getCurrentPageLink;
function makeListLink(TargetList, webTitle) {
var targetList = !TargetList ? null : {
'Url': TargetList.indexOf('http') === 0 ? TargetList : window.location.origin + TargetList,
'Description': TargetList.replace(window.location.origin, '').replace(webTitle, '').replace(webTitle.toLowerCase(), '').replace('/lists', ''),
};
return targetList;
}
exports.makeListLink = makeListLink;
function makeSiteLink(TargetSite, webTitle) {
var targetSite = !TargetSite ? null : {
'Url': TargetSite && TargetSite.indexOf('http') === 0 ? TargetSite : window.location.origin + TargetSite,
'Description': webTitle ? webTitle : TargetSite.replace(window.location.origin, ''),
};
return targetSite;
}
exports.makeSiteLink = makeSiteLink;
//# sourceMappingURL=LogFunctions.js.map
;