diff --git a/client/apollo/js/View/Track/SequenceTrack.js b/client/apollo/js/View/Track/SequenceTrack.js index b0c1e1a9a..1440e2fd3 100644 --- a/client/apollo/js/View/Track/SequenceTrack.js +++ b/client/apollo/js/View/Track/SequenceTrack.js @@ -1,5 +1,520 @@ const $ = require('jquery') +var defaultTranslationTable = { + ATT: 'I', + ATt: 'I', + AtT: 'I', + Att: 'I', + aTT: 'I', + aTt: 'I', + atT: 'I', + att: 'I', + CTT: 'L', + CTt: 'L', + CtT: 'L', + Ctt: 'L', + cTT: 'L', + cTt: 'L', + ctT: 'L', + ctt: 'L', + GTT: 'V', + GTt: 'V', + GtT: 'V', + Gtt: 'V', + gTT: 'V', + gTt: 'V', + gtT: 'V', + gtt: 'V', + TAT: 'Y', + TAt: 'Y', + TaT: 'Y', + Tat: 'Y', + tAT: 'Y', + tAt: 'Y', + taT: 'Y', + tat: 'Y', + AAA: 'K', + AAa: 'K', + AaA: 'K', + Aaa: 'K', + aAA: 'K', + aAa: 'K', + aaA: 'K', + aaa: 'K', + CAA: 'Q', + CAa: 'Q', + CaA: 'Q', + Caa: 'Q', + cAA: 'Q', + cAa: 'Q', + caA: 'Q', + caa: 'Q', + AAC: 'N', + AAc: 'N', + AaC: 'N', + Aac: 'N', + aAC: 'N', + aAc: 'N', + aaC: 'N', + aac: 'N', + CAC: 'H', + CAc: 'H', + CaC: 'H', + Cac: 'H', + cAC: 'H', + cAc: 'H', + caC: 'H', + cac: 'H', + GAA: 'E', + GAa: 'E', + GaA: 'E', + Gaa: 'E', + gAA: 'E', + gAa: 'E', + gaA: 'E', + gaa: 'E', + AAG: 'K', + AAg: 'K', + AaG: 'K', + Aag: 'K', + aAG: 'K', + aAg: 'K', + aaG: 'K', + aag: 'K', + CAG: 'Q', + CAg: 'Q', + CaG: 'Q', + Cag: 'Q', + cAG: 'Q', + cAg: 'Q', + caG: 'Q', + cag: 'Q', + GAC: 'D', + GAc: 'D', + GaC: 'D', + Gac: 'D', + gAC: 'D', + gAc: 'D', + gaC: 'D', + gac: 'D', + GAG: 'E', + GAg: 'E', + GaG: 'E', + Gag: 'E', + gAG: 'E', + gAg: 'E', + gaG: 'E', + gag: 'E', + TGA: '*', + TGa: '*', + TgA: '*', + Tga: '*', + tGA: '*', + tGa: '*', + tgA: '*', + tga: '*', + TGC: 'C', + TGc: 'C', + TgC: 'C', + Tgc: 'C', + tGC: 'C', + tGc: 'C', + tgC: 'C', + tgc: 'C', + TCA: 'S', + TCa: 'S', + TcA: 'S', + Tca: 'S', + tCA: 'S', + tCa: 'S', + tcA: 'S', + tca: 'S', + AAT: 'N', + AAt: 'N', + AaT: 'N', + Aat: 'N', + aAT: 'N', + aAt: 'N', + aaT: 'N', + aat: 'N', + TCC: 'S', + TCc: 'S', + TcC: 'S', + Tcc: 'S', + tCC: 'S', + tCc: 'S', + tcC: 'S', + tcc: 'S', + TGG: 'W', + TGg: 'W', + TgG: 'W', + Tgg: 'W', + tGG: 'W', + tGg: 'W', + tgG: 'W', + tgg: 'W', + CAT: 'H', + CAt: 'H', + CaT: 'H', + Cat: 'H', + cAT: 'H', + cAt: 'H', + caT: 'H', + cat: 'H', + TCG: 'S', + TCg: 'S', + TcG: 'S', + Tcg: 'S', + tCG: 'S', + tCg: 'S', + tcG: 'S', + tcg: 'S', + GAT: 'D', + GAt: 'D', + GaT: 'D', + Gat: 'D', + gAT: 'D', + gAt: 'D', + gaT: 'D', + gat: 'D', + TTA: 'L', + TTa: 'L', + TtA: 'L', + Tta: 'L', + tTA: 'L', + tTa: 'L', + ttA: 'L', + tta: 'L', + TGT: 'C', + TGt: 'C', + TgT: 'C', + Tgt: 'C', + tGT: 'C', + tGt: 'C', + tgT: 'C', + tgt: 'C', + TTC: 'F', + TTc: 'F', + TtC: 'F', + Ttc: 'F', + tTC: 'F', + tTc: 'F', + ttC: 'F', + ttc: 'F', + TCT: 'S', + TCt: 'S', + TcT: 'S', + Tct: 'S', + tCT: 'S', + tCt: 'S', + tcT: 'S', + tct: 'S', + TTG: 'L', + TTg: 'L', + TtG: 'L', + Ttg: 'L', + tTG: 'L', + tTg: 'L', + ttG: 'L', + ttg: 'L', + TTT: 'F', + TTt: 'F', + TtT: 'F', + Ttt: 'F', + tTT: 'F', + tTt: 'F', + ttT: 'F', + ttt: 'F', + AGA: 'R', + AGa: 'R', + AgA: 'R', + Aga: 'R', + aGA: 'R', + aGa: 'R', + agA: 'R', + aga: 'R', + CGA: 'R', + CGa: 'R', + CgA: 'R', + Cga: 'R', + cGA: 'R', + cGa: 'R', + cgA: 'R', + cga: 'R', + AGC: 'S', + AGc: 'S', + AgC: 'S', + Agc: 'S', + aGC: 'S', + aGc: 'S', + agC: 'S', + agc: 'S', + CGC: 'R', + CGc: 'R', + CgC: 'R', + Cgc: 'R', + cGC: 'R', + cGc: 'R', + cgC: 'R', + cgc: 'R', + ACA: 'T', + ACa: 'T', + AcA: 'T', + Aca: 'T', + aCA: 'T', + aCa: 'T', + acA: 'T', + aca: 'T', + CCA: 'P', + CCa: 'P', + CcA: 'P', + Cca: 'P', + cCA: 'P', + cCa: 'P', + ccA: 'P', + cca: 'P', + GGA: 'G', + GGa: 'G', + GgA: 'G', + Gga: 'G', + gGA: 'G', + gGa: 'G', + ggA: 'G', + gga: 'G', + ACC: 'T', + ACc: 'T', + AcC: 'T', + Acc: 'T', + aCC: 'T', + aCc: 'T', + acC: 'T', + acc: 'T', + AGG: 'R', + AGg: 'R', + AgG: 'R', + Agg: 'R', + aGG: 'R', + aGg: 'R', + agG: 'R', + agg: 'R', + CCC: 'P', + CCc: 'P', + CcC: 'P', + Ccc: 'P', + cCC: 'P', + cCc: 'P', + ccC: 'P', + ccc: 'P', + CGG: 'R', + CGg: 'R', + CgG: 'R', + Cgg: 'R', + cGG: 'R', + cGg: 'R', + cgG: 'R', + cgg: 'R', + GGC: 'G', + GGc: 'G', + GgC: 'G', + Ggc: 'G', + gGC: 'G', + gGc: 'G', + ggC: 'G', + ggc: 'G', + GCA: 'A', + GCa: 'A', + GcA: 'A', + Gca: 'A', + gCA: 'A', + gCa: 'A', + gcA: 'A', + gca: 'A', + ACG: 'T', + ACg: 'T', + AcG: 'T', + Acg: 'T', + aCG: 'T', + aCg: 'T', + acG: 'T', + acg: 'T', + CCG: 'P', + CCg: 'P', + CcG: 'P', + Ccg: 'P', + cCG: 'P', + cCg: 'P', + ccG: 'P', + ccg: 'P', + GCC: 'A', + GCc: 'A', + GcC: 'A', + Gcc: 'A', + gCC: 'A', + gCc: 'A', + gcC: 'A', + gcc: 'A', + GGG: 'G', + GGg: 'G', + GgG: 'G', + Ggg: 'G', + gGG: 'G', + gGg: 'G', + ggG: 'G', + ggg: 'G', + GCG: 'A', + GCg: 'A', + GcG: 'A', + Gcg: 'A', + gCG: 'A', + gCg: 'A', + gcG: 'A', + gcg: 'A', + ATA: 'I', + ATa: 'I', + AtA: 'I', + Ata: 'I', + aTA: 'I', + aTa: 'I', + atA: 'I', + ata: 'I', + AGT: 'S', + AGt: 'S', + AgT: 'S', + Agt: 'S', + aGT: 'S', + aGt: 'S', + agT: 'S', + agt: 'S', + ATC: 'I', + ATc: 'I', + AtC: 'I', + Atc: 'I', + aTC: 'I', + aTc: 'I', + atC: 'I', + atc: 'I', + CTA: 'L', + CTa: 'L', + CtA: 'L', + Cta: 'L', + cTA: 'L', + cTa: 'L', + ctA: 'L', + cta: 'L', + CGT: 'R', + CGt: 'R', + CgT: 'R', + Cgt: 'R', + cGT: 'R', + cGt: 'R', + cgT: 'R', + cgt: 'R', + ACT: 'T', + ACt: 'T', + AcT: 'T', + Act: 'T', + aCT: 'T', + aCt: 'T', + acT: 'T', + act: 'T', + CTC: 'L', + CTc: 'L', + CtC: 'L', + Ctc: 'L', + cTC: 'L', + cTc: 'L', + ctC: 'L', + ctc: 'L', + ATG: 'M', + ATg: 'M', + AtG: 'M', + Atg: 'M', + aTG: 'M', + aTg: 'M', + atG: 'M', + atg: 'M', + GTA: 'V', + GTa: 'V', + GtA: 'V', + Gta: 'V', + gTA: 'V', + gTa: 'V', + gtA: 'V', + gta: 'V', + CCT: 'P', + CCt: 'P', + CcT: 'P', + Cct: 'P', + cCT: 'P', + cCt: 'P', + ccT: 'P', + cct: 'P', + TAA: '*', + TAa: '*', + TaA: '*', + Taa: '*', + tAA: '*', + tAa: '*', + taA: '*', + taa: '*', + GGT: 'G', + GGt: 'G', + GgT: 'G', + Ggt: 'G', + gGT: 'G', + gGt: 'G', + ggT: 'G', + ggt: 'G', + CTG: 'L', + CTg: 'L', + CtG: 'L', + Ctg: 'L', + cTG: 'L', + cTg: 'L', + ctG: 'L', + ctg: 'L', + GTC: 'V', + GTc: 'V', + GtC: 'V', + Gtc: 'V', + gTC: 'V', + gTc: 'V', + gtC: 'V', + gtc: 'V', + TAC: 'Y', + TAc: 'Y', + TaC: 'Y', + Tac: 'Y', + tAC: 'Y', + tAc: 'Y', + taC: 'Y', + tac: 'Y', + GCT: 'A', + GCt: 'A', + GcT: 'A', + Gct: 'A', + gCT: 'A', + gCt: 'A', + gcT: 'A', + gct: 'A', + GTG: 'V', + GTg: 'V', + GtG: 'V', + Gtg: 'V', + gTG: 'V', + gTg: 'V', + gtG: 'V', + gtg: 'V', + TAG: '*', + TAg: '*', + TaG: '*', + Tag: '*', + tAG: '*', + tAg: '*', + taG: '*', + tag: '*', +} + define( [ 'dojo/_base/declare', 'dojo/request/xhr', @@ -114,7 +629,7 @@ function( declare, } */ - this.translationTable = {}; + this.translationTable = defaultTranslationTable; var initAnnotTrack = dojo.hitch(this, function () { var atrack = this.getAnnotTrack(); @@ -175,10 +690,13 @@ function( declare, data: JSON.stringify(query), handleAs: "json" }).then(function (response) { // - track.translationTable = {}; var ttable = response.translation_table; + if (!ttable) { + return + } track.startProteins = response.start_proteins; track.stopProteins = response.stop_proteins; + track.translationTable = {}; for (var codon in ttable) { // looping through codon table, make sure not hitting generic properties... if (ttable.hasOwnProperty(codon)) { @@ -1392,4 +1910,3 @@ function( declare, SequenceTrack.nbsp = String.fromCharCode(160); return SequenceTrack; }); - diff --git a/docker-files/docker-apollo-config.groovy b/docker-files/docker-apollo-config.groovy index ae9b09655..ceffb4b4a 100644 --- a/docker-files/docker-apollo-config.groovy +++ b/docker-files/docker-apollo-config.groovy @@ -1,7 +1,11 @@ println "WEBAPOLLO environment" System.getenv().each { if (it.key.contains("APOLLO") || it.key.contains("CHADO")) { - println it.key + " " + it.value + if (it.key.contains("PASSWORD") && it.value) { + println it.key + " ***" + } else { + println it.key + " " + it.value + } } }