views/singleTweet.erb
<!DOCTYPE html>
<html>
<body>
<div class="well" data-toggle="modal" data-target="#myModal<%= @i %>">
<a href="<%= "/#{@tweet['username']}/tweets"%>"><p>
<font size="3" face="verdana">
<strong><%= @tweet['nickname']||"seedUser" %></strong>
</font>
<font size="2" face="verdana" color=grey>@<%= @tweet['username']||"seedNick" %>*<%= @tweet['create_time'] %></font>
</p></a>
<p>
<%= @tweet['content'] %>
</p>
<p>
<a class="btn btn-default" href="#" role="button">Reply</a>
<a class="btn btn-default" href="#" role="button">Retweet</a>
<a class="btn btn-default" href="#" role="button">Like</a>
</p>
</div>
<div class="modal fade" id="myModal<%= @i %>" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<h4 class="modal-title" id="myModalLabel">@<%= @tweet['username'] %>*<%= @tweet['create_time'] %></h4>
</div>
<div class="modal-body">
<p>
<%= @tweet['content'] %>
</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary">Reply</button>
<button type="button" class="btn btn-primary">Retweet</button>
<button type="button" class="btn btn-primary" id="like<%= @i %>">Like</button>
<button type="button" class="btn btn-primary" id="unlike<%= @i %>">unLike</button>
</div>
</div>
</div>
</div>
<% if session[:user_id] %>
<% cui=session[:user_id] %>
<% else %>
<% cui=-1 %>
<% end %>
<% tId=@tweet['id'] %>
<script type="text/javascript">
<% theparams={user_id: cui,tweet_id: tId} %>
<% if userLikeTweet theparams %>
$("#like<%= @i %>").hide();
<% else %>
$("#unlike<%= @i %>").hide();
<% end %>
$("#unlike<%= @i %>").click(function(){
var current_user_id = <%= cui %> - 0;
var tweet_id = <%= tId %>;
if (current_user_id !== -1) {
var putLike = new XMLHttpRequest();
putLike.open("PUT", '/api/v1/users/' + current_user_id + '/unlike/' + tweet_id, true);
putLike.send();
$(this).hide();
$("#like<%= @i %>").show();
} else {
$("#login-first").show();
$("#myModal<%= @i %>").modal('hide');
}
});
$("#like<%= @i %>").mouseenter(function(){
this.innerHTML="I like it!";
});
$("#like<%= @i %>").mouseleave(function(){
this.innerHTML="Like";
});
$("#unlike<%= @i %>").hover(function(){
this.innerHTML="I don't like it!";
},function(){
this.innerHTML="unLike";
});
$("#like<%= @i %>").click(function () {
var current_user_id = <%= cui %> - 0;
var tweet_id = <%= tId %>;
if (current_user_id !== -1) {
var putLike = new XMLHttpRequest();
putLike.open("PUT", '/api/v1/users/' + current_user_id + '/likes/' + tweet_id, true);
putLike.send();
$(this).hide();
$("#unlike<%= @i %>").show();
} else {
$("#login-first").show();
$("#myModal<%= @i %>").modal('hide');
}
});
</script>
</body>
</html>