예제 #1
0
    protected void ButtonSave_Click(object sender, EventArgs e)
    {
        if (this.CurrentTemplateIdViewState != 0 && ButtonCancelSaveAs.Visible == false)
        {
            MailTemplate currentTemplate = MailTemplate.FromIdentity(this.CurrentTemplateIdViewState);
            currentTemplate.TemplateBody = RadEditor1.Content;
            currentTemplate.NormalizeHtml();
            currentTemplate.TemplateTitle = TextBoxSubject.Text;
            currentTemplate.NormalizeHtml();
            currentTemplate.RemovePlaceholderSpans();
            currentTemplate.Update();
            ShowTemplate(currentTemplate);
            BuildTemplateDropdowns();
        }
        else
        {
            string cntryCode = "";
            string cntryLang = "";
            if (DropDownCountry.SelectedValue != "")
            {
                Country cntry = Country.FromCode(DropDownCountry.SelectedValue);
                cntryCode = cntry.Code;
                cntryLang = cntry.Culture.Substring(0, 2);
            }

            int          orgId = WSOrgTreeDropDown1.SelectedOrganizationId;
            Organization org   = Organization.FromIdentity(orgId);

            if (_authority.HasPermission(Permission.CanSetUpAutomail, orgId, org.DefaultCountry.GeographyId, Authorization.Flag.Default))
            {
                if (orgId == Organization.RootIdentity)
                {
                    orgId = 0;
                }

                MailTemplate currentTemplate = MailTemplate.Create(DropDownName.SelectedValue, cntryLang,
                                                                   cntryCode, orgId, RadEditor1.Content);
                this.CurrentTemplateIdViewState   = currentTemplate.TemplateId;
                this.CurrentTemplateNameViewState = currentTemplate.TemplateName;
                currentTemplate.TemplateBody      = RadEditor1.Content;
                currentTemplate.NormalizeHtml();
                currentTemplate.TemplateTitle = TextBoxSubject.Text;
                currentTemplate.NormalizeHtml();
                currentTemplate.MarkPlaceholderSpans();
                currentTemplate.Update();
                ShowTemplate(currentTemplate);
                BuildTemplateDropdowns();
                SetUIState(pageUIState.edit);
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "StartupMessage", "alert('You have to select an organization for wich you have permissions to edit templates for.');", true);
            }
        }
    }