DataObjects/Core_domain.php
[Pman.Core] / Pman.Dialog.CoreEmail.js
index 750d9c4..69318ef 100644 (file)
@@ -546,6 +546,8 @@ Pman.Dialog.CoreEmail = {
                 
                  if (action.type == 'setdata') {
                  
+                     setInterval(_this.form.findField('bodytext').autosave, 5000);
+                     
                      _this.data.module = _this.data.module || 'crm_mailing_list_message';
                      
                      _this.form.url = baseURL + '/Roo/' + _this.data.module;
@@ -569,6 +571,9 @@ Pman.Dialog.CoreEmail = {
                  }
                  if (action.type == 'load') {
                      _this.dialog.el.unmask();
+                     
+                     _this.form.findField('bodytext').originalValue = _this.form.findField('bodytext').getValue();
+                     
                      return;
                  }
                  if (action.type =='submit') {
@@ -654,6 +659,20 @@ Pman.Dialog.CoreEmail = {
                xtype : 'FieldSet',
                items  : [
                 {
+                 autosave : function() {
+                     
+                     var body = _this.form.findField('bodytext');
+                     
+                     if(!body.wrap.isVisible(true) || body.getValue() == '' || !body.isDirty()){
+                         Roo.log('body not dirty');
+                         return;
+                     }
+                     
+                     Roo.log('body dirty, auto save!');
+                     
+                     body.fireEvent('autosave', body);
+                    
+                 },
                  clearUp : false,
                  cwhite : [ 
                      'margin',
@@ -700,12 +719,46 @@ Pman.Dialog.CoreEmail = {
                  '|xns' : 'Roo.form',
                  xtype : 'HtmlEditor',
                  listeners : {
-                  savedpreview : function (_self)
+                  autosave : function (_self)
                    {
-                       Roo.log('saved preview');
+                       Roo.log('autosave');
                        
                        var id = _this.form.findField('id').getValue() * 1;
                        
+                       /*
+                       if(!_self.editorcore.sourceEditMode){
+                           _self.syncValue();
+                       }else{
+                           _self.pushValue();
+                       }
+                       */
+                       
+                       new Pman.Request({
+                           url : baseURL + '/Roo/Events.php',
+                           method :'POST',
+                           params : {
+                               id : 0,
+                               action : 'AUTOSAVE',
+                               on_id : (id > 0) ? id : 0,
+                               on_table : 'crm_mailing_list_message',
+                               remarks : 'BODY',
+                               source: _self.getValue()
+                           },
+                           success : function() {
+                               _self.originalValue = _self.getValue();
+                               
+                           },
+                           failure : function() 
+                           {
+                               Roo.log('body autosave failed?!');
+                           }
+                       });
+                       
+                   },
+                  savedpreview : function (_self)
+                   {
+                       var id = _this.form.findField('id').getValue() * 1;
+                       
                        var successFn = function(res){
                            return res.data.POST.source;
                        };
@@ -714,7 +767,7 @@ Pman.Dialog.CoreEmail = {
                            action : 'AUTOSAVE',
                            remarks : 'BODY',
                            on_id : (id < 1) ? 0 : id,
-                           on_table : 'cms_page',
+                           on_table : 'crm_mailing_list_message',
                            successFn : successFn
                        };
                        
@@ -908,6 +961,7 @@ Pman.Dialog.CoreEmail = {
                      xtype : 'Separator'
                     },
                     {
+                     cls : 'x-init-enable',
                      text : _this._strings['bd88a20b53a47f7b5704a83a15ff5506'] /* Saved Version */,
                      xns : Roo.Toolbar,
                      '|xns' : 'Roo.Toolbar',
@@ -916,6 +970,7 @@ Pman.Dialog.CoreEmail = {
                       click : function (_self, e)
                        {
                            this.scope.owner.fireEvent('savedpreview', this.scope.owner);
+                           
                        }
                      }
                     }