Action WCS configurables dans la cellule fiche (#75908) #252
Open
csechet
wants to merge 8 commits from
wip/75908-wcs-trigger
into main
pull from: wip/75908-wcs-trigger
merge into: entrouvert:main
entrouvert:main
entrouvert:wip/80759-Cellule-Graphe-avoir-des-pourcen
entrouvert:wip/90119-configurer-eslint
entrouvert:wip/89980-remplacer-pylint-par-ruff
entrouvert:wip/8122-error403-view
entrouvert:wip/map-search
entrouvert:wip/83250-Avoir-un-id-stable-sur-les-cellu
entrouvert:wip/87119-card-custom-id
entrouvert:wip/8122-private-page-custom-message
entrouvert:wip/85720-incoherence-des-onglets-quand-un
entrouvert:wip/83352-template-test-page
entrouvert:wip/83722-manage-error-on-search
entrouvert:wip/47511-lingo-fix-error-display-on-payment-status-page
entrouvert:wip/79857-has-role-uuid
entrouvert:wip/79428-family-activity-marker
entrouvert:wip/76874-lingo-invoice-pdf-filename
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#252
Reference in New Issue
No description provided.
Delete Branch "wip/75908-wcs-trigger"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
98b4a2c625
to11a83f39bf
11a83f39bf
to03a6bfc328
@ -0,0 +1,60 @@
class WcsTriggerButton extends HTMLElement {
#triggerUrl
Désolé question javascript, ça correspond à quoi ce #triggerUrl ?
C'est des variables privées en JS (vraiment privée, ça lève une erreur de syntaxe si on y accède en dehors de la classe, ou si elle n'est pas déclarée dans la classe).
Pas vraiment d'avis définitif sur si c'est bien ou pas, c'est probablement une habitude que je tiens du C++ : je ne vois pas d'inconvénient à en faire des membres "standard".
@ -0,0 +6,4 @@
const label = this.getAttribute('label')
this.#triggerUrl = this.getAttribute('trigger-url')
this.innerHTML = `<button>${label}</button>`
if(this.#triggerUrl === null) {
Et pareil question js, .# c'est quoi ?
(et détail je trouve plus lisible quand il y a un espace après le if).
C.F commentaire précédent.
Je vais peut-être en profiter pour faire tourner eslint sur les nouveaux fichiers ajoutés.
@ -0,0 +47,4 @@
const button = this.querySelector('button')
if(!response.ok || json.err === 1) {
alert('An error occured, please retry later.')
Passer ça dans gettext ?
@ -189,0 +191,4 @@
<div data-dynamic-display-child-of="entry_type" data-dynamic-display-value="@action@">
<p>
<label>
{% trans "Label" %}
: manquant ?
@ -189,0 +197,4 @@
</p>
<p>
<label>
{% trans "Action :" %}
Espace à retirer avant le :
@ -189,0 +207,4 @@
</p>
<p>
<label>
{% trans "Ask confirmation " %}
Espace à remplacer par un :
@ -189,0 +213,4 @@
</p>
<p data-dynamic-display-child-of="action_ask_confirmation" data-dynamic-display-value-in=" True ">
<label>
{% trans "Confirmation text (Template)" %}
Je retirerais la majuscule à Template, et j'ajouterais un :
@ -189,0 +219,4 @@
</p>
<p>
<label>
{% trans "Unavailable action mode :" %}
Espace à retirer devant les :
@ -154,0 +163,4 @@
</p>
<p>
<label>
{% trans "Label" %}
cf commentaires plus haut.
J'imagine que c'était galère de factoriser pour ne pas dupliquer ça, qu'il y a des petites différences ?
J'ai jeté un œil pour factoriser, les templates et le code dans combo.manager.js, mais vu l'existant c'est une grosse galère : j'ai préféré coller à ce qui était déjà fait, même si ça me satisfait pas vraiment non plus.
@ -26,4 +26,5 @@ urlpatterns = [
redirect_crypto_url,
name='wcs-redirect-crypto-url',
),
re_path(r'^api/wcs/trigger/$', TriggerProxyView.as_view(), name='wcs-trigger-proxy'),
Ça peut se faire avec path() tout simplement, plutôt que re_path().
@ -435,2 +432,2 @@
$(sel1 + sel2).removeClass('field-hidden').show();
$(sel1 + sel3).removeClass('field-hidden').show();
if(this.getAttribute('type') == 'checkbox') {
Dans wcs le cas des cases à cocher est déjà géré, différemment, (cf wcs/qommon/static/js/qommon.js), ça serait bien de poser le même fonctionnement ici, pour faciliter à un moment la convergence dans gadjo.
03a6bfc328
to981778af4d
981778af4d
to120ea4a802