20090716¶
I you want to see an invoice generated by iGen, then click on http://igen.saffre-rumma.ee/trading/invoices/2/pdf But notice that you will first have to log in as root (password “1234”).
20090811¶
Working on ExtJS integration. The main menu was easy. Now I’m at the databrowse which uses a Ext.grid.Grid.
Should Lino use XML or JSON for AJAX?
Answer (from http://ajaxian.com/archives/json-vs-xml-the-debate): “JSON is a better fit for Web services that power Web mashups and AJAX widgets due to the fact that it is essentially serialized JavaScript objects which makes it fit better client side scripting which is primarily done in JavaScript. That’s it. XML will never fit the bill as well for these scenarios without changes to the existing browser ecosystem which I doubt are forthcoming anytime soon.”
20091229¶
Removed timtools-related changelog entries after having copied them to the timtools repository. Seems that I will maintain a changelog using Sphinx for each of my projects.
The ProjectsByCompany button in contacts.Companies now works. Lino.show_slave() no longer necessary since we can use Lino.show_detail() here too. Code generated by run_report() before:
var tied_grid = call_params['tied_grid']; if (tied_grid) { tied_grid.main_grid.getSelectionModel().addListener('rowselect', function(sm,rowIndex,record) { var p={mk:record.id}; p['mt'] = 16; this.dsbe_ProjectsByCompany_store.load({params:p}); // [1] })}
and after:
var tied_grid = call_params['tied_grid']; if (tied_grid) { var store = this.dsbe_ProjectsByCompany_store; // [2] tied_grid.main_grid.getSelectionModel().addListener('rowselect', function(sm,rowIndex,record) { var p={mk:record.id}; p['mt'] = 16; store.load({params:p}); })}
[1] and [2] The trick was to create another variable
store
becausethis
is something else in the listener definition.