Пример #1
0
        public virtual async Task <List <RoleResultSet> > IsRoleAuthorized(int currentUserId, string moduleName, string permission)
        {
            _logger.Log(new LogInformation
            {
                Module  = Constants.RoleModule,
                UserId  = currentUserId,
                Message = Constants.MethodInvokedMessage
            });

            try
            {
                var roles = await _role.Repository.IsRoleAuthorized(currentUserId, moduleName, permission);

                if (roles != null)
                {
                    return(roles);
                }

                return(await Task.FromResult <List <RoleResultSet> >(null));
            }
            catch (Exception exception)
            {
                _logger.Log(new LogInformation
                {
                    Data      = $"currentUserId: {currentUserId}",
                    Module    = Constants.RoleModule,
                    UserId    = currentUserId,
                    Exception = exception,
                    Message   = Constants.ExceptionMessage
                });
                throw;
            }
        }
Пример #2
0
 private void OnProgress(object sender, Xabe.FFmpeg.Events.ConversionProgressEventArgs e)
 {
     if (m_mediaFile != null)
     {
         m_mediaFile.Progress = (int)((float)(e.Duration.TotalSeconds / e.TotalLength.TotalSeconds) * 100.0f);
         m_logger.Log($"Transcoding {m_mediaFile.Media.Name}: {m_mediaFile.Progress}", this);
     }
 }
        public Task <List <RoleResultSet> > IsRoleAuthorized(int currentUserId, string moduleName, string permission)
        {
            _logger.Log(new LogInformation
            {
                Module  = CrossCuttingLayer.Logging.Constants.RoleModule,
                UserId  = currentUserId,
                Message = CrossCuttingLayer.Logging.Constants.MethodInvokedMessage
            });

            var spName = DbKeywords.StoreProcedurePrefix + TableNames.Role + CoreDbProcedures.GetByUserAuthorization;

            return(Task.Factory.StartNew(() =>
            {
                var roleJson = _db.Connection.Query <RoleResultSet>(spName, new { Id = currentUserId, ModuleName = moduleName, ActionName = permission }, commandType: CommandType.StoredProcedure).ToList();
                return roleJson.ToList();
            }));
        }
Пример #4
0
#pragma warning disable VSTHRD100 // Avoid async void methods
        private void UpdateData(object sender, ElapsedEventArgs e)
        {
            List <DownloadItem> downloadItems = m_nzbManager.DownloadItems;

            if (downloadItems == null)
            {
                return;
            }
            DownloadItem item = downloadItems.FirstOrDefault(x => x.ID == m_mediaDownload.ID);

            if (item != null)
            {
                if (item.Failed || item.IsCopy)
                {
                    m_usenetIndexer.BannedLinks.Add(_link);
                    TryNextDownload();
                    return;
                }
                m_logger.Log(item.FileName + ": " + item.Progress + "%", this);
                m_mediaDownload.mediaFile.Progress = item.Progress;
                if (item.IsCompleted)
                {
                    string newDir = m_rootDirectory + FixDirectory(m_mediaDownload.mediaFile.Media.Name) + "S" + m_mediaDownload.mediaFile.Season + "E" + m_mediaDownload.mediaFile.Episode;
                    if (m_isRestoring)
                    {
                        m_mediaDownload.mediaFile.FilePath = FindMediaFileRecursive(newDir);
                        if (m_mediaDownload.mediaFile.FilePath != string.Empty)
                        {
                            m_mediaDownload.mediaFile.FinishedProcessing();
                            m_timer.Stop();
                            return;
                        }
                    }
                    string intFilePath = FindMediaFileRecursive(item.Directory);
                    intFilePath = intFilePath.Replace('\\', '/');

                    //MediaBase movie = await GetMovieByIDAsync(imdbID);

                    Directory.CreateDirectory(newDir);

                    string newFilePath = newDir + "/" + FixDirectory(m_mediaDownload.mediaFile.Media.Name) + "S" + m_mediaFile.Season + "E" + m_mediaFile.Episode + Path.GetExtension(intFilePath);
                    File.Move(intFilePath, newFilePath);
                    m_mediaDownload.mediaFile.Progress = 100;
                    m_mediaDownload.mediaFile.FilePath = newFilePath;
                    m_mediaDownload.mediaFile.FinishedProcessing();
                    m_timer.Stop();
                    m_mediaDatabase.RemoveMedia(m_mediaFile.Media.SearchID, m_mediaFile.Season, m_mediaFile.Episode);
                }
            }
        }
Пример #5
0
        public async Task <dynamic> Post([FromBody] LoginRequestViewModel req)
        {
            _logger.Log(new LogInformation
            {
                Module  = CrossCuttingLayer.Logging.Constants.TokenModule,
                UserId  = _userContextAccessor.UserId,
                Message = CrossCuttingLayer.Logging.Constants.MethodInvokedMessage
            });

            var applicationUser = await _user.Service.ValidateUser(req, 1);

            //await _user.Service.ValidateUser(req, 1); //_userContextAccessor.UserId
            return(applicationUser);
        }
Пример #6
0
        /// <summary>
        /// Adds the specified item.
        /// </summary>
        /// <param name="item">The item.</param>
        /// <param name="currentUserId"></param>
        public Task<BaseModel> Insert(TEntity item, int currentUserId)
        {
            _logger.Log(new LogInformation
            {
                Module = typeof(TEntity).Name,
                UserId = currentUserId,
                Message = CrossCuttingLayer.Logging.Constants.MethodInvokedMessage
            });

            var spName = DbKeywords.StoreProcedurePrefix + typeof(TEntity).Name + CommonDbOperations.Insert;

            if (item == null)
                throw new ArgumentNullException(typeof(TEntity).Name);

            var parameters = (object) ModelMapper.Mapping(item, currentUserId);

            return
                Task.Factory.StartNew(
                    () =>
                        _db.Connection.Query<BaseModel>(spName, parameters, commandType: CommandType.StoredProcedure).SingleOrDefault());
        }
Пример #7
0
        /// <summary>
        /// Validate User
        /// </summary>
        /// <param name="req"></param>
        /// <param name="currentUserId"></param>
        /// <returns></returns>
        public async Task <dynamic> ValidateUser(LoginRequestViewModel req, int currentUserId)
        {
            _logger.Log(new LogInformation
            {
                Module  = Constants.UserModule,
                UserId  = currentUserId,
                Message = Constants.MethodInvokedMessage
            });

            //var applicationUser = await FindByUniqueIdAsync(req.UserName, currentUserId);

            //if (applicationUser != null && string.Equals(applicationUser.Email, applicationUser.UniqueUserId, StringComparison.OrdinalIgnoreCase))
            //{
            //    if (applicationUser.IsAutomationUser)
            //    {
            //        return new { authenticated = false };
            //    }
            //    if (applicationUser.IsAutoLockEnable && applicationUser.LockoutEndDateUtc > DateTime.UtcNow)
            //    {
            //        return new { IsAutoLocked = true };
            //    }

            //    if (applicationUser.LockoutEnabled)
            //    {
            //        return new { LockoutEnabled = true };
            //    }

            //    DateTime? expires = DateTime.UtcNow.AddMinutes(30);
            //    var validatePassword = await CheckUserPassword(applicationUser.UserId, req.Password, applicationUser.UserId, applicationUser.TimeZoneId);

            //    var checkUsrLockState = await CheckIsUserLocked(applicationUser.UniqueUserId, applicationUser.UserId);

            //    if (checkUsrLockState.IsAutoLockEnable)
            //    {
            //        return new { IsAutoLocked = true };
            //    }

            //    if (checkUsrLockState.LockoutEnabled)
            //    {
            //        return new { LockoutEnabled = true };
            //    }

            //    if (applicationUser.IsActive == false)
            //    {
            //        return new { IsInActive = true };
            //    }

            //    if (validatePassword)
            //    {
            //        var isPasswordExpired = false;

            //        if (!applicationUser.IsAutomationUser)
            //        {
            //            isPasswordExpired = await CheckIfPasswordExpired(applicationUser.UniqueUserId, applicationUser.UserId);
            //        }
            //        if (isPasswordExpired)
            //        {
            //            return new { IsPasswordExpired = true, UserId = Encryption.EncryptString(applicationUser.UserId.ToString()) };
            //        }
            //        var permissions = await FindAccessForLoggedInUser(applicationUser.UserId);
            //        var roles = await FindRoleOfUser(applicationUser.UserId, applicationUser.UserId);

            //        var id = Guid.NewGuid();
            //        await InserUserLogin(id.ToString(), applicationUser.UserId, applicationUser.TimeZoneId);

            //        return new { authenticated = true, entityId = 1, token = id, tokenExpires = expires, Permission = permissions, Role = roles.AccessRights, EULA = applicationUser.IsEulaAccepted ?? false };
            //    }

            //    //if (applicationUser.IsAutomationUser && req.IsFromCoreo == false)
            //    //{
            //    //    var exception = await _exception.Repository.InsertException(0, 116, 117, "Incorrect Login", applicationUser.FirstName + " Entered Wrong Password", null, null);
            //    //}
            //}
            return(new { authenticated = true });
        }
Пример #8
0
 public static void LogInfo(this IServiceLogger serviceLogger, string text)
 => serviceLogger.Log(text, LogType.Info);
Пример #9
0
 public static void LogTrace(this IServiceLogger serviceLogger, string text)
 => serviceLogger.Log(text, LogType.Trace);
Пример #10
0
 public static void LogError(this IServiceLogger serviceLogger, string text)
 => serviceLogger.Log(text, LogType.Error);
Пример #11
0
 public static void LogWarn(this IServiceLogger serviceLogger, string text)
 => serviceLogger.Log(text, LogType.Warn);