. /** * dropbox class * A helper class to access dropbox resources * * @since 2.0 * @package moodlecore * @subpackage repository * @copyright 2010 Dongsheng Cai * @author Dongsheng Cai * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once(dirname(dirname(dirname(__FILE__))).'/config.php'); require_once($CFG->libdir.'/oauthlib.php'); class dropbox extends oauth_helper { private $mode = 'sandbox'; private $dropbox_api = 'http://api.dropbox.com/0'; private $dropbox_content_api = 'http://api-content.dropbox.com/0'; function __construct($args) { parent::__construct($args); } public function get_listing($path='/', $token='', $secret='') { $url = $this->dropbox_api.'/metadata/'.$this->mode.$path; $content = $this->get($url, array(), $token, $secret); $data = json_decode($content); return $data; } public function get_account_info($token, $secret) { $url = $this->dropbox_api.'/account/info'; $content = $this->get($url, array(), $token, $secret); return $content; } public function get_file($filepath, $saveas) { $url = 'http://api-content.dropbox.com/0/files/sandbox'.$filepath; $content = $this->get($url, array()); file_put_contents($saveas, $content); return array('path'=>$saveas, 'url'=>$url); } }