Metropoli BBS
VIEWER: commands.asp MODE: TEXT (ASCII)
<% @ LANGUAGE=VBSCRIPT CODEPAGE = 1252 %>
<!--#include file="../constant.inc"-->
<!--#include file="../lib/session.inc"-->
<% SendHeader 0 , 1 %>
<!--#include file="../lib/pageutil.inc"-->
<!--#include file="../lib/store.inc"-->
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<TITLE>Results</TITLE>

<%
'<!--Microsoft Outlook Web Access-->
'<!--commands.asp : MoveCopy Dialog-->
'<!--Copyright (c) Microsoft Corporation 1993-1997. All rights reserved.-->

On Error Resume Next

Dim bstrProcess				'Move or Copy
Dim bstrItem				'Folder or Message
Dim bstrSrcFolderID			'Source folder id
Dim bstrDestFolderID		'Destination folder id
Dim bstrSrcMsgID			'Source message ID
Dim objDestFolder			'Destination folder object
Dim objSrcFolder			'Source folder object
Dim bstrDestStoreID

CheckSession										'getrend.inc
OpenAllStores

bstrProcess=Request.Form("process")
bstrItem=Request.Form("item")
bstrSrcFolderID = Request.Form("srcfolder")
bstrDestFolderID= Request.Form("destfolder")
bstrSrcMsgID=Request.Form("srcmsg")
bstrDestStoreID = Request.Form("destStoreID")
bstrMovePermission = Request.Form("movePermission")	'0 - No permission
bstrCopyPermission = Request.Form("copyPermission") '0 - No permission

hasError = 0

	bstrBodyTag=""
	err.clear

	If bstrItem="folder" Then
		Set objSrcFolder=OpenFolder(bstrSrcFolderID)		'store.inc
		
		If objSrcFolder Is Nothing Or IsEmpty(objSrcFolder.ID) Then
			HandleErrors 0
		Else

			If bstrProcess="move" Then
				If bstrMovePermission = "0" Then	' No permission
					HandleErrors 5
				Else
					objSrcFolder.MoveTo bstrDestFolderID
				End If
			Else
				If bstrCopyPermission = "0" Then	' No permission
					HandleErrors 4
				Else
					objSrcFolder.CopyTo bstrDestFolderID
				End If
			End If

			If Err.Number = mapiW_PARTIAL_COMPLETION Then
				If CanCreateFolders( objSrcFolder) Then
					Err.Number = 4
				Else
					Err.Number = 3
				End If
			End If

			If Err.Number<>0 Then
				HandleErrors Err.Number
			End If
		End If

	Else 'message

		Set objSrcMessage = OpenMessage(bstrSrcMsgID)
			
		If objSrcMessage Is Nothing Or objSrcMessage.ID="" Then
			HandleErrors 1
		Else
			
            If bstrProcess="move" Then
				If bstrMovePermission = "0" Then	' No permission
					HandleErrors 7
				Else
					objSrcMessage.MoveTo bstrDestFolderID, bstrDestStoreID
				End If
            Else
				If bstrCopyPermission = "0" Then	' No permission
					HandleErrors 6
				Else
					Set objDestMsg = objSrcMessage.CopyTo(bstrDestFolderID, bstrDestStoreID)
					If err.number = 0 Then
						objDestMsg.Update
					End If
				End If
            End If

			If Err.Number = MAPI_E_FAIL or Err.Number = MAPI_E_NO_ACCESS Then
				Err.Number = 2  ' can't create the item in destination folder
			ElseIf Err.Number = mapiW_PARTIAL_COMPLETION Then
				Err.Number = 3  ' can't move the item from source folder
			End If
			
			If Err.Number<>0 Then
				HandleErrors Err.Number
			End If
		End If
	End If


'--------------------------------------------------------------------
Public Function CanCreateFolders(objFldr)
	CanCreateFolders=False
	'check for permissions and set flags
	nFolderAccess = objFldr.Fields.Item(ActMsgPR_ACCESS) 
	bCanMakeFolders = nFolderAccess And MAPI_ACCESS_CREATE_HIERARCHY
	If bCanMakeFolders<>0 Then CanCreateFolders=True
End Function
'---------------------------------------------------------------------
Public Sub HandleErrors(ErrorNum)
    hasError = 1
	bstrError =  L_errUnknown_ErrorMessage  
    L_errMoveItemPermision_ErrorMessage = "You do not have the necessary permissions to move items from that folder."

	Select Case ErrorNum
		Case MAPI_E_COLLISION 
			bstrError =  L_errCopyFolderExists_ErrorMessage
		Case MAPI_E_NOT_FOUND  
			bstrError =  L_errCopyFolderPermission_ErrorMessage
		Case 0
			bstrError = L_errOpenFolder_ErrorMessage
		Case 1	
			bstrError = L_errFailOpenMessage_ErrorMessage 
		Case 2	
			bstrError = L_errCreateItemPermision_ErrorMessage 
		Case 3
			bstrError = L_errMoveItemPermision_ErrorMessage 
		Case 4
			bstrError = L_errCopyFolderPermission_ErrorMessage
		Case 5
			bstrError = L_errMoveFolderPermission_ErrorMessage
		Case 6
			bstrError = L_errCopyMessagePermission_ErrorMessage
		Case 7
			bstrError = L_errMoveMessagePermission_ErrorMessage
	End Select
	err.clear
	bstrBodyTag = bstrError

End Sub
'------------------------------------------------------------------------
%>

<% If hasError = 1 Then %>
    <BODY bgcolor=#c0c0c0 text=000000 link=000000 vlink=000000 alink=000000 leftmargin=1 topmargin=0 <% If fDeleted = True Then %>onLoad="RedirectToRoot()"<% End If %>>
    <center>
    <%=bstrBodyTag%>
    <br><br>
    <form>
    <input type="button" value="OK" onClick="self.close();">
    </form>
    </center>
<% Else %>
    <BODY bgcolor=#c0c0c0 onLoad="self.close()">
<% End If %>

</body>
</html>
[ RETURN TO DIRECTORY ]