| Line 2012... |
Line 2012... |
| 2012 |
RequestDefault = Request(stag)
|
2012 |
RequestDefault = Request(stag)
|
| 2013 |
Else
|
2013 |
Else
|
| 2014 |
RequestDefault = sdefault
|
2014 |
RequestDefault = sdefault
|
| 2015 |
End If
|
2015 |
End If
|
| 2016 |
End Function
|
2016 |
End Function
|
| - |
|
2017 |
'--------------------------------------------------------------------------------------------------------------------------
|
| - |
|
2018 |
' Data structure to assist in the Release Mode Transition Check
|
| - |
|
2019 |
' Tuples (FromCondition, ToCondition) '-' == Always
|
| - |
|
2020 |
' Order matches ReleaseModeAccessCheck
|
| - |
|
2021 |
'
|
| - |
|
2022 |
Dim RMTD_Data
|
| - |
|
2023 |
RMTD_Data = Array(Array("-" ,"-"), _
|
| - |
|
2024 |
Array("ChangeModeFromRestrictive","-"), _
|
| - |
|
2025 |
Array("ChangeModeFromRestrictive","-"), _
|
| - |
|
2026 |
Array("ChangeModeFromClosed" ,"ChangeModeToClosed"), _
|
| - |
|
2027 |
Array("ChangeModeFromClosed" ,"ChangeModeToPreserved"), _
|
| - |
|
2028 |
Array("ChangeModeFromArchived" ,"ChangeModeToArchived") _
|
| - |
|
2029 |
)
|
| - |
|
2030 |
'-------------------------------------------------
|
| - |
|
2031 |
' Function: ReleaseMode2Index
|
| - |
|
2032 |
' Description: Convert a enumDB_RELEASE_IN_*** into an index into the above array
|
| - |
|
2033 |
'
|
| - |
|
2034 |
Function ReleaseMode2Index( eReleaseMode )
|
| - |
|
2035 |
If eReleaseMode = enumDB_RELEASE_IN_OPEN_MODE Then
|
| - |
|
2036 |
ReleaseMode2Index = 0
|
| - |
|
2037 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_RESTRICTIVE_MODE Then
|
| - |
|
2038 |
ReleaseMode2Index = 1
|
| - |
|
2039 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_CCB_MODE Then
|
| - |
|
2040 |
ReleaseMode2Index = 2
|
| - |
|
2041 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_CLOSED_MODE Then
|
| - |
|
2042 |
ReleaseMode2Index = 3
|
| - |
|
2043 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_PRESERVE_MODE Then
|
| - |
|
2044 |
ReleaseMode2Index = 4
|
| - |
|
2045 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_ARCHIVE_MODE Then
|
| - |
|
2046 |
ReleaseMode2Index = 5
|
| - |
|
2047 |
Else
|
| - |
|
2048 |
ReleaseMode2Index = -1
|
| - |
|
2049 |
End If
|
| - |
|
2050 |
End Function
|
| - |
|
2051 |
|
| - |
|
2052 |
'-------------------------------------------------
|
| - |
|
2053 |
' Function: ReleaseModeAccessCheck
|
| - |
|
2054 |
' Description: Determine if the user can change the Release Mode
|
| - |
|
2055 |
' from - Start at this Release Mode
|
| - |
|
2056 |
' to - Can the user transition to this mode
|
| - |
|
2057 |
' Returns: True - yes they can
|
| - |
|
2058 |
'
|
| - |
|
2059 |
Function ReleaseModeAccessCheck( from, toMode )
|
| - |
|
2060 |
Dim fromIndex : fromIndex = ReleaseMode2Index(from)
|
| - |
|
2061 |
Dim toIndex : toIndex = ReleaseMode2Index(toMode)
|
| - |
|
2062 |
ReleaseModeAccessCheck = False
|
| - |
|
2063 |
|
| - |
|
2064 |
' Can't Change to same mode
|
| - |
|
2065 |
If from = toMode Then
|
| - |
|
2066 |
Exit Function
|
| - |
|
2067 |
End If
|
| - |
|
2068 |
|
| - |
|
2069 |
On Error Resume Next
|
| - |
|
2070 |
Dim fromAccess : fromAccess = ""
|
| - |
|
2071 |
Dim toAccess : toAccess = ""
|
| - |
|
2072 |
|
| - |
|
2073 |
' Get access type from table
|
| - |
|
2074 |
' "" - No access (internal error)
|
| - |
|
2075 |
' "-" - All Access allowed (if user is logged in )
|
| - |
|
2076 |
' Else - Name of a canActionControlInProject
|
| - |
|
2077 |
fromAccess = RMTD_Data(fromIndex)(0)
|
| - |
|
2078 |
toAccess = RMTD_Data(toIndex)(1)
|
| - |
|
2079 |
|
| - |
|
2080 |
' Check From Condition
|
| - |
|
2081 |
If fromAccess = "-" Then
|
| - |
|
2082 |
ReleaseModeAccessCheck = canActionInProject()
|
| - |
|
2083 |
ElseIf fromAccess <> "" Then
|
| - |
|
2084 |
ReleaseModeAccessCheck = canActionControlInProject(fromAccess)
|
| - |
|
2085 |
End If
|
| - |
|
2086 |
|
| - |
|
2087 |
If NOT ReleaseModeAccessCheck Then
|
| - |
|
2088 |
Exit Function
|
| - |
|
2089 |
End If
|
| - |
|
2090 |
|
| - |
|
2091 |
' Check to Condition
|
| - |
|
2092 |
If toAccess = "-" Then
|
| - |
|
2093 |
ReleaseModeAccessCheck = canActionInProject()
|
| - |
|
2094 |
ElseIf toAccess <> "" Then
|
| - |
|
2095 |
ReleaseModeAccessCheck = canActionControlInProject(toAccess)
|
| - |
|
2096 |
End If
|
| - |
|
2097 |
|
| - |
|
2098 |
End Function
|
| - |
|
2099 |
|
| - |
|
2100 |
'-------------------------------------------------
|
| - |
|
2101 |
' Function: releaseIsClosed
|
| - |
|
2102 |
' Description: Determine if a release can be modified at all
|
| - |
|
2103 |
' Returns: True: Release cannot be modified
|
| - |
|
2104 |
' ie: it is NOT in a state that allows modification
|
| - |
|
2105 |
'
|
| - |
|
2106 |
Function releaseIsClosed(eReleaseMode)
|
| - |
|
2107 |
If eReleaseMode = enumDB_RELEASE_IN_OPEN_MODE Then
|
| - |
|
2108 |
releaseIsClosed = False
|
| - |
|
2109 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_RESTRICTIVE_MODE Then
|
| - |
|
2110 |
releaseIsClosed = False
|
| - |
|
2111 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_CCB_MODE Then
|
| - |
|
2112 |
releaseIsClosed = False
|
| - |
|
2113 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_CLOSED_MODE Then
|
| - |
|
2114 |
releaseIsClosed = True
|
| - |
|
2115 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_PRESERVE_MODE Then
|
| - |
|
2116 |
releaseIsClosed = True
|
| - |
|
2117 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_ARCHIVE_MODE Then
|
| - |
|
2118 |
releaseIsClosed = True
|
| - |
|
2119 |
Else
|
| - |
|
2120 |
releaseIsClosed = True
|
| - |
|
2121 |
End If
|
| - |
|
2122 |
End Function
|
| - |
|
2123 |
|
| - |
|
2124 |
'-------------------------------------------------
|
| - |
|
2125 |
' Function: releaseIsWritable
|
| - |
|
2126 |
' Description: Determine if a release can be modified
|
| - |
|
2127 |
' Returns: True: Release can be modified
|
| - |
|
2128 |
' ie: it is in a state that allows modification
|
| - |
|
2129 |
'
|
| - |
|
2130 |
Function releaseIsWritable(eReleaseMode)
|
| - |
|
2131 |
If eReleaseMode = enumDB_RELEASE_IN_OPEN_MODE AND canActionInProject() Then
|
| - |
|
2132 |
releaseIsWritable = True
|
| - |
|
2133 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_RESTRICTIVE_MODE AND canActionControlInProject("AlterReleaseContentsInRestrictiveMode") Then
|
| - |
|
2134 |
releaseIsWritable = True
|
| - |
|
2135 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_CCB_MODE AND canActionControlInProject("AlterReleaseContentsInRestrictiveMode")Then
|
| - |
|
2136 |
releaseIsWritable = True
|
| - |
|
2137 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_CLOSED_MODE Then
|
| - |
|
2138 |
releaseIsWritable = False
|
| - |
|
2139 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_PRESERVE_MODE Then
|
| - |
|
2140 |
releaseIsWritable = False
|
| - |
|
2141 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_ARCHIVE_MODE Then
|
| - |
|
2142 |
releaseIsWritable = False
|
| - |
|
2143 |
Else
|
| - |
|
2144 |
releaseIsWritable = False
|
| - |
|
2145 |
End If
|
| - |
|
2146 |
End Function
|
| - |
|
2147 |
|
| - |
|
2148 |
'-------------------------------------------------
|
| - |
|
2149 |
' Function: releaseIsMergable
|
| - |
|
2150 |
' Description: Determine if the user can 'Merge' into the release
|
| - |
|
2151 |
' Returns: True: Release can be modified
|
| - |
|
2152 |
' ie: it is in a state that allows modification
|
| - |
|
2153 |
'
|
| - |
|
2154 |
Function releaseIsMergable(eReleaseMode)
|
| - |
|
2155 |
If eReleaseMode = enumDB_RELEASE_IN_OPEN_MODE AND canActionControlInProject("MergeRelease") Then
|
| - |
|
2156 |
releaseIsMergable = True
|
| - |
|
2157 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_RESTRICTIVE_MODE AND canActionControlInProject("MergeRelease") Then
|
| - |
|
2158 |
releaseIsMergable = True
|
| - |
|
2159 |
ElseIf eReleaseMode = enumDB_RELEASE_IN_CCB_MODE AND canActionControlInProject("MergeReleaseForCCB") Then
|
| - |
|
2160 |
releaseIsMergable = True
|
| - |
|
2161 |
Else
|
| - |
|
2162 |
releaseIsMergable = False
|
| - |
|
2163 |
End If
|
| - |
|
2164 |
End Function
|
| - |
|
2165 |
|
| 2017 |
%>
|
2166 |
%>
|