protected function get_codigo_php()
 {
     $existente = null;
     if (!$this->pisar_archivo && file_exists($this->archivo_absoluto())) {
         $existente = toba_archivo_php::codigo_sacar_tags_php(file_get_contents($this->archivo_absoluto()));
     }
     return $this->molde_php->get_codigo($existente);
 }
Example #2
0
 /**
  * Permite modificar la forma en que se grafica la pantalla, por defecto un componente sobre el otro
  */
 function generar_layout()
 {
     $nombre = toba::proyecto()->get_path_php() . '/varios/line_endings/archivo_linux.php';
     //Verifico que no tiene el CHR 13 de movida
     assert(strrchr(file_get_contents($nombre), 13) === false);
     $archivo = new toba_archivo_php($nombre);
     $archivo->edicion_inicio();
     $codigo_actual = $archivo->contenido();
     assert(strrchr($codigo_actual, 13) === false);
     $metodo = new toba_codigo_metodo_php('extender_objeto_js');
     $metodo->set_contenido("echo \"alert('soy un alert nuevo');" . "\n" . "alert(4);\"");
     $nuevo_codigo = $archivo->codigo_agregar_metodo($codigo_actual, $metodo->get_codigo());
     $archivo->insertar(toba_archivo_php::codigo_sacar_tags_php($nuevo_codigo));
     //Verifico que el nuevo codigo que obtuve tampoco tiene CR antes de ser grabado
     assert(strrchr($archivo->contenido(), 13) === false);
     //Aca grabe el archivo
     $archivo->edicion_fin();
     assert(strrchr(file_get_contents($nombre), 13) === false);
     assert(strrchr(file_get_contents($nombre), PHP_EOL) !== false);
     $archivo->mostrar();
     echo 'El test parece que funco!, revirtiendo archivo....';
     $tsvn = new toba_svn();
     $tsvn->revert($nombre);
 }
Example #3
0
 function generar_archivos_consultas()
 {
     foreach ($this->archivos_consultas as $path_relativo => $clase) {
         //Control para que no hayan metodos duplicados, se hace aca
         //porque sino se pierde el acceso al editor. El control se deberia hacer en la carga misma
         if (count($clase->get_indice_metodos_php()) != count(array_unique($clase->get_indice_metodos_php()))) {
             throw new toba_error('Existen nombres de metodos duplicados!');
         }
         $path = $this->directorio_absoluto() . $path_relativo;
         $existente = null;
         if (file_exists($path) && is_file($path)) {
             $existente = toba_archivo_php::codigo_sacar_tags_php(file_get_contents($path));
         }
         $php = $clase->generar_codigo($existente);
         toba_manejador_archivos::crear_archivo_con_datos($path, "<?php\n" . $php . "\n?>");
         $this->registrar_elemento_creado('Archivo consultas', $this->get_proyecto(), $this->id_molde_proyecto);
     }
 }