Example #1
0
File: views.py Project: RobKmi/guru
def loadnewapps(request):
	countTmpPD = 0
	PostDataTempAll = PostDataTemp.objects.all()
	for pdt in PostDataTempAll:
		countTmpPD = countTmpPD + 1
		postdataT = json.loads(str(pdt.value))
		postdata = QueryDict('')
		postdata = postdata.copy()
		postdata.update(postdataT)
		postdata = postdata
		if postdata:
		    session_key = str(random.randint(0,100000000000000))
		    for key in postdata:
		        """new_record = PostData(key=key, value=postdata[key], session_key=session_key)
		        new_record.save()"""
		    try:
		        email = postdata['EMail'].strip()
		    except:
			email = ""
		    try:
		        first_name = postdata['Imie'].strip()
		    except:
		        first_name = ""
		    try:
		        last_name = postdata['Nazwisko'].strip()
		    except:
		        last_name = ""
		    try:
		        date_from = date(*map(int,reduce(lambda x,y: [y,]+x, postdata['Przyjazd'].split('.'),[])))
		    except:
		        date_from = None
		    try:
		        date_to = date(*map(int,reduce(lambda x,y: [y,]+x, postdata['Odjazd'].split('.'),[])))
		    except:
		        date_to = None
		    users_with_email = User.objects.filter(email=email)
		    username = email if len(email)<30 else email[:30]
		    if users_with_email:
		        username = "******" % (username, users_with_email.count()+1)
		    users=User.objects.filter(first_name=first_name, last_name=last_name)
		    try:
			age = date.today().year - int(postdata['Wiek'])
		    except:
		        age = 0
		    try:
		        city = postdata['Miasto']
		    except:
		        city = ""
		    try:
		        first_time = unicode(postdata['CzyPierwszyRaz'])==unicode('tak')
		    except:
		        first_time = False
		    try:
		        rules_accept = unicode(postdata['AkceptacjaRegulaminu'])==unicode('tak')
		    except:
		        rules_accept = False
		    try:
		        email_accept = unicode(postdata['EmailInformacje'])==unicode('tak')
		    except:
		        email_accept = False
		    try:
		        phone = postdata['Telefon']
		    except:
		        phone=""
		    try:
		        start_time = int(postdata['PrzyjazdGodzina'])
		    except:
		        start_time = None
		    try:
		        end_time = int(postdata['OdjazdGodzina'])
		    except:
		        end_time = None
		    
		    if users:
		        user = users[0]
		    else:
		        user = User(username=username, email=email, first_name=first_name, last_name=last_name)
		        user.save()
		    try:
		        profile = user.get_profile()
		    except:
		        profile = UserProfile(user=user)
		    profile.age = age
		    profile.city = city
		    profile.first_time = first_time
		    profile.phone = phone
		    profile.save()
		    try:
		        sessions = Session.objects.filter(start_date__lte=date_from, end_date__gt=date_from)
		        if not sessions:
		            sessions = Session.objects.filter(start_date__lt=date_to, end_date__gte=date_to)
		        elif len(sessions)>1:
		            sessions.filter(start_date__lt=date_to, end_date__gte=date_to)
		        if sessions:
		            session = sessions[0]
		        else:
		            session = None
		    except:
		        session = None
		    application = UserApplication(user=user, 
		                                  session=session, 
		                                  start_date = date_from, 
		                                  start_time = start_time, 
		                                  end_date = date_to, 
		                                  end_time = end_time, 
		                                  first_time = first_time, 
		                                  rules_accept = rules_accept,
		                                  email_accept = email_accept,
		                                  session_key=session_key)
		    application.save()
		    pdtTemp = PostDataTempArch(value=postdataT)
		    pdtTemp.save()
		    pdt.delete()

	return render_to_response('loadnewapps.html',{'countTmpPD':countTmpPD, 'PostDataTempAll':PostDataTempAll})