diff --git a/bin/generate_entity_fields b/bin/update_autocode similarity index 93% rename from bin/generate_entity_fields rename to bin/update_autocode index 4a5f52109b..f0a44c9b01 100755 --- a/bin/generate_entity_fields +++ b/bin/update_autocode @@ -20,26 +20,23 @@ const types = [ 'text' => 'string', 'varchar' => 'string', 'phone_number' => 'PhoneNumber', + 'float' => 'float', // TODO REMOVE THIS ]; $files = array_merge(glob(ROOT . '/src/Entity/*.php'), array_merge(glob(ROOT . '/components/*/Entity/*.php'), glob(ROOT . '/plugins/*/Entity/*.php'))); -$classes = []; $nullable_no_defaults_warning = []; foreach ($files as $file) { require_once $file; - $declared = get_declared_classes(); - foreach ($declared as $dc) { - if (preg_match('/(App|(Component|Plugin)\\\\[^\\\\]+)\\\\Entity/', $dc) && !in_array($dc, $classes)) { - $class = $dc; - $classes[] = $class; - break; - } + $class = str_replace(['/', 'src', 'components', 'plugins'], ['\\', 'App', 'Component', 'Plugin'], substr($file, strlen(ROOT) + 1, -4)); + + if (!method_exists($class, 'schemaDef')) { + continue; } $no_ns_class = preg_replace('/.*?\\\\/', '', $class);