Htk.ImageEditor = new Class ({ Extends: Htk.Widget ,Xml: 'js/htk/image-editor.xml' ,initialize: function () { this.builderInit (Htk.ImageEditor.Xml); this.$('max-size').value = 10 /* MB */ * 1048576; } ,onNameChange: function () { this.signalEmit ('name-changed', this.$('name').value); } ,onFormSubmit: function () { this.$('submit').disabled = true; this.$('loader').style.visibility = 'visible'; } ,onIframeLoad: function () { var toast = new Htk.Toast (); this.$('submit').disabled = false; this.$('loader').style.visibility = 'hidden'; try { var responseText = this.$('iframe').contentDocument.body.textContent; var response = eval ('('+ responseText +')'); if (response.data) { this.signalEmit ('file-uploaded', this.$('name').value); toast.showMessage (_('ImageAdded')); } else toast.showError (response.error.message +' ('+ response.error.code +')'); } catch (e) {} } ,setData: function (image, directory) { this.$('name').value = image; this.$('schema').value = directory; } });