コード例 #1
0
def edit_local_user_gid(request):

  return_dict = {}
  try:
    group_list,err = local_users.get_local_groups()
    if err:
      raise Exception(err)
    if 'username' not in request.REQUEST:
      raise Exception("Unknown user specified")

    username = request.REQUEST["username"]
    ud,err = local_users.get_local_user(username)
    if err:
      raise Exception(err)
    if not ud:
      raise Exception("Specified user information not found")
  
    if request.method == "GET":
      # Shd be an edit request
  
      # Set initial form values
      initial = {}
      initial['username'] = ud['username']
      initial['gid'] = ud['gid']
  
      form = local_user_forms.EditLocalUserGidForm(initial = initial, group_list = group_list)
  
      return_dict["form"] = form
      return django.shortcuts.render_to_response('edit_local_user_gid.html', return_dict, context_instance=django.template.context.RequestContext(request))
  
    else:
  
      # Shd be an save request
      form = local_user_forms.EditLocalUserGidForm(request.POST, group_list = group_list)
      return_dict["form"] = form
      if form.is_valid():
        cd = form.cleaned_data
        ret, err = local_users.set_local_user_gid(cd)
        if not ret:
          if err:
            raise Exception(err)
          else:
            raise Exception("Error saving user information")
  
        audit_str = "Modified local user's primary group %s"%cd["username"]
        audit.audit("modify_local_user_gid", audit_str, request.META["REMOTE_ADDR"])
  
        return django.http.HttpResponseRedirect('/view_local_user?username=%s&searchby=username&action=gid_changed'%cd["username"])
  
      else:
        #Invalid form
        return django.shortcuts.render_to_response('edit_local_user_gid.html', return_dict, context_instance=django.template.context.RequestContext(request))
  except Exception, e:
    return_dict['base_template'] = 'users-groups_base.html'
    return_dict["page_title"] = "Modify local user's primary group"
    return_dict['tab'] = 'view_local_users_tab'
    return_dict["error"] = 'Error modifying local users primary group'
    return_dict["error_details"] = str(e)
    return django.shortcuts.render_to_response("logged_in_error.html", return_dict, context_instance=django.template.context.RequestContext(request))
コード例 #2
0
def view_local_user(request):

    return_dict = {}
    try:
        if 'searchby' not in request.GET:
            raise Exception("Malformed request. Please use the menus.")

        if request.GET['searchby'] == 'username':
            if 'username' not in request.GET:
                raise Exception("Malformed request. Please use the menus.")
            ud, err = local_users.get_local_user(request.GET['username'])
        elif request.GET['searchby'] == 'uid':
            if 'uid' not in request.GET:
                raise Exception("Malformed request. Please use the menus.")
            ud, err = local_users.get_local_user(request.GET['username'],
                                                 False)

        if err:
            raise Exception(err)

        if not ud:
            raise Exception("Specified user not found. Please use the menus.")

        return_dict["user"] = ud

        if "ack" in request.GET:
            if request.GET["ack"] == "gid_changed":
                return_dict[
                    'ack_message'] = "Local user's group successfully updated"
            elif request.GET["ack"] == "changed_password":
                return_dict['ack_message'] = "Successfully update password"

        return django.shortcuts.render_to_response(
            'view_local_user.html',
            return_dict,
            context_instance=django.template.context.RequestContext(request))
    except Exception, e:
        return_dict['base_template'] = 'users-groups_base.html'
        return_dict["page_title"] = 'Local user details'
        return_dict['tab'] = 'view_local_users_tab'
        return_dict["error"] = 'Error loading local user details'
        return_dict["error_details"] = str(e)
        return django.shortcuts.render_to_response(
            "logged_in_error.html",
            return_dict,
            context_instance=django.template.context.RequestContext(request))
コード例 #3
0
def view_local_user(request):

  return_dict = {}
  try:
    if 'searchby' not in request.GET:
      raise Exception("Malformed request. Please use the menus.")

    if request.GET['searchby'] == 'username':
      if 'username' not in request.GET:
        raise Exception("Malformed request. Please use the menus.")
      ud,err = local_users.get_local_user(request.GET['username'])
    elif request.GET['searchby'] == 'uid':
      if 'uid' not in request.GET:
        raise Exception("Malformed request. Please use the menus.")
      ud,err = local_users.get_local_user(request.GET['username'], False)

    if err:
      raise Exception(err)

    if not ud:
      raise Exception("Specified user not found. Please use the menus.")
      
    return_dict["user"] = ud
  
    if "action" in request.GET:
      conf = ''
      if request.GET["action"] == "gid_changed":
        conf = "Local user's group successfully updated"
      elif request.GET["action"] == "changed_password":
        conf = "Successfully update password"
      return_dict["conf"] = conf
  
    return django.shortcuts.render_to_response('view_local_user.html', return_dict, context_instance=django.template.context.RequestContext(request))
  except Exception, e:
    return_dict['base_template'] = 'users-groups_base.html'
    return_dict["page_title"] = 'Local user details'
    return_dict['tab'] = 'view_local_users_tab'
    return_dict["error"] = 'Error loading local user details'
    return_dict["error_details"] = str(e)
    return django.shortcuts.render_to_response("logged_in_error.html", return_dict, context_instance=django.template.context.RequestContext(request))
コード例 #4
0
def edit_local_user_group_membership(request):

    return_dict = {}
    try:
        if "ack" in request.GET:
            if request.GET["ack"] == "created":
                return_dict['ack_message'] = "Local user successfully created"
        t_group_list, err = local_users.get_local_groups()
        if err:
            raise Exception(err)
        if 'username' not in request.REQUEST:
            raise Exception("Unknown user specified")

        username = request.REQUEST["username"]
        ud, err = local_users.get_local_user(username)
        if err:
            raise Exception(err)
        if not ud:
            raise Exception("Specified user information not found")
        group_list = []
        if t_group_list:
            for g in t_group_list:
                if g['grpname'] == ud['grpname']:
                    continue
                else:
                    group_list.append(g)

        if request.method == "GET":
            # Shd be an edit request

            # Set initial form values
            initial = {}
            initial['username'] = ud['username']
            initial['groups'] = ud['other_groups']

            form = local_user_forms.EditLocalUserGroupMembershipForm(
                initial=initial, group_list=group_list)

            return_dict["form"] = form
            return django.shortcuts.render_to_response(
                'edit_local_user_group_membership.html',
                return_dict,
                context_instance=django.template.context.RequestContext(
                    request))

        else:

            # Shd be an save request
            form = local_user_forms.EditLocalUserGroupMembershipForm(
                request.POST, group_list=group_list)
            return_dict["form"] = form
            if form.is_valid():
                cd = form.cleaned_data
                ret, err = local_users.set_local_user_group_membership(cd)
                if not ret:
                    if err:
                        raise Exception(err)
                    else:
                        raise Exception(
                            "Error saving user's group membership information")

                audit_str = "Modified local user group membership information %s" % cd[
                    "username"]
                audit.audit("modify_local_user_grp_membership", audit_str,
                            request.META)

                return django.http.HttpResponseRedirect(
                    '/view_local_user?username=%s&searchby=username&ack=groups_changed'
                    % cd["username"])

            else:
                #Invalid form
                return django.shortcuts.render_to_response(
                    'edit_local_user_group_membership.html',
                    return_dict,
                    context_instance=django.template.context.RequestContext(
                        request))
    except Exception, e:
        return_dict['base_template'] = 'users-groups_base.html'
        return_dict["page_title"] = 'Local users additional group membership'
        return_dict['tab'] = 'view_local_users_tab'
        return_dict[
            "error"] = 'Error modifying local users additional group membership'
        return_dict["error_details"] = str(e)
        return django.shortcuts.render_to_response(
            "logged_in_error.html",
            return_dict,
            context_instance=django.template.context.RequestContext(request))
コード例 #5
0
def edit_local_user_gid(request):

    return_dict = {}
    try:
        group_list, err = local_users.get_local_groups()
        if err:
            raise Exception(err)
        if 'username' not in request.REQUEST:
            raise Exception("Unknown user specified")

        username = request.REQUEST["username"]
        ud, err = local_users.get_local_user(username)
        if err:
            raise Exception(err)
        if not ud:
            raise Exception("Specified user information not found")

        if request.method == "GET":
            # Shd be an edit request

            # Set initial form values
            initial = {}
            initial['username'] = ud['username']
            initial['gid'] = ud['gid']

            form = local_user_forms.EditLocalUserGidForm(initial=initial,
                                                         group_list=group_list)

            return_dict["form"] = form
            return django.shortcuts.render_to_response(
                'edit_local_user_gid.html',
                return_dict,
                context_instance=django.template.context.RequestContext(
                    request))

        else:

            # Shd be an save request
            form = local_user_forms.EditLocalUserGidForm(request.POST,
                                                         group_list=group_list)
            return_dict["form"] = form
            if form.is_valid():
                cd = form.cleaned_data
                ret, err = local_users.set_local_user_gid(cd)
                if not ret:
                    if err:
                        raise Exception(err)
                    else:
                        raise Exception("Error saving user information")

                audit_str = "Modified local user's primary group %s" % cd[
                    "username"]
                audit.audit("modify_local_user_gid", audit_str, request.META)

                return django.http.HttpResponseRedirect(
                    '/view_local_user?username=%s&searchby=username&ack=gid_changed'
                    % cd["username"])

            else:
                #Invalid form
                return django.shortcuts.render_to_response(
                    'edit_local_user_gid.html',
                    return_dict,
                    context_instance=django.template.context.RequestContext(
                        request))
    except Exception, e:
        return_dict['base_template'] = 'users-groups_base.html'
        return_dict["page_title"] = "Modify local user's primary group"
        return_dict['tab'] = 'view_local_users_tab'
        return_dict["error"] = 'Error modifying local users primary group'
        return_dict["error_details"] = str(e)
        return django.shortcuts.render_to_response(
            "logged_in_error.html",
            return_dict,
            context_instance=django.template.context.RequestContext(request))