I turned on the Content Access and setup the default permissions. They all worked according to the settings.

I then enabled Per Node Settings for a specific content type, edited the Access Control for a specific pre-existing node, Saved. Did not work.

I then created a new node of the Per Node type. Edited Acceess Control, Saved. It worked.

I then went back to my pre-existing node, Clicked Edit then Save. It worked.

I then turned off Per Node Access control on the content type. The Per Node Settings were still being applied to the pre-existing node, but not the new node.

I then went to the pre-existing node, Clicked Edit then Save, Content Type default setting we then being applied.

For pre-existing nodes there seems to be a cache of some kind on the access control settings possibly? Sorry I did not have more time to debug/patch. I'm on deadline, but I wanted to get this info out there and saved somewhere.

Comments

febbraro’s picture

Priority: Normal » Critical
fago’s picture

Category: bug » support
Status: Active » Fixed

the module keeps track of when the access is set to "default" or modified and updates only nodes with default permissions.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.

ekrispin’s picture

I have the same problem: existing nodes seem to not get affected by the module.

I didn't understand how the previous comment explains that...

ekrispin’s picture

Status: Closed (fixed) » Active
ekrispin’s picture

As the module fails to take effect on the actual permissions in my site
and as I couldn't understand the brief cryptic explanation given above
and as there is no documentation whatsoever for this extensive module
and as there is no much response here
and as it causes an important block to simply disappear (the "related items" block of http://drupal.org/node/76923)....
I decided to uninstall it.

This is pity because this is such a truly promising module. But a security module without any documentation is not worth much, be it sophisticated as it may be.

As for example, I couldn't find any proper detailed description as to the exact relationship between the standard Drupal's permissions, this module's "default permissions" and the per-node permissions etc.

groovi’s picture

I've noticed the same. In my case I figured it out soon enaugh to delete all content before module activation and a rewrite it all. I also tried to work-around the problem, but with no success.

Hopefully, someone can help.

vacilando’s picture

Same problem... Perhaps there is some simple way to apply the selected permissions for existing nodes as well?

pete-drupal’s picture

(on Drupal 5.7)

Have you tried rebuilding the node access table? If not, you can rebuild it as following (make sure you have a database backup, just in case things go wrong):

  1. Set the user/role/...-based permissions on the nodes to protect using the admin pages, as you normally would
  2. Go to admin/content/node-settings
  3. Click on "Rebuild permissions" (and click again on "Rebuild permissions" on the next screen)

If this doesn't help, are you using other access-related modules which could interfere?

vacilando’s picture

Thanks - yes, "rebuild permissions" has helped. Except it first time out due to the number of nodes on my site, but when I hacked the relevant code in Drupal core (prolonging timeout when that function runs) the situation has reverted to normal.

Btw, the "rebuild permissions" tool as provided by Drupal 5.7 is hardly useful because of those timeouts. On any a bit larger website it will stop running after the timeout limit set in PHP. The only solution is change the timeout for this particular script using set_time_limit() dynamically (change in php.ini would be impractical and dangerous for the server). I shall be raising this issue elsewhere for Drupal core work but I wanted to mention it quickly here as well.

good_man’s picture

Status: Active » Closed (fixed)

Closing it as 5.x is not supported anymore. Newer core versions will show a warning to rebuild permissions.