public StackPanel displayPanel() { MLS_DB ctx = MLS_DB.GetContext(); StackPanel pl_item = null; foreach (var curr_track in ctx.tracks_playlist.ToList()) { FontFamily ui_symbols_font = new FontFamily("Segoe MDL2 Assets"); pl_item = new StackPanel { Orientation = Orientation.Horizontal, Height = 60, Background = Brushes.Black }; var play_btn = new Button { Height = 60, Width = 60, FontFamily = ui_symbols_font, Content = char.ConvertFromUtf32(0xE768), Foreground = Brushes.White, Background = Brushes.Black }; var pl_name = new TextBlock { Name = "pl_block", Height = 60, FontSize = 18, Foreground = Brushes.White, Margin = new Thickness(11, 6, 11, 5), Text = curr_track.track_name + '(' + curr_track.playlist_name + ',' + curr_track.user_id + ')' }; pl_item.Children.Add(play_btn); pl_item.Children.Add(pl_name); music_panel.Children.Add(pl_item); play_btn.Tag = curr_track.track_id; } return(pl_item); }
private void signIn_Click(object sender, RoutedEventArgs e) { MLS_DB db_ctx = MLS_DB.GetContext(); foreach (var curr_user in db_ctx.users.ToList()) { if (curr_user.username == loginBox.Text) { if (curr_user.password == pwBox.Password) { MessageBox.Show("Successfully pseudo-logged in"); NavigationService.Navigate(new mainPage()); break; } } else { MessageBox.Show("Invalid login or password!"); break; } } }
private void DisplayData(object sender, RoutedEventArgs e) { DB = new MLS_DB(); DG.ItemsSource = MLS_DB.GetContext().users.ToList(); }
public void AddTrack() { MLS_DB DB = new MLS_DB(); var ctx = MLS_DB.GetContext(); OpenFileDialog fileDialog = new OpenFileDialog(); fileDialog.InitialDirectory = @"C:\"; if (fileDialog.ShowDialog() == DialogResult.OK) { performer artist = new performer(); track curr_track = new track(); tracks_info tr_name = new tracks_info(); string server_path = @"C:\DexHydre\webserver\tracks"; string[] musicFiles = Directory.GetFiles(server_path, "*.mp3"); int new_number = musicFiles.Count() + 1; var musicFile = File.OpenRead(fileDialog.FileName); byte[] b = new byte[1024]; musicFile.Read(b, 0, b.Length); using (var mp3 = new Mp3(musicFile)) { Id3Tag tag = mp3.GetTag(Id3TagFamily.Version2X); if (tag != null) { var duplicate_track = from tr in ctx.tracks_info join t in ctx.tracks on tr.track_id equals t.track_id join p in ctx.performers on t.performer_id equals p.performer_id where p.performer_name == tag.Artists && tr.track_name == tag.Title select tr.track_id; var existing_performer = from p in ctx.performers where p.performer_name == tag.Artists select p.performer_id; var new_track_id = (from t in ctx.tracks orderby t.track_id descending select t.track_id).Count() + 1; if (duplicate_track.Any()) { System.Windows.MessageBox.Show("Duplicate track"); } else { curr_track.track_id = new_track_id; if (existing_performer.Any()) { curr_track.performer_id = existing_performer.Single(); } else { artist.performer_name = tag.Artists; DB.performers.Add(artist); DB.SaveChanges(); curr_track.performer_id = existing_performer.Single(); } curr_track.track_duration = Convert.ToInt32(mp3.Audio.Duration.TotalSeconds); curr_track.bitrate = mp3.Audio.Bitrate; if (tag.Genre == null) { curr_track.genre = null; } else { curr_track.genre = tag.Genre; } tr_name.track_id = curr_track.track_id; tr_name.track_name = tag.Title; if (!musicFiles.Contains(curr_track.track_id.ToString())) { DB.tracks.Add(curr_track); DB.tracks_info.Add(tr_name); int dot_position = musicFile.Name.IndexOf("."); string new_name = server_path + @"\" + new_number.ToString() + musicFile.Name.Substring(dot_position); if (File.Exists(new_name)) { System.Windows.MessageBox.Show("Такой файл уже существует!"); } else { File.Copy(musicFile.Name, new_name); } DB.SaveChanges(); } } } else { System.Windows.MessageBox.Show("Invalid track data"); } } } }
private void signUp(object sender, RoutedEventArgs e) { List <AutoCompleteTextBox.Editors.AutoCompleteTextBox> tb_list = new List <AutoCompleteTextBox.Editors.AutoCompleteTextBox>() { emailBox, loginBox }; foreach (var tb in tb_list) { tb.BorderBrush = Brushes.White; tb.BorderThickness = new Thickness(2); tb.ToolTip = null; } List <PasswordBox> pb_list = new List <PasswordBox>() { pwBox, repeatpwBox }; foreach (var pb in pb_list) { pb.BorderBrush = Brushes.White; pb.BorderThickness = new Thickness(2); pb.ToolTip = null; } var x = new get_t { email = emailBox.Text, login = loginBox.Text, pwd = pwBox.Password, pwd_repeat = repeatpwBox.Password }; object obj = x as object; var ret = new List <validation_t>(); var ctx = new ValidationContext(obj); if (!Validator.TryValidateObject(obj, ctx, ret, true)) { StackPanel toolTipContent; foreach (var entry in ret) { toolTipContent = new StackPanel(); switch (entry.ErrorMessage[0]) { case '1': emailBox.BorderThickness = new Thickness(4); emailBox.BorderBrush = Brushes.Red; emailBox.Focus(); emailBox.ToolTip = toolTipContent; break; case '2': loginBox.BorderThickness = new Thickness(4); loginBox.BorderBrush = Brushes.Red; loginBox.Focus(); loginBox.ToolTip = toolTipContent; break; case '3': pwBox.BorderThickness = new Thickness(4); pwBox.BorderBrush = Brushes.Red; pwBox.Focus(); pwBox.ToolTip = toolTipContent; break; case '4': repeatpwBox.BorderThickness = new Thickness(4); repeatpwBox.BorderBrush = Brushes.Red; repeatpwBox.Focus(); repeatpwBox.ToolTip = toolTipContent; break; default: break; } toolTipContent.Children.Add(new TextBlock { Text = entry.ErrorMessage, FontSize = 20 }); } } else { user userr = new user(); userr.email = emailBox.Text; userr.username = loginBox.Text; userr.password = pwBox.Password; userr.access_level = 1; var db_ctx = MLS_DB.GetContext(); db_ctx.users.Add(userr); db_ctx.SaveChanges(); MessageBox.Show("New user added"); } }