Пример #1
0
class FinalPostdb(db.Model):
    username = db.StringProperty(required=True)
    post_title = db.StringProperty(required=True)
    post_details = db.StringProperty(required=True)
    post_date = db.DateTimeProperty(auto_now_add=True)
    min_bid = db.IntegerProperty(required=True)
    max_bid = db.IntegerProperty(required=True)
    status = db.StringProperty(default="null")
    start_date = db.DateProperty(required=True)
    end_date = db.DateProperty(auto_now_add=True)
    Freelancer = db.StringProperty(default="null")

    @classmethod
    def add_post(cls, username, post_title, post_details, min_bid, max_bid,
                 start_date, end_date):
        f = FinalPostdb(username=username,
                        post_title=post_title,
                        post_details=post_details,
                        min_bid=int(min_bid),
                        max_bid=int(max_bid),
                        start_date=start_date,
                        end_date=end_date)
        print 'giojoa'
        f.put()

    @classmethod
    def by_username(cls, username):
        return FinalPostdb.all().filter(username=username)

    @classmethod
    def by_id(cls, uid):
        FinalPostdb.get_by_id(uid)
Пример #2
0
class ConferenceData(db.Model):
    module = db.StringProperty(default=module)
    dbox_access_token = db.StringProperty()
    db_user_id = db.StringProperty()
    db_account_info = db.StringProperty()
    dbox_update = db.BooleanProperty(default=False)
    c_client = db.StringProperty(default='Client')
    name = db.StringProperty(default='Conference')
    start_date = db.DateProperty()
    end_date = db.DateProperty()
    account_verification_msg = db.TextProperty(
        default=
        '''Dear {name},\n Thank you for activating your account, we look forward to receiving your presentations. To complete the process please click on the following link to verify your email address {url}'''
    )
    password_reset_msg = db.TextProperty(
        default=
        '''Dear {name},\nPlease click on the following link to reset your password {url}'''
    )
    new_account_msg = db.TextProperty(
        default=
        '''Dear {name},\nYour account is ready for activation for the upcoming event, Please click on the following link to activate your account {url}'''
    )
    recieved_presentation_msg = db.TextProperty(
        default=
        '''Dear {name},\nCongratulations your presentation has uploaded successfully, to view your submission and confirm the upload please click <a href="{url}">here</a>'''
    )
Пример #3
0
class Shop(GeoModel):
    """TODO: Describe Shop"""
    Company = db.ReferenceProperty(reference_class=Company, collection_name="company_shops")
    Name= db.StringProperty(required=True, )
    ContactPhone= db.PhoneNumberProperty()
    WorkingDays= db.StringListProperty(required=True, )#choices=[x[0] for x in Days])
    NormalHoursStart= db.TimeProperty(required=True, default=time(8,0), )
    NormalHoursEnd= db.TimeProperty(required=True, default=time(20,0) ,)
    WeekendHoursStart= db.TimeProperty(required=True, default=time(10, 00), )
    WeekendHoursEnd= db.TimeProperty(required=True, default=time(22,00), )
    IsWorkingOnWeekend= db.BooleanProperty(default=True, )
    IsWorkingSunday= db.BooleanProperty(default=False, )
    DateAdded= db.DateProperty(auto_now_add=True)
    DateModified = db.DateProperty(auto_now=True)
    def put(self):
        self.update_location()
        super(Shop, self).put()
    @classmethod
    def CreateNew(cls ,name,location,contactphone,workingdays,normalhoursstart,normalhoursend,weekendhoursstart,weekendhoursend,isworkingonweekend,isworkingsunday , _isAutoInsert=False):
        result = cls(
                     Name=name,
                     Location=location,
                     ContactPhone=contactphone,
                     WorkingDays=workingdays,
                     NormalHoursStart=normalhoursstart,
                     NormalHoursEnd=normalhoursend,
                     WeekendHoursStart=weekendhoursstart,
                     WeekendHoursEnd=weekendhoursend,
                     IsWorkingOnWeekend=isworkingonweekend,
                     IsWorkingSunday=isworkingsunday,)
        if _isAutoInsert: result.put()
        return result
    def __str__(self):
        #TODO: Change the method to represent something meaningful
        return self.Name+"("+self.Company.Name+")"+str(self.location) 
Пример #4
0
class Promotion(db.Model):
    """TODO: Describe Promotion"""
    Items= db.ListProperty(db.Key, required=True)
    Promotors = db.ListProperty(db.Key, required=True)
    IsCompanyWide = db.BooleanProperty(default=True)
    PromotionLink= db.LinkProperty()
    DateStart= db.DateProperty(required=True)
    DateEnd= db.DateProperty(required=True)
    
    @classmethod
    def CreateNew(cls ,items,promotionlink,datestart,dateend, isCompanyWide=True, promotors=None , _isAutoInsert=False):
        if not promotors:
            promotors = []
            if isCompanyWide:
                promotors = [items[0].Shop.Company.key(),]
            else:
                promotors = [items[0].Shop.key(),]
        result = cls(Items=items,
                     Promotors=promotors,
                     PromotionLink=promotionlink,
                     DateStart=datestart,
                     DateEnd=dateend,)
        if _isAutoInsert: result.put()
        return result
    def __str__(self):
        #TODO: Change the method to represent something meaningful
        return  ', '.join([x.Name for x in db.get(self.Items)])
Пример #5
0
class Equity(db.Model):
    ticker = db.StringProperty(required=True)
    style = db.BooleanProperty(required=True)
    target = db.FloatProperty(required=True)
    price = db.FloatProperty(required=True)
    date = db.DateProperty(auto_now_add=True)
    maturity = db.DateProperty(required=True)
class Person(db.Model):
    """Base person class.  Necessary in the case of non-member board nominees."""

    firstname = db.StringProperty()
    lastname = db.StringProperty()
    username = db.StringProperty(required=True)
    email = db.EmailProperty(required=True)
    altemails = db.ListProperty(item_type=db.Email)
    phone = db.PhoneNumberProperty()
    altphones = db.ListProperty(item_type=db.PhoneNumber)
    address = db.PostalAddressProperty()
    # password is hashed with sha256
    password = db.BlobProperty(required=True)
    password_expired = db.BooleanProperty(default=False)
    active = db.BooleanProperty(default=True)
    admin = db.BooleanProperty(default=False)
    joined = db.DateProperty()
    left = db.DateProperty()

    @staticmethod
    def EncryptPassword(password):
        """Encrypts a password using SHA-256 encoding.

    Args:
      password: str, password to encrypt.
    Returns:
      str, encrypted password.
    """
        return hashlib.sha256(password).digest()
Пример #7
0
class Venue(GeoModel):
    name = db.StringProperty()
    address = db.PostalAddressProperty()
    start_date = db.DateProperty()
    end_date = db.DateProperty()

    def date_string(self):
        start_date = self.start_date.strftime("%m/%d/%Y")
        end_date = self.end_date.strftime("%m/%d/%Y")

        return '%s - %s' % (start_date, end_date)

    def unlink_templates(self):
        templates = self.template_set
        for template in templates:
            template.venue = None
            template.put()

    def to_dict(self):
        result = to_dict(self)
        result['id'] = self.key().id()

        return result

    def delete(self):
        self.unlink_templates()
        super(Venue, self).delete()
Пример #8
0
class Internship(db.Model):
    member = db.ReferenceProperty(Member, collection_name="Member_Internship")
    ep_id = db.StringProperty()
    project = db.ReferenceProperty(Project,
                                   collection_name="Project_Internship")
    date_start = db.DateProperty(auto_now_add=True)
    date_end = db.DateProperty()
    approved = db.BooleanProperty()
Пример #9
0
class Contest(db.Model):
    title = db.StringProperty(required=True)
    contest_type = db.StringProperty(required=True,
                                     choices=set(["online", "onsite"]))
    contest_start_date = db.DateProperty()
    contest_end_date = db.DateProperty()
    approved_contest = db.BooleanProperty(required=True)
    detail = db.StringProperty()
Пример #10
0
class Campaign(db.Model, Root.Handler):
    _name = db.StringProperty()
    _organisation = db.StringProperty()
    _category = db.StringProperty()
    _targetAmount = db.StringProperty()
    _startDate = db.DateProperty()
    _endDate = db.DateProperty()
    _description = db.TextProperty()
Пример #11
0
class Betlin(db.Model):
    #key = db.Key.from_path('Persons','root','Person','%s' % (Nr), 'Betlin', '%s' % (Id))
    Id = db.IntegerProperty()
    Betref = db.ReferenceProperty(Bet, collection_name='listBetlin')
    Pbssektionnr = db.StringProperty()
    Pbstranskode = db.StringProperty()
    Nr = db.IntegerProperty()
    Faknr = db.IntegerProperty()
    Debitorkonto = db.StringProperty()
    Aftalenr = db.IntegerProperty()
    Betalingsdato = db.DateProperty()
    Belob = db.FloatProperty()
    Indbetalingsdato = db.DateProperty()
    Bogforingsdato = db.DateProperty()
    Indbetalingsbelob = db.FloatProperty()
    Pbskortart = db.StringProperty()
    Pbsgebyrbelob = db.FloatProperty()
    Pbsarkivnr = db.StringProperty()
    Fakref = db.ReferenceProperty(Fak, collection_name='listBetlin')

    def linkFak(self):
      if not self.Fakref:
        qry = Fak.all().filter('Faknr =', self.Faknr)
        for fakrec in qry:
          if fakrec.Nr == self.Nr:
            self.Fakref = fakrec.key()
            self.put()
            break
    
    def addMedlog(self):
      if self.Pbstranskode in ['0236','0237','0297']:      
        fakroot = db.Key.from_path('Persons','root','Person','%s' % (self.Nr), 'Betlin', '%s' % (self.Id))
        medlog = Medlog.get_or_insert('%s' % (self.Id), parent=fakroot)
        medlog.Id = self.Id
        medlog.Source = 'Betlin'
        medlog.Source_id = self.Id
        medlog.Nr = self.Nr
        try:
          medlog.Logdato = self.Betref.Frapbsref.Udtrukket
        except:
          pass
        if self.Pbstranskode in ['0236','0297']:
          qry = Fak.all().filter('Faknr =', self.Faknr)
          for fakrec in qry:
            if fakrec.Nr == self.Nr:
              medlog.Akt_dato = fakrec.Tildato
              medlog.Akt_id = 30
              medlog.put()
              return
        elif self.Pbstranskode in ['0237']:
          medlog.Akt_id = 40
          medlog.Akt_dato = self.Betalingsdato
          medlog.put()
          return

        medlog.delete()
        return
Пример #12
0
class Occasion(db.Model):
    """
    A container of events.
    """
    title = db.StringProperty(required=True)
    description = db.TextProperty(required=True)
    date_start = db.DateProperty(required=True)
    date_end = db.DateProperty(required=True)
    author = db.UserProperty(required=True)
Пример #13
0
class Quiz(db.Model):
    """Definisce un quiz come una domanda, un intervallo di validita' per il quiz
	stesso ed una lista di risposte ( di cui una o piu' corretta )"""
    title = db.StringProperty()
    body = db.TextProperty()
    dateStart = db.DateProperty()
    dateEnd = db.DateProperty()
    answer = db.ListProperty(db.Key)  # Quizanswer
    # utenti che hanno gia'  risposto al quiz
    users = db.ListProperty(db.Key)  #User
Пример #14
0
class IndicatorConfirmation(DerefModel):
    submission = db.ReferenceProperty(IndicatorSubmission, required=True)
    indicator = db.ReferenceProperty(Indicator, required=True)
    snaparea = db.ReferenceProperty(SnapArea, required=True)
    area = db.ReferenceProperty(Area, required=True)
    zone = db.ReferenceProperty(Zone, required=True)
    week = db.ReferenceProperty(Week, required=True)
    weekdate = db.DateProperty(required=True)

    name = db.StringProperty(required=True, indexed=False)
    date = db.DateProperty(required=True, indexed=False)
Пример #15
0
class usuarios(db.Model):
    usuario = db.StringProperty()
    password = db.StringProperty()
    nombre = db.StringProperty()
    paterno = db.StringProperty()
    materno = db.StringProperty()
    fecha_nacimiento = db.DateProperty()
    fecha_alta = db.DateProperty()
    sexo = db.StringProperty()
    pregunta_secreta = db.StringProperty()
    respuesta_secreta = db.StringProperty()
Пример #16
0
class DateTimeModel(db.Model):
    prop_date_time_1 = db.DateTimeProperty()
    prop_date_time_2 = db.DateTimeProperty(auto_now=True)
    prop_date_time_3 = db.DateTimeProperty(auto_now_add=True)

    prop_date_1 = db.DateProperty()
    prop_date_2 = db.DateProperty(auto_now=True)
    prop_date_3 = db.DateProperty(auto_now_add=True)

    prop_time_1 = db.TimeProperty()
    prop_time_2 = db.TimeProperty(auto_now=True)
    prop_time_3 = db.TimeProperty(auto_now_add=True)
Пример #17
0
class Aftalelin(db.Model):
    #key = db.Key.from_path('Persons','root','Person','%s' % (Nr), 'Aftalelin', '%s' % (Id))
    Id = db.IntegerProperty()
    Frapbsref = db.ReferenceProperty(Frapbs, collection_name='listAftalelin')
    Pbstranskode = db.StringProperty()
    Nr = db.IntegerProperty()
    Debitorkonto = db.StringProperty()
    Debgrpnr = db.StringProperty()
    Aftalenr = db.IntegerProperty()
    Aftalestartdato = db.DateProperty()
    Aftaleslutdato = db.DateProperty()
    Pbssektionnr = db.StringProperty()
Пример #18
0
class Task(db.Model):
	client_name = db.StringProperty()
	client_address = db.StringProperty(multiline=True)
	tags = db.StringProperty(multiline=True)
	content = db.StringProperty(multiline=True)
	start_date = db.DateProperty()
	end_date = db.DateProperty()
	start_at = db.TimeProperty()
	hour = db.IntegerProperty()
	reward = db.StringProperty()
	difficulty = db.IntegerProperty()
	date = db.DateTimeProperty(auto_now_add=True)
Пример #19
0
class Iniciativa(db.Expando):

    uuid = db.StringProperty()
    link_gaceta = db.StringProperty()
    rol_iniciativa = db.StringProperty()
    sinopsis = db.Text()
    titulo = db.Text()
    tramite = db.StringProperty()
    fecha = db.DateProperty()
    fecha_aprobacion = db.DateProperty()
    fecha_publicacion = db.DateProperty()
    diputado = db.StringProperty()
Пример #20
0
class TeacherEntity(entities.BaseEntity):
    """A class that represents a persistent database entity of teacher."""
    enrolled_on = db.DateProperty()
    is_enrolled = db.BooleanProperty(indexed=False)
    is_active = db.BooleanProperty(indexed=False)

    user_id = db.StringProperty(indexed=True)
    name = db.StringProperty(indexed=False)
    date = db.DateProperty()
    email = db.StringProperty(indexed=True)
    school = db.TextProperty(indexed=False)

    # Additional field for teachers
    sections = db.TextProperty(indexed=False)

    memcache_key = 'teachers'

    @classmethod
    def get_teachers(cls, allow_cached=True):
        items = MemcacheManager.get(cls.memcache_key)
        if not allow_cached or items is None:
            items = TeacherEntity.all().order('-date').fetch(1000)

            # TODO(psimakov): prepare to exceed 1MB max item size
            # read more here: http://stackoverflow.com
            #   /questions/5081502/memcache-1-mb-limit-in-google-app-engine
            MemcacheManager.set(cls.memcache_key, items)
        return items

    @classmethod
    def make(cls, name, email, school):
        entity = cls()
        entity.name = name
        entity.date = datetime.datetime.now().date()
        entity.enrolled_on = entity.date
        entity.is_enrolled = True
        entity.is_active = True
        entity.email = email
        entity.school = school
        return entity

    def put(self):
        """Do the normal put() and also invalidate memcache."""
        result = super(TeacherEntity, self).put()
        MemcacheManager.delete(self.memcache_key)
        return result

    def delete(self):
        """Do the normal delete() and invalidate memcache."""
        super(TeacherEntity, self).delete()
        MemcacheManager.delete(self.memcache_key)
Пример #21
0
class League(db.Model):
    """ A league is used for each set of individuals playing in a competition.

    Eg for Euro 2008 there might be a Blades league and a separate work league.
    """
    competition = db.ReferenceProperty(Competition)
    name = db.StringProperty()
    date = db.DateProperty()
    start = db.DateProperty()
    end = db.DateProperty()

    def __str__(self):

        return self.name
Пример #22
0
class Pedido(db.Model):
    cliente = db.ReferenceProperty(Cliente,
                                   collection_name='pedidos',
                                   required=True)
    descricao = db.TextProperty(required=True)
    valor = db.StringProperty(required=True)
    data_entrega = db.DateProperty(required=True)
    data_pedido = db.DateProperty(auto_now_add=True)
    pago = db.BooleanProperty(default=False)
    producao = db.ReferenceProperty(Producao, required=True)
    entrega = db.ReferenceProperty(Entrega, required=True)

    def finalizado(self):
        return self.producao.pronto() and self.entrega.entregue() and self.pago
Пример #23
0
class MissionaryProfile(db.Model):
    # itenary data
    it_flight_num = db.StringProperty(indexed=False)
    it_flight_comp = db.StringProperty(indexed=False)
    it_flight_arrive = db.DateTimeProperty(indexed=False)
    it_destination = db.StringProperty(indexed=False)
    it_ward = db.TextProperty(indexed=False)
    it_stake = db.TextProperty(indexed=False)
    return_areas = db.TextProperty(indexed=False)

    # history
    hist_data = db.TextProperty(indexed=False)
    hist_last_update = db.DateTimeProperty(indexed=False)
    hometown = db.StringProperty(indexed=False)
    photo = db.BlobProperty(indexed=False)

    stake = db.StringProperty(indexed=False)
    spres = db.StringProperty(indexed=False)
    stele = db.StringProperty(indexed=False)
    conf_date = db.DateProperty(indexed=False)

    # policia federal
    father = db.StringProperty(verbose_name="Father's name", indexed=False)
    mother = db.StringProperty(verbose_name="Mother's name", indexed=False)
    birth_city = db.StringProperty(verbose_name="City of birth", indexed=False)
    passport = db.StringProperty(verbose_name="Passport number", indexed=False)
    entrance = db.DateProperty(verbose_name="Entrance date", indexed=False)
    visa_num = db.StringProperty(
        verbose_name="Visa number: on glued-in paper in passport",
        indexed=False)
    issue_date = db.DateProperty(
        verbose_name="Issue date: on glued-in paper in passport",
        indexed=False)
    issued_by = db.StringProperty(
        verbose_name=
        "Repartição expedida, probably Los Angeles or San Francisco",
        indexed=False)
    entrance_place = db.StringProperty(
        verbose_name="Place of entrance: probably Guarulhos or Rio de Janeiro",
        indexed=False)
    entrance_state = db.StringProperty(
        verbose_name="State of entrance: probably SP or RJ", indexed=False)
    dou_prazo = db.DateProperty(
        verbose_name=
        "Prazo do DOU: date after the missionary's name on the DOU sheet",
        indexed=False)
    dou_date = db.DateProperty(
        verbose_name="Data do DOU: date at the top of the DOU sheet",
        indexed=False)
Пример #24
0
class StoredImage(db.Model):
    date_start = db.DateProperty()
    date_end = db.DateProperty()
    processed_image = db.BlobProperty()

    @staticmethod
    def KeyForImage(sequence, resized=False, start_date=None, end_date=None):
        if not start_date:
            raise Error('No start date given')
        base_key = '%s_%s' % (sequence, start_date.toordinal())
        if end_date:
            base_key += '_%s' % end_date.toordinal()
        if resized:
            base_key += '_r'
        return base_key
Пример #25
0
class IndicatorBaptism(DerefModel):
    submission = db.ReferenceProperty(IndicatorSubmission, required=True)
    indicator = db.ReferenceProperty(Indicator, required=True)
    snaparea = db.ReferenceProperty(SnapArea, required=True)
    area = db.ReferenceProperty(Area, required=True)
    zone = db.ReferenceProperty(Zone, required=True)
    week = db.ReferenceProperty(Week, required=True)
    weekdate = db.DateProperty(required=True)

    name = db.StringProperty(required=True, indexed=False)
    date = db.DateProperty(required=True, indexed=False)
    age = db.IntegerProperty(required=True, indexed=False)
    sex = db.StringProperty(choices=BAPTISM_SEX_CHOICES,
                            required=True,
                            indexed=False)
Пример #26
0
class AnnouncementEntity(entities.BaseEntity):
    """A class that represents a persistent database entity of announcement."""
    title = db.StringProperty(indexed=False)
    date = db.DateProperty()
    html = db.TextProperty(indexed=False)
    labels = db.StringProperty(indexed=False)
    is_draft = db.BooleanProperty()
    send_email = db.BooleanProperty()

    memcache_key = 'announcements'

    @classmethod
    def get_announcements(cls, allow_cached=True):
        items = MemcacheManager.get(cls.memcache_key)
        if not allow_cached or items is None:
            items = AnnouncementEntity.all().order('-date').fetch(1000)

            # TODO(psimakov): prepare to exceed 1MB max item size
            # read more here: http://stackoverflow.com
            #   /questions/5081502/memcache-1-mb-limit-in-google-app-engine
            MemcacheManager.set(cls.memcache_key, items)
        return items

    def put(self):
        """Do the normal put() and also invalidate memcache."""
        result = super(AnnouncementEntity, self).put()
        MemcacheManager.delete(self.memcache_key)
        return result

    def delete(self):
        """Do the normal delete() and invalidate memcache."""
        super(AnnouncementEntity, self).delete()
        MemcacheManager.delete(self.memcache_key)
Пример #27
0
class Candidate(db.Model):
    candidateId = db.StringProperty(required=True)
    name = db.StringProperty()
    date = db.DateProperty()
    email = db.EmailProperty()
    resumelink = db.LinkProperty()
    status = db.StringProperty()
Пример #28
0
class QuoteRequest(db.Model):
    """Quote request profile with user information"""
    state = db.StringProperty(required=True)
    gender = db.StringProperty(required=True,choices=strip(GENDERS))
    dob = db.DateProperty(required=True,verbose_name="Born on")
    
    height = db.StringProperty(required=True)
    weight = db.IntegerProperty(required=True)
    
    tobacco = db.StringProperty(required=True,choices=strip(TOBACCOS))
    rating = db.StringProperty(required=True,choices=strip(RATINGS))
    
    coverage = db.IntegerProperty(required=True,choices=stri(COVERAGE_RANGES))
    term = db.IntegerProperty(required=True,choices=stri(TERMS), verbose_name="Term (years)")
    
    payment_mode = db.StringProperty(required=True,choices=strip(PAYMENT_MODES))
    
    created = db.DateTimeProperty(auto_now_add=True)
    modified = db.DateTimeProperty(auto_now=True)
    
    def __unicode__(self):
        return "%s %s %s %s" % (self.created, self.state, self.gender, self.dob)
        
    @permalink
    def get_absolute_url(self):
        return ('efs.views.quote_request_detail', (), {'key': self.key()})
Пример #29
0
class Student(db.Model):
    name = db.StringProperty(required=True)
    role = db.StringProperty(required=True,
                             choices=set(["student", "classrep"]))
    enrolled_date = db.DateProperty()
    induction_completed = db.BooleanProperty(indexed=False)
    email = db.StringProperty()
Пример #30
0
class User(db.Model):
    @classmethod
    def new(cls):
        return User(enabled=0, restore_password=0)

    first_name = db.StringProperty()
    last_name = db.StringProperty()
    mobile_number = db.StringProperty(indexed=False)
    telephone_number = db.StringProperty(indexed=False)
    email = db.EmailProperty()
    rol = db.StringProperty(required=True, default='oper')
    password = db.StringProperty()
    gender = db.StringProperty(indexed=False)
    birthday = db.DateProperty(auto_now_add=True, indexed=False)
    realestate = db.ReferenceProperty(RealEstate)
    enabled = db.IntegerProperty()
    restore_password = db.IntegerProperty()
    updated_at = db.DateTimeProperty(auto_now=True)
    created_at = db.DateTimeProperty(auto_now_add=True)

    @property
    def full_name(self):
        return '%s %s' % (self.first_name if self.first_name else '',
                          self.last_name if self.last_name else '')

    def __repr__(self):
        return self.name