define(['loading', 'dom', 'libraryMenu', 'globalize', 'scripts/imagehelper', 'date-fns', 'dfnshelper', 'emby-button', 'emby-itemscontainer', 'cardStyle'], function (loading, dom, libraryMenu, globalize, imageHelper, datefns, dfnshelper) { 'use strict'; function canDelete(deviceId) { return deviceId !== ApiClient.deviceId(); } function deleteDevice(page, id) { var msg = globalize.translate('DeleteDeviceConfirmation'); require(['confirm'], function (confirm) { confirm({ text: msg, title: globalize.translate('HeaderDeleteDevice'), confirmText: globalize.translate('ButtonDelete'), primary: 'delete' }).then(function () { loading.show(); ApiClient.ajax({ type: 'DELETE', url: ApiClient.getUrl('Devices', { Id: id }) }).then(function () { loadData(page); }); }); }); } function showDeviceMenu(view, btn, deviceId) { var menuItems = []; if (canEdit) { menuItems.push({ name: globalize.translate('Edit'), id: 'open', icon: 'mode_edit' }); } if (canDelete(deviceId)) { menuItems.push({ name: globalize.translate('Delete'), id: 'delete', icon: 'delete' }); } require(['actionsheet'], function (actionsheet) { actionsheet.show({ items: menuItems, positionTo: btn, callback: function (id) { switch (id) { case 'open': Dashboard.navigate('device.html?id=' + deviceId); break; case 'delete': deleteDevice(view, deviceId); } } }); }); } function load(page, devices) { var html = ''; html += devices.map(function (device) { var deviceHtml = ''; deviceHtml += "