268 lines
9.6 KiB
JavaScript
Vendored
268 lines
9.6 KiB
JavaScript
Vendored
$(document).ready(function() {
|
|
|
|
$.ajaxSetup({
|
|
headers:
|
|
{ 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }
|
|
});
|
|
|
|
/***************************
|
|
Widget panier
|
|
*****************************/
|
|
if ( $( ".panier_side_menu" ).length ) {
|
|
// ---- collapse/expand panier side menu
|
|
$("#menu_panier").on('click', function(event) {
|
|
event.preventDefault();
|
|
$(".panier_side_menu .panier_menu").toggle();
|
|
});
|
|
}
|
|
|
|
/******************************
|
|
Moteur de recherche de médias
|
|
**********************************/
|
|
// ---- Initialisation du module de recherche
|
|
if ($('.search_wrapper').length) {
|
|
|
|
// ---- Initialisation des listes
|
|
$(".filter_selector .filter_btn").on('click', function (event) {
|
|
$(".filter_selector .list").not($(this).parent().find(".list")).hide();
|
|
$(this).parent().find(".list").toggle();
|
|
});
|
|
|
|
}
|
|
|
|
/******************************
|
|
Liste des dossiers
|
|
**********************************/
|
|
|
|
// ---- collapse/expand side menu
|
|
$(".close_side_menu").on('click', function(event) {
|
|
event.preventDefault();
|
|
if($(this).parents(".side_menu ").hasClass('collapse')){
|
|
$(this).parents(".side_menu ").removeClass('collapse');
|
|
$(this).find("i").removeClass('fa-chevron-right');
|
|
$(this).find("i").addClass('fa-chevron-left');
|
|
}else{
|
|
$(this).parents(".side_menu ").addClass('collapse');
|
|
$(this).find("i").removeClass('fa-chevron-left');
|
|
$(this).find("i").addClass('fa-chevron-right');
|
|
}
|
|
});
|
|
|
|
// ---- affichage des dossiers on draghover
|
|
$(".folder_container").on("dragover", ".dd3-content, .root_folder", function(event) {
|
|
event.preventDefault();
|
|
event.stopPropagation();
|
|
$(".folder_container .dd3-content").removeClass('dragged');
|
|
$(".folder_container .root_folder").removeClass('dragged');
|
|
$(this).addClass('dragged');
|
|
});
|
|
|
|
// ---- affichage des dossiers on dragleave
|
|
$(".folder_container").on("dragleave", ".dd3-content, .root_folder", function(event) {
|
|
event.preventDefault();
|
|
event.stopPropagation();
|
|
$(".folder_container .dd3-content").removeClass('dragged');
|
|
$(".folder_container .root_folder").removeClass('dragged');
|
|
});
|
|
|
|
/******************************
|
|
Gestion des médias
|
|
**********************************/
|
|
|
|
// ---- Mode d'affichage
|
|
$(".action_wrapper .display i").on("click", function(event) {
|
|
if($(this).hasClass('fa-calendar-check')){
|
|
//toggle affichage des dates
|
|
if(!$(this).hasClass('selected')){
|
|
$(this).addClass('selected');
|
|
$(".media_container .wrapper .date-separator").removeClass('hide');
|
|
} else {
|
|
$(this).removeClass('selected');
|
|
$(".media_container .wrapper .date-separator").addClass('hide');
|
|
}
|
|
} else {
|
|
if($(this).hasClass('fa-th')){ // mode mosaique
|
|
if(!$(this).hasClass('selected')){
|
|
$(".action_wrapper .display .fa-th-list").removeClass('selected');
|
|
$(this).addClass('selected');
|
|
$(".media_container .wrapper").removeClass('inline');
|
|
}
|
|
}else{ // mode liste
|
|
if(!$(this).hasClass('selected')){
|
|
$(".action_wrapper .display .fa-th").removeClass('selected');
|
|
$(this).addClass('selected');
|
|
$(".media_container .wrapper").addClass('inline');
|
|
}
|
|
}
|
|
}
|
|
|
|
});
|
|
|
|
/******************************
|
|
Edition d'un média
|
|
**********************************/
|
|
|
|
|
|
// ---- fermeture de la popup d'édition
|
|
$(".form_media_close, .btn_tab_edit_cancel").on("click" , function(event) {
|
|
event.preventDefault();
|
|
|
|
// ---- Stop la vidéo ou le son si présent
|
|
if($(".tab_preview video").length){
|
|
$(".tab_preview video").get(0).pause()
|
|
}
|
|
if($(".tab_preview audio").length){
|
|
$(".tab_preview audio").get(0).pause()
|
|
}
|
|
});
|
|
|
|
// ---- Suppression de média en masse
|
|
$('.action_delete_media').on('click',function(event){
|
|
event.preventDefault();
|
|
var medias = [];
|
|
$('.media_container .imageItem').each(function (index) {
|
|
if( $(this ).attr("aria-grabbed") == "true" ){
|
|
medias.push($(this ).attr("data-id"));
|
|
}
|
|
});
|
|
removeMedias(medias);
|
|
});
|
|
|
|
// Suppression d'un média
|
|
$(".btn_tab_edit_delete").on("click", function (event) {
|
|
event.preventDefault();
|
|
|
|
if ($(".tab_edit #arcadia_id").val().length) {
|
|
var r = confirm("Etes-vous sûr de vouloir supprimer ce média ? (Lié à Arcadia)");
|
|
} else {
|
|
var r = confirm("Etes-vous sûr de vouloir supprimer ce média ?");
|
|
}
|
|
|
|
if (r == true) {
|
|
var medias = [$(window).data('current_edit_media')];
|
|
$.ajax({
|
|
url: '/ajax/remove-media',
|
|
method: 'POST',
|
|
dataType : 'json',
|
|
data: {
|
|
medias: medias
|
|
},
|
|
success: function(result){
|
|
$.each(result, function (index, value) {
|
|
$(".media_container .imageItem[data-id='"+value+"']").remove();
|
|
});
|
|
|
|
// ---- MAJ du nb de média dans le dossier
|
|
var currentFolder = $(window).data('currentFolder');
|
|
if(currentFolder == 0 || currentFolder == ""){
|
|
var count = $(".folder_container .root_folder .count");
|
|
}else{
|
|
var count = $(".folder_container .dd3-item[data-id='"+currentFolder+"'] > .dd3-content .count");
|
|
}
|
|
count.html(parseInt(count.html())-result.length);
|
|
|
|
if(result.length != medias.length){
|
|
$.fancybox.close();
|
|
if(medias.length == 1){
|
|
$.fancyMessage({title : "Attention", message : "Ce média est lié à Arcadia. Suppression refusée. ", type : "error"});
|
|
}else{
|
|
$.fancyMessage({title : "Attention", message : "Votre sélection contient des médias liés à Arcadia. Ces médias ne seront pas supprimés.", type : "info"});
|
|
}
|
|
}else{
|
|
$(".form_media_close").trigger('click');
|
|
$.fancyMessage({title : "Suppression de média", message : "Le média a été supprimé.", type : "info"});
|
|
}
|
|
},
|
|
error: function(jqXHR, textStatus, errorThrown) {
|
|
$.fancybox.close();
|
|
$.fancyMessage({title : "Attention", message : "Erreur lors de la suppression du média, merci d'actualiser la page.", type : "error"});
|
|
}
|
|
});
|
|
}
|
|
});
|
|
|
|
|
|
// ---- gestion des onglets de la popup d'édition
|
|
$("#form_media .tabbtn").on("click" , function(event) {
|
|
return;
|
|
event.preventDefault();
|
|
// ---- Affiche l'onglet cliqué
|
|
var tabId = $(this).attr("data-tab");
|
|
$("#form_media .tabbtn").removeClass('active');
|
|
$(this).addClass('active')
|
|
$("#form_media .main_content .tab").removeClass('active');
|
|
$("#form_media .main_content .tab").eq(tabId).addClass('active');
|
|
|
|
$(".tab_edit .tab_content").scrollTop( 0 ); // on remonte la scrollbar de la tab edition
|
|
|
|
// ---- Stop la vidéo ou le son si présent
|
|
if($(".tab_preview video").length){
|
|
$(".tab_preview video").get(0).pause()
|
|
}
|
|
if($(".tab_preview audio").length){
|
|
$(".tab_preview audio").get(0).pause()
|
|
}
|
|
});
|
|
|
|
});
|
|
|
|
// ---- Supression de médias
|
|
function removeMedias(medias){
|
|
|
|
// Si Admin
|
|
if ($(window).data('CurrentUserRole') === 1){
|
|
var msg = "Êtes-vous sûr de vouloir supprimer "+medias.length+" média(s) ? <br> ATTENTION DES MEDIAS PEUVENT ETRE LIES AVEC ARCADIA !";
|
|
}else{
|
|
var msg = "Êtes-vous sûr de vouloir supprimer "+medias.length+" média(s) ?";
|
|
}
|
|
|
|
if(medias.length == 0){
|
|
$.fancyMessage({title : "Supprimer un média", message : "Veuillez sélectionner les médias à supprimer.", type : "info"});
|
|
}else{
|
|
$.fancyConfirm({
|
|
title : "Suppression de média",
|
|
message : msg,
|
|
okButton : 'Supprimer',
|
|
noButton : 'Annuler',
|
|
callback : function (value) {
|
|
if (value) {
|
|
$.ajax({
|
|
url: '/ajax/remove-media',
|
|
method: 'POST',
|
|
dataType : 'json',
|
|
data: {
|
|
medias: medias
|
|
},
|
|
success: function(result){
|
|
$.each(result, function (index, value) {
|
|
$(".media_container .imageItem[data-id='"+value+"']").remove();
|
|
});
|
|
|
|
// ---- MAJ du nb de média dans le dossier
|
|
var currentFolder = $(window).data('currentFolder');
|
|
if(currentFolder == 0 || currentFolder == ""){
|
|
var count = $(".folder_container .root_folder .count");
|
|
}else{
|
|
var count = $(".folder_container .dd3-item[data-id='"+currentFolder+"'] > .dd3-content .count");
|
|
}
|
|
count.html(parseInt(count.html())-result.length);
|
|
|
|
if(result.length != medias.length){
|
|
$.fancybox.close();
|
|
if(medias.length == 1){
|
|
$.fancyMessage({title : "Attention", message : "Ce média est lié à Arcadia. Suppression refusée. ", type : "error"});
|
|
}else{
|
|
$.fancyMessage({title : "Attention", message : "Votre sélection contient des médias liés à Arcadia. Ces médias ne seront pas supprimés.", type : "info"});
|
|
}
|
|
}
|
|
},
|
|
error: function(jqXHR, textStatus, errorThrown) {
|
|
$.fancybox.close();
|
|
$.fancyMessage({title : "Attention", message : "Erreur lors de la suppression du média, merci d'actualiser la page.", type : "error"});
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|