EnlargeIt Plugin for cpg1.5.x: Documentation

EnlargeIt Plugin for cpg1.5.x

What's this?

This plugin replaces coppermine's intermediate page with an AJAX gui that is widely configurable. It provides one of the fastest possible ways to browse a picture gallery.

Unobtrusive

This plugin works fine with any modern graphical web browser so you won't lose any visitors because of compatibility issues. Users without a Javascript-capable browser or who have deactivated scripting in their browser can use the gallery as if EnlargeIt! wasn't there at all, so this plugin falls back nicely if anything goes wrong.

Search engine spiders will not be kept from indexing your gallery, so this plugin doesn't have a negative impact on your search engine ranking.

Browser compatibility chart

This is a table that represents the environments that the enlargeIt plugin has been tested with. It's far from complete, but should cover most setups that are currently used. In brackets you will find details about the actual testbeds that the contributors of this plugin have tested with.
Browser Version Operating System Result
Internet Explorer 5.0
Internet Explorer 5.5
Internet Explorer 6.0
Internet Explorer 7.0
Internet Explorer 8.0
Mozilla Firefox 1.5
Mozilla Firefox 3.5
Opera 8
Opera 9
Konqueror 3.5
Google Chrome 3.0
Epiphany (WebKit) 2.28
Galeon 2.0.7
NetSurf 1.2
Safari 3

Features

How to install

This plugin is installed as any other plugin; there are no extra install steps, so besically you should do as suggested in the corresponding section of the documentation that comes with Coppermine.

Upgrading

If you update this plugin from a previous version, make sure to always completely uninstall the old version before installing the new one, and to empty your browser cache afterwards uninstalling.

How to uninstall

Uninstall via plugin manager

Configuration

Use the additional button inside the coppermine admin menu or on the plugin manager page to access the configuration screen for the EnlargeIt plugin.

Enlargement type

Enable for

Possible checkboxes: This option determines who will see the EnlargeIt plugin in the first place. Note that this doesn't actually determine anything about the permissions to view or upload in coppermine: those settings are still being controlled using the "regular" coppermine mechanisms. Instead, this option determines for which group the enlargeIt plugin will be enabled in the first place. All visitors who don't belong to a group that enlargeIt is enabled for will see the regular coppermine mechanism to display images, i.e. they will be sent from the thumbnail screen to the intermediate sized image screen (displayimage.php).
By default, all three checkboxes are ticked.

Enlarge to pic in

Specify to what "magnification factor" a thumbnail that get's accessed (i.e. clicked) should be enlarged to. There are three possible options:

Maximize method

Determine how full-size images should be opened.
Available options: This option only applies if you allow full-size images in the first place, so both the EnlargeIt option "Enlarge to pic in" as well as the coppermine config options that have an impact on the resizing of full-sized images has got an impact need to be taken into account.

Animation

Animation type

Specify what animation should be used when a thumbnail is clicked or when going from one image to the other.
Possible options:

Time between animation steps

The animation is actually a set of individual animation steps that get triggered when a visitor accesses the thumbnail. Think of them as frames of a video. You can specify the delay in milliseconds between the animation steps, so this option determines the speed of the animation. The default value is 12 ms. You need to play with this setting in relation to the animation type to find a setting that works good for you.

Animation steps

The number of animation steps. Default value is 18. Minimum value is 4, maximum value is 30. This setting determines how smooth the animation will look. The higher the value, the smoother the animation will look. The drawback of setting this to a high value is that it will cause lags on slower, older clients. When testing this setting, don't get lulled into believing that everything will be fine if it looks OK on your PC: on other less powerfull machines a high number of animation steps can cause issues.

Transparency effect for glide animation

When this option is checked the script tries to use transparency for the glide effect, which will have a performance impact on older clients. Default setting is off.

Border

Settings in relation to the border around individual images when using EnlargeIt to view an image that resides in your gallery.

Border width

The width of the border in pixels. Default value is 22. Set to zero to disable the border feature. All other border settings below will not be taken into account if you set the border width to 0.

Border color

The background color of the border, using the hexadecimal notation with the leading #-sign. You can enter the value manually or use the color picker.
Default value is #FFFFFF, which is plain white.

Border texture

In addition to the background color you can as well assign a background image texture to the border. When specifying a texture, the background color will not be taken into account. The Border texture setting is a dropdown list where you can select one of the images. A preview will be displayed at the very right column. Default value is "none".
Available options are:

Round border

Checkbox to enable rounded borders. The rounded borders feature is Mozilla/Safari only, so it doesn't work on IE. However, if you enable it, nothing bad will happen for visitors who have a browser that doesn't support this feature: there will be no error messages if you enable this feature. Instead, the EnlargeIt object will be displayed with "regular", non-rounded borders.
Default is off.

Shadow

Shadow size

This setting allows you to specify the width of the shadow effect. The shadow effect streches both to the right and to the bottom, as if the light was coming from the top left of the screen. Set this option to zero to disable the shadow effect entirely. Values can range from 1 (small shadow) to 9 (huge shadow).

Shadow opacity

Determine how "dark" the shadow will be, i.e. how much of the page content in the shadow area is allowed to shine through. Value can range from 1 to 30. Default setting is 20.

Shadow color

Determine the color of the shadow - can be helpfull for dark themes. Specify the color using the hexadecimal representation. Use the color picker to easily pick the color with your mouse.
Default value is #000000, i.e. black.

Title bar

Show title bar when buttons are inactive

I have no idea what this option actually does. Could some other dev please clarify? Thanks. Joachim
By default this checkbox is enabled.

Title bar text color

The font color for the title bar, i.e. the color in hex representation with leading #-sign for the title of the individual image. It's necessary to use a color with good contrast compared to the background of the title bar, i.e. the border color or the border texture. Use the color picker to set the color using your mouse.
Default value is #44554, which is a dark green.

Background color AJAX area

Background color for the actual content of the EnlargeIt-object. Use the color picker to set the color using your mouse.
Default value is #666677, which is a medium grey.

Action

Center enlarged image

Determines if the image should be centered inside the EnlargeIt! object. Default (and recommended) is "on".

Allow enlarged pictures to be moved around

When enabled the visitor can move the EnlargeIt object around on the screen using his mouse. This is often helpfull if the theme is narrow and there's information right underneath the enlarged image that the visitor would like to see.
Default is off. Recommended setting in on.

Mouse wheel navigation

When this option is enabled visitors can use their mouse wheel to cycle through the images instead of having to click on the previous / next button, which makes navigating the screen a breeze. Only drawback of this option is the fact that the "regular" behaviour of the mouse wheel (scrolling of the browser window) get's disabled in favor of the mouse wheel navigation.
By default, mouse wheel navigation is enabled.

Darken screen when enlarged

I have no idea what this option actually does. Could some other dev please clarify? Thanks. Joachim
Possible options are:

Darken strength

Determine how much the screen around the EnlargeIt object is being darkened, i.e. the strength of the greybox effect. Possible values range from 0% to 100%.
Default value is 20%.

Darkening speed

Determine how fast the darkening effect should be: possible value range from 1 to 20, where 1 means "immediately dark" and 20 means "very slowly darkening".
Default value is 20.

Buttons

Display button "Show picture"

Determines wether the "show picture" button () should be displayed when the EnlargeIt object is being displayed.
Out of the box, the image is being displayed anyway when the EnlargeIt object fires up, so this little button only makes sense to offer the visitor an option to return to the image if he's allowed to see something else in the first place. Subsequently, you should only enable this option if you have enabled at least one other button from the list below: Default is "diabled".

Show button "Info"

Determines if the file information should be available as a separate button () that the visitor can click. The file information usually doesn't mean much to the visitor on a gallery, so it's recommended to leave that option off in order not to confuse the visitor.
Available options are: Default option is "No".
The file information (if this button is enabled) usually looks like this:
File information
Filename: 040804_LOTUS_1.jpg
Album name: / Flowers
Filesize: 59 KiB
Date added: Jun 11, 2009
Dimensions: 600 x 800 pixels
Displayed: 13 times ()

Show my favorites

Determines if the favorites button () should be displayed when the EnlargeIt object fires up. The favorites button allows your visitor to quickly add a file to their personal favorites list or remove it from that list. This is a button that can help build a community and is only recommended if your target audience is using the favorites feature built into coppermine in the first place.
Default is "disabled".

Display "Vote" button

Feature currently isn't implemented, so there's nothing you can do here.

Display "Comments" button

Feature currently isn't implemented, so there's nothing you can do here.

Display "Download" button

Determines if there will be a download button () when the EnlargeIt object fires up. Enabling this button will make it easier even for newbies to download your images. In fact you encourage visitors to download your images and use it elsewhere, so make up your mind about that carefully. If you disable this option, you will just not display the download button, but your visitors will still be able to steal them just as they would be able to do so using a regular coppermine gallery.
Available options are: Default option is "No"

Display "BBCode" button

Determines if there is a bbcode button () in the EnlargeIt interface that will lead the visitor to a table where he/she can copy bbcode from that will enable them to refer to a particular image from within a forum or similar application that allows bbcode. This option only makes sense if you want your visitors to link to your images in forums and similar. Usually, this is the case if you run an avatar gallery or similar. Recommended option is "off" unless you understand the impact of enabling this option.
The bbcode table looks like this:
BBCode
[url][img][/url]
[url]title[/url]
Default is "disabled".

Display "Histogram" button

Determines if a histogram button () should be available on the EnlargeIt interface.

This plugin has got an option to create and display a histogram for all your images in your gallery. It's beyond the scope of this documentation to provide a detailed explanation what histograms are and what they're suppossed to be used for.

A rough explanation: a histogram of an image is a graphical representation of the tonal distribution of a digital image.

Recommended usage: you should only provide the histogram if your target audience are photographers and know what a histogram is and what it can be used for.

Usefull links:

Next to the checkbox that allows you to toggle the histogram usage on and off there is the output from your system about the version of the GD library on your server. As the histogram creation itself needs the GD2 or better, you can't enable the checkbox if your version of GD isn't good enough. For details, log in on your coppermine-driven gallery as admin and then click on the phpinfo button from your admin menu. On the phpinfo screen, scroll to the GD section for details. Please understand that it's beyond the scope of the coppermine support board to teach you about webserver setup, so you'll need to figure this out with your webhost if you don't have GD2 support enabled.
The options that correspond to "Histogram cache file lifetime" will be greyed out if the histogram button is not enabled because they don't apply.
It's important to understand the impact that the creation of histograms can have on your server: they can cause a huge performance spike because the creation of histograms is a resources-intensive process: the image is being loaded into memory and then processed in various non-trivial steps.
Default is "disabled".

Display "Navigation" buttons

Determines if the previous () and next () buttons will be displayed if applicable (i.e. if there actually is a previous/next image within an album) in the EnlargeIt interface for easier navigation from one image to the next. If this option is not enabled, your visitors will be forced to close each image and go to the next image by clicking on the corresponding thumbnail. If you enable this option, they can go from one image to the next without the in-between click on the thumbnail. The only drawback of enabling this option is a slightly cluttered interface.
Default (and recommended) is "enabled".

Display "Close" button

Determines if a close button () will be displayed in the EnlargeIt interface.
Default (and recommended) is "enabled".

Multimedia

Image formats

Select the file formats where the EnlargeIt! plugin should be used with from this multiple select field. All other file formats (if present in your gallery) will be displayed using the "regular" Coppermine mechanisms. This setting does NOT determine what files you can upload - to control that, go to Coppermine's config.

Rows marked with an asterisk (*) show file formats that are disallowed in Coppermine's config, so it's quite likely that those files don't exist in your gallery in the first place.

Video formats

Select the file formats where the EnlargeIt! plugin should be used with from this multiple select field. All other file formats (if present in your gallery) will be displayed using the "regular" Coppermine mechanisms. This setting does NOT determine what files you can upload - to control that, go to Coppermine's config.

Rows marked with an asterisk (*) show file formats that are disallowed in Coppermine's config, so it's quite likely that those files don't exist in your gallery in the first place.

Use which FLV player software

Determines which FLV player to use. Only applies if you have enabled FLV playback in the first place in the option Video formats.
Available options:

Plugin setup

Display a link to the plugin configuration in the admin menu

Determines if a link to the configuration panel for the EnlargeIt! plugin should reside in the admin menu. Only recommended if you plan to change the settings very often or during the initial configuration stage. Once you have properly configured the EnlargeIt plugin you should disable the admin menu link to make the admin menu appear less cluttered.
Default is "enabled".

Histogram cache file lifetime

By default the options that correspond to the histogram cache file lifetime are greyed out (disabled) unless you enable the option Display "Histogram" button.
Available options are:
  • unlimited
  • XX days
  • Maximum file size total of XX MiB
Concept
To understand the impact of these settings you need to understand what the histogram button does in the first place: whenever a visitor is accessing an image using the EnlargeIt interface and click on the "histogram"-button, the plugin checks if a histogram file already exists. If it doesn't exist, the script creates a new histogram file and saves that file. That saved file later get's embedded into the output of EnlargeIt, so the visitor can see the actual histogram.
Permissions

The script attempts to create the histogram file in the same folder where the original image resides. Subsequently, if the permissions on file system level are not set up properly (remember: coppermine needs rxw permissions on the albums folder and everything within it), the plugin won't be able to save the histogram file. Subsequently, if the histogram file can't be created you should check first if the script has got the needed permissions to create the file in the first place. Refer to the documentation that comes with coppermine, section "Permissions" to read more.

Naming scheme
The naming scheme for the histogram file is pretty straightforward: similar to the thumbnails get get prefixed with thumb_ the histogram file get's prefixed with histogram_. Subsequently, you should make sure not to upload any files using regular http uploads that are prefixed that way to make sure that there are no naming collissions (which should be rarely the case anyway).
If your original file resides at
http://yoursite.tld/your_coppermine_folder/albums/userpics/10001/yourimage.jpg and your thumbnail subsequently at
http://yoursite.tld/your_coppermine_folder/albums/userpics/10001/thumb_yourimage.jpg, the histogram file will be
http://yoursite.tld/your_coppermine_folder/albums/userpics/10001/histogram_yourimage.png
File size
The dimensions and file size of the histogram file do not correlate to the dimensions or size of your original image, so you don't have to be worried about the consumption of webspace too much; below is a table that shows the webspace consumption of some example images:
# Original file Histogram file
File type File size Image dimension File type File size Image dimension
1 jpg 32.69 KiB 391 x 600 png 1.64 KiB 284 x 164
2 jpg 20.89 KiB 385 x 415 png 2.10 KiB 284 x 164
3 jpg 334.30 KiB 1437 x 1919 png 1.22 KiB 284 x 164
4 png 304.30 KiB 600 x 450 png 0.23 KiB 284 x 164
5 jpg 321.20 KiB 2048 x 1536 png 1.34 KiB 284 x 164
As you can see, the dimensions of the histogram file are always the same: their resolution 284 x 164 pixels is hard-coded into the EnlargeIt plugin. Also the file format of the histogram file always is png.
Automatic deleting of histogram cache by file age
The option "Histogram cache file lifetimeXX days allows you to specify to see the histogram cache deleted after a set number of days. This way, the histogram files that are older than the number of days you specify will be deleted whenever a visitor clicks on any histogram button in the gallery. You can specify any number of days between 1 and 365.
Default value is 30 days. Only applies if the radio button in front of this option has been ticked in the first place.
Automatic deleting of histogram cache by max file size
The option "Histogram cache file lifetimeMaximum file size total XX MiB allows you to specify a maximum for the webspace consumption of the entire histogram cache. If the total of file sizes of all histogram files get's bigger han the value you specify here, the oldest histogram files will be deleted untill the total is below the value you have set. This option can be used to make sure that the webspace consumption never get's bigger than your maximum webspace. The garbage collection routine that will delete the oldest cache files will be triggered whenever a site visitor clicks on any histogram button. You can specify any number of days between 1 and 99.
Default value is 10 MiB. Only applies if the radio button in front of this option has been ticked in the first place.
Additional cache information
If the histogram cache is not empty (i.e. if the option "Display "Histogram" button" has been enabled and the form was submit, there will be additional information available underneath the "Histogram cache file lifetime" option: the actual size of the cache (number of files and webspace consumption) will be displayed.
Default value
Default selection for histogram caching is "unlimited", which means that the cache will never be cleared. Recommended if you have enough webspace available.

Color pickers

On the configuration panel of the EnlargeIt! plugin there are several color pickers that allow you to specify a color by clicking. To use the color picker you need to expand it first (by default it is collapsed) using the Toggle color picker links. You then select a color from the circle and the shade from the inner box. When clicking on the box the actual color field is being populated. All color fields accept the hexadecimal color notation with the leading hash sign.

Multiple select fields

Hold down the [Ctrl]-key to select multiple rows on a multiple select field. To select no line at all, unselect the last selected row by holding the [Ctrl]-key down and then clicking on that last remaining row.

First aid - if it doesn't work

Support

If you have issues with this plugin and need support, it's a good idea to visit the plugin's announcement thread first.

Credits

This plugin uses the following components:

To Do

This is a list of things that might get improved in future versions of this plugin. There's no guarantee that this will actually happen or when it will happen, so please don't ask for it on the support board.