def tp_translate(request, translation_project, dir_path): if not check_permission("view", request): raise PermissionDenied(_("You do not have rights to access translation mode.")) directory = get_object_or_404( Directory, pootle_path=translation_project.directory.pootle_path + dir_path ) project = translation_project.project language = translation_project.language is_terminology = project.is_terminology template_vars = { 'translation_project': translation_project, 'project': project, 'language': language, 'directory': directory, 'children': get_children(request, translation_project, directory, links_required='translate'), 'navitems': [navbar_dict.make_directory_navbar_dict( request, directory, links_required='translate', terminology=is_terminology)], 'feed_path': directory.pootle_path[1:], 'topstats': gentopstats_translation_project(translation_project), } return render_to_response("translation_project/tp_translate.html", template_vars, context_instance=RequestContext(request))
def GET(self, template_vars, request, translation_project, directory): template_vars = super(TPReviewView, self).GET(template_vars, request) request.permissions = get_matching_permissions( get_profile(request.user), translation_project.directory) project = translation_project.project language = translation_project.language is_terminology = project.is_terminology children = get_children(request, translation_project, directory, links_required='review') navitems = [navbar_dict.make_directory_navbar_dict( request, directory, links_required='review', terminology=is_terminology)] template_vars.update({ 'translation_project': translation_project, 'project': project, 'language': language, 'directory': directory, 'children': children, 'navitems': navitems, 'topstats': gentopstats_translation_project(translation_project), 'feed_path': directory.pootle_path[1:], }) return template_vars
def view(request, path): #FIXME: why do we have leading and trailing slashes in pootle_path? pootle_path = '/%s' % path directory = get_object_or_404(Directory, pootle_path=pootle_path) request.permissions = get_matching_permissions(get_profile(request.user), directory) if not check_permission('view', request): raise PermissionDenied template_vars = {'path': path, 'directory': directory} if check_permission('administrate', request): template_vars['form'] = handle_form(request, directory) template_vars['title'] = directory_to_title(request, directory) if request.GET.get('all', False): template_vars['notices'] = Notice.objects.filter(directory__pootle_path__startswith=directory.pootle_path).select_related('directory')[:30] else: template_vars['notices'] = Notice.objects.filter(directory=directory).select_related('directory')[:30] if not directory.is_language() and not directory.is_project(): try: request.translation_project = directory.get_translationproject() template_vars['navitems'] = [navbar_dict.make_directory_navbar_dict(request, directory)] template_vars['translation_project'] = request.translation_project template_vars['language'] = request.translation_project.language template_vars['project'] = request.translation_project.project except: pass return render_to_response('notices.html', template_vars, context_instance=RequestContext(request))
def tp_admin_files(request, translation_project): queryset = translation_project.stores.all() if 'template_update' in request.POST: translation_project.update_from_templates() request.POST = {} if 'scan_files' in request.POST: translation_project.scan_files() for store in translation_project.stores.exclude(file='').iterator(): store.sync(update_translation=True) store.update( update_structure=True, update_translation=True, conservative=False) request.POST = {} model_args = { 'title': _("Files"), 'submitname': "changestores", 'formid': "stores", 'navitems': [navbar_dict.make_directory_navbar_dict( request, translation_project.directory)], 'feed_path': translation_project.directory.pootle_path[1:], 'translation_project': translation_project, 'language': translation_project.language, 'project': translation_project.project, 'directory': translation_project.directory, } link = lambda instance: '<a href="%s/translate">%s</a>' % ( l('/wikitrans' + instance.pootle_path), instance.pootle_path[len(translation_project.pootle_path):]) return util.edit( request, 'translation_project/tp_admin_files.html', Store, model_args, link, linkfield='pootle_path', queryset=queryset, formset=StoreFormset, can_delete=True, extra=0)
def tp_admin_files(request, translation_project): queryset = translation_project.stores.all() try: template_translation_project = TranslationProject.objects.get(project=translation_project.project, language__code='templates') if 'template_update' in request.GET: convert_templates(template_translation_project, translation_project) except TranslationProject.DoesNotExist: pass if 'scan_files' in request.GET: scan_translation_project_files(translation_project) for store in translation_project.stores.exclude(file='').iterator(): store.sync(update_translation=True) store.update(update_structure=True, update_translation=True, conservative=False) model_args = { 'title': _("Files"), 'submitname': "changestores", 'formid': "stores", 'navitems': [navbar_dict.make_directory_navbar_dict(request, translation_project.directory)], 'feed_path': translation_project.directory.pootle_path[1:], 'translation_project': translation_project, 'language': translation_project.language, 'project': translation_project.project, 'directory': translation_project.directory, } link = "%s/translate/" return util.edit(request, 'translation_project/tp_admin_files.html', Store, model_args, link, linkfield='pootle_path', queryset=queryset, formset=StoreFormset, can_delete=True, extra=0)
def view(request, path): # FIXME: why do we have leading and trailing slashes in pootle_path? pootle_path = "/%s" % path directory = get_object_or_404(Directory, pootle_path=pootle_path) request.permissions = get_matching_permissions(get_profile(request.user), directory) if not check_permission("view", request): raise PermissionDenied template_vars = {"path": path, "directory": directory} if check_permission("administrate", request): template_vars["form"] = handle_form(request, directory) template_vars["title"] = directory_to_title(directory) if request.GET.get("all", False): template_vars["notices"] = Notice.objects.filter( directory__pootle_path__startswith=directory.pootle_path ).select_related("directory")[:30] else: template_vars["notices"] = Notice.objects.filter(directory=directory).select_related("directory")[:30] if not directory.is_language() and not directory.is_project(): try: request.translation_project = directory.get_translationproject() template_vars["navitems"] = [navbar_dict.make_directory_navbar_dict(request, directory)] template_vars["translation_project"] = request.translation_project template_vars["language"] = request.translation_project.language template_vars["project"] = request.translation_project.project except: pass return render_to_response("notices.html", template_vars, context_instance=RequestContext(request))
def GET(self, template_vars, request, translation_project, directory): template_vars = super(TPTranslateView, self).GET(template_vars, request) request.permissions = get_matching_permissions( get_profile(request.user), translation_project.directory) project = translation_project.project language = translation_project.language template_vars.update({ 'translation_project': translation_project, 'project': project, 'language': language, 'directory': directory, 'children': get_children(request, translation_project, directory, links_required='translate'), 'navitems': [ navbar_dict.make_directory_navbar_dict( request, directory, links_required='translate') ], 'feed_path': directory.pootle_path[1:], 'topstats': gentopstats_translation_project(translation_project), }) return template_vars
def GET(self, template_vars, request, translation_project, directory): template_vars = super(ProjectIndexView, self).GET(template_vars, request) request.permissions = get_matching_permissions( get_profile(request.user), translation_project.directory) state = dispatch.ProjectIndexState(request.GET) project = translation_project.project language = translation_project.language template_vars.update({ 'translation_project': translation_project, 'project': project, 'language': language, 'directory': directory, 'children': get_children(request, translation_project, directory), 'navitems': [navbar_dict.make_directory_navbar_dict(request, directory)], 'stats_headings': get_stats_headings(), 'editing': state.editing, 'topstats': gentopstats_translation_project(translation_project), 'feed_path': directory.pootle_path[1:], }) return template_vars
def view(request, path): #FIXME: why do we have leading and trailing slashes in pootle_path? pootle_path = '/%s' % path directory = get_object_or_404(Directory, pootle_path=pootle_path) request.permissions = get_matching_permissions(get_profile(request.user), directory) if not check_permission('view', request): raise PermissionDenied template_vars = {'path': path, 'directory': directory} # Find language and project defaults, passed to handle_form proj = None lang = None if not directory.is_language() and not directory.is_project(): translation_project = directory.translation_project lang = translation_project.language proj = translation_project.project else: if directory.is_language(): lang = directory.language proj = None if directory.is_project(): lang = None proj = directory.project if check_permission('administrate', request): # Thus, form is only set for the template if the user has # 'administrate' permission template_vars['form'] = handle_form(request, directory, proj, lang, template_vars) template_vars['title'] = directory_to_title(directory) else: template_vars['form'] = None if request.GET.get('all', False): template_vars['notices'] = Notice.objects.filter( directory__pootle_path__startswith=directory.pootle_path ).select_related('directory')[:30] else: template_vars['notices'] = Notice.objects.filter( directory=directory).select_related('directory')[:30] if not directory.is_language() and not directory.is_project(): request.translation_project = directory.translation_project template_vars['navitems'] = [ navbar_dict.make_directory_navbar_dict(request, directory) ] template_vars['translation_project'] = request.translation_project template_vars['language'] = request.translation_project.language template_vars['project'] = request.translation_project.project return render_to_response('notices.html', template_vars, context_instance=RequestContext(request))
def tp_admin_files(request, translation_project): queryset = translation_project.stores.all() if 'template_update' in request.POST: translation_project.update_from_templates() request.POST = {} if 'scan_files' in request.POST: translation_project.scan_files() for store in translation_project.stores.exclude(file='').iterator(): store.sync(update_translation=True) store.update(update_structure=True, update_translation=True, conservative=False) request.POST = {} model_args = { 'title': _("Files"), 'submitname': "changestores", 'formid': "stores", 'navitems': [ navbar_dict.make_directory_navbar_dict( request, translation_project.directory) ], 'feed_path': translation_project.directory.pootle_path[1:], 'translation_project': translation_project, 'language': translation_project.language, 'project': translation_project.project, 'directory': translation_project.directory, } link = lambda instance: '<a href="%s/translate">%s</a>' % (l( instance.pootle_path), instance.pootle_path[len(translation_project. pootle_path):]) return util.edit(request, 'translation_project/tp_admin_files.html', Store, model_args, link, linkfield='pootle_path', queryset=queryset, formset=StoreFormset, can_delete=True, extra=0)
def tp_admin_permissions(request, translation_project): language = translation_project.language project = translation_project.project template_vars = { 'translation_project': translation_project, "project": project, "language": language, "directory": translation_project.directory, "navitems": [navbar_dict.make_directory_navbar_dict(request, translation_project.directory)], "feed_path": translation_project.pootle_path[1:], } return admin_permissions(request, translation_project.directory, "translation_project/tp_admin_permissions.html", template_vars)
def GET(self, template_vars, request, translation_project, directory): template_vars = super(ProjectIndexView, self).GET(template_vars, request) request.permissions = get_matching_permissions(get_profile(request.user), translation_project.directory) state = dispatch.ProjectIndexState(request.GET) project = translation_project.project language = translation_project.language template_vars.update({ 'translation_project': translation_project, 'project': project, 'language': language, 'directory': directory, 'children': get_children(request, translation_project, directory), 'navitems': [navbar_dict.make_directory_navbar_dict(request, directory)], 'stats_headings': get_stats_headings(), 'editing': state.editing, 'topstats': gentopstats_translation_project(translation_project), 'feed_path': directory.pootle_path[1:], }) return template_vars
def tp_admin_permissions(request, translation_project): language = translation_project.language project = translation_project.project template_vars = { 'translation_project': translation_project, "project": project, "language": language, "directory": translation_project.directory, "navitems": [ navbar_dict.make_directory_navbar_dict( request, translation_project.directory) ], "feed_path": translation_project.pootle_path[1:], } return admin_permissions(request, translation_project.directory, "translation_project/tp_admin_permissions.html", template_vars)