Zero1_Seoredirects - Version 1.0.1

Version Notes

Added enterprise support.

Download this release

Release Info

Developer Arron Moss
Extension Zero1_Seoredirects
Version 1.0.1
Comparing to
See all releases


Code changes from version 1.0.0 to 1.0.1

app/code/community/Zero1/Seoredirects/Block/Manage.php CHANGED
@@ -1,21 +1,26 @@
1
- <?php
2
- class Zero1_Seoredirects_Block_Manage extends Mage_Adminhtml_Block_Widget_Grid_Container
3
- {
4
- protected $_controller = 'seoredirects';
5
-
6
- public function __construct()
7
- {
8
- $this->_controller = 'manage';
9
- $this->_blockGroup = 'seoredirects';
10
-
11
- $this->_headerText = Mage::helper('seoredirects')->__('SEO Redirection Management');
12
- $this->_addButton('refresh', array(
13
- 'label' => $this->__('Refresh from Google'),
14
- 'onclick' => "setLocation('{$this->getUrl('*/*/update')}')",
15
- 'class' => 'refresh'
16
- ));
17
-
18
- parent::__construct();
19
- $this->_removeButton('add');
20
- }
21
- }
 
 
 
 
 
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ HR+cPv80T/TLwKlvDBNYrAi1jMtxxU2+JQ6YIxwiA4WFxOy4RmJbYgI3YdkZM6i2mYsdtipH0DaQ
5
+ FYmUB+SIjPGLkJ/lIPLib1dCziVlTeFQmVaWtIpN8fQyPQ2Q+ryL6L3NuHO/2jlHanhHEcaiN20g
6
+ 3p0gqyUMIhLnaUXp3gEbYf1Wy5SOBG0vO5Ax8RGqEEtHDHkmTG/l3I+tYs8zeBWpZHInAPHvX8a/
7
+ wwhc6rwoT1rRd50Y/HKEHaaV9BufPFTDqSfpm1WpgPvU0PCeDqfm1HWKJOuHlzO5/+A23rniREND
8
+ N6kSgHlfynf/Y1CXepSSgWKXp3JSEZX0YQgRk9kGegbQi1FntJNBq5u7741EKdLXQq7zX6c2XIh9
9
+ VO0Y9grWgRCHz0FjBiBUp9LEuKdCttG1zaT7w+ZiXKALwEYVT5YuSlwLORU5HMqAwQuNNdIJ5Omh
10
+ wmdh5UqPFaAUN0Q2C6XKXz7eSXz019p5km3eYFEM6oanEUK7aoJRxYIls1ffFbfPv6oIveallS1m
11
+ hSbyBgDqSPDuhzrPPSzSdLV2EFjXHPFGLmdv+c/56F1veGxuDKeaoBxJ/u0RWU+gH7YMB/htcU4F
12
+ KJHrH60dPpOPR37fX1blA+vkxah/lGiEQ02V8B4lzLlbdTnubfgdSxDepoA6PKm0XgM96B0WaniR
13
+ O3AR+uhVOk3Cr8RUg44vIfV0kwNe3AM8O7M7BRs4O5EuxosZp31813OailCBMg38+gyn5I80tivX
14
+ dwxT5bpW3bAoMcXFqWEXntlPIpWz0CuQd7OBSTFzCcL2Ev1YECIBwW7T1K0HCbsAR5ZrUv5rt4gz
15
+ t8cfkyvCDgrLZOpYZU2BcauLSgHBbasv4cWYEVAVqo4u/L8MPVamBTew5AGE5qDA32ClLpPQ9GW5
16
+ 8rFm/YYzUVkcKvJoLHKz14gEXDd7dEdtunbL+xQHItBmoyk4kU7aa8gl0t9s3lsmPg3TUu9vxwWY
17
+ yxsn1dvkb4D2XPB5BznvWEPkpAArKUU8glfX8vkjRtbxYYppZFbsRDp1uVvYOIZ7DbzvQOirYdJV
18
+ OZKa6pi/xBzMVqgnwxQDIM3YyXHpO0afS9vOmVq8sM0Et7n0wqPL2TCmfDSiiqUp4dVhlHw6Pbet
19
+ TysbB3DqeJx/62+jCSr8Jw7GcydWdD42LUbA/2qdpgtrksf5W92bXjjFNgdnmaTU1yf7qK6B+Ioz
20
+ NtydpkKV9jlbI6rKpUlW/sUYucSjc66D/EXPEjE15DXa6NkRYO+YoJMCHehKRSb+EjqJnJTzUAf0
21
+ NcJsv1FEFPgX3p0McnkB/7z1jO9GTRnA/vOJ3s9ONJLqine3uwAt2fWvNXTuWk0VzlV2/WUXEums
22
+ 1GunxnkjEHlTUoZqRxhLbgKw6qoSgmeNt83fGVvHvz52RYAJnbQqFIcGeWojSktjUgbr5c5icUko
23
+ 9yKhxuDawFmiXNz6T/1pRWoTkfD1T4fQUEpZ6ObyPtMrKgY9E935h+if0XhLZJ7bHlWT9O/7cKr7
24
+ Zwqb9NOCiAFjrKyNzWN02CaTE64jFxiuyo6II37yEzYVANk1iyfcejAwPEZaRTTZSQzATVcrYfR0
25
+ DabIm26wl6t62mSHKqbGujRYEZuR1bRi2txff8G+fs0kA0vnV1lCJPSf09Rnel04sdP+DIC1ZwiA
26
+ /cel
app/code/community/Zero1/Seoredirects/Block/Manage/Grid.php CHANGED
@@ -1,61 +1,47 @@
1
- <?php
2
- class Zero1_Seoredirects_Block_Manage_Grid extends Mage_Adminhtml_Block_Widget_Grid
3
- {
4
- public function __construct()
5
- {
6
- parent::__construct();
7
- $this->setId('manageGrid');
8
- $this->setDefaultSort('entity_id');
9
- }
10
-
11
- protected function _getStore()
12
- {
13
- $storeId = (int)$this->getRequest()->getParam('store', 0);
14
- return Mage::app()->getStore($storeId);
15
- }
16
-
17
- protected function _prepareCollection()
18
- {
19
- $store = $this->_getStore();
20
-
21
- $collection = Mage::getModel('seoredirects/redirection')->getCollection();
22
-
23
- if($store->getId())
24
- {
25
- $collection->addFieldToFilter('store', $store->getId());
26
- }
27
-
28
- $this->setCollection($collection);
29
-
30
- return parent::_prepareCollection();
31
- }
32
-
33
- protected function _prepareColumns()
34
- {
35
- $this->addColumn('entity_id', array(
36
- 'header' => Mage::helper('catalog')->__('ID'),
37
- 'sortable' => true,
38
- 'width' => '60',
39
- 'index' => 'entity_id'
40
- ));
41
-
42
- $this->addColumn('redirect_from', array(
43
- 'header' => Mage::helper('catalog')->__('From'),
44
- 'index' => 'redirect_from'
45
- ));
46
-
47
- $this->addColumn('redirect_to', array(
48
- 'header' => Mage::helper('catalog')->__('To'),
49
- 'index' => 'redirect_to'
50
- ));
51
-
52
- $this->addColumn('store', array(
53
- 'header' => Mage::helper('newsletter')->__('Store'),
54
- 'index' => 'store',
55
- 'type' => 'options',
56
- 'options' => Mage::getModel('adminhtml/system_store')->getStoreOptionHash()
57
- ));
58
-
59
- return parent::_prepareColumns();
60
- }
61
- }
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ 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
47
+ CfjAuB4Tc6UtTUkwKLQoIVcGeernify=
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/code/community/Zero1/Seoredirects/Helper/Data.php CHANGED
@@ -1,8 +1,13 @@
1
- <?php
2
- class Zero1_Seoredirects_Helper_Data extends Mage_Core_Helper_Abstract
3
- {
4
- public function __construct()
5
- {
6
-
7
- }
8
- }
 
 
 
 
 
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ HR+cPuEcEeu0Tf+XoHolhPHoHfCBin0vdLQov9Ii3G2Q3gQj+KbuUUaVrdKh0ABtXhvAChdKd9Vl
5
+ u6hKnztcPDyUEtGu1VU0OLy/f4E5ekjEmSKXol8iTpJpg9UAL289AE0nbs0u8JIt8biJWaRttw+B
6
+ EW67Te12kWT60T77Y3PUlW5oY5hTikA3bXhh8ojVwnyva+P8q+57ojN6mUq5HRSDnVYTP81ozyvw
7
+ 8via9E4MMBEpgkq8HS8RHaaV9BufPFTDqSfpm1WpgHzX1+cQ/EQ9gZdEteunZ6Lc/zGxtk2kM02m
8
+ buEOG4mBbm1UJbT6BaZqUTwDjNcT++rJztQq55aI8stPoUCfvpF0m8GF89umtnUI1St5vv5jT3FE
9
+ c0juzN/oBUYGgXWqhjBhRCVGu8ptYcx0+dKIG2yGUBEkXAbM+lxqiiMmch0b4A6ORcrtx9Ve6yOR
10
+ J13LNROIGQI+I12RcdEXDisRnIdfEnsILDWUPbm0iXwfKFtmmepcLPT/tW8mHecu7bF8LXnKR4rK
11
+ HJVh1hpUzWEXXBbUeUD+8CpZvtBQiqEm91/j+LhZEtyjbBD/SvMvRUuxHWQZmAhNI7J5i/fb4jMw
12
+ ZB9BGE0RNfm2ymnOk5aPzmIlJWe12uep6HuSzsQV90/cs5Pc8SLBOovsyj6ZE2sLBnoZii9yVY2x
13
+ APCtJ0==
app/code/community/Zero1/Seoredirects/Helper/License.php ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ HR+cPuMMwqg5Dj1jH5j+QQXNQ1Lx3BPXv9nzrvQigNhXh0/5Q9O5gphXvuR7HZKtkJfo3KbN2sGI
5
+ s71DggIpWHIHaQz2kk+nC1HVZ+o7b8yGGzIBhKNFGBgAnIn3svBQt/3xAEcJJbwbLRfd2Itylxhd
6
+ AqnhUSZ0H8nqQ56AHhpj/1liiRWTYTPvyoxVe5rEogjxk5tyAKIr0eMHeUXeJv7KUGPoSGyHIX7r
7
+ RUhi+NWTrLslq6QMB1UcHaaV9BufPFTDqSfpm1WpgQzaf1k7jHfOvnZlN9xn4hfz/p5Mjq7kqom/
8
+ F+Q5GxTxNB9OU4jcJvMnJRTRiOqmvQmMU8W0iD1WV1lvVavgTliPtspCk1N++ldWpFCrM3KUEDLx
9
+ T7IvoVBA37oxla6TZkwelctW67jRdrVSe8a6gIaKXEocJ2nEdPJzZUMF6mUud4ZweUEZadLj5mVf
10
+ y0PObwvQtT3iekexectaoDam3yPrnOKJSbRTgUbNmuljdsp8n23L7OKF3TDJD7ETLJDlps7HW+iA
11
+ ef64IRRi0MNXO7Ti2WAdUrliNn1zFIs2YK9cH93sXPJLR77DaIF/WuXHZkfqbR4XUnuLDWYL3XPK
12
+ b+XhGqh7ZuKPAFGpHsR3j5kDzpGI4590f+93lduIXD8dXoJOslInb7Hxx7mw9g+eRcLYYFo+QL6R
13
+ yExRQuO7E33WxiUmHmni72cTwjCWmM0MreRTGB1l+ygAFmQ+j6fkK7EtjIj4AW0dRedUHO8LTmzD
14
+ 02Y8tYxOVdCYH1XF0plE6i1AmfDfstwhTXRVNcAxio0P4A6vYVooojXnbIMUEwI5b4cF2Y3whYKq
15
+ RIfFmqaBamOWfWMmfWa5Ub6SvqoHjQgXKXecY6DLFKp3vf9vk90MlevhrRX2MDQbOGejvQIlzei0
16
+ l4p5NxNRJqURsX8gCGWdI5bhZfnVqTkxfbo+A+wn+J3bzZCqu1O4ldi/FR/TJZ3MIqJ813x1gGu6
17
+ TEJP8eHljTTH20RRcUN+0pzNLcvBxcckzepnny5LWW77aunu2Hl+++FNtDNYj3rzDhUXxUeJPGDZ
18
+ guId2LHYLor3SBECutUbi6LdOdo2iKwIOevruLQkg8rGVWo7yAmn/LFdvlBXQoZlbZxrRzRnuBfl
19
+ Ln3D/WUnreguBBFORTiCX9uOmhniW05rgysIt2g19mk9isHhLIoNAYQfLOqcmZ6ZS6yiSkwyM8dW
20
+ /fGZIsca7I+Aho++T2jfOji+sK1s4ZkkNn7uDW4NSIezPA73wlQ8Bs18efP1huq57l6Qk3SiixBZ
21
+ r71IO5weLBB/QZqOwupSAs2OLRcuWVMfj9W9k5fdGLmacPm/R8MH14biNioCABmS9GQlf3RJ6+7d
22
+ rDpIVIn8G6TccqV5/K2KM/Hgj0vEhmkxS2Oc7zV/Dm+rgdAYVpqIXnvIdFJdTCKdNKVhlKP/3QcL
23
+ OIiD5EEzwZ4fG1m9mbp1vJ2HnPBmjlzW2eEVkP0aZAAg17l0ZaeSWUC+cS8nlTO249+tgY3dp5j2
24
+ ZjBsngoHPxgwgQTFQs7lex38KvUp5g7CpFuNYUmP6IGjf0AsfAZR/wcmFZ8rstytSzvfl1UK7Mam
25
+ qARbXPz1miA1X3N805p97cNQ1SSEfqzGR8Flp9B5C20DmiCCSCM/37fRtA7udNWqywQSzOsxhCP2
26
+ njj/qngtMGPfvY8Y9vKHaddj70OofTI2JeIDVbLT99sHEbQSPmBnYQjkl7zEp2d2iq9wd2rTLw66
27
+ CetspFvQ6ZUjnxAl6dePCUC6Xa1ZMvSOiiZuJOtodhoEClpbWrlPyFNmLyJ3hCZQfRPiI7S3Os6b
28
+ XlCrbU2UPtVsQHCedUPJFhVOmgtuoTR9304FvSauTxAZHfWgAHcEigY83OlSWaWAC7f0hNhbX0YY
29
+ 3MOm9xGuYGz9khquM/4ZIjWH3pYJ8PgHsvnXu1dv830Zw/K2qkbDcsZ+LbiPUcD3HdT1IA/VNPL1
30
+ lsyfPQQROd8hLPZ8KCTRzs9pxBzJC/1ZYhbtnazZeW+uWUavBa5mLWissWl8awjj9fol8vRC7VDl
31
+ 50d5/puemx5ibkcF5gTafUYjCtp1P4P0UQ3UnCGXHMzGcFfCuxribfaELj6cG3rJirim2ibSLuW/
32
+ ZhOVr0b2eM0qN78Yd0pPUYGagS9jia15PKNmgkWsismxSxeenXZ+0mUyz2mFB6BgZKt/gQF+jgkZ
33
+ wXIDTsaglef7J6s6Ar7Ie3NEx608J+u8AKSI8bE1RbFKBU4eN2ZYT3Hf7F31KYw4bWmc8nsifXXw
34
+ MZ0C5AT1SE57QHcSBWZTgFmMJSkNANz2t6pp/fGUupe0PqD0PNakny5eR601mgZRd0a32cIUYWI/
35
+ rjBh9svMDiDF7UAy/9Xn/pKXRIPWtsvzeV/VkXVTaEF0Z1falV7r3YbstPMiijfIXhsNSv3d51mO
36
+ 1C3Mh7QvRHfG90E+trM4FX0YEXYHZSzkYacRxAbkLamsu5Vyst/6r8lPKOgyh7/RLhBFIZ5bPvH2
37
+ SxAgyeGah9egShbx7B3WwAFq1XyDviF726l3YPp2wvBUaijepHNRErzSdkdfQIggXSRsYqUbK6fX
38
+ ejf6Pq8qUgKntYSuX7avkrGrJs5lQ314Xb47kEne0Okpah5ggWNWPTNYjWK4MYl1QEbe65KOGeap
39
+ 3690hVyPCF9RVgpT99N8MHzEt/MpVxVDHDkZ3VBmYO1XttXBgaYnzWPd54V/kswqMmFi0zWFHSde
40
+ fLNqbVrPSDaitUhs9F3NKFjR3E0zw+moCQNl9RNp9gJ+6MORCbo73tQVA6vfsy/MMndVLpJdSeE4
41
+ /neYsIPRCAwir87r4pyJo1KOwoc9oJY0ewiDKRWWktlDcobkg8lWmENMTr3Yzuwnb9Z9ZPG28JjG
42
+ nKPOP3lFTINdRkTpNkmwjNN6NVfvQ99f0fpPH1/VOC7Roauk17c+CPWpm22+4PUSX+wDv2IQBUbY
43
+ qv1Y5Pul34hMkH+hNWc2hX90Ii2VXdR3Ay9UGJCSiaDzaXF+ZMV47PvBf2+EQjgMkGaMpPDPiuyC
44
+ qFw/zB3V8yGpNiqRl1cjJo7RR7r2BgQuRsXu47PIaGbMdfapqvQ5AAhg+HiLlW/KJV2FPZxT1UHA
45
+ wqqLe2XkupgeSQ6cSxYthYrEQl0XA8OPDDZ4tv8DHlA9tWSvODAyLPHpyRBg0Fe3lk41C87K6ZR9
46
+ gQbIJ1tZXc/VDoTp/DlE3Ld2YMHXromqTr/qYyfmdxoBgusMXuXpdEp1CnWp8A1D1CkmRQPrmpUq
47
+ 8JdxDlV8yUSeQpqCX4hcl4WXi7Bv7qmARQqvRUG2kwLlFp+8Ym4kmI5BGXhROsv1yNvbjOA7BpBj
48
+ 3m7FO+AYYDTeWs0gRpbCwak26RlRUWZaNCGpXGRHTp9dKSEVEvcZeypQAUM5Fd4vsqI32GJVW8Mw
49
+ f/5gaSDHjzuC87pPwSJ+iRWRnGpW1JajFbtJQcXage2610W+qyRfhbl3N4a9p5Ra/1JSYrwEXEGE
50
+ qd7lX9m71mabacptOQXd2Ghe6p5rxlLtQH/0XGV65/wATxIAvkSLtGhKxt4xvXztrQqdGB4B4gG8
51
+ CtuYrgzYEaPGWaaaX8kEmW4h01s2225WgXVYJnmXrSQIWnW4tE2f+5M/Az56Xny8lq4zyC0jPCLB
52
+ oTdr/UeUAMfFCwuOdmzmovgUVmxuovD40O7ovhICxaxwHBpYtQdrQfc/CIDMXRY7pl9HYHels5qJ
53
+ ZOW7MCF4b18gY7+NFME5xU0/LlP9L109XYLAzVEezFOJa4DRzIEqpEs3cNPHuCsa0Ha5Cnk9O11S
54
+ 1kj/dJWJ67Po/9OtuCUk0NKUhkJ7ocIl/XVSw4N5J/70Uil2kwy7g56fjaOfTN0XEgWStkTRtwIB
55
+ DdxuhntXQYKcMeJYKTXaqUEKA2TCaCYuHJEeV2ODUjpDRG9n+RFWzJeIRiW7H+6BdzxLMlgltLrz
56
+ PgWl/N5fO9IblLhpTx7kXudgYNxvmQyikLhzmDRqgzFadBcA357Qra27G/i1vEwHLn+1xB0WBVGx
57
+ lfPl5PqwpEDzLKwHX9h4aWDvNrtw06vjNagul93gC2+NikP/t29Q1H4rwymv7XlYkHJE1OLlAePG
58
+ FfLkRExgziZ9GUY0gHCR0/wu/P7alkC/9vAer7RVpUbRC7oq6iDHFMmbQdFsr0DRGvKdRCsxHolJ
59
+ mxP3Hk9/Zew/sRW9d8AfeYw+BUA513MNBhRT7xJCNSWEZAGM6nlv4OU8sZOxeVZPBqddTrxtv1R2
60
+ 0RDHf1PQbO0Ph7RH1Rt8RfDsXRsPps3Q
app/code/community/Zero1/Seoredirects/Model/Mysql4/Redirection.php CHANGED
@@ -1,8 +1,16 @@
1
- <?php
2
- class Zero1_Seoredirects_Model_Mysql4_Redirection extends Mage_Core_Model_Mysql4_Abstract
3
- {
4
- protected function _construct()
5
- {
6
- $this->_init('seoredirects/redirection', 'entity_id');
7
- }
8
- }
 
 
 
 
 
 
 
 
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ HR+cPt8mp6VY1pL8xujPH0AwQ+sPaNnP0vFbZQEiXE2UtL9DPJUs5JanLLiwPON+sWSitWj6uYHL
5
+ VNeCzh7jOOZOJzhrzhTIciZKoGGNq0H4DyKg4/S7cjvUrq/w9OIkGbOzZzUWctC1clViDjOcXw7P
6
+ 3dB2cSJMwPUzuKutBN59RSu4RGrm28zxMkMaVQXad1oTgS4A7P67OyXgGy4o8fTWKcK8iKpTq7Da
7
+ smcl5aYZEgTMcqCI+WB/HaaV9BufPFTDqSfpm1WpgUjVxE5rRwNgMscmzBwXr5riYeYM3LQuuyt8
8
+ ch4VA45rI7ehoE9AAMV99FBCvPxNI0CWllSjvgCJWFU/09jbiM7Kz8jWJi1HIKRw2jVTWQsFTYLa
9
+ KNIWnJxzYUcLjP3m0+2g74PHTcYC+ReR4zrHravBbcPdbq1iwQkyhTivmJJpj3g0y4dwaYl0ArfK
10
+ E4RhpDlKv4JEv8szSCrkBunRHtHDjMKAyjSkQWAdXoZn6uJyIA/3R97ze1ytZGRpimWmumP/toCH
11
+ PrNcaPStbvcBMIJd/4KpyRqh9M6dFOri+Za15CGJatsNdtn0JopxYXatV1SzkDxGWscp5YSTi8ga
12
+ 0RmS3AUzQ3WLpb1n4/az8bCmoeEO269Qvpb6LoZcplZxQp9t10lrrTUs0wc2n/wabFyuYnTjUOhm
13
+ IG0xHy6HAU0gTh4N/T9WIz3b568P6WCdRMibC25ad9JFWyeVtMYNQLL003rJpWJlWxGeogMtVu1k
14
+ WZrhSLQKHkvQOClMLIW7ut3AhcwPbQqeDVmInwNd1RCrys7Q+fcgWFxLpfeLHcuLZy19ohsi+QCq
15
+ qVldrZDe6xkjUIjY8g1adhI0hord9WddWfKDn1wuEvEMeuXVMoypPzS3A6g961nFjLtR8/1ArSq0
16
+ 0BU6jkNcsya=
app/code/community/Zero1/Seoredirects/Model/Mysql4/Redirection/Collection.php CHANGED
@@ -1,8 +1,16 @@
1
- <?php
2
- class Zero1_Seoredirects_Model_Mysql4_Redirection_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
3
- {
4
- protected function _construct()
5
- {
6
- $this->_init('seoredirects/redirection');
7
- }
8
- }
 
 
 
 
 
 
 
 
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ HR+cPqSlLsMg3gnAfvJ2HZb3bRdIXSQYe8jcxAoiQYmBsxjIrN8uHFkW6YPWrNOsH2i7vornj8eH
5
+ JTreolUaSKQE44/nkwCQmFfxHXBnSLwwqwlKBPXjnH/eaYfHhWnIm5EykAuzwjK4ajzmmuhKfBxi
6
+ OAfuxr0D9+cCDt+7nkXjkpumxa3/E0oUaRG/isJu4oQQq4awM9iKiF0DFMxfvLPwyqpasqiuAZIL
7
+ OK6DrXfJJofaMXFEXYFSHaaV9BufPFTDqSfpm1WpgJDYhxTmdnzGNSzz/Ux1l+bnn0xFE2o6NVSb
8
+ z8IeCEdyA04sOZIIcMYGzamOlsCMFi2vElhuy7tx16uUznIKqgEK9Nrc7/yrkc+mN89o9bYX5hSQ
9
+ op1dYcgEY12ZAclSdlMWC769ClNsQCMnbSH2PweUqCNZYWBsQshS3yrrEGicwpew6SCMUtz1712w
10
+ 9UOZD5MPRgjJu3gakrGknHVtNRYdbPn5EWAa+wLl2CE6+tUGwMUqtlAqvFIdSC7I3303JAQ6IrZA
11
+ J081fiVe/3ibc4lfRUt/0P2HEsKwGNZnjgxdLpNi0v/hfh4q2Kc3hZPdzyLnsxU440a+Zpqi4HB+
12
+ LkzfhZiogBd1AqH9RD2nv+hNOWzjE5NAGRoiALFGcJr3MKpPI+Kjg64WAhGe/Xugux7LOwZKkQf6
13
+ zqGeamD0hUlJW1X+sk0bBj6oc0CElcgaEmxRiTM9eVCw5nVD6HqBK5dls+yVuDRJM3kdKbdG6isQ
14
+ 0AXiMKr/ypqUDW7sN3uj5WwATMx0bMZDCknZOQcF3Kqir0c5gB8Z0hb2Aoc3ao6YZkHp/fiQAqi/
15
+ zBOGwMkjMMBZbku44TILRS+g6RPZDqU41xmP8s5+vvyowfYdTljATkLKEZQ7283vJO6Dpc61aBR5
16
+ uTiP
app/code/community/Zero1/Seoredirects/Model/Mysql4/Setup.php CHANGED
@@ -1,5 +1,13 @@
1
- <?php
2
- class Zero1_Seoredirects_Model_Mysql4_Setup extends Mage_Catalog_Model_Resource_Eav_Mysql4_Setup
3
- {
4
- }
5
-
 
 
 
 
 
 
 
 
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ HR+cPyCZ0MpOzVb3iPcKJt5VFjwbbnSoKInIF+Pz77J4byNkS2gcFyCa4Pa5XPLXbIDIVhwCruhH
5
+ frdrVT2mpQEQcXh3SjRtry67od4cW0QIFRsLVLHlQEpGXEowrETD/he+o1EZYHMKHBeiWUPQ/wWt
6
+ sA6Q3/9s+yeTHMnnYMC+LPe4jQQzsh+p2Q0TPgfHFQUD2lIAzm+XBnIyBYEnzaPFfK6/BzLWddIu
7
+ yyGg40aRWg8MtBY/99ep8aP97oI+AMJtJT7ASy0OCwcPP0bA8d7aozym+VEkOMk2RFyX8jc/DHS7
8
+ zIZsKpbWhaZ6Davy46/C1jr8jITe2Ifyx45HwdrNZPA8iW5HpS66dqeYSPkjHMPfME4pvuv6p2ZO
9
+ L/M20xxmVPd/3IcLT7KIlkvn1Ls1ntSGMAx4VNWrMwbiPj/ZSr+NThX1BNz98P/bKglgsOXeLsV4
10
+ gPXDdaUB5YuZVtZdPrDe2rDknylHrgTlzaDvf3y+o7A5HOIMX0QJVtCO3upzO0CAVTAgD/5z8ZgI
11
+ yt3ySTVZfnV3PgT7yE/2/gS/wINxYK/PTySc8+szwSMXzN5rYunFX+YGBg8jGQNNjjZKKoyR0XZB
12
+ 0k2pCBSM3+hHVAwPa1jnc6qCdMip0Z11anKfCsmSDFKfMxQHLeBMxNDmkEdwGyn2KOvfB8V8YHoT
13
+ ILlu0YeRY5Mfz2bGYRgrm6xFPYLO5BOhciJ//m==
app/code/community/Zero1/Seoredirects/Model/Observer.php CHANGED
@@ -1,158 +1,126 @@
1
- <?php
2
- class Zero1_Seoredirects_Model_Observer
3
- {
4
- function controller_front_send_response_before(Varien_Event_Observer $observer)
5
- {
6
- $front = $observer->getFront();
7
- $request = $front->getRequest();
8
-
9
- if($request->getActionName() != 'noRoute')
10
- return; // There is a valid route, nothing to do
11
-
12
- $redirections = Mage::getModel('seoredirects/redirection')->getCollection();
13
- $redirections->addFieldToFilter('store', Mage::app()->getStore()->getId());
14
- $redirections->addFieldToFilter('redirect_from', $request->getRequestString());
15
-
16
- foreach($redirections as $redirection)
17
- {
18
- header('HTTP/1.1 301 Moved Permanently');
19
- header('Location: '.$redirection->getRedirectTo());
20
- die();
21
- }
22
-
23
- // No redirections
24
- return;
25
- }
26
-
27
- function updateRedirectionsCronJob()
28
- {
29
- $dump_path = Mage::getBaseDir('var').'/seoredirects';
30
- if(!file_exists($dump_path))
31
- mkdir($dump_path);
32
-
33
- $stores = Mage::getResourceModel('core/store_collection');
34
-
35
- $updated = 0;
36
- $added = 0;
37
- $deleted = 0;
38
- $loops = 0;
39
-
40
- foreach($stores as $store)
41
- {
42
- $redirections = Mage::getModel('seoredirects/redirection')->getCollection();
43
- $redirections->addFieldToFilter('store', $store->getId());
44
-
45
- if(!Mage::getStoreConfig('seoredirects/settings/seoredirects_enabled', $store->getId()))
46
- {
47
- // Redirects are disabled for this store, delete them all
48
- foreach($redirections as $redirection)
49
- {
50
- $redirection->delete();
51
- $deleted++;
52
- }
53
-
54
- continue; // Do not import anything now
55
- }
56
-
57
- $url = Mage::getStoreConfig('seoredirects/settings/seoredirects_url', $store->getId());
58
-
59
- if(empty($url))
60
- continue; // Invalid URL, do not update the existing data
61
-
62
- $client = new Zend_Http_Client($url);
63
-
64
- $filename = $store->getId().'-'.time().'.csv';
65
- touch($dump_path.'/'.$filename);
66
-
67
- $fp = fopen($dump_path.'/'.$filename, 'r+');
68
- fwrite($fp, $client->request()->getBody());
69
- fseek($fp, 0);
70
-
71
- ////////////////////////////////////////////////
72
- // Import the new redirections
73
- $redirects = array();
74
-
75
- while(($data = fgetcsv($fp, 4096)) !== false)
76
- {
77
- if(is_array($data) && count($data) >= 2)
78
- $redirects[$data[0]] = $data[1];
79
- }
80
- fclose($fp);
81
-
82
- // Add / update the redirections
83
- foreach($redirects as $from => $to)
84
- {
85
- $found = false;
86
-
87
- foreach($redirections as $redirection)
88
- {
89
- if($redirection->getRedirectFrom() == $from)
90
- {
91
- // Existing redirection, update
92
- $redirection->setRedirectTo($to);
93
- $redirection->setRedirectFrom($from);
94
- $redirection->setStore($store->getId());
95
- $redirection->save();
96
- $found = true;
97
- $updated++;
98
-
99
- //echo 'Updated <b>'.$from.'</b> = <b>'.$to.'</b> into store ID <b>'.$store->getId().'</b><br/>';
100
- }
101
- }
102
-
103
- if(!$found)
104
- {
105
- // New redirection
106
- $redirection = Mage::getModel('seoredirects/redirection');
107
- $redirection->setRedirectTo($to);
108
- $redirection->setRedirectFrom($from);
109
- $redirection->setStore($store->getId());
110
- $redirection->save();
111
- $added++;
112
-
113
- //echo 'Added <b>'.$from.'</b> = <b>'.$to.'</b> into store ID <b>'.$store->getId().'</b><br/>';
114
- }
115
- }
116
-
117
- // Remove all the unused redirections
118
- $redirections = Mage::getModel('seoredirects/redirection')->getCollection();
119
- $redirections->addFieldToFilter('store', $store->getId());
120
- foreach($redirections as $redirection)
121
- {
122
- if(!array_key_exists($redirection->getRedirectFrom(), $redirects))
123
- {
124
- //echo 'Removed <b>'.$redirection->getRedirectFrom().'</b> from store ID <b>'.$store->getId().'</b><br/>';
125
- $redirection->delete();
126
- $deleted++;
127
- }
128
- }
129
-
130
- // Make sure there are no redirection loops
131
- $redirections = Mage::getModel('seoredirects/redirection')->getCollection();
132
- $redirections->addFieldToFilter('store', $store->getId());
133
- foreach($redirections as $redirectionA)
134
- {
135
- foreach($redirections as $redirectionB)
136
- {
137
- if(!$redirectionA || !$redirectionB)
138
- continue; // Invalid rediection, been deleted?
139
-
140
- if($redirectionA == $redirectionB)
141
- continue;
142
-
143
- if($redirectionA->getRedirectTo() == $redirectionB->getRedirectFrom())
144
- {
145
- //echo 'Removed loop <b>'.$redirection->getRedirectFrom().'</b> from store ID <b>'.$store->getId().'</b><br/>';
146
- $redirectionA->delete();
147
- $loops++;
148
- }
149
- }
150
- }
151
- }
152
-
153
- Mage::register('seoredirects_updated', $updated);
154
- Mage::register('seoredirects_added', $added);
155
- Mage::register('seoredirects_deleted', $deleted);
156
- Mage::register('seoredirects_loops', $loops);
157
- }
158
- }
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ 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
126
+ BUHK9puoDR2J9h2j
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/code/community/Zero1/Seoredirects/Model/Redirection.php CHANGED
@@ -1,8 +1,15 @@
1
- <?php
2
- class Zero1_Seoredirects_Model_Redirection extends Mage_Core_Model_Abstract
3
- {
4
- protected function _construct()
5
- {
6
- $this->_init('seoredirects/redirection');
7
- }
8
- }
 
 
 
 
 
 
 
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ HR+cPob3S1dWgaXVwVZbEa7/vdZr4DO5QSV0bgIie/t01Fh0qRwtbkHtUBU+mOMKIlIqyawb6Dei
5
+ efICwn764YS2U6/mz8E4WuLNSYE/GiNSMfBAZfCK7qJMwYlOPig70qE5C8DgqqK+UTq4mkVnUr1D
6
+ o6AoOkn5JqjZP0mZSfuI+BTJQ2bY+dY8Y7wtnQTWzC6Duf1tjAyI9juREHXFzVo4BB9yNuhiOIRW
7
+ PzEhrtVhinKbYi7Ve4kQHaaV9BufPFTDqSfpm1WpgRLebz774o2ML7UTCQxX8fmzkPmnNT11PI29
8
+ MCmIpJQx+XqWWcWazNpy1kduudyK3yXBmmCd8TBFNHVMmOkwEMDfyOKz4EALJpgpJFIykJt+mcwB
9
+ UDqngxO0KQ/qW7Enkbd8UP2XM5fLdJTnf/wa5A+lp+ezD1ISyFJarEVCFMiuLSIKiKLcaqWsrMsp
10
+ rsozwNQ6fEnHep9ROVUbt2N/skM2AHWpgFzQRavt/RPgDs047V4ZvXSCE1XdMMuuH/gg2LXPc1Yw
11
+ BFRgYanvdLPfHQQifjalgg0Vdi+8DILG40pcJs+UjwJaKfTeDGftEJenPq0h8t+eOjAtOGt+0NNF
12
+ Ny8ekqdGlzpbesyT+bEBr/y+ktgCW4sgdKXpLy7vpKbDmMgmNfrdbK9EJW48kDcldrP3ECa9Z3h4
13
+ KwT6dseBsycKutAD8fhIoQnTjUzrdPQGwtVTe2neG+lEJkzEFpN/29NeMeB8kcnlLDerdyIQmust
14
+ 0bmQzX8344wdP3iUnzs694bZ/4IqXW4miiv15gtMM8ruRk1xIb3lHU26QzQfmAtxDg0a+jnzLeyb
15
+ pRZE6ntKmYQ5KOmIy3C1R+Izb8E454MwAThhC0==
app/code/community/Zero1/Seoredirects/controllers/Adminhtml/Seoredirects/ManageController.php CHANGED
@@ -1,45 +1,68 @@
1
- <?php
2
- class Zero1_Seoredirects_Adminhtml_Seoredirects_ManageController extends Mage_Adminhtml_Controller_Action
3
- {
4
- public function indexAction()
5
- {
6
- $this->_title($this->__('SEO Redirects'))
7
- ->_title($this->__('Manage Redirects'));
8
-
9
- $this->loadLayout();
10
- $this->_setActiveMenu('catalog/seoredirects');
11
- $this->renderLayout();
12
- }
13
-
14
- public function updateAction()
15
- {
16
- Mage::getModel('seoredirects/observer')->updateRedirectionsCronJob();
17
-
18
- $updated = Mage::registry('seoredirects_updated');
19
- $added = Mage::registry('seoredirects_added');
20
- $deleted = Mage::registry('seoredirects_deleted');
21
- $loops = Mage::registry('seoredirects_loops');
22
-
23
- if($updated > 0)
24
- $this->_getSession()->addSuccess(
25
- Mage::helper('seoredirects')->__('Updated '.$updated.' redirection(s).')
26
- );
27
-
28
- if($added > 0)
29
- $this->_getSession()->addSuccess(
30
- Mage::helper('seoredirects')->__('Added '.$added.' redirection(s).')
31
- );
32
-
33
- if($deleted > 0)
34
- $this->_getSession()->addSuccess(
35
- Mage::helper('seoredirects')->__('Deleted '.$deleted.' redirection(s).')
36
- );
37
-
38
- if($loops > 0)
39
- $this->_getSession()->addSuccess(
40
- Mage::helper('seoredirects')->__('Deleted '.$loops.' looping redirection(s).')
41
- );
42
-
43
- $this->_redirect('*/*/index');
44
- }
45
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ HR+cP/CusGK8g24gmVPC9hOQoZkpyUwjnhL/ROYisIM7DOeu0jddwIbFIpWwa/g/RtyFPVjE04hc
5
+ IvsoRWgDY0VyDdJRPaWdkZK583In6OBAwLio0WNkJwtKoKdgDl02AHpsi/2jB2LT9XmpAQEwuC6Q
6
+ f+YYlW4FxhTQPsaMiEmOai2AuDvsWsJWfJTU3k/yeaIVI1ocGcJXDVc010w7t27/qbx+x9oDkJEQ
7
+ /WOd1i4LwnUOJAxagBZKHaaV9BufPFTDqSfpm1WpgRfXZuTpkin3bg5icYxgLmzq6bCX4oPRCuDj
8
+ 0UFXTued6Pw1k1iw7OthQlAIbAuMv0ZMRorj1/AeulW3aE/QBUmgDCzhV4gPXX/YqgV9J9FiQ1ud
9
+ ld4adtXsbMkWbeIA+xmJ9Gybp4bm8Uv3fF/NUTtvbED5plOcw4fWlnjqapaaMLuwEXoLfq93wjl5
10
+ SHkARTrdlNHiD8x/ey8oSbPELEwODmcFKSHDqMJ2msmcv8GKIple9ejgXdKvASEs+oLl9td8e9Zj
11
+ rNXDxDApuHpAh7QyEmcD+VedjB40j2rb7kcn/vg/dOUmpvqYey1gklJcjSXQBdjG7KOnj4kGmfKe
12
+ Z45Jx/T7AYEeFiY5u4ptT4G5+w9vVbV/CgSuNsxRYR0RaCDkERaqxb3iPu8CT1uJHDSlBND5rcfY
13
+ r/2sl4ZCQCfuj12aiOY2p/Tp/E4BwQvIoEt0cC9qyDI6aUQnfx0tuFw/OL8OsmNIH2y1EToBRCu3
14
+ IBm5Sy028JKnN7QpoA3WkrDFEK7VUiJ3hyimNPHZDSdeWABK7l523X5eQXhzxWc/7zvoiTIEizTz
15
+ yKO80EUKaMvsJxFKjMUCZ+SUCf4CYbjyfYggvMZQCyoUMKmmmBqlsHgAdga5FV3rogbITA09pM4l
16
+ 4pXAIOEvTjPgMA+mnACGKn+pLwo6TqqtQRviAgx0LnvKvM5CvfW8pVQQOLvfvULKcLzm9/ypALdx
17
+ Qm6nHgybhLdPWOJTc6hjjiHQ9aqRJE6ChzYpbhzOP27RlP0Zd0u8VRdYSmjtO4YALnCCQMChLOxR
18
+ Fa0OYwyqhXLexkLTfdqZPFxk7IzDjUEhhK8L+LEB+9hqyYEIqvzhTuXulKdCZQ62g9DsDuHLDU53
19
+ rqbaf0zqlVGVZl3dL97/7dc6HlSHu844DYDnZR/Rhg5RNE36dFo29/mwIhkT1+G1B53UwIw5xznR
20
+ 3kZyjLP1z4iLm4impNpLYWQXhx9hMJ7zUeSNg/gKhd3j5ST8SP9F8opYMRI/J1VmjjybADEUqXRA
21
+ /QTP27rIRLMgYxoENsZdLL4JOAgSWRet/v+lqrTb29eMTdS7BnOHwm/seEZhJkPwybXqlCOlEhBt
22
+ XH9wnmhAfa/Jk3qVpRkUj96so0f/Thea5WDkbIuWOyzAjCX1aCDWAF+lnDk/KEFhp4NNinacCr+e
23
+ Gkpq3xjupQI1SrMgMuiFmUGNXwyDLXOdDgS5NP0ShVe+tzbiP8nK4T+RGVyInO0dLZZbSDB3i1dV
24
+ /k9Knr4HdJt4GHleV3bud/g8M+zjHV/Ky9RbG7tMEBJQlWheiiyHf2/0M9aHkTVqZmJWcddhf5H9
25
+ vfp1X8iQ0nBz/dlU3aY0IXbVJKyzlRJwlZ7mzBExzEFLsYAnQb6drIwAW+KrqWPOdeK5vKlGpNHZ
26
+ gvkZGuL9LFSCClGBOAdwXfJb7/rPebnov+FsYQ2T/O4B3J8bbdXeH40cx1BzTNlLsU0vDSJhqR11
27
+ KVKImSL0lJCK8O9waFCOP+WeBIB/XB/EB13wxVz3oBj4vrQhhiHMn7Jsavf5kqyemR5Y3hndfoI7
28
+ y/iFMGvg2t6PteanRPfscqDA8xJ0PXBIgKtiS1+af/4M8h7X9T1cXZJoFhe+2cECUXQX/YVkE5kE
29
+ WxlNZdhP76gxI1/Of7hS8ZlNlBGuwnOjSeFGrmdYFojmC8lVMox1pGft7udhdD7YwJXl1do0d6o9
30
+ tZuhGR3IvBOmF/KPW7FS46HXoDH8i1ynOv66EwoUOji0zF/rLJ4+LPVBoyxl6vr8RmV21AflVc9k
31
+ TNpnIhpNk4pnU3BIW8BBz+0SY4IGXIX7Bv3bOCELPS1JHdbWErTHks34n3tlnfCZHI2HPN+DLWHP
32
+ i6PsBWd60ed991z60AbqiPaCZoaqKxDgLxhmTc+OXGbPnofRRPDiz1AJ6MxrTNOOs7FtSSOD05zz
33
+ EBfGa23834Bpv/U125o2mLPa+USP8wivA31YygVacwXLFU/YokbSttcdIBy+UugEBO9kOT2LYo4l
34
+ +Dm42sn1FG19/lyz7uvRn8dyyCNfwjQxK1yOvcp8wru9fk24nRsLSr0KYDATrnX9BcUzBHVanuln
35
+ SNUL5XyYM17woZUxKQS2XD6wMo8EVf7mFGPVz7Guuk+bPourdyhx81nWnT79pd0rzOfe0NDIP1gu
36
+ /y/50t/CCBkY1Ny1rqXQV2aSsm/k+iqiVGDrfP9QcJk84FVO2JE2krGqos1b06CVJcjO4MBOBx4T
37
+ rFOUe7mon736k5bSefzsScKT6akoVx59wgXIElmRqqh/Dmu+89JiNd6EPllwRAEcj+7mtg1UqfJQ
38
+ tYuLtpjFA3WQpbFeWXZzhiVGvrJOc1scqt6kOE9qGkPtarmGvnpK3sr+MIdWR9hA9W16SNYCBYjk
39
+ lvPY/SJmqIx/cmSSuU+I2NE7P4s02uqn08yqB3d+HjcjDT+zoRXDcJqFqGutKjqVai+cjzPmOT9K
40
+ dV9NxtUL6+A2QGHqNBvdNKOSysJ8Wpbf4NbVDankRbsbgfgHOPQFWvUce7MMFKn09AA52gnI7RIw
41
+ /tlDr2d+6rUVj7JeJWngBOTxX11V9arBO6NZ8s+L/aiOODEBqAD0NNySTTSjtsobCzD0BNFiVWIF
42
+ 7DdZmbtu+EO7ASdssgV0LdK7r5k/XTaADGATFXsZ9aKqRCRRqchSiE3oZyOJBGmnrCdwnznGlYuG
43
+ KmYRrj6MwKePBK6Nwgd3ppLCVeMtIEncRC6ExuzgT5fX8Rz0SBt4Pq6SAgWRxZMw4E7M1ZO5sUjN
44
+ C5qBgxem0lwJqtl6bn1g90YyAvY7C0kjHeH42ELd23gdzVYOmYrIS6xjcm1pp43i/D66RECEnSTX
45
+ LfJ4QWT+r4VoaNZeoy86Hi0jmJj9VkwKkro1larYhWmAwwtmGQ7WgNTjiGghUeMB6D54SOQGuZW4
46
+ PfJ+je9si4XSGMqiRxZymNiE3nzsJHQ6lMoPYzyewVAHdG/kummkEZcSMNiKst3SsMXHUkMcSaZJ
47
+ 8uzpiBtbfjCCpPQjuLXFyqQL8xoY+Zh2ABj6v6r6dOpPhgBXaKKuQ9/0Xrc/fZyICq3VUjsAo6dQ
48
+ x0o1r+uEaLbi0SoZ0YCIEOTtcQCj5h8tSRqlnClVYEiW4582NrDrX4VvwZ9h4uOgaiHh/sdyd5Eg
49
+ Bfyobcx9gDXnc4N6Y5+BjFgfs50P5svmtEmpsvJ0CH1VxLDoOaGb6LZCKlV7fc9n0g+NKs8cYIGz
50
+ SnaJ8XwAEmuoj1oTebt9J4EnsZg1TyQJr+YakZCAXnxiItj4Zu8uJ7C2ebhHrKYBlKcmwuRk0V1I
51
+ zr2wFdB4NtTv9DlZEQj3sii6dmQTh7H7jibxQDBwrWWDymQhEh6sR/j14ALCKB2+9M4Bl9zh78e/
52
+ b98TOITtp6fPil0bDdLxYAjax4sHX4MyyMkUeHrAeffJJSU/Wc7y0HDdDv9R0mgAM7tE7zTMWZ+6
53
+ agUP4Os7Rk4N+FRqwENOmr8rHiQOEsjbzpGJVUacvJN1FjDuz6O76h4Ln2eotSEAaNCLYYLw9Fmz
54
+ uDB3ivpodK+uvACjwiZP23jL/uyK/yHtCrEMxfP4HhGuIUMCzO8zmvfZkyOvyZhYQNxGRWKLYLlW
55
+ 5ATyI9U2uPhNh4EBVmy2NRoF9tEFxL7HHzx9+6X1FmPYpxEjCPeocLfHQnybXOLgJs5IoLrNpG5V
56
+ mmMvAxtkp/rWt/ufdi2WDIzvWBTjCVSHvRFq70KVsjkeqHop2JKhP+Tb/aaYXP7TmSqZSrKPqcih
57
+ SkrdfQoFpKer+5+dFyflxySeSoz5MzrBs1PTPFZfP+UxICSxodFd6N6F27Pd2ORWaWcJTmK62TTS
58
+ UaL/Q8A7dIfm/nsoBpvN+P1cZ8i4rO06IkIAO/4fZ82ZSDtTEgTkz9nUzWmJ655UOM6Kc7dhrjaP
59
+ MsYLJnTf9NuW/QvNNFsvFyOLezGWhYpqv8SkCL33pRMuPaQLt0LCIxiAp+omT1DBuatmy4K5/fw8
60
+ 0ru86ori7KPsh9MBQMZqSt6tK0vxY11J5r2YZNHZ7JwbFHCN18istmNi6KfQ275RavumP84M47wx
61
+ dAUNnWikQa9hW9VQka511/quKxM5Vn1JS6tfhZ7Mmw8iHYzvb30CIGjJYRw0oAhnPZEw//O5Edrq
62
+ qIDeAkEsPO7RDqmC2NPQDszz09qLzKjsU2D4CwuXK8KHOzp3srWJavcsnQ1eyaNUO0ScIHgq5mVO
63
+ 4kbO30yH7QpTqgtcW5LVGCsW1qPbC6D4qWJN4oihAyouCg6qLmj8Z7egsWeFTMU+nLjd9xNLXdok
64
+ qAu1rJQGzt5xfwfY8f4ZLNP6TC2pZiUKdjqN0HlnE1yrtAIycOJS7lfl136zDhc2LG1RMkffJdSb
65
+ HuKwQNy4sGME6cs6fJYD+PDgUMj79JarrZ/etBci/Z0tmYxbMwbP3PmGnz5Asa+3UZbqbqXa79Eo
66
+ SizeTtlw11bWcOo3BG+vQu8WNcoFwT71/qTJ2bpPbRULOglzsqwGuZPKHoxFI+taCI3mxVvKICHP
67
+ XXAxTlLw2vbHVd/m8I52uKr4udsq/eawmFdTufzZ6XXgCGO/s+siXFmooWHNZu3pj9dm5S73YZga
68
+ nYtldWvL2zGtk2BqKrp2Q7S8qYWcIFDBkWspO5u=
app/code/community/Zero1/Seoredirects/etc/config.xml CHANGED
@@ -2,7 +2,7 @@
2
  <config>
3
  <modules>
4
  <Zero1_Seoredirects>
5
- <version>1.0.0</version>
6
  </Zero1_Seoredirects>
7
  </modules>
8
 
@@ -85,7 +85,7 @@
85
  <seoredirects>
86
  <settings>
87
  <seoredirects_enabled>0</seoredirects_enabled>
88
- <seoredirects_url><![CDATA[https://docs.google.com/spreadsheet/pub?key=YOUR_OWN_KEY&single=true&gid=0&output=csv]]></seoredirects_url>
89
  </settings>
90
  </seoredirects>
91
  </default>
2
  <config>
3
  <modules>
4
  <Zero1_Seoredirects>
5
+ <version>1.0.1</version>
6
  </Zero1_Seoredirects>
7
  </modules>
8
 
85
  <seoredirects>
86
  <settings>
87
  <seoredirects_enabled>0</seoredirects_enabled>
88
+ <seoredirects_url></seoredirects_url>
89
  </settings>
90
  </seoredirects>
91
  </default>
app/code/community/Zero1/Seoredirects/etc/system.xml CHANGED
@@ -5,14 +5,14 @@
5
  <label>SEO Redirect</label>
6
  <tab>catalog</tab>
7
  <sort_order>990</sort_order>
8
- <show_in_default>1</show_in_default>
9
  <show_in_website>1</show_in_website>
10
  <show_in_store>1</show_in_store>
11
  <groups>
12
  <settings translate="label">
13
  <label>SEO Redirect Settings</label>
14
  <sort_order>1</sort_order>
15
- <show_in_default>1</show_in_default>
16
  <show_in_website>1</show_in_website>
17
  <show_in_store>1</show_in_store>
18
  <fields>
@@ -21,8 +21,8 @@
21
  <frontend_type>select</frontend_type>
22
  <source_model>adminhtml/system_config_source_yesno</source_model>
23
  <sort_order>0</sort_order>
24
- <show_in_default>1</show_in_default>
25
- <show_in_website>1</show_in_website>
26
  <show_in_store>1</show_in_store>
27
  </seoredirects_enabled>
28
 
@@ -30,11 +30,21 @@
30
  <label>Google Docs URL</label>
31
  <frontend_type>text</frontend_type>
32
  <sort_order>1</sort_order>
33
- <show_in_default>1</show_in_default>
34
- <show_in_website>1</show_in_website>
35
  <show_in_store>1</show_in_store>
36
  <comment>The above URL will be downloaded into Magento at 2am every morning</comment>
37
  </seoredirects_url>
 
 
 
 
 
 
 
 
 
 
38
  </fields>
39
  </settings>
40
  </groups>
5
  <label>SEO Redirect</label>
6
  <tab>catalog</tab>
7
  <sort_order>990</sort_order>
8
+ <show_in_default>0</show_in_default>
9
  <show_in_website>1</show_in_website>
10
  <show_in_store>1</show_in_store>
11
  <groups>
12
  <settings translate="label">
13
  <label>SEO Redirect Settings</label>
14
  <sort_order>1</sort_order>
15
+ <show_in_default>0</show_in_default>
16
  <show_in_website>1</show_in_website>
17
  <show_in_store>1</show_in_store>
18
  <fields>
21
  <frontend_type>select</frontend_type>
22
  <source_model>adminhtml/system_config_source_yesno</source_model>
23
  <sort_order>0</sort_order>
24
+ <show_in_default>0</show_in_default>
25
+ <show_in_website>0</show_in_website>
26
  <show_in_store>1</show_in_store>
27
  </seoredirects_enabled>
28
 
30
  <label>Google Docs URL</label>
31
  <frontend_type>text</frontend_type>
32
  <sort_order>1</sort_order>
33
+ <show_in_default>0</show_in_default>
34
+ <show_in_website>0</show_in_website>
35
  <show_in_store>1</show_in_store>
36
  <comment>The above URL will be downloaded into Magento at 2am every morning</comment>
37
  </seoredirects_url>
38
+
39
+ <seoredirects_serial translate="label">
40
+ <label>Serial</label>
41
+ <frontend_type>textarea</frontend_type>
42
+ <sort_order>2</sort_order>
43
+ <show_in_default>0</show_in_default>
44
+ <show_in_website>1</show_in_website>
45
+ <show_in_store>0</show_in_store>
46
+ <comment><![CDATA[Visit <a href="http://www.zero1.co.uk/" target="_blank">http://www.zero1.co.uk</a> if you require a serial.]]></comment>
47
+ </seoredirects_serial>
48
  </fields>
49
  </settings>
50
  </groups>
app/code/community/Zero1/Seoredirects/sql/seoredirects_setup/mysql4-install-1.0.0.php CHANGED
@@ -1,19 +1,19 @@
1
- <?php
2
- $installer = $this;
3
-
4
- $installer->startSetup();
5
-
6
- $installer->run("
7
-
8
- DROP TABLE IF EXISTS {$this->getTable('zero1_seoredirects_redirection')};
9
- CREATE TABLE {$this->getTable('zero1_seoredirects_redirection')} (
10
- `entity_id` int(11) unsigned NOT NULL auto_increment,
11
- `redirect_from` varchar(255) NOT NULL,
12
- `redirect_to` varchar(255) NOT NULL,
13
- `store` int(4) NOT NULL,
14
- PRIMARY KEY (`entity_id`)
15
- ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
16
-
17
- ");
18
-
19
- $installer->endSetup();
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ HR+cPuAxBa6sWfDsMm+xOfpnpZ9/y0IuZXdF9UTBqN2mKkceya67f0UGLIKc0U0ilyGF4EJu8LrO
5
+ OZbSc7QCmp1yvZFSU4Pd2/mTTcZWPTUnV8dCkVLuPgTYIiCt/kFyv+/TtHDQkQ8FrqlRZF3u+Zt8
6
+ YXQsUyQfldWNeXuGZpDYWfxC+YE96XnUgcdoFS3n1IqELXzxPVt1D0ScoRNaiciQWaBf2Pq+8obC
7
+ XsFmUGGperw2KuQa520k+7v6IHyalYbazqtHodF063Efi69Nye+aeWEsPhmU3XeUN5l/aDdSrWIv
8
+ xZIrN/4f1nQTK/7FzxzpDUPqf9K92F4IeUv0HCQgNLVwVoGMgUpq9KODK0dlm+9YZ7QemCw17hB2
9
+ DKTF+Ko4iz/imLdiOfQ3GWh02dNA0L0Q9YchCKzmpEqQLuHVMyiN3FHtrwGL+hsoOeALHCkIFsir
10
+ hnJCQKLLopV9oRjuacWhQlaen9sspcFTnt9hHS8t9Ene2ZjgEvtuQlNFNNqsKvenoiuBXIU4aYVr
11
+ DNiAMNNtq1gHURTsI4ii4+gy+FeJGWoFYXklJ22cnUGoINB8swwK6DWetZ98G54rTx2VH4QBQafH
12
+ +aj6QxJP2IBZEYTxb4haKfDS501HLIkm41nrKKa0ZNr9ZSX9lQvl3sFborG5T6p5CFXwo7iYNkFC
13
+ wtCxt3e13E1cbUG9qsHQTqlTpW5PVYKWp3lXZniWA3iYyeJ6ctbv0c3lasb8GRXs23P6Ii+r+4T7
14
+ QH9x94PHzkgY56NV4hbUx7frj+JQTyHn2Bgeo+FBHlr25RuQglFrMUbaVKtEHcfVkRGdKSCMx6Cr
15
+ gV5u3flmqSVSuFhElers0Eb2rkTCxDA20WKDKpOKQ4APX9pxCe7kFaAHIupH/hOE+miIIjkt6g4L
16
+ fOTcEX3Z46JB2oONRawKU8TNoiqUNFG93qsIyAqxvCfKhXBUJCxbk5HlsPoj7Ouu2UE/v41ja3sx
17
+ 5SDHf8BO15iXZH/+zN8/1T0A+fdDzIslnLCYh4TCb5Od9+0qwOSnVNk5qV/c9OB5VJ8/ZkI63qcy
18
+ vRvBdfgknnbxzlO1zr9zPfRE9tLrzau74/2TZzSB1SHVAazbC7HKx4HFjHcM2umwQ18U+8Krc6G+
19
+ LOCAyvgZmjrbCWVhacdeWEBjUtdWdgPwGyAadgorHMp3
app/code/community/Zero1/Seoredirects/sql/seoredirects_setup/mysql4-install-1.0.1.php ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php //0046a
2
+ if(!extension_loaded('ionCube Loader')){$__oc=strtolower(substr(php_uname(),0,3));$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');if(function_exists('dl')){@dl($__ln);}if(function_exists('_il_exec')){return _il_exec();}$__ln='/ioncube/'.$__ln;$__oid=$__id=realpath(ini_get('extension_dir'));$__here=dirname(__FILE__);if(strlen($__id)>1&&$__id[1]==':'){$__id=str_replace('\\','/',substr($__id,2));$__here=str_replace('\\','/',substr($__here,2));}$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';$__i=strlen($__rd);while($__i--){if($__rd[$__i]=='/'){$__lp=substr($__rd,0,$__i).$__ln;if(file_exists($__oid.$__lp)){$__ln=$__lp;break;}}}if(function_exists('dl')){@dl($__ln);}}else{die('The file '.__FILE__." is corrupted.\n");}if(function_exists('_il_exec')){return _il_exec();}echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');exit(199);
3
+ ?>
4
+ HR+cPqhYCcx5I8T1X5QdJTSYORgyUABbcdCZGeAiMUBMhaD3yVq7Py7ghw2iEMr9+2sZzRq3e+Cp
5
+ r9oePyYuhKoc+ztuZHNnjQ8l+wrlbQBnQ4fNEJheC3AiqyRtrjpxGc9txBE5sWVdFZ68JCbklkT6
6
+ Iihe+BbWMUxfNNMgRRD7omqnVYiVZ+Ce+RaS4SSuJIEgaiZHll10XWN/Ybn1vFmaAwFnnA0eAX5G
7
+ to9+/jfmxdwRbu6a8ngxHaaV9BufPFTDqSfpm1WpgGXhK9j5GYdFZPaZs0vwhOeoZoLcDVGOr1gK
8
+ prSAwW2eb8TR4w4KYa3emeUZVruuKSo2RWrkCtV3N4g6HwvCbuu+JPYpmTb9jUmCgefycpPQjYcY
9
+ ZSukS1EpRWaJVbCpvicuHn7IDq4cnwy5eXVx/VTBu8NNG08qW0061Ld902m2u73mq7gfe2L+NEGa
10
+ KRbrEe/VA0ibSF+WSCdKCXeqLnwLaX07JAdT2zSzrYax1egFTlZg8/DLYcyx3HBk/0MTB4UHcKgX
11
+ nxHQ0UR4MbKOOAN4oSCL3xGQqholHsvCOuV6jr++zIK13tF8hpDyJGwvdm67j6KYXBCuN9pftuSe
12
+ t/+lVHwc6awSZqJDXT3wl10a0m1NgzEsEKMSbzqkUtGZlms2YAaOhqHEIdsseKmC0uyhpf/rAzci
13
+ 2zf6nNg05uoCGdAsniePRAyf5F1J7kTppl+Jua4H/duwAltYP5sSqP53NTsdgOlVEDTVagchhgp7
14
+ DGF4O09KecCdIC8qB5IJb7OvGQP9dBmxru+FhUfeOYhwErhwEZatLrUYl2ZpRWsMNeG3rLdMMC3O
15
+ gOTiXCEfAlhJnWpgXIDLNlpmGoVpgIPwa5t9UkU+oV9y54LFFt9Cl/NOpQRwy8CZ7L07I77ZXDTG
16
+ 0ui5O8Zqg8weK4yaLaScmR6k1klXZXe5xac9TD+lqkKDEUm9ZY6vdwaK3d1Ce1x2BvRLL0YLRbe3
17
+ O59iNf9OW7Fp5gWHW5fZ8pthdO8rJ8dNOR6NatDsQ5EmVDyx81XpIqyM/5gnAz6vVEnso2YzhCe6
18
+ dmL57FA0YxjJHfuSKgudyuDCsguJVFKJJ50BIizQtoEnnoeoce5vDMfFbzn3zkSfTLEDxibB1JuM
19
+ EOmvoYBwAx6omF8K5TSDpBX0TJab6dhPQ/gJIvJzmV8QriG2wQKTGkWt
package.xml CHANGED
@@ -1,18 +1,18 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Zero1_Seoredirects</name>
4
- <version>1.0.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://shop.zero1.co.uk/LICENSE.txt">Commercial</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Manage you SEO redirects using a Google Doc</summary>
10
  <description>Manage you SEO redirects using a Google Doc</description>
11
- <notes>First release.</notes>
12
  <authors><author><name>Arron Moss</name><user>zero1limited</user><email>arron.moss@zero1.co.uk</email></author></authors>
13
- <date>2012-05-11</date>
14
- <time>11:49:03</time>
15
- <contents><target name="magecommunity"><dir name="Zero1"><dir name="Seoredirects"><dir name="Block"><dir name="Manage"><file name="Grid.php" hash="b06399e81b30ef592805277595061b38"/></dir><file name="Manage.php" hash="1ed89ca5e60aeec11a5c225bcce8e124"/></dir><dir name="Helper"><file name="Data.php" hash="67c1c6be8335c06d699f96c4387129b5"/></dir><dir name="Model"><dir name="Mysql4"><dir name="Redirection"><file name="Collection.php" hash="73bf6b8f2ddff49dac520a6f71f72502"/></dir><file name="Redirection.php" hash="21d829342e13727de44bd3c821054bd9"/><file name="Setup.php" hash="e97a5f05e8459f367c14e98e7a0b03c6"/></dir><file name="Observer.php" hash="274530b6c18c67032ec424a5a91cf452"/><file name="Redirection.php" hash="8d26f395bf5b33679b032c160152e24a"/></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Seoredirects"><file name="ManageController.php" hash="3990bc42e66fdd278ab6f45904902d56"/></dir></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="7e8d3a4c8dff9b4df9f380c284225393"/><file name="config.xml" hash="c2c33f57c4969200128f82ac063b7336"/><file name="system.xml" hash="f1eea17fce3ee314c107c8aac921e9cd"/></dir><dir name="sql"><dir name="seoredirects_setup"><file name="mysql4-install-1.0.0.php" hash="5b0366b605c861c2ae6ee5f30d1eb744"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Zero1_Seoredirects.xml" hash="dd176346dbb2abf0e20d8ea087abe2ce"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="seoredirects.xml" hash="84e2381a4d12eb22fa5e6b5b092ddef7"/></dir></dir></dir></dir></target></contents>
16
  <compatible/>
17
- <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php><extension><name>ionCube Loader</name><min></min><max></max></extension></required></dependencies>
18
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Zero1_Seoredirects</name>
4
+ <version>1.0.1</version>
5
  <stability>stable</stability>
6
  <license uri="http://shop.zero1.co.uk/LICENSE.txt">Commercial</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Manage you SEO redirects using a Google Doc</summary>
10
  <description>Manage you SEO redirects using a Google Doc</description>
11
+ <notes>Added enterprise support.</notes>
12
  <authors><author><name>Arron Moss</name><user>zero1limited</user><email>arron.moss@zero1.co.uk</email></author></authors>
13
+ <date>2012-06-06</date>
14
+ <time>15:49:43</time>
15
+ <contents><target name="magecommunity"><dir name="Zero1"><dir name="Seoredirects"><dir name="Block"><dir name="Manage"><file name="Grid.php" hash="b06399e81b30ef592805277595061b38"/></dir><file name="Manage.php" hash="1ed89ca5e60aeec11a5c225bcce8e124"/></dir><dir name="Helper"><file name="Data.php" hash="36474aca2c8e7dce3f30c398bd9c0ce0"/><file name="License.php" hash="f3a07c022c7320f4bc54e0924987b033"/></dir><dir name="Model"><dir name="Mysql4"><dir name="Redirection"><file name="Collection.php" hash="73bf6b8f2ddff49dac520a6f71f72502"/></dir><file name="Redirection.php" hash="21d829342e13727de44bd3c821054bd9"/><file name="Setup.php" hash="e97a5f05e8459f367c14e98e7a0b03c6"/></dir><file name="Observer.php" hash="68a7421e20114ab36189c652126833a9"/><file name="Redirection.php" hash="8d26f395bf5b33679b032c160152e24a"/></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Seoredirects"><file name="ManageController.php" hash="bf497a1ce5f202abd024a5736a0e8a9a"/></dir></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="7e8d3a4c8dff9b4df9f380c284225393"/><file name="config.xml" hash="ae97954390f310a297c9318763779dae"/><file name="system.xml" hash="f57542075fa866da0b34f1e93f7627c1"/></dir><dir name="sql"><dir name="seoredirects_setup"><file name="mysql4-install-1.0.0.php" hash="918bc1dee6bb2388e78b7346929916c9"/><file name="mysql4-install-1.0.1.php" hash="918bc1dee6bb2388e78b7346929916c9"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Zero1_Seoredirects.xml" hash="dd176346dbb2abf0e20d8ea087abe2ce"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="seoredirects.xml" hash="84e2381a4d12eb22fa5e6b5b092ddef7"/></dir></dir></dir></dir></target></contents>
16
  <compatible/>
17
+ <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php><extension><name>ionCube Loader</name><min></min><max></max></extension><extension><name>mcrypt</name><min></min><max></max></extension></required></dependencies>
18
  </package>