· 8 years ago · Dec 30, 2016, 01:18 PM
1protected function _create($couponData)
2{
3 $websiteId = Mage::app()->getWebsite()->getId();
4 $store = Mage::app()->getStore();
5
6 Mage::log($websiteId,null,'website.log');
7 Mage::log($store,null,'store.log');
8 try {
9 $customer = Mage::getModel("customer/customer");
10 $customer->setWebsiteId($websiteId)
11 ->setStore($store)
12 ->setFirstname($couponData['name'])
13 ->setLastname($couponData['name'])
14 ->setEmail($couponData['email'])
15 ->setPassword($couponData['pwd']);
16 $cid = $customer->save();
17 $cid = "1232";
18 echo "-------"; print_r($cid); echo "-------";
19
20 $this->_retrieveCollection($cid);
21 $this->_loadSalesRule($cid);
22
23
24 return "testt";
25
26 } catch(Exception $e) {
27 echo "---------Going To Expection---------";
28 print_r(json_encode($e->getMessage()));
29
30 }
31
32 return "testtt1";
33
34}
35/**
36 * Retrieve list of coupon codes.
37 *
38 * @return array
39 */
40protected function _retrieveCollection($cid)
41{
42 /* $ruleId = $this->getRequest()->getParam('rule_id');
43 $rule = $this->_loadSalesRule($ruleId);
44 $collection = Mage::getResourceModel('salesrule/coupon_collection');
45 $collection->addRuleToFilter($rule);
46 $this->_applyCollectionModifiers($collection);
47 $data = $collection->load()->toArray();
48 //return $data['items'];*/
49 return "----Recrive Collection Function---".$cid;
50}
51/**
52 * Load sales rule by ID.
53 *
54 * @param int $ruleId
55 * @return Mage_SalesRule_Model_Rule
56 */
57protected function _loadSalesRule($ruleId)
58{
59 /*
60 if (!$ruleId) {
61 $this->_critical(Mage::helper('salesrule')
62 ->__('Rule ID not specified.'), Mage_Api2_Model_Server::HTTP_BAD_REQUEST);
63 }
64 $rule = Mage::getModel('salesrule/rule')->load($ruleId);
65 if (!$rule->getId()) {
66 $this->_critical(Mage::helper('salesrule')
67 ->__('Rule was not found123.'), Mage_Api2_Model_Server::HTTP_NOT_FOUND);
68 }
69 return $rule;
70 */
71 return "Hello";
72}
73
74try {
75$authType = ($_SESSION['state'] == 2) ? OAUTH_AUTH_TYPE_AUTHORIZATION : OAUTH_AUTH_TYPE_URI;
76$oauthClient = new OAuth($consumerKey, $consumerSecret, OAUTH_SIG_METHOD_HMACSHA1, $authType);
77$oauthClient->enableDebug();
78if (!isset($_GET['oauth_token']) && !$_SESSION['state']) {
79 $requestToken = $oauthClient->getRequestToken($temporaryCredentialsRequestUrl);
80 $_SESSION['secret'] = $requestToken['oauth_token_secret'];
81 $_SESSION['state'] = 1;
82 header('Location: ' . $adminAuthorizationUrl . '?oauth_token=' . $requestToken['oauth_token']);
83 exit;
84} else if ($_SESSION['state'] == 1) {
85 $oauthClient->setToken($_GET['oauth_token'], $_SESSION['secret']);
86 $accessToken = $oauthClient->getAccessToken($accessTokenRequestUrl);
87 $_SESSION['state'] = 2;
88 $_SESSION['token'] = $accessToken['oauth_token'];
89 $_SESSION['secret'] = $accessToken['oauth_token_secret'];
90 header('Location: ' . $callbackUrl);
91 exit;
92} else {
93 $oauthClient->setToken($_SESSION['token'], $_SESSION['secret']);
94 $ruleId = "3";
95 $couponGenerationData = array();
96 $couponGenerationData['name'] = "ramesh";
97 $couponGenerationData['email'] = "ramesh.Restapi421@test.com";
98 $couponGenerationData['pwd'] = "test123";
99
100 /* Send Throught Post*/
101 $resourceUrl = $apiUrl."/coupondemo/{$ruleId}";
102 //$resourceUrl = "$apiUrl/coupondemo/rules/{$ruleId}/codes";
103 $oauthClient->fetch($resourceUrl, json_encode($couponGenerationData), OAUTH_HTTP_METHOD_POST, array(
104 'Accept' => 'application/json',
105 'Content-Type' => 'application/json',
106 ));
107 // Retrieve list of created coupons via GET
108 $collectionFilters = array('limit' => $couponGenerationData['qty'], 'order' => 'coupon_id', 'dir' => 'dsc');
109 $oauthClient->fetch($resourceUrl, $collectionFilters, OAUTH_HTTP_METHOD_GET, array(
110 'Accept' => 'application/json',
111 'Content-Type' => 'application/json',
112 ));
113 $coupons = json_decode($oauthClient->getLastResponse(), true);
114 // Display the newly generated codes to demonstrate that the Coupon AutoGen API works
115 // In reality, you might put these codes in emails to customers, store them in a database, etc.
116 echo "New coupon codes:<br/>";
117 foreach ($coupons as $coupon) {
118 echo " --> " . $coupon['code'] . "<br/>";
119 }
120}} catch (OAuthException $e) {
121print_r($e->getMessage());
122echo "<br/>";
123print_r($e->lastResponse);