Subversion Repositories DevTools

Rev

Rev 13 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 13 Rev 33
Line -... Line 1...
-
 
1
<!-- #INCLUDE FILE="..\common\adovbs.inc" -->
1
<%
2
<%
2
'=============================================================
3
'=============================================================
3
'//
4
'//
4
'//						Action Button Control
5
'//						Action Button Control
5
'//
6
'//
Line 12... Line 13...
12
Const enumABTNCTRL_ON_READONLY_HIDE = 1
13
Const enumABTNCTRL_ON_READONLY_HIDE = 1
13
Const enumABTNCTRL_ON_READONLY_DISABLE = 2
14
Const enumABTNCTRL_ON_READONLY_DISABLE = 2
14
'-------------------------------------------------
15
'-------------------------------------------------
15
 
16
 
16
Class ActionButtonControl
17
Class ActionButtonControl
17
	
18
 
18
	Private mArrAbtnDef()
19
	Private mArrAbtnDef()
19
	Private mobjNameDefMap			' Item can be accesed by name. Must be unique within one page
20
	Private mobjNameDefMap			' Item can be accesed by name. Must be unique within one page
20
	Private mobjIdDefMap			' Item can be accesed by id. Must be unique within one page. If NULL, ubound is assigned to it
21
	Private mobjIdDefMap			' Item can be accesed by id. Must be unique within one page. If NULL, ubound is assigned to it
21
	Private mobjSeparator			' Has a name of item after separator is applied
22
	Private mobjSeparator			' Has a name of item after separator is applied
22
	
23
 
23
	Private mnButtonSpacer
24
	Private mnButtonSpacer
24
	Private mnButtonTextSpace
25
	Private mnButtonTextSpace
25
	
26
 
26
	Private mNumOfProperties
27
	Private mNumOfProperties
27
	Private mLastPropertyInx
28
	Private mLastPropertyInx
28
	
29
 
29
	Private mbDisableAll
30
	Private mbDisableAll
30
	
31
 
31
	Private mbIsReadonly
32
	Private mbIsReadonly
32
	Private mReadonlyActionBehaviour
33
	Private mReadonlyActionBehaviour
33
	
34
 
34
	Private InxID
35
	Private InxID
35
	Private InxName
36
	Private InxName
36
	Private InxTxt
37
	Private InxTxt
37
	Private InxLink
38
	Private InxLink
38
	Private InxEventHandler
39
	Private InxEventHandler
Line 40... Line 41...
40
	Private InxImgOff
41
	Private InxImgOff
41
	Private InxHint
42
	Private InxHint
42
	Private InxVisible
43
	Private InxVisible
43
	Private InxActive
44
	Private InxActive
44
	Private InxIsReadonlyAction
45
	Private InxIsReadonlyAction
45
	
46
 
46
	
47
 
47
	
48
 
48
	Public Property Let AllActive ( cActive )
49
	Public Property Let AllActive ( cActive )
49
		If cActive = enumDB_NO Then
50
		If cActive = enumDB_NO Then
50
			mbDisableAll = TRUE
51
			mbDisableAll = TRUE
51
		Else
52
		Else
52
			mbDisableAll = FALSE
53
			mbDisableAll = FALSE
53
		End If
54
		End If
54
		
55
 
55
	End Property
56
	End Property
56
	
57
 
57
	Public Property Let ButtonSpacer ( nWidth )
58
	Public Property Let ButtonSpacer ( nWidth )
58
		mnButtonSpacer = nWidth
59
		mnButtonSpacer = nWidth
59
	End Property
60
	End Property
60
	
61
 
61
	Public Property Let ButtonTextSpacer ( nWidth )
62
	Public Property Let ButtonTextSpacer ( nWidth )
62
		mnButtonTextSpace = nWidth
63
		mnButtonTextSpace = nWidth
63
	End Property
64
	End Property
64
	
65
 
65
	Public Property Let IsReadonlyAction ( IsReadonly )
66
	Public Property Let IsReadonlyAction ( IsReadonly )
66
		If IsReadonly = enumDB_YES Then
67
		If IsReadonly = enumDB_YES Then
67
			mbIsReadonly = TRUE
68
			mbIsReadonly = TRUE
68
			
69
 
69
		ElseIf IsReadonly = enumDB_NO Then
70
		ElseIf IsReadonly = enumDB_NO Then
70
			mbIsReadonly = FALSE
71
			mbIsReadonly = FALSE
71
		Else
72
		Else
72
			mbIsReadonly = IsReadonly
73
			mbIsReadonly = IsReadonly
73
			
74
 
74
		End If
75
		End If
75
		
76
 
76
	End Property
77
	End Property
77
	
78
 
78
	Public Property Let ReadonlyActionBehaviour ( nEnum )
79
	Public Property Let ReadonlyActionBehaviour ( nEnum )
79
		mReadonlyActionBehaviour = nEnum
80
		mReadonlyActionBehaviour = nEnum
80
	End Property
81
	End Property
81
	
82
 
82
	'-----------------------------------------------------------------------------------------------------------------
83
	'-----------------------------------------------------------------------------------------------------------------
83
	Private Sub SetItemPropertyByIndex ( nInx, nProperty, Value )
84
	Private Sub SetItemPropertyByIndex ( nInx, nProperty, Value )
84
		If nInx = ""  OR  nProperty = ""  OR  Value = "" Then Err.Raise 8, "Method SetItemPropertyByIndex", "Empty parameters found. nInx="& nInx &", nProperty="& nProperty &", Value="& Value 
85
		If nInx = ""  OR  nProperty = ""  OR  Value = "" Then Err.Raise 8, "Method SetItemPropertyByIndex", "Empty parameters found. nInx="& nInx &", nProperty="& nProperty &", Value="& Value
85
		
86
 
86
		mArrAbtnDef ( nProperty, nInx ) = Value
87
		mArrAbtnDef ( nProperty, nInx ) = Value
87
		
88
 
88
		'Response.write "mArrAbtnDef ( "& nProperty &", "& nInx &" ) = "& Value &"<br>"
89
		'Response.write "mArrAbtnDef ( "& nProperty &", "& nInx &" ) = "& Value &"<br>"
89
	End Sub
90
	End Sub
90
	'-----------------------------------------------------------------------------------------------------------------
91
	'-----------------------------------------------------------------------------------------------------------------
91
	Private Function LastItemInx ()
92
	Private Function LastItemInx ()
92
		 LastItemInx = UBound ( mArrAbtnDef, 2 )
93
		 LastItemInx = UBound ( mArrAbtnDef, 2 )
93
	End Function
94
	End Function
94
	'-----------------------------------------------------------------------------------------------------------------
95
	'-----------------------------------------------------------------------------------------------------------------
95
	Public Sub AddActionButton ( sItemName, nItemID )
96
	Public Sub AddActionButton ( sItemName, nItemID )
96
		Dim newArrayDim
97
		Dim newArrayDim
97
		
98
 
98
		If InStr( sItemName, " " ) > 0 Then	Err.Raise 8, "Method AddActionButton", "Item Name '"& sItemName &"' cannot have spaces."
99
		If InStr( sItemName, " " ) > 0 Then	Err.Raise 8, "Method AddActionButton", "Item Name '"& sItemName &"' cannot have spaces."
99
		
100
 
100
		
101
 
101
		
102
 
102
		If NOT mobjNameDefMap.Exists (CStr( sItemName )) Then
103
		If NOT mobjNameDefMap.Exists (CStr( sItemName )) Then
103
			
104
 
104
			newArrayDim = LastItemInx() + 1
105
			newArrayDim = LastItemInx() + 1
105
			
106
 
106
			ReDim Preserve mArrAbtnDef( mNumOfProperties, newArrayDim )
107
			ReDim Preserve mArrAbtnDef( mNumOfProperties, newArrayDim )
107
			
108
 
108
			' Store name
109
			' Store name
109
			Call SetItemPropertyByIndex ( newArrayDim, InxName, sItemName )
110
			Call SetItemPropertyByIndex ( newArrayDim, InxName, sItemName )
110
			mobjNameDefMap.Add Cstr( sItemName ), CStr( newArrayDim )
111
			mobjNameDefMap.Add Cstr( sItemName ), CStr( newArrayDim )
111
			
112
 
112
			If Not IsNull(nItemID) Then
113
			If Not IsNull(nItemID) Then
113
				' Store ID
114
				' Store ID
114
				Call SetItemPropertyByIndex ( newArrayDim, InxdbID, nItemID )
115
				Call SetItemPropertyByIndex ( newArrayDim, InxdbID, nItemID )
115
				mobjIdDefMap.Add Cstr( nItemID ), CStr( newArrayDim )
116
				mobjIdDefMap.Add Cstr( nItemID ), CStr( newArrayDim )
116
			End If
117
			End If
117
			
118
 
118
			' Set Defaults
119
			' Set Defaults
119
			Call SetItemDefaults ( sItemName )
120
			Call SetItemDefaults ( sItemName )
120
		Else
121
		Else
121
			
122
 
122
			Err.Raise 8, "Method AddActionButton", "Item Name '"& sItemName &"' has been already defined."
123
			Err.Raise 8, "Method AddActionButton", "Item Name '"& sItemName &"' has been already defined."
123
			
124
 
124
		End If
125
		End If
125
		
126
 
126
	End Sub
127
	End Sub
127
	'-----------------------------------------------------------------------------------------------------------------
128
	'-----------------------------------------------------------------------------------------------------------------
128
	Public Sub Render ( aAbtnList )
129
	Public Sub Render ( aAbtnList )
129
		Dim itemInx, itemName, nLastItemInx, btnImage, ButtonStr, ButtonStrDisabled
130
		Dim itemInx, itemName, nLastItemInx, btnImage, ButtonStr, ButtonStrDisabled
130
		Response.write "<table cellpadding='0' cellspacing='0' width='1'><tr>"
131
		Response.write "<table cellpadding='0' cellspacing='0' width='1'><tr>"
131
		
132
 
132
		For Each itemName in aAbtnList
133
		For Each itemName in aAbtnList
133
			
134
 
134
			itemInx = mobjNameDefMap.Item (Cstr(itemName))
135
			itemInx = mobjNameDefMap.Item (Cstr(itemName))
135
			'If itemInx = "" Then 	Err.Raise 8, "Method Render", "Definition for item name '"& itemName &"' not found."
136
			'If itemInx = "" Then 	Err.Raise 8, "Method Render", "Definition for item name '"& itemName &"' not found."
136
			
137
 
137
			
138
 
138
			'-- Define Image
139
			'-- Define Image
139
			btnImage = "<img src='images/spacer.gif' width='"& mnButtonSpacer &"' height='1' align='absmiddle' border='0'>"
140
			btnImage = "<img src='images/spacer.gif' width='"& mnButtonSpacer &"' height='1' align='absmiddle' border='0'>"
140
			If (mArrAbtnDef( InxImg, itemInx ) <> "") Then
141
			If (mArrAbtnDef( InxImg, itemInx ) <> "") Then
141
				btnImage = "<img src='"& mArrAbtnDef( InxImg, itemInx ) &"' hspace='"& mnButtonTextSpace &"' border='0' align='absmiddle'>"
142
				btnImage = "<img src='"& mArrAbtnDef( InxImg, itemInx ) &"' hspace='"& mnButtonTextSpace &"' border='0' align='absmiddle'>"
142
			End If
143
			End If
143
			
-
 
144
			
144
 
145
			'-- Define Button
145
			'-- Define Button
146
			ButtonStr = _
146
			ButtonStr = _
147
				"<td nowrap>"&_
147
				"<td nowrap>"&_
148
				"<a id='"& mArrAbtnDef( InxName, itemInx ) &"' "&_
148
				"<a id='"& mArrAbtnDef( InxName, itemInx ) &"' "&_
149
				" name='"& mArrAbtnDef( InxName, itemInx ) &"' href='"& Eval( mArrAbtnDef( InxLink, itemInx ) ) &"' "&_
149
				" name='"& mArrAbtnDef( InxName, itemInx ) &"' href='"& Eval( mArrAbtnDef( InxLink, itemInx ) ) &"' "&_
150
				" "& Eval( mArrAbtnDef( InxEventHandler, itemInx ) ) &" class='menu_link' title='"& mArrAbtnDef( InxHint, itemInx )  &"'>"&_
150
				" "& Eval( mArrAbtnDef( InxEventHandler, itemInx ) ) &" class='menu_link' title='"& mArrAbtnDef( InxHint, itemInx )  &"'>"&_
151
				btnImage & mArrAbtnDef( InxTxt, itemInx ) &"</a>"&_
151
				btnImage & mArrAbtnDef( InxTxt, itemInx ) &"</a>"&_
152
				"</td>"
152
				"</td>"
153
			
153
 
154
			
154
 
155
			'-- Define Disabled Button
155
			'-- Define Disabled Button
156
			ButtonStrDisabled = _
156
			ButtonStrDisabled = _
157
				"<td nowrap>"&_
157
				"<td nowrap>"&_
158
				"<img src='"& mArrAbtnDef( InxImgOff, itemInx ) &"' hspace='"& mnButtonTextSpace &"' border='0' align='absmiddle'>"&_
158
				"<img src='"& mArrAbtnDef( InxImgOff, itemInx ) &"' hspace='"& mnButtonTextSpace &"' border='0' align='absmiddle'>"&_
159
				"<label class='menu_txt'>"& mArrAbtnDef( InxTxt, itemInx ) &"</label>"&_
159
				"<label class='menu_txt'>"& mArrAbtnDef( InxTxt, itemInx ) &"</label>"&_
160
				"</td>"
160
				"</td>"
161
			
161
 
162
			
162
 
163
			
163
 
164
			If mArrAbtnDef( InxVisible, itemInx ) = enumDB_YES Then
164
			If mArrAbtnDef( InxVisible, itemInx ) = enumDB_YES Then
165
				' --- Display if Visible ---
165
				' --- Display if Visible ---
166
				
166
 
167
				If  ( mbDisableAll OR ( mArrAbtnDef( InxActive, itemInx ) = enumDB_NO ) ) AND ( itemInx <> "" )  Then
167
				If  ( mbDisableAll OR ( mArrAbtnDef( InxActive, itemInx ) = enumDB_NO ) ) AND ( itemInx <> "" )  Then
168
					' --- Display DISABLED Button Item ---
168
					' --- Display DISABLED Button Item ---
169
					Response.write ButtonStrDisabled
169
					Response.write ButtonStrDisabled
170
					
170
 
171
					If mnButtonSpacer > 0 Then
171
					If mnButtonSpacer > 0 Then
172
						Response.write "<td><img src='images/spacer.gif' width='"& mnButtonSpacer &"' height='1' align='absmiddle'></td>"
172
						Response.write "<td><img src='images/spacer.gif' width='"& mnButtonSpacer &"' height='1' align='absmiddle'></td>"
173
					End If
173
					End If
174
					
174
 
175
				Else
175
				Else
176
					
176
 
177
					' --- Display Action Button Item ---
177
					' --- Display Action Button Item ---
178
					If	( NOT mbIsReadonly )  OR _
178
					If	( NOT mbIsReadonly )  OR _
179
					   	( mbIsReadonly  AND  mArrAbtnDef( InxIsReadonlyAction, itemInx ) = enumDB_YES ) Then
179
					   	( mbIsReadonly  AND  mArrAbtnDef( InxIsReadonlyAction, itemInx ) = enumDB_YES ) Then
180
						
180
 
181
						If InStr( itemName, "width=" ) > 0 Then
181
						If InStr( itemName, "width=" ) > 0 Then
182
							Response.write "<td><img src='images/spacer.gif' "& itemName &" height='1' align='absmiddle'></td>"
182
							Response.write "<td><img src='images/spacer.gif' "& itemName &" height='1' align='absmiddle'></td>"
183
							
183
 
184
						ElseIf InStr( itemName, "height=" ) > 0 Then
184
						ElseIf InStr( itemName, "height=" ) > 0 Then
185
							Response.write "<td><img src='images/bg_bage_2.gif' width='1' "& itemName &" align='absmiddle' hspace='4'></td>"
185
							Response.write "<td><img src='images/bg_bage_2.gif' width='1' "& itemName &" align='absmiddle' hspace='4'></td>"
186
							
186
 
187
						Else
187
						Else
188
							'/* It is a button, i.e. Display Button */
188
							'/* It is a button, i.e. Display Button */
189
							Response.write ButtonStr
189
							Response.write ButtonStr
190
							
190
 
191
							If mnButtonSpacer > 0 Then
191
							If mnButtonSpacer > 0 Then
192
								Response.write "<td><img src='images/spacer.gif' width='"& mnButtonSpacer &"' height='1' align='absmiddle'></td>"
192
								Response.write "<td><img src='images/spacer.gif' width='"& mnButtonSpacer &"' height='1' align='absmiddle'></td>"
193
							End If
193
							End If
194
							
194
 
195
						End If
195
						End If
196
						
196
 
197
						
197
 
198
					ElseIf ( mbIsReadonly  AND  mArrAbtnDef( InxIsReadonlyAction, itemInx ) = enumDB_NO ) Then
198
					ElseIf ( mbIsReadonly  AND  mArrAbtnDef( InxIsReadonlyAction, itemInx ) = enumDB_NO ) Then
199
						
199
 
200
						
200
 
201
						
201
 
202
						If mReadonlyActionBehaviour = enumABTNCTRL_ON_READONLY_DISABLE Then
202
						If mReadonlyActionBehaviour = enumABTNCTRL_ON_READONLY_DISABLE Then
203
							Response.write ButtonStrDisabled
203
							Response.write ButtonStrDisabled
204
						End If
204
						End If
205
						
205
 
206
						
206
 
207
						
207
 
208
					End If
208
					End If
209
					
209
 
210
				End If
210
				End If
211
				
211
 
212
			End If
212
			End If
213
			
213
 
214
			
214
 
215
			
215
 
216
			
216
 
217
			' --- Separators added manually using  method AddSeparator or AddSeparatorAfter ---
217
			' --- Separators added manually using  method AddSeparator or AddSeparatorAfter ---
218
			If mobjSeparator.Exists ( Cstr(mArrAbtnDef( InxName, itemInx )) ) Then
218
			If mobjSeparator.Exists ( Cstr(mArrAbtnDef( InxName, itemInx )) ) Then
219
				Response.write "<td><img src='images/spacer.gif' width='"& mobjSeparator.Item ( Cstr(mArrAbtnDef( InxName, itemInx )) ) &"' height='1'></td>"
219
				Response.write "<td><img src='images/spacer.gif' width='"& mobjSeparator.Item ( Cstr(mArrAbtnDef( InxName, itemInx )) ) &"' height='1'></td>"
220
				
220
 
221
			End If
221
			End If
222
			
222
 
223
			
223
 
224
		Next
224
		Next
225
		
225
 
226
		Response.write "</tr></table>"
226
		Response.write "</tr></table>"
227
	End Sub
227
	End Sub
228
	'-----------------------------------------------------------------------------------------------------------------
228
	'-----------------------------------------------------------------------------------------------------------------
-
 
229
   ' Return true if required_abtnName is one of the strings in the aAbtnList string array, else return false
-
 
230
   Private Function isAbtnRequired (aAbtnList, required_abtnName)
-
 
231
 
-
 
232
      Dim this_abtnName
-
 
233
 
-
 
234
      isAbtnRequired = FALSE
-
 
235
 
-
 
236
      For Each this_abtnName in aAbtnList
-
 
237
         If 0 = StrComp(this_abtnName, required_abtnName) Then
-
 
238
            isAbtnRequired = TRUE
-
 
239
            Exit Function
-
 
240
         End If
-
 
241
      Next
-
 
242
   End Function
-
 
243
	'-----------------------------------------------------------------------------------------------------------------
229
	Public Sub LoadActionButtons ( aAbtnList, ByRef objOraDatabase )
244
	Public Sub LoadActionButtons ( aAbtnList, ByRef objOraDatabase )
230
		Dim rsQry, query
245
 
231
		
246
      ' The following code is now used in place of the earlier code to acquire action button records.
232
		query = _
247
      '
233
		" SELECT "&_
248
      ' This code exploits the fact that in ADO 2.8 onwards, you can create ADO DB record sets
234
		"        abd.abtn_id,"&_
249
      ' without a connection to an actual database. So, to rid ourselves of the need for a DEF_ACTION_BUTTONS
235
		"        abd.abtn_name,"&_
250
      ' table in the database, we can simply take all of the table's rows and reproduce them here in row
236
		"        abd.text,"&_
251
      ' creation and field assignment statements. The rest of the website code will be ignorant of the fact
237
		"        abd.action_link,"&_
252
      ' that the data has not come from the actual database.
238
		"        abd.event_handler,"&_
253
      '
239
		"        abd.img_enabled,"&_
254
      ' Complicating factors:
240
		"        abd.img_disabled,"&_
255
      ' 1) Some action button fields (action_link and event_handler) are to be EVAL'ed later on when used
241
		"        abd.hint,"&_
256
      '    to render the HTML page. This can lead to some very complex looking strings that are difficult to
242
		"        abd.visible,"&_
257
      '    understand. EVAL allows things like parRtag_id used in a string to be converted to an actual
243
		"        abd.active,"&_
258
      '    number (in string form) at time of HTML rendering. We have to use EVAL. There is no other option.
244
		"        abd.is_readonly_action "&_
259
      '
245
		"   FROM DEF_ACTION_BUTTONS abd  WHERE abd.abtn_name IN ('"& Join ( aAbtnList, "','") &"')"
260
      ' 2) The strings from the database must also be represented as VBScript strings in the assignments
246
		
261
      '    below. This means that where a string needs to have an embedded " char, two such chars must be
247
		Set rsQry = OraDatabase.DbCreateDynaset( query , ORADYN_DEFAULT )
262
      '    used, and remember about EVAL mentioned above, meaning that sometimes """" has to be used to
248
		
263
      '    give a single " to the resulting string that pops out from EVAL.
-
 
264
      '    Remember also that whilst HTML doesn't care whether you use single or double quotes, javascript
-
 
265
      '    does (it must use single quotes) and VBScript does (it must use double quotes)
-
 
266
      '
-
 
267
      ' Possible Future Roadmap
-
 
268
      ' 1) Rid the code of ABTN_ID - I dont think we need this field now that we are free of the database
-
 
269
      ' 2) Given that DeploymentManager and ProductionManager shared the same database, some action buttons
-
 
270
      '    may well only be used by one of the two tools. We can remove those used by ProductionManager only,
-
 
271
      '    once we know which ones they are.
-
 
272
      '
-
 
273
      Dim rsQry
-
 
274
      Dim varFields
-
 
275
      Dim varValues
-
 
276
 
-
 
277
      ' Create the object and configure some of its properties
-
 
278
      Set rsQry = Server.CreateObject("ADODB.Recordset")
-
 
279
      rsQry.CursorLocation = adUseClient
-
 
280
      rsQry.CursorType = adOpenKeyset
-
 
281
      rsQry.LockType = adLockOptimistic
-
 
282
 
-
 
283
      ' Based upon the original DEF_ACTION_BUTTONS table DDL, define the fields (ie. table columns) being simulated
-
 
284
      rsQry.Fields.Append "ABTN_ID",               adInteger
-
 
285
      rsQry.Fields.Append "ABTN_NAME",             adVarChar,   64
-
 
286
      rsQry.Fields.Append "TEXT",                  adVarChar,  128, adFldIsNullable
-
 
287
      rsQry.Fields.Append "ACTION_LINK",           adVarChar,  512, adFldIsNullable
-
 
288
      rsQry.Fields.Append "EVENT_HANDLER",         adVarChar,  512, adFldIsNullable
-
 
289
      rsQry.Fields.Append "IMG_ENABLED",           adVarChar,  128, adFldIsNullable
-
 
290
      rsQry.Fields.Append "IMG_DISABLED",          adVarChar,  128, adFldIsNullable
-
 
291
      rsQry.Fields.Append "HINT",                  adVarChar,  256, adFldIsNullable
-
 
292
      rsQry.Fields.Append "VISIBLE",               adChar,       1
-
 
293
      rsQry.Fields.Append "ACTIVE",                adChar,       1
-
 
294
      rsQry.Fields.Append "IS_READONLY_ACTION",    adChar,       1
-
 
295
 
-
 
296
      ' open the record set for updating
-
 
297
      rsQry.Open
-
 
298
 
-
 
299
      ' Specify the field order that we are going to use in our row creation statements
-
 
300
      varFields = Array("ABTN_ID", "ABTN_NAME", "TEXT",_
-
 
301
                        "ACTION_LINK",_
-
 
302
                        "EVENT_HANDLER",_
-
 
303
                        "IMG_ENABLED",_
-
 
304
                        "IMG_DISABLED",_
-
 
305
                        "HINT",_
-
 
306
                        "VISIBLE",_
-
 
307
                        "ACTIVE",_
-
 
308
                        "IS_READONLY_ACTION")
-
 
309
 
-
 
310
      ' Add the rows to the record set, but only for buttons specifed in the list supplied by the caller
-
 
311
 
-
 
312
      ' Remember, Field Ordering is... ID, name, text, link, event handler, en-img, dis-img, hint, visible, active, is readonly action
-
 
313
 
-
 
314
      If isAbtnRequired(aAbtnList, "abtnNew") Then
-
 
315
         varValues = Array(  1, "abtnNew", null,_
-
 
316
                             """javascript:;""",_
-
 
317
                             """onClick=""""ToggleDisplay('divMenuOptionsABTNnew');""""""",_
-
 
318
                             "icons/abtn_add_with_option.gif",_
-
 
319
                             "icons/abtn_add_with_option_off.gif",_
-
 
320
                             "New...",_
-
 
321
                             "Y",_
-
 
322
                             "Y",_
-
 
323
                             "N")
-
 
324
         rsQry.AddNew varFields, varValues
-
 
325
      End If
-
 
326
 
-
 
327
      If isAbtnRequired(aAbtnList, "abtnNodeProperties") Then
-
 
328
         varValues = Array(  2, "abtnNodeProperties", null,_
-
 
329
                             """javascript:;""",_
-
 
330
                             """onClick=""""MM_openBrWindow('wEditNode.asp?node_id_list=""& objNodeCollector.Item(""node_id"") &""&rfile=""& SCRIPT_NAME & objPMod.ComposeURLWithout(""rfile"") &""','EditNode','scrollbars=yes,resizable=yes,width=600,height=350');""""""",_
-
 
331
                             "icons/abtn_properties.gif",_
-
 
332
                             "icons/abtn_properties_off.gif",_
-
 
333
                             "Edit Network Node properties",_
-
 
334
                             "Y",_
-
 
335
                             "Y",_
-
 
336
                             "N")
-
 
337
         rsQry.AddNew varFields, varValues
-
 
338
      End If
-
 
339
 
-
 
340
      If isAbtnRequired(aAbtnList, "abtnNodeRemove") Then
-
 
341
         varValues = Array(  3, "abtnNodeRemove", null,_
-
 
342
                             """_DestroyNode.asp?rfile=BomDefault.asp&node_id_list=""& dbPARnode_id & objPMod.ComposeURLWithout(""node_id,rfile"")",_
-
 
343
                             """onClick=""""return confirmAction('Remove \'""& objNodeCollector.Item(""node_name"") &""\' from this BOM?');""""""",_
-
 
344
                             "icons/abtn_remove.gif",_
-
 
345
                             "icons/abtn_remove_off.gif",_
-
 
346
                             "Remove Network Node from this BOM",_
-
 
347
                             "Y",_
-
 
348
                             "Y",_
-
 
349
                             "N")
-
 
350
         rsQry.AddNew varFields, varValues
-
 
351
      End If
-
 
352
 
-
 
353
      If isAbtnRequired(aAbtnList, "abtnBomProperties") Then
-
 
354
         varValues = Array(  4, "abtnBomProperties", null,_
-
 
355
                             """javascript:;""",_
-
 
356
                             """onClick=""""MM_openBrWindow('wEditBom.asp?bom_id_list=""& Request(""bom_id"") &""&rfile=""& SCRIPT_NAME & objPMod.ComposeURLWithout(""rfile"") &""','EditBom','scrollbars=yes,resizable=yes,width=600,height=350');""""""",_
-
 
357
                             "icons/abtn_properties.gif",_
-
 
358
                             "icons/abtn_properties_off.gif",_
-
 
359
                             "Edit Bom properties",_
-
 
360
                             "Y",_
-
 
361
                             "Y",_
-
 
362
                             "N")
-
 
363
         rsQry.AddNew varFields, varValues
-
 
364
      End If
-
 
365
 
-
 
366
      ' NOTE: I do not think this one is ever used
-
 
367
      If isAbtnRequired(aAbtnList, "abtnNodeRemoveBulk") Then
-
 
368
         varValues = Array(  5, "abtnNodeRemoveBulk", null,_
-
 
369
                             """javascript:;""",_
-
 
370
                             """onClick=""""MM_openBrWindow('wRemoveBulkNodes.asp?rfile=BomDefault.asp&""& objPMod.ComposeURL() &""','RemoveBulkNodes','scrollbars=yes,resizable=yes,width=600,height=350');""""""",_
-
 
371
                             "icons/abtn_remove.gif",_
-
 
372
                             "icons/abtn_remove_off.gif",_
-
 
373
                             "Remove Network Nodes from this BOM",_
-
 
374
                             "Y",_
-
 
375
                             "Y",_
-
 
376
                             "N")
-
 
377
         rsQry.AddNew varFields, varValues
-
 
378
      End If
-
 
379
 
-
 
380
      If isAbtnRequired(aAbtnList, "btnAddProd") Then
-
 
381
         varValues = Array(  6, "btnAddProd", "Add Product",_
-
 
382
                             """javascript:;""",_
-
 
383
                             """onClick=""""MM_openBrWindow('wAddProd.asp?rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','AddProd','scrollbars=yes,resizable=yes,width=600,height=500');""""""",_
-
 
384
                             "icons/btn_add.gif",_
-
 
385
                             null,_
-
 
386
                             null,_
-
 
387
                             "Y",_
-
 
388
                             "Y",_
-
 
389
                             "N")
-
 
390
         rsQry.AddNew varFields, varValues
-
 
391
      End If
-
 
392
 
-
 
393
      If isAbtnRequired(aAbtnList, "btnAddOs") Then
-
 
394
         varValues = Array(  7, "btnAddOs", "Add OS",_
-
 
395
                             """javascript:;""",_
-
 
396
                             """onClick=""""MM_openBrWindow('wEditOs.asp?rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','EditOs','scrollbars=yes,resizable=yes,width=600,height=350');""""""",_
-
 
397
                             "icons/btn_add.gif",_
-
 
398
                             null,_
-
 
399
                             "Add Operating System",_
-
 
400
                             "Y",_
-
 
401
                             "Y",_
-
 
402
                             "N")
-
 
403
         rsQry.AddNew varFields, varValues
-
 
404
      End If
-
 
405
 
-
 
406
      If isAbtnRequired(aAbtnList, "btnCopyOs") Then
-
 
407
         varValues = Array(  8, "btnCopyOs", "Copy",_
-
 
408
                             """javascript:go_submit( document.FormName, """"btnCopyOs"""" );ShowProgress();""",_
-
 
409
                             null,_
-
 
410
                             "icons/btn_copy.gif",_
-
 
411
                             null,_
-
 
412
                             "Select and Copy Operating Systems",_
-
 
413
                             "Y",_
-
 
414
                             "Y",_
-
 
415
                             "Y")
-
 
416
         rsQry.AddNew varFields, varValues
-
 
417
      End If
-
 
418
 
-
 
419
      If isAbtnRequired(aAbtnList, "btnPasteOs") Then
-
 
420
         varValues = Array(  9, "btnPasteOs", "Paste",_
-
 
421
                             """javascript:;""",_
-
 
422
                             """onClick=""""MM_openBrWindow('wPasteItems.asp?copy_type=os_id_list&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','PasteItems','scrollbars=yes,resizable=yes,width=400,height=500');""""""",_
-
 
423
                             "icons/btn_paste.gif",_
-
 
424
                             "icons/btn_paste_off.gif",_
-
 
425
                             "Paste Operating Systems here",_
-
 
426
                             "Y",_
-
 
427
                             "Y",_
-
 
428
                             "N")
-
 
429
         rsQry.AddNew varFields, varValues
-
 
430
      End If
-
 
431
 
-
 
432
      ' NOTE: I do not think this one is ever used
-
 
433
      If isAbtnRequired(aAbtnList, "btnMoveUpProd") Then
-
 
434
         varValues = Array( 10, "btnMoveUpProd", "Move Up",_
-
 
435
                            """javascript:go_submit( document.FormName, """"btnMoveUpProd"""" );ShowProgress();""",_
-
 
436
                            null,_
-
 
437
                            "icons/btn_move_up.gif",_
-
 
438
                            null,_
-
 
439
                            "Select Product(s) and Move Install Order Up",_
-
 
440
                            "Y",_
-
 
441
                            "Y",_
-
 
442
                            "N")
-
 
443
         rsQry.AddNew varFields, varValues
-
 
444
      End If
-
 
445
 
-
 
446
      ' NOTE: I do not think this one is ever used
-
 
447
      If isAbtnRequired(aAbtnList, "btnMoveDownProd") Then
-
 
448
         varValues = Array( 11, "btnMoveDownProd", null,_
-
 
449
                            """javascript:go_submit( document.FormName, """"btnMoveDownProd"""" );ShowProgress();""",_
-
 
450
                            null,_
-
 
451
                            "icons/btn_move_down.gif",_
-
 
452
                            null,_
-
 
453
                            "Select Product(s) and Move Install Order Down",_
-
 
454
                            "Y",_
-
 
455
                            "Y",_
-
 
456
                            "N")
-
 
457
         rsQry.AddNew varFields, varValues
-
 
458
      End If
-
 
459
 
-
 
460
      If isAbtnRequired(aAbtnList, "abtnSyncProdLatest") Then
-
 
461
         varValues = Array( 12, "abtnSyncProdLatest", "Update Products",_
-
 
462
                            """javascript:;""",_
-
 
463
                            """onClick=""""MM_openBrWindow('wSyncProducts.asp?rfile=Bom_AllProducts.asp&""& objPMod.ComposeURL() &""','SyncProducts','scrollbars=yes,resizable=yes,width=1000,height=700');""""""",_
-
 
464
                            "icons/btn_sync.gif",_
-
 
465
                            "icons/btn_sync_off.gif",_
-
 
466
                            "Update Products from Release Manager...",_
-
 
467
                            "Y",_
-
 
468
                            "Y",_
-
 
469
                            "N")
-
 
470
         rsQry.AddNew varFields, varValues
-
 
471
      End If
-
 
472
 
-
 
473
      If isAbtnRequired(aAbtnList, "abtnAcceptRejectProd") Then
-
 
474
         varValues = Array( 13, "abtnAcceptRejectProd", null,_
-
 
475
                            """_AcceptRejectProd.asp?prod_id_list=""& Request(""prod_id"") &""&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL()",_
-
 
476
                            null,_
-
 
477
                            "icons/abtn_accept_reject_product.gif",_
-
 
478
                            "icons/abtn_accept_reject_product_off.gif",_
-
 
479
                            "Toggle Accept / Reject Product State",_
-
 
480
                            "Y",_
-
 
481
                            "Y",_
-
 
482
                            "Y")
-
 
483
         rsQry.AddNew varFields, varValues
-
 
484
      End If
-
 
485
 
-
 
486
      If isAbtnRequired(aAbtnList, "btnAcceptRejectProd") Then
-
 
487
         varValues = Array( 14, "btnAcceptRejectProd", "Accept / Reject",_
-
 
488
                            """javascript:go_submit( document.FormName, """"btnAcceptRejectProd"""" );ShowProgress();""",_
-
 
489
                            null,_
-
 
490
                            "icons/btn_accept_reject_product.gif",_
-
 
491
                            "icons/btn_accept_reject_product_off.gif",_
-
 
492
                            "Accept / Reject Products",_
-
 
493
                            "Y",_
-
 
494
                            "Y",_
-
 
495
                            "Y")
-
 
496
         rsQry.AddNew varFields, varValues
-
 
497
      End If
-
 
498
 
-
 
499
      If isAbtnRequired(aAbtnList, "abtnProdProperties") Then
-
 
500
         varValues = Array( 15, "abtnProdProperties", null,_
-
 
501
                            """javascript:;""",_
-
 
502
                            """onClick=""""MM_openBrWindow('wEditProd.asp?prod_id_list=""& Request(""prod_id"") &""&rfile=""& SCRIPT_NAME & objPMod.ComposeURLWithout(""rfile"") &""','EditProd','scrollbars=yes,resizable=yes,width=700,height=500');""""""",_
-
 
503
                            "icons/abtn_properties.gif",_
-
 
504
                            "icons/abtn_properties_off.gif",_
-
 
505
                            "Edit Product properties",_
-
 
506
                            "Y",_
-
 
507
                            "Y",_
-
 
508
                            "N")
-
 
509
         rsQry.AddNew varFields, varValues
-
 
510
      End If
-
 
511
 
-
 
512
      If isAbtnRequired(aAbtnList, "abtnProdRemove") Then
-
 
513
         varValues = Array( 16, "abtnProdRemove", null,_
-
 
514
                            """_RemoveProductFromOs.asp?rfile=""& SCRIPT_NAME &""&prod_id_list=""& dbPARprod_id & objPMod.ComposeURLWithout(""prod_id"")",_
-
 
515
                            """onClick=""""return confirmAction('Remove \'""& objProdCollector.Item(""pkg_name"") &"" ""& objProdCollector.Item(""pkg_version"") &""\' from this OS?');""""""",_
-
 
516
                            "icons/abtn_remove.gif",_
-
 
517
                            "icons/abtn_remove_off.gif",_
-
 
518
                            "Remove Product from this Operating System",_
-
 
519
                            "Y",_
-
 
520
                            "Y",_
-
 
521
                            "N")
-
 
522
         rsQry.AddNew varFields, varValues
-
 
523
      End If
-
 
524
 
-
 
525
      If isAbtnRequired(aAbtnList, "abtnOSProperties") Then
-
 
526
         varValues = Array( 17, "abtnOSProperties", null,_
-
 
527
                            """javascript:;""",_
-
 
528
                            """onClick=""""MM_openBrWindow('wEditOS.asp?os_id_list=""& dbPARos_id &""&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','EditOS','scrollbars=yes,resizable=yes,width=600,height=350');""""""",_
-
 
529
                            "icons/abtn_properties.gif",_
-
 
530
                            "icons/abtn_properties_off.gif",_
-
 
531
                            "Edit Operating System properties",_
-
 
532
                            "Y",_
-
 
533
                            "Y",_
-
 
534
                            "N")
-
 
535
         rsQry.AddNew varFields, varValues
-
 
536
      End If
-
 
537
 
-
 
538
      If isAbtnRequired(aAbtnList, "abtnOSRemove") Then
-
 
539
         varValues = Array( 18, "abtnOSRemove", null,_
-
 
540
                            """_DestroyOs.asp?rfile=""& SCRIPT_NAME &""&node_id=""& dbPARnode_id &""&os_id_list=""& dbPARos_id & objPMod.ComposeURLWithout(""os_id"")",_
-
 
541
                            """onClick=""""return confirmAction('Remove \'""& objOsCollector.Item(""os_name"") &""\' from this Network Node?');""""""",_
-
 
542
                            "icons/abtn_remove.gif",_
-
 
543
                            "icons/abtn_remove_off.gif",_
-
 
544
                            "Remove Operating System from this Network Node",_
-
 
545
                            "Y",_
-
 
546
                            "Y",_
-
 
547
                            "N")
-
 
548
         rsQry.AddNew varFields, varValues
-
 
549
      End If
-
 
550
 
-
 
551
      If isAbtnRequired(aAbtnList, "btnCopyProd") Then
-
 
552
         varValues = Array( 19, "btnCopyProd", "Copy",_
-
 
553
                            """javascript:go_submit( document.FormName, """"btnCopyProd"""" );ShowProgress();""",_
-
 
554
                            null,_
-
 
555
                            "icons/btn_copy.gif",_
-
 
556
                            null,_
-
 
557
                            "Select and Copy Product",_
-
 
558
                            "Y",_
-
 
559
                            "Y",_
-
 
560
                            "Y")
-
 
561
         rsQry.AddNew varFields, varValues
-
 
562
      End If
-
 
563
 
-
 
564
      If isAbtnRequired(aAbtnList, "btnPasteProd") Then
-
 
565
         varValues = Array( 20, "btnPasteProd", "Paste",_
-
 
566
                            """javascript:;""",_
-
 
567
                            """onClick=""""MM_openBrWindow('wPasteItems.asp?copy_type=prod_id_list&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','PasteItems','scrollbars=yes,resizable=yes,width=400,height=500');""""""",_
-
 
568
                            "icons/btn_paste.gif",_
-
 
569
                            "icons/btn_paste_off.gif",_
-
 
570
                            "Paste Product here",_
-
 
571
                            "Y",_
-
 
572
                            "Y",_
-
 
573
                            "N")
-
 
574
         rsQry.AddNew varFields, varValues
-
 
575
      End If
-
 
576
 
-
 
577
      If isAbtnRequired(aAbtnList, "btnEditProd") Then
-
 
578
         varValues = Array( 21, "btnEditProd", null,_
-
 
579
                            """javascript:;""",_
-
 
580
                            """onClick=""""MM_openBrWindow('wEditProd.asp?prod_id_list=""& ProdId &""&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','EditProd','scrollbars=yes,resizable=yes,width=700,height=500');""""""",_
-
 
581
                            "icons/i_edit.gif",_
-
 
582
                            "icons/i_edit_off.gif",_
-
 
583
                            "Edit this entry",_
-
 
584
                            "Y",_
-
 
585
                            "Y",_
-
 
586
                            "N")
-
 
587
         rsQry.AddNew varFields, varValues
-
 
588
      End If
-
 
589
 
-
 
590
      If isAbtnRequired(aAbtnList, "btnRemoveProd") Then
-
 
591
         varValues = Array( 22, "btnRemoveProd", null,_
-
 
592
                            """_RemoveProductFromOs.asp?rfile=""& SCRIPT_NAME &""&prod_id_list=""& ProdId &""&""& objPMod.ComposeURL()",_
-
 
593
                            """onClick=""""return confirmAction('Remove \'""& ProdName &"" ""& ProdVersion &""\' from this list?');""""""",_
-
 
594
                            "icons/i_remove.gif",_
-
 
595
                            "icons/i_remove_off.gif",_
-
 
596
                            "Remove this entry",_
-
 
597
                            "Y",_
-
 
598
                            "Y",_
-
 
599
                            "N")
-
 
600
         rsQry.AddNew varFields, varValues
-
 
601
      End If
-
 
602
 
-
 
603
      If isAbtnRequired(aAbtnList, "btnRemoveOS") Then
-
 
604
         varValues = Array( 23, "btnRemoveOS", null,_
-
 
605
                            """_DestroyOs.asp?rfile=""& SCRIPT_NAME &""&os_id_list=""& OsId &""&""& objPMod.ComposeURL()",_
-
 
606
                            """onClick=""""return confirmAction('Remove \'""& OsName &""\' from this list?');""""""",_
-
 
607
                            "icons/i_remove.gif",_
-
 
608
                            "icons/i_remove_off.gif",_
-
 
609
                            "Remove this entry",_
-
 
610
                            "Y",_
-
 
611
                            "Y",_
-
 
612
                            "N")
-
 
613
         rsQry.AddNew varFields, varValues
-
 
614
      End If
-
 
615
 
-
 
616
      If isAbtnRequired(aAbtnList, "btnEditOS") Then
-
 
617
         varValues = Array( 24, "btnEditOS", null,_
-
 
618
                            """javascript:;""",_
-
 
619
                            """onClick=""""MM_openBrWindow('wEditOS.asp?os_id_list=""& OsId &""&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','EditOS','scrollbars=yes,resizable=yes,width=600,height=350');""""""",_
-
 
620
                            "icons/i_edit.gif",_
-
 
621
                            "icons/i_edit_off.gif",_
-
 
622
                            "Edit this entry",_
-
 
623
                            "Y",_
-
 
624
                            "Y",_
-
 
625
                            "N")
-
 
626
         rsQry.AddNew varFields, varValues
-
 
627
      End If
-
 
628
 
-
 
629
      If isAbtnRequired(aAbtnList, "btnAddBaseEnv") Then
-
 
630
         varValues = Array( 25, "btnAddBaseEnv", "Add Base Configuration",_
-
 
631
                            """javascript:;""",_
-
 
632
                            """onClick=""""MM_openBrWindow('wEditBaseEnv.asp?rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','EditBaseEnv','scrollbars=yes,resizable=yes,width=600,height=300');""""""",_
-
 
633
                            "icons/btn_add.gif",_
-
 
634
                            null,_
-
 
635
                            "Add Base Configuration",_
-
 
636
                            "Y",_
-
 
637
                            "Y",_
-
 
638
                            "N")
-
 
639
         rsQry.AddNew varFields, varValues
-
 
640
      End If
-
 
641
 
-
 
642
      If isAbtnRequired(aAbtnList, "btnDestroyBaseEnv") Then
-
 
643
         varValues = Array( 26, "btnDestroyBaseEnv", "Destroy Base Configuration",_
-
 
644
                            """_DestroyBaseEnv.asp?rfile=""& SCRIPT_NAME &""&base_env_id=""& BaseEnvId &""&""& objPMod.ComposeURL()",_
-
 
645
                            """onClick=""""return confirmAction('Remove \'""& BaseEnvName &""\' from this BOM?');""""""",_
-
 
646
                            "icons/btn_remove.gif",_
-
 
647
                            "icons/btn_remove_off.gif",_
-
 
648
                            "Destroy Base Configuration",_
-
 
649
                            "Y",_
-
 
650
                            "Y",_
-
 
651
                            "N")
-
 
652
         rsQry.AddNew varFields, varValues
-
 
653
      End If
-
 
654
 
-
 
655
      ' NOTE: I do not think this one is ever used
-
 
656
      If isAbtnRequired(aAbtnList, "btnBomHistory") Then
-
 
657
         varValues = Array( 27, "btnBomHistory", "History",_
-
 
658
                            """BomAllHistory.asp?""& objPMod.ComposeURL()",_
-
 
659
                            null,_
-
 
660
                            "icons/btn_history.gif",_
-
 
661
                            null,_
-
 
662
                            "History of All BOMs",_
-
 
663
                            "Y",_
-
 
664
                            "Y",_
-
 
665
                            "Y")
-
 
666
         rsQry.AddNew varFields, varValues
-
 
667
      End If
-
 
668
 
-
 
669
      If isAbtnRequired(aAbtnList, "btnRemoveProdBulk") Then
-
 
670
         varValues = Array( 28, "btnRemoveProdBulk", null,_
-
 
671
                            """javascript:go_submit( document.FormName, """"btnRemoveProdBulk"""" );ShowProgress();""",_
-
 
672
                            """onClick=""""return confirmAction('Remove selected Products from this OS?');""""""",_
-
 
673
                            "icons/btn_remove.gif",_
-
 
674
                            "icons/btn_remove_off.gif",_
-
 
675
                            "Remove selected Products from this OS",_
-
 
676
                            "Y",_
-
 
677
                            "Y",_
-
 
678
                            "N")
-
 
679
         rsQry.AddNew varFields, varValues
-
 
680
      End If
-
 
681
 
-
 
682
      If isAbtnRequired(aAbtnList, "btnRemoveOsBulk") Then
-
 
683
         varValues = Array( 29, "btnRemoveOsBulk", null,_
-
 
684
                            """javascript:go_submit( document.FormName, """"btnRemoveOsBulk"""" );ShowProgress();""",_
-
 
685
                            """onClick=""""return confirmAction('Remove selected OS from this Network Node?');""""""",_
-
 
686
                            "icons/btn_remove.gif",_
-
 
687
                            "icons/btn_remove_off.gif",_
-
 
688
                            "Remove selected OS from this Network Node",_
-
 
689
                            "Y",_
-
 
690
                            "Y",_
-
 
691
                            "N")
-
 
692
         rsQry.AddNew varFields, varValues
-
 
693
      End If
-
 
694
 
-
 
695
      If isAbtnRequired(aAbtnList, "btnPropertiesBaseEnv") Then
-
 
696
         varValues = Array( 30, "btnPropertiesBaseEnv", "Properties",_
-
 
697
                            """javascript:;""",_
-
 
698
                            """onClick=""""MM_openBrWindow('wEditBaseEnv.asp?base_env_id=""& BaseEnvId &""&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','EditBaseEnv','scrollbars=yes,resizable=yes,width=600,height=300');""""""",_
-
 
699
                            "icons/btn_properties.gif",_
-
 
700
                            "icons/btn_properties_off.gif",_
-
 
701
                            "Edit Base Configuration Properties",_
-
 
702
                            "Y",_
-
 
703
                            "Y",_
-
 
704
                            "N")
-
 
705
         rsQry.AddNew varFields, varValues
-
 
706
      End If
-
 
707
 
-
 
708
      If isAbtnRequired(aAbtnList, "btnEditNode") Then
-
 
709
         varValues = Array( 31, "btnEditNode", null,_
-
 
710
                            """javascript:;""",_
-
 
711
                            """onClick=""""MM_openBrWindow('wEditNode.asp?node_id_list=""& NodeId &""&rfile=""& SCRIPT_NAME & objPMod.ComposeURLWithout(""rfile"") &""','EditNode','scrollbars=yes,resizable=yes,width=600,height=350');""""""",_
-
 
712
                            "icons/i_edit.gif",_
-
 
713
                            "icons/i_edit_off.gif",_
-
 
714
                            "Edit this entry",_
-
 
715
                            "Y",_
-
 
716
                            "Y",_
-
 
717
                            "N")
-
 
718
         rsQry.AddNew varFields, varValues
-
 
719
      End If
-
 
720
 
-
 
721
      If isAbtnRequired(aAbtnList, "btnRemoveNode") Then
-
 
722
         varValues = Array( 32, "btnRemoveNode", null,_
-
 
723
                            """_DestroyNode.asp?rfile=""& SCRIPT_NAME &""&node_id_list=""& NodeId & objPMod.ComposeURLWithout(""node_id,rfile"")",_
-
 
724
                            """onClick=""""return confirmAction('Remove \'""& NodeName &""\' from this BOM?');""""""",_
-
 
725
                            "icons/i_remove.gif",_
-
 
726
                            "icons/i_remove_off.gif",_
-
 
727
                            "Remove Network Node from this BOM",_
-
 
728
                            "Y",_
-
 
729
                            "Y",_
-
 
730
                            "N")
-
 
731
         rsQry.AddNew varFields, varValues
-
 
732
      End If
-
 
733
 
-
 
734
      If isAbtnRequired(aAbtnList, "btnAddNode") Then
-
 
735
         varValues = Array( 33, "btnAddNode", "Add Network Node",_
-
 
736
                            """javascript:;""",_
-
 
737
                            """onClick=""""MM_openBrWindow('wEditNode.asp?node_id_list=""& NodeId &""&rfile=""& SCRIPT_NAME & objPMod.ComposeURLWithout(""rfile"") &""','EditNode','scrollbars=yes,resizable=yes,width=600,height=350');""""""",_
-
 
738
                            "icons/btn_add.gif",_
-
 
739
                            null,_
-
 
740
                            "Add Network Node",_
-
 
741
                            "Y",_
-
 
742
                            "Y",_
-
 
743
                            "N")
-
 
744
         rsQry.AddNew varFields, varValues
-
 
745
      End If
-
 
746
 
-
 
747
      If isAbtnRequired(aAbtnList, "btnRemoveNodeBulk") Then
-
 
748
         varValues = Array( 34, "btnRemoveNodeBulk", null,_
-
 
749
                            """javascript:go_submit( document.FormName, """"btnRemoveNodeBulk"""" );ShowProgress();""",_
-
 
750
                            """onClick=""""return confirmAction('Remove selected Network Node from this BOM?');""""""",_
-
 
751
                            "icons/btn_remove.gif",_
-
 
752
                            "icons/btn_remove_off.gif",_
-
 
753
                            "Remove selected Network Node from this BOM",_
-
 
754
                            "Y",_
-
 
755
                            "Y",_
-
 
756
                            "N")
-
 
757
         rsQry.AddNew varFields, varValues
-
 
758
      End If
-
 
759
 
-
 
760
      If isAbtnRequired(aAbtnList, "btnPasteNode") Then
-
 
761
         varValues = Array( 35, "btnPasteNode", "Paste",_
-
 
762
                            """javascript:;""",_
-
 
763
                            """onClick=""""MM_openBrWindow('wPasteItems.asp?copy_type=node_id_list&rfile=""& SCRIPT_NAME & objPMod.ComposeURLWithout(""rfile"") &""','PasteItems','scrollbars=yes,resizable=yes,width=400,height=500');""""""",_
-
 
764
                            "icons/btn_paste.gif",_
-
 
765
                            "icons/btn_paste_off.gif",_
-
 
766
                            "Paste Network Nodes here",_
-
 
767
                            "Y",_
-
 
768
                            "Y",_
-
 
769
                            "N")
-
 
770
         rsQry.AddNew varFields, varValues
-
 
771
      End If
-
 
772
 
-
 
773
      If isAbtnRequired(aAbtnList, "btnCopyNode") Then
-
 
774
         varValues = Array( 36, "btnCopyNode", "Copy",_
-
 
775
                            """javascript:go_submit( document.FormName, """"btnCopyNode"""" );ShowProgress();""",_
-
 
776
                            null,_
-
 
777
                            "icons/btn_copy.gif",_
-
 
778
                            null,_
-
 
779
                            "Select and Copy Network Nodes",_
-
 
780
                            "Y",_
-
 
781
                            "Y",_
-
 
782
                            "Y")
-
 
783
         rsQry.AddNew varFields, varValues
-
 
784
      End If
-
 
785
 
-
 
786
      If isAbtnRequired(aAbtnList, "btnAddBaseEnvProd") Then
-
 
787
         varValues = Array( 37, "btnAddBaseEnvProd", "Add Product",_
-
 
788
                            """javascript:;""",_
-
 
789
                            """onClick=""""MM_openBrWindow('wAddProd.asp?rfile=""& SCRIPT_NAME &""&base_env_id=""& BaseEnvId &""&""  & objPMod.ComposeURL() &""','AddProd','scrollbars=yes,resizable=yes,width=600,height=500');""""""",_
-
 
790
                            "icons/btn_add.gif",_
-
 
791
                            null,_
-
 
792
                            null,_
-
 
793
                            "Y",_
-
 
794
                            "Y",_
-
 
795
                            "N")
-
 
796
         rsQry.AddNew varFields, varValues
-
 
797
      End If
-
 
798
 
-
 
799
      If isAbtnRequired(aAbtnList, "btnEditProdBaseEnv") Then
-
 
800
         varValues = Array( 38, "btnEditProdBaseEnv", null,_
-
 
801
                            """javascript:;""",_
-
 
802
                            """onClick=""""MM_openBrWindow('wEditProd.asp?prod_id_list=""& ProdId &""&base_env_id=""& objOsCollector.Item(""base_env_id"") &""&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','EditProd','scrollbars=yes,resizable=yes,width=700,height=500');""""""",_
-
 
803
                            "icons/i_edit.gif",_
-
 
804
                            "icons/i_edit_off.gif",_
-
 
805
                            "Edit this entry",_
-
 
806
                            "Y",_
-
 
807
                            "Y",_
-
 
808
                            "N")
-
 
809
         rsQry.AddNew varFields, varValues
-
 
810
      End If
-
 
811
 
-
 
812
      If isAbtnRequired(aAbtnList, "btnRemoveProdBaseEnv") Then
-
 
813
         varValues = Array( 39, "btnRemoveProdBaseEnv", null,_
-
 
814
                            """_RemoveProductFromBaseEnv.asp?rfile=""& SCRIPT_NAME &""&base_env_id=""& BaseEnvId &""&prod_id_list=""& ProdId &""&""& objPMod.ComposeURL()",_
-
 
815
                            """onClick=""""return confirmAction('Remove \'""& ProdName &""\' from this list?');""""""",_
-
 
816
                            "icons/i_remove.gif",_
-
 
817
                            "icons/i_remove_off.gif",_
-
 
818
                            "Remove this entry",_
-
 
819
                            "Y",_
-
 
820
                            "Y",_
-
 
821
                            "N")
-
 
822
         rsQry.AddNew varFields, varValues
-
 
823
      End If
-
 
824
 
-
 
825
      If isAbtnRequired(aAbtnList, "abtnRMlink") Then
-
 
826
         varValues = Array( 40, "abtnRMlink", null,_
-
 
827
                            "RELEASE_MANAGER_URL &""/fixed_issues.asp?rtag_id=""& objProdCollector.Item(""rtag_id"") &""&pv_id=""& objProdCollector.Item(""pv_id"")",_
-
 
828
                            """target='_blank'""",_
-
 
829
                            "icons/abtn_rm_link.gif",_
-
 
830
                            null,_
-
 
831
                            "Open in Release Manager...",_
-
 
832
                            "Y",_
-
 
833
                            "Y",_
-
 
834
                            "Y")
-
 
835
         rsQry.AddNew varFields, varValues
-
 
836
      End If
-
 
837
 
-
 
838
      If isAbtnRequired(aAbtnList, "btnExportNodespec") Then
-
 
839
         varValues = Array( 41, "btnExportNodespec", "Export Node Spec",_
-
 
840
                            """javascript:;""",_
-
 
841
                            """onClick=""""MM_openBrWindow('wNodeSpec.asp?ostab=""&Request(""os_id"")&""&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','ExportNodeSpec','scrollbars=yes,resizable=yes,width=550,height=450');""""""",_
-
 
842
                            "icons/abtn_export_nodespec.gif",_
-
 
843
                            null,_
-
 
844
                            "Export Node Spec",_
-
 
845
                            "Y",_
-
 
846
                            "Y",_
-
 
847
                            "Y")
-
 
848
         rsQry.AddNew varFields, varValues
-
 
849
      End If
-
 
850
 
-
 
851
      If isAbtnRequired(aAbtnList, "btnSortProd") Then
-
 
852
         varValues = Array( 42, "btnSortProd", "Sort",_
-
 
853
                            """javascript:;""",_
-
 
854
                            """onClick=""""MM_openBrWindow('wSortProd.asp?rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','SortProd','scrollbars=yes,resizable=yes,width=500,height=800');""""""",_
-
 
855
                            "icons/btn_sort.gif",_
-
 
856
                            null,_
-
 
857
                            "Sort Products",_
-
 
858
                            "Y",_
-
 
859
                            "Y",_
-
 
860
                            "N")
-
 
861
         rsQry.AddNew varFields, varValues
-
 
862
      End If
-
 
863
 
-
 
864
      If isAbtnRequired(aAbtnList, "btnPasteProdToBaseEnv") Then
-
 
865
         varValues = Array( 43, "btnPasteProdToBaseEnv", "Paste",_
-
 
866
                            """javascript:;""",_
-
 
867
                            """onClick=""""MM_openBrWindow('wPasteItems.asp?base_env_id=""& objOsCollector.Item(""base_env_id"") &""&copy_type=prod_id_list&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','PasteItems','scrollbars=yes,resizable=yes,width=400,height=500');""""""",_
-
 
868
                            "icons/btn_paste.gif",_
-
 
869
                            "icons/btn_paste_off.gif",_
-
 
870
                            "Paste Product here",_
-
 
871
                            "Y",_
-
 
872
                            "Y",_
-
 
873
                            "N")
-
 
874
         rsQry.AddNew varFields, varValues
-
 
875
      End If
-
 
876
 
-
 
877
      If isAbtnRequired(aAbtnList, "btnSortNode") Then
-
 
878
         varValues = Array( 44, "btnSortNode", "Sort",_
-
 
879
                            """javascript:;""",_
-
 
880
                            """onClick=""""MM_openBrWindow('wSortNode.asp?rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','SortNode','scrollbars=yes,resizable=yes,width=500,height=800');""""""",_
-
 
881
                            "icons/btn_sort.gif",_
-
 
882
                            null,_
-
 
883
                            "Sort Nodes",_
-
 
884
                            "Y",_
-
 
885
                            "Y",_
-
 
886
                            "N")
-
 
887
         rsQry.AddNew varFields, varValues
-
 
888
      End If
-
 
889
 
-
 
890
      If isAbtnRequired(aAbtnList, "btnSortBase") Then
-
 
891
         varValues = Array( 45, "btnSortBase", "Sort",_
-
 
892
                            """javascript:;""",_
-
 
893
                            """onClick=""""MM_openBrWindow('wsortBase.asp?rfile=""& SCRIPT_NAME &""&base_env_id=""& BaseEnvId &""&prod_id_list=""& ProdId &""&""& objPMod.ComposeURL() &""','SortNode','scrollbars=yes,resizable=yes,width=500,height=800');""""""",_
-
 
894
                            "icons/btn_sort.gif",_
-
 
895
                            null,_
-
 
896
                            "Sort Base",_
-
 
897
                            "Y",_
-
 
898
                            "Y",_
-
 
899
                            "N")
-
 
900
         rsQry.AddNew varFields, varValues
-
 
901
      End If
-
 
902
 
-
 
903
      ' NOTE: I do not think this one is ever used
-
 
904
      If isAbtnRequired(aAbtnList, "btnNewVersion") Then
-
 
905
         varValues = Array( 46, "btnNewVersion", null,_
-
 
906
                            """javascript:go_submit( document.FormName, """"btnNewVersion"""" );ShowProgress();""",_
-
 
907
                            """onClick=""""return confirmAction('Do you really want to add new product version?');""""""",_
-
 
908
                            "images/abtn_new_version.gif",_
-
 
909
                            null,_
-
 
910
                            "Add new version of a product",_
-
 
911
                            "Y",_
-
 
912
                            "Y",_
-
 
913
                            "N")
-
 
914
         rsQry.AddNew varFields, varValues
-
 
915
      End If
-
 
916
 
-
 
917
      If isAbtnRequired(aAbtnList, "btnPatchGenerate") Then
-
 
918
         varValues = Array( 47, "btnPatchGenerate", "Patch List",_
-
 
919
                            """javascript:;""",_
-
 
920
                            """onClick=""""MM_openBrWindow('run_patch_GUI.asp?project=""& rsQry(""proj_name"") &""&release=""& rsQry(""branch_name"") &""&sbom=""& rsQry(""sbom_version"") &""&version=""& rsQry(""bom_version"") &""&lifecycle=""& rsQry(""bom_lifecycle"") &""&node="" &rsQry(""node_name"") &""&OS="" &rsQry(""os_name"") &""','PatchGenerator','scrollbars=yes,resizable=yes,width=500,height=600');""""""",_
-
 
921
                            "icons/i_patch_small.gif",_
-
 
922
                            null,_
-
 
923
                            "Displays the patches to be installed for this node",_
-
 
924
                            "Y",_
-
 
925
                            "Y",_
-
 
926
                            "Y")
-
 
927
         rsQry.AddNew varFields, varValues
-
 
928
      End If
-
 
929
 
-
 
930
      If isAbtnRequired(aAbtnList, "btnAddProc") Then
-
 
931
         varValues = Array( 48, "btnAddProc", "Add Process",_
-
 
932
                            """javascript:;""",_
-
 
933
                            """onClick=""""MM_openBrWindow('wAddProc.asp?rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','AddProd','scrollbars=yes,resizable=yes,width=800,height=500');""""""",_
-
 
934
                            "icons/btn_add.gif",_
-
 
935
                            null,_
-
 
936
                            null,_
-
 
937
                            "Y",_
-
 
938
                            "Y",_
-
 
939
                            "N")
-
 
940
         rsQry.AddNew varFields, varValues
-
 
941
      End If
-
 
942
 
-
 
943
      If isAbtnRequired(aAbtnList, "btnRemoveProc") Then
-
 
944
         varValues = Array( 49, "btnRemoveProc", null,_
-
 
945
                            """_RemoveProcessFromOs.asp?rfile=""& SCRIPT_NAME &""&pkg_owner=""& Owner &""&run_as=""& RunAs &""&interface=""& Interface &""&proc_name=""& ProcName &""&proc_id_list=""& ProcId &""&""& objPMod.ComposeURL()",_
-
 
946
                            """onClick=""""return confirmAction('Remove \'""& ProcName &""\' from this list?');""""""",_
-
 
947
                            "icons/i_remove.gif",_
-
 
948
                            "icons/i_remove_off.gif",_
-
 
949
                            "Remove this entry",_
-
 
950
                            "Y",_
-
 
951
                            "Y",_
-
 
952
                            "N")
-
 
953
         rsQry.AddNew varFields, varValues
-
 
954
      End If
-
 
955
 
-
 
956
      If isAbtnRequired(aAbtnList, "btnEditProc") Then
-
 
957
         varValues = Array( 50, "btnEditProc", null,_
-
 
958
                            """javascript:;""",_
-
 
959
                            """onClick=""""MM_openBrWindow('wEditProc.asp?proc_name=""& ProcName &""&proc_id_list=""& ProcId &""&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','EditProc','scrollbars=yes,resizable=yes,width=700,height=500');""""""",_
-
 
960
                            "icons/i_edit.gif",_
-
 
961
                            "icons/i_edit_off.gif",_
-
 
962
                            "Edit this entry",_
-
 
963
                            "Y",_
-
 
964
                            "Y",_
-
 
965
                            "N")
-
 
966
         rsQry.AddNew varFields, varValues
-
 
967
      End If
-
 
968
 
-
 
969
      If isAbtnRequired(aAbtnList, "btnNodeSpec") Then
-
 
970
         varValues = Array( 51, "btnNodeSpec", null,_
-
 
971
                            """NodeSpecBomGen.asp?bom_id=""&dbPARbom_id&""""",_
-
 
972
                            null,_
-
 
973
                            "icons/b_nodespec.gif",_
-
 
974
                            null,_
-
 
975
                            "Generate the node spec files based on the nodespec filename existence.",_
-
 
976
                            "Y",_
-
 
977
                            "Y",_
-
 
978
                            "Y")
-
 
979
         rsQry.AddNew varFields, varValues
-
 
980
      End If
-
 
981
 
-
 
982
      If isAbtnRequired(aAbtnList, "btnIsNodeSpec") Then
-
 
983
         varValues = Array( 52, "btnIsNodeSpec", null,_
-
 
984
                            """javascript:go_submit( document.FormName, """"btnIsNodeSpec"""" );ShowProgress();""",_
-
 
985
                            """onClick=""""return confirmAction('Add selected Products from this OS to the Node Spec File?');""""""",_
-
 
986
                            "icons/b_nodespec.gif",_
-
 
987
                            null,_
-
 
988
                            "Include in node spec file.",_
-
 
989
                            "Y",_
-
 
990
                            "Y",_
-
 
991
                            "Y")
-
 
992
         rsQry.AddNew varFields, varValues
-
 
993
      End If
-
 
994
 
-
 
995
      If isAbtnRequired(aAbtnList, "abtnUnhideProducts") Then
-
 
996
         varValues = Array( 53, "abtnUnhideProducts", "Unhide Products",_
-
 
997
                            """javascript:;""",_
-
 
998
                            """onClick=""""MM_openBrWindow('wUnhideProducts.asp?rfile=Bom_AllProducts.asp&""& objPMod.ComposeURL() &""','UnhideProducts','scrollbars=yes,resizable=yes,width=1000,height=700');""""""",_
-
 
999
                            "icons/bi_cancel.gif",_
-
 
1000
                            null,_
-
 
1001
                            "Unhide Products that are hidden.",_
-
 
1002
                            "Y",_
-
 
1003
                            "Y",_
-
 
1004
                            "N")
-
 
1005
         rsQry.AddNew varFields, varValues
-
 
1006
      End If
-
 
1007
 
-
 
1008
      If isAbtnRequired(aAbtnList, "btnRemoveObsoletePatches") Then
-
 
1009
         varValues = Array( 54, "btnRemoveObsoletePatches", "Remove",_
-
 
1010
                            """javascript:go_submit( document.FormName, """"btnRemoveObsoletePatches"""" );ShowProgress();""",_
-
 
1011
                            """onClick=""""return confirmAction('Remove obsolete patches from this OS?');""""""",_
-
 
1012
                            "icons/i_patch_small_obsolete.gif",_
-
 
1013
                            null,_
-
 
1014
                            null,_
-
 
1015
                            "Y",_
-
 
1016
                            "Y",_
-
 
1017
                            "N")
-
 
1018
         rsQry.AddNew varFields, varValues
-
 
1019
      End If
-
 
1020
 
-
 
1021
      ' NOTE: I do not think this one is ever used
-
 
1022
      If isAbtnRequired(aAbtnList, "abtnAddPatches") Then
-
 
1023
         varValues = Array( 55, "abtnAddPatches", "Add Patches",_
-
 
1024
                            """javascript:;""",_
-
 
1025
                            """onClick=""""MM_openBrWindow('wSyncProducts.asp?rfile=Bom_AllProducts.asp&""& objPMod.ComposeURL() &""','SyncProducts','scrollbars=yes,resizable=yes,width=1400,height=1000');""""""",_
-
 
1026
                            "icons\i_patch_small.gif",_
-
 
1027
                            null,_
-
 
1028
                            "Add Patches from Deployment Release",_
-
 
1029
                            "Y",_
-
 
1030
                            "Y",_
-
 
1031
                            "N")
-
 
1032
         rsQry.AddNew varFields, varValues
-
 
1033
      End If
-
 
1034
 
-
 
1035
      If isAbtnRequired(aAbtnList, "abtnRevertProdLatest") Then
-
 
1036
         varValues = Array( 56, "abtnRevertProdLatest", "Revert Products",_
-
 
1037
                            """javascript:;""",_
-
 
1038
                            """onClick=""""MM_openBrWindow('wRevertProducts.asp?rfile=Bom_AllProducts.asp&""& objPMod.ComposeURL() &""','SyncProducts','scrollbars=yes,resizable=yes,width=1400,height=1000');""""""",_
-
 
1039
                            "icons/btn_sync.gif",_
-
 
1040
                            "icons/btn_sync_off.gif",_
-
 
1041
                            "Update Products from Release Manager...",_
-
 
1042
                            "Y",_
-
 
1043
                            "Y",_
-
 
1044
                            "N")
-
 
1045
         rsQry.AddNew varFields, varValues
-
 
1046
      End If
-
 
1047
 
-
 
1048
      If isAbtnRequired(aAbtnList, "btnFTP") Then
-
 
1049
         varValues = Array( 57, "btnFTP", "Export FTP script",_
-
 
1050
                            """javascript:;""",_
-
 
1051
                            """onClick=""""MM_openBrWindow('wFTP.asp?ostab=""&Request(""os_id"")&""&rfile=""& SCRIPT_NAME &""&""& objPMod.ComposeURL() &""','ExportFTP','scrollbars=yes,resizable=yes,width=550,height=450');""""""",_
-
 
1052
                            null,_
-
 
1053
                            null,_
-
 
1054
                            null,_
-
 
1055
                            "Y",_
-
 
1056
                            "Y",_
-
 
1057
                            "Y")
-
 
1058
         rsQry.AddNew varFields, varValues
-
 
1059
      End If
-
 
1060
 
-
 
1061
      ' Move cursor to the first record
-
 
1062
      rsQry.MoveFirst
-
 
1063
 
249
		If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
1064
		If ((NOT rsQry.BOF) AND (NOT rsQry.EOF)) Then
250
			Call LoadButtons ( rsQry.GetRows() )
1065
			Call LoadButtons ( rsQry.GetRows() )
251
			
1066
 
252
		End If
1067
		End If
253
		
1068
 
254
		rsQry.Close
1069
		rsQry.Close
255
		Set rsQry = Nothing
1070
		Set rsQry = Nothing
256
	End Sub
1071
	End Sub
257
	'-----------------------------------------------------------------------------------------------------------------
1072
	'-----------------------------------------------------------------------------------------------------------------
258
	Public Sub LoadButtons ( aRows )
1073
	Public Sub LoadButtons ( aRows )
259
		Dim nProperty, newArrayDim, LastRow, rowNum
1074
		Dim nProperty, newArrayDim, LastRow, rowNum
260
		
1075
 
261
		LastRow = UBound( aRows, 2 )
1076
		LastRow = UBound( aRows, 2 )
262
		
1077
 
263
		For rowNum = 0 To LastRow
1078
		For rowNum = 0 To LastRow
264
			' Increase array by 1
1079
			' Increase array by 1
265
			newArrayDim = LastRowInx() + 1
1080
			newArrayDim = LastRowInx() + 1
266
			ReDim Preserve mArrAbtnDef( mNumOfProperties, newArrayDim )
1081
			ReDim Preserve mArrAbtnDef( mNumOfProperties, newArrayDim )
267
			
1082
 
268
			
1083
 
269
			mobjNameDefMap.Item ( Cstr( aRows ( InxName, rowNum ) ) ) = newArrayDim
1084
			mobjNameDefMap.Item ( Cstr( aRows ( InxName, rowNum ) ) ) = newArrayDim
270
			
1085
 
271
			For nProperty = 0 To mLastPropertyInx
1086
			For nProperty = 0 To mLastPropertyInx
272
				mArrAbtnDef ( nProperty, newArrayDim ) = aRows ( nProperty, rowNum )
1087
				mArrAbtnDef ( nProperty, newArrayDim ) = aRows ( nProperty, rowNum )
273
				
1088
 
274
			Next
1089
			Next
275
			
1090
 
276
		Next
1091
		Next
277
		
1092
 
278
	End Sub
1093
	End Sub
279
	'-----------------------------------------------------------------------------------------------------------------
1094
	'-----------------------------------------------------------------------------------------------------------------
280
	Private Function LastRowInx ()
1095
	Private Function LastRowInx ()
281
		 LastRowInx = UBound ( mArrAbtnDef, 2 )
1096
		 LastRowInx = UBound ( mArrAbtnDef, 2 )
282
	End Function
1097
	End Function
Line 337... Line 1152...
337
	Private Sub Class_Initialize()
1152
	Private Sub Class_Initialize()
338
		'// Perform action on creation of object. e.g. Set myObj = New ThisClassName
1153
		'// Perform action on creation of object. e.g. Set myObj = New ThisClassName
339
		Set mobjNameDefMap = CreateObject("Scripting.Dictionary")
1154
		Set mobjNameDefMap = CreateObject("Scripting.Dictionary")
340
		Set mobjIdDefMap = CreateObject("Scripting.Dictionary")
1155
		Set mobjIdDefMap = CreateObject("Scripting.Dictionary")
341
		Set mobjSeparator = CreateObject("Scripting.Dictionary")
1156
		Set mobjSeparator = CreateObject("Scripting.Dictionary")
342
		
1157
 
343
		'mbIsReadonly = FALSE	' Tell control that it should use only readonly action buttons (i.e. actions which will not alter database )
1158
		'mbIsReadonly = FALSE	' Tell control that it should use only readonly action buttons (i.e. actions which will not alter database )
344
		mReadonlyActionBehaviour = enumABTNCTRL_ON_READONLY_HIDE		' Tell control what to do by default if mbIsReadonly = TRUE
1159
		mReadonlyActionBehaviour = enumABTNCTRL_ON_READONLY_HIDE		' Tell control what to do by default if mbIsReadonly = TRUE
345
		
1160
 
346
		mnButtonSpacer = 0
1161
		mnButtonSpacer = 0
347
		mnButtonTextSpace = 4
1162
		mnButtonTextSpace = 4
348
		
1163
 
349
		mNumOfProperties = 11  	' Number of properties in array which define one menu item.
1164
		mNumOfProperties = 11  	' Number of properties in array which define one menu item.
350
		mLastPropertyInx = mNumOfProperties - 1
1165
		mLastPropertyInx = mNumOfProperties - 1
351
		
1166
 
352
		mbDisableAll = FALSE
1167
		mbDisableAll = FALSE
353
		
1168
 
354
		ReDim mArrAbtnDef ( mNumOfProperties, -1 )
1169
		ReDim mArrAbtnDef ( mNumOfProperties, -1 )
355
		InxID					= 0
1170
		InxID					= 0
356
		InxName					= 1
1171
		InxName					= 1
357
		InxTxt					= 2
1172
		InxTxt					= 2
358
		InxLink					= 3
1173
		InxLink					= 3
Line 361... Line 1176...
361
		InxImgOff				= 6
1176
		InxImgOff				= 6
362
		InxHint					= 7
1177
		InxHint					= 7
363
		InxVisible				= 8
1178
		InxVisible				= 8
364
		InxActive				= 9
1179
		InxActive				= 9
365
		InxIsReadonlyAction		= 10
1180
		InxIsReadonlyAction		= 10
366
		
1181
 
367
	End Sub
1182
	End Sub
368
	'-----------------------------------------------------------------------------------------------------------------
1183
	'-----------------------------------------------------------------------------------------------------------------
369
	Private Sub Class_Terminate()
1184
	Private Sub Class_Terminate()
370
		'// Perform action on object disposal. e.g. Set myObj = Nothing
1185
		'// Perform action on object disposal. e.g. Set myObj = Nothing
371
		Set mobjNameDefMap = Nothing
1186
		Set mobjNameDefMap = Nothing
372
		Set mobjIdDefMap = Nothing
1187
		Set mobjIdDefMap = Nothing
373
		Set mobjSeparator = Nothing
1188
		Set mobjSeparator = Nothing
374
		
1189
 
375
		
1190
 
376
	End Sub
1191
	End Sub
377
	'-----------------------------------------------------------------------------------------------------------------
1192
	'-----------------------------------------------------------------------------------------------------------------
378
End Class
1193
End Class
379
%>
-
 
380
1194
%>
-
 
1195