1
|
1
|
|
2 function UpdateDisplayTypes(displayTypes) {
|
|
3 dispMenu = displayTypes.options;
|
|
4 for(i=0; i < dispMenu.length; i++) {
|
|
5 //if(!utils.hasClass(displayTypes,"psiBlast") && !utils.hasClass(displayTypes,"phiBlast") ||
|
|
6 if($("stepNumber").value == "" || $("stepNumber").value < 2) {
|
|
7 if(dispMenu[i].value.indexOf("PSSM") != -1) {
|
|
8 dispMenu[i--] = null;
|
|
9 //break;
|
|
10 }
|
|
11 }
|
|
12 }
|
|
13 }
|
|
14
|
|
15 function GetIndexByValue(selectElem,val) {
|
|
16 var idx = 0;
|
|
17 var opts = selectElem.options;
|
|
18 for(i=0; i < opts.length; i++) {
|
|
19 if(opts[i].value == val) {
|
|
20 idx = i;
|
|
21 break;
|
|
22 }
|
|
23 }
|
|
24 return idx;
|
|
25 }
|
|
26
|
|
27 function resetAdvView(show)
|
|
28 {
|
|
29 var advView = $("advView");
|
|
30 if(show) {
|
|
31 if(utils.hasClass(advView, "hidden")) {
|
|
32 utils.removeClass(advView, "hidden");
|
|
33 }
|
|
34 }
|
|
35 else {
|
|
36 utils.addClass(advView, "hidden");
|
|
37 }
|
|
38 }
|
|
39
|
|
40
|
|
41 function ShowOrHide(hide,elem)
|
|
42 {
|
|
43 if(hide) {
|
|
44 if(!utils.hasClass(elem, "hidden")) {
|
|
45 utils.addClass(elem, "hidden");
|
|
46 }
|
|
47 }
|
|
48 else {
|
|
49 if(utils.hasClass(elem, "hidden")) {
|
|
50 utils.removeClass(elem, "hidden");
|
|
51 }
|
|
52 }
|
|
53 }
|
|
54
|
|
55 function UpdateFormatTypes(form) {
|
|
56 var selectedObjType = form.FORMAT_OBJECT[form.FORMAT_OBJECT.selectedIndex].value;
|
|
57 var hideAdvView = false;
|
|
58 bioseqFormatHide = true;
|
|
59 pssmFormatHide = true;
|
|
60 pssmScFormatHide = true;
|
|
61 formatTypeHide = true;
|
|
62 if (selectedObjType == "Alignment") {
|
|
63 formatObjectSelectedIndex = 0; //HTML
|
|
64 formatTypeHide = false;
|
|
65 hideAdvView = true;
|
|
66 }
|
|
67 if (selectedObjType == "PSSM") {
|
|
68 formatObjectSelectedIndex = GetIndexByValue(form.FORMAT_TYPE,"Text");
|
|
69 pssmFormatHide = false;
|
|
70 }
|
|
71 if (selectedObjType == "PSSM_Scoremat") {
|
|
72 formatObjectSelectedIndex = GetIndexByValue(form.FORMAT_TYPE,"ASN.1");
|
|
73 pssmScFormatHide = false;
|
|
74 }
|
|
75 else if (selectedObjType == "Bioseq") {
|
|
76 formatObjectSelectedIndex = GetIndexByValue(form.FORMAT_TYPE,"ASN.1");
|
|
77 bioseqFormatHide = false;
|
|
78 }
|
|
79 form.FORMAT_TYPE.selectedIndex = formatObjectSelectedIndex;
|
|
80 ShowOrHide(formatTypeHide,form.FORMAT_TYPE);
|
|
81 if ($("bioseqFormat")) {
|
|
82 ShowOrHide(bioseqFormatHide,$("bioseqFormat"));
|
|
83 $("bioseqFormat").readOnly=true;
|
|
84 }
|
|
85 if ($("pssmFormat")) {
|
|
86 ShowOrHide(pssmFormatHide,$("pssmFormat"));
|
|
87 $("pssmFormat").readOnly=true;
|
|
88 }
|
|
89 if ($("pssmScFormat")) {
|
|
90 ShowOrHide(pssmScFormatHide,$("pssmScFormat"));
|
|
91 $("pssmScFormat").readOnly=true;
|
|
92 }
|
|
93 resetAdvView(hideAdvView);
|
|
94 }
|
|
95
|
|
96 function ResetForm()
|
|
97 {
|
|
98 //var defValNodes = cssQuery(".reset");
|
|
99 defValNodes = $("FormatForm").elements;
|
|
100 for(i=0; i < defValNodes.length; i++) {
|
|
101 if(utils.hasClass(defValNodes[i],"reset"))
|
|
102 setDefalValue(defValNodes[i]);
|
|
103 }
|
|
104 if ($("FormatForm").FORMAT_OBJECT.type == "select-one") {
|
|
105 UpdateFormatTypes($("FormatForm"));
|
|
106 UpdateDisplayTypes($("FormatForm").FORMAT_OBJECT);
|
|
107 }
|
|
108 if($("FormatForm").RUN_PSIBLAST.checked) setDefalValue($("FormatForm").I_THRESH)
|
|
109 else $("FormatForm").I_THRESH.value="";
|
|
110 //resetOrganismSuggest($("FormatForm").FORMAT_ORGANISM);
|
|
111 resetOrganismControls($("FormatForm").FORMAT_ORGANISM);
|
|
112 //TO DO: add threshold
|
|
113 }
|
|
114
|
|
115 function LimitByHitlistSize(list)
|
|
116 {
|
|
117 var listBreak = false;
|
|
118 var optSel = false;
|
|
119 for(i=0; i < list.options.length; i++) {
|
|
120 var optVal = parseInt(list.options[i].value ,10);
|
|
121 var hitListSize = parseInt($("maxNumSeq").value ,10);
|
|
122 if(list.options[i].selected) optSel = true;
|
|
123 if(optVal >= hitListSize) {
|
|
124 if(!optSel) {list.options[i].selected = true;}
|
|
125 list.options.length = i + 1;
|
|
126 break;
|
|
127 }
|
|
128 }
|
|
129 }
|
|
130
|
|
131 function AddFormatOrgField(e) {
|
|
132 AddOrgRow(e, "FORMAT_ORGANISM", "FORMAT_ORG_EXCLUDE");
|
|
133 }
|
|
134
|
|
135 function initSubmit() {
|
|
136
|
|
137
|
|
138 }
|
|
139
|
|
140 function adjustFormatOptions()
|
|
141 {
|
|
142 var alignView = $("FormatForm").ALIGNMENT_VIEW;
|
|
143 var formatType = $("FormatForm").FORMAT_TYPE;
|
|
144 var queryAnch = formatType[formatType.selectedIndex].value == "HTML" && (alignView[alignView.selectedIndex].value != "Pairwise" && alignView[alignView.selectedIndex].value != "PairwiseWithIdentities");
|
|
145 var dynFormatQA = !$("FormatForm").OLD_VIEW.checked && queryAnch;
|
|
146 dynFormatPW = !$("FormatForm").OLD_VIEW.checked && formatType[formatType.selectedIndex].value == "HTML" && (alignView[alignView.selectedIndex].value == "Pairwise" || alignView[alignView.selectedIndex].value == "PairwiseWithIdentities");
|
|
147
|
|
148 UpdateDescriptions(dynFormatPW);
|
|
149 if (dynFormatPW) {
|
|
150 jQuery("#frmAln").addClass("hidden");
|
|
151 if (!utils.hasClass($("shl"), "hidden")) jQuery("#shl").addClass("hidden"); //hide SHOW_LINKOUT
|
|
152 jQuery("#gts").addClass("hidden"); //hide GET_SEQUENCE
|
|
153 jQuery("#scf").removeClass("hidden");//show CDS_FEAT
|
|
154 $("FormatForm").SHOW_LINKOUT.checked = true;
|
|
155 }
|
|
156 else {
|
|
157 if(dynFormatQA) $("FRM_ALIGNMENTS").selectedIndex = $("FRM_DESCRIPTIONS").selectedIndex;
|
|
158
|
|
159 jQuery("#frmAln").removeClass("hidden");
|
|
160 if (dynFormatQA) {
|
|
161 if (!utils.hasClass($("shl"), "hidden")) jQuery("#shl").addClass("hidden"); //hide SHOW_LINKOUT
|
|
162 }
|
|
163 else {
|
|
164 jQuery("#shl").removeClass("hidden");
|
|
165 }
|
|
166 if (queryAnch) {
|
|
167 jQuery("#scf").addClass("hidden"); //hide CDS_FEAT
|
|
168 }
|
|
169 else {//pairwise old_view=false
|
|
170 jQuery("#scf").removeClass("hidden"); //hide CDS_FEAT
|
|
171 }
|
|
172 jQuery("#gts").removeClass("hidden"); //GET_SEQUENCE
|
|
173 }
|
|
174 if ($("blastSpec").value == "VecScreen") {
|
|
175 adjustVecscreen(dynFormatPW);
|
|
176 }
|
|
177 }
|
|
178
|
|
179 function adjustVecscreen(dynFormatPW)
|
|
180 {
|
|
181 var dfltDescrInd = 0; //0
|
|
182 var dfltDynDescrInd = 5; //1000
|
|
183 var dfltAlnInd = 6; //1000
|
|
184 if (dynFormatPW) {
|
|
185 utils.addClass($("lr"), "hidden");
|
|
186 $("FRM_DESCRIPTIONS").selectedIndex = dfltDynDescrInd;
|
|
187 }
|
|
188 else {
|
|
189 utils.removeClass($("lr"), "hidden");
|
|
190 $("FRM_DESCRIPTIONS").selectedIndex = dfltDescrInd;
|
|
191 }
|
|
192 $("FRM_ALIGNMENTS").selectedIndex = dfltAlnInd;
|
|
193 }
|
|
194
|
|
195
|
|
196 function UpdateDescriptions(removeZero)
|
|
197 {
|
|
198 if (removeZero) {
|
|
199 dispMenu = $("FormatForm").DESCRIPTIONS;
|
|
200 dispMenu.remove(0);
|
|
201 }
|
|
202 else {
|
|
203 dispMenu = $("FormatForm").DESCRIPTIONS;
|
|
204 if (dispMenu.options[0].value != "0") {
|
|
205 if (navigator.userAgent.match(/ie/i)) {
|
|
206 dispMenu.add(new Option("0", "0"), 0);
|
|
207 }
|
|
208 else {
|
|
209 dispMenu.add(new Option("0", "0"), dispMenu[0]);
|
|
210 }
|
|
211 }
|
|
212 }
|
|
213 }
|
|
214
|
|
215 function InitDynFormatOptions()
|
|
216 {
|
|
217 if ($("OLD_VIEW")) {
|
|
218 utils.addEvent($("FormatForm").OLD_VIEW, "click", adjustFormatOptions, false);
|
|
219 utils.addEvent($("FormatForm").ALIGNMENT_VIEW,"change", adjustFormatOptions, false);
|
|
220 utils.addEvent($("FormatForm").FORMAT_TYPE, "change", adjustFormatOptions, false);
|
|
221 adjustFormatOptions();
|
|
222 }
|
|
223 }
|
|
224
|
|
225 function InitFormatPage()
|
|
226 {
|
|
227 if ($("FormatForm").FORMAT_OBJECT.type == "select-one") {
|
|
228 UpdateDisplayTypes($("FormatForm").FORMAT_OBJECT);
|
|
229 UpdateFormatTypes($("FormatForm"));
|
|
230 list = $("FormatForm").FORMAT_OBJECT;
|
|
231 utils.addEvent(list, "change", function() {
|
|
232 UpdateFormatTypes($("FormatForm"));
|
|
233 },
|
|
234 false);
|
|
235 }
|
|
236 utils.addEvent($("resetAll"), "click", ResetForm, false);
|
|
237 if($("maxNumSeq") != null) {
|
|
238 if($("maxNumSeq").value != "") {
|
|
239 LimitByHitlistSize($("FormatForm").DESCRIPTIONS);
|
|
240 LimitByHitlistSize($("FormatForm").ALIGNMENTS);
|
|
241 LimitByHitlistSize($("FormatForm").NUM_OVERVIEW);
|
|
242 }
|
|
243 }
|
|
244 setupOrganismSuggest($("FormatForm").FORMAT_ORGANISM);
|
|
245 utils.addEvent($("FormatForm"), "submit", function() {
|
|
246 adjustOrgVal($("FormatForm").FORMAT_ORGANISM);},
|
|
247 false);
|
|
248
|
|
249 if ($("addOrg")) utils.addEvent($("addOrg"), "click", AddFormatOrgField, false);
|
|
250 InitDynFormatOptions();
|
|
251 /* add this code if decide image for View Report
|
|
252 var imgButtons = jQuery("[class='viewReport']");
|
|
253 for (var i = 0; i < imgButtons.length; i++) {
|
|
254 var l = imgButtons[i];
|
|
255 utils.addEvent(l, "click", function() {$("FormatForm").submit();}, false);
|
|
256 utils.addEvent(l, "mouseover", function() {l.src = l.getAttribute("mouseovImg");}, false);
|
|
257 utils.addEvent(l, "mouseout", function() {l.src = l.getAttribute("mouseoutImg");}, false);
|
|
258 utils.addEvent(l, "mousedown", function() {l.src = l.getAttribute("mousedownImg");}, false);
|
|
259 utils.addEvent(l, "mouseup", function() {l.src = l.getAttribute("mouseupImg");}, false);
|
|
260 }
|
|
261 */
|
|
262 }
|
|
263
|
|
264 utils.addEvent(window, 'load', InitFormatPage, false);
|
|
265
|
|
266
|
|
267
|
|
268
|
|
269
|
|
270
|