sonata-project/SonataPageBundle

The SiteAdmin doesn't honor admin option "list_action_button_content"

gremo opened this issue · 5 comments

gremo commented

Environment

Sonata packages

show

$ composer show --latest 'sonata-project/*'
Direct dependencies required in composer.json:
sonata-project/admin-bundle              4.22.4 4.22.4 The missing Symfony Admin Generator
sonata-project/doctrine-orm-admin-bundle 4.10.0 4.10.0 Integrate Doctrine ORM into the SonataAdminBundle
sonata-project/media-bundle              4.7.0  4.7.0  Symfony SonataMediaBundle
sonata-project/page-bundle               4.0.0  4.0.0  This bundle provides a Site and Page management through container and ...
sonata-project/user-bundle               5.5.0  5.5.0  Symfony SonataUserBundle

Transitive dependencies not required in composer.json:
sonata-project/block-bundle              4.19.0 4.19.0 Symfony SonataBlockBundle
sonata-project/cache                     2.2.0  2.2.0  Cache library
Package sonata-project/cache is abandoned, you should avoid using it. No replacement was suggested.
sonata-project/doctrine-extensions       2.2.0  2.2.0  Doctrine2 behavioral extensions
sonata-project/exporter                  3.1.1  3.1.1  Lightweight Exporter library
sonata-project/form-extensions           1.18.1 1.18.1 Symfony form extensions
sonata-project/seo-bundle                3.5.0  3.5.0  Symfony SonataSeoBundle
sonata-project/twig-extensions           2.0.0  2.0.0  Sonata twig extensions

Symfony packages

show

$ composer show --latest 'symfony/*'
Direct dependencies required in composer.json:
symfony/asset                      v6.2.7  v6.2.7  Manages URL generation and versioning of web assets such as CSS stylesheet...
symfony/browser-kit                v6.2.7  v6.2.7  Simulates the behavior of a web browser, allowing you to make requests, cl...
symfony/console                    v6.2.7  v6.2.7  Eases the creation of beautiful and testable command line interfaces
symfony/css-selector               v6.2.7  v6.2.7  Converts CSS selectors to XPath expressions
symfony/debug-bundle               v6.2.7  v6.2.7  Provides a tight integration of the Symfony VarDumper component and the Se...
symfony/doctrine-messenger         v6.2.7  v6.2.7  Symfony Doctrine Messenger Bridge
symfony/dotenv                     v6.2.7  v6.2.7  Registers environment variables from a .env file
symfony/expression-language        v6.2.7  v6.2.7  Provides an engine that can compile and evaluate expressions
symfony/flex                       v2.2.5  v2.2.5  Composer plugin for Symfony
symfony/form                       v6.2.7  v6.2.7  Allows to easily create, process and reuse HTML forms
symfony/framework-bundle           v6.2.7  v6.2.7  Provides a tight integration between Symfony components and the Symfony fu...
symfony/http-client                v6.2.7  v6.2.7  Provides powerful methods to fetch HTTP resources synchronously or asynchr...
symfony/intl                       v6.2.7  v6.2.7  Provides a PHP replacement layer for the C intl extension that includes ad...
symfony/mailer                     v6.2.7  v6.2.7  Helps sending emails
symfony/maker-bundle               v1.48.0 v1.48.0 Symfony Maker helps you create empty commands, controllers, form classes, ...
symfony/mime                       v6.2.7  v6.2.7  Allows manipulating MIME messages
symfony/monolog-bundle             v3.8.0  v3.8.0  Symfony MonologBundle
symfony/notifier                   v6.2.7  v6.2.7  Sends notifications via one or more channels (email, SMS, ...)
symfony/phpunit-bridge             v6.2.7  v6.2.7  Provides utilities for PHPUnit, especially user deprecation notices manage...
symfony/process                    v6.2.7  v6.2.7  Executes commands in sub-processes
symfony/property-access            v6.2.7  v6.2.7  Provides functions to read and write from/to an object or array using a si...
symfony/property-info              v6.2.7  v6.2.7  Extracts information about PHP class' properties using metadata of popular...
symfony/runtime                    v6.2.7  v6.2.7  Enables decoupling PHP applications from global state
symfony/security-bundle            v6.2.7  v6.2.7  Provides a tight integration of the Security component into the Symfony fu...
symfony/serializer                 v6.2.7  v6.2.7  Handles serializing and deserializing data structures, including object gr...
symfony/stopwatch                  v6.2.7  v6.2.7  Provides a way to profile code
symfony/string                     v6.2.7  v6.2.7  Provides an object-oriented API to strings and deals with bytes, UTF-8 cod...
symfony/translation                v6.2.7  v6.2.7  Provides tools to internationalize your application
symfony/twig-bundle                v6.2.7  v6.2.7  Provides a tight integration of Twig into the Symfony full-stack framework
symfony/validator                  v6.2.7  v6.2.7  Provides tools to validate values
symfony/web-link                   v6.2.7  v6.2.7  Manages links between resources
symfony/web-profiler-bundle        v6.2.7  v6.2.7  Provides a development tool that gives detailed information about the exec...
symfony/yaml                       v6.2.7  v6.2.7  Loads and dumps YAML files

Transitive dependencies not required in composer.json:
symfony/cache                      v6.2.7  v6.2.7  Provides extended PSR-6, PSR-16 (and tags) implementations
symfony/cache-contracts            v3.2.1  v3.2.1  Generic abstractions related to caching
symfony/config                     v6.2.7  v6.2.7  Helps you find, load, combine, autofill and validate configuration values ...
symfony/dependency-injection       v6.2.7  v6.2.7  Allows you to standardize and centralize the way objects are constructed i...
symfony/deprecation-contracts      v3.2.1  v3.2.1  A generic function and convention to trigger deprecation notices
symfony/doctrine-bridge            v6.2.7  v6.2.7  Provides integration for Doctrine with various Symfony components
symfony/dom-crawler                v6.2.7  v6.2.7  Eases DOM navigation for HTML and XML documents
symfony/error-handler              v6.2.7  v6.2.7  Provides tools to manage errors and ease debugging PHP code
symfony/event-dispatcher           v6.2.7  v6.2.7  Provides tools that allow your application components to communicate with ...
symfony/event-dispatcher-contracts v3.2.1  v3.2.1  Generic abstractions related to dispatching event
symfony/filesystem                 v6.2.7  v6.2.7  Provides basic utilities for the filesystem
symfony/finder                     v6.2.7  v6.2.7  Finds files and directories via an intuitive fluent interface
symfony/http-client-contracts      v3.2.1  v3.2.1  Generic abstractions related to HTTP clients
symfony/http-foundation            v6.2.7  v6.2.7  Defines an object-oriented layer for the HTTP specification
symfony/http-kernel                v6.2.7  v6.2.7  Provides a structured process for converting a Request into a Response
symfony/messenger                  v6.2.7  v6.2.7  Helps applications send and receive messages to/from other applications or...
symfony/monolog-bridge             v6.2.7  v6.2.7  Provides integration for Monolog with various Symfony components
symfony/options-resolver           v6.2.7  v6.2.7  Provides an improved replacement for the array_replace PHP function
symfony/password-hasher            v6.2.7  v6.2.7  Provides password hashing utilities
symfony/polyfill-intl-grapheme     v1.27.0 v1.27.0 Symfony polyfill for intl's grapheme_* functions
symfony/polyfill-intl-icu          v1.27.0 v1.27.0 Symfony polyfill for intl's ICU-related data and classes
symfony/polyfill-intl-idn          v1.27.0 v1.27.0 Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions
symfony/polyfill-intl-normalizer   v1.27.0 v1.27.0 Symfony polyfill for intl's Normalizer class and related functions
symfony/polyfill-mbstring          v1.27.0 v1.27.0 Symfony polyfill for the Mbstring extension
symfony/routing                    v6.2.7  v6.2.7  Maps an HTTP request to a set of configuration variables
symfony/security-acl               v3.3.2  v3.3.2  Symfony Security Component - ACL (Access Control List)
symfony/security-core              v6.2.7  v6.2.7  Symfony Security Component - Core Library
symfony/security-csrf              v6.2.7  v6.2.7  Symfony Security Component - CSRF Library
symfony/security-http              v6.2.7  v6.2.7  Symfony Security Component - HTTP Integration
symfony/service-contracts          v3.2.1  v3.2.1  Generic abstractions related to writing services
symfony/translation-contracts      v3.2.1  v3.2.1  Generic abstractions related to translation
symfony/twig-bridge                v6.2.7  v6.2.7  Provides integration for Twig with various Symfony components
symfony/var-dumper                 v6.2.7  v6.2.7  Provides mechanisms for walking through any arbitrary PHP variable
symfony/var-exporter               v6.2.7  v6.2.7  Allows exporting any serializable PHP data structure to plain PHP code

PHP version

$ php -v
PHP 8.2.3 (cli) (built: Feb 14 2023 20:48:45) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.3, Copyright (c) Zend Technologies
    with Zend OPcache v8.2.3, Copyright (c), by Zend Technologies
    with Xdebug v3.2.0, Copyright (c) 2002-2022, by Derick Rethans

Subject

The SiteAdmin doesn't honor admin option "list_action_button_content". In my setup I have list_action_button_content: icon option but the admin shows the text only create publications button:

Immagine 2023-03-10 160753

I'll create a PR to accomplish this:

after

I think this is only completetly true on the default buttons. If you add a new button but do not copy the logic, it will not do anything.

gremo commented

@jordisala1991 Sure it is. But that button is from this bundle, I think that shipped buttons should always honor admin settings. WDYT?

I would not call this a bug, more like a feature. But it make sens.

@jordisala1991 Sure it is. But that button is from this bundle, I think that shipped buttons should always honor admin settings. WDYT?

Read too fast, didn't saw it was for a Sonata own buttons. 👍 on my side, either as patch or minor, I don't care a lot about it.

gremo commented

@VincentLanglet "enhancement" 😄 thank you both