Prevent zids messing up dav

This commit is contained in:
Thomas Willingham 2014-01-20 06:28:38 +00:00
parent 9fb36df8d9
commit 26dfcecf05

View File

@ -50,6 +50,9 @@ class RedDirectory extends DAV\Node implements DAV\ICollection {
function getChild($name) { function getChild($name) {
logger('RedDirectory::getChild : ' . $name, LOGGER_DATA); logger('RedDirectory::getChild : ' . $name, LOGGER_DATA);
$name = str_replace(array('?f=','&f='),array('',''),$name);
$name = preg_replace('/[\?&]zid=(.*?)([\?&]|$)/ism','',$name);
logger('RedDirectory::getChild post strip zid: ' . $name, LOGGER_DATA);
if(get_config('system','block_public') && (! $this->auth->channel_id) && (! $this->auth->observer)) { if(get_config('system','block_public') && (! $this->auth->channel_id) && (! $this->auth->observer)) {
@ -190,9 +193,8 @@ class RedDirectory extends DAV\Node implements DAV\ICollection {
} }
$r = q("select * from channel where channel_id = %d and not (channel_pageflags & %d) limit 1", $r = q("select * from channel where channel_id = %d and not (channel_pageflags & %d) limit 1",
intval($this->auth->owner_id), intval(PAGE_REMOVED),
intval(PAGE_REMOVED) intval($this->auth->owner_id)
); );
if($r) { if($r) {