Esempio n. 1
0
 def update(self):
     self.registerurl = ploneapi.portal.get().absolute_url(
     ) + '/medienportal/createuser'
     self.formurl = ploneapi.portal.get().absolute_url(
     ) + '/medienportal/loginform'
     #Redirect if user is already logged in
     if getSessionData(self.request):
         if getSessionData(self.request).get('email'):
             url = ploneapi.portal.get().absolute_url(
             ) + '/medienportal/changeanschrift'
             return self.response.redirect(url)
Esempio n. 2
0
 def change_pw(self):
     data, errors = self.extractData()
     if errors:
         return
     mycookie = getSessionData(self.request)
     resetkey = mycookie.get('resetkey')
     mongodata = readMongoUserForPwReset(resetkey)
     if not mongodata:
         message = u"Fehler beim Lesen Ihrer Daten! Bitte versuchen Sie es zu einem späteren Zeitpunkt erneut."
         ploneapi.portal.show_message(message=message,
                                      request=self.request,
                                      type='error')
         return self.response.redirect(url)
     newdata = {}
     newdata['email'] = mongodata.get('email')
     newdata['old_password'] = mongodata.get('pwcode')
     newdata['new_password'] = data.get('passwort')
     sapapi = sapshopapi.getAPI()
     retcode = sapapi.updatePassword(**newdata)
     if retcode.EX_RETURN == 0:
         url = ploneapi.portal.get().absolute_url() + '/medienportal'
         message = u'Ihr Passwort wurde erfolgreich gespeichert. Sie können sich nun mit dem neuen Passwort anmelden.'
         ploneapi.portal.show_message(message=message,
                                      request=self.request,
                                      type='info')
         return self.response.redirect(url)
     else:
         url = ploneapi.portal.get().absolute_url() + '/medienportal'
         message = u'Fehler beim Speichern Ihres Passwortes. (%s)' % retcode.EX_MESSAGE
         ploneapi.portal.show_message(message=message,
                                      request=self.request,
                                      type='error')
         return self.response.redirect(url)
Esempio n. 3
0
 def is_user(self):
     ret = 'anon'
     userdata = getSessionData(self.request)
     if userdata.get('email'):
         if userdata.get('item')[0].get('MITNR'):
             if userdata.get('item')[0].get('VERIF'):
                 ret = 'mitglied'
         else:
             if userdata.get('item')[0].get('VERIF'):
                 ret = 'notmitglied'
     return ret
Esempio n. 4
0
    def update(self):
        if not hasattr(self, 'collapse'):
            self.collapse = "panel-collapse collapse"
        self.userdata = getSessionData(self.request)
        formdata = changeformdata(self.userdata)
        self.formurl = ploneapi.portal.get().absolute_url(
        ) + '/medienportal/changeanschrift'
        self.homeurl = ploneapi.portal.get().absolute_url() + '/medienportal'
        self.weiterurl = ploneapi.portal.get().absolute_url(
        ) + '/medienportal/checkorder'
        self.card = getCartCookie(self.request)

        self.setContentData(DictDataManager(formdata))
Esempio n. 5
0
    def update(self):
        self.formurl = ploneapi.portal.get().absolute_url(
        ) + '/medienportal/checkorder'
        self.userdata = getSessionData(self.request)
        self.verif = False
        if self.userdata.get('item')[0].get('MITNR'):
            self.verif = self.userdata.get('item')[0].get('VERIF')
        self.mnr = self.userdata.get('item')[0].get('MITNR')
        checker = self.checkBestand()
        if not checker:
            message = u'Bei Ihrer Bestellung ist leider ein Fehler aufgetreten. Bitte beachten Sie die aktualisierten Mengen bei den rot markierten\
                        Artikeln.'

            ploneapi.portal.show_message(message=message,
                                         request=self.request,
                                         type='error')
Esempio n. 6
0
    def del_user(self):
        data, errors = self.extractData()
        if errors:
            return
        email = getSessionData(self.request).get('email', '')
        sapapi = sapshopapi.getAPI()
        retcode = sapapi.deleteUser(email)
        if retcode.EX_RETURN == 0:
            url = ploneapi.portal.get().absolute_url() + '/medienportal'
            if True:
                code = retcode.EX_DELCODE
                validkey = saveMongoUserForDel(email, code)
                msgbody = createDelMessage(data, validkey)
                ploneapi.portal.send_email(
                    recipient=email,
                    sender=u"*****@*****.**",
                    subject=
                    u"Ihre Auftrag zur Löschung eines Benutzers aus dem Medienportal der BG ETEM.",
                    body=msgbody,
                )
            else:
                message = u'Leider ist beim Auftrag zur Löschung Ihres Benutzerkontos ein Fehler aufgetreten. Bitte versuchen Sie es zu\
                            einem späteren Zeitpunkt noch einmal'

                ploneapi.portal.show_message(message=message,
                                             request=self.request,
                                             type='error')
                return self.response.redirect(url)
            cookie = {}
            key = setSessionData(self.request, cookie)
            message = u'Wir haben Ihnen soeben eine Nachricht zur Bestätigung Ihrer E-Mail-Adresse gesendet. Bitte prüfen Sie\
                      ihr E-Mail-Postfach. Ihr Benutzerkonto kann erst gelöscht werden, wenn Sie auf den in der E-Mail\
                      enthaltenen Link klicken. Wir bitten um Ihr Verständnis, dass es gelegentlich beim Versand der Bestätigungsmail\
                      prozessbedingt zu Verzögerungen von bis zu einer Stunde kommen kann.'

            ploneapi.portal.show_message(message=message,
                                         request=self.request,
                                         type='info')
            return self.response.redirect(url)
Esempio n. 7
0
 def change_pw(self):
     data, errors = self.extractData()
     if errors:
         return
     del data['new_password2']
     data['email'] = getSessionData(self.request).get('email', '')
     sapapi = sapshopapi.getAPI()
     retcode = sapapi.updatePassword(**data)
     if retcode.EX_RETURN == 0:
         url = ploneapi.portal.get().absolute_url() + '/medienportal'
         message = u'Ihr Passwort wurde erfolgreich geändert.'
         ploneapi.portal.show_message(message=message,
                                      request=self.request,
                                      type='info')
         return self.response.redirect(url)
     else:
         url = ploneapi.portal.get().absolute_url(
         ) + '/medienportal/changepassword'
         message = u'Fehler beim Ändern Ihres Passwortes. (%s)' % retcode.EX_MESSAGE
         ploneapi.portal.show_message(message=message,
                                      request=self.request,
                                      type='error')
         return self.response.redirect(url)
Esempio n. 8
0
 def update(self):
     shop = ploneapi.portal.get().absolute_url() + '/medienportal'
     self.available = self._available()
     self.shopbutton = True
     if self.request.get('URL').endswith('vuecart'):
         self.shopbutton = False
     if self.context.absolute_url().endswith('vuecart'):
         self.shopbutton = False
     artikel = getCartCookie(self.request)
     print artikel
     menge = 0
     for i in artikel:
         menge += int(artikel[i].get('menge'))
     #self.artikel = len(getCartCookie(self.request).keys())
     self.artikel = menge
     self.shop_url = shop + '/vuecart'
     self.del_link = shop + '/@@delcard?redirect=%s' % shop
     self.login_link = shop + '/@@loginform'
     self.userdel_link = shop + '/@@deleteuserform'
     self.changepw_link = shop + '/@@changepassword'
     self.changeadr_link = shop + '/@@changeanschrift'
     self.logout_link = shop + '/@@userlogout'
     self.email = getSessionData(self.request).get('email', '')
     self.card = getCartCookie(self.request)
Esempio n. 9
0
 def update(self):
     registry = getUtility(IRegistry)
     wartung = registry[
         'bgetem.medienshop.settings.IMedienportalSettings.wartung']
     if wartung:
         print "Wartung"
         url = self.context.absolute_url() + '/wartungsseite'
         return self.request.response.redirect(url)
     self.userdata = getSessionData(self.request)
     self.verif = False
     self.notmitglied = False
     if self.userdata.get('email'):
         if self.userdata.get('item')[0].get('MITNR'):
             self.verif = self.userdata.get('item')[0].get('VERIF')
         else:
             if self.userdata.get('item')[0].get('VERIF'):
                 self.notmitglied = True
     self.preis = formatMoney(self.context.preis)
     self.preis_mem = formatMoney(self.context.preis_mem)
     self.download_only = False
     self.bestand = False
     self.bestandsmenge = int(self.context.bestand)
     if self.context.bestand > 0:
         self.bestand = True
     if self.context.medienart in [u'K11', u'P08']:
         self.download_only = True
     if hasattr(self.context, 'download_only'):
         if self.context.download_only:
             self.download_only = True
     self.freimenge = int(self.context.freimenge)
     self.warenkorb = self.context.absolute_url(
     ) + '/@@tocard?redirect=' + self.context.absolute_url()
     imagename = getPlaceholder(self.context.medienart,
                                self.context.artikelnummer)
     placeholderurl = ploneapi.portal.get().absolute_url() + '/' + imagename
     self.titleimg = placeholderurl
     self.textversicherte = u"Versicherte Unternehmen:<br/>%s Freiexemplare, jedes weitere Exemplar %s €" % (
         self.freimenge, self.preis_mem)
     self.textbesteller = u"Andere Besteller:<br>%s € zzgl. %s € Versandkosten</p>" % (
         self.preis, getVersandkosten())
     if self.download_only:
         self.textversicherte = u"Diesen Artikel können Sie nicht bestellen, sondern nur herunterladen."
         self.textbesteller = u""
     if self.verif:
         self.textversicherte = u"%s Freiexemplare, jedes weitere Exemplar %s €" % (
             self.freimenge, self.preis_mem)
         self.textbesteller = u""
     if self.notmitglied:
         self.textversicherte = u"%s € zzgl. %s € Versandkosten</p>" % (
             self.preis, getVersandkosten())
         self.textbesteller = u""
     if self.context.titelbild:
         self.titleimg = '%s/@@images/titelbild' % self.context.absolute_url(
         )
     self.bildunterschrift = ''
     if self.context.bildunterschrift:
         self.bildunterschrift = self.context.bildunterschrift
     self.kurzbeschreibung = self.context.description
     self.beschreibung = ''
     if self.context.beschreibung:
         self.beschreibung = self.context.beschreibung.output
     self.images = []
     if self.titleimg:
         self.images = [self.titleimg]
     images = self.getImages()
     if images:
         self.images = [self.titleimg] + images
     self.downloads = []
     if self.context.download:
         entry = {}
         entry[
             'url'] = '%s/@@download/download' % self.context.absolute_url(
             )
         filename = self.context.download.filename
         if self.context.filetitle:
             filename = self.context.filetitle
         entry['name'] = filename
         entry['werte'] = "%s / %s" % (
             self.context.download.contentType.split('/')[1],
             sizeof_fmt(self.context.download.size))
         self.downloads.append(entry)
     for i in self.getFiles():
         entry = {}
         entry['url'] = i.absolute_url() + '/@@download/file'
         entry['name'] = "%s" % i.title
         entry['werte'] = "%s / %s" % (i.content_type.split('/')[1],
                                       sizeof_fmt(i.size()))
         self.downloads.append(entry)
     self.abisz = []
     if self.context.abisz:
         for i in self.context.abisz:
             if i == 'gesundheitsmanagement':
                 i = 'bgm'
             self.abisz.append(themenabisz.getTerm(i).title)
         self.abisz = ', '.join(self.abisz)
     self.branchen = []
     if self.context.branchen:
         for i in self.context.branchen:
             self.branchen.append(bgetembranchen.getTerm(i).title)
         self.branchen = ', '.join(self.branchen)
     self.zielgruppen = []
     if self.context.zielgruppen:
         for i in self.context.zielgruppen:
             self.zielgruppen.append(bgetemzielgruppen.getTerm(i).title)
         self.zielgruppen = ', '.join(self.zielgruppen)
     try:
         self.medienart = bgetemmedienart.getTerm(
             self.context.medienart).title
     except:
         self.medienart = u''
     self.artnr = self.context.artikelnummer
     self.objectlist = []
     if self.context.artikelreferenzen:
         refobjects = self.getArtikelRefs()
         for i in refobjects:
             item = {}
             imagename = getPlaceholder(i.medienart, i.artikelnummer)
             placeholderurl = ploneapi.portal.get().absolute_url(
             ) + '/' + imagename
             item['img'] = placeholderurl
             item['title'] = i.title
             item['desc'] = i.description
             item['url'] = i.absolute_url()
             if i.titelbild:
                 item['img'] = '%s/@@images/titelbild' % i.absolute_url()
             self.objectlist.append(item)
Esempio n. 10
0
 def update(self):
     userdata = getSessionData(self.request)
     self.bestellnummer = userdata.get('bestellnummer')