UserData.js 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. MWF.xDesktop = MWF.xDesktop || {};
  2. MWF.xApplication = MWF.xApplication || {};
  3. MWF.require("MWF.xDesktop.Actions.RestActions", null, false);
  4. MWF.xDesktop.UserData = MWF.UD = {
  5. getAction: function(){
  6. this.action = new MWF.xDesktop.Actions.RestActions("/xDesktop/Actions/action.json", "x_organization_assemble_personal");
  7. },
  8. getData: function(name, callback, async){
  9. if (!this.action) this.getAction();
  10. this.action.invoke({"name": "getUserData", "async": async, "parameter": {"name": name}, "success": function(json){
  11. if (callback) callback(json);
  12. }.bind(this)});
  13. },
  14. getDataJson: function(name, callback, async){
  15. if (!this.action) this.getAction();
  16. this.action.invoke({"name": "getUserData", "async": async, "parameter": {"name": name}, "success": function(json){
  17. var returnJson = null;
  18. if (json.data) returnJson = JSON.decode(json.data);
  19. if (callback) callback(returnJson);
  20. }.bind(this)});
  21. },
  22. putData: function(name, data, callback, async){
  23. if (!this.action) this.getAction();
  24. this.action.invoke({"name": "putUserData", "async": async, "data": data, "parameter": {"name": name}, "success": function(json){
  25. if (callback) callback(json);
  26. }.bind(this)});
  27. },
  28. deleteData: function(name, callback, async){
  29. if (!this.action) this.getAction();
  30. this.action.invoke({"name": "deleteUserData", "async": async, "parameter": {"name": name}, "success": function(json){
  31. if (callback) callback(json);
  32. }.bind(this)});
  33. },
  34. getPublicData: function(name, callback, async){
  35. if (!this.action) this.getAction();
  36. this.action.invoke({"name": "getPublicUserData", "async": async, "parameter": {"name": name}, "success": function(json){
  37. var returnJson = null;
  38. if (json.data) returnJson = JSON.decode(json.data);
  39. if (callback) callback(returnJson);
  40. }.bind(this)});
  41. },
  42. putPublicData: function(name, data, callback, async){
  43. if (!this.action) this.getAction();
  44. this.action.invoke({"name": "putPublicUserData", "async": async, "data": data, "parameter": {"name": name}, "success": function(json){
  45. if (callback){
  46. if (callback.success){
  47. callback.success(json);
  48. }else{
  49. callback(json);
  50. }
  51. }
  52. }.bind(this), "failure": function(xhr, text, error){
  53. if (xhr.status!=0){
  54. var errorText = error;
  55. if (xhr){
  56. var json = JSON.decode(xhr.responseText);
  57. if (json){
  58. errorText = json.message.trim() || "request json error";
  59. }else{
  60. errorText = "request json error: "+xhr.responseText;
  61. }
  62. }
  63. MWF.xDesktop.notice("error", {x: "right", y:"top"}, errorText);
  64. }
  65. if (callback) if (callback.failure) callback.failure(xhr, text, error);
  66. }});
  67. },
  68. deletePublicData: function(name, callback, async){
  69. if (!this.action) this.getAction();
  70. this.action.invoke({"name": "deletePublicUserData", "async": async, "parameter": {"name": name}, "success": function(json){
  71. if (callback) callback(json);
  72. }.bind(this)});
  73. }
  74. };