// SilverlightDesktop - http://www.SilverlightDesktop.net // Copyright (c) 2008 // by SilverlightDesktop // // Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated // documentation files (the "Software"), to deal in the Software without restriction, including without limitation // the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and // to permit persons to whom the Software is furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in all copies or substantial portions // of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED // TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL // THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF // CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER // DEALINGS IN THE SOFTWARE. using System; using System.Collections; using System.Linq; using System.Web; using System.Web.Services; using System.Web.Services.Protocols; using System.Xml.Linq; using System.Web.Script.Services; [WebService(Namespace = "http://SilverlightDesktop.net/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [ScriptService()] public class SilverlightNotepadWebService : System.Web.Services.WebService { #region GetNotepadContents [WebMethod(Description = "GetNotepadContents")] [ScriptMethod()] public String GetNotepadContents(int PortalID, int ModuleId, int UserID, string Password) { string NotepadContents = ""; string strIPAddress = this.Context.Request.UserHostAddress; SilverlightDesktopAuthendicationHeader SilverlightDesktopAuthendicationHeader = new SilverlightDesktopAuthendicationHeader(); SilverlightDesktopAuthendicationHeader.PortalID = PortalID; SilverlightDesktopAuthendicationHeader.UserID = UserID; SilverlightDesktopAuthendicationHeader.Password = Password; SilverlightDesktopAuthendicationHeader.ModuleId = ModuleId; SilverlightDesktopAuthendicationHeader.IPAddress = strIPAddress; Authendication Authendication = new Authendication(SilverlightDesktopAuthendicationHeader); SilverlightNotepadDataContext SilverlightNotepadDataContext = new SilverlightNotepadDataContext(); if (Authendication.IsUserValid("Silverlight Notepad")) { UserInfo objUser = Authendication.GetUserInfo(); var objSilverlightNotepad = (from SilverlightNote in SilverlightNotepadDataContext.SilverlightNotepads where SilverlightNote.UserName == objUser.Username select SilverlightNote).FirstOrDefault(); if (!(objSilverlightNotepad == null)) { NotepadContents = objSilverlightNotepad.Note;} } else { NotepadContents = "Must be logged in"; } return NotepadContents; } #endregion #region SaveNotepadContents [WebMethod(Description = "SaveNotepadContents")] [ScriptMethod()] public void SaveNotepadContents(int PortalID, int ModuleId, int UserID, string Password, string NotepadContents) { string strIPAddress = this.Context.Request.UserHostAddress; SilverlightDesktopAuthendicationHeader SilverlightDesktopAuthendicationHeader = new SilverlightDesktopAuthendicationHeader(); SilverlightDesktopAuthendicationHeader.PortalID = PortalID; SilverlightDesktopAuthendicationHeader.UserID = UserID; SilverlightDesktopAuthendicationHeader.Password = Password; SilverlightDesktopAuthendicationHeader.ModuleId = ModuleId; SilverlightDesktopAuthendicationHeader.IPAddress = strIPAddress; Authendication Authendication = new Authendication(SilverlightDesktopAuthendicationHeader); SilverlightNotepadDataContext SilverlightNotepadDataContext = new SilverlightNotepadDataContext(); if (Authendication.IsUserValid("Silverlight Notepad")) { UserInfo objUser = Authendication.GetUserInfo(); var objSilverlightNotepad = (from SilverlightNote in SilverlightNotepadDataContext.SilverlightNotepads where SilverlightNote.UserName == objUser.Username select SilverlightNote).FirstOrDefault(); if (!(objSilverlightNotepad == null)) { SilverlightNotepadDataContext.SilverlightNotepads.DeleteOnSubmit(objSilverlightNotepad); SilverlightNotepadDataContext.SubmitChanges(); } SilverlightNotepad SilverlightNotepad = new SilverlightNotepad(); SilverlightNotepad.UserName = objUser.Username; SilverlightNotepad.IPAddress = strIPAddress; SilverlightNotepad.Note = TrimLarge(NotepadContents); SilverlightNotepadDataContext.SilverlightNotepads.InsertOnSubmit(SilverlightNotepad); SilverlightNotepadDataContext.SubmitChanges(); } } #endregion #region TrimLarge private string TrimLarge(string strText) { string strNewText; if (strText.Length > 99) { strNewText = strText.Substring(0, 99); } else { strNewText = strText; } return strNewText; } #endregion }