Find a Doctor
An error occurred while processing the template.
The following has evaluated to null or missing:
==> doctor.profilePicture.link [in template "50514338544647#20120#117483" at line 72, column 117]
----
Tip: It's the step after the last dot that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----
----
FTL stack trace ("~" means nesting-related):
- Failed at: ${doctor.profilePicture.link.href} [in template "50514338544647#20120#117483" at line 72, column 115]
----
1<style>
2 .bookAppointmentFilterSearch .dubaiHealthDoctorsInner .cardBoxImg {
3 height: 240px;
4 background-color: #aeb7be;
5 }
6
7 .bookAppointmentFilterSearch .dubaiHealthDoctorsInner .cardBoxImg img {
8 width: 100%;
9 object-fit: contain;
10 }
11 .bookAppointmentFilterSearch .bookAppointmentFilterSearchRow{
12 padding-bottom: 48px;
13 }
14 .cardBoxGroupTwo .cardBoxContent .cardBoxTxt h2{
15 display: -webkit-box;
16 -webkit-line-clamp: 2;
17 line-clamp: 2;
18 }
19 .cardBoxGroupTwo .cardBoxContent {
20 min-height: unset;
21 }
22</style>
23<#if entries?has_content>
24 <div class="bookAppointmentFilterSearch">
25 <div class="container-fluid containerFluid dubai-health-search-results">
26 <div class="bookAppointmentFilterSearchRow">
27 <#list entries as entry>
28 <#assign doctor = {} />
29 <#attempt>
30 <#assign doctor = restClient.get("/c/doctors/${entry.getClassPK()}") />
31 <#recover>
32 <#assign doctor = {} />
33 </#attempt>
34 <#assign doctorsToSpecialities = {} />
35 <#attempt>
36 <#assign doctorsToSpecialities =
37 restClient.get(
38 "/c/doctors/${entry.getClassPK()}/doctorsToSpecialities?fields=specialtyName"
39 ) />
40 <#recover>
41 <#assign doctorsToSpecialities = {} />
42 </#attempt>
43
44
45 <#assign friendlyURL = "${doctor.friendlyUrlPath}" />
46 <#assign doctorAltText = "Doctor image" />
47 <#if doctor.name?exists && doctor.name?trim != "">
48 <#assign doctorAltText = doctor.name />
49 </#if>
50 <div class="bookAppointmentCol">
51 <div class="dubaiHealthDoctors">
52 <div class="dubaiHealthDoctorsInner">
53 <div class="cardBoxGroupTwo cardBoxGroupTwoX fixWidth">
54 <div class="findDoctorCard">
55 <#if doctor.isTelemedicine?number gt 0 >
56 <div class="telehealthCall">
57 <div class="wrapperTooltip">
58 <a href="javascript:void(0);" class="telehealthCallBtn">
59 <img src="/o/dubai-health-theme-css/images/icon/telehealth.png"
60 alt="image" loading="lazy" class="img-fluid">
61 </a>
62 <div class="tooltip">
63 ${languageUtil.get(locale,"doctor-available-for-telemedicine")}
64 </div>
65 </div>
66 </div>
67 </#if>
68
69 <div class="cardBoxImg">
70 <a href="/doctor/${friendlyURL}">
71 <#if doctor.profilePicture?exists>
72 <img src="${doctor.profilePicture.link.href}" alt="${doctorAltText?html}" class="img-fluid">
73 <#else>
74 <img src="/documents/d/dubai-health/doctor-placeholder" alt="${doctorAltText?html}" class="img-fluid">
75 </#if>
76 </a>
77 <div class="cardBoxImgOverlay">
78 <a href="/doctor/${friendlyURL}"
79 class="btn cardBoxOverlayBtn">${languageUtil.get(locale,"view-details")}</a>
80 </div>
81 </div>
82
83 <div class="cardBoxContent">
84 <div class="cardBoxTxt">
85 <span>
86 <#if doctorsToSpecialities?has_content>
87 <#list doctorsToSpecialities.items as doctorsToSpeciality>
88 <#if doctorsToSpeciality.specialtyName?exists>
89 ${doctorsToSpeciality.specialtyName}
90 </#if>
91 </#list>
92 </#if>
93 </span>
94 <h2>
95 <a href="/doctor/${friendlyURL}">
96 ${doctor.name}
97 </a>
98 </h2>
99 <#if doctor.jobTitle?exists && doctor.jobTitle.name?exists>
100 <p>${doctor.jobTitle.name}</p>
101 </#if>
102 </div>
103 </div>
104
105 </div>
106 <div class="cardBoxScheduleAppointment">
107 <#if doctor.doctorAvailability?number gt 0>
108 <a href="/doctor/${friendlyURL}#book-appointment" class="cardBoxScheduleAppointmentLink">
109 <img src="/o/dubai-health-theme-css/images/icon/calender1.png"
110 alt="calender1" class="img-fluid">
111 <p class="mb-0">${languageUtil.get(locale,"book-an-appointment")}
112 </p>
113 </a>
114 <#else>
115 <#if !doctor.noOutpatientClinic>
116 <a href="/doctor/${friendlyURL}#request-appointment" class="cardBoxScheduleAppointmentLink">
117 <img src="/o/dubai-health-theme-css/images/icon/in-person-appointment.png" alt="in-person-appointment" class="img-fluid">
118 <p class="mb-0">
119 ${languageUtil.get(locale,"request-appointment")}
120 </p>
121 </a>
122 </#if>
123 </#if>
124
125 <a href="/doctor/${friendlyURL}" class="viewDetailLink">
126 ${languageUtil.get(locale,"view-details")}
127 </a>
128 </div>
129
130 </div>
131 </div>
132 </div>
133 </div>
134
135 </#list>
136 </div>
137 <@liferay_aui.form useNamespace=false>
138 <@liferay_ui["search-paginator"] id="startPage&" markupView="lexicon"
139 namespace=namespace
140 searchContainer=searchContainer type="more" />
141 </@liferay_aui.form>
142 </div>
143 </div>
144 <#else>
145 <div class="bookAppointmentFilterSearch">
146 <div class="container-fluid containerFluid dubai-health-search-results">
147 <div class="insuranceList searchResultShow">
148 <div class="insuranceListInner">
149 <div class="insuranceResultFound">
150 <img src="/o/dubai-health-theme-css/images/icon/ins-search-icon.png" alt="search-icon"
151 class="img-fluid">
152 <h4>${languageUtil.get(locale, "no-results-found")}</h4>
153 <p>${languageUtil.get(locale, "doctor-no-result-found-description")}
154 <button class="btn-reset-search-results">
155 <strong> ${languageUtil.get(locale, "doctor-no-result-found-sub-description")}.</strong>
156 </button>
157 </p>
158 </div>
159 </div>
160 </div>
161 </div>
162 </div>
163
164 </#if>