107 lines
2.8 KiB
Plaintext
107 lines
2.8 KiB
Plaintext
<?php
|
|
// $Id$
|
|
|
|
/**
|
|
* @file
|
|
* Install, update and uninstall functions for the image module.
|
|
*/
|
|
|
|
/**
|
|
* Implements hook_install().
|
|
*/
|
|
function image_install() {
|
|
// Create the styles directory and ensure it's writable.
|
|
$path = file_directory_path() . '/styles';
|
|
file_prepare_directory($path, FILE_CREATE_DIRECTORY | FILE_MODIFY_PERMISSIONS);
|
|
}
|
|
|
|
/**
|
|
* Implements hook_uninstall().
|
|
*/
|
|
function image_uninstall() {
|
|
// Remove the styles directory and generated images.
|
|
$path = file_directory_path() . '/styles';
|
|
file_unmanaged_delete_recursive($path);
|
|
}
|
|
|
|
/**
|
|
* Implements hook_schema().
|
|
*/
|
|
function image_schema() {
|
|
$schema = array();
|
|
|
|
$schema['cache_image'] = drupal_get_schema_unprocessed('system', 'cache');
|
|
$schema['cache_image']['description'] = 'Cache table used to store information about image manipulations that are in-progress.';
|
|
|
|
$schema['image_styles'] = array(
|
|
'description' => 'Stores configuration options for image styles.',
|
|
'fields' => array(
|
|
'isid' => array(
|
|
'description' => 'The primary identifier for an image style.',
|
|
'type' => 'serial',
|
|
'unsigned' => TRUE,
|
|
'not null' => TRUE,
|
|
),
|
|
'name' => array(
|
|
'description' => 'The style name.',
|
|
'type' => 'varchar',
|
|
'length' => 255,
|
|
'not null' => TRUE,
|
|
),
|
|
),
|
|
'primary key' => array('isid'),
|
|
'indexes' => array(
|
|
'name' => array('name'),
|
|
),
|
|
);
|
|
|
|
$schema['image_effects'] = array(
|
|
'description' => 'Stores configuration options for image effects.',
|
|
'fields' => array(
|
|
'ieid' => array(
|
|
'description' => 'The primary identifier for an image effect.',
|
|
'type' => 'serial',
|
|
'unsigned' => TRUE,
|
|
'not null' => TRUE,
|
|
),
|
|
'isid' => array(
|
|
'description' => 'The {image_styles}.isid for an image style.',
|
|
'type' => 'int',
|
|
'unsigned' => TRUE,
|
|
'not null' => TRUE,
|
|
'default' => 0,
|
|
),
|
|
'weight' => array(
|
|
'description' => 'The weight of the effect in the style.',
|
|
'type' => 'int',
|
|
'unsigned' => FALSE,
|
|
'not null' => TRUE,
|
|
'default' => 0,
|
|
),
|
|
'name' => array(
|
|
'description' => 'The unique name of the effect to be executed.',
|
|
'type' => 'varchar',
|
|
'length' => 255,
|
|
'not null' => TRUE,
|
|
),
|
|
'data' => array(
|
|
'description' => 'The configuration data for the effect.',
|
|
'type' => 'text',
|
|
'not null' => TRUE,
|
|
'size' => 'big',
|
|
'serialize' => TRUE,
|
|
),
|
|
),
|
|
'primary key' => array('ieid'),
|
|
'indexes' => array(
|
|
'isid' => array('isid'),
|
|
'weight' => array('weight'),
|
|
),
|
|
'foreign keys' => array(
|
|
'isid' => array('image_styles' => 'isid'),
|
|
),
|
|
);
|
|
|
|
return $schema;
|
|
}
|