mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-23 18:03:17 +00:00
fix #728 check if thumbExtractor is supported
remove fileReader its not needed fix unit tests fix typo remove unecessary message
This commit is contained in:
@@ -374,22 +374,23 @@
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
|
||||
$(document).ready(function(){
|
||||
var scope = $("#prod-tool-box");
|
||||
var width = 0;
|
||||
|
||||
$("#tool-tabs", scope).tabs();
|
||||
|
||||
$(".iframe_submiter", scope).bind("click", function(){
|
||||
var form = $(this).closest("form");
|
||||
form.submit();
|
||||
form.find('.load').empty().html(language.loading + ' ...');
|
||||
$("#uploadHdsub").contents().find(".content").empty();
|
||||
$("#uploadHdsub").load(function(){
|
||||
form.find('.load').empty();
|
||||
var iframeContent = $("#uploadHdsub").contents().find(".content").html();
|
||||
form.closest('div').find('.resultAction').empty().append(iframeContent);
|
||||
});
|
||||
var form = $(this).closest("form");
|
||||
form.submit();
|
||||
form.find('.load').empty().html(language.loading + ' ...');
|
||||
$("#uploadHdsub").contents().find(".content").empty();
|
||||
$("#uploadHdsub").load(function(){
|
||||
form.find('.load').empty();
|
||||
var iframeContent = $("#uploadHdsub").contents().find(".content").html();
|
||||
form.closest('div').find('.resultAction').empty().append(iframeContent);
|
||||
});
|
||||
});
|
||||
|
||||
$(".action_submiter", scope).bind("click", function(){
|
||||
@@ -419,276 +420,281 @@
|
||||
});
|
||||
|
||||
$(".action_cancel", scope).bind("click", function(){
|
||||
var dialog = p4.Dialog.get(1);
|
||||
dialog.Close();
|
||||
var dialog = p4.Dialog.get(1);
|
||||
dialog.Close();
|
||||
});
|
||||
|
||||
//thumbExtractor
|
||||
|
||||
$("#slider-brightness", scope).slider({
|
||||
slide: function() {
|
||||
$("#value-brightness").val(Math.round($("#slider-brightness").slider("value") / 100 * 300) - 150);
|
||||
}
|
||||
}).slider( "option", "value", 50);
|
||||
|
||||
$("#slider-contrast").slider({
|
||||
slide: function() {
|
||||
$("#value-contrast").val(
|
||||
(
|
||||
(
|
||||
$("#slider-contrast").slider("value") / 100 * 4
|
||||
)
|
||||
-1
|
||||
).toFixed(1));
|
||||
}
|
||||
}).slider( "option", "value", 1/3*100);
|
||||
|
||||
var sliderWrapper = $("#thumb_wrapper", scope);
|
||||
|
||||
var ThumbEditor = new this.THUMB_EDITOR("thumb_video", "thumb_canvas");
|
||||
|
||||
$("#thumb_reset_button",scope).bind("click", function(){
|
||||
var curImg = sliderWrapper.find(".selected");
|
||||
var id = curImg.attr("id").split("_").pop();
|
||||
var originalScreenShot = ThumbEditor.store.get(id);
|
||||
var newImg = $("<img />");
|
||||
if(ThumbEditor.isSupported()) {
|
||||
$("#slider-brightness", scope).slider({
|
||||
slide: function() {
|
||||
$("#value-brightness").val(Math.round($("#slider-brightness").slider("value") / 100 * 300) - 150);
|
||||
}
|
||||
}).slider( "option", "value", 50);
|
||||
|
||||
curImg.after(newImg).remove();
|
||||
$("#slider-contrast").slider({
|
||||
slide: function() {
|
||||
$("#value-contrast").val(
|
||||
(
|
||||
(
|
||||
$("#slider-contrast").slider("value") / 100 * 4
|
||||
)
|
||||
-1
|
||||
).toFixed(1));
|
||||
}
|
||||
}).slider( "option", "value", 1/3*100);
|
||||
|
||||
newImg
|
||||
.attr("id", "#working_"+ id)
|
||||
.attr("src", originalScreenShot.getDataURI())
|
||||
.trigger("click");
|
||||
});
|
||||
var sliderWrapper = $("#thumb_wrapper", scope);
|
||||
|
||||
$("#thumb_delete_button", scope).bind("click", function(){
|
||||
var img = sliderWrapper.find(".selected");
|
||||
var id = img.attr("id").split("_").pop();
|
||||
var previous = img.prev();
|
||||
var next = img.next();
|
||||
$("#thumb_reset_button",scope).bind("click", function(){
|
||||
var curImg = sliderWrapper.find(".selected");
|
||||
var id = curImg.attr("id").split("_").pop();
|
||||
var originalScreenShot = ThumbEditor.store.get(id);
|
||||
var newImg = $("<img />");
|
||||
|
||||
if(previous.length > 0)
|
||||
{
|
||||
previous.trigger("click");
|
||||
}
|
||||
else if(next.length > 0)
|
||||
{
|
||||
next.trigger("click");
|
||||
}
|
||||
else
|
||||
{
|
||||
$(this).hide();
|
||||
$("#thumb_reset_button",scope).hide();
|
||||
$("#thumb_info", scope).show();
|
||||
ThumbEditor.resetCanva();
|
||||
}
|
||||
curImg.after(newImg).remove();
|
||||
|
||||
img.remove();
|
||||
ThumbEditor.store.remove(id);
|
||||
});
|
||||
newImg
|
||||
.attr("id", "#working_"+ id)
|
||||
.attr("src", originalScreenShot.getDataURI())
|
||||
.trigger("click");
|
||||
});
|
||||
|
||||
$(".close_action_frame", scope).bind("click", function(){
|
||||
$(this).closest(".action_frame").hide();
|
||||
});
|
||||
$("#thumb_delete_button", scope).bind("click", function(){
|
||||
var img = sliderWrapper.find(".selected");
|
||||
var id = img.attr("id").split("_").pop();
|
||||
var previous = img.prev();
|
||||
var next = img.next();
|
||||
|
||||
$("#flipV", scope).bind("click", function(){
|
||||
Pixastic.process($("#thumb_canvas").get(0),
|
||||
"flipv",
|
||||
null,
|
||||
function(canvas){$("#thumb_canvas").trigger("tool_event");}
|
||||
);
|
||||
});
|
||||
|
||||
$("#flipH", scope).bind("click", function(){
|
||||
Pixastic.process($("#thumb_canvas").get(0),
|
||||
"fliph",
|
||||
null, function(canvas){$("#thumb_canvas").trigger("tool_event");}
|
||||
);
|
||||
});
|
||||
|
||||
$("#brightness", scope).bind("click", function(){
|
||||
$("#action_frame_brightness", scope).show();
|
||||
$("#action_frame_contrast", scope).hide();
|
||||
});
|
||||
|
||||
$("#contrast", scope).bind("click", function(){
|
||||
$("#action_frame_brightness", scope).hide();
|
||||
$("#action_frame_contrast", scope).show();
|
||||
});
|
||||
|
||||
$(".apply-brightness", scope).bind("click", function(){
|
||||
Pixastic.process($("#thumb_canvas").get(0), "brightness", {
|
||||
brightness: $("#value-brightness").val(),
|
||||
contrast: $("#value-contrast").val(),
|
||||
legacy: false
|
||||
}, null, function(canvas){$("#thumb_canvas").trigger("tool_event");});
|
||||
});
|
||||
|
||||
$(".apply-contrast").bind("click", function(){
|
||||
Pixastic.process($("#thumb_canvas").get(0), "brightness", {
|
||||
brightness: $("#value-brightness").val(),
|
||||
contrast: $("#value-contrast").val(),
|
||||
legacy: false
|
||||
}, null, function(canvas){$("#thumb_canvas").trigger("tool_event");});
|
||||
});
|
||||
|
||||
$("img", sliderWrapper).live("click", function(){
|
||||
$('.selected', sliderWrapper).removeClass('selected');
|
||||
$(this).addClass('selected');
|
||||
|
||||
ThumbEditor.copy($(this).get(0));
|
||||
});
|
||||
|
||||
$("#thumb_camera_button", scope).bind("click", function(){
|
||||
$("#thumb_info", scope).hide();
|
||||
$("#thumb_delete_button", scope).show();
|
||||
$("#thumb_reset_button",scope).show();
|
||||
|
||||
var screenshot = ThumbEditor.screenshot();
|
||||
var img = $("<img />");
|
||||
$('.selected', sliderWrapper).removeClass('selected');
|
||||
img.addClass('selected')
|
||||
.attr('id', 'working_'+ screenshot.getId())
|
||||
.attr('src', screenshot.getDataURI())
|
||||
.attr("alt", screenshot.getVideoTime())
|
||||
.appendTo(sliderWrapper);
|
||||
});
|
||||
|
||||
$("#thumb_canvas").live('tool_event', function(){
|
||||
var thumbnail = $('.selected', sliderWrapper);
|
||||
|
||||
if(thumbnail.length === 0)
|
||||
{
|
||||
console.error('No image selected');
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
thumbnail.attr('src', ThumbEditor.getCanvaImage());
|
||||
|
||||
});
|
||||
|
||||
$("#thumb_validate_button", scope).bind("click", function(){
|
||||
|
||||
var thumbnail = $('.selected', sliderWrapper);
|
||||
|
||||
if(thumbnail.length === 0)
|
||||
{
|
||||
var dialog = p4.Dialog.Create({
|
||||
size:'Alert',
|
||||
title: '{% trans "alert" %}',
|
||||
closeOnEscape:true
|
||||
}, 3);
|
||||
|
||||
var content = $("<div />").css({
|
||||
'text-align':'center',
|
||||
'width': '100%',
|
||||
'font-size':'14px'
|
||||
}).append('{% trans "no image selected" %}');
|
||||
dialog.setContent(content);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
var buttons = {};
|
||||
|
||||
var record_id = $("input[name=record_id]").val();
|
||||
var sbas_id = $("input[name=sbas_id]").val();
|
||||
|
||||
|
||||
function disableConfirmButton(dialog){
|
||||
dialog.getDomElement().closest('.ui-dialog').find(".ui-dialog-buttonpane button").filter(function() {
|
||||
return $(this).text() == language.valider;
|
||||
}).addClass("ui-state-disabled").attr("disabled", true);
|
||||
}
|
||||
|
||||
|
||||
function enableConfirmButton(dialog){
|
||||
dialog.getDomElement().closest('.ui-dialog').find(".ui-dialog-buttonpane button").filter(function() {
|
||||
return $(this).text() == language.valider;
|
||||
}).removeClass("ui-state-disabled").attr("disabled", false);
|
||||
}
|
||||
|
||||
buttons[language.valider] = function(){
|
||||
var dialog = p4.Dialog.get(2);
|
||||
var buttonPanel = dialog.getDomElement().closest('.ui-dialog').find(".ui-dialog-buttonpane");
|
||||
var loadingDiv = buttonPanel.find('.info-div');
|
||||
|
||||
if(loadingDiv.length == 0)
|
||||
{
|
||||
loadingDiv = $("<div />").css({
|
||||
'width' : '120px',
|
||||
'height' : '40px',
|
||||
'float':'left',
|
||||
'line-height' : '40px',
|
||||
'padding-left' : '40px',
|
||||
'text-align' : 'left',
|
||||
'background-position' : 'left center'
|
||||
}).attr('class', 'info-div').prependTo(buttonPanel);
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/prod/tools/thumb-extractor/apply/",
|
||||
data: {
|
||||
image: $("#thumb_confirm img.selected").attr('src'),
|
||||
record_id : record_id,
|
||||
sbas_id: sbas_id
|
||||
},
|
||||
beforeSend: function(){
|
||||
disableConfirmButton(dialog);
|
||||
loadingDiv.empty().addClass('loading').append('{% trans "processing" %}');
|
||||
},
|
||||
success: function(data){
|
||||
loadingDiv.empty().removeClass('loading');
|
||||
|
||||
if(data.success)
|
||||
if(previous.length > 0)
|
||||
{
|
||||
dialog.Close();
|
||||
p4.Dialog.get(1).Close();
|
||||
previous.trigger("click");
|
||||
}
|
||||
else if(next.length > 0)
|
||||
{
|
||||
next.trigger("click");
|
||||
}
|
||||
else
|
||||
{
|
||||
var content = $("<div />").css({'color':'#a00'}).append("{% trans "an error occured" %} " + data.message);
|
||||
loadingDiv.append(content);
|
||||
enableConfirmButton(dialog);
|
||||
$(this).hide();
|
||||
$("#thumb_reset_button",scope).hide();
|
||||
$("#thumb_info", scope).show();
|
||||
ThumbEditor.resetCanva();
|
||||
}
|
||||
}
|
||||
|
||||
img.remove();
|
||||
ThumbEditor.store.remove(id);
|
||||
});
|
||||
};
|
||||
|
||||
//show confirm box, content is loaded here /prod/tools/thumb-extractor/confirm-box/
|
||||
var dialog = p4.Dialog.Create({
|
||||
size:'Small',
|
||||
title:"{% trans 'thumbnail validation' %}",
|
||||
cancelButton:true,
|
||||
buttons: buttons
|
||||
}, 2);
|
||||
$(".close_action_frame", scope).bind("click", function(){
|
||||
$(this).closest(".action_frame").hide();
|
||||
});
|
||||
|
||||
var datas = {
|
||||
image: $('.selected', sliderWrapper).attr("src"),
|
||||
sbas_id: sbas_id,
|
||||
record_id: record_id
|
||||
};
|
||||
$("#flipV", scope).bind("click", function(){
|
||||
Pixastic.process($("#thumb_canvas").get(0),
|
||||
"flipv",
|
||||
null,
|
||||
function(canvas){$("#thumb_canvas").trigger("tool_event");}
|
||||
);
|
||||
});
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/prod/tools/thumb-extractor/confirm-box/",
|
||||
data: datas,
|
||||
success: function(data){
|
||||
$("#flipH", scope).bind("click", function(){
|
||||
Pixastic.process($("#thumb_canvas").get(0),
|
||||
"fliph",
|
||||
null, function(canvas){$("#thumb_canvas").trigger("tool_event");}
|
||||
);
|
||||
});
|
||||
|
||||
if(data.error)
|
||||
{
|
||||
var content = $("<div />").css({'font-size':'16px', 'text-align':'center'}).append(data.datas);
|
||||
dialog.setContent(content);
|
||||
disableConfirmButton(dialog);
|
||||
}
|
||||
else
|
||||
{
|
||||
dialog.setContent(data.datas);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
$("#brightness", scope).bind("click", function(){
|
||||
$("#action_frame_brightness", scope).show();
|
||||
$("#action_frame_contrast", scope).hide();
|
||||
});
|
||||
|
||||
$("#contrast", scope).bind("click", function(){
|
||||
$("#action_frame_brightness", scope).hide();
|
||||
$("#action_frame_contrast", scope).show();
|
||||
});
|
||||
|
||||
$(".apply-brightness", scope).bind("click", function(){
|
||||
Pixastic.process($("#thumb_canvas").get(0), "brightness", {
|
||||
brightness: $("#value-brightness").val(),
|
||||
contrast: $("#value-contrast").val(),
|
||||
legacy: false
|
||||
}, null, function(canvas){$("#thumb_canvas").trigger("tool_event");});
|
||||
});
|
||||
|
||||
$(".apply-contrast").bind("click", function(){
|
||||
Pixastic.process($("#thumb_canvas").get(0), "brightness", {
|
||||
brightness: $("#value-brightness").val(),
|
||||
contrast: $("#value-contrast").val(),
|
||||
legacy: false
|
||||
}, null, function(canvas){$("#thumb_canvas").trigger("tool_event");});
|
||||
});
|
||||
|
||||
$("img", sliderWrapper).live("click", function(){
|
||||
$('.selected', sliderWrapper).removeClass('selected');
|
||||
$(this).addClass('selected');
|
||||
|
||||
ThumbEditor.copy($(this).get(0));
|
||||
});
|
||||
|
||||
$("#thumb_camera_button", scope).bind("click", function(){
|
||||
$("#thumb_info", scope).hide();
|
||||
$("#thumb_delete_button", scope).show();
|
||||
$("#thumb_reset_button",scope).show();
|
||||
|
||||
var screenshot = ThumbEditor.screenshot();
|
||||
var img = $("<img />");
|
||||
$('.selected', sliderWrapper).removeClass('selected');
|
||||
img.addClass('selected')
|
||||
.attr('id', 'working_'+ screenshot.getId())
|
||||
.attr('src', screenshot.getDataURI())
|
||||
.attr("alt", screenshot.getVideoTime())
|
||||
.appendTo(sliderWrapper);
|
||||
});
|
||||
|
||||
$("#thumb_canvas").live('tool_event', function(){
|
||||
var thumbnail = $('.selected', sliderWrapper);
|
||||
|
||||
if(thumbnail.length === 0)
|
||||
{
|
||||
console.error('No image selected');
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
thumbnail.attr('src', ThumbEditor.getCanvaImage());
|
||||
|
||||
});
|
||||
|
||||
$("#thumb_validate_button", scope).bind("click", function(){
|
||||
|
||||
var thumbnail = $('.selected', sliderWrapper);
|
||||
|
||||
if(thumbnail.length === 0)
|
||||
{
|
||||
var dialog = p4.Dialog.Create({
|
||||
size:'Alert',
|
||||
title: '{% trans "alert" %}',
|
||||
closeOnEscape:true
|
||||
}, 3);
|
||||
|
||||
var content = $("<div />").css({
|
||||
'text-align':'center',
|
||||
'width': '100%',
|
||||
'font-size':'14px'
|
||||
}).append('{% trans "no image selected" %}');
|
||||
dialog.setContent(content);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
var buttons = {};
|
||||
|
||||
var record_id = $("input[name=record_id]").val();
|
||||
var sbas_id = $("input[name=sbas_id]").val();
|
||||
|
||||
|
||||
function disableConfirmButton(dialog){
|
||||
dialog.getDomElement().closest('.ui-dialog').find(".ui-dialog-buttonpane button").filter(function() {
|
||||
return $(this).text() == language.valider;
|
||||
}).addClass("ui-state-disabled").attr("disabled", true);
|
||||
}
|
||||
|
||||
|
||||
function enableConfirmButton(dialog){
|
||||
dialog.getDomElement().closest('.ui-dialog').find(".ui-dialog-buttonpane button").filter(function() {
|
||||
return $(this).text() == language.valider;
|
||||
}).removeClass("ui-state-disabled").attr("disabled", false);
|
||||
}
|
||||
|
||||
buttons[language.valider] = function(){
|
||||
var dialog = p4.Dialog.get(2);
|
||||
var buttonPanel = dialog.getDomElement().closest('.ui-dialog').find(".ui-dialog-buttonpane");
|
||||
var loadingDiv = buttonPanel.find('.info-div');
|
||||
|
||||
if(loadingDiv.length == 0)
|
||||
{
|
||||
loadingDiv = $("<div />").css({
|
||||
'width' : '120px',
|
||||
'height' : '40px',
|
||||
'float':'left',
|
||||
'line-height' : '40px',
|
||||
'padding-left' : '40px',
|
||||
'text-align' : 'left',
|
||||
'background-position' : 'left center'
|
||||
}).attr('class', 'info-div').prependTo(buttonPanel);
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/prod/tools/thumb-extractor/apply/",
|
||||
data: {
|
||||
image: $("#thumb_confirm img.selected").attr('src'),
|
||||
record_id : record_id,
|
||||
sbas_id: sbas_id
|
||||
},
|
||||
beforeSend: function(){
|
||||
disableConfirmButton(dialog);
|
||||
loadingDiv.empty().addClass('loading').append('{% trans "processing" %}');
|
||||
},
|
||||
success: function(data){
|
||||
loadingDiv.empty().removeClass('loading');
|
||||
|
||||
if(data.success)
|
||||
{
|
||||
dialog.Close();
|
||||
p4.Dialog.get(1).Close();
|
||||
}
|
||||
else
|
||||
{
|
||||
//var content = $("<div />").css({'color':'#a00'}).append("{% trans "an error occured" %} " + data.message);
|
||||
loadingDiv.append(content);
|
||||
enableConfirmButton(dialog);
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
//show confirm box, content is loaded here /prod/tools/thumb-extractor/confirm-box/
|
||||
var dialog = p4.Dialog.Create({
|
||||
size:'Small',
|
||||
title:"{% trans 'thumbnail validation' %}",
|
||||
cancelButton:true,
|
||||
buttons: buttons
|
||||
}, 2);
|
||||
|
||||
var datas = {
|
||||
image: $('.selected', sliderWrapper).attr("src"),
|
||||
sbas_id: sbas_id,
|
||||
record_id: record_id
|
||||
};
|
||||
|
||||
$.ajax({
|
||||
type: "POST",
|
||||
url: "/prod/tools/thumb-extractor/confirm-box/",
|
||||
data: datas,
|
||||
success: function(data){
|
||||
|
||||
if(data.error)
|
||||
{
|
||||
var content = $("<div />").css({'font-size':'16px', 'text-align':'center'}).append(data.datas);
|
||||
dialog.setContent(content);
|
||||
disableConfirmButton(dialog);
|
||||
}
|
||||
else
|
||||
{
|
||||
dialog.setContent(data.datas);
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
} else {
|
||||
//not supported
|
||||
$("#thumbExtractor").empty().append(language.browserFeatureSupport);
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
Reference in New Issue
Block a user