#!/usr/bin/python

import os
import pdb
import sys
import json

sys.path.append('.')

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "xos.settings")

from django.db.models.fields.related import ForeignKey
from core.models import *

try:
	output = sys.args[1]
except:
	output = '-json'

g = globals()
model_classes = []
class_names = []
for c in g.values():
	if type(c)==type(PlCoreBase):
		model_classes.append(c)
		class_names.append(c.__name__)


if (output=='-dot'):
	print "digraph plstack {";
	for c in model_classes:
		fields = c._meta.fields
		for f in fields:
			if type(f)==ForeignKey and f.name.title() in class_names:
				print '\t"%s"->"%s";'%(c.__name__,f.name.title())
	print "}\n";
elif (output=='-json'):
	d = {}
	for c in model_classes:
		fields = c._meta.fields
		for f in fields:
			if type(f)==ForeignKey and f.name.title() in class_names:
				try:
					d[c.__name__].append(f.name.title())
				except KeyError:
					d[c.__name__]=[f.name.title()]
	print json.dumps(d,indent=4)
	
	
