sap.ui.define( [ "sap/ui/core/mvc/Controller", "sap/m/MessageToast", "sap/ui/core/routing/History" ], function(Controller, MessageToast, History) { "use strict"; return Controller.extend("fivea.controller.Breeder_Detail", { onInit: function() { this._oRouter = sap.ui.core.UIComponent.getRouterFor(this); this._oRouter .getRoute("breeder_detail") .attachPatternMatched(this.onDetailMatched, this); }, onDetailMatched: function(oEvent) { this._sObjectID = oEvent.getParameter("arguments").id; var sObjectPath = "/breeder(" + this._sObjectID + ")"; this._sObjectPath = sObjectPath; var oView = this.getView(); oView.bindElement({ path: sObjectPath }); }, _onBindingChange: function(oEvent) {}, onCultivarSelectionChange: function() { var oTable = this.byId("breeder_cultivar_table"); var iIndex = oTable.getSelectedIndex(); var oCtxt = oTable.getContextByIndex(iIndex); var sToPageParID = oCtxt.getProperty("id"); var oRouter = sap.ui.core.UIComponent.getRouterFor(this); oRouter.navTo("cultivar_detail", { id: sToPageParID }); }, onDeletePress: function(evt) { var oView = this.getView(); var oModel = oView.getModel(); var mParms = {}; var oDeleteDialog = new sap.ui.commons.Dialog(); oDeleteDialog.setTitle("Delete Breeder"); var oText = new sap.ui.commons.TextView({ text: "Are you sure to delete this Breeder?" }); var _that = this; oDeleteDialog.addContent(oText); oDeleteDialog.addButton( new sap.ui.commons.Button({ text: "Confirm", press: function() { var mParms = {}; mParms.success = function(data, response) { oDeleteDialog.close(); _that._oRouter.navTo("breederList"); // oModel.refresh(); }; mParms.error = function(error) { oDeleteDialog.close(); MessageToast.show("Delete failed"); }; var sMsg; sMsg = oView.getBindingContext(); mParms.context = sMsg; oModel.remove("", mParms); } }) ); oDeleteDialog.open(); }, onSave: function() { var oView = this.getView(); var oModel = oView.getModel(); var mParms = {}; function onSuccessHandler() { oModel.refresh(); oModel.updateBindings(); MessageToast.show("Update success"); } function onErrorHandler() { MessageToast.show("Update failed"); } //var sPath = this._sObjectPath; //var oData = oModel.getData(sPath); //console.log("Model data:", oData); //console.log("Model has pending changes:", oModel.hasPendingChanges()); //console.log("Pending changes:", oModel.getPendingChanges()); mParms.success = onSuccessHandler; mParms.error = onErrorHandler; oModel.setTokenHandlingEnabled(true); oModel.updateSecurityToken(); oModel.submitChanges(mParms); }, onCheck: function() { var oView = this.getView(); var oModel = oView.getModel(); var sPath = this._sObjectPath; var oData = oModel.getData(sPath); console.log("Model data:", oData); console.log("Model has pending changes:", oModel.hasPendingChanges()); console.log("Pending changes:", oModel.getPendingChanges()); }, onNavBack: function() { var oHistory = History.getInstance(); var sPreviousHash = oHistory.getPreviousHash(); if (sPreviousHash !== undefined) { window.history.go(-1); } else { var oRouter = sap.ui.core.UIComponent.getRouterFor(this); oRouter.navTo("breederList", true); } } }); } );