Ideas, how we could convert all grids to ajax with less effort

4 views
Skip to first unread message

Alexander Obuhovich

unread,
Dec 4, 2009, 9:31:54 AM12/4/09
to In-Portal Development
  1. Add "custom_blocks_template" parameter to "grid" block. The value of this parameter is template path, where all custom cell blocks, that are used in this grid are defined.
  2. Move contents of current "grid" block to new template (will be one template, used on all grids) and name it "incs/ajax_grid.tpl" for example.
  3. Replace current "grid" block content with container <div> element and include of "incs/ajax_grid.tpl" template (this prevents additional ajax query on initial grid load).
  4. Each grid action will actually get "incs/ajax_grid.tpl" template contents (via ajax) and pass all "grid" block parameters (from template) to that template in url (around 7 parameters at most).

This approach requires only one action to be taken to convert all customized (user-made) grids to work: move all user-defined grid blocks to separate template and specify it's name in "grid"'s block parameter.

We need to do extra programming to be able to update static template parts (ones, that doesn't come from ajax), like search query from ajax respoce (something like that already happens in catalog). Also catalog/advanced view has quite different implementation, that also need to be converted, but we can do it later of course, because it doesn't intersect with proposed idea's implementation.

--
Best Regards,

http://www.in-portal.org
http://www.alex-time.com

Alexander Obuhovich

unread,
Dec 4, 2009, 9:36:06 AM12/4/09
to In-Portal Development
Forgot to mention, that we also need to move all code, that works with grid from end template (like setting dependent buttons and so on) to new jQuery event, like onAfterGridLoad and do it all there, but this is nothing comparing to the benefits we will get of converting to ajax all grids.

Dmitry

unread,
Dec 4, 2009, 1:22:40 PM12/4/09
to in-por...@googlegroups.com
Yes, we've been talking about this approach for quite awhile now, so I say let's plan it for 5.1.0 a feature? I'll be happy to help as much as I can with implementation.

By the way I am already using similar approach in Business Directory theme where all of Link grids are Ajax loaded so we have single template that parses all params and loads us the results. It's just smaller scale, but works well.

What you think it's time to file a new feature request in Issue Tracker for this?

Very useful report!


Cheers and talk soon.
-- 


--
Best Regards,

Dmitry V. Andrejev
--

You received this message because you are subscribed to the Google Groups "In-Portal Development" group.
To post to this group, send email to in-por...@googlegroups.com.
To unsubscribe from this group, send email to in-portal-de...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/in-portal-dev?hl=en.

Alexander Obuhovich

unread,
Dec 4, 2009, 4:44:32 PM12/4/09
to in-por...@googlegroups.com
Of course, we need to create task for it.

Dmitry A.

unread,
Dec 6, 2009, 11:45:47 PM12/6/09
to In-Portal Development
New task has been filed for this:

438: Converting Admin Grids to Ajax:

http://tracker.in-portal.org/view.php?id=438

Anyone has anything to add here? Please feel free to speak up.


DA.

On Dec 4, 3:44 pm, Alexander Obuhovich <aik.b...@gmail.com> wrote:
> Of course, we need to create task for it.
>
>
>
>
>
> On Fri, Dec 4, 2009 at 8:22 PM, Dmitry <dandre...@gmail.com> wrote:
> >  Yes, we've been talking about this approach for quite awhile now, so I say
> > let's plan it for 5.1.0 a feature? I'll be happy to help as much as I can
> > with implementation.
>
> > By the way I am already using similar approach in Business Directory theme
> > where all of Link grids are Ajax loaded so we have single template that
> > parses all params and loads us the results. It's just smaller scale, but
> > works well.
>
> > What you think it's time to file a new feature request in Issue Tracker for
> > this?
>
> > Very useful report!
>
> > Cheers and talk soon.
>
> > --
>
> > --
> > Best Regards,
>
> > Dmitry V. Andrejev
>
> > -----Original Message-----
> > *From*: Alexander Obuhovich <aik.b...@gmail.com<Alexander%20Obuhovich%20%3caik.b...@gmail.com%3e>
>
> > *Reply-To*: in-por...@googlegroups.com
> > *To*: In-Portal Development <in-por...@googlegroups.com<In-Portal%20Development%20%3cin-portal-dev@ googlegroups.com%3e>
>
> > *Subject*: Re: Ideas, how we could convert all grids to ajax with less
> > effort
> > *Date*: Fri, 4 Dec 2009 16:36:06 +0200
>
> > Forgot to mention, that we also need to move all code, that works with grid
> > from end template (like setting dependent buttons and so on) to new jQuery
> > event, like onAfterGridLoad and do it all there, but this is nothing
> > comparing to the benefits we will get of converting to ajax all grids.
>
> > On Fri, Dec 4, 2009 at 4:31 PM, Alexander Obuhovich <aik.b...@gmail.com>
> > wrote:
>
> >    1. Add "custom_blocks_template" parameter to "grid" block. The value of
> >    this parameter is template path, where all custom cell blocks, that are used
> >    in this grid are defined.
> >    2. Move contents of current "grid" block to new template (will be one
> >    template, used on all grids) and name it "incs/ajax_grid.tpl" for example.
> >    3. Replace current "grid" block content with container <div> element
> >    and include of "incs/ajax_grid.tpl" template (this prevents additional ajax
> >    query on initial grid load).
> >    4. Each grid action will actually get "incs/ajax_grid.tpl" template
> >    contents (via ajax) and pass all "grid" block parameters (from template) to
> >    that template in url (around 7 parameters at most).
>
> > This approach requires only one action to be taken to convert all
> > customized (user-made) grids to work: move all user-defined grid blocks to
> > separate template and specify it's name in "grid"'s block parameter.
>
> > We need to do extra programming to be able to update static template parts
> > (ones, that doesn't come from ajax), like search query from ajax respoce
> > (something like that already happens in catalog). Also catalog/advanced view
> > has quite different implementation, that also need to be converted, but we
> > can do it later of course, because it doesn't intersect with proposed idea's
> > implementation.
>
> > --
> > Best Regards,
>
> >http://www.in-portal.org
> >http://www.alex-time.com
>
> > --
> > Best Regards,
>
> >http://www.in-portal.org
> >http://www.alex-time.com
>
> > --
>
> > You received this message because you are subscribed to the Google Groups
> > "In-Portal Development" group.
> > To post to this group, send email to in-por...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > in-portal-de...@googlegroups.com<in-portal-dev%2Bunsubscribe@goog legroups.com>
> > .
> > For more options, visit this group at
> >http://groups.google.com/group/in-portal-dev?hl=en.
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "In-Portal Development" group.
> > To post to this group, send email to in-por...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > in-portal-de...@googlegroups.com<in-portal-dev%2Bunsubscribe@goog legroups.com>
> > .
Reply all
Reply to author
Forward
0 new messages