• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/classes/general/site_checker.php
  • Класс: CSiteCheckerTest
  • Вызов: CSiteCheckerTest::TableFieldCanBeAltered
function TableFieldCanBeAltered($f, $f_tmp)
{
	if ($f['Type'] == str_replace(array('long','medium'), '', $f_tmp['Type']) || $this->force_repair)
		return true;
	if (
		preg_match('#^([a-z]+)(([0-9]+))(.*)$#i',$f['Type'],$regs)
		&&
		preg_match('#^([a-z]+)(([0-9]+))(.*)$#i',$f_tmp['Type'],$regs_tmp)
		&&
		str_replace('varchar', 'char', strtolower($regs[1])) == str_replace('varchar', 'char', strtolower($regs_tmp[1]))
		&&
		$regs[2] <= $regs_tmp[2]
		&&
		$regs[3] == $regs_tmp[3] // signed || unsigned
	)
		return true;
	return false;
}