using System; using System.Linq; using System.Threading.Tasks; using Comal.Classes; using InABox.Core; using InABox.Mobile; using Xamarin.Forms; using Xamarin.Forms.Xaml; using XF.Material.Forms.UI.Dialogs; namespace PRS.Mobile { [XamlCompilation(XamlCompilationOptions.Compile)] public partial class EquipmentModule { public EquipmentModule () { InitializeComponent (); } protected override void UpdateTransportStatus() { base.UpdateTransportStatus(); LiveMaps.IsEnabled = App.Data.IsConnected(); } private void EquipmentScanner_Tapped(MobileModuleItem sender, ModuleMenuItemTappedArgs args) { var scannerPage = new ScannerPage(); scannerPage.ItemScanned = async (e) => { if (!Guid.TryParse(e.Text, out Guid equipmentid)) { await MaterialDialog.Instance.AlertAsync("Invalid Code", "Error"); return; } var editor = await EquipmentEdit.Load(equipmentid); if (editor != null) Device.BeginInvokeOnMainThread(() => Navigation.PushAsync(editor)); else await MaterialDialog.Instance.AlertAsync("Equipment Not Found", "Error"); }; Navigation.PushAsync(scannerPage); } private void EquipmentList_Tapped(MobileModuleItem sender, ModuleMenuItemTappedArgs args) { Navigation.PushAsync(new EquipmentList()); } private void LiveMaps_Tapped(MobileModuleItem sender, ModuleMenuItemTappedArgs args) { Navigation.PushAsync(new LiveMaps()); } } }