|
- class Teaser {
- constructor(date, title, urlToImage, description, url) {
- this.publishedAt = publishedAt;
- this.title = title;
- this.urlToImage = urlToImage;
- this.description = description;
- this.url = url;
- }
- }
- /**
- *
- * @param {Teaser} teaser
- */
- var getTeaserTemplate = function (teaser) {
- const publishedAt = formateDate(teaser.publishedAt);
- return `
- <div class="teaser">
- <div class="teaser-header">
- <div class="teaser-date" name="date">${publishedAt}</div>
- <div class="teaser-title" name="title">${teaser.title}</div>
- <div class="teaser-img" name="urlToImage">
- <img src="${teaser.urlToImage}">
- </div>
- </div>
- <div class="teaser-content" name="description">
- ${teaser.description} ...
- <a class="teaser-link" href="${teaser.url}" >more</a>
- </div>
- </div>
- `;
- };
-
- var formateDate = function (dateString) {
- const date = new Date(dateString);
- const dateTimeFormat = new Intl.DateTimeFormat("de", {
- year: "numeric",
- month: "2-digit",
- day: "2-digit",
- });
- const [
- { value: day },
- ,
- { value: month },
- ,
- { value: year },
- ] = dateTimeFormat.formatToParts(date);
- return `${day}.${month}.${year}`;
- };
-
- export { Teaser, getTeaserTemplate };
|