mirror of https://github.com/jumpserver/jumpserver
				
				
				
			rollback jumpserver/views.py 54 : user = get_object() part and delete useless 'class CustomUser'
							parent
							
								
									02218e624a
								
							
						
					
					
						commit
						cee8b2d787
					
				| 
						 | 
				
			
			@ -48,105 +48,13 @@ def get_data(data, items, option):
 | 
			
		|||
        dic[name] = li
 | 
			
		||||
    return dic
 | 
			
		||||
 | 
			
		||||
class CustomUser(object):
 | 
			
		||||
    def __init__(self,request):
 | 
			
		||||
        self.requset = request
 | 
			
		||||
 | 
			
		||||
    def __unicode__(self):
 | 
			
		||||
        return self.requset.user.username
 | 
			
		||||
 | 
			
		||||
    def get_asset_group(self):
 | 
			
		||||
        """
 | 
			
		||||
        Get user host_groups.
 | 
			
		||||
        获取用户有权限的主机组
 | 
			
		||||
        """
 | 
			
		||||
        host_group_list = []
 | 
			
		||||
        perm_list = []
 | 
			
		||||
        user_group_all = self.requset.user.group.all()
 | 
			
		||||
        for user_group in user_group_all:
 | 
			
		||||
            perm_list.extend(user_group.perm_set.all())
 | 
			
		||||
 | 
			
		||||
        for perm in perm_list:
 | 
			
		||||
            host_group_list.append(perm.asset_group)
 | 
			
		||||
 | 
			
		||||
        return host_group_list
 | 
			
		||||
 | 
			
		||||
    def get_asset_group_info(self, printable=False):
 | 
			
		||||
        """
 | 
			
		||||
        Get or print asset group info
 | 
			
		||||
        获取或打印用户授权资产组
 | 
			
		||||
        """
 | 
			
		||||
        asset_groups_info = {}
 | 
			
		||||
        asset_groups = self.get_asset_group()
 | 
			
		||||
 | 
			
		||||
        for asset_group in asset_groups:
 | 
			
		||||
            asset_groups_info[asset_group.id] = [asset_group.name, asset_group.comment]
 | 
			
		||||
 | 
			
		||||
        if printable:
 | 
			
		||||
            for group_id in asset_groups_info:
 | 
			
		||||
                if asset_groups_info[group_id][1]:
 | 
			
		||||
                    print "[%3s] %s -- %s" % (group_id,
 | 
			
		||||
                                              asset_groups_info[group_id][0],
 | 
			
		||||
                                              asset_groups_info[group_id][1])
 | 
			
		||||
                else:
 | 
			
		||||
                    print "[%3s] %s" % (group_id, asset_groups_info[group_id][0])
 | 
			
		||||
                print ''
 | 
			
		||||
        else:
 | 
			
		||||
            return asset_groups_info
 | 
			
		||||
 | 
			
		||||
    def get_asset(self):
 | 
			
		||||
        """
 | 
			
		||||
        Get the assets of under the user control.
 | 
			
		||||
        获取主机列表
 | 
			
		||||
        """
 | 
			
		||||
        assets = []
 | 
			
		||||
        asset_groups = self.get_asset_group()
 | 
			
		||||
 | 
			
		||||
        for asset_group in asset_groups:
 | 
			
		||||
            assets.extend(asset_group.asset_set.all())
 | 
			
		||||
 | 
			
		||||
        return assets
 | 
			
		||||
 | 
			
		||||
    def get_asset_info(self, printable=False):
 | 
			
		||||
        """
 | 
			
		||||
        Get or print the user asset info
 | 
			
		||||
        获取或打印用户资产信息
 | 
			
		||||
        """
 | 
			
		||||
        from jasset.models import AssetAlias
 | 
			
		||||
        assets_info = {}
 | 
			
		||||
        assets = self.get_asset()
 | 
			
		||||
 | 
			
		||||
        for asset in assets:
 | 
			
		||||
            asset_alias = AssetAlias.objects.filter(user=self, asset=asset)
 | 
			
		||||
            if asset_alias and asset_alias[0].alias != '':
 | 
			
		||||
                assets_info[asset.ip] = [asset.id, asset.ip, str(asset_alias[0].alias)]
 | 
			
		||||
            else:
 | 
			
		||||
                assets_info[asset.ip] = [asset.id, asset.ip, str(asset.comment)]
 | 
			
		||||
 | 
			
		||||
        if printable:
 | 
			
		||||
            ips = assets_info.keys()
 | 
			
		||||
            ips.sort()
 | 
			
		||||
            for ip in ips:
 | 
			
		||||
                if assets_info[ip][2]:
 | 
			
		||||
                    print '%-15s -- %s' % (ip, assets_info[ip][2])
 | 
			
		||||
                else:
 | 
			
		||||
                    print '%-15s' % ip
 | 
			
		||||
            print ''
 | 
			
		||||
        else:
 | 
			
		||||
            return assets_info
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# @login_required
 | 
			
		||||
@require_role(role='user')
 | 
			
		||||
def index_cu(request):
 | 
			
		||||
    # user_id = request.session.get('user_id')
 | 
			
		||||
    # user = get_object(User, id=user_id)
 | 
			
		||||
    # user = {}
 | 
			
		||||
    # user.name = request.user.username
 | 
			
		||||
    # user.username = request.user.username
 | 
			
		||||
    # user.id = request.user.id
 | 
			
		||||
    user_id = request.session.get('user_id')
 | 
			
		||||
    user = get_object(User, id=user_id)
 | 
			
		||||
    login_types = {'L': 'LDAP', 'M': 'MAP'}
 | 
			
		||||
    user = CustomUser(request)
 | 
			
		||||
    username = user.username
 | 
			
		||||
    posts = user.get_asset()
 | 
			
		||||
    host_count = len(posts)
 | 
			
		||||
    new_posts = []
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -21,6 +21,7 @@ class UserGroup(models.Model):
 | 
			
		|||
 | 
			
		||||
from django.contrib.auth.models import AbstractUser
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class User(AbstractUser):
 | 
			
		||||
    USER_ROLE_CHOICES = (
 | 
			
		||||
        ('SU', 'SuperUser'),
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue