コード例 #1
0
ファイル: LoginService.cs プロジェクト: Pusaka/JelloScrum
 /// <summary>
 /// Controleerd het wachtwoord
 /// </summary>
 /// <param name="password"></param>
 /// <param name="user"></param>
 public void CheckPassword(string password, Gebruiker user)
 {
     if (passwordService.EncryptPassword(password, user.Salt) != user.Wachtwoord)
     {
         throw new Exception("Gebruikersnaam en / of wachtwoord zijn niet geldig.");
     }
 }
コード例 #2
0
 public static SprintGebruiker SprintGebruiker(Gebruiker gebruiker, Sprint sprint, SprintRol sprintRol)
 {
     SprintGebruiker sprintGebruiker = new SprintGebruiker(gebruiker, sprint, sprintRol);
     Project project = Project();
     project.VoegSprintToe(sprint);
     return Persist(sprintGebruiker);
 }
コード例 #3
0
ファイル: SprintGebruiker.cs プロジェクト: Pusaka/JelloScrum
        /// <summary>
        /// Maak een sprintgebruiker op basis van de gegeven gebruiker, sprint en sprintrol.
        /// </summary>
        /// <param name="gebruiker">De gebruiker.</param>
        /// <param name="sprint">De sprint.</param>
        public SprintGebruiker(Gebruiker gebruiker, Sprint sprint, SprintRol sprintRol)
        {
            if (gebruiker == null)
                throw new ArgumentNullException("gebruiker", "De gebruiker mag niet null zijn.");
            if (sprint == null)
                throw new ArgumentNullException("sprint", "De sprint mag niet null zijn.");

            gebruiker.VoegSprintGebruikerToe(this);
            sprint.VoegSprintGebruikerToe(this);
            this.sprintRol = sprintRol;
        }
コード例 #4
0
ファイル: Story.cs プロジェクト: Pusaka/JelloScrum
        /// <summary>
        /// Initializes a new instance of the <see cref="Story"/> class.
        /// </summary>
        /// <param name="project">The project.</param>  
        /// <param name="aangemaaktDoor">The aangemaakt door.</param>
        /// <param name="impact">The impact.</param>
        /// <param name="storyType">Type of the story.</param>
        public Story(Project project, Gebruiker aangemaaktDoor, Impact? impact, StoryType storyType)
        {
            if (project == null)
            {
                throw new ArgumentNullException("project", "Het project mag niet null zijn.");
            }

            if (aangemaaktDoor == null)
            {
                throw new ArgumentNullException("aangemaaktDoor", "De gebruiker die deze story aanmaakt kan niet null zijn.");
            }

            project.VoegStoryToe(this);
            this.aangemaaktDoor = aangemaaktDoor;
            this.impact = impact;
            this.storyType = storyType;
        }
コード例 #5
0
ファイル: TijdRegistratie.cs プロジェクト: Pusaka/JelloScrum
        /// <summary>
        /// Initializes a new instance of the <see cref="TijdRegistratie"/> class.
        /// </summary>
        /// <param name="gebruiker">The gebruiker.</param>
        /// <param name="datum">The datum.</param>
        /// <param name="sprint">The sprint.</param>
        /// <param name="task">The task.</param>
        /// <param name="tijd">The tijd.</param>
        public TijdRegistratie(Gebruiker gebruiker, DateTime datum, Sprint sprint, Task task, TimeSpan tijd)
        {
            if (tijd.TotalMilliseconds == 0)
                throw new ArgumentOutOfRangeException("tijd", "Een tijdregistratie moet wel tijd bevatten.");
            if (gebruiker == null)
                throw new ArgumentNullException("gebruiker", "De gebruiker is null.");
            if (sprint== null)
                throw new ArgumentNullException("sprint", "De sprint is null.");
            if (task == null)
                throw new ArgumentNullException("task", "De task is null.");

            this.gebruiker = gebruiker;
            this.sprint = sprint;
            this.task = task;

            this.datum = datum;
            this.tijd = tijd;
        }
コード例 #6
0
        /// <summary>
        /// Zet het authenticatie koekje
        /// </summary>
        /// <param name="user">gebruiker die inlogt.</param>
        /// <param name="context">Gebruikers context</param>
        public void SetAuthCookie(Gebruiker user, IEngineContext context)
        {
            HttpCookie cookie = CreateCookie(7);

            string idText = user.Id.ToString();
            byte[] encodedPlaintext = Encoding.Unicode.GetBytes(idText);
            byte[] ciphertext = ProtectedData.Protect(encodedPlaintext, new byte[] {}, DataProtectionScope.LocalMachine);
            string cookieText = Convert.ToBase64String(ciphertext);

            cookie.Value = cookieText;
            context.Response.CreateCookie(cookie);
        }
コード例 #7
0
ファイル: OpmaakHelper.cs プロジェクト: Pusaka/JelloScrum
        /// <summary>
        /// Geeft de volledige naam van de gebruiker als sting.
        /// </summary>
        /// <param name="gebruiker">De gebruiker.</param>
        /// <returns>De volledige naam.</returns>
        public string VolledigeNaam(Gebruiker gebruiker)
        {
            StringBuilder sb = new StringBuilder();

            //tja?

            return sb.ToString();
        }
コード例 #8
0
ファイル: Sprint.cs プロジェクト: Pusaka/JelloScrum
        /// <summary>
        /// Voeg een gebruiker toe aan deze sprint. Als er al een sprintgebruiker voor deze gebruiker in deze sprint bestaat
        /// wordt er geen nieuwe springebruiker gemaakt, maar deze bestaande teruggegeven.
        /// </summary>
        /// <param name="gebruiker">The gebruiker.</param>
        /// <param name="sprintRol">The sprint rol.</param>
        /// <returns>De nieuwe sprintgebruiker.</returns>
        public virtual SprintGebruiker VoegGebruikerToe(Gebruiker gebruiker, SprintRol sprintRol)
        {
            SprintGebruiker sprintGebruiker = GeefSprintGebruikerVoor(gebruiker);

            if (sprintGebruiker != null)
                return sprintGebruiker;

            return new SprintGebruiker(gebruiker, this, sprintRol);
        }
コード例 #9
0
ファイル: Sprint.cs プロジェクト: Pusaka/JelloScrum
        /// <summary>
        /// Verwijder de gegeven gebruiker uit deze sprint, door de sprintgebruiker los te koppelen van sprint en de gegeven gebruiker.
        /// </summary>
        /// <param name="gebruiker"></param>
        public virtual void VerwijderGebruiker(Gebruiker gebruiker)
        {
            if (gebruiker == null)
                throw new ArgumentNullException("gebruiker");

            SprintGebruiker sprintGebruiker = gebruiker.GeefSprintGebruikerVoor(this);
            if (sprintGebruiker == null)
                return;

            sprintGebruiker.KoppelSprintGebruikerLos();
        }
コード例 #10
0
ファイル: Task.cs プロジェクト: Pusaka/JelloScrum
 /// <summary>
 /// 
 /// </summary>
 /// <param name="gebruiker"></param>
 /// <param name="dateRange"></param>
 /// <returns></returns>
 public virtual TimeSpan TotaalBestedeTijd(Gebruiker gebruiker, DateRange? dateRange)
 {
     TimeSpan totaal = new TimeSpan(0);
     foreach (TijdRegistratie registratie in tijdRegistraties)
     {
         if ((gebruiker != null || registratie.Gebruiker == gebruiker) && (dateRange == null || dateRange.Value.Overlap(registratie.Datum.Date)))
         {
             totaal = totaal.Add(registratie.Tijd);
         }
     }
     return totaal;
 }
コード例 #11
0
ファイル: Task.cs プロジェクト: Pusaka/JelloScrum
        /// <summary>
        /// Maak een tijdregistratie.
        /// </summary>
        /// <param name="gebruiker">De gebruiker.</param>
        /// <param name="datum">De datum.</param>
        /// <param name="sprint">De sprint.</param>
        /// <param name="tijd">De tijd.</param>
        public virtual void MaakTijdRegistratie(Gebruiker gebruiker, DateTime datum, Sprint sprint, TimeSpan tijd)
        {
            if (!story.Project.Sprints.Contains(sprint))
            {
                throw new ArgumentException("De gegeven sprint hoort niet bij dit project.", "sprint");
            }

            foreach (TijdRegistratie registratie in GeeftTijdregistratievanGebruiker(gebruiker, sprint, datum))
            {
                VerwijderTijdRegistratie(registratie);
            }
            //als de tijdregistratie 0 seconden is, dan hoeven we geen nieuwe tijdregistratie toe te voegen
            if (tijd.TotalSeconds == 0)
                return;

            TijdRegistratie tijdRegistratie = new TijdRegistratie(gebruiker, datum, sprint, this, tijd);
            VoegTijdRegistratieToe(tijdRegistratie);
        }
コード例 #12
0
ファイル: Task.cs プロジェクト: Pusaka/JelloScrum
 /// <summary>
 /// Geef alle registraties terug van een gebruiker voor een bepaalde datum
 /// </summary>
 /// <param name="gebruiker">gebruiker</param>
 /// <param name="sprint">sprint</param>
 /// <param name="date">datum</param>
 /// <returns></returns>
 public virtual IList<TijdRegistratie> GeeftTijdregistratievanGebruiker(Gebruiker gebruiker, Sprint sprint, DateTime date)
 {
     IList<TijdRegistratie> userTijdRegistraties = new List<TijdRegistratie>();
     foreach (TijdRegistratie registratie in tijdRegistraties)
     {
         if (registratie.Gebruiker == gebruiker && registratie.Sprint == sprint && registratie.Datum.ToShortDateString() == date.ToShortDateString())
         {
             userTijdRegistraties.Add(registratie);
         }
     }
     return userTijdRegistraties;
 }
コード例 #13
0
ファイル: Task.cs プロジェクト: Pusaka/JelloScrum
 /// <summary>
 /// Geef alle registraties terug van een gebruiker
 /// </summary>
 /// <param name="gebruiker"></param>
 /// <returns></returns>
 public virtual IList<TijdRegistratie> GeeftTijdregistratievanGebruiker(Gebruiker gebruiker)
 {
     IList<TijdRegistratie> userTijdRegistraties = new List<TijdRegistratie>();
     foreach (TijdRegistratie registratie in tijdRegistraties)
     {
         if (registratie.Gebruiker == gebruiker)
         {
             userTijdRegistraties.Add(registratie);
         }
     }
     return userTijdRegistraties;
 }
コード例 #14
0
 private static Gebruiker Persist(Gebruiker gebruiker)
 {
     return gebruikerRepository.Save(gebruiker);
 }
コード例 #15
0
ファイル: EmailService.cs プロジェクト: Pusaka/JelloScrum
 /// <summary>
 /// Verzend het wachtwoord naar gebruiker
 /// </summary>
 /// <param name="gebruiker"></param>
 /// <param name="wachtwoord"></param>
 public void VerzendWachtwoord(Gebruiker gebruiker, string wachtwoord)
 {
     Dictionary<string, object> propertyBag = new Dictionary<string, object>();
     propertyBag.Add("gebruiker", gebruiker);
     propertyBag.Add("password", wachtwoord);
     Verzend(string.Empty, gebruiker.Email, "Uw nieuwe Jellow wachtwoord", "password", propertyBag, null);
 }
コード例 #16
0
ファイル: Task.cs プロジェクト: Pusaka/JelloScrum
 /// <summary>
 /// Totaal bestedTijd per dag per gebruiker
 /// </summary>
 /// <param name="gebruiker">Gebruiker</param>
 /// <param name="date">Datum</param>
 /// <returns></returns>
 public virtual TimeSpan TotaalBestedeTijd(Gebruiker gebruiker, DateTime date)
 {
     TimeSpan totaal = new TimeSpan(0);
     foreach (TijdRegistratie registratie in tijdRegistraties)
     {
         if (registratie.Gebruiker == gebruiker && registratie.Datum.Date == date.Date)
         {
             totaal = totaal.Add(registratie.Tijd);
         }
     }
     return totaal;
 }
コード例 #17
0
ファイル: LoginService.cs プロジェクト: Pusaka/JelloScrum
        public Gebruiker LDapGebruikerCheck(string username, string password)
        {
            string domainAndUsername = domain + @"\" + username;
            string fullName = string.Empty;

            DirectoryEntry entry = new DirectoryEntry(LDAPPath, domainAndUsername, password);
            try
            {
                // Bind to the native AdsObject to force authentication.
                DirectorySearcher search = new DirectorySearcher(entry);
                search.Filter = "(SAMAccountName=" + username + ")";
                // aangeven, dat we CN willen inladen wat de fullname is van de user
                search.PropertiesToLoad.Add("cn");
                SearchResult result = search.FindOne();
                if (null == result)
                {
                    throw new Exception("geen resultaten gevonden");
                }
                fullName = SearchResultProperty(result, "cn");
            }
            catch(Exception e)
            {
                throw new Exception(e.Message);
            }

            Gebruiker gebruiker = userService.ZoekOpGebruikersNaam(username);
            if(gebruiker == null)
            {
                gebruiker = new Gebruiker(username);
                gebruiker.Naam = username;
                gebruiker.VolledigeNaam = fullName;
                userService.Save(gebruiker);
                return gebruiker;
            }
            return gebruiker;
        }
コード例 #18
0
ファイル: Sprint.cs プロジェクト: Pusaka/JelloScrum
 /// <summary>
 /// Zoekt naar de sprintgebruiker die hoort bij deze sprint en gebruiker. 
 ///
 /// </summary>
 /// <param name="gebruiker"></param>
 /// <returns>N</returns>
 public virtual SprintGebruiker GeefSprintGebruikerVoor(Gebruiker gebruiker)
 {
     foreach (SprintGebruiker sg in sprintGebruikers)
     {
         if (sg.Gebruiker == gebruiker)
         {
             return sg;
         }
     }
     return null;
 }
コード例 #19
0
ファイル: LoginController.cs プロジェクト: Pusaka/JelloScrum
        /// <summary>
        /// Het is gelukt
        /// </summary>
        /// <param name="gebruiker"></param>
        private void success(Gebruiker gebruiker)
        {
            Context.CurrentUser = gebruiker;
            authenticationService.SetAuthCookie(gebruiker, Context);

            if (gebruiker.ActieveSprint!=null)
                Redirect("Dashboard", "index");
            else
                Redirect("Home", "index");
        }
コード例 #20
0
ファイル: ProjectShortList.cs プロジェクト: Pusaka/JelloScrum
 /// <summary>
 /// Constructor
 /// </summary>
 public ProjectShortList(Gebruiker gebruiker, Project project)
 {
     this.gebruiker = gebruiker;
     this.project = project;
 }