+ core update
This commit is contained in:
1 parent
d002bd74a7
commit
d8727f56b0
1 file changed
+41
@@ -0,0 +1,41 @@
|
||||
import {collection} from './db';
|
||||
import {api} from '../instagram';
|
||||
import {postFromInstagramMedia} from '../models/post';
|
||||
import Service from '../api/Service';
|
||||
import {serviceSecret} from '../config';
|
||||
|
||||
const service = new Service(serviceSecret);
|
||||
|
||||
var instagramClient;
|
||||
|
||||
export default async function update(id, data) {
|
||||
const updateTimestamp = data.time;
|
||||
const instagram = await client();
|
||||
try {
|
||||
let data = await instagram.user.mediaRecent(null, 1, updateTimestamp);
|
||||
let items = data.medias.map(postFromInstagramMedia);
|
||||
|
||||
for (i of items) {
|
||||
await service.feed.add(i);
|
||||
}
|
||||
} catch (e) {
|
||||
console.log(e);
|
||||
}
|
||||
}
|
||||
|
||||
async function client() {
|
||||
if (instagramClient) return instagramClient;
|
||||
|
||||
const provider = 'instagram';
|
||||
const users = collection('users');
|
||||
|
||||
let profile = await users.findOne({
|
||||
provider: provider
|
||||
});
|
||||
|
||||
if (profile) {
|
||||
instagramClient = api(profile.accessToken);
|
||||
return instagramClient;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
Reference in new issue
Block a user