$(function(){
  hide_del_btn();
});
/** Handle press the Add button */
$('.add').on('click',function(){
  var base = $(this).parent().parent().parent('.tb-item');
  base.find('.del').show();
  // clone input form
  base.clone(true).insertAfter(base);

  // Scroll to added element
  $("html,body").animate({scrollTop:base.next().offset().top});

  // Input form accordion display
  base.parent().parent('.tb').find('.ac-tb-form').show();
});
/** Handle press the Delete button */
$('.del').on('click',function(){
  var base = $(this).parent().parent().parent('.tb-item');
  var tbwrap = base.parent('.tb-wrap');
  var tb = tbwrap.parent('.tb');

  // Delete area
  base.remove();
  // Hidden delete button
  hide_del_btn();
  // Form area display switch
  tbWrapClear(tbwrap);

  // Hide collapse icon  
  if(tb.find('.ac-tb-form').is(':hidden')){
    tb.find('.fold-area').addClass('hide');
  }
});

/** handle Press the close button */
$('.close-window').on('click',function(){
  window.close();
});

/** Hide delete button when there is only one tablespace form */
function hide_del_btn(){
  $('.tb-wrap').each(function(i, elem){
      var len = $(elem).find('.tb-item').length;
      // When there is one item in the table
      if(len <= 1){
         $(elem).find('.del').hide();
         $(this).children('.tb-item').removeClass('visually-hidden');
         // Input form accordion hidden
         $(this).parent().find('.ac-tb-form').hide();
      }
    });
}
/** Handle when deleting while closing the accordion */
function tbWrapClear(tbwrap){
  // If you delete the form while closing the accordion
  // Hide parent element if all child elements are hidden
  if(tbwrap.children(':not(.visually-hidden)').length == 0){
    tbwrap.addClass("visually-hidden");
  }
  else {
    tbwrap.removeClass("visually-hidden");
  }
}

/** input form accordion */
$('.ac-tb-form').on('click',function(){
  var tb = $(this).parent().parent().parent('.tb');
  var elems = tb.find('.tb-wrap').find('.tb-item');
  var tbwrap = tb.find('.tb-wrap');
  if(!$(this).hasClass('hide')){
    elems.each(function(i) {
      i = i + 1;
      if( i != elems.size()){
        $(this).addClass('visually-hidden');
      }
    });
    $(this).text('開く');

    // Form area display switch
    tbWrapClear(tbwrap);

    // Collapse icon view
    tb.find('.fold-area').removeClass('hide');

  }else{
    elems.removeClass('visually-hidden');
    $(this).text('閉じる');
    
    // Form area display switch
    tbWrapClear(tbwrap);

    // Hide collapse icon
    tb.find('.fold-area').addClass('hide');

  }
  // opening and closing
  $(this).toggleClass("hide");
});

/** toggle switch */
$(".toggle").on("click", function() {
  $(this).toggleClass("checked");
  if(!$('input[name="check"]').prop("checked")) {
    $(".toggle input").prop("checked", true);
  } else {
    $(".toggle input").prop("checked", false);
  }
});


/** Menu display */
$('.c-dropdown-trigger').on("click",function(){
  $('[data-target="' + $(this).attr('id') + '"]').toggleClass('show');
  $('.mask').removeClass('hide');
});

/** Close menu */
$('.mask').on("click",function(){
  $('.mask').addClass('hide');
  $('.c-dropdown-menu').removeClass('show');
});

/** Select card list */
$('.select-card-list .card .select-label').on("click",function(){
  $(this).closest('.select-card-list').find('.card').removeClass('selected');
  $(this).closest('.card').addClass('selected');
});

/** List display switching (list display) */
$('.view-menu .view-list-btn').on("click",function(){
  $('.view-block-btn').removeClass('active');
  $('.view-list-btn').addClass('active');
  $('.view-content').removeClass('view-block');
  $('.view-content').addClass('view-list');
});

/** List display switching (grid display) */
$('.view-menu .view-block-btn').on("click",function(){
  $('.view-list-btn').removeClass('active');
  $('.view-block-btn').addClass('active');
  $('.view-content').removeClass('view-list');
  $('.view-content').addClass('view-block');
});

/** loading */
$(function(){
  function e() {
    setTimeout(function(){
      $.LoadingOverlay("hide");
    }, 2000);
  }
  $(".search-form-btn").on('click', function(){
    $.LoadingOverlay("show", {
      image       : "img/loading.gif"
    });
    e();
  });
});
