From 9491db195d6b21f372ffb80043db829ef204cf34 Mon Sep 17 00:00:00 2001 From: wactbprot <thsteinbock@web.de> Date: Wed, 4 Sep 2013 15:46:01 +0200 Subject: [PATCH] merge events --- lists/merge.js | 29 +++++++++++++++++++++++++++++ views/events/map.js | 14 +++++++++----- 2 files changed, 38 insertions(+), 5 deletions(-) create mode 100644 lists/merge.js diff --git a/lists/merge.js b/lists/merge.js new file mode 100644 index 0000000..1af855f --- /dev/null +++ b/lists/merge.js @@ -0,0 +1,29 @@ +function(head, req) { + + var share = require("lib/share"), + data = {}, + mergedEvents = []; + + start(share.startJson); + while(row = getRow()) { + var rv = row.value, + signature = row.value.signature; + + if(data[signature]){ + data[signature].id.push(rv.id); + data[signature].sign.push(rv.sign); + + }else{ + data[signature] = {}; + data[signature].id = [rv.id]; + data[signature].sign = [rv.sign]; + data[signature].title = rv.title; + data[signature].start = rv.start; + data[signature].end = rv.end; + } + } + for(var k in data){ + mergedEvents.push(data[k]); + } + send(toJSON( mergedEvents)); +} \ No newline at end of file diff --git a/views/events/map.js b/views/events/map.js index 7f2c294..37c5703 100644 --- a/views/events/map.js +++ b/views/events/map.js @@ -27,15 +27,19 @@ function(doc) { dateObj.Value != ""){ var keyObj = dateObj.Value.split(" ")[0], - startDate = share.vlDateString(dateObj.Value), - valObj = { id : doc._id, - title : dc.Standard + ": " + customer + " " + dc.Sign, + startDate = share.vlDateString(dateObj.Value).split(" ")[0], + valObj = { id : doc._id, + sign : dc.Sign, + title : dc.Standard + ": " + customer, start : startDate }; if(dateObj.Duration){ - valObj.end = share.addDays(dateObj.Duration, dateObj.Value); + valObj.end = share.addDays(dateObj.Duration, dateObj.Value).split(" ")[0]; } - emit(keyObj, valObj); + valObj.signature = dc.Standard +"_"+ + startDate + "_" + customer; + + emit(keyObj, valObj); } } //Date } // Presettings -- GitLab