Esempio n. 1
0
        public TaxonNameStatusList GetTaxonNameStatuses(IUserContext userContext)
        {
            TaxonNameStatusList list = new TaxonNameStatusList();

            list.Add(new TaxonNameStatus()
            {
                DataContext = new DataContext(userContext), Name = "Borttagen", Id = -1
            });
            list.Add(new TaxonNameStatus()
            {
                DataContext = new DataContext(userContext), Name = "Godkänd namngivining", Id = 0
            });
            list.Add(new TaxonNameStatus()
            {
                DataContext = new DataContext(userContext), Name = "Preliminärt namnförslag", Id = 1
            });
            list.Add(new TaxonNameStatus()
            {
                DataContext = new DataContext(userContext), Name = "Ogiltig namngivning", Id = 2
            });
            list.Add(new TaxonNameStatus()
            {
                DataContext = new DataContext(userContext), Name = "felstavat", Id = 3
            });
            list.Add(new TaxonNameStatus()
            {
                DataContext = new DataContext(userContext), Name = "Obsrek", Id = 4
            });
            return(list);
        }
Esempio n. 2
0
 /// <summary>
 /// Set taxon name status for specified locale.
 /// </summary>
 /// <param name="taxonNameStatus">Taxon name status.</param>
 /// <param name="locale">Locale.</param>
 protected override void SetTaxonNameStatus(TaxonNameStatusList taxonNameStatus,
                                            ILocale locale)
 {
     lock (TaxonNameStatuses)
     {
         TaxonNameStatuses[locale.ISOCode] = taxonNameStatus;
     }
 }
Esempio n. 3
0
        /// <summary>
        /// Get taxon name status for specified locale.
        /// </summary>
        /// <param name="locale">Locale.</param>
        /// <returns>Taxon name status for specified locale.</returns>
        protected virtual TaxonNameStatusList GetTaxonNameStatus(ILocale locale)
        {
            TaxonNameStatusList taxonNameStatus = null;

            if (TaxonNameStatuses.ContainsKey(locale.ISOCode))
            {
                taxonNameStatus = (TaxonNameStatusList)(TaxonNameStatuses[locale.ISOCode]);
            }
            return(taxonNameStatus);
        }
Esempio n. 4
0
        public void InitTaxonNameDetails(TaxonNameDetailsViewModel model, ITaxon taxon)
        {
            model.CategoryList = new List <TaxonDropDownModelHelper>();
            TaxonNameCategoryList nameList = CoreData.TaxonManager.GetTaxonNameCategories(_user);

            foreach (TaxonNameCategory nameCategory in nameList)
            {
                model.CategoryList.Add(new TaxonDropDownModelHelper(nameCategory.Id, nameCategory.Name));
            }
            model.TaxonNameStatusList = new List <TaxonDropDownModelHelper>();
            TaxonNameStatusList nameStatusList = CoreData.TaxonManager.GetTaxonNameStatuses(_user);

            foreach (ITaxonNameStatus nameStatus in nameStatusList.OrderBy(t => t.SortOrder()))
            {
                model.TaxonNameStatusList.Add(new TaxonDropDownModelHelper(nameStatus.Id, nameStatus.Name));
            }
            model.TaxonNameUsageList = new List <TaxonDropDownModelHelper>();
            TaxonNameUsageList nameUsageList = CoreData.TaxonManager.GetTaxonNameUsages(_user);

            foreach (ITaxonNameUsage nameUsage in nameUsageList)
            {
                model.TaxonNameUsageList.Add(new TaxonDropDownModelHelper(nameUsage.Id, nameUsage.Name));
            }
            model.ExistingNames = new List <TaxonNameDetailsViewModel>();
            TaxonNameList taxonNames = taxon.GetTaxonNames(_user);

            for (int i = 0; i < taxonNames.Count; i++)
            {
                ITaxonName taxonName = taxonNames[i];
                model.ExistingNames.Add(TaxonNameDetailsViewModel.Create(_user, taxonName));
            }
            model.ExistingNames = (from name in model.ExistingNames orderby name.CategoryName select name).ToList();
            for (int i = 0; i < model.ExistingNames.Count; i++)
            {
                if (model.ExistingNames[i].Id == model.Id)
                {
                    model.ExistingNamesCurrentIndex = i;
                    break;
                }
            }

            // Check name category if Scentific and recommended it is not possible to change status.
            // Unselcet as recommended first and the it is possible to change name usage
            if (model.IsRecommended && (model.SelectedCategoryId == (Int32)TaxonNameCategoryId.ScientificName))
            {
                model.IsPossibleToChangeUsage = false;
            }
            else
            {
                model.IsPossibleToChangeUsage = true;
            }
        }
Esempio n. 5
0
        /// <summary>
        /// Get taxon name status for specified locale.
        /// </summary>
        /// <param name="locale">Locale.</param>
        /// <returns>Taxon name status for specified locale.</returns>
        protected override TaxonNameStatusList GetTaxonNameStatus(ILocale locale)
        {
            TaxonNameStatusList taxonNameStatus = null;

            lock (TaxonNameStatuses)
            {
                if (TaxonNameStatuses.ContainsKey(locale.ISOCode))
                {
                    taxonNameStatus = (TaxonNameStatusList)(TaxonNameStatuses[locale.ISOCode]);
                }
            }
            return(taxonNameStatus);
        }
Esempio n. 6
0
 /// <summary>
 /// Set taxon name status for specified locale.
 /// </summary>
 /// <param name="taxonNameStatus">Taxon name status.</param>
 /// <param name="locale">Locale.</param>
 protected virtual void SetTaxonNameStatus(TaxonNameStatusList taxonNameStatus,
                                           ILocale locale)
 {
     TaxonNameStatuses[locale.ISOCode] = taxonNameStatus;
 }