1: <?php
2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31:
32:
33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44:
45: class Eabi_Postoffice_Model_Orderview extends Eabi_Livehandler_Model_Adminhtml_Gridmanager {
46:
47: private $_incrementId;
48: private $_orderId;
49:
50: public function _construct() {
51: parent::_construct();
52: $this->_init('eabi_postoffice/orderview');
53:
54: $orderId = Mage::app()->getRequest()->getParam('order_id');
55:
56: $order = Mage::getModel('sales/order')->load($orderId);
57: if (is_object($order) && $order->getId() > 0) {
58: $this->_incrementId = $order->getIncrementId();
59: $this->_orderId = $order->getId();
60: $barcode = Mage::helper('eabi_postoffice')->getBarcode($order->getIncrementId());
61:
62: if (is_string($barcode) || is_array($barcode)) {
63: $url = Mage::helper('adminhtml')->getUrl('eabi_postoffice/adminhtml_postoffice/addresscardpdf', array('order_id'=> $orderId));
64:
65: $this->addActionButton('eabi_get_addresscard', Mage::helper('eabi_postoffice')->__('Print packing slip'), "setLocation('".$url."')");
66: }
67:
68: if (Mage::helper('eabi_postoffice')->isDataSent($order->getIncrementId()) === false) {
69: $confirmText = str_replace('\"', '"', addslashes(Mage::helper('eabi_postoffice')->__('Send shipping data to server') . '?'));
70: $dataSendTextSuccess = str_replace('\"', '"', addslashes(Mage::helper('eabi_postoffice')->__('Data sent to server, please verify the status from the order comments')));
71: $url = Mage::helper('adminhtml')->getUrl('eabi_postoffice/adminhtml_postoffice/autosend', array('order_id' => $this->_orderId));
72: $js = <<<EOT
73: if(confirm("{$confirmText}")){new Ajax.Request("{$url}",{method:"get",onSuccess:function(a){json=a.responseText.evalJSON(true);if(json){if(json["error"]){alert(json["error"])}else if(json["success"]){alert("{$dataSendTextSuccess}");location.reload(true)}}else{alert("Fatal error")}},onFailure:function(){alert("Fatal error")}})}; return false;
74: EOT;
75:
76: $this->addActionButton('eabi_send_data_to_server', Mage::helper('eabi_postoffice')->__('Send shipping data to server'), $js);
77: }
78:
79: }
80:
81:
82: }
83:
84: protected function _getAdditionalJs($currentJs) {
85: if ($currentJs != '' && $this->_incrementId != '') {
86: $confirmText = str_replace('\"', '"', addslashes(Mage::helper('eabi_postoffice')->__('Send shipping data to server') . '?'));
87: $dataSendTextSuccess = str_replace('\"', '"', addslashes(Mage::helper('eabi_postoffice')->__('Data sent to server, please verify the status from the order comments')));
88: $url = Mage::helper('adminhtml')->getUrl('eabi_postoffice/adminhtml_postoffice/autosend', array('order_id' => $this->_orderId));
89: return '';
90:
91:
92: return <<<EOT
93:
94: function eabi_autosend_data() {
95: var eabi_confirmR = confirm('{$confirmText}');
96: if (confirm('{$confirmText}')) {
97: new Ajax.Request('{$url}', {
98: method: 'get',
99: onSuccess: function(transport) {
100: json = transport.responseText.evalJSON(true);
101: if (json) {
102: if (json['error']) {
103: alert(json['error']);
104: } else if (json['success']) {
105: alert('{$datasendTextSuccess}');
106: location.reload(true);
107: }
108: } else {
109: alert('Fatal error');
110: }
111: },
112: onFailure: function() {
113: alert('Fatal error');
114: }
115: });
116: }
117: }
118: EOT;
119: }
120: return '';
121: }
122:
123:
124: public function service($postData) {
125: return array();
126: }
127:
128: }
129:
130:
131: