def news_page(request, id): news = get_news_or_404(id) if news.hidden and not request.user.has_perm('news.view_hidden'): # soon(02.08.12, 14:17) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() return direct_to_template(request, 'news/news_page.hdt', {'news': news})
def news_page(request, id): news = get_news_or_404(id) if news.hidden and not request.user.has_perm('news.view_hidden'): # soon(02.08.12, 14:17) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() return direct_to_template( request, 'news/news_page.hdt', { 'news': news } )
def edit_news(request, id, preview = False): # FIXME # Если послать поддельный POST, то юзер без прав(на определенный раздел) # сможет добавить новость # soon(30.08.12, 11:11) # См. выше user = request.user if not ( user.has_perm('news.add_news') or \ user.has_perm('news.add_schoolnews') or \ user.has_perm('news.add_sitenews') or \ user.has_perm('news.add_hidden') or \ user.has_perm('news.add_only_hidden') ): # soon(02.09.12, 15:32) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() news = get_news_or_404(id) if news.hidden: if not ( user.has_perm('news.add_hidden') or \ user.has_perm('news.add_only_hidden') ): # soon(02.09.12, 14:13) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() # FIXME: # Если длинна будет нулевая if request.method == 'POST': errors = {'title': False, 'text_block': False} title = request.POST['input_title'] if len(title) > 100: errors['title'] = True text_block = request.POST['input_text_block'] if len(text_block) > 1000: errors['text_block'] = True if not True in errors.values(): schoolNews = 'school' in request.POST.keys() if schoolNews and not user.has_perm('news.add_schoolnews'): # soon(02.09.12, 14:07) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() siteNews = 'site' in request.POST.keys() if siteNews and not user.has_perm('news.add_sitenews'): # soon(02.09.12, 14:07) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() hidden = 'hidden' in request.POST.keys() or \ user.has_perm('news.add_only_hidden') if hidden: if not ( user.has_perm('news.add_hidden') or \ user.has_perm('news.add_only_hidden') ): # soon(02.09.12, 14:08) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() news.title, news.text_block, news.schoolNews, news.siteNews = \ title, text_block, schoolNews, siteNews news.hidden = hidden if not preview: news.save() return redirect('/news/{0}/'.format(id)) return direct_to_template( request, 'news/edit_news.hdt', { 'news' : news, 'news_title' : title, 'news_text_block' : text_block, 'errors' : errors } ) else: return direct_to_template( request, 'news/edit_news.hdt', { 'news': news } ) #-------------------------------------------------------------------------------
def edit_news(request, id, preview=False): # FIXME # Если послать поддельный POST, то юзер без прав(на определенный раздел) # сможет добавить новость # soon(30.08.12, 11:11) # См. выше user = request.user if not ( user.has_perm('news.add_news') or \ user.has_perm('news.add_schoolnews') or \ user.has_perm('news.add_sitenews') or \ user.has_perm('news.add_hidden') or \ user.has_perm('news.add_only_hidden') ): # soon(02.09.12, 15:32) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() news = get_news_or_404(id) if news.hidden: if not ( user.has_perm('news.add_hidden') or \ user.has_perm('news.add_only_hidden') ): # soon(02.09.12, 14:13) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() # FIXME: # Если длинна будет нулевая if request.method == 'POST': errors = {'title': False, 'text_block': False} title = request.POST['input_title'] if len(title) > 100: errors['title'] = True text_block = request.POST['input_text_block'] if len(text_block) > 1000: errors['text_block'] = True if not True in errors.values(): schoolNews = 'school' in request.POST.keys() if schoolNews and not user.has_perm('news.add_schoolnews'): # soon(02.09.12, 14:07) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() siteNews = 'site' in request.POST.keys() if siteNews and not user.has_perm('news.add_sitenews'): # soon(02.09.12, 14:07) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() hidden = 'hidden' in request.POST.keys() or \ user.has_perm('news.add_only_hidden') if hidden: if not ( user.has_perm('news.add_hidden') or \ user.has_perm('news.add_only_hidden') ): # soon(02.09.12, 14:08) # FIXME # Сделать нормальную страницу, оповещающую об отсутствии прав raise Http404() news.title, news.text_block, news.schoolNews, news.siteNews = \ title, text_block, schoolNews, siteNews news.hidden = hidden if not preview: news.save() return redirect('/news/{0}/'.format(id)) return direct_to_template( request, 'news/edit_news.hdt', { 'news': news, 'news_title': title, 'news_text_block': text_block, 'errors': errors }) else: return direct_to_template(request, 'news/edit_news.hdt', {'news': news}) #-------------------------------------------------------------------------------