summaryrefslogtreecommitdiffstats
path: root/ecomp-portal-FE-common/client/app/views/role/rolefunctionpopupController.js
blob: 412415006c0c814db439b3437503f0837a422e98 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
/*-
 * ================================================================================
 * ECOMP Portal
 * ================================================================================
 * Copyright (C) 2017 AT&T Intellectual Property
 * ================================================================================
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * ================================================================================
 */
app.controller('rolefunctionpopupController',function($scope, confirmBoxService, message, $http,RoleService, conf, isEditing) {
					if (message.availableRoleFunction == null) {
						$scope.label = 'Add Role Function';
						var tempText = "";
					} else {
						$scope.label = 'Edit Role Function'
						$scope.disableCd = true;
						var tempText = new String(message.availableRoleFunction.name);
						$scope.editRoleFunction = angular.copy(message.availableRoleFunction);
					}

					$scope.tempText = tempText;
					$scope.isEditing = isEditing;

					$scope.saveRoleFunction = function(availableRoleFunction) {
						confirmBoxService.confirm(
										"You are about to Create the role function "+ availableRoleFunction.name+ ". Do you want to continue?")
								.then(function(confirmed) {
											if (confirmed) {

												var uuu = conf.api.saveRoleFunction;
												var postData = availableRoleFunction;

												if (availableRoleFunction == null) {
													confirmBoxService.showInformation("Please enter valid role function details.");
												}
												var exists = false, x;
												for (x in message.availableRoleFunctions) {
													console.log(message.availableRoleFunctions[x].name);
													if (message.availableRoleFunctions[x].name == availableRoleFunction.name) {
														confirmBoxService.showInformation("Role Function already exists.");
														exists = true;
														availableRoleFunction.name = $scope.tempText;
														break;
													}
													if (!isEditing) {
														if (message.availableRoleFunctions[x].code == availableRoleFunction.code) {
															confirmBoxService.showInformation("Code already exists. Please create a role function with a different code to proceed.");
															exists = true;
															availableRoleFunction.name = $scope.tempText;
															break;
														}
													}
												}

												if (!exists&& availableRoleFunction.name.trim() != ''&& availableRoleFunction.code.trim() != '') {
													$http.post(uuu,JSON.stringify(postData)).then(function(res) {
																		$scope.availableRoleFunctionsTemp = res.data.availableRoleFunctions;
																		RoleService.getRoleFunctionList().then(
																						function(data) {

																							var j = data;
																							$scope.data = JSON.parse(j.data);
																							$scope.availableRoleFunctions = JSON.parse($scope.data.availableRoleFunctions);

																							// $scope.resetMenu();
																							/*$scope.closeThisDialog({
																										result : true,
																										availableRoleFunctions : $scope.availableRoleFunctions
																									});*/
																							$scope.$dismiss({result : true,availableRoleFunctions : $scope.availableRoleFunctions});
																						},
																						function(error) {
																							console.log("failed");
																							// reloadPageOnce();
																							//$scope.closeThisDialog(true);
																							$scope.$dismiss('cancel');
																						});

																	});

												}
											};

											$scope.close = function() {
												this.closeThisDialog(true);
											};
										}

								);
					}
				});