Fishpigs_iBanners - Version 1.2.0.0

Version Notes

Added iBanners Dashboard

Download this release

Release Info

Developer fishpig
Extension Fishpigs_iBanners
Version 1.2.0.0
Comparing to
See all releases


Code changes from version 1.1.0.1 to 1.2.0.0

app/code/community/Fishpig/IBanners/Block/Adminhtml/Banner/Grid.php CHANGED
@@ -12,22 +12,51 @@ class Fishpig_iBanners_Block_Adminhtml_Banner_Grid extends Mage_Adminhtml_Block_
12
  {
13
  parent::__construct();
14
 
15
- $this->setId('banner_grid');
16
  $this->setDefaultSort('title');
17
  $this->setDefaultDir('asc');
18
  $this->setSaveParametersInSession(true);
19
  $this->setUseAjax(true);
20
  }
21
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
  /**
23
  * Initialise and set the collection for the grid
24
  *
25
  */
26
  protected function _prepareCollection()
27
  {
28
- $collection = Mage::getResourceModel('ibanners/banner_collection');
29
-
30
- $this->setCollection($collection);
31
 
32
  return parent::_prepareCollection();
33
  }
@@ -79,7 +108,7 @@ class Fishpig_iBanners_Block_Adminhtml_Banner_Grid extends Mage_Adminhtml_Block_
79
  array(
80
  'caption' => Mage::helper('catalog')->__('Edit'),
81
  'url' => array(
82
- 'base'=>'*/*/edit',
83
  ),
84
  'field' => 'id'
85
  )
@@ -93,13 +122,13 @@ class Fishpig_iBanners_Block_Adminhtml_Banner_Grid extends Mage_Adminhtml_Block_
93
  }
94
 
95
  /**
96
- * Retrieve the URL used to modify the grid via AJAX
97
  *
98
  * @return string
99
  */
100
- public function getGridUrl()
101
  {
102
- return $this->getUrl('*/*/grid');
103
  }
104
 
105
  /**
@@ -108,7 +137,7 @@ class Fishpig_iBanners_Block_Adminhtml_Banner_Grid extends Mage_Adminhtml_Block_
108
  */
109
  public function getRowUrl($row)
110
  {
111
- return $this->getUrl('*/*/edit', array('id' => $row->getId()));
112
  }
113
 
114
  /**
@@ -135,7 +164,7 @@ class Fishpig_iBanners_Block_Adminhtml_Banner_Grid extends Mage_Adminhtml_Block_
135
 
136
  $this->getMassactionBlock()->addItem('delete', array(
137
  'label'=> $this->__('Delete'),
138
- 'url' => $this->getUrl('*/*/massDelete'),
139
  'confirm' => Mage::helper('catalog')->__('Are you sure?')
140
  ));
141
  }
12
  {
13
  parent::__construct();
14
 
15
+ $this->setId('ibanners_banner_grid');
16
  $this->setDefaultSort('title');
17
  $this->setDefaultDir('asc');
18
  $this->setSaveParametersInSession(true);
19
  $this->setUseAjax(true);
20
  }
21
 
22
+ /**
23
+ * Insert the Add New button
24
+ *
25
+ * @return $this
26
+ */
27
+ protected function _prepareLayout()
28
+ {
29
+ $this->setChild('add_button',
30
+ $this->getLayout()->createBlock('adminhtml/widget_button')
31
+ ->setData(array(
32
+ 'label' => Mage::helper('adminhtml')->__('Add New Banner'),
33
+ 'class' => 'add',
34
+ 'onclick' => "setLocation('" . $this->getUrl('*/ibanners_banner/new') . "');",
35
+ ))
36
+ );
37
+
38
+ return parent::_prepareLayout();
39
+ }
40
+
41
+ /**
42
+ * Retrieve the main buttons html
43
+ *
44
+ * @return string
45
+ */
46
+ public function getMainButtonsHtml()
47
+ {
48
+ return parent::getMainButtonsHtml()
49
+ . $this->getChildHtml('add_button');
50
+ }
51
+
52
+
53
  /**
54
  * Initialise and set the collection for the grid
55
  *
56
  */
57
  protected function _prepareCollection()
58
  {
59
+ $this->setCollection(Mage::getResourceModel('ibanners/banner_collection'));
 
 
60
 
61
  return parent::_prepareCollection();
62
  }
108
  array(
109
  'caption' => Mage::helper('catalog')->__('Edit'),
110
  'url' => array(
111
+ 'base'=>'*/ibanners_banner/edit',
112
  ),
113
  'field' => 'id'
114
  )
122
  }
123
 
124
  /**
125
+ * Get the current URL for the grid
126
  *
127
  * @return string
128
  */
129
+ public function getCurrentUrl($params = array())
130
  {
131
+ return $this->getUrl('*/*/pageGrid');
132
  }
133
 
134
  /**
137
  */
138
  public function getRowUrl($row)
139
  {
140
+ return $this->getUrl('*/ibanners_banner/edit', array('id' => $row->getId()));
141
  }
142
 
143
  /**
164
 
165
  $this->getMassactionBlock()->addItem('delete', array(
166
  'label'=> $this->__('Delete'),
167
+ 'url' => $this->getUrl('*/ibanners_banner/massDelete'),
168
  'confirm' => Mage::helper('catalog')->__('Are you sure?')
169
  ));
170
  }
app/code/community/Fishpig/IBanners/Block/Adminhtml/Dashboard.php ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @category Fishpig
4
+ * @package Fishpig_AttributeSplash
5
+ * @license http://fishpig.co.uk/license.txt
6
+ * @author Ben Tideswell <help@fishpig.co.uk>
7
+ */
8
+
9
+ class Fishpig_IBanners_Block_Adminhtml_Dashboard extends Mage_Adminhtml_Block_Widget_Tabs
10
+ {
11
+ public function __construct()
12
+ {
13
+ parent::__construct();
14
+
15
+ $this->setId('ibanners_dashboard_tabs');
16
+ $this->setDestElementId('ibanners_tab_content');
17
+ $this->setTitle($this->__('iBanners'));
18
+ $this->setTemplate('widget/tabshoriz.phtml');
19
+ }
20
+
21
+ protected function _prepareLayout()
22
+ {
23
+ $tabs = array(
24
+ 'group' => 'Groups',
25
+ 'banner' => 'Banners',
26
+ );
27
+
28
+ $_layout = $this->getLayout();
29
+
30
+ foreach($tabs as $alias => $label) {
31
+ $this->addTab($alias, array(
32
+ 'label' => Mage::helper('catalog')->__($label),
33
+ 'content' => $_layout->createBlock('ibanners/adminhtml_' . $alias)->toHtml(),
34
+ 'active' => $alias === 'banner',
35
+ ));
36
+ }
37
+
38
+ if ($extend = $_layout->createBlock('ibanners/adminhtml_extend')) {
39
+ $extend->setNameInLayout('fishpig.extend')
40
+ ->setTabLabel($this->__('Add-Ons'))
41
+ ->setTabUrl('*/*/extend');
42
+
43
+ $this->addTab('extend', $extend);
44
+ }
45
+
46
+ return parent::_prepareLayout();
47
+ }
48
+ }
app/code/community/Fishpig/IBanners/Block/Adminhtml/Extend.php ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @category Fishpig
4
+ * @package Fishpig_iBanners
5
+ * @license http://fishpig.co.uk/license.txt
6
+ * @author Ben Tideswell <help@fishpig.co.uk>
7
+ */
8
+
9
+ // Include the FPAdmin Extend Block class
10
+ require_once(Mage::getModuleDir('', 'Fishpig_iBanners') . DS . implode(DS, array('FPAdmin', 'Block', 'Adminhtml', 'Extend.php')));
11
+
12
+ class Fishpig_iBanners_Block_Adminhtml_Extend extends Fishpig_FPAdmin_Block_Adminhtml_Extend {}
app/code/community/Fishpig/IBanners/Block/Adminhtml/Group/Grid.php CHANGED
@@ -12,22 +12,50 @@ class Fishpig_iBanners_Block_Adminhtml_Group_Grid extends Mage_Adminhtml_Block_W
12
  {
13
  parent::__construct();
14
 
15
- $this->setId('banner_grid');
16
  $this->setDefaultSort('title');
17
  $this->setDefaultDir('asc');
18
  $this->setSaveParametersInSession(true);
19
  $this->setUseAjax(true);
20
  }
21
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
  /**
23
  * Initialise and set the collection for the grid
24
  *
25
  */
26
  protected function _prepareCollection()
27
  {
28
- $collection = Mage::getResourceModel('ibanners/group_collection');
29
-
30
- $this->setCollection($collection);
31
 
32
  return parent::_prepareCollection();
33
  }
@@ -87,7 +115,7 @@ class Fishpig_iBanners_Block_Adminhtml_Group_Grid extends Mage_Adminhtml_Block_W
87
  array(
88
  'caption' => Mage::helper('catalog')->__('Edit'),
89
  'url' => array(
90
- 'base'=>'*/*/edit',
91
  ),
92
  'field' => 'id'
93
  )
@@ -101,13 +129,13 @@ class Fishpig_iBanners_Block_Adminhtml_Group_Grid extends Mage_Adminhtml_Block_W
101
  }
102
 
103
  /**
104
- * Retrieve the URL used to modify the grid via AJAX
105
  *
106
  * @return string
107
  */
108
- public function getGridUrl()
109
  {
110
- return $this->getUrl('*/*/grid');
111
  }
112
 
113
  /**
@@ -116,7 +144,7 @@ class Fishpig_iBanners_Block_Adminhtml_Group_Grid extends Mage_Adminhtml_Block_W
116
  */
117
  public function getRowUrl($row)
118
  {
119
- return $this->getUrl('*/*/edit', array('id' => $row->getId()));
120
  }
121
 
122
  /**
@@ -143,7 +171,7 @@ class Fishpig_iBanners_Block_Adminhtml_Group_Grid extends Mage_Adminhtml_Block_W
143
 
144
  $this->getMassactionBlock()->addItem('delete', array(
145
  'label'=> $this->__('Delete'),
146
- 'url' => $this->getUrl('*/*/massDelete'),
147
  'confirm' => Mage::helper('catalog')->__('Are you sure?')
148
  ));
149
  }
12
  {
13
  parent::__construct();
14
 
15
+ $this->setId('ibanners_group_grid');
16
  $this->setDefaultSort('title');
17
  $this->setDefaultDir('asc');
18
  $this->setSaveParametersInSession(true);
19
  $this->setUseAjax(true);
20
  }
21
 
22
+ /**
23
+ * Insert the Add New button
24
+ *
25
+ * @return $this
26
+ */
27
+ protected function _prepareLayout()
28
+ {
29
+ $this->setChild('add_button',
30
+ $this->getLayout()->createBlock('adminhtml/widget_button')
31
+ ->setData(array(
32
+ 'label' => Mage::helper('adminhtml')->__('Add New Group'),
33
+ 'class' => 'add',
34
+ 'onclick' => "setLocation('" . $this->getUrl('*/ibanners_group/new') . "');",
35
+ ))
36
+ );
37
+
38
+ return parent::_prepareLayout();
39
+ }
40
+
41
+ /**
42
+ * Retrieve the main buttons html
43
+ *
44
+ * @return string
45
+ */
46
+ public function getMainButtonsHtml()
47
+ {
48
+ return parent::getMainButtonsHtml()
49
+ . $this->getChildHtml('add_button');
50
+ }
51
+
52
  /**
53
  * Initialise and set the collection for the grid
54
  *
55
  */
56
  protected function _prepareCollection()
57
  {
58
+ $this->setCollection(Mage::getResourceModel('ibanners/group_collection'));
 
 
59
 
60
  return parent::_prepareCollection();
61
  }
115
  array(
116
  'caption' => Mage::helper('catalog')->__('Edit'),
117
  'url' => array(
118
+ 'base'=>'*/ibanners_group/edit',
119
  ),
120
  'field' => 'id'
121
  )
129
  }
130
 
131
  /**
132
+ * Get the current URL for the grid
133
  *
134
  * @return string
135
  */
136
+ public function getCurrentUrl($params = array())
137
  {
138
+ return $this->getUrl('*/*/groupGrid');
139
  }
140
 
141
  /**
144
  */
145
  public function getRowUrl($row)
146
  {
147
+ return $this->getUrl('*/ibanners_group/edit', array('id' => $row->getId()));
148
  }
149
 
150
  /**
171
 
172
  $this->getMassactionBlock()->addItem('delete', array(
173
  'label'=> $this->__('Delete'),
174
+ 'url' => $this->getUrl('*/ibanners_group/massDelete'),
175
  'confirm' => Mage::helper('catalog')->__('Are you sure?')
176
  ));
177
  }
app/code/community/Fishpig/IBanners/FPAdmin/Block/Adminhtml/Extend.php ADDED
@@ -0,0 +1,408 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @category Fishpig
4
+ * @package Fishpig_FPAdmin
5
+ * @author Ben Tideswell <help@fishpig.co.uk>
6
+ */
7
+
8
+ // Required for compiler as this is used in multiple modules
9
+ if (!defined('__fishpig_extend')) {
10
+ define('__fishpig_extend', true);
11
+
12
+ abstract class Fishpig_FPAdmin_Block_Adminhtml_Extend extends Mage_Core_Block_Template
13
+ implements Mage_Adminhtml_Block_Widget_Tab_Interface
14
+ {
15
+ /**
16
+ * Tracking string for GA
17
+ *
18
+ * @var const string
19
+ */
20
+ const TRACKING_STRING = '?utm_source=%s&utm_medium=%s&utm_term=%s&utm_campaign=Extend';
21
+
22
+ /**
23
+ * Base URL for links
24
+ *
25
+ * @var const string
26
+ */
27
+ const BASE_URL = 'http://fishpig.co.uk/';
28
+
29
+ /**
30
+ * The URL for the S3 bucket for images
31
+ *
32
+ * @var const string
33
+ */
34
+ const S3_BUCKET_URL = 'https://s3.amazonaws.com/FishPig-Extend/image/';
35
+
36
+ /**
37
+ * Cache for all available extensions
38
+ *
39
+ * @var array
40
+ */
41
+ static protected $_extensions = null;
42
+
43
+ protected function _construct()
44
+ {
45
+ $this->setTemplate('small.phtml');
46
+
47
+ return parent::_construct();
48
+ }
49
+
50
+ /**
51
+ * Retrieve extensions set via XML
52
+ *
53
+ * @return array
54
+ */
55
+ public function getSelectedExtensions()
56
+ {
57
+ return $this->getExtensions($this->getLimit(), $this->getPreferred() ? array_keys($this->getPreferred()) : null);
58
+ }
59
+
60
+ /**
61
+ * Retrieve the available extensions taking into account $count and $pref
62
+ *
63
+ * @param int $count = 0
64
+ * @param array $pref = array()
65
+ * @return false|array
66
+ */
67
+ public function getExtensions($count = 0, array $pref = array())
68
+ {
69
+ if (($pool = $this->_getAllExtensions()) !== false) {
70
+ $winners = array();
71
+
72
+ foreach($pref as $code) {
73
+ if (isset($pool[$code])) {
74
+ $winners[$code] = $pool[$code];
75
+ unset($pool[$code]);
76
+ }
77
+
78
+ if ($count > 0 && count($winners) >= $count) {
79
+ break;
80
+ }
81
+ }
82
+
83
+ while(count($winners) < $count && count($pool) > 0) {
84
+ $code = key($pool);
85
+
86
+ $winners[$code] = $pool[$code];
87
+ unset($pool[$code]);
88
+ }
89
+
90
+ end($winners);
91
+
92
+ $winners[key($winners)]['last'] = true;
93
+
94
+ return $winners;
95
+ }
96
+
97
+ return false;
98
+ }
99
+
100
+ /**
101
+ * Retrieve all of the available extensions
102
+ *
103
+ * @return array
104
+ */
105
+ protected function _getAllExtensions()
106
+ {
107
+ if (!is_null(self::$_extensions)) {
108
+ return self::$_extensions;
109
+ }
110
+
111
+ $installedModules = array_keys((array)$this->_getConfig()->getNode('modules'));
112
+ $config = (array)$this->_getConfig()->getNode('fishpig/extend')->asArray();
113
+ self::$_extensions = array();
114
+
115
+ foreach($config as $code => $extension) {
116
+ $extension['module'] = $code;
117
+ $reqMultistore = isset($extension->require_multistore) ? (int)$extension->require_multistore : null;
118
+
119
+ if (!isset($_SERVER['IS_FISHPIG']) && in_array($code, $installedModules)) {
120
+ continue;
121
+ }
122
+ else if (!is_null($reqMultistore) && $reqMultistore === (int)Mage::app()->isSingleStoreMode()) {
123
+ continue;
124
+ }
125
+ else if (isset($extension['depends'])) {
126
+ $depends = array_keys((array)$extension['depends']);
127
+
128
+ if (count(array_diff($depends, $installedModules)) > 0) {
129
+ continue;
130
+ }
131
+ }
132
+
133
+ self::$_extensions[$code] = (array)$extension;
134
+ }
135
+
136
+ if (count(self::$_extensions) === 0) {
137
+ self::$_extensions = false;
138
+ }
139
+
140
+ return self::$_extensions;
141
+ }
142
+
143
+ /**
144
+ * Retrieve the title of the extension
145
+ *
146
+ * @param array $e
147
+ * @return string
148
+ */
149
+ public function getTitle(array $e = null)
150
+ {
151
+ // Being called as a tab
152
+ if (is_null($e)) {
153
+ return $this->_getData('title');
154
+ }
155
+
156
+ return $this->_getField($e, 'title');
157
+ }
158
+
159
+ /**
160
+ * Retrieve the subtitle of the extension
161
+ *
162
+ * @param array $e
163
+ * @return string
164
+ */
165
+ public function getSubTitle(array $e)
166
+ {
167
+ return $this->_getField($e, 'subtitle');
168
+ }
169
+
170
+ /**
171
+ * Rertrieve the URL for $e with the tracking code
172
+ *
173
+ * @param array $e
174
+ * @param string $campaign
175
+ * @param string $source
176
+ * @param string $medium
177
+ * @return string
178
+ */
179
+ public function getTrackedUrl(array $e, $source, $content = null)
180
+ {
181
+ $term = $this->_getField($e, 'module');
182
+
183
+ $trackedUrl = sprintf(self::BASE_URL . $this->_getField($e, 'url') . self::TRACKING_STRING, $source, $this->getMedium(), $term);
184
+
185
+ if (!is_null($content)) {
186
+ $trackedUrl .= '&utm_content=' . $content;
187
+ }
188
+
189
+ return $trackedUrl;
190
+ }
191
+
192
+ /**
193
+ * Retrieve the utm_medium parameter
194
+ *
195
+ * @return string
196
+ */
197
+ public function getMedium()
198
+ {
199
+ return $this->_getData('medium')
200
+ ? $this->_getData('medium')
201
+ : 'Magento Admin';
202
+ }
203
+
204
+ /**
205
+ * Retrieve the short description of the extension
206
+ *
207
+ * @param array $e
208
+ * @return string
209
+ */
210
+ public function getShortDescription(array $e)
211
+ {
212
+ return $this->_getField($e, 'short_description');
213
+ }
214
+
215
+ /**
216
+ * Retrieve the image URL of the extension
217
+ *
218
+ * @param array $e
219
+ * @return string
220
+ */
221
+ public function getImageUrl(array $e)
222
+ {
223
+ return self::S3_BUCKET_URL . $this->_getField($e, 'image');
224
+ }
225
+
226
+ /**
227
+ * Retrieve a field from the extension
228
+ *
229
+ * @param array $e
230
+ * @param string $field
231
+ * @return string
232
+ */
233
+ protected function _getField(array $e, $field)
234
+ {
235
+ return $e && is_array($e) && isset($e[$field]) ? $e[$field] : '';
236
+ }
237
+
238
+ /**
239
+ * Determine wether $e is the last $e in the array
240
+ *
241
+ * @param array $e
242
+ * @return bool
243
+ */
244
+ public function isLast(array $e)
245
+ {
246
+ return $this->_getField($e, 'last') === true;
247
+ }
248
+
249
+ /**
250
+ * Retrieve the Magento config model
251
+ *
252
+ * @return Mage_Core_Model_Config
253
+ */
254
+ protected function _getConfig()
255
+ {
256
+ return Mage::app()->getConfig();
257
+ }
258
+
259
+ /**
260
+ * Retrieve the ID
261
+ *
262
+ * @return string
263
+ */
264
+ public function getId()
265
+ {
266
+ if (!$this->_getData('id')) {
267
+ $this->setId('fp-extend-' . rand(1111, 9999));
268
+ }
269
+
270
+ return $this->_getData('id');
271
+ }
272
+
273
+ /**
274
+ * Retrieve the full path to the template
275
+ *
276
+ * @return string
277
+ */
278
+ public function getTemplateFile()
279
+ {
280
+ if (($dir = $this->_getFPAdminDir()) !== false) {
281
+ return $dir . 'template' . DS . $this->getTemplate();
282
+ }
283
+ }
284
+
285
+ /**
286
+ * Set the template include path
287
+ *
288
+ * @param string $dir
289
+ * @return $this
290
+ */
291
+ public function setScriptPath($dir)
292
+ {
293
+ $this->_viewDir = '';
294
+
295
+ return $this;
296
+ }
297
+
298
+ /**
299
+ * Retrieve any available FPAdmin directory
300
+ *
301
+ * @return false|string
302
+ */
303
+ protected function _getFPAdminDir()
304
+ {
305
+ $candidates = array(
306
+ $this->getModule(),
307
+ 'Fishpig_Wordpress',
308
+ 'Fishpig_AttributeSplash',
309
+ 'Fishpig_iBanners'
310
+ );
311
+
312
+ foreach(array_unique($candidates) as $candidate) {
313
+ if (!$candidate) {
314
+ continue;
315
+ }
316
+
317
+ $dir = Mage::getModuleDir('', $candidate) . DS . 'FPAdmin' . DS;
318
+
319
+ if (is_dir($dir)) {
320
+ return $dir;
321
+ }
322
+ }
323
+
324
+ return false;
325
+ }
326
+
327
+ /**
328
+ * If tab, always show
329
+ *
330
+ * @return bool
331
+ */
332
+ public function canShowTab()
333
+ {
334
+ return true;
335
+ }
336
+
337
+ /**
338
+ * Don't hide if a tab
339
+ *
340
+ * @return bool
341
+ */
342
+ public function isHidden()
343
+ {
344
+ return false;
345
+ }
346
+
347
+ /**
348
+ * Retrieve the tab title
349
+ *
350
+ * @return string
351
+ */
352
+ public function getTabTitle()
353
+ {
354
+ return $this->getTabLabel();
355
+ }
356
+
357
+ /**
358
+ * Retrieve the tab label
359
+ *
360
+ * @return string
361
+ */
362
+ public function getTabLabel()
363
+ {
364
+ return $this->_getData('tab_label');
365
+ }
366
+
367
+ /**
368
+ * Determine whether to skip generate content
369
+ *
370
+ * @return bool
371
+ */
372
+ public function getSkipGenerateContent()
373
+ {
374
+ return true;
375
+ }
376
+
377
+ /**
378
+ * Retrieve the tab class name
379
+ *
380
+ * @return string
381
+ */
382
+ public function getTabClass()
383
+ {
384
+ if ($this->getSkipGenerateContent()) {
385
+ return 'ajax';
386
+ }
387
+
388
+ return parent::getTabClass();
389
+ }
390
+
391
+ /**
392
+ * Retrieve the URL used to load the tab content
393
+ *
394
+ * @return string
395
+ */
396
+ public function getTabUrl()
397
+ {
398
+ if ($tabUrl = $this->_getData('tab_url')) {
399
+ return $this->getUrl($tabUrl);
400
+ }
401
+
402
+ return '#';
403
+ }
404
+ }
405
+
406
+ // End of compilation fix
407
+ }
408
+
app/code/community/Fishpig/IBanners/FPAdmin/etc/config.xml ADDED
@@ -0,0 +1,82 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <config>
3
+ <fishpig>
4
+ <extend>
5
+ <Fishpig_Bolt>
6
+ <url><![CDATA[magento/extensions/bolt-full-page-cache/]]></url>
7
+ <image>bolt.png</image>
8
+ <title>Bolt</title>
9
+ <subtitle>Full Page Cache</subtitle>
10
+ <short_description>Add enterprise level caching to Magento community with Bolt, Magento's fastest Full Page Cache extension.</short_description>
11
+ </Fishpig_Bolt>
12
+ <Fishpig_NoBots>
13
+ <url><![CDATA[magento/extensions/block-robots-stop-spam/]]></url>
14
+ <image>nobots.png</image>
15
+ <title>NoBots</title>
16
+ <subtitle>Stop Magento Spam Bots</subtitle>
17
+ <short_description>NoBots automatically blocks spam bots from your website giving you less spam and a faster server.</short_description>
18
+ </Fishpig_NoBots>
19
+ <Fishpig_CrossLink>
20
+ <url><![CDATA[magento/extensions/seo-internal-links/]]></url>
21
+ <image>crosslink.png</image>
22
+ <title>Crosslink</title>
23
+ <subtitle>SEO Internal Links</subtitle>
24
+ <short_description>Automatically cross link your products, categories, splash pages, CMS pages, blog posts and categories using Crosslinks.</short_description>
25
+ </Fishpig_CrossLink>
26
+ <Fishpig_Opti>
27
+ <url><![CDATA[magento/extensions/optimisation-minification/]]></url>
28
+ <image>opti.png</image>
29
+ <title>Opti</title>
30
+ <subtitle>Minify Magento</subtitle>
31
+ <short_description>Opti automatically minifies your HTML, CSS and Javascript and works on any server.</short_description>
32
+ </Fishpig_Opti>
33
+ <Fishpig_AttributeSplashPro>
34
+ <url><![CDATA[magento/extensions/attribute-splash-pro/]]></url>
35
+ <image>splash-pro.png</image>
36
+ <title>Splash Pro</title>
37
+ <subtitle>SEO Landing Pages</subtitle>
38
+ <short_description>Create SEO landing pages quickly and easily using Splash Pro. Decide which products you want to display based on multiple attribute filters, category filters and price filters.</short_description>
39
+ </Fishpig_AttributeSplashPro>
40
+ <Fishpig_BasketShipping>
41
+ <url><![CDATA[magento/extensions/bolt-full-page-cache/]]></url>
42
+ <image>basket-shipping.png</image>
43
+ <title>Basket Shipping</title>
44
+ <subtitle>Automatically set the Shipping Method</subtitle>
45
+ <short_description>Automatically set the shipping method as soon as your customer hits your shopping cart.</short_description>
46
+ </Fishpig_BasketShipping>
47
+ <Fishpig_Wordpress_Addon_Multisite>
48
+ <url><![CDATA[magento/wordpress-integration/multisite/]]></url>
49
+ <image>wordpress-multisite.png</image>
50
+ <title>WordPress Integration</title>
51
+ <subtitle>Multi-Store Blog Integration</subtitle>
52
+ <short_description>Integrate a WordPress blog into your Magento theme in minutes with this free extension.</short_description>
53
+ <require_multistore>1</require_multistore>
54
+ <depends><Fishpig_Wordpress /></depends>
55
+ </Fishpig_Wordpress_Addon_Multisite>
56
+ <Fishpig_Wordpress>
57
+ <url><![CDATA[magento/wordpress-integration/]]></url>
58
+ <image>wordpress.png</image>
59
+ <title>WordPress Integration</title>
60
+ <subtitle>WordPress blog integration</subtitle>
61
+ <short_description>Manage multiple blogs from a single WordPress Admin and integrate each blog with a different Magento store view</short_description>
62
+ <require_multistore>0</require_multistore>
63
+ </Fishpig_Wordpress>
64
+ <Fishpig_Wordpress_Addon_Root>
65
+ <url><![CDATA[magento/wordpress-integration/root/]]></url>
66
+ <image>root.gif</image>
67
+ <title>Root</title>
68
+ <subtitle>Blog URL's from the Root</subtitle>
69
+ <short_description>Remove the blog sub-directory from your integrated blog URLs.</short_description>
70
+ <depends><Fishpig_Wordpress /></depends>
71
+ </Fishpig_Wordpress_Addon_Root>
72
+ <Fishpig_Wordpress_Addon_IntegratedSearch>
73
+ <url><![CDATA[magento/wordpress-integration/integrated-search/]]></url>
74
+ <image>integrated-search.png</image>
75
+ <title>Integrated Search</title>
76
+ <subtitle>Magento and WordPress search</subtitle>
77
+ <short_description>Integrate your Magento and WordPress search systems automatically and make searching your site easier for your customers.</short_description>
78
+ <depends><Fishpig_Wordpress /></depends>
79
+ </Fishpig_Wordpress_Addon_IntegratedSearch>
80
+ </extend>
81
+ </fishpig>
82
+ </config>
app/code/community/Fishpig/IBanners/FPAdmin/template/large.phtml ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ *
4
+ */
5
+ ?>
6
+ <?php if ($extensions = $this->getSelectedExtensions()): ?>
7
+ <div id="<?php echo $this->getId() ?>">
8
+ <ul id="<?php echo $this->getId() ?>-list">
9
+ <?php foreach($extensions as $extension): ?>
10
+ <li class="item<?php if ($this->isLast($extension)): ?> last<?php endif; ?>">
11
+ <div class="pad">
12
+ <a href="<?php echo $this->getTrackedUrl($extension, $this->getModule(), 'image') ?>" class="image">
13
+ <img src="<?php echo $this->getImageUrl($extension) ?>" alt="<?php echo $this->escapeHtml($this->getTitle($extension)) ?>" />
14
+ </a>
15
+ <h2>
16
+ <a href="<?php echo $this->getTrackedUrl($extension, $this->getModule(), 'title') ?>">
17
+ <strong><?php echo $this->escapeHtml($this->getTitle($extension)) ?></strong>
18
+ <span><?php echo $this->escapeHtml($this->getSubTitle($extension)) ?></span>
19
+ </a>
20
+ </h2>
21
+ <p><?php echo $this->getShortDescription($extension) ?></p>
22
+ <div><a href="<?php echo $this->getTrackedUrl($extension, $this->getModule(), 'view-more') ?>"><?php echo $this->__('View Add-On') ?></a></div>
23
+ </div>
24
+ </li>
25
+ <?php endforeach; ?>
26
+ </ul>
27
+ </div>
28
+ <script type="text/javascript">$('<?php echo $this->getId() ?>').select('a').invoke('writeAttribute', 'target', '_blank');</script>
29
+ <style type="text/css">
30
+ #<?php echo $this->getId() ?> { max-width: 1600px; margin: 50px auto 0; }
31
+ #<?php echo $this->getId() ?> ul { /*height: 1%; overflow: hidden; */text-align: center; }
32
+ #<?php echo $this->getId() ?> li.item { display: inline-block; width: 24.5%; }
33
+ #<?php echo $this->getId() ?> li.item .pad { padding: 10% 8%; border-right: 1px solid #ccc; }
34
+ #<?php echo $this->getId() ?> li.item.last .pad { border-right: 0px none; }
35
+ #<?php echo $this->getId() ?> li.item .image { display: block; margin-bottom: 10px; }
36
+ #<?php echo $this->getId() ?> h2 a { color: #000; text-decoration: none; font-family: Tahoma, Verdana, Arial;, }
37
+ #<?php echo $this->getId() ?> h2 strong { display: block; text-transform: uppercase; line-height: 1em; }
38
+ #<?php echo $this->getId() ?> h2 span { font-size: 75%; font-family: Georgia, 'Times New Roman'; font-style: italic; }
39
+ #<?php echo $this->getId() ?> p { min-height: 80px; }
40
+ </style>
41
+ <?php endif; ?>
app/code/community/Fishpig/IBanners/FPAdmin/template/small.phtml ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ *
4
+ */
5
+ ?>
6
+ <?php if ($extensions = $this->getSelectedExtensions()): ?>
7
+ <div id="<?php echo $this->getId() ?>">
8
+ <ul>
9
+ <?php foreach($extensions as $extension): ?>
10
+ <li class="item<?php if ($this->isLast($extension)): ?> last<?php endif; ?>">
11
+ <div class="pad">
12
+ <a href="<?php echo $this->getTrackedUrl($extension, $this->getModule(), 'image') ?>" class="image">
13
+ <img src="<?php echo $this->getImageUrl($extension) ?>" alt="" />
14
+ </a>
15
+ <h2>
16
+ <a href="<?php echo $this->getTrackedUrl($extension, $this->getModule(), 'title') ?>">
17
+ <strong><?php echo $this->escapeHtml($this->getTitle($extension)) ?></strong> <span><?php echo $this->escapeHtml($this->getSubTitle($extension)) ?></span>
18
+ </a>
19
+ </h2>
20
+ <p><?php echo $this->getShortDescription($extension) ?> <a href="<?php echo $this->getTrackedUrl($extension, $this->getModule(), 'view-more') ?>">More info</a></p>
21
+ </div>
22
+ </li>
23
+ <?php endforeach; ?>
24
+ </ul>
25
+ </div>
26
+ <script type="text/javascript">decorateList($('<?php echo $this->getId() ?>').select('ul').first());</script>
27
+ <style type="text/css">
28
+ #<?php echo $this->getId() ?> { margin: 0; }
29
+ #<?php echo $this->getId() ?> ul { height: 1%; overflow: hidden; }
30
+ #<?php echo $this->getId() ?> li.item { margin: 0 0 10px; width: 50%; float: left; }
31
+ #<?php echo $this->getId() ?> li.item .pad {padding: 1%; height: 1%; overflow: hidden; border:1px solid #ddd; margin: 0 5px 0 0; }
32
+ #<?php echo $this->getId() ?> li.item.even .pad { margin: 0 0 0 5px; }
33
+ #<?php echo $this->getId() ?> a.image { float: left; display: block; margin-right: 10px; }
34
+ #<?php echo $this->getId() ?> a.image img { max-height: 60px; display: block; }
35
+ #<?php echo $this->getId() ?> h2 { font-size: 1.4em; font-family: Tahoma, Verdana, Arial; line-height: 1em; margin: 5px 0 2px; }
36
+ #<?php echo $this->getId() ?> h2 a { color: #000; text-decoration: none; }
37
+ #<?php echo $this->getId() ?> p { margin-bottom: 0; }
38
+ </style>
39
+ <?php endif; ?>
app/code/community/Fishpig/IBanners/controllers/Adminhtml/{BannerController.php → IBanners/BannerController.php} RENAMED
@@ -6,25 +6,18 @@
6
  * @author Ben Tideswell <help@fishpig.co.uk>
7
  */
8
 
9
- class Fishpig_iBanners_Adminhtml_BannerController extends Mage_Adminhtml_Controller_Action
10
  {
11
- public function indexAction()
12
- {
13
- $this->loadLayout();
14
- $this->_setActiveMenu('cms/ibanners');
15
- $this->renderLayout();
16
- }
17
-
18
  /**
19
- * Display the banner grid
20
  *
 
21
  */
22
- public function gridAction()
23
  {
24
- $this->getResponse()
25
- ->setBody($this->getLayout()->createBlock('ibanners/adminhtml_banner_grid')->toHtml());
26
  }
27
-
28
  /**
29
  * Forward to the edit action so the user can add a new banner
30
  *
@@ -40,20 +33,12 @@ class Fishpig_iBanners_Adminhtml_BannerController extends Mage_Adminhtml_Control
40
  */
41
  public function editAction()
42
  {
43
- $banner = $this->_initBannerModel();
44
  $this->loadLayout();
45
 
46
- if ($headBlock = $this->getLayout()->getBlock('head')) {
47
- $titles = array('iBanners by FishPig');
48
-
49
- if ($banner) {
50
- array_unshift($titles, $banner->getTitle());
51
- }
52
- else {
53
- array_unshift($titles, 'Create a Banner');
54
- }
55
 
56
- $headBlock->setTitle(implode(' - ', $titles));
 
57
  }
58
 
59
  $this->renderLayout();
@@ -91,7 +76,7 @@ class Fishpig_iBanners_Adminhtml_BannerController extends Mage_Adminhtml_Control
91
  $this->_getSession()->addError($this->__('There was no data to save'));
92
  }
93
 
94
- $this->_redirect('*/*');
95
  }
96
 
97
  /**
@@ -137,7 +122,7 @@ class Fishpig_iBanners_Adminhtml_BannerController extends Mage_Adminhtml_Control
137
  }
138
  }
139
 
140
- $this->_redirect('*/*');
141
  }
142
 
143
  /**
@@ -170,7 +155,7 @@ class Fishpig_iBanners_Adminhtml_BannerController extends Mage_Adminhtml_Control
170
  }
171
  }
172
 
173
- $this->_redirect('*/*');
174
  }
175
 
176
  /**
6
  * @author Ben Tideswell <help@fishpig.co.uk>
7
  */
8
 
9
+ class Fishpig_iBanners_Adminhtml_iBanners_BannerController extends Mage_Adminhtml_Controller_Action
10
  {
 
 
 
 
 
 
 
11
  /**
12
+ * Redirect to iBanners dashboard
13
  *
14
+ * @return $this
15
  */
16
+ public function indexAction()
17
  {
18
+ return $this->_redirect('*/ibanners');
 
19
  }
20
+
21
  /**
22
  * Forward to the edit action so the user can add a new banner
23
  *
33
  */
34
  public function editAction()
35
  {
 
36
  $this->loadLayout();
37
 
38
+ $this->_title('iBanners');
 
 
 
 
 
 
 
 
39
 
40
+ if ($banner = $this->_initBannerModel()) {
41
+ $this->_title($banner->getTitle());
42
  }
43
 
44
  $this->renderLayout();
76
  $this->_getSession()->addError($this->__('There was no data to save'));
77
  }
78
 
79
+ $this->_redirect('*/ibanners');
80
  }
81
 
82
  /**
122
  }
123
  }
124
 
125
+ $this->_redirect('*/ibanners');
126
  }
127
 
128
  /**
155
  }
156
  }
157
 
158
+ $this->_redirect('*/ibanners');
159
  }
160
 
161
  /**
app/code/community/Fishpig/IBanners/controllers/Adminhtml/{GroupController.php → IBanners/GroupController.php} RENAMED
@@ -6,23 +6,16 @@
6
  * @author Ben Tideswell <help@fishpig.co.uk>
7
  */
8
 
9
- class Fishpig_iBanners_Adminhtml_GroupController extends Mage_Adminhtml_Controller_Action
10
  {
11
- public function indexAction()
12
- {
13
- $this->loadLayout();
14
- $this->_setActiveMenu('cms/ibanners');
15
- $this->renderLayout();
16
- }
17
-
18
  /**
19
- * Display the group grid
20
  *
 
21
  */
22
- public function gridAction()
23
  {
24
- $this->getResponse()
25
- ->setBody($this->getLayout()->createBlock('ibanners/adminhtml_group_grid')->toHtml());
26
  }
27
 
28
  /**
6
  * @author Ben Tideswell <help@fishpig.co.uk>
7
  */
8
 
9
+ class Fishpig_iBanners_Adminhtml_iBanners_GroupController extends Mage_Adminhtml_Controller_Action
10
  {
 
 
 
 
 
 
 
11
  /**
12
+ * Redirect to iBanners dashboard
13
  *
14
+ * @return $this
15
  */
16
+ public function indexAction()
17
  {
18
+ return $this->_redirect('*/ibanners');
 
19
  }
20
 
21
  /**
app/code/community/Fishpig/IBanners/controllers/Adminhtml/IBannersController.php ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * @category Fishpig
4
+ * @package Fishpig_iBanners
5
+ * @license http://fishpig.co.uk/license.txt
6
+ * @author Ben Tideswell <help@fishpig.co.uk>
7
+ */
8
+
9
+ class Fishpig_iBanners_Adminhtml_iBannersController extends Mage_Adminhtml_Controller_Action
10
+ {
11
+ public function indexAction()
12
+ {
13
+ $this->loadLayout();
14
+ $this->_setActiveMenu('cms/ibanners');
15
+ $this->renderLayout();
16
+ }
17
+
18
+ /**
19
+ * Display the group grid
20
+ *
21
+ */
22
+ public function groupGridAction()
23
+ {
24
+ $this->getResponse()
25
+ ->setBody($this->getLayout()->createBlock('ibanners/adminhtml_group_grid')->toHtml());
26
+ }
27
+
28
+
29
+ /**
30
+ * Display the banner grid
31
+ *
32
+ */
33
+ public function pageGridAction()
34
+ {
35
+ $this->getResponse()
36
+ ->setBody($this->getLayout()->createBlock('ibanners/adminhtml_banner_grid')->toHtml());
37
+ }
38
+
39
+ /**
40
+ * Display the Extend tab
41
+ *
42
+ * @return void
43
+ */
44
+ public function extendAction()
45
+ {
46
+ $block = $this->getLayout()
47
+ ->createBlock('ibanners/adminhtml_extend')
48
+ ->setModule('Fishpig_iBanners')
49
+ ->setMedium('Add-On Tab')
50
+ ->setTemplate('large.phtml')
51
+ ->setLimit(4)
52
+ ->setPreferred(array('Fishpig_Wordpress', 'Fishpig_CrossLink', 'Fishpig_AttributeSplashPro', 'Fishpig_NoBots'));
53
+
54
+ $this->getResponse()
55
+ ->setBody(
56
+ $block->toHtml()
57
+ );
58
+ }
59
+ }
app/code/community/Fishpig/IBanners/etc/config.xml CHANGED
@@ -2,7 +2,7 @@
2
  <config>
3
  <modules>
4
  <Fishpig_iBanners>
5
- <version>1.1.0.1</version>
6
  </Fishpig_iBanners>
7
  </modules>
8
  <global>
@@ -65,13 +65,13 @@
65
  </frontend>
66
  <admin>
67
  <routers>
68
- <ibanners_admin>
69
- <use>admin</use>
70
  <args>
71
- <module>Fishpig_iBanners</module>
72
- <frontName>admin_ibanners</frontName>
 
73
  </args>
74
- </ibanners_admin>
75
  </routers>
76
  </admin>
77
  <adminhtml>
2
  <config>
3
  <modules>
4
  <Fishpig_iBanners>
5
+ <version>1.2.0.0</version>
6
  </Fishpig_iBanners>
7
  </modules>
8
  <global>
65
  </frontend>
66
  <admin>
67
  <routers>
68
+ <adminhtml>
 
69
  <args>
70
+ <modules>
71
+ <ibanners before="Mage_Adminhtml">Fishpig_iBanners_Adminhtml</ibanners>
72
+ </modules>
73
  </args>
74
+ </adminhtml>
75
  </routers>
76
  </admin>
77
  <adminhtml>
app/code/community/Fishpig/IBanners/notes.txt CHANGED
@@ -10,6 +10,9 @@
10
  TODO
11
  - Convert animation and control values to serialized single columns
12
 
 
 
 
13
  06/06/2013 - 1.1.0.1
14
  - Added fix for using HTTPS URL's
15
 
10
  TODO
11
  - Convert animation and control values to serialized single columns
12
 
13
+ 03/11/2013 - 1.2.0.0
14
+ - Added iBanners Dashboard
15
+
16
  06/06/2013 - 1.1.0.1
17
  - Added fix for using HTTPS URL's
18
 
app/design/adminhtml/default/default/layout/ibanners.xml CHANGED
@@ -10,16 +10,30 @@
10
  </reference>
11
  </ibanners_default>
12
 
13
- <ibanners_admin_adminhtml_group_index>
14
- <reference name="head">
15
- <action method="setTitle" translate="title" module="ibanners"><title>Manage Banner Groups - iBanners by Fishpig</title></action>
16
- </reference>
 
 
17
  <reference name="content">
18
- <block type="ibanners/adminhtml_group" name="groups" />
19
- </reference>
20
- </ibanners_admin_adminhtml_group_index>
21
-
22
- <ibanners_admin_adminhtml_group_edit>
 
 
 
 
 
 
 
 
 
 
 
 
23
  <update handle="ibanners_default" />
24
  <reference name="left">
25
  <block type="ibanners/adminhtml_group_edit_tabs" name="group.tabs" />
@@ -27,18 +41,8 @@
27
  <reference name="content">
28
  <block type="ibanners/adminhtml_group_edit" name="groups" />
29
  </reference>
30
- </ibanners_admin_adminhtml_group_edit>
31
-
32
- <ibanners_admin_adminhtml_banner_index>
33
- <reference name="head">
34
- <action method="setTitle" translate="title" module="ibanners"><title>Manage Banners - iBanners by Fishpig</title></action>
35
- </reference>
36
- <reference name="content">
37
- <block type="ibanners/adminhtml_banner" name="banner" />
38
- </reference>
39
- </ibanners_admin_adminhtml_banner_index>
40
-
41
- <ibanners_admin_adminhtml_banner_edit>
42
  <update handle="ibanners_default" />
43
  <reference name="left">
44
  <block type="ibanners/adminhtml_banner_edit_tabs" name="banners.tabs" />
@@ -46,6 +50,5 @@
46
  <reference name="content">
47
  <block type="ibanners/adminhtml_banner_edit" name="banners" />
48
  </reference>
49
- </ibanners_admin_adminhtml_banner_edit>
50
-
51
  </layout>
10
  </reference>
11
  </ibanners_default>
12
 
13
+ <!--
14
+ /**
15
+ * Splash Dashboard
16
+ */
17
+ -->
18
+ <adminhtml_ibanners_index>
19
  <reference name="content">
20
+ <block type="core/text" name="ibanners.dashboard.title">
21
+ <action method="setText">
22
+ <text><![CDATA[<div class="content-header"><h3>iBanners</h3></div>]]></text>
23
+ </action>
24
+ </block>
25
+ <block type="ibanners/adminhtml_dashboard" name="ibanners.dashboard" />
26
+ <block type="core/text" name="ibanners.tabs.content">
27
+ <action method="setText">
28
+ <text><![CDATA[
29
+ <div id="ibanners_tab_content"></div>
30
+ <style type="text/css">#ibanners_tab_content .content-header { display: none; }</style>
31
+ ]]></text>
32
+ </action>
33
+ </block>
34
+ </reference>
35
+ </adminhtml_ibanners_index>
36
+ <adminhtml_ibanners_group_edit>
37
  <update handle="ibanners_default" />
38
  <reference name="left">
39
  <block type="ibanners/adminhtml_group_edit_tabs" name="group.tabs" />
41
  <reference name="content">
42
  <block type="ibanners/adminhtml_group_edit" name="groups" />
43
  </reference>
44
+ </adminhtml_ibanners_group_edit>
45
+ <adminhtml_ibanners_banner_edit>
 
 
 
 
 
 
 
 
 
 
46
  <update handle="ibanners_default" />
47
  <reference name="left">
48
  <block type="ibanners/adminhtml_banner_edit_tabs" name="banners.tabs" />
50
  <reference name="content">
51
  <block type="ibanners/adminhtml_banner_edit" name="banners" />
52
  </reference>
53
+ </adminhtml_ibanners_banner_edit>
 
54
  </layout>
app/etc/modules/Fishpig_iBanners.xml CHANGED
@@ -5,5 +5,9 @@
5
  <active>true</active>
6
  <codePool>community</codePool>
7
  </Fishpig_iBanners>
 
 
 
 
8
  </modules>
9
  </config>
5
  <active>true</active>
6
  <codePool>community</codePool>
7
  </Fishpig_iBanners>
8
+ <Fishpig_iBanners_FPAdmin>
9
+ <active>true</active>
10
+ <codePool>community</codePool>
11
+ </Fishpig_iBanners_FPAdmin>
12
  </modules>
13
  </config>
package.xml CHANGED
@@ -1,18 +1,18 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Fishpigs_iBanners</name>
4
- <version>1.1.0.1</version>
5
  <stability>stable</stability>
6
  <license uri="http://fishpig.co.uk/license.txt">FishPig EULA</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Create multiple banner slideshows for your site.</summary>
10
  <description>Create multiple banner slideshows for your site.</description>
11
- <notes>Added fix for using HTTPS URL's</notes>
12
  <authors><author><name>fishpig</name><user>fishpig</user><email>ben@fishpig.co.uk</email></author></authors>
13
- <date>2013-06-06</date>
14
- <time>06:39:33</time>
15
- <contents><target name="magecommunity"><dir name="Fishpig"><dir name="IBanners"><dir name="Block"><dir name="Adminhtml"><dir name="Banner"><dir name="Edit"><file name="Form.php" hash="e9cd0d7436d36048706bc474704d2b82"/><dir name="Tab"><file name="Form.php" hash="a6ab04d3bb183e32935e3e285fbdabd5"/></dir><file name="Tabs.php" hash="60a82a390e8580594885bceb19a13460"/></dir><file name="Edit.php" hash="93807e5b677fd064e49c547551507202"/><file name="Grid.php" hash="59ca8a1c3822e37f1e82f464589f6525"/><dir name="Helper"><file name="Image.php" hash="da1821e82b38af686705efb53f5a1ca9"/></dir></dir><file name="Banner.php" hash="181c9778d624e104ab3f8e729c58b3f7"/><dir name="Form"><dir name="Renderer"><file name="Useconfig.php" hash="df579ff6a4a783ed17d6c5bc6118e171"/></dir></dir><dir name="Group"><dir name="Edit"><file name="Form.php" hash="5b8f4f8649e974f80ea21de7f323788e"/><dir name="Tab"><file name="Banners.php" hash="f13f72d714e73ba5481fe488b369c879"/><file name="Form.php" hash="67ab47bbe207e41b7542cddc15401590"/></dir><file name="Tabs.php" hash="d57a68d75dde73b39127dc8a932b858e"/></dir><file name="Edit.php" hash="1f3ca94777f0eb8a3363d245d9c5bc9d"/><file name="Grid.php" hash="2d86e326cb6825c8e7738e5c73abaf67"/></dir><file name="Group.php" hash="6a6ea8ad3f9e1e25dcf0411fa5347b9c"/></dir><file name="View.php" hash="5dd113d04a13f11f4d267916313dc473"/></dir><dir name="Helper"><file name="Data.php" hash="aeaa36a9c56477944b190b63442fc89d"/><file name="Image.php" hash="92a06beda3aefa58577dd91556001115"/></dir><dir name="Model"><file name="Banner.php" hash="eb4e6aa9c2ce9c849ebc773c88615456"/><file name="Group.php" hash="095c22eb1f93aafb57effca8709f5338"/><dir name="Mysql4"><dir name="Banner"><file name="Collection.php" hash="511a3aceff96f430a5fa44a3a7ff2b05"/></dir><file name="Banner.php" hash="81752a0ab34bde996d9472ac67272472"/><dir name="Group"><file name="Collection.php" hash="ab6a49e01708c118052a696a0e09184c"/></dir><file name="Group.php" hash="65169f143695653cafa08a3aeca28904"/></dir><dir name="System"><dir name="Config"><dir name="Source"><dir name="Carousel"><file name="Effect.php" hash="b615ef28aa59aed914dd95a0242cfc9e"/><file name="Transition.php" hash="290f6abe41d0d44f72f8188a77f8e475"/></dir><dir name="Controls"><file name="Position.php" hash="fe9d0c6845fd0fc28603baee7b053c32"/></dir></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="BannerController.php" hash="e0dcd98984c1d4d41d755410dfc2fcc0"/><file name="GroupController.php" hash="f388ecef8eef636305fdb1dd3f069815"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="3c83bfafc6ce3e5306ebae43dec8dccf"/><file name="config.xml" hash="6dad56df8813859494ce6c712f6feb46"/><file name="system.xml" hash="bacc23106d758a0c541ee1c1cadfd610"/></dir><file name="license.txt" hash="257eae92a36bdaaf9584fbf8ba76d1c6"/><file name="notes.txt" hash="8d297626ec6425d29606b645d661b4f3"/><dir name="sql"><dir name="ibanners_setup"><file name="mysql4-install-0.1.0.php" hash="62e4961272f2d697595002b006e72731"/><file name="mysql4-upgrade-0.5.2-0.5.3.php" hash="2e85887fb121d988357a45785d9f06df"/><file name="mysql4-upgrade-0.5.4-0.5.5.php" hash="a16fd4c674ed65eed1c7cee851960d28"/><file name="mysql4-upgrade-0.5.5-0.5.6.php" hash="a002305ec4b958c7213309d874b349f8"/><file name="mysql4-upgrade-0.9.0-0.9.1.php" hash="b970018526e15b6fc938b1866c5bfd81"/><file name="mysql4-upgrade-0.9.1-0.9.2.php" hash="07ba18c243e573655e43c64ee1a0d876"/><file name="mysql4-upgrade-1.0.4-1.0.5.php" hash="7f1cb0ec0dca8a5a4cd07ea3e9444cf7"/><file name="mysql4-upgrade-1.0.5-1.0.6.php" hash="2a430094f423b90adead0fcc6defc26e"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="ibanners.xml" hash="a2370cef3c8a48af13801a5844218fb7"/></dir><dir name="template"><dir name="ibanners"><file name="getcode.phtml" hash="79cd6c31a32d21071fa5c7645f629053"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="ibanners.xml" hash="a68d69986eef07a540f3313cee0a0e7d"/></dir><dir name="template"><dir name="ibanners"><file name="default.phtml" hash="677f081bb8e40f62771abec88aac857c"/></dir></dir></dir></dir></dir></target><target name="mageweb"><dir name="js"><dir name="fishpig"><file name="carousel.min.js" hash="cfd7a8d08a6dca87e4211a400877716e"/></dir></dir><dir name="app"><dir name="etc"><dir name="modules"><file name="Fishpig_iBanners.xml" hash="d3476db8a3f950a7bf249b5382b5c42e"/></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><file name="ibanners.css" hash="f39554b3dcdaad686da4093e59b4efef"/></dir><dir name="images"><dir name="ibanners"><file name="arrow-left.png" hash="a587a6ef8ed482ce83b468b2f8b90008"/><file name="arrow-right.png" hash="001286015205ecf53766877a1d92a784"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><file name="ibanners.css" hash="328b9e66068670364e620f6e5b194ce5"/></dir></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
18
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Fishpigs_iBanners</name>
4
+ <version>1.2.0.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://fishpig.co.uk/license.txt">FishPig EULA</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Create multiple banner slideshows for your site.</summary>
10
  <description>Create multiple banner slideshows for your site.</description>
11
+ <notes>Added iBanners Dashboard</notes>
12
  <authors><author><name>fishpig</name><user>fishpig</user><email>ben@fishpig.co.uk</email></author></authors>
13
+ <date>2013-12-03</date>
14
+ <time>00:03:13</time>
15
+ <contents><target name="magecommunity"><dir name="Fishpig"><dir name="IBanners"><dir name="Block"><dir name="Adminhtml"><dir name="Banner"><dir name="Edit"><file name="Form.php" hash="e9cd0d7436d36048706bc474704d2b82"/><dir name="Tab"><file name="Form.php" hash="a6ab04d3bb183e32935e3e285fbdabd5"/></dir><file name="Tabs.php" hash="60a82a390e8580594885bceb19a13460"/></dir><file name="Edit.php" hash="93807e5b677fd064e49c547551507202"/><file name="Grid.php" hash="a185b374d5ca92dcb25ecd819225bcb5"/><dir name="Helper"><file name="Image.php" hash="da1821e82b38af686705efb53f5a1ca9"/></dir></dir><file name="Banner.php" hash="181c9778d624e104ab3f8e729c58b3f7"/><file name="Dashboard.php" hash="e4e5bfd422325aeb4810022e72dbb61c"/><file name="Extend.php" hash="065897186d7dd97b354cdd4863b75b1d"/><dir name="Form"><dir name="Renderer"><file name="Useconfig.php" hash="df579ff6a4a783ed17d6c5bc6118e171"/></dir></dir><dir name="Group"><dir name="Edit"><file name="Form.php" hash="5b8f4f8649e974f80ea21de7f323788e"/><dir name="Tab"><file name="Banners.php" hash="f13f72d714e73ba5481fe488b369c879"/><file name="Form.php" hash="67ab47bbe207e41b7542cddc15401590"/></dir><file name="Tabs.php" hash="d57a68d75dde73b39127dc8a932b858e"/></dir><file name="Edit.php" hash="1f3ca94777f0eb8a3363d245d9c5bc9d"/><file name="Grid.php" hash="9885837fd12a601788d2c88d965c951c"/></dir><file name="Group.php" hash="6a6ea8ad3f9e1e25dcf0411fa5347b9c"/></dir><file name="View.php" hash="5dd113d04a13f11f4d267916313dc473"/></dir><dir name="FPAdmin"><dir name="Block"><dir name="Adminhtml"><file name="Extend.php" hash="4a7a39a3c67d748504d9c3212826ed66"/></dir></dir><dir name="etc"><file name="config.xml" hash="377c978402a18ddbb47798a4382da615"/></dir><dir name="template"><file name="large.phtml" hash="408bf6dee734f54f703e33b473d97e66"/><file name="small.phtml" hash="eb6d9ea686849dce4f81a997d0f56f26"/></dir></dir><dir name="Helper"><file name="Data.php" hash="aeaa36a9c56477944b190b63442fc89d"/><file name="Image.php" hash="92a06beda3aefa58577dd91556001115"/></dir><dir name="Model"><file name="Banner.php" hash="eb4e6aa9c2ce9c849ebc773c88615456"/><file name="Group.php" hash="095c22eb1f93aafb57effca8709f5338"/><dir name="Mysql4"><dir name="Banner"><file name="Collection.php" hash="511a3aceff96f430a5fa44a3a7ff2b05"/></dir><file name="Banner.php" hash="81752a0ab34bde996d9472ac67272472"/><dir name="Group"><file name="Collection.php" hash="ab6a49e01708c118052a696a0e09184c"/></dir><file name="Group.php" hash="65169f143695653cafa08a3aeca28904"/></dir><dir name="System"><dir name="Config"><dir name="Source"><dir name="Carousel"><file name="Effect.php" hash="b615ef28aa59aed914dd95a0242cfc9e"/><file name="Transition.php" hash="290f6abe41d0d44f72f8188a77f8e475"/></dir><dir name="Controls"><file name="Position.php" hash="fe9d0c6845fd0fc28603baee7b053c32"/></dir></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><dir name="IBanners"><file name="BannerController.php" hash="032a8d6e6e8e135b8ef8afedfe21b515"/><file name="GroupController.php" hash="4113ca253fe3b7efc4a7b12b6e2948f7"/></dir><file name="IBannersController.php" hash="4a7d2c45268fa215c0c3ade49d79bf5f"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="3c83bfafc6ce3e5306ebae43dec8dccf"/><file name="config.xml" hash="9b2e7e0c52d256034e03681cae037718"/><file name="system.xml" hash="bacc23106d758a0c541ee1c1cadfd610"/></dir><file name="license.txt" hash="257eae92a36bdaaf9584fbf8ba76d1c6"/><file name="notes.txt" hash="1bcbdf436429d24ec9f00e611371b08b"/><dir name="sql"><dir name="ibanners_setup"><file name="mysql4-install-0.1.0.php" hash="62e4961272f2d697595002b006e72731"/><file name="mysql4-upgrade-0.5.2-0.5.3.php" hash="2e85887fb121d988357a45785d9f06df"/><file name="mysql4-upgrade-0.5.4-0.5.5.php" hash="a16fd4c674ed65eed1c7cee851960d28"/><file name="mysql4-upgrade-0.5.5-0.5.6.php" hash="a002305ec4b958c7213309d874b349f8"/><file name="mysql4-upgrade-0.9.0-0.9.1.php" hash="b970018526e15b6fc938b1866c5bfd81"/><file name="mysql4-upgrade-0.9.1-0.9.2.php" hash="07ba18c243e573655e43c64ee1a0d876"/><file name="mysql4-upgrade-1.0.4-1.0.5.php" hash="7f1cb0ec0dca8a5a4cd07ea3e9444cf7"/><file name="mysql4-upgrade-1.0.5-1.0.6.php" hash="2a430094f423b90adead0fcc6defc26e"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="ibanners.xml" hash="b3cd1dc6344cf0adc310c90234b89309"/></dir><dir name="template"><dir name="ibanners"><file name="getcode.phtml" hash="79cd6c31a32d21071fa5c7645f629053"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="ibanners.xml" hash="a68d69986eef07a540f3313cee0a0e7d"/></dir><dir name="template"><dir name="ibanners"><file name="default.phtml" hash="677f081bb8e40f62771abec88aac857c"/></dir></dir></dir></dir></dir></target><target name="mageweb"><dir name="js"><dir name="fishpig"><file name="carousel.min.js" hash="cfd7a8d08a6dca87e4211a400877716e"/></dir></dir><dir name="app"><dir name="etc"><dir name="modules"><file name="Fishpig_iBanners.xml" hash="0b9289cca030da9b13e84ab183f18892"/></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><file name="ibanners.css" hash="f39554b3dcdaad686da4093e59b4efef"/></dir><dir name="images"><dir name="ibanners"><file name="arrow-left.png" hash="a587a6ef8ed482ce83b468b2f8b90008"/><file name="arrow-right.png" hash="001286015205ecf53766877a1d92a784"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><file name="ibanners.css" hash="328b9e66068670364e620f6e5b194ce5"/></dir></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
18
  </package>