refactor wishlist manipulation code (#66)
This commit is contained in:
parent
0d7d73744c
commit
0b26ec0ce4
8 changed files with 521 additions and 361 deletions
|
@ -32,108 +32,107 @@ block content
|
|||
th= lang('WISHLIST_PLEDGE')
|
||||
th= lang('WISHLIST_DELETE')
|
||||
tbody
|
||||
each item, index in wishlist
|
||||
if req.user._id === item.addedBy || req.params.user !== req.user._id
|
||||
tr(id=item.id)
|
||||
td.rank= index + 1
|
||||
td
|
||||
figure(style='width: 100%; margin: 0;')
|
||||
img(src=item.image, style='width: 100%; max-height: 20em; object-fit: contain;')
|
||||
if item.url
|
||||
td.ugc(data-label='Name')
|
||||
a(
|
||||
href=item.url,
|
||||
rel='noopener noreferrer',
|
||||
target='_blank'
|
||||
)= (item.name ? item.name : item.url)
|
||||
else
|
||||
td.ugc(data-label=lang('WISHLIST_NAME'))= item.name
|
||||
if _CC.config.wishlist.note.markdown
|
||||
td.ugc(data-label=lang('WISHLIST_NOTE'))
|
||||
div!= item.note
|
||||
else
|
||||
td.ugc(data-label=lang('WISHLIST_NOTE'))= item.note
|
||||
td.ugc(data-label=lang('WISHLIST_PRICE'))= item.price
|
||||
td(data-label=lang('WISHLIST_EDIT_ITEM'))
|
||||
form.inline(method='GET', action=`${_CC.config.base}wishlist/${req.params.user}/note/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
button.button.is-text(
|
||||
type='submit',
|
||||
style='text-decoration: none;'
|
||||
disabled=item.addedBy !== req.user._id
|
||||
)
|
||||
span.icon
|
||||
i.far.fa-edit
|
||||
td.ugc(data-label=lang('WISHLIST_ADDED_BY'))= item.addedBy
|
||||
if req.params.user === req.user._id
|
||||
td(data-label=lang('WISHLIST_MOVE_ITEM_TOP'))
|
||||
form.topForm.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/move/top/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
button.button.is-text(
|
||||
type='submit',
|
||||
style='text-decoration: none;',
|
||||
disabled=index === firstCanSee
|
||||
)
|
||||
span.icon
|
||||
i.fas.fa-angle-double-up
|
||||
td(data-label=lang('WISHLIST_MOVE_ITEM_UP'))
|
||||
form.upForm.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/move/up/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
button.button.is-text(
|
||||
type='submit',
|
||||
style='text-decoration: none;',
|
||||
disabled=index === firstCanSee
|
||||
)
|
||||
span.icon
|
||||
i.fas.fa-arrow-up
|
||||
td(data-label=lang('WISHLIST_MOVE_ITEM_DOWN'))
|
||||
form.downForm.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/move/down/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
button.button.is-text(
|
||||
type='submit',
|
||||
style='text-decoration: none;',
|
||||
disabled=index === lastCanSee
|
||||
)
|
||||
span.icon
|
||||
i.fas.fa-arrow-down
|
||||
else
|
||||
td(data-label=lang('WISHLIST_PLEDGE'))
|
||||
if req.params.user !== req.user._id && !item.pledgedBy
|
||||
form.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/pledge/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
input.inline.button.is-primary(type='submit' value=lang('WISHLIST_PLEDGE_ITEM'))
|
||||
if item.pledgedBy === req.user._id
|
||||
form.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/unpledge/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
input.inline.button(type='submit' value=lang('WISHLIST_UNPLEDGE'))
|
||||
if item.pledgedBy && item.pledgedBy !== req.user._id
|
||||
if item.pledgedBy === '_CCUNKNOWN'
|
||||
span.ugc=lang('WISHLIST_PLEDGED_GUEST')
|
||||
else
|
||||
span.ugc=lang('WISHLIST_PLEDGED', item.pledgedBy)
|
||||
td(data-label='Delete Item')
|
||||
form.inline(
|
||||
method='POST',
|
||||
action=`${_CC.config.base}wishlist/${req.params.user}/remove/${item.id}`
|
||||
)
|
||||
each item, index in items
|
||||
tr(id=item.id)
|
||||
td.rank= index + 1
|
||||
td
|
||||
figure(style='width: 100%; margin: 0;')
|
||||
img(src=item.image, style='width: 100%; max-height: 20em; object-fit: contain;')
|
||||
if item.url
|
||||
td.ugc(data-label='Name')
|
||||
a(
|
||||
href=item.url,
|
||||
rel='noopener noreferrer',
|
||||
target='_blank'
|
||||
)= (item.name ? item.name : item.url)
|
||||
else
|
||||
td.ugc(data-label=lang('WISHLIST_NAME'))= item.name
|
||||
if _CC.config.wishlist.note.markdown
|
||||
td.ugc(data-label=lang('WISHLIST_NOTE'))
|
||||
div!= item.note
|
||||
else
|
||||
td.ugc(data-label=lang('WISHLIST_NOTE'))= item.note
|
||||
td.ugc(data-label=lang('WISHLIST_PRICE'))= item.price
|
||||
td(data-label=lang('WISHLIST_EDIT_ITEM'))
|
||||
form.inline(method='GET', action=`${_CC.config.base}wishlist/${req.params.user}/note/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
button.button.is-text(
|
||||
type='submit',
|
||||
style='text-decoration: none;'
|
||||
disabled=item.addedBy !== req.user._id
|
||||
)
|
||||
span.icon
|
||||
i.far.fa-edit
|
||||
td.ugc(data-label=lang('WISHLIST_ADDED_BY'))= item.addedBy
|
||||
if req.params.user === req.user._id
|
||||
td(data-label=lang('WISHLIST_MOVE_ITEM_TOP'))
|
||||
form.topForm.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/move/top/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
button.button.is-text(
|
||||
type='submit',
|
||||
style='text-decoration: none;',
|
||||
disabled=item.addedBy !== req.user._id
|
||||
disabled=index === 0
|
||||
)
|
||||
span.icon
|
||||
i.fas.fa-trash
|
||||
i.fas.fa-angle-double-up
|
||||
td(data-label=lang('WISHLIST_MOVE_ITEM_UP'))
|
||||
form.upForm.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/move/up/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
button.button.is-text(
|
||||
type='submit',
|
||||
style='text-decoration: none;',
|
||||
disabled=index === 0
|
||||
)
|
||||
span.icon
|
||||
i.fas.fa-arrow-up
|
||||
td(data-label=lang('WISHLIST_MOVE_ITEM_DOWN'))
|
||||
form.downForm.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/move/down/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
button.button.is-text(
|
||||
type='submit',
|
||||
style='text-decoration: none;',
|
||||
disabled=index === items.length - 1
|
||||
)
|
||||
span.icon
|
||||
i.fas.fa-arrow-down
|
||||
else
|
||||
td(data-label=lang('WISHLIST_PLEDGE'))
|
||||
if req.params.user !== req.user._id && !item.pledgedBy
|
||||
form.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/pledge/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
input.inline.button.is-primary(type='submit' value=lang('WISHLIST_PLEDGE_ITEM'))
|
||||
if item.pledgedBy === req.user._id
|
||||
form.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/unpledge/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
input.inline.button(type='submit' value=lang('WISHLIST_UNPLEDGE'))
|
||||
if item.pledgedBy && item.pledgedBy !== req.user._id
|
||||
if item.pledgedBy === '_CCUNKNOWN'
|
||||
span.ugc=lang('WISHLIST_PLEDGED_GUEST')
|
||||
else
|
||||
span.ugc=lang('WISHLIST_PLEDGED', item.pledgedBy)
|
||||
td(data-label='Delete Item')
|
||||
form.inline(
|
||||
method='POST',
|
||||
action=`${_CC.config.base}wishlist/${req.params.user}/remove/${item.id}`
|
||||
)
|
||||
.field.inline
|
||||
.control.inline
|
||||
button.button.is-text(
|
||||
type='submit',
|
||||
style='text-decoration: none;',
|
||||
disabled=item.addedBy !== req.user._id
|
||||
)
|
||||
span.icon
|
||||
i.fas.fa-trash
|
||||
|
||||
else
|
||||
each item, index in wishlist
|
||||
each item, index in items
|
||||
if req.user._id === item.addedBy || req.params.user !== req.user._id
|
||||
.box
|
||||
if item.price
|
||||
|
@ -187,12 +186,12 @@ block content
|
|||
.field.inline
|
||||
.control.inline
|
||||
input.inline.button(type='submit', value=lang('WISHLIST_EDIT_ITEM'))
|
||||
if index !== firstCanSee && req.user._id === req.params.user
|
||||
if index !== 0 && req.user._id === req.params.user
|
||||
form.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/move/up/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
input.inline.button(type='submit' value=lang('WISHLIST_MOVE_ITEM_UP'))
|
||||
if index !== lastCanSee && req.user._id === req.params.user
|
||||
if index !== items.length - 1 && req.user._id === req.params.user
|
||||
form.inline(method='POST', action=`${_CC.config.base}wishlist/${req.params.user}/move/down/${item.id}`)
|
||||
.field.inline
|
||||
.control.inline
|
||||
|
@ -226,7 +225,7 @@ block content
|
|||
block print
|
||||
h1 #{req.params.user}'s Wishlist
|
||||
.print-gifts
|
||||
each item, index in wishlist.filter(item => item.addedBy === req.params.user)
|
||||
each item, index in items.filter(item => item.addedBy === req.params.user)
|
||||
.print-gift(style='page-break-inside: avoid;')
|
||||
if index > 0
|
||||
hr(style='margin-top: .5em; margin-bottom: .5em; background-color: black;')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue