Ejemplo n.º 1
0
        public async Task <bool> isDictaatOwner(string userName, string dictaatName)
        {
            DictaatDetails details = _context.DictaatDetails.FirstOrDefault(dd => dd.Name == dictaatName);
            var            user    = await _userManager.FindByNameAsync(userName);

            return(details.DictaatOwnerId == user.Id);
        }
Ejemplo n.º 2
0
 public Dictaat(Domain.Dictaat dictaat, DictaatDetails details, IList <Domain.Google.PageView> analytics)
 {
     this.Name      = dictaat.Name;
     this.Pages     = dictaat.Pages.Select(f => new DictaatPageSummary(f));
     this.MenuItems = dictaat.MenuItems.Select(mi => new ViewModels.MenuItem(mi, analytics)).ToList();
     this.Owner     = new UserVM(details.DictaatOwner);
 }
Ejemplo n.º 3
0
        public DictaatSummary(DictaatDetails dd, string userId = null)
        {
            this.LastChange   = DateTime.Now;
            this.Name         = dd.Name;
            this.Owner        = dd.DictaatOwner.UserName;
            this.Contributers = dd.Contributers.Select(c => c.User.UserName).ToList();
            this.IsEnabled    = dd.IsEnabled;

            if (userId != null)
            {
                this.CanEdit = dd.GetContributersIds().Contains(userId);
            }
        }
Ejemplo n.º 4
0
        public Dictaat CopyDictaat(string dictaatName, DictaatDetails newDictaat)
        {
            var oldDir = _pathHelper.DictaatPath(dictaatName);
            var newDir = _pathHelper.DictaatPath(newDictaat.Name);

            //This is where the copy happens
            _directory.CopyDirectory(newDir, oldDir);

            //edit custom files
            string pathNewConfig = _pathHelper.DictaatConfigPath(newDictaat.Name);
            var    dictaatConfig = _json.ReadFile(pathNewConfig);

            dictaatConfig["name"] = newDictaat.Name;
            _json.EditFile(pathNewConfig, dictaatConfig);

            return(GetDictaat(newDictaat.Name));
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Create a new dictaat based on a given template.
        /// </summary>
        /// <param name="name">Name of the dictaat. Must be unique.</param>
        /// <param name="template">optional template name, default = defaultTemplate</param>
        public void CreateDictaat(string name, ApplicationUser user, string template)
        {
            //Create the database entry
            var dictaatDetails = new DictaatDetails()
            {
                Name           = name,
                DictaatOwnerId = user.Id,
                IsEnabled      = false, //by default we don't show the dictaten
            };

            var dictaatSession = new DictaatSession()
            {
                DictaatDetailsId = name,
                StartedOn        = DateTime.Now,
            };

            _context.DictaatSession.Add(dictaatSession);
            _context.DictaatDetails.Add(dictaatDetails);
            _context.SaveChanges();

            //Create the folder
            Domain.Dictaat dictaat = _dictaatFactory.CreateDictaat(name, template);
        }