app/assets/javascripts/binda/components/sortable.js in binda-0.1.1 vs app/assets/javascripts/binda/components/sortable.js in binda-0.1.2
- old
+ new
@@ -47,30 +47,11 @@
// If there is a sortable toggle button prepare the sortable items accordingly
if ( $('.sortable--toggle').length > 0 ) { setupSortableToggle() }
// Add event to any sortable toggle button
// TODO: make this event available to element which aren't standard form repeaters
- $(document).on('click', '.standard-form--repeater .sortable--toggle', function( event )
- {
- event.preventDefault()
- let id = '#' + $( this ).data('repeater-id')
-
- if ( $( id ).hasClass('sortable--disabled') )
- {
- $( id ).sortable('enable')
- $( id ).find('.form-item--repeater-fields').each(close)
- $( id ).find('.form-item--collapsable').addClass('form-item--collapsed')
- }
- else
- {
- $( id ).sortable('disable')
- }
-
- $( id ).toggleClass('sortable--disabled')
- $( id ).toggleClass('sortable--enabled')
- $( this ).children('.sortable--toggle-text').toggle()
- })
+ $(document).on('click', '.standard-form--repeater .sortable--toggle', toggleSortable)
}
function setupSortableToggle()
{
@@ -88,6 +69,27 @@
}
function open()
{
this.style.maxHeight = this.scrollHeight + "px";
+}
+
+function toggleSortable(event)
+{
+ event.preventDefault()
+ let id = '#' + $( this ).data('repeater-id')
+
+ if ( $( id ).hasClass('sortable--disabled') )
+ {
+ $( id ).sortable('enable')
+ $( id ).find('.form-item--repeater-fields').each(close)
+ $( id ).find('.form-item--collapsable').addClass('form-item--collapsed')
+ }
+ else
+ {
+ $( id ).sortable('disable')
+ }
+
+ $( id ).toggleClass('sortable--disabled')
+ $( id ).toggleClass('sortable--enabled')
+ $( this ).children('.sortable--toggle-text').toggle()
}
\ No newline at end of file