var defaultMainHeight;

jQuery(function ()
{
 /**
  * 高さ調整
  */
  jQuery('#sidewrap').ready(function ()
  {
    if (jQuery('#side').length == 0) {
      return false;
    }
    defaultMainHeight = jQuery('#main').height();
    if (jQuery('#side').height() > jQuery('#main').height()) {
      jQuery('#main').height(jQuery('#side').height());
    }
  });


  jQuery('#improvement_body').focus(function ()
  {
    if ((jQuery('#improvement_body').val() == jQuery('#improvement_body').attr('defaultValue'))
      ||(jQuery('#improvement_body').css('color') == 'rgb(153, 153, 153)')
      || (jQuery('#improvement_body').css('color') == 'rgb(255, 0, 0)')) {
      jQuery('#improvement_body').val('');
    }
    jQuery('#improvement_body').css('color', '#666666');
  });


  jQuery('#improvement_body').blur(function ()
  {
    if ((jQuery('#improvement_body').val() == jQuery('#improvement_body').attr('defaultValue'))
      || (jQuery('#improvement_body').val() == '')) {
      jQuery('#improvement_body').val(jQuery('#improvement_body').attr('defaultValue'));
      jQuery('#improvement_body').css('color', '#999999');
    }
  });

  jQuery('#improvementForm').submit(function ()
  {
    if ((jQuery('#improvement_body').val() == jQuery('#improvement_body').attr('defaultValue'))
    || (jQuery('#improvement_body').css('color') == 'rgb(153, 153, 153)')) {
      jQuery('#improvement_body').css('color', '#ff0000');
      jQuery('#improvement_body').val('ご意見・ご要望をご記入ください。');
      return false;
    } else if (jQuery('#improvement_body').css('color') == 'rgb(255, 0, 0)') {
      return false;
    }
    // サブミットされたformを軸にする。
    jQuery.post(this.action,
    jQuery('#improvementForm').serialize(),
    function (data)
    {
      jQuery('#improvementForm').css('display', 'none');
      jQuery('#improvementEnd').css('display', 'block');
      jQuery('#improvement_body').val(jQuery('#improvement_body').attr('defaultValue'));
      jQuery('#improvement_body').css('color', '#999999');
    });

    // 実際のsubmit処理をキャンセル。
    return false;
  });

  jQuery('#search_businessAll').click(function()
  {
    if (jQuery('#search_businessAll').attr('checked')) {
      jQuery(':input[id^=search_business_]').attr('checked', true);
      jQuery(':label[for^=search_business_]').attr('class', 'checkbox_checked');
    } else {
      jQuery(':input[id^=search_business_]').attr('checked', false);
      jQuery(':label[for^=search_business_]').attr('class', 'checkbox_unchecked');
    }
    jQuery.post('/shop/searchAjax',
    jQuery('#searchForm').serialize(),
    function (data)
    {
      setSearchView(eval('(' + data + ')'));
    });
  });

  jQuery(':input[id^=search_business_]').click(function()
  {
    jQuery.post('/shop/searchAjax',
      jQuery('#searchForm').serialize(),
      function (data)
      {
        setSearchView(eval('(' + data + ')'));
      });
  });

  jQuery('#searchBusinessClear').click(function()
  {
    jQuery('#search_businessAll').attr('checked', false);
    jQuery(':label[for=search_businessAll]').attr('class', 'checkbox_unchecked');
    jQuery(':input[id^=search_business_]').attr('checked', false);
    jQuery(':label[for^=search_business_]').attr('class', 'checkbox_unchecked');
    jQuery.post('/shop/searchAjax',
    jQuery('#searchForm').serialize(),
    function (data)
    {
      setSearchView(eval('(' + data + ')'));
    });
    return false;
  });

  jQuery(':input[id^=search_pref_id_]').click(function()
  {
    if (jQuery('#search_pref_id_' + jQuery(this).val()).attr('checked')) {
      jQuery(':input[id^=search_area_id_' + jQuery(this).val() + '_]').attr('checked', true);
      jQuery(':label[for^=search_area_id_' + jQuery(this).val() + '_]').attr('class', 'checkbox_checked');
    } else {
      jQuery(':input[id^=search_area_id_' + jQuery(this).val() + '_]').attr('checked', false);
      jQuery(':label[for^=search_area_id_' + jQuery(this).val() + '_]').attr('class', 'checkbox_unchecked');
    }
    jQuery.post('/shop/searchAjax',
    jQuery('#searchForm').serialize(),
    function (data)
    {
      setSearchView(eval('(' + data + ')'));
    });
  });

  jQuery(':input[id^=search_area_id_]').click(function()
  {
    jQuery.post('/shop/searchAjax',
    jQuery('#searchForm').serialize(),
    function (data)
    {
      setSearchView(eval('(' + data + ')'));
    });
  });

  jQuery('#searchPrefClear').click(function()
  {
    jQuery(':input[id^=search_pref_id_]').attr('checked', false);
    jQuery(':label[for^=search_pref_id_]').attr('class', 'checkbox_unchecked');
    jQuery(':input[id^=search_area_id_]').attr('checked', false);
    jQuery(':label[for^=search_area_id_]').attr('class', 'checkbox_unchecked');
    jQuery.post('/shop/searchAjax',
    jQuery('#searchForm').serialize(),
    function (data)
    {
      setSearchView(eval('(' + data + ')'));
    });
    return false;
  });

  jQuery('#search_conditionAll').click(function()
  {
    if (jQuery('#search_conditionAll').attr('checked')) {
      jQuery(':input[id^=search_condition_]').attr('checked', true);
      jQuery(':label[for^=search_condition_]').attr('class', 'checkbox_checked');
    } else {
      jQuery(':input[id^=search_condition_]').attr('checked', false);
      jQuery(':label[for^=search_condition_]').attr('class', 'checkbox_unchecked');
    }
    jQuery.post('/shop/searchAjax',
    jQuery('#searchForm').serialize(),
    function (data)
    {
      setSearchView(eval('(' + data + ')'));
    });
  });

  jQuery(':input[id^=search_condition_]').click(function()
  {
    jQuery.post('/shop/searchAjax',
    jQuery('#searchForm').serialize(),
    function (data)
    {
      setSearchView(eval('(' + data + ')'));
    });
  });

  jQuery('#searchConditionClear').click(function()
  {
    jQuery('#search_conditionAll').attr('checked', false);
    jQuery(':label[for=search_conditionAll]').attr('class', 'checkbox_unchecked');
    jQuery(':input[id^=search_condition_]').attr('checked', false);
    jQuery(':label[for^=search_condition_]').attr('class', 'checkbox_unchecked');
    jQuery.post('/shop/searchAjax',
    jQuery('#searchForm').serialize(),
    function (data)
    {
      setSearchView(eval('(' + data + ')'));
    });
    return false;
  });

  jQuery('#searchFormReset').click(function ()
  {
    this.form.reset();
    if (jQuery('#search_businessAll').attr('checked')) {
      jQuery(':label[for=search_businessAll]').attr('class', 'checkbox_checked');
    } else {
      jQuery(':label[for=search_businessAll]').attr('class', 'checkbox_unchecked');
    }
    for (var bi = 0; bi < jQuery(':input[id^=search_business_]').length; bi++) {
      var inputObj = jQuery(':input[id^=search_business_]').get(bi);
      if (jQuery(inputObj).attr('checked')) {
        jQuery(':label[for=' + jQuery(inputObj).attr('id') + ']').attr('class', 'checkbox_checked');
      } else {
        jQuery(':label[for=' + jQuery(inputObj).attr('id') + ']').attr('class', 'checkbox_unchecked');
      }
    }
    for (var bi = 0; bi < jQuery(':input[id^=search_pref_id_]').length; bi++) {
      var inputObj = jQuery(':input[id^=search_pref_id_]').get(bi);
      if (jQuery(inputObj).attr('checked')) {
        jQuery(':label[for=' + jQuery(inputObj).attr('id') + ']').attr('class', 'checkbox_checked');
      } else {
        jQuery(':label[for=' + jQuery(inputObj).attr('id') + ']').attr('class', 'checkbox_unchecked');
      }
    }
    for (var bi = 0; bi < jQuery(':input[id^=search_area_id_]').length; bi++) {
      var inputObj = jQuery(':input[id^=search_area_id_]').get(bi);
      if (jQuery(inputObj).attr('checked')) {
        jQuery(':label[for=' + jQuery(inputObj).attr('id') + ']').attr('class', 'checkbox_checked');
      } else {
        jQuery(':label[for=' + jQuery(inputObj).attr('id') + ']').attr('class', 'checkbox_unchecked');
      }
    }
    if (jQuery('#search_conditionAll').attr('checked')) {
      jQuery(':label[for=search_conditionAll]').attr('class', 'checkbox_checked');
    } else {
      jQuery(':label[for=search_conditionAll]').attr('class', 'checkbox_unchecked');
    }
    for (var bi = 0; bi < jQuery(':input[id^=search_condition_]').length; bi++) {
      var inputObj = jQuery(':input[id^=search_condition_]').get(bi);
      if (jQuery(inputObj).attr('checked')) {
        jQuery(':label[for=' + jQuery(inputObj).attr('id') + ']').attr('class', 'checkbox_checked');
      } else {
        jQuery(':label[for=' + jQuery(inputObj).attr('id') + ']').attr('class', 'checkbox_unchecked');
      }
    }
    jQuery.post('/shop/searchAjax',
    jQuery('#searchForm').serialize(),
    function (data)
    {
      setSearchView(eval('(' + data + ')'));
    });
    return false;
  });


  jQuery('#searchFormSubmit').click(function ()
  {
    if (jQuery('#search_keyword').val() == '駅名、店名、TELやキーワードなどで検索してください') {
      jQuery('#search_keyword').val('');
    }
  });


  jQuery(':form[id^=set_lump_shop_]').submit(function()
  {
    var shopDomain = jQuery(this).children(':input[type=hidden]').val();
    if (jQuery('#lump_li_' + shopDomain).length == 1) {
      var postUrl = '/shop/deleteLumpShop';
      var submitFlag = 'delete';
      jQuery('#btn_lump_shop_' + shopDomain).attr('src', '/image/list_sl_bm.gif');
      jQuery('#btn_lump_shop_' + shopDomain).mouseover(function() {jQuery('#btn_lump_shop_' + shopDomain).attr('src', '/image/list_sl_bm_o.gif');});
      jQuery('#btn_lump_shop_' + shopDomain).mouseout(function() {jQuery('#btn_lump_shop_' + shopDomain).attr('src', '/image/list_sl_bm.gif');});
      jQuery('#lump_li_' + shopDomain).remove();
    } else {
      var postUrl = '/shop/setLumpShop';
      var submitFlag = 'set';
      jQuery('#btn_lump_shop_' + shopDomain).attr('src', '/image/list_sl_del.gif');
      jQuery('#btn_lump_shop_' + shopDomain).mouseover(function() {jQuery('#btn_lump_shop_' + shopDomain).attr('src', '/image/list_sl_del_o.gif');});
      jQuery('#btn_lump_shop_' + shopDomain).mouseout(function() {jQuery('#btn_lump_shop_' + shopDomain).attr('src', '/image/list_sl_del.gif');});
    }
    if (jQuery('#lump_ul').children().length == 0) {
      jQuery('#lump_ul').empty();
      jQuery('#lump_ul').append(
        jQuery('<li>').attr('id', 'lump_ul_null').text('フォルダは空です。'));
    }
    jQuery.post(postUrl,
      jQuery(this).serialize(),
      function (data)
      {
        if ((data != 'null') && (submitFlag = 'delete')) {
          var shopData = eval('(' + data + ')');
          jQuery('#lump_ul_null').remove();
          for (var i in shopData) {
            if (jQuery('#lump_li_' + i).length != 0) {
              continue;
            }
            jQuery('#lump_ul').append(
              jQuery('<li>').attr('id', 'lump_li_' + i));
            jQuery('#lump_li_' + i).append(
              jQuery('<div>').append(
                jQuery('<input>').attr('type', 'checkbox').attr('name', 'lump_shop[' + i + ']').attr('value', i))
            ).append(
              jQuery('<p>').append(
                jQuery('<a>').attr('href', '/shop/details/' + shopData[i].domain).text(shopData[i].shop_name))
            );
          }
        }
        if (jQuery('#side').height() > defaultMainHeight) {
          jQuery('#main').height(jQuery('#side').height());
        } else {
          jQuery('#main').height(defaultMainHeight);
        }
      });
    return false;
  });


  jQuery('#girl_folder_form_delete').click(function()
  {
    var checkCount = jQuery('input:checkbox[name^=lump_shop]:checked').length;
    if (checkCount == 0) {
      alert('1つもチェックがされていません。');
      return false;
    }
    jQuery.post('/shop/deleteLumpShop',
      jQuery('#girl_folder_form').serialize(),
      function (data)
      {
        for (var i = 0; i < checkCount; i++) {
          var shopDomain = jQuery('input:checkbox[name^=lump_shop]:checked').eq(0).val();
          if (jQuery('#btn_lump_shop_' + shopDomain) != 0) {
            jQuery('#btn_lump_shop_' + shopDomain).attr('src', '/image/list_sl_bm.gif');
            jQuery('#btn_lump_shop_' + shopDomain).mouseover(function() {jQuery('#btn_lump_shop_' + shopDomain).attr('src', '/image/list_sl_bm_o.gif');});
            jQuery('#btn_lump_shop_' + shopDomain).mouseout(function() {jQuery('#btn_lump_shop_' + shopDomain).attr('src', '/image/list_sl_bm.gif');});
          }
          jQuery('#lump_li_' + shopDomain).remove();
        }
        if (data == 'null') {
          jQuery('#lump_ul').empty();
          jQuery('#lump_ul').append(
              jQuery('<li>').attr('id', 'lump_ul_null').text('フォルダは空です。'));
        }
        if (jQuery('#side').height() > defaultMainHeight) {
          jQuery('#main').height(jQuery('#side').height());
        } else {
          jQuery('#main').height(defaultMainHeight);
        }
      }
    );
    return false;
  });


  jQuery('#girl_folder_form_submit').click(function()
  {
    var checkCount = jQuery('input:checkbox[name^=lump_shop]:checked').length;
    if (checkCount == 0) {
      alert('1つもチェックがされていません。');
      return false;
    }
  });


  jQuery('#girl_folder_form_all').click(function()
  {
    jQuery('input:checkbox[name^=lump_shop]').attr('checked', true);
    return false;
  });
});

function setSearchView(getJson)
{
  if ((getJson.view) && (getJson.view.business)) {
    jQuery('#searchViewBusiness').text(getJson.view.business);
  } else {
    jQuery('#searchViewBusiness').html('&nbsp;');
  }
  if ((getJson.view) && (getJson.view.area)) {
    jQuery('#searchViewArea').text(getJson.view.area);
  } else {
    jQuery('#searchViewArea').html('&nbsp;');
  }
  if ((getJson.view) && (getJson.view.condition)) {
    jQuery('#searchViewCondition').text(getJson.view.condition);
  } else {
    jQuery('#searchViewCondition').html('&nbsp;');
  }
  jQuery('#searchViewCount').text(getJson.allCount);
}
