problema con link_to_remote

edited noviembre 2007 in Dudas/Problemas
Estoy intentando crear una ventana prototype emergente, para que cuando se presione el enlace con link_to_remote aparezca, este enlace se encuentra ubicado en el menuprinicpal de mi aplicacion, y estoy llamando la ventana que esta en otra vista llamada detalleUsuario. a continuacion coloco algo de codigo:

menuprincipal.phtml-> unicado en views/layouts
<html>
<head>
<? stylesheet_link_tag('style',true) ?>
<?= javascript_include_tag("scriptaculous/window") ?>
<?= stylesheet_link_tag("../themes/default") ?>
<?= stylesheet_link_tag("../themes/mac_os_x") ?>
<?= stylesheet_link_tag("../themes/vista") ?>
</head>
<body>
 		<?
			$Usuario = new Usuario();
			$nameUser = $Usuario->find(Session::get_data('id_user'));
			echo "<h3><strong>Bienvenido Sr.(a) ".$nameUser->nombre_apellido."</strong></h3>";
		?>
<table>
	<tr>
		<td style=' font-size: 12px; background: #EDF0F9; width: 200px' valign="top">
		<strong>Fecha <?= date('d-m-Y')?></strong><hr>
			<fieldset><legend>Principal</legend>
			<div id="menu">
				<?
								
				if($nameUser->tipo_usuario == 'Administrador'){
					echo link_to('usuario/index', 'Administrar Usuarios');
					echo link_to('programa/index', 'Administrar Programas');
					echo link_to('modulo/index', 'Administrar Modulos');
					echo link_to('indicadores/index','Administrar Indicadores');
					echo link_to('pregunta/index', 'Administrar Pregunta');
				?>
				<?= link_to_remote('Creditos', 'update: contenido', 'action: usuario/detalleUsuario', 'confirm: A continuación saldra el autor intelectual de esta aplicacion web')?>
					<div id='contenido' style="display:none"></div>
				<?
				}else{
					if($nameUser->tipo_usuario == 'Estudiante'){
						echo link_to('encuesta/index', 'Responder Encuesta');						
					}//if
				}//del else
				?>
				<?= link_to('usuario/form', 'Cambiar Contraseña')?>				
				<?= link_to('indice/salir', 'Salir')?>
			</div>
			
		</fieldset>
		</td>
		<td style=' font-size: 10px; background: #EDF0F9;' width="675px"><h3 align="center">Sistema de Información para evaluacion docente en el SENA</h3></td>
	</tr>
</table>
</body>
</html>



codigo de detalleUsuario.phtml ubicado en views/usuario:
<html>
<head>
</head>
<body>
	<div style="display:none" id='conten' align='center'>
		<h3>Desarrollador: Arnold Espitaleta Sierra</h3>					
	</div>
<script type'text/javascript'>
contentWin = new Window({
	className: "vista",
	title: "creditos",
	showEffect: Effect.Appear,
	hideEffect: Effect.Fade,
	destroyOnClose: true
})
contentWin.setContent('conten', true, true)
contentWin.showCenter();
contentWin.show(true);
contentWin.setSize(350, 150);
$('contenido').hide();
</script>
</body>
</html>

Comentarios

  • Saludos,

    Aquí te va un ejemplo para que te guies a mi me funciona sin problema

    Vista del Link
    <?= link_to_remote(img_tag('estadistica.gif', 'border: 0'),
    				'update: contenido', 'action: viaje/estadistica/')?>
    
    <div id='contenido' styel="display:none"></div>
    

    En el Controller viaje/estadistica
    public function estadistica(){
    
    	//indicando el tipo de respuesta
    	$this->set_response('view');
    }
    


    En la vista estadística
    <div  style="display:none" id='conten' align='center'>
    		<br />
    		<?= img_tag('img.png',	'style: border: 1px solid #000000')?>
    </div>
    <script type'text/javascript'>
    	contentWin = new Window({
    		className: "vista",
    		title: "Estadistica del Viaje",
    		destroyOnClose: true
    	 })
    	contentWin.setContent('conten', true, true)
    	contentWin.showCenter();
    	contentWin.show(true);
    	contentWin.setSize(560, 270);
    
    	$('contenido').hide();
    </script>
    

    Con este código fue que realice una vista con una de estas ventana me genero unos problemas que los solucione como muestro arriba, ya con esto puedes aplicar la logica que necesites...
  • edited 10:26
    hola mano, lo tenia parecido mas no igual a lo que me dijistes, lo que me faltaba era el siguiente pedazo de codigo:

    public function detalleUsuario(){
       //indicando el tipo de respuesta
       $this->set_response('view');
    }
    

    es decir en el controller llamar a la vista a traves del metodo que lo define y que lo ejecute en la misma vista.


    Mcuhas gracias viejo

    Saludos!
Sign In or Register to comment.