| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- <?php
- namespace ModulesGarden\Servers\KerioEmail\App\Http\Actions;
- use ModulesGarden\Servers\KerioEmail\App\Helpers\KerioManager;
- use ModulesGarden\Servers\KerioEmail\App\Libs\Kerio\Api;
- use ModulesGarden\Servers\KerioEmail\App\Libs\Kerio\Components\Api\Soap\Client;
- use ModulesGarden\Servers\KerioEmail\App\Traits\ExtensionsCheckerTrait;
- use ModulesGarden\Servers\KerioEmail\Core\App\Controllers\Instances\AddonController;
- /**
- *
- * Created by PhpStorm.
- * User: Tomasz Bielecki ( tomasz.bi@modulesgarden.com )
- * Date: 27.08.19
- * Time: 14:54
- * Class TestConnection
- */
- class TestConnection extends AddonController
- {
- use ExtensionsCheckerTrait;
- /**
- *
- *
- * @param null $params
- * @return array
- */
- public function execute($params = null)
- {
- try{
- /**
- *
- */
- $this->checkExtensionOrThrowError();
- /**
- * kerio API manager
- */
- $manager = (new KerioManager());
- /**
- * set API params
- */
- if($params['serverusername'] )
- {
- /**
- *
- * override secure param
- */
- $params['serversecure'] = $params['serversecure'] ? 'on' : 'off';
- $api = $manager->getApi()->setParams($params);
- }else{
- $api = $manager->getApiByServer($params['serverid']);
- }
- /**
- * API Connection
- */
- $connection = $api->soap->getConnection();
- /**
- * check if connected and return true
- */
- if($connection->isConnected())
- {
- return ['success' => true];
- }
- /**
- *
- * return connection error
- */
- return ['error' => $connection->getConnectionError()];
- }
- catch (\Exception $ex)
- {
- /**
- * return some crit error
- */
- return ['error' => $ex->getMessage()];
- }
- }
- }
|