2,376

(3 replies, posted in Juicebox-Pro Support)

Can I make a slider that looks like the one for the boat styles on http://henriquesyachts.com/ and shown in the attached screen shot?

Unfortunately, not (at least not easily).
If you disabled the thumbnails and used only the main images, then only one main image would be displayed at any one time (although you could overlay the captions on top of the images and associate a unique link to each image).
If you hid the main images (it is not possible to disable them via configuration options), then although you could size the thumbnails as you like and display several in a row, it would not be possible to overlay the captions on top of the thumbnails (you would need to make the text part of the images themselves) and it would also not be possible to link thumbnails to different web pages. (When a thumbnail is clicked, the corresponding main image is displayed in the gallery.)

You could try something like the following (using the Juicebox-Pro API and knowledge of the internal classes of Juicebox) to open an image's linkURL when the corresponding thumbnail is clicked.
However, Juicebox was not designed to do this and a couple of small delays are necessary to get this to work.
You would also need to hide the main images via CSS.

<script type="text/javascript" src="jbcore/juicebox.js"></script>
<script type="text/javascript">
    var jb = new juicebox({
        containerId: "juicebox-container"
    });
    jb.onInitComplete = function() {
        window.setTimeout(function() {
            $('.jb-idx-thumb').click(function() {
                window.setTimeout(function() {
                    var index = jb.getImageIndex();
                    var info = jb.getImageInfo(index);
                    var url = info.linkURL;
                    window.open(url);
                }, 500);
            });
        }, 500);
    };
</script>

I hope this points you in the right direction but please note that Juicebox was not designed to do this so getting it working exactly as you want it to might be quite tricky.

I'm glad you've found the solution to your problem.
Thank you for posting back to let me know.

For others reading this thread, the AutoPlay status message can be suppressed by setting showAutoPlayStatus="FALSE" (in JuiceboxBuilder-Pro's 'Customize -> AutoPlay' section).

2,378

(8 replies, posted in Juicebox-Pro Support)

RewriteCond %{REQUEST_URI} !/jboxgalleries/config.php$

in the drupal htaccess did the trick.  Thank you!

You're welcome.
I'm glad I was able to point you in the right direction and that you're getting on well with Juicebox.

I think juicebox could be just a GREAT solution and I'll post this over in the Drupal forums when I get a few more examples done.

Thank you for spreading the word!

2,379

(8 replies, posted in Juicebox-Pro Support)

As I noted in my last post, I have used your 'config.php' file without modification (just correcting the typo) in a test gallery and it works fine so the code is OK (including your user id and album id) and it looks like the problem may lie somewhere on your web server.

If you try to open your 'config.php' file (http://fkelly.org/drupal8/jboxgalleries/config.php) directly in your browser, you should see the XML code generated by the script.
Instead, an error 403 (forbidden) is displayed.

It looks like the permissions of the file might be too restrictive.
Please check the permissions of the 'config.php' file on your web server and those of its parent folders ('drupal8' and 'jboxgalleries'). Default permissions of 644 for files and 755 for folders should be fine.

Also, please check to see if you have an entry such as the following in an .htaccess file on your server.

<Files *.php>
    deny from all
</Files>

If you find such an entry, either comment it out or remove it.

Hopefully this will help.

2,380

(15 replies, posted in Juicebox-Pro Support)

I'm glad you've been able to resolve your problem.
Thank you for letting me know.

2,381

(9 replies, posted in Juicebox-Pro Support)

You're welcome!
I'm glad it was an easy fix.

2,382

(8 replies, posted in Juicebox-Pro Support)

There are a couple of small errors in the code you posted above.

In your embedding code, change:

<script src=""/drupal8/sites/all/libraries/juicebox/juicebox.js">

... to:

<script src="/drupal8/sites/all/libraries/juicebox/juicebox.js">

In your 'config.php' file, change the opening:

?php

... to:

<?php

I'm also a bit unsure about what the config.php program is doing.

The 'config.php' file generates XML code (using the required syntax for a Juicebox gallery) and feeds it directly to the browser (without actually saving anything to your web server).

I have just tried using the 'config.php' file with the user information you posted above and it works fine, displaying a gallery with 32 images so once you make the small corrections I noted above, it should work fine for you, too.

2,383

(9 replies, posted in Juicebox-Pro Support)

I'll use the other thread to post my "use Google photos" question.  First I want to figure out what's going on with the 50 photo limit.

Please see my reply to your query in this forum thread.
Hopefully it will help. (It certainly looks like a caching issue. I see 127 images when I view your gallery in my own browsers.)

2,384

(15 replies, posted in Juicebox-Pro Support)

Your gallery is certainly using the Pro files (there is no Juicebox badge/link in the lower-right corner of the gallery) and when I view your gallery, it displays 127 images.
If you are still seeing only 50, then please double-check that you have completely cleared your browser's cache and history before reloading your gallery's web page or try using a different browser (which you have not yet used to view your gallery) as a test. It sounds like your browser is still using a cached version of the Lite 'juicebox.js' file.
Hopefully this will help.

2,385

(9 replies, posted in Juicebox-Pro Support)

@fkelly12054

Many thanks for sharing the information. Hopefully it'll help other Drupal module users.

Juicebox-Pro does not have built-in support for displaying Google images. (As far as I am aware, this is true for the Drupal module, too.)
You would have to write a PHP (or other server-side scripting language) script to pull in your Google images and generate a dynamic XML file as noted in this FAQ:
Can Juicebox handle a custom data source, for example RSS or Instagram?

Just for the record, WP-Juicebox (the dedicated Juicebox plugin for WordPress) does have the ability to display Google/Picasa Web Album images (by entering just the User Id and Album Id/Name into the gallery settings window). (I realise that this is of no use to Drupal but I thought I should mention it for the sake of completeness.)

2,386

(9 replies, posted in Juicebox-Pro Support)

Now I have everything working the way I want!

That's great!
I see no problem with your logic and I would expect this to work fine (as confirmed by your own tests).
I'm glad you've got it working as you like.
Thank you for sharing your solution!

2,387

(9 replies, posted in Juicebox-Pro Support)

1) I moved the caching enabling to .htaccess in my server root instead of the php file. Results were identical, no change.

That's to be expected. They should both result in the same behavior (so at least there's some consistency and predictability there).

So I think I'll continue using 1.4.4.2 with the caching option that you provided.

This certainly seems to be the best solution (and the one that I would use myself).

If anyone of my forum users complains I can always go back to 1.3.3 but I doubt there will be an issue.

I agree. I think it's unlikely that anyone will notice or report any issues to you.
Worst case scenario, you could revert to v1.3.3 (as long as your gallery is not affected by any of the bugs which have been fixed since v1.3.3).

Thanks for the suggestions and help Steven. It is appreciated!

You're welcome.

2,388

(9 replies, posted in Juicebox-Pro Support)

Without further insight into this, such as a handshake condition between the juicebox code and my config.xml file generation, there doesn’t seem to be more that I can do in this direction.

When using a PHP script as a configURL, Juicebox should not use the dynamic XML file until it is complete. As long as the PHP script is generated in a timely manner and is complete with no syntax errors, the gallery should display OK.
An incomplete dynamic XML file (perhaps due to a server timeout) may produce a blank area where the gallery should be.

But were you doing server side calls like me?

I just had a folder of 18 images on my server and had a PHP script randomize the order of them and then display the first 8. I did not use a database.

What changed with juicebox?

I suspect (but am not certain) that the problem may be a side-effect of the following fix from v1.4.3:

FIXED - Image order changes on expanding gallery when randomizeImages="TRUE"

(Please see the Version History for a full list of changes between versions.)
Prior to v1.4.3, if randomizeImages="TRUE", the image order would change when the gallery was expanded (whether browser caching was enabled or not). This was unwanted behavior which really had to be fixed.

I think you may need to have your web server allow browsers to cache files in order for your scenario to work correctly.
If your PHP script did not choose images from a pool of many but just randomized a complete set of images, then you could set randomizeImages="TRUE". I realise that this will not work with your scenario but I thought I should point it out in case it helps and somehow points you towards a suitable solution or workaround.

2,389

(9 replies, posted in Juicebox-Pro Support)

Thank you for keeping me updated.
I'm glad I was able to at least point you in the right direction.
I hope you can find a combination of settings that gives you the balance and functionality that you are looking for.

2,390

(1 replies, posted in Juicebox-Pro Support)

When I enter your Flickr Set Id into JuiceboxBuilder-Pro, your 50 images display as expected.

Here are a few tips that might help.

  • When using a Flickr Set Id, there is no need to use a Flickr User Name or Flickr User Id so try clearing these two input fields and use just the Flickr Set Id.

  • Make sure that JuiceboxBuilder-Pro is not blocked from accessing the internet by any firewall that you might be using.

  • If you are not already using the latest version of JuiceboxBuilder-Pro (v1.4.4.2), try upgrading to see if that helps.
    Instructions for upgrading can be found here.

  • If you have copied and pasted your Flickr Set Id into JuiceboxBuilder-Pro, make sure that there are no spaces after the Id.

Hopefully one of these suggestions will help.

2,391

(9 replies, posted in Juicebox-Pro Support)

I have written a PHP script to select a certain number of images from a pool of many and display them in a random order but I have not been able to replicate the problem you describe.
The images displayed (and their order) change each time the gallery is displayed (just like your gallery) but the images retain their order when the gallery is expanded.
(I have also tried setting expandInNewPage to AUTO, TRUE and FALSE with the same results each time.)

From your own scenario, it certainly looks like Juicebox refers to the XML file (seeing a new set of images) when the gallery is expanded.

I think the problem may be due to web server cache settings.
If your browser has cached the XML file, then Juicebox should be able to refer to the cached version and display the same images in the expanded gallery as in the normal version.

However, if your web server does not allow browsers to cache files and forces browsers to fetch files from the server each time they are required, then Juicebox would have no option but to use a freshly-generated XML file with a new set of images when the gallery is expanded.

Please check your web server's Cache-Control headers. Allowing browsers to cache files may solve your problem.
Try adding the following code to an .htaccess file in your root directory (as long as you have an Apache web server).

<IfModule mod_headers.c>
    Header set Cache-Control "max-age=86400"
</IfModule>

Alternatively, try setting the header via PHP (at the top of your 'config.php' file) with the following code:

header("Cache-Control: max-age=86400");

I hope this helps.

2,392

(4 replies, posted in Juicebox-Lite Support)

The Juicebox gallery itself seems to be displaying and functioning fine.
The problem seems to be that the gallery is in a container on your page which is only 10px wide so the gallery is not visible.
The parent container of the gallery which seems to be causing the problem is this one:

<div class="field field-name-field-gallery field-type-image field-label-hidden">

Please check the widths of your gallery's parent containers.
Increasing the width of the container above from 10px (to perhaps something like 100%) should hopefully fix your problem.
Changing the code above dynamically (using a browser's developer tools) to the following seems to work fine:

<div class="field field-name-field-gallery field-type-image field-label-hidden" style="width: 100%;">

I hope this points you in the right direction.

2,393

(1 replies, posted in Juicebox-Pro Support)

Clearing your browser's cache should work. If your browser has no cached version of your gallery's XML file, then it has no option but to use the current version from your web server.

Please see this FAQ:
When I update my gallery I don't see my changes online. Why?

It sounds like your gallery's XML file might not have been updated on your web server. If you are in any doubt that your old file is not being overwritten with the new version, then delete the old version from your web server first before uploading the new version in its place.

If you want to prevent browsers from caching your gallery's XML file, then try defining your gallery's XML file with a unique identifier (e.g. the current time which will be different each time the browser loads the page) using the configUrl option in your gallery's embedding code.

<!--START JUICEBOX EMBED-->
<script src="jbcore/juicebox.js"></script>
<script>
    new juicebox({
        containerId : 'juicebox-container',
        configUrl : 'config.xml?nocache=' + new Date().getTime()
    });
</script>
<div id="juicebox-container"></div>
<!--END JUICEBOX EMBED-->

OK. Thank you for letting me know.

For other users reading this post and experiencing similar symptoms (new images not displaying in a gallery), the following FAQs may help:
My images show locally, but not when I upload them to my website. Why?
When I update my gallery I don't see my changes online. Why?

2,395

(1 replies, posted in Juicebox-Pro Support)

If Readymag does not support FTP (please check with their support), then there will be no easy way for you to upload your gallery files to the web space that they provide.
You would need to host your gallery elsewhere (such as Google Drive) and load your gallery into an iframe on your Readymag web page.
Please see the Embedding in a Web Template Site instructions.

Slideshow Customization

When following the web template site instructions, you can create your gallery (and configure it) using JuiceboxBuilder-Pro before uploading the complete gallery folder (all images and gallery resource files) to Google Drive.

Image Hosting

Unless you are using a Flickr account as a source of images, the images to be displayed in the gallery need to be listed in the gallery's XML file. When creating a gallery with JuiceboxBuilder-Pro, the images are included within the gallery folder and are usually hosted on the same domain along with the gallery resource files and the web page containing the gallery's embedding code. You could host your images elsewhere but you would need to manually edit the gallery's XML file and ensure that the imageURL entries point towards them.

Viewport Specific slideshows

Juicebox galleries adapt to different devices and browser window sizes so there should be no need to create separate galleries for individual scenarios.
Please see the Gallery Tour for details of Screen Modes and Input Modes.
Also, you might like to look into the possibility of creating a Multi-Size Image gallery so that images of an appropriate size are using in the gallery depending on the device and browser window size being used to view the gallery.

2,396

(496 replies, posted in Juicebox-Pro Support)

@John_B

Thank you for the suggestion.
Although it is not currently possible to change the font-size or line-height of image titles and captions via configuration options, you can do so via CSS.
Please see this forum post to see which classes to apply custom CSS rules to.
(You can remove the font-size rules and add line-height rules if you like.)

2,397

(9 replies, posted in Juicebox-Pro Support)

Yes. As long as all your galleries are on the same domain, there there should be no problem with them sharing a single 'jbcore' folder somewhere on your server. (It does not matter whether the galleries are embedded in existing web pages alongside other content or embedded on pages of their own.)
For each of your galleries, just check the 'index.html' file for the following line of code and adjust the path so that it points to your shared 'jbcore' folder.

<script src="jbcore/juicebox.js"></script>

2,398

(9 replies, posted in Juicebox-Pro Support)

If you would like to be notified when new versions are released, then please join the mailing list at the foot of our homepage, keep an eye on our Facebook page, follow us on Twitter @JuiceboxGallery or subscribe to our blog RSS feed.

When a new version is released, all you need to do to upgrade a gallery is replace the gallery's 'jbcore'. The gallery's configuration options (which are stored in the XML file or the embedding code) will be unaffected.

If you have many galleries, you can have them all share a single instance of a 'jbcore' folder by following the instructions here.
Then, when a new version is released, you can upgrade all your galleries at once by replacing a single 'jbcore' folder on your web server.

Alternatively, if each of your galleries has its own 'jbcore' folder, you could perhaps use the Python script that wspollack has written to automate the process of replacing multiple 'jbcore' folders on a web server. It can be found in this forum thread.
(Please note that this is an unofficial script written by a user rather than ourselves and you should use it at your own risk.)

2,399

(3 replies, posted in Juicebox-Lite Support)

I'm afraid that we have no payment options other than Gumroad and PayPal and if neither Gumroad nor PayPal will allow you to make purchase with a credit card in your country, then there is unfortunately little that we can do.
Perhaps if you have a friend who has a PayPal account or lives in a different country, then they could purchase Juicebox-Pro for you and you could pay them back.

2,400

(3 replies, posted in Juicebox-Lite Support)

We accept payment only via Gumroad or Payal.
Unfortunately, it appears that Gumroad are not allowed to sell to certain locations due to fraud policies that they have to abide by.
If you are unable to pay via Gumroad or create a PayPal account, then try paying with your credit card via PayPal.
From the Juicebox-Pro download page, click 'Checkout with PayPal' and then 'Pay with a debit or credit card, or PayPal Credit'.
Hopefully your localized version of PayPal will have this option which does not require that you have (or create) a PayPal account (although please note that PayPal has different policies for different countries.)