e8010173cb0940a00c38dd6f11ac3ab1fc64195b tdreszer Fri Aug 27 13:17:07 2010 -0700 Needed to change cfg popup return, because ajaxing over vars then fetching new track had timing issues diff --git src/hg/js/hgTracks.js src/hg/js/hgTracks.js index ece55d8..f1cd745 100644 --- src/hg/js/hgTracks.js +++ src/hg/js/hgTracks.js @@ -1769,10 +1769,13 @@ return mapItems; } -function updateTrackImg(trackName) +function updateTrackImg(trackName,extraData,loadingId) { var data = "hgt.trackImgOnly=1&hgsid=" + getHgsid() + "&hgt.trackNameFilter=" + trackName; - var loadingId = showLoadingImage("tr_" + trackName); + if(extraData != undefined && extraData != "") + data += "&" + extraData; + if(loadingId == undefined || loadingId == "") + loadingId = showLoadingImage("tr_" + trackName); $.ajax({ type: "GET", url: "../cgi-bin/hgTracks", @@ -1832,12 +1835,30 @@ closeOnEscape: true, autoOpen: false, buttons: { "Ok": function() { - if(popUpTrackDescriptionOnly == false) + var hide = false; // need to handle special case of vis going to hide! + var vis = $('#pop').find('select[name="'+popUpTrackName+'"]'); + if(vis != undefined) + hide = ($(vis).val() == 'hide'); + if(popUpTrackDescriptionOnly == false) { + if($('#imgTbl') != undefined) { + if(hide) { + if(trackDbJson[popUpTrackName].parentTrack) + setAllVars($('#pop'),popUpTrackName); + else setAllVars($('#pop')); + $('#tr_' + popUpTrackName).remove(); + loadImgAreaSelect(false); + } + else { + var urlData = getAllVarsAsUrlData($('#pop')); + updateTrackImg(popUpTrackName,urlData,""); + } + } else { + setAllVars($('#pop')); + //if(hide) // Need to set checkbox here + } + } $(this).dialog("close"); - if($('#imgTbl') != undefined && popUpTrackDescriptionOnly == false) - setTimeout('updateTrackImg(popUpTrackName);',50); // Necessary because ajax settings need to be done first - updateTrackImg(popUpTrackName); }}, close: function() { // clear out html after close to prevent problems caused by duplicate html elements