University of Mississippi Medical Center (2024)

  • Skip to content

UMMC Navigation

  • ⌂ UMMC Home
  • Education
    • Academic Affairs
    • For Prospective Students
    • For Students
    • For Residents and Fellows
    • For Faculty
    • School of Dentistry
    • School of Graduate Studies
    • School of Health Related Professions
    • School of Medicine
    • School of Nursing
    • School of Population Health
    • UMMC Online
    • Faculty Directory
  • Health Care
    • Health Care Home
    • All UMMC Services
    • Children's of Mississippi
    • Find a Doctor
    • Find a Location
    • Pay a Bill
    • UMMC Pricing
    • Patient and Visitor Information
    • Referring Physicians
  • Research
    • Research Home
    • Centers and Institutes
    • Offices
    • Resources
    • Participate in Clinical Trials
  • About
    • A-Z Site Index
    • About Us
    • Accreditations
    • History
    • Jobs at UMMC
    • Leadership
    • Mission and Vision
  • Give
  • MyChart
  • Appointments

"; if (results.sdrdetails != null) { var address = $('#txtDoctorsNearYou').val(); var latitude = $('#google-latitude').text().trim(); var longitude = $('#google-longitude').text().trim(); var distance = $('#ddDoctorsNearYouDistance').val(); var useDistance = false; if (address != '' && distance != '' && latitude != '' && latitude != 'undefined' && longitude != '' && longitude != 'undefined') useDistance = true; drresults = results.sdrdetails; loadDepartmentSpecialtyDropdown(drresults); if (results.slocation != undefined && results.slocation.length > 0) populateOurLocationsDD(results); // Set Left Nav filters to URL queries getURLQueriesAndSetFilters(); currentDisplayLetter = alpha; if (currentDisplayLetter == '') currentDisplayLetter = 'A'; depts_refined = results.departments.slice(); GetDrs_phys(getFilteredDoctors(useDistance), searchTxt, "", currentDisplayLetter); $(leftnavdr).attr("style", "display:block"); for (var x = 0; x < depts_refined.length; x++) { if (depts_refined[x].add == null) { depts_refined.splice(x, 1); x--; continue; } for (var y = 0; y < depts_refined[x].Value.length; y++) { if (depts_refined[x].Value[y].add == null) { depts_refined[x].Value.splice(y, 1); y--; } } } } srch.innerHTML = out; if (isPostBack == true && window.location.pathname.toLowerCase().indexOf("/provider") != -1) { isPostBack = false; $(".banner-row").hide(); $("#mainRow").hide(); } else isPostBack = false; $('#doctor-filter-loading').removeClass('active'); //stickDoctorFilter(); $('#leftnavdr').addClass('active'); $("#mainRow").css("opacity", "1.0"); } //if (results != null) { //}, function () { //$("#mainRow").css("opacity", "1.0"); //populateOurLocationsDD(); //stickDoctorFilter(); }); //stickDoctorFilter(); } // Populate the Our Locations drop-down from the doctors' attached locations function populateOurLocationsDD(results) { var element = document.getElementById('our-locations-box'); if (typeof (element) == 'undefined' || element == null) { var unfilteredLocations = results.slocation; var doctors = results.sdrdetails; var locations = [] unfilteredLocations.forEach( function (location) { doctors.forEach( function (doctor) { /* if (doctor.dr_epicLocations != undefined) { if ( doctor.dr_epicLocations.find(function (c) { return c.Web_LocationID == location.Key; }) != undefined ) { if ( locations.find(function (c) { return c.Key == location.Key; }) == undefined ) locations.push(location); } }*/ if (doctor.dr_epicLocations != undefined) { if ( doctor.dr_epicLocations.filter(function (c) { return c.Web_LocationID == location.Key; })[0] != undefined ) { if ( locations.filter(function (c) { return c.Key == location.Key; })[0] == undefined ) locations.push(location); } } }); }); var locationHash = []; locations.forEach(function (hash) { return function (a) { if (!hash[a.Value.locationCity]) { hash[a.Value.locationCity] = { locationCity: a.Value.locationCity, locations: [] }; locationHash.push(hash[a.Value.locationCity]); } hash[a.Value.locationCity].locations.push({ locationName: a.Value.locationName, locationID: a.Value.locationID }); }; }(Object.create(null))); if (locationHash.length > 0) { locationHash.sort(function (a, b) { var nameA = a.locationCity.toUpperCase(); var nameB = b.locationCity.toUpperCase(); if (nameA < nameB) return -1; if (nameA > nameB) return 1; return 0; }); $('#department-specialty-box').after(function () { var writer = ''; return writer; }); $('#selectOurLocationDD').on('change', function () { updatedrResults(); }); } } } // Write out the doctor rows function GetDrs_phys(results, searchTxt, ds, newletter) { var showAllRecords = true; var showAllRecordsLimit = 500; var incrementCounter = false; var outdr = ""; var outdrABC = ""; var vphdr = document.getElementById("dr_div"); //var vphresults = document.getElementById("sresults"); var deparments = []; var specialties = []; var dept = document.getElementById('UMCMainContent_txtdept').value; var alphagroup = []; var rowItemCount = 4; outdrABC = "4971156277004897148327511840499574887153364057"; outdr += outdrABC; var nextalpha = 0; var currentLetter = ""; currentDisplayLetter = newletter; var currentDisplayLetterBool = true; var currentLetterFirst = true; var includedLetters = []; if (results != null) { //var show = document.getElementById('UMCMainContent_txtshow').value; var show = "phys"; $(vphdr).attr("style", "display:block;"); outdr += "

"; outdr += "

"; //outdr += "" + results.length + " results"; outdr += ""; outdr += "

"; if (searchTxt != "" && ds != "") outdr += "Providers - \"" + decodeURI(searchTxt) + "\" - " + GetSpecialtyName(ds) + "

9adbc084-627b-40e7-bd29-409575344263 doctors found

"; else if (searchTxt == "" && ds != "") outdr += "Providers - " + GetSpecialtyName(ds) + "

9adbc084-627b-40e7-bd29-409575344263 doctors found

"; else if (searchTxt != "" && ds == "") outdr += "Providers - \"" + decodeURI(searchTxt) + "\"

9adbc084-627b-40e7-bd29-409575344263 doctors found

"; else if (dept != "") outdr += "Providers - " + GetSpecialtyName(dept) + "

" + results.length + " doctors found

"; else outdr += "Providers

9adbc084-627b-40e7-bd29-409575344263 doctors found

"; outdr += "

"; outdr += "

"; var rowTally = 0; if (results.length > showAllRecordsLimit) { showAllRecords = false; } if (showAllRecords == true) { //showAllRecords = false; //This should be tweaked to see how many records are displayed at once. If there are too many then this should be set to true. if (results.length > 0) { currentLetter = results[0].dr_FullName.toUpperCase().charAt(0); if (currentDisplayLetterBool == true) { currentDisplayLetter = currentLetter; currentDisplayLetterBool = false; } } for (var g = 0; g < results.length; g++) { if (!containsObject(alphagroup, results[g].dr_FullName.toLowerCase().charAt(0), false)) { alphagroup.push(results[g].dr_FullName.toLowerCase().charAt(0)); } } for (var i = 0; i < results.length; i++) { if ((currentLetter.toUpperCase() == results[i].dr_FullName.toUpperCase().charAt(0)) && (currentLetterFirst)) { outdr += "

"; incrementCounter = true; outdr += "

" + currentLetter.toUpperCase() + "

"; outdr += "back to top"; outdr += "

"; currentLetterFirst = false; includedLetters.push(currentLetter.toUpperCase()); } if ((rowTally % rowItemCount == 0) || (i == 0)) { outdr += "

"; incrementCounter = true; } if (results[i] != undefined) { if (currentLetter.toUpperCase() != results[i].dr_FullName.toUpperCase().charAt(0)) { currentLetterFirst = true; nextalpha++; if (nextalpha < alphagroup.length) { currentLetter = alphagroup[nextalpha]; } outdr += "

"; rowTally = 0; i--; continue; } else { if (incrementCounter) { resultsCounter ++; } outdr += AddRecord(results[i], dept); } } if (rowTally % rowItemCount == (rowItemCount - 1)) { outdr += "

"; } rowTally++; }//for (var i = 0; i < results.length; i++) { } else { for (var g = 0; g < results.length; g++) { if (!containsObject(alphagroup, results[g].dr_FullName.toLowerCase().charAt(0), false)) { alphagroup.push(results[g].dr_FullName.toLowerCase().charAt(0)); } } if (currentLetter == "") { if (results != null) { currentLetter = results[0].dr_FullName.toUpperCase().charAt(0); } else { currentLetter = "A"; } } if (currentDisplayLetter == "") { if (results != null) { currentDisplayLetter = results[0].dr_FullName.toUpperCase().charAt(0); } else { currentDisplayLetter = "A"; } } for (var i = 0; i < results.length; i++) { resultsCounter++; if ((currentLetter.toUpperCase() == results[i].dr_FullName.toUpperCase().charAt(0)) && (currentLetterFirst)) { if (currentDisplayLetter.toUpperCase() == currentLetter.toUpperCase()) { outdr += "

"; outdr += "

" + currentLetter.toUpperCase() + "

"; outdr += "back to top"; outdr += "

"; } currentLetterFirst = false; includedLetters.push(currentLetter.toUpperCase()); } if ((rowTally % rowItemCount == 0) || (i == 0)) { if (results[i].dr_FullName.toUpperCase().charAt(0) == currentDisplayLetter) { outdr += "

"; } else { outdr += "

"; } } if (currentLetter.toUpperCase() != results[i].dr_FullName.toUpperCase().charAt(0)) { currentLetterFirst = true; nextalpha++; if (nextalpha < alphagroup.length) { currentLetter = alphagroup[nextalpha]; } outdr += "

"; rowTally = 0; i--; continue; } else { if (results[i].dr_FullName.toUpperCase().charAt(0) == currentDisplayLetter) { outdr += AddRecord(results[i], dept); } } if (rowTally % rowItemCount == (rowItemCount - 1)) { outdr += "

"; } rowTally++; } } $('#loading').css('display', 'none'); }//if (results != null) { else { $(vphdr).attr("style", "display:none"); }//else: if (results != null) { outdrABC = "

    "; for (var g = 0; g < includedLetters.length; g++) { if (showAllRecords == true) { outdrABC += "
  • " + includedLetters[g] + "
  • "; } else { outdrABC += "
  • " + includedLetters[g] + "
  • "; } } outdrABC += "

"; outdr = outdr.replace("4971156277004897148327511840499574887153364057", outdrABC); outdr = outdr.replace("9adbc084-627b-40e7-bd29-409575344263", resultsCounter); vphdr.innerHTML = outdr; resultsCounter = 0; $('#loading').css('display', 'none'); setLazy(); lazyLoad(); results_all = results; $("#mainRow").css("opacity", "1"); SetAlphaLetter(); $('.profile-link').on('click', function (e) { e.preventDefault(); }); $('.alpha-link').on('click', function (e) { e.preventDefault(); }); } function SetAlphaLetter() { if (alpha != undefined && alpha != '' && alpha.length == 1) { $('.alpha li').each(function () { $(this).removeClass("active"); var letter = $(this).attr("data-letter"); if (letter != undefined && letter != '') { if (letter.toLowerCase() == alpha.toLowerCase()) $(this).addClass("active"); } }) //$('.alpha-' + alpha.toUpperCase()).addClass('active'); } } // Write an individual doctor row function AddRecord(result, dept) { var returnString = ""; var doctorNameString = result.dr_LFM.replace(new RegExp("'", "g"), "\\'"); var hasLocations = false; if (result.dr_epicLocations != undefined && result.dr_epicLocations.length > 0) hasLocations = true; //var linkType = "LFM"; //if ((result.dr_LFM).indexOf("-") > 0 || (result.dr_LFM).indexOf("'") > 0 || (result.dr_FullName.split(',')[0].indexOf(" ") > 0)) { // linkType = "ID"; //} returnString += "

"; returnString += "

"; returnString += "

"; returnString += "

"; //if ((result.dr_FullName.split(',')[0].indexOf(" ") > 0)) // var test = "yeah"; //if (linkType == "ID") { //returnString += ""; //} else { returnString += ""; //} returnString += ""; returnString += ""; //if (linkType == "ID") { //returnString += ''; //} else { returnString += ""; //} returnString += "View Profile"; returnString += "

"; returnString += "

"; returnString += "

"; returnString += "

"; //Patient Satisfaction Star Ratings var stars = ""; //if (hasLocations) // stars = " stars"; returnString += "

"; //if(linkType == "ID") { //returnString += ""; //} else { returnString += ""; //} var doctorName = ""; if (result.dr_CustomDisplayName != "") { doctorName = result.dr_CustomDisplayName; } else { if (result.dr_FirstName != "") doctorName += result.dr_FirstName; if (result.dr_MiddleName != "") doctorName += ' ' + result.dr_MiddleName.charAt(0) + "."; if (result.dr_LastName != "") doctorName += ' ' + result.dr_LastName; if (result.dr_Suffix != "") doctorName += ' ' + result.dr_Suffix.replace(",", ""); } if (result.dr_Title != "") doctorName += ', ' + result.dr_Title.replace(/\./g, ""); if (result.dr_Title2 != undefined & result.dr_Title2 != "") doctorName += ', ' + result.dr_Title2.replace(/\./g, ""); if (result.dr_Title3 != undefined & result.dr_Title3 != "") doctorName += ', ' + result.dr_Title3.replace(/\./g, ""); returnString += doctorName; returnString += ""; returnString += "

"; if (result.dr_departments.length > 0) { returnString += "

Specialties:

"; returnString += "

"; var specialtiesText = ""; for (var d = 0; d < result.dr_departments.length; d++) { for (var s = 0; s < result.dr_departments[d].Specialties.length; s++) { if (specialtiesText != "") { specialtiesText += ", "; } specialtiesText += result.dr_departments[d].Specialties[s].title.trim().charAt(0).toUpperCase() + result.dr_departments[d].Specialties[s].title.trim().slice(1).toLowerCase(); } } if (specialtiesText != "") { returnString += specialtiesText; returnString += "
"; } returnString += "

"; } returnString += "

"; if (hasLocations) { returnString += "

"; // Request Appointment button (with Open-Scheduling option) if (result.openSchedulingLink != "" && result.openSchedulingLink != null && !hideOpenScheduling) { returnString += 'Schedule Appointment'; } else { returnString += 'Request Appointment'; } returnString += '(888) 815-2005'; if (result.telemedicine) returnString += 'Telehealth Friendly'; if (result.newPatients) returnString += 'Taking New Patients'; returnString += "

"; } returnString += "

"; var showLocations = true; if (!showEpicLocations) { showLocations = false; for (var d = 0; d < result.dr_epicLocations.length; d++) { if (result.dr_epicLocations[d].Web_LocationName != undefined && result.dr_epicLocations[d].Web_LocationName != '') showLocations = true; } } if (hasLocations && showLocations) { returnString += "

"; returnString += "

Practice Locations:

"; returnString += "

"; var tempLocationsList = []; for (var d = 0; d < result.dr_epicLocations.length; d++) { var Epic_Dept_ID = result.dr_epicLocations[d].Epic_Dept_ID; var Epic_Dept_Name = result.dr_epicLocations[d].Epic_Dept_Name; var Epic_Dept_Specialty = result.dr_epicLocations[d].Epic_Dept_Specialty; var Epic_Dept_Addr_Line1 = result.dr_epicLocations[d].Epic_Dept_Addr_Line1; var Epic_Dept_Addr_Line2 = result.dr_epicLocations[d].Epic_Dept_Addr_Line2; var Epic_Dept_City = result.dr_epicLocations[d].Epic_Dept_City; var Epic_Dept_State = result.dr_epicLocations[d].Epic_Dept_State; var Epic_Dept_Zip = result.dr_epicLocations[d].Epic_Dept_Zip; var Web_LocationID = result.dr_epicLocations[d].Web_LocationID; var Web_LocationName = result.dr_epicLocations[d].Web_LocationName; var Web_LocationAddress = result.dr_epicLocations[d].Web_LocationAddress; var Web_LocationAddress2 = result.dr_epicLocations[d].Web_LocationAddress2; var Web_LocationCity = result.dr_epicLocations[d].Web_LocationCity; var Web_LocationState = result.dr_epicLocations[d].Web_LocationState; var Web_LocationZip = result.dr_epicLocations[d].Web_LocationZip; var Web_LocationParking = result.dr_epicLocations[d].Web_LocationParking; var Web_LocationMAPCoordinates = result.dr_epicLocations[d].Web_LocationMAPCoordinates; var drivingLink = ""; var locationString = ""; locationString += ""; locationString += ""; locationString += ""; /* if (!tempLocationsList.includes(locationString)) { tempLocationsList.push(locationString); returnString += locationString; }*/ if (tempLocationsList.indexOf(locationString) == -1) { tempLocationsList.push(locationString); returnString += locationString; } } returnString += "
"; if (Web_LocationID != undefined && Web_LocationID != "" && Web_LocationID != '00000000-0000-0000-0000-000000000000') locationString += ''; if (Web_LocationName != undefined & Web_LocationName != '') { locationString += "" + Web_LocationName + "";'; //if (Epic_Dept_Specialty != undefined && Epic_Dept_Specialty != '') { // locationString += "
"; // locationString += "for " + Epic_Dept_Specialty + ""; //} locationString += "
"; if (Web_LocationAddress != undefined && Web_LocationAddress != '') { locationString += Web_LocationAddress; drivingLink += Web_LocationAddress; } else { locationString += Epic_Dept_Addr_Line1; drivingLink += Epic_Dept_Addr_Line1; } if (Web_LocationCity != undefined && Web_LocationCity != '') { locationString += ", " + Web_LocationCity; drivingLink += ", " + Web_LocationCity; } else { locationString += ", " + Epic_Dept_City; drivingLink += ", " + Epic_Dept_City; } if (Web_LocationState != undefined && Web_LocationState != '') { locationString += ", " + Web_LocationState; drivingLink += ", " + Web_LocationState; } else { locationString += ", " + Epic_Dept_State; drivingLink += ", " + Epic_Dept_State; } if (Web_LocationZip != undefined && Web_LocationZip != '') { locationString += ", " + Web_LocationZip; drivingLink += ", " + Web_LocationZip; } else { locationString += ", " + Epic_Dept_Zip; drivingLink += ", " + Epic_Dept_Zip; } var googleLat = $('#google-latitude').text().trim(); var googleLong = $('#google-longitude').text().trim(); if (googleLat != '' && googleLong != '') { if (result.dr_epicLocations[d].Web_LocationMAPCoordinates.trim() != '') { var LLArray = result.dr_epicLocations[d].Web_LocationMAPCoordinates.split(','); if (LLArray.length == 2) { var doctorLat = LLArray[0].trim(); var doctorLng = LLArray[1].trim(); var distance = calculateDistance(doctorLat, doctorLng, googleLat, googleLong); if (distance != '') locationString += " (" + Number((distance).toFixed(1)) + " miles away)"; } } } locationString += "
"; if (Web_LocationID != undefined && Web_LocationID != "" && Web_LocationID != '00000000-0000-0000-0000-000000000000') locationString += 'View Location'; else locationString += 'Driving Directions'; locationString += "

"; returnString += "

"; } returnString += "

"; returnString += "

"; returnString += "

"; returnString += "

"; return returnString; } // Display the doctors for the requested alphabet letter function displayNewLetter(letterRequested) { $('#loading').css('display', 'block'); window.scrollTo(0, 0); var address = $('#txtDoctorsNearYou').val(); var latitude = $('#google-latitude').text().trim(); var longitude = $('#google-longitude').text().trim(); var distance = $('#ddDoctorsNearYouDistance').val(); var useDistance = false; if (address != '' && distance != '' && latitude != '' && latitude != 'undefined' && longitude != '' && longitude != 'undefined') useDistance = true; currentDisplayLetter = letterRequested; var searchTxt = document.getElementById('UMCMainContent_txtsearch').value; //var show = document.getElementById('UMCMainContent_txtshow').value; setTimeout(function () { GetDrs_phys(getFilteredDoctors(useDistance), searchTxt, "", letterRequested); }, 500); alpha = letterRequested.toUpperCase(); SetAlphaLetter(); updateURLQueriesFromFilters(); } // Scroll back to the top of the page function ScrollToTopOfPage() { window.scrollTo(0, 0); setTimeout(function () { $('.alpha').removeClass('stickymenu'); }, 100); } // Provider Profile Loader function displayDoctorProfile(requestParam, searchType, popState) { if (popState === void 0) popState = false; $("#mainRow").css("opacity", "0.7"); $('#doctor-filter-loading').show(); var doctor = null; if (drresults != undefined && drresults != null) { if (searchType == "doc-id") { if (drresults != undefined && drresults != null) { try { /* doctor = drresults.find(function (c) { return c.dr_id == requestParam; });*/ doctor = drresults.filter(function (c) { return c.UserGuid == requestParam; })[0]; } catch (err){ } } } else if (searchType == "doc-name") { if (drresults != undefined && drresults != null) { try { /* doctor = drresults.find(function (c) { return c.dr_LFM.toLowerCase() == requestParam.toLowerCase(); });*/ doctor = drresults.filter(function (c) { return c.dr_LFM.toLowerCase() == requestParam.toLowerCase(); })[0]; } catch (err) { } } } } if (doctor != null) { var request = $.ajax({ url: "/Services/Providers.ashx", method: "POST", data: { requestType: "GetProviderProfileDetails", providerID: doctor.UserGuid }, dataType: "json" }); request.fail(function (jqXHR, textStatus) { //alert("Request failed: " + textStatus); var failure = "Request Failed: " + textStatus; }); //var getProviderDetails = ss.GetProviderProfileDetails(doctor.UserGuid, function (results) { request.done(function (results) { var doctorName = ""; if (doctor.dr_CustomDisplayName != "") { doctorName = doctor.dr_CustomDisplayName; } else { if (doctor.dr_FirstName != "") doctorName += doctor.dr_FirstName; if (doctor.dr_MiddleName != "") doctorName += ' ' + doctor.dr_MiddleName.charAt(0) + "."; if (doctor.dr_LastName != "") doctorName += ' ' + doctor.dr_LastName; if (doctor.dr_Suffix != "") doctorName += ' ' + doctor.dr_Suffix.replace(",", ""); } if (doctor.dr_Title != "") doctorName += ', ' + doctor.dr_Title.replace(/\./g, ""); if (doctor.dr_Title2 != undefined && doctor.dr_Title2 != "") doctorName += ', ' + doctor.dr_Title2.replace(/\./g, ""); if (doctor.dr_Title3 != undefined && doctor.dr_Title3 != "") doctorName += ', ' + doctor.dr_Title3.replace(/\./g, ""); var doctorEducationText = ''; if (results.educationText != undefined && results.educationText != "") { doctorEducationText += '

'; doctorEducationText += ''; doctorEducationText += results.educationText; doctorEducationText += ''; doctorEducationText += '

'; } var doctorExperienceText = ''; if (results.experienceText != undefined && results.experienceText != "") { doctorExperienceText += results.experienceText; } var doctorBiography = results.biography; var doctorStatement = results.statement; var addressArray = []; var hasLocations = false; if (doctor.dr_epicLocations != undefined && doctor.dr_epicLocations.length > 0) hasLocations = true; if (hasLocations) { for (var i = 0; i < doctor.dr_epicLocations.length; i++) { var address = ''; try { address = doctor.dr_epicLocations[i].Web_LocationMAPCoordinates.trim().replace(new RegExp(" ", "g"), ''); } catch (err){ } if (address == "") { try { address = doctor.dr_epicLocations[i].Epic_Dept_Addr_Line1 + ', ' + doctor.dr_epicLocations[i].Epic_Dept_City + ', ' + doctor.dr_epicLocations[i].Epic_Dept_State + ' ' + doctor.dr_epicLocations[i].Epic_Dept_Zip } catch (err){ } } if (address != '' && addressArray.indexOf(address) == -1) { addressArray.push({ "address" : address, "location" : doctor.dr_epicLocations[i] }); } } } $('#providerProfile').empty(); $('#providerProfile').append(function () { var writer = ''; var schema = '

'; // Large left-hand column with all profile content writer += '

'; // First profile block with image, name, bio info, etc writer += '

'; writer += '

'; // sub-column with profile image writer += '

'; writer += "University of Mississippi Medical Center (5)"; writer += '

'; // sub-column with doctor bio text info writer += '

'; //Patient Satisfaction Star Ratings var stars = ""; //if (hasLocations) // stars = " stars"; writer += '

' + doctorName + '

'; //writer += '

Department: ' + doctor.dr_dep + '

'; if (doctor.dr_departments != undefined && doctor.dr_departments.length > 0) { var specialtiesText = ""; schema += ',"medicalSpecialty": ['; for (var d = 0; d < doctor.dr_departments.length; d++) { for (var s = 0; s < doctor.dr_departments[d].Specialties.length; s++) { if (specialtiesText != "") { specialtiesText += ", "; } specialtiesText += doctor.dr_departments[d].Specialties[s].title.trim(); if (d > 0 || (d == 0 && s > 0)) schema += ","; schema += '{"@type": "MedicalSpecialty"'; schema += ',"name": "' + doctor.dr_departments[d].Specialties[s].title.trim() + '"'; schema += '}'; } } if (specialtiesText != "") { writer += '

Specialties: ' + specialtiesText + '

'; } schema += ']'; } if (doctor.dr_mf != "") writer += '

Gender: ' + (doctor.dr_mf.toLowerCase() == "f" ? "Female" : "Male") + '

'; if (doctorBiography != "" && doctorBiography != undefined) { writer += '

Biography: ' + doctorBiography + '

'; schema += ',"description": "' + doctorBiography.replace(new RegExp("'", "g"), "'").replace(new RegExp("
", "g"), " ") + '"'; } // Hidden Request Appointment box for mobile if (hasLocations) { writer += "

"; var onclick = ""; // Request Appointment button (with Open-Scheduling option) if (doctor.openSchedulingLink != "" && doctor.openSchedulingLink != null && !hideOpenScheduling) { writer += 'Schedule Appointment'; } else { var apptButtonURL = "/Healthcare/Make-An-Appointment/Make-Appointment.html"; writer += 'Request Appointment'; } writer += '(888) 815-2005'; if (doctor.telemedicine) writer += 'Telehealth Friendly'; if (doctor.newPatients) writer += 'Taking New Patients'; writer += "

"; } if (doctor.newPatients) schema += ',"isAcceptingNewPatients": "True"'; else schema += ',"isAcceptingNewPatients": "False"'; //Languages //writer += '

Languages: English

'; // Spot for Biography writer += '

'; // CLOSE sub-column with doctor bio text info writer += '

'; //CLOSE ROW writer += '

'; // CLOSE First profile block with image, name, bio info, etc // Spot for My Approach to Healthcare ROW if ((doctor.videoURL != undefined && doctor.videoURL != "") || (doctorStatement != "" && doctorStatement != undefined)) { writer += '

'; writer += "

My Approach to Healthcare

"; writer += '

'; if (doctor.videoURL != undefined && doctor.videoURL != "") { var videoURL = doctor.videoURL; if (videoURL.indexOf("youtu.be/") != -1) videoURL = videoURL.replace("youtu.be/", "youtube.com/embed/"); if (videoURL.indexOf("youtube.com/watch?v=") != -1) videoURL = videoURL.replace("youtube.com/watch?v=", "youtube.com/embed/"); if (videoURL.indexOf("youtube.com/v/") != -1) videoURL = videoURL.replace("youtube.com/v/", "youtube.com/embed/"); if (videoURL.indexOf("embed") == -1) videoURL = videoURL.replace("youtube.com/", "youtube.com/embed/"); videoURL = videoURL.split('?')[0]; videoURL = videoURL.split('&')[0]; if (videoURL.indexOf("/") == -1) videoURL = "https://www.youtube.com/embed/" + videoURL; writer += '

'; writer += '

'; writer += '

'; // CLOSE Column } if (doctorStatement != "" && doctorStatement != undefined) { writer += '

'; writer += '

' + doctorStatement + '

'; writer += '

'; // CLOSE Column } writer += '

'; // CLOSE Row writer += '

'; // CLOSE My Approach to Healthcare ROW } // Practice Locations ROW var showLocations = true; if (!showEpicLocations) { showLocations = false; for (var d = 0; d < doctor.dr_epicLocations.length; d++) { if (doctor.dr_epicLocations[d].Web_LocationName != undefined && doctor.dr_epicLocations[d].Web_LocationName != '') showLocations = true; } } if (hasLocations && showLocations) { writer += '

'; writer += "

Practice Locations

"; writer += '

'; writer += '

'; writer += "

"; writer += "

"; schema += ', "address" : ['; var tempLocationsList = []; var tempLocationSchemaList = []; var locNumber = 1; for (var d = 0; d < doctor.dr_epicLocations.length; d++) { var locationSchema = ""; var schemaAddress = ""; if (d > 0) locationSchema += ','; locationSchema += '{"@type": "PostalAddress"'; var Epic_Dept_ID = doctor.dr_epicLocations[d].Epic_Dept_ID; var Epic_Dept_Name = doctor.dr_epicLocations[d].Epic_Dept_Name; var Epic_Dept_Specialty = doctor.dr_epicLocations[d].Epic_Dept_Specialty; var Epic_Dept_Addr_Line1 = doctor.dr_epicLocations[d].Epic_Dept_Addr_Line1; var Epic_Dept_Addr_Line2 = doctor.dr_epicLocations[d].Epic_Dept_Addr_Line2; var Epic_Dept_City = doctor.dr_epicLocations[d].Epic_Dept_City; var Epic_Dept_State = doctor.dr_epicLocations[d].Epic_Dept_State; var Epic_Dept_Zip = doctor.dr_epicLocations[d].Epic_Dept_Zip; var Web_LocationID = doctor.dr_epicLocations[d].Web_LocationID; var Web_LocationName = doctor.dr_epicLocations[d].Web_LocationName; var Web_LocationAddress = doctor.dr_epicLocations[d].Web_LocationAddress; var Web_LocationAddress2 = doctor.dr_epicLocations[d].Web_LocationAddress2; var Web_LocationCity = doctor.dr_epicLocations[d].Web_LocationCity; var Web_LocationState = doctor.dr_epicLocations[d].Web_LocationState; var Web_LocationZip = doctor.dr_epicLocations[d].Web_LocationZip; var Web_LocationParking = doctor.dr_epicLocations[d].Web_LocationParking; var Web_LocationMAPCoordinates = doctor.dr_epicLocations[d].Web_LocationMAPCoordinates; var drivingLink = ""; var locationString = ""; locationString += ""; locationString += ""; var locationStringMinusNumber = locationString.replace('' + locNumber + '', ''); locationSchema += '}'; /* if (!tempLocationsList.includes(locationStringMinusNumber)) { writer += locationString; tempLocationsList.push(locationStringMinusNumber); } if (!tempLocationSchemaList.includes(schemaAddress)) { schema += locationSchema; tempLocationSchemaList.push(schemaAddress); }*/ if (tempLocationsList.indexOf(locationStringMinusNumber) == -1) { writer += locationString; tempLocationsList.push(locationStringMinusNumber); locNumber++; } if (tempLocationSchemaList.indexOf(schemaAddress) == -1) { schema += locationSchema; tempLocationSchemaList.push(schemaAddress); } } writer += "
"; if (Web_LocationID != undefined && Web_LocationID != "" && Web_LocationID != '00000000-0000-0000-0000-000000000000') locationString += '' locationString += '' + locNumber + ''; if (Web_LocationName != undefined & Web_LocationName != '') { locationString += "" + Web_LocationName + "";' //if (Epic_Dept_Specialty != undefined && Epic_Dept_Specialty != '') { // locationString += "
"; // locationString += "for " + Epic_Dept_Specialty + ""; //} locationString += "
"; if (Web_LocationAddress != undefined && Web_LocationAddress != '') { locationString += Web_LocationAddress; drivingLink += Web_LocationAddress; locationSchema += ', "streetAddress" : "' + Web_LocationAddress + '"'; schemaAddress = Web_LocationAddress; } else { locationString += Epic_Dept_Addr_Line1; drivingLink += Epic_Dept_Addr_Line1; locationSchema += ', "streetAddress" : "' + Epic_Dept_Addr_Line1 + '"'; schemaAddress = Epic_Dept_Addr_Line1; } if (Web_LocationCity != undefined && Web_LocationCity != '') { locationString += ", " + Web_LocationCity; drivingLink += ", " + Web_LocationCity; locationSchema += ', "addressLocality" : "' + Web_LocationCity + '"'; } else { locationString += ", " + Epic_Dept_City; drivingLink += ", " + Epic_Dept_City; locationSchema += ', "addressLocality" : "' + Epic_Dept_City + '"'; } if (Web_LocationState != undefined && Web_LocationState != '') { locationString += ", " + Web_LocationState; drivingLink += ", " + Web_LocationState; locationSchema += ', "addressRegion" : "' +Web_LocationState + '"'; } else { locationString += ", " + Epic_Dept_State; drivingLink += ", " + Epic_Dept_State; locationSchema += ', "addressRegion" : "' + Epic_Dept_State + '"'; } if (Web_LocationZip != undefined && Web_LocationZip != '') { locationString += ", " + Web_LocationZip; drivingLink += ", " + Web_LocationZip; locationSchema += ', "postalCode" : "' + Web_LocationZip + '"'; } else { locationString += ", " + Epic_Dept_Zip; drivingLink += ", " + Epic_Dept_Zip; locationSchema += ', "postalCode" : "' + Epic_Dept_Zip + '"'; } locationString += "
"; if (Web_LocationID != undefined && Web_LocationID != "" && Web_LocationID != '00000000-0000-0000-0000-000000000000') locationString += 'View Location'; else locationString += 'Driving Directions'; locationString += "

"; writer += "

"; // CLOSE Locations block writer += "

"; // CLOSE First Column schema += ']'; // Column for Google Map image if (addressArray.length > 0 && !hideGoogleWidgets) { writer += '

'; writer += '

'; writer += '

'; writer += '

'; writer += '

'; writer += '

'; //CLOSE Second Column } writer += '

'; //CLOSE ROW writer += '

'; // CLOSE Second profile block with Locations } if (hasLocations && insurancePageContent != '') { // Insurance Plans ROW writer += '

'; writer += "

Accepted Insurance Plans

"; var textArea = document.createElement('textarea'); textArea.innerHTML = insurancePageContent; writer += textArea.value; $(textArea).remove(); writer += 'Click to see more Accepted Insurances'; writer += '

'; // CLOSE Insurance Plans Row } // Education ROW if (doctorEducationText != "") { writer += '

'; writer += "

Education

"; writer += '

'; writer += '

'; writer += doctorEducationText; writer += '

'; // CLOSE Column writer += '

'; // CLOSE Row writer += '

'; // CLOSE Education Row } // Experience ROW if (doctorExperienceText != '') { writer += '

'; writer += "

Experience

"; writer += '

'; writer += '

'; writer += doctorExperienceText; writer += '

'; // CLOSE Column writer += '

'; // CLOSE Row writer += 'Click to see more Experience'; writer += '

'; // CLOSE Experience Row } writer += '

'; // CLOSE Large left-hand column with all profile content // Small right-hand column with nav and request appt button, etc writer += '

'; if (hasLocations) { writer += "

"; var onclick = ""; // Request Appointment button (with Open-Scheduling option) if (doctor.openSchedulingLink != "" && doctor.openSchedulingLink != null && !hideOpenScheduling) { writer += 'Schedule Appointment'; } else { var apptButtonURL = "/Healthcare/Make-An-Appointment/Make-Appointment.html"; writer += 'Request Appointment'; } writer += '(888) 815-2005'; if (doctor.telemedicine) writer += 'Telehealth Friendly'; if (doctor.newPatients) writer += 'Taking New Patients'; writer += "

"; } writer += '

'; writer += 'About Me'; if (doctor.videoURL != undefined && doctor.videoURL != "") writer += 'My Approach To Healthcare'; var showLocations = true; if (!showEpicLocations) { showLocations = false; for (var d = 0; d < doctor.dr_epicLocations.length; d++) { if (doctor.dr_epicLocations[d].Web_LocationName != undefined && doctor.dr_epicLocations[d].Web_LocationName != '') showLocations = true; } } if (hasLocations && showLocations) { writer += 'Practice Locations'; } if (hasLocations && insurancePageContent != '') writer += 'Accepted Insurance Plans'; if (doctorEducationText != "") writer += 'Education'; if (doctorExperienceText != "") writer += 'Experience'; writer += '

'; writer += '

'; writer += ''; schema += ',"telephone": "1(888)815-2005"'; schema += ',"priceRange": "$$"'; schema += ',"hospitalAffiliation" : {'; schema += '"@type": "Hospital"'; schema += ',"name": "University of Mississippi Medical Center"'; schema += ',"url": "https://www.umc.edu"'; schema += ',"image": "https://www.umc.edu/img/ummc_u_200x200.cmp.png"'; schema += ',"address": {'; schema += '"@type": "PostalAddress"'; schema += ',"streetAddress": "2500 North State Street"'; schema += ',"addressLocality": "Jackson"'; schema += ',"addressRegion": "MS"'; schema += ',"postalCode": "39216"'; schema += '}'; schema += ',"telephone": "1(888)815-2005"'; schema += ',"priceRange": "$$"'; schema += '}'; schema += '}<\/script>'; schema = schema.replace(",}<\/script>", "}<\/script>"); writer += schema; writer += ''; $("#mainRow").css("opacity", "1"); $('#doctor-filter-loading').hide(); return writer; }); $('.read-more-button').on("click", function (e) { $(this).closest('.profile-block').removeClass('collapsed'); $(this).hide(); }); $('body').addClass('noscroll'); $('#providerProfile').clearQueue().addClass('active').delay(10).queue(function (next) { $('#providerProfile').clearQueue(); $('.content').addClass('active'); $("#providerProfile").animate({ scrollTop: 0 }, 'fast'); //$('#mainRow').css({ "visibility": "hidden" }); }); // If user clicks 'Close button' (X), close provider's profile $('#closeProviderProfile').unbind(); $('#closeProviderProfile').on("click", function (e) { $('body').removeClass('noscroll'); $(".banner-row").show(); $('#mainRow').css({ "visibility": "visible" }); $("#mainRow").show(); $('#leftnavdr').trigger('sticky_kit:recalc'); $('#providerProfile').removeClass('active'); $('#providerProfile').html(''); updateURLQueriesFromFilters(); }); // If use clicks outside of the provider profile's frame, close provider's profile $('#providerProfile').unbind(); $('#providerProfile').on('click', function (e) { if ($('#providerProfile').hasClass('active')) { if (!($(e.target).is("#providerProfile > .content > .row"))) { $('body').removeClass('noscroll'); $(".banner-row").show(); $('#mainRow').css({ "visibility": "visible" }); $("#mainRow").show(); $('#leftnavdr').trigger('sticky_kit:recalc'); $('#providerProfile').removeClass('active'); $('#providerProfile').html(''); updateURLQueriesFromFilters(); } } }); $('#providerProfile > .content > .row').on('click', function (e) { e.stopPropagation(); }); $('.profile-nav-button').unbind(); $('.profile-nav-button').each(function (index) { $(this).on("click", function (e) { e.preventDefault(); var link = $(this).attr("data-link"); $("#providerProfile").animate({ scrollTop: $('.' + link).position().top + $('#providerProfile').scrollTop() - 120 }, 'fast'); }) }); if (hasLocations && !hideGoogleWidgets) createGoogleMapStatic(addressArray); $('.open-schedule-wrapper').remove(); //$(".nav-column").trigger("sticky_kit:detach"); //stickProviderProfileFilter(); // Push new URL for provider's link // If (A Provider Profile is open AND The current Page-Title is not the same as the current Profile's Page-Title) OR a Provider Profile is not open // (This IF check removes duplicate Windows-History states, so that refreshing a Provider Profile does not add extra duplicate states) if ((window.location.href.toLowerCase().indexOf("/provider/") != -1 && document.title.toLowerCase() != doctorName.toLowerCase() + ' - healthcare provider - university of mississippi medical center') || window.location.href.toLowerCase().indexOf("/provider/") == -1) { if (searchType == "doc-id") { //if URL is using the doctor's id, swap to standard URL w/ provider's formatted name var newURL = window.location.origin + "/Provider/" + encodeURI(doctor.dr_LFM) + "/"; // + window.location.pathname + queryString; window.history.replaceState({ path: newURL }, '', newURL) document.title = doctorName + ' - Healthcare Provider - University of Mississippi Medical Center'; } else if (!popState) { // Else if not pop-state (user clicked forward/back button) var newURL = window.location.origin + "/Provider/" + encodeURI(doctor.dr_LFM) + "/"; // + window.location.pathname + queryString; window.history.pushState({ path: newURL }, '', newURL); document.title = doctorName + ' - Healthcare Provider - University of Mississippi Medical Center'; } else { // Else if pop-state, don't update window-history, only change page's title document.title = doctorName + ' - Healthcare Provider - University of Mississippi Medical Center'; } } }); } } // When an individual provider's profile is clicked, create Google map from their practice locations with custom clickable markers var geocoder; var profileMap; var bounds; // Creates the Static Google Map image in the provider profile, which can then be clicked to create an Interactive Google Map function createGoogleMapStatic(addressArray) { geocoder = new google.maps.Geocoder(); $('#profile-google-map').empty(); $('#profile-google-map-static > #static-image').empty(); var writer = ''; var markers = ''; var writtenAddresses = []; var markerName = 1; for (var i = 0; i < addressArray.length; i++) { var address = addressArray[i]; var addressName = address.location.Web_LocationName; if (addressName == "") addressName = address.location.Epic_Dept_Name; //var markerName = i + 1; if (writtenAddresses.indexOf(addressName) == -1) { var success = false; // First try to use Web Location Lat/Lng coordinates if (address.location.Web_LocationMAPCoordinates != "" && address.location.Web_LocationMAPCoordinates.indexOf(",") != -1) { var coordString = address.location.Web_LocationMAPCoordinates.replace(new RegExp(" ", "g"), ""); markers += '&markers=color:0x0067cc%7Clabel:' + markerName + '%7C' + coordString; success = true; } else { //If no coordinates, use Google Maps Geocoder to get Lat/Lng from written address (costs money) success = true; /* geocoder.geocode({ 'address': address.address }, function (results, status) { if (status == 'OK') { markers += '&markers=color:0x0067cc%7Clabel:' + markerName + '%7C' + results[0].geometry.location.lat() + ',' + results[0].geometry.location.lng(); success = true; } else { fail = true; } });*/ } if (success) { writtenAddresses.push(addressName); markerName++; } } } writer += 'https://maps.googleapis.com/maps/api/staticmap?maptype=roadmap&scale=2' + markers + '&size=391x224&key=AIzaSyBWinMjq1b3YX2M8r_-mqmws2MQySARSDs'; $('#profile-google-map-static > #static-image').css("background-image", "url(" + writer + ")"); $('#profile-google-map-static').unbind(); $('#profile-google-map-static').on('click', function (e) { e.preventDefault(); createGoogleMap(addressArray); $('#profile-google-map-static').fadeOut(240); }); } // Initialize the Google map function createGoogleMap(addressArray) { geocoder = new google.maps.Geocoder(); bounds = new google.maps.LatLngBounds(); var myLatlng = new google.maps.LatLng(-25.363882, 131.044922); var mapOptions = { zoom: 4, mapTypeControl: false, streetViewControl: false, controlSize: 25 } profileMap = new google.maps.Map(document.getElementById("profile-google-map"), mapOptions); var writtenAddresses = []; var markerNumber = 1; for (var i = 0; i < addressArray.length; i++) { var name = addressArray[i].location.Epic_Dept_Name; if (addressArray[i].location.Web_LocationName != '') name = addressArray[i].location.Web_LocationName; var address = name; // + addressArray[i].location.Epic_Dept_Specialty; if (writtenAddresses.indexOf(address) == -1) { createMapMarker(addressArray[i], markerNumber); writtenAddresses.push(address); markerNumber++; } } } // Geocode each of the provider's practice location addresses and create custom clickable markers for them function createMapMarker(address, i) { // First try to use Web Location Lat/Lng coordinates if (address.location.Web_LocationMAPCoordinates != "" && address.location.Web_LocationMAPCoordinates.indexOf(",") != -1) { var coordString = address.location.Web_LocationMAPCoordinates.replace(new RegExp(" ", "g"), ""); var coords = coordString.split(','); var latLng = { lat: Number(coords[0]), lng: Number(coords[1]) } writeMapMarker(address, latLng, i); } else { //If no coordinates, use Google Maps Geocoder to get Lat/Lng from written address (costs money) geocoder.geocode({ 'address': address.address }, function (results, status) { if (status == 'OK') { var latLng = { lat: results[0].geometry.location.lat(), lng: results[0].geometry.location.lng() }; writeMapMarker(address, latLng, i); } }); } } function writeMapMarker(address, latLng, i) { var Epic_Dept_Addr_Line1 = address.location.Epic_Dept_Addr_Line1; var Epic_Dept_City = address.location.Epic_Dept_City; var Epic_Dept_State = address.location.Epic_Dept_State; var Epic_Dept_Zip = address.location.Epic_Dept_Zip; var Web_LocationAddress = address.location.Web_LocationAddress; var Web_LocationCity = address.location.Web_LocationCity; var Web_LocationState = address.location.Web_LocationState; var Web_LocationZip = address.location.Web_LocationZip; var locationString = ""; var locationLink = ""; var drivingLink = ""; var Web_LocationID = address.location.Web_LocationID; if (Web_LocationAddress != undefined && Web_LocationAddress != '') { locationString += Web_LocationAddress; drivingLink += Web_LocationAddress; } else { locationString += Epic_Dept_Addr_Line1; drivingLink += Epic_Dept_Addr_Line1; } if (Web_LocationCity != undefined && Web_LocationCity != '') { locationString += ", " + Web_LocationCity; drivingLink += ", " + Web_LocationCity; } else { locationString += ", " + Epic_Dept_City; drivingLink += ", " + Epic_Dept_City; } if (Web_LocationState != undefined && Web_LocationState != '') { locationString += ", " + Web_LocationState; drivingLink += ", " + Web_LocationState; } else { locationString += ", " + Epic_Dept_State; drivingLink += ", " + Epic_Dept_State; } if (Web_LocationZip != undefined && Web_LocationZip != '') { locationString += ", " + Web_LocationZip; drivingLink += ", " + Web_LocationZip; } else { locationString += ", " + Epic_Dept_Zip; drivingLink += ", " + Epic_Dept_Zip; } if (Web_LocationID != undefined && Web_LocationID != "" && Web_LocationID != '00000000-0000-0000-0000-000000000000') locationLink += '

View Location

'; else locationLink += '

Driving Directions

'; var pinColor = "#0067cc"; var pinSVGFilled = "M 12,2 C 8.1340068,2 5,5.1340068 5,9 c 0,5.25 7,13 7,13 0,0 7,-7.75 7,-13 0,-3.8659932 -3.134007,-7 -7,-7 z"; var labelOriginFilled = new google.maps.Point(12, 9); var markerImage = { path: pinSVGFilled, anchor: new google.maps.Point(12, 17), fillOpacity: 1, fillColor: pinColor, strokeWeight: 2, strokeColor: "white", scale: 2, labelOrigin: labelOriginFilled }; var addressName = address.location.Web_LocationName; if (addressName == '') addressName = address.location.Epic_Dept_Name; const contentString = '

' + '

' + addressName + '

' + '

' + '

' + locationString + '

' + locationLink + '

' + '

'; const infowindow = new google.maps.InfoWindow({ content: contentString, }); var marker = new google.maps.Marker({ position: latLng, label: { text: String(i), color: "white" }, map: profileMap, icon: markerImage }); marker.addListener("click", function () { infowindow.open(profileMap, marker); }); bounds.extend(marker.position); if (bounds.getNorthEast().equals(bounds.getSouthWest())) { var extendPoint1 = new google.maps.LatLng(bounds.getNorthEast().lat() + 0.004, bounds.getNorthEast().lng() + 0.004); var extendPoint2 = new google.maps.LatLng(bounds.getNorthEast().lat() - 0.004, bounds.getNorthEast().lng() - 0.004); bounds.extend(extendPoint1); bounds.extend(extendPoint2); } profileMap.fitBounds(bounds); } // Click Open Scheduling Appt Button to open Epic's Open Scheduling Widget (WITHOUT JAVASCRIPT QUESTIONS) function clickOpenSchedulingButtonNoQuestions(apptButtonURL, providerName, providerClass) { $('.open-schedule-wrapper').remove(); $('.profile-row-open-schedule').remove(); // If button is clicked in the provider's profile, open widget in profile row if ($('.profile-row-about').length) { $('.profile-row-about').after(function () { var writer = ""; writer += '

'; writer += '

'; writer += '

Schedule an Appointment with
' + providerName + '

'; writer += '

'; // CLOSE - open schedule questions wrapper writer += '

'; return writer; }); $("#providerProfile").animate({ scrollTop: $('.profile-row-open-schedule').position().top + $('#providerProfile').scrollTop() - 120 }, 'fast'); } else { // Else, open widget in general search row $('.' + providerClass + ' .doctorBookAppointmentLink').closest('.add-people-section').after(function () { var writer = ''; writer += '

'; writer += '

'; writer += '

Schedule an Appointment with
' + providerName + '

'; writer += '

'; // CLOSE - open schedule questions wrapper writer += '

'; // CLOSE - open schedule wrapper return writer; }); $("html, body").animate({ scrollTop: $('.docinfocontainer .open-schedule-questions-wrapper').offset().top - 160 }, 'fast'); } writeOpenScheduleIFrame(apptButtonURL); return false; } function writeOpenScheduleIFrame(apptButtonURL) { $('.open-schedule-questions-wrapper').after(function () { var writer = ''; writer += '

'; writer += '

Not finding an appointment?

'; writer += 'Click the button below to visit our help page and find other ways to schedule an appointment at UMMC.'; writer += 'Other Ways to Schedule'; writer += '

'; return writer; }); $('.profile-row-open-schedule').append(function () { var writer = ''; writer += '

'; writer += '

'; return writer; }); if ($('.docinfocontainer .open-schedule-questions-wrapper').offset() != undefined) { $("html, body").delay(360).animate({ scrollTop: $('.docinfocontainer .open-schedule-questions-wrapper').offset().top - 100 }, 'fast'); } $('iframe').on("load", function () { this.style.height = this.contentWindow.document.body.offsetHeight + 'px'; }); } // Click Open Scheduling Appt Button to open Epic's Open Scheduling widget (WITH JAVASCRIPT QUESTIONS) function clickOpenSchedulingButton(apptButtonURL, providerName) { $('.open-schedule-wrapper').remove(); $('.profile-row-open-schedule').remove(); // If button is clicked in the provider's profile, open widget in profile row if ($('.profile-row-about').length) { $('.profile-row-about').after(function () { var writer = ""; writer += '

'; writer += '

'; writer += '

Schedule an Appointment with
' + providerName + '

'; writer += '

Please answer the following questions about your appointment:

'; writer += '

' writer += '

Have you seen this provider before?

'; writer += '

' writer += 'No'; writer += 'Yes'; writer += '

'; // CLOSE - Button wrapper writer += '

'; // CLOSE - Question 1 writer += '

' writer += '

How did you hear about this provider?

'; writer += '

' writer += 'Web Search'; writer += 'Recommended by family, friend, or another provider'; writer += '

'; // CLOSE - Button wrapper writer += '

'; // CLOSE - Question 1 writer += '

'; // CLOSE - open schedule questions wrapper writer += '

'; return writer; }); $("#providerProfile").animate({ scrollTop: $('.profile-row-open-schedule').position().top + $('#providerProfile').scrollTop() - 120 }, 'fast'); } else { // Else, open widget in general search row $('.doctorBookAppointmentLink').closest('.add-people-section').after(function () { var writer = ''; writer += '

'; writer += '

'; writer += '

Schedule an Appointment with
' + providerName + '

'; writer += '

Please answer the following questions about your appointment:

'; writer += '

' writer += '

Have you seen this provider before?

'; writer += '

' writer += 'No'; writer += 'Yes'; writer += '

'; // CLOSE - Button wrapper writer += '

'; // CLOSE - Question 1 writer += '

' writer += '

How did you hear about this provider?

'; writer += '

' writer += 'Web Search'; writer += 'Recommended by family, friend, or another provider'; writer += '

'; // CLOSE - Button wrapper writer += '

'; // CLOSE - Question 1 writer += '

'; // CLOSE - open schedule questions wrapper //writer += '

' writer += '

'; // CLOSE - open schedule wrapper return writer; }); $("html, body").animate({ scrollTop: $('.docinfocontainer .open-schedule-questions-wrapper').offset().top - 160 }, 'fast'); } return false; }; // Open-Scheduling Question/Answer widget function openScheduleButtonChooser(questionNum, answer, apptButtonURL) { if (answer == true) { $('.questions').slideUp("fast"); $('.please-answer').slideUp("fast"); $('.open-schedule-questions-wrapper').after(function () { var writer = ''; return writer; }); if ($('.docinfocontainer .open-schedule-questions-wrapper').offset() != undefined) { $("html, body").delay(360).animate({ scrollTop: $('.docinfocontainer .open-schedule-questions-wrapper').offset().top - 100 }, 'fast'); } $('iframe').on("load", function () { this.style.height = this.contentWindow.document.body.offsetHeight + 'px'; }); } else { if (questionNum == "1") { $('.question-1').removeClass("active"); $('.question-2').addClass("active"); } } } //------------------------------------------------------------------------------------- //The following code was adapted from Robin Osborne's blog. Made some modifications //to accomodate the large number of images that will be loaded and to allow for the user to //freely scroll without loading all images that are before the scroll point. Also //added functionality to allow for loading images for a set distance in pixels above //and below the active view. //https://www.robinosborne.co.uk/2016/05/16/lazy-loading-images-dont-rely-on-javascript/ //------------------------------------------------------------------------------------- $(window).ready(function () { registerListener('scroll', callLazyLoadWithTimeout); }); $(window).on('load', function () { stickDoctorFilter(); // THIS FIXES Sticky Item disappearing at bottom of scroll $('#leftnavdr') .on('sticky_kit:bottom', function (e) { $(this).parent().css('position', 'static'); }) .on('sticky_kit:unbottom', function (e) { $(this).parent().css('position', 'relative'); }) }); var lazy = []; var scrollingTime; function setLazy() { //lazy = document.getElementsByClassName('lazy'); lazy = $('.displaytrue .lazy'); //lazyLoad(); } function callLazyLoadWithTimeout() { clearTimeout(scrollingTime); scrollingTime = setTimeout(function () { lazyLoad(); }, 1); } function lazyLoad() { outputTemp = []; var stringOutput = ""; for (var i = 0; i < lazy.length; i++) { if (isInViewport(lazy[i], true)) { if (lazy[i].getAttribute('data-src')) { lazy[i].src = lazy[i].getAttribute('data-src'); } lazy[i].removeAttribute('data-src'); } } cleanLazy(); } function cleanLazy() { //The following code creates a new array that conforms to the function provided. The code does the same as above but is cleaner. lazy = Array.prototype.filter.call(lazy, function (a) { return a.getAttribute('data-src'); }); } function registerListener(event, func) { if (window.addEventListener) { window.addEventListener(event, func); } else { window.attachEvent('on' + event, func); } } function isInViewport(el, selectMore) { var rect = el.getBoundingClientRect(); if (selectMore) { return (//(rect.bottom >= (0 - 600) && (rect.bottom < window.innerHeight)) ||(rect.top >= -90 && (rect.bottom <= ((window.innerHeight + 90) || (document.documentElement.clientHeight + 90))))//(rect.right >= (0 - 600) && (rect.right < 0)) &&//(rect.top <= ((window.innerHeight + 600) || (document.documentElement.clientHeight + 600)) && rect.top > ((window.innerHeight) || (document.documentElement.clientHeight)))//(rect.left <= ((window.innerWidth + 600) || (document.documentElement.clientWidth + 600)) && rect.left > ( (window.innerWidth) || (document.documentElement.clientWidth)) )); } else { return (rect.bottom >= 0 && rect.right >= 0 && rect.top <= (window.innerHeight || document.documentElement.clientHeight) && rect.left <= (window.innerWidth || document.documentElement.clientWidth)); } } //------------------------------------------------------------------------------------- //https://www.robinosborne.co.uk/2016/05/16/lazy-loading-images-dont-rely-on-javascript/ //-------------------------------------------------------------------------------------
University of Mississippi Medical Center (6) Filter Search Results By(Clear Filters)

Providers Near You Not a valid address near our providers
Appointments

Patient Age

Return to Top

University of Mississippi Medical Center (2024)

References

Top Articles
Latest Posts
Article information

Author: Geoffrey Lueilwitz

Last Updated:

Views: 6030

Rating: 5 / 5 (80 voted)

Reviews: 87% of readers found this page helpful

Author information

Name: Geoffrey Lueilwitz

Birthday: 1997-03-23

Address: 74183 Thomas Course, Port Micheal, OK 55446-1529

Phone: +13408645881558

Job: Global Representative

Hobby: Sailing, Vehicle restoration, Rowing, Ghost hunting, Scrapbooking, Rugby, Board sports

Introduction: My name is Geoffrey Lueilwitz, I am a zealous, encouraging, sparkling, enchanting, graceful, faithful, nice person who loves writing and wants to share my knowledge and understanding with you.