예제 #1
0
def message_users():
  db = db_client()
  if(int(user_manager.get_access_level(db, current_user.id)) < 2):
    return redirect(url_for('dashboard'))
  elif(request.method == 'GET'):
    message_user_list = user_manager.get_all_users(db)
    groups = ["Camp A", "Camp B", "Camp C", "Camp D"]
    temp = []
    i = 0
    for row in message_user_list:
      user_data = {}
      user_data['uid'] = str(row[4])
      user_data['username'] = row[3]
      user_data['phone'] = row[0]
      user_data['groups'] = groups[i] #Make sure it works with multigroups/user
      temp.append(user_data)
      i += 1
      if(i>3):
        i=0
    data = {}
    data['data'] = temp

    return render_template('message_users.html', user=current_user.username, data = data, groups = list(groups),
      access_level=user_manager.get_access_level(db_client(), current_user.id))
  elif(request.method == 'POST'):
    return render_template('message_users.html', user=current_user.username, access_level=current_user.access)
  return render_template('index.html', user=current_user.username, error="TEST", 
      access_level=user_manager.get_access_level(db_client(), current_user.id))
예제 #2
0
def message_users():
    # TODO: CHECK IF USER IS ADMIN
    if (request.method == 'GET'):
        '''
    TODO: Get all users and display on page
    MODEL TEAM: Return all users info from get_all_users()
    (SAME AS MANAGE_USERS VIEW)

    TODO PAGE: Select users individualy, by group, or select all
    '''
        temp = user_manager.get_all_users()
        # TODO: make subarray of relevent columns, username[0], phonenumber[4], groups[5]
        data = []
        for row in temp:
            tmp = []
            tmp.append(row[0])
            tmp.append(row[4])
            tmp.append(row[5])
            data.append(tmp)
        return render_template('message_users.html',
                               user=current_user.username,
                               data=data)
    elif (request.method == 'POST'):
        return render_template('maessage_users.html',
                               user=current_user.username)
    else:
        return render_template('index.html',
                               user=current_user.username,
                               error="TEST")
예제 #3
0
def manage_users():
    if (int(user_manager.get_access_level(db_client(), current_user.id)) < 2):
        return redirect(url_for('dashboard'))
    if (request.method == 'GET'):
        db = db_client()
        user_list = user_manager.get_all_users(db)
        temp = []
        for user in user_list:
            user_data = {}
            user_data['username'] = user[3]
            user_data['uid'] = str(user[4])
            user_data['position'] = user[2]
            user_data['access_level'] = user[2]
            user_data['email'] = user[1]
            user_data['phone'] = user[0]
            user_data['groups'] = 'TODO'
            user_data['last_login'] = user[5].strftime("%Y-%M-%d @ %H:%M:%S")
            user_data['deleted'] = user[6]
            temp.append(user_data)
        data = {}
        data['data'] = temp
        return render_template('manage_users.html',
                               user=current_user.username,
                               data=data,
                               access_level=user_manager.get_access_level(
                                   db_client(), current_user.id))
    else:
        #POST
        db = db_client()
        post_args = json.loads(request.values.get("data"))
        user_id = next(iter(post_args['data']))
        if (post_args['action'] == "remove"):
            result = user_manager.delete_user(db, user_id)
            if (result == False):
                print("FAILED TO DELETE USER")
            return {}
        elif (post_args['action'] == "unremove"):
            #TODO?: Fix the post data setn to match others
            user_id = post_args['data']['uid']
            user_manager.update_user(db, user_id, {"deleted": "0"})
            return {}
        else:
            response_data = {}
            response_data['data'] = []
            post_args['data'][user_id]['uid'] = user_id
            response_data['data'].append(post_args['data'][user_id])

            new_user_data = {}
            new_user_data['access_level'] = int(
                response_data['data'][0]['access_level'])
            new_user_data['position'] = response_data['data'][0]['position']

            user_manager.update_user(db, user_id, new_user_data)
            return response_data
예제 #4
0
def table_reload():
    db = db_client()
    user_list = user_manager.get_all_users(db)
    temp = []
    for user in user_list:
        user_data = {}
        user_data['username'] = user[3]
        user_data['uid'] = str(user[4])
        user_data['position'] = user[2]
        user_data['access_level'] = user[2]
        user_data['email'] = user[1]
        user_data['phone'] = user[0]
        user_data['groups'] = 'TODO'
        user_data['last_login'] = user[5].strftime("%Y-%M-%d @ %H:%M:%S")
        user_data['deleted'] = user[6]
        temp.append(user_data)
    data = {}
    data['data'] = temp
    return data
예제 #5
0
def table_reload():
    print("TEST AJAX RELOAD")
    db = db_client()
    group_user_list = user_manager.get_all_users(db)
    # TODO: Fix get_all_groups()
    temp = []
    for row in group_user_list:
        user_data = {}
        user_data['uid'] = str(row['_id'])
        user_data['username'] = row['username']
        user_data['position'] = row['position']
        user_data['access_level'] = row['access_level']
        user_data['email'] = row['email']
        user_data['phone'] = row['phone']
        user_data[
            'groups'] = 'TODO'  #group_manager.get_all_groups(db, str(row['_id']))
        user_data['last_login'] = row['login_timestamp'][0:16]
        user_data['deleted'] = str(row['deleted'])
        temp.append(user_data)
    data = {}
    data['data'] = temp
    return data
예제 #6
0
def manage_users():
    if (request.method == 'GET'):
        '''
    TODO:
    MODEL TEAM:

       1) Finish user_manager.last_login(db,user)

       2) group_manager.get_all_groups(db, username)

    username = request.args.get('ID')

    '''
        db = db_client()
        if (user_manager.get_access_level(db, current_user.username) < 2):
            return redirect(
                url_for('dashboard',
                        user=current_user.username,
                        access_level=current_user.access))

        group_user_list = user_manager.get_all_users(db)
        # TODO: Fix get_all_groups()
        temp = []
        for row in group_user_list:
            user_data = {}
            user_data['uid'] = str(row['_id'])
            user_data['username'] = row['username']
            user_data['position'] = row['position']
            user_data['access_level'] = row['access_level']
            user_data['email'] = row['email']
            user_data['phone'] = row['phone']
            user_data[
                'groups'] = 'TODO'  #group_manager.get_all_groups(db, str(row['_id']))
            user_data['last_login'] = row['login_timestamp'][0:16]
            user_data['deleted'] = str(row['deleted'])
            temp.append(user_data)
        data = {}
        data['data'] = temp
        return render_template('manage_users.html',
                               user=current_user.username,
                               data=data,
                               access_level=current_user.access)
    elif (request.method == 'POST'):
        db = db_client()
        post_args = json.loads(request.values.get("data"))
        print("POST REQUEST")
        print(post_args)
        user_id = next(iter(post_args['data']))
        if (post_args['action'] == "remove"):
            result = user_manager.delete_user(db, user_id)
            if (result == False):
                print("FAILED")
            return {}
        elif (post_args['action'] == "unremove"):
            print("HERE UNREMOVE USER")
            #TODO: fix the post dat sent to match others
            user_id = post_args['data']['uid']
            user_manager.update_user(db, user_id, {"deleted": False})
            return {}
        else:
            response_data = {}
            response_data['data'] = []
            post_args['data'][user_id]['uid'] = user_id
            response_data['data'].append(post_args['data'][user_id])

            new_user_data = {}
            new_user_data['access_level'] = int(
                response_data['data'][0]['access_level'])
            new_user_data['position'] = response_data['data'][0]['position']

            user_manager.update_user(db, user_id, new_user_data)
            return response_data
    else:
        print("SHIT")
        return render_template('index.html',
                               user=current_user.username,
                               error="TEST",
                               access_level=current_user.access)