Exemplo n.º 1
0
def picture_carousel(request, key):
    if request.user.is_authenticated():
        return object_list(request,
                           Picture.all().filter("album", db.Key(key)),
                           template_name='picture_carousel.html')
    else:
        return HttpResponseRedirect('/account/login/')
Exemplo n.º 2
0
def clear_old_picture(request):
    """
        Функция для выполнения в cron
        Удаляет изображения старше * дней (значение берется из настроек в БД)
    """
    try:
        days = Settings.all().get().days_for_old_picture
    except:
        days = getattr(settings, 'DAYS_FOR_OLD_PICTURE', 30)
    query = Picture.all().filter(
        "submitted_date <",
        datetime.datetime.today() - datetime.timedelta(days=days))
    response = HttpResponse()
    for pic in query:
        response.write("<br/>Delete: " + str(pic.name))

        # код для контролирования кол-ва занимаемого места
        user_free_size = User.get(pic.submitter.key())
        user_free_size.free_size = user_free_size.free_size + len(
            pic.data) + len(pic.data_small) + len(pic.data_cover)
        user_free_size.put()

        pic.delete()
    response.write("<br/>Delete END: " + str(len(query)))
    return response
Exemplo n.º 3
0
def index():
    pictures = Picture.all().filter('status = ', 1)
    return render_template(
        'frontend/index.html',
        pictures=pictures,
        title=u'Авторская галлерея',
        keywords=
        u"жанр, фэнтези, галереи, арт, художник, аватары, картинки, рисунки, в стиле фэнтези, драконы, эльфы, оборотни, абстратное фентези",
        description=
        u"галереи фэнтези, авторские работы, профессиональные авторские рисунки в стиле фентези"
    )
Exemplo n.º 4
0
def review_picture(request, key, name):
    picture = Picture.get(db.Key(key))
    query_list_image = Picture.all().filter("album", picture.album).fetch(999)
    try:
        next = query_list_image[query_list_image.index(picture)+1]
    except:
        next = False
    try:
        if not query_list_image.index(picture)==0:
            last = query_list_image[query_list_image.index(picture)-1]
        else:
            last = False
    except:
        last = False
    return render_to_response('view_picture.html', {'picture':picture, 'next':next, 'last':last, 'user': request.user})
Exemplo n.º 5
0
def delete_album_ok(request, key):
    """ при успешном удаление альбома, освобождаем свободное место пользователя """
    if request.user.is_authenticated():
        pictures = Picture.all().filter('album', db.Key(key)).fetch(999)
        size = 0
        for pic in pictures:
            size = size + len(pic.data) + len(pic.data_cover) + len(pic.data_small)
            pic.delete()
        # код для контролирования кол-ва занимаемого места
        user_free_size = User.get(request.user.key())
        user_free_size.free_size = user_free_size.free_size + size
        user_free_size.put()
        return HttpResponseRedirect('/gallery')
    else:
        return HttpResponseRedirect('/account/login/')
Exemplo n.º 6
0
def show_album(request, key):
    """ Выводит изображения альбома. Выборку делаем по ключу. """
    if request.user.is_authenticated():
        pic_list = Picture.all().filter("album", db.Key(key))
        paginator = Paginator(pic_list, 10)
        try:
            page = int(request.GET.get('page', '1'))
        except ValueError:
            page = 1
        try:
            pic = paginator.page(page)
        except (EmptyPage, InvalidPage):
            pic = paginator.page(paginator.num_pages)
        return render_to_response('picture_list.html', {"pics": pic, "user":request.user})
    else:
        return HttpResponseRedirect('/account/login/')
Exemplo n.º 7
0
def delete_album_ok(request, key):
    """ при успешном удаление альбома, освобождаем свободное место пользователя """
    if request.user.is_authenticated():
        pictures = Picture.all().filter('album', db.Key(key)).fetch(999)
        size = 0
        for pic in pictures:
            size = size + len(pic.data) + len(pic.data_cover) + len(
                pic.data_small)
            pic.delete()
        # код для контролирования кол-ва занимаемого места
        user_free_size = User.get(request.user.key())
        user_free_size.free_size = user_free_size.free_size + size
        user_free_size.put()
        return HttpResponseRedirect('/gallery')
    else:
        return HttpResponseRedirect('/account/login/')
Exemplo n.º 8
0
def show_album(request, key):
    """ Выводит изображения альбома. Выборку делаем по ключу. """
    if request.user.is_authenticated():
        pic_list = Picture.all().filter("album", db.Key(key))
        paginator = Paginator(pic_list, 10)
        try:
            page = int(request.GET.get('page', '1'))
        except ValueError:
            page = 1
        try:
            pic = paginator.page(page)
        except (EmptyPage, InvalidPage):
            pic = paginator.page(paginator.num_pages)
        return render_to_response('picture_list.html', {
            "pics": pic,
            "user": request.user
        })
    else:
        return HttpResponseRedirect('/account/login/')
Exemplo n.º 9
0
def review_picture(request, key, name):
    picture = Picture.get(db.Key(key))
    query_list_image = Picture.all().filter("album", picture.album).fetch(999)
    try:
        next = query_list_image[query_list_image.index(picture) + 1]
    except:
        next = False
    try:
        if not query_list_image.index(picture) == 0:
            last = query_list_image[query_list_image.index(picture) - 1]
        else:
            last = False
    except:
        last = False
    return render_to_response('view_picture.html', {
        'picture': picture,
        'next': next,
        'last': last,
        'user': request.user
    })
Exemplo n.º 10
0
def clear_old_picture(request):
    """
        Функция для выполнения в cron
        Удаляет изображения старше * дней (значение берется из настроек в БД)
    """
    try:
        days = Settings.all().get().days_for_old_picture
    except:
        days = getattr(settings, 'DAYS_FOR_OLD_PICTURE', 30)
    query = Picture.all().filter("submitted_date <", datetime.datetime.today() - datetime.timedelta(days=days))
    response = HttpResponse()
    for pic in query:
        response.write("<br/>Delete: "+str(pic.name))

        # код для контролирования кол-ва занимаемого места
        user_free_size = User.get(pic.submitter.key())
        user_free_size.free_size = user_free_size.free_size + len(pic.data) + len(pic.data_small) + len(pic.data_cover)
        user_free_size.put()

        pic.delete()
    response.write("<br/>Delete END: "+str(len(query)))
    return response
Exemplo n.º 11
0
def pictures():
    pictures = Picture.all()
    return render_template('admin/pictures/index.html', pictures=pictures, title=u'Рисунки')
Exemplo n.º 12
0
def picture(id):
    key = db.Key(id)
    picture = Picture.all().filter('status = ', 1).filter('__key__ = ',
                                                          key).get()
    return render_template('frontend/picture.html', picture=picture)
Exemplo n.º 13
0
def pictures():
    pictures = Picture.all()
    return render_template('admin/pictures/index.html',
                           pictures=pictures,
                           title=u'Рисунки')
Exemplo n.º 14
0
def picture(id):
    key = db.Key(id)
    picture = Picture.all().filter('status = ', 1).filter('__key__ = ', key).get()
    return render_template('frontend/picture.html', picture=picture)
Exemplo n.º 15
0
def index():
    pictures = Picture.all().filter('status = ', 1)
    return render_template('frontend/index.html', pictures=pictures, title=u'Авторская галлерея',
                            keywords=u"жанр, фэнтези, галереи, арт, художник, аватары, картинки, рисунки, в стиле фэнтези, драконы, эльфы, оборотни, абстратное фентези",
                            description=u"галереи фэнтези, авторские работы, профессиональные авторские рисунки в стиле фентези")
Exemplo n.º 16
0
def picture_carousel(request, key):
    if request.user.is_authenticated():
        return object_list(request, Picture.all().filter("album", db.Key(key)), template_name='picture_carousel.html')
    else:
        return HttpResponseRedirect('/account/login/')