# coding: utf-8

from smidurinn import smidurinn
from smidurinn import kennitala
import sys
import random
import string

if __name__ == "__main__":
   print u"Þetta er standard smiðurinn"
   print "Hann smíðar færslur í þessari röð:\n"
   print u"Fornafn, Millinafn, Eftirnafn, Kennitala, Heimilisfang, Póstnúmer \n"

   print u"Kynjadreifing"

   while True:
      try:
         konur = int(raw_input("Hversu margar konur villtu smíða?: "))
         break
      except ValueError:
         print "Vinsamlegast sláðu inn tölu"
   
   while True:
      try:
         karlar = int(raw_input("Hversu marga karla villtu smíða?: "))
         break
      except ValueError:
         print "Vinsamlegast sláðu inn tölu"

   print u"Aldursdreyfing"
   
  
   while True:
      try:
         aldur_lagm = int(raw_input("Lagmarksaldur: "))
         break
      except ValueError:
         print "Vinsamlega sláðu inn tölu"
         
   while True:
      try:
         aldur_ham = int(raw_input("Hámarksaldur: "))
         if (aldur_ham >= aldur_lagm):
            break
         else:
            print "Hágmarksaldur verður að vera hærri en lágmarksaldur!"
      except ValueError:
         print "Vinsamlega sláðu inn tölu"
            
   saveAs = raw_input("Hvert villtu vista gögnin?: ")

   fjoldi = konur + karlar
   print u"Samanlagður fjöldi:", fjoldi
   
   print u"Skrifar skránna fyrir þig....",

   eftirnofn = smidurinn("txt/eftir.txt")
   stulkur = smidurinn("txt/stulkunofn.txt")
   drengir = smidurinn("txt/drengjanofn.txt")
   milli = smidurinn("txt/millinofn.txt")
   heimili = smidurinn("txt/gotur.txt")
   kt = kennitala()
   kvennafjoldi = 0
   karlafjoldi = 0
   teljari = 0

   
   # Open the file for writing
   out = open(saveAs, "w")
   
   #for f in range (0,fjoldi):
   while True:
      # 0 = KK
      # 1 = KVK
      kyn = random.randint(0,1)
      
      if (kyn == 0 and karlar != karlafjoldi):
         karlafjoldi += 1
         teljari += 1
         out.write(", ".join([drengir.pick_random(), milli.pick_random(), eftirnofn.pick_random() + "son", kt.randkt(aldur_lagm, aldur_ham), heimili.pick_heimili()[0] + " " + str(random.randint(1,100)), heimili.pick_heimili()[1] ]) + "\n")
         
      elif (kyn == 1 and konur != kvennafjoldi):
         kvennafjoldi += 1
         teljari +=1
         out.write(", ".join([stulkur.pick_random(), milli.pick_random(), eftirnofn.pick_random() + "dóttir", kt.randkt(aldur_lagm, aldur_ham), heimili.pick_heimili()[0] + " " + str(random.randint(1,100)), heimili.pick_heimili()[1] ]) + "\n")
         
      elif (teljari == fjoldi):
         break

   print "done"
   
