Example #1
0
  def by_slug(self, **kwargs):
    
    self.realestate = RealEstate.all().filter(' domain_id = ', kwargs.get('realestate_slug')).get()

    # Ponemos la pantalla de disabled si esta en NO_PAYMENT
    if self.realestate.status == RealEstate._NO_PAYMENT or self.realestate.plan.allow_website == 0:
      return self.render_response('realestate/disabled.html', realestate=self.realestate)
      
    return self.get2(**kwargs)
Example #2
0
    def get(self, **kwargs):
        kwargs['mnutop'] = 'realestatebook'
        realestate = get_or_404(self.get_realestate_key())

        if not self.plan_allow_realestatefriendship:
            self.set_warning(
                u'Su plan no tiene acceso al servicio de la red de inmobiliarias de ULTRAPROP que le permite ampliar su oferta y compartirla con sus colegas. Comuníquese con Ultraprop si desea utilizarlo.'
            )
            return self.redirect_to('property/list')

        keys = [realestate.key()]

        friends = RealEstateFriendship.all(keys_only=True).filter(
            'realestates = ', str(realestate.key())).filter(
                'state = ', RealEstateFriendship._ACCEPTED).fetch(1000)
        requesteds = RealEstateFriendship.all(keys_only=True).filter(
            'realestates = ', str(realestate.key())).fetch(1000)

        realestate_str_key = str(realestate.key())
        query = RealEstate.all().filter('__key__ != ', realestate.key())
        if not self.has_role('ultraadmin'):
            query.filter(' is_tester = ', False)

        already_friends = []
        if friends:
            for request in friends:
                current_key = RealEstateFriendship.get_the_other(
                    request, realestate_str_key, get_key=False)
                already_friends.append(current_key)

        denied = []
        friend_req_sent = []
        if requesteds:
            for request in requesteds:
                current_key = RealEstateFriendship.get_the_other(
                    request, realestate_str_key, get_key=False)
                if current_key not in already_friends:
                    if RealEstateFriendship.is_sender_ex(
                            request, realestate_str_key):
                        friend_req_sent.append(current_key)
                    else:
                        if db.get(
                                request).state == RealEstateFriendship._DENIED:
                            denied.append(current_key)
                        else:
                            friend_req_sent.append(current_key)

        kwargs['denied'] = denied
        kwargs['already_friends'] = already_friends
        kwargs['friend_req_sent'] = friend_req_sent
        kwargs['realestates'] = query.fetch(1000)
        return self.render_response('backend/realestatebook_search.html',
                                    **kwargs)
Example #3
0
def validate_domain_id(domain_id, mykey=None):
    if domain_id.strip() == '':
        return {'result': 'used', 'msg': u'El nombre no puede ser vacío'}

    if domain_id.strip() in ['mapa', 'admin', 'red-ultraprop', '']:
        return {'result': 'used', 'msg': u'Este nombre está restringido'}

    # Primero validamos que sea tipo regex
    SLUG_REGEX = re.compile('^[-\w]+$')
    if not re.match(SLUG_REGEX, domain_id):
        return {
            'result': 'noslug',
            'msg': 'El nombre solo puede contener letras, numeros y guiones'
        }

    tmp = RealEstate.all(keys_only=True).filter('domain_id', domain_id).get()
    if tmp and (mykey is None or str(tmp) != mykey):
        return {'result': 'used', 'msg': 'El nombre ya esta siendo utilizado'}

    return {'result': 'free', 'msg': 'El nombre se encuentra disponible'}
Example #4
0
 def validate_name(form, field):
     # Chequeo que el nombre de la inmo no este repetido
     name = RealEstate.all().filter('name', field.data.strip()).get()
     if name:
         raise ValidationError(u'Ese nombre ya esta siendo utilizado.')
Example #5
0
 def get(self, **kwargs):
     realestates = RealEstate.all().order('name')
     return self.render_response('frontend/red.html',
                                 realestates=realestates,
                                 status_disabled=RealEstate._NO_PAYMENT)
Example #6
0
 def by_slug(self, **kwargs):
     self.realestate = RealEstate.all().filter(
         ' domain_id = ', kwargs.get('realestate_slug')).get()
     if not self.realestate:
         abort(404)
     return self.getto(realestate=self.realestate, **kwargs)
Example #7
0
 def get(self, **kwargs):
   realestates   = RealEstate.all().order('name')
   return self.render_response('frontend/red.html'
               , realestates     = realestates)