(function($){
var repeater = {
$el : null,
set : function( o ){
// merge in new option
$.extend( this, o );
// return this for chaining
return this;
},
init : function(){
this.render();
},
render : function(){
// vars
var id = this.$el.attr('data-id'),
layout = 'table';
// find layout value
if( this.$el.find('input[name="fields[' + id + '][layout]"]:checked').length > 0 )
{
layout = this.$el.find('input[name="fields[' + id + '][layout]"]:checked').val();
}
// add class
this.$el.find('.repeater:first').removeClass('layout-row layout-table').addClass( 'layout-' + layout );
}
};
/*
* Document Ready
*
* description
*
* @type function
* @date 18/08/13
*
* @param $post_id (int)
* @return $post_id (int)
*/
$(document).ready(function(){
$('.field_type-repeater').each(function(){
repeater.set({ $el : $(this) }).init();
});
});
/*
* Events
*
* jQuery events for this field
*
* @type function
* @date 1/03/2011
*
* @param N/A
* @return N/A
*/
$(document).on('click', '.field_option_repeater_layout input[type="radio"]', function( e ){
repeater.set({ $el : $(this).closest('.field_type-repeater') }).render();
});
$(document).on('acf/field_form-open', function(e, field){
// vars
$el = $(field);
if( $el.hasClass('field_type-repeater') )
{
repeater.set({ $el : $el }).render();
}
});
})(jQuery);