PageRenderTime 96ms CodeModel.GetById 6ms RepoModel.GetById 1ms app.codeStats 0ms

/Src/uSiteBuilder.Admin/CompareResults.ascx.cs

https://bitbucket.org/gfyans/kelvindigital.usitebuilder.package
C# | 71 lines | 55 code | 16 blank | 0 comment | 10 complexity | bd7c7379e16fd2c348fb461d03c0aeb6 MD5 | raw file
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.UI;
  6. using System.Web.UI.WebControls;
  7. using Vega.USiteBuilder;
  8. namespace kelvinDigital.USiteBuilderAdmin
  9. {
  10. public partial class umbraco_plugins_uSiteBuilderAdmin_CompareResults : System.Web.UI.UserControl
  11. {
  12. public List<ContentComparison> DataSource { get; set; }
  13. public string ParentAlias { get; set; }
  14. public event EventHandler ItemDeleted;
  15. public void OnItemDeleted(EventArgs e)
  16. {
  17. EventHandler handler = ItemDeleted;
  18. if (handler != null) handler(this, e);
  19. }
  20. protected void rptDeleted_ItemCommand(object source, RepeaterCommandEventArgs e)
  21. {
  22. if (e.CommandName == "Delete")
  23. {
  24. new UmbracoManager().DeleteDocumentType(e.CommandArgument.ToString());
  25. OnItemDeleted(new EventArgs());
  26. }
  27. }
  28. protected void rptDeleted_ItemDataBound(object sender, RepeaterItemEventArgs e)
  29. {
  30. if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
  31. {
  32. rptDeleted.Visible = true;
  33. }
  34. }
  35. protected void btnDeleteAll_Click(object sender, EventArgs e)
  36. {
  37. var umbracoManager = new UmbracoManager();
  38. foreach (var docType in DataSource.Where(d => d.DocumentTypeStatus == Status.Deleted))
  39. {
  40. umbracoManager.DeleteDocumentType(docType.Alias);
  41. }
  42. OnItemDeleted(new EventArgs());
  43. }
  44. public void BindGrid()
  45. {
  46. ((usercontrols_NestedRepeater)rptList).Data = DataSource;
  47. ((usercontrols_NestedRepeater)rptList).ParentAlias = ParentAlias;
  48. rptList.DataBind();
  49. IEnumerable<ContentComparison> deleted = DataSource.Where(d => d.DocumentTypeStatus == Status.Deleted);
  50. rptDeleted.DataSource = deleted;
  51. rptDeleted.DataBind();
  52. rptDeleted.Visible = deleted.Any();
  53. }
  54. }
  55. }