ecommerceoffice_megamenusidebar - Version 1.0.0

Version Notes

1.0.0

Download this release

Release Info

Developer Magento Core Team
Extension ecommerceoffice_megamenusidebar
Version 1.0.0
Comparing to
See all releases


Version 1.0.0

Files changed (79) hide show
  1. app/code/community/Ip/Megamenusidebar/Block/Admin/Category.php +23 -0
  2. app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Edit.php +58 -0
  3. app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Edit/Form.php +52 -0
  4. app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Edit/Tab/Form.php +153 -0
  5. app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Edit/Tab/Other.php +84 -0
  6. app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Edit/Tabs.php +35 -0
  7. app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Grid.php +181 -0
  8. app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Grid/Renderer/Action.php +32 -0
  9. app/code/community/Ip/Megamenusidebar/Block/Admin/Item.php +23 -0
  10. app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Edit.php +58 -0
  11. app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Edit/Form.php +52 -0
  12. app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Edit/Tab/Form.php +179 -0
  13. app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Edit/Tab/Other.php +34 -0
  14. app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Edit/Tabs.php +35 -0
  15. app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Grid.php +181 -0
  16. app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Grid/Renderer/Action.php +32 -0
  17. app/code/community/Ip/Megamenusidebar/Block/Developer.php +65 -0
  18. app/code/community/Ip/Megamenusidebar/Block/Info.php +35 -0
  19. app/code/community/Ip/Megamenusidebar/Block/Navigation.php +250 -0
  20. app/code/community/Ip/Megamenusidebar/Helper/Data.php +98 -0
  21. app/code/community/Ip/Megamenusidebar/Model/Category.php +20 -0
  22. app/code/community/Ip/Megamenusidebar/Model/Data.php +57 -0
  23. app/code/community/Ip/Megamenusidebar/Model/Item.php +22 -0
  24. app/code/community/Ip/Megamenusidebar/Model/Mysql4/Category.php +73 -0
  25. app/code/community/Ip/Megamenusidebar/Model/Mysql4/Category/Collection.php +41 -0
  26. app/code/community/Ip/Megamenusidebar/Model/Mysql4/Item.php +73 -0
  27. app/code/community/Ip/Megamenusidebar/Model/Mysql4/Item/Collection.php +41 -0
  28. app/code/community/Ip/Megamenusidebar/Model/Source/Align.php +21 -0
  29. app/code/community/Ip/Megamenusidebar/Model/Source/Color.php +31 -0
  30. app/code/community/Ip/Megamenusidebar/Model/Source/Effect.php +33 -0
  31. app/code/community/Ip/Megamenusidebar/Model/Source/Maximumsubcat.php +34 -0
  32. app/code/community/Ip/Megamenusidebar/Model/Source/Type.php +24 -0
  33. app/code/community/Ip/Megamenusidebar/Model/Wysiwyg/Config.php +26 -0
  34. app/code/community/Ip/Megamenusidebar/controllers/Admin/CategoryController.php +218 -0
  35. app/code/community/Ip/Megamenusidebar/controllers/Admin/ItemController.php +218 -0
  36. app/code/community/Ip/Megamenusidebar/etc/config.xml +186 -0
  37. app/code/community/Ip/Megamenusidebar/etc/system.xml +181 -0
  38. app/code/community/Ip/Megamenusidebar/sql/megamenusidebar_setup/data.sql +121 -0
  39. app/code/community/Ip/Megamenusidebar/sql/megamenusidebar_setup/mysql4-install-1.0.0.php +94 -0
  40. app/design/frontend/base/default/layout/ip_megamenusidebar.xml +33 -0
  41. app/design/frontend/base/default/template/ip_megamenusidebar/navigation_left.phtml +42 -0
  42. app/design/frontend/base/default/template/ip_megamenusidebar/navigation_right.phtml +42 -0
  43. app/etc/modules/Ip_Megamenusidebar.xml +9 -0
  44. app/locale/en_US/Ip_Megamenusidebar.csv +0 -0
  45. js/ip_megamenusidebar/jquery-1.5.1.min.js +16 -0
  46. js/ip_megamenusidebar/megamenu.js +172 -0
  47. package.xml +19 -0
  48. skin/frontend/base/default/ip_megamenusidebar/css_left/ie6.css +32 -0
  49. skin/frontend/base/default/ip_megamenusidebar/css_left/ie7.css +9 -0
  50. skin/frontend/base/default/ip_megamenusidebar/css_left/layout.css +58 -0
  51. skin/frontend/base/default/ip_megamenusidebar/css_left/megamenu.css +558 -0
  52. skin/frontend/base/default/ip_megamenusidebar/css_left/megamenu_.css +590 -0
  53. skin/frontend/base/default/ip_megamenusidebar/css_right/ie6.css +32 -0
  54. skin/frontend/base/default/ip_megamenusidebar/css_right/ie7.css +9 -0
  55. skin/frontend/base/default/ip_megamenusidebar/css_right/layout.css +58 -0
  56. skin/frontend/base/default/ip_megamenusidebar/css_right/megamenu.css +558 -0
  57. skin/frontend/base/default/ip_megamenusidebar/img/bg.png +0 -0
  58. skin/frontend/base/default/ip_megamenusidebar/img/down.gif +0 -0
  59. skin/frontend/base/default/ip_megamenusidebar/img/down.png +0 -0
  60. skin/frontend/base/default/ip_megamenusidebar/img/down_right.png +0 -0
  61. skin/frontend/base/default/ip_megamenusidebar/img/icons/alert.png +0 -0
  62. skin/frontend/base/default/ip_megamenusidebar/img/icons/archive.png +0 -0
  63. skin/frontend/base/default/ip_megamenusidebar/img/icons/briefcase.png +0 -0
  64. skin/frontend/base/default/ip_megamenusidebar/img/icons/calendar.png +0 -0
  65. skin/frontend/base/default/ip_megamenusidebar/img/icons/delete.png +0 -0
  66. skin/frontend/base/default/ip_megamenusidebar/img/icons/error.png +0 -0
  67. skin/frontend/base/default/ip_megamenusidebar/img/icons/favorite.png +0 -0
  68. skin/frontend/base/default/ip_megamenusidebar/img/icons/help.png +0 -0
  69. skin/frontend/base/default/ip_megamenusidebar/img/icons/info.png +0 -0
  70. skin/frontend/base/default/ip_megamenusidebar/img/icons/lock.png +0 -0
  71. skin/frontend/base/default/ip_megamenusidebar/img/icons/note.png +0 -0
  72. skin/frontend/base/default/ip_megamenusidebar/img/icons/ok.png +0 -0
  73. skin/frontend/base/default/ip_megamenusidebar/img/icons/search.png +0 -0
  74. skin/frontend/base/default/ip_megamenusidebar/img/icons/user.png +0 -0
  75. skin/frontend/base/default/ip_megamenusidebar/img/img01.jpg +0 -0
  76. skin/frontend/base/default/ip_megamenusidebar/img/img02.jpg +0 -0
  77. skin/frontend/base/default/ip_megamenusidebar/img/img03.jpg +0 -0
  78. skin/frontend/base/default/ip_megamenusidebar/img/menu_separator.jpg +0 -0
  79. skin/frontend/base/default/ip_megamenusidebar/promo.jpg +0 -0
app/code/community/Ip/Megamenusidebar/Block/Admin/Category.php ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Category extends Mage_Adminhtml_Block_Widget_Grid_Container
12
+ {
13
+
14
+ public function __construct()
15
+ {
16
+ $this->_controller = 'admin_category';
17
+ $this->_blockGroup = 'megamenusidebar';
18
+ $this->_headerText = Mage::helper('megamenusidebar')->__('Megamenusidebar Category grid');
19
+ $this->_addButtonLabel = Mage::helper('megamenusidebar')->__('Add New Category');
20
+ parent::__construct();
21
+ }
22
+
23
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Edit.php ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Category_Edit extends Mage_Adminhtml_Block_Widget_Form_Container
12
+ {
13
+
14
+ public function __construct()
15
+ {
16
+ $this->_objectId = 'category_id';
17
+ $this->_controller = 'admin_category';
18
+ $this->_blockGroup = 'megamenusidebar';
19
+
20
+ parent::__construct();
21
+
22
+ $this->_updateButton('save', 'label', Mage::helper('megamenusidebar')->__('Save Item'));
23
+ $this->_updateButton('delete', 'label', Mage::helper('megamenusidebar')->__('Delete Item'));
24
+
25
+ $this->_addButton('saveandcontinue', array(
26
+ 'label' => Mage::helper('adminhtml')->__('Save And Continue Edit'),
27
+ 'onclick' => 'saveAndContinueEdit()',
28
+ 'class' => 'save',
29
+ ), -100);
30
+
31
+
32
+ $this->_formScripts[] = "
33
+ function toggleEditor() {
34
+ if (tinyMCE.getInstanceById('block_content') == null) {
35
+ tinyMCE.execCommand('mceAddControl', false, 'block_content');
36
+ } else {
37
+ tinyMCE.execCommand('mceRemoveControl', false, 'block_content');
38
+ }
39
+ }
40
+
41
+ function saveAndContinueEdit(){
42
+ editForm.submit($('edit_form').action+'back/edit/');
43
+ }
44
+
45
+ ";
46
+ }
47
+
48
+ public function getHeaderText()
49
+ {
50
+ if (Mage::registry('megamenusidebar_category')->getId()) {
51
+ return Mage::helper('megamenusidebar')->__("Edit Item '%s'", $this->htmlEscape(Mage::registry('megamenusidebar_category')->getTitle()));
52
+ }
53
+ else {
54
+ return Mage::helper('megamenusidebar')->__('New Item');
55
+ }
56
+ }
57
+
58
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Edit/Form.php ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Category_Edit_Form extends Mage_Adminhtml_Block_Widget_Form
12
+ {
13
+
14
+
15
+ protected function _prepareLayout() {
16
+ parent::_prepareLayout();
17
+ if (Mage::helper('megamenusidebar')->versionUseWysiwig()) {
18
+ if (Mage::getSingleton('cms/wysiwyg_config')->isEnabled()) {
19
+ $this->getLayout()->getBlock('head')->setCanLoadTinyMce(true);
20
+
21
+ $this->getLayout()->getBlock('head')->addJs('mage/adminhtml/variables.js');
22
+ $this->getLayout()->getBlock('head')->addJs('mage/adminhtml/wysiwyg/widget.js');
23
+ $this->getLayout()->getBlock('head')->addJs('lib/flex.js');
24
+ $this->getLayout()->getBlock('head')->addJs('lib/FABridge.js');
25
+ $this->getLayout()->getBlock('head')->addJs('mage/adminhtml/flexuploader.js');
26
+ $this->getLayout()->getBlock('head')->addJs('mage/adminhtml/browser.js');
27
+ $this->getLayout()->getBlock('head')->addJs('extjs/ext-tree.js');
28
+ $this->getLayout()->getBlock('head')->addJs('extjs/ext-tree-checkbox.js');
29
+
30
+ $this->getLayout()->getBlock('head')->addItem('js_css', 'extjs/resources/css/ext-all.css');
31
+ $this->getLayout()->getBlock('head')->addItem('js_css', 'extjs/resources/css/ytheme-magento.css');
32
+ $this->getLayout()->getBlock('head')->addItem('js_css', 'prototype/windows/themes/default.css');
33
+ $this->getLayout()->getBlock('head')->addItem('js_css', 'prototype/windows/themes/magento.css');
34
+ }
35
+ }
36
+ }
37
+
38
+ protected function _prepareForm()
39
+ {
40
+ $form = new Varien_Data_Form(array(
41
+ 'id' => 'edit_form',
42
+ 'action' => $this->getUrl('*/*/save', array('id' => $this->getRequest()->getParam('id'))),
43
+ 'method' => 'post',
44
+ 'enctype' => 'multipart/form-data'
45
+ )
46
+ );
47
+
48
+ $form->setUseContainer(true);
49
+ $this->setForm($form);
50
+ return parent::_prepareForm();
51
+ }
52
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Edit/Tab/Form.php ADDED
@@ -0,0 +1,153 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Category_Edit_Tab_Form extends Mage_Adminhtml_Block_Widget_Form {
12
+
13
+
14
+ protected function _prepareForm() {
15
+ $model = Mage::registry('megamenusidebar_category');
16
+ $form = new Varien_Data_Form(array('id' => 'edit_form_category', 'action' => $this->getData('action'), 'method' => 'post'));
17
+ $form->setHtmlIdPrefix('category_');
18
+ $fieldset = $form->addFieldset('base_fieldset', array('legend' => Mage::helper('megamenusidebar')->__('General Information'), 'class' => 'fieldset-wide'));
19
+ if ($model->getCategoryId()) {
20
+ $fieldset->addField('category_id', 'hidden', array(
21
+ 'name' => 'category_id',
22
+ ));
23
+ }
24
+
25
+ $fieldset->addField('title', 'text', array(
26
+ 'name' => 'title',
27
+ 'label' => Mage::helper('megamenusidebar')->__('Title'),
28
+ 'title' => Mage::helper('megamenusidebar')->__('Title'),
29
+ 'required' => true,
30
+ // 'style' => 'width:200px',
31
+ ));
32
+
33
+ $fieldset->addField('url', 'text', array(
34
+ 'name' => 'url',
35
+ 'label' => Mage::helper('megamenusidebar')->__('Url'),
36
+ 'title' => Mage::helper('megamenusidebar')->__('Url'),
37
+ 'required' => false,
38
+ 'comment' => 'tadaada',
39
+ ));
40
+
41
+ $fieldset->addField('catalog_id', 'text', array(
42
+ 'name' => 'catalog_id',
43
+ 'label' => Mage::helper('megamenusidebar')->__('Catalog ID'),
44
+ 'title' => Mage::helper('megamenusidebar')->__('Catalog ID'),
45
+ 'required' => true,
46
+ // 'style' => 'width:200px',
47
+ ));
48
+
49
+ $fieldset->addField('position', 'select', array(
50
+ 'name' => 'position',
51
+ 'label' => Mage::helper('megamenusidebar')->__('Position'),
52
+ 'title' => Mage::helper('megamenusidebar')->__('Position'),
53
+ 'required' => true,
54
+ 'options' => Mage::helper('megamenusidebar')->numberArray(20,Mage::helper('megamenusidebar')->__('')),
55
+ ));
56
+
57
+
58
+ $fieldset->addField('column', 'select', array(
59
+ 'name' => 'column',
60
+ 'label' => Mage::helper('megamenusidebar')->__('Columns'),
61
+ 'title' => Mage::helper('megamenusidebar')->__('Columns'),
62
+ 'required' => true,
63
+ 'options' => Mage::helper('megamenusidebar')->numberArray(5,Mage::helper('megamenusidebar')->__('')),
64
+ ));
65
+
66
+
67
+ if (!Mage::app()->isSingleStoreMode()) {
68
+ $fieldset->addField('store_id', 'multiselect', array(
69
+ 'name' => 'stores[]',
70
+ 'label' => Mage::helper('megamenusidebar')->__('Store View'),
71
+ 'title' => Mage::helper('megamenusidebar')->__('Store View'),
72
+ 'required' => true,
73
+ 'values' => Mage::getSingleton('adminhtml/system_store')->getStoreValuesForForm(false, true),
74
+ 'style' => 'height:150px',
75
+ ));
76
+ } else {
77
+ $fieldset->addField('store_id', 'hidden', array(
78
+ 'name' => 'stores[]',
79
+ 'value' => Mage::app()->getStore(true)->getId()
80
+ ));
81
+ $model->setStoreId(Mage::app()->getStore(true)->getId());
82
+ }
83
+
84
+ // $fieldset->addField('column', 'select', array(
85
+ // 'name' => 'column',
86
+ // 'label' => Mage::helper('megamenusidebar')->__('Column'),
87
+ // 'title' => Mage::helper('megamenusidebar')->__('Column'),
88
+ // 'required' => true,
89
+ // 'options' => Mage::helper('megamenusidebar')->numberArray(5,Mage::helper('megamenusidebar')->__('')),
90
+ // ));
91
+
92
+ // $fieldset->addField('align_category', 'select', array(
93
+ // 'label' => Mage::helper('megamenusidebar')->__('Align category'),
94
+ // 'title' => Mage::helper('megamenusidebar')->__('Align category'),
95
+ // 'name' => 'align_category',
96
+ // 'required' => true,
97
+ // 'options' => array(
98
+ // 'left' => Mage::helper('megamenusidebar')->__('Left'),
99
+ // 'right' => Mage::helper('megamenusidebar')->__('Right'),
100
+ // ),
101
+ // ));
102
+ // $fieldset->addField('align_content', 'select', array(
103
+ // 'label' => Mage::helper('megamenusidebar')->__('Align content'),
104
+ // 'title' => Mage::helper('megamenusidebar')->__('Align content'),
105
+ // 'name' => 'align_content',
106
+ // 'required' => true,
107
+ // 'options' => array(
108
+ // 'left' => Mage::helper('megamenusidebar')->__('Left'),
109
+ // 'right' => Mage::helper('megamenusidebar')->__('Right'),
110
+ // ),
111
+ // ));
112
+ $fieldset->addField('is_active', 'select', array(
113
+ 'label' => Mage::helper('megamenusidebar')->__('Status'),
114
+ 'title' => Mage::helper('megamenusidebar')->__('Status'),
115
+ 'name' => 'is_active',
116
+ 'required' => true,
117
+ 'options' => array(
118
+ '1' => Mage::helper('megamenusidebar')->__('Enabled'),
119
+ '0' => Mage::helper('megamenusidebar')->__('Disabled'),
120
+ ),
121
+ ));
122
+
123
+ $dateFormatIso = Mage::app()->getLocale()->getDateTimeFormat(Mage_Core_Model_Locale::FORMAT_TYPE_MEDIUM);
124
+ $fieldset->addField('from_time', 'date', array(
125
+ 'name' => 'from_time',
126
+ 'time' => true,
127
+ 'label' => Mage::helper('megamenusidebar')->__('From Time'),
128
+ 'title' => Mage::helper('megamenusidebar')->__('From Time'),
129
+ 'image' => $this->getSkinUrl('images/grid-cal.gif'),
130
+ 'input_format' => Varien_Date::DATETIME_INTERNAL_FORMAT,
131
+ 'format' => $dateFormatIso,
132
+ ));
133
+
134
+ $fieldset->addField('to_time', 'date', array(
135
+ 'name' => 'to_time',
136
+ 'time' => true,
137
+ 'label' => Mage::helper('megamenusidebar')->__('To Time'),
138
+ 'title' => Mage::helper('megamenusidebar')->__('To Time'),
139
+ 'image' => $this->getSkinUrl('images/grid-cal.gif'),
140
+ 'input_format' => Varien_Date::DATETIME_INTERNAL_FORMAT,
141
+ 'format' => $dateFormatIso,
142
+ ));
143
+
144
+ // print_r($model->getData());
145
+ // exit();
146
+ // $form->setUseContainer(true);
147
+ $form->setValues($model->getData());
148
+ $this->setForm($form);
149
+
150
+ return parent::_prepareForm();
151
+ }
152
+
153
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Edit/Tab/Other.php ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Category_Edit_Tab_Other extends Mage_Adminhtml_Block_Widget_Form {
12
+
13
+ protected function _prepareForm() {
14
+ $model = Mage::registry('megamenusidebar_category');
15
+ $form = new Varien_Data_Form();
16
+ $this->setForm($form);
17
+ $fieldset = $form->addFieldset('additional_form', array('legend' => Mage::helper('megamenusidebar')->__('Content Information')));
18
+
19
+
20
+
21
+ if (Mage::helper('megamenusidebar')->versionUseWysiwig()) {
22
+ $wysiwygConfig = Mage::getSingleton('megamenusidebar/wysiwyg_config')->getConfig();
23
+ } else {
24
+ $wysiwygConfig = '';
25
+ }
26
+
27
+ $fieldset->addField('content_top', 'editor', array(
28
+ 'name' => 'content_top',
29
+ 'label' => Mage::helper('megamenusidebar')->__('Content Top'),
30
+ 'title' => Mage::helper('megamenusidebar')->__('Content Top'),
31
+ 'style' => 'height:16em',
32
+ 'config' => $wysiwygConfig,
33
+ 'required' => false,
34
+ ));
35
+ $fieldset->addField('content_bottom', 'editor', array(
36
+ 'name' => 'content_bottom',
37
+ 'label' => Mage::helper('megamenusidebar')->__('Content Bottom'),
38
+ 'title' => Mage::helper('megamenusidebar')->__('Content Bottom'),
39
+ 'style' => 'height:16em',
40
+ 'config' => $wysiwygConfig,
41
+ 'required' => false,
42
+ ));
43
+
44
+
45
+ $fieldset->addField('script_java', 'note', array(
46
+ 'text' => '<script type="text/javascript">
47
+ var inputDateFrom = document.getElementById(\'category_from_time\');
48
+ var inputDateTo = document.getElementById(\'category_to_time\');
49
+ inputDateTo.onchange=function(){dateTestAnterior(this)};
50
+ inputDateFrom.onchange=function(){dateTestAnterior(this)};
51
+
52
+
53
+ function dateTestAnterior(inputChanged){
54
+ dateFromStr=inputDateFrom.value;
55
+ dateToStr=inputDateTo.value;
56
+
57
+ if(dateFromStr.indexOf(\'.\')==-1)
58
+ dateFromStr=dateFromStr.replace(/(\d{1,2} [a-zA-Zâêûîôùàçèé]{3})[^ \.]+/,"$1.");
59
+ if(dateToStr.indexOf(\'.\')==-1)
60
+ dateToStr=dateToStr.replace(/(\d{1,2} [a-zA-Zâêûîôùàçèé]{3})[^ \.]+/,"$1.");
61
+
62
+ fromDate= Date.parseDate(dateFromStr,"%e %b %Y %H:%M:%S");
63
+ toDate= Date.parseDate(dateToStr,"%e %b %Y %H:%M:%S");
64
+
65
+ if(dateToStr!=\'\'){
66
+ if(fromDate>toDate){
67
+ inputChanged.value=\'\';
68
+ alert(\'' . Mage::helper('megamenusidebar')->__('You must set a date to value greater than the date from value') . '\');
69
+ }
70
+ }
71
+ }
72
+ </script>',
73
+ 'disabled' => true
74
+ ));
75
+
76
+
77
+ // $form->setUseContainer(true);
78
+ $form->setValues($model->getData());
79
+ $this->setForm($form);
80
+
81
+ return parent::_prepareForm();
82
+ }
83
+
84
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Edit/Tabs.php ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Category_Edit_Tabs extends Mage_Adminhtml_Block_Widget_Tabs {
12
+
13
+ public function __construct() {
14
+ parent::__construct();
15
+ $this->setId('megamenusidebar_tabs');
16
+ $this->setDestElementId('edit_form');
17
+ $this->setTitle(Mage::helper('megamenusidebar')->__('Category Information'));
18
+ }
19
+
20
+ protected function _beforeToHtml() {
21
+ $this->addTab('form_section_category', array(
22
+ 'label' => Mage::helper('megamenusidebar')->__('General Information'),
23
+ 'title' => Mage::helper('megamenusidebar')->__('General Information'),
24
+ 'content' => $this->getLayout()->createBlock('megamenusidebar/admin_category_edit_tab_form')->toHtml(),
25
+ ));
26
+ $this->addTab('form_section_other', array(
27
+ 'label' => Mage::helper('megamenusidebar')->__('Content Information'),
28
+ 'title' => Mage::helper('megamenusidebar')->__('Content Information'),
29
+ 'content' => $this->getLayout()->createBlock('megamenusidebar/admin_category_edit_tab_other')->toHtml(),
30
+ ));
31
+
32
+ return parent::_beforeToHtml();
33
+ }
34
+
35
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Grid.php ADDED
@@ -0,0 +1,181 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Category_Grid extends Mage_Adminhtml_Block_Widget_Grid {
12
+
13
+ public function __construct() {
14
+ parent::__construct();
15
+ $this->setId('MegamenusidebarGrid');
16
+ $this->setDefaultSort('position');
17
+ $this->setDefaultDir('ASC');
18
+ }
19
+
20
+ protected function _prepareCollection() {
21
+ $collection = Mage::getModel('megamenusidebar/category')->getCollection();
22
+ $this->setCollection($collection);
23
+ return parent::_prepareCollection();
24
+ }
25
+
26
+ protected function _prepareColumns() {
27
+
28
+ $baseUrl = $this->getUrl();
29
+ $this->addColumn('category_id', array(
30
+ 'header' => Mage::helper('megamenusidebar')->__('ID'),
31
+ 'align' => 'left',
32
+ 'width' => '30px',
33
+ 'index' => 'category_id',
34
+ ));
35
+ $this->addColumn('catalog_id', array(
36
+ 'header' => Mage::helper('megamenusidebar')->__('Catalog ID'),
37
+ 'align' => 'left',
38
+ 'width' => '30px',
39
+ 'index' => 'catalog_id',
40
+ ));
41
+ $this->addColumn('title', array(
42
+ 'header' => Mage::helper('megamenusidebar')->__('Title'),
43
+ 'align' => 'left',
44
+ 'index' => 'title',
45
+ ));
46
+ $this->addColumn('column', array(
47
+ 'header' => Mage::helper('megamenusidebar')->__('Columns'),
48
+ 'align' => 'left',
49
+ 'index' => 'column',
50
+ 'width' => '30px',
51
+ ));
52
+ $this->addColumn('position', array(
53
+ 'header' => Mage::helper('megamenusidebar')->__('Position'),
54
+ 'align' => 'left',
55
+ 'index' => 'position',
56
+ 'width' => '30px',
57
+ ));
58
+ $this->addColumn('url', array(
59
+ 'header' => Mage::helper('megamenusidebar')->__('Url'),
60
+ 'align' => 'left',
61
+ 'index' => 'url',
62
+ 'width' => '30px',
63
+ ));
64
+
65
+ if (!Mage::app()->isSingleStoreMode()) {
66
+ $this->addColumn('store_id', array(
67
+ 'header' => Mage::helper('megamenusidebar')->__('Store View'),
68
+ 'index' => 'store_id',
69
+ 'type' => 'store',
70
+ 'store_all' => true,
71
+ 'store_view' => true,
72
+ 'sortable' => false,
73
+ 'filter_condition_callback'
74
+ => array($this, '_filterStoreCondition'),
75
+ ));
76
+ }
77
+ // $this->addColumn('align_category', array(
78
+ // 'header' => Mage::helper('megamenusidebar')->__('Align category'),
79
+ // 'align' => 'left',
80
+ // 'index' => 'align_category',
81
+ // 'width' => '30px',
82
+ // 'type' => 'options',
83
+ // 'options' => array(
84
+ // 'left' => Mage::helper('megamenusidebar')->__('Left'),
85
+ // 'right' => Mage::helper('megamenusidebar')->__('Right'),
86
+ // )
87
+ //
88
+ // ));
89
+ // $this->addColumn('align_content', array(
90
+ // 'header' => Mage::helper('megamenusidebar')->__('Align content'),
91
+ // 'align' => 'left',
92
+ // 'index' => 'align_content',
93
+ // 'width' => '30px',
94
+ // 'type' => 'options',
95
+ // 'options' => array(
96
+ // 'left' => Mage::helper('megamenusidebar')->__('Left'),
97
+ // 'right' => Mage::helper('megamenusidebar')->__('Right'),
98
+ // )
99
+ // ));
100
+ $this->addColumn('is_active', array(
101
+ 'header' => Mage::helper('megamenusidebar')->__('Status'),
102
+ 'index' => 'is_active',
103
+ 'type' => 'options',
104
+ 'options' => array(
105
+ 0 => Mage::helper('megamenusidebar')->__('Disabled'),
106
+ 1 => Mage::helper('megamenusidebar')->__('Enabled'),
107
+ ),
108
+ ));
109
+
110
+ $this->addColumn('from_time', array(
111
+ 'header' => Mage::helper('megamenusidebar')->__('From Time'),
112
+ 'index' => 'from_time',
113
+ 'type' => 'datetime',
114
+ ));
115
+
116
+ $this->addColumn('to_time', array(
117
+ 'header' => Mage::helper('megamenusidebar')->__('To Time'),
118
+ 'index' => 'to_time',
119
+ 'type' => 'datetime',
120
+ ));
121
+
122
+ $this->addColumn('action',
123
+ array(
124
+ 'header' => Mage::helper('megamenusidebar')->__('Action'),
125
+ 'index' => 'category_id',
126
+ 'sortable' => false,
127
+ 'filter' => false,
128
+ 'no_link' => true,
129
+ 'width' => '100px',
130
+ 'renderer' => 'megamenusidebar/admin_category_grid_renderer_action'
131
+ ));
132
+ $this->addExportType('*/*/exportCsv', Mage::helper('megamenusidebar')->__('CSV'));
133
+ $this->addExportType('*/*/exportXml', Mage::helper('megamenusidebar')->__('XML'));
134
+ return parent::_prepareColumns();
135
+ }
136
+
137
+ protected function _afterLoadCollection() {
138
+ $this->getCollection()->walk('afterLoad');
139
+ parent::_afterLoadCollection();
140
+ }
141
+
142
+ protected function _filterStoreCondition($collection, $column) {
143
+ if (!$value = $column->getFilter()->getValue()) {
144
+ return;
145
+ }
146
+ $this->getCollection()->addStoreFilter($value);
147
+ }
148
+
149
+ protected function _prepareMassaction() {
150
+ $this->setMassactionIdField('category_id');
151
+ $this->getMassactionBlock()->setFormFieldName('massaction');
152
+ $this->getMassactionBlock()->addItem('delete', array(
153
+ 'label' => Mage::helper('megamenusidebar')->__('Delete'),
154
+ 'url' => $this->getUrl('*/*/massDelete'),
155
+ 'confirm' => Mage::helper('megamenusidebar')->__('Are you sure?')
156
+ ));
157
+
158
+ $this->getMassactionBlock()->addItem('status', array(
159
+ 'label' => Mage::helper('megamenusidebar')->__('Change status'),
160
+ 'url' => $this->getUrl('*/*/massStatus', array('_current' => true)),
161
+ 'additional' => array(
162
+ 'visibility' => array(
163
+ 'name' => 'status',
164
+ 'type' => 'select',
165
+ 'class' => 'required-entry',
166
+ 'label' => Mage::helper('megamenusidebar')->__('Status'),
167
+ 'values' => array(
168
+ 0 => Mage::helper('megamenusidebar')->__('Disabled'),
169
+ 1 => Mage::helper('megamenusidebar')->__('Enabled'),
170
+ ),
171
+ )
172
+ )
173
+ ));
174
+ return $this;
175
+ }
176
+
177
+ public function getRowUrl($row) {
178
+ return $this->getUrl('*/*/edit', array('category_id' => $row->getId()));
179
+ }
180
+
181
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Category/Grid/Renderer/Action.php ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+
12
+ class Ip_Megamenusidebar_Block_Admin_Category_Grid_Renderer_Action extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Action
13
+ {
14
+ public function render(Varien_Object $row)
15
+ {
16
+
17
+ $actions[] = array(
18
+ 'url' => $this->getUrl('*/*/edit', array('category_id' => $row->getId())),
19
+ 'caption' => Mage::helper('megamenusidebar')->__('Edit')
20
+ );
21
+
22
+ $actions[] = array(
23
+ 'url' => $this->getUrl('*/*/delete', array('category_id' => $row->getId())),
24
+ 'caption' => Mage::helper('megamenusidebar')->__('Delete'),
25
+ 'confirm' => Mage::helper('megamenusidebar')->__('Are you sure you want to delete this category ?')
26
+ );
27
+
28
+ $this->getColumn()->setActions($actions);
29
+
30
+ return parent::render($row);
31
+ }
32
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Item.php ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Item extends Mage_Adminhtml_Block_Widget_Grid_Container
12
+ {
13
+
14
+ public function __construct()
15
+ {
16
+ $this->_controller = 'admin_item';
17
+ $this->_blockGroup = 'megamenusidebar';
18
+ $this->_headerText = Mage::helper('megamenusidebar')->__('Megamenusidebar Items grid');
19
+ $this->_addButtonLabel = Mage::helper('megamenusidebar')->__('Add New Item');
20
+ parent::__construct();
21
+ }
22
+
23
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Edit.php ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Item_Edit extends Mage_Adminhtml_Block_Widget_Form_Container
12
+ {
13
+
14
+ public function __construct()
15
+ {
16
+ $this->_objectId = 'item_id';
17
+ $this->_controller = 'admin_item';
18
+ $this->_blockGroup = 'megamenusidebar';
19
+
20
+ parent::__construct();
21
+
22
+ $this->_updateButton('save', 'label', Mage::helper('megamenusidebar')->__('Save Item'));
23
+ $this->_updateButton('delete', 'label', Mage::helper('megamenusidebar')->__('Delete Item'));
24
+
25
+ $this->_addButton('saveandcontinue', array(
26
+ 'label' => Mage::helper('adminhtml')->__('Save And Continue Edit'),
27
+ 'onclick' => 'saveAndContinueEdit()',
28
+ 'class' => 'save',
29
+ ), -100);
30
+
31
+
32
+ $this->_formScripts[] = "
33
+ function toggleEditor() {
34
+ if (tinyMCE.getInstanceById('block_content') == null) {
35
+ tinyMCE.execCommand('mceAddControl', false, 'block_content');
36
+ } else {
37
+ tinyMCE.execCommand('mceRemoveControl', false, 'block_content');
38
+ }
39
+ }
40
+
41
+ function saveAndContinueEdit(){
42
+ editForm.submit($('edit_form').action+'back/edit/');
43
+ }
44
+
45
+ ";
46
+ }
47
+
48
+ public function getHeaderText()
49
+ {
50
+ if (Mage::registry('megamenusidebar_item')->getId()) {
51
+ return Mage::helper('megamenusidebar')->__("Edit Item '%s'", $this->htmlEscape(Mage::registry('megamenusidebar_item')->getTitle()));
52
+ }
53
+ else {
54
+ return Mage::helper('megamenusidebar')->__('New Item');
55
+ }
56
+ }
57
+
58
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Edit/Form.php ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Item_Edit_Form extends Mage_Adminhtml_Block_Widget_Form
12
+ {
13
+
14
+
15
+ protected function _prepareLayout() {
16
+ parent::_prepareLayout();
17
+ if (Mage::helper('megamenusidebar')->versionUseWysiwig()) {
18
+ if (Mage::getSingleton('cms/wysiwyg_config')->isEnabled()) {
19
+ $this->getLayout()->getBlock('head')->setCanLoadTinyMce(true);
20
+
21
+ $this->getLayout()->getBlock('head')->addJs('mage/adminhtml/variables.js');
22
+ $this->getLayout()->getBlock('head')->addJs('mage/adminhtml/wysiwyg/widget.js');
23
+ $this->getLayout()->getBlock('head')->addJs('lib/flex.js');
24
+ $this->getLayout()->getBlock('head')->addJs('lib/FABridge.js');
25
+ $this->getLayout()->getBlock('head')->addJs('mage/adminhtml/flexuploader.js');
26
+ $this->getLayout()->getBlock('head')->addJs('mage/adminhtml/browser.js');
27
+ $this->getLayout()->getBlock('head')->addJs('extjs/ext-tree.js');
28
+ $this->getLayout()->getBlock('head')->addJs('extjs/ext-tree-checkbox.js');
29
+
30
+ $this->getLayout()->getBlock('head')->addItem('js_css', 'extjs/resources/css/ext-all.css');
31
+ $this->getLayout()->getBlock('head')->addItem('js_css', 'extjs/resources/css/ytheme-magento.css');
32
+ $this->getLayout()->getBlock('head')->addItem('js_css', 'prototype/windows/themes/default.css');
33
+ $this->getLayout()->getBlock('head')->addItem('js_css', 'prototype/windows/themes/magento.css');
34
+ }
35
+ }
36
+ }
37
+
38
+ protected function _prepareForm()
39
+ {
40
+ $form = new Varien_Data_Form(array(
41
+ 'id' => 'edit_form',
42
+ 'action' => $this->getUrl('*/*/save', array('id' => $this->getRequest()->getParam('id'))),
43
+ 'method' => 'post',
44
+ 'enctype' => 'multipart/form-data'
45
+ )
46
+ );
47
+
48
+ $form->setUseContainer(true);
49
+ $this->setForm($form);
50
+ return parent::_prepareForm();
51
+ }
52
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Edit/Tab/Form.php ADDED
@@ -0,0 +1,179 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Item_Edit_Tab_Form extends Mage_Adminhtml_Block_Widget_Form {
12
+
13
+
14
+ protected function _prepareForm() {
15
+ $model = Mage::registry('megamenusidebar_item');
16
+ $form = new Varien_Data_Form(array('id' => 'edit_form_item', 'action' => $this->getData('action'), 'method' => 'post'));
17
+ $form->setHtmlIdPrefix('item_');
18
+ $fieldset = $form->addFieldset('base_fieldset', array('legend' => Mage::helper('megamenusidebar')->__('General Information'), 'class' => 'fieldset-wide'));
19
+ if ($model->getItemId()) {
20
+ $fieldset->addField('item_id', 'hidden', array(
21
+ 'name' => 'item_id',
22
+ ));
23
+ }
24
+
25
+ $fieldset->addField('title', 'text', array(
26
+ 'name' => 'title',
27
+ 'label' => Mage::helper('megamenusidebar')->__('Title'),
28
+ 'title' => Mage::helper('megamenusidebar')->__('Title'),
29
+ 'required' => true,
30
+ // 'style' => 'width:200px',
31
+ ));
32
+ $fieldset->addField('url', 'text', array(
33
+ 'name' => 'url',
34
+ 'label' => Mage::helper('megamenusidebar')->__('Url'),
35
+ 'title' => Mage::helper('megamenusidebar')->__('Url'),
36
+ 'required' => false,
37
+ // 'style' => 'width:200px',
38
+ ));
39
+
40
+ $fieldset->addField('position', 'select', array(
41
+ 'name' => 'position',
42
+ 'label' => Mage::helper('megamenusidebar')->__('Position'),
43
+ 'title' => Mage::helper('megamenusidebar')->__('Position'),
44
+ 'required' => true,
45
+ 'options' => Mage::helper('megamenusidebar')->numberArray(20,Mage::helper('megamenusidebar')->__('')),
46
+ ));
47
+ if (!Mage::app()->isSingleStoreMode()) {
48
+ $fieldset->addField('store_id', 'multiselect', array(
49
+ 'name' => 'stores[]',
50
+ 'label' => Mage::helper('megamenusidebar')->__('Store View'),
51
+ 'title' => Mage::helper('megamenusidebar')->__('Store View'),
52
+ 'required' => true,
53
+ 'values' => Mage::getSingleton('adminhtml/system_store')->getStoreValuesForForm(false, true),
54
+ 'style' => 'height:150px',
55
+ ));
56
+ } else {
57
+ $fieldset->addField('store_id', 'hidden', array(
58
+ 'name' => 'stores[]',
59
+ 'value' => Mage::app()->getStore(true)->getId()
60
+ ));
61
+ $model->setStoreId(Mage::app()->getStore(true)->getId());
62
+ }
63
+
64
+ $fieldset->addField('column', 'select', array(
65
+ 'name' => 'column',
66
+ 'label' => Mage::helper('megamenusidebar')->__('Column'),
67
+ 'title' => Mage::helper('megamenusidebar')->__('Column'),
68
+ 'required' => true,
69
+ 'options' => Mage::helper('megamenusidebar')->numberArray(5,Mage::helper('megamenusidebar')->__('')),
70
+ ));
71
+
72
+ // $fieldset->addField('align_item', 'select', array(
73
+ // 'label' => Mage::helper('megamenusidebar')->__('Align item'),
74
+ // 'title' => Mage::helper('megamenusidebar')->__('Align item'),
75
+ // 'name' => 'align_item',
76
+ // 'required' => true,
77
+ // 'options' => array(
78
+ // 'left' => Mage::helper('megamenusidebar')->__('Left'),
79
+ // 'right' => Mage::helper('megamenusidebar')->__('Right'),
80
+ // ),
81
+ // ));
82
+ // $fieldset->addField('align_content', 'select', array(
83
+ // 'label' => Mage::helper('megamenusidebar')->__('Align content'),
84
+ // 'title' => Mage::helper('megamenusidebar')->__('Align content'),
85
+ // 'name' => 'align_content',
86
+ // 'required' => true,
87
+ // 'options' => array(
88
+ // 'left' => Mage::helper('megamenusidebar')->__('Left'),
89
+ // 'right' => Mage::helper('megamenusidebar')->__('Right'),
90
+ // ),
91
+ // ));
92
+ $fieldset->addField('is_active', 'select', array(
93
+ 'label' => Mage::helper('megamenusidebar')->__('Status'),
94
+ 'title' => Mage::helper('megamenusidebar')->__('Status'),
95
+ 'name' => 'is_active',
96
+ 'required' => true,
97
+ 'options' => array(
98
+ '1' => Mage::helper('megamenusidebar')->__('Enabled'),
99
+ '0' => Mage::helper('megamenusidebar')->__('Disabled'),
100
+ ),
101
+ ));
102
+
103
+ $dateFormatIso = Mage::app()->getLocale()->getDateTimeFormat(Mage_Core_Model_Locale::FORMAT_TYPE_MEDIUM);
104
+ $fieldset->addField('from_time', 'date', array(
105
+ 'name' => 'from_time',
106
+ 'time' => true,
107
+ 'label' => Mage::helper('megamenusidebar')->__('From Time'),
108
+ 'title' => Mage::helper('megamenusidebar')->__('From Time'),
109
+ 'image' => $this->getSkinUrl('images/grid-cal.gif'),
110
+ 'input_format' => Varien_Date::DATETIME_INTERNAL_FORMAT,
111
+ 'format' => $dateFormatIso,
112
+ ));
113
+
114
+ $fieldset->addField('to_time', 'date', array(
115
+ 'name' => 'to_time',
116
+ 'time' => true,
117
+ 'label' => Mage::helper('megamenusidebar')->__('To Time'),
118
+ 'title' => Mage::helper('megamenusidebar')->__('To Time'),
119
+ 'image' => $this->getSkinUrl('images/grid-cal.gif'),
120
+ 'input_format' => Varien_Date::DATETIME_INTERNAL_FORMAT,
121
+ 'format' => $dateFormatIso,
122
+ ));
123
+
124
+
125
+ if (Mage::helper('megamenusidebar')->versionUseWysiwig()) {
126
+ $wysiwygConfig = Mage::getSingleton('megamenusidebar/wysiwyg_config')->getConfig();
127
+ } else {
128
+ $wysiwygConfig = '';
129
+ }
130
+
131
+ $fieldset->addField('content', 'editor', array(
132
+ 'name' => 'content',
133
+ 'label' => Mage::helper('megamenusidebar')->__('Content'),
134
+ 'title' => Mage::helper('megamenusidebar')->__('Content'),
135
+ 'style' => 'height:36em',
136
+ 'config' => $wysiwygConfig,
137
+ 'required' => true,
138
+ ));
139
+
140
+ $fieldset->addField('script_java', 'note', array(
141
+ 'text' => '<script type="text/javascript">
142
+ var inputDateFrom = document.getElementById(\'item_from_time\');
143
+ var inputDateTo = document.getElementById(\'item_to_time\');
144
+ inputDateTo.onchange=function(){dateTestAnterior(this)};
145
+ inputDateFrom.onchange=function(){dateTestAnterior(this)};
146
+
147
+
148
+ function dateTestAnterior(inputChanged){
149
+ dateFromStr=inputDateFrom.value;
150
+ dateToStr=inputDateTo.value;
151
+
152
+ if(dateFromStr.indexOf(\'.\')==-1)
153
+ dateFromStr=dateFromStr.replace(/(\d{1,2} [a-zA-Zâêûîôùàçèé]{3})[^ \.]+/,"$1.");
154
+ if(dateToStr.indexOf(\'.\')==-1)
155
+ dateToStr=dateToStr.replace(/(\d{1,2} [a-zA-Zâêûîôùàçèé]{3})[^ \.]+/,"$1.");
156
+
157
+ fromDate= Date.parseDate(dateFromStr,"%e %b %Y %H:%M:%S");
158
+ toDate= Date.parseDate(dateToStr,"%e %b %Y %H:%M:%S");
159
+
160
+ if(dateToStr!=\'\'){
161
+ if(fromDate>toDate){
162
+ inputChanged.value=\'\';
163
+ alert(\'' . Mage::helper('megamenusidebar')->__('You must set a date to value greater than the date from value') . '\');
164
+ }
165
+ }
166
+ }
167
+ </script>',
168
+ 'disabled' => true
169
+ ));
170
+ // print_r($model->getData());
171
+ // exit();
172
+ // $form->setUseContainer(true);
173
+ $form->setValues($model->getData());
174
+ $this->setForm($form);
175
+
176
+ return parent::_prepareForm();
177
+ }
178
+
179
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Edit/Tab/Other.php ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+ class Ip_Megamenusidebar_Block_Admin_Item_Edit_Tab_Other extends Mage_Adminhtml_Block_Widget_Form
11
+ {
12
+ protected function _prepareForm()
13
+ {
14
+ $model = Mage::registry('megamenusidebar_item');
15
+ $form = new Varien_Data_Form();
16
+ $this->setForm($form);
17
+ $fieldset = $form->addFieldset('additional_form', array('legend'=>Mage::helper('megamenusidebar')->__('Additional information ')));
18
+
19
+
20
+
21
+ $fieldset->addField('samplefield', 'text', array(
22
+ 'name' => 'samplefield',
23
+ 'label' => Mage::helper('megamenusidebar')->__('Samplefield'),
24
+ 'title' => Mage::helper('megamenusidebar')->__('Samplefield'),
25
+ 'required' => false,
26
+ ));
27
+
28
+ // $form->setUseContainer(true);
29
+ $form->setValues($model->getData());
30
+ $this->setForm($form);
31
+
32
+ return parent::_prepareForm();
33
+ }
34
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Edit/Tabs.php ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Item_Edit_Tabs extends Mage_Adminhtml_Block_Widget_Tabs {
12
+
13
+ public function __construct() {
14
+ parent::__construct();
15
+ $this->setId('megamenusidebar_tabs');
16
+ $this->setDestElementId('edit_form');
17
+ $this->setTitle(Mage::helper('megamenusidebar')->__('Item Information'));
18
+ }
19
+
20
+ protected function _beforeToHtml() {
21
+ $this->addTab('form_section_item', array(
22
+ 'label' => Mage::helper('megamenusidebar')->__('Item Information'),
23
+ 'title' => Mage::helper('megamenusidebar')->__('Item Information'),
24
+ 'content' => $this->getLayout()->createBlock('megamenusidebar/admin_item_edit_tab_form')->toHtml(),
25
+ ));
26
+ // $this->addTab('form_section_other', array(
27
+ // 'label' => Mage::helper('megamenusidebar')->__('Item Information additional'),
28
+ // 'title' => Mage::helper('megamenusidebar')->__('Item Information additional'),
29
+ // 'content' => $this->getLayout()->createBlock('megamenusidebar/admin_item_edit_tab_other')->toHtml(),
30
+ // ));
31
+
32
+ return parent::_beforeToHtml();
33
+ }
34
+
35
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Grid.php ADDED
@@ -0,0 +1,181 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Block_Admin_Item_Grid extends Mage_Adminhtml_Block_Widget_Grid {
12
+
13
+ public function __construct() {
14
+ parent::__construct();
15
+ $this->setId('MegamenusidebarGrid');
16
+ $this->setDefaultSort('position');
17
+ $this->setDefaultDir('ASC');
18
+ }
19
+
20
+ protected function _prepareCollection() {
21
+ $collection = Mage::getModel('megamenusidebar/item')->getCollection();
22
+ $this->setCollection($collection);
23
+ return parent::_prepareCollection();
24
+ }
25
+
26
+ protected function _prepareColumns() {
27
+
28
+ $baseUrl = $this->getUrl();
29
+ $this->addColumn('item_id', array(
30
+ 'header' => Mage::helper('megamenusidebar')->__('ID'),
31
+ 'align' => 'left',
32
+ 'width' => '30px',
33
+ 'index' => 'item_id',
34
+ ));
35
+ $this->addColumn('title', array(
36
+ 'header' => Mage::helper('megamenusidebar')->__('Title'),
37
+ 'align' => 'left',
38
+ 'index' => 'title',
39
+ ));
40
+ // $this->addColumn('content', array(
41
+ // 'header' => Mage::helper('megamenusidebar')->__('Content'),
42
+ // 'align' => 'left',
43
+ // 'index' => 'content',
44
+ // ));
45
+
46
+ $this->addColumn('position', array(
47
+ 'header' => Mage::helper('megamenusidebar')->__('Position'),
48
+ 'align' => 'left',
49
+ 'index' => 'position',
50
+ 'width' => '30px',
51
+ ));
52
+ $this->addColumn('url', array(
53
+ 'header' => Mage::helper('megamenusidebar')->__('Url'),
54
+ 'align' => 'left',
55
+ 'index' => 'url',
56
+ // 'width' => '100px',
57
+ ));
58
+ $this->addColumn('column', array(
59
+ 'header' => Mage::helper('megamenusidebar')->__('Columns'),
60
+ 'align' => 'left',
61
+ 'index' => 'column',
62
+ 'width' => '30px',
63
+ ));
64
+
65
+ if (!Mage::app()->isSingleStoreMode()) {
66
+ $this->addColumn('store_id', array(
67
+ 'header' => Mage::helper('megamenusidebar')->__('Store View'),
68
+ 'index' => 'store_id',
69
+ 'type' => 'store',
70
+ 'store_all' => true,
71
+ 'store_view' => true,
72
+ 'sortable' => false,
73
+ 'filter_condition_callback'
74
+ => array($this, '_filterStoreCondition'),
75
+ ));
76
+ }
77
+ // $this->addColumn('align_item', array(
78
+ // 'header' => Mage::helper('megamenusidebar')->__('Align item'),
79
+ // 'align' => 'left',
80
+ // 'index' => 'align_item',
81
+ // 'width' => '30px',
82
+ // 'type' => 'options',
83
+ // 'options' => array(
84
+ // 'left' => Mage::helper('megamenusidebar')->__('Left'),
85
+ // 'right' => Mage::helper('megamenusidebar')->__('Right'),
86
+ // )
87
+ //
88
+ // ));
89
+ // $this->addColumn('align_content', array(
90
+ // 'header' => Mage::helper('megamenusidebar')->__('Align content'),
91
+ // 'align' => 'left',
92
+ // 'index' => 'align_content',
93
+ // 'width' => '30px',
94
+ // 'type' => 'options',
95
+ // 'options' => array(
96
+ // 'left' => Mage::helper('megamenusidebar')->__('Left'),
97
+ // 'right' => Mage::helper('megamenusidebar')->__('Right'),
98
+ // )
99
+ // ));
100
+ $this->addColumn('is_active', array(
101
+ 'header' => Mage::helper('megamenusidebar')->__('Status'),
102
+ 'index' => 'is_active',
103
+ 'type' => 'options',
104
+ 'options' => array(
105
+ 0 => Mage::helper('megamenusidebar')->__('Disabled'),
106
+ 1 => Mage::helper('megamenusidebar')->__('Enabled'),
107
+ ),
108
+ ));
109
+
110
+ $this->addColumn('from_time', array(
111
+ 'header' => Mage::helper('megamenusidebar')->__('From Time'),
112
+ 'index' => 'from_time',
113
+ 'type' => 'datetime',
114
+ ));
115
+
116
+ $this->addColumn('to_time', array(
117
+ 'header' => Mage::helper('megamenusidebar')->__('To Time'),
118
+ 'index' => 'to_time',
119
+ 'type' => 'datetime',
120
+ ));
121
+
122
+ $this->addColumn('action',
123
+ array(
124
+ 'header' => Mage::helper('megamenusidebar')->__('Action'),
125
+ 'index' => 'item_id',
126
+ 'sortable' => false,
127
+ 'filter' => false,
128
+ 'no_link' => true,
129
+ 'width' => '100px',
130
+ 'renderer' => 'megamenusidebar/admin_item_grid_renderer_action'
131
+ ));
132
+ $this->addExportType('*/*/exportCsv', Mage::helper('megamenusidebar')->__('CSV'));
133
+ $this->addExportType('*/*/exportXml', Mage::helper('megamenusidebar')->__('XML'));
134
+ return parent::_prepareColumns();
135
+ }
136
+
137
+ protected function _afterLoadCollection() {
138
+ $this->getCollection()->walk('afterLoad');
139
+ parent::_afterLoadCollection();
140
+ }
141
+
142
+ protected function _filterStoreCondition($collection, $column) {
143
+ if (!$value = $column->getFilter()->getValue()) {
144
+ return;
145
+ }
146
+ $this->getCollection()->addStoreFilter($value);
147
+ }
148
+
149
+ protected function _prepareMassaction() {
150
+ $this->setMassactionIdField('item_id');
151
+ $this->getMassactionBlock()->setFormFieldName('massaction');
152
+ $this->getMassactionBlock()->addItem('delete', array(
153
+ 'label' => Mage::helper('megamenusidebar')->__('Delete'),
154
+ 'url' => $this->getUrl('*/*/massDelete'),
155
+ 'confirm' => Mage::helper('megamenusidebar')->__('Are you sure?')
156
+ ));
157
+
158
+ $this->getMassactionBlock()->addItem('status', array(
159
+ 'label' => Mage::helper('megamenusidebar')->__('Change status'),
160
+ 'url' => $this->getUrl('*/*/massStatus', array('_current' => true)),
161
+ 'additional' => array(
162
+ 'visibility' => array(
163
+ 'name' => 'status',
164
+ 'type' => 'select',
165
+ 'class' => 'required-entry',
166
+ 'label' => Mage::helper('megamenusidebar')->__('Status'),
167
+ 'values' => array(
168
+ 0 => Mage::helper('megamenusidebar')->__('Disabled'),
169
+ 1 => Mage::helper('megamenusidebar')->__('Enabled'),
170
+ ),
171
+ )
172
+ )
173
+ ));
174
+ return $this;
175
+ }
176
+
177
+ public function getRowUrl($row) {
178
+ return $this->getUrl('*/*/edit', array('item_id' => $row->getId()));
179
+ }
180
+
181
+ }
app/code/community/Ip/Megamenusidebar/Block/Admin/Item/Grid/Renderer/Action.php ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ L;<?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+
12
+ class Ip_Megamenusidebar_Block_Admin_Item_Grid_Renderer_Action extends Mage_Adminhtml_Block_Widget_Grid_Column_Renderer_Action
13
+ {
14
+ public function render(Varien_Object $row)
15
+ {
16
+
17
+ $actions[] = array(
18
+ 'url' => $this->getUrl('*/*/edit', array('item_id' => $row->getId())),
19
+ 'caption' => Mage::helper('megamenusidebar')->__('Edit')
20
+ );
21
+
22
+ $actions[] = array(
23
+ 'url' => $this->getUrl('*/*/delete', array('item_id' => $row->getId())),
24
+ 'caption' => Mage::helper('megamenusidebar')->__('Delete'),
25
+ 'confirm' => Mage::helper('megamenusidebar')->__('Are you sure you want to delete this item ?')
26
+ );
27
+
28
+ $this->getColumn()->setActions($actions);
29
+
30
+ return parent::render($row);
31
+ }
32
+ }
app/code/community/Ip/Megamenusidebar/Block/Developer.php ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Ip_Megamenusidebar_Block_Developer extends Mage_Adminhtml_Block_System_Config_Form_Fieldset {
4
+
5
+ public function render(Varien_Data_Form_Element_Abstract $element) {
6
+ $content = '<p></p>';
7
+ $content.= '<style>';
8
+ $content.= '.developer {
9
+ background:#FAFAFA;
10
+ border: 1px solid #CCCCCC;
11
+ margin-bottom: 10px;
12
+ padding: 10px;
13
+ height:auto;
14
+
15
+ }
16
+ .developer h3 {
17
+ color: #EA7601;
18
+ }
19
+ .contact-type {
20
+ color: #EA7601;
21
+ font-weight:bold;
22
+ }
23
+ .developer img {
24
+ border: 1px solid #CCCCCC;
25
+ float:left;
26
+ height:255px;
27
+ }
28
+ .developer .info {
29
+ border: 1px solid #CCCCCC;
30
+ background:#E7EFEF;
31
+ padding: 5px 10px 0 5px;
32
+ margin-left:230px;
33
+ height:250px;
34
+ }
35
+ ';
36
+ $content.= '</style>';
37
+
38
+
39
+ $content.= '<div class="developer">';
40
+ $content.= '<a href="http://www.ecommerceoffice.com/" target="_blank"><img src="'.Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_SKIN).'frontend/base/default/ip_megamenusidebar/promo.jpg" alt="www.ecommerceoffice.com" /></a>';
41
+ $content.= '<div class="info">';
42
+ $content.= '<h3>Magento extensions</h3>';
43
+ $content.= '<p><a href="http://www.ecommerceoffice.com/" target="_blank">www.ecommerceoffice.com</a> - experts are specializing in custom extension development for the world\'s fastest growing eCommerce platform - Magento. <br/>';
44
+ $content.= 'All extensions are designed for the Magento CMS archetecture, using native libraries and only the most efficient approaches to development.<br/>';
45
+ $content.= 'If you need Magento development or have a concept for an extension you\'d like developed for the Magento CMS platform, please contact us.</br></p>';
46
+ $content.= '--------------------------------------------------------<br>';
47
+ $content.= '<span class="contact-type">Website:</span> <a href="http://www.ecommerceoffice.com/" target="_blank">www.ecommerceoffice.com</a> <br/>';
48
+ $content.= '<span class="contact-type">E-mail:</span> volgodark@gmail.com / office.commerce@gmail.com<br/>';
49
+ $content.= '<span class="contact-type">Skype:</span> volgodark <br/>';
50
+ $content.= '<span class="contact-type">Phone:</span> +7 909389 2222 <br/>';
51
+ $content.= '<span class="contact-type">Magento:</span> <a href="http://www.magentocommerce.com/magento-connect/developer/developer" target="_blank">visit</a> <br/>';
52
+ $content.= '<span class="contact-type">Facebook:</span> <a href="http://www.facebook.com/ivan.proskuryakov" target="_blank">visit</a> <br/>';
53
+ $content.= '<span class="contact-type">LinkedIn:</span> <a href="http://www.linkedin.com/pub/ivan-proskuryakov/31/200/316" target="_blank">visit</a> <br/>';
54
+
55
+ $content.= '</div>';
56
+
57
+ $content.= '</div>';
58
+
59
+ return $content;
60
+
61
+
62
+ }
63
+
64
+
65
+ }
app/code/community/Ip/Megamenusidebar/Block/Info.php ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+
10
+ <?php
11
+
12
+ class Ip_Megamenusidebar_Block_Info extends Mage_Adminhtml_Block_System_Config_Form_Fieldset {
13
+
14
+ public function __construct() {
15
+ parent::__construct();
16
+ }
17
+
18
+ public function render(Varien_Data_Form_Element_Abstract $element) {
19
+
20
+ $html = $this->_getHeaderHtml($element);
21
+
22
+ $html.= $this->_getFieldHtml($element);
23
+
24
+ $html .= $this->_getFooterHtml($element);
25
+
26
+ return $html;
27
+ }
28
+
29
+ protected function _getFieldHtml($fieldset) {
30
+ $content = 'This extension is developed by <a href="http://www.ecommerceoffice.com/" target="_blank">www.ecommerceoffice.com</a><br/>';
31
+ $content.= 'Magento Store Setup, modules, data migration, templates, upgrades and much more!';
32
+ return $content;
33
+ }
34
+
35
+ }
app/code/community/Ip/Megamenusidebar/Block/Navigation.php ADDED
@@ -0,0 +1,250 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+ class Ip_Megamenusidebar_Block_Navigation extends Mage_Catalog_Block_Navigation {
11
+
12
+ protected function _prepareLayout() {
13
+ parent::_prepareLayout();
14
+
15
+ if (Mage::getStoreConfig('megamenusidebar/options/includejquery'))
16
+ $this->getLayout()->getBlock('head')->addJs('ip_megamenusidebar/jquery-1.5.1.min.js');
17
+ if (Mage::getStoreConfig('megamenusidebar/options/usejseffect'))
18
+ $this->getLayout()->getBlock('head')->addJs('ip_megamenusidebar/megamenu.js');
19
+
20
+
21
+
22
+ if (Mage::getStoreConfig('megamenusidebar/options/sidebar') == 'left') {
23
+ $this->getLayout()->getBlock('head')->addCss('ip_megamenusidebar/css_left/ie6.css');
24
+ $this->getLayout()->getBlock('head')->addCss('ip_megamenusidebar/css_left/ie7.css');
25
+ $this->getLayout()->getBlock('head')->addCss('ip_megamenusidebar/css_left/megamenu.css');
26
+ }
27
+ if (Mage::getStoreConfig('megamenusidebar/options/sidebar') == 'right') {
28
+ $this->getLayout()->getBlock('head')->addCss('ip_megamenusidebar/css_right/ie6.css');
29
+ $this->getLayout()->getBlock('head')->addCss('ip_megamenusidebar/css_right/ie7.css');
30
+ $this->getLayout()->getBlock('head')->addCss('ip_megamenusidebar/css_right/megamenu.css');
31
+ }
32
+
33
+
34
+ }
35
+
36
+ public function drawItemSide($category=0,$item) {
37
+ $userows =Mage::getStoreConfig('megamenusidebar/options/userows');
38
+ $url=$this->getCategoryUrl($category);
39
+ if ($item['url']!='') $url=$item['url'];
40
+
41
+ $html = '<li id="#li" class="mm2 ">';
42
+ $html.= '<a class="drop" href="' . $url . '">' . $this->htmlEscape($item['title']) . '</a>' . "\n";
43
+ $activeChildren = $this->getActiveChildren($category);
44
+ if (sizeof($activeChildren) > 0) {
45
+ if (!$userows) $html .= $this->drawColumns($activeChildren,$item);
46
+ if ($userows) $html .= $this->drawColumnsRows($activeChildren,$item);
47
+ }
48
+ $html .= "</li>";
49
+
50
+ return $html;
51
+ }
52
+
53
+ public function drawCatalog() {
54
+
55
+ $html='';
56
+ $data = Mage::getModel('megamenusidebar/data')->getCatalog();
57
+ foreach ($data as $item) {
58
+ // var_dump($item);
59
+ $categoryId = $item['catalog_id'];
60
+ $categoryObject = Mage::getModel('catalog/category')->load($categoryId);
61
+ $categoryParentId = $categoryObject->getParentId();
62
+
63
+ foreach (Mage::helper('megamenusidebar/data')->getSubCategories($categoryParentId) as $_category) {
64
+ if ($_category->getId() == $categoryId) {
65
+ $html.=$this->drawItemSide($_category,$item);
66
+ }
67
+ }
68
+ }
69
+
70
+ return $html;
71
+
72
+ }
73
+
74
+
75
+ public function array_chunk_fixed($input, $num, $preserve_keys = FALSE) {
76
+ $count = count($input) ;
77
+ if($count)
78
+ $input = array_chunk($input, ceil($count/$num), $preserve_keys) ;
79
+ $input = array_pad($input, $num, array()) ;
80
+ return $input ;
81
+ }
82
+
83
+ public function drawColumnsRows($children,$item) {
84
+
85
+ $col = $item['column']*2;
86
+ $rows = count($children) / $col;
87
+ $chunks = $this->array_chunk_fixed($children, $rows);
88
+
89
+ $html = '';
90
+
91
+ $html .= '<div class="dropcontent dropfirst drop'.$col.'columns ">';
92
+ // $html .= '<div class="dropcontent drop'.$col.'columns ">';
93
+ $html .= '<div class="col_'.$col.'"><div class="content_top">';
94
+ $html .= $item['content_top'];
95
+ $html .= '</div></div>';
96
+ foreach ($chunks as $chunk) {
97
+ $html .= '<div class="col_'.$col.'">';
98
+ $items = $this->array_chunk_fixed($chunk, $col);
99
+ foreach ($items as $value) {
100
+ $html .= '<div class="col_2">';
101
+ $html .= $this->drawNestedMenus($value, 1);
102
+ //$html .= 'key';
103
+ $html .= '</div>';
104
+ }
105
+ //$html .= 'row';
106
+ $html .= '</div>';
107
+ }
108
+
109
+ $html .= '<div class="col_'.$col.'"><div class="content_bottom">';
110
+ $html .= $item['content_bottom'];
111
+ $html .= '</div></div>';
112
+
113
+ $html .= '</div>';
114
+ return $html;
115
+
116
+ }
117
+
118
+ public function drawColumns($children,$item) {
119
+ $col=$item['column'];
120
+ $html = '';
121
+ $chunks = $this->array_chunk_fixed($children, $col);
122
+ // $html .= '<div class="dropcontent drop'.$col.'columns ">';
123
+ $html .= '<div class="dropcontent dropfirst drop'.($col*2).'columns ">';
124
+
125
+ $html .= '<div class="col_'.($col*2).'"><div class="content_top">';
126
+ $html .= $item['content_top'];
127
+ $html .= '</div></div>';
128
+
129
+ foreach ($chunks as $key => $value) {
130
+ $html .= '<div class="col_2">';
131
+ $html .= $this->drawNestedMenus($value, 1);
132
+ $html .= '</div>';
133
+ }
134
+
135
+ $html .= '<div class="col_'.($col*2).'"><div class="content_bottom">';
136
+ $html .= $item['content_bottom'];
137
+ $html .= '</div></div>';
138
+
139
+ $html .= '</div>';
140
+ return $html;
141
+ }
142
+
143
+ public function drawNestedMenus($children, $level=1,$morehref ='') {
144
+ $moretext=Mage::getStoreConfig('megamenusidebar/options/moretext');
145
+ $maxsubcatnum=Mage::getStoreConfig('megamenusidebar/options/maximumsubcat');
146
+
147
+ $html = '<ul>';
148
+ $i=0;
149
+ foreach ($children as $child) {
150
+ if ($child->getIsActive()) {
151
+
152
+ $html .= '<li class="level' . $level . '">';
153
+ $html .= '<a href="' . $this->getCategoryUrl($child) . '"><span class="level' . $level . '">' . $this->htmlEscape($child->getName()) . '</a>';
154
+ $activeChildren = $this->getActiveChildren($child);
155
+ if (sizeof($activeChildren) > 0) {
156
+ $html .= $this->drawNestedMenus($activeChildren, $level + 1,$this->getCategoryUrl($child));
157
+ }
158
+ $i++;
159
+ $html .= '</li>';
160
+ if ($i==$maxsubcatnum) {
161
+ $html .= '<li class="level' . $level . '">';
162
+ $html .= '<a href="'.$morehref.'"><span class="level' . $level . '">'.$moretext.'</span></a>';
163
+ $html .= '</li>';
164
+ break;
165
+ }
166
+ }
167
+ }
168
+ $html .= '</ul>';
169
+ return $html;
170
+ }
171
+
172
+ protected function getActiveChildren($parent) {
173
+ $activeChildren = array();
174
+ if (Mage::helper('catalog/category_flat')->isEnabled()) {
175
+ $children = $parent->getChildrenNodes();
176
+ $childrenCount = count($children);
177
+ } else {
178
+ $children = $parent->getChildren();
179
+ $childrenCount = count($children);
180
+ }
181
+ $hasChildren = $children && $childrenCount;
182
+ if ($hasChildren) {
183
+ foreach ($children as $child) {
184
+ if ($child->getIsActive()) {
185
+ array_push($activeChildren, $child);
186
+ }
187
+ }
188
+ }
189
+ return $activeChildren;
190
+ }
191
+
192
+ public function getCategoryPath($category) {
193
+ $url = '';
194
+ if ($category instanceof Mage_Catalog_Model_Category) {
195
+ $url = $category->getPathInStore();
196
+ $url = strtr($url, ".", "-");
197
+ $url = strtr($url, "/", "-");
198
+ } else {
199
+ // do nothing
200
+ }
201
+ return $url;
202
+ }
203
+
204
+ // -----------------------------------------------------------------------------
205
+ public function drawAllCategoriesMenu() {
206
+ $html='';
207
+ $collection = $this->getStoreCategories();
208
+ foreach ($collection as $node) {
209
+ if ($node->getData('level') == 2) {
210
+ $html .= '<li>';
211
+ $html .= '<a href="' . $this->getCategoryUrl($node). '">' . $node->getData('name') . '</a>';
212
+ $html .= '</li>';
213
+ }
214
+ }
215
+ return $html;
216
+ }
217
+ public function drawAdminMenu() {
218
+
219
+ $storeId = Mage::app()->getStore()->getId();
220
+ $storeUrl = Mage::getModel('core/store')->load($storeId)->getUrl();
221
+ $storeUrl.='#';
222
+ $data=Mage::getModel('megamenusidebar/data')->getItems();
223
+ $html='';
224
+ foreach ($data as $item) {
225
+ $col=$item['column']*2;
226
+ $url=$storeUrl;
227
+ if ($item['url']!='') $url=$item['url'];
228
+ $html .= '<li class="mm2 ">';
229
+ $html .= '<a href="'.$url.'" class="drop">'.$item['title'].'</a>';
230
+ $html .= '<div class="dropcontent dropfirst drop'.$col.'columns">';
231
+ // $html .= '<div class="dropcontent dropfirst drop'.$col.'columns ">';
232
+ $html .= '<div class="col_'.$col.'">';
233
+ $html .= $item['content'];
234
+ $html .= '</div>';
235
+ $html .= '</div>';
236
+ $html .= '</li>';
237
+ }
238
+ return $html;
239
+ }
240
+
241
+ }
242
+
243
+
244
+
245
+
246
+ //
247
+ // $block = $this->getLayout()
248
+ // ->createBlock('megamenusidebar/navigation', 'megamenusidebar.navigation')
249
+ // ->setTemplate('ip/megamenusidebar/navigation.phtml');
250
+ // $this->getLayout()->getBlock('left')->insert($block);
app/code/community/Ip/Megamenusidebar/Helper/Data.php ADDED
@@ -0,0 +1,98 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php class Ip_Megamenusidebar_Helper_Data extends Mage_Core_Helper_Abstract {
10
+
11
+ public function versionUseAdminTitle() {
12
+ $info = explode('.', Mage::getVersion());
13
+ if ($info[0] > 1) {
14
+ return true;
15
+ }
16
+ if ($info[1] > 3) {
17
+ return true;
18
+ }
19
+ return false;
20
+ }
21
+
22
+ public function versionUseWysiwig() {
23
+ $info = explode('.', Mage::getVersion());
24
+ if ($info[0] > 1) {
25
+ return true;
26
+ }
27
+ if ($info[1] > 3) {
28
+ return true;
29
+ }
30
+ return false;
31
+ }
32
+
33
+ public function numberArray($max,$text) {
34
+
35
+ $items = array();
36
+ for ($index = 1; $index <= $max; $index++) {
37
+ $items[$index]=$text.' '.$index;
38
+ }
39
+ return $items;
40
+ }
41
+
42
+ public function getStoreCategories($sorted=false, $asCollection=false, $toLoad=true)
43
+ {
44
+ $parent = Mage::app()->getStore()->getRootCategoryId();
45
+ // $parent = 13;
46
+ $cacheKey = sprintf('%d-%d-%d-%d', $parent, $sorted, $asCollection, $toLoad);
47
+ if (isset($this->_storeCategories[$cacheKey])) {
48
+ return $this->_storeCategories[$cacheKey];
49
+ }
50
+
51
+ /**
52
+ * Check if parent node of the store still exists
53
+ */
54
+ $category = Mage::getModel('catalog/category');
55
+ /* @var $category Mage_Catalog_Model_Category */
56
+ if (!$category->checkId($parent)) {
57
+ if ($asCollection) {
58
+ return new Varien_Data_Collection();
59
+ }
60
+ return array();
61
+ }
62
+
63
+ $recursionLevel = max(0, (int) Mage::app()->getStore()->getConfig('catalog/navigation/max_depth'));
64
+ $storeCategories = $category->getCategories($parent, $recursionLevel, $sorted, $asCollection, $toLoad);
65
+
66
+ $this->_storeCategories[$cacheKey] = $storeCategories;
67
+ return $storeCategories;
68
+ }
69
+
70
+
71
+
72
+ public function getSubCategories($parentId, $sorted=false, $asCollection=false, $toLoad=true)
73
+ {
74
+ $category = Mage::getModel('catalog/category');
75
+ /* @var $category Mage_Catalog_Model_Category */
76
+ if (!$category->checkId($parentId)) {
77
+ if ($asCollection) {
78
+ return new Varien_Data_Collection();
79
+ }
80
+ return array();
81
+ }
82
+
83
+ $tree = $category->getTreeModel();
84
+ /* @var $tree Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Tree */
85
+
86
+ $nodes = $tree->loadNode($parentId)
87
+ ->loadChildren()
88
+ ->getChildren();
89
+
90
+ $tree->addCollectionData(null, $sorted, $parentId, $toLoad, true);
91
+
92
+ if ($asCollection) {
93
+ return $tree->getCollection();
94
+ } else {
95
+ return $nodes;
96
+ }
97
+ }
98
+ }
app/code/community/Ip/Megamenusidebar/Model/Category.php ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+ class Ip_Megamenusidebar_Model_Category extends Mage_Core_Model_Abstract
11
+ {
12
+ const CACHE_TAG = 'megamenusidebar_admin_category';
13
+ protected $_cacheTag= 'megamenusidebar_admin_category';
14
+
15
+ protected function _construct()
16
+ {
17
+ $this->_init('megamenusidebar/category');
18
+ }
19
+
20
+ }
app/code/community/Ip/Megamenusidebar/Model/Data.php ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+ Class Ip_Megamenusidebar_Model_Data {
11
+ protected function getItemModel() {
12
+ return Mage::getModel('megamenusidebar/item');
13
+ }
14
+ protected function getItemCollection() {
15
+ $storeId = Mage::app()->getStore()->getId();
16
+ $collection = $this->getItemModel()->getCollection();
17
+ $collection->addFilter('is_active', 1);
18
+ $collection->addStoreFilter($storeId);
19
+ $collection->addOrder('position', 'ASC');
20
+ return $collection;
21
+ }
22
+ public function getItems() {
23
+ return $this->getItemCollection();
24
+ }
25
+ protected function getCatalogModel() {
26
+ return Mage::getModel('megamenusidebar/category');
27
+ }
28
+ protected function getCatalogCollection() {
29
+ $storeId = Mage::app()->getStore()->getId();
30
+ $collection = $this->getCatalogModel()->getCollection();
31
+ $collection->addFilter('is_active', 1);
32
+ $collection->addStoreFilter($storeId);
33
+ $collection->addOrder('position', 'ASC');
34
+
35
+ $ext = 'megamenusidebar';
36
+ $salt = 'ivan';
37
+ $configserial = $ext.'/licence/serial';
38
+ $configlicence= $ext.'/licence/email';
39
+
40
+ $serialmd5 = Mage::getStoreConfig($configserial);
41
+ $email = Mage::getStoreConfig($configlicence);
42
+ $emailmd5 = md5(md5($email.'.'.$ext.'.'.$salt));
43
+ $emailmd5 = substr($emailmd5,2,24);
44
+ if ($emailmd5 != $serialmd5) {
45
+ Mage::getSingleton('core/session')->addSuccess('
46
+ This is a try&buy magento extension.
47
+ For serial key visit <a target="_blank"
48
+ href="http://www.ecommerceoffice.com/">
49
+ www.ecommerceoffice.com</a> website.');
50
+ }
51
+
52
+ return $collection;
53
+ }
54
+ public function getCatalog() {
55
+ return $this->getCatalogCollection();
56
+ }
57
+ }
app/code/community/Ip/Megamenusidebar/Model/Item.php ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+ class Ip_Megamenusidebar_Model_Item extends Mage_Core_Model_Abstract
11
+ {
12
+ const CACHE_TAG = 'megamenusidebar_admin_item';
13
+ protected $_cacheTag= 'megamenusidebar_admin_item';
14
+
15
+ protected function _construct()
16
+ {
17
+ $this->_init('megamenusidebar/item');
18
+
19
+
20
+ }
21
+
22
+ }
app/code/community/Ip/Megamenusidebar/Model/Mysql4/Category.php ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Model_Mysql4_Category extends Mage_Core_Model_Mysql4_Abstract {
12
+
13
+ protected function _construct() {
14
+ $this->_init('megamenusidebar/category', 'category_id');
15
+ }
16
+
17
+ protected function _beforeSave(Mage_Core_Model_Abstract $object) {
18
+ $dateFormatIso = Mage::app()->getLocale()->getDateTimeFormat(Mage_Core_Model_Locale::FORMAT_TYPE_MEDIUM);
19
+ if (!$object->getFromTime()) {
20
+ $object->setFromTime(Mage::getSingleton('core/date')->gmtDate());
21
+ } else {
22
+ $object->setFromTime(Mage::app()->getLocale()->date($object->getFromTime(), $dateFormatIso));
23
+ $object->setFromTime($object->getFromTime()->toString(Varien_Date::DATETIME_INTERNAL_FORMAT));
24
+ $object->setFromTime(Mage::getSingleton('core/date')->gmtDate(null, $object->getFromTime()));
25
+ }
26
+ if (!$object->getToTime()) {
27
+ $object->setToTime();
28
+ } else {
29
+ $object->setToTime(Mage::app()->getLocale()->date($object->getToTime(), $dateFormatIso));
30
+ $object->setToTime($object->getToTime()->toString(Varien_Date::DATETIME_INTERNAL_FORMAT));
31
+ $object->setToTime(Mage::getSingleton('core/date')->gmtDate(null, $object->getToTime()));
32
+ }
33
+ return $this;
34
+ }
35
+
36
+ protected function _afterSave(Mage_Core_Model_Abstract $object) {
37
+ $condition = $this->_getWriteAdapter()->quoteInto('category_id = ?', $object->getId());
38
+ $this->_getWriteAdapter()->delete($this->getTable('megamenusidebar/category_store'), $condition);
39
+ if (!$object->getData('stores')) {
40
+ $object->setData('stores', $object->getData('store_id'));
41
+ }
42
+ if (in_array(0, $object->getData('stores'))) {
43
+ $object->setData('stores', array(0));
44
+ }
45
+ foreach ((array) $object->getData('stores') as $store) {
46
+ $storeArray = array();
47
+ $storeArray['category_id'] = $object->getId();
48
+ $storeArray['store_id'] = $store;
49
+ $this->_getWriteAdapter()->insert($this->getTable('megamenusidebar/category_store'), $storeArray);
50
+ }
51
+ return parent::_afterSave($object);
52
+ }
53
+ protected function _afterLoad(Mage_Core_Model_Abstract $object) {
54
+ $select = $this->_getReadAdapter()->select()
55
+ ->from($this->getTable('megamenusidebar/category_store'))
56
+ ->where('category_id = ?', $object->getId());
57
+
58
+ if ($data = $this->_getReadAdapter()->fetchAll($select)) {
59
+ $storesArray = array();
60
+ foreach ($data as $row) {
61
+ $storesArray[] = $row['store_id'];
62
+ }
63
+ $object->setData('store_id', $storesArray);
64
+ }
65
+ return parent::_afterLoad($object);
66
+ }
67
+
68
+ protected function _beforeDelete(Mage_Core_Model_Abstract $object) {
69
+ $adapter = $this->_getReadAdapter();
70
+ $adapter->delete($this->getTable('megamenusidebar/category_store'), 'category_id=' . $object->getId());
71
+ }
72
+
73
+ }
app/code/community/Ip/Megamenusidebar/Model/Mysql4/Category/Collection.php ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Model_Mysql4_Category_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract {
12
+
13
+ protected function _construct() {
14
+ $this->_init('megamenusidebar/category');
15
+ }
16
+
17
+ public function toOptionArray() {
18
+ return $this->_toOptionArray('category_id', 'name');
19
+ }
20
+
21
+ public function addStoreFilter($store, $withAdmin = true) {
22
+ if ($store instanceof Mage_Core_Model_Store) {
23
+ $store = array($store->getId());
24
+ }
25
+
26
+ $this->getSelect()->join(
27
+ array('category_store' => $this->getTable('megamenusidebar/category_store')),
28
+ 'main_table.category_id = category_store.category_id',
29
+ array()
30
+ )
31
+ ->where('category_store.store_id in (?)', ($withAdmin ? array(0, $store) : $store));
32
+
33
+ return $this;
34
+ }
35
+ public function addNowFilter() {
36
+ $now = Mage::getSingleton('core/date')->gmtDate();
37
+ $where = "from_time < '" . $now . "' AND ((to_time > '" . $now . "') OR (to_time IS NULL))";
38
+ $this->getSelect()->where($where);
39
+ }
40
+
41
+ }
app/code/community/Ip/Megamenusidebar/Model/Mysql4/Item.php ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Model_Mysql4_Item extends Mage_Core_Model_Mysql4_Abstract {
12
+
13
+ protected function _construct() {
14
+ $this->_init('megamenusidebar/item', 'item_id');
15
+ }
16
+
17
+ protected function _beforeSave(Mage_Core_Model_Abstract $object) {
18
+ $dateFormatIso = Mage::app()->getLocale()->getDateTimeFormat(Mage_Core_Model_Locale::FORMAT_TYPE_MEDIUM);
19
+ if (!$object->getFromTime()) {
20
+ $object->setFromTime(Mage::getSingleton('core/date')->gmtDate());
21
+ } else {
22
+ $object->setFromTime(Mage::app()->getLocale()->date($object->getFromTime(), $dateFormatIso));
23
+ $object->setFromTime($object->getFromTime()->toString(Varien_Date::DATETIME_INTERNAL_FORMAT));
24
+ $object->setFromTime(Mage::getSingleton('core/date')->gmtDate(null, $object->getFromTime()));
25
+ }
26
+ if (!$object->getToTime()) {
27
+ $object->setToTime();
28
+ } else {
29
+ $object->setToTime(Mage::app()->getLocale()->date($object->getToTime(), $dateFormatIso));
30
+ $object->setToTime($object->getToTime()->toString(Varien_Date::DATETIME_INTERNAL_FORMAT));
31
+ $object->setToTime(Mage::getSingleton('core/date')->gmtDate(null, $object->getToTime()));
32
+ }
33
+ return $this;
34
+ }
35
+
36
+ protected function _afterSave(Mage_Core_Model_Abstract $object) {
37
+ $condition = $this->_getWriteAdapter()->quoteInto('item_id = ?', $object->getId());
38
+ $this->_getWriteAdapter()->delete($this->getTable('megamenusidebar/item_store'), $condition);
39
+ if (!$object->getData('stores')) {
40
+ $object->setData('stores', $object->getData('store_id'));
41
+ }
42
+ if (in_array(0, $object->getData('stores'))) {
43
+ $object->setData('stores', array(0));
44
+ }
45
+ foreach ((array) $object->getData('stores') as $store) {
46
+ $storeArray = array();
47
+ $storeArray['item_id'] = $object->getId();
48
+ $storeArray['store_id'] = $store;
49
+ $this->_getWriteAdapter()->insert($this->getTable('megamenusidebar/item_store'), $storeArray);
50
+ }
51
+ return parent::_afterSave($object);
52
+ }
53
+ protected function _afterLoad(Mage_Core_Model_Abstract $object) {
54
+ $select = $this->_getReadAdapter()->select()
55
+ ->from($this->getTable('megamenusidebar/item_store'))
56
+ ->where('item_id = ?', $object->getId());
57
+
58
+ if ($data = $this->_getReadAdapter()->fetchAll($select)) {
59
+ $storesArray = array();
60
+ foreach ($data as $row) {
61
+ $storesArray[] = $row['store_id'];
62
+ }
63
+ $object->setData('store_id', $storesArray);
64
+ }
65
+ return parent::_afterLoad($object);
66
+ }
67
+
68
+ protected function _beforeDelete(Mage_Core_Model_Abstract $object) {
69
+ $adapter = $this->_getReadAdapter();
70
+ $adapter->delete($this->getTable('megamenusidebar/item_store'), 'item_id=' . $object->getId());
71
+ }
72
+
73
+ }
app/code/community/Ip/Megamenusidebar/Model/Mysql4/Item/Collection.php ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Model_Mysql4_Item_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract {
12
+
13
+ protected function _construct() {
14
+ $this->_init('megamenusidebar/item');
15
+ }
16
+
17
+ public function toOptionArray() {
18
+ return $this->_toOptionArray('item_id', 'name');
19
+ }
20
+
21
+ public function addStoreFilter($store, $withAdmin = true) {
22
+ if ($store instanceof Mage_Core_Model_Store) {
23
+ $store = array($store->getId());
24
+ }
25
+
26
+ $this->getSelect()->join(
27
+ array('item_store' => $this->getTable('megamenusidebar/item_store')),
28
+ 'main_table.item_id = item_store.item_id',
29
+ array()
30
+ )
31
+ ->where('item_store.store_id in (?)', ($withAdmin ? array(0, $store) : $store));
32
+
33
+ return $this;
34
+ }
35
+ public function addNowFilter() {
36
+ $now = Mage::getSingleton('core/date')->gmtDate();
37
+ $where = "from_time < '" . $now . "' AND ((to_time > '" . $now . "') OR (to_time IS NULL))";
38
+ $this->getSelect()->where($where);
39
+ }
40
+
41
+ }
app/code/community/Ip/Megamenusidebar/Model/Source/Align.php ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Model_Source_Align {
12
+
13
+ public function toOptionArray() {
14
+ return array(
15
+ array('value' => 'left', 'label' => Mage::helper('megamenusidebar')->__('Left')),
16
+ array('value' => 'right','label' => Mage::helper('megamenusidebar')->__('Right')),
17
+
18
+ );
19
+ }
20
+
21
+ }
app/code/community/Ip/Megamenusidebar/Model/Source/Color.php ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Model_Source_Color {
12
+
13
+ public function toOptionArray() {
14
+ return array(
15
+ array('value' => 'menu_blue', 'label' => Mage::helper('megamenusidebar')->__('menu_blue')),
16
+ array('value' => 'menu_brown', 'label' => Mage::helper('megamenusidebar')->__('menu_brown')),
17
+ array('value' => 'menu_cherry', 'label' => Mage::helper('megamenusidebar')->__('menu_cherry')),
18
+ array('value' => 'menu_coffee', 'label' => Mage::helper('megamenusidebar')->__('menu_coffee')),
19
+ array('value' => 'menu_green', 'label' => Mage::helper('megamenusidebar')->__('menu_green')),
20
+ array('value' => 'menu_grey', 'label' => Mage::helper('megamenusidebar')->__('menu_grey')),
21
+ array('value' => 'menu_ocean', 'label' => Mage::helper('megamenusidebar')->__('menu_ocean')),
22
+ array('value' => 'menu_orange', 'label' => Mage::helper('megamenusidebar')->__('menu_orange')),
23
+ array('value' => 'menu_pink', 'label' => Mage::helper('megamenusidebar')->__('menu_pink')),
24
+ array('value' => 'menu_purple', 'label' => Mage::helper('megamenusidebar')->__('menu_purple')),
25
+ array('value' => 'menu_red', 'label' => Mage::helper('megamenusidebar')->__('menu_red')),
26
+ array('value' => 'menu_tan', 'label' => Mage::helper('megamenusidebar')->__('menu_tan')),
27
+ array('value' => 'menu_yellow', 'label' => Mage::helper('megamenusidebar')->__('menu_yellow')),
28
+ );
29
+ }
30
+
31
+ }
app/code/community/Ip/Megamenusidebar/Model/Source/Effect.php ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Model_Source_Effect {
12
+
13
+ public function toOptionArray() {
14
+ return array(
15
+ // array('value' => 'click_fade', 'label' => Mage::helper('megamenusidebar')->__('click_fade : the drop down fades in on mouse click')),
16
+ // array('value' => 'click_slide', 'label' => Mage::helper('megamenusidebar')->__('click_slide : the drop down slides on mouse click')),
17
+ // array('value' => 'click_toggle', 'label' => Mage::helper('megamenusidebar')->__('click_toggle : toggle effect on mouse click')),
18
+ array('value' => 'hover_fade', 'label' => Mage::helper('megamenusidebar')->__('hover_fade : fade effect on mouse hover')),
19
+ array('value' => 'hover_fadein', 'label' => Mage::helper('megamenusidebar')->__('hover_fadein : fade in effect on mouse hover')),
20
+ array('value' => 'hover_slide', 'label' => Mage::helper('megamenusidebar')->__('hover_slide : slide effect on mouse hover')),
21
+ array('value' => 'hover_toggle', 'label' => Mage::helper('megamenusidebar')->__('hover_toggle : toggle effect on mouse hover')),
22
+ // array('value' => 'click_open_close', 'label' => Mage::helper('megamenusidebar')->__('click_open_close : 1 click to open, 1 click to close')),
23
+ // array('value' => 'opened_fifth', 'label' => Mage::helper('megamenusidebar')->__('opened_fifth : 5th drop down already opened when the page loads')),
24
+ // array('value' => 'opened_first', 'label' => Mage::helper('megamenusidebar')->__('opened_first : 1st drop down already opened when the page loads')),
25
+ // array('value' => 'opened_fourth', 'label' => Mage::helper('megamenusidebar')->__('opened_fourth : 4th drop down already opened when the page loads')),
26
+ // array('value' => 'opened_last', 'label' => Mage::helper('megamenusidebar')->__('opened_last : Last drop down already opened when the page loads')),
27
+ // array('value' => 'opened_second', 'label' => Mage::helper('megamenusidebar')->__('opened_second : 2nd drop down already opened when the page loads')),
28
+ // array('value' => 'opened_third', 'label' => Mage::helper('megamenusidebar')->__('opened_third : 3rd drop down already opened when the page loads')),
29
+
30
+ );
31
+ }
32
+
33
+ }
app/code/community/Ip/Megamenusidebar/Model/Source/Maximumsubcat.php ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Model_Source_Maximumsubcat {
12
+
13
+ public function toOptionArray() {
14
+ return array(
15
+ array('value' => 5, 'label' => 5),
16
+ array('value' => 6, 'label' => 6),
17
+ array('value' => 7, 'label' => 7),
18
+ array('value' => 8, 'label' => 8),
19
+ array('value' => 9, 'label' => 9),
20
+ array('value' => 10, 'label' => 10),
21
+ array('value' => 11, 'label' => 11),
22
+ array('value' => 12, 'label' => 12),
23
+ array('value' => 13, 'label' => 13),
24
+ array('value' => 14, 'label' => 14),
25
+ array('value' => 15, 'label' => 15),
26
+ array('value' => 16, 'label' => 16),
27
+ array('value' => 17, 'label' => 17),
28
+ array('value' => 18, 'label' => 18),
29
+ array('value' => 19, 'label' => 19),
30
+ array('value' => 20, 'label' => 20),
31
+ );
32
+ }
33
+
34
+ }
app/code/community/Ip/Megamenusidebar/Model/Source/Type.php ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Model_Source_Type {
12
+
13
+ public function toOptionArray() {
14
+ return array(
15
+ array('value' => 'combined', 'label' => Mage::helper('megamenusidebar')->__('combined')),
16
+ array('value' => 'fullwidth','label' => Mage::helper('megamenusidebar')->__('fullwidth')),
17
+ array('value' => 'standard','label' => Mage::helper('megamenusidebar')->__('standard')),
18
+ array('value' => 'vertical_left','label' => Mage::helper('megamenusidebar')->__('vertical_left')),
19
+ array('value' => 'vertical_right','label' => Mage::helper('megamenusidebar')->__('vertical_right')),
20
+
21
+ );
22
+ }
23
+
24
+ }
app/code/community/Ip/Megamenusidebar/Model/Wysiwyg/Config.php ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Model_Wysiwyg_Config extends Mage_Cms_Model_Wysiwyg_Config {
12
+
13
+ public function getConfig($data = array()) {
14
+
15
+
16
+ $config = parent::getConfig($data);
17
+ $config->setData('files_browser_window_url', Mage::getSingleton('adminhtml/url')->getUrl('adminhtml/cms_wysiwyg_images/index/'));
18
+ $config->setData('directives_url', Mage::getSingleton('adminhtml/url')->getUrl('adminhtml/cms_wysiwyg/directive'));
19
+ $config->setData('directives_url_quoted', preg_quote($config->getData('directives_url')));
20
+ $config->setData('widget_window_url', Mage::getSingleton('adminhtml/url')->getUrl('adminhtml/widget/index'));
21
+
22
+
23
+ return $config;
24
+ }
25
+
26
+ }
app/code/community/Ip/Megamenusidebar/controllers/Admin/CategoryController.php ADDED
@@ -0,0 +1,218 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Admin_CategoryController extends Mage_Adminhtml_Controller_Action {
12
+
13
+ protected function _initAction() {
14
+ $this->loadLayout()
15
+ ->_setActiveMenu('ip/megamenusidebar')
16
+ ->_addBreadcrumb(Mage::helper('megamenusidebar')->__('Megamenusidebar'), Mage::helper('megamenusidebar')->__('Megamenusidebar'))
17
+ ->_addBreadcrumb(Mage::helper('megamenusidebar')->__('Megamenusidebar Items'), Mage::helper('megamenusidebar')->__('Megamenusidebar Items'))
18
+ ;
19
+ return $this;
20
+ }
21
+
22
+ public function indexAction() {
23
+ $this->_initAction()
24
+ ->_addContent($this->getLayout()->createBlock('megamenusidebar/admin_category'))
25
+ ->renderLayout();
26
+ }
27
+
28
+ public function newAction() {
29
+ $this->_forward('edit');
30
+ }
31
+
32
+ public function editAction() {
33
+ if (Mage::helper('megamenusidebar')->versionUseAdminTitle()) {
34
+ $this->_title($this->__('megamenusidebar'));
35
+ }
36
+ // 1. Get ID and create model
37
+ $id = $this->getRequest()->getParam('category_id');
38
+ $model = Mage::getModel('megamenusidebar/category');
39
+ // 2. Initial checking
40
+ if ($id) {
41
+ $model->load($id);
42
+ if (!$model->getId()) {
43
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('megamenusidebar')->__('This category no longer exists'));
44
+ $this->_redirect('*/*/');
45
+ return;
46
+ }
47
+ }
48
+ // 3. Set entered data if was error when we do save
49
+ $data = Mage::getSingleton('adminhtml/session')->getFormData(true);
50
+ if (!empty($data)) {
51
+ $model->setData($data);
52
+ }
53
+ // 4. Register model to use later in blocks
54
+ Mage::register('megamenusidebar_category', $model);
55
+ // 5. Build edit form
56
+ $this->_initAction()
57
+ ->_addBreadcrumb($id ? Mage::helper('megamenusidebar')->__('Edit Item') : Mage::helper('megamenusidebar')->__('New Item'), $id ? Mage::helper('megamenusidebar')->__('Edit Item') : Mage::helper('megamenusidebar')->__('New Item'))
58
+ ->_addContent($this->getLayout()->createBlock('megamenusidebar/admin_category_edit')->setData('action', $this->getUrl('*/admin_category/save')))
59
+ ->_addLeft($this->getLayout()->createBlock('megamenusidebar/admin_category_edit_tabs'))
60
+ ->renderLayout();
61
+ }
62
+
63
+ public function saveAction() {
64
+ if ($data = $this->getRequest()->getPost()) {
65
+ // init model and set data
66
+ $model = Mage::getModel('megamenusidebar/category');
67
+ // print_r($data);exit();
68
+ $model->setData($data);
69
+ // try to save it
70
+ try {
71
+ // save the data
72
+ $model->save();
73
+ // display success message
74
+ Mage::getSingleton('adminhtml/session')->addSuccess(Mage::helper('megamenusidebar')->__('Item was successfully saved'));
75
+ // clear previously saved data from session
76
+ Mage::getSingleton('adminhtml/session')->setFormData(false);
77
+ // check if 'Save and Continue'
78
+ if ($this->getRequest()->getParam('back')) {
79
+ $this->_redirect('*/*/edit', array('category_id' => $model->getId()));
80
+ return;
81
+ }
82
+ // go to grid
83
+ $this->_redirect('*/*/');
84
+ return;
85
+ } catch (Exception $e) {
86
+ // display error message
87
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
88
+ // save data in session
89
+ Mage::getSingleton('adminhtml/session')->setFormData($data);
90
+ // redirect to edit form
91
+ $this->_redirect('*/*/edit', array('category_id' => $this->getRequest()->getParam('category_id')));
92
+ return;
93
+ }
94
+ }
95
+ $this->_redirect('*/*/');
96
+ }
97
+
98
+ public function deleteAction() {
99
+ // check if we know what should be deleted
100
+ if ($id = $this->getRequest()->getParam('category_id')) {
101
+ $name = "";
102
+ try {
103
+ // init model and delete
104
+ $model = Mage::getModel('megamenusidebar/category');
105
+ $model->load($id);
106
+ $name = $model->getName();
107
+ $model->delete();
108
+ // display success message
109
+ Mage::getSingleton('adminhtml/session')->addSuccess(Mage::helper('megamenusidebar')->__('Item was successfully deleted'));
110
+ // go to grid
111
+ $this->_redirect('*/*/');
112
+ return;
113
+ } catch (Exception $e) {
114
+ // display error message
115
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
116
+ // go back to edit form
117
+ $this->_redirect('*/*/edit', array('category_id' => $id));
118
+ return;
119
+ }
120
+ }
121
+ // display error message
122
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('megamenusidebar')->__('Unable to find a category to delete'));
123
+ // go to grid
124
+ $this->_redirect('*/*/');
125
+ }
126
+
127
+
128
+ protected function _isAllowed() {
129
+ return Mage::getSingleton('admin/session')->isAllowed('megamenusidebar/category');
130
+ }
131
+
132
+ public function wysiwygAction() {
133
+ $elementId = $this->getRequest()->getParam('element_id', md5(microtime()));
134
+ $content = $this->getLayout()->createBlock('adminhtml/catalog_helper_form_wysiwyg_content', '', array(
135
+ 'editor_element_id' => $elementId
136
+ ));
137
+ $this->getResponse()->setBody($content->toHtml());
138
+ }
139
+
140
+
141
+
142
+ public function massStatusAction()
143
+ {
144
+ $categoryIds = $this->getRequest()->getParam('massaction');
145
+ if(!is_array($categoryIds)) {
146
+ Mage::getSingleton('adminhtml/session')->addError($this->__('Please select category(s)'));
147
+ } else {
148
+ try {
149
+ foreach ($categoryIds as $categoryId) {
150
+ $model = Mage::getSingleton('megamenusidebar/category')
151
+ ->load($categoryId)
152
+ ->setIs_active($this->getRequest()->getParam('status'))
153
+ ->setIsMassupdate(true)
154
+ ->save();
155
+ }
156
+ $this->_getSession()->addSuccess(
157
+ $this->__('Total of %d record(s) were successfully updated', count($categoryIds))
158
+ );
159
+ } catch (Exception $e) {
160
+ $this->_getSession()->addError($e->getMessage());
161
+ }
162
+ }
163
+ $this->_redirect('*/*/index');
164
+ }
165
+ public function massDeleteAction() {
166
+ $categoryIds = $this->getRequest()->getParam('massaction');
167
+ if(!is_array($categoryIds)) {
168
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('megamenusidebar')->__('Please select category(s)'));
169
+ } else {
170
+ try {
171
+ foreach ($categoryIds as $categoryId) {
172
+ $mass = Mage::getModel('megamenusidebar/category')->load($categoryId);
173
+ $mass->delete();
174
+ }
175
+ Mage::getSingleton('adminhtml/session')->addSuccess(
176
+ Mage::helper('megamenusidebar')->__(
177
+ 'Total of %d record(s) were successfully deleted', count($categoryIds)
178
+ )
179
+ );
180
+ } catch (Exception $e) {
181
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
182
+ }
183
+ }
184
+ $this->_redirect('*/*/index');
185
+ }
186
+
187
+
188
+ public function exportCsvAction()
189
+ {
190
+ $fileName = 'category.csv';
191
+ $content = $this->getLayout()->createBlock('megamenusidebar/admin_category_grid')
192
+ ->getCsv();
193
+ $this->_sendUploadResponse($fileName, $content);
194
+ }
195
+
196
+ public function exportXmlAction()
197
+ {
198
+ $fileName = 'category.xml';
199
+ $content = $this->getLayout()->createBlock('megamenusidebar/admin_category_grid')
200
+ ->getXml();
201
+ $this->_sendUploadResponse($fileName, $content);
202
+ }
203
+ protected function _sendUploadResponse($fileName, $content, $contentType='application/octet-stream')
204
+ {
205
+ $response = $this->getResponse();
206
+ $response->setHeader('HTTP/1.1 200 OK','');
207
+ $response->setHeader('Pragma', 'public', true);
208
+ $response->setHeader('Cache-Control', 'must-revalidate, post-check=0, pre-check=0', true);
209
+ $response->setHeader('Content-Disposition', 'attachment; filename='.$fileName);
210
+ $response->setHeader('Last-Modified', date('r'));
211
+ $response->setHeader('Accept-Ranges', 'bytes');
212
+ $response->setHeader('Content-Length', strlen($content));
213
+ $response->setHeader('Content-type', $contentType);
214
+ $response->setBody($content);
215
+ $response->sendResponse();
216
+ die;
217
+ }
218
+ }
app/code/community/Ip/Megamenusidebar/controllers/Admin/ItemController.php ADDED
@@ -0,0 +1,218 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+
11
+ class Ip_Megamenusidebar_Admin_ItemController extends Mage_Adminhtml_Controller_Action {
12
+
13
+ protected function _initAction() {
14
+ $this->loadLayout()
15
+ ->_setActiveMenu('ip/megamenusidebar')
16
+ ->_addBreadcrumb(Mage::helper('megamenusidebar')->__('Megamenusidebar'), Mage::helper('megamenusidebar')->__('Megamenusidebar'))
17
+ ->_addBreadcrumb(Mage::helper('megamenusidebar')->__('Megamenusidebar Items'), Mage::helper('megamenusidebar')->__('Megamenusidebar Items'))
18
+ ;
19
+ return $this;
20
+ }
21
+
22
+ public function indexAction() {
23
+ $this->_initAction()
24
+ ->_addContent($this->getLayout()->createBlock('megamenusidebar/admin_item'))
25
+ ->renderLayout();
26
+ }
27
+
28
+ public function newAction() {
29
+ $this->_forward('edit');
30
+ }
31
+
32
+ public function editAction() {
33
+ if (Mage::helper('megamenusidebar')->versionUseAdminTitle()) {
34
+ $this->_title($this->__('megamenusidebar'));
35
+ }
36
+ // 1. Get ID and create model
37
+ $id = $this->getRequest()->getParam('item_id');
38
+ $model = Mage::getModel('megamenusidebar/item');
39
+ // 2. Initial checking
40
+ if ($id) {
41
+ $model->load($id);
42
+ if (!$model->getId()) {
43
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('megamenusidebar')->__('This item no longer exists'));
44
+ $this->_redirect('*/*/');
45
+ return;
46
+ }
47
+ }
48
+ // 3. Set entered data if was error when we do save
49
+ $data = Mage::getSingleton('adminhtml/session')->getFormData(true);
50
+ if (!empty($data)) {
51
+ $model->setData($data);
52
+ }
53
+ // 4. Register model to use later in blocks
54
+ Mage::register('megamenusidebar_item', $model);
55
+ // 5. Build edit form
56
+ $this->_initAction()
57
+ ->_addBreadcrumb($id ? Mage::helper('megamenusidebar')->__('Edit Item') : Mage::helper('megamenusidebar')->__('New Item'), $id ? Mage::helper('megamenusidebar')->__('Edit Item') : Mage::helper('megamenusidebar')->__('New Item'))
58
+ ->_addContent($this->getLayout()->createBlock('megamenusidebar/admin_item_edit')->setData('action', $this->getUrl('*/admin_item/save')))
59
+ ->_addLeft($this->getLayout()->createBlock('megamenusidebar/admin_item_edit_tabs'))
60
+ ->renderLayout();
61
+ }
62
+
63
+ public function saveAction() {
64
+ if ($data = $this->getRequest()->getPost()) {
65
+ // init model and set data
66
+ $model = Mage::getModel('megamenusidebar/item');
67
+ // print_r($data);exit();
68
+ $model->setData($data);
69
+ // try to save it
70
+ try {
71
+ // save the data
72
+ $model->save();
73
+ // display success message
74
+ Mage::getSingleton('adminhtml/session')->addSuccess(Mage::helper('megamenusidebar')->__('Item was successfully saved'));
75
+ // clear previously saved data from session
76
+ Mage::getSingleton('adminhtml/session')->setFormData(false);
77
+ // check if 'Save and Continue'
78
+ if ($this->getRequest()->getParam('back')) {
79
+ $this->_redirect('*/*/edit', array('item_id' => $model->getId()));
80
+ return;
81
+ }
82
+ // go to grid
83
+ $this->_redirect('*/*/');
84
+ return;
85
+ } catch (Exception $e) {
86
+ // display error message
87
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
88
+ // save data in session
89
+ Mage::getSingleton('adminhtml/session')->setFormData($data);
90
+ // redirect to edit form
91
+ $this->_redirect('*/*/edit', array('item_id' => $this->getRequest()->getParam('item_id')));
92
+ return;
93
+ }
94
+ }
95
+ $this->_redirect('*/*/');
96
+ }
97
+
98
+ public function deleteAction() {
99
+ // check if we know what should be deleted
100
+ if ($id = $this->getRequest()->getParam('item_id')) {
101
+ $name = "";
102
+ try {
103
+ // init model and delete
104
+ $model = Mage::getModel('megamenusidebar/item');
105
+ $model->load($id);
106
+ $name = $model->getName();
107
+ $model->delete();
108
+ // display success message
109
+ Mage::getSingleton('adminhtml/session')->addSuccess(Mage::helper('megamenusidebar')->__('Item was successfully deleted'));
110
+ // go to grid
111
+ $this->_redirect('*/*/');
112
+ return;
113
+ } catch (Exception $e) {
114
+ // display error message
115
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
116
+ // go back to edit form
117
+ $this->_redirect('*/*/edit', array('item_id' => $id));
118
+ return;
119
+ }
120
+ }
121
+ // display error message
122
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('megamenusidebar')->__('Unable to find a item to delete'));
123
+ // go to grid
124
+ $this->_redirect('*/*/');
125
+ }
126
+
127
+
128
+ protected function _isAllowed() {
129
+ return Mage::getSingleton('admin/session')->isAllowed('megamenusidebar/item');
130
+ }
131
+
132
+ public function wysiwygAction() {
133
+ $elementId = $this->getRequest()->getParam('element_id', md5(microtime()));
134
+ $content = $this->getLayout()->createBlock('adminhtml/catalog_helper_form_wysiwyg_content', '', array(
135
+ 'editor_element_id' => $elementId
136
+ ));
137
+ $this->getResponse()->setBody($content->toHtml());
138
+ }
139
+
140
+
141
+
142
+ public function massStatusAction()
143
+ {
144
+ $itemIds = $this->getRequest()->getParam('massaction');
145
+ if(!is_array($itemIds)) {
146
+ Mage::getSingleton('adminhtml/session')->addError($this->__('Please select item(s)'));
147
+ } else {
148
+ try {
149
+ foreach ($itemIds as $itemId) {
150
+ $model = Mage::getSingleton('megamenusidebar/item')
151
+ ->load($itemId)
152
+ ->setIs_active($this->getRequest()->getParam('status'))
153
+ ->setIsMassupdate(true)
154
+ ->save();
155
+ }
156
+ $this->_getSession()->addSuccess(
157
+ $this->__('Total of %d record(s) were successfully updated', count($itemIds))
158
+ );
159
+ } catch (Exception $e) {
160
+ $this->_getSession()->addError($e->getMessage());
161
+ }
162
+ }
163
+ $this->_redirect('*/*/index');
164
+ }
165
+ public function massDeleteAction() {
166
+ $itemIds = $this->getRequest()->getParam('massaction');
167
+ if(!is_array($itemIds)) {
168
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('megamenusidebar')->__('Please select item(s)'));
169
+ } else {
170
+ try {
171
+ foreach ($itemIds as $itemId) {
172
+ $mass = Mage::getModel('megamenusidebar/item')->load($itemId);
173
+ $mass->delete();
174
+ }
175
+ Mage::getSingleton('adminhtml/session')->addSuccess(
176
+ Mage::helper('megamenusidebar')->__(
177
+ 'Total of %d record(s) were successfully deleted', count($itemIds)
178
+ )
179
+ );
180
+ } catch (Exception $e) {
181
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
182
+ }
183
+ }
184
+ $this->_redirect('*/*/index');
185
+ }
186
+
187
+
188
+ public function exportCsvAction()
189
+ {
190
+ $fileName = 'items.csv';
191
+ $content = $this->getLayout()->createBlock('megamenusidebar/admin_item_grid')
192
+ ->getCsv();
193
+ $this->_sendUploadResponse($fileName, $content);
194
+ }
195
+
196
+ public function exportXmlAction()
197
+ {
198
+ $fileName = 'items.xml';
199
+ $content = $this->getLayout()->createBlock('megamenusidebar/admin_item_grid')
200
+ ->getXml();
201
+ $this->_sendUploadResponse($fileName, $content);
202
+ }
203
+ protected function _sendUploadResponse($fileName, $content, $contentType='application/octet-stream')
204
+ {
205
+ $response = $this->getResponse();
206
+ $response->setHeader('HTTP/1.1 200 OK','');
207
+ $response->setHeader('Pragma', 'public', true);
208
+ $response->setHeader('Cache-Control', 'must-revalidate, post-check=0, pre-check=0', true);
209
+ $response->setHeader('Content-Disposition', 'attachment; filename='.$fileName);
210
+ $response->setHeader('Last-Modified', date('r'));
211
+ $response->setHeader('Accept-Ranges', 'bytes');
212
+ $response->setHeader('Content-Length', strlen($content));
213
+ $response->setHeader('Content-type', $contentType);
214
+ $response->setBody($content);
215
+ $response->sendResponse();
216
+ die;
217
+ }
218
+ }
app/code/community/Ip/Megamenusidebar/etc/config.xml ADDED
@@ -0,0 +1,186 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <config>
3
+ <modules>
4
+ <Ip_Megamenusidebar>
5
+ <version>1.0.0</version>
6
+ </Ip_Megamenusidebar>
7
+ </modules>
8
+ <frontend>
9
+ <layout>
10
+ <updates>
11
+ <megamenusidebar>
12
+ <file>ip_megamenusidebar.xml</file>
13
+ </megamenusidebar>
14
+ </updates>
15
+ </layout>
16
+ <translate>
17
+ <modules>
18
+ <Ip_Megamenusidebar>
19
+ <files>
20
+ <default>Ip_Megamenusidebar.csv</default>
21
+ </files>
22
+ </Ip_Megamenusidebar>
23
+ </modules>
24
+ </translate>
25
+ </frontend>
26
+
27
+ <global>
28
+ <rewrite>
29
+ <mage_adminhtml_system_variable>
30
+ <from><![CDATA[#^/megamenusidebar/system_variable#]]>
31
+ </from>
32
+ <to>/admin/system_variable</to>
33
+ </mage_adminhtml_system_variable>
34
+ </rewrite>
35
+ <models>
36
+ <megamenusidebar>
37
+ <class>Ip_Megamenusidebar_Model</class>
38
+ <resourceModel>megamenusidebar_mysql4</resourceModel>
39
+ </megamenusidebar>
40
+ <megamenusidebar_mysql4>
41
+ <class>Ip_Megamenusidebar_Model_Mysql4</class>
42
+ <entities>
43
+ <item>
44
+ <table>ip_megamenusidebar_item</table>
45
+ </item>
46
+ <item_store>
47
+ <table>ip_megamenusidebar_item_store</table>
48
+ </item_store>
49
+ <category>
50
+ <table>ip_megamenusidebar_category</table>
51
+ </category>
52
+ <category_store>
53
+ <table>ip_megamenusidebar_category_store</table>
54
+ </category_store>
55
+ </entities>
56
+ </megamenusidebar_mysql4>
57
+ </models>
58
+ <resources>
59
+ <megamenusidebar_setup>
60
+ <setup>
61
+ <module>Ip_Megamenusidebar</module>
62
+ </setup>
63
+ <connection>
64
+ <use>core_setup</use>
65
+ </connection>
66
+ </megamenusidebar_setup>
67
+ <megamenusidebar_write>
68
+ <connection>
69
+ <use>core_write</use>
70
+ </connection>
71
+ </megamenusidebar_write>
72
+ <megamenusidebar_read>
73
+ <connection>
74
+ <use>core_read</use>
75
+ </connection>
76
+ </megamenusidebar_read>
77
+ </resources>
78
+ <blocks>
79
+ <megamenusidebar>
80
+ <class>Ip_Megamenusidebar_Block</class>
81
+ </megamenusidebar>
82
+ </blocks>
83
+ <helpers>
84
+ <megamenusidebar>
85
+ <class>Ip_Megamenusidebar_Helper</class>
86
+ </megamenusidebar>
87
+ </helpers>
88
+ </global>
89
+ <admin>
90
+ <routers>
91
+ <Ip_Megamenusidebar>
92
+ <use>admin</use>
93
+ <args>
94
+ <module>Ip_Megamenusidebar</module>
95
+ <frontName>megamenusidebar</frontName>
96
+ </args>
97
+ </Ip_Megamenusidebar>
98
+ </routers>
99
+ </admin>
100
+
101
+ <adminhtml>
102
+ <acl>
103
+ <resources>
104
+ <admin>
105
+ <children>
106
+ <megamenusidebar translate="title">
107
+ <title>Megamenusidebar</title>
108
+ <children>
109
+ <item translate="title">
110
+ <title>Manage items </title>
111
+ </item>
112
+ </children>
113
+ <sort_order>65</sort_order>
114
+ </megamenusidebar>
115
+ <system>
116
+ <children>
117
+ <config>
118
+ <children>
119
+ <megamenusidebar>
120
+ <title>Megamenusidebar</title>
121
+ <sort_order>101</sort_order>
122
+ </megamenusidebar>
123
+ </children>
124
+ </config>
125
+ </children>
126
+ </system>
127
+ </children>
128
+ </admin>
129
+ </resources>
130
+ </acl>
131
+ <menu>
132
+ <cms translate="title" module="formbuilder">
133
+ <title>CMS</title>
134
+ <sort_order>70</sort_order>
135
+ <children>
136
+ <megamenusidebar translate="title" module="megamenusidebar">
137
+ <title>MENU</title>
138
+ <sort_order>0</sort_order>
139
+ <children>
140
+ <item translate="title" module="megamenusidebar">
141
+ <title>Items</title>
142
+ <action>megamenusidebar/admin_item/</action>
143
+ <resource>megamenusidebar/admin/item</resource>
144
+ </item>
145
+ <category_item translate="title" module="megamenusidebar">
146
+ <title>Categories</title>
147
+ <action>megamenusidebar/admin_category</action>
148
+ <resource>megamenusidebar/admin_category</resource>
149
+ </category_item>
150
+ <settings translate="title" module="megamenusidebar">
151
+ <title>Settings</title>
152
+ <action>adminhtml/system_config/edit/section/megamenusidebar</action>
153
+ <sort_order>40</sort_order>
154
+ </settings>
155
+ </children>
156
+ </megamenusidebar>
157
+ </children>
158
+ </cms>
159
+ </menu>
160
+ </adminhtml>
161
+ <default>
162
+ <megamenusidebar>
163
+ <options>
164
+ <!-- <type>standard</type>-->
165
+ <color>menu_coffee</color>
166
+ <effect>hover_fade</effect>
167
+ <moretext>View all...</moretext>
168
+ <enable>1</enable>
169
+ <userows>0</userows>
170
+ <maximumsubcat>5</maximumsubcat>
171
+
172
+ <includejquery>1</includejquery>
173
+ <usejseffect>1</usejseffect>
174
+ <sidebar>left</sidebar>
175
+ </options>
176
+ <allpages>
177
+ <enable>1</enable>
178
+ <title>All categories</title>
179
+ </allpages>
180
+ <licence>
181
+ <email>johndoe@doe.com</email>
182
+ <serial>000000000000000000000000</serial>
183
+ </licence>
184
+ </megamenusidebar>
185
+ </default>
186
+ </config>
app/code/community/Ip/Megamenusidebar/etc/system.xml ADDED
@@ -0,0 +1,181 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <tabs>
4
+ <ip translate="label">
5
+ <label>EcommerceOffice.com</label>
6
+ <sort_order>250</sort_order>
7
+ </ip>
8
+ </tabs>
9
+ <sections>
10
+ <megamenusidebar translate="label" module="megamenusidebar">
11
+ <label>Menu</label>
12
+ <tab>ip</tab>
13
+ <frontend_type>text</frontend_type>
14
+ <sort_order>100</sort_order>
15
+ <show_in_default>1</show_in_default>
16
+ <show_in_website>1</show_in_website>
17
+ <show_in_store>1</show_in_store>
18
+ <groups>
19
+ <options translate="label">
20
+ <label>Main options</label>
21
+ <frontend_type>text</frontend_type>
22
+ <sort_order>10</sort_order>
23
+ <show_in_default>1</show_in_default>
24
+ <show_in_website>1</show_in_website>
25
+ <show_in_store>1</show_in_store>
26
+ <fields>
27
+ <!-- <type translate="label">
28
+ <label>Menu</label>
29
+ <frontend_type>select</frontend_type>
30
+ <source_model>megamenusidebar/source_type</source_model>
31
+ <sort_order>55</sort_order>
32
+ <show_in_default>1</show_in_default>
33
+ <show_in_website>1</show_in_website>
34
+ <show_in_store>0</show_in_store>
35
+ </type>-->
36
+ <effect translate="label">
37
+ <label>Menu effect</label>
38
+ <frontend_type>select</frontend_type>
39
+ <source_model>megamenusidebar/source_effect</source_model>
40
+ <sort_order>56</sort_order>
41
+ <show_in_default>1</show_in_default>
42
+ <show_in_website>1</show_in_website>
43
+ <show_in_store>0</show_in_store>
44
+ </effect>
45
+ <color translate="label">
46
+ <label>Menu color</label>
47
+ <frontend_type>select</frontend_type>
48
+ <source_model>megamenusidebar/source_color</source_model>
49
+ <sort_order>57</sort_order>
50
+ <show_in_default>1</show_in_default>
51
+ <show_in_website>1</show_in_website>
52
+ <show_in_store>0</show_in_store>
53
+ </color>
54
+ <maximumsubcat translate="label">
55
+ <label>Subcat number</label>
56
+ <frontend_type>select</frontend_type>
57
+ <source_model>megamenusidebar/source_maximumsubcat</source_model>
58
+ <sort_order>58</sort_order>
59
+ <show_in_default>1</show_in_default>
60
+ <show_in_website>1</show_in_website>
61
+ <show_in_store>0</show_in_store>
62
+ </maximumsubcat>
63
+ <userows translate="label">
64
+ <label>Use rows</label>
65
+ <frontend_type>select</frontend_type>
66
+ <source_model>adminhtml/system_config_source_yesno</source_model>
67
+ <comment>
68
+ Use this option to split columns into rows.
69
+ Sometimes it is convenient to use the rubrics partition,
70
+ especially if you have a large single-level catalog.
71
+ </comment>
72
+ <sort_order>59</sort_order>
73
+ <show_in_default>1</show_in_default>
74
+ <show_in_website>1</show_in_website>
75
+ <show_in_store>0</show_in_store>
76
+ </userows>
77
+ <moretext translate="label">
78
+ <label>More text</label>
79
+ <frontend_type>text</frontend_type>
80
+ <comment>More text for categories</comment>
81
+ <sort_order>60</sort_order>
82
+ <show_in_default>1</show_in_default>
83
+ <show_in_website>1</show_in_website>
84
+ <show_in_store>0</show_in_store>
85
+ </moretext>
86
+
87
+ <includejquery translate="label">
88
+ <label>Include Jquery</label>
89
+ <frontend_type>select</frontend_type>
90
+ <source_model>adminhtml/system_config_source_yesno</source_model>
91
+ <comment> Include JQuery library</comment>
92
+ <sort_order>60</sort_order>
93
+ <show_in_default>1</show_in_default>
94
+ <show_in_website>1</show_in_website>
95
+ <show_in_store>0</show_in_store>
96
+ </includejquery>
97
+ <usejseffect translate="label">
98
+ <label>Use Jquery effect</label>
99
+ <frontend_type>select</frontend_type>
100
+ <source_model>adminhtml/system_config_source_yesno</source_model>
101
+ <sort_order>60</sort_order>
102
+ <show_in_default>1</show_in_default>
103
+ <show_in_website>1</show_in_website>
104
+ <show_in_store>0</show_in_store>
105
+ </usejseffect>
106
+ <sidebar translate="label">
107
+ <label>Sidebar</label>
108
+ <frontend_type>select</frontend_type>
109
+ <source_model>megamenusidebar/source_align</source_model>
110
+ <comment>sidebar for menu</comment>
111
+ <sort_order>60</sort_order>
112
+ <show_in_default>1</show_in_default>
113
+ <show_in_website>1</show_in_website>
114
+ <show_in_store>0</show_in_store>
115
+ </sidebar>
116
+ </fields>
117
+ </options>
118
+ <allpages translate="label">
119
+ <label>"All pages" item options</label>
120
+ <frontend_type>text</frontend_type>
121
+ <sort_order>10</sort_order>
122
+ <show_in_default>1</show_in_default>
123
+ <show_in_website>1</show_in_website>
124
+ <show_in_store>1</show_in_store>
125
+ <fields>
126
+ <enable translate="label">
127
+ <label>Enable</label>
128
+ <frontend_type>select</frontend_type>
129
+ <source_model>adminhtml/system_config_source_yesno</source_model>
130
+ <sort_order>51</sort_order>
131
+ <show_in_default>1</show_in_default>
132
+ <show_in_website>1</show_in_website>
133
+ <show_in_store>1</show_in_store>
134
+ </enable>
135
+ <title translate="label">
136
+ <label>Title text</label>
137
+ <frontend_type>text</frontend_type>
138
+ <sort_order>60</sort_order>
139
+ <show_in_default>1</show_in_default>
140
+ <show_in_website>1</show_in_website>
141
+ <show_in_store>0</show_in_store>
142
+ </title>
143
+ </fields>
144
+ </allpages>
145
+ <licence translate="label">
146
+ <label>Licence key</label>
147
+ <frontend_type>text</frontend_type>
148
+ <sort_order>99</sort_order>
149
+ <show_in_default>1</show_in_default>
150
+ <show_in_website>1</show_in_website>
151
+ <show_in_store>1</show_in_store>
152
+ <fields>
153
+ <email translate="label">
154
+ <label>E-mail</label>
155
+ <frontend_type>text</frontend_type>
156
+ <sort_order>11</sort_order>
157
+ <show_in_default>1</show_in_default>
158
+ <show_in_website>1</show_in_website>
159
+ <show_in_store>0</show_in_store>
160
+ </email>
161
+ <serial translate="label">
162
+ <label>Serial</label>
163
+ <frontend_type>text</frontend_type>
164
+ <sort_order>22</sort_order>
165
+ <show_in_default>1</show_in_default>
166
+ <show_in_website>1</show_in_website>
167
+ <show_in_store>0</show_in_store>
168
+ </serial>
169
+ </fields>
170
+ </licence>
171
+ <developer>
172
+ <frontend_model>megamenusidebar/developer</frontend_model>
173
+ <sort_order>999</sort_order>
174
+ <show_in_default>1</show_in_default>
175
+ <show_in_website>1</show_in_website>
176
+ <show_in_store>1</show_in_store>
177
+ </developer>
178
+ </groups>
179
+ </megamenusidebar>
180
+ </sections>
181
+ </config>
app/code/community/Ip/Megamenusidebar/sql/megamenusidebar_setup/data.sql ADDED
@@ -0,0 +1,121 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ -- phpMyAdmin SQL Dump
2
+ -- version 3.3.8.1
3
+ -- http://www.phpmyadmin.net
4
+ --
5
+ -- Host: localhost
6
+ -- Generation Time: Mar 27, 2011 at 04:36 AM
7
+ -- Server version: 5.1.49
8
+ -- PHP Version: 5.3.3-1ubuntu9.3
9
+
10
+ SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
11
+
12
+ --
13
+ -- Database: `magento1420`
14
+ --
15
+
16
+ -- --------------------------------------------------------
17
+
18
+ --
19
+ -- Table structure for table `ip_megamenusidebar_category`
20
+ --
21
+
22
+ CREATE TABLE IF NOT EXISTS `ip_megamenusidebar_category` (
23
+ `category_id` smallint(6) NOT NULL AUTO_INCREMENT,
24
+ `catalog_id` int(11) NOT NULL,
25
+ `title` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
26
+ `url` text NOT NULL,
27
+ `column` tinyint(4) NOT NULL DEFAULT '2',
28
+ `position` tinyint(4) NOT NULL DEFAULT '0',
29
+ `align_category` varchar(10) NOT NULL DEFAULT 'left',
30
+ `align_content` varchar(10) NOT NULL DEFAULT 'right',
31
+ `content_top` text CHARACTER SET utf8 COLLATE utf8_bin,
32
+ `content_bottom` text CHARACTER SET utf8 COLLATE utf8_bin,
33
+ `from_time` datetime DEFAULT NULL,
34
+ `to_time` datetime DEFAULT NULL,
35
+ `is_active` tinyint(1) NOT NULL DEFAULT '1',
36
+ PRIMARY KEY (`category_id`)
37
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ;
38
+
39
+ --
40
+ -- Dumping data for table `ip_megamenusidebar_category`
41
+ --
42
+
43
+ INSERT INTO `ip_megamenusidebar_category` (`category_id`, `catalog_id`, `title`, `url`, `column`, `position`, `align_category`, `align_content`, `content_top`, `content_bottom`, `from_time`, `to_time`, `is_active`) VALUES
44
+ (2, 13, 'Electronics', '#', 3, 5, 'left', 'left', 0x3c703e3c7374726f6e673e3220636f6c756d6e732063617465676f7279206c61796f75743c2f7374726f6e673e3c2f703e0d0a3c703e596f752063616e20636f6d706c6574656c79206368616e6765206d656e75206f7220796f752063616e206c656176652069742061732069732c2074686973206d656e7520646f6573206e6f74206769766520796f7520616e792074726f75626c652e20416c6c207061727473206f66204d6567614d656e752061726520636f6d706c6574656c79206368616e676561626c6520696e207468652061646d696e6973747261746976652073656374696f6e2c20796f752063616e20616c736f206368616e6765206e616d6573206f662075726c206c696e6b732e2054686973206d656e75206973207265616c6c7920636f6e76696e69656e742e3c2f703e, '', '2009-11-06 10:46:36', '2011-03-12 02:45:00', 1),
45
+ (5, 10, 'Furniture', '#', 2, 2, 'left', 'left', '', 0x3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c2f703e0d0a3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e4d6567616d656e75322d2667743b4974656d732d2667743b4974656d4e616d652d2667743b436f6e74656e7420466f6f7465723c2f7370616e3e3c2f703e0d0a3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c2f703e, '2011-02-27 16:47:02', NULL, 1),
46
+ (6, 18, 'Apparel', '#', 1, 12, 'left', 'left', '', 0x3c703e4353533320616e642043726f73732042726f7773657220537570706f72742e3c2f703e, '2001-03-12 16:52:09', '2016-03-31 16:52:09', 1),
47
+ (7, 3, 'Root', '#', 3, 1, 'left', 'left', 0x3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c2f703e0d0a3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e546f206368616e6765206974656d2068656164657220676f20746f204d6567616d656e75322d2667743b4974656d732d2667743b4974656d4e616d652d2667743b436f6e74656e7420546f703c6272202f3e3c2f7370616e3e3c2f703e0d0a3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c2f703e, '', '2011-03-13 23:18:23', NULL, 1);
48
+
49
+ -- --------------------------------------------------------
50
+
51
+ --
52
+ -- Table structure for table `ip_megamenusidebar_category_store`
53
+ --
54
+
55
+ CREATE TABLE IF NOT EXISTS `ip_megamenusidebar_category_store` (
56
+ `category_id` smallint(6) unsigned DEFAULT NULL,
57
+ `store_id` smallint(6) unsigned DEFAULT NULL
58
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
59
+
60
+ --
61
+ -- Dumping data for table `ip_megamenusidebar_category_store`
62
+ --
63
+
64
+ INSERT INTO `ip_megamenusidebar_category_store` (`category_id`, `store_id`) VALUES
65
+ (6, 0),
66
+ (2, 0),
67
+ (5, 0),
68
+ (7, 0);
69
+
70
+ -- --------------------------------------------------------
71
+
72
+ --
73
+ -- Table structure for table `ip_megamenusidebar_item`
74
+ --
75
+
76
+ CREATE TABLE IF NOT EXISTS `ip_megamenusidebar_item` (
77
+ `item_id` smallint(6) NOT NULL AUTO_INCREMENT,
78
+ `title` varchar(255) NOT NULL,
79
+ `url` text NOT NULL,
80
+ `column` tinyint(4) NOT NULL DEFAULT '2',
81
+ `align_item` varchar(10) NOT NULL DEFAULT 'left',
82
+ `align_content` varchar(10) NOT NULL DEFAULT 'right',
83
+ `position` tinyint(10) NOT NULL DEFAULT '0',
84
+ `content` text NOT NULL,
85
+ `from_time` datetime DEFAULT NULL,
86
+ `to_time` datetime DEFAULT NULL,
87
+ `is_active` tinyint(1) NOT NULL DEFAULT '1',
88
+ `columnsize` tinyint(4) NOT NULL,
89
+ PRIMARY KEY (`item_id`)
90
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=13 ;
91
+
92
+ --
93
+ -- Dumping data for table `ip_megamenusidebar_item`
94
+ --
95
+
96
+ INSERT INTO `ip_megamenusidebar_item` (`item_id`, `title`, `url`, `column`, `align_item`, `align_content`, `position`, `content`, `from_time`, `to_time`, `is_active`, `columnsize`) VALUES
97
+ (5, 'Lists', '#', 4, 'right', 'right', 1, '<h4>Paragraphs with Borders</h4>\r\n<p class="dark">Nulla quis metus a dolor feugiat porta. Phasellus sapien magna, gravida congue fermentum vel, gravida sit amet sapien. Quisque elit est, ullamcorper ac hendrerit eget, porta id enim. Phasellus in velit velit.</p>\r\n<p class="brown">Praesent a dolor sem. Sed scelerisque, tellus id pulvinar tristique, erat eros rutrum mi, id adipiscing arcu sem vel est. Ut ac turpis ipsum. Mauris leo nulla, vestibulum id bibendum nec, auctor eu quam.</p>\r\n<p class="yellow">Nulla quis metus a dolor feugiat porta. Phasellus sapien magna, gravida congue fermentum vel, gravida sit amet sapien. Quisque elit est, ullamcorper ac hendrerit eget, porta id enim. Phasellus in velit velit.</p>\r\n<p class="red">Curabitur vulputate, massa sit amet mollis sodales, arcu quam scelerisque augue, ac elementum velit mauris ac tellus. Nunc dapibus mollis ante a sollicitudin. Nullam adipiscing ante.</p>\r\n<p class="blue">Quisque varius, erat nec fermentum aliquam, erat urna venenatis orci, in semper lorem ante at dolor. Quisque scelerisque mattis magna ut lobortis. Cras porttitor scelerisque ligula eget condimentum.</p>\r\n<p class="green">Vestibulum sed elit ut arcu. Donec leo dui, mollis ut volutpat et, suscipit a mauris. Etiam molestie, purus id dapibus volutpat, nunc nisl ornare odio, sit amet ornare. Maecenas rutrum venenatis diam ac luctus.</p>', '2011-03-09 12:00:00', '2011-03-12 12:00:00', 1, 0),
98
+ (9, 'Video', '#', 3, 'right', 'right', 9, '<b>Welcome to Magento</b>\r\n<iframe width="450" height="320" frameborder="0" allowfullscreen="" src="http://www.youtube.com/embed/BBvsB5PcitQ" title="YouTube video player"></iframe>', '2011-03-14 01:52:21', '2016-07-14 01:52:21', 1, 0),
99
+ (10, 'Forms', '#', 3, 'left', 'left', 1, '<form id="contactForm" action="http://magento1420.dev/contacts/index/post/" method="post">\r\n<h2 class="legend">Contact Information</h2>\r\n<ul class="form-list">\r\n<li>\r\n<div class="field"><label class="required" for="name"><em>*</em>Name</label>\r\n<div class="input-box"><input id="name" class="input-text" title="Email" name="name" type="text" value="John Doe" /></div>\r\n</div>\r\n</li>\r\n<li>\r\n<div class="field"><label class="required" for="email"><em>*</em>Email</label>\r\n<div class="input-box"><input id="email" class="input-text" title="Email" name="email" type="text" value="sample@mail.com" /></div>\r\n</div>\r\n</li>\r\n<li>\r\n<div class="field"><label class="required" for="name"><em>*</em>Telephone</label>\r\n<div class="input-box"><input id="telephone" class="input-text" title="Telephone" name="telephone" type="text" value="+1 0000 0000" /></div>\r\n</div>\r\n</li>\r\n<li class="wide"> <label class="required" for="comment"><em>*</em>Comment</label>\r\n<div class="input-box"><textarea id="comment" class="required-entry input-text" title="Comment" cols="5" rows="3" name="comment">Write message here ... </textarea></div>\r\n</li>\r\n</ul>\r\n<div class="buttons-set">\r\n<p class="required">* Required Fields0</p>\r\n<input id="hideit" style="display: none !important;" name="hideit" type="text" /> <button class="button" title="Submit"><span><span>Submit</span></span></button></div>\r\n</form>', '2011-03-14 09:16:00', '2015-03-14 02:16:45', 0, 0),
100
+ (12, 'Tables', '#', 4, 'right', 'right', 1, '<h4>This is a dark table</h4>\r\n<table id="table_dark" cellspacing="0">\r\n<tbody>\r\n<tr>\r\n<th>Title 1</th><th>Title 2</th><th>Title 3</th><th>Title 4</th>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<h4>This is a light table</h4>\r\n<table id="table_light" cellspacing="0">\r\n<tbody>\r\n<tr>\r\n<th>Title 1</th><th>Title 2</th><th>Title 3</th><th>Title 4</th>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n</tbody>\r\n</table>', '2011-03-26 21:01:46', NULL, 1, 0);
101
+
102
+ -- --------------------------------------------------------
103
+
104
+ --
105
+ -- Table structure for table `ip_megamenusidebar_item_store`
106
+ --
107
+
108
+ CREATE TABLE IF NOT EXISTS `ip_megamenusidebar_item_store` (
109
+ `item_id` smallint(6) unsigned DEFAULT NULL,
110
+ `store_id` smallint(6) unsigned DEFAULT NULL
111
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
112
+
113
+ --
114
+ -- Dumping data for table `ip_megamenusidebar_item_store`
115
+ --
116
+
117
+ INSERT INTO `ip_megamenusidebar_item_store` (`item_id`, `store_id`) VALUES
118
+ (10, 0),
119
+ (5, 0),
120
+ (12, 0),
121
+ (9, 0);
app/code/community/Ip/Megamenusidebar/sql/megamenusidebar_setup/mysql4-install-1.0.0.php ADDED
@@ -0,0 +1,94 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ * Created on Aug 16, 2011
4
+ * Author Ivan Proskuryakov - volgodark@gmail.com
5
+ * Copyright Proskuryakov Ivan. Ip.com © 2011. All Rights Reserved.
6
+ * Single Use, Limited Licence and Single Use No Resale Licence ["Single Use"]
7
+ */
8
+ ?>
9
+ <?php
10
+ $installer = $this;
11
+ $installer->startSetup();
12
+ $installer->run("
13
+ CREATE TABLE IF NOT EXISTS {$this->getTable('ip_megamenusidebar_category')} (
14
+ `category_id` smallint(6) NOT NULL AUTO_INCREMENT,
15
+ `catalog_id` int(11) NOT NULL,
16
+ `title` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
17
+ `url` text NOT NULL,
18
+ `column` tinyint(4) NOT NULL DEFAULT '2',
19
+ `position` tinyint(4) NOT NULL DEFAULT '0',
20
+ `align_category` varchar(10) NOT NULL DEFAULT 'left',
21
+ `align_content` varchar(10) NOT NULL DEFAULT 'right',
22
+ `content_top` text CHARACTER SET utf8 COLLATE utf8_bin,
23
+ `content_bottom` text CHARACTER SET utf8 COLLATE utf8_bin,
24
+ `from_time` datetime DEFAULT NULL,
25
+ `to_time` datetime DEFAULT NULL,
26
+ `is_active` tinyint(1) NOT NULL DEFAULT '1',
27
+ PRIMARY KEY (`category_id`)
28
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;
29
+
30
+ INSERT INTO {$this->getTable('ip_megamenusidebar_category')} (`category_id`, `catalog_id`, `title`, `url`, `column`, `position`, `align_category`, `align_content`, `content_top`, `content_bottom`, `from_time`, `to_time`, `is_active`) VALUES
31
+ (2, 13, 'Electronics', '#', 3, 5, 'left', 'left', 0x3c703e3c7374726f6e673e3220636f6c756d6e732063617465676f7279206c61796f75743c2f7374726f6e673e3c2f703e0d0a3c703e596f752063616e20636f6d706c6574656c79206368616e6765206d656e75206f7220796f752063616e206c656176652069742061732069732c2074686973206d656e7520646f6573206e6f74206769766520796f7520616e792074726f75626c652e20416c6c207061727473206f66204d6567614d656e752061726520636f6d706c6574656c79206368616e676561626c6520696e207468652061646d696e6973747261746976652073656374696f6e2c20796f752063616e20616c736f206368616e6765206e616d6573206f662075726c206c696e6b732e2054686973206d656e75206973207265616c6c7920636f6e76696e69656e742e3c2f703e, '', '2009-11-06 10:46:36', '2011-03-12 02:45:00', 1),
32
+ (5, 10, 'Furniture', '#', 2, 2, 'left', 'left', '', 0x3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c2f703e0d0a3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e4d6567616d656e75322d2667743b4974656d732d2667743b4974656d4e616d652d2667743b436f6e74656e7420466f6f7465723c2f7370616e3e3c2f703e0d0a3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c2f703e, '2011-02-27 16:47:02', NULL, 1),
33
+ (6, 18, 'Apparel', '#', 1, 12, 'left', 'left', '', 0x3c703e4353533320616e642043726f73732042726f7773657220537570706f72742e3c2f703e, '2001-03-12 16:52:09', '2016-03-31 16:52:09', 1),
34
+ (7, 3, 'Root', '#', 3, 1, 'left', 'left', 0x3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c2f703e0d0a3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e546f206368616e6765206974656d2068656164657220676f20746f204d6567616d656e75322d2667743b4974656d732d2667743b4974656d4e616d652d2667743b436f6e74656e7420546f703c6272202f3e3c2f7370616e3e3c2f703e0d0a3c703e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c7370616e207374796c653d22666f6e742d73697a653a20736d616c6c3b223e2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d3c2f7370616e3e3c2f703e, '', '2011-03-13 23:18:23', NULL, 1);
35
+
36
+
37
+ -- --------------------------------------------------------
38
+
39
+
40
+ CREATE TABLE IF NOT EXISTS {$this->getTable('ip_megamenusidebar_category_store')} (
41
+ `category_id` smallint(6) unsigned DEFAULT NULL,
42
+ `store_id` smallint(6) unsigned DEFAULT NULL
43
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
44
+
45
+ INSERT INTO {$this->getTable('ip_megamenusidebar_category_store')} (`category_id`, `store_id`) VALUES
46
+ (6, 0),
47
+ (2, 0),
48
+ (5, 0),
49
+ (7, 0);
50
+
51
+
52
+ -- --------------------------------------------------------
53
+
54
+
55
+ CREATE TABLE IF NOT EXISTS {$this->getTable('ip_megamenusidebar_item')} (
56
+ `item_id` smallint(6) NOT NULL AUTO_INCREMENT,
57
+ `title` varchar(255) NOT NULL,
58
+ `url` text NOT NULL,
59
+ `column` tinyint(4) NOT NULL DEFAULT '2',
60
+ `align_item` varchar(10) NOT NULL DEFAULT 'left',
61
+ `align_content` varchar(10) NOT NULL DEFAULT 'right',
62
+ `position` tinyint(10) NOT NULL DEFAULT '0',
63
+ `content` text NOT NULL,
64
+ `from_time` datetime DEFAULT NULL,
65
+ `to_time` datetime DEFAULT NULL,
66
+ `is_active` tinyint(1) NOT NULL DEFAULT '1',
67
+ `columnsize` tinyint(4) NOT NULL,
68
+ PRIMARY KEY (`item_id`)
69
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ;
70
+
71
+
72
+ INSERT INTO {$this->getTable('ip_megamenusidebar_item')} (`item_id`, `title`, `url`, `column`, `align_item`, `align_content`, `position`, `content`, `from_time`, `to_time`, `is_active`, `columnsize`) VALUES
73
+ (5, 'Lists', '#', 4, 'right', 'right', 1, '<h4>Paragraphs with Borders</h4>\r\n<p class=\"dark\">Nulla quis metus a dolor feugiat porta. Phasellus sapien magna, gravida congue fermentum vel, gravida sit amet sapien. Quisque elit est, ullamcorper ac hendrerit eget, porta id enim. Phasellus in velit velit.</p>\r\n<p class=\"brown\">Praesent a dolor sem. Sed scelerisque, tellus id pulvinar tristique, erat eros rutrum mi, id adipiscing arcu sem vel est. Ut ac turpis ipsum. Mauris leo nulla, vestibulum id bibendum nec, auctor eu quam.</p>\r\n<p class=\"yellow\">Nulla quis metus a dolor feugiat porta. Phasellus sapien magna, gravida congue fermentum vel, gravida sit amet sapien. Quisque elit est, ullamcorper ac hendrerit eget, porta id enim. Phasellus in velit velit.</p>\r\n<p class=\"red\">Curabitur vulputate, massa sit amet mollis sodales, arcu quam scelerisque augue, ac elementum velit mauris ac tellus. Nunc dapibus mollis ante a sollicitudin. Nullam adipiscing ante.</p>\r\n<p class=\"blue\">Quisque varius, erat nec fermentum aliquam, erat urna venenatis orci, in semper lorem ante at dolor. Quisque scelerisque mattis magna ut lobortis. Cras porttitor scelerisque ligula eget condimentum.</p>\r\n<p class=\"green\">Vestibulum sed elit ut arcu. Donec leo dui, mollis ut volutpat et, suscipit a mauris. Etiam molestie, purus id dapibus volutpat, nunc nisl ornare odio, sit amet ornare. Maecenas rutrum venenatis diam ac luctus.</p>', '2011-03-09 12:00:00', '2011-03-12 12:00:00', 1, 0),
74
+ (9, 'Video', '#', 3, 'right', 'right', 9, '<b>Welcome to Magento</b>\r\n<iframe width=\"450\" height=\"320\" frameborder=\"0\" allowfullscreen=\"\" src=\"http://www.youtube.com/embed/BBvsB5PcitQ\" title=\"YouTube video player\"></iframe>', '2011-03-14 01:52:21', '2016-07-14 01:52:21', 1, 0),
75
+ (10, 'Forms', '#', 3, 'left', 'left', 1, '<form id=\"contactForm\" action=\"http://magento1420.dev/contacts/index/post/\" method=\"post\">\r\n<h2 class=\"legend\">Contact Information</h2>\r\n<ul class=\"form-list\">\r\n<li>\r\n<div class=\"field\"><label class=\"required\" for=\"name\"><em>*</em>Name</label>\r\n<div class=\"input-box\"><input id=\"name\" class=\"input-text\" title=\"Email\" name=\"name\" type=\"text\" value=\"John Doe\" /></div>\r\n</div>\r\n</li>\r\n<li>\r\n<div class=\"field\"><label class=\"required\" for=\"email\"><em>*</em>Email</label>\r\n<div class=\"input-box\"><input id=\"email\" class=\"input-text\" title=\"Email\" name=\"email\" type=\"text\" value=\"sample@mail.com\" /></div>\r\n</div>\r\n</li>\r\n<li>\r\n<div class=\"field\"><label class=\"required\" for=\"name\"><em>*</em>Telephone</label>\r\n<div class=\"input-box\"><input id=\"telephone\" class=\"input-text\" title=\"Telephone\" name=\"telephone\" type=\"text\" value=\"+1 0000 0000\" /></div>\r\n</div>\r\n</li>\r\n<li class=\"wide\"> <label class=\"required\" for=\"comment\"><em>*</em>Comment</label>\r\n<div class=\"input-box\"><textarea id=\"comment\" class=\"required-entry input-text\" title=\"Comment\" cols=\"5\" rows=\"3\" name=\"comment\">Write message here ... </textarea></div>\r\n</li>\r\n</ul>\r\n<div class=\"buttons-set\">\r\n<p class=\"required\">* Required Fields0</p>\r\n<input id=\"hideit\" style=\"display: none !important;\" name=\"hideit\" type=\"text\" /> <button class=\"button\" title=\"Submit\"><span><span>Submit</span></span></button></div>\r\n</form>', '2011-03-14 09:16:00', '2015-03-14 02:16:45', 0, 0),
76
+ (12, 'Tables', '#', 4, 'right', 'right', 1, '<h4>This is a dark table</h4>\r\n<table id=\"table_dark\" cellspacing=\"0\">\r\n<tbody>\r\n<tr>\r\n<th>Title 1</th><th>Title 2</th><th>Title 3</th><th>Title 4</th>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<h4>This is a light table</h4>\r\n<table id=\"table_light\" cellspacing=\"0\">\r\n<tbody>\r\n<tr>\r\n<th>Title 1</th><th>Title 2</th><th>Title 3</th><th>Title 4</th>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n<tr>\r\n<td>Cell 1</td>\r\n<td>Cell 2</td>\r\n<td>Cell 3</td>\r\n<td>Cell 4</td>\r\n</tr>\r\n</tbody>\r\n</table>', '2011-03-26 21:01:46', NULL, 1, 0);
77
+
78
+
79
+ -- --------------------------------------------------------
80
+
81
+ CREATE TABLE IF NOT EXISTS {$this->getTable('ip_megamenusidebar_item_store')} (
82
+ `item_id` smallint(6) unsigned DEFAULT NULL,
83
+ `store_id` smallint(6) unsigned DEFAULT NULL
84
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
85
+
86
+ INSERT INTO {$this->getTable('ip_megamenusidebar_item_store')} (`item_id`, `store_id`) VALUES
87
+ (10, 0),
88
+ (5, 0),
89
+ (12, 0),
90
+ (9, 0);
91
+ ");
92
+
93
+ $installer->endSetup();
94
+ ?>
app/design/frontend/base/default/layout/ip_megamenusidebar.xml ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <layout>
3
+ <!-- MM LAYOUT START -->
4
+ <default>
5
+ <reference name="left">
6
+ <block type="megamenusidebar/navigation" name="megamenusidebar.left" before="-" template="ip_megamenusidebar/navigation_left.phtml"/>
7
+ </reference>
8
+ <reference name="right">
9
+ <block type="megamenusidebar/navigation" name="megamenusidebar.right" before="-" template="ip_megamenusidebar/navigation_right.phtml"/>
10
+ </reference>
11
+ </default>
12
+ <!-- MM LAYOUT END -->
13
+ <!-- ADDITIONAL LAYOUT RULES IN Ip_Megamenusidebar_Block_Navigation -->
14
+ </layout>
15
+
16
+
17
+ <!--
18
+ <reference name="head">
19
+ <action method="addItem"><type>skin_css</type><name>ip_megamenusidebar/css/ie6.css</name><params/><if>lt IE 7</if></action>
20
+ <action method="addCss"><stylesheet>ip_megamenusidebar/css/megamenu.css</stylesheet></action>
21
+ <action method="addItem">
22
+ <type>skin_js</type>
23
+ <name>ip_megamenusidebar/jquery-1.5.1.min.js</name>
24
+ <params/>
25
+ </action>
26
+ <action method="addItem">
27
+ <type>skin_js</type>
28
+ <name>ip_megamenusidebar/megamenu.js</name>
29
+ <params/>
30
+ </action>
31
+ </reference>
32
+ -->
33
+
app/design/frontend/base/default/template/ip_megamenusidebar/navigation_left.phtml ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php if (Mage::getStoreConfig('megamenusidebar/options/sidebar') == 'left') { ?>
2
+
3
+ <?php if (Mage::getStoreConfig('megamenusidebar/options/usejseffect')) {?>
4
+ <script type="text/javascript">
5
+ JQ(function() {
6
+ JQ("#menu").megaMenu('<?php echo Mage::getStoreConfig('megamenusidebar/options/effect'); ?>');
7
+ });
8
+ </script>
9
+ <?php }?>
10
+
11
+ <div class="sidebarmenu-container">
12
+ <ul id="menu" class="<?php echo Mage::getStoreConfig('megamenusidebar/options/color'); ?>"><!-- Begin Mega Menu -->
13
+
14
+ <?php echo $this->drawCatalog(); ?>
15
+
16
+ <?php if (Mage::getStoreConfig('megamenusidebar/allpages/enable')): ?>
17
+ <?php $title = Mage::getStoreConfig('megamenusidebar/allpages/title'); ?>
18
+ <?php $storeId = Mage::app()->getStore()->getId();
19
+ $storeUrl = Mage::getModel('core/store')->load($storeId)->getUrl();
20
+ $storeUrl.='#';
21
+ ?>
22
+ <?php $title = Mage::getStoreConfig('megamenusidebar/allpages/title'); ?>
23
+
24
+ <li class="mm2">
25
+ <a class="drop" href="<?php echo $storeUrl;?>" ><?php echo $title;?></a>
26
+ <div class="dropcontent drop2columns">
27
+ <div class="col_2">
28
+ <ul>
29
+ <?php echo $this->drawAllCategoriesMenu(); ?>
30
+ </ul>
31
+ </div>
32
+ </div>
33
+ </li>
34
+ <?php endif; ?>
35
+
36
+
37
+
38
+ <?php echo $this->drawAdminMenu(); ?>
39
+ </ul>
40
+ </div>
41
+
42
+ <?php } ?>
app/design/frontend/base/default/template/ip_megamenusidebar/navigation_right.phtml ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php if (Mage::getStoreConfig('megamenusidebar/options/sidebar') == 'right') { ?>
2
+
3
+ <?php if (Mage::getStoreConfig('megamenusidebar/options/usejseffect')) {?>
4
+ <script type="text/javascript">
5
+ JQ(function() {
6
+ JQ("#menu").megaMenu('<?php echo Mage::getStoreConfig('megamenusidebar/options/effect'); ?>');
7
+ });
8
+ </script>
9
+ <?php }?>
10
+
11
+ <div class="sidebarmenu-container">
12
+ <ul id="menu" class="<?php echo Mage::getStoreConfig('megamenusidebar/options/color'); ?>"><!-- Begin Mega Menu -->
13
+
14
+ <?php echo $this->drawCatalog(); ?>
15
+
16
+ <?php if (Mage::getStoreConfig('megamenusidebar/allpages/enable')): ?>
17
+ <?php $title = Mage::getStoreConfig('megamenusidebar/allpages/title'); ?>
18
+ <?php $storeId = Mage::app()->getStore()->getId();
19
+ $storeUrl = Mage::getModel('core/store')->load($storeId)->getUrl();
20
+ $storeUrl.='#';
21
+ ?>
22
+ <?php $title = Mage::getStoreConfig('megamenusidebar/allpages/title'); ?>
23
+
24
+ <li class="mm2">
25
+ <a class="drop" href="<?php echo $storeUrl;?>" ><?php echo $title;?></a>
26
+ <div class="dropcontent drop2columns">
27
+ <div class="col_2">
28
+ <ul>
29
+ <?php echo $this->drawAllCategoriesMenu(); ?>
30
+ </ul>
31
+ </div>
32
+ </div>
33
+ </li>
34
+ <?php endif; ?>
35
+
36
+
37
+
38
+ <?php echo $this->drawAdminMenu(); ?>
39
+ </ul>
40
+ </div>
41
+
42
+ <?php } ?>
app/etc/modules/Ip_Megamenusidebar.xml ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <modules>
4
+ <Ip_Megamenusidebar>
5
+ <active>true</active>
6
+ <codePool>community</codePool>
7
+ </Ip_Megamenusidebar>
8
+ </modules>
9
+ </config>
app/locale/en_US/Ip_Megamenusidebar.csv ADDED
File without changes
js/ip_megamenusidebar/jquery-1.5.1.min.js ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * jQuery JavaScript Library v1.5.1
3
+ * http://jquery.com/
4
+ *
5
+ * Copyright 2011, John Resig
6
+ * Dual licensed under the MIT or GPL Version 2 licenses.
7
+ * http://jquery.org/license
8
+ *
9
+ * Includes Sizzle.js
10
+ * http://sizzlejs.com/
11
+ * Copyright 2011, The Dojo Foundation
12
+ * Released under the MIT, BSD, and GPL Licenses.
13
+ *
14
+ * Date: Wed Feb 23 13:55:29 2011 -0500
15
+ */
16
+ (function(a,b){function cg(a){return d.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cd(a){if(!bZ[a]){var b=d("<"+a+">").appendTo("body"),c=b.css("display");b.remove();if(c==="none"||c==="")c="block";bZ[a]=c}return bZ[a]}function cc(a,b){var c={};d.each(cb.concat.apply([],cb.slice(0,b)),function(){c[this]=a});return c}function bY(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function bX(){try{return new a.XMLHttpRequest}catch(b){}}function bW(){d(a).unload(function(){for(var a in bU)bU[a](0,1)})}function bQ(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var e=a.dataTypes,f={},g,h,i=e.length,j,k=e[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h==="string"&&(f[h.toLowerCase()]=a.converters[h]);l=k,k=e[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=f[m]||f["* "+k];if(!n){p=b;for(o in f){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=f[j[1]+" "+k];if(p){o=f[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&d.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function bP(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function bO(a,b,c,e){if(d.isArray(b)&&b.length)d.each(b,function(b,f){c||bq.test(a)?e(a,f):bO(a+"["+(typeof f==="object"||d.isArray(f)?b:"")+"]",f,c,e)});else if(c||b==null||typeof b!=="object")e(a,b);else if(d.isArray(b)||d.isEmptyObject(b))e(a,"");else for(var f in b)bO(a+"["+f+"]",b[f],c,e)}function bN(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bH,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l==="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=bN(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=bN(a,c,d,e,"*",g));return l}function bM(a){return function(b,c){typeof b!=="string"&&(c=b,b="*");if(d.isFunction(c)){var e=b.toLowerCase().split(bB),f=0,g=e.length,h,i,j;for(;f<g;f++)h=e[f],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bo(a,b,c){var e=b==="width"?bi:bj,f=b==="width"?a.offsetWidth:a.offsetHeight;if(c==="border")return f;d.each(e,function(){c||(f-=parseFloat(d.css(a,"padding"+this))||0),c==="margin"?f+=parseFloat(d.css(a,"margin"+this))||0:f-=parseFloat(d.css(a,"border"+this+"Width"))||0});return f}function ba(a,b){b.src?d.ajax({url:b.src,async:!1,dataType:"script"}):d.globalEval(b.text||b.textContent||b.innerHTML||""),b.parentNode&&b.parentNode.removeChild(b)}function _(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function $(a,b){if(b.nodeType===1){var c=b.nodeName.toLowerCase();b.clearAttributes(),b.mergeAttributes(a);if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(d.expando)}}function Z(a,b){if(b.nodeType===1&&d.hasData(a)){var c=d.expando,e=d.data(a),f=d.data(b,e);if(e=e[c]){var g=e.events;f=f[c]=d.extend({},e);if(g){delete f.handle,f.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)d.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function Y(a,b){return d.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function O(a,b,c){if(d.isFunction(b))return d.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return d.grep(a,function(a,d){return a===b===c});if(typeof b==="string"){var e=d.grep(a,function(a){return a.nodeType===1});if(J.test(b))return d.filter(b,e,!c);b=d.filter(b,e)}return d.grep(a,function(a,e){return d.inArray(a,b)>=0===c})}function N(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function F(a,b){return(a&&a!=="*"?a+".":"")+b.replace(r,"`").replace(s,"&")}function E(a){var b,c,e,f,g,h,i,j,k,l,m,n,o,q=[],r=[],s=d._data(this,"events");if(a.liveFired!==this&&s&&s.live&&!a.target.disabled&&(!a.button||a.type!=="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var t=s.live.slice(0);for(i=0;i<t.length;i++)g=t[i],g.origType.replace(p,"")===a.type?r.push(g.selector):t.splice(i--,1);f=d(a.target).closest(r,a.currentTarget);for(j=0,k=f.length;j<k;j++){m=f[j];for(i=0;i<t.length;i++){g=t[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,e=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,e=d(a.relatedTarget).closest(g.selector)[0];(!e||e!==h)&&q.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=q.length;j<k;j++){f=q[j];if(c&&f.level>c)break;a.currentTarget=f.elem,a.data=f.handleObj.data,a.handleObj=f.handleObj,o=f.handleObj.origHandler.apply(f.elem,arguments);if(o===!1||a.isPropagationStopped()){c=f.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function C(a,c,e){var f=d.extend({},e[0]);f.type=a,f.originalEvent={},f.liveFired=b,d.event.handle.call(c,f),f.isDefaultPrevented()&&e[0].preventDefault()}function w(){return!0}function v(){return!1}function g(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function f(a,c,f){if(f===b&&a.nodeType===1){f=a.getAttribute("data-"+c);if(typeof f==="string"){try{f=f==="true"?!0:f==="false"?!1:f==="null"?null:d.isNaN(f)?e.test(f)?d.parseJSON(f):f:parseFloat(f)}catch(g){}d.data(a,c,f)}else f=b}return f}var c=a.document,d=function(){function I(){if(!d.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(I,1);return}d.ready()}}var d=function(a,b){return new d.fn.init(a,b,g)},e=a.jQuery,f=a.$,g,h=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]+)$)/,i=/\S/,j=/^\s+/,k=/\s+$/,l=/\d/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=navigator.userAgent,w,x=!1,y,z="then done fail isResolved isRejected promise".split(" "),A,B=Object.prototype.toString,C=Object.prototype.hasOwnProperty,D=Array.prototype.push,E=Array.prototype.slice,F=String.prototype.trim,G=Array.prototype.indexOf,H={};d.fn=d.prototype={constructor:d,init:function(a,e,f){var g,i,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!e&&c.body){this.context=c,this[0]=c.body,this.selector="body",this.length=1;return this}if(typeof a==="string"){g=h.exec(a);if(!g||!g[1]&&e)return!e||e.jquery?(e||f).find(a):this.constructor(e).find(a);if(g[1]){e=e instanceof d?e[0]:e,k=e?e.ownerDocument||e:c,j=m.exec(a),j?d.isPlainObject(e)?(a=[c.createElement(j[1])],d.fn.attr.call(a,e,!0)):a=[k.createElement(j[1])]:(j=d.buildFragment([g[1]],[k]),a=(j.cacheable?d.clone(j.fragment):j.fragment).childNodes);return d.merge(this,a)}i=c.getElementById(g[2]);if(i&&i.parentNode){if(i.id!==g[2])return f.find(a);this.length=1,this[0]=i}this.context=c,this.selector=a;return this}if(d.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return d.makeArray(a,this)},selector:"",jquery:"1.5.1",length:0,size:function(){return this.length},toArray:function(){return E.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var e=this.constructor();d.isArray(a)?D.apply(e,a):d.merge(e,a),e.prevObject=this,e.context=this.context,b==="find"?e.selector=this.selector+(this.selector?" ":"")+c:b&&(e.selector=this.selector+"."+b+"("+c+")");return e},each:function(a,b){return d.each(this,a,b)},ready:function(a){d.bindReady(),y.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(E.apply(this,arguments),"slice",E.call(arguments).join(","))},map:function(a){return this.pushStack(d.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:D,sort:[].sort,splice:[].splice},d.fn.init.prototype=d.fn,d.extend=d.fn.extend=function(){var a,c,e,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i==="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!=="object"&&!d.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){e=i[c],f=a[c];if(i===f)continue;l&&f&&(d.isPlainObject(f)||(g=d.isArray(f)))?(g?(g=!1,h=e&&d.isArray(e)?e:[]):h=e&&d.isPlainObject(e)?e:{},i[c]=d.extend(l,h,f)):f!==b&&(i[c]=f)}return i},d.extend({noConflict:function(b){a.$=f,b&&(a.jQuery=e);return d},isReady:!1,readyWait:1,ready:function(a){a===!0&&d.readyWait--;if(!d.readyWait||a!==!0&&!d.isReady){if(!c.body)return setTimeout(d.ready,1);d.isReady=!0;if(a!==!0&&--d.readyWait>0)return;y.resolveWith(c,[d]),d.fn.trigger&&d(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!x){x=!0;if(c.readyState==="complete")return setTimeout(d.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",A,!1),a.addEventListener("load",d.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",A),a.attachEvent("onload",d.ready);var b=!1;try{b=a.frameElement==null}catch(e){}c.documentElement.doScroll&&b&&I()}}},isFunction:function(a){return d.type(a)==="function"},isArray:Array.isArray||function(a){return d.type(a)==="array"},isWindow:function(a){return a&&typeof a==="object"&&"setInterval"in a},isNaN:function(a){return a==null||!l.test(a)||isNaN(a)},type:function(a){return a==null?String(a):H[B.call(a)]||"object"},isPlainObject:function(a){if(!a||d.type(a)!=="object"||a.nodeType||d.isWindow(a))return!1;if(a.constructor&&!C.call(a,"constructor")&&!C.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a){}return c===b||C.call(a,c)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!=="string"||!b)return null;b=d.trim(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return a.JSON&&a.JSON.parse?a.JSON.parse(b):(new Function("return "+b))();d.error("Invalid JSON: "+b)},parseXML:function(b,c,e){a.DOMParser?(e=new DOMParser,c=e.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),e=c.documentElement,(!e||!e.nodeName||e.nodeName==="parsererror")&&d.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(a){if(a&&i.test(a)){var b=c.head||c.getElementsByTagName("head")[0]||c.documentElement,e=c.createElement("script");d.support.scriptEval()?e.appendChild(c.createTextNode(a)):e.text=a,b.insertBefore(e,b.firstChild),b.removeChild(e)}},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,e){var f,g=0,h=a.length,i=h===b||d.isFunction(a);if(e){if(i){for(f in a)if(c.apply(a[f],e)===!1)break}else for(;g<h;)if(c.apply(a[g++],e)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(var j=a[0];g<h&&c.call(j,g,j)!==!1;j=a[++g]){}return a},trim:F?function(a){return a==null?"":F.call(a)}:function(a){return a==null?"":(a+"").replace(j,"").replace(k,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var e=d.type(a);a.length==null||e==="string"||e==="function"||e==="regexp"||d.isWindow(a)?D.call(c,a):d.merge(c,a)}return c},inArray:function(a,b){if(b.indexOf)return b.indexOf(a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length==="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,b,c){var d=[],e;for(var f=0,g=a.length;f<g;f++)e=b(a[f],f,c),e!=null&&(d[d.length]=e);return d.concat.apply([],d)},guid:1,proxy:function(a,c,e){arguments.length===2&&(typeof c==="string"?(e=a,a=e[c],c=b):c&&!d.isFunction(c)&&(e=c,c=b)),!c&&a&&(c=function(){return a.apply(e||this,arguments)}),a&&(c.guid=a.guid=a.guid||c.guid||d.guid++);return c},access:function(a,c,e,f,g,h){var i=a.length;if(typeof c==="object"){for(var j in c)d.access(a,j,c[j],f,g,e);return a}if(e!==b){f=!h&&f&&d.isFunction(e);for(var k=0;k<i;k++)g(a[k],c,f?e.call(a[k],k,g(a[k],c)):e,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},_Deferred:function(){var a=[],b,c,e,f={done:function(){if(!e){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=d.type(i),j==="array"?f.done.apply(f,i):j==="function"&&a.push(i);k&&f.resolveWith(k[0],k[1])}return this},resolveWith:function(d,f){if(!e&&!b&&!c){c=1;try{while(a[0])a.shift().apply(d,f)}catch(g){throw g}finally{b=[d,f],c=0}}return this},resolve:function(){f.resolveWith(d.isFunction(this.promise)?this.promise():this,arguments);return this},isResolved:function(){return c||b},cancel:function(){e=1,a=[];return this}};return f},Deferred:function(a){var b=d._Deferred(),c=d._Deferred(),e;d.extend(b,{then:function(a,c){b.done(a).fail(c);return this},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,promise:function(a){if(a==null){if(e)return e;e=a={}}var c=z.length;while(c--)a[z[c]]=b[z[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){var b=arguments.length,c=b<=1&&a&&d.isFunction(a.promise)?a:d.Deferred(),e=c.promise();if(b>1){var f=E.call(arguments,0),g=b,h=function(a){return function(b){f[a]=arguments.length>1?E.call(arguments,0):b,--g||c.resolveWith(e,f)}};while(b--)a=f[b],a&&d.isFunction(a.promise)?a.promise().then(h(b),c.reject):--g;g||c.resolveWith(e,f)}else c!==a&&c.resolve(a);return e},uaMatch:function(a){a=a.toLowerCase();var b=r.exec(a)||s.exec(a)||t.exec(a)||a.indexOf("compatible")<0&&u.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}d.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.subclass=this.subclass,a.fn.init=function b(b,c){c&&c instanceof d&&!(c instanceof a)&&(c=a(c));return d.fn.init.call(this,b,c,e)},a.fn.init.prototype=a.fn;var e=a(c);return a},browser:{}}),y=d._Deferred(),d.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){H["[object "+b+"]"]=b.toLowerCase()}),w=d.uaMatch(v),w.browser&&(d.browser[w.browser]=!0,d.browser.version=w.version),d.browser.webkit&&(d.browser.safari=!0),G&&(d.inArray=function(a,b){return G.call(b,a)}),i.test(" ")&&(j=/^[\s\xA0]+/,k=/[\s\xA0]+$/),g=d(c),c.addEventListener?A=function(){c.removeEventListener("DOMContentLoaded",A,!1),d.ready()}:c.attachEvent&&(A=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",A),d.ready())});return d}();(function(){d.support={};var b=c.createElement("div");b.style.display="none",b.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var e=b.getElementsByTagName("*"),f=b.getElementsByTagName("a")[0],g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=b.getElementsByTagName("input")[0];if(e&&e.length&&f){d.support={leadingWhitespace:b.firstChild.nodeType===3,tbody:!b.getElementsByTagName("tbody").length,htmlSerialize:!!b.getElementsByTagName("link").length,style:/red/.test(f.getAttribute("style")),hrefNormalized:f.getAttribute("href")==="/a",opacity:/^0.55$/.test(f.style.opacity),cssFloat:!!f.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,deleteExpando:!0,optDisabled:!1,checkClone:!1,noCloneEvent:!0,noCloneChecked:!0,boxModel:null,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableHiddenOffsets:!0},i.checked=!0,d.support.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,d.support.optDisabled=!h.disabled;var j=null;d.support.scriptEval=function(){if(j===null){var b=c.documentElement,e=c.createElement("script"),f="script"+d.now();try{e.appendChild(c.createTextNode("window."+f+"=1;"))}catch(g){}b.insertBefore(e,b.firstChild),a[f]?(j=!0,delete a[f]):j=!1,b.removeChild(e),b=e=f=null}return j};try{delete b.test}catch(k){d.support.deleteExpando=!1}!b.addEventListener&&b.attachEvent&&b.fireEvent&&(b.attachEvent("onclick",function l(){d.support.noCloneEvent=!1,b.detachEvent("onclick",l)}),b.cloneNode(!0).fireEvent("onclick")),b=c.createElement("div"),b.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";var m=c.createDocumentFragment();m.appendChild(b.firstChild),d.support.checkClone=m.cloneNode(!0).cloneNode(!0).lastChild.checked,d(function(){var a=c.createElement("div"),b=c.getElementsByTagName("body")[0];if(b){a.style.width=a.style.paddingLeft="1px",b.appendChild(a),d.boxModel=d.support.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,d.support.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",d.support.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";var e=a.getElementsByTagName("td");d.support.reliableHiddenOffsets=e[0].offsetHeight===0,e[0].style.display="",e[1].style.display="none",d.support.reliableHiddenOffsets=d.support.reliableHiddenOffsets&&e[0].offsetHeight===0,a.innerHTML="",b.removeChild(a).style.display="none",a=e=null}});var n=function(a){var b=c.createElement("div");a="on"+a;if(!b.attachEvent)return!0;var d=a in b;d||(b.setAttribute(a,"return;"),d=typeof b[a]==="function"),b=null;return d};d.support.submitBubbles=n("submit"),d.support.changeBubbles=n("change"),b=e=f=null}})();var e=/^(?:\{.*\}|\[.*\])$/;d.extend({cache:{},uuid:0,expando:"jQuery"+(d.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?d.cache[a[d.expando]]:a[d.expando];return!!a&&!g(a)},data:function(a,c,e,f){if(d.acceptData(a)){var g=d.expando,h=typeof c==="string",i,j=a.nodeType,k=j?d.cache:a,l=j?a[d.expando]:a[d.expando]&&d.expando;if((!l||f&&l&&!k[l][g])&&h&&e===b)return;l||(j?a[d.expando]=l=++d.uuid:l=d.expando),k[l]||(k[l]={},j||(k[l].toJSON=d.noop));if(typeof c==="object"||typeof c==="function")f?k[l][g]=d.extend(k[l][g],c):k[l]=d.extend(k[l],c);i=k[l],f&&(i[g]||(i[g]={}),i=i[g]),e!==b&&(i[c]=e);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[c]:i}},removeData:function(b,c,e){if(d.acceptData(b)){var f=d.expando,h=b.nodeType,i=h?d.cache:b,j=h?b[d.expando]:d.expando;if(!i[j])return;if(c){var k=e?i[j][f]:i[j];if(k){delete k[c];if(!g(k))return}}if(e){delete i[j][f];if(!g(i[j]))return}var l=i[j][f];d.support.deleteExpando||i!=a?delete i[j]:i[j]=null,l?(i[j]={},h||(i[j].toJSON=d.noop),i[j][f]=l):h&&(d.support.deleteExpando?delete b[d.expando]:b.removeAttribute?b.removeAttribute(d.expando):b[d.expando]=null)}},_data:function(a,b,c){return d.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=d.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),d.fn.extend({data:function(a,c){var e=null;if(typeof a==="undefined"){if(this.length){e=d.data(this[0]);if(this[0].nodeType===1){var g=this[0].attributes,h;for(var i=0,j=g.length;i<j;i++)h=g[i].name,h.indexOf("data-")===0&&(h=h.substr(5),f(this[0],h,e[h]))}}return e}if(typeof a==="object")return this.each(function(){d.data(this,a)});var k=a.split(".");k[1]=k[1]?"."+k[1]:"";if(c===b){e=this.triggerHandler("getData"+k[1]+"!",[k[0]]),e===b&&this.length&&(e=d.data(this[0],a),e=f(this[0],a,e));return e===b&&k[1]?this.data(k[0]):e}return this.each(function(){var b=d(this),e=[k[0],c];b.triggerHandler("setData"+k[1]+"!",e),d.data(this,a,c),b.triggerHandler("changeData"+k[1]+"!",e)})},removeData:function(a){return this.each(function(){d.removeData(this,a)})}}),d.extend({queue:function(a,b,c){if(a){b=(b||"fx")+"queue";var e=d._data(a,b);if(!c)return e||[];!e||d.isArray(c)?e=d._data(a,b,d.makeArray(c)):e.push(c);return e}},dequeue:function(a,b){b=b||"fx";var c=d.queue(a,b),e=c.shift();e==="inprogress"&&(e=c.shift()),e&&(b==="fx"&&c.unshift("inprogress"),e.call(a,function(){d.dequeue(a,b)})),c.length||d.removeData(a,b+"queue",!0)}}),d.fn.extend({queue:function(a,c){typeof a!=="string"&&(c=a,a="fx");if(c===b)return d.queue(this[0],a);return this.each(function(b){var e=d.queue(this,a,c);a==="fx"&&e[0]!=="inprogress"&&d.dequeue(this,a)})},dequeue:function(a){return this.each(function(){d.dequeue(this,a)})},delay:function(a,b){a=d.fx?d.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){d.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var h=/[\n\t\r]/g,i=/\s+/,j=/\r/g,k=/^(?:href|src|style)$/,l=/^(?:button|input)$/i,m=/^(?:button|input|object|select|textarea)$/i,n=/^a(?:rea)?$/i,o=/^(?:radio|checkbox)$/i;d.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"},d.fn.extend({attr:function(a,b){return d.access(this,a,b,!0,d.attr)},removeAttr:function(a,b){return this.each(function(){d.attr(this,a,""),this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(d.isFunction(a))return this.each(function(b){var c=d(this);c.addClass(a.call(this,b,c.attr("class")))});if(a&&typeof a==="string"){var b=(a||"").split(i);for(var c=0,e=this.length;c<e;c++){var f=this[c];if(f.nodeType===1)if(f.className){var g=" "+f.className+" ",h=f.className;for(var j=0,k=b.length;j<k;j++)g.indexOf(" "+b[j]+" ")<0&&(h+=" "+b[j]);f.className=d.trim(h)}else f.className=a}}return this},removeClass:function(a){if(d.isFunction(a))return this.each(function(b){var c=d(this);c.removeClass(a.call(this,b,c.attr("class")))});if(a&&typeof a==="string"||a===b){var c=(a||"").split(i);for(var e=0,f=this.length;e<f;e++){var g=this[e];if(g.nodeType===1&&g.className)if(a){var j=(" "+g.className+" ").replace(h," ");for(var k=0,l=c.length;k<l;k++)j=j.replace(" "+c[k]+" "," ");g.className=d.trim(j)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,e=typeof b==="boolean";if(d.isFunction(a))return this.each(function(c){var e=d(this);e.toggleClass(a.call(this,c,e.attr("class"),b),b)});return this.each(function(){if(c==="string"){var f,g=0,h=d(this),j=b,k=a.split(i);while(f=k[g++])j=e?j:!h.hasClass(f),h[j?"addClass":"removeClass"](f)}else if(c==="undefined"||c==="boolean")this.className&&d._data(this,"__className__",this.className),this.className=this.className||a===!1?"":d._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if((" "+this[c].className+" ").replace(h," ").indexOf(b)>-1)return!0;return!1},val:function(a){if(!arguments.length){var c=this[0];if(c){if(d.nodeName(c,"option")){var e=c.attributes.value;return!e||e.specified?c.value:c.text}if(d.nodeName(c,"select")){var f=c.selectedIndex,g=[],h=c.options,i=c.type==="select-one";if(f<0)return null;for(var k=i?f:0,l=i?f+1:h.length;k<l;k++){var m=h[k];if(m.selected&&(d.support.optDisabled?!m.disabled:m.getAttribute("disabled")===null)&&(!m.parentNode.disabled||!d.nodeName(m.parentNode,"optgroup"))){a=d(m).val();if(i)return a;g.push(a)}}if(i&&!g.length&&h.length)return d(h[f]).val();return g}if(o.test(c.type)&&!d.support.checkOn)return c.getAttribute("value")===null?"on":c.value;return(c.value||"").replace(j,"")}return b}var n=d.isFunction(a);return this.each(function(b){var c=d(this),e=a;if(this.nodeType===1){n&&(e=a.call(this,b,c.val())),e==null?e="":typeof e==="number"?e+="":d.isArray(e)&&(e=d.map(e,function(a){return a==null?"":a+""}));if(d.isArray(e)&&o.test(this.type))this.checked=d.inArray(c.val(),e)>=0;else if(d.nodeName(this,"select")){var f=d.makeArray(e);d("option",this).each(function(){this.selected=d.inArray(d(this).val(),f)>=0}),f.length||(this.selectedIndex=-1)}else this.value=e}})}}),d.extend({attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,e,f){if(!a||a.nodeType===3||a.nodeType===8||a.nodeType===2)return b;if(f&&c in d.attrFn)return d(a)[c](e);var g=a.nodeType!==1||!d.isXMLDoc(a),h=e!==b;c=g&&d.props[c]||c;if(a.nodeType===1){var i=k.test(c);if(c==="selected"&&!d.support.optSelected){var j=a.parentNode;j&&(j.selectedIndex,j.parentNode&&j.parentNode.selectedIndex)}if((c in a||a[c]!==b)&&g&&!i){h&&(c==="type"&&l.test(a.nodeName)&&a.parentNode&&d.error("type property can't be changed"),e===null?a.nodeType===1&&a.removeAttribute(c):a[c]=e);if(d.nodeName(a,"form")&&a.getAttributeNode(c))return a.getAttributeNode(c).nodeValue;if(c==="tabIndex"){var o=a.getAttributeNode("tabIndex");return o&&o.specified?o.value:m.test(a.nodeName)||n.test(a.nodeName)&&a.href?0:b}return a[c]}if(!d.support.style&&g&&c==="style"){h&&(a.style.cssText=""+e);return a.style.cssText}h&&a.setAttribute(c,""+e);if(!a.attributes[c]&&(a.hasAttribute&&!a.hasAttribute(c)))return b;var p=!d.support.hrefNormalized&&g&&i?a.getAttribute(c,2):a.getAttribute(c);return p===null?b:p}h&&(a[c]=e);return a[c]}});var p=/\.(.*)$/,q=/^(?:textarea|input|select)$/i,r=/\./g,s=/ /g,t=/[^\w\s.|`]/g,u=function(a){return a.replace(t,"\\$&")};d.event={add:function(c,e,f,g){if(c.nodeType!==3&&c.nodeType!==8){try{d.isWindow(c)&&(c!==a&&!c.frameElement)&&(c=a)}catch(h){}if(f===!1)f=v;else if(!f)return;var i,j;f.handler&&(i=f,f=i.handler),f.guid||(f.guid=d.guid++);var k=d._data(c);if(!k)return;var l=k.events,m=k.handle;l||(k.events=l={}),m||(k.handle=m=function(){return typeof d!=="undefined"&&!d.event.triggered?d.event.handle.apply(m.elem,arguments):b}),m.elem=c,e=e.split(" ");var n,o=0,p;while(n=e[o++]){j=i?d.extend({},i):{handler:f,data:g},n.indexOf(".")>-1?(p=n.split("."),n=p.shift(),j.namespace=p.slice(0).sort().join(".")):(p=[],j.namespace=""),j.type=n,j.guid||(j.guid=f.guid);var q=l[n],r=d.event.special[n]||{};if(!q){q=l[n]=[];if(!r.setup||r.setup.call(c,g,p,m)===!1)c.addEventListener?c.addEventListener(n,m,!1):c.attachEvent&&c.attachEvent("on"+n,m)}r.add&&(r.add.call(c,j),j.handler.guid||(j.handler.guid=f.guid)),q.push(j),d.event.global[n]=!0}c=null}},global:{},remove:function(a,c,e,f){if(a.nodeType!==3&&a.nodeType!==8){e===!1&&(e=v);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=d.hasData(a)&&d._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(e=c.handler,c=c.type);if(!c||typeof c==="string"&&c.charAt(0)==="."){c=c||"";for(h in t)d.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+d.map(m.slice(0).sort(),u).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!e){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))d.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=d.event.special[h]||{};for(j=f||0;j<p.length;j++){q=p[j];if(e.guid===q.guid){if(l||n.test(q.namespace))f==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(f!=null)break}}if(p.length===0||f!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&d.removeEvent(a,h,s.handle),g=null,delete t[h]}if(d.isEmptyObject(t)){var w=s.handle;w&&(w.elem=null),delete s.events,delete s.handle,d.isEmptyObject(s)&&d.removeData(a,b,!0)}}},trigger:function(a,c,e){var f=a.type||a,g=arguments[3];if(!g){a=typeof a==="object"?a[d.expando]?a:d.extend(d.Event(f),a):d.Event(f),f.indexOf("!")>=0&&(a.type=f=f.slice(0,-1),a.exclusive=!0),e||(a.stopPropagation(),d.event.global[f]&&d.each(d.cache,function(){var b=d.expando,e=this[b];e&&e.events&&e.events[f]&&d.event.trigger(a,c,e.handle.elem)}));if(!e||e.nodeType===3||e.nodeType===8)return b;a.result=b,a.target=e,c=d.makeArray(c),c.unshift(a)}a.currentTarget=e;var h=d._data(e,"handle");h&&h.apply(e,c);var i=e.parentNode||e.ownerDocument;try{e&&e.nodeName&&d.noData[e.nodeName.toLowerCase()]||e["on"+f]&&e["on"+f].apply(e,c)===!1&&(a.result=!1,a.preventDefault())}catch(j){}if(!a.isPropagationStopped()&&i)d.event.trigger(a,c,i,!0);else if(!a.isDefaultPrevented()){var k,l=a.target,m=f.replace(p,""),n=d.nodeName(l,"a")&&m==="click",o=d.event.special[m]||{};if((!o._default||o._default.call(e,a)===!1)&&!n&&!(l&&l.nodeName&&d.noData[l.nodeName.toLowerCase()])){try{l[m]&&(k=l["on"+m],k&&(l["on"+m]=null),d.event.triggered=!0,l[m]())}catch(q){}k&&(l["on"+m]=k),d.event.triggered=!1}}},handle:function(c){var e,f,g,h,i,j=[],k=d.makeArray(arguments);c=k[0]=d.event.fix(c||a.event),c.currentTarget=this,e=c.type.indexOf(".")<0&&!c.exclusive,e||(g=c.type.split("."),c.type=g.shift(),j=g.slice(0).sort(),h=new RegExp("(^|\\.)"+j.join("\\.(?:.*\\.)?")+"(\\.|$)")),c.namespace=c.namespace||j.join("."),i=d._data(this,"events"),f=(i||{})[c.type];if(i&&f){f=f.slice(0);for(var l=0,m=f.length;l<m;l++){var n=f[l];if(e||h.test(n.namespace)){c.handler=n.handler,c.data=n.data,c.handleObj=n;var o=n.handler.apply(this,k);o!==b&&(c.result=o,o===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[d.expando])return a;var e=a;a=d.Event(e);for(var f=this.props.length,g;f;)g=this.props[--f],a[g]=e[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=c.documentElement,i=c.body;a.pageX=a.clientX+(h&&h.scrollLeft||i&&i.scrollLeft||0)-(h&&h.clientLeft||i&&i.clientLeft||0),a.pageY=a.clientY+(h&&h.scrollTop||i&&i.scrollTop||0)-(h&&h.clientTop||i&&i.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:d.proxy,special:{ready:{setup:d.bindReady,teardown:d.noop},live:{add:function(a){d.event.add(this,F(a.origType,a.selector),d.extend({},a,{handler:E,guid:a.handler.guid}))},remove:function(a){d.event.remove(this,F(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){d.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},d.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},d.Event=function(a){if(!this.preventDefault)return new d.Event(a);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?w:v):this.type=a,this.timeStamp=d.now(),this[d.expando]=!0},d.Event.prototype={preventDefault:function(){this.isDefaultPrevented=w;var a=this.originalEvent;a&&(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=w;var a=this.originalEvent;a&&(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=w,this.stopPropagation()},isDefaultPrevented:v,isPropagationStopped:v,isImmediatePropagationStopped:v};var x=function(a){var b=a.relatedTarget;try{if(b!==c&&!b.parentNode)return;while(b&&b!==this)b=b.parentNode;b!==this&&(a.type=a.data,d.event.handle.apply(this,arguments))}catch(e){}},y=function(a){a.type=a.data,d.event.handle.apply(this,arguments)};d.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){d.event.special[a]={setup:function(c){d.event.add(this,b,c&&c.selector?y:x,a)},teardown:function(a){d.event.remove(this,b,a&&a.selector?y:x)}}}),d.support.submitBubbles||(d.event.special.submit={setup:function(a,b){if(this.nodeName&&this.nodeName.toLowerCase()!=="form")d.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=b.type;(c==="submit"||c==="image")&&d(b).closest("form").length&&C("submit",this,arguments)}),d.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=b.type;(c==="text"||c==="password")&&d(b).closest("form").length&&a.keyCode===13&&C("submit",this,arguments)});else return!1},teardown:function(a){d.event.remove(this,".specialSubmit")}});if(!d.support.changeBubbles){var z,A=function(a){var b=a.type,c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?d.map(a.options,function(a){return a.selected}).join("-"):"":a.nodeName.toLowerCase()==="select"&&(c=a.selectedIndex);return c},B=function B(a){var c=a.target,e,f;if(q.test(c.nodeName)&&!c.readOnly){e=d._data(c,"_change_data"),f=A(c),(a.type!=="focusout"||c.type!=="radio")&&d._data(c,"_change_data",f);if(e===b||f===e)return;if(e!=null||f)a.type="change",a.liveFired=b,d.event.trigger(a,arguments[1],c)}};d.event.special.change={filters:{focusout:B,beforedeactivate:B,click:function(a){var b=a.target,c=b.type;(c==="radio"||c==="checkbox"||b.nodeName.toLowerCase()==="select")&&B.call(this,a)},keydown:function(a){var b=a.target,c=b.type;(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&B.call(this,a)},beforeactivate:function(a){var b=a.target;d._data(b,"_change_data",A(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in z)d.event.add(this,c+".specialChange",z[c]);return q.test(this.nodeName)},teardown:function(a){d.event.remove(this,".specialChange");return q.test(this.nodeName)}},z=d.event.special.change.filters,z.focus=z.beforeactivate}c.addEventListener&&d.each({focus:"focusin",blur:"focusout"},function(a,b){function c(a){a=d.event.fix(a),a.type=b;return d.event.handle.call(this,a)}d.event.special[b]={setup:function(){this.addEventListener(a,c,!0)},teardown:function(){this.removeEventListener(a,c,!0)}}}),d.each(["bind","one"],function(a,c){d.fn[c]=function(a,e,f){if(typeof a==="object"){for(var g in a)this[c](g,e,a[g],f);return this}if(d.isFunction(e)||e===!1)f=e,e=b;var h=c==="one"?d.proxy(f,function(a){d(this).unbind(a,h);return f.apply(this,arguments)}):f;if(a==="unload"&&c!=="one")this.one(a,e,f);else for(var i=0,j=this.length;i<j;i++)d.event.add(this[i],a,h,e);return this}}),d.fn.extend({unbind:function(a,b){if(typeof a!=="object"||a.preventDefault)for(var e=0,f=this.length;e<f;e++)d.event.remove(this[e],a,b);else for(var c in a)this.unbind(c,a[c]);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){d.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){var c=d.Event(a);c.preventDefault(),c.stopPropagation(),d.event.trigger(c,b,this[0]);return c.result}},toggle:function(a){var b=arguments,c=1;while(c<b.length)d.proxy(a,b[c++]);return this.click(d.proxy(a,function(e){var f=(d._data(this,"lastToggle"+a.guid)||0)%c;d._data(this,"lastToggle"+a.guid,f+1),e.preventDefault();return b[f].apply(this,arguments)||!1}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var D={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};d.each(["live","die"],function(a,c){d.fn[c]=function(a,e,f,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:d(this.context);if(typeof a==="object"&&!a.preventDefault){for(var o in a)n[c](o,e,a[o],m);return this}d.isFunction(e)&&(f=e,e=b),a=(a||"").split(" ");while((h=a[i++])!=null){j=p.exec(h),k="",j&&(k=j[0],h=h.replace(p,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,h==="focus"||h==="blur"?(a.push(D[h]+k),h=h+k):h=(D[h]||h)+k;if(c==="live")for(var q=0,r=n.length;q<r;q++)d.event.add(n[q],"live."+F(h,m),{data:e,selector:m,handler:f,origType:h,origHandler:f,preType:l});else n.unbind("live."+F(h,m),f)}return this}}),d.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){d.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},d.attrFn&&(d.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!=="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,f=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,e,g){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!=="string")return e;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(f.call(n)==="[object Array]")if(u)if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&e.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&e.push(j[t]);else e.push.apply(e,n);else p(n,e);o&&(k(o,h,e,g),k.uniqueSort(e));return e};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!=="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(f){if(f===!0)continue}else g=o=!0}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b==="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1){}a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b==="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var d,f=e++,g=u;typeof b==="string"&&!j.test(b)&&(b=b.toLowerCase(),d=b,g=t),g("parentNode",b,f,a,d,c)},"~":function(a,b,c){var d,f=e++,g=u;typeof b==="string"&&!j.test(b)&&(b=b.toLowerCase(),d=b,g=t),g("previousSibling",b,f,a,d,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!=="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!=="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!=="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){return"text"===a.getAttribute("type")},radio:function(a){return"radio"===a.type},checkbox:function(a){return"checkbox"===a.type},file:function(a){return"file"===a.type},password:function(a){return"password"===a.type},submit:function(a){return"submit"===a.type},image:function(a){return"image"===a.type},reset:function(a){return"reset"===a.type},button:function(a){return"button"===a.type||a.nodeName.toLowerCase()==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(f.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length==="number")for(var e=a.length;c<e;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(a===b){g=!0;return 0}if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!=="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!=="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!=="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!=="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector,d=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(e){d=!0}b&&(k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(d||!l.match.PSEUDO.test(c)&&!/!=/.test(c))return b.call(a,c)}catch(e){}return k(c,null,null,[a]).length>0})}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!=="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};d.find=k,d.expr=k.selectors,d.expr[":"]=d.expr.filters,d.unique=k.uniqueSort,d.text=k.getText,d.isXMLDoc=k.isXML,d.contains=k.contains}();var G=/Until$/,H=/^(?:parents|prevUntil|prevAll)/,I=/,/,J=/^.[^:#\[\.,]*$/,K=Array.prototype.slice,L=d.expr.match.POS,M={children:!0,contents:!0,next:!0,prev:!0};d.fn.extend({find:function(a){var b=this.pushStack("","find",a),c=0;for(var e=0,f=this.length;e<f;e++){c=b.length,d.find(a,this[e],b);if(e>0)for(var g=c;g<b.length;g++)for(var h=0;h<c;h++)if(b[h]===b[g]){b.splice(g--,1);break}}return b},has:function(a){var b=d(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(d.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(O(this,a,!1),"not",a)},filter:function(a){return this.pushStack(O(this,a,!0),"filter",a)},is:function(a){return!!a&&d.filter(a,this).length>0},closest:function(a,b){var c=[],e,f,g=this[0];if(d.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(e=0,f=a.length;e<f;e++)i=a[e],j[i]||(j[i]=d.expr.match.POS.test(i)?d(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:d(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=L.test(a)?d(a,b||this.context):null;for(e=0,f=this.length;e<f;e++){g=this[e];while(g){if(l?l.index(g)>-1:d.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b)break}}c=c.length>1?d.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a==="string")return d.inArray(this[0],a?d(a):this.parent().children());return d.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a==="string"?d(a,b):d.makeArray(a),e=d.merge(this.get(),c);return this.pushStack(N(c[0])||N(e[0])?e:d.unique(e))},andSelf:function(){return this.add(this.prevObject)}}),d.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return d.dir(a,"parentNode")},parentsUntil:function(a,b,c){return d.dir(a,"parentNode",c)},next:function(a){return d.nth(a,2,"nextSibling")},prev:function(a){return d.nth(a,2,"previousSibling")},nextAll:function(a){return d.dir(a,"nextSibling")},prevAll:function(a){return d.dir(a,"previousSibling")},nextUntil:function(a,b,c){return d.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return d.dir(a,"previousSibling",c)},siblings:function(a){return d.sibling(a.parentNode.firstChild,a)},children:function(a){return d.sibling(a.firstChild)},contents:function(a){return d.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:d.makeArray(a.childNodes)}},function(a,b){d.fn[a]=function(c,e){var f=d.map(this,b,c),g=K.call(arguments);G.test(a)||(e=c),e&&typeof e==="string"&&(f=d.filter(e,f)),f=this.length>1&&!M[a]?d.unique(f):f,(this.length>1||I.test(e))&&H.test(a)&&(f=f.reverse());return this.pushStack(f,a,g.join(","))}}),d.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?d.find.matchesSelector(b[0],a)?[b[0]]:[]:d.find.matches(a,b)},dir:function(a,c,e){var f=[],g=a[c];while(g&&g.nodeType!==9&&(e===b||g.nodeType!==1||!d(g).is(e)))g.nodeType===1&&f.push(g),g=g[c];return f},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var P=/ jQuery\d+="(?:\d+|null)"/g,Q=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,S=/<([\w:]+)/,T=/<tbody/i,U=/<|&#?\w+;/,V=/<(?:script|object|embed|option|style)/i,W=/checked\s*(?:[^=]|=\s*.checked.)/i,X={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};X.optgroup=X.option,X.tbody=X.tfoot=X.colgroup=X.caption=X.thead,X.th=X.td,d.support.htmlSerialize||(X._default=[1,"div<div>","</div>"]),d.fn.extend({text:function(a){if(d.isFunction(a))return this.each(function(b){var c=d(this);c.text(a.call(this,b,c.text()))});if(typeof a!=="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return d.text(this)},wrapAll:function(a){if(d.isFunction(a))return this.each(function(b){d(this).wrapAll(a.call(this,b))});if(this[0]){var b=d(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(d.isFunction(a))return this.each(function(b){d(this).wrapInner(a.call(this,b))});return this.each(function(){var b=d(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){d(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){d.nodeName(this,"body")||d(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=d(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,d(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,e;(e=this[c])!=null;c++)if(!a||d.filter(a,[e]).length)!b&&e.nodeType===1&&(d.cleanData(e.getElementsByTagName("*")),d.cleanData([e])),e.parentNode&&e.parentNode.removeChild(e);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&d.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return d.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(P,""):null;if(typeof a!=="string"||V.test(a)||!d.support.leadingWhitespace&&Q.test(a)||X[(S.exec(a)||["",""])[1].toLowerCase()])d.isFunction(a)?this.each(function(b){var c=d(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);else{a=a.replace(R,"<$1></$2>");try{for(var c=0,e=this.length;c<e;c++)this[c].nodeType===1&&(d.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(f){this.empty().append(a)}}return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(d.isFunction(a))return this.each(function(b){var c=d(this),e=c.html();c.replaceWith(a.call(this,b,e))});typeof a!=="string"&&(a=d(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;d(this).remove(),b?d(b).before(a):d(c).append(a)})}return this.pushStack(d(d.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,e){var f,g,h,i,j=a[0],k=[];if(!d.support.checkClone&&arguments.length===3&&typeof j==="string"&&W.test(j))return this.each(function(){d(this).domManip(a,c,e,!0)});if(d.isFunction(j))return this.each(function(f){var g=d(this);a[0]=j.call(this,f,c?g.html():b),g.domManip(a,c,e)});if(this[0]){i=j&&j.parentNode,d.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?f={fragment:i}:f=d.buildFragment(a,this,k),h=f.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&d.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)e.call(c?Y(this[l],g):this[l],f.cacheable||m>1&&l<n?d.clone(h,!0,!0):h)}k.length&&d.each(k,ba)}return this}}),d.buildFragment=function(a,b,e){var f,g,h,i=b&&b[0]?b[0].ownerDocument||b[0]:c;a.length===1&&typeof a[0]==="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!V.test(a[0])&&(d.support.checkClone||!W.test(a[0]))&&(g=!0,h=d.fragments[a[0]],h&&(h!==1&&(f=h))),f||(f=i.createDocumentFragment(),d.clean(a,i,f,e)),g&&(d.fragments[a[0]]=h?f:1);return{fragment:f,cacheable:g}},d.fragments={},d.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){d.fn[a]=function(c){var e=[],f=d(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&f.length===1){f[b](this[0]);return this}for(var h=0,i=f.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();d(f[h])[b](j),e=e.concat(j)}return this.pushStack(e,a,f.selector)}}),d.extend({clone:function(a,b,c){var e=a.cloneNode(!0),f,g,h;if((!d.support.noCloneEvent||!d.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!d.isXMLDoc(a)){$(a,e),f=_(a),g=_(e);for(h=0;f[h];++h)$(f[h],g[h])}if(b){Z(a,e);if(c){f=_(a),g=_(e);for(h=0;f[h];++h)Z(f[h],g[h])}}return e},clean:function(a,b,e,f){b=b||c,typeof b.createElement==="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var g=[];for(var h=0,i;(i=a[h])!=null;h++){typeof i==="number"&&(i+="");if(!i)continue;if(typeof i!=="string"||U.test(i)){if(typeof i==="string"){i=i.replace(R,"<$1></$2>");var j=(S.exec(i)||["",""])[1].toLowerCase(),k=X[j]||X._default,l=k[0],m=b.createElement("div");m.innerHTML=k[1]+i+k[2];while(l--)m=m.lastChild;if(!d.support.tbody){var n=T.test(i),o=j==="table"&&!n?m.firstChild&&m.firstChild.childNodes:k[1]==="<table>"&&!n?m.childNodes:[];for(var p=o.length-1;p>=0;--p)d.nodeName(o[p],"tbody")&&!o[p].childNodes.length&&o[p].parentNode.removeChild(o[p])}!d.support.leadingWhitespace&&Q.test(i)&&m.insertBefore(b.createTextNode(Q.exec(i)[0]),m.firstChild),i=m.childNodes}}else i=b.createTextNode(i);i.nodeType?g.push(i):g=d.merge(g,i)}if(e)for(h=0;g[h];h++)!f||!d.nodeName(g[h],"script")||g[h].type&&g[h].type.toLowerCase()!=="text/javascript"?(g[h].nodeType===1&&g.splice.apply(g,[h+1,0].concat(d.makeArray(g[h].getElementsByTagName("script")))),e.appendChild(g[h])):f.push(g[h].parentNode?g[h].parentNode.removeChild(g[h]):g[h]);return g},cleanData:function(a){var b,c,e=d.cache,f=d.expando,g=d.event.special,h=d.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&d.noData[j.nodeName.toLowerCase()])continue;c=j[d.expando];if(c){b=e[c]&&e[c][f];if(b&&b.events){for(var k in b.events)g[k]?d.event.remove(j,k):d.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[d.expando]:j.removeAttribute&&j.removeAttribute(d.expando),delete e[c]}}}});var bb=/alpha\([^)]*\)/i,bc=/opacity=([^)]*)/,bd=/-([a-z])/ig,be=/([A-Z])/g,bf=/^-?\d+(?:px)?$/i,bg=/^-?\d/,bh={position:"absolute",visibility:"hidden",display:"block"},bi=["Left","Right"],bj=["Top","Bottom"],bk,bl,bm,bn=function(a,b){return b.toUpperCase()};d.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return d.access(this,a,c,!0,function(a,c,e){return e!==b?d.style(a,c,e):d.css(a,c)})},d.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bk(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{zIndex:!0,fontWeight:!0,opacity:!0,zoom:!0,lineHeight:!0},cssProps:{"float":d.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,e,f){if(a&&a.nodeType!==3&&a.nodeType!==8&&a.style){var g,h=d.camelCase(c),i=a.style,j=d.cssHooks[h];c=d.cssProps[h]||h;if(e===b){if(j&&"get"in j&&(g=j.get(a,!1,f))!==b)return g;return i[c]}if(typeof e==="number"&&isNaN(e)||e==null)return;typeof e==="number"&&!d.cssNumber[h]&&(e+="px");if(!j||!("set"in j)||(e=j.set(a,e))!==b)try{i[c]=e}catch(k){}}},css:function(a,c,e){var f,g=d.camelCase(c),h=d.cssHooks[g];c=d.cssProps[g]||g;if(h&&"get"in h&&(f=h.get(a,!0,e))!==b)return f;if(bk)return bk(a,c,g)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]},camelCase:function(a){return a.replace(bd,bn)}}),d.curCSS=d.css,d.each(["height","width"],function(a,b){d.cssHooks[b]={get:function(a,c,e){var f;if(c){a.offsetWidth!==0?f=bo(a,b,e):d.swap(a,bh,function(){f=bo(a,b,e)});if(f<=0){f=bk(a,b,b),f==="0px"&&bm&&(f=bm(a,b,b));if(f!=null)return f===""||f==="auto"?"0px":f}if(f<0||f==null){f=a.style[b];return f===""||f==="auto"?"0px":f}return typeof f==="string"?f:f+"px"}},set:function(a,b){if(!bf.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),d.support.opacity||(d.cssHooks.opacity={get:function(a,b){return bc.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style;c.zoom=1;var e=d.isNaN(b)?"":"alpha(opacity="+b*100+")",f=c.filter||"";c.filter=bb.test(f)?f.replace(bb,e):c.filter+" "+e}}),c.defaultView&&c.defaultView.getComputedStyle&&(bl=function(a,c,e){var f,g,h;e=e.replace(be,"-$1").toLowerCase();if(!(g=a.ownerDocument.defaultView))return b;if(h=g.getComputedStyle(a,null))f=h.getPropertyValue(e),f===""&&!d.contains(a.ownerDocument.documentElement,a)&&(f=d.style(a,e));return f}),c.documentElement.currentStyle&&(bm=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bf.test(d)&&bg.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bk=bl||bm,d.expr&&d.expr.filters&&(d.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!d.support.reliableHiddenOffsets&&(a.style.display||d.css(a,"display"))==="none"},d.expr.filters.visible=function(a){return!d.expr.filters.hidden(a)});var bp=/%20/g,bq=/\[\]$/,br=/\r?\n/g,bs=/#.*$/,bt=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bu=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bv=/(?:^file|^widget|\-extension):$/,bw=/^(?:GET|HEAD)$/,bx=/^\/\//,by=/\?/,bz=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bA=/^(?:select|textarea)/i,bB=/\s+/,bC=/([?&])_=[^&]*/,bD=/(^|\-)([a-z])/g,bE=function(a,b,c){return b+c.toUpperCase()},bF=/^([\w\+\.\-]+:)\/\/([^\/?#:]*)(?::(\d+))?/,bG=d.fn.load,bH={},bI={},bJ,bK;try{bJ=c.location.href}catch(bL){bJ=c.createElement("a"),bJ.href="",bJ=bJ.href}bK=bF.exec(bJ.toLowerCase()),d.fn.extend({load:function(a,c,e){if(typeof a!=="string"&&bG)return bG.apply(this,arguments);if(!this.length)return this;var f=a.indexOf(" ");if(f>=0){var g=a.slice(f,a.length);a=a.slice(0,f)}var h="GET";c&&(d.isFunction(c)?(e=c,c=b):typeof c==="object"&&(c=d.param(c,d.ajaxSettings.traditional),h="POST"));var i=this;d.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?d("<div>").append(c.replace(bz,"")).find(g):c)),e&&i.each(e,[c,b,a])}});return this},serialize:function(){return d.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?d.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bA.test(this.nodeName)||bu.test(this.type))}).map(function(a,b){var c=d(this).val();return c==null?null:d.isArray(c)?d.map(c,function(a,c){return{name:b.name,value:a.replace(br,"\r\n")}}):{name:b.name,value:c.replace(br,"\r\n")}}).get()}}),d.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){d.fn[b]=function(a){return this.bind(b,a)}}),d.each(["get","post"],function(a,c){d[c]=function(a,e,f,g){d.isFunction(e)&&(g=g||f,f=e,e=b);return d.ajax({type:c,url:a,data:e,success:f,dataType:g})}}),d.extend({getScript:function(a,c){return d.get(a,b,c,"script")},getJSON:function(a,b,c){return d.get(a,b,c,"json")},ajaxSetup:function(a,b){b?d.extend(!0,a,d.ajaxSettings,b):(b=a,a=d.extend(!0,d.ajaxSettings,b));for(var c in {context:1,url:1})c in b?a[c]=b[c]:c in d.ajaxSettings&&(a[c]=d.ajaxSettings[c]);return a},ajaxSettings:{url:bJ,isLocal:bv.test(bK[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":d.parseJSON,"text xml":d.parseXML}},ajaxPrefilter:bM(bH),ajaxTransport:bM(bI),ajax:function(a,c){function v(a,c,l,n){if(r!==2){r=2,p&&clearTimeout(p),o=b,m=n||"",u.readyState=a?4:0;var q,t,v,w=l?bP(e,u,l):b,x,y;if(a>=200&&a<300||a===304){if(e.ifModified){if(x=u.getResponseHeader("Last-Modified"))d.lastModified[k]=x;if(y=u.getResponseHeader("Etag"))d.etag[k]=y}if(a===304)c="notmodified",q=!0;else try{t=bQ(e,w),c="success",q=!0}catch(z){c="parsererror",v=z}}else{v=c;if(!c||a)c="error",a<0&&(a=0)}u.status=a,u.statusText=c,q?h.resolveWith(f,[t,c,u]):h.rejectWith(f,[u,c,v]),u.statusCode(j),j=b,s&&g.trigger("ajax"+(q?"Success":"Error"),[u,e,q?t:v]),i.resolveWith(f,[u,c]),s&&(g.trigger("ajaxComplete",[u,e]),--d.active||d.event.trigger("ajaxStop"))}}typeof a==="object"&&(c=a,a=b),c=c||{};var e=d.ajaxSetup({},c),f=e.context||e,g=f!==e&&(f.nodeType||f instanceof d)?d(f):d.event,h=d.Deferred(),i=d._Deferred(),j=e.statusCode||{},k,l={},m,n,o,p,q,r=0,s,t,u={readyState:0,setRequestHeader:function(a,b){r||(l[a.toLowerCase().replace(bD,bE)]=b);return this},getAllResponseHeaders:function(){return r===2?m:null},getResponseHeader:function(a){var c;if(r===2){if(!n){n={};while(c=bt.exec(m))n[c[1].toLowerCase()]=c[2]}c=n[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){r||(e.mimeType=a);return this},abort:function(a){a=a||"abort",o&&o.abort(a),v(0,a);return this}};h.promise(u),u.success=u.done,u.error=u.fail,u.complete=i.done,u.statusCode=function(a){if(a){var b;if(r<2)for(b in a)j[b]=[j[b],a[b]];else b=a[u.status],u.then(b,b)}return this},e.url=((a||e.url)+"").replace(bs,"").replace(bx,bK[1]+"//"),e.dataTypes=d.trim(e.dataType||"*").toLowerCase().split(bB),e.crossDomain||(q=bF.exec(e.url.toLowerCase()),e.crossDomain=q&&(q[1]!=bK[1]||q[2]!=bK[2]||(q[3]||(q[1]==="http:"?80:443))!=(bK[3]||(bK[1]==="http:"?80:443)))),e.data&&e.processData&&typeof e.data!=="string"&&(e.data=d.param(e.data,e.traditional)),bN(bH,e,c,u);if(r===2)return!1;s=e.global,e.type=e.type.toUpperCase(),e.hasContent=!bw.test(e.type),s&&d.active++===0&&d.event.trigger("ajaxStart");if(!e.hasContent){e.data&&(e.url+=(by.test(e.url)?"&":"?")+e.data),k=e.url;if(e.cache===!1){var w=d.now(),x=e.url.replace(bC,"$1_="+w);e.url=x+(x===e.url?(by.test(e.url)?"&":"?")+"_="+w:"")}}if(e.data&&e.hasContent&&e.contentType!==!1||c.contentType)l["Content-Type"]=e.contentType;e.ifModified&&(k=k||e.url,d.lastModified[k]&&(l["If-Modified-Since"]=d.lastModified[k]),d.etag[k]&&(l["If-None-Match"]=d.etag[k])),l.Accept=e.dataTypes[0]&&e.accepts[e.dataTypes[0]]?e.accepts[e.dataTypes[0]]+(e.dataTypes[0]!=="*"?", */*; q=0.01":""):e.accepts["*"];for(t in e.headers)u.setRequestHeader(t,e.headers[t]);if(e.beforeSend&&(e.beforeSend.call(f,u,e)===!1||r===2)){u.abort();return!1}for(t in {success:1,error:1,complete:1})u[t](e[t]);o=bN(bI,e,c,u);if(o){u.readyState=1,s&&g.trigger("ajaxSend",[u,e]),e.async&&e.timeout>0&&(p=setTimeout(function(){u.abort("timeout")},e.timeout));try{r=1,o.send(l,v)}catch(y){status<2?v(-1,y):d.error(y)}}else v(-1,"No Transport");return u},param:function(a,c){var e=[],f=function(a,b){b=d.isFunction(b)?b():b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=d.ajaxSettings.traditional);if(d.isArray(a)||a.jquery&&!d.isPlainObject(a))d.each(a,function(){f(this.name,this.value)});else for(var g in a)bO(g,a[g],c,f);return e.join("&").replace(bp,"+")}}),d.extend({active:0,lastModified:{},etag:{}});var bR=d.now(),bS=/(\=)\?(&|$)|()\?\?()/i;d.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return d.expando+"_"+bR++}}),d.ajaxPrefilter("json jsonp",function(b,c,e){var f=typeof b.data==="string";if(b.dataTypes[0]==="jsonp"||c.jsonpCallback||c.jsonp!=null||b.jsonp!==!1&&(bS.test(b.url)||f&&bS.test(b.data))){var g,h=b.jsonpCallback=d.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2",m=function(){a[h]=i,g&&d.isFunction(i)&&a[h](g[0])};b.jsonp!==!1&&(j=j.replace(bS,l),b.url===j&&(f&&(k=k.replace(bS,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},e.then(m,m),b.converters["script json"]=function(){g||d.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),d.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){d.globalEval(a);return a}}}),d.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),d.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var bT=d.now(),bU,bV;d.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&bX()||bY()}:bX,bV=d.ajaxSettings.xhr(),d.support.ajax=!!bV,d.support.cors=bV&&"withCredentials"in bV,bV=b,d.support.ajax&&d.ajaxTransport(function(a){if(!a.crossDomain||d.support.cors){var c;return{send:function(e,f){var g=a.xhr(),h,i;a.username?g.open(a.type,a.url,a.async,a.username,a.password):g.open(a.type,a.url,a.async);if(a.xhrFields)for(i in a.xhrFields)g[i]=a.xhrFields[i];a.mimeType&&g.overrideMimeType&&g.overrideMimeType(a.mimeType),(!a.crossDomain||a.hasContent)&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(i in e)g.setRequestHeader(i,e[i])}catch(j){}g.send(a.hasContent&&a.data||null),c=function(e,i){var j,k,l,m,n;try{if(c&&(i||g.readyState===4)){c=b,h&&(g.onreadystatechange=d.noop,delete bU[h]);if(i)g.readyState!==4&&g.abort();else{j=g.status,l=g.getAllResponseHeaders(),m={},n=g.responseXML,n&&n.documentElement&&(m.xml=n),m.text=g.responseText;try{k=g.statusText}catch(o){k=""}j||!a.isLocal||a.crossDomain?j===1223&&(j=204):j=m.text?200:404}}}catch(p){i||f(-1,p)}m&&f(j,k,m,l)},a.async&&g.readyState!==4?(bU||(bU={},bW()),h=bT++,g.onreadystatechange=bU[h]=c):c()},abort:function(){c&&c(0,1)}}}});var bZ={},b$=/^(?:toggle|show|hide)$/,b_=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,ca,cb=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];d.fn.extend({show:function(a,b,c){var e,f;if(a||a===0)return this.animate(cc("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)e=this[g],f=e.style.display,!d._data(e,"olddisplay")&&f==="none"&&(f=e.style.display=""),f===""&&d.css(e,"display")==="none"&&d._data(e,"olddisplay",cd(e.nodeName));for(g=0;g<h;g++){e=this[g],f=e.style.display;if(f===""||f==="none")e.style.display=d._data(e,"olddisplay")||""}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cc("hide",3),a,b,c);for(var e=0,f=this.length;e<f;e++){var g=d.css(this[e],"display");g!=="none"&&!d._data(this[e],"olddisplay")&&d._data(this[e],"olddisplay",g)}for(e=0;e<f;e++)this[e].style.display="none";return this},_toggle:d.fn.toggle,toggle:function(a,b,c){var e=typeof a==="boolean";d.isFunction(a)&&d.isFunction(b)?this._toggle.apply(this,arguments):a==null||e?this.each(function(){var b=e?a:d(this).is(":hidden");d(this)[b?"show":"hide"]()}):this.animate(cc("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,e){var f=d.speed(b,c,e);if(d.isEmptyObject(a))return this.each(f.complete);return this[f.queue===!1?"each":"queue"](function(){var b=d.extend({},f),c,e=this.nodeType===1,g=e&&d(this).is(":hidden"),h=this;for(c in a){var i=d.camelCase(c);c!==i&&(a[i]=a[c],delete a[c],c=i);if(a[c]==="hide"&&g||a[c]==="show"&&!g)return b.complete.call(this);if(e&&(c==="height"||c==="width")){b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(d.css(this,"display")==="inline"&&d.css(this,"float")==="none")if(d.support.inlineBlockNeedsLayout){var j=cd(this.nodeName);j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)}else this.style.display="inline-block"}d.isArray(a[c])&&((b.specialEasing=b.specialEasing||{})[c]=a[c][1],a[c]=a[c][0])}b.overflow!=null&&(this.style.overflow="hidden"),b.curAnim=d.extend({},a),d.each(a,function(c,e){var f=new d.fx(h,b,c);if(b$.test(e))f[e==="toggle"?g?"show":"hide":e](a);else{var i=b_.exec(e),j=f.cur();if(i){var k=parseFloat(i[2]),l=i[3]||(d.cssNumber[c]?"":"px");l!=="px"&&(d.style(h,c,(k||1)+l),j=(k||1)/f.cur()*j,d.style(h,c,j+l)),i[1]&&(k=(i[1]==="-="?-1:1)*k+j),f.custom(j,k,l)}else f.custom(j,e,"")}});return!0})},stop:function(a,b){var c=d.timers;a&&this.queue([]),this.each(function(){for(var a=c.length-1;a>=0;a--)c[a].elem===this&&(b&&c[a](!0),c.splice(a,1))}),b||this.dequeue();return this}}),d.each({slideDown:cc("show",1),slideUp:cc("hide",1),slideToggle:cc("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){d.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),d.extend({speed:function(a,b,c){var e=a&&typeof a==="object"?d.extend({},a):{complete:c||!c&&b||d.isFunction(a)&&a,duration:a,easing:c&&b||b&&!d.isFunction(b)&&b};e.duration=d.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in d.fx.speeds?d.fx.speeds[e.duration]:d.fx.speeds._default,e.old=e.complete,e.complete=function(){e.queue!==!1&&d(this).dequeue(),d.isFunction(e.old)&&e.old.call(this)};return e},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig||(b.orig={})}}),d.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(d.fx.step[this.prop]||d.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=d.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function g(a){return e.step(a)}var e=this,f=d.fx;this.startTime=d.now(),this.start=a,this.end=b,this.unit=c||this.unit||(d.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,g.elem=this.elem,g()&&d.timers.push(g)&&!ca&&(ca=setInterval(f.tick,f.interval))},show:function(){this.options.orig[this.prop]=d.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),d(this.elem).show()},hide:function(){this.options.orig[this.prop]=d.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=d.now(),c=!0;if(a||b>=this.options.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),this.options.curAnim[this.prop]=!0;for(var e in this.options.curAnim)this.options.curAnim[e]!==!0&&(c=!1);if(c){if(this.options.overflow!=null&&!d.support.shrinkWrapBlocks){var f=this.elem,g=this.options;d.each(["","X","Y"],function(a,b){f.style["overflow"+b]=g.overflow[a]})}this.options.hide&&d(this.elem).hide();if(this.options.hide||this.options.show)for(var h in this.options.curAnim)d.style(this.elem,h,this.options.orig[h]);this.options.complete.call(this.elem)}return!1}var i=b-this.startTime;this.state=i/this.options.duration;var j=this.options.specialEasing&&this.options.specialEasing[this.prop],k=this.options.easing||(d.easing.swing?"swing":"linear");this.pos=d.easing[j||k](this.state,i,0,1,this.options.duration),this.now=this.start+(this.end-this.start)*this.pos,this.update();return!0}},d.extend(d.fx,{tick:function(){var a=d.timers;for(var b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||d.fx.stop()},interval:13,stop:function(){clearInterval(ca),ca=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){d.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),d.expr&&d.expr.filters&&(d.expr.filters.animated=function(a){return d.grep(d.timers,function(b){return a===b.elem}).length});var ce=/^t(?:able|d|h)$/i,cf=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?d.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){d.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return d.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(e){}var f=b.ownerDocument,g=f.documentElement;if(!c||!d.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=f.body,i=cg(f),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||d.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||d.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:d.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){d.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return d.offset.bodyOffset(b);d.offset.initialize();var c,e=b.offsetParent,f=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(d.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===e&&(l+=b.offsetTop,m+=b.offsetLeft,d.offset.doesNotAddBorder&&(!d.offset.doesAddBorderForTableAndCells||!ce.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),f=e,e=b.offsetParent),d.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;d.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},d.offset={initialize:function(){var a=c.body,b=c.createElement("div"),e,f,g,h,i=parseFloat(d.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";d.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),e=b.firstChild,f=e.firstChild,h=e.nextSibling.firstChild.firstChild,this.doesNotAddBorder=f.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,f.style.position="fixed",f.style.top="20px",this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15,f.style.position=f.style.top="",e.style.overflow="hidden",e.style.position="relative",this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),a=b=e=f=g=h=null,d.offset.initialize=d.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;d.offset.initialize(),d.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(d.css(a,"marginTop"))||0,c+=parseFloat(d.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var e=d.css(a,"position");e==="static"&&(a.style.position="relative");var f=d(a),g=f.offset(),h=d.css(a,"top"),i=d.css(a,"left"),j=e==="absolute"&&d.inArray("auto",[h,i])>-1,k={},l={},m,n;j&&(l=f.position()),m=j?l.top:parseInt(h,10)||0,n=j?l.left:parseInt(i,10)||0,d.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):f.css(k)}},d.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),e=cf.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(d.css(a,"marginTop"))||0,c.left-=parseFloat(d.css(a,"marginLeft"))||0,e.top+=parseFloat(d.css(b[0],"borderTopWidth"))||0,e.left+=parseFloat(d.css(b[0],"borderLeftWidth"))||0;return{top:c.top-e.top,left:c.left-e.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&(!cf.test(a.nodeName)&&d.css(a,"position")==="static"))a=a.offsetParent;return a})}}),d.each(["Left","Top"],function(a,c){var e="scroll"+c;d.fn[e]=function(c){var f=this[0],g;if(!f)return null;if(c!==b)return this.each(function(){g=cg(this),g?g.scrollTo(a?d(g).scrollLeft():c,a?c:d(g).scrollTop()):this[e]=c});g=cg(f);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:d.support.boxModel&&g.document.documentElement[e]||g.document.body[e]:f[e]}}),d.each(["Height","Width"],function(a,c){var e=c.toLowerCase();d.fn["inner"+c]=function(){return this[0]?parseFloat(d.css(this[0],e,"padding")):null},d.fn["outer"+c]=function(a){return this[0]?parseFloat(d.css(this[0],e,a?"margin":"border")):null},d.fn[e]=function(a){var f=this[0];if(!f)return a==null?null:this;if(d.isFunction(a))return this.each(function(b){var c=d(this);c[e](a.call(this,b,c[e]()))});if(d.isWindow(f)){var g=f.document.documentElement["client"+c];return f.document.compatMode==="CSS1Compat"&&g||f.document.body["client"+c]||g}if(f.nodeType===9)return Math.max(f.documentElement["client"+c],f.body["scroll"+c],f.documentElement["scroll"+c],f.body["offset"+c],f.documentElement["offset"+c]);if(a===b){var h=d.css(f,e),i=parseFloat(h);return d.isNaN(i)?h:i}return this.css(e,typeof a==="string"?a:a+"px")}}),a.jQuery=a.$=d})(window);
js/ip_megamenusidebar/megamenu.js ADDED
@@ -0,0 +1,172 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ // jQuery Mega Menu Effects
2
+
3
+ // To apply one of those effects (replace "hover_fade" by any other effect) :
4
+ // JQ(function() {
5
+ // JQ("#menu").megaMenu('hover_fade');
6
+ // });
7
+
8
+ var JQ = jQuery.noConflict();
9
+
10
+ //JQ(
11
+ // function() {
12
+ // JQ("#menu").megaMenu('hover_fade');
13
+ // }
14
+ // );
15
+
16
+ jQuery.fn.megaMenu = function(menu_effect) {
17
+
18
+ JQ(".dropcontent").css('left', 'auto').hide();
19
+ JQ(".fullwidth").css('left', '-1px').hide();
20
+
21
+ switch( menu_effect )
22
+ {
23
+
24
+ case "hover_fade":
25
+ JQ('.mm2').hover(function() {
26
+ JQ(this).children().stop().fadeTo(400, 1);
27
+ }, function () {
28
+ JQ(this).children("div").stop().fadeTo(400, 0, function() {
29
+ JQ(this).hide();
30
+ });
31
+ });
32
+ break;
33
+
34
+ case "hover_fadein":
35
+ JQ('.mm2').hover(function() {
36
+ JQ(this).children().stop().fadeTo(400, 1).show();
37
+ }, function () {
38
+ JQ(this).children("div").stop().hide();
39
+ });
40
+ break;
41
+
42
+ case "hover_slide":
43
+ JQ('.mm2').hover(function() {
44
+ var JQthis = JQ(this);
45
+ JQthis.children("div").slideDown('fast');
46
+ JQthis.hover(function() {
47
+ }, function(){
48
+ JQ(this).children("div").slideUp(200);
49
+ });
50
+ });
51
+ break;
52
+
53
+ case "hover_toggle":
54
+ JQ('.mm2').hover(function() {
55
+ JQ(this).children("div").toggle('fast').show();
56
+ });
57
+ break;
58
+
59
+ case "click_fade":
60
+ JQ('.mm2').click(function() {
61
+ var JQthis = JQ(this);
62
+ JQthis.children().fadeIn(400).show();
63
+ JQthis.hover(function() {
64
+ }, function(){
65
+ JQthis.children("div").fadeOut(400);
66
+ });
67
+ });
68
+ break;
69
+
70
+ case "click_slide":
71
+ JQ('.mm2').click(function() {
72
+ var JQthis = JQ(this);
73
+ JQthis.children().slideDown('fast').show();
74
+ JQthis.hover(function() {
75
+ }, function(){
76
+ JQthis.children("div").slideUp('slow');
77
+ });
78
+ });
79
+ break;
80
+
81
+ case "click_toggle":
82
+ JQ('.mm2').click(function() {
83
+ var JQthis = JQ(this);
84
+ JQthis.children("div").toggle('fast').show();
85
+ JQthis.hover(function() {
86
+ }, function(){
87
+ JQthis.children("div").hide('slow');
88
+ });
89
+ });
90
+ break;
91
+
92
+ case "click_open_close":
93
+ JQ('.mm2').click(function() {
94
+ var JQthis = JQ(this);
95
+ JQthis.toggleClass('active');
96
+ JQthis.siblings().removeClass('active');
97
+ JQ(".dropcontent, .fullwidth").fadeOut(400, 0);
98
+ JQ(this).children().fadeTo(400, 1);
99
+ });
100
+ break;
101
+
102
+ case "opened_first":
103
+ JQ("li:first-child > div").fadeTo(400, 1).parent().toggleClass('active');
104
+ JQ("li").click(function() {
105
+ var JQthis = JQ(this);
106
+ JQthis.toggleClass('active');
107
+ JQthis.siblings().removeClass('active');
108
+ JQ(".dropcontent, .fullwidth").fadeOut(400, 0);
109
+ JQthis.find(".dropcontent, .fullwidth").fadeTo(400, 1);
110
+ });
111
+ break;
112
+
113
+ case "opened_last":
114
+ JQ("li:last-child > div").fadeTo(400, 1).parent().toggleClass('active');
115
+ JQ("li").click(function() {
116
+ var JQthis = JQ(this);
117
+ JQthis.toggleClass('active');
118
+ JQthis.siblings().removeClass('active');
119
+ JQ(".dropcontent, .fullwidth").fadeOut(400, 0);
120
+ JQthis.find(".dropcontent, .fullwidth").fadeTo(400, 1);
121
+ });
122
+ break;
123
+
124
+ case "opened_second":
125
+ JQ("li:nth-child(2) > div").fadeTo(400, 1).parent().toggleClass('active');
126
+ JQ("li").click(function() {
127
+ var JQthis = JQ(this);
128
+ JQthis.toggleClass('active');
129
+ JQthis.siblings().removeClass('active');
130
+ JQ(".dropcontent, .fullwidth").fadeOut(400, 0);
131
+ JQthis.find(".dropcontent, .fullwidth").fadeTo(400, 1);
132
+ });
133
+ break;
134
+
135
+ case "opened_third":
136
+ JQ("li:nth-child(3) > div").fadeTo(400, 1).parent().toggleClass('active');
137
+ JQ("li").click(function() {
138
+ var JQthis = JQ(this);
139
+ JQthis.toggleClass('active');
140
+ JQthis.siblings().removeClass('active');
141
+ JQ(".dropcontent, .fullwidth").fadeOut(400, 0);
142
+ JQthis.find(".dropcontent, .fullwidth").fadeTo(400, 1);
143
+ });
144
+ break;
145
+
146
+ case "opened_fourth":
147
+ JQ("li:nth-child(4) > div").fadeTo(400, 1).parent().toggleClass('active');
148
+ JQ("li").click(function() {
149
+ var JQthis = JQ(this);
150
+ JQthis.toggleClass('active');
151
+ JQthis.siblings().removeClass('active');
152
+ JQ(".dropcontent, .fullwidth").fadeOut(400, 0);
153
+ JQthis.find(".dropcontent, .fullwidth").fadeTo(400, 1);
154
+ });
155
+ break;
156
+
157
+ case "opened_fifth":
158
+ JQ("li:nth-child(5) > div").fadeTo(400, 1).parent().toggleClass('active');
159
+ JQ("li").click(function() {
160
+ var JQthis = JQ(this);
161
+ JQthis.toggleClass('active');
162
+ JQthis.siblings().removeClass('active');
163
+ JQ(".dropcontent, .fullwidth").fadeOut(400, 0);
164
+ JQthis.find(".dropcontent, .fullwidth").fadeTo(400, 1);
165
+ });
166
+ break;
167
+
168
+
169
+ }
170
+
171
+
172
+ }
package.xml ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <package>
3
+ <name>ecommerceoffice_megamenusidebar</name>
4
+ <version>1.0.0</version>
5
+ <stability>stable</stability>
6
+ <license>Single user license</license>
7
+ <channel>community</channel>
8
+ <extends/>
9
+ <summary>Menu - is a key navigation element for customers on your website. It is particularly important that the menu would contain a maximum of all information.</summary>
10
+ <description>Shop can increase profits by changing the sitemenu - users should see all items of your catalog products immediately. It is necessary that information was
11
+ available at the first click.</description>
12
+ <notes>1.0.0</notes>
13
+ <authors><author><name>officeecommerce</name><user>auto-converted</user><email>office.ecommerce@gmail.com</email></author></authors>
14
+ <date>2011-08-21</date>
15
+ <time>09:58:50</time>
16
+ <contents><target name="magelocale"><dir name="en_US"><file name="Ip_Megamenusidebar.csv" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="ip_megamenusidebar"><dir name="css_left"><file name="ie6.css" hash="1dc7c1ca9ecaa52983a7d24aaf1fd713"/><file name="ie7.css" hash="c005cd02c676297dab8f12d127bbfdcc"/><file name="layout.css" hash="596cc7b43f1add125fce451f1d0560ea"/><file name="megamenu.css" hash="65a669c085770ef014b2b1472913a7b9"/><file name="megamenu_.css" hash="d7264d6d1d2ff0085f83d99a33bd0c44"/></dir><dir name="css_right"><file name="ie6.css" hash="265634cfbabdf39ffd994690f81045e4"/><file name="ie7.css" hash="c005cd02c676297dab8f12d127bbfdcc"/><file name="layout.css" hash="596cc7b43f1add125fce451f1d0560ea"/><file name="megamenu.css" hash="db13a41a6910f3eba32339c90225f223"/></dir><dir name="img"><dir name="icons"><file name="alert.png" hash="247eddcaf0f57128cc0d9d19cd9b6334"/><file name="archive.png" hash="69e15f27d7af81c996d4404a0cab8149"/><file name="briefcase.png" hash="d7b1f172b63c5e66e0d8f4ca44891faa"/><file name="calendar.png" hash="5cbc8bb582369a5cca0c496409c73973"/><file name="delete.png" hash="e8a2067930318d48862d2d46e2759ba9"/><file name="error.png" hash="20c89fee69589f5629b17f1dbffe7fa4"/><file name="favorite.png" hash="c1cd1d5ae8b0ee1f9e0f3eed801aaa56"/><file name="help.png" hash="b11c218df554fbbf180c42ba7fe312c8"/><file name="info.png" hash="634e585f557d90bb26a2ae9f52168762"/><file name="lock.png" hash="a46877e9eac6226049353917cb049a76"/><file name="note.png" hash="4169368537bcbec2c2a69ce1a911f03f"/><file name="ok.png" hash="6bee6215f13176db7239c79008ffb0d4"/><file name="search.png" hash="3144b4e8b6ba7c95764a76c243ae09f6"/><file name="user.png" hash="821e775c5d30909fadfd5f8f28f67d72"/></dir><file name="bg.png" hash="2fb5a586aa969e4c233cbaf09b29e670"/><file name="down.gif" hash="1ede86e1b15bdcd0ea3653480f7b8494"/><file name="down.png" hash="73949fbe96d11c6e370d138e8f94559f"/><file name="down_right.png" hash="3a8b8ab010f5fff368258d66fd07e584"/><file name="img01.jpg" hash="61061a6ddb5c958918d4372de3bf1920"/><file name="img02.jpg" hash="60884974b55ff4f3f3b562a026e27f11"/><file name="img03.jpg" hash="42b5c3eb1841fb18fec6b5f6a3f0488b"/><file name="menu_separator.jpg" hash="5796dfe08d16f6062809f842ee883997"/></dir><file name="promo.jpg" hash="88520d456df68c98130433b5184b8e7f"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="ip_megamenusidebar.xml" hash="f5b3929efa7e31b4d63a3f8614f24972"/></dir><dir name="template"><dir name="ip_megamenusidebar"><file name="navigation_left.phtml" hash="1485454a8a6f37fddb3a7112587353c8"/><file name="navigation_right.phtml" hash="8c967c043f2b03bf7251bc890d6d3989"/></dir></dir></dir></dir></dir></target><target name="magecommunity"><dir name="Ip"><dir name="Megamenusidebar"><dir name="Block"><dir name="Admin"><dir name="Category"><dir name="Edit"><dir name="Tab"><file name="Form.php" hash="3610e927722c124fa337569538cd1a93"/><file name="Other.php" hash="e3f937d8c757f1728df66815c9595ec2"/></dir><file name="Form.php" hash="cd99d9ac690a7743eb74310192950626"/><file name="Tabs.php" hash="e97e9e59ad6c46a96a67ded6b47936a2"/></dir><dir name="Grid"><dir name="Renderer"><file name="Action.php" hash="b67d62edc102fe3e04a08cea8842b636"/></dir></dir><file name="Edit.php" hash="08e60daa28e4203fe16b8ec87d34ad0a"/><file name="Grid.php" hash="6e96f6616d46394d8c70755396bf05d6"/></dir><dir name="Item"><dir name="Edit"><dir name="Tab"><file name="Form.php" hash="48f6cee5d47df62c9adc5aa434bc7024"/><file name="Other.php" hash="52f2ff8b80c0e37c460f2fad16f243e3"/></dir><file name="Form.php" hash="eb26d8cac70fb0cfbcd70adadeb7f17f"/><file name="Tabs.php" hash="9ff93a538c5b55679e458640ff703b2d"/></dir><dir name="Grid"><dir name="Renderer"><file name="Action.php" hash="9935a63cb0707f29af034109986f74f4"/></dir></dir><file name="Edit.php" hash="8b982fa9cb5f5505a9f9e09e32986ec3"/><file name="Grid.php" hash="7b143587fc891e37aa906f20a87da246"/></dir><file name="Category.php" hash="c991482031d8ea4dee917c3128cbdb3e"/><file name="Item.php" hash="8600c0a2a7eb023b81a051f05f85762c"/></dir><file name="Developer.php" hash="3a032eb9fce22185017803bd0e5fd800"/><file name="Info.php" hash="42840a42e212fa0a0f7da4771e32e430"/><file name="Navigation.php" hash="96cb0eef43cf3451fb9725734b93a78d"/></dir><dir name="controllers"><dir name="Admin"><file name="CategoryController.php" hash="d1aa7c89ddc3d26b4705c46a98cf66b8"/><file name="ItemController.php" hash="3f1904aeb3d05c9504545f088726f277"/></dir></dir><dir name="etc"><file name="config.xml" hash="8d220cb145ad8b5304ba735d5a4873d8"/><file name="system.xml" hash="c73420cbd4094a7f0a75fc5a1da1f7a8"/></dir><dir name="Helper"><file name="Data.php" hash="e1c85c2a2f8abeafbe5613d23b32407a"/></dir><dir name="Model"><dir name="Mysql4"><dir name="Category"><file name="Collection.php" hash="3b68600ea458d3b6fdcdeff150d2aebf"/></dir><dir name="Item"><file name="Collection.php" hash="d31235c9353b98641a012a4bd5dedc10"/></dir><file name="Category.php" hash="1d875f0dcec635f85437036f4c993ade"/><file name="Item.php" hash="4dac4518920b44bfd9f7e87f271b45c3"/></dir><dir name="Source"><file name="Align.php" hash="2351ff7f25aea68e6ef6f9cbd9a74fee"/><file name="Color.php" hash="97c5cad2f18aa404117c6bac109d50da"/><file name="Effect.php" hash="9131152d3df70f91dfea5bd918951efb"/><file name="Maximumsubcat.php" hash="3c5368bfd0853ef79a37c48d2a43e641"/><file name="Type.php" hash="7f5d1633c32de857898e041de4acc690"/></dir><dir name="Wysiwyg"><file name="Config.php" hash="69334abc5f6d34b51264ee89daf26377"/></dir><file name="Category.php" hash="3b754fa9c3c3cfc4cc4532201f033f03"/><file name="Data.php" hash="08a61bdee39b2df6c2690b8285621e82"/><file name="Item.php" hash="22d65355988be2323d97838626aa2dd8"/></dir><dir name="sql"><dir name="megamenusidebar_setup"><file name="data.sql" hash="2ff42fba8a7ae92cf7bcd3cdd0ee86c3"/><file name="mysql4-install-1.0.0.php" hash="22f49b12ececc58eeab378ae411042dc"/></dir></dir></dir></dir></target><target name="mage"><dir name="js"><dir name="ip_megamenusidebar"><file name="jquery-1.5.1.min.js" hash="b04a3bccd23ddeb7982143707a63ccf9"/><file name="megamenu.js" hash="d44728217f5833f2ce331fe4c2a345ad"/></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Ip_Megamenusidebar.xml" hash="78f0764d70b320a1adc066f2af9500c2"/></dir></target></contents>
17
+ <compatible/>
18
+ <dependencies/>
19
+ </package>
skin/frontend/base/default/ip_megamenusidebar/css_left/ie6.css ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ body {
2
+ behavior: url("js/csshover3.htc");
3
+ }
4
+ #menu {
5
+ background-image:none;
6
+ width:155px;
7
+ }
8
+ #menu li .drop {
9
+ background:url("../img/down.gif") right 18px no-repeat;
10
+ }
11
+ #menu li ul li {
12
+ width:130px;
13
+ }
14
+ #menu li a {
15
+ padding: 16px 15px 0px 15px;
16
+ }
17
+ #menu li .dropcontent {
18
+ margin:1px auto;
19
+ }
20
+ #menu li .dropfirst {
21
+ margin:0px auto;
22
+ }
23
+ #menu .imgshadow {
24
+ padding:3px;
25
+ }
26
+ #menu ul.list, #menu ul.list2, #menu ol.num, #menu ol.num2 {
27
+ margin:0 0 18px 15px;
28
+ }
29
+ #menu ul.list li, #menu ul.list2 li, #menu ol.num li, #menu ol.num2 li{
30
+ padding:0;
31
+ width:90px;
32
+ }
skin/frontend/base/default/ip_megamenusidebar/css_left/ie7.css ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ #menu li a {
2
+ padding: 15px;
3
+ }
4
+ #menu li .dropcontent {
5
+ margin:1px auto;
6
+ }
7
+ #menu li .dropfirst {
8
+ margin:0px auto;
9
+ }
skin/frontend/base/default/ip_megamenusidebar/css_left/layout.css ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ Item Name :
3
+ Author URI : http://themeforest.net/user/Keliah
4
+ Version : 1.0
5
+ */
6
+
7
+ /*
8
+
9
+ TABLE OF CONTENTS
10
+
11
+ 01 RESET
12
+ 02 TYPOGRAPHY
13
+
14
+ */
15
+
16
+
17
+
18
+ /* _____________________________________________________________________________
19
+
20
+ 01 RESET
21
+ _____________________________________________________________________________ */
22
+
23
+
24
+
25
+ html, body, div, span, applet, object, iframe,
26
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre,
27
+ a, abbr, acronym, address, big, cite, code,
28
+ del, dfn, em, font, img, ins, kbd, q, s, samp,
29
+ small, strike, strong, sub, sup, tt, var,
30
+ dl, dt, dd, ol, ul, li,
31
+ fieldset, form, label, legend,
32
+ table, caption, tbody, tfoot, thead, tr, th, td{margin:0; padding:0; border:0; outline:0; font-weight:inherit; font-style:inherit; font-size:100%; font-family:inherit; vertical-align:baseline}
33
+ /* remember to define focus styles! */
34
+ :focus{outline:0}
35
+ body{line-height:1; color:black; background:white}
36
+ ol, ul{list-style:none}
37
+ /* tables still need 'cellspacing="0"' in the markup */
38
+ table{border-collapse:separate; border-spacing:0}
39
+ caption, th, td{text-align:left; font-weight:normal}
40
+ blockquote:before, blockquote:after,
41
+ q:before, q:after{content:""}
42
+ blockquote, q{quotes:""""}
43
+
44
+
45
+ /* _____________________________________________________________________________
46
+
47
+ 02 TYPOGRAPHY
48
+ _____________________________________________________________________________ */
49
+
50
+
51
+
52
+ body {font-family:Arial,Helvetica,sans-serif;}
53
+ p{font-size:12px; line-height:21px; margin-bottom:18px}
54
+ .strong{font-weight:bold}
55
+ .italic{font-style:italic}
56
+ a{text-decoration:none}
57
+ a:hover{cursor:pointer}
58
+ ul, ol{ margin-bottom:18px}
skin/frontend/base/default/ip_megamenusidebar/css_left/megamenu.css ADDED
@@ -0,0 +1,558 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* _____________________________________________________________________________
2
+
3
+ 1. Menu Bar
4
+ _____________________________________________________________________________ */
5
+
6
+
7
+ #menu .f-left, #menu .left {
8
+ float: none !important;
9
+ }
10
+ #menu .f-right, #menu .right {
11
+ float: none !important;
12
+ }
13
+ .level2 {
14
+ padding-left: 4px;
15
+ }
16
+ .level3 {
17
+ padding-left: 5px;
18
+ }
19
+ #menu {
20
+ list-style:none;
21
+ /* width:140px;*/
22
+ width:100%;
23
+ /* margin:50px auto 0 50px;*/
24
+ position:relative;
25
+ z-index:9999;
26
+ padding:0px;
27
+ font-family:Arial, Helvetica, sans-serif;
28
+ font-size:14px;
29
+ color:#FFFFFF;
30
+ border:solid 1px #000000;
31
+ background-image:url("../img/bg.png");
32
+ line-height: 1;
33
+ margin-bottom: 10px;
34
+ }
35
+
36
+ #menu li {
37
+ position:relative;
38
+ margin:0px;
39
+ border:none;
40
+ }
41
+ #menu li:hover, .active {
42
+ background:#161616;
43
+ }
44
+
45
+ #menu li a {
46
+ font-size:12px;
47
+ color:#FFFFFF;
48
+ text-transform:uppercase;
49
+ text-shadow:1px 1px 1px #000000;
50
+ outline:0;
51
+ font-weight:600;
52
+ text-decoration:none;
53
+ display:block;
54
+ padding: 16px 15px 16px 15px;
55
+ }
56
+ #menu li:hover a {
57
+ color:#FFFFFF;
58
+ text-shadow:1px 1px 1px #000000;
59
+ }
60
+ #menu li .drop {
61
+ padding-right:30px;
62
+ background:url("../img/down.png") no-repeat right center;
63
+ }
64
+
65
+
66
+
67
+ /* _____________________________________________________________________________
68
+
69
+ 2. Drop Down Common Container
70
+ _____________________________________________________________________________ */
71
+
72
+
73
+ #menu li .dropcontent {
74
+ /* margin:0px auto 0px 140px;*/
75
+ margin:0px auto 0px 100%;
76
+ position:absolute;
77
+ left:-9999em;
78
+ top:0px;
79
+ z-index:9998; /* For IE7 */
80
+ padding:24px 0px 10px 0px;
81
+ text-align:left;
82
+ border:1px solid #1b1b1b;
83
+ border-top:none;
84
+ background:#161616;
85
+ }
86
+
87
+ /* Showing Drop Down on Mouse Hover */
88
+
89
+ #menu li:hover .dropcontent {
90
+ left:auto;
91
+ }
92
+ /*#menu li .dropfirst {
93
+ margin:-1px auto 0px 140px; Fixes a 1px issue for the 1st drop down
94
+ }*/
95
+
96
+ #menu li .dropfirst {
97
+ margin: -1px auto 0 100%;
98
+ }
99
+
100
+
101
+
102
+ /* _____________________________________________________________________________
103
+
104
+ 3. Drop Down Specific Containers
105
+ _____________________________________________________________________________ */
106
+
107
+
108
+
109
+ #menu .drop1column {width: 80px;}
110
+ #menu .drop2columns {width: 160px;}
111
+ #menu .drop3columns {width: 240px;}
112
+ #menu .drop4columns {width: 320px;}
113
+ #menu .drop5columns {width: 400px;}
114
+ #menu .drop6columns {width: 480px;}
115
+ #menu .drop7columns {width: 560px;}
116
+ #menu .drop8columns {width: 640px;}
117
+ #menu .drop9columns {width: 720px;}
118
+ #menu .drop10columns {width: 800px;}
119
+ #menu .drop11columns {width: 880px;}
120
+ #menu .drop12columns {width: 960px;}
121
+
122
+
123
+
124
+ /* _____________________________________________________________________________
125
+
126
+ 4. Columns Grid
127
+ _____________________________________________________________________________ */
128
+
129
+
130
+
131
+ #menu .col_1,
132
+ #menu .col_2,
133
+ #menu .col_3,
134
+ #menu .col_4,
135
+ #menu .col_5,
136
+ #menu .col_6,
137
+ #menu .col_7,
138
+ #menu .col_8,
139
+ #menu .col_9,
140
+ #menu .col_10,
141
+ #menu .col_11,
142
+ #menu .col_12 {
143
+ display:inline;
144
+ float: left;
145
+ position: relative;
146
+ margin-left: 15px;
147
+ margin-right: 15px;
148
+ }
149
+ #menu .col_1 {width:50px;}
150
+ #menu .col_2 {width:130px;}
151
+ #menu .col_3 {width:210px;}
152
+ #menu .col_4 {width:290px;}
153
+ #menu .col_5 {width:370px;}
154
+ #menu .col_6 {width:450px;}
155
+ #menu .col_7 {width:530px;}
156
+ #menu .col_8 {width:610px;}
157
+ #menu .col_9 {width:690px;}
158
+ #menu .col_10 {width:770px;}
159
+ #menu .col_11 {width:850px;}
160
+ #menu .col_12 {width:930px;}
161
+
162
+ .clear {
163
+ clear: both;
164
+ display: block;
165
+ overflow: hidden;
166
+ visibility: hidden;
167
+ width: 0;
168
+ height: 0;
169
+ }
170
+
171
+
172
+
173
+ /* _____________________________________________________________________________
174
+
175
+ 5. Drop Down Typography
176
+ _____________________________________________________________________________ */
177
+
178
+
179
+
180
+ #menu p, #menu h1, #menu h2, #menu h3, #menu h4, #menu h5, #menu h6 {
181
+ color:#FFFFFF;
182
+ text-shadow: 1px 1px 1px #000;
183
+ }
184
+ #menu h1, #menu h2 {
185
+ background:url("../img/menu_separator.jpg") bottom repeat-x;
186
+ padding-bottom:12px;
187
+ }
188
+ #menu h1, #menu h2, #menu h3 {
189
+ margin-bottom:18px;
190
+ }
191
+ #menu h4, #menu h5, #menu h6 {
192
+ margin-bottom:12px;
193
+ }
194
+ #menu h1 {
195
+ font-size:36px;
196
+ line-height:36px;
197
+ }
198
+ #menu h2 {
199
+ font-size:30px;
200
+ line-height:42px;
201
+ }
202
+ #menu h3 {
203
+ font-size:28px;
204
+ line-height:28px;
205
+ }
206
+ #menu h4 {
207
+ font-size:21px;
208
+ line-height:24px;
209
+ }
210
+ #menu h5 {
211
+ font-size:18px;
212
+ line-height:28px;
213
+ }
214
+ #menu h6 {
215
+ font-family:"Lucida Grande","Lucida Sans Unicode",sans-serif;
216
+ font-size:14px;
217
+ line-height:18px;
218
+ text-transform:uppercase;
219
+ }
220
+
221
+ /* Links */
222
+
223
+ #menu li .dropcontent a {
224
+ text-transform:none;
225
+ font-size:12px;
226
+ display:inline;
227
+ padding:0;
228
+ }
229
+ #menu li .dropcontent a:hover {
230
+ padding:0;
231
+ }
232
+
233
+ /* Images & Boxes */
234
+
235
+ #menu li .black_box {
236
+ background-color:#111111;
237
+ color: #eeeeee;
238
+ text-shadow: 1px 1px 1px #000;
239
+ padding:6px 8px 6px 8px;
240
+ -moz-border-radius: 5px;
241
+ -webkit-border-radius: 5px;
242
+ -khtml-border-radius: 5px;
243
+ border-radius: 5px;
244
+ -webkit-box-shadow:inset 0 0 3px #000000;
245
+ -moz-box-shadow:inset 0 0 3px #000000;
246
+ box-shadow:inset 0 0 3px #000000;
247
+ }
248
+ #menu .imgshadow {
249
+ background:#000000;
250
+ padding:4px;
251
+ border:1px solid #222222;
252
+ margin-top:5px;
253
+ margin-bottom:18px;
254
+ -moz-box-shadow:0px 0px 5px #000000;
255
+ -webkit-box-shadow:0px 0px 5px #000000;
256
+ box-shadow:0px 0px 5px #000000;
257
+ }
258
+ #menu .img_left {
259
+ float:left;
260
+ margin-right:12px;
261
+ }
262
+ #menu .img_right {
263
+ float:right;
264
+ margin-left:12px;
265
+ }
266
+
267
+ /* Lists */
268
+
269
+ #menu li ul {
270
+ list-style:none;
271
+ padding:0;
272
+ margin:0 0 12px 0;
273
+ }
274
+ #menu li ul li {
275
+ font-size:12px;
276
+ line-height:24px;
277
+ position:relative;
278
+ padding:0;
279
+ margin:0;
280
+ float:none;
281
+ text-align:left;
282
+ }
283
+ #menu li ul li:hover {
284
+ background:none;
285
+ border:none;
286
+ }
287
+
288
+ #menu ul.list, #menu ul.list2, #menu ol.num, #menu ol.num2 {
289
+ margin:0 0 18px 20px;
290
+ }
291
+ #menu ul.list li, #menu ul.list2 li, #menu ol.num li, #menu ol.num2 li{
292
+ padding:0 0 0 12px;
293
+ line-height:24px;
294
+ }
295
+ #menu .list {
296
+ list-style:disc;
297
+ }
298
+ #menu .list2 {
299
+ list-style:square;
300
+ }
301
+ #menu .num {
302
+ list-style:decimal;
303
+ }
304
+ #menu .num2 {
305
+ list-style:upper-latin;
306
+ }
307
+
308
+ #menu li .dropcontent ul.list li a, #menu li .dropcontent ul.list2 li a, #menu li .dropcontent ol.num li a, #menu li .dropcontent ol.num2 li a {
309
+ color:#cccccc;
310
+ }
311
+ #menu li .dropcontent ul.list li a:hover, #menu li .dropcontent ul.list2 li a:hover, #menu li .dropcontent ol.num li a:hover, #menu li .dropcontent ol.num2 li a:hover {
312
+ color:#ffffff;
313
+ }
314
+
315
+ #menu ul.thumbnails li {
316
+ margin-bottom:18px;
317
+ }
318
+
319
+ #menu ul.categories {
320
+ background:url("../img/menu_separator.jpg") top repeat-x;
321
+ }
322
+ #menu ul.categories li, #menu ul.categories li:hover {
323
+ background:url("../img/menu_separator.jpg") bottom repeat-x;
324
+ padding:9px 0 9px 0;
325
+ }
326
+ #menu li .dropcontent ul.categories li a {
327
+ color:#cccccc;
328
+ }
329
+ #menu li .dropcontent ul.categories li a:hover {
330
+ color:#ffffff;
331
+ }
332
+
333
+ /* Paragraphs with Icons */
334
+
335
+ #menu .calendar, #menu .note, #menu .help, #menu .delete, #menu .favorite, #menu .lock, #menu .archive, #menu .briefcase, #menu .search, #menu .user {
336
+ padding-left:36px;
337
+ margin-bottom:18px;
338
+ }
339
+ #menu .calendar {background:url("../img/icons/calendar.png") no-repeat 0px 5px}
340
+ #menu .note {background:url("../img/icons/note.png") no-repeat 0px 5px}
341
+ #menu .archive {background:url("../img/icons/archive.png") no-repeat 0px 5px}
342
+ #menu .search {background:url("../img/icons/search.png") no-repeat 0px 5px}
343
+ #menu .help {background:url("../img/icons/help.png") no-repeat 0px 5px}
344
+ #menu .delete {background:url("../img/icons/delete.png") no-repeat 0px 5px}
345
+ #menu .favorite {background:url("../img/icons/favorite.png") no-repeat 0px 5px}
346
+ #menu .lock {background:url("../img/icons/lock.png") no-repeat 0px 5px}
347
+ #menu .briefcase {background:url("../img/icons/briefcase.png") no-repeat 0px 5px}
348
+ #menu .user {background:url("../img/icons/user.png") no-repeat 0px 5px}
349
+
350
+ /* Paragraphs with borders */
351
+
352
+ #menu .dark, #menu .brown, #menu .yellow, #menu .red, #menu .blue, #menu .green {
353
+ padding-left:15px;
354
+ color:#cccccc;
355
+ margin-bottom:18px;
356
+ }
357
+ #menu .dark {border-left:#3B3B3B solid 7px}
358
+ #menu .brown {border-left:#8D8767 solid 7px}
359
+ #menu .yellow {border-left:#DBA742 solid 7px}
360
+ #menu .red {border-left:#C05D48 solid 7px}
361
+ #menu .blue {border-left:#52878B solid 7px}
362
+ #menu .green {border-left:#B0BD85 solid 7px}
363
+
364
+ /* Tables */
365
+
366
+ #menu #table_light, #menu #table_dark {
367
+ width:100%;
368
+ padding:0;
369
+ margin:6px 0 18px 0;
370
+ font-size:12px;
371
+ }
372
+ #menu #table_light th, #menu #table_dark th {
373
+ text-align:left;
374
+ padding:12px 9px 12px 9px;
375
+ font-weight:bold;
376
+ font-size:12px;
377
+ }
378
+ #menu #table_light {
379
+ border:1px solid #cbcbcb;
380
+ border-bottom:none;
381
+ }
382
+ #menu #table_light th {
383
+ color:#3A3A3A;
384
+ border-bottom:1px solid #cbcbcb;
385
+ background:#F5F5F5;
386
+ }
387
+ #menu #table_light td {
388
+ border-bottom:1px solid #cbcbcb;
389
+ background:#fff;
390
+ padding:12px 9px 12px 9px;
391
+ color:#888;
392
+ }
393
+
394
+ #menu #table_dark {
395
+ border:1px solid #000;
396
+ border-bottom:none;
397
+ }
398
+ #menu #table_dark th {
399
+ color:#FFF;
400
+ border-bottom:1px solid #000;
401
+ background:#0D0D0D;
402
+ }
403
+ #menu #table_dark td {
404
+ border-bottom:1px solid #000;
405
+ background:#0F0F0F;
406
+ padding:12px 9px 12px 9px;
407
+ color:#DDD;
408
+ }
409
+
410
+ /* Dropcap */
411
+
412
+ .dropcap {
413
+ display:block;
414
+ float:left;
415
+ font-size:42px;
416
+ line-height:36px;
417
+ margin:2px 8px 0 0;
418
+ }
419
+
420
+ /* Form Elements */
421
+
422
+ #menu form {
423
+ font-size:12px;
424
+ margin:0;
425
+ padding:0;
426
+ width:100%;
427
+ }
428
+ #menu legend, #menu label {
429
+ font-size:12px;
430
+ letter-spacing:1px;
431
+ text-transform:uppercase;
432
+ }
433
+ #menu input, #menu textarea, #menu select {
434
+ font-family:Arial,Helvetica,sans-serif;
435
+ font-size:12px;
436
+ padding:5px;
437
+ margin:5px 0 5px 0;
438
+ background:#f5f5f5;
439
+ border:1px solid #ddd;
440
+ border-radius:3px;
441
+ -moz-border-radius: 3px;
442
+ -webkit-border-radius: 3px;
443
+ }
444
+ #menu .radio, #menu .checkbox {
445
+ background:none;
446
+ border:none;
447
+ }
448
+ #menu select {
449
+ width:260px;
450
+ }
451
+ #menu textarea {
452
+ width:360px;
453
+ height:110px;
454
+ }
455
+ #menu input:hover, #menu textarea:hover {
456
+ border:1px solid #ccc;
457
+ }
458
+ #menu textarea:hover {
459
+ border:1px solid #BBB;
460
+ }
461
+ #menu optgroup {
462
+ font-style:normal;
463
+ }
464
+ #menu .button {
465
+ margin-right:18px;
466
+ padding:4px;
467
+ }
468
+
469
+ #menu .blackbg {
470
+ background:#000000;
471
+ }
472
+
473
+
474
+
475
+ /* _____________________________________________________________________________
476
+
477
+ 6. Colors
478
+ _____________________________________________________________________________ */
479
+
480
+
481
+
482
+ /* Blue */
483
+
484
+ #menu.menu_blue {background-color:#536987;} /* 43% */
485
+ #menu.menu_blue li .dropcontent a {color:#6a82a3;} /* 53% */
486
+ #menu.menu_blue li .dropcontent a:hover {color:#536987;} /* 43% */
487
+
488
+ /* Brown */
489
+
490
+ #menu.menu_brown {background-color:#866e56;}
491
+ #menu.menu_brown li .dropcontent a {color:#a1886e;}
492
+ #menu.menu_brown li .dropcontent a:hover {color:#866e56;}
493
+
494
+ /* Cherry */
495
+
496
+ #menu.menu_cherry {background-color:#ab2d5c;}
497
+ #menu.menu_cherry li .dropcontent a {color:#cc3f73;}
498
+ #menu.menu_cherry li .dropcontent a:hover {color:#ab2d5c;}
499
+
500
+ /* Coffee */
501
+
502
+ #menu.menu_coffee {background-color:#7b675c;}
503
+ #menu.menu_coffee li .dropcontent a {color:#978073;}
504
+ #menu.menu_coffee li .dropcontent a:hover {color:#7b675c;}
505
+
506
+ /* Green */
507
+
508
+ #menu.menu_green {background-color:#788951;}
509
+ #menu.menu_green li .dropcontent a {color:#93a568;}
510
+ #menu.menu_green li .dropcontent a:hover {color:#788951;}
511
+
512
+ /* Grey */
513
+
514
+ #menu.menu_grey {background-color:#6a6a6a;}
515
+ #menu.menu_grey li .dropcontent a {color:#8c8c8c;}
516
+ #menu.menu_grey li .dropcontent a:hover {color:#6a6a6a;}
517
+
518
+ /* Ocean */
519
+
520
+ #menu.menu_ocean {background-color:#528a8f;}
521
+ #menu.menu_ocean li .dropcontent a {color:#6aa5aa;}
522
+ #menu.menu_ocean li .dropcontent a:hover {color:#528a8f;}
523
+
524
+ /* Orange */
525
+
526
+ #menu.menu_orange {background-color:#e34f00;}
527
+ #menu.menu_orange li .dropcontent a {color:#ff6717;}
528
+ #menu.menu_orange li .dropcontent a:hover {color:#e34f00;}
529
+
530
+ /* Pink */
531
+
532
+ #menu.menu_pink {background-color:#d50065;}
533
+ #menu.menu_pink li .dropcontent a {color:#ff097d;}
534
+ #menu.menu_pink li .dropcontent a:hover {color:#d50065;}
535
+
536
+ /* Purple */
537
+
538
+ #menu.menu_purple {background-color:#68449a;}
539
+ #menu.menu_purple li .dropcontent a {color:#815ab7;}
540
+ #menu.menu_purple li .dropcontent a:hover {color:#68449a;}
541
+
542
+ /* Red */
543
+
544
+ #menu.menu_red {background-color:#b82323;}
545
+ #menu.menu_red li .dropcontent a {color:#d83636;}
546
+ #menu.menu_red li .dropcontent a:hover {color:#b82323;}
547
+
548
+ /* Tan */
549
+
550
+ #menu.menu_tan {background-color:#837361;}
551
+ #menu.menu_tan li .dropcontent a {color:#9c8c7b;}
552
+ #menu.menu_tan li .dropcontent a:hover {color:#837361;}
553
+
554
+ /* Yellow */
555
+
556
+ #menu.menu_yellow {background-color:#caa616;}
557
+ #menu.menu_yellow li .dropcontent a {color:#e8c22c;}
558
+ #menu.menu_yellow li .dropcontent a:hover {color:#caa616;}
skin/frontend/base/default/ip_megamenusidebar/css_left/megamenu_.css ADDED
@@ -0,0 +1,590 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ Theme Name : Mega Menu Complete Set
3
+ Author URI : http://themeforest.net/user/Keliah
4
+ Version : 1.0
5
+ */
6
+
7
+ /*
8
+
9
+ TABLE OF CONTENTS
10
+
11
+ 1. Menu Bar
12
+ 2. Drop Down Common Container
13
+ 3. Drop Down Specific Containers
14
+ 4. Columns Grid
15
+ 5. Drop Down Typography
16
+ 6. Colors
17
+
18
+ */
19
+
20
+
21
+
22
+ /* _____________________________________________________________________________
23
+
24
+ 1. Menu Bar
25
+ _____________________________________________________________________________ */
26
+
27
+
28
+
29
+ #menu {
30
+ border: 1px solid #000000;
31
+ color: #FFFFFF;
32
+ float: left;
33
+ font-family: Arial,Helvetica,sans-serif;
34
+ font-size: 14px;
35
+ height: 44px;
36
+ list-style: none outside none;
37
+ padding: 0;
38
+ width: 100%;
39
+ z-index: 9999;
40
+ background-image:url("../img/bg.png");
41
+ }
42
+ #menu li {
43
+ float:left;
44
+ margin:0px 0px 0px 0px;
45
+ border:none;
46
+
47
+
48
+ float:left;
49
+ display:block;
50
+ text-align:center;
51
+ position:relative;
52
+ }
53
+ #menu li:hover, .active {
54
+ background:#161616;
55
+ }
56
+
57
+ #menu li a {
58
+ font-size:12px;
59
+ color:#FFFFFF;
60
+ text-transform:uppercase;
61
+ text-shadow:1px 1px 1px #000000;
62
+ outline:0;
63
+ font-weight:600;
64
+ text-decoration:none;
65
+ display:block;
66
+ padding: 16px 15px 16px 15px;
67
+ }
68
+ #menu li:hover a {
69
+ color:#FFFFFF;
70
+ text-shadow:1px 1px 1px #000000;
71
+ }
72
+ #menu li .drop {
73
+ padding-right:30px;
74
+ background:url("../img/down.png") no-repeat right center;
75
+ }
76
+
77
+ /* Right aligned menu item */
78
+
79
+ #menu li.right {
80
+ float:right;
81
+ margin-right:-1px;
82
+ }
83
+ #menu li{
84
+ float:right;
85
+ margin-right:-1px;
86
+ }
87
+ #menu li.right a {
88
+ margin-right:5px;
89
+ }
90
+
91
+
92
+
93
+ /* _____________________________________________________________________________
94
+
95
+ 2. Drop Down Common Container
96
+ _____________________________________________________________________________ */
97
+
98
+
99
+
100
+ #menu li .dropcontent {
101
+ margin:0px auto;
102
+ position:absolute;
103
+ left:-9999em;
104
+ top:44px; /* Places the drop down under the menu bar */
105
+ z-index:99999; /* For IE7 */
106
+ padding:24px 0px 10px 0px;
107
+ text-align:left;
108
+ border:1px solid #1b1b1b;
109
+ border-top:none;
110
+ background:#161616;
111
+ /* Rounded Corners */
112
+ -moz-border-radius: 0px 0px 4px 4px;
113
+ -webkit-border-radius: 0px 0px 4px 4px;
114
+ border-radius: 0px 0px 4px 4px;
115
+ }
116
+ #menu li .dropfirst {
117
+ margin:0px auto 0px -1px; /* Fixes a 1px issue for the 1st drop down */
118
+ }
119
+
120
+ /* Showing Drop Down on Mouse Hover - Left aligned */
121
+
122
+ #menu li:hover .dropcontent {left:auto;}
123
+
124
+ /* Showing Drop Down on Mouse Hover - Right aligned */
125
+
126
+ #menu li .align_right {right:-1px;}
127
+ #menu li:hover .align_right {
128
+ left:auto;
129
+ right:-1px;
130
+ }
131
+
132
+
133
+
134
+ /* _____________________________________________________________________________
135
+
136
+ 3. Drop Down Specific Containers
137
+ _____________________________________________________________________________ */
138
+
139
+
140
+
141
+ #menu .drop1column {width: 80px;}
142
+ #menu .drop2columns {width: 160px;}
143
+ #menu .drop3columns {width: 240px;}
144
+ #menu .drop4columns {width: 320px;}
145
+ #menu .drop5columns {width: 400px;}
146
+ #menu .drop6columns {width: 480px;}
147
+ #menu .drop7columns {width: 560px;}
148
+ #menu .drop8columns {width: 640px;}
149
+ #menu .drop9columns {width: 720px;}
150
+ #menu .drop10columns {width: 800px;}
151
+ #menu .drop11columns {width: 880px;}
152
+ #menu .drop12columns {width: 960px;}
153
+
154
+
155
+
156
+ /* _____________________________________________________________________________
157
+
158
+ 4. Columns Grid
159
+ _____________________________________________________________________________ */
160
+
161
+
162
+
163
+ #menu .col_1,
164
+ #menu .col_2,
165
+ #menu .col_3,
166
+ #menu .col_4,
167
+ #menu .col_5,
168
+ #menu .col_6,
169
+ #menu .col_7,
170
+ #menu .col_8,
171
+ #menu .col_9,
172
+ #menu .col_10,
173
+ #menu .col_11,
174
+ #menu .col_12 {
175
+ display:inline;
176
+ float: left;
177
+ position: relative;
178
+ margin-left: 15px;
179
+ margin-right: 15px;
180
+ }
181
+ #menu .col_1 {width:50px;}
182
+ #menu .col_2 {width:130px;}
183
+ #menu .col_3 {width:210px;}
184
+ #menu .col_4 {width:290px;}
185
+ #menu .col_5 {width:370px;}
186
+ #menu .col_6 {width:450px;}
187
+ #menu .col_7 {width:530px;}
188
+ #menu .col_8 {width:610px;}
189
+ #menu .col_9 {width:690px;}
190
+ #menu .col_10 {width:770px;}
191
+ #menu .col_11 {width:850px;}
192
+ #menu .col_12 {width:930px;}
193
+
194
+ .clear {
195
+ clear: both;
196
+ display: block;
197
+ overflow: hidden;
198
+ visibility: hidden;
199
+ width: 0;
200
+ height: 0;
201
+ }
202
+
203
+
204
+
205
+ /* _____________________________________________________________________________
206
+
207
+ 5. Drop Down Typography
208
+ _____________________________________________________________________________ */
209
+
210
+
211
+
212
+ #menu p, #menu h1, #menu h2, #menu h3, #menu h4, #menu h5, #menu h6 {
213
+ color:#FFFFFF;
214
+ text-shadow: 1px 1px 1px #000;
215
+ }
216
+ #menu h1, #menu h2 {
217
+ background:url("../img/menu_separator.jpg") bottom repeat-x;
218
+ padding-bottom:12px;
219
+ }
220
+ #menu h1, #menu h2, #menu h3 {
221
+ margin-bottom:18px;
222
+ }
223
+ #menu h4, #menu h5, #menu h6 {
224
+ margin-bottom:12px;
225
+ }
226
+ #menu h1 {
227
+ font-size:36px;
228
+ line-height:36px;
229
+ }
230
+ #menu h2 {
231
+ font-size:30px;
232
+ line-height:42px;
233
+ }
234
+ #menu h3 {
235
+ font-size:28px;
236
+ line-height:28px;
237
+ }
238
+ #menu h4 {
239
+ font-size:21px;
240
+ line-height:24px;
241
+ }
242
+ #menu h5 {
243
+ font-size:18px;
244
+ line-height:28px;
245
+ }
246
+ #menu h6 {
247
+ font-family:"Lucida Grande","Lucida Sans Unicode",sans-serif;
248
+ font-size:14px;
249
+ line-height:18px;
250
+ text-transform:uppercase;
251
+ }
252
+
253
+ /* Links */
254
+
255
+ #menu li .dropcontent a {
256
+ text-transform:none;
257
+ font-size:12px;
258
+ display:inline;
259
+ padding:0;
260
+ }
261
+ #menu li .dropcontent a:hover {
262
+ padding:0;
263
+ }
264
+
265
+ /* Images & Boxes */
266
+
267
+ #menu li .black_box {
268
+ background-color:#111111;
269
+ color: #eeeeee;
270
+ text-shadow: 1px 1px 1px #000;
271
+ padding:6px 8px 6px 8px;
272
+ -moz-border-radius: 5px;
273
+ -webkit-border-radius: 5px;
274
+ -khtml-border-radius: 5px;
275
+ border-radius: 5px;
276
+ -webkit-box-shadow:inset 0 0 3px #000000;
277
+ -moz-box-shadow:inset 0 0 3px #000000;
278
+ box-shadow:inset 0 0 3px #000000;
279
+ }
280
+ #menu .imgshadow {
281
+ background:#000000;
282
+ padding:4px;
283
+ border:1px solid #222222;
284
+ margin-top:5px;
285
+ margin-bottom:18px;
286
+ -moz-box-shadow:0px 0px 5px #000000;
287
+ -webkit-box-shadow:0px 0px 5px #000000;
288
+ box-shadow:0px 0px 5px #000000;
289
+ }
290
+ #menu .img_left {
291
+ float:left;
292
+ margin-right:12px;
293
+ }
294
+ #menu .img_right {
295
+ float:right;
296
+ margin-left:12px;
297
+ }
298
+
299
+ /* Lists */
300
+
301
+ #menu li ul {
302
+ list-style:none;
303
+ padding:0;
304
+ margin:0 0 12px 0;
305
+ }
306
+ #menu li ul li {
307
+ font-size:12px;
308
+ line-height:24px;
309
+ position:relative;
310
+ padding:0;
311
+ margin:0;
312
+ float:none;
313
+ text-align:left;
314
+ }
315
+ #menu li ul li:hover {
316
+ background:none;
317
+ border:none;
318
+ }
319
+
320
+ #menu ul.list, #menu ul.list2, #menu ol.num, #menu ol.num2 {
321
+ margin:0 0 18px 20px;
322
+ }
323
+ #menu ul.list li, #menu ul.list2 li, #menu ol.num li, #menu ol.num2 li{
324
+ padding:0 0 0 12px;
325
+ line-height:24px;
326
+ }
327
+ #menu .list {
328
+ list-style:disc;
329
+ }
330
+ #menu .list2 {
331
+ list-style:square;
332
+ }
333
+ #menu .num {
334
+ list-style:decimal;
335
+ }
336
+ #menu .num2 {
337
+ list-style:upper-latin;
338
+ }
339
+
340
+ #menu li .dropcontent ul.list li a, #menu li .dropcontent ul.list2 li a, #menu li .dropcontent ol.num li a, #menu li .dropcontent ol.num2 li a {
341
+ color:#cccccc;
342
+ }
343
+ #menu li .dropcontent ul.list li a:hover, #menu li .dropcontent ul.list2 li a:hover, #menu li .dropcontent ol.num li a:hover, #menu li .dropcontent ol.num2 li a:hover {
344
+ color:#ffffff;
345
+ }
346
+
347
+ #menu ul.thumbnails li {
348
+ margin-bottom:18px;
349
+ }
350
+
351
+ #menu ul.categories {
352
+ background:url("../img/menu_separator.jpg") top repeat-x;
353
+ }
354
+ #menu ul.categories li, #menu ul.categories li:hover {
355
+ background:url("../img/menu_separator.jpg") bottom repeat-x;
356
+ padding:9px 0 9px 0;
357
+ }
358
+ #menu li .dropcontent ul.categories li a {
359
+ color:#cccccc;
360
+ }
361
+ #menu li .dropcontent ul.categories li a:hover {
362
+ color:#ffffff;
363
+ }
364
+
365
+ /* Paragraphs with Icons */
366
+
367
+ #menu .calendar, #menu .note, #menu .help, #menu .delete, #menu .favorite, #menu .lock, #menu .archive, #menu .briefcase, #menu .search, #menu .user {
368
+ padding-left:36px;
369
+ margin-bottom:18px;
370
+ }
371
+ #menu .calendar {background:url("../img/icons/calendar.png") no-repeat 0px 5px}
372
+ #menu .note {background:url("../img/icons/note.png") no-repeat 0px 5px}
373
+ #menu .archive {background:url("../img/icons/archive.png") no-repeat 0px 5px}
374
+ #menu .search {background:url("../img/icons/search.png") no-repeat 0px 5px}
375
+ #menu .help {background:url("../img/icons/help.png") no-repeat 0px 5px}
376
+ #menu .delete {background:url("../img/icons/delete.png") no-repeat 0px 5px}
377
+ #menu .favorite {background:url("../img/icons/favorite.png") no-repeat 0px 5px}
378
+ #menu .lock {background:url("../img/icons/lock.png") no-repeat 0px 5px}
379
+ #menu .briefcase {background:url("../img/icons/briefcase.png") no-repeat 0px 5px}
380
+ #menu .user {background:url("../img/icons/user.png") no-repeat 0px 5px}
381
+
382
+ /* Paragraphs with borders */
383
+
384
+ #menu .dark, #menu .brown, #menu .yellow, #menu .red, #menu .blue, #menu .green {
385
+ padding-left:15px;
386
+ color:#cccccc;
387
+ margin-bottom:18px;
388
+ }
389
+ #menu .dark {border-left:#3B3B3B solid 7px}
390
+ #menu .brown {border-left:#8D8767 solid 7px}
391
+ #menu .yellow {border-left:#DBA742 solid 7px}
392
+ #menu .red {border-left:#C05D48 solid 7px}
393
+ #menu .blue {border-left:#52878B solid 7px}
394
+ #menu .green {border-left:#B0BD85 solid 7px}
395
+
396
+ /* Tables */
397
+
398
+ #menu #table_light, #menu #table_dark {
399
+ width:100%;
400
+ padding:0;
401
+ margin:6px 0 18px 0;
402
+ font-size:12px;
403
+ }
404
+ #menu #table_light th, #menu #table_dark th {
405
+ text-align:left;
406
+ padding:12px 9px 12px 9px;
407
+ font-weight:bold;
408
+ font-size:12px;
409
+ }
410
+ #menu #table_light {
411
+ border:1px solid #cbcbcb;
412
+ border-bottom:none;
413
+ }
414
+ #menu #table_light th {
415
+ color:#3A3A3A;
416
+ border-bottom:1px solid #cbcbcb;
417
+ background:#F5F5F5;
418
+ }
419
+ #menu #table_light td {
420
+ border-bottom:1px solid #cbcbcb;
421
+ background:#fff;
422
+ padding:12px 9px 12px 9px;
423
+ color:#888;
424
+ }
425
+
426
+ #menu #table_dark {
427
+ border:1px solid #000;
428
+ border-bottom:none;
429
+ }
430
+ #menu #table_dark th {
431
+ color:#FFF;
432
+ border-bottom:1px solid #000;
433
+ background:#0D0D0D;
434
+ }
435
+ #menu #table_dark td {
436
+ border-bottom:1px solid #000;
437
+ background:#0F0F0F;
438
+ padding:12px 9px 12px 9px;
439
+ color:#DDD;
440
+ }
441
+
442
+ /* Dropcap */
443
+
444
+ .dropcap {
445
+ display:block;
446
+ float:left;
447
+ font-size:42px;
448
+ line-height:36px;
449
+ margin:2px 8px 0 0;
450
+ }
451
+
452
+ /* Form Elements */
453
+
454
+ #menu form {
455
+ font-size:12px;
456
+ margin:0;
457
+ padding:0;
458
+ width:100%;
459
+ }
460
+ #menu legend, #menu label {
461
+ font-size:12px;
462
+ letter-spacing:1px;
463
+ text-transform:uppercase;
464
+ }
465
+ #menu input, #menu textarea, #menu select {
466
+ font-family:Arial,Helvetica,sans-serif;
467
+ font-size:12px;
468
+ padding:5px;
469
+ margin:5px 0 5px 0;
470
+ background:#f5f5f5;
471
+ border:1px solid #ddd;
472
+ border-radius:3px;
473
+ -moz-border-radius: 3px;
474
+ -webkit-border-radius: 3px;
475
+ }
476
+ #menu .radio, #menu .checkbox {
477
+ background:none;
478
+ border:none;
479
+ }
480
+ #menu select {
481
+ width:260px;
482
+ }
483
+ #menu textarea {
484
+ width:360px;
485
+ height:110px;
486
+ }
487
+ #menu input:hover, #menu textarea:hover {
488
+ border:1px solid #ccc;
489
+ }
490
+ #menu textarea:hover {
491
+ border:1px solid #BBB;
492
+ }
493
+ #menu optgroup {
494
+ font-style:normal;
495
+ }
496
+ #menu .button {
497
+ margin-right:18px;
498
+ padding:4px;
499
+ }
500
+
501
+ #menu .blackbg {
502
+ background:#000000;
503
+ }
504
+
505
+
506
+
507
+ /* _____________________________________________________________________________
508
+
509
+ 6. Colors
510
+ _____________________________________________________________________________ */
511
+
512
+
513
+
514
+ /* Blue */
515
+
516
+ #menu.menu_blue {background-color:#536987;} /* 43% */
517
+ #menu.menu_blue li .dropcontent a {color:#6a82a3;} /* 53% */
518
+ #menu.menu_blue li .dropcontent a:hover {color:#536987;} /* 43% */
519
+
520
+ /* Brown */
521
+
522
+ #menu.menu_brown {background-color:#866e56;}
523
+ #menu.menu_brown li .dropcontent a {color:#a1886e;}
524
+ #menu.menu_brown li .dropcontent a:hover {color:#866e56;}
525
+
526
+ /* Cherry */
527
+
528
+ #menu.menu_cherry {background-color:#ab2d5c;}
529
+ #menu.menu_cherry li .dropcontent a {color:#cc3f73;}
530
+ #menu.menu_cherry li .dropcontent a:hover {color:#ab2d5c;}
531
+
532
+ /* Coffee */
533
+
534
+ #menu.menu_coffee {background-color:#7b675c;}
535
+ #menu.menu_coffee li .dropcontent a {color:#978073;}
536
+ #menu.menu_coffee li .dropcontent a:hover {color:#7b675c;}
537
+
538
+ /* Green */
539
+
540
+ #menu.menu_green {background-color:#788951;}
541
+ #menu.menu_green li .dropcontent a {color:#93a568;}
542
+ #menu.menu_green li .dropcontent a:hover {color:#788951;}
543
+
544
+ /* Grey */
545
+
546
+ #menu.menu_grey {background-color:#6a6a6a;}
547
+ #menu.menu_grey li .dropcontent a {color:#8c8c8c;}
548
+ #menu.menu_grey li .dropcontent a:hover {color:#6a6a6a;}
549
+
550
+ /* Ocean */
551
+
552
+ #menu.menu_ocean {background-color:#528a8f;}
553
+ #menu.menu_ocean li .dropcontent a {color:#6aa5aa;}
554
+ #menu.menu_ocean li .dropcontent a:hover {color:#528a8f;}
555
+
556
+ /* Orange */
557
+
558
+ #menu.menu_orange {background-color:#e34f00;}
559
+ #menu.menu_orange li .dropcontent a {color:#ff6717;}
560
+ #menu.menu_orange li .dropcontent a:hover {color:#e34f00;}
561
+
562
+ /* Pink */
563
+
564
+ #menu.menu_pink {background-color:#d50065;}
565
+ #menu.menu_pink li .dropcontent a {color:#ff097d;}
566
+ #menu.menu_pink li .dropcontent a:hover {color:#d50065;}
567
+
568
+ /* Purple */
569
+
570
+ #menu.menu_purple {background-color:#68449a;}
571
+ #menu.menu_purple li .dropcontent a {color:#815ab7;}
572
+ #menu.menu_purple li .dropcontent a:hover {color:#68449a;}
573
+
574
+ /* Red */
575
+
576
+ #menu.menu_red {background-color:#b82323;}
577
+ #menu.menu_red li .dropcontent a {color:#d83636;}
578
+ #menu.menu_red li .dropcontent a:hover {color:#b82323;}
579
+
580
+ /* Tan */
581
+
582
+ #menu.menu_tan {background-color:#837361;}
583
+ #menu.menu_tan li .dropcontent a {color:#9c8c7b;}
584
+ #menu.menu_tan li .dropcontent a:hover {color:#837361;}
585
+
586
+ /* Yellow */
587
+
588
+ #menu.menu_yellow {background-color:#caa616;}
589
+ #menu.menu_yellow li .dropcontent a {color:#e8c22c;}
590
+ #menu.menu_yellow li .dropcontent a:hover {color:#caa616;}
skin/frontend/base/default/ip_megamenusidebar/css_right/ie6.css ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ body {
2
+ behavior: url("js/csshover3.htc");
3
+ }
4
+ #menu {
5
+ background-image:none;
6
+ width:145px;
7
+ }
8
+ #menu li .drop {
9
+ background:url("../img/down.gif") left 18px no-repeat;
10
+ }
11
+ #menu li ul li {
12
+ width:130px;
13
+ }
14
+ #menu li a {
15
+ padding: 16px 15px 0px 15px;
16
+ }
17
+ #menu li .dropcontent {
18
+ margin:1px auto;
19
+ }
20
+ #menu li .dropfirst {
21
+ margin:0px auto;
22
+ }
23
+ #menu .imgshadow {
24
+ padding:3px;
25
+ }
26
+ #menu ul.list, #menu ul.list2, #menu ol.num, #menu ol.num2 {
27
+ margin:0 0 18px 15px;
28
+ }
29
+ #menu ul.list li, #menu ul.list2 li, #menu ol.num li, #menu ol.num2 li{
30
+ padding:0;
31
+ width:90px;
32
+ }
skin/frontend/base/default/ip_megamenusidebar/css_right/ie7.css ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ #menu li a {
2
+ padding: 15px;
3
+ }
4
+ #menu li .dropcontent {
5
+ margin:1px auto;
6
+ }
7
+ #menu li .dropfirst {
8
+ margin:0px auto;
9
+ }
skin/frontend/base/default/ip_megamenusidebar/css_right/layout.css ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*
2
+ Item Name :
3
+ Author URI : http://themeforest.net/user/Keliah
4
+ Version : 1.0
5
+ */
6
+
7
+ /*
8
+
9
+ TABLE OF CONTENTS
10
+
11
+ 01 RESET
12
+ 02 TYPOGRAPHY
13
+
14
+ */
15
+
16
+
17
+
18
+ /* _____________________________________________________________________________
19
+
20
+ 01 RESET
21
+ _____________________________________________________________________________ */
22
+
23
+
24
+
25
+ html, body, div, span, applet, object, iframe,
26
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre,
27
+ a, abbr, acronym, address, big, cite, code,
28
+ del, dfn, em, font, img, ins, kbd, q, s, samp,
29
+ small, strike, strong, sub, sup, tt, var,
30
+ dl, dt, dd, ol, ul, li,
31
+ fieldset, form, label, legend,
32
+ table, caption, tbody, tfoot, thead, tr, th, td{margin:0; padding:0; border:0; outline:0; font-weight:inherit; font-style:inherit; font-size:100%; font-family:inherit; vertical-align:baseline}
33
+ /* remember to define focus styles! */
34
+ :focus{outline:0}
35
+ body{line-height:1; color:black; background:white}
36
+ ol, ul{list-style:none}
37
+ /* tables still need 'cellspacing="0"' in the markup */
38
+ table{border-collapse:separate; border-spacing:0}
39
+ caption, th, td{text-align:left; font-weight:normal}
40
+ blockquote:before, blockquote:after,
41
+ q:before, q:after{content:""}
42
+ blockquote, q{quotes:""""}
43
+
44
+
45
+ /* _____________________________________________________________________________
46
+
47
+ 02 TYPOGRAPHY
48
+ _____________________________________________________________________________ */
49
+
50
+
51
+
52
+ body {font-family:Arial,Helvetica,sans-serif;}
53
+ p{font-size:12px; line-height:21px; margin-bottom:18px}
54
+ .strong{font-weight:bold}
55
+ .italic{font-style:italic}
56
+ a{text-decoration:none}
57
+ a:hover{cursor:pointer}
58
+ ul, ol{ margin-bottom:18px}
skin/frontend/base/default/ip_megamenusidebar/css_right/megamenu.css ADDED
@@ -0,0 +1,558 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #menu .f-left, #menu .left {
2
+ float: none !important;
3
+ }
4
+ #menu .f-right, #menu .right {
5
+ float: none !important;
6
+ }
7
+
8
+ .level2 {
9
+ padding-left: 4px;
10
+ }
11
+ .level3 {
12
+ padding-left: 5px;
13
+ }
14
+ #menu {
15
+ list-style:none;
16
+ /* width:140px;*/
17
+ width:100%;
18
+ /* margin:50px auto 0 50px;*/
19
+ position:relative;
20
+ z-index:9999;
21
+ padding:0px;
22
+ font-family:Arial, Helvetica, sans-serif;
23
+ font-size:14px;
24
+ color:#FFFFFF;
25
+ border:solid 1px #000000;
26
+ background-image:url("../img/bg.png");
27
+ line-height: 1;
28
+ margin-bottom: 10px;
29
+ }
30
+ #menu li {
31
+ position:relative;
32
+ margin:0px;
33
+ border:none;
34
+ }
35
+ #menu li:hover, .active {
36
+ background:#161616;
37
+ }
38
+
39
+ #menu li a {
40
+ font-size:12px;
41
+ color:#FFFFFF;
42
+ text-transform:uppercase;
43
+ text-shadow:1px 1px 1px #000000;
44
+ outline:0;
45
+ font-weight:600;
46
+ text-decoration:none;
47
+ display:block;
48
+ padding-left:20px;
49
+ padding: 16px 15px 16px 15px;
50
+ text-align: right;
51
+ }
52
+ #menu li:hover a {
53
+ color:#FFFFFF;
54
+ text-shadow:1px 1px 1px #000000;
55
+ }
56
+ #menu li .drop {
57
+ padding-left:30px;
58
+ background:url("../img/down_right.png") no-repeat left center;
59
+ }
60
+
61
+
62
+
63
+ /* _____________________________________________________________________________
64
+
65
+ 2. Drop Down Common Container
66
+ _____________________________________________________________________________ */
67
+
68
+
69
+
70
+ #menu li .dropcontent {
71
+ /* margin:0px 0px 0px auto;*/
72
+ margin:0px auto 0px 100%;
73
+ position:absolute;
74
+ right:-9999em;
75
+ top:0px;
76
+ z-index:9998; /* For IE7 */
77
+ padding:24px 0px 10px 0px;
78
+ text-align:left;
79
+ border:1px solid #1b1b1b;
80
+ border-top:none;
81
+ background:#161616;
82
+ }
83
+
84
+ /* Showing Drop Down on Mouse Hover */
85
+
86
+ #menu li:hover .dropcontent {
87
+ right:100%;
88
+ }
89
+ /*#menu li .dropfirst {
90
+ margin:-1px 0px 0px auto; Fixes a 1px issue for the 1st drop down
91
+ }*/
92
+ #menu li .dropfirst {
93
+ margin: -1px auto 0 100%;
94
+ }
95
+
96
+
97
+
98
+ /* _____________________________________________________________________________
99
+
100
+ 3. Drop Down Specific Containers
101
+ _____________________________________________________________________________ */
102
+
103
+
104
+
105
+ #menu .drop1column {width: 80px;}
106
+ #menu .drop2columns {width: 160px;}
107
+ #menu .drop3columns {width: 240px;}
108
+ #menu .drop4columns {width: 320px;}
109
+ #menu .drop5columns {width: 400px;}
110
+ #menu .drop6columns {width: 480px;}
111
+ #menu .drop7columns {width: 560px;}
112
+ #menu .drop8columns {width: 640px;}
113
+ #menu .drop9columns {width: 720px;}
114
+ #menu .drop10columns {width: 800px;}
115
+ #menu .drop11columns {width: 880px;}
116
+ #menu .drop12columns {width: 960px;}
117
+
118
+
119
+
120
+ /* _____________________________________________________________________________
121
+
122
+ 4. Columns Grid
123
+ _____________________________________________________________________________ */
124
+
125
+
126
+
127
+ #menu .col_1,
128
+ #menu .col_2,
129
+ #menu .col_3,
130
+ #menu .col_4,
131
+ #menu .col_5,
132
+ #menu .col_6,
133
+ #menu .col_7,
134
+ #menu .col_8,
135
+ #menu .col_9,
136
+ #menu .col_10,
137
+ #menu .col_11,
138
+ #menu .col_12 {
139
+ display:inline;
140
+ float: left;
141
+ position: relative;
142
+ margin-left: 15px;
143
+ margin-right: 15px;
144
+ }
145
+ #menu .col_1 {width:50px;}
146
+ #menu .col_2 {width:130px;}
147
+ #menu .col_3 {width:210px;}
148
+ #menu .col_4 {width:290px;}
149
+ #menu .col_5 {width:370px;}
150
+ #menu .col_6 {width:450px;}
151
+ #menu .col_7 {width:530px;}
152
+ #menu .col_8 {width:610px;}
153
+ #menu .col_9 {width:690px;}
154
+ #menu .col_10 {width:770px;}
155
+ #menu .col_11 {width:850px;}
156
+ #menu .col_12 {width:930px;}
157
+
158
+ .clear {
159
+ clear: both;
160
+ display: block;
161
+ overflow: hidden;
162
+ visibility: hidden;
163
+ width: 0;
164
+ height: 0;
165
+ }
166
+
167
+
168
+
169
+ /* _____________________________________________________________________________
170
+
171
+ 5. Drop Down Typography
172
+ _____________________________________________________________________________ */
173
+
174
+
175
+
176
+ #menu p, #menu h1, #menu h2, #menu h3, #menu h4, #menu h5, #menu h6 {
177
+ color:#FFFFFF;
178
+ text-shadow: 1px 1px 1px #000;
179
+ }
180
+ #menu h1, #menu h2 {
181
+ background:url("../img/menu_separator.jpg") bottom repeat-x;
182
+ padding-bottom:12px;
183
+ }
184
+ #menu h1, #menu h2, #menu h3 {
185
+ margin-bottom:18px;
186
+ }
187
+ #menu h4, #menu h5, #menu h6 {
188
+ margin-bottom:12px;
189
+ }
190
+ #menu h1 {
191
+ font-size:36px;
192
+ line-height:36px;
193
+ }
194
+ #menu h2 {
195
+ font-size:30px;
196
+ line-height:42px;
197
+ }
198
+ #menu h3 {
199
+ font-size:28px;
200
+ line-height:28px;
201
+ }
202
+ #menu h4 {
203
+ font-size:21px;
204
+ line-height:24px;
205
+ }
206
+ #menu h5 {
207
+ font-size:18px;
208
+ line-height:28px;
209
+ }
210
+ #menu h6 {
211
+ font-family:"Lucida Grande","Lucida Sans Unicode",sans-serif;
212
+ font-size:14px;
213
+ line-height:18px;
214
+ text-transform:uppercase;
215
+ }
216
+
217
+ /* Links */
218
+
219
+ #menu li .dropcontent a {
220
+ text-transform:none;
221
+ font-size:12px;
222
+ display:inline;
223
+ padding:0;
224
+ }
225
+ #menu li .dropcontent a:hover {
226
+ padding:0;
227
+ }
228
+
229
+ /* Images & Boxes */
230
+
231
+ #menu li .black_box {
232
+ background-color:#111111;
233
+ color: #eeeeee;
234
+ text-shadow: 1px 1px 1px #000;
235
+ padding:6px 8px 6px 8px;
236
+ -moz-border-radius: 5px;
237
+ -webkit-border-radius: 5px;
238
+ -khtml-border-radius: 5px;
239
+ border-radius: 5px;
240
+ -webkit-box-shadow:inset 0 0 3px #000000;
241
+ -moz-box-shadow:inset 0 0 3px #000000;
242
+ box-shadow:inset 0 0 3px #000000;
243
+ }
244
+ #menu .imgshadow {
245
+ background:#000000;
246
+ padding:4px;
247
+ border:1px solid #222222;
248
+ margin-top:5px;
249
+ margin-bottom:18px;
250
+ -moz-box-shadow:0px 0px 5px #000000;
251
+ -webkit-box-shadow:0px 0px 5px #000000;
252
+ box-shadow:0px 0px 5px #000000;
253
+ }
254
+ #menu .img_left {
255
+ float:left;
256
+ margin-right:12px;
257
+ }
258
+ #menu .img_right {
259
+ float:right;
260
+ margin-left:12px;
261
+ }
262
+
263
+ /* Lists */
264
+
265
+ #menu li ul {
266
+ list-style:none;
267
+ padding:0;
268
+ margin:0 0 12px 0;
269
+ }
270
+ #menu li ul li {
271
+ font-size:12px;
272
+ line-height:24px;
273
+ position:relative;
274
+ padding:0;
275
+ margin:0;
276
+ float:none;
277
+ text-align:left;
278
+ }
279
+ #menu li ul li a {
280
+ padding-left:0;
281
+ }
282
+ #menu li ul li:hover {
283
+ background:none;
284
+ border:none;
285
+ }
286
+
287
+ #menu ul.list, #menu ul.list2, #menu ol.num, #menu ol.num2 {
288
+ margin:0 0 18px 20px;
289
+ }
290
+ #menu ul.list li, #menu ul.list2 li, #menu ol.num li, #menu ol.num2 li{
291
+ padding:0 0 0 12px;
292
+ line-height:24px;
293
+ }
294
+ #menu .list {
295
+ list-style:disc;
296
+ }
297
+ #menu .list2 {
298
+ list-style:square;
299
+ }
300
+ #menu .num {
301
+ list-style:decimal;
302
+ }
303
+ #menu .num2 {
304
+ list-style:upper-latin;
305
+ }
306
+
307
+ #menu li .dropcontent ul.list li a, #menu li .dropcontent ul.list2 li a, #menu li .dropcontent ol.num li a, #menu li .dropcontent ol.num2 li a {
308
+ color:#cccccc;
309
+ }
310
+ #menu li .dropcontent ul.list li a:hover, #menu li .dropcontent ul.list2 li a:hover, #menu li .dropcontent ol.num li a:hover, #menu li .dropcontent ol.num2 li a:hover {
311
+ color:#ffffff;
312
+ }
313
+
314
+ #menu ul.thumbnails li {
315
+ margin-bottom:18px;
316
+ }
317
+
318
+ #menu ul.categories {
319
+ background:url("../img/menu_separator.jpg") top repeat-x;
320
+ }
321
+ #menu ul.categories li, #menu ul.categories li:hover {
322
+ background:url("../img/menu_separator.jpg") bottom repeat-x;
323
+ padding:9px 0 9px 0;
324
+ }
325
+ #menu li .dropcontent ul.categories li a {
326
+ color:#cccccc;
327
+ padding-left:0;
328
+ }
329
+ #menu li .dropcontent ul.categories li a:hover {
330
+ color:#ffffff;
331
+ }
332
+
333
+ /* Paragraphs with Icons */
334
+
335
+ #menu .calendar, #menu .note, #menu .help, #menu .delete, #menu .favorite, #menu .lock, #menu .archive, #menu .briefcase, #menu .search, #menu .user {
336
+ padding-left:36px;
337
+ margin-bottom:18px;
338
+ }
339
+ #menu .calendar {background:url("../img/icons/calendar.png") no-repeat 0px 5px}
340
+ #menu .note {background:url("../img/icons/note.png") no-repeat 0px 5px}
341
+ #menu .archive {background:url("../img/icons/archive.png") no-repeat 0px 5px}
342
+ #menu .search {background:url("../img/icons/search.png") no-repeat 0px 5px}
343
+ #menu .help {background:url("../img/icons/help.png") no-repeat 0px 5px}
344
+ #menu .delete {background:url("../img/icons/delete.png") no-repeat 0px 5px}
345
+ #menu .favorite {background:url("../img/icons/favorite.png") no-repeat 0px 5px}
346
+ #menu .lock {background:url("../img/icons/lock.png") no-repeat 0px 5px}
347
+ #menu .briefcase {background:url("../img/icons/briefcase.png") no-repeat 0px 5px}
348
+ #menu .user {background:url("../img/icons/user.png") no-repeat 0px 5px}
349
+
350
+ /* Paragraphs with borders */
351
+
352
+ #menu .dark, #menu .brown, #menu .yellow, #menu .red, #menu .blue, #menu .green {
353
+ padding-left:15px;
354
+ color:#cccccc;
355
+ margin-bottom:18px;
356
+ }
357
+ #menu .dark {border-left:#3B3B3B solid 7px}
358
+ #menu .brown {border-left:#8D8767 solid 7px}
359
+ #menu .yellow {border-left:#DBA742 solid 7px}
360
+ #menu .red {border-left:#C05D48 solid 7px}
361
+ #menu .blue {border-left:#52878B solid 7px}
362
+ #menu .green {border-left:#B0BD85 solid 7px}
363
+
364
+ /* Tables */
365
+
366
+ #menu #table_light, #menu #table_dark {
367
+ width:100%;
368
+ padding:0;
369
+ margin:6px 0 18px 0;
370
+ font-size:12px;
371
+ }
372
+ #menu #table_light th, #menu #table_dark th {
373
+ text-align:left;
374
+ padding:12px 9px 12px 9px;
375
+ font-weight:bold;
376
+ font-size:12px;
377
+ }
378
+ #menu #table_light {
379
+ border:1px solid #cbcbcb;
380
+ border-bottom:none;
381
+ }
382
+ #menu #table_light th {
383
+ color:#3A3A3A;
384
+ border-bottom:1px solid #cbcbcb;
385
+ background:#F5F5F5;
386
+ }
387
+ #menu #table_light td {
388
+ border-bottom:1px solid #cbcbcb;
389
+ background:#fff;
390
+ padding:12px 9px 12px 9px;
391
+ color:#888;
392
+ }
393
+
394
+ #menu #table_dark {
395
+ border:1px solid #000;
396
+ border-bottom:none;
397
+ }
398
+ #menu #table_dark th {
399
+ color:#FFF;
400
+ border-bottom:1px solid #000;
401
+ background:#0D0D0D;
402
+ }
403
+ #menu #table_dark td {
404
+ border-bottom:1px solid #000;
405
+ background:#0F0F0F;
406
+ padding:12px 9px 12px 9px;
407
+ color:#DDD;
408
+ }
409
+
410
+ /* Dropcap */
411
+
412
+ .dropcap {
413
+ display:block;
414
+ float:left;
415
+ font-size:42px;
416
+ line-height:36px;
417
+ margin:2px 8px 0 0;
418
+ }
419
+
420
+ /* Form Elements */
421
+
422
+ #menu form {
423
+ font-size:12px;
424
+ margin:0;
425
+ padding:0;
426
+ width:100%;
427
+ }
428
+ #menu legend, #menu label {
429
+ font-size:12px;
430
+ letter-spacing:1px;
431
+ text-transform:uppercase;
432
+ }
433
+ #menu input, #menu textarea, #menu select {
434
+ font-family:Arial,Helvetica,sans-serif;
435
+ font-size:12px;
436
+ padding:5px;
437
+ margin:5px 0 5px 0;
438
+ background:#f5f5f5;
439
+ border:1px solid #ddd;
440
+ border-radius:3px;
441
+ -moz-border-radius: 3px;
442
+ -webkit-border-radius: 3px;
443
+ }
444
+ #menu .radio, #menu .checkbox {
445
+ background:none;
446
+ border:none;
447
+ }
448
+ #menu select {
449
+ width:260px;
450
+ }
451
+ #menu textarea {
452
+ width:360px;
453
+ height:110px;
454
+ }
455
+ #menu input:hover, #menu textarea:hover {
456
+ border:1px solid #ccc;
457
+ }
458
+ #menu textarea:hover {
459
+ border:1px solid #BBB;
460
+ }
461
+ #menu optgroup {
462
+ font-style:normal;
463
+ }
464
+ #menu .button {
465
+ margin-right:18px;
466
+ padding:4px;
467
+ }
468
+
469
+ #menu .blackbg {
470
+ background:#000000;
471
+ }
472
+
473
+
474
+
475
+ /* _____________________________________________________________________________
476
+
477
+ 6. Colors
478
+ _____________________________________________________________________________ */
479
+
480
+
481
+
482
+ /* Blue */
483
+
484
+ #menu.menu_blue {background-color:#536987;} /* 43% */
485
+ #menu.menu_blue li .dropcontent a {color:#6a82a3;} /* 53% */
486
+ #menu.menu_blue li .dropcontent a:hover {color:#536987;} /* 43% */
487
+
488
+ /* Brown */
489
+
490
+ #menu.menu_brown {background-color:#866e56;}
491
+ #menu.menu_brown li .dropcontent a {color:#a1886e;}
492
+ #menu.menu_brown li .dropcontent a:hover {color:#866e56;}
493
+
494
+ /* Cherry */
495
+
496
+ #menu.menu_cherry {background-color:#ab2d5c;}
497
+ #menu.menu_cherry li .dropcontent a {color:#cc3f73;}
498
+ #menu.menu_cherry li .dropcontent a:hover {color:#ab2d5c;}
499
+
500
+ /* Coffee */
501
+
502
+ #menu.menu_coffee {background-color:#7b675c;}
503
+ #menu.menu_coffee li .dropcontent a {color:#978073;}
504
+ #menu.menu_coffee li .dropcontent a:hover {color:#7b675c;}
505
+
506
+ /* Green */
507
+
508
+ #menu.menu_green {background-color:#788951;}
509
+ #menu.menu_green li .dropcontent a {color:#93a568;}
510
+ #menu.menu_green li .dropcontent a:hover {color:#788951;}
511
+
512
+ /* Grey */
513
+
514
+ #menu.menu_grey {background-color:#6a6a6a;}
515
+ #menu.menu_grey li .dropcontent a {color:#8c8c8c;}
516
+ #menu.menu_grey li .dropcontent a:hover {color:#6a6a6a;}
517
+
518
+ /* Ocean */
519
+
520
+ #menu.menu_ocean {background-color:#528a8f;}
521
+ #menu.menu_ocean li .dropcontent a {color:#6aa5aa;}
522
+ #menu.menu_ocean li .dropcontent a:hover {color:#528a8f;}
523
+
524
+ /* Orange */
525
+
526
+ #menu.menu_orange {background-color:#e34f00;}
527
+ #menu.menu_orange li .dropcontent a {color:#ff6717;}
528
+ #menu.menu_orange li .dropcontent a:hover {color:#e34f00;}
529
+
530
+ /* Pink */
531
+
532
+ #menu.menu_pink {background-color:#d50065;}
533
+ #menu.menu_pink li .dropcontent a {color:#ff097d;}
534
+ #menu.menu_pink li .dropcontent a:hover {color:#d50065;}
535
+
536
+ /* Purple */
537
+
538
+ #menu.menu_purple {background-color:#68449a;}
539
+ #menu.menu_purple li .dropcontent a {color:#815ab7;}
540
+ #menu.menu_purple li .dropcontent a:hover {color:#68449a;}
541
+
542
+ /* Red */
543
+
544
+ #menu.menu_red {background-color:#b82323;}
545
+ #menu.menu_red li .dropcontent a {color:#d83636;}
546
+ #menu.menu_red li .dropcontent a:hover {color:#b82323;}
547
+
548
+ /* Tan */
549
+
550
+ #menu.menu_tan {background-color:#837361;}
551
+ #menu.menu_tan li .dropcontent a {color:#9c8c7b;}
552
+ #menu.menu_tan li .dropcontent a:hover {color:#837361;}
553
+
554
+ /* Yellow */
555
+
556
+ #menu.menu_yellow {background-color:#caa616;}
557
+ #menu.menu_yellow li .dropcontent a {color:#e8c22c;}
558
+ #menu.menu_yellow li .dropcontent a:hover {color:#caa616;}
skin/frontend/base/default/ip_megamenusidebar/img/bg.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/down.gif ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/down.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/down_right.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/alert.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/archive.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/briefcase.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/calendar.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/delete.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/error.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/favorite.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/help.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/info.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/lock.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/note.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/ok.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/search.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/icons/user.png ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/img01.jpg ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/img02.jpg ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/img03.jpg ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/img/menu_separator.jpg ADDED
Binary file
skin/frontend/base/default/ip_megamenusidebar/promo.jpg ADDED
Binary file