Пример #1
0
def image_ajx_list():
    page = int(request.args.get('page', 1))
    per_page = int(request.args.get('per_page', 10))
    target_id = request.args.get('target_id', '')
    asset_type = int(request.args.get('asset_type', 2))
    cover_id = request.args.get('cover_id', '')

    meta = {}
    query = {}
    if target_id:
        query['target_id'] = target_id
    query['asset_type'] = asset_type
    query['deleted'] = 0

    try:
        data = Image.objects(**query).order_by('-created_at').paginate(
            page=page, per_page=per_page)
        total_count = Image.objects(**query).count()

        # 过滤数据
        fields = []
        for i, d in enumerate(data.items):
            thumb_dict = d.get_thumb_path()
            thumb_url = ''
            is_cover = False
            if cover_id == str(d._id):
                is_cover = True
            if thumb_dict:
                thumb_url = thumb_dict['sm']
            field = {
                '_id': str(d._id),
                'name': d.name,
                'path': d.path,
                'img_url': d.img_url,
                'asset_type': d.asset_type,
                'domain': d.domain,
                'is_cover': is_cover,
            }
            if thumb_url:
                field['thumb_url'] = thumb_url
            elif d.img_url:
                field['thumb_url'] = d.img_url

            fields.append(field)

        meta['rows'] = fields
    except (Exception) as e:
        meta['rows'] = []
        total_count = 0

    meta['total_count'] = total_count
    meta['page'] = page
    meta['per_page'] = per_page

    return jsonify(code=0, message='success!', data=meta)
Пример #2
0
def produce_submit():
    ok = False
    form = SaveApi(request.values)
    if not form.validate_on_submit():
        return jsonify(code=3004, message=str(form.errors))
    data = request.values.to_dict()
    if not data:
        return jsonify(code=3003, message='至少传入一个参数!')
    try:
        if not (data['title'] and data['channel']):
            return jsonify(code=3003, message='标题和渠道为必填')
        if not data['img_urls']:
            return jsonify(code=3003, message='img_urls为空')
        produce = Produce.objects(title=data['title'],
                                  channel=data['channel']).first()
        if not produce:
            produce_data = data.copy()
            produce_data.pop('img_urls')
            produce = Produce(**produce_data)
            produce.save()
        else:
            # if produce.editor_id != 0:
            if produce.editor_id == 0:
                produce_data = data.copy()
                produce_data.pop('img_urls')
                ok = produce.update(**produce_data)
                if not ok:
                    return jsonify(code=3003, message='产品更新失败')
        img_urls = data['img_urls'].split(',')

        for i, img_url in enumerate(img_urls):
            img_data = {}
            img_data['title'] = data['title']
            img_data['img_url'] = img_url
            img_data['channel'] = data['channel']
            img_data['url'] = data['url']
            img_data['target_id'] = str(produce._id)
            img = Image.objects(img_url=img_url).first()
            if not img:
                img = Image(**img_data)
                ok = img.save()
            else:
                ok = img.update(target_id=str(produce._id))
            if i == 0:
                if not produce.cover_id:
                    ok = produce.update(cover_id=str(img._id))

        if ok:
            return jsonify(code=0, message='success!', data=produce)
        else:
            return jsonify(code=3010, message='操作失败!')

    except (Exception) as e:
        return jsonify(code=3011, message=str(e))
Пример #3
0
    def cover(self):
        if self.cover_id and len(self.cover_id) == 24:
            image = Image.objects(_id=ObjectId(self.cover_id)).first()
            if image and image.deleted == 0:
                return image

        image = Image.objects(target_id=str(self._id), asset_type=2,
                              deleted=0).first()
        if image and image.deleted == 0:
            return image

        return None
Пример #4
0
def image_list():

    query = {}
    meta = {}
    page = int(request.args.get('page', 1))
    per_page = int(request.args.get('per_page', 100))
    status = int(request.args.get('status', 0))
    deleted = int(request.args.get('deleted', 0))
    name = request.args.get('name', '')

    if name:
        query['name'] = name

    if in_grap:
        if in_grap == -1:
            query['in_grap'] = 0
        else:
            query['in_grap'] = in_grap

    if out_grap:
        if out_grap == -1:
            query['out_grap'] = 0
        else:
            query['out_grap'] = out_grap

    if status == -1:
        query['status'] = 0
    if status == 1:
        query['status'] = 1
    else:
        pass

    query['deleted'] = deleted

    try:
        data = Image.objects(**query).order_by('-created_at').paginate(
            page=page, per_page=per_page)
        total_count = Image.objects(**query).count()

        # 过滤数据
        for i, d in enumerate(data.items):
            data.items[i]._id = str(d._id)

        meta['rows'] = data.items
    except (Exception) as e:
        meta['rows'] = []
        total_count = 0

    meta['total_count'] = total_count
    meta['page'] = page
    meta['per_page'] = per_page

    return jsonify(code=0, message='success!', data=meta)
Пример #5
0
def insert_data():
    query = {}
    page = 1
    per_page = 100
    is_end = False
    total = 1
    while not is_end:
        # 倒序
        data = Image.objects(**query).order_by('created_at').paginate(
            page=page, per_page=per_page)
        if not len(data.items):
            print("get data is empty! \n")
            break
        for i, image in enumerate(data.items):
            obj = ElasticObj()
            obj.create_index()
            print(type(image))
            # image['id'] = str(image['_id'])
            # image.pop('_id')
            # obj.post_index_data(image)
        total += 1
        print("current page %s: \n" % page)
        page += 1
        if len(data.items) < per_page:
            is_end = True
    print("is over execute count %s\n" % total)
Пример #6
0
def image_view():
    meta = metaInit.copy()

    id = request.args.get('id', None)
    if not id:
        flash('ID不存在!', 'warning')
        return redirect(url_for('main.image_index'))

    if not len(id) == 24:
        flash('ID非法!', 'warning')
        return redirect(url_for('main.image_index'))

    image = Image.objects(_id=ObjectId(id)).first()

    if not image:
        flash('内容不存在!', 'warning')
        return redirect(url_for('main.image_index'))

    if image.deleted == 1:
        flash('内容已删除!', 'warning')
        return redirect(url_for('main.image_index'))

    # image = tranform

    meta['title'] = "%s-素材库" % image['title']
    return render_template('image/view.html',
                           meta=meta,
                           form=t_image_view(image))
Пример #7
0
def insert_album_images(album_id, images):
    result = []
    for image in images:
        data = bytes(image, "ascii")
        entity = Image(data=data, album_id=album_id, name="No name")
        db.session.add(entity)
        db.session.commit()
        result.append(entity.serialize)
    return result
Пример #8
0
def image_submit():

    form = SaveApi(request.values)
    if not form.validate_on_submit():
        return jsonify(code=3004, message=str(form.errors))

    data = request.values.to_dict()

    if not data:
        return jsonify(code=3003, message='至少传入一个参数!')

    try:
        item = Image(**data)
        ok = item.save()

        if ok:
            return jsonify(code=0, message='success!', data=item)
        else:
            return jsonify(code=3010, message='操作失败!')

    except (Exception) as e:
        return jsonify(code=3011, message=str(e))
Пример #9
0
def upload_media(request):
    latest_files = request.files.getlist("files")
    event = request.form.get("event")
    week = request.form.get("week")
    if latest_files is not None:
        for uploaded_file in latest_files:
            original_filename, extension = os.path.splitext(
                uploaded_file.filename)
            MAX_SIZE = 1500, 1500

            # Spara orginalet
            filename = str(
                uuid.uuid4()
            ) + extension  ## Generera ett unikt filnamn så att det inte blir krockar
            path = os.path.join("static", "media", filename)
            img = Img.open(uploaded_file)
            img.thumbnail(MAX_SIZE)

            local_path = os.path.join(os.getcwd(), path)
            img.save(local_path)

            # Skapa en thumbnail
            thumb = Img.open(local_path)
            filename_thumb = str(uuid.uuid4()) + extension

            path_thumb = os.path.join("static", "media", filename_thumb)
            local_path_thumb = os.path.join(os.getcwd(), path_thumb)

            thumb.thumbnail([400, 400])
            thumb.save(local_path_thumb)

            new_img = Image(filename=path,
                            event_id=event,
                            week=week,
                            thumbnail=path_thumb)
            db.session.add(new_img)

    latest_videos = request.form.getlist("videos")
    if latest_videos is not None:
        for video in latest_videos:
            embed_link, thumbnail = handle_video(video)
            new_vid = Video(video_link=embed_link,
                            event_id=event,
                            week=week,
                            thumbnail=thumbnail)
            db.session.add(new_vid)

    db.session.commit()
    return True
Пример #10
0
def image_submit():
    meta = metaInit.copy()
    id = request.args.get('id', None)
    meta['data'] = None
    if id:
        item = Image.objects(_id=ObjectId(id)).first()
        item._id = str(item._id)
        item.thumb = item.get_thumb_path()
        item.tags_s = ','.join(item.tags)
        item.color_tags_s = ','.join(item.color_tags)
        item.brand_tags_s = ','.join(item.brand_tags)
        item.material_tags_s = ','.join(item.material_tags)
        item.style_tags_s = ','.join(item.style_tags)
        item.technique_tags_s = ','.join(item.technique_tags)
        item.other_tags_s = ','.join(item.other_tags)
        item.color_ids_s = ','.join(item.color_ids)
        meta['data'] = item

    form = SaveForm()

    meta['default_tags'] = re.split('[,,]', get_block_content('default_tags'))
    meta['default_color_tags'] = re.split(
        '[,,]', get_block_content('default_color_tags'))
    meta['default_brand_tags'] = re.split(
        '[,,]', get_block_content('default_brand_tags'))
    meta['default_material_tags'] = re.split(
        '[,,]', get_block_content('default_material_tags'))
    meta['default_style_tags'] = re.split(
        '[,,]', get_block_content('default_style_tags'))
    meta['default_technique_tags'] = re.split(
        '[,,]', get_block_content('default_technique_tags'))
    meta['default_other_tags'] = re.split(
        '[,,]', get_block_content('default_other_tags'))

    meta['prize_options'] = prize_options()

    categories = Category.objects(kind=2, status=1, deleted=0)[:20]
    meta['categories'] = categories

    # 获取品牌列表
    brands = Brand.objects(status=1, deleted=0)[:1000]
    meta['brands'] = brands

    meta['referer_url'] = request.environ.get(
        'HTTP_REFERER') if request.environ.get('HTTP_REFERER') else url_for(
            'admin.image_list')

    return render_template('admin/image/submit.html', meta=meta, form=form)
Пример #11
0
def image_ajx_del():
    id = request.args.get('id', '')
    if not id:
        return jsonify(code=500, message='缺少请求参数!')

    try:
        asset = Image.objects(_id=ObjectId(id)).first()
        if not asset:
            return jsonify(code=500, message='内容不存在!')
        if not g.is_edit:
            return jsonify(code=500, message='没有权限!')

        ok = asset.mark_delete()
        return jsonify(code=0, message='success')
    except (Exception) as e:
        return jsonify(code=500, message=str(e))
Пример #12
0
def image_update():

    page = 1
    perPage = 100
    isEnd = False
    successStatCount = 0
    failStatCount = 0
    query = {}
    # query['deleted'] = 0
    # query['kind'] = 1
    # query['channel'] = 'a-four'
    query['channel'] = 'thecool'
    #query['status'] = 1
    #query['channel'] = 'g_mark'
    #query['total_tags'] = '女装'

    while not isEnd:
        data = Image.objects(**query).order_by('-created_at').paginate(
            page=page, per_page=perPage)
        if not data:
            print("get data is empty! \n")
            continue

        # 过滤数据
        for i, d in enumerate(data.items):

            #img_url = d.img_url.strip()
            #if d.channel == 'g_mark':
            #r = random.randint(1000000, 9999999)
            if True:
                # if not d.img_url.startswith('http'):
                #     ok = d.update(img_url='http://www.a-fourdesign.com'+d.img_url)
                ok = True
                ok = d.update(channel='chinagood')
                #ok = d.update(random=r)
                if ok:
                    successStatCount += 1
                else:
                    failStatCount += 1

        print("current page %s: \n" % page)
        page += 1
        if len(data.items) < perPage:
            isEnd = True

    print("is over execute SuccessCount %d ---- failCount: %d\n" %
          (successStatCount, failStatCount))
Пример #13
0
def image_submit():
    meta = metaInit.copy()
    id = request.args.get('id', None)
    meta['data'] = None
    if id:
        item = Image.objects(_id=ObjectId(id)).first()
        item._id = str(item._id)
        item.thumb = item.get_thumb_path()
        item.tags_s = ','.join(item.tags)
        meta['data'] = item

    form = SaveForm()

    meta['referer_url'] = request.environ.get(
        'HTTP_REFERER') if request.environ.get('HTTP_REFERER') else ''

    return render_template('admin/image/submit.html', meta=meta, form=form)
Пример #14
0
 def loop(self, *args, **kwargs):
     query = {}
     query['path'] = ''
     query['deleted'] = 0
     query['kind'] = 1
     while not self.is_end:
         # 倒序
         data = Image.objects(**query).order_by('created_at').paginate(
             page=self.page, per_page=self.per_page)
         if not len(data.items):
             print("get data is empty! \n")
             break
         for i, image in enumerate(data.items):
             func(self, image)
         print("current page %s: \n" % self.page)
         self.page += 1
         if len(data.items) < self.per_page:
             self.is_end = True
     print("is over execute count %s\n" % self.total)
Пример #15
0
 def loop(*args, **kwargs):
     page = 1
     per_page = 100
     is_end = False
     total = 0
     query = {}
     while not is_end:
         data = Image.objects(**query).paginate(page=page, per_page=per_page)
         if not len(data.items):
             print("get data is empty! \n")
             break
         for i, image in enumerate(data.items):
             if image.target_id:
                 continue
             func(image)
         print("current page %s: \n" % page)
         page += 1
         total += 1
         if len(data.items) < per_page:
             is_end = True
     print("is over execute count %s\n" % total)
Пример #16
0
def image_index():
    meta = metaInit.copy()
    query = {
        'stick': 1,
        'status': 1,
        'deleted': 0,
    }
    stickList = Image.objects(**query).order_by('-stick_on')[:4]
    # 过滤数据
    sticks = []
    for i, d in enumerate(stickList):
        row = {
            '_id': str(d._id),
            'title': d.title,
            'thumb': d.get_thumb_path(),
        }
        sticks.append(row)
    meta['sticks'] = sticks

    meta['index_home_slide'] = get_column('image_index_slider', 10)
    meta['image_home_fine'] = get_column('image_home_fine', 3)
    meta['image_home_special'] = get_column('image_home_special', 2)
    return render_template('image/index.html', meta=meta)
Пример #17
0
def image_set_stick():
    meta = metaInit.copy()

    id = request.values.get('id', '')
    evt = request.values.get('evt', 1)
    if not id:
        return jsonify(success=False, message='缺少请求参数!')

    try:
        image = Image.objects(_id=ObjectId(id)).first()
        if not image:
            return jsonify(success=False, message='对象不存在!')
        image.mark_stick(evt=evt) if image else None
    except (Exception) as e:
        return jsonify(success=False, message=str(e))

    return jsonify(success=True,
                   message='操作成功!',
                   data={
                       'id': id,
                       'evt': evt
                   },
                   redirect_to=url_for('admin.image_list'))
Пример #18
0
def image_recovery():
    meta = {}

    ids = request.values.get('ids', '')
    type = request.values.get('type', 1)
    if not ids:
        return jsonify(success=False, message='缺少请求参数!')

    try:
        arr = ids.split(',')
        for d in arr:
            item = Image.objects(_id=ObjectId(d)).first()
            item.mark_recovery() if item else None
    except (Exception) as e:
        return jsonify(success=False, message=str(e))

    return jsonify(success=True,
                   message='操作成功!',
                   data={
                       'ids': ids,
                       'type': type
                   },
                   redirect_to=url_for('admin.image_list'))
Пример #19
0
def category_submit(name):
    form = SubmitForm(request.form)

    category = db.session.query(Category).filter_by(name=name).one()

    if request.method == 'POST' and form.validate():
        file = request.files['image']
        if not file:
            filename = form.link.data
        else:
            filename = file.filename

        image = Image(session['user'], category, form.name.data, form.text.data, form.link.data, filename)
        db.session.add(image)
        db.session.flush()

        if file and image.allowed:
            image.save(file)
        elif image.allowed:
            image.save()
        else:
            db.session.rollback()
            flash(local.category_submit['INVALID_IMAGE'], 'error')
            return render('category_submit.html', title=local.category['TITLE_SUBMIT'], category=category, form=form)

        image.save_thumbnail()
        image.save_exif()
        # Self upvote 
        image.vote(1, session['user'])
        db.session.commit()
        flash(local.category_submit['IMAGE_POSTED'], 'success')

        return redirect(url_for('category_one', name=name))

    flash_errors(form)
    return render('category_submit.html', title=local.category['TITLE_SUBMIT'], category=category, form=form)
Пример #20
0
def image_list():
    meta = metaInit.copy()
    query = {}
    page = force_int(request.args.get('page', 1))
    per_page = force_int(request.args.get('per_page', 100))
    status = force_int(request.args.get('status', 0))
    deleted = force_int(request.args.get('deleted', 0))
    kind = force_int(request.args.get('kind', 0))

    t = force_int(request.args.get('t', 1), 1)
    q = request.args.get('q', '')

    if q:
        if t == 1:
            query['id'] = force_int(q.strip())
        if t == 2:
            query['name'] = {"$regex": q.strip()}

    if kind:
        if kind == 1:
            meta['css_industry'] = 'active'
        elif kind == 2:
            meta['css_plane'] = 'active'
        meta['css_all'] = ''
        query['kind'] = kind

    if status == -1:
        meta['css_disable'] = 'active'
        query['status'] = 0
    if status == 1:
        query['status'] = 1
        meta['css_enable'] = 'active'
    else:
        pass

    if deleted == 1:
        query['deleted'] = 1
        meta['css_deleted'] = 'active'
    else:
        query['deleted'] = 0

    if not status and not deleted:
        meta['css_all'] = 'active'
    else:
        meta['css_all'] = ''

    page_url = url_for('admin.image_list',
                       page="#p#",
                       q=q,
                       t=t,
                       kind=kind,
                       status=status,
                       deleted=deleted)

    data = Image.objects(**query).order_by('-created_at').paginate(
        page=page, per_page=per_page)
    total_count = Image.objects(**query).count()

    # 过滤数据
    for i, d in enumerate(data.items):
        data.items[i]._id = str(d._id)
        data.items[i].thumb = d.get_thumb_path()
        if d.tags:
            data.items[i].tags_s = ','.join(d.tags)

    meta['data'] = data.items

    pager = Pager(page, per_page, total_count, page_url)
    meta['pager'] = pager.render_view()

    return render_template('admin/image/list.html', meta=meta)
Пример #21
0
def save_data(design_case):
    image = Image.objects(img_url=design_case.cover_url).first()
    if image:
        print('此作品已存在素材库,添加失败,失败作品_id', str(design_case._id))
    elif design_case.prize_label == '红星奖':
        image = Image()
        image.title = design_case.title  # 标题
        image.tags = design_case.tags  # 标签
        image.img_url = design_case.cover_url  # 图片地址
        image.designer = design_case.designer_name  # 设计者姓名
        # company = DesignCompany.objects(number=design_case.target_id).first()  # 公司
        if design_case.company_name:
            image.company = design_case.company_name  # 公司姓名
        elif design_case.en_company_name:
            image.company = design_case.en_company_name  # 公司姓名
        image.kind = 1  #类型
        # image.brand_id =  #品牌id
        #d = prize_options(design_case.prize_label)  # 获取奖项id和名称的字典映射
        image.prize_id = 4  # 奖项ID
        image.prize = design_case.prize_label  # 奖项名称
        image.prize_level = design_case.prize_level  # 奖项级别
        image.prize_time = design_case.award_time  # 奖项时间
        image.channel = 'opalus_design_case'
        image.evt = 1
        # 保存数据到素材库
        ok = True
        #ok = image.save()
        if not ok:
            print("保存成功: %s" % design_case.prize_label)
        else:
            print("保存失败: %s" % str(design_case._id))

        print('作品以成功转入素材库,成功作品_id', str(design_case._id))
    else:
        print("作品奖项不匹配: %s" % str(design_case._id))
Пример #22
0
def test_image(client):
    image = Image(filename='test', extension='test')
    assert image.filename == 'test'
    assert image.extension == 'test'
    assert image.created == dt_helper(dt.utcnow())
Пример #23
0
 def topic_img_url(self):
     return Image.get_img_by_id(self.topic_img_id).url
Пример #24
0
	def topic_img_url(self):
		return Image.get_img_by_id(self.topic_img_id).url
Пример #25
0
 def snap_img(self):
     return Image.get_img_by_id(self.snap_img_id).url
Пример #26
0
 def img_url(self):
     return Image.get_img_by_id(id=self.img_id).url
Пример #27
0
 def img_url(self):
     img = Image.get_img_by_id(id=self.img_id)
     return img.url
Пример #28
0
def image_list():
    meta = metaInit.copy()
    query = {}
    page = force_int(request.args.get('page', 1))
    per_page = force_int(request.args.get('per_page', 20))
    status = force_int(request.args.get('status', 1))
    deleted = force_int(request.args.get('deleted', 0))
    kind = force_int(request.args.get('kind', 1))
    prize_id = force_int(request.args.get('prize_id', 0))
    tag = request.args.get('tag', '')

    t = force_int(request.args.get('t', 1), 1)
    q = request.args.get('q', '')

    if q:
        if t == 1:
            query['_id'] = ObjectId(q.strip())
        if t == 2:
            query['channel'] = q.strip()
        if t == 3:
            query['evt'] = force_int(q.strip())

    if tag:
        query['total_tags'] = tag

    if prize_id:
        query['prize_id'] = prize_id

    if kind:
        if kind == 1:
            meta['css_industry'] = 'active'
        elif kind == 2:
            meta['css_plane'] = 'active'
        meta['css_all'] = ''
        query['kind'] = kind

    if status == -1:
        meta['css_disable'] = 'active'
        query['status'] = 0
    if status == 1:
        query['status'] = 1
        meta['css_enable'] = 'active'
    else:
        pass

    if deleted == 1:
        query['deleted'] = 1
        meta['css_deleted'] = 'active'
    else:
        query['deleted'] = 0

    if not status and not deleted:
        meta['css_all'] = 'active'
    else:
        meta['css_all'] = ''

    page_url = url_for('main.image_list',
                       page="#p#",
                       q=q,
                       t=t,
                       tag=tag,
                       prize_id=prize_id,
                       kind=kind,
                       status=status,
                       deleted=deleted)

    data = Image.objects(**query).order_by('random').paginate(
        page=page, per_page=per_page)
    total_count = Image.objects(**query).count()

    # 过滤数据
    for i, d in enumerate(data.items):
        prize_label = ''
        brand = None
        data.items[i]._id = str(d._id)
        data.items[i].thumb = d.get_thumb_path()
        if d.prize_id:
            prize_label = prize_options(d.prize_id)['name']
        if d.brand_id:
            brand = Brand.objects(_id=d.brand_id).first()

        data.items[i].prize_label = prize_label
        data.items[i].brand = brand

    # 过滤数据
    rows = t_image_list(data)

    meta['data'] = rows
    meta['total_count'] = total_count
    meta['prize_options'] = prize_options()

    pager = Pager(page, per_page, total_count, page_url)
    meta['pager'] = pager.render_view()
    return render_template('image/list.html', meta=meta)
Пример #29
0
	def img(self):
		return Image.get_img_by_id(id=self.img_id)
Пример #30
0
	def head_img_url(self):
		return Image.get_img_by_id(self.head_img_id).url
Пример #31
0
def image_list():
    meta = metaInit.copy()
    query = {}
    page = force_int(request.args.get('page', 1))
    per_page = force_int(request.args.get('per_page', 100))
    status = force_int(request.args.get('status', 0))
    deleted = force_int(request.args.get('deleted', 0))
    kind = force_int(request.args.get('kind', 0))
    prize_id = force_int(request.args.get('prize_id', 0))
    site_mark = request.args.get('site_mark', '')

    t = force_int(request.args.get('t', 1), 1)
    q = request.args.get('q', '')

    if q:
        if t == 1:
            query['_id'] = ObjectId(q.strip())
        if t == 2:
            query['channel'] = q.strip()
        if t == 3:
            query['evt'] = force_int(q.strip())

    if prize_id:
        query['prize_id'] = prize_id

    if kind:
        if kind == 1:
            meta['css_design'] = 'active'
        elif kind == 5:
            meta['css_fashion'] = 'active'
        meta['css_all'] = ''
        query['kind'] = kind

    if status == -1:
        query['status'] = 0
    if status == 1:
        query['status'] = 1
    else:
        pass

    if deleted == 1:
        query['deleted'] = 1
        meta['css_deleted'] = 'active'
    else:
        query['deleted'] = 0
    if site_mark:
        query['channel'] = site_mark
    if not kind and not deleted:
        meta['css_all'] = 'active'
    else:
        meta['css_all'] = ''

    page_url = url_for('admin.image_list',
                       page="#p#",
                       q=q,
                       t=t,
                       prize_id=prize_id,
                       site_mark=site_mark,
                       kind=kind,
                       status=status,
                       deleted=deleted)

    data = Image.objects(**query).order_by('-created_at').paginate(
        page=page, per_page=per_page)
    total_count = Image.objects(**query).count()
    site_list = Site.objects(kind=1, status=1, deleted=0)
    # 过滤数据
    rows = t_image_list(data)

    meta['data'] = rows
    meta['total_count'] = total_count
    meta['prize_options'] = prize_options()
    meta['site_list'] = site_list
    pager = Pager(page, per_page, total_count, page_url)
    meta['pager'] = pager.render_view()

    return render_template('admin/image/list.html', meta=meta)
Пример #32
0
 def head_img_url(self):
     return Image.get_img_by_id(self.head_img_id).url
Пример #33
0
 def schedule_thumbnail(image: Image, file_path, thumbnail_path):
     task: AsyncResult = make_thumbnail.delay(
         file_path, thumbnail_path, app.config.get('CONVERT_TO_RGB'))
     image.thumbnail_task = task.task_id
     ImageRepository.update(image)
Пример #34
0
 def image(self):
     if self.topic_img_id:
         return Image.get_img_by_id(self.topic_img_id).url
     else:
         return None
Пример #35
0
        user = gen_user()
        db.session.add(user)
        db.session.commit()

if uploadimages:
    users = User.query.all()
    categories = Category.query.all()
    for user in users:
        chance = random.randint(1, 100)
        if chance > 95:
            try:
                # Add image
                name = ''.join(random.choice(string.ascii_lowercase + ' -_') for x in range(1, random.randint(4, 30)))
                text = ''.join(random.choice(string.ascii_lowercase + ' -_') for x in range(1, random.randint(20, 200)))
                filename = 'http://i.imgur.com/7ZVtcSs.jpg'
                image = Image(user.id, categories[random.randint(0, len(categories)-1)], name, text, filename, filename)
                db.session.add(image)
                db.session.flush()
                image.save()
                image.save_thumbnail()
                image.save_exif()
                image.vote(1, user.id)
                db.session.commit()
            except:
                pass


if imageactions:
    users = User.query.all()
    images = Image.query.all()
    i = 0