Advertisement
Guest User

Untitled

a guest
Oct 31st, 2014
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.34 KB | None | 0 0
  1. <?php
  2.  
  3. /**
  4.  * Change max_length of Name field
  5.  */
  6. function accion_maxfield_update_7002() {
  7.   accion_maxfield_change_text_field_max_length('field_location', 250);
  8.   accion_maxfield_change_text_field_max_length('field_open_to', 250);
  9. }
  10.  
  11. /*
  12.  * Utility to change the max length of a text field
  13.  */
  14. function accion_maxfield_change_text_field_max_length($field_name, $new_length) {
  15.   $field_table = 'field_data_' . $field_name;
  16.   $field_revision_table = 'field_revision_' . $field_name;
  17.   $field_column = $field_name . '_value';
  18.  
  19.   // Alter value field length in fields table
  20.   db_query("ALTER TABLE `{$field_table}` CHANGE `{$field_column}` `{$field_column}` VARCHAR( {$new_length} )");
  21.   // Alter value field length in fields revision table
  22.   db_query("ALTER TABLE `{$field_revision_table}` CHANGE `{$field_column}` `{$field_column}` VARCHAR( {$new_length} )");
  23.  
  24.   // Update field config with new max length
  25.   $result = db_query("SELECT CAST(`data` AS CHAR(10000) CHARACTER SET utf8) FROM `field_config` WHERE field_name = '{$field_name}'");
  26.   $config = $result->fetchField();
  27.   $config_array = unserialize($config);
  28.   $config_array['settings']['max_length'] = $new_length;
  29.   $config = serialize($config_array);
  30.   db_update('field_config')
  31.     ->fields(array('data' => $config))
  32.     ->condition('field_name', $field_name)
  33.     ->execute();
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement