Version Description
- All files have been changed!
Download this release
Release Info
| Developer | tlovett1 |
| Plugin | |
| Version | 4.7.0.0 |
| Comparing to | |
| See all releases | |
Code changes from version 4.6.0.1 to 4.7.0.0
- css/colorpicker.css +161 -161
- css/custom-contact-forms-admin.css +603 -602
- css/custom-contact-forms-dashboard.css +39 -35
- css/custom-contact-forms-standards.css +15 -15
- css/custom-contact-forms.css +124 -124
- css/jquery-ui.css +570 -570
- custom-contact-forms-admin.php +2507 -2450
- custom-contact-forms-front.php +651 -585
- custom-contact-forms-utils.php +83 -82
- custom-contact-forms.php +135 -135
- download.php +21 -21
- image.php +20 -20
- js/colorpicker.js +483 -483
- js/custom-contact-forms-admin-ajax.js +254 -254
- js/custom-contact-forms-admin-inc.js +46 -46
- js/custom-contact-forms-admin.js +98 -83
- js/custom-contact-forms-dashboard.js +16 -16
- js/custom-contact-forms-datepicker.js +4 -4
- js/eye.js +34 -34
- js/jquery-ui-1.8.4.custom.js +1578 -1578
- js/jquery.bgiframe-2.1.1.js +9 -9
- js/jquery.form.js +864 -864
- js/jquery.tools.min.js +269 -269
- js/jquery.ui.dialog.js +827 -827
- js/jquery.ui.js +150 -0
css/colorpicker.css
CHANGED
|
@@ -1,161 +1,161 @@
|
|
| 1 |
-
.colorpicker {
|
| 2 |
-
width: 356px;
|
| 3 |
-
height: 176px;
|
| 4 |
-
overflow: hidden;
|
| 5 |
-
position: absolute;
|
| 6 |
-
background: url(../images/colorpicker_background.png);
|
| 7 |
-
font-family: Arial, Helvetica, sans-serif;
|
| 8 |
-
display: none;
|
| 9 |
-
}
|
| 10 |
-
.colorpicker_color {
|
| 11 |
-
width: 150px;
|
| 12 |
-
height: 150px;
|
| 13 |
-
left: 14px;
|
| 14 |
-
top: 13px;
|
| 15 |
-
position: absolute;
|
| 16 |
-
background: #f00;
|
| 17 |
-
overflow: hidden;
|
| 18 |
-
cursor: crosshair;
|
| 19 |
-
}
|
| 20 |
-
.colorpicker_color div {
|
| 21 |
-
position: absolute;
|
| 22 |
-
top: 0;
|
| 23 |
-
left: 0;
|
| 24 |
-
width: 150px;
|
| 25 |
-
height: 150px;
|
| 26 |
-
background: url(../images/colorpicker_overlay.png);
|
| 27 |
-
}
|
| 28 |
-
.colorpicker_color div div {
|
| 29 |
-
position: absolute;
|
| 30 |
-
top: 0;
|
| 31 |
-
left: 0;
|
| 32 |
-
width: 11px;
|
| 33 |
-
height: 11px;
|
| 34 |
-
overflow: hidden;
|
| 35 |
-
background: url(../images/colorpicker_select.gif);
|
| 36 |
-
margin: -5px 0 0 -5px;
|
| 37 |
-
}
|
| 38 |
-
.colorpicker_hue {
|
| 39 |
-
position: absolute;
|
| 40 |
-
top: 13px;
|
| 41 |
-
left: 171px;
|
| 42 |
-
width: 35px;
|
| 43 |
-
height: 150px;
|
| 44 |
-
cursor: n-resize;
|
| 45 |
-
}
|
| 46 |
-
.colorpicker_hue div {
|
| 47 |
-
position: absolute;
|
| 48 |
-
width: 35px;
|
| 49 |
-
height: 9px;
|
| 50 |
-
overflow: hidden;
|
| 51 |
-
background: url(../images/colorpicker_indic.gif) left top;
|
| 52 |
-
margin: -4px 0 0 0;
|
| 53 |
-
left: 0px;
|
| 54 |
-
}
|
| 55 |
-
.colorpicker_new_color {
|
| 56 |
-
position: absolute;
|
| 57 |
-
width: 60px;
|
| 58 |
-
height: 30px;
|
| 59 |
-
left: 213px;
|
| 60 |
-
top: 13px;
|
| 61 |
-
background: #f00;
|
| 62 |
-
}
|
| 63 |
-
.colorpicker_current_color {
|
| 64 |
-
position: absolute;
|
| 65 |
-
width: 60px;
|
| 66 |
-
height: 30px;
|
| 67 |
-
left: 283px;
|
| 68 |
-
top: 13px;
|
| 69 |
-
background: #f00;
|
| 70 |
-
}
|
| 71 |
-
.colorpicker input {
|
| 72 |
-
background-color: transparent;
|
| 73 |
-
border: 1px solid transparent;
|
| 74 |
-
position: absolute;
|
| 75 |
-
font-size: 10px;
|
| 76 |
-
font-family: Arial, Helvetica, sans-serif;
|
| 77 |
-
color: #898989;
|
| 78 |
-
top: 4px;
|
| 79 |
-
right: 11px;
|
| 80 |
-
text-align: right;
|
| 81 |
-
margin: 0;
|
| 82 |
-
padding: 0;
|
| 83 |
-
height: 11px;
|
| 84 |
-
}
|
| 85 |
-
.colorpicker_hex {
|
| 86 |
-
position: absolute;
|
| 87 |
-
width: 72px;
|
| 88 |
-
height: 22px;
|
| 89 |
-
background: url(../images/colorpicker_hex.png) top;
|
| 90 |
-
left: 212px;
|
| 91 |
-
top: 142px;
|
| 92 |
-
}
|
| 93 |
-
.colorpicker_hex input {
|
| 94 |
-
right: 6px;
|
| 95 |
-
}
|
| 96 |
-
.colorpicker_field {
|
| 97 |
-
height: 22px;
|
| 98 |
-
width: 62px;
|
| 99 |
-
background-position: top;
|
| 100 |
-
position: absolute;
|
| 101 |
-
}
|
| 102 |
-
.colorpicker_field span {
|
| 103 |
-
position: absolute;
|
| 104 |
-
width: 12px;
|
| 105 |
-
height: 22px;
|
| 106 |
-
overflow: hidden;
|
| 107 |
-
top: 0;
|
| 108 |
-
right: 0;
|
| 109 |
-
cursor: n-resize;
|
| 110 |
-
}
|
| 111 |
-
.colorpicker_rgb_r {
|
| 112 |
-
background-image: url(../images/colorpicker_rgb_r.png);
|
| 113 |
-
top: 52px;
|
| 114 |
-
left: 212px;
|
| 115 |
-
}
|
| 116 |
-
.colorpicker_rgb_g {
|
| 117 |
-
background-image: url(../images/colorpicker_rgb_g.png);
|
| 118 |
-
top: 82px;
|
| 119 |
-
left: 212px;
|
| 120 |
-
}
|
| 121 |
-
.colorpicker_rgb_b {
|
| 122 |
-
background-image: url(../images/colorpicker_rgb_b.png);
|
| 123 |
-
top: 112px;
|
| 124 |
-
left: 212px;
|
| 125 |
-
}
|
| 126 |
-
.colorpicker_hsb_h {
|
| 127 |
-
background-image: url(../images/colorpicker_hsb_h.png);
|
| 128 |
-
top: 52px;
|
| 129 |
-
left: 282px;
|
| 130 |
-
}
|
| 131 |
-
.colorpicker_hsb_s {
|
| 132 |
-
background-image: url(../images/colorpicker_hsb_s.png);
|
| 133 |
-
top: 82px;
|
| 134 |
-
left: 282px;
|
| 135 |
-
}
|
| 136 |
-
.colorpicker_hsb_b {
|
| 137 |
-
background-image: url(../images/colorpicker_hsb_b.png);
|
| 138 |
-
top: 112px;
|
| 139 |
-
left: 282px;
|
| 140 |
-
}
|
| 141 |
-
.colorpicker_submit {
|
| 142 |
-
position: absolute;
|
| 143 |
-
width: 22px;
|
| 144 |
-
height: 22px;
|
| 145 |
-
background: url(../images/colorpicker_submit.png) top;
|
| 146 |
-
left: 322px;
|
| 147 |
-
top: 142px;
|
| 148 |
-
overflow: hidden;
|
| 149 |
-
}
|
| 150 |
-
.colorpicker_focus {
|
| 151 |
-
background-position: center;
|
| 152 |
-
}
|
| 153 |
-
.colorpicker_hex.colorpicker_focus {
|
| 154 |
-
background-position: bottom;
|
| 155 |
-
}
|
| 156 |
-
.colorpicker_submit.colorpicker_focus {
|
| 157 |
-
background-position: bottom;
|
| 158 |
-
}
|
| 159 |
-
.colorpicker_slider {
|
| 160 |
-
background-position: bottom;
|
| 161 |
-
}
|
| 1 |
+
.colorpicker {
|
| 2 |
+
width: 356px;
|
| 3 |
+
height: 176px;
|
| 4 |
+
overflow: hidden;
|
| 5 |
+
position: absolute;
|
| 6 |
+
background: url(../images/colorpicker_background.png);
|
| 7 |
+
font-family: Arial, Helvetica, sans-serif;
|
| 8 |
+
display: none;
|
| 9 |
+
}
|
| 10 |
+
.colorpicker_color {
|
| 11 |
+
width: 150px;
|
| 12 |
+
height: 150px;
|
| 13 |
+
left: 14px;
|
| 14 |
+
top: 13px;
|
| 15 |
+
position: absolute;
|
| 16 |
+
background: #f00;
|
| 17 |
+
overflow: hidden;
|
| 18 |
+
cursor: crosshair;
|
| 19 |
+
}
|
| 20 |
+
.colorpicker_color div {
|
| 21 |
+
position: absolute;
|
| 22 |
+
top: 0;
|
| 23 |
+
left: 0;
|
| 24 |
+
width: 150px;
|
| 25 |
+
height: 150px;
|
| 26 |
+
background: url(../images/colorpicker_overlay.png);
|
| 27 |
+
}
|
| 28 |
+
.colorpicker_color div div {
|
| 29 |
+
position: absolute;
|
| 30 |
+
top: 0;
|
| 31 |
+
left: 0;
|
| 32 |
+
width: 11px;
|
| 33 |
+
height: 11px;
|
| 34 |
+
overflow: hidden;
|
| 35 |
+
background: url(../images/colorpicker_select.gif);
|
| 36 |
+
margin: -5px 0 0 -5px;
|
| 37 |
+
}
|
| 38 |
+
.colorpicker_hue {
|
| 39 |
+
position: absolute;
|
| 40 |
+
top: 13px;
|
| 41 |
+
left: 171px;
|
| 42 |
+
width: 35px;
|
| 43 |
+
height: 150px;
|
| 44 |
+
cursor: n-resize;
|
| 45 |
+
}
|
| 46 |
+
.colorpicker_hue div {
|
| 47 |
+
position: absolute;
|
| 48 |
+
width: 35px;
|
| 49 |
+
height: 9px;
|
| 50 |
+
overflow: hidden;
|
| 51 |
+
background: url(../images/colorpicker_indic.gif) left top;
|
| 52 |
+
margin: -4px 0 0 0;
|
| 53 |
+
left: 0px;
|
| 54 |
+
}
|
| 55 |
+
.colorpicker_new_color {
|
| 56 |
+
position: absolute;
|
| 57 |
+
width: 60px;
|
| 58 |
+
height: 30px;
|
| 59 |
+
left: 213px;
|
| 60 |
+
top: 13px;
|
| 61 |
+
background: #f00;
|
| 62 |
+
}
|
| 63 |
+
.colorpicker_current_color {
|
| 64 |
+
position: absolute;
|
| 65 |
+
width: 60px;
|
| 66 |
+
height: 30px;
|
| 67 |
+
left: 283px;
|
| 68 |
+
top: 13px;
|
| 69 |
+
background: #f00;
|
| 70 |
+
}
|
| 71 |
+
.colorpicker input {
|
| 72 |
+
background-color: transparent;
|
| 73 |
+
border: 1px solid transparent;
|
| 74 |
+
position: absolute;
|
| 75 |
+
font-size: 10px;
|
| 76 |
+
font-family: Arial, Helvetica, sans-serif;
|
| 77 |
+
color: #898989;
|
| 78 |
+
top: 4px;
|
| 79 |
+
right: 11px;
|
| 80 |
+
text-align: right;
|
| 81 |
+
margin: 0;
|
| 82 |
+
padding: 0;
|
| 83 |
+
height: 11px;
|
| 84 |
+
}
|
| 85 |
+
.colorpicker_hex {
|
| 86 |
+
position: absolute;
|
| 87 |
+
width: 72px;
|
| 88 |
+
height: 22px;
|
| 89 |
+
background: url(../images/colorpicker_hex.png) top;
|
| 90 |
+
left: 212px;
|
| 91 |
+
top: 142px;
|
| 92 |
+
}
|
| 93 |
+
.colorpicker_hex input {
|
| 94 |
+
right: 6px;
|
| 95 |
+
}
|
| 96 |
+
.colorpicker_field {
|
| 97 |
+
height: 22px;
|
| 98 |
+
width: 62px;
|
| 99 |
+
background-position: top;
|
| 100 |
+
position: absolute;
|
| 101 |
+
}
|
| 102 |
+
.colorpicker_field span {
|
| 103 |
+
position: absolute;
|
| 104 |
+
width: 12px;
|
| 105 |
+
height: 22px;
|
| 106 |
+
overflow: hidden;
|
| 107 |
+
top: 0;
|
| 108 |
+
right: 0;
|
| 109 |
+
cursor: n-resize;
|
| 110 |
+
}
|
| 111 |
+
.colorpicker_rgb_r {
|
| 112 |
+
background-image: url(../images/colorpicker_rgb_r.png);
|
| 113 |
+
top: 52px;
|
| 114 |
+
left: 212px;
|
| 115 |
+
}
|
| 116 |
+
.colorpicker_rgb_g {
|
| 117 |
+
background-image: url(../images/colorpicker_rgb_g.png);
|
| 118 |
+
top: 82px;
|
| 119 |
+
left: 212px;
|
| 120 |
+
}
|
| 121 |
+
.colorpicker_rgb_b {
|
| 122 |
+
background-image: url(../images/colorpicker_rgb_b.png);
|
| 123 |
+
top: 112px;
|
| 124 |
+
left: 212px;
|
| 125 |
+
}
|
| 126 |
+
.colorpicker_hsb_h {
|
| 127 |
+
background-image: url(../images/colorpicker_hsb_h.png);
|
| 128 |
+
top: 52px;
|
| 129 |
+
left: 282px;
|
| 130 |
+
}
|
| 131 |
+
.colorpicker_hsb_s {
|
| 132 |
+
background-image: url(../images/colorpicker_hsb_s.png);
|
| 133 |
+
top: 82px;
|
| 134 |
+
left: 282px;
|
| 135 |
+
}
|
| 136 |
+
.colorpicker_hsb_b {
|
| 137 |
+
background-image: url(../images/colorpicker_hsb_b.png);
|
| 138 |
+
top: 112px;
|
| 139 |
+
left: 282px;
|
| 140 |
+
}
|
| 141 |
+
.colorpicker_submit {
|
| 142 |
+
position: absolute;
|
| 143 |
+
width: 22px;
|
| 144 |
+
height: 22px;
|
| 145 |
+
background: url(../images/colorpicker_submit.png) top;
|
| 146 |
+
left: 322px;
|
| 147 |
+
top: 142px;
|
| 148 |
+
overflow: hidden;
|
| 149 |
+
}
|
| 150 |
+
.colorpicker_focus {
|
| 151 |
+
background-position: center;
|
| 152 |
+
}
|
| 153 |
+
.colorpicker_hex.colorpicker_focus {
|
| 154 |
+
background-position: bottom;
|
| 155 |
+
}
|
| 156 |
+
.colorpicker_submit.colorpicker_focus {
|
| 157 |
+
background-position: bottom;
|
| 158 |
+
}
|
| 159 |
+
.colorpicker_slider {
|
| 160 |
+
background-position: bottom;
|
| 161 |
+
}
|
css/custom-contact-forms-admin.css
CHANGED
|
@@ -1,602 +1,603 @@
|
|
| 1 |
-
#customcontactforms-admin {
|
| 2 |
-
vertical-align:top;
|
| 3 |
-
margin:1em
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
}
|
| 23 |
-
#customcontactforms-admin .plugin-header input {
|
| 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 |
-
#customcontactforms-admin
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
margin:
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
|
| 72 |
-
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
|
| 76 |
-
|
| 77 |
-
|
| 78 |
-
|
| 79 |
-
|
| 80 |
-
|
| 81 |
-
}
|
| 82 |
-
#customcontactforms-admin #
|
| 83 |
-
|
| 84 |
-
|
| 85 |
-
|
| 86 |
-
|
| 87 |
-
#customcontactforms-admin
|
| 88 |
-
|
| 89 |
-
|
| 90 |
-
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
| 94 |
-
|
| 95 |
-
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
border:
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
|
| 102 |
-
|
| 103 |
-
|
| 104 |
-
|
| 105 |
-
|
| 106 |
-
-
|
| 107 |
-
border
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
| 115 |
-
|
| 116 |
-
border:
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
| 123 |
-
|
| 124 |
-
|
| 125 |
-
|
| 126 |
-
-
|
| 127 |
-
border-radius:
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
| 131 |
-
|
| 132 |
-
|
| 133 |
-
|
| 134 |
-
|
| 135 |
-
-
|
| 136 |
-
-
|
| 137 |
-
-webkit-
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
}
|
| 149 |
-
#customcontactforms-admin
|
| 150 |
-
text-
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
|
| 154 |
-
|
| 155 |
-
|
| 156 |
-
|
| 157 |
-
|
| 158 |
-
|
| 159 |
-
|
| 160 |
-
|
| 161 |
-
|
| 162 |
-
|
| 163 |
-
border:
|
| 164 |
-
|
| 165 |
-
|
| 166 |
-
|
| 167 |
-
|
| 168 |
-
|
| 169 |
-
|
| 170 |
-
|
| 171 |
-
|
| 172 |
-
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
|
| 176 |
-
|
| 177 |
-
|
| 178 |
-
|
| 179 |
-
|
| 180 |
-
|
| 181 |
-
border:
|
| 182 |
-
|
| 183 |
-
|
| 184 |
-
|
| 185 |
-
|
| 186 |
-
|
| 187 |
-
|
| 188 |
-
|
| 189 |
-
|
| 190 |
-
|
| 191 |
-
|
| 192 |
-
|
| 193 |
-
|
| 194 |
-
|
| 195 |
-
|
| 196 |
-
|
| 197 |
-
|
| 198 |
-
|
| 199 |
-
|
| 200 |
-
|
| 201 |
-
|
| 202 |
-
#customcontactforms-admin
|
| 203 |
-
|
| 204 |
-
#customcontactforms-admin
|
| 205 |
-
|
| 206 |
-
#customcontactforms-admin #form-submissions-table
|
| 207 |
-
#customcontactforms-admin #form-submissions
|
| 208 |
-
|
| 209 |
-
|
| 210 |
-
#customcontactforms-admin #
|
| 211 |
-
|
| 212 |
-
|
| 213 |
-
|
| 214 |
-
}
|
| 215 |
-
#customcontactforms-admin #
|
| 216 |
-
|
| 217 |
-
|
| 218 |
-
#customcontactforms-admin #import
|
| 219 |
-
|
| 220 |
-
|
| 221 |
-
#customcontactforms-admin #
|
| 222 |
-
#customcontactforms-admin #
|
| 223 |
-
#customcontactforms-admin #import
|
| 224 |
-
|
| 225 |
-
#customcontactforms-admin #
|
| 226 |
-
|
| 227 |
-
|
| 228 |
-
|
| 229 |
-
}
|
| 230 |
-
|
| 231 |
-
#customcontactforms-admin #manage-field-options table
|
| 232 |
-
|
| 233 |
-
|
| 234 |
-
}
|
| 235 |
-
#customcontactforms-admin #manage-field-options table
|
| 236 |
-
#customcontactforms-admin #manage-field-options table
|
| 237 |
-
#customcontactforms-admin #manage-field-options {
|
| 238 |
-
|
| 239 |
-
|
| 240 |
-
|
| 241 |
-
|
| 242 |
-
|
| 243 |
-
|
| 244 |
-
|
| 245 |
-
|
| 246 |
-
|
| 247 |
-
|
| 248 |
-
|
| 249 |
-
|
| 250 |
-
|
| 251 |
-
|
| 252 |
-
|
| 253 |
-
|
| 254 |
-
|
| 255 |
-
|
| 256 |
-
|
| 257 |
-
|
| 258 |
-
|
| 259 |
-
|
| 260 |
-
|
| 261 |
-
|
| 262 |
-
|
| 263 |
-
|
| 264 |
-
|
| 265 |
-
|
| 266 |
-
|
| 267 |
-
|
| 268 |
-
|
| 269 |
-
|
| 270 |
-
|
| 271 |
-
|
| 272 |
-
|
| 273 |
-
|
| 274 |
-
|
| 275 |
-
#customcontactforms-admin #configure-mail
|
| 276 |
-
#customcontactforms-admin #configure-mail
|
| 277 |
-
#customcontactforms-admin #configure-mail ul.
|
| 278 |
-
#customcontactforms-admin #
|
| 279 |
-
|
| 280 |
-
|
| 281 |
-
|
| 282 |
-
|
| 283 |
-
#customcontactforms-admin #create-styles
|
| 284 |
-
#customcontactforms-admin #create-styles
|
| 285 |
-
#customcontactforms-admin #create-styles .
|
| 286 |
-
#customcontactforms-admin #
|
| 287 |
-
|
| 288 |
-
|
| 289 |
-
|
| 290 |
-
|
| 291 |
-
|
| 292 |
-
#customcontactforms-admin #plugin-news ul li.
|
| 293 |
-
#customcontactforms-admin #
|
| 294 |
-
|
| 295 |
-
|
| 296 |
-
|
| 297 |
-
#customcontactforms-admin #manage-styles
|
| 298 |
-
|
| 299 |
-
|
| 300 |
-
|
| 301 |
-
|
| 302 |
-
|
| 303 |
-
|
| 304 |
-
|
| 305 |
-
|
| 306 |
-
|
| 307 |
-
}
|
| 308 |
-
#customcontactforms-admin #general-settings .
|
| 309 |
-
#customcontactforms-admin #general-settings
|
| 310 |
-
#customcontactforms-admin #general-settings
|
| 311 |
-
|
| 312 |
-
|
| 313 |
-
|
| 314 |
-
|
| 315 |
-
|
| 316 |
-
|
| 317 |
-
|
| 318 |
-
|
| 319 |
-
|
| 320 |
-
|
| 321 |
-
|
| 322 |
-
|
| 323 |
-
|
| 324 |
-
|
| 325 |
-
|
| 326 |
-
|
| 327 |
-
|
| 328 |
-
|
| 329 |
-
|
| 330 |
-
|
| 331 |
-
}
|
| 332 |
-
#customcontactforms-admin #create-forms .
|
| 333 |
-
|
| 334 |
-
|
| 335 |
-
|
| 336 |
-
|
| 337 |
-
#customcontactforms-admin
|
| 338 |
-
|
| 339 |
-
|
| 340 |
-
}
|
| 341 |
-
#customcontactforms-admin #manage-fields {
|
| 342 |
-
|
| 343 |
-
}
|
| 344 |
-
#customcontactforms-admin #manage-fields
|
| 345 |
-
|
| 346 |
-
|
| 347 |
-
}
|
| 348 |
-
#customcontactforms-admin #manage-fields .
|
| 349 |
-
|
| 350 |
-
|
| 351 |
-
|
| 352 |
-
|
| 353 |
-
|
| 354 |
-
|
| 355 |
-
|
| 356 |
-
|
| 357 |
-
|
| 358 |
-
|
| 359 |
-
|
| 360 |
-
|
| 361 |
-
|
| 362 |
-
|
| 363 |
-
margin
|
| 364 |
-
|
| 365 |
-
|
| 366 |
-
|
| 367 |
-
|
| 368 |
-
|
| 369 |
-
|
| 370 |
-
-webkit-
|
| 371 |
-
|
| 372 |
-
-
|
| 373 |
-
|
| 374 |
-
|
| 375 |
-
|
| 376 |
-
|
| 377 |
-
|
| 378 |
-
width:
|
| 379 |
-
}
|
| 380 |
-
#customcontactforms-admin
|
| 381 |
-
width:49%; float:left; text-align:left; clear:none;
|
| 382 |
-
}
|
| 383 |
-
#customcontactforms-admin
|
| 384 |
-
|
| 385 |
-
|
| 386 |
-
|
| 387 |
-
#customcontactforms-admin #manage-fixed-fields {
|
| 388 |
-
|
| 389 |
-
|
| 390 |
-
|
| 391 |
-
|
| 392 |
-
#customcontactforms-admin .
|
| 393 |
-
border-
|
| 394 |
-
}
|
| 395 |
-
#customcontactforms-admin .
|
| 396 |
-
|
| 397 |
-
|
| 398 |
-
|
| 399 |
-
|
| 400 |
-
|
| 401 |
-
|
| 402 |
-
|
| 403 |
-
|
| 404 |
-
|
| 405 |
-
|
| 406 |
-
|
| 407 |
-
|
| 408 |
-
|
| 409 |
-
|
| 410 |
-
|
| 411 |
-
|
| 412 |
-
|
| 413 |
-
|
| 414 |
-
|
| 415 |
-
}
|
| 416 |
-
|
| 417 |
-
|
| 418 |
-
|
| 419 |
-
|
| 420 |
-
|
| 421 |
-
|
| 422 |
-
|
| 423 |
-
}
|
| 424 |
-
|
| 425 |
-
|
| 426 |
-
|
| 427 |
-
|
| 428 |
-
|
| 429 |
-
|
| 430 |
-
|
| 431 |
-
|
| 432 |
-
|
| 433 |
-
|
| 434 |
-
}
|
| 435 |
-
.ccf-popover
|
| 436 |
-
.ccf-popover
|
| 437 |
-
}
|
| 438 |
-
|
| 439 |
-
|
| 440 |
-
|
| 441 |
-
|
| 442 |
-
|
| 443 |
-
|
| 444 |
-
|
| 445 |
-
|
| 446 |
-
|
| 447 |
-
|
| 448 |
-
|
| 449 |
-
|
| 450 |
-
|
| 451 |
-
}
|
| 452 |
-
|
| 453 |
-
.modal-
|
| 454 |
-
position:fixed;
|
| 455 |
-
top:
|
| 456 |
-
left:
|
| 457 |
-
|
| 458 |
-
|
| 459 |
-
|
| 460 |
-
|
| 461 |
-
|
| 462 |
-
|
| 463 |
-
|
| 464 |
-
|
| 465 |
-
|
| 466 |
-
|
| 467 |
-
|
| 468 |
-
|
| 469 |
-
|
| 470 |
-
|
| 471 |
-
|
| 472 |
-
|
| 473 |
-
|
| 474 |
-
|
| 475 |
-
|
| 476 |
-
|
| 477 |
-
|
| 478 |
-
|
| 479 |
-
|
| 480 |
-
|
| 481 |
-
|
| 482 |
-
-
|
| 483 |
-
|
| 484 |
-
|
| 485 |
-
|
| 486 |
-
|
| 487 |
-
|
| 488 |
-
|
| 489 |
-
|
| 490 |
-
|
| 491 |
-
|
| 492 |
-
|
| 493 |
-
|
| 494 |
-
|
| 495 |
-
|
| 496 |
-
|
| 497 |
-
|
| 498 |
-
|
| 499 |
-
|
| 500 |
-
|
| 501 |
-
|
| 502 |
-
|
| 503 |
-
|
| 504 |
-
-
|
| 505 |
-
|
| 506 |
-
|
| 507 |
-
}
|
| 508 |
-
|
| 509 |
-
.modal-close-btn {
|
| 510 |
-
position:
|
| 511 |
-
top
|
| 512 |
-
|
| 513 |
-
|
| 514 |
-
|
| 515 |
-
|
| 516 |
-
|
| 517 |
-
|
| 518 |
-
|
| 519 |
-
|
| 520 |
-
|
| 521 |
-
|
| 522 |
-
|
| 523 |
-
|
| 524 |
-
|
| 525 |
-
|
| 526 |
-
|
| 527 |
-
|
| 528 |
-
|
| 529 |
-
|
| 530 |
-
|
| 531 |
-
|
| 532 |
-
|
| 533 |
-
|
| 534 |
-
|
| 535 |
-
|
| 536 |
-
|
| 537 |
-
|
| 538 |
-
|
| 539 |
-
|
| 540 |
-
|
| 541 |
-
|
| 542 |
-
}
|
| 543 |
-
.
|
| 544 |
-
|
| 545 |
-
|
| 546 |
-
|
| 547 |
-
|
| 548 |
-
|
| 549 |
-
|
| 550 |
-
|
| 551 |
-
color
|
| 552 |
-
|
| 553 |
-
|
| 554 |
-
|
| 555 |
-
|
| 556 |
-
|
| 557 |
-
|
| 558 |
-
|
| 559 |
-
|
| 560 |
-
|
| 561 |
-
|
| 562 |
-
|
| 563 |
-
|
| 564 |
-
|
| 565 |
-
#
|
| 566 |
-
|
| 567 |
-
|
| 568 |
-
|
| 569 |
-
|
| 570 |
-
|
| 571 |
-
|
| 572 |
-
|
| 573 |
-
|
| 574 |
-
|
| 575 |
-
|
| 576 |
-
|
| 577 |
-
|
| 578 |
-
border: solid
|
| 579 |
-
|
| 580 |
-
|
| 581 |
-
|
| 582 |
-
|
| 583 |
-
|
| 584 |
-
|
| 585 |
-
|
| 586 |
-
|
| 587 |
-
|
| 588 |
-
|
| 589 |
-
|
| 590 |
-
|
| 591 |
-
|
| 592 |
-
|
| 593 |
-
|
| 594 |
-
|
| 595 |
-
|
| 596 |
-
|
| 597 |
-
|
| 598 |
-
|
| 599 |
-
|
| 600 |
-
|
| 601 |
-
|
| 602 |
-
|
|
Â
|
| 1 |
+
#customcontactforms-admin {
|
| 2 |
+
vertical-align:top;
|
| 3 |
+
margin:1em 15px 0px 0px;
|
| 4 |
+
|
| 5 |
+
}
|
| 6 |
+
#customcontactforms-admin .plugin-header {
|
| 7 |
+
clear:both;
|
| 8 |
+
height:50px;
|
| 9 |
+
background:url(../images/admin-icon.png) no-repeat 0px 10px;
|
| 10 |
+
}
|
| 11 |
+
#customcontactforms-admin .plugin-header h2 {
|
| 12 |
+
float:left;
|
| 13 |
+
clear:none;
|
| 14 |
+
margin-left:46px;
|
| 15 |
+
width:30%;
|
| 16 |
+
display:block; padding:0;
|
| 17 |
+
}
|
| 18 |
+
#customcontactforms-admin .plugin-header .links {
|
| 19 |
+
float:right;
|
| 20 |
+
clear:none;
|
| 21 |
+
margin-top:25px;
|
| 22 |
+
}
|
| 23 |
+
#customcontactforms-admin .plugin-header input.quick-start-button { color:red; margin-right:5px; }
|
| 24 |
+
#customcontactforms-admin .plugin-header input.usage-popover-button {
|
| 25 |
+
margin-right:10px;
|
| 26 |
+
}
|
| 27 |
+
#customcontactforms-admin input[type=button] {
|
| 28 |
+
-moz-background-clip:border;
|
| 29 |
+
-moz-background-inline-policy:continuous;
|
| 30 |
+
-moz-background-origin:padding;
|
| 31 |
+
background:#F2F2F2 url(../images/white-grad.png) repeat-x scroll left top;
|
| 32 |
+
text-shadow:0 1px 0 #FFFFFF;
|
| 33 |
+
}
|
| 34 |
+
#customcontactforms-admin .loading-img {
|
| 35 |
+
display:none;
|
| 36 |
+
}
|
| 37 |
+
#customcontactforms-admin input[type=submit], .ccf-popover input[type=submit] {
|
| 38 |
+
-moz-background-clip:border;
|
| 39 |
+
-moz-background-inline-policy:continuous;
|
| 40 |
+
-moz-background-origin:padding;
|
| 41 |
+
background:#21759B url(../images/button-grad.png) repeat-x scroll left top;
|
| 42 |
+
border-color:#298CBA;
|
| 43 |
+
color:#FFFFFF;
|
| 44 |
+
font-weight:bold;
|
| 45 |
+
text-shadow:0 -1px 0 rgba(0, 0, 0, 0.3);
|
| 46 |
+
}
|
| 47 |
+
#customcontactforms-admin label { font-weight:bold; }
|
| 48 |
+
|
| 49 |
+
#customcontactforms-admin .inside {
|
| 50 |
+
padding:5px 10px 10px 10px;
|
| 51 |
+
}
|
| 52 |
+
#customcontactforms-admin h3 {
|
| 53 |
+
margin:0 0 7px 0;
|
| 54 |
+
height:25px;
|
| 55 |
+
padding: 7px 0 0 7px;
|
| 56 |
+
}
|
| 57 |
+
#customcontactforms-admin #instructions {
|
| 58 |
+
float:left;
|
| 59 |
+
clear:none;
|
| 60 |
+
width:436px;
|
| 61 |
+
margin:20px 1em 1em 1em;
|
| 62 |
+
}
|
| 63 |
+
#customcontactforms-admin #contact-author {
|
| 64 |
+
|
| 65 |
+
}
|
| 66 |
+
|
| 67 |
+
#contact-author ul { float:left; margin-right:15px; }
|
| 68 |
+
#contact-author ul.message { clear:both; float:none; }
|
| 69 |
+
|
| 70 |
+
#customcontactforms-admin #custom-html {
|
| 71 |
+
|
| 72 |
+
}
|
| 73 |
+
#customcontactforms-admin #custom-html p { margin: 0; padding:0; }
|
| 74 |
+
#customcontactforms-admin #custom-html #custom_html_textarea {
|
| 75 |
+
width:80%;
|
| 76 |
+
margin-top:10px;
|
| 77 |
+
height:250px;
|
| 78 |
+
}
|
| 79 |
+
#customcontactforms-admin #contact-author form label {
|
| 80 |
+
display:block; font-weight:bold;
|
| 81 |
+
}
|
| 82 |
+
#customcontactforms-admin #instructions p:first-child {
|
| 83 |
+
padding-top:0;
|
| 84 |
+
margin-top:0;
|
| 85 |
+
}
|
| 86 |
+
|
| 87 |
+
#customcontactforms-admin .rate-me {
|
| 88 |
+
background-color:#FFFEEB;
|
| 89 |
+
border:1px solid #cccccc;
|
| 90 |
+
padding:7px;
|
| 91 |
+
display:block;
|
| 92 |
+
height:30px;
|
| 93 |
+
font-size:13px;
|
| 94 |
+
clear:both;
|
| 95 |
+
text-align:center;
|
| 96 |
+
margin:.5em 5px .8em 5px;
|
| 97 |
+
-moz-border-radius:11px;
|
| 98 |
+
-webkit-border-radius:11px;
|
| 99 |
+
border-radius:11px;
|
| 100 |
+
}
|
| 101 |
+
|
| 102 |
+
#customcontactforms-admin .rate-me a { font-weight:bold; width:auto; margin-left:20px;font-size:13px; display:block; float:left; text-decoration:none; margin:6px 0 10px 0; }
|
| 103 |
+
#customcontactforms-admin .rate-me input[type=image] { float:right; }
|
| 104 |
+
|
| 105 |
+
#customcontactforms-admin .action-complete {
|
| 106 |
+
background-color:#2bd604;
|
| 107 |
+
border:1px solid #333;
|
| 108 |
+
padding:7px 7px 1px 7px;
|
| 109 |
+
display:block;
|
| 110 |
+
height:30px;
|
| 111 |
+
clear:both;
|
| 112 |
+
color:#000;
|
| 113 |
+
font-weight:bold;
|
| 114 |
+
text-align:center;
|
| 115 |
+
margin:.5em 5px .8em 5px;
|
| 116 |
+
-moz-border-radius:11px;
|
| 117 |
+
-webkit-border-radius:11px;
|
| 118 |
+
border-radius:11px;
|
| 119 |
+
}
|
| 120 |
+
|
| 121 |
+
.ccf-tooltip {
|
| 122 |
+
background-color:#FFFEEB;
|
| 123 |
+
border:2px solid #666666;
|
| 124 |
+
padding:10px 15px;
|
| 125 |
+
width:200px;
|
| 126 |
+
-moz-border-radius:9px;
|
| 127 |
+
-khtml-border-radius:9px;
|
| 128 |
+
-webkit-border-radius:9px;
|
| 129 |
+
border-radius:9px;
|
| 130 |
+
display:none;
|
| 131 |
+
color:#333333;/*#D54E21;*/
|
| 132 |
+
font-weight:bold;
|
| 133 |
+
font-family:Verdana, Arial, Helvetica, sans-serif;
|
| 134 |
+
text-align:left;
|
| 135 |
+
font-size:10px;
|
| 136 |
+
-moz-box-shadow:0 0 6px #123;
|
| 137 |
+
-webkit-box-shadow: 0 0 6px #123;
|
| 138 |
+
box-shadow:0 0 6px #123;
|
| 139 |
+
}
|
| 140 |
+
#customcontactforms-admin .toollink {
|
| 141 |
+
text-decoration:none;
|
| 142 |
+
}
|
| 143 |
+
#customcontactforms-admin a.rate-me span { font-weight:bold }
|
| 144 |
+
#customcontactforms-admin .rate-me a span { text-decoration:underline }
|
| 145 |
+
|
| 146 |
+
#customcontactforms-admin #form-submissions-table {
|
| 147 |
+
|
| 148 |
+
}
|
| 149 |
+
#customcontactforms-admin .genesis {
|
| 150 |
+
text-align:center;
|
| 151 |
+
background-color:#FFFEEB;
|
| 152 |
+
border:1px solid #cccccc;
|
| 153 |
+
display:block;
|
| 154 |
+
height:30px;
|
| 155 |
+
color: #21759B;
|
| 156 |
+
font-size:13px;
|
| 157 |
+
font-weight:bold;
|
| 158 |
+
text-decoration:none;
|
| 159 |
+
padding:7px 7px 7px 7px;
|
| 160 |
+
margin:.5em 5px .8em 5px;
|
| 161 |
+
-moz-border-radius:11px;
|
| 162 |
+
-webkit-border-radius:11px;
|
| 163 |
+
border-radius:11px; line-height:normal;
|
| 164 |
+
}
|
| 165 |
+
#customcontactforms-admin .genesis span { color:red; font-weight:bold; }
|
| 166 |
+
|
| 167 |
+
#customcontactforms-admin .checkbox-warning {
|
| 168 |
+
text-align:center;
|
| 169 |
+
background-color:#FF3333;
|
| 170 |
+
border:1px solid #ff0000;
|
| 171 |
+
display:block;
|
| 172 |
+
height:auto;
|
| 173 |
+
color: #fff;
|
| 174 |
+
font-size:13px;
|
| 175 |
+
font-weight:bold;
|
| 176 |
+
text-decoration:none;
|
| 177 |
+
padding:7px 7px 7px 7px;
|
| 178 |
+
margin:.5em 5px .8em 5px;
|
| 179 |
+
-moz-border-radius:11px;
|
| 180 |
+
-webkit-border-radius:11px;
|
| 181 |
+
border-radius:11px; line-height:normal;
|
| 182 |
+
}
|
| 183 |
+
#customcontactforms-admin .checkbox-warning span { font-weight:bold; }
|
| 184 |
+
|
| 185 |
+
#customcontactforms-admin form.blog-horizontal-form {
|
| 186 |
+
background-color:#FFFEEB;
|
| 187 |
+
border:1px solid #cccccc;
|
| 188 |
+
padding:7px;
|
| 189 |
+
display:block;
|
| 190 |
+
height:30px;
|
| 191 |
+
font-size:13px;
|
| 192 |
+
text-align:center;
|
| 193 |
+
margin:.5em 5px .8em 5px;
|
| 194 |
+
-moz-border-radius:11px;
|
| 195 |
+
-webkit-border-radius:11px;
|
| 196 |
+
border-radius:11px;
|
| 197 |
+
line-height:normal;
|
| 198 |
+
}
|
| 199 |
+
|
| 200 |
+
|
| 201 |
+
|
| 202 |
+
#customcontactforms-admin form.blog-horizontal-form input[type=text] { width:100px; }
|
| 203 |
+
|
| 204 |
+
#customcontactforms-admin form.blog-horizontal-form span { font-weight:bold; padding-right:4px; }
|
| 205 |
+
#customcontactforms-admin #form-submissions-hidden { display:none; }
|
| 206 |
+
#customcontactforms-admin #form-submissions-table .submission-content { }
|
| 207 |
+
#customcontactforms-admin #form-submissions-table tr { border-top:1px solid #666; }
|
| 208 |
+
#customcontactforms-admin #form-submissions-table td { border:0; }
|
| 209 |
+
#customcontactforms-admin #form-submissions-table ul { min-height:30px; width:95%; margin:3px auto 2px auto; }
|
| 210 |
+
#customcontactforms-admin #form-submissions-table ul li { float:left; margin-right:9px; }
|
| 211 |
+
#customcontactforms-admin #form-submissions-table ul li p { display:block; }
|
| 212 |
+
#customcontactforms-admin #form-submissions-table ul li div { font-weight:bold; border-bottom:1px solid #666; padding:2px; text-align:left; }
|
| 213 |
+
|
| 214 |
+
#customcontactforms-admin #form-submissions-table table.first { float:left; width:48%; border-collapse:collapse; margin-right:10px; }
|
| 215 |
+
#customcontactforms-admin #form-submissions table.second { margin-left:48%; border-collapse:collapse; width:48%; }
|
| 216 |
+
|
| 217 |
+
|
| 218 |
+
#customcontactforms-admin #import, #customcontactforms-admin #export {
|
| 219 |
+
|
| 220 |
+
}
|
| 221 |
+
#customcontactforms-admin #export input { margin:7px; }
|
| 222 |
+
#customcontactforms-admin #export p { padding:0; margin:0; }
|
| 223 |
+
#customcontactforms-admin #import .choose_import { font-size:1.1em; clear:both; font-weight:bold; }
|
| 224 |
+
#customcontactforms-admin #import input[type=file] { margin:6px; }
|
| 225 |
+
#customcontactforms-admin #import ul { margin:6px; }
|
| 226 |
+
#customcontactforms-admin #import ul li { width:130px; float:left; }
|
| 227 |
+
#customcontactforms-admin #import ul li label { }
|
| 228 |
+
#customcontactforms-admin #import input[type=checkbox] { margin-left:9px; }
|
| 229 |
+
#customcontactforms-admin #import p { padding:0 0 5px 0; margin:0; }
|
| 230 |
+
|
| 231 |
+
#customcontactforms-admin #manage-field-options table {
|
| 232 |
+
margin: 0 0 5px 14px;
|
| 233 |
+
width:95%;
|
| 234 |
+
}
|
| 235 |
+
#customcontactforms-admin #manage-field-options table td { padding-left:8px; padding-top:3px; padding-bottom:3px; }
|
| 236 |
+
#customcontactforms-admin #manage-field-options table thead,
|
| 237 |
+
#customcontactforms-admin #manage-field-options table tfoot {
|
| 238 |
+
background-color:#eee;
|
| 239 |
+
}
|
| 240 |
+
#customcontactforms-admin #manage-field-options table thead th,
|
| 241 |
+
#customcontactforms-admin #manage-field-options table tfoot th { padding:8px; text-align:left; }
|
| 242 |
+
#customcontactforms-admin #manage-field-options {
|
| 243 |
+
float:left;
|
| 244 |
+
clear:left;
|
| 245 |
+
width:49%;
|
| 246 |
+
}
|
| 247 |
+
#customcontactforms-admin #create-field-options {
|
| 248 |
+
float:left;
|
| 249 |
+
clear:none;
|
| 250 |
+
width:49%;
|
| 251 |
+
margin:0 0em 1em 10px;
|
| 252 |
+
}
|
| 253 |
+
|
| 254 |
+
#customcontactforms-admin #field-options .evenrow-field-options div { background-color:#f0f0f0; }
|
| 255 |
+
#customcontactforms-admin #field-options .evenrow-field-options { background-color:#f0f0f0; }
|
| 256 |
+
|
| 257 |
+
.ccf-style-example {
|
| 258 |
+
background:url(../images/style-example.gif) no-repeat top left;
|
| 259 |
+
width:405px;
|
| 260 |
+
height:135px;
|
| 261 |
+
padding-left:20px;
|
| 262 |
+
margin:10px 0 0 10px;
|
| 263 |
+
border:0;
|
| 264 |
+
}
|
| 265 |
+
.ccf-success-popover-example {
|
| 266 |
+
background:url(../images/success-popover-example.gif) no-repeat top left;
|
| 267 |
+
width:405px;
|
| 268 |
+
height:135px;
|
| 269 |
+
padding-left:20px;
|
| 270 |
+
margin:10px 0 0 10px;
|
| 271 |
+
border:0;
|
| 272 |
+
}
|
| 273 |
+
#customcontactforms-admin #configure-mail {
|
| 274 |
+
}
|
| 275 |
+
#customcontactforms-admin #configure-mail p { padding:0; margin:0; }
|
| 276 |
+
#customcontactforms-admin #configure-mail form div { margin:10px 0 0 0; padding-top:10px; border-top:1px solid #ccc;}
|
| 277 |
+
#customcontactforms-admin #configure-mail ul.left { float:left; width:48%; }
|
| 278 |
+
#customcontactforms-admin #configure-mail ul.right { margin-left:48%; width:48%; }
|
| 279 |
+
#customcontactforms-admin #create-styles {
|
| 280 |
+
|
| 281 |
+
}
|
| 282 |
+
#customcontactforms-admin #create-styles .inside,
|
| 283 |
+
#customcontactforms-admin #create-styles form { margin-top:0px; padding-top:0 }
|
| 284 |
+
#customcontactforms-admin #create-styles .style_left { float:left; width:48% }
|
| 285 |
+
#customcontactforms-admin #create-styles .style_right { width:48%; margin-left:51%; clear:none }
|
| 286 |
+
#customcontactforms-admin #plugin-news {
|
| 287 |
+
|
| 288 |
+
}
|
| 289 |
+
#customcontactforms-admin #plugin-news ul li a { color: #21759B; line-height:normal; font-family: Georgia,"Times New Roman","Bitstream Charter",Times,serif;
|
| 290 |
+
font-size: 13px; text-decoration:none; }
|
| 291 |
+
|
| 292 |
+
#customcontactforms-admin #plugin-news ul li .date { color: #999999; font-size: 12px; padding-left: 3px; }
|
| 293 |
+
#customcontactforms-admin #plugin-news ul li .news-content p { margin-top:0; padding-top:0; }
|
| 294 |
+
#customcontactforms-admin #plugin-news ul li .news-header { margin-bottom:5px; }
|
| 295 |
+
#customcontactforms-admin #manage-styles {
|
| 296 |
+
}
|
| 297 |
+
#customcontactforms-admin #manage-styles td { border:0; }
|
| 298 |
+
#customcontactforms-admin #manage-styles label {
|
| 299 |
+
display:block;
|
| 300 |
+
}
|
| 301 |
+
#customcontactforms-admin #manage-styles input[type=text], #customcontactforms-admin #manage-styles select, #customcontactforms-admin #manage-styles textarea {
|
| 302 |
+
width:80px;
|
| 303 |
+
}
|
| 304 |
+
#customcontactforms-admin #general-settings {
|
| 305 |
+
|
| 306 |
+
}
|
| 307 |
+
#customcontactforms-admin #general-settings .gleft { float:left; width:48%; clear:none; }
|
| 308 |
+
#customcontactforms-admin #general-settings .gright { clear:none; float:none; width:48%; margin-left:49%; }
|
| 309 |
+
#customcontactforms-admin #general-settings label { font-weight:bold; }
|
| 310 |
+
#customcontactforms-admin #general-settings form div p.descrip {
|
| 311 |
+
font-style:italic;
|
| 312 |
+
padding-left:20px;
|
| 313 |
+
}
|
| 314 |
+
#customcontactforms-admin #general-settings form div p.show-widget {
|
| 315 |
+
margin-top:1em;
|
| 316 |
+
padding-top:.4em;
|
| 317 |
+
border-top:1px solid #ccc;
|
| 318 |
+
}
|
| 319 |
+
#customcontactforms-admin #create-fields {
|
| 320 |
+
|
| 321 |
+
}
|
| 322 |
+
#customcontactforms-admin #create-fields .left { float:left; width:48%; }
|
| 323 |
+
#customcontactforms-admin #create-fields .right { margin-left:50%; }
|
| 324 |
+
#customcontactforms-admin #create-fields .file-fields { display:none; }
|
| 325 |
+
#customcontactforms-admin #create-forms {
|
| 326 |
+
|
| 327 |
+
}
|
| 328 |
+
#customcontactforms-admin #create-forms .left { float:left; width:48%; }
|
| 329 |
+
#customcontactforms-admin #create-forms .right { width:48%; margin-left:50%; }
|
| 330 |
+
|
| 331 |
+
#customcontactforms-admin #create-forms .role{ display:inline; padding-left:5px; }
|
| 332 |
+
#customcontactforms-admin #create-fields .attach, #customcontactforms-admin #create-forms .attach { margin-top:6px; }
|
| 333 |
+
#customcontactforms-admin .manage-h3 {
|
| 334 |
+
clear:both;
|
| 335 |
+
margin-top:20px;
|
| 336 |
+
}
|
| 337 |
+
#customcontactforms-admin #manage-fields {
|
| 338 |
+
|
| 339 |
+
}
|
| 340 |
+
#customcontactforms-admin #manage-fields td { border:0; }
|
| 341 |
+
#customcontactforms-admin #manage-fields .row-one {
|
| 342 |
+
margin-bottom:0px;
|
| 343 |
+
}
|
| 344 |
+
#customcontactforms-admin #manage-fields .row-two {
|
| 345 |
+
margin-top:6px;
|
| 346 |
+
}
|
| 347 |
+
#customcontactforms-admin #manage-fields .row-one label { margin-right:4px; }
|
| 348 |
+
#customcontactforms-admin #manage-fields .attach-field-options {
|
| 349 |
+
float:left;
|
| 350 |
+
padding: 0 0 0 9px;
|
| 351 |
+
width:470px;
|
| 352 |
+
clear:none;
|
| 353 |
+
}
|
| 354 |
+
#customcontactforms-admin #manage-fields .detach-field-options {
|
| 355 |
+
clear:left;
|
| 356 |
+
float:left;
|
| 357 |
+
padding: 0 0 0 20px;
|
| 358 |
+
width:470px;
|
| 359 |
+
}
|
| 360 |
+
#customcontactforms-admin #manage-forms {
|
| 361 |
+
}
|
| 362 |
+
#customcontactforms-admin .fattach {
|
| 363 |
+
margin:20px 6px 6px 6px;
|
| 364 |
+
clear:both;
|
| 365 |
+
-moz-border-radius:6px;
|
| 366 |
+
padding:6px 6px 6px 15px;
|
| 367 |
+
-webkit-border-radius:6px;
|
| 368 |
+
border-radius:6px;
|
| 369 |
+
-moz-box-shadow:0 0 2px #123;
|
| 370 |
+
-webkit-box-shadow: 0 0 2px #123;
|
| 371 |
+
box-shadow:0 0 2px #123;
|
| 372 |
+
background-color:#FFFEEB;
|
| 373 |
+
display:block;
|
| 374 |
+
height:56px;
|
| 375 |
+
width:90%;
|
| 376 |
+
}
|
| 377 |
+
#customcontactforms-admin .form-attach, #customcontactforms-admin .field-attach {
|
| 378 |
+
width:49%; float:left; text-align:left; clear:none;
|
| 379 |
+
}
|
| 380 |
+
#customcontactforms-admin .form-detach, #customcontactforms-admin .field-detach {
|
| 381 |
+
width:49%; float:left; text-align:left; clear:none;
|
| 382 |
+
}
|
| 383 |
+
#customcontactforms-admin #manage-forms td { border:0; }
|
| 384 |
+
#customcontactforms-admin #manage-fixed-fields {
|
| 385 |
+
|
| 386 |
+
}
|
| 387 |
+
#customcontactforms-admin #manage-fixed-fields td { border:0; }
|
| 388 |
+
#customcontactforms-admin #manage-fixed-fields .field_descrip { padding-bottom:5px; }
|
| 389 |
+
#customcontactforms-admin .nobordertop {
|
| 390 |
+
border-top:none;
|
| 391 |
+
}
|
| 392 |
+
#customcontactforms-admin .borderbottom {
|
| 393 |
+
border-bottom:2px solid black;
|
| 394 |
+
}
|
| 395 |
+
#customcontactforms-admin .attached_fields {
|
| 396 |
+
float:left;
|
| 397 |
+
width:400px;
|
| 398 |
+
}
|
| 399 |
+
#customcontactforms-admin .attach_field {
|
| 400 |
+
float:left;
|
| 401 |
+
width:300px;
|
| 402 |
+
}
|
| 403 |
+
#customcontactforms-admin .actions {
|
| 404 |
+
float:right;
|
| 405 |
+
width: 80px; padding:0 18px 0 8px;
|
| 406 |
+
}
|
| 407 |
+
#customcontactforms-admin .bulk-dropdown { margin:8px 1px 8px 8px; font-size:1.1em; padding:4px; }
|
| 408 |
+
#customcontactforms-admin .bulk-apply { margin:8px 8px 8px 8px; }
|
| 409 |
+
#customcontactforms-admin .attach_styles {
|
| 410 |
+
float:left;
|
| 411 |
+
width:300px;
|
| 412 |
+
}
|
| 413 |
+
#customcontactforms-admin label span {
|
| 414 |
+
font-weight:bold;
|
| 415 |
+
}
|
| 416 |
+
|
| 417 |
+
#customcontactforms-admin #plugin-nav {
|
| 418 |
+
clear:both;
|
| 419 |
+
}
|
| 420 |
+
/* CCF Install Popover -------------------------------- */
|
| 421 |
+
.ccf-popover {
|
| 422 |
+
display:none;
|
| 423 |
+
}
|
| 424 |
+
.ccf-popover #popover-tof { text-align:center; border-bottom:1px #ccc dashed; margin:5px 0 10px 0; padding:0 0 6px 0; }
|
| 425 |
+
.ccf-popover #popover-tof li { display:inline; padding:0 2px 0 3px;
|
| 426 |
+
}
|
| 427 |
+
|
| 428 |
+
.ccf-popover div.popover-body span { font-weight:bold; }
|
| 429 |
+
.ccf-popover div.popover-body {
|
| 430 |
+
text-align:left;
|
| 431 |
+
padding:3px;
|
| 432 |
+
}
|
| 433 |
+
.ccf-popover div.popover-body ul { margin:5px 0px 5px 8px; padding:0; border-top:1px solid #efefef; }
|
| 434 |
+
.ccf-popover div.popover-body ul ul { margin:0px 0px 2px 30px; padding:0; list-style-type:disc; border-top:none; }
|
| 435 |
+
.ccf-popover div.popover-body ul li { margin-left:20px; }
|
| 436 |
+
.ccf-popover div.popover-body p { padding:8px; text-align:left; }
|
| 437 |
+
.ccf-popover div.popover-body form { width:100%; text-align:center; }
|
| 438 |
+
.ccf-popover div.popover-body .insert-default-content-button {
|
| 439 |
+
margin:5px auto 5px auto;
|
| 440 |
+
}
|
| 441 |
+
|
| 442 |
+
.modal-overlay {
|
| 443 |
+
position:fixed;
|
| 444 |
+
top:0;
|
| 445 |
+
left:0;
|
| 446 |
+
bottom:0;
|
| 447 |
+
width:100%;
|
| 448 |
+
height:100%;
|
| 449 |
+
background-color:rgba(0,0,0.5);
|
| 450 |
+
z-index:20;
|
| 451 |
+
}
|
| 452 |
+
|
| 453 |
+
.modal-window {
|
| 454 |
+
position:fixed;
|
| 455 |
+
top:140px;
|
| 456 |
+
left:50%;
|
| 457 |
+
width:300px;
|
| 458 |
+
height:auto;
|
| 459 |
+
text-align:center;
|
| 460 |
+
/*max-height:200px;
|
| 461 |
+
text-align:left;
|
| 462 |
+
overflow:scroll;*/
|
| 463 |
+
margin-left:-150px;
|
| 464 |
+
padding:20px;
|
| 465 |
+
border:10px solid #efefef;
|
| 466 |
+
background-color:#fff;
|
| 467 |
+
-moz-border-radius:6px;
|
| 468 |
+
-webkit-border-radius:6px;
|
| 469 |
+
border-radius:6px;
|
| 470 |
+
-moz-box-shadow:0 0 14px #123;
|
| 471 |
+
-webkit-box-shadow: 0 0 14px #123;
|
| 472 |
+
box-shadow:0 0 14px #123;
|
| 473 |
+
z-index:10000;
|
| 474 |
+
}
|
| 475 |
+
|
| 476 |
+
.debug-window {
|
| 477 |
+
position:fixed;
|
| 478 |
+
top:20px;
|
| 479 |
+
left:50%;
|
| 480 |
+
bottom:20px;
|
| 481 |
+
width:500px;
|
| 482 |
+
text-align:center;
|
| 483 |
+
text-align:left;
|
| 484 |
+
overflow:scroll;
|
| 485 |
+
margin-left:-250px;
|
| 486 |
+
padding:20px;
|
| 487 |
+
border:10px solid #efefef;
|
| 488 |
+
background-color:#fff;
|
| 489 |
+
-moz-border-radius:6px;
|
| 490 |
+
-webkit-border-radius:6px;
|
| 491 |
+
border-radius:6px;
|
| 492 |
+
-moz-box-shadow:0 0 14px #123;
|
| 493 |
+
-webkit-box-shadow: 0 0 14px #123;
|
| 494 |
+
box-shadow:0 0 14px #123;
|
| 495 |
+
z-index:500;
|
| 496 |
+
}
|
| 497 |
+
|
| 498 |
+
.modal-close-btn {
|
| 499 |
+
position:absolute;
|
| 500 |
+
top:0;
|
| 501 |
+
right:4px;
|
| 502 |
+
margin:0;
|
| 503 |
+
padding:0;
|
| 504 |
+
text-decoration:none;
|
| 505 |
+
color:#000;
|
| 506 |
+
font-size:16px;
|
| 507 |
+
}
|
| 508 |
+
|
| 509 |
+
.modal-close-btn:before {
|
| 510 |
+
position:relative;
|
| 511 |
+
top:-1px;
|
| 512 |
+
}
|
| 513 |
+
|
| 514 |
+
.save-box {
|
| 515 |
+
width:150px;
|
| 516 |
+
height:auto;
|
| 517 |
+
padding:0px;
|
| 518 |
+
margin:0 0 0 -75px;
|
| 519 |
+
border:12px solid #efefef;
|
| 520 |
+
background-color:#fff;
|
| 521 |
+
-moz-border-radius:12px;
|
| 522 |
+
-webkit-border-radius:12px;
|
| 523 |
+
border-radius:12px;
|
| 524 |
+
-moz-box-shadow:0 0 14px #123;
|
| 525 |
+
-webkit-box-shadow: 0 0 14px #123;
|
| 526 |
+
box-shadow:0 0 14px #123;
|
| 527 |
+
z-index:5000;
|
| 528 |
+
position:fixed;
|
| 529 |
+
left:50%;
|
| 530 |
+
top:40%;
|
| 531 |
+
}
|
| 532 |
+
.save-box p { text-align:center; width:100%; font-weight:bold; font-size:16px; }
|
| 533 |
+
.save-box-close-btn {
|
| 534 |
+
position:absolute;
|
| 535 |
+
top:0;
|
| 536 |
+
right:4px;
|
| 537 |
+
margin:0;
|
| 538 |
+
padding:0;
|
| 539 |
+
text-decoration:none;
|
| 540 |
+
color:#000;
|
| 541 |
+
font-size:16px;
|
| 542 |
+
}
|
| 543 |
+
.modal-wpspin { margin-left:5px; }
|
| 544 |
+
#customcontactforms-admin .pagination {
|
| 545 |
+
font-size: 80%;
|
| 546 |
+
}
|
| 547 |
+
|
| 548 |
+
#customcontactforms-admin .pagination a {
|
| 549 |
+
text-decoration: none;
|
| 550 |
+
border: solid 1px #AAE;
|
| 551 |
+
color: #15B;
|
| 552 |
+
}
|
| 553 |
+
|
| 554 |
+
#customcontactforms-admin .pagination a, .pagination span {
|
| 555 |
+
display: block;
|
| 556 |
+
float: left;
|
| 557 |
+
padding: 0.3em 0.5em;
|
| 558 |
+
margin-right: 5px;
|
| 559 |
+
margin-bottom: 5px;
|
| 560 |
+
min-width:1em;
|
| 561 |
+
text-align:center;
|
| 562 |
+
}
|
| 563 |
+
|
| 564 |
+
#customcontactforms-admin .pagination .current {
|
| 565 |
+
background: #26B;
|
| 566 |
+
color: #fff;
|
| 567 |
+
border: solid 1px #AAE;
|
| 568 |
+
}
|
| 569 |
+
|
| 570 |
+
#customcontactforms-admin .pagination .current.prev, #customcontactforms-admin .pagination .current.next{
|
| 571 |
+
color:#999;
|
| 572 |
+
border-color:#999;
|
| 573 |
+
background:#fff;
|
| 574 |
+
}
|
| 575 |
+
|
| 576 |
+
#customcontactforms-admin form.blog-horizontal-form {
|
| 577 |
+
background-color:#FFFEEB;
|
| 578 |
+
border:1px solid #cccccc;
|
| 579 |
+
padding:7px;
|
| 580 |
+
display:block;
|
| 581 |
+
height:30px;
|
| 582 |
+
text-align:center;
|
| 583 |
+
margin:.5em 5px .8em 5px;
|
| 584 |
+
-moz-border-radius:11px;
|
| 585 |
+
-webkit-border-radius:11px;
|
| 586 |
+
border-radius:11px;
|
| 587 |
+
}
|
| 588 |
+
|
| 589 |
+
#customcontactforms-admin form.blog-horizontal-form span { font-weight:bold; padding-right:4px; }
|
| 590 |
+
|
| 591 |
+
.ui-tabs .ui-tabs-panel {
|
| 592 |
+
background: none repeat scroll 0 0 transparent;
|
| 593 |
+
border-width: 0;
|
| 594 |
+
display: block;
|
| 595 |
+
padding: 1em 5px 5px 5px;
|
| 596 |
+
}
|
| 597 |
+
|
| 598 |
+
.ui-widget-content {
|
| 599 |
+
border: 0px solid #AAAAAA;
|
| 600 |
+
}
|
| 601 |
+
|
| 602 |
+
#message { margin-bottom:9px; }
|
| 603 |
+
#message-textarea { height: 196px; width: 95%; margin-bottom:9px; }
|
css/custom-contact-forms-dashboard.css
CHANGED
|
@@ -1,35 +1,39 @@
|
|
| 1 |
-
#ccf-dashboard {
|
| 2 |
-
width:100%;
|
| 3 |
-
margin:0 0 15px 0;
|
| 4 |
-
}
|
| 5 |
-
#ccf-dashboard thead tr th { text-align:left; padding-left:2px; padding-bottom:7px;
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
#ccf-dashboard
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
}
|
| 21 |
-
|
| 22 |
-
.ccf-view-submission-popover
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
.ccf-view-submission-popover div.top
|
| 27 |
-
.ccf-view-submission-popover
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
| 1 |
+
#ccf-dashboard {
|
| 2 |
+
width:100%;
|
| 3 |
+
margin:0 0 15px 0;
|
| 4 |
+
}
|
| 5 |
+
#ccf-dashboard thead tr th { text-align:left; padding-left:2px; padding-bottom:7px; color: #8F8F8F;
|
| 6 |
+
font-size: 14px;
|
| 7 |
+
border-bottom:1px solid #ececec;
|
| 8 |
+
font-weight:400; }
|
| 9 |
+
|
| 10 |
+
#ccf-dashboard tr { margin:0; }
|
| 11 |
+
#ccf-dashboard td { margin:0; padding: 3px;}
|
| 12 |
+
#ccf-dashboard tr.even { background-color:#f0f0f0; }
|
| 13 |
+
|
| 14 |
+
#ccf-dashboard .ccf-view-submission {
|
| 15 |
+
-moz-background-clip:border;
|
| 16 |
+
-moz-background-inline-policy:continuous;
|
| 17 |
+
-moz-background-origin:padding;
|
| 18 |
+
background:#F2F2F2 url(../images/white-grad.png) repeat-x scroll left top;
|
| 19 |
+
text-shadow:0 1px 0 #FFFFFF;
|
| 20 |
+
}
|
| 21 |
+
|
| 22 |
+
#ccf-dashboard .ccf-view-submission-popover {
|
| 23 |
+
display:none;
|
| 24 |
+
}
|
| 25 |
+
|
| 26 |
+
.ccf-view-submission-popover div.top { height:30px; padding-bottom:7px; }
|
| 27 |
+
.ccf-view-submission-popover div.top .right { float:right; width:40%; }
|
| 28 |
+
.ccf-view-submission-popover div.top .left p { margin:2px; padding:0; }
|
| 29 |
+
.ccf-view-submission-popover div.top .right span, .ccf-view-submission-popover div.top .left span { font-weight:bold; }
|
| 30 |
+
.ccf-view-submission-popover div.top .left { float:left; width:60%; }
|
| 31 |
+
.ccf-view-submission-popover ul {
|
| 32 |
+
min-height:30px;
|
| 33 |
+
width:95%;
|
| 34 |
+
margin:3px auto 2px auto;
|
| 35 |
+
}
|
| 36 |
+
.ccf-view-submission-popover .separate { clear:both; width:100%; border-bottom:1px solid #ccc; height:1px; margin:3px; }
|
| 37 |
+
.ccf-view-submission-popover ul li { float:left; margin-right:9px; }
|
| 38 |
+
.ccf-view-submission-popover ul li p { display:block; }
|
| 39 |
+
.ccf-view-submission-popover ul li div { font-weight:bold; border-bottom:1px solid #666; padding:2px; text-align:left; }
|
css/custom-contact-forms-standards.css
CHANGED
|
@@ -1,16 +1,16 @@
|
|
| 1 |
-
.ccf-width25 { width:25px; } .ccf-width50 { width:50px; } .ccf-width75 { width:75px; } .ccf-width100 { width:100px; }
|
| 2 |
-
.ccf-width125 { width:125px; } .ccf-width150 { width:150px; } .ccf-width175 { width:175px; } .ccf-width200 { width:200px; }
|
| 3 |
-
.ccf-width225 { width:225px; } .ccf-width250 { width:250px; } .ccf-width275 { width:275px; } .ccf-width300 { width:300px; }
|
| 4 |
-
.ccf-center { text-align:center; }
|
| 5 |
-
.ccf-red { color:#F00; }
|
| 6 |
-
.ccf-bold { font-weight:bold; }
|
| 7 |
-
.ccf-italic { font-style:italic; }
|
| 8 |
-
.ccf-hide { display:none; }
|
| 9 |
-
.ccf-clear { clear:both; }
|
| 10 |
-
.ccf-floatleft { float:left; }
|
| 11 |
-
.ccf-floatright { float:right; }
|
| 12 |
-
.form-extra-options-table { margin:0 auto 0 auto; }
|
| 13 |
-
.ccf-evenrow { background-color:#
|
| 14 |
-
.ccf-alignright { text-align:right; }
|
| 15 |
-
.ccf-alignleft { text-align:right; }
|
| 16 |
Â
.ccf-loading-icon { margin-left: 5px; margin-right:7px; }
|
| 1 |
+
.ccf-width25 { width:25px; } .ccf-width50 { width:50px; } .ccf-width75 { width:75px; } .ccf-width100 { width:100px; }
|
| 2 |
+
.ccf-width125 { width:125px; } .ccf-width150 { width:150px; } .ccf-width175 { width:175px; } .ccf-width200 { width:200px; }
|
| 3 |
+
.ccf-width225 { width:225px; } .ccf-width250 { width:250px; } .ccf-width275 { width:275px; } .ccf-width300 { width:300px; }
|
| 4 |
+
.ccf-center { text-align:center; }
|
| 5 |
+
.ccf-red { color:#F00; }
|
| 6 |
+
.ccf-bold { font-weight:bold; }
|
| 7 |
+
.ccf-italic { font-style:italic; }
|
| 8 |
+
.ccf-hide { display:none; }
|
| 9 |
+
.ccf-clear { clear:both; }
|
| 10 |
+
.ccf-floatleft { float:left; }
|
| 11 |
+
.ccf-floatright { float:right; }
|
| 12 |
+
.form-extra-options-table { margin:0 auto 0 auto; }
|
| 13 |
+
.ccf-evenrow { background-color:#f0f0f0; }
|
| 14 |
+
.ccf-alignright { text-align:right; }
|
| 15 |
+
.ccf-alignleft { text-align:right; }
|
| 16 |
Â
.ccf-loading-icon { margin-left: 5px; margin-right:7px; }
|
css/custom-contact-forms.css
CHANGED
|
@@ -1,125 +1,125 @@
|
|
| 1 |
-
/* Custom Contact Forms CSS */
|
| 2 |
-
form.customcontactform, form.customcontactform-sidebar {
|
| 3 |
-
margin:8px;
|
| 4 |
-
width:95%;
|
| 5 |
-
max-width:600px;
|
| 6 |
-
font-size:11px;
|
| 7 |
-
padding:4px;
|
| 8 |
-
}
|
| 9 |
-
form.customcontactform-sidebar { width:100%; }
|
| 10 |
-
form.customcontactform h4, form.customcontactform-sidebar h4 {
|
| 11 |
-
font-size:1.3em;
|
| 12 |
-
font-weight:bold;
|
| 13 |
-
}
|
| 14 |
-
form.customcontactform div label, form.customcontactform-sidebar div label { display:block; width:100%; }
|
| 15 |
-
form.customcontactform div label.checkbox, form.customcontactform-sidebar div label.checkbox { display:inline; }
|
| 16 |
-
form.customcontactform div label.select, form.customcontactform-sidebar div label.select { display:inline; margin-right:8px; }
|
| 17 |
-
form.customcontactform div, form.customcontactform-sidebar div {
|
| 18 |
-
/*border-bottom: 1px dashed #e1e1e1;*/
|
| 19 |
-
padding:.4em 0 .3em 0;
|
| 20 |
-
width:100%;
|
| 21 |
-
margin:0 0 6px 0;
|
| 22 |
-
}
|
| 23 |
-
form.customcontactform div div, form.customcontactform-sidebar div div { border-bottom:none; margin-bottom:0; padding:0; }
|
| 24 |
-
form.customcontactform div input, form.customcontactform div select, form.customcontactform-sidebar div input, form.customcontactform-sidebar div select {
|
| 25 |
-
width:16em;
|
| 26 |
-
padding:2px;
|
| 27 |
-
margin:0;
|
| 28 |
-
font-size:1.3em;
|
| 29 |
-
font-family:Verdana, Arial, Helvetica, sans-serif;
|
| 30 |
-
-moz-border-radius:4px;
|
| 31 |
-
-khtml-border-radius:4px;
|
| 32 |
-
-webkit-border-radius:4px;
|
| 33 |
-
border-radius:4px;
|
| 34 |
-
}
|
| 35 |
-
form.customcontactform div input[type=checkbox], form.customcontactform-sidebar div input[type=checkbox] { width:30px; margin:5px 6px 0 0; }
|
| 36 |
-
form.customcontactform div input[type=radio], form.customcontactform-sidebar div input[type=radio] { width:20px; margin:5px 6px 0 0; }
|
| 37 |
-
form.customcontactform input, form.customcontactform-sidebar input { margin: 7px 0 0 0; }
|
| 38 |
-
form.customcontactform div textarea, form.customcontactform-sidebar div textarea {
|
| 39 |
-
width:16em;
|
| 40 |
-
padding:4px;
|
| 41 |
-
margin:0;
|
| 42 |
-
font-size:1.3em;
|
| 43 |
-
font-family:Verdana, Arial, Helvetica, sans-serif;
|
| 44 |
-
-moz-border-radius:6px;
|
| 45 |
-
-khtml-border-radius:6px;
|
| 46 |
-
-webkit-border-radius:6px;
|
| 47 |
-
border-radius:6px;
|
| 48 |
-
height:5em;
|
| 49 |
-
}
|
| 50 |
-
form.customcontactform div select { font-size:1.3em; width:auto; margin-right:9px; }
|
| 51 |
-
form.customcontactform-sidebar div input[type=text],
|
| 52 |
-
form.customcontactform-sidebar div select,
|
| 53 |
-
form.customcontactform-sidebar div textarea { width:95%; max-width:16em; margin:2px 0 4px 0; }
|
| 54 |
-
form.customcontactform-sidebar div select { width:auto; }
|
| 55 |
-
/* ----- popover box ---------- */
|
| 56 |
-
|
| 57 |
-
.ccf-popover {
|
| 58 |
-
position: absolute;
|
| 59 |
-
top:25%;
|
| 60 |
-
left:25%;
|
| 61 |
-
width:500px;
|
| 62 |
-
padding:10px;
|
| 63 |
-
background-color:#fff;
|
| 64 |
-
border:1px solid #666;
|
| 65 |
-
display:none;
|
| 66 |
-
z-index:1000000000;
|
| 67 |
-
}
|
| 68 |
-
|
| 69 |
-
.ccf-popover .ccf-popover-close { position:absolute; top:0px; right:5px; font-size:22px; }
|
| 70 |
-
.ccf-tooltip {
|
| 71 |
-
background-color:#000;
|
| 72 |
-
border:1px solid #fff;
|
| 73 |
-
padding:10px 15px;
|
| 74 |
-
width:200px;
|
| 75 |
-
display:none;
|
| 76 |
-
color:#fff;
|
| 77 |
-
text-align:left;
|
| 78 |
-
font-size:12px;
|
| 79 |
-
-moz-box-shadow:0 0 10px #000;
|
| 80 |
-
-webkit-box-shadow:0 0 10px #000;
|
| 81 |
-
}
|
| 82 |
-
/* --- form success popover -------------------- */
|
| 83 |
-
#ccf-form-success {
|
| 84 |
-
display:none;
|
| 85 |
-
border: 9px solid #efefef;
|
| 86 |
-
border-spacing:0;
|
| 87 |
-
width:480px;
|
| 88 |
-
height:200px;
|
| 89 |
-
padding:0px;
|
| 90 |
-
margin:0;
|
| 91 |
-
z-index:10000;
|
| 92 |
-
-moz-border-radius:10px;
|
| 93 |
-
-khtml-border-radius:10px;
|
| 94 |
-
-webkit-border-radius:10px;
|
| 95 |
-
border-radius:15px;
|
| 96 |
-
position:fixed;
|
| 97 |
-
left:30%;
|
| 98 |
-
background-color:white;
|
| 99 |
-
top:30%;
|
| 100 |
-
-moz-box-shadow:0 0 14px #123;
|
| 101 |
-
-webkit-box-shadow: 0 0 14px #123;
|
| 102 |
-
box-shadow:0 0 14px #123;
|
| 103 |
-
}
|
| 104 |
-
#ccf-form-success div {
|
| 105 |
-
background-color:#efefef;
|
| 106 |
-
padding:9px 9px 9px 20px;
|
| 107 |
-
margin:0 0 15px 0px;
|
| 108 |
-
height:1.3em;
|
| 109 |
-
}
|
| 110 |
-
#ccf-form-success div h5 {
|
| 111 |
-
text-align:left;
|
| 112 |
-
float:left;
|
| 113 |
-
margin:0;
|
| 114 |
-
padding:0;
|
| 115 |
-
font-size:1.5em;
|
| 116 |
-
font-weight:bold;
|
| 117 |
-
}
|
| 118 |
-
#ccf-form-success p { padding:8px; margin:0; clear:both; font-size:1.1em; text-align:center; }
|
| 119 |
-
#ccf-form-success div a.close {
|
| 120 |
-
float:right;
|
| 121 |
-
display:block;
|
| 122 |
-
font-size:12px;
|
| 123 |
-
margin:0;
|
| 124 |
-
padding:0;
|
| 125 |
Â
}
|
| 1 |
+
/* Custom Contact Forms CSS */
|
| 2 |
+
form.customcontactform, form.customcontactform-sidebar {
|
| 3 |
+
margin:8px;
|
| 4 |
+
width:95%;
|
| 5 |
+
max-width:600px;
|
| 6 |
+
font-size:11px;
|
| 7 |
+
padding:4px;
|
| 8 |
+
}
|
| 9 |
+
form.customcontactform-sidebar { width:100%; }
|
| 10 |
+
form.customcontactform h4, form.customcontactform-sidebar h4 {
|
| 11 |
+
font-size:1.3em;
|
| 12 |
+
font-weight:bold;
|
| 13 |
+
}
|
| 14 |
+
form.customcontactform div label, form.customcontactform-sidebar div label { display:block; width:100%; }
|
| 15 |
+
form.customcontactform div label.checkbox, form.customcontactform-sidebar div label.checkbox { display:inline; }
|
| 16 |
+
form.customcontactform div label.select, form.customcontactform-sidebar div label.select { display:inline; margin-right:8px; }
|
| 17 |
+
form.customcontactform div, form.customcontactform-sidebar div {
|
| 18 |
+
/*border-bottom: 1px dashed #e1e1e1;*/
|
| 19 |
+
padding:.4em 0 .3em 0;
|
| 20 |
+
width:100%;
|
| 21 |
+
margin:0 0 6px 0;
|
| 22 |
+
}
|
| 23 |
+
form.customcontactform div div, form.customcontactform-sidebar div div { border-bottom:none; margin-bottom:0; padding:0; }
|
| 24 |
+
form.customcontactform div input, form.customcontactform div select, form.customcontactform-sidebar div input, form.customcontactform-sidebar div select {
|
| 25 |
+
width:16em;
|
| 26 |
+
padding:2px;
|
| 27 |
+
margin:0;
|
| 28 |
+
font-size:1.3em;
|
| 29 |
+
font-family:Verdana, Arial, Helvetica, sans-serif;
|
| 30 |
+
-moz-border-radius:4px;
|
| 31 |
+
-khtml-border-radius:4px;
|
| 32 |
+
-webkit-border-radius:4px;
|
| 33 |
+
border-radius:4px;
|
| 34 |
+
}
|
| 35 |
+
form.customcontactform div input[type=checkbox], form.customcontactform-sidebar div input[type=checkbox] { width:30px; margin:5px 6px 0 0; }
|
| 36 |
+
form.customcontactform div input[type=radio], form.customcontactform-sidebar div input[type=radio] { width:20px; margin:5px 6px 0 0; }
|
| 37 |
+
form.customcontactform input, form.customcontactform-sidebar input { margin: 7px 0 0 0; }
|
| 38 |
+
form.customcontactform div textarea, form.customcontactform-sidebar div textarea {
|
| 39 |
+
width:16em;
|
| 40 |
+
padding:4px;
|
| 41 |
+
margin:0;
|
| 42 |
+
font-size:1.3em;
|
| 43 |
+
font-family:Verdana, Arial, Helvetica, sans-serif;
|
| 44 |
+
-moz-border-radius:6px;
|
| 45 |
+
-khtml-border-radius:6px;
|
| 46 |
+
-webkit-border-radius:6px;
|
| 47 |
+
border-radius:6px;
|
| 48 |
+
height:5em;
|
| 49 |
+
}
|
| 50 |
+
form.customcontactform div select { font-size:1.3em; width:auto; margin-right:9px; }
|
| 51 |
+
form.customcontactform-sidebar div input[type=text],
|
| 52 |
+
form.customcontactform-sidebar div select,
|
| 53 |
+
form.customcontactform-sidebar div textarea { width:95%; max-width:16em; margin:2px 0 4px 0; }
|
| 54 |
+
form.customcontactform-sidebar div select { width:auto; }
|
| 55 |
+
/* ----- popover box ---------- */
|
| 56 |
+
|
| 57 |
+
.ccf-popover {
|
| 58 |
+
position: absolute;
|
| 59 |
+
top:25%;
|
| 60 |
+
left:25%;
|
| 61 |
+
width:500px;
|
| 62 |
+
padding:10px;
|
| 63 |
+
background-color:#fff;
|
| 64 |
+
border:1px solid #666;
|
| 65 |
+
display:none;
|
| 66 |
+
z-index:1000000000;
|
| 67 |
+
}
|
| 68 |
+
|
| 69 |
+
.ccf-popover .ccf-popover-close { position:absolute; top:0px; right:5px; font-size:22px; }
|
| 70 |
+
.ccf-tooltip {
|
| 71 |
+
background-color:#000;
|
| 72 |
+
border:1px solid #fff;
|
| 73 |
+
padding:10px 15px;
|
| 74 |
+
width:200px;
|
| 75 |
+
display:none;
|
| 76 |
+
color:#fff;
|
| 77 |
+
text-align:left;
|
| 78 |
+
font-size:12px;
|
| 79 |
+
-moz-box-shadow:0 0 10px #000;
|
| 80 |
+
-webkit-box-shadow:0 0 10px #000;
|
| 81 |
+
}
|
| 82 |
+
/* --- form success popover -------------------- */
|
| 83 |
+
#ccf-form-success {
|
| 84 |
+
display:none;
|
| 85 |
+
border: 9px solid #efefef;
|
| 86 |
+
border-spacing:0;
|
| 87 |
+
width:480px;
|
| 88 |
+
height:200px;
|
| 89 |
+
padding:0px;
|
| 90 |
+
margin:0;
|
| 91 |
+
z-index:10000;
|
| 92 |
+
-moz-border-radius:10px;
|
| 93 |
+
-khtml-border-radius:10px;
|
| 94 |
+
-webkit-border-radius:10px;
|
| 95 |
+
border-radius:15px;
|
| 96 |
+
position:fixed;
|
| 97 |
+
left:30%;
|
| 98 |
+
background-color:white;
|
| 99 |
+
top:30%;
|
| 100 |
+
-moz-box-shadow:0 0 14px #123;
|
| 101 |
+
-webkit-box-shadow: 0 0 14px #123;
|
| 102 |
+
box-shadow:0 0 14px #123;
|
| 103 |
+
}
|
| 104 |
+
#ccf-form-success div {
|
| 105 |
+
background-color:#efefef;
|
| 106 |
+
padding:9px 9px 9px 20px;
|
| 107 |
+
margin:0 0 15px 0px;
|
| 108 |
+
height:1.3em;
|
| 109 |
+
}
|
| 110 |
+
#ccf-form-success div h5 {
|
| 111 |
+
text-align:left;
|
| 112 |
+
float:left;
|
| 113 |
+
margin:0;
|
| 114 |
+
padding:0;
|
| 115 |
+
font-size:1.5em;
|
| 116 |
+
font-weight:bold;
|
| 117 |
+
}
|
| 118 |
+
#ccf-form-success p { padding:8px; margin:0; clear:both; font-size:1.1em; text-align:center; }
|
| 119 |
+
#ccf-form-success div a.close {
|
| 120 |
+
float:right;
|
| 121 |
+
display:block;
|
| 122 |
+
font-size:12px;
|
| 123 |
+
margin:0;
|
| 124 |
+
padding:0;
|
| 125 |
Â
}
|
css/jquery-ui.css
CHANGED
|
@@ -1,571 +1,571 @@
|
|
| 1 |
-
/*
|
| 2 |
-
* jQuery UI CSS Framework 1.8.9
|
| 3 |
-
*
|
| 4 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 5 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 6 |
-
* http://jquery.org/license
|
| 7 |
-
*
|
| 8 |
-
* http://docs.jquery.com/UI/Theming/API
|
| 9 |
-
*/
|
| 10 |
-
|
| 11 |
-
/* Layout helpers
|
| 12 |
-
----------------------------------*/
|
| 13 |
-
.ui-helper-hidden { display: none; }
|
| 14 |
-
.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); }
|
| 15 |
-
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
|
| 16 |
-
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
|
| 17 |
-
.ui-helper-clearfix { display: inline-block; }
|
| 18 |
-
/* required comment for clearfix to work in Opera \*/
|
| 19 |
-
* html .ui-helper-clearfix { height:1%; }
|
| 20 |
-
.ui-helper-clearfix { display:block; }
|
| 21 |
-
/* end clearfix */
|
| 22 |
-
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
/* Interaction Cues
|
| 26 |
-
----------------------------------*/
|
| 27 |
-
.ui-state-disabled { cursor: default !important; }
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
/* Icons
|
| 31 |
-
----------------------------------*/
|
| 32 |
-
|
| 33 |
-
/* states and images */
|
| 34 |
-
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
|
| 35 |
-
|
| 36 |
-
|
| 37 |
-
/* Misc visuals
|
| 38 |
-
----------------------------------*/
|
| 39 |
-
|
| 40 |
-
/* Overlays */
|
| 41 |
-
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
|
| 42 |
-
/*
|
| 43 |
-
* jQuery UI Accordion 1.8.9
|
| 44 |
-
*
|
| 45 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 46 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 47 |
-
* http://jquery.org/license
|
| 48 |
-
*
|
| 49 |
-
* http://docs.jquery.com/UI/Accordion#theming
|
| 50 |
-
*/
|
| 51 |
-
/* IE/Win - Fix animation bug - #4615 */
|
| 52 |
-
.ui-accordion { width: 100%; }
|
| 53 |
-
.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }
|
| 54 |
-
.ui-accordion .ui-accordion-li-fix { display: inline; }
|
| 55 |
-
.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
|
| 56 |
-
.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; }
|
| 57 |
-
.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; }
|
| 58 |
-
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
|
| 59 |
-
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; }
|
| 60 |
-
.ui-accordion .ui-accordion-content-active { display: block; }
|
| 61 |
-
/*
|
| 62 |
-
* jQuery UI Autocomplete 1.8.9
|
| 63 |
-
*
|
| 64 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 65 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 66 |
-
* http://jquery.org/license
|
| 67 |
-
*
|
| 68 |
-
* http://docs.jquery.com/UI/Autocomplete#theming
|
| 69 |
-
*/
|
| 70 |
-
.ui-autocomplete { position: absolute; cursor: default; }
|
| 71 |
-
|
| 72 |
-
/* workarounds */
|
| 73 |
-
* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */
|
| 74 |
-
|
| 75 |
-
/*
|
| 76 |
-
* jQuery UI Menu 1.8.9
|
| 77 |
-
*
|
| 78 |
-
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 79 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 80 |
-
* http://jquery.org/license
|
| 81 |
-
*
|
| 82 |
-
* http://docs.jquery.com/UI/Menu#theming
|
| 83 |
-
*/
|
| 84 |
-
.ui-menu {
|
| 85 |
-
list-style:none;
|
| 86 |
-
padding: 2px;
|
| 87 |
-
margin: 0;
|
| 88 |
-
display:block;
|
| 89 |
-
float: left;
|
| 90 |
-
}
|
| 91 |
-
.ui-menu .ui-menu {
|
| 92 |
-
margin-top: -3px;
|
| 93 |
-
}
|
| 94 |
-
.ui-menu .ui-menu-item {
|
| 95 |
-
margin:0;
|
| 96 |
-
padding: 0;
|
| 97 |
-
zoom: 1;
|
| 98 |
-
float: left;
|
| 99 |
-
clear: left;
|
| 100 |
-
width: 100%;
|
| 101 |
-
}
|
| 102 |
-
.ui-menu .ui-menu-item a {
|
| 103 |
-
text-decoration:none;
|
| 104 |
-
display:block;
|
| 105 |
-
padding:.2em .4em;
|
| 106 |
-
line-height:1.5;
|
| 107 |
-
zoom:1;
|
| 108 |
-
}
|
| 109 |
-
.ui-menu .ui-menu-item a.ui-state-hover,
|
| 110 |
-
.ui-menu .ui-menu-item a.ui-state-active {
|
| 111 |
-
font-weight: normal;
|
| 112 |
-
margin: -1px;
|
| 113 |
-
}
|
| 114 |
-
/*
|
| 115 |
-
* jQuery UI Button 1.8.9
|
| 116 |
-
*
|
| 117 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 118 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 119 |
-
* http://jquery.org/license
|
| 120 |
-
*
|
| 121 |
-
* http://docs.jquery.com/UI/Button#theming
|
| 122 |
-
*/
|
| 123 |
-
.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */
|
| 124 |
-
.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */
|
| 125 |
-
button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */
|
| 126 |
-
.ui-button-icons-only { width: 3.4em; }
|
| 127 |
-
button.ui-button-icons-only { width: 3.7em; }
|
| 128 |
-
|
| 129 |
-
/*button text element */
|
| 130 |
-
.ui-button .ui-button-text { display: block; line-height: 1.4; }
|
| 131 |
-
.ui-button-text-only .ui-button-text { padding: .4em 1em; }
|
| 132 |
-
.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; }
|
| 133 |
-
.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; }
|
| 134 |
-
.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; }
|
| 135 |
-
.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; }
|
| 136 |
-
/* no icon support for input elements, provide padding by default */
|
| 137 |
-
input.ui-button { padding: .4em 1em; }
|
| 138 |
-
|
| 139 |
-
/*button icon element(s) */
|
| 140 |
-
.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; }
|
| 141 |
-
.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; }
|
| 142 |
-
.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; }
|
| 143 |
-
.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
|
| 144 |
-
.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
|
| 145 |
-
|
| 146 |
-
/*button sets*/
|
| 147 |
-
.ui-buttonset { margin-right: 7px; }
|
| 148 |
-
.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; }
|
| 149 |
-
|
| 150 |
-
/* workarounds */
|
| 151 |
-
button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */
|
| 152 |
-
/*
|
| 153 |
-
* jQuery UI Datepicker 1.8.9
|
| 154 |
-
*
|
| 155 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 156 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 157 |
-
* http://jquery.org/license
|
| 158 |
-
*
|
| 159 |
-
* http://docs.jquery.com/UI/Datepicker#theming
|
| 160 |
-
*/
|
| 161 |
-
.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; }
|
| 162 |
-
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
|
| 163 |
-
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
|
| 164 |
-
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
|
| 165 |
-
.ui-datepicker .ui-datepicker-prev { left:2px; }
|
| 166 |
-
.ui-datepicker .ui-datepicker-next { right:2px; }
|
| 167 |
-
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
|
| 168 |
-
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
|
| 169 |
-
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; }
|
| 170 |
-
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
|
| 171 |
-
.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
|
| 172 |
-
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
|
| 173 |
-
.ui-datepicker select.ui-datepicker-month,
|
| 174 |
-
.ui-datepicker select.ui-datepicker-year { width: 49%;}
|
| 175 |
-
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
|
| 176 |
-
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; }
|
| 177 |
-
.ui-datepicker td { border: 0; padding: 1px; }
|
| 178 |
-
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
|
| 179 |
-
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
|
| 180 |
-
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
|
| 181 |
-
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
|
| 182 |
-
|
| 183 |
-
/* with multiple calendars */
|
| 184 |
-
.ui-datepicker.ui-datepicker-multi { width:auto; }
|
| 185 |
-
.ui-datepicker-multi .ui-datepicker-group { float:left; }
|
| 186 |
-
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
|
| 187 |
-
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
|
| 188 |
-
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
|
| 189 |
-
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
|
| 190 |
-
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
|
| 191 |
-
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
|
| 192 |
-
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
|
| 193 |
-
.ui-datepicker-row-break { clear:both; width:100%; }
|
| 194 |
-
|
| 195 |
-
/* RTL support */
|
| 196 |
-
.ui-datepicker-rtl { direction: rtl; }
|
| 197 |
-
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
|
| 198 |
-
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
|
| 199 |
-
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
|
| 200 |
-
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
|
| 201 |
-
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
|
| 202 |
-
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
|
| 203 |
-
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
|
| 204 |
-
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
|
| 205 |
-
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
|
| 206 |
-
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
|
| 207 |
-
|
| 208 |
-
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
|
| 209 |
-
.ui-datepicker-cover {
|
| 210 |
-
display: none; /*sorry for IE5*/
|
| 211 |
-
display/**/: block; /*sorry for IE5*/
|
| 212 |
-
position: absolute; /*must have*/
|
| 213 |
-
z-index: -1; /*must have*/
|
| 214 |
-
filter: mask(); /*must have*/
|
| 215 |
-
top: -4px; /*must have*/
|
| 216 |
-
left: -4px; /*must have*/
|
| 217 |
-
width: 200px; /*must have*/
|
| 218 |
-
height: 200px; /*must have*/
|
| 219 |
-
}/*
|
| 220 |
-
* jQuery UI Dialog 1.8.9
|
| 221 |
-
*
|
| 222 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 223 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 224 |
-
* http://jquery.org/license
|
| 225 |
-
*
|
| 226 |
-
* http://docs.jquery.com/UI/Dialog#theming
|
| 227 |
-
*/
|
| 228 |
-
.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; }
|
| 229 |
-
.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; }
|
| 230 |
-
.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; }
|
| 231 |
-
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
|
| 232 |
-
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
|
| 233 |
-
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
|
| 234 |
-
.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
|
| 235 |
-
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
|
| 236 |
-
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
|
| 237 |
-
.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
|
| 238 |
-
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
|
| 239 |
-
.ui-draggable .ui-dialog-titlebar { cursor: move; }
|
| 240 |
-
/*
|
| 241 |
-
* jQuery UI Progressbar 1.8.9
|
| 242 |
-
*
|
| 243 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 244 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 245 |
-
* http://jquery.org/license
|
| 246 |
-
*
|
| 247 |
-
* http://docs.jquery.com/UI/Progressbar#theming
|
| 248 |
-
*/
|
| 249 |
-
.ui-progressbar { height:2em; text-align: left; }
|
| 250 |
-
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }/*
|
| 251 |
-
* jQuery UI Resizable 1.8.9
|
| 252 |
-
*
|
| 253 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 254 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 255 |
-
* http://jquery.org/license
|
| 256 |
-
*
|
| 257 |
-
* http://docs.jquery.com/UI/Resizable#theming
|
| 258 |
-
*/
|
| 259 |
-
.ui-resizable { position: relative;}
|
| 260 |
-
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;}
|
| 261 |
-
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
|
| 262 |
-
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; }
|
| 263 |
-
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; }
|
| 264 |
-
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; }
|
| 265 |
-
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; }
|
| 266 |
-
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
|
| 267 |
-
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
|
| 268 |
-
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
|
| 269 |
-
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/*
|
| 270 |
-
* jQuery UI Selectable 1.8.9
|
| 271 |
-
*
|
| 272 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 273 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 274 |
-
* http://jquery.org/license
|
| 275 |
-
*
|
| 276 |
-
* http://docs.jquery.com/UI/Selectable#theming
|
| 277 |
-
*/
|
| 278 |
-
.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; }
|
| 279 |
-
/*
|
| 280 |
-
* jQuery UI Slider 1.8.9
|
| 281 |
-
*
|
| 282 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 283 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 284 |
-
* http://jquery.org/license
|
| 285 |
-
*
|
| 286 |
-
* http://docs.jquery.com/UI/Slider#theming
|
| 287 |
-
*/
|
| 288 |
-
.ui-slider { position: relative; text-align: left; }
|
| 289 |
-
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
|
| 290 |
-
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; }
|
| 291 |
-
|
| 292 |
-
.ui-slider-horizontal { height: .8em; }
|
| 293 |
-
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
|
| 294 |
-
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
|
| 295 |
-
.ui-slider-horizontal .ui-slider-range-min { left: 0; }
|
| 296 |
-
.ui-slider-horizontal .ui-slider-range-max { right: 0; }
|
| 297 |
-
|
| 298 |
-
.ui-slider-vertical { width: .8em; height: 100px; }
|
| 299 |
-
.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
|
| 300 |
-
.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
|
| 301 |
-
.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
|
| 302 |
-
.ui-slider-vertical .ui-slider-range-max { top: 0; }/*
|
| 303 |
-
* jQuery UI Tabs 1.8.9
|
| 304 |
-
*
|
| 305 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 306 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 307 |
-
* http://jquery.org/license
|
| 308 |
-
*
|
| 309 |
-
* http://docs.jquery.com/UI/Tabs#theming
|
| 310 |
-
*/
|
| 311 |
-
.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
|
| 312 |
-
.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
|
| 313 |
-
.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
|
| 314 |
-
.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
|
| 315 |
-
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
|
| 316 |
-
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
|
| 317 |
-
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
|
| 318 |
-
.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
|
| 319 |
-
.ui-tabs .ui-tabs-hide { display: none !important; }
|
| 320 |
-
/*
|
| 321 |
-
* jQuery UI CSS Framework 1.8.9
|
| 322 |
-
*
|
| 323 |
-
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 324 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 325 |
-
* http://jquery.org/license
|
| 326 |
-
*
|
| 327 |
-
* http://docs.jquery.com/UI/Theming/API
|
| 328 |
-
*
|
| 329 |
-
* To view and modify this theme, visit http://jqueryui.com/themeroller/
|
| 330 |
-
*/
|
| 331 |
-
|
| 332 |
-
|
| 333 |
-
/* Component containers
|
| 334 |
-
----------------------------------*/
|
| 335 |
-
.ui-widget { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1.1em/*{fsDefault}*/; }
|
| 336 |
-
.ui-widget .ui-widget { font-size: 1em; }
|
| 337 |
-
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1em; }
|
| 338 |
-
.ui-widget-content { border: 1px solid #aaaaaa/*{borderColorContent}*/; background: #ffffff/*{bgColorContent}*/ url(../images/ui-bg_flat_75_ffffff_40x100.png)/*{bgImgUrlContent}*/ 50%/*{bgContentXPos}*/ 50%/*{bgContentYPos}*/ repeat-x/*{bgContentRepeat}*/; color: #222222/*{fcContent}*/; }
|
| 339 |
-
.ui-widget-content a { color: #222222/*{fcContent}*/; }
|
| 340 |
-
.ui-widget-header { border: 1px solid #aaaaaa/*{borderColorHeader}*/; background: #cccccc/*{bgColorHeader}*/ url(../images/ui-bg_highlight-soft_75_cccccc_1x100.png)/*{bgImgUrlHeader}*/ 50%/*{bgHeaderXPos}*/ 50%/*{bgHeaderYPos}*/ repeat-x/*{bgHeaderRepeat}*/; color: #222222/*{fcHeader}*/; font-weight: bold; }
|
| 341 |
-
.ui-widget-header a { color: #222222/*{fcHeader}*/; }
|
| 342 |
-
|
| 343 |
-
/* Interaction states
|
| 344 |
-
----------------------------------*/
|
| 345 |
-
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3/*{borderColorDefault}*/; background: #e6e6e6/*{bgColorDefault}*/ url(../images/ui-bg_glass_75_e6e6e6_1x400.png)/*{bgImgUrlDefault}*/ 50%/*{bgDefaultXPos}*/ 50%/*{bgDefaultYPos}*/ repeat-x/*{bgDefaultRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #555555/*{fcDefault}*/; }
|
| 346 |
-
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555/*{fcDefault}*/; text-decoration: none; }
|
| 347 |
-
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999/*{borderColorHover}*/; background: #dadada/*{bgColorHover}*/ url(../images/ui-bg_glass_75_dadada_1x400.png)/*{bgImgUrlHover}*/ 50%/*{bgHoverXPos}*/ 50%/*{bgHoverYPos}*/ repeat-x/*{bgHoverRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcHover}*/; }
|
| 348 |
-
.ui-state-hover a, .ui-state-hover a:hover { color: #212121/*{fcHover}*/; text-decoration: none; }
|
| 349 |
-
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa/*{borderColorActive}*/; background: #ffffff/*{bgColorActive}*/ url(../images/ui-bg_glass_65_ffffff_1x400.png)/*{bgImgUrlActive}*/ 50%/*{bgActiveXPos}*/ 50%/*{bgActiveYPos}*/ repeat-x/*{bgActiveRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcActive}*/; }
|
| 350 |
-
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121/*{fcActive}*/; text-decoration: none; }
|
| 351 |
-
.ui-widget :active { outline: none; }
|
| 352 |
-
|
| 353 |
-
/* Interaction Cues
|
| 354 |
-
----------------------------------*/
|
| 355 |
-
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1/*{borderColorHighlight}*/; background: #fbf9ee/*{bgColorHighlight}*/ url(../images/ui-bg_glass_55_fbf9ee_1x400.png)/*{bgImgUrlHighlight}*/ 50%/*{bgHighlightXPos}*/ 50%/*{bgHighlightYPos}*/ repeat-x/*{bgHighlightRepeat}*/; color: #363636/*{fcHighlight}*/; }
|
| 356 |
-
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636/*{fcHighlight}*/; }
|
| 357 |
-
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a/*{borderColorError}*/; background: #fef1ec/*{bgColorError}*/ url(../images/ui-bg_glass_95_fef1ec_1x400.png)/*{bgImgUrlError}*/ 50%/*{bgErrorXPos}*/ 50%/*{bgErrorYPos}*/ repeat-x/*{bgErrorRepeat}*/; color: #cd0a0a/*{fcError}*/; }
|
| 358 |
-
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a/*{fcError}*/; }
|
| 359 |
-
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a/*{fcError}*/; }
|
| 360 |
-
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
|
| 361 |
-
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
|
| 362 |
-
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
|
| 363 |
-
|
| 364 |
-
/* Icons
|
| 365 |
-
----------------------------------*/
|
| 366 |
-
|
| 367 |
-
/* states and images */
|
| 368 |
-
.ui-icon { width: 16px; height: 16px; background-image: url(../images/ui-icons_222222_256x240.png)/*{iconsContent}*/; }
|
| 369 |
-
.ui-widget-content .ui-icon {background-image: url(../images/ui-icons_222222_256x240.png)/*{iconsContent}*/; }
|
| 370 |
-
.ui-widget-header .ui-icon {background-image: url(../images/ui-icons_222222_256x240.png)/*{iconsHeader}*/; }
|
| 371 |
-
.ui-state-default .ui-icon { background-image: url(../images/ui-icons_888888_256x240.png)/*{iconsDefault}*/; }
|
| 372 |
-
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(../images/ui-icons_454545_256x240.png)/*{iconsHover}*/; }
|
| 373 |
-
.ui-state-active .ui-icon {background-image: url(../images/ui-icons_454545_256x240.png)/*{iconsActive}*/; }
|
| 374 |
-
.ui-state-highlight .ui-icon {background-image: url(../images/ui-icons_2e83ff_256x240.png)/*{iconsHighlight}*/; }
|
| 375 |
-
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(../images/ui-icons_cd0a0a_256x240.png)/*{iconsError}*/; }
|
| 376 |
-
|
| 377 |
-
/* positioning */
|
| 378 |
-
.ui-icon-carat-1-n { background-position: 0 0; }
|
| 379 |
-
.ui-icon-carat-1-ne { background-position: -16px 0; }
|
| 380 |
-
.ui-icon-carat-1-e { background-position: -32px 0; }
|
| 381 |
-
.ui-icon-carat-1-se { background-position: -48px 0; }
|
| 382 |
-
.ui-icon-carat-1-s { background-position: -64px 0; }
|
| 383 |
-
.ui-icon-carat-1-sw { background-position: -80px 0; }
|
| 384 |
-
.ui-icon-carat-1-w { background-position: -96px 0; }
|
| 385 |
-
.ui-icon-carat-1-nw { background-position: -112px 0; }
|
| 386 |
-
.ui-icon-carat-2-n-s { background-position: -128px 0; }
|
| 387 |
-
.ui-icon-carat-2-e-w { background-position: -144px 0; }
|
| 388 |
-
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
| 389 |
-
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
| 390 |
-
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
| 391 |
-
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
| 392 |
-
.ui-icon-triangle-1-s { background-position: -64px -16px; }
|
| 393 |
-
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
| 394 |
-
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
| 395 |
-
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
| 396 |
-
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
| 397 |
-
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
| 398 |
-
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
| 399 |
-
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
| 400 |
-
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
| 401 |
-
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
| 402 |
-
.ui-icon-arrow-1-s { background-position: -64px -32px; }
|
| 403 |
-
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
| 404 |
-
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
| 405 |
-
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
| 406 |
-
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
| 407 |
-
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
| 408 |
-
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
| 409 |
-
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
| 410 |
-
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
| 411 |
-
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
| 412 |
-
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
| 413 |
-
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
| 414 |
-
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
|
| 415 |
-
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
| 416 |
-
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
| 417 |
-
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
| 418 |
-
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
| 419 |
-
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
| 420 |
-
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
| 421 |
-
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
| 422 |
-
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
| 423 |
-
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
| 424 |
-
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
| 425 |
-
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
| 426 |
-
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
| 427 |
-
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
| 428 |
-
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
| 429 |
-
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
| 430 |
-
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
| 431 |
-
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
| 432 |
-
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
| 433 |
-
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
| 434 |
-
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
| 435 |
-
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
| 436 |
-
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
| 437 |
-
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
| 438 |
-
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
| 439 |
-
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
| 440 |
-
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
| 441 |
-
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
| 442 |
-
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
| 443 |
-
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
| 444 |
-
.ui-icon-extlink { background-position: -32px -80px; }
|
| 445 |
-
.ui-icon-newwin { background-position: -48px -80px; }
|
| 446 |
-
.ui-icon-refresh { background-position: -64px -80px; }
|
| 447 |
-
.ui-icon-shuffle { background-position: -80px -80px; }
|
| 448 |
-
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
| 449 |
-
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
| 450 |
-
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
| 451 |
-
.ui-icon-folder-open { background-position: -16px -96px; }
|
| 452 |
-
.ui-icon-document { background-position: -32px -96px; }
|
| 453 |
-
.ui-icon-document-b { background-position: -48px -96px; }
|
| 454 |
-
.ui-icon-note { background-position: -64px -96px; }
|
| 455 |
-
.ui-icon-mail-closed { background-position: -80px -96px; }
|
| 456 |
-
.ui-icon-mail-open { background-position: -96px -96px; }
|
| 457 |
-
.ui-icon-suitcase { background-position: -112px -96px; }
|
| 458 |
-
.ui-icon-comment { background-position: -128px -96px; }
|
| 459 |
-
.ui-icon-person { background-position: -144px -96px; }
|
| 460 |
-
.ui-icon-print { background-position: -160px -96px; }
|
| 461 |
-
.ui-icon-trash { background-position: -176px -96px; }
|
| 462 |
-
.ui-icon-locked { background-position: -192px -96px; }
|
| 463 |
-
.ui-icon-unlocked { background-position: -208px -96px; }
|
| 464 |
-
.ui-icon-bookmark { background-position: -224px -96px; }
|
| 465 |
-
.ui-icon-tag { background-position: -240px -96px; }
|
| 466 |
-
.ui-icon-home { background-position: 0 -112px; }
|
| 467 |
-
.ui-icon-flag { background-position: -16px -112px; }
|
| 468 |
-
.ui-icon-calendar { background-position: -32px -112px; }
|
| 469 |
-
.ui-icon-cart { background-position: -48px -112px; }
|
| 470 |
-
.ui-icon-pencil { background-position: -64px -112px; }
|
| 471 |
-
.ui-icon-clock { background-position: -80px -112px; }
|
| 472 |
-
.ui-icon-disk { background-position: -96px -112px; }
|
| 473 |
-
.ui-icon-calculator { background-position: -112px -112px; }
|
| 474 |
-
.ui-icon-zoomin { background-position: -128px -112px; }
|
| 475 |
-
.ui-icon-zoomout { background-position: -144px -112px; }
|
| 476 |
-
.ui-icon-search { background-position: -160px -112px; }
|
| 477 |
-
.ui-icon-wrench { background-position: -176px -112px; }
|
| 478 |
-
.ui-icon-gear { background-position: -192px -112px; }
|
| 479 |
-
.ui-icon-heart { background-position: -208px -112px; }
|
| 480 |
-
.ui-icon-star { background-position: -224px -112px; }
|
| 481 |
-
.ui-icon-link { background-position: -240px -112px; }
|
| 482 |
-
.ui-icon-cancel { background-position: 0 -128px; }
|
| 483 |
-
.ui-icon-plus { background-position: -16px -128px; }
|
| 484 |
-
.ui-icon-plusthick { background-position: -32px -128px; }
|
| 485 |
-
.ui-icon-minus { background-position: -48px -128px; }
|
| 486 |
-
.ui-icon-minusthick { background-position: -64px -128px; }
|
| 487 |
-
.ui-icon-close { background-position: -80px -128px; }
|
| 488 |
-
.ui-icon-closethick { background-position: -96px -128px; }
|
| 489 |
-
.ui-icon-key { background-position: -112px -128px; }
|
| 490 |
-
.ui-icon-lightbulb { background-position: -128px -128px; }
|
| 491 |
-
.ui-icon-scissors { background-position: -144px -128px; }
|
| 492 |
-
.ui-icon-clipboard { background-position: -160px -128px; }
|
| 493 |
-
.ui-icon-copy { background-position: -176px -128px; }
|
| 494 |
-
.ui-icon-contact { background-position: -192px -128px; }
|
| 495 |
-
.ui-icon-image { background-position: -208px -128px; }
|
| 496 |
-
.ui-icon-video { background-position: -224px -128px; }
|
| 497 |
-
.ui-icon-script { background-position: -240px -128px; }
|
| 498 |
-
.ui-icon-alert { background-position: 0 -144px; }
|
| 499 |
-
.ui-icon-info { background-position: -16px -144px; }
|
| 500 |
-
.ui-icon-notice { background-position: -32px -144px; }
|
| 501 |
-
.ui-icon-help { background-position: -48px -144px; }
|
| 502 |
-
.ui-icon-check { background-position: -64px -144px; }
|
| 503 |
-
.ui-icon-bullet { background-position: -80px -144px; }
|
| 504 |
-
.ui-icon-radio-off { background-position: -96px -144px; }
|
| 505 |
-
.ui-icon-radio-on { background-position: -112px -144px; }
|
| 506 |
-
.ui-icon-pin-w { background-position: -128px -144px; }
|
| 507 |
-
.ui-icon-pin-s { background-position: -144px -144px; }
|
| 508 |
-
.ui-icon-play { background-position: 0 -160px; }
|
| 509 |
-
.ui-icon-pause { background-position: -16px -160px; }
|
| 510 |
-
.ui-icon-seek-next { background-position: -32px -160px; }
|
| 511 |
-
.ui-icon-seek-prev { background-position: -48px -160px; }
|
| 512 |
-
.ui-icon-seek-end { background-position: -64px -160px; }
|
| 513 |
-
.ui-icon-seek-start { background-position: -80px -160px; }
|
| 514 |
-
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
|
| 515 |
-
.ui-icon-seek-first { background-position: -80px -160px; }
|
| 516 |
-
.ui-icon-stop { background-position: -96px -160px; }
|
| 517 |
-
.ui-icon-eject { background-position: -112px -160px; }
|
| 518 |
-
.ui-icon-volume-off { background-position: -128px -160px; }
|
| 519 |
-
.ui-icon-volume-on { background-position: -144px -160px; }
|
| 520 |
-
.ui-icon-power { background-position: 0 -176px; }
|
| 521 |
-
.ui-icon-signal-diag { background-position: -16px -176px; }
|
| 522 |
-
.ui-icon-signal { background-position: -32px -176px; }
|
| 523 |
-
.ui-icon-battery-0 { background-position: -48px -176px; }
|
| 524 |
-
.ui-icon-battery-1 { background-position: -64px -176px; }
|
| 525 |
-
.ui-icon-battery-2 { background-position: -80px -176px; }
|
| 526 |
-
.ui-icon-battery-3 { background-position: -96px -176px; }
|
| 527 |
-
.ui-icon-circle-plus { background-position: 0 -192px; }
|
| 528 |
-
.ui-icon-circle-minus { background-position: -16px -192px; }
|
| 529 |
-
.ui-icon-circle-close { background-position: -32px -192px; }
|
| 530 |
-
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
| 531 |
-
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
| 532 |
-
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
| 533 |
-
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
| 534 |
-
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
| 535 |
-
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
| 536 |
-
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
| 537 |
-
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
| 538 |
-
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
| 539 |
-
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
| 540 |
-
.ui-icon-circle-check { background-position: -208px -192px; }
|
| 541 |
-
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
| 542 |
-
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
| 543 |
-
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
| 544 |
-
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
| 545 |
-
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
| 546 |
-
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
| 547 |
-
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
| 548 |
-
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
| 549 |
-
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
| 550 |
-
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
| 551 |
-
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
| 552 |
-
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
| 553 |
-
|
| 554 |
-
|
| 555 |
-
/* Misc visuals
|
| 556 |
-
----------------------------------*/
|
| 557 |
-
|
| 558 |
-
/* Corner radius */
|
| 559 |
-
.ui-corner-tl { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; border-top-left-radius: 4px/*{cornerRadius}*/; }
|
| 560 |
-
.ui-corner-tr { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; border-top-right-radius: 4px/*{cornerRadius}*/; }
|
| 561 |
-
.ui-corner-bl { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; border-bottom-left-radius: 4px/*{cornerRadius}*/; }
|
| 562 |
-
.ui-corner-br { -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; border-bottom-right-radius: 4px/*{cornerRadius}*/; }
|
| 563 |
-
.ui-corner-top { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; border-top-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; border-top-right-radius: 4px/*{cornerRadius}*/; }
|
| 564 |
-
.ui-corner-bottom { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; border-bottom-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; border-bottom-right-radius: 4px/*{cornerRadius}*/; }
|
| 565 |
-
.ui-corner-right { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; border-top-right-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; border-bottom-right-radius: 4px/*{cornerRadius}*/; }
|
| 566 |
-
.ui-corner-left { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; border-top-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; border-bottom-left-radius: 4px/*{cornerRadius}*/; }
|
| 567 |
-
.ui-corner-all { -moz-border-radius: 4px/*{cornerRadius}*/; -webkit-border-radius: 4px/*{cornerRadius}*/; border-radius: 4px/*{cornerRadius}*/; }
|
| 568 |
-
|
| 569 |
-
/* Overlays */
|
| 570 |
-
.ui-widget-overlay { background: #aaaaaa/*{bgColorOverlay}*/ url(../images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlOverlay}*/ 50%/*{bgOverlayXPos}*/ 50%/*{bgOverlayYPos}*/ repeat-x/*{bgOverlayRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityOverlay}*/; }
|
| 571 |
Â
.ui-widget-shadow { margin: -8px/*{offsetTopShadow}*/ 0 0 -8px/*{offsetLeftShadow}*/; padding: 8px/*{thicknessShadow}*/; background: #aaaaaa/*{bgColorShadow}*/ url(../images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlShadow}*/ 50%/*{bgShadowXPos}*/ 50%/*{bgShadowYPos}*/ repeat-x/*{bgShadowRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityShadow}*/; -moz-border-radius: 8px/*{cornerRadiusShadow}*/; -webkit-border-radius: 8px/*{cornerRadiusShadow}*/; border-radius: 8px/*{cornerRadiusShadow}*/; }
|
| 1 |
+
/*
|
| 2 |
+
* jQuery UI CSS Framework 1.8.9
|
| 3 |
+
*
|
| 4 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 5 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 6 |
+
* http://jquery.org/license
|
| 7 |
+
*
|
| 8 |
+
* http://docs.jquery.com/UI/Theming/API
|
| 9 |
+
*/
|
| 10 |
+
|
| 11 |
+
/* Layout helpers
|
| 12 |
+
----------------------------------*/
|
| 13 |
+
.ui-helper-hidden { display: none; }
|
| 14 |
+
.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); }
|
| 15 |
+
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
|
| 16 |
+
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
|
| 17 |
+
.ui-helper-clearfix { display: inline-block; }
|
| 18 |
+
/* required comment for clearfix to work in Opera \*/
|
| 19 |
+
* html .ui-helper-clearfix { height:1%; }
|
| 20 |
+
.ui-helper-clearfix { display:block; }
|
| 21 |
+
/* end clearfix */
|
| 22 |
+
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
|
| 23 |
+
|
| 24 |
+
|
| 25 |
+
/* Interaction Cues
|
| 26 |
+
----------------------------------*/
|
| 27 |
+
.ui-state-disabled { cursor: default !important; }
|
| 28 |
+
|
| 29 |
+
|
| 30 |
+
/* Icons
|
| 31 |
+
----------------------------------*/
|
| 32 |
+
|
| 33 |
+
/* states and images */
|
| 34 |
+
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
|
| 35 |
+
|
| 36 |
+
|
| 37 |
+
/* Misc visuals
|
| 38 |
+
----------------------------------*/
|
| 39 |
+
|
| 40 |
+
/* Overlays */
|
| 41 |
+
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
|
| 42 |
+
/*
|
| 43 |
+
* jQuery UI Accordion 1.8.9
|
| 44 |
+
*
|
| 45 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 46 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 47 |
+
* http://jquery.org/license
|
| 48 |
+
*
|
| 49 |
+
* http://docs.jquery.com/UI/Accordion#theming
|
| 50 |
+
*/
|
| 51 |
+
/* IE/Win - Fix animation bug - #4615 */
|
| 52 |
+
.ui-accordion { width: 100%; }
|
| 53 |
+
.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }
|
| 54 |
+
.ui-accordion .ui-accordion-li-fix { display: inline; }
|
| 55 |
+
.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
|
| 56 |
+
.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; }
|
| 57 |
+
.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; }
|
| 58 |
+
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
|
| 59 |
+
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; }
|
| 60 |
+
.ui-accordion .ui-accordion-content-active { display: block; }
|
| 61 |
+
/*
|
| 62 |
+
* jQuery UI Autocomplete 1.8.9
|
| 63 |
+
*
|
| 64 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 65 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 66 |
+
* http://jquery.org/license
|
| 67 |
+
*
|
| 68 |
+
* http://docs.jquery.com/UI/Autocomplete#theming
|
| 69 |
+
*/
|
| 70 |
+
.ui-autocomplete { position: absolute; cursor: default; }
|
| 71 |
+
|
| 72 |
+
/* workarounds */
|
| 73 |
+
* html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */
|
| 74 |
+
|
| 75 |
+
/*
|
| 76 |
+
* jQuery UI Menu 1.8.9
|
| 77 |
+
*
|
| 78 |
+
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 79 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 80 |
+
* http://jquery.org/license
|
| 81 |
+
*
|
| 82 |
+
* http://docs.jquery.com/UI/Menu#theming
|
| 83 |
+
*/
|
| 84 |
+
.ui-menu {
|
| 85 |
+
list-style:none;
|
| 86 |
+
padding: 2px;
|
| 87 |
+
margin: 0;
|
| 88 |
+
display:block;
|
| 89 |
+
float: left;
|
| 90 |
+
}
|
| 91 |
+
.ui-menu .ui-menu {
|
| 92 |
+
margin-top: -3px;
|
| 93 |
+
}
|
| 94 |
+
.ui-menu .ui-menu-item {
|
| 95 |
+
margin:0;
|
| 96 |
+
padding: 0;
|
| 97 |
+
zoom: 1;
|
| 98 |
+
float: left;
|
| 99 |
+
clear: left;
|
| 100 |
+
width: 100%;
|
| 101 |
+
}
|
| 102 |
+
.ui-menu .ui-menu-item a {
|
| 103 |
+
text-decoration:none;
|
| 104 |
+
display:block;
|
| 105 |
+
padding:.2em .4em;
|
| 106 |
+
line-height:1.5;
|
| 107 |
+
zoom:1;
|
| 108 |
+
}
|
| 109 |
+
.ui-menu .ui-menu-item a.ui-state-hover,
|
| 110 |
+
.ui-menu .ui-menu-item a.ui-state-active {
|
| 111 |
+
font-weight: normal;
|
| 112 |
+
margin: -1px;
|
| 113 |
+
}
|
| 114 |
+
/*
|
| 115 |
+
* jQuery UI Button 1.8.9
|
| 116 |
+
*
|
| 117 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 118 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 119 |
+
* http://jquery.org/license
|
| 120 |
+
*
|
| 121 |
+
* http://docs.jquery.com/UI/Button#theming
|
| 122 |
+
*/
|
| 123 |
+
.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */
|
| 124 |
+
.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */
|
| 125 |
+
button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */
|
| 126 |
+
.ui-button-icons-only { width: 3.4em; }
|
| 127 |
+
button.ui-button-icons-only { width: 3.7em; }
|
| 128 |
+
|
| 129 |
+
/*button text element */
|
| 130 |
+
.ui-button .ui-button-text { display: block; line-height: 1.4; }
|
| 131 |
+
.ui-button-text-only .ui-button-text { padding: .4em 1em; }
|
| 132 |
+
.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; }
|
| 133 |
+
.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; }
|
| 134 |
+
.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; }
|
| 135 |
+
.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; }
|
| 136 |
+
/* no icon support for input elements, provide padding by default */
|
| 137 |
+
input.ui-button { padding: .4em 1em; }
|
| 138 |
+
|
| 139 |
+
/*button icon element(s) */
|
| 140 |
+
.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; }
|
| 141 |
+
.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; }
|
| 142 |
+
.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; }
|
| 143 |
+
.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
|
| 144 |
+
.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
|
| 145 |
+
|
| 146 |
+
/*button sets*/
|
| 147 |
+
.ui-buttonset { margin-right: 7px; }
|
| 148 |
+
.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; }
|
| 149 |
+
|
| 150 |
+
/* workarounds */
|
| 151 |
+
button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */
|
| 152 |
+
/*
|
| 153 |
+
* jQuery UI Datepicker 1.8.9
|
| 154 |
+
*
|
| 155 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 156 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 157 |
+
* http://jquery.org/license
|
| 158 |
+
*
|
| 159 |
+
* http://docs.jquery.com/UI/Datepicker#theming
|
| 160 |
+
*/
|
| 161 |
+
.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; }
|
| 162 |
+
.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
|
| 163 |
+
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
|
| 164 |
+
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
|
| 165 |
+
.ui-datepicker .ui-datepicker-prev { left:2px; }
|
| 166 |
+
.ui-datepicker .ui-datepicker-next { right:2px; }
|
| 167 |
+
.ui-datepicker .ui-datepicker-prev-hover { left:1px; }
|
| 168 |
+
.ui-datepicker .ui-datepicker-next-hover { right:1px; }
|
| 169 |
+
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; }
|
| 170 |
+
.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; }
|
| 171 |
+
.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }
|
| 172 |
+
.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
|
| 173 |
+
.ui-datepicker select.ui-datepicker-month,
|
| 174 |
+
.ui-datepicker select.ui-datepicker-year { width: 49%;}
|
| 175 |
+
.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; }
|
| 176 |
+
.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; }
|
| 177 |
+
.ui-datepicker td { border: 0; padding: 1px; }
|
| 178 |
+
.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
|
| 179 |
+
.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
|
| 180 |
+
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
|
| 181 |
+
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
|
| 182 |
+
|
| 183 |
+
/* with multiple calendars */
|
| 184 |
+
.ui-datepicker.ui-datepicker-multi { width:auto; }
|
| 185 |
+
.ui-datepicker-multi .ui-datepicker-group { float:left; }
|
| 186 |
+
.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; }
|
| 187 |
+
.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; }
|
| 188 |
+
.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
|
| 189 |
+
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
|
| 190 |
+
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
|
| 191 |
+
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
|
| 192 |
+
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
|
| 193 |
+
.ui-datepicker-row-break { clear:both; width:100%; }
|
| 194 |
+
|
| 195 |
+
/* RTL support */
|
| 196 |
+
.ui-datepicker-rtl { direction: rtl; }
|
| 197 |
+
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
|
| 198 |
+
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
|
| 199 |
+
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
|
| 200 |
+
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
|
| 201 |
+
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
|
| 202 |
+
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
|
| 203 |
+
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
|
| 204 |
+
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
|
| 205 |
+
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
|
| 206 |
+
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
|
| 207 |
+
|
| 208 |
+
/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */
|
| 209 |
+
.ui-datepicker-cover {
|
| 210 |
+
display: none; /*sorry for IE5*/
|
| 211 |
+
display/**/: block; /*sorry for IE5*/
|
| 212 |
+
position: absolute; /*must have*/
|
| 213 |
+
z-index: -1; /*must have*/
|
| 214 |
+
filter: mask(); /*must have*/
|
| 215 |
+
top: -4px; /*must have*/
|
| 216 |
+
left: -4px; /*must have*/
|
| 217 |
+
width: 200px; /*must have*/
|
| 218 |
+
height: 200px; /*must have*/
|
| 219 |
+
}/*
|
| 220 |
+
* jQuery UI Dialog 1.8.9
|
| 221 |
+
*
|
| 222 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 223 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 224 |
+
* http://jquery.org/license
|
| 225 |
+
*
|
| 226 |
+
* http://docs.jquery.com/UI/Dialog#theming
|
| 227 |
+
*/
|
| 228 |
+
.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; }
|
| 229 |
+
.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; }
|
| 230 |
+
.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; }
|
| 231 |
+
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
|
| 232 |
+
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
|
| 233 |
+
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
|
| 234 |
+
.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
|
| 235 |
+
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
|
| 236 |
+
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
|
| 237 |
+
.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
|
| 238 |
+
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
|
| 239 |
+
.ui-draggable .ui-dialog-titlebar { cursor: move; }
|
| 240 |
+
/*
|
| 241 |
+
* jQuery UI Progressbar 1.8.9
|
| 242 |
+
*
|
| 243 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 244 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 245 |
+
* http://jquery.org/license
|
| 246 |
+
*
|
| 247 |
+
* http://docs.jquery.com/UI/Progressbar#theming
|
| 248 |
+
*/
|
| 249 |
+
.ui-progressbar { height:2em; text-align: left; }
|
| 250 |
+
.ui-progressbar .ui-progressbar-value {margin: -1px; height:100%; }/*
|
| 251 |
+
* jQuery UI Resizable 1.8.9
|
| 252 |
+
*
|
| 253 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 254 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 255 |
+
* http://jquery.org/license
|
| 256 |
+
*
|
| 257 |
+
* http://docs.jquery.com/UI/Resizable#theming
|
| 258 |
+
*/
|
| 259 |
+
.ui-resizable { position: relative;}
|
| 260 |
+
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;}
|
| 261 |
+
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
|
| 262 |
+
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; }
|
| 263 |
+
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; }
|
| 264 |
+
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; }
|
| 265 |
+
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; }
|
| 266 |
+
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
|
| 267 |
+
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
|
| 268 |
+
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
|
| 269 |
+
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/*
|
| 270 |
+
* jQuery UI Selectable 1.8.9
|
| 271 |
+
*
|
| 272 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 273 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 274 |
+
* http://jquery.org/license
|
| 275 |
+
*
|
| 276 |
+
* http://docs.jquery.com/UI/Selectable#theming
|
| 277 |
+
*/
|
| 278 |
+
.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; }
|
| 279 |
+
/*
|
| 280 |
+
* jQuery UI Slider 1.8.9
|
| 281 |
+
*
|
| 282 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 283 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 284 |
+
* http://jquery.org/license
|
| 285 |
+
*
|
| 286 |
+
* http://docs.jquery.com/UI/Slider#theming
|
| 287 |
+
*/
|
| 288 |
+
.ui-slider { position: relative; text-align: left; }
|
| 289 |
+
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
|
| 290 |
+
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; }
|
| 291 |
+
|
| 292 |
+
.ui-slider-horizontal { height: .8em; }
|
| 293 |
+
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
|
| 294 |
+
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; }
|
| 295 |
+
.ui-slider-horizontal .ui-slider-range-min { left: 0; }
|
| 296 |
+
.ui-slider-horizontal .ui-slider-range-max { right: 0; }
|
| 297 |
+
|
| 298 |
+
.ui-slider-vertical { width: .8em; height: 100px; }
|
| 299 |
+
.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; }
|
| 300 |
+
.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; }
|
| 301 |
+
.ui-slider-vertical .ui-slider-range-min { bottom: 0; }
|
| 302 |
+
.ui-slider-vertical .ui-slider-range-max { top: 0; }/*
|
| 303 |
+
* jQuery UI Tabs 1.8.9
|
| 304 |
+
*
|
| 305 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 306 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 307 |
+
* http://jquery.org/license
|
| 308 |
+
*
|
| 309 |
+
* http://docs.jquery.com/UI/Tabs#theming
|
| 310 |
+
*/
|
| 311 |
+
.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
|
| 312 |
+
.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
|
| 313 |
+
.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
|
| 314 |
+
.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
|
| 315 |
+
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
|
| 316 |
+
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
|
| 317 |
+
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
|
| 318 |
+
.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
|
| 319 |
+
.ui-tabs .ui-tabs-hide { display: none !important; }
|
| 320 |
+
/*
|
| 321 |
+
* jQuery UI CSS Framework 1.8.9
|
| 322 |
+
*
|
| 323 |
+
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
|
| 324 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 325 |
+
* http://jquery.org/license
|
| 326 |
+
*
|
| 327 |
+
* http://docs.jquery.com/UI/Theming/API
|
| 328 |
+
*
|
| 329 |
+
* To view and modify this theme, visit http://jqueryui.com/themeroller/
|
| 330 |
+
*/
|
| 331 |
+
|
| 332 |
+
|
| 333 |
+
/* Component containers
|
| 334 |
+
----------------------------------*/
|
| 335 |
+
.ui-widget { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1.1em/*{fsDefault}*/; }
|
| 336 |
+
.ui-widget .ui-widget { font-size: 1em; }
|
| 337 |
+
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif/*{ffDefault}*/; font-size: 1em; }
|
| 338 |
+
.ui-widget-content { border: 1px solid #aaaaaa/*{borderColorContent}*/; background: #ffffff/*{bgColorContent}*/ url(../images/ui-bg_flat_75_ffffff_40x100.png)/*{bgImgUrlContent}*/ 50%/*{bgContentXPos}*/ 50%/*{bgContentYPos}*/ repeat-x/*{bgContentRepeat}*/; color: #222222/*{fcContent}*/; }
|
| 339 |
+
.ui-widget-content a { color: #222222/*{fcContent}*/; }
|
| 340 |
+
.ui-widget-header { border: 1px solid #aaaaaa/*{borderColorHeader}*/; background: #cccccc/*{bgColorHeader}*/ url(../images/ui-bg_highlight-soft_75_cccccc_1x100.png)/*{bgImgUrlHeader}*/ 50%/*{bgHeaderXPos}*/ 50%/*{bgHeaderYPos}*/ repeat-x/*{bgHeaderRepeat}*/; color: #222222/*{fcHeader}*/; font-weight: bold; }
|
| 341 |
+
.ui-widget-header a { color: #222222/*{fcHeader}*/; }
|
| 342 |
+
|
| 343 |
+
/* Interaction states
|
| 344 |
+
----------------------------------*/
|
| 345 |
+
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3/*{borderColorDefault}*/; background: #e6e6e6/*{bgColorDefault}*/ url(../images/ui-bg_glass_75_e6e6e6_1x400.png)/*{bgImgUrlDefault}*/ 50%/*{bgDefaultXPos}*/ 50%/*{bgDefaultYPos}*/ repeat-x/*{bgDefaultRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #555555/*{fcDefault}*/; }
|
| 346 |
+
.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555/*{fcDefault}*/; text-decoration: none; }
|
| 347 |
+
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999/*{borderColorHover}*/; background: #dadada/*{bgColorHover}*/ url(../images/ui-bg_glass_75_dadada_1x400.png)/*{bgImgUrlHover}*/ 50%/*{bgHoverXPos}*/ 50%/*{bgHoverYPos}*/ repeat-x/*{bgHoverRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcHover}*/; }
|
| 348 |
+
.ui-state-hover a, .ui-state-hover a:hover { color: #212121/*{fcHover}*/; text-decoration: none; }
|
| 349 |
+
.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa/*{borderColorActive}*/; background: #ffffff/*{bgColorActive}*/ url(../images/ui-bg_glass_65_ffffff_1x400.png)/*{bgImgUrlActive}*/ 50%/*{bgActiveXPos}*/ 50%/*{bgActiveYPos}*/ repeat-x/*{bgActiveRepeat}*/; font-weight: normal/*{fwDefault}*/; color: #212121/*{fcActive}*/; }
|
| 350 |
+
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121/*{fcActive}*/; text-decoration: none; }
|
| 351 |
+
.ui-widget :active { outline: none; }
|
| 352 |
+
|
| 353 |
+
/* Interaction Cues
|
| 354 |
+
----------------------------------*/
|
| 355 |
+
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1/*{borderColorHighlight}*/; background: #fbf9ee/*{bgColorHighlight}*/ url(../images/ui-bg_glass_55_fbf9ee_1x400.png)/*{bgImgUrlHighlight}*/ 50%/*{bgHighlightXPos}*/ 50%/*{bgHighlightYPos}*/ repeat-x/*{bgHighlightRepeat}*/; color: #363636/*{fcHighlight}*/; }
|
| 356 |
+
.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636/*{fcHighlight}*/; }
|
| 357 |
+
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a/*{borderColorError}*/; background: #fef1ec/*{bgColorError}*/ url(../images/ui-bg_glass_95_fef1ec_1x400.png)/*{bgImgUrlError}*/ 50%/*{bgErrorXPos}*/ 50%/*{bgErrorYPos}*/ repeat-x/*{bgErrorRepeat}*/; color: #cd0a0a/*{fcError}*/; }
|
| 358 |
+
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a/*{fcError}*/; }
|
| 359 |
+
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a/*{fcError}*/; }
|
| 360 |
+
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
|
| 361 |
+
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
|
| 362 |
+
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
|
| 363 |
+
|
| 364 |
+
/* Icons
|
| 365 |
+
----------------------------------*/
|
| 366 |
+
|
| 367 |
+
/* states and images */
|
| 368 |
+
.ui-icon { width: 16px; height: 16px; background-image: url(../images/ui-icons_222222_256x240.png)/*{iconsContent}*/; }
|
| 369 |
+
.ui-widget-content .ui-icon {background-image: url(../images/ui-icons_222222_256x240.png)/*{iconsContent}*/; }
|
| 370 |
+
.ui-widget-header .ui-icon {background-image: url(../images/ui-icons_222222_256x240.png)/*{iconsHeader}*/; }
|
| 371 |
+
.ui-state-default .ui-icon { background-image: url(../images/ui-icons_888888_256x240.png)/*{iconsDefault}*/; }
|
| 372 |
+
.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(../images/ui-icons_454545_256x240.png)/*{iconsHover}*/; }
|
| 373 |
+
.ui-state-active .ui-icon {background-image: url(../images/ui-icons_454545_256x240.png)/*{iconsActive}*/; }
|
| 374 |
+
.ui-state-highlight .ui-icon {background-image: url(../images/ui-icons_2e83ff_256x240.png)/*{iconsHighlight}*/; }
|
| 375 |
+
.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(../images/ui-icons_cd0a0a_256x240.png)/*{iconsError}*/; }
|
| 376 |
+
|
| 377 |
+
/* positioning */
|
| 378 |
+
.ui-icon-carat-1-n { background-position: 0 0; }
|
| 379 |
+
.ui-icon-carat-1-ne { background-position: -16px 0; }
|
| 380 |
+
.ui-icon-carat-1-e { background-position: -32px 0; }
|
| 381 |
+
.ui-icon-carat-1-se { background-position: -48px 0; }
|
| 382 |
+
.ui-icon-carat-1-s { background-position: -64px 0; }
|
| 383 |
+
.ui-icon-carat-1-sw { background-position: -80px 0; }
|
| 384 |
+
.ui-icon-carat-1-w { background-position: -96px 0; }
|
| 385 |
+
.ui-icon-carat-1-nw { background-position: -112px 0; }
|
| 386 |
+
.ui-icon-carat-2-n-s { background-position: -128px 0; }
|
| 387 |
+
.ui-icon-carat-2-e-w { background-position: -144px 0; }
|
| 388 |
+
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
| 389 |
+
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
| 390 |
+
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
| 391 |
+
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
| 392 |
+
.ui-icon-triangle-1-s { background-position: -64px -16px; }
|
| 393 |
+
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
| 394 |
+
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
| 395 |
+
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
| 396 |
+
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
| 397 |
+
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
| 398 |
+
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
| 399 |
+
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
| 400 |
+
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
| 401 |
+
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
| 402 |
+
.ui-icon-arrow-1-s { background-position: -64px -32px; }
|
| 403 |
+
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
| 404 |
+
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
| 405 |
+
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
| 406 |
+
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
| 407 |
+
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
| 408 |
+
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
| 409 |
+
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
| 410 |
+
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
| 411 |
+
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
| 412 |
+
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
| 413 |
+
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
| 414 |
+
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
|
| 415 |
+
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
| 416 |
+
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
| 417 |
+
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
| 418 |
+
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
| 419 |
+
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
| 420 |
+
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
| 421 |
+
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
| 422 |
+
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
| 423 |
+
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
| 424 |
+
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
| 425 |
+
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
| 426 |
+
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
| 427 |
+
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
| 428 |
+
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
| 429 |
+
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
| 430 |
+
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
| 431 |
+
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
| 432 |
+
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
| 433 |
+
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
| 434 |
+
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
| 435 |
+
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
| 436 |
+
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
| 437 |
+
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
| 438 |
+
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
| 439 |
+
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
| 440 |
+
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
| 441 |
+
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
| 442 |
+
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
| 443 |
+
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
| 444 |
+
.ui-icon-extlink { background-position: -32px -80px; }
|
| 445 |
+
.ui-icon-newwin { background-position: -48px -80px; }
|
| 446 |
+
.ui-icon-refresh { background-position: -64px -80px; }
|
| 447 |
+
.ui-icon-shuffle { background-position: -80px -80px; }
|
| 448 |
+
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
| 449 |
+
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
| 450 |
+
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
| 451 |
+
.ui-icon-folder-open { background-position: -16px -96px; }
|
| 452 |
+
.ui-icon-document { background-position: -32px -96px; }
|
| 453 |
+
.ui-icon-document-b { background-position: -48px -96px; }
|
| 454 |
+
.ui-icon-note { background-position: -64px -96px; }
|
| 455 |
+
.ui-icon-mail-closed { background-position: -80px -96px; }
|
| 456 |
+
.ui-icon-mail-open { background-position: -96px -96px; }
|
| 457 |
+
.ui-icon-suitcase { background-position: -112px -96px; }
|
| 458 |
+
.ui-icon-comment { background-position: -128px -96px; }
|
| 459 |
+
.ui-icon-person { background-position: -144px -96px; }
|
| 460 |
+
.ui-icon-print { background-position: -160px -96px; }
|
| 461 |
+
.ui-icon-trash { background-position: -176px -96px; }
|
| 462 |
+
.ui-icon-locked { background-position: -192px -96px; }
|
| 463 |
+
.ui-icon-unlocked { background-position: -208px -96px; }
|
| 464 |
+
.ui-icon-bookmark { background-position: -224px -96px; }
|
| 465 |
+
.ui-icon-tag { background-position: -240px -96px; }
|
| 466 |
+
.ui-icon-home { background-position: 0 -112px; }
|
| 467 |
+
.ui-icon-flag { background-position: -16px -112px; }
|
| 468 |
+
.ui-icon-calendar { background-position: -32px -112px; }
|
| 469 |
+
.ui-icon-cart { background-position: -48px -112px; }
|
| 470 |
+
.ui-icon-pencil { background-position: -64px -112px; }
|
| 471 |
+
.ui-icon-clock { background-position: -80px -112px; }
|
| 472 |
+
.ui-icon-disk { background-position: -96px -112px; }
|
| 473 |
+
.ui-icon-calculator { background-position: -112px -112px; }
|
| 474 |
+
.ui-icon-zoomin { background-position: -128px -112px; }
|
| 475 |
+
.ui-icon-zoomout { background-position: -144px -112px; }
|
| 476 |
+
.ui-icon-search { background-position: -160px -112px; }
|
| 477 |
+
.ui-icon-wrench { background-position: -176px -112px; }
|
| 478 |
+
.ui-icon-gear { background-position: -192px -112px; }
|
| 479 |
+
.ui-icon-heart { background-position: -208px -112px; }
|
| 480 |
+
.ui-icon-star { background-position: -224px -112px; }
|
| 481 |
+
.ui-icon-link { background-position: -240px -112px; }
|
| 482 |
+
.ui-icon-cancel { background-position: 0 -128px; }
|
| 483 |
+
.ui-icon-plus { background-position: -16px -128px; }
|
| 484 |
+
.ui-icon-plusthick { background-position: -32px -128px; }
|
| 485 |
+
.ui-icon-minus { background-position: -48px -128px; }
|
| 486 |
+
.ui-icon-minusthick { background-position: -64px -128px; }
|
| 487 |
+
.ui-icon-close { background-position: -80px -128px; }
|
| 488 |
+
.ui-icon-closethick { background-position: -96px -128px; }
|
| 489 |
+
.ui-icon-key { background-position: -112px -128px; }
|
| 490 |
+
.ui-icon-lightbulb { background-position: -128px -128px; }
|
| 491 |
+
.ui-icon-scissors { background-position: -144px -128px; }
|
| 492 |
+
.ui-icon-clipboard { background-position: -160px -128px; }
|
| 493 |
+
.ui-icon-copy { background-position: -176px -128px; }
|
| 494 |
+
.ui-icon-contact { background-position: -192px -128px; }
|
| 495 |
+
.ui-icon-image { background-position: -208px -128px; }
|
| 496 |
+
.ui-icon-video { background-position: -224px -128px; }
|
| 497 |
+
.ui-icon-script { background-position: -240px -128px; }
|
| 498 |
+
.ui-icon-alert { background-position: 0 -144px; }
|
| 499 |
+
.ui-icon-info { background-position: -16px -144px; }
|
| 500 |
+
.ui-icon-notice { background-position: -32px -144px; }
|
| 501 |
+
.ui-icon-help { background-position: -48px -144px; }
|
| 502 |
+
.ui-icon-check { background-position: -64px -144px; }
|
| 503 |
+
.ui-icon-bullet { background-position: -80px -144px; }
|
| 504 |
+
.ui-icon-radio-off { background-position: -96px -144px; }
|
| 505 |
+
.ui-icon-radio-on { background-position: -112px -144px; }
|
| 506 |
+
.ui-icon-pin-w { background-position: -128px -144px; }
|
| 507 |
+
.ui-icon-pin-s { background-position: -144px -144px; }
|
| 508 |
+
.ui-icon-play { background-position: 0 -160px; }
|
| 509 |
+
.ui-icon-pause { background-position: -16px -160px; }
|
| 510 |
+
.ui-icon-seek-next { background-position: -32px -160px; }
|
| 511 |
+
.ui-icon-seek-prev { background-position: -48px -160px; }
|
| 512 |
+
.ui-icon-seek-end { background-position: -64px -160px; }
|
| 513 |
+
.ui-icon-seek-start { background-position: -80px -160px; }
|
| 514 |
+
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
|
| 515 |
+
.ui-icon-seek-first { background-position: -80px -160px; }
|
| 516 |
+
.ui-icon-stop { background-position: -96px -160px; }
|
| 517 |
+
.ui-icon-eject { background-position: -112px -160px; }
|
| 518 |
+
.ui-icon-volume-off { background-position: -128px -160px; }
|
| 519 |
+
.ui-icon-volume-on { background-position: -144px -160px; }
|
| 520 |
+
.ui-icon-power { background-position: 0 -176px; }
|
| 521 |
+
.ui-icon-signal-diag { background-position: -16px -176px; }
|
| 522 |
+
.ui-icon-signal { background-position: -32px -176px; }
|
| 523 |
+
.ui-icon-battery-0 { background-position: -48px -176px; }
|
| 524 |
+
.ui-icon-battery-1 { background-position: -64px -176px; }
|
| 525 |
+
.ui-icon-battery-2 { background-position: -80px -176px; }
|
| 526 |
+
.ui-icon-battery-3 { background-position: -96px -176px; }
|
| 527 |
+
.ui-icon-circle-plus { background-position: 0 -192px; }
|
| 528 |
+
.ui-icon-circle-minus { background-position: -16px -192px; }
|
| 529 |
+
.ui-icon-circle-close { background-position: -32px -192px; }
|
| 530 |
+
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
| 531 |
+
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
| 532 |
+
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
| 533 |
+
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
| 534 |
+
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
| 535 |
+
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
| 536 |
+
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
| 537 |
+
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
| 538 |
+
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
| 539 |
+
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
| 540 |
+
.ui-icon-circle-check { background-position: -208px -192px; }
|
| 541 |
+
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
| 542 |
+
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
| 543 |
+
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
| 544 |
+
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
| 545 |
+
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
| 546 |
+
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
| 547 |
+
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
| 548 |
+
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
| 549 |
+
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
| 550 |
+
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
| 551 |
+
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
| 552 |
+
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
| 553 |
+
|
| 554 |
+
|
| 555 |
+
/* Misc visuals
|
| 556 |
+
----------------------------------*/
|
| 557 |
+
|
| 558 |
+
/* Corner radius */
|
| 559 |
+
.ui-corner-tl { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; border-top-left-radius: 4px/*{cornerRadius}*/; }
|
| 560 |
+
.ui-corner-tr { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; border-top-right-radius: 4px/*{cornerRadius}*/; }
|
| 561 |
+
.ui-corner-bl { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; border-bottom-left-radius: 4px/*{cornerRadius}*/; }
|
| 562 |
+
.ui-corner-br { -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; border-bottom-right-radius: 4px/*{cornerRadius}*/; }
|
| 563 |
+
.ui-corner-top { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; border-top-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; border-top-right-radius: 4px/*{cornerRadius}*/; }
|
| 564 |
+
.ui-corner-bottom { -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; border-bottom-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; border-bottom-right-radius: 4px/*{cornerRadius}*/; }
|
| 565 |
+
.ui-corner-right { -moz-border-radius-topright: 4px/*{cornerRadius}*/; -webkit-border-top-right-radius: 4px/*{cornerRadius}*/; border-top-right-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomright: 4px/*{cornerRadius}*/; -webkit-border-bottom-right-radius: 4px/*{cornerRadius}*/; border-bottom-right-radius: 4px/*{cornerRadius}*/; }
|
| 566 |
+
.ui-corner-left { -moz-border-radius-topleft: 4px/*{cornerRadius}*/; -webkit-border-top-left-radius: 4px/*{cornerRadius}*/; border-top-left-radius: 4px/*{cornerRadius}*/; -moz-border-radius-bottomleft: 4px/*{cornerRadius}*/; -webkit-border-bottom-left-radius: 4px/*{cornerRadius}*/; border-bottom-left-radius: 4px/*{cornerRadius}*/; }
|
| 567 |
+
.ui-corner-all { -moz-border-radius: 4px/*{cornerRadius}*/; -webkit-border-radius: 4px/*{cornerRadius}*/; border-radius: 4px/*{cornerRadius}*/; }
|
| 568 |
+
|
| 569 |
+
/* Overlays */
|
| 570 |
+
.ui-widget-overlay { background: #aaaaaa/*{bgColorOverlay}*/ url(../images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlOverlay}*/ 50%/*{bgOverlayXPos}*/ 50%/*{bgOverlayYPos}*/ repeat-x/*{bgOverlayRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityOverlay}*/; }
|
| 571 |
Â
.ui-widget-shadow { margin: -8px/*{offsetTopShadow}*/ 0 0 -8px/*{offsetLeftShadow}*/; padding: 8px/*{thicknessShadow}*/; background: #aaaaaa/*{bgColorShadow}*/ url(../images/ui-bg_flat_0_aaaaaa_40x100.png)/*{bgImgUrlShadow}*/ 50%/*{bgShadowXPos}*/ 50%/*{bgShadowYPos}*/ repeat-x/*{bgShadowRepeat}*/; opacity: .3;filter:Alpha(Opacity=30)/*{opacityShadow}*/; -moz-border-radius: 8px/*{cornerRadiusShadow}*/; -webkit-border-radius: 8px/*{cornerRadiusShadow}*/; border-radius: 8px/*{cornerRadiusShadow}*/; }
|
custom-contact-forms-admin.php
CHANGED
|
@@ -1,2451 +1,2508 @@
|
|
| 1 |
-
<?php
|
| 2 |
-
/*
|
| 3 |
-
Custom Contact Forms Plugin
|
| 4 |
-
By Taylor Lovett - http://www.taylorlovett.com
|
| 5 |
-
Plugin URL: http://www.taylorlovett.com/wordpress-plugins
|
| 6 |
-
*/
|
| 7 |
-
if (!class_exists('CustomContactFormsAdmin')) {
|
| 8 |
-
class CustomContactFormsAdmin extends CustomContactForms {
|
| 9 |
-
var $action_complete = '';
|
| 10 |
-
|
| 11 |
-
function adminInit() {
|
| 12 |
-
$this->downloadExportFile();
|
| 13 |
-
$this->runImport();
|
| 14 |
-
}
|
| 15 |
-
|
| 16 |
-
function insertUsagePopover() {
|
| 17 |
-
ccf_utils::load_module('usage_popover/custom-contact-forms-usage-popover.php');
|
| 18 |
-
}
|
| 19 |
-
|
| 20 |
-
function insertQuickStartPopover() {
|
| 21 |
-
ccf_utils::load_module('usage_popover/custom-contact-forms-quick-start-popover.php');
|
| 22 |
-
}
|
| 23 |
-
|
| 24 |
-
function isPluginAdminPage() {
|
| 25 |
-
$pages = array('custom-contact-forms', 'ccf-settings', 'ccf-saved-form-submissions');
|
| 26 |
-
return (in_array($GLOBALS['ccf_current_page'], $pages));
|
| 27 |
-
}
|
| 28 |
-
|
| 29 |
-
function appendToActionLinks($action_links, $plugin_file) {
|
| 30 |
-
static $link_added = false;
|
| 31 |
-
if (!$link_added && basename($plugin_file) == 'custom-contact-forms.php') {
|
| 32 |
-
$new_link = '<a style="font-weight:bold;" href="admin.php?page=custom-contact-forms" title="' . __('Manage Custom Contact Forms', 'custom-contact-forms') . '">' . __('Settings', 'custom-contact-forms') . '</a>';
|
| 33 |
-
array_unshift($action_links, $new_link);
|
| 34 |
-
$link_added = true;
|
| 35 |
-
}
|
| 36 |
-
return $action_links;
|
| 37 |
-
}
|
| 38 |
-
|
| 39 |
-
function downloadExportFile() {
|
| 40 |
-
if ($_POST['ccf_export']) {
|
| 41 |
-
//chmod('modules/export/', 0777);
|
| 42 |
-
ccf_utils::load_module('export/custom-contact-forms-export.php');
|
| 43 |
-
$transit = new CustomContactFormsExport(parent::getAdminOptionsName());
|
| 44 |
-
$transit->exportAll();
|
| 45 |
-
$file = $transit->exportToFile();
|
| 46 |
-
ccf_utils::redirect(plugins_url() . '/custom-contact-forms/download.php?location=export/' . $file);
|
| 47 |
-
}
|
| 48 |
-
}
|
| 49 |
-
|
| 50 |
-
function runImport() {
|
| 51 |
-
if ($_POST['ccf_clear_import'] || $_POST['ccf_merge_import']) {
|
| 52 |
-
//chmod('modules/export/', 0777);
|
| 53 |
-
ccf_utils::load_module('export/custom-contact-forms-export.php');
|
| 54 |
-
$transit = new CustomContactFormsExport(parent::getAdminOptionsName());
|
| 55 |
-
$settings['import_general_settings'] = ($_POST['ccf_import_overwrite_settings'] == 1) ? true : false;
|
| 56 |
-
$settings['import_forms'] = ($_POST['ccf_import_forms'] == 1) ? true : false;
|
| 57 |
-
$settings['import_fields'] = ($_POST['ccf_import_fields'] == 1) ? true : false;
|
| 58 |
-
$settings['import_field_options'] = ($_POST['ccf_import_field_options'] == 1) ? true : false;
|
| 59 |
-
$settings['import_styles'] = ($_POST['ccf_import_styles'] == 1) ? true : false;
|
| 60 |
-
$settings['import_saved_submissions'] = ($_POST['ccf_import_saved_submissions'] == 1) ? true : false;
|
| 61 |
-
$settings['mode'] = ($_POST['ccf_clear_import']) ? 'clear_import' : 'merge_import';
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
if (
|
| 70 |
-
|
| 71 |
-
|
| 72 |
-
$
|
| 73 |
-
$body
|
| 74 |
-
$body .= "
|
| 75 |
-
$body .= "
|
| 76 |
-
$body .= "
|
| 77 |
-
$body .= "
|
| 78 |
-
$body .= "
|
| 79 |
-
$body .= "Message
|
| 80 |
-
$body .=
|
| 81 |
-
$
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
$mail->
|
| 85 |
-
|
| 86 |
-
|
| 87 |
-
$mail->
|
| 88 |
-
$mail->
|
| 89 |
-
$mail->
|
| 90 |
-
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
| 94 |
-
$mail->
|
| 95 |
-
$mail->
|
| 96 |
-
$mail->
|
| 97 |
-
$mail->
|
| 98 |
-
$mail->
|
| 99 |
-
$mail->
|
| 100 |
-
$mail->
|
| 101 |
-
|
| 102 |
-
|
| 103 |
-
|
| 104 |
-
|
| 105 |
-
|
| 106 |
-
|
| 107 |
-
|
| 108 |
-
|
| 109 |
-
$
|
| 110 |
-
|
| 111 |
-
}
|
| 112 |
-
?>
|
| 113 |
-
<ul>
|
| 114 |
-
<?php if ($maxitems == 0) echo '<li>' . __('Nothing to show.', 'custom-contact-forms') . '</li>';
|
| 115 |
-
else
|
| 116 |
-
foreach ( $rss_items as $item ) : ?>
|
| 117 |
-
<li
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
| 123 |
-
|
| 124 |
-
|
| 125 |
-
|
| 126 |
-
|
| 127 |
-
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
| 131 |
-
|
| 132 |
-
|
| 133 |
-
|
| 134 |
-
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
|
| 149 |
-
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
|
| 154 |
-
|
| 155 |
-
|
| 156 |
-
|
| 157 |
-
|
| 158 |
-
|
| 159 |
-
|
| 160 |
-
|
| 161 |
-
|
| 162 |
-
|
| 163 |
-
|
| 164 |
-
|
| 165 |
-
|
| 166 |
-
|
| 167 |
-
|
| 168 |
-
|
| 169 |
-
|
| 170 |
-
|
| 171 |
-
|
| 172 |
-
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
|
| 176 |
-
|
| 177 |
-
|
| 178 |
-
|
| 179 |
-
|
| 180 |
-
|
| 181 |
-
|
| 182 |
-
'
|
| 183 |
-
'
|
| 184 |
-
'
|
| 185 |
-
'
|
| 186 |
-
'
|
| 187 |
-
'
|
| 188 |
-
'
|
| 189 |
-
'
|
| 190 |
-
|
| 191 |
-
|
| 192 |
-
|
| 193 |
-
|
| 194 |
-
|
| 195 |
-
);
|
| 196 |
-
|
| 197 |
-
|
| 198 |
-
|
| 199 |
-
wp_enqueue_script('jquery');
|
| 200 |
-
|
| 201 |
-
|
| 202 |
-
wp_enqueue_script('jquery-ui-
|
| 203 |
-
wp_enqueue_script('jquery-ui-tabs');
|
| 204 |
-
wp_enqueue_script('
|
| 205 |
-
|
| 206 |
-
wp_enqueue_script('
|
| 207 |
-
|
| 208 |
-
|
| 209 |
-
|
| 210 |
-
|
| 211 |
-
|
| 212 |
-
|
| 213 |
-
|
| 214 |
-
|
| 215 |
-
|
| 216 |
-
|
| 217 |
-
|
| 218 |
-
|
| 219 |
-
|
| 220 |
-
|
| 221 |
-
|
| 222 |
-
|
| 223 |
-
|
| 224 |
-
|
| 225 |
-
|
| 226 |
-
|
| 227 |
-
|
| 228 |
-
|
| 229 |
-
|
| 230 |
-
|
| 231 |
-
|
| 232 |
-
|
| 233 |
-
|
| 234 |
-
|
| 235 |
-
|
| 236 |
-
|
| 237 |
-
|
| 238 |
-
|
| 239 |
-
|
| 240 |
-
|
| 241 |
-
|
| 242 |
-
|
| 243 |
-
|
| 244 |
-
|
| 245 |
-
|
| 246 |
-
|
| 247 |
-
|
| 248 |
-
|
| 249 |
-
|
| 250 |
-
|
| 251 |
-
|
| 252 |
-
|
| 253 |
-
|
| 254 |
-
|
| 255 |
-
|
| 256 |
-
|
| 257 |
-
|
| 258 |
-
|
| 259 |
-
|
| 260 |
-
|
| 261 |
-
|
| 262 |
-
|
| 263 |
-
|
| 264 |
-
|
| 265 |
-
|
| 266 |
-
|
| 267 |
-
|
| 268 |
-
|
| 269 |
-
|
| 270 |
-
|
| 271 |
-
|
| 272 |
-
|
| 273 |
-
|
| 274 |
-
|
| 275 |
-
|
| 276 |
-
|
| 277 |
-
parent::
|
| 278 |
-
}
|
| 279 |
-
|
| 280 |
-
|
| 281 |
-
|
| 282 |
-
|
| 283 |
-
|
| 284 |
-
|
| 285 |
-
|
| 286 |
-
|
| 287 |
-
|
| 288 |
-
|
| 289 |
-
|
| 290 |
-
|
| 291 |
-
|
| 292 |
-
|
| 293 |
-
|
| 294 |
-
|
| 295 |
-
|
| 296 |
-
|
| 297 |
-
|
| 298 |
-
|
| 299 |
-
|
| 300 |
-
|
| 301 |
-
|
| 302 |
-
|
| 303 |
-
|
| 304 |
-
|
| 305 |
-
|
| 306 |
-
|
| 307 |
-
|
| 308 |
-
|
| 309 |
-
|
| 310 |
-
|
| 311 |
-
|
| 312 |
-
|
| 313 |
-
|
| 314 |
-
|
| 315 |
-
|
| 316 |
-
|
| 317 |
-
|
| 318 |
-
|
| 319 |
-
|
| 320 |
-
|
| 321 |
-
|
| 322 |
-
|
| 323 |
-
|
| 324 |
-
|
| 325 |
-
|
| 326 |
-
|
| 327 |
-
|
| 328 |
-
|
| 329 |
-
|
| 330 |
-
|
| 331 |
-
|
| 332 |
-
|
| 333 |
-
|
| 334 |
-
|
| 335 |
-
}
|
| 336 |
-
|
| 337 |
-
|
| 338 |
-
|
| 339 |
-
|
| 340 |
-
|
| 341 |
-
|
| 342 |
-
|
| 343 |
-
|
| 344 |
-
|
| 345 |
-
|
| 346 |
-
|
| 347 |
-
|
| 348 |
-
|
| 349 |
-
|
| 350 |
-
|
| 351 |
-
|
| 352 |
-
|
| 353 |
-
|
| 354 |
-
|
| 355 |
-
<
|
| 356 |
-
|
| 357 |
-
|
| 358 |
-
|
| 359 |
-
|
| 360 |
-
|
| 361 |
-
|
| 362 |
-
|
| 363 |
-
|
| 364 |
-
|
| 365 |
-
|
| 366 |
-
|
| 367 |
-
|
| 368 |
-
|
| 369 |
-
|
| 370 |
-
<
|
| 371 |
-
|
| 372 |
-
|
| 373 |
-
|
| 374 |
-
|
| 375 |
-
|
| 376 |
-
<
|
| 377 |
-
|
| 378 |
-
|
| 379 |
-
|
| 380 |
-
|
| 381 |
-
|
| 382 |
-
|
| 383 |
-
|
| 384 |
-
|
| 385 |
-
|
| 386 |
-
|
| 387 |
-
|
| 388 |
-
|
| 389 |
-
|
| 390 |
-
|
| 391 |
-
|
| 392 |
-
|
| 393 |
-
|
| 394 |
-
|
| 395 |
-
|
| 396 |
-
|
| 397 |
-
|
| 398 |
-
|
| 399 |
-
|
| 400 |
-
|
| 401 |
-
|
| 402 |
-
|
| 403 |
-
|
| 404 |
-
|
| 405 |
-
|
| 406 |
-
|
| 407 |
-
|
| 408 |
-
|
| 409 |
-
<
|
| 410 |
-
<?php _e("
|
| 411 |
-
|
| 412 |
-
|
| 413 |
-
<
|
| 414 |
-
<?php _e("
|
| 415 |
-
|
| 416 |
-
|
| 417 |
-
|
| 418 |
-
|
| 419 |
-
|
| 420 |
-
|
| 421 |
-
|
| 422 |
-
|
| 423 |
-
|
| 424 |
-
|
| 425 |
-
|
| 426 |
-
|
| 427 |
-
<
|
| 428 |
-
|
| 429 |
-
</
|
| 430 |
-
|
| 431 |
-
<
|
| 432 |
-
(
|
| 433 |
-
|
| 434 |
-
|
| 435 |
-
|
| 436 |
-
|
| 437 |
-
|
| 438 |
-
)
|
| 439 |
-
|
| 440 |
-
<
|
| 441 |
-
|
| 442 |
-
|
| 443 |
-
|
| 444 |
-
|
| 445 |
-
|
| 446 |
-
|
| 447 |
-
|
| 448 |
-
<
|
| 449 |
-
|
| 450 |
-
|
| 451 |
-
|
| 452 |
-
|
| 453 |
-
|
| 454 |
-
|
| 455 |
-
|
| 456 |
-
|
| 457 |
-
|
| 458 |
-
|
| 459 |
-
|
| 460 |
-
|
| 461 |
-
|
| 462 |
-
<li>
|
| 463 |
-
<label for="
|
| 464 |
-
<?php _e("
|
| 465 |
-
</label>
|
| 466 |
-
<input name="object[
|
| 467 |
-
<br />
|
| 468 |
-
<?php _e("
|
| 469 |
-
</li>
|
| 470 |
-
|
| 471 |
-
<label for="
|
| 472 |
-
<?php _e("
|
| 473 |
-
</label>
|
| 474 |
-
<input name="object[
|
| 475 |
-
<br />
|
| 476 |
-
<?php _e("
|
| 477 |
-
</li>
|
| 478 |
-
|
| 479 |
-
<label for="
|
| 480 |
-
<?php _e("
|
| 481 |
-
</label>
|
| 482 |
-
<input name="object[
|
| 483 |
-
<br />
|
| 484 |
-
<?php _e("If
|
| 485 |
-
</li>
|
| 486 |
-
<li>
|
| 487 |
-
|
| 488 |
-
|
| 489 |
-
|
| 490 |
-
|
| 491 |
-
|
| 492 |
-
|
| 493 |
-
|
| 494 |
-
|
| 495 |
-
|
| 496 |
-
|
| 497 |
-
|
| 498 |
-
|
| 499 |
-
|
| 500 |
-
|
| 501 |
-
|
| 502 |
-
|
| 503 |
-
|
| 504 |
-
|
| 505 |
-
<li>
|
| 506 |
-
<
|
| 507 |
-
<?php _e("Form
|
| 508 |
-
|
| 509 |
-
|
| 510 |
-
|
| 511 |
-
|
| 512 |
-
|
| 513 |
-
|
| 514 |
-
|
| 515 |
-
|
| 516 |
-
|
| 517 |
-
|
| 518 |
-
|
| 519 |
-
|
| 520 |
-
|
| 521 |
-
|
| 522 |
-
|
| 523 |
-
|
| 524 |
-
|
| 525 |
-
|
| 526 |
-
|
| 527 |
-
|
| 528 |
-
|
| 529 |
-
|
| 530 |
-
|
| 531 |
-
|
| 532 |
-
|
| 533 |
-
|
| 534 |
-
|
| 535 |
-
|
| 536 |
-
|
| 537 |
-
|
| 538 |
-
|
| 539 |
-
|
| 540 |
-
|
| 541 |
-
|
| 542 |
-
|
| 543 |
-
|
| 544 |
-
|
| 545 |
-
|
| 546 |
-
|
| 547 |
-
|
| 548 |
-
|
| 549 |
-
|
| 550 |
-
|
| 551 |
-
|
| 552 |
-
|
| 553 |
-
|
| 554 |
-
|
| 555 |
-
|
| 556 |
-
|
| 557 |
-
|
| 558 |
-
|
| 559 |
-
|
| 560 |
-
|
| 561 |
-
|
| 562 |
-
|
| 563 |
-
|
| 564 |
-
|
| 565 |
-
|
| 566 |
-
|
| 567 |
-
|
| 568 |
-
|
| 569 |
-
|
| 570 |
-
|
| 571 |
-
|
| 572 |
-
|
| 573 |
-
|
| 574 |
-
|
| 575 |
-
|
| 576 |
-
|
| 577 |
-
|
| 578 |
-
|
| 579 |
-
|
| 580 |
-
|
| 581 |
-
|
| 582 |
-
|
| 583 |
-
|
| 584 |
-
|
| 585 |
-
|
| 586 |
-
|
| 587 |
-
|
| 588 |
-
|
| 589 |
-
|
| 590 |
-
|
| 591 |
-
|
| 592 |
-
|
| 593 |
-
|
| 594 |
-
|
| 595 |
-
|
| 596 |
-
|
| 597 |
-
|
| 598 |
-
|
| 599 |
-
<?php
|
| 600 |
-
|
| 601 |
-
|
| 602 |
-
|
| 603 |
-
|
| 604 |
-
|
| 605 |
-
|
| 606 |
-
|
| 607 |
-
|
| 608 |
-
|
| 609 |
-
|
| 610 |
-
|
| 611 |
-
|
| 612 |
-
|
| 613 |
-
|
| 614 |
-
|
| 615 |
-
|
| 616 |
-
|
| 617 |
-
|
| 618 |
-
|
| 619 |
-
|
| 620 |
-
|
| 621 |
-
|
| 622 |
-
|
| 623 |
-
|
| 624 |
-
|
| 625 |
-
<
|
| 626 |
-
|
| 627 |
-
|
| 628 |
-
|
| 629 |
-
|
| 630 |
-
|
| 631 |
-
|
| 632 |
-
|
| 633 |
-
|
| 634 |
-
|
| 635 |
-
|
| 636 |
-
|
| 637 |
-
|
| 638 |
-
|
| 639 |
-
|
| 640 |
-
|
| 641 |
-
|
| 642 |
-
|
| 643 |
-
|
| 644 |
-
|
| 645 |
-
|
| 646 |
-
|
| 647 |
-
|
| 648 |
-
|
| 649 |
-
|
| 650 |
-
|
| 651 |
-
|
| 652 |
-
|
| 653 |
-
|
| 654 |
-
|
| 655 |
-
|
| 656 |
-
|
| 657 |
-
|
| 658 |
-
|
| 659 |
-
|
| 660 |
-
|
| 661 |
-
|
| 662 |
-
|
| 663 |
-
|
| 664 |
-
|
| 665 |
-
|
| 666 |
-
|
| 667 |
-
|
| 668 |
-
|
| 669 |
-
|
| 670 |
-
|
| 671 |
-
|
| 672 |
-
|
| 673 |
-
|
| 674 |
-
|
| 675 |
-
|
| 676 |
-
|
| 677 |
-
|
| 678 |
-
|
| 679 |
-
|
| 680 |
-
|
| 681 |
-
|
| 682 |
-
|
| 683 |
-
|
| 684 |
-
|
| 685 |
-
|
| 686 |
-
|
| 687 |
-
|
| 688 |
-
|
| 689 |
-
|
| 690 |
-
|
| 691 |
-
|
| 692 |
-
|
| 693 |
-
|
| 694 |
-
|
| 695 |
-
|
| 696 |
-
|
| 697 |
-
|
| 698 |
-
|
| 699 |
-
|
| 700 |
-
|
| 701 |
-
|
| 702 |
-
|
| 703 |
-
|
| 704 |
-
|
| 705 |
-
|
| 706 |
-
|
| 707 |
-
|
| 708 |
-
|
| 709 |
-
|
| 710 |
-
|
| 711 |
-
<
|
| 712 |
-
<?php _e("
|
| 713 |
-
|
| 714 |
-
|
| 715 |
-
|
| 716 |
-
|
| 717 |
-
|
| 718 |
-
<
|
| 719 |
-
|
| 720 |
-
|
| 721 |
-
|
| 722 |
-
|
| 723 |
-
<
|
| 724 |
-
|
| 725 |
-
|
| 726 |
-
|
| 727 |
-
|
| 728 |
-
|
| 729 |
-
|
| 730 |
-
|
| 731 |
-
|
| 732 |
-
|
| 733 |
-
|
| 734 |
-
|
| 735 |
-
|
| 736 |
-
|
| 737 |
-
|
| 738 |
-
|
| 739 |
-
|
| 740 |
-
|
| 741 |
-
|
| 742 |
-
|
| 743 |
-
|
| 744 |
-
|
| 745 |
-
|
| 746 |
-
|
| 747 |
-
|
| 748 |
-
|
| 749 |
-
|
| 750 |
-
|
| 751 |
-
|
| 752 |
-
|
| 753 |
-
|
| 754 |
-
|
| 755 |
-
|
| 756 |
-
|
| 757 |
-
|
| 758 |
-
|
| 759 |
-
|
| 760 |
-
|
| 761 |
-
|
| 762 |
-
|
| 763 |
-
|
| 764 |
-
|
| 765 |
-
|
| 766 |
-
|
| 767 |
-
|
| 768 |
-
|
| 769 |
-
|
| 770 |
-
|
| 771 |
-
|
| 772 |
-
|
| 773 |
-
|
| 774 |
-
|
| 775 |
-
|
| 776 |
-
|
| 777 |
-
|
| 778 |
-
|
| 779 |
-
|
| 780 |
-
|
| 781 |
-
|
| 782 |
-
|
| 783 |
-
|
| 784 |
-
|
| 785 |
-
|
| 786 |
-
|
| 787 |
-
|
| 788 |
-
|
| 789 |
-
|
| 790 |
-
|
| 791 |
-
|
| 792 |
-
|
| 793 |
-
|
| 794 |
-
|
| 795 |
-
|
| 796 |
-
|
| 797 |
-
|
| 798 |
-
|
| 799 |
-
|
| 800 |
-
|
| 801 |
-
|
| 802 |
-
|
| 803 |
-
<?php _e(
|
| 804 |
-
|
| 805 |
-
|
| 806 |
-
|
| 807 |
-
|
| 808 |
-
|
| 809 |
-
|
| 810 |
-
|
| 811 |
-
|
| 812 |
-
|
| 813 |
-
|
| 814 |
-
|
| 815 |
-
|
| 816 |
-
|
| 817 |
-
|
| 818 |
-
|
| 819 |
-
|
| 820 |
-
|
| 821 |
-
|
| 822 |
-
|
| 823 |
-
|
| 824 |
-
|
| 825 |
-
|
| 826 |
-
|
| 827 |
-
|
| 828 |
-
|
| 829 |
-
|
| 830 |
-
|
| 831 |
-
|
| 832 |
-
|
| 833 |
-
|
| 834 |
-
|
| 835 |
-
|
| 836 |
-
|
| 837 |
-
|
| 838 |
-
|
| 839 |
-
|
| 840 |
-
|
| 841 |
-
|
| 842 |
-
|
| 843 |
-
|
| 844 |
-
|
| 845 |
-
|
| 846 |
-
|
| 847 |
-
|
| 848 |
-
|
| 849 |
-
|
| 850 |
-
|
| 851 |
-
|
| 852 |
-
|
| 853 |
-
|
| 854 |
-
|
| 855 |
-
|
| 856 |
-
<
|
| 857 |
-
<
|
| 858 |
-
<
|
| 859 |
-
<
|
| 860 |
-
|
| 861 |
-
|
| 862 |
-
|
| 863 |
-
|
| 864 |
-
|
| 865 |
-
|
| 866 |
-
|
| 867 |
-
|
| 868 |
-
|
| 869 |
-
|
| 870 |
-
|
| 871 |
-
|
| 872 |
-
|
| 873 |
-
|
| 874 |
-
|
| 875 |
-
|
| 876 |
-
|
| 877 |
-
|
| 878 |
-
<
|
| 879 |
-
|
| 880 |
-
|
| 881 |
-
|
| 882 |
-
|
| 883 |
-
|
| 884 |
-
|
| 885 |
-
|
| 886 |
-
|
| 887 |
-
|
| 888 |
-
|
| 889 |
-
|
| 890 |
-
|
| 891 |
-
|
| 892 |
-
|
| 893 |
-
|
| 894 |
-
|
| 895 |
-
|
| 896 |
-
|
| 897 |
-
|
| 898 |
-
|
| 899 |
-
|
| 900 |
-
|
| 901 |
-
|
| 902 |
-
|
| 903 |
-
|
| 904 |
-
|
| 905 |
-
|
| 906 |
-
|
| 907 |
-
|
| 908 |
-
|
| 909 |
-
|
| 910 |
-
|
| 911 |
-
|
| 912 |
-
|
| 913 |
-
|
| 914 |
-
|
| 915 |
-
|
| 916 |
-
|
| 917 |
-
|
| 918 |
-
|
| 919 |
-
|
| 920 |
-
|
| 921 |
-
|
| 922 |
-
|
| 923 |
-
|
| 924 |
-
|
| 925 |
-
|
| 926 |
-
|
| 927 |
-
|
| 928 |
-
|
| 929 |
-
|
| 930 |
-
|
| 931 |
-
|
| 932 |
-
|
| 933 |
-
|
| 934 |
-
|
| 935 |
-
|
| 936 |
-
|
| 937 |
-
|
| 938 |
-
|
| 939 |
-
|
| 940 |
-
|
| 941 |
-
|
| 942 |
-
|
| 943 |
-
|
| 944 |
-
|
| 945 |
-
|
| 946 |
-
|
| 947 |
-
|
| 948 |
-
|
| 949 |
-
|
| 950 |
-
|
| 951 |
-
|
| 952 |
-
|
| 953 |
-
|
| 954 |
-
|
| 955 |
-
|
| 956 |
-
|
| 957 |
-
|
| 958 |
-
|
| 959 |
-
|
| 960 |
-
|
| 961 |
-
|
| 962 |
-
|
| 963 |
-
|
| 964 |
-
|
| 965 |
-
|
| 966 |
-
|
| 967 |
-
|
| 968 |
-
|
| 969 |
-
|
| 970 |
-
|
| 971 |
-
|
| 972 |
-
|
| 973 |
-
|
| 974 |
-
|
| 975 |
-
|
| 976 |
-
|
| 977 |
-
|
| 978 |
-
|
| 979 |
-
|
| 980 |
-
|
| 981 |
-
|
| 982 |
-
|
| 983 |
-
|
| 984 |
-
|
| 985 |
-
|
| 986 |
-
|
| 987 |
-
|
| 988 |
-
|
| 989 |
-
|
| 990 |
-
|
| 991 |
-
|
| 992 |
-
<
|
| 993 |
-
|
| 994 |
-
|
| 995 |
-
|
| 996 |
-
|
| 997 |
-
|
| 998 |
-
|
| 999 |
-
<th scope="col" class="manage-column
|
| 1000 |
-
<th scope="col" class="manage-column
|
| 1001 |
-
<th scope="col" class="manage-column
|
| 1002 |
-
<th scope="col" class="manage-column
|
| 1003 |
-
|
| 1004 |
-
|
| 1005 |
-
|
| 1006 |
-
|
| 1007 |
-
|
| 1008 |
-
|
| 1009 |
-
|
| 1010 |
-
|
| 1011 |
-
$
|
| 1012 |
-
|
| 1013 |
-
|
| 1014 |
-
|
| 1015 |
-
|
| 1016 |
-
|
| 1017 |
-
|
| 1018 |
-
|
| 1019 |
-
|
| 1020 |
-
<td
|
| 1021 |
-
<td
|
| 1022 |
-
|
| 1023 |
-
|
| 1024 |
-
|
| 1025 |
-
|
| 1026 |
-
|
| 1027 |
-
|
| 1028 |
-
|
| 1029 |
-
|
| 1030 |
-
|
| 1031 |
-
|
| 1032 |
-
|
| 1033 |
-
|
| 1034 |
-
|
| 1035 |
-
|
| 1036 |
-
|
| 1037 |
-
|
| 1038 |
-
|
| 1039 |
-
|
| 1040 |
-
|
| 1041 |
-
|
| 1042 |
-
|
| 1043 |
-
|
| 1044 |
-
|
| 1045 |
-
|
| 1046 |
-
|
| 1047 |
-
|
| 1048 |
-
|
| 1049 |
-
|
| 1050 |
-
|
| 1051 |
-
|
| 1052 |
-
|
| 1053 |
-
|
| 1054 |
-
|
| 1055 |
-
|
| 1056 |
-
|
| 1057 |
-
|
| 1058 |
-
|
| 1059 |
-
|
| 1060 |
-
|
| 1061 |
-
|
| 1062 |
-
|
| 1063 |
-
|
| 1064 |
-
|
| 1065 |
-
|
| 1066 |
-
|
| 1067 |
-
|
| 1068 |
-
|
| 1069 |
-
|
| 1070 |
-
|
| 1071 |
-
|
| 1072 |
-
|
| 1073 |
-
|
| 1074 |
-
|
| 1075 |
-
|
| 1076 |
-
|
| 1077 |
-
|
| 1078 |
-
|
| 1079 |
-
|
| 1080 |
-
|
| 1081 |
-
|
| 1082 |
-
|
| 1083 |
-
|
| 1084 |
-
|
| 1085 |
-
|
| 1086 |
-
|
| 1087 |
-
|
| 1088 |
-
|
| 1089 |
-
|
| 1090 |
-
|
| 1091 |
-
|
| 1092 |
-
|
| 1093 |
-
|
| 1094 |
-
|
| 1095 |
-
|
| 1096 |
-
|
| 1097 |
-
|
| 1098 |
-
|
| 1099 |
-
|
| 1100 |
-
|
| 1101 |
-
|
| 1102 |
-
|
| 1103 |
-
|
| 1104 |
-
|
| 1105 |
-
|
| 1106 |
-
|
| 1107 |
-
|
| 1108 |
-
|
| 1109 |
-
|
| 1110 |
-
|
| 1111 |
-
|
| 1112 |
-
|
| 1113 |
-
|
| 1114 |
-
|
| 1115 |
-
|
| 1116 |
-
|
| 1117 |
-
|
| 1118 |
-
|
| 1119 |
-
|
| 1120 |
-
|
| 1121 |
-
|
| 1122 |
-
|
| 1123 |
-
|
| 1124 |
-
|
| 1125 |
-
|
| 1126 |
-
|
| 1127 |
-
|
| 1128 |
-
|
| 1129 |
-
|
| 1130 |
-
|
| 1131 |
-
|
| 1132 |
-
|
| 1133 |
-
|
| 1134 |
-
|
| 1135 |
-
|
| 1136 |
-
|
| 1137 |
-
|
| 1138 |
-
|
| 1139 |
-
|
| 1140 |
-
|
| 1141 |
-
|
| 1142 |
-
|
| 1143 |
-
|
| 1144 |
-
|
| 1145 |
-
|
| 1146 |
-
|
| 1147 |
-
|
| 1148 |
-
|
| 1149 |
-
|
| 1150 |
-
|
| 1151 |
-
|
| 1152 |
-
|
| 1153 |
-
|
| 1154 |
-
|
| 1155 |
-
|
| 1156 |
-
|
| 1157 |
-
|
| 1158 |
-
|
| 1159 |
-
|
| 1160 |
-
|
| 1161 |
-
|
| 1162 |
-
|
| 1163 |
-
|
| 1164 |
-
|
| 1165 |
-
|
| 1166 |
-
|
| 1167 |
-
|
| 1168 |
-
|
| 1169 |
-
|
| 1170 |
-
|
| 1171 |
-
|
| 1172 |
-
|
| 1173 |
-
<
|
| 1174 |
-
|
| 1175 |
-
|
| 1176 |
-
|
| 1177 |
-
|
| 1178 |
-
|
| 1179 |
-
|
| 1180 |
-
|
| 1181 |
-
|
| 1182 |
-
|
| 1183 |
-
|
| 1184 |
-
|
| 1185 |
-
|
| 1186 |
-
|
| 1187 |
-
|
| 1188 |
-
|
| 1189 |
-
|
| 1190 |
-
|
| 1191 |
-
|
| 1192 |
-
|
| 1193 |
-
|
| 1194 |
-
|
| 1195 |
-
|
| 1196 |
-
|
| 1197 |
-
|
| 1198 |
-
|
| 1199 |
-
|
| 1200 |
-
|
| 1201 |
-
|
| 1202 |
-
|
| 1203 |
-
|
| 1204 |
-
|
| 1205 |
-
|
| 1206 |
-
|
| 1207 |
-
|
| 1208 |
-
|
| 1209 |
-
|
| 1210 |
-
|
| 1211 |
-
|
| 1212 |
-
|
| 1213 |
-
|
| 1214 |
-
|
| 1215 |
-
|
| 1216 |
-
|
| 1217 |
-
|
| 1218 |
-
|
| 1219 |
-
|
| 1220 |
-
|
| 1221 |
-
|
| 1222 |
-
|
| 1223 |
-
|
| 1224 |
-
|
| 1225 |
-
|
| 1226 |
-
|
| 1227 |
-
|
| 1228 |
-
|
| 1229 |
-
|
| 1230 |
-
|
| 1231 |
-
|
| 1232 |
-
|
| 1233 |
-
|
| 1234 |
-
|
| 1235 |
-
|
| 1236 |
-
|
| 1237 |
-
|
| 1238 |
-
|
| 1239 |
-
|
| 1240 |
-
|
| 1241 |
-
|
| 1242 |
-
|
| 1243 |
-
|
| 1244 |
-
|
| 1245 |
-
|
| 1246 |
-
|
| 1247 |
-
|
| 1248 |
-
|
| 1249 |
-
|
| 1250 |
-
|
| 1251 |
-
|
| 1252 |
-
|
| 1253 |
-
|
| 1254 |
-
|
| 1255 |
-
|
| 1256 |
-
|
| 1257 |
-
|
| 1258 |
-
|
| 1259 |
-
|
| 1260 |
-
|
| 1261 |
-
|
| 1262 |
-
|
| 1263 |
-
|
| 1264 |
-
|
| 1265 |
-
|
| 1266 |
-
|
| 1267 |
-
|
| 1268 |
-
|
| 1269 |
-
|
| 1270 |
-
|
| 1271 |
-
|
| 1272 |
-
|
| 1273 |
-
|
| 1274 |
-
|
| 1275 |
-
|
| 1276 |
-
|
| 1277 |
-
|
| 1278 |
-
|
| 1279 |
-
|
| 1280 |
-
|
| 1281 |
-
|
| 1282 |
-
|
| 1283 |
-
|
| 1284 |
-
|
| 1285 |
-
|
| 1286 |
-
|
| 1287 |
-
|
| 1288 |
-
|
| 1289 |
-
|
| 1290 |
-
|
| 1291 |
-
|
| 1292 |
-
|
| 1293 |
-
|
| 1294 |
-
|
| 1295 |
-
|
| 1296 |
-
|
| 1297 |
-
|
| 1298 |
-
|
| 1299 |
-
|
| 1300 |
-
|
| 1301 |
-
|
| 1302 |
-
|
| 1303 |
-
|
| 1304 |
-
|
| 1305 |
-
|
| 1306 |
-
|
| 1307 |
-
|
| 1308 |
-
|
| 1309 |
-
|
| 1310 |
-
|
| 1311 |
-
|
| 1312 |
-
|
| 1313 |
-
|
| 1314 |
-
|
| 1315 |
-
|
| 1316 |
-
|
| 1317 |
-
|
| 1318 |
-
|
| 1319 |
-
<
|
| 1320 |
-
<?php _e("
|
| 1321 |
-
|
| 1322 |
-
|
| 1323 |
-
|
| 1324 |
-
|
| 1325 |
-
|
| 1326 |
-
<
|
| 1327 |
-
<?php _e("
|
| 1328 |
-
|
| 1329 |
-
|
| 1330 |
-
|
| 1331 |
-
|
| 1332 |
-
|
| 1333 |
-
|
| 1334 |
-
|
| 1335 |
-
|
| 1336 |
-
|
| 1337 |
-
<
|
| 1338 |
-
<?php _e("
|
| 1339 |
-
|
| 1340 |
-
|
| 1341 |
-
|
| 1342 |
-
|
| 1343 |
-
|
| 1344 |
-
<
|
| 1345 |
-
<?php _e("
|
| 1346 |
-
|
| 1347 |
-
|
| 1348 |
-
|
| 1349 |
-
|
| 1350 |
-
|
| 1351 |
-
<
|
| 1352 |
-
<?php _e("
|
| 1353 |
-
|
| 1354 |
-
|
| 1355 |
-
|
| 1356 |
-
|
| 1357 |
-
|
| 1358 |
-
<
|
| 1359 |
-
<?php _e("
|
| 1360 |
-
|
| 1361 |
-
|
| 1362 |
-
|
| 1363 |
-
|
| 1364 |
-
|
| 1365 |
-
|
| 1366 |
-
|
| 1367 |
-
|
| 1368 |
-
|
| 1369 |
-
|
| 1370 |
-
|
| 1371 |
-
|
| 1372 |
-
|
| 1373 |
-
|
| 1374 |
-
|
| 1375 |
-
|
| 1376 |
-
|
| 1377 |
-
|
| 1378 |
-
|
| 1379 |
-
|
| 1380 |
-
|
| 1381 |
-
|
| 1382 |
-
|
| 1383 |
-
|
| 1384 |
-
|
| 1385 |
-
|
| 1386 |
-
|
| 1387 |
-
|
| 1388 |
-
|
| 1389 |
-
|
| 1390 |
-
|
| 1391 |
-
|
| 1392 |
-
|
| 1393 |
-
|
| 1394 |
-
|
| 1395 |
-
|
| 1396 |
-
|
| 1397 |
-
|
| 1398 |
-
|
| 1399 |
-
|
| 1400 |
-
|
| 1401 |
-
|
| 1402 |
-
|
| 1403 |
-
|
| 1404 |
-
|
| 1405 |
-
|
| 1406 |
-
|
| 1407 |
-
|
| 1408 |
-
|
| 1409 |
-
|
| 1410 |
-
|
| 1411 |
-
|
| 1412 |
-
|
| 1413 |
-
|
| 1414 |
-
|
| 1415 |
-
|
| 1416 |
-
|
| 1417 |
-
|
| 1418 |
-
|
| 1419 |
-
|
| 1420 |
-
|
| 1421 |
-
|
| 1422 |
-
|
| 1423 |
-
|
| 1424 |
-
|
| 1425 |
-
|
| 1426 |
-
|
| 1427 |
-
|
| 1428 |
-
|
| 1429 |
-
|
| 1430 |
-
|
| 1431 |
-
|
| 1432 |
-
|
| 1433 |
-
|
| 1434 |
-
|
| 1435 |
-
|
| 1436 |
-
|
| 1437 |
-
|
| 1438 |
-
|
| 1439 |
-
|
| 1440 |
-
|
| 1441 |
-
|
| 1442 |
-
|
| 1443 |
-
|
| 1444 |
-
|
| 1445 |
-
|
| 1446 |
-
|
| 1447 |
-
|
| 1448 |
-
<
|
| 1449 |
-
<?php _e("
|
| 1450 |
-
|
| 1451 |
-
|
| 1452 |
-
|
| 1453 |
-
|
| 1454 |
-
|
| 1455 |
-
<
|
| 1456 |
-
<?php _e("
|
| 1457 |
-
|
| 1458 |
-
|
| 1459 |
-
|
| 1460 |
-
|
| 1461 |
-
|
| 1462 |
-
<input
|
| 1463 |
-
|
| 1464 |
-
</li>
|
| 1465 |
-
|
| 1466 |
-
|
| 1467 |
-
|
| 1468 |
-
|
| 1469 |
-
|
| 1470 |
-
|
| 1471 |
-
|
| 1472 |
-
|
| 1473 |
-
|
| 1474 |
-
|
| 1475 |
-
|
| 1476 |
-
|
| 1477 |
-
|
| 1478 |
-
|
| 1479 |
-
|
| 1480 |
-
|
| 1481 |
-
|
| 1482 |
-
|
| 1483 |
-
|
| 1484 |
-
|
| 1485 |
-
|
| 1486 |
-
|
| 1487 |
-
|
| 1488 |
-
|
| 1489 |
-
|
| 1490 |
-
|
| 1491 |
-
|
| 1492 |
-
|
| 1493 |
-
|
| 1494 |
-
|
| 1495 |
-
|
| 1496 |
-
<
|
| 1497 |
-
|
| 1498 |
-
|
| 1499 |
-
|
| 1500 |
-
|
| 1501 |
-
|
| 1502 |
-
|
| 1503 |
-
|
| 1504 |
-
|
| 1505 |
-
|
| 1506 |
-
|
| 1507 |
-
|
| 1508 |
-
|
| 1509 |
-
|
| 1510 |
-
|
| 1511 |
-
<
|
| 1512 |
-
|
| 1513 |
-
|
| 1514 |
-
|
| 1515 |
-
|
| 1516 |
-
|
| 1517 |
-
|
| 1518 |
-
|
| 1519 |
-
|
| 1520 |
-
|
| 1521 |
-
|
| 1522 |
-
|
| 1523 |
-
|
| 1524 |
-
|
| 1525 |
-
|
| 1526 |
-
|
| 1527 |
-
|
| 1528 |
-
|
| 1529 |
-
|
| 1530 |
-
|
| 1531 |
-
|
| 1532 |
-
|
| 1533 |
-
|
| 1534 |
-
|
| 1535 |
-
|
| 1536 |
-
|
| 1537 |
-
|
| 1538 |
-
|
| 1539 |
-
|
| 1540 |
-
|
| 1541 |
-
|
| 1542 |
-
|
| 1543 |
-
|
| 1544 |
-
<?php
|
| 1545 |
-
|
| 1546 |
-
<
|
| 1547 |
-
|
| 1548 |
-
|
| 1549 |
-
<?php
|
| 1550 |
-
|
| 1551 |
-
<
|
| 1552 |
-
|
| 1553 |
-
<
|
| 1554 |
-
<?php _e("
|
| 1555 |
-
|
| 1556 |
-
<?php
|
| 1557 |
-
|
| 1558 |
-
<
|
| 1559 |
-
|
| 1560 |
-
|
| 1561 |
-
|
| 1562 |
-
|
| 1563 |
-
|
| 1564 |
-
<
|
| 1565 |
-
<
|
| 1566 |
-
|
| 1567 |
-
<?php _e("
|
| 1568 |
-
|
| 1569 |
-
|
| 1570 |
-
<
|
| 1571 |
-
|
| 1572 |
-
|
| 1573 |
-
|
| 1574 |
-
|
| 1575 |
-
<
|
| 1576 |
-
<
|
| 1577 |
-
|
| 1578 |
-
|
| 1579 |
-
|
| 1580 |
-
<
|
| 1581 |
-
<
|
| 1582 |
-
|
| 1583 |
-
|
| 1584 |
-
|
| 1585 |
-
<
|
| 1586 |
-
<
|
| 1587 |
-
|
| 1588 |
-
|
| 1589 |
-
|
| 1590 |
-
|
| 1591 |
-
<
|
| 1592 |
-
<label>
|
| 1593 |
-
<?php _e("
|
| 1594 |
-
</label>
|
| 1595 |
-
<input type="text"
|
| 1596 |
-
|
| 1597 |
-
|
| 1598 |
-
<?php _e("
|
| 1599 |
-
</label>
|
| 1600 |
-
<input type="text" maxlength="20" value="<?php echo $style->
|
| 1601 |
-
<br />
|
| 1602 |
-
<label>
|
| 1603 |
-
<?php _e("
|
| 1604 |
-
|
| 1605 |
-
|
| 1606 |
-
|
| 1607 |
-
<
|
| 1608 |
-
|
| 1609 |
-
|
| 1610 |
-
|
| 1611 |
-
|
| 1612 |
-
|
| 1613 |
-
<?php
|
| 1614 |
-
|
| 1615 |
-
<
|
| 1616 |
-
|
| 1617 |
-
|
| 1618 |
-
<?php
|
| 1619 |
-
|
| 1620 |
-
<
|
| 1621 |
-
|
| 1622 |
-
|
| 1623 |
-
<?php
|
| 1624 |
-
<br />
|
| 1625 |
-
|
| 1626 |
-
|
| 1627 |
-
|
| 1628 |
-
<
|
| 1629 |
-
<
|
| 1630 |
-
|
| 1631 |
-
|
| 1632 |
-
|
| 1633 |
-
|
| 1634 |
-
<
|
| 1635 |
-
|
| 1636 |
-
|
| 1637 |
-
|
| 1638 |
-
|
| 1639 |
-
|
| 1640 |
-
<
|
| 1641 |
-
<label>
|
| 1642 |
-
<?php _e("
|
| 1643 |
-
</label>
|
| 1644 |
-
<input
|
| 1645 |
-
|
| 1646 |
-
|
| 1647 |
-
<?php _e("
|
| 1648 |
-
</label>
|
| 1649 |
-
<input
|
| 1650 |
-
<br />
|
| 1651 |
-
<label>
|
| 1652 |
-
<?php _e("
|
| 1653 |
-
</label>
|
| 1654 |
-
<input
|
| 1655 |
-
<br />
|
| 1656 |
-
<label>
|
| 1657 |
-
<?php _e("
|
| 1658 |
-
</label>
|
| 1659 |
-
<input type="text" maxlength="20" value="<?php echo $style->
|
| 1660 |
-
<br />
|
| 1661 |
-
<label>
|
| 1662 |
-
<?php _e("
|
| 1663 |
-
|
| 1664 |
-
<?php
|
| 1665 |
-
|
| 1666 |
-
<
|
| 1667 |
-
|
| 1668 |
-
|
| 1669 |
-
<?php
|
| 1670 |
-
|
| 1671 |
-
<
|
| 1672 |
-
|
| 1673 |
-
|
| 1674 |
-
<?php _e("
|
| 1675 |
-
</label>
|
| 1676 |
-
<
|
| 1677 |
-
|
| 1678 |
-
|
| 1679 |
-
|
| 1680 |
-
<
|
| 1681 |
-
<?php _e("
|
| 1682 |
-
</label>
|
| 1683 |
-
<input type="text" maxlength="20" value="<?php echo $style->
|
| 1684 |
-
|
| 1685 |
-
|
| 1686 |
-
<?php _e("
|
| 1687 |
-
</label>
|
| 1688 |
-
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->
|
| 1689 |
-
<br />
|
| 1690 |
-
<label>
|
| 1691 |
-
<?php _e("
|
| 1692 |
-
</label>
|
| 1693 |
-
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->
|
| 1694 |
-
<br />
|
| 1695 |
-
<label>
|
| 1696 |
-
<?php _e("Field
|
| 1697 |
-
</label>
|
| 1698 |
-
<
|
| 1699 |
-
|
| 1700 |
-
|
| 1701 |
-
|
| 1702 |
-
|
| 1703 |
-
<?php
|
| 1704 |
-
<br />
|
| 1705 |
-
|
| 1706 |
-
|
| 1707 |
-
|
| 1708 |
-
<
|
| 1709 |
-
<
|
| 1710 |
-
|
| 1711 |
-
|
| 1712 |
-
<
|
| 1713 |
-
|
| 1714 |
-
|
| 1715 |
-
<input class="
|
| 1716 |
-
|
| 1717 |
-
|
| 1718 |
-
|
| 1719 |
-
|
| 1720 |
-
|
| 1721 |
-
|
| 1722 |
-
|
| 1723 |
-
|
| 1724 |
-
|
| 1725 |
-
|
| 1726 |
-
|
| 1727 |
-
|
| 1728 |
-
|
| 1729 |
-
|
| 1730 |
-
|
| 1731 |
-
|
| 1732 |
-
|
| 1733 |
-
|
| 1734 |
-
|
| 1735 |
-
|
| 1736 |
-
|
| 1737 |
-
|
| 1738 |
-
|
| 1739 |
-
|
| 1740 |
-
|
| 1741 |
-
|
| 1742 |
-
|
| 1743 |
-
|
| 1744 |
-
|
| 1745 |
-
|
| 1746 |
-
|
| 1747 |
-
|
| 1748 |
-
|
| 1749 |
-
|
| 1750 |
-
|
| 1751 |
-
|
| 1752 |
-
|
| 1753 |
-
|
| 1754 |
-
|
| 1755 |
-
|
| 1756 |
-
<?php
|
| 1757 |
-
|
| 1758 |
-
<
|
| 1759 |
-
|
| 1760 |
-
|
| 1761 |
-
<
|
| 1762 |
-
|
| 1763 |
-
|
| 1764 |
-
<input
|
| 1765 |
-
</
|
| 1766 |
-
|
| 1767 |
-
|
| 1768 |
-
|
| 1769 |
-
|
| 1770 |
-
|
| 1771 |
-
|
| 1772 |
-
|
| 1773 |
-
|
| 1774 |
-
|
| 1775 |
-
|
| 1776 |
-
|
| 1777 |
-
|
| 1778 |
-
|
| 1779 |
-
|
| 1780 |
-
|
| 1781 |
-
|
| 1782 |
-
|
| 1783 |
-
|
| 1784 |
-
|
| 1785 |
-
|
| 1786 |
-
|
| 1787 |
-
|
| 1788 |
-
|
| 1789 |
-
|
| 1790 |
-
|
| 1791 |
-
|
| 1792 |
-
|
| 1793 |
-
|
| 1794 |
-
|
| 1795 |
-
|
| 1796 |
-
|
| 1797 |
-
|
| 1798 |
-
|
| 1799 |
-
|
| 1800 |
-
|
| 1801 |
-
|
| 1802 |
-
|
| 1803 |
-
|
| 1804 |
-
|
| 1805 |
-
|
| 1806 |
-
|
| 1807 |
-
|
| 1808 |
-
|
| 1809 |
-
|
| 1810 |
-
|
| 1811 |
-
|
| 1812 |
-
|
| 1813 |
-
|
| 1814 |
-
|
| 1815 |
-
|
| 1816 |
-
|
| 1817 |
-
|
| 1818 |
-
|
| 1819 |
-
|
| 1820 |
-
|
| 1821 |
-
|
| 1822 |
-
|
| 1823 |
-
|
| 1824 |
-
|
| 1825 |
-
|
| 1826 |
-
|
| 1827 |
-
|
| 1828 |
-
|
| 1829 |
-
|
| 1830 |
-
|
| 1831 |
-
|
| 1832 |
-
|
| 1833 |
-
|
| 1834 |
-
|
| 1835 |
-
|
| 1836 |
-
|
| 1837 |
-
|
| 1838 |
-
|
| 1839 |
-
|
| 1840 |
-
|
| 1841 |
-
|
| 1842 |
-
|
| 1843 |
-
|
| 1844 |
-
|
| 1845 |
-
|
| 1846 |
-
|
| 1847 |
-
|
| 1848 |
-
|
| 1849 |
-
|
| 1850 |
-
|
| 1851 |
-
|
| 1852 |
-
|
| 1853 |
-
|
| 1854 |
-
|
| 1855 |
-
|
| 1856 |
-
|
| 1857 |
-
|
| 1858 |
-
|
| 1859 |
-
|
| 1860 |
-
|
| 1861 |
-
|
| 1862 |
-
|
| 1863 |
-
|
| 1864 |
-
|
| 1865 |
-
|
| 1866 |
-
|
| 1867 |
-
|
| 1868 |
-
|
| 1869 |
-
|
| 1870 |
-
|
| 1871 |
-
<
|
| 1872 |
-
|
| 1873 |
-
|
| 1874 |
-
|
| 1875 |
-
|
| 1876 |
-
|
| 1877 |
-
|
| 1878 |
-
|
| 1879 |
-
|
| 1880 |
-
|
| 1881 |
-
|
| 1882 |
-
|
| 1883 |
-
|
| 1884 |
-
|
| 1885 |
-
|
| 1886 |
-
|
| 1887 |
-
|
| 1888 |
-
|
| 1889 |
-
|
| 1890 |
-
|
| 1891 |
-
|
| 1892 |
-
|
| 1893 |
-
|
| 1894 |
-
|
| 1895 |
-
|
| 1896 |
-
|
| 1897 |
-
|
| 1898 |
-
<?php
|
| 1899 |
-
|
| 1900 |
-
|
| 1901 |
-
|
| 1902 |
-
|
| 1903 |
-
|
| 1904 |
-
|
| 1905 |
-
|
| 1906 |
-
|
| 1907 |
-
|
| 1908 |
-
|
| 1909 |
-
|
| 1910 |
-
|
| 1911 |
-
|
| 1912 |
-
|
| 1913 |
-
|
| 1914 |
-
|
| 1915 |
-
|
| 1916 |
-
|
| 1917 |
-
|
| 1918 |
-
|
| 1919 |
-
|
| 1920 |
-
|
| 1921 |
-
|
| 1922 |
-
|
| 1923 |
-
|
| 1924 |
-
|
| 1925 |
-
}
|
| 1926 |
-
|
| 1927 |
-
|
| 1928 |
-
|
| 1929 |
-
|
| 1930 |
-
|
| 1931 |
-
|
| 1932 |
-
|
| 1933 |
-
|
| 1934 |
-
|
| 1935 |
-
|
| 1936 |
-
|
| 1937 |
-
|
| 1938 |
-
|
| 1939 |
-
|
| 1940 |
-
|
| 1941 |
-
|
| 1942 |
-
|
| 1943 |
-
|
| 1944 |
-
|
| 1945 |
-
|
| 1946 |
-
|
| 1947 |
-
|
| 1948 |
-
|
| 1949 |
-
|
| 1950 |
-
|
| 1951 |
-
|
| 1952 |
-
|
| 1953 |
-
|
| 1954 |
-
|
| 1955 |
-
|
| 1956 |
-
|
| 1957 |
-
|
| 1958 |
-
|
| 1959 |
-
|
| 1960 |
-
|
| 1961 |
-
|
| 1962 |
-
|
| 1963 |
-
|
| 1964 |
-
|
| 1965 |
-
|
| 1966 |
-
|
| 1967 |
-
|
| 1968 |
-
|
| 1969 |
-
|
| 1970 |
-
|
| 1971 |
-
|
| 1972 |
-
|
| 1973 |
-
|
| 1974 |
-
|
| 1975 |
-
|
| 1976 |
-
|
| 1977 |
-
|
| 1978 |
-
|
| 1979 |
-
|
| 1980 |
-
|
| 1981 |
-
|
| 1982 |
-
$
|
| 1983 |
-
|
| 1984 |
-
|
| 1985 |
-
|
| 1986 |
-
|
| 1987 |
-
|
| 1988 |
-
|
| 1989 |
-
|
| 1990 |
-
|
| 1991 |
-
|
| 1992 |
-
|
| 1993 |
-
|
| 1994 |
-
|
| 1995 |
-
|
| 1996 |
-
|
| 1997 |
-
|
| 1998 |
-
|
| 1999 |
-
|
| 2000 |
-
|
| 2001 |
-
|
| 2002 |
-
|
| 2003 |
-
|
| 2004 |
-
|
| 2005 |
-
|
| 2006 |
-
|
| 2007 |
-
|
| 2008 |
-
}
|
| 2009 |
-
|
| 2010 |
-
|
| 2011 |
-
|
| 2012 |
-
|
| 2013 |
-
|
| 2014 |
-
|
| 2015 |
-
|
| 2016 |
-
|
| 2017 |
-
<
|
| 2018 |
-
|
| 2019 |
-
|
| 2020 |
-
|
| 2021 |
-
|
| 2022 |
-
|
| 2023 |
-
|
| 2024 |
-
|
| 2025 |
-
|
| 2026 |
-
|
| 2027 |
-
|
| 2028 |
-
|
| 2029 |
-
<
|
| 2030 |
-
|
| 2031 |
-
|
| 2032 |
-
|
| 2033 |
-
|
| 2034 |
-
|
| 2035 |
-
|
| 2036 |
-
|
| 2037 |
-
|
| 2038 |
-
</div>
|
| 2039 |
-
<?php
|
| 2040 |
-
|
| 2041 |
-
|
| 2042 |
-
|
| 2043 |
-
|
| 2044 |
-
|
| 2045 |
-
|
| 2046 |
-
|
| 2047 |
-
|
| 2048 |
-
|
| 2049 |
-
|
| 2050 |
-
|
| 2051 |
-
|
| 2052 |
-
|
| 2053 |
-
|
| 2054 |
-
|
| 2055 |
-
|
| 2056 |
-
|
| 2057 |
-
|
| 2058 |
-
|
| 2059 |
-
|
| 2060 |
-
|
| 2061 |
-
|
| 2062 |
-
|
| 2063 |
-
|
| 2064 |
-
|
| 2065 |
-
|
| 2066 |
-
|
| 2067 |
-
|
| 2068 |
-
|
| 2069 |
-
|
| 2070 |
-
|
| 2071 |
-
|
| 2072 |
-
|
| 2073 |
-
|
| 2074 |
-
|
| 2075 |
-
|
| 2076 |
-
|
| 2077 |
-
|
| 2078 |
-
|
| 2079 |
-
|
| 2080 |
-
|
| 2081 |
-
|
| 2082 |
-
|
| 2083 |
-
|
| 2084 |
-
|
| 2085 |
-
|
| 2086 |
-
|
| 2087 |
-
|
| 2088 |
-
|
| 2089 |
-
|
| 2090 |
-
|
| 2091 |
-
|
| 2092 |
-
|
| 2093 |
-
|
| 2094 |
-
|
| 2095 |
-
|
| 2096 |
-
|
| 2097 |
-
|
| 2098 |
-
|
| 2099 |
-
|
| 2100 |
-
|
| 2101 |
-
|
| 2102 |
-
|
| 2103 |
-
|
| 2104 |
-
|
| 2105 |
-
|
| 2106 |
-
|
| 2107 |
-
|
| 2108 |
-
|
| 2109 |
-
|
| 2110 |
-
|
| 2111 |
-
<
|
| 2112 |
-
|
| 2113 |
-
|
| 2114 |
-
|
| 2115 |
-
|
| 2116 |
-
|
| 2117 |
-
|
| 2118 |
-
|
| 2119 |
-
|
| 2120 |
-
|
| 2121 |
-
|
| 2122 |
-
|
| 2123 |
-
|
| 2124 |
-
|
| 2125 |
-
|
| 2126 |
-
|
| 2127 |
-
|
| 2128 |
-
|
| 2129 |
-
|
| 2130 |
-
|
| 2131 |
-
|
| 2132 |
-
|
| 2133 |
-
<?php _e("
|
| 2134 |
-
|
| 2135 |
-
|
| 2136 |
-
|
| 2137 |
-
|
| 2138 |
-
|
| 2139 |
-
|
| 2140 |
-
|
| 2141 |
-
|
| 2142 |
-
|
| 2143 |
-
<?php
|
| 2144 |
-
|
| 2145 |
-
|
| 2146 |
-
|
| 2147 |
-
|
| 2148 |
-
|
| 2149 |
-
|
| 2150 |
-
|
| 2151 |
-
|
| 2152 |
-
|
| 2153 |
-
|
| 2154 |
-
|
| 2155 |
-
|
| 2156 |
-
|
| 2157 |
-
|
| 2158 |
-
|
| 2159 |
-
|
| 2160 |
-
|
| 2161 |
-
|
| 2162 |
-
|
| 2163 |
-
|
| 2164 |
-
|
| 2165 |
-
|
| 2166 |
-
|
| 2167 |
-
|
| 2168 |
-
|
| 2169 |
-
|
| 2170 |
-
|
| 2171 |
-
|
| 2172 |
-
|
| 2173 |
-
|
| 2174 |
-
|
| 2175 |
-
|
| 2176 |
-
|
| 2177 |
-
|
| 2178 |
-
|
| 2179 |
-
|
| 2180 |
-
|
| 2181 |
-
|
| 2182 |
-
|
| 2183 |
-
|
| 2184 |
-
|
| 2185 |
-
|
| 2186 |
-
|
| 2187 |
-
|
| 2188 |
-
|
| 2189 |
-
|
| 2190 |
-
|
| 2191 |
-
<?php _e("
|
| 2192 |
-
|
| 2193 |
-
|
| 2194 |
-
|
| 2195 |
-
|
| 2196 |
-
|
| 2197 |
-
|
| 2198 |
-
|
| 2199 |
-
|
| 2200 |
-
|
| 2201 |
-
|
| 2202 |
-
|
| 2203 |
-
|
| 2204 |
-
|
| 2205 |
-
|
| 2206 |
-
|
| 2207 |
-
|
| 2208 |
-
|
| 2209 |
-
<?php _e("
|
| 2210 |
-
|
| 2211 |
-
|
| 2212 |
-
|
| 2213 |
-
|
| 2214 |
-
|
| 2215 |
-
|
| 2216 |
-
|
| 2217 |
-
</option>
|
| 2218 |
-
</select>
|
| 2219 |
-
</li>
|
| 2220 |
-
<li class="descrip">
|
| 2221 |
-
<?php _e("
|
| 2222 |
-
</li>
|
| 2223 |
-
|
| 2224 |
-
<label for="
|
| 2225 |
-
<?php _e("
|
| 2226 |
-
</label>
|
| 2227 |
-
<select name="settings[
|
| 2228 |
-
<option value="1">
|
| 2229 |
-
<?php _e("
|
| 2230 |
-
</option>
|
| 2231 |
-
<option <?php if ($admin_options['
|
| 2232 |
-
<?php _e("
|
| 2233 |
-
</option>
|
| 2234 |
-
|
| 2235 |
-
|
| 2236 |
-
|
| 2237 |
-
|
| 2238 |
-
|
| 2239 |
-
|
| 2240 |
-
|
| 2241 |
-
|
| 2242 |
-
|
| 2243 |
-
|
| 2244 |
-
|
| 2245 |
-
|
| 2246 |
-
|
| 2247 |
-
|
| 2248 |
-
|
| 2249 |
-
|
| 2250 |
-
|
| 2251 |
-
|
| 2252 |
-
|
| 2253 |
-
|
| 2254 |
-
|
| 2255 |
-
|
| 2256 |
-
|
| 2257 |
-
|
| 2258 |
-
|
| 2259 |
-
|
| 2260 |
-
|
| 2261 |
-
|
| 2262 |
-
|
| 2263 |
-
|
| 2264 |
-
</li>
|
| 2265 |
-
<li class="descrip">
|
| 2266 |
-
<?php _e("
|
| 2267 |
-
</li>
|
| 2268 |
-
<li>
|
| 2269 |
-
<label for="
|
| 2270 |
-
<?php _e("
|
| 2271 |
-
</label>
|
| 2272 |
-
<
|
| 2273 |
-
|
| 2274 |
-
|
| 2275 |
-
|
| 2276 |
-
|
| 2277 |
-
|
| 2278 |
-
|
| 2279 |
-
|
| 2280 |
-
|
| 2281 |
-
|
| 2282 |
-
|
| 2283 |
-
|
| 2284 |
-
|
| 2285 |
-
|
| 2286 |
-
|
| 2287 |
-
|
| 2288 |
-
|
| 2289 |
-
|
| 2290 |
-
|
| 2291 |
-
|
| 2292 |
-
|
| 2293 |
-
|
| 2294 |
-
|
| 2295 |
-
</
|
| 2296 |
-
|
| 2297 |
-
|
| 2298 |
-
|
| 2299 |
-
|
| 2300 |
-
|
| 2301 |
-
<label>
|
| 2302 |
-
|
| 2303 |
-
|
| 2304 |
-
|
| 2305 |
-
|
| 2306 |
-
|
| 2307 |
-
|
| 2308 |
-
|
| 2309 |
-
|
| 2310 |
-
|
| 2311 |
-
|
| 2312 |
-
|
| 2313 |
-
|
| 2314 |
-
|
| 2315 |
-
|
| 2316 |
-
|
| 2317 |
-
|
| 2318 |
-
|
| 2319 |
-
|
| 2320 |
-
|
| 2321 |
-
|
| 2322 |
-
|
| 2323 |
-
|
| 2324 |
-
|
| 2325 |
-
|
| 2326 |
-
|
| 2327 |
-
|
| 2328 |
-
|
| 2329 |
-
|
| 2330 |
-
|
| 2331 |
-
|
| 2332 |
-
|
| 2333 |
-
|
| 2334 |
-
|
| 2335 |
-
|
| 2336 |
-
|
| 2337 |
-
|
| 2338 |
-
|
| 2339 |
-
|
| 2340 |
-
|
| 2341 |
-
|
| 2342 |
-
|
| 2343 |
-
|
| 2344 |
-
|
| 2345 |
-
|
| 2346 |
-
|
| 2347 |
-
|
| 2348 |
-
|
| 2349 |
-
|
| 2350 |
-
|
| 2351 |
-
|
| 2352 |
-
|
| 2353 |
-
|
| 2354 |
-
|
| 2355 |
-
|
| 2356 |
-
|
| 2357 |
-
|
| 2358 |
-
|
| 2359 |
-
|
| 2360 |
-
|
| 2361 |
-
|
| 2362 |
-
|
| 2363 |
-
|
| 2364 |
-
|
| 2365 |
-
|
| 2366 |
-
|
| 2367 |
-
|
| 2368 |
-
|
| 2369 |
-
|
| 2370 |
-
|
| 2371 |
-
|
| 2372 |
-
|
| 2373 |
-
|
| 2374 |
-
|
| 2375 |
-
|
| 2376 |
-
|
| 2377 |
-
|
| 2378 |
-
|
| 2379 |
-
|
| 2380 |
-
|
| 2381 |
-
|
| 2382 |
-
|
| 2383 |
-
|
| 2384 |
-
|
| 2385 |
-
|
| 2386 |
-
|
| 2387 |
-
|
| 2388 |
-
|
| 2389 |
-
|
| 2390 |
-
|
| 2391 |
-
|
| 2392 |
-
|
| 2393 |
-
|
| 2394 |
-
|
| 2395 |
-
<
|
| 2396 |
-
|
| 2397 |
-
|
| 2398 |
-
|
| 2399 |
-
|
| 2400 |
-
|
| 2401 |
-
|
| 2402 |
-
|
| 2403 |
-
|
| 2404 |
-
|
| 2405 |
-
|
| 2406 |
-
|
| 2407 |
-
|
| 2408 |
-
|
| 2409 |
-
|
| 2410 |
-
|
| 2411 |
-
|
| 2412 |
-
|
| 2413 |
-
|
| 2414 |
-
|
| 2415 |
-
|
| 2416 |
-
|
| 2417 |
-
|
| 2418 |
-
|
| 2419 |
-
|
| 2420 |
-
|
| 2421 |
-
|
| 2422 |
-
|
| 2423 |
-
|
| 2424 |
-
|
| 2425 |
-
|
| 2426 |
-
|
| 2427 |
-
|
| 2428 |
-
|
| 2429 |
-
|
| 2430 |
-
|
| 2431 |
-
|
| 2432 |
-
|
| 2433 |
-
|
| 2434 |
-
|
| 2435 |
-
|
| 2436 |
-
|
| 2437 |
-
|
| 2438 |
-
|
| 2439 |
-
<
|
| 2440 |
-
|
| 2441 |
-
|
| 2442 |
-
|
| 2443 |
-
|
| 2444 |
-
|
| 2445 |
-
|
| 2446 |
-
|
| 2447 |
-
|
| 2448 |
-
|
| 2449 |
-
|
| 2450 |
-
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
| 2451 |
Â
?>
|
| 1 |
+
<?php
|
| 2 |
+
/*
|
| 3 |
+
Custom Contact Forms Plugin
|
| 4 |
+
By Taylor Lovett - http://www.taylorlovett.com
|
| 5 |
+
Plugin URL: http://www.taylorlovett.com/wordpress-plugins
|
| 6 |
+
*/
|
| 7 |
+
if (!class_exists('CustomContactFormsAdmin')) {
|
| 8 |
+
class CustomContactFormsAdmin extends CustomContactForms {
|
| 9 |
+
var $action_complete = '';
|
| 10 |
+
|
| 11 |
+
function adminInit() {
|
| 12 |
+
$this->downloadExportFile();
|
| 13 |
+
$this->runImport();
|
| 14 |
+
}
|
| 15 |
+
|
| 16 |
+
function insertUsagePopover() {
|
| 17 |
+
ccf_utils::load_module('usage_popover/custom-contact-forms-usage-popover.php');
|
| 18 |
+
}
|
| 19 |
+
|
| 20 |
+
function insertQuickStartPopover() {
|
| 21 |
+
ccf_utils::load_module('usage_popover/custom-contact-forms-quick-start-popover.php');
|
| 22 |
+
}
|
| 23 |
+
|
| 24 |
+
function isPluginAdminPage() {
|
| 25 |
+
$pages = array('custom-contact-forms', 'ccf-settings', 'ccf-saved-form-submissions');
|
| 26 |
+
return (in_array($GLOBALS['ccf_current_page'], $pages));
|
| 27 |
+
}
|
| 28 |
+
|
| 29 |
+
function appendToActionLinks($action_links, $plugin_file) {
|
| 30 |
+
static $link_added = false;
|
| 31 |
+
if (!$link_added && basename($plugin_file) == 'custom-contact-forms.php') {
|
| 32 |
+
$new_link = '<a style="font-weight:bold;" href="admin.php?page=custom-contact-forms" title="' . __('Manage Custom Contact Forms', 'custom-contact-forms') . '">' . __('Settings', 'custom-contact-forms') . '</a>';
|
| 33 |
+
array_unshift($action_links, $new_link);
|
| 34 |
+
$link_added = true;
|
| 35 |
+
}
|
| 36 |
+
return $action_links;
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
function downloadExportFile() {
|
| 40 |
+
if ($_POST['ccf_export']) {
|
| 41 |
+
//chmod('modules/export/', 0777);
|
| 42 |
+
ccf_utils::load_module('export/custom-contact-forms-export.php');
|
| 43 |
+
$transit = new CustomContactFormsExport(parent::getAdminOptionsName());
|
| 44 |
+
$transit->exportAll();
|
| 45 |
+
$file = $transit->exportToFile();
|
| 46 |
+
ccf_utils::redirect(plugins_url() . '/custom-contact-forms/download.php?location=export/' . $file);
|
| 47 |
+
}
|
| 48 |
+
}
|
| 49 |
+
|
| 50 |
+
function runImport() {
|
| 51 |
+
if ($_POST['ccf_clear_import'] || $_POST['ccf_merge_import']) {
|
| 52 |
+
//chmod('modules/export/', 0777);
|
| 53 |
+
ccf_utils::load_module('export/custom-contact-forms-export.php');
|
| 54 |
+
$transit = new CustomContactFormsExport(parent::getAdminOptionsName());
|
| 55 |
+
$settings['import_general_settings'] = ($_POST['ccf_import_overwrite_settings'] == 1) ? true : false;
|
| 56 |
+
$settings['import_forms'] = ($_POST['ccf_import_forms'] == 1) ? true : false;
|
| 57 |
+
$settings['import_fields'] = ($_POST['ccf_import_fields'] == 1) ? true : false;
|
| 58 |
+
$settings['import_field_options'] = ($_POST['ccf_import_field_options'] == 1) ? true : false;
|
| 59 |
+
$settings['import_styles'] = ($_POST['ccf_import_styles'] == 1) ? true : false;
|
| 60 |
+
$settings['import_saved_submissions'] = ($_POST['ccf_import_saved_submissions'] == 1) ? true : false;
|
| 61 |
+
$settings['mode'] = ($_POST['ccf_clear_import']) ? 'clear_import' : 'merge_import';
|
| 62 |
+
print_r($_FILES);
|
| 63 |
+
$transit->importFromFile($_FILES['import_file'], $settings);
|
| 64 |
+
ccf_utils::redirect('options-general.php?page=custom-contact-forms');
|
| 65 |
+
}
|
| 66 |
+
}
|
| 67 |
+
|
| 68 |
+
function contactAuthor($name, $email, $website, $message, $type, $host, $ccf_version, $wp_version) {
|
| 69 |
+
if (empty($message)) return false;
|
| 70 |
+
if (!class_exists('PHPMailer'))
|
| 71 |
+
require_once(ABSPATH . "wp-includes/class-phpmailer.php");
|
| 72 |
+
$mail = new PHPMailer();
|
| 73 |
+
$body = "Name: $name<br />\n";
|
| 74 |
+
$body .= "Email: $email<br />\n";
|
| 75 |
+
$body .= "Website: $website<br />\n";
|
| 76 |
+
$body .= "CCF Version: $ccf_version<br />\n";
|
| 77 |
+
$body .= "WP Version: $wp_version<br />\n";
|
| 78 |
+
$body .= "Host: $host<br />\n";
|
| 79 |
+
$body .= "Message: $message<br />\n";
|
| 80 |
+
$body .= "Message Type: $type<br />\n";
|
| 81 |
+
$body .= 'Sender IP: ' . $_SERVER['REMOTE_ADDR'] . "<br />\n";
|
| 82 |
+
$admin_options = parent::getAdminOptions();
|
| 83 |
+
if ($admin_options['mail_function'] == 'smtp') {
|
| 84 |
+
$mail->IsSMTP();
|
| 85 |
+
$mail->Host = $admin_options['smtp_host'];
|
| 86 |
+
if ($admin_options['smtp_authentication'] == 1) {
|
| 87 |
+
$mail->SMTPAuth = true;
|
| 88 |
+
$mail->Username = $admin_options['smtp_username'];
|
| 89 |
+
$mail->Password = $admin_options['smtp_password'];
|
| 90 |
+
$mail->Port = $admin_options['smtp_port'];
|
| 91 |
+
} else
|
| 92 |
+
$mail->SMTPAuth = false;
|
| 93 |
+
}
|
| 94 |
+
$mail->From = $email;
|
| 95 |
+
$mail->FromName = 'Custom Contact Forms';
|
| 96 |
+
$mail->AddAddress('admin@taylorlovett.com');
|
| 97 |
+
$mail->Subject = "CCF Message: $type";
|
| 98 |
+
$mail->CharSet = "utf-8";
|
| 99 |
+
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
|
| 100 |
+
$mail->MsgHTML($body);
|
| 101 |
+
$mail->Send();
|
| 102 |
+
return true;
|
| 103 |
+
}
|
| 104 |
+
|
| 105 |
+
function displayPluginNewsFeed() {
|
| 106 |
+
include_once(ABSPATH . WPINC . '/feed.php');
|
| 107 |
+
$rss = @fetch_feed('http://www.taylorlovett.com/category/custom-contact-forms/feed');
|
| 108 |
+
if (!is_wp_error($rss) ) {
|
| 109 |
+
$maxitems = $rss->get_item_quantity(5);
|
| 110 |
+
$rss_items = $rss->get_items(0, $maxitems);
|
| 111 |
+
}
|
| 112 |
+
?>
|
| 113 |
+
<ul>
|
| 114 |
+
<?php if ($maxitems == 0) echo '<li>' . __('Nothing to show.', 'custom-contact-forms') . '</li>';
|
| 115 |
+
else
|
| 116 |
+
foreach ( $rss_items as $item ) : ?>
|
| 117 |
+
<li>
|
| 118 |
+
<div class="news-header">
|
| 119 |
+
<a href="<?php echo $item->get_permalink(); ?>"><?php echo $item->get_title(); ?></a> <span class="date"><?php echo $item->get_date('j F, Y'); ?></span>
|
| 120 |
+
</div>
|
| 121 |
+
<div class="news-content">
|
| 122 |
+
<?php echo $item->get_content(); ?>
|
| 123 |
+
</div>
|
| 124 |
+
</li>
|
| 125 |
+
<?php endforeach; ?>
|
| 126 |
+
|
| 127 |
+
</ul>
|
| 128 |
+
<?php
|
| 129 |
+
}
|
| 130 |
+
|
| 131 |
+
|
| 132 |
+
function getFieldsForm() {
|
| 133 |
+
$fields = parent::selectAllFields();
|
| 134 |
+
$out = '';
|
| 135 |
+
foreach ($fields as $field) {
|
| 136 |
+
$out .= '<option value="'.$field->id.'">'.$field->field_slug.'</option>' . "\n";
|
| 137 |
+
}
|
| 138 |
+
return $out;
|
| 139 |
+
}
|
| 140 |
+
|
| 141 |
+
function handleAJAX() {
|
| 142 |
+
|
| 143 |
+
if (!wp_verify_nonce($_POST['nonce'], 'ccf_nonce')) exit(__('Invalid request.', 'custom-contact-forms'));
|
| 144 |
+
$output = $this->handleAdminPostRequests();
|
| 145 |
+
$response = json_encode( $output );
|
| 146 |
+
header("Content-Type: application/json");
|
| 147 |
+
exit($response);
|
| 148 |
+
return true;
|
| 149 |
+
}
|
| 150 |
+
|
| 151 |
+
|
| 152 |
+
function getFieldOptionsForm() {
|
| 153 |
+
$options = parent::selectAllFieldOptions();
|
| 154 |
+
$out = '';
|
| 155 |
+
foreach ($options as $option) {
|
| 156 |
+
$out .= '<option value="'.$option->id.'">'.$option->option_slug.'</option>' . "\n";
|
| 157 |
+
}
|
| 158 |
+
return $out;
|
| 159 |
+
}
|
| 160 |
+
|
| 161 |
+
function insertBackEndStyles() {
|
| 162 |
+
wp_register_style('ccf-standards', plugins_url() . '/custom-contact-forms/css/custom-contact-forms-standards.css');
|
| 163 |
+
wp_register_style('ccf-jquery-ui', plugins_url() . '/custom-contact-forms/css/jquery-ui.css');
|
| 164 |
+
wp_register_style('ccf-admin', plugins_url() . '/custom-contact-forms/css/custom-contact-forms-admin.css');
|
| 165 |
+
wp_register_style('ccf-colorpicker', plugins_url() . '/custom-contact-forms/css/colorpicker.css');
|
| 166 |
+
wp_enqueue_style('ccf-jquery-ui');
|
| 167 |
+
wp_enqueue_style('ccf-standards');
|
| 168 |
+
wp_enqueue_style('ccf-admin');
|
| 169 |
+
wp_enqueue_style('ccf-colorpicker');
|
| 170 |
+
}
|
| 171 |
+
|
| 172 |
+
function insertAdminScripts() {
|
| 173 |
+
$js_version = '2.0.1';
|
| 174 |
+
$admin_options = parent::getAdminOptions();
|
| 175 |
+
$js_lang = array(
|
| 176 |
+
'attaching' => __('Attaching', 'custom-contact-forms'),
|
| 177 |
+
'detaching' => __('Detaching', 'custom-contact-forms'),
|
| 178 |
+
'detach_button' => __('Detach', 'custom-contact-forms'),
|
| 179 |
+
'attach_button' => __('Attach', 'custom-contact-forms'),
|
| 180 |
+
'saving' => __('Saving', 'custom-contact-forms'),
|
| 181 |
+
'more_options' => __('More Options', 'custom-contact-forms'),
|
| 182 |
+
'expand' => __('Expand', 'custom-contact-forms'),
|
| 183 |
+
'click_to_confirm' => __('Click to Confirm', 'custom-contact-forms'),
|
| 184 |
+
'selected_tab' => ($_POST['selected_tab']) ? $_POST['selected_tab'] : 0,
|
| 185 |
+
'delete_confirm' => __('Are you sure you want to delete this', 'custom-contact-forms'),
|
| 186 |
+
'error' => __('An error has occured. Please try again later.', 'custom-contact-forms'),
|
| 187 |
+
'nothing_to_show' => __('Nothing to show.', 'custom-contact-forms'),
|
| 188 |
+
'nothing_attached' => __('Nothing Attached!', 'custom-contact-forms'),
|
| 189 |
+
'nonce' => wp_create_nonce('ccf_nonce')
|
| 190 |
+
);
|
| 191 |
+
$js_ajax = array('plugin_dir' => plugins_url() . '/custom-contact-forms',
|
| 192 |
+
'url' => admin_url('admin-ajax.php'),
|
| 193 |
+
'nonce' => wp_create_nonce('ccf-ajax-nonce'));
|
| 194 |
+
wp_enqueue_script('jquery');
|
| 195 |
+
wp_deregister_script('jquery-form');
|
| 196 |
+
wp_register_script('jquery-form', plugins_url() . '/custom-contact-forms/js/jquery.form.js', $js_version);
|
| 197 |
+
wp_enqueue_script('jquery-ui-core');
|
| 198 |
+
wp_enqueue_script('jquery-ui-tabs');
|
| 199 |
+
wp_enqueue_script('jquery-ui-dialog');
|
| 200 |
+
|
| 201 |
+
wp_enqueue_script('jquery-tools', plugins_url() . '/custom-contact-forms/js/jquery.tools.min.js');
|
| 202 |
+
wp_enqueue_script('jquery-ui-widget', plugins_url() . '/custom-contact-forms/js/jquery.ui.widget.js');
|
| 203 |
+
//wp_enqueue_script('jquery-ui-dialog', plugins_url() . '/custom-contact-forms/js/jquery.ui.dialog.js', array('jquery', 'jquery-ui-core', 'jquery-ui-tabs'));
|
| 204 |
+
//wp_enqueue_script('ccf-pagination', plugins_url() . '/custom-contact-forms/js/jquery.pagination.js');
|
| 205 |
+
wp_enqueue_script('ccf-admin-inc', plugins_url() . '/custom-contact-forms/js/custom-contact-forms-admin-inc.js', $js_version);
|
| 206 |
+
wp_enqueue_script('ccf-admin', plugins_url() . '/custom-contact-forms/js/custom-contact-forms-admin.js', $js_version);
|
| 207 |
+
if ($admin_options['admin_ajax'] == 1) {
|
| 208 |
+
wp_enqueue_script('ccf-admin-ajax', plugins_url() . '/custom-contact-forms/js/custom-contact-forms-admin-ajax.js', array('jquery-form'), $js_version);
|
| 209 |
+
wp_localize_script('ccf-admin-ajax', 'ccfLang', $js_lang);
|
| 210 |
+
wp_localize_script('ccf-admin-ajax', 'ccfAjax', $js_ajax);
|
| 211 |
+
}
|
| 212 |
+
wp_enqueue_script('ccf-colorpicker', plugins_url() . '/custom-contact-forms/js/colorpicker.js');
|
| 213 |
+
wp_enqueue_script('ccf-eye', plugins_url() . '/custom-contact-forms/js/eye.js');
|
| 214 |
+
wp_enqueue_script('ccf-utils', plugins_url() . '/custom-contact-forms/js/utils.js');
|
| 215 |
+
wp_enqueue_script('ccf-layout', plugins_url() . '/custom-contact-forms/js/layout.js?ver=1.0.2');
|
| 216 |
+
wp_localize_script('ccf-admin-inc', 'ccfLang', $js_lang);
|
| 217 |
+
wp_localize_script('ccf-admin-inc', 'ccfAjax', $js_ajax);
|
| 218 |
+
wp_localize_script('ccf-admin', 'ccfLang', $js_lang);
|
| 219 |
+
}
|
| 220 |
+
|
| 221 |
+
function handleAdminPostRequests() {
|
| 222 |
+
$out = array('success' => true);
|
| 223 |
+
if ($_POST['object_create']) {
|
| 224 |
+
if ($_POST['object_type'] == 'form') {
|
| 225 |
+
if (parent::insertForm($_POST['object']) != false)
|
| 226 |
+
$this->action_complete = __('A new form was successfully created!', 'custom-contact-forms');
|
| 227 |
+
} elseif ($_POST['object_type'] == 'field') {
|
| 228 |
+
if (parent::insertField($_POST['object']) != false)
|
| 229 |
+
$this->action_complete = __('A new field was successful created!', 'custom-contact-forms');
|
| 230 |
+
} elseif ($_POST['object_type'] == 'field_option') {
|
| 231 |
+
if (parent::insertFieldOption($_POST['object']) != false)
|
| 232 |
+
$this->action_complete = __('A new field option was successful created!', 'custom-contact-forms');
|
| 233 |
+
} elseif ($_POST['object_type'] == 'style') {
|
| 234 |
+
if (parent::insertStyle($_POST['object']) != false)
|
| 235 |
+
$this->action_complete = __('A new style was successful created!', 'custom-contact-forms');
|
| 236 |
+
}
|
| 237 |
+
return $out;
|
| 238 |
+
}
|
| 239 |
+
|
| 240 |
+
if ($_POST['object_attach']) {
|
| 241 |
+
if ($_POST['object_type'] == 'form') {
|
| 242 |
+
if (parent::addFieldToForm($_POST['attach_object_id'], $_POST['object_id']) != false)
|
| 243 |
+
$this->action_complete = __('A field was successful attached!', 'custom-contact-forms');
|
| 244 |
+
} elseif ($_POST['object_type'] == 'field') {
|
| 245 |
+
if (parent::addFieldOptionToField($_POST['attach_object_id'], $_POST['object_id']) != false)
|
| 246 |
+
$this->action_complete = __('A field option was successful attached!', 'custom-contact-forms');
|
| 247 |
+
}
|
| 248 |
+
return $out;
|
| 249 |
+
}
|
| 250 |
+
|
| 251 |
+
if ($_POST['object_detach']) {
|
| 252 |
+
if ($_POST['object_type'] == 'form') {
|
| 253 |
+
if (parent::detachField($_POST['detach_object_id'], $_POST['object_id']) != false)
|
| 254 |
+
$this->action_complete = __('A field was successful detached!', 'custom-contact-forms');
|
| 255 |
+
} elseif ($_POST['object_type'] == 'field') {
|
| 256 |
+
if (parent::detachFieldOption($_POST['detach_object_id'], $_POST['object_id']) != false)
|
| 257 |
+
$this->action_complete = __('A field option was successful detached!', 'custom-contact-forms');
|
| 258 |
+
}
|
| 259 |
+
return $out;
|
| 260 |
+
}
|
| 261 |
+
|
| 262 |
+
if (isset($_POST['object_bulk_apply'])) {
|
| 263 |
+
$out['object_bulk_action'] = $_POST['object_bulk_action'];
|
| 264 |
+
if ($_POST['object_bulk_action'] == 'edit') {
|
| 265 |
+
foreach ($_POST['objects'] as $obj) {
|
| 266 |
+
if ($obj['object_do'] == 1) {
|
| 267 |
+
if ($obj['object_type'] == 'form') {
|
| 268 |
+
parent::updateForm($obj['values'], $obj['object_id']);
|
| 269 |
+
if ($obj['detach_confirm'] == 1 && $obj['detach'] > 0) {
|
| 270 |
+
parent::detachField($obj['detach'], $obj['object_id']);
|
| 271 |
+
} if ($obj['attach_confirm'] == 1 && $obj['attach'] > 0) {
|
| 272 |
+
parent::addFieldToForm($obj['attach'], $obj['object_id']);
|
| 273 |
+
}
|
| 274 |
+
} elseif ($obj['object_type'] == 'field') {
|
| 275 |
+
parent::updateField($obj['values'], $obj['object_id']);
|
| 276 |
+
if ($obj['detach_confirm'] == 1 && $obj['detach'] > 0) {
|
| 277 |
+
parent::detachFieldOption($obj['detach'], $obj['object_id']);
|
| 278 |
+
} if ($obj['attach_confirm'] == 1 && $obj['attach'] > 0) {
|
| 279 |
+
parent::addFieldOptionToField($obj['attach'], $obj['object_id']);
|
| 280 |
+
}
|
| 281 |
+
} elseif ($obj['object_type'] == 'field_option') parent::updateFieldOption($obj['values'], $obj['object_id']);
|
| 282 |
+
elseif ($obj['object_type'] == 'style') parent::updateStyle($obj['values'], $obj['object_id']);
|
| 283 |
+
$out['objects'][] = $obj;
|
| 284 |
+
}
|
| 285 |
+
}
|
| 286 |
+
$this->action_complete = __('Your bulk action has been completed!', 'custom-contact-forms');
|
| 287 |
+
}
|
| 288 |
+
|
| 289 |
+
elseif ($_POST['object_bulk_action'] == 'delete') {
|
| 290 |
+
foreach ($_POST['objects'] as $obj) {
|
| 291 |
+
if ($obj['object_do'] == 1) {
|
| 292 |
+
if ($obj['object_type'] == 'form') parent::deleteForm($obj['object_id']);
|
| 293 |
+
elseif ($obj['object_type'] == 'field') parent::deleteField($obj['object_id']);
|
| 294 |
+
elseif ($obj['object_type'] == 'field_option') parent::deleteFieldOption($obj['object_id']);
|
| 295 |
+
elseif ($obj['object_type'] == 'style') parent::deleteStyle($obj['object_id']);
|
| 296 |
+
elseif ($obj['object_type'] == 'form_submission') {
|
| 297 |
+
parent::deleteUserData($obj['object_id']);
|
| 298 |
+
}
|
| 299 |
+
$out['objects'][] = $obj;
|
| 300 |
+
}
|
| 301 |
+
}
|
| 302 |
+
$this->action_complete = __('Your bulk action has been completed!', 'custom-contact-forms');
|
| 303 |
+
}
|
| 304 |
+
}
|
| 305 |
+
return $out;
|
| 306 |
+
}
|
| 307 |
+
|
| 308 |
+
function rateMeForm() {
|
| 309 |
+
?>
|
| 310 |
+
<form class="rate-me" action="https://www.paypal.com/cgi-bin/webscr" method="post">
|
| 311 |
+
<input type="hidden" name="cmd" value="_s-xclick">
|
| 312 |
+
<input type="hidden" name="hosted_button_id" value="TXYVDCH955V28">
|
| 313 |
+
<a href="http://wordpress.org/extend/plugins/custom-contact-forms" title="<?php _e("Rate This Plugin", 'custom-contact-forms'); ?>">
|
| 314 |
+
<?php _e("We need your help to continue development! Please <span>rate this plugin</span> to show your support.", 'custom-contact-forms'); ?></a>
|
| 315 |
+
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_donate_SM.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
|
| 316 |
+
<img alt="Donate to Custom Contact Forms plugin" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
|
| 317 |
+
</form>
|
| 318 |
+
<?php
|
| 319 |
+
}
|
| 320 |
+
|
| 321 |
+
function printAdminPage() {
|
| 322 |
+
$admin_options = parent::getAdminOptions();
|
| 323 |
+
$show_checkbox_warning = false;
|
| 324 |
+
if ($admin_options['show_install_popover'] == 1) {
|
| 325 |
+
$admin_options['show_install_popover'] = 0;
|
| 326 |
+
$show_checkbox_warning = true;
|
| 327 |
+
?>
|
| 328 |
+
<script type="text/javascript" language="javascript">
|
| 329 |
+
$j(document).ready(function() {
|
| 330 |
+
$j("#ccf-usage-popover").dialog('open');
|
| 331 |
+
});
|
| 332 |
+
</script>
|
| 333 |
+
<?php
|
| 334 |
+
update_option(parent::getAdminOptionsName(), $admin_options);
|
| 335 |
+
}
|
| 336 |
+
$this->handleAdminPostRequests();
|
| 337 |
+
if ($_POST['insert_default_content']) {
|
| 338 |
+
ccf_utils::load_module('db/custom-contact-forms-default-db.php');
|
| 339 |
+
$this->action_complete = __('Default content has been inserted!', 'custom-contact-forms');
|
| 340 |
+
new CustomContactFormsDefaultDB();
|
| 341 |
+
} elseif ($_POST['contact_author']) {
|
| 342 |
+
$this->action_complete = __('Your message has been sent!', 'custom-contact-forms');
|
| 343 |
+
$this_url = (!empty($_SERVER['HTTP_REFERER'])) ? $_SERVER['HTTP_REFERER'] : $_SERVER['SERVER_NAME'];
|
| 344 |
+
$this->contactAuthor($_POST['name'], $_POST['email'], $this_url, $_POST['message'], $_POST['type'], $_POST['host'], $_POST['ccf-version'], $_POST['wp-version']);
|
| 345 |
+
} elseif ($_GET['clear_tables'] == 1) {
|
| 346 |
+
parent::emptyAllTables();
|
| 347 |
+
}
|
| 348 |
+
$styles = parent::selectAllStyles();
|
| 349 |
+
$style_options = '<option value="0">Default</option>';
|
| 350 |
+
foreach ($styles as $style)
|
| 351 |
+
$style_options .= '<option value="'.$style->id.'">'.$style->style_slug.'</option>';
|
| 352 |
+
?>
|
| 353 |
+
<div id="customcontactforms-admin">
|
| 354 |
+
<div class="plugin-header">
|
| 355 |
+
<h2>
|
| 356 |
+
<?php _e("Custom Contact Forms", 'custom-contact-forms'); ?>
|
| 357 |
+
</h2>
|
| 358 |
+
<div class="links">
|
| 359 |
+
<a href="javascript:void(0)" class="quick-start-button">Quick Start Guide</a> - <a href="javascript:void(0)" class="usage-popover-button">Plugin Usage Manual</a>
|
| 360 |
+
</div>
|
| 361 |
+
</div>
|
| 362 |
+
<div id="ccf-tabs">
|
| 363 |
+
<ul id="plugin-nav">
|
| 364 |
+
<li><a href="#forms"><?php _e("Forms", 'custom-contact-forms'); ?></a></li>
|
| 365 |
+
<li><a href="#fields"><?php _e("Fields", 'custom-contact-forms'); ?></a></li>
|
| 366 |
+
<li><a href="#field-options"><?php _e("Field Options", 'custom-contact-forms'); ?></a></li>
|
| 367 |
+
<li><a href="#styles"><?php _e("Styles", 'custom-contact-forms'); ?></a></li>
|
| 368 |
+
<li><a href="#support"><?php _e("Support", 'custom-contact-forms'); ?></a></li>
|
| 369 |
+
<li><a href="#advanced"><?php _e("Advanced", 'custom-contact-forms'); ?></a></li>
|
| 370 |
+
<li><a href="#news"><?php _e("News", 'custom-contact-forms'); ?></a></li>
|
| 371 |
+
</ul>
|
| 372 |
+
<a class="genesis" href="http://www.shareasale.com/r.cfm?b=241369&u=481196&m=28169&urllink=&afftrack="><?php _e('Custom Contact Forms works best with any of the 20+ ', 'custom-contact-forms'); ?><span><?php _e('Genesis', 'custom-contact-forms'); ?></span> <?php _e('Wordpress child themes. The', 'custom-contact-forms'); ?> <span><?php _e('Genesis Framework', 'custom-contact-forms'); ?></span> <?php _e('empowers you to quickly and easily build incredible websites with WordPress.', 'custom-contact-forms'); ?></a>
|
| 373 |
+
|
| 374 |
+
<form class="blog-horizontal-form" method="post" action="http://www.aweber.com/scripts/addlead.pl">
|
| 375 |
+
<input type="hidden" name="meta_web_form_id" value="1578604781" />
|
| 376 |
+
<input type="hidden" name="meta_split_id" value="" />
|
| 377 |
+
<input type="hidden" name="listname" value="ccf-plugin" />
|
| 378 |
+
<input type="hidden" name="redirect" value="http://www.taylorlovett.com/wordpress-plugins/tutorials-offers-tips/" id="redirect_5832e41084448adb07da67a35dc83c27" />
|
| 379 |
+
<input type="hidden" name="meta_adtracking" value="CCF_-_Wordpress_Plugins_Horizontal" />
|
| 380 |
+
<input type="hidden" name="meta_message" value="1" />
|
| 381 |
+
<input type="hidden" name="meta_required" value="name,email" />
|
| 382 |
+
<span><?php _e('WP Blogging Tips, Downloads, SEO Tricks & Exclusive Tutorials', 'custom-contact-forms'); ?></span>
|
| 383 |
+
<input type="text" name="name" value="Your Name" onclick="value=''" />
|
| 384 |
+
<input type="text" name="email" value="Your Email" onclick="value=''" />
|
| 385 |
+
<input type="submit" value="Sign Up for Free" />
|
| 386 |
+
</form>
|
| 387 |
+
|
| 388 |
+
<?php if ($show_checkbox_warning) { ?>
|
| 389 |
+
<div class="checkbox-warning">
|
| 390 |
+
<span>ATTENTION:</span> Custom Contact Forms 4.7 changes the way checkbox fields work. In order to make use of checkboxes, as of 4.7, you must attach field options to your checkbox fields. Upon upgrading to version 4.7, your old checkbox fields will not work until you create field options and attach them.
|
| 391 |
+
</div>
|
| 392 |
+
<?php } ?>
|
| 393 |
+
|
| 394 |
+
<?php if (!empty($this->action_complete)) { ?>
|
| 395 |
+
<div id="message" class="updated below-h2">
|
| 396 |
+
<p><?php echo $this->action_complete; ?></p>
|
| 397 |
+
</div>
|
| 398 |
+
<?php } ?>
|
| 399 |
+
<div id="forms">
|
| 400 |
+
<div id="create-forms" class="postbox">
|
| 401 |
+
<h3 class="hndle"><span>
|
| 402 |
+
<?php _e("Create A Form", 'custom-contact-forms'); ?>
|
| 403 |
+
</span></h3>
|
| 404 |
+
<div class="inside">
|
| 405 |
+
<form id="ccf-create-form" method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 406 |
+
<input value="forms" name="selected_tab" type="hidden" />
|
| 407 |
+
<ul class="left">
|
| 408 |
+
<li>
|
| 409 |
+
<label for="object[form_slug]">*
|
| 410 |
+
<?php _e("Form Slug:", 'custom-contact-forms'); ?>
|
| 411 |
+
</label>
|
| 412 |
+
<input type="text" maxlength="100" name="object[form_slug]" />
|
| 413 |
+
<br />
|
| 414 |
+
<?php _e("This is just a unique way for CCF to refer to your form. Must be unique from other slugs and contain only underscores and alphanumeric characters.", 'custom-contact-forms'); ?>
|
| 415 |
+
</li>
|
| 416 |
+
<li>
|
| 417 |
+
<label for="object[form_title]">
|
| 418 |
+
<?php _e("Form Title:", 'custom-contact-forms'); ?>
|
| 419 |
+
</label>
|
| 420 |
+
<input type="text" maxlength="200" name="object[form_title]" />
|
| 421 |
+
<?php _e("This text is displayed above the form as the heading.", 'custom-contact-forms'); ?>
|
| 422 |
+
</li>
|
| 423 |
+
<li>
|
| 424 |
+
<label for="object[form_action]">
|
| 425 |
+
<?php _e("Form Style:", 'custom-contact-forms'); ?>
|
| 426 |
+
</label>
|
| 427 |
+
<select name="object[form_style]" class="form_style_input">
|
| 428 |
+
<?php echo $style_options; ?>
|
| 429 |
+
</select></li>
|
| 430 |
+
<li>
|
| 431 |
+
<label for="object[submit_button_text]">
|
| 432 |
+
<?php _e("Submit Button Text:", 'custom-contact-forms'); ?>
|
| 433 |
+
</label>
|
| 434 |
+
<input type="text" maxlength="200" name="object[submit_button_text]" />
|
| 435 |
+
</li>
|
| 436 |
+
<li>
|
| 437 |
+
<label for="object[form_email]">
|
| 438 |
+
<?php _e("Form Destination Email:", 'custom-contact-forms'); ?>
|
| 439 |
+
</label>
|
| 440 |
+
<input type="text" name="object[form_email]" />
|
| 441 |
+
<br />
|
| 442 |
+
<?php _e("Will receive all submissions from this form; if left blank it will use the default specified in general settings.", 'custom-contact-forms'); ?>
|
| 443 |
+
</li>
|
| 444 |
+
<li>
|
| 445 |
+
<label for="object[form_email_subject]">
|
| 446 |
+
<?php _e("Form Email Subject:", 'custom-contact-forms'); ?>
|
| 447 |
+
</label>
|
| 448 |
+
<input type="text" name="object[form_email_subject]" />
|
| 449 |
+
<br />
|
| 450 |
+
<?php _e("When submitted and configured accordingly, the form will send an email with this subject.", 'custom-contact-forms'); ?>
|
| 451 |
+
</li>
|
| 452 |
+
<li>
|
| 453 |
+
<label for="object[form_email_name]">
|
| 454 |
+
<?php _e("Form Email Name:", 'custom-contact-forms'); ?>
|
| 455 |
+
</label>
|
| 456 |
+
<input type="text" name="object[form_email_name]" />
|
| 457 |
+
<br />
|
| 458 |
+
<?php _e("When submitted and configured accordingly, the form will send an email with this as the email 'from name'.", 'custom-contact-forms'); ?>
|
| 459 |
+
</li>
|
| 460 |
+
</ul>
|
| 461 |
+
<ul class="right">
|
| 462 |
+
<li>
|
| 463 |
+
<label for="object[form_success_message]">
|
| 464 |
+
<?php _e("Form Success Message:", 'custom-contact-forms'); ?>
|
| 465 |
+
</label>
|
| 466 |
+
<input type="text" name="object[form_success_message]" />
|
| 467 |
+
<br />
|
| 468 |
+
<?php _e("Will be displayed in a popover when the form is filled out successfully when no custom success page is specified; if left blank it will use the default specified in general settings.", 'custom-contact-forms'); ?>
|
| 469 |
+
</li>
|
| 470 |
+
<li>
|
| 471 |
+
<label for="object[form_success_title]">
|
| 472 |
+
<?php _e("Form Success Message Title:", 'custom-contact-forms'); ?>
|
| 473 |
+
</label>
|
| 474 |
+
<input type="text" name="object[form_success_title]" />
|
| 475 |
+
<br />
|
| 476 |
+
<?php _e("Will be displayed in a popover when the form is filled out successfully when no custom success page is specified; if left blank it will use the default specified in general settings.", 'custom-contact-forms'); ?>
|
| 477 |
+
</li>
|
| 478 |
+
<li>
|
| 479 |
+
<label for="object[form_thank_you_page]">
|
| 480 |
+
<?php _e("Custom Success URL:", 'custom-contact-forms'); ?>
|
| 481 |
+
</label>
|
| 482 |
+
<input type="text" name="object[form_thank_you_page]" />
|
| 483 |
+
<br />
|
| 484 |
+
<?php _e("If this is filled out, users will be sent to this page when they successfully fill out this form. If it is left blank, a popover showing the form's 'success message' will be displayed on form success.", 'custom-contact-forms'); ?>
|
| 485 |
+
</li>
|
| 486 |
+
<li>
|
| 487 |
+
<label for="form_access"><?php _e('Who Can View This Form:', ''); ?></label>
|
| 488 |
+
|
| 489 |
+
<?php
|
| 490 |
+
$roles = parent::getRolesArray();
|
| 491 |
+
$i = 0;
|
| 492 |
+
foreach ($roles as $role) {
|
| 493 |
+
if ($i == 3) echo '<br />';
|
| 494 |
+
?>
|
| 495 |
+
<div class="role">
|
| 496 |
+
<input type="checkbox" checked="checked" name="object[form_access][]" value="<?php echo $role; ?>" />
|
| 497 |
+
<?php echo $role; ?>
|
| 498 |
+
</div>
|
| 499 |
+
<?php
|
| 500 |
+
$i++;
|
| 501 |
+
}
|
| 502 |
+
?><br />
|
| 503 |
+
<?php _e('Choose which types of users should be able to view this form.', 'custom-contact-forms'); ?>
|
| 504 |
+
</li>
|
| 505 |
+
<li>
|
| 506 |
+
<input type="hidden" name="object_type" value="form" />
|
| 507 |
+
<input type="submit" class="create-button" value="<?php _e("Create Form", 'custom-contact-forms'); ?>" name="object_create" />
|
| 508 |
+
</li>
|
| 509 |
+
<li class="attach"><span class="ccf-red">*</span> <?php _e('You should go to the form manager to attach fields to this form after you create it.', 'custom-contact-forms'); ?></li>
|
| 510 |
+
</ul>
|
| 511 |
+
</form>
|
| 512 |
+
</div>
|
| 513 |
+
</div>
|
| 514 |
+
|
| 515 |
+
<h3 class="manage-h3">
|
| 516 |
+
<?php _e("Manage Forms", 'custom-contact-forms'); ?>
|
| 517 |
+
</h3>
|
| 518 |
+
<form class="ccf-edit-ajax" method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 519 |
+
<input type="hidden" name="selected_tab" value="forms" />
|
| 520 |
+
<table class="widefat post" id="manage-forms" cellspacing="0">
|
| 521 |
+
<thead>
|
| 522 |
+
<tr>
|
| 523 |
+
<th scope="col" class="manage-column check-col"><input type="checkbox" class="checkall" /></th>
|
| 524 |
+
<th scope="col" class="manage-column form-code"><?php _e("Form Display Code", 'custom-contact-forms'); ?></th>
|
| 525 |
+
<th scope="col" class="manage-column form-slug"><?php _e("Slug", 'custom-contact-forms'); ?></th>
|
| 526 |
+
<th scope="col" class="manage-column form-slug"><?php _e("Destination Email", 'custom-contact-forms'); ?></th>
|
| 527 |
+
<th scope="col" class="manage-column form-title"><?php _e("Title", 'custom-contact-forms'); ?></th>
|
| 528 |
+
<th scope="col" class="manage-column form-button"><?php _e("Button Text", 'custom-contact-forms'); ?></th>
|
| 529 |
+
<th scope="col" class="manage-column form-style"><?php _e("Style", 'custom-contact-forms'); ?></th>
|
| 530 |
+
<th scope="col" class="manage-column form-expand"></th>
|
| 531 |
+
</tr>
|
| 532 |
+
</thead>
|
| 533 |
+
<tbody>
|
| 534 |
+
<?php
|
| 535 |
+
$forms = parent::selectAllForms();
|
| 536 |
+
for ($i = 0; $i < count($forms); $i++) {
|
| 537 |
+
$form_methods = '<option>Post</option><option>Get</option>';
|
| 538 |
+
$form_methods = str_replace('<option>'.$forms[$i]->form_method.'</option>', '<option selected="selected">'.$forms[$i]->form_method.'</option>', $form_methods);
|
| 539 |
+
$add_fields = $this->getFieldsForm();
|
| 540 |
+
$this_style = parent::selectStyle($forms[$i]->form_style, '');
|
| 541 |
+
$sty_opt = str_replace('<option value="'.$forms[$i]->form_style.'">'.$this_style->style_slug.'</option>', '<option value="'.$forms[$i]->form_style.'" selected="selected">'.$this_style->style_slug.'</option>', $style_options);
|
| 542 |
+
?>
|
| 543 |
+
<tr class="row-form-<?php echo $forms[$i]->id; ?> <?php if ($i % 2 == 0) echo 'ccf-evenrow'; ?>">
|
| 544 |
+
<td><input type="checkbox" class="object-check" value="1" name="objects[<?php echo $i; ?>][object_do]" /></td>
|
| 545 |
+
<td><span class="ccf-bold">[customcontact form=<?php echo $forms[$i]->id ?>]</span></td>
|
| 546 |
+
<td><input type="text" class="ccf-width75" name="objects[<?php echo $i; ?>][values][form_slug]" value="<?php echo $forms[$i]->form_slug; ?>" /></td>
|
| 547 |
+
<td><input type="text" name="objects[<?php echo $i; ?>][values][form_email]" value="<?php echo $forms[$i]->form_email; ?>" /></td>
|
| 548 |
+
<td><input type="text" class="ccf-width125" name="objects[<?php echo $i; ?>][values][form_title]" value="<?php echo $forms[$i]->form_title; ?>" /></td>
|
| 549 |
+
<td><input class="ccf-width100" type="text" name="objects[<?php echo $i; ?>][values][submit_button_text]" value="<?php echo $forms[$i]->submit_button_text; ?>" /></td>
|
| 550 |
+
<td><select name="objects[<?php echo $i; ?>][values][form_style]" class="form_style_input">
|
| 551 |
+
<?php echo $sty_opt; ?>
|
| 552 |
+
</select></td>
|
| 553 |
+
<td><input class="object-id" type="hidden" name="objects[<?php echo $i; ?>][object_id]" value="<?php echo $forms[$i]->id; ?>" />
|
| 554 |
+
<input type="hidden" class="object-type" name="objects[<?php echo $i; ?>][object_type]" value="form" />
|
| 555 |
+
<span class="form-options-expand"></span>
|
| 556 |
+
</td>
|
| 557 |
+
</tr>
|
| 558 |
+
<tr class="row-form-<?php echo $forms[$i]->id; ?> <?php if ($i % 2 == 0) echo 'ccf-evenrow'; ?>">
|
| 559 |
+
<td class="form-extra-options ccf-center" colspan="8"><table class="form-extra-options-table">
|
| 560 |
+
<tbody>
|
| 561 |
+
<tr>
|
| 562 |
+
<td class="ccf-bold"><?php _e("Method", 'custom-contact-forms'); ?></td>
|
| 563 |
+
<td class="ccf-bold"><?php _e("Form Action", 'custom-contact-forms'); ?></td>
|
| 564 |
+
<td class="ccf-bold"><?php _e("Email Subject", 'custom-contact-forms'); ?></td>
|
| 565 |
+
<td class="ccf-bold"><?php _e("Email From Name", 'custom-contact-forms'); ?></td>
|
| 566 |
+
<td class="ccf-bold"><?php _e("Success Message Title", 'custom-contact-forms'); ?></td>
|
| 567 |
+
<td class="ccf-bold"><?php _e("Success Message", 'custom-contact-forms'); ?></td>
|
| 568 |
+
<td class="ccf-bold"><?php _e("Custom Success URL", 'custom-contact-forms'); ?></td>
|
| 569 |
+
</tr>
|
| 570 |
+
<tr>
|
| 571 |
+
<td><a href="javascript:void(0)" class="toollink" title="<?php _e("The Form Method is the method by which information is transfer through your form. If you aren't an expert with HTML and PHP, leave this as Post.", 'custom-contact-forms'); ?>">(?)</a>
|
| 572 |
+
<select name="objects[<?php echo $i; ?>][values][form_method]">
|
| 573 |
+
<?php echo $form_methods; ?>
|
| 574 |
+
</select></td>
|
| 575 |
+
<td><a href="javascript:void(0)" class="toollink" title="<?php _e("This lets you process your forms through alternate scripts. If you use a service like InfusionSoft or Aweber, set this to be the same form action as the code provided to you by that service, otherwise leave this blank.", 'custom-contact-forms'); ?>">(?)</a>
|
| 576 |
+
<input class="ccf-width100" type="text" name="objects[<?php echo $i; ?>][values][form_action]" value="<?php echo $forms[$i]->form_action; ?>" /></td>
|
| 577 |
+
<td><a href="javascript:void(0)" class="toollink" title="<?php _e("This is the form email subject sent to the destination email address. If left blank, the default from General Settings will be used.", 'custom-contact-forms'); ?>">(?)</a>
|
| 578 |
+
<input class="ccf-width100" type="text" name="objects[<?php echo $i; ?>][values][form_email_subject]" maxlength="250" value="<?php echo $forms[$i]->form_email_subject; ?>" /></td>
|
| 579 |
+
<td><a href="javascript:void(0)" class="toollink" title="<?php _e("This is the from name of the email sent on successful form submission. If left blank, the default from General Settings will be used.", 'custom-contact-forms'); ?>">(?)</a>
|
| 580 |
+
<input class="ccf-width100" type="text" name="objects[<?php echo $i; ?>][values][form_email_name]" maxlength="100" value="<?php echo $forms[$i]->form_email_name; ?>" /></td>
|
| 581 |
+
<td><a href="javascript:void(0)" class="toollink" title="<?php _e("This will be displayed as the header in a popover when the form is filled out successfully when no custom success page is specified; if left blank it will use the default specified in general settings.", 'custom-contact-forms'); ?>">(?)</a>
|
| 582 |
+
<input class="ccf-width100" type="text" name="objects[<?php echo $i; ?>][values][form_success_title]" value="<?php echo $forms[$i]->form_success_title; ?>" /></td>
|
| 583 |
+
<td><a href="javascript:void(0)" class="toollink" title="<?php _e("This will be displayed in a popover when the form is filled out successfully when no custom success page is specified; if left blank it will use the default specified in general settings.", 'custom-contact-forms'); ?>">(?)</a>
|
| 584 |
+
<input type="text" name="objects[<?php echo $i; ?>][values][form_success_message]" class="ccf-width100" value="<?php echo $forms[$i]->form_success_message; ?>" /></td>
|
| 585 |
+
<td><a href="javascript:void(0)" class="toollink" title="<?php _e("If this is filled out, users will be sent to this thank you page when they successfully fill out this form. If it is left blank, a popover showing the form's 'success message' will be displayed on form success.", 'custom-contact-forms'); ?>">(?)</a>
|
| 586 |
+
<input type="text" class="ccf-width100" name="objects[<?php echo $i; ?>][values][form_thank_you_page]" value="<?php echo $forms[$i]->form_thank_you_page; ?>" /></td>
|
| 587 |
+
</tr>
|
| 588 |
+
<tr>
|
| 589 |
+
<td colspan="7"><a href="javascript:void(0)" class="toollink" title="<?php _e("The form display code above ([customcontact form=x]) will only work in Wordpress pages and posts. If you want to display this form in a theme file such as page.php, header.php, index.php, category.php, etc, then insert this PHP snippet.", 'custom-contact-forms'); ?>">(?)</a>
|
| 590 |
+
<label for="theme_code_<?php echo $forms[$i]->id; ?>"><span><?php _e("Code to Display Form in Theme Files:", 'custom-contact-forms'); ?>
|
| 591 |
+
</span></label>
|
| 592 |
+
<input type="text" class="ccf-width225" value="<?php if (function_exists('serveCustomContactForm')) { serveCustomContactForm(<?php echo $forms[$i]->id; ?>); } ?>" name="theme_code_<?php echo $forms[$i]->id; ?>" />
|
| 593 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e("This field allows you to insert HTML directly after the starting <form> tag.", 'custom-contact-forms'); ?>">(?)</a>
|
| 594 |
+
<label for="objects[<?php echo $i; ?>][values][custom_code]"><?php _e("Custom Code:", 'custom-contact-forms'); ?></label>
|
| 595 |
+
<input name="objects[<?php echo $i; ?>][values][custom_code]" type="text" class="ccf-width100" value="<?php echo $forms[$i]->custom_code; ?>" />
|
| 596 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e("Insert the page id's that your form will be used on. This will make it so the plugin will only load JS and CSS files on these select pages. This will improve your site's load time.", 'custom-contact-forms'); ?>">(?)</a>
|
| 597 |
+
<label for="objects[<?php echo $i; ?>][values][form_pages]"><?php _e("Form Pages:", 'custom-contact-forms'); ?></label>
|
| 598 |
+
<input name="objects[<?php echo $i; ?>][values][form_pages]" type="text" class="ccf-width75" value="<?php echo $forms[$i]->form_pages; ?>" /></td>
|
| 599 |
+
<input name="objects[<?php echo $i; ?>][values][form_access_update]" type="hidden" value="1" /></td>
|
| 600 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e("If you want to show this form to only certain types of users, you can uncheck boxes accordingly. To show this form to anyone, check all the boxes. This will only take effect if 'Form Access Capabilities' is enabled in general settings.", 'custom-contact-forms'); ?>">(?)</a>
|
| 601 |
+
<label for="form_access">Can View Form:</label>
|
| 602 |
+
|
| 603 |
+
<?php
|
| 604 |
+
$roles = parent::getRolesArray();
|
| 605 |
+
$access_array = parent::getFormAccessArray($forms[$i]->form_access);
|
| 606 |
+
foreach ($roles as $role) {
|
| 607 |
+
?>
|
| 608 |
+
<input type="checkbox" <?php if (parent::formHasRole($access_array, $role)) { echo 'checked="checked"'; } ?> name="objects[<?php echo $i; ?>][values][form_access][]" value="<?php echo $role; ?>" />
|
| 609 |
+
<?php
|
| 610 |
+
echo $role;
|
| 611 |
+
}
|
| 612 |
+
?>
|
| 613 |
+
</tr>
|
| 614 |
+
<tr>
|
| 615 |
+
<td colspan="7">
|
| 616 |
+
<div class="fattach">
|
| 617 |
+
<div class="form-detach">
|
| 618 |
+
<label for="detach_object_id"><span>
|
| 619 |
+
<?php _e("Attached Fields:", 'custom-contact-forms'); ?>
|
| 620 |
+
</span></label>
|
| 621 |
+
<?php
|
| 622 |
+
$attached_fields = parent::getAttachedFieldsArray($forms[$i]->id);
|
| 623 |
+
if (empty($attached_fields)) echo '<select class="onObject' . $forms[$i]->id . ' objectTypeForm detach-field detach-object" name="objects['.$i.'][detach]"><option value="-1">Nothing Attached!</option></select> ';
|
| 624 |
+
else {
|
| 625 |
+
echo '<select name="objects['.$i.'][detach]" class="onObject' . $forms[$i]->id . ' detach-object detach-field objectTypeForm">';
|
| 626 |
+
foreach($attached_fields as $attached_field) {
|
| 627 |
+
$this_field = parent::selectField($attached_field, '');
|
| 628 |
+
echo $this_field->field_slug . ' <option value="'.$this_field->id.'">'.$this_field->field_slug.'</option>';
|
| 629 |
+
}
|
| 630 |
+
echo '</select>';
|
| 631 |
+
}
|
| 632 |
+
?>
|
| 633 |
+
<span class="form-detach-check">
|
| 634 |
+
<input type="checkbox" class="detach-check" value="1" name="objects[<?php echo $i; ?>][detach_confirm]" />
|
| 635 |
+
<span class="detach-lang">(Check to detach field)</span>
|
| 636 |
+
</span>
|
| 637 |
+
<br />
|
| 638 |
+
<span class="ccf-red ccf-bold">*</span>
|
| 639 |
+
<?php _e("Attach fields in the order you want them displayed.", 'custom-contact-forms'); ?>
|
| 640 |
+
</div>
|
| 641 |
+
<div class="form-attach">
|
| 642 |
+
<label for="field_id"><span>
|
| 643 |
+
<?php _e("Attach Field:", 'custom-contact-forms'); ?>
|
| 644 |
+
</span></label>
|
| 645 |
+
<select class="onObject<?php echo $forms[$i]->id; ?> attach-object attach-field objectTypeForm" name="objects[<?php echo $i; ?>][attach]">
|
| 646 |
+
<?php echo $add_fields; ?>
|
| 647 |
+
</select>
|
| 648 |
+
<span class="form-attach-check">
|
| 649 |
+
<input class="attach-check" type="checkbox" name="objects[<?php echo $i; ?>][attach_confirm]" value="1" />
|
| 650 |
+
<span class="attach-lang">((Check to attach field)</span>
|
| 651 |
+
</span>
|
| 652 |
+
<br />
|
| 653 |
+
<span class="ccf-red ccf-bold">*</span>
|
| 654 |
+
<?php _e("Attach fixed fields or ones you", 'custom-contact-forms'); ?>
|
| 655 |
+
<a href="#create-fields">
|
| 656 |
+
<?php _e("create", 'custom-contact-forms'); ?>
|
| 657 |
+
</a>. </div></div></td>
|
| 658 |
+
</tr>
|
| 659 |
+
</tbody>
|
| 660 |
+
</table></td>
|
| 661 |
+
</tr>
|
| 662 |
+
<?php
|
| 663 |
+
}
|
| 664 |
+
$remember_check = ($admin_options['remember_field_values'] == 0) ? 'selected="selected"' : '';
|
| 665 |
+
$remember_fields = '<option value="1">'.__('Yes', 'custom-contact-forms').'</option><option '.$remember_check.' value="0">'.__('No', 'custom-contact-forms').'</option>';
|
| 666 |
+
$border_style_options = '<option>solid</option><option>dashed</option>
|
| 667 |
+
<option>grooved</option><option>double</option><option>dotted</option><option>ridged</option><option>none</option>
|
| 668 |
+
<option>inset</option><option>outset</option>';
|
| 669 |
+
?>
|
| 670 |
+
</tbody>
|
| 671 |
+
|
| 672 |
+
<tfoot>
|
| 673 |
+
<tr>
|
| 674 |
+
<tr>
|
| 675 |
+
<th scope="col" class="manage-column check-col"><input type="checkbox" class="checkall" /></th>
|
| 676 |
+
<th scope="col" class="manage-column form-code"><?php _e("Form Code", 'custom-contact-forms'); ?></th>
|
| 677 |
+
<th scope="col" class="manage-column form-slug"><?php _e("Slug", 'custom-contact-forms'); ?></th>
|
| 678 |
+
<th scope="col" class="manage-column form-slug"><?php _e("Destination Email", 'custom-contact-forms'); ?></th>
|
| 679 |
+
<th scope="col" class="manage-column form-title"><?php _e("Title", 'custom-contact-forms'); ?></th>
|
| 680 |
+
<th scope="col" class="manage-column form-button"><?php _e("Button Text", 'custom-contact-forms'); ?></th>
|
| 681 |
+
<th scope="col" class="manage-column form-style"><?php _e("Style", 'custom-contact-forms'); ?></th>
|
| 682 |
+
<th scope="col" class="manage-column form-expand"></th>
|
| 683 |
+
</tr>
|
| 684 |
+
</tr>
|
| 685 |
+
|
| 686 |
+
</tfoot>
|
| 687 |
+
</table>
|
| 688 |
+
<select class="bulk-dropdown" name="object_bulk_action">
|
| 689 |
+
<option value="0"><?php _e('Bulk Actions', 'custom-contact-forms'); ?></option>
|
| 690 |
+
<option value="edit"><?php _e('Save', 'custom-contact-forms'); ?></option>
|
| 691 |
+
<option value="delete"><?php _e('Delete', 'custom-contact-forms'); ?></option></select>
|
| 692 |
+
<input type="submit" name="object_bulk_apply" class="bulk-apply" value="<?php _e('Apply', 'custom-contact-forms'); ?>" /> <img src="<?php echo plugins_url(); ?>/custom-contact-forms/images/wpspin_light.gif" width="16" height="16" class="loading-img" />
|
| 693 |
+
</form>
|
| 694 |
+
</div>
|
| 695 |
+
|
| 696 |
+
<div id="fields">
|
| 697 |
+
|
| 698 |
+
<div id="create-fields" class="postbox">
|
| 699 |
+
<h3 class="hndle"><span>
|
| 700 |
+
<?php _e("Create A Form Field", 'custom-contact-forms'); ?>
|
| 701 |
+
</span></h3>
|
| 702 |
+
<div class="inside">
|
| 703 |
+
<form id="ccf-create-field" method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 704 |
+
<input type="hidden" name="selected_tab" value="fields" />
|
| 705 |
+
<ul class="left">
|
| 706 |
+
<li>
|
| 707 |
+
<label for="field_slug">*
|
| 708 |
+
<?php _e("Field Slug:", 'custom-contact-forms'); ?>
|
| 709 |
+
</label>
|
| 710 |
+
<input name="object[field_slug]" type="text" maxlength="40" />
|
| 711 |
+
<br />
|
| 712 |
+
<?php _e("This is just a unique way for CCF to refer to your field. Must be unique from other slugs and contain only underscores and alphanumeric characters.", 'custom-contact-forms'); ?>
|
| 713 |
+
</li>
|
| 714 |
+
<li>
|
| 715 |
+
<label for="field_label">
|
| 716 |
+
<?php _e("Field Label:", 'custom-contact-forms'); ?>
|
| 717 |
+
</label>
|
| 718 |
+
<input name="object[field_label]" type="text" maxlength="100" />
|
| 719 |
+
<br />
|
| 720 |
+
<?php _e("The field label is displayed next to the field and is visible to the user.", 'custom-contact-forms'); ?>
|
| 721 |
+
</li>
|
| 722 |
+
<li>
|
| 723 |
+
<label for="field_type">*
|
| 724 |
+
<?php _e("Field Type:", 'custom-contact-forms'); ?>
|
| 725 |
+
</label>
|
| 726 |
+
<select name="object[field_type]" class="field-type-selector">
|
| 727 |
+
<option>Text</option>
|
| 728 |
+
<option>Date</option>
|
| 729 |
+
<option>File</option>
|
| 730 |
+
<option>Textarea</option>
|
| 731 |
+
<option>Hidden</option>
|
| 732 |
+
<option>Checkbox</option>
|
| 733 |
+
<option>Radio</option>
|
| 734 |
+
<option>Dropdown</option>
|
| 735 |
+
</select>
|
| 736 |
+
</li>
|
| 737 |
+
<li>
|
| 738 |
+
<label for="field_value">
|
| 739 |
+
<?php _e("Initial Value:", 'custom-contact-forms'); ?>
|
| 740 |
+
</label>
|
| 741 |
+
<input name="object[field_value]" type="text" maxlength="50" />
|
| 742 |
+
<br />
|
| 743 |
+
(
|
| 744 |
+
<?php _e("This is the initial value of the field. If you set the type as checkbox, it is recommend you set this to what the checkbox is implying. For example if I were creating the checkbox
|
| 745 |
+
'Are you human?', I would set the initial value to 'Yes'.", 'custom-contact-forms'); ?>
|
| 746 |
+
<?php _e("If you set the field type as 'Dropdown' or 'Radio', you should enter the slug of the", 'custom-contact-forms'); ?>
|
| 747 |
+
<a href="#manage-field-options" title="<?php _e("Create a Field Option", 'custom-contact-forms'); ?>"><?php _e("field option", 'custom-contact-forms'); ?></a>
|
| 748 |
+
<?php _e("you would like initially selected.", 'custom-contact-forms'); ?>
|
| 749 |
+
) </li>
|
| 750 |
+
<li>
|
| 751 |
+
<label for="field_maxlength">
|
| 752 |
+
<?php _e("Max Length:", 'custom-contact-forms'); ?>
|
| 753 |
+
</label>
|
| 754 |
+
<input class="ccf-width50" size="10" name="object[field_maxlength]" type="text" maxlength="4" />
|
| 755 |
+
<br />
|
| 756 |
+
<?php _e("0 for no limit; only applies to Text fields", 'custom-contact-forms'); ?>
|
| 757 |
+
</li>
|
| 758 |
+
</ul>
|
| 759 |
+
<ul class="right">
|
| 760 |
+
<li>
|
| 761 |
+
<label for="field_required">*
|
| 762 |
+
<?php _e("Required Field:", 'custom-contact-forms'); ?>
|
| 763 |
+
</label>
|
| 764 |
+
<select name="object[field_required]">
|
| 765 |
+
<option value="0">
|
| 766 |
+
<?php _e("No", 'custom-contact-forms'); ?>
|
| 767 |
+
</option>
|
| 768 |
+
<option value="1">
|
| 769 |
+
<?php _e("Yes", 'custom-contact-forms'); ?>
|
| 770 |
+
</option>
|
| 771 |
+
</select>
|
| 772 |
+
<br />
|
| 773 |
+
<?php _e("If a field is required and a user leaves it blank, the plugin will display an error message (which you can customize using 'Field Error') explaining the problem.", 'custom-contact-forms'); ?>
|
| 774 |
+
</li>
|
| 775 |
+
<li>
|
| 776 |
+
<label for="field_instructions">
|
| 777 |
+
<?php _e("Field Instructions:", 'custom-contact-forms'); ?>
|
| 778 |
+
</label>
|
| 779 |
+
<input name="object[field_instructions]" type="text" />
|
| 780 |
+
<br />
|
| 781 |
+
<?php _e("If this is filled out, a tooltip popover displaying this text will show when the field is selected.", 'custom-contact-forms'); ?>
|
| 782 |
+
</li>
|
| 783 |
+
<li>
|
| 784 |
+
<label for="field_class">
|
| 785 |
+
<?php _e("Field Class:", 'custom-contact-forms'); ?>
|
| 786 |
+
</label>
|
| 787 |
+
<input name="object[field_class]" type="text" />
|
| 788 |
+
<br />
|
| 789 |
+
<?php _e("If you manage your own .css stylesheet, you can use this to attach a class to this field. Leaving this blank will do nothing.", 'custom-contact-forms'); ?>
|
| 790 |
+
</li>
|
| 791 |
+
<li>
|
| 792 |
+
<label for="field_error">
|
| 793 |
+
<?php _e("Field Error:", 'custom-contact-forms'); ?>
|
| 794 |
+
</label>
|
| 795 |
+
<input name="object[field_error]" type="text" />
|
| 796 |
+
<br />
|
| 797 |
+
<?php _e("If a user leaves this field blank and the field is required, this error message will be shown. A generic default will show if left blank.", 'custom-contact-forms'); ?>
|
| 798 |
+
</li>
|
| 799 |
+
<li class="file-fields">
|
| 800 |
+
<label for="field_max_upload_size">
|
| 801 |
+
<?php _e("Max File Size Allowed:", 'custom-contact-forms'); ?>
|
| 802 |
+
</label>
|
| 803 |
+
<input name="object[field_max_upload_size]" value="5000" type="text" /> <?php _e('KB', 'custom-contact-forms'); ?>
|
| 804 |
+
<br />
|
| 805 |
+
<?php _e("If a user tries to upload a file larger than the max upload size, an error message will be displayed.", 'custom-contact-forms'); ?>
|
| 806 |
+
</li>
|
| 807 |
+
<li class="file-fields">
|
| 808 |
+
<label for="field_allowed_file_extensions">
|
| 809 |
+
<?php _e("Allowed File Extensions for Upload:", 'custom-contact-forms'); ?>
|
| 810 |
+
</label>
|
| 811 |
+
<input name="object[field_allowed_file_extensions]" type="text" />
|
| 812 |
+
<br />
|
| 813 |
+
<?php _e("If a user tries to upload a file with an extension not in this list, an error will be shown. Separate file extensions with a comma. Ex: doc, jpg, jpeg, txt", 'custom-contact-forms'); ?>
|
| 814 |
+
</li>
|
| 815 |
+
<li>
|
| 816 |
+
<input type="hidden" name="object[user_field]" value="1" />
|
| 817 |
+
<input type="hidden" name="object_type" value="field" />
|
| 818 |
+
<input type="submit" value="<?php _e("Create Field", 'custom-contact-forms'); ?>" name="object_create" class="create-button" />
|
| 819 |
+
</li>
|
| 820 |
+
<li class="attach"><span class="ccf-red">*</span> <?php _e('If this is a dropdown or radio field, you should go to the field manager below to attach field options after you create it.', 'custom-contact-forms'); ?></li>
|
| 821 |
+
|
| 822 |
+
</ul>
|
| 823 |
+
</form>
|
| 824 |
+
</div>
|
| 825 |
+
</div>
|
| 826 |
+
|
| 827 |
+
<h3 class="manage-h3">
|
| 828 |
+
<?php _e("Manage User Fields", 'custom-contact-forms'); ?>
|
| 829 |
+
</h3>
|
| 830 |
+
<form class="ccf-edit-ajax" method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 831 |
+
<input type="hidden" name="selected_tab" value="fields" />
|
| 832 |
+
<table class="widefat post" id="manage-fields" cellspacing="0">
|
| 833 |
+
<thead>
|
| 834 |
+
<tr>
|
| 835 |
+
<th scope="col" class="manage-column check-col"><input type="checkbox" class="checkall" /></th>
|
| 836 |
+
<th scope="col" class="manage-column field-slug"><?php _e("Slug", 'custom-contact-forms'); ?></th>
|
| 837 |
+
<th scope="col" class="manage-column field-label"><?php _e("Label", 'custom-contact-forms'); ?></th>
|
| 838 |
+
<th scope="col" class="manage-column field-type"><?php _e("Type", 'custom-contact-forms'); ?></th>
|
| 839 |
+
<th scope="col" class="manage-column field-value"><?php _e("Initial Value", 'custom-contact-forms'); ?></th>
|
| 840 |
+
<th scope="col" class="manage-column field-required"><?php _e("Required", 'custom-contact-forms'); ?></th>
|
| 841 |
+
<th scope="col" class="manage-column field-maxlength"><?php _e("Maxlength", 'custom-contact-forms'); ?></th>
|
| 842 |
+
<th scope="col" class="manage-column field-expand"></th>
|
| 843 |
+
</tr>
|
| 844 |
+
</thead>
|
| 845 |
+
<tbody>
|
| 846 |
+
<?php
|
| 847 |
+
$fields = parent::selectAllFields();
|
| 848 |
+
for ($i = 0, $z = 0; $i < count($fields); $i++, $z++) {
|
| 849 |
+
if ($fields[$i]->user_field == 0) { $z--; continue; }
|
| 850 |
+
$attached_options = parent::getAttachedFieldOptionsArray($fields[$i]->id);
|
| 851 |
+
$field_types = '<option>Text</option><option>Date</option><option>File</option><option>Textarea</option><option>Hidden</option><option>Checkbox</option><option>Radio</option><option>Dropdown</option>';
|
| 852 |
+
$field_types = str_replace('<option>'.$fields[$i]->field_type.'</option>', '<option selected="selected">'.$fields[$i]->field_type.'</option>', $field_types);
|
| 853 |
+
|
| 854 |
+
?>
|
| 855 |
+
<tr class="row-field-<?php echo $fields[$i]->id; ?> <?php if ($z % 2 == 1) echo ' ccf-evenrow'; ?>">
|
| 856 |
+
<td><input class="object-check" type="checkbox" value="1" name="objects[<?php echo $i; ?>][object_do]" /></td>
|
| 857 |
+
<td><input type="text" name="objects[<?php echo $i; ?>][values][field_slug]" class="ccf-width100" maxlength="50" value="<?php echo $fields[$i]->field_slug; ?>" /></td>
|
| 858 |
+
<td><input type="text" name="objects[<?php echo $i; ?>][values][field_label]" maxlength="100" value="<?php echo $fields[$i]->field_label; ?>" /></td>
|
| 859 |
+
<td><select name="objects[<?php echo $i; ?>][values][field_type]">
|
| 860 |
+
<?php echo $field_types; ?>
|
| 861 |
+
</select></td>
|
| 862 |
+
<td><input type="text" name="objects[<?php echo $i; ?>][values][field_value]" maxlength="50" class="ccf-width75" value="<?php echo $fields[$i]->field_value; ?>" /></td>
|
| 863 |
+
<td><select name="objects[<?php echo $i; ?>][values][field_required]">
|
| 864 |
+
<option value="1">
|
| 865 |
+
<?php _e("Yes", 'custom-contact-forms'); ?>
|
| 866 |
+
</option>
|
| 867 |
+
<option value="0" <?php if ($fields[$i]->field_required != 1) echo 'selected="selected"'; ?>>
|
| 868 |
+
<?php _e("No", 'custom-contact-forms'); ?>
|
| 869 |
+
</option>
|
| 870 |
+
</select></td>
|
| 871 |
+
<td><?php if ($fields[$i]->field_type == 'Dropdown' || $fields[$i]->field_type == 'Radio' || $fields[$i]->field_type == 'Checkbox') { ?>
|
| 872 |
+
<b>-</b>
|
| 873 |
+
<?php } else { ?>
|
| 874 |
+
<input type="text" class="ccf-width50" name="objects[<?php echo $i; ?>][values][field_maxlength]" value="<?php echo $fields[$i]->field_maxlength; ?>" />
|
| 875 |
+
<?php } ?>
|
| 876 |
+
</td>
|
| 877 |
+
<td><input type="hidden" class="object-type" name="objects[<?php echo $i; ?>][object_type]" value="field" />
|
| 878 |
+
<input type="hidden" class="object-id" name="objects[<?php echo $i; ?>][object_id]" value="<?php echo $fields[$i]->id; ?>" />
|
| 879 |
+
<span class="fields-options-expand"></span>
|
| 880 |
+
</tr>
|
| 881 |
+
<?php $show_field_options = ($fields[$i]->field_type == 'Radio' || $fields[$i]->field_type == 'Dropdown' || $fields[$i]->field_type == 'Checkbox') ? true : false; ?>
|
| 882 |
+
<tr class="row-field-<?php echo $fields[$i]->id; ?> <?php if ($z % 2 == 1) echo 'ccf-evenrow'; ?>">
|
| 883 |
+
<td class="fields-extra-options" colspan="8">
|
| 884 |
+
<div class="row-one">
|
| 885 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e('If this is filled out, a tooltip popover displaying this text will show when the field is selected.', 'custom-contact-forms'); ?>">(?)</a>
|
| 886 |
+
<label for="field_instructions">
|
| 887 |
+
<?php _e("Field Instructions:", 'custom-contact-forms'); ?>
|
| 888 |
+
</label>
|
| 889 |
+
<input type="text" class="ccf-width150" name="objects[<?php echo $i; ?>][values][field_instructions]" value="<?php echo $fields[$i]->field_instructions; ?>" />
|
| 890 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e('If you manage a .CSS file for your theme, you could create a class in that file and add it to this field. If the form attaching this field is using a "Form Style" other than the default, styles inherited from the "Field Class" might be overwritten.', 'custom-contact-forms'); ?>">(?)</a>
|
| 891 |
+
<label for="field_class">
|
| 892 |
+
<?php _e("Field Class:", 'custom-contact-forms'); ?>
|
| 893 |
+
</label>
|
| 894 |
+
<input type="text" class="ccf-width100" name="objects[<?php echo $i; ?>][values][field_class]" value="<?php echo $fields[$i]->field_class; ?>" />
|
| 895 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e('This lets you customize the error message displayed when this field is required and left blank.', 'custom-contact-forms'); ?>">(?)</a>
|
| 896 |
+
<label for="field_error">
|
| 897 |
+
<?php _e("Field Error:", 'custom-contact-forms'); ?>
|
| 898 |
+
</label>
|
| 899 |
+
<input type="text" class="ccf-width200" name="objects[<?php echo $i; ?>][values][field_error]" value="<?php echo $fields[$i]->field_error; ?>" />
|
| 900 |
+
</div>
|
| 901 |
+
<?php if ($fields[$i]->field_type == 'File') { ?>
|
| 902 |
+
<div class="row-two">
|
| 903 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e('If a user tries to upload a file greater than the value in this field, an error will be shown. Upload size is in KB. If this is left blank or set to 0, then there will be no maximum file size for this field.', 'custom-contact-forms'); ?>">(?)</a>
|
| 904 |
+
<label for="field_max_upload_size"><?php _e("Max Upload Size", 'custom-contact-forms'); ?></label>
|
| 905 |
+
<input type="text" class="ccf-width100" name="objects[<?php echo $i; ?>][values][field_max_upload_size]" value="<?php echo $fields[$i]->field_max_upload_size; ?>" /><?php _e('KB', 'custom-contact-forms'); ?>
|
| 906 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e('If a user tries to upload a file with an extension not in this list, an error will be shown. If this is left blank, then all file extensions will be accepted. Separate file extensions with a comma. Ex: doc, jpg, jpeg, bmp, gif, txt', 'custom-contact-forms'); ?>">(?)</a>
|
| 907 |
+
<label for="field_allowed_file_extensions"><?php _e("Allowed File Extensions", 'custom-contact-forms'); ?></label>
|
| 908 |
+
<input type="text" class="ccf-width200" name="objects[<?php echo $i; ?>][values][field_allowed_file_extensions]" value="<?php $exts = unserialize($fields[$i]->field_allowed_file_extensions); echo (!empty($exts)) ? @implode(', ', $exts) : ''; ?>" />
|
| 909 |
+
</div>
|
| 910 |
+
<?php } ?>
|
| 911 |
+
<?php
|
| 912 |
+
if ($show_field_options) { ?>
|
| 913 |
+
<div class="fattach">
|
| 914 |
+
<div class="field-detach">
|
| 915 |
+
<span class="ccf-bold">Detach Options:</span>
|
| 916 |
+
<?php if (empty($attached_options)) { ?>
|
| 917 |
+
<select class="onObject<?php echo $fields[$i]->id ?> detach-object detach-field-option objectTypeField" name="objects[<?php echo $i; ?>][detach]">
|
| 918 |
+
<option value="-1">Nothing Attached!</option>
|
| 919 |
+
</select>
|
| 920 |
+
<?php } else { ?>
|
| 921 |
+
<select name="objects[<?php echo $i; ?>][detach]" class="onObject<?php echo $fields[$i]->id ?> detach-object detach-field-option objectTypeField">
|
| 922 |
+
<?php
|
| 923 |
+
foreach ($attached_options as $option_id) {
|
| 924 |
+
$option = parent::selectFieldOption($option_id);
|
| 925 |
+
?>
|
| 926 |
+
<option value="<?php echo $option_id; ?>"><?php echo $option->option_slug; ?></option>
|
| 927 |
+
<?php
|
| 928 |
+
}
|
| 929 |
+
?>
|
| 930 |
+
</select>
|
| 931 |
+
<?php } ?>
|
| 932 |
+
<span class="field-detach-check">
|
| 933 |
+
<input class="detach-check" type="checkbox" name="objects[<?php echo $i; ?>][detach_confirm]" value="1" />
|
| 934 |
+
<span class="detach-lang">(Check to detach option)</span>
|
| 935 |
+
</span><br />
|
| 936 |
+
<span class="ccf-red ccf-bold">*</span>
|
| 937 |
+
<?php _e("Detach field options you", 'custom-contact-forms'); ?>
|
| 938 |
+
<a href="#create-field-options">
|
| 939 |
+
<?php _e("create", 'custom-contact-forms'); ?>
|
| 940 |
+
</a>. </div>
|
| 941 |
+
<?php $all_options = $this->getFieldOptionsForm(); ?>
|
| 942 |
+
<div class="field-attach">
|
| 943 |
+
<span class="ccf-bold">Attach Options:</span>
|
| 944 |
+
<?php if (empty($all_options)) { ?>
|
| 945 |
+
<b>No Field Options to Attach</b>
|
| 946 |
+
<?php } else { ?>
|
| 947 |
+
<select name="objects[<?php echo $i; ?>][attach]" class="onObject<?php echo $fields[$i]->id ?> attach-object attach-field-option objectTypeField">
|
| 948 |
+
<?php echo $all_options; ?>
|
| 949 |
+
</select>
|
| 950 |
+
<span class="field-attach-check">
|
| 951 |
+
<input type="checkbox" class="attach-check" name="objects[<?php echo $i; ?>][attach_confirm]" value="1" />
|
| 952 |
+
<?php } ?>
|
| 953 |
+
<span class="attach-lang">(Check to attach option)</span>
|
| 954 |
+
</span><br />
|
| 955 |
+
<span class="ccf-red ccf-bold">*</span>
|
| 956 |
+
<?php _e("Attach field options in the order you want them to display.", 'custom-contact-forms'); ?>
|
| 957 |
+
</div>
|
| 958 |
+
</div>
|
| 959 |
+
<?php } ?>
|
| 960 |
+
</td>
|
| 961 |
+
</tr>
|
| 962 |
+
<?php
|
| 963 |
+
}
|
| 964 |
+
?>
|
| 965 |
+
</tbody>
|
| 966 |
+
|
| 967 |
+
<tfoot>
|
| 968 |
+
<tr>
|
| 969 |
+
<th scope="col" class="manage-column check-col"><input type="checkbox" class="checkall" /></th>
|
| 970 |
+
<th scope="col" class="manage-column field-slug"><?php _e("Slug", 'custom-contact-forms'); ?></th>
|
| 971 |
+
<th scope="col" class="manage-column field-label"><?php _e("Label", 'custom-contact-forms'); ?></th>
|
| 972 |
+
<th scope="col" class="manage-column field-type"><?php _e("Type", 'custom-contact-forms'); ?></th>
|
| 973 |
+
<th scope="col" class="manage-column field-value"><?php _e("Initial Value", 'custom-contact-forms'); ?></th>
|
| 974 |
+
<th scope="col" class="manage-column field-required"><?php _e("Required", 'custom-contact-forms'); ?></th>
|
| 975 |
+
<th scope="col" class="manage-column field-maxlength"><?php _e("Maxlength", 'custom-contact-forms'); ?></th>
|
| 976 |
+
<th scope="col" class="manage-column field-expand"></th>
|
| 977 |
+
</tr>
|
| 978 |
+
</tfoot>
|
| 979 |
+
</table>
|
| 980 |
+
<select class="bulk-dropdown" name="object_bulk_action">
|
| 981 |
+
<option value="0"><?php _e('Bulk Actions', 'custom-contact-forms'); ?></option>
|
| 982 |
+
<option value="edit"><?php _e('Save', 'custom-contact-forms'); ?></option>
|
| 983 |
+
<option value="delete"><?php _e('Delete', 'custom-contact-forms'); ?></option>
|
| 984 |
+
</select> <input type="submit" name="object_bulk_apply" class="bulk-apply" value="<?php _e('Apply', 'custom-contact-forms'); ?>" /> <img src="<?php echo plugins_url(); ?>/custom-contact-forms/images/wpspin_light.gif" width="16" height="16" class="loading-img" />
|
| 985 |
+
</form>
|
| 986 |
+
|
| 987 |
+
<h3 class="manage-h3">
|
| 988 |
+
<?php _e("Manage Fixed Fields", 'custom-contact-forms'); ?>
|
| 989 |
+
</h3>
|
| 990 |
+
<form class="ccf-edit-ajax" method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 991 |
+
<input type="hidden" name="selected_tab" value="fields" />
|
| 992 |
+
<table class="widefat post" id="manage-fixed-fields" cellspacing="0">
|
| 993 |
+
<thead>
|
| 994 |
+
<tr>
|
| 995 |
+
<th scope="col" class="manage-column check-col"><input type="checkbox" class="checkall" /></th>
|
| 996 |
+
<th scope="col" class="manage-column field-slug"><?php _e("Slug", 'custom-contact-forms'); ?></th>
|
| 997 |
+
<th scope="col" class="manage-column field-label"><?php _e("Label", 'custom-contact-forms'); ?></th>
|
| 998 |
+
<th scope="col" class="manage-column field-type"><?php _e("Type", 'custom-contact-forms'); ?></th>
|
| 999 |
+
<th scope="col" class="manage-column field-value"><?php _e("Initial Value", 'custom-contact-forms'); ?></th>
|
| 1000 |
+
<th scope="col" class="manage-column field-value"><?php _e("Required", 'custom-contact-forms'); ?></th>
|
| 1001 |
+
<th scope="col" class="manage-column field-maxlength"><?php _e("Maxlength", 'custom-contact-forms'); ?></th>
|
| 1002 |
+
<th scope="col" class="manage-column field-expand"></th>
|
| 1003 |
+
</tr>
|
| 1004 |
+
</thead>
|
| 1005 |
+
<tbody>
|
| 1006 |
+
<?php
|
| 1007 |
+
$fields = parent::selectAllFields();
|
| 1008 |
+
for ($i = 0, $z = 0; $i < count($fields); $i++, $z++) {
|
| 1009 |
+
if ($fields[$i]->user_field == 1) { $z--; continue;}
|
| 1010 |
+
$field_types = '<option>Text</option><option>Textarea</option><option>Hidden</option><option>Checkbox</option>';
|
| 1011 |
+
$field_types = str_replace('<option>'.$fields[$i]->field_type.'</option>', '<option selected="selected">'.$fields[$i]->field_type.'</option>', $field_types);
|
| 1012 |
+
|
| 1013 |
+
?>
|
| 1014 |
+
<tr class="row-field-<?php echo $fields[$i]->id; ?> <?php if ($z % 2 == 0) echo 'ccf-evenrow'; ?>">
|
| 1015 |
+
<td><input class="object-check" type="checkbox" value="1" name="objects[<?php echo $i; ?>][object_do]" /></td>
|
| 1016 |
+
<td><?php echo $fields[$i]->field_slug; ?></td>
|
| 1017 |
+
<td><?php if ($fields[$i]->field_slug == 'resetButton') { _e('None', 'custom-contact-forms'); } else { ?>
|
| 1018 |
+
<input type="text" name="objects[<?php echo $i; ?>][values][field_label]" maxlength="100" value="<?php echo $fields[$i]->field_label; ?>" />
|
| 1019 |
+
<?php } ?></td>
|
| 1020 |
+
<td><?php echo $fields[$i]->field_type; ?>
|
| 1021 |
+
<td><?php if ($fields[$i]->field_type != 'Checkbox') { ?>
|
| 1022 |
+
<input type="text" name="objects[<?php echo $i; ?>][values][field_value]" class="ccf-width75" maxlength="50" value="<?php echo $fields[$i]->field_value; ?>" />
|
| 1023 |
+
<?php } else {
|
| 1024 |
+
echo $fields[$i]->field_value;
|
| 1025 |
+
?>
|
| 1026 |
+
<?php } ?>
|
| 1027 |
+
</td>
|
| 1028 |
+
<td><?php if ($fields[$i]->field_slug == 'fixedEmail' || $fields[$i]->field_slug == 'emailSubject' || $fields[$i]->field_slug == 'fixedWebsite' || $fields[$i]->field_slug == 'usaStates' || $fields[$i]->field_slug == 'datePicker' || $fields[$i]->field_slug == 'allCountries') { ?>
|
| 1029 |
+
<select name="objects[<?php echo $i; ?>][values][field_required]">
|
| 1030 |
+
<option value="1">
|
| 1031 |
+
<?php _e("Yes", 'custom-contact-forms'); ?>
|
| 1032 |
+
</option>
|
| 1033 |
+
<option <?php if($fields[$i]->field_required != 1) echo 'selected="selected"'; ?> value="0">
|
| 1034 |
+
<?php _e("No", 'custom-contact-forms'); ?>
|
| 1035 |
+
</option>
|
| 1036 |
+
</select>
|
| 1037 |
+
<?php } else {
|
| 1038 |
+
if ($fields[$i]->field_slug == 'resetButton') {
|
| 1039 |
+
echo '-';
|
| 1040 |
+
} else {
|
| 1041 |
+
_e("Yes", 'custom-contact-forms');
|
| 1042 |
+
}
|
| 1043 |
+
}
|
| 1044 |
+
?>
|
| 1045 |
+
</td>
|
| 1046 |
+
<td><?php if ($fields[$i]->field_type != 'Checkbox' && $fields[$i]->field_slug != 'resetButton' && $fields[$i]->field_slug != 'allCountries' && $fields[$i]->field_slug != 'usaStates') { ?>
|
| 1047 |
+
<input type="text" class="ccf-width50" name="objects[<?php echo $i; ?>][values][field_maxlength]" value="<?php echo $fields[$i]->field_maxlength; ?>" />
|
| 1048 |
+
<?php } else { _e('None', 'custom-contact-forms'); } ?>
|
| 1049 |
+
</td>
|
| 1050 |
+
<td><input type="hidden" name="objects[<?php echo $i; ?>][object_type]" value="field" />
|
| 1051 |
+
<input type="hidden" class="object-id" name="objects[<?php echo $i; ?>][object_id]" value="<?php echo $fields[$i]->id; ?>" />
|
| 1052 |
+
<span class="fixed-fields-options-expand"></span>
|
| 1053 |
+
</tr>
|
| 1054 |
+
<tr class="row-field-<?php echo $fields[$i]->id; ?> <?php if ($z % 2 == 0) echo 'ccf-evenrow'; ?>">
|
| 1055 |
+
<td class="fixed-fields-extra-options" colspan="8">
|
| 1056 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e('If you manage a .CSS file for your theme, you could create a class in that file and add it to this field. If the form attaching this field is using a "Form Style" other than the default, styles inherited from the "Field Class" might be overwritten.', 'custom-contact-forms'); ?>">(?)</a>
|
| 1057 |
+
<label for="field_class">
|
| 1058 |
+
<?php _e('Field Class:', 'custom-contact-forms'); ?>
|
| 1059 |
+
</label>
|
| 1060 |
+
<input type="text" value="<?php echo $fields[$i]->field_class; ?>" name="objects[<?php echo $i; ?>][values][field_class]" />
|
| 1061 |
+
<?php if ($fields[$i]->field_slug != 'resetButton') { ?>
|
| 1062 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e('If this is filled out, a tooltip popover displaying this text will show when the field is selected.', 'custom-contact-forms'); ?>">(?)</a>
|
| 1063 |
+
<label for="field_instructions">
|
| 1064 |
+
<?php _e("Field Instructions:", 'custom-contact-forms'); ?>
|
| 1065 |
+
</label>
|
| 1066 |
+
<input type="text" name="objects[<?php echo $i; ?>][values][field_instructions]" class="ccf-width200" value="<?php echo $fields[$i]->field_instructions; ?>" />
|
| 1067 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e('This lets you customize the error message displayed when this field is required and left blank.', 'custom-contact-forms'); ?>">(?)</a>
|
| 1068 |
+
<label for="field_error">
|
| 1069 |
+
<?php _e("Field Error:", 'custom-contact-forms'); ?>
|
| 1070 |
+
</label>
|
| 1071 |
+
<input type="text" class="ccf-width200" name="objects[<?php echo $i; ?>][values][field_error]" value="<?php echo $fields[$i]->field_error; ?>" />
|
| 1072 |
+
<br />
|
| 1073 |
+
<?php } ?>
|
| 1074 |
+
<div class="field_descrip"><?php echo $GLOBALS['ccf_fixed_fields'][$fields[$i]->field_slug]; ?></div></td>
|
| 1075 |
+
</tr>
|
| 1076 |
+
<?php
|
| 1077 |
+
}
|
| 1078 |
+
?>
|
| 1079 |
+
</tbody>
|
| 1080 |
+
|
| 1081 |
+
<tfoot>
|
| 1082 |
+
<tr>
|
| 1083 |
+
<th scope="col" class="manage-column check-col"><input type="checkbox" class="checkall" /></th>
|
| 1084 |
+
<th scope="col" class="manage-column field-slug"><?php _e("Slug", 'custom-contact-forms'); ?></th>
|
| 1085 |
+
<th scope="col" class="manage-column field-label"><?php _e("Label", 'custom-contact-forms'); ?></th>
|
| 1086 |
+
<th scope="col" class="manage-column field-type"><?php _e("Type", 'custom-contact-forms'); ?></th>
|
| 1087 |
+
<th scope="col" class="manage-column field-value"><?php _e("Initial Value", 'custom-contact-forms'); ?></th>
|
| 1088 |
+
<th scope="col" class="manage-column field-value"><?php _e("Required", 'custom-contact-forms'); ?></th>
|
| 1089 |
+
<th scope="col" class="manage-column field-maxlength"><?php _e("Maxlength", 'custom-contact-forms'); ?></th>
|
| 1090 |
+
<th scope="col" class="manage-column field-expand"></th>
|
| 1091 |
+
</tr>
|
| 1092 |
+
</tfoot>
|
| 1093 |
+
</table>
|
| 1094 |
+
<select class="bulk-dropdown" name="object_bulk_action">
|
| 1095 |
+
<option value="0"><?php _e('Bulk Actions', 'custom-contact-forms'); ?></option>
|
| 1096 |
+
<option value="edit"><?php _e('Save', 'custom-contact-forms'); ?></option>
|
| 1097 |
+
</select> <input type="submit" class="bulk-apply" name="object_bulk_apply" value="<?php _e('Apply', 'custom-contact-forms'); ?>" /> <img src="<?php echo plugins_url(); ?>/custom-contact-forms/images/wpspin_light.gif" width="16" height="16" class="loading-img" />
|
| 1098 |
+
</form>
|
| 1099 |
+
</div>
|
| 1100 |
+
|
| 1101 |
+
<div id="field-options">
|
| 1102 |
+
<div id="manage-field-options" class="postbox">
|
| 1103 |
+
<h3 class="hndle"><span>
|
| 1104 |
+
<?php _e("Manage Field Options", 'custom-contact-forms'); ?>
|
| 1105 |
+
</span></h3>
|
| 1106 |
+
<div class="inside">
|
| 1107 |
+
<form class="ccf-edit-ajax" method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 1108 |
+
<input type="hidden" name="selected_tab" value="field-options" />
|
| 1109 |
+
<table cellpadding="0" cellspacing="0">
|
| 1110 |
+
<thead>
|
| 1111 |
+
<tr>
|
| 1112 |
+
<th><input class="checkall" type="checkbox" /></th>
|
| 1113 |
+
<th><?php _e("Slug", 'custom-contact-forms'); ?></th>
|
| 1114 |
+
<th><?php _e("Label", 'custom-contact-forms'); ?></th>
|
| 1115 |
+
<th><?php _e("Value", 'custom-contact-forms'); ?></th>
|
| 1116 |
+
<th><?php _e("Is Dead", 'custom-contact-forms'); ?></th>
|
| 1117 |
+
</tr>
|
| 1118 |
+
</thead>
|
| 1119 |
+
<tfoot>
|
| 1120 |
+
<tr>
|
| 1121 |
+
<th><input class="checkall" type="checkbox" /></th>
|
| 1122 |
+
<th><?php _e("Slug", 'custom-contact-forms'); ?></th>
|
| 1123 |
+
<th><?php _e("Label", 'custom-contact-forms'); ?></th>
|
| 1124 |
+
<th><?php _e("Value", 'custom-contact-forms'); ?></th>
|
| 1125 |
+
<th><?php _e("Is Dead", 'custom-contact-forms'); ?></th>
|
| 1126 |
+
</tr>
|
| 1127 |
+
</tfoot>
|
| 1128 |
+
<tbody>
|
| 1129 |
+
<?php
|
| 1130 |
+
$options = parent::selectAllFieldOptions(1);
|
| 1131 |
+
$option_count = count($options);
|
| 1132 |
+
$i = 0;
|
| 1133 |
+
foreach ($options as $option) {
|
| 1134 |
+
?>
|
| 1135 |
+
<tr class="row-field_option-<?php echo $option->id; ?> <?php if ($i % 2 == 1) echo 'evenrow-field-options'; ?>">
|
| 1136 |
+
<td><input type="checkbox" class="object-check" name="objects[<?php echo $i; ?>][object_do]" value="1" /> </td>
|
| 1137 |
+
<td><input type="hidden" name="objects[<?php echo $i; ?>][object_type]" value="field_option" />
|
| 1138 |
+
|
| 1139 |
+
<input class="object-id" type="hidden" name="objects[<?php echo $i; ?>][object_id]" value="<?php echo $option->id; ?>" />
|
| 1140 |
+
|
| 1141 |
+
<input type="text" maxlength="20" name="<?php ?>objects[<?php echo $i; ?>][values][option_slug]" value="<?php echo $option->option_slug; ?>" class="ccf-width50" /></td>
|
| 1142 |
+
<td><input type="text" name="objects[<?php echo $i; ?>][values][option_label]" value="<?php echo $option->option_label; ?>" class="ccf-width100" /></td>
|
| 1143 |
+
<td><input type="text" name="objects[<?php echo $i; ?>][values][option_value]" value="<?php echo $option->option_value; ?>" class="ccf-width100" /></td>
|
| 1144 |
+
<td><select name="objects[<?php echo $i; ?>][values][option_dead]"><option value="0"><?php _e('No', 'custom-contact-forms'); ?></option><option <?php if ($option->option_dead == 1) echo 'selected="selected"'; ?> value="1"><?php _e('Yes', 'custom-contact-forms'); ?></option></select></td>
|
| 1145 |
+
|
| 1146 |
+
</tr>
|
| 1147 |
+
<?php
|
| 1148 |
+
$i++;
|
| 1149 |
+
} if (empty($options)) {
|
| 1150 |
+
?>
|
| 1151 |
+
<tr>
|
| 1152 |
+
<td class="ccf-center"><?php _e("No field options have been created.", 'custom-contact-forms'); ?></td>
|
| 1153 |
+
</tr>
|
| 1154 |
+
<?php
|
| 1155 |
+
}
|
| 1156 |
+
?>
|
| 1157 |
+
</tbody>
|
| 1158 |
+
</table>
|
| 1159 |
+
<select class="bulk-dropdown" name="object_bulk_action">
|
| 1160 |
+
<option value="0"><?php _e('Bulk Actions', 'custom-contact-forms'); ?></option>
|
| 1161 |
+
<option value="edit"><?php _e('Save', 'custom-contact-forms'); ?></option>
|
| 1162 |
+
<option value="delete"><?php _e('Delete', 'custom-contact-forms'); ?></option></select>
|
| 1163 |
+
<input type="submit" class="bulk-apply" name="object_bulk_apply" value="<?php _e('Apply', 'custom-contact-forms'); ?>" /> <img src="<?php echo plugins_url(); ?>/custom-contact-forms/images/wpspin_light.gif" width="16" height="16" class="loading-img" />
|
| 1164 |
+
</form>
|
| 1165 |
+
</div>
|
| 1166 |
+
</div>
|
| 1167 |
+
|
| 1168 |
+
|
| 1169 |
+
<div id="create-field-options" class="postbox">
|
| 1170 |
+
<h3 class="hndle"><span>
|
| 1171 |
+
<?php _e("Create A Field Option", 'custom-contact-forms'); ?>
|
| 1172 |
+
</span></h3>
|
| 1173 |
+
<div class="inside">
|
| 1174 |
+
<form id="ccf-create-field-option" method="post" action="<?php echo $_SERVER['REQUEST_URI']?>">
|
| 1175 |
+
<input type="hidden" name="selected_tab" value="field-options" />
|
| 1176 |
+
<ul>
|
| 1177 |
+
<li>
|
| 1178 |
+
<label for="object[option_slug]">*
|
| 1179 |
+
<?php _e("Option Slug:", 'custom-contact-forms'); ?>
|
| 1180 |
+
</label>
|
| 1181 |
+
<input maxlength="20" type="text" name="object[option_slug]" />
|
| 1182 |
+
<br />
|
| 1183 |
+
<?php _e("Used to identify this option, solely for admin purposes; must be unique, and contain only letters, numbers, and underscores. Example: 'slug_one'", 'custom-contact-forms'); ?>
|
| 1184 |
+
</li>
|
| 1185 |
+
<li>
|
| 1186 |
+
<label for="object[option_label]">*
|
| 1187 |
+
<?php _e("Option Label:", 'custom-contact-forms'); ?>
|
| 1188 |
+
</label>
|
| 1189 |
+
<input type="text" name="object[option_label]" />
|
| 1190 |
+
<br />
|
| 1191 |
+
<?php _e("This is what is shown to the user in the dropdown or radio field. Example: 'United States'", 'custom-contact-forms'); ?>
|
| 1192 |
+
</li>
|
| 1193 |
+
<li>
|
| 1194 |
+
<label for="object[option_value]">
|
| 1195 |
+
<?php _e("Option Value:", 'custom-contact-forms'); ?>
|
| 1196 |
+
</label>
|
| 1197 |
+
<input type="text" name="object[option_value]" /> <a href="javascript:void(0)" class="toollink" title="<?php _e("This is the actual value of the option which is not shown to the user. This can be the same thing as the label. An example pairing of label => value is: 'The color green' => 'green' or 'Yes' => '1'.", 'custom-contact-forms'); ?>">(?)</a>
|
| 1198 |
+
<br />
|
| 1199 |
+
<?php _e('This is the actual value of the option which is not shown to the user. This can be the same thing as the label. An example pairing of label => value is: "The color green" => "green" or "Yes" => "1".', 'custom-contact-forms'); ?>
|
| 1200 |
+
</li>
|
| 1201 |
+
<li>
|
| 1202 |
+
<label for="object[option_dead]"><?php _e("Is Dead Option:", 'custom-contact-forms'); ?></label>
|
| 1203 |
+
<select name="object[option_dead]"><option value="0"><?php _e('No', 'custom-contact-forms'); ?></option><option value="1"><?php _e('Yes', 'custom-contact-forms'); ?></option></select>
|
| 1204 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e("A dead option is something like 'Please Select One'. This is a useful tool for required dropdown fields. If a dead option is submitted by a user for a required dropdown field, then the user will have to go back and fill out the field again.", 'custom-contact-forms'); ?>">(?)</a>
|
| 1205 |
+
</li>
|
| 1206 |
+
<li>
|
| 1207 |
+
<input name="object_type" type="hidden" value="field_option" />
|
| 1208 |
+
<input type="submit" class="object-action" name="object_create" value="<?php _e("Create Field Option", 'custom-contact-forms'); ?>" />
|
| 1209 |
+
|
| 1210 |
+
</li>
|
| 1211 |
+
</ul>
|
| 1212 |
+
</form>
|
| 1213 |
+
</div>
|
| 1214 |
+
</div>
|
| 1215 |
+
</div>
|
| 1216 |
+
|
| 1217 |
+
|
| 1218 |
+
<div id="styles">
|
| 1219 |
+
<div id="create-styles" class="postbox">
|
| 1220 |
+
<h3 class="hndle"><span>
|
| 1221 |
+
<?php _e("Create A Style for Your Forms", 'custom-contact-forms'); ?>
|
| 1222 |
+
</span></h3>
|
| 1223 |
+
<div class="inside">
|
| 1224 |
+
<p>
|
| 1225 |
+
<?php _e("Use this manager to create styles for your forms. Each field is already filled out with nice look defaults. It is recommended you simply input a slug and click create to see the defaults before you start changing values.", 'custom-contact-forms'); ?>
|
| 1226 |
+
</p>
|
| 1227 |
+
<form id="ccf-create-style" method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 1228 |
+
<input type="hidden" name="selected_tab" value="styles" />
|
| 1229 |
+
<ul class="style_left">
|
| 1230 |
+
<li>
|
| 1231 |
+
<label for="style_slug">*
|
| 1232 |
+
<?php _e("Style Slug:", 'custom-contact-forms'); ?>
|
| 1233 |
+
</label>
|
| 1234 |
+
<input type="text" maxlength="30" class="ccf-width75" name="object[style_slug]" />
|
| 1235 |
+
<?php _e("(Must be unique)", 'custom-contact-forms'); ?>
|
| 1236 |
+
</li>
|
| 1237 |
+
<li>
|
| 1238 |
+
<label for="title_fontsize">
|
| 1239 |
+
<?php _e("Title Font Size:", 'custom-contact-forms'); ?>
|
| 1240 |
+
</label>
|
| 1241 |
+
<input type="text" maxlength="20" value="1.2em" class="ccf-width75" name="object[title_fontsize]" />
|
| 1242 |
+
<?php _e("(ex: 10pt, 10px, 1em)", 'custom-contact-forms'); ?>
|
| 1243 |
+
</li>
|
| 1244 |
+
<li>
|
| 1245 |
+
<label for="title_fontcolor">
|
| 1246 |
+
<?php _e("Title Font Color:", 'custom-contact-forms'); ?>
|
| 1247 |
+
</label>
|
| 1248 |
+
<input type="text" maxlength="20" value="333333" class="ccf-width75 colorfield" name="object[title_fontcolor]" />
|
| 1249 |
+
<?php _e("(ex: FF0000)", 'custom-contact-forms'); ?>
|
| 1250 |
+
</li>
|
| 1251 |
+
<li>
|
| 1252 |
+
<label for="label_width">
|
| 1253 |
+
<?php _e("Label Width:", 'custom-contact-forms'); ?>
|
| 1254 |
+
</label>
|
| 1255 |
+
<input type="text" maxlength="20" value="200px" class="ccf-width75" name="object[label_width]" />
|
| 1256 |
+
<?php _e("(ex: 100px or 20%)", 'custom-contact-forms'); ?>
|
| 1257 |
+
</li>
|
| 1258 |
+
<li>
|
| 1259 |
+
<label for="label_fontsize">
|
| 1260 |
+
<?php _e("Label Font Size:", 'custom-contact-forms'); ?>
|
| 1261 |
+
</label>
|
| 1262 |
+
<input type="text" maxlength="20" value="1em" class="ccf-width75" name="object[label_fontsize]" />
|
| 1263 |
+
<?php _e("(ex: 10px, 10pt, 1em)", 'custom-contact-forms'); ?>
|
| 1264 |
+
</li>
|
| 1265 |
+
<li>
|
| 1266 |
+
<label for="label_fontcolor">
|
| 1267 |
+
<?php _e("Label Font Color:", 'custom-contact-forms'); ?>
|
| 1268 |
+
</label>
|
| 1269 |
+
<input type="text" maxlength="20" value="333333" class="ccf-width75 colorfield" name="object[label_fontcolor]" />
|
| 1270 |
+
<?php _e("(ex: FF0000)", 'custom-contact-forms'); ?>
|
| 1271 |
+
</li>
|
| 1272 |
+
<li>
|
| 1273 |
+
<label for="input_width">
|
| 1274 |
+
<?php _e("Text Field Width:", 'custom-contact-forms'); ?>
|
| 1275 |
+
</label>
|
| 1276 |
+
<input type="text" maxlength="20" value="200px" class="ccf-width75" name="object[input_width]" />
|
| 1277 |
+
<?php _e("(ex: 100px or 100%)", 'custom-contact-forms'); ?>
|
| 1278 |
+
</li>
|
| 1279 |
+
<li>
|
| 1280 |
+
<label for="textarea_width">
|
| 1281 |
+
<?php _e("Textarea Field Width:", 'custom-contact-forms'); ?>
|
| 1282 |
+
</label>
|
| 1283 |
+
<input type="text" maxlength="20" value="200px" class="ccf-width75" name="object[textarea_width]" />
|
| 1284 |
+
<?php _e("(ex: 100px or 100%)", 'custom-contact-forms'); ?>
|
| 1285 |
+
</li>
|
| 1286 |
+
<li>
|
| 1287 |
+
<label for="textarea_height">
|
| 1288 |
+
<?php _e("Textarea Field Height:", 'custom-contact-forms'); ?>
|
| 1289 |
+
</label>
|
| 1290 |
+
<input type="text" maxlength="20" value="90px" class="ccf-width75" name="object[textarea_height]" />
|
| 1291 |
+
<?php _e("(ex: 100px or 100%)", 'custom-contact-forms'); ?>
|
| 1292 |
+
</li>
|
| 1293 |
+
<li>
|
| 1294 |
+
<label for="field_fontsize">
|
| 1295 |
+
<?php _e("Field Font Size:", 'custom-contact-forms'); ?>
|
| 1296 |
+
</label>
|
| 1297 |
+
<input type="text" maxlength="20" value="1.3em" class="ccf-width75" name="object[field_fontsize]" />
|
| 1298 |
+
<?php _e("(ex: 10px, 10pt, 1em", 'custom-contact-forms'); ?>
|
| 1299 |
+
</li>
|
| 1300 |
+
<li>
|
| 1301 |
+
<label for="field_fontcolor">
|
| 1302 |
+
<?php _e("Field Font Color:", 'custom-contact-forms'); ?>
|
| 1303 |
+
</label>
|
| 1304 |
+
<input type="text" maxlength="20" value="333333" class="ccf-width75 colorfield" name="object[field_fontcolor]" />
|
| 1305 |
+
<?php _e("(ex: 333333)", 'custom-contact-forms'); ?>
|
| 1306 |
+
</li>
|
| 1307 |
+
<li>
|
| 1308 |
+
<label for="field_borderstyle">
|
| 1309 |
+
<?php _e("Field Border Style:", 'custom-contact-forms'); ?>
|
| 1310 |
+
</label>
|
| 1311 |
+
<select class="ccf-width75" name="object[field_borderstyle]">
|
| 1312 |
+
<?php echo str_replace('<option>solid</option>', '<option selected="selected">solid</option>', $border_style_options); ?>
|
| 1313 |
+
</select>
|
| 1314 |
+
</li>
|
| 1315 |
+
<li>
|
| 1316 |
+
<label for="form_margin">
|
| 1317 |
+
<?php _e("Form Margin:", 'custom-contact-forms'); ?>
|
| 1318 |
+
</label>
|
| 1319 |
+
<input type="text" maxlength="20" value="7px" class="ccf-width75" name="object[form_margin]" />
|
| 1320 |
+
<?php _e("(ex: 5px or 1em)", 'custom-contact-forms'); ?>
|
| 1321 |
+
</li>
|
| 1322 |
+
<li>
|
| 1323 |
+
<label for="label_margin">
|
| 1324 |
+
<?php _e("Label Margin:", 'custom-contact-forms'); ?>
|
| 1325 |
+
</label>
|
| 1326 |
+
<input type="text" maxlength="20" value="5px" class="ccf-width75" name="object[label_margin]" />
|
| 1327 |
+
<?php _e("(ex: 5px or 1em)", 'custom-contact-forms'); ?>
|
| 1328 |
+
</li>
|
| 1329 |
+
<li>
|
| 1330 |
+
<label for="textarea_backgroundcolor">
|
| 1331 |
+
<?php _e("Textarea Background Color:", 'custom-contact-forms'); ?>
|
| 1332 |
+
</label>
|
| 1333 |
+
<input type="text" maxlength="20" value="f5f5f5" class="ccf-width75 colorfield" name="object[textarea_backgroundcolor]" />
|
| 1334 |
+
<?php _e("(ex: FF0000)", 'custom-contact-forms'); ?>
|
| 1335 |
+
</li>
|
| 1336 |
+
<li>
|
| 1337 |
+
<label for="success_popover_fontcolor">
|
| 1338 |
+
<?php _e("Success Popover Font Color:", 'custom-contact-forms'); ?>
|
| 1339 |
+
</label>
|
| 1340 |
+
<input type="text" maxlength="20" value="333333" class="ccf-width75 colorfield" name="object[success_popover_fontcolor]" />
|
| 1341 |
+
<?php _e("(ex: 333333)", 'custom-contact-forms'); ?>
|
| 1342 |
+
</li>
|
| 1343 |
+
<li>
|
| 1344 |
+
<label for="success_popover_title_fontsize">
|
| 1345 |
+
<?php _e("Success Popover Title Font Size:", 'custom-contact-forms'); ?>
|
| 1346 |
+
</label>
|
| 1347 |
+
<input type="text" maxlength="20" value="15px" class="ccf-width75" name="object[success_popover_title_fontsize]" />
|
| 1348 |
+
<?php _e("(ex: 12px, 1em, 100%)", 'custom-contact-forms'); ?>
|
| 1349 |
+
</li>
|
| 1350 |
+
<li>
|
| 1351 |
+
<label for="form_backgroundcolor">
|
| 1352 |
+
<?php _e("Form Background Color:", 'custom-contact-forms'); ?>
|
| 1353 |
+
</label>
|
| 1354 |
+
<input type="text" maxlength="20" value="ffffff" class="ccf-width75 colorfield" name="object[form_backgroundcolor]" />
|
| 1355 |
+
<?php _e("(ex: 12px, 1em, 100%)", 'custom-contact-forms'); ?>
|
| 1356 |
+
</li>
|
| 1357 |
+
<li>
|
| 1358 |
+
<label for="tooltip_backgroundcolor">
|
| 1359 |
+
<?php _e("Tooltip Background Color:", 'custom-contact-forms'); ?>
|
| 1360 |
+
</label>
|
| 1361 |
+
<input type="text" maxlength="20" value="000000" class="ccf-width75 colorfield" name="object[tooltip_backgroundcolor]" />
|
| 1362 |
+
<?php _e("(ex: 000000 or black)", 'custom-contact-forms'); ?>
|
| 1363 |
+
</li>
|
| 1364 |
+
</ul>
|
| 1365 |
+
<ul class="style_right">
|
| 1366 |
+
<li>
|
| 1367 |
+
<label for="input_width">
|
| 1368 |
+
<?php _e("Field Border Color:", 'custom-contact-forms'); ?>
|
| 1369 |
+
</label>
|
| 1370 |
+
<input type="text" maxlength="20" value="999999" class="ccf-width75 colorfield" name="object[field_bordercolor]" />
|
| 1371 |
+
<?php _e("(ex: 100px or 100%)", 'custom-contact-forms'); ?>
|
| 1372 |
+
</li>
|
| 1373 |
+
<li>
|
| 1374 |
+
<label for="form_borderstyle">
|
| 1375 |
+
<?php _e("Form Border Style:", 'custom-contact-forms'); ?>
|
| 1376 |
+
</label>
|
| 1377 |
+
<select class="ccf-width75" name="object[form_borderstyle]">
|
| 1378 |
+
<?php echo $border_style_options; ?>
|
| 1379 |
+
</select>
|
| 1380 |
+
</li>
|
| 1381 |
+
<li>
|
| 1382 |
+
<label for="form_bordercolor">
|
| 1383 |
+
<?php _e("Form Border Color:", 'custom-contact-forms'); ?>
|
| 1384 |
+
</label>
|
| 1385 |
+
<input type="text" maxlength="20" value="ffffff" class="ccf-width75 colorfield" name="object[form_bordercolor]" />
|
| 1386 |
+
<?php _e("(ex: 000000)", 'custom-contact-forms'); ?>
|
| 1387 |
+
</li>
|
| 1388 |
+
<li>
|
| 1389 |
+
<label for="form_borderwidth">
|
| 1390 |
+
<?php _e("Form Border Width:", 'custom-contact-forms'); ?>
|
| 1391 |
+
</label>
|
| 1392 |
+
<input type="text" maxlength="20" value="0px" class="ccf-width75" name="object[form_borderwidth]" />
|
| 1393 |
+
<?php _e("(ex: 1px)", 'custom-contact-forms'); ?>
|
| 1394 |
+
</li>
|
| 1395 |
+
<li>
|
| 1396 |
+
<label for="form_borderwidth">
|
| 1397 |
+
<?php _e("Form Width:", 'custom-contact-forms'); ?>
|
| 1398 |
+
</label>
|
| 1399 |
+
<input type="text" maxlength="20" value="100%" class="ccf-width75" name="object[form_width]" />
|
| 1400 |
+
<?php _e("(ex: 100px or 50%)", 'custom-contact-forms'); ?>
|
| 1401 |
+
</li>
|
| 1402 |
+
<li>
|
| 1403 |
+
<label for="form_borderwidth">
|
| 1404 |
+
<?php _e("Form Font Family:", 'custom-contact-forms'); ?>
|
| 1405 |
+
</label>
|
| 1406 |
+
<input type="text" maxlength="120" value="Verdana, tahoma, arial" class="ccf-width75" name="object[form_fontfamily]" />
|
| 1407 |
+
<?php _e("(ex: Verdana, Tahoma, Arial)", 'custom-contact-forms'); ?>
|
| 1408 |
+
</li>
|
| 1409 |
+
<li>
|
| 1410 |
+
<label for="submit_width">
|
| 1411 |
+
<?php _e("Button Width:", 'custom-contact-forms'); ?>
|
| 1412 |
+
</label>
|
| 1413 |
+
<input type="text" maxlength="20" value="auto" class="ccf-width75" name="object[submit_width]" />
|
| 1414 |
+
<?php _e("(ex: 100px, 30%, auto)", 'custom-contact-forms'); ?>
|
| 1415 |
+
</li>
|
| 1416 |
+
<li>
|
| 1417 |
+
<label for="submit_height">
|
| 1418 |
+
<?php _e("Button Height:", 'custom-contact-forms'); ?>
|
| 1419 |
+
</label>
|
| 1420 |
+
<input type="text" maxlength="20" value="30px" class="ccf-width75" name="object[submit_height]" />
|
| 1421 |
+
<?php _e("(ex: 100px or 30%)", 'custom-contact-forms'); ?>
|
| 1422 |
+
</li>
|
| 1423 |
+
<li>
|
| 1424 |
+
<label for="submit_fontsize">
|
| 1425 |
+
<?php _e("Button Font Size:", 'custom-contact-forms'); ?>
|
| 1426 |
+
</label>
|
| 1427 |
+
<input type="text" maxlength="20" value="1.1em" class="ccf-width75" name="object[submit_fontsize]" />
|
| 1428 |
+
<?php _e("(ex: 10px, 10pt, 1em)", 'custom-contact-forms'); ?>
|
| 1429 |
+
</li>
|
| 1430 |
+
<li>
|
| 1431 |
+
<label for="submit_fontcolor">
|
| 1432 |
+
<?php _e("Button Font Color:", 'custom-contact-forms'); ?>
|
| 1433 |
+
</label>
|
| 1434 |
+
<input type="text" maxlength="20" value="333333" class="ccf-width75 colorfield" name="object[submit_fontcolor]" />
|
| 1435 |
+
<?php _e("(ex: FF0000)", 'custom-contact-forms'); ?>
|
| 1436 |
+
</li>
|
| 1437 |
+
<li>
|
| 1438 |
+
<label for="field_backgroundcolor">
|
| 1439 |
+
<?php _e("Field Background Color:", 'custom-contact-forms'); ?>
|
| 1440 |
+
</label>
|
| 1441 |
+
<input type="text" maxlength="20" value="f5f5f5" class="ccf-width75 colorfield" name="object[field_backgroundcolor]" />
|
| 1442 |
+
<?php _e("(ex: FF0000)", 'custom-contact-forms'); ?>
|
| 1443 |
+
</li>
|
| 1444 |
+
<li>
|
| 1445 |
+
<label for="form_padding">
|
| 1446 |
+
<?php _e("Form Padding:", 'custom-contact-forms'); ?>
|
| 1447 |
+
</label>
|
| 1448 |
+
<input type="text" maxlength="20" value="8px" class="ccf-width75" name="object[form_padding]" />
|
| 1449 |
+
<?php _e("(ex: 5px or 1em)", 'custom-contact-forms'); ?>
|
| 1450 |
+
</li>
|
| 1451 |
+
<li>
|
| 1452 |
+
<label for="title_margin">
|
| 1453 |
+
<?php _e("Title Margin:", 'custom-contact-forms'); ?>
|
| 1454 |
+
</label>
|
| 1455 |
+
<input type="text" maxlength="20" value="5px" class="ccf-width75" name="object[title_margin]" />
|
| 1456 |
+
<?php _e("(ex: 5px or 1em)", 'custom-contact-forms'); ?>
|
| 1457 |
+
</li>
|
| 1458 |
+
<li>
|
| 1459 |
+
<label for="title_margin">
|
| 1460 |
+
<?php _e("Dropdown Width:", 'custom-contact-forms'); ?>
|
| 1461 |
+
</label>
|
| 1462 |
+
<input type="text" maxlength="20" value="auto" class="ccf-width75" name="object[dropdown_width]" />
|
| 1463 |
+
<?php _e("(ex: 30px, 20%, or auto)", 'custom-contact-forms'); ?>
|
| 1464 |
+
</li>
|
| 1465 |
+
<li>
|
| 1466 |
+
<label for="success_popover_bordercolor">
|
| 1467 |
+
<?php _e("Success Popover Border Color:", 'custom-contact-forms'); ?>
|
| 1468 |
+
</label>
|
| 1469 |
+
<input type="text" maxlength="20" value="efefef" class="ccf-width75 colorfield" name="object[success_popover_bordercolor]" />
|
| 1470 |
+
<?php _e("(ex: FF0000)", 'custom-contact-forms'); ?>
|
| 1471 |
+
</li>
|
| 1472 |
+
<li>
|
| 1473 |
+
<label for="success_popover_fontsize">
|
| 1474 |
+
<?php _e("Success Popover Font Size:", 'custom-contact-forms'); ?>
|
| 1475 |
+
</label>
|
| 1476 |
+
<input type="text" maxlength="20" value="12px" class="ccf-width75" name="object[success_popover_fontsize]" />
|
| 1477 |
+
<?php _e("(ex: 12px, 1em, 100%)", 'custom-contact-forms'); ?>
|
| 1478 |
+
</li>
|
| 1479 |
+
<li>
|
| 1480 |
+
<label for="success_popover_height">
|
| 1481 |
+
<?php _e("Success Popover Height:", 'custom-contact-forms'); ?>
|
| 1482 |
+
</label>
|
| 1483 |
+
<input type="text" maxlength="20" value="200px" class="ccf-width75" name="object[success_popover_height]" />
|
| 1484 |
+
<?php _e("(ex: 200px, 6em, 50%)", 'custom-contact-forms'); ?>
|
| 1485 |
+
</li>
|
| 1486 |
+
<li>
|
| 1487 |
+
<label for="field_borderround">
|
| 1488 |
+
<?php _e("Field Border Roundness:", 'custom-contact-forms'); ?>
|
| 1489 |
+
</label>
|
| 1490 |
+
<input type="text" maxlength="20" value="6px" class="ccf-width75" name="object[field_borderround]" />
|
| 1491 |
+
<?php _e("(ex: 6px, or 0px)", 'custom-contact-forms'); ?>
|
| 1492 |
+
</li>
|
| 1493 |
+
<li>
|
| 1494 |
+
<label for="tooltip_fontsize">
|
| 1495 |
+
<?php _e("Tooltip", 'custom-contact-forms'); ?>
|
| 1496 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e("A tooltip is the little box that fades in displaying 'Field Instructions' when a user selects a particular field.", 'custom-contact-forms'); ?>">(?)</a>
|
| 1497 |
+
<?php _e("Font Size:", 'custom-contact-forms'); ?>
|
| 1498 |
+
</label>
|
| 1499 |
+
<input type="text" maxlength="20" value="12px" class="ccf-width75" name="object[tooltip_fontsize]" />
|
| 1500 |
+
<?php _e("(ex: 12px, 1em, 100%)", 'custom-contact-forms'); ?>
|
| 1501 |
+
</li>
|
| 1502 |
+
<li>
|
| 1503 |
+
<label for="tooltip_fontcolor">
|
| 1504 |
+
<?php _e("Tooltip Font Color:", 'custom-contact-forms'); ?>
|
| 1505 |
+
</label>
|
| 1506 |
+
<input type="text" maxlength="20" value="ffffff" class="ccf-width75 colorfield" name="object[tooltip_fontcolor]" />
|
| 1507 |
+
<?php _e("(ex: ffffff or white)", 'custom-contact-forms'); ?>
|
| 1508 |
+
</li>
|
| 1509 |
+
<li>
|
| 1510 |
+
<input name="object_type" type="hidden" value="style" />
|
| 1511 |
+
<input type="submit" value="<?php _e("Create Style", 'custom-contact-forms'); ?>" name="object_create" class="create-button" />
|
| 1512 |
+
</li>
|
| 1513 |
+
</ul>
|
| 1514 |
+
</form>
|
| 1515 |
+
</div>
|
| 1516 |
+
</div>
|
| 1517 |
+
<a name="manage-styles"></a>
|
| 1518 |
+
<h3 class="manage-h3">
|
| 1519 |
+
<?php _e("Manage Form Styles", 'custom-contact-forms'); ?>
|
| 1520 |
+
</h3>
|
| 1521 |
+
<form class="ccf-edit-ajax" method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 1522 |
+
<input type="hidden" name="selected_tab" value="styles" />
|
| 1523 |
+
<table class="widefat post" id="manage-styles" cellspacing="0">
|
| 1524 |
+
<thead>
|
| 1525 |
+
<tr>
|
| 1526 |
+
<th scope="col" class="manage-column"><input type="checkbox" class="checkall" /></th>
|
| 1527 |
+
<th scope="col" class="manage-column"></th>
|
| 1528 |
+
<th scope="col" class="manage-column"></th>
|
| 1529 |
+
<th scope="col" class="manage-column"></th>
|
| 1530 |
+
<th scope="col" class="manage-column"></th>
|
| 1531 |
+
<th scope="col" class="manage-column"></th>
|
| 1532 |
+
</tr>
|
| 1533 |
+
</thead>
|
| 1534 |
+
<tbody>
|
| 1535 |
+
<?php
|
| 1536 |
+
$styles = parent::selectAllStyles();
|
| 1537 |
+
$i = 0;
|
| 1538 |
+
foreach ($styles as $style) {
|
| 1539 |
+
?>
|
| 1540 |
+
<tr class="row-style-<?php echo $style->id; ?> <?php if ($i % 2 == 0) echo 'ccf-evenrow'; ?>">
|
| 1541 |
+
<td> <label><input type="checkbox" class="object-check" value="1" name="objects[<?php echo $i; ?>][object_do]" />
|
| 1542 |
+
* <?php _e("Slug:", 'custom-contact-forms'); ?>
|
| 1543 |
+
</label>
|
| 1544 |
+
<input type="text" maxlength="30" value="<?php echo $style->style_slug; ?>" name="objects[<?php echo $i; ?>][values][style_slug]" />
|
| 1545 |
+
<br />
|
| 1546 |
+
<label>
|
| 1547 |
+
<?php _e("Font Family:", 'custom-contact-forms'); ?>
|
| 1548 |
+
</label>
|
| 1549 |
+
<input type="text" maxlength="120" value="<?php echo $style->form_fontfamily; ?>" name="objects[<?php echo $i; ?>][values][form_fontfamily]" />
|
| 1550 |
+
<br />
|
| 1551 |
+
<label>
|
| 1552 |
+
<?php _e("Textarea Background", 'custom-contact-forms'); ?>
|
| 1553 |
+
<br />
|
| 1554 |
+
<?php _e("Color:", 'custom-contact-forms'); ?>
|
| 1555 |
+
</label>
|
| 1556 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->textarea_backgroundcolor; ?>" name="objects[<?php echo $i; ?>][values][textarea_backgroundcolor]" />
|
| 1557 |
+
<br />
|
| 1558 |
+
<label>
|
| 1559 |
+
<?php _e("Success Popover", 'custom-contact-forms'); ?>
|
| 1560 |
+
<br />
|
| 1561 |
+
<?php _e("Border Color:", 'custom-contact-forms'); ?>
|
| 1562 |
+
</label>
|
| 1563 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->success_popover_bordercolor; ?>" name="objects[<?php echo $i; ?>][values][success_popover_bordercolor]" />
|
| 1564 |
+
<br />
|
| 1565 |
+
<label>
|
| 1566 |
+
<?php _e("Tooltip", 'custom-contact-forms'); ?>
|
| 1567 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e("A tooltip is the little box that fades in displaying 'Field Instructions' when a user selects a particular field.", 'custom-contact-forms'); ?>">(?)</a>
|
| 1568 |
+
<?php _e("Font Color:", 'custom-contact-forms'); ?>
|
| 1569 |
+
</label>
|
| 1570 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->tooltip_fontcolor; ?>" name="objects[<?php echo $i; ?>][values][tooltip_fontcolor]" />
|
| 1571 |
+
</td>
|
| 1572 |
+
<td><label>
|
| 1573 |
+
<?php _e("Form Width:", 'custom-contact-forms'); ?>
|
| 1574 |
+
</label>
|
| 1575 |
+
<input type="text" maxlength="20" value="<?php echo $style->form_width; ?>" name="objects[<?php echo $i; ?>][values][form_width]" />
|
| 1576 |
+
<br />
|
| 1577 |
+
<label>
|
| 1578 |
+
<?php _e("Text Field Width:", 'custom-contact-forms'); ?>
|
| 1579 |
+
</label>
|
| 1580 |
+
<input type="text" maxlength="20" value="<?php echo $style->input_width; ?>" name="objects[<?php echo $i; ?>][values][input_width]" />
|
| 1581 |
+
<br />
|
| 1582 |
+
<label>
|
| 1583 |
+
<?php _e("Textarea Width:", 'custom-contact-forms'); ?>
|
| 1584 |
+
</label>
|
| 1585 |
+
<input type="text" maxlength="20" value="<?php echo $style->textarea_width; ?>" name="objects[<?php echo $i; ?>][values][textarea_width]" />
|
| 1586 |
+
<br />
|
| 1587 |
+
<label>
|
| 1588 |
+
<?php _e("Textarea Height:", 'custom-contact-forms'); ?>
|
| 1589 |
+
</label>
|
| 1590 |
+
<input type="text" maxlength="20" value="<?php echo $style->textarea_height; ?>" name="objects[<?php echo $i; ?>][values][textarea_height]" />
|
| 1591 |
+
<br />
|
| 1592 |
+
<label>
|
| 1593 |
+
<?php _e("Dropdown Width:", 'custom-contact-forms'); ?>
|
| 1594 |
+
</label>
|
| 1595 |
+
<input type="text" maxlength="20" value="<?php echo $style->dropdown_width; ?>" name="objects[<?php echo $i; ?>][values][dropdown_width]" />
|
| 1596 |
+
<br />
|
| 1597 |
+
<label>
|
| 1598 |
+
<?php _e("Label Margin:", 'custom-contact-forms'); ?>
|
| 1599 |
+
</label>
|
| 1600 |
+
<input type="text" maxlength="20" value="<?php echo $style->label_margin; ?>" name="objects[<?php echo $i; ?>][values][label_margin]" />
|
| 1601 |
+
<br />
|
| 1602 |
+
<label>
|
| 1603 |
+
<?php _e("Success Popover", 'custom-contact-forms'); ?>
|
| 1604 |
+
<br />
|
| 1605 |
+
<?php _e("Height:", 'custom-contact-forms'); ?>
|
| 1606 |
+
</label>
|
| 1607 |
+
<input type="text" maxlength="20" value="<?php echo $style->success_popover_height; ?>" name="objects[<?php echo $i; ?>][values][success_popover_height]" />
|
| 1608 |
+
<br />
|
| 1609 |
+
</td>
|
| 1610 |
+
<td><label>
|
| 1611 |
+
<?php _e("Label Width:", 'custom-contact-forms'); ?>
|
| 1612 |
+
</label>
|
| 1613 |
+
<input type="text" maxlength="20" value="<?php echo $style->label_width; ?>" name="objects[<?php echo $i; ?>][values][label_width]" />
|
| 1614 |
+
<br />
|
| 1615 |
+
<label>
|
| 1616 |
+
<?php _e("Button Width:", 'custom-contact-forms'); ?>
|
| 1617 |
+
</label>
|
| 1618 |
+
<input type="text" maxlength="20" value="<?php echo $style->submit_width; ?>" name="objects[<?php echo $i; ?>][values][submit_width]" />
|
| 1619 |
+
<br />
|
| 1620 |
+
<label>
|
| 1621 |
+
<?php _e("Button Height:", 'custom-contact-forms'); ?>
|
| 1622 |
+
</label>
|
| 1623 |
+
<input type="text" maxlength="20" value="<?php echo $style->submit_height; ?>" name="objects[<?php echo $i; ?>][values][submit_height]" />
|
| 1624 |
+
<br />
|
| 1625 |
+
<label>
|
| 1626 |
+
<?php _e("Field Background Color:", 'custom-contact-forms'); ?>
|
| 1627 |
+
</label>
|
| 1628 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->field_backgroundcolor; ?>" name="objects[<?php echo $i; ?>][values][field_backgroundcolor]" />
|
| 1629 |
+
<br />
|
| 1630 |
+
<label>
|
| 1631 |
+
<?php _e("Title Margin:", 'custom-contact-forms'); ?>
|
| 1632 |
+
</label>
|
| 1633 |
+
<input type="text" maxlength="20" value="<?php echo $style->title_margin; ?>" name="objects[<?php echo $i; ?>][values][title_margin]" />
|
| 1634 |
+
<br />
|
| 1635 |
+
<label>
|
| 1636 |
+
<?php _e("Success Popover", 'custom-contact-forms'); ?>
|
| 1637 |
+
<br />
|
| 1638 |
+
<?php _e("Title Font Size:", 'custom-contact-forms'); ?>
|
| 1639 |
+
</label>
|
| 1640 |
+
<input type="text" maxlength="20" value="<?php echo $style->success_popover_title_fontsize; ?>" name="objects[<?php echo $i; ?>][values][success_popover_title_fontsize]" />
|
| 1641 |
+
<label>
|
| 1642 |
+
<?php _e("Form Background Color:", 'custom-contact-forms'); ?>
|
| 1643 |
+
</label>
|
| 1644 |
+
<input type="text" class="colorfield" maxlength="20" value="<?php echo $style->form_backgroundcolor; ?>" name="objects[<?php echo $i; ?>][values][form_backgroundcolor]" />
|
| 1645 |
+
</td>
|
| 1646 |
+
<td><label>
|
| 1647 |
+
<?php _e("Title Font Size:", 'custom-contact-forms'); ?>
|
| 1648 |
+
</label>
|
| 1649 |
+
<input type="text" maxlength="20" value="<?php echo $style->title_fontsize; ?>" name="objects[<?php echo $i; ?>][values][title_fontsize]" />
|
| 1650 |
+
<br />
|
| 1651 |
+
<label>
|
| 1652 |
+
<?php _e("Label Font Size:", 'custom-contact-forms'); ?>
|
| 1653 |
+
</label>
|
| 1654 |
+
<input type="text" maxlength="20" value="<?php echo $style->label_fontsize; ?>" name="objects[<?php echo $i; ?>][values][label_fontsize]" />
|
| 1655 |
+
<br />
|
| 1656 |
+
<label>
|
| 1657 |
+
<?php _e("Field Font Size:", 'custom-contact-forms'); ?>
|
| 1658 |
+
</label>
|
| 1659 |
+
<input type="text" maxlength="20" value="<?php echo $style->field_fontsize; ?>" name="objects[<?php echo $i; ?>][values][field_fontsize]" />
|
| 1660 |
+
<br />
|
| 1661 |
+
<label>
|
| 1662 |
+
<?php _e("Button Font Size:", 'custom-contact-forms'); ?>
|
| 1663 |
+
</label>
|
| 1664 |
+
<input type="text" maxlength="20" value="<?php echo $style->submit_fontsize; ?>" name="objects[<?php echo $i; ?>][values][submit_fontsize]" />
|
| 1665 |
+
<br />
|
| 1666 |
+
<label>
|
| 1667 |
+
<?php _e("Form Padding:", 'custom-contact-forms'); ?>
|
| 1668 |
+
</label>
|
| 1669 |
+
<input type="text" maxlength="20" value="<?php echo $style->form_padding; ?>" name="objects[<?php echo $i; ?>][values][form_padding]" />
|
| 1670 |
+
<br />
|
| 1671 |
+
<label>
|
| 1672 |
+
<?php _e("Success Popover", 'custom-contact-forms'); ?>
|
| 1673 |
+
<br />
|
| 1674 |
+
<?php _e("Font Size:", 'custom-contact-forms'); ?>
|
| 1675 |
+
</label>
|
| 1676 |
+
<input type="text" maxlength="20" value="<?php echo $style->success_popover_fontsize; ?>" name="objects[<?php echo $i; ?>][values][success_popover_fontsize]" />
|
| 1677 |
+
<br />
|
| 1678 |
+
<label>
|
| 1679 |
+
<?php _e("Tooltip", 'custom-contact-forms'); ?>
|
| 1680 |
+
<a href="javascript:void(0)" class="toollink" title="<?php _e("A tooltip is the little box that fades in displaying 'Field Instructions' when a user selects a particular field.", 'custom-contact-forms'); ?>">(?)</a>
|
| 1681 |
+
<?php _e("Background Color:", 'custom-contact-forms'); ?>
|
| 1682 |
+
</label>
|
| 1683 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->tooltip_backgroundcolor; ?>" name="objects[<?php echo $i; ?>][values][tooltip_backgroundcolor]" />
|
| 1684 |
+
</td>
|
| 1685 |
+
<td><label>
|
| 1686 |
+
<?php _e("Title Font Color:", 'custom-contact-forms'); ?>
|
| 1687 |
+
</label>
|
| 1688 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->title_fontcolor; ?>" name="objects[<?php echo $i; ?>][values][title_fontcolor]" />
|
| 1689 |
+
<br />
|
| 1690 |
+
<label>
|
| 1691 |
+
<?php _e("Label Font Color:", 'custom-contact-forms'); ?>
|
| 1692 |
+
</label>
|
| 1693 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->label_fontcolor; ?>" name="objects[<?php echo $i; ?>][values][label_fontcolor]" />
|
| 1694 |
+
<br />
|
| 1695 |
+
<label>
|
| 1696 |
+
<?php _e("Field Font Color:", 'custom-contact-forms'); ?>
|
| 1697 |
+
</label>
|
| 1698 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->field_fontcolor; ?>" name="objects[<?php echo $i; ?>][values][field_fontcolor]" />
|
| 1699 |
+
<br />
|
| 1700 |
+
<label>
|
| 1701 |
+
<?php _e("Button Font Color:", 'custom-contact-forms'); ?>
|
| 1702 |
+
</label>
|
| 1703 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->submit_fontcolor; ?>" name="objects[<?php echo $i; ?>][values][submit_fontcolor]" />
|
| 1704 |
+
<br />
|
| 1705 |
+
<label>
|
| 1706 |
+
<?php _e("Form Margin:", 'custom-contact-forms'); ?>
|
| 1707 |
+
</label>
|
| 1708 |
+
<input type="text" maxlength="20" value="<?php echo $style->form_margin; ?>" name="objects[<?php echo $i; ?>][values][form_margin]" />
|
| 1709 |
+
<br />
|
| 1710 |
+
<label>
|
| 1711 |
+
<?php _e("Success Popover", 'custom-contact-forms'); ?>
|
| 1712 |
+
<br />
|
| 1713 |
+
<?php _e("Font Color:", 'custom-contact-forms'); ?>
|
| 1714 |
+
</label>
|
| 1715 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->success_popover_fontcolor; ?>" name="objects[<?php echo $i; ?>][values][success_popover_fontcolor]" />
|
| 1716 |
+
<br />
|
| 1717 |
+
<label>
|
| 1718 |
+
<?php _e("Tooltip Font Size:", 'custom-contact-forms'); ?>
|
| 1719 |
+
</label>
|
| 1720 |
+
<input type="text" maxlength="20" value="<?php echo $style->tooltip_fontsize; ?>" name="objects[<?php echo $i; ?>][values][tooltip_fontsize]" />
|
| 1721 |
+
</td>
|
| 1722 |
+
<td><label>
|
| 1723 |
+
<?php _e("Form Border Style:", 'custom-contact-forms'); ?>
|
| 1724 |
+
</label>
|
| 1725 |
+
<select name="object[form_borderstyle]">
|
| 1726 |
+
<?php echo str_replace('<option>'.$style->form_borderstyle.'</option>', '<option selected="selected">'.$style->form_borderstyle.'</option>', $border_style_options); ?>
|
| 1727 |
+
</select>
|
| 1728 |
+
<br />
|
| 1729 |
+
<label>
|
| 1730 |
+
<?php _e("Form Border Width:", 'custom-contact-forms'); ?>
|
| 1731 |
+
</label>
|
| 1732 |
+
<input type="text" maxlength="20" value="<?php echo $style->form_borderwidth; ?>" name="objects[<?php echo $i; ?>][values][form_borderwidth]" />
|
| 1733 |
+
<br />
|
| 1734 |
+
<label>
|
| 1735 |
+
<?php _e("Form Border Color:", 'custom-contact-forms'); ?>
|
| 1736 |
+
</label>
|
| 1737 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->form_bordercolor; ?>" name="objects[<?php echo $i; ?>][values][form_bordercolor]" />
|
| 1738 |
+
<br />
|
| 1739 |
+
<label>
|
| 1740 |
+
<?php _e("Field Border Color:", 'custom-contact-forms'); ?>
|
| 1741 |
+
</label>
|
| 1742 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->field_bordercolor; ?>" name="objects[<?php echo $i; ?>][values][field_bordercolor]" />
|
| 1743 |
+
<br />
|
| 1744 |
+
<label>
|
| 1745 |
+
<?php _e("Field Border Style:", 'custom-contact-forms'); ?>
|
| 1746 |
+
</label>
|
| 1747 |
+
<select name="objects[<?php echo $i; ?>][values][field_borderstyle]">
|
| 1748 |
+
<?php echo str_replace('<option>'.$style->field_borderstyle.'</option>', '<option selected="selected">'.$style->field_borderstyle.'</option>', $border_style_options); ?>
|
| 1749 |
+
</select>
|
| 1750 |
+
<br />
|
| 1751 |
+
<label>
|
| 1752 |
+
<?php _e("Success Popover", 'custom-contact-forms'); ?>
|
| 1753 |
+
<br />
|
| 1754 |
+
<?php _e("Title Font Color:", 'custom-contact-forms'); ?>
|
| 1755 |
+
</label>
|
| 1756 |
+
<input class="colorfield" type="text" maxlength="20" value="<?php echo $style->success_popover_title_fontcolor; ?>" name="objects[<?php echo $i; ?>][values][success_popover_title_fontcolor]" />
|
| 1757 |
+
<br />
|
| 1758 |
+
<label>
|
| 1759 |
+
<?php _e("Field Border Roundness:", 'custom-contact-forms'); ?>
|
| 1760 |
+
</label>
|
| 1761 |
+
<input name="objects[<?php echo $i; ?>][values][field_borderround]" value="<?php echo $style->field_borderround; ?>" type="text" maxlength="20" />
|
| 1762 |
+
<br />
|
| 1763 |
+
<input type="hidden" name="objects[<?php echo $i; ?>][object_type]" value="style" />
|
| 1764 |
+
<input class="object-id" name="objects[<?php echo $i; ?>][object_id]" type="hidden" value="<?php echo $style->id; ?>" />
|
| 1765 |
+
</td>
|
| 1766 |
+
</tr>
|
| 1767 |
+
<?php
|
| 1768 |
+
$i++;
|
| 1769 |
+
}
|
| 1770 |
+
?>
|
| 1771 |
+
</tbody>
|
| 1772 |
+
<tfoot>
|
| 1773 |
+
<tr>
|
| 1774 |
+
<th scope="col" class="manage-column"><input type="checkbox" class="checkall" /></th>
|
| 1775 |
+
<th scope="col" class="manage-column"></th>
|
| 1776 |
+
<th scope="col" class="manage-column"></th>
|
| 1777 |
+
<th scope="col" class="manage-column"></th>
|
| 1778 |
+
<th scope="col" class="manage-column"></th>
|
| 1779 |
+
<th scope="col" class="manage-column"></th>
|
| 1780 |
+
</tr>
|
| 1781 |
+
</tfoot>
|
| 1782 |
+
</table>
|
| 1783 |
+
<select class="bulk-dropdown" name="object_bulk_action">
|
| 1784 |
+
<option value="0"><?php _e('Bulk Actions', 'custom-contact-forms'); ?></option>
|
| 1785 |
+
<option value="edit"><?php _e('Save', 'custom-contact-forms'); ?></option>
|
| 1786 |
+
<option value="delete"><?php _e('Delete', 'custom-contact-forms'); ?></option></select>
|
| 1787 |
+
<input type="submit" name="object_bulk_apply" class="bulk-apply" value="<?php _e('Apply', 'custom-contact-forms'); ?>" /> <img src="<?php echo plugins_url(); ?>/custom-contact-forms/images/wpspin_light.gif" width="16" height="16" class="loading-img" />
|
| 1788 |
+
</form>
|
| 1789 |
+
</div>
|
| 1790 |
+
<div id="support">
|
| 1791 |
+
<div id="contact-author" class="postbox">
|
| 1792 |
+
<h3 class="hndle"><span>
|
| 1793 |
+
<?php _e("Report a Bug/Suggest a Feature", 'custom-contact-forms'); ?>
|
| 1794 |
+
</span></h3>
|
| 1795 |
+
<div class="inside">
|
| 1796 |
+
<form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 1797 |
+
<input type="hidden" name="selected_tab" value="support" />
|
| 1798 |
+
<ul>
|
| 1799 |
+
<li>
|
| 1800 |
+
<label for="name">
|
| 1801 |
+
<?php _e("Your Name:", 'custom-contact-forms'); ?>
|
| 1802 |
+
</label>
|
| 1803 |
+
<input id="name" type="text" name="name" maxlength="100" />
|
| 1804 |
+
</li>
|
| 1805 |
+
<li>
|
| 1806 |
+
<label for="email">
|
| 1807 |
+
<?php _e("Your Email:", 'custom-contact-forms'); ?>
|
| 1808 |
+
</label>
|
| 1809 |
+
<input id="email" type="text" value="<?php echo get_option('admin_email'); ?>" name="email" maxlength="100" />
|
| 1810 |
+
</li>
|
| 1811 |
+
</ul>
|
| 1812 |
+
<ul>
|
| 1813 |
+
<li>
|
| 1814 |
+
<label for="host">
|
| 1815 |
+
<?php _e("Who Hosts Your Website?", 'custom-contact-forms'); ?>
|
| 1816 |
+
</label>
|
| 1817 |
+
<input id="host" type="text" name="host" maxlength="150" />
|
| 1818 |
+
</li>
|
| 1819 |
+
<li>
|
| 1820 |
+
<label for="type">*
|
| 1821 |
+
<?php _e("Purpose of this message:", 'custom-contact-forms'); ?>
|
| 1822 |
+
</label>
|
| 1823 |
+
<select id="type" name="type">
|
| 1824 |
+
<option>
|
| 1825 |
+
<?php _e("Bug Report", 'custom-contact-forms'); ?>
|
| 1826 |
+
</option>
|
| 1827 |
+
<option>
|
| 1828 |
+
<?php _e("Suggest a Feature", 'custom-contact-forms'); ?>
|
| 1829 |
+
</option>
|
| 1830 |
+
<option>
|
| 1831 |
+
<?php _e("Plugin Question", 'custom-contact-forms'); ?>
|
| 1832 |
+
</option>
|
| 1833 |
+
</select>
|
| 1834 |
+
</li>
|
| 1835 |
+
</ul>
|
| 1836 |
+
<ul>
|
| 1837 |
+
<li>
|
| 1838 |
+
<label for="ccf-version">
|
| 1839 |
+
<?php _e("Version of Custom Contact Forms?", 'custom-contact-forms'); ?>
|
| 1840 |
+
</label>
|
| 1841 |
+
<input id="ccf-version" type="text" name="ccf-version" maxlength="50" />
|
| 1842 |
+
</li>
|
| 1843 |
+
<li>
|
| 1844 |
+
<label for="wp-version">
|
| 1845 |
+
<?php _e("Version of WordPress?", 'custom-contact-forms'); ?>
|
| 1846 |
+
</label>
|
| 1847 |
+
<input id="wp-version" type="text" name="wp-version" maxlength="50" />
|
| 1848 |
+
</li>
|
| 1849 |
+
</ul>
|
| 1850 |
+
<ul class="message">
|
| 1851 |
+
<li>
|
| 1852 |
+
<label for="message">*
|
| 1853 |
+
<?php _e("Your Message:", 'custom-contact-forms'); ?>
|
| 1854 |
+
</label>
|
| 1855 |
+
<textarea id="message-textarea" name="message"></textarea>
|
| 1856 |
+
</li>
|
| 1857 |
+
</ul>
|
| 1858 |
+
<p>
|
| 1859 |
+
<input type="submit" name="contact_author" value="<?php _e("Send Message", 'custom-contact-forms'); ?>" />
|
| 1860 |
+
</p>
|
| 1861 |
+
</form>
|
| 1862 |
+
</div>
|
| 1863 |
+
</div>
|
| 1864 |
+
</div>
|
| 1865 |
+
|
| 1866 |
+
<div id="advanced">
|
| 1867 |
+
<div id="custom-html" class="postbox">
|
| 1868 |
+
<h3 class="hndle"><span>
|
| 1869 |
+
<?php _e("Custom HTML Forms (Advanced)", 'custom-contact-forms'); ?>
|
| 1870 |
+
</span></h3>
|
| 1871 |
+
<div class="inside">
|
| 1872 |
+
<p>
|
| 1873 |
+
<?php _e("If you know HTML and simply want to use this plugin to process form requests, this feature is for you.
|
| 1874 |
+
The following HTML is a the framework to which you must adhere. In order for your form to work you MUST do the following: a) Keep the form action/method the same (yes the action is supposed to be empty), b) Include all the hidden fields shown below, c) provide a
|
| 1875 |
+
hidden field with a success message or thank you page (both hidden fields are included below, you must choose one or the other and fill in the value part of the input field appropriately.", 'custom-contact-forms'); ?>
|
| 1876 |
+
</p>
|
| 1877 |
+
<textarea id="custom_html_textarea">
|
| 1878 |
+
<form method="post" action="">
|
| 1879 |
+
<input type="hidden" name="ccf_customhtml" value="1" />
|
| 1880 |
+
<input type="hidden" name="success_message" value="<?php _e("Thank you for filling out our form!", 'custom-contact-forms'); ?>" />
|
| 1881 |
+
<input type="hidden" name="thank_you_page" value="http://www.google.com" />
|
| 1882 |
+
<input type="hidden" name="destination_email" value="<?php echo $admin_options['default_to_email']; ?>" />
|
| 1883 |
+
<input type="hidden" name="required_fields" value="field_name1, field_name2" />
|
| 1884 |
+
|
| 1885 |
+
<!-- <?php _e("Paste all this code into a page or post and edit it to your liking. It is recommended you only use this feature if you are experienced with HTML. The destination_email field specifies where emails will be sent on successful submission; you can have the form send to multiple addresses by separating email's with semi-colons (i.e. email@google.com; email2@google.com). The success_message field will add a popover containing the message when the form is completed successfully, the thank_you_page field will force the user to be redirected to that specific page on successful form completion. The required_fields hidden field is optional; to use it separate the field names you want required by commas. Remember to use underscores instead of spaces in field names!", 'custom-contact-forms'); ?> -->
|
| 1886 |
+
|
| 1887 |
+
</form></textarea>
|
| 1888 |
+
</div>
|
| 1889 |
+
</div>
|
| 1890 |
+
</div>
|
| 1891 |
+
|
| 1892 |
+
<div id="news">
|
| 1893 |
+
<div id="plugin-news" class="postbox">
|
| 1894 |
+
<h3 class="hndle"><span>
|
| 1895 |
+
<?php _e("Custom Contact Forms Plugin News", 'custom-contact-forms'); ?>
|
| 1896 |
+
</span></h3>
|
| 1897 |
+
<div class="inside">
|
| 1898 |
+
<?php $this->displayPluginNewsFeed(); ?>
|
| 1899 |
+
</div>
|
| 1900 |
+
</div>
|
| 1901 |
+
</div>
|
| 1902 |
+
<?php $this->rateMeForm(); ?>
|
| 1903 |
+
<?php $this->insertUsagePopover(); ?>
|
| 1904 |
+
<?php $this->insertQuickStartPopover(); ?>
|
| 1905 |
+
</div>
|
| 1906 |
+
</div>
|
| 1907 |
+
<?php
|
| 1908 |
+
}
|
| 1909 |
+
|
| 1910 |
+
function printFormSubmissionsPage() {
|
| 1911 |
+
$this->handleAdminPostRequests();
|
| 1912 |
+
if ($admin_options['show_install_popover'] == 1) {
|
| 1913 |
+
$admin_options['show_install_popover'] = 0;
|
| 1914 |
+
?>
|
| 1915 |
+
<script type="text/javascript" language="javascript">
|
| 1916 |
+
$j(document).ready(function() {
|
| 1917 |
+
showCCFUsagePopover();
|
| 1918 |
+
});
|
| 1919 |
+
</script>
|
| 1920 |
+
<?php
|
| 1921 |
+
update_option(parent::getAdminOptionsName(), $admin_options);
|
| 1922 |
+
} /*if ($_POST['form_submission_delete']) {
|
| 1923 |
+
if (parent::deleteUserData($_POST['uid']) != false)
|
| 1924 |
+
$this->action_complete = __('A form submission has be successfully deleted!', 'custom-contact-forms');
|
| 1925 |
+
}*/
|
| 1926 |
+
ccf_utils::load_module('export/custom-contact-forms-user-data.php');
|
| 1927 |
+
$user_data_array = parent::selectAllUserData();
|
| 1928 |
+
?>
|
| 1929 |
+
<div id="customcontactforms-admin">
|
| 1930 |
+
<div class="plugin-header">
|
| 1931 |
+
<h2>
|
| 1932 |
+
<?php _e("Custom Contact Forms", 'custom-contact-forms'); ?>
|
| 1933 |
+
</h2>
|
| 1934 |
+
<div class="links">
|
| 1935 |
+
<a href="javascript:void(0)" class="quick-start-button">Quick Start Guide</a> - <a href="javascript:void(0)" class="usage-popover-button">Plugin Usage Manual</a>
|
| 1936 |
+
</div>
|
| 1937 |
+
</div>
|
| 1938 |
+
<a class="genesis" href="http://www.shareasale.com/r.cfm?b=241369&u=481196&m=28169&urllink=&afftrack=">Custom Contact Forms works best with any of the 20+ <span>Genesis</span> Wordpress child themes. The <span>Genesis Framework</span> empowers you to quickly and easily build incredible websites with WordPress.</a>
|
| 1939 |
+
|
| 1940 |
+
<form class="blog-horizontal-form" method="post" action="http://www.aweber.com/scripts/addlead.pl">
|
| 1941 |
+
<input type="hidden" name="meta_web_form_id" value="1578604781" />
|
| 1942 |
+
<input type="hidden" name="meta_split_id" value="" />
|
| 1943 |
+
<input type="hidden" name="listname" value="ccf-plugin" />
|
| 1944 |
+
<input type="hidden" name="redirect" value="http://www.taylorlovett.com/wordpress-plugins/tutorials-offers-tips/" id="redirect_5832e41084448adb07da67a35dc83c27" />
|
| 1945 |
+
<input type="hidden" name="meta_adtracking" value="CCF_-_Wordpress_Plugins_Horizontal" />
|
| 1946 |
+
<input type="hidden" name="meta_message" value="1" />
|
| 1947 |
+
<input type="hidden" name="meta_required" value="name,email" />
|
| 1948 |
+
<span>WP Blogging Tips, Downloads, SEO Tricks & Exclusive Tutorials</span>
|
| 1949 |
+
<input type="text" name="name" value="Your Name" onclick="value=''" />
|
| 1950 |
+
<input type="text" name="email" value="Your Email" onclick="value=''" />
|
| 1951 |
+
<input type="submit" value="Sign Up for Free" />
|
| 1952 |
+
</form>
|
| 1953 |
+
<?php if (!empty($this->action_complete)) { ?>
|
| 1954 |
+
<div id="message" class="updated below-h2">
|
| 1955 |
+
<p><?php echo $this->action_complete; ?></p>
|
| 1956 |
+
</div>
|
| 1957 |
+
<?php } ?>
|
| 1958 |
+
<h3 class="hndle"><span>
|
| 1959 |
+
<?php _e("Saved Form Submissions", 'custom-contact-forms'); ?>
|
| 1960 |
+
</span></h3>
|
| 1961 |
+
<form class="ccf-edit-ajax" method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 1962 |
+
<table class="widefat post" id="form-submissions-table" cellspacing="0">
|
| 1963 |
+
<thead>
|
| 1964 |
+
<tr>
|
| 1965 |
+
<th scope="col" class="manage-column ccf-width25"><input type="checkbox" class="checkall" /></th>
|
| 1966 |
+
<th scope="col" class="manage-column ccf-width250"><?php _e("Date Submitted", 'custom-contact-forms'); ?></th>
|
| 1967 |
+
<th scope="col" class="manage-column ccf-width150"><?php _e("Form Submitted", 'custom-contact-forms'); ?></th>
|
| 1968 |
+
<th scope="col" class="manage-column ccf-width250"><?php _e("Form Page", 'custom-contact-forms'); ?></th>
|
| 1969 |
+
<th scope="col" class="manage-column "></th>
|
| 1970 |
+
</tr>
|
| 1971 |
+
</thead>
|
| 1972 |
+
<tbody>
|
| 1973 |
+
<?php
|
| 1974 |
+
$i = 0;
|
| 1975 |
+
foreach ($user_data_array as $data_object) {
|
| 1976 |
+
$data = new CustomContactFormsUserData(array('form_id' => $data_object->data_formid, 'data_time' => $data_object->data_time, 'form_page' => $data_object->data_formpage, 'encoded_data' => $data_object->data_value));
|
| 1977 |
+
?>
|
| 1978 |
+
<tr class="row-form_submission-<?php echo $data_object->id; ?> submission-top <?php if ($i % 2 == 0) echo 'ccf-evenrow'; ?>">
|
| 1979 |
+
<td><input type="checkbox" class="object-check" value="1" name="objects[<?php echo $i; ?>][object_do]" /></td>
|
| 1980 |
+
<td><?php echo date('F d, Y h:i:s A', $data->getDataTime()); ?></td>
|
| 1981 |
+
<td><?php
|
| 1982 |
+
if ($data->getFormID() > 0) {
|
| 1983 |
+
$data_form = parent::selectForm($data->getFormID());
|
| 1984 |
+
$this_form = (!empty($data_form->form_slug)) ? $data_form->form_slug : '-';
|
| 1985 |
+
echo $this_form;
|
| 1986 |
+
} else
|
| 1987 |
+
_e('Custom HTML Form', 'custom-contact-forms');
|
| 1988 |
+
?>
|
| 1989 |
+
</td>
|
| 1990 |
+
<td><?php echo $data->getFormPage(); ?> </td>
|
| 1991 |
+
<td class="ccf-alignright">
|
| 1992 |
+
<span class="submission-content-expand"></span>
|
| 1993 |
+
<input type="hidden" name="objects[<?php echo $i; ?>][object_type]" value="form_submission" />
|
| 1994 |
+
<input class="object-id" type="hidden" name="objects[<?php echo $i; ?>][object_id]" value="<?php echo $data_object->id; ?>" />
|
| 1995 |
+
</td>
|
| 1996 |
+
</tr>
|
| 1997 |
+
<tr class="row-form_submission-<?php echo $data_object->id; ?> submission-content <?php if ($i % 2 == 0) echo 'ccf-evenrow'; ?>">
|
| 1998 |
+
<td colspan="5"><ul>
|
| 1999 |
+
<?php
|
| 2000 |
+
$data_array = $data->getDataArray();
|
| 2001 |
+
foreach ($data_array as $item_key => $item_value) {
|
| 2002 |
+
?>
|
| 2003 |
+
<li>
|
| 2004 |
+
<div><?php echo $item_key; ?></div>
|
| 2005 |
+
<p><?php echo $data->parseUserData($item_value); ?></p>
|
| 2006 |
+
</li>
|
| 2007 |
+
<?php
|
| 2008 |
+
}
|
| 2009 |
+
?>
|
| 2010 |
+
</ul></td>
|
| 2011 |
+
</tr>
|
| 2012 |
+
<?php
|
| 2013 |
+
$i++;
|
| 2014 |
+
}
|
| 2015 |
+
?>
|
| 2016 |
+
</tbody>
|
| 2017 |
+
<tfoot>
|
| 2018 |
+
<tr>
|
| 2019 |
+
<th scope="col" class="manage-column25"><input type="checkbox" class="checkall" /></th>
|
| 2020 |
+
<th scope="col" class="manage-column ccf-width250"><?php _e("Date Submitted", 'custom-contact-forms'); ?></th>
|
| 2021 |
+
<th scope="col" class="manage-column ccf-width150"><?php _e("Form Submitted", 'custom-contact-forms'); ?></th>
|
| 2022 |
+
<th scope="col" class="manage-column ccf-width250"><?php _e("Form Page", 'custom-contact-forms'); ?></th>
|
| 2023 |
+
<th scope="col" class="manage-column"></th>
|
| 2024 |
+
</tr>
|
| 2025 |
+
</tfoot>
|
| 2026 |
+
</table>
|
| 2027 |
+
|
| 2028 |
+
<select class="bulk-dropdown" name="object_bulk_action">
|
| 2029 |
+
<option value="0"><?php _e('Bulk Actions', 'custom-contact-forms'); ?></option>
|
| 2030 |
+
<option value="delete"><?php _e('Delete', 'custom-contact-forms'); ?></option>
|
| 2031 |
+
</select> <input type="submit" class="bulk-apply" name="object_bulk_apply" value="<?php _e('Apply', 'custom-contact-forms'); ?>" /> <img src="<?php echo plugins_url(); ?>/custom-contact-forms/images/wpspin_light.gif" class="loading-img" width="16" height="16" />
|
| 2032 |
+
|
| 2033 |
+
|
| 2034 |
+
|
| 2035 |
+
</form>
|
| 2036 |
+
<?php $this->insertUsagePopover(); ?>
|
| 2037 |
+
<?php $this->insertQuickStartPopover(); ?>
|
| 2038 |
+
</div>
|
| 2039 |
+
<?php
|
| 2040 |
+
}
|
| 2041 |
+
|
| 2042 |
+
function printSettingsPage() {
|
| 2043 |
+
$admin_options = parent::getAdminOptions();
|
| 2044 |
+
if ($admin_options['show_install_popover'] == 1) {
|
| 2045 |
+
$admin_options['show_install_popover'] = 0;
|
| 2046 |
+
?>
|
| 2047 |
+
<script type="text/javascript" language="javascript">
|
| 2048 |
+
$j(document).ready(function() {
|
| 2049 |
+
showCCFUsagePopover();
|
| 2050 |
+
});
|
| 2051 |
+
</script>
|
| 2052 |
+
<?php
|
| 2053 |
+
update_option(parent::getAdminOptionsName(), $admin_options);
|
| 2054 |
+
} if ($_POST['general_settings']) {
|
| 2055 |
+
$_POST['settings'] = array_map(array('ccf_utils', 'encodeOption'), $_POST['settings']);
|
| 2056 |
+
$admin_options = array_merge($admin_options, $_POST['settings']);
|
| 2057 |
+
$admin_options[show_widget_categories] = $_POST['settings']['show_widget_categories'];
|
| 2058 |
+
$admin_options[show_widget_singles] = $_POST['settings']['show_widget_singles'];
|
| 2059 |
+
$admin_options[show_widget_pages] = $_POST['settings']['show_widget_pages'];
|
| 2060 |
+
$admin_options[show_widget_archives] = $_POST['settings']['show_widget_archives'];
|
| 2061 |
+
$admin_options[show_widget_home] = $_POST['settings']['show_widget_home'];
|
| 2062 |
+
$this->action_complete = __('Your settings have been successfully saved!', 'custom-contact-forms');
|
| 2063 |
+
update_option(parent::getAdminOptionsName(), $admin_options);
|
| 2064 |
+
} elseif ($_POST['configure_mail']) {
|
| 2065 |
+
$_POST['mail_config'] = array_map(array('ccf_utils', 'encodeOption'), $_POST['mail_config']);
|
| 2066 |
+
$admin_options = array_merge($admin_options, $_POST['mail_config']);
|
| 2067 |
+
$this->action_complete = __('Your mail settings have been successfully saved!', 'custom-contact-forms');
|
| 2068 |
+
update_option(parent::getAdminOptionsName(), $admin_options);
|
| 2069 |
+
}
|
| 2070 |
+
ccf_utils::load_module('export/custom-contact-forms-export.php');
|
| 2071 |
+
?>
|
| 2072 |
+
<div id="customcontactforms-admin">
|
| 2073 |
+
<div class="plugin-header">
|
| 2074 |
+
<h2>
|
| 2075 |
+
<?php _e("Custom Contact Forms", 'custom-contact-forms'); ?>
|
| 2076 |
+
</h2>
|
| 2077 |
+
<div class="links">
|
| 2078 |
+
<a href="javascript:void(0)" class="quick-start-button">Quick Start Guide</a> - <a href="javascript:void(0)" class="usage-popover-button">Plugin Usage Manual</a>
|
| 2079 |
+
</div>
|
| 2080 |
+
</div>
|
| 2081 |
+
<a class="genesis" href="http://www.shareasale.com/r.cfm?b=241369&u=481196&m=28169&urllink=&afftrack=">Custom Contact Forms works best with any of the 20+ <span>Genesis</span> Wordpress child themes. The <span>Genesis Framework</span> empowers you to quickly and easily build incredible websites with WordPress.</a>
|
| 2082 |
+
|
| 2083 |
+
<form class="blog-horizontal-form" method="post" action="http://www.aweber.com/scripts/addlead.pl">
|
| 2084 |
+
<input type="hidden" name="meta_web_form_id" value="1578604781" />
|
| 2085 |
+
<input type="hidden" name="meta_split_id" value="" />
|
| 2086 |
+
<input type="hidden" name="listname" value="ccf-plugin" />
|
| 2087 |
+
<input type="hidden" name="redirect" value="http://www.taylorlovett.com/wordpress-plugins/tutorials-offers-tips/" id="redirect_5832e41084448adb07da67a35dc83c27" />
|
| 2088 |
+
<input type="hidden" name="meta_adtracking" value="CCF_-_Wordpress_Plugins_Horizontal" />
|
| 2089 |
+
<input type="hidden" name="meta_message" value="1" />
|
| 2090 |
+
<input type="hidden" name="meta_required" value="name,email" />
|
| 2091 |
+
<span>WP Blogging Tips, Downloads, SEO Tricks & Exclusive Tutorials</span>
|
| 2092 |
+
<input type="text" name="name" value="Your Name" onclick="value=''" />
|
| 2093 |
+
<input type="text" name="email" value="Your Email" onclick="value=''" />
|
| 2094 |
+
<input type="submit" value="Sign Up for Free" />
|
| 2095 |
+
</form>
|
| 2096 |
+
|
| 2097 |
+
<?php if (!empty($this->action_complete)) { ?>
|
| 2098 |
+
<div id="message" class="updated below-h2">
|
| 2099 |
+
<p><?php echo $this->action_complete; ?></p>
|
| 2100 |
+
</div>
|
| 2101 |
+
<?php } ?>
|
| 2102 |
+
|
| 2103 |
+
<div id="general-settings" class="postbox">
|
| 2104 |
+
<h3 class="hndle"><span>
|
| 2105 |
+
<?php _e("General Settings", 'custom-contact-forms'); ?>
|
| 2106 |
+
</span></h3>
|
| 2107 |
+
<div class="inside">
|
| 2108 |
+
<form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 2109 |
+
<ul class="gleft">
|
| 2110 |
+
<li>
|
| 2111 |
+
<label for="email_form_submissions">
|
| 2112 |
+
<?php _e("Email Form Submissions:", 'custom-contact-forms'); ?>
|
| 2113 |
+
</label>
|
| 2114 |
+
<select name="settings[email_form_submissions]">
|
| 2115 |
+
<option value="1">
|
| 2116 |
+
<?php _e("Yes", 'custom-contact-forms'); ?>
|
| 2117 |
+
</option>
|
| 2118 |
+
<option value="0" <?php if ($admin_options['email_form_submissions'] == 0) echo 'selected="selected"'; ?>>
|
| 2119 |
+
<?php _e("No", 'custom-contact-forms'); ?>
|
| 2120 |
+
</option>
|
| 2121 |
+
</select>
|
| 2122 |
+
</li>
|
| 2123 |
+
<li class="descrip">
|
| 2124 |
+
<?php _e("When a user fills out one of your forms, the info submitted is saved in the Saved Form Submission section of the admin panel for you to view. If this is enabled, you will also be sent an email containing the submission info.", 'custom-contact-forms'); ?>
|
| 2125 |
+
</li>
|
| 2126 |
+
<li>
|
| 2127 |
+
<label for="default_to_email">
|
| 2128 |
+
<?php _e("Default Email:", 'custom-contact-forms'); ?>
|
| 2129 |
+
</label>
|
| 2130 |
+
<input name="settings[default_to_email]" value="<?php echo $admin_options['default_to_email']; ?>" type="text" maxlength="100" />
|
| 2131 |
+
</li>
|
| 2132 |
+
<li class="descrip">
|
| 2133 |
+
<?php _e("Form emails will be sent <span>to</span> this address, if no destination email is specified by the form.", 'custom-contact-forms'); ?>
|
| 2134 |
+
</li>
|
| 2135 |
+
<li>
|
| 2136 |
+
<label for="enable_jquery">
|
| 2137 |
+
<?php _e("Front End JQuery:", 'custom-contact-forms'); ?>
|
| 2138 |
+
</label>
|
| 2139 |
+
<select name="settings[enable_jquery]">
|
| 2140 |
+
<option value="1">
|
| 2141 |
+
<?php _e("Enabled", 'custom-contact-forms'); ?>
|
| 2142 |
+
</option>
|
| 2143 |
+
<option <?php if ($admin_options['enable_jquery'] != 1) echo 'selected="selected"'; ?> value="0">
|
| 2144 |
+
<?php _e("Disabled", 'custom-contact-forms'); ?>
|
| 2145 |
+
</option>
|
| 2146 |
+
</select>
|
| 2147 |
+
</li>
|
| 2148 |
+
<li class="descrip">
|
| 2149 |
+
<?php _e("Some plugins don't setup JQuery correctly, so when any other plugin uses JQuery (whether correctly or not), JQuery works for neither plugin. This plugin uses JQuery correctly. If another plugin isn't using JQuery correctly but is more important to you than this one: disable this option. 99% of this plugin's functionality will work without JQuery, just no field instruction tooltips.", 'custom-contact-forms'); ?>
|
| 2150 |
+
</li>
|
| 2151 |
+
<li>
|
| 2152 |
+
<label for="default_from_email">
|
| 2153 |
+
<?php _e("Default From Email:", 'custom-contact-forms'); ?>
|
| 2154 |
+
</label>
|
| 2155 |
+
<input name="settings[default_from_email]" value="<?php echo $admin_options['default_from_email']; ?>" type="text" maxlength="100" />
|
| 2156 |
+
</li>
|
| 2157 |
+
<li class="descrip">
|
| 2158 |
+
<?php _e("Form emails will be sent <span>from</span> this address. It is recommended you provide a real email address that has been created through your host.", 'custom-contact-forms'); ?>
|
| 2159 |
+
</li>
|
| 2160 |
+
<li>
|
| 2161 |
+
<label for="default_from_name">
|
| 2162 |
+
<?php _e("Default From Name:", 'custom-contact-forms'); ?>
|
| 2163 |
+
</label>
|
| 2164 |
+
<input name="settings[default_from_name]" value="<?php echo $admin_options['default_from_name']; ?>" type="text" maxlength="100" />
|
| 2165 |
+
</li>
|
| 2166 |
+
<li class="descrip">
|
| 2167 |
+
<?php _e("This setting allows you to specify the name under which form emails are sent. The default is 'Custom Contact Forms'.", 'custom-contact-forms'); ?>
|
| 2168 |
+
</li>
|
| 2169 |
+
<li>
|
| 2170 |
+
<label for="default_form_subject">
|
| 2171 |
+
<?php _e("Default Email Subject:", 'custom-contact-forms'); ?>
|
| 2172 |
+
</label>
|
| 2173 |
+
<input name="settings[default_form_subject]" value="<?php echo $admin_options['default_form_subject']; ?>" type="text" />
|
| 2174 |
+
</li>
|
| 2175 |
+
<li class="descrip">
|
| 2176 |
+
<?php _e("Default subject to be included in all form emails.", 'custom-contact-forms'); ?>
|
| 2177 |
+
</li>
|
| 2178 |
+
<li>
|
| 2179 |
+
<label for="enable_dashboard_widget">
|
| 2180 |
+
<?php _e("Enable Dashboard Widget:", 'custom-contact-forms'); ?>
|
| 2181 |
+
</label>
|
| 2182 |
+
<select name="settings[enable_dashboard_widget]">
|
| 2183 |
+
<option value="1">
|
| 2184 |
+
<?php _e("Enabled", 'custom-contact-forms'); ?>
|
| 2185 |
+
</option>
|
| 2186 |
+
<option value="0" <?php if ($admin_options['enable_dashboard_widget'] == 0) echo 'selected="selected"'; ?>>
|
| 2187 |
+
<?php _e("Disabled", 'custom-contact-forms'); ?>
|
| 2188 |
+
</option></select>
|
| 2189 |
+
</li>
|
| 2190 |
+
<li class="descrip">
|
| 2191 |
+
<?php _e("Enabling this will display a widget on your dashboard that shows the latest form submissions.", 'custom-contact-forms'); ?>
|
| 2192 |
+
</li>
|
| 2193 |
+
<li>
|
| 2194 |
+
<label for="dashboard_access">
|
| 2195 |
+
<?php _e("Dashboard Widget Accessibility:", 'custom-contact-forms'); ?>
|
| 2196 |
+
</label>
|
| 2197 |
+
<select name="settings[dashboard_access]">
|
| 2198 |
+
<option value="2">
|
| 2199 |
+
<?php _e("Only admins can view", 'custom-contact-forms'); ?>
|
| 2200 |
+
</option>
|
| 2201 |
+
<option value="1" <?php if ($admin_options['dashboard_access'] == 1) echo 'selected="selected"'; ?>>
|
| 2202 |
+
<?php _e("All roles except subscribers can view", 'custom-contact-forms'); ?>
|
| 2203 |
+
</option>
|
| 2204 |
+
<option value="0" <?php if ($admin_options['dashboard_access'] == 0) echo 'selected="selected"'; ?>>
|
| 2205 |
+
<?php _e("All roles can view", 'custom-contact-forms'); ?>
|
| 2206 |
+
</option></select>
|
| 2207 |
+
</li>
|
| 2208 |
+
<li class="descrip">
|
| 2209 |
+
<?php _e("If you are using the dashboard widget, this allows you to disallow certain users from viewing it.", 'custom-contact-forms'); ?>
|
| 2210 |
+
</li>
|
| 2211 |
+
<li>
|
| 2212 |
+
<label for="code_type">
|
| 2213 |
+
<?php _e("Use Code Type:", 'custom-contact-forms'); ?>
|
| 2214 |
+
</label>
|
| 2215 |
+
<select name="settings[code_type]">
|
| 2216 |
+
<option>XHTML</option>
|
| 2217 |
+
<option <?php if ($admin_options['code_type'] == 'HTML') echo 'selected="selected"'; ?>>HTML</option>
|
| 2218 |
+
</select>
|
| 2219 |
+
</li>
|
| 2220 |
+
<li class="descrip">
|
| 2221 |
+
<?php _e("This lets you switch the form code between HTML and XHTML.", 'custom-contact-forms'); ?>
|
| 2222 |
+
</li>
|
| 2223 |
+
<li>
|
| 2224 |
+
<label for="form_page_inclusion_only">
|
| 2225 |
+
<?php _e("Restrict Frontend JS and CSS to Form Pages Only:", 'custom-contact-forms'); ?>
|
| 2226 |
+
</label>
|
| 2227 |
+
<select name="settings[form_page_inclusion_only]">
|
| 2228 |
+
<option value="1">
|
| 2229 |
+
<?php _e("Yes", 'custom-contact-forms'); ?>
|
| 2230 |
+
</option>
|
| 2231 |
+
<option value="0" <?php if ($admin_options['form_page_inclusion_only'] == 0) echo 'selected="selected"'; ?>>
|
| 2232 |
+
<?php _e("No", 'custom-contact-forms'); ?>
|
| 2233 |
+
</option></select>
|
| 2234 |
+
</li>
|
| 2235 |
+
<li class="descrip">
|
| 2236 |
+
<?php _e("Within each form in the form manager, you can specify the page id's on which that form will be used. If you set this to 'Yes', the plugin will only include CSS and JS files on pages/posts where a CCF form is inserted. If this is set to 'No', CSS and JS files for this plugin will be included on every page of your site except in the admin area.", 'custom-contact-forms'); ?>
|
| 2237 |
+
</li>
|
| 2238 |
+
</ul>
|
| 2239 |
+
<ul class="gright">
|
| 2240 |
+
<li>
|
| 2241 |
+
<label for="form_success_message_title">
|
| 2242 |
+
<?php _e("Default Form Success Message Title:", 'custom-contact-forms'); ?>
|
| 2243 |
+
</label>
|
| 2244 |
+
<input name="settings[form_success_message_title]" value="<?php echo $admin_options['form_success_message_title']; ?>" type="text"/>
|
| 2245 |
+
</li>
|
| 2246 |
+
<li class="descrip">
|
| 2247 |
+
<?php _e("If someone fills out a form for which a success message title is not provided and a custom success page is not provided, the plugin will show a popover using this field as the window title.", 'custom-contact-forms'); ?>
|
| 2248 |
+
</li>
|
| 2249 |
+
|
| 2250 |
+
<li>
|
| 2251 |
+
<label for="form_success_message">
|
| 2252 |
+
<?php _e("Default Form Success Message:", 'custom-contact-forms'); ?>
|
| 2253 |
+
</label>
|
| 2254 |
+
<input name="settings[form_success_message]" value="<?php echo $admin_options['form_success_message']; ?>" type="text"/>
|
| 2255 |
+
</li>
|
| 2256 |
+
<li class="descrip">
|
| 2257 |
+
<?php _e("If someone fills out a form for which a success message is not provided and a custom success page is not provided, the plugin will show a popover containing this message.", 'custom-contact-forms'); ?>
|
| 2258 |
+
</li>
|
| 2259 |
+
<li>
|
| 2260 |
+
<label for="default_form_error_header">
|
| 2261 |
+
<?php _e("Default Form Error Header:", 'custom-contact-forms'); ?>
|
| 2262 |
+
</label>
|
| 2263 |
+
<input name="settings[default_form_error_header]" value="<?php echo $admin_options['default_form_error_header']; ?>" type="text" />
|
| 2264 |
+
</li>
|
| 2265 |
+
<li class="descrip">
|
| 2266 |
+
<?php _e("When a form is filled out incorrectly, this message will be displayed followed by the individual field error messages.", 'custom-contact-forms'); ?>
|
| 2267 |
+
</li>
|
| 2268 |
+
<li>
|
| 2269 |
+
<label for="remember_field_values">
|
| 2270 |
+
<?php _e("Remember Field Values:", 'custom-contact-forms'); ?>
|
| 2271 |
+
</label>
|
| 2272 |
+
<select name="settings[remember_field_values]">
|
| 2273 |
+
<option value="1">
|
| 2274 |
+
<?php _e("Yes", 'custom-contact-forms'); ?>
|
| 2275 |
+
</option>
|
| 2276 |
+
<option <?php if ($admin_options['remember_field_values'] == 0) echo 'selected="selected"'; ?> value="0">
|
| 2277 |
+
<?php _e("No", 'custom-contact-forms'); ?>
|
| 2278 |
+
</option>
|
| 2279 |
+
</select>
|
| 2280 |
+
</li>
|
| 2281 |
+
<li class="descrip">
|
| 2282 |
+
<?php _e("Selecting yes will make form fields remember how they were last filled out.", 'custom-contact-forms'); ?>
|
| 2283 |
+
</li>
|
| 2284 |
+
<li>
|
| 2285 |
+
<label for="enable_widget_tooltips">
|
| 2286 |
+
<?php _e("Tooltips in Widget:", 'custom-contact-forms'); ?>
|
| 2287 |
+
</label>
|
| 2288 |
+
<select name="settings[enable_widget_tooltips]">
|
| 2289 |
+
<option value="1">
|
| 2290 |
+
<?php _e("Enabled", 'custom-contact-forms'); ?>
|
| 2291 |
+
</option>
|
| 2292 |
+
<option <?php if ($admin_options['enable_widget_tooltips'] == 0) echo 'selected="selected"'; ?> value="0">
|
| 2293 |
+
<?php _e("Disabled", 'custom-contact-forms'); ?>
|
| 2294 |
+
</option>
|
| 2295 |
+
</select>
|
| 2296 |
+
</li>
|
| 2297 |
+
<li class="descrip">
|
| 2298 |
+
<?php _e("Enabling this shows tooltips containing field instructions on forms in the widget.", 'custom-contact-forms'); ?>
|
| 2299 |
+
</li>
|
| 2300 |
+
<li>
|
| 2301 |
+
<label for="admin_ajax">
|
| 2302 |
+
<?php _e("Fancy Admin AJAX Abilities:", 'custom-contact-forms'); ?>
|
| 2303 |
+
</label>
|
| 2304 |
+
<select name="settings[admin_ajax]">
|
| 2305 |
+
<option value="1">
|
| 2306 |
+
<?php _e("Enabled", 'custom-contact-forms'); ?>
|
| 2307 |
+
</option>
|
| 2308 |
+
<option value="0" <?php if ($admin_options['admin_ajax'] == 0) echo 'selected="selected"'; ?>>
|
| 2309 |
+
<?php _e("Disabled", 'custom-contact-forms'); ?>
|
| 2310 |
+
</option>
|
| 2311 |
+
</select>
|
| 2312 |
+
</li>
|
| 2313 |
+
<li class="descrip">
|
| 2314 |
+
<?php _e("If you enable this, creating, editing and modifying forms, fields, styles, etc in the admin panel will be done using AJAX. This means that clicking things like 'Edit' or 'Delete' will not cause the page to reload thus managing your forms will be much smoother and quicker. If you are having problems with things not saving, deleting, or inserting correctly, then disable this and fill out a bug report below.", 'custom-contact-forms'); ?>
|
| 2315 |
+
</li>
|
| 2316 |
+
<li>
|
| 2317 |
+
<label for="default_form_bad_permissions">
|
| 2318 |
+
<?php _e("Default Permissions Error:", 'custom-contact-forms'); ?>
|
| 2319 |
+
</label>
|
| 2320 |
+
<input name="settings[default_form_bad_permissions]" value="<?php echo $admin_options['default_form_bad_permissions']; ?>" type="text" />
|
| 2321 |
+
</li>
|
| 2322 |
+
<li class="descrip">
|
| 2323 |
+
<?php _e("When someone doesn't have the proper permissions to use a form, this message is displayed in place of the form. You control who can view each form with the form access manager which is located inside the form manager.", 'custom-contact-forms'); ?>
|
| 2324 |
+
</li>
|
| 2325 |
+
<li>
|
| 2326 |
+
<label for="enable_form_access_manager">
|
| 2327 |
+
<?php _e("Form Access Capabilities:", 'custom-contact-forms'); ?>
|
| 2328 |
+
</label>
|
| 2329 |
+
<select name="settings[enable_form_access_manager]">
|
| 2330 |
+
<option value="0">
|
| 2331 |
+
<?php _e("Disabled", 'custom-contact-forms'); ?>
|
| 2332 |
+
</option>
|
| 2333 |
+
<option value="1" <?php if ($admin_options['enable_form_access_manager'] == 1) echo 'selected="selected"'; ?>>
|
| 2334 |
+
<?php _e("Enabled", 'custom-contact-forms'); ?>
|
| 2335 |
+
</option>
|
| 2336 |
+
</select>
|
| 2337 |
+
</li>
|
| 2338 |
+
<li class="descrip">
|
| 2339 |
+
<?php _e("The form access manager within each form allows you to control who can view your form. However, that will take effect on any of your forms unless this is enabled.", 'custom-contact-forms'); ?>
|
| 2340 |
+
</li>
|
| 2341 |
+
<li>
|
| 2342 |
+
<label for="max_file_upload_size">
|
| 2343 |
+
<?php _e("Maximum File Upload Size:", 'custom-contact-forms'); ?>
|
| 2344 |
+
</label>
|
| 2345 |
+
<input name="settings[max_file_upload_size]" class="ccf-width75" type="text" value="<?php echo $admin_options['max_file_upload_size']; ?>" /> <?php _e("MB"); ?>
|
| 2346 |
+
|
| 2347 |
+
</li>
|
| 2348 |
+
<li class="descrip">
|
| 2349 |
+
<?php _e("When creating file fields, you can specify maximum upload sizes for each individual field. This setting lets you set an overall cap for security reasons. It is recommended you leave this at 10 MB.", 'custom-contact-forms'); ?>
|
| 2350 |
+
</li>
|
| 2351 |
+
<li class="show-widget"><b>
|
| 2352 |
+
<?php _e("Show Sidebar Widget:", 'custom-contact-forms'); ?>
|
| 2353 |
+
</b></li>
|
| 2354 |
+
<li>
|
| 2355 |
+
<label>
|
| 2356 |
+
<input value="1" type="checkbox" name="settings[show_widget_home]" <?php if ($admin_options['show_widget_home'] == 1) echo 'checked="checked"'; ?> />
|
| 2357 |
+
<?php _e("On Homepage", 'custom-contact-forms'); ?>
|
| 2358 |
+
</label>
|
| 2359 |
+
<label>
|
| 2360 |
+
<input value="1" type="checkbox" name="settings[show_widget_pages]" <?php if ($admin_options['show_widget_pages'] == 1) echo 'checked="checked"'; ?> />
|
| 2361 |
+
<?php _e("On Pages", 'custom-contact-forms'); ?>
|
| 2362 |
+
</label>
|
| 2363 |
+
<label>
|
| 2364 |
+
<input value="1" type="checkbox" name="settings[show_widget_singles]" <?php if ($admin_options['show_widget_singles'] == 1) echo 'checked="checked"'; ?> />
|
| 2365 |
+
<?php _e("On Single Posts", 'custom-contact-forms'); ?>
|
| 2366 |
+
</label>
|
| 2367 |
+
<br />
|
| 2368 |
+
<label>
|
| 2369 |
+
<input value="1" type="checkbox" name="settings[show_widget_categories]" <?php if ($admin_options['show_widget_categories'] == 1) echo 'checked="checked"'; ?> />
|
| 2370 |
+
<?php _e("On Categories", 'custom-contact-forms'); ?>
|
| 2371 |
+
</label>
|
| 2372 |
+
<label>
|
| 2373 |
+
<input value="1" type="checkbox" name="settings[show_widget_archives]" <?php if ($admin_options['show_widget_archives'] == 1) echo 'checked="checked"'; ?> />
|
| 2374 |
+
<?php _e("On Archives", 'custom-contact-forms'); ?>
|
| 2375 |
+
</label>
|
| 2376 |
+
</li>
|
| 2377 |
+
|
| 2378 |
+
<li>
|
| 2379 |
+
<input type="submit" value="<?php _e("Update", 'custom-contact-forms'); ?>" name="general_settings" />
|
| 2380 |
+
</li>
|
| 2381 |
+
</ul>
|
| 2382 |
+
</form>
|
| 2383 |
+
</div>
|
| 2384 |
+
</div>
|
| 2385 |
+
<div id="configure-mail" class="postbox">
|
| 2386 |
+
<h3 class="hndle"><span>
|
| 2387 |
+
<?php _e("Mail Settings", 'custom-contact-forms'); ?>
|
| 2388 |
+
</span></h3>
|
| 2389 |
+
<div class="inside">
|
| 2390 |
+
<form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 2391 |
+
<p><?php _e("There are two ways you can send emails: using the PHP mail() function or using SMTP (secure/insecure). If you choose to use the PHP mail() function you can ignore all the other options. For some people Wordpress's default way of sending mail does not work; if for some reason your mail is being sent you should try the SMTP option.", 'custom-contact-forms'); ?></p>
|
| 2392 |
+
<label for="mail_function"><?php _e("* Send My Emails Using the Following:", 'custom-contact-forms'); ?></label>
|
| 2393 |
+
<select name="mail_config[mail_function]">
|
| 2394 |
+
<option value="default"><?php _e("Wordpress Default", 'custom-contact-forms'); ?></option>
|
| 2395 |
+
<option <?php if ($admin_options['mail_function'] == 'smtp') echo 'selected="selected"'; ?> value="smtp"><?php _e("SMTP", 'custom-contact-forms'); ?></option>
|
| 2396 |
+
</select> <?php _e("(If mail isn't sending, try toggling this option.)", 'custom-contact-forms'); ?>
|
| 2397 |
+
<div>
|
| 2398 |
+
<ul class="left">
|
| 2399 |
+
<li><label for="smtp_host"><?php _e("SMTP Host:", 'custom-contact-forms'); ?></label> <input class="ccf-width125" type="text" size="10" name="mail_config[smtp_host]" value="<?php echo $admin_options['smtp_host']; ?>" /></li>
|
| 2400 |
+
<li><label for="smtp_port"><?php _e("SMTP Port:", 'custom-contact-forms'); ?></label> <input class="ccf-width125" type="text" size="10" name="mail_config[smtp_port]" value="<?php echo $admin_options['smtp_port']; ?>" /></li>
|
| 2401 |
+
<li><label for="smtp_encryption"><?php _e("Encryption:", 'custom-contact-forms'); ?></label> <select name="mail_config[smtp_encryption]">
|
| 2402 |
+
<option value="none"><?php _e("None", 'custom-contact-forms'); ?></option>
|
| 2403 |
+
<option <?php if ($admin_options['smtp_encryption'] == 'ssl') echo 'selected="selected"'; ?> value="ssl"><?php _e("SSL", 'custom-contact-forms'); ?></option>
|
| 2404 |
+
<option <?php if ($admin_options['smtp_encryption'] == 'tls') echo 'selected="selected"'; ?> value="tls"><?php _e("TLS", 'custom-contact-forms'); ?></option>
|
| 2405 |
+
</select></li>
|
| 2406 |
+
</ul>
|
| 2407 |
+
<ul class="right">
|
| 2408 |
+
<li><label for="smtp_authentication"><?php _e("SMTP Authentication:", 'custom-contact-forms'); ?></label> <select name="mail_config[smtp_authentication]"><option value="0"><?php _e("None Needed", 'custom-contact-forms'); ?></option><option <?php if ($admin_options['smtp_authentication'] == 1) echo 'selected="selected"'; ?> value="1"><?php _e("Use SMTP Username/Password", 'custom-contact-forms'); ?></option></select></li>
|
| 2409 |
+
<li><label for="smtp_username"><?php _e("SMTP Username:", 'custom-contact-forms'); ?></label> <input class="ccf-width125" type="text" size="10" name="mail_config[smtp_username]" value="<?php echo $admin_options['smtp_username']; ?>" /></li>
|
| 2410 |
+
<li><label for="smtp_password"><?php _e("SMTP Password:", 'custom-contact-forms'); ?></label> <input class="ccf-width125" type="text" size="10" name="mail_config[smtp_password]" value="<?php echo $admin_options['smtp_password']; ?>" /></li>
|
| 2411 |
+
</ul>
|
| 2412 |
+
</div>
|
| 2413 |
+
<input type="submit" name="configure_mail" value="<?php _e("Save Mail Sending Options", 'custom-contact-forms'); ?>" />
|
| 2414 |
+
</form>
|
| 2415 |
+
</div>
|
| 2416 |
+
</div>
|
| 2417 |
+
<div id="export" class="postbox">
|
| 2418 |
+
<h3 class="hndle"><span>
|
| 2419 |
+
<?php _e("Export", 'custom-contact-forms'); ?>
|
| 2420 |
+
</span></h3>
|
| 2421 |
+
<div class="inside">
|
| 2422 |
+
<form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 2423 |
+
<p>
|
| 2424 |
+
<?php _e("Preforming a Custom Contact Forms export will create a file of the form
|
| 2425 |
+
ccf-export-xxxx.sql on your web server. The file created contains SQL that
|
| 2426 |
+
will recreate all the plugin data on any Wordpress installation. After Custom Contact Forms creates the export file, you will be prompted to download it. You can use this file as a backup in case your Wordpress database gets ruined.", 'custom-contact-forms'); ?>
|
| 2427 |
+
</p>
|
| 2428 |
+
<input type="submit" name="ccf_export" value="<?php _e("Export All CCF Plugin Content", 'custom-contact-forms'); ?>" />
|
| 2429 |
+
</form>
|
| 2430 |
+
</div>
|
| 2431 |
+
</div>
|
| 2432 |
+
<div id="import" class="postbox">
|
| 2433 |
+
<h3 class="hndle"><span>
|
| 2434 |
+
<?php _e("Import", 'custom-contact-forms'); ?>
|
| 2435 |
+
</span></h3>
|
| 2436 |
+
<div class="inside">
|
| 2437 |
+
<form method="post" enctype="multipart/form-data" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
|
| 2438 |
+
|
| 2439 |
+
<p>
|
| 2440 |
+
<?php _e("Browse to a CCF .sql export file to import Custom Contact Form data from another Wordpress installation to this one. Pressing the 'Clear and Import' button deletes all current data and then imports the selected file; this will not work for merging to data!. Clearing all CCF data before importing prevents any conflicts from occuring. Before you attempt an import, you should always download a backup, by clicking the 'Export All' button.", 'custom-contact-forms'); ?>
|
| 2441 |
+
</p>
|
| 2442 |
+
<p class="choose_import">
|
| 2443 |
+
<?php _e("Choose What You Want to Use from the Import File:", 'custom-contact-forms'); ?>
|
| 2444 |
+
</p>
|
| 2445 |
+
<ul>
|
| 2446 |
+
<li>
|
| 2447 |
+
<input type="checkbox" checked="checked" name="ccf_import_overwrite_settings" value="1" />
|
| 2448 |
+
<label for="ccf_import_overwrite_settings">
|
| 2449 |
+
<?php _e("Use General Settings", 'custom-contact-forms'); ?>
|
| 2450 |
+
</label>
|
| 2451 |
+
</li>
|
| 2452 |
+
<li>
|
| 2453 |
+
<input type="checkbox" checked="checked" name="ccf_import_forms" value="1" />
|
| 2454 |
+
<label for="ccf_import_forms">
|
| 2455 |
+
<?php _e("Forms", 'custom-contact-forms'); ?>
|
| 2456 |
+
</label>
|
| 2457 |
+
</li>
|
| 2458 |
+
<li>
|
| 2459 |
+
<input type="checkbox" checked="checked" name="ccf_import_saved_submissions" value="1" />
|
| 2460 |
+
<label for="ccf_import_saved_submissions">
|
| 2461 |
+
<?php _e("Form Submissions", 'custom-contact-forms'); ?>
|
| 2462 |
+
</label>
|
| 2463 |
+
</li>
|
| 2464 |
+
<li>
|
| 2465 |
+
<input type="checkbox" checked="checked" name="ccf_import_fields" value="1" />
|
| 2466 |
+
<label for="ccf_import_fields">
|
| 2467 |
+
<?php _e("Fields", 'custom-contact-forms'); ?>
|
| 2468 |
+
</label>
|
| 2469 |
+
</li>
|
| 2470 |
+
<li>
|
| 2471 |
+
<input type="checkbox" checked="checked" name="ccf_import_forms" value="1" />
|
| 2472 |
+
<label for="ccf_import_forms">
|
| 2473 |
+
<?php _e("Forms", 'custom-contact-forms'); ?>
|
| 2474 |
+
</label>
|
| 2475 |
+
</li>
|
| 2476 |
+
<li>
|
| 2477 |
+
<input type="checkbox" checked="checked" name="ccf_import_field_options" value="1" />
|
| 2478 |
+
<label for="ccf_import_field_options">
|
| 2479 |
+
<?php _e("Field Options", 'custom-contact-forms'); ?>
|
| 2480 |
+
</label>
|
| 2481 |
+
</li>
|
| 2482 |
+
<li>
|
| 2483 |
+
<input type="checkbox" checked="checked" name="ccf_import_styles" value="1" />
|
| 2484 |
+
<label for="ccf_import_styles">
|
| 2485 |
+
<?php _e("Styles", 'custom-contact-forms'); ?>
|
| 2486 |
+
</label>
|
| 2487 |
+
</li>
|
| 2488 |
+
</ul>
|
| 2489 |
+
<p class="choose_import">
|
| 2490 |
+
<label for="import_file">
|
| 2491 |
+
<?php _e("Choose an Import File:", 'custom-contact-forms'); ?>
|
| 2492 |
+
</label>
|
| 2493 |
+
<input type="file" name="import_file" />
|
| 2494 |
+
</p>
|
| 2495 |
+
<input name="ccf_clear_import" type="submit" value="<?php _e("Clear and Import", 'custom-contact-forms'); ?>" />
|
| 2496 |
+
<input type="checkbox" name="ccf_import_confirm" value="1" />
|
| 2497 |
+
<?php _e('Yes, I want to do this and have created a backup.', 'custom-contact-forms'); ?>
|
| 2498 |
+
</form>
|
| 2499 |
+
</div>
|
| 2500 |
+
</div>
|
| 2501 |
+
<?php $this->insertUsagePopover(); ?>
|
| 2502 |
+
<?php $this->insertQuickStartPopover(); ?>
|
| 2503 |
+
</div>
|
| 2504 |
+
<?php
|
| 2505 |
+
}
|
| 2506 |
+
}
|
| 2507 |
+
}
|
| 2508 |
Â
?>
|
custom-contact-forms-front.php
CHANGED
|
@@ -1,586 +1,652 @@
|
|
| 1 |
-
<?php
|
| 2 |
-
/*
|
| 3 |
-
Custom Contact Forms Plugin
|
| 4 |
-
By Taylor Lovett - http://www.taylorlovett.com
|
| 5 |
-
Plugin URL: http://www.taylorlovett.com/wordpress-plugins
|
| 6 |
-
*/
|
| 7 |
-
if (!class_exists('CustomContactFormsFront')) {
|
| 8 |
-
class CustomContactFormsFront extends CustomContactForms {
|
| 9 |
-
var $form_errors = array();
|
| 10 |
-
var $error_return;
|
| 11 |
-
var $
|
| 12 |
-
var $
|
| 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 |
-
wp_enqueue_script('
|
| 81 |
-
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
|
| 85 |
-
|
| 86 |
-
wp_enqueue_script('
|
| 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 |
-
$this->
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
|
| 149 |
-
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
|
| 154 |
-
|
| 155 |
-
|
| 156 |
-
|
| 157 |
-
|
| 158 |
-
|
| 159 |
-
|
| 160 |
-
|
| 161 |
-
|
| 162 |
-
|
| 163 |
-
|
| 164 |
-
|
| 165 |
-
|
| 166 |
-
|
| 167 |
-
|
| 168 |
-
|
| 169 |
-
|
| 170 |
-
|
| 171 |
-
|
| 172 |
-
|
| 173 |
-
|
| 174 |
-
|
| 175 |
-
|
| 176 |
-
|
| 177 |
-
|
| 178 |
-
|
| 179 |
-
|
| 180 |
-
|
| 181 |
-
|
| 182 |
-
|
| 183 |
-
|
| 184 |
-
|
| 185 |
-
|
| 186 |
-
|
| 187 |
-
|
| 188 |
-
|
| 189 |
-
|
| 190 |
-
|
| 191 |
-
|
| 192 |
-
|
| 193 |
-
|
| 194 |
-
|
| 195 |
-
|
| 196 |
-
|
| 197 |
-
|
| 198 |
-
|
| 199 |
-
|
| 200 |
-
|
| 201 |
-
|
| 202 |
-
|
| 203 |
-
|
| 204 |
-
|
| 205 |
-
|
| 206 |
-
|
| 207 |
-
|
| 208 |
-
|
| 209 |
-
|
| 210 |
-
|
| 211 |
-
|
| 212 |
-
|
| 213 |
-
|
| 214 |
-
|
| 215 |
-
|
| 216 |
-
|
| 217 |
-
|
| 218 |
-
$
|
| 219 |
-
$out = '';
|
| 220 |
-
$
|
| 221 |
-
$
|
| 222 |
-
$
|
| 223 |
-
|
| 224 |
-
|
| 225 |
-
$
|
| 226 |
-
|
| 227 |
-
|
| 228 |
-
|
| 229 |
-
|
| 230 |
-
|
| 231 |
-
|
| 232 |
-
|
| 233 |
-
|
| 234 |
-
|
| 235 |
-
|
| 236 |
-
|
| 237 |
-
|
| 238 |
-
|
| 239 |
-
|
| 240 |
-
|
| 241 |
-
|
| 242 |
-
|
| 243 |
-
|
| 244 |
-
|
| 245 |
-
|
| 246 |
-
|
| 247 |
-
|
| 248 |
-
|
| 249 |
-
}
|
| 250 |
-
$
|
| 251 |
-
|
| 252 |
-
|
| 253 |
-
|
| 254 |
-
$out .= '<div>'
|
| 255 |
-
} elseif ($field->
|
| 256 |
-
$
|
| 257 |
-
} elseif ($field->field_type == '
|
| 258 |
-
$
|
| 259 |
-
|
| 260 |
-
|
| 261 |
-
|
| 262 |
-
$
|
| 263 |
-
|
| 264 |
-
|
| 265 |
-
|
| 266 |
-
|
| 267 |
-
|
| 268 |
-
|
| 269 |
-
|
| 270 |
-
|
| 271 |
-
|
| 272 |
-
|
| 273 |
-
$
|
| 274 |
-
$
|
| 275 |
-
|
| 276 |
-
|
| 277 |
-
|
| 278 |
-
|
| 279 |
-
|
| 280 |
-
|
| 281 |
-
|
| 282 |
-
|
| 283 |
-
}
|
| 284 |
-
|
| 285 |
-
$
|
| 286 |
-
|
| 287 |
-
|
| 288 |
-
|
| 289 |
-
|
| 290 |
-
|
| 291 |
-
|
| 292 |
-
|
| 293 |
-
|
| 294 |
-
|
| 295 |
-
|
| 296 |
-
|
| 297 |
-
|
| 298 |
-
|
| 299 |
-
|
| 300 |
-
|
| 301 |
-
|
| 302 |
-
if ($
|
| 303 |
-
$
|
| 304 |
-
|
| 305 |
-
|
| 306 |
-
|
| 307 |
-
|
| 308 |
-
|
| 309 |
-
|
| 310 |
-
|
| 311 |
-
|
| 312 |
-
$
|
| 313 |
-
$
|
| 314 |
-
$
|
| 315 |
-
$form_styles .= '
|
| 316 |
-
$form_styles .= '#' . $form_id . "
|
| 317 |
-
$form_styles .= '#' . $form_id . "
|
| 318 |
-
$form_styles .= '#' . $form_id . "
|
| 319 |
-
$form_styles .= '#' . $form_id . "
|
| 320 |
-
$form_styles .= '.
|
| 321 |
-
$form_styles .= '
|
| 322 |
-
|
| 323 |
-
|
| 324 |
-
|
| 325 |
-
|
| 326 |
-
|
| 327 |
-
|
| 328 |
-
|
| 329 |
-
|
| 330 |
-
|
| 331 |
-
|
| 332 |
-
|
| 333 |
-
|
| 334 |
-
|
| 335 |
-
|
| 336 |
-
|
| 337 |
-
|
| 338 |
-
|
| 339 |
-
|
| 340 |
-
$
|
| 341 |
-
|
| 342 |
-
|
| 343 |
-
|
| 344 |
-
|
| 345 |
-
|
| 346 |
-
|
| 347 |
-
|
| 348 |
-
|
| 349 |
-
|
| 350 |
-
|
| 351 |
-
|
| 352 |
-
|
| 353 |
-
|
| 354 |
-
|
| 355 |
-
|
| 356 |
-
|
| 357 |
-
|
| 358 |
-
|
| 359 |
-
|
| 360 |
-
|
| 361 |
-
|
| 362 |
-
|
| 363 |
-
|
| 364 |
-
|
| 365 |
-
|
| 366 |
-
|
| 367 |
-
|
| 368 |
-
|
| 369 |
-
|
| 370 |
-
|
| 371 |
-
|
| 372 |
-
|
| 373 |
-
|
| 374 |
-
|
| 375 |
-
|
| 376 |
-
|
| 377 |
-
|
| 378 |
-
|
| 379 |
-
|
| 380 |
-
|
| 381 |
-
|
| 382 |
-
|
| 383 |
-
|
| 384 |
-
|
| 385 |
-
|
| 386 |
-
|
| 387 |
-
|
| 388 |
-
|
| 389 |
-
|
| 390 |
-
|
| 391 |
-
|
| 392 |
-
|
| 393 |
-
|
| 394 |
-
|
| 395 |
-
|
| 396 |
-
|
| 397 |
-
|
| 398 |
-
|
| 399 |
-
|
| 400 |
-
}
|
| 401 |
-
|
| 402 |
-
|
| 403 |
-
|
| 404 |
-
|
| 405 |
-
|
| 406 |
-
|
| 407 |
-
|
| 408 |
-
|
| 409 |
-
|
| 410 |
-
|
| 411 |
-
|
| 412 |
-
|
| 413 |
-
|
| 414 |
-
|
| 415 |
-
|
| 416 |
-
|
| 417 |
-
$
|
| 418 |
-
|
| 419 |
-
|
| 420 |
-
|
| 421 |
-
|
| 422 |
-
|
| 423 |
-
|
| 424 |
-
|
| 425 |
-
|
| 426 |
-
|
| 427 |
-
|
| 428 |
-
|
| 429 |
-
$
|
| 430 |
-
|
| 431 |
-
|
| 432 |
-
|
| 433 |
-
|
| 434 |
-
|
| 435 |
-
|
| 436 |
-
|
| 437 |
-
|
| 438 |
-
|
| 439 |
-
|
| 440 |
-
|
| 441 |
-
|
| 442 |
-
|
| 443 |
-
|
| 444 |
-
|
| 445 |
-
|
| 446 |
-
|
| 447 |
-
|
| 448 |
-
|
| 449 |
-
|
| 450 |
-
|
| 451 |
-
|
| 452 |
-
|
| 453 |
-
|
| 454 |
-
|
| 455 |
-
|
| 456 |
-
|
| 457 |
-
|
| 458 |
-
|
| 459 |
-
|
| 460 |
-
|
| 461 |
-
|
| 462 |
-
|
| 463 |
-
|
| 464 |
-
|
| 465 |
-
|
| 466 |
-
|
| 467 |
-
|
| 468 |
-
|
| 469 |
-
|
| 470 |
-
|
| 471 |
-
|
| 472 |
-
|
| 473 |
-
|
| 474 |
-
$
|
| 475 |
-
|
| 476 |
-
|
| 477 |
-
|
| 478 |
-
|
| 479 |
-
|
| 480 |
-
|
| 481 |
-
|
| 482 |
-
|
| 483 |
-
|
| 484 |
-
|
| 485 |
-
|
| 486 |
-
|
| 487 |
-
|
| 488 |
-
|
| 489 |
-
|
| 490 |
-
|
| 491 |
-
|
| 492 |
-
|
| 493 |
-
$
|
| 494 |
-
|
| 495 |
-
|
| 496 |
-
|
| 497 |
-
|
| 498 |
-
|
| 499 |
-
|
| 500 |
-
|
| 501 |
-
|
| 502 |
-
|
| 503 |
-
|
| 504 |
-
|
| 505 |
-
|
| 506 |
-
|
| 507 |
-
|
| 508 |
-
|
| 509 |
-
|
| 510 |
-
|
| 511 |
-
$
|
| 512 |
-
|
| 513 |
-
|
| 514 |
-
|
| 515 |
-
|
| 516 |
-
|
| 517 |
-
|
| 518 |
-
|
| 519 |
-
|
| 520 |
-
|
| 521 |
-
|
| 522 |
-
|
| 523 |
-
|
| 524 |
-
|
| 525 |
-
|
| 526 |
-
|
| 527 |
-
|
| 528 |
-
|
| 529 |
-
|
| 530 |
-
|
| 531 |
-
|
| 532 |
-
$
|
| 533 |
-
|
| 534 |
-
|
| 535 |
-
|
| 536 |
-
|
| 537 |
-
|
| 538 |
-
|
| 539 |
-
|
| 540 |
-
|
| 541 |
-
|
| 542 |
-
|
| 543 |
-
|
| 544 |
-
|
| 545 |
-
|
| 546 |
-
|
| 547 |
-
|
| 548 |
-
|
| 549 |
-
|
| 550 |
-
|
| 551 |
-
|
| 552 |
-
|
| 553 |
-
|
| 554 |
-
|
| 555 |
-
|
| 556 |
-
|
| 557 |
-
|
| 558 |
-
|
| 559 |
-
|
| 560 |
-
|
| 561 |
-
|
| 562 |
-
|
| 563 |
-
|
| 564 |
-
|
| 565 |
-
|
| 566 |
-
|
| 567 |
-
|
| 568 |
-
|
| 569 |
-
|
| 570 |
-
|
| 571 |
-
|
| 572 |
-
|
| 573 |
-
|
| 574 |
-
|
| 575 |
-
|
| 576 |
-
|
| 577 |
-
|
| 578 |
-
|
| 579 |
-
|
| 580 |
-
|
| 581 |
-
|
| 582 |
-
|
| 583 |
-
|
| 584 |
-
|
| 585 |
-
}
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
| 586 |
Â
?>
|
| 1 |
+
<?php
|
| 2 |
+
/*
|
| 3 |
+
Custom Contact Forms Plugin
|
| 4 |
+
By Taylor Lovett - http://www.taylorlovett.com
|
| 5 |
+
Plugin URL: http://www.taylorlovett.com/wordpress-plugins
|
| 6 |
+
*/
|
| 7 |
+
if (!class_exists('CustomContactFormsFront')) {
|
| 8 |
+
class CustomContactFormsFront extends CustomContactForms {
|
| 9 |
+
var $form_errors = array();
|
| 10 |
+
var $error_return;
|
| 11 |
+
var $form_uploads = array();
|
| 12 |
+
var $current_form;
|
| 13 |
+
var $current_thank_you_message;
|
| 14 |
+
|
| 15 |
+
function frontInit() {
|
| 16 |
+
ccf_utils::startSession();
|
| 17 |
+
//print_r($_SESSION);
|
| 18 |
+
$this->processForms();
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
function includeDependencies() {
|
| 22 |
+
$admin_options = parent::getAdminOptions();
|
| 23 |
+
$include_defaults = false;
|
| 24 |
+
$include_datepicker = false;
|
| 25 |
+
// faster algorithm? this is in O(m*n) n = # of forms and m = # of posts
|
| 26 |
+
if ($admin_options['form_page_inclusion_only'] == 1) {
|
| 27 |
+
global $posts;
|
| 28 |
+
$forms = parent::selectAllForms();
|
| 29 |
+
$active_forms = array();
|
| 30 |
+
foreach ($forms as $form) {
|
| 31 |
+
$form_pages = parent::unserializeFormPageIds($form);
|
| 32 |
+
foreach ($posts as $i => $p) {
|
| 33 |
+
if (in_array($p->ID, $form_pages)) {
|
| 34 |
+
$active_forms[] = $form;
|
| 35 |
+
break;
|
| 36 |
+
}
|
| 37 |
+
}
|
| 38 |
+
}
|
| 39 |
+
|
| 40 |
+
if (!empty($active_forms)) {
|
| 41 |
+
$include_defaults = true;
|
| 42 |
+
if ($admin_options['enable_jquery'] == 1) {
|
| 43 |
+
foreach ($active_forms as $form) {
|
| 44 |
+
$fields = parent::getAttachedFieldsArray($form->id);
|
| 45 |
+
foreach ($fields as $fid) {
|
| 46 |
+
$field = parent::selectField($fid);
|
| 47 |
+
if ($field->field_type == 'Date') {
|
| 48 |
+
$include_datepicker = true;
|
| 49 |
+
break;
|
| 50 |
+
}
|
| 51 |
+
}
|
| 52 |
+
}
|
| 53 |
+
}
|
| 54 |
+
}
|
| 55 |
+
} else {
|
| 56 |
+
$include_defaults = true;
|
| 57 |
+
$include_datepicker = true;
|
| 58 |
+
}
|
| 59 |
+
|
| 60 |
+
if ($include_defaults) {
|
| 61 |
+
if ($admin_options['enable_jquery'] == 1) {
|
| 62 |
+
if ($include_datepicker) {
|
| 63 |
+
add_action('wp_print_styles', array(&$this, 'insertDatePickerStyles'), 1);
|
| 64 |
+
add_action('wp_enqueue_scripts', array(&$this, 'insertDatePickerScripts'), 1);
|
| 65 |
+
}
|
| 66 |
+
add_action('wp_enqueue_scripts', array(&$this, 'insertFrontEndScripts'), 1);
|
| 67 |
+
}
|
| 68 |
+
add_action('wp_print_styles', array(&$this, 'insertFrontEndStyles'), 1);
|
| 69 |
+
}
|
| 70 |
+
}
|
| 71 |
+
|
| 72 |
+
function insertFrontEndStyles() {
|
| 73 |
+
wp_register_style('CCFStandardsCSS', plugins_url() . '/custom-contact-forms/css/custom-contact-forms-standards.css');
|
| 74 |
+
wp_register_style('CCFFormsCSS', plugins_url() . '/custom-contact-forms/css/custom-contact-forms.css');
|
| 75 |
+
wp_enqueue_style('CCFStandardsCSS');
|
| 76 |
+
wp_enqueue_style('CCFFormsCSS');
|
| 77 |
+
}
|
| 78 |
+
|
| 79 |
+
function insertFrontEndScripts() {
|
| 80 |
+
//wp_enqueue_script('jquery');
|
| 81 |
+
wp_enqueue_script('jquery-tools', plugins_url() . '/custom-contact-forms/js/jquery.tools.min.js');
|
| 82 |
+
wp_enqueue_script('ccf-main', plugins_url() . '/custom-contact-forms/js/custom-contact-forms.js', '1.0');
|
| 83 |
+
}
|
| 84 |
+
|
| 85 |
+
function insertDatePickerScripts() {
|
| 86 |
+
wp_enqueue_script('jquery-ui-datepicker', plugins_url() . '/custom-contact-forms/js/jquery.ui.datepicker.js', array('jquery-ui-core', 'jquery-ui-widget'));
|
| 87 |
+
wp_enqueue_script('ccf-datepicker', plugins_url() . '/custom-contact-forms/js/custom-contact-forms-datepicker.js', '1.2');
|
| 88 |
+
}
|
| 89 |
+
|
| 90 |
+
function insertDatePickerStyles() {
|
| 91 |
+
wp_register_style('ccf-jquery-ui', plugins_url() . '/custom-contact-forms/css/jquery-ui.css');
|
| 92 |
+
wp_enqueue_style('ccf-jquery-ui');
|
| 93 |
+
}
|
| 94 |
+
|
| 95 |
+
function setFormError($key, $message) {
|
| 96 |
+
$this->form_errors[$key] = $message;
|
| 97 |
+
}
|
| 98 |
+
|
| 99 |
+
function getFormError($key) {
|
| 100 |
+
return $this->form_errors[$key];
|
| 101 |
+
}
|
| 102 |
+
|
| 103 |
+
function getAllFormErrors() {
|
| 104 |
+
return $this->form_errors;
|
| 105 |
+
}
|
| 106 |
+
|
| 107 |
+
function shortCodeToForm($atts) {
|
| 108 |
+
extract(shortcode_atts(array(
|
| 109 |
+
'form' => 0,
|
| 110 |
+
), $atts));
|
| 111 |
+
$this_form = parent::selectForm($form);
|
| 112 |
+
if (empty($this_form)) return '';
|
| 113 |
+
$admin_options = parent::getAdminOptions();
|
| 114 |
+
if ($admin_options['enable_form_access_manager'] == 1 && !$this->userCanViewForm($this_form))
|
| 115 |
+
return $admin_options['default_form_bad_permissions'];
|
| 116 |
+
|
| 117 |
+
return $this->getFormCode($this_form);
|
| 118 |
+
}
|
| 119 |
+
|
| 120 |
+
function emptyFormErrors() {
|
| 121 |
+
$this->form_errors = array();
|
| 122 |
+
}
|
| 123 |
+
|
| 124 |
+
function contentFilter($content) {
|
| 125 |
+
// THIS NEEDS TO REPLACE THE SHORTCODE ONLY ONCE
|
| 126 |
+
$errors = $this->getAllFormErrors();
|
| 127 |
+
if (!empty($errors)) {
|
| 128 |
+
$admin_options = parent::getAdminOptions();
|
| 129 |
+
$out = '<div id="custom-contact-forms-errors"><p>'.$admin_options['default_form_error_header'].'</p><ul>' . "\n";
|
| 130 |
+
//$errors = $this->getAllFormErrors();
|
| 131 |
+
foreach ($errors as $error) {
|
| 132 |
+
$out .= '<li>'.$error.'</li>' . "\n";
|
| 133 |
+
}
|
| 134 |
+
$err_link = (!empty($this->error_return)) ? '<p><a href="'.$this->error_return.'" title="Go Back">< ' . __('Go Back to Form.', 'custom-contact-forms') . '</a></p>' : '';
|
| 135 |
+
$this->emptyFormErrors();
|
| 136 |
+
return $out . '</ul>' . "\n" . $err_link . '</div>';
|
| 137 |
+
}
|
| 138 |
+
return $content;
|
| 139 |
+
}
|
| 140 |
+
|
| 141 |
+
function insertFormSuccessCode() {
|
| 142 |
+
$admin_options = parent::getAdminOptions();
|
| 143 |
+
if ($this->current_form !== 0) {
|
| 144 |
+
$form = parent::selectForm($this->current_form);
|
| 145 |
+
$success_message = (!empty($form->form_success_message)) ? $form->form_success_message : $admin_options['form_success_message'];
|
| 146 |
+
$success_title = (!empty($form->form_success_title)) ? $form->form_success_title : $admin_options['form_success_message_title'];
|
| 147 |
+
} else {
|
| 148 |
+
$success_title = $admin_options['form_success_message_title'];
|
| 149 |
+
$success_message = (empty($this->current_thank_you_message)) ? $admin_options['form_success_message'] : $this->current_thank_you_message;
|
| 150 |
+
} if ($form->form_style != 0) {
|
| 151 |
+
$style = parent::selectStyle($form->form_style);
|
| 152 |
+
?>
|
| 153 |
+
<style type="text/css">
|
| 154 |
+
<!--
|
| 155 |
+
#ccf-form-success { z-index:10000; border-color:#<?php echo parent::formatStyle($style->success_popover_bordercolor); ?>; height:<?php $style->success_popover_height; ?>; }
|
| 156 |
+
#ccf-form-success div { background-color:#<?php echo parent::formatStyle($style->success_popover_bordercolor); ?>; }
|
| 157 |
+
#ccf-form-success div h5 { color:#<?php echo parent::formatStyle($style->success_popover_title_fontcolor); ?>; font-size:<?php echo $style->success_popover_title_fontsize; ?>; }
|
| 158 |
+
#ccf-form-success div a { color:#<?php echo parent::formatStyle($style->success_popover_title_fontcolor); ?>; }
|
| 159 |
+
#ccf-form-success p { font-size:<?php echo $style->success_popover_fontsize; ?>; color:#<?php echo parent::formatStyle($style->success_popover_fontcolor); ?>; }
|
| 160 |
+
-->
|
| 161 |
+
</style>
|
| 162 |
+
<?php
|
| 163 |
+
}
|
| 164 |
+
?>
|
| 165 |
+
<div id="ccf-form-success">
|
| 166 |
+
<div>
|
| 167 |
+
<h5><?php echo $success_title; ?></h5>
|
| 168 |
+
<a href="javascript:void(0)" class="close">×</a>
|
| 169 |
+
</div>
|
| 170 |
+
<p><?php echo $success_message; ?></p>
|
| 171 |
+
|
| 172 |
+
</div>
|
| 173 |
+
|
| 174 |
+
<?php
|
| 175 |
+
}
|
| 176 |
+
|
| 177 |
+
function validEmail($email) {
|
| 178 |
+
if (!@preg_match("/^[^@]{1,64}@[^@]{1,255}$/", $email)) return false;
|
| 179 |
+
$email_array = explode("@", $email);
|
| 180 |
+
$local_array = explode(".", $email_array[0]);
|
| 181 |
+
for ($i = 0; $i < sizeof($local_array); $i++) {
|
| 182 |
+
if (!@preg_match("/^(([A-Za-z0-9!#$%&'*+\/=?^_`{|}~-][A-Za-z0-9!#$%&'*+\/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$/", $local_array[$i])) {
|
| 183 |
+
return false;
|
| 184 |
+
}
|
| 185 |
+
} if (!@preg_match("/^\[?[0-9\.]+\]?$/", $email_array[1])) {
|
| 186 |
+
$domain_array = explode(".", $email_array[1]);
|
| 187 |
+
if (sizeof($domain_array) < 2) return false;
|
| 188 |
+
for ($i = 0; $i < sizeof($domain_array); $i++) {
|
| 189 |
+
if (!@preg_match("/^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$/", $domain_array[$i])) {
|
| 190 |
+
return false;
|
| 191 |
+
}
|
| 192 |
+
}
|
| 193 |
+
}
|
| 194 |
+
return true;
|
| 195 |
+
}
|
| 196 |
+
|
| 197 |
+
function validWebsite($website) {
|
| 198 |
+
return preg_match('|^http(s)?://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$|i', $website);
|
| 199 |
+
}
|
| 200 |
+
|
| 201 |
+
function getFormCode($form, $is_widget_form = false) {
|
| 202 |
+
if (empty($form)) return '';
|
| 203 |
+
$admin_options = parent::getAdminOptions();
|
| 204 |
+
$form_key = time();
|
| 205 |
+
$out = '';
|
| 206 |
+
$form_styles = '';
|
| 207 |
+
$style_class = (!$is_widget_form) ? ' customcontactform' : ' customcontactform-sidebar';
|
| 208 |
+
$form_id = 'form-' . $form->id . '-'.$form_key;
|
| 209 |
+
if ($form->form_style != 0) {
|
| 210 |
+
$style = parent::selectStyle($form->form_style, '');
|
| 211 |
+
$style_class = $style->style_slug;
|
| 212 |
+
}
|
| 213 |
+
$form_method = (empty($form->form_method)) ? 'post' : strtolower($form->form_method);
|
| 214 |
+
$form_title = ccf_utils::decodeOption($form->form_title, 1, 1);
|
| 215 |
+
$action = (!empty($form->form_action)) ? $form->form_action : $_SERVER['REQUEST_URI'];
|
| 216 |
+
$file_upload_form = '';
|
| 217 |
+
//$out .= '<form id="'.$form_id.'" method="'.$form_method.'" action="'.$action.'" class="'.$style_class.'">' . "\n";
|
| 218 |
+
$out .= ccf_utils::decodeOption($form->custom_code, 1, 1) . "\n";
|
| 219 |
+
if (!empty($form_title) && !$is_widget_form) $out .= '<h4 id="h4-' . $form->id . '-' . $form_key . '">' . $form_title . '</h4>' . "\n";
|
| 220 |
+
$fields = parent::getAttachedFieldsArray($form->id);
|
| 221 |
+
$hiddens = '';
|
| 222 |
+
$code_type = ($admin_options['code_type'] == 'XHTML') ? ' /' : '';
|
| 223 |
+
$add_reset = '';
|
| 224 |
+
foreach ($fields as $field_id) {
|
| 225 |
+
$field = parent::selectField($field_id, '');
|
| 226 |
+
$req = ($field->field_required == 1 or $field->field_slug == 'ishuman') ? '* ' : '';
|
| 227 |
+
$req_long = ($field->field_required == 1) ? ' ' . __('(required)', 'custom-contact-forms') : '';
|
| 228 |
+
$input_id = 'id="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'-'.$form_key.'"';
|
| 229 |
+
$field_value = ccf_utils::decodeOption($field->field_value, 1, 1);
|
| 230 |
+
$instructions = (empty($field->field_instructions)) ? '' : 'title="' . $field->field_instructions . $req_long . '" ';
|
| 231 |
+
$tooltip_class = (empty($field->field_instructions)) ? '' : 'ccf-tooltip-field';
|
| 232 |
+
if ($admin_options['enable_widget_tooltips'] == 0 && $is_widget_form) $instructions = '';
|
| 233 |
+
if ($_SESSION['ccf_fields'][$field->field_slug]) {
|
| 234 |
+
if ($admin_options['remember_field_values'] == 1)
|
| 235 |
+
$field_value = $_SESSION['ccf_fields'][$field->field_slug];
|
| 236 |
+
} if ($field->field_slug == 'captcha') {
|
| 237 |
+
$out .= '<div>' . "\n" . $this->getCaptchaCode($field, $form->id) . "\n" . '</div>' . "\n";
|
| 238 |
+
} elseif ($field->field_slug == 'usaStates') {
|
| 239 |
+
$field->field_value = $field_value;
|
| 240 |
+
$out .= '<div>' . "\n" . $this->getStatesCode($field, $form->id) . "\n" . '</div>' . "\n";
|
| 241 |
+
} elseif ($field->field_slug == 'allCountries') {
|
| 242 |
+
$field->field_value = $field_value;
|
| 243 |
+
$out .= '<div>' . "\n" . $this->getCountriesCode($field, $form->id) . "\n" . '</div>' . "\n";
|
| 244 |
+
} elseif ($field->field_slug == 'resetButton') {
|
| 245 |
+
$add_reset = ' <input type="reset" '.$instructions.' class="reset-button '.$field->field_class.' '.$tooltip_class.'" value="' . $field->field_value . '" />';
|
| 246 |
+
} elseif ($field->field_type == 'Text') {
|
| 247 |
+
$maxlength = (empty($field->field_maxlength) or $field->field_maxlength <= 0) ? '' : ' maxlength="'.$field->field_maxlength.'"';
|
| 248 |
+
$out .= '<div>'."\n".'<label for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field->field_label, 1, 1).'</label>'."\n".'<input class="'.$field->field_class.' '.$tooltip_class.'" '.$instructions.' '.$input_id.' type="text" name="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'" value="'.$field_value.'"'.$maxlength.''.$code_type.'>'."\n".'</div>' . "\n";
|
| 249 |
+
} elseif ($field->field_type == 'File') {
|
| 250 |
+
$file_upload_form = ' enctype="multipart/form-data" ';
|
| 251 |
+
$out .= '<div>'."\n".'<label for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field->field_label, 1, 1).'</label>'."\n".'<input class="'.$field->field_class.' '.$tooltip_class.'" '.$instructions.' '.$input_id.' type="file" name="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'" value="'.$field_value.'"'.$code_type.'>'."\n".'</div>' . "\n";
|
| 252 |
+
} elseif ($field->field_type == 'Date') {
|
| 253 |
+
$maxlength = (empty($field->field_maxlength) or $field->field_maxlength <= 0) ? '' : ' maxlength="'.$field->field_maxlength.'"';
|
| 254 |
+
$out .= '<div>'."\n".'<label for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field->field_label, 1, 1).'</label>'."\n".'<input class="'.$field->field_class.' ccf-datepicker '.$tooltip_class.'" '.$instructions.' '.$input_id.' type="text" name="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'" value="'.$field_value.'"'.$maxlength.''.$code_type.'>'."\n".'</div>' . "\n";
|
| 255 |
+
} elseif ($field->field_type == 'Hidden') {
|
| 256 |
+
$hiddens .= '<input type="hidden" name="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'" value="'.$field_value.'" '.$input_id.''.$code_type.'>' . "\n";
|
| 257 |
+
} /*elseif ($field->field_type == 'Checkbox') {
|
| 258 |
+
$out .= '<div>'."\n".'<input class="'.$field->field_class.' '.$tooltip_class.'" '.$instructions.' type="checkbox" name="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'" value="'.ccf_utils::decodeOption($field->field_value, 1, 1).'" '.$input_id.''.$code_type.'> '."\n".'<label class="checkbox" for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">' . $req .ccf_utils::decodeOption($field->field_label, 1, 1).'</label>'."\n".'</div>' . "\n";
|
| 259 |
+
}*/ elseif ($field->field_type == 'Textarea') {
|
| 260 |
+
$out .= '<div>'."\n".'<label for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field->field_label, 1, 1).'</label>'."\n".'<textarea class="'.$field->field_class.' '.$tooltip_class.'" '.$instructions.' '.$input_id.' rows="5" cols="40" name="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">'.$field_value.'</textarea>'."\n".'</div>' . "\n";
|
| 261 |
+
} elseif ($field->field_type == 'Dropdown') {
|
| 262 |
+
$field_options = '';
|
| 263 |
+
$options = parent::getAttachedFieldOptionsArray($field->id);
|
| 264 |
+
foreach ($options as $option_id) {
|
| 265 |
+
$option = parent::selectFieldOption($option_id);
|
| 266 |
+
$option_sel = (($field_value == $option->option_label || $field_value == $option->option_value) && !empty($field_value)) ? ' selected="selected"' : '';
|
| 267 |
+
$option_value = (!empty($option->option_value)) ? ' value="' . $option->option_value . '"' : '';
|
| 268 |
+
// Weird way of marking a state dead. TODO: Find another way.
|
| 269 |
+
$option_value = ($option->option_dead == 1) ? ' value="' . CCF_DEAD_STATE_VALUE . '"' : $option_value;
|
| 270 |
+
$field_options .= '<option'.$option_sel.''.$option_value.'>' . $option->option_label . '</option>' . "\n";
|
| 271 |
+
}
|
| 272 |
+
if (!empty($options)) {
|
| 273 |
+
if (!$is_widget_form) $out .= '<div>'."\n".'<label class="select" for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field->field_label, 1, 1).'</label>'."\n".'<select '.$instructions.' '.$input_id.' name="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'" class="'.$field->field_class.' '.$tooltip_class.'">'."\n".$field_options.'</select>'."\n".'</div>' . "\n";
|
| 274 |
+
else $out .= '<div>'."\n".'<label for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field->field_label, 1, 1).'</label>'."\n".'<select class="'.$field->field_class.' '.$tooltip_class.'" '.$instructions.' '.$input_id.' name="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">'."\n".$field_options.'</select>'."\n".'</div>' . "\n";
|
| 275 |
+
}
|
| 276 |
+
} elseif ($field->field_type == 'Radio') {
|
| 277 |
+
$field_options = '';
|
| 278 |
+
$options = parent::getAttachedFieldOptionsArray($field->id);
|
| 279 |
+
foreach ($options as $option_id) {
|
| 280 |
+
$option = parent::selectFieldOption($option_id);
|
| 281 |
+
$option_sel = (($field_value == $option->option_label || $field_value == $option->option_value) && !empty($field_value)) ? ' checked="checked"' : '';
|
| 282 |
+
$field_options .= '<div><input'.$option_sel.' class="'.$field->field_class.' '.$tooltip_class.'" type="radio" '.$instructions.' name="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'" value="'.ccf_utils::decodeOption($option->option_value, 1, 1).'"'.$code_type.'> <label class="select" for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">' . ccf_utils::decodeOption($option->option_label, 1, 1) . '</label></div>' . "\n";
|
| 283 |
+
}
|
| 284 |
+
$field_label = (!empty($field->field_label)) ? '<label for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field->field_label, 1, 1).'</label>' : '';
|
| 285 |
+
if (!empty($options)) $out .= '<div>'."\n".$field_label."\n".$field_options."\n".'</div>' . "\n";
|
| 286 |
+
} elseif ($field->field_type == 'Checkbox') {
|
| 287 |
+
$field_options = '';
|
| 288 |
+
$options = parent::getAttachedFieldOptionsArray($field->id);
|
| 289 |
+
$z = 0;
|
| 290 |
+
foreach ($options as $option_id) {
|
| 291 |
+
$option = parent::selectFieldOption($option_id);
|
| 292 |
+
$field_value_array = (!is_array($field_value)) ? array() : $field_value;
|
| 293 |
+
$option_sel = (in_array($option->option_label, $field_value_array) || in_array($option->option_value, $field_value_array)) ? ' checked="checked"' : '';
|
| 294 |
+
$check_value = (empty($option->option_value)) ? $option->option_label : ccf_utils::decodeOption($option->option_value, 1, 1);
|
| 295 |
+
$field_options .= '<div><input'.$option_sel.' class="'.$field->field_class.' '.$tooltip_class.'" type="checkbox" '.$instructions.' name="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'['.$z.']" value="'.$check_value.'"'.$code_type.'> <label class="select" for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">' . ccf_utils::decodeOption($option->option_label, 1, 1) . '</label></div>' . "\n";
|
| 296 |
+
$z++;
|
| 297 |
+
}
|
| 298 |
+
$field_label = (!empty($field->field_label)) ? '<label for="'.ccf_utils::decodeOption($field->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field->field_label, 1, 1).'</label>' : '';
|
| 299 |
+
if (!empty($options)) $out .= '<div>'."\n".$field_label."\n".$field_options."\n".'</div>' . "\n";
|
| 300 |
+
}
|
| 301 |
+
}
|
| 302 |
+
if (!empty($file_upload_form))
|
| 303 |
+
$out = '<input type="hidden" name="MAX_FILE_SIZE" value="'.($admin_options['max_file_upload_size'] * 1000 * 1000).'" />' . "\n" . $out;
|
| 304 |
+
$out = '<form id="'.$form_id.'" method="'.$form_method.'" action="'.$action.'" class="'.$style_class.'"'.$file_upload_form.'>' . "\n" . $out;
|
| 305 |
+
$submit_text = (!empty($form->submit_button_text)) ? ccf_utils::decodeOption($form->submit_button_text, 1, 0) : 'Submit';
|
| 306 |
+
$out .= '<input name="form_page" value="'.$_SERVER['REQUEST_URI'].'" type="hidden"'.$code_type.'>'."\n".'<input type="hidden" name="fid" value="'.$form->id.'"'.$code_type.'>'."\n".$hiddens."\n".'<input type="submit" id="submit-' . $form->id . '-'.$form_key.'" class="submit" value="' . $submit_text . '" name="customcontactforms_submit"'.$code_type.'>';
|
| 307 |
+
if (!empty($add_reset)) $out .= $add_reset;
|
| 308 |
+
$out .= "\n" . '</form>';
|
| 309 |
+
if ($admin_options['author_link'] == 1) $out .= "\n".'<a style="display:none;" href="http://www.taylorlovett.com" title="Rockville Web Developer, Wordpress Plugins">Wordpress plugin expert and Maryland Web Developer Taylor Lovett</a>';
|
| 310 |
+
|
| 311 |
+
if ($form->form_style != 0) {
|
| 312 |
+
$no_border = array('', '0', '0px', '0%', '0pt', '0em');
|
| 313 |
+
$round_border = (!in_array($style->field_borderround, $no_border)) ? '-moz-border-radius:'.$style->field_borderround.'; -khtml-border-radius:'.$style->field_borderround.'; -webkit-border-radius:'.$style->field_borderround.'; ' : '';
|
| 314 |
+
$round_border_none = '-moz-border-radius:0px; -khtml-border-radius:0px; -webkit-border-radius:0px; ';
|
| 315 |
+
$form_styles .= '<style type="text/css">' . "\n";
|
| 316 |
+
$form_styles .= '#' . $form_id . " { width: ".$style->form_width."; text-align:left; padding:".$style->form_padding."; margin:".$style->form_margin."; border:".$style->form_borderwidth." ".$style->form_borderstyle." #".parent::formatStyle($style->form_bordercolor)."; background-color:#".parent::formatStyle($style->form_backgroundcolor)."; font-family:".$style->form_fontfamily."; } \n";
|
| 317 |
+
$form_styles .= '#' . $form_id . " div { margin-bottom:6px; background-color:inherit; }\n";
|
| 318 |
+
$form_styles .= '#' . $form_id . " div div { margin:0; background-color:inherit; padding:0; }\n";
|
| 319 |
+
$form_styles .= '#' . $form_id . " h4 { padding:0; background-color:inherit; margin:".$style->title_margin." ".$style->title_margin." ".$style->title_margin." 0; color:#".parent::formatStyle($style->title_fontcolor)."; font-size:".$style->title_fontsize."; } \n";
|
| 320 |
+
$form_styles .= '#' . $form_id . " label { padding:0; background-color:inherit; margin:".$style->label_margin." ".$style->label_margin." ".$style->label_margin." 0; display:block; color:#".parent::formatStyle($style->label_fontcolor)."; width:".$style->label_width."; font-size:".$style->label_fontsize."; } \n";
|
| 321 |
+
$form_styles .= '#' . $form_id . " div div input { margin-bottom:2px; line-height:normal; }\n";
|
| 322 |
+
$form_styles .= '#' . $form_id . " input[type=checkbox] { margin:0; }\n";
|
| 323 |
+
$form_styles .= '#' . $form_id . " label.checkbox, #" . $form_id . " label.radio, #" . $form_id . " label.select { display:inline; } \n";
|
| 324 |
+
$form_styles .= '#' . $form_id . " input[type=text], #" . $form_id . " select { ".$round_border." color:#".parent::formatStyle($style->field_fontcolor)."; margin:0; width:".$style->input_width."; font-size:".$style->field_fontsize."; background-color:#".parent::formatStyle($style->field_backgroundcolor)."; border:1px ".$style->field_borderstyle." #".parent::formatStyle($style->field_bordercolor)."; } \n";
|
| 325 |
+
$form_styles .= '#' . $form_id . " select { ".$round_border_none." width:".$style->dropdown_width."; }\n";
|
| 326 |
+
$form_styles .= '#' . $form_id . " .submit { color:#".parent::formatStyle($style->submit_fontcolor)."; width:".$style->submit_width."; height:".$style->submit_height."; font-size:".$style->submit_fontsize."; } \n";
|
| 327 |
+
$form_styles .= '#' . $form_id . " .reset-button { color:#".parent::formatStyle($style->submit_fontcolor)."; width:".$style->submit_width."; height:".$style->submit_height."; font-size:".$style->submit_fontsize."; } \n";
|
| 328 |
+
$form_styles .= '#' . $form_id . " textarea { ".$round_border." color:#".parent::formatStyle($style->field_fontcolor)."; width:".$style->textarea_width."; margin:0; background-color:#".parent::formatStyle($style->textarea_backgroundcolor)."; font-family:".$style->form_fontfamily."; height:".$style->textarea_height."; font-size:".$style->field_fontsize."; border:1px ".$style->field_borderstyle." #".parent::formatStyle($style->field_bordercolor)."; } \n";
|
| 329 |
+
$form_styles .= '.ccf-tooltip { background-color:#'.parent::formatStyle($style->tooltip_backgroundcolor).'; font-family:'.$style->form_fontfamily.'; font-color:#'.parent::formatStyle($style->tooltip_fontcolor).'; font-size:'.$style->tooltip_fontsize.'; }' . "\n";
|
| 330 |
+
$form_styles .= '</style>' . "\n";
|
| 331 |
+
}
|
| 332 |
+
return $form_styles . $out;
|
| 333 |
+
}
|
| 334 |
+
|
| 335 |
+
function requiredFieldsArrayFromList($list) {
|
| 336 |
+
if (empty($list)) return array();
|
| 337 |
+
$list = str_replace(' ', '', $list);
|
| 338 |
+
$array = explode(',', $list);
|
| 339 |
+
foreach ($array as $k => $v) {
|
| 340 |
+
if (empty($array[$k])) unset($array[$k]);
|
| 341 |
+
}
|
| 342 |
+
return $array;
|
| 343 |
+
}
|
| 344 |
+
|
| 345 |
+
function processFileUpload($field) {
|
| 346 |
+
$errors = array();
|
| 347 |
+
if (empty($_FILES[$field->field_slug])) $errors[] = __('Any error occured while uploading ' . $field->field_slug . '.', 'custom-contact-forms');
|
| 348 |
+
$admin_options = parent::getAdminOptions();
|
| 349 |
+
if ($field->field_max_upload_size > 0 && $_FILES[$field->field_slug]['size'] > ($field->field_max_upload_size * 1000)) $errors[] = __(basename($_FILES[$field->field_slug]['name']) . ' is too large of a file. The maximum file size for that field is ' . $field->field_max_upload_size . ' KB.', 'custom-contact-forms');
|
| 350 |
+
$allowed_exts = unserialize($field->field_allowed_file_extensions);
|
| 351 |
+
$ext = preg_replace('/.*\.(.*)/i', '$1', basename($_FILES[$field->field_slug]['name']));
|
| 352 |
+
if (!in_array($ext, $allowed_exts)) $errors[] = __($ext . ' is an invalid file extension.', 'custom-contact-forms');
|
| 353 |
+
if (!empty($errors)) return $errors;
|
| 354 |
+
|
| 355 |
+
// create necessary directories
|
| 356 |
+
if (!is_dir(ABSPATH."wp-content/plugins/custom-contact-forms/uploads/".date("Y")))
|
| 357 |
+
mkdir(ABSPATH."wp-content/plugins/custom-contact-forms/uploads/".date("Y"));
|
| 358 |
+
if (!is_dir(ABSPATH . "wp-content/plugins/custom-contact-forms/uploads/".date("Y")."/".date("m")))
|
| 359 |
+
mkdir(ABSPATH . "wp-content/plugins/custom-contact-forms/uploads/".date("Y")."/".date("m"));
|
| 360 |
+
|
| 361 |
+
// check if file already exists
|
| 362 |
+
$file_name = preg_replace('/(.*)\..*/i', '$1', basename($_FILES[$field->field_slug]['name']));
|
| 363 |
+
$file_name_addon = ".";
|
| 364 |
+
$i = 1;
|
| 365 |
+
while (file_exists( ABSPATH . "wp-content/plugins/custom-contact-forms/uploads/".date("Y")."/".date("m")."/" . $file_name . $file_name_addon . $ext)) {
|
| 366 |
+
$file_name_addon = ' ('.$i.').';
|
| 367 |
+
$i++;
|
| 368 |
+
}
|
| 369 |
+
$target_path = ABSPATH . "wp-content/plugins/custom-contact-forms/uploads/".date("Y")."/".date("m")."/" . $file_name . $file_name_addon . $ext;
|
| 370 |
+
$this->form_uploads[$field->field_slug] = ABSPATH . "wp-content/plugins/custom-contact-forms/uploads/".date("Y")."/".date("m")."/" . $file_name . $file_name_addon . $ext;
|
| 371 |
+
if(!move_uploaded_file($_FILES[$field->field_slug]['tmp_name'], $target_path)) {
|
| 372 |
+
// Error!
|
| 373 |
+
$errors[] = __('Any error occured while uploading ' . $field->field_slug . '.', 'custom-contact-forms');
|
| 374 |
+
}
|
| 375 |
+
return $errors;
|
| 376 |
+
}
|
| 377 |
+
|
| 378 |
+
function processForms() {
|
| 379 |
+
if ($_POST['ccf_customhtml'] || $_POST['customcontactforms_submit']) {
|
| 380 |
+
// BEGIN define common language vars
|
| 381 |
+
$lang = array();
|
| 382 |
+
$lang['field_blank'] = __('You left this field blank: ', 'custom-contact-forms');
|
| 383 |
+
$lang['form_page'] = __('Form Displayed on Page: ', 'custom-contact-forms');
|
| 384 |
+
$lang['sender_ip'] = __('Sender IP: ', 'custom-contact-forms');
|
| 385 |
+
// END define common language vars
|
| 386 |
+
} if ($_POST['ccf_customhtml']) {
|
| 387 |
+
$admin_options = parent::getAdminOptions();
|
| 388 |
+
$fixed_customhtml_fields = array('required_fields', 'success_message', 'thank_you_page', 'destination_email', 'ccf_customhtml');
|
| 389 |
+
$req_fields = $this->requiredFieldsArrayFromList($_POST['required_fields']);
|
| 390 |
+
$req_fields = array_map('trim', $req_fields);
|
| 391 |
+
$body = '';
|
| 392 |
+
foreach ($_POST as $key => $value) {
|
| 393 |
+
if (!in_array($key, $fixed_customhtml_fields)) {
|
| 394 |
+
if (in_array($key, $req_fields) && !empty($value)) {
|
| 395 |
+
unset($req_fields[array_search($key, $req_fields)]);
|
| 396 |
+
}
|
| 397 |
+
$body .= ucwords(str_replace('_', ' ', htmlspecialchars($key))) . ': ' . htmlspecialchars($value) . "<br /><br />\n";
|
| 398 |
+
$data_array[$key] = $value;
|
| 399 |
+
}
|
| 400 |
+
} foreach($req_fields as $err)
|
| 401 |
+
$this->setFormError($err, $lang['field_blank'] . '"' . $err . '"');
|
| 402 |
+
$errors = $this->getAllFormErrors();
|
| 403 |
+
if (empty($errors)) {
|
| 404 |
+
ccf_utils::load_module('export/custom-contact-forms-user-data.php');
|
| 405 |
+
$data_object = new CustomContactFormsUserData(array('data_array' => $data_array, 'form_page' => $_SERVER['SERVER_NAME']. $_SERVER['REQUEST_URI'], 'form_id' => 0, 'data_time' => time()));
|
| 406 |
+
parent::insertUserData($data_object);
|
| 407 |
+
$body .= "<br />\n" . htmlspecialchars($lang['form_page']) . $_SERVER['SERVER_NAME']. $_SERVER['REQUEST_URI'] . "<br />\n" . $lang['sender_ip'] . $_SERVER['REMOTE_ADDR'] . "<br />\n";
|
| 408 |
+
if ($admin_options['email_form_submissions'] == 1) {
|
| 409 |
+
if (!class_exists('PHPMailer'))
|
| 410 |
+
require_once(ABSPATH . "wp-includes/class-phpmailer.php");
|
| 411 |
+
$mail = new PHPMailer();
|
| 412 |
+
if ($admin_options['mail_function'] == 'smtp') {
|
| 413 |
+
$mail->IsSMTP();
|
| 414 |
+
$mail->Host = $admin_options['smtp_host'];
|
| 415 |
+
if ($admin_options['smtp_authentication'] == 1) {
|
| 416 |
+
$mail->SMTPAuth = true;
|
| 417 |
+
$mail->Username = $admin_options['smtp_username'];
|
| 418 |
+
$mail->Password = $admin_options['smtp_password'];
|
| 419 |
+
$mail->Port = $admin_options['smtp_port'];
|
| 420 |
+
} else
|
| 421 |
+
$mail->SMTPAuth = false;
|
| 422 |
+
}
|
| 423 |
+
$mail->From = $admin_options['default_from_email'];
|
| 424 |
+
$mail->FromName = 'Custom Contact Forms';
|
| 425 |
+
$dest_email_array = $this->getDestinationEmailArray($_POST['destination_email']);
|
| 426 |
+
if (empty($dest_email_array)) $mail->AddAddress($admin_options['default_to_email']);
|
| 427 |
+
else {
|
| 428 |
+
foreach ($dest_email_array as $em)
|
| 429 |
+
$mail->AddAddress($em);
|
| 430 |
+
}
|
| 431 |
+
$mail->Subject = $admin_options['default_form_subject'];
|
| 432 |
+
$mail->AltBody = "To view the message, please use an HTML compatible email viewer!";
|
| 433 |
+
$mail->MsgHTML(stripslashes($body));
|
| 434 |
+
$mail->Send();
|
| 435 |
+
} if ($_POST['thank_you_page']) {
|
| 436 |
+
ccf_utils::redirect($_POST['thank_you_page']);
|
| 437 |
+
}
|
| 438 |
+
$this->current_thank_you_message = (!empty($_POST['success_message'])) ? $_POST['success_message'] : $admin_options['form_success_message'];
|
| 439 |
+
$this->current_form = 0;
|
| 440 |
+
add_action('wp_footer', array(&$this, 'insertFormSuccessCode'), 1);
|
| 441 |
+
}
|
| 442 |
+
unset($_POST);
|
| 443 |
+
} elseif ($_POST['customcontactforms_submit']) {
|
| 444 |
+
ccf_utils::startSession();
|
| 445 |
+
$this->error_return = $_POST['form_page'];
|
| 446 |
+
$admin_options = parent::getAdminOptions();
|
| 447 |
+
$fields = parent::getAttachedFieldsArray($_POST['fid']);
|
| 448 |
+
$post_time = time();
|
| 449 |
+
$form = parent::selectForm($_POST['fid']);
|
| 450 |
+
$checks = array();
|
| 451 |
+
$reply = ($_POST['fixedEmail']) ? $_POST['fixedEmail'] : NULL;
|
| 452 |
+
$fixed_subject = ($_POST['emailSubject']) ? $_POST['emailSubject'] : NULL;
|
| 453 |
+
$cap_name = 'ccf_captcha_' . $_POST['fid'];
|
| 454 |
+
foreach ($fields as $field_id) {
|
| 455 |
+
$field = parent::selectField($field_id, '');
|
| 456 |
+
if ($field->field_slug == 'ishuman') {
|
| 457 |
+
if ($_POST['ishuman'] != 1) {
|
| 458 |
+
if (empty($field->field_error))
|
| 459 |
+
$this->setFormError('ishuman', __('Only humans can use this form.', 'custom-contact-forms'));
|
| 460 |
+
else $this->setFormError('ishuman', $field->field_error);
|
| 461 |
+
}
|
| 462 |
+
} elseif ($field->field_slug == 'captcha') {
|
| 463 |
+
if ($_POST['captcha'] != $_SESSION[$cap_name]) {
|
| 464 |
+
if (empty($field->field_error))
|
| 465 |
+
$this->setFormError('captcha', __('You copied the number from the captcha field incorrectly.', 'custom-contact-forms'));
|
| 466 |
+
else $this->setFormError('captcha', $field->field_error);
|
| 467 |
+
}
|
| 468 |
+
} elseif ($field->field_slug == 'fixedEmail' && $field->field_required == 1 && !empty($_POST['fixedEmail'])) {
|
| 469 |
+
if (!$this->validEmail($_POST['fixedEmail'])) {
|
| 470 |
+
if (empty($field->field_error))
|
| 471 |
+
$this->setFormError('fixedEmail', __('The email address you provided is not valid.', 'custom-contact-forms'));
|
| 472 |
+
else $this->setFormError('fixedEmail', $field->field_error);
|
| 473 |
+
}
|
| 474 |
+
} elseif ($field->field_slug == 'fixedWebsite' && $field->field_required == 1 && !empty($_POST['fixedWebsite'])) {
|
| 475 |
+
if (!$this->validWebsite($_POST['fixedWebsite'])) {
|
| 476 |
+
if (empty($field->field_error))
|
| 477 |
+
$this->setFormError('fixedWebsite', __('The website address you provided is not valid.', 'custom-contact-forms'));
|
| 478 |
+
else $this->setFormError('fixedWebsite', $field->field_error);
|
| 479 |
+
}
|
| 480 |
+
} else {
|
| 481 |
+
$field_error_label = (empty($field->field_label)) ? $field->field_slug : $field->field_label;
|
| 482 |
+
if ($field->field_required == 1 && $field->field_type != 'File' && !empty($_POST[$field->field_slug])) {
|
| 483 |
+
if ($field->field_type == 'Dropdown' || $field->field_type == 'Radio' || $field->field_type == 'Checkbox') {
|
| 484 |
+
// TODO: find better way to check for a dead state
|
| 485 |
+
if ($_POST[$field->field_slug] == CCF_DEAD_STATE_VALUE) {
|
| 486 |
+
if (empty($field->field_error))
|
| 487 |
+
$this->setFormError($field->field_slug, $lang['field_blank'] . '"'.$field_error_label.'"');
|
| 488 |
+
else $this->setFormError($field->field_slug, $field->field_error);
|
| 489 |
+
}
|
| 490 |
+
}
|
| 491 |
+
} elseif ($field->field_required == 1 && $field->field_type != 'File' && empty($_POST[$field->field_slug])) {
|
| 492 |
+
if (empty($field->field_error))
|
| 493 |
+
$this->setFormError($field->field_slug, $lang['field_blank'] . '"'.$field_error_label.'"');
|
| 494 |
+
else $this->setFormError($field->field_slug, $field->field_error);
|
| 495 |
+
} else {
|
| 496 |
+
// file field required and not found
|
| 497 |
+
if ($field->field_required == 1 && $field->field_type == 'File' && empty($_FILES[$field->field_slug]['name'])) {
|
| 498 |
+
if (empty($field->field_error))
|
| 499 |
+
$this->setFormError($field->field_slug, $lang['field_blank'] . '"'.$field_error_label.'"');
|
| 500 |
+
else $this->setFormError($field->field_slug, $field->field_error);
|
| 501 |
+
}
|
| 502 |
+
//file field found
|
| 503 |
+
elseif ($field->field_type == 'File' && !empty($_FILES[$field->field_slug]['name'])) {
|
| 504 |
+
$upload_result = $this->processFileUpload($field, $post_time);
|
| 505 |
+
foreach ($upload_result as $err) {
|
| 506 |
+
$this->setFormError($field->field_slug, $err);
|
| 507 |
+
}
|
| 508 |
+
}
|
| 509 |
+
}
|
| 510 |
+
} if ($field->field_type == 'Checkbox')
|
| 511 |
+
$checks[] = $field->field_slug;
|
| 512 |
+
}
|
| 513 |
+
$body = '';
|
| 514 |
+
$data_array = array();
|
| 515 |
+
foreach ($_POST as $key => $value) {
|
| 516 |
+
$_SESSION['ccf_fields'][$key] = $value;
|
| 517 |
+
//if (is_array($value)) $value = implode(', ', $value);
|
| 518 |
+
$val2 = (is_array($value)) ? implode(', ', $value) : $value;
|
| 519 |
+
$field = parent::selectField('', $key);
|
| 520 |
+
if (!array_key_exists($key, $GLOBALS['ccf_fixed_fields']) || $key == 'fixedEmail' || $key == 'usaStates' || $key == 'fixedWebsite'|| $key == 'emailSubject' || $key == 'allCountries') {
|
| 521 |
+
$mail_field_label = (empty($field->field_label)) ? $field->field_slug : $field->field_label;
|
| 522 |
+
$body .= htmlspecialchars($mail_field_label) . ' - ' . htmlspecialchars($val2) . "<br />\n";
|
| 523 |
+
$data_array[$key] = $value;
|
| 524 |
+
|
| 525 |
+
} if (in_array($key, $checks)) {
|
| 526 |
+
$checks_key = array_search($key, $checks);
|
| 527 |
+
unset($checks[$checks_key]);
|
| 528 |
+
}
|
| 529 |
+
} foreach ($this->form_uploads as $name => $upload) {
|
| 530 |
+
$file_url = preg_replace('/^.*(\/custom-contact-forms\/.*)$/i', plugins_url() . '$1', $upload);
|
| 531 |
+
if (!array_key_exists($name, $GLOBALS['ccf_fixed_fields'])) $data_array[$name] = '[file link="'.$file_url.'"]'.basename($upload).'[/file]';
|
| 532 |
+
} foreach ($checks as $check_key) {
|
| 533 |
+
$field = parent::selectField('', $check_key);
|
| 534 |
+
$lang['not_checked'] = __('Not Checked', 'custom-contact-forms');
|
| 535 |
+
$data_array[$check_key] = $lang['not_checked'];
|
| 536 |
+
$body .= ucwords(str_replace('_', ' ', htmlspecialchars($field->field_label))) . ' - ' . $lang['not_checked'] . "<br />\n";
|
| 537 |
+
}
|
| 538 |
+
$errors = $this->getAllFormErrors();
|
| 539 |
+
if (empty($errors)) {
|
| 540 |
+
ccf_utils::load_module('export/custom-contact-forms-user-data.php');
|
| 541 |
+
unset($_SESSION['ccf_captcha_' . $_POST['fid']]);
|
| 542 |
+
unset($_SESSION['ccf_fields']);
|
| 543 |
+
$data_object = new CustomContactFormsUserData(array('data_array' => $data_array, 'form_page' => $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'], 'form_id' => $form->id, 'data_time' => $post_time));
|
| 544 |
+
parent::insertUserData($data_object);
|
| 545 |
+
if ($admin_options['email_form_submissions'] == '1') {
|
| 546 |
+
$body .= "<br />\n" . htmlspecialchars($lang['form_page']) . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'] . "<br />\n" . $lang['sender_ip'] . $_SERVER['REMOTE_ADDR'] . "<br />\n";
|
| 547 |
+
if (!class_exists('PHPMailer'))
|
| 548 |
+
require_once(ABSPATH . "wp-includes/class-phpmailer.php");
|
| 549 |
+
$mail = new PHPMailer(false);
|
| 550 |
+
if ($admin_options['mail_function'] == 'smtp') {
|
| 551 |
+
$mail->IsSMTP();
|
| 552 |
+
$mail->Host = $admin_options['smtp_host'];
|
| 553 |
+
if ($admin_options['smtp_authentication'] == 1) {
|
| 554 |
+
$mail->SMTPAuth = true;
|
| 555 |
+
$mail->Username = $admin_options['smtp_username'];
|
| 556 |
+
$mail->Password = $admin_options['smtp_password'];
|
| 557 |
+
$mail->Port = $admin_options['smtp_port'];
|
| 558 |
+
} else
|
| 559 |
+
$mail->SMTPAuth = false;
|
| 560 |
+
}
|
| 561 |
+
$dest_email_array = $this->getDestinationEmailArray($form->form_email);
|
| 562 |
+
$from_name = (empty($admin_options['default_from_name'])) ? __('Custom Contact Forms', 'custom-contact-forms') : $admin_options['default_from_name'];
|
| 563 |
+
if (!empty($form->form_email_name)) $from_name = $form->form_email_name;
|
| 564 |
+
if (empty($dest_email_array)) $mail->AddAddress($admin_options['default_to_email']);
|
| 565 |
+
else {
|
| 566 |
+
foreach ($dest_email_array as $em)
|
| 567 |
+
$mail->AddAddress($em);
|
| 568 |
+
}
|
| 569 |
+
foreach ($this->form_uploads as $file_upload) {
|
| 570 |
+
$mail->AddAttachment($file_upload);
|
| 571 |
+
}
|
| 572 |
+
if ($reply != NULL && $this->validEmail($reply))
|
| 573 |
+
$mail->From = $reply;
|
| 574 |
+
else
|
| 575 |
+
$mail->From = $admin_options['default_from_email'];
|
| 576 |
+
$mail->FromName = $from_name;
|
| 577 |
+
$mail->Subject = (!empty($form->form_email_subject)) ? $form->form_email_subject : $admin_options['default_form_subject'];
|
| 578 |
+
if ($fixed_subject != NULL) $mail->Subject = $fixed_subject;
|
| 579 |
+
$mail->AltBody = __("To view the message, please use an HTML compatible email viewer.", 'custom-contact-forms');
|
| 580 |
+
$mail->CharSet = 'utf-8';
|
| 581 |
+
$mail->MsgHTML(stripslashes($body));
|
| 582 |
+
$mail->Send();
|
| 583 |
+
} if (!empty($form->form_thank_you_page)) {
|
| 584 |
+
ccf_utils::redirect($form->form_thank_you_page);
|
| 585 |
+
}
|
| 586 |
+
$this->current_form = $form->id;
|
| 587 |
+
add_action('wp_footer', array(&$this, 'insertFormSuccessCode'), 1);
|
| 588 |
+
}
|
| 589 |
+
unset($_POST);
|
| 590 |
+
$_POST = array();
|
| 591 |
+
}
|
| 592 |
+
}
|
| 593 |
+
|
| 594 |
+
function getCaptchaCode($field_object, $form_id) {
|
| 595 |
+
$admin_options = parent::getAdminOptions();
|
| 596 |
+
$code_type = ($admin_options['code_type'] == 'XHTML') ? ' /' : '';
|
| 597 |
+
if (empty($field_object->field_instructions)) {
|
| 598 |
+
$instructions = '';
|
| 599 |
+
$tooltip_class = '';
|
| 600 |
+
} else {
|
| 601 |
+
$instructions = 'title="'.$field_object->field_instructions.'"';
|
| 602 |
+
$tooltip_class = 'ccf-tooltip-field';
|
| 603 |
+
}
|
| 604 |
+
$out = '<img width="96" height="24" alt="' . __('Captcha image for Custom Contact Forms plugin. You must type the numbers shown in the image', 'custom-contact-forms') . '" id="captcha-image" src="' . get_bloginfo('wpurl') . '/wp-content/plugins/custom-contact-forms/image.php?fid='.$form_id.'"'.$code_type.'>
|
| 605 |
+
<div><label for="captcha'.$form_id.'">* '.$field_object->field_label.'</label> <input class="'.$field_object->field_class.' '.$tooltip_class.'" type="text" '.$instructions.' name="captcha" id="captcha'.$form_id.'" maxlength="20"'.$code_type.'></div>';
|
| 606 |
+
return $out;
|
| 607 |
+
}
|
| 608 |
+
|
| 609 |
+
function userCanViewForm($form_object) {
|
| 610 |
+
if (is_user_logged_in()) {
|
| 611 |
+
global $current_user;
|
| 612 |
+
$user_roles = $current_user->roles;
|
| 613 |
+
$user_role = array_shift($user_roles);
|
| 614 |
+
} else
|
| 615 |
+
$user_role = 'Non-Registered User';
|
| 616 |
+
$form_access_array = parent::getFormAccessArray($form_object->form_access);
|
| 617 |
+
return parent::formHasRole($form_access_array, $user_role);
|
| 618 |
+
}
|
| 619 |
+
|
| 620 |
+
function getStatesCode($field_object, $form_id) {
|
| 621 |
+
ccf_utils::load_module('extra_fields/states_field.php');
|
| 622 |
+
$req = ($field_object->field_required == 1) ? '* ' : '';
|
| 623 |
+
$states_field = new ccf_states_field($field_object->field_class, $form_id, $field_object->field_value, $field_object->field_instructions);
|
| 624 |
+
return "\n".'<label class="select" for="'.ccf_utils::decodeOption($field_object->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field_object->field_label, 1, 1).'</label>'.$states_field->getCode();
|
| 625 |
+
}
|
| 626 |
+
|
| 627 |
+
function getDatePickerCode($field_object, $form_id, $xhtml_code) {
|
| 628 |
+
ccf_utils::load_module('extra_fields/date_field.php');
|
| 629 |
+
$req = ($field_object->field_required == 1) ? '* ' : '';
|
| 630 |
+
$date_field = new ccf_date_field($field_object->field_class, $form_id, $field_object->field_value, $field_object->field_instructions, $xhtml_code);
|
| 631 |
+
return "\n".'<label for="'.ccf_utils::decodeOption($field_object->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field_object->field_label, 1, 1).'</label>'.$date_field->getCode();
|
| 632 |
+
}
|
| 633 |
+
|
| 634 |
+
function getCountriesCode($field_object, $form_id) {
|
| 635 |
+
ccf_utils::load_module('extra_fields/countries_field.php');
|
| 636 |
+
$req = ($field_object->field_required == 1) ? '* ' : '';
|
| 637 |
+
$countries_field = new ccf_countries_field($field_object->field_class, $form_id, $field_object->field_value, $field_object->field_instructions);
|
| 638 |
+
return '<label class="select" for="'.ccf_utils::decodeOption($field_object->field_slug, 1, 1).'">'. $req .ccf_utils::decodeOption($field_object->field_label, 1, 1).'</label>' . "\n" . $countries_field->getCode();
|
| 639 |
+
}
|
| 640 |
+
|
| 641 |
+
function getDestinationEmailArray($str) {
|
| 642 |
+
$str = str_replace(',', ';', $str);
|
| 643 |
+
$email_array = explode(';', $str);
|
| 644 |
+
$email_array2 = array();
|
| 645 |
+
foreach ($email_array as $k => $v) {
|
| 646 |
+
if (!empty($email_array[$k])) $email_array2[] = trim($v);
|
| 647 |
+
}
|
| 648 |
+
return $email_array2;
|
| 649 |
+
}
|
| 650 |
+
}
|
| 651 |
+
}
|
| 652 |
Â
?>
|
custom-contact-forms-utils.php
CHANGED
|
@@ -1,83 +1,84 @@
|
|
| 1 |
-
<?php
|
| 2 |
-
/*
|
| 3 |
-
Custom Contact Forms Plugin
|
| 4 |
-
By Taylor Lovett - http://www.taylorlovett.com
|
| 5 |
-
Plugin URL: http://www.taylorlovett.com/wordpress-plugins
|
| 6 |
-
*/
|
| 7 |
-
if (!class_exists('ccf_utils')) {
|
| 8 |
-
class ccf_utils {
|
| 9 |
-
function ccf_utils() {
|
| 10 |
-
$this->defineConstants();
|
| 11 |
-
}
|
| 12 |
-
|
| 13 |
-
function redirect($location) {
|
| 14 |
-
if (!empty($location)) {
|
| 15 |
-
wp_redirect($location);
|
| 16 |
-
exit();
|
| 17 |
-
}
|
| 18 |
-
}
|
| 19 |
-
|
| 20 |
-
function load_module($path, $required = true) {
|
| 21 |
-
if (empty($path)) return false;
|
| 22 |
-
if ($required) require_once('modules/' . $path);
|
| 23 |
-
else include_once('modules/' . $path);
|
| 24 |
-
return true;
|
| 25 |
-
}
|
| 26 |
-
|
| 27 |
-
function encodeOption($option) {
|
| 28 |
-
return htmlspecialchars(stripslashes($option), ENT_QUOTES);
|
| 29 |
-
}
|
| 30 |
-
|
| 31 |
-
function startSession() {
|
| 32 |
-
if (!@session_id()) @session_start();
|
| 33 |
-
}
|
| 34 |
-
|
| 35 |
-
function getWPTablePrefix() {
|
| 36 |
-
global $wpdb;
|
| 37 |
-
return $wpdb->prefix;
|
| 38 |
-
}
|
| 39 |
-
|
| 40 |
-
function encodeOptionArray($option_array) {
|
| 41 |
-
foreach ($option_array as $option) {
|
| 42 |
-
if (is_array($option))
|
| 43 |
-
$option = ccf_utils::encodeOptionArray($option);
|
| 44 |
-
else
|
| 45 |
-
$option = ccf_utils::encodeOption($option);
|
| 46 |
-
}
|
| 47 |
-
return $option_array;
|
| 48 |
-
}
|
| 49 |
-
|
| 50 |
-
function decodeOption($option, $strip_slashes = 1, $decode_html_chars = 1) {
|
| 51 |
-
if ($strip_slashes == 1) $option = stripslashes($option);
|
| 52 |
-
if ($decode_html_chars == 1) $option = html_entity_decode($option);
|
| 53 |
-
return $option;
|
| 54 |
-
}
|
| 55 |
-
|
| 56 |
-
function defineConstants() {
|
| 57 |
-
$prefix = ccf_utils::getWPTablePrefix();
|
| 58 |
-
define('CCF_AJAX_URL', admin_url('admin-ajax.php'));
|
| 59 |
-
define('CCF_FORMS_TABLE', $prefix . 'customcontactforms_forms');
|
| 60 |
-
define('CCF_FIELDS_TABLE', $prefix . 'customcontactforms_fields');
|
| 61 |
-
define('CCF_STYLES_TABLE', $prefix . 'customcontactforms_styles');
|
| 62 |
-
define('CCF_USER_DATA_TABLE', $prefix . 'customcontactforms_user_data');
|
| 63 |
-
define('CCF_FIELD_OPTIONS_TABLE', $prefix . 'customcontactforms_field_options');
|
| 64 |
-
define('CCF_BASE_PATH', ABSPATH . 'wp-content/plugins/custom-contact-forms/');
|
| 65 |
-
define('CCF_DEAD_STATE_VALUE', 'ccf-dead-state');
|
| 66 |
-
$GLOBALS['ccf_tables_array'] = array(CCF_FORMS_TABLE, CCF_FIELDS_TABLE, CCF_STYLES_TABLE, CCF_USER_DATA_TABLE, CCF_FIELD_OPTIONS_TABLE);
|
| 67 |
-
$GLOBALS['ccf_fixed_fields'] = array('customcontactforms_submit' => '',
|
| 68 |
-
'fid' => '',
|
| 69 |
-
'fixedEmail' => __("Use this field if you want the plugin to throw an error on fake emails.", 'custom-contact-forms'),
|
| 70 |
-
'fixedWebsite' => __("This field will throw an error on invalid website addresses.", 'custom-contact-forms'),
|
| 71 |
-
'emailSubject' => __("This field lets users specify the subject of the email sent to you on submission.", 'custom-contact-forms'),
|
| 72 |
-
'form_page' => '',
|
| 73 |
-
'captcha' => __("This field requires users to type numbers in an image preventing spam.", 'custom-contact-forms'),
|
| 74 |
-
'ishuman' => __("This field requires users to check a box to prove they aren't a spam bot.", 'custom-contact-forms'),
|
| 75 |
-
'usaStates' => __("This is a dropdown field showing each state in the US. If you want a state initially selected, enter it in 'Initial Value.'", 'custom-contact-forms'),
|
| 76 |
-
'datePicker' => __("This field displays a text box that when clicked pops up an interactive calender.'", 'custom-contact-forms'),
|
| 77 |
-
'allCountries' => __("This is a dropdown field showing countries. If you want a country initially selected, enter it in 'Initial Value.'", 'custom-contact-forms'),
|
| 78 |
-
'resetButton' => __("This field lets users reset all form fields to their initial values. This will be inserted next to the submit button.", 'custom-contact-forms')
|
| 79 |
-
|
| 80 |
-
|
| 81 |
-
|
| 82 |
-
}
|
|
Â
|
|
| 83 |
Â
?>
|
| 1 |
+
<?php
|
| 2 |
+
/*
|
| 3 |
+
Custom Contact Forms Plugin
|
| 4 |
+
By Taylor Lovett - http://www.taylorlovett.com
|
| 5 |
+
Plugin URL: http://www.taylorlovett.com/wordpress-plugins
|
| 6 |
+
*/
|
| 7 |
+
if (!class_exists('ccf_utils')) {
|
| 8 |
+
class ccf_utils {
|
| 9 |
+
function ccf_utils() {
|
| 10 |
+
$this->defineConstants();
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
function redirect($location) {
|
| 14 |
+
if (!empty($location)) {
|
| 15 |
+
wp_redirect($location);
|
| 16 |
+
exit();
|
| 17 |
+
}
|
| 18 |
+
}
|
| 19 |
+
|
| 20 |
+
function load_module($path, $required = true) {
|
| 21 |
+
if (empty($path)) return false;
|
| 22 |
+
if ($required) require_once('modules/' . $path);
|
| 23 |
+
else include_once('modules/' . $path);
|
| 24 |
+
return true;
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
function encodeOption($option) {
|
| 28 |
+
return htmlspecialchars(stripslashes($option), ENT_QUOTES);
|
| 29 |
+
}
|
| 30 |
+
|
| 31 |
+
function startSession() {
|
| 32 |
+
if (!@session_id()) @session_start();
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
function getWPTablePrefix() {
|
| 36 |
+
global $wpdb;
|
| 37 |
+
return $wpdb->prefix;
|
| 38 |
+
}
|
| 39 |
+
|
| 40 |
+
function encodeOptionArray($option_array) {
|
| 41 |
+
foreach ($option_array as $option) {
|
| 42 |
+
if (is_array($option))
|
| 43 |
+
$option = ccf_utils::encodeOptionArray($option);
|
| 44 |
+
else
|
| 45 |
+
$option = ccf_utils::encodeOption($option);
|
| 46 |
+
}
|
| 47 |
+
return $option_array;
|
| 48 |
+
}
|
| 49 |
+
|
| 50 |
+
function decodeOption($option, $strip_slashes = 1, $decode_html_chars = 1) {
|
| 51 |
+
if ($strip_slashes == 1) $option = stripslashes($option);
|
| 52 |
+
if ($decode_html_chars == 1) $option = html_entity_decode($option);
|
| 53 |
+
return $option;
|
| 54 |
+
}
|
| 55 |
+
|
| 56 |
+
function defineConstants() {
|
| 57 |
+
$prefix = ccf_utils::getWPTablePrefix();
|
| 58 |
+
define('CCF_AJAX_URL', admin_url('admin-ajax.php'));
|
| 59 |
+
define('CCF_FORMS_TABLE', $prefix . 'customcontactforms_forms');
|
| 60 |
+
define('CCF_FIELDS_TABLE', $prefix . 'customcontactforms_fields');
|
| 61 |
+
define('CCF_STYLES_TABLE', $prefix . 'customcontactforms_styles');
|
| 62 |
+
define('CCF_USER_DATA_TABLE', $prefix . 'customcontactforms_user_data');
|
| 63 |
+
define('CCF_FIELD_OPTIONS_TABLE', $prefix . 'customcontactforms_field_options');
|
| 64 |
+
define('CCF_BASE_PATH', ABSPATH . 'wp-content/plugins/custom-contact-forms/');
|
| 65 |
+
define('CCF_DEAD_STATE_VALUE', 'ccf-dead-state');
|
| 66 |
+
$GLOBALS['ccf_tables_array'] = array(CCF_FORMS_TABLE, CCF_FIELDS_TABLE, CCF_STYLES_TABLE, CCF_USER_DATA_TABLE, CCF_FIELD_OPTIONS_TABLE);
|
| 67 |
+
$GLOBALS['ccf_fixed_fields'] = array('customcontactforms_submit' => '',
|
| 68 |
+
'fid' => '',
|
| 69 |
+
'fixedEmail' => __("Use this field if you want the plugin to throw an error on fake emails.", 'custom-contact-forms'),
|
| 70 |
+
'fixedWebsite' => __("This field will throw an error on invalid website addresses.", 'custom-contact-forms'),
|
| 71 |
+
'emailSubject' => __("This field lets users specify the subject of the email sent to you on submission.", 'custom-contact-forms'),
|
| 72 |
+
'form_page' => '',
|
| 73 |
+
'captcha' => __("This field requires users to type numbers in an image preventing spam.", 'custom-contact-forms'),
|
| 74 |
+
'ishuman' => __("This field requires users to check a box to prove they aren't a spam bot.", 'custom-contact-forms'),
|
| 75 |
+
'usaStates' => __("This is a dropdown field showing each state in the US. If you want a state initially selected, enter it in 'Initial Value.'", 'custom-contact-forms'),
|
| 76 |
+
'datePicker' => __("This field displays a text box that when clicked pops up an interactive calender.'", 'custom-contact-forms'),
|
| 77 |
+
'allCountries' => __("This is a dropdown field showing countries. If you want a country initially selected, enter it in 'Initial Value.'", 'custom-contact-forms'),
|
| 78 |
+
'resetButton' => __("This field lets users reset all form fields to their initial values. This will be inserted next to the submit button.", 'custom-contact-forms'),
|
| 79 |
+
'MAX_FILE_SIZE' => ''
|
| 80 |
+
);
|
| 81 |
+
}
|
| 82 |
+
}
|
| 83 |
+
}
|
| 84 |
Â
?>
|
custom-contact-forms.php
CHANGED
|
@@ -1,136 +1,136 @@
|
|
| 1 |
-
<?php
|
| 2 |
-
/*
|
| 3 |
-
Plugin Name: Custom Contact Forms
|
| 4 |
-
Plugin URI: http://taylorlovett.com/wordpress-plugins
|
| 5 |
-
Description: Guaranteed to be 1000X more customizable and intuitive than Fast Secure Contact Forms or Contact Form 7. Customize every aspect of your forms without any knowledge of CSS: borders, padding, sizes, colors. Ton's of great features. Required fields, form submissions saved to database, captchas, tooltip popovers, unlimited fields/forms/form styles, import/export, use a custom thank you page or built-in popover with a custom success message set for each form.
|
| 6 |
-
Version: 4.
|
| 7 |
-
Author: Taylor Lovett
|
| 8 |
-
Author URI: http://www.taylorlovett.com
|
| 9 |
-
*/
|
| 10 |
-
|
| 11 |
-
/*
|
| 12 |
-
If you have time to translate this plugin in to your native language, please contact me at
|
| 13 |
-
admin@taylorlovett.com and I will add you as a contributer with your name and website to the
|
| 14 |
-
Wordpress plugin page.
|
| 15 |
-
|
| 16 |
-
Languages: English
|
| 17 |
-
|
| 18 |
-
Copyright (C) 2010-2011 Taylor Lovett, taylorlovett.com (admin@taylorlovett.com)
|
| 19 |
-
This program is free software; you can redistribute it and/or modify
|
| 20 |
-
it under the terms of the GNU General Public License as published by
|
| 21 |
-
the Free Software Foundation; either version 3 of the License, or
|
| 22 |
-
(at your option) any later version.
|
| 23 |
-
This program is distributed in the hope that it will be useful,
|
| 24 |
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
| 25 |
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
| 26 |
-
GNU General Public License for more details.
|
| 27 |
-
You should have received a copy of the GNU General Public License
|
| 28 |
-
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
| 29 |
-
*/
|
| 30 |
-
$old_error_settings = error_reporting();
|
| 31 |
-
//error_reporting(E_ALL ^ E_NOTICE ^ E_DEPRECATED ^ E_USER_DEPRECATED);
|
| 32 |
-
require_once('custom-contact-forms-utils.php');
|
| 33 |
-
new ccf_utils();
|
| 34 |
-
ccf_utils::load_module('db/custom-contact-forms-db.php');
|
| 35 |
-
if (!class_exists('CustomContactForms')) {
|
| 36 |
-
class CustomContactForms extends CustomContactFormsDB {
|
| 37 |
-
var $adminOptionsName = 'customContactFormsAdminOptions';
|
| 38 |
-
|
| 39 |
-
function activatePlugin() {
|
| 40 |
-
$admin_options = $this->getAdminOptions();
|
| 41 |
-
$admin_options['show_install_popover'] = 1;
|
| 42 |
-
update_option($this->getAdminOptionsName(), $admin_options);
|
| 43 |
-
ccf_utils::load_module('db/custom-contact-forms-activate-db.php');
|
| 44 |
-
new CustomContactFormsActivateDB();
|
| 45 |
-
}
|
| 46 |
-
|
| 47 |
-
function getAdminOptionsName() {
|
| 48 |
-
return $this->adminOptionsName;
|
| 49 |
-
}
|
| 50 |
-
|
| 51 |
-
function getAdminOptions() {
|
| 52 |
-
$admin_email = get_option('admin_email');
|
| 53 |
-
$customcontactAdminOptions = array('show_widget_home' => 1, 'show_widget_pages' => 1, 'show_widget_singles' => 1, 'show_widget_categories' => 1, 'show_widget_archives' => 1, 'default_to_email' => $admin_email, 'default_from_email' => $admin_email, 'default_from_name' => 'Custom Contact Forms', 'default_form_subject' => __('Someone Filled Out Your Contact Form!', 'custom-contact-forms'),
|
| 54 |
-
'remember_field_values' => 0, '
|
| 55 |
-
'show_install_popover' => 0, 'email_form_submissions' => 1, 'enable_dashboard_widget' => 1, 'admin_ajax' => 1, 'smtp_host' => '', 'smtp_encryption' => 'none', 'smtp_authentication' => 0, 'smtp_username' => '', 'smtp_password' => '', 'smtp_port' => '', 'default_form_error_header' => __('You filled out the form incorrectly.', 'custom-contact-forms'),
|
| 56 |
-
'default_form_bad_permissions' => __("You don't have the proper permissions to view this form.", 'custom-contact-forms'), 'enable_form_access_manager' => 0, 'dashboard_access' => 2, 'form_page_inclusion_only' => 0); // default general settings
|
| 57 |
-
$customcontactOptions = get_option($this->getAdminOptionsName());
|
| 58 |
-
if (!empty($customcontactOptions)) {
|
| 59 |
-
foreach ($customcontactOptions as $key => $option)
|
| 60 |
-
$customcontactAdminOptions[$key] = $option;
|
| 61 |
-
}
|
| 62 |
-
update_option($this->getAdminOptionsName, $customcontactAdminOptions);
|
| 63 |
-
return $customcontactAdminOptions;
|
| 64 |
-
}
|
| 65 |
-
}
|
| 66 |
-
}
|
| 67 |
-
$custom_contact_forms = new CustomContactForms();
|
| 68 |
-
|
| 69 |
-
/* general plugin stuff */
|
| 70 |
-
if (isset($custom_contact_forms)) {
|
| 71 |
-
register_activation_hook(__FILE__, array(&$custom_contact_forms, 'activatePlugin'));
|
| 72 |
-
}
|
| 73 |
-
|
| 74 |
-
if (!is_admin()) { /* is front */
|
| 75 |
-
require_once('custom-contact-forms-front.php');
|
| 76 |
-
$custom_contact_front = new CustomContactFormsFront();
|
| 77 |
-
if (!function_exists('serveCustomContactForm')) {
|
| 78 |
-
function serveCustomContactForm($fid) {
|
| 79 |
-
global $custom_contact_front;
|
| 80 |
-
echo $custom_contact_front->getFormCode($custom_contact_front->selectForm($fid));
|
| 81 |
-
}
|
| 82 |
-
}
|
| 83 |
-
add_action('init', array(&$custom_contact_front, 'frontInit'), 1);
|
| 84 |
-
add_action('template_redirect', array(&$custom_contact_front, 'includeDependencies'), 1);
|
| 85 |
-
//add_action('wp_enqueue_scripts', array(&$custom_contact_front, 'insertFrontEndScripts'), 1);
|
| 86 |
-
//add_action('wp_print_styles', array(&$custom_contact_front, 'insertFrontEndStyles'), 1);
|
| 87 |
-
add_shortcode('customcontact', array(&$custom_contact_front, 'shortCodeToForm'));
|
| 88 |
-
|
| 89 |
-
add_filter('the_content', array(&$custom_contact_front, 'contentFilter'));
|
| 90 |
-
} else { /* is admin */
|
| 91 |
-
$GLOBALS['ccf_current_page'] = ($_GET['page']) ? $_GET['page'] : '';
|
| 92 |
-
require_once('custom-contact-forms-admin.php');
|
| 93 |
-
$custom_contact_admin = new CustomContactFormsAdmin();
|
| 94 |
-
if (!function_exists('CustomContactForms_ap')) {
|
| 95 |
-
function CustomContactForms_ap() {
|
| 96 |
-
global $custom_contact_admin;
|
| 97 |
-
if (!isset($custom_contact_admin)) return;
|
| 98 |
-
if (function_exists('add_menu_page')) {
|
| 99 |
-
add_menu_page(__('Custom Contact Forms', 'custom-contact-forms'), __('Custom Contact Forms', 'custom-contact-forms'), 'manage_options', 'custom-contact-forms', array(&$custom_contact_admin, 'printAdminPage'));
|
| 100 |
-
add_submenu_page('custom-contact-forms', __('Custom Contact Forms', 'custom-contact-forms'), __('Custom Contact Forms', 'custom-contact-forms'), 'manage_options', 'custom-contact-forms', array(&$custom_contact_admin, 'printAdminPage'));
|
| 101 |
-
add_submenu_page('custom-contact-forms', __('Saved Form Submissions', 'custom-contact-forms'), __('Saved Form Submissions', 'custom-contact-forms'), 'manage_options', 'ccf-saved-form-submissions', array(&$custom_contact_admin, 'printFormSubmissionsPage'));
|
| 102 |
-
add_submenu_page('custom-contact-forms', __('General Settings', 'custom-contact-forms'), __('General Settings', 'custom-contact-forms'), 'manage_options', 'ccf-settings', array(&$custom_contact_admin, 'printSettingsPage'));
|
| 103 |
-
}
|
| 104 |
-
}
|
| 105 |
-
}
|
| 106 |
-
$admin_options = $custom_contact_admin->getAdminOptions();
|
| 107 |
-
if ($admin_options['enable_dashboard_widget'] == 1) {
|
| 108 |
-
ccf_utils::load_module('widget/custom-contact-forms-dashboard.php');
|
| 109 |
-
$ccf_dashboard = new CustomContactFormsDashboard();
|
| 110 |
-
if ($ccf_dashboard->isDashboardPage()) {
|
| 111 |
-
add_action('admin_print_styles', array(&$ccf_dashboard, 'insertDashboardStyles'), 1);
|
| 112 |
-
add_action('admin_enqueue_scripts', array(&$ccf_dashboard, 'insertDashboardScripts'), 1);
|
| 113 |
-
}
|
| 114 |
-
add_action('wp_dashboard_setup', array(&$ccf_dashboard, 'install'));
|
| 115 |
-
}
|
| 116 |
-
add_action('init', array(&$custom_contact_admin, 'adminInit'), 1);
|
| 117 |
-
if ($custom_contact_admin->isPluginAdminPage()) {
|
| 118 |
-
add_action('admin_print_styles', array(&$custom_contact_admin, 'insertBackEndStyles'), 1);
|
| 119 |
-
add_action('admin_enqueue_scripts', array(&$custom_contact_admin, 'insertAdminScripts'), 1);
|
| 120 |
-
}
|
| 121 |
-
add_action('wp_ajax_ccf-ajax', array(&$custom_contact_admin, 'handleAJAX'));
|
| 122 |
-
add_action('wp_ajax_nopriv_ccf-ajax', array(&$custom_contact_admin, 'handleAJAX'));
|
| 123 |
-
add_filter('plugin_action_links', array(&$custom_contact_admin,'appendToActionLinks'), 10, 2);
|
| 124 |
-
add_action('admin_menu', 'CustomContactForms_ap');
|
| 125 |
-
}
|
| 126 |
-
|
| 127 |
-
/* widget stuff */
|
| 128 |
-
ccf_utils::load_module('widget/custom-contact-forms-widget.php');
|
| 129 |
-
if (!function_exists('CCFWidgetInit')) {
|
| 130 |
-
function CCFWidgetInit() {
|
| 131 |
-
register_widget('CustomContactFormsWidget');
|
| 132 |
-
}
|
| 133 |
-
}
|
| 134 |
-
add_action('widgets_init', 'CCFWidgetInit');
|
| 135 |
-
error_reporting($old_error_settings);
|
| 136 |
Â
?>
|
| 1 |
+
<?php
|
| 2 |
+
/*
|
| 3 |
+
Plugin Name: Custom Contact Forms
|
| 4 |
+
Plugin URI: http://taylorlovett.com/wordpress-plugins
|
| 5 |
+
Description: Guaranteed to be 1000X more customizable and intuitive than Fast Secure Contact Forms or Contact Form 7. Customize every aspect of your forms without any knowledge of CSS: borders, padding, sizes, colors. Ton's of great features. Required fields, form submissions saved to database, captchas, tooltip popovers, unlimited fields/forms/form styles, import/export, use a custom thank you page or built-in popover with a custom success message set for each form.
|
| 6 |
+
Version: 4.7.0.0
|
| 7 |
+
Author: Taylor Lovett
|
| 8 |
+
Author URI: http://www.taylorlovett.com
|
| 9 |
+
*/
|
| 10 |
+
|
| 11 |
+
/*
|
| 12 |
+
If you have time to translate this plugin in to your native language, please contact me at
|
| 13 |
+
admin@taylorlovett.com and I will add you as a contributer with your name and website to the
|
| 14 |
+
Wordpress plugin page.
|
| 15 |
+
|
| 16 |
+
Languages: English
|
| 17 |
+
|
| 18 |
+
Copyright (C) 2010-2011 Taylor Lovett, taylorlovett.com (admin@taylorlovett.com)
|
| 19 |
+
This program is free software; you can redistribute it and/or modify
|
| 20 |
+
it under the terms of the GNU General Public License as published by
|
| 21 |
+
the Free Software Foundation; either version 3 of the License, or
|
| 22 |
+
(at your option) any later version.
|
| 23 |
+
This program is distributed in the hope that it will be useful,
|
| 24 |
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
| 25 |
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
| 26 |
+
GNU General Public License for more details.
|
| 27 |
+
You should have received a copy of the GNU General Public License
|
| 28 |
+
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
| 29 |
+
*/
|
| 30 |
+
$old_error_settings = error_reporting();
|
| 31 |
+
//error_reporting(E_ALL ^ E_NOTICE ^ E_DEPRECATED ^ E_USER_DEPRECATED);
|
| 32 |
+
require_once('custom-contact-forms-utils.php');
|
| 33 |
+
new ccf_utils();
|
| 34 |
+
ccf_utils::load_module('db/custom-contact-forms-db.php');
|
| 35 |
+
if (!class_exists('CustomContactForms')) {
|
| 36 |
+
class CustomContactForms extends CustomContactFormsDB {
|
| 37 |
+
var $adminOptionsName = 'customContactFormsAdminOptions';
|
| 38 |
+
|
| 39 |
+
function activatePlugin() {
|
| 40 |
+
$admin_options = $this->getAdminOptions();
|
| 41 |
+
$admin_options['show_install_popover'] = 1;
|
| 42 |
+
update_option($this->getAdminOptionsName(), $admin_options);
|
| 43 |
+
ccf_utils::load_module('db/custom-contact-forms-activate-db.php');
|
| 44 |
+
new CustomContactFormsActivateDB();
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
function getAdminOptionsName() {
|
| 48 |
+
return $this->adminOptionsName;
|
| 49 |
+
}
|
| 50 |
+
|
| 51 |
+
function getAdminOptions() {
|
| 52 |
+
$admin_email = get_option('admin_email');
|
| 53 |
+
$customcontactAdminOptions = array('show_widget_home' => 1, 'show_widget_pages' => 1, 'show_widget_singles' => 1, 'show_widget_categories' => 1, 'show_widget_archives' => 1, 'default_to_email' => $admin_email, 'default_from_email' => $admin_email, 'default_from_name' => 'Custom Contact Forms', 'default_form_subject' => __('Someone Filled Out Your Contact Form!', 'custom-contact-forms'),
|
| 54 |
+
'remember_field_values' => 0, 'enable_widget_tooltips' => 1, 'mail_function' => 'default', 'form_success_message_title' => __('Successful Form Submission', 'custom-contact-forms'), 'form_success_message' => __('Thank you for filling out our web form. We will get back to you ASAP.', 'custom-contact-forms'), 'enable_jquery' => 1, 'code_type' => 'XHTML',
|
| 55 |
+
'show_install_popover' => 0, 'email_form_submissions' => 1, 'enable_dashboard_widget' => 1, 'admin_ajax' => 1, 'smtp_host' => '', 'smtp_encryption' => 'none', 'smtp_authentication' => 0, 'smtp_username' => '', 'smtp_password' => '', 'smtp_port' => '', 'default_form_error_header' => __('You filled out the form incorrectly.', 'custom-contact-forms'),
|
| 56 |
+
'default_form_bad_permissions' => __("You don't have the proper permissions to view this form.", 'custom-contact-forms'), 'enable_form_access_manager' => 0, 'dashboard_access' => 2, 'form_page_inclusion_only' => 0, 'max_file_upload_size' => 10); // default general settings
|
| 57 |
+
$customcontactOptions = get_option($this->getAdminOptionsName());
|
| 58 |
+
if (!empty($customcontactOptions)) {
|
| 59 |
+
foreach ($customcontactOptions as $key => $option)
|
| 60 |
+
$customcontactAdminOptions[$key] = $option;
|
| 61 |
+
}
|
| 62 |
+
update_option($this->getAdminOptionsName, $customcontactAdminOptions);
|
| 63 |
+
return $customcontactAdminOptions;
|
| 64 |
+
}
|
| 65 |
+
}
|
| 66 |
+
}
|
| 67 |
+
$custom_contact_forms = new CustomContactForms();
|
| 68 |
+
|
| 69 |
+
/* general plugin stuff */
|
| 70 |
+
if (isset($custom_contact_forms)) {
|
| 71 |
+
register_activation_hook(__FILE__, array(&$custom_contact_forms, 'activatePlugin'));
|
| 72 |
+
}
|
| 73 |
+
|
| 74 |
+
if (!is_admin()) { /* is front */
|
| 75 |
+
require_once('custom-contact-forms-front.php');
|
| 76 |
+
$custom_contact_front = new CustomContactFormsFront();
|
| 77 |
+
if (!function_exists('serveCustomContactForm')) {
|
| 78 |
+
function serveCustomContactForm($fid) {
|
| 79 |
+
global $custom_contact_front;
|
| 80 |
+
echo $custom_contact_front->getFormCode($custom_contact_front->selectForm($fid));
|
| 81 |
+
}
|
| 82 |
+
}
|
| 83 |
+
add_action('init', array(&$custom_contact_front, 'frontInit'), 1);
|
| 84 |
+
add_action('template_redirect', array(&$custom_contact_front, 'includeDependencies'), 1);
|
| 85 |
+
//add_action('wp_enqueue_scripts', array(&$custom_contact_front, 'insertFrontEndScripts'), 1);
|
| 86 |
+
//add_action('wp_print_styles', array(&$custom_contact_front, 'insertFrontEndStyles'), 1);
|
| 87 |
+
add_shortcode('customcontact', array(&$custom_contact_front, 'shortCodeToForm'));
|
| 88 |
+
|
| 89 |
+
add_filter('the_content', array(&$custom_contact_front, 'contentFilter'));
|
| 90 |
+
} else { /* is admin */
|
| 91 |
+
$GLOBALS['ccf_current_page'] = ($_GET['page']) ? $_GET['page'] : '';
|
| 92 |
+
require_once('custom-contact-forms-admin.php');
|
| 93 |
+
$custom_contact_admin = new CustomContactFormsAdmin();
|
| 94 |
+
if (!function_exists('CustomContactForms_ap')) {
|
| 95 |
+
function CustomContactForms_ap() {
|
| 96 |
+
global $custom_contact_admin;
|
| 97 |
+
if (!isset($custom_contact_admin)) return;
|
| 98 |
+
if (function_exists('add_menu_page')) {
|
| 99 |
+
add_menu_page(__('Custom Contact Forms', 'custom-contact-forms'), __('Custom Contact Forms', 'custom-contact-forms'), 'manage_options', 'custom-contact-forms', array(&$custom_contact_admin, 'printAdminPage'));
|
| 100 |
+
add_submenu_page('custom-contact-forms', __('Custom Contact Forms', 'custom-contact-forms'), __('Custom Contact Forms', 'custom-contact-forms'), 'manage_options', 'custom-contact-forms', array(&$custom_contact_admin, 'printAdminPage'));
|
| 101 |
+
add_submenu_page('custom-contact-forms', __('Saved Form Submissions', 'custom-contact-forms'), __('Saved Form Submissions', 'custom-contact-forms'), 'manage_options', 'ccf-saved-form-submissions', array(&$custom_contact_admin, 'printFormSubmissionsPage'));
|
| 102 |
+
add_submenu_page('custom-contact-forms', __('General Settings', 'custom-contact-forms'), __('General Settings', 'custom-contact-forms'), 'manage_options', 'ccf-settings', array(&$custom_contact_admin, 'printSettingsPage'));
|
| 103 |
+
}
|
| 104 |
+
}
|
| 105 |
+
}
|
| 106 |
+
$admin_options = $custom_contact_admin->getAdminOptions();
|
| 107 |
+
if ($admin_options['enable_dashboard_widget'] == 1) {
|
| 108 |
+
ccf_utils::load_module('widget/custom-contact-forms-dashboard.php');
|
| 109 |
+
$ccf_dashboard = new CustomContactFormsDashboard();
|
| 110 |
+
if ($ccf_dashboard->isDashboardPage()) {
|
| 111 |
+
add_action('admin_print_styles', array(&$ccf_dashboard, 'insertDashboardStyles'), 1);
|
| 112 |
+
add_action('admin_enqueue_scripts', array(&$ccf_dashboard, 'insertDashboardScripts'), 1);
|
| 113 |
+
}
|
| 114 |
+
add_action('wp_dashboard_setup', array(&$ccf_dashboard, 'install'));
|
| 115 |
+
}
|
| 116 |
+
add_action('init', array(&$custom_contact_admin, 'adminInit'), 1);
|
| 117 |
+
if ($custom_contact_admin->isPluginAdminPage()) {
|
| 118 |
+
add_action('admin_print_styles', array(&$custom_contact_admin, 'insertBackEndStyles'), 1);
|
| 119 |
+
add_action('admin_enqueue_scripts', array(&$custom_contact_admin, 'insertAdminScripts'), 1);
|
| 120 |
+
}
|
| 121 |
+
add_action('wp_ajax_ccf-ajax', array(&$custom_contact_admin, 'handleAJAX'));
|
| 122 |
+
add_action('wp_ajax_nopriv_ccf-ajax', array(&$custom_contact_admin, 'handleAJAX'));
|
| 123 |
+
add_filter('plugin_action_links', array(&$custom_contact_admin,'appendToActionLinks'), 10, 2);
|
| 124 |
+
add_action('admin_menu', 'CustomContactForms_ap');
|
| 125 |
+
}
|
| 126 |
+
|
| 127 |
+
/* widget stuff */
|
| 128 |
+
ccf_utils::load_module('widget/custom-contact-forms-widget.php');
|
| 129 |
+
if (!function_exists('CCFWidgetInit')) {
|
| 130 |
+
function CCFWidgetInit() {
|
| 131 |
+
register_widget('CustomContactFormsWidget');
|
| 132 |
+
}
|
| 133 |
+
}
|
| 134 |
+
add_action('widgets_init', 'CCFWidgetInit');
|
| 135 |
+
error_reporting($old_error_settings);
|
| 136 |
Â
?>
|
download.php
CHANGED
|
@@ -1,22 +1,22 @@
|
|
| 1 |
-
<?php
|
| 2 |
-
/*
|
| 3 |
-
Custom Contact Forms Plugin
|
| 4 |
-
By Taylor Lovett - http://www.taylorlovett.com
|
| 5 |
-
Plugin URL: http://www.taylorlovett.com/wordpress-plugins
|
| 6 |
-
*/
|
| 7 |
-
error_reporting(0);
|
| 8 |
-
if (!empty($_GET['location']) && preg_match('/^export\/ccf[^\/^\.]+\.sql$/i', $_GET['location'])) {
|
| 9 |
-
header('Content-Description: File Transfer');
|
| 10 |
-
header('Content-Type: application/octet-stream');
|
| 11 |
-
header('Content-Disposition: attachment; filename=' . basename($_GET['location']));
|
| 12 |
-
header('Content-Transfer-Encoding: binary');
|
| 13 |
-
header('Expires: 0');
|
| 14 |
-
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
|
| 15 |
-
header('Pragma: public');
|
| 16 |
-
header('Content-Length: ' . filesize($_GET['location']));
|
| 17 |
-
ob_clean();
|
| 18 |
-
flush();
|
| 19 |
-
echo file_get_contents($_GET['location']);
|
| 20 |
-
}
|
| 21 |
-
exit();
|
| 22 |
Â
?>
|
| 1 |
+
<?php
|
| 2 |
+
/*
|
| 3 |
+
Custom Contact Forms Plugin
|
| 4 |
+
By Taylor Lovett - http://www.taylorlovett.com
|
| 5 |
+
Plugin URL: http://www.taylorlovett.com/wordpress-plugins
|
| 6 |
+
*/
|
| 7 |
+
error_reporting(0);
|
| 8 |
+
if (!empty($_GET['location']) && preg_match('/^export\/ccf[^\/^\.]+\.sql$/i', $_GET['location'])) {
|
| 9 |
+
header('Content-Description: File Transfer');
|
| 10 |
+
header('Content-Type: application/octet-stream');
|
| 11 |
+
header('Content-Disposition: attachment; filename=' . basename($_GET['location']));
|
| 12 |
+
header('Content-Transfer-Encoding: binary');
|
| 13 |
+
header('Expires: 0');
|
| 14 |
+
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
|
| 15 |
+
header('Pragma: public');
|
| 16 |
+
header('Content-Length: ' . filesize($_GET['location']));
|
| 17 |
+
ob_clean();
|
| 18 |
+
flush();
|
| 19 |
+
echo file_get_contents($_GET['location']);
|
| 20 |
+
}
|
| 21 |
+
exit();
|
| 22 |
Â
?>
|
image.php
CHANGED
|
@@ -1,21 +1,21 @@
|
|
| 1 |
-
<?php
|
| 2 |
-
/*
|
| 3 |
-
Custom Contact Forms Plugin
|
| 4 |
-
By Taylor Lovett - http://www.taylorlovett.com
|
| 5 |
-
Plugin URL: http://www.taylorlovett.com/wordpress-plugins
|
| 6 |
-
*/
|
| 7 |
-
error_reporting(0);
|
| 8 |
-
//header("Content-type: image/png");
|
| 9 |
-
require_once('custom-contact-forms-utils.php');
|
| 10 |
-
ccf_utils::load_module('images/custom-contact-forms-images.php');
|
| 11 |
-
$image = new CustomContactFormsImages();
|
| 12 |
-
$str = rand(10000, 99999);
|
| 13 |
-
if (!session_id())
|
| 14 |
-
session_start();
|
| 15 |
-
$captcha_name = '
|
| 16 |
-
if (!$_SESSION[$captcha_name])
|
| 17 |
-
$_SESSION[$captcha_name] = $str;
|
| 18 |
-
else
|
| 19 |
-
$str = $_SESSION[$captcha_name];
|
| 20 |
-
$image->createImageWithText($str);
|
| 21 |
Â
?>
|
| 1 |
+
<?php
|
| 2 |
+
/*
|
| 3 |
+
Custom Contact Forms Plugin
|
| 4 |
+
By Taylor Lovett - http://www.taylorlovett.com
|
| 5 |
+
Plugin URL: http://www.taylorlovett.com/wordpress-plugins
|
| 6 |
+
*/
|
| 7 |
+
error_reporting(0);
|
| 8 |
+
//header("Content-type: image/png");
|
| 9 |
+
require_once('custom-contact-forms-utils.php');
|
| 10 |
+
ccf_utils::load_module('images/custom-contact-forms-images.php');
|
| 11 |
+
$image = new CustomContactFormsImages();
|
| 12 |
+
$str = rand(10000, 99999);
|
| 13 |
+
if (!session_id())
|
| 14 |
+
session_start();
|
| 15 |
+
$captcha_name = 'ccf_captcha_' . $_GET['fid'];
|
| 16 |
+
if (!$_SESSION[$captcha_name])
|
| 17 |
+
$_SESSION[$captcha_name] = $str;
|
| 18 |
+
else
|
| 19 |
+
$str = $_SESSION[$captcha_name];
|
| 20 |
+
$image->createImageWithText($str);
|
| 21 |
Â
?>
|
js/colorpicker.js
CHANGED
|
@@ -1,484 +1,484 @@
|
|
| 1 |
-
/**
|
| 2 |
-
*
|
| 3 |
-
* Color picker
|
| 4 |
-
* Author: Stefan Petre www.eyecon.ro
|
| 5 |
-
*
|
| 6 |
-
* Dual licensed under the MIT and GPL licenses
|
| 7 |
-
*
|
| 8 |
-
*/
|
| 9 |
-
(function ($) {
|
| 10 |
-
var ColorPicker = function () {
|
| 11 |
-
var
|
| 12 |
-
ids = {},
|
| 13 |
-
inAction,
|
| 14 |
-
charMin = 65,
|
| 15 |
-
visible,
|
| 16 |
-
tpl = '<div class="colorpicker"><div class="colorpicker_color"><div><div></div></div></div><div class="colorpicker_hue"><div></div></div><div class="colorpicker_new_color"></div><div class="colorpicker_current_color"></div><div class="colorpicker_hex"><input type="text" maxlength="6" size="6" /></div><div class="colorpicker_rgb_r colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_rgb_g colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_rgb_b colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_hsb_h colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_hsb_s colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_hsb_b colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_submit"></div></div>',
|
| 17 |
-
defaults = {
|
| 18 |
-
eventName: 'click',
|
| 19 |
-
onShow: function () {},
|
| 20 |
-
onBeforeShow: function(){},
|
| 21 |
-
onHide: function () {},
|
| 22 |
-
onChange: function () {},
|
| 23 |
-
onSubmit: function () {},
|
| 24 |
-
color: 'ff0000',
|
| 25 |
-
livePreview: true,
|
| 26 |
-
flat: false
|
| 27 |
-
},
|
| 28 |
-
fillRGBFields = function (hsb, cal) {
|
| 29 |
-
var rgb = HSBToRGB(hsb);
|
| 30 |
-
$(cal).data('colorpicker').fields
|
| 31 |
-
.eq(1).val(rgb.r).end()
|
| 32 |
-
.eq(2).val(rgb.g).end()
|
| 33 |
-
.eq(3).val(rgb.b).end();
|
| 34 |
-
},
|
| 35 |
-
fillHSBFields = function (hsb, cal) {
|
| 36 |
-
$(cal).data('colorpicker').fields
|
| 37 |
-
.eq(4).val(hsb.h).end()
|
| 38 |
-
.eq(5).val(hsb.s).end()
|
| 39 |
-
.eq(6).val(hsb.b).end();
|
| 40 |
-
},
|
| 41 |
-
fillHexFields = function (hsb, cal) {
|
| 42 |
-
$(cal).data('colorpicker').fields
|
| 43 |
-
.eq(0).val(HSBToHex(hsb)).end();
|
| 44 |
-
},
|
| 45 |
-
setSelector = function (hsb, cal) {
|
| 46 |
-
$(cal).data('colorpicker').selector.css('backgroundColor', '#' + HSBToHex({h: hsb.h, s: 100, b: 100}));
|
| 47 |
-
$(cal).data('colorpicker').selectorIndic.css({
|
| 48 |
-
left: parseInt(150 * hsb.s/100, 10),
|
| 49 |
-
top: parseInt(150 * (100-hsb.b)/100, 10)
|
| 50 |
-
});
|
| 51 |
-
},
|
| 52 |
-
setHue = function (hsb, cal) {
|
| 53 |
-
$(cal).data('colorpicker').hue.css('top', parseInt(150 - 150 * hsb.h/360, 10));
|
| 54 |
-
},
|
| 55 |
-
setCurrentColor = function (hsb, cal) {
|
| 56 |
-
$(cal).data('colorpicker').currentColor.css('backgroundColor', '#' + HSBToHex(hsb));
|
| 57 |
-
},
|
| 58 |
-
setNewColor = function (hsb, cal) {
|
| 59 |
-
$(cal).data('colorpicker').newColor.css('backgroundColor', '#' + HSBToHex(hsb));
|
| 60 |
-
},
|
| 61 |
-
keyDown = function (ev) {
|
| 62 |
-
var pressedKey = ev.charCode || ev.keyCode || -1;
|
| 63 |
-
if ((pressedKey > charMin && pressedKey <= 90) || pressedKey == 32) {
|
| 64 |
-
return false;
|
| 65 |
-
}
|
| 66 |
-
var cal = $(this).parent().parent();
|
| 67 |
-
if (cal.data('colorpicker').livePreview === true) {
|
| 68 |
-
change.apply(this);
|
| 69 |
-
}
|
| 70 |
-
},
|
| 71 |
-
change = function (ev) {
|
| 72 |
-
var cal = $(this).parent().parent(), col;
|
| 73 |
-
if (this.parentNode.className.indexOf('_hex') > 0) {
|
| 74 |
-
cal.data('colorpicker').color = col = HexToHSB(fixHex(this.value));
|
| 75 |
-
} else if (this.parentNode.className.indexOf('_hsb') > 0) {
|
| 76 |
-
cal.data('colorpicker').color = col = fixHSB({
|
| 77 |
-
h: parseInt(cal.data('colorpicker').fields.eq(4).val(), 10),
|
| 78 |
-
s: parseInt(cal.data('colorpicker').fields.eq(5).val(), 10),
|
| 79 |
-
b: parseInt(cal.data('colorpicker').fields.eq(6).val(), 10)
|
| 80 |
-
});
|
| 81 |
-
} else {
|
| 82 |
-
cal.data('colorpicker').color = col = RGBToHSB(fixRGB({
|
| 83 |
-
r: parseInt(cal.data('colorpicker').fields.eq(1).val(), 10),
|
| 84 |
-
g: parseInt(cal.data('colorpicker').fields.eq(2).val(), 10),
|
| 85 |
-
b: parseInt(cal.data('colorpicker').fields.eq(3).val(), 10)
|
| 86 |
-
}));
|
| 87 |
-
}
|
| 88 |
-
if (ev) {
|
| 89 |
-
fillRGBFields(col, cal.get(0));
|
| 90 |
-
fillHexFields(col, cal.get(0));
|
| 91 |
-
fillHSBFields(col, cal.get(0));
|
| 92 |
-
}
|
| 93 |
-
setSelector(col, cal.get(0));
|
| 94 |
-
setHue(col, cal.get(0));
|
| 95 |
-
setNewColor(col, cal.get(0));
|
| 96 |
-
cal.data('colorpicker').onChange.apply(cal, [col, HSBToHex(col), HSBToRGB(col)]);
|
| 97 |
-
},
|
| 98 |
-
blur = function (ev) {
|
| 99 |
-
var cal = $(this).parent().parent();
|
| 100 |
-
cal.data('colorpicker').fields.parent().removeClass('colorpicker_focus');
|
| 101 |
-
},
|
| 102 |
-
focus = function () {
|
| 103 |
-
charMin = this.parentNode.className.indexOf('_hex') > 0 ? 70 : 65;
|
| 104 |
-
$(this).parent().parent().data('colorpicker').fields.parent().removeClass('colorpicker_focus');
|
| 105 |
-
$(this).parent().addClass('colorpicker_focus');
|
| 106 |
-
},
|
| 107 |
-
downIncrement = function (ev) {
|
| 108 |
-
var field = $(this).parent().find('input').focus();
|
| 109 |
-
var current = {
|
| 110 |
-
el: $(this).parent().addClass('colorpicker_slider'),
|
| 111 |
-
max: this.parentNode.className.indexOf('_hsb_h') > 0 ? 360 : (this.parentNode.className.indexOf('_hsb') > 0 ? 100 : 255),
|
| 112 |
-
y: ev.pageY,
|
| 113 |
-
field: field,
|
| 114 |
-
val: parseInt(field.val(), 10),
|
| 115 |
-
preview: $(this).parent().parent().data('colorpicker').livePreview
|
| 116 |
-
};
|
| 117 |
-
$(document).bind('mouseup', current, upIncrement);
|
| 118 |
-
$(document).bind('mousemove', current, moveIncrement);
|
| 119 |
-
},
|
| 120 |
-
moveIncrement = function (ev) {
|
| 121 |
-
ev.data.field.val(Math.max(0, Math.min(ev.data.max, parseInt(ev.data.val + ev.pageY - ev.data.y, 10))));
|
| 122 |
-
if (ev.data.preview) {
|
| 123 |
-
change.apply(ev.data.field.get(0), [true]);
|
| 124 |
-
}
|
| 125 |
-
return false;
|
| 126 |
-
},
|
| 127 |
-
upIncrement = function (ev) {
|
| 128 |
-
change.apply(ev.data.field.get(0), [true]);
|
| 129 |
-
ev.data.el.removeClass('colorpicker_slider').find('input').focus();
|
| 130 |
-
$(document).unbind('mouseup', upIncrement);
|
| 131 |
-
$(document).unbind('mousemove', moveIncrement);
|
| 132 |
-
return false;
|
| 133 |
-
},
|
| 134 |
-
downHue = function (ev) {
|
| 135 |
-
var current = {
|
| 136 |
-
cal: $(this).parent(),
|
| 137 |
-
y: $(this).offset().top
|
| 138 |
-
};
|
| 139 |
-
current.preview = current.cal.data('colorpicker').livePreview;
|
| 140 |
-
$(document).bind('mouseup', current, upHue);
|
| 141 |
-
$(document).bind('mousemove', current, moveHue);
|
| 142 |
-
},
|
| 143 |
-
moveHue = function (ev) {
|
| 144 |
-
change.apply(
|
| 145 |
-
ev.data.cal.data('colorpicker')
|
| 146 |
-
.fields
|
| 147 |
-
.eq(4)
|
| 148 |
-
.val(parseInt(360*(150 - Math.max(0,Math.min(150,(ev.pageY - ev.data.y))))/150, 10))
|
| 149 |
-
.get(0),
|
| 150 |
-
[ev.data.preview]
|
| 151 |
-
);
|
| 152 |
-
return false;
|
| 153 |
-
},
|
| 154 |
-
upHue = function (ev) {
|
| 155 |
-
fillRGBFields(ev.data.cal.data('colorpicker').color, ev.data.cal.get(0));
|
| 156 |
-
fillHexFields(ev.data.cal.data('colorpicker').color, ev.data.cal.get(0));
|
| 157 |
-
$(document).unbind('mouseup', upHue);
|
| 158 |
-
$(document).unbind('mousemove', moveHue);
|
| 159 |
-
return false;
|
| 160 |
-
},
|
| 161 |
-
downSelector = function (ev) {
|
| 162 |
-
var current = {
|
| 163 |
-
cal: $(this).parent(),
|
| 164 |
-
pos: $(this).offset()
|
| 165 |
-
};
|
| 166 |
-
current.preview = current.cal.data('colorpicker').livePreview;
|
| 167 |
-
$(document).bind('mouseup', current, upSelector);
|
| 168 |
-
$(document).bind('mousemove', current, moveSelector);
|
| 169 |
-
},
|
| 170 |
-
moveSelector = function (ev) {
|
| 171 |
-
change.apply(
|
| 172 |
-
ev.data.cal.data('colorpicker')
|
| 173 |
-
.fields
|
| 174 |
-
.eq(6)
|
| 175 |
-
.val(parseInt(100*(150 - Math.max(0,Math.min(150,(ev.pageY - ev.data.pos.top))))/150, 10))
|
| 176 |
-
.end()
|
| 177 |
-
.eq(5)
|
| 178 |
-
.val(parseInt(100*(Math.max(0,Math.min(150,(ev.pageX - ev.data.pos.left))))/150, 10))
|
| 179 |
-
.get(0),
|
| 180 |
-
[ev.data.preview]
|
| 181 |
-
);
|
| 182 |
-
return false;
|
| 183 |
-
},
|
| 184 |
-
upSelector = function (ev) {
|
| 185 |
-
fillRGBFields(ev.data.cal.data('colorpicker').color, ev.data.cal.get(0));
|
| 186 |
-
fillHexFields(ev.data.cal.data('colorpicker').color, ev.data.cal.get(0));
|
| 187 |
-
$(document).unbind('mouseup', upSelector);
|
| 188 |
-
$(document).unbind('mousemove', moveSelector);
|
| 189 |
-
return false;
|
| 190 |
-
},
|
| 191 |
-
enterSubmit = function (ev) {
|
| 192 |
-
$(this).addClass('colorpicker_focus');
|
| 193 |
-
},
|
| 194 |
-
leaveSubmit = function (ev) {
|
| 195 |
-
$(this).removeClass('colorpicker_focus');
|
| 196 |
-
},
|
| 197 |
-
clickSubmit = function (ev) {
|
| 198 |
-
var cal = $(this).parent();
|
| 199 |
-
var col = cal.data('colorpicker').color;
|
| 200 |
-
cal.data('colorpicker').origColor = col;
|
| 201 |
-
setCurrentColor(col, cal.get(0));
|
| 202 |
-
cal.data('colorpicker').onSubmit(col, HSBToHex(col), HSBToRGB(col), cal.data('colorpicker').el);
|
| 203 |
-
},
|
| 204 |
-
show = function (ev) {
|
| 205 |
-
var cal = $('#' + $(this).data('colorpickerId'));
|
| 206 |
-
cal.data('colorpicker').onBeforeShow.apply(this, [cal.get(0)]);
|
| 207 |
-
var pos = $(this).offset();
|
| 208 |
-
var viewPort = getViewport();
|
| 209 |
-
var top = pos.top + this.offsetHeight;
|
| 210 |
-
var left = pos.left;
|
| 211 |
-
if (top + 176 > viewPort.t + viewPort.h) {
|
| 212 |
-
top -= this.offsetHeight + 176;
|
| 213 |
-
}
|
| 214 |
-
if (left + 356 > viewPort.l + viewPort.w) {
|
| 215 |
-
left -= 356;
|
| 216 |
-
}
|
| 217 |
-
cal.css({left: left + 'px', top: top + 'px'});
|
| 218 |
-
if (cal.data('colorpicker').onShow.apply(this, [cal.get(0)]) != false) {
|
| 219 |
-
cal.show();
|
| 220 |
-
}
|
| 221 |
-
$(document).bind('mousedown', {cal: cal}, hide);
|
| 222 |
-
return false;
|
| 223 |
-
},
|
| 224 |
-
hide = function (ev) {
|
| 225 |
-
if (!isChildOf(ev.data.cal.get(0), ev.target, ev.data.cal.get(0))) {
|
| 226 |
-
if (ev.data.cal.data('colorpicker').onHide.apply(this, [ev.data.cal.get(0)]) != false) {
|
| 227 |
-
ev.data.cal.hide();
|
| 228 |
-
}
|
| 229 |
-
$(document).unbind('mousedown', hide);
|
| 230 |
-
}
|
| 231 |
-
},
|
| 232 |
-
isChildOf = function(parentEl, el, container) {
|
| 233 |
-
if (parentEl == el) {
|
| 234 |
-
return true;
|
| 235 |
-
}
|
| 236 |
-
if (parentEl.contains) {
|
| 237 |
-
return parentEl.contains(el);
|
| 238 |
-
}
|
| 239 |
-
if ( parentEl.compareDocumentPosition ) {
|
| 240 |
-
return !!(parentEl.compareDocumentPosition(el) & 16);
|
| 241 |
-
}
|
| 242 |
-
var prEl = el.parentNode;
|
| 243 |
-
while(prEl && prEl != container) {
|
| 244 |
-
if (prEl == parentEl)
|
| 245 |
-
return true;
|
| 246 |
-
prEl = prEl.parentNode;
|
| 247 |
-
}
|
| 248 |
-
return false;
|
| 249 |
-
},
|
| 250 |
-
getViewport = function () {
|
| 251 |
-
var m = document.compatMode == 'CSS1Compat';
|
| 252 |
-
return {
|
| 253 |
-
l : window.pageXOffset || (m ? document.documentElement.scrollLeft : document.body.scrollLeft),
|
| 254 |
-
t : window.pageYOffset || (m ? document.documentElement.scrollTop : document.body.scrollTop),
|
| 255 |
-
w : window.innerWidth || (m ? document.documentElement.clientWidth : document.body.clientWidth),
|
| 256 |
-
h : window.innerHeight || (m ? document.documentElement.clientHeight : document.body.clientHeight)
|
| 257 |
-
};
|
| 258 |
-
},
|
| 259 |
-
fixHSB = function (hsb) {
|
| 260 |
-
return {
|
| 261 |
-
h: Math.min(360, Math.max(0, hsb.h)),
|
| 262 |
-
s: Math.min(100, Math.max(0, hsb.s)),
|
| 263 |
-
b: Math.min(100, Math.max(0, hsb.b))
|
| 264 |
-
};
|
| 265 |
-
},
|
| 266 |
-
fixRGB = function (rgb) {
|
| 267 |
-
return {
|
| 268 |
-
r: Math.min(255, Math.max(0, rgb.r)),
|
| 269 |
-
g: Math.min(255, Math.max(0, rgb.g)),
|
| 270 |
-
b: Math.min(255, Math.max(0, rgb.b))
|
| 271 |
-
};
|
| 272 |
-
},
|
| 273 |
-
fixHex = function (hex) {
|
| 274 |
-
var len = 6 - hex.length;
|
| 275 |
-
if (len > 0) {
|
| 276 |
-
var o = [];
|
| 277 |
-
for (var i=0; i<len; i++) {
|
| 278 |
-
o.push('0');
|
| 279 |
-
}
|
| 280 |
-
o.push(hex);
|
| 281 |
-
hex = o.join('');
|
| 282 |
-
}
|
| 283 |
-
return hex;
|
| 284 |
-
},
|
| 285 |
-
HexToRGB = function (hex) {
|
| 286 |
-
var hex = parseInt(((hex.indexOf('#') > -1) ? hex.substring(1) : hex), 16);
|
| 287 |
-
return {r: hex >> 16, g: (hex & 0x00FF00) >> 8, b: (hex & 0x0000FF)};
|
| 288 |
-
},
|
| 289 |
-
HexToHSB = function (hex) {
|
| 290 |
-
return RGBToHSB(HexToRGB(hex));
|
| 291 |
-
},
|
| 292 |
-
RGBToHSB = function (rgb) {
|
| 293 |
-
var hsb = {
|
| 294 |
-
h: 0,
|
| 295 |
-
s: 0,
|
| 296 |
-
b: 0
|
| 297 |
-
};
|
| 298 |
-
var min = Math.min(rgb.r, rgb.g, rgb.b);
|
| 299 |
-
var max = Math.max(rgb.r, rgb.g, rgb.b);
|
| 300 |
-
var delta = max - min;
|
| 301 |
-
hsb.b = max;
|
| 302 |
-
if (max != 0) {
|
| 303 |
-
|
| 304 |
-
}
|
| 305 |
-
hsb.s = max != 0 ? 255 * delta / max : 0;
|
| 306 |
-
if (hsb.s != 0) {
|
| 307 |
-
if (rgb.r == max) {
|
| 308 |
-
hsb.h = (rgb.g - rgb.b) / delta;
|
| 309 |
-
} else if (rgb.g == max) {
|
| 310 |
-
hsb.h = 2 + (rgb.b - rgb.r) / delta;
|
| 311 |
-
} else {
|
| 312 |
-
hsb.h = 4 + (rgb.r - rgb.g) / delta;
|
| 313 |
-
}
|
| 314 |
-
} else {
|
| 315 |
-
hsb.h = -1;
|
| 316 |
-
}
|
| 317 |
-
hsb.h *= 60;
|
| 318 |
-
if (hsb.h < 0) {
|
| 319 |
-
hsb.h += 360;
|
| 320 |
-
}
|
| 321 |
-
hsb.s *= 100/255;
|
| 322 |
-
hsb.b *= 100/255;
|
| 323 |
-
return hsb;
|
| 324 |
-
},
|
| 325 |
-
HSBToRGB = function (hsb) {
|
| 326 |
-
var rgb = {};
|
| 327 |
-
var h = Math.round(hsb.h);
|
| 328 |
-
var s = Math.round(hsb.s*255/100);
|
| 329 |
-
var v = Math.round(hsb.b*255/100);
|
| 330 |
-
if(s == 0) {
|
| 331 |
-
rgb.r = rgb.g = rgb.b = v;
|
| 332 |
-
} else {
|
| 333 |
-
var t1 = v;
|
| 334 |
-
var t2 = (255-s)*v/255;
|
| 335 |
-
var t3 = (t1-t2)*(h%60)/60;
|
| 336 |
-
if(h==360) h = 0;
|
| 337 |
-
if(h<60) {rgb.r=t1; rgb.b=t2; rgb.g=t2+t3}
|
| 338 |
-
else if(h<120) {rgb.g=t1; rgb.b=t2; rgb.r=t1-t3}
|
| 339 |
-
else if(h<180) {rgb.g=t1; rgb.r=t2; rgb.b=t2+t3}
|
| 340 |
-
else if(h<240) {rgb.b=t1; rgb.r=t2; rgb.g=t1-t3}
|
| 341 |
-
else if(h<300) {rgb.b=t1; rgb.g=t2; rgb.r=t2+t3}
|
| 342 |
-
else if(h<360) {rgb.r=t1; rgb.g=t2; rgb.b=t1-t3}
|
| 343 |
-
else {rgb.r=0; rgb.g=0; rgb.b=0}
|
| 344 |
-
}
|
| 345 |
-
return {r:Math.round(rgb.r), g:Math.round(rgb.g), b:Math.round(rgb.b)};
|
| 346 |
-
},
|
| 347 |
-
RGBToHex = function (rgb) {
|
| 348 |
-
var hex = [
|
| 349 |
-
rgb.r.toString(16),
|
| 350 |
-
rgb.g.toString(16),
|
| 351 |
-
rgb.b.toString(16)
|
| 352 |
-
];
|
| 353 |
-
$.each(hex, function (nr, val) {
|
| 354 |
-
if (val.length == 1) {
|
| 355 |
-
hex[nr] = '0' + val;
|
| 356 |
-
}
|
| 357 |
-
});
|
| 358 |
-
return hex.join('');
|
| 359 |
-
},
|
| 360 |
-
HSBToHex = function (hsb) {
|
| 361 |
-
return RGBToHex(HSBToRGB(hsb));
|
| 362 |
-
},
|
| 363 |
-
restoreOriginal = function () {
|
| 364 |
-
var cal = $(this).parent();
|
| 365 |
-
var col = cal.data('colorpicker').origColor;
|
| 366 |
-
cal.data('colorpicker').color = col;
|
| 367 |
-
fillRGBFields(col, cal.get(0));
|
| 368 |
-
fillHexFields(col, cal.get(0));
|
| 369 |
-
fillHSBFields(col, cal.get(0));
|
| 370 |
-
setSelector(col, cal.get(0));
|
| 371 |
-
setHue(col, cal.get(0));
|
| 372 |
-
setNewColor(col, cal.get(0));
|
| 373 |
-
};
|
| 374 |
-
return {
|
| 375 |
-
init: function (opt) {
|
| 376 |
-
opt = $.extend({}, defaults, opt||{});
|
| 377 |
-
if (typeof opt.color == 'string') {
|
| 378 |
-
opt.color = HexToHSB(opt.color);
|
| 379 |
-
} else if (opt.color.r != undefined && opt.color.g != undefined && opt.color.b != undefined) {
|
| 380 |
-
opt.color = RGBToHSB(opt.color);
|
| 381 |
-
} else if (opt.color.h != undefined && opt.color.s != undefined && opt.color.b != undefined) {
|
| 382 |
-
opt.color = fixHSB(opt.color);
|
| 383 |
-
} else {
|
| 384 |
-
return this;
|
| 385 |
-
}
|
| 386 |
-
return this.each(function () {
|
| 387 |
-
if (!$(this).data('colorpickerId')) {
|
| 388 |
-
var options = $.extend({}, opt);
|
| 389 |
-
options.origColor = opt.color;
|
| 390 |
-
var id = 'collorpicker_' + parseInt(Math.random() * 1000);
|
| 391 |
-
$(this).data('colorpickerId', id);
|
| 392 |
-
var cal = $(tpl).attr('id', id);
|
| 393 |
-
if (options.flat) {
|
| 394 |
-
cal.appendTo(this).show();
|
| 395 |
-
} else {
|
| 396 |
-
cal.appendTo(document.body);
|
| 397 |
-
}
|
| 398 |
-
options.fields = cal
|
| 399 |
-
.find('input')
|
| 400 |
-
.bind('keyup', keyDown)
|
| 401 |
-
.bind('change', change)
|
| 402 |
-
.bind('blur', blur)
|
| 403 |
-
.bind('focus', focus);
|
| 404 |
-
cal
|
| 405 |
-
.find('span').bind('mousedown', downIncrement).end()
|
| 406 |
-
.find('>div.colorpicker_current_color').bind('click', restoreOriginal);
|
| 407 |
-
options.selector = cal.find('div.colorpicker_color').bind('mousedown', downSelector);
|
| 408 |
-
options.selectorIndic = options.selector.find('div div');
|
| 409 |
-
options.el = this;
|
| 410 |
-
options.hue = cal.find('div.colorpicker_hue div');
|
| 411 |
-
cal.find('div.colorpicker_hue').bind('mousedown', downHue);
|
| 412 |
-
options.newColor = cal.find('div.colorpicker_new_color');
|
| 413 |
-
options.currentColor = cal.find('div.colorpicker_current_color');
|
| 414 |
-
cal.data('colorpicker', options);
|
| 415 |
-
cal.find('div.colorpicker_submit')
|
| 416 |
-
.bind('mouseenter', enterSubmit)
|
| 417 |
-
.bind('mouseleave', leaveSubmit)
|
| 418 |
-
.bind('click', clickSubmit);
|
| 419 |
-
fillRGBFields(options.color, cal.get(0));
|
| 420 |
-
fillHSBFields(options.color, cal.get(0));
|
| 421 |
-
fillHexFields(options.color, cal.get(0));
|
| 422 |
-
setHue(options.color, cal.get(0));
|
| 423 |
-
setSelector(options.color, cal.get(0));
|
| 424 |
-
setCurrentColor(options.color, cal.get(0));
|
| 425 |
-
setNewColor(options.color, cal.get(0));
|
| 426 |
-
if (options.flat) {
|
| 427 |
-
cal.css({
|
| 428 |
-
position: 'relative',
|
| 429 |
-
display: 'block'
|
| 430 |
-
});
|
| 431 |
-
} else {
|
| 432 |
-
$(this).bind(options.eventName, show);
|
| 433 |
-
}
|
| 434 |
-
}
|
| 435 |
-
});
|
| 436 |
-
},
|
| 437 |
-
showPicker: function() {
|
| 438 |
-
return this.each( function () {
|
| 439 |
-
if ($(this).data('colorpickerId')) {
|
| 440 |
-
show.apply(this);
|
| 441 |
-
}
|
| 442 |
-
});
|
| 443 |
-
},
|
| 444 |
-
hidePicker: function() {
|
| 445 |
-
return this.each( function () {
|
| 446 |
-
if ($(this).data('colorpickerId')) {
|
| 447 |
-
$('#' + $(this).data('colorpickerId')).hide();
|
| 448 |
-
}
|
| 449 |
-
});
|
| 450 |
-
},
|
| 451 |
-
setColor: function(col) {
|
| 452 |
-
if (typeof col == 'string') {
|
| 453 |
-
col = HexToHSB(col);
|
| 454 |
-
} else if (col.r != undefined && col.g != undefined && col.b != undefined) {
|
| 455 |
-
col = RGBToHSB(col);
|
| 456 |
-
} else if (col.h != undefined && col.s != undefined && col.b != undefined) {
|
| 457 |
-
col = fixHSB(col);
|
| 458 |
-
} else {
|
| 459 |
-
return this;
|
| 460 |
-
}
|
| 461 |
-
return this.each(function(){
|
| 462 |
-
if ($(this).data('colorpickerId')) {
|
| 463 |
-
var cal = $('#' + $(this).data('colorpickerId'));
|
| 464 |
-
cal.data('colorpicker').color = col;
|
| 465 |
-
cal.data('colorpicker').origColor = col;
|
| 466 |
-
fillRGBFields(col, cal.get(0));
|
| 467 |
-
fillHSBFields(col, cal.get(0));
|
| 468 |
-
fillHexFields(col, cal.get(0));
|
| 469 |
-
setHue(col, cal.get(0));
|
| 470 |
-
setSelector(col, cal.get(0));
|
| 471 |
-
setCurrentColor(col, cal.get(0));
|
| 472 |
-
setNewColor(col, cal.get(0));
|
| 473 |
-
}
|
| 474 |
-
});
|
| 475 |
-
}
|
| 476 |
-
};
|
| 477 |
-
}();
|
| 478 |
-
$.fn.extend({
|
| 479 |
-
ColorPicker: ColorPicker.init,
|
| 480 |
-
ColorPickerHide: ColorPicker.hidePicker,
|
| 481 |
-
ColorPickerShow: ColorPicker.showPicker,
|
| 482 |
-
ColorPickerSetColor: ColorPicker.setColor
|
| 483 |
-
});
|
| 484 |
Â
})(jQuery)
|
| 1 |
+
/**
|
| 2 |
+
*
|
| 3 |
+
* Color picker
|
| 4 |
+
* Author: Stefan Petre www.eyecon.ro
|
| 5 |
+
*
|
| 6 |
+
* Dual licensed under the MIT and GPL licenses
|
| 7 |
+
*
|
| 8 |
+
*/
|
| 9 |
+
(function ($) {
|
| 10 |
+
var ColorPicker = function () {
|
| 11 |
+
var
|
| 12 |
+
ids = {},
|
| 13 |
+
inAction,
|
| 14 |
+
charMin = 65,
|
| 15 |
+
visible,
|
| 16 |
+
tpl = '<div class="colorpicker"><div class="colorpicker_color"><div><div></div></div></div><div class="colorpicker_hue"><div></div></div><div class="colorpicker_new_color"></div><div class="colorpicker_current_color"></div><div class="colorpicker_hex"><input type="text" maxlength="6" size="6" /></div><div class="colorpicker_rgb_r colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_rgb_g colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_rgb_b colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_hsb_h colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_hsb_s colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_hsb_b colorpicker_field"><input type="text" maxlength="3" size="3" /><span></span></div><div class="colorpicker_submit"></div></div>',
|
| 17 |
+
defaults = {
|
| 18 |
+
eventName: 'click',
|
| 19 |
+
onShow: function () {},
|
| 20 |
+
onBeforeShow: function(){},
|
| 21 |
+
onHide: function () {},
|
| 22 |
+
onChange: function () {},
|
| 23 |
+
onSubmit: function () {},
|
| 24 |
+
color: 'ff0000',
|
| 25 |
+
livePreview: true,
|
| 26 |
+
flat: false
|
| 27 |
+
},
|
| 28 |
+
fillRGBFields = function (hsb, cal) {
|
| 29 |
+
var rgb = HSBToRGB(hsb);
|
| 30 |
+
$(cal).data('colorpicker').fields
|
| 31 |
+
.eq(1).val(rgb.r).end()
|
| 32 |
+
.eq(2).val(rgb.g).end()
|
| 33 |
+
.eq(3).val(rgb.b).end();
|
| 34 |
+
},
|
| 35 |
+
fillHSBFields = function (hsb, cal) {
|
| 36 |
+
$(cal).data('colorpicker').fields
|
| 37 |
+
.eq(4).val(hsb.h).end()
|
| 38 |
+
.eq(5).val(hsb.s).end()
|
| 39 |
+
.eq(6).val(hsb.b).end();
|
| 40 |
+
},
|
| 41 |
+
fillHexFields = function (hsb, cal) {
|
| 42 |
+
$(cal).data('colorpicker').fields
|
| 43 |
+
.eq(0).val(HSBToHex(hsb)).end();
|
| 44 |
+
},
|
| 45 |
+
setSelector = function (hsb, cal) {
|
| 46 |
+
$(cal).data('colorpicker').selector.css('backgroundColor', '#' + HSBToHex({h: hsb.h, s: 100, b: 100}));
|
| 47 |
+
$(cal).data('colorpicker').selectorIndic.css({
|
| 48 |
+
left: parseInt(150 * hsb.s/100, 10),
|
| 49 |
+
top: parseInt(150 * (100-hsb.b)/100, 10)
|
| 50 |
+
});
|
| 51 |
+
},
|
| 52 |
+
setHue = function (hsb, cal) {
|
| 53 |
+
$(cal).data('colorpicker').hue.css('top', parseInt(150 - 150 * hsb.h/360, 10));
|
| 54 |
+
},
|
| 55 |
+
setCurrentColor = function (hsb, cal) {
|
| 56 |
+
$(cal).data('colorpicker').currentColor.css('backgroundColor', '#' + HSBToHex(hsb));
|
| 57 |
+
},
|
| 58 |
+
setNewColor = function (hsb, cal) {
|
| 59 |
+
$(cal).data('colorpicker').newColor.css('backgroundColor', '#' + HSBToHex(hsb));
|
| 60 |
+
},
|
| 61 |
+
keyDown = function (ev) {
|
| 62 |
+
var pressedKey = ev.charCode || ev.keyCode || -1;
|
| 63 |
+
if ((pressedKey > charMin && pressedKey <= 90) || pressedKey == 32) {
|
| 64 |
+
return false;
|
| 65 |
+
}
|
| 66 |
+
var cal = $(this).parent().parent();
|
| 67 |
+
if (cal.data('colorpicker').livePreview === true) {
|
| 68 |
+
change.apply(this);
|
| 69 |
+
}
|
| 70 |
+
},
|
| 71 |
+
change = function (ev) {
|
| 72 |
+
var cal = $(this).parent().parent(), col;
|
| 73 |
+
if (this.parentNode.className.indexOf('_hex') > 0) {
|
| 74 |
+
cal.data('colorpicker').color = col = HexToHSB(fixHex(this.value));
|
| 75 |
+
} else if (this.parentNode.className.indexOf('_hsb') > 0) {
|
| 76 |
+
cal.data('colorpicker').color = col = fixHSB({
|
| 77 |
+
h: parseInt(cal.data('colorpicker').fields.eq(4).val(), 10),
|
| 78 |
+
s: parseInt(cal.data('colorpicker').fields.eq(5).val(), 10),
|
| 79 |
+
b: parseInt(cal.data('colorpicker').fields.eq(6).val(), 10)
|
| 80 |
+
});
|
| 81 |
+
} else {
|
| 82 |
+
cal.data('colorpicker').color = col = RGBToHSB(fixRGB({
|
| 83 |
+
r: parseInt(cal.data('colorpicker').fields.eq(1).val(), 10),
|
| 84 |
+
g: parseInt(cal.data('colorpicker').fields.eq(2).val(), 10),
|
| 85 |
+
b: parseInt(cal.data('colorpicker').fields.eq(3).val(), 10)
|
| 86 |
+
}));
|
| 87 |
+
}
|
| 88 |
+
if (ev) {
|
| 89 |
+
fillRGBFields(col, cal.get(0));
|
| 90 |
+
fillHexFields(col, cal.get(0));
|
| 91 |
+
fillHSBFields(col, cal.get(0));
|
| 92 |
+
}
|
| 93 |
+
setSelector(col, cal.get(0));
|
| 94 |
+
setHue(col, cal.get(0));
|
| 95 |
+
setNewColor(col, cal.get(0));
|
| 96 |
+
cal.data('colorpicker').onChange.apply(cal, [col, HSBToHex(col), HSBToRGB(col)]);
|
| 97 |
+
},
|
| 98 |
+
blur = function (ev) {
|
| 99 |
+
var cal = $(this).parent().parent();
|
| 100 |
+
cal.data('colorpicker').fields.parent().removeClass('colorpicker_focus');
|
| 101 |
+
},
|
| 102 |
+
focus = function () {
|
| 103 |
+
charMin = this.parentNode.className.indexOf('_hex') > 0 ? 70 : 65;
|
| 104 |
+
$(this).parent().parent().data('colorpicker').fields.parent().removeClass('colorpicker_focus');
|
| 105 |
+
$(this).parent().addClass('colorpicker_focus');
|
| 106 |
+
},
|
| 107 |
+
downIncrement = function (ev) {
|
| 108 |
+
var field = $(this).parent().find('input').focus();
|
| 109 |
+
var current = {
|
| 110 |
+
el: $(this).parent().addClass('colorpicker_slider'),
|
| 111 |
+
max: this.parentNode.className.indexOf('_hsb_h') > 0 ? 360 : (this.parentNode.className.indexOf('_hsb') > 0 ? 100 : 255),
|
| 112 |
+
y: ev.pageY,
|
| 113 |
+
field: field,
|
| 114 |
+
val: parseInt(field.val(), 10),
|
| 115 |
+
preview: $(this).parent().parent().data('colorpicker').livePreview
|
| 116 |
+
};
|
| 117 |
+
$(document).bind('mouseup', current, upIncrement);
|
| 118 |
+
$(document).bind('mousemove', current, moveIncrement);
|
| 119 |
+
},
|
| 120 |
+
moveIncrement = function (ev) {
|
| 121 |
+
ev.data.field.val(Math.max(0, Math.min(ev.data.max, parseInt(ev.data.val + ev.pageY - ev.data.y, 10))));
|
| 122 |
+
if (ev.data.preview) {
|
| 123 |
+
change.apply(ev.data.field.get(0), [true]);
|
| 124 |
+
}
|
| 125 |
+
return false;
|
| 126 |
+
},
|
| 127 |
+
upIncrement = function (ev) {
|
| 128 |
+
change.apply(ev.data.field.get(0), [true]);
|
| 129 |
+
ev.data.el.removeClass('colorpicker_slider').find('input').focus();
|
| 130 |
+
$(document).unbind('mouseup', upIncrement);
|
| 131 |
+
$(document).unbind('mousemove', moveIncrement);
|
| 132 |
+
return false;
|
| 133 |
+
},
|
| 134 |
+
downHue = function (ev) {
|
| 135 |
+
var current = {
|
| 136 |
+
cal: $(this).parent(),
|
| 137 |
+
y: $(this).offset().top
|
| 138 |
+
};
|
| 139 |
+
current.preview = current.cal.data('colorpicker').livePreview;
|
| 140 |
+
$(document).bind('mouseup', current, upHue);
|
| 141 |
+
$(document).bind('mousemove', current, moveHue);
|
| 142 |
+
},
|
| 143 |
+
moveHue = function (ev) {
|
| 144 |
+
change.apply(
|
| 145 |
+
ev.data.cal.data('colorpicker')
|
| 146 |
+
.fields
|
| 147 |
+
.eq(4)
|
| 148 |
+
.val(parseInt(360*(150 - Math.max(0,Math.min(150,(ev.pageY - ev.data.y))))/150, 10))
|
| 149 |
+
.get(0),
|
| 150 |
+
[ev.data.preview]
|
| 151 |
+
);
|
| 152 |
+
return false;
|
| 153 |
+
},
|
| 154 |
+
upHue = function (ev) {
|
| 155 |
+
fillRGBFields(ev.data.cal.data('colorpicker').color, ev.data.cal.get(0));
|
| 156 |
+
fillHexFields(ev.data.cal.data('colorpicker').color, ev.data.cal.get(0));
|
| 157 |
+
$(document).unbind('mouseup', upHue);
|
| 158 |
+
$(document).unbind('mousemove', moveHue);
|
| 159 |
+
return false;
|
| 160 |
+
},
|
| 161 |
+
downSelector = function (ev) {
|
| 162 |
+
var current = {
|
| 163 |
+
cal: $(this).parent(),
|
| 164 |
+
pos: $(this).offset()
|
| 165 |
+
};
|
| 166 |
+
current.preview = current.cal.data('colorpicker').livePreview;
|
| 167 |
+
$(document).bind('mouseup', current, upSelector);
|
| 168 |
+
$(document).bind('mousemove', current, moveSelector);
|
| 169 |
+
},
|
| 170 |
+
moveSelector = function (ev) {
|
| 171 |
+
change.apply(
|
| 172 |
+
ev.data.cal.data('colorpicker')
|
| 173 |
+
.fields
|
| 174 |
+
.eq(6)
|
| 175 |
+
.val(parseInt(100*(150 - Math.max(0,Math.min(150,(ev.pageY - ev.data.pos.top))))/150, 10))
|
| 176 |
+
.end()
|
| 177 |
+
.eq(5)
|
| 178 |
+
.val(parseInt(100*(Math.max(0,Math.min(150,(ev.pageX - ev.data.pos.left))))/150, 10))
|
| 179 |
+
.get(0),
|
| 180 |
+
[ev.data.preview]
|
| 181 |
+
);
|
| 182 |
+
return false;
|
| 183 |
+
},
|
| 184 |
+
upSelector = function (ev) {
|
| 185 |
+
fillRGBFields(ev.data.cal.data('colorpicker').color, ev.data.cal.get(0));
|
| 186 |
+
fillHexFields(ev.data.cal.data('colorpicker').color, ev.data.cal.get(0));
|
| 187 |
+
$(document).unbind('mouseup', upSelector);
|
| 188 |
+
$(document).unbind('mousemove', moveSelector);
|
| 189 |
+
return false;
|
| 190 |
+
},
|
| 191 |
+
enterSubmit = function (ev) {
|
| 192 |
+
$(this).addClass('colorpicker_focus');
|
| 193 |
+
},
|
| 194 |
+
leaveSubmit = function (ev) {
|
| 195 |
+
$(this).removeClass('colorpicker_focus');
|
| 196 |
+
},
|
| 197 |
+
clickSubmit = function (ev) {
|
| 198 |
+
var cal = $(this).parent();
|
| 199 |
+
var col = cal.data('colorpicker').color;
|
| 200 |
+
cal.data('colorpicker').origColor = col;
|
| 201 |
+
setCurrentColor(col, cal.get(0));
|
| 202 |
+
cal.data('colorpicker').onSubmit(col, HSBToHex(col), HSBToRGB(col), cal.data('colorpicker').el);
|
| 203 |
+
},
|
| 204 |
+
show = function (ev) {
|
| 205 |
+
var cal = $('#' + $(this).data('colorpickerId'));
|
| 206 |
+
cal.data('colorpicker').onBeforeShow.apply(this, [cal.get(0)]);
|
| 207 |
+
var pos = $(this).offset();
|
| 208 |
+
var viewPort = getViewport();
|
| 209 |
+
var top = pos.top + this.offsetHeight;
|
| 210 |
+
var left = pos.left;
|
| 211 |
+
if (top + 176 > viewPort.t + viewPort.h) {
|
| 212 |
+
top -= this.offsetHeight + 176;
|
| 213 |
+
}
|
| 214 |
+
if (left + 356 > viewPort.l + viewPort.w) {
|
| 215 |
+
left -= 356;
|
| 216 |
+
}
|
| 217 |
+
cal.css({left: left + 'px', top: top + 'px'});
|
| 218 |
+
if (cal.data('colorpicker').onShow.apply(this, [cal.get(0)]) != false) {
|
| 219 |
+
cal.show();
|
| 220 |
+
}
|
| 221 |
+
$(document).bind('mousedown', {cal: cal}, hide);
|
| 222 |
+
return false;
|
| 223 |
+
},
|
| 224 |
+
hide = function (ev) {
|
| 225 |
+
if (!isChildOf(ev.data.cal.get(0), ev.target, ev.data.cal.get(0))) {
|
| 226 |
+
if (ev.data.cal.data('colorpicker').onHide.apply(this, [ev.data.cal.get(0)]) != false) {
|
| 227 |
+
ev.data.cal.hide();
|
| 228 |
+
}
|
| 229 |
+
$(document).unbind('mousedown', hide);
|
| 230 |
+
}
|
| 231 |
+
},
|
| 232 |
+
isChildOf = function(parentEl, el, container) {
|
| 233 |
+
if (parentEl == el) {
|
| 234 |
+
return true;
|
| 235 |
+
}
|
| 236 |
+
if (parentEl.contains) {
|
| 237 |
+
return parentEl.contains(el);
|
| 238 |
+
}
|
| 239 |
+
if ( parentEl.compareDocumentPosition ) {
|
| 240 |
+
return !!(parentEl.compareDocumentPosition(el) & 16);
|
| 241 |
+
}
|
| 242 |
+
var prEl = el.parentNode;
|
| 243 |
+
while(prEl && prEl != container) {
|
| 244 |
+
if (prEl == parentEl)
|
| 245 |
+
return true;
|
| 246 |
+
prEl = prEl.parentNode;
|
| 247 |
+
}
|
| 248 |
+
return false;
|
| 249 |
+
},
|
| 250 |
+
getViewport = function () {
|
| 251 |
+
var m = document.compatMode == 'CSS1Compat';
|
| 252 |
+
return {
|
| 253 |
+
l : window.pageXOffset || (m ? document.documentElement.scrollLeft : document.body.scrollLeft),
|
| 254 |
+
t : window.pageYOffset || (m ? document.documentElement.scrollTop : document.body.scrollTop),
|
| 255 |
+
w : window.innerWidth || (m ? document.documentElement.clientWidth : document.body.clientWidth),
|
| 256 |
+
h : window.innerHeight || (m ? document.documentElement.clientHeight : document.body.clientHeight)
|
| 257 |
+
};
|
| 258 |
+
},
|
| 259 |
+
fixHSB = function (hsb) {
|
| 260 |
+
return {
|
| 261 |
+
h: Math.min(360, Math.max(0, hsb.h)),
|
| 262 |
+
s: Math.min(100, Math.max(0, hsb.s)),
|
| 263 |
+
b: Math.min(100, Math.max(0, hsb.b))
|
| 264 |
+
};
|
| 265 |
+
},
|
| 266 |
+
fixRGB = function (rgb) {
|
| 267 |
+
return {
|
| 268 |
+
r: Math.min(255, Math.max(0, rgb.r)),
|
| 269 |
+
g: Math.min(255, Math.max(0, rgb.g)),
|
| 270 |
+
b: Math.min(255, Math.max(0, rgb.b))
|
| 271 |
+
};
|
| 272 |
+
},
|
| 273 |
+
fixHex = function (hex) {
|
| 274 |
+
var len = 6 - hex.length;
|
| 275 |
+
if (len > 0) {
|
| 276 |
+
var o = [];
|
| 277 |
+
for (var i=0; i<len; i++) {
|
| 278 |
+
o.push('0');
|
| 279 |
+
}
|
| 280 |
+
o.push(hex);
|
| 281 |
+
hex = o.join('');
|
| 282 |
+
}
|
| 283 |
+
return hex;
|
| 284 |
+
},
|
| 285 |
+
HexToRGB = function (hex) {
|
| 286 |
+
var hex = parseInt(((hex.indexOf('#') > -1) ? hex.substring(1) : hex), 16);
|
| 287 |
+
return {r: hex >> 16, g: (hex & 0x00FF00) >> 8, b: (hex & 0x0000FF)};
|
| 288 |
+
},
|
| 289 |
+
HexToHSB = function (hex) {
|
| 290 |
+
return RGBToHSB(HexToRGB(hex));
|
| 291 |
+
},
|
| 292 |
+
RGBToHSB = function (rgb) {
|
| 293 |
+
var hsb = {
|
| 294 |
+
h: 0,
|
| 295 |
+
s: 0,
|
| 296 |
+
b: 0
|
| 297 |
+
};
|
| 298 |
+
var min = Math.min(rgb.r, rgb.g, rgb.b);
|
| 299 |
+
var max = Math.max(rgb.r, rgb.g, rgb.b);
|
| 300 |
+
var delta = max - min;
|
| 301 |
+
hsb.b = max;
|
| 302 |
+
if (max != 0) {
|
| 303 |
+
|
| 304 |
+
}
|
| 305 |
+
hsb.s = max != 0 ? 255 * delta / max : 0;
|
| 306 |
+
if (hsb.s != 0) {
|
| 307 |
+
if (rgb.r == max) {
|
| 308 |
+
hsb.h = (rgb.g - rgb.b) / delta;
|
| 309 |
+
} else if (rgb.g == max) {
|
| 310 |
+
hsb.h = 2 + (rgb.b - rgb.r) / delta;
|
| 311 |
+
} else {
|
| 312 |
+
hsb.h = 4 + (rgb.r - rgb.g) / delta;
|
| 313 |
+
}
|
| 314 |
+
} else {
|
| 315 |
+
hsb.h = -1;
|
| 316 |
+
}
|
| 317 |
+
hsb.h *= 60;
|
| 318 |
+
if (hsb.h < 0) {
|
| 319 |
+
hsb.h += 360;
|
| 320 |
+
}
|
| 321 |
+
hsb.s *= 100/255;
|
| 322 |
+
hsb.b *= 100/255;
|
| 323 |
+
return hsb;
|
| 324 |
+
},
|
| 325 |
+
HSBToRGB = function (hsb) {
|
| 326 |
+
var rgb = {};
|
| 327 |
+
var h = Math.round(hsb.h);
|
| 328 |
+
var s = Math.round(hsb.s*255/100);
|
| 329 |
+
var v = Math.round(hsb.b*255/100);
|
| 330 |
+
if(s == 0) {
|
| 331 |
+
rgb.r = rgb.g = rgb.b = v;
|
| 332 |
+
} else {
|
| 333 |
+
var t1 = v;
|
| 334 |
+
var t2 = (255-s)*v/255;
|
| 335 |
+
var t3 = (t1-t2)*(h%60)/60;
|
| 336 |
+
if(h==360) h = 0;
|
| 337 |
+
if(h<60) {rgb.r=t1; rgb.b=t2; rgb.g=t2+t3}
|
| 338 |
+
else if(h<120) {rgb.g=t1; rgb.b=t2; rgb.r=t1-t3}
|
| 339 |
+
else if(h<180) {rgb.g=t1; rgb.r=t2; rgb.b=t2+t3}
|
| 340 |
+
else if(h<240) {rgb.b=t1; rgb.r=t2; rgb.g=t1-t3}
|
| 341 |
+
else if(h<300) {rgb.b=t1; rgb.g=t2; rgb.r=t2+t3}
|
| 342 |
+
else if(h<360) {rgb.r=t1; rgb.g=t2; rgb.b=t1-t3}
|
| 343 |
+
else {rgb.r=0; rgb.g=0; rgb.b=0}
|
| 344 |
+
}
|
| 345 |
+
return {r:Math.round(rgb.r), g:Math.round(rgb.g), b:Math.round(rgb.b)};
|
| 346 |
+
},
|
| 347 |
+
RGBToHex = function (rgb) {
|
| 348 |
+
var hex = [
|
| 349 |
+
rgb.r.toString(16),
|
| 350 |
+
rgb.g.toString(16),
|
| 351 |
+
rgb.b.toString(16)
|
| 352 |
+
];
|
| 353 |
+
$.each(hex, function (nr, val) {
|
| 354 |
+
if (val.length == 1) {
|
| 355 |
+
hex[nr] = '0' + val;
|
| 356 |
+
}
|
| 357 |
+
});
|
| 358 |
+
return hex.join('');
|
| 359 |
+
},
|
| 360 |
+
HSBToHex = function (hsb) {
|
| 361 |
+
return RGBToHex(HSBToRGB(hsb));
|
| 362 |
+
},
|
| 363 |
+
restoreOriginal = function () {
|
| 364 |
+
var cal = $(this).parent();
|
| 365 |
+
var col = cal.data('colorpicker').origColor;
|
| 366 |
+
cal.data('colorpicker').color = col;
|
| 367 |
+
fillRGBFields(col, cal.get(0));
|
| 368 |
+
fillHexFields(col, cal.get(0));
|
| 369 |
+
fillHSBFields(col, cal.get(0));
|
| 370 |
+
setSelector(col, cal.get(0));
|
| 371 |
+
setHue(col, cal.get(0));
|
| 372 |
+
setNewColor(col, cal.get(0));
|
| 373 |
+
};
|
| 374 |
+
return {
|
| 375 |
+
init: function (opt) {
|
| 376 |
+
opt = $.extend({}, defaults, opt||{});
|
| 377 |
+
if (typeof opt.color == 'string') {
|
| 378 |
+
opt.color = HexToHSB(opt.color);
|
| 379 |
+
} else if (opt.color.r != undefined && opt.color.g != undefined && opt.color.b != undefined) {
|
| 380 |
+
opt.color = RGBToHSB(opt.color);
|
| 381 |
+
} else if (opt.color.h != undefined && opt.color.s != undefined && opt.color.b != undefined) {
|
| 382 |
+
opt.color = fixHSB(opt.color);
|
| 383 |
+
} else {
|
| 384 |
+
return this;
|
| 385 |
+
}
|
| 386 |
+
return this.each(function () {
|
| 387 |
+
if (!$(this).data('colorpickerId')) {
|
| 388 |
+
var options = $.extend({}, opt);
|
| 389 |
+
options.origColor = opt.color;
|
| 390 |
+
var id = 'collorpicker_' + parseInt(Math.random() * 1000);
|
| 391 |
+
$(this).data('colorpickerId', id);
|
| 392 |
+
var cal = $(tpl).attr('id', id);
|
| 393 |
+
if (options.flat) {
|
| 394 |
+
cal.appendTo(this).show();
|
| 395 |
+
} else {
|
| 396 |
+
cal.appendTo(document.body);
|
| 397 |
+
}
|
| 398 |
+
options.fields = cal
|
| 399 |
+
.find('input')
|
| 400 |
+
.bind('keyup', keyDown)
|
| 401 |
+
.bind('change', change)
|
| 402 |
+
.bind('blur', blur)
|
| 403 |
+
.bind('focus', focus);
|
| 404 |
+
cal
|
| 405 |
+
.find('span').bind('mousedown', downIncrement).end()
|
| 406 |
+
.find('>div.colorpicker_current_color').bind('click', restoreOriginal);
|
| 407 |
+
options.selector = cal.find('div.colorpicker_color').bind('mousedown', downSelector);
|
| 408 |
+
options.selectorIndic = options.selector.find('div div');
|
| 409 |
+
options.el = this;
|
| 410 |
+
options.hue = cal.find('div.colorpicker_hue div');
|
| 411 |
+
cal.find('div.colorpicker_hue').bind('mousedown', downHue);
|
| 412 |
+
options.newColor = cal.find('div.colorpicker_new_color');
|
| 413 |
+
options.currentColor = cal.find('div.colorpicker_current_color');
|
| 414 |
+
cal.data('colorpicker', options);
|
| 415 |
+
cal.find('div.colorpicker_submit')
|
| 416 |
+
.bind('mouseenter', enterSubmit)
|
| 417 |
+
.bind('mouseleave', leaveSubmit)
|
| 418 |
+
.bind('click', clickSubmit);
|
| 419 |
+
fillRGBFields(options.color, cal.get(0));
|
| 420 |
+
fillHSBFields(options.color, cal.get(0));
|
| 421 |
+
fillHexFields(options.color, cal.get(0));
|
| 422 |
+
setHue(options.color, cal.get(0));
|
| 423 |
+
setSelector(options.color, cal.get(0));
|
| 424 |
+
setCurrentColor(options.color, cal.get(0));
|
| 425 |
+
setNewColor(options.color, cal.get(0));
|
| 426 |
+
if (options.flat) {
|
| 427 |
+
cal.css({
|
| 428 |
+
position: 'relative',
|
| 429 |
+
display: 'block'
|
| 430 |
+
});
|
| 431 |
+
} else {
|
| 432 |
+
$(this).bind(options.eventName, show);
|
| 433 |
+
}
|
| 434 |
+
}
|
| 435 |
+
});
|
| 436 |
+
},
|
| 437 |
+
showPicker: function() {
|
| 438 |
+
return this.each( function () {
|
| 439 |
+
if ($(this).data('colorpickerId')) {
|
| 440 |
+
show.apply(this);
|
| 441 |
+
}
|
| 442 |
+
});
|
| 443 |
+
},
|
| 444 |
+
hidePicker: function() {
|
| 445 |
+
return this.each( function () {
|
| 446 |
+
if ($(this).data('colorpickerId')) {
|
| 447 |
+
$('#' + $(this).data('colorpickerId')).hide();
|
| 448 |
+
}
|
| 449 |
+
});
|
| 450 |
+
},
|
| 451 |
+
setColor: function(col) {
|
| 452 |
+
if (typeof col == 'string') {
|
| 453 |
+
col = HexToHSB(col);
|
| 454 |
+
} else if (col.r != undefined && col.g != undefined && col.b != undefined) {
|
| 455 |
+
col = RGBToHSB(col);
|
| 456 |
+
} else if (col.h != undefined && col.s != undefined && col.b != undefined) {
|
| 457 |
+
col = fixHSB(col);
|
| 458 |
+
} else {
|
| 459 |
+
return this;
|
| 460 |
+
}
|
| 461 |
+
return this.each(function(){
|
| 462 |
+
if ($(this).data('colorpickerId')) {
|
| 463 |
+
var cal = $('#' + $(this).data('colorpickerId'));
|
| 464 |
+
cal.data('colorpicker').color = col;
|
| 465 |
+
cal.data('colorpicker').origColor = col;
|
| 466 |
+
fillRGBFields(col, cal.get(0));
|
| 467 |
+
fillHSBFields(col, cal.get(0));
|
| 468 |
+
fillHexFields(col, cal.get(0));
|
| 469 |
+
setHue(col, cal.get(0));
|
| 470 |
+
setSelector(col, cal.get(0));
|
| 471 |
+
setCurrentColor(col, cal.get(0));
|
| 472 |
+
setNewColor(col, cal.get(0));
|
| 473 |
+
}
|
| 474 |
+
});
|
| 475 |
+
}
|
| 476 |
+
};
|
| 477 |
+
}();
|
| 478 |
+
$.fn.extend({
|
| 479 |
+
ColorPicker: ColorPicker.init,
|
| 480 |
+
ColorPickerHide: ColorPicker.hidePicker,
|
| 481 |
+
ColorPickerShow: ColorPicker.showPicker,
|
| 482 |
+
ColorPickerSetColor: ColorPicker.setColor
|
| 483 |
+
});
|
| 484 |
Â
})(jQuery)
|
js/custom-contact-forms-admin-ajax.js
CHANGED
|
@@ -1,255 +1,255 @@
|
|
| 1 |
-
|
| 2 |
-
function print_r(x, max, sep, l) {
|
| 3 |
-
|
| 4 |
-
l = l || 0;
|
| 5 |
-
max = max || 10;
|
| 6 |
-
sep = sep || ' ';
|
| 7 |
-
|
| 8 |
-
if (l > max) {
|
| 9 |
-
return "[WARNING: Too much recursion]\n";
|
| 10 |
-
}
|
| 11 |
-
|
| 12 |
-
var
|
| 13 |
-
i,
|
| 14 |
-
r = '',
|
| 15 |
-
t = typeof x,
|
| 16 |
-
tab = '';
|
| 17 |
-
|
| 18 |
-
if (x === null) {
|
| 19 |
-
r += "(null)\n";
|
| 20 |
-
} else if (t == 'object') {
|
| 21 |
-
|
| 22 |
-
l++;
|
| 23 |
-
|
| 24 |
-
for (i = 0; i < l; i++) {
|
| 25 |
-
tab += sep;
|
| 26 |
-
}
|
| 27 |
-
|
| 28 |
-
if (x && x.length) {
|
| 29 |
-
t = 'array';
|
| 30 |
-
}
|
| 31 |
-
|
| 32 |
-
r += '(' + t + ") :\n";
|
| 33 |
-
|
| 34 |
-
for (i in x) {
|
| 35 |
-
try {
|
| 36 |
-
r += tab + '<br />[' + i + '] : ' + print_r(x[i], max, sep, (l + 1));
|
| 37 |
-
} catch(e) {
|
| 38 |
-
return "[ERROR: " + e + "]\n";
|
| 39 |
-
}
|
| 40 |
-
}
|
| 41 |
-
|
| 42 |
-
} else {
|
| 43 |
-
|
| 44 |
-
if (t == 'string') {
|
| 45 |
-
if (x == '') {
|
| 46 |
-
x = '(empty)';
|
| 47 |
-
}
|
| 48 |
-
}
|
| 49 |
-
|
| 50 |
-
r += '(' + t + ') ' + x + "\n";
|
| 51 |
-
|
| 52 |
-
}
|
| 53 |
-
|
| 54 |
-
return r;
|
| 55 |
-
|
| 56 |
-
};
|
| 57 |
-
|
| 58 |
-
function getFormFieldValue(field_name, formData) {
|
| 59 |
-
for(var i = 0; i < formData.length; i++) {
|
| 60 |
-
if (formData[i].name == field_name) {
|
| 61 |
-
return formData[i].value;
|
| 62 |
-
}
|
| 63 |
-
}
|
| 64 |
-
return false;
|
| 65 |
-
};
|
| 66 |
-
|
| 67 |
-
/*function pageselectCallback(page_index, jq){
|
| 68 |
-
rows = $j('#form-submissions-hidden > tr')
|
| 69 |
-
items_per_page = 5;
|
| 70 |
-
max_elem = Math.min((page_index+1) * items_per_page, rows.length);
|
| 71 |
-
var new_content = '';
|
| 72 |
-
for(var i=page_index*items_per_page;i<max_elem;i++) {
|
| 73 |
-
if (rows.eq(i) != null) {
|
| 74 |
-
new_content += '<tr class="' + rows.eq(i).attr('class') + '">' + rows.eq(i).html() + '</tr>';
|
| 75 |
-
i += 1;
|
| 76 |
-
new_content += '<tr class="' + rows.eq(i).attr('class') + '">' + rows.eq(i).html() + '</tr>';
|
| 77 |
-
} else i += 1;
|
| 78 |
-
}
|
| 79 |
-
if (new_content != '' && new_content != null)
|
| 80 |
-
$j('#form-submissions-table tbody').empty().append(new_content);
|
| 81 |
-
$j('.submission-content').hide();
|
| 82 |
-
$j('.submission-content-expand-button').click(function() {
|
| 83 |
-
$j(this)
|
| 84 |
-
.parent()
|
| 85 |
-
.parent()
|
| 86 |
-
.parent()
|
| 87 |
-
.next()
|
| 88 |
-
.toggle();
|
| 89 |
-
});
|
| 90 |
-
return false;
|
| 91 |
-
}
|
| 92 |
-
|
| 93 |
-
function initPagination() {
|
| 94 |
-
// Create content inside pagination element
|
| 95 |
-
var num_entries = $j('#form-submissions-hidden > tr').length;
|
| 96 |
-
$j("#form-submissions-pagination").pagination(num_entries, {
|
| 97 |
-
callback: pageselectCallback,
|
| 98 |
-
items_per_page: 5 // Show only one item per page
|
| 99 |
-
});
|
| 100 |
-
}*/
|
| 101 |
-
|
| 102 |
-
$j.preloadImages(ccfAjax.plugin_dir + "/images/wpspin_light.gif"); // preload loading image
|
| 103 |
-
$j(document).ready(function() {
|
| 104 |
-
|
| 105 |
-
//initPagination();
|
| 106 |
-
$j('.ccf-edit-ajax').attr("action", ccfAjax.url);
|
| 107 |
-
|
| 108 |
-
var loading_img = null;
|
| 109 |
-
var form_dom = null;
|
| 110 |
-
$j('.ccf-edit-ajax').ajaxForm({
|
| 111 |
-
data: { action: 'ccf-ajax', nonce: ccfLang.nonce },
|
| 112 |
-
beforeSubmit: function(formData, jqForm, options) {
|
| 113 |
-
var action_type = getFormFieldValue('object_bulk_action', formData);
|
| 114 |
-
//var bulk_apply_button = getFormFieldValue('object_bulk_action', formData);
|
| 115 |
-
var attach_button = getFormFieldValue('buttons', formData);
|
| 116 |
-
var detach_button = getFormFieldValue('object_bulk_action', formData);
|
| 117 |
-
if (action_type == 0) return false;
|
| 118 |
-
bulk_button = jqForm.find("input[name=object_bulk_apply]");
|
| 119 |
-
form_dom = jqForm;
|
| 120 |
-
loading_img = jqForm.find(".loading-img").fadeIn();
|
| 121 |
-
return true;
|
| 122 |
-
},
|
| 123 |
-
success : function(responseText) {
|
| 124 |
-
if (responseText.objects) {
|
| 125 |
-
for (var i = 0; i < responseText.objects.length; i++) {
|
| 126 |
-
var this_object = responseText.objects[i];
|
| 127 |
-
if (responseText.object_bulk_action == 'delete') {
|
| 128 |
-
|
| 129 |
-
form_dom.find(".row-" + this_object.object_type + "-" + this_object.object_id).hide().remove();
|
| 130 |
-
if (this_object.object_type == "style") {
|
| 131 |
-
/* delete occurences of this option within style dropdowns. */
|
| 132 |
-
var style_inputs = $j(".form_style_input");
|
| 133 |
-
style_inputs.each(function() {
|
| 134 |
-
this_option = $j(this).find("option[value=" + this_object.object_id + "]");
|
| 135 |
-
if (this_option.attr("selected") == "selected")
|
| 136 |
-
$j(this).find("option[value=0]").attr("selected", "selected");
|
| 137 |
-
this_option.remove();
|
| 138 |
-
});
|
| 139 |
-
} else if (this_object.object_type == "field" || this_object.object_type == "field_option") {
|
| 140 |
-
if (this_object.object_type == "field")
|
| 141 |
-
var fields_options_input = $j("select.detach-field");
|
| 142 |
-
else
|
| 143 |
-
var fields_options_input = $j("select.detach-field-option");
|
| 144 |
-
fields_options_input.each(function () {
|
| 145 |
-
var this_obj = $j(this);
|
| 146 |
-
var this_option = this_obj.find("option[value=" + this_object.object_id + "]");
|
| 147 |
-
if (this_option.length >=1 && this_obj.find("option").length <= 1) {
|
| 148 |
-
$j("<option>")
|
| 149 |
-
.attr("value", "-1")
|
| 150 |
-
.text(ccfLang.nothing_attached)
|
| 151 |
-
.prependTo(this_obj);
|
| 152 |
-
}
|
| 153 |
-
this_option.remove();
|
| 154 |
-
});
|
| 155 |
-
if (this_object.object_type == "field")
|
| 156 |
-
fields_options_input = $j("select.attach-field option[value=" + this_object.object_id + "]");
|
| 157 |
-
else
|
| 158 |
-
fields_options_input = $j("select.attach-field-option option[value=" + this_object.object_id + "]");
|
| 159 |
-
|
| 160 |
-
fields_options_input.each(function () {
|
| 161 |
-
$j(this).remove();
|
| 162 |
-
});
|
| 163 |
-
}
|
| 164 |
-
} else if (responseText.object_bulk_action == 'edit') {
|
| 165 |
-
/* TODO: update field and field option slug dropdowns */
|
| 166 |
-
if (responseText.objects[i].object_type == "field" || responseText.objects[i].object_type == "field_option") {
|
| 167 |
-
|
| 168 |
-
}
|
| 169 |
-
}
|
| 170 |
-
}
|
| 171 |
-
}
|
| 172 |
-
},
|
| 173 |
-
error: function(XMLHttpRequest, textStatus, errorThrown) {
|
| 174 |
-
debug = fx.initDebugWindow();
|
| 175 |
-
$j("<div></div>").html(textStatus + " " + errorThrown).appendTo(debug);
|
| 176 |
-
//alert(textStatus + " " + errorThrown);
|
| 177 |
-
},
|
| 178 |
-
complete: function() {
|
| 179 |
-
//j("test").html(data).appendTo(debug);
|
| 180 |
-
loading_img.fadeOut();
|
| 181 |
-
}
|
| 182 |
-
});
|
| 183 |
-
|
| 184 |
-
//form_submissions = $j("#form-submissions-table tbody").clone();
|
| 185 |
-
//$j("#form-submissions-hidden").html(form_submissions.html());
|
| 186 |
-
|
| 187 |
-
$j("span.attach-lang").remove();
|
| 188 |
-
$j(".attach-check").each(function(){
|
| 189 |
-
var name = $j(this).attr('name');
|
| 190 |
-
var html = '<input class="attach-button" type="button" name="' + name + '" value="' + ccfLang.attach_button + '" />';
|
| 191 |
-
$j(this).after(html).remove(); // add new, then remove original input
|
| 192 |
-
});
|
| 193 |
-
$j(".attach-button").live("click", function() {
|
| 194 |
-
var object_type = $j(this).parents().find(".object-type").attr("value");
|
| 195 |
-
var attach_object_field = $j(this).parents().find(".attach-object:first");
|
| 196 |
-
var object_id = attach_object_field.attr("class").split(' ')[0].replace(/[^0-9]*([0-9]*)/, "$1");
|
| 197 |
-
var detach_object_field = $j(this).parents().find(".detach-object:first");
|
| 198 |
-
var attach_object_id = attach_object_field.attr("value");
|
| 199 |
-
var attach_object_slug = attach_object_field.find("option[value=" + attach_object_id + "]:eq(0)").first().text();
|
| 200 |
-
pattern = new RegExp('<option value="' + attach_object_id + '">', "i");
|
| 201 |
-
str = detach_object_field.html();
|
| 202 |
-
if (!str.match(pattern)) {
|
| 203 |
-
var save_box = fx.initSaveBox(ccfLang.attaching);
|
| 204 |
-
$j.ajax({
|
| 205 |
-
type: "POST",
|
| 206 |
-
url: ccfAjax.url,
|
| 207 |
-
data: "nonce=" + ccfLang.nonce + "&action=ccf-ajax&object_attach=1&attach_object_id=" + attach_object_id + "&object_id=" + object_id + "&object_type=" + object_type,
|
| 208 |
-
success: function(data) {
|
| 209 |
-
new_option = $j("<option></option>").attr("value", attach_object_id).text(attach_object_slug);
|
| 210 |
-
detach_object_field.append(new_option);
|
| 211 |
-
detach_object_field.find('option[value=-1]').remove();
|
| 212 |
-
|
| 213 |
-
},
|
| 214 |
-
error: function() { alert(ccfLang.error); },
|
| 215 |
-
complete: function() { $j(".save-box").fadeOut().remove(); }
|
| 216 |
-
});
|
| 217 |
-
}
|
| 218 |
-
});
|
| 219 |
-
|
| 220 |
-
$j("span.detach-lang").remove();
|
| 221 |
-
$j(".detach-check").each(function(){
|
| 222 |
-
var name = $j(this).attr('name');
|
| 223 |
-
var html = '<input class="detach-button" type="button" name="' + name + '" value="' + ccfLang.detach_button + '" />';
|
| 224 |
-
$j(this).after(html).remove(); // add new, then remove original input
|
| 225 |
-
});
|
| 226 |
-
$j(".detach-button").live("click", function() {
|
| 227 |
-
var object_type = $j(this).parents().find(".object-type").attr("value");
|
| 228 |
-
var detach_object_field = $j(this).parents().find(".detach-object:first");
|
| 229 |
-
var object_id = detach_object_field.attr("class").split(' ')[0].replace(/[^0-9]*([0-9]*)/, "$1");
|
| 230 |
-
var detach_object_id = detach_object_field.attr("value");
|
| 231 |
-
if (detach_object_id != "-1") {
|
| 232 |
-
var detach_object_slug = detach_object_field.find("option[value=" + detach_object_id + "]:eq(0)").first().text();
|
| 233 |
-
var save_box = fx.initSaveBox(ccfLang.detaching);
|
| 234 |
-
$j.ajax({
|
| 235 |
-
type: "POST",
|
| 236 |
-
url: ccfAjax.url,
|
| 237 |
-
data: "nonce=" + ccfLang.nonce + "&action=ccf-ajax&object_detach=1&detach_object_id=" + detach_object_id + "&object_id=" + object_id + "&object_type=" + object_type,
|
| 238 |
-
success: function(data) {
|
| 239 |
-
pattern = new RegExp('<option value="' + detach_object_id + '">.*?<\/option>', "i");
|
| 240 |
-
new_options = detach_object_field.html().replace(pattern, '');
|
| 241 |
-
var patt = /<\/option>/i;
|
| 242 |
-
if (!new_options.match(patt)) new_options = '<option value="-1">Nothing Attached!</option>';
|
| 243 |
-
detach_object_field.html(new_options);
|
| 244 |
-
},
|
| 245 |
-
error: function() { alert(ccfLang.error); },
|
| 246 |
-
/*beforeSubmit: function() {
|
| 247 |
-
debug = fx.initDebugWindow();
|
| 248 |
-
$j("<div></div>").html(textStatus + " " + errorThrown).appendTo(debug);
|
| 249 |
-
},*/
|
| 250 |
-
complete: function() { $j(".save-box").fadeOut().remove(); }
|
| 251 |
-
});
|
| 252 |
-
}
|
| 253 |
-
});
|
| 254 |
-
|
| 255 |
Â
});
|
| 1 |
+
|
| 2 |
+
function print_r(x, max, sep, l) {
|
| 3 |
+
|
| 4 |
+
l = l || 0;
|
| 5 |
+
max = max || 10;
|
| 6 |
+
sep = sep || ' ';
|
| 7 |
+
|
| 8 |
+
if (l > max) {
|
| 9 |
+
return "[WARNING: Too much recursion]\n";
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
var
|
| 13 |
+
i,
|
| 14 |
+
r = '',
|
| 15 |
+
t = typeof x,
|
| 16 |
+
tab = '';
|
| 17 |
+
|
| 18 |
+
if (x === null) {
|
| 19 |
+
r += "(null)\n";
|
| 20 |
+
} else if (t == 'object') {
|
| 21 |
+
|
| 22 |
+
l++;
|
| 23 |
+
|
| 24 |
+
for (i = 0; i < l; i++) {
|
| 25 |
+
tab += sep;
|
| 26 |
+
}
|
| 27 |
+
|
| 28 |
+
if (x && x.length) {
|
| 29 |
+
t = 'array';
|
| 30 |
+
}
|
| 31 |
+
|
| 32 |
+
r += '(' + t + ") :\n";
|
| 33 |
+
|
| 34 |
+
for (i in x) {
|
| 35 |
+
try {
|
| 36 |
+
r += tab + '<br />[' + i + '] : ' + print_r(x[i], max, sep, (l + 1));
|
| 37 |
+
} catch(e) {
|
| 38 |
+
return "[ERROR: " + e + "]\n";
|
| 39 |
+
}
|
| 40 |
+
}
|
| 41 |
+
|
| 42 |
+
} else {
|
| 43 |
+
|
| 44 |
+
if (t == 'string') {
|
| 45 |
+
if (x == '') {
|
| 46 |
+
x = '(empty)';
|
| 47 |
+
}
|
| 48 |
+
}
|
| 49 |
+
|
| 50 |
+
r += '(' + t + ') ' + x + "\n";
|
| 51 |
+
|
| 52 |
+
}
|
| 53 |
+
|
| 54 |
+
return r;
|
| 55 |
+
|
| 56 |
+
};
|
| 57 |
+
|
| 58 |
+
function getFormFieldValue(field_name, formData) {
|
| 59 |
+
for(var i = 0; i < formData.length; i++) {
|
| 60 |
+
if (formData[i].name == field_name) {
|
| 61 |
+
return formData[i].value;
|
| 62 |
+
}
|
| 63 |
+
}
|
| 64 |
+
return false;
|
| 65 |
+
};
|
| 66 |
+
|
| 67 |
+
/*function pageselectCallback(page_index, jq){
|
| 68 |
+
rows = $j('#form-submissions-hidden > tr')
|
| 69 |
+
items_per_page = 5;
|
| 70 |
+
max_elem = Math.min((page_index+1) * items_per_page, rows.length);
|
| 71 |
+
var new_content = '';
|
| 72 |
+
for(var i=page_index*items_per_page;i<max_elem;i++) {
|
| 73 |
+
if (rows.eq(i) != null) {
|
| 74 |
+
new_content += '<tr class="' + rows.eq(i).attr('class') + '">' + rows.eq(i).html() + '</tr>';
|
| 75 |
+
i += 1;
|
| 76 |
+
new_content += '<tr class="' + rows.eq(i).attr('class') + '">' + rows.eq(i).html() + '</tr>';
|
| 77 |
+
} else i += 1;
|
| 78 |
+
}
|
| 79 |
+
if (new_content != '' && new_content != null)
|
| 80 |
+
$j('#form-submissions-table tbody').empty().append(new_content);
|
| 81 |
+
$j('.submission-content').hide();
|
| 82 |
+
$j('.submission-content-expand-button').click(function() {
|
| 83 |
+
$j(this)
|
| 84 |
+
.parent()
|
| 85 |
+
.parent()
|
| 86 |
+
.parent()
|
| 87 |
+
.next()
|
| 88 |
+
.toggle();
|
| 89 |
+
});
|
| 90 |
+
return false;
|
| 91 |
+
}
|
| 92 |
+
|
| 93 |
+
function initPagination() {
|
| 94 |
+
// Create content inside pagination element
|
| 95 |
+
var num_entries = $j('#form-submissions-hidden > tr').length;
|
| 96 |
+
$j("#form-submissions-pagination").pagination(num_entries, {
|
| 97 |
+
callback: pageselectCallback,
|
| 98 |
+
items_per_page: 5 // Show only one item per page
|
| 99 |
+
});
|
| 100 |
+
}*/
|
| 101 |
+
|
| 102 |
+
$j.preloadImages(ccfAjax.plugin_dir + "/images/wpspin_light.gif"); // preload loading image
|
| 103 |
+
$j(document).ready(function() {
|
| 104 |
+
|
| 105 |
+
//initPagination();
|
| 106 |
+
$j('.ccf-edit-ajax').attr("action", ccfAjax.url);
|
| 107 |
+
|
| 108 |
+
var loading_img = null;
|
| 109 |
+
var form_dom = null;
|
| 110 |
+
$j('.ccf-edit-ajax').ajaxForm({
|
| 111 |
+
data: { action: 'ccf-ajax', nonce: ccfLang.nonce },
|
| 112 |
+
beforeSubmit: function(formData, jqForm, options) {
|
| 113 |
+
var action_type = getFormFieldValue('object_bulk_action', formData);
|
| 114 |
+
//var bulk_apply_button = getFormFieldValue('object_bulk_action', formData);
|
| 115 |
+
var attach_button = getFormFieldValue('buttons', formData);
|
| 116 |
+
var detach_button = getFormFieldValue('object_bulk_action', formData);
|
| 117 |
+
if (action_type == 0) return false;
|
| 118 |
+
bulk_button = jqForm.find("input[name=object_bulk_apply]");
|
| 119 |
+
form_dom = jqForm;
|
| 120 |
+
loading_img = jqForm.find(".loading-img").fadeIn();
|
| 121 |
+
return true;
|
| 122 |
+
},
|
| 123 |
+
success : function(responseText) {
|
| 124 |
+
if (responseText.objects) {
|
| 125 |
+
for (var i = 0; i < responseText.objects.length; i++) {
|
| 126 |
+
var this_object = responseText.objects[i];
|
| 127 |
+
if (responseText.object_bulk_action == 'delete') {
|
| 128 |
+
|
| 129 |
+
form_dom.find(".row-" + this_object.object_type + "-" + this_object.object_id).hide().remove();
|
| 130 |
+
if (this_object.object_type == "style") {
|
| 131 |
+
/* delete occurences of this option within style dropdowns. */
|
| 132 |
+
var style_inputs = $j(".form_style_input");
|
| 133 |
+
style_inputs.each(function() {
|
| 134 |
+
this_option = $j(this).find("option[value=" + this_object.object_id + "]");
|
| 135 |
+
if (this_option.attr("selected") == "selected")
|
| 136 |
+
$j(this).find("option[value=0]").attr("selected", "selected");
|
| 137 |
+
this_option.remove();
|
| 138 |
+
});
|
| 139 |
+
} else if (this_object.object_type == "field" || this_object.object_type == "field_option") {
|
| 140 |
+
if (this_object.object_type == "field")
|
| 141 |
+
var fields_options_input = $j("select.detach-field");
|
| 142 |
+
else
|
| 143 |
+
var fields_options_input = $j("select.detach-field-option");
|
| 144 |
+
fields_options_input.each(function () {
|
| 145 |
+
var this_obj = $j(this);
|
| 146 |
+
var this_option = this_obj.find("option[value=" + this_object.object_id + "]");
|
| 147 |
+
if (this_option.length >=1 && this_obj.find("option").length <= 1) {
|
| 148 |
+
$j("<option>")
|
| 149 |
+
.attr("value", "-1")
|
| 150 |
+
.text(ccfLang.nothing_attached)
|
| 151 |
+
.prependTo(this_obj);
|
| 152 |
+
}
|
| 153 |
+
this_option.remove();
|
| 154 |
+
});
|
| 155 |
+
if (this_object.object_type == "field")
|
| 156 |
+
fields_options_input = $j("select.attach-field option[value=" + this_object.object_id + "]");
|
| 157 |
+
else
|
| 158 |
+
fields_options_input = $j("select.attach-field-option option[value=" + this_object.object_id + "]");
|
| 159 |
+
|
| 160 |
+
fields_options_input.each(function () {
|
| 161 |
+
$j(this).remove();
|
| 162 |
+
});
|
| 163 |
+
}
|
| 164 |
+
} else if (responseText.object_bulk_action == 'edit') {
|
| 165 |
+
/* TODO: update field and field option slug dropdowns */
|
| 166 |
+
if (responseText.objects[i].object_type == "field" || responseText.objects[i].object_type == "field_option") {
|
| 167 |
+
|
| 168 |
+
}
|
| 169 |
+
}
|
| 170 |
+
}
|
| 171 |
+
}
|
| 172 |
+
},
|
| 173 |
+
error: function(XMLHttpRequest, textStatus, errorThrown) {
|
| 174 |
+
debug = fx.initDebugWindow();
|
| 175 |
+
$j("<div></div>").html(textStatus + " " + errorThrown).appendTo(debug);
|
| 176 |
+
//alert(textStatus + " " + errorThrown);
|
| 177 |
+
},
|
| 178 |
+
complete: function() {
|
| 179 |
+
//j("test").html(data).appendTo(debug);
|
| 180 |
+
loading_img.fadeOut();
|
| 181 |
+
}
|
| 182 |
+
});
|
| 183 |
+
|
| 184 |
+
//form_submissions = $j("#form-submissions-table tbody").clone();
|
| 185 |
+
//$j("#form-submissions-hidden").html(form_submissions.html());
|
| 186 |
+
|
| 187 |
+
$j("span.attach-lang").remove();
|
| 188 |
+
$j(".attach-check").each(function(){
|
| 189 |
+
var name = $j(this).attr('name');
|
| 190 |
+
var html = '<input class="attach-button" type="button" name="' + name + '" value="' + ccfLang.attach_button + '" />';
|
| 191 |
+
$j(this).after(html).remove(); // add new, then remove original input
|
| 192 |
+
});
|
| 193 |
+
$j(".attach-button").live("click", function() {
|
| 194 |
+
var object_type = $j(this).parents().find(".object-type").attr("value");
|
| 195 |
+
var attach_object_field = $j(this).parents().find(".attach-object:first");
|
| 196 |
+
var object_id = attach_object_field.attr("class").split(' ')[0].replace(/[^0-9]*([0-9]*)/, "$1");
|
| 197 |
+
var detach_object_field = $j(this).parents().find(".detach-object:first");
|
| 198 |
+
var attach_object_id = attach_object_field.attr("value");
|
| 199 |
+
var attach_object_slug = attach_object_field.find("option[value=" + attach_object_id + "]:eq(0)").first().text();
|
| 200 |
+
pattern = new RegExp('<option value="' + attach_object_id + '">', "i");
|
| 201 |
+
str = detach_object_field.html();
|
| 202 |
+
if (!str.match(pattern)) {
|
| 203 |
+
var save_box = fx.initSaveBox(ccfLang.attaching);
|
| 204 |
+
$j.ajax({
|
| 205 |
+
type: "POST",
|
| 206 |
+
url: ccfAjax.url,
|
| 207 |
+
data: "nonce=" + ccfLang.nonce + "&action=ccf-ajax&object_attach=1&attach_object_id=" + attach_object_id + "&object_id=" + object_id + "&object_type=" + object_type,
|
| 208 |
+
success: function(data) {
|
| 209 |
+
new_option = $j("<option></option>").attr("value", attach_object_id).text(attach_object_slug);
|
| 210 |
+
detach_object_field.append(new_option);
|
| 211 |
+
detach_object_field.find('option[value=-1]').remove();
|
| 212 |
+
|
| 213 |
+
},
|
| 214 |
+
error: function() { alert(ccfLang.error); },
|
| 215 |
+
complete: function() { $j(".save-box").fadeOut().remove(); }
|
| 216 |
+
});
|
| 217 |
+
}
|
| 218 |
+
});
|
| 219 |
+
|
| 220 |
+
$j("span.detach-lang").remove();
|
| 221 |
+
$j(".detach-check").each(function(){
|
| 222 |
+
var name = $j(this).attr('name');
|
| 223 |
+
var html = '<input class="detach-button" type="button" name="' + name + '" value="' + ccfLang.detach_button + '" />';
|
| 224 |
+
$j(this).after(html).remove(); // add new, then remove original input
|
| 225 |
+
});
|
| 226 |
+
$j(".detach-button").live("click", function() {
|
| 227 |
+
var object_type = $j(this).parents().find(".object-type").attr("value");
|
| 228 |
+
var detach_object_field = $j(this).parents().find(".detach-object:first");
|
| 229 |
+
var object_id = detach_object_field.attr("class").split(' ')[0].replace(/[^0-9]*([0-9]*)/, "$1");
|
| 230 |
+
var detach_object_id = detach_object_field.attr("value");
|
| 231 |
+
if (detach_object_id != "-1") {
|
| 232 |
+
var detach_object_slug = detach_object_field.find("option[value=" + detach_object_id + "]:eq(0)").first().text();
|
| 233 |
+
var save_box = fx.initSaveBox(ccfLang.detaching);
|
| 234 |
+
$j.ajax({
|
| 235 |
+
type: "POST",
|
| 236 |
+
url: ccfAjax.url,
|
| 237 |
+
data: "nonce=" + ccfLang.nonce + "&action=ccf-ajax&object_detach=1&detach_object_id=" + detach_object_id + "&object_id=" + object_id + "&object_type=" + object_type,
|
| 238 |
+
success: function(data) {
|
| 239 |
+
pattern = new RegExp('<option value="' + detach_object_id + '">.*?<\/option>', "i");
|
| 240 |
+
new_options = detach_object_field.html().replace(pattern, '');
|
| 241 |
+
var patt = /<\/option>/i;
|
| 242 |
+
if (!new_options.match(patt)) new_options = '<option value="-1">Nothing Attached!</option>';
|
| 243 |
+
detach_object_field.html(new_options);
|
| 244 |
+
},
|
| 245 |
+
error: function() { alert(ccfLang.error); },
|
| 246 |
+
/*beforeSubmit: function() {
|
| 247 |
+
debug = fx.initDebugWindow();
|
| 248 |
+
$j("<div></div>").html(textStatus + " " + errorThrown).appendTo(debug);
|
| 249 |
+
},*/
|
| 250 |
+
complete: function() { $j(".save-box").fadeOut().remove(); }
|
| 251 |
+
});
|
| 252 |
+
}
|
| 253 |
+
});
|
| 254 |
+
|
| 255 |
Â
});
|
js/custom-contact-forms-admin-inc.js
CHANGED
|
@@ -1,47 +1,47 @@
|
|
| 1 |
-
$j = jQuery.noConflict();
|
| 2 |
-
|
| 3 |
-
(function($j) {
|
| 4 |
-
var cache = [];
|
| 5 |
-
// Arguments are image paths relative to the current page.
|
| 6 |
-
$j.preloadImages = function() {
|
| 7 |
-
var args_len = arguments.length;
|
| 8 |
-
for (var i = args_len; i--;) {
|
| 9 |
-
var cacheImage = document.createElement('img');
|
| 10 |
-
cacheImage.src = arguments[i];
|
| 11 |
-
cache.push(cacheImage);
|
| 12 |
-
}
|
| 13 |
-
}
|
| 14 |
-
})(jQuery)
|
| 15 |
-
|
| 16 |
-
var fx = {
|
| 17 |
-
"initDebugWindow" : function() {
|
| 18 |
-
if ($j(".debug-window").length == 0) {
|
| 19 |
-
debug = $j("<div>").addClass("debug-window").appendTo("body");
|
| 20 |
-
debug.click(function() { debug.remove(); });
|
| 21 |
-
return debug;
|
| 22 |
-
} else {
|
| 23 |
-
return $j(".debug-window");
|
| 24 |
-
}
|
| 25 |
-
},
|
| 26 |
-
|
| 27 |
-
"initSaveBox" : function(text) {
|
| 28 |
-
if ($j(".save-box").length == 0) {
|
| 29 |
-
box = $j("<div>").addClass("save-box").appendTo("body");
|
| 30 |
-
$j("<a>")
|
| 31 |
-
.attr("href", "#")
|
| 32 |
-
.addClass("save-box-close-btn")
|
| 33 |
-
.html("×")
|
| 34 |
-
.click(function(event) { event.preventDefault(); $j(".save-box").fadeOut("slow"); })
|
| 35 |
-
.appendTo(box);
|
| 36 |
-
$j("<p>").html(text + ' <img src="' + ccfAjax.plugin_dir + '/images/wpspin_light.gif" />').appendTo(".save-box");
|
| 37 |
-
return box;
|
| 38 |
-
} else {
|
| 39 |
-
return $j(".save-box");
|
| 40 |
-
}
|
| 41 |
-
},
|
| 42 |
-
|
| 43 |
-
"boxOut": function(event) {
|
| 44 |
-
if (event != undefined) event.preventDefault();
|
| 45 |
-
$j(".modal-window").fadeOut("slow", function() { $j(this).remove(); });
|
| 46 |
-
}
|
| 47 |
Â
};
|
| 1 |
+
$j = jQuery.noConflict();
|
| 2 |
+
|
| 3 |
+
(function($j) {
|
| 4 |
+
var cache = [];
|
| 5 |
+
// Arguments are image paths relative to the current page.
|
| 6 |
+
$j.preloadImages = function() {
|
| 7 |
+
var args_len = arguments.length;
|
| 8 |
+
for (var i = args_len; i--;) {
|
| 9 |
+
var cacheImage = document.createElement('img');
|
| 10 |
+
cacheImage.src = arguments[i];
|
| 11 |
+
cache.push(cacheImage);
|
| 12 |
+
}
|
| 13 |
+
}
|
| 14 |
+
})(jQuery)
|
| 15 |
+
|
| 16 |
+
var fx = {
|
| 17 |
+
"initDebugWindow" : function() {
|
| 18 |
+
if ($j(".debug-window").length == 0) {
|
| 19 |
+
debug = $j("<div>").addClass("debug-window").appendTo("body");
|
| 20 |
+
debug.click(function() { debug.remove(); });
|
| 21 |
+
return debug;
|
| 22 |
+
} else {
|
| 23 |
+
return $j(".debug-window");
|
| 24 |
+
}
|
| 25 |
+
},
|
| 26 |
+
|
| 27 |
+
"initSaveBox" : function(text) {
|
| 28 |
+
if ($j(".save-box").length == 0) {
|
| 29 |
+
box = $j("<div>").addClass("save-box").appendTo("body");
|
| 30 |
+
$j("<a>")
|
| 31 |
+
.attr("href", "#")
|
| 32 |
+
.addClass("save-box-close-btn")
|
| 33 |
+
.html("×")
|
| 34 |
+
.click(function(event) { event.preventDefault(); $j(".save-box").fadeOut("slow"); })
|
| 35 |
+
.appendTo(box);
|
| 36 |
+
$j("<p>").html(text + ' <img src="' + ccfAjax.plugin_dir + '/images/wpspin_light.gif" />').appendTo(".save-box");
|
| 37 |
+
return box;
|
| 38 |
+
} else {
|
| 39 |
+
return $j(".save-box");
|
| 40 |
+
}
|
| 41 |
+
},
|
| 42 |
+
|
| 43 |
+
"boxOut": function(event) {
|
| 44 |
+
if (event != undefined) event.preventDefault();
|
| 45 |
+
$j(".modal-window").fadeOut("slow", function() { $j(this).remove(); });
|
| 46 |
+
}
|
| 47 |
Â
};
|
js/custom-contact-forms-admin.js
CHANGED
|
@@ -1,84 +1,99 @@
|
|
| 1 |
-
$j(document).ready(function(){
|
| 2 |
-
|
| 3 |
-
$j('.checkall').live("click", function() {
|
| 4 |
-
var checked_status = this.checked;
|
| 5 |
-
$j(this).parents("form").find("input.object-check ,input.checkall").each(function() {
|
| 6 |
-
if ($j(this).attr("type") == "checkbox")
|
| 7 |
-
this.checked = checked_status;
|
| 8 |
-
});
|
| 9 |
-
});
|
| 10 |
-
|
| 11 |
-
$j('.form-options-expand').prepend('<input type="button" class="form-options-expand-link" value="' + ccfLang.more_options + '" />');
|
| 12 |
-
$j('.form-options-expand-link').click(function() {
|
| 13 |
-
$j(this)
|
| 14 |
-
.parent()
|
| 15 |
-
.parent()
|
| 16 |
-
.parent()
|
| 17 |
-
.next()
|
| 18 |
-
.find(".form-extra-options:first")
|
| 19 |
-
.toggle();
|
| 20 |
-
});
|
| 21 |
-
$j('.form-extra-options').hide();
|
| 22 |
-
|
| 23 |
-
$j('.submission-content').hide();
|
| 24 |
-
$j('.submission-content-expand').prepend('<input type="button" class="submission-content-expand-button" value="' + ccfLang.expand + '" />');
|
| 25 |
-
$j('.submission-content-expand-button').click(function() {
|
| 26 |
-
$j(this)
|
| 27 |
-
.parent()
|
| 28 |
-
.parent()
|
| 29 |
-
.parent()
|
| 30 |
-
.next()
|
| 31 |
-
.toggle();
|
| 32 |
-
});
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
$j('.fixed-fields-options-expand').prepend('<input type="button" class="fixed-fields-options-expand-link" value="' + ccfLang.more_options + '" />');
|
| 36 |
-
$j('.fixed-fields-options-expand-link').click(function() {
|
| 37 |
-
$j(this)
|
| 38 |
-
.parent()
|
| 39 |
-
.parent()
|
| 40 |
-
.parent()
|
| 41 |
-
.next()
|
| 42 |
-
.find(".fixed-fields-extra-options:first")
|
| 43 |
-
.toggle();
|
| 44 |
-
});
|
| 45 |
-
$j('.fixed-fields-extra-options').hide();
|
| 46 |
-
|
| 47 |
-
$j('.fields-options-expand').prepend('<input type="button" class="fields-options-expand-link" value="' + ccfLang.more_options + '" />');
|
| 48 |
-
$j('.fields-options-expand-link').click(function() {
|
| 49 |
-
$j(this)
|
| 50 |
-
.parent()
|
| 51 |
-
.parent()
|
| 52 |
-
.parent()
|
| 53 |
-
.next()
|
| 54 |
-
.find(".fields-extra-options:first")
|
| 55 |
-
.toggle();
|
| 56 |
-
});
|
| 57 |
-
$j('.fields-extra-options').hide();
|
| 58 |
-
|
| 59 |
-
$j("#ccf-usage-popover").dialog({
|
| 60 |
-
height: 420,
|
| 61 |
-
width:600,
|
| 62 |
-
modal: true,
|
| 63 |
-
autoOpen: false
|
| 64 |
-
});
|
| 65 |
-
|
| 66 |
-
$j(".usage-popover-button").click(function() { $j("#ccf-usage-popover").dialog('open'); });
|
| 67 |
-
|
| 68 |
-
$j("#ccf-quick-start-popover").dialog({
|
| 69 |
-
height: 420,
|
| 70 |
-
width:600,
|
| 71 |
-
modal: true,
|
| 72 |
-
autoOpen: false
|
| 73 |
-
});
|
| 74 |
-
|
| 75 |
-
$j(".quick-start-button").click(function() { $j("#ccf-quick-start-popover").dialog('open'); });
|
| 76 |
-
|
| 77 |
-
$j("a[title].toollink").tooltip({
|
| 78 |
-
position: "bottom left",
|
| 79 |
-
offset: [-2, 10],
|
| 80 |
-
effect: "fade",
|
| 81 |
-
tipClass: 'ccf-tooltip',
|
| 82 |
-
opacity: 1.0
|
| 83 |
-
});
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
| 84 |
Â
});
|
| 1 |
+
$j(document).ready(function(){
|
| 2 |
+
|
| 3 |
+
$j('.checkall').live("click", function() {
|
| 4 |
+
var checked_status = this.checked;
|
| 5 |
+
$j(this).parents("form").find("input.object-check ,input.checkall").each(function() {
|
| 6 |
+
if ($j(this).attr("type") == "checkbox")
|
| 7 |
+
this.checked = checked_status;
|
| 8 |
+
});
|
| 9 |
+
});
|
| 10 |
+
|
| 11 |
+
$j('.form-options-expand').prepend('<input type="button" class="form-options-expand-link" value="' + ccfLang.more_options + '" />');
|
| 12 |
+
$j('.form-options-expand-link').click(function() {
|
| 13 |
+
$j(this)
|
| 14 |
+
.parent()
|
| 15 |
+
.parent()
|
| 16 |
+
.parent()
|
| 17 |
+
.next()
|
| 18 |
+
.find(".form-extra-options:first")
|
| 19 |
+
.toggle();
|
| 20 |
+
});
|
| 21 |
+
$j('.form-extra-options').hide();
|
| 22 |
+
|
| 23 |
+
$j('.submission-content').hide();
|
| 24 |
+
$j('.submission-content-expand').prepend('<input type="button" class="submission-content-expand-button" value="' + ccfLang.expand + '" />');
|
| 25 |
+
$j('.submission-content-expand-button').click(function() {
|
| 26 |
+
$j(this)
|
| 27 |
+
.parent()
|
| 28 |
+
.parent()
|
| 29 |
+
.parent()
|
| 30 |
+
.next()
|
| 31 |
+
.toggle();
|
| 32 |
+
});
|
| 33 |
+
|
| 34 |
+
|
| 35 |
+
$j('.fixed-fields-options-expand').prepend('<input type="button" class="fixed-fields-options-expand-link" value="' + ccfLang.more_options + '" />');
|
| 36 |
+
$j('.fixed-fields-options-expand-link').click(function() {
|
| 37 |
+
$j(this)
|
| 38 |
+
.parent()
|
| 39 |
+
.parent()
|
| 40 |
+
.parent()
|
| 41 |
+
.next()
|
| 42 |
+
.find(".fixed-fields-extra-options:first")
|
| 43 |
+
.toggle();
|
| 44 |
+
});
|
| 45 |
+
$j('.fixed-fields-extra-options').hide();
|
| 46 |
+
|
| 47 |
+
$j('.fields-options-expand').prepend('<input type="button" class="fields-options-expand-link" value="' + ccfLang.more_options + '" />');
|
| 48 |
+
$j('.fields-options-expand-link').click(function() {
|
| 49 |
+
$j(this)
|
| 50 |
+
.parent()
|
| 51 |
+
.parent()
|
| 52 |
+
.parent()
|
| 53 |
+
.next()
|
| 54 |
+
.find(".fields-extra-options:first")
|
| 55 |
+
.toggle();
|
| 56 |
+
});
|
| 57 |
+
$j('.fields-extra-options').hide();
|
| 58 |
+
|
| 59 |
+
$j("#ccf-usage-popover").dialog({
|
| 60 |
+
height: 420,
|
| 61 |
+
width:600,
|
| 62 |
+
modal: true,
|
| 63 |
+
autoOpen: false
|
| 64 |
+
});
|
| 65 |
+
|
| 66 |
+
$j(".usage-popover-button").click(function() { $j("#ccf-usage-popover").dialog('open'); });
|
| 67 |
+
|
| 68 |
+
$j("#ccf-quick-start-popover").dialog({
|
| 69 |
+
height: 420,
|
| 70 |
+
width:600,
|
| 71 |
+
modal: true,
|
| 72 |
+
autoOpen: false
|
| 73 |
+
});
|
| 74 |
+
|
| 75 |
+
$j(".quick-start-button").click(function() { $j("#ccf-quick-start-popover").dialog('open'); });
|
| 76 |
+
|
| 77 |
+
$j("a[title].toollink").tooltip({
|
| 78 |
+
position: "bottom left",
|
| 79 |
+
offset: [-2, 10],
|
| 80 |
+
effect: "fade",
|
| 81 |
+
tipClass: 'ccf-tooltip',
|
| 82 |
+
opacity: 1.0
|
| 83 |
+
});
|
| 84 |
+
|
| 85 |
+
|
| 86 |
+
$j("#customcontactforms-admin #create-fields .field-type-selector").change(function () {
|
| 87 |
+
$j("#customcontactforms-admin #create-fields .field-type-selector option:selected").each(function () {
|
| 88 |
+
if ($j(this).text() == "File") {
|
| 89 |
+
$j("#customcontactforms-admin #create-fields .file-fields").fadeIn("slow");
|
| 90 |
+
} else {
|
| 91 |
+
$j("#customcontactforms-admin #create-fields .file-fields").hide();
|
| 92 |
+
}
|
| 93 |
+
});
|
| 94 |
+
}).trigger('change');
|
| 95 |
+
|
| 96 |
+
var $tabs = $j( "#customcontactforms-admin #ccf-tabs" ).tabs();
|
| 97 |
+
if (ccfLang.selected_tab != 0) $tabs.tabs('select', '#' + ccfLang.selected_tab);
|
| 98 |
+
|
| 99 |
Â
});
|
js/custom-contact-forms-dashboard.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
| 1 |
-
/* Custom Contact Forms Dashboard Javascript */
|
| 2 |
-
|
| 3 |
-
$j = jQuery.noConflict();
|
| 4 |
-
|
| 5 |
-
$j(document).ready(function() {
|
| 6 |
-
|
| 7 |
-
$j(".ccf-view-submission").each(function() {
|
| 8 |
-
var submission_window = $j(this).next();
|
| 9 |
-
submission_window.dialog({
|
| 10 |
-
height: 420,
|
| 11 |
-
width:600,
|
| 12 |
-
modal: true,
|
| 13 |
-
autoOpen: false
|
| 14 |
-
});
|
| 15 |
-
$j(this).click(function() { submission_window.dialog('open'); });
|
| 16 |
-
});
|
| 17 |
Â
});
|
| 1 |
+
/* Custom Contact Forms Dashboard Javascript */
|
| 2 |
+
|
| 3 |
+
$j = jQuery.noConflict();
|
| 4 |
+
|
| 5 |
+
$j(document).ready(function() {
|
| 6 |
+
|
| 7 |
+
$j(".ccf-view-submission").each(function() {
|
| 8 |
+
var submission_window = $j(this).next();
|
| 9 |
+
submission_window.dialog({
|
| 10 |
+
height: 420,
|
| 11 |
+
width:600,
|
| 12 |
+
modal: true,
|
| 13 |
+
autoOpen: false
|
| 14 |
+
});
|
| 15 |
+
$j(this).click(function() { submission_window.dialog('open'); });
|
| 16 |
+
});
|
| 17 |
Â
});
|
js/custom-contact-forms-datepicker.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
| 1 |
-
// JavaScript Document
|
| 2 |
-
$m = jQuery.noConflict();
|
| 3 |
-
$m(document).ready(function(){
|
| 4 |
-
$m(".ccf-datepicker").datepicker();
|
| 5 |
Â
});
|
| 1 |
+
// JavaScript Document
|
| 2 |
+
$m = jQuery.noConflict();
|
| 3 |
+
$m(document).ready(function(){
|
| 4 |
+
$m(".ccf-datepicker").datepicker();
|
| 5 |
Â
});
|
js/eye.js
CHANGED
|
@@ -1,34 +1,34 @@
|
|
| 1 |
-
/**
|
| 2 |
-
*
|
| 3 |
-
* Zoomimage
|
| 4 |
-
* Author: Stefan Petre www.eyecon.ro
|
| 5 |
-
*
|
| 6 |
-
*/
|
| 7 |
-
(function($){
|
| 8 |
-
var EYE = window.EYE = function() {
|
| 9 |
-
var _registered = {
|
| 10 |
-
init: []
|
| 11 |
-
};
|
| 12 |
-
return {
|
| 13 |
-
init: function() {
|
| 14 |
-
$.each(_registered.init, function(nr, fn){
|
| 15 |
-
fn.call();
|
| 16 |
-
});
|
| 17 |
-
},
|
| 18 |
-
extend: function(prop) {
|
| 19 |
-
for (var i in prop) {
|
| 20 |
-
if (prop[i] != undefined) {
|
| 21 |
-
this[i] = prop[i];
|
| 22 |
-
}
|
| 23 |
-
}
|
| 24 |
-
},
|
| 25 |
-
register: function(fn, type) {
|
| 26 |
-
if (!_registered[type]) {
|
| 27 |
-
_registered[type] = [];
|
| 28 |
-
}
|
| 29 |
-
_registered[type].push(fn);
|
| 30 |
-
}
|
| 31 |
-
};
|
| 32 |
-
}();
|
| 33 |
-
$(EYE.init);
|
| 34 |
-
})(jQuery);
|
| 1 |
+
/**
|
| 2 |
+
*
|
| 3 |
+
* Zoomimage
|
| 4 |
+
* Author: Stefan Petre www.eyecon.ro
|
| 5 |
+
*
|
| 6 |
+
*/
|
| 7 |
+
(function($){
|
| 8 |
+
var EYE = window.EYE = function() {
|
| 9 |
+
var _registered = {
|
| 10 |
+
init: []
|
| 11 |
+
};
|
| 12 |
+
return {
|
| 13 |
+
init: function() {
|
| 14 |
+
$.each(_registered.init, function(nr, fn){
|
| 15 |
+
fn.call();
|
| 16 |
+
});
|
| 17 |
+
},
|
| 18 |
+
extend: function(prop) {
|
| 19 |
+
for (var i in prop) {
|
| 20 |
+
if (prop[i] != undefined) {
|
| 21 |
+
this[i] = prop[i];
|
| 22 |
+
}
|
| 23 |
+
}
|
| 24 |
+
},
|
| 25 |
+
register: function(fn, type) {
|
| 26 |
+
if (!_registered[type]) {
|
| 27 |
+
_registered[type] = [];
|
| 28 |
+
}
|
| 29 |
+
_registered[type].push(fn);
|
| 30 |
+
}
|
| 31 |
+
};
|
| 32 |
+
}();
|
| 33 |
+
$(EYE.init);
|
| 34 |
+
})(jQuery);
|
js/jquery-ui-1.8.4.custom.js
CHANGED
|
@@ -1,1578 +1,1578 @@
|
|
| 1 |
-
/*!
|
| 2 |
-
* jQuery UI 1.8.4
|
| 3 |
-
*
|
| 4 |
-
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 5 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 6 |
-
* http://jquery.org/license
|
| 7 |
-
*
|
| 8 |
-
* http://docs.jquery.com/UI
|
| 9 |
-
*/
|
| 10 |
-
(function( $, undefined ) {
|
| 11 |
-
|
| 12 |
-
// prevent duplicate loading
|
| 13 |
-
// this is only a problem because we proxy existing functions
|
| 14 |
-
// and we don't want to double proxy them
|
| 15 |
-
$.ui = $.ui || {};
|
| 16 |
-
if ( $.ui.version ) {
|
| 17 |
-
return;
|
| 18 |
-
}
|
| 19 |
-
|
| 20 |
-
//Helper functions and ui object
|
| 21 |
-
$.extend( $.ui, {
|
| 22 |
-
version: "1.8.4",
|
| 23 |
-
|
| 24 |
-
// $.ui.plugin is deprecated. Use the proxy pattern instead.
|
| 25 |
-
plugin: {
|
| 26 |
-
add: function( module, option, set ) {
|
| 27 |
-
var proto = $.ui[ module ].prototype;
|
| 28 |
-
for ( var i in set ) {
|
| 29 |
-
proto.plugins[ i ] = proto.plugins[ i ] || [];
|
| 30 |
-
proto.plugins[ i ].push( [ option, set[ i ] ] );
|
| 31 |
-
}
|
| 32 |
-
},
|
| 33 |
-
call: function( instance, name, args ) {
|
| 34 |
-
var set = instance.plugins[ name ];
|
| 35 |
-
if ( !set || !instance.element[ 0 ].parentNode ) {
|
| 36 |
-
return;
|
| 37 |
-
}
|
| 38 |
-
|
| 39 |
-
for ( var i = 0; i < set.length; i++ ) {
|
| 40 |
-
if ( instance.options[ set[ i ][ 0 ] ] ) {
|
| 41 |
-
set[ i ][ 1 ].apply( instance.element, args );
|
| 42 |
-
}
|
| 43 |
-
}
|
| 44 |
-
}
|
| 45 |
-
},
|
| 46 |
-
|
| 47 |
-
contains: function( a, b ) {
|
| 48 |
-
return document.compareDocumentPosition ?
|
| 49 |
-
a.compareDocumentPosition( b ) & 16 :
|
| 50 |
-
a !== b && a.contains( b );
|
| 51 |
-
},
|
| 52 |
-
|
| 53 |
-
hasScroll: function( el, a ) {
|
| 54 |
-
|
| 55 |
-
//If overflow is hidden, the element might have extra content, but the user wants to hide it
|
| 56 |
-
if ( $( el ).css( "overflow" ) === "hidden") {
|
| 57 |
-
return false;
|
| 58 |
-
}
|
| 59 |
-
|
| 60 |
-
var scroll = ( a && a === "left" ) ? "scrollLeft" : "scrollTop",
|
| 61 |
-
has = false;
|
| 62 |
-
|
| 63 |
-
if ( el[ scroll ] > 0 ) {
|
| 64 |
-
return true;
|
| 65 |
-
}
|
| 66 |
-
|
| 67 |
-
// TODO: determine which cases actually cause this to happen
|
| 68 |
-
// if the element doesn't have the scroll set, see if it's possible to
|
| 69 |
-
// set the scroll
|
| 70 |
-
el[ scroll ] = 1;
|
| 71 |
-
has = ( el[ scroll ] > 0 );
|
| 72 |
-
el[ scroll ] = 0;
|
| 73 |
-
return has;
|
| 74 |
-
},
|
| 75 |
-
|
| 76 |
-
isOverAxis: function( x, reference, size ) {
|
| 77 |
-
//Determines when x coordinate is over "b" element axis
|
| 78 |
-
return ( x > reference ) && ( x < ( reference + size ) );
|
| 79 |
-
},
|
| 80 |
-
|
| 81 |
-
isOver: function( y, x, top, left, height, width ) {
|
| 82 |
-
//Determines when x, y coordinates is over "b" element
|
| 83 |
-
return $.ui.isOverAxis( y, top, height ) && $.ui.isOverAxis( x, left, width );
|
| 84 |
-
},
|
| 85 |
-
|
| 86 |
-
keyCode: {
|
| 87 |
-
ALT: 18,
|
| 88 |
-
BACKSPACE: 8,
|
| 89 |
-
CAPS_LOCK: 20,
|
| 90 |
-
COMMA: 188,
|
| 91 |
-
COMMAND: 91,
|
| 92 |
-
COMMAND_LEFT: 91, // COMMAND
|
| 93 |
-
COMMAND_RIGHT: 93,
|
| 94 |
-
CONTROL: 17,
|
| 95 |
-
DELETE: 46,
|
| 96 |
-
DOWN: 40,
|
| 97 |
-
END: 35,
|
| 98 |
-
ENTER: 13,
|
| 99 |
-
ESCAPE: 27,
|
| 100 |
-
HOME: 36,
|
| 101 |
-
INSERT: 45,
|
| 102 |
-
LEFT: 37,
|
| 103 |
-
MENU: 93, // COMMAND_RIGHT
|
| 104 |
-
NUMPAD_ADD: 107,
|
| 105 |
-
NUMPAD_DECIMAL: 110,
|
| 106 |
-
NUMPAD_DIVIDE: 111,
|
| 107 |
-
NUMPAD_ENTER: 108,
|
| 108 |
-
NUMPAD_MULTIPLY: 106,
|
| 109 |
-
NUMPAD_SUBTRACT: 109,
|
| 110 |
-
PAGE_DOWN: 34,
|
| 111 |
-
PAGE_UP: 33,
|
| 112 |
-
PERIOD: 190,
|
| 113 |
-
RIGHT: 39,
|
| 114 |
-
SHIFT: 16,
|
| 115 |
-
SPACE: 32,
|
| 116 |
-
TAB: 9,
|
| 117 |
-
UP: 38,
|
| 118 |
-
WINDOWS: 91 // COMMAND
|
| 119 |
-
}
|
| 120 |
-
});
|
| 121 |
-
|
| 122 |
-
//jQuery plugins
|
| 123 |
-
$.fn.extend({
|
| 124 |
-
_focus: $.fn.focus,
|
| 125 |
-
focus: function( delay, fn ) {
|
| 126 |
-
return typeof delay === "number" ?
|
| 127 |
-
this.each(function() {
|
| 128 |
-
var elem = this;
|
| 129 |
-
setTimeout(function() {
|
| 130 |
-
$( elem ).focus();
|
| 131 |
-
if ( fn ) {
|
| 132 |
-
fn.call( elem );
|
| 133 |
-
}
|
| 134 |
-
}, delay );
|
| 135 |
-
}) :
|
| 136 |
-
this._focus.apply( this, arguments );
|
| 137 |
-
},
|
| 138 |
-
|
| 139 |
-
enableSelection: function() {
|
| 140 |
-
return this
|
| 141 |
-
.attr( "unselectable", "off" )
|
| 142 |
-
.css( "MozUserSelect", "" );
|
| 143 |
-
},
|
| 144 |
-
|
| 145 |
-
disableSelection: function() {
|
| 146 |
-
return this
|
| 147 |
-
.attr( "unselectable", "on" )
|
| 148 |
-
.css( "MozUserSelect", "none" );
|
| 149 |
-
},
|
| 150 |
-
|
| 151 |
-
scrollParent: function() {
|
| 152 |
-
var scrollParent;
|
| 153 |
-
if (($.browser.msie && (/(static|relative)/).test(this.css('position'))) || (/absolute/).test(this.css('position'))) {
|
| 154 |
-
scrollParent = this.parents().filter(function() {
|
| 155 |
-
return (/(relative|absolute|fixed)/).test($.curCSS(this,'position',1)) && (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));
|
| 156 |
-
}).eq(0);
|
| 157 |
-
} else {
|
| 158 |
-
scrollParent = this.parents().filter(function() {
|
| 159 |
-
return (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));
|
| 160 |
-
}).eq(0);
|
| 161 |
-
}
|
| 162 |
-
|
| 163 |
-
return (/fixed/).test(this.css('position')) || !scrollParent.length ? $(document) : scrollParent;
|
| 164 |
-
},
|
| 165 |
-
|
| 166 |
-
zIndex: function( zIndex ) {
|
| 167 |
-
if ( zIndex !== undefined ) {
|
| 168 |
-
return this.css( "zIndex", zIndex );
|
| 169 |
-
}
|
| 170 |
-
|
| 171 |
-
if ( this.length ) {
|
| 172 |
-
var elem = $( this[ 0 ] ), position, value;
|
| 173 |
-
while ( elem.length && elem[ 0 ] !== document ) {
|
| 174 |
-
// Ignore z-index if position is set to a value where z-index is ignored by the browser
|
| 175 |
-
// This makes behavior of this function consistent across browsers
|
| 176 |
-
// WebKit always returns auto if the element is positioned
|
| 177 |
-
position = elem.css( "position" );
|
| 178 |
-
if ( position === "absolute" || position === "relative" || position === "fixed" ) {
|
| 179 |
-
// IE returns 0 when zIndex is not specified
|
| 180 |
-
// other browsers return a string
|
| 181 |
-
// we ignore the case of nested elements with an explicit value of 0
|
| 182 |
-
// <div style="z-index: -10;"><div style="z-index: 0;"></div></div>
|
| 183 |
-
value = parseInt( elem.css( "zIndex" ) );
|
| 184 |
-
if ( !isNaN( value ) && value != 0 ) {
|
| 185 |
-
return value;
|
| 186 |
-
}
|
| 187 |
-
}
|
| 188 |
-
elem = elem.parent();
|
| 189 |
-
}
|
| 190 |
-
}
|
| 191 |
-
|
| 192 |
-
return 0;
|
| 193 |
-
}
|
| 194 |
-
});
|
| 195 |
-
|
| 196 |
-
$.each( [ "Width", "Height" ], function( i, name ) {
|
| 197 |
-
var side = name === "Width" ? [ "Left", "Right" ] : [ "Top", "Bottom" ],
|
| 198 |
-
type = name.toLowerCase(),
|
| 199 |
-
orig = {
|
| 200 |
-
innerWidth: $.fn.innerWidth,
|
| 201 |
-
innerHeight: $.fn.innerHeight,
|
| 202 |
-
outerWidth: $.fn.outerWidth,
|
| 203 |
-
outerHeight: $.fn.outerHeight
|
| 204 |
-
};
|
| 205 |
-
|
| 206 |
-
function reduce( elem, size, border, margin ) {
|
| 207 |
-
$.each( side, function() {
|
| 208 |
-
size -= parseFloat( $.curCSS( elem, "padding" + this, true) ) || 0;
|
| 209 |
-
if ( border ) {
|
| 210 |
-
size -= parseFloat( $.curCSS( elem, "border" + this + "Width", true) ) || 0;
|
| 211 |
-
}
|
| 212 |
-
if ( margin ) {
|
| 213 |
-
size -= parseFloat( $.curCSS( elem, "margin" + this, true) ) || 0;
|
| 214 |
-
}
|
| 215 |
-
});
|
| 216 |
-
return size;
|
| 217 |
-
}
|
| 218 |
-
|
| 219 |
-
$.fn[ "inner" + name ] = function( size ) {
|
| 220 |
-
if ( size === undefined ) {
|
| 221 |
-
return orig[ "inner" + name ].call( this );
|
| 222 |
-
}
|
| 223 |
-
|
| 224 |
-
return this.each(function() {
|
| 225 |
-
$.style( this, type, reduce( this, size ) + "px" );
|
| 226 |
-
});
|
| 227 |
-
};
|
| 228 |
-
|
| 229 |
-
$.fn[ "outer" + name] = function( size, margin ) {
|
| 230 |
-
if ( typeof size !== "number" ) {
|
| 231 |
-
return orig[ "outer" + name ].call( this, size );
|
| 232 |
-
}
|
| 233 |
-
|
| 234 |
-
return this.each(function() {
|
| 235 |
-
$.style( this, type, reduce( this, size, true, margin ) + "px" );
|
| 236 |
-
});
|
| 237 |
-
};
|
| 238 |
-
});
|
| 239 |
-
|
| 240 |
-
//Additional selectors
|
| 241 |
-
function visible( element ) {
|
| 242 |
-
return !$( element ).parents().andSelf().filter(function() {
|
| 243 |
-
return $.curCSS( this, "visibility" ) === "hidden" ||
|
| 244 |
-
$.expr.filters.hidden( this );
|
| 245 |
-
}).length;
|
| 246 |
-
}
|
| 247 |
-
|
| 248 |
-
$.extend( $.expr[ ":" ], {
|
| 249 |
-
data: function( elem, i, match ) {
|
| 250 |
-
return !!$.data( elem, match[ 3 ] );
|
| 251 |
-
},
|
| 252 |
-
|
| 253 |
-
focusable: function( element ) {
|
| 254 |
-
var nodeName = element.nodeName.toLowerCase(),
|
| 255 |
-
tabIndex = $.attr( element, "tabindex" );
|
| 256 |
-
if ( "area" === nodeName ) {
|
| 257 |
-
var map = element.parentNode,
|
| 258 |
-
mapName = map.name,
|
| 259 |
-
img;
|
| 260 |
-
if ( !element.href || !mapName || map.nodeName.toLowerCase() !== "map" ) {
|
| 261 |
-
return false;
|
| 262 |
-
}
|
| 263 |
-
img = $( "img[usemap=#" + mapName + "]" )[0];
|
| 264 |
-
return !!img && visible( img );
|
| 265 |
-
}
|
| 266 |
-
return ( /input|select|textarea|button|object/.test( nodeName )
|
| 267 |
-
? !element.disabled
|
| 268 |
-
: "a" == nodeName
|
| 269 |
-
? element.href || !isNaN( tabIndex )
|
| 270 |
-
: !isNaN( tabIndex ))
|
| 271 |
-
// the element and all of its ancestors must be visible
|
| 272 |
-
&& visible( element );
|
| 273 |
-
},
|
| 274 |
-
|
| 275 |
-
tabbable: function( element ) {
|
| 276 |
-
var tabIndex = $.attr( element, "tabindex" );
|
| 277 |
-
return ( isNaN( tabIndex ) || tabIndex >= 0 ) && $( element ).is( ":focusable" );
|
| 278 |
-
}
|
| 279 |
-
});
|
| 280 |
-
|
| 281 |
-
})( jQuery );
|
| 282 |
-
/*!
|
| 283 |
-
* jQuery UI Widget 1.8.4
|
| 284 |
-
*
|
| 285 |
-
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 286 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 287 |
-
* http://jquery.org/license
|
| 288 |
-
*
|
| 289 |
-
* http://docs.jquery.com/UI/Widget
|
| 290 |
-
*/
|
| 291 |
-
(function( $, undefined ) {
|
| 292 |
-
|
| 293 |
-
var _remove = $.fn.remove;
|
| 294 |
-
|
| 295 |
-
$.fn.remove = function( selector, keepData ) {
|
| 296 |
-
return this.each(function() {
|
| 297 |
-
if ( !keepData ) {
|
| 298 |
-
if ( !selector || $.filter( selector, [ this ] ).length ) {
|
| 299 |
-
$( "*", this ).add( [ this ] ).each(function() {
|
| 300 |
-
$( this ).triggerHandler( "remove" );
|
| 301 |
-
});
|
| 302 |
-
}
|
| 303 |
-
}
|
| 304 |
-
return _remove.call( $(this), selector, keepData );
|
| 305 |
-
});
|
| 306 |
-
};
|
| 307 |
-
|
| 308 |
-
$.widget = function( name, base, prototype ) {
|
| 309 |
-
var namespace = name.split( "." )[ 0 ],
|
| 310 |
-
fullName;
|
| 311 |
-
name = name.split( "." )[ 1 ];
|
| 312 |
-
fullName = namespace + "-" + name;
|
| 313 |
-
|
| 314 |
-
if ( !prototype ) {
|
| 315 |
-
prototype = base;
|
| 316 |
-
base = $.Widget;
|
| 317 |
-
}
|
| 318 |
-
|
| 319 |
-
// create selector for plugin
|
| 320 |
-
$.expr[ ":" ][ fullName ] = function( elem ) {
|
| 321 |
-
return !!$.data( elem, name );
|
| 322 |
-
};
|
| 323 |
-
|
| 324 |
-
$[ namespace ] = $[ namespace ] || {};
|
| 325 |
-
$[ namespace ][ name ] = function( options, element ) {
|
| 326 |
-
// allow instantiation without initializing for simple inheritance
|
| 327 |
-
if ( arguments.length ) {
|
| 328 |
-
this._createWidget( options, element );
|
| 329 |
-
}
|
| 330 |
-
};
|
| 331 |
-
|
| 332 |
-
var basePrototype = new base();
|
| 333 |
-
// we need to make the options hash a property directly on the new instance
|
| 334 |
-
// otherwise we'll modify the options hash on the prototype that we're
|
| 335 |
-
// inheriting from
|
| 336 |
-
// $.each( basePrototype, function( key, val ) {
|
| 337 |
-
// if ( $.isPlainObject(val) ) {
|
| 338 |
-
// basePrototype[ key ] = $.extend( {}, val );
|
| 339 |
-
// }
|
| 340 |
-
// });
|
| 341 |
-
basePrototype.options = $.extend( true, {}, basePrototype.options );
|
| 342 |
-
$[ namespace ][ name ].prototype = $.extend( true, basePrototype, {
|
| 343 |
-
namespace: namespace,
|
| 344 |
-
widgetName: name,
|
| 345 |
-
widgetEventPrefix: $[ namespace ][ name ].prototype.widgetEventPrefix || name,
|
| 346 |
-
widgetBaseClass: fullName
|
| 347 |
-
}, prototype );
|
| 348 |
-
|
| 349 |
-
$.widget.bridge( name, $[ namespace ][ name ] );
|
| 350 |
-
};
|
| 351 |
-
|
| 352 |
-
$.widget.bridge = function( name, object ) {
|
| 353 |
-
$.fn[ name ] = function( options ) {
|
| 354 |
-
var isMethodCall = typeof options === "string",
|
| 355 |
-
args = Array.prototype.slice.call( arguments, 1 ),
|
| 356 |
-
returnValue = this;
|
| 357 |
-
|
| 358 |
-
// allow multiple hashes to be passed on init
|
| 359 |
-
options = !isMethodCall && args.length ?
|
| 360 |
-
$.extend.apply( null, [ true, options ].concat(args) ) :
|
| 361 |
-
options;
|
| 362 |
-
|
| 363 |
-
// prevent calls to internal methods
|
| 364 |
-
if ( isMethodCall && options.substring( 0, 1 ) === "_" ) {
|
| 365 |
-
return returnValue;
|
| 366 |
-
}
|
| 367 |
-
|
| 368 |
-
if ( isMethodCall ) {
|
| 369 |
-
this.each(function() {
|
| 370 |
-
var instance = $.data( this, name ),
|
| 371 |
-
methodValue = instance && $.isFunction( instance[options] ) ?
|
| 372 |
-
instance[ options ].apply( instance, args ) :
|
| 373 |
-
instance;
|
| 374 |
-
if ( methodValue !== instance && methodValue !== undefined ) {
|
| 375 |
-
returnValue = methodValue;
|
| 376 |
-
return false;
|
| 377 |
-
}
|
| 378 |
-
});
|
| 379 |
-
} else {
|
| 380 |
-
this.each(function() {
|
| 381 |
-
var instance = $.data( this, name );
|
| 382 |
-
if ( instance ) {
|
| 383 |
-
if ( options ) {
|
| 384 |
-
instance.option( options );
|
| 385 |
-
}
|
| 386 |
-
instance._init();
|
| 387 |
-
} else {
|
| 388 |
-
$.data( this, name, new object( options, this ) );
|
| 389 |
-
}
|
| 390 |
-
});
|
| 391 |
-
}
|
| 392 |
-
|
| 393 |
-
return returnValue;
|
| 394 |
-
};
|
| 395 |
-
};
|
| 396 |
-
|
| 397 |
-
$.Widget = function( options, element ) {
|
| 398 |
-
// allow instantiation without initializing for simple inheritance
|
| 399 |
-
if ( arguments.length ) {
|
| 400 |
-
this._createWidget( options, element );
|
| 401 |
-
}
|
| 402 |
-
};
|
| 403 |
-
|
| 404 |
-
$.Widget.prototype = {
|
| 405 |
-
widgetName: "widget",
|
| 406 |
-
widgetEventPrefix: "",
|
| 407 |
-
options: {
|
| 408 |
-
disabled: false
|
| 409 |
-
},
|
| 410 |
-
_createWidget: function( options, element ) {
|
| 411 |
-
// $.widget.bridge stores the plugin instance, but we do it anyway
|
| 412 |
-
// so that it's stored even before the _create function runs
|
| 413 |
-
$.data( element, this.widgetName, this );
|
| 414 |
-
this.element = $( element );
|
| 415 |
-
this.options = $.extend( true, {},
|
| 416 |
-
this.options,
|
| 417 |
-
$.metadata && $.metadata.get( element )[ this.widgetName ],
|
| 418 |
-
options );
|
| 419 |
-
|
| 420 |
-
var self = this;
|
| 421 |
-
this.element.bind( "remove." + this.widgetName, function() {
|
| 422 |
-
self.destroy();
|
| 423 |
-
});
|
| 424 |
-
|
| 425 |
-
this._create();
|
| 426 |
-
this._init();
|
| 427 |
-
},
|
| 428 |
-
_create: function() {},
|
| 429 |
-
_init: function() {},
|
| 430 |
-
|
| 431 |
-
destroy: function() {
|
| 432 |
-
this.element
|
| 433 |
-
.unbind( "." + this.widgetName )
|
| 434 |
-
.removeData( this.widgetName );
|
| 435 |
-
this.widget()
|
| 436 |
-
.unbind( "." + this.widgetName )
|
| 437 |
-
.removeAttr( "aria-disabled" )
|
| 438 |
-
.removeClass(
|
| 439 |
-
this.widgetBaseClass + "-disabled " +
|
| 440 |
-
"ui-state-disabled" );
|
| 441 |
-
},
|
| 442 |
-
|
| 443 |
-
widget: function() {
|
| 444 |
-
return this.element;
|
| 445 |
-
},
|
| 446 |
-
|
| 447 |
-
option: function( key, value ) {
|
| 448 |
-
var options = key,
|
| 449 |
-
self = this;
|
| 450 |
-
|
| 451 |
-
if ( arguments.length === 0 ) {
|
| 452 |
-
// don't return a reference to the internal hash
|
| 453 |
-
return $.extend( {}, self.options );
|
| 454 |
-
}
|
| 455 |
-
|
| 456 |
-
if (typeof key === "string" ) {
|
| 457 |
-
if ( value === undefined ) {
|
| 458 |
-
return this.options[ key ];
|
| 459 |
-
}
|
| 460 |
-
options = {};
|
| 461 |
-
options[ key ] = value;
|
| 462 |
-
}
|
| 463 |
-
|
| 464 |
-
$.each( options, function( key, value ) {
|
| 465 |
-
self._setOption( key, value );
|
| 466 |
-
});
|
| 467 |
-
|
| 468 |
-
return self;
|
| 469 |
-
},
|
| 470 |
-
_setOption: function( key, value ) {
|
| 471 |
-
this.options[ key ] = value;
|
| 472 |
-
|
| 473 |
-
if ( key === "disabled" ) {
|
| 474 |
-
this.widget()
|
| 475 |
-
[ value ? "addClass" : "removeClass"](
|
| 476 |
-
this.widgetBaseClass + "-disabled" + " " +
|
| 477 |
-
"ui-state-disabled" )
|
| 478 |
-
.attr( "aria-disabled", value );
|
| 479 |
-
}
|
| 480 |
-
|
| 481 |
-
return this;
|
| 482 |
-
},
|
| 483 |
-
|
| 484 |
-
enable: function() {
|
| 485 |
-
return this._setOption( "disabled", false );
|
| 486 |
-
},
|
| 487 |
-
disable: function() {
|
| 488 |
-
return this._setOption( "disabled", true );
|
| 489 |
-
},
|
| 490 |
-
|
| 491 |
-
_trigger: function( type, event, data ) {
|
| 492 |
-
var callback = this.options[ type ];
|
| 493 |
-
|
| 494 |
-
event = $.Event( event );
|
| 495 |
-
event.type = ( type === this.widgetEventPrefix ?
|
| 496 |
-
type :
|
| 497 |
-
this.widgetEventPrefix + type ).toLowerCase();
|
| 498 |
-
data = data || {};
|
| 499 |
-
|
| 500 |
-
// copy original event properties over to the new event
|
| 501 |
-
// this would happen if we could call $.event.fix instead of $.Event
|
| 502 |
-
// but we don't have a way to force an event to be fixed multiple times
|
| 503 |
-
if ( event.originalEvent ) {
|
| 504 |
-
for ( var i = $.event.props.length, prop; i; ) {
|
| 505 |
-
prop = $.event.props[ --i ];
|
| 506 |
-
event[ prop ] = event.originalEvent[ prop ];
|
| 507 |
-
}
|
| 508 |
-
}
|
| 509 |
-
|
| 510 |
-
this.element.trigger( event, data );
|
| 511 |
-
|
| 512 |
-
return !( $.isFunction(callback) &&
|
| 513 |
-
callback.call( this.element[0], event, data ) === false ||
|
| 514 |
-
event.isDefaultPrevented() );
|
| 515 |
-
}
|
| 516 |
-
};
|
| 517 |
-
|
| 518 |
-
})( jQuery );
|
| 519 |
-
/*
|
| 520 |
-
* jQuery UI Position 1.8.4
|
| 521 |
-
*
|
| 522 |
-
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 523 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 524 |
-
* http://jquery.org/license
|
| 525 |
-
*
|
| 526 |
-
* http://docs.jquery.com/UI/Position
|
| 527 |
-
*/
|
| 528 |
-
(function( $, undefined ) {
|
| 529 |
-
|
| 530 |
-
$.ui = $.ui || {};
|
| 531 |
-
|
| 532 |
-
var horizontalPositions = /left|center|right/,
|
| 533 |
-
horizontalDefault = "center",
|
| 534 |
-
verticalPositions = /top|center|bottom/,
|
| 535 |
-
verticalDefault = "center",
|
| 536 |
-
_position = $.fn.position,
|
| 537 |
-
_offset = $.fn.offset;
|
| 538 |
-
|
| 539 |
-
$.fn.position = function( options ) {
|
| 540 |
-
if ( !options || !options.of ) {
|
| 541 |
-
return _position.apply( this, arguments );
|
| 542 |
-
}
|
| 543 |
-
|
| 544 |
-
// make a copy, we don't want to modify arguments
|
| 545 |
-
options = $.extend( {}, options );
|
| 546 |
-
|
| 547 |
-
var target = $( options.of ),
|
| 548 |
-
collision = ( options.collision || "flip" ).split( " " ),
|
| 549 |
-
offset = options.offset ? options.offset.split( " " ) : [ 0, 0 ],
|
| 550 |
-
targetWidth,
|
| 551 |
-
targetHeight,
|
| 552 |
-
basePosition;
|
| 553 |
-
|
| 554 |
-
if ( options.of.nodeType === 9 ) {
|
| 555 |
-
targetWidth = target.width();
|
| 556 |
-
targetHeight = target.height();
|
| 557 |
-
basePosition = { top: 0, left: 0 };
|
| 558 |
-
} else if ( options.of.scrollTo && options.of.document ) {
|
| 559 |
-
targetWidth = target.width();
|
| 560 |
-
targetHeight = target.height();
|
| 561 |
-
basePosition = { top: target.scrollTop(), left: target.scrollLeft() };
|
| 562 |
-
} else if ( options.of.preventDefault ) {
|
| 563 |
-
// force left top to allow flipping
|
| 564 |
-
options.at = "left top";
|
| 565 |
-
targetWidth = targetHeight = 0;
|
| 566 |
-
basePosition = { top: options.of.pageY, left: options.of.pageX };
|
| 567 |
-
} else {
|
| 568 |
-
targetWidth = target.outerWidth();
|
| 569 |
-
targetHeight = target.outerHeight();
|
| 570 |
-
basePosition = target.offset();
|
| 571 |
-
}
|
| 572 |
-
|
| 573 |
-
// force my and at to have valid horizontal and veritcal positions
|
| 574 |
-
// if a value is missing or invalid, it will be converted to center
|
| 575 |
-
$.each( [ "my", "at" ], function() {
|
| 576 |
-
var pos = ( options[this] || "" ).split( " " );
|
| 577 |
-
if ( pos.length === 1) {
|
| 578 |
-
pos = horizontalPositions.test( pos[0] ) ?
|
| 579 |
-
pos.concat( [verticalDefault] ) :
|
| 580 |
-
verticalPositions.test( pos[0] ) ?
|
| 581 |
-
[ horizontalDefault ].concat( pos ) :
|
| 582 |
-
[ horizontalDefault, verticalDefault ];
|
| 583 |
-
}
|
| 584 |
-
pos[ 0 ] = horizontalPositions.test( pos[0] ) ? pos[ 0 ] : horizontalDefault;
|
| 585 |
-
pos[ 1 ] = verticalPositions.test( pos[1] ) ? pos[ 1 ] : verticalDefault;
|
| 586 |
-
options[ this ] = pos;
|
| 587 |
-
});
|
| 588 |
-
|
| 589 |
-
// normalize collision option
|
| 590 |
-
if ( collision.length === 1 ) {
|
| 591 |
-
collision[ 1 ] = collision[ 0 ];
|
| 592 |
-
}
|
| 593 |
-
|
| 594 |
-
// normalize offset option
|
| 595 |
-
offset[ 0 ] = parseInt( offset[0], 10 ) || 0;
|
| 596 |
-
if ( offset.length === 1 ) {
|
| 597 |
-
offset[ 1 ] = offset[ 0 ];
|
| 598 |
-
}
|
| 599 |
-
offset[ 1 ] = parseInt( offset[1], 10 ) || 0;
|
| 600 |
-
|
| 601 |
-
if ( options.at[0] === "right" ) {
|
| 602 |
-
basePosition.left += targetWidth;
|
| 603 |
-
} else if (options.at[0] === horizontalDefault ) {
|
| 604 |
-
basePosition.left += targetWidth / 2;
|
| 605 |
-
}
|
| 606 |
-
|
| 607 |
-
if ( options.at[1] === "bottom" ) {
|
| 608 |
-
basePosition.top += targetHeight;
|
| 609 |
-
} else if ( options.at[1] === verticalDefault ) {
|
| 610 |
-
basePosition.top += targetHeight / 2;
|
| 611 |
-
}
|
| 612 |
-
|
| 613 |
-
basePosition.left += offset[ 0 ];
|
| 614 |
-
basePosition.top += offset[ 1 ];
|
| 615 |
-
|
| 616 |
-
return this.each(function() {
|
| 617 |
-
var elem = $( this ),
|
| 618 |
-
elemWidth = elem.outerWidth(),
|
| 619 |
-
elemHeight = elem.outerHeight(),
|
| 620 |
-
position = $.extend( {}, basePosition );
|
| 621 |
-
|
| 622 |
-
if ( options.my[0] === "right" ) {
|
| 623 |
-
position.left -= elemWidth;
|
| 624 |
-
} else if ( options.my[0] === horizontalDefault ) {
|
| 625 |
-
position.left -= elemWidth / 2;
|
| 626 |
-
}
|
| 627 |
-
|
| 628 |
-
if ( options.my[1] === "bottom" ) {
|
| 629 |
-
position.top -= elemHeight;
|
| 630 |
-
} else if ( options.my[1] === verticalDefault ) {
|
| 631 |
-
position.top -= elemHeight / 2;
|
| 632 |
-
}
|
| 633 |
-
|
| 634 |
-
// prevent fractions (see #5280)
|
| 635 |
-
position.left = parseInt( position.left );
|
| 636 |
-
position.top = parseInt( position.top );
|
| 637 |
-
|
| 638 |
-
$.each( [ "left", "top" ], function( i, dir ) {
|
| 639 |
-
if ( $.ui.position[ collision[i] ] ) {
|
| 640 |
-
$.ui.position[ collision[i] ][ dir ]( position, {
|
| 641 |
-
targetWidth: targetWidth,
|
| 642 |
-
targetHeight: targetHeight,
|
| 643 |
-
elemWidth: elemWidth,
|
| 644 |
-
elemHeight: elemHeight,
|
| 645 |
-
offset: offset,
|
| 646 |
-
my: options.my,
|
| 647 |
-
at: options.at
|
| 648 |
-
});
|
| 649 |
-
}
|
| 650 |
-
});
|
| 651 |
-
|
| 652 |
-
if ( $.fn.bgiframe ) {
|
| 653 |
-
elem.bgiframe();
|
| 654 |
-
}
|
| 655 |
-
elem.offset( $.extend( position, { using: options.using } ) );
|
| 656 |
-
});
|
| 657 |
-
};
|
| 658 |
-
|
| 659 |
-
$.ui.position = {
|
| 660 |
-
fit: {
|
| 661 |
-
left: function( position, data ) {
|
| 662 |
-
var win = $( window ),
|
| 663 |
-
over = position.left + data.elemWidth - win.width() - win.scrollLeft();
|
| 664 |
-
position.left = over > 0 ? position.left - over : Math.max( 0, position.left );
|
| 665 |
-
},
|
| 666 |
-
top: function( position, data ) {
|
| 667 |
-
var win = $( window ),
|
| 668 |
-
over = position.top + data.elemHeight - win.height() - win.scrollTop();
|
| 669 |
-
position.top = over > 0 ? position.top - over : Math.max( 0, position.top );
|
| 670 |
-
}
|
| 671 |
-
},
|
| 672 |
-
|
| 673 |
-
flip: {
|
| 674 |
-
left: function( position, data ) {
|
| 675 |
-
if ( data.at[0] === "center" ) {
|
| 676 |
-
return;
|
| 677 |
-
}
|
| 678 |
-
var win = $( window ),
|
| 679 |
-
over = position.left + data.elemWidth - win.width() - win.scrollLeft(),
|
| 680 |
-
myOffset = data.my[ 0 ] === "left" ?
|
| 681 |
-
-data.elemWidth :
|
| 682 |
-
data.my[ 0 ] === "right" ?
|
| 683 |
-
data.elemWidth :
|
| 684 |
-
0,
|
| 685 |
-
offset = -2 * data.offset[ 0 ];
|
| 686 |
-
position.left += position.left < 0 ?
|
| 687 |
-
myOffset + data.targetWidth + offset :
|
| 688 |
-
over > 0 ?
|
| 689 |
-
myOffset - data.targetWidth + offset :
|
| 690 |
-
0;
|
| 691 |
-
},
|
| 692 |
-
top: function( position, data ) {
|
| 693 |
-
if ( data.at[1] === "center" ) {
|
| 694 |
-
return;
|
| 695 |
-
}
|
| 696 |
-
var win = $( window ),
|
| 697 |
-
over = position.top + data.elemHeight - win.height() - win.scrollTop(),
|
| 698 |
-
myOffset = data.my[ 1 ] === "top" ?
|
| 699 |
-
-data.elemHeight :
|
| 700 |
-
data.my[ 1 ] === "bottom" ?
|
| 701 |
-
data.elemHeight :
|
| 702 |
-
0,
|
| 703 |
-
atOffset = data.at[ 1 ] === "top" ?
|
| 704 |
-
data.targetHeight :
|
| 705 |
-
-data.targetHeight,
|
| 706 |
-
offset = -2 * data.offset[ 1 ];
|
| 707 |
-
position.top += position.top < 0 ?
|
| 708 |
-
myOffset + data.targetHeight + offset :
|
| 709 |
-
over > 0 ?
|
| 710 |
-
myOffset + atOffset + offset :
|
| 711 |
-
0;
|
| 712 |
-
}
|
| 713 |
-
}
|
| 714 |
-
};
|
| 715 |
-
|
| 716 |
-
// offset setter from jQuery 1.4
|
| 717 |
-
if ( !$.offset.setOffset ) {
|
| 718 |
-
$.offset.setOffset = function( elem, options ) {
|
| 719 |
-
// set position first, in-case top/left are set even on static elem
|
| 720 |
-
if ( /static/.test( $.curCSS( elem, "position" ) ) ) {
|
| 721 |
-
elem.style.position = "relative";
|
| 722 |
-
}
|
| 723 |
-
var curElem = $( elem ),
|
| 724 |
-
curOffset = curElem.offset(),
|
| 725 |
-
curTop = parseInt( $.curCSS( elem, "top", true ), 10 ) || 0,
|
| 726 |
-
curLeft = parseInt( $.curCSS( elem, "left", true ), 10) || 0,
|
| 727 |
-
props = {
|
| 728 |
-
top: (options.top - curOffset.top) + curTop,
|
| 729 |
-
left: (options.left - curOffset.left) + curLeft
|
| 730 |
-
};
|
| 731 |
-
|
| 732 |
-
if ( 'using' in options ) {
|
| 733 |
-
options.using.call( elem, props );
|
| 734 |
-
} else {
|
| 735 |
-
curElem.css( props );
|
| 736 |
-
}
|
| 737 |
-
};
|
| 738 |
-
|
| 739 |
-
$.fn.offset = function( options ) {
|
| 740 |
-
var elem = this[ 0 ];
|
| 741 |
-
if ( !elem || !elem.ownerDocument ) { return null; }
|
| 742 |
-
if ( options ) {
|
| 743 |
-
return this.each(function() {
|
| 744 |
-
$.offset.setOffset( this, options );
|
| 745 |
-
});
|
| 746 |
-
}
|
| 747 |
-
return _offset.call( this );
|
| 748 |
-
};
|
| 749 |
-
}
|
| 750 |
-
|
| 751 |
-
}( jQuery ));
|
| 752 |
-
/*
|
| 753 |
-
* jQuery UI Dialog 1.8.4
|
| 754 |
-
*
|
| 755 |
-
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 756 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 757 |
-
* http://jquery.org/license
|
| 758 |
-
*
|
| 759 |
-
* http://docs.jquery.com/UI/Dialog
|
| 760 |
-
*
|
| 761 |
-
* Depends:
|
| 762 |
-
* jquery.ui.core.js
|
| 763 |
-
* jquery.ui.widget.js
|
| 764 |
-
* jquery.ui.button.js
|
| 765 |
-
* jquery.ui.draggable.js
|
| 766 |
-
* jquery.ui.mouse.js
|
| 767 |
-
* jquery.ui.position.js
|
| 768 |
-
* jquery.ui.resizable.js
|
| 769 |
-
*/
|
| 770 |
-
(function( $, undefined ) {
|
| 771 |
-
|
| 772 |
-
var uiDialogClasses =
|
| 773 |
-
'ui-dialog ' +
|
| 774 |
-
'ui-widget ' +
|
| 775 |
-
'ui-widget-content ' +
|
| 776 |
-
'ui-corner-all ';
|
| 777 |
-
|
| 778 |
-
$.widget("ui.dialog", {
|
| 779 |
-
options: {
|
| 780 |
-
autoOpen: true,
|
| 781 |
-
buttons: {},
|
| 782 |
-
closeOnEscape: true,
|
| 783 |
-
closeText: 'close',
|
| 784 |
-
dialogClass: '',
|
| 785 |
-
draggable: true,
|
| 786 |
-
hide: null,
|
| 787 |
-
height: 'auto',
|
| 788 |
-
maxHeight: false,
|
| 789 |
-
maxWidth: false,
|
| 790 |
-
minHeight: 150,
|
| 791 |
-
minWidth: 150,
|
| 792 |
-
modal: false,
|
| 793 |
-
position: {
|
| 794 |
-
my: 'center',
|
| 795 |
-
at: 'center',
|
| 796 |
-
of: window,
|
| 797 |
-
collision: 'fit',
|
| 798 |
-
// ensure that the titlebar is never outside the document
|
| 799 |
-
using: function(pos) {
|
| 800 |
-
var topOffset = $(this).css(pos).offset().top;
|
| 801 |
-
if (topOffset < 0) {
|
| 802 |
-
$(this).css('top', pos.top - topOffset);
|
| 803 |
-
}
|
| 804 |
-
}
|
| 805 |
-
},
|
| 806 |
-
resizable: true,
|
| 807 |
-
show: null,
|
| 808 |
-
stack: true,
|
| 809 |
-
title: '',
|
| 810 |
-
width: 300,
|
| 811 |
-
zIndex: 1000
|
| 812 |
-
},
|
| 813 |
-
|
| 814 |
-
_create: function() {
|
| 815 |
-
this.originalTitle = this.element.attr('title');
|
| 816 |
-
// #5742 - .attr() might return a DOMElement
|
| 817 |
-
if ( typeof this.originalTitle !== "string" ) {
|
| 818 |
-
this.originalTitle = "";
|
| 819 |
-
}
|
| 820 |
-
|
| 821 |
-
var self = this,
|
| 822 |
-
options = self.options,
|
| 823 |
-
|
| 824 |
-
title = options.title || self.originalTitle || ' ',
|
| 825 |
-
titleId = $.ui.dialog.getTitleId(self.element),
|
| 826 |
-
|
| 827 |
-
uiDialog = (self.uiDialog = $('<div></div>'))
|
| 828 |
-
.appendTo(document.body)
|
| 829 |
-
.hide()
|
| 830 |
-
.addClass(uiDialogClasses + options.dialogClass)
|
| 831 |
-
.css({
|
| 832 |
-
zIndex: options.zIndex
|
| 833 |
-
})
|
| 834 |
-
// setting tabIndex makes the div focusable
|
| 835 |
-
// setting outline to 0 prevents a border on focus in Mozilla
|
| 836 |
-
.attr('tabIndex', -1).css('outline', 0).keydown(function(event) {
|
| 837 |
-
if (options.closeOnEscape && event.keyCode &&
|
| 838 |
-
event.keyCode === $.ui.keyCode.ESCAPE) {
|
| 839 |
-
|
| 840 |
-
self.close(event);
|
| 841 |
-
event.preventDefault();
|
| 842 |
-
}
|
| 843 |
-
})
|
| 844 |
-
.attr({
|
| 845 |
-
role: 'dialog',
|
| 846 |
-
'aria-labelledby': titleId
|
| 847 |
-
})
|
| 848 |
-
.mousedown(function(event) {
|
| 849 |
-
self.moveToTop(false, event);
|
| 850 |
-
}),
|
| 851 |
-
|
| 852 |
-
uiDialogContent = self.element
|
| 853 |
-
.show()
|
| 854 |
-
.removeAttr('title')
|
| 855 |
-
.addClass(
|
| 856 |
-
'ui-dialog-content ' +
|
| 857 |
-
'ui-widget-content')
|
| 858 |
-
.appendTo(uiDialog),
|
| 859 |
-
|
| 860 |
-
uiDialogTitlebar = (self.uiDialogTitlebar = $('<div></div>'))
|
| 861 |
-
.addClass(
|
| 862 |
-
'ui-dialog-titlebar ' +
|
| 863 |
-
'ui-widget-header ' +
|
| 864 |
-
'ui-corner-all ' +
|
| 865 |
-
'ui-helper-clearfix'
|
| 866 |
-
)
|
| 867 |
-
.prependTo(uiDialog),
|
| 868 |
-
|
| 869 |
-
uiDialogTitlebarClose = $('<a href="#"></a>')
|
| 870 |
-
.addClass(
|
| 871 |
-
'ui-dialog-titlebar-close ' +
|
| 872 |
-
'ui-corner-all'
|
| 873 |
-
)
|
| 874 |
-
.attr('role', 'button')
|
| 875 |
-
.hover(
|
| 876 |
-
function() {
|
| 877 |
-
uiDialogTitlebarClose.addClass('ui-state-hover');
|
| 878 |
-
},
|
| 879 |
-
function() {
|
| 880 |
-
uiDialogTitlebarClose.removeClass('ui-state-hover');
|
| 881 |
-
}
|
| 882 |
-
)
|
| 883 |
-
.focus(function() {
|
| 884 |
-
uiDialogTitlebarClose.addClass('ui-state-focus');
|
| 885 |
-
})
|
| 886 |
-
.blur(function() {
|
| 887 |
-
uiDialogTitlebarClose.removeClass('ui-state-focus');
|
| 888 |
-
})
|
| 889 |
-
.click(function(event) {
|
| 890 |
-
self.close(event);
|
| 891 |
-
return false;
|
| 892 |
-
})
|
| 893 |
-
.appendTo(uiDialogTitlebar),
|
| 894 |
-
|
| 895 |
-
uiDialogTitlebarCloseText = (self.uiDialogTitlebarCloseText = $('<span></span>'))
|
| 896 |
-
.addClass(
|
| 897 |
-
'ui-icon ' +
|
| 898 |
-
'ui-icon-closethick'
|
| 899 |
-
)
|
| 900 |
-
.text(options.closeText)
|
| 901 |
-
.appendTo(uiDialogTitlebarClose),
|
| 902 |
-
|
| 903 |
-
uiDialogTitle = $('<span></span>')
|
| 904 |
-
.addClass('ui-dialog-title')
|
| 905 |
-
.attr('id', titleId)
|
| 906 |
-
.html(title)
|
| 907 |
-
.prependTo(uiDialogTitlebar);
|
| 908 |
-
|
| 909 |
-
//handling of deprecated beforeclose (vs beforeClose) option
|
| 910 |
-
//Ticket #4669 http://dev.jqueryui.com/ticket/4669
|
| 911 |
-
//TODO: remove in 1.9pre
|
| 912 |
-
if ($.isFunction(options.beforeclose) && !$.isFunction(options.beforeClose)) {
|
| 913 |
-
options.beforeClose = options.beforeclose;
|
| 914 |
-
}
|
| 915 |
-
|
| 916 |
-
uiDialogTitlebar.find("*").add(uiDialogTitlebar).disableSelection();
|
| 917 |
-
|
| 918 |
-
if (options.draggable && $.fn.draggable) {
|
| 919 |
-
self._makeDraggable();
|
| 920 |
-
}
|
| 921 |
-
if (options.resizable && $.fn.resizable) {
|
| 922 |
-
self._makeResizable();
|
| 923 |
-
}
|
| 924 |
-
|
| 925 |
-
self._createButtons(options.buttons);
|
| 926 |
-
self._isOpen = false;
|
| 927 |
-
|
| 928 |
-
if ($.fn.bgiframe) {
|
| 929 |
-
uiDialog.bgiframe();
|
| 930 |
-
}
|
| 931 |
-
},
|
| 932 |
-
|
| 933 |
-
_init: function() {
|
| 934 |
-
if ( this.options.autoOpen ) {
|
| 935 |
-
this.open();
|
| 936 |
-
}
|
| 937 |
-
},
|
| 938 |
-
|
| 939 |
-
destroy: function() {
|
| 940 |
-
var self = this;
|
| 941 |
-
|
| 942 |
-
if (self.overlay) {
|
| 943 |
-
self.overlay.destroy();
|
| 944 |
-
}
|
| 945 |
-
self.uiDialog.hide();
|
| 946 |
-
self.element
|
| 947 |
-
.unbind('.dialog')
|
| 948 |
-
.removeData('dialog')
|
| 949 |
-
.removeClass('ui-dialog-content ui-widget-content')
|
| 950 |
-
.hide().appendTo('body');
|
| 951 |
-
self.uiDialog.remove();
|
| 952 |
-
|
| 953 |
-
if (self.originalTitle) {
|
| 954 |
-
self.element.attr('title', self.originalTitle);
|
| 955 |
-
}
|
| 956 |
-
|
| 957 |
-
return self;
|
| 958 |
-
},
|
| 959 |
-
|
| 960 |
-
widget: function() {
|
| 961 |
-
return this.uiDialog;
|
| 962 |
-
},
|
| 963 |
-
|
| 964 |
-
close: function(event) {
|
| 965 |
-
var self = this,
|
| 966 |
-
maxZ;
|
| 967 |
-
|
| 968 |
-
if (false === self._trigger('beforeClose', event)) {
|
| 969 |
-
return;
|
| 970 |
-
}
|
| 971 |
-
|
| 972 |
-
if (self.overlay) {
|
| 973 |
-
self.overlay.destroy();
|
| 974 |
-
}
|
| 975 |
-
self.uiDialog.unbind('keypress.ui-dialog');
|
| 976 |
-
|
| 977 |
-
self._isOpen = false;
|
| 978 |
-
|
| 979 |
-
if (self.options.hide) {
|
| 980 |
-
self.uiDialog.hide(self.options.hide, function() {
|
| 981 |
-
self._trigger('close', event);
|
| 982 |
-
});
|
| 983 |
-
} else {
|
| 984 |
-
self.uiDialog.hide();
|
| 985 |
-
self._trigger('close', event);
|
| 986 |
-
}
|
| 987 |
-
|
| 988 |
-
$.ui.dialog.overlay.resize();
|
| 989 |
-
|
| 990 |
-
// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
|
| 991 |
-
if (self.options.modal) {
|
| 992 |
-
maxZ = 0;
|
| 993 |
-
$('.ui-dialog').each(function() {
|
| 994 |
-
if (this !== self.uiDialog[0]) {
|
| 995 |
-
maxZ = Math.max(maxZ, $(this).css('z-index'));
|
| 996 |
-
}
|
| 997 |
-
});
|
| 998 |
-
$.ui.dialog.maxZ = maxZ;
|
| 999 |
-
}
|
| 1000 |
-
|
| 1001 |
-
return self;
|
| 1002 |
-
},
|
| 1003 |
-
|
| 1004 |
-
isOpen: function() {
|
| 1005 |
-
return this._isOpen;
|
| 1006 |
-
},
|
| 1007 |
-
|
| 1008 |
-
// the force parameter allows us to move modal dialogs to their correct
|
| 1009 |
-
// position on open
|
| 1010 |
-
moveToTop: function(force, event) {
|
| 1011 |
-
var self = this,
|
| 1012 |
-
options = self.options,
|
| 1013 |
-
saveScroll;
|
| 1014 |
-
|
| 1015 |
-
if ((options.modal && !force) ||
|
| 1016 |
-
(!options.stack && !options.modal)) {
|
| 1017 |
-
return self._trigger('focus', event);
|
| 1018 |
-
}
|
| 1019 |
-
|
| 1020 |
-
if (options.zIndex > $.ui.dialog.maxZ) {
|
| 1021 |
-
$.ui.dialog.maxZ = options.zIndex;
|
| 1022 |
-
}
|
| 1023 |
-
if (self.overlay) {
|
| 1024 |
-
$.ui.dialog.maxZ += 1;
|
| 1025 |
-
self.overlay.$el.css('z-index', $.ui.dialog.overlay.maxZ = $.ui.dialog.maxZ);
|
| 1026 |
-
}
|
| 1027 |
-
|
| 1028 |
-
//Save and then restore scroll since Opera 9.5+ resets when parent z-Index is changed.
|
| 1029 |
-
// http://ui.jquery.com/bugs/ticket/3193
|
| 1030 |
-
saveScroll = { scrollTop: self.element.attr('scrollTop'), scrollLeft: self.element.attr('scrollLeft') };
|
| 1031 |
-
$.ui.dialog.maxZ += 1;
|
| 1032 |
-
self.uiDialog.css('z-index', $.ui.dialog.maxZ);
|
| 1033 |
-
self.element.attr(saveScroll);
|
| 1034 |
-
self._trigger('focus', event);
|
| 1035 |
-
|
| 1036 |
-
return self;
|
| 1037 |
-
},
|
| 1038 |
-
|
| 1039 |
-
open: function() {
|
| 1040 |
-
if (this._isOpen) { return; }
|
| 1041 |
-
|
| 1042 |
-
var self = this,
|
| 1043 |
-
options = self.options,
|
| 1044 |
-
uiDialog = self.uiDialog;
|
| 1045 |
-
|
| 1046 |
-
self.overlay = options.modal ? new $.ui.dialog.overlay(self) : null;
|
| 1047 |
-
if (uiDialog.next().length) {
|
| 1048 |
-
uiDialog.appendTo('body');
|
| 1049 |
-
}
|
| 1050 |
-
self._size();
|
| 1051 |
-
self._position(options.position);
|
| 1052 |
-
uiDialog.show(options.show);
|
| 1053 |
-
self.moveToTop(true);
|
| 1054 |
-
|
| 1055 |
-
// prevent tabbing out of modal dialogs
|
| 1056 |
-
if (options.modal) {
|
| 1057 |
-
uiDialog.bind('keypress.ui-dialog', function(event) {
|
| 1058 |
-
if (event.keyCode !== $.ui.keyCode.TAB) {
|
| 1059 |
-
return;
|
| 1060 |
-
}
|
| 1061 |
-
|
| 1062 |
-
var tabbables = $(':tabbable', this),
|
| 1063 |
-
first = tabbables.filter(':first'),
|
| 1064 |
-
last = tabbables.filter(':last');
|
| 1065 |
-
|
| 1066 |
-
if (event.target === last[0] && !event.shiftKey) {
|
| 1067 |
-
first.focus(1);
|
| 1068 |
-
return false;
|
| 1069 |
-
} else if (event.target === first[0] && event.shiftKey) {
|
| 1070 |
-
last.focus(1);
|
| 1071 |
-
return false;
|
| 1072 |
-
}
|
| 1073 |
-
});
|
| 1074 |
-
}
|
| 1075 |
-
|
| 1076 |
-
// set focus to the first tabbable element in the content area or the first button
|
| 1077 |
-
// if there are no tabbable elements, set focus on the dialog itself
|
| 1078 |
-
$(self.element.find(':tabbable').get().concat(
|
| 1079 |
-
uiDialog.find('.ui-dialog-buttonpane :tabbable').get().concat(
|
| 1080 |
-
uiDialog.get()))).eq(0).focus();
|
| 1081 |
-
|
| 1082 |
-
self._trigger('open');
|
| 1083 |
-
self._isOpen = true;
|
| 1084 |
-
|
| 1085 |
-
return self;
|
| 1086 |
-
},
|
| 1087 |
-
|
| 1088 |
-
_createButtons: function(buttons) {
|
| 1089 |
-
var self = this,
|
| 1090 |
-
hasButtons = false,
|
| 1091 |
-
uiDialogButtonPane = $('<div></div>')
|
| 1092 |
-
.addClass(
|
| 1093 |
-
'ui-dialog-buttonpane ' +
|
| 1094 |
-
'ui-widget-content ' +
|
| 1095 |
-
'ui-helper-clearfix'
|
| 1096 |
-
),
|
| 1097 |
-
uiButtonSet = $( "<div></div>" )
|
| 1098 |
-
.addClass( "ui-dialog-buttonset" )
|
| 1099 |
-
.appendTo( uiDialogButtonPane );
|
| 1100 |
-
|
| 1101 |
-
// if we already have a button pane, remove it
|
| 1102 |
-
self.uiDialog.find('.ui-dialog-buttonpane').remove();
|
| 1103 |
-
|
| 1104 |
-
if (typeof buttons === 'object' && buttons !== null) {
|
| 1105 |
-
$.each(buttons, function() {
|
| 1106 |
-
return !(hasButtons = true);
|
| 1107 |
-
});
|
| 1108 |
-
}
|
| 1109 |
-
if (hasButtons) {
|
| 1110 |
-
$.each(buttons, function(name, fn) {
|
| 1111 |
-
var button = $('<button type="button"></button>')
|
| 1112 |
-
.text(name)
|
| 1113 |
-
.click(function() { fn.apply(self.element[0], arguments); })
|
| 1114 |
-
.appendTo(uiButtonSet);
|
| 1115 |
-
if ($.fn.button) {
|
| 1116 |
-
button.button();
|
| 1117 |
-
}
|
| 1118 |
-
});
|
| 1119 |
-
uiDialogButtonPane.appendTo(self.uiDialog);
|
| 1120 |
-
}
|
| 1121 |
-
},
|
| 1122 |
-
|
| 1123 |
-
_makeDraggable: function() {
|
| 1124 |
-
var self = this,
|
| 1125 |
-
options = self.options,
|
| 1126 |
-
doc = $(document),
|
| 1127 |
-
heightBeforeDrag;
|
| 1128 |
-
|
| 1129 |
-
function filteredUi(ui) {
|
| 1130 |
-
return {
|
| 1131 |
-
position: ui.position,
|
| 1132 |
-
offset: ui.offset
|
| 1133 |
-
};
|
| 1134 |
-
}
|
| 1135 |
-
|
| 1136 |
-
self.uiDialog.draggable({
|
| 1137 |
-
cancel: '.ui-dialog-content, .ui-dialog-titlebar-close',
|
| 1138 |
-
handle: '.ui-dialog-titlebar',
|
| 1139 |
-
containment: 'document',
|
| 1140 |
-
start: function(event, ui) {
|
| 1141 |
-
heightBeforeDrag = options.height === "auto" ? "auto" : $(this).height();
|
| 1142 |
-
$(this).height($(this).height()).addClass("ui-dialog-dragging");
|
| 1143 |
-
self._trigger('dragStart', event, filteredUi(ui));
|
| 1144 |
-
},
|
| 1145 |
-
drag: function(event, ui) {
|
| 1146 |
-
self._trigger('drag', event, filteredUi(ui));
|
| 1147 |
-
},
|
| 1148 |
-
stop: function(event, ui) {
|
| 1149 |
-
options.position = [ui.position.left - doc.scrollLeft(),
|
| 1150 |
-
ui.position.top - doc.scrollTop()];
|
| 1151 |
-
$(this).removeClass("ui-dialog-dragging").height(heightBeforeDrag);
|
| 1152 |
-
self._trigger('dragStop', event, filteredUi(ui));
|
| 1153 |
-
$.ui.dialog.overlay.resize();
|
| 1154 |
-
}
|
| 1155 |
-
});
|
| 1156 |
-
},
|
| 1157 |
-
|
| 1158 |
-
_makeResizable: function(handles) {
|
| 1159 |
-
handles = (handles === undefined ? this.options.resizable : handles);
|
| 1160 |
-
var self = this,
|
| 1161 |
-
options = self.options,
|
| 1162 |
-
// .ui-resizable has position: relative defined in the stylesheet
|
| 1163 |
-
// but dialogs have to use absolute or fixed positioning
|
| 1164 |
-
position = self.uiDialog.css('position'),
|
| 1165 |
-
resizeHandles = (typeof handles === 'string' ?
|
| 1166 |
-
handles :
|
| 1167 |
-
'n,e,s,w,se,sw,ne,nw'
|
| 1168 |
-
);
|
| 1169 |
-
|
| 1170 |
-
function filteredUi(ui) {
|
| 1171 |
-
return {
|
| 1172 |
-
originalPosition: ui.originalPosition,
|
| 1173 |
-
originalSize: ui.originalSize,
|
| 1174 |
-
position: ui.position,
|
| 1175 |
-
size: ui.size
|
| 1176 |
-
};
|
| 1177 |
-
}
|
| 1178 |
-
|
| 1179 |
-
self.uiDialog.resizable({
|
| 1180 |
-
cancel: '.ui-dialog-content',
|
| 1181 |
-
containment: 'document',
|
| 1182 |
-
alsoResize: self.element,
|
| 1183 |
-
maxWidth: options.maxWidth,
|
| 1184 |
-
maxHeight: options.maxHeight,
|
| 1185 |
-
minWidth: options.minWidth,
|
| 1186 |
-
minHeight: self._minHeight(),
|
| 1187 |
-
handles: resizeHandles,
|
| 1188 |
-
start: function(event, ui) {
|
| 1189 |
-
$(this).addClass("ui-dialog-resizing");
|
| 1190 |
-
self._trigger('resizeStart', event, filteredUi(ui));
|
| 1191 |
-
},
|
| 1192 |
-
resize: function(event, ui) {
|
| 1193 |
-
self._trigger('resize', event, filteredUi(ui));
|
| 1194 |
-
},
|
| 1195 |
-
stop: function(event, ui) {
|
| 1196 |
-
$(this).removeClass("ui-dialog-resizing");
|
| 1197 |
-
options.height = $(this).height();
|
| 1198 |
-
options.width = $(this).width();
|
| 1199 |
-
self._trigger('resizeStop', event, filteredUi(ui));
|
| 1200 |
-
$.ui.dialog.overlay.resize();
|
| 1201 |
-
}
|
| 1202 |
-
})
|
| 1203 |
-
.css('position', position)
|
| 1204 |
-
.find('.ui-resizable-se').addClass('ui-icon ui-icon-grip-diagonal-se');
|
| 1205 |
-
},
|
| 1206 |
-
|
| 1207 |
-
_minHeight: function() {
|
| 1208 |
-
var options = this.options;
|
| 1209 |
-
|
| 1210 |
-
if (options.height === 'auto') {
|
| 1211 |
-
return options.minHeight;
|
| 1212 |
-
} else {
|
| 1213 |
-
return Math.min(options.minHeight, options.height);
|
| 1214 |
-
}
|
| 1215 |
-
},
|
| 1216 |
-
|
| 1217 |
-
_position: function(position) {
|
| 1218 |
-
var myAt = [],
|
| 1219 |
-
offset = [0, 0],
|
| 1220 |
-
isVisible;
|
| 1221 |
-
|
| 1222 |
-
if (position) {
|
| 1223 |
-
// deep extending converts arrays to objects in jQuery <= 1.3.2 :-(
|
| 1224 |
-
// if (typeof position == 'string' || $.isArray(position)) {
|
| 1225 |
-
// myAt = $.isArray(position) ? position : position.split(' ');
|
| 1226 |
-
|
| 1227 |
-
if (typeof position === 'string' || (typeof position === 'object' && '0' in position)) {
|
| 1228 |
-
myAt = position.split ? position.split(' ') : [position[0], position[1]];
|
| 1229 |
-
if (myAt.length === 1) {
|
| 1230 |
-
myAt[1] = myAt[0];
|
| 1231 |
-
}
|
| 1232 |
-
|
| 1233 |
-
$.each(['left', 'top'], function(i, offsetPosition) {
|
| 1234 |
-
if (+myAt[i] === myAt[i]) {
|
| 1235 |
-
offset[i] = myAt[i];
|
| 1236 |
-
myAt[i] = offsetPosition;
|
| 1237 |
-
}
|
| 1238 |
-
});
|
| 1239 |
-
|
| 1240 |
-
position = {
|
| 1241 |
-
my: myAt.join(" "),
|
| 1242 |
-
at: myAt.join(" "),
|
| 1243 |
-
offset: offset.join(" ")
|
| 1244 |
-
};
|
| 1245 |
-
}
|
| 1246 |
-
|
| 1247 |
-
position = $.extend({}, $.ui.dialog.prototype.options.position, position);
|
| 1248 |
-
} else {
|
| 1249 |
-
position = $.ui.dialog.prototype.options.position;
|
| 1250 |
-
}
|
| 1251 |
-
|
| 1252 |
-
// need to show the dialog to get the actual offset in the position plugin
|
| 1253 |
-
isVisible = this.uiDialog.is(':visible');
|
| 1254 |
-
if (!isVisible) {
|
| 1255 |
-
this.uiDialog.show();
|
| 1256 |
-
}
|
| 1257 |
-
this.uiDialog
|
| 1258 |
-
// workaround for jQuery bug #5781 http://dev.jquery.com/ticket/5781
|
| 1259 |
-
.css({ top: 0, left: 0 })
|
| 1260 |
-
.position(position);
|
| 1261 |
-
if (!isVisible) {
|
| 1262 |
-
this.uiDialog.hide();
|
| 1263 |
-
}
|
| 1264 |
-
},
|
| 1265 |
-
|
| 1266 |
-
_setOption: function(key, value){
|
| 1267 |
-
var self = this,
|
| 1268 |
-
uiDialog = self.uiDialog,
|
| 1269 |
-
isResizable = uiDialog.is(':data(resizable)'),
|
| 1270 |
-
resize = false;
|
| 1271 |
-
|
| 1272 |
-
switch (key) {
|
| 1273 |
-
//handling of deprecated beforeclose (vs beforeClose) option
|
| 1274 |
-
//Ticket #4669 http://dev.jqueryui.com/ticket/4669
|
| 1275 |
-
//TODO: remove in 1.9pre
|
| 1276 |
-
case "beforeclose":
|
| 1277 |
-
key = "beforeClose";
|
| 1278 |
-
break;
|
| 1279 |
-
case "buttons":
|
| 1280 |
-
self._createButtons(value);
|
| 1281 |
-
resize = true;
|
| 1282 |
-
break;
|
| 1283 |
-
case "closeText":
|
| 1284 |
-
// convert whatever was passed in to a string, for text() to not throw up
|
| 1285 |
-
self.uiDialogTitlebarCloseText.text("" + value);
|
| 1286 |
-
break;
|
| 1287 |
-
case "dialogClass":
|
| 1288 |
-
uiDialog
|
| 1289 |
-
.removeClass(self.options.dialogClass)
|
| 1290 |
-
.addClass(uiDialogClasses + value);
|
| 1291 |
-
break;
|
| 1292 |
-
case "disabled":
|
| 1293 |
-
if (value) {
|
| 1294 |
-
uiDialog.addClass('ui-dialog-disabled');
|
| 1295 |
-
} else {
|
| 1296 |
-
uiDialog.removeClass('ui-dialog-disabled');
|
| 1297 |
-
}
|
| 1298 |
-
break;
|
| 1299 |
-
case "draggable":
|
| 1300 |
-
if (value) {
|
| 1301 |
-
self._makeDraggable();
|
| 1302 |
-
} else {
|
| 1303 |
-
uiDialog.draggable('destroy');
|
| 1304 |
-
}
|
| 1305 |
-
break;
|
| 1306 |
-
case "height":
|
| 1307 |
-
resize = true;
|
| 1308 |
-
break;
|
| 1309 |
-
case "maxHeight":
|
| 1310 |
-
if (isResizable) {
|
| 1311 |
-
uiDialog.resizable('option', 'maxHeight', value);
|
| 1312 |
-
}
|
| 1313 |
-
resize = true;
|
| 1314 |
-
break;
|
| 1315 |
-
case "maxWidth":
|
| 1316 |
-
if (isResizable) {
|
| 1317 |
-
uiDialog.resizable('option', 'maxWidth', value);
|
| 1318 |
-
}
|
| 1319 |
-
resize = true;
|
| 1320 |
-
break;
|
| 1321 |
-
case "minHeight":
|
| 1322 |
-
if (isResizable) {
|
| 1323 |
-
uiDialog.resizable('option', 'minHeight', value);
|
| 1324 |
-
}
|
| 1325 |
-
resize = true;
|
| 1326 |
-
break;
|
| 1327 |
-
case "minWidth":
|
| 1328 |
-
if (isResizable) {
|
| 1329 |
-
uiDialog.resizable('option', 'minWidth', value);
|
| 1330 |
-
}
|
| 1331 |
-
resize = true;
|
| 1332 |
-
break;
|
| 1333 |
-
case "position":
|
| 1334 |
-
self._position(value);
|
| 1335 |
-
break;
|
| 1336 |
-
case "resizable":
|
| 1337 |
-
// currently resizable, becoming non-resizable
|
| 1338 |
-
if (isResizable && !value) {
|
| 1339 |
-
uiDialog.resizable('destroy');
|
| 1340 |
-
}
|
| 1341 |
-
|
| 1342 |
-
// currently resizable, changing handles
|
| 1343 |
-
if (isResizable && typeof value === 'string') {
|
| 1344 |
-
uiDialog.resizable('option', 'handles', value);
|
| 1345 |
-
}
|
| 1346 |
-
|
| 1347 |
-
// currently non-resizable, becoming resizable
|
| 1348 |
-
if (!isResizable && value !== false) {
|
| 1349 |
-
self._makeResizable(value);
|
| 1350 |
-
}
|
| 1351 |
-
break;
|
| 1352 |
-
case "title":
|
| 1353 |
-
// convert whatever was passed in o a string, for html() to not throw up
|
| 1354 |
-
$(".ui-dialog-title", self.uiDialogTitlebar).html("" + (value || ' '));
|
| 1355 |
-
break;
|
| 1356 |
-
case "width":
|
| 1357 |
-
resize = true;
|
| 1358 |
-
break;
|
| 1359 |
-
}
|
| 1360 |
-
|
| 1361 |
-
$.Widget.prototype._setOption.apply(self, arguments);
|
| 1362 |
-
if (resize) {
|
| 1363 |
-
self._size();
|
| 1364 |
-
}
|
| 1365 |
-
},
|
| 1366 |
-
|
| 1367 |
-
_size: function() {
|
| 1368 |
-
/* If the user has resized the dialog, the .ui-dialog and .ui-dialog-content
|
| 1369 |
-
* divs will both have width and height set, so we need to reset them
|
| 1370 |
-
*/
|
| 1371 |
-
var options = this.options,
|
| 1372 |
-
nonContentHeight;
|
| 1373 |
-
|
| 1374 |
-
// reset content sizing
|
| 1375 |
-
// hide for non content measurement because height: 0 doesn't work in IE quirks mode (see #4350)
|
| 1376 |
-
this.element.css({
|
| 1377 |
-
width: 'auto',
|
| 1378 |
-
minHeight: 0,
|
| 1379 |
-
height: 0
|
| 1380 |
-
});
|
| 1381 |
-
|
| 1382 |
-
if (options.minWidth > options.width) {
|
| 1383 |
-
options.width = options.minWidth;
|
| 1384 |
-
}
|
| 1385 |
-
|
| 1386 |
-
// reset wrapper sizing
|
| 1387 |
-
// determine the height of all the non-content elements
|
| 1388 |
-
nonContentHeight = this.uiDialog.css({
|
| 1389 |
-
height: 'auto',
|
| 1390 |
-
width: options.width
|
| 1391 |
-
})
|
| 1392 |
-
.height();
|
| 1393 |
-
|
| 1394 |
-
this.element
|
| 1395 |
-
.css(options.height === 'auto' ? {
|
| 1396 |
-
minHeight: Math.max(options.minHeight - nonContentHeight, 0),
|
| 1397 |
-
height: 'auto'
|
| 1398 |
-
} : {
|
| 1399 |
-
minHeight: 0,
|
| 1400 |
-
height: Math.max(options.height - nonContentHeight, 0)
|
| 1401 |
-
})
|
| 1402 |
-
.show();
|
| 1403 |
-
|
| 1404 |
-
if (this.uiDialog.is(':data(resizable)')) {
|
| 1405 |
-
this.uiDialog.resizable('option', 'minHeight', this._minHeight());
|
| 1406 |
-
}
|
| 1407 |
-
}
|
| 1408 |
-
});
|
| 1409 |
-
|
| 1410 |
-
$.extend($.ui.dialog, {
|
| 1411 |
-
version: "1.8.4",
|
| 1412 |
-
|
| 1413 |
-
uuid: 0,
|
| 1414 |
-
maxZ: 0,
|
| 1415 |
-
|
| 1416 |
-
getTitleId: function($el) {
|
| 1417 |
-
var id = $el.attr('id');
|
| 1418 |
-
if (!id) {
|
| 1419 |
-
this.uuid += 1;
|
| 1420 |
-
id = this.uuid;
|
| 1421 |
-
}
|
| 1422 |
-
return 'ui-dialog-title-' + id;
|
| 1423 |
-
},
|
| 1424 |
-
|
| 1425 |
-
overlay: function(dialog) {
|
| 1426 |
-
this.$el = $.ui.dialog.overlay.create(dialog);
|
| 1427 |
-
}
|
| 1428 |
-
});
|
| 1429 |
-
|
| 1430 |
-
$.extend($.ui.dialog.overlay, {
|
| 1431 |
-
instances: [],
|
| 1432 |
-
// reuse old instances due to IE memory leak with alpha transparency (see #5185)
|
| 1433 |
-
oldInstances: [],
|
| 1434 |
-
maxZ: 0,
|
| 1435 |
-
events: $.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','),
|
| 1436 |
-
function(event) { return event + '.dialog-overlay'; }).join(' '),
|
| 1437 |
-
create: function(dialog) {
|
| 1438 |
-
if (this.instances.length === 0) {
|
| 1439 |
-
// prevent use of anchors and inputs
|
| 1440 |
-
// we use a setTimeout in case the overlay is created from an
|
| 1441 |
-
// event that we're going to be cancelling (see #2804)
|
| 1442 |
-
setTimeout(function() {
|
| 1443 |
-
// handle $(el).dialog().dialog('close') (see #4065)
|
| 1444 |
-
if ($.ui.dialog.overlay.instances.length) {
|
| 1445 |
-
$(document).bind($.ui.dialog.overlay.events, function(event) {
|
| 1446 |
-
// stop events if the z-index of the target is < the z-index of the overlay
|
| 1447 |
-
return ($(event.target).zIndex() >= $.ui.dialog.overlay.maxZ);
|
| 1448 |
-
});
|
| 1449 |
-
}
|
| 1450 |
-
}, 1);
|
| 1451 |
-
|
| 1452 |
-
// allow closing by pressing the escape key
|
| 1453 |
-
$(document).bind('keydown.dialog-overlay', function(event) {
|
| 1454 |
-
if (dialog.options.closeOnEscape && event.keyCode &&
|
| 1455 |
-
event.keyCode === $.ui.keyCode.ESCAPE) {
|
| 1456 |
-
|
| 1457 |
-
dialog.close(event);
|
| 1458 |
-
event.preventDefault();
|
| 1459 |
-
}
|
| 1460 |
-
});
|
| 1461 |
-
|
| 1462 |
-
// handle window resize
|
| 1463 |
-
$(window).bind('resize.dialog-overlay', $.ui.dialog.overlay.resize);
|
| 1464 |
-
}
|
| 1465 |
-
|
| 1466 |
-
var $el = (this.oldInstances.pop() || $('<div></div>').addClass('ui-widget-overlay'))
|
| 1467 |
-
.appendTo(document.body)
|
| 1468 |
-
.css({
|
| 1469 |
-
width: this.width(),
|
| 1470 |
-
height: this.height()
|
| 1471 |
-
});
|
| 1472 |
-
|
| 1473 |
-
if ($.fn.bgiframe) {
|
| 1474 |
-
$el.bgiframe();
|
| 1475 |
-
}
|
| 1476 |
-
|
| 1477 |
-
this.instances.push($el);
|
| 1478 |
-
return $el;
|
| 1479 |
-
},
|
| 1480 |
-
|
| 1481 |
-
destroy: function($el) {
|
| 1482 |
-
this.oldInstances.push(this.instances.splice($.inArray($el, this.instances), 1)[0]);
|
| 1483 |
-
|
| 1484 |
-
if (this.instances.length === 0) {
|
| 1485 |
-
$([document, window]).unbind('.dialog-overlay');
|
| 1486 |
-
}
|
| 1487 |
-
|
| 1488 |
-
$el.remove();
|
| 1489 |
-
|
| 1490 |
-
// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
|
| 1491 |
-
var maxZ = 0;
|
| 1492 |
-
$.each(this.instances, function() {
|
| 1493 |
-
maxZ = Math.max(maxZ, this.css('z-index'));
|
| 1494 |
-
});
|
| 1495 |
-
this.maxZ = maxZ;
|
| 1496 |
-
},
|
| 1497 |
-
|
| 1498 |
-
height: function() {
|
| 1499 |
-
var scrollHeight,
|
| 1500 |
-
offsetHeight;
|
| 1501 |
-
// handle IE 6
|
| 1502 |
-
if ($.browser.msie && $.browser.version < 7) {
|
| 1503 |
-
scrollHeight = Math.max(
|
| 1504 |
-
document.documentElement.scrollHeight,
|
| 1505 |
-
document.body.scrollHeight
|
| 1506 |
-
);
|
| 1507 |
-
offsetHeight = Math.max(
|
| 1508 |
-
document.documentElement.offsetHeight,
|
| 1509 |
-
document.body.offsetHeight
|
| 1510 |
-
);
|
| 1511 |
-
|
| 1512 |
-
if (scrollHeight < offsetHeight) {
|
| 1513 |
-
return $(window).height() + 'px';
|
| 1514 |
-
} else {
|
| 1515 |
-
return scrollHeight + 'px';
|
| 1516 |
-
}
|
| 1517 |
-
// handle "good" browsers
|
| 1518 |
-
} else {
|
| 1519 |
-
return $(document).height() + 'px';
|
| 1520 |
-
}
|
| 1521 |
-
},
|
| 1522 |
-
|
| 1523 |
-
width: function() {
|
| 1524 |
-
var scrollWidth,
|
| 1525 |
-
offsetWidth;
|
| 1526 |
-
// handle IE 6
|
| 1527 |
-
if ($.browser.msie && $.browser.version < 7) {
|
| 1528 |
-
scrollWidth = Math.max(
|
| 1529 |
-
document.documentElement.scrollWidth,
|
| 1530 |
-
document.body.scrollWidth
|
| 1531 |
-
);
|
| 1532 |
-
offsetWidth = Math.max(
|
| 1533 |
-
document.documentElement.offsetWidth,
|
| 1534 |
-
document.body.offsetWidth
|
| 1535 |
-
);
|
| 1536 |
-
|
| 1537 |
-
if (scrollWidth < offsetWidth) {
|
| 1538 |
-
return $(window).width() + 'px';
|
| 1539 |
-
} else {
|
| 1540 |
-
return scrollWidth + 'px';
|
| 1541 |
-
}
|
| 1542 |
-
// handle "good" browsers
|
| 1543 |
-
} else {
|
| 1544 |
-
return $(document).width() + 'px';
|
| 1545 |
-
}
|
| 1546 |
-
},
|
| 1547 |
-
|
| 1548 |
-
resize: function() {
|
| 1549 |
-
/* If the dialog is draggable and the user drags it past the
|
| 1550 |
-
* right edge of the window, the document becomes wider so we
|
| 1551 |
-
* need to stretch the overlay. If the user then drags the
|
| 1552 |
-
* dialog back to the left, the document will become narrower,
|
| 1553 |
-
* so we need to shrink the overlay to the appropriate size.
|
| 1554 |
-
* This is handled by shrinking the overlay before setting it
|
| 1555 |
-
* to the full document size.
|
| 1556 |
-
*/
|
| 1557 |
-
var $overlays = $([]);
|
| 1558 |
-
$.each($.ui.dialog.overlay.instances, function() {
|
| 1559 |
-
$overlays = $overlays.add(this);
|
| 1560 |
-
});
|
| 1561 |
-
|
| 1562 |
-
$overlays.css({
|
| 1563 |
-
width: 0,
|
| 1564 |
-
height: 0
|
| 1565 |
-
}).css({
|
| 1566 |
-
width: $.ui.dialog.overlay.width(),
|
| 1567 |
-
height: $.ui.dialog.overlay.height()
|
| 1568 |
-
});
|
| 1569 |
-
}
|
| 1570 |
-
});
|
| 1571 |
-
|
| 1572 |
-
$.extend($.ui.dialog.overlay.prototype, {
|
| 1573 |
-
destroy: function() {
|
| 1574 |
-
$.ui.dialog.overlay.destroy(this.$el);
|
| 1575 |
-
}
|
| 1576 |
-
});
|
| 1577 |
-
|
| 1578 |
-
}(jQuery));
|
| 1 |
+
/*!
|
| 2 |
+
* jQuery UI 1.8.4
|
| 3 |
+
*
|
| 4 |
+
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 5 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 6 |
+
* http://jquery.org/license
|
| 7 |
+
*
|
| 8 |
+
* http://docs.jquery.com/UI
|
| 9 |
+
*/
|
| 10 |
+
(function( $, undefined ) {
|
| 11 |
+
|
| 12 |
+
// prevent duplicate loading
|
| 13 |
+
// this is only a problem because we proxy existing functions
|
| 14 |
+
// and we don't want to double proxy them
|
| 15 |
+
$.ui = $.ui || {};
|
| 16 |
+
if ( $.ui.version ) {
|
| 17 |
+
return;
|
| 18 |
+
}
|
| 19 |
+
|
| 20 |
+
//Helper functions and ui object
|
| 21 |
+
$.extend( $.ui, {
|
| 22 |
+
version: "1.8.4",
|
| 23 |
+
|
| 24 |
+
// $.ui.plugin is deprecated. Use the proxy pattern instead.
|
| 25 |
+
plugin: {
|
| 26 |
+
add: function( module, option, set ) {
|
| 27 |
+
var proto = $.ui[ module ].prototype;
|
| 28 |
+
for ( var i in set ) {
|
| 29 |
+
proto.plugins[ i ] = proto.plugins[ i ] || [];
|
| 30 |
+
proto.plugins[ i ].push( [ option, set[ i ] ] );
|
| 31 |
+
}
|
| 32 |
+
},
|
| 33 |
+
call: function( instance, name, args ) {
|
| 34 |
+
var set = instance.plugins[ name ];
|
| 35 |
+
if ( !set || !instance.element[ 0 ].parentNode ) {
|
| 36 |
+
return;
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
for ( var i = 0; i < set.length; i++ ) {
|
| 40 |
+
if ( instance.options[ set[ i ][ 0 ] ] ) {
|
| 41 |
+
set[ i ][ 1 ].apply( instance.element, args );
|
| 42 |
+
}
|
| 43 |
+
}
|
| 44 |
+
}
|
| 45 |
+
},
|
| 46 |
+
|
| 47 |
+
contains: function( a, b ) {
|
| 48 |
+
return document.compareDocumentPosition ?
|
| 49 |
+
a.compareDocumentPosition( b ) & 16 :
|
| 50 |
+
a !== b && a.contains( b );
|
| 51 |
+
},
|
| 52 |
+
|
| 53 |
+
hasScroll: function( el, a ) {
|
| 54 |
+
|
| 55 |
+
//If overflow is hidden, the element might have extra content, but the user wants to hide it
|
| 56 |
+
if ( $( el ).css( "overflow" ) === "hidden") {
|
| 57 |
+
return false;
|
| 58 |
+
}
|
| 59 |
+
|
| 60 |
+
var scroll = ( a && a === "left" ) ? "scrollLeft" : "scrollTop",
|
| 61 |
+
has = false;
|
| 62 |
+
|
| 63 |
+
if ( el[ scroll ] > 0 ) {
|
| 64 |
+
return true;
|
| 65 |
+
}
|
| 66 |
+
|
| 67 |
+
// TODO: determine which cases actually cause this to happen
|
| 68 |
+
// if the element doesn't have the scroll set, see if it's possible to
|
| 69 |
+
// set the scroll
|
| 70 |
+
el[ scroll ] = 1;
|
| 71 |
+
has = ( el[ scroll ] > 0 );
|
| 72 |
+
el[ scroll ] = 0;
|
| 73 |
+
return has;
|
| 74 |
+
},
|
| 75 |
+
|
| 76 |
+
isOverAxis: function( x, reference, size ) {
|
| 77 |
+
//Determines when x coordinate is over "b" element axis
|
| 78 |
+
return ( x > reference ) && ( x < ( reference + size ) );
|
| 79 |
+
},
|
| 80 |
+
|
| 81 |
+
isOver: function( y, x, top, left, height, width ) {
|
| 82 |
+
//Determines when x, y coordinates is over "b" element
|
| 83 |
+
return $.ui.isOverAxis( y, top, height ) && $.ui.isOverAxis( x, left, width );
|
| 84 |
+
},
|
| 85 |
+
|
| 86 |
+
keyCode: {
|
| 87 |
+
ALT: 18,
|
| 88 |
+
BACKSPACE: 8,
|
| 89 |
+
CAPS_LOCK: 20,
|
| 90 |
+
COMMA: 188,
|
| 91 |
+
COMMAND: 91,
|
| 92 |
+
COMMAND_LEFT: 91, // COMMAND
|
| 93 |
+
COMMAND_RIGHT: 93,
|
| 94 |
+
CONTROL: 17,
|
| 95 |
+
DELETE: 46,
|
| 96 |
+
DOWN: 40,
|
| 97 |
+
END: 35,
|
| 98 |
+
ENTER: 13,
|
| 99 |
+
ESCAPE: 27,
|
| 100 |
+
HOME: 36,
|
| 101 |
+
INSERT: 45,
|
| 102 |
+
LEFT: 37,
|
| 103 |
+
MENU: 93, // COMMAND_RIGHT
|
| 104 |
+
NUMPAD_ADD: 107,
|
| 105 |
+
NUMPAD_DECIMAL: 110,
|
| 106 |
+
NUMPAD_DIVIDE: 111,
|
| 107 |
+
NUMPAD_ENTER: 108,
|
| 108 |
+
NUMPAD_MULTIPLY: 106,
|
| 109 |
+
NUMPAD_SUBTRACT: 109,
|
| 110 |
+
PAGE_DOWN: 34,
|
| 111 |
+
PAGE_UP: 33,
|
| 112 |
+
PERIOD: 190,
|
| 113 |
+
RIGHT: 39,
|
| 114 |
+
SHIFT: 16,
|
| 115 |
+
SPACE: 32,
|
| 116 |
+
TAB: 9,
|
| 117 |
+
UP: 38,
|
| 118 |
+
WINDOWS: 91 // COMMAND
|
| 119 |
+
}
|
| 120 |
+
});
|
| 121 |
+
|
| 122 |
+
//jQuery plugins
|
| 123 |
+
$.fn.extend({
|
| 124 |
+
_focus: $.fn.focus,
|
| 125 |
+
focus: function( delay, fn ) {
|
| 126 |
+
return typeof delay === "number" ?
|
| 127 |
+
this.each(function() {
|
| 128 |
+
var elem = this;
|
| 129 |
+
setTimeout(function() {
|
| 130 |
+
$( elem ).focus();
|
| 131 |
+
if ( fn ) {
|
| 132 |
+
fn.call( elem );
|
| 133 |
+
}
|
| 134 |
+
}, delay );
|
| 135 |
+
}) :
|
| 136 |
+
this._focus.apply( this, arguments );
|
| 137 |
+
},
|
| 138 |
+
|
| 139 |
+
enableSelection: function() {
|
| 140 |
+
return this
|
| 141 |
+
.attr( "unselectable", "off" )
|
| 142 |
+
.css( "MozUserSelect", "" );
|
| 143 |
+
},
|
| 144 |
+
|
| 145 |
+
disableSelection: function() {
|
| 146 |
+
return this
|
| 147 |
+
.attr( "unselectable", "on" )
|
| 148 |
+
.css( "MozUserSelect", "none" );
|
| 149 |
+
},
|
| 150 |
+
|
| 151 |
+
scrollParent: function() {
|
| 152 |
+
var scrollParent;
|
| 153 |
+
if (($.browser.msie && (/(static|relative)/).test(this.css('position'))) || (/absolute/).test(this.css('position'))) {
|
| 154 |
+
scrollParent = this.parents().filter(function() {
|
| 155 |
+
return (/(relative|absolute|fixed)/).test($.curCSS(this,'position',1)) && (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));
|
| 156 |
+
}).eq(0);
|
| 157 |
+
} else {
|
| 158 |
+
scrollParent = this.parents().filter(function() {
|
| 159 |
+
return (/(auto|scroll)/).test($.curCSS(this,'overflow',1)+$.curCSS(this,'overflow-y',1)+$.curCSS(this,'overflow-x',1));
|
| 160 |
+
}).eq(0);
|
| 161 |
+
}
|
| 162 |
+
|
| 163 |
+
return (/fixed/).test(this.css('position')) || !scrollParent.length ? $(document) : scrollParent;
|
| 164 |
+
},
|
| 165 |
+
|
| 166 |
+
zIndex: function( zIndex ) {
|
| 167 |
+
if ( zIndex !== undefined ) {
|
| 168 |
+
return this.css( "zIndex", zIndex );
|
| 169 |
+
}
|
| 170 |
+
|
| 171 |
+
if ( this.length ) {
|
| 172 |
+
var elem = $( this[ 0 ] ), position, value;
|
| 173 |
+
while ( elem.length && elem[ 0 ] !== document ) {
|
| 174 |
+
// Ignore z-index if position is set to a value where z-index is ignored by the browser
|
| 175 |
+
// This makes behavior of this function consistent across browsers
|
| 176 |
+
// WebKit always returns auto if the element is positioned
|
| 177 |
+
position = elem.css( "position" );
|
| 178 |
+
if ( position === "absolute" || position === "relative" || position === "fixed" ) {
|
| 179 |
+
// IE returns 0 when zIndex is not specified
|
| 180 |
+
// other browsers return a string
|
| 181 |
+
// we ignore the case of nested elements with an explicit value of 0
|
| 182 |
+
// <div style="z-index: -10;"><div style="z-index: 0;"></div></div>
|
| 183 |
+
value = parseInt( elem.css( "zIndex" ) );
|
| 184 |
+
if ( !isNaN( value ) && value != 0 ) {
|
| 185 |
+
return value;
|
| 186 |
+
}
|
| 187 |
+
}
|
| 188 |
+
elem = elem.parent();
|
| 189 |
+
}
|
| 190 |
+
}
|
| 191 |
+
|
| 192 |
+
return 0;
|
| 193 |
+
}
|
| 194 |
+
});
|
| 195 |
+
|
| 196 |
+
$.each( [ "Width", "Height" ], function( i, name ) {
|
| 197 |
+
var side = name === "Width" ? [ "Left", "Right" ] : [ "Top", "Bottom" ],
|
| 198 |
+
type = name.toLowerCase(),
|
| 199 |
+
orig = {
|
| 200 |
+
innerWidth: $.fn.innerWidth,
|
| 201 |
+
innerHeight: $.fn.innerHeight,
|
| 202 |
+
outerWidth: $.fn.outerWidth,
|
| 203 |
+
outerHeight: $.fn.outerHeight
|
| 204 |
+
};
|
| 205 |
+
|
| 206 |
+
function reduce( elem, size, border, margin ) {
|
| 207 |
+
$.each( side, function() {
|
| 208 |
+
size -= parseFloat( $.curCSS( elem, "padding" + this, true) ) || 0;
|
| 209 |
+
if ( border ) {
|
| 210 |
+
size -= parseFloat( $.curCSS( elem, "border" + this + "Width", true) ) || 0;
|
| 211 |
+
}
|
| 212 |
+
if ( margin ) {
|
| 213 |
+
size -= parseFloat( $.curCSS( elem, "margin" + this, true) ) || 0;
|
| 214 |
+
}
|
| 215 |
+
});
|
| 216 |
+
return size;
|
| 217 |
+
}
|
| 218 |
+
|
| 219 |
+
$.fn[ "inner" + name ] = function( size ) {
|
| 220 |
+
if ( size === undefined ) {
|
| 221 |
+
return orig[ "inner" + name ].call( this );
|
| 222 |
+
}
|
| 223 |
+
|
| 224 |
+
return this.each(function() {
|
| 225 |
+
$.style( this, type, reduce( this, size ) + "px" );
|
| 226 |
+
});
|
| 227 |
+
};
|
| 228 |
+
|
| 229 |
+
$.fn[ "outer" + name] = function( size, margin ) {
|
| 230 |
+
if ( typeof size !== "number" ) {
|
| 231 |
+
return orig[ "outer" + name ].call( this, size );
|
| 232 |
+
}
|
| 233 |
+
|
| 234 |
+
return this.each(function() {
|
| 235 |
+
$.style( this, type, reduce( this, size, true, margin ) + "px" );
|
| 236 |
+
});
|
| 237 |
+
};
|
| 238 |
+
});
|
| 239 |
+
|
| 240 |
+
//Additional selectors
|
| 241 |
+
function visible( element ) {
|
| 242 |
+
return !$( element ).parents().andSelf().filter(function() {
|
| 243 |
+
return $.curCSS( this, "visibility" ) === "hidden" ||
|
| 244 |
+
$.expr.filters.hidden( this );
|
| 245 |
+
}).length;
|
| 246 |
+
}
|
| 247 |
+
|
| 248 |
+
$.extend( $.expr[ ":" ], {
|
| 249 |
+
data: function( elem, i, match ) {
|
| 250 |
+
return !!$.data( elem, match[ 3 ] );
|
| 251 |
+
},
|
| 252 |
+
|
| 253 |
+
focusable: function( element ) {
|
| 254 |
+
var nodeName = element.nodeName.toLowerCase(),
|
| 255 |
+
tabIndex = $.attr( element, "tabindex" );
|
| 256 |
+
if ( "area" === nodeName ) {
|
| 257 |
+
var map = element.parentNode,
|
| 258 |
+
mapName = map.name,
|
| 259 |
+
img;
|
| 260 |
+
if ( !element.href || !mapName || map.nodeName.toLowerCase() !== "map" ) {
|
| 261 |
+
return false;
|
| 262 |
+
}
|
| 263 |
+
img = $( "img[usemap=#" + mapName + "]" )[0];
|
| 264 |
+
return !!img && visible( img );
|
| 265 |
+
}
|
| 266 |
+
return ( /input|select|textarea|button|object/.test( nodeName )
|
| 267 |
+
? !element.disabled
|
| 268 |
+
: "a" == nodeName
|
| 269 |
+
? element.href || !isNaN( tabIndex )
|
| 270 |
+
: !isNaN( tabIndex ))
|
| 271 |
+
// the element and all of its ancestors must be visible
|
| 272 |
+
&& visible( element );
|
| 273 |
+
},
|
| 274 |
+
|
| 275 |
+
tabbable: function( element ) {
|
| 276 |
+
var tabIndex = $.attr( element, "tabindex" );
|
| 277 |
+
return ( isNaN( tabIndex ) || tabIndex >= 0 ) && $( element ).is( ":focusable" );
|
| 278 |
+
}
|
| 279 |
+
});
|
| 280 |
+
|
| 281 |
+
})( jQuery );
|
| 282 |
+
/*!
|
| 283 |
+
* jQuery UI Widget 1.8.4
|
| 284 |
+
*
|
| 285 |
+
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 286 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 287 |
+
* http://jquery.org/license
|
| 288 |
+
*
|
| 289 |
+
* http://docs.jquery.com/UI/Widget
|
| 290 |
+
*/
|
| 291 |
+
(function( $, undefined ) {
|
| 292 |
+
|
| 293 |
+
var _remove = $.fn.remove;
|
| 294 |
+
|
| 295 |
+
$.fn.remove = function( selector, keepData ) {
|
| 296 |
+
return this.each(function() {
|
| 297 |
+
if ( !keepData ) {
|
| 298 |
+
if ( !selector || $.filter( selector, [ this ] ).length ) {
|
| 299 |
+
$( "*", this ).add( [ this ] ).each(function() {
|
| 300 |
+
$( this ).triggerHandler( "remove" );
|
| 301 |
+
});
|
| 302 |
+
}
|
| 303 |
+
}
|
| 304 |
+
return _remove.call( $(this), selector, keepData );
|
| 305 |
+
});
|
| 306 |
+
};
|
| 307 |
+
|
| 308 |
+
$.widget = function( name, base, prototype ) {
|
| 309 |
+
var namespace = name.split( "." )[ 0 ],
|
| 310 |
+
fullName;
|
| 311 |
+
name = name.split( "." )[ 1 ];
|
| 312 |
+
fullName = namespace + "-" + name;
|
| 313 |
+
|
| 314 |
+
if ( !prototype ) {
|
| 315 |
+
prototype = base;
|
| 316 |
+
base = $.Widget;
|
| 317 |
+
}
|
| 318 |
+
|
| 319 |
+
// create selector for plugin
|
| 320 |
+
$.expr[ ":" ][ fullName ] = function( elem ) {
|
| 321 |
+
return !!$.data( elem, name );
|
| 322 |
+
};
|
| 323 |
+
|
| 324 |
+
$[ namespace ] = $[ namespace ] || {};
|
| 325 |
+
$[ namespace ][ name ] = function( options, element ) {
|
| 326 |
+
// allow instantiation without initializing for simple inheritance
|
| 327 |
+
if ( arguments.length ) {
|
| 328 |
+
this._createWidget( options, element );
|
| 329 |
+
}
|
| 330 |
+
};
|
| 331 |
+
|
| 332 |
+
var basePrototype = new base();
|
| 333 |
+
// we need to make the options hash a property directly on the new instance
|
| 334 |
+
// otherwise we'll modify the options hash on the prototype that we're
|
| 335 |
+
// inheriting from
|
| 336 |
+
// $.each( basePrototype, function( key, val ) {
|
| 337 |
+
// if ( $.isPlainObject(val) ) {
|
| 338 |
+
// basePrototype[ key ] = $.extend( {}, val );
|
| 339 |
+
// }
|
| 340 |
+
// });
|
| 341 |
+
basePrototype.options = $.extend( true, {}, basePrototype.options );
|
| 342 |
+
$[ namespace ][ name ].prototype = $.extend( true, basePrototype, {
|
| 343 |
+
namespace: namespace,
|
| 344 |
+
widgetName: name,
|
| 345 |
+
widgetEventPrefix: $[ namespace ][ name ].prototype.widgetEventPrefix || name,
|
| 346 |
+
widgetBaseClass: fullName
|
| 347 |
+
}, prototype );
|
| 348 |
+
|
| 349 |
+
$.widget.bridge( name, $[ namespace ][ name ] );
|
| 350 |
+
};
|
| 351 |
+
|
| 352 |
+
$.widget.bridge = function( name, object ) {
|
| 353 |
+
$.fn[ name ] = function( options ) {
|
| 354 |
+
var isMethodCall = typeof options === "string",
|
| 355 |
+
args = Array.prototype.slice.call( arguments, 1 ),
|
| 356 |
+
returnValue = this;
|
| 357 |
+
|
| 358 |
+
// allow multiple hashes to be passed on init
|
| 359 |
+
options = !isMethodCall && args.length ?
|
| 360 |
+
$.extend.apply( null, [ true, options ].concat(args) ) :
|
| 361 |
+
options;
|
| 362 |
+
|
| 363 |
+
// prevent calls to internal methods
|
| 364 |
+
if ( isMethodCall && options.substring( 0, 1 ) === "_" ) {
|
| 365 |
+
return returnValue;
|
| 366 |
+
}
|
| 367 |
+
|
| 368 |
+
if ( isMethodCall ) {
|
| 369 |
+
this.each(function() {
|
| 370 |
+
var instance = $.data( this, name ),
|
| 371 |
+
methodValue = instance && $.isFunction( instance[options] ) ?
|
| 372 |
+
instance[ options ].apply( instance, args ) :
|
| 373 |
+
instance;
|
| 374 |
+
if ( methodValue !== instance && methodValue !== undefined ) {
|
| 375 |
+
returnValue = methodValue;
|
| 376 |
+
return false;
|
| 377 |
+
}
|
| 378 |
+
});
|
| 379 |
+
} else {
|
| 380 |
+
this.each(function() {
|
| 381 |
+
var instance = $.data( this, name );
|
| 382 |
+
if ( instance ) {
|
| 383 |
+
if ( options ) {
|
| 384 |
+
instance.option( options );
|
| 385 |
+
}
|
| 386 |
+
instance._init();
|
| 387 |
+
} else {
|
| 388 |
+
$.data( this, name, new object( options, this ) );
|
| 389 |
+
}
|
| 390 |
+
});
|
| 391 |
+
}
|
| 392 |
+
|
| 393 |
+
return returnValue;
|
| 394 |
+
};
|
| 395 |
+
};
|
| 396 |
+
|
| 397 |
+
$.Widget = function( options, element ) {
|
| 398 |
+
// allow instantiation without initializing for simple inheritance
|
| 399 |
+
if ( arguments.length ) {
|
| 400 |
+
this._createWidget( options, element );
|
| 401 |
+
}
|
| 402 |
+
};
|
| 403 |
+
|
| 404 |
+
$.Widget.prototype = {
|
| 405 |
+
widgetName: "widget",
|
| 406 |
+
widgetEventPrefix: "",
|
| 407 |
+
options: {
|
| 408 |
+
disabled: false
|
| 409 |
+
},
|
| 410 |
+
_createWidget: function( options, element ) {
|
| 411 |
+
// $.widget.bridge stores the plugin instance, but we do it anyway
|
| 412 |
+
// so that it's stored even before the _create function runs
|
| 413 |
+
$.data( element, this.widgetName, this );
|
| 414 |
+
this.element = $( element );
|
| 415 |
+
this.options = $.extend( true, {},
|
| 416 |
+
this.options,
|
| 417 |
+
$.metadata && $.metadata.get( element )[ this.widgetName ],
|
| 418 |
+
options );
|
| 419 |
+
|
| 420 |
+
var self = this;
|
| 421 |
+
this.element.bind( "remove." + this.widgetName, function() {
|
| 422 |
+
self.destroy();
|
| 423 |
+
});
|
| 424 |
+
|
| 425 |
+
this._create();
|
| 426 |
+
this._init();
|
| 427 |
+
},
|
| 428 |
+
_create: function() {},
|
| 429 |
+
_init: function() {},
|
| 430 |
+
|
| 431 |
+
destroy: function() {
|
| 432 |
+
this.element
|
| 433 |
+
.unbind( "." + this.widgetName )
|
| 434 |
+
.removeData( this.widgetName );
|
| 435 |
+
this.widget()
|
| 436 |
+
.unbind( "." + this.widgetName )
|
| 437 |
+
.removeAttr( "aria-disabled" )
|
| 438 |
+
.removeClass(
|
| 439 |
+
this.widgetBaseClass + "-disabled " +
|
| 440 |
+
"ui-state-disabled" );
|
| 441 |
+
},
|
| 442 |
+
|
| 443 |
+
widget: function() {
|
| 444 |
+
return this.element;
|
| 445 |
+
},
|
| 446 |
+
|
| 447 |
+
option: function( key, value ) {
|
| 448 |
+
var options = key,
|
| 449 |
+
self = this;
|
| 450 |
+
|
| 451 |
+
if ( arguments.length === 0 ) {
|
| 452 |
+
// don't return a reference to the internal hash
|
| 453 |
+
return $.extend( {}, self.options );
|
| 454 |
+
}
|
| 455 |
+
|
| 456 |
+
if (typeof key === "string" ) {
|
| 457 |
+
if ( value === undefined ) {
|
| 458 |
+
return this.options[ key ];
|
| 459 |
+
}
|
| 460 |
+
options = {};
|
| 461 |
+
options[ key ] = value;
|
| 462 |
+
}
|
| 463 |
+
|
| 464 |
+
$.each( options, function( key, value ) {
|
| 465 |
+
self._setOption( key, value );
|
| 466 |
+
});
|
| 467 |
+
|
| 468 |
+
return self;
|
| 469 |
+
},
|
| 470 |
+
_setOption: function( key, value ) {
|
| 471 |
+
this.options[ key ] = value;
|
| 472 |
+
|
| 473 |
+
if ( key === "disabled" ) {
|
| 474 |
+
this.widget()
|
| 475 |
+
[ value ? "addClass" : "removeClass"](
|
| 476 |
+
this.widgetBaseClass + "-disabled" + " " +
|
| 477 |
+
"ui-state-disabled" )
|
| 478 |
+
.attr( "aria-disabled", value );
|
| 479 |
+
}
|
| 480 |
+
|
| 481 |
+
return this;
|
| 482 |
+
},
|
| 483 |
+
|
| 484 |
+
enable: function() {
|
| 485 |
+
return this._setOption( "disabled", false );
|
| 486 |
+
},
|
| 487 |
+
disable: function() {
|
| 488 |
+
return this._setOption( "disabled", true );
|
| 489 |
+
},
|
| 490 |
+
|
| 491 |
+
_trigger: function( type, event, data ) {
|
| 492 |
+
var callback = this.options[ type ];
|
| 493 |
+
|
| 494 |
+
event = $.Event( event );
|
| 495 |
+
event.type = ( type === this.widgetEventPrefix ?
|
| 496 |
+
type :
|
| 497 |
+
this.widgetEventPrefix + type ).toLowerCase();
|
| 498 |
+
data = data || {};
|
| 499 |
+
|
| 500 |
+
// copy original event properties over to the new event
|
| 501 |
+
// this would happen if we could call $.event.fix instead of $.Event
|
| 502 |
+
// but we don't have a way to force an event to be fixed multiple times
|
| 503 |
+
if ( event.originalEvent ) {
|
| 504 |
+
for ( var i = $.event.props.length, prop; i; ) {
|
| 505 |
+
prop = $.event.props[ --i ];
|
| 506 |
+
event[ prop ] = event.originalEvent[ prop ];
|
| 507 |
+
}
|
| 508 |
+
}
|
| 509 |
+
|
| 510 |
+
this.element.trigger( event, data );
|
| 511 |
+
|
| 512 |
+
return !( $.isFunction(callback) &&
|
| 513 |
+
callback.call( this.element[0], event, data ) === false ||
|
| 514 |
+
event.isDefaultPrevented() );
|
| 515 |
+
}
|
| 516 |
+
};
|
| 517 |
+
|
| 518 |
+
})( jQuery );
|
| 519 |
+
/*
|
| 520 |
+
* jQuery UI Position 1.8.4
|
| 521 |
+
*
|
| 522 |
+
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 523 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 524 |
+
* http://jquery.org/license
|
| 525 |
+
*
|
| 526 |
+
* http://docs.jquery.com/UI/Position
|
| 527 |
+
*/
|
| 528 |
+
(function( $, undefined ) {
|
| 529 |
+
|
| 530 |
+
$.ui = $.ui || {};
|
| 531 |
+
|
| 532 |
+
var horizontalPositions = /left|center|right/,
|
| 533 |
+
horizontalDefault = "center",
|
| 534 |
+
verticalPositions = /top|center|bottom/,
|
| 535 |
+
verticalDefault = "center",
|
| 536 |
+
_position = $.fn.position,
|
| 537 |
+
_offset = $.fn.offset;
|
| 538 |
+
|
| 539 |
+
$.fn.position = function( options ) {
|
| 540 |
+
if ( !options || !options.of ) {
|
| 541 |
+
return _position.apply( this, arguments );
|
| 542 |
+
}
|
| 543 |
+
|
| 544 |
+
// make a copy, we don't want to modify arguments
|
| 545 |
+
options = $.extend( {}, options );
|
| 546 |
+
|
| 547 |
+
var target = $( options.of ),
|
| 548 |
+
collision = ( options.collision || "flip" ).split( " " ),
|
| 549 |
+
offset = options.offset ? options.offset.split( " " ) : [ 0, 0 ],
|
| 550 |
+
targetWidth,
|
| 551 |
+
targetHeight,
|
| 552 |
+
basePosition;
|
| 553 |
+
|
| 554 |
+
if ( options.of.nodeType === 9 ) {
|
| 555 |
+
targetWidth = target.width();
|
| 556 |
+
targetHeight = target.height();
|
| 557 |
+
basePosition = { top: 0, left: 0 };
|
| 558 |
+
} else if ( options.of.scrollTo && options.of.document ) {
|
| 559 |
+
targetWidth = target.width();
|
| 560 |
+
targetHeight = target.height();
|
| 561 |
+
basePosition = { top: target.scrollTop(), left: target.scrollLeft() };
|
| 562 |
+
} else if ( options.of.preventDefault ) {
|
| 563 |
+
// force left top to allow flipping
|
| 564 |
+
options.at = "left top";
|
| 565 |
+
targetWidth = targetHeight = 0;
|
| 566 |
+
basePosition = { top: options.of.pageY, left: options.of.pageX };
|
| 567 |
+
} else {
|
| 568 |
+
targetWidth = target.outerWidth();
|
| 569 |
+
targetHeight = target.outerHeight();
|
| 570 |
+
basePosition = target.offset();
|
| 571 |
+
}
|
| 572 |
+
|
| 573 |
+
// force my and at to have valid horizontal and veritcal positions
|
| 574 |
+
// if a value is missing or invalid, it will be converted to center
|
| 575 |
+
$.each( [ "my", "at" ], function() {
|
| 576 |
+
var pos = ( options[this] || "" ).split( " " );
|
| 577 |
+
if ( pos.length === 1) {
|
| 578 |
+
pos = horizontalPositions.test( pos[0] ) ?
|
| 579 |
+
pos.concat( [verticalDefault] ) :
|
| 580 |
+
verticalPositions.test( pos[0] ) ?
|
| 581 |
+
[ horizontalDefault ].concat( pos ) :
|
| 582 |
+
[ horizontalDefault, verticalDefault ];
|
| 583 |
+
}
|
| 584 |
+
pos[ 0 ] = horizontalPositions.test( pos[0] ) ? pos[ 0 ] : horizontalDefault;
|
| 585 |
+
pos[ 1 ] = verticalPositions.test( pos[1] ) ? pos[ 1 ] : verticalDefault;
|
| 586 |
+
options[ this ] = pos;
|
| 587 |
+
});
|
| 588 |
+
|
| 589 |
+
// normalize collision option
|
| 590 |
+
if ( collision.length === 1 ) {
|
| 591 |
+
collision[ 1 ] = collision[ 0 ];
|
| 592 |
+
}
|
| 593 |
+
|
| 594 |
+
// normalize offset option
|
| 595 |
+
offset[ 0 ] = parseInt( offset[0], 10 ) || 0;
|
| 596 |
+
if ( offset.length === 1 ) {
|
| 597 |
+
offset[ 1 ] = offset[ 0 ];
|
| 598 |
+
}
|
| 599 |
+
offset[ 1 ] = parseInt( offset[1], 10 ) || 0;
|
| 600 |
+
|
| 601 |
+
if ( options.at[0] === "right" ) {
|
| 602 |
+
basePosition.left += targetWidth;
|
| 603 |
+
} else if (options.at[0] === horizontalDefault ) {
|
| 604 |
+
basePosition.left += targetWidth / 2;
|
| 605 |
+
}
|
| 606 |
+
|
| 607 |
+
if ( options.at[1] === "bottom" ) {
|
| 608 |
+
basePosition.top += targetHeight;
|
| 609 |
+
} else if ( options.at[1] === verticalDefault ) {
|
| 610 |
+
basePosition.top += targetHeight / 2;
|
| 611 |
+
}
|
| 612 |
+
|
| 613 |
+
basePosition.left += offset[ 0 ];
|
| 614 |
+
basePosition.top += offset[ 1 ];
|
| 615 |
+
|
| 616 |
+
return this.each(function() {
|
| 617 |
+
var elem = $( this ),
|
| 618 |
+
elemWidth = elem.outerWidth(),
|
| 619 |
+
elemHeight = elem.outerHeight(),
|
| 620 |
+
position = $.extend( {}, basePosition );
|
| 621 |
+
|
| 622 |
+
if ( options.my[0] === "right" ) {
|
| 623 |
+
position.left -= elemWidth;
|
| 624 |
+
} else if ( options.my[0] === horizontalDefault ) {
|
| 625 |
+
position.left -= elemWidth / 2;
|
| 626 |
+
}
|
| 627 |
+
|
| 628 |
+
if ( options.my[1] === "bottom" ) {
|
| 629 |
+
position.top -= elemHeight;
|
| 630 |
+
} else if ( options.my[1] === verticalDefault ) {
|
| 631 |
+
position.top -= elemHeight / 2;
|
| 632 |
+
}
|
| 633 |
+
|
| 634 |
+
// prevent fractions (see #5280)
|
| 635 |
+
position.left = parseInt( position.left );
|
| 636 |
+
position.top = parseInt( position.top );
|
| 637 |
+
|
| 638 |
+
$.each( [ "left", "top" ], function( i, dir ) {
|
| 639 |
+
if ( $.ui.position[ collision[i] ] ) {
|
| 640 |
+
$.ui.position[ collision[i] ][ dir ]( position, {
|
| 641 |
+
targetWidth: targetWidth,
|
| 642 |
+
targetHeight: targetHeight,
|
| 643 |
+
elemWidth: elemWidth,
|
| 644 |
+
elemHeight: elemHeight,
|
| 645 |
+
offset: offset,
|
| 646 |
+
my: options.my,
|
| 647 |
+
at: options.at
|
| 648 |
+
});
|
| 649 |
+
}
|
| 650 |
+
});
|
| 651 |
+
|
| 652 |
+
if ( $.fn.bgiframe ) {
|
| 653 |
+
elem.bgiframe();
|
| 654 |
+
}
|
| 655 |
+
elem.offset( $.extend( position, { using: options.using } ) );
|
| 656 |
+
});
|
| 657 |
+
};
|
| 658 |
+
|
| 659 |
+
$.ui.position = {
|
| 660 |
+
fit: {
|
| 661 |
+
left: function( position, data ) {
|
| 662 |
+
var win = $( window ),
|
| 663 |
+
over = position.left + data.elemWidth - win.width() - win.scrollLeft();
|
| 664 |
+
position.left = over > 0 ? position.left - over : Math.max( 0, position.left );
|
| 665 |
+
},
|
| 666 |
+
top: function( position, data ) {
|
| 667 |
+
var win = $( window ),
|
| 668 |
+
over = position.top + data.elemHeight - win.height() - win.scrollTop();
|
| 669 |
+
position.top = over > 0 ? position.top - over : Math.max( 0, position.top );
|
| 670 |
+
}
|
| 671 |
+
},
|
| 672 |
+
|
| 673 |
+
flip: {
|
| 674 |
+
left: function( position, data ) {
|
| 675 |
+
if ( data.at[0] === "center" ) {
|
| 676 |
+
return;
|
| 677 |
+
}
|
| 678 |
+
var win = $( window ),
|
| 679 |
+
over = position.left + data.elemWidth - win.width() - win.scrollLeft(),
|
| 680 |
+
myOffset = data.my[ 0 ] === "left" ?
|
| 681 |
+
-data.elemWidth :
|
| 682 |
+
data.my[ 0 ] === "right" ?
|
| 683 |
+
data.elemWidth :
|
| 684 |
+
0,
|
| 685 |
+
offset = -2 * data.offset[ 0 ];
|
| 686 |
+
position.left += position.left < 0 ?
|
| 687 |
+
myOffset + data.targetWidth + offset :
|
| 688 |
+
over > 0 ?
|
| 689 |
+
myOffset - data.targetWidth + offset :
|
| 690 |
+
0;
|
| 691 |
+
},
|
| 692 |
+
top: function( position, data ) {
|
| 693 |
+
if ( data.at[1] === "center" ) {
|
| 694 |
+
return;
|
| 695 |
+
}
|
| 696 |
+
var win = $( window ),
|
| 697 |
+
over = position.top + data.elemHeight - win.height() - win.scrollTop(),
|
| 698 |
+
myOffset = data.my[ 1 ] === "top" ?
|
| 699 |
+
-data.elemHeight :
|
| 700 |
+
data.my[ 1 ] === "bottom" ?
|
| 701 |
+
data.elemHeight :
|
| 702 |
+
0,
|
| 703 |
+
atOffset = data.at[ 1 ] === "top" ?
|
| 704 |
+
data.targetHeight :
|
| 705 |
+
-data.targetHeight,
|
| 706 |
+
offset = -2 * data.offset[ 1 ];
|
| 707 |
+
position.top += position.top < 0 ?
|
| 708 |
+
myOffset + data.targetHeight + offset :
|
| 709 |
+
over > 0 ?
|
| 710 |
+
myOffset + atOffset + offset :
|
| 711 |
+
0;
|
| 712 |
+
}
|
| 713 |
+
}
|
| 714 |
+
};
|
| 715 |
+
|
| 716 |
+
// offset setter from jQuery 1.4
|
| 717 |
+
if ( !$.offset.setOffset ) {
|
| 718 |
+
$.offset.setOffset = function( elem, options ) {
|
| 719 |
+
// set position first, in-case top/left are set even on static elem
|
| 720 |
+
if ( /static/.test( $.curCSS( elem, "position" ) ) ) {
|
| 721 |
+
elem.style.position = "relative";
|
| 722 |
+
}
|
| 723 |
+
var curElem = $( elem ),
|
| 724 |
+
curOffset = curElem.offset(),
|
| 725 |
+
curTop = parseInt( $.curCSS( elem, "top", true ), 10 ) || 0,
|
| 726 |
+
curLeft = parseInt( $.curCSS( elem, "left", true ), 10) || 0,
|
| 727 |
+
props = {
|
| 728 |
+
top: (options.top - curOffset.top) + curTop,
|
| 729 |
+
left: (options.left - curOffset.left) + curLeft
|
| 730 |
+
};
|
| 731 |
+
|
| 732 |
+
if ( 'using' in options ) {
|
| 733 |
+
options.using.call( elem, props );
|
| 734 |
+
} else {
|
| 735 |
+
curElem.css( props );
|
| 736 |
+
}
|
| 737 |
+
};
|
| 738 |
+
|
| 739 |
+
$.fn.offset = function( options ) {
|
| 740 |
+
var elem = this[ 0 ];
|
| 741 |
+
if ( !elem || !elem.ownerDocument ) { return null; }
|
| 742 |
+
if ( options ) {
|
| 743 |
+
return this.each(function() {
|
| 744 |
+
$.offset.setOffset( this, options );
|
| 745 |
+
});
|
| 746 |
+
}
|
| 747 |
+
return _offset.call( this );
|
| 748 |
+
};
|
| 749 |
+
}
|
| 750 |
+
|
| 751 |
+
}( jQuery ));
|
| 752 |
+
/*
|
| 753 |
+
* jQuery UI Dialog 1.8.4
|
| 754 |
+
*
|
| 755 |
+
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 756 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 757 |
+
* http://jquery.org/license
|
| 758 |
+
*
|
| 759 |
+
* http://docs.jquery.com/UI/Dialog
|
| 760 |
+
*
|
| 761 |
+
* Depends:
|
| 762 |
+
* jquery.ui.core.js
|
| 763 |
+
* jquery.ui.widget.js
|
| 764 |
+
* jquery.ui.button.js
|
| 765 |
+
* jquery.ui.draggable.js
|
| 766 |
+
* jquery.ui.mouse.js
|
| 767 |
+
* jquery.ui.position.js
|
| 768 |
+
* jquery.ui.resizable.js
|
| 769 |
+
*/
|
| 770 |
+
(function( $, undefined ) {
|
| 771 |
+
|
| 772 |
+
var uiDialogClasses =
|
| 773 |
+
'ui-dialog ' +
|
| 774 |
+
'ui-widget ' +
|
| 775 |
+
'ui-widget-content ' +
|
| 776 |
+
'ui-corner-all ';
|
| 777 |
+
|
| 778 |
+
$.widget("ui.dialog", {
|
| 779 |
+
options: {
|
| 780 |
+
autoOpen: true,
|
| 781 |
+
buttons: {},
|
| 782 |
+
closeOnEscape: true,
|
| 783 |
+
closeText: 'close',
|
| 784 |
+
dialogClass: '',
|
| 785 |
+
draggable: true,
|
| 786 |
+
hide: null,
|
| 787 |
+
height: 'auto',
|
| 788 |
+
maxHeight: false,
|
| 789 |
+
maxWidth: false,
|
| 790 |
+
minHeight: 150,
|
| 791 |
+
minWidth: 150,
|
| 792 |
+
modal: false,
|
| 793 |
+
position: {
|
| 794 |
+
my: 'center',
|
| 795 |
+
at: 'center',
|
| 796 |
+
of: window,
|
| 797 |
+
collision: 'fit',
|
| 798 |
+
// ensure that the titlebar is never outside the document
|
| 799 |
+
using: function(pos) {
|
| 800 |
+
var topOffset = $(this).css(pos).offset().top;
|
| 801 |
+
if (topOffset < 0) {
|
| 802 |
+
$(this).css('top', pos.top - topOffset);
|
| 803 |
+
}
|
| 804 |
+
}
|
| 805 |
+
},
|
| 806 |
+
resizable: true,
|
| 807 |
+
show: null,
|
| 808 |
+
stack: true,
|
| 809 |
+
title: '',
|
| 810 |
+
width: 300,
|
| 811 |
+
zIndex: 1000
|
| 812 |
+
},
|
| 813 |
+
|
| 814 |
+
_create: function() {
|
| 815 |
+
this.originalTitle = this.element.attr('title');
|
| 816 |
+
// #5742 - .attr() might return a DOMElement
|
| 817 |
+
if ( typeof this.originalTitle !== "string" ) {
|
| 818 |
+
this.originalTitle = "";
|
| 819 |
+
}
|
| 820 |
+
|
| 821 |
+
var self = this,
|
| 822 |
+
options = self.options,
|
| 823 |
+
|
| 824 |
+
title = options.title || self.originalTitle || ' ',
|
| 825 |
+
titleId = $.ui.dialog.getTitleId(self.element),
|
| 826 |
+
|
| 827 |
+
uiDialog = (self.uiDialog = $('<div></div>'))
|
| 828 |
+
.appendTo(document.body)
|
| 829 |
+
.hide()
|
| 830 |
+
.addClass(uiDialogClasses + options.dialogClass)
|
| 831 |
+
.css({
|
| 832 |
+
zIndex: options.zIndex
|
| 833 |
+
})
|
| 834 |
+
// setting tabIndex makes the div focusable
|
| 835 |
+
// setting outline to 0 prevents a border on focus in Mozilla
|
| 836 |
+
.attr('tabIndex', -1).css('outline', 0).keydown(function(event) {
|
| 837 |
+
if (options.closeOnEscape && event.keyCode &&
|
| 838 |
+
event.keyCode === $.ui.keyCode.ESCAPE) {
|
| 839 |
+
|
| 840 |
+
self.close(event);
|
| 841 |
+
event.preventDefault();
|
| 842 |
+
}
|
| 843 |
+
})
|
| 844 |
+
.attr({
|
| 845 |
+
role: 'dialog',
|
| 846 |
+
'aria-labelledby': titleId
|
| 847 |
+
})
|
| 848 |
+
.mousedown(function(event) {
|
| 849 |
+
self.moveToTop(false, event);
|
| 850 |
+
}),
|
| 851 |
+
|
| 852 |
+
uiDialogContent = self.element
|
| 853 |
+
.show()
|
| 854 |
+
.removeAttr('title')
|
| 855 |
+
.addClass(
|
| 856 |
+
'ui-dialog-content ' +
|
| 857 |
+
'ui-widget-content')
|
| 858 |
+
.appendTo(uiDialog),
|
| 859 |
+
|
| 860 |
+
uiDialogTitlebar = (self.uiDialogTitlebar = $('<div></div>'))
|
| 861 |
+
.addClass(
|
| 862 |
+
'ui-dialog-titlebar ' +
|
| 863 |
+
'ui-widget-header ' +
|
| 864 |
+
'ui-corner-all ' +
|
| 865 |
+
'ui-helper-clearfix'
|
| 866 |
+
)
|
| 867 |
+
.prependTo(uiDialog),
|
| 868 |
+
|
| 869 |
+
uiDialogTitlebarClose = $('<a href="#"></a>')
|
| 870 |
+
.addClass(
|
| 871 |
+
'ui-dialog-titlebar-close ' +
|
| 872 |
+
'ui-corner-all'
|
| 873 |
+
)
|
| 874 |
+
.attr('role', 'button')
|
| 875 |
+
.hover(
|
| 876 |
+
function() {
|
| 877 |
+
uiDialogTitlebarClose.addClass('ui-state-hover');
|
| 878 |
+
},
|
| 879 |
+
function() {
|
| 880 |
+
uiDialogTitlebarClose.removeClass('ui-state-hover');
|
| 881 |
+
}
|
| 882 |
+
)
|
| 883 |
+
.focus(function() {
|
| 884 |
+
uiDialogTitlebarClose.addClass('ui-state-focus');
|
| 885 |
+
})
|
| 886 |
+
.blur(function() {
|
| 887 |
+
uiDialogTitlebarClose.removeClass('ui-state-focus');
|
| 888 |
+
})
|
| 889 |
+
.click(function(event) {
|
| 890 |
+
self.close(event);
|
| 891 |
+
return false;
|
| 892 |
+
})
|
| 893 |
+
.appendTo(uiDialogTitlebar),
|
| 894 |
+
|
| 895 |
+
uiDialogTitlebarCloseText = (self.uiDialogTitlebarCloseText = $('<span></span>'))
|
| 896 |
+
.addClass(
|
| 897 |
+
'ui-icon ' +
|
| 898 |
+
'ui-icon-closethick'
|
| 899 |
+
)
|
| 900 |
+
.text(options.closeText)
|
| 901 |
+
.appendTo(uiDialogTitlebarClose),
|
| 902 |
+
|
| 903 |
+
uiDialogTitle = $('<span></span>')
|
| 904 |
+
.addClass('ui-dialog-title')
|
| 905 |
+
.attr('id', titleId)
|
| 906 |
+
.html(title)
|
| 907 |
+
.prependTo(uiDialogTitlebar);
|
| 908 |
+
|
| 909 |
+
//handling of deprecated beforeclose (vs beforeClose) option
|
| 910 |
+
//Ticket #4669 http://dev.jqueryui.com/ticket/4669
|
| 911 |
+
//TODO: remove in 1.9pre
|
| 912 |
+
if ($.isFunction(options.beforeclose) && !$.isFunction(options.beforeClose)) {
|
| 913 |
+
options.beforeClose = options.beforeclose;
|
| 914 |
+
}
|
| 915 |
+
|
| 916 |
+
uiDialogTitlebar.find("*").add(uiDialogTitlebar).disableSelection();
|
| 917 |
+
|
| 918 |
+
if (options.draggable && $.fn.draggable) {
|
| 919 |
+
self._makeDraggable();
|
| 920 |
+
}
|
| 921 |
+
if (options.resizable && $.fn.resizable) {
|
| 922 |
+
self._makeResizable();
|
| 923 |
+
}
|
| 924 |
+
|
| 925 |
+
self._createButtons(options.buttons);
|
| 926 |
+
self._isOpen = false;
|
| 927 |
+
|
| 928 |
+
if ($.fn.bgiframe) {
|
| 929 |
+
uiDialog.bgiframe();
|
| 930 |
+
}
|
| 931 |
+
},
|
| 932 |
+
|
| 933 |
+
_init: function() {
|
| 934 |
+
if ( this.options.autoOpen ) {
|
| 935 |
+
this.open();
|
| 936 |
+
}
|
| 937 |
+
},
|
| 938 |
+
|
| 939 |
+
destroy: function() {
|
| 940 |
+
var self = this;
|
| 941 |
+
|
| 942 |
+
if (self.overlay) {
|
| 943 |
+
self.overlay.destroy();
|
| 944 |
+
}
|
| 945 |
+
self.uiDialog.hide();
|
| 946 |
+
self.element
|
| 947 |
+
.unbind('.dialog')
|
| 948 |
+
.removeData('dialog')
|
| 949 |
+
.removeClass('ui-dialog-content ui-widget-content')
|
| 950 |
+
.hide().appendTo('body');
|
| 951 |
+
self.uiDialog.remove();
|
| 952 |
+
|
| 953 |
+
if (self.originalTitle) {
|
| 954 |
+
self.element.attr('title', self.originalTitle);
|
| 955 |
+
}
|
| 956 |
+
|
| 957 |
+
return self;
|
| 958 |
+
},
|
| 959 |
+
|
| 960 |
+
widget: function() {
|
| 961 |
+
return this.uiDialog;
|
| 962 |
+
},
|
| 963 |
+
|
| 964 |
+
close: function(event) {
|
| 965 |
+
var self = this,
|
| 966 |
+
maxZ;
|
| 967 |
+
|
| 968 |
+
if (false === self._trigger('beforeClose', event)) {
|
| 969 |
+
return;
|
| 970 |
+
}
|
| 971 |
+
|
| 972 |
+
if (self.overlay) {
|
| 973 |
+
self.overlay.destroy();
|
| 974 |
+
}
|
| 975 |
+
self.uiDialog.unbind('keypress.ui-dialog');
|
| 976 |
+
|
| 977 |
+
self._isOpen = false;
|
| 978 |
+
|
| 979 |
+
if (self.options.hide) {
|
| 980 |
+
self.uiDialog.hide(self.options.hide, function() {
|
| 981 |
+
self._trigger('close', event);
|
| 982 |
+
});
|
| 983 |
+
} else {
|
| 984 |
+
self.uiDialog.hide();
|
| 985 |
+
self._trigger('close', event);
|
| 986 |
+
}
|
| 987 |
+
|
| 988 |
+
$.ui.dialog.overlay.resize();
|
| 989 |
+
|
| 990 |
+
// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
|
| 991 |
+
if (self.options.modal) {
|
| 992 |
+
maxZ = 0;
|
| 993 |
+
$('.ui-dialog').each(function() {
|
| 994 |
+
if (this !== self.uiDialog[0]) {
|
| 995 |
+
maxZ = Math.max(maxZ, $(this).css('z-index'));
|
| 996 |
+
}
|
| 997 |
+
});
|
| 998 |
+
$.ui.dialog.maxZ = maxZ;
|
| 999 |
+
}
|
| 1000 |
+
|
| 1001 |
+
return self;
|
| 1002 |
+
},
|
| 1003 |
+
|
| 1004 |
+
isOpen: function() {
|
| 1005 |
+
return this._isOpen;
|
| 1006 |
+
},
|
| 1007 |
+
|
| 1008 |
+
// the force parameter allows us to move modal dialogs to their correct
|
| 1009 |
+
// position on open
|
| 1010 |
+
moveToTop: function(force, event) {
|
| 1011 |
+
var self = this,
|
| 1012 |
+
options = self.options,
|
| 1013 |
+
saveScroll;
|
| 1014 |
+
|
| 1015 |
+
if ((options.modal && !force) ||
|
| 1016 |
+
(!options.stack && !options.modal)) {
|
| 1017 |
+
return self._trigger('focus', event);
|
| 1018 |
+
}
|
| 1019 |
+
|
| 1020 |
+
if (options.zIndex > $.ui.dialog.maxZ) {
|
| 1021 |
+
$.ui.dialog.maxZ = options.zIndex;
|
| 1022 |
+
}
|
| 1023 |
+
if (self.overlay) {
|
| 1024 |
+
$.ui.dialog.maxZ += 1;
|
| 1025 |
+
self.overlay.$el.css('z-index', $.ui.dialog.overlay.maxZ = $.ui.dialog.maxZ);
|
| 1026 |
+
}
|
| 1027 |
+
|
| 1028 |
+
//Save and then restore scroll since Opera 9.5+ resets when parent z-Index is changed.
|
| 1029 |
+
// http://ui.jquery.com/bugs/ticket/3193
|
| 1030 |
+
saveScroll = { scrollTop: self.element.attr('scrollTop'), scrollLeft: self.element.attr('scrollLeft') };
|
| 1031 |
+
$.ui.dialog.maxZ += 1;
|
| 1032 |
+
self.uiDialog.css('z-index', $.ui.dialog.maxZ);
|
| 1033 |
+
self.element.attr(saveScroll);
|
| 1034 |
+
self._trigger('focus', event);
|
| 1035 |
+
|
| 1036 |
+
return self;
|
| 1037 |
+
},
|
| 1038 |
+
|
| 1039 |
+
open: function() {
|
| 1040 |
+
if (this._isOpen) { return; }
|
| 1041 |
+
|
| 1042 |
+
var self = this,
|
| 1043 |
+
options = self.options,
|
| 1044 |
+
uiDialog = self.uiDialog;
|
| 1045 |
+
|
| 1046 |
+
self.overlay = options.modal ? new $.ui.dialog.overlay(self) : null;
|
| 1047 |
+
if (uiDialog.next().length) {
|
| 1048 |
+
uiDialog.appendTo('body');
|
| 1049 |
+
}
|
| 1050 |
+
self._size();
|
| 1051 |
+
self._position(options.position);
|
| 1052 |
+
uiDialog.show(options.show);
|
| 1053 |
+
self.moveToTop(true);
|
| 1054 |
+
|
| 1055 |
+
// prevent tabbing out of modal dialogs
|
| 1056 |
+
if (options.modal) {
|
| 1057 |
+
uiDialog.bind('keypress.ui-dialog', function(event) {
|
| 1058 |
+
if (event.keyCode !== $.ui.keyCode.TAB) {
|
| 1059 |
+
return;
|
| 1060 |
+
}
|
| 1061 |
+
|
| 1062 |
+
var tabbables = $(':tabbable', this),
|
| 1063 |
+
first = tabbables.filter(':first'),
|
| 1064 |
+
last = tabbables.filter(':last');
|
| 1065 |
+
|
| 1066 |
+
if (event.target === last[0] && !event.shiftKey) {
|
| 1067 |
+
first.focus(1);
|
| 1068 |
+
return false;
|
| 1069 |
+
} else if (event.target === first[0] && event.shiftKey) {
|
| 1070 |
+
last.focus(1);
|
| 1071 |
+
return false;
|
| 1072 |
+
}
|
| 1073 |
+
});
|
| 1074 |
+
}
|
| 1075 |
+
|
| 1076 |
+
// set focus to the first tabbable element in the content area or the first button
|
| 1077 |
+
// if there are no tabbable elements, set focus on the dialog itself
|
| 1078 |
+
$(self.element.find(':tabbable').get().concat(
|
| 1079 |
+
uiDialog.find('.ui-dialog-buttonpane :tabbable').get().concat(
|
| 1080 |
+
uiDialog.get()))).eq(0).focus();
|
| 1081 |
+
|
| 1082 |
+
self._trigger('open');
|
| 1083 |
+
self._isOpen = true;
|
| 1084 |
+
|
| 1085 |
+
return self;
|
| 1086 |
+
},
|
| 1087 |
+
|
| 1088 |
+
_createButtons: function(buttons) {
|
| 1089 |
+
var self = this,
|
| 1090 |
+
hasButtons = false,
|
| 1091 |
+
uiDialogButtonPane = $('<div></div>')
|
| 1092 |
+
.addClass(
|
| 1093 |
+
'ui-dialog-buttonpane ' +
|
| 1094 |
+
'ui-widget-content ' +
|
| 1095 |
+
'ui-helper-clearfix'
|
| 1096 |
+
),
|
| 1097 |
+
uiButtonSet = $( "<div></div>" )
|
| 1098 |
+
.addClass( "ui-dialog-buttonset" )
|
| 1099 |
+
.appendTo( uiDialogButtonPane );
|
| 1100 |
+
|
| 1101 |
+
// if we already have a button pane, remove it
|
| 1102 |
+
self.uiDialog.find('.ui-dialog-buttonpane').remove();
|
| 1103 |
+
|
| 1104 |
+
if (typeof buttons === 'object' && buttons !== null) {
|
| 1105 |
+
$.each(buttons, function() {
|
| 1106 |
+
return !(hasButtons = true);
|
| 1107 |
+
});
|
| 1108 |
+
}
|
| 1109 |
+
if (hasButtons) {
|
| 1110 |
+
$.each(buttons, function(name, fn) {
|
| 1111 |
+
var button = $('<button type="button"></button>')
|
| 1112 |
+
.text(name)
|
| 1113 |
+
.click(function() { fn.apply(self.element[0], arguments); })
|
| 1114 |
+
.appendTo(uiButtonSet);
|
| 1115 |
+
if ($.fn.button) {
|
| 1116 |
+
button.button();
|
| 1117 |
+
}
|
| 1118 |
+
});
|
| 1119 |
+
uiDialogButtonPane.appendTo(self.uiDialog);
|
| 1120 |
+
}
|
| 1121 |
+
},
|
| 1122 |
+
|
| 1123 |
+
_makeDraggable: function() {
|
| 1124 |
+
var self = this,
|
| 1125 |
+
options = self.options,
|
| 1126 |
+
doc = $(document),
|
| 1127 |
+
heightBeforeDrag;
|
| 1128 |
+
|
| 1129 |
+
function filteredUi(ui) {
|
| 1130 |
+
return {
|
| 1131 |
+
position: ui.position,
|
| 1132 |
+
offset: ui.offset
|
| 1133 |
+
};
|
| 1134 |
+
}
|
| 1135 |
+
|
| 1136 |
+
self.uiDialog.draggable({
|
| 1137 |
+
cancel: '.ui-dialog-content, .ui-dialog-titlebar-close',
|
| 1138 |
+
handle: '.ui-dialog-titlebar',
|
| 1139 |
+
containment: 'document',
|
| 1140 |
+
start: function(event, ui) {
|
| 1141 |
+
heightBeforeDrag = options.height === "auto" ? "auto" : $(this).height();
|
| 1142 |
+
$(this).height($(this).height()).addClass("ui-dialog-dragging");
|
| 1143 |
+
self._trigger('dragStart', event, filteredUi(ui));
|
| 1144 |
+
},
|
| 1145 |
+
drag: function(event, ui) {
|
| 1146 |
+
self._trigger('drag', event, filteredUi(ui));
|
| 1147 |
+
},
|
| 1148 |
+
stop: function(event, ui) {
|
| 1149 |
+
options.position = [ui.position.left - doc.scrollLeft(),
|
| 1150 |
+
ui.position.top - doc.scrollTop()];
|
| 1151 |
+
$(this).removeClass("ui-dialog-dragging").height(heightBeforeDrag);
|
| 1152 |
+
self._trigger('dragStop', event, filteredUi(ui));
|
| 1153 |
+
$.ui.dialog.overlay.resize();
|
| 1154 |
+
}
|
| 1155 |
+
});
|
| 1156 |
+
},
|
| 1157 |
+
|
| 1158 |
+
_makeResizable: function(handles) {
|
| 1159 |
+
handles = (handles === undefined ? this.options.resizable : handles);
|
| 1160 |
+
var self = this,
|
| 1161 |
+
options = self.options,
|
| 1162 |
+
// .ui-resizable has position: relative defined in the stylesheet
|
| 1163 |
+
// but dialogs have to use absolute or fixed positioning
|
| 1164 |
+
position = self.uiDialog.css('position'),
|
| 1165 |
+
resizeHandles = (typeof handles === 'string' ?
|
| 1166 |
+
handles :
|
| 1167 |
+
'n,e,s,w,se,sw,ne,nw'
|
| 1168 |
+
);
|
| 1169 |
+
|
| 1170 |
+
function filteredUi(ui) {
|
| 1171 |
+
return {
|
| 1172 |
+
originalPosition: ui.originalPosition,
|
| 1173 |
+
originalSize: ui.originalSize,
|
| 1174 |
+
position: ui.position,
|
| 1175 |
+
size: ui.size
|
| 1176 |
+
};
|
| 1177 |
+
}
|
| 1178 |
+
|
| 1179 |
+
self.uiDialog.resizable({
|
| 1180 |
+
cancel: '.ui-dialog-content',
|
| 1181 |
+
containment: 'document',
|
| 1182 |
+
alsoResize: self.element,
|
| 1183 |
+
maxWidth: options.maxWidth,
|
| 1184 |
+
maxHeight: options.maxHeight,
|
| 1185 |
+
minWidth: options.minWidth,
|
| 1186 |
+
minHeight: self._minHeight(),
|
| 1187 |
+
handles: resizeHandles,
|
| 1188 |
+
start: function(event, ui) {
|
| 1189 |
+
$(this).addClass("ui-dialog-resizing");
|
| 1190 |
+
self._trigger('resizeStart', event, filteredUi(ui));
|
| 1191 |
+
},
|
| 1192 |
+
resize: function(event, ui) {
|
| 1193 |
+
self._trigger('resize', event, filteredUi(ui));
|
| 1194 |
+
},
|
| 1195 |
+
stop: function(event, ui) {
|
| 1196 |
+
$(this).removeClass("ui-dialog-resizing");
|
| 1197 |
+
options.height = $(this).height();
|
| 1198 |
+
options.width = $(this).width();
|
| 1199 |
+
self._trigger('resizeStop', event, filteredUi(ui));
|
| 1200 |
+
$.ui.dialog.overlay.resize();
|
| 1201 |
+
}
|
| 1202 |
+
})
|
| 1203 |
+
.css('position', position)
|
| 1204 |
+
.find('.ui-resizable-se').addClass('ui-icon ui-icon-grip-diagonal-se');
|
| 1205 |
+
},
|
| 1206 |
+
|
| 1207 |
+
_minHeight: function() {
|
| 1208 |
+
var options = this.options;
|
| 1209 |
+
|
| 1210 |
+
if (options.height === 'auto') {
|
| 1211 |
+
return options.minHeight;
|
| 1212 |
+
} else {
|
| 1213 |
+
return Math.min(options.minHeight, options.height);
|
| 1214 |
+
}
|
| 1215 |
+
},
|
| 1216 |
+
|
| 1217 |
+
_position: function(position) {
|
| 1218 |
+
var myAt = [],
|
| 1219 |
+
offset = [0, 0],
|
| 1220 |
+
isVisible;
|
| 1221 |
+
|
| 1222 |
+
if (position) {
|
| 1223 |
+
// deep extending converts arrays to objects in jQuery <= 1.3.2 :-(
|
| 1224 |
+
// if (typeof position == 'string' || $.isArray(position)) {
|
| 1225 |
+
// myAt = $.isArray(position) ? position : position.split(' ');
|
| 1226 |
+
|
| 1227 |
+
if (typeof position === 'string' || (typeof position === 'object' && '0' in position)) {
|
| 1228 |
+
myAt = position.split ? position.split(' ') : [position[0], position[1]];
|
| 1229 |
+
if (myAt.length === 1) {
|
| 1230 |
+
myAt[1] = myAt[0];
|
| 1231 |
+
}
|
| 1232 |
+
|
| 1233 |
+
$.each(['left', 'top'], function(i, offsetPosition) {
|
| 1234 |
+
if (+myAt[i] === myAt[i]) {
|
| 1235 |
+
offset[i] = myAt[i];
|
| 1236 |
+
myAt[i] = offsetPosition;
|
| 1237 |
+
}
|
| 1238 |
+
});
|
| 1239 |
+
|
| 1240 |
+
position = {
|
| 1241 |
+
my: myAt.join(" "),
|
| 1242 |
+
at: myAt.join(" "),
|
| 1243 |
+
offset: offset.join(" ")
|
| 1244 |
+
};
|
| 1245 |
+
}
|
| 1246 |
+
|
| 1247 |
+
position = $.extend({}, $.ui.dialog.prototype.options.position, position);
|
| 1248 |
+
} else {
|
| 1249 |
+
position = $.ui.dialog.prototype.options.position;
|
| 1250 |
+
}
|
| 1251 |
+
|
| 1252 |
+
// need to show the dialog to get the actual offset in the position plugin
|
| 1253 |
+
isVisible = this.uiDialog.is(':visible');
|
| 1254 |
+
if (!isVisible) {
|
| 1255 |
+
this.uiDialog.show();
|
| 1256 |
+
}
|
| 1257 |
+
this.uiDialog
|
| 1258 |
+
// workaround for jQuery bug #5781 http://dev.jquery.com/ticket/5781
|
| 1259 |
+
.css({ top: 0, left: 0 })
|
| 1260 |
+
.position(position);
|
| 1261 |
+
if (!isVisible) {
|
| 1262 |
+
this.uiDialog.hide();
|
| 1263 |
+
}
|
| 1264 |
+
},
|
| 1265 |
+
|
| 1266 |
+
_setOption: function(key, value){
|
| 1267 |
+
var self = this,
|
| 1268 |
+
uiDialog = self.uiDialog,
|
| 1269 |
+
isResizable = uiDialog.is(':data(resizable)'),
|
| 1270 |
+
resize = false;
|
| 1271 |
+
|
| 1272 |
+
switch (key) {
|
| 1273 |
+
//handling of deprecated beforeclose (vs beforeClose) option
|
| 1274 |
+
//Ticket #4669 http://dev.jqueryui.com/ticket/4669
|
| 1275 |
+
//TODO: remove in 1.9pre
|
| 1276 |
+
case "beforeclose":
|
| 1277 |
+
key = "beforeClose";
|
| 1278 |
+
break;
|
| 1279 |
+
case "buttons":
|
| 1280 |
+
self._createButtons(value);
|
| 1281 |
+
resize = true;
|
| 1282 |
+
break;
|
| 1283 |
+
case "closeText":
|
| 1284 |
+
// convert whatever was passed in to a string, for text() to not throw up
|
| 1285 |
+
self.uiDialogTitlebarCloseText.text("" + value);
|
| 1286 |
+
break;
|
| 1287 |
+
case "dialogClass":
|
| 1288 |
+
uiDialog
|
| 1289 |
+
.removeClass(self.options.dialogClass)
|
| 1290 |
+
.addClass(uiDialogClasses + value);
|
| 1291 |
+
break;
|
| 1292 |
+
case "disabled":
|
| 1293 |
+
if (value) {
|
| 1294 |
+
uiDialog.addClass('ui-dialog-disabled');
|
| 1295 |
+
} else {
|
| 1296 |
+
uiDialog.removeClass('ui-dialog-disabled');
|
| 1297 |
+
}
|
| 1298 |
+
break;
|
| 1299 |
+
case "draggable":
|
| 1300 |
+
if (value) {
|
| 1301 |
+
self._makeDraggable();
|
| 1302 |
+
} else {
|
| 1303 |
+
uiDialog.draggable('destroy');
|
| 1304 |
+
}
|
| 1305 |
+
break;
|
| 1306 |
+
case "height":
|
| 1307 |
+
resize = true;
|
| 1308 |
+
break;
|
| 1309 |
+
case "maxHeight":
|
| 1310 |
+
if (isResizable) {
|
| 1311 |
+
uiDialog.resizable('option', 'maxHeight', value);
|
| 1312 |
+
}
|
| 1313 |
+
resize = true;
|
| 1314 |
+
break;
|
| 1315 |
+
case "maxWidth":
|
| 1316 |
+
if (isResizable) {
|
| 1317 |
+
uiDialog.resizable('option', 'maxWidth', value);
|
| 1318 |
+
}
|
| 1319 |
+
resize = true;
|
| 1320 |
+
break;
|
| 1321 |
+
case "minHeight":
|
| 1322 |
+
if (isResizable) {
|
| 1323 |
+
uiDialog.resizable('option', 'minHeight', value);
|
| 1324 |
+
}
|
| 1325 |
+
resize = true;
|
| 1326 |
+
break;
|
| 1327 |
+
case "minWidth":
|
| 1328 |
+
if (isResizable) {
|
| 1329 |
+
uiDialog.resizable('option', 'minWidth', value);
|
| 1330 |
+
}
|
| 1331 |
+
resize = true;
|
| 1332 |
+
break;
|
| 1333 |
+
case "position":
|
| 1334 |
+
self._position(value);
|
| 1335 |
+
break;
|
| 1336 |
+
case "resizable":
|
| 1337 |
+
// currently resizable, becoming non-resizable
|
| 1338 |
+
if (isResizable && !value) {
|
| 1339 |
+
uiDialog.resizable('destroy');
|
| 1340 |
+
}
|
| 1341 |
+
|
| 1342 |
+
// currently resizable, changing handles
|
| 1343 |
+
if (isResizable && typeof value === 'string') {
|
| 1344 |
+
uiDialog.resizable('option', 'handles', value);
|
| 1345 |
+
}
|
| 1346 |
+
|
| 1347 |
+
// currently non-resizable, becoming resizable
|
| 1348 |
+
if (!isResizable && value !== false) {
|
| 1349 |
+
self._makeResizable(value);
|
| 1350 |
+
}
|
| 1351 |
+
break;
|
| 1352 |
+
case "title":
|
| 1353 |
+
// convert whatever was passed in o a string, for html() to not throw up
|
| 1354 |
+
$(".ui-dialog-title", self.uiDialogTitlebar).html("" + (value || ' '));
|
| 1355 |
+
break;
|
| 1356 |
+
case "width":
|
| 1357 |
+
resize = true;
|
| 1358 |
+
break;
|
| 1359 |
+
}
|
| 1360 |
+
|
| 1361 |
+
$.Widget.prototype._setOption.apply(self, arguments);
|
| 1362 |
+
if (resize) {
|
| 1363 |
+
self._size();
|
| 1364 |
+
}
|
| 1365 |
+
},
|
| 1366 |
+
|
| 1367 |
+
_size: function() {
|
| 1368 |
+
/* If the user has resized the dialog, the .ui-dialog and .ui-dialog-content
|
| 1369 |
+
* divs will both have width and height set, so we need to reset them
|
| 1370 |
+
*/
|
| 1371 |
+
var options = this.options,
|
| 1372 |
+
nonContentHeight;
|
| 1373 |
+
|
| 1374 |
+
// reset content sizing
|
| 1375 |
+
// hide for non content measurement because height: 0 doesn't work in IE quirks mode (see #4350)
|
| 1376 |
+
this.element.css({
|
| 1377 |
+
width: 'auto',
|
| 1378 |
+
minHeight: 0,
|
| 1379 |
+
height: 0
|
| 1380 |
+
});
|
| 1381 |
+
|
| 1382 |
+
if (options.minWidth > options.width) {
|
| 1383 |
+
options.width = options.minWidth;
|
| 1384 |
+
}
|
| 1385 |
+
|
| 1386 |
+
// reset wrapper sizing
|
| 1387 |
+
// determine the height of all the non-content elements
|
| 1388 |
+
nonContentHeight = this.uiDialog.css({
|
| 1389 |
+
height: 'auto',
|
| 1390 |
+
width: options.width
|
| 1391 |
+
})
|
| 1392 |
+
.height();
|
| 1393 |
+
|
| 1394 |
+
this.element
|
| 1395 |
+
.css(options.height === 'auto' ? {
|
| 1396 |
+
minHeight: Math.max(options.minHeight - nonContentHeight, 0),
|
| 1397 |
+
height: 'auto'
|
| 1398 |
+
} : {
|
| 1399 |
+
minHeight: 0,
|
| 1400 |
+
height: Math.max(options.height - nonContentHeight, 0)
|
| 1401 |
+
})
|
| 1402 |
+
.show();
|
| 1403 |
+
|
| 1404 |
+
if (this.uiDialog.is(':data(resizable)')) {
|
| 1405 |
+
this.uiDialog.resizable('option', 'minHeight', this._minHeight());
|
| 1406 |
+
}
|
| 1407 |
+
}
|
| 1408 |
+
});
|
| 1409 |
+
|
| 1410 |
+
$.extend($.ui.dialog, {
|
| 1411 |
+
version: "1.8.4",
|
| 1412 |
+
|
| 1413 |
+
uuid: 0,
|
| 1414 |
+
maxZ: 0,
|
| 1415 |
+
|
| 1416 |
+
getTitleId: function($el) {
|
| 1417 |
+
var id = $el.attr('id');
|
| 1418 |
+
if (!id) {
|
| 1419 |
+
this.uuid += 1;
|
| 1420 |
+
id = this.uuid;
|
| 1421 |
+
}
|
| 1422 |
+
return 'ui-dialog-title-' + id;
|
| 1423 |
+
},
|
| 1424 |
+
|
| 1425 |
+
overlay: function(dialog) {
|
| 1426 |
+
this.$el = $.ui.dialog.overlay.create(dialog);
|
| 1427 |
+
}
|
| 1428 |
+
});
|
| 1429 |
+
|
| 1430 |
+
$.extend($.ui.dialog.overlay, {
|
| 1431 |
+
instances: [],
|
| 1432 |
+
// reuse old instances due to IE memory leak with alpha transparency (see #5185)
|
| 1433 |
+
oldInstances: [],
|
| 1434 |
+
maxZ: 0,
|
| 1435 |
+
events: $.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','),
|
| 1436 |
+
function(event) { return event + '.dialog-overlay'; }).join(' '),
|
| 1437 |
+
create: function(dialog) {
|
| 1438 |
+
if (this.instances.length === 0) {
|
| 1439 |
+
// prevent use of anchors and inputs
|
| 1440 |
+
// we use a setTimeout in case the overlay is created from an
|
| 1441 |
+
// event that we're going to be cancelling (see #2804)
|
| 1442 |
+
setTimeout(function() {
|
| 1443 |
+
// handle $(el).dialog().dialog('close') (see #4065)
|
| 1444 |
+
if ($.ui.dialog.overlay.instances.length) {
|
| 1445 |
+
$(document).bind($.ui.dialog.overlay.events, function(event) {
|
| 1446 |
+
// stop events if the z-index of the target is < the z-index of the overlay
|
| 1447 |
+
return ($(event.target).zIndex() >= $.ui.dialog.overlay.maxZ);
|
| 1448 |
+
});
|
| 1449 |
+
}
|
| 1450 |
+
}, 1);
|
| 1451 |
+
|
| 1452 |
+
// allow closing by pressing the escape key
|
| 1453 |
+
$(document).bind('keydown.dialog-overlay', function(event) {
|
| 1454 |
+
if (dialog.options.closeOnEscape && event.keyCode &&
|
| 1455 |
+
event.keyCode === $.ui.keyCode.ESCAPE) {
|
| 1456 |
+
|
| 1457 |
+
dialog.close(event);
|
| 1458 |
+
event.preventDefault();
|
| 1459 |
+
}
|
| 1460 |
+
});
|
| 1461 |
+
|
| 1462 |
+
// handle window resize
|
| 1463 |
+
$(window).bind('resize.dialog-overlay', $.ui.dialog.overlay.resize);
|
| 1464 |
+
}
|
| 1465 |
+
|
| 1466 |
+
var $el = (this.oldInstances.pop() || $('<div></div>').addClass('ui-widget-overlay'))
|
| 1467 |
+
.appendTo(document.body)
|
| 1468 |
+
.css({
|
| 1469 |
+
width: this.width(),
|
| 1470 |
+
height: this.height()
|
| 1471 |
+
});
|
| 1472 |
+
|
| 1473 |
+
if ($.fn.bgiframe) {
|
| 1474 |
+
$el.bgiframe();
|
| 1475 |
+
}
|
| 1476 |
+
|
| 1477 |
+
this.instances.push($el);
|
| 1478 |
+
return $el;
|
| 1479 |
+
},
|
| 1480 |
+
|
| 1481 |
+
destroy: function($el) {
|
| 1482 |
+
this.oldInstances.push(this.instances.splice($.inArray($el, this.instances), 1)[0]);
|
| 1483 |
+
|
| 1484 |
+
if (this.instances.length === 0) {
|
| 1485 |
+
$([document, window]).unbind('.dialog-overlay');
|
| 1486 |
+
}
|
| 1487 |
+
|
| 1488 |
+
$el.remove();
|
| 1489 |
+
|
| 1490 |
+
// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
|
| 1491 |
+
var maxZ = 0;
|
| 1492 |
+
$.each(this.instances, function() {
|
| 1493 |
+
maxZ = Math.max(maxZ, this.css('z-index'));
|
| 1494 |
+
});
|
| 1495 |
+
this.maxZ = maxZ;
|
| 1496 |
+
},
|
| 1497 |
+
|
| 1498 |
+
height: function() {
|
| 1499 |
+
var scrollHeight,
|
| 1500 |
+
offsetHeight;
|
| 1501 |
+
// handle IE 6
|
| 1502 |
+
if ($.browser.msie && $.browser.version < 7) {
|
| 1503 |
+
scrollHeight = Math.max(
|
| 1504 |
+
document.documentElement.scrollHeight,
|
| 1505 |
+
document.body.scrollHeight
|
| 1506 |
+
);
|
| 1507 |
+
offsetHeight = Math.max(
|
| 1508 |
+
document.documentElement.offsetHeight,
|
| 1509 |
+
document.body.offsetHeight
|
| 1510 |
+
);
|
| 1511 |
+
|
| 1512 |
+
if (scrollHeight < offsetHeight) {
|
| 1513 |
+
return $(window).height() + 'px';
|
| 1514 |
+
} else {
|
| 1515 |
+
return scrollHeight + 'px';
|
| 1516 |
+
}
|
| 1517 |
+
// handle "good" browsers
|
| 1518 |
+
} else {
|
| 1519 |
+
return $(document).height() + 'px';
|
| 1520 |
+
}
|
| 1521 |
+
},
|
| 1522 |
+
|
| 1523 |
+
width: function() {
|
| 1524 |
+
var scrollWidth,
|
| 1525 |
+
offsetWidth;
|
| 1526 |
+
// handle IE 6
|
| 1527 |
+
if ($.browser.msie && $.browser.version < 7) {
|
| 1528 |
+
scrollWidth = Math.max(
|
| 1529 |
+
document.documentElement.scrollWidth,
|
| 1530 |
+
document.body.scrollWidth
|
| 1531 |
+
);
|
| 1532 |
+
offsetWidth = Math.max(
|
| 1533 |
+
document.documentElement.offsetWidth,
|
| 1534 |
+
document.body.offsetWidth
|
| 1535 |
+
);
|
| 1536 |
+
|
| 1537 |
+
if (scrollWidth < offsetWidth) {
|
| 1538 |
+
return $(window).width() + 'px';
|
| 1539 |
+
} else {
|
| 1540 |
+
return scrollWidth + 'px';
|
| 1541 |
+
}
|
| 1542 |
+
// handle "good" browsers
|
| 1543 |
+
} else {
|
| 1544 |
+
return $(document).width() + 'px';
|
| 1545 |
+
}
|
| 1546 |
+
},
|
| 1547 |
+
|
| 1548 |
+
resize: function() {
|
| 1549 |
+
/* If the dialog is draggable and the user drags it past the
|
| 1550 |
+
* right edge of the window, the document becomes wider so we
|
| 1551 |
+
* need to stretch the overlay. If the user then drags the
|
| 1552 |
+
* dialog back to the left, the document will become narrower,
|
| 1553 |
+
* so we need to shrink the overlay to the appropriate size.
|
| 1554 |
+
* This is handled by shrinking the overlay before setting it
|
| 1555 |
+
* to the full document size.
|
| 1556 |
+
*/
|
| 1557 |
+
var $overlays = $([]);
|
| 1558 |
+
$.each($.ui.dialog.overlay.instances, function() {
|
| 1559 |
+
$overlays = $overlays.add(this);
|
| 1560 |
+
});
|
| 1561 |
+
|
| 1562 |
+
$overlays.css({
|
| 1563 |
+
width: 0,
|
| 1564 |
+
height: 0
|
| 1565 |
+
}).css({
|
| 1566 |
+
width: $.ui.dialog.overlay.width(),
|
| 1567 |
+
height: $.ui.dialog.overlay.height()
|
| 1568 |
+
});
|
| 1569 |
+
}
|
| 1570 |
+
});
|
| 1571 |
+
|
| 1572 |
+
$.extend($.ui.dialog.overlay.prototype, {
|
| 1573 |
+
destroy: function() {
|
| 1574 |
+
$.ui.dialog.overlay.destroy(this.$el);
|
| 1575 |
+
}
|
| 1576 |
+
});
|
| 1577 |
+
|
| 1578 |
+
}(jQuery));
|
js/jquery.bgiframe-2.1.1.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
| 1 |
-
/* Copyright (c) 2006 Brandon Aaron (http://brandonaaron.net)
|
| 2 |
-
* Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
|
| 3 |
-
* and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
|
| 4 |
-
*
|
| 5 |
-
* $LastChangedDate: 2007-07-21 18:45:56 -0500 (Sat, 21 Jul 2007) $
|
| 6 |
-
* $Rev: 2447 $
|
| 7 |
-
*
|
| 8 |
-
* Version 2.1.1
|
| 9 |
-
*/
|
| 10 |
Â
(function($){$.fn.bgIframe=$.fn.bgiframe=function(s){if($.browser.msie&&/6.0/.test(navigator.userAgent)){s=$.extend({top:'auto',left:'auto',width:'auto',height:'auto',opacity:true,src:'javascript:false;'},s||{});var prop=function(n){return n&&n.constructor==Number?n+'px':n;},html='<iframe class="bgiframe"frameborder="0"tabindex="-1"src="'+s.src+'"'+'style="display:block;position:absolute;z-index:-1;'+(s.opacity!==false?'filter:Alpha(Opacity=\'0\');':'')+'top:'+(s.top=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderTopWidth)||0)*-1)+\'px\')':prop(s.top))+';'+'left:'+(s.left=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderLeftWidth)||0)*-1)+\'px\')':prop(s.left))+';'+'width:'+(s.width=='auto'?'expression(this.parentNode.offsetWidth+\'px\')':prop(s.width))+';'+'height:'+(s.height=='auto'?'expression(this.parentNode.offsetHeight+\'px\')':prop(s.height))+';'+'"/>';return this.each(function(){if($('> iframe.bgiframe',this).length==0)this.insertBefore(document.createElement(html),this.firstChild);});}return this;};})(jQuery);
|
| 1 |
+
/* Copyright (c) 2006 Brandon Aaron (http://brandonaaron.net)
|
| 2 |
+
* Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
|
| 3 |
+
* and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
|
| 4 |
+
*
|
| 5 |
+
* $LastChangedDate: 2007-07-21 18:45:56 -0500 (Sat, 21 Jul 2007) $
|
| 6 |
+
* $Rev: 2447 $
|
| 7 |
+
*
|
| 8 |
+
* Version 2.1.1
|
| 9 |
+
*/
|
| 10 |
Â
(function($){$.fn.bgIframe=$.fn.bgiframe=function(s){if($.browser.msie&&/6.0/.test(navigator.userAgent)){s=$.extend({top:'auto',left:'auto',width:'auto',height:'auto',opacity:true,src:'javascript:false;'},s||{});var prop=function(n){return n&&n.constructor==Number?n+'px':n;},html='<iframe class="bgiframe"frameborder="0"tabindex="-1"src="'+s.src+'"'+'style="display:block;position:absolute;z-index:-1;'+(s.opacity!==false?'filter:Alpha(Opacity=\'0\');':'')+'top:'+(s.top=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderTopWidth)||0)*-1)+\'px\')':prop(s.top))+';'+'left:'+(s.left=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderLeftWidth)||0)*-1)+\'px\')':prop(s.left))+';'+'width:'+(s.width=='auto'?'expression(this.parentNode.offsetWidth+\'px\')':prop(s.width))+';'+'height:'+(s.height=='auto'?'expression(this.parentNode.offsetHeight+\'px\')':prop(s.height))+';'+'"/>';return this.each(function(){if($('> iframe.bgiframe',this).length==0)this.insertBefore(document.createElement(html),this.firstChild);});}return this;};})(jQuery);
|
js/jquery.form.js
CHANGED
|
@@ -1,864 +1,864 @@
|
|
| 1 |
-
/*!
|
| 2 |
-
* jQuery Form Plugin
|
| 3 |
-
* version: 2.80 (25-MAY-2011)
|
| 4 |
-
* @requires jQuery v1.3.2 or later
|
| 5 |
-
*
|
| 6 |
-
* Examples and documentation at: http://malsup.com/jquery/form/
|
| 7 |
-
* Dual licensed under the MIT and GPL licenses:
|
| 8 |
-
* http://www.opensource.org/licenses/mit-license.php
|
| 9 |
-
* http://www.gnu.org/licenses/gpl.html
|
| 10 |
-
*/
|
| 11 |
-
;(function($) {
|
| 12 |
-
|
| 13 |
-
/*
|
| 14 |
-
Usage Note:
|
| 15 |
-
-----------
|
| 16 |
-
Do not use both ajaxSubmit and ajaxForm on the same form. These
|
| 17 |
-
functions are intended to be exclusive. Use ajaxSubmit if you want
|
| 18 |
-
to bind your own submit handler to the form. For example,
|
| 19 |
-
|
| 20 |
-
$(document).ready(function() {
|
| 21 |
-
$('#myForm').bind('submit', function(e) {
|
| 22 |
-
e.preventDefault(); // <-- important
|
| 23 |
-
$(this).ajaxSubmit({
|
| 24 |
-
target: '#output'
|
| 25 |
-
});
|
| 26 |
-
});
|
| 27 |
-
});
|
| 28 |
-
|
| 29 |
-
Use ajaxForm when you want the plugin to manage all the event binding
|
| 30 |
-
for you. For example,
|
| 31 |
-
|
| 32 |
-
$(document).ready(function() {
|
| 33 |
-
$('#myForm').ajaxForm({
|
| 34 |
-
target: '#output'
|
| 35 |
-
});
|
| 36 |
-
});
|
| 37 |
-
|
| 38 |
-
When using ajaxForm, the ajaxSubmit function will be invoked for you
|
| 39 |
-
at the appropriate time.
|
| 40 |
-
*/
|
| 41 |
-
|
| 42 |
-
/**
|
| 43 |
-
* ajaxSubmit() provides a mechanism for immediately submitting
|
| 44 |
-
* an HTML form using AJAX.
|
| 45 |
-
*/
|
| 46 |
-
$.fn.ajaxSubmit = function(options) {
|
| 47 |
-
// fast fail if nothing selected (http://dev.jquery.com/ticket/2752)
|
| 48 |
-
if (!this.length) {
|
| 49 |
-
log('ajaxSubmit: skipping submit process - no element selected');
|
| 50 |
-
return this;
|
| 51 |
-
}
|
| 52 |
-
|
| 53 |
-
if (typeof options == 'function') {
|
| 54 |
-
options = { success: options };
|
| 55 |
-
}
|
| 56 |
-
|
| 57 |
-
var action = this.attr('action');
|
| 58 |
-
var url = (typeof action === 'string') ? $.trim(action) : '';
|
| 59 |
-
url = url || window.location.href || '';
|
| 60 |
-
if (url) {
|
| 61 |
-
// clean url (don't include hash vaue)
|
| 62 |
-
url = (url.match(/^([^#]+)/)||[])[1];
|
| 63 |
-
}
|
| 64 |
-
|
| 65 |
-
options = $.extend(true, {
|
| 66 |
-
url: url,
|
| 67 |
-
success: $.ajaxSettings.success,
|
| 68 |
-
type: this[0].getAttribute('method') || 'GET', // IE7 massage (see issue 57)
|
| 69 |
-
iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank'
|
| 70 |
-
}, options);
|
| 71 |
-
|
| 72 |
-
// hook for manipulating the form data before it is extracted;
|
| 73 |
-
// convenient for use with rich editors like tinyMCE or FCKEditor
|
| 74 |
-
var veto = {};
|
| 75 |
-
this.trigger('form-pre-serialize', [this, options, veto]);
|
| 76 |
-
if (veto.veto) {
|
| 77 |
-
log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
|
| 78 |
-
return this;
|
| 79 |
-
}
|
| 80 |
-
|
| 81 |
-
// provide opportunity to alter form data before it is serialized
|
| 82 |
-
if (options.beforeSerialize && options.beforeSerialize(this, options) === false) {
|
| 83 |
-
log('ajaxSubmit: submit aborted via beforeSerialize callback');
|
| 84 |
-
return this;
|
| 85 |
-
}
|
| 86 |
-
|
| 87 |
-
var n,v,a = this.formToArray(options.semantic);
|
| 88 |
-
if (options.data) {
|
| 89 |
-
options.extraData = options.data;
|
| 90 |
-
for (n in options.data) {
|
| 91 |
-
if(options.data[n] instanceof Array) {
|
| 92 |
-
for (var k in options.data[n]) {
|
| 93 |
-
a.push( { name: n, value: options.data[n][k] } );
|
| 94 |
-
}
|
| 95 |
-
}
|
| 96 |
-
else {
|
| 97 |
-
v = options.data[n];
|
| 98 |
-
v = $.isFunction(v) ? v() : v; // if value is fn, invoke it
|
| 99 |
-
a.push( { name: n, value: v } );
|
| 100 |
-
}
|
| 101 |
-
}
|
| 102 |
-
}
|
| 103 |
-
|
| 104 |
-
// give pre-submit callback an opportunity to abort the submit
|
| 105 |
-
if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) {
|
| 106 |
-
log('ajaxSubmit: submit aborted via beforeSubmit callback');
|
| 107 |
-
return this;
|
| 108 |
-
}
|
| 109 |
-
|
| 110 |
-
// fire vetoable 'validate' event
|
| 111 |
-
this.trigger('form-submit-validate', [a, this, options, veto]);
|
| 112 |
-
if (veto.veto) {
|
| 113 |
-
log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
|
| 114 |
-
return this;
|
| 115 |
-
}
|
| 116 |
-
|
| 117 |
-
var q = $.param(a);
|
| 118 |
-
|
| 119 |
-
if (options.type.toUpperCase() == 'GET') {
|
| 120 |
-
options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q;
|
| 121 |
-
options.data = null; // data is null for 'get'
|
| 122 |
-
}
|
| 123 |
-
else {
|
| 124 |
-
options.data = q; // data is the query string for 'post'
|
| 125 |
-
}
|
| 126 |
-
|
| 127 |
-
var $form = this, callbacks = [];
|
| 128 |
-
if (options.resetForm) {
|
| 129 |
-
callbacks.push(function() { $form.resetForm(); });
|
| 130 |
-
}
|
| 131 |
-
if (options.clearForm) {
|
| 132 |
-
callbacks.push(function() { $form.clearForm(); });
|
| 133 |
-
}
|
| 134 |
-
|
| 135 |
-
// perform a load on the target only if dataType is not provided
|
| 136 |
-
if (!options.dataType && options.target) {
|
| 137 |
-
var oldSuccess = options.success || function(){};
|
| 138 |
-
callbacks.push(function(data) {
|
| 139 |
-
var fn = options.replaceTarget ? 'replaceWith' : 'html';
|
| 140 |
-
$(options.target)[fn](data).each(oldSuccess, arguments);
|
| 141 |
-
});
|
| 142 |
-
}
|
| 143 |
-
else if (options.success) {
|
| 144 |
-
callbacks.push(options.success);
|
| 145 |
-
}
|
| 146 |
-
|
| 147 |
-
options.success = function(data, status, xhr) { // jQuery 1.4+ passes xhr as 3rd arg
|
| 148 |
-
var context = options.context || options; // jQuery 1.4+ supports scope context
|
| 149 |
-
for (var i=0, max=callbacks.length; i < max; i++) {
|
| 150 |
-
callbacks[i].apply(context, [data, status, xhr || $form, $form]);
|
| 151 |
-
}
|
| 152 |
-
};
|
| 153 |
-
|
| 154 |
-
// are there files to upload?
|
| 155 |
-
var fileInputs = $('input:file', this).length > 0;
|
| 156 |
-
var mp = 'multipart/form-data';
|
| 157 |
-
var multipart = ($form.attr('enctype') == mp || $form.attr('encoding') == mp);
|
| 158 |
-
|
| 159 |
-
// options.iframe allows user to force iframe mode
|
| 160 |
-
// 06-NOV-09: now defaulting to iframe mode if file input is detected
|
| 161 |
-
if (options.iframe !== false && (fileInputs || options.iframe || multipart)) {
|
| 162 |
-
// hack to fix Safari hang (thanks to Tim Molendijk for this)
|
| 163 |
-
// see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d
|
| 164 |
-
if (options.closeKeepAlive) {
|
| 165 |
-
$.get(options.closeKeepAlive, function() { fileUpload(a); });
|
| 166 |
-
}
|
| 167 |
-
else {
|
| 168 |
-
fileUpload(a);
|
| 169 |
-
}
|
| 170 |
-
}
|
| 171 |
-
else {
|
| 172 |
-
$.ajax(options);
|
| 173 |
-
}
|
| 174 |
-
|
| 175 |
-
// fire 'notify' event
|
| 176 |
-
this.trigger('form-submit-notify', [this, options]);
|
| 177 |
-
return this;
|
| 178 |
-
|
| 179 |
-
|
| 180 |
-
// private function for handling file uploads (hat tip to YAHOO!)
|
| 181 |
-
function fileUpload(a) {
|
| 182 |
-
var form = $form[0], i, s, g, id, $io, io, xhr, sub, n, timedOut, timeoutHandle;
|
| 183 |
-
|
| 184 |
-
if (a) {
|
| 185 |
-
// ensure that every serialized input is still enabled
|
| 186 |
-
for (i=0; i < a.length; i++) {
|
| 187 |
-
$(form[a[i].name]).attr('disabled', false);
|
| 188 |
-
}
|
| 189 |
-
}
|
| 190 |
-
|
| 191 |
-
if ($(':input[name=submit],:input[id=submit]', form).length) {
|
| 192 |
-
// if there is an input with a name or id of 'submit' then we won't be
|
| 193 |
-
// able to invoke the submit fn on the form (at least not x-browser)
|
| 194 |
-
alert('Error: Form elements must not have name or id of "submit".');
|
| 195 |
-
return;
|
| 196 |
-
}
|
| 197 |
-
|
| 198 |
-
s = $.extend(true, {}, $.ajaxSettings, options);
|
| 199 |
-
s.context = s.context || s;
|
| 200 |
-
id = 'jqFormIO' + (new Date().getTime());
|
| 201 |
-
if (s.iframeTarget) {
|
| 202 |
-
$io = $(s.iframeTarget);
|
| 203 |
-
n = $io.attr('name');
|
| 204 |
-
if (n == null)
|
| 205 |
-
$io.attr('name', id);
|
| 206 |
-
else
|
| 207 |
-
id = n;
|
| 208 |
-
}
|
| 209 |
-
else {
|
| 210 |
-
$io = $('<iframe name="' + id + '" src="'+ s.iframeSrc +'" />');
|
| 211 |
-
$io.css({ position: 'absolute', top: '-1000px', left: '-1000px' });
|
| 212 |
-
}
|
| 213 |
-
io = $io[0];
|
| 214 |
-
|
| 215 |
-
|
| 216 |
-
xhr = { // mock object
|
| 217 |
-
aborted: 0,
|
| 218 |
-
responseText: null,
|
| 219 |
-
responseXML: null,
|
| 220 |
-
status: 0,
|
| 221 |
-
statusText: 'n/a',
|
| 222 |
-
getAllResponseHeaders: function() {},
|
| 223 |
-
getResponseHeader: function() {},
|
| 224 |
-
setRequestHeader: function() {},
|
| 225 |
-
abort: function(status) {
|
| 226 |
-
var e = (status === 'timeout' ? 'timeout' : 'aborted');
|
| 227 |
-
log('aborting upload... ' + e);
|
| 228 |
-
this.aborted = 1;
|
| 229 |
-
$io.attr('src', s.iframeSrc); // abort op in progress
|
| 230 |
-
xhr.error = e;
|
| 231 |
-
s.error && s.error.call(s.context, xhr, e, e);
|
| 232 |
-
g && $.event.trigger("ajaxError", [xhr, s, e]);
|
| 233 |
-
s.complete && s.complete.call(s.context, xhr, e);
|
| 234 |
-
}
|
| 235 |
-
};
|
| 236 |
-
|
| 237 |
-
g = s.global;
|
| 238 |
-
// trigger ajax global events so that activity/block indicators work like normal
|
| 239 |
-
if (g && ! $.active++) {
|
| 240 |
-
$.event.trigger("ajaxStart");
|
| 241 |
-
}
|
| 242 |
-
if (g) {
|
| 243 |
-
$.event.trigger("ajaxSend", [xhr, s]);
|
| 244 |
-
}
|
| 245 |
-
|
| 246 |
-
if (s.beforeSend && s.beforeSend.call(s.context, xhr, s) === false) {
|
| 247 |
-
if (s.global) {
|
| 248 |
-
$.active--;
|
| 249 |
-
}
|
| 250 |
-
return;
|
| 251 |
-
}
|
| 252 |
-
if (xhr.aborted) {
|
| 253 |
-
return;
|
| 254 |
-
}
|
| 255 |
-
|
| 256 |
-
// add submitting element to data if we know it
|
| 257 |
-
sub = form.clk;
|
| 258 |
-
if (sub) {
|
| 259 |
-
n = sub.name;
|
| 260 |
-
if (n && !sub.disabled) {
|
| 261 |
-
s.extraData = s.extraData || {};
|
| 262 |
-
s.extraData[n] = sub.value;
|
| 263 |
-
if (sub.type == "image") {
|
| 264 |
-
s.extraData[n+'.x'] = form.clk_x;
|
| 265 |
-
s.extraData[n+'.y'] = form.clk_y;
|
| 266 |
-
}
|
| 267 |
-
}
|
| 268 |
-
}
|
| 269 |
-
|
| 270 |
-
// take a breath so that pending repaints get some cpu time before the upload starts
|
| 271 |
-
function doSubmit() {
|
| 272 |
-
// make sure form attrs are set
|
| 273 |
-
var t = $form.attr('target'), a = $form.attr('action');
|
| 274 |
-
|
| 275 |
-
// update form attrs in IE friendly way
|
| 276 |
-
form.setAttribute('target',id);
|
| 277 |
-
if (form.getAttribute('method') != 'POST') {
|
| 278 |
-
form.setAttribute('method', 'POST');
|
| 279 |
-
}
|
| 280 |
-
if (form.getAttribute('action') != s.url) {
|
| 281 |
-
form.setAttribute('action', s.url);
|
| 282 |
-
}
|
| 283 |
-
|
| 284 |
-
// ie borks in some cases when setting encoding
|
| 285 |
-
if (! s.skipEncodingOverride) {
|
| 286 |
-
$form.attr({
|
| 287 |
-
encoding: 'multipart/form-data',
|
| 288 |
-
enctype: 'multipart/form-data'
|
| 289 |
-
});
|
| 290 |
-
}
|
| 291 |
-
|
| 292 |
-
// support timout
|
| 293 |
-
if (s.timeout) {
|
| 294 |
-
timeoutHandle = setTimeout(function() { timedOut = true; cb(true); }, s.timeout);
|
| 295 |
-
}
|
| 296 |
-
|
| 297 |
-
// add "extra" data to form if provided in options
|
| 298 |
-
var extraInputs = [];
|
| 299 |
-
try {
|
| 300 |
-
if (s.extraData) {
|
| 301 |
-
for (var n in s.extraData) {
|
| 302 |
-
extraInputs.push(
|
| 303 |
-
$('<input type="hidden" name="'+n+'" value="'+s.extraData[n]+'" />')
|
| 304 |
-
.appendTo(form)[0]);
|
| 305 |
-
}
|
| 306 |
-
}
|
| 307 |
-
|
| 308 |
-
if (!s.iframeTarget) {
|
| 309 |
-
// add iframe to doc and submit the form
|
| 310 |
-
$io.appendTo('body');
|
| 311 |
-
io.attachEvent ? io.attachEvent('onload', cb) : io.addEventListener('load', cb, false);
|
| 312 |
-
}
|
| 313 |
-
form.submit();
|
| 314 |
-
}
|
| 315 |
-
finally {
|
| 316 |
-
// reset attrs and remove "extra" input elements
|
| 317 |
-
form.setAttribute('action',a);
|
| 318 |
-
if(t) {
|
| 319 |
-
form.setAttribute('target', t);
|
| 320 |
-
} else {
|
| 321 |
-
$form.removeAttr('target');
|
| 322 |
-
}
|
| 323 |
-
$(extraInputs).remove();
|
| 324 |
-
}
|
| 325 |
-
}
|
| 326 |
-
|
| 327 |
-
if (s.forceSync) {
|
| 328 |
-
doSubmit();
|
| 329 |
-
}
|
| 330 |
-
else {
|
| 331 |
-
setTimeout(doSubmit, 10); // this lets dom updates render
|
| 332 |
-
}
|
| 333 |
-
|
| 334 |
-
var data, doc, domCheckCount = 50, callbackProcessed;
|
| 335 |
-
|
| 336 |
-
function cb(e) {
|
| 337 |
-
if (xhr.aborted || callbackProcessed) {
|
| 338 |
-
return;
|
| 339 |
-
}
|
| 340 |
-
if (e === true && xhr) {
|
| 341 |
-
xhr.abort('timeout');
|
| 342 |
-
return;
|
| 343 |
-
}
|
| 344 |
-
|
| 345 |
-
var doc = io.contentWindow ? io.contentWindow.document : io.contentDocument ? io.contentDocument : io.document;
|
| 346 |
-
if (!doc || doc.location.href == s.iframeSrc) {
|
| 347 |
-
// response not received yet
|
| 348 |
-
if (!timedOut)
|
| 349 |
-
return;
|
| 350 |
-
}
|
| 351 |
-
io.detachEvent ? io.detachEvent('onload', cb) : io.removeEventListener('load', cb, false);
|
| 352 |
-
|
| 353 |
-
var status = 'success', errMsg;
|
| 354 |
-
try {
|
| 355 |
-
if (timedOut) {
|
| 356 |
-
throw 'timeout';
|
| 357 |
-
}
|
| 358 |
-
|
| 359 |
-
var isXml = s.dataType == 'xml' || doc.XMLDocument || $.isXMLDoc(doc);
|
| 360 |
-
log('isXml='+isXml);
|
| 361 |
-
if (!isXml && window.opera && (doc.body == null || doc.body.innerHTML == '')) {
|
| 362 |
-
if (--domCheckCount) {
|
| 363 |
-
// in some browsers (Opera) the iframe DOM is not always traversable when
|
| 364 |
-
// the onload callback fires, so we loop a bit to accommodate
|
| 365 |
-
log('requeing onLoad callback, DOM not available');
|
| 366 |
-
setTimeout(cb, 250);
|
| 367 |
-
return;
|
| 368 |
-
}
|
| 369 |
-
// let this fall through because server response could be an empty document
|
| 370 |
-
//log('Could not access iframe DOM after mutiple tries.');
|
| 371 |
-
//throw 'DOMException: not available';
|
| 372 |
-
}
|
| 373 |
-
|
| 374 |
-
//log('response detected');
|
| 375 |
-
var docRoot = doc.body ? doc.body : doc.documentElement;
|
| 376 |
-
xhr.responseText = docRoot ? docRoot.innerHTML : null;
|
| 377 |
-
xhr.responseXML = doc.XMLDocument ? doc.XMLDocument : doc;
|
| 378 |
-
if (isXml)
|
| 379 |
-
s.dataType = 'xml';
|
| 380 |
-
xhr.getResponseHeader = function(header){
|
| 381 |
-
var headers = {'content-type': s.dataType};
|
| 382 |
-
return headers[header];
|
| 383 |
-
};
|
| 384 |
-
// support for XHR 'status' & 'statusText' emulation :
|
| 385 |
-
if (docRoot) {
|
| 386 |
-
xhr.status = Number( docRoot.getAttribute('status') ) || xhr.status;
|
| 387 |
-
xhr.statusText = docRoot.getAttribute('statusText') || xhr.statusText;
|
| 388 |
-
}
|
| 389 |
-
|
| 390 |
-
var dt = s.dataType || '';
|
| 391 |
-
var scr = /(json|script|text)/.test(dt.toLowerCase());
|
| 392 |
-
if (scr || s.textarea) {
|
| 393 |
-
// see if user embedded response in textarea
|
| 394 |
-
var ta = doc.getElementsByTagName('textarea')[0];
|
| 395 |
-
if (ta) {
|
| 396 |
-
xhr.responseText = ta.value;
|
| 397 |
-
// support for XHR 'status' & 'statusText' emulation :
|
| 398 |
-
xhr.status = Number( ta.getAttribute('status') ) || xhr.status;
|
| 399 |
-
xhr.statusText = ta.getAttribute('statusText') || xhr.statusText;
|
| 400 |
-
}
|
| 401 |
-
else if (scr) {
|
| 402 |
-
// account for browsers injecting pre around json response
|
| 403 |
-
var pre = doc.getElementsByTagName('pre')[0];
|
| 404 |
-
var b = doc.getElementsByTagName('body')[0];
|
| 405 |
-
if (pre) {
|
| 406 |
-
xhr.responseText = pre.textContent ? pre.textContent : pre.innerHTML;
|
| 407 |
-
}
|
| 408 |
-
else if (b) {
|
| 409 |
-
xhr.responseText = b.innerHTML;
|
| 410 |
-
}
|
| 411 |
-
}
|
| 412 |
-
}
|
| 413 |
-
else if (s.dataType == 'xml' && !xhr.responseXML && xhr.responseText != null) {
|
| 414 |
-
xhr.responseXML = toXml(xhr.responseText);
|
| 415 |
-
}
|
| 416 |
-
|
| 417 |
-
try {
|
| 418 |
-
data = httpData(xhr, s.dataType, s);
|
| 419 |
-
}
|
| 420 |
-
catch (e) {
|
| 421 |
-
status = 'parsererror';
|
| 422 |
-
xhr.error = errMsg = (e || status);
|
| 423 |
-
}
|
| 424 |
-
}
|
| 425 |
-
catch (e) {
|
| 426 |
-
log('error caught',e);
|
| 427 |
-
status = 'error';
|
| 428 |
-
xhr.error = errMsg = (e || status);
|
| 429 |
-
}
|
| 430 |
-
|
| 431 |
-
if (xhr.aborted) {
|
| 432 |
-
log('upload aborted');
|
| 433 |
-
status = null;
|
| 434 |
-
}
|
| 435 |
-
|
| 436 |
-
if (xhr.status) { // we've set xhr.status
|
| 437 |
-
status = (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) ? 'success' : 'error';
|
| 438 |
-
}
|
| 439 |
-
|
| 440 |
-
// ordering of these callbacks/triggers is odd, but that's how $.ajax does it
|
| 441 |
-
if (status === 'success') {
|
| 442 |
-
s.success && s.success.call(s.context, data, 'success', xhr);
|
| 443 |
-
g && $.event.trigger("ajaxSuccess", [xhr, s]);
|
| 444 |
-
}
|
| 445 |
-
else if (status) {
|
| 446 |
-
if (errMsg == undefined)
|
| 447 |
-
errMsg = xhr.statusText;
|
| 448 |
-
s.error && s.error.call(s.context, xhr, status, errMsg);
|
| 449 |
-
g && $.event.trigger("ajaxError", [xhr, s, errMsg]);
|
| 450 |
-
}
|
| 451 |
-
|
| 452 |
-
g && $.event.trigger("ajaxComplete", [xhr, s]);
|
| 453 |
-
|
| 454 |
-
if (g && ! --$.active) {
|
| 455 |
-
$.event.trigger("ajaxStop");
|
| 456 |
-
}
|
| 457 |
-
|
| 458 |
-
s.complete && s.complete.call(s.context, xhr, status);
|
| 459 |
-
|
| 460 |
-
callbackProcessed = true;
|
| 461 |
-
if (s.timeout)
|
| 462 |
-
clearTimeout(timeoutHandle);
|
| 463 |
-
|
| 464 |
-
// clean up
|
| 465 |
-
setTimeout(function() {
|
| 466 |
-
if (!s.iframeTarget)
|
| 467 |
-
$io.remove();
|
| 468 |
-
xhr.responseXML = null;
|
| 469 |
-
}, 100);
|
| 470 |
-
}
|
| 471 |
-
|
| 472 |
-
var toXml = $.parseXML || function(s, doc) { // use parseXML if available (jQuery 1.5+)
|
| 473 |
-
if (window.ActiveXObject) {
|
| 474 |
-
doc = new ActiveXObject('Microsoft.XMLDOM');
|
| 475 |
-
doc.async = 'false';
|
| 476 |
-
doc.loadXML(s);
|
| 477 |
-
}
|
| 478 |
-
else {
|
| 479 |
-
doc = (new DOMParser()).parseFromString(s, 'text/xml');
|
| 480 |
-
}
|
| 481 |
-
return (doc && doc.documentElement && doc.documentElement.nodeName != 'parsererror') ? doc : null;
|
| 482 |
-
};
|
| 483 |
-
var parseJSON = $.parseJSON || function(s) {
|
| 484 |
-
return window['eval']('(' + s + ')');
|
| 485 |
-
};
|
| 486 |
-
|
| 487 |
-
var httpData = function( xhr, type, s ) { // mostly lifted from jq1.4.4
|
| 488 |
-
|
| 489 |
-
var ct = xhr.getResponseHeader('content-type') || '',
|
| 490 |
-
xml = type === 'xml' || !type && ct.indexOf('xml') >= 0,
|
| 491 |
-
data = xml ? xhr.responseXML : xhr.responseText;
|
| 492 |
-
|
| 493 |
-
if (xml && data.documentElement.nodeName === 'parsererror') {
|
| 494 |
-
$.error && $.error('parsererror');
|
| 495 |
-
}
|
| 496 |
-
if (s && s.dataFilter) {
|
| 497 |
-
data = s.dataFilter(data, type);
|
| 498 |
-
}
|
| 499 |
-
if (typeof data === 'string') {
|
| 500 |
-
if (type === 'json' || !type && ct.indexOf('json') >= 0) {
|
| 501 |
-
data = parseJSON(data);
|
| 502 |
-
} else if (type === "script" || !type && ct.indexOf("javascript") >= 0) {
|
| 503 |
-
$.globalEval(data);
|
| 504 |
-
}
|
| 505 |
-
}
|
| 506 |
-
return data;
|
| 507 |
-
};
|
| 508 |
-
}
|
| 509 |
-
};
|
| 510 |
-
|
| 511 |
-
/**
|
| 512 |
-
* ajaxForm() provides a mechanism for fully automating form submission.
|
| 513 |
-
*
|
| 514 |
-
* The advantages of using this method instead of ajaxSubmit() are:
|
| 515 |
-
*
|
| 516 |
-
* 1: This method will include coordinates for <input type="image" /> elements (if the element
|
| 517 |
-
* is used to submit the form).
|
| 518 |
-
* 2. This method will include the submit element's name/value data (for the element that was
|
| 519 |
-
* used to submit the form).
|
| 520 |
-
* 3. This method binds the submit() method to the form for you.
|
| 521 |
-
*
|
| 522 |
-
* The options argument for ajaxForm works exactly as it does for ajaxSubmit. ajaxForm merely
|
| 523 |
-
* passes the options argument along after properly binding events for submit elements and
|
| 524 |
-
* the form itself.
|
| 525 |
-
*/
|
| 526 |
-
$.fn.ajaxForm = function(options) {
|
| 527 |
-
// in jQuery 1.3+ we can fix mistakes with the ready state
|
| 528 |
-
if (this.length === 0) {
|
| 529 |
-
var o = { s: this.selector, c: this.context };
|
| 530 |
-
if (!$.isReady && o.s) {
|
| 531 |
-
log('DOM not ready, queuing ajaxForm');
|
| 532 |
-
$(function() {
|
| 533 |
-
$(o.s,o.c).ajaxForm(options);
|
| 534 |
-
});
|
| 535 |
-
return this;
|
| 536 |
-
}
|
| 537 |
-
// is your DOM ready? http://docs.jquery.com/Tutorials:Introducing_$(document).ready()
|
| 538 |
-
log('terminating; zero elements found by selector' + ($.isReady ? '' : ' (DOM not ready)'));
|
| 539 |
-
return this;
|
| 540 |
-
}
|
| 541 |
-
|
| 542 |
-
return this.ajaxFormUnbind().bind('submit.form-plugin', function(e) {
|
| 543 |
-
if (!e.isDefaultPrevented()) { // if event has been canceled, don't proceed
|
| 544 |
-
e.preventDefault();
|
| 545 |
-
$(this).ajaxSubmit(options);
|
| 546 |
-
}
|
| 547 |
-
}).bind('click.form-plugin', function(e) {
|
| 548 |
-
var target = e.target;
|
| 549 |
-
var $el = $(target);
|
| 550 |
-
if (!($el.is(":submit,input:image"))) {
|
| 551 |
-
// is this a child element of the submit el? (ex: a span within a button)
|
| 552 |
-
var t = $el.closest(':submit');
|
| 553 |
-
if (t.length == 0) {
|
| 554 |
-
return;
|
| 555 |
-
}
|
| 556 |
-
target = t[0];
|
| 557 |
-
}
|
| 558 |
-
var form = this;
|
| 559 |
-
form.clk = target;
|
| 560 |
-
if (target.type == 'image') {
|
| 561 |
-
if (e.offsetX != undefined) {
|
| 562 |
-
form.clk_x = e.offsetX;
|
| 563 |
-
form.clk_y = e.offsetY;
|
| 564 |
-
} else if (typeof $.fn.offset == 'function') { // try to use dimensions plugin
|
| 565 |
-
var offset = $el.offset();
|
| 566 |
-
form.clk_x = e.pageX - offset.left;
|
| 567 |
-
form.clk_y = e.pageY - offset.top;
|
| 568 |
-
} else {
|
| 569 |
-
form.clk_x = e.pageX - target.offsetLeft;
|
| 570 |
-
form.clk_y = e.pageY - target.offsetTop;
|
| 571 |
-
}
|
| 572 |
-
}
|
| 573 |
-
// clear form vars
|
| 574 |
-
setTimeout(function() { form.clk = form.clk_x = form.clk_y = null; }, 100);
|
| 575 |
-
});
|
| 576 |
-
};
|
| 577 |
-
|
| 578 |
-
// ajaxFormUnbind unbinds the event handlers that were bound by ajaxForm
|
| 579 |
-
$.fn.ajaxFormUnbind = function() {
|
| 580 |
-
return this.unbind('submit.form-plugin click.form-plugin');
|
| 581 |
-
};
|
| 582 |
-
|
| 583 |
-
/**
|
| 584 |
-
* formToArray() gathers form element data into an array of objects that can
|
| 585 |
-
* be passed to any of the following ajax functions: $.get, $.post, or load.
|
| 586 |
-
* Each object in the array has both a 'name' and 'value' property. An example of
|
| 587 |
-
* an array for a simple login form might be:
|
| 588 |
-
*
|
| 589 |
-
* [ { name: 'username', value: 'jresig' }, { name: 'password', value: 'secret' } ]
|
| 590 |
-
*
|
| 591 |
-
* It is this array that is passed to pre-submit callback functions provided to the
|
| 592 |
-
* ajaxSubmit() and ajaxForm() methods.
|
| 593 |
-
*/
|
| 594 |
-
$.fn.formToArray = function(semantic) {
|
| 595 |
-
var a = [];
|
| 596 |
-
if (this.length === 0) {
|
| 597 |
-
return a;
|
| 598 |
-
}
|
| 599 |
-
|
| 600 |
-
var form = this[0];
|
| 601 |
-
var els = semantic ? form.getElementsByTagName('*') : form.elements;
|
| 602 |
-
if (!els) {
|
| 603 |
-
return a;
|
| 604 |
-
}
|
| 605 |
-
|
| 606 |
-
var i,j,n,v,el,max,jmax;
|
| 607 |
-
for(i=0, max=els.length; i < max; i++) {
|
| 608 |
-
el = els[i];
|
| 609 |
-
n = el.name;
|
| 610 |
-
if (!n) {
|
| 611 |
-
continue;
|
| 612 |
-
}
|
| 613 |
-
|
| 614 |
-
if (semantic && form.clk && el.type == "image") {
|
| 615 |
-
// handle image inputs on the fly when semantic == true
|
| 616 |
-
if(!el.disabled && form.clk == el) {
|
| 617 |
-
a.push({name: n, value: $(el).val()});
|
| 618 |
-
a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
|
| 619 |
-
}
|
| 620 |
-
continue;
|
| 621 |
-
}
|
| 622 |
-
|
| 623 |
-
v = $.fieldValue(el, true);
|
| 624 |
-
if (v && v.constructor == Array) {
|
| 625 |
-
for(j=0, jmax=v.length; j < jmax; j++) {
|
| 626 |
-
a.push({name: n, value: v[j]});
|
| 627 |
-
}
|
| 628 |
-
}
|
| 629 |
-
else if (v !== null && typeof v != 'undefined') {
|
| 630 |
-
a.push({name: n, value: v});
|
| 631 |
-
}
|
| 632 |
-
}
|
| 633 |
-
|
| 634 |
-
if (!semantic && form.clk) {
|
| 635 |
-
// input type=='image' are not found in elements array! handle it here
|
| 636 |
-
var $input = $(form.clk), input = $input[0];
|
| 637 |
-
n = input.name;
|
| 638 |
-
if (n && !input.disabled && input.type == 'image') {
|
| 639 |
-
a.push({name: n, value: $input.val()});
|
| 640 |
-
a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
|
| 641 |
-
}
|
| 642 |
-
}
|
| 643 |
-
return a;
|
| 644 |
-
};
|
| 645 |
-
|
| 646 |
-
/**
|
| 647 |
-
* Serializes form data into a 'submittable' string. This method will return a string
|
| 648 |
-
* in the format: name1=value1&name2=value2
|
| 649 |
-
*/
|
| 650 |
-
$.fn.formSerialize = function(semantic) {
|
| 651 |
-
//hand off to jQuery.param for proper encoding
|
| 652 |
-
return $.param(this.formToArray(semantic));
|
| 653 |
-
};
|
| 654 |
-
|
| 655 |
-
/**
|
| 656 |
-
* Serializes all field elements in the jQuery object into a query string.
|
| 657 |
-
* This method will return a string in the format: name1=value1&name2=value2
|
| 658 |
-
*/
|
| 659 |
-
$.fn.fieldSerialize = function(successful) {
|
| 660 |
-
var a = [];
|
| 661 |
-
this.each(function() {
|
| 662 |
-
var n = this.name;
|
| 663 |
-
if (!n) {
|
| 664 |
-
return;
|
| 665 |
-
}
|
| 666 |
-
var v = $.fieldValue(this, successful);
|
| 667 |
-
if (v && v.constructor == Array) {
|
| 668 |
-
for (var i=0,max=v.length; i < max; i++) {
|
| 669 |
-
a.push({name: n, value: v[i]});
|
| 670 |
-
}
|
| 671 |
-
}
|
| 672 |
-
else if (v !== null && typeof v != 'undefined') {
|
| 673 |
-
a.push({name: this.name, value: v});
|
| 674 |
-
}
|
| 675 |
-
});
|
| 676 |
-
//hand off to jQuery.param for proper encoding
|
| 677 |
-
return $.param(a);
|
| 678 |
-
};
|
| 679 |
-
|
| 680 |
-
/**
|
| 681 |
-
* Returns the value(s) of the element in the matched set. For example, consider the following form:
|
| 682 |
-
*
|
| 683 |
-
* <form><fieldset>
|
| 684 |
-
* <input name="A" type="text" />
|
| 685 |
-
* <input name="A" type="text" />
|
| 686 |
-
* <input name="B" type="checkbox" value="B1" />
|
| 687 |
-
* <input name="B" type="checkbox" value="B2"/>
|
| 688 |
-
* <input name="C" type="radio" value="C1" />
|
| 689 |
-
* <input name="C" type="radio" value="C2" />
|
| 690 |
-
* </fieldset></form>
|
| 691 |
-
*
|
| 692 |
-
* var v = $(':text').fieldValue();
|
| 693 |
-
* // if no values are entered into the text inputs
|
| 694 |
-
* v == ['','']
|
| 695 |
-
* // if values entered into the text inputs are 'foo' and 'bar'
|
| 696 |
-
* v == ['foo','bar']
|
| 697 |
-
*
|
| 698 |
-
* var v = $(':checkbox').fieldValue();
|
| 699 |
-
* // if neither checkbox is checked
|
| 700 |
-
* v === undefined
|
| 701 |
-
* // if both checkboxes are checked
|
| 702 |
-
* v == ['B1', 'B2']
|
| 703 |
-
*
|
| 704 |
-
* var v = $(':radio').fieldValue();
|
| 705 |
-
* // if neither radio is checked
|
| 706 |
-
* v === undefined
|
| 707 |
-
* // if first radio is checked
|
| 708 |
-
* v == ['C1']
|
| 709 |
-
*
|
| 710 |
-
* The successful argument controls whether or not the field element must be 'successful'
|
| 711 |
-
* (per http://www.w3.org/TR/html4/interact/forms.html#successful-controls).
|
| 712 |
-
* The default value of the successful argument is true. If this value is false the value(s)
|
| 713 |
-
* for each element is returned.
|
| 714 |
-
*
|
| 715 |
-
* Note: This method *always* returns an array. If no valid value can be determined the
|
| 716 |
-
* array will be empty, otherwise it will contain one or more values.
|
| 717 |
-
*/
|
| 718 |
-
$.fn.fieldValue = function(successful) {
|
| 719 |
-
for (var val=[], i=0, max=this.length; i < max; i++) {
|
| 720 |
-
var el = this[i];
|
| 721 |
-
var v = $.fieldValue(el, successful);
|
| 722 |
-
if (v === null || typeof v == 'undefined' || (v.constructor == Array && !v.length)) {
|
| 723 |
-
continue;
|
| 724 |
-
}
|
| 725 |
-
v.constructor == Array ? $.merge(val, v) : val.push(v);
|
| 726 |
-
}
|
| 727 |
-
return val;
|
| 728 |
-
};
|
| 729 |
-
|
| 730 |
-
/**
|
| 731 |
-
* Returns the value of the field element.
|
| 732 |
-
*/
|
| 733 |
-
$.fieldValue = function(el, successful) {
|
| 734 |
-
var n = el.name, t = el.type, tag = el.tagName.toLowerCase();
|
| 735 |
-
if (successful === undefined) {
|
| 736 |
-
successful = true;
|
| 737 |
-
}
|
| 738 |
-
|
| 739 |
-
if (successful && (!n || el.disabled || t == 'reset' || t == 'button' ||
|
| 740 |
-
(t == 'checkbox' || t == 'radio') && !el.checked ||
|
| 741 |
-
(t == 'submit' || t == 'image') && el.form && el.form.clk != el ||
|
| 742 |
-
tag == 'select' && el.selectedIndex == -1)) {
|
| 743 |
-
return null;
|
| 744 |
-
}
|
| 745 |
-
|
| 746 |
-
if (tag == 'select') {
|
| 747 |
-
var index = el.selectedIndex;
|
| 748 |
-
if (index < 0) {
|
| 749 |
-
return null;
|
| 750 |
-
}
|
| 751 |
-
var a = [], ops = el.options;
|
| 752 |
-
var one = (t == 'select-one');
|
| 753 |
-
var max = (one ? index+1 : ops.length);
|
| 754 |
-
for(var i=(one ? index : 0); i < max; i++) {
|
| 755 |
-
var op = ops[i];
|
| 756 |
-
if (op.selected) {
|
| 757 |
-
var v = op.value;
|
| 758 |
-
if (!v) { // extra pain for IE...
|
| 759 |
-
v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value;
|
| 760 |
-
}
|
| 761 |
-
if (one) {
|
| 762 |
-
return v;
|
| 763 |
-
}
|
| 764 |
-
a.push(v);
|
| 765 |
-
}
|
| 766 |
-
}
|
| 767 |
-
return a;
|
| 768 |
-
}
|
| 769 |
-
return $(el).val();
|
| 770 |
-
};
|
| 771 |
-
|
| 772 |
-
/**
|
| 773 |
-
* Clears the form data. Takes the following actions on the form's input fields:
|
| 774 |
-
* - input text fields will have their 'value' property set to the empty string
|
| 775 |
-
* - select elements will have their 'selectedIndex' property set to -1
|
| 776 |
-
* - checkbox and radio inputs will have their 'checked' property set to false
|
| 777 |
-
* - inputs of type submit, button, reset, and hidden will *not* be effected
|
| 778 |
-
* - button elements will *not* be effected
|
| 779 |
-
*/
|
| 780 |
-
$.fn.clearForm = function() {
|
| 781 |
-
return this.each(function() {
|
| 782 |
-
$('input,select,textarea', this).clearFields();
|
| 783 |
-
});
|
| 784 |
-
};
|
| 785 |
-
|
| 786 |
-
/**
|
| 787 |
-
* Clears the selected form elements.
|
| 788 |
-
*/
|
| 789 |
-
$.fn.clearFields = $.fn.clearInputs = function() {
|
| 790 |
-
return this.each(function() {
|
| 791 |
-
var t = this.type, tag = this.tagName.toLowerCase();
|
| 792 |
-
if (t == 'text' || t == 'password' || tag == 'textarea') {
|
| 793 |
-
this.value = '';
|
| 794 |
-
}
|
| 795 |
-
else if (t == 'checkbox' || t == 'radio') {
|
| 796 |
-
this.checked = false;
|
| 797 |
-
}
|
| 798 |
-
else if (tag == 'select') {
|
| 799 |
-
this.selectedIndex = -1;
|
| 800 |
-
}
|
| 801 |
-
});
|
| 802 |
-
};
|
| 803 |
-
|
| 804 |
-
/**
|
| 805 |
-
* Resets the form data. Causes all form elements to be reset to their original value.
|
| 806 |
-
*/
|
| 807 |
-
$.fn.resetForm = function() {
|
| 808 |
-
return this.each(function() {
|
| 809 |
-
// guard against an input with the name of 'reset'
|
| 810 |
-
// note that IE reports the reset function as an 'object'
|
| 811 |
-
if (typeof this.reset == 'function' || (typeof this.reset == 'object' && !this.reset.nodeType)) {
|
| 812 |
-
this.reset();
|
| 813 |
-
}
|
| 814 |
-
});
|
| 815 |
-
};
|
| 816 |
-
|
| 817 |
-
/**
|
| 818 |
-
* Enables or disables any matching elements.
|
| 819 |
-
*/
|
| 820 |
-
$.fn.enable = function(b) {
|
| 821 |
-
if (b === undefined) {
|
| 822 |
-
b = true;
|
| 823 |
-
}
|
| 824 |
-
return this.each(function() {
|
| 825 |
-
this.disabled = !b;
|
| 826 |
-
});
|
| 827 |
-
};
|
| 828 |
-
|
| 829 |
-
/**
|
| 830 |
-
* Checks/unchecks any matching checkboxes or radio buttons and
|
| 831 |
-
* selects/deselects and matching option elements.
|
| 832 |
-
*/
|
| 833 |
-
$.fn.selected = function(select) {
|
| 834 |
-
if (select === undefined) {
|
| 835 |
-
select = true;
|
| 836 |
-
}
|
| 837 |
-
return this.each(function() {
|
| 838 |
-
var t = this.type;
|
| 839 |
-
if (t == 'checkbox' || t == 'radio') {
|
| 840 |
-
this.checked = select;
|
| 841 |
-
}
|
| 842 |
-
else if (this.tagName.toLowerCase() == 'option') {
|
| 843 |
-
var $sel = $(this).parent('select');
|
| 844 |
-
if (select && $sel[0] && $sel[0].type == 'select-one') {
|
| 845 |
-
// deselect all other options
|
| 846 |
-
$sel.find('option').selected(false);
|
| 847 |
-
}
|
| 848 |
-
this.selected = select;
|
| 849 |
-
}
|
| 850 |
-
});
|
| 851 |
-
};
|
| 852 |
-
|
| 853 |
-
// helper fn for console logging
|
| 854 |
-
function log() {
|
| 855 |
-
var msg = '[jquery.form] ' + Array.prototype.join.call(arguments,'');
|
| 856 |
-
if (window.console && window.console.log) {
|
| 857 |
-
window.console.log(msg);
|
| 858 |
-
}
|
| 859 |
-
else if (window.opera && window.opera.postError) {
|
| 860 |
-
window.opera.postError(msg);
|
| 861 |
-
}
|
| 862 |
-
};
|
| 863 |
-
|
| 864 |
-
})(jQuery);
|
| 1 |
+
/*!
|
| 2 |
+
* jQuery Form Plugin
|
| 3 |
+
* version: 2.80 (25-MAY-2011)
|
| 4 |
+
* @requires jQuery v1.3.2 or later
|
| 5 |
+
*
|
| 6 |
+
* Examples and documentation at: http://malsup.com/jquery/form/
|
| 7 |
+
* Dual licensed under the MIT and GPL licenses:
|
| 8 |
+
* http://www.opensource.org/licenses/mit-license.php
|
| 9 |
+
* http://www.gnu.org/licenses/gpl.html
|
| 10 |
+
*/
|
| 11 |
+
;(function($) {
|
| 12 |
+
|
| 13 |
+
/*
|
| 14 |
+
Usage Note:
|
| 15 |
+
-----------
|
| 16 |
+
Do not use both ajaxSubmit and ajaxForm on the same form. These
|
| 17 |
+
functions are intended to be exclusive. Use ajaxSubmit if you want
|
| 18 |
+
to bind your own submit handler to the form. For example,
|
| 19 |
+
|
| 20 |
+
$(document).ready(function() {
|
| 21 |
+
$('#myForm').bind('submit', function(e) {
|
| 22 |
+
e.preventDefault(); // <-- important
|
| 23 |
+
$(this).ajaxSubmit({
|
| 24 |
+
target: '#output'
|
| 25 |
+
});
|
| 26 |
+
});
|
| 27 |
+
});
|
| 28 |
+
|
| 29 |
+
Use ajaxForm when you want the plugin to manage all the event binding
|
| 30 |
+
for you. For example,
|
| 31 |
+
|
| 32 |
+
$(document).ready(function() {
|
| 33 |
+
$('#myForm').ajaxForm({
|
| 34 |
+
target: '#output'
|
| 35 |
+
});
|
| 36 |
+
});
|
| 37 |
+
|
| 38 |
+
When using ajaxForm, the ajaxSubmit function will be invoked for you
|
| 39 |
+
at the appropriate time.
|
| 40 |
+
*/
|
| 41 |
+
|
| 42 |
+
/**
|
| 43 |
+
* ajaxSubmit() provides a mechanism for immediately submitting
|
| 44 |
+
* an HTML form using AJAX.
|
| 45 |
+
*/
|
| 46 |
+
$.fn.ajaxSubmit = function(options) {
|
| 47 |
+
// fast fail if nothing selected (http://dev.jquery.com/ticket/2752)
|
| 48 |
+
if (!this.length) {
|
| 49 |
+
log('ajaxSubmit: skipping submit process - no element selected');
|
| 50 |
+
return this;
|
| 51 |
+
}
|
| 52 |
+
|
| 53 |
+
if (typeof options == 'function') {
|
| 54 |
+
options = { success: options };
|
| 55 |
+
}
|
| 56 |
+
|
| 57 |
+
var action = this.attr('action');
|
| 58 |
+
var url = (typeof action === 'string') ? $.trim(action) : '';
|
| 59 |
+
url = url || window.location.href || '';
|
| 60 |
+
if (url) {
|
| 61 |
+
// clean url (don't include hash vaue)
|
| 62 |
+
url = (url.match(/^([^#]+)/)||[])[1];
|
| 63 |
+
}
|
| 64 |
+
|
| 65 |
+
options = $.extend(true, {
|
| 66 |
+
url: url,
|
| 67 |
+
success: $.ajaxSettings.success,
|
| 68 |
+
type: this[0].getAttribute('method') || 'GET', // IE7 massage (see issue 57)
|
| 69 |
+
iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank'
|
| 70 |
+
}, options);
|
| 71 |
+
|
| 72 |
+
// hook for manipulating the form data before it is extracted;
|
| 73 |
+
// convenient for use with rich editors like tinyMCE or FCKEditor
|
| 74 |
+
var veto = {};
|
| 75 |
+
this.trigger('form-pre-serialize', [this, options, veto]);
|
| 76 |
+
if (veto.veto) {
|
| 77 |
+
log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');
|
| 78 |
+
return this;
|
| 79 |
+
}
|
| 80 |
+
|
| 81 |
+
// provide opportunity to alter form data before it is serialized
|
| 82 |
+
if (options.beforeSerialize && options.beforeSerialize(this, options) === false) {
|
| 83 |
+
log('ajaxSubmit: submit aborted via beforeSerialize callback');
|
| 84 |
+
return this;
|
| 85 |
+
}
|
| 86 |
+
|
| 87 |
+
var n,v,a = this.formToArray(options.semantic);
|
| 88 |
+
if (options.data) {
|
| 89 |
+
options.extraData = options.data;
|
| 90 |
+
for (n in options.data) {
|
| 91 |
+
if(options.data[n] instanceof Array) {
|
| 92 |
+
for (var k in options.data[n]) {
|
| 93 |
+
a.push( { name: n, value: options.data[n][k] } );
|
| 94 |
+
}
|
| 95 |
+
}
|
| 96 |
+
else {
|
| 97 |
+
v = options.data[n];
|
| 98 |
+
v = $.isFunction(v) ? v() : v; // if value is fn, invoke it
|
| 99 |
+
a.push( { name: n, value: v } );
|
| 100 |
+
}
|
| 101 |
+
}
|
| 102 |
+
}
|
| 103 |
+
|
| 104 |
+
// give pre-submit callback an opportunity to abort the submit
|
| 105 |
+
if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) {
|
| 106 |
+
log('ajaxSubmit: submit aborted via beforeSubmit callback');
|
| 107 |
+
return this;
|
| 108 |
+
}
|
| 109 |
+
|
| 110 |
+
// fire vetoable 'validate' event
|
| 111 |
+
this.trigger('form-submit-validate', [a, this, options, veto]);
|
| 112 |
+
if (veto.veto) {
|
| 113 |
+
log('ajaxSubmit: submit vetoed via form-submit-validate trigger');
|
| 114 |
+
return this;
|
| 115 |
+
}
|
| 116 |
+
|
| 117 |
+
var q = $.param(a);
|
| 118 |
+
|
| 119 |
+
if (options.type.toUpperCase() == 'GET') {
|
| 120 |
+
options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q;
|
| 121 |
+
options.data = null; // data is null for 'get'
|
| 122 |
+
}
|
| 123 |
+
else {
|
| 124 |
+
options.data = q; // data is the query string for 'post'
|
| 125 |
+
}
|
| 126 |
+
|
| 127 |
+
var $form = this, callbacks = [];
|
| 128 |
+
if (options.resetForm) {
|
| 129 |
+
callbacks.push(function() { $form.resetForm(); });
|
| 130 |
+
}
|
| 131 |
+
if (options.clearForm) {
|
| 132 |
+
callbacks.push(function() { $form.clearForm(); });
|
| 133 |
+
}
|
| 134 |
+
|
| 135 |
+
// perform a load on the target only if dataType is not provided
|
| 136 |
+
if (!options.dataType && options.target) {
|
| 137 |
+
var oldSuccess = options.success || function(){};
|
| 138 |
+
callbacks.push(function(data) {
|
| 139 |
+
var fn = options.replaceTarget ? 'replaceWith' : 'html';
|
| 140 |
+
$(options.target)[fn](data).each(oldSuccess, arguments);
|
| 141 |
+
});
|
| 142 |
+
}
|
| 143 |
+
else if (options.success) {
|
| 144 |
+
callbacks.push(options.success);
|
| 145 |
+
}
|
| 146 |
+
|
| 147 |
+
options.success = function(data, status, xhr) { // jQuery 1.4+ passes xhr as 3rd arg
|
| 148 |
+
var context = options.context || options; // jQuery 1.4+ supports scope context
|
| 149 |
+
for (var i=0, max=callbacks.length; i < max; i++) {
|
| 150 |
+
callbacks[i].apply(context, [data, status, xhr || $form, $form]);
|
| 151 |
+
}
|
| 152 |
+
};
|
| 153 |
+
|
| 154 |
+
// are there files to upload?
|
| 155 |
+
var fileInputs = $('input:file', this).length > 0;
|
| 156 |
+
var mp = 'multipart/form-data';
|
| 157 |
+
var multipart = ($form.attr('enctype') == mp || $form.attr('encoding') == mp);
|
| 158 |
+
|
| 159 |
+
// options.iframe allows user to force iframe mode
|
| 160 |
+
// 06-NOV-09: now defaulting to iframe mode if file input is detected
|
| 161 |
+
if (options.iframe !== false && (fileInputs || options.iframe || multipart)) {
|
| 162 |
+
// hack to fix Safari hang (thanks to Tim Molendijk for this)
|
| 163 |
+
// see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d
|
| 164 |
+
if (options.closeKeepAlive) {
|
| 165 |
+
$.get(options.closeKeepAlive, function() { fileUpload(a); });
|
| 166 |
+
}
|
| 167 |
+
else {
|
| 168 |
+
fileUpload(a);
|
| 169 |
+
}
|
| 170 |
+
}
|
| 171 |
+
else {
|
| 172 |
+
$.ajax(options);
|
| 173 |
+
}
|
| 174 |
+
|
| 175 |
+
// fire 'notify' event
|
| 176 |
+
this.trigger('form-submit-notify', [this, options]);
|
| 177 |
+
return this;
|
| 178 |
+
|
| 179 |
+
|
| 180 |
+
// private function for handling file uploads (hat tip to YAHOO!)
|
| 181 |
+
function fileUpload(a) {
|
| 182 |
+
var form = $form[0], i, s, g, id, $io, io, xhr, sub, n, timedOut, timeoutHandle;
|
| 183 |
+
|
| 184 |
+
if (a) {
|
| 185 |
+
// ensure that every serialized input is still enabled
|
| 186 |
+
for (i=0; i < a.length; i++) {
|
| 187 |
+
$(form[a[i].name]).attr('disabled', false);
|
| 188 |
+
}
|
| 189 |
+
}
|
| 190 |
+
|
| 191 |
+
if ($(':input[name=submit],:input[id=submit]', form).length) {
|
| 192 |
+
// if there is an input with a name or id of 'submit' then we won't be
|
| 193 |
+
// able to invoke the submit fn on the form (at least not x-browser)
|
| 194 |
+
alert('Error: Form elements must not have name or id of "submit".');
|
| 195 |
+
return;
|
| 196 |
+
}
|
| 197 |
+
|
| 198 |
+
s = $.extend(true, {}, $.ajaxSettings, options);
|
| 199 |
+
s.context = s.context || s;
|
| 200 |
+
id = 'jqFormIO' + (new Date().getTime());
|
| 201 |
+
if (s.iframeTarget) {
|
| 202 |
+
$io = $(s.iframeTarget);
|
| 203 |
+
n = $io.attr('name');
|
| 204 |
+
if (n == null)
|
| 205 |
+
$io.attr('name', id);
|
| 206 |
+
else
|
| 207 |
+
id = n;
|
| 208 |
+
}
|
| 209 |
+
else {
|
| 210 |
+
$io = $('<iframe name="' + id + '" src="'+ s.iframeSrc +'" />');
|
| 211 |
+
$io.css({ position: 'absolute', top: '-1000px', left: '-1000px' });
|
| 212 |
+
}
|
| 213 |
+
io = $io[0];
|
| 214 |
+
|
| 215 |
+
|
| 216 |
+
xhr = { // mock object
|
| 217 |
+
aborted: 0,
|
| 218 |
+
responseText: null,
|
| 219 |
+
responseXML: null,
|
| 220 |
+
status: 0,
|
| 221 |
+
statusText: 'n/a',
|
| 222 |
+
getAllResponseHeaders: function() {},
|
| 223 |
+
getResponseHeader: function() {},
|
| 224 |
+
setRequestHeader: function() {},
|
| 225 |
+
abort: function(status) {
|
| 226 |
+
var e = (status === 'timeout' ? 'timeout' : 'aborted');
|
| 227 |
+
log('aborting upload... ' + e);
|
| 228 |
+
this.aborted = 1;
|
| 229 |
+
$io.attr('src', s.iframeSrc); // abort op in progress
|
| 230 |
+
xhr.error = e;
|
| 231 |
+
s.error && s.error.call(s.context, xhr, e, e);
|
| 232 |
+
g && $.event.trigger("ajaxError", [xhr, s, e]);
|
| 233 |
+
s.complete && s.complete.call(s.context, xhr, e);
|
| 234 |
+
}
|
| 235 |
+
};
|
| 236 |
+
|
| 237 |
+
g = s.global;
|
| 238 |
+
// trigger ajax global events so that activity/block indicators work like normal
|
| 239 |
+
if (g && ! $.active++) {
|
| 240 |
+
$.event.trigger("ajaxStart");
|
| 241 |
+
}
|
| 242 |
+
if (g) {
|
| 243 |
+
$.event.trigger("ajaxSend", [xhr, s]);
|
| 244 |
+
}
|
| 245 |
+
|
| 246 |
+
if (s.beforeSend && s.beforeSend.call(s.context, xhr, s) === false) {
|
| 247 |
+
if (s.global) {
|
| 248 |
+
$.active--;
|
| 249 |
+
}
|
| 250 |
+
return;
|
| 251 |
+
}
|
| 252 |
+
if (xhr.aborted) {
|
| 253 |
+
return;
|
| 254 |
+
}
|
| 255 |
+
|
| 256 |
+
// add submitting element to data if we know it
|
| 257 |
+
sub = form.clk;
|
| 258 |
+
if (sub) {
|
| 259 |
+
n = sub.name;
|
| 260 |
+
if (n && !sub.disabled) {
|
| 261 |
+
s.extraData = s.extraData || {};
|
| 262 |
+
s.extraData[n] = sub.value;
|
| 263 |
+
if (sub.type == "image") {
|
| 264 |
+
s.extraData[n+'.x'] = form.clk_x;
|
| 265 |
+
s.extraData[n+'.y'] = form.clk_y;
|
| 266 |
+
}
|
| 267 |
+
}
|
| 268 |
+
}
|
| 269 |
+
|
| 270 |
+
// take a breath so that pending repaints get some cpu time before the upload starts
|
| 271 |
+
function doSubmit() {
|
| 272 |
+
// make sure form attrs are set
|
| 273 |
+
var t = $form.attr('target'), a = $form.attr('action');
|
| 274 |
+
|
| 275 |
+
// update form attrs in IE friendly way
|
| 276 |
+
form.setAttribute('target',id);
|
| 277 |
+
if (form.getAttribute('method') != 'POST') {
|
| 278 |
+
form.setAttribute('method', 'POST');
|
| 279 |
+
}
|
| 280 |
+
if (form.getAttribute('action') != s.url) {
|
| 281 |
+
form.setAttribute('action', s.url);
|
| 282 |
+
}
|
| 283 |
+
|
| 284 |
+
// ie borks in some cases when setting encoding
|
| 285 |
+
if (! s.skipEncodingOverride) {
|
| 286 |
+
$form.attr({
|
| 287 |
+
encoding: 'multipart/form-data',
|
| 288 |
+
enctype: 'multipart/form-data'
|
| 289 |
+
});
|
| 290 |
+
}
|
| 291 |
+
|
| 292 |
+
// support timout
|
| 293 |
+
if (s.timeout) {
|
| 294 |
+
timeoutHandle = setTimeout(function() { timedOut = true; cb(true); }, s.timeout);
|
| 295 |
+
}
|
| 296 |
+
|
| 297 |
+
// add "extra" data to form if provided in options
|
| 298 |
+
var extraInputs = [];
|
| 299 |
+
try {
|
| 300 |
+
if (s.extraData) {
|
| 301 |
+
for (var n in s.extraData) {
|
| 302 |
+
extraInputs.push(
|
| 303 |
+
$('<input type="hidden" name="'+n+'" value="'+s.extraData[n]+'" />')
|
| 304 |
+
.appendTo(form)[0]);
|
| 305 |
+
}
|
| 306 |
+
}
|
| 307 |
+
|
| 308 |
+
if (!s.iframeTarget) {
|
| 309 |
+
// add iframe to doc and submit the form
|
| 310 |
+
$io.appendTo('body');
|
| 311 |
+
io.attachEvent ? io.attachEvent('onload', cb) : io.addEventListener('load', cb, false);
|
| 312 |
+
}
|
| 313 |
+
form.submit();
|
| 314 |
+
}
|
| 315 |
+
finally {
|
| 316 |
+
// reset attrs and remove "extra" input elements
|
| 317 |
+
form.setAttribute('action',a);
|
| 318 |
+
if(t) {
|
| 319 |
+
form.setAttribute('target', t);
|
| 320 |
+
} else {
|
| 321 |
+
$form.removeAttr('target');
|
| 322 |
+
}
|
| 323 |
+
$(extraInputs).remove();
|
| 324 |
+
}
|
| 325 |
+
}
|
| 326 |
+
|
| 327 |
+
if (s.forceSync) {
|
| 328 |
+
doSubmit();
|
| 329 |
+
}
|
| 330 |
+
else {
|
| 331 |
+
setTimeout(doSubmit, 10); // this lets dom updates render
|
| 332 |
+
}
|
| 333 |
+
|
| 334 |
+
var data, doc, domCheckCount = 50, callbackProcessed;
|
| 335 |
+
|
| 336 |
+
function cb(e) {
|
| 337 |
+
if (xhr.aborted || callbackProcessed) {
|
| 338 |
+
return;
|
| 339 |
+
}
|
| 340 |
+
if (e === true && xhr) {
|
| 341 |
+
xhr.abort('timeout');
|
| 342 |
+
return;
|
| 343 |
+
}
|
| 344 |
+
|
| 345 |
+
var doc = io.contentWindow ? io.contentWindow.document : io.contentDocument ? io.contentDocument : io.document;
|
| 346 |
+
if (!doc || doc.location.href == s.iframeSrc) {
|
| 347 |
+
// response not received yet
|
| 348 |
+
if (!timedOut)
|
| 349 |
+
return;
|
| 350 |
+
}
|
| 351 |
+
io.detachEvent ? io.detachEvent('onload', cb) : io.removeEventListener('load', cb, false);
|
| 352 |
+
|
| 353 |
+
var status = 'success', errMsg;
|
| 354 |
+
try {
|
| 355 |
+
if (timedOut) {
|
| 356 |
+
throw 'timeout';
|
| 357 |
+
}
|
| 358 |
+
|
| 359 |
+
var isXml = s.dataType == 'xml' || doc.XMLDocument || $.isXMLDoc(doc);
|
| 360 |
+
log('isXml='+isXml);
|
| 361 |
+
if (!isXml && window.opera && (doc.body == null || doc.body.innerHTML == '')) {
|
| 362 |
+
if (--domCheckCount) {
|
| 363 |
+
// in some browsers (Opera) the iframe DOM is not always traversable when
|
| 364 |
+
// the onload callback fires, so we loop a bit to accommodate
|
| 365 |
+
log('requeing onLoad callback, DOM not available');
|
| 366 |
+
setTimeout(cb, 250);
|
| 367 |
+
return;
|
| 368 |
+
}
|
| 369 |
+
// let this fall through because server response could be an empty document
|
| 370 |
+
//log('Could not access iframe DOM after mutiple tries.');
|
| 371 |
+
//throw 'DOMException: not available';
|
| 372 |
+
}
|
| 373 |
+
|
| 374 |
+
//log('response detected');
|
| 375 |
+
var docRoot = doc.body ? doc.body : doc.documentElement;
|
| 376 |
+
xhr.responseText = docRoot ? docRoot.innerHTML : null;
|
| 377 |
+
xhr.responseXML = doc.XMLDocument ? doc.XMLDocument : doc;
|
| 378 |
+
if (isXml)
|
| 379 |
+
s.dataType = 'xml';
|
| 380 |
+
xhr.getResponseHeader = function(header){
|
| 381 |
+
var headers = {'content-type': s.dataType};
|
| 382 |
+
return headers[header];
|
| 383 |
+
};
|
| 384 |
+
// support for XHR 'status' & 'statusText' emulation :
|
| 385 |
+
if (docRoot) {
|
| 386 |
+
xhr.status = Number( docRoot.getAttribute('status') ) || xhr.status;
|
| 387 |
+
xhr.statusText = docRoot.getAttribute('statusText') || xhr.statusText;
|
| 388 |
+
}
|
| 389 |
+
|
| 390 |
+
var dt = s.dataType || '';
|
| 391 |
+
var scr = /(json|script|text)/.test(dt.toLowerCase());
|
| 392 |
+
if (scr || s.textarea) {
|
| 393 |
+
// see if user embedded response in textarea
|
| 394 |
+
var ta = doc.getElementsByTagName('textarea')[0];
|
| 395 |
+
if (ta) {
|
| 396 |
+
xhr.responseText = ta.value;
|
| 397 |
+
// support for XHR 'status' & 'statusText' emulation :
|
| 398 |
+
xhr.status = Number( ta.getAttribute('status') ) || xhr.status;
|
| 399 |
+
xhr.statusText = ta.getAttribute('statusText') || xhr.statusText;
|
| 400 |
+
}
|
| 401 |
+
else if (scr) {
|
| 402 |
+
// account for browsers injecting pre around json response
|
| 403 |
+
var pre = doc.getElementsByTagName('pre')[0];
|
| 404 |
+
var b = doc.getElementsByTagName('body')[0];
|
| 405 |
+
if (pre) {
|
| 406 |
+
xhr.responseText = pre.textContent ? pre.textContent : pre.innerHTML;
|
| 407 |
+
}
|
| 408 |
+
else if (b) {
|
| 409 |
+
xhr.responseText = b.innerHTML;
|
| 410 |
+
}
|
| 411 |
+
}
|
| 412 |
+
}
|
| 413 |
+
else if (s.dataType == 'xml' && !xhr.responseXML && xhr.responseText != null) {
|
| 414 |
+
xhr.responseXML = toXml(xhr.responseText);
|
| 415 |
+
}
|
| 416 |
+
|
| 417 |
+
try {
|
| 418 |
+
data = httpData(xhr, s.dataType, s);
|
| 419 |
+
}
|
| 420 |
+
catch (e) {
|
| 421 |
+
status = 'parsererror';
|
| 422 |
+
xhr.error = errMsg = (e || status);
|
| 423 |
+
}
|
| 424 |
+
}
|
| 425 |
+
catch (e) {
|
| 426 |
+
log('error caught',e);
|
| 427 |
+
status = 'error';
|
| 428 |
+
xhr.error = errMsg = (e || status);
|
| 429 |
+
}
|
| 430 |
+
|
| 431 |
+
if (xhr.aborted) {
|
| 432 |
+
log('upload aborted');
|
| 433 |
+
status = null;
|
| 434 |
+
}
|
| 435 |
+
|
| 436 |
+
if (xhr.status) { // we've set xhr.status
|
| 437 |
+
status = (xhr.status >= 200 && xhr.status < 300 || xhr.status === 304) ? 'success' : 'error';
|
| 438 |
+
}
|
| 439 |
+
|
| 440 |
+
// ordering of these callbacks/triggers is odd, but that's how $.ajax does it
|
| 441 |
+
if (status === 'success') {
|
| 442 |
+
s.success && s.success.call(s.context, data, 'success', xhr);
|
| 443 |
+
g && $.event.trigger("ajaxSuccess", [xhr, s]);
|
| 444 |
+
}
|
| 445 |
+
else if (status) {
|
| 446 |
+
if (errMsg == undefined)
|
| 447 |
+
errMsg = xhr.statusText;
|
| 448 |
+
s.error && s.error.call(s.context, xhr, status, errMsg);
|
| 449 |
+
g && $.event.trigger("ajaxError", [xhr, s, errMsg]);
|
| 450 |
+
}
|
| 451 |
+
|
| 452 |
+
g && $.event.trigger("ajaxComplete", [xhr, s]);
|
| 453 |
+
|
| 454 |
+
if (g && ! --$.active) {
|
| 455 |
+
$.event.trigger("ajaxStop");
|
| 456 |
+
}
|
| 457 |
+
|
| 458 |
+
s.complete && s.complete.call(s.context, xhr, status);
|
| 459 |
+
|
| 460 |
+
callbackProcessed = true;
|
| 461 |
+
if (s.timeout)
|
| 462 |
+
clearTimeout(timeoutHandle);
|
| 463 |
+
|
| 464 |
+
// clean up
|
| 465 |
+
setTimeout(function() {
|
| 466 |
+
if (!s.iframeTarget)
|
| 467 |
+
$io.remove();
|
| 468 |
+
xhr.responseXML = null;
|
| 469 |
+
}, 100);
|
| 470 |
+
}
|
| 471 |
+
|
| 472 |
+
var toXml = $.parseXML || function(s, doc) { // use parseXML if available (jQuery 1.5+)
|
| 473 |
+
if (window.ActiveXObject) {
|
| 474 |
+
doc = new ActiveXObject('Microsoft.XMLDOM');
|
| 475 |
+
doc.async = 'false';
|
| 476 |
+
doc.loadXML(s);
|
| 477 |
+
}
|
| 478 |
+
else {
|
| 479 |
+
doc = (new DOMParser()).parseFromString(s, 'text/xml');
|
| 480 |
+
}
|
| 481 |
+
return (doc && doc.documentElement && doc.documentElement.nodeName != 'parsererror') ? doc : null;
|
| 482 |
+
};
|
| 483 |
+
var parseJSON = $.parseJSON || function(s) {
|
| 484 |
+
return window['eval']('(' + s + ')');
|
| 485 |
+
};
|
| 486 |
+
|
| 487 |
+
var httpData = function( xhr, type, s ) { // mostly lifted from jq1.4.4
|
| 488 |
+
|
| 489 |
+
var ct = xhr.getResponseHeader('content-type') || '',
|
| 490 |
+
xml = type === 'xml' || !type && ct.indexOf('xml') >= 0,
|
| 491 |
+
data = xml ? xhr.responseXML : xhr.responseText;
|
| 492 |
+
|
| 493 |
+
if (xml && data.documentElement.nodeName === 'parsererror') {
|
| 494 |
+
$.error && $.error('parsererror');
|
| 495 |
+
}
|
| 496 |
+
if (s && s.dataFilter) {
|
| 497 |
+
data = s.dataFilter(data, type);
|
| 498 |
+
}
|
| 499 |
+
if (typeof data === 'string') {
|
| 500 |
+
if (type === 'json' || !type && ct.indexOf('json') >= 0) {
|
| 501 |
+
data = parseJSON(data);
|
| 502 |
+
} else if (type === "script" || !type && ct.indexOf("javascript") >= 0) {
|
| 503 |
+
$.globalEval(data);
|
| 504 |
+
}
|
| 505 |
+
}
|
| 506 |
+
return data;
|
| 507 |
+
};
|
| 508 |
+
}
|
| 509 |
+
};
|
| 510 |
+
|
| 511 |
+
/**
|
| 512 |
+
* ajaxForm() provides a mechanism for fully automating form submission.
|
| 513 |
+
*
|
| 514 |
+
* The advantages of using this method instead of ajaxSubmit() are:
|
| 515 |
+
*
|
| 516 |
+
* 1: This method will include coordinates for <input type="image" /> elements (if the element
|
| 517 |
+
* is used to submit the form).
|
| 518 |
+
* 2. This method will include the submit element's name/value data (for the element that was
|
| 519 |
+
* used to submit the form).
|
| 520 |
+
* 3. This method binds the submit() method to the form for you.
|
| 521 |
+
*
|
| 522 |
+
* The options argument for ajaxForm works exactly as it does for ajaxSubmit. ajaxForm merely
|
| 523 |
+
* passes the options argument along after properly binding events for submit elements and
|
| 524 |
+
* the form itself.
|
| 525 |
+
*/
|
| 526 |
+
$.fn.ajaxForm = function(options) {
|
| 527 |
+
// in jQuery 1.3+ we can fix mistakes with the ready state
|
| 528 |
+
if (this.length === 0) {
|
| 529 |
+
var o = { s: this.selector, c: this.context };
|
| 530 |
+
if (!$.isReady && o.s) {
|
| 531 |
+
log('DOM not ready, queuing ajaxForm');
|
| 532 |
+
$(function() {
|
| 533 |
+
$(o.s,o.c).ajaxForm(options);
|
| 534 |
+
});
|
| 535 |
+
return this;
|
| 536 |
+
}
|
| 537 |
+
// is your DOM ready? http://docs.jquery.com/Tutorials:Introducing_$(document).ready()
|
| 538 |
+
log('terminating; zero elements found by selector' + ($.isReady ? '' : ' (DOM not ready)'));
|
| 539 |
+
return this;
|
| 540 |
+
}
|
| 541 |
+
|
| 542 |
+
return this.ajaxFormUnbind().bind('submit.form-plugin', function(e) {
|
| 543 |
+
if (!e.isDefaultPrevented()) { // if event has been canceled, don't proceed
|
| 544 |
+
e.preventDefault();
|
| 545 |
+
$(this).ajaxSubmit(options);
|
| 546 |
+
}
|
| 547 |
+
}).bind('click.form-plugin', function(e) {
|
| 548 |
+
var target = e.target;
|
| 549 |
+
var $el = $(target);
|
| 550 |
+
if (!($el.is(":submit,input:image"))) {
|
| 551 |
+
// is this a child element of the submit el? (ex: a span within a button)
|
| 552 |
+
var t = $el.closest(':submit');
|
| 553 |
+
if (t.length == 0) {
|
| 554 |
+
return;
|
| 555 |
+
}
|
| 556 |
+
target = t[0];
|
| 557 |
+
}
|
| 558 |
+
var form = this;
|
| 559 |
+
form.clk = target;
|
| 560 |
+
if (target.type == 'image') {
|
| 561 |
+
if (e.offsetX != undefined) {
|
| 562 |
+
form.clk_x = e.offsetX;
|
| 563 |
+
form.clk_y = e.offsetY;
|
| 564 |
+
} else if (typeof $.fn.offset == 'function') { // try to use dimensions plugin
|
| 565 |
+
var offset = $el.offset();
|
| 566 |
+
form.clk_x = e.pageX - offset.left;
|
| 567 |
+
form.clk_y = e.pageY - offset.top;
|
| 568 |
+
} else {
|
| 569 |
+
form.clk_x = e.pageX - target.offsetLeft;
|
| 570 |
+
form.clk_y = e.pageY - target.offsetTop;
|
| 571 |
+
}
|
| 572 |
+
}
|
| 573 |
+
// clear form vars
|
| 574 |
+
setTimeout(function() { form.clk = form.clk_x = form.clk_y = null; }, 100);
|
| 575 |
+
});
|
| 576 |
+
};
|
| 577 |
+
|
| 578 |
+
// ajaxFormUnbind unbinds the event handlers that were bound by ajaxForm
|
| 579 |
+
$.fn.ajaxFormUnbind = function() {
|
| 580 |
+
return this.unbind('submit.form-plugin click.form-plugin');
|
| 581 |
+
};
|
| 582 |
+
|
| 583 |
+
/**
|
| 584 |
+
* formToArray() gathers form element data into an array of objects that can
|
| 585 |
+
* be passed to any of the following ajax functions: $.get, $.post, or load.
|
| 586 |
+
* Each object in the array has both a 'name' and 'value' property. An example of
|
| 587 |
+
* an array for a simple login form might be:
|
| 588 |
+
*
|
| 589 |
+
* [ { name: 'username', value: 'jresig' }, { name: 'password', value: 'secret' } ]
|
| 590 |
+
*
|
| 591 |
+
* It is this array that is passed to pre-submit callback functions provided to the
|
| 592 |
+
* ajaxSubmit() and ajaxForm() methods.
|
| 593 |
+
*/
|
| 594 |
+
$.fn.formToArray = function(semantic) {
|
| 595 |
+
var a = [];
|
| 596 |
+
if (this.length === 0) {
|
| 597 |
+
return a;
|
| 598 |
+
}
|
| 599 |
+
|
| 600 |
+
var form = this[0];
|
| 601 |
+
var els = semantic ? form.getElementsByTagName('*') : form.elements;
|
| 602 |
+
if (!els) {
|
| 603 |
+
return a;
|
| 604 |
+
}
|
| 605 |
+
|
| 606 |
+
var i,j,n,v,el,max,jmax;
|
| 607 |
+
for(i=0, max=els.length; i < max; i++) {
|
| 608 |
+
el = els[i];
|
| 609 |
+
n = el.name;
|
| 610 |
+
if (!n) {
|
| 611 |
+
continue;
|
| 612 |
+
}
|
| 613 |
+
|
| 614 |
+
if (semantic && form.clk && el.type == "image") {
|
| 615 |
+
// handle image inputs on the fly when semantic == true
|
| 616 |
+
if(!el.disabled && form.clk == el) {
|
| 617 |
+
a.push({name: n, value: $(el).val()});
|
| 618 |
+
a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
|
| 619 |
+
}
|
| 620 |
+
continue;
|
| 621 |
+
}
|
| 622 |
+
|
| 623 |
+
v = $.fieldValue(el, true);
|
| 624 |
+
if (v && v.constructor == Array) {
|
| 625 |
+
for(j=0, jmax=v.length; j < jmax; j++) {
|
| 626 |
+
a.push({name: n, value: v[j]});
|
| 627 |
+
}
|
| 628 |
+
}
|
| 629 |
+
else if (v !== null && typeof v != 'undefined') {
|
| 630 |
+
a.push({name: n, value: v});
|
| 631 |
+
}
|
| 632 |
+
}
|
| 633 |
+
|
| 634 |
+
if (!semantic && form.clk) {
|
| 635 |
+
// input type=='image' are not found in elements array! handle it here
|
| 636 |
+
var $input = $(form.clk), input = $input[0];
|
| 637 |
+
n = input.name;
|
| 638 |
+
if (n && !input.disabled && input.type == 'image') {
|
| 639 |
+
a.push({name: n, value: $input.val()});
|
| 640 |
+
a.push({name: n+'.x', value: form.clk_x}, {name: n+'.y', value: form.clk_y});
|
| 641 |
+
}
|
| 642 |
+
}
|
| 643 |
+
return a;
|
| 644 |
+
};
|
| 645 |
+
|
| 646 |
+
/**
|
| 647 |
+
* Serializes form data into a 'submittable' string. This method will return a string
|
| 648 |
+
* in the format: name1=value1&name2=value2
|
| 649 |
+
*/
|
| 650 |
+
$.fn.formSerialize = function(semantic) {
|
| 651 |
+
//hand off to jQuery.param for proper encoding
|
| 652 |
+
return $.param(this.formToArray(semantic));
|
| 653 |
+
};
|
| 654 |
+
|
| 655 |
+
/**
|
| 656 |
+
* Serializes all field elements in the jQuery object into a query string.
|
| 657 |
+
* This method will return a string in the format: name1=value1&name2=value2
|
| 658 |
+
*/
|
| 659 |
+
$.fn.fieldSerialize = function(successful) {
|
| 660 |
+
var a = [];
|
| 661 |
+
this.each(function() {
|
| 662 |
+
var n = this.name;
|
| 663 |
+
if (!n) {
|
| 664 |
+
return;
|
| 665 |
+
}
|
| 666 |
+
var v = $.fieldValue(this, successful);
|
| 667 |
+
if (v && v.constructor == Array) {
|
| 668 |
+
for (var i=0,max=v.length; i < max; i++) {
|
| 669 |
+
a.push({name: n, value: v[i]});
|
| 670 |
+
}
|
| 671 |
+
}
|
| 672 |
+
else if (v !== null && typeof v != 'undefined') {
|
| 673 |
+
a.push({name: this.name, value: v});
|
| 674 |
+
}
|
| 675 |
+
});
|
| 676 |
+
//hand off to jQuery.param for proper encoding
|
| 677 |
+
return $.param(a);
|
| 678 |
+
};
|
| 679 |
+
|
| 680 |
+
/**
|
| 681 |
+
* Returns the value(s) of the element in the matched set. For example, consider the following form:
|
| 682 |
+
*
|
| 683 |
+
* <form><fieldset>
|
| 684 |
+
* <input name="A" type="text" />
|
| 685 |
+
* <input name="A" type="text" />
|
| 686 |
+
* <input name="B" type="checkbox" value="B1" />
|
| 687 |
+
* <input name="B" type="checkbox" value="B2"/>
|
| 688 |
+
* <input name="C" type="radio" value="C1" />
|
| 689 |
+
* <input name="C" type="radio" value="C2" />
|
| 690 |
+
* </fieldset></form>
|
| 691 |
+
*
|
| 692 |
+
* var v = $(':text').fieldValue();
|
| 693 |
+
* // if no values are entered into the text inputs
|
| 694 |
+
* v == ['','']
|
| 695 |
+
* // if values entered into the text inputs are 'foo' and 'bar'
|
| 696 |
+
* v == ['foo','bar']
|
| 697 |
+
*
|
| 698 |
+
* var v = $(':checkbox').fieldValue();
|
| 699 |
+
* // if neither checkbox is checked
|
| 700 |
+
* v === undefined
|
| 701 |
+
* // if both checkboxes are checked
|
| 702 |
+
* v == ['B1', 'B2']
|
| 703 |
+
*
|
| 704 |
+
* var v = $(':radio').fieldValue();
|
| 705 |
+
* // if neither radio is checked
|
| 706 |
+
* v === undefined
|
| 707 |
+
* // if first radio is checked
|
| 708 |
+
* v == ['C1']
|
| 709 |
+
*
|
| 710 |
+
* The successful argument controls whether or not the field element must be 'successful'
|
| 711 |
+
* (per http://www.w3.org/TR/html4/interact/forms.html#successful-controls).
|
| 712 |
+
* The default value of the successful argument is true. If this value is false the value(s)
|
| 713 |
+
* for each element is returned.
|
| 714 |
+
*
|
| 715 |
+
* Note: This method *always* returns an array. If no valid value can be determined the
|
| 716 |
+
* array will be empty, otherwise it will contain one or more values.
|
| 717 |
+
*/
|
| 718 |
+
$.fn.fieldValue = function(successful) {
|
| 719 |
+
for (var val=[], i=0, max=this.length; i < max; i++) {
|
| 720 |
+
var el = this[i];
|
| 721 |
+
var v = $.fieldValue(el, successful);
|
| 722 |
+
if (v === null || typeof v == 'undefined' || (v.constructor == Array && !v.length)) {
|
| 723 |
+
continue;
|
| 724 |
+
}
|
| 725 |
+
v.constructor == Array ? $.merge(val, v) : val.push(v);
|
| 726 |
+
}
|
| 727 |
+
return val;
|
| 728 |
+
};
|
| 729 |
+
|
| 730 |
+
/**
|
| 731 |
+
* Returns the value of the field element.
|
| 732 |
+
*/
|
| 733 |
+
$.fieldValue = function(el, successful) {
|
| 734 |
+
var n = el.name, t = el.type, tag = el.tagName.toLowerCase();
|
| 735 |
+
if (successful === undefined) {
|
| 736 |
+
successful = true;
|
| 737 |
+
}
|
| 738 |
+
|
| 739 |
+
if (successful && (!n || el.disabled || t == 'reset' || t == 'button' ||
|
| 740 |
+
(t == 'checkbox' || t == 'radio') && !el.checked ||
|
| 741 |
+
(t == 'submit' || t == 'image') && el.form && el.form.clk != el ||
|
| 742 |
+
tag == 'select' && el.selectedIndex == -1)) {
|
| 743 |
+
return null;
|
| 744 |
+
}
|
| 745 |
+
|
| 746 |
+
if (tag == 'select') {
|
| 747 |
+
var index = el.selectedIndex;
|
| 748 |
+
if (index < 0) {
|
| 749 |
+
return null;
|
| 750 |
+
}
|
| 751 |
+
var a = [], ops = el.options;
|
| 752 |
+
var one = (t == 'select-one');
|
| 753 |
+
var max = (one ? index+1 : ops.length);
|
| 754 |
+
for(var i=(one ? index : 0); i < max; i++) {
|
| 755 |
+
var op = ops[i];
|
| 756 |
+
if (op.selected) {
|
| 757 |
+
var v = op.value;
|
| 758 |
+
if (!v) { // extra pain for IE...
|
| 759 |
+
v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value;
|
| 760 |
+
}
|
| 761 |
+
if (one) {
|
| 762 |
+
return v;
|
| 763 |
+
}
|
| 764 |
+
a.push(v);
|
| 765 |
+
}
|
| 766 |
+
}
|
| 767 |
+
return a;
|
| 768 |
+
}
|
| 769 |
+
return $(el).val();
|
| 770 |
+
};
|
| 771 |
+
|
| 772 |
+
/**
|
| 773 |
+
* Clears the form data. Takes the following actions on the form's input fields:
|
| 774 |
+
* - input text fields will have their 'value' property set to the empty string
|
| 775 |
+
* - select elements will have their 'selectedIndex' property set to -1
|
| 776 |
+
* - checkbox and radio inputs will have their 'checked' property set to false
|
| 777 |
+
* - inputs of type submit, button, reset, and hidden will *not* be effected
|
| 778 |
+
* - button elements will *not* be effected
|
| 779 |
+
*/
|
| 780 |
+
$.fn.clearForm = function() {
|
| 781 |
+
return this.each(function() {
|
| 782 |
+
$('input,select,textarea', this).clearFields();
|
| 783 |
+
});
|
| 784 |
+
};
|
| 785 |
+
|
| 786 |
+
/**
|
| 787 |
+
* Clears the selected form elements.
|
| 788 |
+
*/
|
| 789 |
+
$.fn.clearFields = $.fn.clearInputs = function() {
|
| 790 |
+
return this.each(function() {
|
| 791 |
+
var t = this.type, tag = this.tagName.toLowerCase();
|
| 792 |
+
if (t == 'text' || t == 'password' || tag == 'textarea') {
|
| 793 |
+
this.value = '';
|
| 794 |
+
}
|
| 795 |
+
else if (t == 'checkbox' || t == 'radio') {
|
| 796 |
+
this.checked = false;
|
| 797 |
+
}
|
| 798 |
+
else if (tag == 'select') {
|
| 799 |
+
this.selectedIndex = -1;
|
| 800 |
+
}
|
| 801 |
+
});
|
| 802 |
+
};
|
| 803 |
+
|
| 804 |
+
/**
|
| 805 |
+
* Resets the form data. Causes all form elements to be reset to their original value.
|
| 806 |
+
*/
|
| 807 |
+
$.fn.resetForm = function() {
|
| 808 |
+
return this.each(function() {
|
| 809 |
+
// guard against an input with the name of 'reset'
|
| 810 |
+
// note that IE reports the reset function as an 'object'
|
| 811 |
+
if (typeof this.reset == 'function' || (typeof this.reset == 'object' && !this.reset.nodeType)) {
|
| 812 |
+
this.reset();
|
| 813 |
+
}
|
| 814 |
+
});
|
| 815 |
+
};
|
| 816 |
+
|
| 817 |
+
/**
|
| 818 |
+
* Enables or disables any matching elements.
|
| 819 |
+
*/
|
| 820 |
+
$.fn.enable = function(b) {
|
| 821 |
+
if (b === undefined) {
|
| 822 |
+
b = true;
|
| 823 |
+
}
|
| 824 |
+
return this.each(function() {
|
| 825 |
+
this.disabled = !b;
|
| 826 |
+
});
|
| 827 |
+
};
|
| 828 |
+
|
| 829 |
+
/**
|
| 830 |
+
* Checks/unchecks any matching checkboxes or radio buttons and
|
| 831 |
+
* selects/deselects and matching option elements.
|
| 832 |
+
*/
|
| 833 |
+
$.fn.selected = function(select) {
|
| 834 |
+
if (select === undefined) {
|
| 835 |
+
select = true;
|
| 836 |
+
}
|
| 837 |
+
return this.each(function() {
|
| 838 |
+
var t = this.type;
|
| 839 |
+
if (t == 'checkbox' || t == 'radio') {
|
| 840 |
+
this.checked = select;
|
| 841 |
+
}
|
| 842 |
+
else if (this.tagName.toLowerCase() == 'option') {
|
| 843 |
+
var $sel = $(this).parent('select');
|
| 844 |
+
if (select && $sel[0] && $sel[0].type == 'select-one') {
|
| 845 |
+
// deselect all other options
|
| 846 |
+
$sel.find('option').selected(false);
|
| 847 |
+
}
|
| 848 |
+
this.selected = select;
|
| 849 |
+
}
|
| 850 |
+
});
|
| 851 |
+
};
|
| 852 |
+
|
| 853 |
+
// helper fn for console logging
|
| 854 |
+
function log() {
|
| 855 |
+
var msg = '[jquery.form] ' + Array.prototype.join.call(arguments,'');
|
| 856 |
+
if (window.console && window.console.log) {
|
| 857 |
+
window.console.log(msg);
|
| 858 |
+
}
|
| 859 |
+
else if (window.opera && window.opera.postError) {
|
| 860 |
+
window.opera.postError(msg);
|
| 861 |
+
}
|
| 862 |
+
};
|
| 863 |
+
|
| 864 |
+
})(jQuery);
|
js/jquery.tools.min.js
CHANGED
|
@@ -1,269 +1,269 @@
|
|
| 1 |
-
/*
|
| 2 |
-
* jQuery Tools 1.2.3 - The missing UI library for the Web
|
| 3 |
-
*
|
| 4 |
-
* [jquery, toolbox.flashembed, toolbox.history, toolbox.expose, toolbox.mousewheel, tabs, tabs.slideshow, tooltip, tooltip.slide, tooltip.dynamic, scrollable, scrollable.autoscroll, scrollable.navigator, overlay, overlay.apple, dateinput, rangeinput, validator]
|
| 5 |
-
*
|
| 6 |
-
* NO COPYRIGHTS OR LICENSES. DO WHAT YOU LIKE.
|
| 7 |
-
*
|
| 8 |
-
* http://flowplayer.org/tools/
|
| 9 |
-
*
|
| 10 |
-
* jQuery JavaScript Library v1.4.2
|
| 11 |
-
* http://jquery.com/
|
| 12 |
-
*
|
| 13 |
-
* Copyright 2010, John Resig
|
| 14 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 15 |
-
* http://docs.jquery.com/License
|
| 16 |
-
*
|
| 17 |
-
* Includes Sizzle.js
|
| 18 |
-
* http://sizzlejs.com/
|
| 19 |
-
* Copyright 2010, The Dojo Foundation
|
| 20 |
-
* Released under the MIT, BSD, and GPL Licenses.
|
| 21 |
-
*
|
| 22 |
-
* -----
|
| 23 |
-
*
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
* jquery.event.wheel.js - rev 1
|
| 27 |
-
* Copyright (c) 2008, Three Dub Media (http://threedubmedia.com)
|
| 28 |
-
* Liscensed under the MIT License (MIT-LICENSE.txt)
|
| 29 |
-
* http://www.opensource.org/licenses/mit-license.php
|
| 30 |
-
* Created: 2008-07-01 | Updated: 2008-07-14
|
| 31 |
-
*
|
| 32 |
-
* -----
|
| 33 |
-
*
|
| 34 |
-
* File generated: Sat Jun 12 10:02:29 GMT 2010
|
| 35 |
-
*/
|
| 36 |
-
(function(A,w){function ma(){if(!c.isReady){try{s.documentElement.doScroll("left")}catch(a){setTimeout(ma,1);return}c.ready()}}function Qa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function X(a,b,d,f,e,j){var i=a.length;if(typeof b==="object"){for(var o in b)X(a,o,b[o],f,e,d);return a}if(d!==w){f=!j&&f&&c.isFunction(d);for(o=0;o<i;o++)e(a[o],b,f?d.call(a[o],o,e(a[o],b)):d,j);return a}return i?
|
| 37 |
-
e(a[0],b):w}function J(){return(new Date).getTime()}function Y(){return false}function Z(){return true}function na(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function oa(a){var b,d=[],f=[],e=arguments,j,i,o,k,n,r;i=c.data(this,"events");if(!(a.liveFired===this||!i||!i.live||a.button&&a.type==="click")){a.liveFired=this;var u=i.live.slice(0);for(k=0;k<u.length;k++){i=u[k];i.origType.replace(O,"")===a.type?f.push(i.selector):u.splice(k--,1)}j=c(a.target).closest(f,a.currentTarget);n=0;for(r=
|
| 38 |
-
j.length;n<r;n++)for(k=0;k<u.length;k++){i=u[k];if(j[n].selector===i.selector){o=j[n].elem;f=null;if(i.preType==="mouseenter"||i.preType==="mouseleave")f=c(a.relatedTarget).closest(i.selector)[0];if(!f||f!==o)d.push({elem:o,handleObj:i})}}n=0;for(r=d.length;n<r;n++){j=d[n];a.currentTarget=j.elem;a.data=j.handleObj.data;a.handleObj=j.handleObj;if(j.handleObj.origHandler.apply(j.elem,e)===false){b=false;break}}return b}}function pa(a,b){return"live."+(a&&a!=="*"?a+".":"")+b.replace(/\./g,"`").replace(/ /g,
|
| 39 |
-
"&")}function qa(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function ra(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var f=c.data(a[d++]),e=c.data(this,f);if(f=f&&f.events){delete e.handle;e.events={};for(var j in f)for(var i in f[j])c.event.add(this,j,f[j][i],f[j][i].data)}}})}function sa(a,b,d){var f,e,j;b=b&&b[0]?b[0].ownerDocument||b[0]:s;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===s&&!ta.test(a[0])&&(c.support.checkClone||!ua.test(a[0]))){e=
|
| 40 |
-
true;if(j=c.fragments[a[0]])if(j!==1)f=j}if(!f){f=b.createDocumentFragment();c.clean(a,b,f,d)}if(e)c.fragments[a[0]]=j?f:1;return{fragment:f,cacheable:e}}function K(a,b){var d={};c.each(va.concat.apply([],va.slice(0,b)),function(){d[this]=a});return d}function wa(a){return"scrollTo"in a&&a.document?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var c=function(a,b){return new c.fn.init(a,b)},Ra=A.jQuery,Sa=A.$,s=A.document,T,Ta=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,Ua=/^.[^:#\[\.,]*$/,Va=/\S/,
|
| 41 |
-
Wa=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,Xa=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,P=navigator.userAgent,xa=false,Q=[],L,$=Object.prototype.toString,aa=Object.prototype.hasOwnProperty,ba=Array.prototype.push,R=Array.prototype.slice,ya=Array.prototype.indexOf;c.fn=c.prototype={init:function(a,b){var d,f;if(!a)return this;if(a.nodeType){this.context=this[0]=a;this.length=1;return this}if(a==="body"&&!b){this.context=s;this[0]=s.body;this.selector="body";this.length=1;return this}if(typeof a==="string")if((d=Ta.exec(a))&&
|
| 42 |
-
(d[1]||!b))if(d[1]){f=b?b.ownerDocument||b:s;if(a=Xa.exec(a))if(c.isPlainObject(b)){a=[s.createElement(a[1])];c.fn.attr.call(a,b,true)}else a=[f.createElement(a[1])];else{a=sa([d[1]],[f]);a=(a.cacheable?a.fragment.cloneNode(true):a.fragment).childNodes}return c.merge(this,a)}else{if(b=s.getElementById(d[2])){if(b.id!==d[2])return T.find(a);this.length=1;this[0]=b}this.context=s;this.selector=a;return this}else if(!b&&/^\w+$/.test(a)){this.selector=a;this.context=s;a=s.getElementsByTagName(a);return c.merge(this,
|
| 43 |
-
a)}else return!b||b.jquery?(b||T).find(a):c(b).find(a);else if(c.isFunction(a))return T.ready(a);if(a.selector!==w){this.selector=a.selector;this.context=a.context}return c.makeArray(a,this)},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length},toArray:function(){return R.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this.slice(a)[0]:this[a]},pushStack:function(a,b,d){var f=c();c.isArray(a)?ba.apply(f,a):c.merge(f,a);f.prevObject=this;f.context=this.context;if(b===
|
| 44 |
-
"find")f.selector=this.selector+(this.selector?" ":"")+d;else if(b)f.selector=this.selector+"."+b+"("+d+")";return f},each:function(a,b){return c.each(this,a,b)},ready:function(a){c.bindReady();if(c.isReady)a.call(s,c);else Q&&Q.push(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(R.apply(this,arguments),"slice",R.call(arguments).join(","))},map:function(a){return this.pushStack(c.map(this,
|
| 45 |
-
function(b,d){return a.call(b,d,b)}))},end:function(){return this.prevObject||c(null)},push:ba,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a=arguments[0]||{},b=1,d=arguments.length,f=false,e,j,i,o;if(typeof a==="boolean"){f=a;a=arguments[1]||{};b=2}if(typeof a!=="object"&&!c.isFunction(a))a={};if(d===b){a=this;--b}for(;b<d;b++)if((e=arguments[b])!=null)for(j in e){i=a[j];o=e[j];if(a!==o)if(f&&o&&(c.isPlainObject(o)||c.isArray(o))){i=i&&(c.isPlainObject(i)||
|
| 46 |
-
c.isArray(i))?i:c.isArray(o)?[]:{};a[j]=c.extend(f,i,o)}else if(o!==w)a[j]=o}return a};c.extend({noConflict:function(a){A.$=Sa;if(a)A.jQuery=Ra;return c},isReady:false,ready:function(){if(!c.isReady){if(!s.body)return setTimeout(c.ready,13);c.isReady=true;if(Q){for(var a,b=0;a=Q[b++];)a.call(s,c);Q=null}c.fn.triggerHandler&&c(s).triggerHandler("ready")}},bindReady:function(){if(!xa){xa=true;if(s.readyState==="complete")return c.ready();if(s.addEventListener){s.addEventListener("DOMContentLoaded",
|
| 47 |
-
L,false);A.addEventListener("load",c.ready,false)}else if(s.attachEvent){s.attachEvent("onreadystatechange",L);A.attachEvent("onload",c.ready);var a=false;try{a=A.frameElement==null}catch(b){}s.documentElement.doScroll&&a&&ma()}}},isFunction:function(a){return $.call(a)==="[object Function]"},isArray:function(a){return $.call(a)==="[object Array]"},isPlainObject:function(a){if(!a||$.call(a)!=="[object Object]"||a.nodeType||a.setInterval)return false;if(a.constructor&&!aa.call(a,"constructor")&&!aa.call(a.constructor.prototype,
|
| 48 |
-
"isPrototypeOf"))return false;var b;for(b in a);return b===w||aa.call(a,b)},isEmptyObject:function(a){for(var b in a)return false;return true},error:function(a){throw a;},parseJSON:function(a){if(typeof a!=="string"||!a)return null;a=c.trim(a);if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return A.JSON&&A.JSON.parse?A.JSON.parse(a):(new Function("return "+
|
| 49 |
-
a))();else c.error("Invalid JSON: "+a)},noop:function(){},globalEval:function(a){if(a&&Va.test(a)){var b=s.getElementsByTagName("head")[0]||s.documentElement,d=s.createElement("script");d.type="text/javascript";if(c.support.scriptEval)d.appendChild(s.createTextNode(a));else d.text=a;b.insertBefore(d,b.firstChild);b.removeChild(d)}},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,b,d){var f,e=0,j=a.length,i=j===w||c.isFunction(a);if(d)if(i)for(f in a){if(b.apply(a[f],
|
| 50 |
-
d)===false)break}else for(;e<j;){if(b.apply(a[e++],d)===false)break}else if(i)for(f in a){if(b.call(a[f],f,a[f])===false)break}else for(d=a[0];e<j&&b.call(d,e,d)!==false;d=a[++e]);return a},trim:function(a){return(a||"").replace(Wa,"")},makeArray:function(a,b){b=b||[];if(a!=null)a.length==null||typeof a==="string"||c.isFunction(a)||typeof a!=="function"&&a.setInterval?ba.call(b,a):c.merge(b,a);return b},inArray:function(a,b){if(b.indexOf)return b.indexOf(a);for(var d=0,f=b.length;d<f;d++)if(b[d]===
|
| 51 |
-
a)return d;return-1},merge:function(a,b){var d=a.length,f=0;if(typeof b.length==="number")for(var e=b.length;f<e;f++)a[d++]=b[f];else for(;b[f]!==w;)a[d++]=b[f++];a.length=d;return a},grep:function(a,b,d){for(var f=[],e=0,j=a.length;e<j;e++)!d!==!b(a[e],e)&&f.push(a[e]);return f},map:function(a,b,d){for(var f=[],e,j=0,i=a.length;j<i;j++){e=b(a[j],j,d);if(e!=null)f[f.length]=e}return f.concat.apply([],f)},guid:1,proxy:function(a,b,d){if(arguments.length===2)if(typeof b==="string"){d=a;a=d[b];b=w}else if(b&&
|
| 52 |
-
!c.isFunction(b)){d=b;b=w}if(!b&&a)b=function(){return a.apply(d||this,arguments)};if(a)b.guid=a.guid=a.guid||b.guid||c.guid++;return b},uaMatch:function(a){a=a.toLowerCase();a=/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||!/compatible/.test(a)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}},browser:{}});P=c.uaMatch(P);if(P.browser){c.browser[P.browser]=true;c.browser.version=P.version}if(c.browser.webkit)c.browser.safari=
|
| 53 |
-
true;if(ya)c.inArray=function(a,b){return ya.call(b,a)};T=c(s);if(s.addEventListener)L=function(){s.removeEventListener("DOMContentLoaded",L,false);c.ready()};else if(s.attachEvent)L=function(){if(s.readyState==="complete"){s.detachEvent("onreadystatechange",L);c.ready()}};(function(){c.support={};var a=s.documentElement,b=s.createElement("script"),d=s.createElement("div"),f="script"+J();d.style.display="none";d.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
|
| 54 |
-
var e=d.getElementsByTagName("*"),j=d.getElementsByTagName("a")[0];if(!(!e||!e.length||!j)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(j.getAttribute("style")),hrefNormalized:j.getAttribute("href")==="/a",opacity:/^0.55$/.test(j.style.opacity),cssFloat:!!j.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:s.createElement("select").appendChild(s.createElement("option")).selected,
|
| 55 |
-
parentNode:d.removeChild(d.appendChild(s.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};b.type="text/javascript";try{b.appendChild(s.createTextNode("window."+f+"=1;"))}catch(i){}a.insertBefore(b,a.firstChild);if(A[f]){c.support.scriptEval=true;delete A[f]}try{delete b.test}catch(o){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function k(){c.support.noCloneEvent=
|
| 56 |
-
false;d.detachEvent("onclick",k)});d.cloneNode(true).fireEvent("onclick")}d=s.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=s.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var k=s.createElement("div");k.style.width=k.style.paddingLeft="1px";s.body.appendChild(k);c.boxModel=c.support.boxModel=k.offsetWidth===2;s.body.removeChild(k).style.display="none"});a=function(k){var n=
|
| 57 |
-
s.createElement("div");k="on"+k;var r=k in n;if(!r){n.setAttribute(k,"return;");r=typeof n[k]==="function"}return r};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=e=j=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var G="jQuery"+J(),Ya=0,za={};c.extend({cache:{},expando:G,noData:{embed:true,object:true,
|
| 58 |
-
applet:true},data:function(a,b,d){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var f=a[G],e=c.cache;if(!f&&typeof b==="string"&&d===w)return null;f||(f=++Ya);if(typeof b==="object"){a[G]=f;e[f]=c.extend(true,{},b)}else if(!e[f]){a[G]=f;e[f]={}}a=e[f];if(d!==w)a[b]=d;return typeof b==="string"?a[b]:a}},removeData:function(a,b){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var d=a[G],f=c.cache,e=f[d];if(b){if(e){delete e[b];c.isEmptyObject(e)&&c.removeData(a)}}else{if(c.support.deleteExpando)delete a[c.expando];
|
| 59 |
-
else a.removeAttribute&&a.removeAttribute(c.expando);delete f[d]}}}});c.fn.extend({data:function(a,b){if(typeof a==="undefined"&&this.length)return c.data(this[0]);else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===w){var f=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(f===w&&this.length)f=c.data(this[0],a);return f===w&&d[1]?this.data(d[0]):f}else return this.trigger("setData"+d[1]+"!",[d[0],b]).each(function(){c.data(this,
|
| 60 |
-
a,b)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var f=c.data(a,b);if(!d)return f||[];if(!f||c.isArray(d))f=c.data(a,b,c.makeArray(d));else f.push(d);return f}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),f=d.shift();if(f==="inprogress")f=d.shift();if(f){b==="fx"&&d.unshift("inprogress");f.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===
|
| 61 |
-
w)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var Aa=/[\n\t]/g,ca=/\s+/,Za=/\r/g,$a=/href|src|style/,ab=/(button|input)/i,bb=/(button|input|object|select|textarea)/i,
|
| 62 |
-
cb=/^(a|area)$/i,Ba=/radio|checkbox/;c.fn.extend({attr:function(a,b){return X(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(n){var r=c(this);r.addClass(a.call(this,n,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1)if(e.className){for(var j=" "+e.className+" ",
|
| 63 |
-
i=e.className,o=0,k=b.length;o<k;o++)if(j.indexOf(" "+b[o]+" ")<0)i+=" "+b[o];e.className=c.trim(i)}else e.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(k){var n=c(this);n.removeClass(a.call(this,k,n.attr("class")))});if(a&&typeof a==="string"||a===w)for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1&&e.className)if(a){for(var j=(" "+e.className+" ").replace(Aa," "),i=0,o=b.length;i<o;i++)j=j.replace(" "+b[i]+" ",
|
| 64 |
-
" ");e.className=c.trim(j)}else e.className=""}return this},toggleClass:function(a,b){var d=typeof a,f=typeof b==="boolean";if(c.isFunction(a))return this.each(function(e){var j=c(this);j.toggleClass(a.call(this,e,j.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var e,j=0,i=c(this),o=b,k=a.split(ca);e=k[j++];){o=f?o:!i.hasClass(e);i[o?"addClass":"removeClass"](e)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,"__className__",this.className);this.className=
|
| 65 |
-
this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(Aa," ").indexOf(a)>-1)return true;return false},val:function(a){if(a===w){var b=this[0];if(b){if(c.nodeName(b,"option"))return(b.attributes.value||{}).specified?b.value:b.text;if(c.nodeName(b,"select")){var d=b.selectedIndex,f=[],e=b.options;b=b.type==="select-one";if(d<0)return null;var j=b?d:0;for(d=b?d+1:e.length;j<d;j++){var i=
|
| 66 |
-
e[j];if(i.selected){a=c(i).val();if(b)return a;f.push(a)}}return f}if(Ba.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Za,"")}return w}var o=c.isFunction(a);return this.each(function(k){var n=c(this),r=a;if(this.nodeType===1){if(o)r=a.call(this,k,n.val());if(typeof r==="number")r+="";if(c.isArray(r)&&Ba.test(this.type))this.checked=c.inArray(n.val(),r)>=0;else if(c.nodeName(this,"select")){var u=c.makeArray(r);c("option",this).each(function(){this.selected=
|
| 67 |
-
c.inArray(c(this).val(),u)>=0});if(!u.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,f){if(!a||a.nodeType===3||a.nodeType===8)return w;if(f&&b in c.attrFn)return c(a)[b](d);f=a.nodeType!==1||!c.isXMLDoc(a);var e=d!==w;b=f&&c.props[b]||b;if(a.nodeType===1){var j=$a.test(b);if(b in a&&f&&!j){if(e){b==="type"&&ab.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");
|
| 68 |
-
a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:bb.test(a.nodeName)||cb.test(a.nodeName)&&a.href?0:w;return a[b]}if(!c.support.style&&f&&b==="style"){if(e)a.style.cssText=""+d;return a.style.cssText}e&&a.setAttribute(b,""+d);a=!c.support.hrefNormalized&&f&&j?a.getAttribute(b,2):a.getAttribute(b);return a===null?w:a}return c.style(a,b,d)}});var O=/\.(.*)$/,db=function(a){return a.replace(/[^\w\s\.\|`]/g,
|
| 69 |
-
function(b){return"\\"+b})};c.event={add:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){if(a.setInterval&&a!==A&&!a.frameElement)a=A;var e,j;if(d.handler){e=d;d=e.handler}if(!d.guid)d.guid=c.guid++;if(j=c.data(a)){var i=j.events=j.events||{},o=j.handle;if(!o)j.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w};o.elem=a;b=b.split(" ");for(var k,n=0,r;k=b[n++];){j=e?c.extend({},e):{handler:d,data:f};if(k.indexOf(".")>-1){r=k.split(".");
|
| 70 |
-
k=r.shift();j.namespace=r.slice(0).sort().join(".")}else{r=[];j.namespace=""}j.type=k;j.guid=d.guid;var u=i[k],z=c.event.special[k]||{};if(!u){u=i[k]=[];if(!z.setup||z.setup.call(a,f,r,o)===false)if(a.addEventListener)a.addEventListener(k,o,false);else a.attachEvent&&a.attachEvent("on"+k,o)}if(z.add){z.add.call(a,j);if(!j.handler.guid)j.handler.guid=d.guid}u.push(j);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){var e,j=0,i,o,k,n,r,u,z=c.data(a),
|
| 71 |
-
C=z&&z.events;if(z&&C){if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(e in C)c.event.remove(a,e+b)}else{for(b=b.split(" ");e=b[j++];){n=e;i=e.indexOf(".")<0;o=[];if(!i){o=e.split(".");e=o.shift();k=new RegExp("(^|\\.)"+c.map(o.slice(0).sort(),db).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(r=C[e])if(d){n=c.event.special[e]||{};for(B=f||0;B<r.length;B++){u=r[B];if(d.guid===u.guid){if(i||k.test(u.namespace)){f==null&&r.splice(B--,1);n.remove&&n.remove.call(a,u)}if(f!=
|
| 72 |
-
null)break}}if(r.length===0||f!=null&&r.length===1){if(!n.teardown||n.teardown.call(a,o)===false)Ca(a,e,z.handle);delete C[e]}}else for(var B=0;B<r.length;B++){u=r[B];if(i||k.test(u.namespace)){c.event.remove(a,n,u.handler,B);r.splice(B--,1)}}}if(c.isEmptyObject(C)){if(b=z.handle)b.elem=null;delete z.events;delete z.handle;c.isEmptyObject(z)&&c.removeData(a)}}}}},trigger:function(a,b,d,f){var e=a.type||a;if(!f){a=typeof a==="object"?a[G]?a:c.extend(c.Event(e),a):c.Event(e);if(e.indexOf("!")>=0){a.type=
|
| 73 |
-
e=e.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[e]&&c.each(c.cache,function(){this.events&&this.events[e]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return w;a.result=w;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(f=c.data(d,"handle"))&&f.apply(d,b);f=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+e]&&d["on"+e].apply(d,b)===false)a.result=false}catch(j){}if(!a.isPropagationStopped()&&
|
| 74 |
-
f)c.event.trigger(a,b,f,true);else if(!a.isDefaultPrevented()){f=a.target;var i,o=c.nodeName(f,"a")&&e==="click",k=c.event.special[e]||{};if((!k._default||k._default.call(d,a)===false)&&!o&&!(f&&f.nodeName&&c.noData[f.nodeName.toLowerCase()])){try{if(f[e]){if(i=f["on"+e])f["on"+e]=null;c.event.triggered=true;f[e]()}}catch(n){}if(i)f["on"+e]=i;c.event.triggered=false}}},handle:function(a){var b,d,f,e;a=arguments[0]=c.event.fix(a||A.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;
|
| 75 |
-
if(!b){d=a.type.split(".");a.type=d.shift();f=new RegExp("(^|\\.)"+d.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)")}e=c.data(this,"events");d=e[a.type];if(e&&d){d=d.slice(0);e=0;for(var j=d.length;e<j;e++){var i=d[e];if(b||f.test(i.namespace)){a.handler=i.handler;a.data=i.data;a.handleObj=i;i=i.handler.apply(this,arguments);if(i!==w){a.result=i;if(i===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
|
| 76 |
-
fix:function(a){if(a[G])return a;var b=a;a=c.Event(b);for(var d=this.props.length,f;d;){f=this.props[--d];a[f]=b[f]}if(!a.target)a.target=a.srcElement||s;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=s.documentElement;d=s.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
|
| 77 |
-
d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(!a.which&&(a.charCode||a.charCode===0?a.charCode:a.keyCode))a.which=a.charCode||a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==w)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,a.origType,c.extend({},a,{handler:oa}))},remove:function(a){var b=true,d=a.origType.replace(O,"");c.each(c.data(this,
|
| 78 |
-
"events").live||[],function(){if(d===this.origType.replace(O,""))return b=false});b&&c.event.remove(this,a.origType,oa)}},beforeunload:{setup:function(a,b,d){if(this.setInterval)this.onbeforeunload=d;return false},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};var Ca=s.removeEventListener?function(a,b,d){a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=
|
| 79 |
-
a;this.type=a.type}else this.type=a;this.timeStamp=J();this[G]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=Z;var a=this.originalEvent;if(a){a.preventDefault&&a.preventDefault();a.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=Z;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Z;this.stopPropagation()},isDefaultPrevented:Y,isPropagationStopped:Y,
|
| 80 |
-
isImmediatePropagationStopped:Y};var Da=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},Ea=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?Ea:Da,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?Ea:Da)}}});if(!c.support.submitBubbles)c.event.special.submit=
|
| 81 |
-
{setup:function(){if(this.nodeName.toLowerCase()!=="form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length)return na("submit",this,arguments)});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13)return na("submit",this,arguments)})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};
|
| 82 |
-
if(!c.support.changeBubbles){var da=/textarea|input|select/i,ea,Fa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(f){return f.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},fa=function(a,b){var d=a.target,f,e;if(!(!da.test(d.nodeName)||d.readOnly)){f=c.data(d,"_change_data");e=Fa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",
|
| 83 |
-
e);if(!(f===w||e===f))if(f!=null||e){a.type="change";return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:fa,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return fa.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return fa.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,
|
| 84 |
-
"_change_data",Fa(a))}},setup:function(){if(this.type==="file")return false;for(var a in ea)c.event.add(this,a+".specialChange",ea[a]);return da.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return da.test(this.nodeName)}};ea=c.event.special.change.filters}s.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(f){f=c.event.fix(f);f.type=b;return c.event.handle.call(this,f)}c.event.special[b]={setup:function(){this.addEventListener(a,
|
| 85 |
-
d,true)},teardown:function(){this.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,f,e){if(typeof d==="object"){for(var j in d)this[b](j,f,d[j],e);return this}if(c.isFunction(f)){e=f;f=w}var i=b==="one"?c.proxy(e,function(k){c(this).unbind(k,i);return e.apply(this,arguments)}):e;if(d==="unload"&&b!=="one")this.one(d,f,e);else{j=0;for(var o=this.length;j<o;j++)c.event.add(this[j],d,i,f)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&
|
| 86 |
-
!a.preventDefault)for(var d in a)this.unbind(d,a[d]);else{d=0;for(var f=this.length;d<f;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,f){return this.live(b,d,f,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){a=c.Event(a);a.preventDefault();a.stopPropagation();c.event.trigger(a,b,this[0]);return a.result}},
|
| 87 |
-
toggle:function(a){for(var b=arguments,d=1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(f){var e=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,e+1);f.preventDefault();return b[e].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var Ga={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,f,e,j){var i,o=0,k,n,r=j||this.selector,
|
| 88 |
-
u=j?this:c(this.context);if(c.isFunction(f)){e=f;f=w}for(d=(d||"").split(" ");(i=d[o++])!=null;){j=O.exec(i);k="";if(j){k=j[0];i=i.replace(O,"")}if(i==="hover")d.push("mouseenter"+k,"mouseleave"+k);else{n=i;if(i==="focus"||i==="blur"){d.push(Ga[i]+k);i+=k}else i=(Ga[i]||i)+k;b==="live"?u.each(function(){c.event.add(this,pa(i,r),{data:f,selector:r,handler:e,origType:i,origHandler:e,preType:n})}):u.unbind(pa(i,r),e)}}return this}});c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),
|
| 89 |
-
function(a,b){c.fn[b]=function(d){return d?this.bind(b,d):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});A.attachEvent&&!A.addEventListener&&A.attachEvent("onunload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});(function(){function a(g){for(var h="",l,m=0;g[m];m++){l=g[m];if(l.nodeType===3||l.nodeType===4)h+=l.nodeValue;else if(l.nodeType!==8)h+=a(l.childNodes)}return h}function b(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];
|
| 90 |
-
if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1&&!p){t.sizcache=l;t.sizset=q}if(t.nodeName.toLowerCase()===h){y=t;break}t=t[g]}m[q]=y}}}function d(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1){if(!p){t.sizcache=l;t.sizset=q}if(typeof h!=="string"){if(t===h){y=true;break}}else if(k.filter(h,[t]).length>0){y=t;break}}t=t[g]}m[q]=y}}}var f=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
|
| 91 |
-
e=0,j=Object.prototype.toString,i=false,o=true;[0,0].sort(function(){o=false;return 0});var k=function(g,h,l,m){l=l||[];var q=h=h||s;if(h.nodeType!==1&&h.nodeType!==9)return[];if(!g||typeof g!=="string")return l;for(var p=[],v,t,y,S,H=true,M=x(h),I=g;(f.exec(""),v=f.exec(I))!==null;){I=v[3];p.push(v[1]);if(v[2]){S=v[3];break}}if(p.length>1&&r.exec(g))if(p.length===2&&n.relative[p[0]])t=ga(p[0]+p[1],h);else for(t=n.relative[p[0]]?[h]:k(p.shift(),h);p.length;){g=p.shift();if(n.relative[g])g+=p.shift();
|
| 92 |
-
t=ga(g,t)}else{if(!m&&p.length>1&&h.nodeType===9&&!M&&n.match.ID.test(p[0])&&!n.match.ID.test(p[p.length-1])){v=k.find(p.shift(),h,M);h=v.expr?k.filter(v.expr,v.set)[0]:v.set[0]}if(h){v=m?{expr:p.pop(),set:z(m)}:k.find(p.pop(),p.length===1&&(p[0]==="~"||p[0]==="+")&&h.parentNode?h.parentNode:h,M);t=v.expr?k.filter(v.expr,v.set):v.set;if(p.length>0)y=z(t);else H=false;for(;p.length;){var D=p.pop();v=D;if(n.relative[D])v=p.pop();else D="";if(v==null)v=h;n.relative[D](y,v,M)}}else y=[]}y||(y=t);y||k.error(D||
|
| 93 |
-
g);if(j.call(y)==="[object Array]")if(H)if(h&&h.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&E(h,y[g])))l.push(t[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&l.push(t[g]);else l.push.apply(l,y);else z(y,l);if(S){k(S,q,l,m);k.uniqueSort(l)}return l};k.uniqueSort=function(g){if(B){i=o;g.sort(B);if(i)for(var h=1;h<g.length;h++)g[h]===g[h-1]&&g.splice(h--,1)}return g};k.matches=function(g,h){return k(g,null,null,h)};k.find=function(g,h,l){var m,q;if(!g)return[];
|
| 94 |
-
for(var p=0,v=n.order.length;p<v;p++){var t=n.order[p];if(q=n.leftMatch[t].exec(g)){var y=q[1];q.splice(1,1);if(y.substr(y.length-1)!=="\\"){q[1]=(q[1]||"").replace(/\\/g,"");m=n.find[t](q,h,l);if(m!=null){g=g.replace(n.match[t],"");break}}}}m||(m=h.getElementsByTagName("*"));return{set:m,expr:g}};k.filter=function(g,h,l,m){for(var q=g,p=[],v=h,t,y,S=h&&h[0]&&x(h[0]);g&&h.length;){for(var H in n.filter)if((t=n.leftMatch[H].exec(g))!=null&&t[2]){var M=n.filter[H],I,D;D=t[1];y=false;t.splice(1,1);if(D.substr(D.length-
|
| 95 |
-
1)!=="\\"){if(v===p)p=[];if(n.preFilter[H])if(t=n.preFilter[H](t,v,l,p,m,S)){if(t===true)continue}else y=I=true;if(t)for(var U=0;(D=v[U])!=null;U++)if(D){I=M(D,t,U,v);var Ha=m^!!I;if(l&&I!=null)if(Ha)y=true;else v[U]=false;else if(Ha){p.push(D);y=true}}if(I!==w){l||(v=p);g=g.replace(n.match[H],"");if(!y)return[];break}}}if(g===q)if(y==null)k.error(g);else break;q=g}return v};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var n=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,
|
| 96 |
-
CLASS:/\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},
|
| 97 |
-
relative:{"+":function(g,h){var l=typeof h==="string",m=l&&!/\W/.test(h);l=l&&!m;if(m)h=h.toLowerCase();m=0;for(var q=g.length,p;m<q;m++)if(p=g[m]){for(;(p=p.previousSibling)&&p.nodeType!==1;);g[m]=l||p&&p.nodeName.toLowerCase()===h?p||false:p===h}l&&k.filter(h,g,true)},">":function(g,h){var l=typeof h==="string";if(l&&!/\W/.test(h)){h=h.toLowerCase();for(var m=0,q=g.length;m<q;m++){var p=g[m];if(p){l=p.parentNode;g[m]=l.nodeName.toLowerCase()===h?l:false}}}else{m=0;for(q=g.length;m<q;m++)if(p=g[m])g[m]=
|
| 98 |
-
l?p.parentNode:p.parentNode===h;l&&k.filter(h,g,true)}},"":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("parentNode",h,m,g,p,l)},"~":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("previousSibling",h,m,g,p,l)}},find:{ID:function(g,h,l){if(typeof h.getElementById!=="undefined"&&!l)return(g=h.getElementById(g[1]))?[g]:[]},NAME:function(g,h){if(typeof h.getElementsByName!=="undefined"){var l=[];
|
| 99 |
-
h=h.getElementsByName(g[1]);for(var m=0,q=h.length;m<q;m++)h[m].getAttribute("name")===g[1]&&l.push(h[m]);return l.length===0?null:l}},TAG:function(g,h){return h.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,h,l,m,q,p){g=" "+g[1].replace(/\\/g,"")+" ";if(p)return g;p=0;for(var v;(v=h[p])!=null;p++)if(v)if(q^(v.className&&(" "+v.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))l||m.push(v);else if(l)h[p]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},
|
| 100 |
-
CHILD:function(g){if(g[1]==="nth"){var h=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=h[1]+(h[2]||1)-0;g[3]=h[3]-0}g[0]=e++;return g},ATTR:function(g,h,l,m,q,p){h=g[1].replace(/\\/g,"");if(!p&&n.attrMap[h])g[1]=n.attrMap[h];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,h,l,m,q){if(g[1]==="not")if((f.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,h);else{g=k.filter(g[3],h,l,true^q);l||m.push.apply(m,
|
| 101 |
-
g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,h,l){return!!k(l[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},
|
| 102 |
-
text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},
|
| 103 |
-
setFilters:{first:function(g,h){return h===0},last:function(g,h,l,m){return h===m.length-1},even:function(g,h){return h%2===0},odd:function(g,h){return h%2===1},lt:function(g,h,l){return h<l[3]-0},gt:function(g,h,l){return h>l[3]-0},nth:function(g,h,l){return l[3]-0===h},eq:function(g,h,l){return l[3]-0===h}},filter:{PSEUDO:function(g,h,l,m){var q=h[1],p=n.filters[q];if(p)return p(g,l,h,m);else if(q==="contains")return(g.textContent||g.innerText||a([g])||"").indexOf(h[3])>=0;else if(q==="not"){h=
|
| 104 |
-
h[3];l=0;for(m=h.length;l<m;l++)if(h[l]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+q)},CHILD:function(g,h){var l=h[1],m=g;switch(l){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(l==="first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":l=h[2];var q=h[3];if(l===1&&q===0)return true;h=h[0];var p=g.parentNode;if(p&&(p.sizcache!==h||!g.nodeIndex)){var v=0;for(m=p.firstChild;m;m=
|
| 105 |
-
m.nextSibling)if(m.nodeType===1)m.nodeIndex=++v;p.sizcache=h}g=g.nodeIndex-q;return l===0?g===0:g%l===0&&g/l>=0}},ID:function(g,h){return g.nodeType===1&&g.getAttribute("id")===h},TAG:function(g,h){return h==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===h},CLASS:function(g,h){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(h)>-1},ATTR:function(g,h){var l=h[1];g=n.attrHandle[l]?n.attrHandle[l](g):g[l]!=null?g[l]:g.getAttribute(l);l=g+"";var m=h[2];h=h[4];return g==null?m==="!=":m===
|
| 106 |
-
"="?l===h:m==="*="?l.indexOf(h)>=0:m==="~="?(" "+l+" ").indexOf(h)>=0:!h?l&&g!==false:m==="!="?l!==h:m==="^="?l.indexOf(h)===0:m==="$="?l.substr(l.length-h.length)===h:m==="|="?l===h||l.substr(0,h.length+1)===h+"-":false},POS:function(g,h,l,m){var q=n.setFilters[h[2]];if(q)return q(g,l,h,m)}}},r=n.match.POS;for(var u in n.match){n.match[u]=new RegExp(n.match[u].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[u]=new RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[u].source.replace(/\\(\d+)/g,function(g,
|
| 107 |
-
h){return"\\"+(h-0+1)}))}var z=function(g,h){g=Array.prototype.slice.call(g,0);if(h){h.push.apply(h,g);return h}return g};try{Array.prototype.slice.call(s.documentElement.childNodes,0)}catch(C){z=function(g,h){h=h||[];if(j.call(g)==="[object Array]")Array.prototype.push.apply(h,g);else if(typeof g.length==="number")for(var l=0,m=g.length;l<m;l++)h.push(g[l]);else for(l=0;g[l];l++)h.push(g[l]);return h}}var B;if(s.documentElement.compareDocumentPosition)B=function(g,h){if(!g.compareDocumentPosition||
|
| 108 |
-
!h.compareDocumentPosition){if(g==h)i=true;return g.compareDocumentPosition?-1:1}g=g.compareDocumentPosition(h)&4?-1:g===h?0:1;if(g===0)i=true;return g};else if("sourceIndex"in s.documentElement)B=function(g,h){if(!g.sourceIndex||!h.sourceIndex){if(g==h)i=true;return g.sourceIndex?-1:1}g=g.sourceIndex-h.sourceIndex;if(g===0)i=true;return g};else if(s.createRange)B=function(g,h){if(!g.ownerDocument||!h.ownerDocument){if(g==h)i=true;return g.ownerDocument?-1:1}var l=g.ownerDocument.createRange(),m=
|
| 109 |
-
h.ownerDocument.createRange();l.setStart(g,0);l.setEnd(g,0);m.setStart(h,0);m.setEnd(h,0);g=l.compareBoundaryPoints(Range.START_TO_END,m);if(g===0)i=true;return g};(function(){var g=s.createElement("div"),h="script"+(new Date).getTime();g.innerHTML="<a name='"+h+"'/>";var l=s.documentElement;l.insertBefore(g,l.firstChild);if(s.getElementById(h)){n.find.ID=function(m,q,p){if(typeof q.getElementById!=="undefined"&&!p)return(q=q.getElementById(m[1]))?q.id===m[1]||typeof q.getAttributeNode!=="undefined"&&
|
| 110 |
-
q.getAttributeNode("id").nodeValue===m[1]?[q]:w:[]};n.filter.ID=function(m,q){var p=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&p&&p.nodeValue===q}}l.removeChild(g);l=g=null})();(function(){var g=s.createElement("div");g.appendChild(s.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(h,l){l=l.getElementsByTagName(h[1]);if(h[1]==="*"){h=[];for(var m=0;l[m];m++)l[m].nodeType===1&&h.push(l[m]);l=h}return l};g.innerHTML="<a href='#'></a>";
|
| 111 |
-
if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(h){return h.getAttribute("href",2)};g=null})();s.querySelectorAll&&function(){var g=k,h=s.createElement("div");h.innerHTML="<p class='TEST'></p>";if(!(h.querySelectorAll&&h.querySelectorAll(".TEST").length===0)){k=function(m,q,p,v){q=q||s;if(!v&&q.nodeType===9&&!x(q))try{return z(q.querySelectorAll(m),p)}catch(t){}return g(m,q,p,v)};for(var l in g)k[l]=g[l];h=null}}();
|
| 112 |
-
(function(){var g=s.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(h,l,m){if(typeof l.getElementsByClassName!=="undefined"&&!m)return l.getElementsByClassName(h[1])};g=null}}})();var E=s.compareDocumentPosition?function(g,h){return!!(g.compareDocumentPosition(h)&16)}:
|
| 113 |
-
function(g,h){return g!==h&&(g.contains?g.contains(h):true)},x=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false},ga=function(g,h){var l=[],m="",q;for(h=h.nodeType?[h]:h;q=n.match.PSEUDO.exec(g);){m+=q[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;q=0;for(var p=h.length;q<p;q++)k(g,h[q],l);return k.filter(m,l)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=a;c.isXMLDoc=x;c.contains=E})();var eb=/Until$/,fb=/^(?:parents|prevUntil|prevAll)/,
|
| 114 |
-
gb=/,/;R=Array.prototype.slice;var Ia=function(a,b,d){if(c.isFunction(b))return c.grep(a,function(e,j){return!!b.call(e,j,e)===d});else if(b.nodeType)return c.grep(a,function(e){return e===b===d});else if(typeof b==="string"){var f=c.grep(a,function(e){return e.nodeType===1});if(Ua.test(b))return c.filter(b,f,!d);else b=c.filter(b,f)}return c.grep(a,function(e){return c.inArray(e,b)>=0===d})};c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,f=0,e=this.length;f<e;f++){d=b.length;
|
| 115 |
-
c.find(a,this[f],b);if(f>0)for(var j=d;j<b.length;j++)for(var i=0;i<d;i++)if(b[i]===b[j]){b.splice(j--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,f=b.length;d<f;d++)if(c.contains(this,b[d]))return true})},not:function(a){return this.pushStack(Ia(this,a,false),"not",a)},filter:function(a){return this.pushStack(Ia(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){if(c.isArray(a)){var d=[],f=this[0],e,j=
|
| 116 |
-
{},i;if(f&&a.length){e=0;for(var o=a.length;e<o;e++){i=a[e];j[i]||(j[i]=c.expr.match.POS.test(i)?c(i,b||this.context):i)}for(;f&&f.ownerDocument&&f!==b;){for(i in j){e=j[i];if(e.jquery?e.index(f)>-1:c(f).is(e)){d.push({selector:i,elem:f});delete j[i]}}f=f.parentNode}}return d}var k=c.expr.match.POS.test(a)?c(a,b||this.context):null;return this.map(function(n,r){for(;r&&r.ownerDocument&&r!==b;){if(k?k.index(r)>-1:c(r).is(a))return r;r=r.parentNode}return null})},index:function(a){if(!a||typeof a===
|
| 117 |
-
"string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){a=typeof a==="string"?c(a,b||this.context):c.makeArray(a);b=c.merge(this.get(),a);return this.pushStack(qa(a[0])||qa(b[0])?b:c.unique(b))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",
|
| 118 |
-
d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?
|
| 119 |
-
a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,f){var e=c.map(this,b,d);eb.test(a)||(f=d);if(f&&typeof f==="string")e=c.filter(f,e);e=this.length>1?c.unique(e):e;if((this.length>1||gb.test(f))&&fb.test(a))e=e.reverse();return this.pushStack(e,a,R.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return c.find.matches(a,b)},dir:function(a,b,d){var f=[];for(a=a[b];a&&a.nodeType!==9&&(d===w||a.nodeType!==1||!c(a).is(d));){a.nodeType===
|
| 120 |
-
1&&f.push(a);a=a[b]}return f},nth:function(a,b,d){b=b||1;for(var f=0;a;a=a[d])if(a.nodeType===1&&++f===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var Ja=/ jQuery\d+="(?:\d+|null)"/g,V=/^\s+/,Ka=/(<([\w:]+)[^>]*?)\/>/g,hb=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,La=/<([\w:]+)/,ib=/<tbody/i,jb=/<|&#?\w+;/,ta=/<script|<object|<embed|<option|<style/i,ua=/checked\s*(?:[^=]|=\s*.checked.)/i,Ma=function(a,b,d){return hb.test(d)?
|
| 121 |
-
a:b+"></"+d+">"},F={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};F.optgroup=F.option;F.tbody=F.tfoot=F.colgroup=F.caption=F.thead;F.th=F.td;if(!c.support.htmlSerialize)F._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
|
| 122 |
-
c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==w)return this.empty().append((this[0]&&this[0].ownerDocument||s).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
|
| 123 |
-
wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
|
| 124 |
-
prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
|
| 125 |
-
this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,f;(f=this[d])!=null;d++)if(!a||c.filter(a,[f]).length){if(!b&&f.nodeType===1){c.cleanData(f.getElementsByTagName("*"));c.cleanData([f])}f.parentNode&&f.parentNode.removeChild(f)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
|
| 126 |
-
return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,f=this.ownerDocument;if(!d){d=f.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(Ja,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(V,"")],f)[0]}else return this.cloneNode(true)});if(a===true){ra(this,b);ra(this.find("*"),b.find("*"))}return b},html:function(a){if(a===w)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Ja,
|
| 127 |
-
""):null;else if(typeof a==="string"&&!ta.test(a)&&(c.support.leadingWhitespace||!V.test(a))&&!F[(La.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Ka,Ma);try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(f){this.empty().append(a)}}else c.isFunction(a)?this.each(function(e){var j=c(this),i=j.html();j.empty().append(function(){return a.call(this,e,i)})}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&
|
| 128 |
-
this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=c(this),f=d.html();d.replaceWith(a.call(this,b,f))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){function f(u){return c.nodeName(u,"table")?u.getElementsByTagName("tbody")[0]||
|
| 129 |
-
u.appendChild(u.ownerDocument.createElement("tbody")):u}var e,j,i=a[0],o=[],k;if(!c.support.checkClone&&arguments.length===3&&typeof i==="string"&&ua.test(i))return this.each(function(){c(this).domManip(a,b,d,true)});if(c.isFunction(i))return this.each(function(u){var z=c(this);a[0]=i.call(this,u,b?z.html():w);z.domManip(a,b,d)});if(this[0]){e=i&&i.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:sa(a,this,o);k=e.fragment;if(j=k.childNodes.length===
|
| 130 |
-
1?(k=k.firstChild):k.firstChild){b=b&&c.nodeName(j,"tr");for(var n=0,r=this.length;n<r;n++)d.call(b?f(this[n],j):this[n],n>0||e.cacheable||this.length>1?k.cloneNode(true):k)}o.length&&c.each(o,Qa)}return this}});c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var f=[];d=c(d);var e=this.length===1&&this[0].parentNode;if(e&&e.nodeType===11&&e.childNodes.length===1&&d.length===1){d[b](this[0]);
|
| 131 |
-
return this}else{e=0;for(var j=d.length;e<j;e++){var i=(e>0?this.clone(true):this).get();c.fn[b].apply(c(d[e]),i);f=f.concat(i)}return this.pushStack(f,a,d.selector)}}});c.extend({clean:function(a,b,d,f){b=b||s;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||s;for(var e=[],j=0,i;(i=a[j])!=null;j++){if(typeof i==="number")i+="";if(i){if(typeof i==="string"&&!jb.test(i))i=b.createTextNode(i);else if(typeof i==="string"){i=i.replace(Ka,Ma);var o=(La.exec(i)||["",
|
| 132 |
-
""])[1].toLowerCase(),k=F[o]||F._default,n=k[0],r=b.createElement("div");for(r.innerHTML=k[1]+i+k[2];n--;)r=r.lastChild;if(!c.support.tbody){n=ib.test(i);o=o==="table"&&!n?r.firstChild&&r.firstChild.childNodes:k[1]==="<table>"&&!n?r.childNodes:[];for(k=o.length-1;k>=0;--k)c.nodeName(o[k],"tbody")&&!o[k].childNodes.length&&o[k].parentNode.removeChild(o[k])}!c.support.leadingWhitespace&&V.test(i)&&r.insertBefore(b.createTextNode(V.exec(i)[0]),r.firstChild);i=r.childNodes}if(i.nodeType)e.push(i);else e=
|
| 133 |
-
c.merge(e,i)}}if(d)for(j=0;e[j];j++)if(f&&c.nodeName(e[j],"script")&&(!e[j].type||e[j].type.toLowerCase()==="text/javascript"))f.push(e[j].parentNode?e[j].parentNode.removeChild(e[j]):e[j]);else{e[j].nodeType===1&&e.splice.apply(e,[j+1,0].concat(c.makeArray(e[j].getElementsByTagName("script"))));d.appendChild(e[j])}return e},cleanData:function(a){for(var b,d,f=c.cache,e=c.event.special,j=c.support.deleteExpando,i=0,o;(o=a[i])!=null;i++)if(d=o[c.expando]){b=f[d];if(b.events)for(var k in b.events)e[k]?
|
| 134 |
-
c.event.remove(o,k):Ca(o,k,b.handle);if(j)delete o[c.expando];else o.removeAttribute&&o.removeAttribute(c.expando);delete f[d]}}});var kb=/z-?index|font-?weight|opacity|zoom|line-?height/i,Na=/alpha\([^)]*\)/,Oa=/opacity=([^)]*)/,ha=/float/i,ia=/-([a-z])/ig,lb=/([A-Z])/g,mb=/^-?\d+(?:px)?$/i,nb=/^-?\d/,ob={position:"absolute",visibility:"hidden",display:"block"},pb=["Left","Right"],qb=["Top","Bottom"],rb=s.defaultView&&s.defaultView.getComputedStyle,Pa=c.support.cssFloat?"cssFloat":"styleFloat",ja=
|
| 135 |
-
function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){return X(this,a,b,true,function(d,f,e){if(e===w)return c.curCSS(d,f);if(typeof e==="number"&&!kb.test(f))e+="px";c.style(d,f,e)})};c.extend({style:function(a,b,d){if(!a||a.nodeType===3||a.nodeType===8)return w;if((b==="width"||b==="height")&&parseFloat(d)<0)d=w;var f=a.style||a,e=d!==w;if(!c.support.opacity&&b==="opacity"){if(e){f.zoom=1;b=parseInt(d,10)+""==="NaN"?"":"alpha(opacity="+d*100+")";a=f.filter||c.curCSS(a,"filter")||"";f.filter=
|
| 136 |
-
Na.test(a)?a.replace(Na,b):b}return f.filter&&f.filter.indexOf("opacity=")>=0?parseFloat(Oa.exec(f.filter)[1])/100+"":""}if(ha.test(b))b=Pa;b=b.replace(ia,ja);if(e)f[b]=d;return f[b]},css:function(a,b,d,f){if(b==="width"||b==="height"){var e,j=b==="width"?pb:qb;function i(){e=b==="width"?a.offsetWidth:a.offsetHeight;f!=="border"&&c.each(j,function(){f||(e-=parseFloat(c.curCSS(a,"padding"+this,true))||0);if(f==="margin")e+=parseFloat(c.curCSS(a,"margin"+this,true))||0;else e-=parseFloat(c.curCSS(a,
|
| 137 |
-
"border"+this+"Width",true))||0})}a.offsetWidth!==0?i():c.swap(a,ob,i);return Math.max(0,Math.round(e))}return c.curCSS(a,b,d)},curCSS:function(a,b,d){var f,e=a.style;if(!c.support.opacity&&b==="opacity"&&a.currentStyle){f=Oa.test(a.currentStyle.filter||"")?parseFloat(RegExp.$1)/100+"":"";return f===""?"1":f}if(ha.test(b))b=Pa;if(!d&&e&&e[b])f=e[b];else if(rb){if(ha.test(b))b="float";b=b.replace(lb,"-$1").toLowerCase();e=a.ownerDocument.defaultView;if(!e)return null;if(a=e.getComputedStyle(a,null))f=
|
| 138 |
-
a.getPropertyValue(b);if(b==="opacity"&&f==="")f="1"}else if(a.currentStyle){d=b.replace(ia,ja);f=a.currentStyle[b]||a.currentStyle[d];if(!mb.test(f)&&nb.test(f)){b=e.left;var j=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;e.left=d==="fontSize"?"1em":f||0;f=e.pixelLeft+"px";e.left=b;a.runtimeStyle.left=j}}return f},swap:function(a,b,d){var f={};for(var e in b){f[e]=a.style[e];a.style[e]=b[e]}d.call(a);for(e in b)a.style[e]=f[e]}});if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=
|
| 139 |
-
a.offsetWidth,d=a.offsetHeight,f=a.nodeName.toLowerCase()==="tr";return b===0&&d===0&&!f?true:b>0&&d>0&&!f?false:c.curCSS(a,"display")==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var sb=J(),tb=/<script(.|\s)*?\/script>/gi,ub=/select|textarea/i,vb=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,N=/=\?(&|$)/,ka=/\?/,wb=/(\?|&)_=.*?(&|$)/,xb=/^(\w+:)?\/\/([^\/?#]+)/,yb=/%20/g,zb=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!==
|
| 140 |
-
"string")return zb.call(this,a);else if(!this.length)return this;var f=a.indexOf(" ");if(f>=0){var e=a.slice(f,a.length);a=a.slice(0,f)}f="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);f="POST"}var j=this;c.ajax({url:a,type:f,dataType:"html",data:b,complete:function(i,o){if(o==="success"||o==="notmodified")j.html(e?c("<div />").append(i.responseText.replace(tb,"")).find(e):i.responseText);d&&j.each(d,[i.responseText,o,i])}});return this},
|
| 141 |
-
serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ub.test(this.nodeName)||vb.test(this.type))}).map(function(a,b){a=c(this).val();return a==null?null:c.isArray(a)?c.map(a,function(d){return{name:b.name,value:d}}):{name:b.name,value:a}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),
|
| 142 |
-
function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:f})},getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:f})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,
|
| 143 |
-
global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:A.XMLHttpRequest&&(A.location.protocol!=="file:"||!A.ActiveXObject)?function(){return new A.XMLHttpRequest}:function(){try{return new A.ActiveXObject("Microsoft.XMLHTTP")}catch(a){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(a){function b(){e.success&&
|
| 144 |
-
e.success.call(k,o,i,x);e.global&&f("ajaxSuccess",[x,e])}function d(){e.complete&&e.complete.call(k,x,i);e.global&&f("ajaxComplete",[x,e]);e.global&&!--c.active&&c.event.trigger("ajaxStop")}function f(q,p){(e.context?c(e.context):c.event).trigger(q,p)}var e=c.extend(true,{},c.ajaxSettings,a),j,i,o,k=a&&a.context||e,n=e.type.toUpperCase();if(e.data&&e.processData&&typeof e.data!=="string")e.data=c.param(e.data,e.traditional);if(e.dataType==="jsonp"){if(n==="GET")N.test(e.url)||(e.url+=(ka.test(e.url)?
|
| 145 |
-
"&":"?")+(e.jsonp||"callback")+"=?");else if(!e.data||!N.test(e.data))e.data=(e.data?e.data+"&":"")+(e.jsonp||"callback")+"=?";e.dataType="json"}if(e.dataType==="json"&&(e.data&&N.test(e.data)||N.test(e.url))){j=e.jsonpCallback||"jsonp"+sb++;if(e.data)e.data=(e.data+"").replace(N,"="+j+"$1");e.url=e.url.replace(N,"="+j+"$1");e.dataType="script";A[j]=A[j]||function(q){o=q;b();d();A[j]=w;try{delete A[j]}catch(p){}z&&z.removeChild(C)}}if(e.dataType==="script"&&e.cache===null)e.cache=false;if(e.cache===
|
| 146 |
-
false&&n==="GET"){var r=J(),u=e.url.replace(wb,"$1_="+r+"$2");e.url=u+(u===e.url?(ka.test(e.url)?"&":"?")+"_="+r:"")}if(e.data&&n==="GET")e.url+=(ka.test(e.url)?"&":"?")+e.data;e.global&&!c.active++&&c.event.trigger("ajaxStart");r=(r=xb.exec(e.url))&&(r[1]&&r[1]!==location.protocol||r[2]!==location.host);if(e.dataType==="script"&&n==="GET"&&r){var z=s.getElementsByTagName("head")[0]||s.documentElement,C=s.createElement("script");C.src=e.url;if(e.scriptCharset)C.charset=e.scriptCharset;if(!j){var B=
|
| 147 |
-
false;C.onload=C.onreadystatechange=function(){if(!B&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){B=true;b();d();C.onload=C.onreadystatechange=null;z&&C.parentNode&&z.removeChild(C)}}}z.insertBefore(C,z.firstChild);return w}var E=false,x=e.xhr();if(x){e.username?x.open(n,e.url,e.async,e.username,e.password):x.open(n,e.url,e.async);try{if(e.data||a&&a.contentType)x.setRequestHeader("Content-Type",e.contentType);if(e.ifModified){c.lastModified[e.url]&&x.setRequestHeader("If-Modified-Since",
|
| 148 |
-
c.lastModified[e.url]);c.etag[e.url]&&x.setRequestHeader("If-None-Match",c.etag[e.url])}r||x.setRequestHeader("X-Requested-With","XMLHttpRequest");x.setRequestHeader("Accept",e.dataType&&e.accepts[e.dataType]?e.accepts[e.dataType]+", */*":e.accepts._default)}catch(ga){}if(e.beforeSend&&e.beforeSend.call(k,x,e)===false){e.global&&!--c.active&&c.event.trigger("ajaxStop");x.abort();return false}e.global&&f("ajaxSend",[x,e]);var g=x.onreadystatechange=function(q){if(!x||x.readyState===0||q==="abort"){E||
|
| 149 |
-
d();E=true;if(x)x.onreadystatechange=c.noop}else if(!E&&x&&(x.readyState===4||q==="timeout")){E=true;x.onreadystatechange=c.noop;i=q==="timeout"?"timeout":!c.httpSuccess(x)?"error":e.ifModified&&c.httpNotModified(x,e.url)?"notmodified":"success";var p;if(i==="success")try{o=c.httpData(x,e.dataType,e)}catch(v){i="parsererror";p=v}if(i==="success"||i==="notmodified")j||b();else c.handleError(e,x,i,p);d();q==="timeout"&&x.abort();if(e.async)x=null}};try{var h=x.abort;x.abort=function(){x&&h.call(x);
|
| 150 |
-
g("abort")}}catch(l){}e.async&&e.timeout>0&&setTimeout(function(){x&&!E&&g("timeout")},e.timeout);try{x.send(n==="POST"||n==="PUT"||n==="DELETE"?e.data:null)}catch(m){c.handleError(e,x,null,m);d()}e.async||g();return x}},handleError:function(a,b,d,f){if(a.error)a.error.call(a.context||a,b,d,f);if(a.global)(a.context?c(a.context):c.event).trigger("ajaxError",[b,a,f])},active:0,httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===
|
| 151 |
-
1223||a.status===0}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),f=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(f)c.etag[b]=f;return a.status===304||a.status===0},httpData:function(a,b,d){var f=a.getResponseHeader("content-type")||"",e=b==="xml"||!b&&f.indexOf("xml")>=0;a=e?a.responseXML:a.responseText;e&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b===
|
| 152 |
-
"json"||!b&&f.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&f.indexOf("javascript")>=0)c.globalEval(a);return a},param:function(a,b){function d(i,o){if(c.isArray(o))c.each(o,function(k,n){b||/\[\]$/.test(i)?f(i,n):d(i+"["+(typeof n==="object"||c.isArray(n)?k:"")+"]",n)});else!b&&o!=null&&typeof o==="object"?c.each(o,function(k,n){d(i+"["+k+"]",n)}):f(i,o)}function f(i,o){o=c.isFunction(o)?o():o;e[e.length]=encodeURIComponent(i)+"="+encodeURIComponent(o)}var e=[];if(b===w)b=c.ajaxSettings.traditional;
|
| 153 |
-
if(c.isArray(a)||a.jquery)c.each(a,function(){f(this.name,this.value)});else for(var j in a)d(j,a[j]);return e.join("&").replace(yb,"+")}});var la={},Ab=/toggle|show|hide/,Bb=/^([+-]=)?([\d+-.]+)(.*)$/,W,va=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b){if(a||a===0)return this.animate(K("show",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");
|
| 154 |
-
this[a].style.display=d||"";if(c.css(this[a],"display")==="none"){d=this[a].nodeName;var f;if(la[d])f=la[d];else{var e=c("<"+d+" />").appendTo("body");f=e.css("display");if(f==="none")f="block";e.remove();la[d]=f}c.data(this[a],"olddisplay",f)}}a=0;for(b=this.length;a<b;a++)this[a].style.display=c.data(this[a],"olddisplay")||"";return this}},hide:function(a,b){if(a||a===0)return this.animate(K("hide",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");!d&&d!=="none"&&c.data(this[a],
|
| 155 |
-
"olddisplay",c.css(this[a],"display"))}a=0;for(b=this.length;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b){var d=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||d?this.each(function(){var f=d?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(K("toggle",3),a,b);return this},fadeTo:function(a,b,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d)},
|
| 156 |
-
animate:function(a,b,d,f){var e=c.speed(b,d,f);if(c.isEmptyObject(a))return this.each(e.complete);return this[e.queue===false?"each":"queue"](function(){var j=c.extend({},e),i,o=this.nodeType===1&&c(this).is(":hidden"),k=this;for(i in a){var n=i.replace(ia,ja);if(i!==n){a[n]=a[i];delete a[i];i=n}if(a[i]==="hide"&&o||a[i]==="show"&&!o)return j.complete.call(this);if((i==="height"||i==="width")&&this.style){j.display=c.css(this,"display");j.overflow=this.style.overflow}if(c.isArray(a[i])){(j.specialEasing=
|
| 157 |
-
j.specialEasing||{})[i]=a[i][1];a[i]=a[i][0]}}if(j.overflow!=null)this.style.overflow="hidden";j.curAnim=c.extend({},a);c.each(a,function(r,u){var z=new c.fx(k,j,r);if(Ab.test(u))z[u==="toggle"?o?"show":"hide":u](a);else{var C=Bb.exec(u),B=z.cur(true)||0;if(C){u=parseFloat(C[2]);var E=C[3]||"px";if(E!=="px"){k.style[r]=(u||1)+E;B=(u||1)/z.cur(true)*B;k.style[r]=B+E}if(C[1])u=(C[1]==="-="?-1:1)*u+B;z.custom(B,u,E)}else z.custom(B,u,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);
|
| 158 |
-
this.each(function(){for(var f=d.length-1;f>=0;f--)if(d[f].elem===this){b&&d[f](true);d.splice(f,1)}});b||this.dequeue();return this}});c.each({slideDown:K("show",1),slideUp:K("hide",1),slideToggle:K("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,f){return this.animate(b,d,f)}});c.extend({speed:function(a,b,d){var f=a&&typeof a==="object"?a:{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};f.duration=c.fx.off?0:typeof f.duration===
|
| 159 |
-
"number"?f.duration:c.fx.speeds[f.duration]||c.fx.speeds._default;f.old=f.complete;f.complete=function(){f.queue!==false&&c(this).dequeue();c.isFunction(f.old)&&f.old.call(this)};return f},easing:{linear:function(a,b,d,f){return d+f*a},swing:function(a,b,d,f){return(-Math.cos(a*Math.PI)/2+0.5)*f+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||
|
| 160 |
-
c.fx.step._default)(this);if((this.prop==="height"||this.prop==="width")&&this.elem.style)this.elem.style.display="block"},cur:function(a){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];return(a=parseFloat(c.css(this.elem,this.prop,a)))&&a>-10000?a:parseFloat(c.curCSS(this.elem,this.prop))||0},custom:function(a,b,d){function f(j){return e.step(j)}this.startTime=J();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;
|
| 161 |
-
this.pos=this.state=0;var e=this;f.elem=this.elem;if(f()&&c.timers.push(f)&&!W)W=setInterval(c.fx.tick,13)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(a){var b=J(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=
|
| 162 |
-
this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var f in this.options.curAnim)if(this.options.curAnim[f]!==true)d=false;if(d){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;a=c.data(this.elem,"olddisplay");this.elem.style.display=a?a:this.options.display;if(c.css(this.elem,"display")==="none")this.elem.style.display="block"}this.options.hide&&c(this.elem).hide();if(this.options.hide||this.options.show)for(var e in this.options.curAnim)c.style(this.elem,
|
| 163 |
-
e,this.options.orig[e]);this.options.complete.call(this.elem)}return false}else{e=b-this.startTime;this.state=e/this.options.duration;a=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||a](this.state,e,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||
|
| 164 |
-
c.fx.stop()},stop:function(){clearInterval(W);W=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===b.elem}).length};c.fn.offset="getBoundingClientRect"in s.documentElement?
|
| 165 |
-
function(a){var b=this[0];if(a)return this.each(function(e){c.offset.setOffset(this,a,e)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);var d=b.getBoundingClientRect(),f=b.ownerDocument;b=f.body;f=f.documentElement;return{top:d.top+(self.pageYOffset||c.support.boxModel&&f.scrollTop||b.scrollTop)-(f.clientTop||b.clientTop||0),left:d.left+(self.pageXOffset||c.support.boxModel&&f.scrollLeft||b.scrollLeft)-(f.clientLeft||b.clientLeft||0)}}:function(a){var b=
|
| 166 |
-
this[0];if(a)return this.each(function(r){c.offset.setOffset(this,a,r)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d=b.offsetParent,f=b,e=b.ownerDocument,j,i=e.documentElement,o=e.body;f=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle;for(var k=b.offsetTop,n=b.offsetLeft;(b=b.parentNode)&&b!==o&&b!==i;){if(c.offset.supportsFixedPosition&&f.position==="fixed")break;j=e?e.getComputedStyle(b,null):b.currentStyle;
|
| 167 |
-
k-=b.scrollTop;n-=b.scrollLeft;if(b===d){k+=b.offsetTop;n+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(b.nodeName))){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=d;d=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&j.overflow!=="visible"){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=j}if(f.position==="relative"||f.position==="static"){k+=o.offsetTop;n+=o.offsetLeft}if(c.offset.supportsFixedPosition&&
|
| 168 |
-
f.position==="fixed"){k+=Math.max(i.scrollTop,o.scrollTop);n+=Math.max(i.scrollLeft,o.scrollLeft)}return{top:k,left:n}};c.offset={initialize:function(){var a=s.body,b=s.createElement("div"),d,f,e,j=parseFloat(c.curCSS(a,"marginTop",true))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";
|
| 169 |
-
a.insertBefore(b,a.firstChild);d=b.firstChild;f=d.firstChild;e=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=f.offsetTop!==5;this.doesAddBorderForTableAndCells=e.offsetTop===5;f.style.position="fixed";f.style.top="20px";this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15;f.style.position=f.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==j;a.removeChild(b);
|
| 170 |
-
c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.curCSS(a,"marginTop",true))||0;d+=parseFloat(c.curCSS(a,"marginLeft",true))||0}return{top:b,left:d}},setOffset:function(a,b,d){if(/static/.test(c.curCSS(a,"position")))a.style.position="relative";var f=c(a),e=f.offset(),j=parseInt(c.curCSS(a,"top",true),10)||0,i=parseInt(c.curCSS(a,"left",true),10)||0;if(c.isFunction(b))b=b.call(a,
|
| 171 |
-
d,e);d={top:b.top-e.top+j,left:b.left-e.left+i};"using"in b?b.using.call(a,d):f.css(d)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),f=/^body|html$/i.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.curCSS(a,"marginTop",true))||0;d.left-=parseFloat(c.curCSS(a,"marginLeft",true))||0;f.top+=parseFloat(c.curCSS(b[0],"borderTopWidth",true))||0;f.left+=parseFloat(c.curCSS(b[0],"borderLeftWidth",true))||0;return{top:d.top-
|
| 172 |
-
f.top,left:d.left-f.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||s.body;a&&!/^body|html$/i.test(a.nodeName)&&c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(f){var e=this[0],j;if(!e)return null;if(f!==w)return this.each(function(){if(j=wa(this))j.scrollTo(!a?f:c(j).scrollLeft(),a?f:c(j).scrollTop());else this[d]=f});else return(j=wa(e))?"pageXOffset"in j?j[a?"pageYOffset":
|
| 173 |
-
"pageXOffset"]:c.support.boxModel&&j.document.documentElement[d]||j.document.body[d]:e[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();c.fn["inner"+b]=function(){return this[0]?c.css(this[0],d,false,"padding"):null};c.fn["outer"+b]=function(f){return this[0]?c.css(this[0],d,false,f?"margin":"border"):null};c.fn[d]=function(f){var e=this[0];if(!e)return f==null?null:this;if(c.isFunction(f))return this.each(function(j){var i=c(this);i[d](f.call(this,j,i[d]()))});return"scrollTo"in
|
| 174 |
-
e&&e.document?e.document.compatMode==="CSS1Compat"&&e.document.documentElement["client"+b]||e.document.body["client"+b]:e.nodeType===9?Math.max(e.documentElement["client"+b],e.body["scroll"+b],e.documentElement["scroll"+b],e.body["offset"+b],e.documentElement["offset"+b]):f===w?c.css(e,d):this.css(d,typeof f==="string"?f:f+"px")}});A.jQuery=A.$=c})(window);
|
| 175 |
-
(function(){function f(a,b){if(b)for(key in b)if(b.hasOwnProperty(key))a[key]=b[key];return a}function l(a,b){var c=[];for(var d in a)if(a.hasOwnProperty(d))c[d]=b(a[d]);return c}function m(a,b,c){if(e.isSupported(b.version))a.innerHTML=e.getHTML(b,c);else if(b.expressInstall&&e.isSupported([6,65]))a.innerHTML=e.getHTML(f(b,{src:b.expressInstall}),{MMredirectURL:location.href,MMplayerType:"PlugIn",MMdoctitle:document.title});else{if(!a.innerHTML.replace(/\s/g,"")){a.innerHTML="<h2>Flash version "+
|
| 176 |
-
b.version+" or greater is required</h2><h3>"+(g[0]>0?"Your version is "+g:"You have no flash plugin installed")+"</h3>"+(a.tagName=="A"?"<p>Click here to download latest version</p>":"<p>Download latest version from <a href='"+k+"'>here</a></p>");if(a.tagName=="A")a.onclick=function(){location.href=k}}if(b.onFail){var d=b.onFail.call(this);if(typeof d=="string")a.innerHTML=d}}if(h)window[b.id]=document.getElementById(b.id);f(this,{getRoot:function(){return a},getOptions:function(){return b},getConf:function(){return c},
|
| 177 |
-
getApi:function(){return a.firstChild}})}var h=document.all,k="http://www.adobe.com/go/getflashplayer",n=typeof jQuery=="function",o=/(\d+)[^\d]+(\d+)[^\d]*(\d*)/,i={width:"100%",height:"100%",id:"_"+(""+Math.random()).slice(9),allowfullscreen:true,allowscriptaccess:"always",quality:"high",version:[3,0],onFail:null,expressInstall:null,w3c:false,cachebusting:false};window.attachEvent&&window.attachEvent("onbeforeunload",function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){}});
|
| 178 |
-
window.flashembed=function(a,b,c){if(typeof a=="string")a=document.getElementById(a.replace("#",""));if(a){if(typeof b=="string")b={src:b};return new m(a,f(f({},i),b),c)}};var e=f(window.flashembed,{conf:i,getVersion:function(){var a;try{a=navigator.plugins["Shockwave Flash"].description.slice(16)}catch(b){try{var c=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");a=c&&c.GetVariable("$version")}catch(d){}}return(a=o.exec(a))?[a[1],a[3]]:[0,0]},asString:function(a){if(a===null||a===undefined)return null;
|
| 179 |
-
var b=typeof a;if(b=="object"&&a.push)b="array";switch(b){case "string":a=a.replace(new RegExp('(["\\\\])',"g"),"\\$1");a=a.replace(/^\s?(\d+\.?\d+)%/,"$1pct");return'"'+a+'"';case "array":return"["+l(a,function(d){return e.asString(d)}).join(",")+"]";case "function":return'"function()"';case "object":b=[];for(var c in a)a.hasOwnProperty(c)&&b.push('"'+c+'":'+e.asString(a[c]));return"{"+b.join(",")+"}"}return String(a).replace(/\s/g," ").replace(/\'/g,'"')},getHTML:function(a,b){a=f({},a);var c='<object width="'+
|
| 180 |
-
a.width+'" height="'+a.height+'" id="'+a.id+'" name="'+a.id+'"';if(a.cachebusting)a.src+=(a.src.indexOf("?")!=-1?"&":"?")+Math.random();c+=a.w3c||!h?' data="'+a.src+'" type="application/x-shockwave-flash"':' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"';c+=">";if(a.w3c||h)c+='<param name="movie" value="'+a.src+'" />';a.width=a.height=a.id=a.w3c=a.src=null;a.onFail=a.version=a.expressInstall=null;for(var d in a)if(a[d])c+='<param name="'+d+'" value="'+a[d]+'" />';a="";if(b){for(var j in b)if(b[j]){d=
|
| 181 |
-
b[j];a+=j+"="+(/function|object/.test(typeof d)?e.asString(d):d)+"&"}a=a.slice(0,-1);c+='<param name="flashvars" value=\''+a+"' />"}c+="</object>";return c},isSupported:function(a){return g[0]>a[0]||g[0]==a[0]&&g[1]>=a[1]}}),g=e.getVersion();if(n){jQuery.tools=jQuery.tools||{version:"1.2.3"};jQuery.tools.flashembed={conf:i};jQuery.fn.flashembed=function(a,b){return this.each(function(){$(this).data("flashembed",flashembed(this,a,b))})}}})();
|
| 182 |
-
(function(b){function h(c){if(c){var a=d.contentWindow.document;a.open().close();a.location.hash=c}}var g,d,f,i;b.tools=b.tools||{version:"1.2.3"};b.tools.history={init:function(c){if(!i){if(b.browser.msie&&b.browser.version<"8"){if(!d){d=b("<iframe/>").attr("src","javascript:false;").hide().get(0);b("body").append(d);setInterval(function(){var a=d.contentWindow.document;a=a.location.hash;g!==a&&b.event.trigger("hash",a)},100);h(location.hash||"#")}}else setInterval(function(){var a=location.hash;
|
| 183 |
-
a!==g&&b.event.trigger("hash",a)},100);f=!f?c:f.add(c);c.click(function(a){var e=b(this).attr("href");d&&h(e);if(e.slice(0,1)!="#"){location.href="#"+e;return a.preventDefault()}});i=true}}};b(window).bind("hash",function(c,a){a?f.filter(function(){var e=b(this).attr("href");return e==a||e==a.replace("#","")}).trigger("history",[a]):f.eq(0).trigger("history",[a]);g=a;window.location.hash=g});b.fn.history=function(c){b.tools.history.init(this);return this.bind("history",c)}})(jQuery);
|
| 184 |
-
(function(b){function k(){if(b.browser.msie){var a=b(document).height(),d=b(window).height();return[window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,a-d<20?d:a]}return[b(document).width(),b(document).height()]}function h(a){if(a)return a.call(b.mask)}b.tools=b.tools||{version:"1.2.3"};var l;l=b.tools.expose={conf:{maskId:"exposeMask",loadSpeed:"slow",closeSpeed:"fast",closeOnClick:true,closeOnEsc:true,zIndex:9998,opacity:0.8,startOpacity:0,color:"#fff",onLoad:null,
|
| 185 |
-
onClose:null}};var c,i,f,g,j;b.mask={load:function(a,d){if(f)return this;if(typeof a=="string")a={color:a};a=a||g;g=a=b.extend(b.extend({},l.conf),a);c=b("#"+a.maskId);if(!c.length){c=b("<div/>").attr("id",a.maskId);b("body").append(c)}var m=k();c.css({position:"absolute",top:0,left:0,width:m[0],height:m[1],display:"none",opacity:a.startOpacity,zIndex:a.zIndex});a.color&&c.css("backgroundColor",a.color);if(h(a.onBeforeLoad)===false)return this;a.closeOnEsc&&b(document).bind("keydown.mask",function(e){e.keyCode==
|
| 186 |
-
27&&b.mask.close(e)});a.closeOnClick&&c.bind("click.mask",function(e){b.mask.close(e)});b(window).bind("resize.mask",function(){b.mask.fit()});if(d&&d.length){j=d.eq(0).css("zIndex");b.each(d,function(){var e=b(this);/relative|absolute|fixed/i.test(e.css("position"))||e.css("position","relative")});i=d.css({zIndex:Math.max(a.zIndex+1,j=="auto"?0:j)})}c.css({display:"block"}).fadeTo(a.loadSpeed,a.opacity,function(){b.mask.fit();h(a.onLoad)});f=true;return this},close:function(){if(f){if(h(g.onBeforeClose)===
|
| 187 |
-
false)return this;c.fadeOut(g.closeSpeed,function(){h(g.onClose);i&&i.css({zIndex:j})});b(document).unbind("keydown.mask");c.unbind("click.mask");b(window).unbind("resize.mask");f=false}return this},fit:function(){if(f){var a=k();c.css({width:a[0],height:a[1]})}},getMask:function(){return c},isLoaded:function(){return f},getConf:function(){return g},getExposed:function(){return i}};b.fn.mask=function(a){b.mask.load(a);return this};b.fn.expose=function(a){b.mask.load(a,this);return this}})(jQuery);
|
| 188 |
-
(function(b){function c(a){switch(a.type){case "mousemove":return b.extend(a.data,{clientX:a.clientX,clientY:a.clientY,pageX:a.pageX,pageY:a.pageY});case "DOMMouseScroll":b.extend(a,a.data);a.delta=-a.detail/3;break;case "mousewheel":a.delta=a.wheelDelta/120;break}a.type="wheel";return b.event.handle.call(this,a,a.delta)}b.fn.mousewheel=function(a){return this[a?"bind":"trigger"]("wheel",a)};b.event.special.wheel={setup:function(){b.event.add(this,d,c,{})},teardown:function(){b.event.remove(this,
|
| 189 |
-
d,c)}};var d=!b.browser.mozilla?"mousewheel":"DOMMouseScroll"+(b.browser.version<"1.9"?" mousemove":"")})(jQuery);
|
| 190 |
-
(function(c){function p(e,b,a){var d=this,l=e.add(this),h=e.find(a.tabs),i=b.jquery?b:e.children(b),j;h.length||(h=e.children());i.length||(i=e.parent().find(b));i.length||(i=c(b));c.extend(this,{click:function(f,g){var k=h.eq(f);if(typeof f=="string"&&f.replace("#","")){k=h.filter("[href*="+f.replace("#","")+"]");f=Math.max(h.index(k),0)}if(a.rotate){var n=h.length-1;if(f<0)return d.click(n,g);if(f>n)return d.click(0,g)}if(!k.length){if(j>=0)return d;f=a.initialIndex;k=h.eq(f)}if(f===j)return d;
|
| 191 |
-
g=g||c.Event();g.type="onBeforeClick";l.trigger(g,[f]);if(!g.isDefaultPrevented()){o[a.effect].call(d,f,function(){g.type="onClick";l.trigger(g,[f])});j=f;h.removeClass(a.current);k.addClass(a.current);return d}},getConf:function(){return a},getTabs:function(){return h},getPanes:function(){return i},getCurrentPane:function(){return i.eq(j)},getCurrentTab:function(){return h.eq(j)},getIndex:function(){return j},next:function(){return d.click(j+1)},prev:function(){return d.click(j-1)},destroy:function(){h.unbind(a.event).removeClass(a.current);
|
| 192 |
-
i.find("a[href^=#]").unbind("click.T");return d}});c.each("onBeforeClick,onClick".split(","),function(f,g){c.isFunction(a[g])&&c(d).bind(g,a[g]);d[g]=function(k){c(d).bind(g,k);return d}});if(a.history&&c.fn.history){c.tools.history.init(h);a.event="history"}h.each(function(f){c(this).bind(a.event,function(g){d.click(f,g);return g.preventDefault()})});i.find("a[href^=#]").bind("click.T",function(f){d.click(c(this).attr("href"),f)});if(location.hash)d.click(location.hash);else if(a.initialIndex===
|
| 193 |
-
0||a.initialIndex>0)d.click(a.initialIndex)}c.tools=c.tools||{version:"1.2.3"};c.tools.tabs={conf:{tabs:"a",current:"current",onBeforeClick:null,onClick:null,effect:"default",initialIndex:0,event:"click",rotate:false,history:false},addEffect:function(e,b){o[e]=b}};var o={"default":function(e,b){this.getPanes().hide().eq(e).show();b.call()},fade:function(e,b){var a=this.getConf(),d=a.fadeOutSpeed,l=this.getPanes();d?l.fadeOut(d):l.hide();l.eq(e).fadeIn(a.fadeInSpeed,b)},slide:function(e,b){this.getPanes().slideUp(200);
|
| 194 |
-
this.getPanes().eq(e).slideDown(400,b)},ajax:function(e,b){this.getPanes().eq(0).load(this.getTabs().eq(e).attr("href"),b)}},m;c.tools.tabs.addEffect("horizontal",function(e,b){m||(m=this.getPanes().eq(0).width());this.getCurrentPane().animate({width:0},function(){c(this).hide()});this.getPanes().eq(e).animate({width:m},function(){c(this).show();b.call()})});c.fn.tabs=function(e,b){var a=this.data("tabs");if(a){a.destroy();this.removeData("tabs")}if(c.isFunction(b))b={onBeforeClick:b};b=c.extend({},
|
| 195 |
-
c.tools.tabs.conf,b);this.each(function(){a=new p(c(this),e,b);c(this).data("tabs",a)});return b.api?a:this}})(jQuery);
|
| 196 |
-
(function(d){function r(g,a){function p(f){var e=d(f);return e.length<2?e:g.parent().find(f)}var c=this,j=g.add(this),b=g.data("tabs"),h,l,m,n=false,o=p(a.next).click(function(){b.next()}),k=p(a.prev).click(function(){b.prev()});d.extend(c,{getTabs:function(){return b},getConf:function(){return a},play:function(){if(!h){var f=d.Event("onBeforePlay");j.trigger(f);if(f.isDefaultPrevented())return c;n=false;h=setInterval(b.next,a.interval);j.trigger("onPlay");b.next()}},pause:function(){if(!h)return c;
|
| 197 |
-
var f=d.Event("onBeforePause");j.trigger(f);if(f.isDefaultPrevented())return c;h=clearInterval(h);m=clearInterval(m);j.trigger("onPause")},stop:function(){c.pause();n=true}});d.each("onBeforePlay,onPlay,onBeforePause,onPause".split(","),function(f,e){d.isFunction(a[e])&&c.bind(e,a[e]);c[e]=function(s){return c.bind(e,s)}});if(a.autopause){var t=b.getTabs().add(o).add(k).add(b.getPanes());t.hover(function(){c.pause();l=clearInterval(l)},function(){n||(l=setTimeout(c.play,a.interval))})}if(a.autoplay)m=
|
| 198 |
-
setTimeout(c.play,a.interval);else c.stop();a.clickable&&b.getPanes().click(function(){b.next()});if(!b.getConf().rotate){var i=a.disabledClass;b.getIndex()||k.addClass(i);b.onBeforeClick(function(f,e){if(e){k.removeClass(i);e==b.getTabs().length-1?o.addClass(i):o.removeClass(i)}else k.addClass(i)})}}var q;q=d.tools.tabs.slideshow={conf:{next:".forward",prev:".backward",disabledClass:"disabled",autoplay:false,autopause:true,interval:3E3,clickable:true,api:false}};d.fn.slideshow=function(g){var a=
|
| 199 |
-
this.data("slideshow");if(a)return a;g=d.extend({},q.conf,g);this.each(function(){a=new r(d(this),g);d(this).data("slideshow",a)});return g.api?a:this}})(jQuery);
|
| 200 |
-
(function(f){function p(a,b,c){var h=c.relative?a.position().top:a.offset().top,e=c.relative?a.position().left:a.offset().left,i=c.position[0];h-=b.outerHeight()-c.offset[0];e+=a.outerWidth()+c.offset[1];var j=b.outerHeight()+a.outerHeight();if(i=="center")h+=j/2;if(i=="bottom")h+=j;i=c.position[1];a=b.outerWidth()+a.outerWidth();if(i=="center")e-=a/2;if(i=="left")e-=a;return{top:h,left:e}}function t(a,b){var c=this,h=a.add(c),e,i=0,j=0,m=a.attr("title"),q=n[b.effect],k,r=a.is(":input"),u=r&&a.is(":checkbox, :radio, select, :button, :submit"),
|
| 201 |
-
s=a.attr("type"),l=b.events[s]||b.events[r?u?"widget":"input":"def"];if(!q)throw'Nonexistent effect "'+b.effect+'"';l=l.split(/,\s*/);if(l.length!=2)throw"Tooltip: bad events configuration for "+s;a.bind(l[0],function(d){clearTimeout(i);if(b.predelay)j=setTimeout(function(){c.show(d)},b.predelay);else c.show(d)}).bind(l[1],function(d){clearTimeout(j);if(b.delay)i=setTimeout(function(){c.hide(d)},b.delay);else c.hide(d)});if(m&&b.cancelDefault){a.removeAttr("title");a.data("title",m)}f.extend(c,{show:function(d){if(!e){if(m)e=
|
| 202 |
-
f(b.layout).addClass(b.tipClass).appendTo(document.body).hide().append(m);else if(b.tip)e=f(b.tip).eq(0);else{e=a.next();e.length||(e=a.parent().next())}if(!e.length)throw"Cannot find tooltip for "+a;}if(c.isShown())return c;e.stop(true,true);var g=p(a,e,b);d=d||f.Event();d.type="onBeforeShow";h.trigger(d,[g]);if(d.isDefaultPrevented())return c;g=p(a,e,b);e.css({position:"absolute",top:g.top,left:g.left});k=true;q[0].call(c,function(){d.type="onShow";k="full";h.trigger(d)});g=b.events.tooltip.split(/,\s*/);
|
| 203 |
-
e.bind(g[0],function(){clearTimeout(i);clearTimeout(j)});g[1]&&!a.is("input:not(:checkbox, :radio), textarea")&&e.bind(g[1],function(o){o.relatedTarget!=a[0]&&a.trigger(l[1].split(" ")[0])});return c},hide:function(d){if(!e||!c.isShown())return c;d=d||f.Event();d.type="onBeforeHide";h.trigger(d);if(!d.isDefaultPrevented()){k=false;n[b.effect][1].call(c,function(){d.type="onHide";k=false;h.trigger(d)});return c}},isShown:function(d){return d?k=="full":k},getConf:function(){return b},getTip:function(){return e},
|
| 204 |
-
getTrigger:function(){return a}});f.each("onHide,onBeforeShow,onShow,onBeforeHide".split(","),function(d,g){f.isFunction(b[g])&&f(c).bind(g,b[g]);c[g]=function(o){f(c).bind(g,o);return c}})}f.tools=f.tools||{version:"1.2.3"};f.tools.tooltip={conf:{effect:"toggle",fadeOutSpeed:"fast",predelay:0,delay:30,opacity:1,tip:0,position:["top","center"],offset:[0,0],relative:false,cancelDefault:true,events:{def:"mouseenter,mouseleave",input:"focus,blur",widget:"focus mouseenter,blur mouseleave",tooltip:"mouseenter,mouseleave"},
|
| 205 |
-
layout:"<div/>",tipClass:"tooltip"},addEffect:function(a,b,c){n[a]=[b,c]}};var n={toggle:[function(a){var b=this.getConf(),c=this.getTip();b=b.opacity;b<1&&c.css({opacity:b});c.show();a.call()},function(a){this.getTip().hide();a.call()}],fade:[function(a){var b=this.getConf();this.getTip().fadeTo(b.fadeInSpeed,b.opacity,a)},function(a){this.getTip().fadeOut(this.getConf().fadeOutSpeed,a)}]};f.fn.tooltip=function(a){var b=this.data("tooltip");if(b)return b;a=f.extend(true,{},f.tools.tooltip.conf,a);
|
| 206 |
-
if(typeof a.position=="string")a.position=a.position.split(/,?\s/);this.each(function(){b=new t(f(this),a);f(this).data("tooltip",b)});return a.api?b:this}})(jQuery);
|
| 207 |
-
(function(d){var i=d.tools.tooltip;d.extend(i.conf,{direction:"up",bounce:false,slideOffset:10,slideInSpeed:200,slideOutSpeed:200,slideFade:!d.browser.msie});var e={up:["-","top"],down:["+","top"],left:["-","left"],right:["+","left"]};i.addEffect("slide",function(g){var a=this.getConf(),f=this.getTip(),b=a.slideFade?{opacity:a.opacity}:{},c=e[a.direction]||e.up;b[c[1]]=c[0]+"="+a.slideOffset;a.slideFade&&f.css({opacity:0});f.show().animate(b,a.slideInSpeed,g)},function(g){var a=this.getConf(),f=a.slideOffset,
|
| 208 |
-
b=a.slideFade?{opacity:0}:{},c=e[a.direction]||e.up,h=""+c[0];if(a.bounce)h=h=="+"?"-":"+";b[c[1]]=h+"="+f;this.getTip().animate(b,a.slideOutSpeed,function(){d(this).hide();g.call()})})})(jQuery);
|
| 209 |
-
(function(g){function j(a){var c=g(window),d=c.width()+c.scrollLeft(),h=c.height()+c.scrollTop();return[a.offset().top<=c.scrollTop(),d<=a.offset().left+a.width(),h<=a.offset().top+a.height(),c.scrollLeft()>=a.offset().left]}function k(a){for(var c=a.length;c--;)if(a[c])return false;return true}var i=g.tools.tooltip;i.dynamic={conf:{classNames:"top right bottom left"}};g.fn.dynamic=function(a){if(typeof a=="number")a={speed:a};a=g.extend({},i.dynamic.conf,a);var c=a.classNames.split(/\s/),d;this.each(function(){var h=
|
| 210 |
-
g(this).tooltip().onBeforeShow(function(e,f){e=this.getTip();var b=this.getConf();d||(d=[b.position[0],b.position[1],b.offset[0],b.offset[1],g.extend({},b)]);g.extend(b,d[4]);b.position=[d[0],d[1]];b.offset=[d[2],d[3]];e.css({visibility:"hidden",position:"absolute",top:f.top,left:f.left}).show();f=j(e);if(!k(f)){if(f[2]){g.extend(b,a.top);b.position[0]="top";e.addClass(c[0])}if(f[3]){g.extend(b,a.right);b.position[1]="right";e.addClass(c[1])}if(f[0]){g.extend(b,a.bottom);b.position[0]="bottom";e.addClass(c[2])}if(f[1]){g.extend(b,
|
| 211 |
-
a.left);b.position[1]="left";e.addClass(c[3])}if(f[0]||f[2])b.offset[0]*=-1;if(f[1]||f[3])b.offset[1]*=-1}e.css({visibility:"visible"}).hide()});h.onBeforeShow(function(){var e=this.getConf();this.getTip();setTimeout(function(){e.position=[d[0],d[1]];e.offset=[d[2],d[3]]},0)});h.onHide(function(){var e=this.getTip();e.removeClass(a.classNames)});ret=h});return a.api?ret:this}})(jQuery);
|
| 212 |
-
(function(e){function n(f,c){var a=e(c);return a.length<2?a:f.parent().find(c)}function t(f,c){var a=this,l=f.add(a),g=f.children(),k=0,m=c.vertical;j||(j=a);if(g.length>1)g=e(c.items,f);e.extend(a,{getConf:function(){return c},getIndex:function(){return k},getSize:function(){return a.getItems().size()},getNaviButtons:function(){return o.add(p)},getRoot:function(){return f},getItemWrap:function(){return g},getItems:function(){return g.children(c.item).not("."+c.clonedClass)},move:function(b,d){return a.seekTo(k+
|
| 213 |
-
b,d)},next:function(b){return a.move(1,b)},prev:function(b){return a.move(-1,b)},begin:function(b){return a.seekTo(0,b)},end:function(b){return a.seekTo(a.getSize()-1,b)},focus:function(){return j=a},addItem:function(b){b=e(b);if(c.circular){e(".cloned:last").before(b);e(".cloned:first").replaceWith(b.clone().addClass(c.clonedClass))}else g.append(b);l.trigger("onAddItem",[b]);return a},seekTo:function(b,d,h){if(c.circular&&b===0&&k==-1&&d!==0)return a;if(!c.circular&&b<0||b>a.getSize()||b<-1)return a;
|
| 214 |
-
var i=b;if(b.jquery)b=a.getItems().index(b);else i=a.getItems().eq(b);var q=e.Event("onBeforeSeek");if(!h){l.trigger(q,[b,d]);if(q.isDefaultPrevented()||!i.length)return a}i=m?{top:-i.position().top}:{left:-i.position().left};k=b;j=a;if(d===undefined)d=c.speed;g.animate(i,d,c.easing,h||function(){l.trigger("onSeek",[b])});return a}});e.each(["onBeforeSeek","onSeek","onAddItem"],function(b,d){e.isFunction(c[d])&&e(a).bind(d,c[d]);a[d]=function(h){e(a).bind(d,h);return a}});if(c.circular){var r=a.getItems().slice(-1).clone().prependTo(g),
|
| 215 |
-
s=a.getItems().eq(1).clone().appendTo(g);r.add(s).addClass(c.clonedClass);a.onBeforeSeek(function(b,d,h){if(!b.isDefaultPrevented())if(d==-1){a.seekTo(r,h,function(){a.end(0)});return b.preventDefault()}else d==a.getSize()&&a.seekTo(s,h,function(){a.begin(0)})});a.seekTo(0,0)}var o=n(f,c.prev).click(function(){a.prev()}),p=n(f,c.next).click(function(){a.next()});!c.circular&&a.getSize()>1&&a.onBeforeSeek(function(b,d){setTimeout(function(){if(!b.isDefaultPrevented()){o.toggleClass(c.disabledClass,
|
| 216 |
-
d<=0);p.toggleClass(c.disabledClass,d>=a.getSize()-1)}},1)});c.mousewheel&&e.fn.mousewheel&&f.mousewheel(function(b,d){if(c.mousewheel){a.move(d<0?1:-1,c.wheelSpeed||50);return false}});c.keyboard&&e(document).bind("keydown.scrollable",function(b){if(!(!c.keyboard||b.altKey||b.ctrlKey||e(b.target).is(":input")))if(!(c.keyboard!="static"&&j!=a)){var d=b.keyCode;if(m&&(d==38||d==40)){a.move(d==38?-1:1);return b.preventDefault()}if(!m&&(d==37||d==39)){a.move(d==37?-1:1);return b.preventDefault()}}});
|
| 217 |
-
e(a).trigger("onBeforeSeek",[c.initialIndex])}e.tools=e.tools||{version:"1.2.3"};e.tools.scrollable={conf:{activeClass:"active",circular:false,clonedClass:"cloned",disabledClass:"disabled",easing:"swing",initialIndex:0,item:null,items:".items",keyboard:true,mousewheel:false,next:".next",prev:".prev",speed:400,vertical:false,wheelSpeed:0}};var j;e.fn.scrollable=function(f){var c=this.data("scrollable");if(c)return c;f=e.extend({},e.tools.scrollable.conf,f);this.each(function(){c=new t(e(this),f);e(this).data("scrollable",
|
| 218 |
-
c)});return f.api?c:this}})(jQuery);
|
| 219 |
-
(function(c){var g=c.tools.scrollable;g.autoscroll={conf:{autoplay:true,interval:3E3,autopause:true}};c.fn.autoscroll=function(d){if(typeof d=="number")d={interval:d};var b=c.extend({},g.autoscroll.conf,d),h;this.each(function(){var a=c(this).data("scrollable");if(a)h=a;var e,i,f=true;a.play=function(){if(!e){f=false;e=setInterval(function(){a.next()},b.interval);a.next()}};a.pause=function(){e=clearInterval(e)};a.stop=function(){a.pause();f=true};b.autopause&&a.getRoot().add(a.getNaviButtons()).hover(function(){a.pause();
|
| 220 |
-
clearInterval(i)},function(){f||(i=setTimeout(a.play,b.interval))});b.autoplay&&setTimeout(a.play,b.interval)});return b.api?h:this}})(jQuery);
|
| 221 |
-
(function(d){function p(c,g){var h=d(g);return h.length<2?h:c.parent().find(g)}var m=d.tools.scrollable;m.navigator={conf:{navi:".navi",naviItem:null,activeClass:"active",indexed:false,idPrefix:null,history:false}};d.fn.navigator=function(c){if(typeof c=="string")c={navi:c};c=d.extend({},m.navigator.conf,c);var g;this.each(function(){function h(a,b,i){e.seekTo(b);if(j){if(location.hash)location.hash=a.attr("href").replace("#","")}else return i.preventDefault()}function f(){return k.find(c.naviItem||
|
| 222 |
-
"> *")}function n(a){var b=d("<"+(c.naviItem||"a")+"/>").click(function(i){h(d(this),a,i)}).attr("href","#"+a);a===0&&b.addClass(l);c.indexed&&b.text(a+1);c.idPrefix&&b.attr("id",c.idPrefix+a);return b.appendTo(k)}function o(a,b){a=f().eq(b.replace("#",""));a.length||(a=f().filter("[href="+b+"]"));a.click()}var e=d(this).data("scrollable"),k=p(e.getRoot(),c.navi),q=e.getNaviButtons(),l=c.activeClass,j=c.history&&d.fn.history;if(e)g=e;e.getNaviButtons=function(){return q.add(k)};f().length?f().each(function(a){d(this).click(function(b){h(d(this),
|
| 223 |
-
a,b)})}):d.each(e.getItems(),function(a){n(a)});e.onBeforeSeek(function(a,b){setTimeout(function(){if(!a.isDefaultPrevented()){var i=f().eq(b);!a.isDefaultPrevented()&&i.length&&f().removeClass(l).eq(b).addClass(l)}},1)});e.onAddItem(function(a,b){b=n(e.getItems().index(b));j&&b.history(o)});j&&f().history(o)});return c.api?g:this}})(jQuery);
|
| 224 |
-
(function(a){function t(d,b){var c=this,i=d.add(c),o=a(window),k,f,m,g=a.tools.expose&&(b.mask||b.expose),n=Math.random().toString().slice(10);if(g){if(typeof g=="string")g={color:g};g.closeOnClick=g.closeOnEsc=false}var p=b.target||d.attr("rel");f=p?a(p):d;if(!f.length)throw"Could not find Overlay: "+p;d&&d.index(f)==-1&&d.click(function(e){c.load(e);return e.preventDefault()});a.extend(c,{load:function(e){if(c.isOpened())return c;var h=q[b.effect];if(!h)throw'Overlay: cannot find effect : "'+b.effect+
|
| 225 |
-
'"';b.oneInstance&&a.each(s,function(){this.close(e)});e=e||a.Event();e.type="onBeforeLoad";i.trigger(e);if(e.isDefaultPrevented())return c;m=true;g&&a(f).expose(g);var j=b.top,r=b.left,u=f.outerWidth({margin:true}),v=f.outerHeight({margin:true});if(typeof j=="string")j=j=="center"?Math.max((o.height()-v)/2,0):parseInt(j,10)/100*o.height();if(r=="center")r=Math.max((o.width()-u)/2,0);h[0].call(c,{top:j,left:r},function(){if(m){e.type="onLoad";i.trigger(e)}});g&&b.closeOnClick&&a.mask.getMask().one("click",
|
| 226 |
-
c.close);b.closeOnClick&&a(document).bind("click."+n,function(l){a(l.target).parents(f).length||c.close(l)});b.closeOnEsc&&a(document).bind("keydown."+n,function(l){l.keyCode==27&&c.close(l)});return c},close:function(e){if(!c.isOpened())return c;e=e||a.Event();e.type="onBeforeClose";i.trigger(e);if(!e.isDefaultPrevented()){m=false;q[b.effect][1].call(c,function(){e.type="onClose";i.trigger(e)});a(document).unbind("click."+n).unbind("keydown."+n);g&&a.mask.close();return c}},getOverlay:function(){return f},
|
| 227 |
-
getTrigger:function(){return d},getClosers:function(){return k},isOpened:function(){return m},getConf:function(){return b}});a.each("onBeforeLoad,onStart,onLoad,onBeforeClose,onClose".split(","),function(e,h){a.isFunction(b[h])&&a(c).bind(h,b[h]);c[h]=function(j){a(c).bind(h,j);return c}});k=f.find(b.close||".close");if(!k.length&&!b.close){k=a('<a class="close"></a>');f.prepend(k)}k.click(function(e){c.close(e)});b.load&&c.load()}a.tools=a.tools||{version:"1.2.3"};a.tools.overlay={addEffect:function(d,
|
| 228 |
-
b,c){q[d]=[b,c]},conf:{close:null,closeOnClick:true,closeOnEsc:true,closeSpeed:"fast",effect:"default",fixed:!a.browser.msie||a.browser.version>6,left:"center",load:false,mask:null,oneInstance:true,speed:"normal",target:null,top:"10%"}};var s=[],q={};a.tools.overlay.addEffect("default",function(d,b){var c=this.getConf(),i=a(window);if(!c.fixed){d.top+=i.scrollTop();d.left+=i.scrollLeft()}d.position=c.fixed?"fixed":"absolute";this.getOverlay().css(d).fadeIn(c.speed,b)},function(d){this.getOverlay().fadeOut(this.getConf().closeSpeed,
|
| 229 |
-
d)});a.fn.overlay=function(d){var b=this.data("overlay");if(b)return b;if(a.isFunction(d))d={onBeforeLoad:d};d=a.extend(true,{},a.tools.overlay.conf,d);this.each(function(){b=new t(a(this),d);s.push(b);a(this).data("overlay",b)});return d.api?b:this}})(jQuery);
|
| 230 |
-
(function(i){function j(b){var d=b.offset();return{top:d.top+b.height()/2,left:d.left+b.width()/2}}var k=i.tools.overlay,f=i(window);i.extend(k.conf,{start:{top:null,left:null},fadeInSpeed:"fast",zIndex:9999});function n(b,d){var a=this.getOverlay(),c=this.getConf(),g=this.getTrigger(),o=this,l=a.outerWidth({margin:true}),h=a.data("img");if(!h){var e=a.css("backgroundImage");if(!e)throw"background-image CSS property not set for overlay";e=e.slice(e.indexOf("(")+1,e.indexOf(")")).replace(/\"/g,"");
|
| 231 |
-
a.css("backgroundImage","none");h=i('<img src="'+e+'"/>');h.css({border:0,display:"none"}).width(l);i("body").append(h);a.data("img",h)}e=c.start.top||Math.round(f.height()/2);var m=c.start.left||Math.round(f.width()/2);if(g){g=j(g);e=g.top;m=g.left}h.css({position:"absolute",top:e,left:m,width:0,zIndex:c.zIndex}).show();b.top+=f.scrollTop();b.left+=f.scrollLeft();b.position="absolute";a.css(b);h.animate({top:a.css("top"),left:a.css("left"),width:l},c.speed,function(){if(c.fixed){b.top-=f.scrollTop();
|
| 232 |
-
b.left-=f.scrollLeft();b.position="fixed";h.add(a).css(b)}a.css("zIndex",c.zIndex+1).fadeIn(c.fadeInSpeed,function(){o.isOpened()&&!i(this).index(a)?d.call():a.hide()})})}function p(b){var d=this.getOverlay().hide(),a=this.getConf(),c=this.getTrigger();d=d.data("img");var g={top:a.start.top,left:a.start.left,width:0};c&&i.extend(g,j(c));a.fixed&&d.css({position:"absolute"}).animate({top:"+="+f.scrollTop(),left:"+="+f.scrollLeft()},0);d.animate(g,a.closeSpeed,b)}k.addEffect("apple",n,p)})(jQuery);
|
| 233 |
-
(function(d){function R(b,c){return 32-(new Date(b,c,32)).getDate()}function S(b,c){b=""+b;for(c=c||2;b.length<c;)b="0"+b;return b}function T(b,c,j){var m=b.getDate(),h=b.getDay(),t=b.getMonth();b=b.getFullYear();var f={d:m,dd:S(m),ddd:B[j].shortDays[h],dddd:B[j].days[h],m:t+1,mm:S(t+1),mmm:B[j].shortMonths[t],mmmm:B[j].months[t],yy:String(b).slice(2),yyyy:b};c=c.replace(X,function(o){return o in f?f[o]:o.slice(1,o.length-1)});return Y.html(c).html()}function y(b){return parseInt(b,10)}function U(b,
|
| 234 |
-
c){return b.getFullYear()===c.getFullYear()&&b.getMonth()==c.getMonth()&&b.getDate()==c.getDate()}function C(b){if(b){if(b.constructor==Date)return b;if(typeof b=="string"){var c=b.split("-");if(c.length==3)return new Date(y(c[0]),y(c[1])-1,y(c[2]));if(!/^-?\d+$/.test(b))return;b=y(b)}c=new Date;c.setDate(c.getDate()+b);return c}}function Z(b,c){function j(a,e,g){l=a;D=a.getFullYear();E=a.getMonth();G=a.getDate();g=g||d.Event("api");g.type="change";H.trigger(g,[a]);if(!g.isDefaultPrevented()){b.val(T(a,
|
| 235 |
-
e.format,e.lang));b.data("date",a);h.hide(g)}}function m(a){a.type="onShow";H.trigger(a);d(document).bind("keydown.d",function(e){var g=e.keyCode;if(g==8){b.val("");return h.hide(e)}if(g==27)return h.hide(e);if(d(V).index(g)>=0){if(!u){h.show(e);return e.preventDefault()}var i=d("#"+f.weeks+" a"),p=d("."+f.focus),q=i.index(p);p.removeClass(f.focus);if(g==74||g==40)q+=7;else if(g==75||g==38)q-=7;else if(g==76||g==39)q+=1;else if(g==72||g==37)q-=1;if(q==-1){h.addMonth(-1);p=d("#"+f.weeks+" a:last")}else if(q==
|
| 236 |
-
35){h.addMonth();p=d("#"+f.weeks+" a:first")}else p=i.eq(q);p.addClass(f.focus);return e.preventDefault()}if(g==34)return h.addMonth();if(g==33)return h.addMonth(-1);if(g==36)return h.today();if(g==13)d(e.target).is("select")||d("."+f.focus).click();return d([16,17,18,9]).index(g)>=0});d(document).bind("click.d",function(e){var g=e.target;if(!d(g).parents("#"+f.root).length&&g!=b[0]&&(!K||g!=K[0]))h.hide(e)})}var h=this,t=new Date,f=c.css,o=B[c.lang],k=d("#"+f.root),L=k.find("#"+f.title),K,I,J,D,
|
| 237 |
-
E,G,l=b.attr("data-value")||c.value||b.val(),r=b.attr("min")||c.min,s=b.attr("max")||c.max,u;l=C(l)||t;r=C(r||c.yearRange[0]*365);s=C(s||c.yearRange[1]*365);if(!o)throw"Dateinput: invalid language: "+c.lang;if(b.attr("type")=="date"){var M=d("<input/>");d.each("name,readonly,disabled,value,required".split(","),function(a,e){M.attr(e,b.attr(e))});b.replaceWith(M);b=M}b.addClass(f.input);var H=b.add(h);if(!k.length){k=d("<div><div><a/><div/><a/></div><div><div/><div/></div></div>").hide().css({position:"absolute"}).attr("id",
|
| 238 |
-
f.root);k.children().eq(0).attr("id",f.head).end().eq(1).attr("id",f.body).children().eq(0).attr("id",f.days).end().eq(1).attr("id",f.weeks).end().end().end().find("a").eq(0).attr("id",f.prev).end().eq(1).attr("id",f.next);L=k.find("#"+f.head).find("div").attr("id",f.title);if(c.selectors){var z=d("<select/>").attr("id",f.month),A=d("<select/>").attr("id",f.year);L.append(z.add(A))}for(var $=k.find("#"+f.days),N=0;N<7;N++)$.append(d("<span/>").text(o.shortDays[(N+c.firstDay)%7]));b.after(k)}if(c.trigger)K=
|
| 239 |
-
d("<a/>").attr("href","#").addClass(f.trigger).click(function(a){h.show();return a.preventDefault()}).insertAfter(b);var O=k.find("#"+f.weeks);A=k.find("#"+f.year);z=k.find("#"+f.month);d.extend(h,{show:function(a){if(!(b.is("[readonly]")||u)){a=a||d.Event();a.type="onBeforeShow";H.trigger(a);if(!a.isDefaultPrevented()){d.each(W,function(){this.hide()});u=true;z.unbind("change").change(function(){h.setValue(A.val(),d(this).val())});A.unbind("change").change(function(){h.setValue(d(this).val(),z.val())});
|
| 240 |
-
I=k.find("#"+f.prev).unbind("click").click(function(){I.hasClass(f.disabled)||h.addMonth(-1);return false});J=k.find("#"+f.next).unbind("click").click(function(){J.hasClass(f.disabled)||h.addMonth();return false});h.setValue(l);var e=b.position();k.css({top:e.top+b.outerHeight({margins:true})+c.offset[0],left:e.left+c.offset[1]});if(c.speed)k.show(c.speed,function(){m(a)});else{k.show();m(a)}return h}}},setValue:function(a,e,g){var i;if(parseInt(e,10)>=-1){a=y(a);e=y(e);g=y(g);i=new Date(a,e,g)}else{i=
|
| 241 |
-
a||l;a=i.getFullYear();e=i.getMonth();g=i.getDate()}if(e==-1){e=11;a--}else if(e==12){e=0;a++}if(!u){j(i,c);return h}E=e;D=a;i=new Date(a,e,1-c.firstDay);g=i.getDay();var p=R(a,e),q=R(a,e-1),P;if(c.selectors){z.empty();d.each(o.months,function(v,F){r<new Date(a,v+1,-1)&&s>new Date(a,v,0)&&z.append(d("<option/>").html(F).attr("value",v))});A.empty();for(i=a+c.yearRange[0];i<a+c.yearRange[1];i++)r<new Date(i+1,-1,0)&&s>new Date(i,0,0)&&A.append(d("<option/>").text(i));z.val(e);A.val(a)}else L.html(o.months[e]+
|
| 242 |
-
" "+a);O.empty();I.add(J).removeClass(f.disabled);for(var w=0,n,x;w<42;w++){n=d("<a/>");if(w%7===0){P=d("<div/>").addClass(f.week);O.append(P)}if(w<g){n.addClass(f.off);x=q-g+w+1;i=new Date(a,e-1,x)}else if(w>=g+p){n.addClass(f.off);x=w-p-g+1;i=new Date(a,e+1,x)}else{x=w-g+1;i=new Date(a,e,x);if(U(l,i))n.attr("id",f.current).addClass(f.focus);else U(t,i)&&n.attr("id",f.today)}r&&i<r&&n.add(I).addClass(f.disabled);s&&i>s&&n.add(J).addClass(f.disabled);n.attr("href","#"+x).text(x).data("date",i);P.append(n);
|
| 243 |
-
n.click(function(v){var F=d(this);if(!F.hasClass(f.disabled)){d("#"+f.current).removeAttr("id");F.attr("id",f.current);j(F.data("date"),c,v)}return false})}f.sunday&&O.find(f.week).each(function(){var v=c.firstDay?7-c.firstDay:0;d(this).children().slice(v,v+1).addClass(f.sunday)});return h},setMin:function(a,e){r=C(a);e&&l<r&&h.setValue(r);return h},setMax:function(a,e){s=C(a);e&&l>s&&h.setValue(s);return h},today:function(){return h.setValue(t)},addDay:function(a){return this.setValue(D,E,G+(a||
|
| 244 |
-
1))},addMonth:function(a){return this.setValue(D,E+(a||1),G)},addYear:function(a){return this.setValue(D+(a||1),E,G)},hide:function(a){if(u){a=a||d.Event();a.type="onHide";H.trigger(a);d(document).unbind("click.d").unbind("keydown.d");if(a.isDefaultPrevented())return;k.hide();u=false}return h},getConf:function(){return c},getInput:function(){return b},getCalendar:function(){return k},getValue:function(a){return a?T(l,a,c.lang):l},isOpen:function(){return u}});d.each(["onBeforeShow","onShow","change",
|
| 245 |
-
"onHide"],function(a,e){d.isFunction(c[e])&&d(h).bind(e,c[e]);h[e]=function(g){d(h).bind(e,g);return h}});b.bind("focus click",h.show).keydown(function(a){var e=a.keyCode;if(!u&&d(V).index(e)>=0){h.show(a);return a.preventDefault()}return a.shiftKey||a.ctrlKey||a.altKey||e==9?true:a.preventDefault()});C(b.val())&&j(l,c)}d.tools=d.tools||{version:"1.2.3"};var W=[],Q,V=[75,76,38,39,74,72,40,37],B={};Q=d.tools.dateinput={conf:{format:"mm/dd/yy",selectors:false,yearRange:[-5,5],lang:"en",offset:[0,0],
|
| 246 |
-
speed:0,firstDay:0,min:0,max:0,trigger:false,css:{prefix:"cal",input:"date",root:0,head:0,title:0,prev:0,next:0,month:0,year:0,days:0,body:0,weeks:0,today:0,current:0,week:0,off:0,sunday:0,focus:0,disabled:0,trigger:0}},localize:function(b,c){d.each(c,function(j,m){c[j]=m.split(",")});B[b]=c}};Q.localize("en",{months:"January,February,March,April,May,June,July,August,September,October,November,December",shortMonths:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec",days:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday",
|
| 247 |
-
shortDays:"Sun,Mon,Tue,Wed,Thu,Fri,Sat"});var X=/d{1,4}|m{1,4}|yy(?:yy)?|"[^"]*"|'[^']*'/g,Y=d("<a/>");d.expr[":"].date=function(b){var c=b.getAttribute("type");return c&&c=="date"||!!d(b).data("dateinput")};d.fn.dateinput=function(b){if(this.data("dateinput"))return this;b=d.extend(true,{},Q.conf,b);d.each(b.css,function(j,m){if(!m&&j!="prefix")b.css[j]=(b.css.prefix||"")+(m||j)});var c;this.each(function(){var j=new Z(d(this),b);W.push(j);j=j.getInput().data("dateinput",j);c=c?c.add(j):j});return c?
|
| 248 |
-
c:this}})(jQuery);
|
| 249 |
-
(function(e){function F(d,a){a=Math.pow(10,a);return Math.round(d*a)/a}function p(d,a){if(a=parseInt(d.css(a),10))return a;return(d=d[0].currentStyle)&&d.width&&parseInt(d.width,10)}function C(d){return(d=d.data("events"))&&d.onSlide}function G(d,a){function h(c,b,f,j){if(f===undefined)f=b/k*z;else if(j)f-=a.min;if(r)f=Math.round(f/r)*r;if(b===undefined||r)b=f*k/z;if(isNaN(f))return g;b=Math.max(0,Math.min(b,k));f=b/k*z;if(j||!n)f+=a.min;if(n)if(j)b=k-b;else f=a.max-f;f=F(f,t);var q=c.type=="click";
|
| 250 |
-
if(D&&l!==undefined&&!q){c.type="onSlide";A.trigger(c,[f,b]);if(c.isDefaultPrevented())return g}j=q?a.speed:0;q=q?function(){c.type="change";A.trigger(c,[f])}:null;if(n){m.animate({top:b},j,q);a.progress&&B.animate({height:k-b+m.width()/2},j)}else{m.animate({left:b},j,q);a.progress&&B.animate({width:b+m.width()/2},j)}l=f;H=b;d.val(f);return g}function s(){if(n=a.vertical||p(i,"height")>p(i,"width")){k=p(i,"height")-p(m,"height");u=i.offset().top+k}else{k=p(i,"width")-p(m,"width");u=i.offset().left}}
|
| 251 |
-
function v(){s();g.setValue(a.value||a.min)}var g=this,o=a.css,i=e("<div><div/><a href='#'/></div>").data("rangeinput",g),n,l,u,k,H;d.before(i);var m=i.addClass(o.slider).find("a").addClass(o.handle),B=i.find("div").addClass(o.progress);e.each("min,max,step,value".split(","),function(c,b){c=d.attr(b);if(parseFloat(c))a[b]=parseFloat(c,10)});var z=a.max-a.min,r=a.step=="any"?0:a.step,t=a.precision;if(t===undefined)try{t=r.toString().split(".")[1].length}catch(I){t=0}if(d.attr("type")=="range"){var w=
|
| 252 |
-
e("<input/>");e.each("name,readonly,disabled,required".split(","),function(c,b){w.attr(b,d.attr(b))});w.val(a.value);d.replaceWith(w);d=w}d.addClass(o.input);var A=e(g).add(d),D=true;e.extend(g,{getValue:function(){return l},setValue:function(c,b){return h(b||e.Event("api"),undefined,c,true)},getConf:function(){return a},getProgress:function(){return B},getHandle:function(){return m},getInput:function(){return d},step:function(c,b){b=b||e.Event();var f=a.step=="any"?1:a.step;g.setValue(l+f*(c||1),
|
| 253 |
-
b)},stepUp:function(c){return g.step(c||1)},stepDown:function(c){return g.step(-c||-1)}});e.each("onSlide,change".split(","),function(c,b){e.isFunction(a[b])&&e(g).bind(b,a[b]);g[b]=function(f){e(g).bind(b,f);return g}});m.drag({drag:false}).bind("dragStart",function(){D=C(e(g))||C(d)}).bind("drag",function(c,b,f){if(d.is(":disabled"))return false;h(c,n?b:f)}).bind("dragEnd",function(c){if(!c.isDefaultPrevented()){c.type="change";A.trigger(c,[l])}}).click(function(c){return c.preventDefault()});i.click(function(c){if(d.is(":disabled")||
|
| 254 |
-
c.target==m[0])return c.preventDefault();s();var b=m.width()/2;h(c,n?k-u-b+c.pageY:c.pageX-u-b)});a.keyboard&&d.keydown(function(c){if(!d.attr("readonly")){var b=c.keyCode,f=e([75,76,38,33,39]).index(b)!=-1,j=e([74,72,40,34,37]).index(b)!=-1;if((f||j)&&!(c.shiftKey||c.altKey||c.ctrlKey)){if(f)g.step(b==33?10:1,c);else if(j)g.step(b==34?-10:-1,c);return c.preventDefault()}}});d.blur(function(c){var b=e(this).val();b!==l&&g.setValue(b,c)});e.extend(d[0],{stepUp:g.stepUp,stepDown:g.stepDown});v();k||
|
| 255 |
-
e(window).load(v)}e.tools=e.tools||{version:"1.2.3"};var E;E=e.tools.rangeinput={conf:{min:0,max:100,step:"any",steps:0,value:0,precision:undefined,vertical:0,keyboard:true,progress:false,speed:100,css:{input:"range",slider:"slider",progress:"progress",handle:"handle"}}};var x,y;e.fn.drag=function(d){document.ondragstart=function(){return false};d=e.extend({x:true,y:true,drag:true},d);x=x||e(document).bind("mousedown mouseup",function(a){var h=e(a.target);if(a.type=="mousedown"&&h.data("drag")){var s=
|
| 256 |
-
h.position(),v=a.pageX-s.left,g=a.pageY-s.top,o=true;x.bind("mousemove.drag",function(i){var n=i.pageX-v;i=i.pageY-g;var l={};if(d.x)l.left=n;if(d.y)l.top=i;if(o){h.trigger("dragStart");o=false}d.drag&&h.css(l);h.trigger("drag",[i,n]);y=h});a.preventDefault()}else try{y&&y.trigger("dragEnd")}finally{x.unbind("mousemove.drag");y=null}});return this.data("drag",true)};e.expr[":"].range=function(d){var a=d.getAttribute("type");return a&&a=="range"||!!e(d).filter("input").data("rangeinput")};e.fn.rangeinput=
|
| 257 |
-
function(d){if(this.data("rangeinput"))return this;d=e.extend(true,{},E.conf,d);var a;this.each(function(){var h=new G(e(this),e.extend(true,{},d));h=h.getInput().data("rangeinput",h);a=a?a.add(h):h});return a?a:this}})(jQuery);
|
| 258 |
-
(function(d){function v(a,b,c){var k=a.offset().top,f=a.offset().left,l=c.position.split(/,?\s+/),g=l[0];l=l[1];k-=b.outerHeight()-c.offset[0];f+=a.outerWidth()+c.offset[1];c=b.outerHeight()+a.outerHeight();if(g=="center")k+=c/2;if(g=="bottom")k+=c;a=a.outerWidth();if(l=="center")f-=(a+b.outerWidth())/2;if(l=="left")f-=a;return{top:k,left:f}}function w(a){function b(){return this.getAttribute("type")==a}b.key="[type="+a+"]";return b}function s(a,b,c){function k(g,e,j){if(!(!c.grouped&&g.length)){var h;
|
| 259 |
-
if(j===false||d.isArray(j)){h=i.messages[e.key||e]||i.messages["*"];h=h[c.lang]||i.messages["*"].en;(e=h.match(/\$\d/g))&&d.isArray(j)&&d.each(e,function(n){h=h.replace(this,j[n])})}else h=j[c.lang]||j;g.push(h)}}var f=this,l=b.add(f);a=a.not(":button, :image, :reset, :submit");d.extend(f,{getConf:function(){return c},getForm:function(){return b},getInputs:function(){return a},invalidate:function(g,e){if(!e){var j=[];d.each(g,function(h,n){h=a.filter("[name="+h+"]");if(h.length){h.trigger("OI",[n]);
|
| 260 |
-
j.push({input:h,messages:[n]})}});g=j;e=d.Event()}e.type="onFail";l.trigger(e,[g]);e.isDefaultPrevented()||q[c.effect][0].call(f,g,e);return f},reset:function(g){g=g||a;g.removeClass(c.errorClass).each(function(){var e=d(this).data("msg.el");if(e){e.remove();d(this).data("msg.el",null)}}).unbind(c.errorInputEvent||"");return f},destroy:function(){b.unbind(c.formEvent).unbind("reset.V");a.unbind(c.inputEvent||"").unbind("change.V");return f.reset()},checkValidity:function(g,e){g=g||a;g=g.not(":disabled");
|
| 261 |
-
if(!g.length)return true;e=e||d.Event();e.type="onBeforeValidate";l.trigger(e,[g]);if(e.isDefaultPrevented())return e.result;var j=[],h=c.errorInputEvent+".v";g.each(function(){var p=[],m=d(this).unbind(h).data("messages",p);d.each(t,function(){var o=this,r=o[0];if(m.filter(r).length){o=o[1].call(f,m,m.val());if(o!==true){e.type="onBeforeFail";l.trigger(e,[m,r]);if(e.isDefaultPrevented())return false;var u=m.attr(c.messageAttr);if(u){p=[u];return false}else k(p,r,o)}}});if(p.length){j.push({input:m,
|
| 262 |
-
messages:p});m.trigger("OI",[p]);c.errorInputEvent&&m.bind(h,function(o){f.checkValidity(m,o)})}if(c.singleError&&j.length)return false});var n=q[c.effect];if(!n)throw'Validator: cannot find effect "'+c.effect+'"';if(j.length){f.invalidate(j,e);return false}else{n[1].call(f,g,e);e.type="onSuccess";l.trigger(e,[g]);g.unbind(h)}return true}});d.each("onBeforeValidate,onBeforeFail,onFail,onSuccess".split(","),function(g,e){d.isFunction(c[e])&&d(f).bind(e,c[e]);f[e]=function(j){d(f).bind(e,j);return f}});
|
| 263 |
-
c.formEvent&&b.bind(c.formEvent,function(g){if(!f.checkValidity(null,g))return g.preventDefault()});b.bind("reset.V",function(){f.reset()});a[0]&&a[0].validity&&a.each(function(){this.oninvalid=function(){return false}});if(b[0])b[0].checkValidity=f.checkValidity;c.inputEvent&&a.bind(c.inputEvent,function(g){f.checkValidity(d(this),g)});a.filter(":checkbox, select").filter("[required]").bind("change.V",function(g){var e=d(this);if(this.checked||e.is("select")&&d(this).val())q[c.effect][1].call(f,
|
| 264 |
-
e,g)})}d.tools=d.tools||{version:"1.2.3"};var x=/\[type=([a-z]+)\]/,y=/^-?[0-9]*(\.[0-9]+)?$/,z=/^([a-z0-9_\.\-\+]+)@([\da-z\.\-]+)\.([a-z\.]{2,6})$/i,A=/^(https?:\/\/)?([\da-z\.\-]+)\.([a-z\.]{2,6})([\/\w \.\-]*)*\/?$/i,i;i=d.tools.validator={conf:{grouped:false,effect:"default",errorClass:"invalid",inputEvent:null,errorInputEvent:"keyup",formEvent:"submit",lang:"en",message:"<div/>",messageAttr:"data-message",messageClass:"error",offset:[0,0],position:"center right",singleError:false,speed:"normal"},
|
| 265 |
-
messages:{"*":{en:"Please correct this value"}},localize:function(a,b){d.each(b,function(c,k){i.messages[c]=i.messages[c]||{};i.messages[c][a]=k})},localizeFn:function(a,b){i.messages[a]=i.messages[a]||{};d.extend(i.messages[a],b)},fn:function(a,b,c){if(d.isFunction(b))c=b;else{if(typeof b=="string")b={en:b};this.messages[a.key||a]=b}if(b=x.exec(a))a=w(b[1]);t.push([a,c])},addEffect:function(a,b,c){q[a]=[b,c]}};var t=[],q={"default":[function(a){var b=this.getConf();d.each(a,function(c,k){c=k.input;
|
| 266 |
-
c.addClass(b.errorClass);var f=c.data("msg.el");if(!f){f=d(b.message).addClass(b.messageClass).appendTo(document.body);c.data("msg.el",f)}f.css({visibility:"hidden"}).find("span").remove();d.each(k.messages,function(l,g){d("<span/>").html(g).appendTo(f)});f.outerWidth()==f.parent().width()&&f.add(f.find("p")).css({display:"inline"});k=v(c,f,b);f.css({visibility:"visible",position:"absolute",top:k.top,left:k.left}).fadeIn(b.speed)})},function(a){var b=this.getConf();a.removeClass(b.errorClass).each(function(){var c=
|
| 267 |
-
d(this).data("msg.el");c&&c.css({visibility:"hidden"})})}]};d.each("email,url,number".split(","),function(a,b){d.expr[":"][b]=function(c){return c.getAttribute("type")===b}});d.fn.oninvalid=function(a){return this[a?"bind":"trigger"]("OI",a)};i.fn(":email","Please enter a valid email address",function(a,b){return!b||z.test(b)});i.fn(":url","Please enter a valid URL",function(a,b){return!b||A.test(b)});i.fn(":number","Please enter a numeric value.",function(a,b){return y.test(b)});i.fn("[max]","Please enter a value smaller than $1",
|
| 268 |
-
function(a,b){if(d.tools.dateinput&&a.is(":date"))return true;a=a.attr("max");return parseFloat(b)<=parseFloat(a)?true:[a]});i.fn("[min]","Please enter a value larger than $1",function(a,b){if(d.tools.dateinput&&a.is(":date"))return true;a=a.attr("min");return parseFloat(b)>=parseFloat(a)?true:[a]});i.fn("[required]","Please complete this mandatory field.",function(a,b){if(a.is(":checkbox"))return a.is(":checked");return!!b});i.fn("[pattern]",function(a){var b=new RegExp("^"+a.attr("pattern")+"$");
|
| 269 |
-
return b.test(a.val())});d.fn.validator=function(a){var b=this.data("validator");if(b){b.destroy();this.removeData("validator")}a=d.extend(true,{},i.conf,a);if(this.is("form"))return this.each(function(){var c=d(this);b=new s(c.find(":input"),c,a);c.data("validator",b)});else{b=new s(this,this.eq(0).closest("form"),a);return this.data("validator",b)}}})(jQuery);
|
| 1 |
+
/*
|
| 2 |
+
* jQuery Tools 1.2.3 - The missing UI library for the Web
|
| 3 |
+
*
|
| 4 |
+
* [jquery, toolbox.flashembed, toolbox.history, toolbox.expose, toolbox.mousewheel, tabs, tabs.slideshow, tooltip, tooltip.slide, tooltip.dynamic, scrollable, scrollable.autoscroll, scrollable.navigator, overlay, overlay.apple, dateinput, rangeinput, validator]
|
| 5 |
+
*
|
| 6 |
+
* NO COPYRIGHTS OR LICENSES. DO WHAT YOU LIKE.
|
| 7 |
+
*
|
| 8 |
+
* http://flowplayer.org/tools/
|
| 9 |
+
*
|
| 10 |
+
* jQuery JavaScript Library v1.4.2
|
| 11 |
+
* http://jquery.com/
|
| 12 |
+
*
|
| 13 |
+
* Copyright 2010, John Resig
|
| 14 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 15 |
+
* http://docs.jquery.com/License
|
| 16 |
+
*
|
| 17 |
+
* Includes Sizzle.js
|
| 18 |
+
* http://sizzlejs.com/
|
| 19 |
+
* Copyright 2010, The Dojo Foundation
|
| 20 |
+
* Released under the MIT, BSD, and GPL Licenses.
|
| 21 |
+
*
|
| 22 |
+
* -----
|
| 23 |
+
*
|
| 24 |
+
|
| 25 |
+
|
| 26 |
+
* jquery.event.wheel.js - rev 1
|
| 27 |
+
* Copyright (c) 2008, Three Dub Media (http://threedubmedia.com)
|
| 28 |
+
* Liscensed under the MIT License (MIT-LICENSE.txt)
|
| 29 |
+
* http://www.opensource.org/licenses/mit-license.php
|
| 30 |
+
* Created: 2008-07-01 | Updated: 2008-07-14
|
| 31 |
+
*
|
| 32 |
+
* -----
|
| 33 |
+
*
|
| 34 |
+
* File generated: Sat Jun 12 10:02:29 GMT 2010
|
| 35 |
+
*/
|
| 36 |
+
(function(A,w){function ma(){if(!c.isReady){try{s.documentElement.doScroll("left")}catch(a){setTimeout(ma,1);return}c.ready()}}function Qa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function X(a,b,d,f,e,j){var i=a.length;if(typeof b==="object"){for(var o in b)X(a,o,b[o],f,e,d);return a}if(d!==w){f=!j&&f&&c.isFunction(d);for(o=0;o<i;o++)e(a[o],b,f?d.call(a[o],o,e(a[o],b)):d,j);return a}return i?
|
| 37 |
+
e(a[0],b):w}function J(){return(new Date).getTime()}function Y(){return false}function Z(){return true}function na(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function oa(a){var b,d=[],f=[],e=arguments,j,i,o,k,n,r;i=c.data(this,"events");if(!(a.liveFired===this||!i||!i.live||a.button&&a.type==="click")){a.liveFired=this;var u=i.live.slice(0);for(k=0;k<u.length;k++){i=u[k];i.origType.replace(O,"")===a.type?f.push(i.selector):u.splice(k--,1)}j=c(a.target).closest(f,a.currentTarget);n=0;for(r=
|
| 38 |
+
j.length;n<r;n++)for(k=0;k<u.length;k++){i=u[k];if(j[n].selector===i.selector){o=j[n].elem;f=null;if(i.preType==="mouseenter"||i.preType==="mouseleave")f=c(a.relatedTarget).closest(i.selector)[0];if(!f||f!==o)d.push({elem:o,handleObj:i})}}n=0;for(r=d.length;n<r;n++){j=d[n];a.currentTarget=j.elem;a.data=j.handleObj.data;a.handleObj=j.handleObj;if(j.handleObj.origHandler.apply(j.elem,e)===false){b=false;break}}return b}}function pa(a,b){return"live."+(a&&a!=="*"?a+".":"")+b.replace(/\./g,"`").replace(/ /g,
|
| 39 |
+
"&")}function qa(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function ra(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var f=c.data(a[d++]),e=c.data(this,f);if(f=f&&f.events){delete e.handle;e.events={};for(var j in f)for(var i in f[j])c.event.add(this,j,f[j][i],f[j][i].data)}}})}function sa(a,b,d){var f,e,j;b=b&&b[0]?b[0].ownerDocument||b[0]:s;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===s&&!ta.test(a[0])&&(c.support.checkClone||!ua.test(a[0]))){e=
|
| 40 |
+
true;if(j=c.fragments[a[0]])if(j!==1)f=j}if(!f){f=b.createDocumentFragment();c.clean(a,b,f,d)}if(e)c.fragments[a[0]]=j?f:1;return{fragment:f,cacheable:e}}function K(a,b){var d={};c.each(va.concat.apply([],va.slice(0,b)),function(){d[this]=a});return d}function wa(a){return"scrollTo"in a&&a.document?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var c=function(a,b){return new c.fn.init(a,b)},Ra=A.jQuery,Sa=A.$,s=A.document,T,Ta=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,Ua=/^.[^:#\[\.,]*$/,Va=/\S/,
|
| 41 |
+
Wa=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,Xa=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,P=navigator.userAgent,xa=false,Q=[],L,$=Object.prototype.toString,aa=Object.prototype.hasOwnProperty,ba=Array.prototype.push,R=Array.prototype.slice,ya=Array.prototype.indexOf;c.fn=c.prototype={init:function(a,b){var d,f;if(!a)return this;if(a.nodeType){this.context=this[0]=a;this.length=1;return this}if(a==="body"&&!b){this.context=s;this[0]=s.body;this.selector="body";this.length=1;return this}if(typeof a==="string")if((d=Ta.exec(a))&&
|
| 42 |
+
(d[1]||!b))if(d[1]){f=b?b.ownerDocument||b:s;if(a=Xa.exec(a))if(c.isPlainObject(b)){a=[s.createElement(a[1])];c.fn.attr.call(a,b,true)}else a=[f.createElement(a[1])];else{a=sa([d[1]],[f]);a=(a.cacheable?a.fragment.cloneNode(true):a.fragment).childNodes}return c.merge(this,a)}else{if(b=s.getElementById(d[2])){if(b.id!==d[2])return T.find(a);this.length=1;this[0]=b}this.context=s;this.selector=a;return this}else if(!b&&/^\w+$/.test(a)){this.selector=a;this.context=s;a=s.getElementsByTagName(a);return c.merge(this,
|
| 43 |
+
a)}else return!b||b.jquery?(b||T).find(a):c(b).find(a);else if(c.isFunction(a))return T.ready(a);if(a.selector!==w){this.selector=a.selector;this.context=a.context}return c.makeArray(a,this)},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length},toArray:function(){return R.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this.slice(a)[0]:this[a]},pushStack:function(a,b,d){var f=c();c.isArray(a)?ba.apply(f,a):c.merge(f,a);f.prevObject=this;f.context=this.context;if(b===
|
| 44 |
+
"find")f.selector=this.selector+(this.selector?" ":"")+d;else if(b)f.selector=this.selector+"."+b+"("+d+")";return f},each:function(a,b){return c.each(this,a,b)},ready:function(a){c.bindReady();if(c.isReady)a.call(s,c);else Q&&Q.push(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(R.apply(this,arguments),"slice",R.call(arguments).join(","))},map:function(a){return this.pushStack(c.map(this,
|
| 45 |
+
function(b,d){return a.call(b,d,b)}))},end:function(){return this.prevObject||c(null)},push:ba,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a=arguments[0]||{},b=1,d=arguments.length,f=false,e,j,i,o;if(typeof a==="boolean"){f=a;a=arguments[1]||{};b=2}if(typeof a!=="object"&&!c.isFunction(a))a={};if(d===b){a=this;--b}for(;b<d;b++)if((e=arguments[b])!=null)for(j in e){i=a[j];o=e[j];if(a!==o)if(f&&o&&(c.isPlainObject(o)||c.isArray(o))){i=i&&(c.isPlainObject(i)||
|
| 46 |
+
c.isArray(i))?i:c.isArray(o)?[]:{};a[j]=c.extend(f,i,o)}else if(o!==w)a[j]=o}return a};c.extend({noConflict:function(a){A.$=Sa;if(a)A.jQuery=Ra;return c},isReady:false,ready:function(){if(!c.isReady){if(!s.body)return setTimeout(c.ready,13);c.isReady=true;if(Q){for(var a,b=0;a=Q[b++];)a.call(s,c);Q=null}c.fn.triggerHandler&&c(s).triggerHandler("ready")}},bindReady:function(){if(!xa){xa=true;if(s.readyState==="complete")return c.ready();if(s.addEventListener){s.addEventListener("DOMContentLoaded",
|
| 47 |
+
L,false);A.addEventListener("load",c.ready,false)}else if(s.attachEvent){s.attachEvent("onreadystatechange",L);A.attachEvent("onload",c.ready);var a=false;try{a=A.frameElement==null}catch(b){}s.documentElement.doScroll&&a&&ma()}}},isFunction:function(a){return $.call(a)==="[object Function]"},isArray:function(a){return $.call(a)==="[object Array]"},isPlainObject:function(a){if(!a||$.call(a)!=="[object Object]"||a.nodeType||a.setInterval)return false;if(a.constructor&&!aa.call(a,"constructor")&&!aa.call(a.constructor.prototype,
|
| 48 |
+
"isPrototypeOf"))return false;var b;for(b in a);return b===w||aa.call(a,b)},isEmptyObject:function(a){for(var b in a)return false;return true},error:function(a){throw a;},parseJSON:function(a){if(typeof a!=="string"||!a)return null;a=c.trim(a);if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return A.JSON&&A.JSON.parse?A.JSON.parse(a):(new Function("return "+
|
| 49 |
+
a))();else c.error("Invalid JSON: "+a)},noop:function(){},globalEval:function(a){if(a&&Va.test(a)){var b=s.getElementsByTagName("head")[0]||s.documentElement,d=s.createElement("script");d.type="text/javascript";if(c.support.scriptEval)d.appendChild(s.createTextNode(a));else d.text=a;b.insertBefore(d,b.firstChild);b.removeChild(d)}},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,b,d){var f,e=0,j=a.length,i=j===w||c.isFunction(a);if(d)if(i)for(f in a){if(b.apply(a[f],
|
| 50 |
+
d)===false)break}else for(;e<j;){if(b.apply(a[e++],d)===false)break}else if(i)for(f in a){if(b.call(a[f],f,a[f])===false)break}else for(d=a[0];e<j&&b.call(d,e,d)!==false;d=a[++e]);return a},trim:function(a){return(a||"").replace(Wa,"")},makeArray:function(a,b){b=b||[];if(a!=null)a.length==null||typeof a==="string"||c.isFunction(a)||typeof a!=="function"&&a.setInterval?ba.call(b,a):c.merge(b,a);return b},inArray:function(a,b){if(b.indexOf)return b.indexOf(a);for(var d=0,f=b.length;d<f;d++)if(b[d]===
|
| 51 |
+
a)return d;return-1},merge:function(a,b){var d=a.length,f=0;if(typeof b.length==="number")for(var e=b.length;f<e;f++)a[d++]=b[f];else for(;b[f]!==w;)a[d++]=b[f++];a.length=d;return a},grep:function(a,b,d){for(var f=[],e=0,j=a.length;e<j;e++)!d!==!b(a[e],e)&&f.push(a[e]);return f},map:function(a,b,d){for(var f=[],e,j=0,i=a.length;j<i;j++){e=b(a[j],j,d);if(e!=null)f[f.length]=e}return f.concat.apply([],f)},guid:1,proxy:function(a,b,d){if(arguments.length===2)if(typeof b==="string"){d=a;a=d[b];b=w}else if(b&&
|
| 52 |
+
!c.isFunction(b)){d=b;b=w}if(!b&&a)b=function(){return a.apply(d||this,arguments)};if(a)b.guid=a.guid=a.guid||b.guid||c.guid++;return b},uaMatch:function(a){a=a.toLowerCase();a=/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||!/compatible/.test(a)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}},browser:{}});P=c.uaMatch(P);if(P.browser){c.browser[P.browser]=true;c.browser.version=P.version}if(c.browser.webkit)c.browser.safari=
|
| 53 |
+
true;if(ya)c.inArray=function(a,b){return ya.call(b,a)};T=c(s);if(s.addEventListener)L=function(){s.removeEventListener("DOMContentLoaded",L,false);c.ready()};else if(s.attachEvent)L=function(){if(s.readyState==="complete"){s.detachEvent("onreadystatechange",L);c.ready()}};(function(){c.support={};var a=s.documentElement,b=s.createElement("script"),d=s.createElement("div"),f="script"+J();d.style.display="none";d.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
|
| 54 |
+
var e=d.getElementsByTagName("*"),j=d.getElementsByTagName("a")[0];if(!(!e||!e.length||!j)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(j.getAttribute("style")),hrefNormalized:j.getAttribute("href")==="/a",opacity:/^0.55$/.test(j.style.opacity),cssFloat:!!j.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:s.createElement("select").appendChild(s.createElement("option")).selected,
|
| 55 |
+
parentNode:d.removeChild(d.appendChild(s.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};b.type="text/javascript";try{b.appendChild(s.createTextNode("window."+f+"=1;"))}catch(i){}a.insertBefore(b,a.firstChild);if(A[f]){c.support.scriptEval=true;delete A[f]}try{delete b.test}catch(o){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function k(){c.support.noCloneEvent=
|
| 56 |
+
false;d.detachEvent("onclick",k)});d.cloneNode(true).fireEvent("onclick")}d=s.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=s.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var k=s.createElement("div");k.style.width=k.style.paddingLeft="1px";s.body.appendChild(k);c.boxModel=c.support.boxModel=k.offsetWidth===2;s.body.removeChild(k).style.display="none"});a=function(k){var n=
|
| 57 |
+
s.createElement("div");k="on"+k;var r=k in n;if(!r){n.setAttribute(k,"return;");r=typeof n[k]==="function"}return r};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=e=j=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var G="jQuery"+J(),Ya=0,za={};c.extend({cache:{},expando:G,noData:{embed:true,object:true,
|
| 58 |
+
applet:true},data:function(a,b,d){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var f=a[G],e=c.cache;if(!f&&typeof b==="string"&&d===w)return null;f||(f=++Ya);if(typeof b==="object"){a[G]=f;e[f]=c.extend(true,{},b)}else if(!e[f]){a[G]=f;e[f]={}}a=e[f];if(d!==w)a[b]=d;return typeof b==="string"?a[b]:a}},removeData:function(a,b){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var d=a[G],f=c.cache,e=f[d];if(b){if(e){delete e[b];c.isEmptyObject(e)&&c.removeData(a)}}else{if(c.support.deleteExpando)delete a[c.expando];
|
| 59 |
+
else a.removeAttribute&&a.removeAttribute(c.expando);delete f[d]}}}});c.fn.extend({data:function(a,b){if(typeof a==="undefined"&&this.length)return c.data(this[0]);else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===w){var f=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(f===w&&this.length)f=c.data(this[0],a);return f===w&&d[1]?this.data(d[0]):f}else return this.trigger("setData"+d[1]+"!",[d[0],b]).each(function(){c.data(this,
|
| 60 |
+
a,b)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var f=c.data(a,b);if(!d)return f||[];if(!f||c.isArray(d))f=c.data(a,b,c.makeArray(d));else f.push(d);return f}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),f=d.shift();if(f==="inprogress")f=d.shift();if(f){b==="fx"&&d.unshift("inprogress");f.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===
|
| 61 |
+
w)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var Aa=/[\n\t]/g,ca=/\s+/,Za=/\r/g,$a=/href|src|style/,ab=/(button|input)/i,bb=/(button|input|object|select|textarea)/i,
|
| 62 |
+
cb=/^(a|area)$/i,Ba=/radio|checkbox/;c.fn.extend({attr:function(a,b){return X(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(n){var r=c(this);r.addClass(a.call(this,n,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1)if(e.className){for(var j=" "+e.className+" ",
|
| 63 |
+
i=e.className,o=0,k=b.length;o<k;o++)if(j.indexOf(" "+b[o]+" ")<0)i+=" "+b[o];e.className=c.trim(i)}else e.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(k){var n=c(this);n.removeClass(a.call(this,k,n.attr("class")))});if(a&&typeof a==="string"||a===w)for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1&&e.className)if(a){for(var j=(" "+e.className+" ").replace(Aa," "),i=0,o=b.length;i<o;i++)j=j.replace(" "+b[i]+" ",
|
| 64 |
+
" ");e.className=c.trim(j)}else e.className=""}return this},toggleClass:function(a,b){var d=typeof a,f=typeof b==="boolean";if(c.isFunction(a))return this.each(function(e){var j=c(this);j.toggleClass(a.call(this,e,j.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var e,j=0,i=c(this),o=b,k=a.split(ca);e=k[j++];){o=f?o:!i.hasClass(e);i[o?"addClass":"removeClass"](e)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,"__className__",this.className);this.className=
|
| 65 |
+
this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(Aa," ").indexOf(a)>-1)return true;return false},val:function(a){if(a===w){var b=this[0];if(b){if(c.nodeName(b,"option"))return(b.attributes.value||{}).specified?b.value:b.text;if(c.nodeName(b,"select")){var d=b.selectedIndex,f=[],e=b.options;b=b.type==="select-one";if(d<0)return null;var j=b?d:0;for(d=b?d+1:e.length;j<d;j++){var i=
|
| 66 |
+
e[j];if(i.selected){a=c(i).val();if(b)return a;f.push(a)}}return f}if(Ba.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Za,"")}return w}var o=c.isFunction(a);return this.each(function(k){var n=c(this),r=a;if(this.nodeType===1){if(o)r=a.call(this,k,n.val());if(typeof r==="number")r+="";if(c.isArray(r)&&Ba.test(this.type))this.checked=c.inArray(n.val(),r)>=0;else if(c.nodeName(this,"select")){var u=c.makeArray(r);c("option",this).each(function(){this.selected=
|
| 67 |
+
c.inArray(c(this).val(),u)>=0});if(!u.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,f){if(!a||a.nodeType===3||a.nodeType===8)return w;if(f&&b in c.attrFn)return c(a)[b](d);f=a.nodeType!==1||!c.isXMLDoc(a);var e=d!==w;b=f&&c.props[b]||b;if(a.nodeType===1){var j=$a.test(b);if(b in a&&f&&!j){if(e){b==="type"&&ab.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");
|
| 68 |
+
a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:bb.test(a.nodeName)||cb.test(a.nodeName)&&a.href?0:w;return a[b]}if(!c.support.style&&f&&b==="style"){if(e)a.style.cssText=""+d;return a.style.cssText}e&&a.setAttribute(b,""+d);a=!c.support.hrefNormalized&&f&&j?a.getAttribute(b,2):a.getAttribute(b);return a===null?w:a}return c.style(a,b,d)}});var O=/\.(.*)$/,db=function(a){return a.replace(/[^\w\s\.\|`]/g,
|
| 69 |
+
function(b){return"\\"+b})};c.event={add:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){if(a.setInterval&&a!==A&&!a.frameElement)a=A;var e,j;if(d.handler){e=d;d=e.handler}if(!d.guid)d.guid=c.guid++;if(j=c.data(a)){var i=j.events=j.events||{},o=j.handle;if(!o)j.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w};o.elem=a;b=b.split(" ");for(var k,n=0,r;k=b[n++];){j=e?c.extend({},e):{handler:d,data:f};if(k.indexOf(".")>-1){r=k.split(".");
|
| 70 |
+
k=r.shift();j.namespace=r.slice(0).sort().join(".")}else{r=[];j.namespace=""}j.type=k;j.guid=d.guid;var u=i[k],z=c.event.special[k]||{};if(!u){u=i[k]=[];if(!z.setup||z.setup.call(a,f,r,o)===false)if(a.addEventListener)a.addEventListener(k,o,false);else a.attachEvent&&a.attachEvent("on"+k,o)}if(z.add){z.add.call(a,j);if(!j.handler.guid)j.handler.guid=d.guid}u.push(j);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){var e,j=0,i,o,k,n,r,u,z=c.data(a),
|
| 71 |
+
C=z&&z.events;if(z&&C){if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(e in C)c.event.remove(a,e+b)}else{for(b=b.split(" ");e=b[j++];){n=e;i=e.indexOf(".")<0;o=[];if(!i){o=e.split(".");e=o.shift();k=new RegExp("(^|\\.)"+c.map(o.slice(0).sort(),db).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(r=C[e])if(d){n=c.event.special[e]||{};for(B=f||0;B<r.length;B++){u=r[B];if(d.guid===u.guid){if(i||k.test(u.namespace)){f==null&&r.splice(B--,1);n.remove&&n.remove.call(a,u)}if(f!=
|
| 72 |
+
null)break}}if(r.length===0||f!=null&&r.length===1){if(!n.teardown||n.teardown.call(a,o)===false)Ca(a,e,z.handle);delete C[e]}}else for(var B=0;B<r.length;B++){u=r[B];if(i||k.test(u.namespace)){c.event.remove(a,n,u.handler,B);r.splice(B--,1)}}}if(c.isEmptyObject(C)){if(b=z.handle)b.elem=null;delete z.events;delete z.handle;c.isEmptyObject(z)&&c.removeData(a)}}}}},trigger:function(a,b,d,f){var e=a.type||a;if(!f){a=typeof a==="object"?a[G]?a:c.extend(c.Event(e),a):c.Event(e);if(e.indexOf("!")>=0){a.type=
|
| 73 |
+
e=e.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[e]&&c.each(c.cache,function(){this.events&&this.events[e]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return w;a.result=w;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(f=c.data(d,"handle"))&&f.apply(d,b);f=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+e]&&d["on"+e].apply(d,b)===false)a.result=false}catch(j){}if(!a.isPropagationStopped()&&
|
| 74 |
+
f)c.event.trigger(a,b,f,true);else if(!a.isDefaultPrevented()){f=a.target;var i,o=c.nodeName(f,"a")&&e==="click",k=c.event.special[e]||{};if((!k._default||k._default.call(d,a)===false)&&!o&&!(f&&f.nodeName&&c.noData[f.nodeName.toLowerCase()])){try{if(f[e]){if(i=f["on"+e])f["on"+e]=null;c.event.triggered=true;f[e]()}}catch(n){}if(i)f["on"+e]=i;c.event.triggered=false}}},handle:function(a){var b,d,f,e;a=arguments[0]=c.event.fix(a||A.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;
|
| 75 |
+
if(!b){d=a.type.split(".");a.type=d.shift();f=new RegExp("(^|\\.)"+d.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)")}e=c.data(this,"events");d=e[a.type];if(e&&d){d=d.slice(0);e=0;for(var j=d.length;e<j;e++){var i=d[e];if(b||f.test(i.namespace)){a.handler=i.handler;a.data=i.data;a.handleObj=i;i=i.handler.apply(this,arguments);if(i!==w){a.result=i;if(i===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),
|
| 76 |
+
fix:function(a){if(a[G])return a;var b=a;a=c.Event(b);for(var d=this.props.length,f;d;){f=this.props[--d];a[f]=b[f]}if(!a.target)a.target=a.srcElement||s;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=s.documentElement;d=s.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||
|
| 77 |
+
d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(!a.which&&(a.charCode||a.charCode===0?a.charCode:a.keyCode))a.which=a.charCode||a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==w)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,a.origType,c.extend({},a,{handler:oa}))},remove:function(a){var b=true,d=a.origType.replace(O,"");c.each(c.data(this,
|
| 78 |
+
"events").live||[],function(){if(d===this.origType.replace(O,""))return b=false});b&&c.event.remove(this,a.origType,oa)}},beforeunload:{setup:function(a,b,d){if(this.setInterval)this.onbeforeunload=d;return false},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};var Ca=s.removeEventListener?function(a,b,d){a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=
|
| 79 |
+
a;this.type=a.type}else this.type=a;this.timeStamp=J();this[G]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=Z;var a=this.originalEvent;if(a){a.preventDefault&&a.preventDefault();a.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=Z;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Z;this.stopPropagation()},isDefaultPrevented:Y,isPropagationStopped:Y,
|
| 80 |
+
isImmediatePropagationStopped:Y};var Da=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},Ea=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?Ea:Da,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?Ea:Da)}}});if(!c.support.submitBubbles)c.event.special.submit=
|
| 81 |
+
{setup:function(){if(this.nodeName.toLowerCase()!=="form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length)return na("submit",this,arguments)});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13)return na("submit",this,arguments)})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};
|
| 82 |
+
if(!c.support.changeBubbles){var da=/textarea|input|select/i,ea,Fa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(f){return f.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},fa=function(a,b){var d=a.target,f,e;if(!(!da.test(d.nodeName)||d.readOnly)){f=c.data(d,"_change_data");e=Fa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",
|
| 83 |
+
e);if(!(f===w||e===f))if(f!=null||e){a.type="change";return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:fa,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return fa.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return fa.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,
|
| 84 |
+
"_change_data",Fa(a))}},setup:function(){if(this.type==="file")return false;for(var a in ea)c.event.add(this,a+".specialChange",ea[a]);return da.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return da.test(this.nodeName)}};ea=c.event.special.change.filters}s.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(f){f=c.event.fix(f);f.type=b;return c.event.handle.call(this,f)}c.event.special[b]={setup:function(){this.addEventListener(a,
|
| 85 |
+
d,true)},teardown:function(){this.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,f,e){if(typeof d==="object"){for(var j in d)this[b](j,f,d[j],e);return this}if(c.isFunction(f)){e=f;f=w}var i=b==="one"?c.proxy(e,function(k){c(this).unbind(k,i);return e.apply(this,arguments)}):e;if(d==="unload"&&b!=="one")this.one(d,f,e);else{j=0;for(var o=this.length;j<o;j++)c.event.add(this[j],d,i,f)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&
|
| 86 |
+
!a.preventDefault)for(var d in a)this.unbind(d,a[d]);else{d=0;for(var f=this.length;d<f;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,f){return this.live(b,d,f,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){a=c.Event(a);a.preventDefault();a.stopPropagation();c.event.trigger(a,b,this[0]);return a.result}},
|
| 87 |
+
toggle:function(a){for(var b=arguments,d=1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(f){var e=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,e+1);f.preventDefault();return b[e].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var Ga={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,f,e,j){var i,o=0,k,n,r=j||this.selector,
|
| 88 |
+
u=j?this:c(this.context);if(c.isFunction(f)){e=f;f=w}for(d=(d||"").split(" ");(i=d[o++])!=null;){j=O.exec(i);k="";if(j){k=j[0];i=i.replace(O,"")}if(i==="hover")d.push("mouseenter"+k,"mouseleave"+k);else{n=i;if(i==="focus"||i==="blur"){d.push(Ga[i]+k);i+=k}else i=(Ga[i]||i)+k;b==="live"?u.each(function(){c.event.add(this,pa(i,r),{data:f,selector:r,handler:e,origType:i,origHandler:e,preType:n})}):u.unbind(pa(i,r),e)}}return this}});c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),
|
| 89 |
+
function(a,b){c.fn[b]=function(d){return d?this.bind(b,d):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});A.attachEvent&&!A.addEventListener&&A.attachEvent("onunload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});(function(){function a(g){for(var h="",l,m=0;g[m];m++){l=g[m];if(l.nodeType===3||l.nodeType===4)h+=l.nodeValue;else if(l.nodeType!==8)h+=a(l.childNodes)}return h}function b(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];
|
| 90 |
+
if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1&&!p){t.sizcache=l;t.sizset=q}if(t.nodeName.toLowerCase()===h){y=t;break}t=t[g]}m[q]=y}}}function d(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1){if(!p){t.sizcache=l;t.sizset=q}if(typeof h!=="string"){if(t===h){y=true;break}}else if(k.filter(h,[t]).length>0){y=t;break}}t=t[g]}m[q]=y}}}var f=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
|
| 91 |
+
e=0,j=Object.prototype.toString,i=false,o=true;[0,0].sort(function(){o=false;return 0});var k=function(g,h,l,m){l=l||[];var q=h=h||s;if(h.nodeType!==1&&h.nodeType!==9)return[];if(!g||typeof g!=="string")return l;for(var p=[],v,t,y,S,H=true,M=x(h),I=g;(f.exec(""),v=f.exec(I))!==null;){I=v[3];p.push(v[1]);if(v[2]){S=v[3];break}}if(p.length>1&&r.exec(g))if(p.length===2&&n.relative[p[0]])t=ga(p[0]+p[1],h);else for(t=n.relative[p[0]]?[h]:k(p.shift(),h);p.length;){g=p.shift();if(n.relative[g])g+=p.shift();
|
| 92 |
+
t=ga(g,t)}else{if(!m&&p.length>1&&h.nodeType===9&&!M&&n.match.ID.test(p[0])&&!n.match.ID.test(p[p.length-1])){v=k.find(p.shift(),h,M);h=v.expr?k.filter(v.expr,v.set)[0]:v.set[0]}if(h){v=m?{expr:p.pop(),set:z(m)}:k.find(p.pop(),p.length===1&&(p[0]==="~"||p[0]==="+")&&h.parentNode?h.parentNode:h,M);t=v.expr?k.filter(v.expr,v.set):v.set;if(p.length>0)y=z(t);else H=false;for(;p.length;){var D=p.pop();v=D;if(n.relative[D])v=p.pop();else D="";if(v==null)v=h;n.relative[D](y,v,M)}}else y=[]}y||(y=t);y||k.error(D||
|
| 93 |
+
g);if(j.call(y)==="[object Array]")if(H)if(h&&h.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&E(h,y[g])))l.push(t[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&l.push(t[g]);else l.push.apply(l,y);else z(y,l);if(S){k(S,q,l,m);k.uniqueSort(l)}return l};k.uniqueSort=function(g){if(B){i=o;g.sort(B);if(i)for(var h=1;h<g.length;h++)g[h]===g[h-1]&&g.splice(h--,1)}return g};k.matches=function(g,h){return k(g,null,null,h)};k.find=function(g,h,l){var m,q;if(!g)return[];
|
| 94 |
+
for(var p=0,v=n.order.length;p<v;p++){var t=n.order[p];if(q=n.leftMatch[t].exec(g)){var y=q[1];q.splice(1,1);if(y.substr(y.length-1)!=="\\"){q[1]=(q[1]||"").replace(/\\/g,"");m=n.find[t](q,h,l);if(m!=null){g=g.replace(n.match[t],"");break}}}}m||(m=h.getElementsByTagName("*"));return{set:m,expr:g}};k.filter=function(g,h,l,m){for(var q=g,p=[],v=h,t,y,S=h&&h[0]&&x(h[0]);g&&h.length;){for(var H in n.filter)if((t=n.leftMatch[H].exec(g))!=null&&t[2]){var M=n.filter[H],I,D;D=t[1];y=false;t.splice(1,1);if(D.substr(D.length-
|
| 95 |
+
1)!=="\\"){if(v===p)p=[];if(n.preFilter[H])if(t=n.preFilter[H](t,v,l,p,m,S)){if(t===true)continue}else y=I=true;if(t)for(var U=0;(D=v[U])!=null;U++)if(D){I=M(D,t,U,v);var Ha=m^!!I;if(l&&I!=null)if(Ha)y=true;else v[U]=false;else if(Ha){p.push(D);y=true}}if(I!==w){l||(v=p);g=g.replace(n.match[H],"");if(!y)return[];break}}}if(g===q)if(y==null)k.error(g);else break;q=g}return v};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var n=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,
|
| 96 |
+
CLASS:/\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},
|
| 97 |
+
relative:{"+":function(g,h){var l=typeof h==="string",m=l&&!/\W/.test(h);l=l&&!m;if(m)h=h.toLowerCase();m=0;for(var q=g.length,p;m<q;m++)if(p=g[m]){for(;(p=p.previousSibling)&&p.nodeType!==1;);g[m]=l||p&&p.nodeName.toLowerCase()===h?p||false:p===h}l&&k.filter(h,g,true)},">":function(g,h){var l=typeof h==="string";if(l&&!/\W/.test(h)){h=h.toLowerCase();for(var m=0,q=g.length;m<q;m++){var p=g[m];if(p){l=p.parentNode;g[m]=l.nodeName.toLowerCase()===h?l:false}}}else{m=0;for(q=g.length;m<q;m++)if(p=g[m])g[m]=
|
| 98 |
+
l?p.parentNode:p.parentNode===h;l&&k.filter(h,g,true)}},"":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("parentNode",h,m,g,p,l)},"~":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("previousSibling",h,m,g,p,l)}},find:{ID:function(g,h,l){if(typeof h.getElementById!=="undefined"&&!l)return(g=h.getElementById(g[1]))?[g]:[]},NAME:function(g,h){if(typeof h.getElementsByName!=="undefined"){var l=[];
|
| 99 |
+
h=h.getElementsByName(g[1]);for(var m=0,q=h.length;m<q;m++)h[m].getAttribute("name")===g[1]&&l.push(h[m]);return l.length===0?null:l}},TAG:function(g,h){return h.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,h,l,m,q,p){g=" "+g[1].replace(/\\/g,"")+" ";if(p)return g;p=0;for(var v;(v=h[p])!=null;p++)if(v)if(q^(v.className&&(" "+v.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))l||m.push(v);else if(l)h[p]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},
|
| 100 |
+
CHILD:function(g){if(g[1]==="nth"){var h=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=h[1]+(h[2]||1)-0;g[3]=h[3]-0}g[0]=e++;return g},ATTR:function(g,h,l,m,q,p){h=g[1].replace(/\\/g,"");if(!p&&n.attrMap[h])g[1]=n.attrMap[h];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,h,l,m,q){if(g[1]==="not")if((f.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,h);else{g=k.filter(g[3],h,l,true^q);l||m.push.apply(m,
|
| 101 |
+
g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,h,l){return!!k(l[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},
|
| 102 |
+
text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},
|
| 103 |
+
setFilters:{first:function(g,h){return h===0},last:function(g,h,l,m){return h===m.length-1},even:function(g,h){return h%2===0},odd:function(g,h){return h%2===1},lt:function(g,h,l){return h<l[3]-0},gt:function(g,h,l){return h>l[3]-0},nth:function(g,h,l){return l[3]-0===h},eq:function(g,h,l){return l[3]-0===h}},filter:{PSEUDO:function(g,h,l,m){var q=h[1],p=n.filters[q];if(p)return p(g,l,h,m);else if(q==="contains")return(g.textContent||g.innerText||a([g])||"").indexOf(h[3])>=0;else if(q==="not"){h=
|
| 104 |
+
h[3];l=0;for(m=h.length;l<m;l++)if(h[l]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+q)},CHILD:function(g,h){var l=h[1],m=g;switch(l){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(l==="first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":l=h[2];var q=h[3];if(l===1&&q===0)return true;h=h[0];var p=g.parentNode;if(p&&(p.sizcache!==h||!g.nodeIndex)){var v=0;for(m=p.firstChild;m;m=
|
| 105 |
+
m.nextSibling)if(m.nodeType===1)m.nodeIndex=++v;p.sizcache=h}g=g.nodeIndex-q;return l===0?g===0:g%l===0&&g/l>=0}},ID:function(g,h){return g.nodeType===1&&g.getAttribute("id")===h},TAG:function(g,h){return h==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===h},CLASS:function(g,h){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(h)>-1},ATTR:function(g,h){var l=h[1];g=n.attrHandle[l]?n.attrHandle[l](g):g[l]!=null?g[l]:g.getAttribute(l);l=g+"";var m=h[2];h=h[4];return g==null?m==="!=":m===
|
| 106 |
+
"="?l===h:m==="*="?l.indexOf(h)>=0:m==="~="?(" "+l+" ").indexOf(h)>=0:!h?l&&g!==false:m==="!="?l!==h:m==="^="?l.indexOf(h)===0:m==="$="?l.substr(l.length-h.length)===h:m==="|="?l===h||l.substr(0,h.length+1)===h+"-":false},POS:function(g,h,l,m){var q=n.setFilters[h[2]];if(q)return q(g,l,h,m)}}},r=n.match.POS;for(var u in n.match){n.match[u]=new RegExp(n.match[u].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[u]=new RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[u].source.replace(/\\(\d+)/g,function(g,
|
| 107 |
+
h){return"\\"+(h-0+1)}))}var z=function(g,h){g=Array.prototype.slice.call(g,0);if(h){h.push.apply(h,g);return h}return g};try{Array.prototype.slice.call(s.documentElement.childNodes,0)}catch(C){z=function(g,h){h=h||[];if(j.call(g)==="[object Array]")Array.prototype.push.apply(h,g);else if(typeof g.length==="number")for(var l=0,m=g.length;l<m;l++)h.push(g[l]);else for(l=0;g[l];l++)h.push(g[l]);return h}}var B;if(s.documentElement.compareDocumentPosition)B=function(g,h){if(!g.compareDocumentPosition||
|
| 108 |
+
!h.compareDocumentPosition){if(g==h)i=true;return g.compareDocumentPosition?-1:1}g=g.compareDocumentPosition(h)&4?-1:g===h?0:1;if(g===0)i=true;return g};else if("sourceIndex"in s.documentElement)B=function(g,h){if(!g.sourceIndex||!h.sourceIndex){if(g==h)i=true;return g.sourceIndex?-1:1}g=g.sourceIndex-h.sourceIndex;if(g===0)i=true;return g};else if(s.createRange)B=function(g,h){if(!g.ownerDocument||!h.ownerDocument){if(g==h)i=true;return g.ownerDocument?-1:1}var l=g.ownerDocument.createRange(),m=
|
| 109 |
+
h.ownerDocument.createRange();l.setStart(g,0);l.setEnd(g,0);m.setStart(h,0);m.setEnd(h,0);g=l.compareBoundaryPoints(Range.START_TO_END,m);if(g===0)i=true;return g};(function(){var g=s.createElement("div"),h="script"+(new Date).getTime();g.innerHTML="<a name='"+h+"'/>";var l=s.documentElement;l.insertBefore(g,l.firstChild);if(s.getElementById(h)){n.find.ID=function(m,q,p){if(typeof q.getElementById!=="undefined"&&!p)return(q=q.getElementById(m[1]))?q.id===m[1]||typeof q.getAttributeNode!=="undefined"&&
|
| 110 |
+
q.getAttributeNode("id").nodeValue===m[1]?[q]:w:[]};n.filter.ID=function(m,q){var p=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&p&&p.nodeValue===q}}l.removeChild(g);l=g=null})();(function(){var g=s.createElement("div");g.appendChild(s.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(h,l){l=l.getElementsByTagName(h[1]);if(h[1]==="*"){h=[];for(var m=0;l[m];m++)l[m].nodeType===1&&h.push(l[m]);l=h}return l};g.innerHTML="<a href='#'></a>";
|
| 111 |
+
if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(h){return h.getAttribute("href",2)};g=null})();s.querySelectorAll&&function(){var g=k,h=s.createElement("div");h.innerHTML="<p class='TEST'></p>";if(!(h.querySelectorAll&&h.querySelectorAll(".TEST").length===0)){k=function(m,q,p,v){q=q||s;if(!v&&q.nodeType===9&&!x(q))try{return z(q.querySelectorAll(m),p)}catch(t){}return g(m,q,p,v)};for(var l in g)k[l]=g[l];h=null}}();
|
| 112 |
+
(function(){var g=s.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(h,l,m){if(typeof l.getElementsByClassName!=="undefined"&&!m)return l.getElementsByClassName(h[1])};g=null}}})();var E=s.compareDocumentPosition?function(g,h){return!!(g.compareDocumentPosition(h)&16)}:
|
| 113 |
+
function(g,h){return g!==h&&(g.contains?g.contains(h):true)},x=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false},ga=function(g,h){var l=[],m="",q;for(h=h.nodeType?[h]:h;q=n.match.PSEUDO.exec(g);){m+=q[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;q=0;for(var p=h.length;q<p;q++)k(g,h[q],l);return k.filter(m,l)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=a;c.isXMLDoc=x;c.contains=E})();var eb=/Until$/,fb=/^(?:parents|prevUntil|prevAll)/,
|
| 114 |
+
gb=/,/;R=Array.prototype.slice;var Ia=function(a,b,d){if(c.isFunction(b))return c.grep(a,function(e,j){return!!b.call(e,j,e)===d});else if(b.nodeType)return c.grep(a,function(e){return e===b===d});else if(typeof b==="string"){var f=c.grep(a,function(e){return e.nodeType===1});if(Ua.test(b))return c.filter(b,f,!d);else b=c.filter(b,f)}return c.grep(a,function(e){return c.inArray(e,b)>=0===d})};c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,f=0,e=this.length;f<e;f++){d=b.length;
|
| 115 |
+
c.find(a,this[f],b);if(f>0)for(var j=d;j<b.length;j++)for(var i=0;i<d;i++)if(b[i]===b[j]){b.splice(j--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,f=b.length;d<f;d++)if(c.contains(this,b[d]))return true})},not:function(a){return this.pushStack(Ia(this,a,false),"not",a)},filter:function(a){return this.pushStack(Ia(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){if(c.isArray(a)){var d=[],f=this[0],e,j=
|
| 116 |
+
{},i;if(f&&a.length){e=0;for(var o=a.length;e<o;e++){i=a[e];j[i]||(j[i]=c.expr.match.POS.test(i)?c(i,b||this.context):i)}for(;f&&f.ownerDocument&&f!==b;){for(i in j){e=j[i];if(e.jquery?e.index(f)>-1:c(f).is(e)){d.push({selector:i,elem:f});delete j[i]}}f=f.parentNode}}return d}var k=c.expr.match.POS.test(a)?c(a,b||this.context):null;return this.map(function(n,r){for(;r&&r.ownerDocument&&r!==b;){if(k?k.index(r)>-1:c(r).is(a))return r;r=r.parentNode}return null})},index:function(a){if(!a||typeof a===
|
| 117 |
+
"string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){a=typeof a==="string"?c(a,b||this.context):c.makeArray(a);b=c.merge(this.get(),a);return this.pushStack(qa(a[0])||qa(b[0])?b:c.unique(b))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",
|
| 118 |
+
d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?
|
| 119 |
+
a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,f){var e=c.map(this,b,d);eb.test(a)||(f=d);if(f&&typeof f==="string")e=c.filter(f,e);e=this.length>1?c.unique(e):e;if((this.length>1||gb.test(f))&&fb.test(a))e=e.reverse();return this.pushStack(e,a,R.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return c.find.matches(a,b)},dir:function(a,b,d){var f=[];for(a=a[b];a&&a.nodeType!==9&&(d===w||a.nodeType!==1||!c(a).is(d));){a.nodeType===
|
| 120 |
+
1&&f.push(a);a=a[b]}return f},nth:function(a,b,d){b=b||1;for(var f=0;a;a=a[d])if(a.nodeType===1&&++f===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var Ja=/ jQuery\d+="(?:\d+|null)"/g,V=/^\s+/,Ka=/(<([\w:]+)[^>]*?)\/>/g,hb=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,La=/<([\w:]+)/,ib=/<tbody/i,jb=/<|&#?\w+;/,ta=/<script|<object|<embed|<option|<style/i,ua=/checked\s*(?:[^=]|=\s*.checked.)/i,Ma=function(a,b,d){return hb.test(d)?
|
| 121 |
+
a:b+"></"+d+">"},F={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};F.optgroup=F.option;F.tbody=F.tfoot=F.colgroup=F.caption=F.thead;F.th=F.td;if(!c.support.htmlSerialize)F._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=
|
| 122 |
+
c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==w)return this.empty().append((this[0]&&this[0].ownerDocument||s).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},
|
| 123 |
+
wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},
|
| 124 |
+
prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,
|
| 125 |
+
this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,f;(f=this[d])!=null;d++)if(!a||c.filter(a,[f]).length){if(!b&&f.nodeType===1){c.cleanData(f.getElementsByTagName("*"));c.cleanData([f])}f.parentNode&&f.parentNode.removeChild(f)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);
|
| 126 |
+
return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,f=this.ownerDocument;if(!d){d=f.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(Ja,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(V,"")],f)[0]}else return this.cloneNode(true)});if(a===true){ra(this,b);ra(this.find("*"),b.find("*"))}return b},html:function(a){if(a===w)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Ja,
|
| 127 |
+
""):null;else if(typeof a==="string"&&!ta.test(a)&&(c.support.leadingWhitespace||!V.test(a))&&!F[(La.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Ka,Ma);try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(f){this.empty().append(a)}}else c.isFunction(a)?this.each(function(e){var j=c(this),i=j.html();j.empty().append(function(){return a.call(this,e,i)})}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&
|
| 128 |
+
this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=c(this),f=d.html();d.replaceWith(a.call(this,b,f))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){function f(u){return c.nodeName(u,"table")?u.getElementsByTagName("tbody")[0]||
|
| 129 |
+
u.appendChild(u.ownerDocument.createElement("tbody")):u}var e,j,i=a[0],o=[],k;if(!c.support.checkClone&&arguments.length===3&&typeof i==="string"&&ua.test(i))return this.each(function(){c(this).domManip(a,b,d,true)});if(c.isFunction(i))return this.each(function(u){var z=c(this);a[0]=i.call(this,u,b?z.html():w);z.domManip(a,b,d)});if(this[0]){e=i&&i.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:sa(a,this,o);k=e.fragment;if(j=k.childNodes.length===
|
| 130 |
+
1?(k=k.firstChild):k.firstChild){b=b&&c.nodeName(j,"tr");for(var n=0,r=this.length;n<r;n++)d.call(b?f(this[n],j):this[n],n>0||e.cacheable||this.length>1?k.cloneNode(true):k)}o.length&&c.each(o,Qa)}return this}});c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var f=[];d=c(d);var e=this.length===1&&this[0].parentNode;if(e&&e.nodeType===11&&e.childNodes.length===1&&d.length===1){d[b](this[0]);
|
| 131 |
+
return this}else{e=0;for(var j=d.length;e<j;e++){var i=(e>0?this.clone(true):this).get();c.fn[b].apply(c(d[e]),i);f=f.concat(i)}return this.pushStack(f,a,d.selector)}}});c.extend({clean:function(a,b,d,f){b=b||s;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||s;for(var e=[],j=0,i;(i=a[j])!=null;j++){if(typeof i==="number")i+="";if(i){if(typeof i==="string"&&!jb.test(i))i=b.createTextNode(i);else if(typeof i==="string"){i=i.replace(Ka,Ma);var o=(La.exec(i)||["",
|
| 132 |
+
""])[1].toLowerCase(),k=F[o]||F._default,n=k[0],r=b.createElement("div");for(r.innerHTML=k[1]+i+k[2];n--;)r=r.lastChild;if(!c.support.tbody){n=ib.test(i);o=o==="table"&&!n?r.firstChild&&r.firstChild.childNodes:k[1]==="<table>"&&!n?r.childNodes:[];for(k=o.length-1;k>=0;--k)c.nodeName(o[k],"tbody")&&!o[k].childNodes.length&&o[k].parentNode.removeChild(o[k])}!c.support.leadingWhitespace&&V.test(i)&&r.insertBefore(b.createTextNode(V.exec(i)[0]),r.firstChild);i=r.childNodes}if(i.nodeType)e.push(i);else e=
|
| 133 |
+
c.merge(e,i)}}if(d)for(j=0;e[j];j++)if(f&&c.nodeName(e[j],"script")&&(!e[j].type||e[j].type.toLowerCase()==="text/javascript"))f.push(e[j].parentNode?e[j].parentNode.removeChild(e[j]):e[j]);else{e[j].nodeType===1&&e.splice.apply(e,[j+1,0].concat(c.makeArray(e[j].getElementsByTagName("script"))));d.appendChild(e[j])}return e},cleanData:function(a){for(var b,d,f=c.cache,e=c.event.special,j=c.support.deleteExpando,i=0,o;(o=a[i])!=null;i++)if(d=o[c.expando]){b=f[d];if(b.events)for(var k in b.events)e[k]?
|
| 134 |
+
c.event.remove(o,k):Ca(o,k,b.handle);if(j)delete o[c.expando];else o.removeAttribute&&o.removeAttribute(c.expando);delete f[d]}}});var kb=/z-?index|font-?weight|opacity|zoom|line-?height/i,Na=/alpha\([^)]*\)/,Oa=/opacity=([^)]*)/,ha=/float/i,ia=/-([a-z])/ig,lb=/([A-Z])/g,mb=/^-?\d+(?:px)?$/i,nb=/^-?\d/,ob={position:"absolute",visibility:"hidden",display:"block"},pb=["Left","Right"],qb=["Top","Bottom"],rb=s.defaultView&&s.defaultView.getComputedStyle,Pa=c.support.cssFloat?"cssFloat":"styleFloat",ja=
|
| 135 |
+
function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){return X(this,a,b,true,function(d,f,e){if(e===w)return c.curCSS(d,f);if(typeof e==="number"&&!kb.test(f))e+="px";c.style(d,f,e)})};c.extend({style:function(a,b,d){if(!a||a.nodeType===3||a.nodeType===8)return w;if((b==="width"||b==="height")&&parseFloat(d)<0)d=w;var f=a.style||a,e=d!==w;if(!c.support.opacity&&b==="opacity"){if(e){f.zoom=1;b=parseInt(d,10)+""==="NaN"?"":"alpha(opacity="+d*100+")";a=f.filter||c.curCSS(a,"filter")||"";f.filter=
|
| 136 |
+
Na.test(a)?a.replace(Na,b):b}return f.filter&&f.filter.indexOf("opacity=")>=0?parseFloat(Oa.exec(f.filter)[1])/100+"":""}if(ha.test(b))b=Pa;b=b.replace(ia,ja);if(e)f[b]=d;return f[b]},css:function(a,b,d,f){if(b==="width"||b==="height"){var e,j=b==="width"?pb:qb;function i(){e=b==="width"?a.offsetWidth:a.offsetHeight;f!=="border"&&c.each(j,function(){f||(e-=parseFloat(c.curCSS(a,"padding"+this,true))||0);if(f==="margin")e+=parseFloat(c.curCSS(a,"margin"+this,true))||0;else e-=parseFloat(c.curCSS(a,
|
| 137 |
+
"border"+this+"Width",true))||0})}a.offsetWidth!==0?i():c.swap(a,ob,i);return Math.max(0,Math.round(e))}return c.curCSS(a,b,d)},curCSS:function(a,b,d){var f,e=a.style;if(!c.support.opacity&&b==="opacity"&&a.currentStyle){f=Oa.test(a.currentStyle.filter||"")?parseFloat(RegExp.$1)/100+"":"";return f===""?"1":f}if(ha.test(b))b=Pa;if(!d&&e&&e[b])f=e[b];else if(rb){if(ha.test(b))b="float";b=b.replace(lb,"-$1").toLowerCase();e=a.ownerDocument.defaultView;if(!e)return null;if(a=e.getComputedStyle(a,null))f=
|
| 138 |
+
a.getPropertyValue(b);if(b==="opacity"&&f==="")f="1"}else if(a.currentStyle){d=b.replace(ia,ja);f=a.currentStyle[b]||a.currentStyle[d];if(!mb.test(f)&&nb.test(f)){b=e.left;var j=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;e.left=d==="fontSize"?"1em":f||0;f=e.pixelLeft+"px";e.left=b;a.runtimeStyle.left=j}}return f},swap:function(a,b,d){var f={};for(var e in b){f[e]=a.style[e];a.style[e]=b[e]}d.call(a);for(e in b)a.style[e]=f[e]}});if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=
|
| 139 |
+
a.offsetWidth,d=a.offsetHeight,f=a.nodeName.toLowerCase()==="tr";return b===0&&d===0&&!f?true:b>0&&d>0&&!f?false:c.curCSS(a,"display")==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var sb=J(),tb=/<script(.|\s)*?\/script>/gi,ub=/select|textarea/i,vb=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,N=/=\?(&|$)/,ka=/\?/,wb=/(\?|&)_=.*?(&|$)/,xb=/^(\w+:)?\/\/([^\/?#]+)/,yb=/%20/g,zb=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!==
|
| 140 |
+
"string")return zb.call(this,a);else if(!this.length)return this;var f=a.indexOf(" ");if(f>=0){var e=a.slice(f,a.length);a=a.slice(0,f)}f="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);f="POST"}var j=this;c.ajax({url:a,type:f,dataType:"html",data:b,complete:function(i,o){if(o==="success"||o==="notmodified")j.html(e?c("<div />").append(i.responseText.replace(tb,"")).find(e):i.responseText);d&&j.each(d,[i.responseText,o,i])}});return this},
|
| 141 |
+
serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ub.test(this.nodeName)||vb.test(this.type))}).map(function(a,b){a=c(this).val();return a==null?null:c.isArray(a)?c.map(a,function(d){return{name:b.name,value:d}}):{name:b.name,value:a}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),
|
| 142 |
+
function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:f})},getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:f})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,
|
| 143 |
+
global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:A.XMLHttpRequest&&(A.location.protocol!=="file:"||!A.ActiveXObject)?function(){return new A.XMLHttpRequest}:function(){try{return new A.ActiveXObject("Microsoft.XMLHTTP")}catch(a){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(a){function b(){e.success&&
|
| 144 |
+
e.success.call(k,o,i,x);e.global&&f("ajaxSuccess",[x,e])}function d(){e.complete&&e.complete.call(k,x,i);e.global&&f("ajaxComplete",[x,e]);e.global&&!--c.active&&c.event.trigger("ajaxStop")}function f(q,p){(e.context?c(e.context):c.event).trigger(q,p)}var e=c.extend(true,{},c.ajaxSettings,a),j,i,o,k=a&&a.context||e,n=e.type.toUpperCase();if(e.data&&e.processData&&typeof e.data!=="string")e.data=c.param(e.data,e.traditional);if(e.dataType==="jsonp"){if(n==="GET")N.test(e.url)||(e.url+=(ka.test(e.url)?
|
| 145 |
+
"&":"?")+(e.jsonp||"callback")+"=?");else if(!e.data||!N.test(e.data))e.data=(e.data?e.data+"&":"")+(e.jsonp||"callback")+"=?";e.dataType="json"}if(e.dataType==="json"&&(e.data&&N.test(e.data)||N.test(e.url))){j=e.jsonpCallback||"jsonp"+sb++;if(e.data)e.data=(e.data+"").replace(N,"="+j+"$1");e.url=e.url.replace(N,"="+j+"$1");e.dataType="script";A[j]=A[j]||function(q){o=q;b();d();A[j]=w;try{delete A[j]}catch(p){}z&&z.removeChild(C)}}if(e.dataType==="script"&&e.cache===null)e.cache=false;if(e.cache===
|
| 146 |
+
false&&n==="GET"){var r=J(),u=e.url.replace(wb,"$1_="+r+"$2");e.url=u+(u===e.url?(ka.test(e.url)?"&":"?")+"_="+r:"")}if(e.data&&n==="GET")e.url+=(ka.test(e.url)?"&":"?")+e.data;e.global&&!c.active++&&c.event.trigger("ajaxStart");r=(r=xb.exec(e.url))&&(r[1]&&r[1]!==location.protocol||r[2]!==location.host);if(e.dataType==="script"&&n==="GET"&&r){var z=s.getElementsByTagName("head")[0]||s.documentElement,C=s.createElement("script");C.src=e.url;if(e.scriptCharset)C.charset=e.scriptCharset;if(!j){var B=
|
| 147 |
+
false;C.onload=C.onreadystatechange=function(){if(!B&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){B=true;b();d();C.onload=C.onreadystatechange=null;z&&C.parentNode&&z.removeChild(C)}}}z.insertBefore(C,z.firstChild);return w}var E=false,x=e.xhr();if(x){e.username?x.open(n,e.url,e.async,e.username,e.password):x.open(n,e.url,e.async);try{if(e.data||a&&a.contentType)x.setRequestHeader("Content-Type",e.contentType);if(e.ifModified){c.lastModified[e.url]&&x.setRequestHeader("If-Modified-Since",
|
| 148 |
+
c.lastModified[e.url]);c.etag[e.url]&&x.setRequestHeader("If-None-Match",c.etag[e.url])}r||x.setRequestHeader("X-Requested-With","XMLHttpRequest");x.setRequestHeader("Accept",e.dataType&&e.accepts[e.dataType]?e.accepts[e.dataType]+", */*":e.accepts._default)}catch(ga){}if(e.beforeSend&&e.beforeSend.call(k,x,e)===false){e.global&&!--c.active&&c.event.trigger("ajaxStop");x.abort();return false}e.global&&f("ajaxSend",[x,e]);var g=x.onreadystatechange=function(q){if(!x||x.readyState===0||q==="abort"){E||
|
| 149 |
+
d();E=true;if(x)x.onreadystatechange=c.noop}else if(!E&&x&&(x.readyState===4||q==="timeout")){E=true;x.onreadystatechange=c.noop;i=q==="timeout"?"timeout":!c.httpSuccess(x)?"error":e.ifModified&&c.httpNotModified(x,e.url)?"notmodified":"success";var p;if(i==="success")try{o=c.httpData(x,e.dataType,e)}catch(v){i="parsererror";p=v}if(i==="success"||i==="notmodified")j||b();else c.handleError(e,x,i,p);d();q==="timeout"&&x.abort();if(e.async)x=null}};try{var h=x.abort;x.abort=function(){x&&h.call(x);
|
| 150 |
+
g("abort")}}catch(l){}e.async&&e.timeout>0&&setTimeout(function(){x&&!E&&g("timeout")},e.timeout);try{x.send(n==="POST"||n==="PUT"||n==="DELETE"?e.data:null)}catch(m){c.handleError(e,x,null,m);d()}e.async||g();return x}},handleError:function(a,b,d,f){if(a.error)a.error.call(a.context||a,b,d,f);if(a.global)(a.context?c(a.context):c.event).trigger("ajaxError",[b,a,f])},active:0,httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===
|
| 151 |
+
1223||a.status===0}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),f=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(f)c.etag[b]=f;return a.status===304||a.status===0},httpData:function(a,b,d){var f=a.getResponseHeader("content-type")||"",e=b==="xml"||!b&&f.indexOf("xml")>=0;a=e?a.responseXML:a.responseText;e&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b===
|
| 152 |
+
"json"||!b&&f.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&f.indexOf("javascript")>=0)c.globalEval(a);return a},param:function(a,b){function d(i,o){if(c.isArray(o))c.each(o,function(k,n){b||/\[\]$/.test(i)?f(i,n):d(i+"["+(typeof n==="object"||c.isArray(n)?k:"")+"]",n)});else!b&&o!=null&&typeof o==="object"?c.each(o,function(k,n){d(i+"["+k+"]",n)}):f(i,o)}function f(i,o){o=c.isFunction(o)?o():o;e[e.length]=encodeURIComponent(i)+"="+encodeURIComponent(o)}var e=[];if(b===w)b=c.ajaxSettings.traditional;
|
| 153 |
+
if(c.isArray(a)||a.jquery)c.each(a,function(){f(this.name,this.value)});else for(var j in a)d(j,a[j]);return e.join("&").replace(yb,"+")}});var la={},Ab=/toggle|show|hide/,Bb=/^([+-]=)?([\d+-.]+)(.*)$/,W,va=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b){if(a||a===0)return this.animate(K("show",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");
|
| 154 |
+
this[a].style.display=d||"";if(c.css(this[a],"display")==="none"){d=this[a].nodeName;var f;if(la[d])f=la[d];else{var e=c("<"+d+" />").appendTo("body");f=e.css("display");if(f==="none")f="block";e.remove();la[d]=f}c.data(this[a],"olddisplay",f)}}a=0;for(b=this.length;a<b;a++)this[a].style.display=c.data(this[a],"olddisplay")||"";return this}},hide:function(a,b){if(a||a===0)return this.animate(K("hide",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");!d&&d!=="none"&&c.data(this[a],
|
| 155 |
+
"olddisplay",c.css(this[a],"display"))}a=0;for(b=this.length;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b){var d=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||d?this.each(function(){var f=d?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(K("toggle",3),a,b);return this},fadeTo:function(a,b,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d)},
|
| 156 |
+
animate:function(a,b,d,f){var e=c.speed(b,d,f);if(c.isEmptyObject(a))return this.each(e.complete);return this[e.queue===false?"each":"queue"](function(){var j=c.extend({},e),i,o=this.nodeType===1&&c(this).is(":hidden"),k=this;for(i in a){var n=i.replace(ia,ja);if(i!==n){a[n]=a[i];delete a[i];i=n}if(a[i]==="hide"&&o||a[i]==="show"&&!o)return j.complete.call(this);if((i==="height"||i==="width")&&this.style){j.display=c.css(this,"display");j.overflow=this.style.overflow}if(c.isArray(a[i])){(j.specialEasing=
|
| 157 |
+
j.specialEasing||{})[i]=a[i][1];a[i]=a[i][0]}}if(j.overflow!=null)this.style.overflow="hidden";j.curAnim=c.extend({},a);c.each(a,function(r,u){var z=new c.fx(k,j,r);if(Ab.test(u))z[u==="toggle"?o?"show":"hide":u](a);else{var C=Bb.exec(u),B=z.cur(true)||0;if(C){u=parseFloat(C[2]);var E=C[3]||"px";if(E!=="px"){k.style[r]=(u||1)+E;B=(u||1)/z.cur(true)*B;k.style[r]=B+E}if(C[1])u=(C[1]==="-="?-1:1)*u+B;z.custom(B,u,E)}else z.custom(B,u,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);
|
| 158 |
+
this.each(function(){for(var f=d.length-1;f>=0;f--)if(d[f].elem===this){b&&d[f](true);d.splice(f,1)}});b||this.dequeue();return this}});c.each({slideDown:K("show",1),slideUp:K("hide",1),slideToggle:K("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,f){return this.animate(b,d,f)}});c.extend({speed:function(a,b,d){var f=a&&typeof a==="object"?a:{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};f.duration=c.fx.off?0:typeof f.duration===
|
| 159 |
+
"number"?f.duration:c.fx.speeds[f.duration]||c.fx.speeds._default;f.old=f.complete;f.complete=function(){f.queue!==false&&c(this).dequeue();c.isFunction(f.old)&&f.old.call(this)};return f},easing:{linear:function(a,b,d,f){return d+f*a},swing:function(a,b,d,f){return(-Math.cos(a*Math.PI)/2+0.5)*f+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||
|
| 160 |
+
c.fx.step._default)(this);if((this.prop==="height"||this.prop==="width")&&this.elem.style)this.elem.style.display="block"},cur:function(a){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];return(a=parseFloat(c.css(this.elem,this.prop,a)))&&a>-10000?a:parseFloat(c.curCSS(this.elem,this.prop))||0},custom:function(a,b,d){function f(j){return e.step(j)}this.startTime=J();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;
|
| 161 |
+
this.pos=this.state=0;var e=this;f.elem=this.elem;if(f()&&c.timers.push(f)&&!W)W=setInterval(c.fx.tick,13)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(a){var b=J(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=
|
| 162 |
+
this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var f in this.options.curAnim)if(this.options.curAnim[f]!==true)d=false;if(d){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;a=c.data(this.elem,"olddisplay");this.elem.style.display=a?a:this.options.display;if(c.css(this.elem,"display")==="none")this.elem.style.display="block"}this.options.hide&&c(this.elem).hide();if(this.options.hide||this.options.show)for(var e in this.options.curAnim)c.style(this.elem,
|
| 163 |
+
e,this.options.orig[e]);this.options.complete.call(this.elem)}return false}else{e=b-this.startTime;this.state=e/this.options.duration;a=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||a](this.state,e,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||
|
| 164 |
+
c.fx.stop()},stop:function(){clearInterval(W);W=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===b.elem}).length};c.fn.offset="getBoundingClientRect"in s.documentElement?
|
| 165 |
+
function(a){var b=this[0];if(a)return this.each(function(e){c.offset.setOffset(this,a,e)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);var d=b.getBoundingClientRect(),f=b.ownerDocument;b=f.body;f=f.documentElement;return{top:d.top+(self.pageYOffset||c.support.boxModel&&f.scrollTop||b.scrollTop)-(f.clientTop||b.clientTop||0),left:d.left+(self.pageXOffset||c.support.boxModel&&f.scrollLeft||b.scrollLeft)-(f.clientLeft||b.clientLeft||0)}}:function(a){var b=
|
| 166 |
+
this[0];if(a)return this.each(function(r){c.offset.setOffset(this,a,r)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d=b.offsetParent,f=b,e=b.ownerDocument,j,i=e.documentElement,o=e.body;f=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle;for(var k=b.offsetTop,n=b.offsetLeft;(b=b.parentNode)&&b!==o&&b!==i;){if(c.offset.supportsFixedPosition&&f.position==="fixed")break;j=e?e.getComputedStyle(b,null):b.currentStyle;
|
| 167 |
+
k-=b.scrollTop;n-=b.scrollLeft;if(b===d){k+=b.offsetTop;n+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(b.nodeName))){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=d;d=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&j.overflow!=="visible"){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=j}if(f.position==="relative"||f.position==="static"){k+=o.offsetTop;n+=o.offsetLeft}if(c.offset.supportsFixedPosition&&
|
| 168 |
+
f.position==="fixed"){k+=Math.max(i.scrollTop,o.scrollTop);n+=Math.max(i.scrollLeft,o.scrollLeft)}return{top:k,left:n}};c.offset={initialize:function(){var a=s.body,b=s.createElement("div"),d,f,e,j=parseFloat(c.curCSS(a,"marginTop",true))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";
|
| 169 |
+
a.insertBefore(b,a.firstChild);d=b.firstChild;f=d.firstChild;e=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=f.offsetTop!==5;this.doesAddBorderForTableAndCells=e.offsetTop===5;f.style.position="fixed";f.style.top="20px";this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15;f.style.position=f.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==j;a.removeChild(b);
|
| 170 |
+
c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.curCSS(a,"marginTop",true))||0;d+=parseFloat(c.curCSS(a,"marginLeft",true))||0}return{top:b,left:d}},setOffset:function(a,b,d){if(/static/.test(c.curCSS(a,"position")))a.style.position="relative";var f=c(a),e=f.offset(),j=parseInt(c.curCSS(a,"top",true),10)||0,i=parseInt(c.curCSS(a,"left",true),10)||0;if(c.isFunction(b))b=b.call(a,
|
| 171 |
+
d,e);d={top:b.top-e.top+j,left:b.left-e.left+i};"using"in b?b.using.call(a,d):f.css(d)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),f=/^body|html$/i.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.curCSS(a,"marginTop",true))||0;d.left-=parseFloat(c.curCSS(a,"marginLeft",true))||0;f.top+=parseFloat(c.curCSS(b[0],"borderTopWidth",true))||0;f.left+=parseFloat(c.curCSS(b[0],"borderLeftWidth",true))||0;return{top:d.top-
|
| 172 |
+
f.top,left:d.left-f.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||s.body;a&&!/^body|html$/i.test(a.nodeName)&&c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(f){var e=this[0],j;if(!e)return null;if(f!==w)return this.each(function(){if(j=wa(this))j.scrollTo(!a?f:c(j).scrollLeft(),a?f:c(j).scrollTop());else this[d]=f});else return(j=wa(e))?"pageXOffset"in j?j[a?"pageYOffset":
|
| 173 |
+
"pageXOffset"]:c.support.boxModel&&j.document.documentElement[d]||j.document.body[d]:e[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();c.fn["inner"+b]=function(){return this[0]?c.css(this[0],d,false,"padding"):null};c.fn["outer"+b]=function(f){return this[0]?c.css(this[0],d,false,f?"margin":"border"):null};c.fn[d]=function(f){var e=this[0];if(!e)return f==null?null:this;if(c.isFunction(f))return this.each(function(j){var i=c(this);i[d](f.call(this,j,i[d]()))});return"scrollTo"in
|
| 174 |
+
e&&e.document?e.document.compatMode==="CSS1Compat"&&e.document.documentElement["client"+b]||e.document.body["client"+b]:e.nodeType===9?Math.max(e.documentElement["client"+b],e.body["scroll"+b],e.documentElement["scroll"+b],e.body["offset"+b],e.documentElement["offset"+b]):f===w?c.css(e,d):this.css(d,typeof f==="string"?f:f+"px")}});A.jQuery=A.$=c})(window);
|
| 175 |
+
(function(){function f(a,b){if(b)for(key in b)if(b.hasOwnProperty(key))a[key]=b[key];return a}function l(a,b){var c=[];for(var d in a)if(a.hasOwnProperty(d))c[d]=b(a[d]);return c}function m(a,b,c){if(e.isSupported(b.version))a.innerHTML=e.getHTML(b,c);else if(b.expressInstall&&e.isSupported([6,65]))a.innerHTML=e.getHTML(f(b,{src:b.expressInstall}),{MMredirectURL:location.href,MMplayerType:"PlugIn",MMdoctitle:document.title});else{if(!a.innerHTML.replace(/\s/g,"")){a.innerHTML="<h2>Flash version "+
|
| 176 |
+
b.version+" or greater is required</h2><h3>"+(g[0]>0?"Your version is "+g:"You have no flash plugin installed")+"</h3>"+(a.tagName=="A"?"<p>Click here to download latest version</p>":"<p>Download latest version from <a href='"+k+"'>here</a></p>");if(a.tagName=="A")a.onclick=function(){location.href=k}}if(b.onFail){var d=b.onFail.call(this);if(typeof d=="string")a.innerHTML=d}}if(h)window[b.id]=document.getElementById(b.id);f(this,{getRoot:function(){return a},getOptions:function(){return b},getConf:function(){return c},
|
| 177 |
+
getApi:function(){return a.firstChild}})}var h=document.all,k="http://www.adobe.com/go/getflashplayer",n=typeof jQuery=="function",o=/(\d+)[^\d]+(\d+)[^\d]*(\d*)/,i={width:"100%",height:"100%",id:"_"+(""+Math.random()).slice(9),allowfullscreen:true,allowscriptaccess:"always",quality:"high",version:[3,0],onFail:null,expressInstall:null,w3c:false,cachebusting:false};window.attachEvent&&window.attachEvent("onbeforeunload",function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){}});
|
| 178 |
+
window.flashembed=function(a,b,c){if(typeof a=="string")a=document.getElementById(a.replace("#",""));if(a){if(typeof b=="string")b={src:b};return new m(a,f(f({},i),b),c)}};var e=f(window.flashembed,{conf:i,getVersion:function(){var a;try{a=navigator.plugins["Shockwave Flash"].description.slice(16)}catch(b){try{var c=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");a=c&&c.GetVariable("$version")}catch(d){}}return(a=o.exec(a))?[a[1],a[3]]:[0,0]},asString:function(a){if(a===null||a===undefined)return null;
|
| 179 |
+
var b=typeof a;if(b=="object"&&a.push)b="array";switch(b){case "string":a=a.replace(new RegExp('(["\\\\])',"g"),"\\$1");a=a.replace(/^\s?(\d+\.?\d+)%/,"$1pct");return'"'+a+'"';case "array":return"["+l(a,function(d){return e.asString(d)}).join(",")+"]";case "function":return'"function()"';case "object":b=[];for(var c in a)a.hasOwnProperty(c)&&b.push('"'+c+'":'+e.asString(a[c]));return"{"+b.join(",")+"}"}return String(a).replace(/\s/g," ").replace(/\'/g,'"')},getHTML:function(a,b){a=f({},a);var c='<object width="'+
|
| 180 |
+
a.width+'" height="'+a.height+'" id="'+a.id+'" name="'+a.id+'"';if(a.cachebusting)a.src+=(a.src.indexOf("?")!=-1?"&":"?")+Math.random();c+=a.w3c||!h?' data="'+a.src+'" type="application/x-shockwave-flash"':' classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"';c+=">";if(a.w3c||h)c+='<param name="movie" value="'+a.src+'" />';a.width=a.height=a.id=a.w3c=a.src=null;a.onFail=a.version=a.expressInstall=null;for(var d in a)if(a[d])c+='<param name="'+d+'" value="'+a[d]+'" />';a="";if(b){for(var j in b)if(b[j]){d=
|
| 181 |
+
b[j];a+=j+"="+(/function|object/.test(typeof d)?e.asString(d):d)+"&"}a=a.slice(0,-1);c+='<param name="flashvars" value=\''+a+"' />"}c+="</object>";return c},isSupported:function(a){return g[0]>a[0]||g[0]==a[0]&&g[1]>=a[1]}}),g=e.getVersion();if(n){jQuery.tools=jQuery.tools||{version:"1.2.3"};jQuery.tools.flashembed={conf:i};jQuery.fn.flashembed=function(a,b){return this.each(function(){$(this).data("flashembed",flashembed(this,a,b))})}}})();
|
| 182 |
+
(function(b){function h(c){if(c){var a=d.contentWindow.document;a.open().close();a.location.hash=c}}var g,d,f,i;b.tools=b.tools||{version:"1.2.3"};b.tools.history={init:function(c){if(!i){if(b.browser.msie&&b.browser.version<"8"){if(!d){d=b("<iframe/>").attr("src","javascript:false;").hide().get(0);b("body").append(d);setInterval(function(){var a=d.contentWindow.document;a=a.location.hash;g!==a&&b.event.trigger("hash",a)},100);h(location.hash||"#")}}else setInterval(function(){var a=location.hash;
|
| 183 |
+
a!==g&&b.event.trigger("hash",a)},100);f=!f?c:f.add(c);c.click(function(a){var e=b(this).attr("href");d&&h(e);if(e.slice(0,1)!="#"){location.href="#"+e;return a.preventDefault()}});i=true}}};b(window).bind("hash",function(c,a){a?f.filter(function(){var e=b(this).attr("href");return e==a||e==a.replace("#","")}).trigger("history",[a]):f.eq(0).trigger("history",[a]);g=a;window.location.hash=g});b.fn.history=function(c){b.tools.history.init(this);return this.bind("history",c)}})(jQuery);
|
| 184 |
+
(function(b){function k(){if(b.browser.msie){var a=b(document).height(),d=b(window).height();return[window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,a-d<20?d:a]}return[b(document).width(),b(document).height()]}function h(a){if(a)return a.call(b.mask)}b.tools=b.tools||{version:"1.2.3"};var l;l=b.tools.expose={conf:{maskId:"exposeMask",loadSpeed:"slow",closeSpeed:"fast",closeOnClick:true,closeOnEsc:true,zIndex:9998,opacity:0.8,startOpacity:0,color:"#fff",onLoad:null,
|
| 185 |
+
onClose:null}};var c,i,f,g,j;b.mask={load:function(a,d){if(f)return this;if(typeof a=="string")a={color:a};a=a||g;g=a=b.extend(b.extend({},l.conf),a);c=b("#"+a.maskId);if(!c.length){c=b("<div/>").attr("id",a.maskId);b("body").append(c)}var m=k();c.css({position:"absolute",top:0,left:0,width:m[0],height:m[1],display:"none",opacity:a.startOpacity,zIndex:a.zIndex});a.color&&c.css("backgroundColor",a.color);if(h(a.onBeforeLoad)===false)return this;a.closeOnEsc&&b(document).bind("keydown.mask",function(e){e.keyCode==
|
| 186 |
+
27&&b.mask.close(e)});a.closeOnClick&&c.bind("click.mask",function(e){b.mask.close(e)});b(window).bind("resize.mask",function(){b.mask.fit()});if(d&&d.length){j=d.eq(0).css("zIndex");b.each(d,function(){var e=b(this);/relative|absolute|fixed/i.test(e.css("position"))||e.css("position","relative")});i=d.css({zIndex:Math.max(a.zIndex+1,j=="auto"?0:j)})}c.css({display:"block"}).fadeTo(a.loadSpeed,a.opacity,function(){b.mask.fit();h(a.onLoad)});f=true;return this},close:function(){if(f){if(h(g.onBeforeClose)===
|
| 187 |
+
false)return this;c.fadeOut(g.closeSpeed,function(){h(g.onClose);i&&i.css({zIndex:j})});b(document).unbind("keydown.mask");c.unbind("click.mask");b(window).unbind("resize.mask");f=false}return this},fit:function(){if(f){var a=k();c.css({width:a[0],height:a[1]})}},getMask:function(){return c},isLoaded:function(){return f},getConf:function(){return g},getExposed:function(){return i}};b.fn.mask=function(a){b.mask.load(a);return this};b.fn.expose=function(a){b.mask.load(a,this);return this}})(jQuery);
|
| 188 |
+
(function(b){function c(a){switch(a.type){case "mousemove":return b.extend(a.data,{clientX:a.clientX,clientY:a.clientY,pageX:a.pageX,pageY:a.pageY});case "DOMMouseScroll":b.extend(a,a.data);a.delta=-a.detail/3;break;case "mousewheel":a.delta=a.wheelDelta/120;break}a.type="wheel";return b.event.handle.call(this,a,a.delta)}b.fn.mousewheel=function(a){return this[a?"bind":"trigger"]("wheel",a)};b.event.special.wheel={setup:function(){b.event.add(this,d,c,{})},teardown:function(){b.event.remove(this,
|
| 189 |
+
d,c)}};var d=!b.browser.mozilla?"mousewheel":"DOMMouseScroll"+(b.browser.version<"1.9"?" mousemove":"")})(jQuery);
|
| 190 |
+
(function(c){function p(e,b,a){var d=this,l=e.add(this),h=e.find(a.tabs),i=b.jquery?b:e.children(b),j;h.length||(h=e.children());i.length||(i=e.parent().find(b));i.length||(i=c(b));c.extend(this,{click:function(f,g){var k=h.eq(f);if(typeof f=="string"&&f.replace("#","")){k=h.filter("[href*="+f.replace("#","")+"]");f=Math.max(h.index(k),0)}if(a.rotate){var n=h.length-1;if(f<0)return d.click(n,g);if(f>n)return d.click(0,g)}if(!k.length){if(j>=0)return d;f=a.initialIndex;k=h.eq(f)}if(f===j)return d;
|
| 191 |
+
g=g||c.Event();g.type="onBeforeClick";l.trigger(g,[f]);if(!g.isDefaultPrevented()){o[a.effect].call(d,f,function(){g.type="onClick";l.trigger(g,[f])});j=f;h.removeClass(a.current);k.addClass(a.current);return d}},getConf:function(){return a},getTabs:function(){return h},getPanes:function(){return i},getCurrentPane:function(){return i.eq(j)},getCurrentTab:function(){return h.eq(j)},getIndex:function(){return j},next:function(){return d.click(j+1)},prev:function(){return d.click(j-1)},destroy:function(){h.unbind(a.event).removeClass(a.current);
|
| 192 |
+
i.find("a[href^=#]").unbind("click.T");return d}});c.each("onBeforeClick,onClick".split(","),function(f,g){c.isFunction(a[g])&&c(d).bind(g,a[g]);d[g]=function(k){c(d).bind(g,k);return d}});if(a.history&&c.fn.history){c.tools.history.init(h);a.event="history"}h.each(function(f){c(this).bind(a.event,function(g){d.click(f,g);return g.preventDefault()})});i.find("a[href^=#]").bind("click.T",function(f){d.click(c(this).attr("href"),f)});if(location.hash)d.click(location.hash);else if(a.initialIndex===
|
| 193 |
+
0||a.initialIndex>0)d.click(a.initialIndex)}c.tools=c.tools||{version:"1.2.3"};c.tools.tabs={conf:{tabs:"a",current:"current",onBeforeClick:null,onClick:null,effect:"default",initialIndex:0,event:"click",rotate:false,history:false},addEffect:function(e,b){o[e]=b}};var o={"default":function(e,b){this.getPanes().hide().eq(e).show();b.call()},fade:function(e,b){var a=this.getConf(),d=a.fadeOutSpeed,l=this.getPanes();d?l.fadeOut(d):l.hide();l.eq(e).fadeIn(a.fadeInSpeed,b)},slide:function(e,b){this.getPanes().slideUp(200);
|
| 194 |
+
this.getPanes().eq(e).slideDown(400,b)},ajax:function(e,b){this.getPanes().eq(0).load(this.getTabs().eq(e).attr("href"),b)}},m;c.tools.tabs.addEffect("horizontal",function(e,b){m||(m=this.getPanes().eq(0).width());this.getCurrentPane().animate({width:0},function(){c(this).hide()});this.getPanes().eq(e).animate({width:m},function(){c(this).show();b.call()})});c.fn.tabs=function(e,b){var a=this.data("tabs");if(a){a.destroy();this.removeData("tabs")}if(c.isFunction(b))b={onBeforeClick:b};b=c.extend({},
|
| 195 |
+
c.tools.tabs.conf,b);this.each(function(){a=new p(c(this),e,b);c(this).data("tabs",a)});return b.api?a:this}})(jQuery);
|
| 196 |
+
(function(d){function r(g,a){function p(f){var e=d(f);return e.length<2?e:g.parent().find(f)}var c=this,j=g.add(this),b=g.data("tabs"),h,l,m,n=false,o=p(a.next).click(function(){b.next()}),k=p(a.prev).click(function(){b.prev()});d.extend(c,{getTabs:function(){return b},getConf:function(){return a},play:function(){if(!h){var f=d.Event("onBeforePlay");j.trigger(f);if(f.isDefaultPrevented())return c;n=false;h=setInterval(b.next,a.interval);j.trigger("onPlay");b.next()}},pause:function(){if(!h)return c;
|
| 197 |
+
var f=d.Event("onBeforePause");j.trigger(f);if(f.isDefaultPrevented())return c;h=clearInterval(h);m=clearInterval(m);j.trigger("onPause")},stop:function(){c.pause();n=true}});d.each("onBeforePlay,onPlay,onBeforePause,onPause".split(","),function(f,e){d.isFunction(a[e])&&c.bind(e,a[e]);c[e]=function(s){return c.bind(e,s)}});if(a.autopause){var t=b.getTabs().add(o).add(k).add(b.getPanes());t.hover(function(){c.pause();l=clearInterval(l)},function(){n||(l=setTimeout(c.play,a.interval))})}if(a.autoplay)m=
|
| 198 |
+
setTimeout(c.play,a.interval);else c.stop();a.clickable&&b.getPanes().click(function(){b.next()});if(!b.getConf().rotate){var i=a.disabledClass;b.getIndex()||k.addClass(i);b.onBeforeClick(function(f,e){if(e){k.removeClass(i);e==b.getTabs().length-1?o.addClass(i):o.removeClass(i)}else k.addClass(i)})}}var q;q=d.tools.tabs.slideshow={conf:{next:".forward",prev:".backward",disabledClass:"disabled",autoplay:false,autopause:true,interval:3E3,clickable:true,api:false}};d.fn.slideshow=function(g){var a=
|
| 199 |
+
this.data("slideshow");if(a)return a;g=d.extend({},q.conf,g);this.each(function(){a=new r(d(this),g);d(this).data("slideshow",a)});return g.api?a:this}})(jQuery);
|
| 200 |
+
(function(f){function p(a,b,c){var h=c.relative?a.position().top:a.offset().top,e=c.relative?a.position().left:a.offset().left,i=c.position[0];h-=b.outerHeight()-c.offset[0];e+=a.outerWidth()+c.offset[1];var j=b.outerHeight()+a.outerHeight();if(i=="center")h+=j/2;if(i=="bottom")h+=j;i=c.position[1];a=b.outerWidth()+a.outerWidth();if(i=="center")e-=a/2;if(i=="left")e-=a;return{top:h,left:e}}function t(a,b){var c=this,h=a.add(c),e,i=0,j=0,m=a.attr("title"),q=n[b.effect],k,r=a.is(":input"),u=r&&a.is(":checkbox, :radio, select, :button, :submit"),
|
| 201 |
+
s=a.attr("type"),l=b.events[s]||b.events[r?u?"widget":"input":"def"];if(!q)throw'Nonexistent effect "'+b.effect+'"';l=l.split(/,\s*/);if(l.length!=2)throw"Tooltip: bad events configuration for "+s;a.bind(l[0],function(d){clearTimeout(i);if(b.predelay)j=setTimeout(function(){c.show(d)},b.predelay);else c.show(d)}).bind(l[1],function(d){clearTimeout(j);if(b.delay)i=setTimeout(function(){c.hide(d)},b.delay);else c.hide(d)});if(m&&b.cancelDefault){a.removeAttr("title");a.data("title",m)}f.extend(c,{show:function(d){if(!e){if(m)e=
|
| 202 |
+
f(b.layout).addClass(b.tipClass).appendTo(document.body).hide().append(m);else if(b.tip)e=f(b.tip).eq(0);else{e=a.next();e.length||(e=a.parent().next())}if(!e.length)throw"Cannot find tooltip for "+a;}if(c.isShown())return c;e.stop(true,true);var g=p(a,e,b);d=d||f.Event();d.type="onBeforeShow";h.trigger(d,[g]);if(d.isDefaultPrevented())return c;g=p(a,e,b);e.css({position:"absolute",top:g.top,left:g.left});k=true;q[0].call(c,function(){d.type="onShow";k="full";h.trigger(d)});g=b.events.tooltip.split(/,\s*/);
|
| 203 |
+
e.bind(g[0],function(){clearTimeout(i);clearTimeout(j)});g[1]&&!a.is("input:not(:checkbox, :radio), textarea")&&e.bind(g[1],function(o){o.relatedTarget!=a[0]&&a.trigger(l[1].split(" ")[0])});return c},hide:function(d){if(!e||!c.isShown())return c;d=d||f.Event();d.type="onBeforeHide";h.trigger(d);if(!d.isDefaultPrevented()){k=false;n[b.effect][1].call(c,function(){d.type="onHide";k=false;h.trigger(d)});return c}},isShown:function(d){return d?k=="full":k},getConf:function(){return b},getTip:function(){return e},
|
| 204 |
+
getTrigger:function(){return a}});f.each("onHide,onBeforeShow,onShow,onBeforeHide".split(","),function(d,g){f.isFunction(b[g])&&f(c).bind(g,b[g]);c[g]=function(o){f(c).bind(g,o);return c}})}f.tools=f.tools||{version:"1.2.3"};f.tools.tooltip={conf:{effect:"toggle",fadeOutSpeed:"fast",predelay:0,delay:30,opacity:1,tip:0,position:["top","center"],offset:[0,0],relative:false,cancelDefault:true,events:{def:"mouseenter,mouseleave",input:"focus,blur",widget:"focus mouseenter,blur mouseleave",tooltip:"mouseenter,mouseleave"},
|
| 205 |
+
layout:"<div/>",tipClass:"tooltip"},addEffect:function(a,b,c){n[a]=[b,c]}};var n={toggle:[function(a){var b=this.getConf(),c=this.getTip();b=b.opacity;b<1&&c.css({opacity:b});c.show();a.call()},function(a){this.getTip().hide();a.call()}],fade:[function(a){var b=this.getConf();this.getTip().fadeTo(b.fadeInSpeed,b.opacity,a)},function(a){this.getTip().fadeOut(this.getConf().fadeOutSpeed,a)}]};f.fn.tooltip=function(a){var b=this.data("tooltip");if(b)return b;a=f.extend(true,{},f.tools.tooltip.conf,a);
|
| 206 |
+
if(typeof a.position=="string")a.position=a.position.split(/,?\s/);this.each(function(){b=new t(f(this),a);f(this).data("tooltip",b)});return a.api?b:this}})(jQuery);
|
| 207 |
+
(function(d){var i=d.tools.tooltip;d.extend(i.conf,{direction:"up",bounce:false,slideOffset:10,slideInSpeed:200,slideOutSpeed:200,slideFade:!d.browser.msie});var e={up:["-","top"],down:["+","top"],left:["-","left"],right:["+","left"]};i.addEffect("slide",function(g){var a=this.getConf(),f=this.getTip(),b=a.slideFade?{opacity:a.opacity}:{},c=e[a.direction]||e.up;b[c[1]]=c[0]+"="+a.slideOffset;a.slideFade&&f.css({opacity:0});f.show().animate(b,a.slideInSpeed,g)},function(g){var a=this.getConf(),f=a.slideOffset,
|
| 208 |
+
b=a.slideFade?{opacity:0}:{},c=e[a.direction]||e.up,h=""+c[0];if(a.bounce)h=h=="+"?"-":"+";b[c[1]]=h+"="+f;this.getTip().animate(b,a.slideOutSpeed,function(){d(this).hide();g.call()})})})(jQuery);
|
| 209 |
+
(function(g){function j(a){var c=g(window),d=c.width()+c.scrollLeft(),h=c.height()+c.scrollTop();return[a.offset().top<=c.scrollTop(),d<=a.offset().left+a.width(),h<=a.offset().top+a.height(),c.scrollLeft()>=a.offset().left]}function k(a){for(var c=a.length;c--;)if(a[c])return false;return true}var i=g.tools.tooltip;i.dynamic={conf:{classNames:"top right bottom left"}};g.fn.dynamic=function(a){if(typeof a=="number")a={speed:a};a=g.extend({},i.dynamic.conf,a);var c=a.classNames.split(/\s/),d;this.each(function(){var h=
|
| 210 |
+
g(this).tooltip().onBeforeShow(function(e,f){e=this.getTip();var b=this.getConf();d||(d=[b.position[0],b.position[1],b.offset[0],b.offset[1],g.extend({},b)]);g.extend(b,d[4]);b.position=[d[0],d[1]];b.offset=[d[2],d[3]];e.css({visibility:"hidden",position:"absolute",top:f.top,left:f.left}).show();f=j(e);if(!k(f)){if(f[2]){g.extend(b,a.top);b.position[0]="top";e.addClass(c[0])}if(f[3]){g.extend(b,a.right);b.position[1]="right";e.addClass(c[1])}if(f[0]){g.extend(b,a.bottom);b.position[0]="bottom";e.addClass(c[2])}if(f[1]){g.extend(b,
|
| 211 |
+
a.left);b.position[1]="left";e.addClass(c[3])}if(f[0]||f[2])b.offset[0]*=-1;if(f[1]||f[3])b.offset[1]*=-1}e.css({visibility:"visible"}).hide()});h.onBeforeShow(function(){var e=this.getConf();this.getTip();setTimeout(function(){e.position=[d[0],d[1]];e.offset=[d[2],d[3]]},0)});h.onHide(function(){var e=this.getTip();e.removeClass(a.classNames)});ret=h});return a.api?ret:this}})(jQuery);
|
| 212 |
+
(function(e){function n(f,c){var a=e(c);return a.length<2?a:f.parent().find(c)}function t(f,c){var a=this,l=f.add(a),g=f.children(),k=0,m=c.vertical;j||(j=a);if(g.length>1)g=e(c.items,f);e.extend(a,{getConf:function(){return c},getIndex:function(){return k},getSize:function(){return a.getItems().size()},getNaviButtons:function(){return o.add(p)},getRoot:function(){return f},getItemWrap:function(){return g},getItems:function(){return g.children(c.item).not("."+c.clonedClass)},move:function(b,d){return a.seekTo(k+
|
| 213 |
+
b,d)},next:function(b){return a.move(1,b)},prev:function(b){return a.move(-1,b)},begin:function(b){return a.seekTo(0,b)},end:function(b){return a.seekTo(a.getSize()-1,b)},focus:function(){return j=a},addItem:function(b){b=e(b);if(c.circular){e(".cloned:last").before(b);e(".cloned:first").replaceWith(b.clone().addClass(c.clonedClass))}else g.append(b);l.trigger("onAddItem",[b]);return a},seekTo:function(b,d,h){if(c.circular&&b===0&&k==-1&&d!==0)return a;if(!c.circular&&b<0||b>a.getSize()||b<-1)return a;
|
| 214 |
+
var i=b;if(b.jquery)b=a.getItems().index(b);else i=a.getItems().eq(b);var q=e.Event("onBeforeSeek");if(!h){l.trigger(q,[b,d]);if(q.isDefaultPrevented()||!i.length)return a}i=m?{top:-i.position().top}:{left:-i.position().left};k=b;j=a;if(d===undefined)d=c.speed;g.animate(i,d,c.easing,h||function(){l.trigger("onSeek",[b])});return a}});e.each(["onBeforeSeek","onSeek","onAddItem"],function(b,d){e.isFunction(c[d])&&e(a).bind(d,c[d]);a[d]=function(h){e(a).bind(d,h);return a}});if(c.circular){var r=a.getItems().slice(-1).clone().prependTo(g),
|
| 215 |
+
s=a.getItems().eq(1).clone().appendTo(g);r.add(s).addClass(c.clonedClass);a.onBeforeSeek(function(b,d,h){if(!b.isDefaultPrevented())if(d==-1){a.seekTo(r,h,function(){a.end(0)});return b.preventDefault()}else d==a.getSize()&&a.seekTo(s,h,function(){a.begin(0)})});a.seekTo(0,0)}var o=n(f,c.prev).click(function(){a.prev()}),p=n(f,c.next).click(function(){a.next()});!c.circular&&a.getSize()>1&&a.onBeforeSeek(function(b,d){setTimeout(function(){if(!b.isDefaultPrevented()){o.toggleClass(c.disabledClass,
|
| 216 |
+
d<=0);p.toggleClass(c.disabledClass,d>=a.getSize()-1)}},1)});c.mousewheel&&e.fn.mousewheel&&f.mousewheel(function(b,d){if(c.mousewheel){a.move(d<0?1:-1,c.wheelSpeed||50);return false}});c.keyboard&&e(document).bind("keydown.scrollable",function(b){if(!(!c.keyboard||b.altKey||b.ctrlKey||e(b.target).is(":input")))if(!(c.keyboard!="static"&&j!=a)){var d=b.keyCode;if(m&&(d==38||d==40)){a.move(d==38?-1:1);return b.preventDefault()}if(!m&&(d==37||d==39)){a.move(d==37?-1:1);return b.preventDefault()}}});
|
| 217 |
+
e(a).trigger("onBeforeSeek",[c.initialIndex])}e.tools=e.tools||{version:"1.2.3"};e.tools.scrollable={conf:{activeClass:"active",circular:false,clonedClass:"cloned",disabledClass:"disabled",easing:"swing",initialIndex:0,item:null,items:".items",keyboard:true,mousewheel:false,next:".next",prev:".prev",speed:400,vertical:false,wheelSpeed:0}};var j;e.fn.scrollable=function(f){var c=this.data("scrollable");if(c)return c;f=e.extend({},e.tools.scrollable.conf,f);this.each(function(){c=new t(e(this),f);e(this).data("scrollable",
|
| 218 |
+
c)});return f.api?c:this}})(jQuery);
|
| 219 |
+
(function(c){var g=c.tools.scrollable;g.autoscroll={conf:{autoplay:true,interval:3E3,autopause:true}};c.fn.autoscroll=function(d){if(typeof d=="number")d={interval:d};var b=c.extend({},g.autoscroll.conf,d),h;this.each(function(){var a=c(this).data("scrollable");if(a)h=a;var e,i,f=true;a.play=function(){if(!e){f=false;e=setInterval(function(){a.next()},b.interval);a.next()}};a.pause=function(){e=clearInterval(e)};a.stop=function(){a.pause();f=true};b.autopause&&a.getRoot().add(a.getNaviButtons()).hover(function(){a.pause();
|
| 220 |
+
clearInterval(i)},function(){f||(i=setTimeout(a.play,b.interval))});b.autoplay&&setTimeout(a.play,b.interval)});return b.api?h:this}})(jQuery);
|
| 221 |
+
(function(d){function p(c,g){var h=d(g);return h.length<2?h:c.parent().find(g)}var m=d.tools.scrollable;m.navigator={conf:{navi:".navi",naviItem:null,activeClass:"active",indexed:false,idPrefix:null,history:false}};d.fn.navigator=function(c){if(typeof c=="string")c={navi:c};c=d.extend({},m.navigator.conf,c);var g;this.each(function(){function h(a,b,i){e.seekTo(b);if(j){if(location.hash)location.hash=a.attr("href").replace("#","")}else return i.preventDefault()}function f(){return k.find(c.naviItem||
|
| 222 |
+
"> *")}function n(a){var b=d("<"+(c.naviItem||"a")+"/>").click(function(i){h(d(this),a,i)}).attr("href","#"+a);a===0&&b.addClass(l);c.indexed&&b.text(a+1);c.idPrefix&&b.attr("id",c.idPrefix+a);return b.appendTo(k)}function o(a,b){a=f().eq(b.replace("#",""));a.length||(a=f().filter("[href="+b+"]"));a.click()}var e=d(this).data("scrollable"),k=p(e.getRoot(),c.navi),q=e.getNaviButtons(),l=c.activeClass,j=c.history&&d.fn.history;if(e)g=e;e.getNaviButtons=function(){return q.add(k)};f().length?f().each(function(a){d(this).click(function(b){h(d(this),
|
| 223 |
+
a,b)})}):d.each(e.getItems(),function(a){n(a)});e.onBeforeSeek(function(a,b){setTimeout(function(){if(!a.isDefaultPrevented()){var i=f().eq(b);!a.isDefaultPrevented()&&i.length&&f().removeClass(l).eq(b).addClass(l)}},1)});e.onAddItem(function(a,b){b=n(e.getItems().index(b));j&&b.history(o)});j&&f().history(o)});return c.api?g:this}})(jQuery);
|
| 224 |
+
(function(a){function t(d,b){var c=this,i=d.add(c),o=a(window),k,f,m,g=a.tools.expose&&(b.mask||b.expose),n=Math.random().toString().slice(10);if(g){if(typeof g=="string")g={color:g};g.closeOnClick=g.closeOnEsc=false}var p=b.target||d.attr("rel");f=p?a(p):d;if(!f.length)throw"Could not find Overlay: "+p;d&&d.index(f)==-1&&d.click(function(e){c.load(e);return e.preventDefault()});a.extend(c,{load:function(e){if(c.isOpened())return c;var h=q[b.effect];if(!h)throw'Overlay: cannot find effect : "'+b.effect+
|
| 225 |
+
'"';b.oneInstance&&a.each(s,function(){this.close(e)});e=e||a.Event();e.type="onBeforeLoad";i.trigger(e);if(e.isDefaultPrevented())return c;m=true;g&&a(f).expose(g);var j=b.top,r=b.left,u=f.outerWidth({margin:true}),v=f.outerHeight({margin:true});if(typeof j=="string")j=j=="center"?Math.max((o.height()-v)/2,0):parseInt(j,10)/100*o.height();if(r=="center")r=Math.max((o.width()-u)/2,0);h[0].call(c,{top:j,left:r},function(){if(m){e.type="onLoad";i.trigger(e)}});g&&b.closeOnClick&&a.mask.getMask().one("click",
|
| 226 |
+
c.close);b.closeOnClick&&a(document).bind("click."+n,function(l){a(l.target).parents(f).length||c.close(l)});b.closeOnEsc&&a(document).bind("keydown."+n,function(l){l.keyCode==27&&c.close(l)});return c},close:function(e){if(!c.isOpened())return c;e=e||a.Event();e.type="onBeforeClose";i.trigger(e);if(!e.isDefaultPrevented()){m=false;q[b.effect][1].call(c,function(){e.type="onClose";i.trigger(e)});a(document).unbind("click."+n).unbind("keydown."+n);g&&a.mask.close();return c}},getOverlay:function(){return f},
|
| 227 |
+
getTrigger:function(){return d},getClosers:function(){return k},isOpened:function(){return m},getConf:function(){return b}});a.each("onBeforeLoad,onStart,onLoad,onBeforeClose,onClose".split(","),function(e,h){a.isFunction(b[h])&&a(c).bind(h,b[h]);c[h]=function(j){a(c).bind(h,j);return c}});k=f.find(b.close||".close");if(!k.length&&!b.close){k=a('<a class="close"></a>');f.prepend(k)}k.click(function(e){c.close(e)});b.load&&c.load()}a.tools=a.tools||{version:"1.2.3"};a.tools.overlay={addEffect:function(d,
|
| 228 |
+
b,c){q[d]=[b,c]},conf:{close:null,closeOnClick:true,closeOnEsc:true,closeSpeed:"fast",effect:"default",fixed:!a.browser.msie||a.browser.version>6,left:"center",load:false,mask:null,oneInstance:true,speed:"normal",target:null,top:"10%"}};var s=[],q={};a.tools.overlay.addEffect("default",function(d,b){var c=this.getConf(),i=a(window);if(!c.fixed){d.top+=i.scrollTop();d.left+=i.scrollLeft()}d.position=c.fixed?"fixed":"absolute";this.getOverlay().css(d).fadeIn(c.speed,b)},function(d){this.getOverlay().fadeOut(this.getConf().closeSpeed,
|
| 229 |
+
d)});a.fn.overlay=function(d){var b=this.data("overlay");if(b)return b;if(a.isFunction(d))d={onBeforeLoad:d};d=a.extend(true,{},a.tools.overlay.conf,d);this.each(function(){b=new t(a(this),d);s.push(b);a(this).data("overlay",b)});return d.api?b:this}})(jQuery);
|
| 230 |
+
(function(i){function j(b){var d=b.offset();return{top:d.top+b.height()/2,left:d.left+b.width()/2}}var k=i.tools.overlay,f=i(window);i.extend(k.conf,{start:{top:null,left:null},fadeInSpeed:"fast",zIndex:9999});function n(b,d){var a=this.getOverlay(),c=this.getConf(),g=this.getTrigger(),o=this,l=a.outerWidth({margin:true}),h=a.data("img");if(!h){var e=a.css("backgroundImage");if(!e)throw"background-image CSS property not set for overlay";e=e.slice(e.indexOf("(")+1,e.indexOf(")")).replace(/\"/g,"");
|
| 231 |
+
a.css("backgroundImage","none");h=i('<img src="'+e+'"/>');h.css({border:0,display:"none"}).width(l);i("body").append(h);a.data("img",h)}e=c.start.top||Math.round(f.height()/2);var m=c.start.left||Math.round(f.width()/2);if(g){g=j(g);e=g.top;m=g.left}h.css({position:"absolute",top:e,left:m,width:0,zIndex:c.zIndex}).show();b.top+=f.scrollTop();b.left+=f.scrollLeft();b.position="absolute";a.css(b);h.animate({top:a.css("top"),left:a.css("left"),width:l},c.speed,function(){if(c.fixed){b.top-=f.scrollTop();
|
| 232 |
+
b.left-=f.scrollLeft();b.position="fixed";h.add(a).css(b)}a.css("zIndex",c.zIndex+1).fadeIn(c.fadeInSpeed,function(){o.isOpened()&&!i(this).index(a)?d.call():a.hide()})})}function p(b){var d=this.getOverlay().hide(),a=this.getConf(),c=this.getTrigger();d=d.data("img");var g={top:a.start.top,left:a.start.left,width:0};c&&i.extend(g,j(c));a.fixed&&d.css({position:"absolute"}).animate({top:"+="+f.scrollTop(),left:"+="+f.scrollLeft()},0);d.animate(g,a.closeSpeed,b)}k.addEffect("apple",n,p)})(jQuery);
|
| 233 |
+
(function(d){function R(b,c){return 32-(new Date(b,c,32)).getDate()}function S(b,c){b=""+b;for(c=c||2;b.length<c;)b="0"+b;return b}function T(b,c,j){var m=b.getDate(),h=b.getDay(),t=b.getMonth();b=b.getFullYear();var f={d:m,dd:S(m),ddd:B[j].shortDays[h],dddd:B[j].days[h],m:t+1,mm:S(t+1),mmm:B[j].shortMonths[t],mmmm:B[j].months[t],yy:String(b).slice(2),yyyy:b};c=c.replace(X,function(o){return o in f?f[o]:o.slice(1,o.length-1)});return Y.html(c).html()}function y(b){return parseInt(b,10)}function U(b,
|
| 234 |
+
c){return b.getFullYear()===c.getFullYear()&&b.getMonth()==c.getMonth()&&b.getDate()==c.getDate()}function C(b){if(b){if(b.constructor==Date)return b;if(typeof b=="string"){var c=b.split("-");if(c.length==3)return new Date(y(c[0]),y(c[1])-1,y(c[2]));if(!/^-?\d+$/.test(b))return;b=y(b)}c=new Date;c.setDate(c.getDate()+b);return c}}function Z(b,c){function j(a,e,g){l=a;D=a.getFullYear();E=a.getMonth();G=a.getDate();g=g||d.Event("api");g.type="change";H.trigger(g,[a]);if(!g.isDefaultPrevented()){b.val(T(a,
|
| 235 |
+
e.format,e.lang));b.data("date",a);h.hide(g)}}function m(a){a.type="onShow";H.trigger(a);d(document).bind("keydown.d",function(e){var g=e.keyCode;if(g==8){b.val("");return h.hide(e)}if(g==27)return h.hide(e);if(d(V).index(g)>=0){if(!u){h.show(e);return e.preventDefault()}var i=d("#"+f.weeks+" a"),p=d("."+f.focus),q=i.index(p);p.removeClass(f.focus);if(g==74||g==40)q+=7;else if(g==75||g==38)q-=7;else if(g==76||g==39)q+=1;else if(g==72||g==37)q-=1;if(q==-1){h.addMonth(-1);p=d("#"+f.weeks+" a:last")}else if(q==
|
| 236 |
+
35){h.addMonth();p=d("#"+f.weeks+" a:first")}else p=i.eq(q);p.addClass(f.focus);return e.preventDefault()}if(g==34)return h.addMonth();if(g==33)return h.addMonth(-1);if(g==36)return h.today();if(g==13)d(e.target).is("select")||d("."+f.focus).click();return d([16,17,18,9]).index(g)>=0});d(document).bind("click.d",function(e){var g=e.target;if(!d(g).parents("#"+f.root).length&&g!=b[0]&&(!K||g!=K[0]))h.hide(e)})}var h=this,t=new Date,f=c.css,o=B[c.lang],k=d("#"+f.root),L=k.find("#"+f.title),K,I,J,D,
|
| 237 |
+
E,G,l=b.attr("data-value")||c.value||b.val(),r=b.attr("min")||c.min,s=b.attr("max")||c.max,u;l=C(l)||t;r=C(r||c.yearRange[0]*365);s=C(s||c.yearRange[1]*365);if(!o)throw"Dateinput: invalid language: "+c.lang;if(b.attr("type")=="date"){var M=d("<input/>");d.each("name,readonly,disabled,value,required".split(","),function(a,e){M.attr(e,b.attr(e))});b.replaceWith(M);b=M}b.addClass(f.input);var H=b.add(h);if(!k.length){k=d("<div><div><a/><div/><a/></div><div><div/><div/></div></div>").hide().css({position:"absolute"}).attr("id",
|
| 238 |
+
f.root);k.children().eq(0).attr("id",f.head).end().eq(1).attr("id",f.body).children().eq(0).attr("id",f.days).end().eq(1).attr("id",f.weeks).end().end().end().find("a").eq(0).attr("id",f.prev).end().eq(1).attr("id",f.next);L=k.find("#"+f.head).find("div").attr("id",f.title);if(c.selectors){var z=d("<select/>").attr("id",f.month),A=d("<select/>").attr("id",f.year);L.append(z.add(A))}for(var $=k.find("#"+f.days),N=0;N<7;N++)$.append(d("<span/>").text(o.shortDays[(N+c.firstDay)%7]));b.after(k)}if(c.trigger)K=
|
| 239 |
+
d("<a/>").attr("href","#").addClass(f.trigger).click(function(a){h.show();return a.preventDefault()}).insertAfter(b);var O=k.find("#"+f.weeks);A=k.find("#"+f.year);z=k.find("#"+f.month);d.extend(h,{show:function(a){if(!(b.is("[readonly]")||u)){a=a||d.Event();a.type="onBeforeShow";H.trigger(a);if(!a.isDefaultPrevented()){d.each(W,function(){this.hide()});u=true;z.unbind("change").change(function(){h.setValue(A.val(),d(this).val())});A.unbind("change").change(function(){h.setValue(d(this).val(),z.val())});
|
| 240 |
+
I=k.find("#"+f.prev).unbind("click").click(function(){I.hasClass(f.disabled)||h.addMonth(-1);return false});J=k.find("#"+f.next).unbind("click").click(function(){J.hasClass(f.disabled)||h.addMonth();return false});h.setValue(l);var e=b.position();k.css({top:e.top+b.outerHeight({margins:true})+c.offset[0],left:e.left+c.offset[1]});if(c.speed)k.show(c.speed,function(){m(a)});else{k.show();m(a)}return h}}},setValue:function(a,e,g){var i;if(parseInt(e,10)>=-1){a=y(a);e=y(e);g=y(g);i=new Date(a,e,g)}else{i=
|
| 241 |
+
a||l;a=i.getFullYear();e=i.getMonth();g=i.getDate()}if(e==-1){e=11;a--}else if(e==12){e=0;a++}if(!u){j(i,c);return h}E=e;D=a;i=new Date(a,e,1-c.firstDay);g=i.getDay();var p=R(a,e),q=R(a,e-1),P;if(c.selectors){z.empty();d.each(o.months,function(v,F){r<new Date(a,v+1,-1)&&s>new Date(a,v,0)&&z.append(d("<option/>").html(F).attr("value",v))});A.empty();for(i=a+c.yearRange[0];i<a+c.yearRange[1];i++)r<new Date(i+1,-1,0)&&s>new Date(i,0,0)&&A.append(d("<option/>").text(i));z.val(e);A.val(a)}else L.html(o.months[e]+
|
| 242 |
+
" "+a);O.empty();I.add(J).removeClass(f.disabled);for(var w=0,n,x;w<42;w++){n=d("<a/>");if(w%7===0){P=d("<div/>").addClass(f.week);O.append(P)}if(w<g){n.addClass(f.off);x=q-g+w+1;i=new Date(a,e-1,x)}else if(w>=g+p){n.addClass(f.off);x=w-p-g+1;i=new Date(a,e+1,x)}else{x=w-g+1;i=new Date(a,e,x);if(U(l,i))n.attr("id",f.current).addClass(f.focus);else U(t,i)&&n.attr("id",f.today)}r&&i<r&&n.add(I).addClass(f.disabled);s&&i>s&&n.add(J).addClass(f.disabled);n.attr("href","#"+x).text(x).data("date",i);P.append(n);
|
| 243 |
+
n.click(function(v){var F=d(this);if(!F.hasClass(f.disabled)){d("#"+f.current).removeAttr("id");F.attr("id",f.current);j(F.data("date"),c,v)}return false})}f.sunday&&O.find(f.week).each(function(){var v=c.firstDay?7-c.firstDay:0;d(this).children().slice(v,v+1).addClass(f.sunday)});return h},setMin:function(a,e){r=C(a);e&&l<r&&h.setValue(r);return h},setMax:function(a,e){s=C(a);e&&l>s&&h.setValue(s);return h},today:function(){return h.setValue(t)},addDay:function(a){return this.setValue(D,E,G+(a||
|
| 244 |
+
1))},addMonth:function(a){return this.setValue(D,E+(a||1),G)},addYear:function(a){return this.setValue(D+(a||1),E,G)},hide:function(a){if(u){a=a||d.Event();a.type="onHide";H.trigger(a);d(document).unbind("click.d").unbind("keydown.d");if(a.isDefaultPrevented())return;k.hide();u=false}return h},getConf:function(){return c},getInput:function(){return b},getCalendar:function(){return k},getValue:function(a){return a?T(l,a,c.lang):l},isOpen:function(){return u}});d.each(["onBeforeShow","onShow","change",
|
| 245 |
+
"onHide"],function(a,e){d.isFunction(c[e])&&d(h).bind(e,c[e]);h[e]=function(g){d(h).bind(e,g);return h}});b.bind("focus click",h.show).keydown(function(a){var e=a.keyCode;if(!u&&d(V).index(e)>=0){h.show(a);return a.preventDefault()}return a.shiftKey||a.ctrlKey||a.altKey||e==9?true:a.preventDefault()});C(b.val())&&j(l,c)}d.tools=d.tools||{version:"1.2.3"};var W=[],Q,V=[75,76,38,39,74,72,40,37],B={};Q=d.tools.dateinput={conf:{format:"mm/dd/yy",selectors:false,yearRange:[-5,5],lang:"en",offset:[0,0],
|
| 246 |
+
speed:0,firstDay:0,min:0,max:0,trigger:false,css:{prefix:"cal",input:"date",root:0,head:0,title:0,prev:0,next:0,month:0,year:0,days:0,body:0,weeks:0,today:0,current:0,week:0,off:0,sunday:0,focus:0,disabled:0,trigger:0}},localize:function(b,c){d.each(c,function(j,m){c[j]=m.split(",")});B[b]=c}};Q.localize("en",{months:"January,February,March,April,May,June,July,August,September,October,November,December",shortMonths:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec",days:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday",
|
| 247 |
+
shortDays:"Sun,Mon,Tue,Wed,Thu,Fri,Sat"});var X=/d{1,4}|m{1,4}|yy(?:yy)?|"[^"]*"|'[^']*'/g,Y=d("<a/>");d.expr[":"].date=function(b){var c=b.getAttribute("type");return c&&c=="date"||!!d(b).data("dateinput")};d.fn.dateinput=function(b){if(this.data("dateinput"))return this;b=d.extend(true,{},Q.conf,b);d.each(b.css,function(j,m){if(!m&&j!="prefix")b.css[j]=(b.css.prefix||"")+(m||j)});var c;this.each(function(){var j=new Z(d(this),b);W.push(j);j=j.getInput().data("dateinput",j);c=c?c.add(j):j});return c?
|
| 248 |
+
c:this}})(jQuery);
|
| 249 |
+
(function(e){function F(d,a){a=Math.pow(10,a);return Math.round(d*a)/a}function p(d,a){if(a=parseInt(d.css(a),10))return a;return(d=d[0].currentStyle)&&d.width&&parseInt(d.width,10)}function C(d){return(d=d.data("events"))&&d.onSlide}function G(d,a){function h(c,b,f,j){if(f===undefined)f=b/k*z;else if(j)f-=a.min;if(r)f=Math.round(f/r)*r;if(b===undefined||r)b=f*k/z;if(isNaN(f))return g;b=Math.max(0,Math.min(b,k));f=b/k*z;if(j||!n)f+=a.min;if(n)if(j)b=k-b;else f=a.max-f;f=F(f,t);var q=c.type=="click";
|
| 250 |
+
if(D&&l!==undefined&&!q){c.type="onSlide";A.trigger(c,[f,b]);if(c.isDefaultPrevented())return g}j=q?a.speed:0;q=q?function(){c.type="change";A.trigger(c,[f])}:null;if(n){m.animate({top:b},j,q);a.progress&&B.animate({height:k-b+m.width()/2},j)}else{m.animate({left:b},j,q);a.progress&&B.animate({width:b+m.width()/2},j)}l=f;H=b;d.val(f);return g}function s(){if(n=a.vertical||p(i,"height")>p(i,"width")){k=p(i,"height")-p(m,"height");u=i.offset().top+k}else{k=p(i,"width")-p(m,"width");u=i.offset().left}}
|
| 251 |
+
function v(){s();g.setValue(a.value||a.min)}var g=this,o=a.css,i=e("<div><div/><a href='#'/></div>").data("rangeinput",g),n,l,u,k,H;d.before(i);var m=i.addClass(o.slider).find("a").addClass(o.handle),B=i.find("div").addClass(o.progress);e.each("min,max,step,value".split(","),function(c,b){c=d.attr(b);if(parseFloat(c))a[b]=parseFloat(c,10)});var z=a.max-a.min,r=a.step=="any"?0:a.step,t=a.precision;if(t===undefined)try{t=r.toString().split(".")[1].length}catch(I){t=0}if(d.attr("type")=="range"){var w=
|
| 252 |
+
e("<input/>");e.each("name,readonly,disabled,required".split(","),function(c,b){w.attr(b,d.attr(b))});w.val(a.value);d.replaceWith(w);d=w}d.addClass(o.input);var A=e(g).add(d),D=true;e.extend(g,{getValue:function(){return l},setValue:function(c,b){return h(b||e.Event("api"),undefined,c,true)},getConf:function(){return a},getProgress:function(){return B},getHandle:function(){return m},getInput:function(){return d},step:function(c,b){b=b||e.Event();var f=a.step=="any"?1:a.step;g.setValue(l+f*(c||1),
|
| 253 |
+
b)},stepUp:function(c){return g.step(c||1)},stepDown:function(c){return g.step(-c||-1)}});e.each("onSlide,change".split(","),function(c,b){e.isFunction(a[b])&&e(g).bind(b,a[b]);g[b]=function(f){e(g).bind(b,f);return g}});m.drag({drag:false}).bind("dragStart",function(){D=C(e(g))||C(d)}).bind("drag",function(c,b,f){if(d.is(":disabled"))return false;h(c,n?b:f)}).bind("dragEnd",function(c){if(!c.isDefaultPrevented()){c.type="change";A.trigger(c,[l])}}).click(function(c){return c.preventDefault()});i.click(function(c){if(d.is(":disabled")||
|
| 254 |
+
c.target==m[0])return c.preventDefault();s();var b=m.width()/2;h(c,n?k-u-b+c.pageY:c.pageX-u-b)});a.keyboard&&d.keydown(function(c){if(!d.attr("readonly")){var b=c.keyCode,f=e([75,76,38,33,39]).index(b)!=-1,j=e([74,72,40,34,37]).index(b)!=-1;if((f||j)&&!(c.shiftKey||c.altKey||c.ctrlKey)){if(f)g.step(b==33?10:1,c);else if(j)g.step(b==34?-10:-1,c);return c.preventDefault()}}});d.blur(function(c){var b=e(this).val();b!==l&&g.setValue(b,c)});e.extend(d[0],{stepUp:g.stepUp,stepDown:g.stepDown});v();k||
|
| 255 |
+
e(window).load(v)}e.tools=e.tools||{version:"1.2.3"};var E;E=e.tools.rangeinput={conf:{min:0,max:100,step:"any",steps:0,value:0,precision:undefined,vertical:0,keyboard:true,progress:false,speed:100,css:{input:"range",slider:"slider",progress:"progress",handle:"handle"}}};var x,y;e.fn.drag=function(d){document.ondragstart=function(){return false};d=e.extend({x:true,y:true,drag:true},d);x=x||e(document).bind("mousedown mouseup",function(a){var h=e(a.target);if(a.type=="mousedown"&&h.data("drag")){var s=
|
| 256 |
+
h.position(),v=a.pageX-s.left,g=a.pageY-s.top,o=true;x.bind("mousemove.drag",function(i){var n=i.pageX-v;i=i.pageY-g;var l={};if(d.x)l.left=n;if(d.y)l.top=i;if(o){h.trigger("dragStart");o=false}d.drag&&h.css(l);h.trigger("drag",[i,n]);y=h});a.preventDefault()}else try{y&&y.trigger("dragEnd")}finally{x.unbind("mousemove.drag");y=null}});return this.data("drag",true)};e.expr[":"].range=function(d){var a=d.getAttribute("type");return a&&a=="range"||!!e(d).filter("input").data("rangeinput")};e.fn.rangeinput=
|
| 257 |
+
function(d){if(this.data("rangeinput"))return this;d=e.extend(true,{},E.conf,d);var a;this.each(function(){var h=new G(e(this),e.extend(true,{},d));h=h.getInput().data("rangeinput",h);a=a?a.add(h):h});return a?a:this}})(jQuery);
|
| 258 |
+
(function(d){function v(a,b,c){var k=a.offset().top,f=a.offset().left,l=c.position.split(/,?\s+/),g=l[0];l=l[1];k-=b.outerHeight()-c.offset[0];f+=a.outerWidth()+c.offset[1];c=b.outerHeight()+a.outerHeight();if(g=="center")k+=c/2;if(g=="bottom")k+=c;a=a.outerWidth();if(l=="center")f-=(a+b.outerWidth())/2;if(l=="left")f-=a;return{top:k,left:f}}function w(a){function b(){return this.getAttribute("type")==a}b.key="[type="+a+"]";return b}function s(a,b,c){function k(g,e,j){if(!(!c.grouped&&g.length)){var h;
|
| 259 |
+
if(j===false||d.isArray(j)){h=i.messages[e.key||e]||i.messages["*"];h=h[c.lang]||i.messages["*"].en;(e=h.match(/\$\d/g))&&d.isArray(j)&&d.each(e,function(n){h=h.replace(this,j[n])})}else h=j[c.lang]||j;g.push(h)}}var f=this,l=b.add(f);a=a.not(":button, :image, :reset, :submit");d.extend(f,{getConf:function(){return c},getForm:function(){return b},getInputs:function(){return a},invalidate:function(g,e){if(!e){var j=[];d.each(g,function(h,n){h=a.filter("[name="+h+"]");if(h.length){h.trigger("OI",[n]);
|
| 260 |
+
j.push({input:h,messages:[n]})}});g=j;e=d.Event()}e.type="onFail";l.trigger(e,[g]);e.isDefaultPrevented()||q[c.effect][0].call(f,g,e);return f},reset:function(g){g=g||a;g.removeClass(c.errorClass).each(function(){var e=d(this).data("msg.el");if(e){e.remove();d(this).data("msg.el",null)}}).unbind(c.errorInputEvent||"");return f},destroy:function(){b.unbind(c.formEvent).unbind("reset.V");a.unbind(c.inputEvent||"").unbind("change.V");return f.reset()},checkValidity:function(g,e){g=g||a;g=g.not(":disabled");
|
| 261 |
+
if(!g.length)return true;e=e||d.Event();e.type="onBeforeValidate";l.trigger(e,[g]);if(e.isDefaultPrevented())return e.result;var j=[],h=c.errorInputEvent+".v";g.each(function(){var p=[],m=d(this).unbind(h).data("messages",p);d.each(t,function(){var o=this,r=o[0];if(m.filter(r).length){o=o[1].call(f,m,m.val());if(o!==true){e.type="onBeforeFail";l.trigger(e,[m,r]);if(e.isDefaultPrevented())return false;var u=m.attr(c.messageAttr);if(u){p=[u];return false}else k(p,r,o)}}});if(p.length){j.push({input:m,
|
| 262 |
+
messages:p});m.trigger("OI",[p]);c.errorInputEvent&&m.bind(h,function(o){f.checkValidity(m,o)})}if(c.singleError&&j.length)return false});var n=q[c.effect];if(!n)throw'Validator: cannot find effect "'+c.effect+'"';if(j.length){f.invalidate(j,e);return false}else{n[1].call(f,g,e);e.type="onSuccess";l.trigger(e,[g]);g.unbind(h)}return true}});d.each("onBeforeValidate,onBeforeFail,onFail,onSuccess".split(","),function(g,e){d.isFunction(c[e])&&d(f).bind(e,c[e]);f[e]=function(j){d(f).bind(e,j);return f}});
|
| 263 |
+
c.formEvent&&b.bind(c.formEvent,function(g){if(!f.checkValidity(null,g))return g.preventDefault()});b.bind("reset.V",function(){f.reset()});a[0]&&a[0].validity&&a.each(function(){this.oninvalid=function(){return false}});if(b[0])b[0].checkValidity=f.checkValidity;c.inputEvent&&a.bind(c.inputEvent,function(g){f.checkValidity(d(this),g)});a.filter(":checkbox, select").filter("[required]").bind("change.V",function(g){var e=d(this);if(this.checked||e.is("select")&&d(this).val())q[c.effect][1].call(f,
|
| 264 |
+
e,g)})}d.tools=d.tools||{version:"1.2.3"};var x=/\[type=([a-z]+)\]/,y=/^-?[0-9]*(\.[0-9]+)?$/,z=/^([a-z0-9_\.\-\+]+)@([\da-z\.\-]+)\.([a-z\.]{2,6})$/i,A=/^(https?:\/\/)?([\da-z\.\-]+)\.([a-z\.]{2,6})([\/\w \.\-]*)*\/?$/i,i;i=d.tools.validator={conf:{grouped:false,effect:"default",errorClass:"invalid",inputEvent:null,errorInputEvent:"keyup",formEvent:"submit",lang:"en",message:"<div/>",messageAttr:"data-message",messageClass:"error",offset:[0,0],position:"center right",singleError:false,speed:"normal"},
|
| 265 |
+
messages:{"*":{en:"Please correct this value"}},localize:function(a,b){d.each(b,function(c,k){i.messages[c]=i.messages[c]||{};i.messages[c][a]=k})},localizeFn:function(a,b){i.messages[a]=i.messages[a]||{};d.extend(i.messages[a],b)},fn:function(a,b,c){if(d.isFunction(b))c=b;else{if(typeof b=="string")b={en:b};this.messages[a.key||a]=b}if(b=x.exec(a))a=w(b[1]);t.push([a,c])},addEffect:function(a,b,c){q[a]=[b,c]}};var t=[],q={"default":[function(a){var b=this.getConf();d.each(a,function(c,k){c=k.input;
|
| 266 |
+
c.addClass(b.errorClass);var f=c.data("msg.el");if(!f){f=d(b.message).addClass(b.messageClass).appendTo(document.body);c.data("msg.el",f)}f.css({visibility:"hidden"}).find("span").remove();d.each(k.messages,function(l,g){d("<span/>").html(g).appendTo(f)});f.outerWidth()==f.parent().width()&&f.add(f.find("p")).css({display:"inline"});k=v(c,f,b);f.css({visibility:"visible",position:"absolute",top:k.top,left:k.left}).fadeIn(b.speed)})},function(a){var b=this.getConf();a.removeClass(b.errorClass).each(function(){var c=
|
| 267 |
+
d(this).data("msg.el");c&&c.css({visibility:"hidden"})})}]};d.each("email,url,number".split(","),function(a,b){d.expr[":"][b]=function(c){return c.getAttribute("type")===b}});d.fn.oninvalid=function(a){return this[a?"bind":"trigger"]("OI",a)};i.fn(":email","Please enter a valid email address",function(a,b){return!b||z.test(b)});i.fn(":url","Please enter a valid URL",function(a,b){return!b||A.test(b)});i.fn(":number","Please enter a numeric value.",function(a,b){return y.test(b)});i.fn("[max]","Please enter a value smaller than $1",
|
| 268 |
+
function(a,b){if(d.tools.dateinput&&a.is(":date"))return true;a=a.attr("max");return parseFloat(b)<=parseFloat(a)?true:[a]});i.fn("[min]","Please enter a value larger than $1",function(a,b){if(d.tools.dateinput&&a.is(":date"))return true;a=a.attr("min");return parseFloat(b)>=parseFloat(a)?true:[a]});i.fn("[required]","Please complete this mandatory field.",function(a,b){if(a.is(":checkbox"))return a.is(":checked");return!!b});i.fn("[pattern]",function(a){var b=new RegExp("^"+a.attr("pattern")+"$");
|
| 269 |
+
return b.test(a.val())});d.fn.validator=function(a){var b=this.data("validator");if(b){b.destroy();this.removeData("validator")}a=d.extend(true,{},i.conf,a);if(this.is("form"))return this.each(function(){var c=d(this);b=new s(c.find(":input"),c,a);c.data("validator",b)});else{b=new s(this,this.eq(0).closest("form"),a);return this.data("validator",b)}}})(jQuery);
|
js/jquery.ui.dialog.js
CHANGED
|
@@ -1,827 +1,827 @@
|
|
| 1 |
-
/*
|
| 2 |
-
* jQuery UI Dialog 1.8.4
|
| 3 |
-
*
|
| 4 |
-
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 5 |
-
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 6 |
-
* http://jquery.org/license
|
| 7 |
-
*
|
| 8 |
-
* http://docs.jquery.com/UI/Dialog
|
| 9 |
-
*
|
| 10 |
-
* Depends:
|
| 11 |
-
* jquery.ui.core.js
|
| 12 |
-
* jquery.ui.widget.js
|
| 13 |
-
* jquery.ui.button.js
|
| 14 |
-
* jquery.ui.draggable.js
|
| 15 |
-
* jquery.ui.mouse.js
|
| 16 |
-
* jquery.ui.position.js
|
| 17 |
-
* jquery.ui.resizable.js
|
| 18 |
-
*/
|
| 19 |
-
(function( $, undefined ) {
|
| 20 |
-
|
| 21 |
-
var uiDialogClasses =
|
| 22 |
-
'ui-dialog ' +
|
| 23 |
-
'ui-widget ' +
|
| 24 |
-
'ui-widget-content ' +
|
| 25 |
-
'ui-corner-all ';
|
| 26 |
-
|
| 27 |
-
$.widget("ui.dialog", {
|
| 28 |
-
options: {
|
| 29 |
-
autoOpen: true,
|
| 30 |
-
buttons: {},
|
| 31 |
-
closeOnEscape: true,
|
| 32 |
-
closeText: 'close',
|
| 33 |
-
dialogClass: '',
|
| 34 |
-
draggable: true,
|
| 35 |
-
hide: null,
|
| 36 |
-
height: 'auto',
|
| 37 |
-
maxHeight: false,
|
| 38 |
-
maxWidth: false,
|
| 39 |
-
minHeight: 150,
|
| 40 |
-
minWidth: 150,
|
| 41 |
-
modal: false,
|
| 42 |
-
position: {
|
| 43 |
-
my: 'center',
|
| 44 |
-
at: 'center',
|
| 45 |
-
of: window,
|
| 46 |
-
collision: 'fit',
|
| 47 |
-
// ensure that the titlebar is never outside the document
|
| 48 |
-
using: function(pos) {
|
| 49 |
-
var topOffset = $(this).css(pos).offset().top;
|
| 50 |
-
if (topOffset < 0) {
|
| 51 |
-
$(this).css('top', pos.top - topOffset);
|
| 52 |
-
}
|
| 53 |
-
}
|
| 54 |
-
},
|
| 55 |
-
resizable: true,
|
| 56 |
-
show: null,
|
| 57 |
-
stack: true,
|
| 58 |
-
title: '',
|
| 59 |
-
width: 300,
|
| 60 |
-
zIndex: 1000
|
| 61 |
-
},
|
| 62 |
-
|
| 63 |
-
_create: function() {
|
| 64 |
-
this.originalTitle = this.element.attr('title');
|
| 65 |
-
// #5742 - .attr() might return a DOMElement
|
| 66 |
-
if ( typeof this.originalTitle !== "string" ) {
|
| 67 |
-
this.originalTitle = "";
|
| 68 |
-
}
|
| 69 |
-
|
| 70 |
-
var self = this,
|
| 71 |
-
options = self.options,
|
| 72 |
-
|
| 73 |
-
title = options.title || self.originalTitle || ' ',
|
| 74 |
-
titleId = $.ui.dialog.getTitleId(self.element),
|
| 75 |
-
|
| 76 |
-
uiDialog = (self.uiDialog = $('<div></div>'))
|
| 77 |
-
.appendTo(document.body)
|
| 78 |
-
.hide()
|
| 79 |
-
.addClass(uiDialogClasses + options.dialogClass)
|
| 80 |
-
.css({
|
| 81 |
-
zIndex: options.zIndex
|
| 82 |
-
})
|
| 83 |
-
// setting tabIndex makes the div focusable
|
| 84 |
-
// setting outline to 0 prevents a border on focus in Mozilla
|
| 85 |
-
.attr('tabIndex', -1).css('outline', 0).keydown(function(event) {
|
| 86 |
-
if (options.closeOnEscape && event.keyCode &&
|
| 87 |
-
event.keyCode === $.ui.keyCode.ESCAPE) {
|
| 88 |
-
|
| 89 |
-
self.close(event);
|
| 90 |
-
event.preventDefault();
|
| 91 |
-
}
|
| 92 |
-
})
|
| 93 |
-
.attr({
|
| 94 |
-
role: 'dialog',
|
| 95 |
-
'aria-labelledby': titleId
|
| 96 |
-
})
|
| 97 |
-
.mousedown(function(event) {
|
| 98 |
-
self.moveToTop(false, event);
|
| 99 |
-
}),
|
| 100 |
-
|
| 101 |
-
uiDialogContent = self.element
|
| 102 |
-
.show()
|
| 103 |
-
.removeAttr('title')
|
| 104 |
-
.addClass(
|
| 105 |
-
'ui-dialog-content ' +
|
| 106 |
-
'ui-widget-content')
|
| 107 |
-
.appendTo(uiDialog),
|
| 108 |
-
|
| 109 |
-
uiDialogTitlebar = (self.uiDialogTitlebar = $('<div></div>'))
|
| 110 |
-
.addClass(
|
| 111 |
-
'ui-dialog-titlebar ' +
|
| 112 |
-
'ui-widget-header ' +
|
| 113 |
-
'ui-corner-all ' +
|
| 114 |
-
'ui-helper-clearfix'
|
| 115 |
-
)
|
| 116 |
-
.prependTo(uiDialog),
|
| 117 |
-
|
| 118 |
-
uiDialogTitlebarClose = $('<a href="#"></a>')
|
| 119 |
-
.addClass(
|
| 120 |
-
'ui-dialog-titlebar-close ' +
|
| 121 |
-
'ui-corner-all'
|
| 122 |
-
)
|
| 123 |
-
.attr('role', 'button')
|
| 124 |
-
.hover(
|
| 125 |
-
function() {
|
| 126 |
-
uiDialogTitlebarClose.addClass('ui-state-hover');
|
| 127 |
-
},
|
| 128 |
-
function() {
|
| 129 |
-
uiDialogTitlebarClose.removeClass('ui-state-hover');
|
| 130 |
-
}
|
| 131 |
-
)
|
| 132 |
-
.focus(function() {
|
| 133 |
-
uiDialogTitlebarClose.addClass('ui-state-focus');
|
| 134 |
-
})
|
| 135 |
-
.blur(function() {
|
| 136 |
-
uiDialogTitlebarClose.removeClass('ui-state-focus');
|
| 137 |
-
})
|
| 138 |
-
.click(function(event) {
|
| 139 |
-
self.close(event);
|
| 140 |
-
return false;
|
| 141 |
-
})
|
| 142 |
-
.appendTo(uiDialogTitlebar),
|
| 143 |
-
|
| 144 |
-
uiDialogTitlebarCloseText = (self.uiDialogTitlebarCloseText = $('<span></span>'))
|
| 145 |
-
.addClass(
|
| 146 |
-
'ui-icon ' +
|
| 147 |
-
'ui-icon-closethick'
|
| 148 |
-
)
|
| 149 |
-
.text(options.closeText)
|
| 150 |
-
.appendTo(uiDialogTitlebarClose),
|
| 151 |
-
|
| 152 |
-
uiDialogTitle = $('<span></span>')
|
| 153 |
-
.addClass('ui-dialog-title')
|
| 154 |
-
.attr('id', titleId)
|
| 155 |
-
.html(title)
|
| 156 |
-
.prependTo(uiDialogTitlebar);
|
| 157 |
-
|
| 158 |
-
//handling of deprecated beforeclose (vs beforeClose) option
|
| 159 |
-
//Ticket #4669 http://dev.jqueryui.com/ticket/4669
|
| 160 |
-
//TODO: remove in 1.9pre
|
| 161 |
-
if ($.isFunction(options.beforeclose) && !$.isFunction(options.beforeClose)) {
|
| 162 |
-
options.beforeClose = options.beforeclose;
|
| 163 |
-
}
|
| 164 |
-
|
| 165 |
-
uiDialogTitlebar.find("*").add(uiDialogTitlebar).disableSelection();
|
| 166 |
-
|
| 167 |
-
if (options.draggable && $.fn.draggable) {
|
| 168 |
-
self._makeDraggable();
|
| 169 |
-
}
|
| 170 |
-
if (options.resizable && $.fn.resizable) {
|
| 171 |
-
self._makeResizable();
|
| 172 |
-
}
|
| 173 |
-
|
| 174 |
-
self._createButtons(options.buttons);
|
| 175 |
-
self._isOpen = false;
|
| 176 |
-
|
| 177 |
-
if ($.fn.bgiframe) {
|
| 178 |
-
uiDialog.bgiframe();
|
| 179 |
-
}
|
| 180 |
-
},
|
| 181 |
-
|
| 182 |
-
_init: function() {
|
| 183 |
-
if ( this.options.autoOpen ) {
|
| 184 |
-
this.open();
|
| 185 |
-
}
|
| 186 |
-
},
|
| 187 |
-
|
| 188 |
-
destroy: function() {
|
| 189 |
-
var self = this;
|
| 190 |
-
|
| 191 |
-
if (self.overlay) {
|
| 192 |
-
self.overlay.destroy();
|
| 193 |
-
}
|
| 194 |
-
self.uiDialog.hide();
|
| 195 |
-
self.element
|
| 196 |
-
.unbind('.dialog')
|
| 197 |
-
.removeData('dialog')
|
| 198 |
-
.removeClass('ui-dialog-content ui-widget-content')
|
| 199 |
-
.hide().appendTo('body');
|
| 200 |
-
self.uiDialog.remove();
|
| 201 |
-
|
| 202 |
-
if (self.originalTitle) {
|
| 203 |
-
self.element.attr('title', self.originalTitle);
|
| 204 |
-
}
|
| 205 |
-
|
| 206 |
-
return self;
|
| 207 |
-
},
|
| 208 |
-
|
| 209 |
-
widget: function() {
|
| 210 |
-
return this.uiDialog;
|
| 211 |
-
},
|
| 212 |
-
|
| 213 |
-
close: function(event) {
|
| 214 |
-
var self = this,
|
| 215 |
-
maxZ;
|
| 216 |
-
|
| 217 |
-
if (false === self._trigger('beforeClose', event)) {
|
| 218 |
-
return;
|
| 219 |
-
}
|
| 220 |
-
|
| 221 |
-
if (self.overlay) {
|
| 222 |
-
self.overlay.destroy();
|
| 223 |
-
}
|
| 224 |
-
self.uiDialog.unbind('keypress.ui-dialog');
|
| 225 |
-
|
| 226 |
-
self._isOpen = false;
|
| 227 |
-
|
| 228 |
-
if (self.options.hide) {
|
| 229 |
-
self.uiDialog.hide(self.options.hide, function() {
|
| 230 |
-
self._trigger('close', event);
|
| 231 |
-
});
|
| 232 |
-
} else {
|
| 233 |
-
self.uiDialog.hide();
|
| 234 |
-
self._trigger('close', event);
|
| 235 |
-
}
|
| 236 |
-
|
| 237 |
-
$.ui.dialog.overlay.resize();
|
| 238 |
-
|
| 239 |
-
// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
|
| 240 |
-
if (self.options.modal) {
|
| 241 |
-
maxZ = 0;
|
| 242 |
-
$('.ui-dialog').each(function() {
|
| 243 |
-
if (this !== self.uiDialog[0]) {
|
| 244 |
-
maxZ = Math.max(maxZ, $(this).css('z-index'));
|
| 245 |
-
}
|
| 246 |
-
});
|
| 247 |
-
$.ui.dialog.maxZ = maxZ;
|
| 248 |
-
}
|
| 249 |
-
|
| 250 |
-
return self;
|
| 251 |
-
},
|
| 252 |
-
|
| 253 |
-
isOpen: function() {
|
| 254 |
-
return this._isOpen;
|
| 255 |
-
},
|
| 256 |
-
|
| 257 |
-
// the force parameter allows us to move modal dialogs to their correct
|
| 258 |
-
// position on open
|
| 259 |
-
moveToTop: function(force, event) {
|
| 260 |
-
var self = this,
|
| 261 |
-
options = self.options,
|
| 262 |
-
saveScroll;
|
| 263 |
-
|
| 264 |
-
if ((options.modal && !force) ||
|
| 265 |
-
(!options.stack && !options.modal)) {
|
| 266 |
-
return self._trigger('focus', event);
|
| 267 |
-
}
|
| 268 |
-
|
| 269 |
-
if (options.zIndex > $.ui.dialog.maxZ) {
|
| 270 |
-
$.ui.dialog.maxZ = options.zIndex;
|
| 271 |
-
}
|
| 272 |
-
if (self.overlay) {
|
| 273 |
-
$.ui.dialog.maxZ += 1;
|
| 274 |
-
self.overlay.$el.css('z-index', $.ui.dialog.overlay.maxZ = $.ui.dialog.maxZ);
|
| 275 |
-
}
|
| 276 |
-
|
| 277 |
-
//Save and then restore scroll since Opera 9.5+ resets when parent z-Index is changed.
|
| 278 |
-
// http://ui.jquery.com/bugs/ticket/3193
|
| 279 |
-
saveScroll = { scrollTop: self.element.attr('scrollTop'), scrollLeft: self.element.attr('scrollLeft') };
|
| 280 |
-
$.ui.dialog.maxZ += 1;
|
| 281 |
-
self.uiDialog.css('z-index', $.ui.dialog.maxZ);
|
| 282 |
-
self.element.attr(saveScroll);
|
| 283 |
-
self._trigger('focus', event);
|
| 284 |
-
|
| 285 |
-
return self;
|
| 286 |
-
},
|
| 287 |
-
|
| 288 |
-
open: function() {
|
| 289 |
-
if (this._isOpen) { return; }
|
| 290 |
-
|
| 291 |
-
var self = this,
|
| 292 |
-
options = self.options,
|
| 293 |
-
uiDialog = self.uiDialog;
|
| 294 |
-
|
| 295 |
-
self.overlay = options.modal ? new $.ui.dialog.overlay(self) : null;
|
| 296 |
-
if (uiDialog.next().length) {
|
| 297 |
-
uiDialog.appendTo('body');
|
| 298 |
-
}
|
| 299 |
-
self._size();
|
| 300 |
-
self._position(options.position);
|
| 301 |
-
uiDialog.show(options.show);
|
| 302 |
-
self.moveToTop(true);
|
| 303 |
-
|
| 304 |
-
// prevent tabbing out of modal dialogs
|
| 305 |
-
if (options.modal) {
|
| 306 |
-
uiDialog.bind('keypress.ui-dialog', function(event) {
|
| 307 |
-
if (event.keyCode !== $.ui.keyCode.TAB) {
|
| 308 |
-
return;
|
| 309 |
-
}
|
| 310 |
-
|
| 311 |
-
var tabbables = $(':tabbable', this),
|
| 312 |
-
first = tabbables.filter(':first'),
|
| 313 |
-
last = tabbables.filter(':last');
|
| 314 |
-
|
| 315 |
-
if (event.target === last[0] && !event.shiftKey) {
|
| 316 |
-
first.focus(1);
|
| 317 |
-
return false;
|
| 318 |
-
} else if (event.target === first[0] && event.shiftKey) {
|
| 319 |
-
last.focus(1);
|
| 320 |
-
return false;
|
| 321 |
-
}
|
| 322 |
-
});
|
| 323 |
-
}
|
| 324 |
-
|
| 325 |
-
// set focus to the first tabbable element in the content area or the first button
|
| 326 |
-
// if there are no tabbable elements, set focus on the dialog itself
|
| 327 |
-
$(self.element.find(':tabbable').get().concat(
|
| 328 |
-
uiDialog.find('.ui-dialog-buttonpane :tabbable').get().concat(
|
| 329 |
-
uiDialog.get()))).eq(0).focus();
|
| 330 |
-
|
| 331 |
-
self._trigger('open');
|
| 332 |
-
self._isOpen = true;
|
| 333 |
-
|
| 334 |
-
return self;
|
| 335 |
-
},
|
| 336 |
-
|
| 337 |
-
_createButtons: function(buttons) {
|
| 338 |
-
var self = this,
|
| 339 |
-
hasButtons = false,
|
| 340 |
-
uiDialogButtonPane = $('<div></div>')
|
| 341 |
-
.addClass(
|
| 342 |
-
'ui-dialog-buttonpane ' +
|
| 343 |
-
'ui-widget-content ' +
|
| 344 |
-
'ui-helper-clearfix'
|
| 345 |
-
),
|
| 346 |
-
uiButtonSet = $( "<div></div>" )
|
| 347 |
-
.addClass( "ui-dialog-buttonset" )
|
| 348 |
-
.appendTo( uiDialogButtonPane );
|
| 349 |
-
|
| 350 |
-
// if we already have a button pane, remove it
|
| 351 |
-
self.uiDialog.find('.ui-dialog-buttonpane').remove();
|
| 352 |
-
|
| 353 |
-
if (typeof buttons === 'object' && buttons !== null) {
|
| 354 |
-
$.each(buttons, function() {
|
| 355 |
-
return !(hasButtons = true);
|
| 356 |
-
});
|
| 357 |
-
}
|
| 358 |
-
if (hasButtons) {
|
| 359 |
-
$.each(buttons, function(name, fn) {
|
| 360 |
-
var button = $('<button type="button"></button>')
|
| 361 |
-
.text(name)
|
| 362 |
-
.click(function() { fn.apply(self.element[0], arguments); })
|
| 363 |
-
.appendTo(uiButtonSet);
|
| 364 |
-
if ($.fn.button) {
|
| 365 |
-
button.button();
|
| 366 |
-
}
|
| 367 |
-
});
|
| 368 |
-
uiDialogButtonPane.appendTo(self.uiDialog);
|
| 369 |
-
}
|
| 370 |
-
},
|
| 371 |
-
|
| 372 |
-
_makeDraggable: function() {
|
| 373 |
-
var self = this,
|
| 374 |
-
options = self.options,
|
| 375 |
-
doc = $(document),
|
| 376 |
-
heightBeforeDrag;
|
| 377 |
-
|
| 378 |
-
function filteredUi(ui) {
|
| 379 |
-
return {
|
| 380 |
-
position: ui.position,
|
| 381 |
-
offset: ui.offset
|
| 382 |
-
};
|
| 383 |
-
}
|
| 384 |
-
|
| 385 |
-
self.uiDialog.draggable({
|
| 386 |
-
cancel: '.ui-dialog-content, .ui-dialog-titlebar-close',
|
| 387 |
-
handle: '.ui-dialog-titlebar',
|
| 388 |
-
containment: 'document',
|
| 389 |
-
start: function(event, ui) {
|
| 390 |
-
heightBeforeDrag = options.height === "auto" ? "auto" : $(this).height();
|
| 391 |
-
$(this).height($(this).height()).addClass("ui-dialog-dragging");
|
| 392 |
-
self._trigger('dragStart', event, filteredUi(ui));
|
| 393 |
-
},
|
| 394 |
-
drag: function(event, ui) {
|
| 395 |
-
self._trigger('drag', event, filteredUi(ui));
|
| 396 |
-
},
|
| 397 |
-
stop: function(event, ui) {
|
| 398 |
-
options.position = [ui.position.left - doc.scrollLeft(),
|
| 399 |
-
ui.position.top - doc.scrollTop()];
|
| 400 |
-
$(this).removeClass("ui-dialog-dragging").height(heightBeforeDrag);
|
| 401 |
-
self._trigger('dragStop', event, filteredUi(ui));
|
| 402 |
-
$.ui.dialog.overlay.resize();
|
| 403 |
-
}
|
| 404 |
-
});
|
| 405 |
-
},
|
| 406 |
-
|
| 407 |
-
_makeResizable: function(handles) {
|
| 408 |
-
handles = (handles === undefined ? this.options.resizable : handles);
|
| 409 |
-
var self = this,
|
| 410 |
-
options = self.options,
|
| 411 |
-
// .ui-resizable has position: relative defined in the stylesheet
|
| 412 |
-
// but dialogs have to use absolute or fixed positioning
|
| 413 |
-
position = self.uiDialog.css('position'),
|
| 414 |
-
resizeHandles = (typeof handles === 'string' ?
|
| 415 |
-
handles :
|
| 416 |
-
'n,e,s,w,se,sw,ne,nw'
|
| 417 |
-
);
|
| 418 |
-
|
| 419 |
-
function filteredUi(ui) {
|
| 420 |
-
return {
|
| 421 |
-
originalPosition: ui.originalPosition,
|
| 422 |
-
originalSize: ui.originalSize,
|
| 423 |
-
position: ui.position,
|
| 424 |
-
size: ui.size
|
| 425 |
-
};
|
| 426 |
-
}
|
| 427 |
-
|
| 428 |
-
self.uiDialog.resizable({
|
| 429 |
-
cancel: '.ui-dialog-content',
|
| 430 |
-
containment: 'document',
|
| 431 |
-
alsoResize: self.element,
|
| 432 |
-
maxWidth: options.maxWidth,
|
| 433 |
-
maxHeight: options.maxHeight,
|
| 434 |
-
minWidth: options.minWidth,
|
| 435 |
-
minHeight: self._minHeight(),
|
| 436 |
-
handles: resizeHandles,
|
| 437 |
-
start: function(event, ui) {
|
| 438 |
-
$(this).addClass("ui-dialog-resizing");
|
| 439 |
-
self._trigger('resizeStart', event, filteredUi(ui));
|
| 440 |
-
},
|
| 441 |
-
resize: function(event, ui) {
|
| 442 |
-
self._trigger('resize', event, filteredUi(ui));
|
| 443 |
-
},
|
| 444 |
-
stop: function(event, ui) {
|
| 445 |
-
$(this).removeClass("ui-dialog-resizing");
|
| 446 |
-
options.height = $(this).height();
|
| 447 |
-
options.width = $(this).width();
|
| 448 |
-
self._trigger('resizeStop', event, filteredUi(ui));
|
| 449 |
-
$.ui.dialog.overlay.resize();
|
| 450 |
-
}
|
| 451 |
-
})
|
| 452 |
-
.css('position', position)
|
| 453 |
-
.find('.ui-resizable-se').addClass('ui-icon ui-icon-grip-diagonal-se');
|
| 454 |
-
},
|
| 455 |
-
|
| 456 |
-
_minHeight: function() {
|
| 457 |
-
var options = this.options;
|
| 458 |
-
|
| 459 |
-
if (options.height === 'auto') {
|
| 460 |
-
return options.minHeight;
|
| 461 |
-
} else {
|
| 462 |
-
return Math.min(options.minHeight, options.height);
|
| 463 |
-
}
|
| 464 |
-
},
|
| 465 |
-
|
| 466 |
-
_position: function(position) {
|
| 467 |
-
var myAt = [],
|
| 468 |
-
offset = [0, 0],
|
| 469 |
-
isVisible;
|
| 470 |
-
|
| 471 |
-
if (position) {
|
| 472 |
-
// deep extending converts arrays to objects in jQuery <= 1.3.2 :-(
|
| 473 |
-
// if (typeof position == 'string' || $.isArray(position)) {
|
| 474 |
-
// myAt = $.isArray(position) ? position : position.split(' ');
|
| 475 |
-
|
| 476 |
-
if (typeof position === 'string' || (typeof position === 'object' && '0' in position)) {
|
| 477 |
-
myAt = position.split ? position.split(' ') : [position[0], position[1]];
|
| 478 |
-
if (myAt.length === 1) {
|
| 479 |
-
myAt[1] = myAt[0];
|
| 480 |
-
}
|
| 481 |
-
|
| 482 |
-
$.each(['left', 'top'], function(i, offsetPosition) {
|
| 483 |
-
if (+myAt[i] === myAt[i]) {
|
| 484 |
-
offset[i] = myAt[i];
|
| 485 |
-
myAt[i] = offsetPosition;
|
| 486 |
-
}
|
| 487 |
-
});
|
| 488 |
-
|
| 489 |
-
position = {
|
| 490 |
-
my: myAt.join(" "),
|
| 491 |
-
at: myAt.join(" "),
|
| 492 |
-
offset: offset.join(" ")
|
| 493 |
-
};
|
| 494 |
-
}
|
| 495 |
-
|
| 496 |
-
position = $.extend({}, $.ui.dialog.prototype.options.position, position);
|
| 497 |
-
} else {
|
| 498 |
-
position = $.ui.dialog.prototype.options.position;
|
| 499 |
-
}
|
| 500 |
-
|
| 501 |
-
// need to show the dialog to get the actual offset in the position plugin
|
| 502 |
-
isVisible = this.uiDialog.is(':visible');
|
| 503 |
-
if (!isVisible) {
|
| 504 |
-
this.uiDialog.show();
|
| 505 |
-
}
|
| 506 |
-
this.uiDialog
|
| 507 |
-
// workaround for jQuery bug #5781 http://dev.jquery.com/ticket/5781
|
| 508 |
-
.css({ top: 0, left: 0 })
|
| 509 |
-
.position(position);
|
| 510 |
-
if (!isVisible) {
|
| 511 |
-
this.uiDialog.hide();
|
| 512 |
-
}
|
| 513 |
-
},
|
| 514 |
-
|
| 515 |
-
_setOption: function(key, value){
|
| 516 |
-
var self = this,
|
| 517 |
-
uiDialog = self.uiDialog,
|
| 518 |
-
isResizable = uiDialog.is(':data(resizable)'),
|
| 519 |
-
resize = false;
|
| 520 |
-
|
| 521 |
-
switch (key) {
|
| 522 |
-
//handling of deprecated beforeclose (vs beforeClose) option
|
| 523 |
-
//Ticket #4669 http://dev.jqueryui.com/ticket/4669
|
| 524 |
-
//TODO: remove in 1.9pre
|
| 525 |
-
case "beforeclose":
|
| 526 |
-
key = "beforeClose";
|
| 527 |
-
break;
|
| 528 |
-
case "buttons":
|
| 529 |
-
self._createButtons(value);
|
| 530 |
-
resize = true;
|
| 531 |
-
break;
|
| 532 |
-
case "closeText":
|
| 533 |
-
// convert whatever was passed in to a string, for text() to not throw up
|
| 534 |
-
self.uiDialogTitlebarCloseText.text("" + value);
|
| 535 |
-
break;
|
| 536 |
-
case "dialogClass":
|
| 537 |
-
uiDialog
|
| 538 |
-
.removeClass(self.options.dialogClass)
|
| 539 |
-
.addClass(uiDialogClasses + value);
|
| 540 |
-
break;
|
| 541 |
-
case "disabled":
|
| 542 |
-
if (value) {
|
| 543 |
-
uiDialog.addClass('ui-dialog-disabled');
|
| 544 |
-
} else {
|
| 545 |
-
uiDialog.removeClass('ui-dialog-disabled');
|
| 546 |
-
}
|
| 547 |
-
break;
|
| 548 |
-
case "draggable":
|
| 549 |
-
if (value) {
|
| 550 |
-
self._makeDraggable();
|
| 551 |
-
} else {
|
| 552 |
-
uiDialog.draggable('destroy');
|
| 553 |
-
}
|
| 554 |
-
break;
|
| 555 |
-
case "height":
|
| 556 |
-
resize = true;
|
| 557 |
-
break;
|
| 558 |
-
case "maxHeight":
|
| 559 |
-
if (isResizable) {
|
| 560 |
-
uiDialog.resizable('option', 'maxHeight', value);
|
| 561 |
-
}
|
| 562 |
-
resize = true;
|
| 563 |
-
break;
|
| 564 |
-
case "maxWidth":
|
| 565 |
-
if (isResizable) {
|
| 566 |
-
uiDialog.resizable('option', 'maxWidth', value);
|
| 567 |
-
}
|
| 568 |
-
resize = true;
|
| 569 |
-
break;
|
| 570 |
-
case "minHeight":
|
| 571 |
-
if (isResizable) {
|
| 572 |
-
uiDialog.resizable('option', 'minHeight', value);
|
| 573 |
-
}
|
| 574 |
-
resize = true;
|
| 575 |
-
break;
|
| 576 |
-
case "minWidth":
|
| 577 |
-
if (isResizable) {
|
| 578 |
-
uiDialog.resizable('option', 'minWidth', value);
|
| 579 |
-
}
|
| 580 |
-
resize = true;
|
| 581 |
-
break;
|
| 582 |
-
case "position":
|
| 583 |
-
self._position(value);
|
| 584 |
-
break;
|
| 585 |
-
case "resizable":
|
| 586 |
-
// currently resizable, becoming non-resizable
|
| 587 |
-
if (isResizable && !value) {
|
| 588 |
-
uiDialog.resizable('destroy');
|
| 589 |
-
}
|
| 590 |
-
|
| 591 |
-
// currently resizable, changing handles
|
| 592 |
-
if (isResizable && typeof value === 'string') {
|
| 593 |
-
uiDialog.resizable('option', 'handles', value);
|
| 594 |
-
}
|
| 595 |
-
|
| 596 |
-
// currently non-resizable, becoming resizable
|
| 597 |
-
if (!isResizable && value !== false) {
|
| 598 |
-
self._makeResizable(value);
|
| 599 |
-
}
|
| 600 |
-
break;
|
| 601 |
-
case "title":
|
| 602 |
-
// convert whatever was passed in o a string, for html() to not throw up
|
| 603 |
-
$(".ui-dialog-title", self.uiDialogTitlebar).html("" + (value || ' '));
|
| 604 |
-
break;
|
| 605 |
-
case "width":
|
| 606 |
-
resize = true;
|
| 607 |
-
break;
|
| 608 |
-
}
|
| 609 |
-
|
| 610 |
-
$.Widget.prototype._setOption.apply(self, arguments);
|
| 611 |
-
if (resize) {
|
| 612 |
-
self._size();
|
| 613 |
-
}
|
| 614 |
-
},
|
| 615 |
-
|
| 616 |
-
_size: function() {
|
| 617 |
-
/* If the user has resized the dialog, the .ui-dialog and .ui-dialog-content
|
| 618 |
-
* divs will both have width and height set, so we need to reset them
|
| 619 |
-
*/
|
| 620 |
-
var options = this.options,
|
| 621 |
-
nonContentHeight;
|
| 622 |
-
|
| 623 |
-
// reset content sizing
|
| 624 |
-
// hide for non content measurement because height: 0 doesn't work in IE quirks mode (see #4350)
|
| 625 |
-
this.element.css({
|
| 626 |
-
width: 'auto',
|
| 627 |
-
minHeight: 0,
|
| 628 |
-
height: 0
|
| 629 |
-
});
|
| 630 |
-
|
| 631 |
-
if (options.minWidth > options.width) {
|
| 632 |
-
options.width = options.minWidth;
|
| 633 |
-
}
|
| 634 |
-
|
| 635 |
-
// reset wrapper sizing
|
| 636 |
-
// determine the height of all the non-content elements
|
| 637 |
-
nonContentHeight = this.uiDialog.css({
|
| 638 |
-
height: 'auto',
|
| 639 |
-
width: options.width
|
| 640 |
-
})
|
| 641 |
-
.height();
|
| 642 |
-
|
| 643 |
-
this.element
|
| 644 |
-
.css(options.height === 'auto' ? {
|
| 645 |
-
minHeight: Math.max(options.minHeight - nonContentHeight, 0),
|
| 646 |
-
height: 'auto'
|
| 647 |
-
} : {
|
| 648 |
-
minHeight: 0,
|
| 649 |
-
height: Math.max(options.height - nonContentHeight, 0)
|
| 650 |
-
})
|
| 651 |
-
.show();
|
| 652 |
-
|
| 653 |
-
if (this.uiDialog.is(':data(resizable)')) {
|
| 654 |
-
this.uiDialog.resizable('option', 'minHeight', this._minHeight());
|
| 655 |
-
}
|
| 656 |
-
}
|
| 657 |
-
});
|
| 658 |
-
|
| 659 |
-
$.extend($.ui.dialog, {
|
| 660 |
-
version: "1.8.4",
|
| 661 |
-
|
| 662 |
-
uuid: 0,
|
| 663 |
-
maxZ: 0,
|
| 664 |
-
|
| 665 |
-
getTitleId: function($el) {
|
| 666 |
-
var id = $el.attr('id');
|
| 667 |
-
if (!id) {
|
| 668 |
-
this.uuid += 1;
|
| 669 |
-
id = this.uuid;
|
| 670 |
-
}
|
| 671 |
-
return 'ui-dialog-title-' + id;
|
| 672 |
-
},
|
| 673 |
-
|
| 674 |
-
overlay: function(dialog) {
|
| 675 |
-
this.$el = $.ui.dialog.overlay.create(dialog);
|
| 676 |
-
}
|
| 677 |
-
});
|
| 678 |
-
|
| 679 |
-
$.extend($.ui.dialog.overlay, {
|
| 680 |
-
instances: [],
|
| 681 |
-
// reuse old instances due to IE memory leak with alpha transparency (see #5185)
|
| 682 |
-
oldInstances: [],
|
| 683 |
-
maxZ: 0,
|
| 684 |
-
events: $.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','),
|
| 685 |
-
function(event) { return event + '.dialog-overlay'; }).join(' '),
|
| 686 |
-
create: function(dialog) {
|
| 687 |
-
if (this.instances.length === 0) {
|
| 688 |
-
// prevent use of anchors and inputs
|
| 689 |
-
// we use a setTimeout in case the overlay is created from an
|
| 690 |
-
// event that we're going to be cancelling (see #2804)
|
| 691 |
-
setTimeout(function() {
|
| 692 |
-
// handle $(el).dialog().dialog('close') (see #4065)
|
| 693 |
-
if ($.ui.dialog.overlay.instances.length) {
|
| 694 |
-
$(document).bind($.ui.dialog.overlay.events, function(event) {
|
| 695 |
-
// stop events if the z-index of the target is < the z-index of the overlay
|
| 696 |
-
return ($(event.target).zIndex() >= $.ui.dialog.overlay.maxZ);
|
| 697 |
-
});
|
| 698 |
-
}
|
| 699 |
-
}, 1);
|
| 700 |
-
|
| 701 |
-
// allow closing by pressing the escape key
|
| 702 |
-
$(document).bind('keydown.dialog-overlay', function(event) {
|
| 703 |
-
if (dialog.options.closeOnEscape && event.keyCode &&
|
| 704 |
-
event.keyCode === $.ui.keyCode.ESCAPE) {
|
| 705 |
-
|
| 706 |
-
dialog.close(event);
|
| 707 |
-
event.preventDefault();
|
| 708 |
-
}
|
| 709 |
-
});
|
| 710 |
-
|
| 711 |
-
// handle window resize
|
| 712 |
-
$(window).bind('resize.dialog-overlay', $.ui.dialog.overlay.resize);
|
| 713 |
-
}
|
| 714 |
-
|
| 715 |
-
var $el = (this.oldInstances.pop() || $('<div></div>').addClass('ui-widget-overlay'))
|
| 716 |
-
.appendTo(document.body)
|
| 717 |
-
.css({
|
| 718 |
-
width: this.width(),
|
| 719 |
-
height: this.height()
|
| 720 |
-
});
|
| 721 |
-
|
| 722 |
-
if ($.fn.bgiframe) {
|
| 723 |
-
$el.bgiframe();
|
| 724 |
-
}
|
| 725 |
-
|
| 726 |
-
this.instances.push($el);
|
| 727 |
-
return $el;
|
| 728 |
-
},
|
| 729 |
-
|
| 730 |
-
destroy: function($el) {
|
| 731 |
-
this.oldInstances.push(this.instances.splice($.inArray($el, this.instances), 1)[0]);
|
| 732 |
-
|
| 733 |
-
if (this.instances.length === 0) {
|
| 734 |
-
$([document, window]).unbind('.dialog-overlay');
|
| 735 |
-
}
|
| 736 |
-
|
| 737 |
-
$el.remove();
|
| 738 |
-
|
| 739 |
-
// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
|
| 740 |
-
var maxZ = 0;
|
| 741 |
-
$.each(this.instances, function() {
|
| 742 |
-
maxZ = Math.max(maxZ, this.css('z-index'));
|
| 743 |
-
});
|
| 744 |
-
this.maxZ = maxZ;
|
| 745 |
-
},
|
| 746 |
-
|
| 747 |
-
height: function() {
|
| 748 |
-
var scrollHeight,
|
| 749 |
-
offsetHeight;
|
| 750 |
-
// handle IE 6
|
| 751 |
-
if ($.browser.msie && $.browser.version < 7) {
|
| 752 |
-
scrollHeight = Math.max(
|
| 753 |
-
document.documentElement.scrollHeight,
|
| 754 |
-
document.body.scrollHeight
|
| 755 |
-
);
|
| 756 |
-
offsetHeight = Math.max(
|
| 757 |
-
document.documentElement.offsetHeight,
|
| 758 |
-
document.body.offsetHeight
|
| 759 |
-
);
|
| 760 |
-
|
| 761 |
-
if (scrollHeight < offsetHeight) {
|
| 762 |
-
return $(window).height() + 'px';
|
| 763 |
-
} else {
|
| 764 |
-
return scrollHeight + 'px';
|
| 765 |
-
}
|
| 766 |
-
// handle "good" browsers
|
| 767 |
-
} else {
|
| 768 |
-
return $(document).height() + 'px';
|
| 769 |
-
}
|
| 770 |
-
},
|
| 771 |
-
|
| 772 |
-
width: function() {
|
| 773 |
-
var scrollWidth,
|
| 774 |
-
offsetWidth;
|
| 775 |
-
// handle IE 6
|
| 776 |
-
if ($.browser.msie && $.browser.version < 7) {
|
| 777 |
-
scrollWidth = Math.max(
|
| 778 |
-
document.documentElement.scrollWidth,
|
| 779 |
-
document.body.scrollWidth
|
| 780 |
-
);
|
| 781 |
-
offsetWidth = Math.max(
|
| 782 |
-
document.documentElement.offsetWidth,
|
| 783 |
-
document.body.offsetWidth
|
| 784 |
-
);
|
| 785 |
-
|
| 786 |
-
if (scrollWidth < offsetWidth) {
|
| 787 |
-
return $(window).width() + 'px';
|
| 788 |
-
} else {
|
| 789 |
-
return scrollWidth + 'px';
|
| 790 |
-
}
|
| 791 |
-
// handle "good" browsers
|
| 792 |
-
} else {
|
| 793 |
-
return $(document).width() + 'px';
|
| 794 |
-
}
|
| 795 |
-
},
|
| 796 |
-
|
| 797 |
-
resize: function() {
|
| 798 |
-
/* If the dialog is draggable and the user drags it past the
|
| 799 |
-
* right edge of the window, the document becomes wider so we
|
| 800 |
-
* need to stretch the overlay. If the user then drags the
|
| 801 |
-
* dialog back to the left, the document will become narrower,
|
| 802 |
-
* so we need to shrink the overlay to the appropriate size.
|
| 803 |
-
* This is handled by shrinking the overlay before setting it
|
| 804 |
-
* to the full document size.
|
| 805 |
-
*/
|
| 806 |
-
var $overlays = $([]);
|
| 807 |
-
$.each($.ui.dialog.overlay.instances, function() {
|
| 808 |
-
$overlays = $overlays.add(this);
|
| 809 |
-
});
|
| 810 |
-
|
| 811 |
-
$overlays.css({
|
| 812 |
-
width: 0,
|
| 813 |
-
height: 0
|
| 814 |
-
}).css({
|
| 815 |
-
width: $.ui.dialog.overlay.width(),
|
| 816 |
-
height: $.ui.dialog.overlay.height()
|
| 817 |
-
});
|
| 818 |
-
}
|
| 819 |
-
});
|
| 820 |
-
|
| 821 |
-
$.extend($.ui.dialog.overlay.prototype, {
|
| 822 |
-
destroy: function() {
|
| 823 |
-
$.ui.dialog.overlay.destroy(this.$el);
|
| 824 |
-
}
|
| 825 |
-
});
|
| 826 |
-
|
| 827 |
-
}(jQuery));
|
| 1 |
+
/*
|
| 2 |
+
* jQuery UI Dialog 1.8.4
|
| 3 |
+
*
|
| 4 |
+
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 5 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 6 |
+
* http://jquery.org/license
|
| 7 |
+
*
|
| 8 |
+
* http://docs.jquery.com/UI/Dialog
|
| 9 |
+
*
|
| 10 |
+
* Depends:
|
| 11 |
+
* jquery.ui.core.js
|
| 12 |
+
* jquery.ui.widget.js
|
| 13 |
+
* jquery.ui.button.js
|
| 14 |
+
* jquery.ui.draggable.js
|
| 15 |
+
* jquery.ui.mouse.js
|
| 16 |
+
* jquery.ui.position.js
|
| 17 |
+
* jquery.ui.resizable.js
|
| 18 |
+
*/
|
| 19 |
+
(function( $, undefined ) {
|
| 20 |
+
|
| 21 |
+
var uiDialogClasses =
|
| 22 |
+
'ui-dialog ' +
|
| 23 |
+
'ui-widget ' +
|
| 24 |
+
'ui-widget-content ' +
|
| 25 |
+
'ui-corner-all ';
|
| 26 |
+
|
| 27 |
+
$.widget("ui.dialog", {
|
| 28 |
+
options: {
|
| 29 |
+
autoOpen: true,
|
| 30 |
+
buttons: {},
|
| 31 |
+
closeOnEscape: true,
|
| 32 |
+
closeText: 'close',
|
| 33 |
+
dialogClass: '',
|
| 34 |
+
draggable: true,
|
| 35 |
+
hide: null,
|
| 36 |
+
height: 'auto',
|
| 37 |
+
maxHeight: false,
|
| 38 |
+
maxWidth: false,
|
| 39 |
+
minHeight: 150,
|
| 40 |
+
minWidth: 150,
|
| 41 |
+
modal: false,
|
| 42 |
+
position: {
|
| 43 |
+
my: 'center',
|
| 44 |
+
at: 'center',
|
| 45 |
+
of: window,
|
| 46 |
+
collision: 'fit',
|
| 47 |
+
// ensure that the titlebar is never outside the document
|
| 48 |
+
using: function(pos) {
|
| 49 |
+
var topOffset = $(this).css(pos).offset().top;
|
| 50 |
+
if (topOffset < 0) {
|
| 51 |
+
$(this).css('top', pos.top - topOffset);
|
| 52 |
+
}
|
| 53 |
+
}
|
| 54 |
+
},
|
| 55 |
+
resizable: true,
|
| 56 |
+
show: null,
|
| 57 |
+
stack: true,
|
| 58 |
+
title: '',
|
| 59 |
+
width: 300,
|
| 60 |
+
zIndex: 1000
|
| 61 |
+
},
|
| 62 |
+
|
| 63 |
+
_create: function() {
|
| 64 |
+
this.originalTitle = this.element.attr('title');
|
| 65 |
+
// #5742 - .attr() might return a DOMElement
|
| 66 |
+
if ( typeof this.originalTitle !== "string" ) {
|
| 67 |
+
this.originalTitle = "";
|
| 68 |
+
}
|
| 69 |
+
|
| 70 |
+
var self = this,
|
| 71 |
+
options = self.options,
|
| 72 |
+
|
| 73 |
+
title = options.title || self.originalTitle || ' ',
|
| 74 |
+
titleId = $.ui.dialog.getTitleId(self.element),
|
| 75 |
+
|
| 76 |
+
uiDialog = (self.uiDialog = $('<div></div>'))
|
| 77 |
+
.appendTo(document.body)
|
| 78 |
+
.hide()
|
| 79 |
+
.addClass(uiDialogClasses + options.dialogClass)
|
| 80 |
+
.css({
|
| 81 |
+
zIndex: options.zIndex
|
| 82 |
+
})
|
| 83 |
+
// setting tabIndex makes the div focusable
|
| 84 |
+
// setting outline to 0 prevents a border on focus in Mozilla
|
| 85 |
+
.attr('tabIndex', -1).css('outline', 0).keydown(function(event) {
|
| 86 |
+
if (options.closeOnEscape && event.keyCode &&
|
| 87 |
+
event.keyCode === $.ui.keyCode.ESCAPE) {
|
| 88 |
+
|
| 89 |
+
self.close(event);
|
| 90 |
+
event.preventDefault();
|
| 91 |
+
}
|
| 92 |
+
})
|
| 93 |
+
.attr({
|
| 94 |
+
role: 'dialog',
|
| 95 |
+
'aria-labelledby': titleId
|
| 96 |
+
})
|
| 97 |
+
.mousedown(function(event) {
|
| 98 |
+
self.moveToTop(false, event);
|
| 99 |
+
}),
|
| 100 |
+
|
| 101 |
+
uiDialogContent = self.element
|
| 102 |
+
.show()
|
| 103 |
+
.removeAttr('title')
|
| 104 |
+
.addClass(
|
| 105 |
+
'ui-dialog-content ' +
|
| 106 |
+
'ui-widget-content')
|
| 107 |
+
.appendTo(uiDialog),
|
| 108 |
+
|
| 109 |
+
uiDialogTitlebar = (self.uiDialogTitlebar = $('<div></div>'))
|
| 110 |
+
.addClass(
|
| 111 |
+
'ui-dialog-titlebar ' +
|
| 112 |
+
'ui-widget-header ' +
|
| 113 |
+
'ui-corner-all ' +
|
| 114 |
+
'ui-helper-clearfix'
|
| 115 |
+
)
|
| 116 |
+
.prependTo(uiDialog),
|
| 117 |
+
|
| 118 |
+
uiDialogTitlebarClose = $('<a href="#"></a>')
|
| 119 |
+
.addClass(
|
| 120 |
+
'ui-dialog-titlebar-close ' +
|
| 121 |
+
'ui-corner-all'
|
| 122 |
+
)
|
| 123 |
+
.attr('role', 'button')
|
| 124 |
+
.hover(
|
| 125 |
+
function() {
|
| 126 |
+
uiDialogTitlebarClose.addClass('ui-state-hover');
|
| 127 |
+
},
|
| 128 |
+
function() {
|
| 129 |
+
uiDialogTitlebarClose.removeClass('ui-state-hover');
|
| 130 |
+
}
|
| 131 |
+
)
|
| 132 |
+
.focus(function() {
|
| 133 |
+
uiDialogTitlebarClose.addClass('ui-state-focus');
|
| 134 |
+
})
|
| 135 |
+
.blur(function() {
|
| 136 |
+
uiDialogTitlebarClose.removeClass('ui-state-focus');
|
| 137 |
+
})
|
| 138 |
+
.click(function(event) {
|
| 139 |
+
self.close(event);
|
| 140 |
+
return false;
|
| 141 |
+
})
|
| 142 |
+
.appendTo(uiDialogTitlebar),
|
| 143 |
+
|
| 144 |
+
uiDialogTitlebarCloseText = (self.uiDialogTitlebarCloseText = $('<span></span>'))
|
| 145 |
+
.addClass(
|
| 146 |
+
'ui-icon ' +
|
| 147 |
+
'ui-icon-closethick'
|
| 148 |
+
)
|
| 149 |
+
.text(options.closeText)
|
| 150 |
+
.appendTo(uiDialogTitlebarClose),
|
| 151 |
+
|
| 152 |
+
uiDialogTitle = $('<span></span>')
|
| 153 |
+
.addClass('ui-dialog-title')
|
| 154 |
+
.attr('id', titleId)
|
| 155 |
+
.html(title)
|
| 156 |
+
.prependTo(uiDialogTitlebar);
|
| 157 |
+
|
| 158 |
+
//handling of deprecated beforeclose (vs beforeClose) option
|
| 159 |
+
//Ticket #4669 http://dev.jqueryui.com/ticket/4669
|
| 160 |
+
//TODO: remove in 1.9pre
|
| 161 |
+
if ($.isFunction(options.beforeclose) && !$.isFunction(options.beforeClose)) {
|
| 162 |
+
options.beforeClose = options.beforeclose;
|
| 163 |
+
}
|
| 164 |
+
|
| 165 |
+
uiDialogTitlebar.find("*").add(uiDialogTitlebar).disableSelection();
|
| 166 |
+
|
| 167 |
+
if (options.draggable && $.fn.draggable) {
|
| 168 |
+
self._makeDraggable();
|
| 169 |
+
}
|
| 170 |
+
if (options.resizable && $.fn.resizable) {
|
| 171 |
+
self._makeResizable();
|
| 172 |
+
}
|
| 173 |
+
|
| 174 |
+
self._createButtons(options.buttons);
|
| 175 |
+
self._isOpen = false;
|
| 176 |
+
|
| 177 |
+
if ($.fn.bgiframe) {
|
| 178 |
+
uiDialog.bgiframe();
|
| 179 |
+
}
|
| 180 |
+
},
|
| 181 |
+
|
| 182 |
+
_init: function() {
|
| 183 |
+
if ( this.options.autoOpen ) {
|
| 184 |
+
this.open();
|
| 185 |
+
}
|
| 186 |
+
},
|
| 187 |
+
|
| 188 |
+
destroy: function() {
|
| 189 |
+
var self = this;
|
| 190 |
+
|
| 191 |
+
if (self.overlay) {
|
| 192 |
+
self.overlay.destroy();
|
| 193 |
+
}
|
| 194 |
+
self.uiDialog.hide();
|
| 195 |
+
self.element
|
| 196 |
+
.unbind('.dialog')
|
| 197 |
+
.removeData('dialog')
|
| 198 |
+
.removeClass('ui-dialog-content ui-widget-content')
|
| 199 |
+
.hide().appendTo('body');
|
| 200 |
+
self.uiDialog.remove();
|
| 201 |
+
|
| 202 |
+
if (self.originalTitle) {
|
| 203 |
+
self.element.attr('title', self.originalTitle);
|
| 204 |
+
}
|
| 205 |
+
|
| 206 |
+
return self;
|
| 207 |
+
},
|
| 208 |
+
|
| 209 |
+
widget: function() {
|
| 210 |
+
return this.uiDialog;
|
| 211 |
+
},
|
| 212 |
+
|
| 213 |
+
close: function(event) {
|
| 214 |
+
var self = this,
|
| 215 |
+
maxZ;
|
| 216 |
+
|
| 217 |
+
if (false === self._trigger('beforeClose', event)) {
|
| 218 |
+
return;
|
| 219 |
+
}
|
| 220 |
+
|
| 221 |
+
if (self.overlay) {
|
| 222 |
+
self.overlay.destroy();
|
| 223 |
+
}
|
| 224 |
+
self.uiDialog.unbind('keypress.ui-dialog');
|
| 225 |
+
|
| 226 |
+
self._isOpen = false;
|
| 227 |
+
|
| 228 |
+
if (self.options.hide) {
|
| 229 |
+
self.uiDialog.hide(self.options.hide, function() {
|
| 230 |
+
self._trigger('close', event);
|
| 231 |
+
});
|
| 232 |
+
} else {
|
| 233 |
+
self.uiDialog.hide();
|
| 234 |
+
self._trigger('close', event);
|
| 235 |
+
}
|
| 236 |
+
|
| 237 |
+
$.ui.dialog.overlay.resize();
|
| 238 |
+
|
| 239 |
+
// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
|
| 240 |
+
if (self.options.modal) {
|
| 241 |
+
maxZ = 0;
|
| 242 |
+
$('.ui-dialog').each(function() {
|
| 243 |
+
if (this !== self.uiDialog[0]) {
|
| 244 |
+
maxZ = Math.max(maxZ, $(this).css('z-index'));
|
| 245 |
+
}
|
| 246 |
+
});
|
| 247 |
+
$.ui.dialog.maxZ = maxZ;
|
| 248 |
+
}
|
| 249 |
+
|
| 250 |
+
return self;
|
| 251 |
+
},
|
| 252 |
+
|
| 253 |
+
isOpen: function() {
|
| 254 |
+
return this._isOpen;
|
| 255 |
+
},
|
| 256 |
+
|
| 257 |
+
// the force parameter allows us to move modal dialogs to their correct
|
| 258 |
+
// position on open
|
| 259 |
+
moveToTop: function(force, event) {
|
| 260 |
+
var self = this,
|
| 261 |
+
options = self.options,
|
| 262 |
+
saveScroll;
|
| 263 |
+
|
| 264 |
+
if ((options.modal && !force) ||
|
| 265 |
+
(!options.stack && !options.modal)) {
|
| 266 |
+
return self._trigger('focus', event);
|
| 267 |
+
}
|
| 268 |
+
|
| 269 |
+
if (options.zIndex > $.ui.dialog.maxZ) {
|
| 270 |
+
$.ui.dialog.maxZ = options.zIndex;
|
| 271 |
+
}
|
| 272 |
+
if (self.overlay) {
|
| 273 |
+
$.ui.dialog.maxZ += 1;
|
| 274 |
+
self.overlay.$el.css('z-index', $.ui.dialog.overlay.maxZ = $.ui.dialog.maxZ);
|
| 275 |
+
}
|
| 276 |
+
|
| 277 |
+
//Save and then restore scroll since Opera 9.5+ resets when parent z-Index is changed.
|
| 278 |
+
// http://ui.jquery.com/bugs/ticket/3193
|
| 279 |
+
saveScroll = { scrollTop: self.element.attr('scrollTop'), scrollLeft: self.element.attr('scrollLeft') };
|
| 280 |
+
$.ui.dialog.maxZ += 1;
|
| 281 |
+
self.uiDialog.css('z-index', $.ui.dialog.maxZ);
|
| 282 |
+
self.element.attr(saveScroll);
|
| 283 |
+
self._trigger('focus', event);
|
| 284 |
+
|
| 285 |
+
return self;
|
| 286 |
+
},
|
| 287 |
+
|
| 288 |
+
open: function() {
|
| 289 |
+
if (this._isOpen) { return; }
|
| 290 |
+
|
| 291 |
+
var self = this,
|
| 292 |
+
options = self.options,
|
| 293 |
+
uiDialog = self.uiDialog;
|
| 294 |
+
|
| 295 |
+
self.overlay = options.modal ? new $.ui.dialog.overlay(self) : null;
|
| 296 |
+
if (uiDialog.next().length) {
|
| 297 |
+
uiDialog.appendTo('body');
|
| 298 |
+
}
|
| 299 |
+
self._size();
|
| 300 |
+
self._position(options.position);
|
| 301 |
+
uiDialog.show(options.show);
|
| 302 |
+
self.moveToTop(true);
|
| 303 |
+
|
| 304 |
+
// prevent tabbing out of modal dialogs
|
| 305 |
+
if (options.modal) {
|
| 306 |
+
uiDialog.bind('keypress.ui-dialog', function(event) {
|
| 307 |
+
if (event.keyCode !== $.ui.keyCode.TAB) {
|
| 308 |
+
return;
|
| 309 |
+
}
|
| 310 |
+
|
| 311 |
+
var tabbables = $(':tabbable', this),
|
| 312 |
+
first = tabbables.filter(':first'),
|
| 313 |
+
last = tabbables.filter(':last');
|
| 314 |
+
|
| 315 |
+
if (event.target === last[0] && !event.shiftKey) {
|
| 316 |
+
first.focus(1);
|
| 317 |
+
return false;
|
| 318 |
+
} else if (event.target === first[0] && event.shiftKey) {
|
| 319 |
+
last.focus(1);
|
| 320 |
+
return false;
|
| 321 |
+
}
|
| 322 |
+
});
|
| 323 |
+
}
|
| 324 |
+
|
| 325 |
+
// set focus to the first tabbable element in the content area or the first button
|
| 326 |
+
// if there are no tabbable elements, set focus on the dialog itself
|
| 327 |
+
$(self.element.find(':tabbable').get().concat(
|
| 328 |
+
uiDialog.find('.ui-dialog-buttonpane :tabbable').get().concat(
|
| 329 |
+
uiDialog.get()))).eq(0).focus();
|
| 330 |
+
|
| 331 |
+
self._trigger('open');
|
| 332 |
+
self._isOpen = true;
|
| 333 |
+
|
| 334 |
+
return self;
|
| 335 |
+
},
|
| 336 |
+
|
| 337 |
+
_createButtons: function(buttons) {
|
| 338 |
+
var self = this,
|
| 339 |
+
hasButtons = false,
|
| 340 |
+
uiDialogButtonPane = $('<div></div>')
|
| 341 |
+
.addClass(
|
| 342 |
+
'ui-dialog-buttonpane ' +
|
| 343 |
+
'ui-widget-content ' +
|
| 344 |
+
'ui-helper-clearfix'
|
| 345 |
+
),
|
| 346 |
+
uiButtonSet = $( "<div></div>" )
|
| 347 |
+
.addClass( "ui-dialog-buttonset" )
|
| 348 |
+
.appendTo( uiDialogButtonPane );
|
| 349 |
+
|
| 350 |
+
// if we already have a button pane, remove it
|
| 351 |
+
self.uiDialog.find('.ui-dialog-buttonpane').remove();
|
| 352 |
+
|
| 353 |
+
if (typeof buttons === 'object' && buttons !== null) {
|
| 354 |
+
$.each(buttons, function() {
|
| 355 |
+
return !(hasButtons = true);
|
| 356 |
+
});
|
| 357 |
+
}
|
| 358 |
+
if (hasButtons) {
|
| 359 |
+
$.each(buttons, function(name, fn) {
|
| 360 |
+
var button = $('<button type="button"></button>')
|
| 361 |
+
.text(name)
|
| 362 |
+
.click(function() { fn.apply(self.element[0], arguments); })
|
| 363 |
+
.appendTo(uiButtonSet);
|
| 364 |
+
if ($.fn.button) {
|
| 365 |
+
button.button();
|
| 366 |
+
}
|
| 367 |
+
});
|
| 368 |
+
uiDialogButtonPane.appendTo(self.uiDialog);
|
| 369 |
+
}
|
| 370 |
+
},
|
| 371 |
+
|
| 372 |
+
_makeDraggable: function() {
|
| 373 |
+
var self = this,
|
| 374 |
+
options = self.options,
|
| 375 |
+
doc = $(document),
|
| 376 |
+
heightBeforeDrag;
|
| 377 |
+
|
| 378 |
+
function filteredUi(ui) {
|
| 379 |
+
return {
|
| 380 |
+
position: ui.position,
|
| 381 |
+
offset: ui.offset
|
| 382 |
+
};
|
| 383 |
+
}
|
| 384 |
+
|
| 385 |
+
self.uiDialog.draggable({
|
| 386 |
+
cancel: '.ui-dialog-content, .ui-dialog-titlebar-close',
|
| 387 |
+
handle: '.ui-dialog-titlebar',
|
| 388 |
+
containment: 'document',
|
| 389 |
+
start: function(event, ui) {
|
| 390 |
+
heightBeforeDrag = options.height === "auto" ? "auto" : $(this).height();
|
| 391 |
+
$(this).height($(this).height()).addClass("ui-dialog-dragging");
|
| 392 |
+
self._trigger('dragStart', event, filteredUi(ui));
|
| 393 |
+
},
|
| 394 |
+
drag: function(event, ui) {
|
| 395 |
+
self._trigger('drag', event, filteredUi(ui));
|
| 396 |
+
},
|
| 397 |
+
stop: function(event, ui) {
|
| 398 |
+
options.position = [ui.position.left - doc.scrollLeft(),
|
| 399 |
+
ui.position.top - doc.scrollTop()];
|
| 400 |
+
$(this).removeClass("ui-dialog-dragging").height(heightBeforeDrag);
|
| 401 |
+
self._trigger('dragStop', event, filteredUi(ui));
|
| 402 |
+
$.ui.dialog.overlay.resize();
|
| 403 |
+
}
|
| 404 |
+
});
|
| 405 |
+
},
|
| 406 |
+
|
| 407 |
+
_makeResizable: function(handles) {
|
| 408 |
+
handles = (handles === undefined ? this.options.resizable : handles);
|
| 409 |
+
var self = this,
|
| 410 |
+
options = self.options,
|
| 411 |
+
// .ui-resizable has position: relative defined in the stylesheet
|
| 412 |
+
// but dialogs have to use absolute or fixed positioning
|
| 413 |
+
position = self.uiDialog.css('position'),
|
| 414 |
+
resizeHandles = (typeof handles === 'string' ?
|
| 415 |
+
handles :
|
| 416 |
+
'n,e,s,w,se,sw,ne,nw'
|
| 417 |
+
);
|
| 418 |
+
|
| 419 |
+
function filteredUi(ui) {
|
| 420 |
+
return {
|
| 421 |
+
originalPosition: ui.originalPosition,
|
| 422 |
+
originalSize: ui.originalSize,
|
| 423 |
+
position: ui.position,
|
| 424 |
+
size: ui.size
|
| 425 |
+
};
|
| 426 |
+
}
|
| 427 |
+
|
| 428 |
+
self.uiDialog.resizable({
|
| 429 |
+
cancel: '.ui-dialog-content',
|
| 430 |
+
containment: 'document',
|
| 431 |
+
alsoResize: self.element,
|
| 432 |
+
maxWidth: options.maxWidth,
|
| 433 |
+
maxHeight: options.maxHeight,
|
| 434 |
+
minWidth: options.minWidth,
|
| 435 |
+
minHeight: self._minHeight(),
|
| 436 |
+
handles: resizeHandles,
|
| 437 |
+
start: function(event, ui) {
|
| 438 |
+
$(this).addClass("ui-dialog-resizing");
|
| 439 |
+
self._trigger('resizeStart', event, filteredUi(ui));
|
| 440 |
+
},
|
| 441 |
+
resize: function(event, ui) {
|
| 442 |
+
self._trigger('resize', event, filteredUi(ui));
|
| 443 |
+
},
|
| 444 |
+
stop: function(event, ui) {
|
| 445 |
+
$(this).removeClass("ui-dialog-resizing");
|
| 446 |
+
options.height = $(this).height();
|
| 447 |
+
options.width = $(this).width();
|
| 448 |
+
self._trigger('resizeStop', event, filteredUi(ui));
|
| 449 |
+
$.ui.dialog.overlay.resize();
|
| 450 |
+
}
|
| 451 |
+
})
|
| 452 |
+
.css('position', position)
|
| 453 |
+
.find('.ui-resizable-se').addClass('ui-icon ui-icon-grip-diagonal-se');
|
| 454 |
+
},
|
| 455 |
+
|
| 456 |
+
_minHeight: function() {
|
| 457 |
+
var options = this.options;
|
| 458 |
+
|
| 459 |
+
if (options.height === 'auto') {
|
| 460 |
+
return options.minHeight;
|
| 461 |
+
} else {
|
| 462 |
+
return Math.min(options.minHeight, options.height);
|
| 463 |
+
}
|
| 464 |
+
},
|
| 465 |
+
|
| 466 |
+
_position: function(position) {
|
| 467 |
+
var myAt = [],
|
| 468 |
+
offset = [0, 0],
|
| 469 |
+
isVisible;
|
| 470 |
+
|
| 471 |
+
if (position) {
|
| 472 |
+
// deep extending converts arrays to objects in jQuery <= 1.3.2 :-(
|
| 473 |
+
// if (typeof position == 'string' || $.isArray(position)) {
|
| 474 |
+
// myAt = $.isArray(position) ? position : position.split(' ');
|
| 475 |
+
|
| 476 |
+
if (typeof position === 'string' || (typeof position === 'object' && '0' in position)) {
|
| 477 |
+
myAt = position.split ? position.split(' ') : [position[0], position[1]];
|
| 478 |
+
if (myAt.length === 1) {
|
| 479 |
+
myAt[1] = myAt[0];
|
| 480 |
+
}
|
| 481 |
+
|
| 482 |
+
$.each(['left', 'top'], function(i, offsetPosition) {
|
| 483 |
+
if (+myAt[i] === myAt[i]) {
|
| 484 |
+
offset[i] = myAt[i];
|
| 485 |
+
myAt[i] = offsetPosition;
|
| 486 |
+
}
|
| 487 |
+
});
|
| 488 |
+
|
| 489 |
+
position = {
|
| 490 |
+
my: myAt.join(" "),
|
| 491 |
+
at: myAt.join(" "),
|
| 492 |
+
offset: offset.join(" ")
|
| 493 |
+
};
|
| 494 |
+
}
|
| 495 |
+
|
| 496 |
+
position = $.extend({}, $.ui.dialog.prototype.options.position, position);
|
| 497 |
+
} else {
|
| 498 |
+
position = $.ui.dialog.prototype.options.position;
|
| 499 |
+
}
|
| 500 |
+
|
| 501 |
+
// need to show the dialog to get the actual offset in the position plugin
|
| 502 |
+
isVisible = this.uiDialog.is(':visible');
|
| 503 |
+
if (!isVisible) {
|
| 504 |
+
this.uiDialog.show();
|
| 505 |
+
}
|
| 506 |
+
this.uiDialog
|
| 507 |
+
// workaround for jQuery bug #5781 http://dev.jquery.com/ticket/5781
|
| 508 |
+
.css({ top: 0, left: 0 })
|
| 509 |
+
.position(position);
|
| 510 |
+
if (!isVisible) {
|
| 511 |
+
this.uiDialog.hide();
|
| 512 |
+
}
|
| 513 |
+
},
|
| 514 |
+
|
| 515 |
+
_setOption: function(key, value){
|
| 516 |
+
var self = this,
|
| 517 |
+
uiDialog = self.uiDialog,
|
| 518 |
+
isResizable = uiDialog.is(':data(resizable)'),
|
| 519 |
+
resize = false;
|
| 520 |
+
|
| 521 |
+
switch (key) {
|
| 522 |
+
//handling of deprecated beforeclose (vs beforeClose) option
|
| 523 |
+
//Ticket #4669 http://dev.jqueryui.com/ticket/4669
|
| 524 |
+
//TODO: remove in 1.9pre
|
| 525 |
+
case "beforeclose":
|
| 526 |
+
key = "beforeClose";
|
| 527 |
+
break;
|
| 528 |
+
case "buttons":
|
| 529 |
+
self._createButtons(value);
|
| 530 |
+
resize = true;
|
| 531 |
+
break;
|
| 532 |
+
case "closeText":
|
| 533 |
+
// convert whatever was passed in to a string, for text() to not throw up
|
| 534 |
+
self.uiDialogTitlebarCloseText.text("" + value);
|
| 535 |
+
break;
|
| 536 |
+
case "dialogClass":
|
| 537 |
+
uiDialog
|
| 538 |
+
.removeClass(self.options.dialogClass)
|
| 539 |
+
.addClass(uiDialogClasses + value);
|
| 540 |
+
break;
|
| 541 |
+
case "disabled":
|
| 542 |
+
if (value) {
|
| 543 |
+
uiDialog.addClass('ui-dialog-disabled');
|
| 544 |
+
} else {
|
| 545 |
+
uiDialog.removeClass('ui-dialog-disabled');
|
| 546 |
+
}
|
| 547 |
+
break;
|
| 548 |
+
case "draggable":
|
| 549 |
+
if (value) {
|
| 550 |
+
self._makeDraggable();
|
| 551 |
+
} else {
|
| 552 |
+
uiDialog.draggable('destroy');
|
| 553 |
+
}
|
| 554 |
+
break;
|
| 555 |
+
case "height":
|
| 556 |
+
resize = true;
|
| 557 |
+
break;
|
| 558 |
+
case "maxHeight":
|
| 559 |
+
if (isResizable) {
|
| 560 |
+
uiDialog.resizable('option', 'maxHeight', value);
|
| 561 |
+
}
|
| 562 |
+
resize = true;
|
| 563 |
+
break;
|
| 564 |
+
case "maxWidth":
|
| 565 |
+
if (isResizable) {
|
| 566 |
+
uiDialog.resizable('option', 'maxWidth', value);
|
| 567 |
+
}
|
| 568 |
+
resize = true;
|
| 569 |
+
break;
|
| 570 |
+
case "minHeight":
|
| 571 |
+
if (isResizable) {
|
| 572 |
+
uiDialog.resizable('option', 'minHeight', value);
|
| 573 |
+
}
|
| 574 |
+
resize = true;
|
| 575 |
+
break;
|
| 576 |
+
case "minWidth":
|
| 577 |
+
if (isResizable) {
|
| 578 |
+
uiDialog.resizable('option', 'minWidth', value);
|
| 579 |
+
}
|
| 580 |
+
resize = true;
|
| 581 |
+
break;
|
| 582 |
+
case "position":
|
| 583 |
+
self._position(value);
|
| 584 |
+
break;
|
| 585 |
+
case "resizable":
|
| 586 |
+
// currently resizable, becoming non-resizable
|
| 587 |
+
if (isResizable && !value) {
|
| 588 |
+
uiDialog.resizable('destroy');
|
| 589 |
+
}
|
| 590 |
+
|
| 591 |
+
// currently resizable, changing handles
|
| 592 |
+
if (isResizable && typeof value === 'string') {
|
| 593 |
+
uiDialog.resizable('option', 'handles', value);
|
| 594 |
+
}
|
| 595 |
+
|
| 596 |
+
// currently non-resizable, becoming resizable
|
| 597 |
+
if (!isResizable && value !== false) {
|
| 598 |
+
self._makeResizable(value);
|
| 599 |
+
}
|
| 600 |
+
break;
|
| 601 |
+
case "title":
|
| 602 |
+
// convert whatever was passed in o a string, for html() to not throw up
|
| 603 |
+
$(".ui-dialog-title", self.uiDialogTitlebar).html("" + (value || ' '));
|
| 604 |
+
break;
|
| 605 |
+
case "width":
|
| 606 |
+
resize = true;
|
| 607 |
+
break;
|
| 608 |
+
}
|
| 609 |
+
|
| 610 |
+
$.Widget.prototype._setOption.apply(self, arguments);
|
| 611 |
+
if (resize) {
|
| 612 |
+
self._size();
|
| 613 |
+
}
|
| 614 |
+
},
|
| 615 |
+
|
| 616 |
+
_size: function() {
|
| 617 |
+
/* If the user has resized the dialog, the .ui-dialog and .ui-dialog-content
|
| 618 |
+
* divs will both have width and height set, so we need to reset them
|
| 619 |
+
*/
|
| 620 |
+
var options = this.options,
|
| 621 |
+
nonContentHeight;
|
| 622 |
+
|
| 623 |
+
// reset content sizing
|
| 624 |
+
// hide for non content measurement because height: 0 doesn't work in IE quirks mode (see #4350)
|
| 625 |
+
this.element.css({
|
| 626 |
+
width: 'auto',
|
| 627 |
+
minHeight: 0,
|
| 628 |
+
height: 0
|
| 629 |
+
});
|
| 630 |
+
|
| 631 |
+
if (options.minWidth > options.width) {
|
| 632 |
+
options.width = options.minWidth;
|
| 633 |
+
}
|
| 634 |
+
|
| 635 |
+
// reset wrapper sizing
|
| 636 |
+
// determine the height of all the non-content elements
|
| 637 |
+
nonContentHeight = this.uiDialog.css({
|
| 638 |
+
height: 'auto',
|
| 639 |
+
width: options.width
|
| 640 |
+
})
|
| 641 |
+
.height();
|
| 642 |
+
|
| 643 |
+
this.element
|
| 644 |
+
.css(options.height === 'auto' ? {
|
| 645 |
+
minHeight: Math.max(options.minHeight - nonContentHeight, 0),
|
| 646 |
+
height: 'auto'
|
| 647 |
+
} : {
|
| 648 |
+
minHeight: 0,
|
| 649 |
+
height: Math.max(options.height - nonContentHeight, 0)
|
| 650 |
+
})
|
| 651 |
+
.show();
|
| 652 |
+
|
| 653 |
+
if (this.uiDialog.is(':data(resizable)')) {
|
| 654 |
+
this.uiDialog.resizable('option', 'minHeight', this._minHeight());
|
| 655 |
+
}
|
| 656 |
+
}
|
| 657 |
+
});
|
| 658 |
+
|
| 659 |
+
$.extend($.ui.dialog, {
|
| 660 |
+
version: "1.8.4",
|
| 661 |
+
|
| 662 |
+
uuid: 0,
|
| 663 |
+
maxZ: 0,
|
| 664 |
+
|
| 665 |
+
getTitleId: function($el) {
|
| 666 |
+
var id = $el.attr('id');
|
| 667 |
+
if (!id) {
|
| 668 |
+
this.uuid += 1;
|
| 669 |
+
id = this.uuid;
|
| 670 |
+
}
|
| 671 |
+
return 'ui-dialog-title-' + id;
|
| 672 |
+
},
|
| 673 |
+
|
| 674 |
+
overlay: function(dialog) {
|
| 675 |
+
this.$el = $.ui.dialog.overlay.create(dialog);
|
| 676 |
+
}
|
| 677 |
+
});
|
| 678 |
+
|
| 679 |
+
$.extend($.ui.dialog.overlay, {
|
| 680 |
+
instances: [],
|
| 681 |
+
// reuse old instances due to IE memory leak with alpha transparency (see #5185)
|
| 682 |
+
oldInstances: [],
|
| 683 |
+
maxZ: 0,
|
| 684 |
+
events: $.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','),
|
| 685 |
+
function(event) { return event + '.dialog-overlay'; }).join(' '),
|
| 686 |
+
create: function(dialog) {
|
| 687 |
+
if (this.instances.length === 0) {
|
| 688 |
+
// prevent use of anchors and inputs
|
| 689 |
+
// we use a setTimeout in case the overlay is created from an
|
| 690 |
+
// event that we're going to be cancelling (see #2804)
|
| 691 |
+
setTimeout(function() {
|
| 692 |
+
// handle $(el).dialog().dialog('close') (see #4065)
|
| 693 |
+
if ($.ui.dialog.overlay.instances.length) {
|
| 694 |
+
$(document).bind($.ui.dialog.overlay.events, function(event) {
|
| 695 |
+
// stop events if the z-index of the target is < the z-index of the overlay
|
| 696 |
+
return ($(event.target).zIndex() >= $.ui.dialog.overlay.maxZ);
|
| 697 |
+
});
|
| 698 |
+
}
|
| 699 |
+
}, 1);
|
| 700 |
+
|
| 701 |
+
// allow closing by pressing the escape key
|
| 702 |
+
$(document).bind('keydown.dialog-overlay', function(event) {
|
| 703 |
+
if (dialog.options.closeOnEscape && event.keyCode &&
|
| 704 |
+
event.keyCode === $.ui.keyCode.ESCAPE) {
|
| 705 |
+
|
| 706 |
+
dialog.close(event);
|
| 707 |
+
event.preventDefault();
|
| 708 |
+
}
|
| 709 |
+
});
|
| 710 |
+
|
| 711 |
+
// handle window resize
|
| 712 |
+
$(window).bind('resize.dialog-overlay', $.ui.dialog.overlay.resize);
|
| 713 |
+
}
|
| 714 |
+
|
| 715 |
+
var $el = (this.oldInstances.pop() || $('<div></div>').addClass('ui-widget-overlay'))
|
| 716 |
+
.appendTo(document.body)
|
| 717 |
+
.css({
|
| 718 |
+
width: this.width(),
|
| 719 |
+
height: this.height()
|
| 720 |
+
});
|
| 721 |
+
|
| 722 |
+
if ($.fn.bgiframe) {
|
| 723 |
+
$el.bgiframe();
|
| 724 |
+
}
|
| 725 |
+
|
| 726 |
+
this.instances.push($el);
|
| 727 |
+
return $el;
|
| 728 |
+
},
|
| 729 |
+
|
| 730 |
+
destroy: function($el) {
|
| 731 |
+
this.oldInstances.push(this.instances.splice($.inArray($el, this.instances), 1)[0]);
|
| 732 |
+
|
| 733 |
+
if (this.instances.length === 0) {
|
| 734 |
+
$([document, window]).unbind('.dialog-overlay');
|
| 735 |
+
}
|
| 736 |
+
|
| 737 |
+
$el.remove();
|
| 738 |
+
|
| 739 |
+
// adjust the maxZ to allow other modal dialogs to continue to work (see #4309)
|
| 740 |
+
var maxZ = 0;
|
| 741 |
+
$.each(this.instances, function() {
|
| 742 |
+
maxZ = Math.max(maxZ, this.css('z-index'));
|
| 743 |
+
});
|
| 744 |
+
this.maxZ = maxZ;
|
| 745 |
+
},
|
| 746 |
+
|
| 747 |
+
height: function() {
|
| 748 |
+
var scrollHeight,
|
| 749 |
+
offsetHeight;
|
| 750 |
+
// handle IE 6
|
| 751 |
+
if ($.browser.msie && $.browser.version < 7) {
|
| 752 |
+
scrollHeight = Math.max(
|
| 753 |
+
document.documentElement.scrollHeight,
|
| 754 |
+
document.body.scrollHeight
|
| 755 |
+
);
|
| 756 |
+
offsetHeight = Math.max(
|
| 757 |
+
document.documentElement.offsetHeight,
|
| 758 |
+
document.body.offsetHeight
|
| 759 |
+
);
|
| 760 |
+
|
| 761 |
+
if (scrollHeight < offsetHeight) {
|
| 762 |
+
return $(window).height() + 'px';
|
| 763 |
+
} else {
|
| 764 |
+
return scrollHeight + 'px';
|
| 765 |
+
}
|
| 766 |
+
// handle "good" browsers
|
| 767 |
+
} else {
|
| 768 |
+
return $(document).height() + 'px';
|
| 769 |
+
}
|
| 770 |
+
},
|
| 771 |
+
|
| 772 |
+
width: function() {
|
| 773 |
+
var scrollWidth,
|
| 774 |
+
offsetWidth;
|
| 775 |
+
// handle IE 6
|
| 776 |
+
if ($.browser.msie && $.browser.version < 7) {
|
| 777 |
+
scrollWidth = Math.max(
|
| 778 |
+
document.documentElement.scrollWidth,
|
| 779 |
+
document.body.scrollWidth
|
| 780 |
+
);
|
| 781 |
+
offsetWidth = Math.max(
|
| 782 |
+
document.documentElement.offsetWidth,
|
| 783 |
+
document.body.offsetWidth
|
| 784 |
+
);
|
| 785 |
+
|
| 786 |
+
if (scrollWidth < offsetWidth) {
|
| 787 |
+
return $(window).width() + 'px';
|
| 788 |
+
} else {
|
| 789 |
+
return scrollWidth + 'px';
|
| 790 |
+
}
|
| 791 |
+
// handle "good" browsers
|
| 792 |
+
} else {
|
| 793 |
+
return $(document).width() + 'px';
|
| 794 |
+
}
|
| 795 |
+
},
|
| 796 |
+
|
| 797 |
+
resize: function() {
|
| 798 |
+
/* If the dialog is draggable and the user drags it past the
|
| 799 |
+
* right edge of the window, the document becomes wider so we
|
| 800 |
+
* need to stretch the overlay. If the user then drags the
|
| 801 |
+
* dialog back to the left, the document will become narrower,
|
| 802 |
+
* so we need to shrink the overlay to the appropriate size.
|
| 803 |
+
* This is handled by shrinking the overlay before setting it
|
| 804 |
+
* to the full document size.
|
| 805 |
+
*/
|
| 806 |
+
var $overlays = $([]);
|
| 807 |
+
$.each($.ui.dialog.overlay.instances, function() {
|
| 808 |
+
$overlays = $overlays.add(this);
|
| 809 |
+
});
|
| 810 |
+
|
| 811 |
+
$overlays.css({
|
| 812 |
+
width: 0,
|
| 813 |
+
height: 0
|
| 814 |
+
}).css({
|
| 815 |
+
width: $.ui.dialog.overlay.width(),
|
| 816 |
+
height: $.ui.dialog.overlay.height()
|
| 817 |
+
});
|
| 818 |
+
}
|
| 819 |
+
});
|
| 820 |
+
|
| 821 |
+
$.extend($.ui.dialog.overlay.prototype, {
|
| 822 |
+
destroy: function() {
|
| 823 |
+
$.ui.dialog.overlay.destroy(this.$el);
|
| 824 |
+
}
|
| 825 |
+
});
|
| 826 |
+
|
| 827 |
+
}(jQuery));
|
js/jquery.ui.js
ADDED
|
@@ -0,0 +1,401 @@
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
|
|
Â
|
| 1 |
+
/*!
|
| 2 |
+
* jQuery UI 1.8.6
|
| 3 |
+
*
|
| 4 |
+
* Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
|
| 5 |
+
* Dual licensed under the MIT or GPL Version 2 licenses.
|
| 6 |
+
* http://jquery.org/license
|
| 7 |
+
*
|
| 8 |
+
* http://docs.jquery.com/UI
|
| 9 |
+
*/
|
| 10 |
+
(function(b,c){function f(g){return!b(g).parents().andSelf().filter(function(){return b.curCSS(this,"visibility")==="hidden"||b.expr.filters.hidden(this)}).length}b.ui=b.ui||{};if(!b.ui.version){b.extend(b.ui,{version:"1.8.6",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,
|
| 11 |
+
NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});b.fn.extend({_focus:b.fn.focus,focus:function(g,e){return typeof g==="number"?this.each(function(){var a=this;setTimeout(function(){b(a).focus();e&&e.call(a)},g)}):this._focus.apply(this,arguments)},scrollParent:function(){var g;g=b.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(b.curCSS(this,
|
| 12 |
+
"position",1))&&/(auto|scroll)/.test(b.curCSS(this,"overflow",1)+b.curCSS(this,"overflow-y",1)+b.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(b.curCSS(this,"overflow",1)+b.curCSS(this,"overflow-y",1)+b.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!g.length?b(document):g},zIndex:function(g){if(g!==c)return this.css("zIndex",g);if(this.length){g=b(this[0]);for(var e;g.length&&g[0]!==document;){e=g.css("position");
|
| 13 |
+
if(e==="absolute"||e==="relative"||e==="fixed"){e=parseInt(g.css("zIndex"),10);if(!isNaN(e)&&e!==0)return e}g=g.parent()}}return 0},disableSelection:function(){return this.bind((b.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(g){g.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});b.each(["Width","Height"],function(g,e){function a(j,n,q,l){b.each(d,function(){n-=parseFloat(b.curCSS(j,"padding"+this,true))||0;if(q)n-=parseFloat(b.curCSS(j,
|
| 14 |
+
"border"+this+"Width",true))||0;if(l)n-=parseFloat(b.curCSS(j,"margin"+this,true))||0});return n}var d=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),i={innerWidth:b.fn.innerWidth,innerHeight:b.fn.innerHeight,outerWidth:b.fn.outerWidth,outerHeight:b.fn.outerHeight};b.fn["inner"+e]=function(j){if(j===c)return i["inner"+e].call(this);return this.each(function(){b(this).css(h,a(this,j)+"px")})};b.fn["outer"+e]=function(j,n){if(typeof j!=="number")return i["outer"+e].call(this,j);return this.each(function(){b(this).css(h,
|
| 15 |
+
a(this,j,true,n)+"px")})}});b.extend(b.expr[":"],{data:function(g,e,a){return!!b.data(g,a[3])},focusable:function(g){var e=g.nodeName.toLowerCase(),a=b.attr(g,"tabindex");if("area"===e){e=g.parentNode;a=e.name;if(!g.href||!a||e.nodeName.toLowerCase()!=="map")return false;g=b("img[usemap=#"+a+"]")[0];return!!g&&f(g)}return(/input|select|textarea|button|object/.test(e)?!g.disabled:"a"==e?g.href||!isNaN(a):!isNaN(a))&&f(g)},tabbable:function(g){var e=b.attr(g,"tabindex");return(isNaN(e)||e>=0)&&b(g).is(":focusable")}});
|
| 16 |
+
b(function(){var g=document.body,e=g.appendChild(e=document.createElement("div"));b.extend(e.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});b.support.minHeight=e.offsetHeight===100;b.support.selectstart="onselectstart"in e;g.removeChild(e).style.display="none"});b.extend(b.ui,{plugin:{add:function(g,e,a){g=b.ui[g].prototype;for(var d in a){g.plugins[d]=g.plugins[d]||[];g.plugins[d].push([e,a[d]])}},call:function(g,e,a){if((e=g.plugins[e])&&g.element[0].parentNode)for(var d=0;d<e.length;d++)g.options[e[d][0]]&&
|
| 17 |
+
e[d][1].apply(g.element,a)}},contains:function(g,e){return document.compareDocumentPosition?g.compareDocumentPosition(e)&16:g!==e&&g.contains(e)},hasScroll:function(g,e){if(b(g).css("overflow")==="hidden")return false;e=e&&e==="left"?"scrollLeft":"scrollTop";var a=false;if(g[e]>0)return true;g[e]=1;a=g[e]>0;g[e]=0;return a},isOverAxis:function(g,e,a){return g>e&&g<e+a},isOver:function(g,e,a,d,h,i){return b.ui.isOverAxis(g,a,h)&&b.ui.isOverAxis(e,d,i)}})}})(jQuery);
|
| 18 |
+
(function(b,c){if(b.cleanData){var f=b.cleanData;b.cleanData=function(e){for(var a=0,d;(d=e[a])!=null;a++)b(d).triggerHandler("remove");f(e)}}else{var g=b.fn.remove;b.fn.remove=function(e,a){return this.each(function(){if(!a)if(!e||b.filter(e,[this]).length)b("*",this).add([this]).each(function(){b(this).triggerHandler("remove")});return g.call(b(this),e,a)})}}b.widget=function(e,a,d){var h=e.split(".")[0],i;e=e.split(".")[1];i=h+"-"+e;if(!d){d=a;a=b.Widget}b.expr[":"][i]=function(j){return!!b.data(j,
|
| 19 |
+
e)};b[h]=b[h]||{};b[h][e]=function(j,n){arguments.length&&this._createWidget(j,n)};a=new a;a.options=b.extend(true,{},a.options);b[h][e].prototype=b.extend(true,a,{namespace:h,widgetName:e,widgetEventPrefix:b[h][e].prototype.widgetEventPrefix||e,widgetBaseClass:i},d);b.widget.bridge(e,b[h][e])};b.widget.bridge=function(e,a){b.fn[e]=function(d){var h=typeof d==="string",i=Array.prototype.slice.call(arguments,1),j=this;d=!h&&i.length?b.extend.apply(null,[true,d].concat(i)):d;if(h&&d.charAt(0)==="_")return j;
|
| 20 |
+
h?this.each(function(){var n=b.data(this,e),q=n&&b.isFunction(n[d])?n[d].apply(n,i):n;if(q!==n&&q!==c){j=q;return false}}):this.each(function(){var n=b.data(this,e);n?n.option(d||{})._init():b.data(this,e,new a(d,this))});return j}};b.Widget=function(e,a){arguments.length&&this._createWidget(e,a)};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(e,a){b.data(a,this.widgetName,this);this.element=b(a);this.options=b.extend(true,{},this.options,
|
| 21 |
+
this._getCreateOptions(),e);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},
|
| 22 |
+
widget:function(){return this.element},option:function(e,a){var d=e;if(arguments.length===0)return b.extend({},this.options);if(typeof e==="string"){if(a===c)return this.options[e];d={};d[e]=a}this._setOptions(d);return this},_setOptions:function(e){var a=this;b.each(e,function(d,h){a._setOption(d,h)});return this},_setOption:function(e,a){this.options[e]=a;if(e==="disabled")this.widget()[a?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",a);return this},
|
| 23 |
+
enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,a,d){var h=this.options[e];a=b.Event(a);a.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();d=d||{};if(a.originalEvent){e=b.event.props.length;for(var i;e;){i=b.event.props[--e];a[i]=a.originalEvent[i]}}this.element.trigger(a,d);return!(b.isFunction(h)&&h.call(this.element[0],a,d)===false||a.isDefaultPrevented())}}})(jQuery);
|
| 24 |
+
(function(b){b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var c=this;this.element.bind("mousedown."+this.widgetName,function(f){return c._mouseDown(f)}).bind("click."+this.widgetName,function(f){if(c._preventClickEvent){c._preventClickEvent=false;f.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(c){c.originalEvent=c.originalEvent||{};if(!c.originalEvent.mouseHandled){this._mouseStarted&&
|
| 25 |
+
this._mouseUp(c);this._mouseDownEvent=c;var f=this,g=c.which==1,e=typeof this.options.cancel=="string"?b(c.target).parents().add(c.target).filter(this.options.cancel).length:false;if(!g||e||!this._mouseCapture(c))return true;this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet)this._mouseDelayTimer=setTimeout(function(){f.mouseDelayMet=true},this.options.delay);if(this._mouseDistanceMet(c)&&this._mouseDelayMet(c)){this._mouseStarted=this._mouseStart(c)!==false;if(!this._mouseStarted){c.preventDefault();
|
| 26 |
+
return true}}this._mouseMoveDelegate=function(a){return f._mouseMove(a)};this._mouseUpDelegate=function(a){return f._mouseUp(a)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);c.preventDefault();return c.originalEvent.mouseHandled=true}},_mouseMove:function(c){if(b.browser.msie&&!(document.documentMode>=9)&&!c.button)return this._mouseUp(c);if(this._mouseStarted){this._mouseDrag(c);return c.preventDefault()}if(this._mouseDistanceMet(c)&&
|
| 27 |
+
this._mouseDelayMet(c))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,c)!==false)?this._mouseDrag(c):this._mouseUp(c);return!this._mouseStarted},_mouseUp:function(c){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._preventClickEvent=c.target==this._mouseDownEvent.target;this._mouseStop(c)}return false},_mouseDistanceMet:function(c){return Math.max(Math.abs(this._mouseDownEvent.pageX-
|
| 28 |
+
c.pageX),Math.abs(this._mouseDownEvent.pageY-c.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery);
|
| 29 |
+
(function(b){b.widget("ui.draggable",b.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){if(this.options.helper==
|
| 30 |
+
"original"&&!/^(?:r|a|f)/.test(this.element.css("position")))this.element[0].style.position="relative";this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._mouseInit()},destroy:function(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(c){var f=
|
| 31 |
+
this.options;if(this.helper||f.disabled||b(c.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(c);if(!this.handle)return false;return true},_mouseStart:function(c){var f=this.options;this.helper=this._createHelper(c);this._cacheHelperProportions();if(b.ui.ddmanager)b.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-
|
| 32 |
+
this.margins.top,left:this.offset.left-this.margins.left};b.extend(this.offset,{click:{left:c.pageX-this.offset.left,top:c.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this.position=this._generatePosition(c);this.originalPageX=c.pageX;this.originalPageY=c.pageY;f.cursorAt&&this._adjustOffsetFromHelper(f.cursorAt);f.containment&&this._setContainment();if(this._trigger("start",c)===false){this._clear();return false}this._cacheHelperProportions();
|
| 33 |
+
b.ui.ddmanager&&!f.dropBehaviour&&b.ui.ddmanager.prepareOffsets(this,c);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(c,true);return true},_mouseDrag:function(c,f){this.position=this._generatePosition(c);this.positionAbs=this._convertPositionTo("absolute");if(!f){f=this._uiHash();if(this._trigger("drag",c,f)===false){this._mouseUp({});return false}this.position=f.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||
|
| 34 |
+
this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";b.ui.ddmanager&&b.ui.ddmanager.drag(this,c);return false},_mouseStop:function(c){var f=false;if(b.ui.ddmanager&&!this.options.dropBehaviour)f=b.ui.ddmanager.drop(this,c);if(this.dropped){f=this.dropped;this.dropped=false}if(!this.element[0]||!this.element[0].parentNode)return false;if(this.options.revert=="invalid"&&!f||this.options.revert=="valid"&&f||this.options.revert===true||b.isFunction(this.options.revert)&&this.options.revert.call(this.element,
|
| 35 |
+
f)){var g=this;b(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){g._trigger("stop",c)!==false&&g._clear()})}else this._trigger("stop",c)!==false&&this._clear();return false},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(c){var f=!this.options.handle||!b(this.options.handle,this.element).length?true:false;b(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==
|
| 36 |
+
c.target)f=true});return f},_createHelper:function(c){var f=this.options;c=b.isFunction(f.helper)?b(f.helper.apply(this.element[0],[c])):f.helper=="clone"?this.element.clone():this.element;c.parents("body").length||c.appendTo(f.appendTo=="parent"?this.element[0].parentNode:f.appendTo);c[0]!=this.element[0]&&!/(fixed|absolute)/.test(c.css("position"))&&c.css("position","absolute");return c},_adjustOffsetFromHelper:function(c){if(typeof c=="string")c=c.split(" ");if(b.isArray(c))c={left:+c[0],top:+c[1]||
|
| 37 |
+
0};if("left"in c)this.offset.click.left=c.left+this.margins.left;if("right"in c)this.offset.click.left=this.helperProportions.width-c.right+this.margins.left;if("top"in c)this.offset.click.top=c.top+this.margins.top;if("bottom"in c)this.offset.click.top=this.helperProportions.height-c.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var c=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&b.ui.contains(this.scrollParent[0],
|
| 38 |
+
this.offsetParent[0])){c.left+=this.scrollParent.scrollLeft();c.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&b.browser.msie)c={top:0,left:0};return{top:c.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:c.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var c=this.element.position();return{top:c.top-
|
| 39 |
+
(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:c.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var c=this.options;if(c.containment==
|
| 40 |
+
"parent")c.containment=this.helper[0].parentNode;if(c.containment=="document"||c.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,b(c.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(b(c.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(c.containment)&&
|
| 41 |
+
c.containment.constructor!=Array){var f=b(c.containment)[0];if(f){c=b(c.containment).offset();var g=b(f).css("overflow")!="hidden";this.containment=[c.left+(parseInt(b(f).css("borderLeftWidth"),10)||0)+(parseInt(b(f).css("paddingLeft"),10)||0)-this.margins.left,c.top+(parseInt(b(f).css("borderTopWidth"),10)||0)+(parseInt(b(f).css("paddingTop"),10)||0)-this.margins.top,c.left+(g?Math.max(f.scrollWidth,f.offsetWidth):f.offsetWidth)-(parseInt(b(f).css("borderLeftWidth"),10)||0)-(parseInt(b(f).css("paddingRight"),
|
| 42 |
+
10)||0)-this.helperProportions.width-this.margins.left,c.top+(g?Math.max(f.scrollHeight,f.offsetHeight):f.offsetHeight)-(parseInt(b(f).css("borderTopWidth"),10)||0)-(parseInt(b(f).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top]}}else if(c.containment.constructor==Array)this.containment=c.containment},_convertPositionTo:function(c,f){if(!f)f=this.position;c=c=="absolute"?1:-1;var g=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&b.ui.contains(this.scrollParent[0],
|
| 43 |
+
this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(g[0].tagName);return{top:f.top+this.offset.relative.top*c+this.offset.parent.top*c-(b.browser.safari&&b.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:g.scrollTop())*c),left:f.left+this.offset.relative.left*c+this.offset.parent.left*c-(b.browser.safari&&b.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():
|
| 44 |
+
e?0:g.scrollLeft())*c)}},_generatePosition:function(c){var f=this.options,g=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&b.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(g[0].tagName),a=c.pageX,d=c.pageY;if(this.originalPosition){if(this.containment){if(c.pageX-this.offset.click.left<this.containment[0])a=this.containment[0]+this.offset.click.left;if(c.pageY-this.offset.click.top<this.containment[1])d=this.containment[1]+
|
| 45 |
+
this.offset.click.top;if(c.pageX-this.offset.click.left>this.containment[2])a=this.containment[2]+this.offset.click.left;if(c.pageY-this.offset.click.top>this.containment[3])d=this.containment[3]+this.offset.click.top}if(f.grid){d=this.originalPageY+Math.round((d-this.originalPageY)/f.grid[1])*f.grid[1];d=this.containment?!(d-this.offset.click.top<this.containment[1]||d-this.offset.click.top>this.containment[3])?d:!(d-this.offset.click.top<this.containment[1])?d-f.grid[1]:d+f.grid[1]:d;a=this.originalPageX+
|
| 46 |
+
Math.round((a-this.originalPageX)/f.grid[0])*f.grid[0];a=this.containment?!(a-this.offset.click.left<this.containment[0]||a-this.offset.click.left>this.containment[2])?a:!(a-this.offset.click.left<this.containment[0])?a-f.grid[0]:a+f.grid[0]:a}}return{top:d-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(b.browser.safari&&b.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:g.scrollTop()),left:a-this.offset.click.left-
|
| 47 |
+
this.offset.relative.left-this.offset.parent.left+(b.browser.safari&&b.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:g.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove();this.helper=null;this.cancelHelperRemoval=false},_trigger:function(c,f,g){g=g||this._uiHash();b.ui.plugin.call(this,c,[f,g]);if(c=="drag")this.positionAbs=
|
| 48 |
+
this._convertPositionTo("absolute");return b.Widget.prototype._trigger.call(this,c,f,g)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});b.extend(b.ui.draggable,{version:"1.8.6"});b.ui.plugin.add("draggable","connectToSortable",{start:function(c,f){var g=b(this).data("draggable"),e=g.options,a=b.extend({},f,{item:g.element});g.sortables=[];b(e.connectToSortable).each(function(){var d=b.data(this,"sortable");
|
| 49 |
+
if(d&&!d.options.disabled){g.sortables.push({instance:d,shouldRevert:d.options.revert});d._refreshItems();d._trigger("activate",c,a)}})},stop:function(c,f){var g=b(this).data("draggable"),e=b.extend({},f,{item:g.element});b.each(g.sortables,function(){if(this.instance.isOver){this.instance.isOver=0;g.cancelHelperRemoval=true;this.instance.cancelHelperRemoval=false;if(this.shouldRevert)this.instance.options.revert=true;this.instance._mouseStop(c);this.instance.options.helper=this.instance.options._helper;
|
| 50 |
+
g.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})}else{this.instance.cancelHelperRemoval=false;this.instance._trigger("deactivate",c,e)}})},drag:function(c,f){var g=b(this).data("draggable"),e=this;b.each(g.sortables,function(){this.instance.positionAbs=g.positionAbs;this.instance.helperProportions=g.helperProportions;this.instance.offset.click=g.offset.click;if(this.instance._intersectsWith(this.instance.containerCache)){if(!this.instance.isOver){this.instance.isOver=
|
| 51 |
+
1;this.instance.currentItem=b(e).clone().appendTo(this.instance.element).data("sortable-item",true);this.instance.options._helper=this.instance.options.helper;this.instance.options.helper=function(){return f.helper[0]};c.target=this.instance.currentItem[0];this.instance._mouseCapture(c,true);this.instance._mouseStart(c,true,true);this.instance.offset.click.top=g.offset.click.top;this.instance.offset.click.left=g.offset.click.left;this.instance.offset.parent.left-=g.offset.parent.left-this.instance.offset.parent.left;
|
| 52 |
+
this.instance.offset.parent.top-=g.offset.parent.top-this.instance.offset.parent.top;g._trigger("toSortable",c);g.dropped=this.instance.element;g.currentItem=g.element;this.instance.fromOutside=g}this.instance.currentItem&&this.instance._mouseDrag(c)}else if(this.instance.isOver){this.instance.isOver=0;this.instance.cancelHelperRemoval=true;this.instance.options.revert=false;this.instance._trigger("out",c,this.instance._uiHash(this.instance));this.instance._mouseStop(c,true);this.instance.options.helper=
|
| 53 |
+
this.instance.options._helper;this.instance.currentItem.remove();this.instance.placeholder&&this.instance.placeholder.remove();g._trigger("fromSortable",c);g.dropped=false}})}});b.ui.plugin.add("draggable","cursor",{start:function(){var c=b("body"),f=b(this).data("draggable").options;if(c.css("cursor"))f._cursor=c.css("cursor");c.css("cursor",f.cursor)},stop:function(){var c=b(this).data("draggable").options;c._cursor&&b("body").css("cursor",c._cursor)}});b.ui.plugin.add("draggable","iframeFix",{start:function(){var c=
|
| 54 |
+
b(this).data("draggable").options;b(c.iframeFix===true?"iframe":c.iframeFix).each(function(){b('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(b(this).offset()).appendTo("body")})},stop:function(){b("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)})}});b.ui.plugin.add("draggable","opacity",{start:function(c,f){c=b(f.helper);f=b(this).data("draggable").options;
|
| 55 |
+
if(c.css("opacity"))f._opacity=c.css("opacity");c.css("opacity",f.opacity)},stop:function(c,f){c=b(this).data("draggable").options;c._opacity&&b(f.helper).css("opacity",c._opacity)}});b.ui.plugin.add("draggable","scroll",{start:function(){var c=b(this).data("draggable");if(c.scrollParent[0]!=document&&c.scrollParent[0].tagName!="HTML")c.overflowOffset=c.scrollParent.offset()},drag:function(c){var f=b(this).data("draggable"),g=f.options,e=false;if(f.scrollParent[0]!=document&&f.scrollParent[0].tagName!=
|
| 56 |
+
"HTML"){if(!g.axis||g.axis!="x")if(f.overflowOffset.top+f.scrollParent[0].offsetHeight-c.pageY<g.scrollSensitivity)f.scrollParent[0].scrollTop=e=f.scrollParent[0].scrollTop+g.scrollSpeed;else if(c.pageY-f.overflowOffset.top<g.scrollSensitivity)f.scrollParent[0].scrollTop=e=f.scrollParent[0].scrollTop-g.scrollSpeed;if(!g.axis||g.axis!="y")if(f.overflowOffset.left+f.scrollParent[0].offsetWidth-c.pageX<g.scrollSensitivity)f.scrollParent[0].scrollLeft=e=f.scrollParent[0].scrollLeft+g.scrollSpeed;else if(c.pageX-
|
| 57 |
+
f.overflowOffset.left<g.scrollSensitivity)f.scrollParent[0].scrollLeft=e=f.scrollParent[0].scrollLeft-g.scrollSpeed}else{if(!g.axis||g.axis!="x")if(c.pageY-b(document).scrollTop()<g.scrollSensitivity)e=b(document).scrollTop(b(document).scrollTop()-g.scrollSpeed);else if(b(window).height()-(c.pageY-b(document).scrollTop())<g.scrollSensitivity)e=b(document).scrollTop(b(document).scrollTop()+g.scrollSpeed);if(!g.axis||g.axis!="y")if(c.pageX-b(document).scrollLeft()<g.scrollSensitivity)e=b(document).scrollLeft(b(document).scrollLeft()-
|
| 58 |
+
g.scrollSpeed);else if(b(window).width()-(c.pageX-b(document).scrollLeft())<g.scrollSensitivity)e=b(document).scrollLeft(b(document).scrollLeft()+g.scrollSpeed)}e!==false&&b.ui.ddmanager&&!g.dropBehaviour&&b.ui.ddmanager.prepareOffsets(f,c)}});b.ui.plugin.add("draggable","snap",{start:function(){var c=b(this).data("draggable"),f=c.options;c.snapElements=[];b(f.snap.constructor!=String?f.snap.items||":data(draggable)":f.snap).each(function(){var g=b(this),e=g.offset();this!=c.element[0]&&c.snapElements.push({item:this,
|
| 59 |
+
width:g.outerWidth(),height:g.outerHeight(),top:e.top,left:e.left})})},drag:function(c,f){for(var g=b(this).data("draggable"),e=g.options,a=e.snapTolerance,d=f.offset.left,h=d+g.helperProportions.width,i=f.offset.top,j=i+g.helperProportions.height,n=g.snapElements.length-1;n>=0;n--){var q=g.snapElements[n].left,l=q+g.snapElements[n].width,k=g.snapElements[n].top,m=k+g.snapElements[n].height;if(q-a<d&&d<l+a&&k-a<i&&i<m+a||q-a<d&&d<l+a&&k-a<j&&j<m+a||q-a<h&&h<l+a&&k-a<i&&i<m+a||q-a<h&&h<l+a&&k-a<j&&
|
| 60 |
+
j<m+a){if(e.snapMode!="inner"){var o=Math.abs(k-j)<=a,p=Math.abs(m-i)<=a,s=Math.abs(q-h)<=a,r=Math.abs(l-d)<=a;if(o)f.position.top=g._convertPositionTo("relative",{top:k-g.helperProportions.height,left:0}).top-g.margins.top;if(p)f.position.top=g._convertPositionTo("relative",{top:m,left:0}).top-g.margins.top;if(s)f.position.left=g._convertPositionTo("relative",{top:0,left:q-g.helperProportions.width}).left-g.margins.left;if(r)f.position.left=g._convertPositionTo("relative",{top:0,left:l}).left-g.margins.left}var u=
|
| 61 |
+
o||p||s||r;if(e.snapMode!="outer"){o=Math.abs(k-i)<=a;p=Math.abs(m-j)<=a;s=Math.abs(q-d)<=a;r=Math.abs(l-h)<=a;if(o)f.position.top=g._convertPositionTo("relative",{top:k,left:0}).top-g.margins.top;if(p)f.position.top=g._convertPositionTo("relative",{top:m-g.helperProportions.height,left:0}).top-g.margins.top;if(s)f.position.left=g._convertPositionTo("relative",{top:0,left:q}).left-g.margins.left;if(r)f.position.left=g._convertPositionTo("relative",{top:0,left:l-g.helperProportions.width}).left-g.margins.left}if(!g.snapElements[n].snapping&&
|
| 62 |
+
(o||p||s||r||u))g.options.snap.snap&&g.options.snap.snap.call(g.element,c,b.extend(g._uiHash(),{snapItem:g.snapElements[n].item}));g.snapElements[n].snapping=o||p||s||r||u}else{g.snapElements[n].snapping&&g.options.snap.release&&g.options.snap.release.call(g.element,c,b.extend(g._uiHash(),{snapItem:g.snapElements[n].item}));g.snapElements[n].snapping=false}}}});b.ui.plugin.add("draggable","stack",{start:function(){var c=b(this).data("draggable").options;c=b.makeArray(b(c.stack)).sort(function(g,e){return(parseInt(b(g).css("zIndex"),
|
| 63 |
+
10)||0)-(parseInt(b(e).css("zIndex"),10)||0)});if(c.length){var f=parseInt(c[0].style.zIndex)||0;b(c).each(function(g){this.style.zIndex=f+g});this[0].style.zIndex=f+c.length}}});b.ui.plugin.add("draggable","zIndex",{start:function(c,f){c=b(f.helper);f=b(this).data("draggable").options;if(c.css("zIndex"))f._zIndex=c.css("zIndex");c.css("zIndex",f.zIndex)},stop:function(c,f){c=b(this).data("draggable").options;c._zIndex&&b(f.helper).css("zIndex",c._zIndex)}})})(jQuery);
|
| 64 |
+
(function(b){b.widget("ui.droppable",{widgetEventPrefix:"drop",options:{accept:"*",activeClass:false,addClasses:true,greedy:false,hoverClass:false,scope:"default",tolerance:"intersect"},_create:function(){var c=this.options,f=c.accept;this.isover=0;this.isout=1;this.accept=b.isFunction(f)?f:function(g){return g.is(f)};this.proportions={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight};b.ui.ddmanager.droppables[c.scope]=b.ui.ddmanager.droppables[c.scope]||[];b.ui.ddmanager.droppables[c.scope].push(this);
|
| 65 |
+
c.addClasses&&this.element.addClass("ui-droppable")},destroy:function(){for(var c=b.ui.ddmanager.droppables[this.options.scope],f=0;f<c.length;f++)c[f]==this&&c.splice(f,1);this.element.removeClass("ui-droppable ui-droppable-disabled").removeData("droppable").unbind(".droppable");return this},_setOption:function(c,f){if(c=="accept")this.accept=b.isFunction(f)?f:function(g){return g.is(f)};b.Widget.prototype._setOption.apply(this,arguments)},_activate:function(c){var f=b.ui.ddmanager.current;this.options.activeClass&&
|
| 66 |
+
this.element.addClass(this.options.activeClass);f&&this._trigger("activate",c,this.ui(f))},_deactivate:function(c){var f=b.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass);f&&this._trigger("deactivate",c,this.ui(f))},_over:function(c){var f=b.ui.ddmanager.current;if(!(!f||(f.currentItem||f.element)[0]==this.element[0]))if(this.accept.call(this.element[0],f.currentItem||f.element)){this.options.hoverClass&&this.element.addClass(this.options.hoverClass);
|
| 67 |
+
this._trigger("over",c,this.ui(f))}},_out:function(c){var f=b.ui.ddmanager.current;if(!(!f||(f.currentItem||f.element)[0]==this.element[0]))if(this.accept.call(this.element[0],f.currentItem||f.element)){this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("out",c,this.ui(f))}},_drop:function(c,f){var g=f||b.ui.ddmanager.current;if(!g||(g.currentItem||g.element)[0]==this.element[0])return false;var e=false;this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function(){var a=
|
| 68 |
+
b.data(this,"droppable");if(a.options.greedy&&!a.options.disabled&&a.options.scope==g.options.scope&&a.accept.call(a.element[0],g.currentItem||g.element)&&b.ui.intersect(g,b.extend(a,{offset:a.element.offset()}),a.options.tolerance)){e=true;return false}});if(e)return false;if(this.accept.call(this.element[0],g.currentItem||g.element)){this.options.activeClass&&this.element.removeClass(this.options.activeClass);this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("drop",
|
| 69 |
+
c,this.ui(g));return this.element}return false},ui:function(c){return{draggable:c.currentItem||c.element,helper:c.helper,position:c.position,offset:c.positionAbs}}});b.extend(b.ui.droppable,{version:"1.8.6"});b.ui.intersect=function(c,f,g){if(!f.offset)return false;var e=(c.positionAbs||c.position.absolute).left,a=e+c.helperProportions.width,d=(c.positionAbs||c.position.absolute).top,h=d+c.helperProportions.height,i=f.offset.left,j=i+f.proportions.width,n=f.offset.top,q=n+f.proportions.height;
|
| 70 |
+
switch(g){case "fit":return i<=e&&a<=j&&n<=d&&h<=q;case "intersect":return i<e+c.helperProportions.width/2&&a-c.helperProportions.width/2<j&&n<d+c.helperProportions.height/2&&h-c.helperProportions.height/2<q;case "pointer":return b.ui.isOver((c.positionAbs||c.position.absolute).top+(c.clickOffset||c.offset.click).top,(c.positionAbs||c.position.absolute).left+(c.clickOffset||c.offset.click).left,n,i,f.proportions.height,f.proportions.width);case "touch":return(d>=n&&d<=q||h>=n&&h<=q||d<n&&h>q)&&(e>=
|
| 71 |
+
i&&e<=j||a>=i&&a<=j||e<i&&a>j);default:return false}};b.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(c,f){var g=b.ui.ddmanager.droppables[c.options.scope]||[],e=f?f.type:null,a=(c.currentItem||c.element).find(":data(droppable)").andSelf(),d=0;a:for(;d<g.length;d++)if(!(g[d].options.disabled||c&&!g[d].accept.call(g[d].element[0],c.currentItem||c.element))){for(var h=0;h<a.length;h++)if(a[h]==g[d].element[0]){g[d].proportions.height=0;continue a}g[d].visible=g[d].element.css("display")!=
|
| 72 |
+
"none";if(g[d].visible){g[d].offset=g[d].element.offset();g[d].proportions={width:g[d].element[0].offsetWidth,height:g[d].element[0].offsetHeight};e=="mousedown"&&g[d]._activate.call(g[d],f)}}},drop:function(c,f){var g=false;b.each(b.ui.ddmanager.droppables[c.options.scope]||[],function(){if(this.options){if(!this.options.disabled&&this.visible&&b.ui.intersect(c,this,this.options.tolerance))g=g||this._drop.call(this,f);if(!this.options.disabled&&this.visible&&this.accept.call(this.element[0],c.currentItem||
|
| 73 |
+
c.element)){this.isout=1;this.isover=0;this._deactivate.call(this,f)}}});return g},drag:function(c,f){c.options.refreshPositions&&b.ui.ddmanager.prepareOffsets(c,f);b.each(b.ui.ddmanager.droppables[c.options.scope]||[],function(){if(!(this.options.disabled||this.greedyChild||!this.visible)){var g=b.ui.intersect(c,this,this.options.tolerance);if(g=!g&&this.isover==1?"isout":g&&this.isover==0?"isover":null){var e;if(this.options.greedy){var a=this.element.parents(":data(droppable):eq(0)");if(a.length){e=
|
| 74 |
+
b.data(a[0],"droppable");e.greedyChild=g=="isover"?1:0}}if(e&&g=="isover"){e.isover=0;e.isout=1;e._out.call(e,f)}this[g]=1;this[g=="isout"?"isover":"isout"]=0;this[g=="isover"?"_over":"_out"].call(this,f);if(e&&g=="isout"){e.isout=0;e.isover=1;e._over.call(e,f)}}}})}}})(jQuery);
|
| 75 |
+
(function(b){b.widget("ui.resizable",b.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1E3},_create:function(){var g=this,e=this.options;this.element.addClass("ui-resizable");b.extend(this,{_aspectRatio:!!e.aspectRatio,aspectRatio:e.aspectRatio,originalElement:this.element,
|
| 76 |
+
_proportionallyResizeElements:[],_helper:e.helper||e.ghost||e.animate?e.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){/relative/.test(this.element.css("position"))&&b.browser.opera&&this.element.css({position:"relative",top:"auto",left:"auto"});this.element.wrap(b('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),
|
| 77 |
+
top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=
|
| 78 |
+
this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=e.handles||(!b(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",
|
| 79 |
+
nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all")this.handles="n,e,s,w,se,sw,ne,nw";var a=this.handles.split(",");this.handles={};for(var d=0;d<a.length;d++){var h=b.trim(a[d]),i=b('<div class="ui-resizable-handle '+("ui-resizable-"+h)+'"></div>');/sw|se|ne|nw/.test(h)&&i.css({zIndex:++e.zIndex});"se"==h&&i.addClass("ui-icon ui-icon-gripsmall-diagonal-se");this.handles[h]=".ui-resizable-"+h;this.element.append(i)}}this._renderAxis=function(j){j=j||this.element;for(var n in this.handles){if(this.handles[n].constructor==
|
| 80 |
+
String)this.handles[n]=b(this.handles[n],this.element).show();if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var q=b(this.handles[n],this.element),l=0;l=/sw|ne|nw|se|n|s/.test(n)?q.outerHeight():q.outerWidth();q=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");j.css(q,l);this._proportionallyResize()}b(this.handles[n])}};this._renderAxis(this.element);this._handles=b(".ui-resizable-handle",this.element).disableSelection();
|
| 81 |
+
this._handles.mouseover(function(){if(!g.resizing){if(this.className)var j=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);g.axis=j&&j[1]?j[1]:"se"}});if(e.autoHide){this._handles.hide();b(this.element).addClass("ui-resizable-autohide").hover(function(){b(this).removeClass("ui-resizable-autohide");g._handles.show()},function(){if(!g.resizing){b(this).addClass("ui-resizable-autohide");g._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var g=function(a){b(a).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};
|
| 82 |
+
if(this.elementIsWrapper){g(this.element);var e=this.element;e.after(this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);g(this.originalElement);return this},_mouseCapture:function(g){var e=false;for(var a in this.handles)if(b(this.handles[a])[0]==g.target)e=true;return!this.options.disabled&&e},_mouseStart:function(g){var e=this.options,a=this.element.position(),
|
| 83 |
+
d=this.element;this.resizing=true;this.documentScroll={top:b(document).scrollTop(),left:b(document).scrollLeft()};if(d.is(".ui-draggable")||/absolute/.test(d.css("position")))d.css({position:"absolute",top:a.top,left:a.left});b.browser.opera&&/relative/.test(d.css("position"))&&d.css({position:"relative",top:"auto",left:"auto"});this._renderProxy();a=c(this.helper.css("left"));var h=c(this.helper.css("top"));if(e.containment){a+=b(e.containment).scrollLeft()||0;h+=b(e.containment).scrollTop()||0}this.offset=
|
| 84 |
+
this.helper.offset();this.position={left:a,top:h};this.size=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalSize=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalPosition={left:a,top:h};this.sizeDiff={width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=typeof e.aspectRatio=="number"?e.aspectRatio:
|
| 85 |
+
this.originalSize.width/this.originalSize.height||1;e=b(".ui-resizable-"+this.axis).css("cursor");b("body").css("cursor",e=="auto"?this.axis+"-resize":e);d.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(g){var e=this.helper,a=this.originalMousePosition,d=this._change[this.axis];if(!d)return false;a=d.apply(this,[g,g.pageX-a.left||0,g.pageY-a.top||0]);if(this._aspectRatio||g.shiftKey)a=this._updateRatio(a,g);a=this._respectSize(a,g);this._propagate("resize",
|
| 86 |
+
g);e.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize();this._updateCache(a);this._trigger("resize",g,this.ui());return false},_mouseStop:function(g){this.resizing=false;var e=this.options,a=this;if(this._helper){var d=this._proportionallyResizeElements,h=d.length&&/textarea/i.test(d[0].nodeName);d=h&&b.ui.hasScroll(d[0],"left")?0:a.sizeDiff.height;
|
| 87 |
+
h={width:a.size.width-(h?0:a.sizeDiff.width),height:a.size.height-d};d=parseInt(a.element.css("left"),10)+(a.position.left-a.originalPosition.left)||null;var i=parseInt(a.element.css("top"),10)+(a.position.top-a.originalPosition.top)||null;e.animate||this.element.css(b.extend(h,{top:i,left:d}));a.helper.height(a.size.height);a.helper.width(a.size.width);this._helper&&!e.animate&&this._proportionallyResize()}b("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",
|
| 88 |
+
g);this._helper&&this.helper.remove();return false},_updateCache:function(g){this.offset=this.helper.offset();if(f(g.left))this.position.left=g.left;if(f(g.top))this.position.top=g.top;if(f(g.height))this.size.height=g.height;if(f(g.width))this.size.width=g.width},_updateRatio:function(g){var e=this.position,a=this.size,d=this.axis;if(g.height)g.width=a.height*this.aspectRatio;else if(g.width)g.height=a.width/this.aspectRatio;if(d=="sw"){g.left=e.left+(a.width-g.width);g.top=null}if(d=="nw"){g.top=
|
| 89 |
+
e.top+(a.height-g.height);g.left=e.left+(a.width-g.width)}return g},_respectSize:function(g){var e=this.options,a=this.axis,d=f(g.width)&&e.maxWidth&&e.maxWidth<g.width,h=f(g.height)&&e.maxHeight&&e.maxHeight<g.height,i=f(g.width)&&e.minWidth&&e.minWidth>g.width,j=f(g.height)&&e.minHeight&&e.minHeight>g.height;if(i)g.width=e.minWidth;if(j)g.height=e.minHeight;if(d)g.width=e.maxWidth;if(h)g.height=e.maxHeight;var n=this.originalPosition.left+this.originalSize.width,q=this.position.top+this.size.height,
|
| 90 |
+
l=/sw|nw|w/.test(a);a=/nw|ne|n/.test(a);if(i&&l)g.left=n-e.minWidth;if(d&&l)g.left=n-e.maxWidth;if(j&&a)g.top=q-e.minHeight;if(h&&a)g.top=q-e.maxHeight;if((e=!g.width&&!g.height)&&!g.left&&g.top)g.top=null;else if(e&&!g.top&&g.left)g.left=null;return g},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var g=this.helper||this.element,e=0;e<this._proportionallyResizeElements.length;e++){var a=this._proportionallyResizeElements[e];if(!this.borderDif){var d=[a.css("borderTopWidth"),
|
| 91 |
+
a.css("borderRightWidth"),a.css("borderBottomWidth"),a.css("borderLeftWidth")],h=[a.css("paddingTop"),a.css("paddingRight"),a.css("paddingBottom"),a.css("paddingLeft")];this.borderDif=b.map(d,function(i,j){i=parseInt(i,10)||0;j=parseInt(h[j],10)||0;return i+j})}b.browser.msie&&(b(g).is(":hidden")||b(g).parents(":hidden").length)||a.css({height:g.height()-this.borderDif[0]-this.borderDif[2]||0,width:g.width()-this.borderDif[1]-this.borderDif[3]||0})}},_renderProxy:function(){var g=this.options;this.elementOffset=
|
| 92 |
+
this.element.offset();if(this._helper){this.helper=this.helper||b('<div style="overflow:hidden;"></div>');var e=b.browser.msie&&b.browser.version<7,a=e?1:0;e=e?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+e,height:this.element.outerHeight()+e,position:"absolute",left:this.elementOffset.left-a+"px",top:this.elementOffset.top-a+"px",zIndex:++g.zIndex});this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(g,e){return{width:this.originalSize.width+
|
| 93 |
+
e}},w:function(g,e){return{left:this.originalPosition.left+e,width:this.originalSize.width-e}},n:function(g,e,a){return{top:this.originalPosition.top+a,height:this.originalSize.height-a}},s:function(g,e,a){return{height:this.originalSize.height+a}},se:function(g,e,a){return b.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,e,a]))},sw:function(g,e,a){return b.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,e,a]))},ne:function(g,e,a){return b.extend(this._change.n.apply(this,
|
| 94 |
+
arguments),this._change.e.apply(this,[g,e,a]))},nw:function(g,e,a){return b.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,e,a]))}},_propagate:function(g,e){b.ui.plugin.call(this,g,[e,this.ui()]);g!="resize"&&this._trigger(g,e,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});b.extend(b.ui.resizable,
|
| 95 |
+
{version:"1.8.6"});b.ui.plugin.add("resizable","alsoResize",{start:function(){var g=b(this).data("resizable").options,e=function(a){b(a).each(function(){var d=b(this);d.data("resizable-alsoresize",{width:parseInt(d.width(),10),height:parseInt(d.height(),10),left:parseInt(d.css("left"),10),top:parseInt(d.css("top"),10),position:d.css("position")})})};if(typeof g.alsoResize=="object"&&!g.alsoResize.parentNode)if(g.alsoResize.length){g.alsoResize=g.alsoResize[0];e(g.alsoResize)}else b.each(g.alsoResize,
|
| 96 |
+
function(a){e(a)});else e(g.alsoResize)},resize:function(g,e){var a=b(this).data("resizable");g=a.options;var d=a.originalSize,h=a.originalPosition,i={height:a.size.height-d.height||0,width:a.size.width-d.width||0,top:a.position.top-h.top||0,left:a.position.left-h.left||0},j=function(n,q){b(n).each(function(){var l=b(this),k=b(this).data("resizable-alsoresize"),m={},o=q&&q.length?q:l.parents(e.originalElement[0]).length?["width","height"]:["width","height","top","left"];b.each(o,function(p,s){if((p=
|
| 97 |
+
(k[s]||0)+(i[s]||0))&&p>=0)m[s]=p||null});if(b.browser.opera&&/relative/.test(l.css("position"))){a._revertToRelativePosition=true;l.css({position:"absolute",top:"auto",left:"auto"})}l.css(m)})};typeof g.alsoResize=="object"&&!g.alsoResize.nodeType?b.each(g.alsoResize,function(n,q){j(n,q)}):j(g.alsoResize)},stop:function(){var g=b(this).data("resizable"),e=g.options,a=function(d){b(d).each(function(){var h=b(this);h.css({position:h.data("resizable-alsoresize").position})})};if(g._revertToRelativePosition){g._revertToRelativePosition=
|
| 98 |
+
false;typeof e.alsoResize=="object"&&!e.alsoResize.nodeType?b.each(e.alsoResize,function(d){a(d)}):a(e.alsoResize)}b(this).removeData("resizable-alsoresize")}});b.ui.plugin.add("resizable","animate",{stop:function(g){var e=b(this).data("resizable"),a=e.options,d=e._proportionallyResizeElements,h=d.length&&/textarea/i.test(d[0].nodeName),i=h&&b.ui.hasScroll(d[0],"left")?0:e.sizeDiff.height;h={width:e.size.width-(h?0:e.sizeDiff.width),height:e.size.height-i};i=parseInt(e.element.css("left"),10)+(e.position.left-
|
| 99 |
+
e.originalPosition.left)||null;var j=parseInt(e.element.css("top"),10)+(e.position.top-e.originalPosition.top)||null;e.element.animate(b.extend(h,j&&i?{top:j,left:i}:{}),{duration:a.animateDuration,easing:a.animateEasing,step:function(){var n={width:parseInt(e.element.css("width"),10),height:parseInt(e.element.css("height"),10),top:parseInt(e.element.css("top"),10),left:parseInt(e.element.css("left"),10)};d&&d.length&&b(d[0]).css({width:n.width,height:n.height});e._updateCache(n);e._propagate("resize",
|
| 100 |
+
g)}})}});b.ui.plugin.add("resizable","containment",{start:function(){var g=b(this).data("resizable"),e=g.element,a=g.options.containment;if(e=a instanceof b?a.get(0):/parent/.test(a)?e.parent().get(0):a){g.containerElement=b(e);if(/document/.test(a)||a==document){g.containerOffset={left:0,top:0};g.containerPosition={left:0,top:0};g.parentData={element:b(document),left:0,top:0,width:b(document).width(),height:b(document).height()||document.body.parentNode.scrollHeight}}else{var d=b(e),h=[];b(["Top",
|
| 101 |
+
"Right","Left","Bottom"]).each(function(n,q){h[n]=c(d.css("padding"+q))});g.containerOffset=d.offset();g.containerPosition=d.position();g.containerSize={height:d.innerHeight()-h[3],width:d.innerWidth()-h[1]};a=g.containerOffset;var i=g.containerSize.height,j=g.containerSize.width;j=b.ui.hasScroll(e,"left")?e.scrollWidth:j;i=b.ui.hasScroll(e)?e.scrollHeight:i;g.parentData={element:e,left:a.left,top:a.top,width:j,height:i}}}},resize:function(g){var e=b(this).data("resizable"),a=e.options,d=e.containerOffset,
|
| 102 |
+
h=e.position;g=e._aspectRatio||g.shiftKey;var i={top:0,left:0},j=e.containerElement;if(j[0]!=document&&/static/.test(j.css("position")))i=d;if(h.left<(e._helper?d.left:0)){e.size.width+=e._helper?e.position.left-d.left:e.position.left-i.left;if(g)e.size.height=e.size.width/a.aspectRatio;e.position.left=a.helper?d.left:0}if(h.top<(e._helper?d.top:0)){e.size.height+=e._helper?e.position.top-d.top:e.position.top;if(g)e.size.width=e.size.height*a.aspectRatio;e.position.top=e._helper?d.top:0}e.offset.left=
|
| 103 |
+
e.parentData.left+e.position.left;e.offset.top=e.parentData.top+e.position.top;a=Math.abs((e._helper?e.offset.left-i.left:e.offset.left-i.left)+e.sizeDiff.width);d=Math.abs((e._helper?e.offset.top-i.top:e.offset.top-d.top)+e.sizeDiff.height);h=e.containerElement.get(0)==e.element.parent().get(0);i=/relative|absolute/.test(e.containerElement.css("position"));if(h&&i)a-=e.parentData.left;if(a+e.size.width>=e.parentData.width){e.size.width=e.parentData.width-a;if(g)e.size.height=e.size.width/e.aspectRatio}if(d+
|
| 104 |
+
e.size.height>=e.parentData.height){e.size.height=e.parentData.height-d;if(g)e.size.width=e.size.height*e.aspectRatio}},stop:function(){var g=b(this).data("resizable"),e=g.options,a=g.containerOffset,d=g.containerPosition,h=g.containerElement,i=b(g.helper),j=i.offset(),n=i.outerWidth()-g.sizeDiff.width;i=i.outerHeight()-g.sizeDiff.height;g._helper&&!e.animate&&/relative/.test(h.css("position"))&&b(this).css({left:j.left-d.left-a.left,width:n,height:i});g._helper&&!e.animate&&/static/.test(h.css("position"))&&
|
| 105 |
+
b(this).css({left:j.left-d.left-a.left,width:n,height:i})}});b.ui.plugin.add("resizable","ghost",{start:function(){var g=b(this).data("resizable"),e=g.options,a=g.size;g.ghost=g.originalElement.clone();g.ghost.css({opacity:0.25,display:"block",position:"relative",height:a.height,width:a.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof e.ghost=="string"?e.ghost:"");g.ghost.appendTo(g.helper)},resize:function(){var g=b(this).data("resizable");g.ghost&&g.ghost.css({position:"relative",
|
| 106 |
+
height:g.size.height,width:g.size.width})},stop:function(){var g=b(this).data("resizable");g.ghost&&g.helper&&g.helper.get(0).removeChild(g.ghost.get(0))}});b.ui.plugin.add("resizable","grid",{resize:function(){var g=b(this).data("resizable"),e=g.options,a=g.size,d=g.originalSize,h=g.originalPosition,i=g.axis;e.grid=typeof e.grid=="number"?[e.grid,e.grid]:e.grid;var j=Math.round((a.width-d.width)/(e.grid[0]||1))*(e.grid[0]||1);e=Math.round((a.height-d.height)/(e.grid[1]||1))*(e.grid[1]||1);if(/^(se|s|e)$/.test(i)){g.size.width=
|
| 107 |
+
d.width+j;g.size.height=d.height+e}else if(/^(ne)$/.test(i)){g.size.width=d.width+j;g.size.height=d.height+e;g.position.top=h.top-e}else{if(/^(sw)$/.test(i)){g.size.width=d.width+j;g.size.height=d.height+e}else{g.size.width=d.width+j;g.size.height=d.height+e;g.position.top=h.top-e}g.position.left=h.left-j}}});var c=function(g){return parseInt(g,10)||0},f=function(g){return!isNaN(parseInt(g,10))}})(jQuery);
|
| 108 |
+
(function(b){b.widget("ui.selectable",b.ui.mouse,{options:{appendTo:"body",autoRefresh:true,distance:0,filter:"*",tolerance:"touch"},_create:function(){var c=this;this.element.addClass("ui-selectable");this.dragged=false;var f;this.refresh=function(){f=b(c.options.filter,c.element[0]);f.each(function(){var g=b(this),e=g.offset();b.data(this,"selectable-item",{element:this,$element:g,left:e.left,top:e.top,right:e.left+g.outerWidth(),bottom:e.top+g.outerHeight(),startselected:false,selected:g.hasClass("ui-selected"),
|
| 109 |
+
selecting:g.hasClass("ui-selecting"),unselecting:g.hasClass("ui-unselecting")})})};this.refresh();this.selectees=f.addClass("ui-selectee");this._mouseInit();this.helper=b("<div class='ui-selectable-helper'></div>")},destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item");this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable");this._mouseDestroy();return this},_mouseStart:function(c){var f=this;this.opos=[c.pageX,
|
| 110 |
+
c.pageY];if(!this.options.disabled){var g=this.options;this.selectees=b(g.filter,this.element[0]);this._trigger("start",c);b(g.appendTo).append(this.helper);this.helper.css({left:c.clientX,top:c.clientY,width:0,height:0});g.autoRefresh&&this.refresh();this.selectees.filter(".ui-selected").each(function(){var e=b.data(this,"selectable-item");e.startselected=true;if(!c.metaKey){e.$element.removeClass("ui-selected");e.selected=false;e.$element.addClass("ui-unselecting");e.unselecting=true;f._trigger("unselecting",
|
| 111 |
+
c,{unselecting:e.element})}});b(c.target).parents().andSelf().each(function(){var e=b.data(this,"selectable-item");if(e){var a=!c.metaKey||!e.$element.hasClass("ui-selected");e.$element.removeClass(a?"ui-unselecting":"ui-selected").addClass(a?"ui-selecting":"ui-unselecting");e.unselecting=!a;e.selecting=a;(e.selected=a)?f._trigger("selecting",c,{selecting:e.element}):f._trigger("unselecting",c,{unselecting:e.element});return false}})}},_mouseDrag:function(c){var f=this;this.dragged=true;if(!this.options.disabled){var g=
|
| 112 |
+
this.options,e=this.opos[0],a=this.opos[1],d=c.pageX,h=c.pageY;if(e>d){var i=d;d=e;e=i}if(a>h){i=h;h=a;a=i}this.helper.css({left:e,top:a,width:d-e,height:h-a});this.selectees.each(function(){var j=b.data(this,"selectable-item");if(!(!j||j.element==f.element[0])){var n=false;if(g.tolerance=="touch")n=!(j.left>d||j.right<e||j.top>h||j.bottom<a);else if(g.tolerance=="fit")n=j.left>e&&j.right<d&&j.top>a&&j.bottom<h;if(n){if(j.selected){j.$element.removeClass("ui-selected");j.selected=false}if(j.unselecting){j.$element.removeClass("ui-unselecting");
|
| 113 |
+
j.unselecting=false}if(!j.selecting){j.$element.addClass("ui-selecting");j.selecting=true;f._trigger("selecting",c,{selecting:j.element})}}else{if(j.selecting)if(c.metaKey&&j.startselected){j.$element.removeClass("ui-selecting");j.selecting=false;j.$element.addClass("ui-selected");j.selected=true}else{j.$element.removeClass("ui-selecting");j.selecting=false;if(j.startselected){j.$element.addClass("ui-unselecting");j.unselecting=true}f._trigger("unselecting",c,{unselecting:j.element})}if(j.selected)if(!c.metaKey&&
|
| 114 |
+
!j.startselected){j.$element.removeClass("ui-selected");j.selected=false;j.$element.addClass("ui-unselecting");j.unselecting=true;f._trigger("unselecting",c,{unselecting:j.element})}}}});return false}},_mouseStop:function(c){var f=this;this.dragged=false;b(".ui-unselecting",this.element[0]).each(function(){var g=b.data(this,"selectable-item");g.$element.removeClass("ui-unselecting");g.unselecting=false;g.startselected=false;f._trigger("unselected",c,{unselected:g.element})});b(".ui-selecting",this.element[0]).each(function(){var g=
|
| 115 |
+
b.data(this,"selectable-item");g.$element.removeClass("ui-selecting").addClass("ui-selected");g.selecting=false;g.selected=true;g.startselected=true;f._trigger("selected",c,{selected:g.element})});this._trigger("stop",c);this.helper.remove();return false}});b.extend(b.ui.selectable,{version:"1.8.6"})})(jQuery);
|
| 116 |
+
(function(b){b.widget("ui.sortable",b.ui.mouse,{widgetEventPrefix:"sort",options:{appendTo:"parent",axis:false,connectWith:false,containment:false,cursor:"auto",cursorAt:false,dropOnEmpty:true,forcePlaceholderSize:false,forceHelperSize:false,grid:false,handle:false,helper:"original",items:"> *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){this.containerCache={};this.element.addClass("ui-sortable");
|
| 117 |
+
this.refresh();this.floating=this.items.length?/left|right/.test(this.items[0].item.css("float")):false;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var c=this.items.length-1;c>=0;c--)this.items[c].item.removeData("sortable-item");return this},_setOption:function(c,f){if(c==="disabled"){this.options[c]=f;this.widget()[f?"addClass":"removeClass"]("ui-sortable-disabled")}else b.Widget.prototype._setOption.apply(this,
|
| 118 |
+
arguments)},_mouseCapture:function(c,f){if(this.reverting)return false;if(this.options.disabled||this.options.type=="static")return false;this._refreshItems(c);var g=null,e=this;b(c.target).parents().each(function(){if(b.data(this,"sortable-item")==e){g=b(this);return false}});if(b.data(c.target,"sortable-item")==e)g=b(c.target);if(!g)return false;if(this.options.handle&&!f){var a=false;b(this.options.handle,g).find("*").andSelf().each(function(){if(this==c.target)a=true});if(!a)return false}this.currentItem=
|
| 119 |
+
g;this._removeCurrentsFromItems();return true},_mouseStart:function(c,f,g){f=this.options;var e=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(c);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");b.extend(this.offset,
|
| 120 |
+
{click:{left:c.pageX-this.offset.left,top:c.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(c);this.originalPageX=c.pageX;this.originalPageY=c.pageY;f.cursorAt&&this._adjustOffsetFromHelper(f.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder();f.containment&&this._setContainment();
|
| 121 |
+
if(f.cursor){if(b("body").css("cursor"))this._storedCursor=b("body").css("cursor");b("body").css("cursor",f.cursor)}if(f.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",f.opacity)}if(f.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",f.zIndex)}if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML")this.overflowOffset=this.scrollParent.offset();this._trigger("start",
|
| 122 |
+
c,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!g)for(g=this.containers.length-1;g>=0;g--)this.containers[g]._trigger("activate",c,e._uiHash(this));if(b.ui.ddmanager)b.ui.ddmanager.current=this;b.ui.ddmanager&&!f.dropBehaviour&&b.ui.ddmanager.prepareOffsets(this,c);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(c);return true},_mouseDrag:function(c){this.position=this._generatePosition(c);this.positionAbs=this._convertPositionTo("absolute");
|
| 123 |
+
if(!this.lastPositionAbs)this.lastPositionAbs=this.positionAbs;if(this.options.scroll){var f=this.options,g=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if(this.overflowOffset.top+this.scrollParent[0].offsetHeight-c.pageY<f.scrollSensitivity)this.scrollParent[0].scrollTop=g=this.scrollParent[0].scrollTop+f.scrollSpeed;else if(c.pageY-this.overflowOffset.top<f.scrollSensitivity)this.scrollParent[0].scrollTop=g=this.scrollParent[0].scrollTop-f.scrollSpeed;if(this.overflowOffset.left+
|
| 124 |
+
this.scrollParent[0].offsetWidth-c.pageX<f.scrollSensitivity)this.scrollParent[0].scrollLeft=g=this.scrollParent[0].scrollLeft+f.scrollSpeed;else if(c.pageX-this.overflowOffset.left<f.scrollSensitivity)this.scrollParent[0].scrollLeft=g=this.scrollParent[0].scrollLeft-f.scrollSpeed}else{if(c.pageY-b(document).scrollTop()<f.scrollSensitivity)g=b(document).scrollTop(b(document).scrollTop()-f.scrollSpeed);else if(b(window).height()-(c.pageY-b(document).scrollTop())<f.scrollSensitivity)g=b(document).scrollTop(b(document).scrollTop()+
|
| 125 |
+
f.scrollSpeed);if(c.pageX-b(document).scrollLeft()<f.scrollSensitivity)g=b(document).scrollLeft(b(document).scrollLeft()-f.scrollSpeed);else if(b(window).width()-(c.pageX-b(document).scrollLeft())<f.scrollSensitivity)g=b(document).scrollLeft(b(document).scrollLeft()+f.scrollSpeed)}g!==false&&b.ui.ddmanager&&!f.dropBehaviour&&b.ui.ddmanager.prepareOffsets(this,c)}this.positionAbs=this._convertPositionTo("absolute");if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+
|
| 126 |
+
"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";for(f=this.items.length-1;f>=0;f--){g=this.items[f];var e=g.item[0],a=this._intersectsWithPointer(g);if(a)if(e!=this.currentItem[0]&&this.placeholder[a==1?"next":"prev"]()[0]!=e&&!b.ui.contains(this.placeholder[0],e)&&(this.options.type=="semi-dynamic"?!b.ui.contains(this.element[0],e):true)){this.direction=a==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(g))this._rearrange(c,
|
| 127 |
+
g);else break;this._trigger("change",c,this._uiHash());break}}this._contactContainers(c);b.ui.ddmanager&&b.ui.ddmanager.drag(this,c);this._trigger("sort",c,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(c,f){if(c){b.ui.ddmanager&&!this.options.dropBehaviour&&b.ui.ddmanager.drop(this,c);if(this.options.revert){var g=this;f=g.placeholder.offset();g.reverting=true;b(this.helper).animate({left:f.left-this.offset.parent.left-g.margins.left+(this.offsetParent[0]==
|
| 128 |
+
document.body?0:this.offsetParent[0].scrollLeft),top:f.top-this.offset.parent.top-g.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){g._clear(c)})}else this._clear(c,f);return false}},cancel:function(){var c=this;if(this.dragging){this._mouseUp();this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var f=this.containers.length-1;f>=0;f--){this.containers[f]._trigger("deactivate",
|
| 129 |
+
null,c._uiHash(this));if(this.containers[f].containerCache.over){this.containers[f]._trigger("out",null,c._uiHash(this));this.containers[f].containerCache.over=0}}}this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove();b.extend(this,{helper:null,dragging:false,reverting:false,_noFinalSort:null});this.domPosition.prev?b(this.domPosition.prev).after(this.currentItem):
|
| 130 |
+
b(this.domPosition.parent).prepend(this.currentItem);return this},serialize:function(c){var f=this._getItemsAsjQuery(c&&c.connected),g=[];c=c||{};b(f).each(function(){var e=(b(c.item||this).attr(c.attribute||"id")||"").match(c.expression||/(.+)[-=_](.+)/);if(e)g.push((c.key||e[1]+"[]")+"="+(c.key&&c.expression?e[1]:e[2]))});!g.length&&c.key&&g.push(c.key+"=");return g.join("&")},toArray:function(c){var f=this._getItemsAsjQuery(c&&c.connected),g=[];c=c||{};f.each(function(){g.push(b(c.item||this).attr(c.attribute||
|
| 131 |
+
"id")||"")});return g},_intersectsWith:function(c){var f=this.positionAbs.left,g=f+this.helperProportions.width,e=this.positionAbs.top,a=e+this.helperProportions.height,d=c.left,h=d+c.width,i=c.top,j=i+c.height,n=this.offset.click.top,q=this.offset.click.left;n=e+n>i&&e+n<j&&f+q>d&&f+q<h;return this.options.tolerance=="pointer"||this.options.forcePointerForContainers||this.options.tolerance!="pointer"&&this.helperProportions[this.floating?"width":"height"]>c[this.floating?"width":"height"]?n:d<f+
|
| 132 |
+
this.helperProportions.width/2&&g-this.helperProportions.width/2<h&&i<e+this.helperProportions.height/2&&a-this.helperProportions.height/2<j},_intersectsWithPointer:function(c){var f=b.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,c.top,c.height);c=b.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,c.left,c.width);f=f&&c;c=this._getDragVerticalDirection();var g=this._getDragHorizontalDirection();if(!f)return false;return this.floating?g&&g=="right"||c=="down"?2:1:c&&(c=="down"?
|
| 133 |
+
2:1)},_intersectsWithSides:function(c){var f=b.ui.isOverAxis(this.positionAbs.top+this.offset.click.top,c.top+c.height/2,c.height);c=b.ui.isOverAxis(this.positionAbs.left+this.offset.click.left,c.left+c.width/2,c.width);var g=this._getDragVerticalDirection(),e=this._getDragHorizontalDirection();return this.floating&&e?e=="right"&&c||e=="left"&&!c:g&&(g=="down"&&f||g=="up"&&!f)},_getDragVerticalDirection:function(){var c=this.positionAbs.top-this.lastPositionAbs.top;return c!=0&&(c>0?"down":"up")},
|
| 134 |
+
_getDragHorizontalDirection:function(){var c=this.positionAbs.left-this.lastPositionAbs.left;return c!=0&&(c>0?"right":"left")},refresh:function(c){this._refreshItems(c);this.refreshPositions();return this},_connectWith:function(){var c=this.options;return c.connectWith.constructor==String?[c.connectWith]:c.connectWith},_getItemsAsjQuery:function(c){var f=[],g=[],e=this._connectWith();if(e&&c)for(c=e.length-1;c>=0;c--)for(var a=b(e[c]),d=a.length-1;d>=0;d--){var h=b.data(a[d],"sortable");if(h&&h!=
|
| 135 |
+
this&&!h.options.disabled)g.push([b.isFunction(h.options.items)?h.options.items.call(h.element):b(h.options.items,h.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),h])}g.push([b.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):b(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]);for(c=g.length-1;c>=0;c--)g[c][0].each(function(){f.push(this)});return b(f)},_removeCurrentsFromItems:function(){for(var c=
|
| 136 |
+
this.currentItem.find(":data(sortable-item)"),f=0;f<this.items.length;f++)for(var g=0;g<c.length;g++)c[g]==this.items[f].item[0]&&this.items.splice(f,1)},_refreshItems:function(c){this.items=[];this.containers=[this];var f=this.items,g=[[b.isFunction(this.options.items)?this.options.items.call(this.element[0],c,{item:this.currentItem}):b(this.options.items,this.element),this]],e=this._connectWith();if(e)for(var a=e.length-1;a>=0;a--)for(var d=b(e[a]),h=d.length-1;h>=0;h--){var i=b.data(d[h],"sortable");
|
| 137 |
+
if(i&&i!=this&&!i.options.disabled){g.push([b.isFunction(i.options.items)?i.options.items.call(i.element[0],c,{item:this.currentItem}):b(i.options.items,i.element),i]);this.containers.push(i)}}for(a=g.length-1;a>=0;a--){c=g[a][1];e=g[a][0];h=0;for(d=e.length;h<d;h++){i=b(e[h]);i.data("sortable-item",c);f.push({item:i,instance:c,width:0,height:0,left:0,top:0})}}},refreshPositions:function(c){if(this.offsetParent&&this.helper)this.offset.parent=this._getParentOffset();for(var f=this.items.length-1;f>=
|
| 138 |
+
0;f--){var g=this.items[f],e=this.options.toleranceElement?b(this.options.toleranceElement,g.item):g.item;if(!c){g.width=e.outerWidth();g.height=e.outerHeight()}e=e.offset();g.left=e.left;g.top=e.top}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(f=this.containers.length-1;f>=0;f--){e=this.containers[f].element.offset();this.containers[f].containerCache.left=e.left;this.containers[f].containerCache.top=e.top;this.containers[f].containerCache.width=
|
| 139 |
+
this.containers[f].element.outerWidth();this.containers[f].containerCache.height=this.containers[f].element.outerHeight()}return this},_createPlaceholder:function(c){var f=c||this,g=f.options;if(!g.placeholder||g.placeholder.constructor==String){var e=g.placeholder;g.placeholder={element:function(){var a=b(document.createElement(f.currentItem[0].nodeName)).addClass(e||f.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!e)a.style.visibility="hidden";return a},
|
| 140 |
+
update:function(a,d){if(!(e&&!g.forcePlaceholderSize)){d.height()||d.height(f.currentItem.innerHeight()-parseInt(f.currentItem.css("paddingTop")||0,10)-parseInt(f.currentItem.css("paddingBottom")||0,10));d.width()||d.width(f.currentItem.innerWidth()-parseInt(f.currentItem.css("paddingLeft")||0,10)-parseInt(f.currentItem.css("paddingRight")||0,10))}}}}f.placeholder=b(g.placeholder.element.call(f.element,f.currentItem));f.currentItem.after(f.placeholder);g.placeholder.update(f,f.placeholder)},_contactContainers:function(c){for(var f=
|
| 141 |
+
null,g=null,e=this.containers.length-1;e>=0;e--)if(!b.ui.contains(this.currentItem[0],this.containers[e].element[0]))if(this._intersectsWith(this.containers[e].containerCache)){if(!(f&&b.ui.contains(this.containers[e].element[0],f.element[0]))){f=this.containers[e];g=e}}else if(this.containers[e].containerCache.over){this.containers[e]._trigger("out",c,this._uiHash(this));this.containers[e].containerCache.over=0}if(f)if(this.containers.length===1){this.containers[g]._trigger("over",c,this._uiHash(this));
|
| 142 |
+
this.containers[g].containerCache.over=1}else if(this.currentContainer!=this.containers[g]){f=1E4;e=null;for(var a=this.positionAbs[this.containers[g].floating?"left":"top"],d=this.items.length-1;d>=0;d--)if(b.ui.contains(this.containers[g].element[0],this.items[d].item[0])){var h=this.items[d][this.containers[g].floating?"left":"top"];if(Math.abs(h-a)<f){f=Math.abs(h-a);e=this.items[d]}}if(e||this.options.dropOnEmpty){this.currentContainer=this.containers[g];e?this._rearrange(c,e,null,true):this._rearrange(c,
|
| 143 |
+
null,this.containers[g].element,true);this._trigger("change",c,this._uiHash());this.containers[g]._trigger("change",c,this._uiHash(this));this.options.placeholder.update(this.currentContainer,this.placeholder);this.containers[g]._trigger("over",c,this._uiHash(this));this.containers[g].containerCache.over=1}}},_createHelper:function(c){var f=this.options;c=b.isFunction(f.helper)?b(f.helper.apply(this.element[0],[c,this.currentItem])):f.helper=="clone"?this.currentItem.clone():this.currentItem;c.parents("body").length||
|
| 144 |
+
b(f.appendTo!="parent"?f.appendTo:this.currentItem[0].parentNode)[0].appendChild(c[0]);if(c[0]==this.currentItem[0])this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")};if(c[0].style.width==""||f.forceHelperSize)c.width(this.currentItem.width());if(c[0].style.height==""||f.forceHelperSize)c.height(this.currentItem.height());return c},_adjustOffsetFromHelper:function(c){if(typeof c==
|
| 145 |
+
"string")c=c.split(" ");if(b.isArray(c))c={left:+c[0],top:+c[1]||0};if("left"in c)this.offset.click.left=c.left+this.margins.left;if("right"in c)this.offset.click.left=this.helperProportions.width-c.right+this.margins.left;if("top"in c)this.offset.click.top=c.top+this.margins.top;if("bottom"in c)this.offset.click.top=this.helperProportions.height-c.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var c=this.offsetParent.offset();if(this.cssPosition==
|
| 146 |
+
"absolute"&&this.scrollParent[0]!=document&&b.ui.contains(this.scrollParent[0],this.offsetParent[0])){c.left+=this.scrollParent.scrollLeft();c.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&b.browser.msie)c={top:0,left:0};return{top:c.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:c.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition==
|
| 147 |
+
"relative"){var c=this.currentItem.position();return{top:c.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:c.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},
|
| 148 |
+
_setContainment:function(){var c=this.options;if(c.containment=="parent")c.containment=this.helper[0].parentNode;if(c.containment=="document"||c.containment=="window")this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,b(c.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(b(c.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-
|
| 149 |
+
this.margins.top];if(!/^(document|window|parent)$/.test(c.containment)){var f=b(c.containment)[0];c=b(c.containment).offset();var g=b(f).css("overflow")!="hidden";this.containment=[c.left+(parseInt(b(f).css("borderLeftWidth"),10)||0)+(parseInt(b(f).css("paddingLeft"),10)||0)-this.margins.left,c.top+(parseInt(b(f).css("borderTopWidth"),10)||0)+(parseInt(b(f).css("paddingTop"),10)||0)-this.margins.top,c.left+(g?Math.max(f.scrollWidth,f.offsetWidth):f.offsetWidth)-(parseInt(b(f).css("borderLeftWidth"),
|
| 150 |
+
10)||0)-(parseInt(b(f).css("paddingRight"),10)||0)-this.he
|
