index.mako 5.85 KB
Newer Older
Jonny Lamb's avatar
Jonny Lamb committed
1
2
3
# -*- coding: utf-8 -*-
<%inherit file="../base.mako"/>

Christoph Haas's avatar
Christoph Haas committed
4
<h1>${ _('Details about package "%s"') % c.package.name }</h1>
Jonny Lamb's avatar
Jonny Lamb committed
5
6
7
8

<table>
  <tr>
    <th>${ _('Name') }:</th>
9
10
11
12
13
14
15
16
17
18
19
    <td>${ c.package.name }

% for pkginfo in c.package.package_versions[0].package_info:
    % if pkginfo.data == 'Package is in Debian':

        (<a href="http://packages.qa.debian.org/?src=${ c.package.name | u }">PTS</a>)

    % endif
% endfor

    </td>
Jonny Lamb's avatar
Jonny Lamb committed
20
21
22
23
  </tr>

  <tr>
    <th>${ _('Uploader') }:</th>
24
    <td><a href="${h.url('packages-uploader', id=c.package.user.email) }">${ c.package.user.name }</a> &lt;<a href="mailto:${c.package.user.email }">${ c.package.user.email }</a>&gt;
Jonny Lamb's avatar
Jonny Lamb committed
25
26
27

% if c.config['debexpo.debian_specific'] == 'true':

28
    (<a href="http://qa.debian.org/developer.php?login=${c.package.user.email | u }">Debian QA page</a>)
Jonny Lamb's avatar
Jonny Lamb committed
29
30
31
32
33
34
35
36

% endif

    </td>
  </tr>

  <tr>
    <th>${ _('Description') }:</th>
37
    <td>${ c.package.get_description() | semitrusted}</td>
Jonny Lamb's avatar
Jonny Lamb committed
38
39
  </tr>

40
41
42
43
% if 'user_id' in c.session:

  <tr>
    <th>${ _('Subscribe') }:</th>
Jan Dittberner's avatar
Jan Dittberner committed
44
    <td><a href="${h.url('subscribe', packagename=c.package.name)}">${ _('Edit your subscription') }</a></td>
45
46
  </tr>

47
48
49
50
51

  <tr>
  <th>${ _('Needs a sponsor') }:</th>
  <td>
    % if c.package.needs_sponsor:
52
                ${  _('Yes')  }
53
    % else:
54
                ${ _('No')  }
55
  % endif
56
57
58
  % if 'user_id' in c.session and c.session['user_id'] == c.package.user_id:
    (${ h.tags.link_to(  _('Change'), h.url('sponsor', packagename=c.package.name, key=c.user.get_upload_key()))  })
  % endif
59
60
61
  </td>
  </tr>

62
63
% endif

64
65
66
67
% if 'user_id' in c.session and c.session['user_id'] == c.package.user_id:

  <tr>
    <th>${ _('Delete package') }:</th>
68
    <td>${ h.html.tags.link_to(_('Delete this package'), h.url.current(action="delete", packagename=c.package.name, key=c.user.get_upload_key()), class_="confirm") }</td>
69
70
71
72
  </tr>

% endif

Jonny Lamb's avatar
Jonny Lamb committed
73
74
75
76
</table>

<h1>${ _('Package versions') }</h1>

77
% for package_version in sorted(c.package.package_versions, key=lambda pv: pv.uploaded, reverse=True):
Jonny Lamb's avatar
Jonny Lamb committed
78

79
  <h2>Version ${ package_version.version }</h2>
Jonny Lamb's avatar
Jonny Lamb committed
80

81
  <h3>${ _('Information')}</h3>
82

Jonny Lamb's avatar
Jonny Lamb committed
83
  <table>
84
    <tr class="pkg-list">
Jonny Lamb's avatar
Jonny Lamb committed
85
      <th>${ _('Version') }:</th>
86
87
      <td>${ package_version.version }

88
% if c.config['debexpo.debian_specific'] == 'true' and c.session.get('user_id') == c.package.user_id:
89

90
  (<a href="${ h.url('rfs', packagename=c.package.name) }">${ _('View RFS template') }</a>)
91
92
93
94

% endif

      </td>
Jonny Lamb's avatar
Jonny Lamb committed
95
96
    </tr>

97
    <tr class="pkg-list">
Jonny Lamb's avatar
Jonny Lamb committed
98
      <th>${ _('Uploaded') }:</th>
99
      <td>${ package_version.uploaded.strftime("%Y-%m-%d %H:%M %Z")}</td>
Jonny Lamb's avatar
Jonny Lamb committed
100
101
102
    </tr>

    <tr>
103
      <th>${ _('Source package') }:</th>
Jonny Lamb's avatar
Jonny Lamb committed
104
105
106
107
108
109
      <td>

    % for pkgfile in package_version.source_packages[0].package_files:

        % if pkgfile.filename.endswith('.dsc'):

110
            <a href="${ c.config['debexpo.server'] }/debian/${ pkgfile.filename }">${ c.config['debexpo.server'] }/debian/${ pkgfile.filename }</a>
Jonny Lamb's avatar
Jonny Lamb committed
111

Jonny Lamb's avatar
Jonny Lamb committed
112
        % endif
Jonny Lamb's avatar
Jonny Lamb committed
113
114

    % endfor
Jonny Lamb's avatar
Jonny Lamb committed
115

Jonny Lamb's avatar
Jonny Lamb committed
116
117
118
      </td>
    </tr>

119
    <tr class="pkg-list">
Jonny Lamb's avatar
Jonny Lamb committed
120
121
122
123
      <th>${ _('Section') }:</th>
      <td>${ package_version.section }</td>
    </tr>

124
    <tr class="pkg-list">
Jonny Lamb's avatar
Jonny Lamb committed
125
      <th>${ _('Priority') }:</th>
126
      <td>${ package_version.priority }</td>
Jonny Lamb's avatar
Jonny Lamb committed
127
128
129
130
131
132
    </tr>

% if c.config['debexpo.debian_specific'] == 'true':

    % if package_version.closes is not None:

133
    <tr class="pkg-list">
Jonny Lamb's avatar
Jonny Lamb committed
134
      <th>${ _('Closes bugs') }:</th>
135
136
137
138
139
      <td>

        % for bug in package_version.closes.split():

      <a href="http://bugs.debian.org/${ bug }">${ bug }</a>
Jonny Lamb's avatar
Jonny Lamb committed
140
141

        % endfor
142
143
      </td>
    </tr>
Jonny Lamb's avatar
Jonny Lamb committed
144
145
146
147

    % endif

% endif
148
149
150
</table>

% if package_version.package_info:
151
<h3 class="qa-toplevel-header">${ _('QA information') }</h3>
Jonny Lamb's avatar
Jonny Lamb committed
152

153
<ul class="qa">
154
    ## Print result from plugins
155
156
157
158
159
    % for pkginfo in sorted(package_version.package_info, key = lambda i: i.from_plugin):
     <li class="severity-${ h.constants.PLUGIN_SEVERITY[pkginfo.severity].lower() }">
       <span class="visibility" title="${h.constants.PLUGIN_SEVERITY[pkginfo.severity]}">–</span>
       ${ pkginfo.render("html") | n }
     </li>
160
    % endfor
161
</ul>
162
% endif
Jonny Lamb's avatar
Jonny Lamb committed
163

Christoph Haas's avatar
Christoph Haas committed
164
<h3>Comments</h3>
165
166
167
168
169
170
171
172

% if len(package_version.package_comments) > 0:

  <ol>

  % for comment in package_version.package_comments:

    <li>
173
      <div>
174
        <pre>${ comment.text }</pre>
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193

% if comment.outcome == c.constants.PACKAGE_COMMENT_OUTCOME_NEEDS_WORK:

  <span style="color: red;">${ _('Needs work') }</span>

% elif comment.outcome == c.constants.PACKAGE_COMMENT_OUTCOME_PERFECT:

  <span style="color: green;">${ _('Perfect') }</span>

% endif

        <i>${ comment.user.name } at ${ comment.time }</i>

% if comment.status == c.constants.PACKAGE_COMMENT_STATUS_UPLOADED and c.config['debexpo.debian_specific'] == 'true':

  <strong>${ _('Package has been uploaded to Debian') }</strong>

% endif

194
     </div>
195
196
197
198
199
200
201
202
203
204
205
206
   </li>

  % endfor

  </ol>

% else:

<p><i>${ _('No comments') }</i></p>

% endif

207
% if 'user_id' in c.session:
208
<h4>New comment</h4>
209
${ h.html.tags.form(h.url('comment', packagename=c.package.name), method='post') }
210
211
<fieldset>
${ h.html.tags.hidden('package_version', package_version.id, id="package_version_%d" % package_version.id) }
212

213
214
215
% if hasattr(c, 'form_errors'):
    <% c.form_errors %>
% endif
216

217
218
219
<table>
    <tr>
        <td>Comment</td>
220
        <td>${ h.html.tags.textarea('text', cols=82, rows=10, id="text_%d" % package_version.id) }</td>
221
222
223
    </tr>
    <tr>
        <td>Outcome</td>
224
        <td>${ h.html.tags.select('outcome', c.constants.PACKAGE_COMMENT_OUTCOME_UNREVIEWED, c.outcomes, id="outcomes_%d" % package_version.id) }</td>
225
    </tr>
226
% if config['debexpo.debian_specific'] == 'true' and c.user.status == c.constants.USER_STATUS_DEVELOPER:
227
228
    <tr>
        <td>${ _('Uploaded to Debian') }</td>
229
        <td>${ h.html.tags.checkbox('status', id="status_%d" % package_version.id) }</td>
230
    </tr>
231
% endif
232
    <tr>
233
        <td>${ h.html.tags.submit('commit', _('Submit'), id="commit_%d" % package_version.id) }</td>
234
235
    </tr>
</table>
236
</fieldset>
237
${ h.html.tags.end_form() }
238

Jonny Lamb's avatar
Jonny Lamb committed
239

240
241
% endif

Jonny Lamb's avatar
Jonny Lamb committed
242
% endfor