Slideshow not working

tarjan17 / 2017-09-26 00:01:19   

Hello,

I installed for the first time Indexhibit v2.1.4. and I tried to make a very simple slideshow, with just three images for testing.
I only get to see the first image in the slideshow and there is no way to move to the next two.

I repeated the installation, but the result was the same.

I made exactly the same steps with exactly the same settings in the demo version, which is a v2.1.3, and here the slideshow works.

After seeing the demo working, I enabled the plugins in my site, so they look exactly like the plugins in the demo, but nothing changes.

The slideshow settings which I tried are:
Media Source:exibit
Exibit Format: Slideshow
Uniform height: 500
Navigation type: none
Navigate: below

I made a file comparison of all the files containing the word "slideshow" (e.g. slideshow.css, jquery.slideshow.js, format.slideshow.php, plugin.jxs_slideshow.php) between the demo version and my installed version, and all these files are identical.

After spending two days by reading all the forum threads which seemed relevant to me and also trying to figure out which other files of Indexhibit could play a role, I still have no idea what is wrong with my installation and have also no other idea, what I could do to solve this problem.

The link to my testing site, where the problem can be seen is:
thefactfinder.de/artspace/index.php/exhibitions/friends/

Any help would be greatly appreciated.
Thank you.

oscarito / 2017-09-27 07:10:35   

Hi. Did you try with Navigation type: links?

tarjan17 / 2017-09-27 21:17:55   

Hi oscarito,
Navigation type "links" shows that there are three pictures, but when I click on "next" nothing happens, I cannot move to the next image.

And in navigation type "thumbnails" I can also see all the three thumbnails, but the problem remains: when I click on the second or the third thumbnail, nothing happens.

oscarito / 2017-09-28 07:01:14   

Tarjan, did yoy try putting ajax.php permissions with 777 or 755?
As Vaska suggest here: indexhibit.org/forum/thread/20771/

Good luck.

tarjan17 / 2017-09-28 20:37:04   

Oscarito,

thank you for pointing out this older thread to me, which i didn't find by myself.
Before I installed Indexhibit I disabled mod_security on my host and I have now just changed the permission of ajax.php first to 755 then to 777, but the slideshow still doesn't work.

Anyway, if it must be a permission issue, as Vaska said, I'll try to toggle the permissions of other files too.

Vaska A / 2017-09-28 22:08:28   

Disable Indexpand and see if it helps. Shift + refresh the browser cache, too.

tarjan17 / 2017-09-30 13:55:28   

I disabled Indexpand and refreshed the browser cache, I also asked somebody else to check my link with the slideshow. It still doesn't work.

tarjan17 / 2017-10-04 21:57:02   

I post for the sake of completeness how I managed to solve the problem.

At some point I noticed in the folder "ndxzsite/plugin" a file named "error_log".
I looked inside and found : "Redefining already defined constructor for class Jxs_slideshow" in [...]/
ndxzsite/plugin/plugin.jxs_slideshow.php on line 16".

As the class already has a constructor, I thought, I could comment out the code:

public function Jxs_slideshow()
    {
        self::__construct();
    }

and I did it.
After that, I found in the "error_log" a new error message for the line 81.

I have absolutely no clue about how this was possible, but in the lines

(81) $a .= "";

and

(144) $a .= "";

all the four backslashes were missing, although the original file, which I uploaded on the server, contains them.

So I added the backslashes back to where they belong and afterwards the slideshow started to work.

tarjan17 / 2017-10-04 22:11:39   

Sorry, I forgot to wrap the code with 'code' tags. I suppose this is why the text following the code was marked as linked (I didn't mark it myself).

  1. The respective lines again:
  2. (81) :
  3. $a .= "<a href='#' onclick="next(); return false;"><span class='nextlink'></span></a>";
  1. (144):
  2. $a .= "<a style='width: {$click_width}px; height: {$bottom_setting}px;' href='#' onclick="next(); return false;">";
tarjan17 / 2017-10-04 22:29:27   

And now a very big surprise: in my above posted code, the backslashes after "onclick=" and after "return false;" have again disappeared, just like it happened in the case of the file "plugin.jxs_slideshow.php" on my server.

Does anybody have an idea why?

Vaska A / 2017-10-05 06:44:53   

Yes, do not use the built-in asset editor on plugins - it has issues. I regret allowing the editor to edit anything except CSS.

Restore the files with an unedited versions and only edit with a text editor.

tarjan17 / 2017-10-05 22:18:44   

Thanks, Vaska.
So i understand now, why the backslashes disappeared. But I still don't understand what the problem with the message in "error_log": Redefining already defined constructor for class Jxs_slideshow" in [...]/
ndxzsite/plugin/plugin.jxs_slideshow.php on line 16" was.

In the online demo version this message doesn't show up. Does it have to do with the PHP version? I have PHP 5.6.30 on the server.

This thread has been closed, thank you.