Version Notes
- Allow to print orders
- Allow to print invoices
- Allow to print packingslips
- Allow to print credit memos
- Allow to attach order pdf in email
- Allow to attach invoice pdf in email
- Compatible with Aschroder_SMTPPro
Download this release
Release Info
Developer | Magento Core Team |
Extension | Easy_PDF_Invoice |
Version | 1.2.0.1.27 |
Comparing to | |
See all releases |
Code changes from version 1.2.0.1.26 to 1.2.0.1.27
- app/code/community/VES/PdfPro/Block/Adminhtml/Version.php +2 -5
- app/code/community/VES/PdfPro/Model/Communication/Method/Soap.php +3 -1
- app/code/community/VES/PdfPro/Model/Communication/Method/Xmlrpc.php +4 -1
- app/code/community/VES/PdfPro/Model/Observer.php +13 -2
- app/code/community/VES/PdfPro/Model/PdfPro.php +1 -1
- app/code/community/VES/PdfPro/Model/Sales/Order/Creditmemo.php +297 -0
- app/code/community/VES/PdfPro/controllers/Adminhtml/NotifyController.php +31 -0
- app/code/community/VES/PdfPro/etc/config.xml +2 -0
- app/code/community/VES/PdfPro/etc/system.xml +12 -3
- app/design/adminhtml/default/default/template/ves_pdfpro/notifications.phtml +23 -0
- media/ves_pdfpro/message.txt +1 -0
- media/ves_pdfpro/version.txt +1 -0
- package.xml +4 -4
app/code/community/VES/PdfPro/Block/Adminhtml/Version.php
CHANGED
@@ -72,11 +72,8 @@ class VES_PdfPro_Block_Adminhtml_Version extends Mage_Adminhtml_Block_Template
|
|
72 |
$date = Mage::getModel('core/date')->date('Y-m-d');
|
73 |
$info = file_get_contents($messageFile);
|
74 |
$info = json_decode(base64_decode($info),true);
|
75 |
-
if($info['
|
76 |
-
|
77 |
-
}else{
|
78 |
-
$message = $info['message'];
|
79 |
-
}
|
80 |
}
|
81 |
return $message;
|
82 |
}
|
72 |
$date = Mage::getModel('core/date')->date('Y-m-d');
|
73 |
$info = file_get_contents($messageFile);
|
74 |
$info = json_decode(base64_decode($info),true);
|
75 |
+
if($info['hide']) return false;
|
76 |
+
$message = $info['message'];
|
|
|
|
|
|
|
77 |
}
|
78 |
return $message;
|
79 |
}
|
app/code/community/VES/PdfPro/Model/Communication/Method/Soap.php
CHANGED
@@ -10,7 +10,9 @@ class VES_PdfPro_Model_Communication_Method_Soap extends VES_PdfPro_Model_Commun
|
|
10 |
$result = $client->call($session, 'pdfpro.getPdf',array($pdfPro->encode(json_encode($data),$pdfPro->getApiKey()),$pdfPro->getApiKey(),$pdfPro->getVersion(),$type,$pdfPro->getHash(),Mage::getStoreConfig('web/unsecure/base_url')));
|
11 |
$result['content'] = $pdfPro->decode($result['content'],$pdfPro->getApiKey());
|
12 |
$client->endSession($session);
|
13 |
-
|
|
|
|
|
14 |
}
|
15 |
throw new Mage_Core_Exception(Mage::helper('pdfpro')->__('Your server does not support for SOAP please install SOAP or use other communication method.'));
|
16 |
}
|
10 |
$result = $client->call($session, 'pdfpro.getPdf',array($pdfPro->encode(json_encode($data),$pdfPro->getApiKey()),$pdfPro->getApiKey(),$pdfPro->getVersion(),$type,$pdfPro->getHash(),Mage::getStoreConfig('web/unsecure/base_url')));
|
11 |
$result['content'] = $pdfPro->decode($result['content'],$pdfPro->getApiKey());
|
12 |
$client->endSession($session);
|
13 |
+
$result = new Varien_Object($result);
|
14 |
+
Mage::dispatchEvent('ves_pdfpro_pdf_prepare', array('type'=>$type, 'result'=>$result, 'communication'=>'soap'));
|
15 |
+
return $result->getData();
|
16 |
}
|
17 |
throw new Mage_Core_Exception(Mage::helper('pdfpro')->__('Your server does not support for SOAP please install SOAP or use other communication method.'));
|
18 |
}
|
app/code/community/VES/PdfPro/Model/Communication/Method/Xmlrpc.php
CHANGED
@@ -9,6 +9,9 @@ class VES_PdfPro_Model_Communication_Method_Xmlrpc extends Varien_Object
|
|
9 |
$result = $client->call('call', array($session, 'pdfpro.getPdf', array($pdfPro->encode(json_encode($data),$pdfPro->getApiKey()), $pdfPro->getApiKey(),$pdfPro->getVersion(),$type,$pdfPro->getHash(),Mage::getStoreConfig('web/unsecure/base_url'))));
|
10 |
$result['content'] = $pdfPro->decode($result['content'],$pdfPro->getApiKey());
|
11 |
$client->call('endSession', array($session));
|
12 |
-
|
|
|
|
|
|
|
13 |
}
|
14 |
}
|
9 |
$result = $client->call('call', array($session, 'pdfpro.getPdf', array($pdfPro->encode(json_encode($data),$pdfPro->getApiKey()), $pdfPro->getApiKey(),$pdfPro->getVersion(),$type,$pdfPro->getHash(),Mage::getStoreConfig('web/unsecure/base_url'))));
|
10 |
$result['content'] = $pdfPro->decode($result['content'],$pdfPro->getApiKey());
|
11 |
$client->call('endSession', array($session));
|
12 |
+
|
13 |
+
$result = new Varien_Object($result);
|
14 |
+
Mage::dispatchEvent('ves_pdfpro_pdf_prepare',array('type'=>$type, 'result'=>$result, 'communication'=>'xmlrpc'));
|
15 |
+
return $result->getData();
|
16 |
}
|
17 |
}
|
app/code/community/VES/PdfPro/Model/Observer.php
CHANGED
@@ -150,6 +150,14 @@ class VES_PdfPro_Model_Observer
|
|
150 |
protected function _writeServerMessage(){
|
151 |
$messageFile = Mage::getBaseDir('media').DS.'ves_pdfpro'.DS.'message.txt';
|
152 |
$message = Mage::helper('pdfpro')->getServerMessage();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
153 |
$date = Mage::getModel('core/date')->date('Y-m-d');
|
154 |
try{
|
155 |
$fp = fopen($messageFile, 'w');
|
@@ -188,8 +196,11 @@ class VES_PdfPro_Model_Observer
|
|
188 |
$baseGrandTotalExclTax = $baseGrandTotal - $baseTaxAmount;
|
189 |
$grandTotalExclTax = $grandTotal - $taxAmount;
|
190 |
|
191 |
-
$
|
192 |
-
$
|
|
|
|
|
|
|
193 |
}
|
194 |
|
195 |
if($type=='item'){
|
150 |
protected function _writeServerMessage(){
|
151 |
$messageFile = Mage::getBaseDir('media').DS.'ves_pdfpro'.DS.'message.txt';
|
152 |
$message = Mage::helper('pdfpro')->getServerMessage();
|
153 |
+
|
154 |
+
|
155 |
+
if(file_exists($messageFile)){
|
156 |
+
$info = file_get_contents($messageFile);
|
157 |
+
$info = json_decode(base64_decode($info),true);
|
158 |
+
if($message == $info['message']) return;
|
159 |
+
}
|
160 |
+
|
161 |
$date = Mage::getModel('core/date')->date('Y-m-d');
|
162 |
try{
|
163 |
$fp = fopen($messageFile, 'w');
|
196 |
$baseGrandTotalExclTax = $baseGrandTotal - $baseTaxAmount;
|
197 |
$grandTotalExclTax = $grandTotal - $taxAmount;
|
198 |
|
199 |
+
$order = $type=='order'?$model:$model->getOrder();
|
200 |
+
$orderCurrencyCode = $order->getOrderCurrencyCode();
|
201 |
+
$baseCurrencyCode = $order->getBaseCurrencyCode();
|
202 |
+
$source->setData('base_grand_total_excl_tax', Mage::helper('pdfpro')->currency($baseGrandTotalExclTax),$baseCurrencyCode);
|
203 |
+
$source->setData('grand_total_excl_tax',Mage::helper('pdfpro')->currency($grandTotalExclTax),$baseCurrencyCode);
|
204 |
}
|
205 |
|
206 |
if($type=='item'){
|
app/code/community/VES/PdfPro/Model/PdfPro.php
CHANGED
@@ -80,7 +80,7 @@ class PdfPro
|
|
80 |
'minor' => '2',
|
81 |
'revision' => '0',
|
82 |
'patch' => '1',
|
83 |
-
'stability' => '
|
84 |
'number' => '',
|
85 |
);
|
86 |
}
|
80 |
'minor' => '2',
|
81 |
'revision' => '0',
|
82 |
'patch' => '1',
|
83 |
+
'stability' => '27',
|
84 |
'number' => '',
|
85 |
);
|
86 |
}
|
app/code/community/VES/PdfPro/Model/Sales/Order/Creditmemo.php
ADDED
@@ -0,0 +1,297 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* VES_PdfPro_Model_Sales_Order_Creditmemo
|
4 |
+
*
|
5 |
+
* @author VnEcoms Team <support@vnecoms.com>
|
6 |
+
* @website http://www.vnecoms.com
|
7 |
+
*/
|
8 |
+
class VES_PdfPro_Model_Sales_Order_Creditmemo extends Mage_Sales_Model_Order_Creditmemo
|
9 |
+
{
|
10 |
+
/**
|
11 |
+
* Send email with creditmemo data
|
12 |
+
*
|
13 |
+
* @param boolean $notifyCustomer
|
14 |
+
* @param string $comment
|
15 |
+
* @return Mage_Sales_Model_Order_Creditmemo
|
16 |
+
*/
|
17 |
+
public function sendEmail($notifyCustomer = true, $comment = '')
|
18 |
+
{
|
19 |
+
if(!Mage::getStoreConfig('pdfpro/config/enabled')) return parent::sendEmail($notifyCustomer, $comment);
|
20 |
+
switch(Mage::getStoreConfig('pdfpro/config/creditmemo_email_attach')){
|
21 |
+
case VES_PdfPro_Model_Source_Attach::ATTACH_TYPE_NO:
|
22 |
+
return parent::sendEmail($notifyCustomer, $comment);
|
23 |
+
case VES_PdfPro_Model_Source_Attach::ATTACH_TYPE_ADMIN:
|
24 |
+
$this->sendEmailForAdmin($notifyCustomer, $comment, true);
|
25 |
+
$this->sendEmailForCustomer($notifyCustomer, $comment, false);
|
26 |
+
return $this;
|
27 |
+
case VES_PdfPro_Model_Source_Attach::ATTACH_TYPE_CUSTOMER:
|
28 |
+
$this->sendEmailForAdmin($notifyCustomer, $comment, false);
|
29 |
+
$this->sendEmailForCustomer($notifyCustomer, $comment, true);
|
30 |
+
return $this;
|
31 |
+
}
|
32 |
+
|
33 |
+
$order = $this->getOrder();
|
34 |
+
$storeId = $order->getStore()->getId();
|
35 |
+
|
36 |
+
if (!Mage::helper('sales')->canSendNewCreditmemoEmail($storeId)) {
|
37 |
+
return $this;
|
38 |
+
}
|
39 |
+
// Get the destination email addresses to send copies to
|
40 |
+
$copyTo = $this->_getEmails(self::XML_PATH_EMAIL_COPY_TO);
|
41 |
+
$copyMethod = Mage::getStoreConfig(self::XML_PATH_EMAIL_COPY_METHOD, $storeId);
|
42 |
+
// Check if at least one recepient is found
|
43 |
+
if (!$notifyCustomer && !$copyTo) {
|
44 |
+
return $this;
|
45 |
+
}
|
46 |
+
|
47 |
+
// Start store emulation process
|
48 |
+
$appEmulation = Mage::getSingleton('core/app_emulation');
|
49 |
+
$initialEnvironmentInfo = $appEmulation->startEnvironmentEmulation($storeId);
|
50 |
+
|
51 |
+
try {
|
52 |
+
// Retrieve specified view block from appropriate design package (depends on emulated store)
|
53 |
+
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment())
|
54 |
+
->setIsSecureMode(true);
|
55 |
+
$paymentBlock->getMethod()->setStore($storeId);
|
56 |
+
$paymentBlockHtml = $paymentBlock->toHtml();
|
57 |
+
} catch (Exception $exception) {
|
58 |
+
// Stop store emulation process
|
59 |
+
$appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo);
|
60 |
+
throw $exception;
|
61 |
+
}
|
62 |
+
|
63 |
+
// Stop store emulation process
|
64 |
+
$appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo);
|
65 |
+
|
66 |
+
// Retrieve corresponding email template id and customer name
|
67 |
+
if ($order->getCustomerIsGuest()) {
|
68 |
+
$templateId = Mage::getStoreConfig(self::XML_PATH_EMAIL_GUEST_TEMPLATE, $storeId);
|
69 |
+
$customerName = $order->getBillingAddress()->getName();
|
70 |
+
} else {
|
71 |
+
$templateId = Mage::getStoreConfig(self::XML_PATH_EMAIL_TEMPLATE, $storeId);
|
72 |
+
$customerName = $order->getCustomerName();
|
73 |
+
}
|
74 |
+
|
75 |
+
$mailer = Mage::getModel('pdfpro/email_template_mailer');
|
76 |
+
if ($notifyCustomer) {
|
77 |
+
$emailInfo = Mage::getModel('core/email_info');
|
78 |
+
$emailInfo->addTo($order->getCustomerEmail(), $customerName);
|
79 |
+
if ($copyTo && $copyMethod == 'bcc') {
|
80 |
+
// Add bcc to customer email
|
81 |
+
foreach ($copyTo as $email) {
|
82 |
+
$emailInfo->addBcc($email);
|
83 |
+
}
|
84 |
+
}
|
85 |
+
$mailer->addEmailInfo($emailInfo);
|
86 |
+
}
|
87 |
+
|
88 |
+
// Email copies are sent as separated emails if their copy method is 'copy' or a customer should not be notified
|
89 |
+
if ($copyTo && ($copyMethod == 'copy' || !$notifyCustomer)) {
|
90 |
+
foreach ($copyTo as $email) {
|
91 |
+
$emailInfo = Mage::getModel('core/email_info');
|
92 |
+
$emailInfo->addTo($email);
|
93 |
+
$mailer->addEmailInfo($emailInfo);
|
94 |
+
}
|
95 |
+
}
|
96 |
+
|
97 |
+
// Set all required params and send emails
|
98 |
+
$mailer->setSender(Mage::getStoreConfig(self::XML_PATH_EMAIL_IDENTITY, $storeId));
|
99 |
+
$mailer->setStoreId($storeId);
|
100 |
+
$mailer->setTemplateId($templateId);
|
101 |
+
$mailer->setTemplateParams(array(
|
102 |
+
'order' => $order,
|
103 |
+
'creditmemo' => $this,
|
104 |
+
'comment' => $comment,
|
105 |
+
'billing' => $order->getBillingAddress(),
|
106 |
+
'payment_html' => $paymentBlockHtml
|
107 |
+
)
|
108 |
+
);
|
109 |
+
|
110 |
+
/* Attach Invoice PDF in email */
|
111 |
+
$creditmemoData = Mage::getModel('pdfpro/order_creditmemo')->initCreditmemoData($this);
|
112 |
+
try{
|
113 |
+
$result = Mage::helper('pdfpro')->initPdf(array($creditmemoData),'creditmemo');
|
114 |
+
if($result['success']){
|
115 |
+
$mailer->setPdf(array('filename'=>Mage::helper('pdfpro')->getFileName('creditmemo',$this).'.pdf', 'content'=>$result['content']));
|
116 |
+
}else{
|
117 |
+
Mage::log($result['msg']);
|
118 |
+
}
|
119 |
+
}catch(Exception $e){
|
120 |
+
Mage::log($e->getMessage());
|
121 |
+
}
|
122 |
+
|
123 |
+
$mailer->send();
|
124 |
+
$this->setEmailSent(true);
|
125 |
+
$this->_getResource()->saveAttribute($this, 'email_sent');
|
126 |
+
|
127 |
+
return $this;
|
128 |
+
}
|
129 |
+
|
130 |
+
public function sendEmailForCustomer($notifyCustomer=true,$comment='', $attachPdf = true){
|
131 |
+
$order = $this->getOrder();
|
132 |
+
$storeId = $order->getStore()->getId();
|
133 |
+
|
134 |
+
if (!Mage::helper('sales')->canSendNewCreditmemoEmail($storeId)) {
|
135 |
+
return $this;
|
136 |
+
}
|
137 |
+
|
138 |
+
if (!$notifyCustomer) {
|
139 |
+
return $this;
|
140 |
+
}
|
141 |
+
|
142 |
+
// Start store emulation process
|
143 |
+
$appEmulation = Mage::getSingleton('core/app_emulation');
|
144 |
+
$initialEnvironmentInfo = $appEmulation->startEnvironmentEmulation($storeId);
|
145 |
+
|
146 |
+
try {
|
147 |
+
// Retrieve specified view block from appropriate design package (depends on emulated store)
|
148 |
+
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment())
|
149 |
+
->setIsSecureMode(true);
|
150 |
+
$paymentBlock->getMethod()->setStore($storeId);
|
151 |
+
$paymentBlockHtml = $paymentBlock->toHtml();
|
152 |
+
} catch (Exception $exception) {
|
153 |
+
// Stop store emulation process
|
154 |
+
$appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo);
|
155 |
+
throw $exception;
|
156 |
+
}
|
157 |
+
|
158 |
+
// Stop store emulation process
|
159 |
+
$appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo);
|
160 |
+
|
161 |
+
// Retrieve corresponding email template id and customer name
|
162 |
+
if ($order->getCustomerIsGuest()) {
|
163 |
+
$templateId = Mage::getStoreConfig(self::XML_PATH_EMAIL_GUEST_TEMPLATE, $storeId);
|
164 |
+
$customerName = $order->getBillingAddress()->getName();
|
165 |
+
} else {
|
166 |
+
$templateId = Mage::getStoreConfig(self::XML_PATH_EMAIL_TEMPLATE, $storeId);
|
167 |
+
$customerName = $order->getCustomerName();
|
168 |
+
}
|
169 |
+
|
170 |
+
$mailer = Mage::getModel('pdfpro/email_template_mailer');
|
171 |
+
if ($notifyCustomer) {
|
172 |
+
$emailInfo = Mage::getModel('core/email_info');
|
173 |
+
$emailInfo->addTo($order->getCustomerEmail(), $customerName);
|
174 |
+
|
175 |
+
$mailer->addEmailInfo($emailInfo);
|
176 |
+
}
|
177 |
+
|
178 |
+
// Set all required params and send emails
|
179 |
+
$mailer->setSender(Mage::getStoreConfig(self::XML_PATH_EMAIL_IDENTITY, $storeId));
|
180 |
+
$mailer->setStoreId($storeId);
|
181 |
+
$mailer->setTemplateId($templateId);
|
182 |
+
$mailer->setTemplateParams(array(
|
183 |
+
'order' => $order,
|
184 |
+
'creditmemo' => $this,
|
185 |
+
'comment' => $comment,
|
186 |
+
'billing' => $order->getBillingAddress(),
|
187 |
+
'payment_html' => $paymentBlockHtml
|
188 |
+
)
|
189 |
+
);
|
190 |
+
if($attachPdf){
|
191 |
+
/* Attach Invoice PDF in email */
|
192 |
+
$creditmemoData = Mage::getModel('pdfpro/order_creditmemo')->initCreditmemoData($this);
|
193 |
+
try{
|
194 |
+
$result = Mage::helper('pdfpro')->initPdf(array($creditmemoData),'creditmemo');
|
195 |
+
if($result['success']){
|
196 |
+
$mailer->setPdf(array('filename'=>Mage::helper('pdfpro')->getFileName('creditmemo',$this).'.pdf', 'content'=>$result['content']));
|
197 |
+
}else{
|
198 |
+
Mage::log($result['msg']);
|
199 |
+
}
|
200 |
+
}catch(Exception $e){
|
201 |
+
Mage::log($e->getMessage());
|
202 |
+
}
|
203 |
+
}
|
204 |
+
$mailer->send();
|
205 |
+
$this->setEmailSent(true);
|
206 |
+
$this->_getResource()->saveAttribute($this, 'email_sent');
|
207 |
+
return $this;
|
208 |
+
}
|
209 |
+
|
210 |
+
public function sendEmailForAdmin($notifyCustomer=true,$comment='', $attachPdf = true){
|
211 |
+
$order = $this->getOrder();
|
212 |
+
$storeId = $order->getStore()->getId();
|
213 |
+
|
214 |
+
if (!Mage::helper('sales')->canSendNewCreditmemoEmail($storeId)) {
|
215 |
+
return $this;
|
216 |
+
}
|
217 |
+
// Get the destination email addresses to send copies to
|
218 |
+
$copyTo = $this->_getEmails(self::XML_PATH_EMAIL_COPY_TO);
|
219 |
+
$copyMethod = Mage::getStoreConfig(self::XML_PATH_EMAIL_COPY_METHOD, $storeId);
|
220 |
+
// Check if at least one recepient is found
|
221 |
+
if (!$notifyCustomer && !$copyTo) {
|
222 |
+
return $this;
|
223 |
+
}
|
224 |
+
|
225 |
+
// Start store emulation process
|
226 |
+
$appEmulation = Mage::getSingleton('core/app_emulation');
|
227 |
+
$initialEnvironmentInfo = $appEmulation->startEnvironmentEmulation($storeId);
|
228 |
+
|
229 |
+
try {
|
230 |
+
// Retrieve specified view block from appropriate design package (depends on emulated store)
|
231 |
+
$paymentBlock = Mage::helper('payment')->getInfoBlock($order->getPayment())
|
232 |
+
->setIsSecureMode(true);
|
233 |
+
$paymentBlock->getMethod()->setStore($storeId);
|
234 |
+
$paymentBlockHtml = $paymentBlock->toHtml();
|
235 |
+
} catch (Exception $exception) {
|
236 |
+
// Stop store emulation process
|
237 |
+
$appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo);
|
238 |
+
throw $exception;
|
239 |
+
}
|
240 |
+
|
241 |
+
// Stop store emulation process
|
242 |
+
$appEmulation->stopEnvironmentEmulation($initialEnvironmentInfo);
|
243 |
+
|
244 |
+
// Retrieve corresponding email template id and customer name
|
245 |
+
if ($order->getCustomerIsGuest()) {
|
246 |
+
$templateId = Mage::getStoreConfig(self::XML_PATH_EMAIL_GUEST_TEMPLATE, $storeId);
|
247 |
+
$customerName = $order->getBillingAddress()->getName();
|
248 |
+
} else {
|
249 |
+
$templateId = Mage::getStoreConfig(self::XML_PATH_EMAIL_TEMPLATE, $storeId);
|
250 |
+
$customerName = $order->getCustomerName();
|
251 |
+
}
|
252 |
+
|
253 |
+
$mailer = Mage::getModel('pdfpro/email_template_mailer');
|
254 |
+
|
255 |
+
// Email copies are sent as separated emails if their copy method is 'copy' or a customer should not be notified
|
256 |
+
if ($copyTo) {
|
257 |
+
foreach ($copyTo as $email) {
|
258 |
+
$emailInfo = Mage::getModel('core/email_info');
|
259 |
+
$emailInfo->addTo($email);
|
260 |
+
$mailer->addEmailInfo($emailInfo);
|
261 |
+
}
|
262 |
+
}
|
263 |
+
|
264 |
+
// Set all required params and send emails
|
265 |
+
$mailer->setSender(Mage::getStoreConfig(self::XML_PATH_EMAIL_IDENTITY, $storeId));
|
266 |
+
$mailer->setStoreId($storeId);
|
267 |
+
$mailer->setTemplateId($templateId);
|
268 |
+
$mailer->setTemplateParams(array(
|
269 |
+
'order' => $order,
|
270 |
+
'creditmemo' => $this,
|
271 |
+
'comment' => $comment,
|
272 |
+
'billing' => $order->getBillingAddress(),
|
273 |
+
'payment_html' => $paymentBlockHtml
|
274 |
+
)
|
275 |
+
);
|
276 |
+
|
277 |
+
if($attachPdf){
|
278 |
+
/* Attach Invoice PDF in email */
|
279 |
+
$creditmemoData = Mage::getModel('pdfpro/order_creditmemo')->initCreditmemoData($this);
|
280 |
+
try{
|
281 |
+
$result = Mage::helper('pdfpro')->initPdf(array($creditmemoData),'creditmemo');
|
282 |
+
if($result['success']){
|
283 |
+
$mailer->setPdf(array('filename'=>Mage::helper('pdfpro')->getFileName('creditmemo',$this).'.pdf', 'content'=>$result['content']));
|
284 |
+
}else{
|
285 |
+
Mage::log($result['msg']);
|
286 |
+
}
|
287 |
+
}catch(Exception $e){
|
288 |
+
Mage::log($e->getMessage());
|
289 |
+
}
|
290 |
+
}
|
291 |
+
|
292 |
+
$mailer->send();
|
293 |
+
$this->setEmailSent(true);
|
294 |
+
$this->_getResource()->saveAttribute($this, 'email_sent');
|
295 |
+
return $this;
|
296 |
+
}
|
297 |
+
}
|
app/code/community/VES/PdfPro/controllers/Adminhtml/NotifyController.php
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* VES_PdfPro_Adminhtml_NotifyController
|
4 |
+
*
|
5 |
+
* @author VnEcoms Team <support@vnecoms.com>
|
6 |
+
* @website http://www.vnecoms.com
|
7 |
+
*/
|
8 |
+
|
9 |
+
class VES_PdfPro_Adminhtml_NotifyController extends Mage_Adminhtml_Controller_Action
|
10 |
+
{
|
11 |
+
public function hidemessageAction(){
|
12 |
+
|
13 |
+
$messageFile = Mage::getBaseDir('media').DS.'ves_pdfpro'.DS.'message.txt';
|
14 |
+
if(file_exists($messageFile)){
|
15 |
+
$info = file_get_contents($messageFile);
|
16 |
+
$info = json_decode(base64_decode($info),true);
|
17 |
+
$info['hide'] = true;
|
18 |
+
$date = Mage::getModel('core/date')->date('Y-m-d');
|
19 |
+
try{
|
20 |
+
$fp = fopen($messageFile, 'w');
|
21 |
+
fwrite($fp, base64_encode(json_encode($info)));
|
22 |
+
fclose($fp);
|
23 |
+
}catch(Exception $e){
|
24 |
+
|
25 |
+
}
|
26 |
+
}
|
27 |
+
|
28 |
+
$result = array('error'=>false);
|
29 |
+
$this->getResponse()->setBody(json_encode($result));
|
30 |
+
}
|
31 |
+
}
|
app/code/community/VES/PdfPro/etc/config.xml
CHANGED
@@ -165,6 +165,7 @@
|
|
165 |
<order>VES_PdfPro_Model_Sales_Order</order>
|
166 |
<order_invoice>VES_PdfPro_Model_Sales_Order_Invoice</order_invoice>
|
167 |
<order_shipment>VES_PdfPro_Model_Sales_Order_Shipment</order_shipment>
|
|
|
168 |
</rewrite>
|
169 |
</sales>
|
170 |
</models>
|
@@ -234,6 +235,7 @@
|
|
234 |
<order_email_attach>1</order_email_attach>
|
235 |
<invoice_email_attach>1</invoice_email_attach>
|
236 |
<shipment_email_attach>1</shipment_email_attach>
|
|
|
237 |
<detect_language>1</detect_language>
|
238 |
<number_format>2</number_format>
|
239 |
<communication_method>soap</communication_method>
|
165 |
<order>VES_PdfPro_Model_Sales_Order</order>
|
166 |
<order_invoice>VES_PdfPro_Model_Sales_Order_Invoice</order_invoice>
|
167 |
<order_shipment>VES_PdfPro_Model_Sales_Order_Shipment</order_shipment>
|
168 |
+
<order_creditmemo>VES_PdfPro_Model_Sales_Order_Creditmemo</order_creditmemo>
|
169 |
</rewrite>
|
170 |
</sales>
|
171 |
</models>
|
235 |
<order_email_attach>1</order_email_attach>
|
236 |
<invoice_email_attach>1</invoice_email_attach>
|
237 |
<shipment_email_attach>1</shipment_email_attach>
|
238 |
+
<creditmemo_email_attach>1</creditmemo_email_attach>
|
239 |
<detect_language>1</detect_language>
|
240 |
<number_format>2</number_format>
|
241 |
<communication_method>soap</communication_method>
|
app/code/community/VES/PdfPro/etc/system.xml
CHANGED
@@ -86,7 +86,7 @@
|
|
86 |
<comment>If yes, customer will be able to use Easy PDF</comment>
|
87 |
</allow_customer_print>
|
88 |
<order_email_attach>
|
89 |
-
<label>Attach the PDF
|
90 |
<frontend_type>select</frontend_type>
|
91 |
<source_model>pdfpro/source_attach</source_model>
|
92 |
<sort_order>30</sort_order>
|
@@ -96,7 +96,7 @@
|
|
96 |
<comment>This option will make your checkout a bit of slower for generating the PDF file</comment>
|
97 |
</order_email_attach>
|
98 |
<invoice_email_attach>
|
99 |
-
<label>Attach the PDF
|
100 |
<frontend_type>select</frontend_type>
|
101 |
<source_model>pdfpro/source_attach</source_model>
|
102 |
<sort_order>40</sort_order>
|
@@ -106,7 +106,7 @@
|
|
106 |
<comment>This option will make your checkout a bit of slower for generating the PDF file</comment>
|
107 |
</invoice_email_attach>
|
108 |
<shipment_email_attach>
|
109 |
-
<label>Attach the PDF
|
110 |
<frontend_type>select</frontend_type>
|
111 |
<source_model>pdfpro/source_attach</source_model>
|
112 |
<sort_order>45</sort_order>
|
@@ -114,6 +114,15 @@
|
|
114 |
<show_in_website>1</show_in_website>
|
115 |
<show_in_store>1</show_in_store>
|
116 |
</shipment_email_attach>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
117 |
<detect_language>
|
118 |
<label>Detect language automatically by store</label>
|
119 |
<frontend_type>select</frontend_type>
|
86 |
<comment>If yes, customer will be able to use Easy PDF</comment>
|
87 |
</allow_customer_print>
|
88 |
<order_email_attach>
|
89 |
+
<label>Attach the Order PDF file to New Order Email</label>
|
90 |
<frontend_type>select</frontend_type>
|
91 |
<source_model>pdfpro/source_attach</source_model>
|
92 |
<sort_order>30</sort_order>
|
96 |
<comment>This option will make your checkout a bit of slower for generating the PDF file</comment>
|
97 |
</order_email_attach>
|
98 |
<invoice_email_attach>
|
99 |
+
<label>Attach the Invoice PDF file to Invoice Email</label>
|
100 |
<frontend_type>select</frontend_type>
|
101 |
<source_model>pdfpro/source_attach</source_model>
|
102 |
<sort_order>40</sort_order>
|
106 |
<comment>This option will make your checkout a bit of slower for generating the PDF file</comment>
|
107 |
</invoice_email_attach>
|
108 |
<shipment_email_attach>
|
109 |
+
<label>Attach the Shipment PDF to Shipment Email</label>
|
110 |
<frontend_type>select</frontend_type>
|
111 |
<source_model>pdfpro/source_attach</source_model>
|
112 |
<sort_order>45</sort_order>
|
114 |
<show_in_website>1</show_in_website>
|
115 |
<show_in_store>1</show_in_store>
|
116 |
</shipment_email_attach>
|
117 |
+
<creditmemo_email_attach>
|
118 |
+
<label>Attach the Creditmemo PDF to Creditmemo Email</label>
|
119 |
+
<frontend_type>select</frontend_type>
|
120 |
+
<source_model>pdfpro/source_attach</source_model>
|
121 |
+
<sort_order>47</sort_order>
|
122 |
+
<show_in_default>1</show_in_default>
|
123 |
+
<show_in_website>1</show_in_website>
|
124 |
+
<show_in_store>1</show_in_store>
|
125 |
+
</creditmemo_email_attach>
|
126 |
<detect_language>
|
127 |
<label>Detect language automatically by store</label>
|
128 |
<frontend_type>select</frontend_type>
|
app/design/adminhtml/default/default/template/ves_pdfpro/notifications.phtml
CHANGED
@@ -13,6 +13,28 @@
|
|
13 |
if(s.innerHTML.trim()=='Easy PDF'){s.addClassName('easypdf-system-tab');}
|
14 |
});
|
15 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
</script>
|
17 |
<?php if($this->canDisplayNotice() || $this->canDisplayNews() || $this->canDisplayDefaultApiKeyMsg()):?>
|
18 |
<div id="pdfpro-notifications">
|
@@ -37,6 +59,7 @@
|
|
37 |
<div class="notification-global notification-global-notice">
|
38 |
<strong>Easy PDF Invoice:</strong>
|
39 |
<?php echo $message;?>
|
|
|
40 |
</div>
|
41 |
<?php endif;?>
|
42 |
<?php endif;?>
|
13 |
if(s.innerHTML.trim()=='Easy PDF'){s.addClassName('easypdf-system-tab');}
|
14 |
});
|
15 |
});
|
16 |
+
function vesPdfProHideCurrentNotificationMessage(){
|
17 |
+
new Ajax.Request('<?php echo $this->getUrl('pdfpro_cp/adminhtml_notify/hidemessage');?>', {
|
18 |
+
onSuccess: function(transport) {
|
19 |
+
try {
|
20 |
+
if (transport.responseText.isJSON()) {
|
21 |
+
var response = transport.responseText.evalJSON()
|
22 |
+
if (response.error) {
|
23 |
+
alert(response.message);
|
24 |
+
}else{
|
25 |
+
$$('.notification-global-notice').each(function(s){
|
26 |
+
s.hide();
|
27 |
+
});
|
28 |
+
}
|
29 |
+
} else {
|
30 |
+
|
31 |
+
}
|
32 |
+
} catch (e) {
|
33 |
+
|
34 |
+
}
|
35 |
+
}
|
36 |
+
});
|
37 |
+
}
|
38 |
</script>
|
39 |
<?php if($this->canDisplayNotice() || $this->canDisplayNews() || $this->canDisplayDefaultApiKeyMsg()):?>
|
40 |
<div id="pdfpro-notifications">
|
59 |
<div class="notification-global notification-global-notice">
|
60 |
<strong>Easy PDF Invoice:</strong>
|
61 |
<?php echo $message;?>
|
62 |
+
<a style="border: 1px solid #EA7601;border-radius:7px; -moz-border-radius: 7px;-webkit-border-radius: 7px;display: block; float: right;font-size:11px; font-weight: bold;line-height: 11px; padding: 1px 3px;text-decoration: none;" href="javascript: void(0);" onclick="vesPdfProHideCurrentNotificationMessage()">x</a>
|
63 |
</div>
|
64 |
<?php endif;?>
|
65 |
<?php endif;?>
|
media/ves_pdfpro/message.txt
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
eyJkYXRlIjoiMjAxMy0wNy0yMSIsIm1lc3NhZ2UiOiIgRmFzdGVyIHdpdGggbG9jYWwgUERGIHByb2Nlc3NvciAoPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtjb2xvcjogI0ZGMDAwMDtcIj5GUkVFPFwvc3Bhbj4pIDxhIHRhcmdldD1cIl9ibGFua1wiIGhyZWY9XCJodHRwOlwvXC93d3cuZWFzeXBkZmludm9pY2UuY29tXC9ibG9nXC9sb2NhbC1wZGYtcHJvY2Vzc29yXC9cIj5Nb3JlIGRldGFpbDxcL2E+LiIsImhpZGUiOnRydWV9
|
media/ves_pdfpro/version.txt
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
eyJkYXRlIjoiMjAxMy0wNy0yMSIsInZlcnNpb24iOiIxLjIuMC4xLTI2In0=
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Easy_PDF_Invoice</name>
|
4 |
-
<version>1.2.0.1.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">OSL V3.0</license>
|
7 |
<channel>community</channel>
|
@@ -16,9 +16,9 @@
|
|
16 |
- Allow to attach invoice pdf in email
|
17 |
- Compatible with Aschroder_SMTPPro</notes>
|
18 |
<authors><author><name>Easy PDF Invoice</name><user>auto-converted</user><email>easypdfinvoice@gmail.com</email></author></authors>
|
19 |
-
<date>2013-07-
|
20 |
-
<time>
|
21 |
-
<contents><target name="mageetc"><dir name="modules"><file name="VES_PdfPro.xml" hash="4b43f61fe34d6f90260b6008e52e48bd"/></dir></target><target name="magecommunity"><dir name="VES"><dir name="PdfPro"><dir name="Block"><dir name="Adminhtml"><dir name="Key"><dir name="Edit"><dir name="Tab"><file name="Form.php" hash="6ed2ab13f4e2c5c25671aacf00fe9694"/></dir><file name="Form.php" hash="46346f33119419be5ba874fa7ffd85b6"/><file name="Tabs.php" hash="cd9cf71b68f19d9af9a80e8c7898e32f"/></dir><dir name="Grid"><dir name="Renderer"><file name="Group.php" hash="892d50662567d468eb9128034de54f19"/><file name="Store.php" hash="e1f763568b9f84a58798308f83536d7b"/></dir></dir><file name="Edit.php" hash="a8798ad23b9da53d836c6947dff2e49a"/><file name="Grid.php" hash="e7987b06687d69f18000714fc38cbde4"/></dir><dir name="Sales"><dir name="Order"><dir name="Creditmemo"><file name="View.php" hash="fb2c17f888c8acb5dbe2574e635c77bf"/></dir><dir name="Invoice"><file name="View.php" hash="69fb3ac882ffc657d0879dac143d647e"/></dir><dir name="Shipment"><file name="View.php" hash="633822374d7cc1f9c167af3628069cb5"/></dir><file name="View.php" hash="3a94ef916cf0cc2cb15c02f2e9a3c885"/></dir></dir><dir name="System"><dir name="Config"><dir name="Form"><file name="Fieldset.php" hash="d5504c92beb2bbe5597db4df2695f5b7"/></dir></dir></dir><file name="Key.php" hash="26f0bacc52c667f6efe91d96e2037865"/><file name="Version.php" hash="
|
22 |
<compatible/>
|
23 |
<dependencies/>
|
24 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Easy_PDF_Invoice</name>
|
4 |
+
<version>1.2.0.1.27</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">OSL V3.0</license>
|
7 |
<channel>community</channel>
|
16 |
- Allow to attach invoice pdf in email
|
17 |
- Compatible with Aschroder_SMTPPro</notes>
|
18 |
<authors><author><name>Easy PDF Invoice</name><user>auto-converted</user><email>easypdfinvoice@gmail.com</email></author></authors>
|
19 |
+
<date>2013-07-21</date>
|
20 |
+
<time>09:22:25</time>
|
21 |
+
<contents><target name="mageetc"><dir name="modules"><file name="VES_PdfPro.xml" hash="4b43f61fe34d6f90260b6008e52e48bd"/></dir></target><target name="magecommunity"><dir name="VES"><dir name="PdfPro"><dir name="Block"><dir name="Adminhtml"><dir name="Key"><dir name="Edit"><dir name="Tab"><file name="Form.php" hash="6ed2ab13f4e2c5c25671aacf00fe9694"/></dir><file name="Form.php" hash="46346f33119419be5ba874fa7ffd85b6"/><file name="Tabs.php" hash="cd9cf71b68f19d9af9a80e8c7898e32f"/></dir><dir name="Grid"><dir name="Renderer"><file name="Group.php" hash="892d50662567d468eb9128034de54f19"/><file name="Store.php" hash="e1f763568b9f84a58798308f83536d7b"/></dir></dir><file name="Edit.php" hash="a8798ad23b9da53d836c6947dff2e49a"/><file name="Grid.php" hash="e7987b06687d69f18000714fc38cbde4"/></dir><dir name="Sales"><dir name="Order"><dir name="Creditmemo"><file name="View.php" hash="fb2c17f888c8acb5dbe2574e635c77bf"/></dir><dir name="Invoice"><file name="View.php" hash="69fb3ac882ffc657d0879dac143d647e"/></dir><dir name="Shipment"><file name="View.php" hash="633822374d7cc1f9c167af3628069cb5"/></dir><file name="View.php" hash="3a94ef916cf0cc2cb15c02f2e9a3c885"/></dir></dir><dir name="System"><dir name="Config"><dir name="Form"><file name="Fieldset.php" hash="d5504c92beb2bbe5597db4df2695f5b7"/></dir></dir></dir><file name="Key.php" hash="26f0bacc52c667f6efe91d96e2037865"/><file name="Version.php" hash="bcb615f13c91402717e1eb618ef77371"/></dir><dir name="Checkout"><dir name="Onepage"><file name="Success.php" hash="9f45ac2f4c5643f7c560f64ec6e879b9"/></dir></dir><dir name="Sales"><dir name="Order"><dir name="Creditmemo"><file name="Items.php" hash="188d1bf570876c1ee4eb10b392826969"/></dir><dir name="Info"><file name="Buttons.php" hash="092e23b4ea0532a0b1c30155bb988500"/></dir><dir name="Invoice"><file name="Items.php" hash="af0a2e0530c243f4fc36d2b1ba85a03d"/></dir><dir name="Shipment"><file name="Items.php" hash="05ba7ea0f96dd688e32ac382de3d97aa"/></dir><file name="Info.php" hash="df3add1cad16f992c016f34bc50001da"/></dir></dir></dir><dir name="Controller"><file name="Abstract.php" hash="3e12df35a1d6741c8c682f1ee5f7d490"/></dir><dir name="Helper"><file name="Data.php" hash="6952dc093b75f410bd1ba676639b935c"/><file name="Giftmessage.php" hash="fd1f964045ff32824d8adeef45d9f353"/></dir><dir name="Model"><dir name="Communication"><dir name="Method"><file name="Abstract.php" hash="92691ba24ed56500a517a323dc37c783"/><file name="Soap.php" hash="9bebec927cd317828c226af2f84e46a4"/><file name="Xmlrpc.php" hash="9ef324fc87bfb1b2ce7e21dcd061faa4"/></dir></dir><dir name="Email"><dir name="Template"><file name="Mailer.php" hash="c0ce04b3c73aeffd55f94e180e379416"/></dir><file name="Template.php" hash="9dfdc647e61d2b156d1b1d13760ed91e"/></dir><dir name="Mysql4"><dir name="Key"><file name="Collection.php" hash="2a833ffdea395c507056fed369d3efaa"/></dir><file name="Key.php" hash="ac5b19abb5f8cb75f5d4ae7226432158"/></dir><dir name="Order"><dir name="Creditmemo"><file name="Item.php" hash="1f3e1dd032ba92d819860015cc691ec3"/></dir><dir name="Invoice"><file name="Item.php" hash="24afcd126b0f70593898f014111d638f"/></dir><dir name="Shipment"><file name="Item.php" hash="a034e50d4b48abf33dbe23da8a8ac321"/></dir><file name="Creditmemo.php" hash="9491d108e73004a66545f87f13c5e668"/><file name="Invoice.php" hash="b6c7204bd0f76c04115f14452cd5ba3f"/><file name="Item.php" hash="8ec99b4d4b29ea4e8657dea60471eda4"/><file name="Shipment.php" hash="290f501ec4695ceac86f644fb32250e5"/></dir><dir name="Processors"><file name="Easypdf.php" hash="174f02576f916c281c644933a0f26820"/></dir><dir name="Sales"><dir name="Order"><dir name="Pdf"><dir name="Total"><file name="Default.php" hash="f2734244f770ef8eed2e4895daaa1b4f"/></dir></dir><file name="Creditmemo.php" hash="85f996a31f32c9327c375bf164a8d235"/><file name="Invoice.php" hash="4a61a399a80f7a9153713f5111e1e1f4"/><file name="Shipment.php" hash="8eb0e36b08068d375cce61a1215a8599"/></dir><file name="Order.php" hash="16950ae3ce187c56beb4f16d842a4a93"/></dir><dir name="Source"><dir name="Communication"><file name="Method.php" hash="c62491193fdb374fdc74e52c02609194"/></dir><file name="Attach.php" hash="9fc226589336ee965aa0d5208d2dd06e"/><file name="Key.php" hash="c9ee12407a20b4fb07bd51bd0029523c"/><file name="Processor.php" hash="6a1e053c02b8e1736f0bfd942ae71434"/></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="Easypdf.php" hash="503a34f4747cb6387ff7180e4f63b469"/></dir></dir></dir><file name="Abstract.php" hash="ac9255f2de1037adca999b56382a33a7"/><file name="Key.php" hash="8f89ec9497dd0a7ae2cf9ea71af2a910"/><file name="Observer.php" hash="57635dc88f683f760d08bd60e3f7900b"/><file name="Order.php" hash="6623bb46b0d9bfb30bc9f6293dadbc59"/><file name="PdfPro.php" hash="bc1b8171ce55f2f9270132b0e87b801e"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="KeyController.php" hash="55b3292e66dfcde2ab30212175ab0c47"/><file name="NotifyController.php" hash="90b9ecb5f8ce655bcdd6f07312a27cba"/><file name="PrintController.php" hash="2b1b02a7e50a686d639f346ed5c92e53"/></dir><file name="GuestController.php" hash="1866cb205ce5eef78babd77850647275"/><file name="PrintController.php" hash="fdd65232341ae18df6ddfc267aece14f"/></dir><dir name="etc"><file name="config.xml" hash="1569461f12affb469e9e4bc194b1cc45"/><file name="system.xml" hash="a4087a0f3f0735c32fc65cdf3ff7af96"/></dir><dir name="sql"><dir name="pdfpro_setup"><file name="mysql4-install-0.1.0.php" hash="568fdc14a81905f4e98857691f765ae8"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="ves_pdfpro.xml" hash="4fef100f3a87f396e539ff59fba0d9a6"/></dir><dir name="template"><dir name="ves_pdfpro"><file name="notifications.phtml" hash="12e97fce2e9f1f64c114ef9d4263fb57"/></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="en_US"><file name="VES_PdfPro.csv" hash="7443d2a6b55513d5287144307ac41018"/></dir><dir name="vi_VN"><file name="VES_PdfPro.csv" hash="685d513129c86897c9214d67a65f7690"/></dir><dir name="he_IL"><file name="VES_PdfPro.csv" hash="487635adff4c3a8fb47af8048e407c96"/></dir></target><target name="magemedia"><dir name="ves_pdfpro"><file name="message.txt" hash="5fc8f324533bcc4013efead8f5f6fb5f"/><file name="version.txt" hash="9f8ce2b9f602668ad6245f989d6f0c74"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="ves_pdfpro"><file name="easypdf.png" hash="8403ec067302a4bf931862ad56965459"/><file name="favicon.png" hash="55210c2ab24e77a654bec6f51922917f"/><file name="js.js" hash="5ab27f2e16b90409bf4268b9afb7488c"/><file name="styles.css" hash="e25f82a17de40e72d7cd062f9f25588b"/></dir></dir></dir></dir></target></contents>
|
22 |
<compatible/>
|
23 |
<dependencies/>
|
24 |
</package>
|