public MentorManager(Mentor_MatchineEntities db, MentorRepository mr, MentorPreferencesRepository mpr, MentorLanguagesRepository mlr)
 {
     _db = db;
     mentorRepository            = mr;
     mentorPreferencesRepository = mpr;
     mentorLanguagesRepository   = mlr;
 }
Beispiel #2
0
        public ActionResult Mentee(MenteeFormModel mentee)
        {
            if (ModelState.IsValid)
            {
                using (var db = new Mentor_MatchineEntities())
                {
                    MenteeManager menteeManager = new MenteeManager(db);
                    menteeManager.AddMenteeFromForm(mentee);
                    var languages = db.Lang.Select(l => new
                    {
                        LangID   = l.LanguageID,
                        Language = l.SpokenLang
                    }).ToList();

                    var nationalities = db.Nationality.Select(l => new {
                        NatID       = l.NationalityID,
                        Nationality = l.Nationality1
                    }).ToList();
                    ViewBag.Languages     = new MultiSelectList(languages, "LangID", "Language");
                    ViewBag.Nationalities = new SelectList(nationalities, "NatID", "Nationality");

                    return(View("Mentee"));
                }
            }
            return(View("~/Views/Home/Index.cshtml"));
        }
Beispiel #3
0
        public void AddMenteeFromForm(MenteeFormModel mentee)
        {
            //Todo - add entities to database based on the filled mentee form
            _db = new Mentor_MatchineEntities();
            var m = new Mentee();

            m.Age         = mentee.Age;
            m.Name        = mentee.Name;
            m.Surname     = mentee.Surname;
            m.ArrivalDate = DateTime.Parse(mentee.ArrivalDate);
            m.Disability  = Convert.ToByte(mentee.Disability);
            m.Gender      = mentee.Gender.ToString();
            m.Email       = mentee.Email;
            m.Phone       = mentee.Phone;
            m.HasMentor   = 0;
            //m.Nationality = mentee.Nationality; - pobrac nationality (mamy id z SelectList) i dodac do m nationalityId
            m.NationalityID = Int32.Parse(mentee.Nationality);

            var AutoID = GetNextMenteeID();

            menteeRepository.Add(m);

            foreach (string language in mentee.Languages)
            {
                var ml = new MenteeLanguage();
                //pobierac jakos prawidlowy kolejny id z bd
                ml.MenteeID = AutoID;
                System.Diagnostics.Debug.WriteLine(language.ToString());
                ml.LanguageID = Int32.Parse(language);
                menteeLanguagesRepository.Add(ml);
            }
        }
Beispiel #4
0
        public ActionResult Mentor(MentorFormModel mentor)
        {
            if (ModelState.IsValid)
            {
                using (var db = new Mentor_MatchineEntities())
                {
                    var mlr      = new MenteeLanguagesRepository(db);
                    var mentorlr = new MentorLanguagesRepository(db);
                    var mpr      = new MentorPreferencesRepository(db);
                    var matchesR = new MatchesRepository(db);
                    var mr       = new MenteeRepository(db);
                    var mentorR  = new MentorRepository(db);

                    var manager = new Director();
                    var builder = new SimpleMatcherBuilder();
                    manager.Construct(builder, mlr, mr, matchesR);
                    var matcher = builder.GetResult();

                    var MentorFactory = new MentorFactory(mentorlr, mpr, matcher);
                    var email         = new EmailSender();

                    MentorManager mentorManager = new MentorManager(db, mentorR, mpr, mentorlr);
                    int           id            = mentorManager.AddMentorFromForm(mentor);

                    var mentorUser = MentorFactory.GetUser(mentorR.FindById(id));
                    mentorUser.Id = id;
                    var matches = mentorUser.Match();

                    var f      = mentorR.FindById(id).C_Mentees;
                    var emails = new List <String>();
                    foreach (int i in matches)
                    {
                        emails.Add(mr.FindById(i).Email);
                        f = f - 1;
                    }
                    mentorR.FindById(id).C_Mentees = f;
                    foreach (string e in emails)
                    {
                        email.SendEmail(e);
                    }
                    var languages = db.Lang.Select(l => new {
                        LangID   = l.LanguageID,
                        Language = l.SpokenLang
                    }).ToList();
                    var nationalities = db.Nationality.Select(l => new {
                        NatID       = l.NationalityID,
                        Nationality = l.Nationality1
                    }).ToList();
                    ViewBag.Languages     = new MultiSelectList(languages, "LangID", "Language");
                    ViewBag.Nationalities = new MultiSelectList(nationalities, "NatID", "Nationality");
                    return(View("Mentor"));
                }
            }

            return(View("~/Views/Home/Index.cshtml"));
        }
Beispiel #5
0
        public ActionResult Mentor()
        {
            using (var db = new Mentor_MatchineEntities())
            {
                var languages = db.Lang.Select(l => new {
                    LangID   = l.LanguageID,
                    Language = l.SpokenLang
                }).ToList();
                var nationalities = db.Nationality.Select(l => new {
                    NatID       = l.NationalityID,
                    Nationality = l.Nationality1
                }).ToList();
                ViewBag.Languages     = new MultiSelectList(languages, "LangID", "Language");
                ViewBag.Nationalities = new MultiSelectList(nationalities, "NatID", "Nationality");

                return(View("Mentor"));
            }
        }
Beispiel #6
0
 public MentorPreferencesRepository(Mentor_MatchineEntities db)
 {
     _db  = db;
     List = db.MentorPreferences;
 }
Beispiel #7
0
 public MenteeManager(Mentor_MatchineEntities db)
 {
     _db = db;
     menteeRepository          = new MenteeRepository(_db);
     menteeLanguagesRepository = new MenteeLanguagesRepository(_db);
 }
Beispiel #8
0
 public MatchesRepository(Mentor_MatchineEntities db)
 {
     _db  = db;
     List = _db.Matches;
 }
 public MenteeRepository(Mentor_MatchineEntities db)
 {
     _db  = db;
     List = _db.Mentee;
 }
 public MentorLanguagesRepository(Mentor_MatchineEntities db)
 {
     _db  = db;
     List = db.MentorLanguage;
 }