Subversion Repositories DevTools

Rev

Rev 5116 | Blame | Compare with Previous | Last modification | View Log | RSS feed

<%
'=====================================================
'   globals_sdk.asp
'
'   Globals for pages that work with SDKs
'   And do not work with Projects and Packages
'
'   Exports:
'       parSdk_id
'       parSdkTag_id
'
'   Sets up the security context
'
'=====================================================
Dim parSdk_id       : parSdk_id = QStrPar("sdk_id")
Dim parSdkTag_id    : parSdkTag_id = QStrPar("sdktag_id")

If parSdk_id = ""    Then parSdk_id = 0
If parSdkTag_id = "" Then parSdkTag_id = 0

'   Set the security context of an SDK based operation
'   Use the sdk_id or sdktag_id to determine the controlling project
'   Then set the ActiveProject to that. This will then allow the    
'   canActionControl*() functions to provide meaningful results
'
Function setSdkProjectContext( )
    Dim rsQry, query
    Dim nProjId : nProjId = -1

    ' Get parameters from database
    OraDatabase.Parameters.Add "SDKTAGID",  parSdkTag_id,   ORAPARM_INPUT, ORATYPE_VARCHAR2
    OraDatabase.Parameters.Add "SDKID",     parSdk_id,      ORAPARM_INPUT, ORATYPE_VARCHAR2

    If parSdk_id <> "0" Then
        query = "SELECT skn.PROJ_ID from SDK_NAMES skn WHERE skn.SDK_ID = :SDKID" 
    Else
        query = "SELECT skn.PROJ_ID from SDK_NAMES skn, SDK_TAGS skt WHERE skn.SDK_ID = skt.SDK_ID AND skt.SDKTAG_ID = :SDKTAGID" 
    End If

    Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )
    nProjId = CDbl(rsQry("PROJ_ID")) 
    rsQry.Close()
    Set rsQry = Nothing

    OraDatabase.Parameters.Remove "SDKID"
    OraDatabase.Parameters.Remove "SDKTAGID"

    ' Set the Active Project for access control
    setActiveProject(nProjId)
    setSdkProjectContext = nProjId
End Function

setSdkProjectContext()
%>