<!--
  var connecting;

$(function() {
  var clicked_avatar_top = null;
  var qid = $('#qid').val();
  var logined = ($('#login').val() === 'true');
  var return_url = $('#return_url').val();
  var is_favorited =  $('#is_favorited').val();

  var instructive = function(isinstructive){
    if (connecting) return;
    $.post('/ajax_qstinstructive/submit', 'qid=' + qid + '&instructive=' + isinstructive, function(msg){
      if(msg == 'true'){ $('#sum_instructive').html(parseInt($('#sum_instructive').html()) + 1 );
        $.fn.okwave.ui.notice.open('投票しました。');
      }else{
        $.fn.okwave.ui.notice.open(msg);
      }
    });
  }

  var evaluate = function(target){
    if (connecting) return;

    array = $(target).attr('id').split('_');
    answer_id = parseInt(array[3]);
    if(logined === false){
      location.href = '/login?return_url=' + return_url;
    }else{
      $.post('/ajax_qstevaluate/submit', 'qid=' + qid + '&aid=' + answer_id, function(response){
        if(response == 'false'){
          $.fn.okwave.ui.notice.open('投票に失敗しました。');
        }else{
          $('#vote_count_for_answer_' + response).html(parseInt($('#vote_count_for_answer_' + response).html()) + 1 );
          $.fn.okwave.ui.notice.open('投票しました。');
        }
      });
    }
  }

  var fav_qa = function(){
    if (connecting) return;
    if(logined === false){
      location.href = '/login?return_url=' + return_url;
    }else{
      $.fn.okwave.ui.confirm.open('お気に入りQ&Aに登録しますか？');
      $.fn.okwave.ui.confirm.onYesClicked(function(){
        $.post('/ajax_favoritequestion/create', 'qid=' + qid, function(response){
          if(response == 'true'){
            $('#fav_qa_span').show();
            $('#fav_qa_count').html(parseInt($('#fav_qa_count').html()) + 1 );
            $.fn.okwave.ui.notice.open('お気に入りQ&Aに登録されました');
          }else{
            $.fn.okwave.ui.notice.open(response);
          }
        });
      });
    }
  }

  var create_favorite_user = function(target){
    if (connecting) return;
    if(logined === false){
      location.href = '/login?return_url=' + return_url;
    }else{
      array = $(target).attr('id').split('_');
      user_id = parseInt(array[3]);

      $.fn.okwave.ui.confirm.open('お気に入りユーザーに登録しますか？');
      $.fn.okwave.ui.confirm.onYesClicked(function(){
        $.post('/ajax_favoriteuser/create', 'uid=' + user_id, function(response){
          if(response=='true'){
            $.fn.okwave.ui.notice.open('お気に入りユーザーに登録されました');
            $('#create_favorite_user_' + user_id).replaceWith('<a href="javascript:void(0);" class="favorite_user_link" id="delete_favorite_user_' + user_id + '">お気に入りユーザー解除</a>');
            $('.favorite_user_link').click(function(){delete_favorite_user(target);});
          }else{
            $.fn.okwave.ui.notice.open(response);
          }
        });
      });
    }
  }

  var delete_favorite_user = function(target){
    if (connecting) return;
    if(logined === false){
      location.href = '/login?return_url=' + return_url;
    }else{
      array = $(target).attr('id').split('_');
      user_id = parseInt(array[3]);

      $.fn.okwave.ui.confirm.open('お気に入りユーザーを解除しますか？');
      $.fn.okwave.ui.confirm.onYesClicked(function(){
        $.post('/ajax_favoriteuser/delete', 'uid=' + user_id, function(response){
          if(response=='true'){
            $.fn.okwave.ui.notice.open('お気に入りユーザーを解除しました');
            $('#delete_favorite_user_' + user_id).replaceWith('<a href="javascript:void(0);" class="favorite_user_link" id="create_favorite_user_' + user_id + '">お気に入りユーザー</a>');
            $('.favorite_user_link').click(function(){create_favorite_user(target);});
          }else{
            $.fn.okwave.ui.notice.open(response);
          }
        });
      });
    }
  }

  var create_block_user = function(target){
    if (connecting) return;
    if(logined === false){
      location.href = '/login?return_url=' + return_url;
    }else{
      array = $(target).attr('id').split('_');
      user_id = parseInt(array[3]);

      $.fn.okwave.ui.confirm.open('ブロックユーザーに登録しますか？');
      $.fn.okwave.ui.confirm.onYesClicked(function(){
        $.post('/ajax_blockuser/create', 'uid=' + user_id, function(response){
          if(response=='true'){
            $.fn.okwave.ui.notice.open('ブロックユーザーに登録されました');
            $('#create_block_user_' + user_id).replaceWith('<a href="javascript:void(0);" class="block_user_link" id="delete_block_user_' + user_id + '">ブロックユーザー解除</a>');
            $('.block_user_link').click(function(){delete_block_user(target);});
          }else{
            $.fn.okwave.ui.notice.open(response);
          }
        });
      });
    }
  }

  var delete_block_user = function(target){
    if (connecting) return;

    if(logined === false){
      location.href = '/login?return_url=' + return_url;
    }else{
      array = $(target).attr('id').split('_');
      user_id = parseInt(array[3]);

      $.fn.okwave.ui.confirm.open('ブロックユーザーを解除しますか？');
      $.fn.okwave.ui.confirm.onYesClicked(function(){
        $.post('/ajax_blockuser/delete', 'uid=' + user_id, function(response){
          if(response=='true'){
            $.fn.okwave.ui.notice.open('ブロックユーザーを解除しました');
            $('#delete_block_user_' + user_id).replaceWith('<a href="javascript:void(0);" class="block_user_link" id="create_block_user_' + user_id + '">ブロックユーザー</a>');
            $('.block_user_link').click(function(){create_block_user(target);});
          }else{
            $.fn.okwave.ui.notice.open(response);
          }
        });
      });
    }
  }

  $('#thank_button').live('click', function(){
            $.fn.okwave.ui.notice.open('質問者から回答者の方へお礼を投稿することができます。<br />感謝の気持ちを伝えましょう！');
  });

  $('#supplement_button').live('click', function(){
    $.fn.okwave.ui.notice.open('質問者から回答者の方へ追加の質問をすることができます。<br />質問本文での説明に不足があった場合や、寄せられた<br />回答に対して新たに疑問が生じた場合にご活用ください。');
  });

  var popup = function(target){
    array = $(target).attr('id').split('_');
    user_id = parseInt(array[1]);
    ok_popup_user_top = $('.ok_popup_user').offset().top;
    ok_popup_user_left = $('.ok_popup_user').offset().left;

    target_top = $(target).offset().top;
    target_left = $(target).offset().left;

    id = 'summarized_profile';
    popup_top = target_top - ok_popup_user_top;
    popup_left = target_left - ok_popup_user_left + 80;
    popup_top = popup_top - 1;

    if($('#' + id).css('display') == 'none'){
      $('#' + id).attr('style', 'top: ' + popup_top + 'px; left: ' + popup_left + 'px;')
      set_user_base_info(user_id);
      clicked_avatar_top = target_top;
    }else{
      $('#' + id).hide();
      $('#thank_rate').text('-');
      $('#bestanswer_rate').text('-');
      $('#user_registered').text('----');
      $('#answer_point').text('-');
      $('#favorite_user').hide();
      $('#block_user').hide();

      if(clicked_avatar_top != target_top){
        $('#' + id).attr('style', 'top: ' + popup_top + 'px;')
        set_user_base_info(user_id);
        clicked_avatar_top = target_top;
      }
    }
  }

  var cache = [];
  var chk_cache = function(id) {
    var result = false;
    for(i=0; i < cache.length; i++) {
      if(cache[i].user_id == id) {
        result = cache[i].data;
      }
    }
    return result;
  }

  var set_user_base_info = function(user_id){
    if (connecting) return;
    var callback = function(json){
        cache.push({ user_id : user_id, data: json });
        $('#thank_rate').text(json.thankRate);
        $('#bestanswer_rate').text(json.bestanswerRate);
        $('#user_registered').text(json.user_registered);
        $('#answer_point').text(json.answerPoint);
        favorite = json.favorite;
        block = json.block;

        if(favorite){
          $('.favorite_user_link').replaceWith('<a href="javascript:void(0);" class="favorite_user_link" id="delete_favorite_user_' + user_id + '">お気に入りユーザー解除</a>');
          $('.favorite_user_link').click(function(){delete_favorite_user(this);return false;});
        }else{
          $('.favorite_user_link').replaceWith('<a href="javascript:void(0);" class="favorite_user_link" id="create_favorite_user_' + user_id + '">お気に入りユーザー</a>');
          $('.favorite_user_link').click(function(){create_favorite_user(this);return false;});
        }

        if(block){
          $('.block_user_link').replaceWith('<a href="javascript:void(0);" class="block_user_link" id="delete_block_user_' + user_id + '">ブロックユーザー解除</a>');
          $('.block_user_link').click(function(){delete_block_user(this);return false;});
        }else{
          $('.block_user_link').replaceWith('<a href="javascript:void(0);" class="block_user_link" id="create_block_user_' + user_id + '">ブロックユーザー</a>');
          $('.block_user_link').click(function(){create_block_user(this);return false;});
        }

        $('#favorite_user').show();
        $('#block_user').show();
    }
    data = chk_cache(user_id);
    if (typeof(data) == 'object') {
      callback(data);
      return;
    }
    $.ajax({
      url : '/ajax_user/getuserbaseinfo',
      data : { user_id: user_id },
      success : function(response) {
        json = eval('('+response+')');
        callback(json);
      }});
  }

  $.ajaxSetup({
    beforeSend : function(){connecting = true;},
    complete : function(){connecting = false;},
    error: $.fn.okwave.lib.ajaxErrorHandler
  });

  $('#fav_qa').click(function(){fav_qa();return false;});
  $('a.vote').click(function(){evaluate(this);return false;});
  $('#instructive').click(function(){instructive(true);return false;});
  $('#uninstructive').click(function(){instructive(false);return false;});
  $('.popup').click(function(){popup(this);});


  $('#sort').change(function(){
    eval('var order = ' + $('#sort').val());
    location.href = '?order='+ order.order + '&by=' + order.by;
  });

  if (is_favorited)  $('#fav_qa_span').hide();

  var qa_match_count = $('.ok_qamatch').length;
  if (qa_match_count > 0) {
    var appendQamatch = function() {
      $.post('/ajax_qamatch', {qid : qid}, function(res) {
        if (! res) return;
        j = eval('('+res+')');
        if (! j.links) return;
        $.each(j.links, function(aid, links){
          var dom = $('#match_' + aid);
          var ul = $(dom).append('<ul></ul>').children('ul');
          $.each(links, function(i, link) {
            if (i != 'title') {
              $(ul).append('<li><a href="' + link.url + '" target="ad">' + link.name + '</a><span> - ' + link.caption + '</span> </li>');
            }
          })
          $(dom).html('<div class="ok_af2"><div class="ok_af2_img"><span>' + links.title + '</span></div>' + $(dom).html() + '</div>');
          $(dom).show();
        })
      });
    }

    appendQamatch();
  }
});
//-->