o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1351851973.5715017: @value"¢{I" class:EFI"ProcessedAsset;FI"logical_path;F"direct_form.jsI" pathname;FI"0$root/app/assets/javascripts/direct_form.js;FI"content_type;FI"application/javascript;FI" mtime;FI"2012-11-02T11:25:18+01:00;FI" length;FiÿI" digest;F"%c0b04565462aa09ee4142a2a7cc7b59cI" source;FI"ÿExt.require([ 'Ext.direct.*', 'Ext.form.*', 'Ext.tip.QuickTipManager', 'Ext.layout.container.Accordion' ]); Ext.onReady(function(){ /* * Notice that Direct requests will batch together if they occur * within the enableBuffer delay period (in milliseconds). * Slow the buffering down from the default of 10ms to 100ms */ Ext.app.REMOTING_API.enableBuffer = 100; Ext.direct.Manager.addProvider(Ext.app.REMOTING_API); // provide feedback for any errors Ext.tip.QuickTipManager.init(); var basicInfo = Ext.create('Ext.form.Panel', { // configs for FormPanel title: 'Basic Information', border: false, bodyPadding: 10, // configs for BasicForm api: { // The server-side method to call for load() requests load: Profile.getBasicInfo, // The server-side must mark the submit handler as a 'formHandler' submit: Profile.updateBasicInfo }, // specify the order for the passed params paramOrder: ['uid', 'foo'], dockedItems: [{ dock: 'bottom', xtype: 'toolbar', ui: 'footer', style: 'margin: 0 5px 5px 0;', items: ['->', { text: 'Submit', handler: function(){ basicInfo.getForm().submit({ params: { foo: 'bar', uid: 34 } }); } }] }], defaultType: 'textfield', defaults: { anchor: '100%' }, items: [{ fieldLabel: 'Name', name: 'name' },{ fieldLabel: 'Email', msgTarget: 'side', name: 'email' },{ fieldLabel: 'Company', name: 'company' }] }); var phoneInfo = Ext.create('Ext.form.Panel', { title: 'Phone Numbers', border: false, api: { load: Profile.getPhoneInfo }, bodyPadding: 10, paramOrder: ['uid'], defaultType: 'textfield', defaults: { anchor: '100%' }, items: [{ fieldLabel: 'Office', name: 'office' },{ fieldLabel: 'Cell', name: 'cell' },{ fieldLabel: 'Home', name: 'home' }] }); var locationInfo = Ext.create('Ext.form.Panel', { title: 'Location Information', border: false, bodyPadding: 10, api: { load: Profile.getLocationInfo }, paramOrder: ['uid'], defaultType: 'textfield', defaults: { anchor: '100%' }, items: [{ fieldLabel: 'Street', name: 'street' },{ fieldLabel: 'City', name: 'city' },{ fieldLabel: 'State', name: 'state' },{ fieldLabel: 'Zip', name: 'zip' }] }); var accordion = Ext.create('Ext.panel.Panel', { layout: 'accordion', renderTo: Ext.getBody(), title: 'My Profile', width: 300, height: 240, items: [basicInfo, phoneInfo, locationInfo] }); // load the forms (notice the load requests will get batched together) basicInfo.getForm().load({ // pass 2 arguments to server side getBasicInfo method (len=2) params: { foo: 'bar', uid: 34 } }); phoneInfo.getForm().load({ params: { uid: 5 } }); // defer this request just to simulate the request not getting batched // since it exceeds to configured buffer Ext.Function.defer(function(){ locationInfo.getForm().load({ params: { uid: 5 } }); }, 200); // rpc call TestAction.doEcho('sample'); }); ;FI"dependency_digest;F"%c6091936aef38e396b98222e40748f4aI"required_paths;F[I"0$root/app/assets/javascripts/direct_form.js;FI"dependency_paths;F[{I" path;FI"0$root/app/assets/javascripts/direct_form.js;FI" mtime;FI"2012-11-02T11:25:18+01:00;FI" digest;F"%c0b04565462aa09ee4142a2a7cc7b59cI" _version;F"%9f3b95dd7ea3030dc35985c0a8020862