diff options
author | Dries Buytaert <dries@buytaert.net> | 2007-05-10 19:55:24 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2007-05-10 19:55:24 +0000 |
commit | 258c653f56ce7dd7dddcbe7c3a46c678dcb79b36 (patch) | |
tree | a30e00872d523d70b1b1ff901b7d7717cc9f3937 /profiles | |
parent | 571013af8cac7f8c47bb8028495be2e0393d5150 (diff) | |
download | brdo-258c653f56ce7dd7dddcbe7c3a46c678dcb79b36.tar.gz brdo-258c653f56ce7dd7dddcbe7c3a46c678dcb79b36.tar.bz2 |
- Patch #141637 by merlinofchaos, gabor, et al: provide a site config form at the end of install to collect data, plus allow profiles to modify and add more.
Diffstat (limited to 'profiles')
-rw-r--r-- | profiles/default/default.profile | 44 |
1 files changed, 41 insertions, 3 deletions
diff --git a/profiles/default/default.profile b/profiles/default/default.profile index d80e15d6e..361d1f9ee 100644 --- a/profiles/default/default.profile +++ b/profiles/default/default.profile @@ -25,13 +25,48 @@ function default_profile_details() { } /** + * Return a list of tasks that this profile supports. + * + * @return + * A keyed array of tasks the profile will perform during the _final stage. + */ +function default_profile_task_list() { +} + +/** * Perform any final installation tasks for this profile. * + * You can implement a state machine here to walk the user through + * more tasks, by setting $task to something other then the reserved + * 'configure', 'finished' and 'done' values. The installer goes + * through the configure-finished-done tasks in this order, if you + * don't modify $task. If you implement your custom tasks, this + * function will get called in every HTTP request (for form + * processing, printing your information screens and so on) until + * you advance to the 'finished' or 'done' tasks. Once ready with + * your profile's tasks, set $task to 'finished' and optionally + * return a final message to be included on the default final + * install page. Alternatively you can set $task to 'done' and + * return a completely custom finished page. In both cases, you + * hand the control back to the installer. + * + * Should a profile want to display a form here, it can; it should set + * the task using variable_set('install_task', 'new_task') and use + * the form technique used in install_tasks() rather than using + * drupal_get_form(). + * + * @param $task + * The current $task of the install system. When hook_profile_final() + * is first called, this is 'configure' (the last built-in task of + * the Drupal installer). + * * @return - * An optional HTML string to display to the user on the final installation - * screen. + * An optional HTML string to display to the user. Used as part of the + * completed page if $task is set to 'finished', or used to display a + * complete page in all other cases. */ -function default_profile_final() { +function default_profile_final(&$task) { + // Insert default user-defined node types into the database. For a complete // list of available node type attributes, refer to the node type API // documentation at: http://api.drupal.org/api/HEAD/function/hook_node_info. @@ -73,4 +108,7 @@ function default_profile_final() { $theme_settings = variable_get('theme_settings', array()); $theme_settings['toggle_node_info_page'] = FALSE; variable_set('theme_settings', $theme_settings); + + // Let the installer know we're finished: + $task = 'finished'; } |