From 4f6ed8d45079b21d788b58cfb2f09eb9c35d7dcd Mon Sep 17 00:00:00 2001
From: Peter Rotich <peter@enhancesoft.com>
Date: Wed, 27 Nov 2013 15:32:30 +0000
Subject: [PATCH] Make dialog popup more generic

---
 scp/js/scp.js | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/scp/js/scp.js b/scp/js/scp.js
index b61e62057..1c124f42c 100644
--- a/scp/js/scp.js
+++ b/scp/js/scp.js
@@ -399,13 +399,13 @@ $(document).ready(function(){
            });
      });
 
-    $.userLookup = function (url, callback) {
-
+    $.dialog = function (url, code, cb) {
+        console.log(url);
         $('.dialog#popup .body').load(url, function () {
             $('#overlay').show();
             $('.dialog#popup').show();
-            $(document).off('.user');
-            $(document).on('submit.user', '.dialog#popup form.user',function(e) {
+            $(document).off('.dialog');
+            $(document).on('submit.dialog', '.dialog#popup form', function(e) {
                 e.preventDefault();
                 var $form = $(this);
                 var $dialog = $form.closest('.dialog');
@@ -415,12 +415,11 @@ $(document).ready(function(){
                     data: $form.serialize(),
                     cache: false,
                     success: function(resp, status, xhr) {
-                        if (xhr && xhr.status == 201) {
-                            var user = $.parseJSON(xhr.responseText);
+                        if (xhr && xhr.status == code) {
                             $('div.body', $dialog).empty();
                             $dialog.hide();
                             $('#overlay').hide();
-                            if(callback) callback(user);
+                            if(cb) cb(xhr.responseText);
                         } else {
                             $('div.body', $dialog).html(resp);
                             $('#msg_notice, #msg_error', $dialog).delay(5000).slideUp();
@@ -434,6 +433,13 @@ $(document).ready(function(){
          });
      };
 
+    $.userLookup = function (url, cb) {
+        $.dialog(url, 201, function (resp) {
+                var user = $.parseJSON(resp);
+                if(cb) cb(user);
+                });
+    };
+
     $('#advanced-search').delegate('#status', 'change', function() {
         switch($(this).val()) {
             case 'closed':
-- 
GitLab