Example #1
0
 def processForm(self, REQUEST, RESPONSE):
     # Das Formular ist 1 Fall oder 1 Gruppe zugeordnet.
     gruppeid = self.form.get('gruppeid')
     fallid = self.form.get('fallid')
     dokid = self.form.get('dokid')
     if not dokid:
         self.last_error_message = "Keine ID fuer Dokument erhalten"
         return self.EBKuSError(REQUEST, RESPONSE)
     if gruppeid:
         dok = Gruppendokument(dokid)
         file='updgrvermeinf'
         gruppe_path = get_gruppe_path(int(gruppeid))
         fname = os.path.join(gruppe_path, dok['fname'])
     elif fallid:
         file='updvermeinf'
         dok = Dokument(dokid)
         fall = Fall(fallid)
         fname = os.path.join(get_akte_path(fall['akte__id']),
                              dok['fname'])
     else:
         self.last_error_message = "Keine ID fuer Gruppe oder Fall erhalten"
         return self.EBKuSError(REQUEST, RESPONSE)
     if not is_binary(dok):
         dok['text'] = open(fname, 'r').read()
     return self._edit_dokument(title='Dokument bearbeiten',
                                file=file,
                                dok=dok,
                                )
Example #2
0
 def processForm(self, REQUEST, RESPONSE):
     mitarbeiterliste = self.getMitarbeiterliste()
     user = self.user
     if self.form.has_key('dokid'):
         dokid = self.form.get('dokid')
     else:
         self.last_error_message = "Keine ID fuer Dokument erhalten"
         return self.EBKuSError(REQUEST, RESPONSE)
     dok = Gruppendokument(int(dokid))
     gruppe = Gruppe(dok['gruppe_id'])
     dokarten = get_codes('dokart')
     dokarten.sort('name')
     
     try:
         gruppe_path = get_gruppe_path(gruppe['id'])
         f = open('%s/%s'
                  % (gruppe_path,dok['fname']), 'r')
         text = f.read()
         f.close()
     except Exception, e:
         meldung = {'titel':'Fehler',
                    'legende':'Fehlerbeschreibung',
                    'zeile1': str(e),
                    'zeile2':'Versuchen Sie es bitte erneut.'}
         return (meldung_t %meldung)
 def processForm(self, REQUEST, RESPONSE):
     import os
     popen = os.popen
     
     akte = None
     #print "***************************"
     #print self.form.has_key('fallid')
     
     mitarbeiterliste = self.getMitarbeiterliste()
     user = self.user
     if self.form.has_key('expr'):
         expr = self.form.get('expr')
     else:
         self.last_error_message = "Kein Suchaudruck erhalten"
         return self.EBKuSError(REQUEST, RESPONSE)
         
     string.strip(expr)
     if len(expr) > 2:
         pass
     else:
         meldung = {'titel':'Fehler',
                    'legende':'Fehlerbeschreibung',
                    'zeile1': 'Der Suchausdruck sollte mind. 3 Buchstaben haben',
                    'zeile2':'Versuchen Sie es bitte erneut.'}
         return (meldung_t %meldung)
         
     if self.form.has_key('gruppeid'):
         gruppeid = self.form.get('gruppeid')
         gruppe = Gruppe(int(gruppeid))
         
         try:
             gruppe_path = get_gruppe_path(gruppe['id'])
             cwd = os.getcwd()
             os.chdir('%s' % gruppe_path)
             fd = popen('agrep -n -i %s *.txt ' % expr)
             ergebnis = fd.readlines()
             fd.close()
             os.chdir(cwd)
         except Exception, e:
             meldung = {'titel':'Fehler',
                      'legende':'Fehlerbeschreibung',
                      'zeile1': str(e),
                      'zeile2':'Versuchen Sie es bitte erneut.'}
             return (meldung_t %meldung)
             
         menue = menuegruppe_t % gruppe
         header = ("Suchergebnis in den Texten der Gruppe "%(name)s" " % gruppe)
         formhiddenv = formhiddennamevalues_t % ({'name' : 'gruppeid' ,
                                                  'value' : gruppeid})
 def processForm(self, REQUEST, RESPONSE):
     art = self.form.get('art')
     if self.form.has_key('gruppeid'):
         gruppeid = self.form.get('gruppeid')
         gruppe = Gruppe(int(gruppeid))
         dokid = self.form.get('dokid')
         dok = Gruppendokument(dokid)
         
         try:
             gruppe_path = get_gruppe_path(gruppe['id'])
         except Exception, e:
             meldung = {'titel':'Fehler',
                      'legende':'Fehlerbeschreibung',
                      'zeile1': str(e),
                      'zeile2':'Versuchen Sie es bitte erneut.'}
             return (meldung_t %meldung)
 def processForm(self, REQUEST, RESPONSE):
     mitarbeiterliste = self.getMitarbeiterliste()
     user = self.user
     
     if self.form.has_key('gruppeid'):
         dokid = self.form.get('dokid')
         gruppeid = self.form.get('gruppeid')
         gruppe = Gruppe(gruppeid)
         dok = Gruppendokument(dokid)
         mimetyp = Code(dok['mtyp'])
         try:
             gruppe_path = get_gruppe_path(gruppe['id'])
             f = open('%s/%s'
                      % (gruppe_path, dok['fname']), 'rb')
             datei = f.read()
             f.close()
         except Exception, e:
             meldung = {'titel':'Fehler',
                      'legende':'Fehlerbeschreibung',
                      'zeile1': str(e),
                      'zeile2':'Versuchen Sie es bitte erneut.'}
             return (meldung_t %meldung)
 def processForm(self, REQUEST, RESPONSE):
     if self.form.has_key('gruppeid'):
         gruppeid = self.form.get('gruppeid')
         gruppe = Gruppe(gruppeid)
         titel = 'Auszug vom %(day)d.%(month)d.%(year)d.' % today() + \
                   ' - %s -' % gruppe['gn'] + '\n\n\n'
     else:
         fallid = self.form.get('fallid')
         fall = Fall(int(fallid))
         akte = Akte(fall['akte_id'])
         faelle = akte['faelle']
         faelle.sort('bgy','bgm','bgd')
         titel = 'Auszug vom %(day)d.%(month)d.%(year)d.' % today() + ' - %s -' % fall['fn'] + '\n\n\n'
         
     art = self.form.get('art')
     
     out = ''
     
     # Aktendokumente
     
     if self.form.has_key('fallid'):
         for f in faelle:
             if art == 'bnotiz':
                 dokl = DokumentList(where = 'fall_id = %s and art = %s and mtyp = %s and mit_id = %s' % (f['id'], cc('dokart', 'bnotiz'), cc('mimetyp', 'txt'), self.mitarbeiter['id']), order = 'vy,vm,vd')
                 
             elif art=='anotiz':
                 adokl = DokumentList(where = 'fall_id = %s and mtyp = %s'
                                        % (f['id'], cc('mimetyp', 'txt')), order = 'vy,vm,vd')
                 dokl = []
                 for d in adokl:
                     if d['art'] != cc('dokart', 'bnotiz'):
                         dokl.append(d)
                         
             out = out + mk_text(dokl, get_akte_path(akte['id']))
             
             # Gruppendokumente
             
     elif gruppeid and art == 'bnotiz':
         dokl = GruppendokumentList(where = 'gruppe_id = %s and art = %s and mtyp = %s and mit_id = %s'% (gruppe['id'], cc('dokart', 'bnotiz'), cc('mimetyp', 'txt'), self.mitarbeiter['id']), order = 'vy,vm,vd')
         out = mk_text(dokl, get_gruppe_path(gruppe['id']))
         
     elif gruppeid and art=='anotiz':
         adokl = GruppendokumentList(where = 'gruppe_id = %s and mtyp = %s'
                                % (gruppe['id'], cc('mimetyp', 'txt')), order = 'vy,vm,vd')
         dokl = []
         for d in adokl:
             if d['art'] != cc('dokart', 'bnotiz'):
                 dokl.append(d)
         out = mk_text(dokl, get_gruppe_path(gruppe['id']))
         
         # Plain-Text-Ausgabe fuer den Browser. Alternativ: print_pdf.py
         
     if out is None or out == '':
         out = 'Kein Ascii-Text vorhanden'
     else:
         out = titel + out
         
         # Datei uebertragen
         
     if RESPONSE:
         RESPONSE.setHeader('content-type', '%s' % 'text/plain')
         RESPONSE.setHeader('filename', 'zusammenfassung.txt')
         RESPONSE.setBody(out)
     else:
         return "Fehler beim Anzeigen des Dokumentes"