Skip to content
This repository has been archived by the owner on Dec 16, 2021. It is now read-only.

Commit

Permalink
Merge pull request #116 from constantcontact/development
Browse files Browse the repository at this point in the history
Promote to master
  • Loading branch information
WoogieNoogie committed Sep 14, 2015
2 parents 105dd19 + 40649c3 commit 2d8dc96
Showing 1 changed file with 33 additions and 7 deletions.
40 changes: 33 additions & 7 deletions src/Ctct/Services/LibraryService.php
Expand Up @@ -11,6 +11,7 @@
use GuzzleHttp\Exception\ClientException;
use GuzzleHttp\Post\PostBody;
use GuzzleHttp\Post\PostFile;
use GuzzleHttp\Stream\Stream;

class LibraryService extends BaseService
{
Expand Down Expand Up @@ -188,7 +189,7 @@ public function getLibraryFolders($accessToken, Array $params = array())
*/
public function getLibraryFolder($accessToken, $folderId)
{
$baseUrl = Config::get('endpoints.base_url') . Config::get(sprintf('endpoints.library_folder', $folderId));
$baseUrl = Config::get('endpoints.base_url') . sprintf(Config::get('endpoints.library_folder'), $folderId);

$request = parent::createBaseRequest($accessToken, 'GET', $baseUrl);

Expand All @@ -211,7 +212,7 @@ public function getLibraryFolder($accessToken, $folderId)
*/
public function deleteLibraryFolder($accessToken, $folderId)
{
$baseUrl = Config::get('endpoints.base_url') . Config::get(sprintf('endpoints.library_folder', $folderId));
$baseUrl = Config::get('endpoints.base_url') . sprintf(Config::get('endpoints.library_folder'), $folderId);

$request = parent::createBaseRequest($accessToken, 'DELETE', $baseUrl);

Expand Down Expand Up @@ -242,25 +243,25 @@ public function uploadFile($accessToken, $fileName, $fileLocation, $description,
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime = finfo_file($finfo, $fileLocation);
finfo_close($finfo);

if ($mime == "image/png") {
$fileType = "PNG";
} elseif ($mime = "image/jpeg") {
} elseif ($mime == "image/jpeg") {
$fileType = "JPG";
} elseif ($mime = "image/gif") {
} elseif ($mime == "image/gif") {
$fileType = "GIF";
} elseif ($mime ="application/pdf") {
} elseif ($mime =="application/pdf") {
$fileType = "PDF";
} else {
throw new IllegalArgumentException(sprintf(Config::get('errors.file_extension'), "PNG, JPG, JPEG, GIF, PDF was " . $mime));
}


$baseUrl = Config::get('endpoints.base_url') . Config::get('endpoints.library_files');
$request = parent::createBaseRequest($accessToken, "POST", $baseUrl);
$request->setHeader("Content-Type", "multipart/form-data");

$body = new PostBody();
$body->setField("folderId", $folderId);
$body->setField("folder_id", $folderId);
$body->setField("file_name", $fileName);
$body->setField("file_type", $fileType);
$body->setField("description", $description);
Expand All @@ -277,6 +278,31 @@ public function uploadFile($accessToken, $fileName, $fileLocation, $description,
return $response->getHeader("Id");
}

/**
* Creates a new Library folder
* @param string $accessToken - Constant Contact OAuth2 token
* @param Folder $folder
* @return \Ctct\Components\Library\Folder - Newly created folder
* @throws CtctException
*/
public function createLibraryFolder($accessToken, Folder $folder){
$baseUrl = Config::get('endpoints.base_url') . Config::get('endpoints.library_folders');

$request = parent::createBaseRequest($accessToken, "POST", $baseUrl);

$stream = Stream::factory(json_encode($folder));
$request->setBody($stream);

try {
$response = parent::getClient()->send($request);
} catch (ClientException $e) {
throw parent::convertException($e);
}

$body = $response->json();
return Folder::create($body);
}

/**
* Get the status of a File upload
* @param string $accessToken - Constant Contact OAuth2 token
Expand Down

0 comments on commit 2d8dc96

Please sign in to comment.