]> git.sur5r.net Git - bacula/bacula/blob - gui/baculum/protected/Web/Portlets/JobList.tpl
baculum: Stop using hidden fields to store item identifiers
[bacula/bacula] / gui / baculum / protected / Web / Portlets / JobList.tpl
1 <%@ MasterClass="Application.Web.Portlets.SlideWindow" %>
2 <com:TContent ID="SlideWindowContent">
3         <com:TActivePanel ID="RepeaterShow" EnableViewState="false">
4         <com:TActiveRepeater ID="Repeater" EnableViewState="false">
5                 <prop:ItemTemplate>
6                         <div data-type="item_value" rel="<%#$this->DataItem->jobid%>" class="slide-window-element">
7                                 <img src="<%=$this->getPage()->getTheme()->getBaseUrl()%>/job-icon.png" alt="" /> [<%#$this->DataItem->jobid%>] <%#$this->DataItem->name%>
8                         </div>
9                 </prop:ItemTemplate>
10         </com:TActiveRepeater>
11         </com:TActivePanel>
12         <com:TActivePanel ID="DataGridShow">
13         <com:TActiveDataGrid
14                 ID="DataGrid"
15                 EnableViewState="false"
16                 AutoGenerateColumns="false"
17                 AllowSorting="false"
18                 OnSortCommand="sortDataGrid"
19                 CellPadding="5px"
20                 CssClass="window-section-detail"
21                 ItemStyle.CssClass="slide-window-element"
22                 AlternatingItemStyle.CssClass="slide-window-element-alternating"
23         >
24                 <com:TTemplateColumn HeaderText="<input type='checkbox' name='actions_checkbox' onclick=SlideWindow.getObj('JobWindow').markAllChecked(this.checked)>" ItemStyle.HorizontalAlign="Center">
25                         <prop:ItemTemplate>
26                                 <input type="checkbox" name="actions_checkbox" value="<%=$this->getParent()->Data['jobid']%>" id="<%=$this->getPage()->JobWindow->CheckedValues->ClientID%><%=$this->getParent()->Data['jobid']%>" rel="<%=$this->getPage()->JobWindow->CheckedValues->ClientID%>" onclick="SlideWindow.getObj('JobWindow').markChecked(this.getAttribute('rel'), this.checked, this.value, true);" />
27                         </prop:ItemTemplate>
28                 </com:TTemplateColumn>
29                 <com:TActiveBoundColumn
30                         SortExpression="jobid"
31                         HeaderText="ID"
32                         DataField="jobid"
33                         ItemStyle.HorizontalAlign="Center"
34                 />
35                 <com:TActiveTemplateColumn HeaderText="<%[ Job name ]%>" SortExpression="name">
36                         <prop:ItemTemplate>
37                                 <div data-type="item_value" rel="<%=$this->getParent()->Data['jobid']%>" title="<%=$this->getParent()->Data['name']%>"><%=$this->getPage()->JobWindow->formatJobName($this->getParent()->Data['name'])%></div>
38                         </prop:ItemTemplate>
39                 </com:TActiveTemplateColumn>
40                 <com:TActiveTemplateColumn ItemTemplate="<%=isset($this->getPage()->JobWindow->jobTypes[$this->getParent()->Data['type']]) ? $this->getPage()->JobWindow->jobTypes[$this->getParent()->Data['type']] : ''%>" SortExpression="type">
41                         <prop:HeaderText>
42                                 <span title="<%=Prado::localize('Type')%>" style="cursor: help">T</span>
43                         </prop:HeaderText>
44                 </com:TActiveTemplateColumn>
45                 <com:TActiveTemplateColumn ItemTemplate="<%=array_key_exists($this->getParent()->Data['level'], $this->getPage()->JobWindow->jobLevels) ? $this->getPage()->JobWindow->jobLevels[$this->getParent()->Data['level']] : ''%>" SortExpression="level">
46                         <prop:HeaderText>
47                                 <span title="<%=Prado::localize('Level')%>" style="cursor: help">L</span>
48                         </prop:HeaderText>
49                 </com:TActiveTemplateColumn>
50                 <com:TActiveTemplateColumn HeaderText="<%[ Job status ]%>" SortExpression="jobstatus">
51                         <prop:ItemTemplate>
52                                 <div class="job-status-<%=$this->getPage()->JobWindow->getJobStatusLetter($this->getParent()->Data)%>" title="<%=$this->getPage()->JobWindow->getJobStatusDescription($this->getParent()->Data)%>"><%=$this->getPage()->JobWindow->getJobStatusValue($this->getParent()->Data)%></div>
53                         </prop:ItemTemplate>
54                 </com:TActiveTemplateColumn>
55                 <com:TActiveTemplateColumn HeaderText="<%[ Size ]%>" SortExpression="jobbytes">
56                         <prop:ItemTemplate>
57                                 <div class="size" rel="<%=$this->getParent()->Data['jobbytes']%>"><%=$this->getParent()->Data['jobbytes']%></div>
58                         </prop:ItemTemplate>
59                 </com:TActiveTemplateColumn>
60                 <com:TActiveBoundColumn SortExpression="jobfiles" HeaderText="<%[ Files ]%>" DataField="jobfiles" />
61                 <com:TActiveTemplateColumn HeaderText="<%[ End time ]%>" SortExpression="endtime">
62                         <prop:ItemTemplate>
63                                 <%=$this->getParent()->Data['endtime']%>
64                                 <%=in_array($this->getParent()->Data['jobstatus'], $this->getPage()->JobWindow->runningJobStates) ? '<img src="' . $this->getPage()->getTheme()->getBaseUrl() . '/loader-alter.gif" />' : ''%>
65                         </prop:ItemTemplate>
66                 </com:TActiveTemplateColumn>
67         </com:TActiveDataGrid>
68         <com:TActiveHiddenField ID="CheckedValues" />
69         </com:TActivePanel>
70         <com:TCallback ID="DataElementCall" OnCallback="Page.JobWindow.configure">
71                 <prop:ClientSide.OnComplete>
72                         ConfigurationWindow.getObj('JobWindow').show();
73                         ConfigurationWindow.getObj('JobWindow').progress(false);
74                         status_callback_func();
75                 </prop:ClientSide.OnComplete>
76         </com:TCallback>
77         <com:TCallback ID="RunJobCall" OnCallback="Page.JobWindow.run_again">
78                 <prop:ClientSide.OnLoading>
79                         ConfigurationWindow.getObj('JobWindow').progress(true);
80                         var img_btn = document.getElementById('run_job_again_btn');
81                         var img_src_path = img_btn.getAttribute('src').replace(/[^\/]+\S$/, '');
82                         img_btn.setAttribute('disabled', 'disabled');
83                         img_btn.setAttribute('src', img_src_path + 'loader.gif');
84                 </prop:ClientSide.OnLoading>
85                 <prop:ClientSide.OnComplete>
86                         var img_btn = document.getElementById('run_job_again_btn');
87                         var img_src_path = img_btn.getAttribute('src').replace(/[^\/]+\S$/, '');
88                         img_btn.setAttribute('src', img_src_path + 'play.png');
89                         img_btn.removeAttribute('disabled');
90                         ConfigurationWindow.getObj('JobWindow').progress(false);
91                         ConfigurationWindow.getObj('JobWindow').show();
92                         ConfigurationWindow.getObj('JobWindow').switchTabByNo(2);
93                         status_callback_func();
94                         oMonitor();
95                 </prop:ClientSide.OnComplete>
96         </com:TCallback>
97         <div class="actions_btn" style="display: none">
98                 <input type="image" id="run_job_again_btn" title="<%[ Run job again ]%>" src="<%=$this->getPage()->getTheme()->getBaseUrl()%>/play.png" onclick="return false" />
99         </div>
100 </com:TContent>