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

	$this->db->Query("
		CREATE TABLE IF NOT EXISTS b_tasks_role_relation (
			ID INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
			ROLE_ID INT(10) 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_tasks_permission (
			ID INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
			ROLE_ID INT(10) UNSIGNED NOT NULL,
			PERMISSION_ID VARCHAR(32) NOT NULL DEFAULT '0',
			VALUE TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
			PRIMARY KEY (ID),
			INDEX ROLE_ID (ROLE_ID),
			INDEX PERMISSION_ID (PERMISSION_ID)
		);
	");

	$this->db->Query("
		CREATE TABLE `b_tasks_template_permission` (
			`ID` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
			`TEMPLATE_ID` INT(10) UNSIGNED NULL DEFAULT NULL,
			`ACCESS_CODE` VARCHAR(8) NULL DEFAULT NULL,
			`PERMISSION_ID` VARCHAR(32) NULL DEFAULT NULL,
			`VALUE` TINYINT(3) UNSIGNED NULL DEFAULT '0',
			PRIMARY KEY (`ID`),
			INDEX `TEMPLATE_ID` (`TEMPLATE_ID`),
			INDEX `ACCESS_CODE` (`ACCESS_CODE`),
			INDEX `PERMISSION_ID` (`PERMISSION_ID`)
		);
	");
}