def __init__(self, *args, **kwargs): super(AddCard, self).__init__(*args, **kwargs) if "group" in self.data2.keys() and not self.data2['group'] == '': cat_tab_choices = Advert.get_cat_tab_choices(self.data2['group']) if "cat_tab" in self.data2.keys(): cat_type_choices = Advert.get_cat_type_choices( self.data2['group'], self.data2['cat_tab'] ) else: cat_type_choices = () else: cat_tab_choices = () cat_type_choices = () self.fields['cat_tab'] = forms.ChoiceField( choices=cat_tab_choices, # widget=StyleDropdown(value='flat'), widget=MultiChoicesHidden((StyleDropdown, HiddenInput)), ) self.fields['cat_type'] = forms.ChoiceField( choices=cat_type_choices, # widget=StyleDropdown, widget=MultiChoicesHidden((StyleDropdown, HiddenInput)), ) # for field_name, obj in self.fields.iteritems(): # self.fields[field_name].required = False self.fields['cat_tab'].required = True self.fields['cat_type'].required = True for field in ['balcony_deck','house','neighbors_in_the_apartment','parking_places','wall_material','year_built','flooring']: self.fields[field].required = False
def get(self,advert_id,errors=None): ad = Advert.get_by_id(int(advert_id)) if ad.class_name() == "TextAdvert": self.response.out.write(template.render('templates/advert/view-text.html',{'ad':ad})) elif ad.class_name() == "ImgAdvert": self.response.out.write(template.render('templates/advert/view-img.html',{'ad':ad})) else: self.response.set_status(500)
def get(self, advert_id, errors=None): ad = Advert.get_by_id(int(advert_id)) if ad.class_name() == "TextAdvert": self.response.out.write( template.render('templates/advert/view-text.html', {'ad': ad})) elif ad.class_name() == "ImgAdvert": self.response.out.write( template.render('templates/advert/view-img.html', {'ad': ad})) else: self.response.set_status(500)
def create_or_update(ads): for ad in ads: ad_obj = Advert.get_by_id(ad.get('id')) if ad_obj: ad_obj.update(ad) else: Advert.create( settlement=ad.get('settlement'), under_construction=ad.get('under_construction'), description=ad.get('description'), price=ad.get('price'), oblast_district=ad.get('oblast_district'), living_area=ad.get('living_area'), has_balcony=ad.get('has_balcony'), address=ad.get('address'), construction_year=ad.get('construction_year'), rooms_number=ad.get('rooms_number'), premise_area=ad.get('premise_area'), advert_id=ad.get('id'), )
def get(self,campaign_id): c = Campaign.get_by_id(int(campaign_id)) user = users.get_current_user() if c: if c.owner == user: ads = Advert.all().filter('campaign',c) self.response.out.write(template.render('templates/campaigns/view.html',{'campaign':c,'ads':ads})) else: self.response.out.write("No tenes permisos") else: self.response.out.write("La campania no existe")
def __init__(self, *args, **kwargs): super(Filter, self).__init__(*args, **kwargs) self.fields['cat_tab'] = forms.ChoiceField( choices=Advert.get_cat_tab_choices(self.data['group'])) self.fields['cat_type'] = forms.ChoiceField( widget=StyleDropdown, choices=Advert.get_cat_type_choices( self.data['group'], self.data['cat_tab'] ) ) # self.fields['action_type'] = forms.ChoiceField( # widget=StyleSwitch, # choices=Advert.get_action_choices() # # choices=(('rent', u'Аренда'), ('sale', u'Продажа'), ('exchange', u'Обмен')) # ) for field_name, obj in self.fields.iteritems(): self.fields[field_name].required = False
def new_advert(): #публиковать объявления могут только зарегистрированные пользователи user = request.authorization.username if user is None: abort(401) # 401 (Unauthorized - Неавторизован) username = User.query.filter_by(username=user).first() if username is None: abort(401) # 401 (Unauthorized - Неавторизован) advert = Advert() title = request.json.get('title') advert.title = title body = request.json.get('body') advert.body = body advert.author = username db.session.add(advert) db.session.commit() json_resp = jsonify({'username': user, 'title': title, 'body': body}) return json_resp, 201
def get(self, campaign_id): c = Campaign.get_by_id(int(campaign_id)) user = users.get_current_user() if c: if c.owner == user: ads = Advert.all().filter('campaign', c) self.response.out.write( template.render('templates/campaigns/view.html', { 'campaign': c, 'ads': ads })) else: self.response.out.write("No tenes permisos") else: self.response.out.write("La campania no existe")
def new_advert(): ''' Create new advert ''' form = AdvertForm() if form.validate_on_submit(): my_advert = Advert() form.populate_obj(my_advert) db.session.add(my_advert) db.session.commit() flash('Advert created correctly', 'success') try: # User info desc = my_advert.description return redirect(url_for('tweet',desc=desc)) except: db.session.rollback() flash('Error generating advert.', 'danger') return render_template('web/new_advert.html', form=form)
def do_filtering(query_params, order): ads_list = Advert_Users.objects(**query_params).order_by(order) if 'period__contains' in query_params: if query_params['period__contains'] == 'day': query_params['action_type'] = 'daily_rent' else: query_params['action_type'] = 'rent' del query_params['period__contains'] if 'exchange' in query_params: if query_params['exchange'] == True: query_params['action_type'] = 'exchange' else: query_params['action_type'] = 'sale' del query_params['exchange'] del query_params['action_type__contains'] ads_list2 = Advert.objects(**query_params).order_by(order) return QuerySetChain(ads_list, ads_list2)
def get_my_favorites(user, _to_curr='byr', order='-images_len'): try: favorites = user.favorites except: favorites = [] query_params = {} query_params[ 'id__in' ] = favorites ads_list = Advert_Users.objects(**query_params).order_by(order) for ad in ads_list: ad.price = price_convert(ad.price, ad.currency, _to_curr) ad.currency = _to_curr ads_list2 = Advert.objects(**query_params).order_by(order) for ad in ads_list2: ad.price = price_convert(ad.price, ad.currency, _to_curr) ad.currency = _to_curr my_ads = list(ads_list) + list(ads_list2) return my_ads