public ActionResult Details(int id)
        {
            TutorProfile tutor = _dbContext.TutorProfiles.Find(id);

            if (tutor == null)
            {
                return(HttpNotFound());
            }

            TutorViewModel model = new TutorViewModel();

            model.Name                = tutor.Name;
            model.ImagePath           = tutor.ImagePath;
            model.Department          = tutor.Department;
            model.CurrentYear         = tutor.CurrentYear;
            model.AdmissionSession    = tutor.AdmissionSession;
            model.ExpectedSalaryRange = tutor.ExpectedSalaryRange;
            model.Hall                = tutor.Hall;
            model.InterestedArea      = tutor.InterestedArea;
            model.InterestedClass     = tutor.InterestedClass;
            model.InterestedSubject   = tutor.InterestedSubject;
            model.PermanentAddress    = tutor.ParmanentAddress;
            model.PresentAddress      = tutor.PresentAddress;

            return(View(model));
        }
Example #2
0
        public async Task <ServiceResponse <object> > AddSubject(TutorSubjectDtoForAdd model)
        {
            try
            {
                //var branch = await _context.SchoolBranch.Where(m => m.BranchName == "ONLINE ACADEMY").FirstOrDefaultAsync();

                var ToAdd = new TutorSubject
                {
                    Name            = model.Name,
                    Active          = true,
                    ExpertRate      = model.ExpertRate,
                    CreatedById     = _LoggedIn_UserID,
                    CreatedDateTime = DateTime.UtcNow,
                    SchoolBranchId  = _LoggedIn_BranchID,
                };
                await _context.TutorSubjects.AddAsync(ToAdd);

                await _context.SaveChangesAsync();

                var Exist = await _context.TutorProfiles.AnyAsync(m => m.CreatedById == _LoggedIn_UserID);

                if (!Exist)
                {
                    var ToAdd3 = new TutorProfile
                    {
                        GradeLevels     = string.Join(',', model.GradeLevels),
                        Active          = true,
                        SchoolBranchId  = _LoggedIn_BranchID,
                        CreatedById     = _LoggedIn_UserID,
                        CreatedDateTime = DateTime.UtcNow,
                    };

                    await _context.TutorProfiles.AddAsync(ToAdd3);

                    await _context.SaveChangesAsync();
                }
                _serviceResponse.Message = CustomMessage.Added;
                _serviceResponse.Success = true;
                return(_serviceResponse);
            }
            catch (DbUpdateException ex)
            {
                if (ex.InnerException.Message.Contains("Cannot insert duplicate key row"))
                {
                    _serviceResponse.Success = false;
                    _serviceResponse.Message = CustomMessage.SqlDuplicateRecord;
                }
                else
                {
                    throw ex;
                }
                return(_serviceResponse);
            }
        }
Example #3
0
        public async Task <ServiceResponse <object> > AddProfile(TutorProfileForAddDto model)
        {
            var ToUpdate = await _context.TutorProfiles.Where(m => m.CreatedById == _LoggedIn_UserID).FirstOrDefaultAsync();

            if (ToUpdate != null)
            {
                ToUpdate.About                  = model.About;
                ToUpdate.AreasToTeach           = model.AreasToTeach;
                ToUpdate.CityId                 = model.CityId;
                ToUpdate.CommunicationSkillRate = model.CommunicationSkillRate;
                ToUpdate.Education              = model.Education;
                ToUpdate.LanguageFluencyRate    = model.LanguageFluencyRate;
                ToUpdate.WorkExperience         = model.WorkExperience;
                ToUpdate.WorkHistory            = model.WorkHistory;

                _context.TutorProfiles.Update(ToUpdate);
                await _context.SaveChangesAsync();
            }
            else
            {
                var ToAdd = new TutorProfile
                {
                    About                  = model.About,
                    AreasToTeach           = model.AreasToTeach,
                    CityId                 = model.CityId,
                    CommunicationSkillRate = model.CommunicationSkillRate,
                    Education              = model.Education,
                    LanguageFluencyRate    = model.LanguageFluencyRate,
                    WorkExperience         = model.WorkExperience,
                    WorkHistory            = model.WorkHistory,
                    //GradeLevels = string.Join(',', model.GradeLevels),
                    Active          = true,
                    SchoolBranchId  = _LoggedIn_BranchID,
                    CreatedById     = _LoggedIn_UserID,
                    CreatedDateTime = DateTime.UtcNow,
                };

                await _context.TutorProfiles.AddAsync(ToAdd);

                await _context.SaveChangesAsync();
            }
            _serviceResponse.Message = CustomMessage.Added;
            _serviceResponse.Success = true;
            return(_serviceResponse);
        }
Example #4
0
        //string connection = "Data Source=DESKTOP-U1O7S49;Initial Catalog=INTODB;Integrated Security=True";

        public TutorProfile UserLogin(string Email, string Password, string connection)
        {
            TutorProfile tutorProfile = new TutorProfile();

            tutorProfile = null;

            using (SqlConnection con = new SqlConnection(connection))
            {
                SqlCommand cmd = new SqlCommand("sp_ManageUsers", con);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@Mode",
                    Value         = "CheckLogin"
                });
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@Email",
                    Value         = Email
                });
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@Password",
                    Value         = Password
                });
                con.Open();
                SqlDataReader rdr = cmd.ExecuteReader();


                while (rdr.Read())
                {
                    TutorProfile tp = new TutorProfile();
                    tp.UserId    = Convert.ToInt64(rdr["ID"]);
                    tp.FirstName = rdr["FirstName"].ToString();
                    tp.LastName  = rdr["LastName"].ToString();
                    tp.Id        = Convert.ToInt64(rdr["TutorId"]);
                    tutorProfile = tp;
                }
                con.Close();
            }
            return(tutorProfile);
        }
Example #5
0
        public ActionResult Details(int id)
        {
            TutorViewModel tutor = new TutorViewModel();

            if (tutor.Profile == null)
            {
                return(new RedirectToRouteResult(
                           new RouteValueDictionary(
                               new
                {
                    area = "Default",
                    controller = "Home",
                    action = "Index"
                }
                               )
                           ));
            }
            TutorProfile tutorProfile = TutorDB.FetchProfile(id);

            tutor.Profile = tutorProfile;
            return(View(tutor));// new { data= "Tutor data" });
        }
        public ActionResult ShowInterest(int postId)
        {
            string       userId  = User.Identity.GetUserId();
            TutorProfile tutor   = _dbContext.TutorProfiles.Where(t => t.UserId == userId).FirstOrDefault();
            int          tutorId = tutor.Id;

            var model = new Communication
            {
                PostId  = postId,
                TutorId = tutorId
            };
            var isExist = _dbContext.Communications.FirstOrDefault(s => s.PostId == model.PostId && s.TutorId == model.TutorId);

            if (isExist == null)
            {
                _dbContext.Communications.Add(model);
                _dbContext.SaveChanges();
            }


            string msg = "Your interest has been saved.";

            return(RedirectToAction("Index", "Home", new { message = msg }));
        }
        public ActionResult RegisterTutor(RegisterTutorViewModel model, HttpPostedFileBase file)
        {
            if (ModelState.IsValid)
            {
                string fileName = "";

                if (file != null && file.ContentLength > 0)
                {
                    if (file.ContentType.Contains("image"))
                    {
                        fileName = DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss") + ".png";
                        file.SaveAs(HttpContext.Server.MapPath("~/Content/UserImage/")
                                    + fileName);
                    }
                    else
                    {
                        ModelState.AddModelError("ImagePath", "Unsupported image format");
                    }
                }

                var user = new ApplicationUser();
                user.UserName             = model.PhoneNumber;
                user.PhoneNumber          = model.PhoneNumber;
                user.PhoneNumberConfirmed = true;

                var result = UserManager.Create(user, model.Password);
                if (result.Succeeded)
                {
                    UserManager.AddToRole(user.Id, "Tutor");

                    TutorProfile tutor = new TutorProfile();
                    tutor.AdmissionSession    = model.AdmissionSession;
                    tutor.CurrentYear         = model.CurrentYear;
                    tutor.Department          = model.Department;
                    tutor.ExpectedSalaryRange = model.ExpectedSalaryRange;
                    tutor.Hall              = model.Hall;
                    tutor.ImagePath         = fileName;
                    tutor.Name              = model.Name;
                    tutor.ParmanentAddress  = model.PermanentAddress;
                    tutor.PhoneNumber       = model.PhoneNumber;
                    tutor.PresentAddress    = model.PresentAddress;
                    tutor.RegistrationNo    = model.RegistrationNo;
                    tutor.UserId            = user.Id;
                    tutor.InterestedSubject = model.InterestedSubjects;

                    string classes = "";
                    foreach (var item in model.Classes)
                    {
                        if (item.IsChecked)
                        {
                            classes = classes + item.Value + ",";
                        }
                    }
                    tutor.InterestedClass = classes;

                    string areas = "";
                    foreach (var item in model.Areas)
                    {
                        if (item.IsChecked)
                        {
                            areas = areas + item.Value + ",";
                        }
                    }
                    tutor.InterestedArea = areas;

                    _dbContext.TutorProfiles.Add(tutor);
                    _dbContext.SaveChanges();

                    SignInManager.SignIn(user, isPersistent: false, rememberBrowser: false);

                    string msg = "";

                    return(RedirectToAction("Index", "Tutor", new { message = msg }));
                }
                AddErrors(result);
            }

            return(View(model));
        }
Example #8
0
        //To be discussed !! (What to return)
        public TutorProfile UserSignUp(string FirstName, string LastName, string Email, string Password, int CountryId, string connection)
        {
            TutorProfile us = new TutorProfile();

            us = null;

            using (SqlConnection con = new SqlConnection(connection))
            {
                SqlCommand cmd = new SqlCommand("sp_ManageUsers", con);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@Mode",
                    Value         = "Insert"
                });
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@FirstName",
                    Value         = FirstName
                });
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@LastName",
                    Value         = LastName
                });
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@Email",
                    Value         = Email
                });
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@Password",
                    Value         = Password
                });
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@CountryId",
                    Value         = CountryId
                });
                //@ObjName
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@ObjName",
                    Value         = "Tutor"
                });
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@LanguageId",
                    Value         = 1
                });
                cmd.Parameters.Add(new SqlParameter()
                {
                    ParameterName = "@Active",
                    Value         = 1
                });
                try
                {
                    con.Open();
                    cmd.ExecuteNonQuery();
                    con.Close();
                    us = UserLogin(Email, Password, connection);
                    return(us);
                }
                catch (Exception)
                {
                    return(us);
                }
            }
        }