@@ -230,26 +230,26 @@ |
||
230 | 230 | private function formatValueToBeans($type, $value) |
231 | 231 | { |
232 | 232 | switch ($type) { |
233 | - case 'date': |
|
234 | - $value = \DateTime::createFromFormat('Y-m-d', $value)?:null; |
|
235 | - break; |
|
236 | - case 'datetime': |
|
237 | - $value = \DateTime::createFromFormat('Y-m-d H:i:s', $value)?:null; |
|
238 | - break; |
|
239 | - case 'boolean' : |
|
240 | - $value = (bool) $value; |
|
241 | - break; |
|
242 | - case 'percent' : |
|
243 | - $value = (int) $value; |
|
244 | - break; |
|
245 | - case 'double' : |
|
246 | - $value = number_format($value, 2); |
|
247 | - break; |
|
248 | - case 'multiselectlookup': |
|
249 | - case 'multiuserlookup': |
|
250 | - case 'multiselectpicklist': |
|
251 | - $value = explode(';', $value); |
|
252 | - break; |
|
233 | + case 'date': |
|
234 | + $value = \DateTime::createFromFormat('Y-m-d', $value)?:null; |
|
235 | + break; |
|
236 | + case 'datetime': |
|
237 | + $value = \DateTime::createFromFormat('Y-m-d H:i:s', $value)?:null; |
|
238 | + break; |
|
239 | + case 'boolean' : |
|
240 | + $value = (bool) $value; |
|
241 | + break; |
|
242 | + case 'percent' : |
|
243 | + $value = (int) $value; |
|
244 | + break; |
|
245 | + case 'double' : |
|
246 | + $value = number_format($value, 2); |
|
247 | + break; |
|
248 | + case 'multiselectlookup': |
|
249 | + case 'multiuserlookup': |
|
250 | + case 'multiselectpicklist': |
|
251 | + $value = explode(';', $value); |
|
252 | + break; |
|
253 | 253 | } |
254 | 254 | |
255 | 255 | return $value; |
@@ -102,80 +102,80 @@ discard block |
||
102 | 102 | $options = []; |
103 | 103 | // Note: full list of types available here: https://www.zoho.com/crm/help/customization/custom-fields.html |
104 | 104 | switch ($field->getType()) { |
105 | - case 'fileupload': |
|
106 | - $type = 'string'; |
|
107 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 255; |
|
108 | - break; |
|
109 | - case 'lookup': |
|
110 | - $type = 'string'; |
|
111 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 100; |
|
112 | - $index = true; |
|
113 | - break; |
|
114 | - case 'userlookup': |
|
115 | - case 'ownerlookup': |
|
116 | - $type = 'string'; |
|
117 | - $index = true; |
|
118 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 25; |
|
119 | - break; |
|
120 | - case 'formula': |
|
121 | - // Note: a Formula can return any type, but we have no way to know which type it returns... |
|
122 | - $type = 'string'; |
|
123 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 100; |
|
124 | - break; |
|
125 | - case 'datetime': |
|
126 | - $type = 'datetime'; |
|
127 | - break; |
|
128 | - case 'date': |
|
129 | - $type = 'date'; |
|
130 | - break; |
|
131 | - case 'boolean': |
|
132 | - $type = 'boolean'; |
|
133 | - break; |
|
134 | - case 'textarea': |
|
135 | - $type = 'text'; |
|
136 | - break; |
|
137 | - case 'bigint': |
|
138 | - $type = 'bigint'; |
|
139 | - break; |
|
140 | - case 'phone': |
|
141 | - case 'text': |
|
142 | - case 'url': |
|
143 | - case 'email': |
|
144 | - case 'picklist': |
|
145 | - case 'website': |
|
146 | - $type = 'string'; |
|
147 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 255; |
|
148 | - break; |
|
149 | - case 'multiselectlookup': |
|
150 | - case 'multiuserlookup': |
|
151 | - case 'multiselectpicklist': |
|
152 | - $type = 'text'; |
|
153 | - break; |
|
154 | - case 'percent': |
|
155 | - $type = 'integer'; |
|
156 | - break; |
|
157 | - case 'double': |
|
158 | - $type = 'float'; |
|
159 | - break; |
|
160 | - case 'autonumber': |
|
161 | - case 'integer': |
|
162 | - $type = 'integer'; |
|
163 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 255; |
|
164 | - break; |
|
165 | - case 'currency': |
|
166 | - case 'decimal': |
|
167 | - $type = 'decimal'; |
|
168 | - $options['scale'] = 2; |
|
169 | - break; |
|
170 | - case 'consent_lookup': |
|
171 | - case 'profileimage': |
|
172 | - case 'ALARM': |
|
173 | - case 'RRULE': |
|
174 | - case 'event_reminder': |
|
175 | - continue 2; |
|
105 | + case 'fileupload': |
|
106 | + $type = 'string'; |
|
107 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 255; |
|
176 | 108 | break; |
177 | - default: |
|
178 | - throw new \RuntimeException('Unknown type "'.$field->getType().'"'); |
|
109 | + case 'lookup': |
|
110 | + $type = 'string'; |
|
111 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 100; |
|
112 | + $index = true; |
|
113 | + break; |
|
114 | + case 'userlookup': |
|
115 | + case 'ownerlookup': |
|
116 | + $type = 'string'; |
|
117 | + $index = true; |
|
118 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 25; |
|
119 | + break; |
|
120 | + case 'formula': |
|
121 | + // Note: a Formula can return any type, but we have no way to know which type it returns... |
|
122 | + $type = 'string'; |
|
123 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 100; |
|
124 | + break; |
|
125 | + case 'datetime': |
|
126 | + $type = 'datetime'; |
|
127 | + break; |
|
128 | + case 'date': |
|
129 | + $type = 'date'; |
|
130 | + break; |
|
131 | + case 'boolean': |
|
132 | + $type = 'boolean'; |
|
133 | + break; |
|
134 | + case 'textarea': |
|
135 | + $type = 'text'; |
|
136 | + break; |
|
137 | + case 'bigint': |
|
138 | + $type = 'bigint'; |
|
139 | + break; |
|
140 | + case 'phone': |
|
141 | + case 'text': |
|
142 | + case 'url': |
|
143 | + case 'email': |
|
144 | + case 'picklist': |
|
145 | + case 'website': |
|
146 | + $type = 'string'; |
|
147 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 255; |
|
148 | + break; |
|
149 | + case 'multiselectlookup': |
|
150 | + case 'multiuserlookup': |
|
151 | + case 'multiselectpicklist': |
|
152 | + $type = 'text'; |
|
153 | + break; |
|
154 | + case 'percent': |
|
155 | + $type = 'integer'; |
|
156 | + break; |
|
157 | + case 'double': |
|
158 | + $type = 'float'; |
|
159 | + break; |
|
160 | + case 'autonumber': |
|
161 | + case 'integer': |
|
162 | + $type = 'integer'; |
|
163 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 255; |
|
164 | + break; |
|
165 | + case 'currency': |
|
166 | + case 'decimal': |
|
167 | + $type = 'decimal'; |
|
168 | + $options['scale'] = 2; |
|
169 | + break; |
|
170 | + case 'consent_lookup': |
|
171 | + case 'profileimage': |
|
172 | + case 'ALARM': |
|
173 | + case 'RRULE': |
|
174 | + case 'event_reminder': |
|
175 | + continue 2; |
|
176 | + break; |
|
177 | + default: |
|
178 | + throw new \RuntimeException('Unknown type "'.$field->getType().'"'); |
|
179 | 179 | } |
180 | 180 | |
181 | 181 | |
@@ -222,24 +222,24 @@ discard block |
||
222 | 222 | $length = null; |
223 | 223 | $index = false; |
224 | 224 | switch ($field) { |
225 | - case 'zuid': |
|
226 | - $type = 'string'; |
|
227 | - $length = 100; |
|
228 | - $index = true; |
|
229 | - break; |
|
230 | - case 'name': |
|
231 | - case 'email': |
|
232 | - $type = 'string'; |
|
233 | - $length = 255; |
|
234 | - $index = true; |
|
235 | - break; |
|
236 | - case 'phone': |
|
237 | - case 'website': |
|
238 | - $type = 'text'; |
|
239 | - break; |
|
240 | - default: |
|
241 | - $type = 'string'; |
|
242 | - $length = 100; |
|
225 | + case 'zuid': |
|
226 | + $type = 'string'; |
|
227 | + $length = 100; |
|
228 | + $index = true; |
|
229 | + break; |
|
230 | + case 'name': |
|
231 | + case 'email': |
|
232 | + $type = 'string'; |
|
233 | + $length = 255; |
|
234 | + $index = true; |
|
235 | + break; |
|
236 | + case 'phone': |
|
237 | + case 'website': |
|
238 | + $type = 'text'; |
|
239 | + break; |
|
240 | + default: |
|
241 | + $type = 'string'; |
|
242 | + $length = 100; |
|
243 | 243 | } |
244 | 244 | |
245 | 245 | $options = []; |