home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 March / CHIPCD_3_98.iso / software / testsoft / exchange / webdata / usa / lib / store.inc < prev   
Text File  |  1997-08-25  |  4KB  |  134 lines

  1. <%
  2. '!--Microsoft Outlook Web Access-->
  3. '!--Store.inc - Open functions-->
  4. '!--Copyright (c) Microsoft Corporation 1993-1997. All rights reserved.-->
  5. '===CONTENTS========================
  6. ' OpenPrivateStore
  7. ' OpenPublicStore
  8. ' OpenAllStores
  9. ' OpenMessage
  10. ' OpenFolder
  11. '========================
  12.  
  13. '=======================
  14. ' OpenPrivateStore
  15. '
  16. ' Returns: Sets bstrObjPrivateStore
  17. '=======================
  18. Sub OpenPrivateStore
  19.     On Error Resume Next
  20.  
  21.     Dim objPrivateStore
  22.  
  23.     If Session(bstrObjPrivateStore) Is Nothing Then
  24.         Err.Clear
  25.         If (Session(bstrAuthenticated)) Then
  26.             szPrivateID = objOMSession.Inbox.StoreID
  27.             Set objPrivateStore = objOMSession.GetInfoStore(szPrivateID)
  28.             If (Err.Number <> 0) Then
  29.  
  30.                 ReportError1 L_errFailedToGetInbox_ErrorMessage
  31.             Else
  32.                 Set Session(bstrObjPrivateStore) = objPrivateStore          
  33.                 Set Session(bstrDeletedItemsID) = objPrivateStore.Fields.Item(ActMsgPR_IPM_WASTEBASKET_ENTRYID)
  34.             End If
  35.         End If
  36.     End If
  37.     Set objPrivateStore = Nothing
  38. End Sub
  39.  
  40. '=======================
  41. ' OpenPublicStore
  42. '
  43. ' Returns: Sets bstrObjPublicStore
  44. '=======================
  45.  
  46. Sub OpenPublicStore
  47.     On Error Resume Next
  48.  
  49.     If Session(bstrObjPublicStore) Is Nothing Then
  50.         Err.Clear 
  51.  
  52.         Set objStores = objOMSession.InfoStores
  53.         If (Err.Number <> 0) Then
  54.             ReportError1 L_errFailGetStores_ErrorMessage
  55.  
  56.         Else
  57.             For i = 1 To objStores.Count
  58.                 Set objStore = objStores.Item(i)
  59.                 szID = objStore.Fields.Item(ActMsgPR_IPM_PUBLIC_FOLDERS_ENTRYID) 
  60.                 lMask = objStore.Fields.Item(ActMsgPR_STORE_SUPPORT_MASK)
  61.                 Err.Clear
  62.                 If lMask And ActMsgSTORE_PUBLIC_FOLDERS Then            ' STORE_PUBLIC_FOLDERS
  63.                     Set Session(bstrObjPublicStore) = objStore
  64.                     Session(bstrPublicStoreID) = objStore.ID
  65.                     Session(bstrPublicStoreRootID) = szID
  66.                     Session(bstrPublicStoreEntryID) = objStore.Fields.Item(ActMsgPR_STORE_ENTRYID)
  67.                     Exit For
  68.                 End If
  69.             Next
  70.         End If
  71.  
  72.     End If
  73.  
  74. End Sub
  75. '=======================
  76. ' OpenAllStores
  77. '
  78. ' side effect: opens all available message stores
  79. '=======================
  80. Sub OpenAllStores
  81.  
  82.     On Error Resume Next
  83.  
  84.     OpenPrivateStore
  85.     OpenPublicStore
  86. End Sub
  87.  
  88. '=======================
  89. ' OpenMessage
  90. '
  91. ' Returns: message object in private or public store
  92. '=======================
  93. Public Function OpenMessage(szMessageID)
  94.     On Error Resume Next
  95.  
  96.     Set OpenMessage = Nothing
  97.  
  98.     Set objMessage = objOMSession.GetMessage(szMessageID, NULL)
  99.     If objMessage Is Nothing Or IsEmpty(objMessage.ID) Then
  100.         Err.Clear
  101.         OpenAllStores
  102.         Set objMessage = objOMSession.GetMessage(szMessageID, NULL)
  103.     End If
  104.  
  105.     Set OpenMessage = objMessage
  106. End Function
  107.  
  108. '=======================
  109. ' OpenFolder
  110. '
  111. ' Returns: folder object in private or public store
  112. '=======================
  113. Public Function OpenFolder(szFolderID)
  114.     On Error Resume Next
  115.  
  116.     Set OpenFolder = Nothing
  117.  
  118.     Set objOpenFolder = objOMSession.GetFolder(szFolderID, NULL)
  119.     If objOpenFolder Is Nothing Then
  120.         Err.Clear
  121.         OpenAllStores
  122.         Set objOpenFolder = objOMSession.GetFolder(szFolderID, NULL)
  123.     ElseIf IsEmpty(objOpenFolder.ID) Then
  124.         Err.Clear
  125.         OpenAllStores
  126.         Set objOpenFolder = objOMSession.GetFolder(szFolderID, NULL)
  127.     End If
  128.  
  129.     Set OpenFolder = objOpenFolder
  130. End Function
  131.  
  132.  
  133. %>
  134.