Esempio n. 1
0
        public async Task <int> CreateFolder(FolderViewModel folderData)
        {
            FolderModel folder = new FolderModel()
            {
                Name     = folderData.name,
                ParentId = folderData.parentId,
                IsActive = true
            };

            _context.Folders.Add(folder);
            await _context.SaveChangesAsync();

            return(folder.Id);
        }
Esempio n. 2
0
        public async Task <UserViewModel> Login(string email, string password)
        {
            UserModel user = await _context.Users.FirstOrDefaultAsync(x => x.Email.ToLower() == email.ToLower() && x.Password == password && x.IsActive);

            if (user != null)
            {
                if (user.IsAccountActivated == false)
                {
                    InvalidOperationException ex = new InvalidOperationException();
                    ex.Data.Add("message", "ACCOUNT_NOT_ACTIVATED");
                    throw ex;
                }

                if (user.SystemAccess == false)
                {
                    InvalidOperationException ex = new InvalidOperationException();
                    ex.Data.Add("message", "ACCOUNT_BLOCKED");
                    throw ex;
                }

                user.IsLoggedIn = true;

                HistoryModel historyRow = new HistoryModel()
                {
                    Description = "USER_LOGGED_INTO_SYSTEM",
                    UserData    = user.Name + " " + user.Surname
                };

                _context.Users.Update(user);
                _context.History.Add(historyRow);

                await _context.SaveChangesAsync();

                return(UserConverter.ConvertDbModelToViewModel(user));
            }
            else
            {
                InvalidOperationException ex = new InvalidOperationException();
                ex.Data.Add("message", "LOGIN_DATA_INCORRECT");
                throw ex;
            }
        }
        public async Task DeleteFiles(int[] ids, string userData)
        {
            foreach (int fileId in ids)
            {
                FileModel file = await _context.Files.FirstOrDefaultAsync(x => x.Id == fileId);

                if (file != null)
                {
                    File.Delete(file.FilePath);

                    List <ShareableLinkModel> fileLinks = await _context.ShareableLinks.Where(x => x.FileId == file.Id).ToListAsync();

                    _context.ShareableLinks.RemoveRange(fileLinks);

                    HistoryModel historyRow = new HistoryModel()
                    {
                        Description = "USER_DELETED_FILE",
                        Param       = file.FileName,
                        UserData    = userData
                    };

                    _context.History.Add(historyRow);
                    _context.Files.Remove(file);
                }
            }

            await _context.SaveChangesAsync();
        }
 public async Task SetGlobalSettings(GlobalSettingsModel settings)
 {
     _context.GlobalSettings.Update(settings);
     await _context.SaveChangesAsync();
 }