function hideImportances()
{
    $('a#showkey').click(function() {
        a = $(this);
        $('.toggle').slideToggle(function(){
            if ($(this).is(":hidden")) {
                a.button("option","label",'表示');
            } else {
                a.button("option","label",'非表示');
            }
        });
        return false;
    });
}
function edit_inline(forms, callback){
    $(forms).each(function(i, pane) {
        var pane = $(pane);
        pane
        .css({'minHeight': pane.height+'px'})
        .submit(function() {
            // data = {success:true, message:'str', values:{}}
            $.post(pane.attr('action'), pane.serialize(), function(data) {
                pane.find('.message').text(data.message);
                if (callback) callback(data);
            }, 'json');
            return false;
        })
        .find('.make_editable')
        .click(function() {
            $($(this).attr('href')).slideDown();
            pane.find('.default').hide();
            return false;
        })
        .end();
    });
}
// should be obsoleted
function onEdit(){
    $('a.on_edit').click(function() {
        $('#on_edit').slideToggle();
        $('div.edit').addClass('hidden');
        return false;
    });
}
function onPlanChange(){
    $('a.on_plan_change').click(function() {
        $('#on_plan_change').slideToggle();
        $('div.plan_change').addClass('hidden');
        return false;
    });
}
function initGroupTree (){
  //async load 
  var container = '#sidebar_grouptree';
  var openNode = function(){
    var current = $(this);
    if(current.hasClass("hasChildren")){
      current
      .removeClass("hasChildren")
      .find("ul")
      .load("/my/group/tree?root="+current.attr("id"),function(response){
        $(container).treeview({add: $(this)});
      });
    }
  };
  $('#reload-grouptree').click(function(){
    if($(container+'>li>.loading_image').length === 0){
      $(container).empty().html('<li><img src="/img/ajax-loader.gif" class="loading_image" alt="グループツリーのロード中" /></li>');
    }
    $(container).load("/my/group/tree?root=source",function(){
      $(this).treeview({
        persist: "cookie",
        collapsed: true,
        toggle:openNode 
      });
      $(this).find("li.collapsable").each(openNode);
    });
    return false;
  }).click();
}
function onLoadHtml(){
    hideImportances();
    //onEdit();
    //
    // Tab
    //$('#ui-tab').tabs({
    //    cache: false,
    //    ajaxOptions: { cache: false }
    //});
    //$("#ui-tab>ul>li>a").click(function () {
    //    var tabindex = $("#ui-tab").tabs('option', 'selected');
    //    $("#ui-tab").tabs('load',tabindex);
    //});
    

    // misc ?
    $('.button').button();
    $('input:submit').button();
    //$('.button').corner();

    var apply_corner = function(selector){
      var classname_corner_applied = "corner-applied";
    //to avoid duplicated .corner() applying, add class after applying corner.
      $(selector).filter(":not(."+classname_corner_applied+")").corner().addClass(classname_corner_applied);
    }
    apply_corner('.message');
    apply_corner('.side-widget');
    apply_corner('.side-widget-main');
    apply_corner('.side-widget-main2');
    apply_corner('p.point_buy');
    apply_corner('.three-row');
    apply_corner('div#left_side2');
    apply_corner('div#left_side');


    $('div#messages').each(function() {
        $(this).find('div.message a.button').click(function() {
            $('div#messages').slideUp();
            return false;
        });
    });
}
var initTab = function(){
    $('#ui-tab').tabs({
        cache: false,
        ajaxOptions: { cache: false }
    });
    $('#ui-tab').bind("tabsshow",function(e,ui){
      $('body').hide();
      location.hash = "#"+ui.panel.id;
      $('body').show();
      return true;
    });      
    var tabindex_old = $("#ui-tab").tabs('option', 'selected');
    $("#ui-tab>ul>li>a").click(function () {
        var tabindex = $("#ui-tab").tabs('option', 'selected');
        if(tabindex === tabindex_old){
            $("#ui-tab").tabs('load',tabindex);
        }else{
            tabindex_old = tabindex;
        }
    });
};
var initDialogBox = function(){
  var setupDialog = function(selector_caller,selector_callee,onclick){
    var dialog = $(selector_callee)
    .find('a.no')
    .click(function() {
      $.unblockUI();
      return false;
    })
    .end();
    $(selector_caller).live('click', function(evt) {
      evt.preventDefault();
      onclick($(this),dialog);
      $.blockUI({
        message: dialog,
        css: block_css('400px')
      });
    });
  }
  //dialog
  setupDialog("a.dialog","#dialog",function(src,dialog){
    dialog
    .find('p span')
    .text(src.text())
    .end()
    .find('a.yes')
    .attr('href', src.attr('href'))
    .end();
  });
  //dialog2
  setupDialog("a.dialog2","#dialog2",function(src,dialog){
    dialog
    .find('p span')
    .text(src.text())
    .end()
    .find('a.yes')
    .attr('href', src.attr('href'))
    .end();
  });
  //dialog3
  setupDialog("input.dialog3","#dialog3",function(src,dialog){
    dialog
    .find('a.yes')
    .click(function(){
      src.parent("form[action]").submit();
      return false;
    })
    .end();
  });
}
$(document).ready(function() {
    onLoadHtml();
    // setTimeout(initGroupTree,2000);
    initTab();
    initGroupTree();
    initDialogBox();
});


