Advertisement
stanevplamen

JS Module

Sep 21st, 2022
666
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JavaScript 1.87 KB | Software | 0 0
  1.  
  2. var dataMediator = (function () {
  3.  
  4.     function getAllAtms() {
  5.         return getJSON('../GetAtmsServlet');
  6.     }
  7.     function loadGmapsFile(url) {
  8.         return getFile(url);
  9.     }
  10.    
  11.     function getFile(serviceUrl) {
  12.  
  13.         var deferred = $.Deferred();
  14.  
  15.         $.ajax({
  16.             url: serviceUrl,
  17.             type: "GET",
  18.             async: true,
  19.             dataType: "script",
  20.             success: function (data) {
  21.                 deferred.resolve(data);
  22.             },
  23.             error: function (data) {
  24.                 deferred.reject(this);
  25.             }
  26.         });
  27.  
  28.         return deferred.promise();
  29.     }
  30.  
  31.     function getJSON(serviceUrl) {
  32.  
  33.         var deferred = $.Deferred();
  34.  
  35.         $.ajax({
  36.             url: serviceUrl,
  37.             type: "GET",
  38.             async: true,
  39.             contentType: "text/plain; charset=utf-8",
  40.             success: function (data) {
  41.                 var items = JSON.parse(data);
  42.                 deferred.resolve(items);
  43.             },
  44.             error: function (data) {
  45.                 deferred.reject(this);
  46.             }
  47.         });
  48.  
  49.         return deferred.promise();
  50.     }
  51.  
  52.     function postJSON(serviceUrl, data) {
  53.  
  54.         var deferred = $.Deferred();
  55.  
  56.         $.ajax({
  57.             url: serviceUrl,
  58.             type: "POST",
  59.             async: true,
  60.             data: data,
  61.             success: function (data) {
  62.                 try {
  63.                     var items = JSON.parse(data);
  64.                     deferred.resolve(items);
  65.                 } catch (e) {
  66.                     deferred.resolve(data);
  67.                 }
  68.             },
  69.             error: function (data) {
  70.                 deferred.reject(this);
  71.             }
  72.         });
  73.  
  74.         return deferred.promise();
  75.     }
  76.  
  77.    
  78.     return {
  79.         getAllAtms: getAllAtms,
  80.         loadGmapsFile : loadGmapsFile
  81.     }
  82. })();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement