-
Notifications
You must be signed in to change notification settings - Fork 0
/
jquery.newsletter2go.js
122 lines (113 loc) · 3.9 KB
/
jquery.newsletter2go.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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
;(function ($) {
'use strict';
function getQueryVariable(variable) {
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i=0;i<vars.length;i++) {
var pair = vars[i].split("=");
if (pair[0] == variable) {
return pair[1];
}
}
// console.log('Query Variable ' + variable + ' not found');
return false
}
!function (e, t, n, c, r, a, i) {
e.Newsletter2GoTrackingObject = r,
e[r] = e[r] || function () {
(e[r].q = e[r].q || []).push(arguments)
},
e[r].l = 1 * new Date,
a = t.createElement(n),
i = t.getElementsByTagName(n)[0],
a.async = 1,
a.src = c,
i.parentNode.insertBefore(a, i)
}(window, document, "script", "https://static.newsletter2go.com/utils.js", "n2g");
// var config = {
// "container": {
// "type": "div",
// "class": "",
// "style": ""
// },
// "row": {
// "type": "div",
// "class": "",
// "style": "margin-top: 15px;"
// },
// "columnLeft": {
// "type": "div",
// "class": "",
// "style": ""
// },
// "columnRight": {
// "type": "div",
// "class": "",
// "style": ""
// },
// "label": {
// "type": "label",
// "class": "",
// "style": ""
// }
// };
n2g('create', 'xxxxxxxx-xxxxxxxx-xxx');
// n2g('subscribe:createForm', config);
$.overridePlugin('swNewsletter', {
submit: function(e) {
var me = this;
// Stop if it's the Newsletter Form with action attribute.
if (me.$form.attr("action")) { return }
e.preventDefault();
var formData = me.$form.serializeArray();
// Hide previous messages
me.$el.find("#n2g-message > p:not('.is--hidden')").addClass("is--hidden");
if (getQueryVariable("signout")) {
var recipient = {
email: formData.find(function(x) {return x.name == "newsletter"}).value,
}
n2g(
'unsubscribe:send', {
recipient: recipient
},
function(data) {
if (data.status == 201) {
me.$el.find("#n2g-message .signout").removeClass("is--hidden");
} else if (data.status == 200) {
me.$el.find("#n2g-message .signout-invalid").removeClass("is--hidden");
} else {
me.$el.find("#n2g-message .error").removeClass("is--hidden");
}
},
function(data) {
me.$el.find("#n2g-message .error").removeClass("is--hidden");
}
)
} else {
var recipient = {
email: formData.find(function(x) {return x.name == "newsletter"}).value,
first_name: formData.find(function(x) {return x.name == "firstname"}).value,
last_name: formData.find(function(x) {return x.name == "lastname"}).value,
gender: formData.find(function(x) {return x.name == "geschlecht"}).value,
}
n2g(
'subscribe:send', {
recipient: recipient
},
function(data) {
if (data.status == 201) {
me.$el.find("#n2g-message .success").removeClass("is--hidden");
} else if (data.status == 200) {
me.$el.find("#n2g-message .already-signedup").removeClass("is--hidden");
} else {
me.$el.find("#n2g-message .error").removeClass("is--hidden");
}
},
function(data) {
me.$el.find("#n2g-message .error").removeClass("is--hidden");
}
)
}
}
});
}(jQuery));