http://git-wip-us.apache.org/repos/asf/incubator-cmda/blob/f22b3e32/app/views/climate/conditionalSampling.scala.html
----------------------------------------------------------------------
diff --git a/app/views/climate/conditionalSampling.scala.html
b/app/views/climate/conditionalSampling.scala.html
index 69d9a67..5ed7ce7 100644
--- a/app/views/climate/conditionalSampling.scala.html
+++ b/app/views/climate/conditionalSampling.scala.html
@@ -1,25 +1,20 @@
-@(parameters: metadata.ConditionalSampling)
-
-@import helper._
-
+@(parameters: metadata.ConditionalSampling) @import helper._
<link rel="stylesheet"
href='@routes.Assets.at("stylesheets/livefitler.css")'>
-
@scripts = {
- <script src='@routes.Assets.at("javascripts/edit_button.js")'></script>
- <script src='@routes.Assets.at("javascripts/livefilter.js")'></script>
- <script type="text/javascript"
src='@routes.Assets.at("javascripts/jquery-1.9.0.min.js")'></script>
- <script type="text/javascript"
src="https://cdnjs.cloudflare.com/ajax/libs/flot/0.8.3/jquery.flot.min.js"></script>
- <script type="text/javascript"
src='@routes.Assets.at("javascripts/json2.js")'></script>
- <script type="text/javascript"
src='@routes.Assets.at("javascripts/xmisc.js")'></script>
- <script type="text/javascript">
-
+<script src='@routes.Assets.at("javascripts/edit_button.js")'></script>
+<script src='@routes.Assets.at("javascripts/livefilter.js")'></script>
+<script type="text/javascript"
+ src='@routes.Assets.at("javascripts/jquery-1.9.0.min.js")'></script>
+<script type="text/javascript" src="https:
+ <script type="
+ text/javascript"
src='@routes.Assets.at("javascripts/json2.js")'></script>
+<script type="text/javascript"
+ src='@routes.Assets.at("javascripts/xmisc.js")'></script>
+<script type="text/javascript">
var Response = null;
var variable1 = "";
var variable2 = "";
-
-
- // called on load or reload
window.onload = function() {
select_all_months();
changeDataSource1();
@@ -30,12 +25,9 @@
select_var1(1);
changeVariableName2();
select_var1(2);
- // no data to download yet
- //disable_download_button();
var z=document.getElementById("download_data");
z.disabled=false;
setDefault();
-
$('#pres1').val("N/A");
$('#pres2').val("N/A");
$('#t0').val($('#startYearMonth').text());
@@ -91,11 +83,8 @@
$('#Image').html('<img src="'+imageUrl+'" width=680 />');
$('#data_url').html($('#dataURL').text());
$('#Response').html($('serviceResponseText').text());
-
-
function changeDataSource1(){
var dataSource = $('#dataSourceP').text();
- //dataSource = "NASA_QuikSCAT";
var x = document.getElementById("data1");
if(dataSource == "cccma_canesm2" ){
x.options[0].selected=true;
@@ -175,11 +164,9 @@
else if(dataSource == "ecmwf_interim" ){
x.options[25].selected=true;
}
- //$('#data option:contains('+dataSource+')').prop({selected: true});
}
function changeDataSource2(){
var dataSource = $('#dataSourceE').text();
- //dataSource = "NASA_QuikSCAT";
var x = document.getElementById("data2");
if(dataSource == "cccma_canesm2" ){
x.options[0].selected=true;
@@ -259,7 +246,6 @@
else if(dataSource == "ecmwf_interim" ){
x.options[25].selected=true;
}
- //$('#data option:contains('+dataSource+')').prop({selected: true});
}
function changeVariableName1(){
var var_string = $('#variableNameP').text();
@@ -409,8 +395,6 @@
}
}
}
-
- // select all months in the checkboxes
function select_all_months()
{
document.getElementById('Jan').checked = true;
@@ -426,8 +410,6 @@
document.getElementById('Nov').checked = true;
document.getElementById('Dec').checked = true;
}
-
- // see if no month is selected
function no_month_check()
{
if (document.getElementById('Jan').checked == false &&
@@ -442,14 +424,11 @@
document.getElementById('Oct').checked == false &&
document.getElementById('Nov').checked == false &&
document.getElementById('Dec').checked == false) {
- // alert("No month check!");
return true;
}
else
return false;
}
-
- // unselect all months in the checkboxes
function reset_months()
{
document.getElementById('Jan').checked = false;
@@ -465,11 +444,8 @@
document.getElementById('Nov').checked = false;
document.getElementById('Dec').checked = false;
}
-
- // disable customized input text boxes
function setDefault()
{
- // alert("in setDefault() ... ");
x=document.getElementById("min1");
y=document.getElementById("max1");
z=document.getElementById("bins1");
@@ -480,11 +456,8 @@
z.value = "N/A";
z.disabled=true;
}
-
- // enable customized input text boxes
function setCustomized()
{
- // alert("in setCustomized() ... ");
x=document.getElementById("min1");
y=document.getElementById("max1");
z=document.getElementById("bins1");
@@ -495,34 +468,25 @@
z.value = "";
z.disabled=false;
}
-
- // disable download data button
function disable_download_button()
{
var x=document.getElementById("download_data");
x.disabled=false;
}
-
- // enable download data button
function enable_download_button()
{
var x=document.getElementById("download_data");
x.disabled=false;
}
-
-
- // disable all vars1 in dropdown menu
function unset_vars1(ID)
{
var x;
-
if (ID == 1) {
x=document.getElementById("var1");
}
else if (ID == 2) {
x=document.getElementById("var2");
}
-
x.options[0].disabled=true;
x.options[1].disabled=true;
x.options[2].disabled=true;
@@ -557,9 +521,6 @@
x.options[31].disabled=true;
x.options[32].disabled=true;
}
-
-
- // disable pressure level box for 2D var
function disable_pres1(ID)
{
var x;
@@ -569,12 +530,9 @@
else if (ID == 2) {
x=document.getElementById("pres2");
}
-
x.value = "N/A";
x.disabled=true;
}
-
- // enable pressure level box for 3D var
function enable_pres1(ID)
{
var x;
@@ -586,37 +544,26 @@
x=document.getElementById("pres2");
x.value = "500";
}
-
x.disabled=false;
}
-
- // form variable1 or variable2 string based on "var" dropdown selection
function select_var1(ID)
{
var var_string;
-
if (ID == 1) {
var_string = $("#var1").val();
}
else if (ID == 2) {
var_string = $("#var2").val();
}
-
- // alert("var_string: " + var_string)
-
- // disable the download button because of this change
disable_download_button();
-
if (var_string == "Total Cloud Fraction") {
if (ID == 1) {
- variable1 = "clt"; // a 2D var
+ variable1 = "clt";
}
else if (ID == 2) {
- variable2 = "clt"; // a 2D var
+ variable2 = "clt";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
- // alert("variable1: " + variable1)
}
else if (var_string == "Surface Temperature") {
if (ID == 1) {
@@ -625,7 +572,6 @@
else if (ID == 2) {
variable2 = "ts";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Sea Surface Temperature") {
@@ -635,7 +581,6 @@
else if (ID == 2) {
variable2 = "tos";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Precipitation Flux") {
@@ -645,7 +590,6 @@
else if (ID == 2) {
variable2 = "pr";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Eastward Near-Surface Wind") {
@@ -655,7 +599,6 @@
else if (ID == 2) {
variable2 = "uas";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Northward Near-Surface Wind") {
@@ -665,7 +608,6 @@
else if (ID == 2) {
variable2 = "vas";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Near-Surface Wind Speed") {
@@ -675,7 +617,6 @@
else if (ID == 2) {
variable2 = "sfcWind";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Sea Surface Height") {
@@ -685,7 +626,6 @@
else if (ID == 2) {
variable2 = "zos";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Leaf Area Index") {
@@ -695,7 +635,6 @@
else if (ID == 2) {
variable2 = "lai";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Equivalent Water Height Over Land") {
@@ -705,7 +644,6 @@
else if (ID == 2) {
variable2 = "zl";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Equivalent Water Height Over Ocean") {
@@ -715,7 +653,6 @@
else if (ID == 2) {
variable2 = "zo";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Ocean Heat Content Anomaly within 700 m Depth") {
@@ -725,7 +662,6 @@
else if (ID == 2) {
variable2 = "ohc700";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Ocean Heat Content Anomaly within 2000 m Depth")
{
@@ -735,7 +671,6 @@
else if (ID == 2) {
variable2 = "ohc2000";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Surface Downwelling Longwave Radiation") {
@@ -745,7 +680,6 @@
else if (ID == 2) {
variable2 = "rlds";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Surface Downwelling Shortwave Radiation") {
@@ -755,7 +689,6 @@
else if (ID == 2) {
variable2 = "rsds";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Surface Upwelling Longwave Radiation") {
@@ -765,7 +698,6 @@
else if (ID == 2) {
variable2 = "rlus";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Surface Upwelling Shortwave Radiation") {
@@ -775,7 +707,6 @@
else if (ID == 2) {
variable2 = "rsus";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Surface Downwelling Clear-Sky Longwave
Radiation") {
@@ -785,7 +716,6 @@
else if (ID == 2) {
variable2 = "rldscs";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Surface Downwelling Clear-Sky Shortwave
Radiation") {
@@ -795,7 +725,6 @@
else if (ID == 2) {
variable2 = "rsdscs";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Surface Upwelling Clear-Sky Shortwave
Radiation") {
@@ -805,7 +734,6 @@
else if (ID == 2) {
variable2 = "rsuscs";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "TOA Incident Shortwave Radiation") {
@@ -815,7 +743,6 @@
else if (ID == 2) {
variable2 = "rsdt";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "TOA Outgoing Clear-Sky Longwave Radiation") {
@@ -825,7 +752,6 @@
else if (ID == 2) {
variable2 = "rlutcs";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "TOA Outgoing Longwave Radiation") {
@@ -835,7 +761,6 @@
else if (ID == 2) {
variable2 = "rlut";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "TOA Outgoing Clear-Sky Shortwave Radiation") {
@@ -845,7 +770,6 @@
else if (ID == 2) {
variable2 = "rsutcs";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "TOA Outgoing Shortwave Radiation") {
@@ -855,7 +779,6 @@
else if (ID == 2) {
variable2 = "rsut";
}
- // disable pressure level box for 2D var
disable_pres1(ID);
}
else if (var_string == "Air Temperature") {
@@ -865,7 +788,6 @@
else if (ID == 2) {
variable2 = "ta";
}
- // enable pressure level box for 3D var
enable_pres1(ID);
}
else if (var_string == "Specific Humidity") {
@@ -875,7 +797,6 @@
else if (ID == 2) {
variable2 = "hus";
}
- // enable pressure level box for 3D var
enable_pres1(ID);
}
else if (var_string == "Cloud Ice Water Content") {
@@ -885,7 +806,6 @@
else if (ID == 2) {
variable2 = "cli";
}
- // enable pressure level box for 3D var
enable_pres1(ID);
}
else if (var_string == "Cloud Liquid Water Content") {
@@ -895,7 +815,6 @@
else if (ID == 2) {
variable2 = "clw";
}
- // enable pressure level box for 3D var
enable_pres1(ID);
}
else if (var_string == "Ocean Temperature") {
@@ -905,7 +824,6 @@
else if (ID == 2) {
variable2 = "ot";
}
- // enable pressure level box for 3D var
enable_pres1(ID);
}
else if (var_string == "Ocean Salinity") {
@@ -915,7 +833,6 @@
else if (ID == 2) {
variable2 = "os";
}
- // enable pressure level box for 3D var
enable_pres1(ID);
}
else if (var_string == "Vertical Wind Velocity") {
@@ -925,7 +842,6 @@
else if (ID == 2) {
variable2 = "wap";
}
- // enable pressure level box for 3D var
enable_pres1(ID);
}
else if (var_string == "Relative Humidity") {
@@ -935,20 +851,13 @@
else if (ID == 2) {
variable2 = "hur";
}
- // enable pressure level box for 3D var
enable_pres1(ID);
}
-
- // alert("variable1: " + variable1)
}
-
-
- // set up "var1" dropdown based status of "data1" dropdown
function select_data1(ID)
{
var data_string;
var x;
-
if (ID == 1) {
data_string = $("#data1").val();
x = document.getElementById("var1");
@@ -957,106 +866,64 @@
data_string = $("#data2").val();
x = document.getElementById("var2");
}
-
- // alert(ID);
- // alert(data_string);
-
- // disable the download button because of this change
disable_download_button();
-
- // disable corresponding "var" options
if (data_string == "NASA/AMSRE") {
-
- unset_vars1(ID); // disable all options in "var" dropdown first
-
+ unset_vars1(ID);
x.options[3].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[3].disabled=false;
-
}
else if (data_string == "NASA/MODIS") {
-
unset_vars1(ID);
-
x.options[1].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[1].disabled=false;
x.options[8].disabled=false;
-
}
else if (data_string == "NASA/TRMM") {
-
unset_vars1(ID);
-
x.options[0].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[0].disabled=false;
-
}
else if (data_string == "NASA/GPCP") {
-
unset_vars1(ID);
-
x.options[0].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[0].disabled=false;
-
}
else if (data_string == "NASA/QuikSCAT") {
-
unset_vars1(ID);
-
x.options[4].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[4].disabled=false;
x.options[5].disabled=false;
x.options[6].disabled=false;
-
}
else if (data_string == "NASA/AVISO") {
-
unset_vars1(ID);
-
x.options[7].selected=true;
- disable_pres1(); // the selected one is 2D
-
+ disable_pres1();
x.options[7].disabled=false;
-
}
else if (data_string == "NASA/GRACE") {
-
unset_vars1(ID);
-
x.options[9].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[9].disabled=false;
x.options[10].disabled=false;
-
}
else if (data_string == "NOAA/NODC") {
-
unset_vars1(ID);
-
x.options[11].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[11].disabled=false;
x.options[12].disabled=false;
-
}
else if (data_string == "NASA/CERES") {
-
unset_vars1(ID);
-
x.options[13].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[13].disabled=false;
x.options[14].disabled=false;
x.options[15].disabled=false;
@@ -1069,65 +936,38 @@
x.options[22].disabled=false;
x.options[23].disabled=false;
x.options[24].disabled=false;
- // The following 6 commented out
- // per request by Benyang
- // x.options[25].disabled=false;
- // x.options[26].disabled=false;
- // x.options[27].disabled=false;
- // x.options[28].disabled=false;
- // x.options[29].disabled=false;
- // x.options[30].disabled=false;
-
}
else if (data_string == "NASA/AIRS") {
-
unset_vars1(ID);
-
x.options[25].selected=true;
- enable_pres1(ID); // the selected one is 3D
-
+ enable_pres1(ID);
x.options[25].disabled=false;
x.options[26].disabled=false;
-
}
else if (data_string == "NASA/MLS") {
-
unset_vars1(ID);
-
x.options[25].selected=true;
- enable_pres1(ID); // the selected one is 3D
-
+ enable_pres1(ID);
x.options[25].disabled=false;
x.options[26].disabled=false;
-
}
else if (data_string == "ARGO/ARGO") {
-
unset_vars1(ID);
-
x.options[29].selected=true;
- enable_pres1(ID); // the selected one is 3D
-
+ enable_pres1(ID);
x.options[29].disabled=false;
x.options[30].disabled=false;
-
- // alert("in ARGO ...");
- // alert(data_string);
}
else if (data_string == "CCCMA/CANAM4") {
-
unset_vars1(ID);
-
x.options[0].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[0].disabled=false;
x.options[1].disabled=false;
x.options[2].disabled=false;
x.options[4].disabled=false;
x.options[5].disabled=false;
x.options[6].disabled=false;
-
x.options[13].disabled=false;
x.options[14].disabled=false;
x.options[15].disabled=false;
@@ -1144,22 +984,17 @@
x.options[26].disabled=false;
x.options[27].disabled=false;
x.options[28].disabled=false;
-
}
else if (data_string == "CSIRO/MK3.6") {
-
unset_vars1(ID);
-
x.options[0].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[0].disabled=false;
x.options[1].disabled=false;
x.options[2].disabled=false;
x.options[4].disabled=false;
x.options[5].disabled=false;
x.options[6].disabled=false;
-
x.options[13].disabled=false;
x.options[14].disabled=false;
x.options[15].disabled=false;
@@ -1178,9 +1013,7 @@
x.options[28].disabled=false;
x.options[31].disabled=false;
x.options[32].disabled=false;
-
}
-
else if (data_string == "CCCMA/CANESM2" || data_string == "GFDL/ESM2G" ||
data_string == "GISS/E2-H" || data_string == "GISS/E2-R" ||
data_string == "NCAR/CAM5" || data_string == "NCC/NORESM" ||
@@ -1188,12 +1021,9 @@
data_string == "GFDL/CM3" || data_string == "IPSL/CM5A-LR" ||
data_string == "MIROC/MIROC5" || data_string == "UKMO/HadGEM2-A"
) {
-
unset_vars1(ID);
-
x.options[0].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[0].disabled=false;
x.options[1].disabled=false;
x.options[2].disabled=false;
@@ -1203,7 +1033,6 @@
x.options[6].disabled=false;
x.options[7].disabled=false;
x.options[8].disabled=false;
-
x.options[13].disabled=false;
x.options[14].disabled=false;
x.options[15].disabled=false;
@@ -1222,168 +1051,102 @@
x.options[28].disabled=false;
x.options[31].disabled=false;
x.options[32].disabled=false;
-
}
else if (data_string == "ECMWF/interim") {
unset_vars1(ID);
-
x.options[3].selected=true;
- disable_pres1(ID); // the selected one is 2D
-
+ disable_pres1(ID);
x.options[3].disabled=false;
x.options[31].disabled=false;
x.options[32].disabled=false;
}
-
- // form variable string
select_var1(ID);
}
-
- // select checkboxes based on "months" dropdown
function select_months()
{
var s1=document.getElementById("months");
- // alert(s1.selectedIndex);
- // alert(s1.options[s1.selectedIndex].value);
-
- // disable the download button because of this change
disable_download_button();
-
- // "select none"
if (s1.selectedIndex == 1) {
reset_months();
}
- // "select all"
if (s1.selectedIndex == 0) {
select_all_months();
}
- // "summer"
if (s1.selectedIndex == 2) {
reset_months();
document.getElementById('Jun').checked = true;
document.getElementById('Jul').checked = true;
document.getElementById('Aug').checked = true;
}
- // "autumn"
if (s1.selectedIndex == 3) {
reset_months();
document.getElementById('Sep').checked = true;
document.getElementById('Oct').checked = true;
document.getElementById('Nov').checked = true;
}
- // "winter"
if (s1.selectedIndex == 4) {
reset_months();
document.getElementById('Dec').checked = true;
document.getElementById('Jan').checked = true;
document.getElementById('Feb').checked = true;
}
- // "spring"
if (s1.selectedIndex == 5) {
reset_months();
document.getElementById('Mar').checked = true;
document.getElementById('Apr').checked = true;
document.getElementById('May').checked = true;
}
-
}
-
-
$(document).ready(function(){
-
- /* $("a").click(function(event){
- alert("As you can see, the link no longer took you to jquery.com");
- event.preventDefault();
- }); */
-
-
$("#download_data").click(function(event) {
var durl = $("#data_url").val();
- // alert(durl);
window.location.assign(durl);
});
-
-
$("#conditionalSamp").click(function(event) {
- // alert('****** inside conditionalSamp()!');
Response = null;
-
- // no data to download yet
disable_download_button();
-
- // flag error if no month box is checked
if (no_month_check()) {
- // $("#Response").html("<span style='color:red'>Error: please check
at least one month.</span>");
$("#Response").html("Error: please check at least one month.");
$("#Image").html("");
return;
}
-
$("#Response").html("Calculating ...");
$("#data_url").html("Calculating ...");
$("#Image").html("");
-
- // sample url:
http://cmacws.jpl.nasa.gov:9002/svc/conditionalSampling?model1=ukmo_hadgem2-a&var1=ts&pres1=200&model2=ukmo_hadgem2-a&var2=clt&pres2=200&start_time=199001&end_time=199512&lon1=0&lon2=100&lat1=-29&lat2=29
- // form url string
- // var url = "http://cmacws.jpl.nasa.gov:9002/svc/conditionalSamp?";
- var url = "http://" + window.location.hostname +
":9002/svc/conditionalSampling?";
- // alert("url: " + url);
-
+ var url = "http:
var d1 = $("#data1").val();
var model1 = d1.replace("/", "_");
model1 = model1.toLowerCase();
-
var arglist = "";
arglist = arglist.concat("model1=");
arglist = arglist.concat(model1);
-
- // alert("arglist: " + arglist);
-
var v1 = $("#var1").val();
arglist = arglist.concat("&var1=");
arglist = arglist.concat(variable1);
-
- // alert("arglist: " + arglist);
-
-
var t0 = $("#t0").val();
var t1 = $("#t1").val();
-
t0 = t0.replace("-", "");
t1 = t1.replace("-", "");
-
arglist = arglist.concat("&start_time=");
arglist = arglist.concat(t0);
-
arglist = arglist.concat("&end_time=");
arglist = arglist.concat(t1);
-
var lon0 = $("#lon0").val();
var lon1 = $("#lon1").val();
var lat0 = $("#lat0").val();
var lat1 = $("#lat1").val();
-
arglist = arglist.concat("&lon1=");
arglist = arglist.concat(lon0);
-
arglist = arglist.concat("&lon2=");
arglist = arglist.concat(lon1);
-
arglist = arglist.concat("&lat1=");
arglist = arglist.concat(lat0);
-
arglist = arglist.concat("&lat2=");
arglist = arglist.concat(lat1);
-
- // alert("arglist: " + arglist);
-
-
var press_range = $("#pres1").val();
- // alert("press_range: " + press_range);
var pres1;
var pres2;
if (press_range != 'N/A') {
- // split the range into two pressures
var splitty = press_range.split(",");
if (splitty.length != 2) {
alert("pressure level range needs to be two values separated by
comma.");
@@ -1392,17 +1155,13 @@
else {
pres1 = splitty[0];
pres2 = splitty[1];
- // alert("variable1: " + variable1);
-
- // when variable is the 3D Ocean Salinity or Ocean Temperature
if (variable1 == 'ot' || variable1 == 'os') {
- pres1 = pres1 * 10000; // convert from dbar on GUI
- pres2 = pres2 * 10000; // convert from dbar on GUI
+ pres1 = pres1 * 10000;
+ pres2 = pres2 * 10000;
}
- // when variable2 is 3D atmosphere var
else {
- pres1 = pres1 * 100; // convert from hPa on GUI
- pres2 = pres2 * 100; // convert from hPa on GUI
+ pres1 = pres1 * 100;
+ pres2 = pres2 * 100;
}
}
}
@@ -1410,189 +1169,116 @@
pres1 = "-1";
pres2 = "-1";
}
-
arglist = arglist.concat("&pres1=");
arglist = arglist.concat(pres1);
arglist = arglist.concat("&pres2=");
arglist = arglist.concat(pres2);
-
- // alert("arglist: " + arglist);
-
-
var s1 = document.getElementById('months');
-
- // get months checked by client
var month_str = "";
-
var mm = document.getElementById('Jan');
if (mm.checked == true)
month_str = month_str.concat(",1");
-
var mm = document.getElementById('Feb');
if (mm.checked == true)
month_str = month_str.concat(",2");
-
var mm = document.getElementById('Mar');
if (mm.checked == true)
month_str = month_str.concat(",3");
-
var mm = document.getElementById('Apr');
if (mm.checked == true)
month_str = month_str.concat(",4");
-
var mm = document.getElementById('May');
if (mm.checked == true)
month_str = month_str.concat(",5");
var mm = document.getElementById('Jun');
if (mm.checked == true)
month_str = month_str.concat(",6");
-
var mm = document.getElementById('Jul');
if (mm.checked == true)
month_str = month_str.concat(",7");
-
var mm = document.getElementById('Aug');
if (mm.checked == true)
month_str = month_str.concat(",8");
-
var mm = document.getElementById('Sep');
if (mm.checked == true)
month_str = month_str.concat(",9");
-
var mm = document.getElementById('Oct');
if (mm.checked == true)
month_str = month_str.concat(",10");
-
var mm = document.getElementById('Nov');
if (mm.checked == true)
month_str = month_str.concat(",11");
-
var mm = document.getElementById('Dec');
if (mm.checked == true)
month_str = month_str.concat(",12");
-
- // remove the leading ','
month_str = month_str.substr(1);
- // alert(month_str);
-
arglist = arglist.concat("&months=");
arglist = arglist.concat(month_str);
-
- // alert("arglist: " + arglist);
-
-
-
-
-
-
var d2 = $("#data2").val();
var model2 = d2.replace("/", "_");
model2 = model2.toLowerCase();
-
arglist = arglist.concat("&model2=");
arglist = arglist.concat(model2);
-
- // alert("arglist: " + arglist);
-
var v2 = $("#var2").val();
arglist = arglist.concat("&var2=");
arglist = arglist.concat(variable2);
-
- // alert("arglist: " + arglist);
-
var plev = $("#pres2").val();
if (plev == "N/A")
plev = "-1";
-
- // when variable is the 3D Ocean Salinity or Ocean Temperature
if (variable2 == 'ot' || variable2 == 'os') {
- plev = plev * 10000; // convert from dbar on GUI
+ plev = plev * 10000;
}
- // when variable2 is 3D atmosphere var
else {
- plev = plev * 100; // convert from hPa on GUI
+ plev = plev * 100;
}
-
-
arglist = arglist.concat("&env_var_plev=");
arglist = arglist.concat(plev);
-
- // alert("arglist: " + arglist);
-
var binstate = document.getElementById('radioDef').checked;
-
var binMin, binMax, numBins;
-
- if (binstate == true) { // default
+ if (binstate == true) {
binMin = "-1";
binMax = "-1";
numBins = "-1";
}
- else { // customized
+ else {
binMin = $("#min1").val();
binMax = $("#max1").val();
numBins = $("#bins1").val();
}
-
arglist = arglist.concat("&bin_min=");
arglist = arglist.concat(binMin);
arglist = arglist.concat("&bin_max=");
arglist = arglist.concat(binMax);
arglist = arglist.concat("&bin_n=");
arglist = arglist.concat(numBins);
-
- // alert("arglist: " + arglist);
-
var xstate = document.getElementById('radioXLin').checked;
var xvalue;
-
if (xstate == true)
xvalue = 0;
else
xvalue = 1;
-
- // alert("xvalue: " + xvalue);
-
var ystate = document.getElementById('radioYLin').checked;
var yvalue;
-
if (ystate == true)
yvalue = 0;
else
yvalue = 1;
-
- // alert("yvalue: " + yvalue);
-
var zstate = document.getElementById('radioZLin').checked;
var zvalue;
-
if (zstate == true)
zvalue = 0;
else
zvalue = 1;
-
- // alert("zvalue: " + zvalue);
-
var dispOpt;
dispOpt = xvalue*1 + yvalue*2 + zvalue*4;
- // alert("dispOpt: " + dispOpt);
var dispOptString = dispOpt.toString();
-
arglist = arglist.concat("&displayOpt=");
arglist = arglist.concat(dispOptString);
-
- // alert("arglist: " + arglist);
-
var purpose = $("#purpose").val();
arglist = arglist.concat("&purpose=");
arglist = arglist.concat(purpose);
-
- // url = url + encodeURIComponent(arglist);
url = url + encodeURI(arglist);
- // url = url + arglist;
- //alert("url: " + url);
-
- var urlTimeBounds = "http://" + window.location.hostname +
":9002/svc/two_time_bounds?";
+ var urlTimeBounds = "http:
var arglistTB = "";
arglistTB = arglistTB.concat("serviceType=");
arglistTB = arglistTB.concat("1");
@@ -1605,8 +1291,6 @@
arglistTB = arglistTB.concat("&var2=");
arglistTB = arglistTB.concat(variable2);
urlTimeBounds = urlTimeBounds + encodeURI(arglistTB);
- //alert("urlTimeBounds: " + urlTimeBounds);
-
$.ajax({
type: "GET",
url: urlTimeBounds,
@@ -1614,9 +1298,7 @@
data: null,
success: function(data, textStatus, xhr) {
Response = data;
- // alert("data: " + data);
if (data.success == false) {
- // alert(data.error);
Response = null;
var text = JSON.stringify(data, null, 4);
text = "Error in backend: <br>" + text;
@@ -1625,82 +1307,56 @@
return;
}
var text = JSON.stringify(data, null, 4);
- // alert("text: " + text);
- // $("#Response").html("<pre>"+text+"</pre>");
- // $("#Response").html(text);
-
var tb1 = data.time_bounds1;
var bds1 = String(tb1).split(",");
- // alert("tb1: " + tb1);
- // alert("bds1: " + bds1);
var lowerT1 = parseInt(bds1[0]);
- // alert("inside ajax, lowerT1: " + lowerT1);
var upperT1 = parseInt(bds1[1]);
- // alert("upperT1: " + upperT1);
-
var tb2 = data.time_bounds2;
var bds2 = String(tb2).split(",");
- // alert("tb2: " + tb2);
- // alert("bds2: " + bds2);
var lowerT2 = parseInt(bds2[0]);
- // alert("inside ajax, lowerT2: " + lowerT2);
var upperT2 = parseInt(bds2[1]);
- // alert("upperT2: " + upperT2);
-
var t0I = parseInt(t0);
var t1I = parseInt(t1);
- // alert("t0: " + t0I);
- // alert("t1: " + t1I);
-
var lowerT, upperT;
- // compute the intersection of the two data bounds
-
- if (lowerT1 == 0 || upperT1 == 0){ // no data-1
+ if (lowerT1 == 0 || upperT1 == 0){
alert("We do not have data for the data-1 source and
variable configuration.");
return;
}
- else if (lowerT2 == 0 || upperT2 == 0){ // no data-2
+ else if (lowerT2 == 0 || upperT2 == 0){
alert("We do not have data for the data-2 source and
variable configuration.");
return;
}
- else if (lowerT2 > upperT1 || lowerT1 > upperT2) { // no
intersection
+ else if (lowerT2 > upperT1 || lowerT1 > upperT2) {
alert("The two data sets/vars do not have a common time
range.");
return;
}
- else { // compute intersection
- if (lowerT1 > lowerT2) { // pick bigger lower time bound
+ else {
+ if (lowerT1 > lowerT2) {
lowerT = lowerT1;
}
else {
lowerT = lowerT2;
}
-
- if (upperT1 > upperT2) { // pick smaller upper time bound
+ if (upperT1 > upperT2) {
upperT = upperT2;
}
else {
upperT = upperT1;
}
}
- // alert("lowerT: " + lowerT);
- // alert("upperT: " + upperT);
-
if (t0I < lowerT && t1I < lowerT ||
t0I > upperT && t1I > upperT) {
alert("We do not have data that span your time range. Try
the range inside ["+lowerT+", "+upperT+"].");
return;
}
-
if (t0I < lowerT && t1I <= upperT) {
alert("Your start year-month is out of bound. It has to be
in or later than " + lowerT +
". We will use the range ["+lowerT+", "+t1I+"] for
you.");
}
-
if (t1I > upperT && t0I >= lowerT) {
alert("Your end year-month is out of bound. It has to be in
or earlier than " + upperT +
". We will use the range ["+t0I+", "+upperT+"] for
you.");
}
-
if (t0I < lowerT && t1I > upperT ) {
alert("Both of your start and end year-months are out of
bounds. They have to be in or earlier than " + upperT +
", and in or later than " + lowerT + ". We will use
the range ["+lowerT+", "+upperT+"] for you.");
@@ -1709,15 +1365,10 @@
error: function(xhr, textStatus, errorThrown) {
$("#Response").html("error!");
$("#data_url").html("error!");
- // alert("xhr.status: "+xhr.status);
- // alert("error status: "+textStatus);
},
complete: function(xhr, textStatus) {
- //alert("complete status: "+textStatus);
}
});
-
-
$.ajax({
type: "GET",
url: url,
@@ -1725,53 +1376,33 @@
data: null,
success: function(data, textStatus, xhr) {
Response = data;
- // alert("data: " + data);
if (data.success == false) {
- // alert(data.error);
Response = null;
var text = JSON.stringify(data, null, 4);
text = "Error in backend: <br>" + text;
- // $("#Response").html("<span style='color:red'>" + text +
"</span>");
$("#Response").html(text);
$("#data_url").html(text);
return;
}
var text = JSON.stringify(data, null, 4);
- // alert(text);
- // $("#Response").html("<pre>"+text+"</pre>");
$("#Response").html(text);
-
var html = "<img src='"+data.url+"' width='820'/>";
- // alert(html);
$("#Image").html(html);
-
- // post dataUrl to textarea and enable download button
$("#data_url").html(data.dataUrl);
enable_download_button();
},
error: function(xhr, textStatus, errorThrown) {
$("#Response").html("error!");
$("#data_url").html("error!");
- // alert("xhr.status: "+xhr.status);
- // alert("error status: "+textStatus);
},
complete: function(xhr, textStatus) {
- //alert("complete status: "+textStatus);
}
});
-
});
-
});
-
</script>
- }
-
- @main("Parameters of ConfId", scripts){
-
- @flash_message()
-
- <p>
+} @main("Parameters of ConfId", scripts){ @flash_message()
+<p>
<div id="dataSourceP" style="display: none;">@parameters.getDataSourceP()</div>
<div id="variableNameP" style="display:
none;">@parameters.getVariableNameP()</div>
<div id="pressureRangeP" style="display:
none;">@parameters.getPressureRangeP()</div>
@@ -1780,7 +1411,7 @@
<div id="pressureRangeE" style="display:
none;">@parameters.getPressureRangeE()</div>
<div id="startYearMonth" style="display:
none;">@parameters.getStartYearMonth()</div>
<div id="endYearMonth" style="display:
none;">@parameters.getEndYearMonth()</div>
-<div id="selectMonths" style="display: none;"
>@parameters.getSelectMonths()</div>
+<div id="selectMonths" style="display:
none;">@parameters.getSelectMonths()</div>
<div id="monthsPara" style="display: none;">@parameters.getMonth()</div>
<div id="startLat" style="display: none;">@parameters.getStartLat()</div>
<div id="endLat" style="display: none;">@parameters.getEndLat()</div>
@@ -1789,7 +1420,7 @@
<div id="div_X" style="display: none;">@parameters.getX()</div>
<div id="div_Y" style="display: none;">@parameters.getY()</div>
<div id="div_Z" style="display: none;">@parameters.getZ()</div>
-<div id="binMin" style="display: none;" >@parameters.getBin_min()</div>
+<div id="binMin" style="display: none;">@parameters.getBin_min()</div>
<div id="binMax" style="display: none;">@parameters.getBin_max()</div>
<div id="binNum" style="display: none;">@parameters.getBin_n()</div>
<div id="executionPurpose" style="display:
none;">@parameters.getExecutionPurpose()</div>
@@ -1797,352 +1428,317 @@
<div id="dataURL" style="display: none;">@parameters.getDataURL()</div>
<div id="serviceResponseText" style="display:
none;">@parameters.getServiceResponseText()</div>
<table border="1" align="center">
-
-<tr>
-<td colspan="4">
-<center>
-<b>Service: Conditional Sampling with One Variable</b><br><br>
-This service sorts one variable by the values of another variable
(environmental condition, e.g. SST)
-and displays the averaged value of the first variable as a function of the bin
value of the second variable.
-If the first variable is a two-dimensional variable, the plot will be a X-Y
plot.
-If the first variable is a three-dimensional variable, the plot will be a
colored profile image. <br><br>
-</center>
-</td>
-</tr>
-
-<tr>
-<td colspan="2">
-<center>
-Physical Variable (sampled variable)
-</center>
-</td>
-
-<td colspan="2">
-<center>
-Environmental Variable (sampling variable)
-</center>
-</td>
-</tr>
-
-<tr>
-<td>source:</td><td><select name="data1", id="data1"
onchange="select_data1(1)">
-<optgroup label="Model: Historical">
-<option selected="CCCMA/CANESM2">CCCMA/CANESM2</option>
-<option>GFDL/ESM2G</option>
-<option>GISS/E2-H</option>
-<option>GISS/E2-R</option>
-<option>NCAR/CAM5</option>
-<option>NCC/NORESM</option>
-<option>UKMO/HadGEM2-ES</option>
-</optgroup>
-<optgroup label="Model: AMIP">
-<option>CCCMA/CANAM4</option>
-<option>CSIRO/MK3.6</option>
-<option>GFDL/CM3</option>
-<option>IPSL/CM5A-LR</option>
-<option>MIROC/MIROC5</option>
-<option>UKMO/HadGEM2-A</option>
-</optgroup>
-<!-- <option>NASA/obs4MIPs</option> -->
-<optgroup label="Observation">
-<option>NASA/MODIS</option>
-<option>NASA/AMSRE</option>
-<option>NASA/TRMM</option>
-<option>NASA/GPCP</option>
-<option>NASA/QuikSCAT</option>
-<option>NASA/AVISO</option>
-<option>NASA/GRACE</option>
-<option>NOAA/NODC</option>
-<option>NASA/CERES</option>
-<option>NASA/AIRS</option>
-<option>NASA/MLS</option>
-<option>ARGO/ARGO</option>
-</optgroup>
-<optgroup label="Reanalysis">
-<option>ECMWF/interim</option>
-</optgroup>
-</select></td>
-
-<td>source:</td><td><select name="data2", id="data2"
onchange="select_data1(2)">
-<optgroup label="Model: Historical">
-<option selected="CCCMA/CANESM2">CCCMA/CANESM2</option>
-<option>GFDL/ESM2G</option>
-<option>GISS/E2-H</option>
-<option>GISS/E2-R</option>
-<option>NCAR/CAM5</option>
-<option>NCC/NORESM</option>
-<option>UKMO/HadGEM2-ES</option>
-</optgroup>
-<optgroup label="Model: AMIP">
-<option>CCCMA/CANAM4</option>
-<option>CSIRO/MK3.6</option>
-<option>GFDL/CM3</option>
-<option>IPSL/CM5A-LR</option>
-<option>MIROC/MIROC5</option>
-<option>UKMO/HadGEM2-A</option>
-</optgroup>
-<!-- <option>NASA/obs4MIPs</option> -->
-<optgroup label="Observation">
-<option>NASA/MODIS</option>
-<option>NASA/AMSRE</option>
-<option>NASA/TRMM</option>
-<option>NASA/GPCP</option>
-<option>NASA/QuikSCAT</option>
-<option>NASA/AVISO</option>
-<option>NASA/GRACE</option>
-<option>NOAA/NODC</option>
-<option>NASA/CERES</option>
-<option>NASA/AIRS</option>
-<option>NASA/MLS</option>
-<option>ARGO/ARGO</option>
-</optgroup>
-<optgroup label="Reanalysis">
-<option>ECMWF/interim</option>
-</optgroup>
-</select></td>
-
-</tr>
-
-<tr>
-
-<td>variable name:</td><td><select name="var1", id="var1"
onchange="select_var1(1)">
-<option>Precipitation Flux</option>
-<option>Total Cloud Fraction</option>
-<option>Surface Temperature</option>
-<option>Sea Surface Temperature</option>
-<option>Eastward Near-Surface Wind</option>
-<option>Northward Near-Surface Wind</option>
-<option>Near-Surface Wind Speed</option>
-<option>Sea Surface Height</option>
-<option>Leaf Area Index</option>
-<option>Equivalent Water Height Over Land</option>
-<option>Equivalent Water Height Over Ocean</option>
-<option>Ocean Heat Content Anomaly within 700 m Depth</option>
-<option>Ocean Heat Content Anomaly within 2000 m Depth</option>
-<option>Surface Downwelling Longwave Radiation</option>
-<option>Surface Downwelling Shortwave Radiation</option>
-<option>Surface Upwelling Longwave Radiation</option>
-<option>Surface Upwelling Shortwave Radiation</option>
-<option>Surface Downwelling Clear-Sky Longwave Radiation</option>
-<option>Surface Downwelling Clear-Sky Shortwave Radiation</option>
-<option>Surface Upwelling Clear-Sky Shortwave Radiation</option>
-<option>TOA Incident Shortwave Radiation</option>
-<option>TOA Outgoing Longwave Radiation</option>
-<option>TOA Outgoing Shortwave Radiation</option>
-<option>TOA Outgoing Clear-Sky Longwave Radiation</option>
-<option>TOA Outgoing Clear-Sky Shortwave Radiation</option>
-<option>Air Temperature</option>
-<option>Specific Humidity</option>
-<option>Cloud Ice Water Content</option>
-<option>Cloud Liquid Water Content</option>
-<option>Ocean Temperature</option>
-<option>Ocean Salinity</option>
-<option>Vertical Wind Velocity</option>
-<option>Relative Humidity</option>
-</select>
-</td>
-
-
-<td>variable name:</td><td><select name="var2", id="var2"
onchange="select_var1(2)">
-<option>Precipitation Flux</option>
-<option>Total Cloud Fraction</option>
-<option>Surface Temperature</option>
-<option>Sea Surface Temperature</option>
-<option>Eastward Near-Surface Wind</option>
-<option>Northward Near-Surface Wind</option>
-<option>Near-Surface Wind Speed</option>
-<option>Sea Surface Height</option>
-<option>Leaf Area Index</option>
-<option>Equivalent Water Height Over Land</option>
-<option>Equivalent Water Height Over Ocean</option>
-<option>Ocean Heat Content Anomaly within 700 m Depth</option>
-<option>Ocean Heat Content Anomaly within 2000 m Depth</option>
-<option>Surface Downwelling Longwave Radiation</option>
-<option>Surface Downwelling Shortwave Radiation</option>
-<option>Surface Upwelling Longwave Radiation</option>
-<option>Surface Upwelling Shortwave Radiation</option>
-<option>Surface Downwelling Clear-Sky Longwave Radiation</option>
-<option>Surface Downwelling Clear-Sky Shortwave Radiation</option>
-<option>Surface Upwelling Clear-Sky Shortwave Radiation</option>
-<option>TOA Incident Shortwave Radiation</option>
-<option>TOA Outgoing Longwave Radiation</option>
-<option>TOA Outgoing Shortwave Radiation</option>
-<option>TOA Outgoing Clear-Sky Longwave Radiation</option>
-<option>TOA Outgoing Clear-Sky Shortwave Radiation</option>
-<option>Air Temperature</option>
-<option>Specific Humidity</option>
-<option>Cloud Ice Water Content</option>
-<option>Cloud Liquid Water Content</option>
-<option>Ocean Temperature</option>
-<option>Ocean Salinity</option>
-<option>Vertical Wind Velocity</option>
-<option>Relative Humidity</option>
-</select>
-</td>
-
-</tr>
-
-<tr>
-
-<td>
-atmosphere pressure range (hPa) <br> or ocean pressure range (dbar):
-</td>
-<td>
-<input id="pres1" value="200, 900" alt="pressure"/>
-</td>
-
-<td>
-atmosphere pressure level (hPa) <br> or ocean pressure level (dbar):
-</td>
-<td>
-<input id="pres2" value="500" alt="pressure"/>
-</td>
-
-</tr>
-
-<tr>
-</tr>
-
-<tr>
-<td>start year-month:</td><td><input id="t0" value="2004-01" alt="start"/></td>
-<td>end year-month:</td><td><input id="t1" value="2004-12" alt="end"/></td>
-</tr>
-
-
-<tr>
-<td>select months:</td>
-<td><select name="months" id="months" onchange="select_months()">
-<option id="all">select all</option>
-<option id="none">select none</option>
-<option id="summer">Summer:Jun-Jul-Aug</option>
-<option id="autum">Autumn:Sep-Oct-Nov</option>
-<option id="winter">Winter:Dec-Jan-Feb</option>
-<option id="spring">Spring:Mar-Apr-May</option> </select>
-</td>
-<td>
-</td>
-<td>
-</tr>
-
-<tr>
-<td>
-<label><input type="checkbox" name="option1" id="Jan" value="Jan" />
Jan<br></label>
-<label><input type="checkbox" name="option1" id="Feb" value="Feb" />
Feb<br></label>
-<label><input type="checkbox" name="option1" id="Mar" value="Mar" />
Mar<br></label>
-</td>
-<td>
-<label><input type="checkbox" name="option1" id="Apr" value="Apr" />
Apr<br></label>
-<label><input type="checkbox" name="option1" id="May" value="May" />
May<br></label>
-<label><input type="checkbox" name="option1" id="Jun" value="Jun" />
Jun<br></label>
-</td>
-<td>
-<label><input type="checkbox" name="option1" id="Jul" value="Jul" />
Jul<br></label>
-<label><input type="checkbox" name="option1" id="Aug" value="Aug" />
Aug<br></label>
-<label><input type="checkbox" name="option1" id="Sep" value="Sep" />
Sep<br></label>
-</td>
-<td>
-<label><input type="checkbox" name="option1" id="Oct" value="Oct" />
Oct<br></label>
-<label><input type="checkbox" name="option1" id="Nov" value="Nov" />
Nov<br></label>
-<label><input type="checkbox" name="option1" id="Dec" value="Dec" />
Dec<br></label>
-</td>
-</tr>
-
-
-<tr>
-<td>start lat (deg):</td><td><input id="lat0" value="-90"/></td>
-<td>end lat (deg):</td><td><input id="lat1" value="90"/></td>
-</tr>
-
-<tr>
-<td>start lon (deg):</td><td><input id="lon0" value="0"/></td>
-<td>end lon (deg):</td><td><input id="lon1" value="360"/></td>
-</tr>
-
-
-<tr>
-<td colspan="1" rowspan="3">
-display option:
-</td>
-<td colspan="3">
-<form>X-axis (sampling variable) scale: <input type="radio" name="scale1"
value="linear" id="radioXLin" checked>linear
-<input type="radio" name="scale1" value="logarithmic"
id="radioXLog">logarithmic
-</form>
-</td>
-</tr>
-
-<tr>
-<td colspan="3">
-<form>Y-axis (sampled variable or pressure) scale: <input type="radio"
name="scale1" value="linear" id="radioYLin" checked>linear
-<input type="radio" name="scale1" value="logarithmic"
id="radioYLog">logarithmic
-</form>
-</tr>
-
-<tr>
-<td colspan="3">
-<form>Z-axis (color) scale: <input type="radio" name="scale1" value="linear"
id="radioZLin" checked>linear
-<input type="radio" name="scale1" value="logarithmic"
id="radioZLog">logarithmic
-</form>
-</td>
-</tr>
-
-
-<tr>
-<td colspan="1" rowspan="2">
-sampling variable binning specification:
-</td>
-<td colspan="3">
-<form>default: <input onclick="setDefault()" type="radio" name="default1"
value="" id="radioDef" checked>
-</td>
-</tr>
-<tr>
-<td colspan="3">
-customized: <input onclick="setCustomized()" type="radio" name="default1"
value="" id="radioCus">
-Min: <input id="min1" value="" alt=""/>
-Max: <input id="max1" value="" alt=""/>
-number of bins: <input id="bins1" value="" alt=""/>
-</form>
-</td>
-
-</tr>
-
-<tr>
-<td colspan="1">
-Execution purpose
-</td>
-<td colspan="3">
-<form>
-<textarea name="purpose" id="purpose" rows="4" cols="50"> </textarea>
-</form>
-</td>
-</tr>
-
-
-<tr>
-<td colspan="2" align="center"><input id="conditionalSamp" type="submit"
value=" Run Again " style="height:28px"/></td>
-<form>
-<td colspan="2" align="center"><input id="download_data" type="button"
value="Download Data" style="height:28px"/>
-</td>
-</form>
-
-</tr>
-
-<tr>
-<td colspan="4">
-<div id="Image">Image Here</div>
-</td>
-</tr>
-
-<tr>
-<td colspan="4" align="center">
-<textarea readonly id="data_url" cols="150" rows="2">Data URL Here</textarea>
-</td>
-</tr>
-
-<tr>
-<td colspan="4" align="center">
-<textarea id="Response" cols="150" rows="6">Service Response Text
Here</textarea>
-</td>
-</tr>
-
+ <tr>
+ <td colspan="4">
+ <center>
+ <b>Service: Conditional Sampling with One
Variable</b><br>
+ <br> This service sorts one variable by the
values of another
+ variable (environmental condition, e.g. SST)
and displays the
+ averaged value of the first variable as a
function of the bin value
+ of the second variable. If the first variable
is a two-dimensional
+ variable, the plot will be a X-Y plot. If the
first variable is a
+ three-dimensional variable, the plot will be a
colored profile
+ image. <br>
+ <br>
+ </center>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2">
+ <center>Physical Variable (sampled variable)</center>
+ </td>
+ <td colspan="2">
+ <center>Environmental Variable (sampling
variable)</center>
+ </td>
+ </tr>
+ <tr>
+ <td>source:</td>
+ <td><select name="data1" , id="data1"
onchange="select_data1(1)">
+ <optgroup label="Model: Historical">
+ <option
selected="CCCMA/CANESM2">CCCMA/CANESM2</option>
+ <option>GFDL/ESM2G</option>
+ <option>GISS/E2-H</option>
+ <option>GISS/E2-R</option>
+ <option>NCAR/CAM5</option>
+ <option>NCC/NORESM</option>
+ <option>UKMO/HadGEM2-ES</option>
+ </optgroup>
+ <optgroup label="Model: AMIP">
+ <option>CCCMA/CANAM4</option>
+ <option>CSIRO/MK3.6</option>
+ <option>GFDL/CM3</option>
+ <option>IPSL/CM5A-LR</option>
+ <option>MIROC/MIROC5</option>
+ <option>UKMO/HadGEM2-A</option>
+ </optgroup>
+ <optgroup label="Observation">
+ <option>NASA/MODIS</option>
+ <option>NASA/AMSRE</option>
+ <option>NASA/TRMM</option>
+ <option>NASA/GPCP</option>
+ <option>NASA/QuikSCAT</option>
+ <option>NASA/AVISO</option>
+ <option>NASA/GRACE</option>
+ <option>NOAA/NODC</option>
+ <option>NASA/CERES</option>
+ <option>NASA/AIRS</option>
+ <option>NASA/MLS</option>
+ <option>ARGO/ARGO</option>
+ </optgroup>
+ <optgroup label="Reanalysis">
+ <option>ECMWF/interim</option>
+ </optgroup>
+ </select></td>
+ <td>source:</td>
+ <td><select name="data2" , id="data2"
onchange="select_data1(2)">
+ <optgroup label="Model: Historical">
+ <option
selected="CCCMA/CANESM2">CCCMA/CANESM2</option>
+ <option>GFDL/ESM2G</option>
+ <option>GISS/E2-H</option>
+ <option>GISS/E2-R</option>
+ <option>NCAR/CAM5</option>
+ <option>NCC/NORESM</option>
+ <option>UKMO/HadGEM2-ES</option>
+ </optgroup>
+ <optgroup label="Model: AMIP">
+ <option>CCCMA/CANAM4</option>
+ <option>CSIRO/MK3.6</option>
+ <option>GFDL/CM3</option>
+ <option>IPSL/CM5A-LR</option>
+ <option>MIROC/MIROC5</option>
+ <option>UKMO/HadGEM2-A</option>
+ </optgroup>
+ <optgroup label="Observation">
+ <option>NASA/MODIS</option>
+ <option>NASA/AMSRE</option>
+ <option>NASA/TRMM</option>
+ <option>NASA/GPCP</option>
+ <option>NASA/QuikSCAT</option>
+ <option>NASA/AVISO</option>
+ <option>NASA/GRACE</option>
+ <option>NOAA/NODC</option>
+ <option>NASA/CERES</option>
+ <option>NASA/AIRS</option>
+ <option>NASA/MLS</option>
+ <option>ARGO/ARGO</option>
+ </optgroup>
+ <optgroup label="Reanalysis">
+ <option>ECMWF/interim</option>
+ </optgroup>
+ </select></td>
+ </tr>
+ <tr>
+ <td>variable name:</td>
+ <td><select name="var1" , id="var1" onchange="select_var1(1)">
+ <option>Precipitation Flux</option>
+ <option>Total Cloud Fraction</option>
+ <option>Surface Temperature</option>
+ <option>Sea Surface Temperature</option>
+ <option>Eastward Near-Surface Wind</option>
+ <option>Northward Near-Surface Wind</option>
+ <option>Near-Surface Wind Speed</option>
+ <option>Sea Surface Height</option>
+ <option>Leaf Area Index</option>
+ <option>Equivalent Water Height Over
Land</option>
+ <option>Equivalent Water Height Over
Ocean</option>
+ <option>Ocean Heat Content Anomaly within 700 m
Depth</option>
+ <option>Ocean Heat Content Anomaly within 2000
m Depth</option>
+ <option>Surface Downwelling Longwave
Radiation</option>
+ <option>Surface Downwelling Shortwave
Radiation</option>
+ <option>Surface Upwelling Longwave
Radiation</option>
+ <option>Surface Upwelling Shortwave
Radiation</option>
+ <option>Surface Downwelling Clear-Sky Longwave
Radiation</option>
+ <option>Surface Downwelling Clear-Sky Shortwave
Radiation</option>
+ <option>Surface Upwelling Clear-Sky Shortwave
Radiation</option>
+ <option>TOA Incident Shortwave
Radiation</option>
+ <option>TOA Outgoing Longwave Radiation</option>
+ <option>TOA Outgoing Shortwave
Radiation</option>
+ <option>TOA Outgoing Clear-Sky Longwave
Radiation</option>
+ <option>TOA Outgoing Clear-Sky Shortwave
Radiation</option>
+ <option>Air Temperature</option>
+ <option>Specific Humidity</option>
+ <option>Cloud Ice Water Content</option>
+ <option>Cloud Liquid Water Content</option>
+ <option>Ocean Temperature</option>
+ <option>Ocean Salinity</option>
+ <option>Vertical Wind Velocity</option>
+ <option>Relative Humidity</option>
+ </select></td>
+ <td>variable name:</td>
+ <td><select name="var2" , id="var2" onchange="select_var1(2)">
+ <option>Precipitation Flux</option>
+ <option>Total Cloud Fraction</option>
+ <option>Surface Temperature</option>
+ <option>Sea Surface Temperature</option>
+ <option>Eastward Near-Surface Wind</option>
+ <option>Northward Near-Surface Wind</option>
+ <option>Near-Surface Wind Speed</option>
+ <option>Sea Surface Height</option>
+ <option>Leaf Area Index</option>
+ <option>Equivalent Water Height Over
Land</option>
+ <option>Equivalent Water Height Over
Ocean</option>
+ <option>Ocean Heat Content Anomaly within 700 m
Depth</option>
+ <option>Ocean Heat Content Anomaly within 2000
m Depth</option>
+ <option>Surface Downwelling Longwave
Radiation</option>
+ <option>Surface Downwelling Shortwave
Radiation</option>
+ <option>Surface Upwelling Longwave
Radiation</option>
+ <option>Surface Upwelling Shortwave
Radiation</option>
+ <option>Surface Downwelling Clear-Sky Longwave
Radiation</option>
+ <option>Surface Downwelling Clear-Sky Shortwave
Radiation</option>
+ <option>Surface Upwelling Clear-Sky Shortwave
Radiation</option>
+ <option>TOA Incident Shortwave
Radiation</option>
+ <option>TOA Outgoing Longwave Radiation</option>
+ <option>TOA Outgoing Shortwave
Radiation</option>
+ <option>TOA Outgoing Clear-Sky Longwave
Radiation</option>
+ <option>TOA Outgoing Clear-Sky Shortwave
Radiation</option>
+ <option>Air Temperature</option>
+ <option>Specific Humidity</option>
+ <option>Cloud Ice Water Content</option>
+ <option>Cloud Liquid Water Content</option>
+ <option>Ocean Temperature</option>
+ <option>Ocean Salinity</option>
+ <option>Vertical Wind Velocity</option>
+ <option>Relative Humidity</option>
+ </select></td>
+ </tr>
+ <tr>
+ <td>atmosphere pressure range (hPa) <br> or ocean pressure
+ range (dbar):
+ </td>
+ <td><input id="pres1" value="200, 900" alt="pressure" /></td>
+ <td>atmosphere pressure level (hPa) <br> or ocean pressure
+ level (dbar):
+ </td>
+ <td><input id="pres2" value="500" alt="pressure" /></td>
+ </tr>
+ <tr>
+ </tr>
+ <tr>
+ <td>start year-month:</td>
+ <td><input id="t0" value="2004-01" alt="start" /></td>
+ <td>end year-month:</td>
+ <td><input id="t1" value="2004-12" alt="end" /></td>
+ </tr>
+ <tr>
+ <td>select months:</td>
+ <td><select name="months" id="months"
onchange="select_months()">
+ <option id="all">select all</option>
+ <option id="none">select none</option>
+ <option id="summer">Summer:Jun-Jul-Aug</option>
+ <option id="autum">Autumn:Sep-Oct-Nov</option>
+ <option id="winter">Winter:Dec-Jan-Feb</option>
+ <option id="spring">Spring:Mar-Apr-May</option>
+ </select></td>
+ <td></td>
+ <td>
+ </tr>
+ <tr>
+ <td><label><input type="checkbox" name="option1" id="Jan"
+ value="Jan" /> Jan<br></label> <label><input
type="checkbox"
+ name="option1" id="Feb" value="Feb" />
Feb<br></label> <label><input
+ type="checkbox" name="option1" id="Mar"
value="Mar" /> Mar<br></label>
+ </td>
+ <td><label><input type="checkbox" name="option1" id="Apr"
+ value="Apr" /> Apr<br></label> <label><input
type="checkbox"
+ name="option1" id="May" value="May" />
May<br></label> <label><input
+ type="checkbox" name="option1" id="Jun"
value="Jun" /> Jun<br></label>
+ </td>
+ <td><label><input type="checkbox" name="option1" id="Jul"
+ value="Jul" /> Jul<br></label> <label><input
type="checkbox"
+ name="option1" id="Aug" value="Aug" />
Aug<br></label> <label><input
+ type="checkbox" name="option1" id="Sep"
value="Sep" /> Sep<br></label>
+ </td>
+ <td><label><input type="checkbox" name="option1" id="Oct"
+ value="Oct" /> Oct<br></label> <label><input
type="checkbox"
+ name="option1" id="Nov" value="Nov" />
Nov<br></label> <label><input
+ type="checkbox" name="option1" id="Dec"
value="Dec" /> Dec<br></label>
+ </td>
+ </tr>
+ <tr>
+ <td>start lat (deg):</td>
+ <td><input id="lat0" value="-90" /></td>
+ <td>end lat (deg):</td>
+ <td><input id="lat1" value="90" /></td>
+ </tr>
+ <tr>
+ <td>start lon (deg):</td>
+ <td><input id="lon0" value="0" /></td>
+ <td>end lon (deg):</td>
+ <td><input id="lon1" value="360" /></td>
+ </tr>
+ <tr>
+ <td colspan="1" rowspan="3">display option:</td>
+ <td colspan="3">
+ <form>
+ X-axis (sampling variable) scale: <input
type="radio" name="scale1"
+ value="linear" id="radioXLin"
checked>linear <input
+ type="radio" name="scale1"
value="logarithmic" id="radioXLog">logarithmic
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="3">
+ <form>
+ Y-axis (sampled variable or pressure) scale:
<input type="radio"
+ name="scale1" value="linear"
id="radioYLin" checked>linear
+ <input type="radio" name="scale1"
value="logarithmic" id="radioYLog">logarithmic
+ </form>
+ </tr>
+ <tr>
+ <td colspan="3">
+ <form>
+ Z-axis (color) scale: <input type="radio"
name="scale1"
+ value="linear" id="radioZLin"
checked>linear <input
+ type="radio" name="scale1"
value="logarithmic" id="radioZLog">logarithmic
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="1" rowspan="2">sampling variable binning
+ specification:</td>
+ <td colspan="3">
+ <form>
+ default: <input onclick="setDefault()"
type="radio" name="default1"
+ value="" id="radioDef" checked>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="3">customized: <input onclick="setCustomized()"
+ type="radio" name="default1" value="" id="radioCus">
Min: <input
+ id="min1" value="" alt="" /> Max: <input id="max1"
value="" alt="" />
+ number of bins: <input id="bins1" value="" alt="" />
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="1">Execution purpose</td>
+ <td colspan="3">
+ <form>
+ <textarea name="purpose" id="purpose" rows="4"
cols="50"> </textarea>
+ </form>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center"><input id="conditionalSamp"
+ type="submit" value=" Run Again "
+ style="height: 28px" /></td>
+ <form>
+ <td colspan="2" align="center"><input id="download_data"
+ type="button" value="Download Data"
style="height: 28px" /></td>
+ </form>
+ </tr>
+ <tr>
+ <td colspan="4">
+ <div id="Image">Image Here</div>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="4" align="center"><textarea readonly id="data_url"
+ cols="150" rows="2">Data URL
Here</textarea></td>
+ </tr>
+ <tr>
+ <td colspan="4" align="center"><textarea id="Response"
cols="150"
+ rows="6">Service Response Text
Here</textarea></td>
+ </tr>
</table>
-}
\ No newline at end of file
+}