From: Jason Etheridge Date: Mon, 15 May 2023 09:12:32 +0000 (-0400) Subject: moveNodeElsewhere X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=cfc726dc18051033884546d56c8c71d1d1add46e;p=working%2FEvergreen.git moveNodeElsewhere Signed-off-by: Jason Etheridge --- diff --git a/Open-ILS/src/eg2/src/app/staff/admin/server/admin-server.module.ts b/Open-ILS/src/eg2/src/app/staff/admin/server/admin-server.module.ts index cd267fd19e..331cdc38d0 100644 --- a/Open-ILS/src/eg2/src/app/staff/admin/server/admin-server.module.ts +++ b/Open-ILS/src/eg2/src/app/staff/admin/server/admin-server.module.ts @@ -4,6 +4,7 @@ import {AdminCommonModule} from '@eg/staff/admin/common.module'; import {AdminServerRoutingModule} from './routing.module'; import {AdminServerSplashComponent} from './admin-server-splash.component'; import {CustomOrgUnitTreesComponent} from './custom-org-unit-trees.component'; +import {CustomOrgUnitTreesDialogComponent} from './custom-org-unit-trees-dialog.component'; import {OrgUnitTypeComponent} from './org-unit-type.component'; import {PrintTemplateComponent} from './print-template.component'; import {SampleDataService} from '@eg/share/util/sample-data.service'; @@ -20,6 +21,7 @@ generated UI's into lazy-loadable sub-mobules. */ AdminServerSplashComponent, OrgUnitTypeComponent, CustomOrgUnitTreesComponent, + CustomOrgUnitTreesDialogComponent, PrintTemplateComponent, PermGroupTreeComponent, PermGroupMapDialogComponent diff --git a/Open-ILS/src/eg2/src/app/staff/admin/server/custom-org-unit-trees.component.html b/Open-ILS/src/eg2/src/app/staff/admin/server/custom-org-unit-trees.component.html index a543cef990..7536934d82 100644 --- a/Open-ILS/src/eg2/src/app/staff/admin/server/custom-org-unit-trees.component.html +++ b/Open-ILS/src/eg2/src/app/staff/admin/server/custom-org-unit-trees.component.html @@ -13,6 +13,10 @@ dialogBody="Delete Org Unit {{selected ? selected.label : ''}}?"> + + +

Full Org Unit Tree

@@ -43,6 +47,7 @@ +
diff --git a/Open-ILS/src/eg2/src/app/staff/admin/server/custom-org-unit-trees.component.ts b/Open-ILS/src/eg2/src/app/staff/admin/server/custom-org-unit-trees.component.ts index 8077096e78..fe3696579a 100644 --- a/Open-ILS/src/eg2/src/app/staff/admin/server/custom-org-unit-trees.component.ts +++ b/Open-ILS/src/eg2/src/app/staff/admin/server/custom-org-unit-trees.component.ts @@ -9,6 +9,7 @@ import {PcrudService} from '@eg/core/pcrud.service'; import {StringComponent} from '@eg/share/string/string.component'; //import {StringService} from '@eg/share/string/string.service'; import {ConfirmDialogComponent} from '@eg/share/dialog/confirm.component'; +import {CustomOrgUnitTreesDialogComponent} from './custom-org-unit-trees-dialog.component'; @Component({ templateUrl: './custom-org-unit-trees.component.html', @@ -26,10 +27,12 @@ export class CustomOrgUnitTreesComponent implements OnInit { deleteNodesDisabled = true; moveNodeUpDisabled = true; moveNodeDownDisabled = true; + moveNodeElsewhereDisabled = true; @ViewChild('editString', { static: true }) editString: StringComponent; @ViewChild('errorString', { static: true }) errorString: StringComponent; @ViewChild('delConfirm', { static: true }) delConfirm: ConfirmDialogComponent; + @ViewChild('moveNodeElsewhereDialog', { static: true }) moveNodeElsewhereDialog: CustomOrgUnitTreesDialogComponent; constructor( //private idl: IdlService, @@ -176,6 +179,7 @@ export class CustomOrgUnitTreesComponent implements OnInit { this.deleteNodesDisabled = !this.isDeleteNodesAllowed(); this.moveNodeUpDisabled = !this.isMoveNodeUpAllowed(); this.moveNodeDownDisabled = !this.isMoveNodeDownAllowed(); + this.moveNodeElsewhereDisabled = !this.isMoveNodeElsewhereAllowed(); } custom_nodeClicked($event: any) { @@ -185,6 +189,7 @@ export class CustomOrgUnitTreesComponent implements OnInit { this.deleteNodesDisabled = !this.isDeleteNodesAllowed(); this.moveNodeUpDisabled = !this.isMoveNodeUpAllowed(); this.moveNodeDownDisabled = !this.isMoveNodeDownAllowed(); + this.moveNodeElsewhereDisabled = !this.isMoveNodeElsewhereAllowed(); } nodeChecked($event: any) { @@ -270,6 +275,9 @@ export class CustomOrgUnitTreesComponent implements OnInit { if (this.deleteNodesDisabled) { return; } + if (! window.confirm($localize`Are you sure?`)) { + return; + } for (let targetNode of targetNodes) { if (targetNode !== this.custom_tree.rootNode) { console.log('removing node',targetNode); @@ -302,6 +310,7 @@ export class CustomOrgUnitTreesComponent implements OnInit { moveNodeUp() { this.moveNodeUpDisabled = !this.isMoveNodeUpAllowed(); this.moveNodeDownDisabled = !this.isMoveNodeDownAllowed(); + this.moveNodeElsewhereDisabled = !this.isMoveNodeElsewhereAllowed(); const selectedNode = this.custom_tree.selectedNode(); if (this.moveNodeUpDisabled) { return; @@ -317,6 +326,7 @@ export class CustomOrgUnitTreesComponent implements OnInit { this.custom_tree.nodeList(); // re-index this.moveNodeUpDisabled = !this.isMoveNodeUpAllowed(); this.moveNodeDownDisabled = !this.isMoveNodeDownAllowed(); + this.moveNodeElsewhereDisabled = !this.isMoveNodeElsewhereAllowed(); } } } @@ -345,6 +355,7 @@ export class CustomOrgUnitTreesComponent implements OnInit { moveNodeDown() { this.moveNodeDownDisabled = !this.isMoveNodeDownAllowed(); this.moveNodeUpDisabled = !this.isMoveNodeUpAllowed(); + this.moveNodeElsewhereDisabled = !this.isMoveNodeElsewhereAllowed(); const selectedNode = this.custom_tree.selectedNode(); if (this.moveNodeDownDisabled) { return; @@ -360,9 +371,30 @@ export class CustomOrgUnitTreesComponent implements OnInit { this.custom_tree.nodeList(); // re-index this.moveNodeDownDisabled = !this.isMoveNodeDownAllowed(); this.moveNodeUpDisabled = !this.isMoveNodeUpAllowed(); + this.moveNodeElsewhereDisabled = !this.isMoveNodeElsewhereAllowed(); } } } + isMoveNodeElsewhereAllowed(): boolean { + const selectedNodes = this.custom_tree.selectedNodes(); + return selectedNodes.length === 1 && selectedNodes[0] !== this.custom_tree.rootNode; + } + + moveNodeElsewhere() { + const selectedNode = this.custom_tree.selectedNode(); + console.log(selectedNode); + this.moveNodeElsewhereDialog.open({size: 'lg'}).subscribe( + result => { + console.log('modal result',result); + if (result) { + this.custom_tree.nodeList(); // re-index + this.moveNodeDownDisabled = !this.isMoveNodeDownAllowed(); + this.moveNodeUpDisabled = !this.isMoveNodeUpAllowed(); + this.moveNodeElsewhereDisabled = !this.isMoveNodeElsewhereAllowed(); + } + } + ); + } }