20090716

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 because this is something else in the listener definition.