Subversion Repositories DevTools

Rev

Rev 6952 | Rev 6970 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
6951 dpurdie 1
<%@LANGUAGE="VBSCRIPT"%>
2
<%
3
'=====================================================
4
'|                                                   |
5
'|          Edit/View Build Configuration            |
6
'|                                                   |
7
'=====================================================
8
%>
9
<%
10
Option explicit
11
' Good idea to set when using redirect
12
Response.Expires = 0   ' always load the page, dont store
13
%>
14
<!--#include file="common/conf.asp"-->
15
<!--#include file="common/globals.asp"-->
16
<!--#include file="common/formating.asp"-->
17
<!--#include file="common/qstr.asp"-->
18
<!--#include file="common/common_subs.asp"-->
19
<!--#include file="common/_form_window_common.asp"-->
20
<!--#include file="_action_buttons.asp"-->
21
<!--#include file="class/classActionButtonControl.asp"-->
22
<% '------------ ACCESS CONTROL ------------------ %>
23
<!--#include file="_access_control_login.asp"-->
24
<!--#include file="_access_control_general.asp"-->
25
<!--#include file="_access_control_action_project.asp"-->
26
<%
27
'------------ Variable Definition -------------
28
Dim parRtagId
29
'------------ Constants Declaration -----------
30
'------------ Variable Init -------------------
31
parRtagId = Request("rtag_id")
32
objPMod.PersistInQryString("rtag_id")
33
'----------------------------------------------
34
%>
35
<%
36
%>
37
<%
38
'------------ RUN BEFORE PAGE RENDER ----------
39
'----------------------------------------------------
40
' --- RUN onPostBack ---
41
If Request("action") <> "" AND objAccessControl.UserLogedIn Then
42
 
43
      If objEH.Finally Then
44
         Call OpenInWindow ( "release_config.asp?rtag_id="& parRtagId )
45
      End If
46
 
47
End If
48
'----------------------------------------------
6953 dpurdie 49
Sub InsertLocalStyle %>
50
    <style type="text/css">
51
        td.useThis:not(.useRemove) {background: url('images/i_added.gif') no-repeat center center; cursor: pointer; }
52
        td.useThis.useRemove {background: url('images/i_removed.gif') no-repeat center center; cursor: pointer; }
53
        td.drillDown {background: url('images/i_removed.gif') no-repeat center center; cursor: pointer; }
54
    </style>
55
<%End Sub
56
'----------------------------------------------
6951 dpurdie 57
Sub InsertJavaScript %>
58
      <script language="JavaScript" type="text/JavaScript">
59
      $(document).ready(function() {
60
 
61
        // Generate Row Data from JavaScript data
62
        function getPkgName ( row, type, set, meta ) {
63
          var vis = 'togglerows';
64
          if(typeof row[10] === 'undefined') {
65
            vis = 'invisible'
66
          }
67
          var img = "<img src='images/bt_plus.gif' border='0' align='absmiddle' hspace='3' class='pointer "+ vis +"'>"
68
 
69
          var hRef = "view_by_version.asp?pkg_id=" + row[2] + "&hideRipple=True" + "&fpkgversion=*" + row[5]
70
          return img + "<a href=" + hRef + ">" + row[3] + "</a>"
71
        }
72
 
73
        function getVersion ( row, type, set, meta ) {
74
          var hRef = "dependencies.asp?pv_id=" + row[0] + "&rtag_id=" + <%=parRtagId%>
75
          return "<a href=" + hRef + ">" + row[4] + "</a>"
76
        }
77
 
78
        function getNewerVersion ( row, type, set, meta ) {
79
          var hRef = "dependencies.asp?pv_id=" + row[7]
80
          return "<a href=" + hRef + ">" + row[8] + "</a>"
81
        }
82
 
6952 dpurdie 83
        // Format row of data for extended version display
84
        // Return as a tr node so that the colums can be added to the current table
85
        // and have them line up with existing columns
86
        function format(d){
87
             var rv = [];
88
             var dd = d[10];
6951 dpurdie 89
 
6952 dpurdie 90
             for (var ii in dd) {
6953 dpurdie 91
                 row = $('<tr/>').attr('data-npvid', dd[ii][0]).attr('data-pvid', d[0]);
6952 dpurdie 92
                 row.append($('<td/>').append( '' ).attr('colspan', '4'));
93
                 row.append($('<td/>').append( $('<a/>').append( dd[ii][1]).attr('href', 'dependencies.asp?pv_id=' + dd[ii][0]) ));
94
                 row.append($('<td/>').append( dd[ii][2] ));
6953 dpurdie 95
                 row.append($('<td/>').addClass('useThis'));
6952 dpurdie 96
                 rv.push(row);
97
             }
98
             return rv;
99
        }
100
 
101
        var nvTable;
102
        function loadTable() {
103
            /* Init DataTables */
104
            nvTable = $('#nvtable').DataTable({
105
                //bLengthChange : false,
106
                sDom : "rti",
107
                data : dataSet,
108
                columns : [
109
                { data : getPkgName },
6953 dpurdie 110
                { data : getVersion  , orderable : false},
6952 dpurdie 111
                { data : [1] },
112
                { data : [6] },
6953 dpurdie 113
                { data : getNewerVersion  , orderable : false, className : 'drillDown'},
6952 dpurdie 114
                { data : [9] },
6953 dpurdie 115
                { data : null, defaultContent: "", className : 'useThis' , orderable : false},
116
                ],
117
                createdRow : function( row, data, dataIndex, cells ) {
118
                    $(row).attr('data-npvid', data[7]).attr('data-pvid', data[0]);
119
                },
6952 dpurdie 120
                scrollCollapse : true,
121
                paging : false,
122
                "order": [[0,'asc']],
123
                "info": true,
124
                "columnDefs" : [ 
125
                    {className : "dt-nowrap", targets: "_all" },
126
                ],
127
            });
128
        }
129
 
130
        // Load Data once via AJAX
131
        var dataSet;
132
        $.get({
133
            url: 'rep_new_versions_json.asp',
134
            dataType : 'json',
135
            data : {
136
                   rtag_id : <%=parRtagId%>,
137
                   action : 'getData'
138
                   },
139
            success : function(data, textStatus, jqXHR){
140
                dataSet = data.aaData;
141
                loadTable();
142
            }
6953 dpurdie 143
        }).done( function(){
144
            $('#loading').remove();
6952 dpurdie 145
 
6953 dpurdie 146
        }).fail( function(jqXHR, textStatus, errorThrown){
147
                    setInfo("Error: " + errorThrown );
6951 dpurdie 148
        });
149
 
6952 dpurdie 150
 
6951 dpurdie 151
        //  Add event listener fro opening closing extended version list
152
        $('#nvtable tbody').on('click', 'img.togglerows', function () {
6953 dpurdie 153
            clearInfo();
6951 dpurdie 154
            var tr = $(this).closest('tr');
155
            var row = nvTable.row(tr);
156
 
157
            if ( row.child.isShown() ) {
158
                // This row is already open - close it
159
                row.child.hide();
160
                tr.removeClass('shown');
161
                $(this).attr('src', 'images/bt_plus.gif');
162
            }
163
            else {
164
                // Open this row
165
                row.child( format(row.data()) ).show();
166
                tr.addClass('shown');
167
                $(this).attr('src', 'images/bt_minus.gif');
168
            };
169
 
170
        });
171
 
6953 dpurdie 172
        // Add event listner to all a verion to be 'used'
173
        $('#nvtable tbody').on('click', '.useThis', function () {
174
            var tgtEl = $(this)
175
            var tr = $(this).closest('tr');
176
            var pvid = tr.data('pvid');
177
            var npvid = tr.data('npvid');
178
            var isaRemove = tgtEl.hasClass('useRemove');
179
            $("body").addClass("cursor-wait");
180
            clearInfo();
181
 
182
            $.get({
183
                url: 'rep_new_versions_json.asp',
184
                dataType : 'json',
185
                data : {
186
                       rtag_id : <%=parRtagId%>,
187
                       action : 'mergeVersion',
188
                       pv_id : pvid,
189
                       npv_id : npvid,
190
                       mode : isaRemove ? 'R' : 'A'
191
                       },
192
                success : function(data, textStatus, jqXHR){
193
                            if (data.result != 0)
194
                            {
195
                                setInfo("Error: " + (data.hasOwnProperty('emsgSummary') ? data.emsgSummary : "Reason not given"));
196
                                return;
197
                            }
198
                }
199
            }).done( function(){
200
                tgtEl.toggleClass('useRemove');
201
 
202
            }).always( function(){
203
                $("body").removeClass("cursor-wait");
204
 
205
            }).fail( function(jqXHR, textStatus, errorThrown){
206
                        setInfo("Error: " + errorThrown );
207
            });
208
 
209
 
210
        });
211
 
6952 dpurdie 212
       //  Toggle All the extended versions
213
        //  Show/Hide the ALL row togglers for rows that do not have any children
6951 dpurdie 214
 
6952 dpurdie 215
        $('#toggleAll').click(function(event){
216
            event.stopPropagation();
217
            event.stopImmediatePropagation();
6953 dpurdie 218
            clearInfo();
6951 dpurdie 219
 
6952 dpurdie 220
            var hide = $(this).hasClass('allOn');
221
            $(this).attr('src', hide ? 'images/bt_plus.gif' : 'images/bt_minus.gif');
222
 
223
            $(this).toggleClass('allOn');
224
            $('#nvtable tbody img.togglerows').each(function(idx, el){
6951 dpurdie 225
 
6952 dpurdie 226
                var tr = $(this).closest('tr');
227
                var row = nvTable.row(tr);
6951 dpurdie 228
 
6952 dpurdie 229
                if ( row.child.isShown() && hide ) {
230
                    // This row is already open - close it
231
                    row.child.hide();
232
                    tr.removeClass('shown');
233
                    $(this).attr('src', 'images/bt_plus.gif');
234
                }
6951 dpurdie 235
 
6952 dpurdie 236
                if ( ! row.child.isShown() && !hide ) {
237
                    // Open this row
238
                    row.child( format(row.data()) ).show();
239
                    tr.addClass('shown');
240
                    $(this).attr('src', 'images/bt_minus.gif');
241
                };
242
            });
243
        });
6951 dpurdie 244
 
6953 dpurdie 245
        //  Ajax Error message support
246
        function setInfo(txt) {
247
            $("#nvError").text(txt).addClass("errorPanel").show();
248
        }
249
 
250
        function clearInfo() {
251
            $("#nvError").text(" ").removeClass("errorPanel").hide();
252
        }
253
 
6952 dpurdie 254
      })
255
    </script>
256
<%End Sub
6951 dpurdie 257
'----------------------------------------------
258
Sub LeftPanelContent
259
%>
260
<fieldset class="fset" align="right" style=" border: 1px groove;">
261
   <table>
262
      <tr>
263
         <td>Left Panel Content</td>
264
      </tr>
265
   </table>
266
</fieldset>
267
<%
268
End Sub
269
 
270
Sub MainPanelContent
271
%>
272
   <div class=Panel>
273
    <div class=rounded_box_caption>New Version Report</div>
274
    <div class="rounded_box">
275
       <div class=PanelFrame>
276
            <!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->
277
            <!--#include file="messages/_msg_inline.asp"-->
278
            <!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
279
            <div class=textPanel>
280
                <table id='nvtable' width="100%" class="stdGrey">
281
                   <thead>
6952 dpurdie 282
                      <th nowrap><img id='toggleAll' src='images/bt_plus.gif' border='0' align='absmiddle' hspace='3' class='pointer'>Package Name</th>
283
                      <th nowrap>Version</th>
284
                      <th nowrap>Base View</th>
285
                      <th nowrap>Created</th>
286
                      <th nowrap>Newer Version</th>
287
                      <th nowrap>Created</th>
288
                      <th nowrap></th>
6951 dpurdie 289
                   </thead>
290
                    <tr id='loading' >
291
                        <td colspan=7 class=tcenter>
292
                            <img src='images/transparent-background-loading.gif'>
293
                        </td>
294
                   </tr>
295
              </table>
296
            </div>
6953 dpurdie 297
            <div id=nvError class='tleft err_alert'>
298
            </div>
6951 dpurdie 299
       </div>
300
    </div>
301
   </div>
302
<%
303
End Sub
304
%>
305
<html>
306
   <head>
307
      <title>Release Manager</title>
308
      <link rel="shortcut icon" href="<%=FavIcon%>"/>
309
      <meta http-equiv="Pragma" content="no-cache">
310
      <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
311
      <link rel="stylesheet" href="images/release_manager_style.css?ver=<%=VixVerNum%>" type="text/css">
312
      <link rel="stylesheet" href="images/navigation.css?ver=<%=VixVerNum%>" type="text/css">
313
      <script language="JavaScript" src="images/common.js?ver=<%=VixVerNum%>"></script>
314
      <!-- DROPDOWN MENUS -->
315
      <%bJqueryDataTables = TRUE%>
6952 dpurdie 316
      <%sJqueryDataTablesCss="jquery/dataTables.vix.grey.css"%>
6951 dpurdie 317
      <!--#include file="_jquery_includes.asp"-->
318
      <!--#include file="_menu_def.asp"-->
319
      <script language="JavaScript1.2" src="images/popup_menu.js?ver=<%=VixVerNum%>"></script>
320
      <%Call InsertJavaScript %>
6953 dpurdie 321
      <%Call InsertLocalStyle %>
6951 dpurdie 322
   </head>
323
   <body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0">
324
      <!-- HEADER -->
325
      <!--#include file="_header.asp"-->
326
      <!-- BODY ---->
327
      <table class="full_table">
328
         <tr>
329
            <td width="146px" class="bg_panel" valign="top">
330
                <%Call LeftPanelContent%>
331
            </td>
332
            <td width="100%" rowspan="2" align="center" valign="top" bgcolor="#EEEFEF">
333
                <%Call MainPanelContent%>
334
            </td>
335
         </tr>
336
         <tr>
337
            <td class="bg_panel_btm" height="350">
338
                <img src="images/release_stats.png" vspace="20" hspace="30"></td>
339
         </tr>
340
      </table>
341
      <!-- FOOTER -->
342
      <!--#include file="_footer.asp"-->
343
   </body>
344
</html>
345