You are here

README.txt in User Import 6.4

********************************************************************
                     D R U P A L    M O D U L E
********************************************************************
Name: user import module
Author: Robert Castelo <www.codepositive.com>
Drupal: 6.x
********************************************************************
DESCRIPTION:

Import users into Drupal from a csv file (comma separated file).

Features include:

* Creates an account for each user
* Match csv columns to profile fields.
* Can optionally use the file's first row to map csv data to user profile fields
* Option to create Usernames based on data from file, e.g. "John" + "Smith" => "JohnSmith"
* Usernames can be made of abbreviated data from file, e.g. "Jane" + "Doe" => "JDoe"
* Option to create random, human readable, Usernames
* Option to import passwords
* Option to create random passwords for each user
* Can set user roles
* Option to send welcome email, with account details to each new user
* Can set each user's contact form to enabled
* Test mode option to check for errors
* Processing can be triggered by cron or manually by an administrator
* Can stagger number of users imported, so that not too many emails are sent at one time
* Multiple files can be imported/tested at the same time
* Import into Organic Groups
* Import into Node Profile 
* Option to make new accounts immediately active, or inactive until user logs in
* Use CSV file already uploaded through FTP (useful for large imports)
* Designed to be massively scalable

** Supported CSV File Formats **

The following settings are necessary when saving a csv file which will be used for the import.

File needs to be saved as "Character Set: Unicode (UTF-8)".

Field delimiter: ,
- can be configured as something else, a comma is the default though.

Text delimiter: "
- if there's an option to quote all text cells, enable it.

The 'Windows line endings' setting complies with all of the above.

If file import fails with "File copy failed: source file does not exist." try
setting the file extension to .txt.


** IMPORTANT **

- Note that Date fields are not yet supported.

- Note that passwords can only be imported as plain text, and will be converted to MD5 by Drupal. 

- Note that if your data contains a backslash before the column separator it may not get imported as expected:

  "123","abc\","def"
  The second field will be imported as: abc","def

  This has been fixed in PHP 5.3


********************************************************************
PREREQUISITES:

  Must have customized Profile fields already entered 
  if data is to be imported into user profiles.


********************************************************************
INSTALLATION:

Note: It is assumed that you have Drupal up and running.  Be sure to
check the Drupal web site if you need assistance.

1. Place the entire user_import directory into your Drupal directory:
   sites/all/modules/
   

2. Enable the user_import modules by navigating to:

   administer > build > modules
     
  Click the 'Save configuration' button at the bottom to commit your
  changes. 

ADDITIONAL OPTIONS 

* Content Profile Import
Content Profile module
http://drupal.org/project/content_profile

If data is to be imported into Content Profile nodes the following module
needs to be installed and enabled:
 
  Node Import
  http://drupal.org/project/node_import

Note that Date fields are not yet supported.


  
  
********************************************************************
USAGE     


 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -    
  For more detailed instructions (with pictures) please go to the 
  documentation pages for this module:

  http://drupal.org/node/137653
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        

1. To set permissions of who can import users into the site, navigate to:

'Administer' 
    -- 'User management'
        -- 'Access control' (admin/user/access)
    

2. To import users, navigate to:

'Administer'
    -- 'User management'
        -- 'User imports'  (admin/user/user_import)
        
3. Select 'Import' tab (admin/user/user_import/add)

4. Press the 'browse' button to select a file to import,
    or select a file already added through FTP.

5. Click on Next.

6. Under CSV file you should see the name of the file you just uploaded.

7. Under Options you should see Ignore First Line ( use if the first row are labels ), 
    
    Contact, and Send Email.  Select whichever is appropiate.

8. Under Field Match you should see the various columns from your profile page.

9. For each csv column select a Drupal field to map. 

10. Under username select 'No', if the field is not to be used to generate the username, or select '1' - '4' 
    for the order to use the field in generating username.

    Example: 'LastName' and 'FirstName' are fields to be used as username.  So under the username
    selection chose '1' for 'FirstName' and '2' for 'Lastname', and the username generated will be in 
    the form 'FirstNameLastName'.

11. Under Role Assign select the roles the imported users will be assigned.

12. Under Save Settings, you can save your settings for use on future imports.

13. Click "Test" to do an import without committing changes to the database.  Fix any errors that are generated.

14. Click "Import" to complete the import.


        ---------------------------
         OPTIONS FOR OTHER MODULES
        --------------------------- 

-- CONTENT PROFILE --

* Content Profile node fields will be available when matching csv data to Drupal fields.  

* Date fields are not supported yet.

* Text fields that have their widget set to 'Select list' are not supported yet. The workaround is to set the field's 
  widget to 'Text Field' before the import then set it back to 'Select list' once the import is completed. 

New user imported:

  A Content Profile node will be created if there is data for that node, if there is no data the node will not be created.



--  CIVICRM --

1. Import all the necessary fields to civicrm with the import module from CIVICRM.

2. Import the users to Drupal using User Import module.

3. Make sure the e-mail addresses imported to CIVICRM are the same as the ones imported to Drupal.

4. In CIVICRM use the option to synchronize Drupal users with CIVICRM contacts.








********************************************************************
AUTHOR CONTACT

- Report Bugs/Request Features:
   http://drupal.org/project/user_import
   
- Comission New Features:
   http://drupal.org/user/3555/contact
   
- Want To Say Thank You:
   http://www.amazon.com/gp/registry/O6JKRQEQ774F

        
********************************************************************
ACKNOWLEDGEMENT

- I looked at a script by David McIntosh (neofactor.com) before coding this module.
- Documentation help Steve (spatz4000)
- patch by mfredrickson
- patch by idealso
- code from Nedjo Rogers

File

README.txt
View source
  1. ********************************************************************
  2. D R U P A L M O D U L E
  3. ********************************************************************
  4. Name: user import module
  5. Author: Robert Castelo
  6. Drupal: 6.x
  7. ********************************************************************
  8. DESCRIPTION:
  9. Import users into Drupal from a csv file (comma separated file).
  10. Features include:
  11. * Creates an account for each user
  12. * Match csv columns to profile fields.
  13. * Can optionally use the file's first row to map csv data to user profile fields
  14. * Option to create Usernames based on data from file, e.g. "John" + "Smith" => "JohnSmith"
  15. * Usernames can be made of abbreviated data from file, e.g. "Jane" + "Doe" => "JDoe"
  16. * Option to create random, human readable, Usernames
  17. * Option to import passwords
  18. * Option to create random passwords for each user
  19. * Can set user roles
  20. * Option to send welcome email, with account details to each new user
  21. * Can set each user's contact form to enabled
  22. * Test mode option to check for errors
  23. * Processing can be triggered by cron or manually by an administrator
  24. * Can stagger number of users imported, so that not too many emails are sent at one time
  25. * Multiple files can be imported/tested at the same time
  26. * Import into Organic Groups
  27. * Import into Node Profile
  28. * Option to make new accounts immediately active, or inactive until user logs in
  29. * Use CSV file already uploaded through FTP (useful for large imports)
  30. * Designed to be massively scalable
  31. ** Supported CSV File Formats **
  32. The following settings are necessary when saving a csv file which will be used for the import.
  33. File needs to be saved as "Character Set: Unicode (UTF-8)".
  34. Field delimiter: ,
  35. - can be configured as something else, a comma is the default though.
  36. Text delimiter: "
  37. - if there's an option to quote all text cells, enable it.
  38. The 'Windows line endings' setting complies with all of the above.
  39. If file import fails with "File copy failed: source file does not exist." try
  40. setting the file extension to .txt.
  41. ** IMPORTANT **
  42. - Note that Date fields are not yet supported.
  43. - Note that passwords can only be imported as plain text, and will be converted to MD5 by Drupal.
  44. - Note that if your data contains a backslash before the column separator it may not get imported as expected:
  45. "123","abc\","def"
  46. The second field will be imported as: abc","def
  47. This has been fixed in PHP 5.3
  48. ********************************************************************
  49. PREREQUISITES:
  50. Must have customized Profile fields already entered
  51. if data is to be imported into user profiles.
  52. ********************************************************************
  53. INSTALLATION:
  54. Note: It is assumed that you have Drupal up and running. Be sure to
  55. check the Drupal web site if you need assistance.
  56. 1. Place the entire user_import directory into your Drupal directory:
  57. sites/all/modules/
  58. 2. Enable the user_import modules by navigating to:
  59. administer > build > modules
  60. Click the 'Save configuration' button at the bottom to commit your
  61. changes.
  62. ADDITIONAL OPTIONS
  63. * Content Profile Import
  64. Content Profile module
  65. http://drupal.org/project/content_profile
  66. If data is to be imported into Content Profile nodes the following module
  67. needs to be installed and enabled:
  68. Node Import
  69. http://drupal.org/project/node_import
  70. Note that Date fields are not yet supported.
  71. ********************************************************************
  72. USAGE
  73. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  74. For more detailed instructions (with pictures) please go to the
  75. documentation pages for this module:
  76. http://drupal.org/node/137653
  77. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  78. 1. To set permissions of who can import users into the site, navigate to:
  79. 'Administer'
  80. -- 'User management'
  81. -- 'Access control' (admin/user/access)
  82. 2. To import users, navigate to:
  83. 'Administer'
  84. -- 'User management'
  85. -- 'User imports' (admin/user/user_import)
  86. 3. Select 'Import' tab (admin/user/user_import/add)
  87. 4. Press the 'browse' button to select a file to import,
  88. or select a file already added through FTP.
  89. 5. Click on Next.
  90. 6. Under CSV file you should see the name of the file you just uploaded.
  91. 7. Under Options you should see Ignore First Line ( use if the first row are labels ),
  92. Contact, and Send Email. Select whichever is appropiate.
  93. 8. Under Field Match you should see the various columns from your profile page.
  94. 9. For each csv column select a Drupal field to map.
  95. 10. Under username select 'No', if the field is not to be used to generate the username, or select '1' - '4'
  96. for the order to use the field in generating username.
  97. Example: 'LastName' and 'FirstName' are fields to be used as username. So under the username
  98. selection chose '1' for 'FirstName' and '2' for 'Lastname', and the username generated will be in
  99. the form 'FirstNameLastName'.
  100. 11. Under Role Assign select the roles the imported users will be assigned.
  101. 12. Under Save Settings, you can save your settings for use on future imports.
  102. 13. Click "Test" to do an import without committing changes to the database. Fix any errors that are generated.
  103. 14. Click "Import" to complete the import.
  104. ---------------------------
  105. OPTIONS FOR OTHER MODULES
  106. ---------------------------
  107. -- CONTENT PROFILE --
  108. * Content Profile node fields will be available when matching csv data to Drupal fields.
  109. * Date fields are not supported yet.
  110. * Text fields that have their widget set to 'Select list' are not supported yet. The workaround is to set the field's
  111. widget to 'Text Field' before the import then set it back to 'Select list' once the import is completed.
  112. New user imported:
  113. A Content Profile node will be created if there is data for that node, if there is no data the node will not be created.
  114. -- CIVICRM --
  115. 1. Import all the necessary fields to civicrm with the import module from CIVICRM.
  116. 2. Import the users to Drupal using User Import module.
  117. 3. Make sure the e-mail addresses imported to CIVICRM are the same as the ones imported to Drupal.
  118. 4. In CIVICRM use the option to synchronize Drupal users with CIVICRM contacts.
  119. ********************************************************************
  120. AUTHOR CONTACT
  121. - Report Bugs/Request Features:
  122. http://drupal.org/project/user_import
  123. - Comission New Features:
  124. http://drupal.org/user/3555/contact
  125. - Want To Say Thank You:
  126. http://www.amazon.com/gp/registry/O6JKRQEQ774F
  127. ********************************************************************
  128. ACKNOWLEDGEMENT
  129. - I looked at a script by David McIntosh (neofactor.com) before coding this module.
  130. - Documentation help Steve (spatz4000)
  131. - patch by mfredrickson
  132. - patch by idealso
  133. - code from Nedjo Rogers