/
_nodes.gsp
117 lines (107 loc) · 6.21 KB
/
_nodes.gsp
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
<%@ page import="com.dtolabs.rundeck.core.dispatcher.DataContextUtils" %><g:set var="ukey" value="${g.rkey()}"/>
<table cellpadding="0" cellspacing="0" width="100%" id="nodesTable">
<% def seen=false %>
<g:each in="${nodes.keySet().sort()}" var="nodekey" status="i">
<g:set var="nodedata" value="${nodes[nodekey]}"/>
<g:set var="node" value="${nodedata.node}"/>
<g:set var="executions" value="${nodedata.executions}"/>
<g:set var="resources" value="${nodedata.resources}"/>
<g:set var="resName" value="${node.nodename}"/>
<g:set var="resHost" value="${node.hostname}"/>
<tr class="${i%2==1?'alternateRow':''} node_entry ">
<td class="objIdent" colspan="3">
<g:if test="${expanddetail}">
<g:expander key="${ukey+'node_detail_'+i}" imgfirst="true">
<span class="node_ident" id="${ukey}_${node.nodename}_key">
<img src="${resource(dir:'images',file:'icon-small-Node.png')}" alt="Node" width="16px" height="16px"/>
${resName}
</span>
</g:expander>
</g:if>
<g:else>
<span class="node_ident" id="${ukey}_${node.nodename}_key">
<img src="${resource(dir:'images',file:'icon-small-Node.png')}" alt="Node" width="16px" height="16px"/>
${resName}
</span>
</g:else>
<g:if test="${totalexecs && totalexecs[node.nodename]}">
(${totalexecs[node.nodename]})
</g:if>
<g:if test="${!session.project}">
<span class="project">
• <span class="action textbtn" onclick="selectProject('${nodedata.project.name.encodeAsJavaScript()}');" title="Select this project">${nodedata.project.name}</span>
</span>
</g:if>
<g:if test="${node.tags}">
<span class="nodetags">
<g:each var="tag" in="${node.tags}">
<span class="tag">${tag}</span>
</g:each>
</span>
</g:if>
<span class="desc">
${node.description}
</span>
<g:if test="${node.attributes?.remoteUrl}">
<g:set var="nodecontextdata" value="${DataContextUtils.nodeData(node)}"/>
<%
nodecontextdata.project=nodedata.project.name
%>
<g:set var="remoteUrl" value="${DataContextUtils.replaceDataReferences(node.attributes?.remoteUrl,[node:nodecontextdata])}" />
<span class="action " title="Edit this node via remote URL..." onclick='doRemoteEdit("${node.nodename.encodeAsJavaScript()}","${nodedata.project.name.encodeAsJavaScript()}","${remoteUrl.encodeAsJavaScript()}");'>Edit…</span>
</g:if>
<g:elseif test="${node.attributes?.editUrl}">
<g:set var="nodecontextdata" value="${DataContextUtils.nodeData(node)}"/>
<%
nodecontextdata.project=nodedata.project.name
%>
<g:set var="editUrl" value="${DataContextUtils.replaceDataReferences(node.attributes?.editUrl,[node:nodecontextdata])}" />
<a href="${editUrl}" target="_blank" title="Opens a link to edit this node at a remote site.">Edit</a>
</g:elseif>
<g:if test="${expanddetail}">
%{--<g:link controller="reports" action="index" params="${[nodeFilter:node.nodename]}" title="View History for Node ${node.nodename}">--}%
<!--» history-->
%{--</g:link>--}%
<div id="${ukey}node_detail_${i}" class="detail_content nodedetail" style="display:none">
<g:render template="nodeDetailsSimple" model="[node:node,key:ukey+'_'+node.nodename+'_key',projects:nodedata.projects]"/>
</div>
</g:if>
<g:else>
<g:render template="nodeTooltipView" model="[node:node,key:ukey+'_'+node.nodename+'_key',includeDescription:true]"/>
</g:else>
</td>
</tr>
<g:if test="${executions}" >
<tr class="${i%2==1?'alternateRow':''} node_execs ">
<td ></td>
<td colspan="${params.simple?'1':'3'}">
<div>
<g:render template="/menu/executions" model="${[executions:executions,jobs:jobs,small:true,upref:node.nodename+'_']}"/>
</div>
</td>
</tr>
</g:if>
</g:each>
</table>
<g:javascript>
if(typeof(initTooltipForElements)=='function'){
initTooltipForElements('tr.node_entry span.node_ident');
}
</g:javascript>
<div id="remoteEditholder" style="display:none" class="popout">
<span id="remoteEditHeader">
<span class="welcomeMessage">Edit node: <g:img file="icon-small-Node.png" width="16px" height="16px"/> <span id="editNodeIdent"></span></span>
</span>
<span class="toolbar" id="remoteEditToolbar">
<span class="action " onclick="_remoteEditCompleted();" title="Close the remote edit box and discard any changes"><g:img file="icon-tiny-removex-gray.png" /> Close remote editing</span>
</span>
<div id="remoteEditResultHolder" class="info message" style="display:none">
<span id="remoteEditResultText" class="info message" >
</span>
<span class="action " onclick="_remoteEditContinue();"> Continue…</span>
</div>
<div id="remoteEditError" class="error note" style="display:none">
</div>
<div id="remoteEditTarget" >
</div>
</div>