| | |
| | | // 로그 제어 |
| | | $logProvider.debugEnabled(true); |
| | | }) |
| | | .run(function ($rootScope, $state, $sce, $log, $injector, $translate, $tableProvider, Principal, Auth, Language, SweetAlert, $filter, Workspace, $resourceProvider, User, constants, Project) { |
| | | .run(function ($rootScope, $state, $sce, $log, $injector, $translate, $tableProvider, $relProvider, $downProvider, Principal, Auth, Language, SweetAlert, $filter, Workspace, $resourceProvider, User, constants, Project) { |
| | | |
| | | $rootScope.$state = $state; |
| | | // html 태그 웹 보안 적용하여 바인딩. |
| | |
| | | file : 314572800 // 100MB |
| | | }; |
| | | |
| | | $rootScope.isMainSearch = false; // 통합 검색 여부 |
| | | |
| | | // 테이블 설정 및 기능을 관리하는 서비스 |
| | | $rootScope.$tableProvider = $tableProvider; |
| | | |
| | | // 연관테이블 설정 및 기능 관리하는 서비스 |
| | | $rootScope.$relProvider = $relProvider; |
| | | |
| | | // 하위테이블 설정 및 기능 관리하는 서비스 |
| | | $rootScope.$downProvider = $downProvider; |
| | | |
| | | // html tag convert - 신뢰할 수 있는 입력 값일 때만 사용, 사용자가 등록하는 값에는 사용 금지 |
| | | $rootScope.trustAsHtml = function (string) { |
| | |
| | | |
| | | // 권한 리스트 |
| | | $rootScope.mngPermission = { |
| | | "USER_PERMISSION_MNG_WORKSPACE" : 4096, |
| | | "USER_PERMISSION_MNG_PROJECT" : 2048, |
| | | "USER_PERMISSION_MNG_WORKSPACE" : 16384, |
| | | "USER_PERMISSION_MNG_PROJECT" : 8192, |
| | | "USER_PERMISSION_MNG_ISSUE" : 4096, |
| | | "USER_PERMISSION_MNG_PARTNER" : 2048, |
| | | "USER_PERMISSION_MNG_API" : 1024, |
| | | "USER_PERMISSION_MNG_ISSUE_STATUS" : 512, |
| | | "USER_PERMISSION_MNG_WORKFLOW" : 256, |
| | |
| | | "USER_PERMISSION_MNG_GUIDE" : 2, |
| | | }; |
| | | |
| | | // 쿠키 저장 |
| | | $rootScope.setCookie = function (name, value, exp) { |
| | | var date = new Date(); |
| | | date.setTime(date.getTime() + exp*24*60*60*1000); |
| | | document.cookie = name + '=' + value + ';expires=' + date.toUTCString() + ';path=/'; |
| | | }; |
| | | |
| | | // 쿠키 가져오기 |
| | | $rootScope.getCookie = function (name) { |
| | | var value = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)'); |
| | | return value? value[2] : null; |
| | | } |
| | | |
| | | // 쿠키 삭제 |
| | | $rootScope.deleteCookie = function (name) { |
| | | document.cookie = name + '=; expires=Thu, 01 Jan 1999 00:00:10 GMT;'; |
| | | } |
| | | |
| | | // 현재 선택된 이슈 타입 아이디 가져오기 |
| | | $rootScope.getCurrentIssueTypeId = function () { |
| | | return $rootScope.issueTypeMenu != null ? $rootScope.issueTypeMenu.id : null; |
| | | } |
| | | |
| | | // 현재 선택된 이슈 타입 변경하기 |
| | | $rootScope.setCurrentIssueTypeId = function (issueTypeVo) { |
| | | if($rootScope.issueTypeMenu !== issueTypeVo) { |
| | | $rootScope.issueTypeMenu = issueTypeVo; |
| | | } |
| | | } |
| | | |
| | | // 권한을 확인한다 |
| | | $rootScope.checkMngPermission = function (userPermission) { |
| | | if (!$rootScope.isDefined($rootScope.user)) { |
| | | return false; |
| | | } |
| | | var permissionVal = $rootScope.mngPermission[userPermission]; |
| | | |
| | | if (($rootScope.user.permission & permissionVal) !== 0) { |
| | | return true; |
| | | } |
| | | |
| | | return false; |
| | | }; |
| | | |
| | | // $rootScope.getMyInfo = function () { |
| | | // |
| | | // User.findMyLevelAndDepartment($resourceProvider.getContent({}, |
| | | // $resourceProvider.getPageContent(0, 0))).then(function (result) { |
| | | // |
| | | // if (result.data.message.status === "success") { |
| | | // $rootScope.myLevel = result.data.data.levelName |
| | | // $rootScope.myDepartments = result.data.data.departmentName |
| | | // } |
| | | // }); |
| | | // } |
| | | |
| | | /*$rootScope.checkMngPermissionViewIssueAndProject = function (userPermission) { |
| | | if (!$rootScope.isDefined($rootScope.user)) { |
| | | return false; |
| | | } |
| | |
| | | } |
| | | |
| | | return false; |
| | | }; |
| | | };*/ |
| | | |
| | | // setting 관리자인지 확인한다. |
| | | $rootScope.checkMngPermissionSettings = function () { |
| | | if (!$rootScope.isDefined($rootScope.user)) { |
| | | return false; |
| | | } |
| | | // 부서명 배열 합치기 |
| | | if ($rootScope.user.departmentVos.length > 0) { |
| | | $rootScope.departments = ''; |
| | | let separator = ','; |
| | | |
| | | for (let i = 0; i < $rootScope.user.departmentVos.length; i++) { |
| | | $rootScope.departments += $rootScope.user.departmentVos[i].departmentName + |
| | | (i === $rootScope.user.departmentVos.length - 1 ? '': separator); |
| | | } |
| | | } |
| | | |
| | | var permissionVal = $rootScope.mngPermission['USER_PERMISSION_MNG_ISSUE_STATUS']; |
| | |
| | | return false; |
| | | }; |
| | | |
| | | $rootScope.changeLastProject = function (projectId, reload = true) { |
| | | if (User != null) { |
| | | User.updateLastProject($resourceProvider.getContent( |
| | | {lastProjectId: projectId}, |
| | | $resourceProvider.getPageContent(0, 0))).then(function (result) { |
| | | $rootScope.changeLastProject = function (projectId, reload = true, onEvent = true) { |
| | | if ($rootScope.workProject == null || $rootScope.workProject.id !== projectId ) { |
| | | if (User != null) { |
| | | User.updateLastProject($resourceProvider.getContent( |
| | | {lastProjectId: projectId}, |
| | | $resourceProvider.getPageContent(0, 0))).then(function (result) { |
| | | |
| | | if (result.data.message.status === "success") { |
| | | $rootScope.user = result.data.data; |
| | | $rootScope.projects.forEach(function (el) { |
| | | if (el.id == projectId) { |
| | | $rootScope.workProject = el; |
| | | |
| | | $rootScope.$broadcast("changeLastProject", { id : el.id }); |
| | | } |
| | | }); |
| | | $state.go($state.current, {}, {reload: reload}); |
| | | } |
| | | }); |
| | | if (result.data.message.status === "success") { |
| | | $rootScope.user = result.data.data; |
| | | $rootScope.projects.forEach(function (el) { |
| | | if (el.id == projectId) { |
| | | $rootScope.workProject = el; |
| | | if (onEvent) { |
| | | $rootScope.$broadcast("changedLastProject", {id: el.id}); |
| | | $state.go("issues.list"); |
| | | } |
| | | if (reload) { |
| | | $state.go('dashboards.dashboard'); |
| | | } |
| | | } |
| | | }); |
| | | // $state.go($state.current, {}, {reload: reload}); |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | }; |
| | | |
| | | |
| | | |
| | | // 프로젝트 관리 권한이 있는지 확인한다 |
| | | $rootScope.checkMngPermissionProject = function () { |
| | |
| | | // table orderBy column init setting |
| | | $tableProvider.setOrderByColumn(); |
| | | $tableProvider.reverse = false; |
| | | |
| | | $relProvider.setOrderByColumn(); |
| | | $relProvider.reverse = false; |
| | | // 이슈 목록->상세화면에서 마지막으로 접근한 이슈 아이디 - 라우트 탈때마다 초기화 |
| | | $rootScope.currentDetailIssueId = null; |
| | | |
| | | // 사용자 정보를 가져온다. |
| | | // $rootScope.getMyInfo(); |
| | | |
| | | $log.debug("toState.name : ", toState.name); |
| | | $log.debug("$rootScope.previousStateName 확인 : ", $rootScope.previousStateName); |
| | |
| | | $rootScope.checkPrimaryWorkspace(); |
| | | } |
| | | } |
| | | |
| | | }); |
| | | |
| | | // if ui-router $http occur error, trigger this event |
| | |
| | | |
| | | return ctxPath; |
| | | })()); |
| | | |
| | | }); |