sutty/app/views/posts/show.haml

84 lines
2.5 KiB
Text
Raw Normal View History

2018-02-05 17:27:12 +00:00
.row
.col
= render 'layouts/breadcrumb',
crumbs: [ link_to(t('sites.index'), sites_path),
@site.name,
link_to(t('posts.index'),
site_posts_path(@site)),
@post.title ]
2018-01-30 15:20:19 +00:00
.row
.col
2018-02-10 16:09:42 +00:00
%h1{class: @post.get_front_matter(:dir)}= @post.title
2018-01-30 15:20:19 +00:00
%p
- translations = @post.translations.map do |translation|
- link_to translation.title, site_post_path(@site, translation, lang: translation.lang)
= raw translations.join(' / ')
.row
.col
2018-02-23 19:20:51 +00:00
= link_to t('posts.edit'),
edit_site_post_path(@site, @post, lang: @lang),
class: 'btn btn-info'
2018-01-31 20:29:27 +00:00
.row
.col
2018-02-10 16:09:42 +00:00
.content{class: @post.get_front_matter(:dir)}
:markdown
#{@post.content}
2018-01-30 15:20:19 +00:00
2018-06-27 23:08:30 +00:00
-# Representar los datos en una tabla:
-# Texto: tal cual en una celda
-# Array: píldoras
-# Array de Hashes: Tabla
-# Hash: Tabla
-# TODO DRY
%table.table.table-condensed.table-striped.table-responsive
%tbody
- @post.front_matter.each do |key, data|
%tr
2018-03-14 17:46:17 +00:00
%th= t("posts.#{key}")
%td
2018-03-14 17:46:17 +00:00
- if data.is_a? Array
2018-06-27 23:08:30 +00:00
-# Un Array de Hashes
- if data.all? { |a| a.is_a? Hash }
%table
%thead
%tr
- data.first.keys.each do |k|
%th= k.humanize
%tbody
- data.each do |r|
%tr
- r.each do |_,v|
%td
- if v.is_a? Array
- v.each do |s|
%span.badge.badge-secondary= s
- else
= v
- else
- data.each do |d|
%span.badge.badge-secondary= d
- elsif data.is_a? Hash
%table
%thead
%tr
- data.keys.each do |k|
%th= k.humanize
%tbody
%tr
- data.each do |_, v|
%td= v
- elsif data.respond_to? :content
2018-06-27 23:08:30 +00:00
-# Contenido del artículo
:markdown
#{data.content}
- elsif data.respond_to? :strftime
2018-06-27 23:08:30 +00:00
-# Fecha
= data.strftime('%F')
- else
2018-06-27 23:08:30 +00:00
-# Texto
= data