Revision: 118
http://svn.sourceforge.net/nmailserver/?rev=118&view=rev
Author: tmyroadctfig
Date: 2007-01-19 04:59:46 -0800 (Fri, 19 Jan 2007)
Log Message:
-----------
Got mail folder list working.
Modified Paths:
--------------
NMail/trunk/NMail.WebAccess/App_Themes/Default/Default.css
NMail/trunk/NMail.WebAccess/App_WebReferences/RemoteAccessService/RemoteAccessService.wsdl
NMail/trunk/NMail.WebAccess/Login.aspx
NMail/trunk/NMail.WebAccess/Mail.aspx
NMail/trunk/NMail.WebAccess/Web.config
Added Paths:
-----------
NMail/trunk/NMail.WebAccess/App_Code/SubscribedFolderDataSource.cs
NMail/trunk/NMail.WebAccess/Bin/MenuPilot.dll.refresh
NMail/trunk/NMail.WebAccess/Controls/Mail/SubscribedFolderList.ascx
NMail/trunk/NMail.WebAccess/Controls/Mail/SubscribedFolderList.ascx.cs
NMail/trunk/NMail.WebAccess/Global.asax
NMail/trunk/NMail.WebAccess/Images/Tango/
NMail/trunk/NMail.WebAccess/Images/Tango/Folder.png
NMail/trunk/NMail.WebAccess/Images/Tango/FolderOpen.png
NMail/trunk/NMail.WebAccess/Images/Tango/License.txt
NMail/trunk/NMail.WebAccess/Images/action.gif
Removed Paths:
-------------
NMail/trunk/NMail.WebAccess/Controls/Mail/FolderTree.ascx
NMail/trunk/NMail.WebAccess/Controls/Mail/FolderTree.ascx.cs
Property Changed:
----------------
NMail/trunk/NMail.WebAccess/Bin/
NMail/trunk/NMail.WebAccess/Images/Skins/Default/
Added: NMail/trunk/NMail.WebAccess/App_Code/SubscribedFolderDataSource.cs
===================================================================
--- NMail/trunk/NMail.WebAccess/App_Code/SubscribedFolderDataSource.cs (rev 0)
+++ NMail/trunk/NMail.WebAccess/App_Code/SubscribedFolderDataSource.cs 2007-01-19 12:59:46 UTC (rev 118)
@@ -0,0 +1,79 @@
+
+using System;
+using System.Data;
+using System.Collections.Generic;
+using System.Configuration;
+using System.Web;
+using System.Web.Security;
+using System.Web.UI;
+using System.Web.SessionState;
+using System.Web.UI.WebControls;
+using System.Web.UI.WebControls.WebParts;
+using System.Web.UI.HtmlControls;
+
+using NMail.DataTypes.LocalStore;
+using RemoteAccessService;
+
+namespace NMail.WebAccess
+{
+ public static class SubscribedFolderDataSource
+ {
+ public static List<StoreFolder> GetSubscribedFolders()
+ {
+ IHttpSessionState session = SessionStateUtility.GetHttpSessionStateFromContext(HttpContext.Current);
+ string authToken = (string)session["AuthToken"];
+ RemoteAccessService.RemoteAccessService ras = (RemoteAccessService.RemoteAccessService)session["RAS"];
+
+ StoreFolderSerializer[] serializedFolders = ras.GetAllSubscribedFolders(authToken);
+ List<StoreFolder> result = new List<StoreFolder>();
+ List<int> folderIds = new List<int>();
+
+ foreach (StoreFolderSerializer serializedFolder in serializedFolders)
+ {
+ result.Add(new StoreFolder(serializedFolder));
+ folderIds.Add(serializedFolder.FolderId);
+ }
+
+ int[][] folderMessageCounts = ras.GetFolderMessageCounts(authToken, folderIds.ToArray(), (int)StoreMessageFlags.Seen);
+
+ for (int i = 0; i < folderMessageCounts.Length; i++)
+ {
+ result[i].TotalMessages = folderMessageCounts[i][0];
+ result[i].SeenMessages = folderMessageCounts[i][1];
+ }
+
+ return result;
+ }
+ }
+
+ public class StoreFolder : NMail.DataTypes.LocalStore.StoreFolder
+ {
+ public StoreFolder(StoreFolderSerializer serializedFolder)
+ : base(serializedFolder.NameSpace, serializedFolder.Name, serializedFolder.FolderId, serializedFolder.ParentId, serializedFolder.HasChildren)
+ {}
+
+ private int totalMessages;
+
+ public int TotalMessages
+ {
+ get { return totalMessages; }
+ set { totalMessages = value; }
+ }
+
+ private int seenMessages;
+
+ public int SeenMessages
+ {
+ get { return seenMessages; }
+ set { seenMessages = value; }
+ }
+
+ /// <summary>
+ /// The number of unread messages in the folder.
+ /// </summary>
+ public int UnreadMessages
+ {
+ get { return (totalMessages - seenMessages); }
+ }
+ }
+}
\ No newline at end of file
Modified: NMail/trunk/NMail.WebAccess/App_Themes/Default/Default.css
===================================================================
--- NMail/trunk/NMail.WebAccess/App_Themes/Default/Default.css 2007-01-19 12:51:44 UTC (rev 117)
+++ NMail/trunk/NMail.WebAccess/App_Themes/Default/Default.css 2007-01-19 12:59:46 UTC (rev 118)
@@ -28,4 +28,13 @@
vertical-align: middle;
padding-left: 0.5em;
padding-right: 0.5em;
+}
+
+.SubscribedFolder
+{
+}
+
+.SubscribedFolderUnread
+{
+ font-weight: bold;
}
\ No newline at end of file
Modified: NMail/trunk/NMail.WebAccess/App_WebReferences/RemoteAccessService/RemoteAccessService.wsdl
===================================================================
--- NMail/trunk/NMail.WebAccess/App_WebReferences/RemoteAccessService/RemoteAccessService.wsdl 2007-01-19 12:51:44 UTC (rev 117)
+++ NMail/trunk/NMail.WebAccess/App_WebReferences/RemoteAccessService/RemoteAccessService.wsdl 2007-01-19 12:59:46 UTC (rev 118)
@@ -40,25 +40,81 @@
<s:element minOccurs="1" maxOccurs="1" name="ParentId" nillable="true" type="s:int" />
</s:sequence>
</s:complexType>
- <s:element name="GetSubscribedFolders">
+ <s:element name="GetStoreFolderByFolderId">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="authToken" type="s:string" />
+ <s:element minOccurs="1" maxOccurs="1" name="folderId" type="s:int" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="GetSubscribedFoldersResponse">
+ <s:element name="GetStoreFolderByFolderIdResponse">
<s:complexType>
<s:sequence>
- <s:element minOccurs="0" maxOccurs="1" name="GetSubscribedFoldersResult" type="tns:ArrayOfStoreFolderSerializer" />
+ <s:element minOccurs="1" maxOccurs="1" name="StoreFolder" nillable="true" type="tns:StoreFolderSerializer" />
</s:sequence>
</s:complexType>
</s:element>
+ <s:element name="GetStoreFolderByName">
+ <s:complexType>
+ <s:sequence>
+ <s:element minOccurs="0" maxOccurs="1" name="authToken" type="s:string" />
+ <s:element minOccurs="0" maxOccurs="1" name="folderName" type="s:string" />
+ </s:sequence>
+ </s:complexType>
+ </s:element>
+ <s:element name="GetStoreFolderByNameResponse">
+ <s:complexType>
+ <s:sequence>
+ <s:element minOccurs="1" maxOccurs="1" name="StoreFolder" nillable="true" type="tns:StoreFolderSerializer" />
+ </s:sequence>
+ </s:complexType>
+ </s:element>
+ <s:element name="GetAllSubscribedFolders">
+ <s:complexType>
+ <s:sequence>
+ <s:element minOccurs="0" maxOccurs="1" name="authToken" type="s:string" />
+ </s:sequence>
+ </s:complexType>
+ </s:element>
+ <s:element name="GetAllSubscribedFoldersResponse">
+ <s:complexType>
+ <s:sequence>
+ <s:element minOccurs="0" maxOccurs="1" name="GetAllSubscribedFoldersResult" type="tns:ArrayOfStoreFolderSerializer" />
+ </s:sequence>
+ </s:complexType>
+ </s:element>
<s:complexType name="ArrayOfStoreFolderSerializer">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="StoreFolderSerializer" nillable="true" type="tns:StoreFolderSerializer" />
</s:sequence>
</s:complexType>
+ <s:element name="GetFolderMessageCounts">
+ <s:complexType>
+ <s:sequence>
+ <s:element minOccurs="0" maxOccurs="1" name="authToken" type="s:string" />
+ <s:element minOccurs="0" maxOccurs="1" name="folderIds" type="tns:ArrayOfInt" />
+ <s:element minOccurs="1" maxOccurs="1" name="flags" type="s:int" />
+ </s:sequence>
+ </s:complexType>
+ </s:element>
+ <s:complexType name="ArrayOfInt">
+ <s:sequence>
+ <s:element minOccurs="0" maxOccurs="unbounded" name="int" type="s:int" />
+ </s:sequence>
+ </s:complexType>
+ <s:element name="GetFolderMessageCountsResponse">
+ <s:complexType>
+ <s:sequence>
+ <s:element minOccurs="0" maxOccurs="1" name="GetFolderMessageCountsResult" type="tns:ArrayOfArrayOfInt" />
+ </s:sequence>
+ </s:complexType>
+ </s:element>
+ <s:complexType name="ArrayOfArrayOfInt">
+ <s:sequence>
+ <s:element minOccurs="0" maxOccurs="unbounded" name="ArrayOfInt" nillable="true" type="tns:ArrayOfInt" />
+ </s:sequence>
+ </s:complexType>
</s:schema>
</wsdl:types>
<wsdl:message name="AuthenticateSoapIn">
@@ -73,12 +129,30 @@
<wsdl:message name="GetNominalFolderSoapOut">
<wsdl:part name="parameters" element="tns:GetNominalFolderResponse" />
</wsdl:message>
- <wsdl:message name="GetSubscribedFoldersSoapIn">
- <wsdl:part name="parameters" element="tns:GetSubscribedFolders" />
+ <wsdl:message name="GetStoreFolderByFolderIdSoapIn">
+ <wsdl:part name="parameters" element="tns:GetStoreFolderByFolderId" />
</wsdl:message>
- <wsdl:message name="GetSubscribedFoldersSoapOut">
- <wsdl:part name="parameters" element="tns:GetSubscribedFoldersResponse" />
+ <wsdl:message name="GetStoreFolderByFolderIdSoapOut">
+ <wsdl:part name="parameters" element="tns:GetStoreFolderByFolderIdResponse" />
</wsdl:message>
+ <wsdl:message name="GetStoreFolderByNameSoapIn">
+ <wsdl:part name="parameters" element="tns:GetStoreFolderByName" />
+ </wsdl:message>
+ <wsdl:message name="GetStoreFolderByNameSoapOut">
+ <wsdl:part name="parameters" element="tns:GetStoreFolderByNameResponse" />
+ </wsdl:message>
+ <wsdl:message name="GetAllSubscribedFoldersSoapIn">
+ <wsdl:part name="parameters" element="tns:GetAllSubscribedFolders" />
+ </wsdl:message>
+ <wsdl:message name="GetAllSubscribedFoldersSoapOut">
+ <wsdl:part name="parameters" element="tns:GetAllSubscribedFoldersResponse" />
+ </wsdl:message>
+ <wsdl:message name="GetFolderMessageCountsSoapIn">
+ <wsdl:part name="parameters" element="tns:GetFolderMessageCounts" />
+ </wsdl:message>
+ <wsdl:message name="GetFolderMessageCountsSoapOut">
+ <wsdl:part name="parameters" element="tns:GetFolderMessageCountsResponse" />
+ </wsdl:message>
<wsdl:portType name="RemoteAccessServiceSoap">
<wsdl:operation name="Authenticate">
<wsdl:input message="tns:AuthenticateSoapIn" />
@@ -88,10 +162,22 @@
<wsdl:input message="tns:GetNominalFolderSoapIn" />
<wsdl:output message="tns:GetNominalFolderSoapOut" />
</wsdl:operation>
- <wsdl:operation name="GetSubscribedFolders">
- <wsdl:input message="tns:GetSubscribedFoldersSoapIn" />
- <wsdl:output message="tns:GetSubscribedFoldersSoapOut" />
+ <wsdl:operation name="GetStoreFolderByFolderId">
+ <wsdl:input message="tns:GetStoreFolderByFolderIdSoapIn" />
+ <wsdl:output message="tns:GetStoreFolderByFolderIdSoapOut" />
</wsdl:operation>
+ <wsdl:operation name="GetStoreFolderByName">
+ <wsdl:input message="tns:GetStoreFolderByNameSoapIn" />
+ <wsdl:output message="tns:GetStoreFolderByNameSoapOut" />
+ </wsdl:operation>
+ <wsdl:operation name="GetAllSubscribedFolders">
+ <wsdl:input message="tns:GetAllSubscribedFoldersSoapIn" />
+ <wsdl:output message="tns:GetAllSubscribedFoldersSoapOut" />
+ </wsdl:operation>
+ <wsdl:operation name="GetFolderMessageCounts">
+ <wsdl:input message="tns:GetFolderMessageCountsSoapIn" />
+ <wsdl:output message="tns:GetFolderMessageCountsSoapOut" />
+ </wsdl:operation>
</wsdl:portType>
<wsdl:binding name="RemoteAccessServiceSoap" type="tns:RemoteAccessServiceSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
@@ -113,8 +199,8 @@
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="GetSubscribedFolders">
- <soap:operation soapAction="http://nmailserver.sf.net/RemoteAccessService/1.0/GetSubscribedFolders" style="document" />
+ <wsdl:operation name="GetStoreFolderByFolderId">
+ <soap:operation soapAction="http://nmailserver.sf.net/RemoteAccessService/1.0/GetStoreFolderByFolderId" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
@@ -122,6 +208,33 @@
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
+ <wsdl:operation name="GetStoreFolderByName">
+ <soap:operation soapAction="http://nmailserver.sf.net/RemoteAccessService/1.0/GetStoreFolderByName" style="document" />
+ <wsdl:input>
+ <soap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="GetAllSubscribedFolders">
+ <soap:operation soapAction="http://nmailserver.sf.net/RemoteAccessService/1.0/GetAllSubscribedFolders" style="document" />
+ <wsdl:input>
+ <soap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="GetFolderMessageCounts">
+ <soap:operation soapAction="http://nmailserver.sf.net/RemoteAccessService/1.0/GetFolderMessageCounts" style="document" />
+ <wsdl:input>
+ <soap:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
</wsdl:binding>
<wsdl:binding name="RemoteAccessServiceSoap12" type="tns:RemoteAccessServiceSoap">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
@@ -143,8 +256,8 @@
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="GetSubscribedFolders">
- <soap12:operation soapAction="http://nmailserver.sf.net/RemoteAccessService/1.0/GetSubscribedFolders" style="document" />
+ <wsdl:operation name="GetStoreFolderByFolderId">
+ <soap12:operation soapAction="http://nmailserver.sf.net/RemoteAccessService/1.0/GetStoreFolderByFolderId" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
@@ -152,6 +265,33 @@
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
+ <wsdl:operation name="GetStoreFolderByName">
+ <soap12:operation soapAction="http://nmailserver.sf.net/RemoteAccessService/1.0/GetStoreFolderByName" style="document" />
+ <wsdl:input>
+ <soap12:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap12:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="GetAllSubscribedFolders">
+ <soap12:operation soapAction="http://nmailserver.sf.net/RemoteAccessService/1.0/GetAllSubscribedFolders" style="document" />
+ <wsdl:input>
+ <soap12:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap12:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
+ <wsdl:operation name="GetFolderMessageCounts">
+ <soap12:operation soapAction="http://nmailserver.sf.net/RemoteAccessService/1.0/GetFolderMessageCounts" style="document" />
+ <wsdl:input>
+ <soap12:body use="literal" />
+ </wsdl:input>
+ <wsdl:output>
+ <soap12:body use="literal" />
+ </wsdl:output>
+ </wsdl:operation>
</wsdl:binding>
<wsdl:service name="RemoteAccessService">
<wsdl:port name="RemoteAccessServiceSoap" binding="tns:RemoteAccessServiceSoap">
Property changes on: NMail/trunk/NMail.WebAccess/Bin
___________________________________________________________________
Name: svn:ignore
- log4net.dll
NMail.dll
NMail.RemoteAccessService.Serializers.dll
NMail.RemoteAccessService.Serializers.pdb
NMail.LocalStore.dll
+ log4net.dll
NMail.dll
NMail.RemoteAccessService.Serializers.dll
NMail.RemoteAccessService.Serializers.pdb
NMail.LocalStore.dll
MenuPilot.dll
Added: NMail/trunk/NMail.WebAccess/Bin/MenuPilot.dll.refresh
===================================================================
(Binary files differ)
Property changes on: NMail/trunk/NMail.WebAccess/Bin/MenuPilot.dll.refresh
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Deleted: NMail/trunk/NMail.WebAccess/Controls/Mail/FolderTree.ascx
===================================================================
--- NMail/trunk/NMail.WebAccess/Controls/Mail/FolderTree.ascx 2007-01-19 12:51:44 UTC (rev 117)
+++ NMail/trunk/NMail.WebAccess/Controls/Mail/FolderTree.ascx 2007-01-19 12:59:46 UTC (rev 118)
@@ -1,3 +0,0 @@
-<%@ Control Language="C#" AutoEventWireup="true" CodeFile="FolderTree.ascx.cs" Inherits="Controls_Mail_FolderTree" %>
-<asp:TreeView ID="FolderTreeView" runat="server">
-</asp:TreeView>
Deleted: NMail/trunk/NMail.WebAccess/Controls/Mail/FolderTree.ascx.cs
===================================================================
--- NMail/trunk/NMail.WebAccess/Controls/Mail/FolderTree.ascx.cs 2007-01-19 12:51:44 UTC (rev 117)
+++ NMail/trunk/NMail.WebAccess/Controls/Mail/FolderTree.ascx.cs 2007-01-19 12:59:46 UTC (rev 118)
@@ -1,21 +0,0 @@
-using System;
-using System.Data;
-using System.Configuration;
-using System.Collections;
-using System.Web;
-using System.Web.Security;
-using System.Web.UI;
-using System.Web.UI.WebControls;
-using System.Web.UI.WebControls.WebParts;
-using System.Web.UI.HtmlControls;
-
-public partial class Controls_Mail_FolderTree : System.Web.UI.UserControl
-{
- protected void Page_Load(object sender, EventArgs e)
- {
- RemoteAccessService.RemoteAccessService ras = (RemoteAccessService.RemoteAccessService)Session["RAS"];
- string authToken = Session["AuthToken"];
-
- ras.Get
- }
-}
Added: NMail/trunk/NMail.WebAccess/Controls/Mail/SubscribedFolderList.ascx
===================================================================
--- NMail/trunk/NMail.WebAccess/Controls/Mail/SubscribedFolderList.ascx (rev 0)
+++ NMail/trunk/NMail.WebAccess/Controls/Mail/SubscribedFolderList.ascx 2007-01-19 12:59:46 UTC (rev 118)
@@ -0,0 +1,28 @@
+<%@ Control Language="C#" AutoEventWireup="true" CodeFile="SubscribedFolderList.ascx.cs" Inherits="Controls_Mail_SubscribedFolderList" %>
+
+<%@ Register Assembly="MenuPilot" Namespace="MenuPilot.Web.Ui" TagPrefix="mp" %>
+
+<asp:Repeater ID="FolderRepeater" runat="server" DataSourceID="SubscribedFolderDataSource">
+ <ItemTemplate>
+ <mp:MenuPilotHyperlink
+ Text='<%# GetFolderString(Container.DataItem) %>'
+ ID="MenuPilotHyperlink"
+ HintIcon="~/Images/action.gif"
+ NavigateUrl="dff"
+ runat="server">
+
+ <mp:MenuItem NavigateUrl="someurl" Text="cccc" Title="sfdv" />
+ </mp:MenuPilotHyperlink>
+
+
+
+ <br />
+ <!-- <mp:MenuPilotLabel Text= -->
+ </ItemTemplate>
+</asp:Repeater>
+
+<asp:ObjectDataSource
+ ID="SubscribedFolderDataSource"
+ runat="server"
+ SelectMethod="GetSubscribedFolders"
+ TypeName="NMail.WebAccess.SubscribedFolderDataSource" />
\ No newline at end of file
Added: NMail/trunk/NMail.WebAccess/Controls/Mail/SubscribedFolderList.ascx.cs
===================================================================
--- NMail/trunk/NMail.WebAccess/Controls/Mail/SubscribedFolderList.ascx.cs (rev 0)
+++ NMail/trunk/NMail.WebAccess/Controls/Mail/SubscribedFolderList.ascx.cs 2007-01-19 12:59:46 UTC (rev 118)
@@ -0,0 +1,47 @@
+using System;
+using System.Data;
+using System.Configuration;
+using System.Collections;
+using System.Text;
+using System.Web;
+using System.Web.Security;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+using System.Web.UI.WebControls.WebParts;
+using System.Web.UI.HtmlControls;
+
+using NMail.WebAccess;
+
+public partial class Controls_Mail_SubscribedFolderList : System.Web.UI.UserControl
+{
+ protected void Page_Load(object sender, EventArgs e)
+ {
+
+ }
+
+ protected string GetFolderString(object o) {
+ StoreFolder f = (StoreFolder) o;
+ StringBuilder result = new StringBuilder();
+
+ result.Append("<span class='");
+
+ if (f.UnreadMessages > 0)
+ {
+ result.Append("SubscribedFolderUnread");
+ }
+ else
+ {
+ result.Append("SubscribedFolder");
+ }
+ result.Append("'>");
+
+ result.Append(f.FullFolderName);
+
+ if (f.UnreadMessages > 0) {
+ result.Append(string.Format(" ({0})", f.UnreadMessages));
+ result.Append("</span>");
+ }
+
+ return result.ToString();
+ }
+}
Added: NMail/trunk/NMail.WebAccess/Global.asax
===================================================================
--- NMail/trunk/NMail.WebAccess/Global.asax (rev 0)
+++ NMail/trunk/NMail.WebAccess/Global.asax 2007-01-19 12:59:46 UTC (rev 118)
@@ -0,0 +1,39 @@
+<%@ Application Language="C#" %>
+<%@ Import Namespace="System.Web.Configuration" %>
+
+<script runat="server">
+
+ void Application_Start(object sender, EventArgs e)
+ {
+ Configuration c = WebConfigurationManager.OpenWebConfiguration("/NMail.WebAccess");
+ NMail.Configuration.NMailConfigFile.Current = c;
+ }
+
+ void Application_End(object sender, EventArgs e)
+ {
+ // Code that runs on application shutdown
+
+ }
+
+ void Application_Error(object sender, EventArgs e)
+ {
+ // Code that runs when an unhandled error occurs
+
+ }
+
+ void Session_Start(object sender, EventArgs e)
+ {
+ // Code that runs when a new session is started
+
+ }
+
+ void Session_End(object sender, EventArgs e)
+ {
+ // Code that runs when a session ends.
+ // Note: The Session_End event is raised only when the sessionstate mode
+ // is set to InProc in the Web.config file. If session mode is set to StateServer
+ // or SQLServer, the event is not raised.
+
+ }
+
+</script>
Property changes on: NMail/trunk/NMail.WebAccess/Images/Skins/Default
___________________________________________________________________
Name: svn:ignore
+ Thumbs.db
Added: NMail/trunk/NMail.WebAccess/Images/Tango/Folder.png
===================================================================
(Binary files differ)
Property changes on: NMail/trunk/NMail.WebAccess/Images/Tango/Folder.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: NMail/trunk/NMail.WebAccess/Images/Tango/FolderOpen.png
===================================================================
(Binary files differ)
Property changes on: NMail/trunk/NMail.WebAccess/Images/Tango/FolderOpen.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: NMail/trunk/NMail.WebAccess/Images/Tango/License.txt
===================================================================
--- NMail/trunk/NMail.WebAccess/Images/Tango/License.txt (rev 0)
+++ NMail/trunk/NMail.WebAccess/Images/Tango/License.txt 2007-01-19 12:59:46 UTC (rev 118)
@@ -0,0 +1,5 @@
+These icons are from the Tango Desktop Project and are licensed under the Creative Commons
+Attribution Share-Alike license.
+
+See http://tango.freedesktop.org and http://creativecommons.org/licenses/by-sa/2.5/ for more
+information.
\ No newline at end of file
Added: NMail/trunk/NMail.WebAccess/Images/action.gif
===================================================================
(Binary files differ)
Property changes on: NMail/trunk/NMail.WebAccess/Images/action.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: NMail/trunk/NMail.WebAccess/Login.aspx
===================================================================
--- NMail/trunk/NMail.WebAccess/Login.aspx 2007-01-19 12:51:44 UTC (rev 117)
+++ NMail/trunk/NMail.WebAccess/Login.aspx 2007-01-19 12:59:46 UTC (rev 118)
@@ -14,7 +14,8 @@
<asp:LoginView ID="LoginView" runat="server">
<LoggedInTemplate>
You are currently logged in as
- <asp:LoginName ID="LoginName" runat="server" />.
+ <asp:LoginName ID="LoginName" runat="server" />.<br />
+ <asp:LoginStatus ID="LoginStatus" runat="server" />
</LoggedInTemplate>
<AnonymousTemplate>
<asp:Login ID="Login" runat="server" OnAuthenticate="Login_Authenticate" DestinationPageUrl="~/Default.aspx" TitleText="Log in to NMail web access">
Modified: NMail/trunk/NMail.WebAccess/Mail.aspx
===================================================================
--- NMail/trunk/NMail.WebAccess/Mail.aspx 2007-01-19 12:51:44 UTC (rev 117)
+++ NMail/trunk/NMail.WebAccess/Mail.aspx 2007-01-19 12:59:46 UTC (rev 118)
@@ -1,6 +1,6 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Mail.aspx.cs" Inherits="Mail" %>
-<%@ Register Src="Controls/Mail/FolderTree.ascx" TagName="FolderTree" TagPrefix="uc2" %>
+<%@ Register Src="Controls/Mail/SubscribedFolderList.ascx" TagName="SubscribedFolderList" TagPrefix="uc2" %>
<%@ Register Src="Controls/LinkButtonList.ascx" TagName="LinkButtonList" TagPrefix="uc1" %>
@@ -30,7 +30,7 @@
<td rowspan="3" valign="top">
<asp:WebPartZone ID="RightZone" runat="server">
<ZoneTemplate>
- <uc2:FolderTree ID="FolderTree1" runat="server" />
+ <uc2:SubscribedFolderList ID="SubscribedFolderList" runat="server" />
</ZoneTemplate>
</asp:WebPartZone>
</td>
Modified: NMail/trunk/NMail.WebAccess/Web.config
===================================================================
--- NMail/trunk/NMail.WebAccess/Web.config 2007-01-19 12:51:44 UTC (rev 117)
+++ NMail/trunk/NMail.WebAccess/Web.config 2007-01-19 12:59:46 UTC (rev 118)
@@ -8,12 +8,24 @@
\Windows\Microsoft.Net\Framework\v2.x\Config
-->
<configuration>
+ <configSections>
+ <section name="NMail" type="NMail.Configuration.NMailConfiguration, NMail" />
+ </configSections>
+
+ <NMail>
+ <NamedServices>
+ <NamedService Name="LocalStore" Type="NMail.LocalStore.LocalStore, NMail.LocalStore" />
+ </NamedServices>
+ </NMail>
+
<appSettings>
<add key="RemoteAccessService.RemoteAccessService" value="http://localhost:1288/NMail.RemoteAccessService/RemoteAccessService.asmx"/>
</appSettings>
+
<connectionStrings/>
<system.web>
<pages theme="Default"/>
+
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
@@ -21,14 +33,17 @@
during development.
-->
<compilation debug="true"/>
- <!--
- The <authentication> section enables configuration
- of the security authentication mode used by
- ASP.NET to identify an incoming user.
- -->
+
+ <!-- Setup the authentication for the web access. -->
<authentication mode="Forms">
- <forms loginUrl="Login.aspx" timeout="60" protection="All" slidingExpiration="true"/>
+ <forms loginUrl="Login.aspx" defaultUrl="Default.aspx" timeout="60" protection="All" slidingExpiration="true"/>
</authentication>
+
+ <!-- Deny any un-authenticated users. -->
+ <authorization>
+ <deny users="?" />
+ </authorization>
+
<webParts enableExport="true">
<personalization defaultProvider="XmlFileSharedPersonalizationProvider">
<providers>
@@ -36,6 +51,7 @@
</providers>
</personalization>
</webParts>
+
<!--
The <customErrors> section enables configuration
of what to do if/when an unhandled error occurs
@@ -49,4 +65,23 @@
</customErrors>
-->
</system.web>
+
+ <!-- Allow access to the themes without authentication so the login page is nice. -->
+ <location path="App_Themes">
+ <system.web>
+ <authorization>
+ <allow users="*" />
+ </authorization>
+ </system.web>
+ </location>
+
+ <!-- Allow access to the images without authentication so the login page is nice. -->
+ <location path="Images">
+ <system.web>
+ <authorization>
+ <allow users="*" />
+ </authorization>
+ </system.web>
+ </location>
+
</configuration>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|