/* DEBUT MOBILE */
function majTableauMobile(){
var num_fb1 = $("#choixBanque1").find('option:selected').val();
var num_fb2 = $("#choixBanque2").find('option:selected').val();
$.ajax({
url : '../js/ajax/get-banques-duel.php',
type : 'POST',
dataType : 'html',
data : 'num_fb1='+num_fb1+'&num_fb2='+num_fb2,
success : function(code_html, statut){
$(".mobile_tableThead").html(code_html);
putTxtMobile();
}
});
}
function putTxtMobile(){
$(".afficherPlusContentMobile").each(function(){
var id_mobile = $(this).attr('id');
var id_txt = id_mobile.substring(3);
$("#"+id_mobile).html($("#afficherPlusTxt_"+id_txt).html());
});
}
/* FIN MOBILE */
var conditionsAff = false;
var autresBanquesAff = true;
var fixed = false;
var action_en_cours = false;
function resizeTable(){
var nb_banques_aff = $("input[type=checkbox][name=choixBanques]:checked").length;
if(nb_banques_aff == 0){
nb_banques_aff = $("#fisrtTr td").length - 1;
}
var tailleTotal = 956;
var tailleTitre = 200;
var tailleColonneN = (tailleTotal - tailleTitre) / nb_banques_aff;
var tailleColonne = Math.ceil(tailleColonneN);
var tailleReste = tailleTotal - tailleTitre - (tailleColonne * nb_banques_aff);
var tailleTitre = tailleTitre + tailleReste;
var paddingLeft = 0;
var paddingRight = 0;
var borderLeft = 0;
var borderRight = 0;
$("#fisrtTr > td").each(function(index,value){
if(index == 0){
paddingLeft = parseInt($(this).css('padding-left'));
paddingRight = parseInt($(this).css('padding-right'));
borderLeft = parseInt($(this).css('border-left-width'));
borderRight = parseInt($(this).css('border-right-width'));
$(this).width(tailleTitre - paddingLeft - paddingRight - borderLeft - borderRight);
}else{
paddingLeft = parseInt($(this).css('padding-left'));
paddingRight = parseInt($(this).css('padding-right'));
borderLeft = parseInt($(this).css('border-left-width'));
borderRight = parseInt($(this).css('border-right-width'));
$(this).width(tailleColonne - paddingLeft - paddingRight - borderLeft - borderRight);
}
});
$("#secondTr > td").each(function(index,value){
if(index == 0){
paddingLeft = parseInt($(this).css('padding-left'));
paddingRight = parseInt($(this).css('padding-right'));
borderLeft = parseInt($(this).css('border-left-width'));
borderRight = parseInt($(this).css('border-right-width'));
$(this).width(tailleTitre - paddingLeft - paddingRight - borderLeft - borderRight);
}else{
paddingLeft = parseInt($(this).css('padding-left'));
paddingRight = parseInt($(this).css('padding-right'));
borderLeft = parseInt($(this).css('border-left-width'));
borderRight = parseInt($(this).css('border-right-width'));
$(this).width(tailleColonne - paddingLeft - paddingRight - borderLeft - borderRight);
}
});
}
function tableauAdd(num_fb){
$("."+num_fb).css('display','table-cell');
resizeTable();
$('.tCenter').css('border-radius','0px');
$('.tCenter.'+num_fb).css('border-top-right-radius','3px');
action_en_cours = false;
}
function tableauDelete(num_fb){
$("."+num_fb).css('display','none');
resizeTable();
action_en_cours = false;
}
function moveToRecap(num_fb) {
/* var productX = $("#choixBanque-" + num_fb).offset().left;
var productY = $("#choixBanque-" + num_fb).offset().top;
var basketX = $("#recapLibre").offset().left;
var basketY = $("#recapLibre").offset().top;
var gotoX = basketX - productX;
var gotoY = basketY - productY;
var newImageWidth = $("#choixBanque-" + num_fb).width() / 3;
var newImageHeight = $("#choixBanque-" + num_fb).height() / 3;
$("#choixBanque-" + num_fb)
.clone()
.prependTo("#choixBanque-" + num_fb)
.css({'position' : 'absolute'})
.animate({opacity: 0.4}, 100 )
.animate({opacity: 0.1, marginLeft: gotoX, marginTop: gotoY, width: newImageWidth, height: newImageHeight}, 700, function() {
$(this).remove();
//on met à jours le recap des banques
var contentHtml = "
Votre sélection
";
$("input[type=checkbox][name=choixBanques]:checked").each(function(){
var id = $(this).val();
var laclass="";
var img = "";
if(id == idRef){
laclass="banqueDeReference";
img = "";
}
contentHtml += "- "+$(this).next().html()+""+img+"
";
});
var nb = $("input[type=checkbox][name=choixBanques]:checked").length;
var firstOK = false;
for(var i = nb+1 ; i <= 5 ; i++){
if(!firstOK){
contentHtml += "";
}else{
contentHtml += "";
}
firstOK = true;
}
contentHtml += "
";
$("#recapBanques").html(contentHtml);
});
*/
tableauAdd(num_fb);
}
function majRecap(self,num_fb){
self.remove();
//on met à jours le recap des banques
var contentHtml = "Votre sélection
";
$("input[type=checkbox][name=choixBanques]:checked").each(function(){
var id = $(this).val();
var laclass="";
var img = "";
if(id == idRef){
laclass="banqueDeReference";
img = "";
}
contentHtml += "- "+$(this).next().html()+""+img+"
";
});
var nb = $("input[type=checkbox][name=choixBanques]:checked").length;
var firstOK = false;
for(var i = nb+1 ; i <= 5 ; i++){
if(!firstOK){
contentHtml += "";
}else{
contentHtml += "";
}
firstOK = true;
}
contentHtml += "
";
$("#recapBanques").html(contentHtml);
tableauDelete(num_fb);
}
function moveToChoixBanques(num_fb) {
/*
var productX = $("#recap-" + num_fb).offset().left;
var productY = $("#recap-" + num_fb).offset().top;
var basketX = $("#choixBanque-" + num_fb).offset().left;
var basketY = $("#choixBanque-" + num_fb).offset().top;
var gotoX = basketX - productX;
var gotoY = basketY - productY;
var newImageWidth = $("#recap-" + num_fb).width() / 3;
var newImageHeight = $("#recap-" + num_fb).height() / 3;
$("#recap-" + num_fb)
.clone()
.prependTo("#recap-" + num_fb)
.css({'position' : 'absolute'})
.animate({opacity: 0.4}, 100 )
.animate({opacity: 0.1, marginLeft: gotoX, marginTop: gotoY, width: newImageWidth, height: newImageHeight}, 700, function() {
$(this).remove();
//on met à jours le recap des banques
var contentHtml = "Votre sélection
";
$("input[type=checkbox][name=choixBanques]:checked").each(function(){
var id = $(this).val();
var laclass="";
var img = "";
if(id == idRef){
laclass="banqueDeReference";
img = "";
}
contentHtml += "- "+$(this).next().html()+""+img+"
";
});
var nb = $("input[type=checkbox][name=choixBanques]:checked").length;
var firstOK = false;
for(var i = nb+1 ; i <= 5 ; i++){
if(!firstOK){
contentHtml += "";
}else{
contentHtml += "";
}
firstOK = true;
}
contentHtml += "
";
$("#recapBanques").html(contentHtml);
tableauDelete(num_fb);
majRecap($(this),num_fb);
});
*/
majRecap($(this),num_fb);
}
var neobanques_chargees = false;
var banquestraditionnelles_chargees = false;
//Banques Neobanques cochées
var total = $("li.neobanque").size();
var totalChecked = $("li.neobanque").length;
if(total<=0){
$('#plus-neobanques').hide();
}else{
neobanques_chargees = true;
}
//Fin
//Banques Tradi
// Banques tradi affiché
var total = $("li.offline").size();
var totalChecked = $("li.offline").length;
if(total<=0){
$('#plus-offline').hide();
}else{
banquestraditionnelles_chargees = true;
}
//Fin
//Bancassurance cochées
var total = $("li.bancassurance").size();
var totalChecked = $("li.bancassurance input:checked").length;
if(total<=0){
$('#plus-banqueassurance').hide();
}
//Fin
//if($("td.tCenter:not('.cache'):last").length > 0){
//$(".tCenter."+$("td.tCenter:not('.cache'):last").attr('class').split(' ')[1]).css("border-top-right-radius","3px");
//}
/*
function loadBanksInTable(type){
$("table.tableThead tr").each(function(index){
if(!$(this).hasClass('afficherPlusNoHover') && !$(this).hasClass('marge')){
if(!$(this).find('td:last').hasClass('titreCat') && !$(this).find('td:last').hasClass('tdLegend')){
var td = $(this).find('td:last').clone();
$(this).find('td:last').after(td);
}
}
});
//changer colspan
$('table.tableThead td[colspan]').not('[colspan=1]').each(function(index){
$(this).attr('colspan',$('tr#fisrtTr td').length);
});
}
*/
function loadBanksInTable(type){
var conditions_aff = false;
if($(".detailConditionOui").hasClass('actives')){
conditions_aff = true;
}
$.ajax({
url : '../js/ajax/comparatif-banques-add-type.php',
type : 'POST',
dataType : 'html',
data : 'type='+type+'&conditions_aff='+conditions_aff,
success : function(code_html, statut){
loadBanksInTableSuite(code_html);
}
});
}
function loadBanksInTableSuite(code_html){
var html = $.parseHTML(code_html);
//ajout des colonnes et informations
$("table.tableThead tr").each(function(index){
if(!$(this).hasClass('afficherPlusNoHover') && !$(this).hasClass('marge')){
if(!$(this).find('td:last').hasClass('titreCat') && !$(this).find('td:last').hasClass('tdLegend')){
var td = $(html).filter('table').find('tr').eq(index).html();
$(this).find('td:last').after(td);
}
}
});
//changer colspan
$('table.tableThead td[colspan]').not('[colspan=1]').each(function(index){
$(this).attr('colspan',$('tr#fisrtTr td').length);
});
}
function addRemoveTypeBank(self,classTypeBank,banksArray){
if(self.prev().hasClass("check_yes")){ //remove type
//on décoche le bouton
self.prev().addClass("default-check");
self.prev().removeClass("check_yes");
//on decoche les li
$("#autresBanques ul li."+classTypeBank).each(function(index){
unchekBankWhenHideType($(this));
});
//on supprime les li
//$("#autresBanques ul li."+classTypeBank).fadeOut(300, function() { $("#autresBanques ul li."+classTypeBank).remove(); });
$("#autresBanques ul li."+classTypeBank).remove();
//on réordonne les li dans les ul et on supprime les ul vides
$("#autresBanques ul").each(function(index){
var liste_li = $("#autresBanques ul li");
$("#autresBanques ul").remove();
for (var i = 0; i < liste_li.length ; i++) {
if(i == 0){
$("#autresBanques").append("");
}
if(i % 5 == 0 && i!=0){
$("#autresBanques").append("
");
$("#autresBanques").append("");
}
$("#autresBanques ul").last().append(liste_li[i]);
};
$("#autresBanques").append("
");
});
}else{ //add type
//si banque type non chargé on charge les banques dans le tableau
if(classTypeBank=='neobanque' && !neobanques_chargees){
loadBanksInTable('neobanque');
neobanques_chargees = true;
}
else if(classTypeBank=='offline' && !banquestraditionnelles_chargees){
loadBanksInTable('offline');
banquestraditionnelles_chargees = true;
}
//on coche le bouton
self.prev().removeClass("default-check");
self.prev().addClass('check_yes');
//on ajoute les li
for (var i = 0; i < banksArray.length; i++) {
var ligne = banksArray[i];
if($("#autresBanques ul").last().find('li').length == 5){
$("#autresBanques").append("");
}
$("#autresBanques ul").last().append(ligne);
};
//on supprime les classes 'cache' qui viennent de notre array construit du départ
//$("#autresBanques ul li").fadeIn("fast", function() {
// $("#autresBanques ul li.cache").removeClass('cache');
//});
$("#autresBanques ul li.cache").show();
$("#autresBanques ul li.cache").removeClass('cache');
}
}
function unchekBankWhenHideType(self){
var id = self.attr('id');
var checkbox = self.find("input[type=checkbox][name=choixBanques]");
var img = self.find(".checkboxImg");
if(checkbox.is(":checked")){
checkbox.prop('checked', false);
img.attr("src", "../img/checked-no.png");
$("#"+id+" .classIconCheck").removeClass('check_yes');
$("#"+id+" .classIconCheck").addClass('check_no');
$("#"+id).removeClass('check_yes');
$("#"+id).addClass('check_no');
majRecap(self,checkbox.val());
}
}
var idRef = 0;
var neoBanque=false;
var banqueAssurance=false;
var banqueOffline=false;
var array_online = [];
var array_offline = [];
var array_neobanque = [];
var array_bancassurance = [];
$(document).ready(function(){
if($("td.tCenter:not('.cache'):last").length > 0){
$(".tCenter."+$("td.tCenter:not('.cache'):last").attr('class').split(' ')[1]).css("border-top-right-radius","3px");
}
resizeTable();
//TODO
$("#autresBanques ul li").each(function(index){
if($(this).hasClass('online')){
array_online.push($(this));
}
else if($(this).hasClass('offline')){
array_offline.push($(this));
}
else if($(this).hasClass('neobanque')){
array_neobanque.push($(this));
}
else if($(this).hasClass('bancassurance')){
array_bancassurance.push($(this));
}
});
$("#autresBanques ul li.cache").remove();
$("#autresBanques ul").each(function(index){
if($(this).find('li').length == 0){
$(this).remove();
}
});
//Button Banques Tradi
$("#plus-offline").click(function(){
addRemoveTypeBank($(this),"offline",array_offline);
});
$("#plus-neobanques").click(function(){
addRemoveTypeBank($(this),"neobanque",array_neobanque);
});
$("#plus-banqueassurance").click(function(){
addRemoveTypeBank($(this),"bancassurance",array_bancassurance);
});
//plus de banques
$("#plusDeBanques").click(function(){
if(!autresBanquesAff){
$("#autresBanques").show().animate({width:"346px"});
$("#plusDeBanques").val("- de banques");
autresBanquesAff = true;
}else{
$("#autresBanques").animate({width:"0px"},function(){$("#autresBanques").hide();});
$("#plusDeBanques").val("+ de banques");
autresBanquesAff = false;
}
});
//affiche ou masque les conditions
$(".detailConditionOui").click(function(){
$('.detailsConditions').removeClass('actives');
$('.detailConditionOui.detailsConditions').addClass('actives');
$(".conditions").fadeIn('slow',function(){});
});
$(".detailConditionNon").click(function(){
$('.detailsConditions').removeClass('actives');
$('.detailConditionNon.detailsConditions').addClass('actives');
$(".conditions").fadeOut('slow',function(){});
});
//$("[id^='selectBanque-']").click(function(){
$(document).on("click","[id^='selectBanque-']",function(){
var id = $(this).attr('id');
if(!action_en_cours){
action_en_cours = true;
var checkbox = $(this).find("input[type=checkbox][name=choixBanques]");
if(checkbox.val() == idRef){
action_en_cours = false;
}else{
var img = $(this).find(".checkboxImg");
if(checkbox.is(":checked")){
checkbox.prop('checked', false);
img.attr("src", "../img/checked-no.png");
$("#"+id+" .classIconCheck").removeClass('check_yes');
$("#"+id+" .classIconCheck").addClass('check_no');
$("#"+id).removeClass('check_yes');
$("#"+id).addClass('check_no');
}else{
checkbox.prop('checked', true);
img.attr("src", "../img/checked-yes.png");
$("#"+id+" .classIconCheck").addClass('check_yes');
$("#"+id+" .classIconCheck").removeClass('check_no');
$("#"+id).addClass('check_yes');
$("#"+id).removeClass('check_no');
}
//on bloque à 5 le nombre de banques selectionnées
if($("input[type=checkbox][name=choixBanques]:checked").length > 5){
checkbox.prop('checked', false);
img.attr("src", "../img/checked-no.png");
$("#"+id+" .classIconCheck").removeClass('check_yes');
$("#"+id+" .classIconCheck").addClass('check_no');
$("#"+id).removeClass('check_yes');
$("#"+id).addClass('check_no');
alert("Impossible de selectionner plus de 5 banques");
action_en_cours = false;
}else if(checkbox.val() != idRef){
//effet déplacé
if(checkbox.is(':checked')){
moveToRecap(checkbox.val());
}else{
moveToChoixBanques(checkbox.val());
}
}else{
action_en_cours = false;
}
}
}
});
/* DEBUT MOBILE */
$("#choixBanque1").change(function(event){
var num_fb1 = $("#choixBanque1").find('option:selected').val();
var num_fb2 = $("#choixBanque2").find('option:selected').val();
$("#choixBanque2").html($("#templateOptionsChoixBanques").html());
$("#choixBanque2 option[value='"+num_fb1+"']").remove();
$("#choixBanque2 option[value='"+num_fb2+"']").prop("selected",true);
if(num_fb1 == num_fb2){
num_fb2 = $("#choixBanque2").find('option:selected').val();
}
if ( event.originalEvent === undefined ) {
}else{
majTableauMobile();
}
});
$("#choixBanque2").change(function(event){
var num_fb1 = $("#choixBanque2").find('option:selected').val();
var num_fb2 = $("#choixBanque1").find('option:selected').val();
$("#choixBanque1").html($("#templateOptionsChoixBanques").html());
$("#choixBanque1 option[value='"+num_fb1+"']").remove();
$("#choixBanque1 option[value='"+num_fb2+"']").prop("selected",true);
if(num_fb1 == num_fb2){
num_fb1 = $("#choixBanque1").find('option:selected').val();
}
if ( event.originalEvent === undefined ) {
}else{
majTableauMobile();
}
});
$("#choixBanque1").change();
$("#choixBanque2").change();
majTableauMobile();
var mobile_fixed = false;
var posEnteteMobile = $('.mobile_tableThead').offset().top;
$(window).scroll(function () {
if($(window).scrollTop() >= posEnteteMobile){
$("#blocEspaceMobile").height($('#mobile_fisrtTr').height());
if($(window).width() <= 750){
$('#mobile_fisrtTr').css('top','0');
}else{
if ($("#menu_ligne_3 .content")[0]){
$('#mobile_fisrtTr').css('top','100px');
}else{
$('#mobile_fisrtTr').css('top','60px');
}
}
$('#mobile_fisrtTr').css('position','fixed');
$('#mobile_fisrtTr').css('width',$("#mobile_secondTr").outerWidth());
$('#mobile_fisrtTr td').css('width',$("#mobile_secondTr").outerWidth()/2);
$('#mobile_fisrtTr').addClass('shadow');
if(mobile_fixed == false){
$("#mobile_fisrtTr > td").each(function(index,value){
$(this).attr('width',$("#mobile_secondTr > td").eq(index).outerWidth());
});
}
mobile_fixed = true;
}
else
{
$("#blocEspaceMobile").height(0);
$('#mobile_fisrtTr').removeClass('shadow');
$('#mobile_fisrtTr').css('position','');
if($(window).width() <= 750){
$('#mobile_fisrtTr').css('top','auto');
}else{
$('#mobile_fisrtTr').css('top','60');
}
if(mobile_fixed == true){
$("#mobile_fisrtTr > td").each(function(index,value){
$(this).attr('width','');
});
}
mobile_fixed = false;
}
});
var mobile_conditionsAff = false;
$(".detailConditionOui").click(function(){
$('.detailsConditions').removeClass('actives');
$('.detailConditionOui.detailsConditions').addClass('actives');
$(".detailConditionOui").val("Oui");
$(".mobile_conditions").fadeIn('slow',function(){});
});
$(".detailConditionNon").click(function(){
$('.detailsConditions').removeClass('actives');
$('.detailConditionNon.detailsConditions').addClass('actives');
$(".detailConditionNon").val("Non");
$(".mobile_conditions").fadeOut('slow',function(){});
});
/* FIN MOBILE */
});