app.get('/raw/:id', function(req, res) { strava.streams.activity({id: req.params.id, types: ['time', 'altitude', 'heartrate', 'cadence', 'watts'], resolution: 'high'},function(err, activity) { if(!err) { res.send(activity); } }); });
app.get('/api/heartrate/zones/:activity_id', function(req, res){ strava.streams.activity({'access_token': req.cookies.access_token, 'id': req.params.activity_id, 'types':['heartrate', 'time']},function(err,payload) { if(!err) { res.json(getHeartrateZones(payload)); } else { console.log(err); } }); });
app.get('/api/heartrate/sufferscore/:activity_id', function(req, res){ strava.streams.activity({'access_token': req.cookies.access_token, 'id': req.params.activity_id, 'types':['heartrate', 'time']},function(err,payload) { if(!err) { var sufferScore = Math.round(getSufferScore(payload)); res.send(sufferScore.toString()); } else { console.log(err); } }); });
strava.athlete.listActivities({'after':start/1000}, function(err, payload){ if(err){ console.log("Error retrieving activities "); } else{ //var startDateMill = new Date("7/1/2015").getTime();//.getMilliseconds(); //var endDateMill = new Date("7/7/2015").getTime();//.getMilliseconds() //var start = new Date(Date.yesterday).getTime(); for (var i = 0; i < payload.length; i++) { var activity = payload[i]; // supplement addition fields activity.username = username; activity.email = email; if(activity.distance == 0 && activity.type === "Run") activity.type = 'Strength'; console.log("=========== Activity : "+ activity.type +" ==============") if(activity.type === "Run"){ // data format conversion activity.distance_in_kilometer = activity.distance / 1000; console.log("activity id :"+activity.id+", type: Run, distance:"+ activity.distance/1000); console.log("data:" + JSON.stringify(activity)); strava.streams.activity({ 'id':activity.id, 'types':['time','heartrate', 'velocity_smooth'] }, function(err,data){ if(err){ console.log("error getting stream data"); }else { var act = getHeartRateDistribution(data, payload[i]); postActivity(act); } }); }else { console.log('non-run data:' + JSON.stringify(activity)); postActivity(activity); } } } });