from django.middleware.gzip import GZipMiddleware
from django.utils.decorators import decorator_from_middleware
from django.utils.encoding import smart_unicode
-from django.utils.translation import ugettext_lazy as _
+from django.utils.translation import ugettext as _
from django.views.decorators.http import require_POST, require_GET
from django.views.generic.simple import direct_to_template
doc = Chunk.get(slug, chunk)
except (Chunk.MultipleObjectsReturned, Chunk.DoesNotExist):
raise Http404
- docA = doc.at_revision(revA).materialize()
+ # allow diff from the beginning
+ if revA:
+ docA = doc.at_revision(revA).materialize()
+ else:
+ docA = ""
docB = doc.at_revision(revB).materialize()
return http.HttpResponse(nice_diff.html_diff_table(docA.splitlines(),
"description": change.description,
"author": change.author_str(),
"date": change.created_at,
- "publishable": "Publishable\n" if change.publishable else "",
+ "publishable": _("Publishable") + "\n" if change.publishable else "",
"tag": ',\n'.join(unicode(tag) for tag in change.tags.all()),
})
return JSONResponse(changes)
@require_POST
-@ajax_require_permission('wiki.can_pubmark')
+@ajax_require_permission('catalogue.can_pubmark')
def pubmark(request, slug, chunk=None):
form = forms.DocumentPubmarkForm(request.POST, prefix="pubmark")
if form.is_valid():
publishable = form.cleaned_data['publishable']
change = doc.at_revision(revision)
if publishable != change.publishable:
- change.publishable = publishable
- change.save()
+ change.set_publishable(publishable)
return JSONResponse({"message": _("Revision marked")})
else:
return JSONResponse({"message": _("Nothing changed")})