FactClapPrefixes = ""; NameFactClapPrefixes = ""; if (IsDefined('session.factAnchor') And session.factAnchor neq '') { jsOnLoad="location.hash = '#session.factAnchor#';"; session.factAnchor = ''; } else jsOnLoad="location.hash = 'top';"; Session.backFromDistribution="TaxForm.cfm"; if (BasOrRS.BasAuthorteamFk eq "" or BasOrRS.BasAuthorteamFk eq 0) hasBasAuthorTeam = false; else hasBasAuthorTeam = true; if (OnePT.RankId lt session.MinimumEditableRank) isRankDisallowsEdit = true; else isRankDisallowsEdit = false; if (Nomen.IsEditable) isNameEditable = true; else isNameEditable = false; if (session.isEditSharedObjectsAllowed OR (isNameEditable AND NOT isRankDisallowsEdit)) isEditAllowed = true; else isEditAllowed = false; // status constants _ACCEPTED = 1; _SYNONYM = 2; // rank constants _GENUS = 40; _SPECIES = 60; _TAX_INFRAGEN = 98; // relnamequalifier constants _IS_BASIONYM_FOR = 1; _IS_REPLACED_SYNONYM_FOR = 3; _IS_TYPE_OF = 6; _HAS_SAME_TYPE_AS = 18; _IS_LECTOTYPE_OF = 61; _TYPE_NOT_DESIGNATED = 62; // fact category constants _DESCRIPTION = 1; if (OnePt.RankId lt _SPECIES) isRankAboveSpecies = true; else isRankAboveSpecies = false; displayFacts = false; displayNameFacts = false; displayExtensions = false; displayOtherHomoSyn = false; ClapClass = StructNew(); Basionym = StructNew(); ReplacedSynonym = StructNew(); Basionym.Basionym = ArrayNew(1); ReplacedSynonym.ReplacedSynonym = ArrayNew(1); if (BasionymReplacedSynonym.RecordCount gt 0) { dummy = QueryAddColumn(BasionymReplacedSynonym, "UrlEdit", ArrayNew(1)); dummy = QueryAddColumn(BasionymReplacedSynonym, "UrlDelete", ArrayNew(1)); } // basionyms if (Len(Trim(BasionymReplacedSynonym.FullNameCache)) eq 0) BasionymReplacedSynonym.FullNameCache = "??"; BRRecord = StructNew(); BRRecord.FullNameCache = BasionymReplacedSynonym.FullNameCache; if (isEditAllowed) { BRRecord.UrlEdit = "#Application.EditorHome#Names/RelName.cfm?Name2=#URL.Name#&Name=#BasionymReplacedSynonym.NameFk1#&Ref=#URL.Ref#"; BRRecord.UrlDelete = "#Application.EditorHome#Names/DelBasHomHybParent.cfm?Name2=#url.name#&Name=#BasionymReplacedSynonym.NameFk1#&Ref=#URL.Ref#"; } if (BasionymReplacedSynonym.RelNameQualifierFk eq _IS_BASIONYM_FOR) ArrayAppend(Basionym.Basionym, BRRecord); else ArrayAppend(ReplacedSynonym.ReplacedSynonym, BRRecord); if (ArrayLen(ReplacedSynonym.ReplacedSynonym) gt 0) // if replaced synonym exists, user can't add basionym Basionym.Message = "An accepted name can only have either one basionym or one replaced synonym."; else if (ArrayLen(Basionym.Basionym) eq 0) Basionym.AddURL = "#Application.EditorHome#Names/SelectBOrH.cfm?Name=#URL.Name#&Ref=#URL.Ref#&TempRank=#OnePT.RankId#&Relqualifier=#_IS_BASIONYM_FOR#"; if (ArrayLen(Basionym.Basionym) gt 0) // if basionym exists, user can't add replaced synonym ReplacedSynonym.Message = "An accepted name can only have either one basionym or one replaced synonym."; else if (hasBasAuthorTeam) ReplacedSynonym.Message = "The accepted name has a basionym author associated with it; therefore, it can have a basionym, but not a replaced synonym."; else if (ArrayLen(ReplacedSynonym.ReplacedSynonym) eq 0) ReplacedSynonym.AddURL = "#Application.EditorHome#Names/SelectBOrH.cfm?Name=#URL.Name#&Ref=#URL.Ref#&TempRank=#OnePT.RankId#&Relqualifier=#_IS_REPLACED_SYNONYM_FOR#"; SELECT COUNT(*) Count FROM RelNameQualifier WHERE RelNameQualifierId = #_HAS_SAME_TYPE_AS# SELECT RelNameId, RelName.NameFk1, RelName.NameFk2, Name1.FullNameCache AS FullName1, Name2.FullNameCache AS FullName2 FROM RelName, Name Name1, Name Name2 WHERE NameFk1 = Name1.NameId AND NameFk2 = Name2.NameId AND RelNameQualifierFk = #_HAS_SAME_TYPE_AS# AND NameFk2 = #URL.Name# // show this category displayOtherHomoSyn = true; OtherHomoSyn_Message = ""; OtherHomoSyn_AddURL = ""; // if there are no homo syn relations, and no basionym or replaced synonym, show a link to add one if (OtherHomoSyn.RecordCount eq 0) { if (BasionymReplacedSynonym.RecordCount neq 0) { OtherHomoSyn_Message = "Names with a basionym or replaced synonym can not be given this relation."; } else { OtherHomoSyn_AddURL = "#Application.EditorHome#Names/SelectOtherHomoSyn.cfm?Name=#URL.Name#&Ref=#URL.Ref#&TempRank=#OnePT.RankId#&Relqualifier=#_HAS_SAME_TYPE_AS#"; } } // add columns for edit / delete links dummy = QueryAddColumn(OtherHomoSyn, "DisplayName", ArrayNew(1)); dummy = QueryAddColumn(OtherHomoSyn, "UrlEditName", ArrayNew(1)); dummy = QueryAddColumn(OtherHomoSyn, "UrlDeleteName", ArrayNew(1)); for (i = 1; i lte OtherHomoSyn.RecordCount; i = (i + 1)){ /* if (OtherHomoSyn["NameFk1"][i] eq URL.Name) { // display NameFk2 OtherHomoSyn["DisplayName"][i] = OtherHomoSyn["FullName2"][i]; OtherHomoSyn["UrlEditName"][i] = "#Application.EditorHome#TaxForm.cfm?name=#OtherHomoSyn["NameFk2"][i]#&ref=#URL.Ref#"; } else { // display NameFk1 OtherHomoSyn["DisplayName"][i] = OtherHomoSyn["FullName1"][i]; OtherHomoSyn["UrlEditName"][i] = "#Application.EditorHome#TaxForm.cfm?name=#OtherHomoSyn["NameFk1"][i]#&ref=#URL.Ref#"; } */ OtherHomoSyn["DisplayName"][i] = OtherHomoSyn["FullName1"][i]; OtherHomoSyn["UrlEditName"][i] = "#Application.EditorHome#TaxForm.cfm?name=#OtherHomoSyn["NameFk1"][i]#&ref=#URL.Ref#"; OtherHomoSyn["UrlDeleteName"][i] = "#Application.EditorHome#Names/DelOtherHomoSyn.cfm?RelNameId=#OtherHomoSyn["RelNameId"][i]#"; } SELECT NameFactCategoryId, NameFactCategory, MaxFactNumber, NULL AS HeaderText, NULL AS AddNameFactText, NULL AS AddNameFactURL, NULL AS NameFactClapperPrefix, NULL AS NameFactClapper, NULL AS NameFactClappee, NULL AS LinkId, NULL AS ShowAddNameFact FROM NameFactCategory WHERE MaxFactNumber > 0 // if there is 1+ displayed category, then show name facts displayNameFacts = true; NameFactCategories.HeaderText = UCase(Left(NameFactCategories.NameFactCategory,1)) & Right(NameFactCategories.NameFactCategory,Len(NameFactCategories.NameFactCategory) - 1); NameFactCategories.AddNameFactText = "add " & LCase(NameFactCategories.NameFactCategory); NameFactCategories.AddNameFactURL = "#Application.EditorHome#NameFacts/EditNameFact.cfm?Name=#URL.Name#&Ref=#URL.Ref#&NameFactCategoryId=#NameFactCategories.NameFactCategoryId#"; NameFactCategories.NameFactClapperPrefix = "namefactcat" & NameFactCategories.NameFactCategoryId; NameFactCategories.NameFactClapper = NameFactCategories.NameFactClapperPrefix & "clapper"; NameFactCategories.NameFactClappee = NameFactCategories.NameFactClapperPrefix & "clappee"; NameFactCategories.LinkId = "namefactcategory#NameFactCategories.NameFactCategoryId#"; SELECT NameFactId, NameFact, NULL AS UrlDelete, NULL AS UrlEdit, NULL AS LinkId FROM dbo.NameFact WHERE PTNameFk = #URL.Name# AND NameFactCategoryFk = #NameFactCategories.NameFactCategoryId# if (Len(CategoryNameFacts.NameFact) gt 85) CategoryNameFacts.NameFact = Left(CategoryNameFacts.NameFact, 85) & "..."; if (Len(CategoryNameFacts.NameFact) eq 0) CategoryNameFacts.NameFact = "??"; CategoryNameFacts.UrlDelete = "#Application.EditorHome#NameFacts/DelNameFact.cfm?Name=#URL.Name#&Ref=#URL.Ref#&NameFactId=#CategoryNameFacts.NameFactId#"; CategoryNameFacts.UrlEdit = "#Application.EditorHome#NameFacts/EditNameFact.cfm?Name=#URL.Name#&Ref=#URL.Ref#&NameFactCategoryId=#NameFactCategories.NameFactCategoryId#&NameFactId=#CategoryNameFacts.NameFactId#"; CategoryNameFacts.LinkId = "namefact#CategoryNameFacts.NameFactId#"; NameFactCategories.NameFacts = CategoryNameFacts; // associate facts with their fact category if (NameFactCategories.MaxFactNumber lte CategoryNameFacts.RecordCount) NameFactCategories.ShowAddNameFact = false; else NameFactCategories.ShowAddNameFact = true; if ((CategoryNameFacts.RecordCount gt 1 And NOT NameFactCategories.ShowAddNameFact) // when 2+ rows, show clapper Or (CategoryNameFacts.RecordCount gt 0 And NameFactCategories.ShowAddNameFact)) { NameFactClapPrefixes = NameFactClapPrefixes & ",'" & NameFactCategories.NameFactClapperPrefix & "'"; ClapClass[NameFactCategories.NameFactClapperPrefix] = "clapper"; } else ClapClass[NameFactCategories.NameFactClapperPrefix] = "noclapper"; SynonymsOutput = StructNew(); if (not isRankDisallowsEdit) SynonymsOutput.AddURL = "#Application.EditorHome#Names/SelectSyOrIn.cfm?Name=#URL.Name#&Ref=#URL.Ref#&TempRank=#OnePT.RankId#&TempStatus=2"; SynonymsOutput.Synonyms = ArrayNew(1); lastRIdentifier = -1; if (Synonyms.DoubtfulFlag eq 'i') continue; // skip this record if (len(Synonyms.MarkerImage) gt 0 and Synonyms.ShownInTaxForm eq 1 and Synonyms.ActiveFlag eq 1) ImageHTML = ""; else ImageHTML = ""; if (Synonyms.RIdentifier eq lastRIdentifier) { if (ImageHTML neq "") Synonym.ImageHTML = Synonym.ImageHTML & ImageHTML; } else { // if synonym exists, add it to output if (IsDefined("Synonym") and Not StructIsEmpty(Synonym)) { ArrayAppend(SynonymsOutput.Synonyms,StructCopy(Synonym)); StructClear(Synonym); } Synonym = StructNew(); Synonym.ImageHTML = ImageHTML; if (not isRankDisallowsEdit) { // user can edit or delete Synonym.UrlEdit = "#Application.EditorHome#TaxForm.cfm?name=#Synonyms.PTNameFk#&ref=#Synonyms.PTRefFk#&Relqualifier=#Synonyms.RelQualifierFk#"; Synonym.UrlDelete = "#Application.EditorHome#Names/DelSynonym.cfm?Name2=#URL.Name#&Name=#Synonyms.PTNameFk#&Ref=#URL.Ref#&TempStatus=#Synonyms.StatusId#"; } if (len(Synonyms.FullnameCache) eq 0) Synonym.Text = "??"; else Synonym.Text = Synonyms.FullnameCache; BracketText = ""; if (Synonyms.RelQualifierFk neq _SYNONYM) BracketText = Synonyms.RelStatus; if (Synonyms.DoubtfulFlag eq 'd') { if (BracketText neq "") BracketText = "doubtful #BracketText#"; else BracketText = "doubtful"; } if (BracketText neq "") Synonym.Text = "#Synonym.Text# [#BracketText#]"; lastRIdentifier = Synonyms.RIdentifier; } // put last synonym in structure if (IsDefined("Synonym") and Not StructIsEmpty(Synonym)) ArrayAppend(SynonymsOutput.Synonyms,StructCopy(Synonym)); MisappliedNamesAddURL = "#Application.EditorHome#Names/SelectNameAndR.cfm?Name=#URL.Name#&Ref=#URL.Ref#&Name2=-99&Ref2=-99&MRHead=0"; if (MisappliedNames.RecordCount gt 0) { dummy = QueryAddColumn(MisappliedNames, "Sec", ArrayNew(1)); dummy = QueryAddColumn(MisappliedNames, "UrlEditName", ArrayNew(1)); dummy = QueryAddColumn(MisappliedNames, "UrlDeleteName", ArrayNew(1)); dummy = QueryAddColumn(MisappliedNames, "UrlEditSec", ArrayNew(1)); } if (Len(MisappliedNames.RefCache) lt 50) MisappliedNames.Sec = MisappliedNames.RefCache; else MisappliedNames.Sec = MisappliedNames.First50 & "..."; if (Len(Trim(MisappliedNames.FullnameCache)) eq 0) MisappliedNames.FullnameCache = "??"; if (Not isRankDisallowsEdit) { MisappliedNames.UrlEditName = "#Application.EditorHome#Names/RelMisapplied.cfm?Name=#URL.Name#&Ref=#URL.Ref#&Name1=#MisappliedNames.PTNameFk1#&Ref1=#MisappliedNames.RefId#&temprank=#MisappliedNames.RankFk#"; MisappliedNames.UrlDeleteName = "#Application.EditorHome#Names/DelMisappliedName.cfm?Name=#URL.Name#&Ref=#URL.Ref#&Name1=#MisappliedNames.PTNameFk1#&Ref1=#MisappliedNames.PTRefFk1#"; } MisappliedNames.UrlEditSec = "#Application.EditorHome#Bib/ShowMisappliedRef.cfm?Name=#URL.Name#&Ref=#URL.Ref#&Name1=#MisappliedNames.PTNameFk1#&Ref1=#MisappliedNames.RefId#"; dummy = QueryAddColumn(FactCategories, "DisplayCategory", ArrayNew(1)); dummy = QueryAddColumn(FactCategories, "HeaderText", ArrayNew(1)); dummy = QueryAddColumn(FactCategories, "AddFactText", ArrayNew(1)); dummy = QueryAddColumn(FactCategories, "AddFactURL", ArrayNew(1)); dummy = QueryAddColumn(FactCategories, "LinkId", ArrayNew(1)); dummy = QueryAddColumn(FactCategories, "FactClapperPrefix", ArrayNew(1)); dummy = QueryAddColumn(FactCategories, "FactClapper", ArrayNew(1)); dummy = QueryAddColumn(FactCategories, "FactClappee", ArrayNew(1)); dummy = QueryAddColumn(FactCategories, "Facts", ArrayNew(1)); dummy = QueryAddColumn(FactCategories, "ShowAddFact", ArrayNew(1)); for (x = 1; x lte FactCategories.RecordCount; x=x+1) { FactCategoryId = FactCategories.FactCategoryId[x]; MaxFactNumber = FactCategories.MaxFactNumber[x]; if (FactCategories.RankRestrictionFk[x] neq "") RankRestriction = FactCategories.RankRestrictionFk[x]; else { if (FactCategoryID eq _DESCRIPTION) RankRestriction = _GENUS; // description facts only for genera and below else RankRestriction = _SPECIES; // other facts for species and below } FactCategories.DisplayCategory[x] = false; if (OnePT.RankId gte RankRestriction and FactCategories.MaxFactNumber[x] gt 0) { // if there is 1+ displayed category, then show facts displayFacts = true; FactCategories.DisplayCategory[x] = true; FactCategory = FactCategories.FactCategory[x]; FactCategories.HeaderText[x] = UCase(Left(FactCategory,1)) & Right(FactCategory,Len(FactCategory) - 1); FactCategories.AddFactText[x] = "add " & LCase(FactCategories.FactCategory[x]); FactCategories.AddFactURL[x] = "#Application.EditorHome#Facts/AddFact.cfm?Name=#URL.Name#&Ref=#URL.Ref#&FactCategory=#FactCategories.FactCategoryId[x]#&TempRefCat=1"; FactCategories.LinkId = "factcategory#FactCategories.FactCategoryId#"; FactCategories.FactClapperPrefix[x] = "factcat" & FactCategories.FactCategoryId[x]; FactCategories.FactClapper[x] = FactCategories.FactClapperPrefix[x] & "clapper"; FactCategories.FactClappee[x] = FactCategories.FactClapperPrefix[x] & "clappee"; FactCategories.Facts = ArrayNew(1); } } if (CategoryFacts.RecordCount gt 0) { dummy = QueryAddColumn(CategoryFacts, "UrlDelete", ArrayNew(1)); dummy = QueryAddColumn(CategoryFacts, "UrlEdit", ArrayNew(1)); dummy = QueryAddColumn(CategoryFacts, "LinkId", ArrayNew(1)); } if (Len(CategoryFacts.Fact) eq 85) CategoryFacts.Fact = CategoryFacts.Fact & "..."; if (Len(CategoryFacts.Fact) eq 0) CategoryFacts.Fact = "??"; if (FactCit.RefCategoryId gt 0) TempRefCat = FactCit.RefCategoryId; else TempRefCat = 1; CategoryFacts.UrlDelete = "#Application.EditorHome#Facts/DelFact.cfm?Name=#URL.Name#&Ref=#URL.Ref#&FactCategory=#CategoryFacts.FactCategoryFk#&TempRefCat=#TempRefCat#&FactId=#CategoryFacts.FactId#"; CategoryFacts.UrlEdit = "#Application.EditorHome#Facts/EditFact.cfm?Name=#URL.Name#&Ref=#URL.Ref#&FactCategory=#CategoryFacts.FactCategoryFk#&TempRefCat=#TempRefCat#&FactId=#CategoryFacts.FactId#"; CategoryFacts.LinkId = "fact#CategoryFacts.FactId#"; FactCategories.Facts = CategoryFacts; // associate facts with their fact category if (FactCategories.MaxFactNumber lte CategoryFacts.RecordCount) FactCategories.ShowAddFact = false; else FactCategories.ShowAddFact = true; if ((CategoryFacts.RecordCount gt 1 And NOT FactCategories.ShowAddFact) // when 2+ rows, show clapper Or (CategoryFacts.RecordCount gt 0 And FactCategories.ShowAddFact)) { FactClapPrefixes = FactClapPrefixes & ",'" & FactCategories.FactClapperPrefix & "'"; ClapClass[FactCategories.FactClapperPrefix] = "clapper"; } else ClapClass[FactCategories.FactClapperPrefix] = "noclapper"; SELECT FullNameCache, NameFk1, RelNameQualifierFk, RelNameId FROM RelName INNER JOIN Name ON RelName.NameFk1 = Name.NameId WHERE RelName.RelNameQualifierFk IN (#_IS_TYPE_OF#, #_IS_LECTOTYPE_OF#) AND RelName.NameFk2 = #URL.Name# SELECT * FROM RelName WHERE RelNameQualifierFk = #_TYPE_NOT_DESIGNATED# AND NameFk1 = #URL.Name# AND NameFk2 = #URL.Name# if (Type.RecordCount eq 0) { UrlAddType = "#Application.EditorHome#Names/SelectBOrH.cfm?Name=#URL.Name#&Ref=#URL.Ref#&TempRank=#_SPECIES#&Relqualifier=#_IS_TYPE_OF#"; if (TypeNotDesignated.RecordCount neq 0) { jsOnLoad = jsOnLoad & "setnotdesignated();"; } } else { dummy = QueryAddColumn(Type, "UrlDelete", ArrayNew(1)); dummy = QueryAddColumn(Type, "UrlEdit", ArrayNew(1)); for (x = 1; x lte Type.RecordCount; x=x+1) { if (Len(Trim(Type.FullNameCache[x])) eq 0) Type.FullNameCache[x] = "??"; if (Type.RelNameQualifierFk[x] eq _IS_LECTOTYPE_OF) Type.FullNameCache[x] = Type.FullNameCache[x] & " (lectotype)"; Type.UrlEdit[x] = "#Application.EditorHome#Names/RelName.cfm?Name2=#URL.Name#&Name=#Type.NameFk1[x]#&Ref=#URL.Ref#&RelNameId=#Type.RelNameId#"; Type.UrlDelete[x] = "#Application.EditorHome#Names/DelBasHomHybParent.cfm?Name2=#url.name#&Name=#Type.NameFk1[x]#&Ref=#URL.Ref#"; } } SELECT TypeDesignationId, Status, TypePhrase, TypeCache FROM TypeDesignation LEFT OUTER JOIN TypeStatus ON TypeDesignation.TypeStatusFk = TypeStatus.TypeStatusId WHERE NameFk = #URL.Name# UrlAddTypeDesignation = "#Application.EditorHome#Types/EditTypeDesignation.cfm?Name=#URL.Name#&Ref=#URL.Ref#&TempRank=#OnePT.RankId#&Relqualifier=#_IS_TYPE_OF#"; if (TypeDesignation.RecordCount gt 0) { dummy = QueryAddColumn(TypeDesignation, "UrlDelete", ArrayNew(1)); dummy = QueryAddColumn(TypeDesignation, "UrlEdit", ArrayNew(1)); for (x = 1; x lte TypeDesignation.RecordCount; x=x+1) { // temporary until type cache trigger is implemented if (Len(TypeDesignation.Status[x]) eq 0) TypeDesignation.TypeCache[x] = "status unknown"; else TypeDesignation.TypeCache[x] = TypeDesignation.Status[x]; if (Len(Trim(TypeDesignation.TypePhrase[x])) eq 0) TypeDesignation.TypePhrase[x] = "??"; TypeDesignation.TypeCache[x] = TypeDesignation.TypeCache[x] & ", " & TypeDesignation.TypePhrase[x]; TypeDesignation.UrlEdit[x] = "#Application.EditorHome#Types/EditTypeDesignation.cfm?Name=#url.name#&Ref=#URL.Ref#&TypeDesignationId=#TypeDesignation.TypeDesignationId[x]#"; TypeDesignation.UrlDelete[x] = "#Application.EditorHome#Types/DelTypeDesignation.cfm?Name=#url.name#&Ref=#URL.Ref#&TypeDesignationId=#TypeDesignation.TypeDesignationId[x]#"; } } dummy = QueryAddColumn(TaxFormExtensions, "DisplayExtension", ArrayNew(1)); dummy = QueryAddColumn(TaxFormExtensions, "EditURL", ArrayNew(1)); dummy = QueryAddColumn(ExternalExtensions, "DisplayExtension", ArrayNew(1)); dummy = QueryAddColumn(ExternalExtensions, "EditURL", ArrayNew(1)); if (TaxFormExtensions.OnlyForAccepted eq 1 and OnePt.StatusId neq 1) TaxFormExtensions.DisplayExtension = false; else { displayExtensions = true; TaxFormExtensions.DisplayExtension = true; if (not isRankDisallowsEdit) TaxFormExtensions.EditURL = "#Application.EditorHome#Extensions/#TaxFormExtensions.ExtensionTarget#?Name=#URL.Name#&Ref=#URL.Ref#"; } if (ExternalExtensions.OnlyForAccepted eq 1 and OnePt.StatusId neq 1) ExternalExtensions.DisplayExtension = false; else { displayExtensions = true; ExternalExtensions.DisplayExtension = true; if (not isRankDisallowsEdit) ExternalExtensions.EditURL = "#ExternalExtensions.ExtensionTarget#?Name=#URL.Name#&Ref=#URL.Ref#"; } // Categories with 1+ entries get clappers ClapPrefixes = "'nomsection','taxsection'"; if (displayFacts) ClapPrefixes = ClapPrefixes & ",'factsection'"; if (displayNameFacts) ClapPrefixes = ClapPrefixes & ",'namefactsection'"; if (displayExtensions) ClapPrefixes = ClapPrefixes & ",'extensions'"; if (#OnePT.StatusId# eq 1) { // Higher taxa if (#HigherTaxa.RecordCount# gt 2) { // current ptaxon returned w/ recordset, if only one additional higher taxon, no clapper ClapPrefixes = ClapPrefixes & ",'tax'"; ClapClass["tax"] = "clapper"; } else ClapClass["tax"] = "noclapper"; // Synonyms if (#ArrayLen(SynonymsOutput.Synonyms)# gt 0) { ClapPrefixes = ClapPrefixes & ",'syn'"; ClapClass["syn"] = "clapper"; } else ClapClass["syn"] = "noclapper"; // Misapplied names if (#MisappliedNames.RecordCount# gt 0) { ClapPrefixes = ClapPrefixes & ",'ma'"; ClapClass["ma"] = "clapper"; } else ClapClass["ma"] = "noclapper"; // Concept relations if (#ConceptRelation.RecordCount# gt 0) { ClapPrefixes = ClapPrefixes & ",'concept'"; ClapClass["concept"] = "clapper"; } else ClapClass["concept"] = "noclapper"; if (OnePt.RankId lt session.MaxInclusionRank) { // Included taxa if (#IncludedTaxa.RecordCount# gt 0) { ClapPrefixes = ClapPrefixes & ",'inctax'"; ClapClass["inc"] = "clapper"; } else ClapClass["inc"] = "noclapper"; } } // Homonyms if (#Homonyms.RecordCount# gt 0) { ClapPrefixes = ClapPrefixes & ",'homo'"; ClapClass["homo"] = "clapper"; } else ClapClass["homo"] = "noclapper"; // Orthographic variants if (#OrthVariants.RecordCount# gt 0) { ClapPrefixes = ClapPrefixes & ",'ov'"; ClapClass["ov"] = "clapper"; } else ClapClass["ov"] = "noclapper"; // fact category clappers calculated above ClapPrefixes = ClapPrefixes & NameFactClapPrefixes; if (OnePT.StatusId eq 1) ClapPrefixes = ClapPrefixes & FactClapPrefixes; // chop off leading comma if (Left(ClapPrefixes,1) eq ",") ClapPrefixes = Right(ClapPrefixes,Len(ClapPrefixes)-1); "> "> isFirstRow = true; // put FactCategories in temp vars - CF goes a bit haywire when it tries to access them directly CategoryNameFacts = NameFactCategories.NameFacts; ShowAddNameFact = NameFactCategories.ShowAddNameFact; NameFactClappee = NameFactCategories.NameFactClappee; "> "> "> "> "> "> isFirstRow = true; // put FactCategories in temp vars - CF goes a bit haywire when it tries to access them directly CategoryFacts = FactCategories.Facts; ShowAddFact = FactCategories.ShowAddFact; FactClappee = FactCategories.FactClappee;
Taxonym:
group view without synonymy ...
including synonymy for download
#OnePT.FullNameCache# sec. #OneRef.RefCache#
(PT-ID = #OnePT.RIdentifier#)
Download complete reference as flat list, in either XML or CSV
#OnePT.FullNameCache# sec. #OneRef.RefCache# Edit Edit Edit
Nomenclature
Rank #OnePT.Rank#  
Nomencl. ref. #OnePt.FullNomRefCache# #OnePt.FullNomRefCache# ?? ?? add nomenclatural reference add nomenclatural reference   Del  
Nomencl. status   #OneNameAndNomStatuses.QuetionMark# #OneNameAndNomStatuses.Nomstatus# #OneNameAndNomStatuses.QuetionMark# #OneNameAndNomStatuses.Nomstatus# (fide #OneNameAndNomStatuses.FullRefCache#) #OneNameAndNomStatuses.QuetionMark# #OneNameAndNomStatuses.Nomstatus# (fide #OneNameAndNomStatuses.First60#...)     Del
Nomencl. status     add nomenclatural status   add nomenclatural status  
Type Not designated add type set type to "not designated" Del
#Type.FullNameCache# Del
Type designation(s) #TypeDesignation.TypeCache# Del
add type designation
Basionym
  #Basionym.Basionym[x].FullNameCache# Del   add basionym  
Replaced synonym
  #ReplacedSynonym.ReplacedSynonym[x].FullNameCache# Del   add replaced synonym  
Other homotypic synonym
  #OtherHomoSyn.DisplayName# Del add other homotypic synonym  
" href="#">Homonym(s)
  #spanin##HomonymWithType##spanout#   #spanin##HomonymWithType##spanout# #spanin#??#spanout# #spanin#Del#spanout# #spanin##HomonymWithType##spanout# #spanin#??#spanout# #spanin#Del#spanout#
" href="#">Homonym(s)   add homonym  
    add homonym  
" href="#">Orth. variant(s)
  #spanin##OrthVariants.FullnameCache##spanout#   #spanin##OrthVariants.FullnameCache##spanout# #spanin#??#spanout# #spanin#Del#spanout#
" href="#">Orth. variant(s)   add orthographic variant  
    add orthographic variant  
Name Facts
#NameFactCategories.HeaderText#
#CategoryNameFacts.NameFact# Del
#NameFactCategories.AddNameFactText#
Taxonomy
Status #UCase(OnePT.Status)# (preliminary) doubtful #UCase(OnePT.Status)# #UCase(OnePT.Status)# #UCase(OnePT.Status)#   Alter the status
Name phrase   Edit #PTNamePhrase#  
" href="#">Synonym(s)
#SynonymsOutput.Synonyms[x].Text# #SynonymsOutput.Synonyms[x].ImageHTML# Del  
add synonym
add synonym  
" href="#">Misapplied name(s) #MisappliedNames.FullnameCache# sec. #MisappliedNames.Sec# Del 
  add misapplied name   
" href="#">Concept relation
  #spanin##ConceptRelation.RelPTQualifier# #FullName##Sec##SecRef##spanout#   #spanin##ConceptRelation.RelPTQualifier# #FullName##Sec# #SecRef# #SecRef# #spanout# #spanin# Del#spanout#
" href="#">Concept relation
    #spanin#add concept relation #spanout#  
Accepted taxonym     #AcceptedTaxon.FullnameCache# ??  
Taxonym notes       Edit #PTNote#   #PTNote#  
" href="#">Higher taxa "> #Space# #HigherTaxa.Rank#: #HigherTaxa.FullNameCache# #imagestr#
 
 
" href="#">Included taxa
  #spanstart##IncludedTaxa.RankAbbrev[loopcount-1]#: #IncludedTaxa.FullNameCache[loopcount-1]##provinclstr# #imagestr##spanfinish#   #spanstart##IncludedTaxa.RankAbbrev[loopcount-1]#: #IncludedTaxa.FullNameCache[loopcount-1]##provinclstr# #imagestr##spanfinish# #spanstart#Del#spanfinish#
" href="#">Included taxa
    #spanstart#add included taxon#spanfinish#  
Taxonomic Facts
#FactCategories.HeaderText#
#CategoryFacts.Fact# Del
#FactCategories.AddFactText#
Extensions
#TaxFormExtensions.ExtensionLabel#     Edit
#ExternalExtensions.ExtensionLabel#     go
Marker
#Markers.Marker#
checked onClick="SetMarkerString()">