Pman.Lock.js
authorAlan Knowles <alan@akbkhome.com>
Thu, 18 Nov 2010 09:34:58 +0000 (17:34 +0800)
committerAlan Knowles <alan@akbkhome.com>
Thu, 18 Nov 2010 09:34:58 +0000 (17:34 +0800)
Pman.Lock.js

index 7229987..22b018a 100644 (file)
  */
 Pman.Lock = function (cfg) {
     this.cfg = cfg;
-    this.attemptLock();
+    this.callLock();
 }
 
 Roo.apply(Pman.Lock.prototype, {
     
-    attemptLock : function()
+    callLock : function(force)
     {
+        force = force || 0;
         var _t = this
         Pman.Request({
             url : baseURL + 'Core/Lock/lock',
             params : {
                 on_table : cfg.table,
-                on_id : cfg.id
+                on_id : cfg.id,
+                force : force
             },
             failure : function() {
                 Roo.MessageBox.alert("Error", "Lock Request failed, please try again");
             },
             success : function(data)
             {
-                Roo.log(data);
                 
-                if (typeof(data) == 'object') {
+                
+                if (!force && typeof(data) == 'object') {
                     _t.confirmBreak(data);
                 }
                 
@@ -69,10 +71,20 @@ Roo.apply(Pman.Lock.prototype, {
     confirmBreak : function (ar)
     {
         
-        var msg = '';
+        var msg = "This Record is Locked by the following people, <br/>" + 
+            "Do you want to continue, this will prevent these people from saving their changes<br/>";
+            
         Roo.each(ar, function(p) {
+            msg += '<br/>' + p.name + ' at ' + p.lock_created ;
+        })
+        var _t = this;
+        Roo.messageBox.confirm("Confirm breaking locks", msg, function(r) {
+            if (r != 'yes') {
+                return;
+            }
+            _t.callLock(1);
+        });
             
-           }