Success! Looks like we've fixed this one. According to our records the fix was applied for a bug in our system in a recent build.
  1. #1
    Ext JS Premium Member stevil's Avatar
    Join Date
    Nov 2007
    Location
    Denver, CO
    Posts
    1,045
    Vote Rating
    9
    stevil will become famous soon enough

      0  

    Default [EXTJSIV-2532] Store does not consistently pass event parameters to beforeload

    [EXTJSIV-2532] Store does not consistently pass event parameters to beforeload


    The store documentation says that the 'beforeload' event supplies two arguments - the store, and the operation.

    The mask method on Ext.data.Store fires 'beforeload' with no additional parameters.

    The Ext.ux.FilterFeature onBeforeLoad() method assumes two arguments, the second of which is expected to be options for the load (not an operation), and is not null checked.

    In any event, I think either the doc or the 'beforeload' fires should be corrected. Also, the FilterFeature is incredibly useful. +1 for making it fully compatible!

    stevil

  2. #2
    Ext JS Premium Member stevil's Avatar
    Join Date
    Nov 2007
    Location
    Denver, CO
    Posts
    1,045
    Vote Rating
    9
    stevil will become famous soon enough

      0  

    Default [4.0.1] FiltersFeature and Infinite Scrolling grids

    [4.0.1] FiltersFeature and Infinite Scrolling grids


    If using Ext.ux.grid.FiltersFeature with an infinite scrolling grid, an error occurs when you page down the scrollbar far enough to trigger a reload, indicating that the options parameter to FiltersFeature.onBeforeLoad() is undefined (and so the first line of the handler fails to set options.params because options is undefined).

    Also, when the scroller attempts to load the store up with the next batch of records, what's returned is an unfiltered list (I'm thinking because of the failure to pass options to onBeforeLoad on the FiltersFeature?)

    Cheers,
    stevil

  3. #3
    Ext JS Premium Member stevil's Avatar
    Join Date
    Nov 2007
    Location
    Denver, CO
    Posts
    1,045
    Vote Rating
    9
    stevil will become famous soon enough

      0  

    Default [OPEN EXTJSIV-2532] Store does not consistently pass event parameters to beforeload

    [OPEN EXTJSIV-2532] Store does not consistently pass event parameters to beforeload


    When using a buffered store for an infinite scrolling grid, and using Ext.ux.grid.FiltersFeature, setting a filter on the column causes filtering to take place, as expected - onBeforeLoad fires for the FiltersFeature, with correct store and options. (This seems to work in spite of the fact that the second argument is an Operation, as opposed to "options", but that's what the event handler in FiltersFeature references, so be it.)

    However, when you scroll the grid enough to induce a new page load, guaranteeRange() calls mask(), which fires a beforeload event on the store with no parameters. As a result, FiltersFeature gets no opportunity to add filter information to the options parameter, as the options parameter will be undefined. The result is that the initial load is filtered, but subsequent pages are not.

    Conversely, when the grid loads, unmask() is called, which fires a load event, also with no parameters.

    Request: Please wire the store to provide all documented event parameters.

    stevil

  4. #4
    Ext JS Premium Member stevil's Avatar
    Join Date
    Nov 2007
    Location
    Denver, CO
    Posts
    1,045
    Vote Rating
    9
    stevil will become famous soon enough

      0  

    Default


    I know there are other bugs being fixed around FiltersFeature - I'm really hoping someone will see this and give the Store the event love it needs to work properly on paging requests with FiltersFeature.

    stevil

  5. #5
    Ext JS Premium Member stevil's Avatar
    Join Date
    Nov 2007
    Location
    Denver, CO
    Posts
    1,045
    Vote Rating
    9
    stevil will become famous soon enough

      0  

    Default


    Could I get a ruling on this, please?

    stevil

  6. #6
    Sencha - Support Team mike.estes's Avatar
    Join Date
    Mar 2011
    Location
    Redwood City, CA
    Posts
    220
    Vote Rating
    8
    mike.estes will become famous soon enough

      0  

    Default


    filed as EXTJSIV-2532, thank you for reporting

  7. #7
    Ext JS Premium Member stevil's Avatar
    Join Date
    Nov 2007
    Location
    Denver, CO
    Posts
    1,045
    Vote Rating
    9
    stevil will become famous soon enough

      0  

    Default


    Quote Originally Posted by mike.estes View Post
    filed as EXTJSIV-2532, thank you for reporting
    No problem. The two prime offenders here seem to the mask() and unmask() methods on Store. I'm not sure if there are other places as well.

    stevil

  8. #8
    Sencha User
    Join Date
    Sep 2010
    Posts
    73
    Vote Rating
    0
    JanVenekamp is on a distinguished road

      0  

    Default


    [4.0.2a]

    For the load event you can listen to the undocumented prefetch event, which is wrongly documented as the load event.

    In Ext.data.Store:

    PHP Code:
                /**
                 * @event load
                 * Fires whenever records have been prefetched
                 * @param {Ext.data.store} this
                 * @param {Array} records An array of records
                 * @param {Boolean} successful True if the operation was successful.
                 * @param {Ext.data.Operation} operation The associated operation
                 */
                
    'prefetch' 
    And in Ext.data.Store.onProxyPrefetch

    PHP Code:
            me.loading false;
            
    me.fireEvent('prefetch'merecordssuccessfuloperation);
            
            
    // HACK to support loadMask
            
    if (operation.blocking) {
                
    me.fireEvent('load'merecordssuccessful);
            } 

  9. #9
    Sencha User
    Join Date
    Sep 2010
    Posts
    73
    Vote Rating
    0
    JanVenekamp is on a distinguished road

      0  

    Default


    Hmmm... Actually the prefetch event is not always fired.

    I'm using a buffered grid with a paging scroller and remote filter.
    When first loading the initial data with guarantyRange the event is fired. When applying a filter, the event is is not fired when loading the first page. When scrolling triggers the second page load the event is fired for this page.

    Need further investigation...

  10. #10
    Ext JS Premium Member stevil's Avatar
    Join Date
    Nov 2007
    Location
    Denver, CO
    Posts
    1,045
    Vote Rating
    9
    stevil will become famous soon enough

      0  

    Default


    Quote Originally Posted by JanVenekamp View Post
    Hmmm... Actually the prefetch event is not always fired.

    I'm using a buffered grid with a paging scroller and remote filter.
    When first loading the initial data with guarantyRange the event is fired. When applying a filter, the event is is not fired when loading the first page. When scrolling triggers the second page load the event is fired for this page.

    Need further investigation...
    That's because mask() and unmask() are being called somehow when you filter, and it's these methods that fire the beforeload and load events without parameters.

    Also, there's another related bug, which is that when you invoke filter() on a store, it calls load(), even if you're in a buffered store.

    stevil

film izle

hd film izle

film sitesi

takipci kazanma sitesi

takipci kazanma sitesi

güzel olan herşey

takipci alma sitesi

komik eğlenceli videolar