function rei_buildVitecLayout(callback = null) {
if (typeof rei_vitecapi_properties == 'undefined') { console.log("No data"); return;}
let props = rei_vitecapi_properties;
let sortedProps = [];
for (propNo = 0; propNo < props.length; propNo++) {
props[propNo].dateChangedEpoch = Date.parse(props[propNo].dateChanged);
sortedProps.push(props[propNo]);
}
sortedProps.sort((a, b) => b-a);
console.log(sortedProps);
console.log(sortedProps[0]);
let propertiesContainer = document.getElementById("rei-properties-container");
if (propertiesContainer == null) { console.log("No element to insert properties!"); return;}
for (propNo = 0; propNo < sortedProps.length; propNo++) {
let newProp = document.createElement('div');
newProp.className = 'rei-property'+(propNo>=24 ? " rei-load-more-property":"");
newProp.innerHTML = "= 24 ? "rei-lazy-" : "")+"src='"+sortedProps[propNo].mainImage+"'>"+
"
"+sortedProps[propNo].streetAddress+"
"+(sortedProps[propNo].areaName != null ? sortedProps[propNo].areaName : "")+"
"+
(sortedProps[propNo].bidding != false ? ("") : "")+
""+
""+
"Adress"+sortedProps[propNo].streetAddress+""+
((sortedProps[propNo].type == "houses" || sortedProps[propNo].type) ?
("Antal rum"+sortedProps[propNo].rooms+" r.o.k."+
"Boarea"+sortedProps[propNo].livingSpace+" m²") :
(sortedProps[propNo].type == "plots" ? (sortedProps[propNo].plotSize+" m²") : "" )
) +
((sortedProps[propNo].status.id=="3" && sortedProps[propNo].price) != 0 ?
("Pris"+(""+sortedProps[propNo].price).trim().replace(/([0-9])([0-9]{3})$/, "$1 $2").replace(/([0-9])([0-9]{3}) /, "$1 $2 ").replace(/([0-9])([0-9]{3}) /, "$1 $2 ")+" kr som utgångspris") :
"") +
((sortedProps[propNo].status.id=="4" && sortedProps[propNo].price) != 0 ?
("Pris"+(""+sortedProps[propNo].price).trim().replace(/([0-9])([0-9]{3})$/, "$1 $2").replace(/([0-9])([0-9]{3}) /, "$1 $2 ").replace(/([0-9])([0-9]{3}) /, "$1 $2 ")+" kr som slutpris") :
"") +
""+
"Läs mer>"
"";
newProp.addEventListener('click', function(evt) { rei_toggleBrief(evt.target); })
propertiesContainer.appendChild(newProp);
}
if (sortedProps.length > 24) {
let btn = document.createElement('button');
btn.id = "rei-more-props";
btn.innerText = 'Visa fler bostäder';
propertiesContainer.appendChild(btn);
document.getElementById("rei-more-props").addEventListener("click", function(evt) { rei_showMoreProperties(); return false; });
}
if (callback != null) {
console.log("Do Callback");
callback();
}
else {
console.log("Don't Callback");
}
}
rei_buildVitecLayout(estate_insertShortContact);
function estate_insertShortContact() {
console.log("Callback");
let propertiesContainer = document.querySelector("#rei-properties-container");
let formContainer = document.querySelector("#rei-insert-in-listings");
if (formContainer != null)
propertiesContainer.appendChild(formContainer);
}
function rei_toggleBrief(elmt) {
if (elmt.nodeName.toLowerCase() == "a") return true;
while (elmt.className.indexOf("rei-property") < 0) {
if (elmt.parentElement == null) return;
elmt = elmt.parentElement;
}
if (elmt.className.indexOf("rei-active") < 0)
elmt.className += " rei-active";
else
elmt.className = elmt.className.replace("rei-active", "").replace(" ", " ");
}
function rei_showMoreProperties() {
let hiddenProperties = document.getElementById("rei-properties-container").querySelectorAll(".rei-load-more-property");
if (hiddenProperties == null || hiddenProperties.length == 0) {
document.getElementById("rei-more-props").remove;
return;
}
for (hpNo = 0; hpNo < Math.min(hiddenProperties.length, 24); hpNo++) {
let img = hiddenProperties[hpNo].querySelector(".rei-prop-image");
let lazySrc = img.getAttribute("rei-lazy-src");
if (lazySrc != null && lazySrc.length > 0) {
img.setAttribute("src", lazySrc);
img.removeAttribute("rei-lazy-src");
}
hiddenProperties[hpNo].className = hiddenProperties[hpNo].className.replace("rei-load-more-property", "");
}
}