diff --git a/SAS/TMSS/frontend/tmss_webapp/src/components/ViewTable.js b/SAS/TMSS/frontend/tmss_webapp/src/components/ViewTable.js
index 129b8232bf12d6353bc1507d27f1b17a1821b683..a35c4877a60697883530df950ccd801e272e6dbc 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/components/ViewTable.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/components/ViewTable.js
@@ -2225,7 +2225,7 @@ function ViewTable(props) {
       Header: 'Action',
       id: 'Action',
       accessor: props.keyaccessor,
-      Cell: props => <button className='p-link' onClick={navigateTo(props)} ><i className="fa fa-eye" style={{ cursor: 'pointer' }}></i></button>,
+      Cell: props => <Link to={{pathname: props.cell.row.values['actionpath']}}className='p-link' onClick={(e) => navigateTo(e, props)} ><i className="fa fa-eye" style={{ cursor: 'pointer' }}></i></Link>,
       disableFilters: true,
       disableSortBy: true,
       //isVisible: defaultdataheader.includes(props.keyaccessor),
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/layout/components/AppMenu.js b/SAS/TMSS/frontend/tmss_webapp/src/layout/components/AppMenu.js
index c207fc50489805bfeaa1456038b65609f39b523b..59ae81de1d231ccf7ed00b118af83f7a15deb562 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/layout/components/AppMenu.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/layout/components/AppMenu.js
@@ -29,6 +29,9 @@ class AppSubmenu extends Component {
     }
     
     onMenuItemClick(event, item, index) {
+        if(event.ctrlKey){
+            return;
+        }
         event.preventDefault();
         //avoid processing disabled items
         if(item.disabled) {
@@ -98,7 +101,7 @@ class AppSubmenu extends Component {
 		if (item.to) {
 			return (
 				//<NavLink activeClassName="active-route" to={item.to} onClick={(e) => this.onMenuItemClick(e, item, i)} exact target={item.target}>
-				<a activeClassName="active-route" onClick={(e) => this.onMenuItemClick(e, item, i)} exact target={item.target}>
+				<a href={item.to} activeClassName="active-route" onClick={(e) => this.onMenuItemClick(e, item, i)} exact target={item.target}>
                     {content}
                {/* </NavLink> */}
                 </a>
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/layout/components/PageHeader.js b/SAS/TMSS/frontend/tmss_webapp/src/layout/components/PageHeader.js
index 06521dd203b56cbe59f48143d249bf0fcca8581b..fdd553470409b4baabaa44d163371107e655918b 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/layout/components/PageHeader.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/layout/components/PageHeader.js
@@ -21,6 +21,7 @@ export default ({ title, subTitle, actions, ...props}) => {
     };
 
     const onButtonClick = (e, action) => {
+        e.preventDefault()
         if (action.actOn && action.actOn === 'click') {
             action.props.callback(e);
         }
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Cycle/edit.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Cycle/edit.js
index fc08193ce91dbb54eebfc35de12f5f0c0d27b542..5c11fa8258d7dbf7be0a819e317ba904eececc47 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Cycle/edit.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Cycle/edit.js
@@ -403,9 +403,8 @@ export class CycleEdit extends Component {
      */
     cancelEdit() {
         publish('edit-dirty', false);
-        this.props.history.goBack();
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/cycle/view/${this.props.match.params.id}`);
         this.setState({showDialog: false});
-        this.props.history.goBack();
     }
 
     render() {
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Cycle/view.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Cycle/view.js
index 3d6b3a4e5fff34dc69d0155b71e4dbabc5589478..f1574f653ba783ced7d03bc887167c62474e1647 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Cycle/view.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Cycle/view.js
@@ -35,6 +35,7 @@ export class CycleView extends Component {
         }   else if (this.props.location.state && this.props.location.state.id) {
             this.state.cycleId = this.props.location.state.id;
         }
+        this.cancelView = this.cancelView.bind(this);
         this.state.redirect = this.state.cycleId?"":'/cycle'         // If no cycle id is passed, redirect to cycle list page
         this.resourceUnitMap = UnitConverter.resourceUnitMap;       // Resource unit conversion factor and constraints
     }
@@ -50,6 +51,10 @@ export class CycleView extends Component {
         this.setState({userrole: permission});
     }
 
+    cancelView(){
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/cycle`);
+    }
+
     /**
      * To get the cycle details from the backend using the service
      * 
@@ -110,7 +115,8 @@ export class CycleView extends Component {
                                         disabled: cycle.edit? !cycle.edit:true,
                                         props:{ pathname: `/cycle/edit/${this.state.cycle.name}`, 
                                         state: {id: this.state.cycle?this.state.cycle.name:''}}},
-                                        {icon: 'fa-window-close',link: this.props.history.goBack}]}/>
+                                        {icon: 'fa-window-close',
+                                         type: 'button',  actOn: 'click', props:{ callback: this.cancelView }}]}/>
                 { this.state.isLoading && <AppLoader /> }
                 { this.state.cycle &&
                     <React.Fragment>
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Project/view.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Project/view.js
index 2bf59fe21e01e20a720199cd760caf0d0bcaf649..c929cc47ff51366a4f128600ed27d16622d3b9f0 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Project/view.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Project/view.js
@@ -32,6 +32,7 @@ export class ProjectView extends Component {
         }   else if (this.props.location.state && this.props.location.state.id) {
             this.state.projectId = this.props.location.state.id;
         }
+        this.cancelView = this.cancelView.bind(this);
         this.state.redirect = this.state.projectId?"":'/project'         // If no project id is passed, redirect to Project list page
         this.resourceUnitMap = UnitConverter.resourceUnitMap;       // Resource unit conversion factor and constraints
     }
@@ -64,6 +65,9 @@ export class ProjectView extends Component {
         }
     }
 
+    cancelView(){
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/project`);
+    }
     /**
      * To get the project details from the backend using the service
      * 
@@ -116,7 +120,7 @@ export class ProjectView extends Component {
                                                 disabled: this.state.permissionById[this.state.projectId].edit?!this.state.permissionById[this.state.projectId].edit:true, 
                                                 props : { pathname: `/project/edit/${this.state.project.name}`, 
                                                         state: {id: this.state.project?this.state.project.name:''&& this.state.project}}},
-                                                {icon:'fa-window-close',title: 'Click to Close Project View', link: this.props.history.goBack}]}/>
+                                                {icon:'fa-window-close',title: 'Click to Close Project View', type: 'button',  actOn: 'click', props:{ callback: this.cancelView }}]}/>
                         { this.state.isLoading && <AppLoader /> }
                         { this.state.project &&
                             <React.Fragment>
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.create.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.create.js
index bfa70d3a2fd71f4aedb02a59a8540a70a0962288..9e5b75d2c0f4ca41322be9a61110f2cf864f76f7 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.create.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.create.js
@@ -364,9 +364,8 @@ export class ReservationCreate extends Component {
    */
     cancelCreate() {       
         publish('edit-dirty', false);
-        this.props.history.goBack();
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/su/timelineview`);
         this.setState({ showDialog: false });
-        this.props.history.goBack();
     }
 
     /**
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.edit.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.edit.js
index 0263f87a5c5ea5823cd17c10c423b9b78fda99a8..6507035bfa8c7eb293afa9a97351c89c79fad91d 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.edit.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.edit.js
@@ -164,7 +164,7 @@ export class ReservationEdit extends Component {
         const reserId = this.props.match ? this.props.match.params.id : null;
         publish('edit-dirty', false);       
         this.setState({ showDialog: false });
-        this.props.history.goBack();        
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/reservation/view/${this.props.match.params.id}`);       
     }
 
     /**
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.list.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.list.js
index aff992ee5c742cd9420160633e040d3539b7581a..351f79852bb544acdd3f6ed3eb4de310fecf4e58 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.list.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Reservation/reservation.list.js
@@ -132,6 +132,7 @@ export class ReservationList extends Component{
         this.deleteReservations = this.deleteReservations.bind(this);
         this.closeDialog = this.closeDialog.bind(this);
         this.getReservationDialogContent = this.getReservationDialogContent.bind(this);
+        this.closeList = this.closeList.bind(this);
     }
     
     async componentDidMount() {
@@ -375,6 +376,10 @@ export class ReservationList extends Component{
         this.setState({dialogVisible: false});
     }
 
+    closeList(){
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/su/timelineview`);
+    }
+
     /**
      * Create confirmation dialog details
      */
@@ -440,7 +445,7 @@ export class ReservationList extends Component{
                                     title:permissions.create?'Add Reservation': "Don't have permission to add new Reservation",
                                     disabled: permissions.create? !permissions.create: true,
                                     props : { pathname: `/reservation/create`}},
-                                     {icon: 'fa-window-close', title:'Click to close Reservation list', props : { pathname: `/su/timelineview`}}]}/>     
+                                     {icon: 'fa-window-close', title:'Click to close Reservation list', type: 'button',  actOn: 'click', props:{ callback: this.closeList }}]}/>     
                  {this.state.isLoading? <AppLoader /> : (this.state.reservationsList && this.state.reservationsList.length>0) ?
                  <>
                  {permissions.list?
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/SchedulingUnitList.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/SchedulingUnitList.js
index 990c1afc455317df16cbb52108fedb0fa2825449..2c6eaa352b1431300bf8f968aad7f296d4164652 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/SchedulingUnitList.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/SchedulingUnitList.js
@@ -701,7 +701,8 @@ class SchedulingUnitList extends Component{
     /**
      * Check and delete the selected Scheduling Unit(s)
      */
-    checkAndDeleteSchedulingUnit() {
+    checkAndDeleteSchedulingUnit(e) {
+        e.preventDefault();
         this.pageUpdated = false;
         this.suDraftsList = [];
         this.suBlueprintList = [];
@@ -936,7 +937,8 @@ class SchedulingUnitList extends Component{
     }
 
     //Confirmation to Copy Scheduling Unit
-    confirmCopyingSU() {
+    confirmCopyingSU(e) {
+        e.preventDefault();
         if (this.selectedRows.length > 0) {
             let dialog = this.state.dialog;
             dialog.type = "confirmation";
@@ -1040,7 +1042,8 @@ class SchedulingUnitList extends Component{
      * If no selected scheduling unit is cancellable, show info to select a cancellable scheduling unit.
      * 
      */
-    confirmCancelSchedulingUnit() {
+    confirmCancelSchedulingUnit(e) {
+        e.preventDefault();
         this.pageUpdated = false;
         let selectedBlueprints = this.selectedRows.filter(schedulingUnit => {
                                         return schedulingUnit.type === 'Blueprint' && 
@@ -1263,7 +1266,8 @@ class SchedulingUnitList extends Component{
     /**
     * Function to invoke form UI to create cleanup task
     */
-    async cleanUpSUTask() {
+    async cleanUpSUTask(e) {
+        e.preventDefault();
         this.pageUpdated = false; 
        if (this.selectedRows.length > 0) {
            this.suBlueprintList = _.filter(this.selectedRows, (schedulingUnit) => { return schedulingUnit.type.toLowerCase() === "blueprint"});
@@ -1365,7 +1369,8 @@ class SchedulingUnitList extends Component{
     /**
      * Function to call the SUBCreator component's function to check and create SUBs
      */
-    checkAndCreateSUB() {
+    checkAndCreateSUB(e) {
+        e.preventDefault();
         if (this.selectedRows.length > 0) {
             const suBlueprintList = _.filter(this.selectedRows, (schedulingUnit) => { return schedulingUnit.type.toLowerCase() === "blueprint"});
             const suDraftsList = _.filter(this.selectedRows, (schedulingUnit) => { return schedulingUnit.type.toLowerCase() === "draft"});
@@ -1414,7 +1419,8 @@ class SchedulingUnitList extends Component{
     /**
      * Confirm to Prevent/Allow Automatic Deletion for selected SU draft(s)/blueprint(s)
      */
-    async confirmAutoDeletion() {
+    async confirmAutoDeletion(e) {
+        e.preventDefault();
         if (this.selectedRows.length > 0) {
             let dialog = this.state.dialog;
             dialog.type = "confirmation";
@@ -1530,7 +1536,7 @@ class SchedulingUnitList extends Component{
                                 <>
                                 {this.state.suType === 'Draft' &&
                                     <>
-                                        <a href="#" style={{marginLeft: "5px"}} onClick={this.checkAndCreateSUB} 
+                                        <a href="#" style={{marginLeft: "5px"}} onClick={(e)=> this.checkAndCreateSUB(e)} 
                                             title={this.state.userrole && this.state.userrole.userRolePermission.scheduleunit && this.state.userrole.userRolePermission.scheduleunit.createsub ? "Create Blueprint(s)":`${this.access_denied_message} to create Blueprint(s)`} >
                                             <i class= {this.state.userrole && this.state.userrole.userRolePermission.scheduleunit && this.state.userrole.userRolePermission.scheduleunit.createsub ?"fa fa-stamp":"fa fa-disabled fa-stamp"} 
                                             aria-hidden="true" ></i>
@@ -1539,28 +1545,28 @@ class SchedulingUnitList extends Component{
                                 }
                                 {this.state.suType === 'Blueprint' &&
                                     <>
-                                        <a href="#" style={{marginLeft: "5px"}} onClick={this.cleanUpSUTask}
+                                        <a href="#" style={{marginLeft: "5px"}} onClick={(e) => this.cleanUpSUTask(e)}
                                             title={this.state.userrole && this.state.userrole.userRolePermission.task_blueprint && this.state.userrole.userRolePermission.task_blueprint.canceltask ? "Create Clean-up Task(s)":`${this.access_denied_message} to create Clean-up Task(s)`} > 
                                             <i class={this.state.userrole && this.state.userrole.userRolePermission.task_blueprint && this.state.userrole.userRolePermission.task_blueprint.canceltask?"fa fa-recycle":"fa fa-disabled fa-recycle"}
                                             aria-hidden="true" ></i>
                                         </a>
-                                        <a href="#" style={{marginLeft: "5px"}} onClick={this.confirmCancelSchedulingUnit}
+                                        <a href="#" style={{marginLeft: "5px"}} onClick={(e) => this.confirmCancelSchedulingUnit(e)}
                                             title={this.state.userrole && this.state.userrole.userRolePermission.scheduleunit_blueprint && this.state.userrole.userRolePermission.scheduleunit_blueprint.edit ? "Cancel selected Scheduling Unit(s)":`${this.access_denied_message} to cancel Scheduling Unit(s)`} > 
                                             <i class={this.state.userrole && this.state.userrole.userRolePermission.scheduleunit_blueprint && this.state.userrole.userRolePermission.scheduleunit_blueprint.edit?"fa fa-ban":"fa fa-disabled fa-ban"}
                                             aria-hidden="true" ></i>
                                         </a>
                                     </>
                                 }
-                                <a href="#" style={{marginLeft: "5px"}} onClick={this.confirmAutoDeletion} 
+                                <a href="#" style={{marginLeft: "5px"}} onClick={(e) => this.confirmAutoDeletion(e)} 
                                     title={this.state.userrole && this.state.userrole.userRolePermission.scheduleunit && this.state.userrole.userRolePermission.scheduleunit.autodeletion ? "Prevent/Allow Automatic Deletion":`${this.access_denied_message} to allow/prevent Automatic Deletion`} > 
                                     <i class={this.state.userrole && this.state.userrole.userRolePermission.scheduleunit && this.state.userrole.userRolePermission.scheduleunit.autodeletion?"fa fa-thumbtack":"fa fa-disabled fa-thumbtack"}
                                     aria-hidden="true" ></i>
                                 </a>
-                                <a href="#" style={{marginLeft: "5px"}} onClick={this.confirmCopyingSU}
+                                <a href="#" style={{marginLeft: "5px"}} onClick={(e) => this.confirmCopyingSU(e)}
                                     title={this.state.userrole && this.state.userrole.userRolePermission.scheduleunit && this.state.userrole.userRolePermission.scheduleunit.copysu ? "Copy Scheduling Unit(s) Draft/Blueprint":`${this.access_denied_message} to copy Scheduling Unit(s)`} > 
                                     <i class={this.state.userrole && this.state.userrole.userRolePermission.scheduleunit && this.state.userrole.userRolePermission.scheduleunit.copysu?"fa fa-copy":"fa fa-disabled fa-copy"} ></i>
                                 </a>                                
-                                <a href="#"  style={{marginLeft: "5px"}} onClick={this.checkAndDeleteSchedulingUnit} 
+                                <a href="#"  style={{marginLeft: "5px"}} onClick={(e) => this.checkAndDeleteSchedulingUnit(e)} 
                                     title={this.state.userrole && this.state.userrole.userRolePermission.scheduleunit && this.state.userrole.userRolePermission.scheduleunit.delete ? "Delete selected Scheduling Unit(s)":`${this.access_denied_message} to delete Scheduling Unit(s)`} > 
                                     <i class={this.state.userrole && this.state.userrole.userRolePermission.scheduleunit && this.state.userrole.userRolePermission.scheduleunit.delete?"fa fa-trash":"fa fa-disabled fa fa-trash"}
                                     aria-hidden="true" ></i>
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/ViewSchedulingUnit.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/ViewSchedulingUnit.js
index 7fb8a366271baa5d7ccc256c3778af6ed8a64c6a..0ba2ef4aba472b929be1553ebe02246e69ea8f87 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/ViewSchedulingUnit.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/ViewSchedulingUnit.js
@@ -203,6 +203,7 @@ class ViewSchedulingUnit extends Component {
         this.getCleanUpDialogContent = this.getCleanUpDialogContent.bind(this);
         this.cleanUpSUTask = this.cleanUpSUTask.bind(this);
         this.confirmAutoDeletion = this.confirmAutoDeletion.bind(this);
+        this.cancelView = this.cancelView.bind(this);
         this.getFilterOptions = this.getFilterOptions.bind(this);
     }
 
@@ -262,6 +263,10 @@ class ViewSchedulingUnit extends Component {
 
     }
 
+    cancelView(){
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/schedulingunit`);
+    }
+
     toggleBySorting = (sortData) => {
         UtilService.localStore({ type: 'set', key: this.lsKeySortColumn, value: sortData });
     }
@@ -386,7 +391,7 @@ class ViewSchedulingUnit extends Component {
             disabled: userPermissions.scheduleunit && userPermissions.scheduleunit.delete?canDelete?false:true : true,
             type: 'button', actOn: 'click', props: { callback: this.showDeleteSUConfirmation }
         });
-        this.actions.push({ icon: 'fa-window-close', title: 'Click to Close Scheduling Unit View', link: this.props.history.goBack });
+        this.actions.push({ icon: 'fa-window-close', title: 'Click to Close Scheduling Unit View', type: 'button',  actOn: 'click', props:{ callback: this.cancelView }});
         if (this.props.match.params.type ==='draft') {           
            let blueprintExist = this.state.scheduleunit && this.state.scheduleunit.scheduling_unit_blueprints && this.state.scheduleunit.scheduling_unit_blueprints.length>0;
             if(isIngestPresent) {
@@ -1404,14 +1409,14 @@ class ViewSchedulingUnit extends Component {
                                 <>
                                     {this.props.match.params.type === 'draft' &&
                                     <>
-                                        <a href="#" onClick={this.confirmCancelTasks} 
+                                        <button className="p-link" href="#" onClick={this.confirmCancelTasks} 
                                         title={userPermissions.task_draft.canceltask?"Cancel selected Task(s)": `${this.access_denied_message} to cancel Task(s)`}>
                                             <i class={userPermissions.task_draft.canceltask?"fa fa-ban":"fa fa-ban fa-disabled"} aria-hidden="true" ></i>
-                                        </a>
-                                        <a href="#" style={{ pointerEvents: this.props.disabled ? 'none' : 'auto' }}onClick={this.confirmDeleteTasks} 
+                                        </button>
+                                        <button className="p-link" href="#" style={{ pointerEvents: this.props.disabled ? 'none' : 'auto' }}onClick={this.confirmDeleteTasks} 
                                             title={userPermissions.task.delete?"Delete selected Task(s)": `${this.access_denied_message} to delete Task(s)`} >
                                             <i class={userPermissions.task.delete?"fa fa-trash":"fa fa-trash fa-disabled"}  aria-hidden="true" ></i>
-                                        </a>
+                                        </button>
                                     </>
                                     }
                                     {this.props.match.params.type === 'blueprint' &&
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/create.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/create.js
index 069dd9273fb2ae3ae9ffad52bc369fb15a57ad63..1e057e96251ac18e891b7a9f2e7ac00600bebd8b 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/create.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/create.js
@@ -449,9 +449,8 @@ export class SchedulingUnitCreate extends Component {
      */
     cancelCreate() {
         publish('edit-dirty', false);
-        this.props.history.goBack();
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push('/schedulingunit');
         this.setState({showDialog: false});
-        this.props.history.goBack();
     }
 
     constraintStrategy(e){
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/edit.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/edit.js
index 91bddd3e2f2ceaab7c338f4649272b221725f08b..a34c98651951fd8cb8bf54d08e87d4b6dda5e707 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/edit.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/edit.js
@@ -430,9 +430,8 @@ export class EditSchedulingUnit extends Component {
      */
     cancelCreate() {
         publish('edit-dirty', false);
-        this.props.history.goBack();
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/schedulingunit`);
         this.setState({showDialog: false});
-        this.props.history.goBack();
     }
 
     constraintStrategy(schema, initValue){
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/excelview.schedulingset.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/excelview.schedulingset.js
index 95fda18c6276c0680563bfc3935994401069220f..b43942a7d7f9bdc39da30a39da78696cef8c242c 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/excelview.schedulingset.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Scheduling/excelview.schedulingset.js
@@ -2143,7 +2143,7 @@ export class SchedulingSetCreate extends Component {
      */
       cancelCreate() {
         publish('edit-dirty', false);
-        this.setState({redirect: '/schedulingunit'});
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/schedulingunit`);
     }
 
     /**
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/edit.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/edit.js
index a71b2eb11b091630e4c802669f30fbe498c7e6e5..4394a790448032f02b436f361f40cf5deec096fc 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/edit.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/edit.js
@@ -174,9 +174,9 @@ export class TaskEdit extends Component {
 
     cancelEdit() {
         publish('edit-dirty', false);
-        this.props.history.goBack();
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/task`);
         this.setState({showDialog: false});
-        this.props.history.goBack();
+        
     }
 
     async componentDidMount() {
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/view.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/view.js
index b555a998d89141df6a14e5e032be7d11364213c5..741fd04ca60ab970256eec535c09a389ba6a30e0 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/view.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Task/view.js
@@ -44,6 +44,7 @@ export class TaskView extends Component {
         this.getTaskDeleteDialogContent = this.getTaskDeleteDialogContent.bind(this);
         this.showCancelConfirmation = this.showCancelConfirmation.bind(this);
         this.cancelTask = this.cancelTask.bind(this);
+        this.cancelView = this.cancelView.bind(this);
         
         
         if (this.props.match.params.id) {
@@ -180,6 +181,10 @@ export class TaskView extends Component {
         this.setState({confirmDialogVisible: false});
     }
 
+    cancelView(){
+        this.props.history.length>1?this.props.history.goBack():this.props.history.push(`/project`);
+    }
+
     /**
      * Delete Task
      */
@@ -282,7 +287,7 @@ export class TaskView extends Component {
                         this.state.permissionById && this.state.permissionById[this.state.taskId].delete? 'Delete Task': `${this.access_denied_message} to delete`,  
                         type: 'button',  disabled: this.state.hasBlueprint, actOn: 'click', props:{ callback: this.showDeleteConfirmation}});
         actions.push({  icon: 'fa-window-close', link: this.props.history.goBack,
-                        title:'Click to Close Task', props : { pathname:'/schedulingunit' }});
+                        title:'Click to Close Task', type: 'button',  actOn: 'click', props:{ callback: this.cancelView }});
 
         // Child component to render predecessors and successors list
         const TaskRelationList = ({ list }) => (
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/view.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/view.js
index 4cce86576d2feee1c0766a9b237886225ae14fb5..da7b6ff5f534d7a7f87df5ab5b31170c8021c47c 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/view.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/view.js
@@ -140,8 +140,9 @@ export class TimelineView extends Component {
         const timelinePermission = permission.userRolePermission.timeline;
         
         let taskTypes = []
-        let menuOptions = [{ label: 'Add Reservation', icon: "fa fa-", disabled: !timelinePermission.addreservation, command: () => { this.selectOptionMenu('Add Reservation') } },
-        { label: 'Reservation List', icon: "fa fa-", disabled: !timelinePermission.listreservation, command: () => { this.selectOptionMenu('Reservation List') } },
+        let menuOptions = [{ label: 'Add Reservation', icon: "fa fa-", disabled: !timelinePermission.addreservation, command: (e) => { this.selectOptionMenu(e, 'Add Reservation') } },
+        { label: 'Reservation List', icon: "fa fa-", disabled: !timelinePermission.listreservation, command: (e) => { 
+             this.selectOptionMenu(e, 'Reservation List') } },
         ]
         this.setState({menuOptions: menuOptions, loader: true });
         TaskService.getTaskTypes().then(results => {taskTypes = results});
@@ -967,14 +968,26 @@ export class TimelineView extends Component {
         this.optionsMenu.toggle(event);
     }
 
-    selectOptionMenu(menuName) {
+    selectOptionMenu(e, menuName) {
         switch (menuName) {
             case 'Reservation List': {
-                this.setState({ redirect: `/reservation/list` });
+                if(e.originalEvent.ctrlKey) {
+                    window.open('/reservation/list','_blank');
+                }
+                else {
+                    this.props.history.push('/reservation/list');
+                    this.setState({ redirect: `/reservation/list` });
+                }
                 break;
             }
             case 'Add Reservation': {
-                this.setState({ redirect: `/reservation/create` });
+                if(e.originalEvent.ctrlKey) {
+                    window.open('/reservation/create','_blank');
+                }
+                else {
+                    this.props.history.push('/reservation/create')
+                    this.setState({ redirect: `/reservation/create`});
+                } 
                 break;
             }
             default: {
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/week.view.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/week.view.js
index 14cecc28ade9d431a96f94a064f5d799490bad29..a4690fda9d0d2cf645b4dba37bddda93fe958de6 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/week.view.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Timeline/week.view.js
@@ -107,9 +107,11 @@ export class WeekTimelineView extends Component {
     async componentDidMount() {
         this.getStatusList();
         const permission = await AuthUtil.getUserRolePermission();
+        const timelinePermission = permission.userRolePermission.timeline;
         const weekviewPermission = permission.userRolePermission.weekoverview;
-        let menuOptions = [{ label: 'Add Reservation', icon: "fa fa-", disabled: !weekviewPermission.addreservation, command: () => { this.selectOptionMenu('Add Reservation') } },
-        { label: 'Reservation List', icon: "fa fa-", disabled: !weekviewPermission.listreservation, command: () => { this.selectOptionMenu('Reservation List') } },
+        let menuOptions = [{ label: 'Add Reservation', icon: "fa fa-", disabled: !timelinePermission.addreservation, command: (e) => { this.selectOptionMenu(e, 'Add Reservation') } },
+        { label: 'Reservation List', icon: "fa fa-", disabled: !timelinePermission.listreservation, command: (e) => { 
+             this.selectOptionMenu(e, 'Reservation List') } },
         ]
         this.setState({menuOptions: menuOptions, userPermission: weekviewPermission});
 
@@ -572,14 +574,26 @@ export class WeekTimelineView extends Component {
         this.optionsMenu.toggle(event);
     }
 
-    selectOptionMenu(menuName) {
+    selectOptionMenu(e, menuName) {
         switch (menuName) {
             case 'Reservation List': {
-                this.setState({ redirect: `/reservation/list` });
+                if(e.originalEvent.ctrlKey) {
+                    window.open('/reservation/list','_blank');
+                }
+                else {
+                    this.props.history.push('/reservation/list');
+                    this.setState({ redirect: `/reservation/list` });
+                }
                 break;
             }
             case 'Add Reservation': {
-                this.setState({ redirect: `/reservation/create` });
+                if(e.originalEvent.ctrlKey) {
+                    window.open('/reservation/create','_blank');
+                }
+                else {
+                    this.props.history.push('/reservation/create')
+                    this.setState({ redirect: `/reservation/create`});
+                } 
                 break;
             }
             default: {
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/index.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/index.js
index c36001e6cd4a2d0af57f762ee13a8fd43960b1d1..43a99a7955af30d8cdc478e9eb59ece2b0454646 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/index.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/index.js
@@ -238,6 +238,9 @@ export default (props) => {
         let title = getStepItems()[currentView - 1].label;
         return title;
     }
+    const cancelView = () => {
+        props.history.length>1? props.history.goBack(): props.history.push(`/su/workflow`);
+    }
     
     return (
         
@@ -246,7 +249,7 @@ export default (props) => {
             {currentStep && 
             <PageHeader location={props.location} title={getTitle()} 
                 actions={[{type:'ext_link', icon:'', label: 'SDC Helpdesk', title: 'Report major issues here', props: { pathname: 'https://support.astron.nl/sdchelpdesk' } },
-                            {icon: 'fa-window-close', link: props.history.goBack, title: 'Click to Close Workflow', props: { pathname: '/schedulingunit/1/workflow' } },
+                            {icon: 'fa-window-close', title: 'Click to Close Workflow', type: 'button',  actOn: 'click', props:{ callback: cancelView }},
                         ]} />}
             {loader && <AppLoader />}
             {!loader && schedulingUnit &&
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/workflow.list.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/workflow.list.js
index d0167fada5277696821f2d362d3da1270fef629d..72352a6a07c1dc2c3609b92bf570d40c38686f3f 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/workflow.list.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Workflow/workflow.list.js
@@ -200,7 +200,7 @@ class WorkflowList extends Component{
      * Go back to previous page
      */
     close() {
-        this.props.history.goBack();
+        this.props.history.push('/');
     }
 
      /**
@@ -308,8 +308,7 @@ class WorkflowList extends Component{
                 {project && project.list ?
                     <>
                         <PageHeader location={this.props.location} title={'Workflow - List'} 
-                                    actions={[{icon: 'fa-window-close', title:'Click to Close Workflow - List', 
-                                    type: 'button',  actOn: 'click', props:{ callback: this.close }}]}/>
+                                    actions={[]}/>
                         <div style={{marginTop: '15px'}}>
                         {this.state.isLoading ? <AppLoader/> : (this.state.workflowProcessList.length>0 )?
                             <>