コード例 #1
0
        private string GetKeyName(ITaxonomy_Item item)
        {
            IGlassBase parent = item._Parent;

            while (!parent._TemplateId.Equals(_dependencies.ItemReferences.FolderTemplate) || parent._Name.ToLower().Equals("content"))
            {
                parent = parent._Parent;
            }

            if (parent._Id.Equals(_dependencies.ItemReferences.DeviceAreasTaxonomyFolder))
            {
                return("deviceareas");
            }
            else if (parent._Id.Equals(_dependencies.ItemReferences.TherapyAreasTaxonomyFolder))
            {
                return("areas");
            }
            else if (parent._Id.Equals(_dependencies.ItemReferences.SubjectsTaxonomyFolder))
            {
                return("subjects");
            }
            else if (parent._Id.Equals(_dependencies.ItemReferences.RegionsTaxonomyFolder))
            {
                return("regions");
            }
            else
            {
                return("value");
            }
        }
コード例 #2
0
 private TaxonomyLinkViewModel ConvertToTaxonomyLink(ITaxonomy_Item item, IStaff_Item glassItem, string type)
 {
     return(new TaxonomyLinkViewModel
     {
         LinkText = item.Item_Name,
         LinkUrl = $"/search#?{GetAuthorNameParameter(glassItem)}&{type}={HttpUtility.UrlEncode(item.Item_Name)}"
     });
 }
コード例 #3
0
 private string getItemNameWithParent(ITaxonomy_Item item, Guid taxonomyFolder)
 {
     if (item._Parent._Id.Equals(taxonomyFolder))
     {
         return(item.Item_Name);
     }
     else
     {
         return(getItemNameWithParent(item._Parent as ITaxonomy_Item, taxonomyFolder) + @"\" + item.Item_Name);
     }
 }
コード例 #4
0
        //ISW 338 Serving ads based on section taxonomy
        public string GetTaxonomyParentFromItem(ITaxonomy_Item taxonomy)
        {
            List <ITaxonomy_Item> taxonomyItems = new List <ITaxonomy_Item>();

            taxonomyItems.Add(taxonomy);
            var parent = taxonomy._Parent;

            while (parent is ITaxonomy_Item)
            {
                var item = parent as ITaxonomy_Item;

                taxonomyItems.Add(item);
                parent = item._Parent;
            }

            if ((parent is IFolder))    //Will add Or conditions after merged with R2,R3 Release (parent is IIndustries_Folder)
            {
                return(parent._Name);
            }
            else
            {
                return(string.Empty);
            }
        }
コード例 #5
0
        private Tuple <IFolder, Guid, IEnumerable <ITaxonomy_Item> > GetTaxonomyHierarchy(ITaxonomy_Item taxonomy)
        {
            List <ITaxonomy_Item> taxonomyItems = new List <ITaxonomy_Item>();

            taxonomyItems.Add(taxonomy);
            var parent = taxonomy._Parent;

            while (parent is ITaxonomy_Item)
            {
                var item = parent as ITaxonomy_Item;

                taxonomyItems.Add(item);
                parent = item._Parent;
            }

            if (!(parent is IFolder))
            {
                throw new InvalidCastException("Not the correct data structure");
            }
            taxonomyItems.Reverse();

            return(new Tuple <IFolder, Guid, IEnumerable <ITaxonomy_Item> >(parent as IFolder, taxonomy._Parent._Id, taxonomyItems));
        }