#!/usr/bin/env python
import os;
import json;
import time;

# each folder in the post folder is a type of post
base = '../assets/post'
posts = os.listdir(base);
outputfile = '../assets/posts.json'

# build ourselves a json object
jsonresult = [];

# each folder in the current one is a post! the name of the folder is the _id_
for post in posts:
    print('doing post '+post)
    postdir = base+"/"+post;
    infofile = postdir+"/info.json";
    print(infofile)
    with open(infofile) as j:
        tt = j.read()
        d = json.loads(tt)
    temp = {};
    temp['id'] = post;
    temp['info'] = d;

    # have to write the 'modified date' in the info.json of the post if it's not there yet
    if 'created_timestamp' not in d:
        d['created_timestamp'] = time.time()
        print('created new timestamp: '+str(time.time()));
        # persist it in the json file itself
        with open(infofile, 'w') as infooutfile:
            json.dump(d, infooutfile, sort_keys=True, indent=4, separators=(',', ': '))

    # # figure out the last change of any file in the folder
    # lastchange = 0;
    # contents = os.listdir(postdir);
    # for contentfile in contents:
    #     lastchange = max(lastchange,os.path.getmtime(postdir+"/"+contentfile))
    # temp['lastmodified'] = lastchange;

    jsonresult.append(temp);

    # completely append the info.json file

# print the result of the json parse
print(json.dumps(jsonresult));
with open(outputfile, 'w') as outfile:
    json.dump(jsonresult, outfile)
