image_gallery - Version 1.1.0

Version Notes

image gallery on cms page

Download this release

Release Info

Developer mukesh kumar saini
Extension image_gallery
Version 1.1.0
Comparing to
See all releases


Version 1.1.0

Files changed (30) hide show
  1. app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery.php +12 -0
  2. app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery/Edit.php +45 -0
  3. app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery/Edit/Form.php +19 -0
  4. app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery/Edit/Tab/Form.php +58 -0
  5. app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery/Edit/Tabs.php +24 -0
  6. app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery/Grid.php +116 -0
  7. app/code/local/Manv/Imagegallery/Block/Imagegallery.php +17 -0
  8. app/code/local/Manv/Imagegallery/Helper/Data.php +6 -0
  9. app/code/local/Manv/Imagegallery/Model/Imagegallery.php +10 -0
  10. app/code/local/Manv/Imagegallery/Model/Mysql4/Imagegallery.php +10 -0
  11. app/code/local/Manv/Imagegallery/Model/Mysql4/Imagegallery/Collection.php +10 -0
  12. app/code/local/Manv/Imagegallery/Model/Status.php +15 -0
  13. app/code/local/Manv/Imagegallery/controllers/Adminhtml/ImagegalleryController.php +214 -0
  14. app/code/local/Manv/Imagegallery/controllers/IndexController.php +47 -0
  15. app/code/local/Manv/Imagegallery/etc/config.xml +128 -0
  16. app/code/local/Manv/Imagegallery/sql/imagegallery_setup/mysql4-install-0.1.0.php +23 -0
  17. app/design/adminhtml/default/default/layout/imagegallery.xml +8 -0
  18. app/design/frontend/default/default/layout/imagegallery.xml +10 -0
  19. app/design/frontend/default/default/template/imagegallery/16.11.2013.test.phtml +123 -0
  20. app/design/frontend/default/default/template/imagegallery/16.12.2013.imagegallery.phtml +105 -0
  21. app/design/frontend/default/default/template/imagegallery/17.12.2013.test.phtml +187 -0
  22. app/design/frontend/default/default/template/imagegallery/copy of imagegallery.phtml +65 -0
  23. app/design/frontend/default/default/template/imagegallery/imagegallery.phtml +105 -0
  24. app/design/frontend/default/default/template/imagegallery/ok test.phtml +193 -0
  25. app/design/frontend/default/default/template/imagegallery/test.phtml +197 -0
  26. app/etc/modules/Manv_Imagegallery.xml +17 -0
  27. package.xml +18 -0
  28. skin/frontend/default/default/images/imagegallery_images/close.png +0 -0
  29. skin/frontend/default/default/images/imagegallery_images/left_1.png +0 -0
  30. skin/frontend/default/default/images/imagegallery_images/right_1.png +0 -0
app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery.php ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Manv_Imagegallery_Block_Adminhtml_Imagegallery extends Mage_Adminhtml_Block_Widget_Grid_Container
3
+ {
4
+ public function __construct()
5
+ {
6
+ $this->_controller = 'adminhtml_imagegallery';
7
+ $this->_blockGroup = 'imagegallery';
8
+ $this->_headerText = Mage::helper('imagegallery')->__('Item Manager');
9
+ $this->_addButtonLabel = Mage::helper('imagegallery')->__('Add Item');
10
+ parent::__construct();
11
+ }
12
+ }
app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery/Edit.php ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Block_Adminhtml_Imagegallery_Edit extends Mage_Adminhtml_Block_Widget_Form_Container
4
+ {
5
+ public function __construct()
6
+ {
7
+ parent::__construct();
8
+
9
+ $this->_objectId = 'id';
10
+ $this->_blockGroup = 'imagegallery';
11
+ $this->_controller = 'adminhtml_imagegallery';
12
+
13
+ $this->_updateButton('save', 'label', Mage::helper('imagegallery')->__('Save Item'));
14
+ $this->_updateButton('delete', 'label', Mage::helper('imagegallery')->__('Delete Item'));
15
+
16
+ $this->_addButton('saveandcontinue', array(
17
+ 'label' => Mage::helper('adminhtml')->__('Save And Continue Edit'),
18
+ 'onclick' => 'saveAndContinueEdit()',
19
+ 'class' => 'save',
20
+ ), -100);
21
+
22
+ $this->_formScripts[] = "
23
+ function toggleEditor() {
24
+ if (tinyMCE.getInstanceById('imagegallery_content') == null) {
25
+ tinyMCE.execCommand('mceAddControl', false, 'imagegallery_content');
26
+ } else {
27
+ tinyMCE.execCommand('mceRemoveControl', false, 'imagegallery_content');
28
+ }
29
+ }
30
+
31
+ function saveAndContinueEdit(){
32
+ editForm.submit($('edit_form').action+'back/edit/');
33
+ }
34
+ ";
35
+ }
36
+
37
+ public function getHeaderText()
38
+ {
39
+ if( Mage::registry('imagegallery_data') && Mage::registry('imagegallery_data')->getId() ) {
40
+ return Mage::helper('imagegallery')->__("Edit Item '%s'", $this->htmlEscape(Mage::registry('imagegallery_data')->getTitle()));
41
+ } else {
42
+ return Mage::helper('imagegallery')->__('Add Item');
43
+ }
44
+ }
45
+ }
app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery/Edit/Form.php ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Block_Adminhtml_Imagegallery_Edit_Form extends Mage_Adminhtml_Block_Widget_Form
4
+ {
5
+ protected function _prepareForm()
6
+ {
7
+ $form = new Varien_Data_Form(array(
8
+ 'id' => 'edit_form',
9
+ 'action' => $this->getUrl('*/*/save', array('id' => $this->getRequest()->getParam('id'))),
10
+ 'method' => 'post',
11
+ 'enctype' => 'multipart/form-data'
12
+ )
13
+ );
14
+
15
+ $form->setUseContainer(true);
16
+ $this->setForm($form);
17
+ return parent::_prepareForm();
18
+ }
19
+ }
app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery/Edit/Tab/Form.php ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Block_Adminhtml_Imagegallery_Edit_Tab_Form extends Mage_Adminhtml_Block_Widget_Form
4
+ {
5
+ protected function _prepareForm()
6
+ {
7
+ $form = new Varien_Data_Form();
8
+ $this->setForm($form);
9
+ $fieldset = $form->addFieldset('imagegallery_form', array('legend'=>Mage::helper('imagegallery')->__('Item information')));
10
+
11
+ $fieldset->addField('title', 'text', array(
12
+ 'label' => Mage::helper('imagegallery')->__('Title'),
13
+ 'class' => 'required-entry',
14
+ 'required' => true,
15
+ 'name' => 'title',
16
+ ));
17
+
18
+ $fieldset->addField('filename', 'file', array(
19
+ 'label' => Mage::helper('imagegallery')->__('File'),
20
+ 'required' => false,
21
+ 'name' => 'filename',
22
+ ));
23
+
24
+ $fieldset->addField('status', 'select', array(
25
+ 'label' => Mage::helper('imagegallery')->__('Status'),
26
+ 'name' => 'status',
27
+ 'values' => array(
28
+ array(
29
+ 'value' => 1,
30
+ 'label' => Mage::helper('imagegallery')->__('Enabled'),
31
+ ),
32
+
33
+ array(
34
+ 'value' => 2,
35
+ 'label' => Mage::helper('imagegallery')->__('Disabled'),
36
+ ),
37
+ ),
38
+ ));
39
+
40
+ $fieldset->addField('content', 'editor', array(
41
+ 'name' => 'content',
42
+ 'label' => Mage::helper('imagegallery')->__('Content'),
43
+ 'title' => Mage::helper('imagegallery')->__('Content'),
44
+ 'style' => 'width:700px; height:500px;',
45
+ 'wysiwyg' => false,
46
+ 'required' => true,
47
+ ));
48
+
49
+ if ( Mage::getSingleton('adminhtml/session')->getImagegalleryData() )
50
+ {
51
+ $form->setValues(Mage::getSingleton('adminhtml/session')->getImagegalleryData());
52
+ Mage::getSingleton('adminhtml/session')->setImagegalleryData(null);
53
+ } elseif ( Mage::registry('imagegallery_data') ) {
54
+ $form->setValues(Mage::registry('imagegallery_data')->getData());
55
+ }
56
+ return parent::_prepareForm();
57
+ }
58
+ }
app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery/Edit/Tabs.php ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Block_Adminhtml_Imagegallery_Edit_Tabs extends Mage_Adminhtml_Block_Widget_Tabs
4
+ {
5
+
6
+ public function __construct()
7
+ {
8
+ parent::__construct();
9
+ $this->setId('imagegallery_tabs');
10
+ $this->setDestElementId('edit_form');
11
+ $this->setTitle(Mage::helper('imagegallery')->__('Item Information'));
12
+ }
13
+
14
+ protected function _beforeToHtml()
15
+ {
16
+ $this->addTab('form_section', array(
17
+ 'label' => Mage::helper('imagegallery')->__('Item Information'),
18
+ 'title' => Mage::helper('imagegallery')->__('Item Information'),
19
+ 'content' => $this->getLayout()->createBlock('imagegallery/adminhtml_imagegallery_edit_tab_form')->toHtml(),
20
+ ));
21
+
22
+ return parent::_beforeToHtml();
23
+ }
24
+ }
app/code/local/Manv/Imagegallery/Block/Adminhtml/Imagegallery/Grid.php ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Block_Adminhtml_Imagegallery_Grid extends Mage_Adminhtml_Block_Widget_Grid
4
+ {
5
+ public function __construct()
6
+ {
7
+ parent::__construct();
8
+ $this->setId('imagegalleryGrid');
9
+ $this->setDefaultSort('imagegallery_id');
10
+ $this->setDefaultDir('ASC');
11
+ $this->setSaveParametersInSession(true);
12
+ }
13
+
14
+ protected function _prepareCollection()
15
+ {
16
+ $collection = Mage::getModel('imagegallery/imagegallery')->getCollection();
17
+ $this->setCollection($collection);
18
+ return parent::_prepareCollection();
19
+ }
20
+
21
+ protected function _prepareColumns()
22
+ {
23
+ $this->addColumn('imagegallery_id', array(
24
+ 'header' => Mage::helper('imagegallery')->__('ID'),
25
+ 'align' =>'right',
26
+ 'width' => '50px',
27
+ 'index' => 'imagegallery_id',
28
+ ));
29
+
30
+ $this->addColumn('title', array(
31
+ 'header' => Mage::helper('imagegallery')->__('Title'),
32
+ 'align' =>'left',
33
+ 'index' => 'title',
34
+ ));
35
+
36
+ /*
37
+ $this->addColumn('content', array(
38
+ 'header' => Mage::helper('imagegallery')->__('Item Content'),
39
+ 'width' => '150px',
40
+ 'index' => 'content',
41
+ ));
42
+ */
43
+
44
+ $this->addColumn('status', array(
45
+ 'header' => Mage::helper('imagegallery')->__('Status'),
46
+ 'align' => 'left',
47
+ 'width' => '80px',
48
+ 'index' => 'status',
49
+ 'type' => 'options',
50
+ 'options' => array(
51
+ 1 => 'Enabled',
52
+ 2 => 'Disabled',
53
+ ),
54
+ ));
55
+
56
+ $this->addColumn('action',
57
+ array(
58
+ 'header' => Mage::helper('imagegallery')->__('Action'),
59
+ 'width' => '100',
60
+ 'type' => 'action',
61
+ 'getter' => 'getId',
62
+ 'actions' => array(
63
+ array(
64
+ 'caption' => Mage::helper('imagegallery')->__('Edit'),
65
+ 'url' => array('base'=> '*/*/edit'),
66
+ 'field' => 'id'
67
+ )
68
+ ),
69
+ 'filter' => false,
70
+ 'sortable' => false,
71
+ 'index' => 'stores',
72
+ 'is_system' => true,
73
+ ));
74
+
75
+ $this->addExportType('*/*/exportCsv', Mage::helper('imagegallery')->__('CSV'));
76
+ $this->addExportType('*/*/exportXml', Mage::helper('imagegallery')->__('XML'));
77
+
78
+ return parent::_prepareColumns();
79
+ }
80
+
81
+ protected function _prepareMassaction()
82
+ {
83
+ $this->setMassactionIdField('imagegallery_id');
84
+ $this->getMassactionBlock()->setFormFieldName('imagegallery');
85
+
86
+ $this->getMassactionBlock()->addItem('delete', array(
87
+ 'label' => Mage::helper('imagegallery')->__('Delete'),
88
+ 'url' => $this->getUrl('*/*/massDelete'),
89
+ 'confirm' => Mage::helper('imagegallery')->__('Are you sure?')
90
+ ));
91
+
92
+ $statuses = Mage::getSingleton('imagegallery/status')->getOptionArray();
93
+
94
+ array_unshift($statuses, array('label'=>'', 'value'=>''));
95
+ $this->getMassactionBlock()->addItem('status', array(
96
+ 'label'=> Mage::helper('imagegallery')->__('Change status'),
97
+ 'url' => $this->getUrl('*/*/massStatus', array('_current'=>true)),
98
+ 'additional' => array(
99
+ 'visibility' => array(
100
+ 'name' => 'status',
101
+ 'type' => 'select',
102
+ 'class' => 'required-entry',
103
+ 'label' => Mage::helper('imagegallery')->__('Status'),
104
+ 'values' => $statuses
105
+ )
106
+ )
107
+ ));
108
+ return $this;
109
+ }
110
+
111
+ public function getRowUrl($row)
112
+ {
113
+ return $this->getUrl('*/*/edit', array('id' => $row->getId()));
114
+ }
115
+
116
+ }
app/code/local/Manv/Imagegallery/Block/Imagegallery.php ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Manv_Imagegallery_Block_Imagegallery extends Mage_Core_Block_Template
3
+ {
4
+ public function _prepareLayout()
5
+ {
6
+ return parent::_prepareLayout();
7
+ }
8
+
9
+ public function getImagegallery()
10
+ {
11
+ if (!$this->hasData('imagegallery')) {
12
+ $this->setData('imagegallery', Mage::registry('imagegallery'));
13
+ }
14
+ return $this->getData('imagegallery');
15
+
16
+ }
17
+ }
app/code/local/Manv/Imagegallery/Helper/Data.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Helper_Data extends Mage_Core_Helper_Abstract
4
+ {
5
+
6
+ }
app/code/local/Manv/Imagegallery/Model/Imagegallery.php ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Model_Imagegallery extends Mage_Core_Model_Abstract
4
+ {
5
+ public function _construct()
6
+ {
7
+ parent::_construct();
8
+ $this->_init('imagegallery/imagegallery');
9
+ }
10
+ }
app/code/local/Manv/Imagegallery/Model/Mysql4/Imagegallery.php ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Model_Mysql4_Imagegallery extends Mage_Core_Model_Mysql4_Abstract
4
+ {
5
+ public function _construct()
6
+ {
7
+ // Note that the imagegallery_id refers to the key field in your database table.
8
+ $this->_init('imagegallery/imagegallery', 'imagegallery_id');
9
+ }
10
+ }
app/code/local/Manv/Imagegallery/Model/Mysql4/Imagegallery/Collection.php ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Model_Mysql4_Imagegallery_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
4
+ {
5
+ public function _construct()
6
+ {
7
+ parent::_construct();
8
+ $this->_init('imagegallery/imagegallery');
9
+ }
10
+ }
app/code/local/Manv/Imagegallery/Model/Status.php ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Model_Status extends Varien_Object
4
+ {
5
+ const STATUS_ENABLED = 1;
6
+ const STATUS_DISABLED = 2;
7
+
8
+ static public function getOptionArray()
9
+ {
10
+ return array(
11
+ self::STATUS_ENABLED => Mage::helper('imagegallery')->__('Enabled'),
12
+ self::STATUS_DISABLED => Mage::helper('imagegallery')->__('Disabled')
13
+ );
14
+ }
15
+ }
app/code/local/Manv/Imagegallery/controllers/Adminhtml/ImagegalleryController.php ADDED
@@ -0,0 +1,214 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Manv_Imagegallery_Adminhtml_ImagegalleryController extends Mage_Adminhtml_Controller_action
4
+ {
5
+
6
+ protected function _initAction() {
7
+ $this->loadLayout()
8
+ ->_setActiveMenu('imagegallery/items')
9
+ ->_addBreadcrumb(Mage::helper('adminhtml')->__('Items Manager'), Mage::helper('adminhtml')->__('Item Manager'));
10
+
11
+ return $this;
12
+ }
13
+
14
+ public function indexAction() {
15
+ $this->_initAction()
16
+ ->renderLayout();
17
+ }
18
+
19
+ public function editAction() {
20
+ $id = $this->getRequest()->getParam('id');
21
+ $model = Mage::getModel('imagegallery/imagegallery')->load($id);
22
+
23
+ if ($model->getId() || $id == 0) {
24
+ $data = Mage::getSingleton('adminhtml/session')->getFormData(true);
25
+ if (!empty($data)) {
26
+ $model->setData($data);
27
+ }
28
+
29
+ Mage::register('imagegallery_data', $model);
30
+
31
+ $this->loadLayout();
32
+ $this->_setActiveMenu('imagegallery/items');
33
+
34
+ $this->_addBreadcrumb(Mage::helper('adminhtml')->__('Item Manager'), Mage::helper('adminhtml')->__('Item Manager'));
35
+ $this->_addBreadcrumb(Mage::helper('adminhtml')->__('Item News'), Mage::helper('adminhtml')->__('Item News'));
36
+
37
+ $this->getLayout()->getBlock('head')->setCanLoadExtJs(true);
38
+
39
+ $this->_addContent($this->getLayout()->createBlock('imagegallery/adminhtml_imagegallery_edit'))
40
+ ->_addLeft($this->getLayout()->createBlock('imagegallery/adminhtml_imagegallery_edit_tabs'));
41
+
42
+ $this->renderLayout();
43
+ } else {
44
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('imagegallery')->__('Item does not exist'));
45
+ $this->_redirect('*/*/');
46
+ }
47
+ }
48
+
49
+ public function newAction() {
50
+ $this->_forward('edit');
51
+ }
52
+
53
+ public function saveAction() {
54
+ if ($data = $this->getRequest()->getPost()) {
55
+
56
+ if(isset($_FILES['filename']['name']) && $_FILES['filename']['name'] != '') {
57
+ try {
58
+ /* Starting upload */
59
+ $uploader = new Varien_File_Uploader('filename');
60
+
61
+ // Any extention would work
62
+ $uploader->setAllowedExtensions(array('jpg','jpeg','gif','png'));
63
+ $uploader->setAllowRenameFiles(false);
64
+
65
+ // Set the file upload mode
66
+ // false -> get the file directly in the specified folder
67
+ // true -> get the file in the product like folders
68
+ // (file.jpg will go in something like /media/f/i/file.jpg)
69
+ $uploader->setFilesDispersion(false);
70
+
71
+ // We set media as the upload dir
72
+ $path = Mage::getBaseDir('media') . DS ;
73
+ $uploader->save($path, $_FILES['filename']['name'] );
74
+
75
+ } catch (Exception $e) {
76
+
77
+ }
78
+
79
+ //this way the name is saved in DB
80
+ $data['filename'] = $_FILES['filename']['name'];
81
+ }
82
+
83
+
84
+ $model = Mage::getModel('imagegallery/imagegallery');
85
+ $model->setData($data)
86
+ ->setId($this->getRequest()->getParam('id'));
87
+
88
+ try {
89
+ if ($model->getCreatedTime == NULL || $model->getUpdateTime() == NULL) {
90
+ $model->setCreatedTime(now())
91
+ ->setUpdateTime(now());
92
+ } else {
93
+ $model->setUpdateTime(now());
94
+ }
95
+
96
+ $model->save();
97
+ Mage::getSingleton('adminhtml/session')->addSuccess(Mage::helper('imagegallery')->__('Item was successfully saved'));
98
+ Mage::getSingleton('adminhtml/session')->setFormData(false);
99
+
100
+ if ($this->getRequest()->getParam('back')) {
101
+ $this->_redirect('*/*/edit', array('id' => $model->getId()));
102
+ return;
103
+ }
104
+ $this->_redirect('*/*/');
105
+ return;
106
+ } catch (Exception $e) {
107
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
108
+ Mage::getSingleton('adminhtml/session')->setFormData($data);
109
+ $this->_redirect('*/*/edit', array('id' => $this->getRequest()->getParam('id')));
110
+ return;
111
+ }
112
+ }
113
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('imagegallery')->__('Unable to find item to save'));
114
+ $this->_redirect('*/*/');
115
+ }
116
+
117
+ public function deleteAction() {
118
+ if( $this->getRequest()->getParam('id') > 0 ) {
119
+ try {
120
+ $model = Mage::getModel('imagegallery/imagegallery');
121
+
122
+ $model->setId($this->getRequest()->getParam('id'))
123
+ ->delete();
124
+
125
+ Mage::getSingleton('adminhtml/session')->addSuccess(Mage::helper('adminhtml')->__('Item was successfully deleted'));
126
+ $this->_redirect('*/*/');
127
+ } catch (Exception $e) {
128
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
129
+ $this->_redirect('*/*/edit', array('id' => $this->getRequest()->getParam('id')));
130
+ }
131
+ }
132
+ $this->_redirect('*/*/');
133
+ }
134
+
135
+ public function massDeleteAction() {
136
+ $imagegalleryIds = $this->getRequest()->getParam('imagegallery');
137
+ if(!is_array($imagegalleryIds)) {
138
+ Mage::getSingleton('adminhtml/session')->addError(Mage::helper('adminhtml')->__('Please select item(s)'));
139
+ } else {
140
+ try {
141
+ foreach ($imagegalleryIds as $imagegalleryId) {
142
+ $imagegallery = Mage::getModel('imagegallery/imagegallery')->load($imagegalleryId);
143
+ $imagegallery->delete();
144
+ }
145
+ Mage::getSingleton('adminhtml/session')->addSuccess(
146
+ Mage::helper('adminhtml')->__(
147
+ 'Total of %d record(s) were successfully deleted', count($imagegalleryIds)
148
+ )
149
+ );
150
+ } catch (Exception $e) {
151
+ Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
152
+ }
153
+ }
154
+ $this->_redirect('*/*/index');
155
+ }
156
+
157
+ public function massStatusAction()
158
+ {
159
+ $imagegalleryIds = $this->getRequest()->getParam('imagegallery');
160
+ if(!is_array($imagegalleryIds)) {
161
+ Mage::getSingleton('adminhtml/session')->addError($this->__('Please select item(s)'));
162
+ } else {
163
+ try {
164
+ foreach ($imagegalleryIds as $imagegalleryId) {
165
+ $imagegallery = Mage::getSingleton('imagegallery/imagegallery')
166
+ ->load($imagegalleryId)
167
+ ->setStatus($this->getRequest()->getParam('status'))
168
+ ->setIsMassupdate(true)
169
+ ->save();
170
+ }
171
+ $this->_getSession()->addSuccess(
172
+ $this->__('Total of %d record(s) were successfully updated', count($imagegalleryIds))
173
+ );
174
+ } catch (Exception $e) {
175
+ $this->_getSession()->addError($e->getMessage());
176
+ }
177
+ }
178
+ $this->_redirect('*/*/index');
179
+ }
180
+
181
+ public function exportCsvAction()
182
+ {
183
+ $fileName = 'imagegallery.csv';
184
+ $content = $this->getLayout()->createBlock('imagegallery/adminhtml_imagegallery_grid')
185
+ ->getCsv();
186
+
187
+ $this->_sendUploadResponse($fileName, $content);
188
+ }
189
+
190
+ public function exportXmlAction()
191
+ {
192
+ $fileName = 'imagegallery.xml';
193
+ $content = $this->getLayout()->createBlock('imagegallery/adminhtml_imagegallery_grid')
194
+ ->getXml();
195
+
196
+ $this->_sendUploadResponse($fileName, $content);
197
+ }
198
+
199
+ protected function _sendUploadResponse($fileName, $content, $contentType='application/octet-stream')
200
+ {
201
+ $response = $this->getResponse();
202
+ $response->setHeader('HTTP/1.1 200 OK','');
203
+ $response->setHeader('Pragma', 'public', true);
204
+ $response->setHeader('Cache-Control', 'must-revalidate, post-check=0, pre-check=0', true);
205
+ $response->setHeader('Content-Disposition', 'attachment; filename='.$fileName);
206
+ $response->setHeader('Last-Modified', date('r'));
207
+ $response->setHeader('Accept-Ranges', 'bytes');
208
+ $response->setHeader('Content-Length', strlen($content));
209
+ $response->setHeader('Content-type', $contentType);
210
+ $response->setBody($content);
211
+ $response->sendResponse();
212
+ die;
213
+ }
214
+ }
app/code/local/Manv/Imagegallery/controllers/IndexController.php ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ class Manv_Imagegallery_IndexController extends Mage_Core_Controller_Front_Action
3
+ {
4
+ public function indexAction()
5
+ {
6
+
7
+ /*
8
+ * Load an object by id
9
+ * Request looking like:
10
+ * http://site.com/imagegallery?id=15
11
+ * or
12
+ * http://site.com/imagegallery/id/15
13
+ */
14
+ /*
15
+ $imagegallery_id = $this->getRequest()->getParam('id');
16
+
17
+ if($imagegallery_id != null && $imagegallery_id != '') {
18
+ $imagegallery = Mage::getModel('imagegallery/imagegallery')->load($imagegallery_id)->getData();
19
+ } else {
20
+ $imagegallery = null;
21
+ }
22
+ */
23
+
24
+ /*
25
+ * If no param we load a the last created item
26
+ */
27
+ /*
28
+ if($imagegallery == null) {
29
+ $resource = Mage::getSingleton('core/resource');
30
+ $read= $resource->getConnection('core_read');
31
+ $imagegalleryTable = $resource->getTableName('imagegallery');
32
+
33
+ $select = $read->select()
34
+ ->from($imagegalleryTable,array('imagegallery_id','title','content','status'))
35
+ ->where('status',1)
36
+ ->order('created_time DESC') ;
37
+
38
+ $imagegallery = $read->fetchRow($select);
39
+ }
40
+ Mage::register('imagegallery', $imagegallery);
41
+ */
42
+
43
+
44
+ $this->loadLayout();
45
+ $this->renderLayout();
46
+ }
47
+ }
app/code/local/Manv/Imagegallery/etc/config.xml ADDED
@@ -0,0 +1,128 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * @category Manv
5
+ * @package Manv_Imagegallery
6
+ * @author ModuleCreator
7
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
8
+ */
9
+ -->
10
+ <config>
11
+ <modules>
12
+ <Manv_Imagegallery>
13
+ <version>0.1.0</version>
14
+ </Manv_Imagegallery>
15
+ </modules>
16
+ <frontend>
17
+ <routers>
18
+ <imagegallery>
19
+ <use>standard</use>
20
+ <args>
21
+ <module>Manv_Imagegallery</module>
22
+ <frontName>imagegallery</frontName>
23
+ </args>
24
+ </imagegallery>
25
+ </routers>
26
+ <layout>
27
+ <updates>
28
+ <imagegallery>
29
+ <file>imagegallery.xml</file>
30
+ </imagegallery>
31
+ </updates>
32
+ </layout>
33
+ </frontend>
34
+ <admin>
35
+ <routers>
36
+ <imagegallery>
37
+ <use>admin</use>
38
+ <args>
39
+ <module>Manv_Imagegallery</module>
40
+ <frontName>imagegallery</frontName>
41
+ </args>
42
+ </imagegallery>
43
+ </routers>
44
+ </admin>
45
+ <adminhtml>
46
+ <menu>
47
+ <imagegallery module="imagegallery">
48
+ <title>Imagegallery</title>
49
+ <sort_order>71</sort_order>
50
+ <children>
51
+ <items module="imagegallery">
52
+ <title>Manage Items</title>
53
+ <sort_order>0</sort_order>
54
+ <action>imagegallery/adminhtml_imagegallery</action>
55
+ </items>
56
+ </children>
57
+ </imagegallery>
58
+ </menu>
59
+ <acl>
60
+ <resources>
61
+ <all>
62
+ <title>Allow Everything</title>
63
+ </all>
64
+ <admin>
65
+ <children>
66
+ <Manv_Imagegallery>
67
+ <title>Imagegallery Module</title>
68
+ <sort_order>10</sort_order>
69
+ </Manv_Imagegallery>
70
+ </children>
71
+ </admin>
72
+ </resources>
73
+ </acl>
74
+ <layout>
75
+ <updates>
76
+ <imagegallery>
77
+ <file>imagegallery.xml</file>
78
+ </imagegallery>
79
+ </updates>
80
+ </layout>
81
+ </adminhtml>
82
+ <global>
83
+ <models>
84
+ <imagegallery>
85
+ <class>Manv_Imagegallery_Model</class>
86
+ <resourceModel>imagegallery_mysql4</resourceModel>
87
+ </imagegallery>
88
+ <imagegallery_mysql4>
89
+ <class>Manv_Imagegallery_Model_Mysql4</class>
90
+ <entities>
91
+ <imagegallery>
92
+ <table>imagegallery</table>
93
+ </imagegallery>
94
+ </entities>
95
+ </imagegallery_mysql4>
96
+ </models>
97
+ <resources>
98
+ <imagegallery_setup>
99
+ <setup>
100
+ <module>Manv_Imagegallery</module>
101
+ </setup>
102
+ <connection>
103
+ <use>core_setup</use>
104
+ </connection>
105
+ </imagegallery_setup>
106
+ <imagegallery_write>
107
+ <connection>
108
+ <use>core_write</use>
109
+ </connection>
110
+ </imagegallery_write>
111
+ <imagegallery_read>
112
+ <connection>
113
+ <use>core_read</use>
114
+ </connection>
115
+ </imagegallery_read>
116
+ </resources>
117
+ <blocks>
118
+ <imagegallery>
119
+ <class>Manv_Imagegallery_Block</class>
120
+ </imagegallery>
121
+ </blocks>
122
+ <helpers>
123
+ <imagegallery>
124
+ <class>Manv_Imagegallery_Helper</class>
125
+ </imagegallery>
126
+ </helpers>
127
+ </global>
128
+ </config>
app/code/local/Manv/Imagegallery/sql/imagegallery_setup/mysql4-install-0.1.0.php ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $installer = $this;
4
+
5
+ $installer->startSetup();
6
+
7
+ $installer->run("
8
+
9
+ -- DROP TABLE IF EXISTS {$this->getTable('imagegallery')};
10
+ CREATE TABLE {$this->getTable('imagegallery')} (
11
+ `imagegallery_id` int(11) unsigned NOT NULL auto_increment,
12
+ `title` varchar(255) NOT NULL default '',
13
+ `filename` varchar(255) NOT NULL default '',
14
+ `content` text NOT NULL default '',
15
+ `status` smallint(6) NOT NULL default '0',
16
+ `created_time` datetime NULL,
17
+ `update_time` datetime NULL,
18
+ PRIMARY KEY (`imagegallery_id`)
19
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
20
+
21
+ ");
22
+
23
+ $installer->endSetup();
app/design/adminhtml/default/default/layout/imagegallery.xml ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <layout version="0.1.0">
3
+ <imagegallery_adminhtml_imagegallery_index>
4
+ <reference name="content">
5
+ <block type="imagegallery/adminhtml_imagegallery" name="imagegallery" />
6
+ </reference>
7
+ </imagegallery_adminhtml_imagegallery_index>
8
+ </layout>
app/design/frontend/default/default/layout/imagegallery.xml ADDED
@@ -0,0 +1,10 @@
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <layout version="0.1.0">
3
+ <default>
4
+ </default>
5
+ <imagegallery_index_index>
6
+ <reference name="content">
7
+ <block type="imagegallery/imagegallery" name="imagegallery" template="imagegallery/imagegallery.phtml" />
8
+ </reference>
9
+ </imagegallery_index_index>
10
+ </layout>
app/design/frontend/default/default/template/imagegallery/16.11.2013.test.phtml ADDED
@@ -0,0 +1,123 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php $connection = Mage::getSingleton('core/resource')->getConnection('core_write'); ?>
2
+ <?php
3
+ $result = $connection->query("select * from imagegallery");
4
+ echo $nr = $connection->fetchOne( 'SELECT COUNT(*) AS count FROM imagegallery' );
5
+
6
+
7
+ if (isset($_GET['pn'])) { // Get pn from URL vars if it is present
8
+ $pn = preg_replace('#[^0-9]#i', '', $_GET['pn']); // filter everything but numbers for security(new)
9
+ //$pn = ereg_replace("[^0-9]", "", $_GET['pn']); // filter everything but numbers for security(deprecated)
10
+ } else { // If the pn URL variable is not present force it to be value of page number 1
11
+ $pn = 1;
12
+ }
13
+ //This is where we set how many database items to show on each page
14
+ $itemsPerPage = 10;
15
+ // Get the value of the last page in the pagination result set
16
+ $lastPage = ceil($nr / $itemsPerPage);
17
+ // Be sure URL variable $pn(page number) is no lower than page 1 and no higher than $lastpage
18
+ if ($pn < 1) { // If it is less than 1
19
+ $pn = 1; // force if to be 1
20
+ } else if ($pn > $lastPage) { // if it is greater than $lastpage
21
+ $pn = $lastPage; // force it to be $lastpage's value
22
+ }
23
+ // This creates the numbers to click in between the next and back buttons
24
+ // This section is explained well in the video that accompanies this script
25
+ $centerPages = "";
26
+ $sub1 = $pn - 1;
27
+ $sub2 = $pn - 2;
28
+ $add1 = $pn + 1;
29
+ $add2 = $pn + 2;
30
+ if ($pn == 1) {
31
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
32
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
33
+ } else if ($pn == $lastPage) {
34
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
35
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
36
+ } else if ($pn > 2 && $pn < ($lastPage - 1)) {
37
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub2 . '">' . $sub2 . '</a> &nbsp;';
38
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
39
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
40
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
41
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add2 . '">' . $add2 . '</a> &nbsp;';
42
+ } else if ($pn > 1 && $pn < $lastPage) {
43
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
44
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
45
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
46
+ }
47
+ // This line sets the "LIMIT" range... the 2 values we place to choose a range of rows from database in our query
48
+ $limit = 'LIMIT ' .($pn - 1) * $itemsPerPage .',' .$itemsPerPage;
49
+ // Now we are going to run the same query as above but this time add $limit onto the end of the SQL syntax
50
+ // $sql2 is what we will use to fuel our while loop statement below
51
+ $sql2 = mysql_query("select * from imagegallery");
52
+ //////////////////////////////// END Adam's Pagination Logic ////////////////////////////////////////////////////////////////////////////////
53
+ ///////////////////////////////////// Adam's Pagination Display Setup /////////////////////////////////////////////////////////////////////
54
+ $paginationDisplay = ""; // Initialize the pagination output variable
55
+ // This code runs only if the last page variable is ot equal to 1, if it is only 1 page we require no paginated links to display
56
+ if ($lastPage != "1"){
57
+ // This shows the user what page they are on, and the total number of pages
58
+ $paginationDisplay .= 'Page <strong>' . $pn . '</strong> of ' . $lastPage. '&nbsp; &nbsp; &nbsp; ';
59
+ // If we are not on page 1 we can place the Back button
60
+ if ($pn != 1) {
61
+ $previous = $pn - 1;
62
+ $paginationDisplay .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $previous . '"> Back</a> ';
63
+ }
64
+ // Lay in the clickable numbers display here between the Back and Next links
65
+ $paginationDisplay .= '<span class="paginationNumbers">' . $centerPages . '</span>';
66
+ // If we are not on the very last page we can place the Next button
67
+ if ($pn != $lastPage) {
68
+ $nextPage = $pn + 1;
69
+ $paginationDisplay .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $nextPage . '"> Next</a> ';
70
+ }
71
+ }
72
+ ///////////////////////////////////// END Adam's Pagination Display Setup ///////////////////////////////////////////////////////////////////////////
73
+ // Build the Output Section Here
74
+
75
+ $outputList = '';
76
+ while ($row = $result->fetch() )
77
+ {
78
+
79
+ $id = $row["imagegallery_id"];
80
+ $firstname = $row["content"];
81
+ $country = $row["filename"];
82
+
83
+ $outputList .= '<h1>' . $firstname . '</h1><h2>' . $country . ' </h2><hr />';
84
+
85
+ } // close while loop
86
+ ?>
87
+
88
+ <style type="text/css">
89
+ <!--
90
+ .pagNumActive {
91
+ color: #000;
92
+ border:#060 1px solid; background-color: #D2FFD2; padding-left:3px; padding-right:3px;
93
+ }
94
+ .paginationNumbers a:link {
95
+ color: #000;
96
+ text-decoration: none;
97
+ border:#999 1px solid; background-color:#F0F0F0; padding-left:3px; padding-right:3px;
98
+ }
99
+ .paginationNumbers a:visited {
100
+ color: #000;
101
+ text-decoration: none;
102
+ border:#999 1px solid; background-color:#F0F0F0; padding-left:3px; padding-right:3px;
103
+ }
104
+ .paginationNumbers a:hover {
105
+ color: #000;
106
+ text-decoration: none;
107
+ border:#060 1px solid; background-color: #D2FFD2; padding-left:3px; padding-right:3px;
108
+ }
109
+ .paginationNumbers a:active {
110
+ color: #000;
111
+ text-decoration: none;
112
+ border:#999 1px solid; background-color:#F0F0F0; padding-left:3px; padding-right:3px;
113
+ }
114
+ -->
115
+ </style>
116
+
117
+ <div style="margin-left:64px; margin-right:64px;">
118
+ <h2>Total Items: <?php echo $nr; ?></h2>
119
+ </div>
120
+ <div style="margin-left:58px; margin-right:58px; padding:6px; background-color:#FFF; border:#999 1px solid;"><?php echo $paginationDisplay; ?></div>
121
+ <div style="margin-left:64px; margin-right:64px;"><?php print "$outputList"; ?></div>
122
+ <div style="margin-left:58px; margin-right:58px; padding:6px; background-color:#FFF; border:#999 1px solid;"><?php echo $paginationDisplay; ?></div>
123
+
app/design/frontend/default/default/template/imagegallery/16.12.2013.imagegallery.phtml ADDED
@@ -0,0 +1,105 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script src="<?php echo $this->getSkinUrl('js/jquery-1.2.6.noConflict.min.js'); ?>" type="text/javascript" ></script>
2
+ <script type="text/javascript">
3
+
4
+ jQuery.noConflict();
5
+ function applyto(id) {
6
+ var c= '#mks'+id
7
+ jQuery(c).fadeIn(1000);
8
+ }
9
+
10
+ function applytoprev(x,y) {
11
+ jQuery('#mks'+x).hide();
12
+ jQuery('#mks'+y).show();
13
+ }
14
+
15
+ function applytonext(x,y) {
16
+ jQuery('#mks'+x).hide();
17
+ jQuery('#mks'+y).show();
18
+ }
19
+ </script>
20
+
21
+
22
+ <style type="text/css">
23
+ .blankdiv{background-color:#000;
24
+ position:fixed;
25
+ z-index: 9001;
26
+ top:0px; height:100%;
27
+ left:0px;
28
+ width:100%; opacity: 0.65;
29
+ filter:alpha(opacity=65);}
30
+
31
+ #popupform{height: 100%;
32
+ left: 0;
33
+ padding: 15px;
34
+ position: fixed;
35
+ top: 0;
36
+ width:97%;
37
+ z-index: 10001;
38
+ }
39
+
40
+ #popupform .applyform{position:relative; overflow:auto;
41
+ background-color:#fff;
42
+ width:510px;
43
+ height:500px; margin:5% auto auto auto;
44
+ z-index: 9002; padding:10px; border:10px solid #7F3814; }
45
+
46
+
47
+ #pclose{
48
+
49
+
50
+ cursor: pointer;
51
+ height: 25px;
52
+ margin: 5% auto -6%;
53
+ position: relative;
54
+ right: -276px;
55
+
56
+ top: 0;
57
+ width: 25px;
58
+ z-index: 9999;}
59
+ </style>
60
+
61
+ <h4><?php echo $this->__('Image Gallery') ?></h4>
62
+ <?php
63
+ $i = 0;
64
+ $collection = Mage::getModel('imagegallery/imagegallery')->getCollection();
65
+ $collection->setPageSize(25);
66
+ $collection->setCurPage(10);
67
+ $size = $collection->getSize();
68
+ $cnt = count($collection);
69
+ $vz=1;
70
+ foreach ($collection as $item)
71
+ {
72
+ $i = $i+1;
73
+ $item->setTitle($i);
74
+ // echo $item->getTitle();
75
+ // echo $filename = $item-> getFilename();
76
+ $filenaeme = $item-> getFilename();
77
+ ?>
78
+ <?php $media_url = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA); ?>
79
+ <div style="float:left;border: 1px solid;
80
+ margin: 5px;">
81
+ <a href="javascript:void(0)" onclick="applyto('<?php echo $vz; ?>')"><img src="<?php echo $media_url.$filenaeme; ?>" height="100" width="100"/></a>
82
+ </div>
83
+ <div id="mks<?php echo $vz; ?>" style="display:none">
84
+ <div id="popupform">
85
+ <div class="blankdiv"></div>
86
+ <div id="pclose" onclick="javascript:document.getElementById('<?php echo 'mks'.$vz; ?>').style.display='none'">
87
+ <img src="<?php echo $this->getSkinUrl('images/close.png'); ?>" />
88
+ </div>
89
+ <div class="applyform">
90
+ <p id="contactArea">
91
+ <center>
92
+ <a href="javascript:void(0)" onclick="applytoprev('<?php echo $vz; ?>' ,'<?php echo $vz-1; ?>')"><img src="<?php echo $this->getSkinUrl('images/left_1.png'); ?>" /></a><?php echo $vz; ?>
93
+ <img src="<?php echo $media_url.$filenaeme; ?>" height="450" width="450" align="center"/>
94
+ <a href="javascript:void(0)" onclick="applytonext('<?php echo $vz; ?>' ,'<?php echo $vz+1; ?>')"><img src="<?php echo $this->getSkinUrl('images/right_1.png'); ?>" /></a>
95
+ </center>
96
+ </p>
97
+ </div>
98
+ </div>
99
+ </div>
100
+ <?php
101
+ $vz++;}
102
+ $collection->walk('save');
103
+ ?>
104
+
105
+
app/design/frontend/default/default/template/imagegallery/17.12.2013.test.phtml ADDED
@@ -0,0 +1,187 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script src="<?php echo $this->getSkinUrl('js/jquery-1.2.6.noConflict.min.js'); ?>" type="text/javascript" ></script>
2
+ <script type="text/javascript">
3
+
4
+ jQuery.noConflict();
5
+ function applyto(id) {
6
+ var c= '#mks'+id
7
+ jQuery(c).fadeIn(1000);
8
+ }
9
+
10
+ function applytoprev(x,y) {
11
+ jQuery('#mks'+x).hide();
12
+ jQuery('#mks'+y).show();
13
+ }
14
+
15
+ function applytonext(x,y) {
16
+ jQuery('#mks'+x).hide();
17
+ jQuery('#mks'+y).show();
18
+ }
19
+ </script>
20
+
21
+
22
+ <style type="text/css">
23
+ .blankdiv{background-color:#000;
24
+ position:fixed;
25
+ z-index: 9001;
26
+ top:0px; height:100%;
27
+ left:0px;
28
+ width:100%; opacity: 0.65;
29
+ filter:alpha(opacity=65);}
30
+
31
+ #popupform{height: 100%;
32
+ left: 0;
33
+ padding: 15px;
34
+ position: fixed;
35
+ top: 0;
36
+ width:97%;
37
+ z-index: 10001;
38
+ }
39
+
40
+ #popupform .applyform{position:relative; overflow:auto;
41
+ background-color:#fff;
42
+ width:510px;
43
+ height:500px; margin:5% auto auto auto;
44
+ z-index: 9002; padding:10px; border:10px solid #7F3814; }
45
+
46
+
47
+ #pclose{
48
+
49
+
50
+ cursor: pointer;
51
+ height: 25px;
52
+ margin: 5% auto -6%;
53
+ position: relative;
54
+ right: -276px;
55
+
56
+ top: 0;
57
+ width: 25px;
58
+ z-index: 9999;}
59
+ </style>
60
+
61
+ <h4><?php echo $this->__('Image Gallery') ?></h4>
62
+ <?php
63
+ $i = 0;
64
+ $collection = Mage::getModel('imagegallery/imagegallery')->getCollection();
65
+ $collection->setPageSize(25);
66
+ $collection->setCurPage(10);
67
+ $size = $collection->getSize();
68
+ $nr = count($collection);
69
+
70
+
71
+ if (isset($_GET['pn'])) { // Get pn from URL vars if it is present
72
+ $pn = preg_replace('#[^0-9]#i', '', $_GET['pn']); // filter everything but numbers for security(new)
73
+ //$pn = ereg_replace("[^0-9]", "", $_GET['pn']); // filter everything but numbers for security(deprecated)
74
+ } else { // If the pn URL variable is not present force it to be value of page number 1
75
+ $pn = 1;
76
+ }
77
+ //This is where we set how many database items to show on each page
78
+ $itemsPerPage = 3;
79
+ // Get the value of the last page in the pagination result set
80
+ $lastPage = ceil($nr / $itemsPerPage);
81
+ // Be sure URL variable $pn(page number) is no lower than page 1 and no higher than $lastpage
82
+ if ($pn < 1) { // If it is less than 1
83
+ $pn = 1; // force if to be 1
84
+ } else if ($pn > $lastPage) { // if it is greater than $lastpage
85
+ $pn = $lastPage; // force it to be $lastpage's value
86
+ }
87
+ // This creates the numbers to click in between the next and back buttons
88
+ // This section is explained well in the video that accompanies this script
89
+ $centerPages = "";
90
+ $sub1 = $pn - 1;
91
+ $sub2 = $pn - 2;
92
+ $add1 = $pn + 1;
93
+ $add2 = $pn + 2;
94
+ if ($pn == 1) {
95
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
96
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
97
+ } else if ($pn == $lastPage) {
98
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
99
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
100
+ } else if ($pn > 2 && $pn < ($lastPage - 1)) {
101
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub2 . '">' . $sub2 . '</a> &nbsp;';
102
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
103
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
104
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
105
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add2 . '">' . $add2 . '</a> &nbsp;';
106
+ } else if ($pn > 1 && $pn < $lastPage) {
107
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
108
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
109
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
110
+ }
111
+ // This line sets the "LIMIT" range... the 2 values we place to choose a range of rows from database in our query
112
+ $limit = 'LIMIT ' .($pn - 1) * $itemsPerPage .',' .$itemsPerPage;
113
+ // Now we are going to run the same query as above but this time add $limit onto the end of the SQL syntax
114
+ // $sql2 is what we will use to fuel our while loop statement below
115
+ $collection = Mage::getModel('imagegallery/imagegallery')->getCollection();
116
+ $paginationDisplay = ""; // Initialize the pagination output variable
117
+ // This code runs only if the last page variable is ot equal to 1, if it is only 1 page we require no paginated links to display
118
+ if ($lastPage != "1"){
119
+ // This shows the user what page they are on, and the total number of pages
120
+ $paginationDisplay .= 'Page <strong>' . $pn . '</strong> of ' . $lastPage. '&nbsp; &nbsp; &nbsp; ';
121
+ // If we are not on page 1 we can place the Back button
122
+ if ($pn != 1) {
123
+ $previous = $pn - 1;
124
+ $paginationDisplay .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $previous . '"> Back</a> ';
125
+ }
126
+ // Lay in the clickable numbers display here between the Back and Next links
127
+ $paginationDisplay .= '<span class="paginationNumbers">' . $centerPages . '</span>';
128
+ // If we are not on the very last page we can place the Next button
129
+ if ($pn != $lastPage) {
130
+ $nextPage = $pn + 1;
131
+ $paginationDisplay .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $nextPage . '"> Next</a> ';
132
+ }
133
+ }
134
+
135
+ ?>
136
+
137
+ <div style="margin-left:58px; margin-right:58px; padding:6px; background-color:#FFF; border:#999 1px solid;"><?php echo $paginationDisplay; ?></div>
138
+
139
+ <?php
140
+
141
+ $vz=1;
142
+ foreach ($collection as $item)
143
+ {
144
+ $i = $i+1;
145
+ $item->setTitle($i);
146
+ // echo $item->getTitle();
147
+ // echo $filename = $item-> getFilename();
148
+ $filenaeme = $item-> getFilename();
149
+ $outputList = '';
150
+ ?>
151
+
152
+ <?php $media_url = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA); ?>
153
+
154
+
155
+ <div style="float:left;border: 1px solid;
156
+ margin: 5px;">
157
+ <a href="javascript:void(0)" onclick="applyto('<?php echo $vz; ?>')"><img src="<?php echo $media_url.$filenaeme; ?>" height="100" width="100"/></a>
158
+ </div>
159
+ <div id="mks<?php echo $vz; ?>" style="display:none">
160
+ <div id="popupform">
161
+ <div class="blankdiv"></div>
162
+ <div id="pclose" onclick="javascript:document.getElementById('<?php echo 'mks'.$vz; ?>').style.display='none'">
163
+ <img src="<?php echo $this->getSkinUrl('images/close.png'); ?>" />
164
+ </div>
165
+ <div class="applyform">
166
+ <p id="contactArea">
167
+ <center>
168
+ <a href="javascript:void(0)" onclick="applytoprev('<?php echo $vz; ?>' ,'<?php echo $vz-1; ?>')"><img src="<?php echo $this->getSkinUrl('images/left_1.png'); ?>" /></a><?php echo $vz; ?>
169
+ <img src="<?php echo $media_url.$filenaeme; ?>" height="450" width="450" align="center"/>
170
+ <a href="javascript:void(0)" onclick="applytonext('<?php echo $vz; ?>' ,'<?php echo $vz+1; ?>')"><img src="<?php echo $this->getSkinUrl('images/right_1.png'); ?>" /></a>
171
+ </center>
172
+ </p>
173
+ </div>
174
+ </div>
175
+ </div>
176
+ <?php
177
+ $vz++;}
178
+ $collection->walk('save');
179
+ ?>
180
+ <div style="margin-left:64px; margin-right:64px;">
181
+ <h2>Total Items: <?php echo $nr; ?></h2>
182
+ </div>
183
+
184
+ <div style="margin-left:64px; margin-right:64px;"><?php print "$outputList"; ?></div>
185
+ <div style="margin-left:58px; margin-right:58px; padding:6px; background-color:#FFF; border:#999 1px solid;"><?php echo $paginationDisplay; ?></div>
186
+
187
+
app/design/frontend/default/default/template/imagegallery/copy of imagegallery.phtml ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <h4><?php echo $this->__('Image Gallery') ?></h4>
2
+ <?php
3
+
4
+ /*
5
+ This shows how to load specific fields from a record in the database.
6
+ 1) Note the load(15), this corresponds to saying "select * from table where table_id = 15"
7
+ 2) You can then just use the get(fieldname) to pull specific data from the table.
8
+ 3) If you have a field named news_id, then it becomes getNewsId, etc.
9
+ */
10
+ /*
11
+ $news = Mage::getModel('imagegallery/imagegallery')->load(15);
12
+ echo $news->getNewsId();
13
+ echo $news->getTitle();
14
+ echo $news->getContent();
15
+ echo $news->getStatus();
16
+ */
17
+
18
+ /*
19
+ This shows an alternate way of loading datas from a record using the database the "Magento Way" (using blocks and controller).
20
+ Uncomment blocks in /app/code/local/Namespace/Module/controllers/IndexController.php if you want to use it.
21
+
22
+ */
23
+ /*
24
+ $object = $this->getImagegallery();
25
+ echo 'id: '.$object['test_id'].'<br/>';
26
+ echo 'title: '.$object['title'].'<br/>';
27
+ echo 'content: '.$object['content'].'<br/>';
28
+ echo 'status: '.$object['status'].'<br/>';
29
+ */
30
+
31
+
32
+ /*
33
+ This shows how to load multiple rows in a collection and save a change to them.
34
+ 1) The setPageSize function will load only 5 records per page and you can set the current Page with the setCurPage function.
35
+ 2) The $collection->walk('save') allows you to save everything in the collection after all changes have been made.
36
+ */
37
+ /*
38
+ $i = 0;
39
+
40
+ $collection = Mage::getModel('imagegallery/imagegallery')->getCollection();
41
+ $collection->setPageSize(5);
42
+ $collection->setCurPage(2);
43
+ $size = $collection->getSize();
44
+ $cnt = count($collection);
45
+ foreach ($collection as $item) {
46
+ $i = $i+1;
47
+ $item->setTitle($i);
48
+ echo $item->getTitle();
49
+ }
50
+
51
+ $collection->walk('save');
52
+ */
53
+
54
+ /*
55
+ This shows how to load a single record and save a change.
56
+ 1) Note the setTitle, this corresponds to the table field name, title, and then you pass it the text to change.
57
+ 2) Call the save() function only on a single record.
58
+ */
59
+ /*
60
+ $object = Mage::getModel('imagegallery/imagegallery')->load(1);
61
+ $object->setTitle('This is a changed title');
62
+ $object->save();
63
+ */
64
+
65
+ ?>
app/design/frontend/default/default/template/imagegallery/imagegallery.phtml ADDED
@@ -0,0 +1,105 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script src="<?php echo $this->getSkinUrl('js/jquery-1.2.6.noConflict.min.js'); ?>" type="text/javascript" ></script>
2
+ <script type="text/javascript">
3
+
4
+ jQuery.noConflict();
5
+ function applyto(id) {
6
+ var c= '#mks'+id
7
+ jQuery(c).fadeIn(1000);
8
+ }
9
+
10
+ function applytoprev(x,y) {
11
+ jQuery('#mks'+x).hide();
12
+ jQuery('#mks'+y).show();
13
+ }
14
+
15
+ function applytonext(x,y) {
16
+ jQuery('#mks'+x).hide();
17
+ jQuery('#mks'+y).show();
18
+ }
19
+ </script>
20
+
21
+
22
+ <style type="text/css">
23
+ .blankdiv{background-color:#000;
24
+ position:fixed;
25
+ z-index: 9001;
26
+ top:0px; height:100%;
27
+ left:0px;
28
+ width:100%; opacity: 0.65;
29
+ filter:alpha(opacity=65);}
30
+
31
+ #popupform{height: 100%;
32
+ left: 0;
33
+ padding: 15px;
34
+ position: fixed;
35
+ top: 0;
36
+ width:97%;
37
+ z-index: 10001;
38
+ }
39
+
40
+ #popupform .applyform{position:relative; overflow:auto;
41
+ background-color:#fff;
42
+ width:510px;
43
+ height:500px; margin:5% auto auto auto;
44
+ z-index: 9002; padding:10px; border:10px solid #7F3814; }
45
+
46
+
47
+ #pclose{
48
+
49
+
50
+ cursor: pointer;
51
+ height: 25px;
52
+ margin: 5% auto -6%;
53
+ position: relative;
54
+ right: -276px;
55
+
56
+ top: 0;
57
+ width: 25px;
58
+ z-index: 9999;}
59
+ </style>
60
+
61
+ <h4><?php echo $this->__('Image Gallery') ?></h4>
62
+ <?php
63
+ $i = 0;
64
+ $collection = Mage::getModel('imagegallery/imagegallery')->getCollection();
65
+ $collection->setPageSize(25);
66
+ $collection->setCurPage(10);
67
+ $size = $collection->getSize();
68
+ $cnt = count($collection);
69
+ $vz=1;
70
+ foreach ($collection as $item)
71
+ {
72
+ $i = $i+1;
73
+ $item->setTitle($i);
74
+ // echo $item->getTitle();
75
+ // echo $filename = $item-> getFilename();
76
+ $filenaeme = $item-> getFilename();
77
+ ?>
78
+ <?php $media_url = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA); ?>
79
+ <div style="float:left;border: 1px solid;
80
+ margin: 5px;">
81
+ <a href="javascript:void(0)" onclick="applyto('<?php echo $vz; ?>')"><img src="<?php echo $media_url.$filenaeme; ?>" height="100" width="100"/></a>
82
+ </div>
83
+ <div id="mks<?php echo $vz; ?>" style="display:none">
84
+ <div id="popupform">
85
+ <div class="blankdiv"></div>
86
+ <div id="pclose" onclick="javascript:document.getElementById('<?php echo 'mks'.$vz; ?>').style.display='none'">
87
+ <img src="<?php echo $this->getSkinUrl('images/close.png'); ?>" />
88
+ </div>
89
+ <div class="applyform">
90
+ <p id="contactArea">
91
+ <center>
92
+ <a href="javascript:void(0)" onclick="applytoprev('<?php echo $vz; ?>' ,'<?php echo $vz-1; ?>')"><img src="<?php echo $this->getSkinUrl('images/left_1.png'); ?>" /></a><?php echo $vz; ?>
93
+ <img src="<?php echo $media_url.$filenaeme; ?>" height="450" width="450" align="center"/>
94
+ <a href="javascript:void(0)" onclick="applytonext('<?php echo $vz; ?>' ,'<?php echo $vz+1; ?>')"><img src="<?php echo $this->getSkinUrl('images/right_1.png'); ?>" /></a>
95
+ </center>
96
+ </p>
97
+ </div>
98
+ </div>
99
+ </div>
100
+ <?php
101
+ $vz++;}
102
+ $collection->walk('save');
103
+ ?>
104
+
105
+
app/design/frontend/default/default/template/imagegallery/ok test.phtml ADDED
@@ -0,0 +1,193 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script src="<?php echo $this->getSkinUrl('js/jquery-1.2.6.noConflict.min.js'); ?>" type="text/javascript" ></script>
2
+ <script type="text/javascript">
3
+
4
+ jQuery.noConflict();
5
+ function applyto(id) {
6
+ var c= '#mks'+id
7
+ jQuery(c).fadeIn(1000);
8
+ }
9
+
10
+ function applytoprev(x,y) {
11
+ jQuery('#mks'+x).hide();
12
+ jQuery('#mks'+y).show();
13
+ }
14
+
15
+ function applytonext(x,y) {
16
+ jQuery('#mks'+x).hide();
17
+ jQuery('#mks'+y).show();
18
+ }
19
+ </script>
20
+
21
+
22
+ <style type="text/css">
23
+ .blankdiv{background-color:#000;
24
+ position:fixed;
25
+ z-index: 9001;
26
+ top:0px; height:100%;
27
+ left:0px;
28
+ width:100%; opacity: 0.65;
29
+ filter:alpha(opacity=65);}
30
+
31
+ #popupform{height: 100%;
32
+ left: 0;
33
+ padding: 15px;
34
+ position: fixed;
35
+ top: 0;
36
+ width:97%;
37
+ z-index: 10001;
38
+ }
39
+
40
+ #popupform .applyform{position:relative; overflow:auto;
41
+ background-color:#fff;
42
+ width:510px;
43
+ height:500px; margin:5% auto auto auto;
44
+ z-index: 9002; padding:10px; border:10px solid #7F3814; }
45
+
46
+
47
+ #pclose{
48
+
49
+
50
+ cursor: pointer;
51
+ height: 25px;
52
+ margin: 5% auto -6%;
53
+ position: relative;
54
+ right: -276px;
55
+
56
+ top: 0;
57
+ width: 25px;
58
+ z-index: 9999;}
59
+ </style>
60
+ <?php
61
+
62
+ mysql_connect("localhost","root","") or die (mysql_error());
63
+ mysql_select_db("manv_test") or die (mysql_error());
64
+
65
+ $sql = mysql_query("SELECT * FROM imagegallery");
66
+
67
+ echo $nr = mysql_num_rows($sql); // Get total of Num rows from the database query
68
+ if (isset($_GET['pn'])) { // Get pn from URL vars if it is present
69
+ $pn = preg_replace('#[^0-9]#i', '', $_GET['pn']); // filter everything but numbers for security(new)
70
+
71
+ } else {
72
+ $pn = 1;
73
+ }
74
+
75
+ $itemsPerPage = 15;
76
+
77
+ $lastPage = ceil($nr / $itemsPerPage);
78
+
79
+ if ($pn < 1) { // If it is less than 1
80
+ $pn = 1; // force if to be 1
81
+ } else if ($pn > $lastPage) { // if it is greater than $lastpage
82
+ $pn = $lastPage; // force it to be $lastpage's value
83
+ }
84
+ // This creates the numbers to click in between the next and back buttons
85
+ // This section is explained well in the video that accompanies this script
86
+ $centerPages = "";
87
+ $sub1 = $pn - 1;
88
+ $sub2 = $pn - 2;
89
+ $add1 = $pn + 1;
90
+ $add2 = $pn + 2;
91
+ if ($pn == 1) {
92
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
93
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
94
+ } else if ($pn == $lastPage) {
95
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
96
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
97
+ } else if ($pn > 2 && $pn < ($lastPage - 1)) {
98
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub2 . '">' . $sub2 . '</a> &nbsp;';
99
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
100
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
101
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
102
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add2 . '">' . $add2 . '</a> &nbsp;';
103
+ } else if ($pn > 1 && $pn < $lastPage) {
104
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
105
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
106
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
107
+ }
108
+ // This line sets the "LIMIT" range... the 2 values we place to choose a range of rows from database in our query
109
+ $limit = 'LIMIT ' .($pn - 1) * $itemsPerPage .',' .$itemsPerPage;
110
+ // Now we are going to run the same query as above but this time add $limit onto the end of the SQL syntax
111
+ // $sql2 is what we will use to fuel our while loop statement below
112
+ $sql2 = mysql_query("SELECT * from imagegallery ORDER BY imagegallery_id ASC $limit");
113
+
114
+ $paginationDisplay = ""; // Initialize the pagination output variable
115
+ // This code runs only if the last page variable is ot equal to 1, if it is only 1 page we require no paginated links to display
116
+ if ($lastPage != "1"){
117
+ // This shows the user what page they are on, and the total number of pages
118
+ $paginationDisplay .= 'Page <strong>' . $pn . '</strong> of ' . $lastPage. '&nbsp; &nbsp; &nbsp; ';
119
+ // If we are not on page 1 we can place the Back button
120
+ if ($pn != 1) {
121
+ $previous = $pn - 1;
122
+ $paginationDisplay .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $previous . '"> Back</a> ';
123
+ }
124
+ // Lay in the clickable numbers display here between the Back and Next links
125
+ $paginationDisplay .= '<span class="paginationNumbers">' . $centerPages . '</span>';
126
+ // If we are not on the very last page we can place the Next button
127
+ if ($pn != $lastPage) {
128
+ $nextPage = $pn + 1;
129
+ $paginationDisplay .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $nextPage . '"> Next</a> ';
130
+ }
131
+ }
132
+ ?>
133
+
134
+
135
+ <div style="margin-left:64px; margin-right:64px;">
136
+ <h2>Total Items: <?php echo $nr; ?></h2>
137
+ </div>
138
+
139
+ <div style="margin-left:58px; margin-right:58px; padding:6px; background-color:#FFF; border:#999 1px solid;"><?php echo $paginationDisplay; ?></div>
140
+
141
+ <?php
142
+ $outputList = '';
143
+ $vz=1;
144
+ $i = 0;
145
+ $i = $i+1;
146
+ while($row = mysql_fetch_array($sql2))
147
+ {
148
+
149
+ $id = $row["imagegallery_id"];
150
+ $firstname = $row["content"];
151
+ $country = $row["filename"];
152
+ $media_url = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);
153
+ $img_src = $media_url.$country;
154
+ ?>
155
+ <div style="margin-left:64px;float:left;">
156
+ <a href="javascript:void(0)" onclick="applyto('<?php echo $vz; ?>')"><img src="<?php echo $img_src; ?>" height="100" width="100"></a>
157
+ </div>
158
+
159
+
160
+
161
+ <div id="mks<?php echo $vz; ?>" style="display:none">
162
+ <div id="popupform">
163
+ <div class="blankdiv"></div>
164
+ <div id="pclose" onclick="javascript:document.getElementById('<?php echo 'mks'.$vz; ?>').style.display='none'">
165
+ <img src="<?php echo $this->getSkinUrl('images/close.png'); ?>" />
166
+ </div>
167
+ <div class="applyform">
168
+ <p id="contactArea">
169
+
170
+ <center>
171
+ <a href="javascript:void(0)" onclick="applytoprev('<?php echo $vz; ?>' ,'<?php echo $vz-1; ?>')"><img src="<?php echo $this->getSkinUrl('images/left_1.png'); ?>" /></a>
172
+ <img src="<?php echo $img_src; ?>" height="400" width="400">
173
+ <a href="javascript:void(0)" onclick="applytonext('<?php echo $vz; ?>' ,'<?php echo $vz+1; ?>')"><img src="<?php echo $this->getSkinUrl('images/right_1.png'); ?>" /></a>
174
+ </center>
175
+
176
+ </p>
177
+ </div>
178
+ </div>
179
+ </div>
180
+ <?php $vz++; }
181
+ ?>
182
+
183
+
184
+
185
+
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+
app/design/frontend/default/default/template/imagegallery/test.phtml ADDED
@@ -0,0 +1,197 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <script src="<?php echo $this->getSkinUrl('imagegallery_js/jquery-1.2.6.noConflict.min.js'); ?>" type="text/javascript" ></script>
2
+ <script type="text/javascript">
3
+
4
+ jQuery.noConflict();
5
+ function applyto(id) {
6
+ var c= '#mks'+id
7
+ jQuery(c).fadeIn(1000);
8
+ }
9
+
10
+ function applytoprev(x,y) {
11
+ jQuery('#mks'+x).hide();
12
+ jQuery('#mks'+y).show();
13
+ }
14
+
15
+ function applytonext(x,y) {
16
+ jQuery('#mks'+x).hide();
17
+ jQuery('#mks'+y).show();
18
+ }
19
+ </script>
20
+
21
+
22
+ <style type="text/css">
23
+ .blankdiv{background-color:#000;
24
+ position:fixed;
25
+ z-index: 9001;
26
+ top:0px; height:100%;
27
+ left:0px;
28
+ width:100%; opacity: 0.65;
29
+ filter:alpha(opacity=65);}
30
+
31
+ #popupform{height: 100%;
32
+ left: 0;
33
+ padding: 15px;
34
+ position: fixed;
35
+ top: 0;
36
+ width:97%;
37
+ z-index: 10001;
38
+ }
39
+
40
+ #popupform .applyform{position:relative; overflow:auto;
41
+ background-color:#fff;
42
+ width:510px;
43
+ height:500px; margin:5% auto auto auto;
44
+ z-index: 9002; padding:10px; border:10px solid #7F3814; }
45
+
46
+
47
+ #pclose{
48
+
49
+
50
+ cursor: pointer;
51
+ height: 25px;
52
+ margin: 5% auto -6%;
53
+ position: relative;
54
+ right: -276px;
55
+
56
+ top: 0;
57
+ width: 25px;
58
+ z-index: 9999;}
59
+ </style>
60
+ <?php
61
+ $connection = Mage::getSingleton('core/resource')->getConnection('core_write');
62
+
63
+
64
+ $sql = $connection->query("select * from imagegallery");
65
+ echo $nr = $connection->fetchOne( 'SELECT COUNT(*) AS count FROM imagegallery' );
66
+ //$sql = mysql_query("SELECT * FROM imagegallery");
67
+
68
+ //echo $nr = mysql_num_rows($sql); // Get total of Num rows from the database query
69
+ if (isset($_GET['pn'])) { // Get pn from URL vars if it is present
70
+ $pn = preg_replace('#[^0-9]#i', '', $_GET['pn']); // filter everything but numbers for security(new)
71
+
72
+ } else {
73
+ $pn = 1;
74
+ }
75
+
76
+ $itemsPerPage = 15;
77
+
78
+ $lastPage = ceil($nr / $itemsPerPage);
79
+
80
+ if ($pn < 1) { // If it is less than 1
81
+ $pn = 1; // force if to be 1
82
+ } else if ($pn > $lastPage) { // if it is greater than $lastpage
83
+ $pn = $lastPage; // force it to be $lastpage's value
84
+ }
85
+ // This creates the numbers to click in between the next and back buttons
86
+ // This section is explained well in the video that accompanies this script
87
+ $centerPages = "";
88
+ $sub1 = $pn - 1;
89
+ $sub2 = $pn - 2;
90
+ $add1 = $pn + 1;
91
+ $add2 = $pn + 2;
92
+ if ($pn == 1) {
93
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
94
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
95
+ } else if ($pn == $lastPage) {
96
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
97
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
98
+ } else if ($pn > 2 && $pn < ($lastPage - 1)) {
99
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub2 . '">' . $sub2 . '</a> &nbsp;';
100
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
101
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
102
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
103
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add2 . '">' . $add2 . '</a> &nbsp;';
104
+ } else if ($pn > 1 && $pn < $lastPage) {
105
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;';
106
+ $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;';
107
+ $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;';
108
+ }
109
+ // This line sets the "LIMIT" range... the 2 values we place to choose a range of rows from database in our query
110
+ $limit = 'LIMIT ' .($pn - 1) * $itemsPerPage .',' .$itemsPerPage;
111
+ // Now we are going to run the same query as above but this time add $limit onto the end of the SQL syntax
112
+ // $sql2 is what we will use to fuel our while loop statement below
113
+ //$sql2 = mysql_query("SELECT * from imagegallery ORDER BY imagegallery_id ASC $limit");
114
+ $sql2 = $connection->query("select * from imagegallery ORDER BY imagegallery_id ASC $limit");
115
+
116
+ $paginationDisplay = ""; // Initialize the pagination output variable
117
+ // This code runs only if the last page variable is ot equal to 1, if it is only 1 page we require no paginated links to display
118
+ if ($lastPage != "1"){
119
+ // This shows the user what page they are on, and the total number of pages
120
+ $paginationDisplay .= 'Page <strong>' . $pn . '</strong> of ' . $lastPage. '&nbsp; &nbsp; &nbsp; ';
121
+ // If we are not on page 1 we can place the Back button
122
+ if ($pn != 1) {
123
+ $previous = $pn - 1;
124
+ $paginationDisplay .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $previous . '"> Back</a> ';
125
+ }
126
+ // Lay in the clickable numbers display here between the Back and Next links
127
+ $paginationDisplay .= '<span class="paginationNumbers">' . $centerPages . '</span>';
128
+ // If we are not on the very last page we can place the Next button
129
+ if ($pn != $lastPage) {
130
+ $nextPage = $pn + 1;
131
+ $paginationDisplay .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $nextPage . '"> Next</a> ';
132
+ }
133
+ }
134
+ ?>
135
+
136
+
137
+ <div style="margin-left:64px; margin-right:64px;">
138
+ <h2>Total Items: <?php echo $nr; ?></h2>
139
+ </div>
140
+
141
+ <div style="margin-left:58px; margin-right:58px; padding:6px; background-color:#FFF; border:#999 1px solid;"><?php echo $paginationDisplay; ?></div>
142
+
143
+ <?php
144
+ $outputList = '';
145
+ $vz=1;
146
+ $i = 0;
147
+ $i = $i+1;
148
+
149
+
150
+ while($row = $sql2->fetch())
151
+ {
152
+
153
+ $id = $row["imagegallery_id"];
154
+ $firstname = $row["content"];
155
+ $country = $row["filename"];
156
+ $media_url = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);
157
+ $img_src = $media_url.$country;
158
+ ?>
159
+ <div style="margin-left:64px;float:left;">
160
+ <a href="javascript:void(0)" onclick="applyto('<?php echo $vz; ?>')"><img src="<?php echo $img_src; ?>" height="100" width="100"></a>
161
+ </div>
162
+
163
+
164
+
165
+ <div id="mks<?php echo $vz; ?>" style="display:none">
166
+ <div id="popupform">
167
+ <div class="blankdiv"></div>
168
+ <div id="pclose" onclick="javascript:document.getElementById('<?php echo 'mks'.$vz; ?>').style.display='none'">
169
+ <img src="<?php echo $this->getSkinUrl('images/imagegallery_images/close.png'); ?>" />
170
+ </div>
171
+ <div class="applyform">
172
+ <p id="contactArea">
173
+
174
+ <center>
175
+ <a href="javascript:void(0)" onclick="applytoprev('<?php echo $vz; ?>' ,'<?php echo $vz-1; ?>')"><img src="<?php echo $this->getSkinUrl('images/imagegallery_images/left_1.png'); ?>" /></a>
176
+ <img src="<?php echo $img_src; ?>" height="400" width="400">
177
+ <a href="javascript:void(0)" onclick="applytonext('<?php echo $vz; ?>' ,'<?php echo $vz+1; ?>')"><img src="<?php echo $this->getSkinUrl('images/imagegallery_images/right_1.png'); ?>" /></a>
178
+ </center>
179
+
180
+ </p>
181
+ </div>
182
+ </div>
183
+ </div>
184
+ <?php $vz++; }
185
+ ?>
186
+
187
+
188
+
189
+
190
+
191
+
192
+
193
+
194
+
195
+
196
+
197
+
app/etc/modules/Manv_Imagegallery.xml ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * @category Manv
5
+ * @package Manv_Imagegallery
6
+ * @author ModuleCreator
7
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
8
+ */
9
+ -->
10
+ <config>
11
+ <modules>
12
+ <Manv_Imagegallery>
13
+ <active>true</active>
14
+ <codePool>local</codePool>
15
+ </Manv_Imagegallery>
16
+ </modules>
17
+ </config>
package.xml ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <package>
3
+ <name>image_gallery</name>
4
+ <version>1.1.0</version>
5
+ <stability>stable</stability>
6
+ <license>OSL</license>
7
+ <channel>community</channel>
8
+ <extends/>
9
+ <summary>image gallery on cms page</summary>
10
+ <description>image gallery on cms page</description>
11
+ <notes>image gallery on cms page</notes>
12
+ <authors><author><name>mukesh kumar saini</name><user>mukeshbagri</user><email>in.mukeshsaini@gmail.com</email></author></authors>
13
+ <date>2013-12-17</date>
14
+ <time>09:45:24</time>
15
+ <contents><target name="magelocal"><dir name="Manv"><dir name="Imagegallery"><dir name="Block"><dir name="Adminhtml"><dir name="Imagegallery"><dir name="Edit"><file name="Form.php" hash="31cf6c34c3446d7b7d38d5a38b2696cc"/><dir name="Tab"><file name="Form.php" hash="1b206918f15121c53106c902637d7994"/></dir><file name="Tabs.php" hash="d6023961439b40d3e3533dacf5ca4411"/></dir><file name="Edit.php" hash="bdc230fd01268d97b4361d5c2ce06828"/><file name="Grid.php" hash="e18dd220b7bfd74f56a114fb30a89ce2"/></dir><file name="Imagegallery.php" hash="d3e32f439b266f0b325eacb075b4a6e6"/></dir><file name="Imagegallery.php" hash="19d4ccd21057a08ed0533f8c74ae291f"/></dir><dir name="Helper"><file name="Data.php" hash="61af75ebaa8b0d8e5fd745fa97ec6527"/></dir><dir name="Model"><file name="Imagegallery.php" hash="32f1af393f7df45297ca9fb331937f56"/><dir name="Mysql4"><dir name="Imagegallery"><file name="Collection.php" hash="787daa0b6e614631cac41651eea6a635"/></dir><file name="Imagegallery.php" hash="63189d9b4b4e7897b5dc79d94cb61f4e"/></dir><file name="Status.php" hash="d5f7ee99ac39ea777accfb826ae46e66"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="ImagegalleryController.php" hash="f236380300ea6bf8706999437b24dc4a"/></dir><file name="IndexController.php" hash="c14a01ac59ed22f5a2eb7af5871bd2c5"/></dir><dir name="etc"><file name="config.xml" hash="5bead007fcd5728f7f2174cf2f02db1a"/></dir><dir name="sql"><dir name="imagegallery_setup"><file name="mysql4-install-0.1.0.php" hash="ba63d30d344610a134f764aa976c0bd8"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="default"><dir name="default"><dir name="template"><dir name="imagegallery"><file name="16.11.2013.test.phtml" hash="6dd6754eb860c4746fa0125a9405ec82"/><file name="16.12.2013.imagegallery.phtml" hash="57f8b751d424987ac440106863993149"/><file name="17.12.2013.test.phtml" hash="faa0d0c1393aada84dd61a6a6b4bcdec"/><file name="copy of imagegallery.phtml" hash="e2cdcc6a2c49a5e2e8be9b97ae4dad08"/><file name="imagegallery.phtml" hash="57f8b751d424987ac440106863993149"/><file name="ok test.phtml" hash="264e1472ce570cc397cdc430ca23f5e9"/><file name="test.phtml" hash="e37963760fd64c5bb67dcd2607733273"/></dir></dir><dir name="layout"><file name="imagegallery.xml" hash="54a50f9f3a7dfa8e094c6f4a8f735540"/></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="imagegallery.xml" hash="3b887015bdb7c0dce4a89f72bf160b3f"/></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="default"><dir name="default"><dir name="images"><dir name="imagegallery_images"><file name="close.png" hash="7e1e4fe9697be548050b612c84df15d7"/><file name="left_1.png" hash="70604f05151344b82eb8727bf917d992"/><file name="right_1.png" hash="8d90f2d7ba1b5ff56e093c5c48950cfd"/></dir></dir><file name="imagegallery_js" hash=""/></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Manv_Imagegallery.xml" hash="61c1299be32d64f49a3e6bc26f21e0c7"/></dir></target></contents>
16
+ <compatible/>
17
+ <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
18
+ </package>
skin/frontend/default/default/images/imagegallery_images/close.png ADDED
Binary file
skin/frontend/default/default/images/imagegallery_images/left_1.png ADDED
Binary file
skin/frontend/default/default/images/imagegallery_images/right_1.png ADDED
Binary file