treport 1.1.1 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/app/models/connect.rb +1 -0
  3. data/app/models/db.rb +1 -1
  4. data/app/models/map.rb +1 -0
  5. data/app/models/map_requirement.rb +1 -0
  6. data/app/models/report.rb +17 -9
  7. data/app/models/requirement.rb +1 -0
  8. data/public/treport/plugins/datePicker/My97DatePicker.htm +48 -48
  9. data/public/treport/plugins/datePicker/WdatePicker.js +52 -52
  10. data/public/treport/plugins/datePicker/calendar.js +4 -4
  11. data/public/treport/plugins/datePicker/config.js +16 -16
  12. data/public/treport/plugins/datePicker/lang/en.js +13 -13
  13. data/public/treport/plugins/datePicker/lang/zh-cn.js +13 -13
  14. data/public/treport/plugins/datePicker/lang/zh-tw.js +13 -13
  15. data/public/treport/plugins/datePicker/skin/WdatePicker.css +9 -9
  16. data/public/treport/plugins/datePicker/skin/areo/datepicker.css +301 -301
  17. data/public/treport/plugins/datePicker/skin/armyGreen/datepicker.css +301 -301
  18. data/public/treport/plugins/datePicker/skin/blue/datepicker.css +114 -114
  19. data/public/treport/plugins/datePicker/skin/blueGreen/datepicker.css +301 -301
  20. data/public/treport/plugins/datePicker/skin/darkBlue/datepicker.css +308 -308
  21. data/public/treport/plugins/datePicker/skin/darkYellow/datepicker.css +114 -114
  22. data/public/treport/plugins/datePicker/skin/deepBlue/datepicker.css +300 -300
  23. data/public/treport/plugins/datePicker/skin/default/datepicker.css +245 -245
  24. data/public/treport/plugins/datePicker/skin/green/datepicker.css +114 -114
  25. data/public/treport/plugins/datePicker/skin/lightBlue/datepicker.css +114 -114
  26. data/public/treport/plugins/datePicker/skin/modernBlue/datepicker.css +301 -301
  27. data/public/treport/plugins/datePicker/skin/orange/datepicker.css +114 -114
  28. data/public/treport/plugins/datePicker/skin/red/datepicker.css +114 -114
  29. data/public/treport/plugins/datePicker/skin/whyGreen/datepicker.css +255 -255
  30. data/public/treport/plugins/datePicker/skin/yellowGreen/datepicker.css +114 -114
  31. data/public/treport/plugins/validationEngine/jquery.validationEngine-zh_CN.js +181 -181
  32. data/public/treport/plugins/validationEngine/jquery.validationEngine.js +2160 -2160
  33. data/public/treport/plugins/validationEngine/template.css +124 -124
  34. data/public/treport/plugins/validationEngine/validationEngine.jquery.css +182 -182
  35. data/public/treport/plugins/zDialog/dialog.js +1312 -1312
  36. data/public/treport/plugins/zDialog/drag.js +91 -91
  37. data/public/treport/plugins/zDialog/skins/blue/dir.txt +24 -24
  38. data/public/treport/plugins/zDialog/skins/darkBlue/dir.txt +24 -24
  39. data/public/treport/plugins/zDialog/skins/darkYellow/dir.txt +24 -24
  40. data/public/treport/plugins/zDialog/skins/green/dir.txt +24 -24
  41. data/public/treport/plugins/zDialog/skins/lightBlue/dir.txt +24 -24
  42. data/public/treport/plugins/zDialog/skins/red/dir.txt +24 -24
  43. data/public/treport/plugins/zDialog/skins/yellowGreen/dir.txt +24 -24
  44. data/public/treport/plugins/zDialog/zDialog.js +763 -763
  45. metadata +2 -2
@@ -1,115 +1,115 @@
1
- /*
2
- * My97 DatePicker 4.7
3
- * 皮肤名称:Ycloud5d99cf
4
- * 皮肤作者:风逍云逸 abc123@foxmail.com
5
- */
6
-
7
- /* 日期选择容器 DIV */
8
- .WdateDiv { width:180px; padding:2px; background-color:#fff; border: solid 1px #5d99cf; }/* 最外层边框色*/
9
- /* 双月日历的宽度 */
10
- .WdateDiv2{width:360px;}
11
- .WdateDiv * { font:9pt Arial, Helvetica, sans-serif; }
12
- /****************************
13
- * 导航图标 全部是A标签
14
- ***************************/
15
- .WdateDiv .NavImg a{ display:block;width:16px; height:16px; cursor:pointer; }
16
- .WdateDiv .NavImgll a{ float:left;background:url(bg.gif) no-repeat 4px 6px; }
17
- .WdateDiv .NavImgl a{ float:left;background:url(bg.gif) no-repeat 4px -10px; }
18
- .WdateDiv .NavImgr a{ float:right;background:url(bg.gif) no-repeat -20px -10px; }
19
- .WdateDiv .NavImgrr a{ float:right;background:url(bg.gif) no-repeat -20px 6px; }
20
- /****************************
21
- * 年份月份相关
22
- ***************************/
23
- /* 年份月份栏 DIV */
24
- .WdateDiv #dpTitle { height:24px; margin-bottom:2px; background:#83a96c url(qs.jpg) repeat-x bottom; }
25
- /* 年份月份输入框 INPUT */
26
- .WdateDiv .yminput { width:50px; height:20px; margin-top:2px; border:0px; background:transparent; cursor:pointer; color:white; line-height:14px; text-align:center; }
27
- /* 年份月份输入框获得焦点时的样式 INPUT */
28
- .WdateDiv .yminputfocus { width:50px; height:20px; margin-top:2px; border:#939393 1px solid; color:5d99cf; font-weight:bold; line-height:14px; text-align:center; }
29
- /* 菜单选择框 DIV */
30
- .WdateDiv .menuSel { z-index:1;position:absolute; display:none; background-color:#FFFFFF; border:#8db279 1px solid; }/* 年月选择菜单的边框色*/
31
- /* 菜单的样式 TD */
32
- .WdateDiv .menu { cursor:pointer; background-color:#fff; color:#5d99cf; }
33
- /* 菜单的mouseover样式 TD */
34
- .WdateDiv .menuOn { cursor:pointer; color:white; background-color:#8db279; }/* 时间快速选择鼠标移入背景色 */
35
- /* 菜单无效时的样式 TD */
36
- .WdateDiv .invalidMenu { color:#aaa; }
37
- /* 年选择框的偏移 DIV */
38
- .WdateDiv .YMenu { margin-top:20px; }
39
- /* 月选择框的偏移 DIV */
40
- .WdateDiv .MMenu { margin-top:20px; *width:62px;
41
- }
42
- /* 时选择框的位置 DIV */
43
- .WdateDiv .hhMenu { margin:-90px 0 0 26px; }
44
- /* 分选择框的位置 DIV */
45
- .WdateDiv .mmMenu { margin:-46px 0 0 26px; }
46
- /* 秒选择框的位置 DIV */
47
- .WdateDiv .ssMenu { margin:-24px 0 0 26px; }
48
- /****************************
49
- * 周相关
50
- ***************************/
51
- .WdateDiv .Wweek { background:#DAF3F5; border-right:#BDEBEE 1px solid; text-align:center; }
52
- /****************************
53
- * 星期,日期相关
54
- ***************************/
55
- /* 星期栏 TR */
56
- .WdateDiv .MTitle { background:#8db279; color:white; } /* 星期栏背景色 */
57
- .WdateDiv .WdayTable2{
58
- border-collapse:collapse;
59
- border:#8db279 1px solid; /* 星期栏边框色 */
60
- }
61
- .WdateDiv .WdayTable2 table{
62
- border:0;
63
- }
64
- /* 日期栏表格 TABLE */
65
- .WdateDiv .WdayTable { background:white; border:#8db279 1px solid; color:5d99cf; }/* 日期栏边框色*/
66
- .WdateDiv .WdayTable td{
67
- line-height:20px;
68
- text-align:center;
69
- }
70
- /* 日期格的样式 TD */
71
- .WdateDiv .Wday { cursor:pointer; }
72
- /* 日期格的mouseover样式 TD */
73
- .WdateDiv .WdayOn { background-color:#8db279; cursor:pointer; font-size:13px; color:yellow; }/* 日期格鼠标移入背景色 */
74
- /* 周末日期格的样式 TD */
75
- .WdateDiv .Wwday { cursor:pointer; color:#bd1f1f; }
76
- /* 周末日期格的mouseover样式 TD */
77
- .WdateDiv .WwdayOn { background-color:#8db279; color:yellow; cursor:pointer; font-size:13px; }/* 周末日期格鼠标移入背景色 */
78
- .WdateDiv .Wtoday { cursor:pointer; color:blue; font-size:13px; }
79
- .WdateDiv .Wselday { background-color:#8db279; color:yellow; font-size:13px; }/* 周末日期格鼠标移入背景色 */
80
- .WdateDiv .WspecialDay{ background-color:#EAF330;}
81
- /* 其他月份的日期 */
82
- .WdateDiv .WotherDay { cursor:pointer; color:#666; }
83
- /* 其他月份的日期mouseover样式 */
84
- .WdateDiv .WotherDayOn { cursor:pointer; color:#666; }
85
- /* 无效日期的样式,即在日期范围以外日期格的样式,不能选择的日期 */
86
- .WdateDiv .WinvalidDay { color:#aaa; }
87
-
88
- /****************************
89
- * 时间相关
90
- ***************************/
91
- /* 时间栏 DIV */
92
- .WdateDiv #dpTime { margin-top:3px; }
93
- /* 时间文字 SPAN */
94
- .WdateDiv #dpTime #dpTimeStr { margin-left:1px; color:green; }
95
- /* 时间输入框 INPUT */
96
- .WdateDiv #dpTime input { width:18px; height:16px; border:#5d99cf 1px solid; color:black; line-height:14px; text-align:center; }
97
- /* 时间 时 INPUT */
98
- .WdateDiv #dpTime .tB { border-right:0px; }
99
- /* 时间 分和间隔符 ':' INPUT */
100
- .WdateDiv #dpTime .tE { border-left:0; border-right:0; }
101
- /* 时间 秒 INPUT */
102
- .WdateDiv #dpTime .tm { width:7px; border-left:0; border-right:0; }
103
- /* 时间右边的向上按钮 BUTTON */
104
- .WdateDiv #dpTime #dpTimeUp { border:solid 1px #7cc64b; border-right:solid 1px #7cc64b; height:10px; width:13px; padding:0; background:#7cc64b url(bg.gif) no-repeat -10px 2px; *background:#7cc64b url(bg.gif) no-repeat -11px 1px;
105
- }
106
- /* 时间右边的向下按钮 BUTTON */
107
- .WdateDiv #dpTime #dpTimeDown { border:solid 1px #8db279; border-right:solid 1px #7cc64b; height:10px; width:13px; padding:0; background:#7cc64b url(bg.gif) no-repeat -10px -17px; *background:#4b89c6 url(bg.gif) no-repeat -11px -18px;
108
- }
109
- /****************************
110
- * 其他
111
- ***************************/
112
- .WdateDiv #dpQS { float:left; width:20px; height:20px; margin:3px 3px 0 0; background-image:url(qs.jpg); cursor:pointer; }
113
- .WdateDiv #dpControl { margin-top:3px; text-align:right; }
114
- .WdateDiv .dpButton { width:45px; height:21px; overflow:hidden; background:#4b89c6 url(qs.jpg) repeat-x bottom; color:white; border: solid 1px #5d99cf; *border: solid 1px;
1
+ /*
2
+ * My97 DatePicker 4.7
3
+ * 皮肤名称:Ycloud5d99cf
4
+ * 皮肤作者:风逍云逸 abc123@foxmail.com
5
+ */
6
+
7
+ /* 日期选择容器 DIV */
8
+ .WdateDiv { width:180px; padding:2px; background-color:#fff; border: solid 1px #5d99cf; }/* 最外层边框色*/
9
+ /* 双月日历的宽度 */
10
+ .WdateDiv2{width:360px;}
11
+ .WdateDiv * { font:9pt Arial, Helvetica, sans-serif; }
12
+ /****************************
13
+ * 导航图标 全部是A标签
14
+ ***************************/
15
+ .WdateDiv .NavImg a{ display:block;width:16px; height:16px; cursor:pointer; }
16
+ .WdateDiv .NavImgll a{ float:left;background:url(bg.gif) no-repeat 4px 6px; }
17
+ .WdateDiv .NavImgl a{ float:left;background:url(bg.gif) no-repeat 4px -10px; }
18
+ .WdateDiv .NavImgr a{ float:right;background:url(bg.gif) no-repeat -20px -10px; }
19
+ .WdateDiv .NavImgrr a{ float:right;background:url(bg.gif) no-repeat -20px 6px; }
20
+ /****************************
21
+ * 年份月份相关
22
+ ***************************/
23
+ /* 年份月份栏 DIV */
24
+ .WdateDiv #dpTitle { height:24px; margin-bottom:2px; background:#83a96c url(qs.jpg) repeat-x bottom; }
25
+ /* 年份月份输入框 INPUT */
26
+ .WdateDiv .yminput { width:50px; height:20px; margin-top:2px; border:0px; background:transparent; cursor:pointer; color:white; line-height:14px; text-align:center; }
27
+ /* 年份月份输入框获得焦点时的样式 INPUT */
28
+ .WdateDiv .yminputfocus { width:50px; height:20px; margin-top:2px; border:#939393 1px solid; color:5d99cf; font-weight:bold; line-height:14px; text-align:center; }
29
+ /* 菜单选择框 DIV */
30
+ .WdateDiv .menuSel { z-index:1;position:absolute; display:none; background-color:#FFFFFF; border:#8db279 1px solid; }/* 年月选择菜单的边框色*/
31
+ /* 菜单的样式 TD */
32
+ .WdateDiv .menu { cursor:pointer; background-color:#fff; color:#5d99cf; }
33
+ /* 菜单的mouseover样式 TD */
34
+ .WdateDiv .menuOn { cursor:pointer; color:white; background-color:#8db279; }/* 时间快速选择鼠标移入背景色 */
35
+ /* 菜单无效时的样式 TD */
36
+ .WdateDiv .invalidMenu { color:#aaa; }
37
+ /* 年选择框的偏移 DIV */
38
+ .WdateDiv .YMenu { margin-top:20px; }
39
+ /* 月选择框的偏移 DIV */
40
+ .WdateDiv .MMenu { margin-top:20px; *width:62px;
41
+ }
42
+ /* 时选择框的位置 DIV */
43
+ .WdateDiv .hhMenu { margin:-90px 0 0 26px; }
44
+ /* 分选择框的位置 DIV */
45
+ .WdateDiv .mmMenu { margin:-46px 0 0 26px; }
46
+ /* 秒选择框的位置 DIV */
47
+ .WdateDiv .ssMenu { margin:-24px 0 0 26px; }
48
+ /****************************
49
+ * 周相关
50
+ ***************************/
51
+ .WdateDiv .Wweek { background:#DAF3F5; border-right:#BDEBEE 1px solid; text-align:center; }
52
+ /****************************
53
+ * 星期,日期相关
54
+ ***************************/
55
+ /* 星期栏 TR */
56
+ .WdateDiv .MTitle { background:#8db279; color:white; } /* 星期栏背景色 */
57
+ .WdateDiv .WdayTable2{
58
+ border-collapse:collapse;
59
+ border:#8db279 1px solid; /* 星期栏边框色 */
60
+ }
61
+ .WdateDiv .WdayTable2 table{
62
+ border:0;
63
+ }
64
+ /* 日期栏表格 TABLE */
65
+ .WdateDiv .WdayTable { background:white; border:#8db279 1px solid; color:5d99cf; }/* 日期栏边框色*/
66
+ .WdateDiv .WdayTable td{
67
+ line-height:20px;
68
+ text-align:center;
69
+ }
70
+ /* 日期格的样式 TD */
71
+ .WdateDiv .Wday { cursor:pointer; }
72
+ /* 日期格的mouseover样式 TD */
73
+ .WdateDiv .WdayOn { background-color:#8db279; cursor:pointer; font-size:13px; color:yellow; }/* 日期格鼠标移入背景色 */
74
+ /* 周末日期格的样式 TD */
75
+ .WdateDiv .Wwday { cursor:pointer; color:#bd1f1f; }
76
+ /* 周末日期格的mouseover样式 TD */
77
+ .WdateDiv .WwdayOn { background-color:#8db279; color:yellow; cursor:pointer; font-size:13px; }/* 周末日期格鼠标移入背景色 */
78
+ .WdateDiv .Wtoday { cursor:pointer; color:blue; font-size:13px; }
79
+ .WdateDiv .Wselday { background-color:#8db279; color:yellow; font-size:13px; }/* 周末日期格鼠标移入背景色 */
80
+ .WdateDiv .WspecialDay{ background-color:#EAF330;}
81
+ /* 其他月份的日期 */
82
+ .WdateDiv .WotherDay { cursor:pointer; color:#666; }
83
+ /* 其他月份的日期mouseover样式 */
84
+ .WdateDiv .WotherDayOn { cursor:pointer; color:#666; }
85
+ /* 无效日期的样式,即在日期范围以外日期格的样式,不能选择的日期 */
86
+ .WdateDiv .WinvalidDay { color:#aaa; }
87
+
88
+ /****************************
89
+ * 时间相关
90
+ ***************************/
91
+ /* 时间栏 DIV */
92
+ .WdateDiv #dpTime { margin-top:3px; }
93
+ /* 时间文字 SPAN */
94
+ .WdateDiv #dpTime #dpTimeStr { margin-left:1px; color:green; }
95
+ /* 时间输入框 INPUT */
96
+ .WdateDiv #dpTime input { width:18px; height:16px; border:#5d99cf 1px solid; color:black; line-height:14px; text-align:center; }
97
+ /* 时间 时 INPUT */
98
+ .WdateDiv #dpTime .tB { border-right:0px; }
99
+ /* 时间 分和间隔符 ':' INPUT */
100
+ .WdateDiv #dpTime .tE { border-left:0; border-right:0; }
101
+ /* 时间 秒 INPUT */
102
+ .WdateDiv #dpTime .tm { width:7px; border-left:0; border-right:0; }
103
+ /* 时间右边的向上按钮 BUTTON */
104
+ .WdateDiv #dpTime #dpTimeUp { border:solid 1px #7cc64b; border-right:solid 1px #7cc64b; height:10px; width:13px; padding:0; background:#7cc64b url(bg.gif) no-repeat -10px 2px; *background:#7cc64b url(bg.gif) no-repeat -11px 1px;
105
+ }
106
+ /* 时间右边的向下按钮 BUTTON */
107
+ .WdateDiv #dpTime #dpTimeDown { border:solid 1px #8db279; border-right:solid 1px #7cc64b; height:10px; width:13px; padding:0; background:#7cc64b url(bg.gif) no-repeat -10px -17px; *background:#4b89c6 url(bg.gif) no-repeat -11px -18px;
108
+ }
109
+ /****************************
110
+ * 其他
111
+ ***************************/
112
+ .WdateDiv #dpQS { float:left; width:20px; height:20px; margin:3px 3px 0 0; background-image:url(qs.jpg); cursor:pointer; }
113
+ .WdateDiv #dpControl { margin-top:3px; text-align:right; }
114
+ .WdateDiv .dpButton { width:45px; height:21px; overflow:hidden; background:#4b89c6 url(qs.jpg) repeat-x bottom; color:white; border: solid 1px #5d99cf; *border: solid 1px;
115
115
  line-height:19px; }
@@ -1,181 +1,181 @@
1
- (function($){
2
- $.fn.validationEngineLanguage = function(){
3
- };
4
- $.validationEngineLanguage = {
5
- newLang: function(){
6
- $.validationEngineLanguage.allRules = {
7
- "required": { // Add your regex rules here, you can take telephone as an example
8
- "regex": "none",
9
- "alertText": "* 此处不可空白",
10
- "alertTextCheckboxMultiple": "* 请选择一个项目",
11
- "alertTextCheckboxe": "* 您必须钩选此栏",
12
- "alertTextDateRange": "* 日期范围不可空白"
13
- },
14
- "requiredInFunction": {
15
- "func": function(field, rules, i, options){
16
- return (field.val() == "test") ? true : false;
17
- },
18
- "alertText": "* Field must equal test"
19
- },
20
- "dateRange": {
21
- "regex": "none",
22
- "alertText": "* 无效的 ",
23
- "alertText2": " 日期范围"
24
- },
25
- "dateTimeRange": {
26
- "regex": "none",
27
- "alertText": "* 无效的 ",
28
- "alertText2": " 时间范围"
29
- },
30
- "minSize": {
31
- "regex": "none",
32
- "alertText": "* 最少 ",
33
- "alertText2": " 个字符"
34
- },
35
- "maxSize": {
36
- "regex": "none",
37
- "alertText": "* 最多 ",
38
- "alertText2": " 个字符"
39
- },
40
- "groupRequired": {
41
- "regex": "none",
42
- "alertText": "* 你必需选填其中一个栏位"
43
- },
44
- "min": {
45
- "regex": "none",
46
- "alertText": "* 最小值為 "
47
- },
48
- "max": {
49
- "regex": "none",
50
- "alertText": "* 最大值为 "
51
- },
52
- "past": {
53
- "regex": "none",
54
- "alertText": "* 日期必需早于 "
55
- },
56
- "future": {
57
- "regex": "none",
58
- "alertText": "* 日期必需晚于 "
59
- },
60
- "maxCheckbox": {
61
- "regex": "none",
62
- "alertText": "* 最多选取 ",
63
- "alertText2": " 个项目"
64
- },
65
- "minCheckbox": {
66
- "regex": "none",
67
- "alertText": "* 请选择 ",
68
- "alertText2": " 个项目"
69
- },
70
- "equals": {
71
- "regex": "none",
72
- "alertText": "* 请输入与上面相同的密码"
73
- },
74
- "creditCard": {
75
- "regex": "none",
76
- "alertText": "* 无效的信用卡号码"
77
- },
78
- "phone": {
79
- // credit: jquery.h5validate.js / orefalo
80
- "regex": /^([\+][0-9]{1,3}([ \.\-])?)?([\(][0-9]{1,6}[\)])?([0-9 \.\-]{1,32})(([A-Za-z \:]{1,11})?[0-9]{1,4}?)$/,
81
- "alertText": "* 无效的电话号码"
82
- },
83
- "email": {
84
- // Shamelessly lifted from Scott Gonzalez via the Bassistance Validation plugin http://projects.scottsplayground.com/email_address_validation/
85
- "regex": /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,
86
- "alertText": "* 邮件地址无效"
87
- },
88
- "integer": {
89
- "regex": /^[\-\+]?\d+$/,
90
- "alertText": "* 不是有效的整数"
91
- },
92
- "number": {
93
- // Number, including positive, negative, and floating decimal. credit: orefalo
94
- "regex": /^[\-\+]?((([0-9]{1,3})([,][0-9]{3})*)|([0-9]+))?([\.]([0-9]+))?$/,
95
- "alertText": "* 无效的数字"
96
- },
97
- "date": {
98
- "regex": /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/,
99
- "alertText": "* 无效的日期,格式必需为 YYYY-MM-DD"
100
- },
101
- "ipv4": {
102
- "regex": /^((([01]?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5]))[.]){3}(([0-1]?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5]))$/,
103
- "alertText": "* 无效的 IP 地址"
104
- },
105
- "url": {
106
- "regex": /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,
107
- "alertText": "* Invalid URL"
108
- },
109
- "onlyNumberSp": {
110
- "regex": /^[0-9\ ]+$/,
111
- "alertText": "* 只能填数字"
112
- },
113
- "onlyLetterSp": {
114
- "regex": /^[a-zA-Z\ \']+$/,
115
- "alertText": "* 只接受英文字母大小写"
116
- },
117
- "onlyLetterAccentSp":{
118
- "regex": /^[a-z\u00C0-\u017F\ ]+$/i,
119
- "alertText": "* 只接受英文字母大小写"
120
- },
121
- "onlyLetterNumber": {
122
- "regex": /^[0-9a-zA-Z]+$/,
123
- "alertText": "* 不接受特殊字符"
124
- },
125
- // --- CUSTOM RULES -- Those are specific to the demos, they can be removed or changed to your likings
126
- "ajaxUserCall": {
127
- "url": "ajaxValidateFieldUser",
128
- // you may want to pass extra data on the ajax call
129
- "extraData": "name=eric",
130
- "alertText": "* 此名称已被其他人使用",
131
- "alertTextLoad": "* 正在确认名称是否有其他人使用,请稍等。"
132
- },
133
- "ajaxUserCallPhp": {
134
- "url": "phpajax/ajaxValidateFieldUser.php",
135
- // you may want to pass extra data on the ajax call
136
- "extraData": "name=eric",
137
- // if you provide an "alertTextOk", it will show as a green prompt when the field validates
138
- "alertTextOk": "* 此帐号名称可以使用",
139
- "alertText": "* 此名称已被其他人使用",
140
- "alertTextLoad": "* 正在确认帐号名称是否有其他人使用,请稍等。"
141
- },
142
- "ajaxNameCall": {
143
- // remote json service location
144
- "url": "ajaxValidateFieldName",
145
- // error
146
- "alertText": "* 此名称可以使用",
147
- // if you provide an "alertTextOk", it will show as a green prompt when the field validates
148
- "alertTextOk": "* 此名称已被其他人使用",
149
- // speaks by itself
150
- "alertTextLoad": "* 正在确认名称是否有其他人使用,请稍等。"
151
- },
152
- "ajaxNameCallPhp": {
153
- // remote json service location
154
- "url": "phpajax/ajaxValidateFieldName.php",
155
- // error
156
- "alertText": "* 此名称已被其他人使用",
157
- // speaks by itself
158
- "alertTextLoad": "* 正在确认名称是否有其他人使用,请稍等。"
159
- },
160
- "validate2fields": {
161
- "alertText": "* 请输入 HELLO"
162
- },
163
- //tls warning:homegrown not fielded
164
- "dateFormat":{
165
- "regex": /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$|^(?:(?:(?:0?[13578]|1[02])(\/|-)31)|(?:(?:0?[1,3-9]|1[0-2])(\/|-)(?:29|30)))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(?:(?:0?[1-9]|1[0-2])(\/|-)(?:0?[1-9]|1\d|2[0-8]))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(0?2(\/|-)29)(\/|-)(?:(?:0[48]00|[13579][26]00|[2468][048]00)|(?:\d\d)?(?:0[48]|[2468][048]|[13579][26]))$/,
166
- "alertText": "* 无效的日期格式"
167
- },
168
- //tls warning:homegrown not fielded
169
- "dateTimeFormat": {
170
- "regex": /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])\s+(1[012]|0?[1-9]){1}:(0?[1-5]|[0-6][0-9]){1}:(0?[0-6]|[0-6][0-9]){1}\s+(am|pm|AM|PM){1}$|^(?:(?:(?:0?[13578]|1[02])(\/|-)31)|(?:(?:0?[1,3-9]|1[0-2])(\/|-)(?:29|30)))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^((1[012]|0?[1-9]){1}\/(0?[1-9]|[12][0-9]|3[01]){1}\/\d{2,4}\s+(1[012]|0?[1-9]){1}:(0?[1-5]|[0-6][0-9]){1}:(0?[0-6]|[0-6][0-9]){1}\s+(am|pm|AM|PM){1})$/,
171
- "alertText": "* 无效的日期或时间格式",
172
- "alertText2": "可接受的格式: ",
173
- "alertText3": "mm/dd/yyyy hh:mm:ss AM|PM 或 ",
174
- "alertText4": "yyyy-mm-dd hh:mm:ss AM|PM"
175
- }
176
- };
177
-
178
- }
179
- };
180
- $.validationEngineLanguage.newLang();
181
- })(jQuery);
1
+ (function($){
2
+ $.fn.validationEngineLanguage = function(){
3
+ };
4
+ $.validationEngineLanguage = {
5
+ newLang: function(){
6
+ $.validationEngineLanguage.allRules = {
7
+ "required": { // Add your regex rules here, you can take telephone as an example
8
+ "regex": "none",
9
+ "alertText": "* 此处不可空白",
10
+ "alertTextCheckboxMultiple": "* 请选择一个项目",
11
+ "alertTextCheckboxe": "* 您必须钩选此栏",
12
+ "alertTextDateRange": "* 日期范围不可空白"
13
+ },
14
+ "requiredInFunction": {
15
+ "func": function(field, rules, i, options){
16
+ return (field.val() == "test") ? true : false;
17
+ },
18
+ "alertText": "* Field must equal test"
19
+ },
20
+ "dateRange": {
21
+ "regex": "none",
22
+ "alertText": "* 无效的 ",
23
+ "alertText2": " 日期范围"
24
+ },
25
+ "dateTimeRange": {
26
+ "regex": "none",
27
+ "alertText": "* 无效的 ",
28
+ "alertText2": " 时间范围"
29
+ },
30
+ "minSize": {
31
+ "regex": "none",
32
+ "alertText": "* 最少 ",
33
+ "alertText2": " 个字符"
34
+ },
35
+ "maxSize": {
36
+ "regex": "none",
37
+ "alertText": "* 最多 ",
38
+ "alertText2": " 个字符"
39
+ },
40
+ "groupRequired": {
41
+ "regex": "none",
42
+ "alertText": "* 你必需选填其中一个栏位"
43
+ },
44
+ "min": {
45
+ "regex": "none",
46
+ "alertText": "* 最小值為 "
47
+ },
48
+ "max": {
49
+ "regex": "none",
50
+ "alertText": "* 最大值为 "
51
+ },
52
+ "past": {
53
+ "regex": "none",
54
+ "alertText": "* 日期必需早于 "
55
+ },
56
+ "future": {
57
+ "regex": "none",
58
+ "alertText": "* 日期必需晚于 "
59
+ },
60
+ "maxCheckbox": {
61
+ "regex": "none",
62
+ "alertText": "* 最多选取 ",
63
+ "alertText2": " 个项目"
64
+ },
65
+ "minCheckbox": {
66
+ "regex": "none",
67
+ "alertText": "* 请选择 ",
68
+ "alertText2": " 个项目"
69
+ },
70
+ "equals": {
71
+ "regex": "none",
72
+ "alertText": "* 请输入与上面相同的密码"
73
+ },
74
+ "creditCard": {
75
+ "regex": "none",
76
+ "alertText": "* 无效的信用卡号码"
77
+ },
78
+ "phone": {
79
+ // credit: jquery.h5validate.js / orefalo
80
+ "regex": /^([\+][0-9]{1,3}([ \.\-])?)?([\(][0-9]{1,6}[\)])?([0-9 \.\-]{1,32})(([A-Za-z \:]{1,11})?[0-9]{1,4}?)$/,
81
+ "alertText": "* 无效的电话号码"
82
+ },
83
+ "email": {
84
+ // Shamelessly lifted from Scott Gonzalez via the Bassistance Validation plugin http://projects.scottsplayground.com/email_address_validation/
85
+ "regex": /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,
86
+ "alertText": "* 邮件地址无效"
87
+ },
88
+ "integer": {
89
+ "regex": /^[\-\+]?\d+$/,
90
+ "alertText": "* 不是有效的整数"
91
+ },
92
+ "number": {
93
+ // Number, including positive, negative, and floating decimal. credit: orefalo
94
+ "regex": /^[\-\+]?((([0-9]{1,3})([,][0-9]{3})*)|([0-9]+))?([\.]([0-9]+))?$/,
95
+ "alertText": "* 无效的数字"
96
+ },
97
+ "date": {
98
+ "regex": /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/,
99
+ "alertText": "* 无效的日期,格式必需为 YYYY-MM-DD"
100
+ },
101
+ "ipv4": {
102
+ "regex": /^((([01]?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5]))[.]){3}(([0-1]?[0-9]{1,2})|(2[0-4][0-9])|(25[0-5]))$/,
103
+ "alertText": "* 无效的 IP 地址"
104
+ },
105
+ "url": {
106
+ "regex": /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i,
107
+ "alertText": "* Invalid URL"
108
+ },
109
+ "onlyNumberSp": {
110
+ "regex": /^[0-9\ ]+$/,
111
+ "alertText": "* 只能填数字"
112
+ },
113
+ "onlyLetterSp": {
114
+ "regex": /^[a-zA-Z\ \']+$/,
115
+ "alertText": "* 只接受英文字母大小写"
116
+ },
117
+ "onlyLetterAccentSp":{
118
+ "regex": /^[a-z\u00C0-\u017F\ ]+$/i,
119
+ "alertText": "* 只接受英文字母大小写"
120
+ },
121
+ "onlyLetterNumber": {
122
+ "regex": /^[0-9a-zA-Z]+$/,
123
+ "alertText": "* 不接受特殊字符"
124
+ },
125
+ // --- CUSTOM RULES -- Those are specific to the demos, they can be removed or changed to your likings
126
+ "ajaxUserCall": {
127
+ "url": "ajaxValidateFieldUser",
128
+ // you may want to pass extra data on the ajax call
129
+ "extraData": "name=eric",
130
+ "alertText": "* 此名称已被其他人使用",
131
+ "alertTextLoad": "* 正在确认名称是否有其他人使用,请稍等。"
132
+ },
133
+ "ajaxUserCallPhp": {
134
+ "url": "phpajax/ajaxValidateFieldUser.php",
135
+ // you may want to pass extra data on the ajax call
136
+ "extraData": "name=eric",
137
+ // if you provide an "alertTextOk", it will show as a green prompt when the field validates
138
+ "alertTextOk": "* 此帐号名称可以使用",
139
+ "alertText": "* 此名称已被其他人使用",
140
+ "alertTextLoad": "* 正在确认帐号名称是否有其他人使用,请稍等。"
141
+ },
142
+ "ajaxNameCall": {
143
+ // remote json service location
144
+ "url": "ajaxValidateFieldName",
145
+ // error
146
+ "alertText": "* 此名称可以使用",
147
+ // if you provide an "alertTextOk", it will show as a green prompt when the field validates
148
+ "alertTextOk": "* 此名称已被其他人使用",
149
+ // speaks by itself
150
+ "alertTextLoad": "* 正在确认名称是否有其他人使用,请稍等。"
151
+ },
152
+ "ajaxNameCallPhp": {
153
+ // remote json service location
154
+ "url": "phpajax/ajaxValidateFieldName.php",
155
+ // error
156
+ "alertText": "* 此名称已被其他人使用",
157
+ // speaks by itself
158
+ "alertTextLoad": "* 正在确认名称是否有其他人使用,请稍等。"
159
+ },
160
+ "validate2fields": {
161
+ "alertText": "* 请输入 HELLO"
162
+ },
163
+ //tls warning:homegrown not fielded
164
+ "dateFormat":{
165
+ "regex": /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$|^(?:(?:(?:0?[13578]|1[02])(\/|-)31)|(?:(?:0?[1,3-9]|1[0-2])(\/|-)(?:29|30)))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(?:(?:0?[1-9]|1[0-2])(\/|-)(?:0?[1-9]|1\d|2[0-8]))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^(0?2(\/|-)29)(\/|-)(?:(?:0[48]00|[13579][26]00|[2468][048]00)|(?:\d\d)?(?:0[48]|[2468][048]|[13579][26]))$/,
166
+ "alertText": "* 无效的日期格式"
167
+ },
168
+ //tls warning:homegrown not fielded
169
+ "dateTimeFormat": {
170
+ "regex": /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])\s+(1[012]|0?[1-9]){1}:(0?[1-5]|[0-6][0-9]){1}:(0?[0-6]|[0-6][0-9]){1}\s+(am|pm|AM|PM){1}$|^(?:(?:(?:0?[13578]|1[02])(\/|-)31)|(?:(?:0?[1,3-9]|1[0-2])(\/|-)(?:29|30)))(\/|-)(?:[1-9]\d\d\d|\d[1-9]\d\d|\d\d[1-9]\d|\d\d\d[1-9])$|^((1[012]|0?[1-9]){1}\/(0?[1-9]|[12][0-9]|3[01]){1}\/\d{2,4}\s+(1[012]|0?[1-9]){1}:(0?[1-5]|[0-6][0-9]){1}:(0?[0-6]|[0-6][0-9]){1}\s+(am|pm|AM|PM){1})$/,
171
+ "alertText": "* 无效的日期或时间格式",
172
+ "alertText2": "可接受的格式: ",
173
+ "alertText3": "mm/dd/yyyy hh:mm:ss AM|PM 或 ",
174
+ "alertText4": "yyyy-mm-dd hh:mm:ss AM|PM"
175
+ }
176
+ };
177
+
178
+ }
179
+ };
180
+ $.validationEngineLanguage.newLang();
181
+ })(jQuery);