/**
 *  jquery.popupt
 *  (c) 2008 Semooh (http://semooh.jp/)
 *
 *  Dual licensed under the MIT (MIT-LICENSE.txt)
 *  and GPL (GPL-LICENSE.txt) licenses.
 *
 **/
(function($){
	$.fn.extend({
		imgclick: function(opt){
			return this.each(function() {
        opt = $.extend({
            prefix: '',
            suffix: '_o',
            src: '',
            btnOnly: true,
            fade: false,
            fadeSpeed: 500
          }, opt || {});

        var node = $(this);
				if(!node.is('img')&&!node.is(':image')){
          var sel = 'img,:image';
          if (opt.btnOnly) sel = 'a '+sel;
          node.find(sel).imgclick(opt);
          return;
        }

        var orgImg = node.attr('src');

        var clickImg;
        if(opt.src){
          clickImg = opt.src;
        }else{
          clickImg = orgImg;
          if(opt.prefix){
            var pos = clickImg.lastIndexOf('/');
            if(pos>0){
              clickImg = clickImg.substr(0,pos-1)+opt.prefix+clickImg.substr(pos-1);
            }else{
              clickImg = opt.prefix+clickImg;
            }
          }
          if(opt.suffix){
            var pos = clickImg.lastIndexOf('.');
            if(pos>0){
              clickImg = clickImg.substr(0,pos)+opt.suffix+clickImg.substr(pos);
            }else{
              clickImg = clickImg+opt.suffix;
            }
          }
        }

        if(opt.fade){
          var offset = node.offset();
          var click = node.clone(true);
          click.attr('src', clickImg);
          click.css({
            position: 'absolute',
            left: offset.left,
            top: offset.top,
            zIndex: 1000
          }).hide().insertAfter(node);
          node.mousedown(
            function(){
              var offset=node.offset();
              click.css({left: offset.left, top: offset.top});
              click.fadeIn(opt.fadeSpeed);
              node.fadeOut(opt.fadeSpeed,function(){node.show()});
            }
          );
          click.mouseout(
            function(){
              node.fadeIn(opt.fadeSpeed);
              click.fadeOut(opt.fadeSpeed);
            }
          );
        }else{
         /* node.click(
            function(){node.attr('src', clickImg)},
            function(){node.attr('src', orgImg)}
          );*/
		  
		  node.mouseup(function(){
			node.attr('src', orgImg);
		}).mousedown(function(){
	
			node.attr('src', clickImg);
		}).mouseleave(function(){
			node.attr('src', orgImg);
		});
        }
			});
		}
	});
})(jQuery);
