simplenews_scheduler.install in Simplenews Scheduler 6
Same filename and directory in other branches
Install and uninstall functions for the Simplenews Scheduler module.
File
simplenews_scheduler.installView source
<?php
/**
* @file
* Install and uninstall functions for the Simplenews Scheduler module.
*/
/**
* Implementation of hook_install().
*/
function simplenews_scheduler_install() {
drupal_install_schema('simplenews_scheduler');
}
/**
* Implementation of hook_schema().
*/
function simplenews_scheduler_schema() {
$schema['simplenews_scheduler'] = array(
'fields' => array(
'nid' => array(
'type' => 'int',
'not null' => TRUE,
'default' => 0,
),
'last_run' => array(
'type' => 'int',
'not null' => TRUE,
'default' => 0,
),
'activated' => array(
'type' => 'int',
'size' => 'tiny',
'not null' => TRUE,
'default' => 0,
),
'interval' => array(
'type' => 'varchar',
'length' => 10,
),
'start_date' => array(
'type' => 'int',
'not null' => TRUE,
),
'stop' => array(
'type' => 'int',
'not null' => TRUE,
),
'stop_date' => array(
'type' => 'int',
'not null' => TRUE,
'default' => 1388447999,
),
// Default is Mon, 31 Dec 2013 23:59:59 GMT
'stop_edition' => array(
'type' => 'int',
'not null' => TRUE,
'default' => 0,
),
),
'primary key' => array(
'nid',
),
);
$schema['simplenews_scheduler_editions'] = array(
'fields' => array(
'eid' => array(
'type' => 'int',
'not null' => TRUE,
'default' => 0,
),
'pid' => array(
'type' => 'int',
'not null' => TRUE,
'default' => 0,
),
'date_issued' => array(
'type' => 'int',
'not null' => TRUE,
'default' => 0,
),
),
'primary key' => array(
'eid',
),
);
return $schema;
}
/**
* Implementation of hook_uninstall().
*/
function simplenews_scheduler_uninstall() {
// Remove tables.
drupal_uninstall_schema('simplenews_scheduler');
}
/**
* Implementation of hook_update_N().
*/
function simplenews_scheduler_update_6000() {
$ret = array();
db_add_field($ret, 'simplenews_scheduler', 'stop', array(
'type' => 'int',
'length' => 1,
'not null' => TRUE,
));
db_add_field($ret, 'simplenews_scheduler', 'stop_date', array(
'type' => 'int',
'length' => 11,
'not null' => TRUE,
'default' => 1577923199,
));
db_add_field($ret, 'simplenews_scheduler', 'stop_edition', array(
'type' => 'int',
'length' => 10,
'not null' => TRUE,
'default' => 0,
));
$ret[] = update_sql("ALTER TABLE {simplenews_scheduler} CHANGE sched_interval `interval` VARCHAR(10) NOT NULL DEFAULT '0'");
$ret[] = update_sql("ALTER TABLE {simplenews_scheduler} CHANGE sched_start start_date INT(11) NOT NULL DEFAULT '0'");
return $ret;
}
/**
* Implementation of hook_update_N().
*/
function simplenews_scheduler_update_6001() {
$ret = array();
db_drop_field($ret, 'simplenews_scheduler', 'sid');
db_add_field($ret, 'simplenews_scheduler', 'activated', array(
'type' => 'int',
'size' => 'tiny',
'not null' => TRUE,
'default' => 0,
));
$ret[] = update_sql("ALTER IGNORE TABLE {simplenews_scheduler} CHANGE snid nid INT(11) NOT NULL DEFAULT '0', ADD PRIMARY KEY (nid)");
$ret[] = update_sql("ALTER TABLE {simplenews_scheduler_editions} CHANGE edition_snid eid INT(11) NOT NULL DEFAULT '0'");
$ret[] = update_sql("ALTER TABLE {simplenews_scheduler_editions} CHANGE snid pid INT(11) NOT NULL DEFAULT '0'");
return $ret;
}
/**
* Implementation of hook_update_N().
*/
function simplenews_scheduler_update_6002() {
$ret = array();
db_drop_field($ret, 'simplenews_scheduler', 'run_limit');
db_drop_field($ret, 'simplenews_scheduler', 'run_count');
return $ret;
}
/**
* Implementation of hook_update_N().
*/
function simplenews_scheduler_update_6003() {
$ret = array();
db_add_primary_key($ret, 'simplenews_scheduler_editions', array(
'eid',
));
return $ret;
}
Functions
Name | Description |
---|---|
simplenews_scheduler_install | Implementation of hook_install(). |
simplenews_scheduler_schema | Implementation of hook_schema(). |
simplenews_scheduler_uninstall | Implementation of hook_uninstall(). |
simplenews_scheduler_update_6000 | Implementation of hook_update_N(). |
simplenews_scheduler_update_6001 | Implementation of hook_update_N(). |
simplenews_scheduler_update_6002 | Implementation of hook_update_N(). |
simplenews_scheduler_update_6003 | Implementation of hook_update_N(). |