/// <summary> /// Sets the Well Book details data object from the UI. /// </summary> /// <returns></returns> private WellBookDetails SetWellBookDetails() { WellBookDetails objWellBookDetails = new WellBookDetails(); CommonUtility objCommonUtilities = new CommonUtility(); int intRowId = 0; objWellBookDetails.Title = txtWellBookTitle.Text.Trim(); if (cboTeam.SelectedItem != null && !cboTeam.SelectedItem.Value.Contains(DROPDOWNDEFAULTTEXTNONE)) { objWellBookDetails.TeamID = cboTeam.SelectedItem.Value; } if (cboOwner.SelectedItem != null && !cboOwner.SelectedItem.Value.Contains(DROPDOWNDEFAULTTEXTNONE)) { objWellBookDetails.BookOwnerID = cboOwner.SelectedItem.Value; } else { /// If no user is selected as Book Owner, assign the logged in user as Book Owner /// Read the value from Session object (UserRecordID) object objPrivileges = CommonUtility.GetSessionVariable(Page, enumSessionVariable.UserPrivileges.ToString()); Privileges objStoredPrivileges = null; if (objPrivileges != null) { objStoredPrivileges = (Privileges)objPrivileges; } if (objStoredPrivileges != null && objStoredPrivileges.SystemPrivileges != null) { objWellBookDetails.BookOwnerID = objStoredPrivileges.SystemPrivileges.UserRecordID.ToString(); } } if (string.Compare(strMode,EDIT) == 0) { if (int.TryParse(strSelectedID, out intRowId)) { objWellBookDetails.RowId = intRowId; } } else { objWellBookDetails.Terminated = STATUSACTIVE; } return objWellBookDetails; }
/// <summary> /// Gets Well Book Details. /// </summary> /// <param name="parentSiteUrl">Site URL.</param> /// <param name="listName">Book List Name.</param> /// <param name="queryString">CAML Query.</param> /// <returns>Object of ListEntry.</returns> /// <exception cref="">Handled in calling method.</exception> internal ListEntry GetWellBookDetail(string parentSiteUrl, string listName, string queryString) { ListEntry objListEntry = null; string[] strSplitter = { ";#" }; WellBookDetails objWellBookDetails = null; SPSecurity.RunWithElevatedPrivileges(delegate() { using (SPSite site = new SPSite(parentSiteUrl)) { using (SPWeb web = site.OpenWeb()) { SPList list = web.Lists[listName]; SPQuery query = new SPQuery(); string strViewFields = @"<FieldRef Name='ID'/><FieldRef Name='Title'/><FieldRef Name='Team'/><FieldRef Name='Sign_Off_Status'/><FieldRef Name='Owner'/><FieldRef Name='Terminate_Status'/><FieldRef Name='NoOfActiveChapters'/>"; query.Query = queryString; query.ViewFields = strViewFields; SPListItemCollection itemCollection = list.GetItems(query); if (itemCollection != null && itemCollection.Count > 0) { objListEntry = new ListEntry(); objWellBookDetails = new WellBookDetails(); SPListItem objListItem = itemCollection[0]; objWellBookDetails.Title = Convert.ToString(objListItem["Title"]); int intRowId = 0; int.TryParse(objListItem["ID"].ToString(), out intRowId); objWellBookDetails.RowId = intRowId; string strTeam = Convert.ToString(objListItem["Team"]); string[] strTeamDetails = strTeam.Split(strSplitter, StringSplitOptions.None); if (strTeamDetails != null && strTeamDetails.Length == 2) { objWellBookDetails.TeamID = strTeamDetails[0]; objWellBookDetails.Team = strTeamDetails[1]; } objWellBookDetails.SignOffStatus = Convert.ToString(objListItem["Sign_Off_Status"]); string strOwner = Convert.ToString(objListItem["Owner"]); string[] strOutput = strOwner.Split(strSplitter, StringSplitOptions.None); if (strOutput != null && strOutput.Length == 2) { objWellBookDetails.BookOwnerID = strOutput[0]; objWellBookDetails.BookOwner = strOutput[1]; } objWellBookDetails.Terminated = Convert.ToString(objListItem["Terminate_Status"]); int intNoOfActiveChapters = 0; /// Assign the no of active chapters in a book to objWellBookDetails.NoOfActiveChapters int.TryParse(Convert.ToString(objListItem["NoOfActiveChapters"]), out intNoOfActiveChapters); objWellBookDetails.NoOfActiveChapters = intNoOfActiveChapters; objListEntry.WellBookDetails = objWellBookDetails; } } } }); return objListEntry; }