-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathemail.js
35 lines (35 loc) · 939 Bytes
/
email.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
var Email = {
send: function(a) {
return new Promise(function(n, e) {
a.nocache = Math.floor(1e6 * Math.random() + 1),
a.Action = 'Send';
var t = JSON.stringify(a);
Email.ajaxPost('https://smtpjs.com/v3/smtpjs.aspx?', t,
function(e) {
n(e)
})
})
},
ajaxPost: function(e, n, t) {
var a = Email.createCORSRequest('POST', e);
a.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'),
a.onload = function() {
var e = a.responseText;
null != t && t(e)
},
a.send(n)
},
ajax: function(e, n) {
var t = Email.createCORSRequest('GET', e);
t.onload = function() {
var e = t.responseText;
null != n && n(e)
},
t.send()
},
createCORSRequest: function(e, n) {
var t = new XMLHttpRequest;
return 'withCredentials' in t ? t.open(e, n, !0) : 'undefined' != typeof XDomainRequest ? (t = new XDomainRequest).open(e, n) : t = null,
t
}
};