%@LANGUAGE="VBSCRIPT"%>
<%
'=====================================================
'| |
'| Edit Project View Details |
'| |
'=====================================================
Option explicit
' Good idea to set when using redirect
Response.Expires = 0 ' always load the page, dont store
%>
<%
' Set rfile parameter. This is a return page after Login
Call objPMod.StoreParameter ( "rfile", "rtree.asp" )
objPMod.PersistInQryString("proj_id")
'------------ ACCESS CONTROL ------------------
%>
<%
'------------ Variable Definition -------------
Dim objSortHelper
Dim rsQry
Dim parProjId
Dim parSourceRtagId
'------------ Constants Declaration -----------
'------------ Variable Init -------------------
parProjId = Request("proj_id")
objPMod.PersistInQryString("proj_id")
'----------------------------------------------
'--------------------------------------------------------------------------------------------------------------------------
Sub GetFormDetails ( parProjId, ByRef outobjDetails )
Dim rsQry, query
OraDatabase.Parameters.Add "PROJ_ID", parProjId, ORAPARM_INPUT, ORATYPE_NUMBER
query = _
" SELECT prj.* "&_
" FROM PROJECTS prj"&_
" WHERE prj.PROJ_ID = :PROJ_ID"
Set rsQry = OraDatabase.DbCreateDynaset( query, ORADYN_DEFAULT )
OraDatabase.Parameters.Remove "PROJ_ID"
If rsQry.RecordCount > 0 Then
outobjDetails.Item ("proj_id") = rsQry("proj_id")
outobjDetails.Item ("proj_name") = rsQry("proj_name")
Else
Err.Raise 8, "Sub GetFormDetails in "& ScriptName, "Empty record set returned. parProjId="& parProjId
End If
rsQry.Close
Set rsQry = Nothing
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Sub DeleteViewOwner (userId, viewId)
On Error Resume Next
OraDatabase.Parameters.Add "PROJ_ID", Request("proj_id"), ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "VIEW_ID", viewId, ORAPARM_INPUT, ORATYPE_NUMBER
OraDatabase.Parameters.Add "USER_ID_LIST", userId, ORAPARM_INPUT, ORATYPE_VARCHAR2
OraDatabase.Parameters.Add "USER_ID", objAccessControl.UserId, ORAPARM_INPUT, ORATYPE_NUMBER
objEH.TryORA ( OraSession )
OraDatabase.ExecuteSQL _
"BEGIN REMOVE_PROJECT_VIEW_OWNER ( :PROJ_ID, :VIEW_ID, :USER_ID_LIST, :USER_ID ); END;"
objEH.CatchORA ( OraSession )
OraDatabase.Parameters.Remove "PROJ_ID"
OraDatabase.Parameters.Remove "VIEW_ID"
OraDatabase.Parameters.Remove "USER_ID_LIST"
OraDatabase.Parameters.Remove "USER_ID"
End Sub
'--------------------------------------------------------------------------------------------------------------------------
Sub GetUserViewId(value, posComma)
txt = value
posComma = InStr(txt, ",")
End Sub
'--------------------------------------------------------------------------------------------------------------------------
'------------ RUN BEFORE PAGE RENDER ----------
' --- Get Form details from DB ---
Call GetFormDetails ( Request("proj_id"), objFormCollector )
' --- Enter Form Validation Rule Changes here... ----
'----------------------------------------------------
' --- RUN onPostBack ---
If Request("action") <> "" Then
If objForm.IsValidOnPostBack Then
Dim txt,posComma, posUnderscore, userId, viewId, value
Call GetUserViewId(Request("user_view_id_list"), posComma)
While posComma <> 0
value = Mid(txt, 1, posComma-1)
posUnderscore = Instr(value, "_")
userId = Mid(value, 1, posUnderscore - 1)
viewId = Mid(value, posUnderscore + 1, posComma-1)
Call DeleteViewOwner(userId, viewId)
txt = Mid(txt, posComma + 1, Len(txt))
posComma = InStr(txt, ",")
Wend
If posComma = 0 Then
posUnderscore = Instr(txt, "_")
If posUnderscore>0 Then
userId = Mid(txt, 1, posUnderscore - 1)
viewId = Mid(txt, posUnderscore + 1)
Call DeleteViewOwner(userId, viewId)
End If
End if
If objEH.Finally Then
Call OpenInWindow ( "form_edit_project_view.asp?proj_id="&Request("proj_id")&"&FRview_id="&Request("FRview_id") )
End If
End If
End If
'----------------------------------------------
%>
<%
OraDatabase.Parameters.Add "PROJ_ID", parProjId, ORAPARM_INPUT, ORATYPE_NUMBER
Dim Query_String
Dim RecordCount
RecordCount=0
Query_String = _
" SELECT DISTINCT vi.view_id, vi.view_name"&_
" FROM VIEWS vi"&_
" WHERE vi.view_name = 'PROJECT WIDE'"
Set rsQry = OraDatabase.DbCreateDynaset( Query_String , cint(0) )
RecordCount=rsQry.RecordCount
OraDatabase.Parameters.Remove "PROJ_ID"
Response.write "
<%
If RecordCount>0 and objAccessControl.IsActive("AdminView") Then
%>
','AddApplicationUser','scrollbars=yes,resizable=yes,width=650,height=800')">Add View Owner
<%
End If
%>
Base View
Full Name
User Name
User Email
<%
Dim currViewId
currViewId = -1
Set rsQry = OraDatabase.DbCreateDynaset( "SELECT * FROM USERS USR, MEMBERS_GROUP MG, VIEWS V, AUTOBUILD_FAILURE AF WHERE AF.PROJ_ID = "& Request("proj_id") &" AND AF.GROUP_EMAIL_ID = MG.GROUP_EMAIL_ID AND USR.USER_ID = MG.USER_ID AND V.VIEW_ID = AF.VIEW_ID ORDER BY V.VIEW_NAME, USR.FULL_NAME" , cint(0) )
'--- Render rows ---
Do While (NOT rsQry.BOF) AND (NOT rsQry.EOF)
' -------- GROUP BY BASE VIEW -----------------
If CDbl(currViewid) <> CDbl(rsQry("view_id")) Then
%>
<%=rsQry("view_name")%>
<%
currViewId = CDbl(rsQry("view_id"))
End If
%>
_<%=rsQry("view_id")%>">
<%=rsQry("full_name")%>
<%=rsQry("user_name")%>
<%=rsQry("user_email")%>
<%
rsQry.MoveNext
If (NOT rsQry.BOF) AND (NOT rsQry.EOF) Then
%>
<%
End If
Loop
rsQry.Close()
Set rsQry = nothing
%>
<%=objFormComponent.CancelButton ( "OK", "class='form_btn'", "rtree.asp?CANCEL=OK&"& objPMod.ComposeURL() )%>
<%=objPMod.ComposeHiddenTags()%>
<%
If objAccessControl.IsActive("AdminView") Then
%>
<%
End If
%>
">
<%
Call objFormComponent.FormEnd()
'-- FROM END ----------------------------------------------------------------------------------------------------------------
%>