def new_thread(request, slug=None, template='snapboard/new_thread.html'): category = None if slug is not None: category = get_object_or_404(smodels.Category, slug=slug) form = ThreadForm(request.POST or None, request=request, category=category) if form.is_valid(): thread = form.save() return HttpResponseRedirect(thread.get_url()) return render(template, {'form': form, 'category': category}, request)
def edit_settings(request, template='snapboard/edit_settings.html'): settings, _ = smodels.UserSettings.objects.get_or_create(user=request.user) data = request.POST or None sform = UserSettingsForm(data, instance=settings, request=request) uform = UserNameForm(data, instance=request.user) if request.POST: if sform.is_valid() and uform.is_valid(): sform.save() uform.save() request.user.message_set.create(message='Preferences Updated.') return HttpResponseRedirect('') return render(template, {'sform': sform, 'uform': uform}, request)
def favorites(request, template='snapboard/favorites.html'): threads = smodels.Thread.objects.favorites(request.user) return render(template, {'threads': threads}, request)
def search(request, template='snapboard/search.html'): threads = smodels.Thread.objects.get_user_query_set(request.user) q = request.GET.get('q') if q is not None: threads = threads.filter(name__icontains=q) return render(template, {'threads': threads}, request)