diff --git a/.gitignore b/.gitignore index af1f417..9673126 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ composer.lock /vendor +index.php diff --git a/api/Affiliate/Endpoints/AffiliateActionEndpoint.php b/api/Affiliate/Endpoints/AffiliateActionEndpoint.php new file mode 100644 index 0000000..83f8063 --- /dev/null +++ b/api/Affiliate/Endpoints/AffiliateActionEndpoint.php @@ -0,0 +1,135 @@ +value = $type; + return self::_createRequest($payload, 'unique', HttpVerb::POST); + } + } + + /** + * @param FidPayload $payload + * + * @return FortifiApiRequestInterface|AffiliateActionResponse + */ + public function retrieve(FidPayload $payload) + { + return self::_createRequest($payload, 'retrieve'); + } + + /** + * @param CreateAffiliateActionPayload $payload + * + * @return FortifiApiRequestInterface|CreateAffiliateActionResponse + */ + public function create(CreateAffiliateActionPayload $payload) + { + return self::_createRequest($payload, 'create'); + } + + /** + * @param UpdateAffiliateActionPayload $payload + * + * @return FortifiApiRequestInterface|BoolResponse + */ + public function update(UpdateAffiliateActionPayload $payload) + { + return self::_createRequest($payload, 'update'); + } + + /** + * @param FidPayload $payload + * + * @return FortifiApiRequestInterface|BoolResponse + */ + public function delete(FidPayload $payload) + { + return self::_createRequest($payload, 'delete'); + } + + /** + * @param SetTypeAffiliateActionPayload $payload + * + * @return FortifiApiRequestInterface|BoolResponse + */ + public function setType(SetTypeAffiliateActionPayload $payload) + { + return self::_createRequest($payload, 'set-type'); + } + + /** + * @param SetKeyAffiliateActionPayload $payload + * + * @return FortifiApiRequestInterface|BoolResponse + */ + public function setKey(SetKeyAffiliateActionPayload $payload) + { + return self::_createRequest($payload, 'set-key'); + } + + /** + * @param PostActionPayload $payload + * + * @return FortifiApiRequestInterface|PostActionResponse + */ + public function post(PostActionPayload $payload) + { + return self::_createRequest($payload, 'post'); + } + + /** + * @param ReversalPayload $payload + * + * @return FortifiApiRequestInterface|BoolResponse + */ + public function reverse(ReversalPayload $payload) + { + return self::_createRequest($payload, 'reverse'); + } +} diff --git a/api/Affiliate/Endpoints/AffiliatePixelEndpoint.php b/api/Affiliate/Endpoints/AffiliatePixelEndpoint.php new file mode 100644 index 0000000..1af9c73 --- /dev/null +++ b/api/Affiliate/Endpoints/AffiliatePixelEndpoint.php @@ -0,0 +1,130 @@ +_buildProperty( + 'items', + '\Fortifi\FortifiApi\Affiliate\Responses\Action\AffiliateActionResponse' + ); + } +} diff --git a/api/Affiliate/Responses/Action/CreateAffiliateActionResponse.php b/api/Affiliate/Responses/Action/CreateAffiliateActionResponse.php new file mode 100644 index 0000000..a537eb1 --- /dev/null +++ b/api/Affiliate/Responses/Action/CreateAffiliateActionResponse.php @@ -0,0 +1,9 @@ +pixels = PixelsResponse::make($this->pixels); + } +} diff --git a/api/Affiliate/Responses/AffiliateResponse.php b/api/Affiliate/Responses/AffiliateResponse.php new file mode 100644 index 0000000..c365e29 --- /dev/null +++ b/api/Affiliate/Responses/AffiliateResponse.php @@ -0,0 +1,66 @@ +user)) + { + $this->user = AuthUserResponse::make($this->user); + } + if(!empty($this->emailNode)) + { + $this->emailData = EmailResponse::make($this->emailData); + } + if(!empty($this->phone)) + { + $this->phone = PhoneResponse::make($this->phone); + } + } +} diff --git a/api/Affiliate/Responses/Campaign/AffiliateCampaignResponse.php b/api/Affiliate/Responses/Campaign/AffiliateCampaignResponse.php new file mode 100644 index 0000000..e891e04 --- /dev/null +++ b/api/Affiliate/Responses/Campaign/AffiliateCampaignResponse.php @@ -0,0 +1,18 @@ +_buildProperty( + 'items', + '\Fortifi\FortifiApi\Affiliate\Responses\Pixels\PixelHistoryResponse' + ); + } +} diff --git a/api/Affiliate/Responses/Pixels/PixelHistoryResponse.php b/api/Affiliate/Responses/Pixels/PixelHistoryResponse.php new file mode 100644 index 0000000..d4ba564 --- /dev/null +++ b/api/Affiliate/Responses/Pixels/PixelHistoryResponse.php @@ -0,0 +1,18 @@ +_buildProperty( + 'items', + '\Fortifi\FortifiApi\Affiliate\Responses\Pixels\PixelPolicyResponse' + ); + } +} diff --git a/api/Affiliate/Responses/Pixels/PixelPolicyResponse.php b/api/Affiliate/Responses/Pixels/PixelPolicyResponse.php new file mode 100644 index 0000000..a40403d --- /dev/null +++ b/api/Affiliate/Responses/Pixels/PixelPolicyResponse.php @@ -0,0 +1,35 @@ +method) + { + case PixelType::HTML: + return $this->content; + case PixelType::IFRAME: + return $this->_renderIframe(); + case PixelType::IMAGE: + case 'image': + return $this->_renderImage(); + case PixelType::JS: + case 'javascript': + return $this->_renderJavascript(); + default: + return null; + } + } + + protected function _renderIframe() + { + $data = '