diff --git a/src/server/gf-server-jsapi.js b/src/server/gf-server-jsapi.js index bd55c42d3..6729ba528 100644 --- a/src/server/gf-server-jsapi.js +++ b/src/server/gf-server-jsapi.js @@ -1,35 +1,38 @@ var gf = new Object(); var pgf_base_url = "pgf"; -var pgf_grammar = "grammar.pgf"; -gf.translate = function (input,from,to,cat,callback) { +gf.translate = function (grammar,input,from,to,cat,callback) { var args = []; args["input"] = input; args["from"] = from; args["to"] = to; args["cat"] = cat; - gf.callFunction("translate", args, callback); + gf.callFunction(grammar, "translate", args, callback); }; -gf.complete = function (input,from,cat,callback) { +gf.complete = function (grammar,input,from,cat,callback) { var args = []; args["input"] = input; args["from"] = from; args["cat"] = cat; - gf.callFunction("complete", args, callback); + gf.callFunction(grammar, "complete", args, callback); }; -gf.grammar = function (callback) { - gf.callFunction("grammar", [], callback); +gf.grammar = function (grammar, callback) { + gf.callFunction(grammar, "", [], callback); }; -gf.callFunction = function (fun, args, callback) { +gf.grammars = function (callback) { + gf.httpGetJSONP(pgf_base_url, callback); +}; + +gf.callFunction = function (grammar, fun, args, callback) { var query = ""; for (var i in args) { query += (query == "") ? "?" : "&"; query += i + "=" + encodeURIComponent(args[i]); } - var url = pgf_base_url + "/" + pgf_grammar +"/" + fun + query; + var url = pgf_base_url + "/" + grammar +"/" + fun + query; // FIXME: if same domain, use gf.httpGetText gf.httpGetJSONP(url, callback); diff --git a/src/server/simple-client.html b/src/server/simple-client.html index 7c6c0da0f..a525f99f8 100644 --- a/src/server/simple-client.html +++ b/src/server/simple-client.html @@ -9,6 +9,10 @@ AJAX GF Translator @@ -76,6 +97,7 @@

+