btcp-digital-store/views/_preview.pug

43 lines
1.5 KiB
Plaintext

.row
.col-md-8.mb-3
if attr.desc
!= markdown.render(attr.desc, { linkify: true, typographer: true })
hr
h3 Purchase
//-p This file is available for #{ price.amount } #{ price.currency }.
form(method='post', action='_invoice')
input(type='hidden', name='_csrf', value=csrf)
input(type='hidden', name='file', value=path)
button.btn.btn-primary.btn-lg.pay-btn(type='submit')= attr.buy_button || `Pay ${fcurrency(price)} to access`
h3 File preview
if preview && preview.media_type
- preview_url = urlpath + '?preview'
if preview.media_type == 'image'
p A half-pixelated preview image is available below:
a(href=preview_url): img.mw-100(src=preview_url)
if preview.media_type == 'video'
p A preview video of the first 30 seconds is available below:
video.mw-100(src=preview_url, controls)
if preview.media_type == 'audio'
p A preview audio of the first 30 seconds is available below:
audio.mw-100(src=preview_url, controls)
if preview.media_type == 'doc'
p The first page from the document is available as a preview below:
a(href=preview_url): img.mw-100(src=preview_url)
else
p.text-muted No preview available.
.col-md-4
if exif && Object.keys(exif).length
h3 Exif metadata
p.exif: each val, key in exif
| #{key.replace(/([a-z])([A-Z])/g, '$1 $2').replace(/([A-Z])([A-Z][a-z])/g, '$1 $2')}: #[span.text-muted= val]
= ' '