PHP 8.1.33
Preview: utils.js Size: 4.56 KB
/home/jambtst2015/public_html/wp-includes/js/utils.js

/**
 * Cookie functions.
 *
 * @output wp-includes/js/utils.js
 */

/* global userSettings, getAllUserSettings, wpCookies, setUserSetting */
/* exported getUserSetting, setUserSetting, deleteUserSetting */

window.wpCookies = {
// The following functions are from Cookie.js class in TinyMCE 3, Moxiecode, used under LGPL.

	each: function( obj, cb, scope ) {
		var n, l;

		if ( ! obj ) {
			return 0;
		}

		scope = scope || obj;

		if ( typeof( obj.length ) !== 'undefined' ) {
			for ( n = 0, l = obj.length; n < l; n++ ) {
				if ( cb.call( scope, obj[n], n, obj ) === false ) {
					return 0;
				}
			}
		} else {
			for ( n in obj ) {
				if ( obj.hasOwnProperty(n) ) {
					if ( cb.call( scope, obj[n], n, obj ) === false ) {
						return 0;
					}
				}
			}
		}
		return 1;
	},

	/**
	 * Get a multi-values cookie.
	 * Returns a JS object with the name: 'value' pairs.
	 */
	getHash: function( name ) {
		var cookie = this.get( name ), values;

		if ( cookie ) {
			this.each( cookie.split('&'), function( pair ) {
				pair = pair.split('=');
				values = values || {};
				values[pair[0]] = pair[1];
			});
		}

		return values;
	},

	/**
	 * Set a multi-values cookie.
	 *
	 * 'values_obj' is the JS object that is stored. It is encoded as URI in wpCookies.set().
	 */
	setHash: function( name, values_obj, expires, path, domain, secure ) {
		var str = '';

		this.each( values_obj, function( val, key ) {
			str += ( ! str ? '' : '&' ) + key + '=' + val;
		});

		this.set( name, str, expires, path, domain, secure );
	},

	/**
	 * Get a cookie.
	 */
	get: function( name ) {
		var e, b,
			cookie = document.cookie,
			p = name + '=';

		if ( ! cookie ) {
			return;
		}

		b = cookie.indexOf( '; ' + p );

		if ( b === -1 ) {
			b = cookie.indexOf(p);

			if ( b !== 0 ) {
				return null;
			}
		} else {
			b += 2;
		}

		e = cookie.indexOf( ';', b );

		if ( e === -1 ) {
			e = cookie.length;
		}

		return decodeURIComponent( cookie.substring( b + p.length, e ) );
	},

	/**
	 * Set a cookie.
	 *
	 * The 'expires' arg can be either a JS Date() object set to the expiration date (back-compat)
	 * or the number of seconds until expiration
	 */
	set: function( name, value, expires, path, domain, secure ) {
		var d = new Date();

		if ( typeof( expires ) === 'object' && expires.toGMTString ) {
			expires = expires.toGMTString();
		} else if ( parseInt( expires, 10 ) ) {
			d.setTime( d.getTime() + ( parseInt( expires, 10 ) * 1000 ) ); // Time must be in milliseconds.
			expires = d.toGMTString();
		} else {
			expires = '';
		}

		document.cookie = name + '=' + encodeURIComponent( value ) +
			( expires ? '; expires=' + expires : '' ) +
			( path    ? '; path=' + path       : '' ) +
			( domain  ? '; domain=' + domain   : '' ) +
			( secure  ? '; secure'             : '' );
	},

	/**
	 * Remove a cookie.
	 *
	 * This is done by setting it to an empty value and setting the expiration time in the past.
	 */
	remove: function( name, path, domain, secure ) {
		this.set( name, '', -1000, path, domain, secure );
	}
};

// Returns the value as string. Second arg or empty string is returned when value is not set.
window.getUserSetting = function( name, def ) {
	var settings = getAllUserSettings();

	if ( settings.hasOwnProperty( name ) ) {
		return settings[name];
	}

	if ( typeof def !== 'undefined' ) {
		return def;
	}

	return '';
};

/*
 * Both name and value must be only ASCII letters, numbers or underscore
 * and the shorter, the better (cookies can store maximum 4KB). Not suitable to store text.
 * The value is converted and stored as string.
 */
window.setUserSetting = function( name, value, _del ) {
	if ( 'object' !== typeof userSettings ) {
		return false;
	}

	var uid = userSettings.uid,
		settings = wpCookies.getHash( 'wp-settings-' + uid ),
		path = userSettings.url,
		secure = !! userSettings.secure;

	name = name.toString().replace( /[^A-Za-z0-9_-]/g, '' );

	if ( typeof value === 'number' ) {
		value = parseInt( value, 10 );
	} else {
		value = value.toString().replace( /[^A-Za-z0-9_-]/g, '' );
	}

	settings = settings || {};

	if ( _del ) {
		delete settings[name];
	} else {
		settings[name] = value;
	}

	wpCookies.setHash( 'wp-settings-' + uid, settings, 31536000, path, '', secure );
	wpCookies.set( 'wp-settings-time-' + uid, userSettings.time, 31536000, path, '', secure );

	return name;
};

window.deleteUserSetting = function( name ) {
	return setUserSetting( name, '', 1 );
};

// Returns all settings as JS object.
window.getAllUserSettings = function() {
	if ( 'object' !== typeof userSettings ) {
		return {};
	}

	return wpCookies.getHash( 'wp-settings-' + userSettings.uid ) || {};
};

Directory Contents

Dirs: 11 × Files: 100

Name Size Perms Modified Actions
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
crop DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
dist DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
jcrop DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
jquery DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
plupload DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
swfupload DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
thickbox DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
tinymce DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
10.51 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.47 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.59 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
803 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
20.87 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
5.31 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
75.97 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
23.26 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
28.80 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.17 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
28.40 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
16.17 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
12.16 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.91 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
25.16 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
7.67 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
7.72 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.47 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
6.66 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.61 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
14.67 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.92 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
22.71 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
7.64 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
27.30 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.51 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
32.55 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.44 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.95 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.39 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
22.61 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
5.75 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
1.68 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.83 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
1.10 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
5.50 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
17.99 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.08 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
23.57 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
25.45 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
9.65 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
26.91 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
12.62 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
28.44 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.65 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
29.12 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
14.05 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
44.60 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
13.67 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
260.70 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
104.45 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
22.08 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.89 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.51 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.59 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
9.99 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.85 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.22 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
27.35 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
11.04 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
51.68 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
15.67 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.56 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
1.82 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.13 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.04 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
45.65 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
14.23 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.13 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
1.63 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
14.88 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.97 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.20 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.34 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
6.10 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.02 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.33 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
1.44 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
6.79 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
1.81 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
13.90 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
8.78 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.81 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
970 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
597 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
24.67 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
7.23 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.00 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.54 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
1.32 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
458 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.89 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
1.05 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
560 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
272 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
20.58 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.95 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
821 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
351 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
802.97 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).