notification_module - Version 0.1.1

Version Notes

-Bug Fixing

Download this release

Release Info

Developer Biztech
Extension notification_module
Version 0.1.1
Comparing to
See all releases


Code changes from version 0.1.0 to 0.1.1

app/code/local/Biztech/Notification/Block/Adminhtml/Config/Form/Field/{Datepicker.php → Notificationdate.php} RENAMED
@@ -1,17 +1,6 @@
1
  <?php
2
- /**
3
- * Datepicker adminhtml configuration control 'model' based on the
4
- * Mage_Adminhtml_Block_Report_Config_Form_Field_YtdStart control.
5
- *
6
- * Use this control to add a Magento configuration Year Month Day selector,
7
- * configured in a system.xml as follows:
8
- *
9
- * <frontend_type>select</frontend_type>
10
- * <frontend_model>notification/adminhtml_config_form_field_datepicker</frontend_model>
11
- *
12
- */
13
-
14
- class Biztech_Notification_Block_Adminhtml_Config_Form_Field_Datepicker extends Mage_Adminhtml_Block_System_Config_Form_Field
15
  {
16
 
17
  protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
@@ -22,10 +11,9 @@
22
  }
23
 
24
  $_months = array(null => "Month");
 
25
  for ($i = 1; $i <= 12; $i++) {
26
- $_months[$i] = Mage::app()->getLocale()
27
- ->date(mktime(null,null,null,$i))
28
- ->get(Zend_date::MONTH_NAME);
29
  }
30
 
31
  $_days = array(null => "Day");
1
  <?php
2
+
3
+ class Biztech_Notification_Block_Adminhtml_Config_Form_Field_Notificationdate extends Mage_Adminhtml_Block_System_Config_Form_Field
 
 
 
 
 
 
 
 
 
 
 
4
  {
5
 
6
  protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
11
  }
12
 
13
  $_months = array(null => "Month");
14
+ $monthNames = array('January','February','March','April','May','June','July','August','September','October','November','December');
15
  for ($i = 1; $i <= 12; $i++) {
16
+ $_months[$i] = $monthNames[$i-1];
 
 
17
  }
18
 
19
  $_days = array(null => "Day");
app/code/local/Biztech/Notification/Block/Notification.php CHANGED
@@ -1,143 +1,112 @@
1
- <?php
2
- class Biztech_Notification_Block_Notification extends Mage_Core_Block_Template
3
- {
4
-
5
- const XML_PATH_NOTIFICATION_DISPLAY = 'notification/notification_general/display';
6
- const XML_PATH_NOTIFICATION_CONTENT = 'notification/notification_general/content';
7
- const XML_PATH_NOTIFICATION_CLEAR_CONTROL = 'notification/notification_general/clearcontrol';
8
- const XML_PATH_NOTIFICATION_IDENTIFIER = 'notification/notification_general/identifier';
9
- const XML_PATH_NOTIFICATION_FIXED = 'notification/notification_general/fixed';
10
- const XML_PATH_NOTIFICATION_START_DATE = 'notification/notification_general/start_date';
11
- const XML_PATH_NOTIFICATION_END_DATE = 'notification/notification_general/end_date';
12
-
13
- /**
14
- * Check if the notifications bar should be displayed
15
- *
16
- * @return boolean
17
- */
18
- public function showNotifications()
19
- {
20
- // notification bar enabled
21
- // AND bar is either not cleared OR bar is not allowed to be cleared
22
- // AND after start date
23
- // AND before end date
24
- return Mage::getStoreConfig(self::XML_PATH_NOTIFICATION_DISPLAY) &&
25
- $this->_hasNotificationContent() &&
26
- (!$this->isNotificationCleared() || !$this->allowClearControl()) &&
27
- $this->_afterStartDate() &&
28
- $this->_beforeEndDate();
29
- }
30
-
31
- /**
32
- * Fetches the notification bar content
33
- *
34
- * @return string
35
- */
36
- public function getNotificationText()
37
- {
38
- $content = Mage::getStoreConfig(self::XML_PATH_NOTIFICATION_CONTENT);
39
-
40
- $helper = Mage::helper('cms');
41
- if($helper) {
42
- $processor = $helper->getBlockTemplateProcessor();
43
- if($processor) {
44
- $content = $processor->filter($content);
45
- }
46
- }
47
-
48
- return $content;
49
- }
50
-
51
- /**
52
- * Returns true if there is notification content to display
53
- *
54
- * @return boolean
55
- */
56
- protected function _hasNotificationContent() {
57
- $content = $this->getNotificationText();
58
- return !empty($content);
59
- }
60
-
61
- /**
62
- * Returns true if the notification bar should be able to be closed/cleared
63
- *
64
- * @return boolean
65
- */
66
- public function allowClearControl() {
67
- return Mage::getStoreConfig(self::XML_PATH_NOTIFICATION_CLEAR_CONTROL);
68
- }
69
-
70
- /**
71
- * Returns the notification bar cookie name, which includes the current
72
- * notification bar identifier, if any.
73
- *
74
- * @return string
75
- */
76
- public function getNotificationClearCookieName() {
77
- return 'clear_notification'.preg_replace("/\W/", '', Mage::getStoreConfig(self::XML_PATH_NOTIFICATION_IDENTIFIER));
78
- }
79
-
80
- /**
81
- * Returns true if the currently identified notification bar has been cleared
82
- * by the client, false otherwise
83
- *
84
- * @return boolean
85
- */
86
- public function isNotificationCleared() {
87
- return Mage::getSingleton('core/cookie')->get($this->getNotificationClearCookieName());
88
- }
89
-
90
- /**
91
- * Return true if the notification bar should be fixed in place at the top
92
- *
93
- * @return boolean
94
- */
95
- public function isFixed() {
96
- return Mage::getStoreConfig(self::XML_PATH_NOTIFICATION_FIXED);
97
- }
98
-
99
- /**
100
- * Returns true if the notification bar should be displayed based on the
101
- * start_date.
102
- *
103
- * @return boolean true if either no start date is defined, or the current
104
- * date is after the start date, false otherwise.
105
- */
106
- protected function _afterStartDate() {
107
- list($year,$month,$day) = explode(',',Mage::getStoreConfig(self::XML_PATH_NOTIFICATION_START_DATE));
108
- $str = null;
109
- if($year) {
110
- $str .= $year;
111
- if($month) {
112
- $str .= "-".$month;
113
- if($day) $str .= "-".$day;
114
- }
115
-
116
- return time() >= strtotime($str); // current time is after the start date?
117
- }
118
- return true; // no start date set, so the notification bar is always on
119
- }
120
-
121
- /**
122
- * Returns true if the notification bar should be displayed based on the
123
- * end_date.
124
- *
125
- * @return boolean true if either no end date is defined, or the current
126
- * date is after the start date, false otherwise.
127
- */
128
- protected function _beforeEndDate() {
129
- list($year,$month,$day) = explode(',',Mage::getStoreConfig(self::XML_PATH_NOTIFICATION_END_DATE));
130
- $str = null;
131
- if($year) {
132
- $str .= $year;
133
- if($month) {
134
- $str .= "-".$month;
135
- if($day) $str .= "-".$day;
136
- }
137
-
138
- return time() < strtotime($str); // current time is before end date?
139
- }
140
- return true; // no end date set, so the notification bar is always on
141
- }
142
-
143
  }
1
+ <?php
2
+ class Biztech_Notification_Block_Notification extends Mage_Core_Block_Template
3
+ {
4
+ public function showNotifications()
5
+ {
6
+
7
+ if($this->getPosition() == 'popup')
8
+ {
9
+ return Mage::getStoreConfig('notification/notification_general/enabled') &&
10
+ $this->NotificationContent() &&
11
+ (!$this->isNotificationCleared() || $this->closeNotification()) &&
12
+ $this->afterStartDate() &&
13
+ $this->beforeEndDate();
14
+ }
15
+
16
+ if($this->getPosition() == 'bottom' || $this->getPosition() == 'top')
17
+ {
18
+ return Mage::getStoreConfig('notification/notification_general/enabled') &&
19
+ $this->NotificationContent() &&
20
+ (!$this->isNotificationCleared() || !$this->closeNotification()) &&
21
+ $this->afterStartDate() &&
22
+ $this->beforeEndDate();
23
+ }
24
+
25
+
26
+
27
+ }
28
+
29
+ public function getNotificationText()
30
+ {
31
+ $content = Mage::getStoreConfig('notification/notification_general/content');
32
+
33
+ $helper = Mage::helper('cms');
34
+ if($helper) {
35
+ $processor = $helper->getBlockTemplateProcessor();
36
+ if($processor) {
37
+ $content = $processor->filter($content);
38
+ }
39
+ }
40
+
41
+ return $content;
42
+ }
43
+
44
+
45
+ protected function NotificationContent() {
46
+ $content = $this->getNotificationText();
47
+ return !empty($content);
48
+ }
49
+
50
+
51
+ public function closeNotification() {
52
+ return Mage::getStoreConfig('notification/notification_general/close_notification');
53
+ }
54
+
55
+
56
+ public function getNotificationClearCookieName() {
57
+ return 'clear_notification'.preg_replace("/\W/", '', null);
58
+ }
59
+
60
+ /**
61
+ * Returns true if the currently identified notification bar has been cleared
62
+ * by the client.
63
+ *
64
+ * @return boolean
65
+ */
66
+ public function isNotificationCleared() {
67
+ return Mage::getSingleton('core/cookie')->get($this->getNotificationClearCookieName());
68
+ }
69
+
70
+ public function getPosition() {
71
+ return Mage::getStoreConfig('notification/notification_general/position');
72
+ }
73
+
74
+ /**
75
+ * @return boolean true if no start date is defined, or the current
76
+ * date is after the start date.
77
+ */
78
+ protected function afterStartDate() {
79
+ list($year,$month,$day) = explode(',',Mage::getStoreConfig('notification/notification_general/start_date'));
80
+ $str = null;
81
+ if($year) {
82
+ $str .= $year;
83
+ if($month) {
84
+ $str .= "-".$month;
85
+ if($day) $str .= "-".$day;
86
+ }
87
+
88
+ return time() >= strtotime($str);
89
+ }
90
+ return true;
91
+ }
92
+
93
+ /**
94
+ * @return boolean true if either no end date is defined, or the current
95
+ * date is after the start date, false otherwise.
96
+ */
97
+ protected function beforeEndDate() {
98
+ list($year,$month,$day) = explode(',',Mage::getStoreConfig('notification/notification_general/end_date'));
99
+ $str = null;
100
+ if($year) {
101
+ $str .= $year;
102
+ if($month) {
103
+ $str .= "-".$month;
104
+ if($day) $str .= "-".$day;
105
+ }
106
+
107
+ return time() < strtotime($str);
108
+ }
109
+ return true;
110
+ }
111
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
112
  }
app/code/local/Biztech/Notification/Block/Notificationdesign.php ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Biztech_Notification_Block_Notificationdesign extends Mage_Core_Block_Template
4
+ {
5
+
6
+ public function useDefaultStyles()
7
+ {
8
+ return Mage::getStoreConfig('notification/notification_general/default_style');
9
+ }
10
+
11
+ public function getPosition() {
12
+ return $this->_getNotificationBlock()->getPosition();
13
+ }
14
+
15
+
16
+ public function getBodyMargin() {
17
+ return Mage::getStoreConfig('notification/notification_general/body_margin');
18
+ }
19
+
20
+ public function showNotifications()
21
+ {
22
+ return $this->_getNotificationBlock()->showNotifications();
23
+ }
24
+
25
+ protected function _getNotificationBlock() {
26
+ return $this->getLayout()->getBlock('notification');
27
+ }
28
+ }
app/code/local/Biztech/Notification/Block/Styles.php DELETED
@@ -1,60 +0,0 @@
1
- <?php
2
- /**
3
- * @category Biztech
4
- * @package Biztech_Notification
5
- */
6
- class Biztech_Notification_Block_Styles extends Mage_Core_Block_Template
7
- {
8
- const XML_PATH_NOTIFICATION_DEFAULT_STYLE = 'notification/notification_general/default_style';
9
- const XML_PATH_NOTIFICATION_FIXED_MARGIN = 'notification/notification_general/fixed_margin';
10
- const XML_NOTIFICATION_BLOCK_NAME = 'notification';
11
-
12
- /**
13
- * Return true if the default styling should be used
14
- *
15
- * @return boolean
16
- */
17
- public function useDefaultStyles()
18
- {
19
- return Mage::getStoreConfig(self::XML_PATH_NOTIFICATION_DEFAULT_STYLE);
20
- }
21
-
22
- /**
23
- * Return true if the notification bar should be fixed in place at the top
24
- *
25
- * @return boolean
26
- */
27
- public function isFixed() {
28
- return $this->_getNotificationBlock()->isFixed();
29
- }
30
-
31
- /**
32
- * Returns the top margin value to apply to the body element when the
33
- * notification bar is fixed in place
34
- *
35
- * @return string
36
- */
37
- public function getFixedMargin() {
38
- return Mage::getStoreConfig(self::XML_PATH_NOTIFICATION_FIXED_MARGIN);
39
- }
40
-
41
- /**
42
- * Check if the notifications bar should be displayed
43
- *
44
- * @return boolean
45
- */
46
- public function showNotifications()
47
- {
48
- return $this->_getNotificationBlock()->showNotifications();
49
- }
50
-
51
- /**
52
- * Return the notification bar block object, which is used to query the
53
- * state of the notification bar configurations
54
- *
55
- * @return Biztech_NotificationBar_Block_Html_Notifications
56
- */
57
- protected function _getNotificationBlock() {
58
- return $this->getLayout()->getBlock(self::XML_NOTIFICATION_BLOCK_NAME);
59
- }
60
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/code/local/Biztech/Notification/Helper/Data.php CHANGED
@@ -1,6 +1,6 @@
1
- <?php
2
-
3
- class Biztech_Notification_Helper_Data extends Mage_Core_Helper_Abstract
4
- {
5
-
6
  }
1
+ <?php
2
+
3
+ class Biztech_Notification_Helper_Data extends Mage_Core_Helper_Abstract
4
+ {
5
+
6
  }
app/code/local/Biztech/Notification/Model/System/{Positionnotification.php → Notificationposition.php} RENAMED
@@ -1,46 +1,46 @@
1
- <?php
2
- /**
3
- * Magento
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 license@magentocommerce.com so we can send you a copy immediately.
14
- *
15
- * DISCLAIMER
16
- *
17
- * Do not edit or add to this file if you wish to upgrade Magento to newer
18
- * versions in the future. If you wish to customize Magento for your
19
- * needs please refer to http://www.magentocommerce.com for more information.
20
- *
21
- * @category Mage
22
- * @package Mage_Adminhtml
23
- * @copyright Copyright (c) 2013 Magento Inc. (http://www.magentocommerce.com)
24
- * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
- */
26
-
27
- /**
28
- * Used in creating options for Yes|No config value selection
29
- *
30
- */
31
- class Biztech_Notification_Model_System_Positionnotification
32
- {
33
- /**
34
- * Options getter
35
- *
36
- * @return array
37
- */
38
- public function toOptionArray()
39
- {
40
- return array(
41
- array('value' => 0, 'label' => 'Bottom'),
42
- array('value' => 1, 'label' => 'Top'),
43
- array('value' => 2, 'label' => 'Pop Up'),
44
- );
45
- }
46
- }
1
+ <?php
2
+ /**
3
+ * Magento
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 license@magentocommerce.com so we can send you a copy immediately.
14
+ *
15
+ * DISCLAIMER
16
+ *
17
+ * Do not edit or add to this file if you wish to upgrade Magento to newer
18
+ * versions in the future. If you wish to customize Magento for your
19
+ * needs please refer to http://www.magentocommerce.com for more information.
20
+ *
21
+ * @category Mage
22
+ * @package Mage_Adminhtml
23
+ * @copyright Copyright (c) 2013 Magento Inc. (http://www.magentocommerce.com)
24
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
25
+ */
26
+
27
+ /**
28
+ * Used in creating options for Yes|No config value selection
29
+ *
30
+ */
31
+ class Biztech_Notification_Model_System_Notificationposition
32
+ {
33
+ /**
34
+ * Options getter
35
+ *
36
+ * @return array
37
+ */
38
+ public function toOptionArray()
39
+ {
40
+ return array(
41
+ array('value' => 'bottom', 'label' => 'Bottom'),
42
+ array('value' => 'top', 'label' => 'Top'),
43
+ array('value' => 'popup', 'label' => 'Pop Up'),
44
+ );
45
+ }
46
+ }
app/code/local/Biztech/Notification/etc/config.xml CHANGED
@@ -10,7 +10,7 @@
10
  <config>
11
  <modules>
12
  <Biztech_Notification>
13
- <version>0.1.0</version>
14
  </Biztech_Notification>
15
  </modules>
16
  <frontend>
@@ -61,11 +61,11 @@
61
  </global>
62
  <default>
63
  <notification>
64
- <display>0</display>
65
- <clearcontrol>0</clearcontrol>
66
  <default_style>1</default_style>
67
- <fixed>1</fixed>
68
- <fixed_margin>28px</fixed_margin>
69
  </notification>
70
  </default>
71
  <adminhtml>
10
  <config>
11
  <modules>
12
  <Biztech_Notification>
13
+ <version>0.1.1</version>
14
  </Biztech_Notification>
15
  </modules>
16
  <frontend>
61
  </global>
62
  <default>
63
  <notification>
64
+ <enabled>0</enabled>
65
+ <close_notification>0</close_notification>
66
  <default_style>1</default_style>
67
+ <position>1</position>
68
+ <body_margin>30px</body_margin>
69
  </notification>
70
  </default>
71
  <adminhtml>
app/code/local/Biztech/Notification/etc/system.xml CHANGED
@@ -24,18 +24,18 @@
24
  <show_in_website>1</show_in_website>
25
  <show_in_store>1</show_in_store>
26
  <fields>
27
- <display translate="label">
28
- <label>Notification Enabled</label>
29
  <frontend_type>select</frontend_type>
30
  <source_model>adminhtml/system_config_source_yesno</source_model>
31
  <sort_order>10</sort_order>
32
  <show_in_default>1</show_in_default>
33
  <show_in_website>1</show_in_website>
34
  <show_in_store>1</show_in_store>
35
- </display>
36
  <default_style translate="label comment">
37
- <label>Include Default Styling</label>
38
- <comment>Disabling this allows you to more easily style the notification bar to match your theme</comment>
39
  <frontend_type>select</frontend_type>
40
  <source_model>adminhtml/system_config_source_yesno</source_model>
41
  <sort_order>20</sort_order>
@@ -52,22 +52,22 @@
52
  <show_in_website>1</show_in_website>
53
  <show_in_store>1</show_in_store>
54
  </content>
55
- <clearcontrol translate="label comment">
56
- <label>Allow Notification to be Closed</label>
57
- <comment>Enabling this will allow the user to close the notification bar</comment>
58
  <frontend_type>select</frontend_type>
59
  <source_model>adminhtml/system_config_source_yesno</source_model>
60
  <sort_order>40</sort_order>
61
  <show_in_default>1</show_in_default>
62
  <show_in_website>1</show_in_website>
63
  <show_in_store>1</show_in_store>
64
- </clearcontrol>
65
 
66
  <start_date translate="label comment">
67
  <label>Start Date</label>
68
- <comment>Optional date to start displaying the notification bar</comment>
69
  <frontend_type>select</frontend_type>
70
- <frontend_model>notification/adminhtml_config_form_field_datepicker</frontend_model>
71
  <sort_order>60</sort_order>
72
  <show_in_default>1</show_in_default>
73
  <show_in_website>1</show_in_website>
@@ -75,42 +75,42 @@
75
  </start_date>
76
  <end_date translate="label comment">
77
  <label>End Date</label>
78
- <comment>Optional date to stop displaying the notification bar</comment>
79
  <frontend_type>select</frontend_type>
80
- <frontend_model>notification/adminhtml_config_form_field_datepicker</frontend_model>
81
  <sort_order>70</sort_order>
82
  <show_in_default>1</show_in_default>
83
  <show_in_website>1</show_in_website>
84
  <show_in_store>1</show_in_store>
85
  </end_date>
86
- <fixed translate="label comment">
87
- <label>Position Notification Bar</label>
88
- <comment>Change Notification Bar Positions as per your preferences.</comment>
89
  <frontend_type>select</frontend_type>
90
- <source_model>notification/system_positionnotification</source_model>
91
  <sort_order>80</sort_order>
92
  <show_in_default>1</show_in_default>
93
  <show_in_website>1</show_in_website>
94
  <show_in_store>1</show_in_store>
95
- </fixed>
96
  <popup_title translate="label comment">
97
  <label>Notification Bar Popup Title</label>
98
- <comment>Set Title only when you have selected "Pop Up" for Position Notification Bar field.</comment>
99
  <frontend_type>text</frontend_type>
100
  <sort_order>90</sort_order>
101
  <show_in_default>1</show_in_default>
102
  <show_in_website>1</show_in_website>
103
  <show_in_store>1</show_in_store>
104
  </popup_title>
105
- <fixed_margin translate="label comment">
106
  <label>Fixed Body Margin</label>
107
- <comment>Used only when Fixed Notification Bar is at Top; this must be the height of the notification bar, in CSS units. Ex. 50px</comment>
108
  <frontend_type>text</frontend_type>
109
  <sort_order>100</sort_order>
110
  <show_in_default>1</show_in_default>
111
  <show_in_website>1</show_in_website>
112
  <show_in_store>1</show_in_store>
113
- </fixed_margin>
114
  </fields>
115
  </notification_general>
116
  </groups>
24
  <show_in_website>1</show_in_website>
25
  <show_in_store>1</show_in_store>
26
  <fields>
27
+ <enabled translate="label">
28
+ <label>Enabled</label>
29
  <frontend_type>select</frontend_type>
30
  <source_model>adminhtml/system_config_source_yesno</source_model>
31
  <sort_order>10</sort_order>
32
  <show_in_default>1</show_in_default>
33
  <show_in_website>1</show_in_website>
34
  <show_in_store>1</show_in_store>
35
+ </enabled>
36
  <default_style translate="label comment">
37
+ <label>Default Style</label>
38
+ <comment>Select No to set Notification Bar style more easily to match your theme.</comment>
39
  <frontend_type>select</frontend_type>
40
  <source_model>adminhtml/system_config_source_yesno</source_model>
41
  <sort_order>20</sort_order>
52
  <show_in_website>1</show_in_website>
53
  <show_in_store>1</show_in_store>
54
  </content>
55
+ <close_notification translate="label comment">
56
+ <label>Close Notification?</label>
57
+ <comment>Select Yes to allow user to close Notification Bar.</comment>
58
  <frontend_type>select</frontend_type>
59
  <source_model>adminhtml/system_config_source_yesno</source_model>
60
  <sort_order>40</sort_order>
61
  <show_in_default>1</show_in_default>
62
  <show_in_website>1</show_in_website>
63
  <show_in_store>1</show_in_store>
64
+ </close_notification>
65
 
66
  <start_date translate="label comment">
67
  <label>Start Date</label>
68
+ <comment>Choose date for Notification Bar to start displaying</comment>
69
  <frontend_type>select</frontend_type>
70
+ <frontend_model>notification/adminhtml_config_form_field_notificationdate</frontend_model>
71
  <sort_order>60</sort_order>
72
  <show_in_default>1</show_in_default>
73
  <show_in_website>1</show_in_website>
75
  </start_date>
76
  <end_date translate="label comment">
77
  <label>End Date</label>
78
+ <comment>Choose date for Notification Bar to stop displaying</comment>
79
  <frontend_type>select</frontend_type>
80
+ <frontend_model>notification/adminhtml_config_form_field_notificationdate</frontend_model>
81
  <sort_order>70</sort_order>
82
  <show_in_default>1</show_in_default>
83
  <show_in_website>1</show_in_website>
84
  <show_in_store>1</show_in_store>
85
  </end_date>
86
+ <position translate="label comment">
87
+ <label>Notification Bar Position</label>
88
+ <comment>Select Notification Bar Positions as per your preferences.</comment>
89
  <frontend_type>select</frontend_type>
90
+ <source_model>notification/system_notificationposition</source_model>
91
  <sort_order>80</sort_order>
92
  <show_in_default>1</show_in_default>
93
  <show_in_website>1</show_in_website>
94
  <show_in_store>1</show_in_store>
95
+ </position>
96
  <popup_title translate="label comment">
97
  <label>Notification Bar Popup Title</label>
98
+ <comment>Set Title only when you have selected "Pop Up" for Notification Bar Position field.</comment>
99
  <frontend_type>text</frontend_type>
100
  <sort_order>90</sort_order>
101
  <show_in_default>1</show_in_default>
102
  <show_in_website>1</show_in_website>
103
  <show_in_store>1</show_in_store>
104
  </popup_title>
105
+ <body_margin translate="label comment">
106
  <label>Fixed Body Margin</label>
107
+ <comment>Used only when Notification Bar Position is at Top; this must be the height of the notification bar, in CSS units. Ex. 50px</comment>
108
  <frontend_type>text</frontend_type>
109
  <sort_order>100</sort_order>
110
  <show_in_default>1</show_in_default>
111
  <show_in_website>1</show_in_website>
112
  <show_in_store>1</show_in_store>
113
+ </body_margin>
114
  </fields>
115
  </notification_general>
116
  </groups>
app/design/frontend/default/default/layout/notification.xml CHANGED
@@ -1,11 +1,11 @@
1
- <?xml version="1.0"?>
2
- <layout version="0.1.0">
3
- <default>
4
- <reference name="head">
5
- <block type="notification/styles" name="notification_bar_style" as="notification_bar_style" template="notification/styles.phtml" />
6
- </reference>
7
- <reference name="after_body_start">
8
- <block type="notification/notification" name="notification" template="notification/notification.phtml" />
9
- </reference>
10
- </default>
11
  </layout>
1
+ <?xml version="1.0"?>
2
+ <layout version="0.1.0">
3
+ <default>
4
+ <reference name="head">
5
+ <block type="notification/notificationdesign" name="notification_design" as="notification_design" template="notification/notificationdesign.phtml" />
6
+ </reference>
7
+ <reference name="after_body_start">
8
+ <block type="notification/notification" name="notification" template="notification/notification.phtml" />
9
+ </reference>
10
+ </default>
11
  </layout>
app/design/frontend/default/default/template/notification/notification.phtml CHANGED
@@ -1,43 +1,55 @@
1
- <?php
2
- /**
3
- * @category Biztech
4
- * @package Biztech_Notification
5
- */
6
- ?>
7
- <?php if ($this->showNotifications()): ?>
8
- <div class="bg-overlay">
9
- <?php
10
- $position = Mage::getStoreConfig('notification/notification_general/fixed');
11
- if($position==1){ ?>
12
- <div id="notification-bar" class="top"><div id="notification"><span class="notification-content"><?php echo $this->getNotificationText(); ?></span><?php if($this->allowClearControl()) : ?>
13
- <span class="close"><img src="<?php echo $this->getSkinUrl('notification/images/close-note.png') ?>" /></span><?php endif; ?></div></div>
14
- <?php }
15
-
16
- elseif($position==0) { ?>
17
- <div id="notification-bar" class="bottom"><div id="notification"><span class="notification-content"><?php echo $this->getNotificationText(); ?></span><?php if($this->allowClearControl()) : ?><span class="close"><img src="<?php echo $this->getSkinUrl('notification/images/close-note.png') ?>" /></span><?php endif; ?></div></div>
18
- <?php }
19
-
20
- else{ ?>
21
- <div class="center-align">
22
- <div class="close"></div>
23
- <div class="pop-title">
24
- <?php echo Mage::getStoreConfig('notification/notification_general/popup_title'); ?>
25
- </div>
26
- <div class="popup-container"><?php echo $this->getNotificationText(); ?></div>
27
- </div>
28
- <?php } ?>
29
-
30
- <?php if($this->allowClearControl()) : ?>
31
- <script type="text/javascript">
32
- $$('.bg-overlay .close').first().observe('click',function(event) {
33
- var callback = <?php echo ($this->isFixed() ? "function() { \$\$('body').first().setStyle({marginTop:0}); }" : "function(){}") ?>;
34
- event.element().up('.bg-overlay').fade({duration:0.5, afterFinish:callback});
35
- Mage.Cookies.set("<?php echo $this->getNotificationClearCookieName() ?>","1",new Date((new Date()).getTime() + 365*24*60*60*1000),"/");
36
-
37
- });
38
- $$('.center-align')[0].style.height = $$('.pop-title')[0].clientHeight+$$('.popup-container')[0].clientHeight +'px';
39
- </script>
40
- </div>
41
- <?php endif; ?>
42
- <?php endif; ?>
43
-
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ <?php if ($this->showNotifications()): ?>
3
+ <div class="bg-overlay">
4
+ <?php
5
+ $position = Mage::getStoreConfig('notification/notification_general/position');
6
+ if ($position == 'top') {
7
+ ?>
8
+ <div id="notification-bar" class="top"><div id="notification"><span class="notification-content"><?php echo $this->getNotificationText(); ?></span><?php if ($this->closeNotification()) : ?>
9
+ <span class="close"><img src="<?php echo $this->getSkinUrl('notification/images/close-note.png') ?>" /></span><?php endif; ?></div></div>
10
+ <?php }
11
+
12
+ elseif ($position == 'bottom') {
13
+ ?>
14
+ <div id="notification-bar" class="bottom"><div id="notification"><span class="notification-content"><?php echo $this->getNotificationText(); ?></span><?php if ($this->closeNotification()) : ?><span class="close"><img src="<?php echo $this->getSkinUrl('notification/images/close-note.png') ?>" /></span><?php endif; ?></div></div>
15
+ <?php }
16
+
17
+ else {
18
+ ?>
19
+
20
+ <div class="center-align">
21
+ <div class="close"></div>
22
+ <div class="pop-title">
23
+ <?php echo Mage::getStoreConfig('notification/notification_general/popup_title'); ?>
24
+ </div>
25
+ <div class="popup-container"><?php echo $this->getNotificationText(); ?></div>
26
+ </div>
27
+
28
+
29
+ <?php if (!$this->closeNotification()) : ?>
30
+ <script type="text/javascript">
31
+ $$('.bg-overlay .close').first().observe('click', function(event) {
32
+ var callback = <?php echo ($this->getPosition() ? "function() { \$\$('body').first().setStyle({marginTop:0}); }" : "function(){}") ?>;
33
+ event.element().up('.bg-overlay').fade({duration: 0.5, afterFinish: callback});
34
+ Mage.Cookies.set("<?php echo $this->getNotificationClearCookieName() ?>", "1", new Date((new Date()).getTime() + 365 * 24 * 60 * 60 * 1000), "/");
35
+ });
36
+ </script>
37
+ <?php endif; ?>
38
+ <script type="text/javascript">
39
+ $$('.center-align')[0].style.height = $$('.pop-title')[0].clientHeight + $$('.popup-container')[0].clientHeight + 'px';
40
+ </script>
41
+ <?php } ?>
42
+ </div>
43
+ <?php if ($this->closeNotification()) : ?>
44
+ <script type="text/javascript">
45
+ $$('.bg-overlay .close').first().observe('click', function(event) {
46
+ var callback = <?php echo ($this->getPosition() ? "function() { \$\$('body').first().setStyle({marginTop:0}); }" : "function(){}") ?>;
47
+ event.element().up('.bg-overlay').fade({duration: 0.5, afterFinish: callback});
48
+ Mage.Cookies.set("<?php echo $this->getNotificationClearCookieName() ?>", "1", new Date((new Date()).getTime() + 365 * 24 * 60 * 60 * 1000), "/");
49
+
50
+ });
51
+
52
+ </script>
53
+ <?php endif; ?>
54
+ <?php endif; ?>
55
+
app/design/frontend/default/default/template/notification/{styles.phtml → notificationdesign.phtml} RENAMED
@@ -1,55 +1,48 @@
1
- <?php
2
- /**
3
- * @see Biztech_Notification_Block_Html_Styles
4
- */
5
- ?>
6
- <?php if($this->showNotifications()) { ?>
7
- <?php if($this->useDefaultStyles() || $this->isFixed()) { ?>
8
  <style type="text/css">
9
- <?php } ?>
10
- <?php if($this->useDefaultStyles()) { ?>
11
- <?php /*
12
- #notification-bar { text-align:center;background-color:#c2c2c1;color:black;line-height:normal;padding:7px 0;}
13
- */ ?>
14
- #notification-bar.bottom { background: none repeat scroll 0 0 #C2C2C1; bottom: 0; color: #000; font-size: 12px;left: -2px; line-height:20px;opacity:0.9; filter:alpha(opacity=90); position: fixed; text-align: center; width: 100%; z-index: 1000;}
15
  #notification-bar #notification { width:950px; margin:0 auto; text-align:center; position:relative; padding:16px 0px ;}
16
  #notification-bar span.close {cursor: pointer; position:absolute; right:0px; text-decoration: none; top:14px; }
17
  #notification-bar span.close img { vertical-align:middle;}
18
  #notification-bar .close a { text-decoration: none; color: #ffffff; }
19
  #notification-bar .close a:hover { text-decoration: none; }
20
- <?php } ?>
21
- <?php if($this->isFixed()) { ?>
22
- <?php if($this->isFixed()!=2) { ?>
 
 
 
 
23
  #notification-bar.top { position: fixed;top: 0; width: 100%; left:0px;z-index: 100; background: none repeat scroll 0 0 #C2C2C1; color: #000; font-size: 12px; opacity:0.9; filter:alpha(opacity=90); / }
24
- body { margin-top: <?php echo $this->getFixedMargin() ?>; }
25
- <?php }
26
- else{ ?>
27
- /* #notification-bar { position: fixed;left:50%; top: 250px; margin-left:-300px; width:600px;z-index: 100;border-bottom: 1px solid black; border:3px solid #afafae; background:#fff; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;}
28
- #notification-bar #notification { width:600px; }
29
- #notification-bar span.notification-close { right: -16px; top: -17px;}
30
- .overlay-bg { display: block; position: absolute; top: 0; left: 0; height:100%; width: 100%; cursor: pointer; z-index: 1000; background: #000;opacity:0.7; filter:alpha(opacity=70); }*/
31
- /* popup css */
32
  .bg-overlay{background:url(<?php echo $this->getSkinUrl('/notification/images/overlay.png') ?>) 0 0 repeat; height: 100%; left: 0; position: fixed; top: 0; width: 100%; z-index: 99;}
33
  .bg-overlay .center-align{ background: #FFFFFF; border: 5px solid #E5E4DD; left:0; top:0; margin: auto; *margin: 20% auto 0 auto; position: absolute; *position: static; right: 0; bottom: 0; text-align: center;width: 645px; }
34
  .bg-overlay .center-align .pop-title{background: none repeat scroll 0 0 #F4F4F4; border-bottom: 1px solid #EBEBEB; font-size: 14px; font-weight: bold; padding:6px 15px; text-align:left;}
35
  .bg-overlay .center-align button{ *margin:0 3px;}
36
- .bg-overlay .center-align .popup-container { padding: 15px;}
37
  .bg-overlay .close{ background:url(<?php echo $this->getSkinUrl('/notification/images/closebox.png') ?>) 0 0 no-repeat; position: absolute; width: 30px; height: 30px; top:-18px; right:-18px; cursor:pointer;}
38
- <?php
39
- }
40
- } ?>
41
- <?php if($this->useDefaultStyles() || $this->isFixed()){ ?>
 
42
  </style>
43
- <?php } ?>
44
  <?php } ?>
 
45
 
46
- <script type="text/javascript">
47
-
48
- function popupwindow(w, h) {
49
- var left = (screen.width/2)-(w/2);
50
- var top = (screen.height/2)-(h/2);
51
- return window.open(url, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width='+w+', height='+h+', top='+top+', left='+left);
52
- }
53
- popupwindow();
54
-
55
- </script>
1
+ <?php if ($this->showNotifications()) { ?>
2
+ <?php if ($this->useDefaultStyles() || $this->getPosition()) { ?>
 
 
 
 
 
3
  <style type="text/css">
4
+
5
+ <?php } ?>
6
+ <?php if ($this->useDefaultStyles()) { ?>
7
+
 
 
8
  #notification-bar #notification { width:950px; margin:0 auto; text-align:center; position:relative; padding:16px 0px ;}
9
  #notification-bar span.close {cursor: pointer; position:absolute; right:0px; text-decoration: none; top:14px; }
10
  #notification-bar span.close img { vertical-align:middle;}
11
  #notification-bar .close a { text-decoration: none; color: #ffffff; }
12
  #notification-bar .close a:hover { text-decoration: none; }
13
+
14
+ <?php } ?>
15
+ <?php if ($this->getPosition()) { ?>
16
+ <?php if ($this->getPosition() == 'bottom') { ?>
17
+ #notification-bar.bottom { background: none repeat scroll 0 0 #C2C2C1; bottom: 0; color: #000; font-size: 12px;left: -2px; line-height:20px;opacity:0.9; filter:alpha(opacity=90); position: fixed; text-align: center; width: 100%; z-index: 1000;}
18
+ <?php } ?>
19
+ <?php if ($this->getPosition() == 'top') { ?>
20
  #notification-bar.top { position: fixed;top: 0; width: 100%; left:0px;z-index: 100; background: none repeat scroll 0 0 #C2C2C1; color: #000; font-size: 12px; opacity:0.9; filter:alpha(opacity=90); / }
21
+ body { margin-top: <?php echo $this->getBodyMargin() ?>; }
22
+ <?php }
23
+ if($this->getPosition() == 'popup') {
24
+ ?>
25
+
 
 
 
26
  .bg-overlay{background:url(<?php echo $this->getSkinUrl('/notification/images/overlay.png') ?>) 0 0 repeat; height: 100%; left: 0; position: fixed; top: 0; width: 100%; z-index: 99;}
27
  .bg-overlay .center-align{ background: #FFFFFF; border: 5px solid #E5E4DD; left:0; top:0; margin: auto; *margin: 20% auto 0 auto; position: absolute; *position: static; right: 0; bottom: 0; text-align: center;width: 645px; }
28
  .bg-overlay .center-align .pop-title{background: none repeat scroll 0 0 #F4F4F4; border-bottom: 1px solid #EBEBEB; font-size: 14px; font-weight: bold; padding:6px 15px; text-align:left;}
29
  .bg-overlay .center-align button{ *margin:0 3px;}
30
+ .bg-overlay .center-align .popup-container { padding: 15px;}
31
  .bg-overlay .close{ background:url(<?php echo $this->getSkinUrl('/notification/images/closebox.png') ?>) 0 0 no-repeat; position: absolute; width: 30px; height: 30px; top:-18px; right:-18px; cursor:pointer;}
32
+ <?php
33
+ }
34
+ }
35
+ ?>
36
+ <?php if ($this->useDefaultStyles() || $this->getPosition()) { ?>
37
  </style>
 
38
  <?php } ?>
39
+ <?php } ?>
40
 
41
+ <script type="text/javascript">
42
+ function popupwindow(w, h) {
43
+ var left = (screen.width / 2) - (w / 2);
44
+ var top = (screen.height / 2) - (h / 2);
45
+ return window.open(url, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no, width=' + w + ', height=' + h + ', top=' + top + ', left=' + left);
46
+ }
47
+ popupwindow();
48
+ </script>
 
 
app/etc/modules/Biztech_Notification.xml CHANGED
@@ -6,12 +6,12 @@
6
  * @author ModuleCreator
7
  * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
8
  */
9
- -->
10
- <config>
11
- <modules>
12
- <Biztech_Notification>
13
- <active>true</active>
14
- <codePool>local</codePool>
15
- </Biztech_Notification>
16
- </modules>
17
  </config>
6
  * @author ModuleCreator
7
  * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
8
  */
9
+ -->
10
+ <config>
11
+ <modules>
12
+ <Biztech_Notification>
13
+ <active>true</active>
14
+ <codePool>local</codePool>
15
+ </Biztech_Notification>
16
+ </modules>
17
  </config>
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>notification_module</name>
4
- <version>0.1.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
7
  <channel>community</channel>
@@ -17,11 +17,11 @@ Features&#xD;
17
  &#x2022; Optionally allow visitors to close and dismiss the notification bar&#xD;
18
  &#x2022; Optionally set a notification start date, to set your message to automatically display on a specified date, and also set a notification end date, to hide your message automatically after this specific date &#xD;
19
  &#x2022; You can also fix the notification bar at the top of the browser, at the bottom and also can make it appear as pop up! Interesting part is that in pop up option you can set your own title also for the notification, so that it scrolls with the page, and remains always visible to the visitor (although visitor can close it anytime)!</description>
20
- <notes>-New Release</notes>
21
  <authors><author><name>Biztech</name><user>biztechcon</user><email>sales@biztechconsultancy.com</email></author></authors>
22
- <date>2014-05-17</date>
23
- <time>12:33:34</time>
24
- <contents><target name="mageetc"><dir name="modules"><file name="Biztech_Notification.xml" hash="72d08fbf6eae50adedea827e5ac397d8"/><file name="Biztech_All.xml" hash="f4c3b9c029e56da8f09d7d71336c00f7"/></dir></target><target name="magelocal"><dir name="Biztech"><dir name="Notification"><dir name="Block"><dir name="Adminhtml"><dir name="Config"><dir name="Form"><dir name="Field"><file name="Datepicker.php" hash="d6341935aebfefd1082ad1eadb9459b0"/></dir></dir></dir></dir><file name="Notification.php" hash="db1ddac19ad0bf744418e6907e584fff"/><file name="Styles.php" hash="712088b7fa18a4726a136b37a64e7c22"/></dir><dir name="Helper"><file name="Data.php" hash="0017f0f712dc940360c1e7c675f440c2"/></dir><dir name="Model"><dir name="System"><file name="Positionnotification.php" hash="97869c1724b138fca4f3b891379baf31"/></dir></dir><dir name="etc"><file name="config.xml" hash="6989680496ee4a1a7a1cf717f369689d"/><file name="system.xml" hash="21a598102bd8f14c9743eafd23334acd"/></dir></dir><dir name="All"><dir name="Helper"><file name="Data.php" hash="e856726fd089e7f73ca7de450b696419"/></dir><dir name="Model"><file name="All.php" hash="a9aeeb9c6d7be9cf20414f405efc878d"/><dir name="Mysql4"><dir name="All"><file name="Collection.php" hash="a1909236183d126f38e628b85bb57e81"/></dir><file name="All.php" hash="f02542393eb26eadfb9b92d901d2ac12"/></dir><dir name="Source"><dir name="Updates"><file name="Type.php" hash="fa695bf4764c2d93c7436ed54bde89ba"/></dir></dir><file name="Status.php" hash="30a6f0da7d9d45e1082da532d5f8dabc"/><file name="Update.php" hash="83ceddbab4d621545b9c7c4bccdec7c0"/></dir><dir name="etc"><file name="config.xml" hash="27e403cedb861da03753d28527d9c664"/><file name="system.xml" hash="17262087dc933d934e09ac04cafb4c51"/></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="default"><dir name="default"><dir name="layout"><file name="notification.xml" hash="37fcf25a8279fb5cff5f2838188de7f0"/></dir><dir name="template"><dir name="notification"><file name="notification.phtml" hash="25bd2b1bde0970a3149e8d72cf06d31b"/><file name="styles.phtml" hash="e519e6127e53d822156acd1bb4947055"/></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="default"><dir name="default"><dir name="notification"><dir name="images"><file name="close-note.png" hash="d4511392715a554859c06430eb445b28"/><file name="closebox.png" hash="f2aace763cfcc4d6f3427a8a0842e55c"/><file name="overlay.png" hash="28d610442e36fb2a71773eeb013c3660"/></dir></dir></dir></dir></dir></target></contents>
25
  <compatible/>
26
  <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
27
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>notification_module</name>
4
+ <version>0.1.1</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
7
  <channel>community</channel>
17
  &#x2022; Optionally allow visitors to close and dismiss the notification bar&#xD;
18
  &#x2022; Optionally set a notification start date, to set your message to automatically display on a specified date, and also set a notification end date, to hide your message automatically after this specific date &#xD;
19
  &#x2022; You can also fix the notification bar at the top of the browser, at the bottom and also can make it appear as pop up! Interesting part is that in pop up option you can set your own title also for the notification, so that it scrolls with the page, and remains always visible to the visitor (although visitor can close it anytime)!</description>
20
+ <notes>-Bug Fixing</notes>
21
  <authors><author><name>Biztech</name><user>biztechcon</user><email>sales@biztechconsultancy.com</email></author></authors>
22
+ <date>2014-10-16</date>
23
+ <time>11:20:21</time>
24
+ <contents><target name="mageetc"><dir name="modules"><file name="Biztech_Notification.xml" hash="0067858c3ce32fc8773c4d640929d4e1"/><file name="Biztech_All.xml" hash="f4c3b9c029e56da8f09d7d71336c00f7"/></dir></target><target name="magelocal"><dir name="Biztech"><dir name="Notification"><dir name="Block"><dir name="Adminhtml"><dir name="Config"><dir name="Form"><dir name="Field"><file name="Notificationdate.php" hash="7d03a8c9fce098b6bfb556358b50805d"/></dir></dir></dir></dir><file name="Notification.php" hash="97e1d6548aeff4bc68543f59827b31f8"/><file name="Notificationdesign.php" hash="301308a9d296f8c9431576a4c7172f3b"/></dir><dir name="Helper"><file name="Data.php" hash="9016e11b629c4f6ee5b075bdc0774101"/></dir><dir name="Model"><dir name="System"><file name="Notificationposition.php" hash="ce9dd64b3029df7531c59c92d7949dbf"/></dir></dir><dir name="etc"><file name="config.xml" hash="b9dd32d0d9e1eab9a9191f129827a5d3"/><file name="system.xml" hash="3d98bbcdb268390de67103016843f436"/></dir></dir><dir name="All"><dir name="Helper"><file name="Data.php" hash="e856726fd089e7f73ca7de450b696419"/></dir><dir name="Model"><file name="All.php" hash="a9aeeb9c6d7be9cf20414f405efc878d"/><dir name="Mysql4"><dir name="All"><file name="Collection.php" hash="a1909236183d126f38e628b85bb57e81"/></dir><file name="All.php" hash="f02542393eb26eadfb9b92d901d2ac12"/></dir><dir name="Source"><dir name="Updates"><file name="Type.php" hash="fa695bf4764c2d93c7436ed54bde89ba"/></dir></dir><file name="Status.php" hash="30a6f0da7d9d45e1082da532d5f8dabc"/><file name="Update.php" hash="83ceddbab4d621545b9c7c4bccdec7c0"/></dir><dir name="etc"><file name="config.xml" hash="27e403cedb861da03753d28527d9c664"/><file name="system.xml" hash="17262087dc933d934e09ac04cafb4c51"/></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="default"><dir name="default"><dir name="layout"><file name="notification.xml" hash="0e206c5421f931f4041205fc8a5ffafc"/></dir><dir name="template"><dir name="notification"><file name="notification.phtml" hash="f684c422fa14e77544d9c8fd0295e793"/><file name="notificationdesign.phtml" hash="88a85cf78390f1db994557dfa29097d7"/></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="default"><dir name="default"><dir name="notification"><dir name="images"><file name="close-note.png" hash="d4511392715a554859c06430eb445b28"/><file name="closebox.png" hash="f2aace763cfcc4d6f3427a8a0842e55c"/><file name="overlay.png" hash="28d610442e36fb2a71773eeb013c3660"/></dir></dir></dir></dir></dir></target></contents>
25
  <compatible/>
26
  <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
27
  </package>