121
121
if ( GetWWW(ajp) ) {
122
122
FFAddOneString (ffstring, " gi:", FALSE, FALSE, TILDE_IGNORE);
123
FFAddTextToString (ffstring, "<a href=", link_seq, NULL, FALSE, FALSE, TILDE_IGNORE);
123
FFAddTextToString (ffstring, "<a href=\"", link_seq, NULL, FALSE, FALSE, TILDE_IGNORE);
124
124
sprintf (buf, "%ld", (long) gi);
125
FFAddTextToString (ffstring, "val=", buf, ">", FALSE, FALSE, TILDE_IGNORE);
125
FFAddTextToString (ffstring, "val=", buf, "\">", FALSE, FALSE, TILDE_IGNORE);
126
126
FFAddOneString (ffstring, buf, FALSE, FALSE, TILDE_EXPAND);
127
127
FFAddOneString (ffstring, "</a>", FALSE, FALSE, TILDE_IGNORE);
421
421
static CharPtr reftxtg = " The reference sequence was generated based on analysis of ";
422
422
static CharPtr reftxt1 = " This record is predicted by genome sequence analysis and is not yet supported by experimental evidence.";
423
423
static CharPtr reftxt2 = " This record has not yet been subject to final NCBI review.";
424
static CharPtr reftxt3 = " The mRNA record is supported by experimental evidence; however, the coding sequence is predicted.";
425
static CharPtr reftxt4 = " This record has undergone preliminary review of the sequence, but has not yet been subject to final review.";
424
static CharPtr reftxt3 = " This record has not been reviewed and the function is unknown.";
425
static CharPtr reftxt4 = " This record has undergone validation or preliminary review.";
426
426
static CharPtr reftxt5 = " This record has been curated by ";
427
427
static CharPtr reftxt6 = " This record is predicted by automated computational analysis.";
428
428
static CharPtr reftxt7 = " This record is provided to represent a collection of whole genome shotgun sequences.";
429
429
static CharPtr reftxt9 = " This record is derived from an annotated genomic sequence (";
430
static CharPtr reftxt41 = " This record is based on preliminary annotation provided by ";
431
432
static CharPtr GetStatusForRefTrack (
432
433
UserObjectPtr uop
554
592
if (review == 1) {
555
593
FFAddOneString (ffstring, reftxt1, FALSE, FALSE, TILDE_IGNORE);
556
594
} else if (review == 2) {
557
FFAddOneString (ffstring, reftxt2, FALSE, FALSE, TILDE_IGNORE);
595
if (curator == NULL) {
596
FFAddOneString (ffstring, reftxt2, FALSE, FALSE, TILDE_IGNORE);
558
598
} else if (review == 3) {
559
599
FFAddOneString (ffstring, reftxt3, FALSE, FALSE, TILDE_IGNORE);
560
600
} else if (review == 4) {
563
603
if (curator == NULL) {
564
604
curator = "NCBI staff";
566
FFAddOneString (ffstring, reftxt5, FALSE, FALSE, TILDE_IGNORE);
567
FFAddOneString (ffstring, curator, FALSE, FALSE, TILDE_IGNORE);
568
FFAddOneString (ffstring, ".", FALSE, FALSE, TILDE_IGNORE);
569
606
} else if (review == 6) {
570
607
FFAddOneString (ffstring, reftxt6, FALSE, FALSE, TILDE_IGNORE);
571
608
} else if (review == 7) {
572
609
FFAddOneString (ffstring, reftxt7, FALSE, FALSE, TILDE_IGNORE);
573
610
} else if (review == 8) {
575
if (review != 5 && curator != NULL) {
576
FFAddOneString (ffstring, reftxt5, FALSE, FALSE, TILDE_IGNORE);
577
FFAddOneString (ffstring, curator, FALSE, FALSE, TILDE_IGNORE);
612
if (curator != NULL) {
614
FFAddOneString (ffstring, reftxt41, FALSE, FALSE, TILDE_IGNORE);
616
FFAddOneString (ffstring, reftxt5, FALSE, FALSE, TILDE_IGNORE);
618
if (GetWWW (ajp) && url != NULL && (! URLHasSuspiciousHtml (ajp, url))) {
619
if (StringNCmp (url, "http://", 7) == 0 || StringNCmp (url, "https://", 8) == 0) {
620
FFAddTextToString(ffstring, "<a href=\"", url, "\">", FALSE, FALSE, TILDE_IGNORE);
621
FFAddOneString (ffstring, curator, FALSE, FALSE, TILDE_IGNORE);
622
FFAddOneString (ffstring, "</a>", FALSE, FALSE, TILDE_IGNORE);
623
} else if (StringNCmp (url, "www.", 4) == 0) {
624
FFAddTextToString(ffstring, "<a href=http://\"", url, "\">", FALSE, FALSE, TILDE_IGNORE);
625
FFAddOneString (ffstring, curator, FALSE, FALSE, TILDE_IGNORE);
626
FFAddOneString (ffstring, "</a>", FALSE, FALSE, TILDE_IGNORE);
628
FFAddOneString (ffstring, curator, FALSE, FALSE, TILDE_IGNORE);
631
FFAddOneString (ffstring, curator, FALSE, FALSE, TILDE_IGNORE);
578
633
FFAddOneString (ffstring, ".", FALSE, FALSE, TILDE_IGNORE);
580
635
if (source != NULL) {
581
636
FFAddOneString (ffstring, reftxt9, FALSE, FALSE, TILDE_IGNORE);
582
637
if (GetWWW (ajp) && ValidateAccn (source) == 0) {
583
FFAddTextToString(ffstring, "<a href=", link_seq, NULL, FALSE, FALSE, TILDE_IGNORE);
584
FFAddTextToString(ffstring, "val=", source, ">", FALSE, FALSE, TILDE_IGNORE);
638
FFAddTextToString(ffstring, "<a href=\"", link_seq, NULL, FALSE, FALSE, TILDE_IGNORE);
639
FFAddTextToString(ffstring, "val=", source, "\">", FALSE, FALSE, TILDE_IGNORE);
585
640
FFAddOneString (ffstring, source, FALSE, FALSE, TILDE_IGNORE);
586
641
FFAddOneString (ffstring, "</a>", FALSE, FALSE, TILDE_IGNORE);
612
668
to = u->data.intvalue;
613
669
} else if (StringICmp (oip->str, "name") == 0 && u->choice == 1) {
614
670
name = (CharPtr) u->data.ptrvalue;
671
} else if (StringICmp (oip->str, "gi") == 0 && u->choice == 2) {
672
gi = u->data.intvalue;
618
676
if (StringDoesHaveText (accn)) {
619
677
if (GetWWW (ajp) && ValidateAccn (accn) == 0) {
620
FFAddTextToString(ffstring, "<a href=", link_seq, NULL, FALSE, FALSE, TILDE_IGNORE);
621
FFAddTextToString(ffstring, "val=", accn, ">", FALSE, FALSE, TILDE_IGNORE);
678
FFAddTextToString(ffstring, "<a href=\"", link_seq, NULL, FALSE, FALSE, TILDE_IGNORE);
680
sprintf (buf, "%ld", (long) gi);
681
FFAddTextToString(ffstring, "val=", buf, "\">", FALSE, FALSE, TILDE_IGNORE);
683
FFAddTextToString(ffstring, "val=", accn, "\">", FALSE, FALSE, TILDE_IGNORE);
622
685
FFAddOneString (ffstring, accn, FALSE, FALSE, TILDE_IGNORE);
623
686
FFAddOneString (ffstring, "</a>", FALSE, FALSE, TILDE_IGNORE);
940
1003
static Boolean IsTpa (
942
1005
Boolean has_tpa_assembly,
948
Boolean has_bankit = FALSE;
949
Boolean has_genbank = FALSE;
950
Boolean has_gi = FALSE;
951
Boolean has_local = FALSE;
952
Boolean has_refseq = FALSE;
953
Boolean has_smart = FALSE;
954
Boolean has_tpa = FALSE;
1011
SeqMgrDescContext dcontext;
1013
Boolean has_bankit = FALSE;
1014
Boolean has_genbank = FALSE;
1015
Boolean has_gi = FALSE;
1016
Boolean has_local = FALSE;
1017
Boolean has_refseq = FALSE;
1018
Boolean has_smart = FALSE;
1019
Boolean has_tpa = FALSE;
1020
Boolean is_tsa = FALSE;
957
1025
if (bsp == NULL || bsp->id == NULL) return FALSE;
958
1026
for (sip = bsp->id; sip != NULL; sip = sip->next) {
2164
2253
FFAddTextToString (ffstring, NULL, reftxt11, " (", FALSE, FALSE, TILDE_IGNORE);
2166
2255
if ( GetWWW(ajp) ) {
2167
FFAddTextToString (ffstring, "<a href=", nt_link, name, FALSE, FALSE, TILDE_IGNORE);
2168
FFAddOneString (ffstring, ">", FALSE, FALSE, TILDE_IGNORE);
2256
FFAddTextToString (ffstring, "<a href=\"", nt_link, name, FALSE, FALSE, TILDE_IGNORE);
2257
FFAddOneString (ffstring, "\">", FALSE, FALSE, TILDE_IGNORE);
2170
2259
FFAddOneString (ffstring, name, FALSE, FALSE, TILDE_IGNORE);
2171
2260
if ( GetWWW(ajp) ) {
2194
2283
locusID [0] = '\0';
2195
2284
taxID [0] = '\0';
2196
2285
if ( GetWWW(ajp) && GetGeneAndLocus (bsp, &geneName, locusID, taxID)) {
2197
FFAddTextToString (ffstring, "<a href=", ev_link, NULL, FALSE, FALSE, TILDE_IGNORE);
2286
FFAddTextToString (ffstring, "<a href=\"", ev_link, NULL, FALSE, FALSE, TILDE_IGNORE);
2198
2287
FFAddTextToString (ffstring, "contig=", name, NULL, FALSE, FALSE, TILDE_IGNORE);
2199
2288
FFAddTextToString (ffstring, "&gene=", geneName, NULL, FALSE, FALSE, TILDE_IGNORE);
2200
2289
FFAddTextToString (ffstring, "&lid=", locusID, NULL, FALSE, FALSE, TILDE_IGNORE);
2201
2290
if (! StringHasNoText (taxID)) {
2202
2291
FFAddTextToString (ffstring, "&taxid=", taxID, NULL, FALSE, FALSE, TILDE_IGNORE);
2204
FFAddOneString (ffstring, ">", FALSE, FALSE, TILDE_IGNORE);
2293
FFAddOneString (ffstring, "\">", FALSE, FALSE, TILDE_IGNORE);
2205
2294
FFAddOneString (ffstring, "evidence", FALSE, FALSE, TILDE_IGNORE);
2206
2295
FFAddOneString (ffstring, "</a>", FALSE, FALSE, TILDE_IGNORE);