コード例 #1
0
        public ActionResult Index()
        {
            ViewBag.CanMigrate = false;

            if (_featureManager.GetEnabledFeatures().All(x => x.Id != "Orchard.Taxonomies"))
            {
                _orchardServices.Notifier.Warning(T("You need to enable Orchard.Taxonomies in order to migrate Contrib.Taxonomies to Orchard.Taxonomies."));
            }
            else
            {
                var flag = false;
                _upgradeService.ExecuteReader("SELECT * FROM " + _upgradeService.GetPrefixedTableName("Orchard_Taxonomies_TermContentItem"), (reader, conn) => {
                    flag = true;
                });

                if (flag)
                {
                    _orchardServices.Notifier.Warning(T("This migration step might have been done already."));
                }

                ViewBag.CanMigrate = true;
            }

            return(View());
        }
コード例 #2
0
        public ActionResult Index()
        {
            var found         = false;
            var activityTable = _upgradeService.GetPrefixedTableName("Orchard_Workflows_ActivityRecord");

            if (_upgradeService.TableExists(activityTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + activityTable + " WHERE Name = 'SendEmail'",
                                              (reader, connection) => {
                    found = true;
                });

                if (!found)
                {
                    _orchardServices.Notifier.Warning(T("This step is unnecessary as no Send Email activities were found."));
                }
            }
            else
            {
                _orchardServices.Notifier.Warning(T("This step appears unnecessary since it appears Orchard Workflows is not enabled."));
            }

            return(View());
        }
コード例 #3
0
        public int Create()
        {
            _upgradeService.ExecuteReader("SELECT * FROM " + _upgradeService.GetPrefixedTableName("Piedone_Combinator_CombinatorSettingsPartRecord"),
                                          (reader, connection) =>
            {
                var part = _siteService.GetSiteSettings().As <CombinatorSettingsPart>();

                part.CombinationExcludeRegex              = reader["CombinationExcludeRegex"] as string;
                part.CombineCdnResources                  = (bool)reader["CombineCdnResources"];
                part.EnableForAdmin                       = (bool)reader["EnableForAdmin"];
                part.MinifyResources                      = (bool)reader["MinifyResources"];
                part.MinificationExcludeRegex             = reader["MinificationExcludeRegex"] as string;
                part.EmbedCssImages                       = (bool)reader["EmbedCssImages"];
                part.EmbeddedImagesMaxSizeKB              = (int)reader["EmbeddedImagesMaxSizeKB"];
                part.EmbedCssImagesStylesheetExcludeRegex = reader["EmbedCssImagesStylesheetExcludeRegex"] as string;
                part.GenerateImageSprites                 = (bool)reader["GenerateImageSprites"];
                part.ResourceSetRegexes                   = reader["ResourceSetRegexes"] as string;
            });

            _upgradeService.ExecuteReader("DROP TABLE " + _upgradeService.GetPrefixedTableName("Piedone_Combinator_CombinatorSettingsPartRecord"), null);


            return(1);
        }
コード例 #4
0
        public ActionResult IndexPOST()
        {
            if (!_orchardServices.Authorizer.Authorize(StandardPermissions.SiteOwner, T("Not allowed to migrate Orchard.ContentPicker.")))
            {
                return(new HttpUnauthorizedResult());
            }

            try {
                _upgradeService.ExecuteReader("DELETE FROM " + _upgradeService.GetPrefixedTableName("Orchard_ContentPicker_ContentMenuItemPartRecord"), null);
                _upgradeService.CopyTable("Navigation_ContentMenuItemPartRecord", "Orchard_ContentPicker_ContentMenuItemPartRecord", new string[0]);

                _orchardServices.Notifier.Information(T("Content Picker menu items were migrated successfully."));
            }
            catch (Exception e) {
                Logger.Error(e, "Unexpected error while migrating to Orchard.ContentPicker. Please check the log.");
                _orchardServices.Notifier.Error(T("Unexpected error while migrating to Orchard.ContentPicker. Please check the log."));
            }

            return(RedirectToAction("Index"));
        }
コード例 #5
0
        // Migrating versioned SeoGlobalSettingsPartRecord entries to versioned infoset.
        public int Create()
        {
            var tableName = _upgradeService.GetPrefixedTableName("Onestop_SEO_SeoGlobalSettingsPartRecord");

            IEnumerable <ContentItem> allVersions = null;

            if (_upgradeService.TableExists(tableName))
            {
                _upgradeService.ExecuteReader(string.Format("SELECT * FROM {0}", tableName),
                                              (reader, connection) => {
                    if (allVersions == null)
                    {
                        allVersions = _contentManager.GetAllVersions((int)reader["ContentItemRecord_id"]);
                    }

                    var item = allVersions.FirstOrDefault(p => p.VersionRecord.Id == ConvertFromDBValue <int>(reader["Id"]));

                    if (item != null && item.Has <SeoGlobalSettingsPart>())
                    {
                        var part = item.As <SeoGlobalSettingsPart>();

                        part.HomeTitle                    = ConvertFromDBValue <string>(reader["HomeTitle"]);
                        part.HomeDescription              = ConvertFromDBValue <string>(reader["HomeDescription"]);
                        part.HomeKeywords                 = ConvertFromDBValue <string>(reader["HomeKeywords"]);
                        part.SeoPatternsDefinition        = ConvertFromDBValue <string>(reader["SeoPatternsDefinition"]);
                        part.SearchTitlePattern           = ConvertFromDBValue <string>(reader["SearchTitlePattern"]);
                        part.EnableCanonicalUrls          = ConvertFromDBValue <bool>(reader["EnableCanonicalUrls"]);
                        part.TitleOverrideMaxLength       = ConvertFromDBValue <int>(reader["TitleOverrideMaxLength"]);
                        part.DescriptionOverrideMaxLength = ConvertFromDBValue <int>(reader["DescriptionOverrideMaxLength"]);
                        part.KeywordsOverrideMaxLength    = ConvertFromDBValue <int>(reader["KeywordsOverrideMaxLength"]);
                    }
                });

                _upgradeService.ExecuteReader(string.Format("DROP TABLE {0}", tableName), null);
            }


            return(1);
        }
コード例 #6
0
        public ActionResult IndexPost()
        {
            if (!_orchardServices.Authorizer.Authorize(StandardPermissions.SiteOwner))
            {
                throw new AuthenticationException("");
            }

            var site = _orchardServices.WorkContext.CurrentSite.As <SiteSettingsPart>();

            #region SiteSettingsPartRecord
            var siteTable = _upgradeService.GetPrefixedTableName("Settings_SiteSettingsPartRecord");
            if (_upgradeService.TableExists(siteTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + siteTable,
                                              (reader, connection) => {
                    site.HomePage           = ConvertToString(reader["HomePage"]);
                    site.PageSize           = (int)reader["PageSize"];
                    site.PageTitleSeparator = ConvertToString(reader["PageTitleSeparator"]);
                    site.ResourceDebugMode  = (ResourceDebugMode)Enum.Parse(typeof(ResourceDebugMode), (string)reader["ResourceDebugMode"]);
                    site.SiteCulture        = ConvertToString(reader["SiteCulture"]);
                    site.SiteName           = ConvertToString(reader["SiteName"]);
                    site.SiteSalt           = ConvertToString(reader["SiteSalt"]);
                    site.SiteTimeZone       = ConvertToString(reader["SiteTimeZone"]);
                    site.SuperUser          = ConvertToString(reader["SuperUser"]);
                });

                _upgradeService.ExecuteReader("DROP TABLE " + siteTable, null);

                _signals.Trigger("SiteCurrentTheme");
            }

            #endregion

            #region SiteSettings2PartRecord
            var site2Table = _upgradeService.GetPrefixedTableName("Settings_SiteSettings2PartRecord");
            if (_upgradeService.TableExists(site2Table))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + site2Table,
                                              (reader, connection) => {
                    site.BaseUrl = ConvertToString(reader["BaseUrl"]);
                });

                _upgradeService.ExecuteReader("DROP TABLE " + site2Table, null);
            }

            #endregion

            #region ThemeSiteSettingsPartRecord
            var themesTable = _upgradeService.GetPrefixedTableName("Orchard_Themes_ThemeSiteSettingsPartRecord");
            if (_upgradeService.TableExists(themesTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + themesTable,
                                              (reader, connection) => site.As <InfosetPart>().Store("ThemeSiteSettingsPart", "CurrentThemeName", ConvertToString(reader["CurrentThemeName"])));

                _upgradeService.ExecuteReader("DROP TABLE " + themesTable, null);
            }

            #endregion

            #region AkismetSettingsPartRecord
            var akismetTable = _upgradeService.GetPrefixedTableName("Orchard_AntiSpam_AkismetSettingsPartRecord");
            if (_upgradeService.TableExists(akismetTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + akismetTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("AkismetSettingsPart", "TrustAuthenticatedUsers", (bool)reader["TrustAuthenticatedUsers"]);
                    site.As <InfosetPart>().Store("AkismetSettingsPart", "ApiKey", ConvertToString(reader["ApiKey"]));
                });

                _upgradeService.ExecuteReader("DROP TABLE " + akismetTable, null);
            }

            #endregion

            #region ReCaptchaSettingsPartRecord
            var reCaptchaTable = _upgradeService.GetPrefixedTableName("Orchard_AntiSpam_ReCaptchaSettingsPartRecord");
            if (_upgradeService.TableExists(reCaptchaTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + reCaptchaTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("ReCaptchaSettingsPart", "PublicKey", ConvertToString(reader["PublicKey"]));
                    site.As <InfosetPart>().Store("ReCaptchaSettingsPart", "PrivateKey", ConvertToString(reader["PrivateKey"]));
                    site.As <InfosetPart>().Store("ReCaptchaSettingsPart", "TrustAuthenticatedUsers", (bool)reader["TrustAuthenticatedUsers"]);
                });

                _upgradeService.ExecuteReader("DROP TABLE " + reCaptchaTable, null);
            }

            #endregion

            #region TypePadSettingsPartRecord
            var typePadTable = _upgradeService.GetPrefixedTableName("Orchard_AntiSpam_TypePadSettingsPartRecord");
            if (_upgradeService.TableExists(typePadTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + typePadTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("TypePadSettingsPart", "ApiKey", ConvertToString(reader["ApiKey"]));
                    site.As <InfosetPart>().Store("TypePadSettingsPart", "TrustAuthenticatedUsers", (bool)reader["TrustAuthenticatedUsers"]);
                });

                _upgradeService.ExecuteReader("DROP TABLE " + typePadTable, null);
            }

            #endregion

            #region CacheSettingsPartRecord
            var cacheTable = _upgradeService.GetPrefixedTableName("Orchard_OutputCache_CacheSettingsPartRecord");
            if (_upgradeService.TableExists(cacheTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + cacheTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("CacheSettingsPart", "DefaultCacheDuration", (int)reader["DefaultCacheDuration"]);
                    site.As <InfosetPart>().Store("CacheSettingsPart", "DefaultMaxAge", (int)reader["DefaultMaxAge"]);
                    site.As <InfosetPart>().Store("CacheSettingsPart", "VaryQueryStringParameters", ConvertToString(reader["VaryQueryStringParameters"]));
                    site.As <InfosetPart>().Store("CacheSettingsPart", "VaryRequestHeaders", ConvertToString(reader["VaryRequestHeaders"]));
                    site.As <InfosetPart>().Store("CacheSettingsPart", "IgnoredUrls", ConvertToString(reader["IgnoredUrls"]));
                    site.As <InfosetPart>().Store("CacheSettingsPart", "ApplyCulture", (bool)reader["ApplyCulture"]);
                    site.As <InfosetPart>().Store("CacheSettingsPart", "DebugMode", (bool)reader["DebugMode"]);
                });

                _upgradeService.ExecuteReader("DROP TABLE " + cacheTable, null);
            }

            #endregion

            #region CommentSettingsPartRecord
            var commentsTable = _upgradeService.GetPrefixedTableName("Orchard_Comments_CommentSettingsPartRecord");
            if (_upgradeService.TableExists(commentsTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + commentsTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("CommentSettingsPart", "ModerateComments", (bool)reader["ModerateComments"]);
                });

                _upgradeService.ExecuteReader("DROP TABLE " + commentsTable, null);
            }

            #endregion

            #region  MessageSettingsPartRecord
            var messagesTable = _upgradeService.GetPrefixedTableName("Orchard_Messaging_MessageSettingsPartRecord");
            if (_upgradeService.TableExists(messagesTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + messagesTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("MessageSettingsPart", "DefaultChannelService", reader["DefaultChannelService"] as string);
                });

                _upgradeService.ExecuteReader("DROP TABLE " + messagesTable, null);
            }

            #endregion

            #region SearchSettingsPartRecord
            var searchTable = _upgradeService.GetPrefixedTableName("Orchard_Search_SearchSettingsPartRecord");
            if (_upgradeService.TableExists(searchTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + searchTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("SearchSettingsPart", "SearchedFields", ConvertToString(reader["SearchedFields"]));
                    site.As <InfosetPart>().Store("SearchSettingsPart", "FilterCulture", (bool)reader["FilterCulture"]);
                    site.As <InfosetPart>().Store("SearchSettingsPart", "SearchIndex", ConvertToString(reader["SearchIndex"]));
                });

                _upgradeService.ExecuteReader("DROP TABLE " + searchTable, null);
            }

            #endregion

            #region RegistrationSettingsPartRecord
            var registrationTable = _upgradeService.GetPrefixedTableName("Orchard_Users_RegistrationSettingsPartRecord");
            if (_upgradeService.TableExists(registrationTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + registrationTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("RegistrationSettingsPart", "UsersCanRegister", (bool)reader["UsersCanRegister"]);
                    site.As <InfosetPart>().Store("RegistrationSettingsPart", "UsersMustValidateEmail", (bool)reader["UsersMustValidateEmail"]);
                    site.As <InfosetPart>().Store("RegistrationSettingsPart", "UsersCanRegister", (bool)reader["UsersCanRegister"]);
                    site.As <InfosetPart>().Store("RegistrationSettingsPart", "ValidateEmailRegisteredWebsite", ConvertToString(reader["ValidateEmailRegisteredWebsite"]));
                    site.As <InfosetPart>().Store("RegistrationSettingsPart", "ValidateEmailContactEmail", ConvertToString(reader["ValidateEmailContactEmail"]));
                    site.As <InfosetPart>().Store("RegistrationSettingsPart", "UsersAreModerated", (bool)reader["UsersAreModerated"]);
                    site.As <InfosetPart>().Store("RegistrationSettingsPart", "NotifyModeration", (bool)reader["NotifyModeration"]);
                    site.As <InfosetPart>().Store("RegistrationSettingsPart", "NotificationsRecipients", ConvertToBool(reader["NotificationsRecipients"]));
                    site.As <InfosetPart>().Store("RegistrationSettingsPart", "EnableLostPassword", (bool)reader["EnableLostPassword"]);
                });

                _upgradeService.ExecuteReader("DROP TABLE " + registrationTable, null);
            }

            #endregion

            #region SmtpSettingsPartRecord
            var emailTable = _upgradeService.GetPrefixedTableName("Orchard_Email_SmtpSettingsPartRecord");
            if (_upgradeService.TableExists(emailTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + emailTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("SmtpSettingsPart", "Address", ConvertToString(reader["Address"]));
                    site.As <InfosetPart>().Store("SmtpSettingsPart", "Host", ConvertToString(reader["Host"]));
                    site.As <InfosetPart>().Store("SmtpSettingsPart", "Port", (int)reader["Port"]);
                    site.As <InfosetPart>().Store("SmtpSettingsPart", "EnableSsl", (bool)reader["EnableSsl"]);
                    site.As <InfosetPart>().Store("SmtpSettingsPart", "RequireCredentials", (bool)reader["RequireCredentials"]);
                    site.As <InfosetPart>().Store("SmtpSettingsPart", "UserName", ConvertToString(reader["UserName"]));
                    site.As <InfosetPart>().Store("SmtpSettingsPart", "Password", ConvertToString(reader["Password"]));
                });

                _upgradeService.ExecuteReader("DROP TABLE " + emailTable, null);
            }

            #endregion

            #region WarmupSettingsPartRecord
            var warmupTable = _upgradeService.GetPrefixedTableName("Orchard_Warmup_WarmupSettingsPartRecord");
            if (_upgradeService.TableExists(warmupTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + warmupTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("WarmupSettingsPart", "Urls", ConvertToString(reader["Urls"]));
                    site.As <InfosetPart>().Store("WarmupSettingsPart", "Scheduled", (bool)reader["Scheduled"]);
                    site.As <InfosetPart>().Store("WarmupSettingsPart", "Delay", (int)reader["Delay"]);
                    site.As <InfosetPart>().Store("WarmupSettingsPart", "OnPublish", (bool)reader["OnPublish"]);
                });

                _upgradeService.ExecuteReader("DROP TABLE " + warmupTable, null);
            }

            #endregion

            #region BlogPartRecord
            var blogTable = _upgradeService.GetPrefixedTableName("Orchard_Blogs_BlogPartRecord");
            if (_upgradeService.TableExists(blogTable))
            {
                _upgradeService.ExecuteReader("SELECT * FROM " + blogTable,
                                              (reader, connection) => {
                    site.As <InfosetPart>().Store("BlogPart", "Description", ConvertToString(reader["Description"]));
                });

                _upgradeService.ExecuteReader("DROP TABLE " + blogTable, null);
            }
            #endregion

            _orchardServices.Notifier.Information(T("Site Settings migrated successfully"));

            return(View());
        }