1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
4 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
6 <title>SUGAR Arithmetic Engine (JS)</title>
10 <script type="text/javascript" src="../../include/javascript/sugar_grp1_yui.js"></script>
11 <script type="text/javascript" src="../../include/javascript/sugar_grp1.js"></script>
14 <!-- sugar expressions js -->
15 <!-- <script language="javascript" src="./javascript/ExpressionJS.php"></script> -->
17 <script language="javascript" src="../../include/Expressions/javascript/expressions.js"></script>
18 <script language="javascript" src="../../cache/Expressions/functions_cache.js"></script>
21 <script language="javascript">
22 YAHOO.util.Event.onDOMReady( function() {
23 var container = new YAHOO.widget.Overlay("container", {fixedcenter:true, visible:true, width:"400px"});
27 function checkEnter(e) {
28 var characterCode; // literal character code will be stored in this variable
30 characterCode = e.keyCode;
32 if ( characterCode == 13 ) {
34 document.getElementById('expression').select();
43 function print_r(o, d) {
46 if (typeof(o) == "object") {
48 for (var j = 0; j < d; j++) {
53 for (var j = 0; j <= d; j++) {
56 ret += "[" + i + "] => " + print_r(o[i], d + 2) + "\n";
58 for (var j = 0; j < d; j++) {
62 } else if (typeof(o != "undefined")){
69 function evalExpression() {
70 var parser = new SUGAR.expressions.ExpressionParser();
71 var output = document.getElementById('results');
72 var expression = document.getElementById('expression').value;
74 if ( expression == 'clear' ) {
81 out += '<div class="expression">' + expression + ':</div>';
84 var result = parser.evaluate(expression);
85 result = result.evaluate();
86 out += '<div class="result" id="js_result_' + resultCount + '">' + print_r(result, 0) + "</div>";
90 out += '<div class="result" id="js_result_' + resultCount + '">' + e + "</div>";
93 out += "<div class='clearer'></div>";
97 output.innerHTML = "<div class='casing" + x + "'>" + out + "</div>" + output.innerHTML;
98 ajaxEvalExpression(expression);
101 function ajaxEvalExpression(expr) {
102 YAHOO.util.Connect.asyncRequest('POST', 'expression_engine_eval.php',
104 success: function(o){
105 var output = document.getElementById('results');
106 output.innerHTML = "<div class='ajax result' id='php_result_" + resultCount + "'>" + o.responseText + "</div>" + output.innerHTML;
109 }, "expression=" + expr);
116 document.getElementById('results').innerHTML = "";
120 window.onload = init;
125 <style type="text/css">
129 font-family: Trebuchet MS;
153 font-family: Verdana;
167 border: 1px solid #cccccc;
180 border: 1px solid #000;
191 #input INPUT[type=text] {
192 font-family: Courier New;
201 <!-- div id="overlay" style="width: 100%; height: 100%;position: absolute; left: 0px; top: 0px; background: #BFBFBF; z-index: -10;"></div -->
210 <input type="text" id="expression" style="width: 288px" onkeypress="checkEnter(event)">
211 <input type="button" id="evaluate_button" value="Evaluate" onclick="evalExpression()">
212 <input type="button" id="clear_button" value="Clear" onclick="init()">