• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/Access/Install/AccessInstaller.php
  • Класс: BitrixCatalogAccessInstallAccessInstaller
  • Вызов: AccessInstaller::createTables
public function createTables(): void
{
	$this->db->Query("
		CREATE TABLE IF NOT EXISTS b_catalog_role (
			ID INT UNSIGNED NOT NULL AUTO_INCREMENT,
			NAME VARCHAR(250) NOT NULL,
			PRIMARY KEY (ID)
		);
	");

	$this->db->Query("
		CREATE TABLE IF NOT EXISTS b_catalog_role_relation (
			ID INT UNSIGNED NOT NULL AUTO_INCREMENT,
			ROLE_ID INT UNSIGNED NOT NULL,
			RELATION VARCHAR(8) NOT NULL DEFAULT '',
			PRIMARY KEY (ID),
			INDEX ROLE_ID (ROLE_ID),
			INDEX RELATION (RELATION)
		);
	");

	$this->db->Query("
		CREATE TABLE IF NOT EXISTS b_catalog_permission (
			ID INT UNSIGNED NOT NULL AUTO_INCREMENT,
			ROLE_ID INT UNSIGNED NOT NULL,
			PERMISSION_ID VARCHAR(32) NOT NULL DEFAULT '0',
			VALUE INT NOT NULL DEFAULT '0',
			PRIMARY KEY (ID),
			INDEX ROLE_ID (ROLE_ID),
			INDEX PERMISSION_ID (PERMISSION_ID)
		);
	");
}