diff --git a/dashboard-ui/css/images/userdata/heart_off.png b/dashboard-ui/css/images/userdata/heart_off.png new file mode 100644 index 0000000000..5c39dd323e Binary files /dev/null and b/dashboard-ui/css/images/userdata/heart_off.png differ diff --git a/dashboard-ui/css/images/userdata/heart_on.png b/dashboard-ui/css/images/userdata/heart_on.png new file mode 100644 index 0000000000..8cc2cae873 Binary files /dev/null and b/dashboard-ui/css/images/userdata/heart_on.png differ diff --git a/dashboard-ui/css/images/userdata/thumbs_down_off.png b/dashboard-ui/css/images/userdata/thumbs_down_off.png new file mode 100644 index 0000000000..2627f0e2c6 Binary files /dev/null and b/dashboard-ui/css/images/userdata/thumbs_down_off.png differ diff --git a/dashboard-ui/css/images/userdata/thumbs_down_on.png b/dashboard-ui/css/images/userdata/thumbs_down_on.png new file mode 100644 index 0000000000..38d6ff3c0c Binary files /dev/null and b/dashboard-ui/css/images/userdata/thumbs_down_on.png differ diff --git a/dashboard-ui/css/images/userdata/thumbs_up_off.png b/dashboard-ui/css/images/userdata/thumbs_up_off.png new file mode 100644 index 0000000000..932a8bfb8f Binary files /dev/null and b/dashboard-ui/css/images/userdata/thumbs_up_off.png differ diff --git a/dashboard-ui/css/images/userdata/thumbs_up_on.png b/dashboard-ui/css/images/userdata/thumbs_up_on.png new file mode 100644 index 0000000000..96b244c54a Binary files /dev/null and b/dashboard-ui/css/images/userdata/thumbs_up_on.png differ diff --git a/dashboard-ui/css/site.css b/dashboard-ui/css/site.css index 85b9b62441..1de5bfd233 100644 --- a/dashboard-ui/css/site.css +++ b/dashboard-ui/css/site.css @@ -887,4 +887,9 @@ progress { height: 26px; width: 26px; margin: -.7em .5em auto 0; +} + +#itemFav img { + width: 64px; + cursor: pointer; } \ No newline at end of file diff --git a/dashboard-ui/scripts/Itemdetailpage.js b/dashboard-ui/scripts/Itemdetailpage.js index 02d41cc2f4..9a8175118e 100644 --- a/dashboard-ui/scripts/Itemdetailpage.js +++ b/dashboard-ui/scripts/Itemdetailpage.js @@ -88,6 +88,8 @@ $('#seriesName', page).html(series_name).show(); } + ItemDetailPage.renderFav(item); + Dashboard.hideLoadingMsg(); }, @@ -709,7 +711,73 @@ } $('#castContent', page).html(html); + }, + + renderFav: function (item) { + var html = ''; + var page = $.mobile.activePage; + + if (typeof(item.UserData.Likes) == "undefined") { + html += 'Set Did Not Like'; + html += 'Set Liked'; + } else if (item.UserData.Likes) { + html += 'Set Did Not Like'; + html += 'Liked'; + } else { + html += 'Did Not Like'; + html += 'Set Liked'; + } + + if (item.UserData.IsFavorite) { + html += 'Make Not Favorite'; + }else { + html += 'Make Favorite'; + } + + $('#itemFav', page).html(html); + }, + + setFavorite: function () { + var item = ItemDetailPage.item; + + var setting = !item.UserData.IsFavorite; + item.UserData.IsFavorite = setting; + + ApiClient.updateFavoriteStatus(Dashboard.getCurrentUserId(), item.Id, setting); + + ItemDetailPage.renderFav(item); + }, + + setLike: function () { + var item = ItemDetailPage.item; + + item.UserData.Likes = true; + + ApiClient.updateUserItemRating(Dashboard.getCurrentUserId(), item.Id, true); + + ItemDetailPage.renderFav(item); + }, + + clearLike: function () { + var item = ItemDetailPage.item; + + delete item.UserData.Likes; + + ApiClient.clearUserItemRating(Dashboard.getCurrentUserId(), item.Id); + + ItemDetailPage.renderFav(item); + }, + + setDislike: function () { + var item = ItemDetailPage.item; + + item.UserData.Likes = false; + + ApiClient.updateUserItemRating(Dashboard.getCurrentUserId(), item.Id, false); + + ItemDetailPage.renderFav(item); } + }; $(document).on('pageshow', "#itemDetailPage", ItemDetailPage.onPageShow).on('pagehide', "#itemDetailPage", ItemDetailPage.onPageHide);