<name>remote</name>
<type>text</type>
<notnull>true</notnull>
- <length>128</length>
+ <length>512</length>
+ <comments>Url of the remove owncloud instance</comments>
</field>
<field>
- <name>token</name>
+ <name>share_token</name>
<type>text</type>
<notnull>true</notnull>
<length>64</length>
+ <comments>Public share token</comments>
</field>
<field>
<name>password</name>
<type>text</type>
<notnull>true</notnull>
<length>64</length>
+ <comments>Optional password for the public share</comments>
</field>
<field>
<name>name</name>
<type>text</type>
<notnull>true</notnull>
<length>64</length>
+ <comments>Original name on the remote server</comments>
</field>
<field>
<name>owner</name>
<type>text</type>
<notnull>true</notnull>
<length>64</length>
+ <comments>User that owns the public share on the remote server</comments>
</field>
<field>
<name>user</name>
<type>text</type>
<notnull>true</notnull>
<length>64</length>
+ <comments>Local user which added the external share</comments>
</field>
<field>
<name>mountpoint</name>
<type>text</type>
<notnull>true</notnull>
<length>512</length>
+ <comments>Full path where the share is mounted</comments>
</field>
<field>
<name>mountpoint_hash</name>
<type>text</type>
<notnull>true</notnull>
<length>32</length>
+ <comments>md5 hash of the mountpoint</comments>
</field>
<index>
<name>sh_external_user</name>
public function addShare($remote, $token, $password, $name, $owner) {
$user = $this->userSession->getUser();
if ($user) {
- $query = $this->connection->prepare('INSERT INTO *PREFIX*share_external(`remote`, `token`, `password`,
+ $query = $this->connection->prepare('INSERT INTO *PREFIX*share_external(`remote`, `share_token`, `password`,
`name`, `owner`, `user`, `mountpoint`, `mountpoint_hash`) VALUES(?, ?, ?, ?, ?, ?, ?, ?)');
$mountPoint = '/' . $user->getUID() . '/files/' . $name;
$hash = md5($mountPoint);
public function setup() {
$user = $this->userSession->getUser();
if ($user) {
- $query = $this->connection->prepare('SELECT `remote`, `token`, `password`, `mountpoint`, `owner`
+ $query = $this->connection->prepare('SELECT `remote`, `share_token`, `password`, `mountpoint`, `owner`
FROM *PREFIX*share_external WHERE `user` = ?');
$query->execute(array($user->getUID()));
while ($row = $query->fetch()) {
$row['manager'] = $this;
+ $row['token'] = $row['share_token'];
$mount = new Mount(self::STORAGE, $row['mountpoint'], $row, $this->storageLoader);
$this->mountManager->addMount($mount);
}
$this->mountManager->removeMount($source . '/');
}
- public function remoteShare($mountPoint) {
+ public function removeShare($mountPoint) {
$hash = md5($mountPoint);
$query = $this->connection->prepare('DELETE FROM *PREFIX*share_external WHERE `mountpoint_hash` = ?');
$query->execute(array($hash));