$def with (lists, work=None, edition_key=None, key=None, users_work_read_status=None, reading_log_only=False, use_work=False, page_url=None, async_load=False, remove_on_change=False) $ user_key = ctx.user and ctx.user.key $ username = ctx.user and ctx.user.key.split('/')[-1] $ work_key = work and work.key $if ctx.user or not work_key:
$if edition_key and not work_key:
$else:
$if work_key:
$if users_work_read_status == 3: $ message = _("Already Read") $elif users_work_read_status == 2: $ message = _("Currently Reading") $else: $ message = _("Want to Read") $ action_value = 'remove' if users_work_read_status else 'add' $ bookshelf_id_value = users_work_read_status or '1' $ activated_status = 'activated' if users_work_read_status else 'unactivated' $ checkmark_visibility = '' if users_work_read_status else ' hidden' $if edition_key:
$else: $if username:

$_('Add to List')

$else:

$_('Add to List')

$if not reading_log_only and render_once('lists/widget.addList'): $if work_key and edition_key and ctx.user.is_usergroup_member('/usergroup/beta-testers'): $ last_read_date = get_latest_read_date(work_key, edition_key) $ date = last_read_date['event_date'] if last_read_date else None $ event_id = last_read_date['id'] if last_read_date else None $:render_template('check_ins/check_in_prompt', work_key, users_work_read_status, edition_key=edition_key, last_read_date=date, event_id=event_id) $else:
$if work:
$if edition_key: