# A card that displays a package from a Nit catalog
class CardCatalogPackage
super CardCatalog
super CardMEntity
autoinit(catalog, mentity)
redef var id = "package_{super}" is lazy
redef fun rendering do
var mpackage = self.mentity
if not mpackage isa MPackage then return
addn """
<div id='{{{id}}}' class='card'>
<div class='card-left text-center'>{{{mpackage.html_icon.write_to_string}}}</div>
<div class='card-body' style='width: 75%'>
<h5 class='card-heading'>
{{{mentity.html_declaration.write_to_string}}}
<small> """
for tag in mpackage.metadata.tags do
add "<span>"
add "<a href='tag_{tag.to_cmangle}.html' class='text-muted'>{tag}</a>"
if tag != mpackage.metadata.tags.last then addn ", "
add "</span>"
end
addn """</small>
</h5>"""
var mdoc = mentity.mdoc_or_fallback
if mdoc != null then
if full_doc then
addn mdoc.html_documentation
else
addn mdoc.html_synopsis
end
end
addn " </div>"
addn " <div class='card-right' style='width: 25%'>"
for maintainer in mpackage.metadata.maintainers do
addn maintainer.to_html
end
addn " <br>"
var license = mpackage.metadata.license
if license != null then
addn """
<span class='text-muted'>
<a href='http://opensource.org/licenses/{{{license}}}' class='text-muted'>
{{{license}}}
</a>
</span>"""
end
addn " </div>"
addn "</div>"
end
end
src/doc/static/static_cards.nit:503,1--556,3