Exemplo n.º 1
0
 def get(self, request, id, email):
     service = self.get_object(id)
     if not service:
         print('NOT FOUND')
     else:
         service = service[0]
         if len(service.provider) == 1:
             return redirect('person:EditService', id=id)
         else:
             E = service.provider[int(email)]
             if service.type == 'B':
                 r = utils.update_bus_service(id=id,
                                              provider=E,
                                              provider_code='REMOVE')
                 if r == 200:
                     service.provider.remove(E)
                     service.save()
             elif service.type == 'H':
                 r = utils.update_hotel_service(id=id,
                                                provider=E,
                                                provider_code='REMOVE')
                 if r == 200:
                     service.provider.remove(E)
                     service.save()
             return redirect('person:EditService', id=id)
Exemplo n.º 2
0
 def get(self, request, id, index):
     service = self.get_object(id)
     if not service:
         print('NOT FOUND')
     else:
         r = utils.update_bus_service(id=id,
                                      route=index,
                                      timing=index,
                                      boarding_point=index,
                                      route_code='REMOVE',
                                      timing_code='REMOVE',
                                      boarding_code='REMOVE')
         if r == 200:
             return redirect('person:EditService', id=id)
         else:
             return redirect('person:EditService', id=id)
Exemplo n.º 3
0
    def post(self, request, id):
        service = self.get_object(id)
        service = service[0]
        if service.type == 'B':
            if 'delete_service' in request.POST:
                user = self.get_user(request.session.get('email'))
                if check_password(request.POST.get('password'),
                                  user.get('password')):
                    r = utils.delete_bus_service(id=id)
                    if r == 200:
                        return redirect('person:Services')
                    else:
                        return render(
                            request, self.template_name, {
                                'form': self.get_form(id),
                                'form1': forms.ManagersForm(),
                                'form2': forms.PasswordForm(),
                                'form3': forms.EditRouteForm(),
                                'error2': '1',
                                'msg2': 'Network Error',
                                'service': self.get_service(id),
                                'type': get_type(request)
                            })
                else:
                    return render(
                        request, self.template_name, {
                            'form': self.get_form(id),
                            'form1': forms.ManagersForm(),
                            'form2': forms.PasswordForm(),
                            'form3': forms.EditRouteForm(),
                            'error2': '1',
                            'msg2': 'Incorrect Password',
                            'service': self.get_service(id),
                            'type': get_type(request)
                        })
            elif 'add_manager' in request.POST:
                form1 = forms.ManagersForm(request.POST)
                if form1.is_valid():
                    email = form1.cleaned_data.get('email')
                    if email not in service.provider:
                        r = utils.update_bus_service(id=id,
                                                     provider=email,
                                                     provider_code='ADD')
                        if r == 200:
                            service.provider.append(email)
                            service.save()
                        else:
                            return render(
                                request, self.template_name, {
                                    'form': self.get_form(id),
                                    'form1': form1,
                                    'form2': forms.PasswordForm(),
                                    'form3': forms.EditRouteForm(),
                                    'error1': '1',
                                    'msg1': 'Network Error',
                                    'service': self.get_service(id),
                                    'type': get_type(request)
                                })
                    return redirect('person:EditService', id=id)
                else:
                    return render(
                        request, self.template_name, {
                            'form': self.get_form(id),
                            'form1': form1,
                            'form2': forms.PasswordForm(),
                            'form3': forms.EditRouteForm(),
                            'error1': '1',
                            'service': self.get_service(id),
                            'type': get_type(request)
                        })
            elif 'edit_service' in request.POST:
                form = forms.EditBusServiceForm(request.POST)
                if form.is_valid():
                    r = utils.update_bus_service(
                        name=form.cleaned_data.get('name'),
                        price=form.cleaned_data.get('price'),
                        bus_number=form.cleaned_data.get('bus_number'),
                        seats=form.cleaned_data.get('seats'),
                        is_ready=form.cleaned_data.get('is_ready'),
                        id=id)
                    if r == 200:
                        service.name = form.cleaned_data.get('name')
                        service.save()
                        return render(
                            request, self.template_name, {
                                'form': self.get_form(id),
                                'success': '1',
                                'msg': 'INFORMATION UPDATED',
                                'form1': forms.ManagersForm(),
                                'form2': forms.PasswordForm(),
                                'form3': forms.EditRouteForm(),
                                'service': self.get_service(id),
                                'type': get_type(request)
                            })
                    else:
                        return render(
                            request, self.template_name, {
                                'form': self.get_form(id),
                                'error': '1',
                                'msg': 'NETWORK ERROR',
                                'form1': forms.ManagersForm(),
                                'form2': forms.PasswordForm(),
                                'form3': forms.EditRouteForm(),
                                'service': self.get_service(id),
                                'type': get_type(request)
                            })
                else:
                    return render(
                        request, self.template_name, {
                            'form': self.get_form(id),
                            'error': '1',
                            'msg': 'INVALID DETAILS',
                            'form1': forms.ManagersForm(),
                            'form2': forms.PasswordForm(),
                            'form3': forms.EditRouteForm(),
                            'service': self.get_service(id),
                            'type': get_type(request)
                        })
            elif 'edit_route' in request.POST:
                form3 = forms.EditRouteForm(request.POST)
                if form3.is_valid():
                    time = str(form3.cleaned_data.get('day')) + ':' + str(
                        form3.cleaned_data.get('time_hour')) + ':' + str(
                            form3.cleaned_data.get('time_mins'))
                    r = utils.update_bus_service(
                        id=id,
                        boarding_point=form3.cleaned_data.get(
                            'boarding_point'),
                        route=form3.cleaned_data.get('stop_name'),
                        route_code='ADD',
                        timing=time,
                        timing_code='ADD',
                        boarding_code='ADD')
                    if r == 200:
                        return render(
                            request, self.template_name, {
                                'form': self.get_form(id),
                                'success3': '1',
                                'msg3': 'Bus Route Updated',
                                'form1': forms.ManagersForm(),
                                'form2': forms.PasswordForm(),
                                'form3': forms.EditRouteForm(),
                                'service': self.get_service(id),
                                'type': get_type(request)
                            })
                    else:
                        return render(
                            request, self.template_name, {
                                'form': self.get_form(id),
                                'error3': '1',
                                'msg3': 'Network Error',
                                'form1': forms.ManagersForm(),
                                'form2': forms.PasswordForm(),
                                'form3': form3,
                                'service': self.get_service(id),
                                'type': get_type(request)
                            })
                else:
                    return render(
                        request, self.template_name, {
                            'form': self.get_form(id),
                            'error3': '1',
                            'msg3': 'INVALID DETAILS',
                            'form1': forms.ManagersForm(),
                            'form2': forms.PasswordForm(),
                            'form3': form3,
                            'service': self.get_service(id),
                            'type': get_type(request)
                        })

        elif service.type == 'H':
            if 'add_manager' in request.POST:
                form1 = forms.ManagersForm(request.POST)
                if form1.is_valid():
                    email = form1.cleaned_data.get('email')
                    if email not in service.provider:
                        r = utils.update_hotel_service(id=id,
                                                       provider=email,
                                                       provider_code='ADD')
                        if r == 200:
                            service.provider.append(email)
                            service.save()
                            return redirect('person:EditService', id=id)
                        else:
                            return render(
                                request, self.template_name_1, {
                                    'form': self.get_form_1(id),
                                    'form1': form1,
                                    'form2': forms.PasswordForm(),
                                    'error1': '1',
                                    'msg1': 'Network Error',
                                    'service': self.get_service_1(id),
                                    'type': get_type(request)
                                })
                    else:
                        return redirect('person:EditService', id=id)
                else:
                    return render(
                        request, self.template_name_1, {
                            'form': self.get_form_1(id),
                            'form1': form1,
                            'form2': forms.PasswordForm(),
                            'error1': '1',
                            'service': self.get_service_1(id),
                            'type': get_type(request)
                        })

            elif 'delete_service' in request.POST:
                user = self.get_user(request.session.get('email'))
                if check_password(request.POST.get('password'),
                                  user.get('password')):
                    r = utils.delete_hotel_service(id=id)
                    if r == 200:
                        return redirect('person:Services')
                    else:
                        return render(
                            request, self.template_name_1, {
                                'form': self.get_form_1(id),
                                'form1': forms.ManagersForm(),
                                'form2': forms.PasswordForm(),
                                'error2': '1',
                                'msg2': 'Network Error',
                                'service': self.get_service_1(id),
                                'type': get_type(request)
                            })
                else:
                    return render(
                        request, self.template_name_1, {
                            'form': self.get_form_1(id),
                            'form1': forms.ManagersForm(),
                            'form2': forms.PasswordForm(),
                            'error2': '1',
                            'msg2': 'Incorrect Password',
                            'service': self.get_service_1(id),
                            'type': get_type(request)
                        })

            elif 'edit_service' in request.POST:
                form = forms.EditHotelServiceForm(request.POST)
                if form.is_valid():
                    r = utils.update_hotel_service(
                        name=form.cleaned_data.get('name'),
                        price=form.cleaned_data.get('price'),
                        city=form.cleaned_data.get('city'),
                        area=form.cleaned_data.get('area'),
                        rooms=form.cleaned_data.get('rooms'),
                        address=form.cleaned_data.get('address'),
                        is_ready=form.cleaned_data.get('is_ready'),
                        id=id,
                        check_in=form.cleaned_data.get('check_in'),
                        check_out=form.cleaned_data.get('check_out'))
                    if r == 200:
                        service.name = form.cleaned_data.get('name')
                        service.save()
                        return render(
                            request, self.template_name_1, {
                                'form': self.get_form_1(id),
                                'success': '1',
                                'msg': 'INFORMATION UPDATED',
                                'form1': forms.ManagersForm(),
                                'form2': forms.PasswordForm(),
                                'service': self.get_service_1(id),
                                'type': get_type(request)
                            })
                    else:
                        return render(
                            request, self.template_name_1, {
                                'form': self.get_form_1(id),
                                'error': '1',
                                'msg': 'NETWORK ERROR',
                                'form1': forms.ManagersForm(),
                                'form2': forms.PasswordForm(),
                                'service': self.get_service_1(id),
                                'type': get_type(request)
                            })
                else:
                    return render(
                        request, self.template_name_1, {
                            'form': self.get_form(id),
                            'error': '1',
                            'msg': 'INVALID DETAILS',
                            'form1': forms.ManagersForm(),
                            'form2': forms.PasswordForm(),
                            'service': self.get_service_1(id),
                            'type': get_type(request)
                        })