def list_albums(request, album): albums = Album.objects.filter(parent=album).order_by("name") parents = [] images = None current_album = None if album is not None: current_album = Album.objects.get(id=album) images = Image.objects.filter(album=album) parents = list_parents(current_album) fotokonkurranse_album = Fotokonkurranse.objects.get().album context = { "album": album, "albums": albums, "albumpath": parents, "current_album": current_album, "images": images, "origin": request.get_full_path(), "all_users": sorted(User.sherpa_users(), key=lambda u: u.get_first_name()), "current_navigation": "albums", "image_search_length": settings.IMAGE_SEARCH_LENGTH, "fotokonkurranse_album": fotokonkurranse_album, "album_download_part_count": Album.DOWNLOAD_PART_COUNT, } return render(request, "central/admin/images/list_albums.html", context)
def list_albums(request, album): albums = Album.objects.filter(parent=album).order_by('name') parents = [] images = None current_album = None if album is not None: current_album = Album.objects.get(id=album) images = Image.objects.filter(album=album) parents = list_parents(current_album) fotokonkurranse_album = Fotokonkurranse.objects.get().album context = { 'album': album, 'albums': albums, 'albumpath': parents, 'current_album': current_album, 'images': images, 'origin': request.get_full_path(), 'all_users': sorted(User.sherpa_users(), key=lambda u: u.get_first_name()), 'current_navigation': 'albums', 'image_search_length': settings.IMAGE_SEARCH_LENGTH, 'fotokonkurranse_album': fotokonkurranse_album, 'album_download_part_count': Album.DOWNLOAD_PART_COUNT, } return render(request, 'common/admin/images/list_albums.html', context)
def search(request): context = { "origin": request.get_full_path(), "all_users": sorted(User.sherpa_users(), key=lambda u: u.get_first_name()), } if len(request.GET.get("q", "")) < settings.IMAGE_SEARCH_LENGTH: context.update({"too_short_query": True, "image_search_length": settings.IMAGE_SEARCH_LENGTH}) return render(request, "central/admin/images/search.html", context) albums, images = full_archive_search(request.GET["q"]) context.update({"albums": albums, "images": images, "search_query": request.GET["q"]}) return render(request, "central/admin/images/search.html", context)
def edit(request, site, version): active_site = Site.objects.get(id=site) version = Version.objects.get(id=version) users = sorted(User.sherpa_users(), key=lambda u: u.get_first_name()) context = { 'active_site': active_site, 'version': version, 'users': users, 'image_search_length': settings.IMAGE_SEARCH_LENGTH, 'widget_data': admin_context(active_site), } context.update(url_picker_context(active_site)) # Fake request.site to the edited site; this will make context processors behave accordingly request.site = active_site return render(request, 'common/admin/sites/articles/edit.html', context)
def search(request): context = { 'origin': request.get_full_path(), 'all_users': sorted(User.sherpa_users(), key=lambda u: u.get_first_name()) } if len(request.GET.get('q', '')) < settings.IMAGE_SEARCH_LENGTH: context.update({ 'too_short_query': True, 'image_search_length': settings.IMAGE_SEARCH_LENGTH, }) return render(request, 'common/admin/images/search.html', context) albums, images = full_archive_search(request.GET['q']) context.update({ 'albums': albums, 'images': images, 'search_query': request.GET['q']}) return render(request, 'common/admin/images/search.html', context)
def user_images(request, user): user = User.get_users().get(id=user) images = Image.objects.filter(uploader=user) if user == request.user: current_navigation = 'personal' else: current_navigation = '' context = { 'active_user': user, 'images': images, 'origin': request.get_full_path(), 'all_users': sorted(User.sherpa_users(), key=lambda u: u.get_first_name()), 'current_navigation': current_navigation, 'image_search_length': settings.IMAGE_SEARCH_LENGTH } return render(request, 'common/admin/images/user_images.html', context)
def user_images(request, user): user = User.get_users(include_pending=True).get(id=user) images = Image.objects.filter(uploader=user) if user == request.user: current_navigation = "personal" else: current_navigation = "" context = { "active_user": user, "images": images, "origin": request.get_full_path(), "all_users": sorted(User.sherpa_users(), key=lambda u: u.get_first_name()), "current_navigation": current_navigation, "image_search_length": settings.IMAGE_SEARCH_LENGTH, } return render(request, "central/admin/images/user_images.html", context)
def edit(request, site, version): try: active_site = Site.get_cached_by_id(site) version = Version.objects.get(id=version) users = sorted(User.sherpa_users(), key=lambda u: u.get_first_name()) context = { 'active_site': active_site, 'version': version, 'users': users, 'image_search_length': settings.IMAGE_SEARCH_LENGTH, 'widget_data': admin_context(active_site), 'category_choices': Article.CATEGORY_CHOICES, } context.update(url_picker_context(active_site)) # Fake request.site to the edited site; this will make context processors behave accordingly request.site = active_site return render(request, 'central/admin/sites/articles/edit.html', context) except Version.DoesNotExist: messages.warning(request, 'article_does_not_exist') return redirect('admin:sites.articles.list', active_site.id)
def image_details(request, image): image = Image.objects.get(id=image) parents = [] if image.album is None else list_parents(image.album) exif = json.loads(image.exif) try: taken = datetime.strptime(exif['DateTime'], '%Y:%m:%d %H:%M:%S') except Exception: taken = None tags = image.tags.all() context = { 'image': image, 'albumpath': parents, 'exif': exif, 'taken': taken, 'tags': tags, 'origin': request.get_full_path(), 'all_users': sorted(User.sherpa_users(), key=lambda u: u.get_first_name()), 'current_navigation': 'albums', 'thumb_sizes': settings.THUMB_SIZES, } return render(request, 'common/admin/images/image_details.html', context)
def image_details(request, image): image = Image.objects.get(id=image) parents = [] if image.album is None else list_parents(image.album) exif = json.loads(image.exif) try: taken = datetime.strptime(exif["DateTime"], "%Y:%m:%d %H:%M:%S") except Exception: taken = None tags = image.tags.all() context = { "image": image, "albumpath": parents, "exif": exif, "taken": taken, "tags": tags, "origin": request.get_full_path(), "all_users": sorted(User.sherpa_users(), key=lambda u: u.get_first_name()), "current_navigation": "albums", "thumb_sizes": settings.THUMB_SIZES, } return render(request, "central/admin/images/image_details.html", context)