def edit_dictionary(request, project, lang): prj = get_project(request, project) lang = get_object_or_404(Language, code=lang) word = get_object_or_404( Dictionary, project=prj, language=lang, id=request.GET.get('id') ) if request.method == 'POST': form = WordForm(request.POST) if form.is_valid(): word.source = form.cleaned_data['source'] word.target = form.cleaned_data['target'] word.save() return HttpResponseRedirect(reverse( 'show_dictionary', kwargs={'project': prj.slug, 'lang': lang.code} )) else: form = WordForm( initial={'source': word.source, 'target': word.target} ) return render_to_response('edit_dictionary.html', RequestContext(request, { 'title': _('%(language)s dictionary for %(project)s') % {'language': lang, 'project': prj}, 'project': prj, 'language': lang, 'form': form, }))
def edit_dictionary(request, project, lang): prj = get_project(request, project) lang = get_object_or_404(Language, code=lang) word = get_object_or_404(Dictionary, project=prj, language=lang, id=request.GET.get("id")) if request.method == "POST": form = WordForm(request.POST) if form.is_valid(): word.source = form.cleaned_data["source"] word.target = form.cleaned_data["target"] word.save() return HttpResponseRedirect(reverse("show_dictionary", kwargs={"project": prj.slug, "lang": lang.code})) else: form = WordForm(initial={"source": word.source, "target": word.target}) return render_to_response( "edit_dictionary.html", RequestContext( request, { "title": _("%(language)s dictionary for %(project)s") % {"language": lang, "project": prj}, "project": prj, "language": lang, "form": form, }, ), )
def show_dictionary(request, project, lang): prj = get_project(request, project) lang = get_object_or_404(Language, code=lang) if (request.method == 'POST' and request.user.has_perm('trans.add_dictionary')): form = WordForm(request.POST) if form.is_valid(): Dictionary.objects.create( project=prj, language=lang, source=form.cleaned_data['source'], target=form.cleaned_data['target'] ) return HttpResponseRedirect(request.get_full_path()) else: form = WordForm() uploadform = DictUploadForm() words = Dictionary.objects.filter( project=prj, language=lang ).order_by('source') limit = request.GET.get('limit', 25) page = request.GET.get('page', 1) letterform = LetterForm(request.GET) if letterform.is_valid() and letterform.cleaned_data['letter'] != '': words = words.filter( source__istartswith=letterform.cleaned_data['letter'] ) letter = letterform.cleaned_data['letter'] else: letter = '' paginator = Paginator(words, limit) try: words = paginator.page(page) except PageNotAnInteger: # If page is not an integer, deliver first page. words = paginator.page(1) except EmptyPage: # If page is out of range (e.g. 9999), deliver last page of results. words = paginator.page(paginator.num_pages) return render_to_response('dictionary.html', RequestContext(request, { 'title': _('%(language)s dictionary for %(project)s') % {'language': lang, 'project': prj}, 'project': prj, 'language': lang, 'words': words, 'form': form, 'uploadform': uploadform, 'letterform': letterform, 'letter': letter, }))
def show_dictionary(request, project, lang): prj = get_project(request, project) lang = get_object_or_404(Language, code=lang) if request.method == "POST" and request.user.has_perm("trans.add_dictionary"): form = WordForm(request.POST) if form.is_valid(): Dictionary.objects.create( project=prj, language=lang, source=form.cleaned_data["source"], target=form.cleaned_data["target"] ) return HttpResponseRedirect(request.get_full_path()) else: form = WordForm() uploadform = DictUploadForm() words = Dictionary.objects.filter(project=prj, language=lang).order_by("source") limit = request.GET.get("limit", 25) page = request.GET.get("page", 1) letterform = LetterForm(request.GET) if letterform.is_valid() and letterform.cleaned_data["letter"] != "": words = words.filter(source__istartswith=letterform.cleaned_data["letter"]) letter = letterform.cleaned_data["letter"] else: letter = "" paginator = Paginator(words, limit) try: words = paginator.page(page) except PageNotAnInteger: # If page is not an integer, deliver first page. words = paginator.page(1) except EmptyPage: # If page is out of range (e.g. 9999), deliver last page of results. words = paginator.page(paginator.num_pages) return render_to_response( "dictionary.html", RequestContext( request, { "title": _("%(language)s dictionary for %(project)s") % {"language": lang, "project": prj}, "project": prj, "language": lang, "words": words, "form": form, "uploadform": uploadform, "letterform": letterform, "letter": letter, }, ), )
def edit_dictionary(request, project, lang): prj = get_project(request, project) lang = get_object_or_404(Language, code=lang) word = get_object_or_404( Dictionary, project=prj, language=lang, id=request.GET.get('id') ) if request.method == 'POST': form = WordForm(request.POST) if form.is_valid(): word.edit( request, form.cleaned_data['source'], form.cleaned_data['target'] ) return redirect( 'show_dictionary', project=prj.slug, lang=lang.code ) else: form = WordForm( initial={'source': word.source, 'target': word.target} ) last_changes = Change.objects.filter( dictionary=word, ).order_by('-timestamp')[:10] return render_to_response('edit_dictionary.html', RequestContext(request, { 'title': _('%(language)s dictionary for %(project)s') % {'language': lang, 'project': prj}, 'project': prj, 'language': lang, 'form': form, 'last_changes': last_changes, 'last_changes_url': urlencode({ 'project': prj.slug, 'lang': lang.code, 'glossary': 1 }), }))