urls.py 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. from django.conf import settings
  2. from django.conf.urls.defaults import *
  3. from models import *
  4. from darkroom import views as dr_views
  5. from darkroom.feeds import LatestPhotosFeed
  6. # Number of random images from the gallery to display.
  7. SAMPLE_SIZE = ":%s" % getattr(settings, "GALLERY_SAMPLE_SIZE", 5)
  8. # galleries
  9. gallery_args = {
  10. "date_field": "published_on",
  11. "allow_empty": True,
  12. "queryset": Gallery.objects.published(),
  13. "extra_context": {"sample_size": SAMPLE_SIZE},
  14. }
  15. urlpatterns = patterns(
  16. "django.views.generic.date_based",
  17. url(
  18. r"^gallery/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/(?P<slug>[\-\d\w]+)/$",
  19. "object_detail",
  20. {
  21. "date_field": "published_on",
  22. "slug_field": "slug",
  23. "queryset": Gallery.objects.published(),
  24. "extra_context": {"sample_size": SAMPLE_SIZE},
  25. },
  26. name="dr-gallery-detail",
  27. ),
  28. url(
  29. r"^gallery/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/$",
  30. "archive_day",
  31. gallery_args,
  32. name="dr-gallery-index-day",
  33. ),
  34. url(
  35. r"^gallery/(?P<year>\d{4})/(?P<month>[a-z]{3})/$",
  36. "archive_month",
  37. gallery_args,
  38. name="dr-gallery-index-month",
  39. ),
  40. url(
  41. r"^gallery/(?P<year>\d{4})/$",
  42. "archive_year",
  43. gallery_args,
  44. name="dr-gallery-index-year",
  45. ),
  46. url(r"^galleries/?$", "archive_index", gallery_args, name="dr-gallery-index"),
  47. )
  48. # urlpatterns += patterns('django.views.generic.list_detail',
  49. # url(r'^galleries/(?P<slug>[\-\d\w]+)/$', 'object_detail', {'slug_field': 'slug', 'queryset': Gallery.objects.filter(published=True), 'extra_context':{'sample_size':SAMPLE_SIZE}}, name='dr-gallery'),
  50. # url(r'^gallery/page/(?P<page>[0-9]+)/$', 'object_list', {'queryset': Gallery.objects.filter(published=True), 'allow_empty': True, 'paginate_by': 5, 'extra_context':{'sample_size':SAMPLE_SIZE}}, name='dr-gallery-list'),
  51. # )
  52. # photographs
  53. photo_args = {
  54. "date_field": "published_on",
  55. "allow_empty": True,
  56. "queryset": Photo.objects.published(),
  57. }
  58. urlpatterns += patterns(
  59. "django.views.generic.date_based",
  60. url(
  61. r"^photos/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/(?P<slug>[\-\d\w]+)/$",
  62. "object_detail",
  63. {
  64. "date_field": "published_on",
  65. "slug_field": "slug",
  66. "queryset": Photo.objects.published(),
  67. },
  68. name="dr-photo-detail",
  69. ),
  70. url(
  71. r"^photos/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/$",
  72. "archive_day",
  73. photo_args,
  74. name="dr-photo-archive-day",
  75. ),
  76. url(
  77. r"^photos/(?P<year>\d{4})/(?P<month>[a-z]{3})/$",
  78. "archive_month",
  79. photo_args,
  80. name="dr-photo-archive-month",
  81. ),
  82. url(
  83. r"^photos/(?P<year>\d{4})/$",
  84. "archive_year",
  85. photo_args,
  86. name="dr-photo-archive-year",
  87. ),
  88. url(r"^photos/$", "archive_index", photo_args, name="dr-photo-archive"),
  89. )
  90. # urlpatterns += patterns('django.views.generic.list_detail',
  91. # url(r'^photos/(?P<slug>[\-\d\w]+)/$', 'object_detail', {'slug_field': 'slug', 'queryset': Photo.objects.filter(published=True)}, name='dr-photo-no-date'),
  92. # url(r'^photos/page/(?P<page>[0-9]+)/$', 'object_list', {'queryset': Photo.objects.filter(published=True), 'allow_empty': True, 'paginate_by': 20}, name='dr-photo-list'),
  93. # )
  94. # graphics
  95. graphic_args = {
  96. "date_field": "created",
  97. "allow_empty": True,
  98. "queryset": Graphic.objects.filter(published=True),
  99. }
  100. urlpatterns += patterns(
  101. "django.views.generic.date_based",
  102. url(
  103. r"^graphics/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/(?P<slug>[\-\d\w]+)/$",
  104. "object_detail",
  105. {
  106. "date_field": "created",
  107. "slug_field": "slug",
  108. "queryset": Photo.objects.filter(published=True),
  109. },
  110. name="dr-graphic-detail",
  111. ),
  112. url(
  113. r"^graphics/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/$",
  114. "archive_day",
  115. photo_args,
  116. name="dr-graphic-index--day",
  117. ),
  118. url(
  119. r"^graphics/(?P<year>\d{4})/(?P<month>[a-z]{3})/$",
  120. "archive_month",
  121. photo_args,
  122. name="dr-graphic-index-month",
  123. ),
  124. url(
  125. r"^graphics/(?P<year>\d{4})/$",
  126. "archive_year",
  127. photo_args,
  128. name="dr-graphic-index-year",
  129. ),
  130. url(r"^graphics/$", "archive_index", photo_args, name="dr-graphic-index"),
  131. )
  132. urlpatterns += patterns(
  133. "darkroom.views",
  134. url(r"^photos.xml", LatestPhotosFeed(), name="nr-photo-feed"),
  135. url(r"^$", view=dr_views.index, name="dr-index"),
  136. url(r"^movies/$", view=dr_views.movie_index, name="dr-movie-index"),
  137. url(
  138. r"^movies/(?P<slug>[\-\d\w]+)/$",
  139. view=dr_views.movie_detail,
  140. name="dr-movie-detail",
  141. ),
  142. url(r"^slideshows/$", view=dr_views.slideshow_index, name="dr-slideshow-index"),
  143. url(
  144. r"^slideshows/(?P<slug>[\-\d\w]+)/$",
  145. view=dr_views.slideshow_detail,
  146. name="dr-slideshow-detail",
  147. ),
  148. url(
  149. r"^photos/(?P<slug>[\-\d\w]+)/lightbox/$",
  150. view=dr_views.photo_lightbox,
  151. name="dr-photo-lightbox",
  152. ),
  153. # url(r'^webcams/$', view=dr_views.webcam_index, name="dr-webcam-index"),
  154. url(
  155. r"^webcams/(?P<slug>[\-\d\w]+)/$",
  156. view=dr_views.webcam_detail,
  157. name="dr-webcam-detail",
  158. ),
  159. )