wp/wp-content/plugins/akismet/akismet.js
author ymh <ymh.work@gmail.com>
Wed, 06 Nov 2013 03:21:17 +0000
changeset 0 d970ebf37754
permissions -rw-r--r--
first import
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
jQuery(document).ready(function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
	jQuery( '.switch-have-key' ).click( function() {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
		var no_key = jQuery( this ).parents().find('div.no-key');		
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
		var have_key = jQuery( this ).parents().find('div.have-key');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
		
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
		no_key.addClass( 'hidden' );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
		have_key.removeClass( 'hidden' );		
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
		
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
		return false;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
	});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
	jQuery( 'p.need-key a' ).click( function(){
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
		document.akismet_activate.submit();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
	});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
	jQuery('.akismet-status').each(function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
		var thisId = jQuery(this).attr('commentid');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
		jQuery(this).prependTo('#comment-' + thisId + ' .column-comment div:first-child');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
	});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
	jQuery('.akismet-user-comment-count').each(function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
		var thisId = jQuery(this).attr('commentid');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
		jQuery(this).insertAfter('#comment-' + thisId + ' .author strong:first').show();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
	});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
	jQuery('#the-comment-list tr.comment .column-author a[title ^= "http://"]').each(function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
 		var thisTitle = jQuery(this).attr('title');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
 		    thisCommentId = jQuery(this).parents('tr:first').attr('id').split("-");
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
 		
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
 		jQuery(this).attr("id", "author_comment_url_"+ thisCommentId[1]);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
 		
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
 		if (thisTitle) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
 			jQuery(this).after(' <a href="#" class="remove_url" commentid="'+ thisCommentId[1] +'" title="Remove this URL">x</a>');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
 		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
 	});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
 	jQuery('.remove_url').live('click', function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
 		var thisId = jQuery(this).attr('commentid');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
 		var data = {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
 			action: 'comment_author_deurl',
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
			_wpnonce: WPAkismet.comment_author_url_nonce,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
 			id: thisId
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
 		};
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
 		jQuery.ajax({
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
		    url: ajaxurl,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
		    type: 'POST',
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
		    data: data,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
		    beforeSend: function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
		        // Removes "x" link
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
	 			jQuery("a[commentid='"+ thisId +"']").hide();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
	 			// Show temp status
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    47
		        jQuery("#author_comment_url_"+ thisId).html('<span>Removing...</span>');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
		    },
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
		    success: function (response) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
		        if (response) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
	 				// Show status/undo link
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
	 				jQuery("#author_comment_url_"+ thisId).attr('cid', thisId).addClass('akismet_undo_link_removal').html('<span>URL removed (</span>undo<span>)</span>');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
	 			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
		    }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    55
		});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    56
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    57
 		return false;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    58
 	});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    59
 	jQuery('.akismet_undo_link_removal').live('click', function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    60
 		var thisId = jQuery(this).attr('cid');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    61
		var thisUrl = jQuery(this).attr('href').replace("http://www.", "").replace("http://", "");
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    62
 		var data = {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    63
 			action: 'comment_author_reurl',
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    64
			_wpnonce: WPAkismet.comment_author_url_nonce,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    65
 			id: thisId,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    66
 			url: thisUrl
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    67
 		};
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    68
		jQuery.ajax({
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    69
		    url: ajaxurl,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    70
		    type: 'POST',
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
		    data: data,
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    72
		    beforeSend: function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
	 			// Show temp status
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    74
		        jQuery("#author_comment_url_"+ thisId).html('<span>Re-adding…</span>');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
		    },
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    76
		    success: function (response) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
		        if (response) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    78
	 				// Add "x" link
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    79
					jQuery("a[commentid='"+ thisId +"']").show();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    80
					// Show link
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    81
					jQuery("#author_comment_url_"+ thisId).removeClass('akismet_undo_link_removal').html(thisUrl);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    82
	 			}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    83
		    }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    84
		});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    85
 		
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    86
 		return false;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    87
 	});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    88
 	jQuery('a[id^="author_comment_url"]').mouseover(function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    89
		var wpcomProtocol = ( 'https:' === location.protocol ) ? 'https://' : 'http://';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    90
		// Need to determine size of author column
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    91
		var thisParentWidth = jQuery(this).parent().width();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    92
		// It changes based on if there is a gravatar present
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    93
		thisParentWidth = (jQuery(this).parent().find('.grav-hijack').length) ? thisParentWidth - 42 + 'px' : thisParentWidth + 'px';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    94
		if (jQuery(this).find('.mShot').length == 0 && !jQuery(this).hasClass('akismet_undo_link_removal')) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    95
			var thisId = jQuery(this).attr('id').replace('author_comment_url_', '');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    96
			jQuery('.widefat td').css('overflow', 'visible');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    97
			jQuery(this).css('position', 'relative');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    98
			var thisHref = jQuery.URLEncode(jQuery(this).attr('href'));
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    99
			jQuery(this).append('<div class="mShot mshot-container" style="left: '+thisParentWidth+'"><div class="mshot-arrow"></div><img src="'+wpcomProtocol+'s0.wordpress.com/mshots/v1/'+thisHref+'?w=450" width="450" class="mshot-image_'+thisId+'" style="margin: 0;" /></div>');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   100
			setTimeout(function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   101
				jQuery('.mshot-image_'+thisId).attr('src', wpcomProtocol+'s0.wordpress.com/mshots/v1/'+thisHref+'?w=450&r=2');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   102
			}, 6000);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   103
			setTimeout(function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   104
				jQuery('.mshot-image_'+thisId).attr('src', wpcomProtocol+'s0.wordpress.com/mshots/v1/'+thisHref+'?w=450&r=3');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   105
			}, 12000);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   106
		} else {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   107
			jQuery(this).find('.mShot').css('left', thisParentWidth).show();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   108
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   109
	}).mouseout(function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   110
		jQuery(this).find('.mShot').hide();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   111
	});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   112
});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   113
// URL encode plugin
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   114
jQuery.extend({URLEncode:function(c){var o='';var x=0;c=c.toString();var r=/(^[a-zA-Z0-9_.]*)/;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   115
  while(x<c.length){var m=r.exec(c.substr(x));
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   116
    if(m!=null && m.length>1 && m[1]!=''){o+=m[1];x+=m[1].length;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   117
    }else{if(c[x]==' ')o+='+';else{var d=c.charCodeAt(x);var h=d.toString(16);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   118
    o+='%'+(h.length<2?'0':'')+h.toUpperCase();}x++;}}return o;}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   119
});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   120
// Preload mshot images after everything else has loaded
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   121
jQuery(window).load(function() {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   122
	var wpcomProtocol = ( 'https:' === location.protocol ) ? 'https://' : 'http://';
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   123
	jQuery('a[id^="author_comment_url"]').each(function () {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   124
		jQuery.get(wpcomProtocol+'s0.wordpress.com/mshots/v1/'+jQuery.URLEncode(jQuery(this).attr('href'))+'?w=450');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   125
	});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
   126
});