Here's what I did:

  1. [D6] - Installed Field Permissions module while Content Permissions module was still enabled.
  2. [D6] - Disabled and then uninstalled Content Permissions module.
  3. [D6] - Confirmed that permissions were still in the Permissions admin page.
  4. [D6] - Disabled all contrib modules.
  5. [D6] - Upgraded core to D7.
  6. [D7] - Upgraded all of contrib to D7.
  7. [D7] - Confirmed Field Permissions schema version at 7001.
  8. [D7] - Used CCK's content_migrate module to migrate CCK fields to D7 fields (all successful).
  9. [D7] - Enabled Field Permissions.
  10. [D7] - Went to Permissions admin page, nothing but the two default permissions (admin perms, access private) listed for the module.
  11. [D7] - Went to admin page for a few of my fields that had custom content permissions set in D6 and noticed they were all set to "Public". When I selected "Custom" none of the checkboxes were checked.

I expected the custom content permissions set on the CCK fields in D6 to be set up as "Custom" permissions on the D7 fields. Do I need to manually reconfigure all field permissions? That would defeat the purpose of the D6 version of the Field Permissions module.

Any thoughts?

CommentFileSizeAuthor
#1 missing_module_info.png101.88 KBdkingofpa
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

dkingofpa’s picture

FileSize
101.88 KB

I see all my permissions in the role_permission table, but the module column is empty. As a test, I manually set up custom permissions for my field_alt_phone field. When I look in the table, the rows for that field now have "field_permissions" in the module column (see attached pic). It also now shows up on the permissions admin page. The other fields without the "field_permissions" value for the module column still don't work.

I think something is wrong with either the upgrade path instructions on the project page or the code in field_permissions_update_7001().

David_Rothstein’s picture

I'm not sure but I think this may be the problem:

6. [D7] - Upgraded all of contrib to D7.
7. [D7] - Confirmed Field Permissions schema version at 7001.
8. [D7] - Used CCK's content_migrate module to migrate CCK fields to D7 fields (all successful).

If field_permissions_update_7001() already ran before the fields were migrated to D7, then it wouldn't have had any actual fields to update when it was run, so nothing would have happened.

Perhaps the order of those steps needs to be reversed?

ndevelder’s picture

For anyone coming across this, David's response is correct.

The first time I upgraded, I installed D7 with all my needed modules in place, and so on the first database update (prior to re-enabling any modules), the field_permissions update was run along with all the others, but because content migration had not taken place, all fields ended up "public"

So in order for field permissions to be preserved, I had to:

1. Make the switch from content permissions to field permissions on the D6 site
2. Disable all contrib modules on D6
3. Download D7 core and all contrib modules EXCEPT field permissions
4. Run the D7 database update
5. Enable modules needed for field migration
6. Migrate fields
7. Download field permissions to modules folder
8. Run database update again (This time it took a while to run field permissions update 7001)

mariacha1’s picture

Issue summary: View changes
Status: Active » Closed (works as designed)

Sounds like this has been solved.