/// <summary>
    /// Finish button click.
    /// </summary>
    protected void FinishNextButton_Click(object sender, EventArgs e)
    {
        if (!separationFinished.ValidateForSeparationFinish())
        {
            string error = String.Empty;
            if (!AzureHelper.IsRunningOnAzure)
            {
                var separationHelper = new DBSeparationHelper();

                separationHelper.InstallScriptsFolder           = CMSDatabaseHelper.GetSQLInstallPathToObjects();
                separationHelper.ScriptsFolder                  = Server.MapPath("~/App_Data/DBSeparation");
                separationHelper.InstallationConnStringSeparate = hdnConnString.Value;
                error = separationHelper.DeleteSourceTables(separationFinished.DeleteOldDB, false);
            }

            if (!String.IsNullOrEmpty(error))
            {
                separationFinished.ErrorLabel.Visible = true;
                separationFinished.ErrorLabel.Text    = error;
                new EventLogProvider().LogEvent(EventLogProvider.EVENT_TYPE_ERROR, DateTime.Now, "Contact management database join", "DELETEOLDDATA", URLHelper.CurrentURL, error);
            }
            else
            {
                EnableTasks();
                TakeSitesOnline();
                WebSyncHelperClass.CreateTask(WebFarmTaskTypeEnum.RestartApplication, "RestartApplication", "", null);
                ScriptHelper.RegisterStartupScript(this, typeof(string), "Close dialog", ScriptHelper.GetScript("RefreshParent(); CloseDialog();"));
            }
        }
    }
    /// <summary>
    /// Joins databases.
    /// </summary>
    private void JoinDB()
    {
        var separation = new DBSeparationHelper();

        separation.InstallScriptsFolder = CMSDatabaseHelper.GetSQLInstallPathToObjects();
        separation.ScriptsFolder        = Server.MapPath("~/App_Data/DBSeparation");
        separation.LogMessage           = progress.LogMessage;
        separation.JoinDatabase();

        progress.LogMessage(ResHelper.GetString("separationDB.joinOK"), CMSDatabaseHelper.MessageType.Finished, false);
    }
Esempio n. 3
0
    /// <summary>
    /// Check if exists SQL script for this object in /App_Data/Install
    /// </summary>
    /// <param name="objName">Name of the object</param>
    private bool SQLScriptExists(string objName, ref string fileName)
    {
        if (!String.IsNullOrEmpty(objName))
        {
            fileName = CMSDatabaseHelper.GetSQLInstallPathToObjects() + "\\" + objName + ".sql";

            return(File.Exists(fileName));
        }
        fileName = null;

        return(TableManager.IsGeneratedSystemView(objName));
    }
Esempio n. 4
0
    /// <summary>
    /// Separates database.
    /// </summary>
    private void SeparateDB()
    {
        separation = new DBSeparationHelper();

        separation.InstallationConnStringSeparate = databaseDialog.ConnectionString;
        separation.InstallScriptsFolder           = CMSDatabaseHelper.GetSQLInstallPathToObjects();
        separation.ScriptsFolder = Server.MapPath("~/App_Data/DBSeparation");
        separation.LogMessage    = progress.LogMessage;

        separation.SeparateDatabase();

        progress.LogMessage(ResHelper.GetString("SeparationDB.OK"), CMSDatabaseHelper.MessageType.Finished, false);
    }