• Модуль: forum
  • Путь к файлу: ~/bitrix/modules/forum/lib/forum.php
  • Класс: BitrixForumForumTable
  • Вызов: ForumTable::getMap
static function getMap()
{
	return [
		(new IntegerField("ID", ["primary" => true, "autocomplete" => true])),
		(new IntegerField("FORUM_GROUP_ID")),
		(new StringField("NAME", ["required" => true, "size" => 255])),
		(new TextField("DESCRIPTION")),
		(new IntegerField("SORT", ["default_value" => 150])),
		(new BooleanField("ACTIVE", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_HTML", ["values" => ["N", "Y"], "default_value" => "N"])),
		(new BooleanField("ALLOW_ANCHOR", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_BIU", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_IMG", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_VIDEO", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_LIST", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_QUOTE", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_CODE", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_FONT", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_SMILES", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_TABLE", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_ALIGN", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_NL2BR", ["values" => ["N", "Y"], "default_value" => "Y"])),

		(new EnumField("ALLOW_UPLOAD", ["values" => ["Y", "F", "A"], "default_value" => "F"])),
		(new StringField("ALLOW_UPLOAD_EXT", ["size" => 255])),

		(new BooleanField("ALLOW_MOVE_TOPIC", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ALLOW_TOPIC_TITLED", ["values" => ["N", "Y"], "default_value" => "Y"])),

		(new BooleanField("ALLOW_SIGNATURE", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("ASK_GUEST_EMAIL", ["values" => ["N", "Y"], "default_value" => "N"])),
		(new BooleanField("USE_CAPTCHA", ["values" => ["N", "Y"], "default_value" => "Y"])),

		(new BooleanField("INDEXATION", ["values" => ["N", "Y"], "default_value" => "Y"])),
		(new BooleanField("DEDUPLICATION", ["values" => ["N", "Y"], "default_value" => "N"])),
		(new BooleanField("MODERATION", ["values" => ["N", "Y"], "default_value" => "N"])),
		(new EnumField("ORDER_BY", ["values" => self::$topicSort, "default_value" => "P"])),
		(new EnumField("ORDER_DIRECTION", ["values" => ["ASC", "DESC"], "default_value" => "DESC"])),

		(new IntegerField("TOPICS")),
		(new IntegerField("POSTS")),
		(new IntegerField("POSTS_UNAPPROVED")),

		(new IntegerField("LAST_POSTER_ID")),
		(new StringField("LAST_POSTER_NAME", ["size" => 255])),
		(new DatetimeField("LAST_POST_DATE", ["default_value" => function(){return new DateTime();}])),
		(new IntegerField("LAST_MESSAGE_ID")),

		(new IntegerField("ABS_LAST_POSTER_ID")),
		(new StringField("ABS_LAST_POSTER_NAME", ["size" => 255])),
		(new DatetimeField("ABS_LAST_POST_DATE", ["default_value" => function(){return new DateTime();}])),
		(new IntegerField("ABS_LAST_MESSAGE_ID")),

		(new StringField("EVENT1")),
		(new StringField("EVENT2")),
		(new StringField("EVENT3")),
		(new StringField("XML_ID", ["size" => 255])),
		(new StringField("HTML", ["size" => 255])),

		(new Reference("PERMISSION", BitrixForumPermissionTable::class, Join::on("this.ID", "ref.FORUM_ID"))),
		(new Reference("SITE", BitrixForumForumSiteTable::class, Join::on("this.ID", "ref.FORUM_ID"))),
		(new Reference("GROUP", BitrixForumGroupTable::class, Join::on("this.FORUM_GROUP_ID", "ref.ID")))
	];
}