public virtual void ForumItemDelete(ForumItem entity) { TraceCallEnterEvent.Raise(); try { m_DataContext.BeginNestedTran(); try { m_DataContext.ndihdForumItemDelete(entity.ID); m_DataContext.CommitNested(); } catch { m_DataContext.RollbackNested(); throw; } TraceCallReturnEvent.Raise(); return; } catch (Exception ex) { ExceptionManager.Publish(ex); TraceCallReturnEvent.Raise(false); throw; } }
protected void btnCreate_Click(object sender, EventArgs e) { try { if (!Page.IsValid) { return; } string threadId = Request["threadId"]; Guid threadGuid = new Guid(threadId); ForumItem item = new ForumItem(Guid.NewGuid()); string desc = txtDescription.Text; string newLine = "\r\n"; desc = desc.Replace(newLine, "<br/>"); item.ItemText = desc; item.ForumThreadRef = threadGuid; IForumItemService srv = ServiceFactory.GetForumItemService(); srv.ForumItemInsert(item); Response.Redirect("ForumItemList.aspx?threadId=" + threadId); } catch (Exception ex) { errorPanel.Exception = ex; } }
// ------------------------------------------------------------------------------------- /// <summary> /// Copy constructor. /// </summary> /// <param name="IDVal">Value of 'uID' field</param> /// <param name="origInstance">Original document data to copy.</param> // ------------------------------------------------------------------------------------- public ForumItem(DBGuid IDVal, ForumItem origInstance) : base(IDVal, origInstance) { }
// ------------------------------------------------------------------------------------- /// <summary> /// Copy constructor. /// </summary> /// <param name="origInstance">Original document data to copy.</param> // ------------------------------------------------------------------------------------- public ForumItem(ForumItem origInstance) : base(origInstance) { }
/// <summary> /// Fill datagrid with data /// </summary> private void FillDatagrid(DBGuid ID) { try { string sSortColumn = "ForumThreadName"; int nSelectedRow = -1; // Storing the previous sort order if (dtgMain.DataSource != null) { sSortColumn = ((DataTable) dtgMain.DataSource).DefaultView.Sort; } // Set filter ForumItem filter = new ForumItem(Guid.Empty); filter.FilterOnIsModerated = DBInt.Null; if (cmbStatus.SelectedIndex > 0) { bool bIsModerated = (cmbStatus.SelectedValue.ToString() == "1" ? true : false); filter.FilterOnIsModerated = (DBInt) Convert.ToInt32(bIsModerated); filter.IsModerated = bIsModerated; } if (cmbForumGroup.SelectedIndex > 0) { filter.ForumGroupRef = new DBGuid(new Guid(cmbForumGroup.SelectedValue.ToString())); } if (dtpSentFrom.Checked) { filter.FilterOnSentFrom = new DBDateTime(dtpSentFrom.Value); } if (dtpSentTo.Checked) { DBDateTime dateTo = new DBDateTime(dtpSentTo.Value); filter.FilterOnSentTo = dateTo.AddDays(1).AddMilliseconds(-1); } // Retrieving data from BusinessServices IForumItemService srv = ServiceFactory.GetForumItemService(); ForumItemContainer allData = srv.ForumItemSelectFiltered(filter); DataTable dt = allData.AllAsDatatable; dt.DefaultView.Sort = sSortColumn; dtgMain.DataSource = dt; // Locates the row specified by ID param if (!ID.IsNull) { BindingManagerBase bm = dtgMain.BindingContext[dtgMain.DataSource, dtgMain.DataMember]; DataRow dr; for (int i = 0; i < bm.Count; i++) { dr = ((DataRowView) bm.Current).Row; if (ID.Value.Equals(dr["ID"])) { nSelectedRow = i; break; } bm.Position += 1; } } // Makes the row selected if (nSelectedRow <= ((DataTable) dtgMain.DataSource).DefaultView.Count && nSelectedRow > -1) { dtgMain.Select(nSelectedRow); dtgMain.CurrentRowIndex = nSelectedRow; } else if (((DataTable) dtgMain.DataSource).DefaultView.Count != 0) { dtgMain.Select(0); } // Enabling or disabling the buttons according to record count. // And is because of previous disable state. bool bIsEmptyGrid = (((DataTable) dtgMain.DataSource).DefaultView.Count == 0); tbbInactivate.Enabled = ! bIsEmptyGrid; tbbModify.Enabled = ! bIsEmptyGrid; } catch (Exception ex) { // --- Log exception ExceptionManager.Publish(ex); // --- Display Exception ErrorHandler.DisplayError("Nem várt hiba lépett fel a lista frissítése során.", ex); } }
protected void ShowForumItemGrid(DataGrid dataGrid, int index, string sort, string order) { dataGrid.PageSize = Helpers.GetPageSize("PageSize.ForumItemList"); // Get query result from database ForumItem filter = new ForumItem(Guid.NewGuid()); //filter.ItemText = txtSearchExpression.Text; filter.ItemText = Helpers.BuildFreetextCondition(txtSearchExpression.Text); if (Context.User.Identity.IsAuthenticated) { filter.FilterOnVisibleForRegistered = 1; } else { filter.FilterOnVisibleForVisitor = 1; } IForumItemService srv = ServiceFactory.GetForumItemService(); ForumItemContainer selected = srv.ForumItemSelectFreetext(filter); if (selected.AllCount > 0) { dataGrid.Visible = true; lblNotfound.Visible = false; } else { dataGrid.Visible = false; lblNotfound.Visible = true; return; } ArrayList sortableList = null; // Sort if necessary if (sort == null) { sortableList = selected.All.Items; } else { if (String.Compare(order, "Ascending", true) == 0) { sortableList = selected.All.SortBy(sort, true); } else if (String.Compare(order, "Descending", true) == 0) { sortableList = selected.All.SortBy(sort, false); } else { sortableList = selected.All.SortBy(sort); } } // Bind list to datagrid control dataGrid.CurrentPageIndex = index; dataGrid.CurrentSortExpression = sort; dataGrid.CurrentSortOrder = order; dataGrid.DataSource = sortableList; dataGrid.DataBind(); }
public new void ForumItemInsert(ForumItem entity) { TraceCallEnterEvent.Raise(); try { // check required fields: if (entity.ID.IsNull) throw new ArgumentNullException("ForumItem.ID", "A hozzászólás azonosítója nincs megadva."); if (entity.ItemText.Length == 0) throw new ArgumentNullException("ForumItem.ItemText", "A hozzászólás neve nincs megadva."); if (entity.ForumThreadRef.IsNull) throw new ArgumentNullException("ForumItem.ForumThreadRef", "A fórum szál azonosítója nincs megadva."); // logical checks: ForumThreadService threadSrv = new ForumThreadService(); ForumThread forumThread = threadSrv.ForumThreadSelect(entity.ForumThreadRef); if (forumThread == null) throw new ApplicationException("A megadott azonosítóval nem létezik fórum szál."); if (!forumThread.IsActive) throw new ApplicationException("A fórum szál nem aktív."); ForumGroupService groupSrv = new ForumGroupService(); ForumGroup group = groupSrv.ForumGroupSelect(forumThread.ForumGroupRef); if (group == null) throw new ApplicationException("A megadott azonosítóval nem létezik fórum téma."); // check permission: if (!group.VisibleForVisitor) { PrincipalPermission permReg = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Registered"); PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator"); permReg.Union(permAdmin).Demand(); } // save data: entity.IsModerated = false; entity.CreatedDate = DBDateTime.Now; if (Thread.CurrentPrincipal.Identity.IsAuthenticated) { entity.CreatedBy = Thread.CurrentPrincipal.Identity.Name; } else { if (entity.CreatedBy.Length == 0) { entity.CreatedBy = "Anonymous"; } } base.ForumItemInsert(entity); BusinessAuditEvent.Success( new EventParameter("ForumItemID", entity.ID.ToString()) ); TraceCallReturnEvent.Raise(); return; } catch (Exception ex) { ExceptionManager.Publish(ex); BusinessAuditEvent.Fail( new EventParameter("Exception", ex.ToString()), new EventParameter("ForumItemID", entity.ID.ToString()) ); TraceCallReturnEvent.Raise(false); throw; } }
public new void ForumItemUpdate(ForumItem entity) { // Check permission: Admin PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator"); permAdmin.Demand(); TraceCallEnterEvent.Raise(); try { // Logical checks ForumItem selected = base.ForumItemSelect(entity.ID); if (selected == null) throw new ApplicationException("A megadott azonosítóval nem létezik hozzászólás."); // Save data selected.IsModerated = entity.IsModerated; base.ForumItemUpdate(selected); BusinessAuditEvent.Success( new EventParameter("ForumItemID", entity.ID.ToString()), new EventParameter("IsModerated", entity.IsModerated.ToString()) ); TraceCallReturnEvent.Raise(); return; } catch (Exception ex) { ExceptionManager.Publish(ex); BusinessAuditEvent.Fail( new EventParameter("Exception", ex.ToString()), new EventParameter("ForumItemID", entity.ID.ToString()), new EventParameter("IsModerated", entity.IsModerated.ToString()) ); TraceCallReturnEvent.Raise(false); throw; } }
public ForumItemContainer ForumItemSelectFreetext(ForumItem filter) { TraceCallEnterEvent.Raise(); try { ForumItemContainer result; DataSet entitySet = m_DataContext.ndihdForumItemSelectFreeText( filter.ItemText, filter.FilterOnVisibleForVisitor, filter.FilterOnVisibleForRegistered); result = new ForumItemContainer(entitySet.Tables[0]); TraceCallReturnEvent.Raise(); return result; } catch (Exception ex) { ExceptionManager.Publish(ex); TraceCallReturnEvent.Raise(false); throw; } }
public ForumItemContainer ForumItemSelectFiltered(ForumItem filter) { // Check permission: Admin PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator"); permAdmin.Demand(); TraceCallEnterEvent.Raise(); try { ForumItemContainer result; DataSet entitySet = m_DataContext.ndihdForumItemSelectFiltered( filter.ForumGroupRef, filter.FilterOnIsModerated, 1, filter.FilterOnSentFrom, filter.FilterOnSentTo); result = new ForumItemContainer(entitySet.Tables[0]); TraceCallReturnEvent.Raise(); return result; } catch (Exception ex) { ExceptionManager.Publish(ex); TraceCallReturnEvent.Raise(false); throw; } }
public virtual void ForumItemUpdate(ForumItem entity) { TraceCallEnterEvent.Raise(); try { m_DataContext.BeginNestedTran(); try { int count; m_DataContext.ndihdForumItemUpdate(entity.ID, entity.ItemText, entity.CreatedBy, entity.CreatedDate, entity.IsModerated, entity.ForumThreadRef, out count); if (count == 0) throw new ServiceUpdateException(); m_DataContext.CommitNested(); } catch { m_DataContext.RollbackNested(); throw; } TraceCallReturnEvent.Raise(); return; } catch (Exception ex) { ExceptionManager.Publish(ex); TraceCallReturnEvent.Raise(false); throw; } }
public virtual ForumItem ForumItemSelect(DBGuid IDVal) { TraceCallEnterEvent.Raise(); try { ForumItem result = null; DataSet entitySet = m_DataContext.ndihdForumItemSelect(IDVal); if (entitySet.Tables[0].Rows.Count != 0) { result = new ForumItem(entitySet); } TraceCallReturnEvent.Raise(); return result; } catch (Exception ex) { ExceptionManager.Publish(ex); TraceCallReturnEvent.Raise(false); throw; } }
public virtual void ForumItemInsert(ForumItem entity) { TraceCallEnterEvent.Raise(); try { m_DataContext.BeginNestedTran(); try { m_DataContext.ndihdForumItemInsert(entity.ID, entity.ItemText, entity.CreatedBy, entity.CreatedDate, entity.IsModerated, entity.ForumThreadRef); m_DataContext.CommitNested(); } catch { m_DataContext.RollbackNested(); throw; } TraceCallReturnEvent.Raise(); return; } catch (Exception ex) { ExceptionManager.Publish(ex); TraceCallReturnEvent.Raise(false); throw; } }
// ------------------------------------------------------------------------------------- /// <summary> /// Prepare Save action /// </summary> // ------------------------------------------------------------------------------------- private void SaveData() { // Get control values ForumItem fit = new ForumItem(CurrentID); fit.IsModerated = cbxModerated.Checked; fit.ForumThreadRef = m_ForumThreadRef; // Save values IForumItemService srv = ServiceFactory.GetForumItemService(); srv.ForumItemUpdate(fit); }