// var d = new Datazone('moviedb','jack','jones'); // d.createUser(); // d.setData({a:'a', c:'c', d:[1,2,3]}); // d.getData(function(d){console.log(d)}); (function($){ var Datazone = function(namespace,u,p){ this.username = namespace + u; this.password = p; this.url = '//files.jonnymoon.com/data.php?cachebust='+ (new Date()).getTime() +'&u=' + this.username + '&p=' + this.password; this.backup_url = '//files.jonnymoon.com/backup.php'; this.getData = function(f, fail_function, async){ if(async == null) async = false; $.ajax({ dataType: "json", async: async, url: this.url, data: {cmd:'read'}, success: function(data){ if(data && data.result_from_file_server){ if(fail_function){fail_function(data.result_from_file_server); return;} alert(data.result_from_file_server); }else{ if(f){f(data); return;} } } }); } this.setDataOLD = function(data, f){ $.getJSON(this.url, {cmd:'write', data:JSON.stringify(data)}, function(data){ if(data.result_from_file_server !== true){ if(f){f(false); return;} alert(data.result_from_file_server); }else{ if(f){f(true); return;} } }); } this.setData = function(data, f, backup, synchronous, safe_write){ var that = this; if(backup){ var backup_data = $.extend({ //subject: '' //body: '' //content_type: }, backup); backup_data.attachments = [ { filename: 'Backup.txt', content_type: 'text/plain', content: JSON.stringify(data) } ]; $.ajax({ dataType: "json", url: this.backup_url, type: 'POST', data: {data:JSON.stringify(backup_data)} }); } return $.ajax({ dataType: "json", url: this.url, async: !synchronous, type: 'POST', data: {cmd:'write', data:JSON.stringify(data), safe_write:safe_write}, success: function(data){ if(data.result_from_file_server !== true){ if(f){f(false); return;} alert(data.result_from_file_server); }else{ if(f){f(true, data); return;} } } }); } this.createUser = function(f){ $.ajax({ url: this.url, dataType: 'json', async: false, data: {cmd:'create_account'}, success: function(data){ if(data.result_from_file_server !== true){ if(f){f(false); return;} //alert(data.result_from_file_server); }else{ if(f){f(true); return;} //alert('Your user has been created.'); } } }); } } window.Datazone = Datazone; })(window.jQuery || window.$)