From 836153c85c1134081e599fbdf5f17a3152d56341 Mon Sep 17 00:00:00 2001 From: wyu <kknd09321@nate.com> Date: 월, 29 11월 2021 16:31:16 +0900 Subject: [PATCH] 사용자정의 필드 수정 --- src/main/webapp/views/customField/customFieldAdd.html | 31 ++++++---- src/main/webapp/views/customField/customFieldModify.html | 90 +++++++++++++++++++++++++++++- src/main/webapp/i18n/ko/global.json | 6 + src/main/webapp/scripts/app/customField/customFieldAdd.controller.js | 8 -- src/main/webapp/scripts/app/customField/customFieldModify.controller.js | 22 +++++-- 5 files changed, 128 insertions(+), 29 deletions(-) diff --git a/src/main/webapp/i18n/ko/global.json b/src/main/webapp/i18n/ko/global.json index d31593b..1025a3a 100644 --- a/src/main/webapp/i18n/ko/global.json +++ b/src/main/webapp/i18n/ko/global.json @@ -834,9 +834,11 @@ "siteField": "URL �븘�뱶", "telField": "�쟾�솕踰덊샇 �븘�뱶", "invalidipAdressFormat": "IP 二쇱냼 �삎�떇�씠 留욎� �븡�뒿�땲�떎.", + "invalidNumberFormat": "�닽�옄留� �엯�젰 媛��뒫�빀�땲�떎.", + "invalidDateFormat": "�궇吏� �삎�떇�씠 留욎� �븡�뒿�땲�떎.(xxxx-xx-xx)", "invalidEmailFormat": "�씠硫붿씪 �삎�떇�씠 留욎� �븡�뒿�땲�떎.", - "invalidSiteFormat": "�솃�럹�씠吏� 二쇱냼 �삎�떇�씠 留욎� �븡�뒿�땲�떎.", - "invalidTelFormat": "�쟾�솕踰덊샇 �삎�떇�씠 留욎� �븡�뒿�땲�떎." + "invalidSiteFormat": "�솃�럹�씠吏� 二쇱냼 �삎�떇�씠 留욎� �븡�뒿�땲�떎.(http://濡� �떆�옉�븯�뀛�빞�빀�땲�떎)", + "invalidTelFormat": "�쟾�솕踰덊샇 �삎�떇�씠 留욎� �븡�뒿�땲�떎(xxx-xxxx-xxxx)." }, "tasks": { "agileBoardTitle": "移몃컲 蹂대뱶" diff --git a/src/main/webapp/scripts/app/customField/customFieldAdd.controller.js b/src/main/webapp/scripts/app/customField/customFieldAdd.controller.js index 563582d..863f51c 100644 --- a/src/main/webapp/scripts/app/customField/customFieldAdd.controller.js +++ b/src/main/webapp/scripts/app/customField/customFieldAdd.controller.js @@ -165,11 +165,7 @@ var content = angular.copy($scope.vm.form); content.name = $rootScope.preventXss(content.name); - content.numberType = $rootScope.preventXss(content.numberType); - content.ipAdress = $rootScope.preventXss(content.ipAdress); - content.email = $rootScope.preventXss(content.email); - content.site = $rootScope.preventXss(content.site); - content.tel = $rootScope.preventXss(content.tel); + if ($scope.vm.form.customFieldType === 'MULTI_SELECT'|| $scope.vm.form.customFieldType === "SINGLE_SELECT") { var convertDefaultValues = ""; @@ -180,7 +176,7 @@ } }); - content.defaultValue = convertDefaultValues; + //content.defaultValue = convertDefaultValues; } CustomField.add($resourceProvider.getContent( diff --git a/src/main/webapp/scripts/app/customField/customFieldModify.controller.js b/src/main/webapp/scripts/app/customField/customFieldModify.controller.js index 04f2a7d..3eef946 100644 --- a/src/main/webapp/scripts/app/customField/customFieldModify.controller.js +++ b/src/main/webapp/scripts/app/customField/customFieldModify.controller.js @@ -30,11 +30,16 @@ form : { id : parameter.id, name : "", - customFieldType : "", // �궗�슜�옄 �젙�쓽 �븘�뱶 �쑀�삎 + customFieldType : "INPUT", // �궗�슜�옄 �젙�쓽 �븘�뱶 �쑀�삎 defaultValue : "", // 湲곕낯 媛� options : [], // �샃�뀡 optionText : "", // �샃�뀡 媛� - useCustomFieldValue : false // �씠�뒋�뿉�꽌 �궗�슜�릺怨� �엳�뒗吏� �뿬遺� �솗�씤 + useCustomFieldValue : false, // �씠�뒋�뿉�꽌 �궗�슜�릺怨� �엳�뒗吏� �뿬遺� �솗�씤 + numberType : "", + ipAdress : "", + email : "", + site : "", + tel : "" }, origin : { options : [] // �샃�뀡 媛� 蹂�寃� �뿬遺� �솗�씤�쓣 �쐞�빐 �꽌踰꾩뿉�꽌 �궡�젮�삱 �븣 �썝蹂� 媛믪쓣 �뵲濡� 愿�由ы븳�떎. @@ -137,7 +142,7 @@ } // �떎以�, �떒�씪 �꽑�깮�씪 寃쎌슦�뿉 - if ($scope.vm.form.customFieldType !== "INPUT") { + if ($scope.vm.form.customFieldType === "MULTI_SELECT" || $scope.vm.form.customFieldType === "SINGLE_SELECT") { // �샃�뀡�씠 1媛� �씠�븯�씪 寃쎌슦�뿉�뒗 ���젆�듃 �깭洹몃�� 留뚮뱾 �닔 �뾾�떎. if ($scope.vm.form.options.length < 1) { return true; @@ -151,10 +156,15 @@ function formSubmit() { $rootScope.spinner = true; - var content = angular.copy($scope.vm.form); - content.name = $rootScope.preventXss(content.name); + var content = angular.copy($scope.vm.form); + content.name = $rootScope.preventXss(content.name); + content.numberType =$scope.vm.form.numberType; + content.ipAdress = $scope.vm.form.ipAdress; + content.email = $scope.vm.form.email; + content.site = $scope.vm.form.site; + content.tel =$scope.vm.form.tel; - if ($scope.vm.form.customFieldType !== 'INPUT') { + if ($scope.vm.form.customFieldType === 'MULTI_SELECT'|| $scope.vm.form.customFieldType === "SINGLE_SELECT") { var convertDefaultValues = ""; angular.forEach(content.defaultValue.split("#"), function (value) { diff --git a/src/main/webapp/views/customField/customFieldAdd.html b/src/main/webapp/views/customField/customFieldAdd.html index dafd16c..ec866c6 100644 --- a/src/main/webapp/views/customField/customFieldAdd.html +++ b/src/main/webapp/views/customField/customFieldAdd.html @@ -98,21 +98,29 @@ <input ng-if="vm.form.customFieldType == 'NUMBER'" name="numberType" - type="number" + type="text" class="form-control" kr-input ng-pattern="/^[0-9]*$/" placeholder="�닽�옄留� �엯�젰 媛��뒫�빀�땲�떎." autocomplete="off" - ng-model="vm.form.numberType"> + ng-model="vm.form.defaultValue"> + <div ng-show="customFieldAddForm.ipAdress.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidNumberFormat">�닽�옄留� �엯�젰 媛��뒫�빀�땲�떎. + </div> <input ng-if="vm.form.customFieldType == 'DATETIME'" - type="date" + name="dateTime" + type="text" class="form-control" kr-input ng-pattern="/^(19|20)\d{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[0-1])$/" placeholder="�궇吏� �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." - autocomplete="off"> + autocomplete="off" + ng-model="vm.form.defaultValue"> + <div ng-show="customFieldAddForm.dateTime.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidDateFormat">�궇吏� �삎�떇�씠 留욎� �븡�뒿�땲�떎.(xxxx-xx-xx) + </div> <input ng-if="vm.form.customFieldType == 'IP_ADDRESS'" name="ipAdress" @@ -122,11 +130,11 @@ 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 二쇱냼 �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." autocomplete="off" - ng-model="vm.form.ipAdress"> + ng-model="vm.form.defaultValue"> <div ng-show="customFieldAddForm.ipAdress.$error.pattern" class="help-block form-text text-danger" translate="common.invalidipAdressFormat">IP二쇱냼 �삎�떇�씠 留욎� �븡�뒿�땲�떎. </div> -<!-- /@^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/--> + <input ng-if="vm.form.customFieldType == 'EMAIL'" name="email" type="email" @@ -136,7 +144,7 @@ ng-pattern="/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/" placeholder="�씠硫붿씪 �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." autocomplete="off" - ng-model="vm.form.email"> + ng-model="vm.form.defaultValue"> <div ng-show="customFieldAddForm.email.$error.pattern" class="help-block form-text text-danger" translate="common.invalidEmailFormat">�씠硫붿씪 �삎�떇�씠 留욎� �븡�뒿�땲�떎. </div> @@ -150,22 +158,21 @@ ng-pattern="/(http(s)?:\/\/)([a-z0-9\w]+\.*)+[a-z0-9]{2,4}/gi" placeholder="�솃�럹�씠吏� 二쇱냼 �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." autocomplete="off" - ng-model="vm.form.site"> + ng-model="vm.form.defaultValue"> <div ng-show="customFieldAddForm.site.$error.pattern" class="help-block form-text text-danger" - translate="common.invalidSiteFormat">�솃�럹�씠吏� 二쇱냼 �삎�떇�씠 留욎� �븡�뒿�땲�떎. + translate="common.invalidSiteFormat">�솃�럹�씠吏� 二쇱냼 �삎�떇�씠 留욎� �븡�뒿�땲�떎.(http://濡� �떆�옉�븯�뀛�빞�빀�땲�떎) </div> <input ng-if="vm.form.customFieldType == 'TEL'" - id="phone" name="tel" - type="number" + type="text" class="form-control" kr-input ng-pattern="/^\d{2,3}-\d{3,4}-\d{4}$/" placeholder="�뿰�씫泥� �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." autocomplete="off" - ng-model="vm.form.tel"> + ng-model="vm.form.defaultValue"> <div ng-show="customFieldAddForm.tel.$error.pattern" class="help-block form-text text-danger" translate="common.invalidTelFormat">�쟾�솕踰덊샇 �삎�떇�씠 留욎� �븡�뒿�땲�떎. </div> diff --git a/src/main/webapp/views/customField/customFieldModify.html b/src/main/webapp/views/customField/customFieldModify.html index 546c3c8..8af0dcd 100644 --- a/src/main/webapp/views/customField/customFieldModify.html +++ b/src/main/webapp/views/customField/customFieldModify.html @@ -38,14 +38,14 @@ <select id="customFieldModifyForm2" class="form-control" ng-model="vm.form.customFieldType" ng-change="fn.changeCustomFieldType()"> <option value="INPUT" translate="common.stringField">臾몄옄�뿴 �븘�뱶</option> + <option value="SINGLE_SELECT" translate="common.singleSelectionField">�떒�씪 �꽑�깮 �븘�뱶</option> + <option value="MULTI_SELECT" translate="common.multipleSelectionField">�떎以� �꽑�깮 �븘�뱶</option> <option value="NUMBER" translate="common.numberField">�닽�옄 �븘�뱶</option> <option value="DATETIME" translate="common.datetimeField">�궇吏� �븘�뱶</option> <option value="IP_ADDRESS" translate="common.ipAddressField">IP 二쇱냼 �븘�뱶</option> <option value="EMAIL" translate="common.emailField">�씠硫붿씪 �븘�뱶</option> <option value="SITE" translate="common.siteField">�솃�럹�씠吏� 二쇱냼 �븘�뱶</option> <option value="TEL" translate="common.telField">�쟾�솕踰덊샇 �븘�뱶</option> - <option value="SINGLE_SELECT" translate="common.singleSelectionField">�떒�씪 �꽑�깮 �븘�뱶</option> - <option value="MULTI_SELECT" translate="common.multipleSelectionField">�떎以� �꽑�깮 �븘�뱶</option> </select> </div> @@ -56,6 +56,7 @@ <label ng-show="vm.form.customFieldType == 'MULTI_SELECT'"><span translate="customField.createMultiFieldList">�떎以� �꽑�깮 �븘�뱶 紐⑸줉 留뚮뱾湲�</span> <code class="highlighter-rouge">*</code></label> + <div class="input-group"> <input id="optionAdd" type="text" @@ -76,6 +77,7 @@ </div> <div ng-repeat="option in vm.form.options" ng-show="vm.form.customFieldType == 'SINGLE_SELECT' || vm.form.customFieldType == 'MULTI_SELECT'"> +<!-- <div ng-repeat="option in vm.form.options" ng-show="vm.form.customFieldType != 'INPUT'">--> <span class="select3-selection__choice"> <span>{{option}}</span> <span class="select3-selection__choice__remove" ng-click="fn.removeOption($index)">횞</span> @@ -84,7 +86,8 @@ <div class="form-group"> <label for="customFieldModifyForm3"><span translate="customField.defaultValue">湲곕낯媛�</span> </label> - <input id="customFieldModifyForm3" + <input ng-if="vm.form.customFieldType == 'INPUT' || vm.form.customFieldType == 'SINGLE_SELECT' || vm.form.customFieldType == 'MULTI_SELECT'" + id="customFieldModifyForm3" type="text" name="defaultValue" class="form-control" @@ -93,6 +96,87 @@ kr-input ng-maxlength="100" autocomplete="off"> + + <input ng-if="vm.form.customFieldType == 'NUMBER'" + name="numberType" + type="text" + class="form-control" + kr-input + ng-pattern="/^[0-9]*$/" + placeholder="�닽�옄留� �엯�젰 媛��뒫�빀�땲�떎." + autocomplete="off" + ng-model="vm.form.defaultValue"> + <div ng-show="customFieldAddForm.ipAdress.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidNumberFormat">�닽�옄留� �엯�젰 媛��뒫�빀�땲�떎. + </div> + + <input ng-if="vm.form.customFieldType == 'DATETIME'" + type="text" + class="form-control" + kr-input + ng-pattern="/^(19|20)\d{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[0-1])$/" + placeholder="�궇吏� �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." + autocomplete="off" + ng-model="vm.form.defaultValue"> + <div ng-show="customFieldAddForm.ipAdress.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidDateFormat">�궇吏� �삎�떇�씠 留욎� �븡�뒿�땲�떎.(19|20�뀈�룄 �썡�� 1~12 �씪�옄�뒗 31源뚯� �엯�젰媛��뒫�빀�땲�떎.) + </div> + + <input ng-if="vm.form.customFieldType == 'IP_ADDRESS'" + name="ipAdress" + type="text" + class="form-control" + 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 二쇱냼 �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." + autocomplete="off" + ng-model="vm.form.defaultValue"> + <div ng-show="customFieldAddForm.ipAdress.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidipAdressFormat">IP二쇱냼 �삎�떇�씠 留욎� �븡�뒿�땲�떎. + </div> + + <input ng-if="vm.form.customFieldType == 'EMAIL'" + name="email" + type="email" + class="form-control" + maxlength="30" + kr-input + ng-pattern="/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/" + placeholder="�씠硫붿씪 �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." + autocomplete="off" + ng-model="vm.form.defaultValue"> + <div ng-show="customFieldAddForm.email.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidEmailFormat">�씠硫붿씪 �삎�떇�씠 留욎� �븡�뒿�땲�떎. + </div> + + <input ng-if="vm.form.customFieldType == 'SITE'" + name="site" + type="text" + class="form-control" + maxlength="30" + kr-input + ng-pattern="/(http(s)?:\/\/)([a-z0-9\w]+\.*)+[a-z0-9]{2,4}/gi" + placeholder="�솃�럹�씠吏� 二쇱냼 �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." + autocomplete="off" + ng-model="vm.form.defaultValue"> + <div ng-show="customFieldAddForm.site.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidSiteFormat">�솃�럹�씠吏� 二쇱냼 �삎�떇�씠 留욎� �븡�뒿�땲�떎.(http://濡� �떆�옉�븯�뀛�빞�빀�땲�떎) + </div> + + + <input ng-if="vm.form.customFieldType == 'TEL'" + name="tel" + type="text" + class="form-control" + kr-input + ng-pattern="/^\d{2,3}-\d{3,4}-\d{4}$/" + placeholder="�뿰�씫泥� �삎�떇留� �엯�젰 媛��뒫�빀�땲�떎." + autocomplete="off" + ng-model="vm.form.defaultValue"> + <div ng-show="customFieldAddForm.tel.$error.pattern" class="help-block form-text text-danger" + translate="common.invalidTelFormat">�쟾�솕踰덊샇 �삎�떇�씠 留욎� �븡�뒿�땲�떎. + </div> + <small ng-show="customFieldModifyForm.defaultValue.$error.maxlength" class="help-block form-text text-danger" translate="common.upTo100Characters"> 理쒕� 100湲��옄源뚯� �엯�젰�븷 �닔 �엳�뒿�땲�떎. -- Gitblit v1.8.0