• Hi, i’ve installed this plugin and using its tab function. My site is using WPML in 4 langauges, including Eng, Chinese, Korean and Punjabi.

    So the shortcode I put for tab title will be like:
    For English – [wptabtitle]Our Goals[/wptabtitle]
    For other languages – [wptabtitle]FOREIGN LANGAUGE TITLE HERE[/wptabtitle], but I realize this causes problem to make tabs work.

    When I look at the code in Firebug / Chrome Developer Tools, I realized the tab’s link is grabbing from the title directly like this:
    For English – Our Goals
    For other langauges – FOREIGN LANGAUGE TITLE HERE

    I believe it is because of the foreign languages entered in wordpress page so it cannot generate the “href” in properly… causing the tab to break.

    Does anyone have a solution for this? Any help would really be appreciated thanks!

    https://www.ads-software.com/extend/plugins/wp-ui/

Viewing 2 replies - 1 through 2 (of 2 total)
  • Thread Starter ecdgraphics

    (@ecdgraphics)

    Sorry the HTML code in the previous post breaks, it should read:

    ——————-
    When I look at the code in Firebug / Chrome Developer Tools, I realized the tab’s link is grabbing from the title directly like this:
    For English – <a href="#our_goals">Our Goals</a>
    For other langauges – <a href="#">FOREIGN LANGAUGE TITLE HERE</a>

    I believe it is because of the foreign languages entered in wordpress page so it cannot generate the “href” in <a> properly… causing the tab to break.

    Does anyone have a solution for this? Any help would really be appreciated thanks!

    fix wp-ui.js

    /*!
     *	WP UI version 0.8.5
     *
     *	Copyright (c) 2011, Kavin ( https://kav.in )
     *	@license - Dual licensed under the MIT and GPL licenses.
     *
     *	Below components Copyright and License as per the respective authors.
     *
     *	Includes jQuery cookie plugin by Klaus Hartl.
     *	Includes jQuery BBQ plugin by Ben Alman.
     *	Includes Mousewheel event plugin by Brandon Aaron.
     *
     *
     *	Requires : jQuery v1.4.2, jQuery UI v1.8 or later.
     */
    
    (function( $ ) {
    
    	if ( ! $.wpui ) $.wpui = {};
    	if ( ! $.wpui.ids ) $.wpui.ids = {};
    	if ( ! $.wpui.tabsNo ) $.wpui.tabsNo = 0;
    	var wpUIOpts = window.wpUIOpts || {}, console = window.console;
    
    	/// Enable Misc options.
    	if ( typeof( wpUIOpts.misc_options ) != 'undefined' ) {
    		var misc_opts = wpUIOpts.misc_options.split( "\n" ), misc_opts1={};
    		for ( var i=0; i<misc_opts.length; i++ ) {
    			doo = misc_opts[ i ].split('=');
    			misc_opts1[ doo[ 0 ] ] = doo[ 1 ];
    		}
    		wpUIOpts.misc_opts = misc_opts1;
    	}
    
    	// Return treated ID strings.
    	if ( typeof( $.wpui.getIds ) == 'undefined' ) {
    		$.wpui.getIds = function( str, par ) {
    			var num = $.wpui.tabsNo, dup;
    
    			if ( typeof($.wpui.ids[ par ] ) == 'undefined' )
    					$.wpui.ids[ par ] = [];
    
    			str = $.trim(str).replace(/\s{1,}/gm, '_')
    					.replace( /[^\-A-Za-z0-9\s_]/mg, '')
    					.toLowerCase();
    
    			for ( dup in $.wpui.ids ) {
    				if ( $.inArray( str, $.wpui.ids[ dup ] ) != '-1' || $( '#' + str ).length ) {
    					str = str + '-' + num;
    				}
    			}
    
    			// characters.
    		//	if ( str.match( /[^\x00-\x80]+/ ) ) {
    				str = 'tabs-' + num;
    		//	}
    
    			$.wpui.ids[ par ].push( str );
    			$.wpui.tabsNo++;
    
    			return str;
    		};
    	}
    
    	///////////////////////////////////////////////////
    	//////////////////// WP TABS //////////////////////
    	///////////////////////////////////////////////////
    	// Extend the tabs proto.
    	$.widget( "wpui.wptabs", {
    		options			: {
    			header			:		'h3.wp-tab-title',
    			ajaxClass	:		'a.wp-tab-load',
    			topNav			: 		(typeof wpUIOpts != "undefined"  && wpUIOpts.topNav == 'on' ) ? true : false,
    			bottomNav		: 		(typeof wpUIOpts != "undefined"  && wpUIOpts.bottomNav == 'on' ) ? true : false,
    			position		: 		'top',
    			navStyle		: 		(typeof wpUIOpts != "undefined") ? wpUIOpts.tabsLinkClass : '',
    			effect			: 		(typeof wpUIOpts != "undefined") ? wpUIOpts.tabsEffect : '',
    			effectSpeed		: 		(typeof wpUIOpts != "undefined") ? wpUIOpts.effectSpeed : '',
    			alwaysRotate	: 		(typeof wpUIOpts != "undefined") ? wpUIOpts.alwaysRotate : '', // True - will rotate inspite of clicks. False - will stop.
    			tabsEvent		: 		(typeof wpUIOpts != "undefined") ? wpUIOpts.tabsEvent : '',
    			collapsibleTabs	: 		(typeof wpUIOpts != "undefined"  && wpUIOpts.collapsibleTabs == 'on' ) ? true : false,
    
    			tabPrevText		: 		(typeof wpUIOpts != "undefined" && wpUIOpts.tabPrevText != '' ) ? wpUIOpts.tabPrevText : '&laquo; Previous',
    			tabNextText		: 		(typeof wpUIOpts != "undefined" && wpUIOpts.tabNextText != '' ) ? wpUIOpts.tabNextText : 'Next &raquo;',
    			cookies			: 		(typeof wpUIOpts != "undefined"  && wpUIOpts.cookies == 'on' ) ? true : false,
    			hashChange		: 		(typeof wpUIOpts != "undefined"  && wpUIOpts.hashChange == 'on' ) ? true : false,
    			mouseWheel		: 		(typeof wpUIOpts != "undefined" ) ? wpUIOpts.mouseWheelTabs : '',
    			wpuiautop		: 		true,
    			followNav: false
    		},
    		_create			: function() {
    			var self = this, $this = this.element;
    
    			this.jqui = ( this.element.hasClass( 'jqui-styles' ) ) ? true : false;
    			this.o = this.options;
    			this.header = $this.children( this.o.header );
    			this.isVertical = $this.hasClass( 'wpui-tabs-vertical' ) ? true : false;
    			this.mode = this.isVertical ? 'vertical' : 'horizontal';
    			this.id =  $this.attr( 'id' );
    
    			if ( typeof($.wpui.ids[ this.id ] ) == 'undefined' )
    					$.wpui.ids[ this.id ] = [];
    
    			// Add the ul.
    			this.ul = $( '<ul class="ui-tabs-nav" />' ).prependTo( this.element );
    
    			if ( this.o.wpuiautop ) {
    
    				$this.children('p, br')
    					.not( 'div.wp-tab-content > br, div.wp-tab-content > p' )
    					.filter(function() {
    						return( $.trim( $(this).html() ) === '' );
    				}).remove();
    
    			}
    
    			this.wrap = this.header.wrap( '<div class="ui-tabs-panel" />' );
    
    			this.wrap.each(function() {
    				$( this ).parent().append( $( this ).parent().nextUntil( "div.ui-tabs-panel" ) );
    			});
    
    			// Iterate through headers and add the styles.
    			this.header.each(function( index ) {
    				var elId = $( this ).text(),
    					toLoad = $( this ).find( self.o.ajaxClass ),
    					img = $( this ).find( 'img' ),
    					linkStr = '';
    
    				// Get this tabs's ID.
    				elId = $.wpui.getIds( elId, self.id );
    
    				if ( toLoad.length ) {
    					// IT IS an AJAX LINK
    					linkStr = '<a href="' + toLoad.attr( 'href' ) + '">' + toLoad.text() + '</a>';
    				} else if ( $( this ).find( 'img' ).length == 1 ) {
    					// IT IS AN IMAGE!!!!!!!!!!!!
    					// Unwrap it.
    					while ( img.parent().is( 'h3' ) ) img.unwrap();
    					// Remove styles.
    					img.removeAttr( 'style' ).css( 'vertical-align', 'middle' );
    					// Get the id if no header text.
    					if ( img.attr( 'title' ) != 'undefined' && img.attr( 'title') != '' && $( this ).text() == '' )
    						elId = $.wpui.getIds( img.attr( 'title' ), self.id );
    					linkStr = '<a href="#' + elId + '"><img src="' + img.attr( 'src' ) + '" title="' + img.attr( 'title' ) + '" />'  + $( this ).text() + '</a>';
    
    				} else {
    					linkStr = '<a href="#' + elId + '">' + $( this ).text() + '</a>';
    				}
    
    				linkStr = '<li>' + linkStr + '</li>';
    
    				self.ul.append( linkStr );
    
    				if ( ! toLoad.length ) {
    					$( this ).parent().attr( 'id', elId );
    				} else {
    					$( this ).parent().remove();
    				}
    
    				// $.wpui.ids[ self.id ].push( elId ); 
    
    				// Another tab added.
    				// $.wpui.tabsNo++;
    
    			}).hide();	
    
    			if ( ! $this.find( '.ui-tabs' ).length ) {
    				$this.wrapInner( '<div class="ui-tabs" />' );
    			}
    
    		},
    		_init			: function() {
    			var self = this, $this = this.element, options = {};
    
    			if ( this.o.effect == 'slideDown' ) {
    			 	options.fx = { height: 'toggle', speed: this.o.effectSpeed };
    
    			} else if ( this.o.effect == 'fadeIn' ) {
    				options.fx = { opacity: 'toggle', speed: this.o.effectSpeed};
    			}
    
    			if ( this.o.cookies ) {
    				options.cookie = { expires : 30 };
    			}	
    
    			if ( this.o.tabsEvent ) {
    				options.event = this.o.tabsEvent;
    			}
    
    			if ( this.o.collapsibleTabs ) {
    				options.collapsible = true;
    			}
    
    			this.$tabs = $this.children( '.ui-tabs' ).tabs( options );
    
    			this.setClasses();
    			this.navigation();
    
    			if ( this.isVertical ) this.goVertical();
    
    			if ( typeof( $.wpui.ids.children ) == 'undefined' )
    				$.wpui.ids.children = {};
    			$this.find( '.wp-tab-content-wrapper' ).find( '.wpui-hashable' ).each(function() {
    				if ( this.id )
    					$.wpui.ids.children[ this.id ] = $( this ).closest( '.ui-tabs-panel' ).attr('id');
    
    			});		
    
    			if ( $this.hasClass( 'wpui-sortable' ) ) {
    				this.$tabs.find( 'ul.ui-tabs-nav' ).sortable({ axis : 'x' });
    			}
    
    			this.rotate();
    
    			if ( $this.hasClass( 'tabs-bottom' ) ) {
    				this.ul.appendTo( this.ul.parent() );
    			}
    
    		},
    		setClasses		: function() {
    			var self = this, $this = this.element;
    
    			this.ul.children().eq(0).addClass( 'first-li' );
    			this.ul.children().last().addClass( 'last-li' );
    		},
    		rotate			: function() {
    
    			var rSpeed = this.element.attr( 'class' ).match( /tab-rotate-(.*)/, "$1" ), aRot;
    
    			if ( rSpeed ) {
    				rSpeed =  rSpeed[1];
    				if ( rSpeed.match(/(\d){1,2}s/, "$1") ) rSpeed = rSpeed.replace(/s$/, '') * 1000;
    				aRot = ( this.o.alwaysRotate == "always" ) ? true : false;
    				this.$tabs.tabs( 'rotate', rSpeed, aRot );
    			}
    
    		},
    		navigation		: function() {
    			var self = this, $this = this.element;
    
    			// if ( this.o.topNav || this.o.bottomNav ) return false;
    
    			$this.find( 'div.ui-tabs-panel' ).each( function(i) {
    				var navClass = ' ui-button ui-widget ui-state-default ui-corner-all',
    				navPrevSpan = '<span class="ui-icon ui-icon-circle-triangle-w"></span>',
    				navNextSpan = '<span class="ui-icon ui-icon-circle-triangle-e"></span>',
    				totalLength = $( this ).parent().children('.ui-tabs-panel').length -1;
    
    				! self.o.topNav || $( this )
    					.prepend( '<div class="tab-top-nav" />');
    
    				! self.o.bottomNav || $( this )
    					.append( '<div class="tab-bottom-nav" />' );				
    
    				if ( i != 0 ) {
    					! self.o.topNav || $( this )
    						.children('.tab-top-nav')
    						.prepend('<a href="#" class="backward prev-tab ' + navClass + '">' + navPrevSpan + self.o.tabPrevText + '</a>' );
    					! self.o.bottomNav || $( this )
    						.children('.tab-bottom-nav')
    						.append('<a href="#" class="backward prev-tab ' + navClass + '">' + navPrevSpan  + self.o.tabPrevText + '</a>');
    				}
    
    				if ( i != totalLength ) {
    					! self.o.topNav || $( this )
    						.children('.tab-top-nav')
    						.append('<a href="#" class="forward next-tab ' + navClass + '">' + self.o.tabNextText + navNextSpan + '</a>');
    					! self.o.bottomNav || $( this )
    						.children('.tab-bottom-nav')
    						.append('<a href="#" class="forward next-tab ' + navClass + '">' + self.o.tabNextText +  navNextSpan + '</a>');
    				}				
    
    			});
    
    			$this.find( 'a.next-tab, a.prev-tab' ).hover(function() {
    				$( this ).addClass( 'ui-state-hover' );
    			}, function() {
    				$( this ).removeClass( 'ui-state-hover' );
    			});
    
    			$this.find( 'a.next-tab, a.prev-tab' ).click(function() {
    				if ( $( this ).is('a.next-tab') )
    					self.goTo( "forward" );
    				else
    					self.goTo( "backward" );
    				return false;
    			});		
    
    		},
    		goTo		: function( dir ) {
    			var self = this, $this = this.element, mrel;
    
    			dir = dir || 'forward';
    			mrel = $this.find('.ui-tabs').tabs('option', 'selected');
    
    			mrel = ( dir == 'backward' ) ? mrel - 1 : mrel + 1;
    
    			if ( dir == "forward" && mrel == $this.panelength ) mrel = 0;
    			if ( dir == "backward" && mrel < 0 ) mrel = $this.panelength - 1;
    
    			this.$tabs.tabs( "select", mrel );
    		},
    		changeMode		: function( mode ) {
    			// mode = mode || this.mode;
    			// if ( mode == this.mode ) return false;
    
    			window._oldO = this.o;
    
    			this.destroy();
    
    			this.element
    				.toggleClass( 'wpui-tabs-vertical' )
    				.wptabs( window._oldO );
    
    		},
    		binders			: function() {
    
    		},
    		// goVertical		: function() {
    		// 	var self = this, $this = this.element;
    		//
    		//
    		//
    		// },
    		goVertical		: function() {
    			var self = this, $this = this.element,
    			ulWidth, getListWidth, ulHeight, parWidth, PaneWidth, maxPane, paneCount;
    
    			this.$tabs
    				.addClass( 'ui-tabs-vertical ui-helper-clearfix' );
    
    			this.adjust();
    
    		},
    		adjust			: function( mode ) {
    			var self = this, $this = this.element, listWidth;
    
    			mode = mode || this.mode;
    
    			if ( this.mode == 'vertical' ) {
    
    				this.ul.find('li')
    					.removeClass('ui-corner-top').addClass( 'ui-corner-left' );
    
    				this.ul
    					.css({ position : 'absolute' })
    					.removeClass( 'ui-corner-all' )
    					.addClass( 'ui-corner-left' )
    					.children()
    					.css({ 'float' : 'left', clear: 'left', position : 'relative' });
    
    				listWidth = $this.attr( 'class' ).match(/listwidth-(\d{2,4})/, "$1");
    
    				if ( listWidth ) {
    					listWidth = listWidth[ 1 ];
    				} else {
    					listWidth = this.ul.outerWidth();
    				}
    
    				listHeight = this.$tabs.height() / this.$tabs.outerHeight() * 100;
    
    				ulHeight = this.ul.height();
    
    				// Set the width and height.
    				this.ul.width( listWidth )
    					// .height( '99%' )
    					.height( listHeight + '%' )
    					.css({
    						zIndex : '100'
    					});
    
    				// Fix the outermost width ( For Fluid width themes )
    				this.$tabs.width( this.$tabs.parent().innerWidth() );
    
    				paneWidth = this.$tabs.width() - this.ul.width();
    
    				this.$tabs
    					.find( '.ui-tabs-panel' )
    					.css({ 'float' : 'right' })
    					.outerWidth( paneWidth );				
    
    				this.$tabs
    					.css({
    						minHeight : ulHeight
    				});
    
    				if ( $this.hasClass( 'wpui-autoheight' ) ) {
    					maxHeight = 0;
    					$this.find( '.ui-tabs-panel' ).each(function() {
    						maxHeight = Math.max( $( this ).height(), maxHeight );
    					}).height( maxHeight );
    
    				}
    
    			} else {
    				this.ul.find( 'li' )
    					.toggleClass( 'ui-corner-top ui-corner-left' );
    
    				this.ul
    					.toggleClass( 'ui-corner-all ui-corner-left' )
    					.children()
    					.css({
    						'position' : 'static',
    						'clear' : none,
    						'float' : none
    					});
    
    				this.ul.height( "auto" ).width( "auto" );
    
    			} 
    
    			// this.$tabs.find( '.ui-tabs-panel' ).each(function() {
    			// 	if ( $( this ).outerHeight() > maxPane ) {
    			// 		maxPane = $( this ).outerHeight();
    			// 	}
    			// });
    
    			if ( this.o.effect == 'slideDown' )
    				$this.find('.ui-tabs').tabs({ fx : null });		
    
    		},
    		resize			: function() {
    			// this.goVertical();
    		},
    		_setOption		: function( key, value ) {
    			switch( key ) {
    				// Mode
    				case "mode":
    					if ( ( value == 'horizontal' || value == 'vertical' ) && value != this.mode )
    					this.changeMode( value );
    					break;
    				case "destroy":
    					this.destroy();
    					break;
    
    			}
    		},
    		destroy			: function() {
    			this.header.show();
    
    			// $this
    			// 	.children( 'div' )
    			// 	.filter(function() {
    			// 		return( $.trim( $(this).html() ) === '' );
    			// 	}).remove();
    
    			while ( ! this.header.parent().is( this.element ) ) {
    				this.header.unwrap();
    			}
    
    			this.ul.remove();
    
    			this.element
    			.find( '.tab-top-nav, .tab-bottom-nav' )
    			.remove();
    
    			if ( typeof( $.wpui.ids[ this.id ] ) != 'undefined' ) {
    				delete $.wpui.ids[ this.id ];
    			}
    
    			$.Widget.prototype.destroy.call( this );
    		}
    
    	});
    
    	$.fn.wpuiScroller = function(options) {
    		var base = this;
    		base.$el = jQuery(this);
    		base.opts = jQuery.extend({},
    		jQuery.fn.wpuiScroller.defaults, options);
    		base.startTop = parseInt(base.$el.css('top'), 10);
    		if (base.opts.limiter) {
    			base.limiter = jQuery(base.opts.limiter);
    		} else {
    			base.limiter = base.$el.parent().parent();
    		}
    		base.startAt = parseInt(base.limiter.offset().top, 10);
    		jQuery(window).scroll(function() {
    			base.endAt = parseInt((base.limiter.height() + jQuery(window).height() / 2), 10);
    			base.moveTo = base.startTop;
    			if (jQuery(document).scrollTop() >= base.startAt) {
    				base.moveTo = base.startTop + (jQuery(window).scrollTop() - base.startAt);
    				if ((jQuery(window).scrollTop() + jQuery(window).height() / 2) >= (base.limiter.height() + base.limiter.offset().top - base.startTop)) {
    					base.moveTo = base.limiter.height() - base.startTop;
    				}
    			}
    			base.$el.css('top', base.moveTo);
    		});
    		return this;
    	};
    	jQuery.fn.wpuiScroller.defaults = {
    		limiter: false,
    		adJust: 50
    	};
    
    	// Common hash change function.
    	$.wpui.hasher = function() {
    		if ( typeof( $.bbq ) == 'undefined' ) return false;
    		if ( typeof( 'wpUIOpts' ) != 'undefined' && typeof( 'wpUIOpts.linking_history' ) != 'undefined' && wpUIOpts.linking_history == 'off' ) return false;	
    
    		$( window ).bind( 'hashchange', function( e ) {
    			// this.progressed = this.progressed || false;
    			// if ( this.progressed ) return false;
    
    			var state = [],
    				finalT = window.location.hash.replace( /#/, '' ),
    				preT = false;
    
    			if ( typeof( $.wpui.ids.children ) != 'undefined' && typeof( $.wpui.ids.children[ finalT ] ) != 'undefined'
    			// $.inArray( finalT, $.wpui.ids.children ) != -1
    			) {
    					// && ( $( '#' + e.fragment ).is( ':wpui-wpspoiler' ) ) ) {
    				preT = finalT;
    				finalT = $.wpui.ids.children[ finalT ];
    			}
    
    			for ( var ins in $.wpui.ids ) {
    				if ( $.inArray( finalT, $.wpui.ids[ ins ] ) != '-1' ) {
    					// get the index.
    					var index = $.wpui.ids[ ins ].indexOf( finalT ), tab, acc;
    
    					// Do tabs.
    					tab = $( '#' + ins ).children( ".ui-tabs" );
    					if ( tab.length ) {
    						$.wpui.scrollTo( tab, function() {
    							tab.tabs( 'select', index );
    						});
    					}
    
    					// Do accordions
    					acc = $( '#' + ins ).children( '.ui-accordion' );
    					if ( acc.length ) {
    						$.wpui.scrollTo( acc, function() {
    							acc.accordion( 'activate', index );
    						});
    					}
    				}
    			}
    
    			if ( preT ) finalT = preT;
    
    			if ( $( '#' + finalT ).parent().is( '.wp-spoiler' ) ) {
    				$( '#' + finalT ).parent().wpspoiler( 'toggle' );
    			}
    			if ( $( '#' + finalT ).is( '.wp-spoiler' ) ) {
    				$( '#' + finalT ).wpspoiler( 'toggle' );
    			}
    
    			if ( typeof( finalT ) != 'undefined' && finalT != '' ) {
    				window.location.hash = finalT;
    			//	return false;
    
    			}
    
    			// state[ id ] = finalT;
    		}).trigger( 'hashchange' );
    	};	
    
    	$.wpui.hasher2 = function() {
    		if ( typeof( $.bbq ) == 'undefined' ) return false;
    
    		$( window ).bind( 'hashchange', function() {
    			var hashObj = $.bbq.getState(), el = $({}), scrollTar = false;
    			for( kin in hashObj ) {
    				el = $( '#' + kin );
    
    				if ( kin == 'scrollto' ) {
    				 	$.wpui.scrollTo( hashObj[ kin ] );
    				}
    
    				if ( el.is( '.wp-tabs' ) ) {
    					el.children( '.ui-tabs' ).tabs( 'select', parseInt( hashObj[ kin ], 10 ) );
    					scrollTar = el.children( '.ui-tabs' );
    				}
    				if ( el.is( '.wp-accordion' ) ) {
    					el.children( '.ui-accordion' ).accordion( 'activate', parseInt( hashObj[ kin ], 10 ) );
    					scrollTar = el.children( '.ui-accordion' );
    
    				}
    
    				if ( el.is( '.wp-spoiler' ) ) {
    					el.wpspoiler( 'toggle' );
    					scrollTar = el;
    
    				}
    
    			}
    			if ( scrollTar )
    				$.wpui.scrollTo( scrollTar );
    
    		}).trigger( 'hashchange' );		
    
    	};
    
    	$.wpui.scrollTo = function( id, callback ) {
    		callback = callback || false;
    
    		id = ( typeof( id ) == 'string' ) ? $( '#' + id ) : id;
    
    		if ( ! id.length ) return false;
    		$( 'html' ).animate({
    			scrollTop : id.offset().top - 30
    		}, ( typeof( wpUIOpts ) != "undefined" ? wpUIOpts.effectSpeed : 100 ), function() {
    			if ( typeof( callback ) == 'function' ) callback();
    		});
    
    		return id;
    	};
    
    })( jQuery );
    jQuery( function() {
    	if ( typeof( wpUIOpts ) != 'undefined' &&
    	 		typeof( wpUIOpts.misc_opts ) != 'undefined' &&
    				wpUIOpts.misc_opts.hashing_method == 2 )
    		jQuery.wpui.hasher2();
    	else
    		jQuery.wpui.hasher();
    });
    
    (function( $ ) {
    
    	////////////////////////////////////////////////////
    	//////////////////// WP Accordion //////////////////
    	///////////////////////////////////////////////////
    	$.widget( 'wpui.wpaccord', {
    		options			: {
    			header			: 	'h3.wp-tab-title',
    			content			: 	'div.wp-tab-content',
    			ajaxClass		: 	'a.wp-tab-load',
    			effect			: 	(typeof wpUIOpts != "undefined") ? wpUIOpts.accordEffect : '',
    			autoHeight		: 	(typeof wpUIOpts != "undefined"  && wpUIOpts.accordAutoHeight == 'on' ) ? true : false,
    			collapse		: 	(typeof wpUIOpts != "undefined"  && wpUIOpts.accordCollapsible == 'on' ) ? true : false,
    			easing			: 	(typeof wpUIOpts != "undefined" ) ? wpUIOpts.accordEasing : '',
    			accordEvent		:   ( typeof wpUIOpts != "undefined" ) ? wpUIOpts.accordEvent : '',
    			wpuiautop		: 	true,
    			hashChange 		: 	true,
    			template		: 	'<div class="wp-tab-content"><div class="wp-tab-content-wrapper">{$content}</div></div>'
    		},
    		_create			: function() {
    			self = this;
    			$this = this.element;
    			this.o = this.options;
    			this.header = $this.find( this.o.header );
    			this.id = $this.attr( 'id' );
    
    			if ( this.o.wpuiautop ) {
    				$this.find('p, br')
    					.not( this.o.content + ' > br, ' + this.o.content + '.wp-tab-content > p' )
    					.filter(function() {
    						return( $.trim( $(this).html() ) === '' );
    				}).remove();
    			}
    
    			$this.find( this.o.header + ',' + this.o.content ).wrapAll( '<div class="accordion" />' );
    
    			this.header.each( function() {
    				var elId = $( this ).text(),
    					toLoad = $( this ).children( self.o.ajaxClass ),
    					img = $( this ).find( 'img' ),
    					linkStr = '';
    
    				elId = $.wpui.getIds( elId, self.id );
    
    				$( this )
    					// .next()
    					.attr( 'id', elId );
    
    				if ( toLoad.length ) {
    					$( '<div />' )
    					.load( toLoad.attr( 'href' ), function( data ) {
    						$( this ).html( self.o.template.replace( /\{\$content\}/, data ) );
    					})
    					.insertAfter( this );
    				}
    
    			});
    
    		},
    		_init			: function() {
    			var options = {}, accClass;
    
    			options.autoHeight = this.o.autoHeight ? true : false;
    
    			if ( this.o.collapsible ) {
    				options.collapsible = true;
    				options.active = false;
    			}
    
    			if ( this.o.easing ) options.animated = this.o.easing;
    
    			options.event = this.o.accordEvent;
    
    			this.accordion = $this.children( '.accordion' ).accordion( options );
    
    			accClass = $this.attr( 'class' );
    
    			if ( activePanel = accClass.match(/acc-active-(\d){1}/im) ) {
    				this.accordion.accordion( 'activate', parseInt( activePanel[ 1 ], 10 ) );
    			}			
    
    			if ( $this.hasClass( 'wpui-sortable' ) ) {
    				this.header.each(function() {
    					$( this ).wrap( '<div class="acc-group" />' );
    					$( this ).parent().next().insertAfter( this );
    				});
    
    				this.accordion
    				.accordion({
    					header: "> div.acc-group > " + self.o.header
    				}).sortable({
    					handle : self.o.header,
    					axis	: 'y',
    					stop: function( event, ui ) {
    							ui.item.children( "h3" ).triggerHandler( "focusout" );
    						}
    				});
    
    			}
    
    			// Auto rotate the accordions
    			this.rotate();
    
    			if ( typeof( $.wpui.ids.children ) == 'undefined' )
    				$.wpui.ids.children = {};
    			$this.find( '.wp-tab-content-wrapper' ).contents().each(function() {
    				if ( this.id )
    					$.wpui.ids.children[ this.id ] = $( this ).closest( '.ui-accordion-content' ).attr('id');
    
    			});		
    
    		},
    		_setOption		: function( key, value ) {
    			switch( key ) {
    				case "destroy":
    					this.destroy();
    					break;
    
    			}
    
    			$.Widget.prototype._setOption.apply( this, arguments );
    		},
    		rotate		: function() {
    
    			var self = this, rSpeed = this.element.attr( 'class' ).match( /tab-rotate-(.*)/, "$1" ), aRot, rotac;
    
    			if ( rSpeed ) {
    				rSpeed =  rSpeed[1];
    				if ( rSpeed.match(/(\d){1,2}s/, "$1") ) rSpeed = rSpeed.replace(/s$/, '') * 1000;
    				cPanel = this.accordion.accordion( 'option', 'active' );
    				tPanel = this.accordion.children().length / 2 -1;
    
    				rotac = setInterval(function() {
    					self.accordion.accordion( 'activate', ( cPanel > tPanel ) ? 0 : cPanel++ );
    				}, rSpeed );
    
    				self.accordion.children(":nth-child(odd)").bind( 'click', function() {
    					clearInterval( rotac );
    				});
    			}
    
    		},
    		destroy		: function() {
    
    			this.header.unwrap();
    
    			this.header.attr( 'class', this.o.header.replace( /.{1,6}\./, '' ) );
    			this.header.siblings( this.o.content ).attr( 'class', this.o.content.replace( /.{1,6}\./, '' ) ).removeAttr( 'id' ).show();
    
    			$.Widget.prototype.destroy.call( this );
    		}
    
    	});
    
    })( jQuery );
    
    (function( $ ) {
    
    	////////////////////////////////////////////////////
    	//////////////////// WP Spoilers ///////////////////
    	///////////////////////////////////////////////////
    	if ( ! $.wpui ) $.wpui = {};
    
    	$.wpui._spoilerHashSet = false;
    
    	$.widget( 'wpui.wpspoiler', {
    		options : {
    			hideText : ( typeof wpUIOpts != "undefined" ) ? wpUIOpts.spoilerHideText : '',
    			showText : ( typeof wpUIOpts != "undefined" ) ? wpUIOpts.spoilerShowText : '',
    			fade	 : true,
    			slide	 : true,
    			speed	 : 600,
    			spanClass: '.toggle_text',
    			headerClass : 'h3.ui-collapsible-header',
    			openIconClass : 'ui-icon-triangle-1-s',
    			closeIconClass : 'ui-icon-triangle-1-e',
    			autoOpen : false
    		},
    
    		_create	: 	function() {
    			var base = this;
    			this._isOpen = false;
    			this._trigger( 'create' );
    			this._spoil();
    			this._hashSet = false;
    
    			// $.wpui.wpspoiler.instances.push( this.element );
    			$.wpui.wpspoiler.instances[ this.element.attr('id') ] = this.element;
    		},
    
    		_spoil : function( init ) {
    			var self = this;
    			self.o = this.options;
    			this._trigger( 'init' );
    			self.element.addClass( 'ui-widget ui-collapsible ui-helper-reset' );
    
    			this.header = this.element.children( 'h3' ).first();
    			this.content = this.header.next( 'div' );
    
    			this.header.prepend( '<span class="ui-icon ' + self.o.openIconClass + '" />' )
    					.append( '<span class="' + this._stripPre( self.o.spanClass )   + '" />');	
    
    			this.header.addClass( 'ui-collapsible-header ui-state-default ui-widget-header ui-helper-reset ui-corner-top ui-state-active' )
    					.children( self.o.spanClass )
    					.html( self.o.showText );
    
    			this.content
    				.addClass( 'ui-helper-reset ui-state-default ui-widget-content ui-collapsible-content ui-collapsible-hide' )
    				.wrapInner( '<div class="ui-collapsible-wrapper" />' );
    
    			this.animOpts = {};
    			if ( self.o.fade ) this.animOpts.opacity = 'toggle';
    			if ( self.o.slide ) this.animOpts.height = 'toggle';
    
    		},
    
    		_init : function() {
    			var self = this;
    			this._isOpen = false;
    
    			if ( this.header.data('showtext') )
    				this.options.showText = this.header.data( 'showtext' );
    			if ( this.header.data('hidetext') )
    				this.options.hideText = this.header.data( 'hidetext' );
    
    			// this.hashGo();		
    
    			if ( this.options.autoOpen || this.header.hasClass( 'open-true' ) ) this.toggle();
    
    			self.header.bind( 'click.wpspoiler', function() {
    				self.toggle();
    			})
    			.hover( function() { $( this ).toggleClass( 'ui-state-hover' ); });
    
    			this.content.find( '.close-spoiler' )
    				.wrapInner( '<span class="ui-button-text" />')
    				.addClass('ui-state-default ui-widget ui-corner-all ui-button-text-only' )
    				.click(function() {
    					self.toggle(); return false;
    				});			
    
    			self.toggle();
    
    		},
    		_stripPre : function( str ) {
    			return str.replace( /^(\.|#)/, '' );
    		},
    		toggle : function() {
    			var TxT = ( ! this.isOpen() ) ? this.options.showText : this.options.hideText;
    
    			this.header
    				.toggleClass( 'ui-corner-top ui-corner-all ui-state-active' )
    				.children( '.ui-icon' )
    				.toggleClass( this.options.openIconClass + ' ' + this.options.closeIconClass )
    				.siblings( 'span' )
    				.html( TxT );
    
    			this.animate();
    
    			if ( this.isOpen() ) {
    				this._trigger( 'close' );
    				this._isOpen = false;
    			} else {
    				this._trigger( 'open' );
    				this._isOpen = true;
    			}
    		},
    		open : function() {
    			if ( this.isOpen() ) this.toggle();
    		},
    		close : function() {
    			if ( ! this.isOpen() ) this.toggle();
    		},
    		animate : function() {
    			this.content.animate( this.animOpts, this.options.speed, this.options.easing, function() {
    			});
    		},
    		isOpen : function() {
    			return this._isOpen;
    		},
    
    		destroy : function() {
    
    			this.header
    				.removeClass( 'ui-collapsible-header ui-state-default ui-corner-all ui-helper-reset' )
    				.find( 'span' )
    				.remove();
    
    			this.header.unbind( 'click.wpspoiler' );
    
    			this.content
    				.children()
    				.unwrap()
    				.end()
    				.removeClass( 'ui-collapsible-content ui-corner-bottom ui-helper-reset');
    
    			this.removeClass( 'ui-collapsible ui-widget' );
    
    			$.Widget.prototype.destroy.call( this );
    		},
    		_getOtherInstances : function( dall ) {
    			var element = this.element,
    			all = dall || false;
    
    			if ( ! all  ) {
    				return $.grep( $.wpui.wpspoiler.instances, function( el ) {
    					return el != element;
    				});
    			} else {
    				return $.wpui.wpspoiler.instances;
    			}
    		},
    		_setOption : function( key, value ) {
    			this.options[ key ] = value;
    
    			switch( key ) {
    				case 'open':
    				case 'close':
    				case 'toggle':
    					this.toggle();
    					break;
    				case 'destroy':
    					this.destroy();
    					break;
    				case 'status':
    					return (this._isOpen() ? 'open' : 'closed' );
    					break;
    				case 'goto':
    					return this.hashGo( value );
    					break;
    			}
    		}
    	});
    
    	$.extend( $.wpui.wpspoiler, {
    		instances : {}
    	});
    
    	$.fn.wpspoilerHash = function() {
    		if ( $.wpui._spoilerHashSet ) return this;
    
    		$( window ).bind( 'hashchange', function() {
    			var some = $.bbq.getState(),
    			spoils = $.wpui.wpspoiler.instances;
    
    			if ( typeof( some ) == 'object' && typeof( spoils ) == 'object' ) {
    
    				for ( so in some ) {
    					if ( some[ so ] instanceof Array ) {
    						var i = some[so].length;
    						while( i-- ) {
    							if ( spoils[ some[ so ] ] )
    							spoils[ some[ so ][ i ] ].wpspoiler( so );
    						}
    					} else {
    						if ( spoils[ some[ so ] ] )
    						spoils[ some[so] ].wpspoiler( so );
    					}
    				}
    				return false;
    			}
    		});			
    
    		$( window ).trigger( 'hashchange' );
    
    		$.wpui._spoilerHashSet = true;
    
    		return this;
    	};
    
    	$.widget( 'wpui.wpuiClickReveal', {
    		options : {
    			spanClass : 'span.wpui-click-reveal',
    			showText : '<b>spoiler!</b>',
    			hideText : '<b>Hide</b>',
    			autoShow : false
    		},
    		_state : 'off',
    		instances : {},
    		_create : function() {
    			var self = this, el = this.element;
    			this.handle = $( '<span class="wpui-click-handle">' + this.options.showText + '</span>' )
    							.insertBefore( el );
    
    		},
    		_init : function() {
    			var self = this;
    			if ( ! this.options.autoShow ) {
    				this.element.toggle();
    				this._getState( 'off' );
    			} else {
    				this._getState('on');
    			}
    			this.handle.click( function() {
    				self.element.toggle( 'fast', function() {
    					self._getState( this._state == 'on' ? 'off' : 'on' );
    				});
    			});
    		},
    		_getState : function( stat ) {
    			if ( ! stat ) {
    				return this._state;
    			} else {
    				return this._state = stat;
    			}
    		},
    		_destroy : function() {
    
    		}
    	});	
    
    })( jQuery );
    jQuery( document ).ready(function() {
    		jQuery( '.wpui-click-reveal' ).wpuiClickReveal();
    });
    
    /**
     *	The included files and init below.
     */
    
    if(typeof String.prototype.trim !== 'function') {
      String.prototype.trim = function() {
        return this.replace(/^\s+|\s+$/g, '');
      }
    }
    
    if(!Array.indexOf){
    	Array.prototype.indexOf = function(obj){
    		for(var i=0; i<this.length; i++){
    			if(this[i]==obj){
    				return i;
    			}
    		}
    	}
    }
    
    /**
     * jQuery Cookie plugin
     *
     * Copyright (c) 2010 Klaus Hartl (stilbuero.de)
     * Dual licensed under the MIT and GPL licenses:
     * https://www.opensource.org/licenses/mit-license.php
     * https://www.gnu.org/licenses/gpl.html
     *
     */
    
    // TODO JsDoc
    
    /**
     * Create a cookie with the given key and value and other optional parameters.
     *
     * @example $.cookie('the_cookie', 'the_value');
     * @desc Set the value of a cookie.
     * @example $.cookie('the_cookie', 'the_value', { expires: 7, path: '/', domain: 'jquery.com', secure: true });
     * @desc Create a cookie with all available options.
     * @example $.cookie('the_cookie', 'the_value');
     * @desc Create a session cookie.
     * @example $.cookie('the_cookie', null);
     * @desc Delete a cookie by passing null as value. Keep in mind that you have to use the same path and domain
     *       used when the cookie was set.
     *
     * @param String key The key of the cookie.
     * @param String value The value of the cookie.
     * @param Object options An object literal containing key/value pairs to provide optional cookie attributes.
     * @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.
     *                             If a negative value is specified (e.g. a date in the past), the cookie will be deleted.
     *                             If set to null or omitted, the cookie will be a session cookie and will not be retained
     *                             when the the browser exits.
     * @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).
     * @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).
     * @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will
     *                        require a secure protocol (like HTTPS).
     * @type undefined
     *
     * @name $.cookie
     * @cat Plugins/Cookie
     * @author Klaus Hartl/[email protected]
     */
    
    /**
     * Get the value of a cookie with the given key.
     *
     * @example $.cookie('the_cookie');
     * @desc Get the value of a cookie.
     *
     * @param String key The key of the cookie.
     * @return The value of the cookie.
     * @type String
     *
     * @name $.cookie
     * @cat Plugins/Cookie
     * @author Klaus Hartl/[email protected]
     */
    jQuery.cookie = function (key, value, options) {
    
        // key and value given, set cookie...
        if (arguments.length > 1 && (value === null || typeof value !== "object")) {
            options = jQuery.extend({}, options);
    
            if (value === null) {
                options.expires = -1;
            }
    
            if (typeof options.expires === 'number') {
                var days = options.expires, t = options.expires = new Date();
                t.setDate(t.getDate() + days);
            }
    
            return (document.cookie = [
                encodeURIComponent(key), '=',
                options.raw ? String(value) : encodeURIComponent(String(value)),
                options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
                options.path ? '; path=' + options.path : '',
                options.domain ? '; domain=' + options.domain : '',
                options.secure ? '; secure' : ''
            ].join(''));
        }
    
        // key and possibly options given, get cookie...
        options = value || {};
        var result, decode = options.raw ? function (s) { return s; } : decodeURIComponent;
        return (result = new RegExp('(?:^|; )' + encodeURIComponent(key) + '=([^;]*)').exec(document.cookie)) ? decode(result[1]) : null;
    };
    
    if ( typeof wpUIOpts == 'object' && wpUIOpts.docWriteFix == 'on' ) {
    var docWriteTxt = "";
    
    jQuery(function() {
      document.write = function( dWT ) {
        docWriteTxt += dWT;
      }
      // document.write("");
      jQuery( docWriteTxt ).appendTo( 'body' );
    
    });
    } // END doc write fix.
    
    /*
     * jQuery BBQ: Back Button & Query Library - v1.2.1 - 2/17/2010
     * https://benalman.com/projects/jquery-bbq-plugin/
     *
     * Copyright (c) 2010 "Cowboy" Ben Alman
     * Dual licensed under the MIT and GPL licenses.
     * https://benalman.com/about/license/
     */
    (function($,p){var i,m=Array.prototype.slice,r=decodeURIComponent,a=$.param,c,l,v,b=$.bbq=$.bbq||{},q,u,j,e=$.event.special,d="hashchange",A="querystring",D="fragment",y="elemUrlAttr",g="location",k="href",t="src",x=/^.*\?|#.*$/g,w=/^.*\#/,h,C={};function E(F){return typeof F==="string"}function B(G){var F=m.call(arguments,1);return function(){return G.apply(this,F.concat(m.call(arguments)))}}function n(F){return F.replace(/^[^#]*#?(.*)$/,"$1")}function o(F){return F.replace(/(?:^[^?#]*\?([^#]*).*$)?.*/,"$1")}function f(H,M,F,I,G){var O,L,K,N,J;if(I!==i){K=F.match(H?/^([^#]*)\#?(.*)$/:/^([^#?]*)\??([^#]*)(#?.*)/);J=K[3]||"";if(G===2&&E(I)){L=I.replace(H?w:x,"")}else{N=l(K[2]);I=E(I)?l[H?D:A](I):I;L=G===2?I:G===1?$.extend({},I,N):$.extend({},N,I);L=a(L);if(H){L=L.replace(h,r)}}O=K[1]+(H?"#":L||!K[1]?"?":"")+L+J}else{O=M(F!==i?F:p[g][k])}return O}a[A]=B(f,0,o);a[D]=c=B(f,1,n);c.noEscape=function(G){G=G||"";var F=$.map(G.split(""),encodeURIComponent);h=new RegExp(F.join("|"),"g")};c.noEscape(",/");$.deparam=l=function(I,F){var H={},G={"true":!0,"false":!1,"null":null};$.each(I.replace(/\+/g," ").split("&"),function(L,Q){var K=Q.split("="),P=r(K[0]),J,O=H,M=0,R=P.split("]["),N=R.length-1;if(/\[/.test(R[0])&&/\]$/.test(R[N])){R[N]=R[N].replace(/\]$/,"");R=R.shift().split("[").concat(R);N=R.length-1}else{N=0}if(K.length===2){J=r(K[1]);if(F){J=J&&!isNaN(J)?+J:J==="undefined"?i:G[J]!==i?G[J]:J}if(N){for(;M<=N;M++){P=R[M]===""?O.length:R[M];O=O[P]=M<N?O[P]||(R[M+1]&&isNaN(R[M+1])?{}:[]):J}}else{if($.isArray(H[P])){H[P].push(J)}else{if(H[P]!==i){H[P]=[H[P],J]}else{H[P]=J}}}}else{if(P){H[P]=F?i:""}}});return H};function z(H,F,G){if(F===i||typeof F==="boolean"){G=F;F=a[H?D:A]()}else{F=E(F)?F.replace(H?w:x,""):F}return l(F,G)}l[A]=B(z,0);l[D]=v=B(z,1);$[y]||($[y]=function(F){return $.extend(C,F)})({a:k,base:k,iframe:t,img:t,input:t,form:"action",link:k,script:t});j=$[y];function s(I,G,H,F){if(!E(H)&&typeof H!=="object"){F=H;H=G;G=i}return this.each(function(){var L=$(this),J=G||j()[(this.nodeName||"").toLowerCase()]||"",K=J&&L.attr(J)||"";L.attr(J,a[I](K,H,F))})}$.fn[A]=B(s,A);$.fn[D]=B(s,D);b.pushState=q=function(I,F){if(E(I)&&/^#/.test(I)&&F===i){F=2}var H=I!==i,G=c(p[g][k],H?I:{},H?F:2);p[g][k]=G+(/#/.test(G)?"":"#")};b.getState=u=function(F,G){return F===i||typeof F==="boolean"?v(F):v(G)[F]};b.removeState=function(F){var G={};if(F!==i){G=u();$.each($.isArray(F)?F:arguments,function(I,H){delete G[H]})}q(G,2)};e[d]=$.extend(e[d],{add:function(F){var H;function G(J){var I=J[D]=c();J.getState=function(K,L){return K===i||typeof K==="boolean"?l(I,K):l(I,L)[K]};H.apply(this,arguments)}if($.isFunction(F)){H=F;return G}else{H=F.handler;F.handler=G}}})})(jQuery,this);
    
    /*
     * jQuery hashchange event - v1.2 - 2/11/2010
     * https://benalman.com/projects/jquery-hashchange-plugin/
     *
     * Copyright (c) 2010 "Cowboy" Ben Alman
     * Dual licensed under the MIT and GPL licenses.
     * https://benalman.com/about/license/
     */
    (function($,i,b){var j,k=$.event.special,c="location",d="hashchange",l="href",f=$.browser,g=document.documentMode,h=f.msie&&(g===b||g<8),e="on"+d in i&&!h;function a(m){m=m||i[c][l];return m.replace(/^[^#]*#?(.*)$/,"$1")}$[d+"Delay"]=100;k[d]=$.extend(k[d],{setup:function(){if(e){return false}$(j.start)},teardown:function(){if(e){return false}$(j.stop)}});j=(function(){var m={},r,n,o,q;function p(){o=q=function(s){return s};if(h){n=$('<iframe src="javascript:0"/>').hide().insertAfter("body")[0].contentWindow;q=function(){return a(n.document[c][l])};o=function(u,s){if(u!==s){var t=n.document;t.open().close();t[c].hash="#"+u}};o(a())}}m.start=function(){if(r){return}var t=a();o||p();(function s(){var v=a(),u=q(t);if(v!==t){o(t=v,u);$(i).trigger(d)}else{if(u!==t){i[c][l]=i[c][l].replace(/#.*/,"")+"#"+u}}r=setTimeout(s,$[d+"Delay"])})()};m.stop=function(){if(!n){r&&clearTimeout(r);r=0}};return m})()})(jQuery,this);
    
    jQuery.fn.extend({
        hashchange : function(fn) {
            return fn ? this.bind("hashchange", fn) : this.trigger("hashchange");
        }
    });
    
    /*
     *	JSON Library
     *	https://github.com/douglascrockford/JSON-js/blob/master/json2.js
     */
    var JSON;if(!JSON){JSON={};}
    (function(){"use strict";function f(n){return n<10?'0'+n:n;}
    if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+
    f(this.getUTCMonth()+1)+'-'+
    f(this.getUTCDate())+'T'+
    f(this.getUTCHours())+':'+
    f(this.getUTCMinutes())+':'+
    f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}
    var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
    function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}
    if(typeof rep==='function'){value=rep.call(holder,key,value);}
    switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
    gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}
    v=partial.length===0?'[]':gap?'[\n'+gap+partial.join(',\n'+gap)+'\n'+mind+']':'['+partial.join(',')+']';gap=mind;return v;}
    if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){if(typeof rep[i]==='string'){k=rep[i];v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}
    v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}
    if(typeof JSON.stringify!=='function'){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}
    rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}
    return str('',{'':value});};}
    if(typeof JSON.parse!=='function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.prototype.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}
    return reviver.call(holder,key,value);}
    text=String(text);cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+
    ('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}
    if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}
    throw new SyntaxError('JSON.parse');};}}());
    
    /* Copyright (c) 2009 Brandon Aaron (https://brandonaaron.net)
     * Dual licensed under the MIT (https://www.opensource.org/licenses/mit-license.php)
     * and GPL (https://www.opensource.org/licenses/gpl-license.php) licenses.
     * Thanks to: https://adomas.org/javascript-mouse-wheel/ for some pointers.
     * Thanks to: Mathias Bank(https://www.mathias-bank.de) for a scope bug fix.
     *
     * Version: 3.0.2
     *
     * Requires: 1.2.2+
     */
    (function(c){var a=["DOMMouseScroll","mousewheel"];c.event.special.mousewheel={setup:function(){if(this.addEventListener){for(var d=a.length;d;){this.addEventListener(a[--d],b,false)}}else{this.onmousewheel=b}},teardown:function(){if(this.removeEventListener){for(var d=a.length;d;){this.removeEventListener(a[--d],b,false)}}else{this.onmousewheel=null}}};c.fn.extend({mousewheel:function(d){return d?this.bind("mousewheel",d):this.trigger("mousewheel")},unmousewheel:function(d){return this.unbind("mousewheel",d)}});function b(f){var d=[].slice.call(arguments,1),g=0,e=true;f=c.event.fix(f||window.event);f.type="mousewheel";if(f.wheelDelta){g=f.wheelDelta/120}if(f.detail){g=-f.detail/3}d.unshift(f,g);return c.event.handle.apply(this,d)}})(jQuery);
    
    /**
     *	Init the scripts.
     */
    jQuery(document).ready(function( $ ) {
    
    	if ( typeof wpUIOpts == 'object' ) {
    		if ( wpUIOpts.enablePagination == 'on' &&
    		 	typeof jQuery.fn.wpuiPager == 'function' )
    			jQuery( 'div.wpui-pages-holder' ).wpuiPager();
    
    		if ( wpUIOpts.enableTabs == 'on' &&
    			 	typeof jQuery.fn.wptabs == 'function')
    			jQuery('div.wp-tabs').wptabs();
    
    		if ( wpUIOpts.enableSpoilers == 'on' &&
    			 	typeof jQuery.fn.wpspoiler == 'function')
    			jQuery('.wp-spoiler').wpspoiler();
    
    		if ( wpUIOpts.enableAccordion == 'on' &&
    			 	typeof jQuery.fn.wpaccord == 'function')
    			jQuery('.wp-accordion').wpaccord();
    	}
    
    });

Viewing 2 replies - 1 through 2 (of 2 total)
  • The topic ‘Not working with WPML’ is closed to new replies.