コード例 #1
0
    /// <summary>
    /// Saves new relationship name's data into DB.
    /// </summary>
    /// <returns>Returns ID of created relationship name</returns>
    protected int SaveNewRelationshipName()
    {
        RelationshipNameInfo rni = new RelationshipNameInfo();

        rni.RelationshipDisplayName    = txtRelationshipNameDisplayName.Text;
        rni.RelationshipName           = txtRelationshipNameCodeName.Text;
        rni.RelationshipAllowedObjects = objectTypeSelector.ObjectType;
        RelationshipNameInfoProvider.SetRelationshipNameInfo(rni);
        if (chkAssign.Visible && chkAssign.Checked && (CMSContext.CurrentSite != null) && (rni.RelationshipNameId > 0))
        {
            // Add new relationship name to the actual site
            RelationshipNameSiteInfoProvider.AddRelationshipNameToSite(rni.RelationshipNameId, CMSContext.CurrentSite.SiteID);
        }
        return(rni.RelationshipNameId);
    }
コード例 #2
0
    /// <summary>
    /// Adds relationship name to site. Called when the "Add name to site" button is pressed.
    /// Expects the CreateRelationshipName method to be run first.
    /// </summary>
    private bool AddRelationshipNameToSite()
    {
        // Get the relationship name
        RelationshipNameInfo name = RelationshipNameInfoProvider.GetRelationshipNameInfo("MyNewRelationshipName");

        if (name != null)
        {
            int nameId = name.RelationshipNameId;
            int siteId = SiteContext.CurrentSiteID;

            // Save the binding
            RelationshipNameSiteInfoProvider.AddRelationshipNameToSite(nameId, siteId);

            return(true);
        }

        return(false);
    }
コード例 #3
0
    /// <summary>
    /// Removes relationship name from site. Called when the "Remove name from site" button is pressed.
    /// Expects the AddRelationshipNameToSite method to be run first.
    /// </summary>
    private bool RemoveRelationshipNameFromSite()
    {
        // Get the relationship name
        RelationshipNameInfo removeName = RelationshipNameInfoProvider.GetRelationshipNameInfo("MyNewRelationshipName");

        if (removeName != null)
        {
            int siteId = SiteContext.CurrentSiteID;

            // Get the binding
            RelationshipNameSiteInfo nameSite = RelationshipNameSiteInfoProvider.GetRelationshipNameSiteInfo(removeName.RelationshipNameId, siteId);

            // Delete the binding
            RelationshipNameSiteInfoProvider.DeleteRelationshipNameSiteInfo(nameSite);

            return(true);
        }

        return(false);
    }
コード例 #4
0
    protected void Page_Load(object sender, EventArgs e)
    {
        relationshipNameId = QueryHelper.GetInteger("relationshipnameid", 0);
        if (relationshipNameId > 0)
        {
            // Get the active sites
            DataSet ds = RelationshipNameSiteInfoProvider.GetRelationshipNameSites("SiteID", "RelationshipNameID = " + relationshipNameId, null, 0);

            if (!DataHelper.DataSourceIsEmpty(ds))
            {
                currentValues = TextHelper.Join(";", SystemDataHelper.GetStringValues(ds.Tables[0], "SiteID"));
            }

            if (!RequestHelper.IsPostBack())
            {
                usRelNames.Value = currentValues;
            }
        }

        usRelNames.OnSelectionChanged += usSites_OnSelectionChanged;
    }
コード例 #5
0
    protected void SaveSites()
    {
        // Remove old items
        string newValues = ValidationHelper.GetString(usRelNames.Value, null);
        string items     = DataHelper.GetNewItemsInList(newValues, currentValues);

        if (!String.IsNullOrEmpty(items))
        {
            string[] newItems = items.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
            if (newItems != null)
            {
                // Add all new items to site
                foreach (string item in newItems)
                {
                    int siteId = ValidationHelper.GetInteger(item, 0);
                    RelationshipNameSiteInfoProvider.RemoveRelationshipNameFromSite(relationshipNameId, siteId);
                }
            }
        }

        // Add new items
        items = DataHelper.GetNewItemsInList(currentValues, newValues);
        if (!String.IsNullOrEmpty(items))
        {
            string[] newItems = items.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
            if (newItems != null)
            {
                // Add all new items to site
                foreach (string item in newItems)
                {
                    int siteId = ValidationHelper.GetInteger(item, 0);
                    RelationshipNameSiteInfoProvider.AddRelationshipNameToSite(relationshipNameId, siteId);
                }
            }
        }

        lblInfo.Visible = true;
        lblInfo.Text    = GetString("General.ChangesSaved");
    }
コード例 #6
0
        public bool IsAtSynchronizedSite(RelationshipNameInfo relationshipName)
        {
            var siteId = SiteInfoProvider.GetSiteID(Settings.Sitename);

            return(RelationshipNameSiteInfoProvider.GetRelationshipNameSiteInfo(relationshipName.RelationshipNameId, siteId) != null);
        }