OWL ITS + 탐지시스템(인터넷 진흥원)
jhjang
2021-10-14 3052936fed9166521b0557a36df83eb11a5e51ee
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
<div class="formModal">
    <div class="modal-header faded smaller">
        <div class="modal-title">
            <strong translate="project.modifyProject">프로젝트 수정</strong>
        </div>
        <button aria-label="Close" class="close" type="button" ng-click="fn.cancel()">
            <span aria-hidden="true"> &times;</span>
        </button>
    </div>
 
    <div class="modal-body">
        <form role="form" name="projectModifyForm">
            <div class="form-group">
                <label for="projectModifyForm1"><span translate="common.projectName">프로젝트명</span> <code class="highlighter-rouge">*</code></label>
                <input id="projectModifyForm1"
                       name="name"
                       type="text"
                       class="form-control"
                       autofocus
                       autocomplete="off"
                       ng-model="vm.form.name"
                       ng-maxlength="50"
                       input-regex="[^a-zA-Z0-9 가-힣ㄱ-ㅎㅏ-ㅣ\u318D\u119E\u11A2\u2022\u2025a\u00B7\uFE55]"
                       maxlength="50"
                       kr-input
                       required>
                <small ng-show="projectModifyForm.name.$error.maxlength" class="help-block form-text text-danger" translate="common.upTo50Characters">
                    최대 50글자까지 입력할 수 있습니다.
                </small>
                <small translate="project.limitNameToSpecialCharacters">프로젝트 명은 특수 문자를 입력할 수 없습니다.</small>
            </div>
 
            <div class="row">
                <div class="col-lg-6">
                    <div class="form-group">
                        <label for="projectModifyForm2"><span translate="common.period">기간</span> <code class="highlighter-rouge">*</code></label>
                        <input id="projectModifyForm2"
                               type="text"
                               class="form-control input-readonly"
                               ng-model="vm.form.startEndDateRange"
                               modal-form-auto-scroll
                               parent-el="'#createdWidget'"
                               range-type="date"
                               onfocus="this.blur()"
                               date-range-picker>
                        <div class="row">
                            <div class="col-xs-12">
                                <div id="createdWidget" class="bootstrap-datepicker"></div>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="col-lg-6">
                    <div class="form-group mb10">
                        <label> <span translate="common.parentProject">상위 프로젝트</span></label>
                        <js-autocomplete-single data-input-name="project"
                                                selected-model="vm.form.parentProjects"
                                                search="vm.projectName"
                                                source="fn.getProjectList(vm.projectName, vm.form.parentProjects, vm.autoCompletePage.project.page, fn.getProjectListCallBack)"
                                                page="vm.autoCompletePage.project.page"
                                                total-page="vm.autoCompletePage.project.totalPage"
                                                input-disabled="false"
                                                translation-texts="{ empty : 'common.emptyProject' }"
                                                extra-settings="{ displayProp : 'name' , idProp : 'id', imageable : false, imagePathProp : '',
                                            type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }">
                        </js-autocomplete-single>
                    </div>
                </div>
            </div>
            <div class="form-group">
                <label><span translate="project.projectStatus">프로젝트 상태</span>  <code class="highlighter-rouge">*</code></label>
                <ul class="nav nav-pills smaller d-lg-flex">
                    <li class="nav-item">
                        <a class="nav-link cursor" ng-class="{active : vm.form.status == '01'}" data-toggle="tab"
                           ng-click="vm.form.status = '01'"> <span translate="common.wait">대기</span></a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link cursor" ng-class="{active : vm.form.status == '02'}" data-toggle="tab"
                           ng-click="vm.form.status = '02'"> <span translate="common.progress">진행</span></a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link cursor" ng-class="{active : vm.form.status == '03'}" data-toggle="tab"
                           ng-click="vm.form.status = '03'"> <span translate="common.end">종료</span></a>
                    </li>
                </ul>
            </div>
 
            <div class="form-group">
                <label><span translate="project.projectAdmin">프로젝트 관리자</span> <code class="highlighter-rouge">*</code></label>
                <js-autocomplete-single data-input-name="managers"
                                        selected-model="vm.form.managers"
                                        search="vm.managerName"
                                        source="fn.getUserList(vm.managerName, vm.form.managers.concat(vm.form.users), vm.autoCompletePage.manager.page, fn.getManagerListCallBack)"
                                        page="vm.autoCompletePage.manager.page"
                                        total-page="vm.autoCompletePage.manager.totalPage"
                                        input-disabled="false"
                                        extra-settings="{ displayProp : 'byName' , idProp : 'id', imageable : true, imagePathProp : 'profile', type : 'user', maxlength : 100 }"></js-autocomplete-single>
 
                <div class="select3-selection__choicediv mt-10">
                    <span class="select3-selection__choice" ng-repeat="user in vm.form.managers">
                        <span class="avatar-w"><img ng-src="{{user.profile}}"></span>
                        <span>{{user.name}}({{user.account}})</span>
                        <span class="select3-selection__choice__remove" ng-click="fn.removeManager($index)">×</span>
                    </span>
                </div>
            </div>
 
            <div class="form-group">
                <label><span translate="project.projectTeam">프로젝트 팀원</span> </label>
                <js-autocomplete-multi data-input-name="users"
                                       selected-model="vm.form.users"
                                       search="vm.userName"
                                       source="fn.getUserList(vm.userName, vm.form.users.concat(vm.form.managers))"
                                       input-disabled="false"
                                       translation-texts="{ count : 'common.userNum', empty : 'common.emptyUser' }"
                                       extra-settings="{ displayProp : 'byName' , idProp : 'id', imageable : true, imagePathProp : 'profile', type : 'user', maxlength : 100, autoResize : true }"></js-autocomplete-multi>
 
                <div class="select3-selection__choicediv mt-10">
                    <span class="select3-selection__choice" ng-repeat="user in vm.form.users">
                        <span class="avatar-w"><img ng-src="{{user.profile}}"></span>
                        <span>{{user.name}}({{user.account}})</span>
                        <span class="select3-selection__choice__remove" ng-click="fn.removeUsr($index)">×</span>
                    </span>
                </div>
            </div>
        </form>
    </div>
 
    <div class="modal-footer buttons-on-right">
        <button type="button" class="btn btn-md btn-grey" ng-click="fn.cancel()"><span translate="common.cancel">취소</span></button>
        <button type="button" class="btn btn-md btn-primary bold"
                js-short-cut
                js-short-cut-action="(fn.formCheck(projectModifyForm.$invalid) || $root.spinner) ? null : fn.formSubmit()"
                ng-disabled="fn.formCheck(projectModifyForm.$invalid)"
                ng-click="fn.formSubmit()"><span translate="common.save">저장</span>
        </button>
    </div>
</div>