/** Genera una lista de los elementos que conforman el molde */ function generar_lista_elementos($elementos, $prefijo, $codigo_existente = null) { $lista = array(); $titulo = ''; $subtitulo = ''; $a = 0; foreach ($elementos as $id => $elemento) { if ($elemento instanceof toba_codigo_separador) { //Filtra el separador según el código actual if (toba_archivo_php::codigo_tiene_codigo($codigo_existente, $elemento->get_codigo())) { continue; } if ($elemento->get_tipo() == 'chico') { $subtitulo = $elemento->get_descripcion(); } else { $titulo = $elemento->get_descripcion(); $subtitulo = ''; } } elseif ($elemento instanceof toba_codigo_metodo) { //Filtra el metodo según el código actual if ($elemento instanceof toba_codigo_metodo_js) { if (toba_archivo_php::codigo_tiene_metodo_js($codigo_existente, $elemento->get_descripcion())) { continue; } } else { if (toba_archivo_php::codigo_tiene_metodo($codigo_existente, $elemento->get_descripcion())) { continue; } } $desc = $prefijo . ' # '; $desc .= $titulo && $subtitulo ? $titulo . ' - ' . $subtitulo : $titulo . $subtitulo; $desc .= ' => ' . $elemento->get_descripcion(); $lista[$a]['id'] = $id; $lista[$a]['desc'] = $desc; $lista[$a]['elemento'] = $elemento; } $a++; } return $lista; }