def register(request): if request.method == 'POST': #Get form values: first_name = request.POST['first_name'] last_name = request.POST['last_name'] user_name = request.POST['username'] email = request.POST['email'] password = request.POST['password'] password2 = request.POST['password2'] #Check if passwords match if password == password2: if User.objects.filter(username=user_name).exists(): messages.ERROR(request, 'Username already exists') elif User.objects.filter(email=email).exists(): messages.ERROR(request, 'Email is being used') # if everything ok else: user = User(username=user_name, password=password, first_name=first_name, last_name=last_name, email=email) user.save() messages.success(request, 'You are now registered and cant log in') return redirect('accounts:login') else: messages.error(request, 'Passwords do not match') return redirect('accounts:register') else: template_name = 'accounts/register.html' context = {} return render(request, template_name, context)
def forgetpassword(request): if request.method == "POST": email=request.POST["email"] user = MyUser.objects.get(email=email) if user is None: messages.ERROR(request,"You are Not Registrade") return render(request, "Fir_app/forgetpassword.html") letters = string.ascii_lowercase result_str = ''.join(random.choice(letters) for i in range(8)) refkey=make_password(result_str) uid=str(user.id) try: email = EmailMessage( subject="Forget Password", body=" http://127.0.0.1:8000/getpassword/?q=" + refkey+"&uid="+str(uid)+"\n Click On Above Link for Verification", from_email=MY_SETTING, to=[email], ) messages.success(request, "Link Successfully Sent on your Email") email.send() user.ref_key="" user.ref_key=result_str user.save() except: messages.ERROR(request, "Something Went Wrong") return render(request,"Fir_app/forgetpassword.html")
def LoginView(request): form = Login_form() if request.method == 'POST': form = Login_form(request.POST or None) if form.is_valid(): print(csrf.get_token(request)) uname = form.cleaned_data['username'] password = form.cleaned_data['password'] try: mobile = int(uname) global username user = User.objects.filter(user_extra__mobile=mobile) username = user[0].username except ValueError: if '@' in uname: user = User.objects.filter(user_extra__email=uname) username = user[0].username else: username = uname user = authenticate(username=username, password=password) if user is not None: login(request, user) print(request.session.session_key) return render(request, 'multi_user_app/home.html', {'title': 'home_page'}) else: return messages.ERROR(request, 'Invalid credentional') return render(request, 'multi_user_app/login.html', {'form': form})
def detect(request): if request.method == "POST": data = request.FILES['sample_image'] data1 = str(data) img, extention = data1.split(".") if extention in allowed_extention: with open("accounts/media/detect/empty.png", "wb") as img: with data as image: myfile = File(img) for i in image: myfile.write(i) img.close() myfile.close() image = cv2.imread("accounts/media/detect/empty.png", 1) img = cv2.resize(image, (512, 512), interpolation=cv2.INTER_NEAREST) cv2.imwrite("accounts/media/detect/empty.png", img) main() messages.info(request, "Thank you for being Patient, ThankYou") return render(request, "final.html", {}) else: messages.ERROR(request, "Please provide Valid Image File(JPEG/JPG/PNG)") return redirect('detect:detector') else: return render(request, "upload.html", {'image_form': imageForm})
def post(self, request, event_id): event = get_object_or_404(Event, pk=event_id) try: event.delete() messages.success(request, 'Event has been succesfully deleted') return render(request, "homepage.html") except Exception as e: messages.ERROR(request, "There was a problem while deleting. Try again.", e) return render(request, "delete_event_tmp.html", {"event": event})
def login(request): if request.method == 'POST': username = request.POST['username'] password = request.POST['password'] user = auth.authenticate(username=username, password=password) if user is not None: auth.login(request, user) return redirect('client') else: messages.ERROR(request, 'Invalid Username or Password') return redirect('login') else: return render(request, 'client/login.html')
def add_user(request): template_name = 'accounts/add_user.html' context = {} if request.method == 'POST': form = UserForm(request.POST) if form.is_valid(): f = form.save(commit=False) f.set_password(f.password) f.save() messages.success(request, 'Usuário Adicionado com Sucesso') messages.ERROR(request, 'Usuário Não Adicionado verificar') form = UserForm() context['form'] = form return render(request, template_name, context)
def add_searched_member(request, pk): id_user = request.POST.get('id_user', False) if not id_user: messages.ERROR(request, 'ERROR: User is not in database.', extra_tags='alert') else: user = User.objects.get(id=id_user) project = Project.objects.get(id_project=pk) project.collaborators.add(user) messages.success(request, 'User was added to the project.', extra_tags='alert') return redirect('/projects/{}/members'.format(pk))
def agregar_producto(request): data = {'form': ProductoForm()} if request.method == 'POST': formulario = ProductoForm(data=request.POST, files=request.FILES) if formulario.is_valid(): formulario.save() messages.success(request, "Producto agregado correctamente") #data["mensaje"] = "Producto agregado correctamente" return redirect(to="listar_productos") else: messages.ERROR(request, "No se ha podido agregar el producto") data["form"] = formulario return render(request, 'app/producto/agregar.html', data)
def post(self, request, *args, **kwargs): form = SubscriptionForm(request.POST) if form.is_valid(): form.save() email = request.POST['email'] if request.user.is_authenticated(): news_teller, created = NewsTellerEmails.objects.get_or_create( user=request.user, email=email) else: news_teller = NewsTellerEmails.objects.create(email=email) return redirect("/") else: message = messages.ERROR("لطفا ایمیل معتبر وارد کنید") return HttpResponseBadRequest("form")
def login(request): if request.method != 'POST': return render(request, 'accounts/login.html') usuario = request.POST.get('usuario') senha = request.POST.get('senha') user = auth.authenticate(request, username=usuario, password=senha) if not user: messages.ERROR(request, 'Usuário ou senha inválidos') return render(request, 'accounts/login.html') else: auth.login(request,user) messages.success(request, 'Aproveite :)') return redirect('dashboard')
def water_cpu_change(request): if request.method == 'POST': water_cpu_form = Water_cpu_change(request.POST) if water_cpu_form.is_valid(): cd = water_cpu_form.cleaned_data ex_item = get_object_or_404(Extra, desc='Water CPU') ex_item.cpu = cd['water_cpu'] ex_item.save() messages.success(request, 'Water CPU has been chnaged !!') return HttpResponseRedirect(reverse_lazy('admin_page')) else: messages.ERROR(request, 'Error ... !!') else: water_cpu_form = Water_cpu_change() return render(request, 'ams/water_cpu_change.html', {'water_cpu_form': water_cpu_form})
def __call__(self, request, *args, **kwargs): if request.user.is_authenticated: current_session_key = Log_Activity.objects.filter( user__id=request.user.id).first() current_session_key = current_session_key.session_key if current_session_key and current_session_key != request.session.session_key: try: update = Log_Activity.objects.get( session_key=current_session_key) update.end_time = timezone.datetime.now() update.save() except Log_Activity.DoesNotExist: raise messages.ERROR( request, 'There is something error try again latter') respose = self.get_response(request) return respose
def elec_cpu_change(request): if request.method == 'POST': elec_cpu_form = Elec_cpu_change(request.POST) if elec_cpu_form.is_valid(): cd = elec_cpu_form.cleaned_data ex_item = get_object_or_404(Extra, desc='Electricity CPU') ex_item.cpu = cd['elec_cpu'] ex_item.save() messages.info(request, 'Electricity CPU has been chnaged !!') return HttpResponseRedirect(reverse_lazy('admin_page')) else: messages.ERROR(request, 'Error ... !!') else: elec_cpu_form = Elec_cpu_change() return render(request, 'ams/elec_cpu_change.html', {'elec_cpu_form': elec_cpu_form})
def enteruser(request): if request.method == "POST": username = request.POST['username'] fname = request.POST['fname'] lname = request.POST['lname'] email = request.POST['email'] password = request.POST['pass'] user=User.objects.create_user(username,email,password) user.first_name=fname print(user.first_name) user.last_name=lname print(user.last_name) user.save() messages.success(request,"Your Details Are Added") return redirect('ShopHome') else: messages.ERROR(request, "Something Went Wrong") return redirect('ShopHome')
def dashboard(request): if request.method != 'POST': form = FormTatto() estudio = FormEstudio() return render(request, 'home/dashboard.html', {'form':form, 'estudio':estudio}) form = FormTatto(request.POST, request.FILES) estudio = FormEstudio(request.POST) if not form.is_valid(): messages.ERROR(request,'Erro ao enviar form!') form = FormTatto(request.POST) estudio = FormEstudio(request.POST) return render(request, 'home/dashboard.html', {'form': form, 'estudio':estudio}) form.save() return redirect('dashboard')
def post(self, request, *args, **kwargs): form = self.form_class(request.POST or None) try: if form.is_valid(): user = User(email=form.cleaned_data['email'], username=form.cleaned_data['username'], first_name=form.cleaned_data['first_name'], last_name=form.cleaned_data['last_name'], country=form.cleaned_data['country'], city=form.cleaned_data['city']) user.set_password(raw_password=form.cleaned_data['password']) user.save() messages.success(request, 'The user is created successfully') return HttpResponseRedirect('/') if form.errors: return messages.ERROR except AttributeError: raise messages.ERROR(request, 'There is some error try latter') context = self.context = {'form': form, 'title': 'User_add form'} return render(request, self.template_name, context=context)
def register(request): if request.method == 'POST': first_name = request.POST['first_name'] last_name = request.POST['last_name'] username = request.POST['username'] email = request.POST['email'] password = request.POST['password'] password2 = request.POST['password2'] if password == password2: user = User.objects.create_user(username=username, password=password, email=email, first_name=first_name, last_name=last_name) user.save() return redirect('login') else: messages.ERROR(request, 'passwords do not match') return redirect('register') return render(request, 'accounts/register.html')
def get(self, *args, **kwargs): try: products_list = Product.objects.all() categories = Category.objects.all() main_categories = MainCategory.objects.all() posts = Post.objects.all()[:3] categories_ser = CategorySerializer(categories, many=True).data main_categories_ser = MainCategorySerializer(main_categories, many=True).data post_ser = PostSerializer(posts, many=True).data categories_ser_json = json.dumps(categories_ser) main_categories_ser_json =json.dumps(main_categories_ser) post_ser_json = json.dumps(post_ser) paginator = Paginator(products_list, 12) page = self.request.GET.get('page') try: products = paginator.page(page) except PageNotAnInteger: products = paginator.page(1) except EmptyPage: products = paginator.page(paginator.num_pages) products_ser = ProductDetailSerializer(products, many=True).data products_ser_json = json.dumps(products_ser) context = { 'products' : products_ser_json, 'categories' : categories_ser_json, 'main_categories' : main_categories_ser_json, 'posts' : post_ser_json, 'page' : page, } return render(self.request, "views/index.html", context) except ObjectDoesNotExist: message = messages.ERROR("سرور ترکیده") return HttpResponseBadRequest("Object Does Not Exist")
def passwdView(request): ''' 更换密码 :param request: 客户端请求头 :return: html页面 ''' if request.method == 'POST': username = request.user.username old_password = request.POST.get('old_password', '') new_password = request.POST.get('new_password', '') user = User.objects.filter(username=username) if User.objects.filter(username=username): user = authenticate(username=username, password=old_password) if not user: messages.ERROR(request, '原始密码错误') else: # 密码加密处理并保存到数据库 user.password = make_password(new_password, None, 'pbkdf2_sha256') user.save() login(request, user) messages.SUCCESS(request, '更改密码成功') return render(request, 'passwd.html', locals(), RequestContext(request))
def contact(request): if request.method == "POST": firstname = request.POST['firstname'] lastname = request.POST['lastname'] email = request.POST['email'] phone = request.POST['phone'] city = request.POST['city'] content = request.POST['content'] if firstname == '' or lastname == '' or email == '' or phone == '': messages.ERROR(request, "Fill your details correctly") else: user = Contact(firstname=firstname, lastname=lastname, email=email, phone=phone, city=city, content=content) user.save() messages.success( request, "Thank you for contacting us.. we will get you back shortly!!!" ) return render(request, "home/contact.html")
def friend_invite(request): if request.method == 'POST': form = FriendInviteForm(request.POST) if form.is_valid(): invitation = Invitation( name = form.cleaned_data['name'], email = form.cleaned_data['email'], code = User.objects.make_random_password(20), sender = request.user ) invitation.save() try: invitation.send() messages.SUCCESS(request, 'An invitation was sent to %s.' % invitation.email) except: messages.ERROR(request, 'There was an error while sending the invitation.') return HttpResponseRedirect('/friend/invite/') else: form = FriendInviteForm() variables = dict({ 'form': form }) return render_to_response('friend_invite.html', variables)
def edit_task(request, task_id): if request.method == 'POST': try: title = request.POST['title'] description = request.POST['description'] tags = request.POST.getlist('tags') priority = request.POST['priority'] list_id = request.POST.get('list_id') deadline = request.POST['deadline'] period = request.POST['period'] days = request.POST.getlist('days') count = int(request.POST['count']) dd = None if deadline != '': dd = datetime.strptime(deadline, settings.DATETIME_PATTERN) if not parsers.validate_data(priority, period, days, count): raise ValueError except (KeyError, ValueError, AttributeError, TypeError): return HttpResponseBadRequest() try: task = Task.objects.get(id=task_id, created_user=request.user) task.title = title task.priority = priority task.description = description if list_id: try: task.task_list = TaskList.objects.get(id=int(list_id)) except (TaskList.DoesNotExist(), ValueError): messages.ERROR( 'Task list does not exist, created simple task') task.deadline = dd task.save() if dd: task.period_val = period task.period_count = count if period == 'W': task.repeat_days = days task.save() task.tags.clear() for tag in tags: try: task.tags.add(Tag.objects.get(id=int(tag))) except (Tag.DoesNotExist, ValueError, TypeError): messages.ERROR('Tag does not exist') return HttpResponseBadRequest() task.save() except TaskList.DoesNotExist: return HttpResponseBadRequest() except Task.DoesNotExist: messages.error(request, "You don't have permission to edit this task") return redirect('/todolist') task = get_object_or_404(Task, Q(id=task_id) & (Q(created_user=request.user))) try: deadline = datetime.strftime(task.deadline, settings.DATETIME_PATTERN) except (AttributeError, TypeError): deadline = None context = { 'task': task, 'selected_tags': task.tags.all(), 'deadline': deadline, 'selected_days': task.repeat_days } return render(request, 'edit.html', context)
def mybooks(request): user = request.user if request.POST.get("changeavailable"): availability=request.POST.get("available") isbn = request.POST.get('isbn') bool=execute_only_raw_sql("UPDATE my_books SET Availability="+str(availability)+" where User_ID='"+str(user)+"' and ISBN='"+str(isbn)+"'") print(bool) messages.success(request,"Availability Changed Successfully !!!") if request.POST.get("delete"): delete_isbn=request.POST.get('isbn') flag=execute_only_raw_sql("delete from my_books as MB where MB.User_ID='"+str(user)+"' and MB.ISBN='"+str(delete_isbn)+"'") if flag==False: print('Error in delete : ',delete_isbn) else: print('Deleted isbn: ', delete_isbn, ' from user:'******'isbn') availability=request.POST.get('availability') repaypol=request.POST.get('repaymentpolicy') otherspec=request.POST.get('otherspecifications') securitymoney=request.POST.get('securitymoneyofbook') SERVICE = 'isbndb' APIKEY = 'temp475675837' # <-- replace with YOUR key # register your key add_apikey(SERVICE, APIKEY) try: book=meta(isbn) print(book) if book == None: messages.error(request,"Book not available in ISBN database.") else: try: auth="" for a in book['Authors']: auth=auth+','+a auth=auth[1:] try: year=int(book['Year']) except: year=None if book['Language'] == "": lang=None else: lang=book['Language'] Book.objects.create(isbn=isbn, book_name=book['Title'],author=auth,language= lang,year=year ) print("new book added") except Exception as e: print(e) print("book already exists") try: MyBooks.objects.create(repayment_policy=repaypol, availability=int(availability), other_specifications=otherspec, security_money_of_book=int(securitymoney), user=User.objects.get(user_id=user), isbn=Book.objects.get(isbn=isbn)) messages.success(request, "Book Added Successfully !!!") print("new book added to user : "******"Book already exists !") print("Error in adding Book") except Exception as e: print(e) messages.ERROR(request,"Wrong ISBN Entered !!!") if request.POST.get("editbook"): isbn = request.POST.get('isbn') availability = request.POST.get('availability') repaypol = request.POST.get('repaymentpolicy') otherspec = request.POST.get('otherspecification') securitymoney = request.POST.get('securitymoneyofbook') try: mb = MyBooks.objects.get(isbn=isbn, user=User.objects.get(user_id=user)) mb.repayment_policy = repaypol mb.availability = int(availability) mb.other_specifications = otherspec mb.security_money_of_book = int(securitymoney) mb.save() print("book updated") except Exception as e: print(e) print("book update error") books = perform_raw_sql("select * from user as U, my_books as MB, book as B where U.User_ID='"+str(user)+"' and U.User_ID=MB.User_ID and MB.ISBN=B.ISBN") print(books) if len(books)!=0: return render(request, 'mybooks.html', {'user': user, 'books': books}) else: messages.info(request,"No Book Added !") books={} return render(request, 'mybooks.html', {'user': user, 'books': books})