diff -r f507feede89a -r 09a1c134465b web/wp-content/plugins/slideshow-jquery-image-gallery/js/SlideshowPluginSlideInserter/slide-inserter.js --- a/web/wp-content/plugins/slideshow-jquery-image-gallery/js/SlideshowPluginSlideInserter/slide-inserter.js Wed Dec 19 12:35:13 2012 -0800 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,300 +0,0 @@ -jQuery(document).ready(function(){ - // Index first - slideshowSlideInserterIndexSlidesOrder(); - - // Make list items in the sortables list sortable, exclude elements with cancel option. - jQuery('.sortable-slides-list').sortable({ - revert: true, - stop: function(event, ui){ - slideshowSlideInserterIndexSlidesOrder(); - }, - cancel: 'input, select, p' - }); - - // Make the black background stretch all the way down the document - jQuery('#slideshow-slide-inserter-popup-background').height(jQuery(document).outerHeight(true)); - - // Center the popup in the window - jQuery('#slideshow-slide-inserter-popup').css({ - 'top': parseInt((jQuery(window).height() / 2) - (jQuery('#slideshow-slide-inserter-popup').outerHeight(true) / 2), 10), - 'left': parseInt((jQuery(window).width() / 2) - (jQuery('#slideshow-slide-inserter-popup').outerWidth(true) / 2), 10) - }); - - // Focus on search bar - jQuery('#slideshow-slide-inserter-popup #search').focus(); - - // Preload attachments - slideshowSlideInserterGetSearchResults(); - - /** - * Close popup when clicked on cross - */ - jQuery('#slideshow-slide-inserter-popup #close').click(function(){ - slideshowSlideInserterClosePopup(); - }); - - /** - * Close popup when clicked on background - */ - jQuery('#slideshow-slide-inserter-popup-background').click(function(){ - slideshowSlideInserterClosePopup(); - }); - - /** - * Send ajax request on click of the search button - */ - jQuery('#slideshow-slide-inserter-popup #search-submit').click(function(){ - slideshowSlideInserterGetSearchResults(); - }); - - /** - * Make the 'enter' key do the same as the search button - */ - jQuery('#slideshow-slide-inserter-popup #search').keypress(function(event){ - if(event.which == 13){ - event.preventDefault(); - slideshowSlideInserterGetSearchResults(); - } - }); - - /** - * Open popup by click on button - */ - jQuery('#slideshow-insert-image-slide').click(function(){ - jQuery('#slideshow-slide-inserter-popup, #slideshow-slide-inserter-popup-background').css({ display: 'block' }); - }); - - /** - * Insert text slide into the sortable list when the Insert Text Slide button is clicked - */ - jQuery('#slideshow-insert-text-slide').click(function(){ - slideshowSlideInserterInsertTextSlide(); - }); - - /** - * Insert video slide into the sortable list when the Insert Video Slide button is clicked - */ - jQuery('#slideshow-insert-video-slide').click(function(){ - slideshowSlideInserterInsertVideoSlide(); - }); - - /** - * Ajax deletes a slide from the slides list and from the database - */ - jQuery('.slideshow-delete-slide').click(function(){ - var confirmMessage = 'Are you sure you want to delete this slide?'; - if(typeof SlideInserterTranslations !== undefined) - confirmMessage = SlideInserterTranslations.confirmMessage; - - var deleteSlide = confirm(confirmMessage); - if(!deleteSlide) - return; - - // Get postId from url - var postId = -1; - jQuery.each(location.search.replace('?', '').split('&'), function(key, value){ - var splitValue = value.split('='); - if(splitValue[0] == 'post') - postId = splitValue[1]; - }); - - // Get slideId - var slideId = jQuery(this).find('span').attr('class'); - - - if(postId == -1 || slideId == 'undefined') - return; - - // Remove slide from DOM - jQuery(this).parent().remove(); - - // Remove slide by AJAX. - jQuery.post( - ajaxurl, - { - action: 'slideshow_delete_slide', - postId: postId, - slideId: slideId - } - ); - }); - - /** - * Loop through list items, fill hidden field with loop id - */ - function slideshowSlideInserterIndexSlidesOrder(){ - jQuery.each(jQuery('.sortable-slides-list').find('li'), function(key, value){ - jQuery(value).find('.slide_order').attr('value', key + 1); - }); - } - - /** - * Sends an ajax post request with the search query and print - * retrieved html to the results table. - * - * If offset is set, append data to data that is already there - * - * @param offset (optional, defaults to 0) - */ - function slideshowSlideInserterGetSearchResults(offset){ - if(!offset){ - offset = 0; - jQuery('#slideshow-slide-inserter-popup #results').html(''); - } - - jQuery.post( - ajaxurl, - { - action: 'slideshow_slide_inserter_search_query', - search: jQuery('#slideshow-slide-inserter-popup #search').attr('value'), - offset: offset - }, - function(response){ - // Fill table - jQuery('#slideshow-slide-inserter-popup #results').append(response); - - // Apply insert to slideshow script - jQuery('#slideshow-slide-inserter-popup #results .insert-attachment').click(function(){ - var tr = jQuery(this).closest('tr'); - slideshowSlideInserterInsertImageSlide( - jQuery(this).attr('id'), - jQuery(tr).find('.title').text(), - jQuery(tr).find('.description').text(), - jQuery(tr).find('.image img').attr('src') - ); - }); - - // Load more results on click of the 'Load more results' button - if(jQuery('.load-more-results')){ - jQuery('.load-more-results').click(function(){ - // Get offset - var previousOffset = jQuery(this).attr('class').split(' ')[2]; - - // Load ajax results - slideshowSlideInserterGetSearchResults(previousOffset); - - // Remove button row - jQuery(this).closest('tr').remove(); - }); - } - } - ); - } - - /** - * Inserts image slide into the slides list - * - * @param id - * @param title - * @param description - * @param src - */ - function slideshowSlideInserterInsertImageSlide(id, title, description, src){ - if(slideshowHighestSlideId == 'undefined') - return; - - slideshowHighestSlideId++; - var imageSlide = jQuery('.image-slide-template').find('li').clone(); - - // Fill slide with data - imageSlide.find('.attachment').attr('src', src); - imageSlide.find('.attachment').attr('title', title); - imageSlide.find('.attachment').attr('alt', title); - imageSlide.find('.title').html(title); - imageSlide.find('.description').html(description); - imageSlide.find('.postId').attr('value', id); - - // Set names to be saved to the database - imageSlide.find('.url').attr('name', 'slide_' + slideshowHighestSlideId + '_url'); - imageSlide.find('.type').attr('name', 'slide_' + slideshowHighestSlideId + '_type'); - imageSlide.find('.postId').attr('name', 'slide_' + slideshowHighestSlideId + '_postId'); - imageSlide.find('.slide_order').attr('name', 'slide_' + slideshowHighestSlideId + '_order'); - - // Register delete link (only needs to delete from DOM) - imageSlide.find('.slideshow-delete-new-slide').click(function(){ - var deleteSlide = confirm('Are you sure you want to delete this slide?'); - if(!deleteSlide) - return; - - jQuery(this).closest('li').remove(); - }); - - // Put slide in the sortables list. - jQuery('.sortable-slides-list').prepend(imageSlide); - - // Reindex - slideshowSlideInserterIndexSlidesOrder(); - } - - /** - * Inserts text slide into the slides list - */ - function slideshowSlideInserterInsertTextSlide(){ - if(slideshowHighestSlideId == 'undefined') - return; - - slideshowHighestSlideId++; - var textSlide = jQuery('.text-slide-template').find('li').clone(); - - // Set names to be saved to the database - textSlide.find('.title').attr('name', 'slide_' + slideshowHighestSlideId + '_title'); - textSlide.find('.description').attr('name', 'slide_' + slideshowHighestSlideId + '_description'); - textSlide.find('.color').attr('name', 'slide_' + slideshowHighestSlideId + '_color'); - textSlide.find('.url').attr('name', 'slide_' + slideshowHighestSlideId + '_url'); - textSlide.find('.type').attr('name', 'slide_' + slideshowHighestSlideId + '_type'); - textSlide.find('.slide_order').attr('name', 'slide_' + slideshowHighestSlideId + '_order'); - - // Register delete link (only needs to delete from DOM) - textSlide.find('.slideshow-delete-new-slide').click(function(){ - var deleteSlide = confirm('Are you sure you want to delete this slide?'); - if(!deleteSlide) - return; - - jQuery(this).closest('li').remove(); - }); - - // Put slide in the sortables list. - jQuery('.sortable-slides-list').prepend(textSlide); - - // Reindex slide orders - slideshowSlideInserterIndexSlidesOrder(); - } - - /** - * Inserts video slide into the slides list - */ - function slideshowSlideInserterInsertVideoSlide(){ - if(slideshowHighestSlideId == 'undefined') - return; - - slideshowHighestSlideId++; - var videoSlide = jQuery('.video-slide-template').find('li').clone(); - - // Set names to be saved to the database - videoSlide.find('.videoId').attr('name', 'slide_' + slideshowHighestSlideId + '_videoId'); - videoSlide.find('.type').attr('name', 'slide_' + slideshowHighestSlideId + '_type'); - videoSlide.find('.slide_order').attr('name', 'slide_' + slideshowHighestSlideId + '_order'); - - // Register delete link (only needs to delete from DOM) - videoSlide.find('.slideshow-delete-new-slide').click(function(){ - var deleteSlide = confirm('Are you sure you want to delete this slide?'); - if(!deleteSlide) - return; - - jQuery(this).closest('li').remove(); - }); - - // Put slide in the sortables list. - jQuery('.sortable-slides-list').prepend(videoSlide); - - // Reindex slide orders - slideshowSlideInserterIndexSlidesOrder(); - } - - /** - * Closes popup - */ - function slideshowSlideInserterClosePopup(){ - jQuery('#slideshow-slide-inserter-popup, #slideshow-slide-inserter-popup-background').css({ display: 'none' }); - } -}); \ No newline at end of file