
save.php is code to save the state to the db. Its called via Ajax Post (Line 44 - 46) and pass the parameters { task (saving), name (grid_stateId) , value(grid_State) }. Its was fun doing this. Thanks for the help. On Wed, Jul 3, 2013 at 6:23 PM, Steve Obbayi <steve@sobbayi.com> wrote:
Ok I have deleted a coma on line 47
made a small change on line 66 and line 70 and it now runs, here is the update
So the question is what lies behind "save.php"
Steve
------------------------------
*From: *"Ken Muturi" <muturiken@gmail.com> *To: *"Skunkworks Mailing List" <skunkworks@lists.my.co.ke> *Sent: *Miércoles, 3 de Julio 2013 15:59:55
*Subject: *Re: [Skunkworks] Ext.state.HttpProvider to store state in database
i still haven't figured out a way of posting this on fiddle (a working example ) but the code is here. http://jsfiddle.net/pzVbU/2/
On Wed, Jul 3, 2013 at 5:24 PM, Ken Muturi <muturiken@gmail.com> wrote:
Am not getting any errors from the console.log().. My quess for now is in the Exjs encodeValue vs decodeValue (though i havent hacked it fully) . Why? because why i changed the state to a cookie provider it works... the structure of the cookie value is abit different from the stored value in the db.
Db values -----------------------------------------------------------------------
{ name: 'grid_152', value : "o:columns=a:o%3Aid%3Ds%253Ah1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah2%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah3%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah4%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah5%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah6%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah7%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah8%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah9%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah10%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah11%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah12%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah13%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah14%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah15%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah16%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah17%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah18%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah19%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah20%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah21%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah22%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah23%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah24%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah25%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah26%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah27%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah28%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah29%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah30%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah31%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah32%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah33%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah34%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah35%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah36%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah37%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah38%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah39%5Esortable%3Db%253A0^filters=o:" }
cookie value ----------------------------------------------------------------------- { name: 'grid_152', value : "o%3Aid%3Ds%253Ah1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah2%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah3%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah4%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah5%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah6%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah7%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah8%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah9%5Ehidden%3Db%253A1%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah10%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah11%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah12%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah13%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah14%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah15%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah16%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah17%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah18%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah19%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah20%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah21%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah22%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah23%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah24%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah25%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah26%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah27%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah28%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah29%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah30%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah31%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah32%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah33%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah34%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah35%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah36%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah37%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah38%5Esortable%3Db%253A0^o%3Aid%3Ds%253Ah39%5Esortable%3Db%253A0^filters=o:" };
Can someone help me with steps on posting, code on JSFiddle.. (Sencha is Package Specific my plugin is on Ex.State) ?
Thanks.
On Wed, Jul 3, 2013 at 5:00 PM, Steve Obbayi <steve@sobbayi.com> wrote:
1. What do you mean by "sencha will not bulge" 2. Get rid of the commas after the last configs 3. What other errors are you getting from your console.log it will be easier to start from there. 4. Can you post your code on http://jsfiddle.net/ then share the link before I go in and see what you are doing wrong :)
------------------------------
*From: *"Ken Muturi" <muturiken@gmail.com> *To: *"Skunkworks Mailing List" <skunkworks@lists.my.co.ke> *Sent: *Miércoles, 3 de Julio 2013 12:02:05 *Subject: *Re: [Skunkworks] Ext.state.HttpProvider to store state in database
People :-
I have created my own plugin for the above by extending Ext.state.Provider that saves the state of a grid to a db (filters, grouping, sorting, column size, etc) :-
Ext.define('Ext.state.HttpProvider', { extend: 'Ext.state.Provider', constructor: function(config) { Ext.state.HttpProvider.superclass.constructor.call(this); this.url = "";
Ext.apply(this, config); this.state = this.readValues(); },
// private set : function(name, value){ if(typeof value == "undefined" || value === null){ this.clear(name); return; } this.setValue(name, value); Ext.state.HttpProvider.superclass.set.call(this, name, value); },
// private clear : function(name){ this.clearValue(name); Ext.state.HttpProvider.superclass.clear.call(this, name); },
// private readValues : function(){ var state = {};
for (var name in ExtState) { if(name!='remove') { state[name] = this.decodeValue(ExtState[name]); } } return state; },
// private setValue : function(name, value){
var conn = new Ext.data.Connection(); conn.request({ url: this.url, params: {task: 'set', 'name': name, 'value': this.encodeValue(value) }, }); },
// private clearValue : function(name){ var conn = new Ext.data.Connection(); conn.request({ url: this.url, params: {task: 'set', 'name': name, 'value': 'null' }, }); } });
// calling it from the grid. var ExtState = Ext.decode('<?php echo json_encode($grid_state); ?>'); var _cp = Ext.create('Ext.state.HttpProvider', { url: save_grid_state_url }); Ext.state.Manager.setProvider(cp);
On console.log @ readValues() and setValues() they have the correct Extjs4 grid state but sencha will not bulge.
Has someone worked on something like this before ?
On Wed, Jul 3, 2013 at 9:49 AM, Ken Muturi <muturiken@gmail.com> wrote:
Has anyone done some Sencha Grid (4.1) magic using Ext.state.HttpProvider ?
When i do:
Ext.state.Manager.getProvider().initState( state_saved_in_db ); // [{"name":"grid-32","value":"............."}}]
It Seems not to work
_______________________________________________ skunkworks mailing list skunkworks@lists.my.co.ke ------------ List info, subscribe/unsubscribe http://lists.my.co.ke/cgi-bin/mailman/listinfo/skunkworks ------------
Skunkworks Rules http://my.co.ke/phpbb/viewtopic.php?f=24&t=94 ------------ Other services @ http://my.co.ke
_______________________________________________ skunkworks mailing list skunkworks@lists.my.co.ke ------------ List info, subscribe/unsubscribe http://lists.my.co.ke/cgi-bin/mailman/listinfo/skunkworks ------------
Skunkworks Rules http://my.co.ke/phpbb/viewtopic.php?f=24&t=94 ------------ Other services @ http://my.co..ke <http://my.co.ke>
_______________________________________________ skunkworks mailing list skunkworks@lists.my.co.ke ------------ List info, subscribe/unsubscribe http://lists.my.co.ke/cgi-bin/mailman/listinfo/skunkworks ------------
Skunkworks Rules http://my.co.ke/phpbb/viewtopic.php?f=24&t=94 ------------ Other services @ http://my.co.ke
_______________________________________________ skunkworks mailing list skunkworks@lists.my.co.ke ------------ List info, subscribe/unsubscribe http://lists.my.co.ke/cgi-bin/mailman/listinfo/skunkworks ------------
Skunkworks Rules http://my.co.ke/phpbb/viewtopic.php?f=24&t=94 ------------ Other services @ http://my.co.ke