@@ -1,8 +1,8 @@

var router = require('express').Router();
var models = require('../models/models');
var Vineapple = require('vineapple');
var User = models.User;
var Profile = models.Profile;
var vine = new Vineapple();
var facebook = require('fb');

@@ -11,18 +11,23 @@ var facebook = require('fb');
module.exports = function(passport) {

router.get('/register', function(req, res, next) {
res.render('register');
res.render('register');
});

router.post('/register', function(req, res, next) {
new User({
username: req.body.username,
password: req.body.password
}).save(function(err, user) {
console.log(err);
if (err) return next(err);
res.redirect('/login');
});
new User({
username: req.body.username,
password: req.body.password
}).save(function(err, user) {
console.log(err);
if (err) return next(err);
new Profile({
userId: user._id
}).save(function(err, profile) {
if (err) return next(err);
res.redirect('/login');
})
});
});

router.get('/login', function(req, res, next) {
@@ -111,5 +116,4 @@ module.exports = function(passport) {
});

return router;
}

}
@@ -1,10 +1,13 @@
var router = require('express').Router();
var passport = require('passport');
var FB = require('fb');
var vine = require('../test/vine.js');
var instagram = require('../test/ig.js');


var vine = require('../update/vine.js');
var instagram = require('../update/ig.js');
var models = require('../models/models')
var Profile = models.Profile;
var ProfileSnapshot = models.ProfileSnapshot;
var Post = models.Post;
var PostSnapshot = models.PostSnapshot;

var socialFunctions = require('../social');
var getYoutubeData = socialFunctions.getYoutubeData;
@@ -57,11 +60,11 @@ router.get('/fbPageConfirmation/', function(req, res, next) {
new Promise(function(resolve, reject){

FB.api(`/${req.query.pageId}/insights/page_views_total`, function (res) {
if(!res || res.error) {
console.log(!res ? 'error occurred' : res.error);
reject(res.error);
}
if(!res || res.error) {
console.log(!res ? 'error occurred' : res.error);
reject(res.error);
}

console.log("RESPONSE ", res.data[2].values); //get's 28 day values
resolve(res);
});
@@ -76,39 +79,136 @@ router.get('/fbPageConfirmation/', function(req, res, next) {

//GETS

// { attribution: null,
// tags:
// [ 'guerillamarketing',
// 'entrepreneur',
// 'pokemon',
// 'growthhacking' ],
// type: 'image',
// location:
// { latitude: 39.951695887205,
// name: 'University of Pennsylvania',
// longitude: -75.194293192075,
// id: 180841 },
// comments: { count: 0 },
// filter: 'Reyes',
// created_time: '1470431285',
// link: 'https://www.instagram.com/p/BIvdVwDB8uc/',
// likes: { count: 98 },
// images:
// { low_resolution: [Object],
// thumbnail: [Object],
// standard_resolution: [Object] },
// users_in_photo: [],
// caption:
// { created_time: '1470431285',
// text: 'Peep the bar in the truck bed. Only in Philly #guerillamarketing #growthhacking #entrepreneur #pokemon',
// from: [Object],
// id: '17860941652046758' },
// user_has_liked: false,
// id: '1310395054636387228_440696783',
// user:
// { username: 'pakaplace',
// profile_picture: 'https://scontent.cdninstagram.com/t51.2885-19/s150x150/13774404_1154932207906735_80316018_a.jpg',
// id: '440696783',
// full_name: 'Parker Place' } },





router.get('/update/instagram', function(req, res, next){
instagram.instagramInformation(process.env.ID, process.env.AT)
.then(function(data) {
Profile.findOne({userId: req.user._id}, function(err, profile){
if(err)return next( err)
// console.log('instagramprofile id',req.user.instagram.instagramProfile.id);
// console.log('WHAT IS MY TYPE', typeof req.user.instagram.instagramProfile.id)
new ProfileSnapshot({
platformID: req.user.instagram.instagramProfile.id,
platform: 'instagram',
followers: JSON.parse(req.user.instagram.instagramProfile._raw).data.counts.followed_by,
posts: JSON.parse(req.user.instagram.instagramProfile._raw).data.counts.media,
date: new Date(),
profileId: profile._id
})
.save(function(err, p){
if(err) return next(err);

data.forEach(function(post, i){
var desc = null;
if(post.caption){
desc = post.caption.text
}
Post.findOrCreate({postId: post.id}, {
description: desc,
postId: post.id,
type: 'instagram',
profileId: profile._id
}, function(err, postData){
if(err) return next(err);
console.log("creating post for:", post.id);

new PostSnapshot({
profileId: p._id,
postId: postData.id,
comments: post.comments.count,
likes: post.likes.count,
date: p.date
})
.save(function(err, psnap){
if(err) return next(err);

console.log("creating post snapshots for:", post.id);
postData.snapshots.push(psnap._id);
postData.save(function(err){
if(err) return next(err);
if(i === data.length -1){
res.redirect('/integrate');
}
})
})
})
})
})
})
}).catch(function(err){ next(err)})
})



router.get('/update', (req, res, next) => {
var socialPromises = Object.keys(socialFunctions).map((socialFunction) => {
return socialFunctions[key]();
});

Promise
.all(socialPromises)
.then((allTheDataEver) => {
console.log("[all the data like ever]", allTheDataEver);
})
.catch(console.log.bind(this, "[social function err]"));
router.get('/update/youtube', (req, res, next) => {
var socialPromises = Object.keys(socialFunctions).map((socialFunction) => {
return socialFunctions[key]();
});

Promise
.all(socialPromises)
.then((allTheDataEver) => {
console.log("[all the data like ever]", allTheDataEver);
})
.catch(console.log.bind(this, "[social function err]"));
})

router.get('/youtube', function(req, res, next) {
getYoutubeData(req.user.youtube.profile.id)
.then((data) => {
getYoutubeData(req.user.youtube.profile.id)
.then((data) => {
// console.log('[ALL VIDEOS]', data.videos);
var daydata = getDay(data.videos);
var weekdata = getWeek(data.videos);
var monthdata = getMonth(data.videos);
var yeardata = getYear(data.videos);
res.render('youtube', {
channelName: req.user.youtube.profile.displayName,
channel: data.channel,
daydata,
weekdata,
monthdata,
yeardata
channelName: req.user.youtube.profile.displayName,
channel: data.channel,
daydata,
weekdata,
monthdata,
yeardata
})
})
})
})


This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

@@ -6,24 +6,28 @@ console.log("INSTAGRAM_CLIENT_ID:", process.env.INSTAGRAM_CLIENT_ID);
console.log("INSTAGRAM_CLIENT_SECRET:", process.env.INSTAGRAM_CLIENT_SECRET);


function instagramInformation(cb){
var bigArr = [];
ig.use({ access_token: process.env.AT });
ig.user_media_recent(process.env.ID, {cursor: 30}, function instagramPages(err, medias, pagination, remaining, limit) {
console.log("medias", medias)
bigArr = bigArr.concat(medias);
if(pagination.next) {
pagination.next(instagramPages); // Will get second page results
console.log("lkdsa;lkjdsa")
} else {
cb(bigArr);
console.log(bigArr.length);
}

});
function instagramInformation(id, accessToken){
return new Promise(function(resolve, reject){
var bigArr = [];
var instagramPages = function (err, medias, pagination, remaining, limit) {
// console.log("medias", medias)
bigArr = bigArr.concat(medias);
if(pagination.next) {
pagination.next(instagramPages); // Will get second page results
} else {
resolve(bigArr);
console.log(bigArr.length);
}
}

ig.use({ access_token: process.env.AT });
ig.user_media_recent(process.env.ID, {cursor: 30}, instagramPages);

})


}
instagramInformation(function(bigArr){console.log(bigArr)});
// instagramInformation(process.env.ID, process.env.AT).then(function(data){console.log("bigArr", data)});

module.exports={
instagramInformation: instagramInformation
@@ -1,6 +1,6 @@
var Vineapple = require('vineapple');

function vineInformation(req){
function vineInformation(){
var vine = new Vineapple();
var user1;
// Authenticate the Vine user
@@ -13,14 +13,14 @@ function vineInformation(req){
throw new Error(error);
}
// Handle success
console.log(user);
// console.log(user);
});

});

vine.me(function(err, user){
console.log("vineapple error", err);
console.log("vineapple user", user);
// console.log("vineapple error", err);
// console.log("vineapple user", user);

})
}