HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/RMourik/bassol.nl/CMS/CMSFormControls/Sites/SiteCultureChanger.ascx.cs
using System;
using System.Web.UI;

using CMS.FormControls;
using CMS.Helpers;
using CMS.Localization;
using CMS.Search;
using CMS.SiteProvider;


public partial class CMSFormControls_Sites_SiteCultureChanger : FormEngineUserControl
{
    /// <summary>
    /// Value of the control.
    /// </summary>
    public override object Value
    {
        get
        {
            return txtCulture.Text;
        }
        set
        {
            txtCulture.Text = ValidationHelper.GetString(value, String.Empty);
        }
    }


    /// <summary>
    /// Page load.
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void Page_Load(object sender, EventArgs e)
    {
        SiteInfo si = EditedObject as SiteInfo;
        if (si == null)
        {
            return;
        }

        CultureInfo ci = CultureInfoProvider.GetCultureInfo(CultureHelper.GetDefaultCultureCode(si.SiteName));
        string currentCulture = ci.CultureCode;
        if (!RequestHelper.IsPostBack())
        {
            txtCulture.Text = ci.CultureName;
        }

        // Set the culture textbox readonly
        txtCulture.Attributes.Add("readonly", "readonly");

        btnChange.Text = GetString("general.change");
        btnChange.OnClientClick = "OpenCultureChanger('" + si.SiteID + "','" + currentCulture + "'); return false;";
        
        ltlScript.Text = ScriptHelper.GetScript(@"
var pageChangeUrl='" + ResolveUrl("~/CMSModules/Sites/Pages/CultureChange.aspx") + @"'; 
function ChangeCulture(documentChanged) { 
    var hiddenElem = document.getElementById('" + hdnDocumentsChangeChecked.ClientID + @"');
    hiddenElem.value = documentChanged;
    " + Page.ClientScript.GetPostBackEventReference(btnHidden, String.Empty) + @"
} 
");
    }


    /// <summary>
    /// On default culture change.
    /// </summary>
    protected void btnHidden_Click(object sender, EventArgs e)
    {
        SiteInfo si = EditedObject as SiteInfo;

        if (si != null)
        {
            string defaultCultureCode = CultureHelper.GetDefaultCultureCode(si.SiteName);
            if (!String.IsNullOrEmpty(defaultCultureCode))
            {
                CultureInfo ci = CultureInfoProvider.GetCultureInfo(defaultCultureCode);
                if (ci != null)
                {
                    // Show a message that the action requires rebuilding search index
                    if ((txtCulture.Text != ci.CultureName) && ValidationHelper.GetBoolean(hdnDocumentsChangeChecked.Value, false) && SearchIndexInfoProvider.SearchEnabled)
                    {
                        ShowInformation(String.Format(GetString("general.changessaved") + " " + GetString("srch.indexrequiresrebuild"), "<a href=\"javascript:" + Page.ClientScript.GetPostBackEventReference(this, "saved") + "\">" + GetString("General.clickhere") + "</a>"));
                    }

                    txtCulture.Text = ci.CultureName;
                    btnChange.OnClientClick = "OpenCultureChanger('" + si.SiteID + "','" + ci.CultureCode + "'); return false;";
                }
            }
        }
    }
}