Exemple #1
0
def reg(request):
    try:
        payload = simplejson.loads(request.body)
        email = payload['email']
        query = User.objects.filter(email=email)
        print(query)
        if query:
            return HttpResponseBadRequest()

        name = payload['name']
        password = bcrypt.hashpw(payload['password'].encode(),
                                 bcrypt.gensalt()).decode()
        print(f'email:{email},name:{name},password:{password}')

        user = User()
        user.email = email
        user.name = name
        user.password = password

        try:
            user.save()
            return HttpResponse()
        except:
            # 这里可用于标记数据库保存过程中产生的异常
            raise

    except Exception as e:
        print(e)
        return HttpResponseBadRequest()
Exemple #2
0
def signup(request):
    if request.method == 'POST':
        name = request.POST["name"]
        email = request.POST["email"]
        contact = request.POST["contact"]
        address = request.POST["address"]
        bloodGroup = request.POST["bloodGroup"]
        userType = request.POST["userType"]
        password = request.POST["password1"]

        data = User()
        data.name = name
        data.email = email
        data.contact = contact
        data.address = address
        data.card_key = '%4x' % random.getrandbits(
            4 * 4) + '-' + '%4x' % random.getrandbits(
                4 * 4) + '-' + '%4x' % random.getrandbits(
                    4 * 4) + '-' + '%4x' % random.getrandbits(4 * 4)
        data.blood_group = bloodGroup
        data.user_type = userType
        data.password = password
        data.register_date = datetime.now()
        data.save()

    return render(request, 'main/index.html')
Exemple #3
0
def register_3(request):

    if email:
        #register
        try:
            user = User.objects.get(email=email)
        except:
            ip = request.META.get('REMOTE_ADDR')
            facebook = request.POST["facebook"]
            iso = request.POST["iso"]
            name = request.POST["name"]
            user = User()
            try:
                country = Country.objects.get(iso=iso)
            except:
                country = Country.objects.get(id=1)
                user.country_error = iso
            user.username = email
            user.name = name
            user.email = email
            user.facebook = facebook
            user.country = country
            user.ip = ip
            user.date = datetime.now()
            user.confirmed = 1
            user.save()


    else:
        res = "not login"
    
    return HttpResponse(res)
Exemple #4
0
def create_user(user_type, email, password, name="", surname=""):
    new_user = User()
    new_user.set_password(password)
    user_types = {v: k for k, v in dict(new_user.USER_TYPES).items()}
    # user type is a string, get the related integer, for more look at User.USER_TYPES
    new_user.user_type = user_types[user_type]
    new_user.email = email
    new_user.username = email
    # TODO new_user.username_validator
    new_user.first_name = name
    new_user.last_name = surname
    try:
        new_user.save()
    except:
        print("ERROR")
        return
    if user_type == "Vendor":
        new_type = Vendor()
    elif user_type == "Customer":
        new_type = Customer()
    elif user_type == "Admin":
        new_type = Admin()
    else:
        print("ERROR")
        return
    new_type.user_id = new_user.id
    try:
        new_type.save()
    except:
        print("ERROR")
        return
    return new_user
Exemple #5
0
def main():
    # 使用django配置文件进行设置
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'devops.settings')
    
    # 让django初始化
    import django
    django.setup()
    
    from user.models import User
    from util.tool import hash_code
    
    print('初始化开始...')
    username = '******'
    nickname = '超级管理员'
    password = hash_code('123456')
    email = '*****@*****.**'
    sex = 'male'
    enabled = True
    role = 1
    if User.objects.filter(username=username).count() > 0:
        print('已存在 {} 账号,无需初始化,退出...'.format(username))
    else:
        user = User()
        user.username = username
        user.nickname = nickname
        user.password = password
        user.email = email
        user.sex = sex
        user.enabled = enabled
        user.role = role
        user.save()
        print('已创建账号:{0},密码:{1}'.format(username, password))
    print('初始化结束...')
Exemple #6
0
def join(request):
    user = User()

    user.name = request.POST['name']
    user.email = request.POST['email']
    user.gender = request.POST['gender']
    user.password = request.POST['password']

    # 스크립트를 무시하고 잘못된 정보를 줬을 때
    if user.name == '':
        return HttpResponseRedirect('/')
    if user.email == '':
        return HttpResponseRedirect('/')
    if user.gender == '':
        return HttpResponseRedirect('/')
    if user.password == '':
        return HttpResponseRedirect('/')

    # 이미 존재하는데 스크립트를 무시했을 때
    user_tmp = User.objects.filter(email=user.email)
    if len(user_tmp) != 0:
        return HttpResponseRedirect('/')

    user.save()

    return HttpResponseRedirect('/user/joinsuccess')
Exemple #7
0
    def post(self, request: HttpRequest):
        """注册处理"""
        str_body = request.body.decode()
        request_body = simplejson.loads(str_body)
        email = request_body.get('email', "")
        if not email:
            return HttpResponseBadRequest()  # 请求出错

        user_email = User.objects.filter(email=email)
        if user_email:
            # 此邮箱已经存在
            return HttpResponseBadRequest()

        # 接受数据
        name = request_body.get('name')
        pwd = request_body.get('password')

        # 处理逻辑
        new_user = User()
        new_user.name = name
        # 使用bcrypt对数据库存储的密码进行加密显示
        new_user.password = bcrypt.hashpw(pwd.encode(), bcrypt.gensalt())
        new_user.email = email

        try:
            new_user.save()
        except Exception as e:
            return HttpResponseBadRequest()

        return JsonResponse({'status': str(gen_token(new_user.id))})
Exemple #8
0
def join(request):
    name = request.POST.get('name', '')
    email = request.POST.get('email', '')
    password = request.POST.get('password')
    gender = request.POST.get('gender', '')

    if name == '' or name is None:
        return HttpResponse('잘못된 접근입니다.')

    if email == '' or email is None:
        return HttpResponse('잘못된 접근입니다.')

    if password == '' or password is None:
        return HttpResponse('잘못된 접근입니다.')

    if gender != 'female' and gender != 'male':
        return HttpResponse('잘못된 접근입니다.')

    user = User()
    user.name = name
    user.email = email
    user.password = password
    user.gender = gender
    user.save()

    return HttpResponseRedirect('/user/joinsuccess')
Exemple #9
0
def save(request):
    print(request.POST)
    if request.session.get('user') is None:
        return redirect('user:user')
    is_valid, errors = valid_save(request.POST)
    if is_valid:
        # 创建用户
        user = User()
        user.name = request.POST.get('name', '').strip()
        user.email = request.POST.get('email', '').strip()
        user.age = request.POST.get('age', '').strip()
        user.telephone = request.POST.get('telephone', '').strip()
        user.set_password(request.POST.get('password', '').strip())
        user.login_time = timezone.now()
        user.save()

        return redirect('user:users')
    else:
        # 返回用户注册界面,并且回显数据,打印错误信息
        context = {}
        context['name'] = request.POST.get('name', '')
        context['errors'] = errors
        context['password'] = request.POST.get('password', '')
        context['password2'] = request.POST.get('password2', '')
        context['email'] = request.POST.get('email', '')
        context['age'] = request.POST.get('age', '')
        context['telephone'] = request.POST.get('telephone', '')
        return render(request, 'user/create.html', context)
def user():
    user = User()
    user.name = 'test_user'
    user.email = "*****@*****.**"
    user.password = "******"
    user.save()
    return user
Exemple #11
0
def register(request):
    """注册用户"""
    if request.method == 'POST':
        login_name = request.POST.get('login_name')
        old_u = User.objects.filter(login_name=login_name).first()
        if old_u:
            return resp(1001, '用户名已存在')
        email = request.POST.get('email')
        old_u = User.objects.filter(email=email).first()
        if old_u:
            return resp(1001, '邮箱已注册')
        pwd = request.POST.get('pwd')
        if len(pwd) < 6 or len(pwd) > 16:
            return resp(1002, '密码长度在6-16')
        major = request.POST.get('major')
        user_name = request.POST.get('user_name')
        qq = request.POST.get('qq')
        phone = request.POST.get('phone')
        u = User()
        u.login_name = login_name
        u.pwd = pwd
        u.email = email
        u.major = major
        u.user_name = user_name
        u.qq = qq
        u.phone = phone
        u.save()
        return resp()
Exemple #12
0
def user_register():
    if request.method == 'GET':
        return render_template('register.html')

    if request.method == 'POST':

        username = request.form.get('user_name')
        pwd = request.form.get('pwd')
        cpwd = request.form.get('cpwd')
        email = request.form.get('email')

        if not all([username, pwd, cpwd, email]):
            msg = '请填写完整的注册信息'
            return render_template('register.html', msg=msg)

        if User.query.filter_by(username=username).first():
            msg = '该用户已经存在'
            return render_template('register.html', msg=msg)
        user = User(username, pwd)
        user.username = username
        user.password = cpwd
        user.email = email

        db.session.add(user)
        db.session.commit()
        return redirect('/user/user_login/')
Exemple #13
0
def register(request):
    """注册"""
    if request.method == 'POST':
        # 接收用户信息
        post = request.POST
        name = post.get('user_name')
        password = post.get('pwd')
        password2 = post.get('cpwd')
        email = post.get('email')
        # 判断两次密码
        if password != password2:
            return redirect('/user/register')
        # 密码加密
        # s1 = sha1()
        # s1.update(password.encode("utf-8"))
        # password3 = s1.hexdigest()
        """创建user/models的对象"""
        user = User()
        user.name = name
        user.password = password
        user.email = email
        user.save()
        """注册成功,转到登录页面"""
        return redirect('/user/login')
    return render(request, 'user/register.html')
def clrk_adduser(request, id):

    flag = 1
    context = {}

    if request.method == 'POST':
        name = request.POST['name']
        uname = request.POST['uname']
        email = request.POST['email']
        mobile = request.POST['mobile']
        address = request.POST['address']
        password = request.POST['password']
        accType = request.POST['accType']
        amount = request.POST['amount']

        if User.objects.filter(username=uname).exists():
            flag = 0
            context['unameerror'] = "Username Already Exists"

        if User.objects.filter(email=email).exists():
            flag = 0
            context['emailerror'] = "Email Already Exists"

        if User.objects.filter(mobile=mobile).exists():
            flag = 0
            context['mobileerror'] = "Mobile No. Already Exists"

        if flag:
            last = User.objects.last()
            accno = str(int(last.acc_no) + 1)

            tran = Transaction()
            tran.info = "Opening Balance Deposit"
            tran.accountno = accno
            tran.credit = amount
            tran.debit = 0
            tran.balance = amount
            tran.save()

            nuser = User()
            nuser.fullname = name
            nuser.username = uname
            nuser.email = email
            nuser.mobile = mobile
            nuser.address = address
            nuser.password = password
            nuser.acc_type = accType
            nuser.balance = amount
            nuser.acc_no = accno

            nuser.save()
            context['success'] = "User Registered!"

        return render(request, "adduser.html", context)

    if request.method == 'GET':
        if request.session.has_key('clerkid'):
            return render(request, "adduser.html", context)
        else:
            return redirect('clerk')
Exemple #15
0
    def setUp(self):
        self.name_valid = 'Teste Nome'
        self.name_invalid = 'a'

        self.date_of_birth_valid = '10/12/1990'
        self.date_of_birth_invalid = '18'

        self.phone_valid = '123456789'
        self.phone_invalid = '123456789101112'

        self.email_valid_reset = '*****@*****.**'
        self.email_valid = '*****@*****.**'
        self.email_invalid = 'admin.com'
        self.email_invalid_1 = '*****@*****.**'

        self.sex_valid = 'M'
        self.sex_invalid = 'A'

        self.crm_valid = '12345'
        self.crm_invalid = '1'

        self.crm_state_valid = 'DF'
        self.crm_state_invalid = 'asd'

        self.id_document_valid = '12345678910'
        self.id_document_invalid = '1234'

        self.password_valid = '1234567'
        self.password_invalid = '1234567891011'

        user = User()
        user.email = "*****@*****.**"
        user.save()
Exemple #16
0
def getEsiaLogin(data):
    loginIsCorrect = False
    sessionHash = ''
    error = ''

    if 'snils' in data:
        #username, password для поддержки логина по паролю
        username = data['snils']
        password = data['snils']
        
        loginIsCorrect = True
        loginInfo = UserLogin.objects.filter(snils = data['snils'])[:1]
        try:
            if len(loginInfo) > 0:
                #Если пользователь существует проверяем статус блокировки
                loginInfo = loginInfo[0]
                if not loginInfo.enabled:
                    loginIsCorrect = False
                    error = 'user disabled'

            else:
                #Если пользователя не существует создаем записи в базе
                loginInfo = UserLogin()
                loginInfo.login = username
                loginInfo.snils = data['snils']
                loginInfo.password_hash = loginInfo.getPasswordHash(password)
                loginInfo.session_hash = ''
                loginInfo.enabled = True

                userInfo = User.objects.filter(snils = data['snils'])[:1]
                if len(userInfo) > 0:
                    userInfo = userInfo[0]
                else:
                    userInfo = User()
                userInfo.fullname = ('%s %s %s' % (data['lastName'], data['firstName'], data['middleName'])).strip()
                userInfo.snils = data['snils']
                userInfo.phone = ''
                userInfo.email = ''
                userInfo.save()

                log.info('user created: login: %s, password: %s' % (loginInfo.login, password))

            sessionHash = loginInfo.generateRandomHash()
            loginInfo.session_hash = sessionHash
            loginInfo.save()
        except Exception as ex:
            loginIsCorrect = False
            error = 'runtime error'
            log.error('getEsiaLogin: %s' % ex)
    else:
        error = 'bad esia answer'
        log.error('getEsiaLogin: %s' % error)
        log.error(data)
    return {
        'loginIsCorrect': loginIsCorrect,
        'sessionHash': sessionHash,
        'username': username,
        'error': error
    }
Exemple #17
0
def join(request):
    user = User()
    user.name = request.POST['name']
    user.email = request.POST['email']
    user.password = request.POST['password']
    user.save()

    return HttpResponseRedirect('loginform')
Exemple #18
0
 def populate_instance():
     first_item = User()
     first_item.id = 1
     first_item.name = 'Fred Bloggs'
     first_item.email = '*****@*****.**'
     first_item.password = '******'
     first_item.save()
     return first_item
Exemple #19
0
def join(request):
    user = User()
    user.name = request.POST['name']
    user.email = request.POST['email']
    user.password = request.POST['password']
    user.gender = request.POST['gender']
    user.save()
    return HttpResponseRedirect('/user/joinsuccess')
Exemple #20
0
def index(request):
    info_invalid = ''  # Valid value

    # View all objects
    user = User.objects.all()

    context = {
        'user': user,
    }

    if request.method == 'POST':

        posted_name = request.POST.get('name', '')
        if posted_name == '':
            info_invalid = 'Username can not be empty!'

        user = User(
            name=request.POST.get('name', ''),
            email=request.POST.get('email', ''),
        )

        edit_id = int(request.POST.get('edit_id', 0))
        if edit_id > 0:
            user = User.objects.get(id=edit_id)
            user.name = request.POST.get('name', '')  # request.POST['name']
            user.email = request.POST.get('email', '')
            context[
                'info'] = f"eddited {user.name} ({user.email}) with ID: {user.id}"
        else:
            context[
                'info'] = f"added {user.name} ({user.email}) with ID: {user.id}"

        if info_invalid == '':
            user.save()
        else:
            context['info'] = info_invalid

    elif request.method == 'GET':

        del_id = int(request.GET.get('del', 0))
        if del_id > 0:
            user = User.objects.get(id=del_id)
            user.delete()
            context[
                'info'] = f"deleted {user.name} ({user.email}) with ID: {user.id}"

        edit_id = int(request.GET.get('edit', 0))
        if edit_id > 0:
            user = User.objects.get(id=edit_id)
            context['edit_id'] = edit_id
            context['edit_name'] = user.name
            context['edit_email'] = user.email

    return render(
        template_name='index.html',
        request=request,
        context=context,
    )
Exemple #21
0
    def setUp(self):
        self.email_valid_reset = '*****@*****.**'
        self.email_valid = '*****@*****.**'
        self.email_invalid = 'admin.com'
        self.email_invalid_1 = '*****@*****.**'
        self.email_invalid_NULL = None

        self.password_valid = '1234567'
        self.password_invalid = '1234567891011'
        self.password_invalid_NULL = None

        user = User()
        user.email = "*****@*****.**"
        user.save()

        user1 = User()
        user1.email = "*****@*****.**"
        user1.is_active = False
        user1.save()
Exemple #22
0
def create_superuser(apps, schema_editor):
    superuser = User()
    superuser.is_active = True
    superuser.is_superuser = True
    superuser.is_admin = True
    superuser.has_terms = True
    superuser.has_privacy_policy = True
    superuser.username = '******'
    superuser.email = '*****@*****.**'
    superuser.set_password('Cucumber21818!')
    superuser.save()
 def setUp(self):
     user = User()
     user.email = "*****@*****.**"
     user.save()
     self.form_class = CreateResponse
     self.subject = "a"
     self.text = "a"
     self.email = user.email
     self.subject_max = 'a' * 1000
     self.text_max = 'a' * 1000
     self.email_invalid = 'a2d'
Exemple #24
0
def modify(request):
    user = User()
    user.id = request.POST['id']
    user.name = request.POST['name']
    user.email = request.POST['email']
    user.password = request.POST['password']
    user.gender = request.POST['gender']

    user.save()

    request.session['authuser'] = model_to_dict(user)  # 객체를 딕셔너리로 저장하는 함수
    return HttpResponseRedirect('/')
Exemple #25
0
def final_register(request):
    if request.method == 'POST':
        register_form = RegisterForm(request.POST)
        check_term = request.POST.get('term_check')  # another method to get check box, or can use form.cleaned_data
        if check_term == 'on':
            stored_form = register_form
            if register_form.is_valid():
                # dont wanna fill form again
                # username = register_form.cleaned_data['username']
                register_form.clean()
                username = request.POST.get('username')
                password1 = request.POST.get('password1')
                password2 = request.POST.get('password2')
                email = request.POST.get('email')
                # check passwords are the same
                if password1 != password2:
                    message = 'Not the same password'
                    return render(request, 'user/register.html', {'message': message, 'register_form': stored_form})
                else:
                    same_name_user = User.objects.filter(username=username)
                    # check user name
                    if same_name_user:
                        message = 'The user name was already existed'
                        return render(request, 'user/register.html',
                                      {'message': message, 'register_form': stored_form})

                    same_email_user = User.objects.filter(email=email)
                    if same_email_user:
                        message = 'The email was registered, please use another one'
                        return render(request, 'user/register.html',
                                      {'message': message, 'register_form': stored_form})
                interest = Interest()
                user = User()
                additional_info = AdditionalInfo()
                additional_info.save()
                interest.save()
                user.additionalInfo = additional_info
                user.interest = interest
                user.email = email
                user.password = password1
                user.username = username
                user.is_active = True
                user.save()
                # TODO: label as todo to ensure later check
                # the user was logged without verification of their email, may need change here
                request.session['is_login'] = True
                request.session['user_name'] = user.username
                return redirect('/user/index/')

    register_form = RegisterForm()
    message = 'There are something with the submitted form'

    return render(request, "oauth/oauth_register.html", locals())
Exemple #26
0
 def post(self, request):
     data = request.POST
     user_name = data.get('user_name')
     password = data.get('password')
     email = data.get('email')
     pwd = set_password(set_password(set_password(password)))
     u = User()
     u.user_name = user_name
     u.password = pwd
     u.email = email
     u.save()
     return redirect('user:login')
Exemple #27
0
def join(request):
    user = User()

    user.name = request.POST["name"]
    user.email = request.POST["email"]
    user.password = request.POST["password"]
    user.gender = request.POST["gender"]

    user.save()
    # save를 하면 ORM이 알아서 SQL문을 DB에게 보냄

    return HttpResponseRedirect('/user/joinsuccess')
Exemple #28
0
def join(request):
    if request.method == 'GET':
        return render(request, 'user/joinform.html')

    else:
        user = User()
        user.name = request.POST['name']
        user.email = request.POST['email']
        user.password = request.POST['password']
        user.gender = request.POST['gender']
        user.save()
        return render(request, 'user/joinsuccess.html')
Exemple #29
0
    def create_user(self, form, commit=True, **kwargs):
        email = form.cleaned_data['email']
        try:
            user = User.objects.get(email__iexact=email)
        except User.DoesNotExist:
            user = User()
            user.username = email
            user.email = email

        user.set_password(User.objects.make_random_password(getattr(settings, 'ACCOUNT_RANDOM_PASSWD_LENGTH', 10)))
        user.save()

        return user
def user():
    point = Point()
    point.category = 1
    point.points = 20
    point.global_point = 40
    point.save()

    user = User()
    user.email = "*****@*****.**"
    user.password = "******"
    user.save()
    user.points.add(point)
    return user
Exemple #31
0
    def create_user(self, form, commit=True, **kwargs):
        email = form.cleaned_data['email']
        try:
            user = User.objects.get(email__iexact=email)
        except User.DoesNotExist:
            user = User()
            user.username = email
            user.email = email

        user.set_password(User.objects.make_random_password())
        user.save()

        return user
Exemple #32
0
def join(request):
    user = User()

    user.name = request.POST['name']
    user.email = request.POST['email']
    user.password = request.POST['password']
    user.gender = request.POST['gender']

    # data_tuple = (name, email, password, gender)
    # models.insert(data_tuple)
    user.save()

    return HttpResponseRedirect('/user/joinsuccess')
    def post(self, request):
        data = json.loads(request.body)
        email_check = re.compile(
            '^[a-zA-Z0-9+-_.]+@[a-zA-Z0-9-_]+\.[a-zA-Z0-9-.]{2,3}$')
        phone_check = re.compile('^\d{3}-?\d{3,4}-?\d{4}$')

        try:
            if not (data['user_id'] and data['password']
                    and data['user_name']):
                return JsonResponse({'MESSAGE': 'No Value'}, status=400)
            elif not re.match('.{8}', data['password']):
                return JsonResponse({'MESSAGE': 'Password too short'},
                                    status=400)
        except KeyError as e:
            return JsonResponse({'Key_Error': str(e)}, status=400)
        hashed_password = bcrypt.hashpw(data['password'].encode('utf-8'),
                                        bcrypt.gensalt())
        decoded_password = hashed_password.decode('utf-8')
        try:
            new_user = User(name=data['name'], password=decoded_password)
        except KeyError:
            new_user = User(password=decoded_password)

        if email_check.match(data['user_id']):
            if User.objects.filter(
                    Q(user_name=data['user_name'])
                    | Q(email=data['user_id'])).exists():
                return JsonResponse({'MESSAGE': 'Duplicate information'},
                                    status=400)
            else:
                new_user.user_name = data['user_name']
                new_user.email = data['user_id']
                new_user.save()
                return JsonResponse({'MESSAGE': 'SUCCESS'}, status=201)
        elif phone_check.match(data['user_id']):
            phone_number = ''.join(data['user_id'].split('-'))
            if User.objects.filter(
                    Q(user_name=data['user_name'])
                    | Q(phone_number=phone_number)).exists():
                return JsonResponse({'MESSAGE': 'Duplicate information'},
                                    status=400)
            else:
                new_user.user_name = data['user_name']
                new_user.phone_number = phone_number
                new_user.save()
                return JsonResponse({'MESSAGE': 'SUCCESS'}, status=201)
        else:
            return JsonResponse(
                {'MESSAGE': 'Invalid email address or phone number'},
                status=400)
Exemple #34
0
def _add_user(request, email, password, band_id, facebook = "", name = "", country = ""):
    #import ipdb; ipdb.set_trace()
    key = hashlib.md5(email).hexdigest()

    try:
        country = Country.objects.get(id=country)
    except:
        country = Country.objects.get(id=1)

    if not facebook:
        confirmed = 0
        try:
            html = "Hello!"
            html = html + "<br><br>To confirm your vote "
            html = html + "<a href='http://rockranking.com/user/validate/" + key + "/'>click here</a>"
            html = html + "<br><br>If you can not access the link, please copy this"
            html = html + "<br>http://rockranking.com/user/validate/" + key + "/"
            html = html + "<br>and paste in your browser"
            html = html + "<br><br>Rock Ranking Team \m/"

            _send_email(email,html)
            email_feedback = 'sent'
        except:
            email_feedback = 'error to sent'
    else:
        confirmed = 1
        email_feedback = 'facebook login'
    try:
        user = User()
        user.username = ""
        user.name = name
        user.email = email
        user.password = hashlib.md5(password).hexdigest()
        user.email_feedback = email_feedback
        user.facebook = facebook
        user.country = country
        user.ip = request.META.get('REMOTE_ADDR')
        user.key = key
        user.date = datetime.now()
        user.action = "add_band_%s" % band_id
        user.confirmed = confirmed
        user.save()

        return True

    except:
        return False
Exemple #35
0
def join(request):

    user = User()
    user.name = request.POST['name']
    user.email = request.POST['email']
    user.password = request.POST['password']
    user.gender = request.POST['gender']

    if User.objects.filter(email = user.email).exists() is not True:
        user.save()
        return HttpResponseRedirect('/user/joinsuccess')

    # 입력폼 비교 구문과 이에따른 메시지 생성을 별도의 함수내에 구현하고, 그 수행 결과에 따른 action 만을
    # 본 함수에서 구현하도록 한다.

    # 응답으로 되돌려줄 리턴 값은
    # email_available, user의 폼 입력 값들, 응답할 메시지
    # 세 가지로 한다.

    # elif len(User.objects.filter(email = user.email)) == 0:
    #     return render(request, 'user/joinform.html', {"email_availability": False, "user": user})
    else:
        return render(request, 'user/joinform.html', {"email_availability" : False, "user":user})
Exemple #36
0
def register(request):
    if request.method == "POST":
        rst = json.loads(request.body.decode("utf-8"))
        uf = UserForm(rst)
        if uf.is_valid():
            #检测用户是否存在
            checkUser = User.objects.filter(email__exact = uf.cleaned_data['email']).first()
            if checkUser:
                data = {}
                data["status"] = 'error'
                data['msg'] = "此Email账户已存在"
                return HttpResponse(json.dumps(data), content_type="application/json")
            user = User()
            user.username = uf.cleaned_data['username']
            pwd = (uf.cleaned_data['password'] + keyPwd).encode("utf-8")
            user.password = hashlib.sha1(pwd).hexdigest()
            user.qq = uf.cleaned_data['qq']
            user.email = uf.cleaned_data['email']
            user.random = ''.join(random.sample(string.ascii_letters + string.digits, 10))
            user.save()

            data = {}
            data["status"] = 'success'
            data['msg'] = ""
            return HttpResponse(json.dumps(data), content_type="application/json")
        else:
            data = {}
            data["status"] = 'error'
            data['msg'] = "Illegal post"
            return HttpResponse(json.dumps(data), content_type="application/json")
    else:
        data = {}
        data["status"] = 'error'
        data['msg'] = "Only post method"

        return HttpResponse(json.dumps(data), content_type="application/json")