var updateTimer = null;
var registerStatus = null;
/*
function initWindow()  {
    document.body.oncontextmenu = function()  {  return false;  };
}

function initMessages()  {
  // 最新メッセージ領域を準備
  $( '<table id="messages">' )
      .append( '<tbody />' )
      .appendTo( 'div#counter-messages' );
  $( 'table#messages' ).hide();

  //non cache
  $.ajaxSetup( { cache : false } );

  $( 'table#messages > tbody' ).ajaxStart( function( ev )  {
    $( this ).parent().show();
  } ).ajaxSend( function( ev, xhr, options )  {
	  //sent message
  } ).ajaxSuccess( function( ev, xhr, options )  {
	  //get success css Setting
    */
   	/*
    $( 'tr:odd', this ).addClass( 'odd' );
    $( 'tr:even', this ).addClass( 'even' );
    $( 'tr > td:nth-child( 2n + 1 )', this ).addClass( 'message' );
    */
   	/*
  } ).ajaxError( function( ev, xhr, options, err )  {
	  //get error
  } ).ajaxComplete( function( ev, xhr, options )  {
	  //get complete
  } );
}

function getCounter()  {
  $.getJSON( '/lib/counter.php',
    function( messages )  {
      if ( messages.length < 1 )  return;
      var tbody = $( 'table#messages > tbody' );
      tbody.empty();

      $( 'div#date' ).text(messages['datetime'] + ' 現在');
      $( 'div#m_countTotal' ).text(addFigure(messages['t_counter']));
      $( 'div#m_countPersonal' ).text(addFigure(messages['p_counter']));
      $( 'div#m_countCompany' ).text(addFigure(messages['o_counter']));
    }
  );
}
    */

function initList()  {
  // 最新リスト領域を準備
  $( '<table id="listdata" class="listdata">' )
      .append( '<tbody />' )
      .appendTo( 'div#lists' );
  $( 'table#listdata' ).hide();

  //non cache
  $.ajaxSetup( { cache : false } );

  $( 'table#listdata > tbody' ).ajaxStart( function( ev )  {
      $( this ).parent().show();
  } ).ajaxSend( function( ev, xhr, options )  {
	  //sent message
//      $( this ).html('<div style="background-image:url(/common/css/base/images/pbar-ani.gif); width:100%; height:15px;font-weight: bold; color: #ffffff;">検索中です...</div>');
  } ).ajaxSuccess( function( ev, xhr, options )  {
	  //get success css Setting
      $( 'tr:odd', this ).addClass( 'odd' );
      $( 'tr:even', this ).addClass( 'even' );
      $( 'tr > td:nth-child( 2n + 1 )', this ).addClass( 'message' );
  } ).ajaxError( function( ev, xhr, options, err )  {
	  //get error
      $( this ).html( '<tr><td colspan="3"></td></tr>' )
  } ).ajaxComplete( function( ev, xhr, options )  {
	  //get complete
  } );
}

function getListOrg()  {
//  initList();
  var param = '?id=' + $('#q_id').val() + '&status=' + $('#q_status').val() + '&name_org=' + encodeURI($('#q_org').val());  
  
  $.getJSON( '/modules/declare/blocks/listdata.php' + param,
    function( messages )  {
      var tbody = $( 'table#listdata > tbody' );
      tbody.empty();
      if ( messages.length < 1 ){
          $( '<tr>' ).html('<td colspan="5" style="text-align:center">対象データがありませんでした。</td>').appendTo( tbody );
    	  return;
      }

      $( '<tr>' ).html('<td colspan="2"><input type="button" value="登録状態を一括更新" onclick="updateStatus();" /></td><td colspan="3" style="text-align:right">' + messages.length + '件（最大50件）</td>').appendTo( tbody );
      $( '<tr>' ).html('<th style="width:60px">登録番号</th><th style="width:60px">登録状態</th><th>会社名</th><th style="width:150px">登録日</th><th style="width:50px">&nbsp;</th>').appendTo( tbody );
      $.each( messages, function( i, obj ){
    	  var code = '<td>' + obj.id + '</td>';
		  code = code + '<td><select onchange="setStatus(' + obj.id + ',this.options[this.selectedIndex].value);">';
		  switch(obj.status){
		    case "0":
			  code = code + '<option value="0" selected>承認済</option>';
		      code = code + '<option value="1">仮登録</option>';
		      code = code + '<option value="2">保留</option>';
		      break;
		    case "1":
			  code = code + '<option value="0">承認済</option>';
		      code = code + '<option value="1" selected>仮登録</option>';
		      code = code + '<option value="2">保留</option>';
		      break;
            default:
			  code = code + '<option value="0">承認済</option>';
  	          code = code + '<option value="1">仮登録</option>';
	          code = code + '<option value="2" selected>保留</option>';
		      break;
		  }
		  code = code + '</select></td>'+
                        '<td style="text-align:left"><a href="#" onclick="getOrg(' + obj.id + ');">' + obj.name_org + '</a></td>' +
                        '<td>' + obj.reg_date + '</td>' +
                        '<td><input type="button" value="削除" onclick="delOrg(' + obj.id + ',\'' + obj.name_org + '\');" /></td>';
          $( '<tr>' ).html(code).appendTo( tbody );
        } );

    }
  );
}

function getOrg(id)  {
  $("head").append('<link rel="stylesheet" href="/common/css/base/ui.all.css" type="text/css" />');

  $.getJSON( '/modules/declare/blocks/orgdata.php?id=' + id,
  function( messages )  {
    if ( messages.length < 1 )  return;
    var orgdata = $( 'div#orgdata' );
    orgdata.empty();
    
    var status = "";
    switch(messages['status']){
      case "0":
  	    status = '承認済';
        break;
      case "1":
  	    status = '仮登録';
        break;
      default:
  	    status = '保留';
        break;
    }
	  
    var detail = '<table id="listdata">';
    detail = detail + '<tr><th>登録状態</th><td style="text-align: left; padding-left: 10px;">' + status + '</td></tr>';
    detail = detail + '<tr><th>登録番号</th><td style="text-align: left; padding-left: 10px;">' + messages['id'] + '</td></tr>';
    detail = detail + '<tr><th>企業・団体名</th><td style="text-align: left; padding-left: 10px;">' + messages['name_org'] + '</td></tr>';
    detail = detail + '<tr><th>代表者</th><td style="text-align: left; padding-left: 10px;">' + messages['president'] + '</td></tr>';
    detail = detail + '<tr><th>担当部署</th><td style="text-align: left; padding-left: 10px;">' + messages['team'] + '</td></tr>';
    detail = detail + '<tr><th>担当者</th><td style="text-align: left; padding-left: 10px;">' + messages['staff'] + '</td></tr>';
    detail = detail + '<tr><th>電話番号</th><td style="text-align: left; padding-left: 10px;">' + messages['tel'] + '</td></tr>';
    detail = detail + '<tr><th>メールアドレス</th><td style="text-align: left; padding-left: 10px;">' + messages['mail'] + '</td></tr>';
    detail = detail + '<tr><th>郵便番号</th><td style="text-align: left; padding-left: 10px;">' + messages['zip'] + '</td></tr>';
    detail = detail + '<tr><th>住所</th><td style="text-align: left; padding-left: 10px;">' + messages['address'] + '</td></tr>';
    detail = detail + '<tr><th>登録日</th><td style="text-align: left; padding-left: 10px;">' + messages['reg_date'] + '</td></tr>';
    detail = detail + '</table>';
    orgdata.html(detail);

    orgdata.dialog({
    	bgiframe: true, // for IE6
    	autoOpen: false, // hide dialog
    	modal: true,
    	resizable: false,
    	width: "300px",
    	title:'企業・団体　詳細登録情報',
    	close: function(){$(this).parents(".ui-dialog").remove()}
    });    
    orgdata.dialog('open');
  }
  );
}

function getListPartners()  {
//  initList();
  var param = '?type=' + $('#q_type').val() + '&name_org=' + encodeURI($('#q_org').val());  
  
  $.getJSON( '/modules/xoopspartners/blocks/listdata.php' + param,
    function( messages )  {
      var tbody = $( 'table#listdata > tbody' );
      tbody.empty();
      if ( messages.length < 1 ){
          $( '<tr>' ).html('<td colspan="2" style="text-align:center">対象データがありませんでした。</td>').appendTo( tbody );
    	  return;
      }

      //（2009年8月19日現在。特別会員：76、正会員：83、賛助会員：46、　合計：205）を追加
//ohta add-start
    $.each( messages, function( i, obj ){
      if (obj.id == "") {
        var now = new Date();
//        $( '<tr>' ).html('<td colspan="2" style="text-align:right">' + '（' + now.getFullYear() + '年' + (now.getMonth()+1) + '月' + now.getDate() + '日現在。特別会員：' + obj.cntSpecialmember + '、正会員：' + obj.cntGeneralmember + '、賛助会員：' + obj.cntAssociatemember + '、　合計：' + obj.cntAllmember + '）</td><br>').appendTo( tbody );
        $( '<tr>' ).html('<td colspan="2" style="text-align:right">' + '（2010年2月1日現在。特別会員：' + obj.cntSpecialmember + '、正会員：' + obj.cntGeneralmember + '、賛助会員：' + obj.cntAssociatemember + '、　合計：' + obj.cntAllmember + '）</td><br>').appendTo( tbody );
      }
    });
//ohta add-end
//ohta mod-start
//      $( '<tr>' ).html('<td colspan="2" style="text-align:right">' + messages.length + '件（最大1000件）</td>').appendTo( tbody );
      $( '<tr>' ).html('<td colspan="2" style="text-align:right;background-color:white;">指定条件での該当件数：' + (messages.length-1) + '件</td>').appendTo( tbody );
//ohta mod-end
      $( '<tr>' ).html('<th>会員種別</th><th>会員名</th>').appendTo( tbody );
      $.each( messages, function( i, obj ){
          var type = '';
	      switch(obj.membertype){
	        case "0":
	  	      type = '特別会員';
	          break;
	        case "1":
	  	      type = '正会員';
	          break;
	        case "2":
	  	      type = '賛助会員';
	          break;
	        default:
              type = 'その他';
	          break;
          }    	  
          //会員登録が不十分なのでリンクをはずす
          /*
    	  var code = '<td style="width:60px">' + type + '</td>' +
    	             '<td><a href="/modules/xoopspartners/partner_detail.php?id=' + obj.id + '">' + obj.name_org + '</a></td>' +
                     '<td style="width:110px">' + obj.reg_date + '</td>';
          */
//ohta add-start
          if (obj.id != "") {
//ohta add-end
    	    var code = '<td style="width:60px">' + type + '</td>' +
    	               '<td style="width:610px">' + obj.name_org + '</td>' ;          
          
            $( '<tr>' ).html(code).appendTo( tbody );
//ohta add-start
          }
//ohta add-end
        } );

    }
  );
}

function delOrg(id, name){
  if(!(confirm("『" + name + "』　\n情報を削除しますがよろしいですか？"))) return;
  var httpObj = $.post("/modules/declare/delOrg.php",{"id" : id}, function(){
    //??? string
//alert(httpObj.responseText.replace(/\$s/g,""));
    getListOrg();
//    $( 'div#declare_message' ).text(httpObj.responseText.replace(/\$s/g,""));
  });
}

function setStatus(id, status){
  var key = '"id":' + id + '';

  if(!registerStatus){
	  registerStatus = new Array();
  }
  registerStatus[key] = '"status":' + status + '';
}

function updateStatus(){
  var json = "";
  for(var k in registerStatus){
	json = json + "{" + k + "," + registerStatus[k] + "},";
  }
  json = json.substring(0, json.length -1);
//  alert(json);

  var httpObj = $.post("/modules/declare/updateStatusOrg.php", {param : json}, function(){
	    //??? string
	alert(httpObj.responseText.replace(/\$s/g,""));
    getListOrg();
    registerStatus = null;
//	    $( 'div#declare_message' ).text(httpObj.responseText.replace(/\$s/g,""));
  });
  
}
/*
$( document ).ready( function() {
  initWindow();
  initMessages();
  getCounter();
  updateTimer = setInterval( 'getCounter()', 10000 );
} );
*/
