| 
webmaster@1
 | 
     1 <?php | 
| 
franck@19
 | 
     2 // $Id: update.install,v 1.4.2.2 2009/01/06 15:46:38 goba Exp $ | 
| 
webmaster@1
 | 
     3  | 
| 
webmaster@1
 | 
     4 /** | 
| 
webmaster@1
 | 
     5  * Implementation of hook_install(). | 
| 
webmaster@1
 | 
     6  */ | 
| 
webmaster@1
 | 
     7 function update_install() { | 
| 
webmaster@1
 | 
     8   // Create cache table. | 
| 
webmaster@1
 | 
     9   drupal_install_schema('update'); | 
| 
webmaster@1
 | 
    10   // Remove stale variables from update_status 5.x contrib, if any. | 
| 
webmaster@1
 | 
    11   _update_remove_update_status_variables(); | 
| 
webmaster@1
 | 
    12 } | 
| 
webmaster@1
 | 
    13  | 
| 
webmaster@1
 | 
    14 /** | 
| 
webmaster@1
 | 
    15  * Implementation of hook_uninstall(). | 
| 
webmaster@1
 | 
    16  */ | 
| 
webmaster@1
 | 
    17 function update_uninstall() { | 
| 
webmaster@1
 | 
    18   // Remove cache table. | 
| 
webmaster@1
 | 
    19   drupal_uninstall_schema('update'); | 
| 
webmaster@1
 | 
    20   // Clear any variables that might be in use | 
| 
webmaster@1
 | 
    21   $variables = array( | 
| 
webmaster@1
 | 
    22     'update_check_frequency', | 
| 
webmaster@1
 | 
    23     'update_fetch_url', | 
| 
webmaster@1
 | 
    24     'update_last_check', | 
| 
webmaster@1
 | 
    25     'update_notification_threshold', | 
| 
webmaster@1
 | 
    26     'update_notify_emails', | 
| 
webmaster@1
 | 
    27   ); | 
| 
webmaster@1
 | 
    28   foreach ($variables as $variable) { | 
| 
webmaster@1
 | 
    29     variable_del($variable); | 
| 
webmaster@1
 | 
    30   } | 
| 
webmaster@1
 | 
    31   menu_rebuild(); | 
| 
webmaster@1
 | 
    32 } | 
| 
webmaster@1
 | 
    33  | 
| 
webmaster@1
 | 
    34 /** | 
| 
webmaster@1
 | 
    35  * Implementation of hook_schema(). | 
| 
webmaster@1
 | 
    36  */ | 
| 
webmaster@1
 | 
    37 function update_schema() { | 
| 
webmaster@1
 | 
    38   $schema['cache_update'] = drupal_get_schema_unprocessed('system', 'cache'); | 
| 
franck@19
 | 
    39   $schema['cache_update']['description'] = 'Cache table for the Update module to store information about available releases, fetched from central server.'; | 
| 
webmaster@1
 | 
    40   return $schema; | 
| 
webmaster@1
 | 
    41 } | 
| 
webmaster@1
 | 
    42  | 
| 
webmaster@1
 | 
    43 /** | 
| 
webmaster@11
 | 
    44  * Private helper to clear out stale variables from update_status 5.x contrib. | 
| 
webmaster@1
 | 
    45  * | 
| 
webmaster@1
 | 
    46  * @see update_install() | 
| 
webmaster@1
 | 
    47  * @see update_update_6000() | 
| 
webmaster@1
 | 
    48  */ | 
| 
webmaster@1
 | 
    49 function _update_remove_update_status_variables() { | 
| 
webmaster@1
 | 
    50   variable_del('update_status_settings'); | 
| 
webmaster@1
 | 
    51   variable_del('update_status_notify_emails'); | 
| 
webmaster@1
 | 
    52   variable_del('update_status_check_frequency'); | 
| 
webmaster@1
 | 
    53   variable_del('update_status_notification_threshold'); | 
| 
webmaster@1
 | 
    54   variable_del('update_status_last'); | 
| 
webmaster@1
 | 
    55   variable_del('update_status_fetch_url'); | 
| 
webmaster@1
 | 
    56 } | 
| 
webmaster@1
 | 
    57  | 
| 
webmaster@1
 | 
    58 /** | 
| 
webmaster@1
 | 
    59  * Clear out stale variables from update_status. | 
| 
webmaster@1
 | 
    60  */ | 
| 
webmaster@1
 | 
    61 function update_update_6000() { | 
| 
webmaster@1
 | 
    62   _update_remove_update_status_variables(); | 
| 
webmaster@1
 | 
    63   return array(); | 
| 
webmaster@1
 | 
    64 } |