Beispiel #1
0
 def index(self, *args):
     self.SetTemplate(templateName="Dolg_index.html")
     result ={}
     index = 0; count=20
     try:
         index = int(self.params.index)
         count = int(self.params.count)
     except:
         pass
     if self.params.key:
         p=Person.get(self.params.key)
         d1 = Dolg.gql("WHERE Od = :me and Na = :on AND Deleted=False", me=self.User, on = p).fetch(limit=100, offset=0)
         d2 = Dolg.gql("WHERE Od = :on and Na = :me AND Deleted=False", me=self.User, on = p).fetch(limit=100, offset=0)
         result['DolgList']= d1+d2
         result['Party']=p
     else:
         result['DolgList'] = Dolg.gql('WHERE Od = :k AND Deleted=False', k=self.User).fetch(limit=count, offset=index)+Dolg.gql('WHERE Na = :k AND Deleted=False', k=self.User).fetch(limit=count, offset=index)
     result['Totals'] = Totals(result['DolgList'], self.User)
     result['DolgForm']= DolgForm();result['op']= 'update';
     result['DolgList'] = sorted(result['DolgList'], key=lambda x:x.Datum, reverse=True)
     nextIndex = index+count;
     previousIndex = index<=0 and -1 or (index-count>0 and 0 or index-count)
     from Forms.BaseForms import InvitationForm
     result['InvitationFormK'] = InvitationForm()
     result.update(locals())
     return result
Beispiel #2
0
 def save(self, *args):
     instance = None
     if self.params.key:
         instance = Dolg.get(self.params.key)
     form=DolgForm(data=self.request.POST)
     if form.is_valid():
         od = None
         na = None
         if  form.cleaned_data['Type']=='1':
             na = Person.get(form.cleaned_data['Party'])
             od = self.User
         else:
              od = Person.get(form.cleaned_data['Party'])
              na = self.User
         if instance:
             instance.Note = form.cleaned_data["Note"]
             instance.Kolicina = float(form.cleaned_data["Ammount"])
             instance.Od = od
             instance.Na = na
             instance.DodadenOd = self.User
             instance.put()
         else:
             instance = Dolg.CreateNew(od=od, na=na,
                                       kolicina= form.cleaned_data["Ammount"],
                                       note=form.cleaned_data["Note"],
                                       dodaden_od=self.User, _isAutoInsert=True)
         self.status = 'Dolg is saved'
         try:
             self.send_email(instance, self.get_edit_body(instance, nov=not self.params.key))
             self.status+=' and message is sent'
         except Exception, ex:
             import logging
             logging.error(ex.message)
             self.status+=' but message is not sent. Probably the party does not have an email added in the profile'
         self.redirect(DolgController.get_url())
Beispiel #3
0
 def delete(self,*args):
     if self.params.key:
         item = Dolg.get(self.params.key)
         if item:
             item.Deleted = True
             item.put()
             self.status ='Dolg is deleted!'
             try:
                 self.send_email(item, self.get_delete_body(item))
                 self.status += ' Also mail was sent to the corresponding person'
             except Exception, ex:
                 self.status += ' Unfortunately mail was not sent to the corresponding person!'
         else:
             self.status='Dolg does not exist'
Beispiel #4
0
 def edit(self, *args):
     if self.params.key:
         item = Dolg.get(self.params.key)
         if item:
             type=0
             party = str(item.Od.key())
             if str(item.Od.key()) == str(self.User.key()):
                 type='1'
                 party = str(item.Na.key())
             form  = DolgForm(initial={'Type':type, 'Party':party, 'Note':item.Note, 'Ammount':int(item.Kolicina)})
             return {'op':'update', 'DolgForm':form, 'key':str(item.key())}
         else:
             self.status = 'Dolg does not exists'
             self.redirect(DolgController.get_url())
     else:
         self.status = 'Key not provided'
         return {'op':'insert' ,'DolgForm':DolgForm()}
Beispiel #5
0
 def details(self, *args):
     if self.params.key:
         item = Dolg.get(self.params.key)
         if item:
             form  = DolgForm()
             if item.Od == self.User:
                 form.cleaned_data['Type']=1
                 form.cleaned_data['Party'] = str(item.Na.key())
             else:
                 form.cleaned_data['Type']=0
                 form.cleaned_data['Party'] = str(item.Od.key())
             form.cleaned_data["Note"]=item.Note
             return {'op':'update', 'DolgForm': form}
         else:
             self.status = 'Dolg does not exists'
             self.redirect(DolgController.get_url())
     else:
         self.status = 'Key not provided'
         return {'op':'insert' ,'DolgForm':DolgForm()}