-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathmailchimp.js
36 lines (29 loc) · 1.15 KB
/
mailchimp.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
angular.module('cg.mailchimp', [])
.provider('CgMailChimpService', function () {
var config = { username: '', dc: '', u: '', id:''};
this.setConfig = function (cfg) {
config = cfg;
};
this.$get = function ($http, $q) {
var url = 'https://'+ config.username + '.'+config.dc +'.list-manage.com/subscribe/post-json';
return {
subscribe: function (data) {
var defer = $q.defer();
var params = angular.extend(data, {u: config.u, id: config.id, c:'JSON_CALLBACK'});
$http({
url: url,
params: params,
method: 'JSONP'
}).then(function (data) {
if(data.data.result === 'success')
defer.resolve(data.data);
else
defer.reject(data.data);
}, function (err) {
defer.reject(err)
});
return defer.promise;
}
}
}
});