d608f30e62b096b345b49e4d388a3750b134ca90 larrym Thu Aug 25 14:04:50 2011 -0700 fixup DNA link coordinates when changing position diff --git src/hg/js/hgTracks.js src/hg/js/hgTracks.js index bebd6da..0db3f4c 100644 --- src/hg/js/hgTracks.js +++ src/hg/js/hgTracks.js @@ -204,30 +204,39 @@ // Example NCBI link: http://www.ncbi.nlm.nih.gov/mapview/maps.cgi?taxid=9606&CHR=21&BEG=33031934&END=33041241 linkFixup(pos, "ncbiLink", new RegExp("(.+BEG=)[0-9]+"), "END"); // Example medaka link: http://utgenome.org/medakabrowser_ens_jump.php?revision=version1.0&chr=chromosome18&start=14435198&end=14444829 linkFixup(pos, "medakaLink", new RegExp("(.+start=)[0-9]+"), "end"); if($('#wormbaseLink').length) { // e.g. http://www.wormbase.org/db/gb2/gbrowse/c_elegans?name=II:14646301-14667800 var link = $('#wormbaseLink').attr('href'); var reg = new RegExp("(.+:)[0-9]+"); var a = reg.exec(link); if(a && a[1]) { $('#wormbaseLink').attr('href', a[1] + pos.start + "-" + pos.end); } } + // Fixup DNA link; e.g.: hgc?hgsid=2999470&o=114385768&g=getDna&i=mixed&c=chr7&l=114385768&r=114651696&db=panTro2&hgsid=2999470 + if($('#dnaLink').length) { + var link = $('#dnaLink').attr('href'); + var reg = new RegExp("(.+&o=)[0-9]+.+&db=[^&]+(.*)"); + var a = reg.exec(link); + if(a && a[1]) { + $('#dnaLink').attr('href', a[1] + (pos.start - 1) + "&g=getDna&i=mixed&c=" + pos.chrom + "&l=" + (pos.start - 1) + "&r=" + pos.end + "&db=" + getDb() + a[2]); + } + } } markAsDirtyPage(); } function checkPosition(img, selection) { // return true if user's selection is still w/n the img (including some slop). var imgWidth = jQuery(img).width(); var imgHeight = jQuery(img).height(); var imgOfs = jQuery(img).offset(); var slop = 10; // We ignore clicks in the gray tab and track title column (we really should suppress all drag activity there, // but I don't know how to do that with imgAreaSelect). var leftX = hgTracks.revCmplDisp ? imgOfs.left - slop : imgOfs.left + hgTracks.insideX - slop;