Example #1
0
        public void DropDataCollectionEnvironmentTables(CmsSite site, CmsSiteEnvironment newEnvironment)
        {
            //bool ValidQuery = false;
            //string sql = "SET FOREIGN_KEY_CHECKS = 0;\r\nDROP TABLE IF EXISTS ";
            //foreach (string tableName in this.GetAllTables())
            //{
            //    if (tableName.ToLower().StartsWith("data"))
            //    {
            //        sql += newEnvironment.DatabaseName + "." + tableName + ",\r\n";
            //        ValidQuery = true;
            //    }
            //}
            //sql = sql.Substring(0, sql.Length - 3);
            //sql += ";\r\nSET FOREIGN_KEY_CHECKS = 1;";
            //if (ValidQuery)
            //{
            //    DataBase.Get().Execute(sql);
            //}

            DataBase.Get().Execute("SET foreign_key_checks = 0;");
            foreach (DatabaseTableDefinition table in this.DataCollectionTables)
            {
                string sql = String.Format(@"DROP TABLE IF EXISTS {0}." + table.Name + ";", newEnvironment.DatabaseName, site.ID);
                DataBase.Get().Execute(sql);
            }
            DataBase.Get().Execute("SET foreign_key_checks = 1;");
        }
Example #2
0
 public void CloneDataCollectionEnvironmentTables(CmsSite site, CmsSiteEnvironment currentEnvorinment, CmsSiteEnvironment newEnvironment)
 {
     foreach (DatabaseTableDefinition table in this.DataCollectionTables)
     {
         string sql = String.Format(@"CREATE TABLE IF NOT EXISTS {0}." + table.Name + " LIKE {1}." + table.Name + ";", newEnvironment.DatabaseName, currentEnvorinment.DatabaseName, site.ID);
         DataBase.Get().Execute(sql);
     }
 }
Example #3
0
 public static JsonResult SaveEnvironment(CmsSiteEnvironment obj)
 {
     try
     {
         obj.Save();
     }
     catch (Exception ex)
     {
         return(JsonResult.CreateResult(false, ex.Message));
     }
     return(JsonResult.CreateResult(true, LoadEnvironments()));
 }
Example #4
0
        public void InsertEnvironmentDataInTables(CmsSite site, CmsSiteEnvironment currentEnvorinment, CmsSiteEnvironment newEnvironment)
        {
            DataBase.Get().Execute("SET foreign_key_checks = 0;");
            string sql;

            foreach (DatabaseTableDefinition tableDef in this.SiteTables)
            {
                if (tableDef.Name == "eventlog")
                {
                    continue;
                }
                if (!tableDef.isManyToManyLinkTable)
                {
                    if (tableDef.Name == "site")
                    {
                        sql = String.Format(@"INSERT INTO {0}." + tableDef.Name + " SELECT * FROM {1}." + tableDef.Name + " WHERE ID='{2}';", newEnvironment.DatabaseName, currentEnvorinment.DatabaseName, site.ID);
                        DataBase.Get().Execute(sql);
                    }
                    else
                    {
                        sql = String.Format(@"INSERT INTO {0}." + tableDef.Name + " SELECT * FROM {1}." + tableDef.Name + " WHERE FK_Site='{2}';", newEnvironment.DatabaseName, currentEnvorinment.DatabaseName, site.ID);
                        DataBase.Get().Execute(sql);
                    }
                }
                else
                {
                    sql = String.Format(@"INSERT INTO {0}.{2} SELECT * FROM {1}.{2} WHERE EXISTS(SELECT * FROM {1}.{3} WHERE {1}.{3}.FK_Site='{5}' AND {1}.{3}.ID = {1}.{2}.{4})",
                                        newEnvironment.DatabaseName, currentEnvorinment.DatabaseName, tableDef.Name, tableDef.ParentTableName, tableDef.ForeignKey, site.ID);
                    DataBase.Get().Execute(sql);
                }
            }

            ////modules references
            //sql = String.Format(@"INSERT INTO {0}.moduleperpage SELECT * FROM {1}.moduleperpage WHERE EXISTS(SELECT * FROM {1}.page WHERE {1}.page.FK_Site='{2}' AND {1}.page.ID = {1}.moduleperpage.FK_Page)", newEnvironment.DataBaseName, currentEnvorinment.DataBaseName, site.ID);
            //DataBase.Get().Execute(sql);
            ////scripts references
            ////per template
            //sql = String.Format(@"INSERT INTO {0}.scriptpertemplate SELECT * FROM {1}.scriptpertemplate WHERE EXISTS(SELECT * FROM {1}.template WHERE {1}.template.FK_Site='{2}' AND {1}.template.ID = {1}.scriptpertemplate.FK_Template)", newEnvironment.DataBaseName, currentEnvorinment.DataBaseName, site.ID);
            //DataBase.Get().Execute(sql);
            ////per page
            //sql = String.Format(@"INSERT INTO {0}.scriptperpage SELECT * FROM {1}.scriptperpage WHERE EXISTS(SELECT * FROM {1}.page WHERE {1}.page.FK_Site='{2}' AND {1}.page.ID = {1}.scriptperpage.FK_Page)", newEnvironment.DataBaseName, currentEnvorinment.DataBaseName, site.ID);
            //DataBase.Get().Execute(sql);
            ////Newsletters
            //sql = String.Format(@"INSERT INTO {0}.newsletterpergroup SELECT * FROM {1}.newsletterpergroup WHERE EXISTS(SELECT * FROM {1}.newsletter WHERE {1}.newsletter.FK_Site='{2}' AND {1}.newsletter.ID = {1}.newsletterpergroup.FK_Newsletter)", newEnvironment.DataBaseName, currentEnvorinment.DataBaseName, site.ID);
            //DataBase.Get().Execute(sql);

            DataBase.Get().Execute("SET foreign_key_checks = 1;");
        }
Example #5
0
 public void ClearDataCollectionEnvironmentTables(CmsSite site, CmsSiteEnvironment newEnvironment)
 {
     DataBase.Get().Execute("SET foreign_key_checks = 0;");
     foreach (DatabaseTableDefinition table in this.DataCollectionTables)
     {
         try
         {
             string sql = String.Format(@"DELETE FROM {0}." + table.Name + " WHERE FK_Site='{1}';", newEnvironment.DatabaseName, site.ID);
             DataBase.Get().Execute(sql);
         }
         catch
         {
             //NIET ELKE TABEL HEEFT FK_SITE.
         }
     }
     DataBase.Get().Execute("SET foreign_key_checks = 1;");
 }
Example #6
0
        private static CmsSiteEnvironment GetWorkingEnvironment(Guid siteID)
        {
            CmsSiteEnvironment returnValue = null;

            string envID = ConfigurationManager.AppSettings["SiteEnvironmentID"];

            if (envID != null && envID != "")
            {
                returnValue = BaseObject.GetById <CmsSiteEnvironment>(new Guid(envID));
            }
            else
            {
                //eerste editable omgeving wordt standaard
                string where = String.Format("FK_Site='{0}' AND SiteEnvironmentType={1}", siteID, (int)SiteEnvironmentTypeEnum.Editable);
                returnValue  = BaseObject.GetFirst <CmsSiteEnvironment>(where);
            }
            return(returnValue);
        }
Example #7
0
        public void InsertEnvironmentDataCollectionInTables(CmsSite site, CmsSiteEnvironment currentEnvorinment, CmsSiteEnvironment newEnvironment)
        {
            DataBase.Get().Execute("SET foreign_key_checks = 0;");
            string sql;

            foreach (DatabaseTableDefinition table in this.DataCollectionTables)
            {
                if (!table.isManyToManyLinkTable)
                {
                    sql = String.Format(@"INSERT INTO {0}." + table.Name + " SELECT * FROM {1}." + table.Name + " WHERE FK_Site='{2}';", newEnvironment.DatabaseName, currentEnvorinment.DatabaseName, site.ID);
                    DataBase.Get().Execute(sql);
                }
            }

            //lookupvalues
            sql = String.Format(@"INSERT INTO {0}.datalookupvalueperitem SELECT * FROM {1}.datalookupvalueperitem WHERE EXISTS(SELECT * FROM {1}.datalookupvalue WHERE {1}.datalookupvalue.FK_Site='{2}' AND {1}.datalookupvalue.ID = {1}.datalookupvalueperitem.FK_LookupValue)", newEnvironment.DatabaseName, currentEnvorinment.DatabaseName, site.ID);
            DataBase.Get().Execute(sql);

            DataBase.Get().Execute("SET foreign_key_checks = 1;");
        }
Example #8
0
 public static JsonResult DeleteEnvironment(CmsSiteEnvironment obj)
 {
     obj.Delete();
     return(JsonResult.CreateResult(true, LoadEnvironments()));
 }
        protected void Page_Load(object sender, EventArgs e)
        {
            base.CheckLoginAndLicense();

            /* <elFinder apiVersion="2.0"
             * localFSRootDirectoryPath="C:\Users\emiel\Documents\Visual Studio 2012\Projects\Bitplate\Source\bitplate2.0\BitSite\_files"
             * localFSThumbsDirectoryPath="C:\Users\emiel\Documents\Visual Studio 2012\Projects\Bitplate\Source\bitplate2.0\BitSite\_files\thumbs\"
             * rootDirectoryName="Root"
             * uploadMaxSize="20M"
             * duplicateFilePattern="Copy of {0}"
             * duplicateDirectoryPattern="Copy of {0}"
             * thumbsSize="48,48"
             * defaultVolumeName="LocalFileSystem"
             * baseUrl="http://localhost:49922/_files/"
             * baseThumbsUrl="http://localhost:49922/_files/thumbs/">
             * </elFinder>*/
            AppConnectorConfig elConfig           = new AppConnectorConfig();
            CmsSiteEnvironment CurrentEnvironment = SessionObject.CurrentSite.CurrentWorkingEnvironment;
            string             Url = Request.Url.Scheme + "://" + Request.Url.Authority + Request.ApplicationPath.TrimEnd('/');

            elConfig.BaseThumbsUrl             = Url + "/_temp/_thumb/";
            elConfig.BaseUrl                   = Url + "/_files/";
            elConfig.DefaultVolumeName         = "LocalFileSystem";
            elConfig.DuplicateDirectoryPattern = "Copy of {0}";
            elConfig.DuplicateFilePattern      = "Copy of {0}";
            elConfig.ThumbsSize                = new System.Drawing.Size(48, 48);
            elConfig.UploadMaxSize             = "128M";
            string BitplatePath = (!SessionObject.CurrentSite.Path.EndsWith("\\")) ? SessionObject.CurrentSite.Path + "\\" : SessionObject.CurrentSite.Path;

            elConfig.LocalFSRootDirectoryPath   = BitplatePath + "_files";
            elConfig.LocalFSThumbsDirectoryPath = BitplatePath + "_temp\\_thumb";
            elConfig.RootDirectoryName          = "Root";

            if (!Directory.Exists(BitplatePath + "_temp"))
            {
                Directory.CreateDirectory(BitplatePath + "_temp");
            }

            if (!Directory.Exists(BitplatePath + "_temp\\_thumb"))
            {
                Directory.CreateDirectory(BitplatePath + "_temp\\_thumb");
            }

            if (!Directory.Exists(BitplatePath + "_files"))
            {
                Directory.CreateDirectory(BitplatePath + "_files");
            }

            /* if (!Directory.Exists(BitplatePath + "_css"))
             * {
             *  Directory.CreateDirectory(BitplatePath + "_css");
             * }
             *
             * if (!Directory.Exists(BitplatePath + "_css\\_moduleStyles"))
             * {
             *  Directory.CreateDirectory(BitplatePath + "_css\\_moduleStyles");
             * }
             *
             * if (!Directory.Exists(BitplatePath + "_js"))
             * {
             *  Directory.CreateDirectory(BitplatePath + "_js");
             * }
             *
             * if (!Directory.Exists(BitplatePath + "_js\\moduleScripts"))
             * {
             *  Directory.CreateDirectory(BitplatePath + "_js\\moduleScripts");
             * }
             *
             * if (!Directory.Exists(BitplatePath + "_files\\_css"))
             * {
             *  //Directory.CreateDirectory(BitplatePath + "_files");
             *  Process.Start("mklink /D \"" + BitplatePath + "_files\\_css\" \"" + BitplatePath + "\\_css\"");
             * } */
            //Als MaxWithImages groter is dan 0 dan activeer autoscaler.
            elConfig.EnableAutoScaleImages = (SessionObject.CurrentSite.MaxWidthImages > 0);
            elConfig.AutoScaleImagesWidth  = SessionObject.CurrentSite.MaxWidthImages;
            elFinder.Connector.Config.AppConnectorConfig.Instance = elConfig;

            // register IoC
            var builder = new ContainerBuilder();

            builder.RegisterElFinderConnector();
            _container = builder.Build();
            // need also to set container in elFinder module
            _container.SetAsElFinderResolver();

            if (Request.QueryString["Referer"] != null)
            {
                this.BackLink.HRef = Request.QueryString["Referer"];
                if (Request.QueryString["Template"] != null)
                {
                    this.BackLink.HRef += "?Template";
                }
                if (Request.QueryString["id"] != null)
                {
                    this.BackLink.HRef += "#" + Request.QueryString["id"];
                }
            }
        }