public void go(final HasWidgets container) { // verificar si es super admin, admin, write o read -> if (AppController.getNivelAccesoActual().equals(NivelAcceso.VISITANTE) || AppController.getNivelAccesoActual().equals(NivelAcceso.USUARIO_SIN_INSTANCIA)) { // no -> enviar a página de error eventBus.fireEvent(new EventoPaginaError()); return; } else { // mostrar la página bind(); container.clear(); container.add(display.asWidget()); } }
@SuppressWarnings("deprecation") public void bind() { // modificar el menú de inicio de sesión para los visitantes que no han // iniciado sesión if (!AppController.getNivelAccesoActual().equals(NivelAcceso.VISITANTE)) { display.getEnlaceLogin().setText(AppController.getI18nConstantes().cerrar_sesion()); display.getEnlaceLogin().setTargetHistoryToken(""); display .getEnlaceLogin() .addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { rpcService.cerrarSesion( new Fragmentos.ManejadorCierreSesion(rpcService, eventBus)); } }); } else { display.getEnlacePerfil().setText(""); } // consultar los datos de la instancia display.getIndicadorDeCargaDePagina().agregarLlamada(); rpcService.mIGetInstancia( idInstanciaDeseada, new AsyncCallback<Instancia>() { @Override public void onSuccess(final Instancia result) { display.getIndicadorDeCargaDePagina().quitarLlamada(); procesarInstanciaLeida(result); } @Override public void onFailure(Throwable caught) { // no hay resultados... GWT.log("Falla, no hay instancia para esta sesión:", caught); display.getIndicadorDeCargaDePagina().quitarLlamada(); // enviar a la página de error eventBus.fireEvent(new EventoPaginaError()); } }); }
private void procesarInstanciaLeida(final Instancia result) { // mostrar los datos de la aplicación display.getTbNombre().setText(result.getNombre()); display .getLinkUsuCread() .setTargetHistoryToken( Destinos.USUARIO_INDIVIDUAL.value + Aplicacion.SEPARADOR_TOKEN.value + result.getIdUsuarioCreador()); display .getLinkGrupAdmin() .setTargetHistoryToken( Destinos.GRUPO_INDIVIDUAL.value + Aplicacion.SEPARADOR_TOKEN.value + result.getIdGrupoAdmin()); display .getLinkGrupWrite() .setTargetHistoryToken( Destinos.GRUPO_INDIVIDUAL.value + Aplicacion.SEPARADOR_TOKEN.value + result.getIdGrupoEscritor()); display .getLinkGrupRead() .setTargetHistoryToken( Destinos.GRUPO_INDIVIDUAL.value + Aplicacion.SEPARADOR_TOKEN.value + result.getIdGrupoLector()); // solo dar la opción de editar a super admin y a admin if (AppController.getNivelAccesoActual().equals(NivelAcceso.USUARIO_LECTOR) || AppController.getNivelAccesoActual().equals(NivelAcceso.USUARIO_ESCRITOR)) { display.getBtnEditar().setEnabled(false); } else { display .getBtnEditar() .addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { History.newItem( Destinos.INSTANCIA_EDITAR.value + Aplicacion.SEPARADOR_TOKEN.value + result.getPid()); } }); } if (!AppController.getNivelAccesoActual().equals(NivelAcceso.SUPER_ADMIN)) { display .getBtnDesasoc() .addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { // solicitar desasociarse if (Window.confirm( AppController.getI18nConstantes().preg_desasociarse_de_esta_instancia())) { desasociarDeInstancia(); } } }); } else { display.getBtnDesasoc().setEnabled(false); } }