@udi,

Thanks for the module. I Probably should have opened separate issues, but 3 minor things that poped when I looked at the code:
1) I think some of the functionlity can be replaced with CTools ajax (which is now in D7)
2) ajax_slideshow_get_node_ajax is node centric. Since there's a dependency in Views, I think you can ommit this, and also the photos/get/photos menu item which sounds "custom"
3) if (module_exists('jquery_plugin')){ -- if you have a dependency in this module ,no need to check ;)

Comments

udig’s picture

Thanks Amitai,

1. Interesting tip - I will look into it.
2. ajax_slideshow_get_node_ajax is being called via ajax by the loadNode js function. Do you mean that this call should be replaced with something else? The view only brings the nids / titles - list. I probably miss here something bigger.
As for the 'photos/get/photos' indeed I oversaw that - bad path selection. Will be corrected.
3. Right. Will be corrected.

amitaibu’s picture

> The view only brings the nids / titles - list. I probably miss here something bigger.

IMO you should get the output from Views, and not bother with node/user/entity loading. The power of Views is creating the output as you please, and allow you to theme it as you please. Your module's "job" is just to bring this output via Ajax. Any attempt to create the output, is out of the module's scope.

amitaibu’s picture

>Your module's "job" is just to bring this output via Ajax. Any attempt to create the output, is out of the module's scope.

I have actually thought a little more about the above quote. As Views already support Ajax pagination, your module can actually remove lots of code and only deal with "clicking" via JS on the next page -- or am I missing other features that need custom code?

udig’s picture

IMO you should get the output from Views

The view is being activated during the request. If the output was brought back it either rendered to the page or it will be lost (isn't it?). If the view is rendered to the page then there's no need for ajax (all the nodes already there) but then we missed the whole point of the module. If the view is not rendered to the page how can the ajax access the view output - it's not available anymore isn't it?

As Views already support Ajax pagination, your module can actually remove lots of code and only deal with "clicking" via JS on the next page

Interesting idea. The tabs titles are also brought by the view. if views ajax is to be used we will need to set the page size for 1 item at a time (ajax is at the page level). this means that we will see only one tab at a time. We can use here 2 different displays though (one for the tabs with no paging and ajax and one for the nodes).
However there's another issue here - the preloading. This module implements ajax preloading to prevent non smooth transitions. it also ensures that each node load (via ajax) is done only once. Using the views inherent ajax can only serve the user generated ajax call (not the preloading).

pietro.a’s picture

I like this module, which looks much less heavy than other slideshow generators, but my first problem is to make its output look more like what is shown in the demo site (i would appreciate any help).
While wondering how to, i think i realized that Amitaibu's issue #2 could, in principle, be solved with a view of a view. In that case, ajax_slideshow_view would take as filter a customized view (where one can select desired fields, and work out css theming).

However, this doesn't solve my problem of getting "Node title" and "Link to node" be superimposed as in the demo site...

udig’s picture

Hey pietro.a

Here's the thing - the slideshow renders the node *exactly* the same way the node would render outside of the slideshow (i.e. regular node_view). So, first check the way the nodes incorporated within the slideshow, appear outside of it. If they do not show the title+link the way you want them to adjust the node.tpl.php.

BTW, the demo is using the standard node.tpl.php content and structure - since the node_view function is called by the module using $page=FALSE, the linked node's title is presented at the top of the node as it should.

Did this help?

pietro.a’s picture

Hi udig, thank you for your hints. During the last days I went for ddblock (and had a quite hard time with it), so I am more than happy to use your module instead.
I checked back to it, and everything works now.
When i said as in the demo site I actually didn't mean http://67.222.4.219/slideshow-front, but instead http://67.222.4.219/front where the slideshow looks different (and that's what i'm looking for); could you point me to the needed modifications?

Thanks again for your help.

udig’s picture

hmmm...
That page is not using the ajax slideshow... yet.
It uses the scrollable JQuery Tools utility available by the JQuery Plugins module with some additional custom code.
My intention is to make this effect (scrollable) available on the next release of ajax slideshow.

udig’s picture

Status: Active » Needs work