예제 #1
0
def gallery():
    """Gallery Admin Page.

    Used for upload new photos to UpYun.

    Methods:
        GET and POST

    Args:
        GET:
            none

        PSOT(*for ajax only):
            files: [name: 'Filedata']

    Returns:
        GET:
            photos

        POST:
            status: {success: true/false, url: url}
    """
    if request.method == 'POST':
        re_helper = ReHelper()
        data = request.files['Filedata']
        filename = re_helper.r_slash(data.filename.encode('utf-8'))
        helper = UpYunHelper()
        url = helper.up_to_upyun('gallery', data, filename)

        if url:
            photo = Photo(url=url)
            photo.title = filename
            photo.save()

            return json.dumps({'success': 'true', 'url': url})
        else:
            return json.dumps({'success': 'false'})
    else:
        photos = Photo.objects.order_by('-publish_time')

        return render_template('admin/gallery/detail.html', photos=photos)
예제 #2
0
def diary_add_photo():
    """Admin Diary Add Photo Action.

    *for Ajax only.

    Methods:
        POST

    Args:
        files: [name: 'userfile']

    Returns:
        status: {success: true/false}
    """
    if request.method == 'POST':
        re_helper = ReHelper()
        data = request.files['userfile']
        filename = re_helper.r_slash(data.filename.encode('utf-8'))
        helper = UpYunHelper()
        url = helper.up_to_upyun('diary', data, filename)
        if url:
            return json.dumps({'success': 'true', 'url': url})
        else:
            return json.dumps({'success': 'false'})