Как я могу написать эту функцию PHP в Javascript? - PullRequest
0 голосов
/ 12 апреля 2019

У меня есть компонент 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. Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...