WIP: cellule fiche(s): avoir un display mode "Liste" (#79989) #146
Draft
lguerin
wants to merge 8 commits from
wip/79989-wcs-list-mode
into main
pull from: wip/79989-wcs-list-mode
merge into: entrouvert:main
entrouvert:wip/60773-applification
entrouvert:wip/81533-submission-search-engine
entrouvert:wip/65947-Cellule-Graph-Pouvoir-exporter-l
entrouvert:main
entrouvert:wip/71885-select2-dataviz
entrouvert:wip/79857-has-role-uuid
entrouvert:wip/79428-family-activity-marker
entrouvert:wip/76874-lingo-invoice-pdf-filename
entrouvert:wip/76853-lingo-lors-du-get-invoice-pour-p
entrouvert:wip/76572-lingo-sur-le-paiement-d-une-fact
entrouvert:wip/76434-utiliser-hobo-multitenant-spoole
entrouvert:wip/74926-migration-ultra-lente-en-recette
entrouvert:wip/74357-lingo-hide-tipi-choice-in-backend-creation
entrouvert:wip/74048-Ajouter-la-classe-cell-title-aux
entrouvert:wip/72667-duration-filter
entrouvert:wip/70837-Poser-des-classes-BEM-sur-les-li
entrouvert:wip/72207-requests-do-not-duplicate-params
entrouvert:wip/70884-snapshot-slug-collision
entrouvert:hotfix/v4.72
entrouvert:wip/70605-enable-cell-condition
entrouvert:wip/70844-cell-visibility-tests
entrouvert:wip/70812-title-migration-h1
entrouvert:wip/70803-text-cell-with-only-title
entrouvert:wip/70804-title-as-additional-label
entrouvert:wip/70802-text-cell-with-only-title
entrouvert:wip/70646-fix-migration
entrouvert:wip/70630-over-long-title-migration
entrouvert:wip/68675-subslug-or-card
entrouvert:hotfix/v4.68
entrouvert:wip/70349-wcs-dont-mix-category-and-form-description
entrouvert:wip/67580-uwsgi-conf
entrouvert:wip/69836-fix-weekly-calendar-current-week
entrouvert:wip/django-upgrade
entrouvert:wip/65846-uniformize-form-links-rendering
entrouvert:wip/69271-wcs-richtext-field
entrouvert:wip/69400-reduce-num-queries
entrouvert:wip/69454-famille-multi-week
entrouvert:wip/69194-fix-import
entrouvert:wip/69371-tables-same-classes
entrouvert:wip/69351-emails-filenames-table-classes
entrouvert:wip/69301-cell-session-required
entrouvert:wip/62137-wcs-hide-link-if-no-url
entrouvert:wip/69019-wcs-card-first-option
entrouvert:wip/68807-wcs-card-custom-fix-new-cell-init
entrouvert:wip/64575-ajax-edit-cell-attribute
entrouvert:wip/68865-fix-condition-attributeerror
entrouvert:wip/68643-wcs-card-related-labels
entrouvert:wip/66897-wcs-card-user-fields
entrouvert:wip/66898-wcs-card-user-fields
entrouvert:wip/68721-wcs-custom-card-table
entrouvert:wip/68606-search-cell-card-engine-target-page
entrouvert:wip/68534-wcs-card-link-to-page-with-subslug
entrouvert:wip/68554-remove-export-old-format-compat
entrouvert:wip/68673-delete-filters-defined-in-publik-django-templatetags
entrouvert:wip/68679-inherit-placeholder-options
entrouvert:wip/68531-wcs-card-cell-options
entrouvert:wip/68598-wcs-missing-varname
entrouvert:wip/68539-do-not-index-cards-with-user-restriction
entrouvert:wip/67719-wcs-fix-card-relations
entrouvert:wip/68517-cards-adjust-select
entrouvert:wip/68140-merge-card-cells
entrouvert:wip/68063-wcs-card-table-display
entrouvert:wip/68037-wcs-car-cell-all-cards-option
entrouvert:wip/68015-wcs-card-cell-get-many-cards
entrouvert:wip/68473-pylint
entrouvert:wip/68372-dataviz-traduction-trompeuse-var
entrouvert:wip/65882-dataviz-les-sous-filtres-ne-sont
entrouvert:wip/68052-no-tryauth-for-bots
entrouvert:wip/signoz
entrouvert:wip/68212-transactionrecentcell
entrouvert:wip/68160-rephrase-redirection-template
entrouvert:wip/68113-pie-legend-width
entrouvert:wip/68049-dataviz-ne-pas-inverser-automati
entrouvert:wip/67937-table-inverted
entrouvert:wip/67902-revert
entrouvert:wip/67724-django-32
entrouvert:wip/tox-django-32
entrouvert:wip/60018-raw-sql
entrouvert:wip/60018-Page-objects-get-by-natural-key-
entrouvert:wip/67470-str-pylint
entrouvert:wip/67254-clean-duplicated-code
entrouvert:wip/63793-fix-cell-duplicate-unknown-cell
entrouvert:wip/66603-fix-cell-form
entrouvert:wip/67260-wcs-related-and-custom-view
entrouvert:wip/67214-wcs-fix-500-with-badly-ordered-card-cells
entrouvert:wip/67137-skeleton-bytes
entrouvert:wip/66299-Cellule-Graphe-erreur-
entrouvert:wip/66953-fix-condition-context
entrouvert:wip/61589-wcs-care-forms-title
entrouvert:wip/64288-drf-version
entrouvert:wip/66632-fix-condition
entrouvert:wip/66737-lingo-retirer-la-reference-a-SIP
entrouvert:wip/65145-placeholder-flex-grid
entrouvert:wip/65834-fix-icon-height
entrouvert:wip/66263-cell-condition
entrouvert:wip/64936-visual-mark-on-tabs-with-settings
entrouvert:wip/66487-less-transactions
entrouvert:wip/66310-categories-cell-general-tab
entrouvert:wip/65878-link-keep-label-in-general-tab
entrouvert:wip/65815-verbatim-url-in-models
entrouvert:wip/65540-remove-get-templatefilter
entrouvert:wip/65746-fix-template-rendering
entrouvert:wip/65801-remove-json_script-temptatetag
entrouvert:wip/65794-dashboard-tile-stats
entrouvert:wip/64451-card-skip-empty-value
entrouvert:wip/65615-dataviz-exception-MissingRequest
entrouvert:wip/65722-remove-statics-hash
entrouvert:wip/65617-reorder-page-post
entrouvert:wip/65348-dataviz-request-GET-ne-fonctionn
entrouvert:wip/64497-notif-to-anonymous
entrouvert:wip/65024-requests-legacy-urls
entrouvert:wip/64803-publik-django-templatetags
entrouvert:wip/64970-asset-api-return-url
entrouvert:wip/62415-placeholder-div
entrouvert:wip/64496-always-consider-menu-visibility
entrouvert:wip/62072-placeholder-grid
entrouvert:wip/64460-is-notifiable-do-not-log
entrouvert:wip/64416-requests-legacy-urls
entrouvert:wip/64298-django32-skeleton
entrouvert:wip/64297-pwa-maskable-icon
entrouvert:wip/63683-remove-six-usage
entrouvert:wip/62172-style-page-messages
entrouvert:wip/62136-bypass-url-validity
entrouvert:wip/63220-fix-wcs-cells-anonymous-user
entrouvert:wip/63935-add-card-info-cell
entrouvert:wip/63390-forms-in-your-care-cache
entrouvert:wip/63807-forms-in-your-care-mark-as-valid
entrouvert:wip/63650-fix-MultiValueDictKeyError
entrouvert:wip/63325-weekly-agenda-cell-slot-color
entrouvert:wip/63476-make-public-url-no-netloc
entrouvert:wip/62965-cell-edit-sidetabs
entrouvert:wip/63221-assets-check-filename
entrouvert:wip/62678-cache-trop-long-sur-la-cellule-D
entrouvert:wip/63233-fix-missing-dashboard-cell
entrouvert:wip/63223-tests-no-migrations
entrouvert:wip/63176-new-pylint
entrouvert:wip/61816-native-404-without-exception
entrouvert:wip/native-404-without-exception
entrouvert:wip/62244-family-calendar-cell-book-link
entrouvert:wip/62460-wcs-requestcontext-for-custom-field-templates
entrouvert:wip/61391-wcs-card-custom-field-escaping
entrouvert:wip/62439-fix-has-role
entrouvert:wip/62417-filters-enable
entrouvert:wip/60916-cell-duplicate-target
entrouvert:wip/59505-manager-django-permissions
entrouvert:wip/60643-many-notifications
entrouvert:wip/62137-wcs-no-A-if-URL-and-label-empty
entrouvert:wip/61040-wcs-card-custom-title-in-additional-label
entrouvert:wip/58878-custom-view-on-card-cell
entrouvert:wip/58851-care-cells-front
entrouvert:wip/56791-remove-collapse-feature
entrouvert:wip/59798-page-params
entrouvert:wip/61022-data-conditionnal-on-group
entrouvert:wip/61240-lingo-ignorer-les-retours-vides
entrouvert:wip/61197-css-link-list
entrouvert:wip/60956-wcs-card-ids-widget
entrouvert:wip/60957-wcs-card-id-from-url
entrouvert:wip/58782-wcs-filter-by-number
entrouvert:wip/61082-strip-pwa-nav
entrouvert:wip/61033-cards-all-div
entrouvert:wip/60891-card-cell-reverse-relation
entrouvert:wip/60885-card-cell-bad-repeat-index
entrouvert:wip/58447-agenda-cell-subscriptions
entrouvert:wip/60707-wcs-card-fix-js
entrouvert:wip/60445-check-url-with-a-real-user-agent
entrouvert:wip/60564-order-by-filter
entrouvert:wip/58833-card-related
entrouvert:wip/60370-wcs-card-cell-link
entrouvert:wip/58802-wcs-card-cell-empty-value
entrouvert:wip/60369-wcs-card-cell-subtitle
entrouvert:wip/58800-cell-custom-schema-split-content-and-display
entrouvert:wip/58326-wcs-card-empty-custom-schema
entrouvert:wip/60446-cov-context
entrouvert:wip/60397-wcs-card-cell-carddef_reference
entrouvert:wip/60323-enhance-tracking-code-presentation-message
entrouvert:wip/60282-search-max-url-length
entrouvert:wip/59803-card-repeat-index-in-context-rebased
entrouvert:wip/58848-add-cancelurl-to-category-forms-links
entrouvert:wip/60114-add-cancelurl-to-form-links
entrouvert:wip/59931-urlize-card-content
entrouvert:wip/59598-html-in-title
entrouvert:wip/59595-fix-undefined-template
entrouvert:wip/58735-card-templates-context
entrouvert:wip/59803-card-repeat-index-in-context
entrouvert:wip/59801-wcs-filter-by-internal-id
entrouvert:wip/58862-card-ids
entrouvert:wip/59643-link-cell-url-max-length
entrouvert:wip/58462-reduce-wcs-cache-duration
entrouvert:wip/58900-gallery-fix-image-delete
entrouvert:wip/59213-data-include-geoloc-button-block
entrouvert:wip/59186-check-access-against-is-superuser
entrouvert:wip/58962-family-agenda-cache
entrouvert:wip/59025-index-list-of-external-links
entrouvert:wip/58903-make-public-url-with-empty-or-random-url
entrouvert:wip/57134-card-cell-template-field
entrouvert:wip/57707-fix-import-with-internal-redirection
entrouvert:wip/57927-agenda-cell-reference-template
entrouvert:wip/58186-duplicate-redirect
entrouvert:wip/58413-card-cell-empty-card-id
entrouvert:wip/57966-user-requests-custom-title
entrouvert:wip/57954-email-field-in-card
entrouvert:wip/51994-card-file-content
entrouvert:wip/58412-card-cell-id-max-length
entrouvert:wip/58415-add-wcs-templatetags-by-default
entrouvert:wip/56015-clean-family
entrouvert:wip/57952-lingo-clarify-message-on-paid-invoice
entrouvert:wip/56650-lingo-no-callback-url-on-backend
entrouvert:wip/56651-lingo-filter-transaction
entrouvert:wip/57626-template-error
entrouvert:wip/57570-searchcell-button-markup
entrouvert:wip/56979-json-cell-url-error
entrouvert:wip/57323-search-cell-title
entrouvert:wip/57238-family-weekly-agenda-past-events
entrouvert:wip/56649-lingo-return-url
entrouvert:wip/56647-lingo-payment-backend-not-found-error
entrouvert:wip/57322-card-list-pagination
entrouvert:wip/56646-lingo-callback-url-no-link
entrouvert:wip/57279-coloured-surfaces
entrouvert:wip/57061-rename-option-include-requests-not-author
entrouvert:wip/57042-pylint-f-string-disable
entrouvert:wip/56974-pwa-double-redirection
entrouvert:wip/56930-export-import-no-maps-no-pwa
entrouvert:wip/56584-card-no-title
entrouvert:wip/56477-wcs-include-forms-user-can-access
entrouvert:wip/56188-edit-roles
entrouvert:wip/56422-wcs-card-text-fields
entrouvert:wip/56730-family-agenda-user-external-template
entrouvert:wip/56720-family-static
entrouvert:wip/56596-card-info-extra-div
entrouvert:wip/56027-agenda-cell
entrouvert:wip/56308-online-url-consider-redirect
entrouvert:wip/56609-cell-card-bad-markup
entrouvert:wip/56288-pylint
entrouvert:wip/56190-fix-empty-message
entrouvert:wip/56200-wcs-site-invalid
entrouvert:wip/56012-wcs-include_forms_user_can_access
entrouvert:wip/56029-fix-css-cards-cell
entrouvert:wip/54195-tracking
entrouvert:wip/56028-cards-empty-message
entrouvert:wip/56014-revert-forms-user-can-access
entrouvert:wip/13688-lingo-invoice-download-popup
entrouvert:wip/55868-pyupgrade
entrouvert:wip/55468-geojson-wrong-url
entrouvert:wip/55843-card-title
entrouvert:wip/55288-page-ordering
entrouvert:wip/55647-config-json-cell-template
entrouvert:wip/52073-card-cell
entrouvert:wip/55041-forms-user-has-access
entrouvert:wip/55792-cell-template-choice
entrouvert:wip/55335-card-title
entrouvert:wip/55776-description-in-form-and-link-contexts
entrouvert:wip/55686-lingo-no-limit-date
entrouvert:wip/55550-filters
entrouvert:wip/55363-redirect-url-validation
entrouvert:wip/55114-snapshot-str
entrouvert:wip/55103-subslug-help
entrouvert:wip/54259-custom-schema
entrouvert:wip/54549-cards-title
entrouvert:wip/lingo-add-pk-table-wrapper
entrouvert:hotfix/v3.54
entrouvert:wip/54882-do-not-preload-tiles
entrouvert:wip/47537-tipi-update-default-url
entrouvert:wip/54763-index-page-of-cells-with-external-links
entrouvert:wip/54592-dashboard-do-not-load
entrouvert:wip/54570-export-no-ascii-escape
entrouvert:wip/54562-Ajout-de-chrono-comme-exposant-d
entrouvert:wip/52912-jsonfield
entrouvert:wip/54236-repeat-cells
entrouvert:wip/53947-card-cell-without_user
entrouvert:wip/53376-wcs-category-slugs
entrouvert:wip/53213-careforms-category
entrouvert:wip/53778-move-compute-max-height
entrouvert:wip/53780-cell-open-close-events
entrouvert:wip/53596-dataviz-empty-values
entrouvert:wip/53541-remove-newsletter-app
entrouvert:wip/53521-geojson-invalid
entrouvert:wip/53221-subslug-display
entrouvert:wip/52498-card-schema
entrouvert:wip/53501-notif-cell-align-btns
entrouvert:wip/53234-user-list-of-forms-cells-markup
entrouvert:wip/52439-user-search-template
entrouvert:wip/52915-jsonb
entrouvert:wip/52797-isort
entrouvert:wip/52418-search-index-invalid-cell
entrouvert:wip/52055-wcs-backoffice-categories
entrouvert:wip/52201-degager-un-job-qui-a-echoue-du-s
entrouvert:wip/51477-in-menu
entrouvert:wip/51476-redirection
entrouvert:wip/51075-cell-duplicate
entrouvert:wip/51475-import-snapshot
entrouvert:wip/51472-page-load-signals
entrouvert:wip/51184-getlist-filter
entrouvert:wip/51282-auto-tile-invalid-key
entrouvert:wip/50971-card-file-display
entrouvert:wip/51251-description
entrouvert:wip/51014-search-pages-description
entrouvert:wip/50398-assets-key-maxlength
entrouvert:wip/50663-cards-cell-invalid
entrouvert:wip/50713-geojson-layer-cache-duration
entrouvert:wip/50874-has-role-fix
entrouvert:wip/49388-card-cell-user
entrouvert:wip/50001-card-cell-info
entrouvert:wip/feedparser
entrouvert:wip/50000-subslug
entrouvert:wip/49863-lingo-remote-exception
entrouvert:wip/49854-cards-full
entrouvert:wip/49876-ajax-404
entrouvert:wip/49406-cards-in-templates
entrouvert:wip/48562-newsletter-errors
entrouvert:wip/48978-map-layer-slots
entrouvert:wip/45183-eopayment-as-app
entrouvert:wip/48876-get-default-form-fields
entrouvert:wip/48393-lingo-update_transactions-err
entrouvert:wip/48394-lingo-err-1
entrouvert:wip/48338-lingo-err-1
entrouvert:wip/48190-cards-cell-current-user
entrouvert:wip/48261-search-cards-user
entrouvert:wip/48262-search-cards-custom-view
entrouvert:wip/48507-fix-split
entrouvert:wip/48644-export-import-no-lingo
entrouvert:wip/48637-template-name-parameter-for-json-cell
entrouvert:wip/48409-cards
entrouvert:wip/48452-card-info-cell
entrouvert:wip/48413-assets-serve-ckeditor-media
entrouvert:wip/46865-cards-custom-view
entrouvert:hotfix/v3.12
entrouvert:wip/47101-card-slug
entrouvert:hotfix/v2.78
entrouvert:hotfix/v2.73
entrouvert:wip/djangorestframework-39
entrouvert:wip/django22
entrouvert:40883-more-items
entrouvert:40244-exceptions-request
entrouvert:wip/theming
entrouvert:wip/39083-pytest-request-finalizer
entrouvert:wip/tests-request-finalizer
entrouvert:hotfix/v2.50
entrouvert:wip/37464-back-to-black
entrouvert:hotfix/v2.39
entrouvert:wip/29187-backoffice-submission-cell-order
entrouvert:hotfix/v2.26
entrouvert:wip/34934-Gestion-de-l-authentification-mu
entrouvert:hotfix/v2.22
entrouvert:hotfix/test-1
entrouvert:wip/pylint-warnings-next
entrouvert:wip/gallery
entrouvert:wip/23717-external-user-demands-retrieval
entrouvert:wip/guichet-toto
entrouvert:wip/guichet
entrouvert:wip/pwapush
entrouvert:wip/python3
entrouvert:wip/jenkinslib
entrouvert:wip/jenkinsfile-fred
entrouvert:wip/notifications-13122
entrouvert:wip/quixote3
entrouvert:wip/performances
entrouvert:wip/concrete-cellbase-17645
entrouvert:wip/assets-management
entrouvert:wip/lingo-merge
entrouvert:wip/teamnet_axel
entrouvert:wip/chat
entrouvert:wip/search
entrouvert:debian
entrouvert:wip/debian
entrouvert:wip/start
No reviewers
Labels
Clear labels
No items
No Label
Milestone
Clear milestone
No items
No Milestone
Assignees
Clear assignees
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.
No due date set.
Dependencies
No dependencies set.
Reference: entrouvert/combo#146
Reference in New Issue
There is no content yet.
Delete Branch "wip/79989-wcs-list-mode"
Deleting a branch is permanent. Although the deleted branch may exist for a short time before cleaning up, in most cases it CANNOT be undone. Continue?
cellule fiche(s): avoir un display mode "Liste" (#79989)to WIP: cellule fiche(s): avoir un display mode "Liste" (#79989)5a9635849a
to9e5dfae560
WIP: cellule fiche(s): avoir un display mode "Liste" (#79989)to WIP: cellule fiche(s): avoir un display mode "Liste" (#79989)9e5dfae560
tod085b07004
d085b07004
to42119e7eeb
Ajouter 2 commits.
d8beacc349
Pour éviter que
new Card_cell_custom()
soit lancer 3× pour chaque cellule fiche.f0d524d559
Permet de stocker un schéma différent pour chaque mode d'affichage. Cela permet à l'usager de modifier les champs du mode tableau sans bouger celui du mode card ou liste.
Par contre, seul le shéma du mode d'affichage choisi sera sauvegardé, ce qui fait qu'en cas de sauvegarde de la cellule, seul le shéma du mode actif est sauvegardé. À voir si cela est gênant ou si sauvegarder le dict contenant les 3 schéma ne serait pas plus interessant d'un point du vue UI.
Ce commit ouvre la voie à la possibilité de simplifier l'interface en mode liste
et enfin
9e4d77e371
Qui simplifie l'interface du mode liste en ne proposant que la possibilité de modifier un élément de type @link@.
Test bienvenu.
(d'autres modifs seraient appréciables, je note ça pour partager mes envies de refacto, comme renommer certains noms de variables :
grid
n'a plus aucun sens, séparer plus proprement côté JS les modes card, table et list, pourquoi pas dans des objets séparés pour éviter cet enfer d’if/else et vraiment simplifier grid_cell__set_schema et grid_cell__edit_set_fields : c'est illisible.