Example #1
0
 def register(self, request):
     if request.method == 'POST':
         register_form = RegisterForm(request.POST)
         if register_form.is_valid():
             region_id = register_form.cleaned_data['region_id']
             username = register_form.cleaned_data['username']
             password = register_form.cleaned_data['password']
             first_name = register_form.cleaned_data['first_name']
             last_name = register_form.cleaned_data['last_name']
             profile = ProfileRepo(user=request.user).register(
                 username=username,
                 password=password,
                 first_name=first_name,
                 last_name=last_name,
                 region_id=region_id)
             if profile is not None:
                 user = profile.user
                 if user is not None:
                     request1 = ProfileRepo(user=request.user).login(
                         request=request,
                         username=user.username,
                         password=password)
                     if request1 is not None and request1.user.is_authenticated:
                         CreateProfiles(profile=profile)
                         return redirect(reverse('app:home'))
         context = getContext(request)
         context['login_form'] = LoginForm()
         context['register_form'] = RegisterForm()
         context['reset_password_form'] = ResetPasswordForm()
         context['regions'] = RegionRepo(user=request.user).list()
         return render(request,
                       TEMPLATE_ROOT + 'login.html',
                       context=context)
     else:
         return redirect(reverse('authentication:login'))
Example #2
0
    def reset_password(self, request):
        user = request.user
        if request.method == 'POST':
            reset_password_form = ResetPasswordForm(request.POST)
            if reset_password_form.is_valid():
                username = reset_password_form.cleaned_data['username']
                old_password = reset_password_form.cleaned_data['old_password']
                new_password = reset_password_form.cleaned_data['new_password']
                request1 = ProfileRepo(user=request.user).reset_password(
                    request=request,
                    username=username,
                    old_password=old_password,
                    new_password=new_password)
                if request1 is not None:
                    return redirect(reverse('projectmanager:home'))

            context = getContext(request)
            context['message'] = 'نام کاربری و کلمه عبور صحیح نمی باشد'

            context['login_form'] = LoginForm()
            context['register_form'] = RegisterForm()
            context['reset_password_form'] = ResetPasswordForm()
            context['regions'] = RegionRepo(user=request.user).list()

            return render(request,
                          TEMPLATE_ROOT + 'login.html',
                          context=context)
        else:
            return redirect(reverse('authentication:login'))
Example #3
0
    def login(self, request, back_url='/'):
        context = {
            'app': {
                'logo': MainPicRepo().get(name=MainPicEnum.LOGO),
            }
        }

        context['back_url'] = back_url
        context['login_form'] = LoginForm()
        context['register_form'] = RegisterForm()
        context['reset_password_form'] = ResetPasswordForm()
        context['regions'] = RegionRepo(user=request.user).list()
        return render(request, TEMPLATE_ROOT + 'login.html', context)
Example #4
0
 def login(self, request, *args, **kwargs):
     context = {
         'app': {
             'logo': MainPicRepo().get(name=MainPicEnum.LOGO),
         }
     }
     if 'next' in request.GET:
         context['back_url'] = request.GET['next']
     else:
         context['back_url'] = reverse('app:home')
     context['login_form'] = LoginForm()
     context['register_form'] = RegisterForm()
     context['reset_password_form'] = ResetPasswordForm()
     context['regions'] = RegionRepo(user=request.user).list()
     return render(request, TEMPLATE_ROOT + 'login.html', context)
Example #5
0
 def add_customer(self, first_name, last_name, username, password):
     # must be replaced
     region = RegionRepo(user=self.user).get(region_id=1)
     user = User.objects.create_user(username=username,
                                     email='*****@*****.**',
                                     password=password)
     if user is not None:
         user.save()
         if user is not None:
             # user=ProfileRepo(user=self.user).register(username=username,password=password,first_name=first_name,last_name=last_name,region_id=region_id).user
             customer = Customer(first_name=first_name,
                                 last_name=last_name,
                                 user=user,
                                 region=region)
             customer.save()
             return customer
     return None
Example #6
0
    def profile(self, request, profile_id=0):
        user = request.user
        context = getContext(request=request)
        if not user.is_authenticated:
            return redirect(reverse("authentication:login"))
        active_profile = ProfileRepo(user=user).me
        # input(active_profile)
        if profile_id == 0:
            selected_profile = ProfileRepo(user=user).me
        else:
            selected_profile = ProfileRepo(user=user).get(
                profile_id=profile_id)
            # input(selected_profile)
        if selected_profile is None:
            raise Http404
        context['my_permissions'] = ProfileRepo(
            user=request.user).my_permissions()

        context['selected_profile'] = selected_profile
        if (selected_profile is not None
                and selected_profile.user == request.user
            ) or request.user.has_perm(f'{APP_NAME}.change_profile'):
            context['regions'] = RegionRepo(user=user).list().exclude(
                pk=selected_profile.region_id)
            context['edit_profile_form'] = EditProfileForm()
            context['upload_profile_image_form'] = UploadProfileImageForm()

        if selected_profile.user == request.user or request.user.has_perm(
                f'{APP_NAME}.view_profiletransaction'):
            transaction_repo = ProfileTransactionRepo(user=user)
            transactions = transaction_repo.list(profile_id=profile_id)[:20]
            context['transactions'] = transactions
            context['rest'] = transaction_repo.rest(profile_id=profile_id)

        return render(request, TEMPLATE_ROOT_DASHBOARD + 'profile.html',
                      context)