Ejemplo n.º 1
0
 /**
  *	Run the backup
  */
 public function backup($files)
 {
     $dropbox = new \Dropbox\API($this->_getOAuth());
     $fail = false;
     foreach ($files as $src => $filename) {
         $result = $dropbox->putFile($src, $filename);
         if ($result['code'] != 200) {
             $fail = true;
             break;
         }
     }
     return !$fail;
 }
Ejemplo n.º 2
0
 /**
  * Perform the action.
  *
  * @param EcrProjectZiper $ziper
  *
  * @return \EcrProjectAction
  */
 public function run(EcrProjectZiper $ziper)
 {
     $logger = $ziper->logger;
     //-- Require the Dropbox bootstrap
     require JPATH_COMPONENT . '/helpers/Dropbox/bootstrap.php';
     $protocol = false == empty($_SERVER['HTTPS']) ? 'https' : 'http';
     $callback = $protocol . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
     try {
         //XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
         $encrypter = new \Dropbox\OAuth\Storage\Encrypter('12312323423435456654457545646542');
         $storage = new \Dropbox\OAuth\Storage\Session($encrypter);
         $OAuth = new \Dropbox\OAuth\Consumer\Curl($this->dboxKey, $this->dboxSecret, $storage, $callback);
         $dropbox = new \Dropbox\API($OAuth);
         //$accountInfo = $dropbox->accountInfo();
         //$logger->log('Dropbox account info:'.print_r($accountInfo, 1));
         $files = $ziper->getCreatedFiles();
         /* @var EcrProjectZiperCreatedfile $file */
         foreach ($files as $i => $file) {
             $logger->log(sprintf('Uploading %s to Dropbox...', $file->name));
             $response = $dropbox->putFile($file->path);
             if ('200' !== $response['code']) {
                 $logger->log(print_r($response, 1));
                 $this->abort('Failed to upload the file to Dropbox', $ziper);
             }
             $response = $dropbox->shares($file->name);
             if ('200' !== $response['code']) {
                 $this->abort('Can not get the Dropbox share link', $ziper);
                 $logger->log(print_r($response['code'], 1));
             }
             $link = $response['body']->url;
             $ziper->setAlternateDownloadLink($i, $link);
             $logger->log('Copy the Link: ' . $link, '', JLog::WARNING);
         }
         $logger->log('Dropbox script executed succesfully.');
     } catch (Dropbox\Exception $e) {
         $this->abort(sprintf('Dropbox: %s', $e->getMessage()), $ziper);
     } catch (Exception $e) {
         $this->abort(sprintf('Dropbox action: %s', $e->getMessage()), $ziper);
     }
     return $this;
 }