ext4mage_notify4errors - Version 1.0.0

Version Notes

First version

Download this release

Release Info

Developer ext4mage
Extension ext4mage_notify4errors
Version 1.0.0
Comparing to
See all releases


Version 1.0.0

Files changed (29) hide show
  1. app/code/community/Ext4mage/Notify4errors/Block/Adminhtml/Errorlog.php +31 -0
  2. app/code/community/Ext4mage/Notify4errors/Block/Adminhtml/Errorlog/Edit.php +27 -0
  3. app/code/community/Ext4mage/Notify4errors/Block/Adminhtml/Errorlog/Edit/Form.php +223 -0
  4. app/code/community/Ext4mage/Notify4errors/Block/Adminhtml/Errorlog/Grid.php +139 -0
  5. app/code/community/Ext4mage/Notify4errors/Helper/Data.php +204 -0
  6. app/code/community/Ext4mage/Notify4errors/Model/Errorlog.php +85 -0
  7. app/code/community/Ext4mage/Notify4errors/Model/Mysql4/Errorlog.php +37 -0
  8. app/code/community/Ext4mage/Notify4errors/Model/Mysql4/Errorlog/Collection.php +28 -0
  9. app/code/community/Ext4mage/Notify4errors/Model/Notify4errors.php +67 -0
  10. app/code/community/Ext4mage/Notify4errors/Model/Source/Frequencyemail.php +36 -0
  11. app/code/community/Ext4mage/Notify4errors/Model/Source/Messagelevel.php +32 -0
  12. app/code/community/Ext4mage/Notify4errors/Model/core/Message.php +53 -0
  13. app/code/community/Ext4mage/Notify4errors/controllers/Adminhtml/ErrorlogController.php +98 -0
  14. app/code/community/Ext4mage/Notify4errors/controllers/IndexController.php +101 -0
  15. app/code/community/Ext4mage/Notify4errors/controllers/Notify4errorsController.php +37 -0
  16. app/code/community/Ext4mage/Notify4errors/data/notify4errors_setup/data-install-1.0.0.0.php +2 -0
  17. app/code/community/Ext4mage/Notify4errors/etc/adminhtml.xml +53 -0
  18. app/code/community/Ext4mage/Notify4errors/etc/config.xml +137 -0
  19. app/code/community/Ext4mage/Notify4errors/etc/system.xml +123 -0
  20. app/code/community/Ext4mage/Notify4errors/sql/notify4errors_setup/install-1.0.0.0.php +54 -0
  21. app/code/community/Ext4mage/Notify4errors/sql/notify4errors_setup/mysql4-install-1.0.0.0.php +48 -0
  22. app/code/community/Ext4mage/Shared/Helper/Data.php +15 -0
  23. app/code/community/Ext4mage/Shared/etc/adminhtml.xml +51 -0
  24. app/code/community/Ext4mage/Shared/etc/config.xml +34 -0
  25. app/code/community/Ext4mage/Shared/etc/system.xml +23 -0
  26. app/design/adminhtml/default/default/layout/notify4errors.xml +8 -0
  27. app/etc/modules/Ext4mage_Notify4errors.xml +26 -0
  28. app/etc/modules/Ext4mage_Shared.xml +26 -0
  29. package.xml +22 -0
app/code/community/Ext4mage/Notify4errors/Block/Adminhtml/Errorlog.php ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ class Ext4mage_Notify4errors_Block_Adminhtml_Errorlog extends Mage_Adminhtml_Block_Widget_Grid_Container
22
+ {
23
+ public function __construct()
24
+ {
25
+ $this->_controller = 'adminhtml_errorlog';
26
+ $this->_blockGroup = 'notify4errors';
27
+ $this->_headerText = Mage::helper('notify4errors')->__('Notify4errors Errors log');
28
+ parent::__construct();
29
+ $this->_removeButton('add');
30
+ }
31
+ }
app/code/community/Ext4mage/Notify4errors/Block/Adminhtml/Errorlog/Edit.php ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Ext4mage_Notify4errors_Block_Adminhtml_Errorlog_Edit extends Mage_Adminhtml_Block_Widget_Form_Container
4
+ {
5
+ public function __construct()
6
+ {
7
+ parent::__construct();
8
+
9
+ $helpLinkUrl = "http://ext4mage.com/gethelp/notify4errors/errorlog/view.html";
10
+
11
+ $this->_objectId = 'id';
12
+ $this->_blockGroup = 'notify4errors';
13
+ $this->_controller = 'adminhtml_errorlog';
14
+
15
+ $this->_formScripts[] = "
16
+ $('page-help-link').href = '".$helpLinkUrl."';
17
+ ";
18
+
19
+ $this->_removeButton('save');
20
+ $this->_removeButton('reset');
21
+ }
22
+
23
+ public function getHeaderText()
24
+ {
25
+ return Mage::helper('notify4errors')->__("View errorlog #%s", $this->htmlEscape(Mage::registry('notify4errors_data')->getId()));
26
+ }
27
+ }
app/code/community/Ext4mage/Notify4errors/Block/Adminhtml/Errorlog/Edit/Form.php ADDED
@@ -0,0 +1,223 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+
22
+ class Ext4mage_Notify4errors_Block_Adminhtml_Errorlog_Edit_Form extends Mage_Adminhtml_Block_Widget_Form
23
+ {
24
+ protected function _prepareForm()
25
+ {
26
+ $errorlog = Mage::registry('notify4errors_data');
27
+
28
+ $form = new Varien_Data_Form(array(
29
+ 'id' => 'edit_form',
30
+ 'action' => $this->getUrl('*/*/save', array('id' => $this->getRequest()->getParam('id'))),
31
+ 'method' => 'post'
32
+ ));
33
+
34
+ if(strlen($errorlog['mess_text'])>0){
35
+ $fieldsetMes = $form->addFieldset('notify4errors_mess', array('legend' => Mage::helper('notify4errors')->__('Notify4errors Message'), 'class' => 'fieldset-wide'));
36
+
37
+ $fieldsetMes->addField('mess_text', 'note', array(
38
+ 'label' => Mage::helper('notify4errors')->__('Message text'),
39
+ 'text' => $errorlog['mess_text'],
40
+ ));
41
+
42
+ $fieldsetMes->addField('mess_type', 'note', array(
43
+ 'label' => Mage::helper('notify4errors')->__('Message type'),
44
+ 'text' => $errorlog['mess_type'],
45
+ ));
46
+
47
+ $fieldsetMes->addField('mess_class', 'note', array(
48
+ 'label' => Mage::helper('notify4errors')->__('Message class'),
49
+ 'text' => $errorlog['mess_class'],
50
+ ));
51
+
52
+ $fieldsetMes->addField('mess_method', 'note', array(
53
+ 'label' => Mage::helper('notify4errors')->__('Message method'),
54
+ 'text' => $errorlog['mess_method'],
55
+ ));
56
+ }
57
+
58
+
59
+ $fieldset = $form->addFieldset('notify4errors_details', array('legend' => Mage::helper('notify4errors')->__('Notify4errors Details'), 'class' => 'fieldset-wide'));
60
+
61
+ $fieldset->addField('errorlog_id', 'note', array(
62
+ 'label' => Mage::helper('notify4errors')->__('ID'),
63
+ 'text' => $errorlog['errorlog_id'],
64
+ ));
65
+
66
+ $fieldset->addField('controller_module', 'note', array(
67
+ 'label' => Mage::helper('notify4errors')->__('Controller Module'),
68
+ 'text' => $errorlog['controller_module'],
69
+ ));
70
+
71
+ $fieldset->addField('controller_name', 'note', array(
72
+ 'label' => Mage::helper('notify4errors')->__('Controller Name'),
73
+ 'text' => $errorlog['controller_name'],
74
+ ));
75
+
76
+ $fieldset->addField('action_name', 'note', array(
77
+ 'label' => Mage::helper('notify4errors')->__('Action Name'),
78
+ 'text' => $errorlog['action_name'],
79
+ ));
80
+
81
+ $fieldset->addField('layout', 'note', array(
82
+ 'label' => Mage::helper('notify4errors')->__('Layout'),
83
+ 'text' => $errorlog['layout'],
84
+ ));
85
+
86
+ $fieldset->addField('before_forward_info', 'note', array(
87
+ 'label' => Mage::helper('notify4errors')->__('Before Forward Info'),
88
+ 'text' => print_r($errorlog['before_forward_info'],1),
89
+ ));
90
+
91
+ $fieldset->addField('module_name', 'note', array(
92
+ 'label' => Mage::helper('notify4errors')->__('Module Name'),
93
+ 'text' => $errorlog['module_name'],
94
+ ));
95
+
96
+ $fieldset->addField('direct_front_names', 'note', array(
97
+ 'label' => Mage::helper('notify4errors')->__('Direct Front Names'),
98
+ 'text' => print_r($errorlog['direct_front_names'],1),
99
+ ));
100
+
101
+ $fieldset->addField('original_path_info', 'note', array(
102
+ 'label' => Mage::helper('notify4errors')->__('Original Path Info'),
103
+ 'text' => $errorlog['original_path_info'],
104
+ ));
105
+
106
+ $fieldset->addField('route_name', 'note', array(
107
+ 'label' => Mage::helper('notify4errors')->__('Route Name'),
108
+ 'text' => $errorlog['route_name'],
109
+ ));
110
+
111
+ $fieldset->addField('store_code_from_path', 'note', array(
112
+ 'label' => Mage::helper('notify4errors')->__('Store code from Path'),
113
+ 'text' => $errorlog['store_code_from_path'],
114
+ ));
115
+
116
+ $fieldset->addField('is_ajax', 'note', array(
117
+ 'label' => Mage::helper('notify4errors')->__('is Ajax'),
118
+ 'text' => $errorlog['is_ajax']==0?"No":"Yes",
119
+ ));
120
+
121
+ // $fieldset->addField('is_javascript', 'note', array(
122
+ // 'label' => Mage::helper('notify4errors')->__('is Javascript'),
123
+ // 'text' => $errorlog['is_javascript']==0?"No":"Yes",
124
+ // ));
125
+
126
+ // $fieldset->addField('is_sent', 'note', array(
127
+ // 'label' => Mage::helper('notify4errors')->__('Has been sent'),
128
+ // 'text' => $errorlog['is_sent']==0?"No":"Yes",
129
+ // ));
130
+
131
+ $fieldset->addField('creation_time', 'note', array(
132
+ 'label' => Mage::helper('notify4errors')->__('creation_time'),
133
+ 'text' => $errorlog['creation_time'],
134
+ ));
135
+
136
+
137
+ $fieldsetReq = $form->addFieldset('notify4errors_rew', array('legend' => Mage::helper('notify4errors')->__('Notify4errors Request information'), 'class' => 'fieldset-wide'));
138
+
139
+ $fieldsetReq->addField('original_request', 'note', array(
140
+ 'label' => Mage::helper('notify4errors')->__('Original Request'),
141
+ 'text' => $errorlog['original_request'],
142
+ ));
143
+
144
+ $fieldsetReq->addField('requested_action_name', 'note', array(
145
+ 'label' => Mage::helper('notify4errors')->__('Requested Action Name'),
146
+ 'text' => $errorlog['requested_action_name'],
147
+ ));
148
+
149
+ $fieldsetReq->addField('requested_controller_name', 'note', array(
150
+ 'label' => Mage::helper('notify4errors')->__('Requested Controller Name'),
151
+ 'text' => $errorlog['requested_controller_name'],
152
+ ));
153
+
154
+ $fieldsetReq->addField('requested_route_name', 'note', array(
155
+ 'label' => Mage::helper('notify4errors')->__('Requested Route Name'),
156
+ 'text' => $errorlog['requested_route_name'],
157
+ ));
158
+
159
+ $fieldsetReq->addField('request_string', 'note', array(
160
+ 'label' => Mage::helper('notify4errors')->__('Request String'),
161
+ 'text' => $errorlog['request_string'],
162
+ ));
163
+
164
+ $fieldsetReq->addField('param', 'note', array(
165
+ 'label' => Mage::helper('notify4errors')->__('Request parameters sent'),
166
+ 'text' => $errorlog['param'],
167
+ ));
168
+
169
+ $fieldsetUser = $form->addFieldset('notify4errors_user', array('legend' => Mage::helper('notify4errors')->__('Notify4errors User information'), 'class' => 'fieldset-wide'));
170
+
171
+ $fieldsetUser->addField('remote_addr_headers', 'note', array(
172
+ 'label' => Mage::helper('notify4errors')->__('Remote Addr Headers'),
173
+ 'text' => print_r($errorlog['remote_addr_headers'],1),
174
+ ));
175
+
176
+ $fieldsetUser->addField('http_user_agent', 'note', array(
177
+ 'label' => Mage::helper('notify4errors')->__('Http User Agent'),
178
+ 'text' => $errorlog['http_user_agent'],
179
+ ));
180
+
181
+ $fieldsetUser->addField('http_accept_language', 'note', array(
182
+ 'label' => Mage::helper('notify4errors')->__('Http Accept Language'),
183
+ 'text' => $errorlog['http_accept_language'],
184
+ ));
185
+
186
+ $fieldsetUser->addField('http_accept_charset', 'note', array(
187
+ 'label' => Mage::helper('notify4errors')->__('Http Accept Charset'),
188
+ 'text' => $errorlog['http_accept_charset'],
189
+ ));
190
+
191
+ $fieldsetUser->addField('http_referer', 'note', array(
192
+ 'label' => Mage::helper('notify4errors')->__('Http Referer'),
193
+ 'text' => $errorlog['http_referer'],
194
+ ));
195
+
196
+ $fieldsetUser->addField('http_host', 'note', array(
197
+ 'label' => Mage::helper('notify4errors')->__('Http Host'),
198
+ 'text' => $errorlog['http_host'],
199
+ ));
200
+
201
+ $fieldsetUser->addField('request_uri', 'note', array(
202
+ 'label' => Mage::helper('notify4errors')->__('Request Uri'),
203
+ 'text' => $errorlog['request_uri'],
204
+ ));
205
+
206
+
207
+ if(strlen($errorlog['stacktrace'])>0){
208
+ $fieldsetStack = $form->addFieldset('notify4errors_stack', array('legend' => Mage::helper('notify4errors')->__('Notify4errors Stack'), 'class' => 'fieldset-wide'));
209
+
210
+ $fieldsetStack->addField('stacktrace', 'note', array(
211
+ 'label' => Mage::helper('notify4errors')->__('Stacktrace'),
212
+ 'text' => $errorlog['stacktrace'],
213
+ ));
214
+ }
215
+
216
+
217
+
218
+ $form->setUseContainer(true);
219
+
220
+ $this->setForm($form);
221
+ return parent::_prepareForm();
222
+ }
223
+ }
app/code/community/Ext4mage/Notify4errors/Block/Adminhtml/Errorlog/Grid.php ADDED
@@ -0,0 +1,139 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ class Ext4mage_Notify4errors_Block_Adminhtml_Errorlog_Grid extends Mage_Adminhtml_Block_Widget_Grid
22
+ {
23
+ public function __construct()
24
+ {
25
+ parent::__construct();
26
+ $this->setId('errorlogGrid');
27
+ $this->setDefaultSort('errorlog_id');
28
+ $this->setDefaultDir('ASC');
29
+ $this->setSaveParametersInSession(true);
30
+ }
31
+
32
+ protected function _prepareCollection()
33
+ {
34
+ $collection = Mage::getModel('notify4errors/errorlog')->getCollection();
35
+ $this->setCollection($collection);
36
+ return parent::_prepareCollection();
37
+ }
38
+
39
+ protected function _prepareColumns()
40
+ {
41
+ $this->addColumn('errorlog_id', array(
42
+ 'header' => Mage::helper('notify4errors')->__('ID'),
43
+ 'align' =>'right',
44
+ 'width' => '50px',
45
+ 'index' => 'errorlog_id',
46
+ ));
47
+
48
+ $this->addColumn('controller_module', array(
49
+ 'header' => Mage::helper('notify4errors')->__('Controller Module'),
50
+ 'align' =>'left',
51
+ 'index' => 'controller_module',
52
+ ));
53
+
54
+ $this->addColumn('controller_name', array(
55
+ 'header' => Mage::helper('notify4errors')->__('Controller Name'),
56
+ 'align' =>'left',
57
+ 'index' => 'controller_name',
58
+ ));
59
+
60
+ $this->addColumn('action_name', array(
61
+ 'header' => Mage::helper('notify4errors')->__('Action Name'),
62
+ 'align' =>'left',
63
+ 'index' => 'action_name',
64
+ ));
65
+
66
+ $this->addColumn('mess_text', array(
67
+ 'header' => Mage::helper('notify4errors')->__('Messages text'),
68
+ 'align' =>'left',
69
+ 'index' => 'mess_text',
70
+ ));
71
+
72
+ $this->addColumn('is_ajax', array(
73
+ 'header' => Mage::helper('notify4errors')->__('Is ajax'),
74
+ 'align' => 'left',
75
+ 'width' => '60px',
76
+ 'index' => 'is_ajax',
77
+ 'type' => 'options',
78
+ 'options' => array(
79
+ 1 => 'Yes',
80
+ 0 => 'No',
81
+ ),
82
+ ));
83
+
84
+ // $this->addColumn('is_javascript', array(
85
+ // 'header' => Mage::helper('notify4errors')->__('Is javascript'),
86
+ // 'align' => 'left',
87
+ // 'width' => '60px',
88
+ // 'index' => 'is_javascript',
89
+ // 'type' => 'options',
90
+ // 'options' => array(
91
+ // 1 => 'Yes',
92
+ // 0 => 'No',
93
+ // ),
94
+ // ));
95
+
96
+ // $this->addColumn('is_sent', array(
97
+ // 'header' => Mage::helper('notify4errors')->__('Is sent'),
98
+ // 'align' => 'left',
99
+ // 'width' => '60px',
100
+ // 'index' => 'is_sent',
101
+ // 'type' => 'options',
102
+ // 'options' => array(
103
+ // 1 => 'Yes',
104
+ // 0 => 'No',
105
+ // ),
106
+ // ));
107
+
108
+ $this->addColumn('creation_time', array(
109
+ 'header' => Mage::helper('notify4errors')->__('Created at'),
110
+ 'align' => 'left',
111
+ 'width' => '160px',
112
+ 'type' => 'datetime',
113
+ 'default' => '--',
114
+ 'index' => 'creation_time',
115
+ ));
116
+
117
+
118
+ return parent::_prepareColumns();
119
+ }
120
+
121
+ protected function _prepareMassaction()
122
+ {
123
+ $this->setMassactionIdField('errorlog_id');
124
+ $this->getMassactionBlock()->setFormFieldName('errorlog');
125
+
126
+ $this->getMassactionBlock()->addItem('delete', array(
127
+ 'label' => Mage::helper('notify4errors')->__('Delete'),
128
+ 'url' => $this->getUrl('*/*/massDelete'),
129
+ 'confirm' => Mage::helper('notify4errors')->__('Are you sure?')
130
+ ));
131
+
132
+ return $this;
133
+ }
134
+
135
+ public function getRowUrl($row)
136
+ {
137
+ return $this->getUrl('*/*/edit', array('id' => $row->getId()));
138
+ }
139
+ }
app/code/community/Ext4mage/Notify4errors/Helper/Data.php ADDED
@@ -0,0 +1,204 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ class Ext4mage_Notify4errors_Helper_Data extends Mage_Core_Helper_Abstract
22
+ {
23
+
24
+ public function getValueOptions() {
25
+ $valueOptions = array(
26
+ 'order_data_entity_id' => Mage::helper('notify4errors')->__('order entity id'),
27
+ 'order_data_state' => Mage::helper('notify4errors')->__('order state'),
28
+ 'order_data_status' => Mage::helper('notify4errors')->__('order status'),
29
+ 'order_data_coupon_code' => Mage::helper('notify4errors')->__('order coupon code'),
30
+ 'order_data_shipping_description' => Mage::helper('notify4errors')->__('order shipping description'),
31
+ 'order_data_is_virtual' => Mage::helper('notify4errors')->__('order is virtual'),
32
+ 'order_data_store_id' => Mage::helper('notify4errors')->__('order store id'),
33
+ 'order_data_customer_id' => Mage::helper('notify4errors')->__('order customer id'),
34
+ 'order_data_discount_amount' => Mage::helper('notify4errors')->__('order discount amount'),
35
+ 'order_data_discount_canceled' => Mage::helper('notify4errors')->__('order discount canceled'),
36
+ 'order_data_discount_invoiced' => Mage::helper('notify4errors')->__('order discount invoiced'),
37
+ 'order_data_discount_refunded' => Mage::helper('notify4errors')->__('order discount refunded'),
38
+ 'order_data_grand_total' => Mage::helper('notify4errors')->__('order grand total'),
39
+ 'order_data_shipping_amount' => Mage::helper('notify4errors')->__('order shipping amount'),
40
+ 'order_data_shipping_canceled' => Mage::helper('notify4errors')->__('order shipping canceled'),
41
+ 'order_data_shipping_invoiced' => Mage::helper('notify4errors')->__('order shipping invoiced'),
42
+ 'order_data_shipping_refunded' => Mage::helper('notify4errors')->__('order shipping refunded'),
43
+ 'order_data_shipping_tax_amount' => Mage::helper('notify4errors')->__('order shipping tax amount'),
44
+ 'order_data_shipping_tax_refunded' => Mage::helper('notify4errors')->__('order shipping tax refunded'),
45
+ 'order_data_subtotal' => Mage::helper('notify4errors')->__('order subtotal'),
46
+ 'order_data_subtotal_canceled' => Mage::helper('notify4errors')->__('order subtotal canceled'),
47
+ 'order_data_subtotal_invoiced' => Mage::helper('notify4errors')->__('order subtotal invoiced'),
48
+ 'order_data_subtotal_refunded' => Mage::helper('notify4errors')->__('order subtotal refunded'),
49
+ 'order_data_tax_amount' => Mage::helper('notify4errors')->__('order tax amount'),
50
+ 'order_data_tax_canceled' => Mage::helper('notify4errors')->__('order tax canceled'),
51
+ 'order_data_tax_invoiced' => Mage::helper('notify4errors')->__('order tax invoiced'),
52
+ 'order_data_tax_refunded' => Mage::helper('notify4errors')->__('order tax refunded'),
53
+ 'order_data_total_canceled' => Mage::helper('notify4errors')->__('order total canceled'),
54
+ 'order_data_total_invoiced' => Mage::helper('notify4errors')->__('order total invoiced'),
55
+ 'order_data_total_offline_refunded' => Mage::helper('notify4errors')->__('order total offline refunded'),
56
+ 'order_data_total_online_refunded' => Mage::helper('notify4errors')->__('order total online refunded'),
57
+ 'order_data_total_paid' => Mage::helper('notify4errors')->__('order total paid'),
58
+ 'order_data_total_qty_ordered' => Mage::helper('notify4errors')->__('order total qty ordered'),
59
+ 'order_data_total_refunded' => Mage::helper('notify4errors')->__('order total refunded'),
60
+ 'order_data_customer_is_guest' => Mage::helper('notify4errors')->__('order customer is guest'),
61
+ 'order_data_shipping_discount_amount' => Mage::helper('notify4errors')->__('order shipping discount amount'),
62
+ 'order_data_subtotal_incl_tax' => Mage::helper('notify4errors')->__('order subtotal incl tax'),
63
+ 'order_data_total_due' => Mage::helper('notify4errors')->__('order total due'),
64
+ 'order_data_weight' => Mage::helper('notify4errors')->__('order weight'),
65
+ 'order_data_increment_id' => Mage::helper('notify4errors')->__('order increment id'),
66
+ 'order_data_base_currency_code' => Mage::helper('notify4errors')->__('order base currency code'),
67
+ 'order_data_customer_email' => Mage::helper('notify4errors')->__('order customer email'),
68
+ 'order_data_customer_firstname' => Mage::helper('notify4errors')->__('order customer firstname'),
69
+ 'order_data_customer_lastname' => Mage::helper('notify4errors')->__('order customer lastname'),
70
+ 'order_data_customer_middlename' => Mage::helper('notify4errors')->__('order customer middlename'),
71
+ 'order_data_customer_prefix' => Mage::helper('notify4errors')->__('order customer prefix'),
72
+ 'order_data_customer_suffix' => Mage::helper('notify4errors')->__('order customer suffix'),
73
+ 'order_data_customer_taxvat' => Mage::helper('notify4errors')->__('order customer taxvat'),
74
+ 'order_data_discount_description' => Mage::helper('notify4errors')->__('order discount description'),
75
+ 'order_data_ext_customer_id' => Mage::helper('notify4errors')->__('order ext customer id'),
76
+ 'order_data_ext_order_id' => Mage::helper('notify4errors')->__('order ext order id'),
77
+ 'order_data_order_currency_code' => Mage::helper('notify4errors')->__('order order currency code'),
78
+ 'order_data_shipping_method' => Mage::helper('notify4errors')->__('order shipping method'),
79
+ 'order_data_created_at' => Mage::helper('notify4errors')->__('order created at'),
80
+ 'order_data_total_item_count' => Mage::helper('notify4errors')->__('order total item count'),
81
+ 'order_data_shipping_incl_tax' => Mage::helper('notify4errors')->__('order shipping incl tax'),
82
+ 'order_shipping_description' => Mage::helper('notify4errors')->__('order shipping description'),
83
+ 'order_payment_block' => Mage::helper('notify4errors')->__('order payment block'),
84
+ 'order_store_url' => Mage::helper('notify4errors')->__('order store url'),
85
+ 'order_store_base_url' => Mage::helper('notify4errors')->__('order store base url'),
86
+ 'order_num_invoices' => Mage::helper('notify4errors')->__('order num invoices'),
87
+ 'order_num_shipments' => Mage::helper('notify4errors')->__('order num shipments'),
88
+ 'order_num_creditmemos' => Mage::helper('notify4errors')->__('order num creditmemos'),
89
+ 'order_billing_data_fax' => Mage::helper('notify4errors')->__('order billing fax'),
90
+ 'order_billing_data_region' => Mage::helper('notify4errors')->__('order billing region'),
91
+ 'order_billing_data_postcode' => Mage::helper('notify4errors')->__('order billing postcode'),
92
+ 'order_billing_data_lastname' => Mage::helper('notify4errors')->__('order billing lastname'),
93
+ 'order_billing_data_street' => Mage::helper('notify4errors')->__('order billing street'),
94
+ 'order_billing_data_city' => Mage::helper('notify4errors')->__('order billing city'),
95
+ 'order_billing_data_email' => Mage::helper('notify4errors')->__('order billing email'),
96
+ 'order_billing_data_telephone' => Mage::helper('notify4errors')->__('order billing telephone'),
97
+ 'order_billing_data_country_id' => Mage::helper('notify4errors')->__('order billing country id'),
98
+ 'order_billing_data_firstname' => Mage::helper('notify4errors')->__('order billing firstname'),
99
+ 'order_billing_data_address_type' => Mage::helper('notify4errors')->__('order billing address type'),
100
+ 'order_billing_data_prefix' => Mage::helper('notify4errors')->__('order billing prefix'),
101
+ 'order_billing_data_middlename' => Mage::helper('notify4errors')->__('order billing middlename'),
102
+ 'order_billing_data_suffix' => Mage::helper('notify4errors')->__('order billing suffix'),
103
+ 'order_billing_data_company' => Mage::helper('notify4errors')->__('order billing company'),
104
+ 'order_billing_country_name' => Mage::helper('notify4errors')->__('order billing country name'),
105
+ 'order_shipping_data_fax' => Mage::helper('notify4errors')->__('order shipping fax'),
106
+ 'order_shipping_data_region' => Mage::helper('notify4errors')->__('order shipping region'),
107
+ 'order_shipping_data_postcode' => Mage::helper('notify4errors')->__('order shipping postcode'),
108
+ 'order_shipping_data_lastname' => Mage::helper('notify4errors')->__('order shipping lastname'),
109
+ 'order_shipping_data_street' => Mage::helper('notify4errors')->__('order shipping street'),
110
+ 'order_shipping_data_city' => Mage::helper('notify4errors')->__('order shipping city'),
111
+ 'order_shipping_data_email' => Mage::helper('notify4errors')->__('order shipping email'),
112
+ 'order_shipping_data_telephone' => Mage::helper('notify4errors')->__('order shipping telephone'),
113
+ 'order_shipping_data_country_id' => Mage::helper('notify4errors')->__('order shipping country id'),
114
+ 'order_shipping_data_firstname' => Mage::helper('notify4errors')->__('order shipping firstname'),
115
+ 'order_shipping_data_address_type' => Mage::helper('notify4errors')->__('order shipping address type'),
116
+ 'order_shipping_data_prefix' => Mage::helper('notify4errors')->__('order shipping prefix'),
117
+ 'order_shipping_data_middlename' => Mage::helper('notify4errors')->__('order shipping middlename'),
118
+ 'order_shipping_data_suffix' => Mage::helper('notify4errors')->__('order shipping suffix'),
119
+ 'order_shipping_data_company' => Mage::helper('notify4errors')->__('order shipping company'),
120
+ 'order_shipping_country_name' => Mage::helper('notify4errors')->__('order shipping country name'),
121
+ 'item_data_parent_item_id' => Mage::helper('notify4errors')->__('item parent item id'),
122
+ 'item_data_created_at' => Mage::helper('notify4errors')->__('item created at'),
123
+ 'item_data_product_id' => Mage::helper('notify4errors')->__('item product id'),
124
+ 'item_data_product_type' => Mage::helper('notify4errors')->__('item product type'),
125
+ 'item_data_weight' => Mage::helper('notify4errors')->__('item weight'),
126
+ 'item_data_is_virtual' => Mage::helper('notify4errors')->__('item is virtual'),
127
+ 'item_data_sku' => Mage::helper('notify4errors')->__('item sku'),
128
+ 'item_data_name' => Mage::helper('notify4errors')->__('item name'),
129
+ 'item_data_description' => Mage::helper('notify4errors')->__('item description'),
130
+ 'item_data_qty_backordered' => Mage::helper('notify4errors')->__('item qty backordered'),
131
+ 'item_data_qty_canceled' => Mage::helper('notify4errors')->__('item qty canceled'),
132
+ 'item_data_qty_invoiced' => Mage::helper('notify4errors')->__('item qty invoiced'),
133
+ 'item_data_qty_ordered' => Mage::helper('notify4errors')->__('item qty ordered'),
134
+ 'item_data_qty_refunded' => Mage::helper('notify4errors')->__('item qty refunded'),
135
+ 'item_data_qty_shipped' => Mage::helper('notify4errors')->__('item qty shipped'),
136
+ 'item_data_price' => Mage::helper('notify4errors')->__('item price'),
137
+ 'item_data_original_price' => Mage::helper('notify4errors')->__('item original price'),
138
+ 'item_data_tax_percent' => Mage::helper('notify4errors')->__('item tax percent'),
139
+ 'item_data_tax_amount' => Mage::helper('notify4errors')->__('item tax amount'),
140
+ 'item_data_tax_invoiced' => Mage::helper('notify4errors')->__('item tax invoiced'),
141
+ 'item_data_discount_percent' => Mage::helper('notify4errors')->__('item discount percent'),
142
+ 'item_data_discount_amount' => Mage::helper('notify4errors')->__('item discount amount'),
143
+ 'item_data_discount_invoiced' => Mage::helper('notify4errors')->__('item discount invoiced'),
144
+ 'item_data_amount_refunded' => Mage::helper('notify4errors')->__('item amount refunded'),
145
+ 'item_data_row_total' => Mage::helper('notify4errors')->__('item row total'),
146
+ 'item_data_row_invoiced' => Mage::helper('notify4errors')->__('item row invoiced'),
147
+ 'item_data_row_weight' => Mage::helper('notify4errors')->__('item row weight'),
148
+ 'item_data_tax_before_discount' => Mage::helper('notify4errors')->__('item tax before discount'),
149
+ 'item_data_price_incl_tax' => Mage::helper('notify4errors')->__('item price incl tax'),
150
+ 'item_data_row_total_incl_tax' => Mage::helper('notify4errors')->__('item row total incl tax'),
151
+ 'item_status' => Mage::helper('notify4errors')->__('item status'),
152
+ 'item_option_data_label' => Mage::helper('notify4errors')->__('item option label'),
153
+ 'item_option_data_value' => Mage::helper('notify4errors')->__('item option value')
154
+ );
155
+ return $valueOptions;
156
+ }
157
+
158
+ public function getCurrencyKeys() {
159
+ $valueOptions = array(
160
+ 'order_data_discount_amount',
161
+ 'order_data_discount_canceled',
162
+ 'order_data_discount_invoiced',
163
+ 'order_data_discount_refunded',
164
+ 'order_data_grand_total',
165
+ 'order_data_shipping_amount',
166
+ 'order_data_shipping_canceled',
167
+ 'order_data_shipping_invoiced',
168
+ 'order_data_shipping_refunded',
169
+ 'order_data_shipping_tax_amount',
170
+ 'order_data_shipping_tax_refunded',
171
+ 'order_data_subtotal',
172
+ 'order_data_subtotal_canceled',
173
+ 'order_data_subtotal_invoiced',
174
+ 'order_data_subtotal_refunded',
175
+ 'order_data_tax_amount',
176
+ 'order_data_tax_canceled',
177
+ 'order_data_tax_invoiced',
178
+ 'order_data_tax_refunded',
179
+ 'order_data_total_canceled',
180
+ 'order_data_total_invoiced',
181
+ 'order_data_total_offline_refunded',
182
+ 'order_data_total_online_refunded',
183
+ 'order_data_total_paid',
184
+ 'order_data_total_refunded',
185
+ 'order_data_shipping_discount_amount',
186
+ 'order_data_subtotal_incl_tax',
187
+ 'order_data_total_due',
188
+ 'order_data_shipping_incl_tax',
189
+ 'item_data_price',
190
+ 'item_data_original_price',
191
+ 'item_data_tax_amount',
192
+ 'item_data_tax_invoiced',
193
+ 'item_data_discount_amount',
194
+ 'item_data_discount_invoiced',
195
+ 'item_data_amount_refunded',
196
+ 'item_data_row_total',
197
+ 'item_data_row_invoiced',
198
+ 'item_data_tax_before_discount',
199
+ 'item_data_price_incl_tax',
200
+ 'item_data_row_total_incl_tax'
201
+ );
202
+ return $valueOptions;
203
+ }
204
+ }
app/code/community/Ext4mage/Notify4errors/Model/Errorlog.php ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ class Ext4mage_Notify4errors_Model_Errorlog extends Mage_Core_Model_Abstract
22
+ {
23
+ public function _construct()
24
+ {
25
+ parent::_construct();
26
+ $this->_init('notify4errors/errorlog');
27
+ }
28
+
29
+ private function _logUserInfo(){
30
+ //collect all user info
31
+ $mageCoreHttp = Mage::helper('core/http');
32
+ $mageRequest = Mage::app()->getRequest();
33
+ // print_r($mageRequest);
34
+ $this->setControllerModule($mageRequest->getControllerModule());
35
+ $this->setControllerName($mageRequest->getControllerName());
36
+ $this->setActionName($mageRequest->getActionName());
37
+ $this->setStacktrace('');
38
+ $this->setRemoteAddrHeaders(print_r($mageCoreHttp->getRemoteAddrHeaders(),1));
39
+ $this->setHttpUserAgent($mageCoreHttp->getHttpUserAgent());
40
+ $this->setHttpAcceptLanguage($mageCoreHttp->getHttpAcceptLanguage());
41
+ $this->setHttpAcceptCharset($mageCoreHttp->getHttpAcceptCharset());
42
+ $this->setHttpReferer($mageCoreHttp->getHttpReferer());
43
+ $this->setHttpHost($mageCoreHttp->getHttpHost());
44
+ $this->setRequestUri($mageCoreHttp->getRequestUri());
45
+ $this->setLayout($mageCoreHttp->getLayout());
46
+ $this->setBeforeForwardInfo(print_r($mageRequest->getBeforeForwardInfo(),1));
47
+ $this->setModuleName($mageRequest->getModuleName());
48
+ $this->setDirectFrontNames(print_r($mageRequest->getDirectFrontNames(),1));
49
+ $this->setOriginalPathInfo($mageRequest->getOriginalPathInfo());
50
+ $this->setOriginalRequest($mageRequest->getOriginalRequest());
51
+ $this->setRequestedActionName($mageRequest->getRequestedActionName());
52
+ $this->setRequestedControllerName($mageRequest->getRequestedControllerName());
53
+ $this->setRequestedRouteName($mageRequest->getRequestedRouteName());
54
+ $this->setRequestString($mageRequest->getRequestString());
55
+ $this->setRouteName($mageRequest->getRouteName());
56
+ $this->setStoreCodeFromPath($mageRequest->getStoreCodeFromPath());
57
+ $this->setParam(print_r($mageRequest->getParams(),1));
58
+ $this->setIsAjax($mageRequest->isAjax());
59
+ // $this->setIsJavascript(0);
60
+ $this->save();
61
+ }
62
+
63
+ public function logMessage($code, $type, $class='', $method=''){
64
+ //add included info
65
+ $this->setMessText($code);
66
+ $this->setMessType($type);
67
+ $this->setMessClass($class);
68
+ $this->setMessMethod($method);
69
+
70
+ $this->_logUserInfo();
71
+ }
72
+
73
+ public function cms404($type){
74
+ //add included info
75
+ $this->setCmsType($type);
76
+
77
+ $this->_logUserInfo();
78
+ }
79
+
80
+ public function logJs(){
81
+ //add included info
82
+
83
+ $this->_logUserInfo();
84
+ }
85
+ }
app/code/community/Ext4mage/Notify4errors/Model/Mysql4/Errorlog.php ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ class Ext4mage_Notify4errors_Model_Mysql4_Errorlog extends Mage_Core_Model_Mysql4_Abstract
22
+ {
23
+ public function _construct()
24
+ {
25
+ // Note that the notify4errors_id refers to the key field in your database table.
26
+ $this->_init('notify4errors/errorlog', 'errorlog_id');
27
+
28
+ }
29
+
30
+ protected function _beforeSave(Mage_Core_Model_Abstract $object)
31
+ {
32
+ if (! $object->getId()) {
33
+ $object->setCreationTime(Mage::getSingleton('core/date')->gmtDate());
34
+ }
35
+ return $this;
36
+ }
37
+ }
app/code/community/Ext4mage/Notify4errors/Model/Mysql4/Errorlog/Collection.php ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ class Ext4mage_Notify4errors_Model_Mysql4_Errorlog_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
22
+ {
23
+ public function _construct()
24
+ {
25
+ parent::_construct();
26
+ $this->_init('notify4errors/errorlog');
27
+ }
28
+ }
app/code/community/Ext4mage/Notify4errors/Model/Notify4errors.php ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ class Ext4mage_Notify4errors_Model_Notify4errors extends Mage_Core_Model_Abstract
22
+ {
23
+ const XPATH_CONFIG_SETTINGS_IS_ACTIVE = 'notify4errors/settings/is_active';
24
+ const ENCLOSURE = '"';
25
+ const DELIMITER = ',';
26
+
27
+ /**
28
+ * Main function being called
29
+ *
30
+ * @param $orders Orders (Mage_Sales_Model_Order) to be saved in file.
31
+ * @return String filename
32
+ */
33
+ public function saveError($error = null){
34
+ // $mageCoreHttp = Mage::helper('core/http');
35
+ // $mageRequest = Mage::app()->getRequest();
36
+ // // print_r($mageRequest);
37
+ // echo "variables to use:";
38
+ // echo "<br>mageCoreHttp->getRemoteAddrHeaders(): ".print_r($mageCoreHttp->getRemoteAddrHeaders(),1);
39
+ // echo "<br>mageCoreHttp->getHttpUserAgent(): ".$mageCoreHttp->getHttpUserAgent();
40
+ // echo "<br>mageCoreHttp->getHttpAcceptLanguage(): ".$mageCoreHttp->getHttpAcceptLanguage();
41
+ // echo "<br>mageCoreHttp->getHttpAcceptCharset(): ".$mageCoreHttp->getHttpAcceptCharset();
42
+ // echo "<br>mageCoreHttp->getHttpReferer(): ".$mageCoreHttp->getHttpReferer();
43
+ // echo "<br>mageCoreHttp->getHttpHost(): ".$mageCoreHttp->getHttpHost();
44
+ // echo "<br>mageCoreHttp->getRequestUri(): ".$mageCoreHttp->getRequestUri();
45
+ // echo "<br>mageCoreHttp->getLayout(): ".$mageCoreHttp->getLayout();
46
+ // echo "<br>mageRequest->getActionName(): ".$mageRequest->getActionName();
47
+ // echo "<br>mageRequest->getBeforeForwardInfo(): ".print_r($mageRequest->getBeforeForwardInfo(),1);
48
+ // echo "<br>mageRequest->getControllerModule(): ".$mageRequest->getControllerModule();
49
+ // echo "<br>mageRequest->getModuleName(): ".$mageRequest->getModuleName();
50
+ // echo "<br>mageRequest->getControllerName(): ".$mageRequest->getControllerName();
51
+ // echo "<br>mageRequest->getDirectFrontNames(): ".print_r($mageRequest->getDirectFrontNames(), 1);
52
+ // echo "<br>mageRequest->getOriginalPathInfo(): ".$mageRequest->getOriginalPathInfo();
53
+ // echo "<br>mageRequest->getOriginalRequest(): ".$mageRequest->getOriginalRequest();
54
+ // echo "<br>mageRequest->getRequestedActionName(): ".$mageRequest->getRequestedActionName();
55
+ // echo "<br>mageRequest->getRequestedControllerName(): ".$mageRequest->getRequestedControllerName();
56
+ // echo "<br>mageRequest->getRequestedRouteName(): ".$mageRequest->getRequestedRouteName();
57
+ // echo "<br>mageRequest->getRequestString(): ".$mageRequest->getRequestString();
58
+ // echo "<br>mageRequest->getRouteName(): ".$mageRequest->getRouteName();
59
+ // echo "<br>mageRequest->getStoreCodeFromPath(): ".$mageRequest->getStoreCodeFromPath();
60
+ // echo "<br>mageRequest->isAjax(): ";
61
+ // echo $mageRequest->isAjax()==true?"true":"false";
62
+ // echo "<br><br><br>";
63
+ // exit;
64
+ }
65
+
66
+ }
67
+ ?>
app/code/community/Ext4mage/Notify4errors/Model/Source/Frequencyemail.php ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ class Ext4mage_Notify4errors_Model_Source_Frequencyemail
22
+ {
23
+ public function toOptionArray()
24
+ {
25
+ return array(
26
+ 0 => Mage::helper('notify4errors')->__('Never'),
27
+ 5 => Mage::helper('notify4errors')->__('5 Minutes'),
28
+ 30 => Mage::helper('notify4errors')->__('30 Minutes'),
29
+ 1 => Mage::helper('notify4errors')->__('1 Hour'),
30
+ 2 => Mage::helper('notify4errors')->__('2 Hours'),
31
+ 6 => Mage::helper('notify4errors')->__('6 Hours'),
32
+ 12 => Mage::helper('notify4errors')->__('12 Hours'),
33
+ 24 => Mage::helper('notify4errors')->__('24 Hours')
34
+ );
35
+ }
36
+ }
app/code/community/Ext4mage/Notify4errors/Model/Source/Messagelevel.php ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ class Ext4mage_Notify4errors_Model_Source_Messagelevel
22
+ {
23
+ public function toOptionArray()
24
+ {
25
+ return array(
26
+ 0 => Mage::helper('notify4errors')->__('Disabled'),
27
+ 1 => Mage::helper('notify4errors')->__('Error'),
28
+ 2 => Mage::helper('notify4errors')->__('Error and Warning'),
29
+ 3 => Mage::helper('notify4errors')->__('Error, Warning and Notice')
30
+ );
31
+ }
32
+ }
app/code/community/Ext4mage/Notify4errors/Model/core/Message.php ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+
22
+ class Ext4mage_Notify4errors_Model_Core_Message extends Mage_Core_Model_Message{
23
+
24
+ const XPATH_CONFIG_SETTINGS_MESSAGES = 'notify4errors/settings/messages';
25
+
26
+ public function error($code, $class='', $method='')
27
+ {
28
+ if(Mage::getStoreConfig(self::XPATH_CONFIG_SETTINGS_MESSAGES) > 0){
29
+ $errorLog = new Ext4mage_Notify4errors_Model_Errorlog();
30
+ $errorLog->logMessage($code, self::ERROR, $class, $method);
31
+ }
32
+ return parent::error($code, $class, $method);
33
+ }
34
+
35
+ public function warning($code, $class='', $method='')
36
+ {
37
+ if(Mage::getStoreConfig(self::XPATH_CONFIG_SETTINGS_MESSAGES) > 1){
38
+ $errorLog = new Ext4mage_Notify4errors_Model_Errorlog();
39
+ $errorLog->logMessage($code, self::WARNING, $class, $method);
40
+ }
41
+ // return parent::warning($code, $class, $method);
42
+ return $this->_factory($code, self::WARNING, $class, $method);
43
+ }
44
+
45
+ public function notice($code, $class='', $method='')
46
+ {
47
+ if(Mage::getStoreConfig(self::XPATH_CONFIG_SETTINGS_MESSAGES) > 2){
48
+ $errorLog = new Ext4mage_Notify4errors_Model_Errorlog();
49
+ $errorLog->logMessage($code, self::NOTICE, $class, $method);
50
+ }
51
+ return parent::notice($code, $class, $method);
52
+ }
53
+ }
app/code/community/Ext4mage/Notify4errors/controllers/Adminhtml/ErrorlogController.php ADDED
@@ -0,0 +1,98 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ class Ext4mage_Notify4errors_Adminhtml_ErrorlogController extends Mage_Adminhtml_Controller_action
22
+ {
23
+
24
+ protected function _initAction() {
25
+ $this->loadLayout()
26
+ ->_setActiveMenu('notify4errors/errorlog')
27
+ ->_addBreadcrumb(Mage::helper('adminhtml')->__('Notify4errors Errorlog structure'), Mage::helper('adminhtml')->__('Notify4errors Errorlog structure'));
28
+
29
+ return $this;
30
+ }
31
+
32
+ public function indexAction() {
33
+ $this->_initAction()
34
+ ->renderLayout();
35
+ }
36
+
37
+ public function editAction() {
38
+ $id = $this->getRequest()->getParam('id');
39
+ $model = Mage::getModel('notify4errors/errorlog')->load($id);
40
+
41
+ if ($model->getId() || $id == 0) {
42
+ $data = Mage::getSingleton('adminhtml/session')->getFormData(true);
43
+ if (!empty($data)) {
44
+ $model->setData($data);
45
+ }
46
+
47
+ Mage::register('notify4errors_data', $model);
48
+
49
+ $this->loadLayout();
50
+ $this->_setActiveMenu('notify4errors/errorlog');
51
+ $this->_addBreadcrumb(Mage::helper('adminhtml')->__('Errorlog element content'), Mage::helper('adminhtml')->__('Errorlog element content'));
52
+ $this->_addContent($this->getLayout()->createBlock('notify4errors/adminhtml_errorlog_edit'));
53
+ $this->renderLayout();
54
+ } else {
55
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('notify4errors')->__('Element does not exist'));
56
+ $this->_redirect('*/*/');
57
+ }
58
+ }
59
+
60
+ public function deleteAction() {
61
+ if( $this->getRequest()->getParam('id') > 0 ) {
62
+ try {
63
+ $model = Mage::getModel('notify4errors/errorlog');
64
+
65
+ $model->setId($this->getRequest()->getParam('id'))
66
+ ->delete();
67
+
68
+ Mage::getSingleton('adminhtml/session')->addSuccess(Mage::helper('html2pdf')->__('Errorlog was successfully deleted'));
69
+ $this->_redirect('*/*/');
70
+ } catch (Exception $e) {
71
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
72
+ $this->_redirect('*/*/edit', array('id' => $this->getRequest()->getParam('id')));
73
+ }
74
+ }
75
+ $this->_redirect('*/*/index');
76
+ }
77
+
78
+
79
+ public function massDeleteAction() {
80
+ $errorlogIds = $this->getRequest()->getParam('errorlog');
81
+ if(!is_array($errorlogIds)) {
82
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('notify4errors')->__('Please select errorlog element(s)'));
83
+ } else {
84
+ try {
85
+ foreach ($errorlogIds as $errorlogId) {
86
+ $errorlog = Mage::getModel('notify4errors/errorlog')->load($errorlogId);
87
+ $errorlog->delete();
88
+ }
89
+ Mage::getSingleton('adminhtml/session')->addSuccess(
90
+ Mage::helper('notify4errors')->__('Total of %d errorlog element(s) were successfully deleted', count($errorlogIds))
91
+ );
92
+ } catch (Exception $e) {
93
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
94
+ }
95
+ }
96
+ $this->_redirect('*/*/index');
97
+ }
98
+ }
app/code/community/Ext4mage/Notify4errors/controllers/IndexController.php ADDED
@@ -0,0 +1,101 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+ require_once BP.'/app/code/core/Mage/Cms/controllers/IndexController.php';
22
+
23
+ class Ext4mage_Notify4errors_IndexController extends Mage_Cms_IndexController{
24
+
25
+ const XPATH_CONFIG_SETTINGS_ROUTE = 'notify4errors/settings/capture_route';
26
+ const XPATH_CONFIG_SETTINGS_COOKIE = 'notify4errors/settings/capture_cookie';
27
+
28
+ /**
29
+ * Default index action (with 404 Not Found headers)
30
+ * Used if default page don't configure or available
31
+ *
32
+ */
33
+ public function defaultIndexAction()
34
+ {
35
+ if(Mage::getStoreConfig(self::XPATH_CONFIG_SETTINGS_ROUTE) > 0){
36
+ $errorLog = new Ext4mage_Notify4errors_Model_Errorlog();
37
+ $errorLog->cms404('defaultIndex not found');
38
+ }
39
+
40
+ parent::defaultIndexAction();
41
+ }
42
+
43
+ /**
44
+ * Render CMS 404 Not found page
45
+ *
46
+ * @param string $coreRoute
47
+ */
48
+ public function noRouteAction($coreRoute = null)
49
+ {
50
+ if(Mage::getStoreConfig(self::XPATH_CONFIG_SETTINGS_ROUTE) > 0){
51
+ $errorLog = new Ext4mage_Notify4errors_Model_Errorlog();
52
+ $errorLog->cms404('No route - soft 404');
53
+ }
54
+
55
+ parent::noRouteAction($coreRoute);
56
+ }
57
+
58
+ /**
59
+ * Default no route page action
60
+ * Used if no route page don't configure or available
61
+ *
62
+ */
63
+ public function defaultNoRouteAction()
64
+ {
65
+ if(Mage::getStoreConfig(self::XPATH_CONFIG_SETTINGS_ROUTE) > 0){
66
+ $errorLog = new Ext4mage_Notify4errors_Model_Errorlog();
67
+ $errorLog->cms404('No route and not default - soft 404');
68
+ }
69
+
70
+ parent::defaultNoRouteAction();
71
+ }
72
+
73
+ /**
74
+ * Render Disable cookies page
75
+ *
76
+ */
77
+ public function noCookiesAction()
78
+ {
79
+ if(Mage::getStoreConfig(self::XPATH_CONFIG_SETTINGS_COOKIE) > 0){
80
+ $errorLog = new Ext4mage_Notify4errors_Model_Errorlog();
81
+ $errorLog->cms404('Cookie not allowed');
82
+ }
83
+
84
+ parent::noCookiesAction();
85
+ }
86
+
87
+ /**
88
+ * Default no cookies page action
89
+ * Used if no cookies page don't configure or available
90
+ *
91
+ */
92
+ public function defaultNoCookiesAction()
93
+ {
94
+ if(Mage::getStoreConfig(self::XPATH_CONFIG_SETTINGS_COOKIE) > 0){
95
+ $errorLog = new Ext4mage_Notify4errors_Model_Errorlog();
96
+ $errorLog->cms404('Cookie not allowed - no default');
97
+ }
98
+
99
+ parent::defaultNoCookiesAction();
100
+ }
101
+ }
app/code/community/Ext4mage/Notify4errors/controllers/Notify4errorsController.php ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ * */
21
+
22
+ class Ext4mage_Notify4errors_IndexController extends Mage_Core_Controller_Front_Action
23
+ {
24
+ const XPATH_CONFIG_SETTINGS_JS = 'notify4errors/settings/capture_js';
25
+
26
+ /**
27
+ * Logs javascript error / validations from frontend
28
+ *
29
+ */
30
+ public function logAction()
31
+ {
32
+ if(Mage::getStoreConfig(self::XPATH_CONFIG_SETTINGS_JS) > 0){
33
+ $errorLog = new Ext4mage_Notify4errors_Model_Errorlog();
34
+ $errorLog->logJs();
35
+ }
36
+ }
37
+ }
app/code/community/Ext4mage/Notify4errors/data/notify4errors_setup/data-install-1.0.0.0.php ADDED
@@ -0,0 +1,2 @@
 
 
1
+ <?php
2
+ $installer = $this;
app/code/community/Ext4mage/Notify4errors/etc/adminhtml.xml ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!-- /** * Magento
3
+ ** NOTICE
4
+ ** This source file a part of Ext4mage_Notify4errors extension
5
+ * all rights to this modul belongs to ext4mage.com
6
+ *
7
+ * @category Ext4mage
8
+ * @package Ext4mage_Notify4errors
9
+ * @copyright Copyright (c) 2011 ext4mage (http://www.ext4mage.com)
10
+ */ -->
11
+ <config>
12
+ <menu>
13
+ <ext4mage>
14
+ <children>
15
+ <notify4errors translate="title" module="notify4errors">
16
+ <title>notify4errors</title>
17
+ <sort_order>300</sort_order>
18
+ <action>notify4errors/adminhtml_errorlog</action>
19
+ </notify4errors>
20
+ </children>
21
+ </ext4mage>
22
+ </menu>
23
+ <acl>
24
+ <resources>
25
+ <all>
26
+ <title>Allow Everything</title>
27
+ </all>
28
+ <admin>
29
+ <children>
30
+ <ext4mage>
31
+ <children>
32
+ <notify4errors>
33
+ <title>notify4errors Module</title>
34
+ </notify4errors>
35
+ </children>
36
+ </ext4mage>
37
+ <system>
38
+ <children>
39
+ <config>
40
+ <children>
41
+ <notify4errors translate="title" module="notify4errors">
42
+ <title>ext4mage Notify4Errors section</title>
43
+ </notify4errors>
44
+ </children>
45
+ </config>
46
+ </children>
47
+ </system>
48
+ </children>
49
+ </admin>
50
+ </resources>
51
+ </acl>
52
+ </config>
53
+
app/code/community/Ext4mage/Notify4errors/etc/config.xml ADDED
@@ -0,0 +1,137 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ * Ext4mage Notify4errors Module
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0)
8
+ * that is bundled with this package in the file LICENSE.txt.
9
+ * It is also available through the world-wide-web at this URL:
10
+ * http://opensource.org/licenses/osl-3.0.php
11
+ * If you did not receive a copy of the license and are unable to
12
+ * obtain it through the world-wide-web, please send an email
13
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
14
+ *
15
+ * @category Ext4mage
16
+ * @package Ext4mage_Notify4errors
17
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
18
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
19
+ * @author Henrik Kier <info@ext4mage.com>
20
+ *
21
+ -->
22
+ <config>
23
+ <modules>
24
+ <Ext4mage_Notify4errors>
25
+ <version>1.0.0.0</version>
26
+ </Ext4mage_Notify4errors>
27
+ </modules>
28
+ <admin>
29
+ <routers>
30
+ <notify4errors>
31
+ <use>admin</use>
32
+ <args>
33
+ <module>Ext4mage_Notify4errors</module>
34
+ <frontName>notify4errors</frontName>
35
+ </args>
36
+ </notify4errors>
37
+ <adminhtml>
38
+ <args>
39
+ <modules>
40
+ <Ext4mage_Notify4errors before="Mage_Adminhtml">Ext4mage_Notify4errors</Ext4mage_Notify4errors>
41
+ </modules>
42
+ </args>
43
+ </adminhtml>
44
+ </routers>
45
+ </admin>
46
+ <adminhtml>
47
+ <layout>
48
+ <updates>
49
+ <notify4errors>
50
+ <file>notify4errors.xml</file>
51
+ </notify4errors>
52
+ </updates>
53
+ </layout>
54
+ <translate>
55
+ <modules>
56
+ <Ext4mage_Notify4errors>
57
+ <files>
58
+ <default>Ext4mage_Notify4errors.csv</default>
59
+ </files>
60
+ </Ext4mage_Notify4errors>
61
+ </modules>
62
+ </translate>
63
+ </adminhtml>
64
+ <frontend>
65
+ <routers>
66
+ <cms>
67
+ <args>
68
+ <modules>
69
+ <Ext4mage_Notify4errors before="Mage_Cms">Ext4mage_Notify4errors</Ext4mage_Notify4errors>
70
+ </modules>
71
+ </args>
72
+ </cms>
73
+ </routers>
74
+ </frontend>
75
+ <global>
76
+ <models>
77
+ <notify4errors>
78
+ <class>Ext4mage_Notify4errors_Model</class>
79
+ <resourceModel>notify4errors_mysql4</resourceModel>
80
+ </notify4errors>
81
+ <notify4errors_mysql4>
82
+ <class>Ext4mage_Notify4errors_Model_Mysql4</class>
83
+ <entities>
84
+ <errorlog>
85
+ <table>notify4errors_errorlog</table>
86
+ </errorlog>
87
+ </entities>
88
+ </notify4errors_mysql4>
89
+ <core>
90
+ <rewrite>
91
+ <message>Ext4mage_Notify4errors_Model_Core_Message</message>
92
+ </rewrite>
93
+ </core>
94
+ </models>
95
+ <helpers>
96
+ <notify4errors>
97
+ <class>Ext4mage_Notify4errors_Helper</class>
98
+ </notify4errors>
99
+ </helpers>
100
+ <resources>
101
+ <notify4errors_setup>
102
+ <setup>
103
+ <module>Ext4mage_Notify4errors</module>
104
+ </setup>
105
+ <connection>
106
+ <use>core_setup</use>
107
+ </connection>
108
+ </notify4errors_setup>
109
+ <notify4errors_write>
110
+ <connection>
111
+ <use>core_write</use>
112
+ </connection>
113
+ </notify4errors_write>
114
+ <notify4errors_read>
115
+ <connection>
116
+ <use>core_read</use>
117
+ </connection>
118
+ </notify4errors_read>
119
+ </resources>
120
+ <blocks>
121
+ <notify4errors>
122
+ <class>Ext4mage_Notify4errors_Block</class>
123
+ </notify4errors>
124
+ </blocks>
125
+ </global>
126
+ <default>
127
+ <notify4errors>
128
+ <settings>
129
+ <!-- <email_freq>0</email_freq> -->
130
+ <messages>0</messages>
131
+ <!-- <capture_js>0</capture_js> -->
132
+ <capture_route>0</capture_route>
133
+ <capture_cookie>0</capture_cookie>
134
+ </settings>
135
+ </notify4errors>
136
+ </default>
137
+ </config>
app/code/community/Ext4mage/Notify4errors/etc/system.xml ADDED
@@ -0,0 +1,123 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ /*
4
+ * Ext4mage Notify4errors Module
5
+ *
6
+ * NOTICE OF LICENSE
7
+ *
8
+ * This source file is subject to the Open Software License (OSL 3.0)
9
+ * that is bundled with this package in the file LICENSE.txt.
10
+ * It is also available through the world-wide-web at this URL:
11
+ * http://opensource.org/licenses/osl-3.0.php
12
+ * If you did not receive a copy of the license and are unable to
13
+ * obtain it through the world-wide-web, please send an email
14
+ * to Henrik Kier <info@ext4mage.com> so we can send you a copy immediately.
15
+ *
16
+ * @category Ext4mage
17
+ * @package Ext4mage_Notify4errors
18
+ * @copyright Copyright (c) 2012 Ext4mage (http://ext4mage.com)
19
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
20
+ * @author Genevieve Eddison, Jonathan Feist <sales@ext4mage.com>
21
+ * */ -->
22
+ <config>
23
+ <sections>
24
+ <notify4errors translate="label" module="notify4errors">
25
+ <label>Notify4errors</label>
26
+ <tab>ext4mage</tab>
27
+ <frontend_type>text</frontend_type>
28
+ <sort_order>30</sort_order>
29
+ <show_in_default>1</show_in_default>
30
+ <show_in_website>1</show_in_website>
31
+ <show_in_store>1</show_in_store>
32
+ <groups>
33
+ <settings translate="label">
34
+ <label>General Settings</label>
35
+ <frontend_type>text</frontend_type>
36
+ <sort_order>10</sort_order>
37
+ <show_in_default>1</show_in_default>
38
+ <show_in_website>1</show_in_website>
39
+ <show_in_store>1</show_in_store>
40
+ <comment>
41
+ <![CDATA[
42
+ <div style="padding:10px;background-color:#fff;border:1px solid #ddd;margin-bottom:7px;">
43
+ Developed by <a href="http://ext4mage.com" target="_blank">ext4mage.com</a> - Get manual and advise on <a href="http://ext4mage.com" target="_blank">ext4mage.com</a>.<br /><br />
44
+ We have the best PDF customizer for Magento on the market.
45
+ More than 800 variables available - <a href="http://ext4mage.com/html2pdf-magento-extension-html.html" target="_blank">ext4mage HTML2PDF</a><br />
46
+ Change and design everything in your Order, Invoice, Shipping and Credit PDF directly from WYSIWYG editor.
47
+ </div>
48
+ ]]>
49
+ </comment>
50
+ <fields>
51
+ <!-- <license_code translate="label">
52
+ <label>License code</label>
53
+ <frontend_type>text</frontend_type>
54
+ <sort_order>20</sort_order>
55
+ <show_in_default>1</show_in_default>
56
+ <show_in_website>0</show_in_website>
57
+ <show_in_store>0</show_in_store>
58
+ </license_code>
59
+ <email_adr translate="label">
60
+ <label>Email adress</label>
61
+ <frontend_type>text</frontend_type>
62
+ <sort_order>30</sort_order>
63
+ <show_in_default>1</show_in_default>
64
+ <show_in_website>0</show_in_website>
65
+ <show_in_store>0</show_in_store>
66
+ <comment><![CDATA[The email adress that shall recieve the notification (use multi by deviding with comma)]]></comment>
67
+ </email_adr>
68
+ <email_freq translate="label">
69
+ <label>Email frequency</label>
70
+ <frontend_type>select</frontend_type>
71
+ <source_model>ext4mage_notify4errors_model_source_frequencyemail</source_model>
72
+ <sort_order>40</sort_order>
73
+ <show_in_default>1</show_in_default>
74
+ <show_in_website>0</show_in_website>
75
+ <show_in_store>0</show_in_store>
76
+ <comment><![CDATA[How often shall the email be sent.]]></comment>
77
+ </email_freq> -->
78
+ <messages translate="label">
79
+ <label>Messages levels</label>
80
+ <frontend_type>select</frontend_type>
81
+ <source_model>ext4mage_notify4errors_model_source_messagelevel</source_model>
82
+ <sort_order>50</sort_order>
83
+ <show_in_default>1</show_in_default>
84
+ <show_in_website>0</show_in_website>
85
+ <show_in_store>0</show_in_store>
86
+ <comment><![CDATA[Which message levels shall be captured]]></comment>
87
+ </messages>
88
+ <!-- <capture_js translate="label">
89
+ <label>Capture JavaScript validation</label>
90
+ <frontend_type>select</frontend_type>
91
+ <source_model>adminhtml/system_config_source_yesno</source_model>
92
+ <sort_order>60</sort_order>
93
+ <show_in_default>1</show_in_default>
94
+ <show_in_website>0</show_in_website>
95
+ <show_in_store>0</show_in_store>
96
+ <comment><![CDATA[Shall error in the front-end javascript validation be captured]]></comment>
97
+ </capture_js> -->
98
+ <capture_route translate="label">
99
+ <label>Capture CMS no-route (404)</label>
100
+ <frontend_type>select</frontend_type>
101
+ <source_model>adminhtml/system_config_source_yesno</source_model>
102
+ <sort_order>70</sort_order>
103
+ <show_in_default>1</show_in_default>
104
+ <show_in_website>0</show_in_website>
105
+ <show_in_store>0</show_in_store>
106
+ <comment><![CDATA[Capture request to pages that do not exist - all soft 404 showings]]></comment>
107
+ </capture_route>
108
+ <capture_cookie translate="label">
109
+ <label>Capture CMS no-cookie</label>
110
+ <frontend_type>select</frontend_type>
111
+ <source_model>adminhtml/system_config_source_yesno</source_model>
112
+ <sort_order>80</sort_order>
113
+ <show_in_default>1</show_in_default>
114
+ <show_in_website>0</show_in_website>
115
+ <show_in_store>0</show_in_store>
116
+ <comment><![CDATA[Capture request where user do not have cookie enabled]]></comment>
117
+ </capture_cookie>
118
+ </fields>
119
+ </settings>
120
+ </groups>
121
+ </notify4errors>
122
+ </sections>
123
+ </config>
app/code/community/Ext4mage/Notify4errors/sql/notify4errors_setup/install-1.0.0.0.php ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $installer = $this;
4
+
5
+ $installer->startSetup();
6
+
7
+ /**
8
+ * Create table 'notify4errors/errorlog'
9
+ */
10
+ $table = $installer->getConnection()
11
+ ->newTable($installer->getTable('notify4errors/errorlog'))
12
+ ->addColumn('errorlog_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
13
+ 'identity' => true,
14
+ 'nullable' => false,
15
+ 'primary' => true
16
+ ), 'ID')
17
+ ->addColumn('controller_module', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
18
+ ->addColumn('controller_name', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
19
+ ->addColumn('action_name', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
20
+ ->addColumn('stacktrace', Varien_Db_Ddl_Table::TYPE_TEXT, '2M', array(), 'Stack trace of error')
21
+ ->addColumn('remote_addr_headers', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
22
+ ->addColumn('http_user_agent', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
23
+ ->addColumn('http_accept_language', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
24
+ ->addColumn('http_accept_charset', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
25
+ ->addColumn('http_referer', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
26
+ ->addColumn('http_host', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
27
+ ->addColumn('request_uri', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
28
+ ->addColumn('layout', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
29
+ ->addColumn('before_forward_info', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
30
+ ->addColumn('module_name', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
31
+ ->addColumn('direct_front_names', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
32
+ ->addColumn('original_path_info', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
33
+ ->addColumn('original_request', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
34
+ ->addColumn('requested_action_name', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
35
+ ->addColumn('requested_controller_name', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
36
+ ->addColumn('requested_route_name', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
37
+ ->addColumn('request_string', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
38
+ ->addColumn('route_name', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
39
+ ->addColumn('store_code_from_path', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'comment')
40
+ ->addColumn('param', Varien_Db_Ddl_Table::TYPE_TEXT, '2M', array(), 'parameters on request')
41
+ ->addColumn('mess_text', Varien_Db_Ddl_Table::TYPE_TEXT, '64k', array(), 'message')
42
+ ->addColumn('mess_type', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'message')
43
+ ->addColumn('mess_class', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'message')
44
+ ->addColumn('mess_method', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'message')
45
+ ->addColumn('cms_type', Varien_Db_Ddl_Table::TYPE_TEXT, 255, array(), 'cms type')
46
+ ->addColumn('is_ajax', Varien_Db_Ddl_Table::TYPE_SMALLINT, NULL, array('nullable' => false, 'default' => '0'), 'comment')
47
+ ->addColumn('is_javascript', Varien_Db_Ddl_Table::TYPE_SMALLINT, NULL, array('nullable' => false, 'default' => '0'), 'comment')
48
+ ->addColumn('is_sent', Varien_Db_Ddl_Table::TYPE_SMALLINT, NULL, array('nullable' => false, 'default' => '0'), 'has been sent on notification')
49
+ ->addColumn('creation_time', Varien_Db_Ddl_Table::TYPE_TIMESTAMP, null, array(), 'Creation Time')
50
+ ->setComment('Log of all errors that has happend');
51
+
52
+ $installer->getConnection()->createTable($table);
53
+
54
+ $installer->endSetup();
app/code/community/Ext4mage/Notify4errors/sql/notify4errors_setup/mysql4-install-1.0.0.0.php ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $installer = $this;
4
+
5
+ $installer->startSetup();
6
+
7
+ $installString = <<<EOT
8
+ DROP TABLE IF EXISTS {$installer->getTable('notify4errors/errorlog')};
9
+ CREATE TABLE {$installer->getTable('notify4errors/errorlog')} (
10
+ `errorlog_id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',
11
+ `controller_module` varchar(255) DEFAULT NULL COMMENT 'comment',
12
+ `controller_name` varchar(255) DEFAULT NULL COMMENT 'comment',
13
+ `action_name` varchar(255) DEFAULT NULL COMMENT 'comment',
14
+ `stacktrace` mediumtext COMMENT 'Stack trace of error',
15
+ `remote_addr_headers` varchar(255) DEFAULT NULL COMMENT 'comment',
16
+ `http_user_agent` varchar(255) DEFAULT NULL COMMENT 'comment',
17
+ `http_accept_language` varchar(255) DEFAULT NULL COMMENT 'comment',
18
+ `http_accept_charset` varchar(255) DEFAULT NULL COMMENT 'comment',
19
+ `http_referer` varchar(255) DEFAULT NULL COMMENT 'comment',
20
+ `http_host` varchar(255) DEFAULT NULL COMMENT 'comment',
21
+ `request_uri` varchar(255) DEFAULT NULL COMMENT 'comment',
22
+ `layout` varchar(255) DEFAULT NULL COMMENT 'comment',
23
+ `before_forward_info` varchar(255) DEFAULT NULL COMMENT 'comment',
24
+ `module_name` varchar(255) DEFAULT NULL COMMENT 'comment',
25
+ `direct_front_names` varchar(255) DEFAULT NULL COMMENT 'comment',
26
+ `original_path_info` varchar(255) DEFAULT NULL COMMENT 'comment',
27
+ `original_request` varchar(255) DEFAULT NULL COMMENT 'comment',
28
+ `requested_action_name` varchar(255) DEFAULT NULL COMMENT 'comment',
29
+ `requested_controller_name` varchar(255) DEFAULT NULL COMMENT 'comment',
30
+ `requested_route_name` varchar(255) DEFAULT NULL COMMENT 'comment',
31
+ `request_string` varchar(255) DEFAULT NULL COMMENT 'comment',
32
+ `route_name` varchar(255) DEFAULT NULL COMMENT 'comment',
33
+ `store_code_from_path` varchar(255) DEFAULT NULL COMMENT 'comment',
34
+ `param` mediumtext COMMENT 'parameters on request',
35
+ `mess_text` text COMMENT 'message',
36
+ `mess_type` varchar(255) DEFAULT NULL COMMENT 'message',
37
+ `mess_class` varchar(255) DEFAULT NULL COMMENT 'message',
38
+ `mess_method` varchar(255) DEFAULT NULL COMMENT 'message',
39
+ `cms_type` varchar(255) DEFAULT NULL COMMENT 'cms type',
40
+ `is_ajax` smallint(6) NOT NULL DEFAULT '0' COMMENT 'comment',
41
+ `is_javascript` smallint(6) NOT NULL DEFAULT '0' COMMENT 'comment',
42
+ `is_sent` smallint(6) NOT NULL DEFAULT '0' COMMENT 'has been sent on notification',
43
+ `creation_time` timestamp NULL DEFAULT NULL COMMENT 'Creation Time',
44
+ PRIMARY KEY (`errorlog_id`)
45
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Log of all errors that has happend' ;
46
+ EOT;
47
+ $installer->run($installString);
48
+ $installer->endSetup();
app/code/community/Ext4mage/Shared/Helper/Data.php ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Ext4mage_Shared_Helper_Data extends Mage_Core_Helper_Abstract
3
+ {
4
+
5
+ function checkLicenseOnline($module, $license){
6
+ $thisHost = $_SERVER['SERVER_NAME'];
7
+ $url = 'http://ext4mage.com/license/check.php?module='.urlencode($module).'&license='.urlencode($license).'&clienthost='.urlencode($thisHost);
8
+ $result = @file_get_contents($url, false, null, 0, 2000);
9
+ $okText = "ext4mageOK";
10
+ if (strcasecmp($result, $okText) == 0) {
11
+ return true;
12
+ }
13
+ return true;
14
+ }
15
+ }
app/code/community/Ext4mage/Shared/etc/adminhtml.xml ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE
7
+ *
8
+ * This source file a part of Ext4mage_Shared extension
9
+ * all rights to this modul belongs to ext4mage.com
10
+ *
11
+ * @category Ext4mage
12
+ * @package Ext4mage_Shared
13
+ * @copyright Copyright (c) 2011 ext4mage (http://www.ext4mage.com)
14
+ */
15
+ -->
16
+ <config>
17
+ <menu>
18
+ <ext4mage translate="title" module="ext4mageshared">
19
+ <title>ext4mage</title>
20
+ <sort_order>78</sort_order>
21
+ </ext4mage>
22
+ </menu>
23
+ <acl>
24
+ <resources>
25
+ <all>
26
+ <title>Allow Everything</title>
27
+ </all>
28
+ <admin>
29
+ <children>
30
+ <ext4mage>
31
+ <title>ext4mage Modules</title>
32
+ <sort_order>78</sort_order>
33
+ </ext4mage>
34
+ <system>
35
+ <children>
36
+ <config>
37
+ <children>
38
+ <ext4mage translate="title" module="ext4mageshared">
39
+ <title>ext4mage section</title>
40
+ </ext4mage>
41
+ </children>
42
+ </config>
43
+ </children>
44
+ </system>
45
+ </children>
46
+ </admin>
47
+ </resources>
48
+ </acl>
49
+
50
+ </config>
51
+
app/code/community/Ext4mage/Shared/etc/config.xml ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE
7
+ *
8
+ * This source file a part of Ext4mage extension
9
+ * all rights to this modul belongs to ext4mage.com
10
+ *
11
+ * @category Ext4mage
12
+ * @package Ext4mage_shared
13
+ * @copyright Copyright (c) 2011 ext4mage (http://www.ext4mage.com)
14
+ */
15
+ -->
16
+ <config>
17
+ <modules>
18
+ <ext4mage_Common>
19
+ <version>1.1.0</version>
20
+ </ext4mage_Common>
21
+ </modules>
22
+ <global>
23
+ <models>
24
+ <ext4mageshared>
25
+ <class>Ext4mage_Shared_Model</class>
26
+ </ext4mageshared>
27
+ </models>
28
+ <helpers>
29
+ <ext4mageshared>
30
+ <class>Ext4mage_Shared_Helper</class>
31
+ </ext4mageshared>
32
+ </helpers>
33
+ </global>
34
+ </config>
app/code/community/Ext4mage/Shared/etc/system.xml ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE
7
+ *
8
+ * This source file a part of Ext4mage_Html2pdf extension
9
+ * all rights to this modul belongs to ext4mage.com
10
+ *
11
+ * @category Ext4mage
12
+ * @package Ext4mage_Html2pdf
13
+ * @copyright Copyright (c) 2011 ext4mage (http://www.ext4mage.com)
14
+ */
15
+ -->
16
+ <config>
17
+ <tabs>
18
+ <ext4mage translate="label">
19
+ <label>ext4mage</label>
20
+ <sort_order>280</sort_order>
21
+ </ext4mage>
22
+ </tabs>
23
+ </config>
app/design/adminhtml/default/default/layout/notify4errors.xml ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <layout version="0.1.0">
3
+ <notify4errors_adminhtml_errorlog_index>
4
+ <reference name="content">
5
+ <block type="notify4errors/adminhtml_errorlog" name="errorlog" />
6
+ </reference>
7
+ </notify4errors_adminhtml_errorlog_index>
8
+ </layout>
app/etc/modules/Ext4mage_Notify4errors.xml ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE
7
+ *
8
+ * This source file a part of Ext4mage_Notify4errors extension
9
+ * all rights to this modul belongs to ext4mage.com
10
+ *
11
+ * @category Ext4mage
12
+ * @package Ext4mage_Notify4errors
13
+ * @copyright Copyright (c) 2011 ext4mage (http://www.ext4mage.com)
14
+ */
15
+ -->
16
+ <config>
17
+ <modules>
18
+ <Ext4mage_Notify4errors>
19
+ <active>true</active>
20
+ <codePool>community</codePool>
21
+ <depends>
22
+ <Ext4mage_Shared />
23
+ </depends>
24
+ </Ext4mage_Notify4errors>
25
+ </modules>
26
+ </config>
app/etc/modules/Ext4mage_Shared.xml ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Magento
5
+ *
6
+ * NOTICE
7
+ *
8
+ * This source file a part of Ext4mage_Html2pdf extension
9
+ * all rights to this modul belongs to ext4mage.com
10
+ *
11
+ * @category Ext4mage
12
+ * @package Ext4mage_Html2pdf
13
+ * @copyright Copyright (c) 2011 ext4mage (http://www.ext4mage.com)
14
+ */
15
+ -->
16
+ <config>
17
+ <modules>
18
+ <Ext4mage_Shared>
19
+ <active>true</active>
20
+ <codePool>community</codePool>
21
+ <depends>
22
+ <Mage_Sales />
23
+ </depends>
24
+ </Ext4mage_Shared>
25
+ </modules>
26
+ </config>
package.xml ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <package>
3
+ <name>ext4mage_notify4errors</name>
4
+ <version>1.0.0</version>
5
+ <stability>stable</stability>
6
+ <license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
7
+ <channel>community</channel>
8
+ <extends/>
9
+ <summary>Record messages and 404 errors, so you can correct errors before you lose customers</summary>
10
+ <description>The notify4errors module from ext4mage.com makes it possible to see errors and notifications that your users experience. It records error, warning and notification messages from your system, and also records all 404 page not found errors that happens. All recordings is shown with information about the call and the users system, so that it is possible to use the data to debug the problems.&lt;br /&gt;&lt;br /&gt;&#xD;
11
+ This way you can be informed about problems in you system, that being both directly coding problems but also usability problems. So now you can react before you get contacted by customers with a bad experience.&#xD;
12
+ &lt;br /&gt;&lt;br /&gt;&#xD;
13
+ To download installation and user guide go to your website ext4mage.com&#xD;
14
+ </description>
15
+ <notes>First version</notes>
16
+ <authors><author><name>ext4mage</name><user>ext4mage</user><email>info@ext4mage.com</email></author></authors>
17
+ <date>2012-10-01</date>
18
+ <time>13:22:28</time>
19
+ <contents><target name="magecommunity"><dir name="Ext4mage"><dir name="Notify4errors"><dir name="Block"><dir name="Adminhtml"><dir name="Errorlog"><dir name="Edit"><file name="Form.php" hash="77931698c5d75406d2f124f1dc32729b"/></dir><file name="Edit.php" hash="eb64807a897d23915da54eefe18496ee"/><file name="Grid.php" hash="7e357e580c3efa21370ab46bfe524fa1"/></dir><file name="Errorlog.php" hash="0623e57a1ce3c7a45670030640190d10"/></dir></dir><dir name="Helper"><file name="Data.php" hash="f2f09960b4c7d01555108eb9b30cf24e"/></dir><dir name="Model"><file name="Errorlog.php" hash="7119c2d34bf3074f6e49c8d1424383f8"/><dir name="Mysql4"><dir name="Errorlog"><file name="Collection.php" hash="19760b5ae4335b8c66281915e4bb1f50"/></dir><file name="Errorlog.php" hash="b3251554e2908d1a41c32a78db8afeeb"/></dir><file name="Notify4errors.php" hash="b9068f08e8331fb08c28d6b802f03cd2"/><dir name="Source"><file name="Frequencyemail.php" hash="f897f909a8b93b336ba0461ee8a2cef3"/><file name="Messagelevel.php" hash="3ba7bd00525f6efaaef6ffe1054d5796"/></dir><dir name="core"><file name="Message.php" hash="83ac3753efd983c545ea415a11a73d2c"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="ErrorlogController.php" hash="369dcd0e8c840183cddfce89f4da3c67"/></dir><file name="IndexController.php" hash="71167bd8e5a5e00ab4e6716ba94fd148"/><file name="Notify4errorsController.php" hash="1ab77876917e5e0b18b371ec4466351b"/></dir><dir name="data"><dir name="notify4errors_setup"><file name="data-install-1.0.0.0.php" hash="d290bc7641a0a6c6414aeb7356f62511"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="a5cf6b914cfbf0f3ee204fac687e29ef"/><file name="config.xml" hash="66536e5f43662845cc5c5bc5768d90eb"/><file name="system.xml" hash="065aba437c1eade05a1a9acc6058106e"/></dir><dir name="sql"><dir name="notify4errors_setup"><file name="install-1.0.0.0.php" hash="3aac61dc77c1edd70c94f8b6c18f0474"/><file name="mysql4-install-1.0.0.0.php" hash="fd6ae510953b1af13978287ab6cfe780"/></dir></dir></dir><dir name="Shared"><dir name="Helper"><file name="Data.php" hash="8580e6bb26af71e94c0a8dc7d71667bc"/></dir><dir name="etc"><file name="adminhtml.xml" hash="33dc801378bf4c5cada5ef76b95955c6"/><file name="config.xml" hash="c1be124d3e76b63eed95a4c888f7a91f"/><file name="system.xml" hash="aa4114dae047fa4f01a30c399d068004"/></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="notify4errors.xml" hash="ea0c912a234b2dd1d0b18b07a38089fa"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Ext4mage_Notify4errors.xml" hash="357ceccd7cde5b7b7276c1d0592a3ff0"/><file name="Ext4mage_Shared.xml" hash="a4a6b4600e0db6b9882aba77fb88522b"/></dir></target></contents>
20
+ <compatible/>
21
+ <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
22
+ </package>