Subversion Repositories DevTools

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
13 rsolanki 1
<%
2
'===================================================================
3
'							Common Subs
4
'===================================================================
5
%>
6
<%
7
'-----------------------------------------------------------------------------------------------------------------------------
8
Sub CloseWindow
9
%>
10
	<SCRIPT language="JavaScript" type="text/javascript">
11
	<!--
12
	self.close();
13
	//-->
14
	</SCRIPT>
15
<%
16
End Sub
17
'-----------------------------------------------------------------------------------------------------------------------------
18
Sub OpenChildWindow ( SStitle, SSurl, SSH, SSW, BBscroll )
19
	Dim scrlBar
20
	If BBscroll Then
21
		scrlBar = "yes"
22
	Else
23
		scrlBar = "no"
24
	End If
25
%>
26
	<script language="JavaScript" type="text/javascript">
27
	<!--
28
	window.open('<%=SSurl%>','<%=SStitle%>','scrollbars=<%=scrlBar%>,resizable=yes,width=<%=SSW%>,height=<%=SSH%>');
29
	//-->
30
	</script>
31
<%
32
End Sub
33
'-----------------------------------------------------------------------------------------------------------------------------
34
Sub OpenInParentWindow ( SSurl )
35
%>
36
	<script language="JavaScript" type="text/javascript">
37
	<!--
38
	window.opener.document.location='<%=SSurl%>';
39
	//-->	
40
	</script>
41
<%
42
End Sub
43
'-----------------------------------------------------------------------------------------------------------------------------
44
Sub OpenInWindow ( SSurl )
45
	Response.Redirect ( SSurl )
46
End Sub
47
'-----------------------------------------------------------------------------------------------------------------------------
48
Function onClickOpenWindow ( sURL, sWindowName, nWidth, nHeight, sWindowParams )
49
	If NOT IsNull(sWindowParams)  OR  (sWindowParams <> "") Then sWindowParams = sWindowParams &","	' Append comma if params are not empty
50
 
51
	onClickOpenWindow = "onClick='MM_openBrWindow("""& sURL &""", """& sWindowName &""", """& sWindowParams &"width="& nWidth &",height="& nHeight &",top=200,left=""+ ( screen.width / 2 - "& nWidth \ 2 &" ) +""  "");'"
52
End Function
53
'-----------------------------------------------------------------------------------------------------------------------------
54
Function ReadFile( sPath )
55
	Dim filesys, rfile
56
	Set filesys = CreateObject("Scripting.FileSystemObject")
57
	Set rfile = filesys.OpenTextFile( sPath, 1, false)
58
	ReadFile = rfile.ReadAll
59
	rfile.close
60
	Set filesys = nothing
61
End Function
62
'-----------------------------------------------------------------------------------------------------------------------------
63
Function GetQuery ( sQryName )
64
	GetQuery = ReadFile( QUERIES_PATH &"\"& sQryName )
65
End Function
66
'-----------------------------------------------------------------------------------------------------------------------------
67
Function BoldSelected ( sItem, nItemId, nrsItemId )
68
	' Exit on empty or null
69
	If ( nItemId = "" )  OR  IsNull( nItemId )  OR  ( nrsItemId = "" )  OR  IsNull( nrsItemId ) Then 
70
		BoldSelected = sItem
71
		Exit Function
72
	End If
73
 
74
	If CInt( nItemId ) = CInt( nrsItemId ) Then
75
		BoldSelected = "<b>"& sItem &"</b>"
76
	Else
77
		BoldSelected = sItem
78
	End If
79
End Function
15 rsolanki 80
'-----------------------------------------------------------------------------------------------------------------------------
81
Function Get_From_DUAL ( SSclm )
82
	Dim rsTemp, Query_String, OraSession2, OraDatabase2
83
	Set OraSession2 = CreateObject("OracleInProcServer.XOraSession")
84
	Set OraDatabase2 = OraSession2.OpenDatabase( TNS_NAME, DB_AUTHENTICATION, Cint(0))
85
 
86
	Query_String = _
87
	" SELECT "& SSclm &" AS result FROM DUAL"
88
	Set rsTemp = OraDatabase2.DbCreateDynaset( Query_String, cint(0))
89
 
90
	If ((NOT rsTemp.BOF) AND (NOT rsTemp.EOF)) Then
91
		Get_From_DUAL = (rsTemp.Fields("result"))
92
	End If
93
 
94
	rsTemp.Close
95
	Set rsTemp = nothing
96
	Set OraDatabase2 = nothing
97
	Set OraSession2 = nothing
98
End Function
13 rsolanki 99
'----------------------------------------------------------------------------------------------------------------------------------------------
100
Sub InitialiseCrumbs ( objCrumbs )
101
	Dim rsCrumb
102
	'L1par = enumDB_DEFAULT_EMPTY
103
	'L2par = enumDB_DEFAULT_EMPTY
104
	'L3par = enumDB_DEFAULT_EMPTY
105
 
106
 
107
	' This section will ensure only one level parameter is processed in order
108
	'If Request("bom_id") <> "" Then
109
	'	L3par = Request("bom_id")
110
	'	
111
	'ElseIf Request("branch_id") <> "" Then
112
	'	L2par = Request("branch_id")
113
	'	
114
	'ElseIf Request("proj_id") <> "" Then
115
		'L1par = Request("proj_id")
116
	'	
117
	'End If
118
 
119
	OraDatabase.Parameters.Add "PROJ_ID", 	dbPARproj_id, 	ORAPARM_INPUT, ORATYPE_NUMBER 
120
	OraDatabase.Parameters.Add "BRANCH_ID", dbPARbranch_id, ORAPARM_INPUT, ORATYPE_NUMBER 
121
	OraDatabase.Parameters.Add "BOM_ID", 	dbPARbom_id, 	ORAPARM_INPUT, ORATYPE_NUMBER 
122
	OraDatabase.Parameters.Add "NODE_ID", 	dbPARnode_id, 	ORAPARM_INPUT, ORATYPE_NUMBER 
123
	OraDatabase.Parameters.Add "OS_ID", 	dbPARos_id, 	ORAPARM_INPUT, ORATYPE_NUMBER 
124
	OraDatabase.Parameters.Add "PROD_ID", 	dbPARprod_id, 	ORAPARM_INPUT, ORATYPE_NUMBER 
125
 
126
	Set rsCrumb = OraDatabase.DbCreateDynaset( GetQuery ("Crumbs.sql") , ORADYN_DEFAULT )
127
 
128
	objCrumbs.CrumbMaxDepth = 7		' e.g.	[1] Home / [2] ProjectName / [3] BranchName / [4] BomName
129
 
130
	objCrumbs.AddLevel "Home", "Default.asp", 0
131
	While ((NOT rsCrumb.BOF) AND (NOT rsCrumb.EOF))
132
		objCrumbs.AddLevel rsCrumb("crumb_name"), rsCrumb("crumb_link"), rsCrumb("crumb_level")
133
		rsCrumb.MoveNext()
134
	WEnd
135
 
136
	' Clean up
137
	rsCrumb.Close
138
	Set rsCrumb = Nothing
139
	OraDatabase.Parameters.Remove "PROJ_ID"
140
	OraDatabase.Parameters.Remove "BRANCH_ID"
141
	OraDatabase.Parameters.Remove "BOM_ID"
142
	OraDatabase.Parameters.Remove "NODE_ID"
143
	OraDatabase.Parameters.Remove "OS_ID"
144
	OraDatabase.Parameters.Remove "PROD_ID"
145
End Sub
146
'-----------------------------------------------------------------------------------------------------------------------------
147
Function Expander ( sExpand )
148
	Const IMG_PLUS = "<img src='icons/i_plus.gif' width='9' height='9' align='absmiddle' border='0'>"
149
	Const IMG_MINUS = "<img src='icons/i_minus.gif' width='9' height='9' align='absmiddle' border='0'>"
150
	Const IMG_NO_EXPAND = "<img src='images/spacer.gif' width='9' height='9' align='absmiddle' border='0'>"
151
 
152
	If sExpand = "+" Then
153
		Expander = IMG_PLUS
154
 
155
	ElseIf sExpand = "-" Then
156
		Expander = IMG_MINUS
157
 
158
	Else
159
		Expander = IMG_NO_EXPAND
160
 
161
	End If
162
 
163
End Function
164
'-----------------------------------------------------------------------------------------------------------------------------
165
Sub GetMainDBParameters ( dbPARproj_id, dbPARbranch_id, dbPARbom_id, dbPARnode_id, dbPARos_id, dbPARprod_id )
166
	Dim query, rsQry
167
 
168
	' Preset all to enumDB_DEFAULT_EMPTY
169
	dbPARproj_id 	= enumDB_DEFAULT_EMPTY
170
	dbPARbranch_id 	= enumDB_DEFAULT_EMPTY
171
	dbPARbom_id 	= enumDB_DEFAULT_EMPTY
172
	dbPARnode_id 	= enumDB_DEFAULT_EMPTY
173
	dbPARos_id 		= enumDB_DEFAULT_EMPTY
174
	dbPARprod_id 	= enumDB_DEFAULT_EMPTY
175
 
176
 
177
	' Get the actual values from Request
178
	If Request("proj_id")  <> "" Then 	dbPARproj_id = Request("proj_id")
179
	If Request("branch_id")  <> "" Then dbPARbranch_id = Request("branch_id")
180
	If Request("bom_id")  <> "" Then 	dbPARbom_id = Request("bom_id")
181
	If Request("node_id") <> "" Then    dbPARnode_id = Request("node_id")
182
	If Request("os_id")   <> "" Then 	dbPARos_id = Request("os_id")
183
	If Request("prod_id") <> "" Then 	dbPARprod_id = Request("prod_id")
184
 
185
 
186
	' Resolve some parametes with DB lookup
187
	If ( dbPARbom_id <> enumDB_DEFAULT_EMPTY ) AND ( dbPARos_id <> enumDB_DEFAULT_EMPTY ) Then
188
		' Resolve with bom_id and os_id
189
		query = _
190
		" SELECT nn.node_id, br.BRANCH_ID, br.PROJ_ID "&_
191
		"  FROM BOM_CONTENTS bc,"&_
192
		"  	   NETWORK_NODES nn,"&_
193
		"	   OPERATING_SYSTEMS os,"&_
194
		"       BOMS bo,"&_
195
		"      BRANCHES br"&_
196
		" WHERE os.node_id = nn.node_id"&_
197
		"   AND bc.NODE_ID = nn.NODE_ID"&_
198
		"   AND bc.BOM_ID = bo.BOM_ID"&_
199
		"   AND bo.BRANCH_ID = br.BRANCH_ID"&_
200
		"   AND bc.bom_id = :BOM_ID"&_
201
		"   AND os.os_id = :OS_ID"
202
 
203
	ElseIf ( dbPARbom_id <> enumDB_DEFAULT_EMPTY ) Then
204
		' Resolve with bom_id and node_id
205
		query = _
206
		" SELECT :NODE_ID AS NODE_ID, br.BRANCH_ID, br.PROJ_ID "&_
207
		"  FROM BOMS bo,"&_
208
		"       BRANCHES br"&_
209
		" WHERE bo.BRANCH_ID = br.BRANCH_ID"&_
210
		"   AND bo.bom_id = :BOM_ID"
211
 
212
	End If
213
 
214
 
215
	If query <> "" Then
216
		OraDatabase.Parameters.Add "BOM_ID", 	dbPARbom_id, 	ORAPARM_INPUT, ORATYPE_NUMBER 
217
		OraDatabase.Parameters.Add "NODE_ID", 	dbPARnode_id, 	ORAPARM_INPUT, ORATYPE_NUMBER 
218
		OraDatabase.Parameters.Add "OS_ID", 	dbPARos_id, 	ORAPARM_INPUT, ORATYPE_NUMBER 
219
 
220
		Set rsQry = OraDatabase.DbCreateDynaset( query , ORADYN_DEFAULT )
221
 
222
		If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
223
			dbPARproj_id = CInt( rsQry("proj_id") )
224
			dbPARbranch_id = CInt( rsQry("branch_id") )
225
			dbPARnode_id = CInt( rsQry("node_id") )
226
		End If
227
 
228
		rsQry.Close
229
		Set rsQry = Nothing
230
		OraDatabase.Parameters.Remove "BOM_ID"
231
		OraDatabase.Parameters.Remove "NODE_ID"
232
		OraDatabase.Parameters.Remove "OS_ID"
233
	End If
234
 
235
 
236
	' --- Get which level (used for pop-up menu add prod,os,node.)
237
	AT_PROD_LEVEL = FALSE
238
	AT_OS_LEVEL = FALSE
239
	AT_NODE_LEVEL = FALSE
240
	AT_BOM_LEVEL = FALSE
241
 
242
	If dbPARprod_id <> enumDB_DEFAULT_EMPTY Then
243
		' Product Level
244
		AT_PROD_LEVEL = TRUE
245
 
246
	ElseIf dbPARos_id <> enumDB_DEFAULT_EMPTY Then
247
		' OS Level
248
		AT_OS_LEVEL = TRUE
249
 
250
	ElseIf dbPARnode_id <> enumDB_DEFAULT_EMPTY Then
251
		' Node Level
252
		AT_NODE_LEVEL = TRUE
253
 
254
	ElseIf dbPARbom_id <> enumDB_DEFAULT_EMPTY Then
255
		' Bom Level
256
		AT_BOM_LEVEL = TRUE
257
 
258
	End If
259
 
260
End Sub
261
'-----------------------------------------------------------------------------------------------------------------------------
262
Function GetNodeImage ( nNode_id )
263
	Dim query, rsQry
264
	query = _
265
	"SELECT nt.NODE_IMAGE "&_
266
	"  FROM NETWORK_NODES nn,"&_
267
	"  	    NODE_TYPES nt"&_
268
	" WHERE nn.NODE_TYPE_ID = nt.NODE_TYPE_ID"&_
269
	"   AND nn.node_id = :NODE_ID"
270
 
271
	OraDatabase.Parameters.Add "NODE_ID", 	nNode_id, 	ORAPARM_INPUT, ORATYPE_NUMBER 
272
	Set rsQry = OraDatabase.DbCreateDynaset( query , ORADYN_DEFAULT )
273
 
274
	If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
275
		GetNodeImage = "<img src='icons/"& rsQry("node_image") &"'>"
276
	End If
277
 
278
	rsQry.Close
279
	Set rsQry = Nothing
280
	OraDatabase.Parameters.Remove "NODE_ID"
281
End Function
282
'-----------------------------------------------------------------------------------------------------------------------------
283
Sub LoadTabActionButtons ( aBtns,  ByRef objControl )
284
	' -- Load Action Buttons
285
	Call objControl.LoadActionButtons ( aBtns, OraDatabase )
286
 
287
	' -- Set button spacer
288
	objControl.ButtonSpacer = 10
289
 
290
End Sub
291
'-----------------------------------------------------------------------------------------------------------------------------
292
Sub Messenger ( sMessage, nMessageType, sWidth )
293
	Dim msgTemplate, Img
294
 
295
	If (sMessage = "") OR IsNull(sMessage) Then Exit Sub
296
 
297
	Select Case CStr(nMessageType)
298
		Case "1"
299
			Img = "s_critical.gif"
300
		Case "2"
301
			Img = "s_warning.gif"
302
		Case "3"
303
			Img = "s_note.gif"
304
		Case Else
305
			Img = nMessageType
306
	End Select
307
 
308
 
309
	msgTemplate = ReadFile( APP_ROOT &"\scripts\message_style.html" )
310
	msgTemplate = Replace( msgTemplate, "%WIDTH%", sWidth )
311
	msgTemplate = Replace( msgTemplate, "%IMAGE%", Img )
312
	msgTemplate = Replace( msgTemplate, "%MESSAGE%", sMessage )
313
 
314
	Response.write msgTemplate
315
End Sub
316
'-----------------------------------------------------------------------------------------------------------------------------
317
Function IsTicked ( ByVal nParId, ByVal sParList )
318
	' Used only with check boxes as they send comma-separated list
319
	nParId 	 = ","&  Replace(nParId, " ", "") &","
320
	sParList = ","&  Replace(sParList, " ", "") &","
321
 
322
	If InStr( sParList, nParId ) > 0 Then
323
		IsTicked = TRUE
324
	Else
325
		IsTicked = FALSE
326
	End If
327
End Function
328
'-----------------------------------------------------------------------------------------------------------------------------
329
Function ProgressBar ()
330
	ProgressBar = "<DIV name='divProgressBar' id='divProgressBar' style='visibility:hidden;'><img src='icons/i_processing.gif' width='79' height='14'></DIV>"
331
End Function
332
'-----------------------------------------------------------------------------------------------------------------------------
333
Function HighlightSubstring ( SSstr, SSsubstr )
334
	Dim leftSTR, startPos
335
	startPos = InStr( 1, SSstr, SSsubstr, 1 )
336
 
337
	If startPos > 0 Then
338
		leftSTR = Left ( SSstr, startPos - 1 )
339
		Highlight_Substring = leftSTR &"<SPAN style='background:#ffff99;'>"& Mid( SSstr, startPos, Len(SSsubstr) ) &"</SPAN>"&  Right ( SSstr, Len(SSstr) - Len(leftSTR) - Len(SSsubstr)  )
340
	Else
341
		' Subtring not found
342
		Highlight_Substring = SSstr
343
	End If
344
 
345
End Function
346
'-----------------------------------------------------------------------------------------------------------------------------
347
Sub DisplayColumn( sColumnName, sTableColumn, outOrderBy, bSetToDefault )
348
	Dim selectedColumnTemplate, tempColumnName, ordBy, ordType, ordImg, sLink, isDefaultColumn
349
 
350
	'--- Set Default Column ---
351
	isDefaultColumn = FALSE
352
	If (Request("ordby") = "")  AND bSetToDefault Then
353
		isDefaultColumn = TRUE
354
	End If
355
 
356
	'--- Create border for selected column ---
357
	selectedColumnTemplate = _
358
	"background='images/bg_table_border.gif'><table width='100%'  border='0' cellspacing='1' cellpadding='2'>"&_
359
    "  <tr>"&_
360
    "    <td align='right' nowrap background='images/bg_table_col.gif'>%COLUMN_NAME%</td>"&_
361
    "  </tr>"&_
362
    "</table>"
363
 
364
 
365
	'--- Create Order Name ---
366
	ordBy = LCase( Replace( sColumnName, " ", "_" ) )
367
 
368
 
369
	'--- Toggle Order Type ---
370
	ordType = "asc"
371
	ordImg = ""
372
	If Request("ordby") = ordBy  OR  isDefaultColumn Then
373
		If Request("ordtype") = "desc" Then
374
			ordType = "asc"
375
			ordImg = "<img src='icons/b_sort_desc.gif' hspace='4' border='0' align='absmiddle'>"
376
		Else
377
			ordType = "desc"
378
			ordImg = "<img src='icons/b_sort_asc.gif' hspace='4' border='0' align='absmiddle'>"
379
		End If
380
	End If
381
 
382
 
383
	'--- Set temporary Column name and link
384
	sLink = SCRIPT_NAME &"?ordby="& ordBy &"&ordtype="& ordType &"&"& objPMod.ComposeURL() 
385
 
386
	tempColumnName = "<a href='"& sLink &"' class='body_linkbold'>&nbsp;"& ordImg & sColumnName &"&nbsp;</a>"
387
 
388
 
389
	'--- Display Formated Column Name ---
390
	If Request("ordby") = ordBy  OR  isDefaultColumn Then
391
		' This column is selected
392
		outOrderBy = " ORDER BY UPPER("& sTableColumn &") "& Request("ordtype")
393
		Response.write Replace( selectedColumnTemplate, "%COLUMN_NAME%", tempColumnName) 
394
 
395
	Else
396
		' Check if column is sortable
397
		If NOT IsNull(sTableColumn)  OR (sTableColumn <> "") Then
398
			Response.write "background='images/bg_table_col.gif'>" & tempColumnName
399
		Else
400
			Response.write "background='images/bg_table_col.gif' class='body_col'>"& sColumnName
401
		End If
402
 
403
 
404
	End If
405
 
406
End Sub
407
'-----------------------------------------------------------------------------------------------------------------------------
408
Function BomIcon ( sIsReadonly, sIsRejected )
409
 
410
	If sIsReadonly = enumDB_NO Then
411
		BomIcon = enumBOM_EDITMODE
412
	Else
413
		If (sIsRejected = "") OR IsNull(sIsRejected) Then
414
			BomIcon = enumBOM_NEW
415
 
416
		ElseIf sIsRejected = enumDB_YES Then
417
			BomIcon = enumBOM_REJECTED
418
 
419
		ElseIf sIsRejected = enumDB_NO Then
420
			BomIcon = enumBOM_ACCEPTED
421
 
422
		End If
423
 
424
	End If
425
 
426
End Function
427
'-----------------------------------------------------------------------------------------------------------------
428
Sub GetBomDetails ( nBom_id, ByRef outobjDetails )
429
	Dim rsQry, query
430
	OraDatabase.Parameters.Add "BOM_ID", nBom_id,	ORAPARM_INPUT, ORATYPE_NUMBER 
431
 
432
	Set rsQry = OraDatabase.DbCreateDynaset( GetQuery ("BomDetails.sql") , ORADYN_DEFAULT )
433
 
434
	If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
435
		outobjDetails.Item ("bom_id")   = rsQry("bom_id")
436
		outobjDetails.Item ("bom_name") = rsQry("bom_name")
437
		outobjDetails.Item ("bom_name_id") = rsQry("bom_name_id")
438
		outobjDetails.Item ("branch_id") = rsQry("branch_id")
439
		outobjDetails.Item ("bom_version") = rsQry("bom_version")
440
		outobjDetails.Item ("bom_lifecycle") = rsQry("bom_lifecycle")
441
		outobjDetails.Item ("bom_comments") = rsQry("bom_comments")
442
		outobjDetails.Item ("is_readonly") = rsQry("is_readonly")
443
		outobjDetails.Item ("is_rejected") = rsQry("is_rejected")
444
		outobjDetails.Item ("parent_bom_id") = rsQry("parent_bom_id")
445
		outobjDetails.Item ("base_env_count") = rsQry("base_env_count")
446
		outobjDetails.Item ("rtag_id_fk") = rsQry("rtag_id_fk")
447
 
448
	Else
449
		Err.Raise 8, "Sub GetBomDetails", "Empty record set returned. nBom_id="& nBom_id
450
 
451
	End If
452
 
453
	OraDatabase.Parameters.Remove "BOM_ID"
454
	rsQry.Close
455
	Set rsQry = Nothing
456
End Sub
457
'-----------------------------------------------------------------------------------------------------------------------------
458
Function Wiki2HTML ( ByVal sWikiString )
459
	'=== Definition ===
460
	sWikiString = Replace ( sWikiString, "[BREAKLINE]", "<hr noshade size='1' color='#DAD7C8'>"  )
461
	sWikiString = Replace ( sWikiString, "[NEWLINE]", "<br>"  )
462
 
463
	Wiki2HTML = sWikiString
464
End Function
465
'----------------------------------------------------------------------------------------------------------------------------------------------
466
Function GetProductIcon ( rsQry )
467
	Const LIMG_BB_PRODUCT = "<img src='icons/i_product.gif' width='19' height='19' border='0' align='absmiddle'>"
468
	Const LIMG_BB_PATCH = "<img src='icons/i_patch_small.gif' border='0' align='absmiddle' hspace='2'>"
469
	Const LIMG_BB_PATCH_OBSOLETE = "<img src='icons/i_patch_small_obsolete.gif' border='0' align='absmiddle' hspace='2'>"
470
	Const LIMG_BB_PRODUCT_REJECTED = "<img src='icons/i_product_rejected.gif' width='19' height='19' border='0' align='absmiddle' title='Product is REJECTED! Click to see details.'>"
471
 
472
	'-- Set default icon
473
	GetProductIcon = LIMG_BB_PRODUCT
474
 
475
	If IsObject(rsQry) Then
476
		'/* Recordset is passed */
477
		If rsQry("is_rejected") = enumDB_YES Then
478
			GetProductIcon = LIMG_BB_PRODUCT_REJECTED
479
 
480
		ElseIf rsQry("is_obsolete") = enumDB_YES Then
481
			GetProductIcon = LIMG_BB_PATCH_OBSOLETE
15 rsolanki 482
 
13 rsolanki 483
		ElseIf rsQry("is_patch") = enumDB_YES Then
484
			GetProductIcon = LIMG_BB_PATCH
15 rsolanki 485
 
486
 
13 rsolanki 487
 
488
		End If
489
 
490
	Else
491
		'/* Single Value is passed */
492
		If rsQry = enumDB_YES Then
493
			GetProductIcon = LIMG_BB_PRODUCT_REJECTED
494
		End If
495
 
496
	End If
497
 
498
End Function
499
'----------------------------------------------------------------------------------------------------------------------------------------------
500
Function GetRootVersion ( sBomVersion )
501
	Dim tempArr
502
 
503
	If InStr( sBomVersion, "." ) > 0 Then
504
		'-- Dot separator found --
505
 
506
		'-- Split version --
507
		tempArr = Split( sBomVersion, "." )
508
 
509
		'-- Return first element as root version
510
		GetRootVersion = tempArr(0)
511
 
512
	Else
513
		'-- No dot separator, hence root version is version itself
514
		GetRootVersion = sBomVersion
515
 
516
	End If
517
 
518
End Function
519
'--------------------------------------------------------------------------------------------------------------------------
520
Function HighlightSubstring ( SSstr, SSsubstr )
521
	Dim leftSTR, startPos
522
	startPos = InStr( 1, SSstr, SSsubstr, 1 )
523
 
524
	If startPos > 0 Then
525
		leftSTR = Left ( SSstr, startPos - 1 )
526
		HighlightSubstring = leftSTR &"<SPAN style='background:#ffff99;'>"& Mid( SSstr, startPos, Len(SSsubstr) ) &"</SPAN>"&  Right ( SSstr, Len(SSstr) - Len(leftSTR) - Len(SSsubstr)  )
527
	Else
528
		' Subtring not found
529
		HighlightSubstring = SSstr
530
	End If
531
 
532
End Function
533
'-----------------------------------------------------------------------------------------------------------------------------
534
Sub Destroy_All_Objects
535
	On Error Resume Next
536
	set brokenReadyHash = nothing
537
	set brokenHash = nothing
538
	set pkgInfoHash = nothing
539
	set OraDatabase = nothing
540
	set OraSession = nothing
541
	set userdetailsHash = nothing
542
End Sub
543
%>