Beispiel #1
0
        public SettingsViewModel(
            INavigationService navigationService,
            IVKLoginService vkLoginService,
            ISettingsService settingsService,
            ILastFmLoginService lastFmLoginSevice,
            ILocService locService,
            IDialogsService dialogsService,
            IInTouchWrapper inTouchWrapper,
            InTouch inTouch,
            ILaunchViewResolver launchViewResolver,
            INotificationsService notificationsService)
        {
            _navigationService    = navigationService;
            _vkLoginService       = vkLoginService;
            _settingsService      = settingsService;
            _lastFmLoginService   = lastFmLoginSevice;
            _inTouchWrapper       = inTouchWrapper;
            _inTouch              = inTouch;
            _locService           = locService;
            _dialogsService       = dialogsService;
            _launchViewResolver   = launchViewResolver;
            _notificationsService = notificationsService;

            Authorizations            = new ObservableCollection <IServiceAuthorization>();
            UpdateDatabaseCommand     = new DelegateCommand(OnUpdateDatabaseCommand);
            ExtractMp3FromVksmCommand = new DelegateCommand(OnExtractMp3FromVksmCommand);
        }
Beispiel #2
0
        /// <summary>
        /// Инициализирует новый экземпляр класса <see cref="LoginViewModel"/>.
        /// </summary>
        /// <param name="navigationService">Сервис навигации.</param>
        /// <param name="loginService">Сервис авторизации ВКонтакте.</param>
        public LoginViewModel(INavigationService navigationService, IVKLoginService loginService,
                              IVKLongPollService vkLongPollService)
        {
            this.navigationService = navigationService;
            this.loginService      = loginService;

            LoginCommand = new DelegateCommand(OnLoginCommand);
        }
 private async void vkLoginService_UserLogout(IVKLoginService sender, EventArgs e)
 {
     await _dispatcherWrapper.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
     {
         Navigate(AppConstants.DEFAULT_LOGIN_VIEW, null);
         ClearHistory();
     });
 }
Beispiel #4
0
        public NotificationsService(
            ISettingsService settingsService,
            IVKLoginService vkLoginService)
        {
            _settingsService = settingsService;

            vkLoginService.UserLogin  += vkLoginService_UserLogin;
            vkLoginService.UserLogout += vkLoginService_UserLogout;
        }
        private async void vkLoginService_UserLogin(IVKLoginService sender, EventArgs e)
        {
            var launchViewResolver = _serviceResolver.Resolve <ILaunchViewResolver>();

            ClearHistory();
            if (!launchViewResolver.TryOpenSpecialViews() && await launchViewResolver.EnsureDatabaseUpdated() == false)
            {
                launchViewResolver.OpenDefaultView();
            }
        }
        public UserContentViewModel(
            InTouch inTouch,
            INavigationService navigationService,
            IPlayerService playerService,
            IDownloadsServiceHelper downloadsServiceHelper,
            IAppLoaderService appLoaderService,
            IVKLoginService vkLoginService,
            IDialogsService dialogsService,
            ILocService locService,
            IInTouchWrapper inTouchWrapper,
            ILaunchViewResolver launchViewResolver,
            IPurchaseService purchaseService)
        {
            _inTouch                = inTouch;
            _navigationService      = navigationService;
            _playerService          = playerService;
            _downloadsServiceHelper = downloadsServiceHelper;
            _appLoaderService       = appLoaderService;
            _vkLoginService         = vkLoginService;
            _dialogsService         = dialogsService;
            _locService             = locService;
            _inTouchWrapper         = inTouchWrapper;
            _launchViewResolver     = launchViewResolver;
            _purchaseService        = purchaseService;

            SelectedItems  = new List <object>();
            PrimaryItems   = new ObservableCollection <ICommandBarElement>();
            SecondaryItems = new ObservableCollection <ICommandBarElement>();

            ExecuteTracksListItemCommand = new DelegateCommand <object>(OnExecuteTracksListItemCommand);
            NotImplementedCommand        = new DelegateCommand(() => _navigationService.Navigate("AccessDeniedView", null));
            DownloadItemCommand          = new DelegateCommand <object>(OnDownloadItemCommand, CanExecuteDownloadItemCommand);
            ActivateSelectionMode        = new DelegateCommand(SetSelectionMode, CanSelectionMode);
            ReloadContentCommand         = new DelegateCommand(OnReloadContentCommand);
            DownloadSelectedCommand      = new DelegateCommand(OnDownloadSelectedCommand, CanExecuteDownloadSelectedCommand);
            SelectionChangedCommand      = new DelegateCommand(OnSelectionChangedCommand);
            SelectAllCommand             = new DelegateCommand(OnSelectAllCommand, CanSelectionMode);

            AddToMyCollectionCommand         = new DelegateCommand <object>(OnAddToMyCollection, CanAddToMyCollection);
            AddSelectedToMyCollectionCommand = new DelegateCommand(OnAddSelectedToMyCollection, CanAddSelected);
            PlaySelectedCommand = new DelegateCommand(OnPlaySelectedCommand, HasSelectedAudios);
            PlayShuffleCommand  = new DelegateCommand(OnPlayShuffleCommand);

            DeleteCommand         = new DelegateCommand <object>(OnDeleteCommand, CanDelete);
            DeleteSelectedCommand = new DelegateCommand(OnDeleteSelectedCommand, CanDeleteSelected);

            OpenTransferManagerCommand = new DelegateCommand(OnOpenTransferManagerCommand);
            OpenMainViewCommand        = new DelegateCommand(OnOpenMainViewCommand);

            ShowTrackInfoCommand = new DelegateCommand <Audio>(OnShowTrackInfoCommand);
        }
Beispiel #7
0
        public PromoViewModel(
            INavigationService navigationService,
            ILocService locService,
            IVKLoginService vkLoginService,
            ISettingsService settingsService,
            ILaunchViewResolver launchViewResolver)
        {
            _navigationService  = navigationService;
            _locService         = locService;
            _vkLoginService     = vkLoginService;
            _settingsService    = settingsService;
            _launchViewResolver = launchViewResolver;

            FillScreenItems();
        }
Beispiel #8
0
        public LoginViewModel(
            IVKLoginService vkLoginService,
            IDialogsService dialogsService,
            ILocService locService,
            INavigationService navigationService)
        {
            _vkLoginService    = vkLoginService;
            _dialogsService    = dialogsService;
            _locService        = locService;
            _navigationService = navigationService;

            JoinCommand           = new DelegateCommand(async() => await Launcher.LaunchUriAsync(new Uri("https://vk.com/join")));
            RestoreCommand        = new DelegateCommand(async() => await Launcher.LaunchUriAsync(new Uri("https://vk.com/restore")));
            GoToDirectAuthCommand = new DelegateCommand(OnGoToDirectAuthCommand);

#if WINDOWS_UWP
            LoginCommand = new DelegateCommand(() => LoginUwp());
#endif
        }
        public VKSaverNavigationService(
            INavigationService prismNavigationService,
            IVKLoginService vkLoginService,
            IMetricaService metricaService,
            IDispatcherWrapper dispatcherWrapper,
            IServiceResolver serviceResolver)
        {
            _prismNavigationService = prismNavigationService;
            _metricaService         = metricaService;
            _dispatcherWrapper      = dispatcherWrapper;
            _serviceResolver        = serviceResolver;

            vkLoginService.UserLogin  += vkLoginService_UserLogin;
            vkLoginService.UserLogout += vkLoginService_UserLogout;

#if WINDOWS_PHONE_APP
            HardwareButtons.BackPressed += HardwareButtons_BackPressed;
#endif
        }
Beispiel #10
0
        public DirectAuthViewModel(
            IVKLoginService vkLoginService,
            IAppLoaderService appLoaderService,
            IDialogsService dialogsService,
            ILocService locService,
            INavigationService navigationService,
            IVKCaptchaHandler vkCaptchaHandler)
        {
            _vkLoginService    = vkLoginService;
            _appLoaderService  = appLoaderService;
            _dialogsService    = dialogsService;
            _locService        = locService;
            _navigationService = navigationService;
            _vkCaptchaHandler  = vkCaptchaHandler;

            JoinCommand      = new DelegateCommand(async() => await Launcher.LaunchUriAsync(new Uri("https://vk.com/join")));
            RestoreCommand   = new DelegateCommand(async() => await Launcher.LaunchUriAsync(new Uri("https://vk.com/restore")));
            GoToOAuthCommand = new DelegateCommand(OnGoToOAuthCommand);
        }
Beispiel #11
0
 private async void vkLoginService_UserLogout(IVKLoginService sender, EventArgs e)
 {
     await DeactivateYandexPushAsync();
 }
Beispiel #12
0
 /// <summary>
 /// Инициализирует новый экземпляр класса <see cref="VKService"/> с
 /// необходимым набором сервисов.
 /// </summary>
 /// <param name="loginService">Сервис авторизации ВКонтакте.</param>
 public VKService(IVKLoginService loginService)
 {
     this.loginService = loginService;
 }