summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/helpers/access.php6
-rw-r--r--core/tests/Access_Helper_Test.php9
2 files changed, 12 insertions, 3 deletions
diff --git a/core/helpers/access.php b/core/helpers/access.php
index 36ef9c5c..f40a5c7c 100644
--- a/core/helpers/access.php
+++ b/core/helpers/access.php
@@ -146,10 +146,10 @@ class access_Core {
if ($perm_name =="view") {
self::_update_access_view_cache($group, $album);
if ($group->id == 1) {
- if ($value) {
- self::_delete_htaccess_files($album);
- } else {
+ if ($value === self::DENY) {
self::_create_htaccess_files($album);
+ } else {
+ self::_delete_htaccess_files($album);
}
}
} else {
diff --git a/core/tests/Access_Helper_Test.php b/core/tests/Access_Helper_Test.php
index 4643eb1a..3141078d 100644
--- a/core/tests/Access_Helper_Test.php
+++ b/core/tests/Access_Helper_Test.php
@@ -275,9 +275,18 @@ class Access_Helper_Test extends Unit_Test_Case {
$album = album::create($root->id, rand(), "test album");
$this->assert_false(file_exists($album->file_path() . "/.htaccess"));
+
access::deny(group::everybody(), "view", $album);
$this->assert_true(file_exists($album->file_path() . "/.htaccess"));
+
access::allow(group::everybody(), "view", $album);
$this->assert_false(file_exists($album->file_path() . "/.htaccess"));
+
+ access::deny(group::everybody(), "view", $album);
+ $this->assert_true(file_exists($album->file_path() . "/.htaccess"));
+
+ access::reset(group::everybody(), "view", $album);
+ $this->assert_false(file_exists($album->file_path() . "/.htaccess"));
}
+
}