DataObjects/Core_person_signup.php
[Pman.Core] / Pman.Dialog.Image.js
index cec452a..bd76b06 100644 (file)
@@ -2,6 +2,8 @@
 
 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
 
+Roo.namespace('Pman.Dialog');
+
 Pman.Dialog.Image = {
 
     dialog : false,
@@ -28,50 +30,57 @@ Pman.Dialog.Image = {
     {
         var _this = this;
         this.dialog = Roo.factory({
-            xtype: 'LayoutDialog',
-            xns: Roo,
-            listeners : {
-                show : function (_self)
-                {
-                    // this does not really work - escape on the borders works..
-                    if (this.keylistener) {
-                        return;
-                    }
-                    this.keylistener = this.addKeyListener(27, this.hide, this);
-                    
-                }
+            center : {
+                '|xns' : 'Roo',
+                xtype : 'LayoutRegion',
+                xns : Roo
             },
-            closable : false,
-            collapsible : false,
-            haveProgress : false,
-            height : 140,
+            '|xns' : 'Roo',
             modal : true,
-            resizable : true,
+            shadow : true,
+            collapsible : false,
             title : "Upload an Image or File",
-            uploadProgress : false,
+            xtype : 'LayoutDialog',
+            uploadComplete : false,
             width : 500,
-            shadow : true,
-            uploadProgres : function()
+            xns : Roo,
+            closable : false,
+            resizable : false,
+            haveProgress : false,
+            height : 140,
+            uploadProgress : function()
             {
                 var dlg = this;
                if (!dlg.haveProgress) {
                     Roo.MessageBox.progress("Uploading", "Uploading");
                 }
+                
+                if (dlg.haveProgress == 2) {
+                    // it's been closed elsewhere..
+                    return;
+                }
                 if (dlg.uploadComplete) {
                     Roo.MessageBox.hide();
                     return;
                 }
-                dlg.haveProgress = true;
+                
+                dlg.haveProgress = 1;
             
                 var uid = _this.form.findField('UPLOAD_IDENTIFIER').getValue();
-                Pman.request({
+                new Pman.Request({
                     url : baseURL + '/Core/UploadProgress.php',
                     params: {
                         id : uid
                     },
                     method: 'GET',
-                    success : function(data){
+                    success : function(res){
                         //console.log(data);
+                        var data = res.data;
+                        if (dlg.haveProgress == 2) {
+                            // it's been closed elsewhere..
+                            return;
+                        }
+                        
                         if (dlg.uploadComplete) {
                             Roo.MessageBox.hide();
                             return;
@@ -81,6 +90,11 @@ Pman.Dialog.Image = {
                             Roo.MessageBox.updateProgress(data.bytes_uploaded/data.bytes_total,
                                 Math.floor((data.bytes_total - data.bytes_uploaded)/1000) + 'k remaining'
                             );
+                        } else {
+                            Roo.MessageBox.updateProgress(1,
+                                "Upload Complete - processing"
+                            );
+                            return;
                         }
                         dlg.uploadProgress.defer(2000,dlg);
                     },
@@ -91,159 +105,228 @@ Pman.Dialog.Image = {
                 })
                 
             },
+            buttons : [
+                {
+                       '|xns' : 'Roo',
+                       text : "Cancel",
+                       xtype : 'Button',
+                       xns : Roo,
+                       listeners : {
+                               click : function (_self, e)
+                                  {
+                                      _this.dialog.hide();
+                                  }
+                       }
+                   },
+{
+                       '|xns' : 'Roo',
+                       text : "Upload",
+                       xtype : 'Button',
+                       xns : Roo,
+                       listeners : {
+                               click : function (_self, e)
+                                  {
+                                      // do some checks?
+                                       
+                                      //_this.dialog.el.mask("Sending");
+                                      _this.dialog.uploadComplete = false;
+                                      _this.form.doAction('submit', {
+                                          params: {
+                                              ts : Math.random()
+                                          } 
+                                      });
+                                      _this.dialog.haveProgress = 0; // set to show..
+                                      _this.dialog.uploadProgress.defer(1000, _this.dialog);
+                                  
+                                  }
+                       }
+                   }
+            ],
+            listeners : {
+               show : function (_self)
+                  {
+                  
+                      // this does not really work - escape on the borders works..
+                      // resize to fit.. if we have styled stuff...
+                      
+                      
+                      
+                      
+                      var d = this;
+                      
+                      var pad =     d.el.getSize().height - (d.header.getSize().height +
+                          d.footer.getSize().height +        
+                          d.layout.getRegion('center').getPanel(0).el.getSize().height
+                          );
+                      
+                      var height = (
+                          pad + 
+                          d.header.getSize().height +
+                          d.footer.getSize().height +        
+                          d.layout.getRegion('center').getPanel(0).el.child('div').getSize().height
+                      );
+                      this.resizeTo(d.el.getSize().width, height);
+                      
+                      if (this.keylistener) {
+                          return;
+                      }
+                      this.keylistener = this.addKeyListener(27, this.hide, this);
+                      
+                  }
+            },
             items : [
-                {
-                    xtype: 'ContentPanel',
-                    xns: Roo,
+               {
+                    '|xns' : 'Roo',
                     fitToFrame : true,
                     region : 'center',
+                    xtype : 'ContentPanel',
+                    xns : Roo,
                     items : [
-                        {
-                            xtype: 'Form',
-                            xns: Roo.form,
-                            listeners : {
-                                actioncomplete : function(_self,act)
-                                {
-                                       _this.dialog.uploadComplete = true;
-                                        _this.dialog.el.unmask();
-                                         
-                                          if (act.type == 'setdata') { 
-                                            this.url = _this.data._url ? _this.data._url : baseURL + '/Roo/Images.php'
-                                              this.findField('UPLOAD_IDENTIFIER').setValue(
-                                                (new Date() * 1) + '' + Math.random());
-                                                
-                                            return;
-                                         }
-                                         
-                                       
-                                        if (act.type == 'load') {
-                                          // should this happen?  
-                                            _this.data = act.result.data;
-                                           // _this.loaded();
-                                            return;
-                                        }
-                                        
-                                        
-                                        if (act.type == 'submit') { // only submitted here if we are 
-                                            _this.dialog.hide();
-                                            //console.log(act);
-                                            if (_this.callback) {
-                                                _this.callback.call(this, act.result.data);
-                                            }
-                                            return; 
-                                        }
-                                },
-                                rendered : function (form)
-                                {
-                                    _this.form= form;
-                                },
-                                actionfailed : function (_self, act)
-                                {
-                                    _this.dialog.uploadComplete = true;
-                                    _this.dialog.el.unmask();
-                                    // error msg???
-                                    
-                                    if (act.type == 'submit') {
-                                        Ext.MessageBox.alert("Error", "Saving failed = fix errors and try again");
-                                        return;
-                                    }
-                                    
-                                    // what about load failing..
-                                    Ext.MessageBox.alert("Error", "Error loading details"); 
-                                }
-                            },
-                            labelWidth : 140,
+                       {
+                            '|xns' : 'Roo.form',
+                            url : baseURL + '/Roo/Images.php',
+                            fileUpload : true,
                             method : 'POST',
                             style : 'margin:10px;',
-                            url : baseURL + '/Roo/Images.php',
+                            xtype : 'Form',
+                            labelWidth : 140,
+                            timeout : 300,
+                            xns : Roo.form,
+                            listeners : {
+                               actionfailed : function (_self, act)
+                                  {
+                                     
+                                     
+                                      _this.dialog.uploadComplete = true;
+                                     // _this.dialog.el.unmask();
+                                      // error msg???
+                                       _this.dialog.haveProgress = 2; 
+                                      if (act.type == 'submit') {
+                                          Roo.log("Upload error");
+                                          Roo.log(act);
+                                          
+                                          try {
+                                              Roo.MessageBox.alert("Error", act.result.errorMsg.split(/\n/).join('<BR/>'));
+                                          } catch(e) {
+                                            //  Roo.log(e);
+                                              Roo.MessageBox.alert("Error", "Saving failed = fix errors and try again");        
+                                          }
+                                          return;
+                                      }
+                                      
+                                      // what about load failing..
+                                      Roo.MessageBox.alert("Error", "Error loading details"); 
+                                  },
+                               actioncomplete : function(_self,act)
+                                  {
+                                      _this.dialog.uploadComplete = true;
+                                      _this.dialog.haveProgress = 2; 
+                                      Roo.MessageBox.hide(); // force hiding
+                                      //_this.dialog.el.unmask();
+                                       
+                                      if (act.type == 'setdata') { 
+                                          this.url = _this.data._url ? _this.data._url : baseURL + '/Roo/Images.php';
+                                          this.el.dom.action = this.url;
+                                          if (typeof(_this.data.timeout) != 'undefined') {
+                                              this.timeout = _this.data.timeout;
+                                          }
+                                          
+                                          this.findField('UPLOAD_IDENTIFIER').setValue(
+                                              (new Date() * 1) + '' + Math.random());
+                                              
+                                          return;
+                                      }
+                                       
+                                     
+                                      if (act.type == 'load') {
+                                        // should this happen?  
+                                          _this.data = act.result.data;
+                                         // _this.loaded();
+                                          return;
+                                      }
+                                      
+                                      
+                                      if (act.type == 'submit') { // only submitted here if we are 
+                                          _this.dialog.hide();
+                                          Roo.log("Upload success");
+                                          Roo.log(act);
+                                          //console.log(act);
+                                          if (_this.callback) {
+                                              _this.callback.call(this, act.result.data, act.result.extra);
+                                          }
+                                          return; 
+                                      }
+                                      
+                                  
+                                      
+                                  },
+                               rendered : function (form)
+                                  {
+                                      _this.form= form;
+                                  }
+                            },
                             items : [
-                                {
-                                    xtype: 'Hidden',
-                                    xns: Roo.form,
+                               {
+                                    '|xns' : 'Roo.form',
+                                    xtype : 'Hidden',
+                                    xns : Roo.form,
                                     name : 'UPLOAD_IDENTIFIER'
                                 },
-                                {
-                                    xtype: 'TextField',
-                                    xns: Roo.form,
-                                    fieldLabel : 'Upload Image or File',
+                               {
+                                    '|xns' : 'Roo.form',
+                                    xtype : 'Hidden',
+                                    value : "32M",
+                                    xns : Roo.form,
+                                    name : 'post_max_size'
+                                },
+                               {
+                                    '|xns' : 'Roo.form',
+                                    xtype : 'Hidden',
+                                    value : "32M",
+                                    xns : Roo.form,
+                                    name : 'upload_max_filesize'
+                                },
+                               {
+                                    '|xns' : 'Roo.form',
                                     inputType : 'file',
-                                    name : 'imageUpload',
-                                    width : 200
+                                    fieldLabel : 'Upload Image or File',
+                                    xtype : 'TextField',
+                                    width : 200,
+                                    xns : Roo.form,
+                                    name : 'imageUpload'
                                 },
-                                {
-                                    xtype: 'Hidden',
-                                    xns: Roo.form,
+                               {
+                                    '|xns' : 'Roo.form',
+                                    xtype : 'Hidden',
+                                    xns : Roo.form,
                                     name : 'ontable'
                                 },
-                                {
-                                    xtype: 'Hidden',
-                                    xns: Roo.form,
+                               {
+                                    '|xns' : 'Roo.form',
+                                    xtype : 'Hidden',
+                                    xns : Roo.form,
                                     name : 'onid'
                                 },
-                                {
-                                    xtype: 'Hidden',
-                                    xns: Roo.form,
-                                    name : 'imgtype'
-                                },
-                                {
-                                    xtype: 'Hidden',
-                                    xns: Roo.form,
-                                    name : 'post_max_size',
-                                    value : "32M"
+                               {
+                                    '|xns' : 'Roo.form',
+                                    xtype : 'Hidden',
+                                    xns : Roo.form,
+                                    name : 'id'
                                 },
-                                {
-                                    xtype: 'Hidden',
-                                    xns: Roo.form,
-                                    name : 'upload_max_filesize',
-                                    value : "32M"
+                               {
+                                    '|xns' : 'Roo.form',
+                                    xtype : 'Hidden',
+                                    xns : Roo.form,
+                                    name : 'imgtype'
                                 }
                             ]
+
                         }
                     ]
-                }
-            ],
-            center : {
-                xtype: 'LayoutRegion',
-                xns: Roo
-            },
-            buttons : [
-                {
-                    xtype: 'Button',
-                    xns: Roo,
-                    listeners : {
-                        click : function (_self, e)
-                        {
-                            _this.dialog.hide();
-                        }
-                    },
-                    text : "Cancel"
-                },
-                {
-                    xtype: 'Button',
-                    xns: Roo,
-                    listeners : {
-                        click : function (_self, e)
-                        {
-                            // do some checks?
-                             
-                            _this.dialog.el.mask("Sending");
-                            _this.dialog.uploadComplete = false;
-                            _this.form.doAction('submit', {
-                                url: baseURL + '/Roo/Images.html',
-                                method: 'POST',
-                                params: {
-                                 //   _id: 0 ,
-                                    ts : Math.random()
-                                } 
-                            });
-                            _this.dialog.haveProgress = false,
-                            _this.dialog.uploadProgress.defer(1000, _this.dialog);
-                        
-                        }
-                    },
-                    text : "Upload"
+
                 }
             ]
+
         });
     }
 };