Skip to main content
aboutsummaryrefslogtreecommitdiffstats
blob: 7ca4fbba6b86aedd78e46d2c841662f48fdbf2a6 (plain) (blame)
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
<!-- **************************************************************************
#
# Copyright  (c) 2004-2011 Oracle Corporation.
#
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors: 
#
#    Kohsuke Kawaguchi, Anton Kozak
#        
#
#************************************************************************** --> 


<?jelly escape-by-default='true'?>
<j:jelly xmlns:j="jelly:core" xmlns:st="jelly:stapler" xmlns:d="jelly:define" xmlns:l="/lib/layout" xmlns:t="/lib/hudson" xmlns:f="/lib/form">
  <st:documentation>
    An entry of the &lt;f:form>, which is one logical row (that consists of
    several &lt;TR> tags.

    One entry normally host one control.

    <st:attribute name="title">
      Name of the entry. Think of this like a label for the control.
    </st:attribute>
    <st:attribute name="field">
      Used for the databinding. TBD. When this attribute
      is specified, @help is inferred, and nested input controls don't need
      the @field nor @name.
    </st:attribute>
    <st:attribute name="description">
      If it's not obvious to the user as to what the control expects,
      specify some description text (which currently gets rendered as
      small text under the control, but that may change.)

      This text shouldn't get too long, and in recent Hudson, this feature
      is somewhat de-emphasized, in favor of the inline foldable help page
      specified via @help.
    </st:attribute>
    <st:attribute name="isPropertyOverridden">
      if present and true - value is overridden
    </st:attribute>
    <st:attribute name="help">
      URL to the HTML page. When this attribute is specified, the entry gets
      a (?) icon on the right, and if the user clicks it, the contents of the
      given URL is rendered as a box below the entry.

      The URL should return an HTML document wrapped in a &lt;div> tag.
      The URL is interpreted to be rooted at the context path of Hudson,
      so it's normally something like "/plugin/foobar/help/abc.html".
    </st:attribute>
  </st:documentation>
  <j:if test="${attrs.help==null and attrs.field!=null}">
    <!-- infer the help page from the current descriptor and field if possible -->
    <j:set target="${attrs}" property="help"
           value="${descriptor.getHelpFile(attrs.field)}" />
  </j:if>
  <j:if test="${attrs.isPropertyOverridden==null}">
    <j:set target="${attrs}" property="isPropertyOverridden" value="false"/>
  </j:if>
  <!-- expose this so that we can look up the @field value later from prepareDatabinding.jelly -->
  <j:set var="entry" value="${attrs}" />
  <tr class="${attrs.isPropertyOverridden? 'modified': 'original'}">
    <td class="setting-leftspace"><st:nbsp/></td>
    <td class="setting-name">
      <j:out value="${attrs.title}" />
    </td>
    <td class="setting-main">
      <d:invokeBody />
    </td>
    <j:if test="${attrs.help!=null}">
      <td class="setting-help">
        <a href="#" class="help-button" helpURL="${rootURL}${attrs.help}"><img src="${imagesURL}/16x16/help.png" alt="Help for feature: ${title}" /></a>
      </td>
    </j:if>
  </tr>
  <!-- used to display the form validation error -->
  <tr class="validation-error-area"><td colspan="2" /><td /></tr>
  <j:if test="${!empty(attrs.description)}">
    <f:description isPropertyOverridden="${attrs.isPropertyOverridden}">
      <j:out value="${description}"/>
    </f:description>
  </j:if>
  <j:if test="${attrs.help!=null}">
    <f:helpArea />
  </j:if>
</j:jelly>

Back to the top