Compare commits
3
Commits
master
...
native-cards
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a6b04f5e32 | ||
|
|
41a0ca2711 | ||
|
|
95a38f655b |
@@ -291,20 +291,42 @@
|
||||
grid.append('<div class="mymovies-empty">Catalog is empty</div>');
|
||||
return;
|
||||
}
|
||||
// Use Lampa's native Card module so cards render identically to built-in
|
||||
// sections and respect the "Показать обложку" (card_interfice_cover) setting
|
||||
// automatically. Wire onlyEnter -> our detail page.
|
||||
movies.forEach(function (m) {
|
||||
var card = $(
|
||||
'<div class="card selector card--loaded" data-id="' + esc(m.id) + '">' +
|
||||
'<div class="card__view">' +
|
||||
'<img src="' + resolve(m.poster || m.img || m.cover) + '" class="card__img" />' +
|
||||
'<div class="card__icons"><div class="card__icons-inner"></div></div>' +
|
||||
'</div>' +
|
||||
'<div class="card__title">' + esc(m.title || m.id) + '</div>' +
|
||||
(m.year ? '<div class="card__age">' + esc(String(m.year)) + '</div>' : '') +
|
||||
'</div>');
|
||||
card.on('hover:enter', function () { openMovie(m); });
|
||||
grid.append(card);
|
||||
try {
|
||||
var element = {
|
||||
data: {
|
||||
title: m.title || m.id,
|
||||
poster: resolve(m.poster || m.img || m.cover),
|
||||
img: resolve(m.img || m.poster || m.cover),
|
||||
cover: resolve(m.cover || m.img || m.poster),
|
||||
_mymovies: m
|
||||
},
|
||||
params: { module: Lampa.Maker.module('Card') }
|
||||
};
|
||||
var item = Lampa.Utils.createInstance(Lampa.Card, element);
|
||||
item.create();
|
||||
item.use({ onlyEnter: function () { openMovie(m); } });
|
||||
grid.append(item.html);
|
||||
} catch (e) {
|
||||
grid.append(manualCard(m).on('hover:enter', function () { openMovie(m); }));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function manualCard(m) {
|
||||
return $(
|
||||
'<div class="card selector card--loaded" data-id="' + esc(m.id) + '">' +
|
||||
'<div class="card__view">' +
|
||||
'<img src="' + resolve(m.poster || m.img || m.cover) + '" class="card__img" />' +
|
||||
'<div class="card__icons"><div class="card__icons-inner"></div></div>' +
|
||||
'</div>' +
|
||||
'<div class="card__title">' + esc(m.title || m.id) + '</div>' +
|
||||
(m.year ? '<div class="card__age">' + esc(String(m.year)) + '</div>' : '') +
|
||||
'</div>');
|
||||
}
|
||||
}
|
||||
Lampa.Component.add(PLUGIN.name, MyMovies);
|
||||
|
||||
|
||||
Reference in new issue
Block a user