Ejemplo n.º 1
0
        public virtual void Process(GetFacetMemberValuesArgs args)
        {
            Assert.ArgumentNotNull(args, "args");
            Assert.ArgumentNotNullOrEmpty(args.FacetName, "args.FacetName");

            var type = ContactFacetHelper.GetContractTypeForFacet(args.FacetName);

            if (type == null ||
                !typeof(IDemandbaseData).IsAssignableFrom(type))
            {
                return;
            }

            var taxonomy = Factory.CreateObject("demandbaseTaxonomy", true) as DemandbaseTaxonomy;

            if (taxonomy == null ||
                (!taxonomy.MemberValues.ContainsKey(args.MemberName)))
            {
                return;
            }

            taxonomy
            .MemberValues[args.MemberName]
            .ForEach(m => args.Values.Add(m.Description, m.Value));
        }
        protected virtual void AddContactFacetMemberValues(string facetName, string memberName, ID parentId)
        {
            var args = new GetFacetMemberValuesArgs(facetName, memberName);

            CorePipeline.Run("getFacetMemberValues", args);
            if (!args.Values.Any())
            {
                return;
            }
            foreach (var pair in args.Values)
            {
                IDTableHelper.GenerateIdForFacetMemberValue(pair.Key, pair.Value, parentId, Sitecore.Strategy.Contacts.DataProviders.TemplateIDs.ContactFacetMemberValueTemplate);
            }
        }
Ejemplo n.º 3
0
        protected virtual void AddChildIDsForContactFacetMemberItem(IDList ids, ItemDefinition itemDefinition, CallContext context)
        {
            var itemId     = itemDefinition.ID;
            var facetName  = IDTableHelper.GetFacetMemberFacetName(itemId);
            var memberName = IDTableHelper.GetFacetMemberName(itemId);
            var args       = new GetFacetMemberValuesArgs(facetName, memberName);

            CorePipeline.Run("getFacetMemberValues", args);
            if (!args.Values.Any())
            {
                return;
            }
            foreach (var pair in args.Values)
            {
                var id = IDTableHelper.GenerateIdForFacetMemberValue(pair.Key, pair.Value, itemId, Sitecore.Strategy.Contacts.DataProviders.TemplateIDs.ContactFacetMemberValueTemplate);
                ids.Add(id);
            }
        }
Ejemplo n.º 4
0
        public virtual void Process(GetFacetMemberValuesArgs args)
        {
            Assert.ArgumentNotNull(args, "args");
            Assert.ArgumentNotNullOrEmpty(args.FacetName, "args.FacetName");
            var type = ContactFacetHelper.GetContractTypeForFacet(args.FacetName);

            if (type == null)
            {
                return;
            }
            if (!typeof(IEmployeeData).IsAssignableFrom(type))
            {
                return;
            }
            if (args.MemberName == "Location")
            {
                args.Values.Add("NA", "North America");
                args.Values.Add("SA", "South America");
                args.Values.Add("EU", "Europe");
                args.Values.Add("APAC", "Asia-Pacific");
            }
        }