Exemplo n.º 1
0
def link_local_pics(area, place, pics_name_type):

    #首先通过英文名称查找
    findit = True
    count = 0
    area_dir_path = os.path.join(settings.MEDIA_ROOT, 'uploads/', area.en_name)
    file_ext = None
    while findit:
        count += 1
        if pics_name_type == 'en':
            file_name = convert_name(place.en_name + '_%d' % count)
        elif pics_name_type == 'zh':
            file_name = convert_name(place.zh_name + '_%d' % count)

        full_path = area_dir_path + '/' + file_name

        if os.path.isfile(full_path + '.jpg'):
            file_ext = '.jpg'
        elif os.path.isfile(full_path + '.jpeg'):
            file_ext = '.jpeg'
        else:
            findit = False

        if findit:
            url = settings.MEDIA_URL + 'uploads/' + area.en_name + '/' + file_name + file_ext
            pic = Picture(in_place=place, file_name = file_name + file_ext, url = url)
            pic.save()
        else:
            print 'can not find %s' % file_name
    return count - 1
Exemplo n.º 2
0
def link_local_pics(area, place, pics_name_type):

    #首先通过英文名称查找
    findit = True
    count = 0
    area_dir_path = os.path.join(settings.MEDIA_ROOT, 'uploads/', area.en_name)
    file_ext = None
    while findit:
        count += 1
        if pics_name_type == 'en':
            file_name = convert_name(place.en_name + '_%d' % count)
        elif pics_name_type == 'zh':
            file_name = convert_name(place.zh_name + '_%d' % count)

        full_path = area_dir_path + '/' + file_name

        if os.path.isfile(full_path + '.jpg'):
            file_ext = '.jpg'
        elif os.path.isfile(full_path + '.jpeg'):
            file_ext = '.jpeg'
        else:
            findit = False

        if findit:
            url = settings.MEDIA_URL + 'uploads/' + area.en_name + '/' + file_name + file_ext
            pic = Picture(in_place=place,
                          file_name=file_name + file_ext,
                          url=url)
            pic.save()
        else:
            print 'can not find %s' % file_name
    return count - 1
Exemplo n.º 3
0
def handle_topic_data(item, type):
    #处理cover_pic
    if type == 'en':
        file_name = convert_name(item['cover_pic'])
    elif type == 'zh':
        file_name = convert_name(item['cover_pic'])
    item['cover_pic'] = file_name
    return item
Exemplo n.º 4
0
def handle_topic_data(item, type):
    #处理cover_pic
    if type == 'en':
        file_name = convert_name(item['cover_pic'])
    elif type == 'zh':
        file_name = convert_name(item['cover_pic'])
    item['cover_pic'] = file_name
    return item
Exemplo n.º 5
0
def generate_images(request, city, data):
    """生成不同版本图片"""
    v.dataDict = simplejson.loads(data)
    v.cityDict = simplejson.loads(city)
    type = v.cityDict['type']
    places = v.dataDict[0]
    area = Area.objects.get(zh_name=v.cityDict['zh_name'])
    resource_path = os.path.join(settings.MEDIA_ROOT, 'uploads', area.en_name)
    area_dir_path = os.path.join(settings.STATIC_ROOT, 'cities', area.en_name)
    if not os.path.isdir(area_dir_path):
        os.mkdir(area_dir_path)
    export_path = os.path.join(area_dir_path, 'images')
    if not os.path.isdir(export_path):
        os.mkdir(export_path)
    for place in places:
        #首先通过英文名称查找
        findit = True
        count = 0
        while findit:
            count += 1
            if type == 'en':
                file_name = convert_name(place['en_name'] + '_%d' % count)
            elif type == 'zh':
                file_name = convert_name(place['zh_name'] + '_%d' % count)
            full_path = resource_path + '/' + file_name
            if os.path.isfile(full_path + '.jpg'):
                file_ext = '.jpg'
            elif os.path.isfile(full_path + '.jpeg'):
                file_ext = '.jpeg'
            else:
                findit = False

            if findit:
                for path in [
                        version_generator(full_path + file_ext,
                                          version,
                                          force=True)
                        for version in ['thumbnail', 'small', 'medium', 'big']
                ]:
                    try:
                        shutil.move(path, export_path)
                    except:
                        raise IOError

    return simplejson.dumps({'message': 'ok'})
Exemplo n.º 6
0
def generate_images(request,city, data):
    """生成不同版本图片"""
    v.dataDict = simplejson.loads(data)
    v.cityDict = simplejson.loads(city)
    type = v.cityDict['type']
    places = v.dataDict[0]
    area = Area.objects.get(zh_name=v.cityDict['zh_name'])
    resource_path = os.path.join(settings.MEDIA_ROOT, 'uploads', area.en_name)
    area_dir_path = os.path.join(settings.STATIC_ROOT,'cities',area.en_name)
    if not os.path.isdir(area_dir_path):
        os.mkdir(area_dir_path)
    export_path = os.path.join(area_dir_path,'images')
    if not os.path.isdir(export_path):
        os.mkdir(export_path)
    for place in places:
        #首先通过英文名称查找
        findit = True
        count = 0
        while findit:
            count += 1
            if type == 'en':
                file_name = convert_name(place['en_name'] + '_%d' % count)
            elif type == 'zh':
                file_name = convert_name(place['zh_name'] + '_%d' % count)
            full_path = resource_path + '/' + file_name
            if os.path.isfile(full_path + '.jpg'):
                file_ext = '.jpg'
            elif os.path.isfile(full_path + '.jpeg'):
                file_ext = '.jpeg'
            else:
                findit = False

            if findit:
                for path in [version_generator(full_path+file_ext, version, force=True) for version in ['thumbnail', 'small', 'medium', 'big']]:
                    try:
                        shutil.move(path, export_path)
                    except:
                        raise IOError

    return simplejson.dumps({'message':'ok'})