lib.itmens/common/static/sass/_AsideSection.sass
Henri Dickson 14b003a44a add all NeoDB features to NiceDB (#115)
* fix scraping failure with wepb image (merge upstream/fix-webp-scrape)

* add filetype to requirements

* add proxycrawl.com as fallback for douban scraper

* load 3p js/css from cdn

* add fix-cover task

* fix book/album cover tasks

* scrapestack

* bandcamp scrape and preview ;
manage.py scrape <url> ;
make ^C work when DEBUG

* use scrapestack when fix cover

* add user agent to improve compatibility

* search BandCamp for music albums

* add missing MovieGenre

* fix search 500 when song has no parent album

* adjust timeout

* individual scrapers

* fix tmdb parser

* export marks via rq; pref to send public toot; move import to data page

* fix spotify import

* fix edge cases

* export: fix dupe tags

* use rq to manage doufen import

* add django command to manage rq jobs

* fix export edge case

* tune rq admin

* fix detail page 502 step 1: async pull mastodon follow/block/mute list

* fix detail page 502 step 2: calculate relationship by local cached data

* manual sync mastodon follow info

* domain_blocks parsing fix

* marks by who i follows

* adjust label

* use username in urls

* add page to list a user\'s review

* review widget on user home page

* fix preview 500

* fix typo

* minor fix

* fix google books parsing

* allow mark/review visible to oneself

* fix auto sync masto for new user

* fix search 500

* add command to restart a sync task

* reset visibility

* delete user data

* fix tag search result pagination

* not upgrade to django 4 yet

* basic doc

* wip: collection

* wip

* wip

* collection use htmx

* show in-collection section for entities

* fix typo

* add su for easier debug

* fix some 500s

* fix login using alternative domain

* hide data from disabled user

* add item to list from detail page

* my tags

* collection: inline comment edit

* show number of ratings

* fix collection delete

* more detail in collection view

* use item template in search result

* fix 500

* write index to meilisearch

* fix search

* reindex in batch

* fix 500

* show search result from meilisearch

* more search commands

* index less fields

* index new items only

* search highlights

* fix 500

* auto set search category

* classic search if no meili server

* fix index stats error

* support typesense backend

* workaround typesense bug

* make external search async

* fix 500, typo

* fix cover scripts

* fix minor issue in douban parser

* supports m.douban.com and customized bandcamp domain

* move account

* reword with gender-friendly and instance-neutral language

* Friendica does not have vapid_key in api response

* enable anonymous search

* tweak book result template

* API v0

API v0

* fix meilisearch reindex

* fix search by url error

* login via twitter.com

* login via pixelfed

* minor fix

* no refresh on inactive users

* support refresh access token

* get rid of /users/number-id/

* refresh twitter handler automatically

* paste image when review

* support PixelFed (very long token)

* fix django-markdownx version

* ignore single quote for meilisearch for now

* update logo

* show book review/mark from same isbn

* show movie review/mark from same imdb

* fix login with older mastodon servers

* import Goodreads book list and profile

* add timestamp to Goodreads import

* support new google books api

* import goodreads list

* minor goodreads fix

* click corner action icon to add to wishlist

* clean up duplicated code

* fix anonymous search

* fix 500

* minor fix search 500

* show rating only if votes > 5

* Entity.refresh_rating()

* preference to append text when sharing; clean up duplicated code

* fix missing data for user tagged view

* fix page link for tag view

* fix 500 when language field longer than 10

* fix 500 when sharing mark for song

* fix error when reimport goodread profile

* fix minor typo

* fix a rare 500

* error log dump less

* fix tags in marks export

* fix missing param in pagination

* import douban review

* clarify text

* fix missing sheet in review import

* review: show in progress

* scrape douban: ignore unknown genre

* minor fix

* improve review import by guess entity urls

* clear guide text for review import

* improve review import form text

* workaround some 500

* fix mark import error

* fix img in review import

* load external results earlier

* ignore search server errors

* simplify user register flow to avoid inconsistent state

* Add a learn more link on login page

* Update login.html

* show mark created timestamp as mark time

* no 500 for api error

* redirect for expired tokens

* ensure preference object created.

* mark collections

* tag list

* fix tag display

* fix sorting etc

* fix 500

* fix potential export 500; save shared links

* fix share to twittwe

* fix review url

* fix 500

* fix 500

* add timeline, etc

* missing status change in timeline

* missing id in timeline

* timeline view by default

* workaround bug in markdownx...

* fix typo

* option to create new collection when add from detail page

* add missing announcement and tags in timeline home

* add missing announcement

* add missing announcement

* opensearch

* show fediverse shared link

* public review no longer requires login

* fix markdownx bug

* fix 500

* use cloudflare cdn

* validate jquery load and domain input

* fix 500

* tips for goodreads import

* collaborative collection

* show timeline and profile link on nav bar

* minor tweak

* share collection

* fix Goodreads search

* show wish mark in timeline

* resync failed urls with local proxy

* resync failed urls with local proxy: check proxy first

* scraper minor fix

* resync failed urls

* fix fields limit

* fix douban parsing error

* resync

* scraper minor fix

* scraper minor fix

* scraper minor fix

* local proxy

* local proxy

* sync default config from neodb

* configurable site name

* fix 500

* fix 500 for anonymous user

* add sentry

* add git version in log

* add git version in log

* no longer rely on cdnjs.cloudflare.com

* move jq/cash to _common_libs template partial

* fix rare js error

* fix 500

* avoid double submission error

* import tag in lower case

* catch some js network errors

* catch some js network errors

* support more goodread urls

* fix unaired tv in tmdb

* support more google book urls

* fix related series

* more goodreads urls

* robust googlebooks search

* robust search

* Update settings.py

* Update scraper.py

* Update requirements.txt

* make nicedb work

* doc update

* simplify permission check

* update doc

* update doc for bug report link

* skip spotify tracks

* fix 500

* improve search api

* blind fix import compatibility

* show years for movie in timeline

* show years for movie in timeline; thinner font

* export reviews

* revert user home to use jquery https://github.com/fabiospampinato/cash/issues/246

* IGDB

* use IGDB for Steam

* use TMDB for IMDb

* steam: igdb then fallback to steam

* keep change history

* keep change history: add django settings

* Steam: keep localized title/brief while merging IGDB

* basic Docker support

* rescrape

* Create codeql-analysis.yml

* Create SECURITY.md

* Create pysa.yml

Co-authored-by: doubaniux <goodsir@vivaldi.net>
Co-authored-by: Your Name <you@example.com>
Co-authored-by: Their Name <they@example.com>
Co-authored-by: Mt. Front <mfcndw@gmail.com>
2022-11-09 19:56:50 +01:00

400 lines
No EOL
8.7 KiB
Sass

$aside-section-padding: 28px 25px 12px 25px
$aside-section-padding-mobile: 24px 25px 10px 25px
.aside-section-wrapper
display: flex
flex: 1
flex-direction: column
// align-items: center
width: 100%
padding: $aside-section-padding
background-color: $color-bright
margin-bottom: 30px
overflow: auto
&--transparent
background-color: unset
&--collapse
padding: unset
.add-entity-entries
& &__entry
margin-bottom: 10px
& &__label
font-size: 1.2em
margin-bottom: 8px
& &__button
line-height: unset;
height: unset;
padding: 4px 15px;
margin: 5px;
.action-panel
margin-bottom: 20px
& &__label
// font-size: 1.2em
font-weight: bold
margin-bottom: 12px
& &__button-group
display: flex
justify-content: space-between
&--center
justify-content: center
& &__button
line-height: unset
height: unset
padding: 4px 15px
margin: 0 5px
// width: 100%
.mark-panel
margin-bottom: 20px
& &__status
font-weight: bold
& &__rating-star
position: relative
top: 2px
& &__actions
float: right
& form
display: inline
& &__time
color: $color-light
margin-bottom: 10px
& &__content
& &__clear
@include clear
.review-panel
& &__label
font-weight: bold
& &__actions
float: right
& &__time
color: $color-light
margin-bottom: 10px
& &__review-title
display: block
margin-bottom: 15px
font-weight: bold
& &__clear
@include clear
.user-profile
& &__header
display: flex
align-items: flex-start
margin-bottom: 15px
& &__avatar
width: 72px
& &__username
font-size: large
margin-left: 10px
margin-bottom: 0
& &__bio
& &__report-link
color: $color-light
.user-relation
& &__label
display: inline-block
font-size: large
margin-bottom: 10px
& &__more-link
margin-left: 5px
& &__related-user-list
display: flex
justify-content: flex-start
&:last-of-type
margin-bottom: 0
& &__related-user
flex-basis: 25%
padding: 0px 3px
text-align: center
display: inline-block
overflow: hidden
& > a
&:hover
color: $color-secondary
& &__related-user-avatar
background-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")
width: 48px
height: 48px
@media (min-width: $small-devices) and (max-width: $large-devices)
height: unset
width: 60%
max-width: 96px
& &__related-user-name
color: inherit
overflow: hidden
text-overflow: ellipsis
// display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
$panel-padding : 0
.report-panel
& &__label
display: inline-block
margin-bottom: 10px
& &__body
padding-left: $panel-padding
& &__report-list
& &__report
margin: 2px 0
& &__user-link
margin: 0 2px
& &__all-link
margin-left: 5px
.import-panel
overflow-x: hidden
& &__label
display: inline-block
margin-bottom: 10px
& &__body
padding-left: $panel-padding
border: 2px dashed #00a1cc
padding: 6px 9px
form
margin: 0
@media (max-width: $large-devices)
border: unset
padding-left: 0
& &__help
background-color: $color-quinary
border-radius: 100000px
display: inline-block
width: 16px
height: 16px
text-align: center
font-size: 12px
cursor: help
& &__checkbox
display: inline-block
margin-right: 10px
label
display: inline
input[type="checkbox"]
margin: 0
position: relative
top: 2px
&--last
margin-right: 0
& &__file-input
margin-top: 10px
& &__button
line-height: unset
height: unset
padding: 4px 15px
& &__progress
padding-top: 10px
// padding-top: 4px
&:not(:first-child)
border-top: $color-tertiary 1px dashed
label
display: inline
progress
background-color: $color-quaternary
border-radius: 0
height: 10px
width: 54%
progress::-webkit-progress-bar
background-color: $color-quaternary
progress::-webkit-progress-value
background-color: $color-primary
progress::-moz-progress-bar
background-color: $color-quaternary
& &__last-task
&:not(:first-child)
padding-top: 4px
border-top: $color-tertiary 1px dashed
.index:not(:last-of-type)
margin-right: 8px
& &__fail-urls
margin-top: 10px
li
word-break: break-all
ul
// padding: 4px
max-height: 100px
overflow-y: auto
.relation-dropdown
& &__button
display: none
.entity-card
display: flex
margin-bottom: 10px
flex-direction: column
&--horizontal
flex-direction: row
& &__img
height: 150px
& &__rating-star
position: relative
top: 4px
left: -3px
& &__rating-score
position: relative
top: 1px
margin-left: 2px
& &__title
margin-bottom: 10px
margin-top: 5px
& &__info-wrapper
&--horizontal
margin-left: 20px
& &__img-wrapper
flex-basis: 100px
// Small devices (landscape phones, 576px and up)
@media (max-width: $small-devices)
.add-entity-entries
display: block !important
& &__button
width: 100%
margin: 5px 0 5px 0;
.aside-section-wrapper
&:first-child
margin-right: 0 !important
margin-bottom: 0 !important
&--singular:first-child
margin-bottom: 20px !important
// &--no-padding
// padding: $aside-section-padding-mobile !important
// margin-top: 0 !important
.action-panel
flex-direction: column !important
.entity-card
&--horizontal
flex-direction: column !important
// flex-direction: column !important
& &__info-wrapper
margin-left: 10px !important
&--horizontal
margin-left: 0 !important
// Medium devices (tablets, 768px and up)
@media (max-width: $medium-devices)
pass
// Large devices (desktops, 992px and up)
@media (max-width: $large-devices)
.add-entity-entries
display: flex
justify-content: space-around
.aside-section-wrapper
padding: $aside-section-padding-mobile
margin-top: 20px
// &:not(:first-child)
&:not(:last-child)
margin-right: 20px
&--collapse
padding: $aside-section-padding-mobile !important
margin-top: 0
margin-bottom: 0
&:first-child
margin-right: 0
&--no-margin
margin: 0
.action-panel
flex-direction: row
& &__button-group
justify-content: space-evenly
.relation-dropdown
margin-bottom: 20px
& &__button
padding-bottom: 10px
background-color: $color-bright
width: 100%
display: flex
justify-content: center
align-items: center
cursor: pointer
transition: transform 0.3s
&:focus
background-color: red
& &__button > .icon-arrow
transition: transform 0.3s
& &__button:hover > .icon-arrow > svg
fill: $color-primary
& &__button > .icon-arrow--expand
transform: rotate(-180deg)
& &__button + &__body--expand
max-height: 2000px
transition: max-height 1s ease-in
& &__body
background-color: $color-bright
max-height: 0
transition: max-height 1s ease-out
overflow: hidden
.entity-card
flex-direction: row
& &__info-wrapper
margin-left: 30px
// Extra large devices (large desktops, 1200px and up)
@media (max-width: $x-large-devices)
pass