Question

Je veux afficher des succès et des notifications d'erreur avec Mage::getSingleton('core/session')->addSuccess() et ->addError() si l'admin est sur une Configuration spécifique de la Section.

La raison:J'ai fait une extension, qui a un section distincte dans Système / Configuration, et je veux donner des commentaires si elle est correctement configuré ou pas, mais seulement quand l'admin est à cette section.

J'ai essayé de créer une valeur par défaut.les notifications de bloc, qui a travaillé, mais la notification a été un mondial de notification", pas une petite boîte de notification, qui était situé sur le dessus de l'paramètres des champs de mes extensions' settingfields.Aussi:Je veux ajouter ces notifications uniquement si l'administrateur est à cette section de la page de Configuration.

Merci!

Était-ce utile?

La solution

La zone de message que vous mentionnez

enter image description here

est rempli à partir de Mage_Adminhtml_System_ConfigController::saveAction.

Avant que le message est défini, un événement ("admin_system_config_changed_section_{$section}) est déclenché.

code réf:

Mage::dispatchEvent("admin_system_config_changed_section_{$section}",
                array('website' => $website, 'store' => $store)
            );
            $session->addSuccess(Mage::helper('adminhtml')->__('The configuration has been saved.'));

Vous avez juste besoin de comprendre ce qui est dans la section ($section = $this->getRequest()->getParam('section');) et vous serait le plus susceptible d'être en mesure de cibler un événement spécifique à votre section d'économie.

Il existe aussi une autre solution:Utiliser un Indicateur de champ dans la section admin.

Place un SOUPÇON de groupe dans votre system.xml fichier de configuration.Un exemple:

<hint>
   <frontend_model>dyncatprod/adminhtml_system_config_fieldset_hint</frontend_model>
     <sort_order>0</sort_order>
     <show_in_default>1</show_in_default>
     <show_in_website>1</show_in_website>
     <show_in_store>1</show_in_store>
</hint>

assurez-vous qu'il a le plus faible de l'ordre de tri.

Vous devez définir le bloc de la classe, ci-dessous est un exemple, montrant le chemin d'accès que par l'exemple de xml.

enter image description here

Il doit contenir une méthode de rendu

/**
     * Render fieldset html
     *
     * @param  Varien_Data_Form_Element_Abstract $element
     *
     * @return string
     */
    public function render(Varien_Data_Form_Element_Abstract $element)
    {
        return $this->toHtml();
    }

Vous pouvez ensuite des cours de sortie quel que soit votre besoin, et exécuter n'importe quelle logique vous avez besoin, par l'intermédiaire de votre bloc adminhtml_system_config_fieldset_hint

Un exemple, pour afficher des informations sur l'extension installée:

enter image description here

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top