private async void CancelFunc() { if (!_ringContentVisibility) { using (var db = new PrototypingContext()) { User user = db.Users.Single(u => u.UserId == userId); Record record = db.Records.Last(); db.Entry(user).Reference(u => u.Prototype).Load(); try { StorageFolder prototypeFolder = await ApplicationData.Current.LocalFolder.GetFolderAsync(user.Prototype.Name + "_" + user.PrototypeId); StorageFolder userFolder = await prototypeFolder.GetFolderAsync(user.Name + "_" + user.UserId); StorageFolder recordFolder = await userFolder.GetFolderAsync("Record_" + recordSettings.RecordId); await recordFolder.DeleteAsync(); } catch (System.IO.FileNotFoundException) { } db.Records.Remove(record); db.SaveChanges(); } Windows.UI.Xaml.Controls.Frame frame = (Windows.UI.Xaml.Controls.Frame)Windows.UI.Xaml.Window.Current.Content; frame.BackStack.Clear(); frame.Navigate(typeof(DetailsUserPage), userId); } }
public async Task DeleteRecord(Record record) { using (var db = new PrototypingContext()) { Record findRecord = db.Records.Single(r => r.RecordId == record.RecordId); await db.Entry(findRecord).Reference(r => r.User).LoadAsync(); User userParent = findRecord.User; await db.Entry(userParent).Reference(u => u.Prototype).LoadAsync(); try { StorageFolder prototypeFolder = await ApplicationData.Current.LocalFolder.GetFolderAsync(userParent.Prototype.Name + "_" + userParent.PrototypeId); StorageFolder userFolder = await prototypeFolder.GetFolderAsync(userParent.Name + "_" + userParent.UserId); StorageFolder recordFolder = await userFolder.GetFolderAsync("Record_" + findRecord.RecordId); await recordFolder.DeleteAsync(); } catch (System.IO.FileNotFoundException) { System.Diagnostics.Debug.WriteLine("Prototype/User folder not found"); } db.Records.Remove(findRecord); db.SaveChanges(); } UpdateRecordList(record.UserId); }
public async Task DeleteUser(User user) { using (var db = new PrototypingContext()) { User findUser = db.Users.Single(u => u.UserId == user.UserId); await db.Entry(findUser).Reference(u => u.Prototype).LoadAsync(); try { StorageFolder prototypeFolder = await ApplicationData.Current.LocalFolder.GetFolderAsync(findUser.Prototype.Name + "_" + findUser.PrototypeId); StorageFolder userFolder = await prototypeFolder.GetFolderAsync(findUser.Name + "_" + findUser.UserId); await userFolder.DeleteAsync(); } catch (System.IO.FileNotFoundException) { System.Diagnostics.Debug.WriteLine("Prototype/User folder not found"); } db.Users.Remove(findUser); db.SaveChanges(); } UpdateUserList(user.PrototypeId); }
private async void RemoveFunc() { using (var db = new PrototypingContext()) { User user = db.Users.Single(u => u.UserId == UserModel.UserId); await db.Entry(user).Reference(u => u.Prototype).LoadAsync(); try { StorageFolder prototypeFolder = await ApplicationData.Current.LocalFolder.GetFolderAsync(user.Prototype.Name + "_" + user.PrototypeId); StorageFolder userFolder = await prototypeFolder.GetFolderAsync(user.Name + "_" + user.UserId); await userFolder.DeleteAsync(); } catch (System.IO.FileNotFoundException) { System.Diagnostics.Debug.WriteLine("User folder not found"); } db.Users.Remove(user); db.SaveChanges(); } ((Windows.UI.Xaml.Controls.Frame)Windows.UI.Xaml.Window.Current.Content).Navigate(typeof(DetailsPrototypePage), UserModel.PrototypeId); }
private async Task StartStopFunc() { if (_isOnStart) { TimerInit(); IsOnStart = false; IsSplitViewPaneOpen = false; currentRecordScreen = new RecordScreenModel(_webview.Source.AbsoluteUri, await DoCaptureWebView()); _screens.Add(currentRecordScreen); using (var db = new PrototypingContext()) { Record record = db.Records.Single(rp => rp.RecordId == recordSettings.RecordId); createdDate = DateTime.Now; record.CreatedDate = createdDate; db.Records.Update(record); if (recordSettings.FrontCamera) { string pathtoVideo = await CreateVideoFile(record.RecordId); record.PathToVideo = pathtoVideo; db.Records.Update(record); var encodingProfile = MediaEncodingProfile.CreateMp4(VideoEncodingQuality.Auto); if (AnalyticsInfo.VersionInfo.DeviceFamily.Equals("Windows.Mobile")) { encodingProfile.Video.Properties.Add(RotationKey, 270); } await _mediaCapture.StartRecordToStorageFileAsync(encodingProfile, videoFile); _isRecording = true; } db.SaveChanges(); } } else { //add lastRecordingDate in user and prototype using (var db = new PrototypingContext()) { Record record = db.Records.Single(rp => rp.RecordId == recordSettings.RecordId); User user = db.Users.Single(u => u.UserId == record.UserId); user.LastRecordingDate = createdDate; db.Users.Update(user); Prototype prototype = db.Prototypes.Single(p => p.PrototypeId == user.PrototypeId); prototype.LastRecordingDate = createdDate; db.Prototypes.Update(prototype); db.SaveChanges(); } ((Windows.UI.Xaml.Controls.Frame)Windows.UI.Xaml.Window.Current.Content).Navigate(typeof(ResultRecordPage), _screens); } }
private void DoneFunc() { using (var db = new PrototypingContext()) { Record recod = db.Records.Add(new Record() { UserId = userId }).Entity; db.RecordSettings.Add(new RecordSettings() { RecordId = recod.RecordId, FrontCamera = _fronCameraIsOn, Touches = _touchesIsOn }); db.SaveChanges(); } ((Windows.UI.Xaml.Controls.Frame)Windows.UI.Xaml.Window.Current.Content).Navigate(typeof(ReviewPrototypePage), userId); }
private async Task <ObservableCollection <RecordScreenModel> > HeatingScreens(List <RecordScreenModel> screens) { ObservableCollection <RecordScreenModel> result = new ObservableCollection <RecordScreenModel>(); using (var db = new PrototypingContext()) { User user = db.Users.Single(u => u.UserId == RecordModel.UserId); await db.Entry(user) .Reference(u => u.Prototype) .LoadAsync(); string prototypeName = user.Prototype.Name + "_" + user.PrototypeId; string userName = user.Name + "_" + user.UserId; string recordName = "Record_" + RecordModel.RecordId; StorageFolder prototypeFolder = await ApplicationData.Current.LocalFolder.CreateFolderAsync(prototypeName, CreationCollisionOption.OpenIfExists); //PrototypeName + Id StorageFolder userFolder = await prototypeFolder.CreateFolderAsync(userName, CreationCollisionOption.OpenIfExists); //UserName + Id StorageFolder recordFolder = await userFolder.CreateFolderAsync(recordName, CreationCollisionOption.OpenIfExists); foreach (RecordScreenModel screen in screens) { screen.HeatMapScreen = await HeatMapFunctions.CreateProcessHeatMap(screen.OriginalScreen, screen.ListPoints); result.Add(screen); string[] screenPaths = await SaveImagesInStorage(screen.OriginalScreen, screen.HeatMapScreen, recordFolder); //saving images in prototype -> user -> record path RecordScreen rScreen = new RecordScreen() { RecordId = RecordModel.RecordId, Points = screen.ListPoints, UriPage = screen.UriPage, PathToOriginalScreen = screenPaths[0], PathToHeatMapScreen = screenPaths[1] }; db.RecordScreens.Add(rScreen); db.SaveChanges(); } } return(result); }
private async Task <VideoAggregateRecognitionResult> UploadAndDetectEmotions(StorageFile videoFile) { VideoAggregateRecognitionResult aggResult = null; EmotionServiceClient emotionServiceClient = new EmotionServiceClient(_subscriptionKey); try { using (Stream videoFileStream = await videoFile.OpenStreamForReadAsync()) //File.OpenRead(videoFilePath) { RingText = "Uploading video..."; byte[] bytesVideo; using (var memoryStream = new MemoryStream()) { await videoFileStream.CopyToAsync(memoryStream); bytesVideo = memoryStream.ToArray(); } //get operation id on service operationLocation = await UploadEmotion(bytesVideo); //save operation-location using (var db = new PrototypingContext()) { Record record = db.Records.Single(r => r.RecordId == recordModel.RecordId); record.OperationLocation = operationLocation; db.SaveChanges(); recordModel.OperationLocation = operationLocation; } //get result emotions from id operation aggResult = await DetectEmotion(operationLocation); } } catch (Exception) { await ErrorMessageDialog("Oops, error. Check your internet connection."); GoBackFunc(); } return(aggResult); }
private async void RemoveFunc() { using (var db = new PrototypingContext()) { try { StorageFolder prototypeFolder = await ApplicationData.Current.LocalFolder.GetFolderAsync(PrototypeModel.Name + "_" + PrototypeModel.PrototypeId); await prototypeFolder.DeleteAsync(); } catch (System.IO.FileNotFoundException) { System.Diagnostics.Debug.WriteLine("Prototype folder not found"); } db.Prototypes.Remove(PrototypeModel); db.SaveChanges(); } ((Windows.UI.Xaml.Controls.Frame)Windows.UI.Xaml.Window.Current.Content).Navigate(typeof(PrototypesPage)); }
private async void SaveFunc() { if (!NameText.Equals("") && !BiographyText.Equals("")) { using (var db = new PrototypingContext()) { User findUser = db.Users.Single(u => u.UserId == user.UserId); findUser.Name = NameText; findUser.Biography = BiographyText; db.Users.Update(findUser); db.SaveChanges(); } GoBackFunc(); } else { var message = new MessageDialog("Please fill in all the fields."); await message.ShowAsync(); } }
private async void SaveFunc() { if (!UrlText.Equals("") && !NameText.Equals("") && !DescriptionText.Equals("")) { using (var db = new PrototypingContext()) { Prototype findPrototype = db.Prototypes.Single(p => p.PrototypeId == prototype.PrototypeId); findPrototype.Url = UrlText; findPrototype.Name = NameText; findPrototype.Description = DescriptionText; db.Prototypes.Update(findPrototype); db.SaveChanges(); } GoBackFunc(); } else { var message = new MessageDialog("Please fill in all the fields."); await message.ShowAsync(); } }
public async Task DeletePrototype(Prototype prototype) { using (var db = new PrototypingContext()) { Prototype findPrototype = db.Prototypes.Single(p => p.PrototypeId == prototype.PrototypeId); try { StorageFolder prototypeFolder = await ApplicationData.Current.LocalFolder.GetFolderAsync(findPrototype.Name + "_" + findPrototype.PrototypeId); await prototypeFolder.DeleteAsync(); } catch (System.IO.FileNotFoundException) { System.Diagnostics.Debug.WriteLine("Prototype folder not found"); } db.Prototypes.Remove(findPrototype); db.SaveChanges(); } UpdateGroups(); }
private async void CreateFunc() { if (!UrlText.Equals("") && !NameText.Equals("") && !DescriptionText.Equals("")) { using (var db = new PrototypingContext()) { db.Prototypes.Add(new Prototype() { Name = NameText, Url = UrlText, Description = DescriptionText, CreatedDate = DateTime.Now }); db.SaveChanges(); } GoBackFunc(); } else { var message = new MessageDialog("Please fill in all the fields."); await message.ShowAsync(); } }
private async void CreateFunc() { if (!NameText.Equals("") && !BiographyText.Equals("")) { using (var db = new PrototypingContext()) { db.Users.Add(new User() { Name = NameText, Biography = BiographyText, AddedDate = DateTime.Now, PrototypeId = prototypeId }); db.SaveChanges(); } GoBackFunc(); } else { var message = new MessageDialog("Please fill in all the fields."); await message.ShowAsync(); } }