public IActionResult AddFile(AddFileViewModel model) { if (ModelState.IsValid) { if (repository.AllFiles.Any(x => x.FileName == model.File.FileName)) { ModelState.AddModelError("", "File with name " + model.File.FileName + " is alredy exist."); return(View(model)); } var directory = Directory.GetFiles(environment.ContentRootPath + @"/wwwroot/FileExtansions"); var ext = new String(model.File.FileName.TakeLast(model.File.FileName.Length - (model.File.FileName.LastIndexOf('.') == -1 ? model.File.FileName.Length : model.File.FileName.LastIndexOf('.')) - 1).ToArray()); if (!directory.Any(x => x == ("File" + ext + ".png"))) { ext = ""; } var File = new AppFile() { FileName = model.File.FileName, FileExtansion = ext }; using (var reader = new BinaryReader(model.File.OpenReadStream())) { byte[] data = reader.ReadBytes((int)model.File.Length); File.FileSize = String.Format(new FileSizeFormatProvider(), "{0:fs}", data.LongLength); File.Value = data; } repository.AddFile(File); return(LocalRedirect(model.ReturnUrl)); } return(View(model)); }
public Error CheckExtensionType(AddFileViewModel model) { bool accept = false; Error error = null; string extensionsText = String.Join(" ", model.FileDetails.ExtensionList); string extension = Path.GetExtension(model.FileToSave.FileName); foreach (var extensionToCheck in model.FileDetails.ExtensionList) { if (model.FileToSave != null) { if (extension == extensionToCheck) { accept = true; break; } } } if (accept == false) { //ModelState.AddModelError("FileToSave", $"Plik typu {extension} nie jest akceptowany wprowadź plik typu {extensionsText}"); error = new Error("FileToSave", $"Plik typu {extension} nie jest akceptowany wprowadź plik typu {extensionsText}"); } return(error); }
public ActionResult Add(int Id) { var userId = User.Identity.GetUserId(); var ticket = DbContext.Tickets.FirstOrDefault(t => t.ID == Id); if ((User.IsInRole("Admin") || User.IsInRole("Project Manager")) || (User.IsInRole("Developer") && userId == ticket.AssignedToUserID) || (User.IsInRole("Submitter") && userId == ticket.OwnerUserID)) { // Continue } else { return(RedirectToAction("FullTicketBySlug", "Ticket", new { slug = ticket.Slug })); } var model = new AddFileViewModel { TicketID = Id }; return(View(model)); }
private async void Button_Click(object sender, RoutedEventArgs e) { var openPicker = new Windows.Storage.Pickers.FileOpenPicker(); openPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.List; openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.ComputerFolder; // Users expect to have a filtered view of their folders depending on the scenario. // For example, when choosing a documents folder, restrict the filetypes to documents for your application. openPicker.FileTypeFilter.Add(".phy");// ([".png", ".jpg", ".jpeg"]); StorageFile file = await openPicker.PickSingleFileAsync(); if (file != null) { AddFileViewModel model = new AddFileViewModel(file); this.ViewModel = model; this.DataContext = model; this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, new Windows.UI.Core.DispatchedHandler( delegate() { model.InitLoadHeader(); })); } else { this.ViewModel = null; this.DataContext = null; } }
public IActionResult Index() { AddFileViewModel model = new AddFileViewModel(); model.Categories = _context.Categories.ToList(); model.Files = _context.CustomFiles.ToList(); return(View(model)); }
public ActionResult AddFile(int Id, string ObjectType, FileType filetype) { AddFileViewModel model = new AddFileViewModel(); model.ObjectId = Id; model.ObjectType = ObjectType; model.FileDetails = new FileTypeDetails(filetype); return(View(model)); }
public IActionResult AddFile(string returnUrl) { var model = new AddFileViewModel() { ReturnUrl = returnUrl }; return(View(model)); }
protected async override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); var openPicker = new Windows.Storage.Pickers.FileOpenPicker(); openPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.List; openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.ComputerFolder; openPicker.FileTypeFilter.Add(".phy"); IReadOnlyList<StorageFile> files = await openPicker.PickMultipleFilesAsync(); if (files != null && files.Count() > 0) { this.m_addFileModels.Clear(); bool allCorrect = true; foreach (var file in files) { var aircraftModel = AircraftDataAnalysisWinRT.ApplicationContext.Instance.CurrentAircraftModel; var flightParameter = AircraftDataAnalysisWinRT.ApplicationContext.Instance.GetFlightParameters( ApplicationContext.Instance.CurrentAircraftModel); FlightDataEntitiesRT.IFlightRawDataExtractor extractor = null; FlightDataEntitiesRT.Flight currentFlight = null; bool correct = CreateTempCurrentFlight(file, aircraftModel, flightParameter, ref extractor, ref currentFlight); AddFileViewModel model = new AddFileViewModel(currentFlight, file, extractor, aircraftModel, flightParameter); model.IsTempFlightParseError = !correct; allCorrect = allCorrect & correct; model.InitLoadHeader(); if (model.Header != null) { currentFlight.EndSecond = model.Header.FlightSeconds; if (model.Header.Latitudes != null && model.Header.Longitudes != null) currentFlight.GlobeDatas = AddFileViewModel.ToGlobeDatasStatic(model.Header.Latitudes, model.Header.Longitudes); } this.m_addFileModels.Add(model); } if (allCorrect == false) this.tbMessage1.Visibility = Windows.UI.Xaml.Visibility.Visible; rgdItems.ItemsSource = this.m_addFileModels; } else { this.Frame.GoBack(); } }
public async Task <ActionResult> AddFile(AddFileViewModel model) { var roomFile = new RoomFile(); roomFile.Name = model.FileUpload.FileName; roomFile.ContentType = model.FileUpload.ContentType; roomFile.RoomID = model.RoomID; using (var reader = new BinaryReader(model.FileUpload.InputStream)) { roomFile.Content = reader.ReadBytes(model.FileUpload.ContentLength); } db.RoomFiles.Add(roomFile); await db.SaveChangesAsync(); return(RedirectToAction("Edit", new { id = model.RoomID })); }
public ActionResult AddF(int?gro, AddFileViewModel model) { if (ModelState.IsValid) { if (db.Files.Where(fg => fg.Name == model.Name).SingleOrDefault() != null) { ModelState.AddModelError("Error", @"This name is already occupied please think of another one"); return(View("AddFile", model)); } var file = new File(); var uid = User.Identity.GetUserId(); ApplicationUser auth = db.Users.Where(u => u.Id.Equals(uid)).Single(); if (!db.Files.Any()) { file.Fid = 1; } else { file.Fid = db.Files.Max(f => f.Fid) + 1; } file.Author = auth; Group gr = db.Groups.Where(g => g.GId == gro).Single(); file.Group = gr; file.Name = model.Name; file.Link = model.Link; file.Created = DateTime.Now; if (gr.Files == null) { gr.Files = new List <File>(); } gr.Files.Add(file); if (auth.Files == null) { auth.Files = new List <File>(); } auth.Files.Add(file); db.Files.Add(file); db.Entry(gr).State = EntityState.Modified; db.Entry(auth).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Files", "File")); } return(View(model)); }
public IActionResult Add(AddFileViewModel model) { if (ModelState.IsValid) { try { bool isSucced = true; foreach (var item in model.Files) { var dtoPhoto = new FileManager().Save(item); var result = _commandDispatcher.Dispatch(new AddFileCommand() { FileName = dtoPhoto.FileName, FileSize = dtoPhoto.FileSize, FileType = dtoPhoto.FileType, FileUrl = dtoPhoto.FileUrl, }); if (!string.IsNullOrEmpty(result.Message)) { ModelState.AddModelError("", result.Message); } foreach (var err in result.Errors) { ModelState.AddModelError("", err); } isSucced = isSucced && result.IsSuccess; } if (isSucced) { return(RedirectToAction(nameof(List))); } } catch (TypeAccessException ex) { ModelState.AddModelError("", ex.Message); } } return(View()); }
public async Task <bool> AddFileToServer(AddFileViewModel model) { try { var uniqueFileName = GetUniqueFileName(model.FileToSave.FileName, model.ObjectId); var uploads = Path.Combine(hostingEnvironment.WebRootPath, model.FileDetails.DirectoryToSave); var filePath = Path.Combine(uploads, uniqueFileName); await model.FileToSave.CopyToAsync(new FileStream(filePath, FileMode.Create)); return(fileobject.SavePath(model.ObjectId, uniqueFileName, model.FileDetails)); } catch (Exception ex) { return(false); } }
public async Task <ActionResult> AddFile(AddFileViewModel model) { Error error; if (!ModelState.IsValid) { return(View(model)); } bool check = false; IFileObjectFactory objectFactory = GetFileObject(model.ObjectType); fileAdder.fileobject = objectFactory.BuildObject(); error = fileAdder.CheckExtensionType(model); if (error != null) { ModelState.AddModelError(error.Key, error.Message); } if (ModelState.IsValid) { check = await fileAdder.AddFileToServer(model); //to do : Save uniqueFileName to your db table } else { return(View("AddFile", model)); } if (check) { return(RedirectToAction(model.FileDetails.MethodName, new { ObjectType = model.ObjectType, Id = model.ObjectId })); } else { return(View("Error", "Nie dodano pliku")); } }
public ActionResult Add(AddFileViewModel model) { if (!ModelState.IsValid) { return(View(model)); } if (model.file != null) { if (model.file.ContentType != "application/vnd.ms-excel") { TempData["Erors"] = "Неправильное расширение файла, загрузите файл с расширением xls"; return(View()); } else { try { var fileName = this.HttpContext.Request.MapPath("~/Content/shedule.xls"); model.file.SaveAs(fileName); IEnumerable <busStop> answer = SheduleCreator.Create(fileName); repository.DeleteAll(); repository.AddStops(answer); TempData["Success"] = "Расписание добавлено"; } catch { TempData["Erors"] = "Ошибка при обработке файла, проверьте правильность файла"; } return(View()); } } else { TempData["Erors"] = "Выберите файл"; return(View()); } }
protected async override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); var openPicker = new Windows.Storage.Pickers.FileOpenPicker(); openPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.List; openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.ComputerFolder; openPicker.FileTypeFilter.Add(".phy"); IReadOnlyList<StorageFile> files = await openPicker.PickMultipleFilesAsync(); if (files != null && files.Count() > 0) { this.m_addFileModels.Clear(); foreach (var file in files) { var aircraftModel = AircraftDataAnalysisWinRT.ApplicationContext.Instance.CurrentAircraftModel; var flightParameter = AircraftDataAnalysisWinRT.ApplicationContext.Instance.GetFlightParameters( ApplicationContext.Instance.CurrentAircraftModel); FlightDataEntitiesRT.IFlightRawDataExtractor extractor = null; FlightDataEntitiesRT.Flight currentFlight = null; CreateTempCurrentFlight(file, aircraftModel, flightParameter, ref extractor, ref currentFlight); AddFileViewModel model = new AddFileViewModel(currentFlight, file, extractor, aircraftModel, flightParameter); model.InitLoadHeader(); this.m_addFileModels.Add(model); } rgdItems.ItemsSource = this.m_addFileModels; } else { this.Frame.GoBack(); } }
protected async override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); // Create the picker object and set options var openPicker = new Windows.Storage.Pickers.FileOpenPicker(); openPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.List; openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.ComputerFolder; // Users expect to have a filtered view of their folders depending on the scenario. // For example, when choosing a documents folder, restrict the filetypes to documents for your application. openPicker.FileTypeFilter.Add(".phy");// ([".png", ".jpg", ".jpeg"]); StorageFile file = await openPicker.PickSingleFileAsync(); if (file != null) { AddFileViewModel model = new AddFileViewModel(file); this.ViewModel = model; this.DataContext = model; } else { this.ViewModel = null; this.DataContext = null; } }
public ActionResult Add(AddFileViewModel formData) { var userId = User.Identity.GetUserId(); var ticket = DbContext.Tickets.FirstOrDefault(t => t.ID == formData.TicketID); if ((User.IsInRole("Admin") || User.IsInRole("Project Manager")) || (User.IsInRole("Developer") && userId == ticket.AssignedToUserID) || (User.IsInRole("Submitter") && userId == ticket.OwnerUserID)) { // Continue } else { return(RedirectToAction("FullTicketBySlug", "Ticket", new { slug = ticket.Slug })); } if (formData.File != null) { if (!Directory.Exists(Constants.MappedUploadFolder)) { Directory.CreateDirectory(Constants.MappedUploadFolder); } var fileName = formData.File.FileName; var fullPathWithName = Constants.MappedUploadFolder + fileName; formData.File.SaveAs(fullPathWithName); var attachment = new TicketAttachment { TicketID = formData.TicketID, FilePath = fullPathWithName, Description = formData.Description, Created = DateTime.Now, UserID = userId, FileUrl = Constants.UploadFolder + fileName, }; DbContext.TicketAttachments.Add(attachment); } var notifyUsers = DbContext.TicketNotifications.Where(u => u.TicketID == ticket.ID).ToList(); foreach (var notifyuser in notifyUsers) { var user = DbContext.Users.FirstOrDefault(u => u.Id == notifyuser.UserID); string alert = $"new attachment on a ticket you are watching: {ticket.Title}"; if (user == ticket.AssignedToUser) { alert = $"new attachment on a ticket assigned to you: {ticket.Title}"; } var message = new IdentityMessage { Destination = $"{user.Email}", Subject = $"{alert}", Body = $"{alert}" }; var emailService = new EmailService(); emailService.SendAsync(message); } DbContext.SaveChanges(); return(RedirectToAction("FullTicketBySlug", "Ticket", new { slug = ticket.Slug })); }
private async void btImport_Click(object sender, RoutedEventArgs e) { var openPicker = new Windows.Storage.Pickers.FileOpenPicker(); openPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.List; openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.ComputerFolder; openPicker.FileTypeFilter.Add(".phy"); StorageFile file = await openPicker.PickSingleFileAsync(); if (file != null) { //20131029 liangdawen: var aircraftModel = AircraftDataAnalysisWinRT.ApplicationContext.Instance.CurrentAircraftModel; var flightParameter = AircraftDataAnalysisWinRT.ApplicationContext.Instance.GetFlightParameters( ApplicationContext.Instance.CurrentAircraftModel); FlightDataEntitiesRT.IFlightRawDataExtractor extractor = null; FlightDataEntitiesRT.Flight currentFlight = null; bool correct = CreateTempCurrentFlight(file, aircraftModel, flightParameter, ref extractor, ref currentFlight); AddFileViewModel model = new AddFileViewModel(currentFlight, file, extractor, aircraftModel, flightParameter); model.IsTempFlightParseError = !correct; this.Frame.Navigate(typeof(AircraftDataAnalysisWinRT.Domain.ImportLoadConfirmPage), model); //20131029 liangdawen //this.SetLoading(true); //await this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, // new Windows.UI.Core.DispatchedHandler( // delegate() // { // var t = System.Threading.Tasks.Task.Delay(5000); // t.Wait(); // //debug: 模拟需要时间 // model.InitLoadHeader(); // })); //this.SetLoading(false); //ImportAircraftConfirm confirm = new ImportAircraftConfirm(); //confirm.Show(dialogArea, model); } else { //this.ViewModel = null; //this.DataContext = null; } }
public AddFile(ObservableCollection <File> files, File file = null) { InitializeComponent(); DataContext = new AddFileViewModel(this, files, file); }
private void DoImportCore(AddFileViewModel model) { try { var parameters = ApplicationContext.Instance.GetFlightParameters( ApplicationContext.Instance.CurrentAircraftModel); var extractor = FlightDataReading.AircraftModel1.FlightRawDataExtractorFactory .CreateFlightRawDataExtractor(model.File, parameters); IDataReading reading = new DataReading(extractor, model.Flight, parameters); reading.Header = model.Header; reading.ReadData(); } catch (Exception ex) { //SERVER log? System.Diagnostics.Debug.WriteLine(ex.Message); } }
public AddFileWindow(List <string> keyIdentifiers, Action <string /* Filename */, byte[] /* byte Array */, bool /* is secret */, string /* Key identifier */> addFile) { InitializeComponent(); DataContext = new AddFileViewModel(keyIdentifiers, AddClose, CancelClose, addFile); }
private async void Button_Click(object sender, RoutedEventArgs e) { var openPicker = new Windows.Storage.Pickers.FileOpenPicker(); openPicker.ViewMode = Windows.Storage.Pickers.PickerViewMode.List; openPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.ComputerFolder; openPicker.FileTypeFilter.Add(".phy");// ([".png", ".jpg", ".jpeg"]); StorageFile file = await openPicker.PickSingleFileAsync(); if (file != null) { var aircraftModel = ServerHelper.GetCurrentAircraftModel(); var flightParameter = ServerHelper.GetFlightParameters(aircraftModel); FlightDataEntitiesRT.IFlightRawDataExtractor extractor = null; if (aircraftModel != null && !string.IsNullOrEmpty(aircraftModel.ModelName)) { if (aircraftModel.ModelName == "F4D") { var result = FlightDataReading.AircraftModel1.FlightRawDataExtractorFactory .CreateFlightRawDataExtractor(file, flightParameter); extractor = result; } } this.CurrentFlight = new FlightDataEntitiesRT.Flight() { Aircraft = new FlightDataEntitiesRT.AircraftInstance() { AircraftModel = aircraftModel, AircraftNumber = "1234", //debug LastUsed = DateTime.Now }, StartSecond = 0, FlightName = file.Name, FlightID = this.RemoveIllegalChars(file.DisplayName) }; AddFileViewModel model = new AddFileViewModel(this.CurrentFlight, file, extractor, aircraftModel, flightParameter); model.InitLoadHeader(); this.ViewModel = model; if (this.ViewModel != null && this.ViewModel.Header != null) { //this.CurrentFlight = new FlightDataEntitiesRT.Flight() //{ // Aircraft = new FlightDataEntitiesRT.AircraftInstance() // { // AircraftModel = // ServerHelper.GetCurrentAircraftModel(), // AircraftNumber = "1234", //debug // LastUsed = DateTime.Now // }, // EndSecond = model.Header.FlightSeconds, // StartSecond = 0, // FlightName = file.Name, // FlightID = this.RemoveIllegalChars(file.DisplayName) //}; } else { this.CurrentFlight = null; } this.flightHost.DataContext = this.CurrentFlight; } else { this.ViewModel = null; this.DataContext = null; } this.tbMessage.Text = "Command completed " + DateTime.Now.ToString(); }