Beispiel #1
0
 def update(self):
     self.url = ploneapi.portal.get().absolute_url() + '/medienportal'
     self.formurl = ploneapi.portal.get().absolute_url(
     ) + '/medienportal/createvalidpw'
     if self.request.get('code'):
         setSessionData(self.request,
                        {'resetkey': self.request.get('code')})
Beispiel #2
0
 def render(self):
     key = self.request.get('code')
     if not key:
         return u"<h2>Unberechtigter Zugriff</h2><p>Sie sind nicht für den Aufruf dieser Seite berechtigt.</p>"
     data = readMongoUserForDel(key)
     if not data:
         return u"<h2>Fehler</h2><p>Beim Lesen Ihrer Daten ist ein Fehler aufgetreten, bitte versuchen Sie es zu einem späteren Zeitpunkt erneut.</p>"
     sapapi = sapshopapi.getAPI()
     retcode = sapapi.deleteUserVerify(**data)
     if retcode.EX_RETURN == 0:
         url = ploneapi.portal.get().absolute_url() + '/medienportal'
         cookie = {}
         key = setSessionData(self.request, cookie)
         message = u"Wir haben in Ihrem Auftrag die Löschung Ihres Benutzerkontos erfolgreich ausgeführt."
         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'Bei der Löschung des Benutzerkontos ist ein Fehler aufgetreten. (%s)' % retcode.EX_MESSAGE
         ploneapi.portal.show_message(message=message,
                                      request=self.request,
                                      type='error')
         return self.response.redirect(url)
Beispiel #3
0
 def change_anschrift(self):
     data, errors = self.extractData()
     if errors:
         message = u'Bitte beachten Sie die angezeigen Fehler'
         ploneapi.portal.show_message(message=message,
                                      request=self.request,
                                      type='error')
         self.collapse = "panel-collapse collapse in"
         return
     data['ort'] = data.pop('meinort')
     data['email'] = self.userdata.get('email')
     data['mitnr'] = self.userdata.get('item')[0].get('MITNR')
     sapapi = sapshopapi.getAPI()
     retcode = sapapi.updateUser(**data)
     if retcode.EX_RETURN == 0:
         mongodata = formatdata(sapapi.getUser(data.get('email')))
         mongodata['email'] = data.get('email')
         key = setSessionData(self.request, mongodata)
         url = ploneapi.portal.get().absolute_url() + '/medienportal'
         message = u'Ihre Adressdaten wurden 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'
         message = u'Fehler beim Ändern Ihrer Adressdaten (%s)' % retcode.EX_MESSAGE
         ploneapi.portal.show_message(message=message,
                                      request=self.request,
                                      type='info')
         return self.response.redirect(url)
Beispiel #4
0
 def render(self):
     key = self.request.get('code')
     if not key:
         return u"<h2>Unberechtigter Zugriff</h2><p>Sie sind nicht für den Aufruf dieser Seite berechtigt.</p>"
     data = getMongoUser(key)
     if not data:
         return u"<h2>Fehler</h2><p>Beim Lesen Ihrer Daten ist ein Fehler aufgetreten, bitte versuchen Sie es zu einem späteren Zeitpunkt erneut.</p>"
     sapapi = sapshopapi.getAPI()
     retcode = sapapi.addUser(**data)
     if retcode.EX_RETURN == 0:
         mongodata = formatdata(sapapi.getUser(data.get('email')))
         mongodata['email'] = data.get('email')
         key = setSessionData(self.request, mongodata)
         url = self.context.absolute_url() + '/changeanschrift'
         return self.response.redirect(url)
     return u"<h2>Fehler</h2><p>Beim Anlegen Ihres Benutzerkontos ist ein Fehler aufgetreten, bitte versuchen Sie es zu einem späteren Zeitpunkt erneut.(%s)</p>" % retcode.EX_MESSAGE
Beispiel #5
0
 def get_user(self):
     data, errors = self.extractData()
     if errors:
         return
     sapapi = sapshopapi.getAPI()
     retcode = sapapi.getPassword(data.get('email'), data.get('passwort'))
     if retcode:
         mongodata = formatdata(sapapi.getUser(data.get('email')))
         mongodata['email'] = data.get('email')
         #mongodata['passwort'] = data.get('passwort')
         key = setSessionData(self.request, mongodata)
         url = self.context.absolute_url() + '/changeanschrift'
         return self.response.redirect(url)
     message = u'Benutzername oder Kennwort falsch'
     ploneapi.portal.show_message(message=message,
                                  request=self.request,
                                  type='error')
     return
Beispiel #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)
Beispiel #7
0
    def order(self):
        data, errors = self.extractData()
        if self.verif and len(errors) == 2:
            errors = None
        if errors:
            return
        sapapi = sapshopapi.getAPI()
        checker = self.checkBestand()
        if not checker:
            url = ploneapi.portal.get().absolute_url() + '/checkorder'
            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')
            return
        bestellung = sapapi.createOrder(self.userdata.get('email'),
                                        self.artlist)
        if bestellung.EX_RETURN == 0:
            self.bestellnummer = bestellung.EX_VBELN
            self.userdata['bestellnummer'] = self.bestellnummer
            key = setSessionData(self.request, self.userdata)

            mime_msg = MIMEMultipart('related')
            mime_msg['Subject'] = u"Ihre Bestellung auf bgetem.de"
            mime_msg['From'] = u"*****@*****.**"
            mime_msg['To'] = self.userdata.get('email')
            mime_msg.preamble = 'This is a multi-part message in MIME format.'
            msgAlternative = MIMEMultipart('alternative')
            mime_msg.attach(msgAlternative)

            htmltext = createOrderMessage(self.userdata, self.verif, self.mnr,
                                          self.artlist, self.gesamt_mem,
                                          self.gesamt, self.bestellnummer)
            msg_txt = MIMEText(htmltext, _subtype='html', _charset='utf-8')
            msgAlternative.attach(msg_txt)
            mail_host = ploneapi.portal.get_tool(name='MailHost')
            mail_host.send(mime_msg.as_string())

            #message = u'Vielen Dank, Ihre Bestellung ist bei uns eingegangen. Sie erhalten eine Bestätigung per E-Mail.'
            #ploneapi.portal.show_message(message=message, request=self.request, type='info')
            try:
                carddata = getCartCookie(self.request)
                for i in carddata:
                    artikel = ploneapi.content.find(UID=i)[0].getObject()
                    artikel._v_article = None
                session = ISession(self.request)
                del session['cart']
                session.save()
            except:
                print u'Problem beim Delete Session'
            url = ploneapi.portal.get().absolute_url(
            ) + '/medienportal/orderconfirm'
            return self.response.redirect(url)

        else:
            message = u'Bei Ihrer Bestellung ist leider ein Fehler aufgetreten. Bitte versuchen Sie es später noch einmal. (%s)' % bestellung.EX_MESSAGE
            ploneapi.portal.show_message(message=message,
                                         request=self.request,
                                         type='error')
            return self.response.redirect(self.formurl)
Beispiel #8
0
 def update(self):
     cookie = {}
     key = setSessionData(self.request, cookie)