/// <summary> /// Moves specified video to specified location. /// </summary> /// <param name="item">The video to move.</param> /// <param name="destination">The destination to move the file to.</param> /// <returns>True if the move was successful, otherwise False.</returns> public bool MoveFile(Media item, string destination) { MoveFileItem FileInfo = new MoveFileItem() { VideoId = item.MediaId, FileName = item.FileName, NewFileName = destination }; return(MoveFile(FileInfo, false)); }
public MoveFileItem Load(Guid videoId) { filesList.RemoveAll(v => v.VideoId == videoId); MoveFileItem NewItem = LoadListInternal(videoId).FirstOrDefault(); if (NewItem != null) { filesList.Add(NewItem); } return(NewItem); }
private void FilesView_ItemDoubleClick(object sender, MouseButtonEventArgs e) { if (FilesView.SelectedItem != null) { MoveFileItem Item = (MoveFileItem)FilesView.SelectedItem; EditVideoWindow.Instance(Item.VideoId, null, delegate(Media result) { if (result != null) { business.Load(result.MediaId); DisplayData(); } }); } }
/// <summary> /// Moves specified video to specified location. /// </summary> /// <param name="item">The information about the move.</param> /// <param name="save">Whether to save changes to the database.</param> /// <returns>True if the move was successful, otherwise False.</returns> public bool MoveFile(MoveFileItem item, bool save) { try { Directory.CreateDirectory(Path.GetDirectoryName(Settings.NaturalGroundingFolder + item.NewFileName)); File.Move(Settings.NaturalGroundingFolder + item.FileName, Settings.NaturalGroundingFolder + item.NewFileName); if (save) { EditVideoBusiness Business = new EditVideoBusiness(); Media EditVideo = Business.GetVideoById(item.VideoId); EditVideo.FileName = item.NewFileName; Business.Save(); } // Delete source folder if empty. string SourceDirectory = Path.GetDirectoryName(Settings.NaturalGroundingFolder + item.FileName); if (!Directory.EnumerateFileSystemEntries(SourceDirectory).Any()) { Directory.Delete(SourceDirectory); } return(true); } catch { return(false); } }