ItEr53S10AdaptacionServiciosRESTItEr52S10: Added the checkbox 'generate code' to the Machines administration page.

Code field is enabled/disabled when the checkbox changes.
Code is are re-generated when the checkbox is activated and the machine isn't saved yet.
This commit is contained in:
Jacobo Aragunde Pérez 2010-04-12 13:59:41 +02:00 committed by Javier Moran Rua
parent 9f22394266
commit 042d677801
3 changed files with 25 additions and 2 deletions

View file

@ -52,6 +52,8 @@ import org.navalplanner.web.resources.worker.CriterionsMachineController;
import org.navalplanner.web.resources.worker.WorkerCRUDController.LimitingResourceEnum;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.WrongValueException;
import org.zkoss.zk.ui.event.CheckEvent;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.Combobox;
import org.zkoss.zul.Comboitem;
@ -578,4 +580,14 @@ public class MachineCRUDController extends GenericForwardComposer {
return (getMachine() != null && !getMachine().isNewObject());
}
public void onCheckGenerateCode(Event e) {
CheckEvent ce = (CheckEvent) e;
if(ce.isChecked()) {
//we have to auto-generate the code if it's unsaved
if(getMachine().isNewObject()) {
getMachine().setCodeAutogenerated();
Util.reloadBindings(editWindow);
}
}
}
}

View file

@ -130,8 +130,13 @@ public class MachineModel implements IMachineModel {
}
@Override
@Transactional(readOnly = true)
public void initCreate() {
machine = Machine.create();
machine.setGenerateCode(configurationDAO.getConfiguration().getGenerateCodeForResources());
if(!machine.getGenerateCode()) {
machine.setCode("");
}
}
@Override

View file

@ -41,8 +41,14 @@
<rows>
<row>
<label value="${i18n:_('Code')}" />
<textbox value="@{controller.machine.code}" width="500px"
constraint="no empty:${i18n:_('Code cannot be null or empty')}" />
<hbox>
<textbox width="350px" value="@{controller.machine.code}"
constraint="no empty:${i18n:_('cannot be null or empty')}"
disabled="@{controller.machine.generateCode}" />
<checkbox id="generateCode" label="${i18n:_('Generate code')}"
onCheck="controller.onCheckGenerateCode(event)"
checked="@{controller.machine.generateCode}" />
</hbox>
</row>
<row>
<label value="${i18n:_('Name')}" />