1,601

(9 replies, posted in Juicebox-Pro Support)

Is that possible: 950px height on larger devices, less on small screens.

Juicebox uses only one galleryHeight value for both Small Screen Mode and Large Screen Mode so trying to use a different value for each screen mode is not going to be easy.
However, there are a few things you could try.

(1) Load the gallery with dimensions for Large Screen Mode, check the Screen Mode being used (via the Juicebox-Pro API getScreenMode() method) and resize the gallery with appropriate dimensions (via the setGallerySize() method) if Small Screen Mode is being used. However, the setGallerySize() method accepts only fixed pixel values for both the width and height so maintaining a width of 100% would not be possible using this method.
If you wanted to try this, though, you could use embedding code such as:

<script>
    var galleryWidthLargeScreenMode = '1000';
    var galleryWidthSmallScreenMode = '1000';
    var galleryHeightLargeScreenMode = '950';
    var galleryHeightSmallScreenMode = '650';
    var jb = new juicebox({
        containerId: "juicebox-container",
        galleryWidth: galleryWidthLargeScreenMode,
        galleryHeight: galleryHeightLargeScreenMode,
        screenMode: "AUTO"
    });
    jb.onInitComplete = function() {
        var screenMode = jb.getScreenMode();
        if (screenMode === 'SMALL') {
            jb.setGallerySize(galleryWidthSmallScreenMode, galleryHeightSmallScreenMode);
        }
    };
</script>

(2) Use your own custom JavaScript function to check if a mobile device is being used to view the gallery and then set a gallery height accordingly. It is unlikely that your JavaScript check will exactly match up with Juicebox's own internal test for whether to use Small or Large Screen Mode (I do not know the exact logic that Juicebox uses) but it might be good enough for most situations.
You could maybe use a galleryHeight entry in your embedding code such as:

galleryHeight: /Android|BlackBerry|iPad|iPhone|iPod|Nexus|webOS/i.test(navigator.userAgent) ? '650' : '950',

(3) Load the gallery with dimensions for Large Screen Mode, check the Screen Mode being used (via the Juicebox-Pro API getScreenMode() method) and reload the gallery with appropriate dimensions if Small Screen Mode is being used. This method will allow you to maintain a gallery width of 100% (unlike #1 above) and your choice of heights will always match up with the Screen Mode being used (unlike #2 above) but it would be the most complicated of the 3 suggestions to implement and you'd probably want to hide things using CSS until the gallery has been loaded with the correct dimensions (and you'd also need a tracking variable to ensure that the reloading of the gallery does not happen repeatedly).
To see this in action, create a test gallery with JuiceboxBuilder-Pro and use the following code as the gallery's 'index.html' file.

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <meta name="viewport" id="jb-viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0" />
        <style type="text/css">
            body {
                margin: 0px;
            }
            #juicebox-container {
                display: none;
            }
        </style>
        <script type="text/javascript" src="jbcore/juicebox.js"></script>
        <script type="text/javascript">
            var counter = 0;
            var galleryWidthLargeScreenMode = '100%';
            var galleryWidthSmallScreenMode = '100%';
            var galleryHeightLargeScreenMode = '950';
            var galleryHeightSmallScreenMode = '650';
            var jb;
            function loadGallery(width, height) {
                jb = new juicebox({
                    containerId: "juicebox-container",
                    galleryWidth: width,
                    galleryHeight: height,
                    screenMode: "AUTO"
                });
                counter++;
            }
            loadGallery(galleryWidthLargeScreenMode, galleryHeightLargeScreenMode);
            jb.onInitComplete = function() {
                var screenMode = jb.getScreenMode();
                if (counter === 1 && screenMode === 'SMALL') {
                    loadGallery(galleryWidthSmallScreenMode, galleryHeightSmallScreenMode);
                }
                if ((counter === 1 && screenMode === 'LARGE') || (counter === 2 && screenMode === 'SMALL')) {
                    $('#juicebox-container').show();
                }
            };
        </script>
        <title>Test</title>
    </head>
    <body>
        <div id="juicebox-container"></div>
    </body>
</html>

#2 would certainly be the easiest to implement but you might like to try incorporating the code from #3 into your web page.

I hope this helps.

1,602

(9 replies, posted in Juicebox-Pro Support)

Actually, a fixed height gallery often works very well in web pages that have a lot of content and scroll vertically (and are not designed to fit all content within the browser window without any scrolling). The gallery can still be responsive in the horizontal dimension (as long as the gallery's width is defined as a percentage and your web page's layout is, itself, responsive).

1,603

(9 replies, posted in Juicebox-Pro Support)

The gallery's dimensions are determined by the galleryWidth and galleryHeight options (set in the embedding code) and the gallery's size remains constant (unless percentage dimensions are used and the size of the browser window changes). No controls within the gallery will affect the gallery's size.

When you choose to show thumbnails, then space needs to be made available for them so the size of the main image decreases.
When you chose to hide the thumbnails, then extra space within the gallery becomes available and the size of the main image increases to take advantage of this (to display the main image as large as possible within the gallery).

It is not possible to not change the size of the main image when the thumbnails are toggled on or off (you'd have a blank space where the thumbnails would be when they are not shown).

You could, however, choose to always use the Small Screen Mode version of the gallery, where thumbnails and main images are displayed on separate pages (rather that sharing the gallery space together on the same page), by setting screenMode="SMALL" (in JuiceboxBuilder-Pro's 'Customize -> General' section).

If you choose to continue to use screenMode="AUTO", then you can disable the thumbnails completely when the gallery is displayed in Large Screen Mode by setting showThumbsOnLoad="FALSE" ('Customize -> Thumbnails') and showThumbsButton="FALSE" ('Customize -> Lite'). Alternatively, you can always have the thumbnails displayed (and prevent them from being hidden) by setting showThumbsOnLoad="TRUE" and showThumbsButton="FALSE".

If you really want to have the size of your gallery change when the thumbnails are toggled on or off, then you could try something like the following which takes advantage of several Juicebox-Pro API methods.
Create a sample gallery in JuiceboxBuilder-Pro and use the following code as the gallery's 'index.html' file.

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <meta name="viewport" id="jb-viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0" />
        <style type="text/css">
            body {
                margin: 0px;
            }
        </style>
        <script type="text/javascript" src="jbcore/juicebox.js"></script>
        <script type="text/javascript">
            var galleryWidthHideThumbnails = 600;
            var galleryWidthShowThumbnails = 600;
            var galleryHeightHideThumbnails = 400;
            var galleryHeightShowThumbnails = 505;
            var jb = new juicebox({
                containerId: "juicebox-container",
                galleryHeight: galleryHeightShowThumbnails,
                galleryWidth: galleryWidthShowThumbnails,
                showThumbsButton: "TRUE",
                showThumbsOnLoad: "TRUE"
            });
            jb.onInitComplete = function() {
                if (jb.getScreenMode() === "LARGE") {
                    jb.onShowThumbs = function(showing) {
                        window.setTimeout(function() {
                            var width = showing ? galleryWidthShowThumbnails : galleryWidthHideThumbnails;
                            var height = showing ? galleryHeightShowThumbnails : galleryHeightHideThumbnails;
                            jb.setGallerySize(width, height);
                        }, 500);
                    }
                }
            };
        </script>
        <title>Test</title>
    </head>
    <body>
        <div id="juicebox-container"></div>
    </body>
</html>

You can change the gallery dimensions as you like.

Please note that this is not an ideal solution. Juicebox was not designed with this in mind and a short delay is required to ensure that the gallery is not resized until after the thumbnails are toggled on or off. This ensures that the thumbnails are not temporarily displayed on top of the main image (which looks untidy) but has the side effect that the main image is temporarily resized when the thumbnails are shown (slightly less untidy).

As this is not something that Juicebox was designed to do, I would recommend using the available configuration options to reach a compromise although you are certainly free to use and modify the code I provided if you like (although please be aware that trying to do something that Juicebox was not designed to do can often be fraught with difficulties and unforeseen problems might need to be tackled along the way).

I hope these notes help.

1,604

(10 replies, posted in Juicebox-Pro Support)

The code I posted above seems to work OK for myself. (The default click handler for the Shopping Cart button is removed successfully before adding a new custom one.)
The only way I can make it fail is to load a separate version of jQuery into the gallery's web page (for more than the basic jQuery functionality that is built into the 'juicebox.js' file).
I do not know if you are doing this but I suspect the code you posted above is incomplete (there is no opening <body> tag and your JavaScript code refers to a #modalShoppingCart element which does not exist).
If you are loading a separate version of jQuery, then try adding the following code immediately after loading the external file:

<script>
    $.noConflict();
</script>

... and continue to use:

$('.jb-bb-btn-fotomoto').off('click');

... but use the alias jQuery instead of $ for all other jQuery calls, e.g.:

jQuery('.jb-bb-btn-fotomoto').click(function(event) {

This seems to work in my own tests.
I hope this helps.

Editing a gallery using JuiceboxBuilder-Pro relies on there being a local copy of the gallery available.
JuiceboxBuilder-Pro cannot edit a gallery online.

If you want to edit a single gallery using two different computers, then, each time you edit the gallery on one computer, I'd recommend storing the entire gallery somewhere so that it can be accessed by the other computer. Perhaps copy the gallery folder to a USB flash drive or zip the complete gallery folder and upload it somewhere so that you can easily download it and work on it from your second computer.

I don't know how important it is for you to manage a gallery from different locations but you might be interested in another one of our products: Showkase.

Showkase is a PHP web application (installed on your web server) which allows you to create a complete portfolio web site (integrating multiple galleries) online. However, you can use Showkase in its Gallery Manager theme to create and edit galleries (which you can embed into any web pages throughout your website) online through a web browser interface. You'd be able to log into your Showkase site from any computer and edit your gallery directly online (without the need to upload any modified gallery files via FTP). You can also import existing galleries (created with JuiceboxBuilder-Pro) into your Showkase site so that you can then manage them from within the application's interface.

Please feel free to take a look around the Showkase interface by logging into the Live Demo Admin.

Showkase can be purchased as Showkase-Standard (which comes with Juicebox-Lite and SimpleViewer-Standard, the free versions) or Showkase-Pro (which comes with Juicebox-Pro and SimpleViewer-Pro). The only difference between Showkase-Standard and Showkase-Pro is the bundled viewers.
As you already have Juicebox-Pro, you could purchase Showkase-Standard and integrate your Juicebox-Pro files following the Installing a Pro Viewer instructions.

The gallery's 'config.xml' file stores the configuration options and the image data so, after editing a gallery in JuiceboxBuilder-Pro, you'll need to re-upload the 'config.xml' file (as well as any new images and thumbnails to their respective folders).

The gallery's dimensions and background color are set in the embedding code (so that the gallery can be rendered on the web page with the correct size and color before the 'config.xml' file is parsed) so if you change the gallery width, gallery height or background color, you'll need to update your gallery's embedding code, too.

1,607

(9 replies, posted in Juicebox-Pro Support)

Unfortunately, I don't have an iPad on which to test but your gallery's Splash Page (in your embedding web page) and the gallery itself both look OK on my iPod Touch. The Splash Page resizes correctly when changing orientation and, when the gallery has been expanded from the Splash Page, the images are displayed as large as possible within the gallery's image area (no matter what orientation the device is in).

Here are a couple of things I notice which might point you in the right direction.

(1) Your embedding page does not seem to be responsive in desktop browsers.
If the browser window is made more narrow, then the content on your web page does not adapt to the new width. The content is simply truncated (beyond the right-hand side of the browser window). This might be contributing to your problem in browser viewports of a certain width. Rotating your iPad might have a similar effect to changing the width of a desktop browser window (where your embedding page no longer fits the browser viewport).

(2) You have given your gallery dimensions of 100% x 100%. This might be perfectly OK but please check your gallery's parent container to see what dimensions have been assigned to it via CSS. A gallery height of 100% means that the gallery's actual height will be 100% of the height of its parent container. If the gallery's parent container has not been assigned a height via CSS, then Juicebox may not be able to determine what the gallery's actual height should be 100% of and this might cause your gallery to be displayed at unexpected dimensions.
Try giving your gallery a fixed pixel height (and try a few different values) instead of a percentage (at least for testing purposes). A gallery with a greater height will have a larger image area and this may allow the image to be displayed larger (depending on aspect ratios) with less space to the left and right.
Also, as your embedding page seems to be based on a fixed width, you might like to try giving your gallery a fixed width, too (to match that of your page).

If you continue to experience difficulties, please let me know the following:
(1) Does the problem happen only within the embedding page or also when the gallery has been expanded?
(2) What version of iPad do you have?
(3) What version of iOS do you run on your iPad?
(4) What browser (or browsers) do you see the problem in (Mobile Chrome, Mobile Firefox, Mobile Safari)?

Also, if possible, please provide screenshots so that I can see what you are seeing (as I do not have an iPad and cannot see your problem). You can attach images to a forum post if you like or upload them elsewhere and provide links.

Hopefully, once I'm able to see the problem (at least in screenshots), I should have a better idea of what might be causing it and might be able to propose a solution.
Thank you.

1,608

(7 replies, posted in Juicebox-Pro Support)

You're welcome.

Even though Showkase creates responsive pages for a wide range of devices and screen shapes and sizes, I realise that you might not have been able to achieve the exact layout that you were looking for.
However, it is certainly much easier to work with the available Showkase and Juicebox configuration options than to delve deep into the source code and CSS to try to modify the layout manually.
Sometimes, a compromise might be required (between your ideal scenario and what is easily achievable using the available configuration options). Your web pages should still look good across different platforms (if not exactly as you envisioned).
I hope you're able to find a balance that works for you with what Showkase and Juicebox-Pro have to offer.

1,609

(7 replies, posted in Juicebox-Pro Support)

Is the 'SM.png' below the best I can expect to make the small screen mode with caption look? (IE caption over the image) or is there an option Im not using that would push the caption below?

There is no way to move the caption area in Small Screen Mode: captionPosition is active in Large Screen Mode only.
In Small Screen Mode, the captionPosition is always set to OVERLAY, although the overlay can be toggled on and off by tapping the screen (or the Info Button if it is used). This gives the images as much room to be displayed as possible on small screen devices.
You could perhaps make your caption text stand out a little more by setting captionBackColor and/or captionBackTopColor (to give your caption area a more prominent background color instead of it being transparent) or by changing your textColor.

I am currently forcing Large screen mode and the below you can see the outcome...

In Large Screen Mode, when you set captionPosition="BELOW_IMAGE", Juicebox uses the maxCaptionHeight value as an absolute value (rather than a maximum value) and this amount of space is always reserved for the caption area (no matter how much text there is to be displayed).
With the Showkase header and the reserved caption area below the images in the gallery, the images are probably being displayed as large as they can within the remaining space available.
By default, Showkase displays a gallery page such that the header and gallery are visible in their entirety (with the bottom of the gallery at the bottom of the browser window) so that users do not need to scroll to see any of the gallery.
The easiest way to increase the space available for the images would be to either reduce the maxCaptionHeight value (if possible) or set captionPosition to OVERLAY or OVERLAY_IMAGE.

1,610

(5 replies, posted in Juicebox-Lite Support)

You're welcome.
I'm glad you've got it working. Thank you for letting me know.

1,611

(6 replies, posted in Juicebox-Pro Support)

If anyone else is reading this thread and experiencing a similar issue, please make sure that you are using the latest version of WP-Juicebox (v1.5.0.1) which can be downloaded from the plugin's support page here.

It looks like the problem was due to bug in WP-Juicebox v1.5.0 regarding the use of a custom permalink structure.
This problem was fixed in WP-Juicebox v1.5.0.1 (see the Version History page for a list of changes between versions) and upgrading WP-Juicebox to v1.5.0.1 should solve the problem.

1,612

(6 replies, posted in Juicebox-Pro Support)

Please check your email. I have sent you a message with an email address where you can forward me your login details.
Thank you.

1,613

(3 replies, posted in Juicebox-Pro Support)

@safeboat

Right-clicking is disabled within a Juicebox gallery but, in addition to showOpenButton (as noted above), there is now a direct download button (introduced in v1.5.0 - see the Version History page for a full list of changes).

Set showDownloadButton="TRUE" (in JuiceboxBuilder-Pro's 'Customize -> Button Bar' section) and the Download Button will be displayed on the gallery's Button Bar. Clicking this button will automatically initiate a download of the current image (without the need to open the image in a new page first).

You can check out the Download Button in this demo gallery (2nd icon from the left on the Button Bar).

By default, the Download Button will download the imageURL.
However, if you use a Multi-Size Image gallery and use large images, then the Download Button will download the largeImageURL
If you assign a linkURL to an image (to point towards a custom file), then the Download Button will download the linkURL instead.

1,614

(5 replies, posted in Juicebox-Lite Support)

As an update to this topic, the code I posted back in 2015 worked at the time but it seems to be unreliable now (the arrow keys work for only one image transition before the gallery needs a click for keyboard controls to continue functioning).
I find that the following code seems to work well with the current version of Juicebox (v1.5.0):

jb.onInitComplete = function() {
    $('.juicebox-gallery').first().focus();
};

@ryanrowlett
If you'd like to incorporate this focus code into the Lightroom plugin (so that each 'index.html' file generated by the plugin includes this code), then you can edit the plugin's template 'index.html' file as follows.

(1) Open the plugin's template 'index.html' file in a plain text editor. (Change the directory name from 'juicebox_pro.lrwebengine' to 'juicebox_lite.lrwebengine' is you are using the Lite version of the plugin.)
Mac - Users/username/Library/Application Support/Adobe/Lightroom/Web Galleries/juicebox_pro.lrwebengine/index.html
Window - C:\Users\username\AppData\Roaming\Adobe\Lightroom\Web Galleries\juicebox_pro.lrwebengine\index.html

(2) Scroll down to the start of the 'new juicebox' embedding code section.

(3) Replace:

new juicebox({
    backgroundColor: "<%= get_rgba(model.extra.backgroundColorColor, model.extra.backgroundColorOpacity) %>",
    containerId: "juicebox-container",
    galleryHeight: "<%= model.extra.galleryHeight %>",
    galleryWidth: "<%= model.extra.galleryWidth %>"
});

... with:

var jb = new juicebox({
    backgroundColor: "<%= get_rgba(model.extra.backgroundColorColor, model.extra.backgroundColorOpacity) %>",
    containerId: "juicebox-container",
    galleryHeight: "<%= model.extra.galleryHeight %>",
    galleryWidth: "<%= model.extra.galleryWidth %>"
});
jb.onInitComplete = function() {
    $('.juicebox-gallery').first().focus();
};

As you are also a Showkase user, I should point out that this will work only if the gallery's 'index.html' page is used to display the gallery (on a page of its own).
If the gallery is subsequently imported into Showkase, then this modification will be lost. The gallery's HTML embedding page is not used when importing a gallery (only the images and configuration options in the gallery's 'config.xml' file are taken into consideration).
If you'd like the focus code to be used for Juicebox gallery pages within Showkase, then just add the following code to your theme's 'custom.js' file.

$(document).ready(function() {
    if (jb) {
        jb.onInitComplete = function() {
            $('.juicebox-gallery').first().focus();
        };
    }
});

For example, if you are using the Kosel, them, then the 'custom'js' file can be found in this location: showkase/_themes/kosel/js/custom.js
If you are using a different theme, just replace 'kosel' in the path above with the name of the theme that you are using.

1,615

(1 replies, posted in Juicebox-Pro Support)

Every gallery needs to have a separate configuration file (default name 'config.xml').
You can certainly set Config Options in the embedding code (please see here for details), but image data cannot be set in the embedding code and must be set in the configuration file.
Even if you use a Flickr account as a source of images and set the Flickr Options in the embedding code, the gallery still needs a separate configuration file (even if it is just a dummy file with only a <juiceboxgallery /> tag) to function correctly.

Please note that if a configUrl is not explicitly set in the embedding code, then Juicebox will look for a file named 'config.xml' in the same directory as the web page containing the embedding code.

I don't know what your goal is or if it will help you out but you could use a PHP script (or use some other server-side scripting language) to generate XML content on-the-fly when the gallery is displayed. Please take a look at this forum post (scroll down to the answer to Query #3) which has an example of how this could be achieved to display all images in a designated folder. (You could change the code to pull in image data from a database or whatever image source you choose to use.)

It would be great if you could please post your suggestions for future versions in the Feature Requests forum thread.
This keeps all the ideas together and ensures that they are not overlooked by the developers.
Many thanks!

I appreciate you taking the time to post your suggestions in the forum.
However, if would be much better if you posted them in the Feature Request forum thread (a dedicated thread for ideas) where they will be seen by the developers and are less likely to get lost in amongst all the other support threads.
Thank you.

Incidentally, captions appear and disappear with their corresponding images so you might like to try setting imageTransitionType to either FADE or CROSS_FADE and then increasing the imageTransitionTime from its default value of 0.3 to something larger (although this will affect all image transitions, not just the initial image fade in).
Still, it might be worth trying a few different combinations in case you find something close to what you are trying to achieve.
(Both the configuration options in bold above can be found in the Main Image Options section of the Config Options page.)

You can skip the thumbnail page in Small Screen Mode and go straight to the  main images by setting showSmallThumbsOnLoad="FALSE" (in JuiceboxBuilder-Pro's 'Customize -> Thumbnails' section). You can also hide the Thumbnail Button on the Button Bar if you like (so users cannot access the thumbnail page at all) by setting showSmallThumbsButton="FALSE".

There are similar configuration options available for Large Screen Mode to initially hide or show the thumbnails (showThumbsOnLoad) and to choose whether or not to display the Thumbnail Button (showThumbsButton).

Additionally, you can choose which image to initially display via firstImageIndex ('Customize -> General').

1,619

(3 replies, posted in Juicebox-Pro Support)

You're welcome.

1,620

(1 replies, posted in Juicebox-Lite Support)

The image you are describing is the Splash Page image.
More information about the Splash Page can be found in the Screen Modes section of the Gallery Tour.

By default, the Slash Page uses the first image in the gallery and scales the image to fill (rather than fit within) the Splash Page (which uses the gallery dimensions). If the image does not have the same aspect ratio as the gallery/Splash Page, then cropping will occur.

There is no way to change the scaling behavior for the Splash Page image but you can choose an image to be used for the Splash Page via the splashImageUrl configuration option.
The splashImageUrl can be an absolute path or a relative path (relative to the web page containing the gallery's embedding code).
The splashImageUrl does not need to be a gallery image so you could perhaps prepare an image that represents your gallery and looks better at the gallery/Splash Page dimensions.

For reference, all the Splash Page configuration options can be found here.

All you need to do to upgrade an existing gallery from Juicebox-Lite to Juicebox-Pro is replace the gallery's Lite 'jbcore' folder with the Pro 'jbcore' folder from the Juicebox-Pro zip package ('juicebox_pro_1.5.0/web/jbcore/'). This will instantly remove the image limit and branding and any Pro configuration options in the gallery's configuration file will become active.

You can also load a Juicebox-Lite gallery (using a local copy of the gallery on your computer) into JuiceboxBuilder-Pro (the desktop application to create and edit Juicebox-Pro galleries), configure the gallery with Pro options if you like (on the 'Customize' tab) and re-save the gallery on the 'Publish' tab. The gallery will be upgraded to Juicebox-Pro and you can then re-upload the gallery to your web server.

Is there a built-in limitation of the number of albums per one page?

No, there's no limit to the number of galleries you can have on a single web page.

OK, solved!

That's great to hear! I'm glad you've been able to resolve your problem. Thank you for posting back to let me know.

For anyone who wants to embed multiple galleries on a single web page, here are a few tips.
(1) Load the 'juicebox.js' file just once per web page (rather than once per gallery).
(2) Embed each gallery into a div container with a unique containerId.
(3) In each gallery's embedding code, use a configUrl (to point towards a unique configuration file) or a baseUrl (to point towards a unique gallery folder).

Short descriptions of the configuration options in bold above can be found in the Embed Options section of the Config Options page.

1,623

(3 replies, posted in Juicebox-Pro Support)

There is no way to change the imageURL prefix in JuiceboxBuilder-Pro. Images are always placed in a folder named 'images' and the imageURL paths always start with "images/". There are no user-changeable configuration options to change the name of the image folder or to set a different prefix for the imageURL. The code which handles this is compiled and cannot be modified.

If you want to use a different gallery structure to that created by JuiceboxBuilder-Pro, then you'll need to edit your gallery's 'config.xml' file in a plain text editor to change the imageURL paths.
However, if you use a text editor such as Notepad++, you'll be able to change all instances of "images/" to whatever you like across multiple files (if you have many galleries to change) in a single global search and replace action which should take just a matter of seconds.

1,624

(10 replies, posted in Juicebox-Pro Support)

@racerx2oo3 & @studio tissot mayenfisch

Thanks for offering to share your solutions and feedback!
I hope you get on well with your implementations.

1,625

(10 replies, posted in Juicebox-Pro Support)

You could modify the template 'index.html' file that JuiceboxBuilder-Pro uses to generate the gallery's 'index.html' file.
On a Windows PC, this template file is located here: C:\Program Files (x86)\JuiceboxBuilder-Pro\template\index.html
Try replacing the contents of this template file with the following. (I would strongly suggest that you take a backup of the original template file first, just in case anything goes wrong and you need to reinstate it at a later date.)

<!DOCTYPE html>
<html lang="en">
<head>
    <title>%%TITLE%%</title>
    <meta charset="utf-8" />
    <meta name="viewport" id="jb-viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1, maximum-scale=1, user-scalable=0" />
    <meta name="description" content="%%DESCRIPTION%%" />

    <!-- START OPEN GRAPH TAGS-->
    <meta property="og:title" content="%%TITLE%%" />
    <meta property="og:type" content="website" />
    <meta property="og:url" content="%%GALLERY_URL%%" />
    <meta property="og:image" content="%%IMAGE_URL%%" />
    <meta property="og:description" content="%%DESCRIPTION%%" />
    <!-- END OPEN GRAPH TAGS-->

    <style type="text/css">
    body {
        margin: 0px;
    }
    </style>
</head>
<body>
    <!--START JUICEBOX EMBED-->
    <script src="jbcore/juicebox.js"></script>
    <script type="text/javascript">

        var purchaseURL;

        var strWindowName = 'Shopping Cart';
        var strWindowFeatures = 'menubar=yes,location=yes,resizable=yes,scrollbars=yes,status=yes,width=600,height=400';

        var jb = new juicebox({
            containerId: "juicebox-container",
            galleryWidth: '%%WIDTH%%',
            galleryHeight: '%%HEIGHT%%',
            backgroundColor: '%%COLOR%%'
        });

        jb.onInitComplete = function() {
            $('.jb-bb-btn-fotomoto').off('click');
            $('.jb-bb-btn-fotomoto').click(function() {
                var windowObjectReference = window.open('about:blank', strWindowName, strWindowFeatures);
                $.get('config.xml', function(data) {
                    var index = jb.getImageIndex();
                    purchaseURL = $(data).find('image').eq(index - 1).attr('purchaseURL');
                }).done(function() {
                    windowObjectReference.location.replace(purchaseURL);
                }).fail(function() {
                    windowObjectReference.close();
                });
            });
        };

    </script>
    <div id="juicebox-container"></div>
    <!--END JUICEBOX EMBED-->
</body>
</html>