1/* 2* MULTIPLE TEXT FIELDS 3*/ 4jQuery('[data-behaviour~=multiple-text]').each( function(){ 5 var $el = jQuery( this ), 6 count = 0, 7 field = $el.data('field'); 8 9 function init(){ 10 11 var $wrapper = jQuery( document.createElement('div') ); 12 $wrapper.addClass('wrapper'); 13 $wrapper.appendTo( $el ); 14 15 var $wrapperButton = jQuery( document.createElement('div') ); 16 $wrapperButton.addClass('wrapperButton'); 17 $wrapperButton.appendTo( $el ); 18 19 createAddButton(); 20 21 createSingleField(); 22 } 23 24 25 function createSingleField(){ 26 27 var $parent = jQuery( document.createElement('div') ); 28 $parent.addClass('multi-field-wrapper'); 29 $parent.appendTo( $el.find('.wrapper') ); 30 31 var $input = jQuery( document.createElement('input') ); 32 $input.attr( 'type', 'text' ); 33 $input.attr( 'placeholder', field['label'] ? field['label'] : "" ); 34 $input.attr( 'name', field['name'] + '[]' ); 35 $input.appendTo( $parent ); 36 }; 37 38 function createAddButton(){ 39 40 var $btn = jQuery( document.createElement('button') ); 41 $btn.attr( 'type', 'button' ); 42 $btn.addClass('add-btn'); 43 $btn.html( field['btn_text'] ? field['btn_text'] : 'Add Another'); 44 $btn.appendTo( $el.find('.wrapperButton') ); 45 46 $btn.click( function(){ 47 count++; 48 //checks the total number of file fields 49 var countImage = jQuery('.multi-field-wrapper').length; 50 if( count <= 4 ){ 51 createSingleField(); 52 } 53 }); 54 55 }; 56 57 init(); 58 59}); 60 61/* 62* MULTIPLE IMAGE UPLOADS 63*/ 64jQuery('[data-behaviour~=orbit-field-files]').each(function(){ 65 66 var $el = jQuery( this ); 67 68 var $images_list = jQuery( document.createElement('ul') ); 69 $images_list.addClass( 'orbit-images-preview orbit-list-inline' ); 70 $images_list.appendTo( $el.parent() ); 71 72 function addImage( src ){ 73 var $item = jQuery( document.createElement( 'li' ) ); 74 $item.appendTo( $images_list ); 75 76 var $img = jQuery( document.createElement( 'img' ) ); 77 $img.attr( 'src', src ); 78 $img.appendTo( $item ); 79 } 80 81 function readURL(input) { 82 if( input.files ){ 83 84 // EMPTY THE EXISTING IMAGES 85 $images_list.html(''); 86 87 jQuery.each( input.files, function( j, single_file ){ 88 var reader = new FileReader(); 89 90 reader.onload = function (e) { addImage( e.target.result ); } 91 92 // ONLY ADD IMAGES 93 if( single_file.type.indexOf( 'image' ) !== -1 ){ reader.readAsDataURL( single_file ); } 94 }); 95 } 96 } 97 98 $el.change( function(){ readURL( this ); }); 99});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.