/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.rjconsultores.ventaboletos.web.gui.controladores.seguridad;

import java.util.Calendar;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zul.Radio;

import com.rjconsultores.ventaboletos.entidad.PerfilFuncion;
import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado;
import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer;
import com.rjconsultores.ventaboletos.web.utilerias.MyListbox;

@Controller("editarPerfilFuncionController")
@Scope("prototype")
public class EditarPerfilFuncionController extends MyGenericForwardComposer {

	private MyListbox permisoList;
	private PerfilFuncion perfilFuncion;
	private Radio radReadOnly;
	private Radio radWrite;

	@Override
	public void doAfterCompose(Component comp) throws Exception {
		super.doAfterCompose(comp);
		permisoList = (MyListbox) Executions.getCurrent().getArg().get("permisoList");
		perfilFuncion = (PerfilFuncion) Executions.getCurrent().getArg().get("perfilFuncion");

		if (perfilFuncion != null) {

			if (perfilFuncion.getIndLectura()) {
				radReadOnly.setChecked(Boolean.TRUE);
			} else {
				radWrite.setChecked(Boolean.TRUE);
			}

		}

	}

	public void onClick$btnSalvar(Event ev) throws InterruptedException {

		if (radReadOnly.isChecked()) {
			perfilFuncion.setIndLectura(Boolean.TRUE);
		} else if (radWrite.isChecked()) {
			perfilFuncion.setIndLectura(Boolean.FALSE);
		}
		
		perfilFuncion.setUsuarioId(UsuarioLogado.getUsuarioLogado().getUsuarioId());
		perfilFuncion.setFecmodif(Calendar.getInstance().getTime());
		
		permisoList.updateItem(perfilFuncion);

		closeWindow();
	}
}
