예제 #1
0
        private void buttonCreate_Click(object sender, EventArgs e)
        {
            DialogResult result = DialogResult.OK;

            TaxonName = textBox1.Text.Trim();
            if (!CreateUnnamed && CheckNameUsage)
            {
                if (TaxonUtils.Root != null)
                {
                    TaxonTreeNode otherNode = TaxonUtils.Root.FindTaxonByName(TaxonName.ToLower());
                    if (otherNode != null)
                    {
                        string message = "Name is already used, Create anyway ?";
                        message += "\n\nClick no to change name, Cancel to abort creation";
                        result   = MessageBox.Show(message, "Warning !", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
                        if (result == DialogResult.No)
                        {
                            return;
                        }

                        if (result == DialogResult.Yes)
                        {
                            result = DialogResult.OK;
                        }
                    }
                }
            }

            DialogResult = result;
            Close();
        }
예제 #2
0
 private TaxonName GetTaxonName(Boolean refresh)
 {
     if (_taxoName.IsNull() || refresh)
     {
         _taxoName = TaxonManagerTest.GetTaxonName();
     }
     return(_taxoName);
 }
예제 #3
0
        public void IsDummyTaxonName()
        {
            TaxonPrintObs taxon;

            taxon = (TaxonPrintObs)TaxonManager.GetTaxon(BEAR_TAXON_ID, ArtDatabanken.Data.WebService.TaxonInformationType.PrintObs);
            Assert.IsFalse(TaxonName.IsDummyTaxonName(taxon.CommonName));
            taxon = (TaxonPrintObs)TaxonManager.GetTaxon(LEPTOCHITON_ALVEOLUS_TAXON_ID, ArtDatabanken.Data.WebService.TaxonInformationType.PrintObs);
            Assert.IsTrue(TaxonName.IsDummyTaxonName(taxon.OrderName));
        }
예제 #4
0
        /// <summary>
        /// Creates a taxon name
        /// </summary>
        /// <returns></returns>
        public ITaxonName GetReferenceTaxonName(IUserContext userContext, int taxonId, int taxonNameId)
        {
            ITaxonName refTaxonName = new TaxonName();

            DateTime validFromDate = new DateTime(DateTime.Now.Ticks);
            DateTime validToDate   = new DateTime(2022, 1, 30);

            refTaxonName.DataContext   = new DataContext(userContext);
            refTaxonName.Taxon         = GetReferenceTaxon(userContext, taxonId);
            refTaxonName.Description   = "test description";
            refTaxonName.Name          = "TestTaxonName" + taxonNameId;
            refTaxonName.Category      = new TaxonNameCategory();
            refTaxonName.Category.Id   = 1;
            refTaxonName.Category.Type = new TaxonNameCategoryType()
            {
                Id = (Int32)TaxonNameCategoryTypeId.ScientificName
            };
            refTaxonName.Status                    = new TaxonNameStatus();
            refTaxonName.Status.DataContext        = new DataContext(userContext);
            refTaxonName.Status.Id                 = 1;
            refTaxonName.IsOkForSpeciesObservation = true;
            refTaxonName.IsPublished               = false;
            refTaxonName.IsRecommended             = true;
            refTaxonName.IsUnique                  = false;
            refTaxonName.CreatedBy                 = userContext.User.Id;
            refTaxonName.ModifiedByPerson          = "Test PersonName";
            refTaxonName.ValidFromDate             = validFromDate;
            refTaxonName.ValidToDate               = validToDate;
            refTaxonName.SetChangedInRevisionEvent(new TaxonRevisionEvent());
            refTaxonName.GetChangedInRevisionEvent(userContext).Id = 1;
            refTaxonName.SetReferences(new List <IReferenceRelation>());
            refTaxonName.Id     = taxonNameId;
            refTaxonName.Author = @"Jag är författaren";



            return(refTaxonName);
        }
        public ActionResult Add(TaxonNameDetailsViewModel model)
        {
            ITaxon         taxon         = CoreData.TaxonManager.GetTaxon(GetCurrentUser(), model.TaxonId);
            ITaxonName     taxonName     = new TaxonName();
            ITaxonRevision taxonRevision = this.TaxonRevision;

            _taxonNameViewManager.InitTaxonNameDetails(model, taxon);

            // Only Nomenclature: Correct, Provisional, PreliminarySuggestion or Informal names may have usage: Accepted.
            if (model.SelectedTaxonNameUsageId == (int)TaxonNameUsageId.Accepted &&
                !(model.SelectedTaxonNameStatusId == (int)TaxonNameStatusId.ApprovedNaming ||
                  model.SelectedTaxonNameStatusId == (int)TaxonNameStatusId.Provisional ||
                  model.SelectedTaxonNameStatusId == (int)TaxonNameStatusId.PreliminarySuggestion ||
                  model.SelectedTaxonNameStatusId == (int)TaxonNameStatusId.Informal))
            {
                ModelState.AddModelError("", Resources.DyntaxaResource.TaxonNameAddEditIncorrectNomencalture);
            }

            if (!ModelState.IsValid)
            {
                return(View("Add", model));
            }
            IUserContext loggedInUser = GetLoggedInUser();

            // Creation of taxon name
            using (ITransaction transaction = loggedInUser.StartTransaction())
            {
                taxonName = _taxonNameViewManager.AddTaxonName(model, TaxonIdentifier.Id.Value, this.TaxonRevision);
                // Must set default reference, set from Revision..
                ReferenceRelationList referencesToAdd = ReferenceHelper.GetDefaultReferences(GetCurrentUser(), taxonName, taxonRevision, null);
                var referencesToRemove = new ReferenceRelationList();
                CoreData.ReferenceManager.CreateDeleteReferenceRelations(GetCurrentUser(), referencesToAdd, referencesToRemove);
                transaction.Commit();
            }
            return(RedirectToAction("Edit", new { @taxonId = model.TaxonId, @nameId = taxonName.Version }));
        }
예제 #6
0
 public TaxonNameTest()
 {
     _taxoName = null;
 }