示例#1
0
文件: referer.py 项目: XinMa1/work
    def add(self):
        chatroomsList = Chatrooms().select()

        userName = self.isLogin()
        if userName != 'admin':
            return self.error(msg = '权限不足!', url=self.makeUrl('/admin/chatrooms/list'))
        user = Users.get(Users.name == userName)
        albumsList = Albums().select().where(Albums.owner == user.id)
        imagesList = Images().select().where(Images.owner == user.id)

        if not albumsList.count():
            return self.error(msg = '请创建至少一个专辑!', url=self.makeUrl('/admin/chatrooms/list'))
        if not imagesList.count():
            return self.error(msg = '请创建至少一个图片!', url=self.makeUrl('/admin/chatrooms/list'))

        album_images_map = {}
        excluded_albums = []
        for album in albumsList:
            album_images = imagesList.where(Images.album == album.id)
            if album_images.count():
                album_images_map[album.id] = album_images
            else:
                excluded_albums.append(album.id)

        self.privData['ALBUMS_LIST'] = \
            [album for album in albumsList if album.id not in excluded_albums]
        self.privData['IMG_ALBUMS_LIST'] = album_images_map

        # 默认专辑为当前用户的第一个专辑
        self.privData['CURRENT_ALBUM'] = self.privData['ALBUMS_LIST'][0]
        # 默认图片为默认专辑的第一张图片
        self.privData['CURRENT_IMG'] = album_images_map[self.privData['CURRENT_ALBUM'].id][0]
        self.privData['SUBMIT_NAME'] = "thumbnail"

        return self.display('chatroomAdd')
示例#2
0
文件: referer.py 项目: XinMa1/work
    def add(self):
        current_user = Users.get(Users.name == self.isLogin())
        albumsList = Albums().select()
        if not self.isAdmin():
            albumsList = albumsList.where(Albums.owner == current_user)

        if not albumsList.count():
            return self.error(msg = '请创建至少一个专辑!', url=self.makeUrl('/admin/albums/list'))

        self.privData['CURRENT_USER'] = current_user
        self.privData['ALBUMS_LIST'] = albumsList

        return self.display('imageAdd')
示例#3
0
文件: referer.py 项目: XinMa1/work
    def edit(self):
        inputParams = self.getInput()
        groupID = inputParams['id']

        current_group = Groups().get(Groups.id == groupID)
        current_user = Users.get(Users.name == self.isLogin())

        if current_user.id != current_group.owner.id and not self.isAdmin() or not current_user.role.type < 100:
            return self.error(msg = '权限不足!', url=self.makeUrl('/admin/groups/list'))

        categoriesList = Categories().select()
        albumsList = Albums().select()
        imagesList = Images().select()
        if not self.isAdmin():
            albumsList = albumsList.where(Albums.owner == current_user)
            imagesList = imagesList.where(Images.owner == current_user)


        # 确认当前用户是否至少有一个包含图片的专辑
        if not albumsList.count():
            return self.error(msg = '请创建至少一个专辑!', url=self.makeUrl('/admin/albums/list'))
        if not imagesList.count(): 
            return self.error(msg = '请创建至少一个图片!', url=self.makeUrl('/admin/images/list'))

        # 构建{album: images}, 同时排除不包括任何图片的专辑
        album_images_map = {}
        excluded_albums = []
        for album in albumsList:
            album_images = imagesList.where(Images.album == album.id)
            if album_images.count():
                album_images_map[album.id] = album_images
            else:
                excluded_albums.append(album.id)

        self.privData['ALBUMS_LIST'] = \
            [album for album in albumsList if album.id not in excluded_albums]
        self.privData['CATEGORIES_LIST'] = categoriesList
        self.privData['IMG_ALBUMS_LIST'] = album_images_map
        
        self.privData['CURRENT_OBJECT'] = current_group 
        self.privData['CURRENT_IMG'] = current_group.thumbnail
        self.privData['CURRENT_ALBUM'] = current_group.thumbnail.album
        self.privData['SUBMIT_NAME'] = "thumbnail"

        return self.display('groupEdit')
示例#4
0
文件: referer.py 项目: XinMa1/work
    def edit(self):
        inputParams = self.getInput()
        userName = self.isLogin()

        chatroomID = int(inputParams['id'])
        # 权限检查
        chatroom = Chatrooms.get(Chatrooms.id == chatroomID)
        current_user = Users.get(Users.name == self.isLogin())
        if current_user.id != chatroom.owner.id and not self.isAdmin() or not current_user.role.type < 100:
            return self.error(msg = '权限不足!', url=self.makeUrl('/admin/chatrooms/list'))

        self.privData['CHATROOM'] = chatroom

        user = Users.get(Users.name == userName)
        albumsList = Albums().select().where(Albums.owner == user.id)
        imagesList = Images().select().where(Images.owner == user.id)

        # 确认当前用户是否至少有一个包含图片的专辑
        if not albumsList.count():
            return self.error(msg = '请创建至少一个专辑!', url=self.makeUrl('/admin/albums/list'))
        if not imagesList.count():
            return self.error(msg = '请创建至少一个图片!', url=self.makeUrl('/admin/images/list'))


        # 构建{album: images}, 同时排除不包括任何图片的专辑
        album_images_map = {}
        excluded_albums = []
        for album in albumsList:
            album_images = imagesList.where(Images.album == album.id)
            if album_images.count():
                album_images_map[album.id] = album_images
            else:
                excluded_albums.append(album.id)

        self.privData['ALBUMS_LIST'] = \
            [album for album in albumsList if album.id not in excluded_albums]
        self.privData['IMG_ALBUMS_LIST'] = album_images_map

        self.privData['CURRENT_CHATROOM'] = chatroom
        self.privData['CURRENT_ALBUM'] = chatroom.thumbnail.album
        self.privData['CURRENT_IMG'] = chatroom.thumbnail
        self.privData['SUBMIT_NAME'] = "thumbnail"

        return self.display('chatroomEdit')
示例#5
0
文件: referer.py 项目: XinMa1/work
    def edit(self):
        inputParams = self.getInput()
        userName = self.isLogin()
        if userName != "admin":
            return self.error(msg="权限不足!", url=self.makeUrl("/admin/articles/list"))

        articleID = int(inputParams["id"])
        article = Articles.get(Articles.id == articleID)

        self.privData["ARTICLE"] = article

        user = Users.get(Users.name == userName)
        albumsList = Albums().select().where(Albums.owner == user.id)
        imagesList = Images().select().where(Images.owner == user.id)
        categoriesList = Categories().select()

        # 确认当前用户是否至少有一个包含图片的专辑
        if not albumsList.count():
            return self.error(msg="请创建至少一个专辑!", url=self.makeUrl("/admin/albums/list"))
        if not imagesList.count():
            return self.error(msg="请创建至少一个图片!", url=self.makeUrl("/admin/images/list"))

        # 分类列表
        self.privData["CATEGORIES_LIST"] = categoriesList

        # 构建{album: images}, 同时排除不包括任何图片的专辑
        album_images_map = {}
        excluded_albums = []
        for album in albumsList:
            album_images = imagesList.where(Images.album == album.id)
            if album_images.count():
                album_images_map[album.id] = album_images
            else:
                excluded_albums.append(album.id)

        self.privData["ALBUMS_LIST"] = [album for album in albumsList if album.id not in excluded_albums]
        self.privData["IMG_ALBUMS_LIST"] = album_images_map

        self.privData["CURRENT_ARTICLE"] = article
        self.privData["CURRENT_ALBUM"] = article.thumbnail.album
        self.privData["CURRENT_IMG"] = article.thumbnail
        self.privData["SUBMIT_NAME"] = "thumbnail"

        return self.display("articleEdit")
示例#6
0
文件: referer.py 项目: XinMa1/work
    def add(self):
        categoriesList = Categories().select()

        # 获得当前用户的专辑列表和图片列表
        albumsList = Albums().select() 
        imagesList = Images().select()
        current_user = Users.get(Users.name == self.isLogin())
        if not self.isAdmin():
            albumsList = albumsList.where(Albums.owner == current_user)
            imagesList = imagesList.where(Images.owner == current_user)
       
        if not current_user.role.type < 100:
            return self.error(msg = '权限不足!', url=self.makeUrl('/admin/albums/list'))

        # 确认当前用户是否至少有一个包含图片的专辑
        if not albumsList.count():
            return self.error(msg = '请创建至少一个专辑!', url=self.makeUrl('/admin/albums/list'))
        if not imagesList.count(): 
            return self.error(msg = '请创建至少一个图片!', url=self.makeUrl('/admin/images/list'))

        # 构建{album: images}, 同时排除不包括任何图片的专辑
        album_images_map = {}
        excluded_albums = []
        for album in albumsList:
            album_images = imagesList.where(Images.album == album.id)
            if album_images.count():
                album_images_map[album.id] = album_images
            else:
                excluded_albums.append(album.id)

        self.privData['ALBUMS_LIST'] = \
            [album for album in albumsList if album.id not in excluded_albums]
        self.privData['CATEGORIES_LIST'] = categoriesList
        self.privData['IMG_ALBUMS_LIST'] = album_images_map
        
        # 默认专辑为当前用户的第一个专辑
        self.privData['CURRENT_ALBUM'] = self.privData['ALBUMS_LIST'][0]
        # 默认图片为默认专辑的第一张图片
        self.privData['CURRENT_IMG'] = album_images_map[self.privData['CURRENT_ALBUM'].id][0]
        self.privData['SUBMIT_NAME'] = "thumbnail"

        return self.display('groupAdd')
示例#7
0
文件: referer.py 项目: XinMa1/work
    def edit(self):
        inputParams = self.getInput()

        userObj = Users.get(Users.id == int(inputParams['id']))
        current_user = Users.get(Users.name == self.isLogin())   

        if userObj.id != current_user.id and not self.isAdmin():
            return self.error(msg = '权限不足!', url=self.makeUrl('/admin/users/list'))

        # 不允许创建系统管理员
        rolesList = Roles().select().where(Roles.id>1)
        self.privData['ROLES_LIST'] = rolesList

        self.privData['USER_INFO'] = userObj

        albumsList = Albums().select()
        imagesList = Images().select()

        # 确认当前用户是否至少有一个包含图片的专辑
        if not albumsList.count():
            return self.error(msg = '请创建至少一个专辑!', url=self.makeUrl('/admin/albums/list'))
        if not imagesList.count():
            return self.error(msg = '请创建至少一个图片!', url=self.makeUrl('/admin/images/list'))

        # 构建{album: images}, 同时排除不包括任何图片的专辑
        album_images_map = {}
        excluded_albums = []
        for album in albumsList:
            album_images = imagesList.where(Images.album == album.id)
            if album_images.count():
                album_images_map[album.id] = album_images
            else:
                excluded_albums.append(album.id)

        self.privData['ALBUMS_LIST'] = \
            [album for album in albumsList if album.id not in excluded_albums]
        self.privData['IMG_ALBUMS_LIST'] = album_images_map
        self.privData['CURRENT_ALBUM'] = self.privData['ALBUMS_LIST'][0]
        self.privData['CURRENT_IMG'] = album_images_map[self.privData['CURRENT_ALBUM'].id][0]
        self.privData['SUBMIT_NAME'] = "thumbnail"

        return self.display('userEdit')
示例#8
0
文件: referer.py 项目: XinMa1/work
    def search(self):
        inputParams = self.getInput()
        keywords = inputParams['keywords'].strip().lower() if inputParams.has_key('keywords') else ''
        page = int(inputParams['page']) if inputParams.has_key('page') else 1

        albumsList = Albums().select().where(Albums.name.contains(keywords))
        current_user = Users.get(Users.name == self.isLogin())
        if not self.isAdmin():
            albumsList = albumsList.where(Albums.owner == current_user)

        pageString = self.getPageStr(
                        self.makeUrl('/admin/albums/list'), 
                        page, 
                        config.COUNT_PER_PAGE, 
                        albumsList.count()
                     )
        self.privData['ALBUMS_LIST'] = albumsList.paginate(page, config.COUNT_PER_PAGE)
        self.privData['PAGE_STRING'] = pageString

        return self.display('albumsList')
示例#9
0
文件: referer.py 项目: XinMa1/work
    def list(self):
        inputParams = self.getInput()
        page = int(inputParams['page']) if inputParams.has_key('page') else 1
         
        albumsList = Albums().select()
        current_user = Users.get(Users.name == self.isLogin())
        if not self.isAdmin():
            albumsList = albumsList.where(Albums.owner == current_user)

        albumsList = albumsList.order_by(Albums.id.desc())
        pageString = self.getPageStr(
                        self.makeUrl('/admin/albums/list'), 
                        page, 
                        config.COUNT_PER_PAGE, 
                        albumsList.count()
                     )

        self.privData['ALBUMS_LIST'] = albumsList.paginate(page, config.COUNT_PER_PAGE)
        self.privData['PAGE_STRING'] = pageString

        return self.display('albumsList')
示例#10
0
文件: referer.py 项目: XinMa1/work
    def edit(self):
        inputParams = self.getInput()

        id = int(inputParams['id'])
        img = Images().get(Images.id == id)

        current_user = Users.get(Users.name == self.isLogin())
        if current_user.id != img.owner.id and not self.isAdmin():
            return self.error(msg = '权限不足!', url=self.makeUrl('/admin/images/list'))

        albumsList = Albums().select()
        if not self.isAdmin():
            albumsList = albumsList.where(Albums.owner == current_user)

        if not albumsList.count():
            return self.error(msg = '请创建至少一个专辑!', url=self.makeUrl('/admin/albums/list'))

        self.privData['IMAGE_INFO'] = img
        self.privData['ALBUMS_LIST'] = albumsList

        return self.display('imageEdit')
示例#11
0
文件: referer.py 项目: XinMa1/work
    def add(self):
        articlesList = Articles().select()

        userName = self.isLogin()
        if userName != "admin":
            return self.error(msg="权限不足!", url=self.makeUrl("/admin/articles/list"))
        user = Users.get(Users.name == userName)
        albumsList = Albums().select().where(Albums.owner == user.id)
        imagesList = Images().select().where(Images.owner == user.id)
        categoriesList = Categories().select()

        if not albumsList.count():
            return self.error(msg="请创建至少一个专辑!", url=self.makeUrl("/admin/articles/list"))
        if not imagesList.count():
            return self.error(msg="请创建至少一个图片!", url=self.makeUrl("/admin/articles/list"))

        album_images_map = {}
        excluded_albums = []
        for album in albumsList:
            album_images = imagesList.where(Images.album == album.id)
            if album_images.count():
                album_images_map[album.id] = album_images
            else:
                excluded_albums.append(album.id)

        # 分类列表
        self.privData["CATEGORIES_LIST"] = categoriesList

        self.privData["ALBUMS_LIST"] = [album for album in albumsList if album.id not in excluded_albums]
        self.privData["IMG_ALBUMS_LIST"] = album_images_map

        # 默认专辑为当前用户的第一个专辑
        self.privData["CURRENT_ALBUM"] = self.privData["ALBUMS_LIST"][0]
        # 默认图片为默认专辑的第一张图片
        self.privData["CURRENT_IMG"] = album_images_map[self.privData["CURRENT_ALBUM"].id][0]
        self.privData["SUBMIT_NAME"] = "thumbnail"

        return self.display("articleAdd")
示例#12
0
文件: referer.py 项目: XinMa1/work
    def add(self):
        if not self.isAdmin():
            return self.error(msg = '权限不足!', url=self.makeUrl('/admin/users/list'))


        albumsList = Albums().select()
        imagesList = Images().select()

        # 确认当前用户是否至少有一个包含图片的专辑
        if not albumsList.count():
            return self.error(msg = '请创建至少一个专辑!', url=self.makeUrl('/admin/albums/list'))
        if not imagesList.count():
            return self.error(msg = '请创建至少一个图片!', url=self.makeUrl('/admin/images/list'))

        # 构建{album: images}, 同时排除不包括任何图片的专辑
        album_images_map = {}
        excluded_albums = []
        for album in albumsList:
            album_images = imagesList.where(Images.album == album.id)
            if album_images.count():
                album_images_map[album.id] = album_images
            else:
                excluded_albums.append(album.id)

        # 不允许创建系统管理员
        rolesList = Roles().select().where(Roles.id>1)
        self.privData['ROLES_LIST'] = rolesList

        self.privData['ALBUMS_LIST'] = \
            [album for album in albumsList if album.id not in excluded_albums]
        self.privData['IMG_ALBUMS_LIST'] = album_images_map
        self.privData['CURRENT_ALBUM'] = self.privData['ALBUMS_LIST'][0]
        self.privData['CURRENT_IMG'] = album_images_map[self.privData['CURRENT_ALBUM'].id][0]
        self.privData['SUBMIT_NAME'] = "thumbnail"

        return self.display('userAdd')