Ejemplo n.º 1
0
def regdesk():
    if g.user.is_admin == True:
        if request.method == 'GET':
            userslist = User.query.all()
            return render_template('regdesk.html',eventtypes = app.config['EVENT_TYPES'],
                events = Event.query.all(),page="admin")
        else:
            app.logger.info(request.form)
            name = request.form['name']
            mobilenumber = request.form['mobilenumber']
            college = request.form['college']
            user = User.query.filter_by(mobilenumber=mobilenumber).first()
            error = False  
            if user:
                error = True
                flash('Mobile number already registered','warning')

            if len(mobilenumber) != 10 or not mobilenumber.isdigit():
                error = True
                flash("Mobile number is invalid",'warning')

            if error:
                return render_template('regdesk.html',page="admin",eventtypes = app.config['EVENT_TYPES'],
                    events = Event.query.all())
            else:
                newuser = User(name,college,mobilenumber+'-Registered-offline',mobilenumber[:-4],mobilenumber)
                db.session.add(newuser)
                db.session.commit()
                newuser.gamayaid = "GM%04d" %newuser.id
                db.session.commit()

                for i in request.form.keys():
                    if 'event' in i:
                        if i[5:].isdigit():
                            if Event.query.filter_by(id=int(i[5:])).first():
                                r = Registration(newuser.id,int(i[5:]))
                                db.session.add(r)
                                db.session.commit()
                    if 'workshop' in i:
                        if i+'_registered' in User.__dict__:
                            setattr(newuser,i+'_registered',True)
                            setattr(newuser,i+'_registered_on',datetime.datetime.utcnow())
                            db.session.commit()

                
            flash('User created with gamaya id: ' + newuser.gamayaid, 'success')
            return render_template('regdesk.html',eventtypes = app.config['EVENT_TYPES'],
                events = Event.query.all(),page="admin")
    else:
        return abort(403)
Ejemplo n.º 2
0
def register():
    if g.user is not None and g.user.is_authenticated():
            return redirect(url_for('index'))

    error = False
    if request.method == 'GET':
        return render_template('register.html',page="register")

    
    elif request.method == 'POST':
        #app.logger.info(repr(request.form))
        name = request.form['name']
        email = request.form['email']
        college = request.form['college']
        mobilenumber = request.form['mobilenumber']
        
        password = request.form['password']
        passwordconfirm = request.form['password-confirm']

        user = User.query.filter_by(email=email).first()
        if user:
            
            error = True
            flash('Email already registered','warning')
        
        if password != passwordconfirm:
            error = True
            flash("Passwords don't match",'warning')
        if len(mobilenumber) != 10 or not mobilenumber.isdigit():
            error = True
            flash("Mobile number is invalid",'warning')

        #app.logger.info("Error = ", str(error))
        if error:
            return render_template('register.html',page="register")
        else:
            newuser = User(name,college,email,password,mobilenumber)
            newuser.authenticated = True
            db.session.add(newuser)
            db.session.commit()
            newuser.gamayaid = "GM%04d" %newuser.id
            db.session.commit()
            login_user(newuser)
            return redirect(url_for('index'))