Esempio n. 1
0
        public void ScanLibrary([FromQuery] Guid?collectionId, [FromQuery] bool clearLibrary = false)
        {
            var cancellationToken = new CancellationTokenSource();

            if (clearLibrary)
            {
                MediaLibrary.ClearLibraryAsync(Guid.Empty, collectionId, cancellationToken.Token).ConfigureAwait(false);
            }

            MediaLibrary.ScanLibrary(Guid.Empty, collectionId, clearLibrary, cancellationToken.Token);
        }
Esempio n. 2
0
        public async Task <IActionResult> MusicFolderSettingsAsync(CancellationToken cancellationToken)
        {
            var queryParameters = Request.GetSubsonicQueryParameters();

            var authenticationContext = await _subsonicAuthorization.AuthorizeRequestAsync(queryParameters, cancellationToken).ConfigureAwait(false);

            if (!authenticationContext.IsAuthorized || !authenticationContext.IsInRole(Role.Settings))
            {
                return(StatusCode(401));
            }

            if (Request.Query.ContainsKey("scanNow"))
            {
                MediaLibrary.ScanLibrary(Guid.Empty, null, false, cancellationToken);
            }

            return(StatusCode(302));
        }