{% set postUrl = path('app_blog_show', {'slug': post.slug}) %}
<div class="card h-100 shadow-sm blog-post-card">
{% if post.featuredImage %}
<div class="blog-post-image-container">
<img src="{{ asset(post.featuredImage) }}" class="card-img-top blog-post-image" alt="{{ post.title }}">
</div>
{% else %}
<div class="blog-post-image-container bg-light d-flex align-items-center justify-content-center">
<i class="fa fa-file-text-o fa-3x text-secondary"></i>
</div>
{% endif %}
<div class="card-body d-flex flex-column">
<div class="mb-2">
{% for tag in post.tags %}
<a href="{{ path('app_blog_tag', {'slug': tag.slug}) }}" class="badge bg-primary text-decoration-none me-1">{{ tag.name }}</a>
{% endfor %}
</div>
<h3 class="card-title h5 mb-3">
<a href="{{ postUrl }}" class="text-decoration-none text-dark stretched-link">{{ post.title }}</a>
</h3>
{% if post.excerpt %}
<p class="card-text text-secondary mb-3">{{ post.excerpt|striptags|slice(0, 120) }}{% if post.excerpt|length > 120 %}...{% endif %}</p>
{% else %}
<p class="card-text text-secondary mb-3">{{ post.content|striptags|slice(0, 120) }}...</p>
{% endif %}
<div class="mt-auto d-flex align-items-center">
{% if post.author.avatar %}
<img src="{{ asset(post.author.avatar) }}" alt="{{ post.author.name }}" class="rounded-circle me-2" width="32" height="32">
{% else %}
<div class="rounded-circle bg-secondary text-white d-flex align-items-center justify-content-center me-2" style="width: 32px; height: 32px;">
{{ post.author.name|first|upper }}
</div>
{% endif %}
<div class="small">
<div class="fw-bold">{{ post.author.name }}</div>
<div class="text-secondary">{{ post.publishedAt|date('M d, Y') }}</div>
</div>
</div>
</div>
</div>