Skip to content

Commit bab2ee8

Browse files
committed
Implementado ...
1 parent 9f16ae1 commit bab2ee8

File tree

7 files changed

+61
-17
lines changed

7 files changed

+61
-17
lines changed

client/src/components/lists/lists-view.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
</div>
2626
</td>
2727
<td>
28-
<a :href="'#/leads/' + lead._id" class="btn"></a>
28+
<a :href="'#/leads/' + lead._id" class="btn">ver</a>
2929
</td>
3030
</tr>
3131
</tbody>

server/src/controllers/leads.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,8 @@ module.exports = function() {
8080
};
8181

8282
controller.leadsByList = function(res, req) {
83-
console.log('leadsByList',req.params.id);
83+
console.log('req.params',req);
84+
8485
let lists = req.params.id.split(',');
8586

8687
model

server/src/controllers/tracking.js

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,47 @@ const leadModel = require('../models/lead');
44
module.exports = function () {
55
let open = function (req, res) {
66
let campaignId = req.params.id;
7-
let leadId = req.params.id;
7+
let leadId = req.params.leadid;
8+
9+
campaignModel.findById(campaignId, function (err, campaign) {
10+
if (err) {
11+
return err;
12+
}
13+
campaign.opens += 1;
14+
campaign.save();
15+
});
16+
17+
leadModel.findById(leadId, function (err, lead) {
18+
if (err) {
19+
return err;
20+
}
21+
22+
if (!lead) {
23+
return;
24+
}
25+
26+
let actions = lead.actions;
27+
actions.push({
28+
campaign: campaignId,
29+
actions: [{
30+
typeAction: 'open',
31+
link: '',
32+
date: new Date()
33+
}]
34+
});
35+
36+
lead.actions = actions;
37+
lead.save();
38+
});
39+
40+
let buf = new Buffer(35);
41+
res.writeHead(200, {'Content-Type': 'image/gif'});
42+
res.end(buf, 'binary');
843
};
944

1045
let click = function (req, res) {
1146
let campaignId = req.params.id;
12-
let leadId = req.params.id;
47+
let leadId = req.params.leadid;
1348
};
1449

1550
let controller = {

server/src/models/campaign.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ const Campaign = mongoose.Schema({
77
status: String,
88
start: { type: Date, required: true },
99
opens: { type: Number, default: 0 },
10-
click: { type: Number, default: 0 },
10+
clicks: { type: Number, default: 0 },
1111
unsubscribe: { type: Number, default: 0 },
1212
bounce: { type: Number, default: 0 },
1313
lists: [

server/src/models/lead.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,13 @@ const Lead = mongoose.Schema({
1212
lists: [{type: ObjectId, ref: "List" }],
1313
actions: [
1414
{
15-
type: ObjectId,
16-
ref: "List",
15+
campaign: {
16+
type: ObjectId,
17+
ref: "List"
18+
},
1719
action: [
1820
{
19-
type: String,
21+
typeAction: String,
2022
link: String,
2123
date: Date
2224
}

server/src/routes/leads.js

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
module.exports = function(app) {
2-
let controller = require("../controllers/leads")();
1+
module.exports = function (app) {
2+
let controller = require("../controllers/leads")();
33

4-
app.post("/leads/subscribe", controller.subscribe);
4+
app.post("/leads/subscribe", controller.subscribe);
55

6-
app.get('/api/leads-by-list/:id', controller.leadsByList);
7-
app.get("/api/leads", controller.index);
8-
app.post("/api/leads", controller.add);
9-
app.get("/api/leads/:id", controller.view);
10-
app.put("/api/leads/:id", controller.edit);
11-
app.delete("/api/leads/:id", controller.delete);
6+
app.get('/api/leads-by-list/:id', controller.leadsByList);
7+
app.get("/api/leads", controller.index);
8+
app.post("/api/leads", controller.add);
9+
app.get("/api/leads/:id", controller.view);
10+
app.put("/api/leads/:id", controller.edit);
11+
app.delete("/api/leads/:id", controller.delete);
1212
};

server/src/routes/tracking.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
module.exports = function (app) {
2+
let controller = require('../controllers/trackin')();
3+
4+
app.get('/campaigns/tracking/open/:', controller.index);
5+
6+
}

0 commit comments

Comments
 (0)