| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- !function(window) {
- window.Groove = {
- init: function(options) {
- this._options = options;
- if (typeof grooveOnReady != 'undefined') {grooveOnReady();}
- },
- createTicket: function(params, callback) {
- var postData = serialize({
- "ticket[enduser_name]": params["name"],
- "ticket[enduser_email]": params["email"],
- "ticket[title]": params["subject"],
- "ticket[enduser_about]": params["about"],
- "ticket[label_string]": params["labels"],
- "ticket[comments_attributes][0][body]": params["message"]
- });
- sendRequest(this._options.widget_ticket_url, function(req) {
- if (callback) {callback(req);}
- }, postData);
- }
- };
- // http://www.quirksmode.org/js/xmlhttp.html
- function sendRequest(url, callback, postData) {
- var req = createXMLHTTPObject();
- if (!req) return;
- var method = (postData) ? "POST" : "GET";
- req.open(method, url, true);
- if (postData){
- try {
- req.setRequestHeader('Content-type','application/x-www-form-urlencoded');
- }
- catch(e) {
- req.contentType = 'application/x-www-form-urlencoded';
- };
- };
- req.onreadystatechange = function () {
- if (req.readyState != 4) return;
- callback(req);
- }
- if (req.readyState == 4) return;
- req.send(postData);
- }
- var XMLHttpFactories = [
- function () {return new XDomainRequest()},
- function () {return new XMLHttpRequest()},
- function () {return new ActiveXObject("Msxml2.XMLHTTP")},
- function () {return new ActiveXObject("Msxml3.XMLHTTP")},
- function () {return new ActiveXObject("Microsoft.XMLHTTP")}
- ];
- function createXMLHTTPObject() {
- var xmlhttp = false;
- for (var i = 0; i < XMLHttpFactories.length; i++) {
- try {
- xmlhttp = XMLHttpFactories[i]();
- }
- catch (e) {
- continue;
- }
- break;
- }
- return xmlhttp;
- }
- function serialize(obj) {
- var str = [];
- for(var p in obj) {
- if (obj[p]) {
- str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
- }
- }
- return str.join("&");
- }
- if (typeof grooveOnLoad != 'undefined') {grooveOnLoad();}
- }(window);
- Groove.init({"widget_ticket_url":"https://sharelatex-accounts.groovehq.com/widgets/f5ad3b09-7d99-431b-8af5-c5725e3760ce/ticket.json"});
|