コード例 #1
0
ファイル: handlers.py プロジェクト: nebulae/vbitools
 def post(self):
     if self.request.form.get('jobid'):
         job = JobModel.get(self.request.form.get('jobid'))
         job.ChangedBy = self.auth_current_user
         job.Description = self.request.form.get('description')
         job.Nickname = self.request.form.get('nickname')
         add_history("job was updated", self.auth_current_user, job.key(), self.auth_current_user.assigned_to)
         job.put()  
     else: 
         job = JobModel()
         job.Approved = False
         job.Description = self.request.form.get('description')
         job.Nickname = self.request.form.get('nickname')
         job.ChangedBy = self.auth_current_user
         job.CreatedBy = self.auth_current_user
         job.Client = ClientModel.get(self.auth_current_user.assigned_to)
         job.OrderStage = OrderStatus.PendingQuote
         job.put()
         #.Created.strftime("%a, %b %d %Y - %I:%M%P")
         job.JobNumber = job.Created.strftime("%Y_%b_%d_")
         job.JobNumber += str(job.key().id())
         job.put()
         
         add_history("a request for a quote was started. ", self.auth_current_user, job.key(), self.auth_current_user.assigned_to)
     
     context = {'added': True, 'key' : str(job.key()) }
     if self.request.is_xhr:
         return render_json_response(context)
     else:
         return render_response('hello.html', **context)        
コード例 #2
0
ファイル: handlers.py プロジェクト: nebulae/vbitools
    def post(self):
        if self.request.form.get('jobid'):
            job = JobModel.get(self.request.form.get('jobid'))

            if job.JobStage >= JobStatus.PrePress and job.JobStage <= JobStatus.Complete:
                if job.JobStage == JobStatus.PrePress:
                    job.OrderStage = OrderStatus.PendingCustomerApproval
                if job.JobStage > JobStatus.PrePress:
                    job.JobStage = job.JobStage - 1
                    job.OrderStage = OrderStatus.JobSubmitted
                else:
                    job.JobStage = 0

                job.put()
                add_history(
                    "Advanced job to " + getStageDescription(job.JobStage),
                    self.auth_current_user, job.key(), job.Client.key())

            else:
                if job.OrderStage > OrderStatus.PendingCustomerApproval and job.OrderStage < OrderStatus.OutForDelivery:
                    job.OrderStage -= 100
                    job.put()
                    add_history(
                        "Advanced job to " +
                        getStageDescription(job.OrderStage),
                        self.auth_current_user, job.key(), job.Client.key())

            if self.request.is_xhr:
                context = {'regressed': True}
                return render_json_response(context)
コード例 #3
0
ファイル: handlers.py プロジェクト: nebulae/vbitools
    def post(self):
        if self.request.form.get('jobid'):
            job = JobModel.get(self.request.form.get('jobid'))
            
            if job.JobStage >= JobStatus.PrePress and job.JobStage <= JobStatus.Complete:
                if job.JobStage == JobStatus.PrePress:
                    job.OrderStage = OrderStatus.PendingCustomerApproval
                if job.JobStage > JobStatus.PrePress:
                    job.JobStage = job.JobStage - 1
                    job.OrderStage = OrderStatus.JobSubmitted
                else:
                    job.JobStage = 0
                
                job.put()
                add_history("Advanced job to " + getStageDescription(job.JobStage), self.auth_current_user, job.key(), job.Client.key())
                
            else: 
                if  job.OrderStage > OrderStatus.PendingCustomerApproval and job.OrderStage < OrderStatus.OutForDelivery:
                    job.OrderStage -= 100
                    job.put()
                    add_history("Advanced job to " + getStageDescription(job.OrderStage), self.auth_current_user, job.key(), job.Client.key())

            if self.request.is_xhr:
                    context = {'regressed': True}
                    return render_json_response(context)                               
コード例 #4
0
ファイル: handlers.py プロジェクト: nebulae/vbitools
    def post(self):
        if self.request.form.get('jobid'):
            job = JobModel.get(self.request.form.get('jobid'))
            job.ChangedBy = self.auth_current_user
            job.Description = self.request.form.get('description')
            job.Nickname = self.request.form.get('nickname')
            add_history("job was updated", self.auth_current_user, job.key(),
                        self.auth_current_user.assigned_to)
            job.put()
        else:
            job = JobModel()
            job.Approved = False
            job.Description = self.request.form.get('description')
            job.Nickname = self.request.form.get('nickname')
            job.ChangedBy = self.auth_current_user
            job.CreatedBy = self.auth_current_user
            job.Client = ClientModel.get(self.auth_current_user.assigned_to)
            job.OrderStage = OrderStatus.PendingQuote
            job.put()
            #.Created.strftime("%a, %b %d %Y - %I:%M%P")
            job.JobNumber = job.Created.strftime("%Y_%b_%d_")
            job.JobNumber += str(job.key().id())
            job.put()

            add_history("a request for a quote was started. ",
                        self.auth_current_user, job.key(),
                        self.auth_current_user.assigned_to)

        context = {'added': True, 'key': str(job.key())}
        if self.request.is_xhr:
            return render_json_response(context)
        else:
            return render_response('hello.html', **context)
コード例 #5
0
ファイル: handlers.py プロジェクト: nebulae/vbitools
 def post(self):
     if self.request.form.get('jobid'):                
         job = JobModel.get(self.request.form.get('jobid'))
         job.JobStage = JobStatus.PrePress
         job.put()
         add_history("Layout rejected by client.  ", self.auth_current_user, job.key(), job.Client.key())
         if self.request.is_xhr:
             context = {'regressed': True}
             return render_json_response(context)
コード例 #6
0
    def post(self):
        if self.request.form.get('key') is not None:
#            logging.log(logging.INFO, "deleting client with key " + self.request.form.get('key'))
            c = ClientModel.get(self.request.form.get('key'))
            name = c.Name
            if c:
                c.delete()
        add_history("a client was deleted! (%s)" % name, self.auth_current_user, None, None)
        return render_json_response({})
コード例 #7
0
ファイル: handlers.py プロジェクト: nebulae/vbitools
 def post(self):
     if self.request.form.get('jobid'):                
         job = JobModel.get(self.request.form.get('jobid'))
         job.OrderStage = OrderStatus.JobSubmitted
         job.JobStage = JobStatus.PrePress
         job.put()
         add_history("Quote accepted by client. ", self.auth_current_user, job.key(), job.Client.key())
         if self.request.is_xhr:
             context = {'advanced': True}
             return render_json_response(context)
コード例 #8
0
ファイル: handlers.py プロジェクト: nebulae/vbitools
 def post(self):
     if self.request.form.get('jobid'):
         job = JobModel.get(self.request.form.get('jobid'))
         job.OrderStage = OrderStatus.PendingCustomerApproval
         job.Quote = self.request.form.get('quote')
         job.put()
         add_history("Quote submitted to client. ", self.auth_current_user, job.key(), job.Client.key())
         if self.request.is_xhr:
             context = {'advanced': True}
             return render_json_response(context)
コード例 #9
0
ファイル: handlers.py プロジェクト: nebulae/vbitools
 def post(self):
     if self.request.form.get('jobid'):
         job = JobModel.get(self.request.form.get('jobid'))
         job.JobStage = JobStatus.PrePress
         job.put()
         add_history("Layout rejected by client.  ", self.auth_current_user,
                     job.key(), job.Client.key())
         if self.request.is_xhr:
             context = {'regressed': True}
             return render_json_response(context)
コード例 #10
0
ファイル: handlers.py プロジェクト: nebulae/vbitools
 def post(self):
     if self.request.form.get('jobid'):
         job = JobModel.get(self.request.form.get('jobid'))
         job.OrderStage = OrderStatus.JobSubmitted
         job.JobStage = JobStatus.PrePress
         job.put()
         add_history("Quote accepted by client. ", self.auth_current_user,
                     job.key(), job.Client.key())
         if self.request.is_xhr:
             context = {'advanced': True}
             return render_json_response(context)
コード例 #11
0
ファイル: handlers.py プロジェクト: nebulae/vbitools
 def post(self):
     if self.request.form.get('jobid'):
         job = JobModel.get(self.request.form.get('jobid'))
         job.OrderStage = OrderStatus.PendingCustomerApproval
         job.Quote = self.request.form.get('quote')
         job.put()
         add_history("Quote submitted to client. ", self.auth_current_user,
                     job.key(), job.Client.key())
         if self.request.is_xhr:
             context = {'advanced': True}
             return render_json_response(context)
コード例 #12
0
    def post(self, **kwargs):

        if not self.auth_current_user.is_admin and not self.auth_current_user.is_staff:
            return redirect(url_for('auth/login'))

        #get the client or create new if new
        if self.request.form.get('key') is not None:
            c = ClientModel.get(self.request.form.get('key'))
        else :
            c = ClientModel()
        #set the client properties and save
#        c.Changed = datetime.now()
        c.Name = self.request.form.get('name')  
        c.Address = self.request.form.get('address')  
        if self.request.form.get('phone') is not None:
            c.PhoneNumber = self.request.form.get('phone')
        c.Email = self.request.form.get('email')
        c.CreatedBy = self.auth_current_user
        c.put()  
        add_history("a client was updated", self.auth_current_user, None, c.key())
        self.set_message('success', 'Successfully saved your changes. ', flash=True, life=5)
        
        #create the user 
        username = self.request.form.get('username')
        password = self.request.form.get('password')
        context = {}
        if username and password:
            auth_id = 'own|%s' % username
            user = self.auth_create_user(username, auth_id, password=password, assigned_to=str(c.key()), email=self.request.form.get('email'))
            #create the result
            if user:
                context = {'clientadded': True, 'key': str(c.key()), 'user' : str(user.key()) }
                add_history("user was created", self.auth_current_user, None, c.key(), user.key())
                self.set_message('success', 'The user was created. ', flash=True, life=5)

        else :
            context = {'clientadded': True, 'key' : str(c.key()) }
        if self.request.is_xhr:
            return render_json_response(context)
        else:
            return redirect(self.request.form.get('redirect'))
コード例 #13
0
 def post(self, **kwargs):
     if str(self.auth_current_user.key()) == kwargs['userid'] or self.auth_current_user.is_admin or self.auth_current_user.is_staff:
         username = self.form.username.data
         email = self.form.email.data
         password = self.form.password.data
         password_confirm = self.form.password_confirm.data
         if password != password_confirm:
             self.set_message('error', "Password confirmation didn't match.", life = None)
             return self.get(**kwargs)
         olduser = User.get(kwargs['userid'])
         olduser.email = email
         if password is not None and len(password) > 0:
             olduser.set_password(password)
             self.set_message('success', 'The users password was changed. ', flash=True, life=5)
             add_history("user password was changed", self.auth_current_user, None, olduser.assigned_to, olduser.key())
         olduser.put()
         add_history("user was modified", self.auth_current_user, None, olduser.assigned_to, olduser.key())
         self.set_message('success', 'The user was successfully updated. ', flash=True, life=5)
         return self.get(**kwargs)
     else:
         return self.redirect_to(url_for('auth/login'))
コード例 #14
0
    def post(self, **kwargs):
        logging.log(logging.INFO, self.form.clients.data)
        redirect_url = self.redirect_path()
        if self.form.validate():
            username = self.form.username.data
            email = self.form.email.data
            password = self.form.password.data
            password_confirm = self.form.password_confirm.data
            client = self.form.clients.data
            admin = False
            staff = False
            if client == "admin":
                admin = True
                staff = False
                client = None

            if client == "staff":
                admin = False
                staff = True
                client = None

            if password != password_confirm:
                self.set_message('error', "Password confirmation didn't match.", life = None)
                return self.get(**kwargs)

            auth_id = 'own|%s' % username
            user = self.auth_create_user(username, auth_id, password=password, email=email, assigned_to = client, is_admin=admin, is_staff=staff)

            if user:
                add_history("user was created", self.auth_current_user, None, client, user.key())
                sendmail(user, password)
                self.set_message('success', 'The user was created and an email sent. ', flash=True, life=5)
                return redirect(redirect_url)
            else:
                self.set_message('error', 'This nickname is already registered.', life=None)
                return self.get(**kwargs)

        self.set_message('error', 'A problem occurred. Please correct the errors listed in the form.', life=None)
        return self.get(**kwargs)