Пример #1
0
    def handle(self, *args, **options):

        try:
            group = Group.objects.get(name='NDA Signed')
        except Group.DoesNotExist:
            group = Group(name='NDA Signed')
            group.save()
        content_type = ContentType.objects.get_for_model(Project)
        group.permissions = [
            Permission.objects.get(
                codename='view_project',
                content_type=content_type,
            ),
        ]
        group.save()

        try:
            group = Group.objects.get(name='Teammates')
        except Group.DoesNotExist:
            group = Group(name='Teammates')
            group.save()
        content_type = ContentType.objects.get_for_model(Teammate)
        group.permissions = [
            Permission.objects.get(
                codename='view_private',
                content_type=content_type,
            ),
        ]
        group.save()
Пример #2
0
def create_groups(study_name, leader, manager_list=None, member_list=None):
    # 스터디 존재 제크
    try:
        study = Study.objects.filter(name=study_name)
    except Study.DoesNotExist:
        return

    # 그룹 3개 생성
    leader = Group(name=study_name + '_leader')
    managers = Group(name=study_name + '_managers')
    members = Group(name=study_name + '_members')

    # 권한 생성
    """
    content_type = {
        "id" : 99????,
        "app_label" : "study",
        "model" : "study_permission"
        }
    """
    add_p = Permission.objects.create(
        name="Can add " + study_name,
        #content_type=99,
        codename="add_"+study_name
    )
    get_p = Permission.objects.create(
        name="Can get " + study_name,
        # content_type=99,
        codename="get_" + study_name
    )

    change_p = Permission.objects.create(
        name="Can change" + study_name,
        # content_type=99,
        codename="change_" + study_name
    )
    delete_p = Permission.objects.create(
        name="Can delete" + study_name,
        # content_type=99,
        codename="delete_" + study_name
    )
    # manager, user 추가/삭제 권한

    # 해당 그룹에 맞는 권한 저장
    leader.permissions.add(add_p, get_p, change_p, delete_p)
    managers.permissions.add(add_p, get_p, change_p, delete_p)
    members.permissions(add_p, get_p)

    # 입력받은 사용자를 그룹에 추가 (reverse MtoM)
    leader.user_set.add(leader)
    for m in manager_list:
        managers.user_set.add(m)
    for m in member_list:
        members.user_set.add(m)

    leader.save()
    managers.save()
    members.save()
Пример #3
0
def create_groups(study_name, leader, manager_list=None, member_list=None):
    # 스터디 존재 제크
    try:
        study = Study.objects.filter(name=study_name)
    except Study.DoesNotExist:
        return

    # 그룹 3개 생성
    leader = Group(name=study_name + '_leader')
    managers = Group(name=study_name + '_managers')
    members = Group(name=study_name + '_members')

    # 권한 생성
    """
    content_type = {
        "id" : 99????,
        "app_label" : "study",
        "model" : "study_permission"
        }
    """
    add_p = Permission.objects.create(
        name="Can add " + study_name,
        #content_type=99,
        codename="add_" + study_name)
    get_p = Permission.objects.create(
        name="Can get " + study_name,
        # content_type=99,
        codename="get_" + study_name)

    change_p = Permission.objects.create(
        name="Can change" + study_name,
        # content_type=99,
        codename="change_" + study_name)
    delete_p = Permission.objects.create(
        name="Can delete" + study_name,
        # content_type=99,
        codename="delete_" + study_name)
    # manager, user 추가/삭제 권한

    # 해당 그룹에 맞는 권한 저장
    leader.permissions.add(add_p, get_p, change_p, delete_p)
    managers.permissions.add(add_p, get_p, change_p, delete_p)
    members.permissions(add_p, get_p)

    # 입력받은 사용자를 그룹에 추가 (reverse MtoM)
    leader.user_set.add(leader)
    for m in manager_list:
        managers.user_set.add(m)
    for m in member_list:
        members.user_set.add(m)

    leader.save()
    managers.save()
    members.save()
Пример #4
0
    def handle(self, *args, **options):
        groups = settings.DEFAULT_GROUPS
        for groupname in groups:

            try:
                g = Group.objects.get(name=groupname)
            except Group.DoesNotExist:
                g = Group()
                g.name = groupname
                g.save()

            if g.name == "Default":
                g.user_set = User.objects.all()

            g.permissions = []
            for permission in groups[groupname]:
                try:
                    p = Permission.objects.get(codename=permission)
                    g.permissions.add(p)
                except Permission.DoesNotExist:
                    if permission[0] == "*":
                        permissions = Permission.objects.filter(content_type__model=permission.split("_")[1])
                        for p in permissions:
                            g.permissions.add(p)
            g.save()
Пример #5
0
def get_system_config(request):
    if request.method == 'POST':
        form = SystemConfigForm(request.POST)
        if form.is_valid():
            config_set('system_url', form.cleaned_data['system_url'])
            config_set('system_welcometext', form.cleaned_data['system_welcometext'])
            if form.cleaned_data['system_enable_anonymous']:
                config_set('system_enable_anonymous', True)
                # check for Anonymous group and (re)create it as needed
                try:
                    anonymous = Group.objects.get(name='Anonymous')
                except Group.DoesNotExist:
                    default_perms = [u'can_see_agenda', u'can_see_projector', u'can_see_application']
                    anonymous = Group()
                    anonymous.name = 'Anonymous'
                    anonymous.save()
                    anonymous.permissions = Permission.objects.filter(codename__in=default_perms)
                    anonymous.save()
                messages.success(request, _('Anonymous access enabled. Please modify the "Anonymous" group to fit your required permissions.'))
            else:
                # use '' - False will evaluate to uniced(False) => True..
                config_set('system_enable_anonymous', '')
            messages.success(request, _('System settings successfully saved.'))
        else:
            messages.error(request, _('Please check the form for errors.'))
    else:
        form = SystemConfigForm(initial={
            'system_url': config_get('system_url'),
            'system_welcometext': config_get('system_welcometext'),
            'system_enable_anonymous': config_get('system_enable_anonymous'),
        })
    return {
        'form': form,
    }
Пример #6
0
    def handle(self, *args, **options):
        out = ''
        if hasattr(settings, 'ADMIN_AUTH_GROUP_NAME'):
            name = settings.ADMIN_AUTH_GROUP_NAME
        else:
            name = 'Admin'

        try:
            auth_group = Auth_Group.objects.get(name=name)
        except Auth_Group.DoesNotExist:
            auth_group = Auth_Group(name=name)
            auth_group.save()
            #self.stdout.write('Successfully created an auth group "Admin".')
            out = 'Successfully created an auth group "Admin".\n'

        # assign permission to group, but exclude the auth content
        content_to_exclude = ContentType.objects.filter(app_label='auth')
        permissions = Permission.objects.all().exclude(
            content_type__in=content_to_exclude)
        auth_group.permissions = permissions
        auth_group.save()

        #self.stdout.write('Successfully added all permissions to group "Admin".')
        out += 'Successfully added/updated all permissions to group "%s".' % name
        print(out)
Пример #7
0
def save_group(request):

	perm = Permission.objects.all()

	if request.method == 'POST':

		form = GroupForm(request.POST)
		
		if form.is_valid():
			
			group = Group()
			group.name = request.POST['name']	 
			group.save()
			
			group.permissions = request.POST.getlist('permission')
			group.save()
			
			return redirect('/permissions/group/')
	else:

		form = GroupForm()

	return render(request, 'permissions/group/save.html', {
		'form': form,
		'permissions':perm,
	})
Пример #8
0
    def handle(self, *args, **options):
        groups = settings.DEFAULT_GROUPS
        for groupname in groups:

            try:
                g = Group.objects.get(name=groupname)
            except Group.DoesNotExist:
                g = Group()
                g.name = groupname
                g.save()

            if g.name == "Default":
                g.user_set = User.objects.all()

            g.permissions = []
            for permission in groups[groupname]:
                try:
                    p = Permission.objects.get(codename=permission)
                    g.permissions.add(p)
                except Permission.DoesNotExist:
                    if permission[0] == "*":
                        permissions = Permission.objects.filter(
                            content_type__model=permission.split("_")[1])
                        for p in permissions:
                            g.permissions.add(p)
            g.save()
Пример #9
0
 def handle(self,*args,**options):
   permissions = Permission.objects.filter(content_type__app_label__in=['inmueble'])
   publicadores=Group(
     name='publicadores'
     )
   publicadores.save()
   publicadores.permissions=[p.id for p in permissions]
   publicadores.save()
   self.stdout.write('Grupo %s creado con exito\n' % (publicadores.name))
Пример #10
0
 def set_perms(self, groupname, perms):
     self.stdout.write("Setting permissions for group '%s'." % groupname)
     if self.verbosity >= 2:
         self.stdout.write("  Permissions: %s" % ', '.join(perms))
     try:
         group = Group.objects.get(name=groupname)
     except Group.DoesNotExist:
         self.stdout.write("  Group does not exist, creating it.")
         group = Group(name=groupname)
         group.save()
     group.permissions = get_permissions_from_ns_codenames(perms)
     group.save()
    def add_permissions(self):
        print '***************************************************************'
        print 'Adding Permissions'
        print '***************************************************************'

        # add bg group
        apps = ("static_ortoloco", "my_ortoloco", "photologue")
        perms = Permission.objects.filter(content_type__app_label__in=apps)
        g = Group(name="Betriebsgruppe")
        g.save()
        g = Group.objects.get(name="Betriebsgruppe")
        g.permissions = perms
        g.save()
    def add_permissions(self):
        print '***************************************************************'
        print 'Adding Permissions'
        print '***************************************************************'

        # add bg group
        apps = ("static_ortoloco", "my_ortoloco", "photologue")
        perms = Permission.objects.filter(content_type__app_label__in=apps)
        g = Group(name="Betriebsgruppe")
        g.save()
        g = Group.objects.get(name="Betriebsgruppe")
        g.permissions = perms
        g.save()
 def set_perms(self, groupname, codenames):
     self.stdout.write("Setting permissions for group '%s'." % groupname)
     if self.verbosity >= 2:
         self.stdout.write("  Permissions: %s" % ', '.join(codenames))
     try:
         group = Group.objects.get(name=groupname)
     except Group.DoesNotExist:
         group = Group(name=groupname)
         group.save()
     group.permissions = [
         Permission.objects.get(codename=codename)
         for codename in codenames
     ]
     group.save()
Пример #14
0
def create_group(**kwargs):
    global counter
    counter = counter + 1
    defaults = {
        "name": "group%d" % counter,
    }
    permissions = []
    if "permissions" in kwargs:
        Permissions = kwargs["permissions"]
        del kwargs["permissions"]
    defaults.update(kwargs)
    g = Group(**defaults)
    g.save()
    g.permissions = permissions
    g.save()
    return g
Пример #15
0
 def set_perms(self, groupname, perms):
     self.stdout.write("Setting permissions for group '%s'." % groupname)
     if self.verbosity >= 2:
         self.stdout.write("  Permissions: %s" % ', '.join(perms))
     try:
         group = Group.objects.get(name=groupname)
     except Group.DoesNotExist:
         self.stdout.write("  Group does not exist, creating it.")
         group = Group(name=groupname)
         group.save()
     try:
         group.permissions = get_permissions_from_ns_codenames(perms)
         group.save()
     except Exception as e:
         self.stderr.write(f"Error stroing group  {e}.")
         print(e)
Пример #16
0
    def handle(self, *args, **options):
        """
        Created for self signup use. Initially everyone in the database is an administrator.
        We create the 'admin' group if it doesn't exist
        We set the appropriate permissions on the user
        We put the user in the admin group
        """
        # command to run: python manage.py admin_converter
        from profiles.utils import user_add_remove_admin_auth_group
        
        if hasattr(settings, 'ADMIN_AUTH_GROUP_NAME'):
            name = settings.ADMIN_AUTH_GROUP_NAME
        else:
            name = 'Admin'
        
        try:
            auth_group = Auth_Group.objects.get(name=name)
        except Auth_Group.DoesNotExist:
            auth_group = Auth_Group(name=name)
            auth_group.save()
            print 'Successfully added admin auth group "%s".' % name

        # assign permission to group, but exclude the auth content
        content_to_exclude = ContentType.objects.filter(app_label='auth')    
        permissions = Permission.objects.all().exclude(content_type__in=content_to_exclude)
        auth_group.permissions = permissions
        auth_group.save()
        
        print "Adding users (admins) to admin auth group...\n"

        count = 0

        users = User.objects.all()

        for u in users:
            u.is_staff = True
            u.is_superuser = False
            u.groups = [auth_group]
            u.save()

            count += 1
            print 'User "%s(%s)" -- added' % (u.get_full_name(), u.username)
        
        if count == 1:
            print "1 user added"
        else:
            print "%d users added" % count
Пример #17
0
    def handle(self, *args, **options):
        """
        Created for self signup use. Initially everyone in the database is an administrator.
        We create the 'admin' group if it doesn't exist
        We set the appropriate permissions on the user
        We put the user in the admin group
        """
        # command to run: python manage.py admin_converter

        if hasattr(settings, 'ADMIN_AUTH_GROUP_NAME'):
            name = settings.ADMIN_AUTH_GROUP_NAME
        else:
            name = 'Admin'

        try:
            auth_group = Auth_Group.objects.get(name=name)
        except Auth_Group.DoesNotExist:
            auth_group = Auth_Group(name=name)
            auth_group.save()
            print 'Successfully added admin auth group "%s".' % name

        # assign permission to group, but exclude the auth content
        content_to_exclude = ContentType.objects.filter(app_label='auth')
        permissions = Permission.objects.all().exclude(
            content_type__in=content_to_exclude)
        auth_group.permissions = permissions
        auth_group.save()

        print "Adding users (admins) to admin auth group...\n"

        count = 0

        users = User.objects.all()

        for u in users:
            u.is_staff = True
            u.is_superuser = False
            u.groups = [auth_group]
            u.save()

            count += 1
            print 'User "%s(%s)" -- added' % (u.get_full_name(), u.username)

        if count == 1:
            print "1 user added"
        else:
            print "%d users added" % count
Пример #18
0
def update_admin_group_perms():
    if hasattr(settings, 'ADMIN_AUTH_GROUP_NAME'):
        name = settings.ADMIN_AUTH_GROUP_NAME
    else:
        name = 'Admin'

    try:
        auth_group = Auth_Group.objects.get(name=name)
    except Auth_Group.DoesNotExist:
        auth_group = Auth_Group(name=name)
        auth_group.save()

    # assign permission to group, but exclude the auth content
    content_to_exclude = ContentType.objects.filter(app_label='auth')
    permissions = Permission.objects.all().exclude(content_type__in=content_to_exclude)
    auth_group.permissions = permissions
    auth_group.save()
Пример #19
0
        def _dec(request, *args, **kw_args):
            if not name or not models_list or len(models_list) < 1:
                raise AttributeError("Decorator requires both name and models list")
            try:
                group = Group.objects.get(name=name)
            except Group.DoesNotExist:
                group = Group()
                group.name = name
                # Save and re-load in-order to get the primary key.
                # Otherwise you cant have many-to-many relationship.
                group.save()
                codename_list = [perm + "_" + model for model in models_list for perm in permission_list]
                permissions = Permission.objects.filter(codename__in=codename_list)
                group.permissions = permissions
                group.save()

            return view_func(request, *args, **kw_args)
Пример #20
0
def update_admin_group_perms():
    if hasattr(settings, 'ADMIN_AUTH_GROUP_NAME'):
        name = settings.ADMIN_AUTH_GROUP_NAME
    else:
        name = 'Admin'

    try:
        auth_group = Auth_Group.objects.get(name=name)
    except Auth_Group.DoesNotExist:
        auth_group = Auth_Group(name=name)
        auth_group.save()

    # assign permission to group, but exclude the auth content
    content_to_exclude = ContentType.objects.filter(app_label='auth')
    permissions = Permission.objects.all().exclude(content_type__in=content_to_exclude)
    auth_group.permissions = permissions
    auth_group.save()
Пример #21
0
    def _prepare(cls, create, **kwargs):
        password = kwargs.pop('password', None)
        user = super(StaffFactory, cls)._prepare(create, **kwargs)
        if password:
            user.set_password(password)
            if create:
                user.save()
        group_staff = Group.objects.filter(name="staff").first()
        if group_staff is None:
            group_staff = Group(name="staff")
            group_staff.save()

        perms = Permission.objects.filter(codename__startswith='change_').all()
        group_staff.permissions = perms
        user.groups.add(group_staff)

        user.save()
        return user
Пример #22
0
    def _prepare(cls, create, **kwargs):
        password = kwargs.pop('password', None)
        user = super(StaffFactory, cls)._prepare(create, **kwargs)
        if password:
            user.set_password(password)
            if create:
                user.save()
        group_staff = Group.objects.filter(name="staff").first()
        if group_staff is None:
            group_staff = Group(name="staff")
            group_staff.save()

        perms = Permission.objects.filter(codename__startswith='change_').all()
        group_staff.permissions = perms
        user.groups.add(group_staff)

        user.save()
        return user
Пример #23
0
def get_developer_group():
    try:
        group = Group.objects.get(name='developer')
    except ObjectDoesNotExist:
        group = Group(name='developer')
        group.save()
        group.permissions = [
            Permission.objects.get(codename='view_projects'),
            Permission.objects.get(codename='view_tasks'),
            Permission.objects.get(codename='filter_tasks'),
            Permission.objects.get(codename='create_task'),
            Permission.objects.get(codename='view_comments'),
            Permission.objects.get(codename='create_comment'),
            Permission.objects.get(codename='update_comment'),
            Permission.objects.get(codename='del_comment'),
            Permission.objects.get(codename='view_task_details'),
            Permission.objects.get(codename='change_task_status'),
        ]
    return group
Пример #24
0
 def handle(self, *args, **options):
     auth_perms = ['add_user', 'change_user', 'delete_user']
     provisioning_perms = [
         'add_provider', 'change_provider', 'delete_provider',
         'add_node', 'change_node', 'delete_node',
     ]
     
     try:
         admin = Group.objects.get(name='Admin')
     except Group.DoesNotExist:
         admin = Group(name='Admin')
         admin.save()
     try:
         op = Group.objects.get(name='Operator')
     except Group.DoesNotExist:
         op = Group(name='Operator')
         op.save()
     
     admin.permissions = [
         Permission.objects.get(codename=codename) for codename in auth_perms]
     
     for codename in provisioning_perms:
         admin.permissions.add(Permission.objects.get(codename=codename))
         op.permissions.add(Permission.objects.get(codename=codename))
     
     # Add an Observer role with no rights
     try:
         ob = Group.objects.get(name='Observer')
     except Group.DoesNotExist:
         ob = Group(name='Observer')
         ob.save()
     
     # Remove superuser status (if any exist) and add the user to the admin group
     superusers = User.objects.filter(is_superuser=True)
     for user in superusers:
         user.is_superuser = False
         user.save()
         user.groups = [admin]
     
     verbosity = int(options.get('verbosity', 1))
     if verbosity >= 1:
         print('Successfully loaded permission groups')
Пример #25
0
    def crear_componentes_proyecto1(self):
        #crea usuarios 
        nelsond = User.objects.create_user('nelsond', '*****@*****.**', '12345')
        ariel = User.objects.create_user('arielm', '*****@*****.**', '32145')

        #crea proyectos 
        proyecto1 = None
        #crea fases
        fase1 = None 

        #crea roles 
        desarrollador = Group(name="desarrollador")
        desarrollador.permissions= [Permission.objects.get('proyecto_crear'),\
                                    Permission.objects.get('proyecto_modif'),\
                                     ]
        
        #asigna un proyecto a un usuario
        rolproyecto = RolProyecto(proyecto = proyecto1, usuario= ariel)
        #asignar una fase a un proyecto_usuario
        RolFases(rolproyecto =rolproyecto, fase = fase1 )
Пример #26
0
    def _prepare(cls, create, **kwargs):
        password = kwargs.pop('password', None)
        user = super(StaffFactory, cls)._prepare(create, **kwargs)
        if password:
            user.set_password(password)
            if create:
                user.save()
        group_staff = Group.objects.filter(name='staff').first()
        if group_staff is None:
            group_staff = Group(name='staff')
            group_staff.save()
            hat, _ = Hat.objects.get_or_create(name__iexact='Staff', defaults={'name': 'Staff'})
            hat.group = group_staff
            hat.save()

        perms = Permission.objects.filter(codename__startswith='change_').all()
        group_staff.permissions = perms
        user.groups.add(group_staff)

        user.save()
        return user
Пример #27
0
    def crear_componentes_proyecto1(self):
        #crea usuarios
        nelsond = User.objects.create_user('nelsond', '*****@*****.**',
                                           '12345')
        ariel = User.objects.create_user('arielm', '*****@*****.**', '32145')

        #crea proyectos
        proyecto1 = None
        #crea fases
        fase1 = None

        #crea roles
        desarrollador = Group(name="desarrollador")
        desarrollador.permissions= [Permission.objects.get('proyecto_crear'),\
                                    Permission.objects.get('proyecto_modif'),\
                                     ]

        #asigna un proyecto a un usuario
        rolproyecto = RolProyecto(proyecto=proyecto1, usuario=ariel)
        #asignar una fase a un proyecto_usuario
        RolFases(rolproyecto=rolproyecto, fase=fase1)
Пример #28
0
    def _prepare(cls, create, **kwargs):
        password = kwargs.pop('password', None)
        user = super(StaffFactory, cls)._prepare(create, **kwargs)
        if password:
            user.set_password(password)
            if create:
                user.save()
        group_staff = Group.objects.filter(name='staff').first()
        if group_staff is None:
            group_staff = Group(name='staff')
            group_staff.save()
            hat, _ = Hat.objects.get_or_create(name__iexact='Staff',
                                               defaults={'name': 'Staff'})
            hat.group = group_staff
            hat.save()

        perms = Permission.objects.filter(codename__startswith='change_').all()
        group_staff.permissions = perms
        user.groups.add(group_staff)

        user.save()
        return user
Пример #29
0
    def form_valid(self, form):
        # event
        config['event_name'] = form.cleaned_data['event_name']
        config['event_description'] = form.cleaned_data['event_description']
        config['event_date'] = form.cleaned_data['event_date']
        config['event_location'] = form.cleaned_data['event_location']
        config['event_organizer'] = form.cleaned_data['event_organizer']

        # welcome widget
        config['welcome_title'] = form.cleaned_data['welcome_title']
        config['welcome_text'] = form.cleaned_data['welcome_text']

        # system
        if form.cleaned_data['system_enable_anonymous']:
            config['system_enable_anonymous'] = True
            # check for Anonymous group and (re)create it as needed
            try:
                anonymous = Group.objects.get(name='Anonymous')
            except Group.DoesNotExist:
                default_perms = [
                    'can_see_agenda', 'can_see_projector', 'can_see_motion',
                    'can_see_assignment', 'can_see_dashboard'
                ]
                anonymous = Group()
                anonymous.name = 'Anonymous'
                anonymous.save()
                anonymous.permissions = Permission.objects.filter(
                    codename__in=default_perms)
                anonymous.save()
                messages.success(self.request,
                    _('Anonymous access enabled. Please modify the "Anonymous" ' \
                    'group to fit your required permissions.'))
        else:
            config['system_enable_anonymous'] = False

        messages.success(self.request,
                         _('General settings successfully saved.'))
        return super(GeneralConfig, self).form_valid(form)
Пример #30
0
    def form_valid(self, form):
        # event
        config['event_name'] = form.cleaned_data['event_name']
        config['event_description'] = form.cleaned_data['event_description']
        config['event_date'] = form.cleaned_data['event_date']
        config['event_location'] = form.cleaned_data['event_location']
        config['event_organizer'] = form.cleaned_data['event_organizer']

        # welcome widget
        config['welcome_title'] = form.cleaned_data['welcome_title']
        config['welcome_text'] = form.cleaned_data['welcome_text']

        # system
        if form.cleaned_data['system_enable_anonymous']:
            config['system_enable_anonymous'] = True
            # check for Anonymous group and (re)create it as needed
            try:
                anonymous = Group.objects.get(name='Anonymous')
            except Group.DoesNotExist:
                default_perms = ['can_see_agenda', 'can_see_projector',
                    'can_see_motion', 'can_see_assignment',
                    'can_see_dashboard']
                anonymous = Group()
                anonymous.name = 'Anonymous'
                anonymous.save()
                anonymous.permissions = Permission.objects.filter(
                    codename__in=default_perms)
                anonymous.save()
                messages.success(self.request,
                    _('Anonymous access enabled. Please modify the "Anonymous" ' \
                    'group to fit your required permissions.'))
        else:
            config['system_enable_anonymous'] = False

        messages.success(self.request,
            _('General settings successfully saved.'))
        return super(GeneralConfig, self).form_valid(form)
Пример #31
0
    def handle(self, *args, **options):
        assert User.objects.all().count() == 1
        self.connect(*args)
        self.userids = {}

        print 'Starting migration on ', datetime.datetime.now()
        self.create_users()
        self.create_taetigkeitsbereiche()
        self.create_depots()
        self.create_taetigkeitsbereich_locos()
        self.create_jobtypes()
        self.create_jobs()
        self.create_extraabotypes()
        self.create_abos()
        self.create_abo_extra_abos()
        self.create_anteilscheine()
        print 'Finished migration on ', datetime.datetime.now()

        # set emails of some people to @ortoloco.ch address
        # TODO: remove this
        for k, v in depot_email_hack.items():
            loco = Loco.objects.get(email=v)
            loco.email = k
            loco.save()

        # add bg group
        apps = ("static_ortoloco", "my_ortoloco", "photologue")
        perms = Permission.objects.filter(content_type__app_label__in=apps)
        g = Group(name="Betriebsgruppe")
        g.save()
        g = Group.objects.get(name="Betriebsgruppe")
        g.permissions = perms
        g.save()

        # finally, clean up
        Audit.objects.all().delete()
 def handle(self, *args, **options):
     out = ''
     if hasattr(settings, 'ADMIN_AUTH_GROUP_NAME'):
         name = settings.ADMIN_AUTH_GROUP_NAME
     else:
         name = 'Admin'
         
     try:
         auth_group = Auth_Group.objects.get(name=name)
     except Auth_Group.DoesNotExist:
         auth_group = Auth_Group(name=name)
         auth_group.save()
         #self.stdout.write('Successfully created an auth group "Admin".')
         out = 'Successfully created an auth group "Admin".\n'
     
     # assign permission to group, but exclude the auth content
     content_to_exclude = ContentType.objects.filter(app_label='auth')    
     permissions = Permission.objects.all().exclude(content_type__in=content_to_exclude)
     auth_group.permissions = permissions
     auth_group.save()
     
     #self.stdout.write('Successfully added all permissions to group "Admin".')
     out += 'Successfully added/updated all permissions to group "%s".' % name
     print out
Пример #33
0
    def handle(self, *args, **options):
        assert User.objects.all().count() == 1
        self.connect(*args)
        self.userids = {}
        
        print 'Starting migration on ', datetime.datetime.now()
        self.create_users()
        self.create_taetigkeitsbereiche()
        self.create_depots()
        self.create_taetigkeitsbereich_locos()
        self.create_jobtypes()
        self.create_jobs()
        self.create_extraabotypes()
        self.create_abos()
        self.create_abo_extra_abos()
        self.create_anteilscheine()
        print 'Finished migration on ', datetime.datetime.now()

        # set emails of some people to @ortoloco.ch address
        # TODO: remove this
        for k,v in depot_email_hack.items():
            loco = Loco.objects.get(email=v)
            loco.email = k
            loco.save()
        
        # add bg group
        apps = ("static_ortoloco", "my_ortoloco", "photologue")
        perms = Permission.objects.filter(content_type__app_label__in=apps)
        g = Group(name="Betriebsgruppe")
        g.save()
        g = Group.objects.get(name="Betriebsgruppe")
        g.permissions = perms
        g.save()
            
        # finally, clean up
        Audit.objects.all().delete()
Пример #34
0
def create_permissions():

    # Institutions

    permission_add_inst = Permission.objects.get(codename='add_institution')
    permission_change_inst = Permission.objects.get(codename='change_institution')
    permission_delete_inst = Permission.objects.get(codename='delete_institution')

    # Project Types

    permission_add_ptype = Permission.objects.get(codename='add_projecttype')
    permission_change_ptype = Permission.objects.get(codename='change_projecttype')
    permission_delete_ptype = Permission.objects.get(codename='delete_projecttype')

    # Project

    permission_add_project = Permission.objects.get(codename='add_project')
    permission_change_project = Permission.objects.get(codename='change_project')
    permission_delete_project = Permission.objects.get(codename='delete_project')

    # Permission

    content_type = ContentType.objects.get_for_model(sapu.models.Permission)
    permission_add_permission = Permission.objects.get(codename='add_permission', content_type_id=content_type.id)
    permission_change_permission = Permission.objects.get(codename='change_permission', content_type_id=content_type.id)
    permission_delete_permission = Permission.objects.get(codename='delete_permission', content_type_id=content_type.id)

    # Employee

    permission_add_employee = Permission.objects.get(codename='add_employee')
    permission_change_employee = Permission.objects.get(codename='change_employee')
    permission_delete_employee = Permission.objects.get(codename='delete_employee')

    # Stage

    permission_add_stage = Permission.objects.get(codename='add_stage')
    permission_change_stage = Permission.objects.get(codename='change_stage')
    permission_delete_stage = Permission.objects.get(codename='delete_stage')

    # Comment

    permission_add_comment = Permission.objects.get(codename='add_comment')
    permission_change_comment = Permission.objects.get(codename='change_comment')
    permission_delete_comment = Permission.objects.get(codename='delete_comment')

    # Task

    permission_add_task = Permission.objects.get(codename='add_task')
    permission_change_task = Permission.objects.get(codename='change_task')
    permission_delete_task = Permission.objects.get(codename='delete_task')

    employee = Group(name='Empleado')
    employee.save()

    supervisor = Group(name='Supervisor')
    supervisor.save()

    project_manager = Group(name='Jefe de proyectos')
    project_manager.save()

    administrator = Group(name='Administrador')
    administrator.save()

    employee_permissions = [permission_add_comment,
                            permission_change_comment,
                            permission_delete_comment]

    supervisor_permissions = [permission_add_task,
                              permission_change_task,
                              permission_delete_task]

    supervisor_permissions.extend(employee_permissions)

    project_manager_permissions = [permission_add_ptype,
                                   permission_change_ptype,
                                   permission_delete_ptype,
                                   permission_add_inst,
                                   permission_change_inst,
                                   permission_delete_inst,
                                   permission_add_permission,
                                   permission_change_permission,
                                   permission_delete_permission,
                                   permission_add_stage,
                                   permission_change_stage,
                                   permission_delete_stage,
                                   permission_add_project,
                                   permission_change_project]

    project_manager_permissions.extend(supervisor_permissions)

    administrator_permissions = [permission_delete_project,
                                 permission_add_employee,
                                 permission_change_employee,
                                 permission_delete_employee]

    administrator_permissions.extend(project_manager_permissions)

    employee.permissions = employee_permissions
    supervisor.permissions = supervisor_permissions
    project_manager.permissions = project_manager_permissions
    administrator.permissions = administrator_permissions
            if(source.id % 100 == 0):
                print source.id
            source.save()
            #super_profile.save()


            
new_group_invensis = Group(name="INVENSIS")
new_group_invensis.save()
new_group_invensis = Group.objects.get(name="INVENSIS")

new_group_leaders = Group(name="TeamLeaders")
new_group_leaders.save()
new_group_leaders = Group.objects.get(name="TeamLeaders")

new_group_leaders.permissions = all_permits

new_teamlead_invensis = User(username="******",password="******",is_active=True,is_staff=True)
new_teamlead_invensis.save()
new_teamlead_invensis = User.objects.get(username="******")

new_teamlead_invensis.groups.add(new_group_invensis)
new_teamlead_invensis.groups.add(new_group_leaders)

new_user_invensis = User(username="******",password="******",is_active=True,is_staff=True)
new_user_invensis.save()
new_teamlead_invensis = User.objects.get(username="******")

new_user_invensis.groups.add(new_group_invensis)

new_user_invensis2 = User(username="******",password="******",is_active=True,is_staff=True)
Пример #36
0
def cria_grupos_usuarios(request):
    for nome_grupo in ('cliente', 'gerente', 'pizzaiolo', 'atendente', 'entregador', 'garçom'):
        try:
            Group.objects.get(name=nome_grupo).delete()
        except Exception:
            pass

    cliente = Group(name='cliente')
    cliente.save()
    gerente = Group(name='gerente')
    gerente.save()
    pizzaiolo = Group(name='pizzaiolo')
    pizzaiolo.save()
    atendente = Group(name='atendente')
    atendente.save()
    entregador = Group(name='entregador')
    entregador.save()
    garcom = Group(name='garçom')
    garcom.save()
    cliente.permissions = [Permission.objects.get(name='Pode criar reclamacao'),
                           Permission.objects.get(name='Pode criar pedido'),
                           Permission.objects.get(name='Pode criar pizza personalizada'),
                           Permission.objects.get(name='Pode editar pizza personalizada'),
                           Permission.objects.get(name='Pode deletar pizza personalizada')]
    gerente.permissions = [Permission.objects.get(name='Pode criar cliente'),
                           Permission.objects.get(name='Pode ver todos os clientes'),
                           Permission.objects.get(name='Pode editar qualquer cliente'),
                           Permission.objects.get(name='Pode deletar cliente'),
                           Permission.objects.get(name='Pode ver reclamacoes'),
                           Permission.objects.get(name='Pode resolver reclamacao'),
                           Permission.objects.get(name='Pode deletar reclamacao'),
                           Permission.objects.get(name='Pode criar funcionario'),
                           Permission.objects.get(name='Pode ver funcionarios'),
                           Permission.objects.get(name='Pode editar qualquer funcionario'),
                           Permission.objects.get(name='Pode deletar funcionario'),
                           Permission.objects.get(name='Pode ver todos os pedidos'),
                           Permission.objects.get(name='Pode editar pedido'),
                           Permission.objects.get(name='Pode criar pizza'),
                           Permission.objects.get(name='Pode ver pizzas'),
                           Permission.objects.get(name='Pode editar pizza'),
                           Permission.objects.get(name='Pode deletar pizza'),
                           Permission.objects.get(name='Pode criar bebida'),
                           Permission.objects.get(name='Pode ver bebidas'),
                           Permission.objects.get(name='Pode editar bebida'),
                           Permission.objects.get(name='Pode deletar bebida'),
                           Permission.objects.get(name='Pode criar ingrediente'),
                           Permission.objects.get(name='Pode ver ingredientes'),
                           Permission.objects.get(name='Pode editar ingrediente'),
                           Permission.objects.get(name='Pode deletar ingrediente'),
                           Permission.objects.get(name='Pode editar pedido'),
                           Permission.objects.get(name='Pode deletar pedido'),]
    atendente.permissions = [Permission.objects.get(name='Pode criar cliente'),
                             Permission.objects.get(name='Pode ver todos os clientes'),
                             Permission.objects.get(name='Pode editar qualquer cliente'),
                             Permission.objects.get(name='Pode criar pedido'),
                             Permission.objects.get(name='Pode editar pedido'),
                             Permission.objects.get(name='Pode deletar pedido'),
                             Permission.objects.get(name='Pode ver todos os pedidos'),
                             Permission.objects.get(name='Pode ver pizzas personalizadas telefone'),
                             Permission.objects.get(name='Pode ver bebidas'),
                             Permission.objects.get(name='Pode criar pizza personalizada'),
                             Permission.objects.get(name='Pode deletar pizza personalizada telefone'),
                             Permission.objects.get(name='Pode deletar pizza personalizada'),
                             Permission.objects.get(name='Pode editar pizza personalizada')]
    pizzaiolo.permissions = [Permission.objects.get(name='Pode ver todos os pedidos'),
                             Permission.objects.get(name='Pode editar pedido')]
    entregador.permissions = [Permission.objects.get(name='Pode ver pedidos a serem entregues'),
                              Permission.objects.get(name='Pode editar pedido')]
    garcom.permissions = [Permission.objects.get(name='Pode criar pedido')]

    return HttpResponse('Grupos criados com sucesso')
Пример #37
0
def init_self_user():
    u"添加自助查询用户,确保在权限代码都创建完了之后,才可以初始化角色"
    usrs = User.objects.filter(username="******")

    if not usrs:
        usr = User.objects.create_user("employee", "*****@*****.**",
                                       "jq92~+>)@#$%#")
        usr.is_staff = True
        usr.save()
    else:
        usr = usrs[0]
    # 添加自助查询角色
    g_employees = Group.objects.filter(name="role_for_employee")
    if not g_employees:
        g_employee = Group()
        g_employee.name = "role_for_employee"
        g_employee.save()
        usr.groups.add(g_employee)
    else:
        g_employee = g_employees[0]

        # 添加自助查询角色所拥有的权限
    #
    # 同步数据库后,可以在数据库中查看生成的权限值
    # select * from auth_permission ap
    #    inner join django_content_type dct on dct.id = ap.content_type_id
    #    where dct.model ='***'
    # 可以通过下面的方法给员工自助配置code

    self_perms = [
        {
            "app_label": "selfservice",
            "model": "SelfSpecDay",
            "codename": ["can_SelfSpecDay"]
        },
        {
            "app_label": "selfservice",
            "model": "SelfOverTime",
            "codename": ["can_SelfOverTime"]
        },
        {
            "app_label": "selfservice",
            "model": "SelfTransaction",
            "codename": ["can_SelfTransaction"]
        },
        {
            "app_label": "selfservice",
            "model": "SelfCheckexact",
            "codename": ["can_SelfCheckexact"]
        },
        {
            "app_label": "selfservice",
            "model": "SelfReport",
            "codename": ["can_SelfReport"]
        },
    ]
    att_perms = [
        {
            "app_label":
            "att",
            "model":
            "EmpSpecDay",
            "codename": [
                "opaddmanyuserid_empspecday", "browse_empspecday",
                "change_empspecday", "delete_empspecday"
            ]
        },
        {
            "app_label":
            "att",
            "model":
            "OverTime",
            "codename": [
                "opaddmanyovertime_overtime", "browse_overtime",
                "change_overtime", "delete_overtime"
            ]
        },
        {
            "app_label":
            "att",
            "model":
            "CheckExact",
            "codename": [
                "opaddmanycheckexact_checkexact", "browse_checkexact",
                "change_checkexact", "delete_checkexact"
            ]
        },
        {
            "app_label": "att",
            "model": "checkinout",
            "codename": ["can_CheckInOut"]
        },
        {
            "app_label": "att",
            "model": "attreport",
            "codename": [
                "can_AttReport",
            ]
        },
    ]
    perms_detail = self_perms + att_perms

    permissions = []
    count_perms = 0
    for e in perms_detail:
        try:
            count_perms += len(e["codename"])
            mct = ContentType.objects.get(app_label=e["app_label"],
                                          model=e["model"].lower())
            p = Permission.objects.filter(codename__in=e["codename"],
                                          content_type=mct)
            #            if len(p) != len(e["codename"]):
            #                print len(p),len(e["codename"]),'\n'
            #                print e["codename"],'\n'
            permissions.extend(p)
        except:
            #            print 'app_label:',e["app_label"],'model',e["model"],'\n'
            #            import traceback;traceback.print_exc();
            break
        #    print 'count_perms:',count_perms,'\n'
        #    print 'len(permissions):',len(permissions),'\n',[p.codename for p in permissions]
    if count_perms == len(permissions):
        if g_employee.permissions.count() <= count_perms:  # 并且还未初始化
            g_employee.permissions = permissions
        print(
            ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> selfservice permissions sync success! <from python-support\base\models.py>"
        )
    else:
        print(
            "!!! selfservice permissions sync faild==>need permissions:%d,db permissions:%d,please check it ! <from python-support\base\models.py>"
            % (count_perms, len(permissions)))
Пример #38
0
    def handle(self, *args, **options):
        """ admin was determined by: is_superuser=True and is_staff=False 
            now we changed criteria to be: is_superuser=False and is_staff=True
            This command is to convert all admins on the site to use the new criteria
            and add them to the auth group
        """
        # command to run: python manage.py admin_converter
        from profiles.utils import user_add_remove_admin_auth_group
        
        if hasattr(settings, 'ADMIN_AUTH_GROUP_NAME'):
            name = settings.ADMIN_AUTH_GROUP_NAME
        else:
            name = 'Admin'
        
        try:
            auth_group = Auth_Group.objects.get(name=name)
        except Auth_Group.DoesNotExist:
            auth_group = Auth_Group(name=name)
            auth_group.save()
        
            # assign permission to group, but exclude the auth content
            content_to_exclude = ContentType.objects.filter(app_label='auth')    
            permissions = Permission.objects.all().exclude(content_type__in=content_to_exclude)
            auth_group.permissions = permissions
            auth_group.save()
            print 'Successfully added admin auth group "%s".' % name
        
        print "Adding users (admins) to admin auth group...\n"

        count = 0
        
        # all admins (under the new criteria or old criteria). make sure they are on admin group
        users = User.objects.filter(Q(is_superuser=False, is_staff=True) 
                                    | Q(is_superuser=True, is_staff=False))
        if users:
            for user in users:
                if user.is_superuser and not user.is_staff:
                    user.is_superuser = False
                    user.is_staff = True
                    user.save()
                
                group_updated = False
                user_auth_groups = user.groups.all()
                if user_auth_groups:
                    if auth_group not in user_auth_groups:
                        user_auth_groups.append(auth_group)
                        user.groups = user_auth_groups
                        group_updated = True      
                else:
                    user.groups = [auth_group]
                    group_updated = True
                    
                if group_updated:
                    user.save()
                    count += 1
                    print 'User "%s(%s)" -- added' % (user.get_full_name(), user.username)
            print
        
        if count == 1:
            print '1 user added.'
        else:
            print '%d users added.' % count
Пример #39
0
    def handle(self, *args, **options):
        force = options.get('force')
        quiet = options.get('quiet')

        try:

            # If there are existing groups, there could be conflicts with the groups this script is about to create.
            # It is possible to merge them, but it would be too complicated and time-consuming to implement.
            # So just remove all of them.
            # Since we trust this script to create the groups properly,
            # we can always say 'y' to the prompt and let it handle the update of groups and permissions in the database
            if Group.objects.count() > 0:
                if not force:
                    if quiet:
                        return

                    while True:
                        self.stdout.write(
                            self.style.NOTICE(
                                'You have existing groups in the database. '
                                'Continuing will remove all of them, '
                                'and create and set up only those required by the application.\n'
                                'Are you sure you want to continue? (y or n)'))

                        response = input()
                        if response == 'n':
                            print('No changes are made.')
                            return
                        elif response == 'y':
                            break

                Group.objects.all().delete()

            # Get all the content types
            # As long as the model classes (python code) are in the project, this won't throw any error.
            patient_content_type = ContentType.objects.get_for_model(Patient)
            profile_information_content_type = ContentType.objects.get_for_model(
                ProfileInformation)
            appointment_content_type = ContentType.objects.get_for_model(
                Appointment)
            administrator_content_type = ContentType.objects.get_for_model(
                Administrator)
            doctor_content_type = ContentType.objects.get_for_model(Doctor)
            drug_content_type = ContentType.objects.get_for_model(Drug)
            prescription_content_type = ContentType.objects.get_for_model(
                Prescription)
            diagnosis_content_type = ContentType.objects.get_for_model(
                Diagnosis)
            treatment_session_content_type = ContentType.objects.get_for_model(
                TreatmentSession)
            test_content_type = ContentType.objects.get_for_model(Test)
            nurse_content_type = ContentType.objects.get_for_model(Nurse)
            hospital_content_type = ContentType.objects.get_for_model(Hospital)

            # Try to get all the permissions
            # This requires that the database has been migrated.
            # If not, then the permissions won't be found, and DoesNotExist error will be thrown.
            change_patient_permission = Permission.objects.get(
                codename='change_patient', content_type=patient_content_type)
            change_profile_information_permission = Permission.objects.get(
                codename='change_profileinformation',
                content_type=profile_information_content_type)
            add_profile_information_permission = Permission.objects.get(
                codename='add_profileinformation',
                content_type=profile_information_content_type)
            add_appointment_permission = Permission.objects.get(
                codename='add_appointment',
                content_type=appointment_content_type)
            cancel_appointment_permission = Permission.objects.get(
                codename='cancel_appointment',
                content_type=appointment_content_type)
            change_appointment_permission = Permission.objects.get(
                codename='change_appointment',
                content_type=appointment_content_type)
            view_appointment_permission = Permission.objects.get(
                codename='view_appointment',
                content_type=appointment_content_type)
            add_administrator_permission = Permission.objects.get(
                codename='add_administrator',
                content_type=administrator_content_type)
            add_doctor_permission = Permission.objects.get(
                codename='add_doctor', content_type=doctor_content_type)
            add_drug_permission = Permission.objects.get(
                codename='add_drug', content_type=drug_content_type)
            view_prescription_permission = Permission.objects.get(
                codename='view_prescription',
                content_type=prescription_content_type)
            view_patients_permission = Permission.objects.get(
                codename='view_patients', content_type=patient_content_type)
            discharge_patient_permission = Permission.objects.get(
                codename='discharge_patient',
                content_type=treatment_session_content_type)
            add_diagnosis_permission = Permission.objects.get(
                codename='add_diagnosis', content_type=diagnosis_content_type)
            change_diagnosis_permission = Permission.objects.get(
                codename='change_diagnosis',
                content_type=diagnosis_content_type)
            remove_drug_permission = Permission.objects.get(
                codename='remove_drug', content_type=drug_content_type)
            view_diagnosis_permission = Permission.objects.get(
                codename='view_diagnosis', content_type=diagnosis_content_type)
            view_treatment_session_permission = Permission.objects.get(
                codename='view_treatmentsession',
                content_type=treatment_session_content_type)
            request_test_permission = Permission.objects.get(
                codename='request_test', content_type=test_content_type)
            upload_test_results_permission = Permission.objects.get(
                codename='upload_test_results', content_type=test_content_type)
            view_drug_permission = Permission.objects.get(
                codename='view_drug', content_type=drug_content_type)
            add_treatment_session_permission = Permission.objects.get(
                codename='add_treatmentsession',
                content_type=treatment_session_content_type)
            release_test_results_permission = Permission.objects.get(
                codename='release_test_results',
                content_type=test_content_type)
            add_prescription_permission = Permission.objects.get(
                codename='add_prescription',
                content_type=prescription_content_type)
            change_prescription_permission = Permission.objects.get(
                codename='change_prescription',
                content_type=prescription_content_type)
            delete_prescription_permission = Permission.objects.get(
                codename='delete_prescription',
                content_type=prescription_content_type)
            change_drug_permission = Permission.objects.get(
                codename='change_drug', content_type=drug_content_type)
            add_nurse_permission = Permission.objects.get(
                codename='add_nurse', content_type=nurse_content_type)

            download_medical_information = Permission.objects.get(
                codename='export_information',
                content_type=prescription_content_type)
            transfer_patient_any_permission = Permission.objects.get(
                codename='transfer_patient_any_hospital',
                content_type=treatment_session_content_type)
            transfer_patient_receiving_permission = Permission.objects.get(
                codename='transfer_patient_receiving_hospital',
                content_type=treatment_session_content_type)
            view_test_results_permission = Permission.objects.get(
                codename='view_test_results', content_type=test_content_type)

            view_own_diagnoses_permission = Permission.objects.get(
                codename='view_own_diagnoses',
                content_type=diagnosis_content_type)
            view_system_information_permission = Permission.objects.get(
                codename='can_view_system_information',
                content_type=hospital_content_type)

        except (Permission.DoesNotExist, OperationalError):
            if quiet:
                return
            raise CommandError(
                'Operation cannot be completed. Did you forget to do database migration?'
            )

        # Set up Patient group.
        patient_group = Group(name='Patient')
        patient_group.save()

        patient_group.permissions = [
            change_patient_permission, change_profile_information_permission,
            add_appointment_permission, cancel_appointment_permission,
            change_appointment_permission, view_appointment_permission,
            view_prescription_permission, download_medical_information,
            view_test_results_permission, download_medical_information,
            view_own_diagnoses_permission
        ]

        patient_group.save()

        # Set up Nurse group.
        nurse_group = Group(name='Nurse')
        nurse_group.save()

        nurse_group.permissions = [
            view_prescription_permission,
            change_profile_information_permission, view_patients_permission,
            view_diagnosis_permission, view_treatment_session_permission,
            add_treatment_session_permission, change_appointment_permission,
            view_appointment_permission
        ]
        nurse_group.save()

        # Set up Doctor group.
        doctor_group = Group(name='Doctor')
        doctor_group.save()

        doctor_group.permissions = [
            change_profile_information_permission, add_appointment_permission,
            cancel_appointment_permission, change_appointment_permission,
            view_appointment_permission, add_diagnosis_permission,
            change_diagnosis_permission, request_test_permission,
            upload_test_results_permission, discharge_patient_permission,
            view_diagnosis_permission, view_treatment_session_permission,
            view_patients_permission, view_prescription_permission,
            add_treatment_session_permission, release_test_results_permission,
            add_prescription_permission, change_prescription_permission,
            delete_prescription_permission,
            transfer_patient_receiving_permission
        ]
        doctor_group.save()

        # Set up Administrator group
        administrator_group = Group(name='Administrator')
        administrator_group.save()

        administrator_group.permissions = [
            add_administrator_permission, add_doctor_permission,
            add_profile_information_permission, add_drug_permission,
            remove_drug_permission, view_drug_permission,
            change_drug_permission, add_nurse_permission,
            change_profile_information_permission,
            transfer_patient_any_permission, view_system_information_permission
        ]
        administrator_group.save()

        if not quiet:
            self.stdout.write(
                self.style.SUCCESS('Successfully set up all required groups.'))
Пример #40
0
admin.save()

ctmodel = ContentType.objects.get(app_label='auth',model='User')
can_view = Permission(name='Can View',codename='can_view',content_type=ctmodel)
can_view.save()
can_take = Permission(name='Can Take Quiz',codename='can_take',content_type=ctmodel)
can_take.save()
can_grade = Permission(name='Can Grade Quiz',codename='can_grade',content_type=ctmodel)
can_grade.save()
can_edit = Permission(name='Can Edit',codename='can_edit',content_type=ctmodel)
can_edit.save()
can_admin = Permission(name='Can Admin',codename='can_admin',content_type=ctmodel)
can_admin.save()

guest.permissions.add(can_view)
student.permissions = [can_view, can_take]
ta.permissions = [can_view, can_take, can_grade]
headta.permissions = [can_view, can_take, can_grade]
faculty.permissions = [can_view, can_take, can_grade, can_edit]
admin.permissions = [can_view, can_take, can_edit, can_admin]

ruby = User.objects.get(username='******')
foo = User.objects.get(username='******')
java = User.objects.get(username='******')
js = User.objects.get(username='******')
lang = User.objects.get(username='******')
python = User.objects.get(username='******')

ruby.groups.add(guest)
foo.groups.add(student)
java.groups.add(ta)
Пример #41
0
    def handle_noargs(self, **options):

        somemodel_ct = ContentType.objects.get(app_label='auth', model='user')

        grupoadmin = Group(name = 'admin')
        grupoadmin.save()
        grupoaluno = Group(name = 'aluno')
        grupoaluno.save()
        # grupocopiadora = Group(name = 'copiadora')
        # grupocopiadora.save()

        permadmin = Permission(name='Permissao admin', codename='permadmin',content_type=somemodel_ct)
        permadmin.save()
        permaluno = Permission(name='Permissao aluno', codename='permaluno',content_type=somemodel_ct)
        permaluno.save()

        # permcopiadora = Permission(name='Permissao copiadora', codename='permcopiadora',content_type=somemodel_ct)
        # permcopiadora.save()

        grupoadmin.permissions = [permadmin, permaluno]
        grupoaluno.permissions = [permaluno]
        # grupocopiadora.permissions = [permcopiadora]

        user = User.objects.create_user('admin', '*****@*****.**', 'admin')
        user.is_superuser = True
        user.is_staff = True
        user.group = [grupoadmin]
        user.save()


        def criar_faculdade(faculdade1):
            faculdade=Faculdade()
            faculdade.nome=faculdade1
            faculdade.save()
            return faculdade

        def criar_participante(nome, sobrenome, faculdade, e_mail, telefone, curso, ano_ingresso):
            # user = User.objects.create_user(username=nome_sobrenome, email="*****@*****.**", password=nome_sobrenome)
            # user.is_staff = False
            # user.is_superuser = False
            # user.groups = [grupoaluno]
            # user.save()


            participante = Participante()
            participante.nome = nome
            participante.sobrenome=sobrenome
            participante.faculdade = faculdade
            participante.e_mail = e_mail
            participante.telefone = telefone
            participante.curso = curso
            participante.ano_ingresso = ano_ingresso
            participante.save()

            return participante


        def criar_atividade(nome, dia, horario, cap_participantes, pont_vendas, preco):
            atividade = Atividade()
            atividade.nome = nome
            atividade.dia = dia
            atividade.horario = horario
            atividade.cap_participantes = cap_participantes
            atividade.pont_vendas = pont_vendas
            atividade.preco = preco
            atividade.save()

            return atividade

        atividade1=criar_atividade("Marcos Pontes", 'Quarta-Feira', '11:00', '100', '5', '3')
        atividade2=criar_atividade("Wellington Nogueira", 'Terça-Feira', '11:00', '200', '5', '3')
        atividade3=criar_atividade("Guilherme Paulus Nogueira", 'Segunda-Feira', '11:00', '150', '5', '3')
        atividade4=criar_atividade("Sofia Esteves", 'Quinta-Feira', '11:00', '200', '5', '3')
        atividade5=criar_atividade("Sônia Hess", 'Sexta-Feira', '11:00', '200', '5', '3')

        def criar_ponto_venda(nome):
            ponto = PontodeVenda()
            ponto.nome = nome
            ponto.save()
            return ponto

        def criar_vendedor(nome):
            vendedor = Vendedor()
            vendedor.nome = nome
            vendedor.save()
            return vendedor


        faculdade1=criar_faculdade("Poli")
        faculdade2=criar_faculdade("FEA")
        faculdade3=criar_faculdade("ECA")
        faculdade4=criar_faculdade("FAU")
        faculdade5=criar_faculdade("IME")

        ponto_venda0=criar_ponto_venda("Nenhum")
        ponto_venda1=criar_ponto_venda("Bienio")
        ponto_venda2=criar_ponto_venda("Civil")
        ponto_venda3=criar_ponto_venda("Mecânica")
        ponto_venda4=criar_ponto_venda("Eletrica")
        ponto_venda5=criar_ponto_venda("FEA")

        vendedor1=criar_vendedor("PV")
        vendedor2=criar_vendedor("Marcos")
        vendedor3=criar_vendedor("Nicolas")
        vendedor4=criar_vendedor("Vinicius")

        participante1 = criar_participante("Pedro", "Nakachima", faculdade1, "*****@*****.**", "989990992", "Engenharia Mecânica", "2014")
        participante2 = criar_participante("Marcos", "Thomas", faculdade2, "*****@*****.**", "989582514", "Engenharia Mecânica", "2014")
        participante3 = criar_participante("Vinicius", "Utsumi", faculdade3, "*****@*****.**", "978651565", "Engenharia Mecânica", "2014")
        participante4 = criar_participante("Nicolas", "Silva", faculdade4, "*****@*****.**", "923224528", "Engenharia Mecânica", "2014")


        # copiadora1 = criar_copiadora("Minerva", "*****@*****.**", faculdade1, "62.025.689/0001-66", "Minerva S/A", '(11) 999999999', "alguma rua", "www.exemplo.com", "EU")
        # copiadora2 = criar_copiadora("FEA Copy", "*****@*****.**", faculdade2, "62.025.666/0001-66", "FEA COPY LTDA", '(11) 777777777', "outra rua", "www.oi.com", "Outra pessoa")

        # maguilla = criar_aluno("rafael.maguilla", 'Masculino', faculdade1, '50.345.667-6', '412.884.958-89', copiadora1, 123, "Engenharia Eletrica", '(11) 99958-3868', '(11) 3835-8783', "Rua", "Complemento", '1994-09-29')
        # pv = criar_aluno("pedro.nakachima", 'Masculino', faculdade1, '78.385.667-X', '123.456.958-89', copiadora1, 43, "Engenharia Mecanica", '(11) 98999-0991', '(11) 3835-8783', "Rua", "Complemento", '1994-09-29')
        # vila = criar_aluno("rafael.vilarinho", 'Masculino', faculdade1, '12.345.334-X', '412.884.887-21', copiadora1, 22435, "Engenharia Civil", '(11) 99494-2535', '(11) 3835-8783', "Rua", "Complemento", '1994-09-29')
        # maria = criar_aluno("maria.carla", 'Feminino', faculdade1, '09.345.333-6', '123.884.333-12', copiadora1,  2325, "Engenharia Eletrica", '(11) 98492-6388', '(11) 3835-8783', "Rua", "Complemento", '1994-09-29')
        # lucas = criar_aluno("lucas.scarparo", 'Masculino', faculdade1, '01.301.612-6', '309.111.958-89', copiadora1, 1324, "Engenharia Mecanica", '(11) 98644-5073', '(11) 3835-8783', "Rua", "Complemento", '1994-09-29')


        # anunciante1 = criar_anunciante('Poli Jr', 'Junior Poli Estudos', '62.025.689/0001-66')
        # anunciante2 = criar_anunciante('Jacopiei', 'Jacopiei Servicos de Copias Ltda.', '20.451.891/0001-00')

        print 'Mockup feito com sucesso'