def index(request): context = dict() if request.method == 'POST': if 'delete_tweet' in request.POST: _id = request.GET.get('id', None) Tweet.objects.filter(id=_id).delete() messages.success(request, "Tweet successfully deleted") return redirect('index') form = TweetForm(request.POST) if form.is_valid(): new_tweet = Tweet(username=request.user, tweet=request.POST['tweet']) try: new_tweet.full_clean() new_tweet.save() except ValidationError as e: context['error'] = e.message_dict['tweet'][0] else: messages.success(request, "Tweet Created!") return redirect('index') else: form = TweetForm() context['form'] = form context['tweets'] = Tweet.objects.filter( username=request.user).order_by('-post_date') return render(request, 'authenticated_user_feed.html', context)
def add_tweet(request): # Get the context from the request. context = RequestContext(request) # A HTTP POST? if request.method == 'POST': form = TweetForm(request.POST) # Have we been provided with a valid form? if form.is_valid(): # Save the new category to the database. form.save(commit=True) # Now call the index() view. # The user will be shown the homepage. return HttpResponseRedirect('/twitter/') else: # No form passed - ignore and keep going. pass else: # If the request was not a POST, display the form to enter details. form = TweetForm() # Bad form (or form details), no form supplied... # Render the form with error messages (if any). return render_to_response('twitter/add_tweet.html', {'form': form}, context)
def home(request): if request.method == "POST": canTweet = True error_tweet_30 = "" (canTweet, error_tweet_30) = userCanTweet(request) if canTweet: f = TweetForm(request.POST) if f.is_valid(): t = Tweet() t.user = request.user t.text = f.cleaned_data["text"] d = datetime.datetime.today() t.published_on = d t.save() request.session["time_of_last_tweet"] = d.strftime("%d %m %Y %H:%M:%S") return HttpResponseRedirect(reverse("twitter:home")) else: tweets = Tweet.objects.order_by("-published_on")[:5] return render(request,'twitter/home.html', {"tweets":tweets, "user": request.user, "f": f}) else: f = TweetForm() tweets = Tweet.objects.order_by("-published_on")[:5] return render(request,'twitter/home.html', {"tweets":tweets, "user": request.user, "f": f, "er30":error_tweet_30}) else: f = TweetForm() tweets = Tweet.objects.order_by("-published_on")[:5] return render(request,'twitter/home.html', {"tweets":tweets, "user": request.user, "f": f})
def reply(request, tweet_id): tweet = Tweet.objects.get(pk=tweet_id) user = request.user original_tweet = post.get_original(tweet) if request.method == 'POST': reply_form = TweetForm(request.POST) if reply_form.is_valid(): new_reply = reply_form.save(commit=False) reply = post.create_tweet(user, new_reply.content, original_tweet=None) replyship = Replyship( tweet=original_tweet, reply=reply, tweet_user=original_tweet.author, reply_user=user, ) replyship.save() notify.notify_reply(reply, original_tweet) stream.create_streams(reply, Stream.REPLY) else: reply_form = TweetForm() return redirect(request.META.get('HTTP_REFERER'))
def tweet(request): f = TweetForm(request.POST) if f.is_valid(): t = Tweet() t.user = request.user t.text = f.cleaned_data["text"] t.published_on = datetime.datetime.today() t.save() return HttpResponseRedirect(reverse('twitter:home'))
def tweet(request): f = TweetForm(request.POST) if f.is_valid(): t = Tweet() t.user = request.user t.text = f.cleaned_data["text"] t.published_on = datetime.datetime.today() t.save() return HttpResponseRedirect(reverse('twitter:home'))
def home(request): if request.method == "POST": canTweet = True error_tweet_30 = "" if request.session.has_key("time_of_last_tweet"): old_time = datetime.datetime.strptime( request.session["time_of_last_tweet"], "%d %m %Y %H:%M:%S") delta = datetime.datetime.today() - old_time print datetime.datetime.today() print old_time print delta print delta.total_seconds() print delta.seconds if delta.total_seconds() < 30: canTweet = False error_tweet_30 = "You have tweeted " + str(int(delta.total_seconds())) + \ " seconds ago." if canTweet: f = TweetForm(request.POST) if f.is_valid(): t = Tweet() t.user = request.user t.text = f.cleaned_data["text"] d = datetime.datetime.today() t.published_on = d t.save() request.session["time_of_last_tweet"] = d.strftime( "%d %m %Y %H:%M:%S") return HttpResponseRedirect(reverse("twitter:home")) else: tweets = Tweet.objects.order_by("-published_on")[:5] return render(request, 'twitter/home.html', { "tweets": tweets, "user": request.user, "f": f }) else: f = TweetForm() tweets = Tweet.objects.order_by("-published_on")[:5] return render( request, 'twitter/home.html', { "tweets": tweets, "user": request.user, "f": f, "er30": error_tweet_30 }) else: f = TweetForm() tweets = Tweet.objects.order_by("-published_on")[:5] return render(request, 'twitter/home.html', { "tweets": tweets, "user": request.user, "f": f })
def post_tweet(request): form = TweetForm(request.data) if form.is_valid(): tweet = form.save() mentions = get_all_profiles_mentioned_in_tweet( request.data.get('content')) hashtags = get_all_hashtags_in_tweet(request.data.get('content'), True) tweet.mentions.set(mentions) tweet.hashtags.set(hashtags) return Response(data={}, status=status.HTTP_201_CREATED)
def submit(request): if request.method == 'POST': tweet_form = TweetForm(data=request.POST) next_url = request.POST.get('next_url', '/') if tweet_form.is_valid(): tweet = tweet_form.save(commit=False) tweet.user = request.user tweet.save() return redirect(next_url) return public(request, tweet_form) return redirect('/')
def dispatch(self, request, *args, **kwargs): form = TweetForm() if request.method == "POST": form = TweetForm(request.POST) if form.is_valid(): form.instance.author = request.user form.instance.created_date = datetime.now() form.save() return redirect("new_page") return render(request, self.template_name, {"form": form})
def post_tweet(request): login_user = request.user if request.method == 'POST': form = TweetForm(request.POST) if form.is_valid(): tweet = form.save(commit=False) new_tweet = post.create_tweet(login_user, tweet.content, None) notify.notify(login_user, new_tweet, Notification.MENTION) stream.create_streams(new_tweet, Stream.TWEET) return redirect('profile', username=login_user.username) else: form = TweetForm() return render(request, 'twitter/post_tweet.html', { 'form': form, })
def home(request): if request.method == "POST": canTweet = True error_tweet_30 = "" if request.session.has_key("time_of_last_tweet"): old_time = datetime.datetime.strptime(request.session["time_of_last_tweet"], "%d %m %Y %H:%M:%S") delta = datetime.datetime.today() - old_time print datetime.datetime.today() print old_time print delta print delta.total_seconds() print delta.seconds if delta.total_seconds() < 30: canTweet = False error_tweet_30 = "You have tweeted " + str(int(delta.total_seconds())) + \ " seconds ago." if canTweet: f = TweetForm(request.POST) if f.is_valid(): t = Tweet() t.user = request.user t.text = f.cleaned_data["text"] d = datetime.datetime.today() t.published_on = d t.save() request.session["time_of_last_tweet"] = d.strftime("%d %m %Y %H:%M:%S") return HttpResponseRedirect(reverse("twitter:home")) else: tweets = Tweet.objects.order_by("-published_on")[:5] return render(request,'twitter/home.html', {"tweets":tweets, "user": request.user, "f": f}) else: f = TweetForm() tweets = Tweet.objects.order_by("-published_on")[:5] return render(request,'twitter/home.html', {"tweets":tweets, "user": request.user, "f": f, "er30":error_tweet_30}) else: f = TweetForm() tweets = Tweet.objects.order_by("-published_on")[:5] return render(request,'twitter/home.html', {"tweets":tweets, "user": request.user, "f": f})
def home(request): if request.method == "POST": f = TweetForm(request.POST) if f.is_valid(): t = Tweet() t.user = request.user t.text = f.cleaned_data["text"] t.published_on = datetime.datetime.today() t.save() else: tweets = Tweet.objects.order_by("-published_on")[:5] return render(request,'twitter/home.html', {"tweets":tweets, "f": f}) else: f = TweetForm() tweets = Tweet.objects.order_by("-published_on")[:5] return render(request,'twitter/home.html', {"tweets":tweets, "f": f})
def home(request): if request.method == "POST": f = TweetForm(request.POST) if f.is_valid(): t = Tweet() t.user = request.user t.text = f.cleaned_data["text"] t.published_on = datetime.datetime.today() t.save() else: tweets = Tweet.objects.order_by("-published_on")[:5] return render(request, 'twitter/home.html', { "tweets": tweets, "f": f }) else: f = TweetForm() tweets = Tweet.objects.order_by("-published_on")[:5] return render(request, 'twitter/home.html', {"tweets": tweets, "f": f})
def post(self, request, id): form = TweetForm(request.POST) if form.is_valid(): form.instance.author = request.user # wyciagamy autora z requesta, nie może go sam wpisywać bo mógłby się podszyć pod kogoś. form.save() return redirect('twitter/twitter:index')