protected void Page_Load(object sender, EventArgs e)
    {
        lblEmail.ToolTip            = GetString("clonning.settings.user.email.tooltip");
        lblGeneratePassword.ToolTip = GetString("clonning.settings.user.generatepassword.tooltip");
        lblPassword.ToolTip         = GetString("clonning.settings.user.password.tooltip");

        if (!RequestHelper.IsPostBack())
        {
            txtEmail.Text = InfoToClone.GetStringValue("Email", "");
        }

        string script =
            @"function EnableDisablePassword() {
  var elem = document.getElementById('" + txtPassword.ValueElementID + @"');
  var chk = document.getElementById('" + chkGeneratePassword.ClientID + @"');
  if ((chk!= null) && (elem != null)) {
    if (chk.checked) {
      elem.disabled = true;
    } else {
      elem.disabled = false;
    }
  }
}
EnableDisablePassword();
";

        ScriptHelper.RegisterStartupScript(this.Page, typeof(string), "EnableDisablePassword", script, true);
        chkGeneratePassword.Attributes.Add("onclick", "EnableDisablePassword();");
    }
Ejemplo n.º 2
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!RequestHelper.IsPostBack())
     {
         txtEmail.Text = InfoToClone.GetStringValue("ReportSubscriptionEmail", "");
     }
 }
    protected override void OnLoad(EventArgs e)
    {
        base.OnLoad(e);

        if (!RequestHelper.IsPostBack())
        {
            txtEmail.Text = InfoToClone.GetStringValue("ReportSubscriptionEmail", "");
        }
    }
Ejemplo n.º 4
0
    protected void Page_Load(object sender, EventArgs e)
    {
        lblTableName.ToolTip             = GetString("clonning.settings.class.tablename.tooltip");
        lblCloneAlternativeForms.ToolTip = GetString("clonning.settings.class.alternativeform");

        if (!RequestHelper.IsPostBack())
        {
            TableManager tm = new TableManager(null);

            txtTableName.Text = tm.GetUniqueTableName(InfoToClone.GetStringValue("ClassTableName", ""));
        }
    }
Ejemplo n.º 5
0
 protected void Page_Load(object sender, EventArgs e)
 {
     drpCategories.ExcludeCategoryID = InfoToClone.Generalized.ObjectID;
     if (!RequestHelper.IsPostBack())
     {
         int userId = InfoToClone.GetIntegerValue("CategoryUserID", 0);
         drpCategories.CategoryID = InfoToClone.GetIntegerValue("CategoryParentID", 0);
         if (userId > 0)
         {
             drpCategories.UserID = userId;
         }
         drpCategories.DisableSiteCategories = InfoToClone.Generalized.ObjectSiteID == 0;
     }
 }
Ejemplo n.º 6
0
    /// <summary>
    /// Returns true if custom settings are valid against given clone setting.
    /// </summary>
    /// <param name="settings">Clone settings</param>
    public override bool IsValid(CloneSettings settings)
    {
        if (InfoToClone.GetBooleanValue("IssueIsABTest", false))
        {
            if (!settings.IncludeChildren || (settings.MaxRelativeLevel == 0))
            {
                // It is not possible to clone ABTest issue without its children, because children are variants of the AB Tests and it makes no sense to clone without variants
                ShowError(GetString("newsletters.cannotcloneabtestissuewithoutchildren"));

                return(false);
            }
        }

        return(true);
    }
Ejemplo n.º 7
0
    protected void Page_Load(object sender, EventArgs e)
    {
        lblCloneItems.ToolTip = GetString("clonning.settings.form.tooltip");

        if (!RequestHelper.IsPostBack())
        {
            DataClassInfo classInfo = DataClassInfoProvider.GetDataClassInfo(InfoToClone.GetIntegerValue("FormClassID", 0));
            if (classInfo != null)
            {
                TableManager tm = new TableManager(null);

                txtTableName.Text = tm.GetUniqueTableName(classInfo.ClassTableName);
            }
        }
    }
Ejemplo n.º 8
0
    protected void Page_Load(object sender, EventArgs e)
    {
        lblTableName.ToolTip             = GetString("clonning.settings.class.tablename.tooltip");
        lblIcons.ToolTip                 = GetString("clonning.settings.documenttype.icons.tooltip");
        lblCloneAlternativeForms.ToolTip = GetString("clonning.settings.class.alternativeform");

        if (!RequestHelper.IsPostBack())
        {
            TableManager tm = new TableManager(null);

            string originalTableName = InfoToClone.GetStringValue("ClassTableName", "");
            if (string.IsNullOrEmpty(originalTableName))
            {
                plcTableName.Visible        = false;
                plcAlternativeForms.Visible = false;
            }
            else
            {
                txtTableName.Text = tm.GetUniqueTableName(InfoToClone.GetStringValue("ClassTableName", ""));
            }
        }
    }
Ejemplo n.º 9
0
    /// <summary>
    /// Clones the object to the DB according to provided settings.
    /// </summary>
    public CloneResult CloneObject()
    {
        if (InfoToClone != null)
        {
            TransferExcludedTypes();

            // Check code name
            if (plcCodeName.Visible)
            {
                bool checkCodeName = true;
                if (customProperties != null)
                {
                    checkCodeName = customProperties.ValidateCodeName;
                }

                if (checkCodeName && !ValidationHelper.IsCodeName(txtCodeName.Text))
                {
                    ShowError(GetString("general.invalidcodename"));
                    return(null);
                }
            }

            // Check permissions
            string targetSiteName = SiteContext.CurrentSiteName;
            if (plcCloneUnderSite.Visible && siteElem.Visible)
            {
                int targetSiteId = siteElem.SiteID;
                if (targetSiteId > 0)
                {
                    targetSiteName = SiteInfoProvider.GetSiteName(targetSiteId);
                }
            }

            // Check object permissions (Create & Modify)
            try
            {
                InfoToClone.CheckPermissions(PermissionsEnum.Create, targetSiteName, CurrentUser, true);
                InfoToClone.CheckPermissions(PermissionsEnum.Modify, targetSiteName, CurrentUser, true);
            }
            catch (PermissionCheckException ex)
            {
                RedirectToAccessDenied(ex.ModuleName, ex.PermissionFailed);
            }

            CloneSettings settings = new CloneSettings();
            settings.KeepFieldsTranslated = chkKeepFieldsTranslated.Checked;
            settings.CloneBase            = InfoToClone;
            settings.CodeName             = txtCodeName.Text;
            settings.DisplayName          = txtDisplayName.Text;
            settings.IncludeBindings      = chkBindings.Checked;
            settings.IncludeOtherBindings = chkBindings.Checked;
            settings.IncludeChildren      = chkChildren.Checked;
            settings.IncludeMetafiles     = chkMetafiles.Checked;
            settings.IncludeSiteBindings  = chkSiteBindings.Checked;
            if (plcAssignToCurrentSite.Visible)
            {
                settings.AssignToSiteID = (chkAssignToCurrentSite.Checked ? SiteContext.CurrentSiteID : 0);
            }
            settings.MaxRelativeLevel = ValidationHelper.GetInteger(drpMaxRelativeLevel.SelectedValue, -1);
            if (plcCloneUnderSite.Visible && siteElem.Visible)
            {
                settings.CloneToSiteID = siteElem.SiteID;
            }
            else
            {
                settings.CloneToSiteID = InfoToClone.Generalized.ObjectSiteID;
            }
            if (customProperties != null)
            {
                if (customProperties.IsValid(settings))
                {
                    Hashtable p = customProperties.CustomParameters;
                    if (p != null)
                    {
                        settings.CustomParameters = p;
                    }

                    settings.ExcludedChildTypes.AddRange(excludedChildren);
                    settings.ExcludedBindingTypes.AddRange(excludedBindings);
                    settings.ExcludedOtherBindingTypes.AddRange(excludedOtherBindings);
                }
                else
                {
                    return(null);
                }
            }
            if (InfoToClone.Parent != null)
            {
                settings.ParentID = InfoToClone.Parent.Generalized.ObjectID;
            }

            CloneResult result = new CloneResult();
            BaseInfo    clone  = null;

            if (chkUseTransaction.Checked)
            {
                using (var transaction = new CMSTransactionScope())
                {
                    clone = InfoToClone.Generalized.InsertAsClone(settings, result);
                    transaction.Commit();
                }
            }
            else
            {
                clone = InfoToClone.Generalized.InsertAsClone(settings, result);
            }

            if (customProperties != null)
            {
                string script = customProperties.CloseScript;
                if (!string.IsNullOrEmpty(script))
                {
                    mCloseScript = script.Replace("{0}", clone.Generalized.ObjectID.ToString());
                }
            }

            return(result);
        }
        return(null);
    }
Ejemplo n.º 10
0
    /// <summary>
    /// Clones the object to the DB according to provided settings.
    /// </summary>
    ///
    public CloneResult CloneObject()
    {
        if (InfoToClone == null)
        {
            return(null);
        }

        TransferExcludedTypes();

        // Check code name
        if (plcCodeName.Visible)
        {
            bool checkCodeName = customProperties?.ValidateCodeName ?? true;
            if (checkCodeName && !ValidationHelper.IsCodeName(txtCodeName.Text))
            {
                ShowError(GetString("general.invalidcodename"));

                return(null);
            }
        }

        // Check display name length
        if (plcDisplayName.Visible && (txtDisplayName.Text.Length > mDisplayNameMaxLength))
        {
            ShowError(string.Format(GetString("cloning.displayname.maxlengthexceed"), mDisplayNameMaxLength));

            return(null);
        }

        // Check permissions
        string targetSiteName = SiteContext.CurrentSiteName;

        if (plcCloneUnderSite.Visible && siteElem.Visible && (siteElem.SiteID > 0))
        {
            targetSiteName = SiteInfoProvider.GetSiteName(siteElem.SiteID);
        }

        // Check object permissions (Create & Modify)
        try
        {
            InfoToClone.CheckPermissions(PermissionsEnum.Create, targetSiteName, CurrentUser, true);
            InfoToClone.CheckPermissions(PermissionsEnum.Modify, targetSiteName, CurrentUser, true);
        }
        catch (PermissionCheckException ex)
        {
            RedirectToAccessDenied(ex.ModuleName, ex.PermissionFailed);
        }

        CloneSettings settings = InitializeCloneSettings();

        if (settings == null)
        {
            return(null);
        }

        var      result = new CloneResult();
        BaseInfo clone;

        if (chkUseTransaction.Checked)
        {
            using (var transaction = new CMSTransactionScope())
            {
                clone = InfoToClone.Generalized.InsertAsClone(settings, result);
                transaction.Commit();
            }
        }
        else
        {
            clone = InfoToClone.Generalized.InsertAsClone(settings, result);
        }

        string script = customProperties?.CloseScript;

        if (!string.IsNullOrEmpty(script))
        {
            mCloseScript = script.Replace("{0}", clone.Generalized.ObjectID.ToString());
        }

        return(result);
    }