public async Task <IActionResult> Edit([FromForm] AudioViewModel audioViewModel, CancellationToken ct)
        {
            if (!ModelState.IsValid)
            {
                return(View(audioViewModel));
            }

            var audio = _mapper.Map <Audio>(audioViewModel);

            var authResult = await _authorizationService.AuthorizeAsync(User, audio, Operations.Update);

            if (!authResult.Succeeded)
            {
                return(Forbid());
            }

            try
            {
                await _audioService.UpdateAudioAsync(audio, ct);
            }
            catch (KeyNotFoundException)
            {
                return(AudioNotFound());
            }

            return(RedirectToAction(nameof(Index)));
        }
 public void LoadAudioViewModel(AudioViewModel viewModel)
 {
     viewModel.Headline  = GetStringValue(_languageCurrent.AUDIO_HEADLINE, "AUDIO_HEADLINE");
     viewModel.BodyFirst = GetStringValue(_languageCurrent.AUDIO_BODY_FIRST, "AUDIO_BODY_FIRST");
     viewModel.BodyBold  = GetStringValue(_languageCurrent.AUDIO_BODY_BOLD, "AUDIO_BODY_BOLD");
     viewModel.BodyLast  = GetStringValue(_languageCurrent.AUDIO_BODY_LAST, "AUDIO_BODY_LAST");
 }
Beispiel #3
0
        public AudioPlayer()
        {
            BindingContext = new AudioViewModel();
            InitializeComponent();

            Player.PlaybackEnded += (sender, e) => {
                AudioViewModel.PlayState = "Pause";
            };

            //fake an audio load
            Task.Run(async() => {
                AudioViewModel.IsLoading = true;
                await Task.Delay(TimeSpan.FromSeconds(5));

                audioFileToPlay = "YMXB.mp3";
                hasLoadedAudio  = LoadAudio(audioFileToPlay);

                AudioViewModel.Album      = "The Obvious Exit";
                AudioViewModel.ArtistName = "Flippy";
                AudioViewModel.SongTitle  = "y=mx+b";
                AudioViewModel.IsLoading  = false;
            });

            Device.StartTimer(TimeSpan.FromSeconds(.5), () => {
                if (Player == null)
                {
                    return(false);
                }

                AudioViewModel.TrackElapsed = Player.CurrentPosition;
                return(true);
            });
        }
Beispiel #4
0
 public AudioEngine(AudioViewModel vm)
 {
     this.vm = vm;
     Bass.BASS_Init(-1, 44100, BASSInit.BASS_DEVICE_DEFAULT, IntPtr.Zero);
     _timer       = new BASSTimer(100);
     _timer.Tick += Timer_Tick;
     _timer.Start();
 }
        public IActionResult Index()
        {
            var audioVM = new AudioViewModel()
            {
                Stations = _stationRepository.Get()
            };

            return(View(audioVM));
        }
Beispiel #6
0
 public ActionResult Edit(int id, AudioViewModel audioViewModel)
 {
     if (ModelState.IsValid)
     {
         // TODO: Add update logic here
         var audioModel = _mapper.Map <AudioModel>(audioViewModel);
         _audioService.Update(audioModel);
         return(RedirectToAction("Index"));
     }
     return(View());
 }
        public IActionResult List(AudioViewModel audioVM)
        {
            var pageNumber = (audioVM.Pnumber == 0) ? 1 : audioVM.Pnumber;
            var pageSize   = 10;

            audioVM.Stations = _stationRepository.Get();
            var audios = _audioRepository.GetByStationAndDate(audioVM.StationId, audioVM.Start, audioVM.End).ToPagedList(pageNumber, pageSize);

            audioVM.Audios = audios;
            return(View(audioVM));
        }
Beispiel #8
0
 public ActionResult AddAudio(AudioViewModel audioViewModel)
 {
     if (ModelState.IsValid)
     {
         Audio audioModel = new Audio();
         audioModel.UpdateAudio(audioViewModel);
         audioModel.CreatedDate = DateTime.Now;
         var audio = _audioService.Add(audioModel);
         _audioService.Save();
         return(RedirectToAction("AddTrack", "Admin", new { audioId = audio.Id }));
     }
     return(View());
 }
Beispiel #9
0
 public ActionResult Delete(int id, AudioViewModel audioViewModel)
 {
     try
     {
         // TODO: Add delete logic here
         _audioService.Remove(id);
         return(RedirectToAction("Index"));
     }
     catch
     {
         return(View());
     }
 }
        public AudioPage()
        {
            InitializeComponent();
            NavigationPage.SetHasNavigationBar(this, false);
            //NavigationPage.SetHasBackButton(this, false);
            //NavigationPage.SetBackButtonTitle(this, "Close");
            // really should be X icon

            if (_vm == null)
            {
                BindingContext = new AudioViewModel(null);
            }
        }
Beispiel #11
0
 public static void UpdateAudio(this Audio audio, AudioViewModel audioVM)
 {
     audio.Id          = audioVM.Id;
     audio.AudioTitle  = audioVM.AudioTitle;
     audio.Path        = audioVM.Path;
     audio.Level       = audioVM.Level;
     audio.Duration    = audioVM.Duration;
     audio.Description = audioVM.Description;
     audio.CreatedBy   = audioVM.CreatedBy;
     audio.CreatedDate = audioVM.CreatedDate;
     audio.UpdateBy    = audioVM.UpdateBy;
     audio.UpdateDate  = audioVM.UpdateDate;
     audio.Status      = audioVM.Status;
     audio.NumTrack    = audioVM.NumTrack;
 }
Beispiel #12
0
        public AudioEngine(AudioViewModel vm)
        {
            Logger.Instance.WriteLog("Initializing audio engine...");
            this.vm = vm;
            Bass.BASS_Init(-1, 44100, BASSInit.BASS_DEVICE_DEFAULT, IntPtr.Zero);
            _timer       = new BASSTimer(100);
            _timer.Tick += Timer_Tick;
            _timer.Start();

            if (Bass.BASS_ErrorGetCode() == BASSError.BASS_OK)
            {
                Logger.Instance.WriteLog("Audio engine initialized!");
            }
            else
            {
                Logger.Instance.WriteLog("Audio engine initialized with error! Error code: {0}", LogType.WARNING, Bass.BASS_ErrorGetCode());
            }
        }
Beispiel #13
0
        public void OpenAndPlay(AudioViewModel audio, IPlayable playable = null)
        {
            try
            {
                EnablePlaying(playable);

                Close();

                var uri = new Uri(audio.FilePath);

                _mediaPlayer.Open(uri);

                Play();
            }
            catch (Exception e)
            {
                Logger.Log.Error(string.Format("Application exception {0} {1} {2}", e.Message, e.StackTrace, e.Data));
            }
        }
Beispiel #14
0
        public ActionResult Create(AudioViewModel audioViewModel)
        {
            string fileName  = Path.GetFileNameWithoutExtension(audioViewModel.AudioFile.FileName);
            string extention = Path.GetExtension(audioViewModel.AudioFile.FileName);

            fileName = fileName + DateTime.Now.ToString("yymmssfff") + extention;
            audioViewModel.AudioPath = "~/Audio/" + fileName;
            fileName = Path.Combine(Server.MapPath("~/Audio/"), fileName);
            audioViewModel.AudioFile.SaveAs(fileName);

            if (ModelState.IsValid)
            {
                var audioModel = _mapper.Map <AudioModel>(audioViewModel);
                _audioService.Add(audioModel);
                //ViewBag.ActiveUserRole = GetActiveUserRole();
                return(RedirectToAction("Index"));
            }

            ModelState.Clear();
            return(View());
        }
Beispiel #15
0
 public AudioViewPage()
 {
     this.InitializeComponent();
     DataContext = new AudioViewModel();
     if (!String.IsNullOrEmpty(ApplicationService.Instance.Settings.BackGroundColor))
     {
         try
         {
             var brush =
                 HexToColorConverter.GetColorFromHex(ApplicationService.Instance.Settings.BackGroundColor);
             PageGrid.Background = brush;
         }
         catch (Exception ex)
         {
             Debug.WriteLine(ex.ToString());
         }
     }
     //UserId = Frame.GetNavigationState();
     //((AudioViewModel) DataContext).User.Uid = UserId;
     //((AudioViewModel)DataContext).AddAudiosCommand.Execute(null);
 }
Beispiel #16
0
 public AudioList()
 {
     InitializeComponent();
     BindingContext = new AudioViewModel();
 }