| | |
| | | |
| | | if (!aborted && this.triggerEvent('after'+command, props) === false) |
| | | ret = false; |
| | | this.triggerEvent('actionafter', { props:props, action:command, aborted:aborted }); |
| | | this.triggerEvent('actionafter', { props:props, action:command, aborted:aborted, ret:ret }); |
| | | |
| | | return ret === false ? false : obj ? false : true; |
| | | }; |
| | |
| | | // enable encrypted compose toggle |
| | | this.enable_command('compose-encrypted', !is_html); |
| | | } |
| | | |
| | | // make sure to disable encryption button after toggling editor into HTML mode |
| | | this.addEventListener('actionafter', function(args) { |
| | | if (args.ret && args.action == 'toggle-editor') |
| | | ref.enable_command('compose-encrypted', !args.props.html); |
| | | }); |
| | | } |
| | | }; |
| | | |
| | |
| | | |
| | | // list recipients with missing keys |
| | | if (!isvalid && missing_keys.length) { |
| | | // load publickey.js |
| | | if (!$('script#publickeyjs').length) { |
| | | $('<script>') |
| | | .attr('id', 'publickeyjs') |
| | | .attr('src', ref.assets_path('program/js/publickey.js')) |
| | | .appendTo(document.body); |
| | | } |
| | | |
| | | // display dialog with missing keys |
| | | ref.show_popup_dialog( |
| | | ref.get_label('nopubkeyfor').replace('$email', missing_keys.join(', ')) + |
| | |
| | | if (result) { |
| | | // update internal format flag |
| | | $("input[name='_is_html']").val(props.html ? 1 : 0); |
| | | // enable encrypted compose toggle |
| | | this.enable_command('compose-encrypted', !props.html); |
| | | } |
| | | |
| | | return result; |
| | |
| | | var url = '?_task=utils&_action=' + (format == 'html' ? 'html2text' : 'text2html'), |
| | | lock = this.set_busy(true, 'converting'); |
| | | |
| | | this.log('HTTP POST: ' + url); |
| | | |
| | | $.ajax({ type: 'POST', url: url, data: text, contentType: 'application/octet-stream', |
| | | error: function(o, status, err) { ref.http_error(o, status, err, lock); }, |
| | | success: function(data) { |
| | |
| | | if (response.env) |
| | | this.set_env(response.env); |
| | | |
| | | var i; |
| | | |
| | | // we have labels to add |
| | | if (typeof response.texts === 'object') { |
| | | for (var name in response.texts) |
| | | if (typeof response.texts[name] === 'string') |
| | | this.add_label(name, response.texts[name]); |
| | | for (i in response.texts) |
| | | if (typeof response.texts[i] === 'string') |
| | | this.add_label(i, response.texts[i]); |
| | | } |
| | | |
| | | // if we get javascript code from server -> execute it |
| | | if (response.exec) { |
| | | this.log(response.exec); |
| | | eval(response.exec); |
| | | } |
| | | |
| | | // execute callback functions of plugins |
| | | if (response.callbacks && response.callbacks.length) { |
| | | for (var i=0; i < response.callbacks.length; i++) |
| | | for (i=0; i < response.callbacks.length; i++) |
| | | this.triggerEvent(response.callbacks[i][0], response.callbacks[i][1]); |
| | | } |
| | | |