wp/wp-admin/js/user-profile.js
author ymh <ymh.work@gmail.com>
Wed, 06 Nov 2013 03:21:17 +0000
changeset 0 d970ebf37754
child 5 5e2f62d02dcd
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
(function($){
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
	function check_pass_strength() {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
		var pass1 = $('#pass1').val(), user = $('#user_login').val(), pass2 = $('#pass2').val(), strength;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
		$('#pass-strength-result').removeClass('short bad good strong');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
		if ( ! pass1 ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
			$('#pass-strength-result').html( pwsL10n.empty );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
			return;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
		strength = wp.passwordStrength.meter( pass1, wp.passwordStrength.userInputBlacklist(), pass2 );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
		switch ( strength ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
			case 2:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
				$('#pass-strength-result').addClass('bad').html( pwsL10n['bad'] );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
				break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
			case 3:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
				$('#pass-strength-result').addClass('good').html( pwsL10n['good'] );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
				break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
			case 4:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
				$('#pass-strength-result').addClass('strong').html( pwsL10n['strong'] );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
				break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
			case 5:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
				$('#pass-strength-result').addClass('short').html( pwsL10n['mismatch'] );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
				break;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
			default:
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
				$('#pass-strength-result').addClass('short').html( pwsL10n['short'] );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
		}
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
	$(document).ready( function() {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
		var select = $('#display_name');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
		$('#pass1').val('').keyup( check_pass_strength );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
		$('#pass2').val('').keyup( check_pass_strength );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
		$('#pass-strength-result').show();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
		$('.color-palette').click( function() {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
			$(this).siblings('input[name="admin_color"]').prop('checked', true);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
		});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
		if ( select.length ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
			$('#first_name, #last_name, #nickname').bind( 'blur.user_profile', function() {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
				var dub = [],
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
					inputs = {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
						display_nickname  : $('#nickname').val() || '',
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    47
						display_username  : $('#user_login').val() || '',
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
						display_firstname : $('#first_name').val() || '',
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
						display_lastname  : $('#last_name').val() || ''
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
					};
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
				if ( inputs.display_firstname && inputs.display_lastname ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
					inputs['display_firstlast'] = inputs.display_firstname + ' ' + inputs.display_lastname;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
					inputs['display_lastfirst'] = inputs.display_lastname + ' ' + inputs.display_firstname;
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
				$.each( $('option', select), function( i, el ){
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    58
					dub.push( el.value );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    59
				});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    60
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    61
				$.each(inputs, function( id, value ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    62
					if ( ! value )
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    63
						return;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    64
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    65
					var val = value.replace(/<\/?[a-z][^>]*>/gi, '');
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    66
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    67
					if ( inputs[id].length && $.inArray( val, dub ) == -1 ) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    68
						dub.push(val);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    69
						$('<option />', {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    70
							'text': val
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
						}).appendTo( select );
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    72
					}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
				});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    74
			});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
		}
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    76
	});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    78
})(jQuery);