Album Image Uploads: Difference between revisions
Jump to navigation
Jump to search
| Line 23: | Line 23: | ||
*The thumbnail <code>image_link</code> record has the same <code>type_id</code> as the parent content record. | *The thumbnail <code>image_link</code> record has the same <code>type_id</code> as the parent content record. | ||
*The gallery images have a different <code>type_id</code> value from the thumbnail image <code>image_link</code> record. | *The gallery images have a different <code>type_id</code> value from the thumbnail image <code>image_link</code> record. | ||
===Album-based content that does not require an image upload=== | |||
* The default setting for images requires that an image is uploaded with each album record that is created. | |||
* In some cases, it may be necessary to allow records to be created without an associated image. | |||
* When creating a new album record, an <code>image_link</code> object is added to its <code>gallery</code> property. | |||
** This instance is created in the <code>gallery::fill_from_input()</code> routine. | |||
** By default this <code>image_link<code> object's <code>full->path->required</code> property is set to <code>TRUE</code>. | |||
* To override the default setting, in custom content class derived from the <code>album</code> class override the <code>fill_from_input()</code> routine. | |||
<syntaxhighlight lang="php" highlight="5"> | |||
function fill_from_input() | |||
{ | |||
parent::fill_from_input(); | |||
if (is_array($this->gallery->list) && count($this->gallery->list)>0) { | |||
$this->gallery->list[0]->full->path->required = false; | |||
} | |||
} | |||
</syntaxhighlight> | |||
==PHP Classes== | ==PHP Classes== | ||
Revision as of 13:04, 10 June 2012
Upload Types
Content type without album
Album-based content using a gallery image as a thumbnail
- The thumbnail is a pointer to one of the album image records.
- In the content properties CMS check the "use gallery image as thumbnail" option.
- To make the edit and delete buttons available when the thumbnail image is clicked:
include (COMMON_TEMPLATE_DIR."forms/images/thumbnail_overlay_buttons.php");
- To insert an editable thumbnail image (either gallery-based or independent) into the edit form or details content include:
include (COMMON_TEMPLATE_DIR."forms/images/select_thumbnail_link_container.php");
- In the page header for the details and edit pages:
$(document).ready(function() {
$('.image-upload-container').galleries('bindImageOverlayHandlers');
});
</script>
Album-based content with thumbnail record independent of the gallery images
- The thumbnail
image_linkrecord has the sametype_idas the parent content record. - The gallery images have a different
type_idvalue from the thumbnail imageimage_linkrecord.
Album-based content that does not require an image upload
- The default setting for images requires that an image is uploaded with each album record that is created.
- In some cases, it may be necessary to allow records to be created without an associated image.
- When creating a new album record, an
image_linkobject is added to itsgalleryproperty.- This instance is created in the
gallery::fill_from_input()routine. - By default this
image_linkobject'sfull->path->requiredproperty is set toTRUE.
- This instance is created in the
- To override the default setting, in custom content class derived from the
albumclass override thefill_from_input()routine.
function fill_from_input()
{
parent::fill_from_input();
if (is_array($this->gallery->list) && count($this->gallery->list)>0) {
$this->gallery->list[0]->full->path->required = false;
}
}PHP Classes
- Shared PHP classes
[COMMON_LIB]_classes/images/image_upload_class.php (extends image_link_class)
PHP Template Includes
[COMMON_TEMPLATE_DIR]forms/images/thumbnail_overlay_buttons.php
Include this once somewhere on the page containing the image upload controls.
- For album-based uploads (both with linked and independent thumbnails)
include (COMMON_TEMPLATE_DIR."forms/images/select_thumbnail_link_container.php");
- For images within gallery listings:
- IMG
class="gallery-edit"
- IMG attributes
data-id and data-tid
$('.gallery-edit') handler is set in LITTLED.Gallery.bindImageOverlayHandlers()
- single click: display edit and delete buttons overlaid on the image
- double click: display the full-sized version of the image in a lightbox
JavaScript Libraries
[COMMON_LIB]scripts/littled/littled.js
[COMMON_LIB]scripts/littled/listings.js
[COMMON_LIB]scripts/littled/gallery.js
AJAX Handler Scripts
[ADMIN_ROOT]_ajax/images/edit_image.php
Designed to handle uploading and editing images from within image and album listings.
[ADMIN_ROOT]_ajax/images/upload_image.php
Designed to handler uploading a single image within the parent article edit form.
MySQL Tables
image_link
images
site_section
section_properties
See Also