1jQuery.widget( 'gc.editableImage', { 2 options: {}, 3 _create: function () { 4 let self = this; 5 6 let saveUrl = this.element.data('save-url'); 7 8 9 let $buttonsBlock = $('<div class="buttons-block"></div>'); 10 if ( saveUrl ) { 11 $buttonsBlock.appendTo(this.element); 12 $buttonsBlock.hide(); 13 } 14 15 let $btnSave = $('<button type="button" class="btn btn-success">Save</button>'); 16 $btnSave.appendTo($buttonsBlock); 17 18 let $btnCancel = $('<button type="button" class="btn btn-default btn-cancel">Cancel</button>'); 19 $btnCancel.appendTo($buttonsBlock); 20 21 let $input = this.element.find('input'); 22 23 this.value = $input.val(); 24 let inputName = $input.attr('name'); 25 26 if ( saveUrl ) { 27 $input.change(function () { 28 $buttonsBlock.show(); 29 }); 30 } 31 32 $btnCancel.click( function() { 33 $input.gcFileWidget( 'setValue', self.value ); 34 $buttonsBlock.hide(); 35 }); 36 37 let callback = function() { 38 $buttonsBlock.hide(); 39 }; 40 41 $btnSave.click( function() { 42 self.value = $input.val(); 43 if ( saveUrl ) { 44 let data = {}; 45 data[inputName] = self.value; 46 ajaxCall(saveUrl, data, {}, function( response ) { 47 callback(); 48 }); 49 } 50 else { 51 callback(); 52 } 53 54 }); 55 } 56}); 57 58$( function() { 59 $('.editable-image').editableImage(); 60});
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.