aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_sharing/ajax/getitem.php
blob: ba01adffb9a6fa1e45fc95790db7af9e55edf1b6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
//$RUNTIME_NOAPPS = true;

require_once('../../../lib/base.php');
OC_JSON::checkAppEnabled('files_sharing');
require_once('../lib_share.php');

$userDirectory = "/".OC_User::getUser()."/files";
$source = $userDirectory.$_GET['source'];
$path = $source;
$users = array();
if ($users = OC_Share::getMySharedItem($source)) {
	for ($i = 0; $i < count($users); $i++) {
		if ($users[$i]['uid_shared_with'] == OC_Share::PUBLICLINK) {
			$users[$i]['token'] = OC_Share::getTokenFromSource($source);
		}
	}
}
$source = dirname($source);
while ($source != "" && $source != "/" && $source != "." && $source != $userDirectory) {
	if ($values = OC_Share::getMySharedItem($source)) {
		$values = array_values($values);
		$parentUsers = array();
		for ($i = 0; $i < count($values); $i++) {
			if ($values[$i]['uid_shared_with'] == OC_Share::PUBLICLINK) {
				$values[$i]['token'] = OC_Share::getTokenFromSource($source)."&path=".substr($path, strlen($source));
			}
			$parentUsers[basename($source)."-".$i] = $values[$i];
		}
		$users = array_merge($users, $parentUsers);
	}
	$source = dirname($source);
}
if (!empty($users)) {
	OC_JSON::encodedPrint($users);
}
span> * @author Lukas Smith <smith@pooteeweet.org> */ class MDB2_Driver_Function_pgsql extends MDB2_Driver_Function_Common { // {{{ executeStoredProc() /** * Execute a stored procedure and return any results * * @param string $name string that identifies the function to execute * @param mixed $params array that contains the paramaters to pass the stored proc * @param mixed $types array that contains the types of the columns in * the result set * @param mixed $result_class string which specifies which result class to use * @param mixed $result_wrap_class string which specifies which class to wrap results in * @return mixed a result handle or MDB2_OK on success, a MDB2 error on failure * @access public */ function &executeStoredProc($name, $params = null, $types = null, $result_class = true, $result_wrap_class = false) { $db =& $this->getDBInstance(); if (PEAR::isError($db)) { return $db; } $query = 'SELECT * FROM '.$name; $query .= $params ? '('.implode(', ', $params).')' : '()'; return $db->query($query, $types, $result_class, $result_wrap_class); } // }}} // {{{ unixtimestamp() /** * return string to call a function to get the unix timestamp from a iso timestamp * * @param string $expression * * @return string to call a variable with the timestamp * @access public */ function unixtimestamp($expression) { return 'EXTRACT(EPOCH FROM DATE_TRUNC(\'seconds\', CAST ((' . $expression . ') AS TIMESTAMP)))'; } // }}} // {{{ random() /** * return string to call a function to get random value inside an SQL statement * * @return return string to generate float between 0 and 1 * @access public */ function random() { return 'RANDOM()'; } // }}} } ?>