У меня есть компонент Joomla, который я настраиваю, и у меня есть собственный «путь» к уменьшенным изображениям для арендуемой недвижимости. Я написал PHP-скрипт, который отлично работает в списках свойств и деталях, но есть модули Map, которые извлекают миниатюры, используя Javascript.
Я пытался написать новую VAR Javascript, но через 2 дня стало очевидно, что мои навыки JS отсутствуют.
...
$imgdirectory = JURI::root().'media/com_iproperty/pictures/images/' . preg_replace('/\s+/', '+', $this->p->title) . '/'; // looks up image folder by Title, replacing spaces with '+'
$rentalThumb = $imgdirectory.preg_replace('/\s+/', '+', $this->p->title) . '.01.jpg'; // points to first rental image in $imgdiirectory
$remoteLuxThumb = 'https://images.knowlesco.com/mls_images/luxury/' . $this->p->mls_id . '/image-' . $this->p->mls_id . '-1.jpg';
$nopic = JURI::root().'media/com_iproperty/pictures/nopic.png'; // nopic image location
if (@GetImageSize($remoteLuxThumb)) {
echo '<a href="'.$this->p->proplink.'"><img src="'.$remoteLuxThumb.'" alt="'.$this->p->title.'"></a>';
} elseif (@GetImageSize($rentalThumb)) {
echo '<a href="'.$this->p->proplink.'"><img src="'.$rentalThumb.'" alt="'.$this->p->title.'"></a>';
} elseif (@GetImageSize(IpropertyHelperHtml::getThumbnail($this->p->id))) {
echo IpropertyHelperHtml::getThumbnail($this->p->id, $this->p->proplink, $this->p->street_address, '', 'class="img-polaroid"');
} else {
echo '<a href="'.$this->p->proplink.'"><img src="'.$nopic.'" alt="'.$this->p->title.'"></a>';
}
...
Существующий JS:
...
app.buildInfoWindow = function(listing){
// remove line breaks from banner
listing.banner = listing.banner.replace(/(\r\n|\n|\r)/gm," ");
var contentContainer = jQuery('<div />');
var contentString = '<div class="row-fluid ip-bubble-window">' +
'<div class="span5 ip-overview-img"><div class="ip-property-thumb-holder"><a href="'+listing.proplink+'">'+listing.thumb+'</a>'+listing.banner+'</div></div>' +
'<div class="span7">' +
'<h4><a href="'+listing.proplink+'">'+listing.street_address+', '+listing.city+'</a></h4>' +
'<div class="small"><strong>'+langOptions.pid+': </strong>'+listing.mls_id+' | <strong>'+langOptions.price+': </strong>'+listing.formattedprice+'</div>' +
'<div class="small">'+listing.raterange+'</div>' +
'<p class="ip-bubble-desc">'+listing.short_description.slice(0,185).trim()+'...'+'<div class="ip-bubble-cats">'+listing.caticons.join(' ')+'</div><a href="'+listing.proplink+'">('+langOptions.more+')</a></p>' +
'</div>' +
'</div>';
contentContainer.html(contentString);
return contentContainer.html();
};
...
Это держатель большого пальца, который я пытаюсь отобразить в PHP.
...
'<div class="span5 ip-overview-img"><div class="ip-property-thumb-holder"><a href="'+listing.proplink+'">'+listing.thumb+'</a>'+listing.banner+'</div></div>' +
...
Модуль карты должен вытащить правильное эскизное изображение, указанное в PHP.
Заранее спасибо!