if (!jQuery.browser.msie || jQuery.browser.version >= 7) {
  $('.imgstyle').prepend('<span class="shadow"></span>');
}

$.fn.add_note = function(option)
{
    var setting = {
                   top   : 2,
                   left  : 2,
                   width : 50,
                   height: 50,
                   id    : 0,
                   aid   : 0,
                   note  : ''
                  };
    if (option) $.extend(setting, option);
    // 没有指定图片id退出函数
    if (setting.aid == 0) return;

    var $$ = this,
        save_button   = $('<input type="button" value="保 存"/>'),
        delete_button = $('<input type="button" value="删 除"/>'),
        input_field   = $('<input type="text" value="" maxlength="100" />'),
        bag           = $('<span></span>')
                        .append(input_field)
                        .append('<br />')
                        .append(save_button)
                        .append(delete_button),
        note          = $('<span></span>').html(setting.note),
        square        = $('<div class="square"></div>')
                        .css({width:setting.width+'px', height:setting.height+'px'})
                        .attr({id:setting.id, aid:setting.aid}),
        square_n      = $('<div class="square_n"></div>')
                        .append(note)
                        .append(bag),
        pos           = $$.offset();
    square.appendTo('body').css({left:pos.left + setting.left + "px",top:pos.top + setting.top + "px"});
    square_n.appendTo('body');
    if (setting.id) {
        load();
    } else {
        $.getJSON("?ajax/n_add", function(result) { 
          if (result.err) {
               square.remove();
               square_n.remove();
               return;
          }
          setup();
        });
    }

    function load()
    {
        bag.hide();
        note.show();
        set_pos();
        square_n.hide();
        square.hide();
        square.hover(function() {
                $('.square').show();
                $(this).show().next().show();
            },function() {
                $(this).show().next().hide();
            }
        );
        $$.hover(
            function(){
                $('.square').show();
            },
            function(){
                $('.square').hide();
            }
        );
    }

    delete_button.click(function() {
        var aid = square.attr('aid');
        var id  = square.attr('id');
        if (id == 0) {
            square.remove();
            square_n.remove();
            $$.hover(
                function(){
                    $('.square').show();
                },
                function(){
                    $('.square').hide();
                }
            );
            return;
        }
        $.getJSON('?ajax/n_del/'+aid+'/'+id, function(result) { 
          if (result.err) {
               return;
          }
          square.remove();
          square_n.remove();
          $$.hover(
              function(){
                  $('.square').show();
              },
              function(){
                  $('.square').hide();
              }
          );
        });
    });

    save_button.click(function() {
        if (!input_field.val()) {
            alert('请填写内容!');
            return;
        }

        var p = square.offset();
        var aid = square.attr('aid');
        var id  = square.attr('id');
        var left = p.left - pos.left;
        var top = p.top - pos.top;
        var width = square.width();
        var height = square.height();
        var n_note = input_field.val();
        $.ajax({type:"POST",
          dataType:'json',
          url: '?ajax/n_save/'+aid+'/'+id,
          data: "left="  + left + '&top=' + top + '&width=' + width + '&height=' + height + '&note=' + n_note + '&project_id=' + project_id,
          success: function(result){
            if (!result.err)
            {
                square.attr('id', result.id);
                note.html(n_note);
                square.xdraggable('destroy').resizable('destroy');
                $('.square').show();
                load();
                square.show();
            }
            else
            {
                alert('出错了!');
                return;
            }
          }
        });
        return ;
    });

    square.dblclick(function() {
        var aid = square.attr('aid');
        var id  = square.attr('id');
        $.getJSON('?ajax/n_edit/'+aid+'/'+id, function(result) { 
          if (result.err) {
               return;
          }
          setup();
        });
    });

    function set_pos() {
        var p = square.offset();
        var left = 0;
        var top = 0;
        if ((p.top - pos.top) >= ($$.height() - square.height() - square_n.height())) {
            top = p.top - square_n.height() + 2;
        }else{
            top = p.top + square.height() + 2;
        }
        if ((p.left - pos.left) >= ($$.width() - square_n.width())) {
            left = pos.left + $$.width() - square_n.width();
        }else{
            left = p.left;
        }
        square_n.css({left:left+"px",top:top+"px"});
    }

    function setup() {
        $('.square,.square_n').hide();
        square_n.show();
        square.show();
        bag.show();
        note.hide();
        set_pos();
        input_field.focus();
        square.resizable({
            handles: 'all',
            knobHandles: true,
            autoHide: true,
            minWidth: 50,
            minHeight: 50,
            maxWidth: 200,
            maxHeight:200,
            resize: function() {
                var p = square.offset();
                if (p.top <= pos.top) {
                    square.css('top', pos.top + 'px');
                }
                if ((p.top - pos.top) >= ($$.height() - square.height()) ) {
                    square.css('top', (pos.top + $$.height() - square.height()) + 'px');
                }
                if (p.left <= pos.left) {
                    square.css('left', pos.left + 'px');
                }
                if ((p.left - pos.left) >= ($$.width() - square.width())) {
                    square.css('left', (pos.left + $$.width() - square.width()) + 'px');
                }
                set_pos();
            }
        }).draggable({
            cursor: 'move',
            containment : $$,
            drag: function() {
                set_pos();
            }
        }).hover(function() {
            $('.square').hide();
            $(this).show().next().show();
        },function(){
            $(this).show().next().show();
        });
        
        $$.hover(
            function(){
                $('.square').hide();
                square.show();
            },
            function(){
                $('.square').hide();
                square.show();
            }
        );
    }
};

// 用户登录
if (uid)
{
    // $.getJSON("?ajax/ck_sc/"+project, function(result) { 
    //   if (!result.err) {
    //       $('.shoucang').addClass('shoucang_ed');
    //   }
    // });

    $('.shoucang').click(function(){
        $.getJSON("?ajax/ad_sc/"+project, function(result) { 
          if (result.err) {
              return;
          }
          if (result.have) {
              $('.shoucang').addClass('shoucang_ed');
          } else {
              $('.shoucang').removeClass('shoucang_ed').addClass('shoucang');
          }
        });
    });

    if (aid)
    {
        $('#biaozhu').click(function(){
            $('#prj_img').add_note({aid:aid});
        }).show();
    }

    $('#add_tag').click(function(){
      var inp = $(this).prev();
      var key_word = inp.val();
      var bag = $('#tag_bag');
      if (!key_word)
      {
        alert('请填写内容!');
        return false;
      }
      $.ajax({type:"POST",
        dataType:'json',
        url: '?ajax/add_tag',
        data: "id="  + project_id + '&key_word=' + key_word,
        success: function(result){
          if (!result.err)
          {
              var html = '<b class="f_blue pr5"><a href="?list&tag='+key_word+'">'+key_word+'</a></b>';
              bag.append(html);
              inp.val('');
              inp.focus();
          }
          else
          {
              if (result.info)
              {
                alert(result.info);
              }
              else
              {
                alert('添加失败!');
              }
          }
        }
      });
    }).parent().parent().show();
}
function ck(o)
{
  if (jQuery.trim(o.val()))
  {
    return true;
  }
  alert('请填写内容!');
  o.focus();
  return false;
}

function add_cm(o,id)
{
    if (uid) {
        $('#cm_post').remove();
        $(o).parent().after(get_code(id));
    } else {
        alert('您需要先登录才能评论!');
    }
}

function get_code(id)
{
  return ['<div class="comment_form pt20 pb20 clearfix" id="cm_post">',
          '<form action="?project/comment/',project_id,'/',id,'" method="post">',
          '<textarea class="f12 lh18 f_gray" name="content"></textarea>',
          '<h3 class="fr pt20 pb20">',
          '<input type="submit" class="" value="提 交" onclick="return ck($(this).parent().prev());"/>',
          '</h3></form></div>'].join("");
}

load_note(aid, project_id);
function load_note(id, project_id)
{
    aid = id;
    $('.square,.square_n').remove();
    $('#prj_img').attr('src','/?attachment/'+id+'/m').load(function(){
        $.getJSON('?ajax/load_note/'+aid + '/' + project_id, function(result) { 
          if (result.err) {
               return;
          }
          $(result.note).each(function(){
             $('#prj_img').add_note({
                 aid:parseInt(this.attachment_id),id:parseInt(this.id),
                 left:parseInt(this.left),top:parseInt(this.top),
                 width:parseInt(this.width),height:parseInt(this.height),note:this.note+' by ' + this.name});
          });
        });
    });

}




