diff --git a/README.txt b/README.txt index 211c9f6..d1fd117 100644 --- a/README.txt +++ b/README.txt @@ -12,3 +12,4 @@ These options are currently not supported. Any help is welcome. - Multilevel categories - Attachments +Port to D6 has been done by Pierre-Alain RIVIERE (http://anothergeekwebsite.com) and is sponsored by Ippon Technologies (www.ippon.fr) diff --git a/wordpress_import.info b/wordpress_import.info index 1cdfbbc..95811ce 100755 --- a/wordpress_import.info +++ b/wordpress_import.info @@ -2,4 +2,8 @@ name = Wordpress import description = "Import WXR files created by Wordpress blog tool." package = "Importing" -dependencies = taxonomy path comment \ No newline at end of file +dependencies[] = taxonomy +dependencies[] = path +dependencies[] = comment + +core=6.x diff --git a/wordpress_import.module b/wordpress_import.module index 29a914a..93acc0d 100755 --- a/wordpress_import.module +++ b/wordpress_import.module @@ -23,10 +23,10 @@ * Implementation of hook_help() */ -function wordpress_import_help($section='') { +function wordpress_import_help($path, $arg) { $output = ''; - switch ($section) { + switch ($path) { case "admin/help#wordpress_import": $output = '

'. t("This module import a WXR file generated by Worpdress blog software into Drupal"). '

'; break; @@ -43,11 +43,10 @@ function wordpress_import_menu() { global $user; $items = array(); - $items[] = array( - 'path' => 'admin/content/wordpress_import', + $items['admin/content/wordpress_import'] = array( 'title' => t('Wordpress import'), 'description' => t('Import Wordpress WXR file'), - 'callback' => 'wordpress_import_home', + 'page callback' => 'wordpress_import_home', 'access' => ($user->uid == 1), 'type' => MENU_NORMAL_ITEM ); @@ -59,21 +58,11 @@ function wordpress_import_menu() { * Implementation of hook_form() */ -function wordpress_import_form($form_values=NULL) +function wordpress_import_form($form_state) { // This is a multistep form - - if (!isset($form_values)) { - $step = 1; - } - else { - $step = $form_values['step'] + 1; - } - - $form['step'] = array( - '#type' => 'hidden', - '#value' => $step, - ); + + $step = isset($form_state['storage']['step']) ? $form_state['storage']['step'] : 1; switch ($step) { @@ -145,52 +134,40 @@ function wordpress_import_form($form_values=NULL) } $form['#attributes']['enctype'] = 'multipart/form-data'; - $form['#multistep'] = TRUE; - $form['#redirect'] = FALSE; return $form; } /** - * Implementation of hook_validate() - */ - -function wordpress_import_form_validate($form_id, $form_values) -{ - switch ($form_values['step']) { - case 1: - if (!file_check_upload()) - { - form_set_error('upload', t('You must provide a WXR file.')); - } - break; - } -} - -/** * Implementation of hook_submit() */ -function wordpress_import_form_submit($form_id, $form_values) +function wordpress_import_form_submit($form, &$form_state) { - switch ($form_values['step']) { + $step = isset($form_state['storage']['step']) ? $form_state['storage']['step'] : 1; + + + switch ($step) { // Step 1 : upload file case '1': $wordpress_path = file_create_path('wordpress'); file_check_directory($wordpress_path,TRUE); - $file_info = file_save_upload('upload', $wordpress_path.'/import.xml'); + $file_info = file_save_upload('upload', array(), $wordpress_path.'/import.xml'); $_SESSION['wordpress_import']['file_path'] = $file_info->filepath; break; // Step 2 : import blog case 2: - $_SESSION['wordpress_import']['users_map'] = $form_values['users_map']; - $_SESSION['wordpress_import']['alias'] = $form_values['alias']; + $_SESSION['wordpress_import']['users_map'] = $form_state['values']['users_map']; + $_SESSION['wordpress_import']['alias'] = $form_state['values']['alias']; wordpress_import_import_blog($_SESSION['wordpress_import']); break; } + + $form_state['storage']['step'] = ++$step; + $form_state['rebuild'] = TRUE; } /** @@ -617,4 +594,4 @@ function wordpress_import_get_tag($string, $tag) // $return = $wpdb->escape( trim( $return ) ); // TODO : echapper le tag return $return; -} \ No newline at end of file +}