Exemplo n.º 1
0
 public static string GetDisplayText(this EmployerMemberView view, bool nameOnly)
 {
     return(view.GetDisplayText(view, view.Resume, nameOnly));
 }
Exemplo n.º 2
0
        private static ResumeFile ConvertResume(EmployerMemberView view, Resume resume)
        {
            // Use an empty resume if none provided.

            if (resume == null)
            {
                resume = new Resume();
            }

            var resumeXml = Serialize(resume);

            var xsltArgumentList = new XsltArgumentList();

            xsltArgumentList.AddParam("headerLogo", "", HeaderLogo);
            xsltArgumentList.AddParam("shortLine", "", ShortLine);
            xsltArgumentList.AddParam("longLine", "", LongLine);
            xsltArgumentList.AddParam("dateTimeNow", "", DateTime.Now.ToShortDateString());

            if (!string.IsNullOrEmpty(view.FullName))
            {
                xsltArgumentList.AddParam("networkerName", "", view.FullName);
            }

            // Use the first current job.

            var currentJobTitles = resume.GetCurrentJobTitles();
            var currentJobTitle  = currentJobTitles == null || currentJobTitles.Length == 0
                ? string.Empty
                : currentJobTitles[0];

            if (!string.IsNullOrEmpty(currentJobTitle))
            {
                xsltArgumentList.AddParam("currentJobTitle", "", currentJobTitle);
            }
            var currentIndustry = view.GetIndustriesDisplayText(", ");

            if (!string.IsNullOrEmpty(currentIndustry))
            {
                xsltArgumentList.AddParam("currentIndustry", "", currentIndustry);
            }

            xsltArgumentList.AddParam("updatedDate", "", resume.LastUpdatedTime.ToString("d MMMM yyyy"));

            var industries = view.GetIndustriesDisplayText(RtfLinebreak);

            if (!string.IsNullOrEmpty(industries))
            {
                xsltArgumentList.AddParam("industries", "", industries);
            }

            var location = view.Address.Location.ToString();

            if (!string.IsNullOrEmpty(location))
            {
                xsltArgumentList.AddParam("location", "", location);
            }

            var state = view.Address.Location.CountrySubdivision;

            if (state != null)
            {
                if (state.ShortName != null)
                {
                    xsltArgumentList.AddParam("state", "", state.ShortName);
                }
                xsltArgumentList.AddParam("country", "", state.Country.Name);
            }

            var phoneNumber = GetPhoneNumber(view, PhoneNumberType.Mobile);

            if (phoneNumber != null)
            {
                xsltArgumentList.AddParam("mobilePhoneNumber", "", phoneNumber.Number);
            }
            phoneNumber = GetPhoneNumber(view, PhoneNumberType.Work);
            if (phoneNumber != null)
            {
                xsltArgumentList.AddParam("workPhoneNumber", "", phoneNumber.Number);
            }
            phoneNumber = GetPhoneNumber(view, PhoneNumberType.Home);
            if (phoneNumber != null)
            {
                xsltArgumentList.AddParam("homePhoneNumber", "", phoneNumber.Number);
            }

            if (!string.IsNullOrEmpty(view.DesiredJobTitle))
            {
                xsltArgumentList.AddParam("desiredJobTitle", "", view.DesiredJobTitle);
            }
            xsltArgumentList.AddParam("desiredJobTypes", "", view.DesiredJobTypes.GetDesiredClauseDisplayText());
            if (view.DesiredSalary != null)
            {
                xsltArgumentList.AddParam("desiredSalary", "", view.DesiredSalary.GetDisplayText());
            }

            var showRealName = !string.IsNullOrEmpty(view.FullName);

            xsltArgumentList.AddParam("showRealName", "", showRealName);
            xsltArgumentList.AddParam("showPhoneNumbers", "", view.PhoneNumbers != null && view.PhoneNumbers.Count > 0 && view.PhoneNumbers.All(p => !string.IsNullOrEmpty(p.Number)));
            xsltArgumentList.AddParam("showProfilePhoto", "", view.PhotoId != null);
            xsltArgumentList.AddParam("showRecentEmployers", "", true);
            xsltArgumentList.AddParam("showCommunities", "", view.AffiliateId != null);

            return(new ResumeFile
            {
                Contents = Transform(resumeXml, xsltArgumentList),
                FileName = FileSystem.GetValidFileName(view.GetDisplayText(view, view.Resume, true)) + FileExtension
            });
        }