more cloud updates - upgrade the DAV structures as well.
This commit is contained in:
@@ -811,7 +811,7 @@ function attach_store($channel, $observer_hash, $options = '', $arr = null) {
|
||||
|
||||
if($is_photo) {
|
||||
|
||||
$args = array( 'source' => $source, 'visible' => $visible, 'resource_id' => $hash, 'album' => basename($pathname), 'os_syspath' => $os_basepath . $os_relpath, 'os_path' => $os_path, 'display_path' => $display_path, 'filename' => $filename, 'getimagesize' => $gis, 'directory' => $direct, 'options' => $options );
|
||||
$args = array( 'source' => $source, 'visible' => $visible, 'resource_id' => $hash, 'album' => $pathname, 'os_syspath' => $os_basepath . $os_relpath, 'os_path' => $os_path, 'display_path' => $display_path, 'filename' => $filename, 'getimagesize' => $gis, 'directory' => $direct, 'options' => $options );
|
||||
if($arr['contact_allow'])
|
||||
$args['contact_allow'] = $arr['contact_allow'];
|
||||
if($arr['group_allow'])
|
||||
@@ -915,7 +915,7 @@ function z_readdir($channel_id, $observer_hash, $pathname, $parent_hash = '') {
|
||||
if(count($paths) > 1) {
|
||||
$curpath = array_shift($paths);
|
||||
|
||||
$r = q("select hash, id, is_dir from attach where uid = %d and filename = '%s' and is_dir != 0 " . permissions_sql($channel_id) . " limit 1",
|
||||
$r = q("select hash, id, is_dir from attach where uid = %d and filename = '%s' and is_dir != 0 " . permissions_sql($channel_id,$observer_hash) . " limit 1",
|
||||
intval($channel_id),
|
||||
dbesc($curpath)
|
||||
);
|
||||
@@ -969,12 +969,15 @@ function attach_mkdir($channel, $observer_hash, $arr = null) {
|
||||
|
||||
$sql_options = '';
|
||||
|
||||
$basepath = 'store/' . $channel['channel_address'];
|
||||
$os_basepath = 'store/' . $channel['channel_address'];
|
||||
|
||||
logger('attach_mkdir: basepath: ' . $basepath);
|
||||
logger('attach_mkdir: basepath: ' . $os_basepath);
|
||||
|
||||
if(! is_dir($basepath))
|
||||
os_mkdir($basepath,STORAGE_DEFAULT_PERMISSIONS, true);
|
||||
if(! is_dir($os_basepath))
|
||||
os_mkdir($os_basepath,STORAGE_DEFAULT_PERMISSIONS, true);
|
||||
|
||||
|
||||
$os_basepath .= '/';
|
||||
|
||||
if(! perm_is_allowed($channel_id, $observer_hash, 'write_storage')) {
|
||||
$ret['message'] = t('Permission denied.');
|
||||
@@ -1020,10 +1023,13 @@ function attach_mkdir($channel, $observer_hash, $arr = null) {
|
||||
|
||||
$lpath = '';
|
||||
$lfile = $arr['folder'];
|
||||
$dpath = '';
|
||||
|
||||
$sql_options = permissions_sql($channel['channel_id']);
|
||||
|
||||
|
||||
do {
|
||||
$r = q("select filename, hash, flags, is_dir, folder from attach where uid = %d and hash = '%s' and is_dir != 0
|
||||
$r = q("select filename, hash, flags, is_dir, folder, display_path from attach where uid = %d and hash = '%s' and is_dir = 1
|
||||
$sql_options limit 1",
|
||||
intval($channel['channel_id']),
|
||||
dbesc($lfile)
|
||||
@@ -1033,22 +1039,26 @@ function attach_mkdir($channel, $observer_hash, $arr = null) {
|
||||
$ret['message'] = t('Path not found.');
|
||||
return $ret;
|
||||
}
|
||||
|
||||
$dpath = $r[0]['filename'] . (($dpath) ? '/' . $dpath : '');
|
||||
|
||||
if($lfile)
|
||||
$lpath = $r[0]['hash'] . '/' . $lpath;
|
||||
$lpath = $r[0]['hash'] . (($lpath) ? '/' . $lpath : '');
|
||||
|
||||
$lfile = $r[0]['folder'];
|
||||
|
||||
} while ( ($r[0]['folder']) && intval($r[0]['is_dir'])) ;
|
||||
$path = $basepath . '/' . $lpath;
|
||||
|
||||
$path = $lpath;
|
||||
}
|
||||
else
|
||||
$path = $basepath . '/';
|
||||
|
||||
$path .= $arr['hash'];
|
||||
$path = '';
|
||||
|
||||
$created = datetime_convert();
|
||||
|
||||
// not yet used
|
||||
$os_path = '';
|
||||
$display_path = '';
|
||||
$os_path = ltrim($path . '/' . $arr['hash'],'/');
|
||||
$display_path = ltrim($dpath . '/' . $arr['filename'],'/');
|
||||
|
||||
|
||||
$r = q("INSERT INTO attach ( aid, uid, hash, creator, filename, filetype, filesize, revision, folder, os_storage, is_dir, content, created, edited, os_path, display_path, allow_cid, allow_gid, deny_cid, deny_gid )
|
||||
VALUES ( %d, %d, '%s', '%s', '%s', '%s', %d, %d, '%s', %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s' ) ",
|
||||
@@ -1063,7 +1073,7 @@ function attach_mkdir($channel, $observer_hash, $arr = null) {
|
||||
dbesc($arr['folder']),
|
||||
intval(1),
|
||||
intval(1),
|
||||
dbescbin($path),
|
||||
dbescbin($os_basepath . $os_path),
|
||||
dbesc($created),
|
||||
dbesc($created),
|
||||
dbesc($os_path),
|
||||
@@ -1075,7 +1085,7 @@ function attach_mkdir($channel, $observer_hash, $arr = null) {
|
||||
);
|
||||
|
||||
if($r) {
|
||||
if(os_mkdir($path, STORAGE_DEFAULT_PERMISSIONS, true)) {
|
||||
if(os_mkdir($os_basepath . $os_path, STORAGE_DEFAULT_PERMISSIONS, true)) {
|
||||
$ret['success'] = true;
|
||||
|
||||
// update the parent folder's lastmodified timestamp
|
||||
@@ -1093,7 +1103,7 @@ function attach_mkdir($channel, $observer_hash, $arr = null) {
|
||||
$ret['data'] = $z[0];
|
||||
}
|
||||
else {
|
||||
logger('attach_mkdir: ' . mkdir . ' ' . $path . ' failed.');
|
||||
logger('attach_mkdir: ' . mkdir . ' ' . $os_basepath . $os_path . ' failed.');
|
||||
$ret['message'] = t('mkdir failed.');
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user