
update popup selectize with new album init popup selectize with main selectize value git-svn-id: http://piwigo.org/svn/trunk@30630 68402e56-0260-453c-a942-63ccdbb3a9ee
217 lines
5.4 KiB
JavaScript
217 lines
5.4 KiB
JavaScript
|
|
/* ********** Filters*/
|
|
function filter_enable(filter) {
|
|
/* show the filter*/
|
|
$("#"+filter).show();
|
|
|
|
/* check the checkbox to declare we use this filter */
|
|
$("input[type=checkbox][name="+filter+"_use]").prop("checked", true);
|
|
|
|
/* forbid to select this filter in the addFilter list */
|
|
$("#addFilter").children("option[value="+filter+"]").attr("disabled", "disabled");
|
|
}
|
|
|
|
function filter_disable(filter) {
|
|
/* hide the filter line */
|
|
$("#"+filter).hide();
|
|
|
|
/* uncheck the checkbox to declare we do not use this filter */
|
|
$("input[name="+filter+"_use]").prop("checked", false);
|
|
|
|
/* give the possibility to show it again */
|
|
$("#addFilter").children("option[value="+filter+"]").removeAttr("disabled");
|
|
}
|
|
|
|
$(".removeFilter").click(function () {
|
|
var filter = $(this).parent('li').attr("id");
|
|
filter_disable(filter);
|
|
|
|
return false;
|
|
});
|
|
|
|
$("#addFilter").change(function () {
|
|
var filter = $(this).prop("value");
|
|
filter_enable(filter);
|
|
$(this).prop("value", -1);
|
|
});
|
|
|
|
$("#removeFilters").click(function() {
|
|
$("#filterList li").each(function() {
|
|
var filter = $(this).attr("id");
|
|
filter_disable(filter);
|
|
});
|
|
return false;
|
|
});
|
|
|
|
$('[data-slider=widths]').pwgDoubleSlider(sliders.widths);
|
|
$('[data-slider=heights]').pwgDoubleSlider(sliders.heights);
|
|
$('[data-slider=ratios]').pwgDoubleSlider(sliders.ratios);
|
|
$('[data-slider=filesizes]').pwgDoubleSlider(sliders.filesizes);
|
|
|
|
|
|
/* ********** Thumbs */
|
|
|
|
/* Shift-click: select all photos between the click and the shift+click */
|
|
jQuery(document).ready(function() {
|
|
var last_clicked=0,
|
|
last_clickedstatus=true;
|
|
jQuery.fn.enableShiftClick = function() {
|
|
var inputs = [],
|
|
count=0;
|
|
this.find('input[type=checkbox]').each(function() {
|
|
var pos=count;
|
|
inputs[count++]=this;
|
|
$(this).bind("shclick", function (dummy,event) {
|
|
if (event.shiftKey) {
|
|
var first = last_clicked;
|
|
var last = pos;
|
|
if (first > last) {
|
|
first=pos;
|
|
last=last_clicked;
|
|
}
|
|
|
|
for (var i=first; i<=last;i++) {
|
|
input = $(inputs[i]);
|
|
$(input).prop('checked', last_clickedstatus);
|
|
if (last_clickedstatus)
|
|
{
|
|
$(input).siblings("span.wrap2").addClass("thumbSelected");
|
|
}
|
|
else
|
|
{
|
|
$(input).siblings("span.wrap2").removeClass("thumbSelected");
|
|
}
|
|
}
|
|
}
|
|
else {
|
|
last_clicked = pos;
|
|
last_clickedstatus = this.checked;
|
|
}
|
|
return true;
|
|
});
|
|
$(this).click(function(event) { $(this).triggerHandler("shclick",event)});
|
|
});
|
|
}
|
|
$('ul.thumbnails').enableShiftClick();
|
|
});
|
|
|
|
jQuery("a.preview-box").colorbox( {photo: true} );
|
|
|
|
jQuery('.thumbnails img').tipTip({
|
|
'delay' : 0,
|
|
'fadeIn' : 200,
|
|
'fadeOut' : 200
|
|
});
|
|
|
|
|
|
/* ********** Actions*/
|
|
|
|
jQuery('[data-datepicker]').pwgDatepicker({
|
|
showTimepicker: true,
|
|
cancelButton: lang.Cancel
|
|
});
|
|
|
|
jQuery('[data-add-album]').pwgAddAlbum();
|
|
|
|
$("input[name=remove_author]").click(function () {
|
|
if ($(this).is(':checked')) {
|
|
$("input[name=author]").hide();
|
|
}
|
|
else {
|
|
$("input[name=author]").show();
|
|
}
|
|
});
|
|
|
|
$("input[name=remove_title]").click(function () {
|
|
if ($(this).is(':checked')) {
|
|
$("input[name=title]").hide();
|
|
}
|
|
else {
|
|
$("input[name=title]").show();
|
|
}
|
|
});
|
|
|
|
$("input[name=remove_date_creation]").click(function () {
|
|
if ($(this).is(':checked')) {
|
|
$("#set_date_creation").hide();
|
|
}
|
|
else {
|
|
$("#set_date_creation").show();
|
|
}
|
|
});
|
|
|
|
var derivatives = {
|
|
elements: null,
|
|
done: 0,
|
|
total: 0,
|
|
|
|
finished: function() {
|
|
return derivatives.done == derivatives.total && derivatives.elements && derivatives.elements.length==0;
|
|
}
|
|
};
|
|
|
|
function progress(success) {
|
|
jQuery('#progressBar').progressBar(derivatives.done, {
|
|
max: derivatives.total,
|
|
textFormat: 'fraction',
|
|
boxImage: 'themes/default/images/progressbar.gif',
|
|
barImage: 'themes/default/images/progressbg_orange.gif'
|
|
});
|
|
if (success !== undefined) {
|
|
var type = success ? 'regenerateSuccess': 'regenerateError',
|
|
s = jQuery('[name="'+type+'"]').val();
|
|
jQuery('[name="'+type+'"]').val(++s);
|
|
}
|
|
|
|
if (derivatives.finished()) {
|
|
jQuery('#applyAction').click();
|
|
}
|
|
}
|
|
|
|
function getDerivativeUrls() {
|
|
var ids = derivatives.elements.splice(0, 500);
|
|
var params = {max_urls: 100000, ids: ids, types: []};
|
|
jQuery("#action_generate_derivatives input").each( function(i, t) {
|
|
if ($(t).is(":checked"))
|
|
params.types.push( t.value );
|
|
} );
|
|
|
|
jQuery.ajax( {
|
|
type: "POST",
|
|
url: 'ws.php?format=json&method=pwg.getMissingDerivatives',
|
|
data: params,
|
|
dataType: "json",
|
|
success: function(data) {
|
|
if (!data.stat || data.stat != "ok") {
|
|
return;
|
|
}
|
|
derivatives.total += data.result.urls.length;
|
|
progress();
|
|
for (var i=0; i < data.result.urls.length; i++) {
|
|
jQuery.manageAjax.add("queued", {
|
|
type: 'GET',
|
|
url: data.result.urls[i] + "&ajaxload=true",
|
|
dataType: 'json',
|
|
success: ( function(data) { derivatives.done++; progress(true) }),
|
|
error: ( function(data) { derivatives.done++; progress(false) })
|
|
});
|
|
}
|
|
if (derivatives.elements.length)
|
|
setTimeout( getDerivativeUrls, 25 * (derivatives.total-derivatives.done));
|
|
}
|
|
} );
|
|
}
|
|
|
|
function selectGenerateDerivAll() {
|
|
$("#action_generate_derivatives input[type=checkbox]").prop("checked", true);
|
|
}
|
|
function selectGenerateDerivNone() {
|
|
$("#action_generate_derivatives input[type=checkbox]").prop("checked", false);
|
|
}
|
|
|
|
function selectDelDerivAll() {
|
|
$("#action_delete_derivatives input[type=checkbox]").prop("checked", true);
|
|
}
|
|
function selectDelDerivNone() {
|
|
$("#action_delete_derivatives input[type=checkbox]").prop("checked", false);
|
|
}
|