annotate sites/all/modules/field_collection/field_collection.api.php @ 9:830c812b520f

added smtp module
author root <root@paio.local>
date Mon, 28 Oct 2013 15:34:27 +0000
parents ce11bbd8f642
children
rev   line source
danielebarchiesi@4 1 <?php
danielebarchiesi@4 2
danielebarchiesi@4 3 /**
danielebarchiesi@4 4 * @file
danielebarchiesi@4 5 * Contains API documentation and examples for the Field collection module.
danielebarchiesi@4 6 */
danielebarchiesi@4 7
danielebarchiesi@4 8 /**
danielebarchiesi@4 9 * @addtogroup hooks
danielebarchiesi@4 10 * @{
danielebarchiesi@4 11 */
danielebarchiesi@4 12
danielebarchiesi@4 13 /**
danielebarchiesi@4 14 * Alter whether a field collection item is considered empty.
danielebarchiesi@4 15 *
danielebarchiesi@4 16 * This hook allows modules to determine whether a field collection is empty
danielebarchiesi@4 17 * before it is saved.
danielebarchiesi@4 18 *
danielebarchiesi@4 19 * @param boolean $empty
danielebarchiesi@4 20 * Whether or not the field should be considered empty.
danielebarchiesi@4 21 * @param FieldCollectionItemEntity $item
danielebarchiesi@4 22 * The field collection we are currently operating on.
danielebarchiesi@4 23 */
danielebarchiesi@4 24 function hook_field_collection_is_empty_alter(&$is_empty, FieldCollectionItemEntity $item) {
danielebarchiesi@4 25 if (isset($item->my_field) && empty($item->my_field)) {
danielebarchiesi@4 26 $is_empty = TRUE;
danielebarchiesi@4 27 }
danielebarchiesi@4 28 }
danielebarchiesi@4 29
danielebarchiesi@4 30 /**
danielebarchiesi@4 31 * Acts on field collections being loaded from the database.
danielebarchiesi@4 32 *
danielebarchiesi@4 33 * This hook is invoked during field collection item loading, which is handled
danielebarchiesi@4 34 * by entity_load(), via the EntityCRUDController.
danielebarchiesi@4 35 *
danielebarchiesi@4 36 * @param array $entities
danielebarchiesi@4 37 * An array of field collection item entities being loaded, keyed by id.
danielebarchiesi@4 38 *
danielebarchiesi@4 39 * @see hook_entity_load()
danielebarchiesi@4 40 */
danielebarchiesi@4 41 function hook_field_collection_item_load(array $entities) {
danielebarchiesi@4 42 $result = db_query('SELECT pid, foo FROM {mytable} WHERE pid IN(:ids)', array(':ids' => array_keys($entities)));
danielebarchiesi@4 43 foreach ($result as $record) {
danielebarchiesi@4 44 $entities[$record->pid]->foo = $record->foo;
danielebarchiesi@4 45 }
danielebarchiesi@4 46 }
danielebarchiesi@4 47
danielebarchiesi@4 48 /**
danielebarchiesi@4 49 * Responds when a field collection item is inserted.
danielebarchiesi@4 50 *
danielebarchiesi@4 51 * This hook is invoked after the field collection item is inserted into the
danielebarchiesi@4 52 * database.
danielebarchiesi@4 53 *
danielebarchiesi@4 54 * @param FieldCollectionItemEntity $field_collection_item
danielebarchiesi@4 55 * The field collection item that is being inserted.
danielebarchiesi@4 56 *
danielebarchiesi@4 57 * @see hook_entity_insert()
danielebarchiesi@4 58 */
danielebarchiesi@4 59 function hook_field_collection_item_insert(FieldCollectionItemEntity $field_collection_item) {
danielebarchiesi@4 60 db_insert('mytable')->fields(array(
danielebarchiesi@4 61 'id' => entity_id('field_collection_item', $field_collection_item),
danielebarchiesi@4 62 'extra' => print_r($field_collection_item, TRUE),
danielebarchiesi@4 63 ))->execute();
danielebarchiesi@4 64 }
danielebarchiesi@4 65
danielebarchiesi@4 66 /**
danielebarchiesi@4 67 * Acts on a field collection item being inserted or updated.
danielebarchiesi@4 68 *
danielebarchiesi@4 69 * This hook is invoked before the field collection item is saved to the database.
danielebarchiesi@4 70 *
danielebarchiesi@4 71 * @param FieldCollectionItemEntity $field_collection_item
danielebarchiesi@4 72 * The field collection item that is being inserted or updated.
danielebarchiesi@4 73 *
danielebarchiesi@4 74 * @see hook_entity_presave()
danielebarchiesi@4 75 */
danielebarchiesi@4 76 function hook_field_collection_item_presave(FieldCollectionItemEntity $field_collection_item) {
danielebarchiesi@4 77 $field_collection_item->name = 'foo';
danielebarchiesi@4 78 }
danielebarchiesi@4 79
danielebarchiesi@4 80 /**
danielebarchiesi@4 81 * Responds to a field collection item being updated.
danielebarchiesi@4 82 *
danielebarchiesi@4 83 * This hook is invoked after the field collection item has been updated in the
danielebarchiesi@4 84 * database.
danielebarchiesi@4 85 *
danielebarchiesi@4 86 * @param FieldCollectionItemEntity $field_collection_item
danielebarchiesi@4 87 * The field collection item that is being updated.
danielebarchiesi@4 88 *
danielebarchiesi@4 89 * @see hook_entity_update()
danielebarchiesi@4 90 */
danielebarchiesi@4 91 function hook_field_collection_item_update(FieldCollectionItemEntity $field_collection_item) {
danielebarchiesi@4 92 db_update('mytable')
danielebarchiesi@4 93 ->fields(array('extra' => print_r($field_collection_item, TRUE)))
danielebarchiesi@4 94 ->condition('id', entity_id('field_collection_item', $field_collection_item))
danielebarchiesi@4 95 ->execute();
danielebarchiesi@4 96 }
danielebarchiesi@4 97
danielebarchiesi@4 98 /**
danielebarchiesi@4 99 * Responds to field collection item deletion.
danielebarchiesi@4 100 *
danielebarchiesi@4 101 * This hook is invoked after the field collection item has been removed from
danielebarchiesi@4 102 * the database.
danielebarchiesi@4 103 *
danielebarchiesi@4 104 * @param FieldCollectionItemEntity $field_collection_item
danielebarchiesi@4 105 * The field collection item that is being deleted.
danielebarchiesi@4 106 *
danielebarchiesi@4 107 * @see hook_entity_delete()
danielebarchiesi@4 108 */
danielebarchiesi@4 109 function hook_field_collection_item_delete(FieldCollectionItemEntity $field_collection_item) {
danielebarchiesi@4 110 db_delete('mytable')
danielebarchiesi@4 111 ->condition('pid', entity_id('field_collection_item', $field_collection_item))
danielebarchiesi@4 112 ->execute();
danielebarchiesi@4 113 }
danielebarchiesi@4 114
danielebarchiesi@4 115 /**
danielebarchiesi@4 116 * Act on a field collection item that is being assembled before rendering.
danielebarchiesi@4 117 *
danielebarchiesi@4 118 * @param $field_collection_item
danielebarchiesi@4 119 * The field collection item entity.
danielebarchiesi@4 120 * @param $view_mode
danielebarchiesi@4 121 * The view mode the field collection item is rendered in.
danielebarchiesi@4 122 * @param $langcode
danielebarchiesi@4 123 * The language code used for rendering.
danielebarchiesi@4 124 *
danielebarchiesi@4 125 * The module may add elements to $field_collection_item->content prior to
danielebarchiesi@4 126 * rendering. The structure of $field_collection_item->content is a renderable
danielebarchiesi@4 127 * array as expected by drupal_render().
danielebarchiesi@4 128 *
danielebarchiesi@4 129 * @see hook_entity_prepare_view()
danielebarchiesi@4 130 * @see hook_entity_view()
danielebarchiesi@4 131 */
danielebarchiesi@4 132 function hook_field_collection_item_view($field_collection_item, $view_mode, $langcode) {
danielebarchiesi@4 133 $field_collection_item->content['my_additional_field'] = array(
danielebarchiesi@4 134 '#markup' => $additional_field,
danielebarchiesi@4 135 '#weight' => 10,
danielebarchiesi@4 136 '#theme' => 'mymodule_my_additional_field',
danielebarchiesi@4 137 );
danielebarchiesi@4 138 }
danielebarchiesi@4 139
danielebarchiesi@4 140 /**
danielebarchiesi@4 141 * Alter the results of entity_view() for field collection items.
danielebarchiesi@4 142 *
danielebarchiesi@4 143 * This hook is called after the content has been assembled in a structured
danielebarchiesi@4 144 * array and may be used for doing processing which requires that the complete
danielebarchiesi@4 145 * field collection item content structure has been built.
danielebarchiesi@4 146 *
danielebarchiesi@4 147 * If the module wishes to act on the rendered HTML of the field collection item
danielebarchiesi@4 148 * rather than the structured content array, it may use this hook to add a
danielebarchiesi@4 149 * #post_render callback. See drupal_render() and theme() documentation
danielebarchiesi@4 150 * respectively for details.
danielebarchiesi@4 151 *
danielebarchiesi@4 152 * @param $build
danielebarchiesi@4 153 * A renderable array representing the field collection item content.
danielebarchiesi@4 154 *
danielebarchiesi@4 155 * @see hook_entity_view_alter()
danielebarchiesi@4 156 */
danielebarchiesi@4 157 function hook_field_collection_item_view_alter($build) {
danielebarchiesi@4 158 if ($build['#view_mode'] == 'full' && isset($build['an_additional_field'])) {
danielebarchiesi@4 159 // Change its weight.
danielebarchiesi@4 160 $build['an_additional_field']['#weight'] = -10;
danielebarchiesi@4 161
danielebarchiesi@4 162 // Add a #post_render callback to act on the rendered HTML of the entity.
danielebarchiesi@4 163 $build['#post_render'][] = 'my_module_post_render';
danielebarchiesi@4 164 }
danielebarchiesi@4 165 }
danielebarchiesi@4 166
danielebarchiesi@4 167 /**
danielebarchiesi@4 168 * @}
danielebarchiesi@4 169 */