def register(request): form = RegisterForm(request.POST or None) if form.is_valid(): username = form.cleaned_data['username'] email = form.cleaned_data['email'] password = form.cleaned_data['password2'] #MyUser.objects.create_user(username=username, email=email, password=password) new_user = MyUser() new_user.username = username new_user.email = email new_user.is_active = False messages.success(request, "Enregistrement terminé. Votre compte est maintenant en attente d'activation") #new_user.password = password #WRONG new_user.set_password(password) #RIGHT new_user.save() action_url = reverse("register") title = "Register" submit_btn = "Create free account" context = { "form": form, "action_url": action_url, "title": title, "submit_btn": submit_btn } return render(request, "registration/registration_form.html", context)
def add_model(request,model,template_name=""): # show_model(request,model,template_name) # print(); result = ""; if request.method == 'POST': print('add') if request.POST.get('mode')=='add_cart_item': cart.add_to_cart(request) cart_items_list = [] cart_items = cart.get_cart_items(request) # serializers.serialize("json", ) cart_item_count = cart.cart_distinct_item_count(request) # result = {'cart_items' : cart_items ,'cart_item_count' : cart_item_count} # print(cart_item_count) for c in cart_items: # print(c) item = {} item.setdefault('image',c.image()) item.setdefault('name',c.name()) item.setdefault('quantity',c.quantity) price = str(c.price()) item.setdefault('unit_price',price) total = str(c.total()) item.setdefault('total_price',total) item.setdefault('id',c.id) # print(item) cart_items_list.append(item) # print(cart_items_list) # cart_items = serializers.serialize("json", cart_items_list) # print(cart_items) result = {'cart_items' : cart_items_list ,'cart_item_count' : cart_item_count} # print(json.dumps(result)) print('++++++++++++++++++++++++++++++') return HttpResponse(json.dumps(result),content_type='application/javascript; charset=utf-8') else: if model == 'people': name = request.POST.get('name') islug = slug(name) category = Category() category.name = name category.description = request.POST.get('description') is_active = request.POST.get('is_active') if is_active=="on": category.is_active = True else: category.is_active = False category.slug = islug category.updated_at = datetime.datetime.now().strftime("%m/%d/%Y") category.created_at = datetime.datetime.now().strftime("%m/%d/%Y") category.save() result = "saved" print('add people') elif model == 'subcategory': subcategory = SubCategory() subcategory.name = request.POST.get('name') subcategory.description = request.POST.get('description') subcategory.slug = slug(subcategory.name) is_active = request.POST.get('is_active') subcategory.updated_at = datetime.datetime.now().strftime("%m/%d/%Y") subcategory.created_at = datetime.datetime.now().strftime("%m/%d/%Y") if is_active=="on": subcategory.is_active = True else: subcategory.is_active = False subcategory.save() selected_c = json.loads(request.POST.get('selected_categories')) for s_c in selected_c: c = get_object_or_404(Category, slug=s_c) subcategory.categories.add(c) subcategory.save() print('add subcategory') elif model == 'product': p = Product() postdata = request.POST.copy() p.name = postdata.get('name','a') product_name = postdata.get('name','a') p.brand = postdata.get('brand') p.sku = postdata.get('sku') p.price = postdata.get('price') p.old_price = postdata.get('old_price') p.quantity = postdata.get('quantity') p.description = postdata.get('description') # print(postdata.get('user')) user = get_object_or_404(MyUser, username=postdata.get('user')) p.user = user p.slug = slug(p.name) is_active = request.POST.get('is_active') if is_active=="on": p.is_active = True else: p.is_active = False p.updated_at = datetime.datetime.now().strftime("%m/%d/%Y") p.created_at = datetime.datetime.now().strftime("%m/%d/%Y") if request.FILES: print('image_exist') p_main_file=request.FILES['img'] file_extention = os.path.splitext(str(request.FILES['img']))[1] # print(file_extention) # file_name = str(request.FILES['img']).split('.') # file_extention = file_name[len(file_name)-1] image_name = str(user)+'_'+p.name+file_extention p_thumbnail_file=request.FILES['img'] with open(MEDIA_ROOT+'images/products/thumbnails/'+image_name, 'wb+') as destination: if p_thumbnail_file.multiple_chunks(): for chunk in p_thumbnail_file.chunks(): destination.write(chunk) else: destination.write(p_thumbnail_file.read()) with open(MEDIA_ROOT+'images/products/thumbnails/'+image_name, 'rb+') as destination: image_file = destination.read() with open(MEDIA_ROOT+'images/products/main/'+image_name, 'wb+') as destination: destination.write(image_file) p.image=image_name else: print('image_empty') p.image='default' p.save() selected_subc = json.loads(request.POST.get('selected_subcategories')) for p_subc in selected_subc: subc = get_object_or_404(SubCategory, slug=p_subc) p.subcategories.add(subc) p.save() print('add product') elif model == 'myuser': user = MyUser() postdata = request.POST.copy() user.username = postdata.get('name') user.first_name = postdata.get('first_name') user.last_name = postdata.get('last_name') ##########change date format###########YYYY-MM-DD # date_of_birth = postdata.get('date_of_birth') # date_list = date_of_birth.split('/') # join_str = '-' # user.date_of_birth = join_str.join(date_list) user.date_of_birth = postdata.get('date_of_birth') ######################################## user.address = postdata.get('address','a') user.telephone = postdata.get('telephone') user.password = make_password(postdata.get('password')) user.is_active = True user.is_staff = True user.save() print('add myuser') elif model == 'order': order = Order() postdata = request.POST.copy() myuser = get_object_or_404(MyUser, username=postdata.get('user')) print(postdata) order.address = myuser.address order.phone = myuser.telephone order_status = get_object_or_404(OrderStatus, id=postdata.get('status')) print(order_status.name) order.status = order_status order.ip_address = postdata.get('ip_address') # user = get_object_or_404(MyUser, username=postdata.get('user')) order.user = myuser order.transaction_id = postdata.get('transaction_id') order.last_updated = datetime.datetime.now().strftime("%m/%d/%Y") order.save() print(order.id); cart_items = cart.get_cart_items(request) for c in cart_items: orderitem = OrderItem() orderitem.product = c.product orderitem.price = c.price() orderitem.quantity = c.quantity orderitem.order = order orderitem.save() print('add order') elif model == 'orderitem': orderitem = OrderItem() postdata = request.POST.copy() product = get_object_or_404(Product, slug=postdata.get('product')) orderitem.product = product orderitem.price = product.price orderitem.quantity = postdata.get('quantity') order = get_object_or_404(Order, id=postdata.get('order')) orderitem.order = order orderitem.save() print('add orderitem') # return show_model(request,model,'') url = urlresolvers.reverse('model',kwargs = {'model':model}) return HttpResponseRedirect(url) else: app_list = permission_app(request) # print('_________________addpermission_________________') if check_permission(request,'add',model): if model == 'people': print('category') elif model == 'subcategory': category = Category.objects.all() print('subcategory') elif model == 'product': user_list = MyUser.objects.all() subcategory = SubCategory.objects.all() print('product') print(subcategory) elif model == 'myuser': print('myuser') elif model == 'order': cart.clean(request) user_list = MyUser.objects.all() product = Product.objects.all() order_status = OrderStatus.objects.all() # print(request.GET) # print('-------------------------------') # cart.add_to_cart(request) # cart_items = serializers.serialize("json", cart.get_cart_items(request)) # cart_item_count = cart.cart_distinct_item_count(request) # result = {'cart_items' : cart_items ,'cart_item_count' : cart_item_count} # print(result) # print('++++++++++++++++++++++++++++++=') # return HttpResponse(json.dumps(result),content_type='application/javascript; charset=utf-8') print('order') elif model == 'orderitem': product = Product.objects.all() order_list = Order.objects.all() print('orderitem') # subcategories = SubCategory.objects.all() template_name = 'myadmin/add/'+model+'.html' return render_to_response(template_name, locals(),context_instance=RequestContext(request)) else: template_name = 'myadmin/err.html' return render_to_response(template_name, locals(),context_instance=RequestContext(request))
def register(request): errors= [] account=None password=None password2=None email=None CompareFlag=False mobile = None role = None rules = Rule.objects.all() roles_departments = Roles.objects.all() if request.method == 'POST': if not request.POST.get('account'): errors.append('请输入用户名') else: account = request.POST.get('account') temp_user3 = MyUser.objects.filter(username=account) if len(temp_user3) != 0: errors.append('该用户名已注册') if not request.POST.get('password'): errors.append('请输入密码') else: password = request.POST.get('password') if not request.POST.get('password2'): errors.append('请再次输入密码') else: password2 = request.POST.get('password2') if not request.POST.get('email'): errors.append('请输入邮箱') else: email = request.POST.get('email') temp_user1 = MyUser.objects.filter(email=email) if len(temp_user1) != 0: errors.append('该邮箱已注册') if not request.POST.get('mobile'): errors.append('请输入手机号') else: mobile = request.POST.get('mobile') temp_user2 = MyUser.objects.filter(mobile=mobile) if len(temp_user2) != 0: errors.append('该手机号已注册') if not request.POST.get('role'): errors.append('请选择职位') else: role = request.POST.get('role') if not request.POST.get('rule'): errors.append('请选择角色') else: rule = request.POST.get('rule') if password is not None and password2 is not None: if password == password2: CompareFlag = True else : errors.append('两次输入的密码不一致') if len(errors)>0: return render_to_response('register.html', {'errors': errors,'account':account,'email':email,'mobile':mobile,'rules':rules,'roles_departments':roles_departments}) if account is not None and password is not None and password2 is not None and email is not None and mobile is not None and role is not None and CompareFlag and len(temp_user1) == 0 and len(temp_user2) == 0 and len(temp_user3) == 0: now = timezone.now() user = MyUser(username=account,last_login=now,date_joined=now,email=email) user.is_active = True user.set_password(password) user.mobile = str(mobile) # user.rule = role user.save() rule_obj = Rule.objects.get(id= int(rule)) role_obj = Roles.objects.get(id = int(role)) rules = Rule.objects.all() roles_departments = Roles.objects.all() rule_powers = Cor_Rule_Power.objects.filter(RuleID=rule_obj) Cor_User_Rule.objects.get_or_create( RuleID=rule_obj, UserID=user, ) for power in rule_powers: Cor_user_Power.objects.get_or_create( PowerID = power.PowerID, UserID =user, ) Cor_role_user_depart.objects.get_or_create( UserID=user, RoleID=role_obj, ) add() return HttpResponseRedirect('/accounts/login') else: return render_to_response('register.html', {'errors': errors,'account':account,'email':email,'mobile':mobile,'rules':rules,'roles_departments':roles_departments})