scald_flash.install in Scald: Media Management made easy 7
Scald Flash Installation
File
modules/providers/scald_flash/scald_flash.installView source
<?php
/**
* @file
* Scald Flash Installation
*/
/**
* Implements hook_install().
*/
function scald_flash_install() {
ScaldAtomController::addType('flash', 'Flash', 'Resource flash');
// Defines the default thumbnail to use for flash atoms.
$default = scald_atom_defaults('flash');
$default->thumbnail_source = drupal_get_path('module', 'scald_flash') . '/icons/flash.png';
$defaults = variable_get('scald_atom_defaults', array());
$defaults['flash'] = $default;
$defaults = variable_set('scald_atom_defaults', $defaults);
}
/**
* Implements hook_uninstall().
*/
function scald_flash_uninstall() {
field_delete_field('scald_width');
field_delete_field('scald_height');
$defaults = variable_get('scald_atom_defaults', array());
unset($defaults['flash']);
$defaults = variable_set('scald_atom_defaults', $defaults);
drupal_load('module', 'scald');
// If Scald is disabled, its classes are not autoloaded.
module_load_include('inc', 'scald', 'includes/ScaldAtomController');
ScaldAtomController::removeType('flash');
}
/**
* Implements hook_enable().
*
* Ensures that various configuration options are set so that Scald Core can
* make certain assumptions about the contents of variables.
*/
function scald_flash_enable() {
_scald_flash_create_width_field();
_scald_flash_create_height_field();
}
/**
* Create a field to store atom width.
*/
function _scald_flash_create_width_field() {
// Create the scald_width field.
if (!field_info_field('scald_width')) {
$field = array(
'field_name' => 'scald_width',
'type' => 'text',
'label' => t('Width'),
);
field_create_field($field);
$instance = array(
'field_name' => 'scald_width',
'label' => t('Width'),
'entity_type' => 'scald_atom',
'bundle' => 'flash',
'required' => FALSE,
);
if (!field_read_instance($instance['entity_type'], $instance['field_name'], $instance['bundle'])) {
field_create_instance($instance);
}
}
}
/**
* Create a field to store atom height.
*/
function _scald_flash_create_height_field() {
// Create the scald_height field.
if (!field_info_field('scald_height')) {
$field = array(
'field_name' => 'scald_height',
'type' => 'text',
'label' => t('Height'),
);
field_create_field($field);
$instance = array(
'field_name' => 'scald_height',
'label' => t('Height'),
'entity_type' => 'scald_atom',
'bundle' => 'flash',
'required' => FALSE,
);
if (!field_read_instance($instance['entity_type'], $instance['field_name'], $instance['bundle'])) {
field_create_instance($instance);
}
}
}
Functions
Name | Description |
---|---|
scald_flash_enable | Implements hook_enable(). |
scald_flash_install | Implements hook_install(). |
scald_flash_uninstall | Implements hook_uninstall(). |
_scald_flash_create_height_field | Create a field to store atom height. |
_scald_flash_create_width_field | Create a field to store atom width. |