@@ -110,75 +110,75 @@ discard block |
||
| 110 | 110 | $options = []; |
| 111 | 111 | // Note: full list of types available here: https://www.zoho.com/crm/help/customization/custom-fields.html |
| 112 | 112 | switch ($field->getType()) { |
| 113 | - case 'lookup': |
|
| 114 | - $type = 'string'; |
|
| 115 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 100; |
|
| 116 | - $index = true; |
|
| 117 | - break; |
|
| 118 | - case 'userlookup': |
|
| 119 | - case 'ownerlookup': |
|
| 120 | - $type = 'string'; |
|
| 121 | - $index = true; |
|
| 122 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 25; |
|
| 123 | - break; |
|
| 124 | - case 'formula': |
|
| 125 | - // Note: a Formula can return any type, but we have no way to know which type it returns... |
|
| 126 | - $type = 'string'; |
|
| 127 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 100; |
|
| 128 | - break; |
|
| 129 | - case 'datetime': |
|
| 130 | - $type = 'datetime'; |
|
| 131 | - break; |
|
| 132 | - case 'date': |
|
| 133 | - $type = 'date'; |
|
| 134 | - break; |
|
| 135 | - case 'boolean': |
|
| 136 | - $type = 'boolean'; |
|
| 137 | - break; |
|
| 138 | - case 'bigint': |
|
| 139 | - $type = 'bigint'; |
|
| 140 | - break; |
|
| 141 | - case 'fileupload': |
|
| 142 | - case 'phone': |
|
| 143 | - case 'text': |
|
| 144 | - case 'url': |
|
| 145 | - case 'email': |
|
| 146 | - case 'picklist': |
|
| 147 | - case 'website': |
|
| 148 | - $type = 'string'; |
|
| 149 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 255; |
|
| 150 | - break; |
|
| 151 | - case 'textarea': |
|
| 152 | - case 'multiselectlookup': |
|
| 153 | - case 'multiuserlookup': |
|
| 154 | - case 'multiselectpicklist': |
|
| 155 | - $type = 'text'; |
|
| 156 | - break; |
|
| 157 | - case 'percent': |
|
| 158 | - $type = 'integer'; |
|
| 159 | - break; |
|
| 160 | - case 'double': |
|
| 161 | - $type = 'float'; |
|
| 162 | - break; |
|
| 163 | - case 'autonumber': |
|
| 164 | - case 'integer': |
|
| 165 | - $type = 'integer'; |
|
| 166 | - $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 255; |
|
| 167 | - break; |
|
| 168 | - case 'currency': |
|
| 169 | - case 'decimal': |
|
| 170 | - $type = 'decimal'; |
|
| 171 | - $options['scale'] = 2; |
|
| 172 | - break; |
|
| 173 | - case 'consent_lookup': |
|
| 174 | - case 'profileimage': |
|
| 175 | - case 'ALARM': |
|
| 176 | - case 'RRULE': |
|
| 177 | - case 'event_reminder': |
|
| 178 | - continue 2; |
|
| 113 | + case 'lookup': |
|
| 114 | + $type = 'string'; |
|
| 115 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 100; |
|
| 116 | + $index = true; |
|
| 117 | + break; |
|
| 118 | + case 'userlookup': |
|
| 119 | + case 'ownerlookup': |
|
| 120 | + $type = 'string'; |
|
| 121 | + $index = true; |
|
| 122 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 25; |
|
| 123 | + break; |
|
| 124 | + case 'formula': |
|
| 125 | + // Note: a Formula can return any type, but we have no way to know which type it returns... |
|
| 126 | + $type = 'string'; |
|
| 127 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 100; |
|
| 128 | + break; |
|
| 129 | + case 'datetime': |
|
| 130 | + $type = 'datetime'; |
|
| 131 | + break; |
|
| 132 | + case 'date': |
|
| 133 | + $type = 'date'; |
|
| 134 | + break; |
|
| 135 | + case 'boolean': |
|
| 136 | + $type = 'boolean'; |
|
| 137 | + break; |
|
| 138 | + case 'bigint': |
|
| 139 | + $type = 'bigint'; |
|
| 140 | + break; |
|
| 141 | + case 'fileupload': |
|
| 142 | + case 'phone': |
|
| 143 | + case 'text': |
|
| 144 | + case 'url': |
|
| 145 | + case 'email': |
|
| 146 | + case 'picklist': |
|
| 147 | + case 'website': |
|
| 148 | + $type = 'string'; |
|
| 149 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 255; |
|
| 150 | + break; |
|
| 151 | + case 'textarea': |
|
| 152 | + case 'multiselectlookup': |
|
| 153 | + case 'multiuserlookup': |
|
| 154 | + case 'multiselectpicklist': |
|
| 155 | + $type = 'text'; |
|
| 179 | 156 | break; |
| 180 | - default: |
|
| 181 | - throw new \RuntimeException('Unknown type "'.$field->getType().'"'); |
|
| 157 | + case 'percent': |
|
| 158 | + $type = 'integer'; |
|
| 159 | + break; |
|
| 160 | + case 'double': |
|
| 161 | + $type = 'float'; |
|
| 162 | + break; |
|
| 163 | + case 'autonumber': |
|
| 164 | + case 'integer': |
|
| 165 | + $type = 'integer'; |
|
| 166 | + $length = $field->getMaxlength() && $field->getMaxlength() > 0?$field->getMaxlength() : 255; |
|
| 167 | + break; |
|
| 168 | + case 'currency': |
|
| 169 | + case 'decimal': |
|
| 170 | + $type = 'decimal'; |
|
| 171 | + $options['scale'] = 2; |
|
| 172 | + break; |
|
| 173 | + case 'consent_lookup': |
|
| 174 | + case 'profileimage': |
|
| 175 | + case 'ALARM': |
|
| 176 | + case 'RRULE': |
|
| 177 | + case 'event_reminder': |
|
| 178 | + continue 2; |
|
| 179 | + break; |
|
| 180 | + default: |
|
| 181 | + throw new \RuntimeException('Unknown type "'.$field->getType().'"'); |
|
| 182 | 182 | } |
| 183 | 183 | |
| 184 | 184 | // For MySQL, the maximum row size is 65535 bytes. |
@@ -237,24 +237,24 @@ discard block |
||
| 237 | 237 | $length = null; |
| 238 | 238 | $index = false; |
| 239 | 239 | switch ($field) { |
| 240 | - case 'zuid': |
|
| 241 | - $type = 'string'; |
|
| 242 | - $length = 100; |
|
| 243 | - $index = true; |
|
| 244 | - break; |
|
| 245 | - case 'name': |
|
| 246 | - case 'email': |
|
| 247 | - $type = 'string'; |
|
| 248 | - $length = 255; |
|
| 249 | - $index = true; |
|
| 250 | - break; |
|
| 251 | - case 'phone': |
|
| 252 | - case 'website': |
|
| 253 | - $type = 'text'; |
|
| 254 | - break; |
|
| 255 | - default: |
|
| 256 | - $type = 'string'; |
|
| 257 | - $length = 100; |
|
| 240 | + case 'zuid': |
|
| 241 | + $type = 'string'; |
|
| 242 | + $length = 100; |
|
| 243 | + $index = true; |
|
| 244 | + break; |
|
| 245 | + case 'name': |
|
| 246 | + case 'email': |
|
| 247 | + $type = 'string'; |
|
| 248 | + $length = 255; |
|
| 249 | + $index = true; |
|
| 250 | + break; |
|
| 251 | + case 'phone': |
|
| 252 | + case 'website': |
|
| 253 | + $type = 'text'; |
|
| 254 | + break; |
|
| 255 | + default: |
|
| 256 | + $type = 'string'; |
|
| 257 | + $length = 100; |
|
| 258 | 258 | } |
| 259 | 259 | |
| 260 | 260 | $options = []; |