diff modules/update/update.install @ 1:c1f4ac30525a 6.0

Drupal 6.0
author Franck Deroche <webmaster@defr.org>
date Tue, 23 Dec 2008 14:28:28 +0100
parents
children 589fb7c02327
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/modules/update/update.install	Tue Dec 23 14:28:28 2008 +0100
@@ -0,0 +1,64 @@
+<?php
+// $Id: update.install,v 1.4 2008/02/03 18:38:14 goba Exp $
+
+/**
+ * Implementation of hook_install().
+ */
+function update_install() {
+  // Create cache table.
+  drupal_install_schema('update');
+  // Remove stale variables from update_status 5.x contrib, if any.
+  _update_remove_update_status_variables();
+}
+
+/**
+ * Implementation of hook_uninstall().
+ */
+function update_uninstall() {
+  // Remove cache table.
+  drupal_uninstall_schema('update');
+  // Clear any variables that might be in use
+  $variables = array(
+    'update_check_frequency',
+    'update_fetch_url',
+    'update_last_check',
+    'update_notification_threshold',
+    'update_notify_emails',
+  );
+  foreach ($variables as $variable) {
+    variable_del($variable);
+  }
+  menu_rebuild();
+}
+
+/**
+ * Implementation of hook_schema().
+ */
+function update_schema() {
+  $schema['cache_update'] = drupal_get_schema_unprocessed('system', 'cache');
+  $schema['cache_update']['description'] = t('Cache table for the Update module to store information about available releases, fetched from central server.');
+  return $schema;
+}
+
+/**
+ * Private helper to clear out stale variables from update_status 5.x contrib. 
+ *
+ * @see update_install()
+ * @see update_update_6000()
+ */
+function _update_remove_update_status_variables() {
+  variable_del('update_status_settings');
+  variable_del('update_status_notify_emails');
+  variable_del('update_status_check_frequency');
+  variable_del('update_status_notification_threshold');
+  variable_del('update_status_last');
+  variable_del('update_status_fetch_url');
+}
+
+/**
+ * Clear out stale variables from update_status.
+ */
+function update_update_6000() {
+  _update_remove_update_status_variables();
+  return array();
+}