protected function _getScript_RegisterCallbacks()
{
$_aJSArray = json_encode($this->aFieldTypeSlugs);
return <<<JAVASCRIPTS
jQuery( document ).ready( function(){
jQuery().registerAdminPageFrameworkCallbacks( {
/**
* Called when a field of this field type gets repeated.
*/
repeated_field: function( oCloned, aModel ) {
// Update attributes.
oCloned.find( '.select_media' ).incrementAttribute(
'id', // attribute name
aModel[ 'incremented_from' ], // index incremented from
aModel[ 'id' ] // digit model
);
// Bind the event.
var _oMediaInput = oCloned.find( '.media-field input' );
if ( _oMediaInput.length <= 0 ) {
return true;
}
setAdminPageFrameworkMediaUploader(
_oMediaInput.attr( 'id' ),
true,
oCloned.find( '.select_media' ).attr( 'data-enable_external_source' )
);
},
},
{$_aJSArray}
);
});
JAVASCRIPTS;
}