Composr Tutorial: Advanced galleries
Written by Chris Graham
The Composr gallery system provides a number of advanced features – this tutorial will describe some of them.Importing
It is possible to fill a gallery with the images and multimedia files that are mass-uploaded. This is a very useful feature to quickly fill a gallery; an example usage might be to upload all images from a mounted digital camera memory card.When importing a gallery this way, no descriptions are added for the entries. However it is possible to add descriptions, and customise other details, simply by editing the entries individually.
There is an additional "import to gallery" feature that works on the premise that any image or multimedia file located in the uploads/galleries directory should be pointed to by an entry in the system. Any such file that is not pointed to, is labelled as an 'orphaned file', and the import feature allows such files to be chosen selectively and imported into any gallery. This is useful because you can upload large file sets directly to uploads/galleries and then batch-add them.
If you have a CSV spreadsheet file saved to your server as (strictly) uploads/galleries/descriptions.csv, with the first column containing filenames, and the second column containing descriptions, then this will be checked when bulk importing files. The filenames should not contain a path component (so just the filenames), and should be under uploads/galleries also.
Also, EXIF data (in JPEG and TIFF files) will be checked for descriptions.
The orphaned files importer will auto-select any orphaned files that are put in a directory of the same name as the gallery you are importing. This is useful if you have been organising your gallery images/videos into a directory structure before-hand, as it stops you having to manually re-select what-goes-where when you do the import. Note that the gallery structure is only one-level-deep, there is no support for subdirectory nesting; however, that is not required anyway as gallery names must be unique and thus there is no potential for directory name conflict.
Tip
If you are importing a lot of large images from a digital camera you may want to size the images down first using a tool such as Image Resizer or the inbuilt Preview app on a Mac.
This will speed up upload and reduce changes of hitting timeouts.
EXIF
On gallery import, EXIF data may be gathered.This process works by matching up custom fields created for images, with the name of EXIF tags:
EXIF Tags
For example, see GainControl is an EXIF field. If there was a custom field named GainControl or Gain Control, it should copy the EXIF value into that during a gallery import.
Additionally, the EXIF caption is used for the title. i.e. the caption goes into the standard Composr title field, not a custom field.
For non-gallery-import, the user is expected to manually fill in the form.
Exporting
For members that have permission, gallery contents may be downloaded in a ZIP file archive, from a download link presented at the bottom of a gallery screen.These ZIP files contain only the actual image and video files, and not any meta content such as descriptions.
If the task queue is active, a gallery with no videos and less than 5 images (by default) will bypass the queue and will be downloaded immediately.
Member Galleries – quick start
Composr supports members having their own galleries of images/videos.
To enable this, you as admin need to:
Members may have multiple personal galleries if you set multiple galleries to be 'Personal category container'.
To enable this, you as admin need to:
- make sure members have the privilege to "Add image/video". You can check this from the Permissions Tree Editor at the "Module: galleries" node (probably under the Welcome or Site zone, depending on your set up). You can either assign this permission explicitly for galleries, or let it get inherited from the global "Submit mid-impact (medium visibility) content" privilege.
- …and also the privilege to have personal categories. You can do this in the Permissions Tree Editor (as "have personal galleries"), or again by setting the privilege globally.
- Make sure members have View Access to the Content Management zone. This can again be done in the Permissions Tree Editor, at "Zone: Content Management".
- Add/edit a gallery (the "Galleries home" gallery will do, if you want personal galleries to be created directly underneath this) to have the 'Personal category container' option ticked (checked). You can find this on the gallery add/edit form under 'Advanced'. If you do not find it the setting there it's because you disabled the "Enable member-gallery-containers" configuration option.
- On the same add/edit gallery form, make sure that the gallery you add/edit also has "Accept images" and "Accept videos" enabled (assuming you want to allow both images and videos). This is because the properties of this gallery will be transferred to new personal galleries underneath it.
Members may have multiple personal galleries if you set multiple galleries to be 'Personal category container'.
Member Galleries – full explanation
If a member is in a usergroup with special permission (permission to have personal categories), they may create their own galleries that are:
The personal gallery system is very sophisticated, and integrated with the hierarchical nature of the gallery system. Members may have personal galleries underneath any gallery in the hierarchy that is marked as a 'Personal category container'; this means that a member may have multiple personal galleries if multiple container galleries have been created by the staff.
Personal galleries, like personal news categories, may be created on demand, simply by choosing a personal gallery for the adding member that 'has the potential to exist' from the list of galleries to submit to: upon submitting, the gallery is automatically created. Personal galleries are given a codename corresponding to the owner, as shown in the screen-shot.
The settings of new personal galleries are based on a combination of:
- displayed as belonging to them
- display their profile details
- and only addable-to (by default) by them
The personal gallery system is very sophisticated, and integrated with the hierarchical nature of the gallery system. Members may have personal galleries underneath any gallery in the hierarchy that is marked as a 'Personal category container'; this means that a member may have multiple personal galleries if multiple container galleries have been created by the staff.
Personal galleries, like personal news categories, may be created on demand, simply by choosing a personal gallery for the adding member that 'has the potential to exist' from the list of galleries to submit to: upon submitting, the gallery is automatically created. Personal galleries are given a codename corresponding to the owner, as shown in the screen-shot.
The settings of new personal galleries are based on a combination of:
- hard-coded defaults
- the settings of the container gallery
- the permissions of the container gallery
An example of a complex gallery hierarchy is as follows:
- (root)
- Germany Holiday Photos 2004 (*)
- Benjamin's Photos (+)
- Harry's Photos (+)
- School Photos
- Secondary School (*)
- Benjamin's Photos (+)
- Harry's Photos (+)
- Julie's Photos (+)
- Primary School (*)
- Benjamin's Photos (+)
- Harry's Photos (+)
- Secondary School (*)
- Germany Holiday Photos 2004 (*)
(*) denotes a personal gallery container that an admin has precreated in advance
(+) denotes a personal gallery created automatically by a member (now the gallery owner) adding media
Personal galleries may only be submitted to by the owner of the personal gallery, unless the "Submit to categories belonging to other members" privilege is assigned.
Limiting member galleries
There are permissions and configuration options relating to the gallery system that allow you to limit the number of entries that members may have in their own galleries.Composr provides this functionality using a three-tiered system:
- low limit on entries in member galleries
- high limit on entries in member galleries
- no limit on entries in member galleries
The tier that a member resides in is based on usergroup permissions with two privileges which may be set for usergroups:
- has high limit in member galleries
- has no limit in member galleries
Linking directly for a member to add to their own member gallery
If you find the link to submit to a particular member gallery, you'll find it looks something like:http://yourbaseurl/cms/index.php?page=cms_galleries&type=add&cat=member_13_foobar
(this is for member #13's gallery under foobar)
If you change the member ID to a question mark, it will work as a generic URL that can be supplied to members to easily direct them to create or add to a particular personal gallery:
http://yourbaseurl/cms/index.php?page=cms_galleries&type=add&cat=member_?_foobar
You may, for example, include it on a Comcode page, or on a menu, to guide users.
(Composr automatically will substitute the question mark with the ID of the current member)
Podcasts
Composr RSS complies with Apple's podcast format (maintenance status). Other companies support the same format, as it has become a de facto standard.The podcast URL for a gallery is:
http://yourbaseurl/backend.php?mode=galleries&select=galleryname&type=rss&itunes=1
Replace yourbaseurl and galleryname as appropriate.
This URL can be supplied to users to help them subscribe. In iTunes they go to the File menu, then "Subscribe to Podcast".
Note that the default advertised Atom feed will not work. Only RSS is supported by iTunes, and only the RSS feed is given the extra metadata required. The &itunes=1 marker also tells Composr to supply an iTunes-friendly feed.
Apple provide a guide on publishing your podcast within the iTunes store. Publishing may have more stringent requirements that the default Composr podcast can provide (the developers don't routinely test this), but templating can be used on the RSS_*.tpl templates to supplement additional data if required.
See also
Feedback
Please rate this tutorial:
Have a suggestion? Report an issue on the tracker.