Documentação: Client side callback to execute before displaying a
date, used to customize date display. Use beforeShowDay javascript callback to customize the look of each date.
//teste é nome da function js
<p:calendar beforeShowDay="teste" required="true" locale="pt" ></p:calendar>
<h:outputScript>
//<![CDATA[
function teste(date) {
var disabledDays = [
<ui:remove var="days" value="#{bean.disabledDays}" varStatus="loop">
"#{days}"#{loop.last ? '' : ','}
</ui:remove>
];
//Aqui funciona perfeitamente caso eu deixe o valor de disabledDays estático
var m = date.getMonth(), d = date.getDate(), y = date.getFullYear();
for (i = 0; i < disabledDays.length; i++) {
if($.inArray((m+1) + '-' + d + '-' + y,disabledDays) != -1) {
return [false];
}
}
return [true];
}