Index: typo3/sysext/rtehtmlarea/htmlarea/locallang_msg.xml =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/locallang_msg.xml (révision 8902) +++ typo3/sysext/rtehtmlarea/htmlarea/locallang_msg.xml (copie de travail) @@ -15,8 +15,8 @@ - - + + Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/CopyPaste/copy-paste.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/CopyPaste/copy-paste.js (révision 8902) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/CopyPaste/copy-paste.js (copie de travail) @@ -444,32 +444,38 @@ * Mozilla clipboard access exception handler */ mozillaClipboardAccessException: function () { - if (this.buttonsConfiguration.paste && this.buttonsConfiguration.paste.mozillaAllowClipboardURL) { - if (confirm(this.localize('Allow-Clipboard-Helper-Extension'))) { - if (InstallTrigger.enabled()) { - var mozillaXpi = new Object(); - mozillaXpi['AllowClipboard Helper'] = this.buttonsConfiguration.paste.mozillaAllowClipboardURL; - InstallTrigger.install(mozillaXpi, this.mozillaInstallCallback); - } else { - alert(this.localize('Mozilla-Org-Install-Not-Enabled')); - this.appendToLog('mozillaClipboardAccessException', 'Mozilla install was not enabled.'); - return; + if (InstallTrigger && this.buttonsConfiguration.paste && this.buttonsConfiguration.paste.mozillaAllowClipboardURL) { + Ext.MessageBox.confirm('', this.localize('Allow-Clipboard-Helper-Extension'), function (button) { + if (button == 'yes') { + if (InstallTrigger.enabled()) { + var self = this; + function mozillaInstallCallback(url, returnCode) { + if (returnCode == 0) { + Ext.MessageBox.alert('', self.localize('Allow-Clipboard-Helper-Extension-Success')); + } else { + Ext.MessageBox.alert('', self.localize('Moz-Extension-Failure')); + self.appendToLog('mozillaInstallCallback', 'Mozilla install return code was: ' + returnCode + '.'); + } + return; + } + var mozillaXpi = new Object(); + mozillaXpi['AllowClipboard Helper'] = this.buttonsConfiguration.paste.mozillaAllowClipboardURL; + InstallTrigger.install(mozillaXpi, mozillaInstallCallback); + } else { + Ext.MessageBox.alert('', this.localize('Mozilla-Org-Install-Not-Enabled')); + this.appendToLog('mozillaClipboardAccessException', 'Mozilla install was not enabled.'); + } } + }, this); + } else { + Ext.MessageBox.confirm('', this.localize('Moz-Clipboard'), function (button) { + if (button == 'yes') { + window.open('http://mozilla.org/editor/midasdemo/securityprefs.html'); + } + }, this); + if (!InstallTrigger) { + this.appendToLog('mozillaClipboardAccessException', 'Firefox InstallTrigger was not defined.'); } - } else if (confirm(this.localize('Moz-Clipboard'))) { - window.open('http://mozilla.org/editor/midasdemo/securityprefs.html'); } - }, - /* - * Mozilla Add-on installer call back - */ - mozillaInstallCallback: function (url, returnCode) { - if (returnCode == 0) { - alert(this.localize('Allow-Clipboard-Helper-Extension-Success')); - } else { - alert(this.localize('Moz-Extension-Failure')); - this.appendToLog('mozillaInstallCallback', 'Mozilla install return code was: ' + returnCode + '.'); - } - return; } });