diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderCRUDController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderCRUDController.java index 7d71883e7..314fc001c 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderCRUDController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/OrderCRUDController.java @@ -38,6 +38,7 @@ import org.navalplanner.business.orders.entities.Order; import org.navalplanner.business.orders.entities.OrderElement; import org.navalplanner.business.orders.entities.OrderLine; import org.navalplanner.business.orders.entities.OrderLineGroup; +import org.navalplanner.business.templates.entities.OrderTemplate; import org.navalplanner.web.common.IMessagesForUser; import org.navalplanner.web.common.Level; import org.navalplanner.web.common.MessagesForUser; @@ -45,6 +46,8 @@ import org.navalplanner.web.common.OnTabSelection; import org.navalplanner.web.common.OnlyOneVisible; import org.navalplanner.web.common.Util; import org.navalplanner.web.common.OnTabSelection.IOnSelectingTab; +import org.navalplanner.web.orders.assigntemplates.TemplateFinderPopup; +import org.navalplanner.web.orders.assigntemplates.TemplateFinderPopup.IOnResult; import org.navalplanner.web.orders.labels.AssignedLabelsToOrderElementController; import org.navalplanner.web.orders.labels.LabelsAssignmentToOrderElementComponent; import org.navalplanner.web.orders.materials.AssignedMaterialsToOrderElementController; @@ -121,6 +124,24 @@ public class OrderCRUDController extends GenericForwardComposer { private Component messagesContainer; + private TemplateFinderPopup templateFinderPopup; + + public void createOrderFromTemplate() { + Component fromTemplateButton = listWindow + .getFellow("create_from_template_button"); + templateFinderPopup.openForOrderCreation(fromTemplateButton, + "after_start", new IOnResult() { + + @Override + public void found(OrderTemplate template) { + orderModel.prepareCreationFrom(template); + showEditWindow(_("Create order from Template")); + orderAuthorizationController + .setOrder((Order) orderModel.getOrder()); + } + }); + } + @Resource private IOrderTemplatesControllerEntryPoints orderTemplates; diff --git a/navalplanner-webapp/src/main/webapp/orders/_edition.zul b/navalplanner-webapp/src/main/webapp/orders/_edition.zul index 9817dbd43..aa0b2734a 100644 --- a/navalplanner-webapp/src/main/webapp/orders/_edition.zul +++ b/navalplanner-webapp/src/main/webapp/orders/_edition.zul @@ -30,6 +30,7 @@ + diff --git a/navalplanner-webapp/src/main/webapp/orders/_list.zul b/navalplanner-webapp/src/main/webapp/orders/_list.zul index b05deecea..2003d8119 100644 --- a/navalplanner-webapp/src/main/webapp/orders/_list.zul +++ b/navalplanner-webapp/src/main/webapp/orders/_list.zul @@ -75,4 +75,6 @@