public void SendMailToSuperUser(string[] arrEmail, string tieude) { try { PortalController portalCont = new PortalController(); DataTable tb = portalCont.GetPortalMail(PortalId); SmtpClient smtpClient = new SmtpClient(); if (tb.Rows.Count > 0) { MailMessage mail = new MailMessage(); foreach (string email in arrEmail) { if (email != "") { mail.To.Add(email); } } mail.Subject = "Website Khatoco: Có bài viết mới chia sẻ từ " + PortalSettings.PortalName; mail.SubjectEncoding = System.Text.Encoding.UTF8; mail.Body = "Tiêu đề: " + tieude; mail.BodyEncoding = System.Text.Encoding.UTF8; mail.IsBodyHtml = true; string server = Convert.ToString(tb.Rows[0]["MailServer"]); int SmtpPort = 25; int portPos = server.IndexOf(":"); if (portPos > -1) { SmtpPort = int.Parse(server.Substring(portPos + 1, server.Length - portPos - 1)); server = server.Substring(0, portPos); } smtpClient.Host = server; smtpClient.Port = SmtpPort; smtpClient.UseDefaultCredentials = false; smtpClient.Credentials = new NetworkCredential(Convert.ToString(tb.Rows[0]["MailAccount"]), Convert.ToString(tb.Rows[0]["MailPassword"])); mail.From = new MailAddress(Convert.ToString(tb.Rows[0]["MailAccount"])); smtpClient.Send(mail); } } catch (Exception) { } }
/// <summary> /// cmdUpdate_Click runs when the Update LinkButton is clicked. /// It saves the current Site Settings /// </summary> /// <history> /// [cnurse] 9/9/2004 Modified /// </history> protected void cmdUpdate_Click(object sender, EventArgs e) { try { string strLogo; string strBackground; strLogo = ctlLogo.Url; strBackground = ctlBackground.Url; double dblHostFee = 0; if (!String.IsNullOrEmpty(txtHostFee.Text)) { dblHostFee = double.Parse(txtHostFee.Text); } double dblHostSpace = 0; if (!String.IsNullOrEmpty(txtHostSpace.Text)) { dblHostSpace = double.Parse(txtHostSpace.Text); } int intPageQuota = 0; if (txtPageQuota.Text != "") { intPageQuota = int.Parse(txtPageQuota.Text); } double intUserQuota = 0; if (txtUserQuota.Text != "") { intUserQuota = int.Parse(txtUserQuota.Text); } int intSiteLogHistory = 0; if (!String.IsNullOrEmpty(txtSiteLogHistory.Text)) { intSiteLogHistory = int.Parse(txtSiteLogHistory.Text); } DateTime datExpiryDate = Null.NullDate; if (!String.IsNullOrEmpty(txtExpiryDate.Text)) { datExpiryDate = Convert.ToDateTime(txtExpiryDate.Text); } int intSplashTabId = Null.NullInteger; if (cboSplashTabId.SelectedItem != null) { intSplashTabId = int.Parse(cboSplashTabId.SelectedItem.Value); } int intHomeTabId = Null.NullInteger; if (cboHomeTabId.SelectedItem != null) { intHomeTabId = int.Parse(cboHomeTabId.SelectedItem.Value); } int intLoginTabId = Null.NullInteger; if (cboLoginTabId.SelectedItem != null) { intLoginTabId = int.Parse(cboLoginTabId.SelectedItem.Value); } int intUserTabId = Null.NullInteger; if (cboUserTabId.SelectedItem != null) { intUserTabId = int.Parse(cboUserTabId.SelectedItem.Value); } if (txtPassword.Attributes["value"] != null) { txtPassword.Attributes["value"] = txtPassword.Text; } // update Portal info in the database PortalController objPortalController = new PortalController(); //check only relevant fields altered if (!UserInfo.IsSuperUser) { PortalInfo objPortal = objPortalController.GetPortal(intPortalId); bool HostChanged = false; if (dblHostFee != objPortal.HostFee) { HostChanged = true; } if (dblHostSpace != objPortal.HostSpace) { HostChanged = true; } if (intPageQuota != objPortal.PageQuota) { HostChanged = true; } if (intUserQuota != objPortal.UserQuota) { HostChanged = true; } if (intSiteLogHistory != objPortal.SiteLogHistory) { HostChanged = true; } if (datExpiryDate != objPortal.ExpiryDate) { HostChanged = true; } if (HostChanged) { throw new Exception(); } } objPortalController.UpdatePortalInfo(intPortalId, txtPortalName.Text, strLogo, txtFooterText.Text, datExpiryDate, optUserRegistration.SelectedIndex, optBannerAdvertising.SelectedIndex, cboCurrency.SelectedItem.Value, Convert.ToInt32(cboAdministratorId.SelectedItem.Value), dblHostFee, dblHostSpace, intPageQuota, (int)intUserQuota, ((cboProcessor.SelectedValue == "") ? "" : cboProcessor.SelectedItem.Text).ToString(), txtUserId.Text, txtPassword.Text, txtDescription.Text, txtKeyWords.Text, strBackground, intSiteLogHistory, intSplashTabId, intHomeTabId, intLoginTabId, intUserTabId, cboDefaultLanguage.SelectedValue, Convert.ToInt32(cboTimeZone.SelectedValue), txtHomeDirectory.Text); DataTable tb = objPortalController.GetPortalMail(intPortalId); if (tb.Rows.Count == 0) { objPortalController.InsertPortalMail(intPortalId, txtMailServer.Text.Trim(), txtMailAccount.Text.Trim(), txtMailPassword.Text, txtGoogleMapKey.Text.Trim()); } else { objPortalController.UpdatePortalMail(intPortalId, txtMailServer.Text.Trim(), txtMailAccount.Text.Trim(), txtMailPassword.Text, txtGoogleMapKey.Text.Trim()); } bool blnAdminSkinChanged = SkinChanged(SkinInfo.RootSkin, PortalId, SkinType.Admin, ctlAdminSkin.SkinSrc) || SkinChanged(SkinInfo.RootContainer, PortalId, SkinType.Admin, ctlAdminContainer.SkinSrc); //Dim objSkins As New UI.Skins.SkinController SkinController.SetSkin(SkinInfo.RootSkin, PortalId, SkinType.Portal, ctlPortalSkin.SkinSrc); SkinController.SetSkin(SkinInfo.RootContainer, PortalId, SkinType.Portal, ctlPortalContainer.SkinSrc); SkinController.SetSkin(SkinInfo.RootSkin, PortalId, SkinType.Admin, ctlAdminSkin.SkinSrc); SkinController.SetSkin(SkinInfo.RootContainer, PortalId, SkinType.Admin, ctlAdminContainer.SkinSrc); //Set cache after change skin int intCacheTimeout = 20 * Convert.ToInt32(Globals.PerformanceSetting); ArrayList arrSkins = CBO.FillCollection(DataProvider.Instance().GetSkins(PortalId), typeof(SkinInfo)); if (intCacheTimeout != 0) { DotNetNuke.Common.Utilities.DataCache.SetCache("GetSkins" + PortalId, arrSkins, TimeSpan.FromMinutes(intCacheTimeout), true); } if (UserInfo.IsSuperUser) { // delete old portal module assignments DesktopModuleController objDesktopModules = new DesktopModuleController(); objDesktopModules.DeletePortalDesktopModules(intPortalId, Null.NullInteger); // add new portal module assignments foreach (ListItem objListItem in ctlDesktopModules.Assigned) { objDesktopModules.AddPortalDesktopModule(intPortalId, int.Parse(objListItem.Value)); } } // Redirect to this site to refresh only if admin skin changed if (blnAdminSkinChanged) { Response.Redirect(Request.RawUrl, true); } } catch (Exception exc) //Module failed to load { Exceptions.ProcessModuleLoadException(this, exc); } }
/// <summary> /// Page_Load runs when the control is loaded /// </summary> /// <history> /// [cnurse] 9/8/2004 Updated to reflect design changes for Help, 508 support /// and localisation /// </history> protected void Page_Load(Object sender, EventArgs e) { try { if ((Request.QueryString["pid"] != null) && (PortalSettings.ActiveTab.ParentId == PortalSettings.SuperTabId || UserInfo.IsSuperUser)) { intPortalId = int.Parse(Request.QueryString["pid"]); ctlLogo.ShowUpLoad = false; ctlBackground.ShowUpLoad = false; } else { intPortalId = PortalId; ctlLogo.ShowUpLoad = true; ctlBackground.ShowUpLoad = true; } //this needs to execute always to the client script code is registred in InvokePopupCal cmdExpiryCalendar.NavigateUrl = Calendar.InvokePopupCal(txtExpiryDate); ClientAPI.AddButtonConfirm(cmdRestore, Localization.GetString("RestoreCCSMessage", LocalResourceFile)); // If this is the first visit to the page, populate the site data if (Page.IsPostBack == false) { ClientAPI.AddButtonConfirm(cmdDelete, Localization.GetString("DeleteMessage", LocalResourceFile)); PortalController objPortalController = new PortalController(); ListController ctlList = new ListController(); ListEntryInfoCollection colProcessor = ctlList.GetListEntryInfoCollection("Processor"); cboProcessor.DataSource = colProcessor; cboProcessor.DataBind(); cboProcessor.Items.Insert(0, new ListItem("<" + Localization.GetString("None_Specified") + ">", "")); PortalInfo objPortal = objPortalController.GetPortal(intPortalId); txtPortalName.Text = objPortal.PortalName; ctlLogo.Url = objPortal.LogoFile; ctlLogo.FileFilter = Globals.glbImageFileTypes; txtDescription.Text = objPortal.Description; txtKeyWords.Text = objPortal.KeyWords; ctlBackground.Url = objPortal.BackgroundFile; ctlBackground.FileFilter = Globals.glbImageFileTypes; txtFooterText.Text = objPortal.FooterText; optUserRegistration.SelectedIndex = objPortal.UserRegistration; optBannerAdvertising.SelectedIndex = objPortal.BannerAdvertising; cboSplashTabId.DataSource = Globals.GetPortalTabs(intPortalId, true, true, false, false, false); cboSplashTabId.DataBind(); if (cboSplashTabId.Items.FindByValue(objPortal.SplashTabId.ToString()) != null) { cboSplashTabId.Items.FindByValue(objPortal.SplashTabId.ToString()).Selected = true; } cboHomeTabId.DataSource = Globals.GetPortalTabs(intPortalId, true, true, false, false, false); cboHomeTabId.DataBind(); if (cboHomeTabId.Items.FindByValue(objPortal.HomeTabId.ToString()) != null) { cboHomeTabId.Items.FindByValue(objPortal.HomeTabId.ToString()).Selected = true; } cboLoginTabId.DataSource = Globals.GetPortalTabs(intPortalId, true, true, false, false, false); cboLoginTabId.DataBind(); if (cboLoginTabId.Items.FindByValue(objPortal.LoginTabId.ToString()) != null) { cboLoginTabId.Items.FindByValue(objPortal.LoginTabId.ToString()).Selected = true; } cboUserTabId.DataSource = Globals.GetPortalTabs(intPortalId, true, true, false, false, false); cboUserTabId.DataBind(); if (cboUserTabId.Items.FindByValue(objPortal.UserTabId.ToString()) != null) { cboUserTabId.Items.FindByValue(objPortal.UserTabId.ToString()).Selected = true; } ListEntryInfoCollection colList = ctlList.GetListEntryInfoCollection("Currency"); cboCurrency.DataSource = colList; cboCurrency.DataBind(); if (Null.IsNull(objPortal.Currency) || cboCurrency.Items.FindByValue(objPortal.Currency) == null) { cboCurrency.Items.FindByValue("USD").Selected = true; } else { cboCurrency.Items.FindByValue(objPortal.Currency).Selected = true; } RoleController objRoleController = new RoleController(); ArrayList Arr = objRoleController.GetUserRolesByRoleName(intPortalId, objPortal.AdministratorRoleName); int i; for (i = 0; i <= Arr.Count - 1; i++) { UserRoleInfo objUser = (UserRoleInfo)Arr[i]; cboAdministratorId.Items.Add(new ListItem(objUser.FullName, objUser.UserID.ToString())); } if (cboAdministratorId.Items.FindByValue(objPortal.AdministratorId.ToString()) != null) { cboAdministratorId.Items.FindByValue(objPortal.AdministratorId.ToString()).Selected = true; } if (!Null.IsNull(objPortal.ExpiryDate)) { txtExpiryDate.Text = objPortal.ExpiryDate.ToShortDateString(); } txtHostFee.Text = objPortal.HostFee.ToString(); txtHostSpace.Text = objPortal.HostSpace.ToString(); txtPageQuota.Text = objPortal.PageQuota.ToString(); txtUserQuota.Text = objPortal.UserQuota.ToString(); if (objPortal.SiteLogHistory != 0) { txtSiteLogHistory.Text = objPortal.SiteLogHistory.ToString(); } DesktopModuleController objDesktopModules = new DesktopModuleController(); ArrayList arrDesktopModules = objDesktopModules.GetDesktopModules(); ArrayList arrPremiumModules = new ArrayList(); foreach (DesktopModuleInfo objDesktopModule in arrDesktopModules) { if (objDesktopModule.IsPremium) { arrPremiumModules.Add(objDesktopModule); } } ArrayList arrPortalDesktopModules = objDesktopModules.GetPortalDesktopModules(intPortalId, Null.NullInteger); foreach (PortalDesktopModuleInfo objPortalDesktopModule in arrPortalDesktopModules) { foreach (DesktopModuleInfo objDesktopModule in arrPremiumModules) { if (objDesktopModule.DesktopModuleID == objPortalDesktopModule.DesktopModuleID) { arrPremiumModules.Remove(objDesktopModule); break; } } } ctlDesktopModules.Available = arrPremiumModules; ctlDesktopModules.Assigned = arrPortalDesktopModules; if (!String.IsNullOrEmpty(objPortal.PaymentProcessor)) { if (cboProcessor.Items.FindByText(objPortal.PaymentProcessor) != null) { cboProcessor.Items.FindByText(objPortal.PaymentProcessor).Selected = true; } else // default { if (cboProcessor.Items.FindByText("PayPal") != null) { cboProcessor.Items.FindByText("PayPal").Selected = true; } } } else { cboProcessor.Items.FindByValue("").Selected = true; } txtUserId.Text = objPortal.ProcessorUserId; txtPassword.Attributes.Add("value", objPortal.ProcessorPassword); txtHomeDirectory.Text = objPortal.HomeDirectory; //Populate the default language combobox Localization.LoadCultureDropDownList(cboDefaultLanguage, CultureDropDownTypes.NativeName, objPortal.DefaultLanguage); //Populate the timezone combobox (look up timezone translations based on currently set culture) Localization.LoadTimeZoneDropDownList(cboTimeZone, ((PageBase)Page).PageCulture.Name, Convert.ToString(objPortal.TimeZoneOffset)); //Portal Mail DataTable tb = objPortalController.GetPortalMail(intPortalId); if (tb.Rows.Count == 1) { txtMailServer.Text = tb.Rows[0][2].ToString(); txtMailAccount.Text = tb.Rows[0][3].ToString(); txtMailPassword.Text = tb.Rows[0][4].ToString(); txtGoogleMapKey.Text = tb.Rows[0][5].ToString(); } SkinInfo objSkin; ctlPortalSkin.Width = "275px"; ctlPortalSkin.SkinRoot = SkinInfo.RootSkin; objSkin = SkinController.GetSkin(SkinInfo.RootSkin, PortalId, SkinType.Portal); if (objSkin != null) { if (objSkin.PortalId == PortalId) { ctlPortalSkin.SkinSrc = objSkin.SkinSrc; } } ctlPortalContainer.Width = "275px"; ctlPortalContainer.SkinRoot = SkinInfo.RootContainer; objSkin = SkinController.GetSkin(SkinInfo.RootContainer, PortalId, SkinType.Portal); if (objSkin != null) { if (objSkin.PortalId == PortalId) { ctlPortalContainer.SkinSrc = objSkin.SkinSrc; } } ctlAdminSkin.Width = "275px"; ctlAdminSkin.SkinRoot = SkinInfo.RootSkin; objSkin = SkinController.GetSkin(SkinInfo.RootSkin, PortalId, SkinType.Admin); if (objSkin != null) { if (objSkin.PortalId == PortalId) { ctlAdminSkin.SkinSrc = objSkin.SkinSrc; } } ctlAdminContainer.Width = "275px"; ctlAdminContainer.SkinRoot = SkinInfo.RootContainer; objSkin = SkinController.GetSkin(SkinInfo.RootContainer, PortalId, SkinType.Admin); if (objSkin != null) { if (objSkin.PortalId == PortalId) { ctlAdminContainer.SkinSrc = objSkin.SkinSrc; } } LoadStyleSheet(); if (Convert.ToString(PortalSettings.HostSettings["SkinUpload"]) == "G" && !UserInfo.IsSuperUser) { lnkUploadSkin.Visible = false; lnkUploadContainer.Visible = false; } else { ModuleInfo FileManagerModule = (new ModuleController()).GetModuleByDefinition(intPortalId, "File Manager"); string[] parameters = new string[3]; parameters[0] = "mid=" + FileManagerModule.ModuleID; parameters[1] = "ftype=" + UploadType.Skin; parameters[2] = "rtab=" + TabId; lnkUploadSkin.NavigateUrl = Globals.NavigateURL(FileManagerModule.TabID, "Edit", parameters); parameters[1] = "ftype=" + UploadType.Container; lnkUploadContainer.NavigateUrl = Globals.NavigateURL(FileManagerModule.TabID, "Edit", parameters); } if (Request.UrlReferrer != null) { if (Request.UrlReferrer.AbsoluteUri == Request.Url.AbsoluteUri) { ViewState["UrlReferrer"] = ""; } else { ViewState["UrlReferrer"] = Convert.ToString(Request.UrlReferrer); } } else { ViewState["UrlReferrer"] = ""; } } if (UserInfo.IsSuperUser) { dshHost.Visible = true; tblHost.Visible = true; cmdDelete.Visible = true; if (Convert.ToString(ViewState["UrlReferrer"]) == "") { cmdCancel.Visible = false; } else { cmdCancel.Visible = true; } } else { dshHost.Visible = false; tblHost.Visible = false; cmdDelete.Visible = false; cmdCancel.Visible = false; } } catch (Exception exc) //Module failed to load { Exceptions.ProcessModuleLoadException(this, exc); } }