| @(servicePage: String, moreScript: String, confItems: List[ServiceConfigurationItem], serviceLog: ServiceExecutionLog) |
| |
| @import helper._ |
| |
| @scripts = { |
| <script type="text/javascript"> |
| |
| window.onload = function() { |
| |
| var value = ""; |
| var parameterPurpose = ""; |
| var parameterRule = ""; |
| |
| var seperator = " | "; |
| @for(confItem <- confItems) { |
| var parameterName = ""; |
| var parameterType = ""; |
| var parameterValue = ""; |
| var parameterDefaultValue = ""; |
| parameterPurpose = "@confItem.getParameterPurpose()"; |
| parameterRule = "@confItem.getParameterRule()"; |
| value = "@confItem.getValue()"; |
| parameterName = "@confItem.getParameterName()"; |
| parameterType = parameterRule.split("*|")[1].split("|*")[1]; |
| parameterValue = parameterRule.split("*|")[2].split("|*")[1]; |
| parameterDefaultValue = parameterRule.split("*|")[3].split("|*")[1]; |
| |
| var res = parameterPurpose.split(" "); |
| var name = res[0]; |
| for (i = 1; i < res.length; i++) { |
| var temp = res[i].charAt(0).toUpperCase(); |
| temp += res[i].substring(1); |
| name += temp; |
| } |
| name += "_detail"; |
| |
| |
| console.log(parameterName + seperator + name + seperator + value + seperator + parameterType + seperator + parameterValue + seperator + parameterDefaultValue); |
| |
| switch (parameterType) { |
| case "Input text": |
| document.getElementById(name).value = value; |
| break; |
| case "Input area": |
| document.getElementById(name).innerHTML = value; |
| break; |
| case "Multiple selects": |
| var paraArr = parameterValue.split(","); |
| var checkedPara = value.split(","); |
| |
| for (var i=0; i<paraArr.length; i++) { |
| $("#" + name + i).prop( "checked", false ); |
| for (var j=0; j<checkedPara.length; j++ ) { |
| if ($("#" + name + i).val() == checkedPara[j]) { |
| $("#" + name + i).prop( "checked", true ); |
| } |
| } |
| } |
| //$( 'input' ).filter('[value="6"]').prop( "checked", false ); |
| break; |
| case "Radio button": |
| var paraArr = parameterValue.split(","); |
| for (var i=0; i<paraArr.length; i++) { |
| if ($("#" + name + i).val() == value) { |
| $( "#" + name + i ).prop("checked", true); |
| break; |
| } |
| } |
| break; |
| case "Dropdown list": |
| //$( 'option:contains("'+value+'")').attr('selected','selected'); |
| var allOptions = document.getElementById(parameterName + "_trID").getElementsByTagName('option'); |
| for (var i =0; i<allOptions.length; i++) { |
| if(allOptions[i].value == value) { |
| allOptions[i].selected = true; |
| } |
| } |
| break; |
| default: |
| |
| } |
| } |
| //only for testing |
| //document.getElementById('startTime').value = parameterType; |
| |
| document.getElementById("purpose_detail").innerHTML = "@serviceLog.getPurpose()"; |
| document.getElementById("serviceImg").src = "@serviceLog.getPlotUrl()"; |
| document.getElementById("comment").value = "@serviceLog.getDataUrl()"; |
| /* |
| var res = parameterPurpose.split(" "); |
| var name = res[0]; |
| for (i = 1; i < res.length; i++) { |
| var temp = res[i].charAt(0).toUpperCase(); |
| temp += res[i].substring(1); |
| name += temp; |
| } |
| console.log(name + value + parameterType + parameterValue + parameterDefaultValue); |
| |
| if (parameterType == "Input text" ) { |
| document.getElementById(name).value = value; |
| } |
| |
| |
| document.getElementById("serviceImg").src = "@serviceLog.getPlotUrl()"; |
| document.getElementById("comment").value = "@serviceLog.getDataUrl()"; |
| */ |
| } |
| @Html(moreScript) |
| </script> |
| } |
| |
| @main("Service Details", scripts) { |
| @Html(servicePage) |
| } |