/CMSModules/ContactManagement/Pages/Tools/Account/Add_Contact_Dialog.aspx.cs

https://bitbucket.org/kudutest/kenticogit · C# · 113 lines · 85 code · 19 blank · 9 comment · 9 complexity · e799cd062c71065ebd9dd486e2c980a0 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 System.Collections;
  8. using CMS.UIControls;
  9. using CMS.GlobalHelper;
  10. using CMS.CMSHelper;
  11. using CMS.OnlineMarketing;
  12. public partial class CMSModules_ContactManagement_Pages_Tools_Account_Add_Contact_Dialog : CMSModalPage
  13. {
  14. protected override void OnPreInit(EventArgs e)
  15. {
  16. base.OnPreInit(e);
  17. RequireSite = false;
  18. }
  19. protected void Page_Load(object sender, EventArgs e)
  20. {
  21. ScriptHelper.RegisterWOpenerScript(Page);
  22. ScriptHelper.RegisterJQuery(Page);
  23. // Try to get parameters
  24. string identificator = QueryHelper.GetString("params", null);
  25. Hashtable parameters = (Hashtable)WindowHelper.GetItem(identificator);
  26. // Validate hash
  27. if ((QueryHelper.ValidateHash("hash", "selectedvalue")) && (parameters != null))
  28. {
  29. int siteID = ValidationHelper.GetInteger(parameters["SiteID"], -1);
  30. if (siteID != -1)
  31. {
  32. // Check permissions
  33. ContactHelper.AuthorizedReadContact(siteID, true);
  34. if (AccountHelper.AuthorizedModifyAccount(siteID, false) || ContactHelper.AuthorizedModifyContact(siteID, false))
  35. {
  36. contactRoleSelector.SiteID = siteID;
  37. contactRoleSelector.IsLiveSite = ValidationHelper.GetBoolean("IsLiveSite", false);
  38. contactRoleSelector.UniSelector.DialogWindowName = "SelectContactRole";
  39. contactRoleSelector.IsSiteManager = ValidationHelper.GetBoolean(parameters["IsSiteManager"], false);
  40. selectionDialog.LocalizeItems = QueryHelper.GetBoolean("localize", true);
  41. // Load resource prefix
  42. string resourcePrefix = ValidationHelper.GetString(parameters["ResourcePrefix"], "general");
  43. // Set the page title
  44. string titleText = GetString(resourcePrefix + ".selectitem|general.selectitem");
  45. // Validity group text
  46. pnlRole.GroupingText = GetString(resourcePrefix + ".contactsrole");
  47. CurrentMaster.Title.TitleText = titleText;
  48. Page.Title = titleText;
  49. string imgPath = ValidationHelper.GetString(parameters["IconPath"], null);
  50. if (String.IsNullOrEmpty(imgPath))
  51. {
  52. string objectType = ValidationHelper.GetString(parameters["ObjectType"], null);
  53. CurrentMaster.Title.TitleImage = GetObjectIconUrl(objectType, null);
  54. }
  55. else
  56. {
  57. CurrentMaster.Title.TitleImage = imgPath;
  58. }
  59. // Cancel button
  60. btnCancel.ResourceString = "general.cancel";
  61. btnCancel.Attributes.Add("onclick", "return US_Cancel();");
  62. }
  63. // No permission modify
  64. else
  65. {
  66. CMSPage.RedirectToCMSDeskAccessDenied("CMS.ContactManagement", "ModifyAccount");
  67. }
  68. }
  69. else
  70. {
  71. // Redirect to error page
  72. URLHelper.Redirect(ResolveUrl("~/CMSMessages/Error.aspx?title=" + ResHelper.GetString("dialogs.badhashtitle") + "&text=" + ResHelper.GetString("dialogs.badhashtext")));
  73. }
  74. }
  75. }
  76. protected override void OnPreRender(EventArgs e)
  77. {
  78. btnOk.ResourceString = "general.ok";
  79. btnOk.Attributes.Add("onclick",
  80. @" var role = $j('#" + contactRoleSelector.DropDownList.ClientID + @"').val();
  81. if (wopener.setRole != null) wopener.setRole(role);
  82. US_Submit();
  83. ");
  84. base.OnPreRender(e);
  85. }
  86. protected override void OnPreRenderComplete(EventArgs e)
  87. {
  88. base.OnPreRenderComplete(e);
  89. if (selectionDialog.UniGrid.IsEmpty)
  90. {
  91. pnlRole.Visible = false;
  92. }
  93. }
  94. }