| Line 201... |
Line 201... |
| 201 |
If Request("viewtype") = "" Then Exit Sub ' Nothing to do
|
201 |
If Request("viewtype") = "" Then Exit Sub ' Nothing to do
|
| 202 |
|
202 |
|
| 203 |
Response.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("RELEASE_VIEW") = Request("viewtype")
|
203 |
Response.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("RELEASE_VIEW") = Request("viewtype")
|
| 204 |
End Sub
|
204 |
End Sub
|
| 205 |
'----------------------------------------------------------------------------------------------------------------------------------------------
|
205 |
'----------------------------------------------------------------------------------------------------------------------------------------------
|
| 206 |
Sub RenderDaemonStatusConfig(nRtagId)
|
206 |
Sub RenderDaemonStatusConfig(nRtagId)%>
|
| 207 |
%>
|
- |
|
| 208 |
<table class="embedded_table">
|
207 |
<table class="embedded_table">
|
| 209 |
<tr>
|
208 |
<tr>
|
| 210 |
<td class=nowrap>
|
209 |
<td class=nowrap>
|
| 211 |
<img src='icons/i_edit.gif' border=0 vspace=0 hspace=0 title='Configure Daemons' onclick='location.href="release_config.asp?rtag_id=<%=nRtagId%>"'>
|
210 |
<img src='icons/i_edit.gif' border=0 vspace=0 hspace=0 title='Configure Daemons' onclick='location.href="release_config.asp?rtag_id=<%=nRtagId%>"'>
|
| 212 |
<img src='icons/ext_log.gif' border=0 vspace=0 hspace=0 title='View Build Log'onclick='location.href="build_release_log.asp?rtag_id=<%=nRtagId%>"'>
|
211 |
<img src='icons/ext_log.gif' border=0 vspace=0 hspace=0 title='View Build Log'onclick='location.href="build_release_log.asp?rtag_id=<%=nRtagId%>"'>
|
| 213 |
</td>
|
- |
|
| 214 |
<td>
|
- |
|
| 215 |
<%
|
- |
|
| 216 |
Call objDmSts.RenderDaemonStatus(nRtagId,16)
|
- |
|
| 217 |
%>
|
- |
|
| 218 |
</td>
|
212 |
</td>
|
| 219 |
</tr>
|
213 |
<td>
|
| - |
|
214 |
<%Call objDmSts.RenderDaemonStatus(nRtagId,16)%>
|
| 220 |
</table>
|
215 |
</td>
|
| 221 |
<%
|
216 |
</tr>
|
| - |
|
217 |
</table>
|
| 222 |
End Sub
|
218 |
<%End Sub
|
| 223 |
|
219 |
|
| 224 |
'----------------------------------------------------------------------------------------------------------------------------------------------
|
220 |
'----------------------------------------------------------------------------------------------------------------------------------------------
|
| 225 |
Sub RenderLxrState()
|
221 |
Sub RenderLxrState()
|
| 226 |
Response.Write RenderLxrStateString(rsQry("rtag_id"),rsQry("lxr"),rsQry("lxrserver"),rsQry("official"),"")
|
222 |
Response.Write RenderLxrStateString(rsQry("rtag_id"),rsQry("lxr"),rsQry("lxrserver"),rsQry("official"),"")
|
| 227 |
End Sub
|
223 |
End Sub
|
| Line 271... |
Line 267... |
| 271 |
Set rsQryUse = Nothing
|
267 |
Set rsQryUse = Nothing
|
| 272 |
End If
|
268 |
End If
|
| 273 |
GetMassRefComments = comment
|
269 |
GetMassRefComments = comment
|
| 274 |
End Function
|
270 |
End Function
|
| 275 |
'----------------------------------------------------------------------------------------------------------------------------------------------
|
271 |
'----------------------------------------------------------------------------------------------------------------------------------------------
|
| - |
|
272 |
Sub SidePanelScript%>
|
| - |
|
273 |
<script>
|
| - |
|
274 |
var pageTriggerDelay = 0;
|
| - |
|
275 |
$(document).ready(function() {
|
| - |
|
276 |
$('#stateFilter :checkbox').click(function(){
|
| - |
|
277 |
|
| - |
|
278 |
// Force refresh when check box changes
|
| - |
|
279 |
// Delay the refesh 1 second so that multiple checkboxes can be ticked
|
| - |
|
280 |
// Restart the delay if another trigger is invoked.
|
| - |
|
281 |
|
| - |
|
282 |
$('#cbPending').show();
|
| - |
|
283 |
$('#updateForm').removeAttr('disabled');
|
| - |
|
284 |
|
| - |
|
285 |
if ( pageTriggerDelay != 0 ) {
|
| - |
|
286 |
clearTimeout(pageTriggerDelay);
|
| - |
|
287 |
pageTriggerDelay = 0;
|
| - |
|
288 |
}
|
| - |
|
289 |
|
| - |
|
290 |
// Sanity test
|
| - |
|
291 |
// If no check boxes are check - check all
|
| - |
|
292 |
//
|
| - |
|
293 |
if ($('#stateFilter input:checked').length <= 0){
|
| - |
|
294 |
jQuery.each($('#stateFilter input'),function(i,val){
|
| - |
|
295 |
$(this).prop('checked', true);
|
| - |
|
296 |
});
|
| - |
|
297 |
}
|
| - |
|
298 |
|
| - |
|
299 |
pageTriggerDelay = setTimeout(function(){
|
| - |
|
300 |
$("#updateForm" ).trigger( "click" );
|
| - |
|
301 |
}, 1000);
|
| - |
|
302 |
});
|
| - |
|
303 |
});
|
| - |
|
304 |
</script>
|
| - |
|
305 |
<%End Sub
|
| - |
|
306 |
Sub SidePanel%>
|
| - |
|
307 |
<!-- ICON STATUS and FILTER -------------------------------------->
|
| - |
|
308 |
<form name="FilterForm" method="post" action="<%=ScriptName%>">
|
| - |
|
309 |
<table id='stateFilter' width="118" border="0" align="left" style="margin-top: 38px;">
|
| - |
|
310 |
<tr class=form_field_bg>
|
| - |
|
311 |
<td width="26"><span class="body_txt">Icon</span></td>
|
| - |
|
312 |
<td width="82"><span class="body_txt">Release State </span></td>
|
| - |
|
313 |
</tr>
|
| - |
|
314 |
<tr class=form_field_grey_bg>
|
| - |
|
315 |
<td><img src="images/i_rtag_open_mode.gif" width="15" height="13"></td>
|
| - |
|
316 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_OPEN_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_OPEN_MODE)%>>Open Mode</span></td>
|
| - |
|
317 |
</tr>
|
| - |
|
318 |
<tr class=form_field_grey_bg>
|
| - |
|
319 |
<td><img src="images/i_rtag_restrictive_mode.gif" width="15" height="15"></td>
|
| - |
|
320 |
<td nowrap><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_RESTRICTIVE_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_RESTRICTIVE_MODE)%>>Restrictive Mode</span></td>
|
| - |
|
321 |
</tr>
|
| - |
|
322 |
<tr class=form_field_grey_bg>
|
| - |
|
323 |
<td><img src="images/i_rtag_ccb_mode.gif" width="15" height="15"></td>
|
| - |
|
324 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_CCB_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_CCB_MODE)%>>CCB Mode</span></td>
|
| - |
|
325 |
</tr>
|
| - |
|
326 |
<tr class=form_field_grey_bg>
|
| - |
|
327 |
<td><img src="images/i_rtag_closed_mode.gif" width="15" height="14"></td>
|
| - |
|
328 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_CLOSED_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_CLOSED_MODE)%>>Closed Mode</span></td>
|
| - |
|
329 |
</tr>
|
| - |
|
330 |
<tr class=form_field_grey_bg>
|
| - |
|
331 |
<td><img src="images/i_rtag_closed_mode_warn.gif" width="15" height="14"></td>
|
| - |
|
332 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_CLOSED_WARN%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_CLOSED_WARN)%>>Closed Aged</span></td>
|
| - |
|
333 |
</tr>
|
| - |
|
334 |
<tr class=form_field_grey_bg>
|
| - |
|
335 |
<td><img src="images/i_rtag_preserve_mode.gif" width="15" height="14"></td>
|
| - |
|
336 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_PRESERVE_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_PRESERVE_MODE)%>>Preserve Mode</span></td>
|
| - |
|
337 |
</tr>
|
| - |
|
338 |
<tr class=form_field_grey_bg>
|
| - |
|
339 |
<td><img src="images/i_rtag_archive_mode.gif" width="15" height="14"></td>
|
| - |
|
340 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_ARCHIVE_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_ARCHIVE_MODE)%>>Archive Mode</span></td>
|
| - |
|
341 |
</tr>
|
| - |
|
342 |
<%If NOT bIsaTreeView Then%>
|
| - |
|
343 |
<tr>
|
| - |
|
344 |
<td> </td>
|
| - |
|
345 |
<td><input id=updateForm name="btn" type="submit" class="form_btn" value="Update" disabled></td>
|
| - |
|
346 |
</tr>
|
| - |
|
347 |
<tr>
|
| - |
|
348 |
<td colspan=2 class='tcenter nowrap body_rowg display-none' id=cbPending> Update Pending</td>
|
| - |
|
349 |
</tr>
|
| - |
|
350 |
<%End If%>
|
| - |
|
351 |
</table>
|
| - |
|
352 |
<%=objPMod.ComposeHiddenTags()%>
|
| - |
|
353 |
<input type="hidden" name="action" value="true">
|
| - |
|
354 |
</form>
|
| - |
|
355 |
<%End Sub
|
| - |
|
356 |
'----------------------------------------------------------------------------------------------------------------------------------------------
|
| - |
|
357 |
Sub MainPanel%>
|
| - |
|
358 |
<!-- ACTION BUTTONS ---------------------------------------------->
|
| - |
|
359 |
<table width="100%" border="0" cellspacing="0" cellpadding="7" style="background-color:#DAD7C8">
|
| - |
|
360 |
<tr>
|
| - |
|
361 |
<td width="1">
|
| - |
|
362 |
<%
|
| - |
|
363 |
If bIsaTreeView Then
|
| - |
|
364 |
Response.write LIMG_TREE_VIEW
|
| - |
|
365 |
Else
|
| - |
|
366 |
Response.write LIMG_LIST_VIEW
|
| - |
|
367 |
End If
|
| - |
|
368 |
%>
|
| - |
|
369 |
</td>
|
| - |
|
370 |
<td width="100%">
|
| - |
|
371 |
<%
|
| - |
|
372 |
Dim aBtnsDef
|
| - |
|
373 |
' Define action buttons
|
| - |
|
374 |
aBtnsDef = Array("btnNewRelease", "width=5", "btnMergeManager", "width=5", "btnAdminView", "width=5", "btnNotificationView","width=5", "btnProjectReplication")
|
| - |
|
375 |
|
| - |
|
376 |
' Load action buttons from database
|
| - |
|
377 |
Call objBtnControl.LoadActionButtons ( aBtnsDef, OraDatabase )
|
| - |
|
378 |
|
| - |
|
379 |
' Set spacing to minimum between buttons
|
| - |
|
380 |
objBtnControl.ButtonSpacer = 0
|
| - |
|
381 |
objBtnControl.ImageHspace = 2
|
| - |
|
382 |
|
| - |
|
383 |
' Access Control
|
| - |
|
384 |
If NOT canActionControlInProject("CreateNewRelease") Then Call objBtnControl.Active ( "btnNewRelease", "N" )
|
| - |
|
385 |
If NOT canActionControlInProject("ConfigureRelease") Then Call objBtnControl.Active ( "btnMoveRelease", "N" )
|
| - |
|
386 |
|
| - |
|
387 |
' -- Render Buttons
|
| - |
|
388 |
Call objBtnControl.Render ( aBtnsDef, objAccessControl )
|
| - |
|
389 |
%>
|
| - |
|
390 |
</td>
|
| - |
|
391 |
</tr>
|
| - |
|
392 |
</table>
|
| - |
|
393 |
<!-- ACTION BUTTONS END ------------------------------------------>
|
| - |
|
394 |
<!-- RELEASE INFORMATION ----------------------------------------->
|
| - |
|
395 |
<table id=releaseTree width="100%" border="0" cellspacing="10" cellpadding="0">
|
| - |
|
396 |
<tr>
|
| - |
|
397 |
<td>
|
| - |
|
398 |
<!-- TREE VIEW ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
| - |
|
399 |
<%If bIsaTreeView Then%>
|
| - |
|
400 |
<table width="100%" border="0" cellspacing="1" cellpadding="1" class=stdGrey>
|
| - |
|
401 |
<thead>
|
| - |
|
402 |
<tr class='form_field_bg' style="height:21px">
|
| - |
|
403 |
<th width="25%" class="body_txt">Release Name </th>
|
| - |
|
404 |
|
| - |
|
405 |
<%If parProjId <> 2 Then %>
|
| - |
|
406 |
<th width="15%" class="body_txt">Created</th>
|
| - |
|
407 |
<th width="47%" class="body_txt">Comments</th>
|
| - |
|
408 |
<%Else%>
|
| - |
|
409 |
<th width="15%" class="body_txt">Created</th>
|
| - |
|
410 |
<th width="25%" class="body_txt">Used By </th>
|
| - |
|
411 |
<th width="22%" class="body_txt">Comments</th>
|
| - |
|
412 |
<%End If%>
|
| - |
|
413 |
<th width="1%" nowrap class="body_txt">Lxr</th>
|
| - |
|
414 |
<th width="3%" nowrap class="body_txt">Daemon Status</th>
|
| - |
|
415 |
</tr>
|
| - |
|
416 |
</thead>
|
| - |
|
417 |
<%
|
| - |
|
418 |
OraDatabase.Parameters.Add "PROJ_ID", parProjId, ORAPARM_INPUT, ORATYPE_NUMBER
|
| - |
|
419 |
OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
|
| 276 |
%>
|
420 |
|
| - |
|
421 |
Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("ReleaseVersionTree.sql") , ORADYN_DEFAULT )
|
| - |
|
422 |
lastLevel = 0
|
| 277 |
<%
|
423 |
|
| - |
|
424 |
OraDatabase.Parameters.Remove "USER_ID"
|
| - |
|
425 |
OraDatabase.Parameters.Remove "PROJ_ID"
|
| - |
|
426 |
|
| - |
|
427 |
Dim lastRtagId, parentRtag_id
|
| - |
|
428 |
|
| - |
|
429 |
If rsQry.RecordCount > 0 Then
|
| - |
|
430 |
|
| - |
|
431 |
Set objDmSts = New DaemonStatus
|
| - |
|
432 |
Call objDmSts.GetDaemonStatus(parProjId)
|
| - |
|
433 |
|
| - |
|
434 |
While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
|
| - |
|
435 |
currLevel = CInt(rsQry("hierarchy"))
|
| - |
|
436 |
createdBy = rsQry("created_stamp") & " by " & rsQry("creator")
|
| - |
|
437 |
lastMod = rsQry("lastModified")
|
| - |
|
438 |
hoverTitle = "State Last Change : "& rsQry("OFFICIAL_STAMP") & " by " & rsQry("modifier") & ". " & rsQry("OFFICIAL_STAMP_DAYS")& " Days ago" &_
|
| - |
|
439 |
" Content Last Modified: " & lastMod & ". " & rsQry("LastModified_DAYS")& " Days ago"
|
| - |
|
440 |
|
| - |
|
441 |
If rsQry("userCanDelete") = 1 Then
|
| - |
|
442 |
createdBy = createdBy & "<br>Creator can delete"
|
| - |
|
443 |
End If
|
| - |
|
444 |
|
| - |
|
445 |
%>
|
| - |
|
446 |
<tr>
|
| - |
|
447 |
<td nowrap>
|
| - |
|
448 |
<%Call RenderIndent( lastLevel, currLevel )%>
|
| - |
|
449 |
<%Call RenderActions(rsQry("rtag_id"),rsQry("official"),rsQry("userCanDelete"))%>
|
| - |
|
450 |
<a href="dependencies.asp?rtag_id=<%=rsQry("rtag_id")%>" class="body_link" >
|
| - |
|
451 |
<%=ReleaseIcon( rsQry("official") )%> <%=rsQry("rtag_name")%></a>
|
| - |
|
452 |
</td>
|
| - |
|
453 |
<td nowrap valign=top title="<%=hoverTitle%>"><img src="icons/s_note.gif" height="10" width="10" > </img><%=createdBy%>
|
| - |
|
454 |
<%
|
| - |
|
455 |
If parProjId = 2 Then
|
| - |
|
456 |
comment = GetMassRefComments(rsQry("rtag_id"))
|
| - |
|
457 |
If comment = "" Then comment = "None."
|
| - |
|
458 |
%>
|
| - |
|
459 |
<td><%=comment%></td>
|
| - |
|
460 |
<%End If%>
|
| - |
|
461 |
|
| - |
|
462 |
<td><%=NewLine_To_BR(rsQry("description"))%></td>
|
| - |
|
463 |
<td nowrap valign="top"><%Call RenderLxrState() %></td>
|
| - |
|
464 |
<td valign="top"><%Call RenderDaemonStatusConfig(rsQry("rtag_id"))%></td>
|
| - |
|
465 |
</tr>
|
| - |
|
466 |
<%
|
| - |
|
467 |
lastLevel = currLevel
|
| - |
|
468 |
rsQry.MoveNext
|
| - |
|
469 |
WEnd
|
| - |
|
470 |
Set objDmSts = Nothing
|
| - |
|
471 |
End If
|
| - |
|
472 |
rsQry.Close
|
| - |
|
473 |
Set rsQry = Nothing
|
| - |
|
474 |
%>
|
| - |
|
475 |
</table>
|
| - |
|
476 |
<!-- LIST VIEW ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
| - |
|
477 |
<%Else%>
|
| - |
|
478 |
<table width="100%" border="0" cellspacing="1" cellpadding="1" class='stdGrey'>
|
| - |
|
479 |
<thead>
|
| - |
|
480 |
<tr'>
|
| - |
|
481 |
<th width="1%"> </th>
|
| - |
|
482 |
<th width="20%" >Release Name </th>
|
| - |
|
483 |
<th width="10%" >Created</th>
|
| - |
|
484 |
<%If parProjId <> 2 Then %>
|
| - |
|
485 |
<th width="47%" >Comments</th>
|
| - |
|
486 |
<%Else%>
|
| - |
|
487 |
<th width="24%" >Used By </th>
|
| - |
|
488 |
<th width="22%" >Comments</th>
|
| - |
|
489 |
<%End If%>
|
| - |
|
490 |
<th width="1%" title="LXR Support enabled">Lxr</th>
|
| - |
|
491 |
<th width="3%">Daemon Status</th>
|
| - |
|
492 |
</tr>
|
| - |
|
493 |
</thead>
|
| - |
|
494 |
<%
|
| - |
|
495 |
OraDatabase.Parameters.Add "PROJ_ID", parProjId, ORAPARM_INPUT, ORATYPE_NUMBER
|
| - |
|
496 |
OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
|
| - |
|
497 |
|
| - |
|
498 |
rsQryStr = GetQuery ("ReleaseVersionList.sql")
|
| - |
|
499 |
rsQryStr = Replace(rsQryStr, "/*SHOW_FILTER*/", parShowFilter)
|
| - |
|
500 |
|
| - |
|
501 |
Set rsQry = OraDatabase.DbCreateDynaset( rsQryStr, ORADYN_DEFAULT )
|
| - |
|
502 |
|
| - |
|
503 |
OraDatabase.Parameters.Remove "USER_ID"
|
| - |
|
504 |
OraDatabase.Parameters.Remove "PROJ_ID"
|
| - |
|
505 |
|
| - |
|
506 |
If rsQry.RecordCount > 0 Then
|
| - |
|
507 |
|
| - |
|
508 |
Set objDmSts = New DaemonStatus
|
| - |
|
509 |
Call objDmSts.GetDaemonStatus(parProjId)
|
| - |
|
510 |
|
| - |
|
511 |
While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
|
| - |
|
512 |
createdBy = rsQry("created_stamp") & " by " & rsQry("creator")
|
| - |
|
513 |
lastMod = rsQry("LastModified")
|
| - |
|
514 |
hoverTitle = "State Last Change : "& rsQry("OFFICIAL_STAMP") & " by " & rsQry("modifier") & ". " & rsQry("OFFICIAL_STAMP_DAYS")& " Days ago" &_
|
| - |
|
515 |
" Content Last Modified: " & lastMod & ". " & rsQry("LastModified_DAYS")& " Days ago"
|
| - |
|
516 |
If rsQry("userCanDelete") = 1 Then
|
| - |
|
517 |
createdBy = createdBy & "<br>Creator can delete"
|
| - |
|
518 |
End If
|
| - |
|
519 |
|
| - |
|
520 |
%>
|
| - |
|
521 |
<tr>
|
| - |
|
522 |
<td valign="top">
|
| - |
|
523 |
<%Call RenderActions(rsQry("rtag_id"),rsQry("official"),rsQry("userCanDelete"))%>
|
| - |
|
524 |
</td>
|
| - |
|
525 |
<td nowrap valign="top">
|
| - |
|
526 |
<a href="dependencies.asp?rtag_id=<%=rsQry("rtag_id")%>" class="body_link" >
|
| - |
|
527 |
<%=ReleaseIcon( rsQry("official"))%> <%=rsQry("rtag_name")%></a>
|
| - |
|
528 |
</td>
|
| - |
|
529 |
<td nowrap valign=top title="<%=hoverTitle%>"><img src="icons/s_note.gif" height="10" width="10" > </img><%=createdBy%>
|
| - |
|
530 |
<%
|
| - |
|
531 |
If parProjId = 2 Then
|
| - |
|
532 |
comment = GetMassRefComments(rsQry("rtag_id"))
|
| - |
|
533 |
If comment = "" Then comment = "None."
|
| - |
|
534 |
%>
|
| - |
|
535 |
<td><%=comment%></td>
|
| - |
|
536 |
<%End If%>
|
| - |
|
537 |
<td><%=NewLine_To_BR( rsQry("description") )%></td>
|
| - |
|
538 |
<td nowrap valign="top"><%Call RenderLxrState() %></td>
|
| - |
|
539 |
<td valign="top"><%Call RenderDaemonStatusConfig(rsQry("rtag_id"))%>
|
| - |
|
540 |
</td>
|
| - |
|
541 |
</tr>
|
| - |
|
542 |
<%
|
| - |
|
543 |
rsQry.MoveNext
|
| - |
|
544 |
WEnd
|
| - |
|
545 |
Set objDmSts = Nothing
|
| - |
|
546 |
End If
|
| - |
|
547 |
rsQry.Close
|
| - |
|
548 |
Set rsQry = Nothing
|
| - |
|
549 |
%>
|
| - |
|
550 |
</table>
|
| - |
|
551 |
<%End If%>
|
| - |
|
552 |
<!-- LIST VIEW END ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
| - |
|
553 |
<!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
| - |
|
554 |
<!--#include file="messages/_msg_inline.asp"-->
|
| - |
|
555 |
<!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
| - |
|
556 |
</td>
|
| - |
|
557 |
</tr>
|
| - |
|
558 |
</table>
|
| - |
|
559 |
|
| - |
|
560 |
<%End Sub
|
| 278 |
'------------ RUN BEFORE PAGE RENDER ----------
|
561 |
'------------ RUN BEFORE PAGE RENDER ----------
|
| 279 |
If (Request("action") <> "") Then
|
562 |
If (Request("action") <> "") Then
|
| 280 |
|
563 |
|
| 281 |
If Request("btn") = "Update" Then
|
564 |
If Request("btn") = "Update" Then
|
| 282 |
' Store filter in cookie
|
565 |
' Store filter in cookie
|
| 283 |
Response.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("show_filter") = Request("listFilter")
|
566 |
Response.Cookies (COOKIE_RELEASE_MANAGER_MEMORY)("show_filter") = Request("listFilter")
|
| - |
|
567 |
|
| - |
|
568 |
' Redirect to the current page so that a refesh will not ' cause a form re-submit.
|
| 284 |
parShowFilter = Request("listFilter")
|
569 |
Call Destroy_All_Objects
|
| 285 |
If IsNull(parShowFilter) OR parShowFilter = "" Then parShowFilter = DEFAULT_SHOW_FILTER
|
570 |
Response.Redirect(ScriptName & "?proj_id=" & parProjId)
|
| 286 |
End If
|
571 |
End If
|
| 287 |
|
572 |
|
| 288 |
End If
|
573 |
End If
|
| 289 |
|
574 |
|
| 290 |
' Set view type if required
|
575 |
' Set view type if required
|
| Line 319... |
Line 604... |
| 319 |
<!-- Dropdown action menu scripts -->
|
604 |
<!-- Dropdown action menu scripts -->
|
| 320 |
<style>
|
605 |
<style>
|
| 321 |
.ui-menu { position: absolute; }
|
606 |
.ui-menu { position: absolute; }
|
| 322 |
</style>
|
607 |
</style>
|
| 323 |
<!--#include file="_jquery_includes.asp"-->
|
608 |
<!--#include file="_jquery_includes.asp"-->
|
| - |
|
609 |
<%Call SidePanelScript%>
|
| 324 |
<script>
|
610 |
<script>
|
| 325 |
$(function() {
|
611 |
$(function() {
|
| 326 |
// Global menu data structure
|
612 |
// Global menu data structure
|
| 327 |
// Persist between invocations of the menu
|
613 |
// Persist between invocations of the menu
|
| 328 |
// Used to mergeLeft rtagid
|
614 |
// Used to mergeLeft rtagid
|
| Line 568... |
Line 854... |
| 568 |
// Prevent propagation of event
|
854 |
// Prevent propagation of event
|
| 569 |
return false;
|
855 |
return false;
|
| 570 |
});
|
856 |
});
|
| 571 |
});
|
857 |
});
|
| 572 |
</script>
|
858 |
</script>
|
| 573 |
|
- |
|
| 574 |
</head>
|
859 |
</head>
|
| 575 |
<body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0" >
|
860 |
<body bgcolor="#FFFFFF" text="#000000" leftmargin="0" topmargin="0" >
|
| 576 |
<!-- HEADER -->
|
861 |
<!-- HEADER -->
|
| 577 |
<!--#include file="_header.asp"-->
|
862 |
<!--#include file="_header.asp"-->
|
| 578 |
<!-- BODY ---->
|
863 |
<!-- BODY ---->
|
| 579 |
<%Call GetListFilterValues ( dListFilter )%>
|
864 |
<%Call GetListFilterValues ( dListFilter )%>
|
| 580 |
<form name="FormName" method="post" action="<%=ScriptName%>">
|
- |
|
| 581 |
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
865 |
<table width="100%" border="0" cellspacing="0" cellpadding="0">
|
| 582 |
<tr>
|
866 |
<tr>
|
| 583 |
<td class='bg_panel'>
|
867 |
<td class='bg_panel'>
|
| 584 |
<!-- ICON STATUS and FILTER -------------------------------------->
|
- |
|
| 585 |
<table width="118" border="0" align="left" style="margin-top: 38px;">
|
- |
|
| 586 |
<tr class=form_field_bg>
|
- |
|
| 587 |
<td width="26"><span class="body_txt">Icon</span></td>
|
- |
|
| 588 |
<td width="82"><span class="body_txt">Release State </span></td>
|
- |
|
| 589 |
</tr>
|
- |
|
| 590 |
<tr class=form_field_grey_bg>
|
- |
|
| 591 |
<td><img src="images/i_rtag_open_mode.gif" width="15" height="13"></td>
|
- |
|
| 592 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_OPEN_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_OPEN_MODE)%>>Open Mode</span></td>
|
- |
|
| 593 |
</tr>
|
- |
|
| 594 |
<tr class=form_field_grey_bg>
|
- |
|
| 595 |
<td><img src="images/i_rtag_restrictive_mode.gif" width="15" height="15"></td>
|
- |
|
| 596 |
<td nowrap><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_RESTRICTIVE_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_RESTRICTIVE_MODE)%>>Restrictive Mode</span></td>
|
- |
|
| 597 |
</tr>
|
- |
|
| 598 |
<tr class=form_field_grey_bg>
|
- |
|
| 599 |
<td><img src="images/i_rtag_ccb_mode.gif" width="15" height="15"></td>
|
- |
|
| 600 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_CCB_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_CCB_MODE)%>>CCB Mode</span></td>
|
- |
|
| 601 |
</tr>
|
- |
|
| 602 |
<tr class=form_field_grey_bg>
|
- |
|
| 603 |
<td><img src="images/i_rtag_closed_mode.gif" width="15" height="14"></td>
|
- |
|
| 604 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_CLOSED_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_CLOSED_MODE)%>>Closed Mode</span></td>
|
- |
|
| 605 |
</tr>
|
- |
|
| 606 |
<tr class=form_field_grey_bg>
|
- |
|
| 607 |
<td><img src="images/i_rtag_closed_mode_warn.gif" width="15" height="14"></td>
|
- |
|
| 608 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_CLOSED_WARN%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_CLOSED_WARN)%>>Closed Aged</span></td>
|
- |
|
| 609 |
</tr>
|
- |
|
| 610 |
<tr class=form_field_grey_bg>
|
- |
|
| 611 |
<td><img src="images/i_rtag_preserve_mode.gif" width="15" height="14"></td>
|
- |
|
| 612 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_PRESERVE_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_PRESERVE_MODE)%>>Preserve Mode</span></td>
|
- |
|
| 613 |
</tr>
|
- |
|
| 614 |
<tr class=form_field_grey_bg>
|
- |
|
| 615 |
<td><img src="images/i_rtag_archive_mode.gif" width="15" height="14"></td>
|
- |
|
| 616 |
<td><span class="body_txt"><input name="listFilter" type="checkbox" value="'<%=enumDB_RELEASE_IN_ARCHIVE_MODE%>'" <%=GetIsListFilterChecked(enumDB_RELEASE_IN_ARCHIVE_MODE)%>>Archive Mode</span></td>
|
- |
|
| 617 |
</tr>
|
- |
|
| 618 |
<%If NOT bIsaTreeView Then%>
|
- |
|
| 619 |
<tr>
|
- |
|
| 620 |
<td> </td>
|
- |
|
| 621 |
<td><input name="btn" type="submit" class="form_btn" value="Update"></td>
|
- |
|
| 622 |
</tr>
|
- |
|
| 623 |
<%End If%>
|
868 |
<%Call SidePanel%>
|
| 624 |
</table>
|
- |
|
| 625 |
</td>
|
869 |
</td>
|
| 626 |
<td rowspan="2" valign="top" width="100%">
|
870 |
<td rowspan="2" valign="top" width="100%">
|
| 627 |
<!-- ACTION BUTTONS ---------------------------------------------->
|
- |
|
| 628 |
<table width="100%" border="0" cellspacing="0" cellpadding="7" style="background-color:#DAD7C8">
|
- |
|
| 629 |
<tr>
|
- |
|
| 630 |
<td width="1">
|
- |
|
| 631 |
<%
|
- |
|
| 632 |
If bIsaTreeView Then
|
- |
|
| 633 |
Response.write LIMG_TREE_VIEW
|
- |
|
| 634 |
Else
|
- |
|
| 635 |
Response.write LIMG_LIST_VIEW
|
- |
|
| 636 |
End If
|
- |
|
| 637 |
%>
|
- |
|
| 638 |
</td>
|
- |
|
| 639 |
<td width="100%">
|
- |
|
| 640 |
<%
|
- |
|
| 641 |
Dim aBtnsDef
|
- |
|
| 642 |
' Define action buttons
|
- |
|
| 643 |
aBtnsDef = Array("btnNewRelease", "width=5", "btnMergeManager", "width=5", "btnAdminView", "width=5", "btnNotificationView","width=5", "btnProjectReplication")
|
- |
|
| 644 |
|
- |
|
| 645 |
' Load action buttons from database
|
- |
|
| 646 |
Call objBtnControl.LoadActionButtons ( aBtnsDef, OraDatabase )
|
- |
|
| 647 |
|
- |
|
| 648 |
' Set spacing to minimum between buttons
|
- |
|
| 649 |
objBtnControl.ButtonSpacer = 0
|
- |
|
| 650 |
objBtnControl.ImageHspace = 2
|
- |
|
| 651 |
|
- |
|
| 652 |
' Access Control
|
- |
|
| 653 |
If NOT canActionControlInProject("CreateNewRelease") Then Call objBtnControl.Active ( "btnNewRelease", "N" )
|
- |
|
| 654 |
If NOT canActionControlInProject("ConfigureRelease") Then Call objBtnControl.Active ( "btnMoveRelease", "N" )
|
- |
|
| 655 |
|
- |
|
| 656 |
' -- Render Buttons
|
- |
|
| 657 |
Call objBtnControl.Render ( aBtnsDef, objAccessControl )
|
- |
|
| 658 |
%>
|
- |
|
| 659 |
</td>
|
- |
|
| 660 |
</tr>
|
- |
|
| 661 |
</table>
|
- |
|
| 662 |
<!-- ACTION BUTTONS END ------------------------------------------>
|
- |
|
| 663 |
<!-- RELEASE INFORMATION ----------------------------------------->
|
- |
|
| 664 |
<table id=releaseTree width="100%" border="0" cellspacing="10" cellpadding="0">
|
- |
|
| 665 |
<tr>
|
- |
|
| 666 |
<td>
|
- |
|
| 667 |
<!-- TREE VIEW ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
- |
|
| 668 |
<%If bIsaTreeView Then%>
|
- |
|
| 669 |
<table width="100%" border="0" cellspacing="1" cellpadding="1" class=stdGrey>
|
- |
|
| 670 |
<thead>
|
- |
|
| 671 |
<tr class='form_field_bg' style="height:21px">
|
- |
|
| 672 |
<th width="25%" class="body_txt">Release Name </th>
|
- |
|
| 673 |
|
- |
|
| 674 |
<%If parProjId <> 2 Then %>
|
- |
|
| 675 |
<th width="15%" class="body_txt">Created</th>
|
- |
|
| 676 |
<th width="47%" class="body_txt">Comments</th>
|
- |
|
| 677 |
<%Else%>
|
- |
|
| 678 |
<th width="15%" class="body_txt">Created</th>
|
- |
|
| 679 |
<th width="25%" class="body_txt">Used By </th>
|
- |
|
| 680 |
<th width="22%" class="body_txt">Comments</th>
|
- |
|
| 681 |
<%End If%>
|
- |
|
| 682 |
<th width="1%" nowrap class="body_txt">Lxr</th>
|
- |
|
| 683 |
<th width="3%" nowrap class="body_txt">Daemon Status</th>
|
- |
|
| 684 |
</tr>
|
- |
|
| 685 |
</thead>
|
- |
|
| 686 |
<%
|
- |
|
| 687 |
OraDatabase.Parameters.Add "PROJ_ID", parProjId, ORAPARM_INPUT, ORATYPE_NUMBER
|
- |
|
| 688 |
OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
|
- |
|
| 689 |
|
- |
|
| 690 |
Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("ReleaseVersionTree.sql") , ORADYN_DEFAULT )
|
- |
|
| 691 |
lastLevel = 0
|
- |
|
| 692 |
|
- |
|
| 693 |
OraDatabase.Parameters.Remove "USER_ID"
|
- |
|
| 694 |
OraDatabase.Parameters.Remove "PROJ_ID"
|
- |
|
| 695 |
|
- |
|
| 696 |
Dim lastRtagId, parentRtag_id
|
- |
|
| 697 |
|
- |
|
| 698 |
If rsQry.RecordCount > 0 Then
|
- |
|
| 699 |
|
- |
|
| 700 |
Set objDmSts = New DaemonStatus
|
- |
|
| 701 |
Call objDmSts.GetDaemonStatus(parProjId)
|
- |
|
| 702 |
|
- |
|
| 703 |
While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
|
- |
|
| 704 |
currLevel = CInt(rsQry("hierarchy"))
|
- |
|
| 705 |
createdBy = rsQry("created_stamp") & " by " & rsQry("creator")
|
- |
|
| 706 |
lastMod = rsQry("lastModified")
|
- |
|
| 707 |
hoverTitle = "State Last Change : "& rsQry("OFFICIAL_STAMP") & " by " & rsQry("modifier") & ". " & rsQry("OFFICIAL_STAMP_DAYS")& " Days ago" &_
|
- |
|
| 708 |
" Content Last Modified: " & lastMod & ". " & rsQry("LastModified_DAYS")& " Days ago"
|
- |
|
| 709 |
|
- |
|
| 710 |
If rsQry("userCanDelete") = 1 Then
|
- |
|
| 711 |
createdBy = createdBy & "<br>Creator can delete"
|
- |
|
| 712 |
End If
|
- |
|
| 713 |
|
- |
|
| 714 |
%>
|
- |
|
| 715 |
<tr>
|
- |
|
| 716 |
<td nowrap>
|
- |
|
| 717 |
<%Call RenderIndent( lastLevel, currLevel )%>
|
- |
|
| 718 |
<%Call RenderActions(rsQry("rtag_id"),rsQry("official"),rsQry("userCanDelete"))%>
|
- |
|
| 719 |
<a href="dependencies.asp?rtag_id=<%=rsQry("rtag_id")%>" class="body_link" >
|
- |
|
| 720 |
<%=ReleaseIcon( rsQry("official") )%> <%=rsQry("rtag_name")%></a>
|
- |
|
| 721 |
</td>
|
- |
|
| 722 |
<td nowrap valign=top title="<%=hoverTitle%>"><img src="icons/s_note.gif" height="10" width="10" > </img><%=createdBy%>
|
- |
|
| 723 |
<%
|
- |
|
| 724 |
If parProjId = 2 Then
|
- |
|
| 725 |
comment = GetMassRefComments(rsQry("rtag_id"))
|
- |
|
| 726 |
If comment = "" Then comment = "None."
|
- |
|
| 727 |
%>
|
- |
|
| 728 |
<td><%=comment%></td>
|
- |
|
| 729 |
<%End If%>
|
- |
|
| 730 |
|
- |
|
| 731 |
<td><%=NewLine_To_BR(rsQry("description"))%></td>
|
- |
|
| 732 |
<td nowrap valign="top"><%Call RenderLxrState() %></td>
|
- |
|
| 733 |
<td valign="top"><%Call RenderDaemonStatusConfig(rsQry("rtag_id"))%></td>
|
- |
|
| 734 |
</tr>
|
- |
|
| 735 |
<%
|
- |
|
| 736 |
lastLevel = currLevel
|
- |
|
| 737 |
rsQry.MoveNext
|
- |
|
| 738 |
WEnd
|
- |
|
| 739 |
Set objDmSts = Nothing
|
- |
|
| 740 |
End If
|
- |
|
| 741 |
rsQry.Close
|
- |
|
| 742 |
Set rsQry = Nothing
|
- |
|
| 743 |
%>
|
- |
|
| 744 |
</table>
|
- |
|
| 745 |
<!-- LIST VIEW ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
- |
|
| 746 |
<%Else%>
|
871 |
<%Call MainPanel%>
|
| 747 |
<table width="100%" border="0" cellspacing="1" cellpadding="1" class='stdGrey'>
|
- |
|
| 748 |
<thead>
|
- |
|
| 749 |
<tr'>
|
- |
|
| 750 |
<th width="1%"> </th>
|
- |
|
| 751 |
<th width="20%" >Release Name </th>
|
- |
|
| 752 |
<th width="10%" >Created</th>
|
- |
|
| 753 |
<%If parProjId <> 2 Then %>
|
- |
|
| 754 |
<th width="47%" >Comments</th>
|
- |
|
| 755 |
<%Else%>
|
- |
|
| 756 |
<th width="24%" >Used By </th>
|
- |
|
| 757 |
<th width="22%" >Comments</th>
|
- |
|
| 758 |
<%End If%>
|
- |
|
| 759 |
<th width="1%" title="LXR Support enabled">Lxr</th>
|
- |
|
| 760 |
<th width="3%">Daemon Status</th>
|
- |
|
| 761 |
</tr>
|
- |
|
| 762 |
</thead>
|
- |
|
| 763 |
<%
|
- |
|
| 764 |
OraDatabase.Parameters.Add "PROJ_ID", parProjId, ORAPARM_INPUT, ORATYPE_NUMBER
|
- |
|
| 765 |
OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
|
- |
|
| 766 |
|
- |
|
| 767 |
rsQryStr = GetQuery ("ReleaseVersionList.sql")
|
- |
|
| 768 |
rsQryStr = Replace(rsQryStr, "/*SHOW_FILTER*/", parShowFilter)
|
- |
|
| 769 |
|
- |
|
| 770 |
Set rsQry = OraDatabase.DbCreateDynaset( rsQryStr, ORADYN_DEFAULT )
|
- |
|
| 771 |
|
- |
|
| 772 |
OraDatabase.Parameters.Remove "USER_ID"
|
- |
|
| 773 |
OraDatabase.Parameters.Remove "PROJ_ID"
|
- |
|
| 774 |
|
- |
|
| 775 |
If rsQry.RecordCount > 0 Then
|
- |
|
| 776 |
|
- |
|
| 777 |
Set objDmSts = New DaemonStatus
|
- |
|
| 778 |
Call objDmSts.GetDaemonStatus(parProjId)
|
- |
|
| 779 |
|
- |
|
| 780 |
While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
|
- |
|
| 781 |
createdBy = rsQry("created_stamp") & " by " & rsQry("creator")
|
- |
|
| 782 |
lastMod = rsQry("LastModified")
|
- |
|
| 783 |
hoverTitle = "State Last Change : "& rsQry("OFFICIAL_STAMP") & " by " & rsQry("modifier") & ". " & rsQry("OFFICIAL_STAMP_DAYS")& " Days ago" &_
|
- |
|
| 784 |
" Content Last Modified: " & lastMod & ". " & rsQry("LastModified_DAYS")& " Days ago"
|
- |
|
| 785 |
If rsQry("userCanDelete") = 1 Then
|
- |
|
| 786 |
createdBy = createdBy & "<br>Creator can delete"
|
- |
|
| 787 |
End If
|
- |
|
| 788 |
|
- |
|
| 789 |
%>
|
- |
|
| 790 |
<tr>
|
- |
|
| 791 |
<td valign="top">
|
- |
|
| 792 |
<%Call RenderActions(rsQry("rtag_id"),rsQry("official"),rsQry("userCanDelete"))%>
|
- |
|
| 793 |
</td>
|
- |
|
| 794 |
<td nowrap valign="top">
|
- |
|
| 795 |
<a href="dependencies.asp?rtag_id=<%=rsQry("rtag_id")%>" class="body_link" >
|
- |
|
| 796 |
<%=ReleaseIcon( rsQry("official"))%> <%=rsQry("rtag_name")%></a>
|
- |
|
| 797 |
</td>
|
- |
|
| 798 |
<td nowrap valign=top title="<%=hoverTitle%>"><img src="icons/s_note.gif" height="10" width="10" > </img><%=createdBy%>
|
- |
|
| 799 |
<%
|
- |
|
| 800 |
If parProjId = 2 Then
|
- |
|
| 801 |
comment = GetMassRefComments(rsQry("rtag_id"))
|
- |
|
| 802 |
If comment = "" Then comment = "None."
|
- |
|
| 803 |
%>
|
- |
|
| 804 |
<td><%=comment%></td>
|
- |
|
| 805 |
<%End If%>
|
- |
|
| 806 |
<td><%=NewLine_To_BR( rsQry("description") )%></td>
|
- |
|
| 807 |
<td nowrap valign="top"><%Call RenderLxrState() %></td>
|
- |
|
| 808 |
<td valign="top"><%Call RenderDaemonStatusConfig(rsQry("rtag_id"))%>
|
- |
|
| 809 |
</td>
|
- |
|
| 810 |
</tr>
|
- |
|
| 811 |
<%
|
- |
|
| 812 |
rsQry.MoveNext
|
- |
|
| 813 |
WEnd
|
- |
|
| 814 |
Set objDmSts = Nothing
|
- |
|
| 815 |
End If
|
- |
|
| 816 |
rsQry.Close
|
- |
|
| 817 |
Set rsQry = Nothing
|
- |
|
| 818 |
%>
|
- |
|
| 819 |
</table>
|
- |
|
| 820 |
<%End If%>
|
- |
|
| 821 |
<!-- LIST VIEW END ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
- |
|
| 822 |
<%=objPMod.ComposeHiddenTags()%>
|
- |
|
| 823 |
<input type="hidden" name="action" value="true">
|
- |
|
| 824 |
</form>
|
- |
|
| 825 |
<!-- MESSAGE +++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
- |
|
| 826 |
<!--#include file="messages/_msg_inline.asp"-->
|
- |
|
| 827 |
<!-- +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -->
|
- |
|
| 828 |
</td>
|
- |
|
| 829 |
</tr>
|
- |
|
| 830 |
</table>
|
- |
|
| 831 |
</td>
|
872 |
</td>
|
| 832 |
</tr>
|
873 |
</tr>
|
| 833 |
</table>
|
874 |
</table>
|
| 834 |
<!-- Dropdown Menu -->
|
875 |
<!-- Dropdown Menu -->
|
| 835 |
<div id=testdiv></div>
|
876 |
<div id=testdiv></div>
|