コード例 #1
0
 public DataProtectionContextPartHandler(IRepository <DataProtectionContextPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #2
0
 public MetaHandler(IRepository <MetaRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #3
0
 public ContentPermissionsPartHandler(IRepository <ContentPermissionsPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #4
0
 public CountryPartHandler(IRepository <CountryPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #5
0
 public FaqWidgetHandler(IRepository <FaqWidgetPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #6
0
        public TaxonomyPartHandler(
            IRepository <TaxonomyPartRecord> repository,
            ITaxonomyService taxonomyService,
            IContentDefinitionManager contentDefinitionManager,
            ILocalizationService localizationService = null)   //Localization feature may not be active
        {
            string previousName = null;

            Filters.Add(StorageFilter.For(repository));
            OnPublished <TaxonomyPart>((context, part) => {
                if (string.IsNullOrWhiteSpace(part.TermTypeName))
                {
                    // is it a new taxonomy ?
                    taxonomyService.CreateTermContentType(part);
                }
                else
                {
                    // update existing fields
                    foreach (var partDefinition in contentDefinitionManager.ListPartDefinitions())
                    {
                        foreach (var field in partDefinition.Fields)
                        {
                            if (field.FieldDefinition.Name == typeof(TaxonomyField).Name)
                            {
                                if (field.Settings.GetModel <TaxonomyFieldSettings>().Taxonomy == previousName)
                                {
                                    //could either be a name change, or we could be publishing a translation
                                    if (localizationService != null)   //Localization feature may not be active
                                    {
                                        var locPart = part.ContentItem.As <LocalizationPart>();
                                        if (locPart != null)
                                        {
                                            var localizedTaxonomies = localizationService
                                                                      .GetLocalizations(part.ContentItem)                    //versions in all cultures
                                                                      .Where(pa => pa.ContentItem.Id != part.ContentItem.Id) //but not the one we are publishing
                                                                      .Select(pa => {
                                                var tax = pa.ContentItem.As <TaxonomyPart>();                                //the TaxonomyPart
                                                return(tax == null ? string.Empty : tax.Name);                               //get its name (with sanity check)
                                            });
                                            if (localizedTaxonomies.Contains(previousName))
                                            {
                                                continue; //this is a new localization, so move along
                                            }
                                        }
                                    }
                                    contentDefinitionManager.AlterPartDefinition(partDefinition.Name,
                                                                                 cfg => cfg.WithField(field.Name,
                                                                                                      builder => builder.WithSetting("TaxonomyFieldSettings.Taxonomy", part.Name)));
                                }
                            }
                        }
                    }
                }
            });

            OnLoading <TaxonomyPart>((context, part) => part.TermsField.Loader(() => taxonomyService.GetTerms(part.Id)));

            OnUpdating <TitlePart>((context, part) => {
                // if altering the title of a taxonomy, save the name
                if (part.As <TaxonomyPart>() != null)
                {
                    previousName = part.Title;
                }
            });
        }
コード例 #7
0
 public BaiduSettingsPartHandler(IRepository <BaiduSettingsPartRecord> repository)
 {
     Filters.Add(new ActivatingFilter <BaiduSettingsPart>("Site"));
     Filters.Add(StorageFilter.For(repository));
     T = NullLocalizer.Instance;
 }
コード例 #8
0
 public UserPartHandler(IRepository <UserPartRecord> repository)
 {
     Filters.Add(new ActivatingFilter <UserPart>("User"));
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #9
0
ファイル: ListViewPartHandler.cs プロジェクト: zaieda/Coevery
 public ListViewPartHandler(IRepository <ListViewPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #10
0
 public KeywordHelperHandler(IRepository <KeywordHelperPartVersionRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #11
0
 public DisqusSettingsPartHandler(IRepository <DisqusSettingsRecord> repository)
 {
     Filters.Add(new ActivatingFilter <DisqusSettingsPart>("Site"));
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #12
0
 public FacebookUserPartHandler(IRepository <FacebookUserPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #13
0
 public ImageProfilePartHandler(IRepository <ImageProfilePartRecord> repository, ISignals signals)
 {
     _signals = signals;
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #14
0
 public UserPwdRecoveryPartHandler(IRepository <UserPwdRecoveryPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #15
0
ファイル: CupHandler.cs プロジェクト: mezait/GoodM8s.TheCup
        public CupHandler(IContentManager contentManager, IRepository <CupPartRecord> repository)
        {
            Filters.Add(StorageFilter.For(repository));

            OnRemoved <CupPart>((context, part) => repository.Delete(part.Record));
        }
コード例 #16
0
 public ScheduledActionTaskPartHandler(IRepository <ScheduledActionTaskRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
     Filters.Add(new ActivatingFilter <ScheduledActionTaskPart>("ScheduledActionTask"));
 }
コード例 #17
0
 public CookieCulturePickerPartHandler(IRepository <CookieCulturePickerPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
     T = NullLocalizer.Instance;
 }
コード例 #18
0
 public FeaturedItemPartHandler(IRepository <FeaturedItemPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #19
0
 public TenantContentPartHandler(IRepository <TenantContentPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #20
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ContactFormHandler"/> class.
 /// </summary>
 /// <param name="repository">The repository.</param>
 public ContactFormHandler(IRepository <ContactFormRecord> repository)
 {
     // Tell this handler to use ContactFormRecord for storage.
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #21
0
 public FidelityUserHandler(IRepository <FidelityUserPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #22
0
 public ImageGalleryHandler(IRepository <ImageGalleryRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #23
0
 public LayerPartHandler(IRepository <LayerPartRecord> layersRepository)
 {
     Filters.Add(StorageFilter.For(layersRepository));
 }
コード例 #24
0
 public BasketPartHandler(IRepository <BasketPartRecord> repository)
 {
     this.Filters.Add(StorageFilter.For(repository));
 }
コード例 #25
0
 public ProjectionPartHandler(IRepository <ProjectionPartRecord> projecRepository)
 {
     Filters.Add(StorageFilter.For(projecRepository));
 }
コード例 #26
0
 public CustomersPartHandler(IRepository <CustomersPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
     Filters.Add(new ActivatingFilter <CustomersPart>("CustomersPartRecord"));
 }
コード例 #27
0
 public ListNewsTypeHandler(IRepository <ListNewsTypeRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
     OnRemoved <ListNewsTypePart>((context, part) => repository.Delete(part.Record));
 }
コード例 #28
0
 public BlogArchivesPartHandler(IRepository <BlogArchivesPartRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }
コード例 #29
0
 public StubLayerPartHandler(IRepository <LayerPartRecord> layersRepository)
 {
     Filters.Add(new ActivatingFilter <LayerPart>("Layer"));
     Filters.Add(new ActivatingFilter <CommonPart>("Layer"));
     Filters.Add(StorageFilter.For(layersRepository));
 }
コード例 #30
0
 public ProductHandler(IRepository <ProductRecord> repository)
 {
     Filters.Add(StorageFilter.For(repository));
 }