<?php


namespace ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Home\Modals;



use ModulesGarden\ProxmoxAddon\App\Services\UrlService;
use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Home\Buttons\RedirectButton;
use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Home\Forms\SshKeyForm;
use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Interfaces\ClientArea;
use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Buttons\ModalActionButtons\BaseAcceptButton;
use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Buttons\ModalActionButtons\BaseCancelButton;
use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Modals\BaseModal;

class SshKeyModal extends BaseModal implements ClientArea
{

    public function initContent()
    {
        $this->initIds('sshKeyModal');
        $this->setModalSizeLarge();
        $this->addForm(new SshKeyForm());

    }

    protected function initActionButtons()
    {
        if (!empty($this->actionButtons))
        {
            return $this;
        }
        if(\ModulesGarden\ProxmoxAddon\Core\Helper\sl('Vm')->getVmModel()->keyPair->getPrivate()){
            $vmId = \ModulesGarden\ProxmoxAddon\Core\Helper\sl('Vm')->getVmModel()->id;
            //URL
            $urlService = new UrlService();
            $rd         = new RedirectButton("sshPrivateKeyDownloadButton");
            $rd->replaceClasses(['lu-btn lu-btn--success closeModal']);
            $rd->setHref($urlService->getUrl("sshKey", "sshPrivateKeyDownload",['vm'=> $vmId]));
            $rd->setIcon(null);
            $rd->setShowTitle();
            $rd->deleteHtmlAttribute('data-toggle');
            $rd->addHtmlAttribute('@click', 'closeModal($event)');
            $this->addActionButton($rd);
        }
        $this->addActionButton(new BaseCancelButton);

        return $this;
    }


}