jellyfin-web/dashboard-ui/scripts/userprofilespage.js

86 lines
2.5 KiB
JavaScript
Raw Normal View History

2013-02-20 18:33:05 -07:00
var UserProfilesPage = {
onPageShow: function () {
UserProfilesPage.loadPageData();
},
loadPageData: function () {
Dashboard.showLoadingMsg();
2013-03-21 13:43:42 -07:00
ApiClient.getUsers().done(UserProfilesPage.renderUsers);
2013-02-20 18:33:05 -07:00
},
renderUsers: function (users) {
var html = "";
html += '<li data-role="list-divider"><h3>Users</h3></li>';
for (var i = 0, length = users.length; i < length; i++) {
var user = users[i];
html += "<li>";
2013-03-28 17:10:15 -07:00
html += "<a onclick='Dashboard.navigate(\"edituser.html?userId=" + user.Id + "\");' href='#'>";
2013-02-20 18:33:05 -07:00
if (user.PrimaryImageTag) {
var url = ApiClient.getUserImageUrl(user.Id, {
width: 225,
tag: user.PrimaryImageTag,
type: "Primary"
});
html += "<img src='" + url + "' />";
} else {
2013-03-27 15:17:46 -07:00
html += "<img src='css/images/userflyoutdefault.png' />";
2013-02-20 18:33:05 -07:00
}
html += "<h3>" + user.Name;
2013-02-20 18:33:05 -07:00
html += "</h3>";
html += "<p class='ui-li-aside'>";
if (user.Configuration.HasPassword) html += '<img src="css/images/userdata/password.png" alt="Password" title="Password" class="userProfileIcon" />';
if (user.Configuration.IsAdministrator) html += '<img src="css/images/userdata/administrator.png" alt="Administrator" title="Administrator" class="userProfileIcon" />';
html += "</p>";
html += "</a>";
2013-02-20 18:33:05 -07:00
html += "<a onclick='UserProfilesPage.deleteUser(this);' data-userid='" + user.Id + "' data-username='" + user.Name + "' href='#'>Delete</a>";
html += "</li>";
}
$('#ulUserProfiles', $('#userProfilesPage')).html(html).listview('refresh');
Dashboard.hideLoadingMsg();
},
deleteUser: function (link) {
var name = link.getAttribute('data-username');
var msg = "Are you sure you wish to delete " + name + "?";
Dashboard.confirm(msg, "Delete User", function (result) {
if (result) {
Dashboard.showLoadingMsg();
var id = link.getAttribute('data-userid');
ApiClient.deleteUser(id).done(function () {
2013-04-04 08:22:39 -07:00
Dashboard.validateCurrentUser($.mobile.activePage);
2013-02-20 18:33:05 -07:00
UserProfilesPage.loadPageData();
});
}
});
}
};
$(document).on('pageshow', "#userProfilesPage", UserProfilesPage.onPageShow);