[SOLVED]sobre extension multilevelhorizontalmenu

Intento utilizar la extension multilevelhorizontalmenu, en un proyecto de yii framework, donde utilizo el modulo de control de usuarios cruge, funciona bien en algunas cosas, pero las acciones, de inicio de seccion, salvas, etc. Ejemplo, si trato de ejecutar una accion, donde debe acceder al modulo cruge en protected\modules\cruge\views\ui me da el siguiente error:

Error 404

No es posible resolver la solicitud "SoftVentas/index.php?r=cruge/ui/usermanagementadmin" o cuando trato de acceder al modulo de salvas backup, me origina el siguiente error:

Error 404

No es posible resolver la solicitud "index.php?r=backup"

Si trato de desloguearme me da este error:

Error 404

No es posible resolver la solicitud "SoftVentas/index.php?r=cruge/ui/logout"

Yo se que el error 404 significa que hay conexión con el servidor pero la página que estás pidiendo no existe, de antemano se que existe, lo que parece que la forma del camino que le doy no es correcto, siempre he utilizado la extension mbmenu y trabaja correctamente, lo que de una extension a la otra cambia la forma de escribir los codigos, por eso quiero que revisen la forma de escribir mis codigos.

Estas son las partes del codigo donde me da problemas:




 array("url" => "#", "visible" => Yii::app()->user->checkAccess("administrador"),

                        	"label" => "Administrar",

                        	array(

   								"label"=>"Administrar Usuarios",

                            	'url'=>array(// este array me da error 404

                                	'route' => Yii::app()->user->ui->userManagementAdminUrl,

   								'visible' =>!Yii::app()->user->isGuest)),

   								array("url" => array(// este array funciona bien

                                	"route" => "/salvas/salvas"),

                            	"label" => "Exportar e Importar Datos",),

                        	array("url" => array(// este array funciona bien

                                	"route" => "/cierre/cierre"),

                            	"label" => "Cierre de Información",),

                        	array("url" => array(// este array me da error 404

                                	"route" => "index.php?r=backup", 'visible' => !Yii::app()->user->isGuest),

                            	"label" => "Salvas",),

                    	),

//esta parte de loguerase al sistema me error 404 tambien

                    	array('label' => 'Entrar', 'url' => Yii::app()->user->ui->loginUrl, 

                        	'visible' => Yii::app()->user->isGuest),

                    	array('label' => 'Salir (' . Yii::app()->user->name . ')', 

                        	'url'=>array("route" => Yii::app()->user->ui->logoutUrl,

                        	'visible' => !Yii::app()->user->isGuest)),



Necesito ayuda sobre esto, agradeciendo de antemano

Hola a todos de nuevo, logre resolver, al parecer esta funcion funciona con "route" para las carpetas que estan dentro de la carpeta views, pero como la carpeta cruge y backup estan en \protected\modules\, entonces pude acceder a ellas mediante "link", aqui les dejo la parte del codigo que no me funcionaba, por si alguien mas se le da este caso.




 array("url" => "#", "visible" => Yii::app()->user->checkAccess("administrador"),

                        	"label" => "Administrar",

                        	array(

                            	"label" => "Administrar Usuarios",

                            	'url' => array(

                                	"link" => Yii::app()->user->ui->userManagementAdminUrl,

                                	"visible" => !Yii::app()->user->isGuest)),

                        	array("url" => array(//esta funcionaba bien

                                	"route" => "/salvas/salvas"),

                            	"label" => "Exportar e Importar Datos",),

                        	array("url" => array(//esta funcionaba bien

                                	"route" => "/cierre/cierre"),

                            	"label" => "Cierre de Información",),

                        	array("url" => array(

                                	"link" => "index.php?r=backup", 'visible' => !Yii::app()->user->isGuest),

                            	"label" => "Salvas",),

                    	),

                    	array("label" => 'Entrar', 'url' => Yii::app()->user->ui->loginUrl,

                        	"visible" => Yii::app()->user->isGuest),

                    	array('label' => 'Salir (' . Yii::app()->user->name . ')',

                        	'url' => array("link" => Yii::app()->user->ui->logoutUrl,

                            	"visible" => !Yii::app()->user->isGuest),



Buenas Rafael.

Llego un poco tarde. Acabo de leer tu mensaje.

Ya los has solucionado, pero creo que por la vía "fácil" (digo esto sin haber usado nunca la extensión). Me explico.

Los errores que Yii te muestra son debidos a que no encuentra las vistas que tú le indicas, y no creo que sea problema de indicar "route" o "link". De hecho, lo que hiciste fué escribir rutas absolutas en las propiedades link.

Cuanto tú referencias a módulos (comentas que tanto cruge como backup son modulos), debes especificar el módulo en tus rutas relativas.

Por ejemplo, la propiedad route para tu backup debería ser algo como "backup/{controlador}/{accion}", y los mismo para administración de usuarios, que sería algo como "cruge/{controlador}/admin{o nombre de accion}".

Un saludo.

Gracias lagogz por responder, utilizando la opcion que me diste la puse de esta forma en el caso de administracion de usuarios y me sigue dando el mismo error, revisa esto, no creo que haya que ponerle las {}, de todas formas espero me corrigas si lo que puse estam mal.




"route" => "cruge/UiController/UserManagementAdmin"



Buenas de nuevo, Rafael.

Supongo que has importado tu módulo en el config, sino no te funcionaría el mismo.

Es sin {} claro.

Si no te funciona tendría que revisar el código de la exetnsión para ver como funciona "route".

Un saludo.