* @version $Revision: 17580 $ */ class DownloadDavMountView extends GalleryView { /** * @see GalleryView::isImmediate */ function isImmediate() { return true; } /** * @see GalleryView::renderImmediate */ function renderImmediate($status, $error) { global $gallery; $urlGenerator =& $gallery->getUrlGenerator(); GalleryUtilities::setResponseHeader( 'Content-Type: application/davmount+xml; charset=UTF-8'); GalleryUtilities::setResponseHeader( 'Content-Disposition: inline; filename="Gallery.davmount"'); echo "\n"; /* * I guess URL shouldn't include session id because a query string may break some clients * and reusing session id by another browser may be considdered session hijacking */ echo ' ' . $urlGenerator->generateUrl(array('controller' => 'webdav.WebDav'), array('forceFullUrl' => true, 'forceSessionId' => false)) . "\n"; list ($itemId, $path) = GalleryUtilities::getRequestVariables('itemId', 'path'); if (isset($itemId)) { list ($ret, $item) = GalleryCoreApi::loadEntitiesById($itemId, 'GalleryFileSystemEntity'); if ($ret) { return $ret; } list ($ret, $path) = $item->fetchLogicalPath(); if ($ret) { return $ret; } } $path = ltrim($path, '/'); if (!empty($path)) { echo ' ' . $path . "\n"; } list ($ret, $isAnonymous) = GalleryCoreApi::isAnonymousUser(); if ($ret) { return $ret; } if (!$isAnonymous) { $user = $gallery->getActiveUser(); echo ' ' . $user->getUserName() . "\n"; } echo "\n"; } } ?>