예제 #1
0
파일: adduser.py 프로젝트: mzupan/intake
    def handle(self, **kwargs):
        while True:
            username = self._get_string('Username')
        
            if User.objects(username=username).count() > 0:
                print "That username is already in use"
                continue
            else:
                break
        
        while True:
            email = self._get_string('Email', required=False)
        
            if User.objects(email=email).count() > 0:
                print "That email is already in use"
                continue
            else:
                break
            
        password = self._get_string('Password', getpass.getpass)
        first_name = self._get_string('First name')
        last_name = self._get_string('Last name')

        u = User(username=username)
        u.first_name = first_name
        u.last_name = last_name
        u.email = email
        u.set_password(password)
        u.is_staff = True
        u.is_superuser = False
        u.save()

        print 'User "%s %s" successfully added' % (first_name, last_name)
예제 #2
0
파일: SignUp.py 프로젝트: cuongnmfis/dms
def index(request):
	firstname = "";
	lastname = "";
	username = "";
	password = "";
	email = "";
	if request.method == 'GET':
		return render(request, 'myapp/signup.html', {'rangerDay':range(1,32),'rangerYear':range(2014,1905,-1),})
	elif request.method == 'POST':
		firstname = request.POST['txtFirstName']
		lastname = request.POST['txtLastName']
		username = request.POST['txtUserName']
		password = request.POST['txtPassWord']
		email= request.POST['txtEmail']
		try:
			user = User()
			user.username = username
			user.first_name = firstname
			user.last_name = lastname
			user.email = email
			user.set_password(password);
			user.save()
			
			_profile = UserProfile()
			_profile.user_id = user
			_profile.save()
			
			user.backend = 'mongoengine.django.auth.MongoEngineBackend'
			logout(request)
			login(request, user)
			return HttpResponseRedirect('/mainscreen')
		except mongoengine.errors.NotUniqueError as e:
				return getSignupError(request,'Đã tồn tại trong hệ thống',firstname,lastname,username,password,email)
예제 #3
0
    def create_user(username,
                    password,
                    group,
                    telphone=None,
                    email=None,
                    is_staff=True,
                    is_active=True,
                    is_superuser=False):
        now = datetime.datetime.now()

        if email is not None:
            try:
                email_name, domain_part = email.strip().split('@', 1)
            except ValueError:
                pass
            else:
                email = '@'.join([email_name, domain_part.lower()])

        user = User()
        user.username = username
        user.password = make_password(password)
        user.group = group
        user.email = email
        user.telphone = telphone
        user.is_staff = is_staff
        user.is_active = is_active
        user.is_superuser = is_superuser
        user.date_joined = now
        user.save()

        return user
예제 #4
0
파일: SignUp.py 프로젝트: cuongnmeas/ase
def index(request):
	firstname = "";
	lastname = "";
	username = "";
	password = "";
	email = "";
	if request.method == 'GET':
		return render(request, 'myapp/signup.html', {'rangerDay':range(1,32),'rangerYear':range(2014,1905,-1),})
	elif request.method == 'POST':
		try:
			#parameter
			firstname = request.POST['txtFirstName']
			lastname = request.POST['txtLastName']
			username = request.POST['txtUserName']
			password = request.POST['txtPassWord']
			email= request.POST['txtEmail']
			if str(firstname).strip() == "":
				return getSignupError(request,'First name can not be empty!',firstname,lastname,username,password,email)
			elif str(lastname).strip() == "":
				return getSignupError(request,'Last name can not be empty!',firstname,lastname,username,password,email)
			elif str(username).strip() == "":
				return getSignupError(request,'User name can not be empty!',firstname,lastname,username,password,email)
			elif str(password).strip() == "":
				return getSignupError(request,'Pass word can not be empty!',firstname,lastname,username,password,email)
			elif str(email).strip() == "":
				return getSignupError(request,'Email can not be empty!',firstname,lastname,username,email)
			#insert new user
			user = User()
			user.username = username
			user.first_name = firstname
			user.last_name = lastname
			user.email = email
			user.set_password(password);
			user.save()
			user.backend = 'mongoengine.django.auth.MongoEngineBackend'
			logout(request)
			login(request, user)
			#create new profile
			_profile = UserProfile()
			_profile.user_id = request.user
			_profile.save()
			return HttpResponseRedirect('/home')
		except mongoengine.errors.ValidationError as ex:
			return getSignupError(request,str(ex.errors['email']),firstname,lastname,username,password,email)
		except mongoengine.errors.NotUniqueError as e:
			return getSignupError(request,'User has already exists!',firstname,lastname,username,password,email)
		except Exception as e:
			return getSignupError(request,str(e),firstname,lastname,username,password,email)
예제 #5
0
파일: models.py 프로젝트: NZDIS/TobaccoFree
 def create_new_observer(self, email, name, surname, affiliation, password):
     """
     Create a new, inactive ``Observer``, generates a
     ``profile`` and emails its activation key,
     returning the new ``Observer``.
     
     """
     new_observer = RegisteredObserver()
     user = User()
     user.email = email
     user.username = email
     user.is_active = False
     new_observer.name = name
     new_observer.surname = surname
     user.name = name + surname
     new_observer.affiliation = affiliation
     user.set_password(password)
     new_observer.set_password(password)
     new_observer.approved = False
     new_observer.registration_confirmed = False
     sha1 = hashlib.sha1()
     sha1.update(str(random.random()))
     salt = sha1.hexdigest()[:5]
     sha1 = hashlib.sha1()
     sha1.update(salt.encode('ascii', 'ignore') + email.encode('ascii', 'ignore') + name.encode('ascii', 'ignore') + affiliation.encode('ascii', 'ignore'))
     new_observer.activation_key = sha1.hexdigest()
     user.save()
     new_observer.user = user
     new_observer.save()
     
     from django.core.mail import send_mail
     subject = "Registration activation request for NZDIS: Tobacco Free"
     
     # Email subject *must not* contain newlines
     subject = ''.join(subject.splitlines())
         
     message = render_to_string('activation_email.txt',
                                { 'activation_key': new_observer.activation_key,
                                  'name': new_observer.name, 
                                 })
     logger.debug("Trying to email this:\n" + message)
     try:
         send_mail(subject, message, settings.DEFAULT_FROM_EMAIL, [new_observer.user.email])
     except:
         pass
         # TODO what should we do if the email connection fails?
         # should never happen on the server
     return new_observer
예제 #6
0
    def handle(self, **kwargs):
        username = self._get_string('Username')
        email = self._get_string('Email', required=False)
        password = self._get_string('Password', getpass.getpass)
        first_name = self._get_string('First name')
        last_name = self._get_string('Last name')

        user = User(username=username)
        user.first_name = first_name
        user.last_name = last_name
        user.email = email
        user.set_password(password)
        user.is_staff = True
        user.save()

        print 'User "%s %s" successfully added' % (first_name, last_name)
예제 #7
0
    def handle(self, **kwargs):
        username = self._get_string('Username')
        email = self._get_string('Email', required=False)
        password = self._get_string('Password', getpass.getpass)
        first_name = self._get_string('First name')
        last_name = self._get_string('Last name')

        user = User(username=username)
        user.first_name = first_name
        user.last_name = last_name
        user.email = email
        user.set_password(password)
        user.is_staff = True
        user.save()

        print 'User "%s %s" successfully added' % (first_name, last_name)
예제 #8
0
파일: ldapAuth.py 프로젝트: mzupan/intake
    def authenticate(self, username=None, password=None, domain=None):
        base = settings.LDAP_BASE
        scope = ldap.SCOPE_SUBTREE
        filter = "(&(objectclass=person) (uid=%s))" % username
        ret = ['dn']

        try:
            l = ldap.initialize(settings.LDAP_SERVER);
            l.protocol_version = ldap.VERSION3
            l.simple_bind_s()
        except ldap.LDAPError:
            return None

        try:
            result_id = l.search(base, scope, filter, ret)
            result_type, result_data = l.result(result_id, 0)
            
            if (len(result_data) != 1):
                return None
            
            l.simple_bind_s(result_data[0][0],password)
            
            u = User.objects(username=username).first()
            if u is None:
                from random import choice
                import string
                temp_pass = ""
                for i in range(8):
                    temp_pass = temp_pass + choice(string.letters)

                u = User(username=username)
                u.email = username + settings.LDAP_EMAIL_DOMAIN
                u.set_password(temp_pass)
                u.is_staff = True
                u.is_superuser = False
                u.is_active = True
                u.save()

            return u
           
        except ldap.INVALID_CREDENTIALS:
            return None
예제 #9
0
파일: views.py 프로젝트: Pancho/db
def register(request):
	logger.debug('Register requested from IP %s' % request.META.get('REMOTE_ADDR'))

	if request.user.is_authenticated():
		return HttpResponseRedirect(reverse('web.index'))

	if request.method == 'GET':
		ctx = {'user': request.user, 'form': forms.RegisterForm(), }

		return render(request, 'pages/register.html', ctx)

	if request.method == 'POST':
		form = forms.RegisterForm(request.POST)
		if not form.is_valid():
			ctx = {'form': form, }

			return render(request, 'pages/register.html', ctx)

		else:
			new_user = User()
			random_username = ''.join(random.sample(string.ascii_lowercase * 30, 20))
			new_user.username = random_username
			new_user.email = form.cleaned_data['email']
			new_user.is_active = True
			new_user.is_staff = False
			new_user.is_superuser = False
			new_user.set_password(form.cleaned_data['password'])
			new_user.save()

			user_doc = mongo.db.user.find_one({'username': new_user.username})
			user_doc['writing_api_key'] = ''.join(random.sample(string.ascii_lowercase * 30, 20))
			user_doc['reading_api_key'] = ''.join(random.sample(string.ascii_lowercase * 30, 20))
			del user_doc['_id']
			mongo.db.user.update({'username': new_user.username}, {'$set': user_doc})

			logger.info('New user registered with email: %s' % new_user.email)

			# log in
			auth_login(request, authenticate(username=random_username, password=form.cleaned_data.get("password")))

			return HttpResponseRedirect(reverse('web.settings'))
예제 #10
0
    def create_user(username, password, group, telphone = None, email=None, is_staff=True, is_active=True, is_superuser=False):
        now = datetime.datetime.now()

        if email is not None:
            try:
                email_name, domain_part = email.strip().split('@', 1)
            except ValueError:
                pass
            else:
                email = '@'.join([email_name, domain_part.lower()])

        user = User()
        user.username = username
        user.password = make_password(password)
        user.group = group
        user.email = email
        user.telphone = telphone
        user.is_staff = is_staff
        user.is_active = is_active
        user.is_superuser = is_superuser
        user.date_joined = now
        user.save()

        return user
예제 #11
0
def register(request):
    if request.method == 'GET':
        if request.user.is_authenticated():
            logout(request)

    register_form = RegisterForm()
    color = params.colors['register']

    errors = []

    if request.method == 'POST':
        register_form = RegisterForm(request.POST)

        if register_form.is_valid():
            try:
                # if register_form.cleaned_data['password'] != register_form.cleaned_data['confirm']:
                #     raise ValidationError('Passwords do not match')

                member = User()
                # member.username = register_form.cleaned_data['name']
                member.email = register_form.cleaned_data['email']
                # member.password = str(register_form.cleaned_data['password'])
                member.save()
                return render(request, 'appsoc/register.html', {
                    'register_form': register_form, 'success': 'You have successfully been added to the mailing list. We will contact you shortly'})

            except Exception as e:
                errors.append(str(e))
                return render(request, 'appsoc/register.html', {
                    'register_form': register_form, 'errors': errors})

    return render(request, 'appsoc/register.html', {
        'register_form': register_form, 'errors': register_form.errors, 'color': color})

    register_form = RegisterForm()
    return render(request, 'appsoc/register.html', {'register_form': register_form, 'color': color})
예제 #12
0
parser = argparse.ArgumentParser(description='Convert django model from SQL model to MongoDB model')
parser.add_argument('--all', dest='all', action='store_true', help='convert every models')
parser.add_argument('--models', '-m', dest='models', nargs='*', help='convert specified models')
arguments = parser.parse_args()

i = 0
# User
if arguments.all or 'User' in arguments.models:
    for sqlRow in DjangoUser.objects.all():
        mongoRow = MongoUser()

        mongoRow.username = sqlRow.username
        mongoRow.first_name = sqlRow.first_name
        mongoRow.last_name = sqlRow.last_name
        mongoRow.email = sqlRow.email
        mongoRow.password = sqlRow.password
        mongoRow.is_staff = sqlRow.is_staff
        mongoRow.is_active = sqlRow.is_active
        mongoRow.is_superuser = sqlRow.is_superuser
        mongoRow.last_login = sqlRow.last_login
        mongoRow.date_joined = sqlRow.date_joined

        mongoRow.save()

        i += 1
        print "User" + str(i)


i = 0
# EndGame