-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathmain.js
More file actions
55 lines (49 loc) · 1.49 KB
/
main.js
File metadata and controls
55 lines (49 loc) · 1.49 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
function initXKCD() {
var project = rundeckPage.project();
var para = document.createElement("div");
para.style.fontSize = "150%";
para.style.textAlign = "center";
para.style.marginBottom = "10px";
var xkcd = document.createElement("div");
xkcd.id = "xkcdfield";
para.appendChild(xkcd);
var x = jQuery(".content").prepend(para);
if(rundeckPage.path() === "menu/projectHome"){
//on any project page
jQuery.ajax({
beforeSend: function(xhr){
if (xhr.overrideMimeType)
{
xhr.overrideMimeType("application/json");
}
},
dataType: 'json',
url: url_path(rundeckPage.pluginBasei18nUrl('xkcd-ui'))+'/service/xkcdsource.json',
success: function (data) {
var imgCount = data.list.length;
var n = Math.floor(Math.random() * imgCount);
var image = data.list[n];
if(image.img){
jQuery("#xkcdfield").prepend(jQuery('<img>',{id:'xcdImg',src:image.img, title:image.alt}));
}
}
});
}
};
function url_path(baseUrl) {
if (baseUrl.indexOf('/') == 0) {
return baseUrl;
}
if (baseUrl.toLowerCase().indexOf('http') == 0) {
var len = baseUrl.indexOf('://');
if (len > 0) {
var absurl = baseUrl.substring(len + 3);
if (absurl.indexOf('/') >= 0) {
absurl = absurl.substring(absurl.indexOf('/'));
return absurl;
} else {
return '';
}
}
}
}