Skip to content

Commit

Permalink
Added anything needed for Step 8 of the Navigation Tutorial; Flip Tra…
Browse files Browse the repository at this point in the history
…nsition & Nested Views + Binding Context
  • Loading branch information
wridgeu committed Mar 24, 2020
1 parent f99257a commit fdea453
Show file tree
Hide file tree
Showing 8 changed files with 101 additions and 4 deletions.
7 changes: 7 additions & 0 deletions webapp/controller/employee/Employee.controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,13 @@ sap.ui.define([
if (!this.getView().getBindingContext()) {
this.getRouter().getTargets().display("notFound");
}
},
onShowResume: function (oEvent) {
var oCtx = this.getView().getElementBinding().getBoundContext();

this.getRouter().navTo("employeeResume", {
employeeId: oCtx.getProperty("EmployeeID")
});
}
});
});
36 changes: 36 additions & 0 deletions webapp/controller/employee/Resume.controller.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
sap.ui.define([
"com/mrb/UI5-Navigation-and-Routing/controller/BaseController"
], function (
BaseController
) {
"use strict";
return BaseController.extend("com.mrb.UI5-Navigation-and-Routing.controller.employee.Resume", {
onInit: function () {
var oRouter = this.getRouter();
oRouter.getRoute("employeeResume").attachMatched(this._onRouteMatched, this);
},
_onRouteMatched: function (oEvent) {
var oArgs, oView;
oArgs = oEvent.getParameter("arguments");
oView = this.getView();
oView.bindElement({
path: "/Employees(" + oArgs.employeeId + ")",
events: {
change: this._onBindingChange.bind(this),
dataRequested: function (oEvent) {
oView.setBusy(true);
},
dataReceived: function (oEvent) {
oView.setBusy(false);
}
}
});
},
_onBindingChange: function (oEvent) {
// No data for the binding
if (!this.getView().getBindingContext()) {
this.getRouter().getTargets().display("notFound");
}
}
});
});
9 changes: 8 additions & 1 deletion webapp/i18n/i18n.properties
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,11 @@ formAddress=Address
formCity=City
formPostalCode=Postal Code
formPhoneHome=Phone (Home)
formCountry=Country
formCountry=Country
ResumeOf=Resume of
tabInfo=Info
tabProjects=Projects
tabHobbies=Hobbies
tabNotes=Notes
FlipToResume=Flip to Resume
FlipToResume.tooltip=See the resume of this employee
9 changes: 8 additions & 1 deletion webapp/i18n/i18n_en.properties
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,11 @@ formAddress=Address
formCity=City
formPostalCode=Postal Code
formPhoneHome=Phone (Home)
formCountry=Country
formCountry=Country
ResumeOf=Resume of
tabInfo=Info
tabProjects=Projects
tabHobbies=Hobbies
tabNotes=Notes
FlipToResume=Flip to Resume
FlipToResume.tooltip=See the resume of this employee
11 changes: 11 additions & 0 deletions webapp/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,11 @@
"pattern": "employees/{employeeId}",
"name": "employee",
"target": "employee"
},
{
"pattern": "employees/{employeeId}/resume",
"name": "employeeResume",
"target": "employeeResume"
}
],
"targets": {
Expand All @@ -128,6 +133,12 @@
"viewId": "employee",
"viewName": "employee.Employee",
"viewLevel": 3
},
"employeeResume": {
"viewId": "resume",
"viewName": "employee.Resume",
"viewLevel": 4,
"transition": "flip"
}
}
}
Expand Down
5 changes: 3 additions & 2 deletions webapp/view/employee/Employee.view.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,14 @@
xmlns="sap.m"
xmlns:mvc="sap.ui.core.mvc"
xmlns:f="sap.ui.layout.form" busyIndicatorDelay="0">
<Page id="employeePage" title="{i18n>EmployeeDetailsOf} {FirstName} {LastName}" showNavButton="true" navButtonPress=".onNavBack" class="sapUiResponsiveContentPadding">
<Page id="employeePage" title="{i18n>formEmployeeDetailsOf} {FirstName} {LastName}" showNavButton="true" navButtonPress=".onNavBack" class="sapUiResponsiveContentPadding">
<content>
<Panel id="employeePanel" width="auto" class="sapUiResponsiveMargin sapUiNoContentPadding">
<headerToolbar>
<Toolbar>
<Title text="{i18n>EmployeeIDColon} {EmployeeID}" level="H2"/>
<Title text="{i18n>formEmployeeIDColon} {EmployeeID}" level="H2"/>
<ToolbarSpacer />
<Link text="{i18n>FlipToResume}" tooltip="{i18n>FlipToResume.tooltip}" press=".onShowResume"/>
</Toolbar>
</headerToolbar>
<content>
Expand Down
24 changes: 24 additions & 0 deletions webapp/view/employee/Resume.view.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<mvc:View controllerName="com.mrb.UI5-Navigation-and-Routing.controller.employee.Resume"
xmlns="sap.m"
xmlns:mvc="sap.ui.core.mvc">
<Page title="{i18n>ResumeOf} {FirstName} {LastName}" id="employeeResumePage" showNavButton="true" navButtonPress=".onNavBack">
<content>
<IconTabBar id="iconTabBar" headerBackgroundDesign="Transparent" class="sapUiResponsiveContentPadding" binding="{Resume}">
<items>
<IconTabFilter id="infoTab" text="{i18n>tabInfo}" key="Info">
<Text text="{Information}"/>
</IconTabFilter>
<IconTabFilter id="projectsTab" text="{i18n>tabProjects}" key="Projects">
<mvc:XMLView viewName="com.mrb.UI5-Navigation-and-Routing.view.employee.ResumeProjects"></mvc:XMLView>
</IconTabFilter>
<IconTabFilter id="hobbiesTab" text="{i18n>tabHobbies}" key="Hobbies">
<Text text="{Hobbies}"/>
</IconTabFilter>
<IconTabFilter id="notesTab" text="{i18n>tabNotes}" key="Notes">
<Text text="{Notes}"/>
</IconTabFilter>
</items>
</IconTabBar>
</content>
</Page>
</mvc:View>
4 changes: 4 additions & 0 deletions webapp/view/employee/ResumeProjects.view.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<mvc:View xmlns="sap.m"
xmlns:mvc="sap.ui.core.mvc">
<Text text="{Projects}"/>
</mvc:View>

0 comments on commit fdea453

Please sign in to comment.