Example #1
0
def google_oauth_callback(request):
    state = request.GET['state']
    credentials = Google.exchange_code(request.GET['code'], state)
    if state == 'login':
        profile_str = Google.get_profile(credentials)
        profile = json.loads(profile_str)
        try:
            user = MyUser.objects.get(email=profile['email'])
        except ObjectDoesNotExist:
            user = None

        if user is None:
            user = MyUser(name=profile['name'], email=profile['email'], picture_url=profile['picture'])
            user.save()
        request.session['user_id'] = user.id
        return redirect(reverse('connect_apps'))
    elif state == 'gmail':
        # store gmail oauth credentials in db
        try:
            gmail_auth = Gmail.objects.get(user__id=request.session['user_id'])
        except ObjectDoesNotExist:
            gmail_auth = None

        if gmail_auth is None:
            user = MyUser.objects.get(id=request.session['user_id'])
            gmail_auth = Gmail(user=user, credentials_json=credentials.to_json())
            gmail_auth.save()
        else:
            gmail_auth.credentials_json = credentials.to_json()
            gmail_auth.save()

        return redirect(reverse('close_window'))
Example #2
0
def new_account(request):
    email = request.POST['email']
    user = MyUser(email=email)
    # 注意:save 方法和 objects.create() 方法有很大区别
    # 例如,数据库中已经存储了一个电子邮箱地址,
    # 如果再用这个地址,前者不会报错,后者会报如下错误
    # django.db.utils.IntegrityError:
    # UNIQUE constraint failed: accounts_myuser.email
    user.save()
    response = HttpResponse(user.email)
    return response
Example #3
0
def business_signup(request):
    if request.user.is_authenticated():
        return redirect("home")
    else:
        form = RegisterForm(request.POST or None)
        next_url = request.POST.get('next')

        if form.is_valid():
            username = form.cleaned_data['username']
            email = form.cleaned_data['email']
            password = form.cleaned_data['password2']
            new_user = MyUser()
            new_user.username = username
            new_user.email = email
            new_user.set_password(password)
            new_user.save()
            user = authenticate(username=username, password=password)
            if user is not None:
                new_advertiser, created = Advertiser.objects.get_or_create(
                    user=user)
                new_advertiser.save()
                login(request, user)

                if next_url is not None:
                    return HttpResponseRedirect(next_url)
                return HttpResponseRedirect(reverse("home"))
        context = {
            "form": form,
            "action_url": reverse("contact:business_signup"),
        }
        return render(request, 'advertisers/business_signup.html', context)
Example #4
0
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)
Example #5
0
 def test_avatar_label(self):
     """
     Verify that the user icon label is correct
     """
     user = MyUser(username="******")
     field_label = user._meta.get_field("avatar").verbose_name
     self.assertEqual("avatar", field_label)
Example #6
0
 def test_upload_path(self):
     """
     The user's file is uploaded in a user specific directory with the following structure
         - directory named after the first two letters of the user's username
         - directory name after the user's username value
     """
     user = MyUser(username="******")
     path = user_directory_path(user, "test_file.png")
     self.assertEqual("xe/xerxes/test_file.png", path)
 def test_upload_path(self):
     """
     The user's avatar file is uploaded in a user specific directory of
     the user's username
     """
     user = MyUser(username="******")
     path = user_directory_path(user, "test_file.txt")
     self.assertIn("test", path)
     self.assertIn("test_file.txt", path)
Example #8
0
 def create(self, validated_data):
     user = MyUser(
         **validated_data
     )
     user.set_password(validated_data['password'])
     user.save()
     return user
Example #9
0
 def create(self, validated_data):
     username = validated_data['username']
     email = validated_data['email']
     password = validated_data['password']
     user_obj = MyUser(username=username, email=email)
     user_obj.set_password(password)
     user_obj.save()
     return validated_data
Example #10
0
def register(request):
    if request.method == 'POST':
        username = request.POST['usr_name']
        usr_paaaword = request.POST['usr_password']
        usr_password_check = request.POST['usr_password_check']
        usr_email = request.POST['usr_email']
        xieyi = request.POST.getlist('xieyi')
        re_email = r"[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?"
        url_jump = request.get_full_path()
        # 判断是否输入用户名
        if not username:
            tips = '用户名不能为空'
            return render(request, 'accounts/jump.html', locals())
        # 判断用户名个是否已存在
        if MyUser.objects.filter(username=username):
            tips = '用户名已存在'
            return render(request, 'accounts/jump.html', locals())
        # 判断密码是否为正确长度
        if 6 > len(usr_paaaword) or len(usr_paaaword) > 20:
            tips = '请输入正确的密码长度'
            return render(request, 'accounts/jump.html', locals())
        # 判断两次密码是否相同
        if usr_paaaword != usr_password_check:
            tips = '两次密码不同'
            return render(request, 'accounts/jump.html', locals())
        # 判断是否同意协议
        if not xieyi:
            tips = '未同意协议'
            return render(request, 'accounts/jump.html', locals())
        # 判断是否输入了正确的邮箱
        if not search(re_email, usr_email):
            tips = '未请输入正确的邮箱'
            return render(request, 'accounts/jump.html', locals())
        # 判断邮箱是否存在
        if MyUser.objects.filter(email=usr_email):
            tips = '邮箱已存在'
            return render(request, 'accounts/jump.html', locals())
        # 注册成功
        tips = '注册成功'
        url_jump = request.POST['next_url']
        user = MyUser()  # 创建用户对象
        user.username = username
        user.password = make_password(usr_paaaword)
        user.email = usr_email
        # user.is_staff = True    # 允许用户登录后台
        user.save()
        user = MyUser.objects.get(username=username)
        group = Group.objects.get(name='注册会员')
        user.groups.add(group)
        return render(request, 'accounts/jump.html', locals())
    else:
        next_url = request.GET.get('next', '/accounts/login')
        return render(request, 'accounts/register.html', locals())
Example #11
0
def home(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.password = password #WRONG
		new_user.set_password(password) #RIGHT
		new_user.save()

		#ADD MESSAGE for success.
		return redirect('login')
		#return HttpResponseRedirect(reverse('login'))
		



	# name = "Justin"
	# videos = Video.objects.all()
	# embeds = []

	# for vid in videos:
	# 	code = mark_safe(vid.embed_code)
	# 	embeds.append("%s" %(code))

	context = {
		"form": form,
		"action_value": "",
		"submit_btn_value": "Register",
		# "the_name": name,
		# "number": videos.count(),
		# "videos": videos,
		# "the_embeds": embeds,
		# "a_code": mark_safe(videos[0].embed_code)
	}
	return render(request, "form.html", context)
Example #12
0
def home (request):
	form = RegistrationForm(request.POST or None)
	if form.is_valid():
		username = form.cleaned_data['username']
		email = form.cleaned_data['email']
		password = form.cleaned_data['password1']
		#MyUser.objects.create_user(username=username, email=email, password=password)
		new_user = MyUser()
		new_user.username = username
		new_user.email = email
		new_user.set_password(password)
		new_user.save()

		#Add message for success
		return redirect('login')


		print username, email, password



	# name = "Summer"
	# videos = Video.objects.all()
	# embeds = []
	# for vid in videos:
	# 	code = mark_safe(vid.embed_code)
	# 	embeds.append("%s" % code)
	context = {
	"form":form,
	"action_value":"",
	"submit_btn_value":"Register"
	# "the_name":name,
	# "number" :videos.count(),
	# "videos" :videos,
	# "embeds" :embeds,
	# "a_code" :mark_safe(videos[0].embed_code)
	}
	return render(request, "form.html", context)
Example #13
0
def home(request):

    form = RegistrationForm(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.password = password #WRONG
        new_user.set_password(password) #RIGHT
        new_user.save()

        #ADD MESSAGE fpr success.
        return redirect('login')
        #return HttpResponseRedirect(reverse('login'))

    # name = "Tim"
    # videos = Video.objects.all()
    # embeds = []

    # for vid in videos:
    #     code = mark_safe(vid.embed_code)
    #     embeds.append("%s" %(code))

    context = {
        "form": form,
        "action_value": "",
        "submit_btn_value": "Register",
        # "the_name": name,
    #     "number": videos.count(),
    #     "videos": videos,
    #     "embeds": embeds,
    #     "a_code": videos[0].embed_code
    }
    return render(request, "home.html", context)
def register_view(request):
	print (request.user.is_authenticated())
	if request.user.is_authenticated():
		raise Http404
	next = request.GET.get('next')
	title = "Register"
	form = UserRegisterForm(request.POST or None)
	if form.is_valid():
		#MyUser = form.save(commit=False)
		username = form.cleaned_data.get('username')
		email = form.cleaned_data.get('email')
		password2 = form.cleaned_data.get('password2')

		#MyUser.objects.create_user(username=username, email=email, password=password)
		new_user = MyUser()
		new_user.username = username
		new_user.email = email
		new_user.set_password(password2) #RIGHT
		new_user.save()

		new_user = authenticate(username=username, password=password2)
		login(request, new_user)
		#return redirect("login")
		if next:
			return redirect(next)
		# Add message for success
		#return something good
		return redirect('/home')
		#return HttpResponseRedirect(reverse('/'))

	#action_url = reverse("register")

	context = {
		'form':form,
		'title':title,
	}
	return render(request, "form.html", context)
Example #15
0
 def create_post(self):
         user=MyUser(username='******',password='******',phone_number='07063419292',first_name='akanbi',last_name='bakare',email='*****@*****.**')
         return Post(user=user, slug='marshall-edikan-faith', title='marshaledikanfaith',content='This is a post for carrying out an assessment')
Example #16
0
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))
Example #17
0
                    'first_major': i['학부/학과'],
                    'act_no': i['가입 기수'],
                    'phone': phone_no,
                    'email': i['이메일']
                })
    return users


if __name__ == '__main__':
    users = parsing()

    for i in range(len(users)):
        if "second_major" in users[i]:
            MyUser(
                name=users[i]['name'],
                first_major=users[i]['first_major'],
                second_major=users[i]['second_major'],
                act_no=users[i]['act_no'],
                phone=users[i]['phone'],
                email=users[i]['email'],
            ).save()

        else:
            MyUser(
                name=users[i]['name'],
                first_major=users[i]['first_major'],
                act_no=users[i]['act_no'],
                phone=users[i]['phone'],
                email=users[i]['email'],
            ).save()
Example #18
0
 def create_user(self):
         user=MyUser(username='******',password='******',phone_number='07063419292',first_name='akanbi',last_name='bakare',email='*****@*****.**')
         return user
Example #19
0
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})