From 186068077bc59713d23143bdae2e916ce7775342 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Sat, 20 Nov 2010 23:45:31 +0300 Subject: rework email article dialog --- viewfeed.js | 85 +++++++++++++++++++++++++++++-------------------------------- 1 file changed, 41 insertions(+), 44 deletions(-) (limited to 'viewfeed.js') diff --git a/viewfeed.js b/viewfeed.js index bee13f5a7..d14d98180 100644 --- a/viewfeed.js +++ b/viewfeed.js @@ -1869,61 +1869,58 @@ function emailArticle(id) { id = ids.toString(); } - displayDlg('emailArticle', id, - function () { - document.forms['article_email_form'].destination.focus(); + if (dijit.byId("emailArticleDlg")) + dijit.byId("emailArticleDlg").destroyRecursive(); - new Ajax.Autocompleter('destination', 'destination_choices', - "backend.php?op=rpc&subop=completeEmails", - { tokens: '', paramName: "search" }); + var query = "backend.php?op=dlg&id=emailArticle¶m=" + param_escape(id); - }); - - } catch (e) { - exception_error("emailArticle", e); - } -} + dialog = new dijit.Dialog({ + id: "emailArticleDlg", + title: __("Forward article by email"), + style: "width: 600px", + execute: function() { + if (this.validate()) { -function emailArticleDo() { - try { - var f = document.forms['article_email_form']; - - if (f.destination.value == "") { - alert("Please fill in the destination email."); - return; - } - - if (f.subject.value == "") { - alert("Please fill in the subject."); - return; - } - - var query = Form.serialize("article_email_form"); + new Ajax.Request("backend.php", { + parameters: dojo.objectToQuery(this.attr('value')), + onComplete: function(transport) { + + var error = transport.responseXML.getElementsByTagName('error')[0]; + + if (error) { + alert(__('Error sending email:') + ' ' + error.firstChild.nodeValue); + } else { + notify_info('Your message has been sent.'); + dialog.hide(); + } + + } }); + } + }, + href: query}); -// console.log(query); + var tmph = dojo.connect(dialog, 'onLoad', function() { + dojo.disconnect(tmph); - new Ajax.Request("backend.php", { - parameters: query, - onComplete: function(transport) { - try { + new Ajax.Autocompleter('emailArticleDlg_destination', 'emailArticleDlg_dst_choices', + "backend.php?op=rpc&subop=completeEmails", + { tokens: '', paramName: "search" }); + }); - var error = transport.responseXML.getElementsByTagName('error')[0]; + dialog.show(); - if (error) { - alert(__('Error sending email:') + ' ' + error.firstChild.nodeValue); - } else { - notify_info('Your message has been sent.'); - closeInfoBox(); - } + /* displayDlg('emailArticle', id, + function () { + document.forms['article_email_form'].destination.focus(); - } catch (e) { - exception_error("sendEmailDo", e); - } + new Ajax.Autocompleter('destination', 'destination_choices', + "backend.php?op=rpc&subop=completeEmails", + { tokens: '', paramName: "search" }); - } }); + }); */ } catch (e) { - exception_error("emailArticleDo", e); + exception_error("emailArticle", e); } } -- cgit v1.2.3