diff options
author | Michael Gapczynski <mtgap@owncloud.com> | 2012-08-13 17:07:56 -0400 |
---|---|---|
committer | Michael Gapczynski <mtgap@owncloud.com> | 2012-08-13 17:10:58 -0400 |
commit | 98c7d40fcdebeffe3fa335c93df4c97c7fabf5d9 (patch) | |
tree | bd41bb90b7b161465eb5d6b838a61d73dda73a59 /apps/files_external | |
parent | 863d3a43b28df0bfec6aa02bde65073ca4beb926 (diff) | |
download | nextcloud-server-98c7d40fcdebeffe3fa335c93df4c97c7fabf5d9.tar.gz nextcloud-server-98c7d40fcdebeffe3fa335c93df4c97c7fabf5d9.zip |
Throw exception in Dropbox and Google Drive storage constructors if parameters are not correct
Diffstat (limited to 'apps/files_external')
-rwxr-xr-x | apps/files_external/lib/dropbox.php | 20 | ||||
-rw-r--r-- | apps/files_external/lib/google.php | 18 |
2 files changed, 27 insertions, 11 deletions
diff --git a/apps/files_external/lib/dropbox.php b/apps/files_external/lib/dropbox.php index c849db38433..a27d9d7c368 100755 --- a/apps/files_external/lib/dropbox.php +++ b/apps/files_external/lib/dropbox.php @@ -30,9 +30,13 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { private static $tempFiles = array(); public function __construct($params) { - $oauth = new Dropbox_OAuth_Curl($params['app_key'], $params['app_secret']); - $oauth->setToken($params['token'], $params['token_secret']); - $this->dropbox = new Dropbox_API($oauth, 'dropbox'); + if (isset($params['configured']) && $params['configured'] == 'true' && isset($params['app_key']) && isset($params['app_secret']) && isset($params['token']) && isset($params['token_secret'])) { + $oauth = new Dropbox_OAuth_Curl($params['app_key'], $params['app_secret']); + $oauth->setToken($params['token'], $params['token_secret']); + $this->dropbox = new Dropbox_API($oauth, 'dropbox'); + } else { + throw new Exception('Creating OC_Filestorage_Dropbox storage failed'); + } } private function getMetaData($path, $list = false) { @@ -43,6 +47,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { try { $response = $this->dropbox->getMetaData($path); } catch (Exception $exception) { + OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); return false; } if ($response && isset($response['contents'])) { @@ -63,6 +68,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { $this->metaData[$path] = $response; return $response; } catch (Exception $exception) { + OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); return false; } } @@ -74,6 +80,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { $this->dropbox->createFolder($path); return true; } catch (Exception $exception) { + OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); return false; } } @@ -141,6 +148,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { $this->dropbox->delete($path); return true; } catch (Exception $exception) { + OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); return false; } } @@ -150,6 +158,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { $this->dropbox->move($path1, $path2); return true; } catch (Exception $exception) { + OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); return false; } } @@ -159,6 +168,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { $this->dropbox->copy($path1, $path2); return true; } catch (Exception $exception) { + OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); return false; } } @@ -173,6 +183,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { file_put_contents($tmpFile, $data); return fopen($tmpFile, 'r'); } catch (Exception $exception) { + OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); return false; } case 'w': @@ -211,7 +222,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { $this->dropbox->putFile(self::$tempFiles[$tmpFile], $handle); unlink($tmpFile); } catch (Exception $exception) { - + OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); } } } @@ -230,6 +241,7 @@ class OC_Filestorage_Dropbox extends OC_Filestorage_Common { $info = $this->dropbox->getAccountInfo(); return $info['quota_info']['quota'] - $info['quota_info']['normal']; } catch (Exception $exception) { + OCP\Util::writeLog('files_external', $exception->getMessage(), OCP\Util::ERROR); return false; } } diff --git a/apps/files_external/lib/google.php b/apps/files_external/lib/google.php index 2ad85d09d5f..2b387f0c833 100644 --- a/apps/files_external/lib/google.php +++ b/apps/files_external/lib/google.php @@ -31,13 +31,17 @@ class OC_Filestorage_Google extends OC_Filestorage_Common { private static $tempFiles = array(); - public function __construct($arguments) { - $consumer_key = isset($arguments['consumer_key']) ? $arguments['consumer_key'] : 'anonymous'; - $consumer_secret = isset($arguments['consumer_secret']) ? $arguments['consumer_secret'] : 'anonymous'; - $this->consumer = new OAuthConsumer($consumer_key, $consumer_secret); - $this->oauth_token = new OAuthToken($arguments['token'], $arguments['token_secret']); - $this->sig_method = new OAuthSignatureMethod_HMAC_SHA1(); - $this->entries = array(); + public function __construct($params) { + if (isset($params['configured']) && $params['configured'] == 'true' && isset($params['token']) && isset($params['token_secret'])) { + $consumer_key = isset($params['consumer_key']) ? $params['consumer_key'] : 'anonymous'; + $consumer_secret = isset($params['consumer_secret']) ? $params['consumer_secret'] : 'anonymous'; + $this->consumer = new OAuthConsumer($consumer_key, $consumer_secret); + $this->oauth_token = new OAuthToken($params['token'], $params['token_secret']); + $this->sig_method = new OAuthSignatureMethod_HMAC_SHA1(); + $this->entries = array(); + } else { + throw new Exception('Creating OC_Filestorage_Google storage failed'); + } } private function sendRequest($uri, $httpMethod, $postData = null, $extraHeaders = null, $isDownload = false, $returnHeaders = false, $isContentXML = true, $returnHTTPCode = false) { |