public function _getInternalScript($aPointers = array())
{
$_aJSArray = json_encode($aPointers);
return <<<JAVASCRIPTS
( function( jQuery ) {
jQuery( document ).ready( function( jQuery ) {
jQuery.each( {$_aJSArray}, function( iIndex, _aPointer ) {
var _aOptions = jQuery.extend( _aPointer.options, {
close: function() {
jQuery.post( ajaxurl, {
pointer: _aPointer.pointer_id,
action: 'dismiss-wp-pointer'
});
}
});
jQuery.each( _aPointer.target, function( iIndex, _sTarget ) {
var _oTarget = jQuery( _sTarget );
if ( _oTarget.length <= 0 ) {
return true; // skip
}
var _oResult = jQuery( _sTarget ).pointer( _aOptions ).pointer( 'open' );
if ( _oResult.length > 0 ) {
return false; // escape to ensure no same item gets displayed in one screen
}
});
});
});
}( jQuery ));
JAVASCRIPTS;
}