Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/old/app/code/Zendesk/Zendesk/Block/Adminhtml/System/Config/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/old/app/code/Zendesk/Zendesk/Block/Adminhtml/System/Config/TestConnection.php
<?php

namespace Zendesk\Zendesk\Block\Adminhtml\System\Config;

class TestConnection extends \Magento\Config\Block\System\Config\Form\Field
{
    /**
     * @var \Zendesk\Zendesk\Helper\Api
     */
    protected $apiHelper;
    /**
     * @var \Zendesk\Zendesk\Helper\Data
     */
    protected $helper;

    /**
     * TestConnection constructor.
     * @param \Magento\Backend\Block\Template\Context $context
     * @param \Zendesk\Zendesk\Helper\Api $apiHelper
     * @param \Zendesk\Zendesk\Helper\Data $helper
     * @param array $data
     */
    public function __construct(
        \Magento\Backend\Block\Template\Context $context,
        // end parent parameters
        \Zendesk\Zendesk\Helper\Api $apiHelper,
        \Zendesk\Zendesk\Helper\Data $helper,
        // end custom parameters
        array $data = []
    ) {
        parent::__construct($context, $data);
        $this->apiHelper = $apiHelper;
        $this->helper = $helper;
    }

    /**
     * Set template
     *
     * {@inheritdoc}
     */
    protected function _prepareLayout()
    {
        parent::_prepareLayout();
        $this->setTemplate('Zendesk_Zendesk::system/config/testconnection.phtml');
        return $this;
    }

    /**
     * Unset irrelevant element data
     *
     * {@inheritdoc}
     */
    public function render(\Magento\Framework\Data\Form\Element\AbstractElement $element)
    {
        $element = clone $element;
        $element->unsScope()->unsCanUseWebsiteValue()->unsCanUseDefaultValue();
        return parent::render($element);
    }

    /**
     * Get element output
     *
     * {@inheritdoc}
     */
    protected function _getElementHtml(\Magento\Framework\Data\Form\Element\AbstractElement $element)
    {
        $storeId = $this->helper->getStoreConfigScopeStoreId($this->getRequest());

        $zendeskConfigured = false;

        try {
            $this->apiHelper->tryValidateIsConfigured(
                \Magento\Store\Model\ScopeInterface::SCOPE_STORE,
                $storeId
            );
            $zendeskConfigured = true;
        } catch (\Exception $ex) {
            // zendesk integration must not be configured.
        }

        $originalData = $element->getOriginalData();
        $this->addData(
            [
                'button_label' => __($originalData['button_label']),
                'html_id' => $element->getHtmlId(),
                'ajax_url' => $this->_urlBuilder->getUrl('zendesk/system_config/testconnection'),
                'zendesk_configured' => $zendeskConfigured
            ]
        );

        return $this->_toHtml();
    }
}

Spamworldpro Mini