Устанавливает плагин

@param string $name  Имя плагина

@return void
171992
public function install($name)
    {
        Eresus_Kernel::log(__METHOD__, LOG_DEBUG, '("%s")', $name);

        $legacyKernel = Eresus_Kernel::app()->getLegacyKernel();
        $filename = $legacyKernel->froot . 'ext/'.$name.'.php';
        if (file_exists($filename))
        {
            $info = Eresus_PluginInfo::loadFromFile($filename);
            /*
             * Подключаем плагин через eval чтобы убедиться в отсутствии фатальных синтаксических
             * ошибок. Хотя и не факт, что это сработает.
             */
            $code = file_get_contents($filename);
            $code = preg_replace('/^\s*<\?php|\?>\s*$/m', '', $code);
            $code = str_replace('__FILE__', "'$filename'", $code);
            ini_set('track_errors', true);
            $valid = eval($code) !== false;
            ini_set('track_errors', false);
            if (!$valid)
            {
                Eresus_Kernel::app()->getPage()->addErrorMessage(
                    sprintf('Plugin "%s" is broken: %s', $name, $php_errormsg));
                return;
            }

            $className = $name;
            if (!class_exists($className, false) && class_exists('T' . $className, false))
            {
                $className = 'T' . $className; // FIXME: Обратная совместимость с версиями до 2.10b2
            }

            if (class_exists($className, false))
            {
                /** @var Eresus_Plugin $plugin */
                $plugin = new $className();
                $this->items[$name] = $plugin;
                $plugin->install();
                $item = $plugin->__item();
                $item['info'] = serialize($info);
                Eresus_CMS::getLegacyKernel()->db->insert('plugins', $item);
            }
            else
            {
                Eresus_Kernel::app()->getPage()->addErrorMessage(
                    sprintf(errClassNotFound, $className));
            }
        }
        else
        {
            Eresus_Kernel::log(__METHOD__, LOG_ERR, 'Can not find main file "%s" for plugin "%s"',
                $filename, $name);
            $msg = I18n::getInstance()->getText('Can not find main file "%s" for plugin "%s"', __CLASS__);
            $msg = sprintf($msg, $filename, $name);
            Eresus_Kernel::app()->getPage()->addErrorMessage($msg);
        }
    }
1121958
public function setName($name)
    {
      if(!is_string($name) || strlen(trim($name)) == 0)
        throw new InvalidArgumentException(__METHOD__ . '; Invalid name, must be a non empty string');

      $this->name = $name;
    }
357568
public function clickListElement(string $name): void
    {
        $this->context->getElementByText($name, $this->fields['listElement'])->click();
    }
256923
public function set_name($name) {
        if ($this->state < self::STATE_BUILDING_DYNAMIC) {
            $this->update_user_visible();
        }
        $this->name = $name;
    }
475867
public function setName($name)
    {
        list($domain, $locale, $extention) = explode('.', $name);

        $this->domain = $domain;
        $this->locale = $locale;
        $this->extention = $extention;
    }
1229428
public function addRouteMiddleware(string $name): void
    {
        if (!array_key_exists($name, $this->getConfigRouteMiddlewares())) {
            throw new InvalidArgumentException('The middleware [' . $name . '] does not exists.');
        }

        $this->routeMiddlewares[] = $this->getConfigRouteMiddlewares()[$name];
    }
676592
public function delete($name)
	{
		$templates = $this->getTemplates();
		$templates->delete($name, $this->plugin->name);
	}
40346
protected function clearRelationship(string $name): void
    {
        // Clear from the left
        unset($this->relationships[$name]);

        // And clear from the right
        foreach ($this->relationships as $left => &$objectNames) {
            if (isset($objectNames[$name])) {
                unset($objectNames[$name]);
            }
        }
    }
1276235
public function output(string $name): void
	{
		$parent = $this->close();

		$output = current($this->blocks[$name]);

		unset($this->blocks[$name]);

		if(!empty($parent))
		{
			$output = str_replace('__PARENT__', $parent, $output);
		}

		echo $output;
	}
1265504
public function start($name): void
    {
        $this->name = $name;
        $this->startTime = microtime(true);
    }
1024930
public function removeNamedRoute(string $name)
    {
        $route = $this->getNamedRoute($name);
        // no exception, route exists, now remove by id
        unset($this->routes[$route->getIdentifier()]);
    }
896141
public function save($name = null, $path = null)
	{
		$parameters = [];

		/**
		 * @var mixed   $name Имя, под которым файл следует сохранить в папку «Загрузки»
		 */
		if (is_string($name))
		{
			$parameters['name'] = $name;
		}
		else if ($name instanceof Closed)
		{
			$parameters['name'] = substr(strrchr($name->getPath(), '/'), 1);
		}

		/**
		 * @var string  $path (необязательный)
		 * Путь внутри публичной папки. Следует указать, если в значении параметра public_key передан
		 * ключ публичной папки, в которой находится нужный файл.
		 * Путь в значении параметра следует кодировать в URL-формате.
		 */
		if (is_string($path))
		{
			$parameters['path'] = $path;
		}
		else if ($this->getPath() !== null)
		{
			$parameters['path'] = $this->getPath();
		}

		/**
		 * Если к моменту ответа запрос удалось обработать без ошибок, API отвечает кодом 201 Created и возвращает
		 * ссылку на сохраненный файл в теле ответа (в объекте Link).
		 * Если операция сохранения была запущена, но еще не завершилась, Яндекс.Диск отвечает кодом 202 Accepted.
		 */
		$response = $this->client->send((new Request($this->uri->withPath($this->uri->getPath()
			.'public/resources/save-to-disk')
		                                                       ->withQuery(http_build_query([
					'public_key' => $this->getPublicKey()
				] + $parameters, null, '&')), 'POST')));

		if ($response->getStatusCode() == 202 || $response->getStatusCode() == 201)
		{
			$response = json_decode($response->getBody(), true);

			if (isset($response['operation']))
			{
				$response['operation'] = $this->client->getOperation($response['operation']);
				$this->emit('operation', $response['operation'], $this, $this->client);
				$this->client->emit('operation', $response['operation'], $this, $this->client);

				return $response['operation'];
			}

			if (isset($response['href']))
			{
				parse_str((new Uri($response['href']))->getQuery(), $path);

				if (isset($path['path']))
				{
					return $this->client->getResource($path['path']);
				}
			}
		}

		return false;
	}
1127364
public function clear($name = null)
	{
		if ($name === null) {
			$this->data = array();
		} elseif (is_array($name)) {
			foreach ($name as $index)
				unset($this->data[$index]);
		} else {
			unset($this->data[$name]);
		}
	}
370501
public function clearHeaders($name)
    {
        $ucName = strtoupper($name);
        if (isset($this->ucNames[$ucName])) {
            $name = $this->ucNames[$ucName];
            unset($this->ucNames[$ucName]);
            unset($this->headers[$name]);
        }
    }
1358455
public final function removeHeaders($name)
    {
        self::checkString($name);

        foreach ($this->_headers as $headerName => $headerValue) {

            if (strcasecmp($name, $headerName) === 0) {

                unset($this->_headers[$headerName]);
            }
        }
    }
907458
public function package(string $name): void
    {
        $files = $this->app->make('files');

        if (\method_exists($this->app, 'vendorPath')) {
            $vendorPath = \rtrim($this->app->vendorPath(), '/');
        } else {
            $basePath = \rtrim($this->app->basePath(), '/');
            $vendorPath = "{$basePath}/vendor";
        }

        $paths = [
            "{$vendorPath}/{$name}/resources/database/migrations/",
            "{$vendorPath}/{$name}/database/migrations/",
            "{$vendorPath}/{$name}/migrations/",
        ];

        foreach ($paths as $path) {
            if ($files->isDirectory($path)) {
                $this->run($path);
            }
        }
    }
1361850
protected function createRoutes(string $name): void
    {
        $apiFile = base_path($this->moduleName().'/'.$name.'/Routes/api.php');
        if (! $this->files->exists($apiFile)) {
            $this->files->put($apiFile, $this->files->get(__DIR__.'/stubs/routes/api.stub'));
        }

        $webFile = base_path($this->moduleName().'/'.$name.'/Routes/web.php');
        if (! $this->files->exists($webFile)) {
            $this->files->put($webFile, $this->files->get(__DIR__.'/stubs/routes/web.stub'));
        }
    }