Album Image Uploads: Difference between revisions

From Littledamien Wiki
Jump to navigation Jump to search
Line 22: Line 22:
$('.image-upload-container').galleries('bindImageOverlayHandlers');
$('.image-upload-container').galleries('bindImageOverlayHandlers');
});
});
</script>
</syntaxhighlight>
</syntaxhighlight>



Revision as of 17:26, 9 October 2015


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');
});

Album-based content with thumbnail record independent of the gallery images

  • The thumbnail image_link record has the same type_id as the parent content record.
  • The gallery images have a different type_id value from the thumbnail image image_link 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 image_link object is added to its gallery property.
    • This instance is created in the gallery::fill_from_input() routine.
    • By default this image_link object's full->path->required property is set to TRUE.
  • To override the default setting, in custom content class derived from the album class override the fill_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