Guest User

Untitled

a guest
Oct 18th, 2017
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.34 KB | None | 0 0
  1. function myModule_field_info()
  2. {
  3. return array(
  4. 'type1' => array(
  5. 'label' => t('Custom type 1'),
  6. 'description' => t('Just for test'),
  7. 'default_widget' => 'type1_textbox',
  8. 'default_formatter' => 'type1_rawview',
  9. ),
  10. 'type2' => array(
  11. 'label' => t('Custom type 2'),
  12. 'description' => t('Just for test'),
  13. 'default_widget' => 'type2_textbox',
  14. 'default_formatter' => 'type2_rawview',
  15. ),
  16. );
  17. }
  18.  
  19. function myModule_field_widget_info()
  20. {
  21. return array(
  22. 'type1_textbox' => array(
  23. 'label' => t('Text field'),
  24. 'field types' => array('type1'),
  25. ),
  26. 'type2_textbox' => array(
  27. 'label' => t('Text field'),
  28. 'field types' => array('type2'),
  29. ),
  30. );
  31. }
  32.  
  33. function myModule_field_widget_form(&$form, &$form_state, $field, $instance, $langcode, $items, $delta, $element) {
  34. {
  35. if($field['cardinality'] == 1){
  36. $element['#type'] = 'fieldset';
  37. }
  38. switch ($instance['widget']['type']) {
  39. case 'type1_textbox' :
  40. $type1 = array();
  41. $type1['firstName'] = array(
  42. '#type' => 'textfield',
  43. '#field_prefix' => t('First Name : '),
  44. '#size' => 20,
  45. '#default_value' => isset($items[$delta]['firstName']) ? $items[$delta]['firstName'] : '',
  46. );
  47. $type1['lastName'] = array(
  48. '#type' => 'textfield',
  49. '#field_prefix' => t('Last Name : '),
  50. '#size' => 20,
  51. '#default_value' => isset($items[$delta]['lastName']) ? $items[$delta]['lastName'] : '',
  52. );
  53. $element += $type1;
  54. break;
  55. case 'type2_textbox' :
  56. $type2 = array();
  57. $type2['phoneNumber'] = array(
  58. '#type' => 'textfield',
  59. '#field_prefix' => t('Phone Number : '),
  60. '#size' => 20,
  61. '#default_value' => isset($items[$delta]['phoneNumber']) ? $items[$delta]['phoneNumber'] : '',
  62. );
  63. $type2['address'] = array(
  64. '#type' => 'textarea',
  65. '#field_prefix' => t('Address : '),
  66. '#size' => 60,
  67. '#default_value' => isset($items[$delta]['address']) ? $items[$delta]['address'] : '',
  68. );
  69. $type2['email'] = array(
  70. '#type' => 'textfield',
  71. '#field_prefix' => t('Email : '),
  72. '#size' => 20,
  73. '#default_value' => isset($items[$delta]['email']) ? $items[$delta]['type2']['email'] : '',
  74. );
  75. $element += $type2;
  76. break;
  77. return $element;
  78. }
Add Comment
Please, Sign In to add comment