| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- (function($){
- FLBuilder.registerModuleHelper('audio', {
- init: function()
- {
- var form = $('.fl-builder-settings'),
- type = form.find('select[name=audio_type]'),
- audioField = form.find('input[name=audios]');
- type.on('change', $.proxy(this._audioFieldChanged, this));
- audioField.on('change', $.proxy(this._audioFieldChanged, this));
- this._audioFieldChanged();
- },
- _audioFieldChanged: function()
- {
- var form = $('.fl-builder-settings'),
- audio = form.find('input[name=audios]'),
- count = audio.val() == '' ? 0 : parseInt(JSON.parse(audio.val()).length),
- type = form.find('select[name=audio_type]').val(),
- toggle = form.find('.fl-multiple-audios-field').attr('data-toggle'),
- playlistFields = [],
- singleAudioFields = [],
- i = 0;
- if (typeof toggle !== 'undefined') {
- toggle = JSON.parse(toggle);
- playlistFields = toggle['playlist'].fields;
- singleAudioFields = toggle['single_audio'].fields;
- // Only show playlist options if user selected more than one files
- if (count > 1 && type == 'media_library') {
- this._showhide(singleAudioFields, 'hide');
- this._showhide(playlistFields, 'show');
- }
- else if ((count == 1 && type == 'media_library') || (type == 'link')) {
- this._showhide(playlistFields, 'hide');
- this._showhide(singleAudioFields, 'show');
- }
- else {
- // Hide by default
- this._showhide(playlistFields, 'hide');
- this._showhide(singleAudioFields, 'hide');
- }
- }
- },
- _showhide: function(fieldArray, method) {
- var i = 0;
- if(typeof fieldArray !== 'undefined') {
- for( ; i < fieldArray.length; i++) {
- $('#fl-field-' + fieldArray[i])[method]();
- }
- }
- }
- });
- })(jQuery);
|