Exemplo n.º 1
0
	def get(self):
		session = Session()
		try:
			task = db.get(db.Key.from_path('Task', session['task_id']))
			session.delete_item('task_id')
			client = db.get(db.Key.from_path('Client', session['client_tmp']))
			session.delete_item('client_tmp')
			task.client = client
			task.put()
			values = {'task': 1}
			values.update(logged())
		except:
			values = logged()
		self.response.out.write(template.render('client_confirm.html', values))
Exemplo n.º 2
0
 def default_form(self, new_values):
     ipinfo = IPInfo('please_enter_valid')
     geo = ipinfo.GetCity(self.request.remote_addr)
     #		geo = ipinfo.GetCity('81.190.71.212') #Gdynia for localhost testing
     cities = db.GqlQuery("SELECT * FROM City WHERE name=:name LIMIT 1",
                          name=geo['City'])
     if cities.count() == 0:
         cities = db.GqlQuery("SELECT * FROM City WHERE name=:name LIMIT 1",
                              name='Warszawa')
     city = cities.fetch(1, 0)[0]
     miasto = city.name
     wojewodztwo = city.voivodeship.name
     miasta = city.voivodeship.city_set.order("-people")
     wojewodztwa = db.GqlQuery("SELECT * FROM Voivodeship ORDER BY name")
     values = {
         'miasto': miasto,
         'wojewodztwo': wojewodztwo,
         'miasta': miasta,
         'wojewodztwa': wojewodztwa,
         'rules': 1,
         'data': 1,
         'spam': 1
     }
     values.update(new_values)
     values.update(logged())
     self.response.out.write(template.render('client_login.html', values))
Exemplo n.º 3
0
    def get(self):
        student = log_student()
        if not student:
            session = Session()
            session['after_student_login'] = '******'
            self.redirect('student_login.html')
            return
        categories = db.GqlQuery("SELECT * FROM Category ORDER BY name")
        wojewodztwa = db.GqlQuery("SELECT * FROM Voivodeship ORDER BY name")

        errors = Set()
        miasta = student.city.voivodeship.city_set.order("-people")

        miasto = student.city.name
        wojewodztwo = student.city.voivodeship.name
        values = {
            'miasto': miasto,
            'wojewodztwo': wojewodztwo,
            'miasta': miasta,
            'wojewodztwa': wojewodztwa,
            'categories': categories,
            'student': student,
            'errors': errors
        }
        values.update(logged())
        self.response.out.write(template.render('student_profile.html',
                                                values))
 def get(self):
     id = self.request.get('id')
     if not id:
         #Zle wolanie
         msg = 1
     else:
         try:
             client = db.get(db.Key(id))
             if client.active:
                 #Juz aktywny
                 msg = 3
             else:
                 if self.request.get('del'):
                     #Usuniecie
                     client.delete()
                     msg = 4
                 else:
                     #Aktywacja
                     for task in client.task_set:
                         task.state = 1
                         task.put()
                     client.active = True
                     client.put()
                     msg = 5
         except:
             #Brak rekordu
             msg = 2
     values = {'msg': msg}
     values.update(logged())
     self.response.out.write(template.render('client_activate.html',
                                             values))
Exemplo n.º 5
0
    def get(self):
        student = log_student()
        if not student:
            session = Session()
            session['after_student_login'] = '******'
            self.redirect('student_login.html')
            return

        tasks = db.GqlQuery(
            "SELECT * FROM Task WHERE state = 1 ORDER BY time_added DESC LIMIT 100"
        )
        dates_from = list()
        dates_to = list()
        utc = timezone('UTC')
        tz = timezone('Warsaw')
        for t in tasks:
            utct = t.time_added
            loct = utct.replace(tzinfo=utc).astimezone(tz)
            dates_from.append(loct)
            utct = t.time_valid
            loct = utct.replace(tzinfo=utc).astimezone(tz)
            dates_to.append(loct)
        values = {
            'tasks': tasks,
            'dates_from': dates_from,
            'dates_to': dates_to
        }
        values.update(logged())
        self.response.out.write(template.render('tasks_view.html', values))
Exemplo n.º 6
0
	def post(self):
		client = log_client()
		if not client:
			session = Session()
			session['after_client_login'] = '******'
			self.redirect('client_login.html')
			return
		wojewodztwa = db.GqlQuery("SELECT * FROM Voivodeship ORDER BY name")

		if self.request.get('form') == "2":
			#Voivodeship change
			voivodeships = db.GqlQuery("SELECT * FROM Voivodeship WHERE name=:name LIMIT 1", name = self.request.get('voivodeship'))
			voivodeship = voivodeships.fetch(1,0)[0]
			miasta = voivodeship.city_set.order("-people")
			client.city = miasta.fetch(1,0)[0]
		else:
			cities = db.GqlQuery("SELECT * FROM City WHERE name=:name LIMIT 1", name = self.request.get('city'))
			client.city = cities.fetch(1,0)[0]
			miasta = client.city.voivodeship.city_set.order("-people")
		
		errors = Set()
		client.type = int(self.request.get('type'))
		if not self.request.get('name'):
			errors.add('e_no_name')
		else:
			client.name = self.request.get('name')
		if not self.request.get('phone'):
			errors.add('e_no_phone')
		else:
			client.phone = self.request.get('phone')
		if self.request.get('old_password'):
			if not client.password == self.request.get('old_password'):
				errors.add('e_old_password')
			else:
				if not self.request.get('password'):
					errors.add('e_no_password')
				else:
					#Haslo sie nie zgadza
					if not self.request.get('password') == self.request.get('password2'):
						errors.add('e_password')
					else:
						client.password = self.request.get('password')
		client.spam = self.request.get('spam')=='on'

		client.notify = int(self.request.get('notify'))
		client.district = self.request.get('district')
		if self.request.get('form') == "1":
			client.put()

		miasto = client.city.name
		wojewodztwo = client.city.voivodeship.name
		values = {'miasto': miasto, 'wojewodztwo': wojewodztwo, 'miasta': miasta, 'wojewodztwa': wojewodztwa, 'client': client, 'errors': errors}
		values.update(logged())
		self.response.out.write(template.render('client_profile.html', values))
Exemplo n.º 7
0
	def get(self):
		categories = db.GqlQuery("SELECT * FROM Category ORDER BY name")
		days = list()
		utc = timezone('UTC')
		tz = timezone('Warsaw')
		for x in range(1,15):
			utct = datetime.now() + timedelta(days=x)
			loct = utct.replace(tzinfo=utc).astimezone(tz)
			days.append(loct)
		values = {'categories': categories, 'days': days, 'valid_days': 7}
		values.update(logged())
		self.response.out.write(template.render('task_add.html', values))
Exemplo n.º 8
0
	def get(self):
		client = log_client()
		if not client:
			session = Session()
			session['after_client_login'] = '******'
			self.redirect('client_login.html')
			return
		session = Session()
		try:
			task = db.get(db.Key.from_path('Task', session['task_id']))
		except:
			self.redirect('/')
			return
		task.client = client
		task.state = 1
		task.put()
		session.delete_item('task_id')
		self.response.out.write(template.render('task_confirm.html', logged()))
Exemplo n.º 9
0
 def post(self):
     errors = Set()
     clients = db.GqlQuery(
         "SELECT * FROM Client WHERE email=:email LIMIT 1",
         email=self.request.get('email'))
     if clients.count() == 0:
         errors.add('e_email')
     else:
         client = clients.fetch(1, 0)[0]
         message = template.render('client_remind.txt',
                                   {'password': client.password})
         mail.send_mail(sender="SzybkaFucha.pl <*****@*****.**>",
                        to=self.request.get('email'),
                        subject="Przypomnienie hasła",
                        body=message)
         errors.add('c_sent')
     values = {'email': self.request.get('email'), 'errors': errors}
     values.update(logged())
     self.response.out.write(template.render('client_remind.html', values))
Exemplo n.º 10
0
	def post(self):
		errors = Set()
		if not self.request.get('title'):
			errors.add('e_no_title')
		if not self.request.get('description'):
			errors.add('e_no_description')
		if not self.request.get('price'):
			errors.add('e_no_price')
		else:
			price = self.request.get_range('price', 0, 9999, 0)
			if price == 0:
				errors.add('e_price')

		if len(errors) == 0:
			task = Task(state = 0, category = db.Key().from_path('Category', int(self.request.get('category'))), title = self.request.get('title'),
				description = self.request.get('description'), private_info = self.request.get('private_info'), price = price,
				time_valid = datetime.now() + timedelta(days=int(self.request.get('valid_days'))), ip_added = self.request.remote_addr)
			task.put()
			session = Session()
			session['task_id'] = task.key().id()
			self.redirect('task_confirm.html') 
			return

		categories = db.GqlQuery("SELECT * FROM Category ORDER BY name")
		days = list()
		utc = timezone('UTC')
		tz = timezone('Warsaw')
		for x in range(1,15):
			utct = datetime.now() + timedelta(days=x)
			loct = utct.replace(tzinfo=utc).astimezone(tz)
			days.append(loct)
		values = {'categories': categories, 'days': days, 'category': int(self.request.get('category')), 'valid_days': int(self.request.get('valid_days')),
			'title': self.request.get('title'), 'description': self.request.get('description'), 'private_info': self.request.get('private_info'),
			'price': self.request.get('price'), 'errors': errors}
		values.update(logged())
		self.response.out.write(template.render('task_add.html', values))
Exemplo n.º 11
0
 def get(self):
     self.response.out.write(template.render('commercials.html', logged()))
Exemplo n.º 12
0
 def get(self):
     self.response.out.write(template.render('law.html', logged()))
Exemplo n.º 13
0
    def post(self):
        errors = Set()

        if self.request.get('form') == "1":
            #Login
            clients = db.GqlQuery(
                "SELECT * FROM Client WHERE email=:email LIMIT 1",
                email=self.request.get('log_email'))
            if clients.count() == 0:
                errors.add('e_log_email')
            else:
                client = clients.fetch(1, 0)[0]
                if not client.password == self.request.get('log_password'):
                    errors.add('e_log_password')
                else:
                    if client.active == 0:
                        errors.add('e_not_active')
            if len(errors) == 0:
                session = Session()
                session['client_id'] = client.key().id()
                try:
                    self.redirect(session['after_client_login'])
                except:
                    self.redirect('/')
                return
            else:
                values = {
                    'log_email': self.request.get('log_email'),
                    'errors': errors
                }
                self.default_form(values)
                return

        if self.request.get('form') == "3":
            #Voivodeship change
            voivodeships = db.GqlQuery(
                "SELECT * FROM Voivodeship WHERE name=:name LIMIT 1",
                name=self.request.get('voivodeship'))
            voivodeship = voivodeships.fetch(1, 0)[0]
            wojewodztwo = voivodeship.name
            miasta = voivodeship.city_set.order("-people")
            miasto = miasta.fetch(1, 0)[0].name
            wojewodztwa = db.GqlQuery(
                "SELECT * FROM Voivodeship ORDER BY name")
            values = {
                'miasto': miasto,
                'wojewodztwo': wojewodztwo,
                'miasta': miasta,
                'wojewodztwa': wojewodztwa,
                'type': self.request.get('type'),
                'name': self.request.get('name'),
                'phone': self.request.get('phone'),
                'email': self.request.get('email'),
                'district': self.request.get('district'),
                'rules': self.request.get('rules'),
                'data': self.request.get('data'),
                'spam': self.request.get('spam'),
                'errors': Set()
            }
            values.update(logged())
            self.response.out.write(
                template.render('client_login.html', values))
            return

        #Register
        email = self.request.get('email').strip().lower()
        if not self.request.get('name'):
            errors.add('e_no_name')
        if not self.request.get('phone'):
            errors.add('e_no_phone')
        if not self.request.get('email'):
            errors.add('e_no_email')
        else:
            #Email juz uzyty
            clients = db.GqlQuery(
                "SELECT * FROM Client WHERE email=:email LIMIT 1", email=email)
            if clients.count() == 1:
                errors.add('e_email')
        if not self.request.get('password'):
            errors.add('e_no_password')
        else:
            #Haslo sie nie zgadza
            if not self.request.get('password') == self.request.get(
                    'password2'):
                errors.add('e_password')
        #Musisz zaakceptowac regulamin
        if not self.request.get('rules'):
            errors.add('e_rules')
        #Musisz zezwolic na przetwarzanie danych
        if not self.request.get('data'):
            errors.add('e_data')

        cities = db.GqlQuery("SELECT * FROM City WHERE name=:name LIMIT 1",
                             name=self.request.get('city'))
        city = cities.fetch(1, 0)[0]

        if len(errors) == 0:
            client = Client(type=int(self.request.get('type')),
                            name=self.request.get('name'),
                            phone=self.request.get('phone'),
                            email=email,
                            password=self.request.get('password'),
                            district=self.request.get('district'),
                            spam=self.request.get('spam') == 'on',
                            active=False,
                            city=city,
                            notify=1)
            client.put()
            message = template.render('client_confirm.txt',
                                      {'id': client.key()})
            mail.send_mail(sender="SzybkaFucha.pl <*****@*****.**>",
                           to=self.request.get('email'),
                           subject="Potwierdzenie rejestracji",
                           body=message)

            session = Session()
            if session.get('task_id'):
                session['client_tmp'] = client.key().id()

            self.redirect('client_confirm.html')
            return

        miasto = city.name
        wojewodztwo = city.voivodeship.name
        miasta = city.voivodeship.city_set.order("-people")
        wojewodztwa = db.GqlQuery("SELECT * FROM Voivodeship ORDER BY name")
        values = {
            'miasto': miasto,
            'wojewodztwo': wojewodztwo,
            'miasta': miasta,
            'wojewodztwa': wojewodztwa,
            'type': self.request.get('type'),
            'name': self.request.get('name'),
            'phone': self.request.get('phone'),
            'email': email,
            'district': self.request.get('district'),
            'rules': self.request.get('rules'),
            'data': self.request.get('data'),
            'spam': self.request.get('spam'),
            'errors': errors
        }
        values.update(logged())
        self.response.out.write(template.render('client_login.html', values))
Exemplo n.º 14
0
 def get(self):
     self.response.out.write(template.render('client_remind.html',
                                             logged()))
Exemplo n.º 15
0
    def post(self):
        student = log_student()
        if not student:
            session = Session()
            session['after_student_login'] = '******'
            self.redirect('student_login.html')
            return
        categories = db.GqlQuery("SELECT * FROM Category ORDER BY name")
        wojewodztwa = db.GqlQuery("SELECT * FROM Voivodeship ORDER BY name")

        if self.request.get('form') == "2":
            #Voivodeship change
            voivodeships = db.GqlQuery(
                "SELECT * FROM Voivodeship WHERE name=:name LIMIT 1",
                name=self.request.get('voivodeship'))
            voivodeship = voivodeships.fetch(1, 0)[0]
            miasta = voivodeship.city_set.order("-people")
            student.city = miasta.fetch(1, 0)[0]
        else:
            cities = db.GqlQuery("SELECT * FROM City WHERE name=:name LIMIT 1",
                                 name=self.request.get('city'))
            student.city = cities.fetch(1, 0)[0]
            miasta = student.city.voivodeship.city_set.order("-people")

        errors = Set()
        student.type = int(self.request.get('type'))
        if not self.request.get('name'):
            errors.add('e_no_name')
        else:
            student.name = self.request.get('name')
        if not self.request.get('phone'):
            errors.add('e_no_phone')
        else:
            student.phone = self.request.get('phone')
        if self.request.get('old_password'):
            if not student.password == self.request.get('old_password'):
                errors.add('e_old_password')
            else:
                if not self.request.get('password'):
                    errors.add('e_no_password')
                else:
                    #Haslo sie nie zgadza
                    if not self.request.get('password') == self.request.get(
                            'password2'):
                        errors.add('e_password')
                    else:
                        student.password = self.request.get('password')
        student.spam = self.request.get('spam') == 'on'

        if self.request.get("pic"):
            avatar = images.resize(self.request.get("pic"), 64, 64)
            student.avatar = db.Blob(avatar)
        categories_sel = []
        for category in categories:
            if self.request.get('%d' % category.key().id()):
                categories_sel.append(category.key())
        student.specialities = categories_sel
        student.description = self.request.get("description")
        student.notify = int(self.request.get('notify'))
        if self.request.get('form') == "1":
            student.put()

        miasto = student.city.name
        wojewodztwo = student.city.voivodeship.name
        values = {
            'miasto': miasto,
            'wojewodztwo': wojewodztwo,
            'miasta': miasta,
            'wojewodztwa': wojewodztwa,
            'categories': categories,
            'student': student,
            'errors': errors
        }
        values.update(logged())
        self.response.out.write(template.render('student_profile.html',
                                                values))
Exemplo n.º 16
0
 def get(self):
     self.response.out.write(
         template.render('student_confirm.html', logged()))