Beispiel #1
0
def init():
    admin = User.objects.create_user(username="******", password="******")
    admin.is_staff = True
    admin.is_superuser = True
    admin.save()
    admin_profile = UserProfile(user=admin, name="최고관리자")
    admin_profile.save()

    staff = User.objects.create_user(username="******", password="******")
    staff.is_staff = True
    staff.save()
    staff_profile = UserProfile(user=staff, name="일반회원")
    staff_profile.save()

    user = User.objects.create_user(username="******", password="******")
    user.save()
    profile = UserProfile(user=user, name="비회원")
    profile.save()

    board = Board(name="board", order=0)
    board.save()

    for i in range(45):
        article = Article(author=staff_profile,
                          title='title' + str(i),
                          board=board,
                          contents='contents',
                          notice=False,
                          read=0)
        article.save()
Beispiel #2
0
def approve_woman_profile(obj):
    print("Approving")
    data = json.loads(obj.data)
    #print(data)
    pwd = random.randint(11111, 99999)
    u = UserProfile()
    u.username = data['email']
    u.gender = 'female'
    u.set_password(pwd)
    u.is_active = True
    u.is_staff = False
    u.email = data['email']
    u.is_superuser = False
    u.about_me = data['about_me']
    u.goal = data['goal']
    u.job = data['job']
    u.city = data['city']
    u.lookingfor = data['lookingfor']
    bd = '%s-%s-%s' % (data['birthday'][0:4], data['birthday'][5:7],data['birthday'][8:10])
    print(bd)
    u.birthday = parse_date(bd)
    u.save()
    fillprops(u, data)
    obj.delete()
    for im in data['images']:
        format, imgstr = im.split(';base64,')
        ext = format.split('/')[-1]
        data = ContentFile(base64.b64decode(imgstr))  
        file_name = '%s-%s.%s' % (u.id,random.randint(111,999),ext)
        c = UserPhoto()
        c.user = u
        c.is_approved = True
        c.image.save(file_name, data, save=True)
        c.save() 
        c.setAsMain()
Beispiel #3
0
def create_user(login, password):
    user = UserProfile()
    user.username = login
    user.set_password(password)
    user.save()
    token = Token.objects.create(user=user)
    return token
Beispiel #4
0
def register(request):
    form = RegisterForm()

    if (request.method == 'POST'):
        form = RegisterForm(request.POST)
        if (form.is_valid()):
            form.save()
            username = form.cleaned_data.get('username')
            password = form.cleaned_data.get('password1')
            email = form.cleaned_data.get('email')
            user = authenticate(username=username, password=password)
            user_profile = UserProfile(user=user)
            user_profile.email_confirmed = False
            varification_code = id_generator()
            user_profile.hashcode = varification_code
            user_profile.save()
            ##send_mail(subject, msg, from, to_list, fail_silently=True)
            subject = "Account info of mushroom firm"
            msg = "Dear " + user.first_name + ", \nCongratulations! your account has been created. Please varify your email from your account option. Use this code while varifying your email: " + varification_code
            from_email = settings.EMAIL_HOST_USER
            to_email = [email, settings.EMAIL_HOST_USER]
            send_mail(subject, msg, from_email, to_email, fail_silently=True)
            messages.success = (request,
                                "Your account has ben created successfully!")
            return HttpResponseRedirect(reverse('login'))
    context = {'form': form}
    template = 'account/register.html'
    return render(request, template, context)
Beispiel #5
0
	def form_valid(self, form):
		# create a new user for this sponsor
		try:
			sp = transaction.savepoint()
			user = User(username = form.cleaned_data["sponsorUsername"])
			baseContact = form.cleaned_data["sponsorContact"]
			user.first_name = baseContact.contactPersonFirstname
			user.last_name = baseContact.contactPersonSurname
			user.email = baseContact.contactPersonEmail
			user.save()

			profile = UserProfile(user = user)
			profile.authToken = id_generator(24)
			profile.save()

			sponsoring = Sponsoring()
			sponsoring.owner = user
			sponsoring.contact = baseContact
			sponsoring.package = form.cleaned_data["sponsorPackage"]
			sponsoring.adminComment = form.cleaned_data["internalComment"]
			sponsoring.save()

			self.object = sponsoring

			transaction.savepoint_commit(sp)
		except Exception as e:
			transaction.savepoint_rollback(sp)
			raise e


		return HttpResponseRedirect(self.get_success_url())
Beispiel #6
0
    def save(self):
        email = self.cleaned_data["email"]
        first_name = self.cleaned_data["first_name"]
        last_name = self.cleaned_data["last_name"]
        password = self.cleaned_data["password"]
        password_c = self.cleaned_data["password_c"]
        bio = self.cleaned_data["bio"]
        random_username = hashlib.sha224(email).hexdigest()[:30]
        activation_code = hashlib.sha224(email).hexdigest()[:50]

        user = User()
        user.username = random_username
        user.email = email
        user.first_name = first_name
        user.last_name = last_name
        user.is_active = False
        user.set_password(password)
        user.save()

        user_profile = UserProfile()
        user_profile.bio = bio
        user_profile.user = user
        user_profile.activation_code = activation_code
        user_profile.save()
        send_user_activation_mail.delay(activation_code, email)
Beispiel #7
0
def auth_callback(request):
    """
    单点登录后的回调(由SSO服务器发起)
    :param request:
    :return:
    """
    auth_token = request.POST.get("auth_token")
    redirect = request.GET.get("redirect", settings.LOGIN_REDIRECT_URL)

    error, user, user_info = SSOAuthBackend.authenticate(auth_token)
    if not error:
        try:
            if not user:  # 这种情况表明用户在其他site注册,并且首次登陆本site
                role = Contants.ROLE_USER
                if user_info is not None and user_info[
                        'admin'] is not None and request.get_host().lower(
                        ) in user_info['admin'].lower():
                    role = Contants.ROLE_ADMIN
                user = UserProfile(username=user_info['username'],
                                   email=user_info['email'],
                                   role=role)
                user.save()
            auth.login(request, user)  # create session, write cookies
            logined_users[auth_token] = user  # 存入全局变量中
            request.session["auth_token"] = auth_token  # 存入session
            return HttpResponseRedirect(redirect)
        except Exception as e:
            logger.info(str(e))
            return HttpResponse('sso authenticate failed')
    else:
        raise PermissionDenied
Beispiel #8
0
def register(request):

    if request.method == "POST":
        user_form = UserForm(request.POST)

        if user_form.is_valid():
            username = user_form.cleaned_data['username']
            email = user_form.cleaned_data['email']
            password = user_form.cleaned_data['password2']
            first_name = user_form.cleaned_data['first_name']

            user = User.objects.create_user(username=username,
                                            password=password,
                                            email=email,
                                            first_name=first_name)
            user.set_password(user.password)
            user_profile = UserProfile(user=user)
            user_profile.save()

            return HttpResponseRedirect(reverse('account:user_login'))
        else:
            print(user_form.errors)
    else:
        user_form = UserForm()

    return render(request, 'account/registration.html', {
        'user_form': user_form,
    })
Beispiel #9
0
    def authenticate(self, openid_response):
        if openid_response is None:
            return None
        if openid_response.status != SUCCESS:
            return None

        google_email = openid_response.getSigned(
            'http://openid.net/srv/ax/1.0', 'value.email')
        google_firstname = openid_response.getSigned(
            'http://openid.net/srv/ax/1.0', 'value.firstname')
        google_lastname = openid_response.getSigned(
            'http://openid.net/srv/ax/1.0', 'value.lastname')
        username = google_email.split('@')[0]
        print username
        try:
            user = User.objects.get(username=username)
        except User.DoesNotExist:
            user = User.objects.create_user(username=username,
                                            password='******',
                                            email=google_email)
            user.first_name = google_firstname
            user.last_name = google_lastname
            user.save()
            gravatar_url = "http://www.gravatar.com/avatar/" + hashlib.md5(
                google_email).hexdigest()
            userprofile = UserProfile(user=user,
                                      gravatar_url=gravatar_url).save()
            return user

        return user
Beispiel #10
0
    def post(self, request, *args, **kwargs):
        if request.method == "POST":
            username = request.POST["username"]
            email = request.POST["email"]
            phone = request.POST["phone"]
            password = request.POST["password"]
            # role = int(request.POST["role"])
            role = request.POST["role"]
            branch = request.POST["branch"]
            city = request.POST["city"]
            country = request.POST["country"]
            address = request.POST["address"]
            user_data = User.objects.create(username=username,
                                            email=email,
                                            password=password)
            user_data.set_password(user_data.password)
            user_data.save()
            # get_role = get_object_or_404(Role, id=role)
            userprofile = UserProfile(userx=user_data,
                                      phone=phone,
                                      role=role,
                                      branch=branch,
                                      city=city,
                                      country=country,
                                      address=address,
                                      created_dt=datetime.now(),
                                      created_by=request.user)

            userprofile.save()

            return HttpResponseRedirect(reverse('account:CreateUserView'))
Beispiel #11
0
    def handle(self, *args, **options):
        print('Loading users')
        user_file = os.path.join(FIXTURES_PATH, 'users.json')
        with open(user_file, 'r') as f:
            jdata = json.loads(f.read())
            UserProfile.objects.all().delete()
            for user in jdata['administratiors']:
                profile = UserProfile()
                profile.username = user['username']
                profile.set_password(user['password'])
                profile.publicname = user['username']
                profile.is_staff = True
                profile.is_superuser = True
                profile.is_superuser = True
                profile.save()
                print('Creating ... %s' % user['username'])

            for user in jdata['female']:
                rez = requests.post(API_URL + 'account/registration',
                                    json=user)
                print(json.loads(rez.text)['message'])

            for user in jdata['male']:
                rez = requests.post(API_URL + 'account/registration',
                                    json=user)
                print(json.loads(rez.text)['message'])
Beispiel #12
0
 def save(self):
     profile = UserProfile()
     profile.username = self.validated_data['username']
     profile.set_password(self.validated_data['password'])
     profile.birthday = self.validated_data['birthday']
     profile.gender = self.validated_data['gender']
     profile.save()
     return profile
Beispiel #13
0
    def create(self, validated_data):
        username = validated_data.get('username')
        email = validated_data.get('email')
        password = validated_data.get('password')

        user = User.objects.create_user(username, email, password)
        user_profile = UserProfile()
        user_profile.user = user
        user_profile.save(using='write')
        return user
Beispiel #14
0
    def form_valid(self, form):
        user = form.save(commit=False)
        user.email = form.cleaned_data['email']
        user.is_active = False
        user.save()

        profile = UserProfile(student_id=form.cleaned_data['student_id'], user=user,
                              field=form.cleaned_data['field'])
        profile.save()
        self.send_activate_mail(user, form)
        messages.success(self.request, _("You registered."))
        return super().form_valid(form)
Beispiel #15
0
 def setUp(self):
     # Every test needs a client.
     self.client = Client()
     password = make_password('admin', salt=None, hasher='default')
     user = User(username='******',
                 password=password,
                 email='*****@*****.**')
     user.save()
     userprofile = UserProfile(user=user,
                               usertype='4',
                               department='admin',
                               phone='admin')
     userprofile.save()
     self.client.login(username='******', password='******')
Beispiel #16
0
def users_fabric(name, gender, is_superuser):
    print('Creating....%s' % name)
    u = UserProfile()
    u.username = name
    u.gender = gender
    u.set_password(name)
    u.is_active = True
    u.is_staff = True
    u.email = '*****@*****.**' % name
    u.is_superuser = is_superuser
    u.about_me = 'I am %s' % 'admin'
    u.hight = 160
    u.save()
    return u
Beispiel #17
0
    def process_job(self):
        try:
            user = User.objects.get(pk=self.kwargs["pk"])
        except User.DoesNotExist:
            raise Http404

        try:
            up = UserProfile.objects.get(user=user)
        except UserProfile.DoesNotExist:
            up = UserProfile(user=user)

        up.authToken = id_generator(24)
        up.save()
        return True
Beispiel #18
0
def users_fabric(name, gender, is_superuser):
    print('Creating....%s' % name)
    u = UserProfile()
    u.username = name
    u.gender = gender
    u.set_password(name)
    u.is_active = True
    u.is_staff = True
    u.email = '*****@*****.**' % name
    u.is_superuser = is_superuser
    u.about_me = 'I am %s' % 'admin'
    bd = '1978-%s-01' % random.randint(1, 12)
    u.birthday = parse_date(bd)
    u.hight = 160
    u.save()
    return u
Beispiel #19
0
    def post(self, request):
        serializer = UserRegisterSerializer(data=request.data)
        data = request.data
        phone = request.session.get('phone')

        if serializer.is_valid():
            user = User.objects.create(userName=phone)
            user.set_password(data["password"])
            user.phone = phone
            user.save()
            userProfile = UserProfile(User=user)
            userProfile.save()
            message = "注册成功"
            return shortcuts.success_response(message)
        else:
            message = "请输入正确格式"
            return shortcuts.error_response(message)
Beispiel #20
0
def login_evernote_token(request):
    """ as get_evernote_token(), but logs the user in as well
    """
    everAuth = EvernoteAPI()
    credentials = everAuth.get_user_token(request)
    if not credentials:
        return HttpResponseRedirect(
            reverse('account.views.login_page', args=[]))
    if request.user.is_authenticated():
        user = request.user
    else:
        evernoteHost = settings.EVERNOTE_HOST
        userStoreUri = "https://" + evernoteHost + "/edam/user"
        userStoreHttpClient = THttpClient.THttpClient(userStoreUri)
        userStoreProtocol = TBinaryProtocol.TBinaryProtocol(
            userStoreHttpClient)
        userStore = UserStore.Client(userStoreProtocol)
        evernoteUser = userStore.getUser(credentials['oauth_token'])
        user = authenticate(username=evernoteUser.username,
                            password=str(evernoteUser.id))
        if not user:
            newUser = User.objects.create_user(evernoteUser.username,
                                               evernoteUser.email,
                                               str(evernoteUser.id))
            names = evernoteUser.name.split() if evernoteUser.name else None
            newUser.first_name = names[0] if names and len(names) > 0 else ""
            newUser.last_name = names[1] if names and len(names) > 1 else ""
            newUser.save()
            user = authenticate(username=evernoteUser.username,
                                password=str(evernoteUser.id))
        login(request, user)

    try:
        expires_time = datetime.fromtimestamp(int(credentials['expires']))
    except TypeError:
        logging.error("Error parsing token expires time")
        expires_time = datetime.now()

    profile = UserProfile()
    profile.user = user
    profile.evernote_token = credentials['oauth_token']
    profile.evernote_token_expires_time = expires_time
    profile.evernote_note_store_url = credentials['edam_noteStoreUrl']
    profile.save()
    return HttpResponseRedirect(reverse('base.views.index', args=[]))
Beispiel #21
0
 def save(self, commit=True):
     if not commit:
         raise NotImplementedError(
             "Can't create User and UserProfile without database save")
     user = super(UserCreateForm, self).save(commit=True)
     user_profile = UserProfile(
         user=user,
         nama_lengkap=self.cleaned_data['nama_lengkap'],
         no_handphone=self.cleaned_data['no_handphone'],
         bidang=self.cleaned_data['bidang'],
         role=self.cleaned_data['role'],
         asal_sekolah=self.cleaned_data['asal_sekolah'],
         kota=self.cleaned_data['kota'],
         provinsi=self.cleaned_data['provinsi'],
         guru_pembimbing=self.cleaned_data['guru_pembimbing'],
         no_handphone_guru=self.cleaned_data['no_handphone_guru'])
     user_profile.save()
     return user, user_profile
Beispiel #22
0
def register(request, tmpl):
    syserr = False
    if request.user.is_authenticated():
        return HttpResponseRedirect('/account/home/')

    if request.method == 'POST':
        form = UserForm(request.POST)
        if form.is_valid():
            try:
                new_user = User.objects.create_user(
                    username=form.cleaned_data['username'],
                    email=form.cleaned_data['email']
                )
                new_user.set_password(form.cleaned_data['password'])
                new_user.first_name = form.cleaned_data['first_name']
                new_user.last_name = form.cleaned_data['last_name']
                new_user.save()
                badge = form.cleaned_data['badge_type']
                if not badge.userchoice:
                    badge = Badge.objects.filter(default=True)[0]
                if request.session.get('register_data'):
                    notes = "REGISTER_DATA:%s\n" % (request.session.get('register_data'))
                else:
                    notes = ""
                new_profile = UserProfile(
                    user=new_user,
                    gender=form.cleaned_data['gender'],
                    address=form.cleaned_data['address'],
                    zipcode=form.cleaned_data['zipcode'],
                    city=form.cleaned_data['city'],
                    country=form.cleaned_data['country'],
                    language=form.cleaned_data['language'],
                    badge_type = badge,
                    badge_text=form.cleaned_data['badge_text'],
                    comments=form.cleaned_data['comments'],
                    fingerprint=form.cleaned_data['fingerprint'],
                    notes = notes
                )
                new_profile.save()
            except Exception, e:
                print e
                syserr = True
            else:
                return HttpResponseRedirect('/account/register/complete/')
Beispiel #23
0
    def create(self, validated_data):
        profile_data = validated_data.pop('profile', None)
        username = validated_data['username']
        email = validated_data['email']
        password = validated_data['password']
        user = User(username=username, email=email)
        user.set_password(password)
        user.save()
        avatar = profile_data.get('avatar') or None
        if not avatar:
            avatar = 'http://api.adorable.io/avatar/200/' + username

        profile = UserProfile(user=user,
                              bio=profile_data.get('bio', ''),
                              avatar=avatar,
                              name=profile_data.get('name', ''),
                              status=profile_data.get('status', 'Member'))
        profile.save()
        return user
def user_signup(req):
    if req.method == 'GET':
        context = {
            'form': SignUpForm(),
        }

        return render(req, 'accounts/signup.html', context=context)
    else:
        form = SignUpForm(req.POST)
        if form.is_valid():
            user = form.save()
            profile = UserProfile(user=user, )
            profile.save()
            login(req, user)
            return redirect('index')

        context = {'form': form}

        return render(req, 'accounts/signup.html', context=context)
Beispiel #25
0
def register(request):
    if request.method == "POST":
        form = UserRegister(request.POST)
        if form.is_valid():
            user = User.objects.create_user(username=request.POST['username'],
                                            password=request.POST['password'],
                                            email=request.POST['email'])
            user.save()
            gravatar_url = "http://www.gravatar.com/avatar/" + hashlib.md5(
                request.POST.get('email')).hexdigest()
            userprofile = UserProfile(user=user,
                                      gravatar_url=gravatar_url).save()

            auth_login(
                request,
                authenticate(username=request.POST['username'],
                             password=request.POST['password']))
            return HttpResponse(simplejson.dumps({'ok': '/'}))
        else:
            return HttpResponse(simplejson.dumps(form.errors))
Beispiel #26
0
def signup_callback(request):
    """
    注册成功后的回调(由SSO服务器发起)
    :param request:
    :return:
    """
    auth_token = request.POST.get("auth_token")
    redirect = request.GET.get("redirect", settings.LOGIN_REDIRECT_URL)

    error, user, user_info = SSOAuthBackend.authenticate(auth_token)
    if error or user or not user_info:
        raise PermissionDenied
    else:
        user = UserProfile(username=user_info['username'],
                           email=user_info['email'])
        user.save()

        auth.login(request, user)  # create session, write cookies
        logined_users[auth_token] = user  # 存入全局变量中
        request.session["auth_token"] = auth_token  # 存入session
        return HttpResponseRedirect(redirect)
Beispiel #27
0
def changepwd_callback(request):
    """
    修改密码后的回调(由SSO服务器发起)
    :param request:
    :return:
    """
    auth_token = request.POST.get("auth_token")
    redirect = request.GET.get("redirect", settings.LOGIN_REDIRECT_URL)

    error, user, user_info = SSOAuthBackend.authenticate(auth_token)
    if not error:
        if not user:  # 这种情况表明用户在其他site注册,并且首次登陆本site
            user = UserProfile(username=user_info['username'],
                               email=user_info['email'])
            user.save()
        auth.login(request, user)  # create session, write cookies
        logined_users[auth_token] = user  # 存入全局变量中
        request.session["auth_token"] = auth_token  # 存入session
        return HttpResponseRedirect(redirect)
    else:
        raise PermissionDenied
Beispiel #28
0
def my_signup(request):
    # if the user is already logged in, send them to the current_courses page
    if request.user.is_authenticated():
        return HttpResponseRedirect('/gradebook/current_courses/')

    if request.is_ajax():
        get_action = request.GET['get_action']
        if get_action == 'is_email_unique':
            email = request.GET['email_in_question']
            unique = User.objects.filter(username=email).count() == 0
            return HttpResponse(json.dumps({'is_unique': unique}), mimetype='application/json')

    if request.method == 'POST':
        form = MyUserCreationForm(request.POST)

        if form.is_valid():
            password1 = form.cleaned_data.get('password1')
            #password2 = form.cleaned_data.get('password2')
            #if password1 != password2:
            #    form.errors.setdefault('password1', ErrorList()).append(form.error_messages['password_mismatch'])
            #else:
            email = form.cleaned_data.get('email')
            user = User.objects.create_user(username=email,
                                            password=password1,
                                            email=email)
            user.first_name = form.cleaned_data.get('first_name')
            user.last_name = form.cleaned_data.get('last_name')
            user.is_active = False  # user is inactive until email is validated
            user.save()
            prof = UserProfile(user=user)
            prof.save()

            send_validation_email(user)

            login(request, authenticate(username=email, password=password1))

            return HttpResponseRedirect('/account/settings/')
    else:
        form = MyUserCreationForm()
    return HttpResponseRedirect('/')
Beispiel #29
0
    def save(self):
        username = self.cleaned_data['username']
        password = self.cleaned_data['password']
        user = User(
            username=username,
            email=username,
            is_active=False,
        )
        user.set_password(password)
        user.save()

        profile = UserProfile(
            user=user,
            username=username,
            nickname=username,
            email=username,
            is_mail_verified=False,
        )
        profile.save()

        INFO_LOG.info(gen_info_msg(self._request, action=u'注册成功'))
        return profile
Beispiel #30
0
def join_form(request):
    if request.method == 'POST':
        user_id = request.POST.get('mb_id', '')
        password = request.POST.get('mb_password', '')
        question = int(request.POST.get('mb_password_q', '0'))
        answer = request.POST.get('mb_password_a', '')
        name = request.POST.get('mb_name', '')
        nick = request.POST.get('mb_nick', '')
        email = request.POST.get('mb_email', '')
        birth = request.POST.get('mb_birth', '')
        sex = request.POST.get('mb_sex', '')
        phone = request.POST.get('mb_hp', '')
        profile_text = request.POST.get('mb_profile', '')
        is_mailing = request.POST.get('mb_mailing', '')
        is_sms = request.POST.get('mb_sms', '')
        is_open = request.POST.get('mb_open', '')

        user = User.objects.create_user(username=user_id,
                                        password=password,
                                        email=email)
        profile = UserProfile(user=user,
                              question=question,
                              answer=answer,
                              name=name,
                              nick=nick,
                              birth=birth,
                              sex=sex,
                              phone=phone,
                              text=profile_text,
                              mailing=(len(is_mailing) > 0),
                              sms=(len(is_sms) > 0),
                              info_open=(len(is_open) > 0))
        profile.save()
        return HttpResponseRedirect('/account/join_success/?name=' + name +
                                    '&id=' + user_id)
    else:
        return render_to_response('account/join_form.html', {},
                                  context_instance=RequestContext(request))