public ActionResult WorkerIndex()
        {
            if (Session["UserLogin"] != null)
            {
                var UserInfo = (DAL.UserInfo)Session["UserLogin"];
                BLL.MdPassWord DESPassWord = new BLL.MdPassWord();
                ViewModels.WorkerInfo CurrentWorker = new ViewModels.WorkerInfo();
                ViewModels.WorkerModel WorkerInfo = new ViewModels.WorkerModel();

                WorkerInfo.UserID = UserInfo.UserID;
                WorkerInfo.FirstName = UserInfo.FirstName;
                WorkerInfo.LastName = UserInfo.LastName;
                WorkerInfo.Email = UserInfo.Email;
                ViewData["CountryName"] = DbEntities.Country.SingleOrDefault(p => p.CountryID == UserInfo.CountryID).CountryName;
                WorkerInfo.UserName = UserInfo.UserName;
                ViewData["PassWord"] = DESPassWord.Decrypt(UserInfo.PassWord);

                switch (UserInfo.How)
                {
                    case 0:
                        ViewData["HowHear"] = Internationalization.Resources.Select;
                        break;
                    case 1:
                        ViewData["HowHear"] = Internationalization.Resources.Blog;
                        break;
                    case 2:
                        ViewData["HowHear"] = Internationalization.Resources.Conference;
                        break;
                    case 3:
                        ViewData["HowHear"] = Internationalization.Resources.Coworker;
                        break;
                    case 4:
                        ViewData["HowHear"] = Internationalization.Resources.Facebook;
                        break;
                    case 5:
                        ViewData["HowHear"] = Internationalization.Resources.Friend;
                        break;
                    case 6:
                        ViewData["HowHear"] = Internationalization.Resources.Linkedln;
                        break;
                    case 7:
                        ViewData["HowHear"] = Internationalization.Resources.OnlineAdvertisement;
                        break;
                    case 8:
                        ViewData["HowHear"] = Internationalization.Resources.OnlineNewsArticle;
                        break;
                    case 9:
                        ViewData["HowHear"] = Internationalization.Resources.SocialMediaSite;
                        break;
                    case 10:
                        ViewData["HowHear"] = Internationalization.Resources.TV;
                        break;
                    case 11:
                        ViewData["HowHear"] = Internationalization.Resources.Twitter;
                        break;
                    case 12:
                        ViewData["HowHear"] = Internationalization.Resources.WebSearchEngine;
                        break;
                    case 13:
                        ViewData["HowHear"] = Internationalization.Resources.Other;
                        break;
                }

                switch (UserInfo.AccountType)
                {
                    case 0:
                        ViewData["AccountType"] = Internationalization.Resources.Individual;
                        break;
                    case 1:
                        ViewData["AccountType"] = Internationalization.Resources.Business;
                        break;
                }

                WorkerInfo.DisplayName = UserInfo.DisplayName;

                CurrentWorker.WorkerBasic = WorkerInfo;

                UI.ViewModels.BasicsModel BasicsModel = new ViewModels.BasicsModel();
                UI.Utility.ModelCopier.CopyModel(DbEntities.BasicsInfo.SingleOrDefault(p => p.UserId == UserInfo.UserID), BasicsModel);
                CurrentWorker.BasicsInfo = BasicsModel;

                UI.ViewModels.SkillsModel SkillsModel = new ViewModels.SkillsModel();
                UI.Utility.ModelCopier.CopyModel(DbEntities.SkillsInfo.SingleOrDefault(p => p.UserId == UserInfo.UserID), SkillsModel);
                CurrentWorker.SkillsInfo = SkillsModel;

                if (CurrentWorker.BasicsInfo != null)
                {
                    var TempCountry = DbEntities.Country.FirstOrDefault(p => p.CountryID == CurrentWorker.BasicsInfo.CountryId);
                    if (TempCountry != null)
                    {
                        ViewData["CountryInfo"] = TempCountry.CountryName;
                    }

                    var TempNumber = DbEntities.PhoneNumber.FirstOrDefault(p => p.PhoneNumberID == CurrentWorker.BasicsInfo.PhoneNumberId);
                    if (TempNumber != null)
                    {
                        ViewData["PhoneNumber"] = TempNumber.PhoneNumberName;
                    }
                }

                CurrentWorker.JobList = new ViewModels.WantJobList();
                CurrentWorker.JobList.WantList = new List<ViewModels.WantJobModel>();
                var CurrentWant = DbEntities.WantJob.Where(p => p.WorkerID == UserInfo.UserID);
                UI.Utility.WantJob WantJobCulture = new Utility.WantJob();

                foreach (var CurrentTemp in CurrentWant)
                {
                    var CurrentSubject = DbEntities.Subjects.SingleOrDefault(p => p.ID == CurrentTemp.SubjectsID);
                    if (CurrentSubject != null && CurrentSubject.ParentId == null)
                    {
                        ViewModels.WantJobModel WantJob = new ViewModels.WantJobModel();
                        WantJob.SubjectsList = new List<Subjects>();
                        WantJob.ID = CurrentSubject.ID;
                        WantJob.Name = WantJobCulture.GetItem(CurrentSubject.ID);

                        var SubjectSub = DbEntities.Subjects.Where(p => p.ParentId == CurrentSubject.ID);
                        foreach (var TempSub in SubjectSub)
                        {
                            Subjects TempSubject = new Subjects();
                            TempSubject.ID = TempSub.ID;
                            TempSubject.Name = WantJobCulture.GetItem(TempSub.ID);
                            TempSubject.ParentId = TempSub.ParentId;

                            WantJob.SubjectsList.Add(TempSubject);
                        }

                        CurrentWorker.JobList.WantList.Add(WantJob);
                    }
                }

                return View(CurrentWorker);
            }
            else
            {
                return RedirectToAction("LogIn", "Account");
            }
        }
        public ActionResult AddSkills()
        {
            if (Session["UserLogin"] != null)
            {
                var UserInfo = (DAL.UserInfo)Session["UserLogin"];
                var SkillsResult = DbEntities.SkillsInfo.SingleOrDefault(p => p.UserId == UserInfo.UserID);

                if (SkillsResult == null)
                {
                    return View();
                }
                else
                {
                    UI.ViewModels.SkillsModel SkillsInfo = new ViewModels.SkillsModel();
                    SkillsInfo.ID = SkillsResult.ID;
                    SkillsInfo.UserId = SkillsResult.UserId;
                    SkillsInfo.PhotoPath = SkillsResult.PhotoPath;
                    SkillsInfo.TagLine = SkillsResult.TagLine;
                    SkillsInfo.MyRate = SkillsResult.MyRate;
                    SkillsInfo.SystemRate = SkillsResult.SystemRate;
                    SkillsInfo.OverView = SkillsResult.OverView;
                    SkillsInfo.YourSkills = SkillsResult.YourSkills;

                    return View(SkillsInfo);
                }
            }
            else
            {
                return RedirectToAction("LogIn", "Account");
            }
        }