From 29c6d024ae97c9d6c51bfc018d5fc7fbee083b02 Mon Sep 17 00:00:00 2001 From: Techywarrior Date: Tue, 2 Apr 2013 13:02:23 -0700 Subject: [PATCH] like/dislike/favorite on item by name --- dashboard-ui/itembynamedetails.html | 2 + dashboard-ui/scripts/itembynamedetailpage.js | 82 +++++++++++++++++++- 2 files changed, 83 insertions(+), 1 deletion(-) diff --git a/dashboard-ui/itembynamedetails.html b/dashboard-ui/itembynamedetails.html index b68e7b7a2b..21c48d0e05 100644 --- a/dashboard-ui/itembynamedetails.html +++ b/dashboard-ui/itembynamedetails.html @@ -17,6 +17,8 @@

+

+

diff --git a/dashboard-ui/scripts/itembynamedetailpage.js b/dashboard-ui/scripts/itembynamedetailpage.js index 86d396fd94..a998f5ad4f 100644 --- a/dashboard-ui/scripts/itembynamedetailpage.js +++ b/dashboard-ui/scripts/itembynamedetailpage.js @@ -37,8 +37,11 @@ Dashboard.setPageTitle(name); + ItemByNameDetailPage.item = item; + ItemByNameDetailPage.renderImage(item); ItemByNameDetailPage.renderOverviewBlock(item); + ItemByNameDetailPage.renderFav(item); $('#itemName', page).html(name); @@ -118,7 +121,84 @@ $('#itemOverview', page).hide(); } - } + }, + + renderFav: function (item) { + var html = ''; + var page = $.mobile.activePage; + + var userData = item.UserData || {}; + + if (typeof userData.Likes == "undefined") { + html += '
Dislike
'; + html += '
Like
'; + } else if (userData.Likes) { + html += '
Dislike
'; + html += '
Liked
'; + } else { + html += '
Dislike
'; + html += '
Like
'; + } + + if (userData.IsFavorite) { + html += '
Favorite
'; + } else { + html += '
Favorite
'; + } + + $('#itemRatings', page).html(html); + }, + + setFavorite: function () { + var item = ItemByNameDetailPage.item; +/* + item.UserData = item.UserData || {}; + + var setting = !item.UserData.IsFavorite; + item.UserData.IsFavorite = setting; + + ApiClient.updateFavoriteStatus(Dashboard.getCurrentUserId(), item.Id, setting); +*/ + ItemByNameDetailPage.renderFav(item); + }, + + setLike: function () { + + var item = ItemDetailPage.item; +/* + item.UserData = item.UserData || {}; + + item.UserData.Likes = true; + + ApiClient.updateUserItemRating(Dashboard.getCurrentUserId(), item.Id, true); +*/ + ItemByNameDetailPage.renderFav(item); + }, + + clearLike: function () { + + var item = ItemDetailPage.item; +/* + item.UserData = item.UserData || {}; + + item.UserData.Likes = undefined; + + ApiClient.clearUserItemRating(Dashboard.getCurrentUserId(), item.Id); +*/ + ItemByNameDetailPage.renderFav(item); + }, + + setDislike: function () { + var item = ItemDetailPage.item; +/* + item.UserData = item.UserData || {}; + + item.UserData.Likes = false; + + ApiClient.updateUserItemRating(Dashboard.getCurrentUserId(), item.Id, false); +*/ + ItemByNameDetailPage.renderFav(item); + } };