From bc80899423fce09be34baf72ac04fca915f3dea0 Mon Sep 17 00:00:00 2001 From: wyu <kknd09321@nate.com> Date: 수, 22 12월 2021 14:27:29 +0900 Subject: [PATCH] 이슈추가, 수정 탐지정보 사용자 정의필드 정규표현식 추가 --- src/main/webapp/views/issue/issueAdd.html | 102 ++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 80 insertions(+), 22 deletions(-) diff --git a/src/main/webapp/views/issue/issueAdd.html b/src/main/webapp/views/issue/issueAdd.html index 57e7322..836d34b 100644 --- a/src/main/webapp/views/issue/issueAdd.html +++ b/src/main/webapp/views/issue/issueAdd.html @@ -127,7 +127,7 @@ <js-autocomplete-multi data-input-name="departments" selected-model="vm.form.departments" search="vm.departmentName" - source="fn.getIssueDepartmentList(vm.departmentName, vm.form.departments)" + source="fn.getIssueDepartmentList(vm.form.issueTypeId, vm.departmentName, vm.form.departments)" input-disabled="false" translation-texts="{ count : 'common.userNum', empty : 'common.emptyProjectDepartment'}" extra-settings="{ displayProp : 'byName' , idProp : 'id', imageable : false, maxlength : 100, autoResize : true}"></js-autocomplete-multi> @@ -236,7 +236,7 @@ <!-- 湲곕낯 �엯�젰 --> <div ng-switch-when="INPUT"> <input type="text" class="form-control input-sm" - name="input" + name="inputValue" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" @@ -244,32 +244,39 @@ ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> <small class="help-block form-text text-danger" ng-show="issueCustomField.customFieldVo.requiredData == 'Y'" - ng-if="issueAddForm.input.$error.required" + ng-if="issueAddForm.inputValue.$error.required" translate="issue.pleaseEnterIssueTypeCustomFields">�빐�떦 �궗�슜�옄�젙�쓽�븘�뱶�뒗 �븘�닔 �엯�젰 媛� �엯�땲�떎. </small> </div> <div ng-switch-when="NUMBER"> <input type="text" class="form-control input-sm" - name="number" + name="numberType" ng-model="issueCustomField.useValues" maxlength="100" autocomplete="off" kr-input + ng-pattern="/^[0-9]*$/" + placeholder="�닽�옄留� �엯�젰 媛��뒫�빀�땲�떎." ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> <small class="help-block form-text text-danger" ng-show="issueCustomField.customFieldVo.requiredData == 'Y'" - ng-if="issueAddForm.number.$error.required" + ng-if="issueAddForm.numberType.$error.required" translate="issue.pleaseEnterIssueTypeCustomFields">�빐�떦 �궗�슜�옄 �젙�쓽 �븘�뱶�뒗 �븘�닔 �엯�젰 媛� �엯�땲�떎. </small> + <div ng-show="issueAddForm.numberType.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidNumberFormat">�닽�옄留� �엯�젰 媛��뒫�빀�땲�떎. + </div> </div> <div ng-switch-when="DATETIME"> - <input type="text" class="form-control input-sm" + <input class="form-control input-sm input-readonly" name="dateTime" ng-model="issueCustomField.useValues" - maxlength="100" - autocomplete="off" + placeholder="{{'issue.clickToSelectDate' | translate}}" + modal-form-auto-scroll + range-type="singleDate" + date-range-picker kr-input ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> <small class="help-block form-text text-danger" @@ -283,15 +290,38 @@ <input type="text" class="form-control input-sm" name="ipAddress" ng-model="issueCustomField.useValues" - maxlength="100" autocomplete="off" kr-input + ng-pattern="/^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/" + placeholder="IP 二쇱냼 �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> <small class="help-block form-text text-danger" ng-show="issueCustomField.customFieldVo.requiredData == 'Y'" ng-if="issueAddForm.ipAddress.$error.required" translate="issue.pleaseEnterIssueTypeCustomFields">�빐�떦 �궗�슜�옄 �젙�쓽 �븘�뱶�뒗 �븘�닔 �엯�젰 媛� �엯�땲�떎. </small> + <div ng-show="issueAddForm.ipAddress.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidipAdressFormat">IP二쇱냼 �삎�떇�씠 留욎� �븡�뒿�땲�떎. + </div> + </div> + + <div ng-switch-when="EMAIL"> + <input type="email" class="form-control input-sm" + name="email" + maxlength="30" + ng-model="issueCustomField.useValues" + kr-input + ng-pattern="/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/" + placeholder="�씠硫붿씪 �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." + ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> + <small class="help-block form-text text-danger" + ng-show="issueCustomField.customFieldVo.requiredData == 'Y'" + ng-if="issueAddForm.ipAddress.$error.required" + translate="issue.pleaseEnterIssueTypeCustomFields">�빐�떦 �궗�슜�옄 �젙�쓽 �븘�뱶�뒗 �븘�닔 �엯�젰 媛� �엯�땲�떎. + </small> + <div ng-show="issueAddForm.email.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidEmailFormat">�씠硫붿씪 �삎�떇�씠 留욎� �븡�뒿�땲�떎. + </div> </div> <div ng-switch-when="SITE"> @@ -301,27 +331,37 @@ maxlength="100" autocomplete="off" kr-input + ng-pattern="/(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/" + placeholder="�솃�럹�씠吏� 二쇱냼 �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> <small class="help-block form-text text-danger" ng-show="issueCustomField.customFieldVo.requiredData == 'Y'" ng-if="issueAddForm.site.$error.required" translate="issue.pleaseEnterIssueTypeCustomFields">�빐�떦 �궗�슜�옄 �젙�쓽 �븘�뱶�뒗 �븘�닔 �엯�젰 媛� �엯�땲�떎. </small> + <div ng-show="issueAddForm.site.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidSiteFormat">�솃�럹�씠吏� 二쇱냼 �삎�떇�씠 留욎� �븡�뒿�땲�떎.(http:// �삉�뒗 www 濡� �떆�옉�븯�뀛�빞�빀�땲�떎) + </div> </div> <div ng-switch-when="TEL"> <input type="text" class="form-control input-sm" name="tel" ng-model="issueCustomField.useValues" - maxlength="100" + maxlength="30" autocomplete="off" kr-input + ng-pattern="/^\d{2,3}-\d{3,4}-\d{4}$/" + placeholder="�뿰�씫泥� �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." ng-required="issueCustomField.fieldOption == '01' || issueCustomField.customFieldVo.requiredData == 'Y'"> <small class="help-block form-text text-danger" ng-show="issueCustomField.customFieldVo.requiredData == 'Y'" ng-if="issueAddForm.tel.$error.required" translate="issue.pleaseEnterIssueTypeCustomFields">�빐�떦 �궗�슜�옄 �젙�쓽 �븘�뱶�뒗 �븘�닔 �엯�젰 媛� �엯�땲�떎. </small> + <div ng-show="issueAddForm.tel.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidTelFormat">�쟾�솕踰덊샇 �삎�떇�씠 留욎� �븡�뒿�땲�떎. + </div> </div> <!-- �떒�씪 ���젆�듃 --> @@ -372,7 +412,8 @@ <div ng-show="fn.containsPartner('�뾽泥�')" class="row"> <div class="col-lg-8 fontcolor_green"> <label class="issue-label"><span class="fontcolor_green" translate="companyField.info">�뾽泥댁젙蹂�</span> - <span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> �뾽泥� �씠由� �겢由��떆 �꽑�깮�맂 �씠由꾩쓽 �뾽泥� �젙蹂닿� 議고쉶�맗�땲�떎.</span> + <span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> + �뾽泥� �씠由� �겢由��떆 �꽑�깮�맂 �씠由꾩쓽 �뾽泥� �젙蹂닿� 議고쉶�릺硫�, �뾽泥댁젙蹂댁뿉�꽌 異붽��븳 ISP, �샇�뒪�똿 �젙蹂대�� 遺덈윭�샃�땲�떎.</span> </label> </div> </div> @@ -456,7 +497,11 @@ autocomplete="off" ng-maxlength="200" ng-model="vm.companyUrl" + ng-pattern="/(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/" maxlength="200"> + <div ng-show="issueAddForm.companyUrl.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidUrlFormat">url �삎�떇�씠 留욎� �븡�뒿�땲�떎. + </div> </div> </div> <div class="col-lg-4"> @@ -478,7 +523,7 @@ <div ng-show="fn.containsPartner('ISP')" class="row"> <div class="col-lg-8 fontcolor_green"> <label class="issue-label"><span class="fontcolor_green" translate="ispField.info">ISP �젙蹂�</span> - <span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> ISP �씠由� �겢由��떆 �꽑�깮�맂 �씠由꾩쓽 ISP �젙蹂닿� 議고쉶�맗�땲�떎.</span> + <!--<span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> ISP �씠由� �겢由��떆 �꽑�깮�맂 �씠由꾩쓽 ISP �젙蹂닿� 議고쉶�맗�땲�떎.</span>--> </label> </div> </div> @@ -487,18 +532,15 @@ <div class="col-lg-4"> <div class="form-group mb10"> <label class="issue-label"> <span translate="ispField.name">ISP �씠由�</span> </label> - <!--<input ng-click="show==false" - ng-show="show" - ng-hide="!show" - name="ispName" + <input name="ispName" type="text" class="form-control" kr-input autocomplete="off" ng-model="vm.ispName" ng-maxlength="100" - maxlength="100">--> - <js-autocomplete-single data-input-name="ispField" + maxlength="100"> + <!--<js-autocomplete-single data-input-name="ispField" selected-model="vm.form.issueIspFields" search="vm.ispName" source="fn.getIssueIspFieldList(vm.ispName, vm.form.issueIspFields, vm.autoCompletePage.ispField.page, fn.getIssueIspFieldListCallBack)" @@ -508,7 +550,7 @@ translation-texts="{ empty : 'common.emptyIsp' }" broad-cast="ispFieldEvent" extra-settings="{ displayProp : 'name' , idProp : 'id', imageable : false, imagePathProp : '', - type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single> + type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single>--> </div> </div> <div class="col-lg-4"> @@ -587,7 +629,11 @@ autocomplete="off" ng-maxlength="200" ng-model="vm.ispUrl" + ng-pattern="/(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/" maxlength="200"> + <div ng-show="issueAddForm.ispUrl.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidUrlFormat">url �삎�떇�씠 留욎� �븡�뒿�땲�떎. + </div> </div> </div> <div class="col-lg-4"> @@ -609,7 +655,7 @@ <div ng-show="fn.containsPartner('�샇�뒪�똿')" class="row"> <div class="col-lg-8 fontcolor_green"> <label class="issue-label"><span class="fontcolor_green" translate="hostingField.info">�샇�뒪�똿 �젙蹂�</span> - <span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> �샇�뒪�똿 �씠由� �겢由��떆 �꽑�깮�맂 �씠由꾩쓽 �샇�뒪�똿 �젙蹂닿� 議고쉶�맗�땲�떎.</span> + <!--<span class="select3-selection__choice" style="position: relative; bottom: 2px;"><code class="highlighter-rouge">*</code> �샇�뒪�똿 �씠由� �겢由��떆 �꽑�깮�맂 �씠由꾩쓽 �샇�뒪�똿 �젙蹂닿� 議고쉶�맗�땲�떎.</span>--> </label> </div> </div> @@ -618,7 +664,15 @@ <div class="col-lg-4"> <div class="form-group mb10"> <label class="issue-label"> <span translate="hostingField.name">�샇�뒪�똿 �씠由�</span> </label> - <js-autocomplete-single data-input-name="hostingField" + <input name="hostingName" + type="text" + class="form-control" + kr-input + autocomplete="off" + ng-model="vm.hostingName" + ng-maxlength="100" + maxlength="100"> + <!--<js-autocomplete-single data-input-name="hostingField" selected-model="vm.form.issueHostingFields" ng-model="vm.hostingName" search="vm.hostingName" @@ -629,7 +683,7 @@ translation-texts="{ empty : 'common.emptyHosting' }" broad-cast="hostingFieldEvent" extra-settings="{ displayProp : 'name' , idProp : 'id', imageable : false, imagePathProp : '', - type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single> + type : '', maxlength : 200, autoResize : false, stopRemoveBodyEvent : true }"></js-autocomplete-single>--> </div> </div> <div class="col-lg-4"> @@ -708,7 +762,11 @@ autocomplete="off" ng-maxlength="200" ng-model="vm.hostingUrl" + ng-pattern="/(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/" maxlength="200"> + <div ng-show="issueAddForm.hostingUrl.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidUrlFormat">url �삎�떇�씠 留욎� �븡�뒿�땲�떎. + </div> </div> </div> <div class="col-lg-4"> -- Gitblit v1.8.0