%
Function GetSections()
On Error Resume Next
dim cmd
set cmd = Server.CreateObject("ADODB.Command")
set cmd.ActiveConnection = conn
cmd.CommandText = "SP_GET_SECTIONS"
cmd.CommandType = adCmdStoredProc
Set GetSections = cmd.execute
If err.number <> 0 Then
Call ReportError("GetSections", err.number, err.description)
End If
set cmd = nothing
On Error Goto 0
End Function
Function GetSelectedSection(intSectionId)
On Error Resume Next
dim cmd
set cmd = Server.CreateObject("ADODB.Command")
set cmd.ActiveConnection = conn
cmd.CommandText = "SP_GET_SELECTED_SECTION"
cmd.CommandType = adCmdStoredProc
cmd.Parameters.Append cmd.CreateParameter("SECTION_ID", adInteger, adParamInput, , intSectionId)
Set GetSelectedSection = cmd.execute
If err.number <> 0 Then
Call ReportError("GetSelectedSection", err.number, err.description)
End If
set cmd = nothing
On Error Goto 0
End Function
Function GetURLsOptions(intUrlId)
On Error Resume Next
dim rsOptions
dim strURLsOptions
Set rsOptions = GetURLs()
strURLsOptions = ""
If Not rsOptions.Eof Then
Do While Not rsOptions.Eof
strURLsOptions = strURLsOptions & "" & vbCRLF
rsOptions.MoveNext
Loop
End If
If err.number <> 0 Then
Call ReportError("GetURLsOptions(intSection)", err.number, err.description)
End If
rsOptions.Close
set rsOptions = Nothing
GetURLsOptions = strURLsOptions
On Error Goto 0
End Function
Sub ModifySection(intSectionId, strSectionName, intUrlId)
On Error Resume Next
dim cmd
If intUrlId = "" Then
intUrlId = Null
End If
set cmd = Server.CreateObject("ADODB.Command")
set cmd.ActiveConnection = conn
cmd.CommandText = "SP_SET_SECTION"
cmd.CommandType = adCmdStoredProc
cmd.Parameters.Append cmd.CreateParameter("SECTION_ID", adInteger, adParamInput, , intSectionId)
cmd.Parameters.Append cmd.CreateParameter("URL_ID", adInteger, adParamInput, , intUrlId)
cmd.Parameters.Append cmd.CreateParameter("SECTION_NAME_ENG", adVarchar, adParamInput, 100, strSectionName)
cmd.execute
If err.number <> 0 Then
Call ReportError("ModifySection", err.number, err.description)
End If
set cmd = nothing
On Error Goto 0
End Sub
Sub AddSection(strSectionName, intPositionId, intUrlId, intParentId)
dim cmd
dim bolSectionCanHaveMoreChildren
dim intMaximumNumberOfLevels
If intUrlId = "" Then
intUrlId = Null
End If
intMaximumNumberOfLevels = 5
bolSectionCanHaveMoreChildren = SectionCanHaveMoreChildren(intParentId, intMaximumNumberOfLevels)
set cmd = Server.CreateObject("ADODB.Command")
set cmd.ActiveConnection = conn
cmd.CommandText = "SP_INSERT_SECTION"
cmd.CommandType = adCmdStoredProc
cmd.Parameters.Append cmd.CreateParameter("SECTION_CAN_HAVE_MORE_CHILDREN", adInteger, adParamInput, , bolSectionCanHaveMoreChildren)
cmd.Parameters.Append cmd.CreateParameter("SECTION_ORDER", adInteger, adParamInput, , intPositionId)
cmd.Parameters.Append cmd.CreateParameter("PARENT_ID", adInteger, adParamInput, , intParentId)
cmd.Parameters.Append cmd.CreateParameter("URL_ID", adInteger, adParamInput, , intUrlId)
cmd.Parameters.Append cmd.CreateParameter("SECTION_NAME_ENG", adVarchar, adParamInput, 100, strSectionName)
cmd.execute
If err.number <> 0 Then
Call ReportError("AddSection", err.number, err.description)
End If
set cmd = nothing
On Error Goto 0
End Sub
Sub DeleteSection(intSectionId)
On Error Resume Next
dim cmd
set cmd = Server.CreateObject("ADODB.Command")
set cmd.ActiveConnection = conn
cmd.CommandText = "SP_DELETE_SECTION"
cmd.CommandType = adCmdStoredProc
cmd.Parameters.Append cmd.CreateParameter("SECTION_ID", adInteger, adParamInput, , intSectionId)
cmd.execute
If err.number <> 0 Then
Call ReportError("DeleteSection", err.number, err.description)
End If
set cmd = nothing
On Error Goto 0
End Sub
Function SectionCanHaveMoreChildren(intParentId, intMaximumNumberOfLevels)
On Error Resume Next
dim intTopSectionId
intTopSectionId = 7
SectionCanHaveMoreChildren = CBool((GetSectionLevel(intParentId, intTopSectionId) + 1) < intMaximumNumberOfLevels)
On Error Goto 0
End Function
Function GetSectionLevel(byVal intSectionId, intTopSectionId)
On Error Resume Next
dim intParentId
dim intSectionLevel
intParentId = 0
intSectionLevel = 0
Do While Not (intParentId = intTopSectionId)
intParentId = GetParent(intSectionId)
intSectionId = intParentId
intSectionLevel = intSectionLevel + 1
Loop
GetSectionLevel = intSectionLevel
On Error Goto 0
End Function
Function GetSectionsOptionsList(intParentId)
dim rsSections
dim strOptionsList
Set rsSections = GetSubsections(intParentId)
strOptionsList = ""
Do While Not rsSections.EOF
strOptionsList = strOptionsList & ""
rsSections.MoveNext
Loop
rsSections.Close
Set rsSections = Nothing
If err.number <> 0 Then
Call ReportError("GetSectionsOptionsList", err.number, err.description)
End If
GetSectionsOptionsList = strOptionsList
End Function
Function GetSubsectionCount(intParentId)
On Error Resume Next
dim cmd
set cmd = Server.CreateObject("ADODB.Command")
set cmd.ActiveConnection = conn
cmd.CommandText = "SP_GET_SUBSECTION_COUNT"
cmd.CommandType = adCmdStoredProc
cmd.Parameters.Append cmd.CreateParameter("SECTION_COUNT", adInteger, adParamOutput)
cmd.Parameters.Append cmd.CreateParameter("PARENT_ID", adInteger, adParamInput, , intParentId)
cmd.execute
GetSubsectionCount = cmd.Parameters("SECTION_COUNT")
If err.number <> 0 Then
Call ReportError("GetSubsectionCount", err.number, err.description)
End If
set cmd = nothing
On Error Goto 0
End Function
Sub ModifySectionSortOrder(strSectionList, strDelimiter)
On Error Resume Next
dim arSections
dim intArrayCounter
dim intSectionCounter
arSections = Split(strSectionList, strDelimiter)
intSectionCounter = 0
For intArrayCounter = LBound(arSections) To UBound(arSections)
If Trim(arSections(intArrayCounter)) <> "" Then
intSectionCounter = intSectionCounter + 1
Call SetSectionSortOrder(CInt(arSections(intArrayCounter)), CInt(intSectionCounter))
intArrayCounter = intArrayCounter + 1
End If
Next
If err.number <> 0 Then
Call ReportError("ModifySectionSortOrder", err.number, err.description)
End If
On Error Goto 0
End Sub
Sub SetSectionSortOrder(intSectionId, intPositionId)
On Error Resume Next
dim cmd
set cmd = Server.CreateObject("ADODB.Command")
set cmd.ActiveConnection = conn
cmd.CommandText = "SP_SET_SECTION_ORDER"
cmd.CommandType = adCmdStoredProc
cmd.Parameters.Append cmd.CreateParameter("SECTION_ID", adInteger, adParamInput, , intSectionId)
cmd.Parameters.Append cmd.CreateParameter("SECTION_ORDER", adInteger, adParamInput, , intPositionId)
cmd.execute
If err.number <> 0 Then
Call ReportError("SetSectionSortOrder", err.number, err.description)
End If
set cmd = nothing
On Error Goto 0
End Sub
Function ManageDHTMLNav(intNumberOfFirstLineMenuItems, level1)
dim strDHTMLNav
dim rsLevel1, rsLevel2
dim intLevel1ItemId, intLevel2ItemId
dim strLevel1ItemName, strLevel2ItemName
dim strLevel1ItemURL, strLevel2ItemURL
dim intLevel1MenuItemCounter
dim intLevel2MenuItemCounter
dim intSelected1stLevelId
dim intSelected2ndLevelId
dim intLevel2ItemCount
strDHTMLNav = ""
intLevel1MenuItemCounter = 0
Set rsLevel1 = GetSubsections(7)
If Not rsLevel1.Eof Then
Do While Not rsLevel1.Eof
intLevel1MenuItemCounter = intLevel1MenuItemCounter + 1
If intLevel1MenuItemCounter > intNumberOfFirstLineMenuItems Then
Exit Do
End If
intLevel1ItemId = rsLevel1("SECTION_ID")
strLevel1ItemName = rsLevel1("SECTION_NAME_ENG")
strLevel1ItemURL = rsLevel1("URL_ENG")
intLevel2ItemCount = GetSubsectionCount(intLevel1ItemId)
strDHTMLNav = strDHTMLNav & "Menu" & intLevel1MenuItemCounter & "=new Array(""" & LCase(strLevel1ItemName) & """,""" & strLevel1ItemURL & """,""""," & intLevel2ItemCount & ",16,1,"""","""","""","""","""","""",-1,-1,-1,"""","""");" & vbCRLF
Set rsLevel2 = GetSubsections(intLevel1ItemId)
If Not rsLevel2.Eof Then
intLevel2MenuItemCounter = 0
Do While Not rsLevel2.Eof
intLevel2MenuItemCounter = intLevel2MenuItemCounter + 1
intLevel2ItemId = rsLevel2("SECTION_ID")
strLevel2ItemName = rsLevel2("SECTION_NAME_ENG")
strLevel2ItemURL = rsLevel2("URL_ENG")
strDHTMLNav = strDHTMLNav & "Menu" & intLevel1MenuItemCounter & "_" & intLevel2MenuItemCounter & "=new Array(""" & strLevel2ItemName & """,""" & strLevel2ItemURL & ""","""",0,15,150,""#C89328"",""#FFFFFF"",""#000000"",""#000000"",""#FFFFFF"",""arial,verdana,sans-serif"",8,-1,-1,"""","""");" & vbCRLF
rsLevel2.MoveNext
Loop
End If
rsLevel1.MoveNext
Loop
End If
rsLevel1.Close
Set rsLevel1 = Nothing
If IsObject(rsLevel2) Then
rsLevel2.Close
Set rsLevel2 = Nothing
End If
ManageDHTMLNav = strDHTMLNav
If err.number <> 0 Then
Call ReportError("ManageDHTMLNav", err.number, err.description)
End If
On Error Goto 0
End Function
Function ManageDHTMLNav2(intNumberOfFirstLineMenuItems, level1)
dim strDHTMLNav
dim rsLevel1, rsLevel2
dim intLevel1ItemId, intLevel2ItemId
dim strLevel1ItemName, strLevel2ItemName
dim strLevel1ItemURL, strLevel2ItemURL
dim intLevel1MenuItemCounter
dim intLevel2MenuItemCounter
dim intSelected1stLevelId
dim intSelected2ndLevelId
dim intLevel2ItemCount
dim intLevel1ColWidth
strDHTMLNav = ""
intLevel1MenuItemCounter = 0
Set rsLevel1 = GetSubsections(7)
If Not rsLevel1.Eof Then
Do While Not rsLevel1.Eof
intLevel1MenuItemCounter = intLevel1MenuItemCounter + 1
If intLevel1MenuItemCounter > intNumberOfFirstLineMenuItems Then
Exit Do
End If
intLevel1ItemId = rsLevel1("SECTION_ID")
strLevel1ItemName = rsLevel1("SECTION_NAME_ENG")
strLevel1ItemURL = rsLevel1("URL_ENG")
strLevel1ItemClass = "firstlevel"
bolSubsectionIsCurrentURL = SubsectionIsCurrentURL(intLevel1ItemId, strCurrentURL)
intLevel2ItemCount = GetSubsectionCount(intLevel1ItemId)
Select Case LCase(strLevel1ItemName)
Case "about us"
intLevel1ColWidth = 60
Case "programs"
intLevel1ColWidth = 65
Case "professionals"
intLevel1ColWidth = 90
Case "employers"
intLevel1ColWidth = 75
Case "academic partners"
intLevel1ColWidth = 115
Case "organization & government partners"
intLevel1ColWidth = 215
End Select
strDHTMLNav = strDHTMLNav & "addMainItem(""" & strLevel1ItemURL & """,""" & LCase(strLevel1ItemName) & """," & intLevel1ColWidth & ",""center"","""","""",0,0,""u"");" & vbCRLF
Set rsLevel2 = GetSubsections(intLevel1ItemId)
If Not rsLevel2.Eof Then
strDHTMLNav = strDHTMLNav & "defineSubmenuProperties(100,""left"",""left"",0,0,"""");"
intLevel2MenuItemCounter = 0
Do While Not rsLevel2.Eof
intLevel2MenuItemCounter = intLevel2MenuItemCounter + 1
intLevel2ItemId = rsLevel2("SECTION_ID")
strLevel2ItemName = rsLevel2("SECTION_NAME_ENG")
strLevel2ItemURL = rsLevel2("URL_ENG")
strLevel2ItemClass = "secondlevel"
bolSubsectionIsCurrentURL = SubsectionIsCurrentURL(intLevel2ItemId, strCurrentURL)
strDHTMLNav = strDHTMLNav & "addSubmenuItem(""" & strLevel2ItemURL & """,""" & strLevel2ItemName & ""","""","""");" & vbCRLF
rsLevel2.MoveNext
Loop
End If
rsLevel1.MoveNext
Loop
End If
rsLevel1.Close
Set rsLevel1 = Nothing
If IsObject(rsLevel2) Then
rsLevel2.Close
Set rsLevel2 = Nothing
End If
ManageDHTMLNav2 = strDHTMLNav
If err.number <> 0 Then
Call ReportError("ManageDHTMLNav2", err.number, err.description)
End If
On Error Goto 0
End Function
Function GetStringSectionsWithNoChildren()
On Error Resume Next
dim strURLjsArray
dim rsURLs
dim intURLcounter
strURLjsArray = ""
intURLcounter = 0
Set rsURLs = GetSectionsWithNoChildren()
Do While Not rsURLs.Eof
If intURLcounter <> 0 Then
strURLjsArray = strURLjsArray & ", "
End If
strURLjsArray = strURLjsArray & """" & rsURLs("SECTION_ID") & """"
intURLcounter = intURLcounter + 1
rsURLs.MoveNext
Loop
GetStringSectionsWithNoChildren = strURLjsArray
If err.number <> 0 Then
Call ReportError("GetStringSectionsWithNoChildren", err.number, err.description)
End If
On Error Goto 0
End Function
Function GetSectionsWithNoChildren()
On Error Resume Next
dim cmd
set cmd = Server.CreateObject("ADODB.Command")
set cmd.ActiveConnection = conn
cmd.CommandText = "SP_GET_URLS_WITH_NO_CHILDREN"
cmd.CommandType = adCmdStoredProc
Set GetSectionsWithNoChildren = cmd.execute
If err.number <> 0 Then
Call ReportError("GetSectionsWithNoChildren", err.number, err.description)
End If
set cmd = nothing
On Error Goto 0
End Function
%>