Subversion Repositories DevTools

Rev

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

Rev Author Line No. Line
3872 dpurdie 1
<%
2
'=====================================================
3
'|                                                   |
6375 dpurdie 4
'|                 Files and Folders                 |
3872 dpurdie 5
'|                 Core implementation               |
6
'|                                                   |
7
'=====================================================
8
%>
9
<%
10
'------------ Variable Definition -------------
11
Dim rsTemp
12
Dim rsQry
13
Dim sLink
14
Dim sSize
6375 dpurdie 15
Dim sCompSize
3872 dpurdie 16
Dim sIcon
17
Dim parComparePvId
18
Dim parCompare
19
Dim sDiffStateIcon
20
Dim sStyle
6376 dpurdie 21
Dim sCompVerText
22
Dim sVerText
3872 dpurdie 23
'------------ Constants Declaration -----------
24
Const LIMG_UPDATED = "<img src='images/i_updated.gif' width='11' height='11' border='0' hspace='2' align='absmiddle' title='Updated'>"
25
Const LIMG_ADDED = "<img src='images/i_added.gif' width='11' height='11' border='0' hspace='2' align='absmiddle' title='Added'>"
26
Const LIMG_REMOVED = "<img src='images/i_removed.gif' width='11' height='11' border='0' hspace='2' align='absmiddle' title='Removed'>"
27
'------------ Variable Init -------------------
28
parComparePvId = Request("compare_pv_id")
29
parCompare = Request("compare")
30
'----------------------------------------------
31
If Request("btn") = "Compare" Then
6375 dpurdie 32
    parCompare = "true"
3872 dpurdie 33
End If
34
'----------------------------------------------
35
%>
6377 dpurdie 36
<script type="text/javascript" charset="utf-8">
6378 dpurdie 37
function toggleTable(dir, el)
6377 dpurdie 38
{
6378 dpurdie 39
    $('html, body').css("cursor", "wait");
40
 
41
    var dirEl = $(el).closest('.tag-isDir');
42
    var isHidden = dirEl.hasClass('tag-isHidden');
43
    //dirEl.find('img').toggleClass('display-none');
44
    dirEl.toggleClass('tag-isHidden');
45
 
46
    $('#fileList tr td:nth-child(2)').each(function(idx, item){
47
        var txt =  item.innerText;
48
        if ( txt.indexOf(dir) == 0 ) {
49
            var tr = $(item.closest('tr'));
50
            if ( isHidden ) {
51
                tr.removeClass('display-none');
52
            } else {
53
                tr.addClass('display-none');
54
            };
55
            if ( tr.hasClass('tag-isDir') ) {
56
                if ( isHidden ) {
57
                    tr.removeClass('tag-isHidden');
58
                } else {
59
                    tr.addClass('tag-isHidden');
60
                };
61
 
62
            }
63
        };
64
    });
65
    updateTableIcons();
66
    $('html, body').css("cursor", "default");
6377 dpurdie 67
}
68
 
6378 dpurdie 69
function openTableAll()
6377 dpurdie 70
{
6378 dpurdie 71
    $('#fileList tr').each(function(idx, item){
72
        $(item).removeClass('display-none');
73
        $(item).removeClass('tag-isHidden');
74
    });
75
    updateTableIcons();
76
}
77
 
78
function closeTableAll()
79
{
6377 dpurdie 80
    $('#fileList tr td:nth-child(2)').each(function(idx, item){
81
        var txt =  item.innerText;
6378 dpurdie 82
        $(item.closest('tr')).addClass('tag-isHidden');
83
        if ( txt.indexOf("/") >= 0 ) {
84
            $(item.closest('tr')).addClass('display-none');
85
        };
6377 dpurdie 86
    });
6378 dpurdie 87
    updateTableIcons();
6377 dpurdie 88
}
89
 
6378 dpurdie 90
function updateTableIcons()
91
{
92
    $("#fileList tr.tag-isDir").each(function(i, item)
93
    {
94
        var isHidden = $(item).hasClass('tag-isHidden');
95
        updateImages(item, isHidden);
96
    });
97
}
98
 
99
function updateImages(el, isHidden) {
100
    var images = $(el).find('img');
101
    if ( isHidden ) {
102
        $(images.get(0)).addClass('display-none');
103
        $(images.get(1)).removeClass('display-none');
104
    } else {
105
        $(images.get(1)).addClass('display-none');
106
        $(images.get(0)).removeClass('display-none');
107
    }
108
}
109
 
110
function tableToggleAll(el) {
111
    var mode =  $(el).hasClass('tag-hideAll'); 
112
    if (mode ) {
113
        openTableAll();
114
    } else {
115
        closeTableAll();
116
    };
117
    updateImages(el, !mode);
118
    $(el).toggleClass('tag-hideAll');
119
}
6377 dpurdie 120
</script>
3872 dpurdie 121
<%
122
'--------------------------------------------------------------------------------------------------------------------------------------
123
Sub DisplayMessage ()
6375 dpurdie 124
    If (pkgInfoHash.Item ("dlocked") = "Y") Then
125
        If (InStr(pkgInfoHash.Item ("release_notes_info"),"MSG:") > 0) Then 
126
            Select Case CStr( pkgInfoHash.Item ("release_notes_info") )
127
            Case enum_RELEASE_NOTES_GENERATING
128
                Call DisplayInfo ( "GENERATING_RELEASE_NOTES", "400" )
129
            Case enum_RELEASE_NOTES_NOT_FOUND_IN_ARCHIVE
130
                Call DisplayInfo ( "NOT_FOUND_IN_PKG_ARCHIVE_FILE_GENERATE", "400" )
131
            Case enum_RELEASE_NOTES_FAILED
132
                Call DisplayInfo ( "FAILED_GENERATING_RELEASE_NOTES", "400" )
133
            Case enum_RELEASE_NOTES_NO_PREVIOUS_VERSION
134
                Call DisplayInfo ( "NO_PREVIOUS_VERSION_RELEASE_NOTES", "400" )
4705 dpurdie 135
            Case enum_RELEASE_NOTES_PLACEHOLDER_PACKAGE
136
                Call DisplayInfo ( "RELEASE_NOTES_PLACEHOLDER_PACKAGE", "400" )
6375 dpurdie 137
            End Select
138
 
139
        ElseIf IsNull(pkgInfoHash.Item ("release_notes_info")) Then
140
            Call DisplayInfo ( "GENERATING_RELEASE_NOTES", "400" )
141
 
142
        End If
143
 
144
    End If
3872 dpurdie 145
End Sub
146
'--------------------------------------------------------------------------------------------------------------------------------------
147
Sub DisplayComparePvIdCombo()
6375 dpurdie 148
    Dim rsQry, isOfficial
149
 
6376 dpurdie 150
    sVerText = pkgInfoHash.Item("pkg_version")
151
    sCompVerText = "" 
152
 
6375 dpurdie 153
    ' Define version to compare
154
    If parComparePvId = "" Then
155
        If NOT IsNull( pkgInfoHash.Item("last_pv_id") ) Then 
156
            parComparePvId = pkgInfoHash.Item("last_pv_id")
157
        Else
158
            parComparePvId = 0
159
        End If
160
 
161
    End If
162
 
163
    OraDatabase.Parameters.Add "COMPARE_PV_ID", parComparePvId, ORAPARM_INPUT, ORATYPE_NUMBER 
164
    OraDatabase.Parameters.Add "PKG_ID",        pkgInfoHash.Item("pkg_id"), ORAPARM_INPUT, ORATYPE_NUMBER 
165
    OraDatabase.Parameters.Add "V_EXT",         EmptyToNull(pkgInfoHash.Item("v_ext")), ORAPARM_INPUT, ORATYPE_VARCHAR2 
166
 
167
    Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("AllPackageVersions.sql"), cint(0))
168
 
169
    Response.write "<option value=''></option>"
170
 
3872 dpurdie 171
    While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))
6375 dpurdie 172
 
173
        If rsQry("dlocked") = "Y" Then
174
            isOfficial = "R&nbsp;"
175
        Else
176
            isOfficial = "&nbsp;&nbsp;&nbsp;&nbsp;"
177
        End If
6376 dpurdie 178
 
179
        If rsQry("selected") <> "" Then
180
            sCompVerText = rsQry("pkg_version")
181
        End If
6375 dpurdie 182
 
183
        Response.write "<option value='"& rsQry("pv_id") &"' "& rsQry("selected") &" >"& isOfficial & rsQry("pkg_version") &"</option>"
184
 
185
        rsQry.MoveNext
3872 dpurdie 186
    WEnd
6375 dpurdie 187
 
188
    ' Clean up
189
    rsQry.Close()
190
    Set rsQry = nothing
191
 
192
    OraDatabase.Parameters.Remove "COMPARE_PV_ID"
193
    OraDatabase.Parameters.Remove "PKG_ID"
194
    OraDatabase.Parameters.Remove "V_EXT"
195
 
3872 dpurdie 196
End Sub
197
'--------------------------------------------------------------------------------------------------------------------------------------
198
Sub GetDiffStateIcon( nDiffState, outIcon, outStyle )
6375 dpurdie 199
    Select Case CInt( nDiffState )
200
        Case enumDB_NUM_DIFF_UPDATED
201
            outIcon  = LIMG_UPDATED
202
            outStyle = "body_rowbold"
203
 
204
        Case enumDB_NUM_DIFF_REMOVED
205
            outIcon = LIMG_REMOVED
206
            outStyle = "body_rowthru"
207
 
208
        Case enumDB_NUM_DIFF_NEW
209
            outIcon = LIMG_ADDED
210
            outStyle = "body_rowbold"
211
 
212
        Case Else
213
            outIcon = ""
214
            outStyle = "body_rowg"
215
    End Select
3872 dpurdie 216
End Sub
217
'--------------------------------------------------------------------------------------------------------------------------------------
218
Sub DisplayDiffSummary( orsQry )
6375 dpurdie 219
    Dim dDiffSummary
220
    Set dDiffSummary = CreateObject("Scripting.Dictionary")
221
 
222
    dDiffSummary.Item ("UPDATED") = 0
223
    dDiffSummary.Item ("REMOVED") = 0
224
    dDiffSummary.Item ("ADDED") = 0
225
 
226
    While ((NOT orsQry.BOF) AND (NOT orsQry.EOF))
227
 
228
        Select Case CInt( orsQry("diff_state") )
229
            Case enumDB_NUM_DIFF_UPDATED
230
                dDiffSummary.Item ("UPDATED") = CInt( dDiffSummary.Item ("UPDATED") ) + 1
231
 
232
            Case enumDB_NUM_DIFF_REMOVED
233
                dDiffSummary.Item ("REMOVED") = CInt( dDiffSummary.Item ("REMOVED") ) + 1
234
 
235
            Case enumDB_NUM_DIFF_NEW
236
                dDiffSummary.Item ("ADDED") = CInt( dDiffSummary.Item ("ADDED") ) + 1
237
 
238
        End Select
239
 
240
        orsQry.MoveNext
241
    WEnd
242
 
243
 
244
    ' Reset cursor
245
    orsQry.MoveFirst()
246
 
247
 
248
    ' Display Summary
249
    Response.write dDiffSummary.Item ("UPDATED") &" -<img src='images/i_updated.gif' width='11' height='11' hspace='3'>Updated, "
250
    Response.write dDiffSummary.Item ("ADDED") &" -<img src='images/i_added.gif' width='11' height='11' hspace='3'>Added, "
251
    Response.write dDiffSummary.Item ("REMOVED") &" -<img src='images/i_removed.gif' width='11' height='11' hspace='3'>Removed"
252
 
3872 dpurdie 253
End Sub
254
'--------------------------------------------------------------------------------------------------------------------------------------
255
%>
6375 dpurdie 256
    <!-- DETAILS ------------------------------------------------->
257
 
258
    <%
259
    ' -- Open Database connection
260
 
6376 dpurdie 261
    If parCompare <> "" Then
262
        OraDatabase.Parameters.Add "PV_ID", parPv_id,   ORAPARM_INPUT, ORATYPE_NUMBER 
263
        OraDatabase.Parameters.Add "COMPARE_PV_ID", parComparePvId, ORAPARM_INPUT, ORATYPE_NUMBER 
6375 dpurdie 264
 
6376 dpurdie 265
        Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ModuleComponentDiff.sql"), cint(0))
266
 
267
        OraDatabase.Parameters.Remove "PV_ID"
268
        OraDatabase.Parameters.Remove "COMPARE_PV_ID"
269
 
6375 dpurdie 270
    Else
6376 dpurdie 271
        OraDatabase.Parameters.Add "PV_ID", parPv_id,   ORAPARM_INPUT, ORATYPE_NUMBER 
6375 dpurdie 272
 
6376 dpurdie 273
        Set rsQry = OraDatabase.DbCreateDynaset( GetQuery("ModuleComponents.sql"), cint(0))
6375 dpurdie 274
 
6376 dpurdie 275
        OraDatabase.Parameters.Remove "PV_ID"
276
 
6375 dpurdie 277
    End If
6376 dpurdie 278
      '
3872 dpurdie 279
      ' If not called from a history tab then we display a dialog to allow comparison
280
      ' with another version
281
    %>
282
    <%If pkgCompare Then %>
6375 dpurdie 283
            <form name="formname" method="get" action="<%=ScriptName%>" onSubmit="ProgressBar.style.visibility='visible';">
284
            <br>                      
6376 dpurdie 285
            <span class="body_colb">Files and Folders</span><br>
286
 
287
            <%If rsQry.Recordcount > 0 Then%>
288
            <table width="100%"  border="0" cellspacing="1" cellpadding="3">
289
              <tr>
290
                <td nowrap class="body_txt">
291
                    Show differences since version
292
                    <select name="compare_pv_id" class="form_item">
293
                    <%Call DisplayComparePvIdCombo()%>
294
                    </select>
295
                    <input name="btn" type="submit" class="form_btn" value="Compare"> 
296
                    <%If parCompare <> "" Then%>
297
                    &nbsp;&nbsp;&nbsp;
298
                    <a class="form_btn" href="<%=scriptName%>?pv_id=<%=parPv_id%>&rtag_id=<%=parRtag_id%>">Show <%=sVerText%></a>
299
                    <a class="form_btn" href="<%=scriptName%>?pv_id=<%=parComparePvId%>&rtag_id=<%=parRtag_id%>">Show <%=sCompVerText%></a>
300
                    <%End If%>
301
                </td>
302
                <td nowrap class="body_txt" align="right">
303
                    <%If parCompare <> "" Then%>
304
                        <%Call DisplayDiffSummary( rsQry ) %>
305
                    <%End If%>
306
                </td>
307
              </tr>
308
            </table>
309
            <hr size="1" noshade color="#999999"> 
310
            <%End If%>                                               
3872 dpurdie 311
    <%End If%>
312
 
313
    <!-- MODULE COMPONENTS ++++++++++++++++++++++++++++++++++++++ -->
6375 dpurdie 314
 
315
 
316
        <!-- ==================================================== -->
317
        <!-- ===================  COMPARE ======================= -->
318
        <!-- ==================================================== -->
319
        <%If parCompare <> "" Then%>
320
            <%If rsQry.Recordcount > 0 Then%>
321
 
6377 dpurdie 322
            <table id="fileList" width="100%"  border="0" cellspacing="1" cellpadding="3">
6376 dpurdie 323
            <tr class="form_field_hdr">
324
              <td width="1"   rowspan="2"></td>
325
              <td width="60%" rowspan="2">Name</td>
326
              <td width="20%" colspan="2" align="center"><%=sVerText%></td>
327
              <td width="20%" colspan="2" align="center"><%=sCompVerText%></td>
6375 dpurdie 328
            </tr>
6376 dpurdie 329
            <tr class="form_field_hdr">
330
              <td align="right">Byte Size</td>
331
              <td align="right">CKSUM</td>
332
              <td align="right">Byte Size</td>
333
              <td align="right">CKSUM</td>
334
            </tr>
6375 dpurdie 335
            <%
336
            While ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) 
6376 dpurdie 337
                Dim sizeStyle : sizeStyle = ""
338
                Dim sumStyle  : sumStyle = ""
339
                Dim diffState : diffState = rsQry("diff_state")
340
                Dim sSum, sCompSum
341
                sSum = rsQry("crc_cksum")
342
                sCompSum = rsQry("comp_crc_cksum") 
343
                sSize = rsQry("byte_size")
344
                sCompSize = rsQry("comp_byte_size")
345
                Call GetDiffStateIcon( diffState, sDiffStateIcon, sStyle )
6375 dpurdie 346
 
347
                ' Find if this is file or folder
6376 dpurdie 348
                If (IsNull(sSum) AND  (sSize = 0)) OR (IsNull(sCompSum) AND (sCompSize = 0)) Then 
6375 dpurdie 349
                    sSize = ""
350
                    sCompSize = ""
351
                    sIcon = "<img src='images/rex_images/_folder.gif' border='0' hspace='3' align='absmiddle'>"
352
                Else
353
                    sSize = rsQry("byte_size")
354
                    sCompSize = rsQry("comp_byte_size")
355
                    sIcon = "<img src='images/rex_images/ext_blank.gif' border='0' hspace='3' align='absmiddle'>"
6376 dpurdie 356
 
357
                    If diffState > 1 OR (sSum <>  sCompSum) Then
358
                        sumStyle = "err_dtl"
359
                    End If
360
 
361
                    If diffState > 1 OR (sSize <> sCompSize) Then
362
                        sizeStyle = "err_dtl"
363
                    End If
364
 
6375 dpurdie 365
                End If
366
 
367
            %>
6376 dpurdie 368
            <tr class="form_item_grey">
369
              <td nowrap ><%=sDiffStateIcon%></td>
370
              <td nowrap class="<%=sStyle%>"><%=sIcon & rsQry("name")%></td>
371
              <td nowrap class="<%=sizeStyle%>" align="right"><%=sSize%></td>
372
              <td nowrap class="<%=sumStyle%>"  align="right"><%=sSum%></td>
373
              <td nowrap class="<%=sizeStyle%>" align="right"><%=sCompSize%></td>
374
              <td nowrap class="<%=sumStyle%>"  align="right"><%=sCompSum%></td>
6375 dpurdie 375
            </tr>
376
            <%
377
                rsQry.MoveNext
378
            WEnd
379
 
380
            rsQry.Close()
381
            Set rsQry = nothing
382
            %>
383
            </table><br>
384
 
385
            <%End If%>
386
        <%Else%>
387
        <!-- ==================================================== -->
388
        <!-- =================== NORMAL FILES =================== -->
389
        <!-- ==================================================== -->
6376 dpurdie 390
            <%If rsQry.Recordcount < 1 Then
391
                ' No files found ...
392
                Call DisplayMessage ()
393
            Else
6375 dpurdie 394
            %>
6377 dpurdie 395
            <table id="fileList" width="100%"  border="0" cellspacing="1" cellpadding="3">
6376 dpurdie 396
            <tr class="form_field_hdr">
6378 dpurdie 397
              <td width="1%" onclick="tableToggleAll(this)">
398
                    <img class='' src='images/rex_images/_folderopen.gif' border='0' hspace='3' align='absmiddle' title='Close all'>
399
                    <img class='display-none' src='images/rex_images/_folder.gif' border='0' hspace='3' align='absmiddle' title='Expand All'>
400
              </td>
6376 dpurdie 401
              <td width="25%" >Name</td>
402
              <td width="25%" align="right">Byte Size</td>
403
              <td width="25%" align="right">CKSUM</td>
404
              <td width="25%" align="right">MODCRC</td>
6375 dpurdie 405
            </tr>
406
            <%
6378 dpurdie 407
            Dim dClass, nextClass, altClass
408
            Dim isHidden , bFirst
6377 dpurdie 409
            Dim filePath
410
            Dim tag
6378 dpurdie 411
            Dim curDir, hiddenBase
6377 dpurdie 412
            Dim sClick
413
            dClass = ""
414
            nextClass = ""
415
            isHidden = FALSE
416
            curDir = ""
417
            sClick =  ""
418
 
6378 dpurdie 419
            Dim knownDirs : knownDirs = Array ("lcov", "doc", "utfResults" )
6377 dpurdie 420
            Dim item
421
 
422
            While ((NOT rsQry.BOF) AND (NOT rsQry.EOF))
423
                    sLink = dpkg_archiveURL & pkgInfoHash.Item ("pkg_name") &"/"& pkgInfoHash.Item ("pkg_version") &"/"& Replace( rsQry("file_path") & rsQry("file_name"), "\", "/" )
424
                    filePath = rsQry("file_path")
425
                    If IsNull(filePath) Then filePath = ""
6378 dpurdie 426
 
427
                    ' Determine if item is 'still' in hidden area
428
                    If isHidden Then
429
                        If InStr(filePath, hiddenBase) <> 1 Then
430
                            isHidden = FALSE
431
                        End If
432
                    End If
6377 dpurdie 433
 
434
                    ' Find if this is file or folder
435
                    If IsNull( rsQry("crc_cksum") )  AND  (rsQry("byte_size") = 0) Then
436
                        ' Is a folder
6378 dpurdie 437
                        curDir = filePath
438
                        dClass = "tag-isDir"
439
                         If NOT isHidden Then
440
                             For Each item in knownDirs
441
                                If filePath = item Then
442
                                    isHidden = TRUE
443
                                    hiddenBase = filePath
444
                                    bFirst = TRUE
445
                                    Exit For
446
                                End If
447
                            Next
448
                         End If
6377 dpurdie 449
 
450
                        If isHidden Then
6378 dpurdie 451
                            nextClass = "display-none"
452
                            altClass = ""
453
                        Else
454
                            altClass = "display-none"
455
                            nextClass = ""
6377 dpurdie 456
                        End If
6378 dpurdie 457
 
458
                        sIcon         = "<img class='"&nextClass&"' src='images/rex_images/_folderopen.gif' border='0' hspace='3' align='absmiddle'>"
459
                        sIcon = sIcon + "<img class='"&altClass&"' src='images/rex_images/_folder.gif' border='0' hspace='3' align='absmiddle'>"
6377 dpurdie 460
                    Else
461
                        ' Is a File
6378 dpurdie 462
                        dClass = ""
463
                        sSize = rsQry("byte_size")
464
                        sIcon = "<img src='images/rex_images/ext_blank.gif' border='0' hspace='3' align='absmiddle'>"
465
                    End If
466
 
467
                    If bFirst Then
468
                        bFirst = FALSE
469
                        dClass = dClass & " tag-isHidden"
470
                    Else
6377 dpurdie 471
                        If isHidden Then
6378 dpurdie 472
                            dClass = dClass & " display-none tag-isHidden"
6377 dpurdie 473
                        End If
6378 dpurdie 474
                    End If
6377 dpurdie 475
 
6378 dpurdie 476
                    sClick =  "onclick=""toggleTable('"& curDir & "/', this);"""
6377 dpurdie 477
 
478
                %>
479
                <tr class="<%=dClass%> form_field_grey_bg body_txt_gray">
480
                  <td nowrap <%=sClick%>><%=sIcon%></td>
481
                  <td nowrap><a target="_blank" href="<%=sLink%>" class="body_txt_gray_link"><%=filePath & rsQry("file_name")%></a></td>
482
                  <td nowrap align="right"><%=sSize%></td>
483
                  <td nowrap align="right"><%=rsQry("crc_cksum")%></td>
484
                  <td nowrap align="right"><%=rsQry("crc_modcrc")%></td>
485
                </tr>
486
                <%
6375 dpurdie 487
                rsQry.MoveNext
488
            WEnd
489
            rsQry.Close()
490
            Set rsQry = nothing
491
            %>
492
            </table><br>
493
 
494
            <%End If%>
495
        <!-- ==================================================== -->     
496
        <%End If%>      
497
 
3872 dpurdie 498
    <!-- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->   
499
    <%If pkgCompare Then %>
6375 dpurdie 500
        <input type="hidden" name="compare" value="<%=parCompare%>">
501
        <input type="hidden" name="pv_id" value="<%=parPv_Id%>">
502
        <input type="hidden" name="rtag_id" value="<%=parRtag_Id%>">
503
        </form>
504
    <%End If%>      
3872 dpurdie 505