Make relative urls work for jsfiddle

This commit is contained in:
Andreas Hocevar
2015-10-14 14:32:11 +02:00
parent 3d82da1c7e
commit 53704379fa
2 changed files with 19 additions and 4 deletions
+16 -1
View File
@@ -108,18 +108,33 @@ function augmentExamples(files, metalsmith, done) {
// add additional resources
if (file.resources) {
var resources = [];
var remoteResources = [];
var fiddleResources = [];
for (var i = 0, ii = file.resources.length; i < ii; ++i) {
var resource = file.resources[i];
var remoteResource = resource.indexOf('//') === -1 ?
'http://openlayers.org/en/v' + pkg.version + '/examples/' +
resource : resource;
fiddleResources[i] = remoteResource;
if (isJsRegEx.test(resource)) {
resources[i] = '<script src="' + resource + '"></script>';
remoteResources[i] = '<script src="' + remoteResource +
'"></script>';
} else if (isCssRegEx.test(resource)) {
resources[i] = '<link rel="stylesheet" href="' + resource + '">';
remoteResources[i] = '<link rel="stylesheet" href="' +
remoteResource + '">';
} else {
throw new Error('Invalid value for resource: ' +
resource + ' is not .js or .css: ' + filename);
}
}
file.extraHead = resources.join('\n');
file.extraHead = {
local: resources.join('\n'),
remote: remoteResources.join('\n'),
};
file.extraResources = file.resources.length ?
',' + fiddleResources.join(',') : '';
}
}
}