Code

Ticket #12699: stableversion.diff

File stableversion.diff, 2.2 KB (added by claudep, 4 years ago)

Handle a 'stable' version in djangodocs

Line 
1Index: djangodocs/views.py
2===================================================================
3--- djangodocs/views.py (révision 13018)
4+++ djangodocs/views.py (copie de travail)
5@@ -12,7 +12,7 @@
6     return HttpResponseRedirect(
7         urlresolvers.reverse('document-index', kwargs={
8             'lang': 'en',
9-            'version': '1.1',
10+            'version': settings.STABLE_VERSION,
11         })
12     )
13     
14@@ -20,17 +20,21 @@
15     return HttpResponseRedirect(
16         urlresolvers.reverse('document-index', kwargs={
17             'lang': lang,
18-            'version': '1.1',
19+            'version': settings.STABLE_VERSION,
20         })
21     )
22 
23+def check_version(version):
24+    return version == 'stable' and settings.STABLE_VERSION or version
25+
26 def get_docroot(lang, version):
27-    docroot = Path(settings.DOCS_PICKLE_ROOT).child(lang, version, "_build", "json")
28+    docroot = Path(settings.DOCS_PICKLE_ROOT).child(lang, check_version(version), "_build", "json")
29     if not docroot.exists():
30         raise Http404()
31     return docroot
32 
33 def document(request, lang, version, url):
34+    version = check_version(version)
35     docroot = get_docroot(lang, version)
36     
37     # First look for <bits>/index.fpickle, then for <bits>.fpickle
38@@ -86,6 +90,7 @@
39     return response
40 
41 def search(request, lang, version):
42+    version = check_version(version)
43     docroot = get_docroot(lang, version)
44     
45     # Remove the 'cof' GET variable from the query string so that the page
46@@ -102,4 +107,4 @@
47         'env': simplejson.load(open(docroot.child('globalcontext.json'), 'rb')),
48         'home': urlresolvers.reverse('document-index', kwargs={'lang':lang, 'version':version}),
49         'search': urlresolvers.reverse('document-search', kwargs={'lang':lang, 'version':version}),
50-    }))
51\ No newline at end of file
52+    }))
53Index: djangodocs/settings.py
54===================================================================
55--- djangodocs/settings.py      (révision 13018)
56+++ djangodocs/settings.py      (copie de travail)
57@@ -8,4 +8,5 @@
58 ROOT_URLCONF = 'djangodocs.urls'
59 CACHE_MIDDLEWARE_KEY_PREFIX = 'djangodocs'
60 
61-DOCS_PICKLE_ROOT = "/home/djangodocs/"
62\ No newline at end of file
63+STABLE_VERSION = "1.1"
64+DOCS_PICKLE_ROOT = "/home/djangodocs/"