Version Notes
This extension has been in use with community and enterprise customers since November, 2012.
Download this release
Release Info
Developer | Joseph De La Cruz |
Extension | Addrexx_AddressValidation |
Version | 1.1.7 |
Comparing to | |
See all releases |
Code changes from version 1.1.6 to 1.1.7
- app/code/local/Addrexx/Helper/Data.php +5 -0
- app/code/local/Addrexx/Model/System/Config/Source/Dropdown/Values.php +18 -0
- app/code/local/Addrexx/etc/adminhtml.xml +22 -0
- app/code/local/Addrexx/etc/config.xml +72 -0
- app/code/local/Addrexx/etc/system.xml +124 -0
- app/code/local/Addrexx/sql/addsql_setup/mysql4-install-0.1.0.php +47 -0
- app/design/adminhtml/default/default/template/addrexx/common_config.phtml +19 -456
- app/design/frontend/base/default/template/addrexx/common_config.phtml +19 -456
- app/etc/modules/addrexx.xml +2 -8
- package.xml +5 -5
app/code/local/Addrexx/Helper/Data.php
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
class Addrexx_AddSQL_Helper_Data extends Mage_Core_Helper_Abstract
|
3 |
+
{
|
4 |
+
}
|
5 |
+
|
app/code/local/Addrexx/Model/System/Config/Source/Dropdown/Values.php
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Addrexx_Backend_Model_System_Config_Source_Dropdown_Values
|
4 |
+
{
|
5 |
+
public function toOptionArray()
|
6 |
+
{
|
7 |
+
return array(
|
8 |
+
array(
|
9 |
+
'value' => 'key1',
|
10 |
+
'label' => 'Value 1',
|
11 |
+
),
|
12 |
+
array(
|
13 |
+
'value' => 'key2',
|
14 |
+
'label' => 'Value 2',
|
15 |
+
),
|
16 |
+
);
|
17 |
+
}
|
18 |
+
}
|
app/code/local/Addrexx/etc/adminhtml.xml
ADDED
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<config>
|
3 |
+
<acl>
|
4 |
+
<resources>
|
5 |
+
<admin>
|
6 |
+
<children>
|
7 |
+
<system>
|
8 |
+
<children>
|
9 |
+
<config>
|
10 |
+
<children>
|
11 |
+
<tab1>
|
12 |
+
<title>Tab #1</title> <!-- Used in resources tree -->
|
13 |
+
</tab1>
|
14 |
+
</children>
|
15 |
+
</config>
|
16 |
+
</children>
|
17 |
+
</system>
|
18 |
+
</children>
|
19 |
+
</admin>
|
20 |
+
</resources>
|
21 |
+
</acl>
|
22 |
+
</config>
|
app/code/local/Addrexx/etc/config.xml
ADDED
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<config>
|
3 |
+
<modules>
|
4 |
+
<Addrexx>
|
5 |
+
<version>1.0.0</version>
|
6 |
+
</Addrexx>
|
7 |
+
</modules>
|
8 |
+
<frontend>
|
9 |
+
<layout>
|
10 |
+
<updates>
|
11 |
+
<addrexx_frontend module="addrexx_frontend">
|
12 |
+
<file>addrexx_frontend.xml</file>
|
13 |
+
</addrexx_frontend>
|
14 |
+
</updates>
|
15 |
+
</layout>
|
16 |
+
</frontend>
|
17 |
+
<adminhtml>
|
18 |
+
<layout>
|
19 |
+
<updates>
|
20 |
+
<addrexx_backend module="Addrexx_Backend">
|
21 |
+
<file>addrexx_backend.xml</file>
|
22 |
+
</addrexx_backend>
|
23 |
+
</updates>
|
24 |
+
</layout>
|
25 |
+
</adminhtml>
|
26 |
+
<global>
|
27 |
+
<helpers>
|
28 |
+
<addsql>
|
29 |
+
<class>Addrexx_Helper</class>
|
30 |
+
</addsql>
|
31 |
+
</helpers>
|
32 |
+
<resources>
|
33 |
+
<addsql_setup>
|
34 |
+
<setup>
|
35 |
+
<module>Addrexx</module>
|
36 |
+
</setup>
|
37 |
+
<connection>
|
38 |
+
<use>core_setup</use>
|
39 |
+
</connection>
|
40 |
+
</addsql_setup>
|
41 |
+
<addsql_write>
|
42 |
+
<connection>
|
43 |
+
<use>core_write</use>
|
44 |
+
</connection>
|
45 |
+
</addsql_write>
|
46 |
+
<addsql_read>
|
47 |
+
<connection>
|
48 |
+
<use>core_read</use>
|
49 |
+
</connection>
|
50 |
+
</addsql_read>
|
51 |
+
</resources>
|
52 |
+
<models>
|
53 |
+
<addrexx>
|
54 |
+
<class>Addrexx_Model</class>
|
55 |
+
</addrexx>
|
56 |
+
</models>
|
57 |
+
</global>
|
58 |
+
<default>
|
59 |
+
<tab1>
|
60 |
+
<general>
|
61 |
+
<access_token_frontend>xxxx-yyyy-1234-5678</access_token_frontend>
|
62 |
+
<access_token_admin>xxxx-yyyy-1234-5678</access_token_admin>
|
63 |
+
<active_frontend>0</active_frontend>
|
64 |
+
<active_admin>0</active_admin>
|
65 |
+
<pobox>0</pobox>
|
66 |
+
<names>1</names>
|
67 |
+
<zip4>0</zip4>
|
68 |
+
<url>www.bigfeet.com</url>
|
69 |
+
</general>
|
70 |
+
</tab1>
|
71 |
+
</default>
|
72 |
+
</config>
|
app/code/local/Addrexx/etc/system.xml
ADDED
@@ -0,0 +1,124 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<config>
|
3 |
+
<tabs>
|
4 |
+
<myconf translate="label">
|
5 |
+
<label>Addrexx</label>
|
6 |
+
<sort_order>150</sort_order>
|
7 |
+
</myconf>
|
8 |
+
</tabs>
|
9 |
+
<sections>
|
10 |
+
<tab1 translate="label" module="adminhtml">
|
11 |
+
<label>Setup</label>
|
12 |
+
<tab>myconf</tab>
|
13 |
+
<sort_order>10</sort_order>
|
14 |
+
<show_in_default>1</show_in_default>
|
15 |
+
<show_in_website>1</show_in_website>
|
16 |
+
<show_in_store>1</show_in_store>
|
17 |
+
<groups>
|
18 |
+
<general translate="label comment">
|
19 |
+
<label>General</label>
|
20 |
+
<sort_order>50</sort_order>
|
21 |
+
<show_in_default>1</show_in_default>
|
22 |
+
<show_in_website>1</show_in_website>
|
23 |
+
<show_in_store>1</show_in_store>
|
24 |
+
<comment><![CDATA[<strong>Addrexx Activation</strong></em>.<br /><br />Need help with anything? <a href="http://www.addrexx.com/contact.html" target="_blank">Don't hesitate to contact us if you have any questions.</a><br /><br />Please contact us to activate your subscription and receive your access tokens. <a href="http://www.addrexx.com/contact.html" target="_blank">Click here to turn on your subscription.</a><br />]]></comment>
|
25 |
+
<fields>
|
26 |
+
<heading_example translate="label">
|
27 |
+
<label>Access Tokens</label>
|
28 |
+
<frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
|
29 |
+
<sort_order>5</sort_order>
|
30 |
+
<show_in_default>1</show_in_default>
|
31 |
+
<show_in_website>1</show_in_website>
|
32 |
+
<show_in_store>0</show_in_store>
|
33 |
+
</heading_example>
|
34 |
+
<heading_example translate="label">
|
35 |
+
<label>Addrexx Options</label>
|
36 |
+
<frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
|
37 |
+
<sort_order>10</sort_order>
|
38 |
+
<show_in_default>1</show_in_default>
|
39 |
+
<show_in_website>1</show_in_website>
|
40 |
+
<show_in_store>0</show_in_store>
|
41 |
+
</heading_example>
|
42 |
+
<access_token_frontend translate="label">
|
43 |
+
<label>Access Token - Frontend</label>
|
44 |
+
<frontend_type>text</frontend_type>
|
45 |
+
<sort_order>6</sort_order>
|
46 |
+
<show_in_default>1</show_in_default>
|
47 |
+
<show_in_website>1</show_in_website>
|
48 |
+
<show_in_store>0</show_in_store>
|
49 |
+
<comment>Your access token provided by Addrexx. </comment>
|
50 |
+
</access_token_frontend>
|
51 |
+
<access_token_admin translate="label">
|
52 |
+
<label>Access Token - Admin Panel</label>
|
53 |
+
<frontend_type>text</frontend_type>
|
54 |
+
<sort_order>7</sort_order>
|
55 |
+
<show_in_default>1</show_in_default>
|
56 |
+
<show_in_website>1</show_in_website>
|
57 |
+
<show_in_store>0</show_in_store>
|
58 |
+
<comment>Your access token provided by Addrexx. </comment>
|
59 |
+
</access_token_admin>
|
60 |
+
<active_admin translate="label comment">
|
61 |
+
<label>Backend - Enable/Disable</label>
|
62 |
+
<frontend_type>select</frontend_type>
|
63 |
+
<sort_order>12</sort_order>
|
64 |
+
<source_model>adminhtml/system_config_source_enabledisable</source_model>
|
65 |
+
<show_in_default>1</show_in_default>
|
66 |
+
<show_in_website>1</show_in_website>
|
67 |
+
<show_in_store>1</show_in_store>
|
68 |
+
<comment>Please do not activate until you have received your access token.</comment>
|
69 |
+
</active_admin>
|
70 |
+
<active_frontend translate="label comment">
|
71 |
+
<label>Frontend - Enable/Disable</label>
|
72 |
+
<frontend_type>select</frontend_type>
|
73 |
+
<sort_order>13</sort_order>
|
74 |
+
<source_model>adminhtml/system_config_source_enabledisable</source_model>
|
75 |
+
<show_in_default>1</show_in_default>
|
76 |
+
<show_in_website>1</show_in_website>
|
77 |
+
<show_in_store>1</show_in_store>
|
78 |
+
<comment>Please do not activate until you have received your access token.</comment>
|
79 |
+
</active_frontend>
|
80 |
+
<url translate="label comment">
|
81 |
+
<label>Website Url</label>
|
82 |
+
<comment>For example - www.bigfeet.com</comment>
|
83 |
+
<frontend_type>text</frontend_type>
|
84 |
+
<sort_order>15</sort_order>
|
85 |
+
<show_in_default>1</show_in_default>
|
86 |
+
<show_in_website>1</show_in_website>
|
87 |
+
<show_in_store>1</show_in_store>
|
88 |
+
</url>
|
89 |
+
<pobox translate="label comment">
|
90 |
+
<label>Restrict PO Box</label>
|
91 |
+
<comment>Does your store ship to PO Boxes</comment>
|
92 |
+
<frontend_type>select</frontend_type>
|
93 |
+
<sort_order>16</sort_order>
|
94 |
+
<source_model>adminhtml/system_config_source_enabledisable</source_model>
|
95 |
+
<show_in_default>1</show_in_default>
|
96 |
+
<show_in_website>1</show_in_website>
|
97 |
+
<show_in_store>1</show_in_store>
|
98 |
+
</pobox>
|
99 |
+
<names translate="label comment">
|
100 |
+
<label>Autocomplete Names</label>
|
101 |
+
<comment>Enable autocomplete on names</comment>
|
102 |
+
<frontend_type>select</frontend_type>
|
103 |
+
<sort_order>18</sort_order>
|
104 |
+
<source_model>adminhtml/system_config_source_enabledisable</source_model>
|
105 |
+
<show_in_default>1</show_in_default>
|
106 |
+
<show_in_website>1</show_in_website>
|
107 |
+
<show_in_store>1</show_in_store>
|
108 |
+
</names>
|
109 |
+
<zip4 translate="label comment">
|
110 |
+
<label>Append Zip+4</label>
|
111 |
+
<comment>Append Zip+4 to Zip Code</comment>
|
112 |
+
<frontend_type>select</frontend_type>
|
113 |
+
<sort_order>19</sort_order>
|
114 |
+
<source_model>adminhtml/system_config_source_enabledisable</source_model>
|
115 |
+
<show_in_default>1</show_in_default>
|
116 |
+
<show_in_website>1</show_in_website>
|
117 |
+
<show_in_store>1</show_in_store>
|
118 |
+
</zip4>
|
119 |
+
</fields>
|
120 |
+
</general>
|
121 |
+
</groups>
|
122 |
+
</tab1>
|
123 |
+
</sections>
|
124 |
+
</config>
|
app/code/local/Addrexx/sql/addsql_setup/mysql4-install-0.1.0.php
ADDED
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
$installer = $this;
|
3 |
+
$installer->startSetup();
|
4 |
+
$sql=<<<SQLTEXT
|
5 |
+
UPDATE customer_eav_attribute
|
6 |
+
LEFT JOIN eav_attribute ON
|
7 |
+
eav_attribute.attribute_id = customer_eav_attribute.attribute_id
|
8 |
+
SET customer_eav_attribute.sort_order = 110
|
9 |
+
WHERE eav_attribute.attribute_code = 'street';
|
10 |
+
|
11 |
+
UPDATE customer_eav_attribute
|
12 |
+
LEFT JOIN eav_attribute ON
|
13 |
+
eav_attribute.attribute_id = customer_eav_attribute.attribute_id
|
14 |
+
SET customer_eav_attribute.sort_order = 100
|
15 |
+
WHERE eav_attribute.attribute_code = 'region';
|
16 |
+
|
17 |
+
UPDATE customer_eav_attribute
|
18 |
+
LEFT JOIN eav_attribute ON
|
19 |
+
eav_attribute.attribute_id = customer_eav_attribute.attribute_id
|
20 |
+
SET customer_eav_attribute.sort_order = 100
|
21 |
+
WHERE eav_attribute.attribute_code = 'region_id';
|
22 |
+
|
23 |
+
UPDATE customer_eav_attribute
|
24 |
+
LEFT JOIN eav_attribute ON
|
25 |
+
eav_attribute.attribute_id = customer_eav_attribute.attribute_id
|
26 |
+
SET customer_eav_attribute.sort_order = 90
|
27 |
+
WHERE eav_attribute.attribute_code = 'city';
|
28 |
+
|
29 |
+
UPDATE customer_eav_attribute
|
30 |
+
LEFT JOIN eav_attribute ON
|
31 |
+
eav_attribute.attribute_id = customer_eav_attribute.attribute_id
|
32 |
+
SET customer_eav_attribute.sort_order = 80
|
33 |
+
WHERE eav_attribute.attribute_code = 'postcode';
|
34 |
+
|
35 |
+
UPDATE customer_eav_attribute
|
36 |
+
LEFT JOIN eav_attribute ON
|
37 |
+
eav_attribute.attribute_id = customer_eav_attribute.attribute_id
|
38 |
+
SET customer_eav_attribute.sort_order = 70
|
39 |
+
WHERE eav_attribute.attribute_code = 'country_id';
|
40 |
+
SQLTEXT;
|
41 |
+
|
42 |
+
$installer->run($sql);
|
43 |
+
//demo
|
44 |
+
//Mage::getModel('core/url_rewrite')->setId(null);
|
45 |
+
//demo
|
46 |
+
$installer->endSetup();
|
47 |
+
|
app/design/adminhtml/default/default/template/addrexx/common_config.phtml
CHANGED
@@ -1,19 +1,18 @@
|
|
1 |
<?php
|
2 |
$conf = Mage::getStoreConfig('general');
|
3 |
$conf3 = Mage::getStoreConfig('tab1');
|
4 |
-
echo("<script>console.log('PHP:');</script>");
|
5 |
-
echo("<script>console.log($conf);</script>");
|
6 |
$activeFrontend = ($conf3['general']['active_frontend']);
|
7 |
$activeAdmin = ($conf3['general']['active_admin']);
|
|
|
8 |
$url = ($conf3['general']['url']);
|
9 |
$poX = ($conf3['general']['pobox']);
|
10 |
$nameX = ($conf3['general']['names']);
|
11 |
$zipX = ($conf3['general']['zip4']);
|
12 |
$accessTokenFrontend = ($conf3['general']['access_token_frontend']);
|
13 |
$accessTokenAdmin = ($conf3['general']['access_token_admin']);
|
14 |
-
|
15 |
?>
|
16 |
<script type="text/javascript">
|
|
|
17 |
activeFrontend = "<?= $activeFrontend ?>";
|
18 |
activeAdmin = "<?= $activeAdmin ?>";
|
19 |
url = "<?= $url ?>";
|
@@ -22,460 +21,24 @@ $accessTokenAdmin = ($conf3['general']['access_token_admin']);
|
|
22 |
zipPlusFour = "<?= $zipX ?>";
|
23 |
accessTokenFrontend = "<?= $accessTokenFrontend ?>";
|
24 |
accessTokenAdmin = "<?= $accessTokenAdmin ?>";
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
var v =
|
32 |
-
|
33 |
-
function
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
function u(n) {
|
43 |
-
l[l.length] = n
|
44 |
-
}
|
45 |
-
function p(n) {
|
46 |
-
h.className = h.className.replace(RegExp("\\b" + n + "\\b"), "")
|
47 |
-
}
|
48 |
-
function a(n, t) {
|
49 |
-
for (var i = 0, r = n.length; i < r; i++)
|
50 |
-
t.call(n, n[i], i)
|
51 |
-
}
|
52 |
-
function w() {
|
53 |
-
var t,
|
54 |
-
r,
|
55 |
-
e;
|
56 |
-
h.className = h.className.replace(/ (w-|eq-|gt-|gte-|lt-|lte-|portrait|no-portrait|landscape|no-landscape)\d+/g, ""),
|
57 |
-
t = n.innerWidth || h.clientWidth,
|
58 |
-
r = n.outerWidth || n.screen.width,
|
59 |
-
f.screen.innerWidth = t,
|
60 |
-
f.screen.outerWidth = r,
|
61 |
-
u("w-" + t),
|
62 |
-
a(i.screens, function (n) {
|
63 |
-
t > n ? (i.screensCss.gt && u("gt-" + n), i.screensCss.gte && u("gte-" + n)) : t < n ? (i.screensCss.lt && u("lt-" + n), i.screensCss.lte && u("lte-" + n)) : t === n && (i.screensCss.lte && u("lte-" + n), i.screensCss.eq && u("e-q" + n), i.screensCss.gte && u("gte-" + n))
|
64 |
-
}),
|
65 |
-
r = n.innerHeight || h.clientHeight,
|
66 |
-
e = n.outerHeight || n.screen.height,
|
67 |
-
f.screen.innerHeight = r,
|
68 |
-
f.screen.outerHeight = e,
|
69 |
-
f.feature("portrait", r > t),
|
70 |
-
f.feature("landscape", r < t)
|
71 |
-
}
|
72 |
-
function b() {
|
73 |
-
n.clearTimeout(y),
|
74 |
-
y = n.setTimeout(w, 100)
|
75 |
-
}
|
76 |
-
var v = n.document,
|
77 |
-
e = n.navigator,
|
78 |
-
g = n.location,
|
79 |
-
h = v.documentElement,
|
80 |
-
l = [],
|
81 |
-
i = {
|
82 |
-
screens : [240, 320, 480, 640, 768, 800, 1024, 1280, 1440, 1680, 1920],
|
83 |
-
screensCss : {
|
84 |
-
gt : !0,
|
85 |
-
gte : !1,
|
86 |
-
lt : !0,
|
87 |
-
lte : !1,
|
88 |
-
eq : !1
|
89 |
-
},
|
90 |
-
browsers : [{
|
91 |
-
ie : {
|
92 |
-
min : 6,
|
93 |
-
max : 10
|
94 |
-
}
|
95 |
-
}
|
96 |
-
],
|
97 |
-
browserCss : {
|
98 |
-
gt : !0,
|
99 |
-
gte : !1,
|
100 |
-
lt : !0,
|
101 |
-
lte : !1,
|
102 |
-
eq : !0
|
103 |
-
},
|
104 |
-
section : "-section",
|
105 |
-
page : "-page",
|
106 |
-
head : "head"
|
107 |
-
},
|
108 |
-
r,
|
109 |
-
f,
|
110 |
-
c,
|
111 |
-
k,
|
112 |
-
o,
|
113 |
-
d,
|
114 |
-
s,
|
115 |
-
y;
|
116 |
-
if (n.head_conf)
|
117 |
-
for (r in n.head_conf)
|
118 |
-
n.head_conf[r] !== t && (i[r] = n.head_conf[r]);
|
119 |
-
f = n[i.head] = function () {
|
120 |
-
f.ready.apply(null, arguments)
|
121 |
-
},
|
122 |
-
f.feature = function (n, t, i) {
|
123 |
-
return n ? ("[object Function]" === Object.prototype.toString.call(t) && (t = t.call()), u((t ? "" : "no-") + n), f[n] = !!t, i || (p("no-" + n), p(n), f.feature()), f) : (h.className += " " + l.join(" "), l = [], f)
|
124 |
-
},
|
125 |
-
f.feature("js", !0),
|
126 |
-
r = e.userAgent.toLowerCase(),
|
127 |
-
e = /mobile|midp/.test(r),
|
128 |
-
f.feature("mobile", e, !0),
|
129 |
-
f.feature("desktop", !e, !0),
|
130 |
-
r = /(chrome|firefox)[ \/]([\w.]+)/.exec(r) || /(iphone|ipad|ipod)(?:.*version)?[ \/]([\w.]+)/.exec(r) || /(android)(?:.*version)?[ \/]([\w.]+)/.exec(r) || /(webkit|opera)(?:.*version)?[ \/]([\w.]+)/.exec(r) || /(msie) ([\w.]+)/.exec(r) || [],
|
131 |
-
e = r[1],
|
132 |
-
r = parseFloat(r[2]);
|
133 |
-
switch (e) {
|
134 |
-
case "msie":
|
135 |
-
e = "ie",
|
136 |
-
r = v.documentMode || r;
|
137 |
-
break;
|
138 |
-
case "firefox":
|
139 |
-
e = "ff";
|
140 |
-
break;
|
141 |
-
case "ipod":
|
142 |
-
case "ipad":
|
143 |
-
case "iphone":
|
144 |
-
e = "ios";
|
145 |
-
break;
|
146 |
-
case "webkit":
|
147 |
-
e = "safari"
|
148 |
-
}
|
149 |
-
for (f.browser = {
|
150 |
-
name : e,
|
151 |
-
version : r
|
152 |
-
}, f.browser[e] = !0, c = 0, k = i.browsers.length; c < k; c++)
|
153 |
-
for (o in i.browsers[c])
|
154 |
-
if (e === o)
|
155 |
-
for (u(o), d = i.browsers[c][o].max, s = i.browsers[c][o].min; s <= d; s++)
|
156 |
-
r > s ? (i.browserCss.gt && u("gt-" + o + s), i.browserCss.gte && u("gte-" + o + s)) : r < s ? (i.browserCss.lt && u("lt-" + o + s), i.browserCss.lte && u("lte-" + o + s)) : r === s && (i.browserCss.lte && u("lte-" + o + s), i.browserCss.eq && u("eq-" + o + s), i.browserCss.gte && u("gte-" + o + s));
|
157 |
-
else
|
158 |
-
u("no-" + o);
|
159 |
-
"ie" === e && 9 > r && a("abbr article aside audio canvas details figcaption figure footer header hgroup mark meter nav output progress section summary time video".split(" "), function (n) {
|
160 |
-
v.createElement(n)
|
161 |
-
}),
|
162 |
-
a(g.pathname.split("/"), function (n, r) {
|
163 |
-
if (2 < this.length && this[r + 1] !== t)
|
164 |
-
r && u(this.slice(1, r + 1).join("-").toLowerCase() + i.section);
|
165 |
-
else {
|
166 |
-
var f = n || "index",
|
167 |
-
e = f.indexOf(".");
|
168 |
-
0 < e && (f = f.substring(0, e)),
|
169 |
-
h.id = f.toLowerCase() + i.page,
|
170 |
-
r || u("root" + i.section)
|
171 |
-
}
|
172 |
-
}),
|
173 |
-
f.screen = {
|
174 |
-
height : n.screen.height,
|
175 |
-
width : n.screen.width
|
176 |
-
},
|
177 |
-
w(),
|
178 |
-
y = 0,
|
179 |
-
n.addEventListener ? n.addEventListener("resize", b, !1) : n.attachEvent("onresize", b)
|
180 |
-
})(window), function (n, t) {
|
181 |
-
function r(n) {
|
182 |
-
var u = n.charAt(0).toUpperCase() + n.substr(1),
|
183 |
-
n = (n + " " + h.join(u + " ") + u).split(" "),
|
184 |
-
r;
|
185 |
-
n : {
|
186 |
-
for (r in n)
|
187 |
-
if (i[n[r]] !== t) {
|
188 |
-
r = !0;
|
189 |
-
break n
|
190 |
-
}
|
191 |
-
r = !1
|
192 |
-
}
|
193 |
-
return !!r
|
194 |
-
}
|
195 |
-
var o = n.document.createElement("i"),
|
196 |
-
i = o.style,
|
197 |
-
s = " -o- -moz- -ms- -webkit- -khtml- ".split(" "),
|
198 |
-
h = ["Webkit", "Moz", "O", "ms", "Khtml"],
|
199 |
-
u = n[n.head_conf && n.head_conf.head || "head"],
|
200 |
-
e = {
|
201 |
-
gradient : function () {
|
202 |
-
return i.cssText = ("background-image:" + s.join("gradient(linear,left top,right bottom,from(#9f9),to(#fff));background-image:") + s.join("linear-gradient(left top,#eee,#fff);background-image:")).slice(0, -17),
|
203 |
-
!!i.backgroundImage
|
204 |
-
},
|
205 |
-
rgba : function () {
|
206 |
-
return i.cssText = "background-color:rgba(0,0,0,0.5)",
|
207 |
-
!!i.backgroundColor
|
208 |
-
},
|
209 |
-
opacity : function () {
|
210 |
-
return "" === o.style.opacity
|
211 |
-
},
|
212 |
-
textshadow : function () {
|
213 |
-
return "" === i.textShadow
|
214 |
-
},
|
215 |
-
multiplebgs : function () {
|
216 |
-
return i.cssText = "background:url(//:),url(//:),red url(//:)",
|
217 |
-
/(url\s*\(.*?){3}/.test(i.background)
|
218 |
-
},
|
219 |
-
boxshadow : function () {
|
220 |
-
return r("boxShadow")
|
221 |
-
},
|
222 |
-
borderimage : function () {
|
223 |
-
return r("borderImage")
|
224 |
-
},
|
225 |
-
borderradius : function () {
|
226 |
-
return r("borderRadius")
|
227 |
-
},
|
228 |
-
cssreflections : function () {
|
229 |
-
return r("boxReflect")
|
230 |
-
},
|
231 |
-
csstransforms : function () {
|
232 |
-
return r("transform")
|
233 |
-
},
|
234 |
-
csstransitions : function () {
|
235 |
-
return r("transition")
|
236 |
-
},
|
237 |
-
touch : function () {
|
238 |
-
return "ontouchstart" in n
|
239 |
-
},
|
240 |
-
retina : function () {
|
241 |
-
return 1 < n.devicePixelRatio
|
242 |
-
},
|
243 |
-
fontface : function () {
|
244 |
-
var n = u.browser.version;
|
245 |
-
switch (u.browser.name) {
|
246 |
-
case "ie":
|
247 |
-
return 9 <= n;
|
248 |
-
case "chrome":
|
249 |
-
return 13 <= n;
|
250 |
-
case "ff":
|
251 |
-
return 6 <= n;
|
252 |
-
case "ios":
|
253 |
-
return 5 <= n;
|
254 |
-
case "android":
|
255 |
-
return !1;
|
256 |
-
case "webkit":
|
257 |
-
return 5.1 <= n;
|
258 |
-
case "opera":
|
259 |
-
return 10 <= n;
|
260 |
-
default:
|
261 |
-
return !1
|
262 |
-
}
|
263 |
-
}
|
264 |
-
},
|
265 |
-
f;
|
266 |
-
for (f in e)
|
267 |
-
e[f] && u.feature(f, e[f].call(), !0);
|
268 |
-
u.feature()
|
269 |
-
}
|
270 |
-
(window), function (n, t) {
|
271 |
-
function l() {}
|
272 |
-
|
273 |
-
function u(n, t) {
|
274 |
-
if (n) {
|
275 |
-
"object" == typeof n && (n = [].slice.call(n));
|
276 |
-
for (var i = 0, r = n.length; i < r; i++)
|
277 |
-
t.call(n, n[i], i)
|
278 |
-
}
|
279 |
-
}
|
280 |
-
function k(n, i) {
|
281 |
-
var r = Object.prototype.toString.call(i).slice(8, -1);
|
282 |
-
return i !== t && null !== i && r === n
|
283 |
-
}
|
284 |
-
function s(n) {
|
285 |
-
return k("Function", n)
|
286 |
-
}
|
287 |
-
function f(n) {
|
288 |
-
n = n || l,
|
289 |
-
n._done || (n(), n._done = 1)
|
290 |
-
}
|
291 |
-
function a(n) {
|
292 |
-
var t = {},
|
293 |
-
i;
|
294 |
-
if ("object" == typeof n)
|
295 |
-
for (i in n)
|
296 |
-
n[i] && (t = {
|
297 |
-
name : i,
|
298 |
-
url : n[i]
|
299 |
-
});
|
300 |
-
else
|
301 |
-
t = n.split("/"), t = t[t.length - 1], i = t.indexOf("?"), t = {
|
302 |
-
name : -1 !== i ? t.substring(0, i) : t,
|
303 |
-
url : n
|
304 |
-
};
|
305 |
-
return (n = w[t.name]) && n.url === t.url ? n : w[t.name] = t
|
306 |
-
}
|
307 |
-
function v(n) {
|
308 |
-
var n = n || w,
|
309 |
-
t;
|
310 |
-
for (t in n)
|
311 |
-
if (n.hasOwnProperty(t) && n[t].state !== b)
|
312 |
-
return !1;
|
313 |
-
return !0
|
314 |
-
}
|
315 |
-
function y(n, t) {
|
316 |
-
t = t || l,
|
317 |
-
n.state === b ? t() : n.state === ut ? i.ready(n.name, t) : n.state === rt ? n.onpreload.push(function () {
|
318 |
-
y(n, t)
|
319 |
-
}) : (n.state = ut, d(n, function () {
|
320 |
-
n.state = b,
|
321 |
-
t(),
|
322 |
-
u(h[n.name], function (n) {
|
323 |
-
f(n)
|
324 |
-
}),
|
325 |
-
o && v() && u(h.ALL, function (n) {
|
326 |
-
f(n)
|
327 |
-
})
|
328 |
-
}))
|
329 |
-
}
|
330 |
-
function d(t, i) {
|
331 |
-
var i = i || l,
|
332 |
-
u,
|
333 |
-
f;
|
334 |
-
/\.css[^\.]*$/.test(t.url) ? (u = r.createElement("link"), u.type = "text/" + (t.type || "css"), u.rel = "stylesheet", u.href = t.url) : (u = r.createElement("script"), u.type = "text/" + (t.type || "javascript"), u.src = t.url),
|
335 |
-
u.onload = u.onreadystatechange = function (t) {
|
336 |
-
t = t || n.event,
|
337 |
-
("load" === t.type || /loaded|complete/.test(u.readyState) && (!r.documentMode || 9 > r.documentMode)) && (u.onload = u.onreadystatechange = u.onerror = null, i())
|
338 |
-
},
|
339 |
-
u.onerror = function () {
|
340 |
-
u.onload = u.onreadystatechange = u.onerror = null,
|
341 |
-
i()
|
342 |
-
},
|
343 |
-
u.async = !1,
|
344 |
-
u.defer = !1,
|
345 |
-
f = r.head || r.getElementsByTagName("head")[0],
|
346 |
-
f.insertBefore(u, f.lastChild)
|
347 |
-
}
|
348 |
-
function e() {
|
349 |
-
r.body ? o || (o = !0, u(g, function (n) {
|
350 |
-
f(n)
|
351 |
-
})) : (n.clearTimeout(i.readyTimeout), i.readyTimeout = n.setTimeout(e, 50))
|
352 |
-
}
|
353 |
-
function p() {
|
354 |
-
r.addEventListener ? (r.removeEventListener("DOMContentLoaded", p, !1), e()) : "complete" === r.readyState && (r.detachEvent("onreadystatechange", p), e())
|
355 |
-
}
|
356 |
-
var r = n.document,
|
357 |
-
g = [],
|
358 |
-
nt = [],
|
359 |
-
h = {},
|
360 |
-
w = {},
|
361 |
-
ft = "async" in r.createElement("script") || "MozAppearance" in r.documentElement.style || n.opera,
|
362 |
-
tt,
|
363 |
-
o,
|
364 |
-
it = n.head_conf && n.head_conf.head || "head",
|
365 |
-
i = n[it] = n[it] || function () {
|
366 |
-
i.ready.apply(null, arguments)
|
367 |
-
},
|
368 |
-
rt = 1,
|
369 |
-
ut = 3,
|
370 |
-
b = 4,
|
371 |
-
c;
|
372 |
-
if (i.load = ft ? function () {
|
373 |
-
var t = arguments,
|
374 |
-
n = t[t.length - 1],
|
375 |
-
r = {};
|
376 |
-
return s(n) || (n = null),
|
377 |
-
u(t, function (i, u) {
|
378 |
-
i !== n && (i = a(i), r[i.name] = i, y(i, n && u === t.length - 2 ? function () {
|
379 |
-
v(r) && f(n)
|
380 |
-
}
|
381 |
-
: null))
|
382 |
-
}),
|
383 |
-
i
|
384 |
-
}
|
385 |
-
: function () {
|
386 |
-
var n = arguments,
|
387 |
-
r = [].slice.call(n, 1),
|
388 |
-
f = r[0];
|
389 |
-
return tt ? (f ? (u(r, function (n) {
|
390 |
-
if (!s(n)) {
|
391 |
-
var i = a(n);
|
392 |
-
i.state === t && (i.state = rt, i.onpreload = [], d({
|
393 |
-
url : i.url,
|
394 |
-
type : "cache"
|
395 |
-
}, function () {
|
396 |
-
i.state = 2,
|
397 |
-
u(i.onpreload, function (n) {
|
398 |
-
n.call()
|
399 |
-
})
|
400 |
-
}))
|
401 |
-
}
|
402 |
-
}), y(a(n[0]), s(f) ? f : function () {
|
403 |
-
i.load.apply(null, r)
|
404 |
-
})) : y(a(n[0])), i) : (nt.push(function () {
|
405 |
-
i.load.apply(null, n)
|
406 |
-
}), i)
|
407 |
-
}, i.js = i.load, i.test = function (n, t, r, u) {
|
408 |
-
return n = "object" == typeof n ? n : {
|
409 |
-
test : n,
|
410 |
-
success : t ? k("Array", t) ? t : [t] : !1,
|
411 |
-
failure : r ? k("Array", r) ? r : [r] : !1,
|
412 |
-
callback : u || l
|
413 |
-
},
|
414 |
-
(t = !!n.test) && n.success ? (n.success.push(n.callback), i.load.apply(null, n.success)) : !t && n.failure ? (n.failure.push(n.callback), i.load.apply(null, n.failure)) : u(),
|
415 |
-
i
|
416 |
-
}, i.ready = function (n, t) {
|
417 |
-
if (n === r)
|
418 |
-
return o ? f(t)
|
419 |
-
: g.push(t), i;
|
420 |
-
if (s(n) && (t = n, n = "ALL"), "string" != typeof n || !s(t))
|
421 |
-
return i;
|
422 |
-
var u = w[n];
|
423 |
-
return u && u.state === b || "ALL" === n && v() && o ? (f(t), i) : ((u = h[n]) ? u.push(t) : h[n] = [t], i)
|
424 |
-
}, i.ready(r, function () {
|
425 |
-
v() && u(h.ALL, function (n) {
|
426 |
-
f(n)
|
427 |
-
}),
|
428 |
-
i.feature && i.feature("domloaded", !0)
|
429 |
-
}), "complete" === r.readyState)e();
|
430 |
-
else if (r.addEventListener)
|
431 |
-
r.addEventListener("DOMContentLoaded", p, !1), n.addEventListener("load", e, !1);
|
432 |
-
else {
|
433 |
-
r.attachEvent("onreadystatechange", p),
|
434 |
-
n.attachEvent("onload", e),
|
435 |
-
c = !1;
|
436 |
-
try {
|
437 |
-
c = null == n.frameElement && r.documentElement
|
438 |
-
} catch (ot) {}
|
439 |
-
|
440 |
-
c && c.doScroll && function et() {
|
441 |
-
if (!o) {
|
442 |
-
try {
|
443 |
-
c.doScroll("left")
|
444 |
-
} catch (t) {
|
445 |
-
n.clearTimeout(i.readyTimeout),
|
446 |
-
i.readyTimeout = n.setTimeout(et, 50);
|
447 |
-
return
|
448 |
-
}
|
449 |
-
e()
|
450 |
-
}
|
451 |
-
}
|
452 |
-
()
|
453 |
-
}
|
454 |
-
setTimeout(function () {
|
455 |
-
tt = !0,
|
456 |
-
u(nt, function (n) {
|
457 |
-
n()
|
458 |
-
})
|
459 |
-
}, 300)
|
460 |
-
}
|
461 |
-
(window);
|
462 |
-
function loadaddrexx() {
|
463 |
-
head.js(
|
464 |
-
"https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js",
|
465 |
-
"https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js",
|
466 |
-
"https://s3.amazonaws.com/xxredda/" + ww + "/varxBackend.js",
|
467 |
-
"https://s3.amazonaws.com/xxredda/" + ww + "/xcorex.js"
|
468 |
-
)
|
469 |
}
|
470 |
-
|
471 |
-
|
472 |
-
window.setTimeout(function ()
|
473 |
-
{
|
474 |
-
if (activeAdmin == 1) {
|
475 |
-
loadaddrexx();
|
476 |
-
}
|
477 |
-
}, 1550);
|
478 |
-
|
479 |
</script>
|
480 |
|
481 |
|
1 |
<?php
|
2 |
$conf = Mage::getStoreConfig('general');
|
3 |
$conf3 = Mage::getStoreConfig('tab1');
|
|
|
|
|
4 |
$activeFrontend = ($conf3['general']['active_frontend']);
|
5 |
$activeAdmin = ($conf3['general']['active_admin']);
|
6 |
+
$confx = Mage::getStoreConfig('advanced/modules_disable_output/Addrexx');
|
7 |
$url = ($conf3['general']['url']);
|
8 |
$poX = ($conf3['general']['pobox']);
|
9 |
$nameX = ($conf3['general']['names']);
|
10 |
$zipX = ($conf3['general']['zip4']);
|
11 |
$accessTokenFrontend = ($conf3['general']['access_token_frontend']);
|
12 |
$accessTokenAdmin = ($conf3['general']['access_token_admin']);
|
|
|
13 |
?>
|
14 |
<script type="text/javascript">
|
15 |
+
activeAddrexx = "<?= $confx ?>";
|
16 |
activeFrontend = "<?= $activeFrontend ?>";
|
17 |
activeAdmin = "<?= $activeAdmin ?>";
|
18 |
url = "<?= $url ?>";
|
21 |
zipPlusFour = "<?= $zipX ?>";
|
22 |
accessTokenFrontend = "<?= $accessTokenFrontend ?>";
|
23 |
accessTokenAdmin = "<?= $accessTokenAdmin ?>";
|
24 |
+
var ww = location.hostname;
|
25 |
+
ww = ww.replace("www.","");
|
26 |
+
ww = ww.replace(/-/g,""); //remove dashes since function can't have them
|
27 |
+
var _DemoURL = "https://s3.amazonaws.com/xxredda";
|
28 |
+
var v = new Date().getMilliseconds();
|
29 |
+
/*! head.load - v1.0.3 */
|
30 |
+
(function(n,t){"use strict";function w(){}function u(n,t){if(n){typeof n=="object"&&(n=[].slice.call(n));for(var i=0,r=n.length;i<r;i++)t.call(n,n[i],i)}}function it(n,i){var r=Object.prototype.toString.call(i).slice(8,-1);return i!==t&&i!==null&&r===n}function s(n){return it("Function",n)}function a(n){return it("Array",n)}function et(n){var i=n.split("/"),t=i[i.length-1],r=t.indexOf("?");return r!==-1?t.substring(0,r):t}function f(n){(n=n||w,n._done)||(n(),n._done=1)}function ot(n,t,r,u){var f=typeof n=="object"?n:{test:n,success:!t?!1:a(t)?t:[t],failure:!r?!1:a(r)?r:[r],callback:u||w},e=!!f.test;return e&&!!f.success?(f.success.push(f.callback),i.load.apply(null,f.success)):e||!f.failure?u():(f.failure.push(f.callback),i.load.apply(null,f.failure)),i}function v(n){var t={},i,r;if(typeof n=="object")for(i in n)!n[i]||(t={name:i,url:n[i]});else t={name:et(n),url:n};return(r=c[t.name],r&&r.url===t.url)?r:(c[t.name]=t,t)}function y(n){n=n||c;for(var t in n)if(n.hasOwnProperty(t)&&n[t].state!==l)return!1;return!0}function st(n){n.state=ft;u(n.onpreload,function(n){n.call()})}function ht(n){n.state===t&&(n.state=nt,n.onpreload=[],rt({url:n.url,type:"cache"},function(){st(n)}))}function ct(){var n=arguments,t=n[n.length-1],r=[].slice.call(n,1),f=r[0];return(s(t)||(t=null),a(n[0]))?(n[0].push(t),i.load.apply(null,n[0]),i):(f?(u(r,function(n){s(n)||!n||ht(v(n))}),b(v(n[0]),s(f)?f:function(){i.load.apply(null,r)})):b(v(n[0])),i)}function lt(){var n=arguments,t=n[n.length-1],r={};return(s(t)||(t=null),a(n[0]))?(n[0].push(t),i.load.apply(null,n[0]),i):(u(n,function(n){n!==t&&(n=v(n),r[n.name]=n)}),u(n,function(n){n!==t&&(n=v(n),b(n,function(){y(r)&&f(t)}))}),i)}function b(n,t){if(t=t||w,n.state===l){t();return}if(n.state===tt){i.ready(n.name,t);return}if(n.state===nt){n.onpreload.push(function(){b(n,t)});return}n.state=tt;rt(n,function(){n.state=l;t();u(h[n.name],function(n){f(n)});o&&y()&&u(h.ALL,function(n){f(n)})})}function at(n){n=n||"";var t=n.split("?")[0].split(".");return t[t.length-1].toLowerCase()}function rt(t,i){function e(t){t=t||n.event;u.onload=u.onreadystatechange=u.onerror=null;i()}function o(f){f=f||n.event;(f.type==="load"||/loaded|complete/.test(u.readyState)&&(!r.documentMode||r.documentMode<9))&&(n.clearTimeout(t.errorTimeout),n.clearTimeout(t.cssTimeout),u.onload=u.onreadystatechange=u.onerror=null,i())}function s(){if(t.state!==l&&t.cssRetries<=20){for(var i=0,f=r.styleSheets.length;i<f;i++)if(r.styleSheets[i].href===u.href){o({type:"load"});return}t.cssRetries++;t.cssTimeout=n.setTimeout(s,250)}}var u,h,f;i=i||w;h=at(t.url);h==="css"?(u=r.createElement("link"),u.type="text/"+(t.type||"css"),u.rel="stylesheet",u.href=t.url,t.cssRetries=0,t.cssTimeout=n.setTimeout(s,500)):(u=r.createElement("script"),u.type="text/"+(t.type||"javascript"),u.src=t.url);u.onload=u.onreadystatechange=o;u.onerror=e;u.async=!1;u.defer=!1;t.errorTimeout=n.setTimeout(function(){e({type:"timeout"})},7e3);f=r.head||r.getElementsByTagName("head")[0];f.insertBefore(u,f.lastChild)}function vt(){for(var t,u=r.getElementsByTagName("script"),n=0,f=u.length;n<f;n++)if(t=u[n].getAttribute("data-headjs-load"),!!t){i.load(t);return}}function yt(n,t){var v,p,e;return n===r?(o?f(t):d.push(t),i):(s(n)&&(t=n,n="ALL"),a(n))?(v={},u(n,function(n){v[n]=c[n];i.ready(n,function(){y(v)&&f(t)})}),i):typeof n!="string"||!s(t)?i:(p=c[n],p&&p.state===l||n==="ALL"&&y()&&o)?(f(t),i):(e=h[n],e?e.push(t):e=h[n]=[t],i)}function e(){if(!r.body){n.clearTimeout(i.readyTimeout);i.readyTimeout=n.setTimeout(e,50);return}o||(o=!0,vt(),u(d,function(n){f(n)}))}function k(){r.addEventListener?(r.removeEventListener("DOMContentLoaded",k,!1),e()):r.readyState==="complete"&&(r.detachEvent("onreadystatechange",k),e())}var r=n.document,d=[],h={},c={},ut="async"in r.createElement("script")||"MozAppearance"in r.documentElement.style||n.opera,o,g=n.head_conf&&n.head_conf.head||"head",i=n[g]=n[g]||function(){i.ready.apply(null,arguments)},nt=1,ft=2,tt=3,l=4,p;if(r.readyState==="complete")e();else if(r.addEventListener)r.addEventListener("DOMContentLoaded",k,!1),n.addEventListener("load",e,!1);else{r.attachEvent("onreadystatechange",k);n.attachEvent("onload",e);p=!1;try{p=!n.frameElement&&r.documentElement}catch(wt){}p&&p.doScroll&&function pt(){if(!o){try{p.doScroll("left")}catch(t){n.clearTimeout(i.readyTimeout);i.readyTimeout=n.setTimeout(pt,50);return}e()}}()}i.load=i.js=ut?lt:ct;i.test=ot;i.ready=yt;i.ready(r,function(){y()&&u(h.ALL,function(n){f(n)});i.feature&&i.feature("domloaded",!0)})})(window);
|
31 |
+
if (activeAdmin == 1 && activeAddrexx == 0) {
|
32 |
+
head.ready(document, function() {
|
33 |
+
head.load(
|
34 |
+
"https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js",
|
35 |
+
"https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js",
|
36 |
+
"https://s3.amazonaws.com/xxredda/" + ww + "/varxBackend.js",
|
37 |
+
"https://s3.amazonaws.com/xxredda/" + ww + "/xcorex.js", function() {
|
38 |
+
// Call a function when done
|
39 |
+
});
|
40 |
+
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
</script>
|
43 |
|
44 |
|
app/design/frontend/base/default/template/addrexx/common_config.phtml
CHANGED
@@ -1,19 +1,18 @@
|
|
1 |
<?php
|
2 |
$conf = Mage::getStoreConfig('general');
|
3 |
$conf3 = Mage::getStoreConfig('tab1');
|
4 |
-
echo("<script>console.log('PHP:');</script>");
|
5 |
-
echo("<script>console.log($conf);</script>");
|
6 |
$activeFrontend = ($conf3['general']['active_frontend']);
|
7 |
$activeAdmin = ($conf3['general']['active_admin']);
|
|
|
8 |
$url = ($conf3['general']['url']);
|
9 |
$poX = ($conf3['general']['pobox']);
|
10 |
$nameX = ($conf3['general']['names']);
|
11 |
$zipX = ($conf3['general']['zip4']);
|
12 |
$accessTokenFrontend = ($conf3['general']['access_token_frontend']);
|
13 |
$accessTokenAdmin = ($conf3['general']['access_token_admin']);
|
14 |
-
|
15 |
?>
|
16 |
<script type="text/javascript">
|
|
|
17 |
activeFrontend = "<?= $activeFrontend ?>";
|
18 |
activeAdmin = "<?= $activeAdmin ?>";
|
19 |
url = "<?= $url ?>";
|
@@ -22,460 +21,24 @@ $accessTokenAdmin = ($conf3['general']['access_token_admin']);
|
|
22 |
zipPlusFour = "<?= $zipX ?>";
|
23 |
accessTokenFrontend = "<?= $accessTokenFrontend ?>";
|
24 |
accessTokenAdmin = "<?= $accessTokenAdmin ?>";
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
var v =
|
32 |
-
|
33 |
-
function
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
function u(n) {
|
43 |
-
l[l.length] = n
|
44 |
-
}
|
45 |
-
function p(n) {
|
46 |
-
h.className = h.className.replace(RegExp("\\b" + n + "\\b"), "")
|
47 |
-
}
|
48 |
-
function a(n, t) {
|
49 |
-
for (var i = 0, r = n.length; i < r; i++)
|
50 |
-
t.call(n, n[i], i)
|
51 |
-
}
|
52 |
-
function w() {
|
53 |
-
var t,
|
54 |
-
r,
|
55 |
-
e;
|
56 |
-
h.className = h.className.replace(/ (w-|eq-|gt-|gte-|lt-|lte-|portrait|no-portrait|landscape|no-landscape)\d+/g, ""),
|
57 |
-
t = n.innerWidth || h.clientWidth,
|
58 |
-
r = n.outerWidth || n.screen.width,
|
59 |
-
f.screen.innerWidth = t,
|
60 |
-
f.screen.outerWidth = r,
|
61 |
-
u("w-" + t),
|
62 |
-
a(i.screens, function (n) {
|
63 |
-
t > n ? (i.screensCss.gt && u("gt-" + n), i.screensCss.gte && u("gte-" + n)) : t < n ? (i.screensCss.lt && u("lt-" + n), i.screensCss.lte && u("lte-" + n)) : t === n && (i.screensCss.lte && u("lte-" + n), i.screensCss.eq && u("e-q" + n), i.screensCss.gte && u("gte-" + n))
|
64 |
-
}),
|
65 |
-
r = n.innerHeight || h.clientHeight,
|
66 |
-
e = n.outerHeight || n.screen.height,
|
67 |
-
f.screen.innerHeight = r,
|
68 |
-
f.screen.outerHeight = e,
|
69 |
-
f.feature("portrait", r > t),
|
70 |
-
f.feature("landscape", r < t)
|
71 |
-
}
|
72 |
-
function b() {
|
73 |
-
n.clearTimeout(y),
|
74 |
-
y = n.setTimeout(w, 100)
|
75 |
-
}
|
76 |
-
var v = n.document,
|
77 |
-
e = n.navigator,
|
78 |
-
g = n.location,
|
79 |
-
h = v.documentElement,
|
80 |
-
l = [],
|
81 |
-
i = {
|
82 |
-
screens : [240, 320, 480, 640, 768, 800, 1024, 1280, 1440, 1680, 1920],
|
83 |
-
screensCss : {
|
84 |
-
gt : !0,
|
85 |
-
gte : !1,
|
86 |
-
lt : !0,
|
87 |
-
lte : !1,
|
88 |
-
eq : !1
|
89 |
-
},
|
90 |
-
browsers : [{
|
91 |
-
ie : {
|
92 |
-
min : 6,
|
93 |
-
max : 10
|
94 |
-
}
|
95 |
-
}
|
96 |
-
],
|
97 |
-
browserCss : {
|
98 |
-
gt : !0,
|
99 |
-
gte : !1,
|
100 |
-
lt : !0,
|
101 |
-
lte : !1,
|
102 |
-
eq : !0
|
103 |
-
},
|
104 |
-
section : "-section",
|
105 |
-
page : "-page",
|
106 |
-
head : "head"
|
107 |
-
},
|
108 |
-
r,
|
109 |
-
f,
|
110 |
-
c,
|
111 |
-
k,
|
112 |
-
o,
|
113 |
-
d,
|
114 |
-
s,
|
115 |
-
y;
|
116 |
-
if (n.head_conf)
|
117 |
-
for (r in n.head_conf)
|
118 |
-
n.head_conf[r] !== t && (i[r] = n.head_conf[r]);
|
119 |
-
f = n[i.head] = function () {
|
120 |
-
f.ready.apply(null, arguments)
|
121 |
-
},
|
122 |
-
f.feature = function (n, t, i) {
|
123 |
-
return n ? ("[object Function]" === Object.prototype.toString.call(t) && (t = t.call()), u((t ? "" : "no-") + n), f[n] = !!t, i || (p("no-" + n), p(n), f.feature()), f) : (h.className += " " + l.join(" "), l = [], f)
|
124 |
-
},
|
125 |
-
f.feature("js", !0),
|
126 |
-
r = e.userAgent.toLowerCase(),
|
127 |
-
e = /mobile|midp/.test(r),
|
128 |
-
f.feature("mobile", e, !0),
|
129 |
-
f.feature("desktop", !e, !0),
|
130 |
-
r = /(chrome|firefox)[ \/]([\w.]+)/.exec(r) || /(iphone|ipad|ipod)(?:.*version)?[ \/]([\w.]+)/.exec(r) || /(android)(?:.*version)?[ \/]([\w.]+)/.exec(r) || /(webkit|opera)(?:.*version)?[ \/]([\w.]+)/.exec(r) || /(msie) ([\w.]+)/.exec(r) || [],
|
131 |
-
e = r[1],
|
132 |
-
r = parseFloat(r[2]);
|
133 |
-
switch (e) {
|
134 |
-
case "msie":
|
135 |
-
e = "ie",
|
136 |
-
r = v.documentMode || r;
|
137 |
-
break;
|
138 |
-
case "firefox":
|
139 |
-
e = "ff";
|
140 |
-
break;
|
141 |
-
case "ipod":
|
142 |
-
case "ipad":
|
143 |
-
case "iphone":
|
144 |
-
e = "ios";
|
145 |
-
break;
|
146 |
-
case "webkit":
|
147 |
-
e = "safari"
|
148 |
-
}
|
149 |
-
for (f.browser = {
|
150 |
-
name : e,
|
151 |
-
version : r
|
152 |
-
}, f.browser[e] = !0, c = 0, k = i.browsers.length; c < k; c++)
|
153 |
-
for (o in i.browsers[c])
|
154 |
-
if (e === o)
|
155 |
-
for (u(o), d = i.browsers[c][o].max, s = i.browsers[c][o].min; s <= d; s++)
|
156 |
-
r > s ? (i.browserCss.gt && u("gt-" + o + s), i.browserCss.gte && u("gte-" + o + s)) : r < s ? (i.browserCss.lt && u("lt-" + o + s), i.browserCss.lte && u("lte-" + o + s)) : r === s && (i.browserCss.lte && u("lte-" + o + s), i.browserCss.eq && u("eq-" + o + s), i.browserCss.gte && u("gte-" + o + s));
|
157 |
-
else
|
158 |
-
u("no-" + o);
|
159 |
-
"ie" === e && 9 > r && a("abbr article aside audio canvas details figcaption figure footer header hgroup mark meter nav output progress section summary time video".split(" "), function (n) {
|
160 |
-
v.createElement(n)
|
161 |
-
}),
|
162 |
-
a(g.pathname.split("/"), function (n, r) {
|
163 |
-
if (2 < this.length && this[r + 1] !== t)
|
164 |
-
r && u(this.slice(1, r + 1).join("-").toLowerCase() + i.section);
|
165 |
-
else {
|
166 |
-
var f = n || "index",
|
167 |
-
e = f.indexOf(".");
|
168 |
-
0 < e && (f = f.substring(0, e)),
|
169 |
-
h.id = f.toLowerCase() + i.page,
|
170 |
-
r || u("root" + i.section)
|
171 |
-
}
|
172 |
-
}),
|
173 |
-
f.screen = {
|
174 |
-
height : n.screen.height,
|
175 |
-
width : n.screen.width
|
176 |
-
},
|
177 |
-
w(),
|
178 |
-
y = 0,
|
179 |
-
n.addEventListener ? n.addEventListener("resize", b, !1) : n.attachEvent("onresize", b)
|
180 |
-
})(window), function (n, t) {
|
181 |
-
function r(n) {
|
182 |
-
var u = n.charAt(0).toUpperCase() + n.substr(1),
|
183 |
-
n = (n + " " + h.join(u + " ") + u).split(" "),
|
184 |
-
r;
|
185 |
-
n : {
|
186 |
-
for (r in n)
|
187 |
-
if (i[n[r]] !== t) {
|
188 |
-
r = !0;
|
189 |
-
break n
|
190 |
-
}
|
191 |
-
r = !1
|
192 |
-
}
|
193 |
-
return !!r
|
194 |
-
}
|
195 |
-
var o = n.document.createElement("i"),
|
196 |
-
i = o.style,
|
197 |
-
s = " -o- -moz- -ms- -webkit- -khtml- ".split(" "),
|
198 |
-
h = ["Webkit", "Moz", "O", "ms", "Khtml"],
|
199 |
-
u = n[n.head_conf && n.head_conf.head || "head"],
|
200 |
-
e = {
|
201 |
-
gradient : function () {
|
202 |
-
return i.cssText = ("background-image:" + s.join("gradient(linear,left top,right bottom,from(#9f9),to(#fff));background-image:") + s.join("linear-gradient(left top,#eee,#fff);background-image:")).slice(0, -17),
|
203 |
-
!!i.backgroundImage
|
204 |
-
},
|
205 |
-
rgba : function () {
|
206 |
-
return i.cssText = "background-color:rgba(0,0,0,0.5)",
|
207 |
-
!!i.backgroundColor
|
208 |
-
},
|
209 |
-
opacity : function () {
|
210 |
-
return "" === o.style.opacity
|
211 |
-
},
|
212 |
-
textshadow : function () {
|
213 |
-
return "" === i.textShadow
|
214 |
-
},
|
215 |
-
multiplebgs : function () {
|
216 |
-
return i.cssText = "background:url(//:),url(//:),red url(//:)",
|
217 |
-
/(url\s*\(.*?){3}/.test(i.background)
|
218 |
-
},
|
219 |
-
boxshadow : function () {
|
220 |
-
return r("boxShadow")
|
221 |
-
},
|
222 |
-
borderimage : function () {
|
223 |
-
return r("borderImage")
|
224 |
-
},
|
225 |
-
borderradius : function () {
|
226 |
-
return r("borderRadius")
|
227 |
-
},
|
228 |
-
cssreflections : function () {
|
229 |
-
return r("boxReflect")
|
230 |
-
},
|
231 |
-
csstransforms : function () {
|
232 |
-
return r("transform")
|
233 |
-
},
|
234 |
-
csstransitions : function () {
|
235 |
-
return r("transition")
|
236 |
-
},
|
237 |
-
touch : function () {
|
238 |
-
return "ontouchstart" in n
|
239 |
-
},
|
240 |
-
retina : function () {
|
241 |
-
return 1 < n.devicePixelRatio
|
242 |
-
},
|
243 |
-
fontface : function () {
|
244 |
-
var n = u.browser.version;
|
245 |
-
switch (u.browser.name) {
|
246 |
-
case "ie":
|
247 |
-
return 9 <= n;
|
248 |
-
case "chrome":
|
249 |
-
return 13 <= n;
|
250 |
-
case "ff":
|
251 |
-
return 6 <= n;
|
252 |
-
case "ios":
|
253 |
-
return 5 <= n;
|
254 |
-
case "android":
|
255 |
-
return !1;
|
256 |
-
case "webkit":
|
257 |
-
return 5.1 <= n;
|
258 |
-
case "opera":
|
259 |
-
return 10 <= n;
|
260 |
-
default:
|
261 |
-
return !1
|
262 |
-
}
|
263 |
-
}
|
264 |
-
},
|
265 |
-
f;
|
266 |
-
for (f in e)
|
267 |
-
e[f] && u.feature(f, e[f].call(), !0);
|
268 |
-
u.feature()
|
269 |
-
}
|
270 |
-
(window), function (n, t) {
|
271 |
-
function l() {}
|
272 |
-
|
273 |
-
function u(n, t) {
|
274 |
-
if (n) {
|
275 |
-
"object" == typeof n && (n = [].slice.call(n));
|
276 |
-
for (var i = 0, r = n.length; i < r; i++)
|
277 |
-
t.call(n, n[i], i)
|
278 |
-
}
|
279 |
-
}
|
280 |
-
function k(n, i) {
|
281 |
-
var r = Object.prototype.toString.call(i).slice(8, -1);
|
282 |
-
return i !== t && null !== i && r === n
|
283 |
-
}
|
284 |
-
function s(n) {
|
285 |
-
return k("Function", n)
|
286 |
-
}
|
287 |
-
function f(n) {
|
288 |
-
n = n || l,
|
289 |
-
n._done || (n(), n._done = 1)
|
290 |
-
}
|
291 |
-
function a(n) {
|
292 |
-
var t = {},
|
293 |
-
i;
|
294 |
-
if ("object" == typeof n)
|
295 |
-
for (i in n)
|
296 |
-
n[i] && (t = {
|
297 |
-
name : i,
|
298 |
-
url : n[i]
|
299 |
-
});
|
300 |
-
else
|
301 |
-
t = n.split("/"), t = t[t.length - 1], i = t.indexOf("?"), t = {
|
302 |
-
name : -1 !== i ? t.substring(0, i) : t,
|
303 |
-
url : n
|
304 |
-
};
|
305 |
-
return (n = w[t.name]) && n.url === t.url ? n : w[t.name] = t
|
306 |
-
}
|
307 |
-
function v(n) {
|
308 |
-
var n = n || w,
|
309 |
-
t;
|
310 |
-
for (t in n)
|
311 |
-
if (n.hasOwnProperty(t) && n[t].state !== b)
|
312 |
-
return !1;
|
313 |
-
return !0
|
314 |
-
}
|
315 |
-
function y(n, t) {
|
316 |
-
t = t || l,
|
317 |
-
n.state === b ? t() : n.state === ut ? i.ready(n.name, t) : n.state === rt ? n.onpreload.push(function () {
|
318 |
-
y(n, t)
|
319 |
-
}) : (n.state = ut, d(n, function () {
|
320 |
-
n.state = b,
|
321 |
-
t(),
|
322 |
-
u(h[n.name], function (n) {
|
323 |
-
f(n)
|
324 |
-
}),
|
325 |
-
o && v() && u(h.ALL, function (n) {
|
326 |
-
f(n)
|
327 |
-
})
|
328 |
-
}))
|
329 |
-
}
|
330 |
-
function d(t, i) {
|
331 |
-
var i = i || l,
|
332 |
-
u,
|
333 |
-
f;
|
334 |
-
/\.css[^\.]*$/.test(t.url) ? (u = r.createElement("link"), u.type = "text/" + (t.type || "css"), u.rel = "stylesheet", u.href = t.url) : (u = r.createElement("script"), u.type = "text/" + (t.type || "javascript"), u.src = t.url),
|
335 |
-
u.onload = u.onreadystatechange = function (t) {
|
336 |
-
t = t || n.event,
|
337 |
-
("load" === t.type || /loaded|complete/.test(u.readyState) && (!r.documentMode || 9 > r.documentMode)) && (u.onload = u.onreadystatechange = u.onerror = null, i())
|
338 |
-
},
|
339 |
-
u.onerror = function () {
|
340 |
-
u.onload = u.onreadystatechange = u.onerror = null,
|
341 |
-
i()
|
342 |
-
},
|
343 |
-
u.async = !1,
|
344 |
-
u.defer = !1,
|
345 |
-
f = r.head || r.getElementsByTagName("head")[0],
|
346 |
-
f.insertBefore(u, f.lastChild)
|
347 |
-
}
|
348 |
-
function e() {
|
349 |
-
r.body ? o || (o = !0, u(g, function (n) {
|
350 |
-
f(n)
|
351 |
-
})) : (n.clearTimeout(i.readyTimeout), i.readyTimeout = n.setTimeout(e, 50))
|
352 |
-
}
|
353 |
-
function p() {
|
354 |
-
r.addEventListener ? (r.removeEventListener("DOMContentLoaded", p, !1), e()) : "complete" === r.readyState && (r.detachEvent("onreadystatechange", p), e())
|
355 |
-
}
|
356 |
-
var r = n.document,
|
357 |
-
g = [],
|
358 |
-
nt = [],
|
359 |
-
h = {},
|
360 |
-
w = {},
|
361 |
-
ft = "async" in r.createElement("script") || "MozAppearance" in r.documentElement.style || n.opera,
|
362 |
-
tt,
|
363 |
-
o,
|
364 |
-
it = n.head_conf && n.head_conf.head || "head",
|
365 |
-
i = n[it] = n[it] || function () {
|
366 |
-
i.ready.apply(null, arguments)
|
367 |
-
},
|
368 |
-
rt = 1,
|
369 |
-
ut = 3,
|
370 |
-
b = 4,
|
371 |
-
c;
|
372 |
-
if (i.load = ft ? function () {
|
373 |
-
var t = arguments,
|
374 |
-
n = t[t.length - 1],
|
375 |
-
r = {};
|
376 |
-
return s(n) || (n = null),
|
377 |
-
u(t, function (i, u) {
|
378 |
-
i !== n && (i = a(i), r[i.name] = i, y(i, n && u === t.length - 2 ? function () {
|
379 |
-
v(r) && f(n)
|
380 |
-
}
|
381 |
-
: null))
|
382 |
-
}),
|
383 |
-
i
|
384 |
-
}
|
385 |
-
: function () {
|
386 |
-
var n = arguments,
|
387 |
-
r = [].slice.call(n, 1),
|
388 |
-
f = r[0];
|
389 |
-
return tt ? (f ? (u(r, function (n) {
|
390 |
-
if (!s(n)) {
|
391 |
-
var i = a(n);
|
392 |
-
i.state === t && (i.state = rt, i.onpreload = [], d({
|
393 |
-
url : i.url,
|
394 |
-
type : "cache"
|
395 |
-
}, function () {
|
396 |
-
i.state = 2,
|
397 |
-
u(i.onpreload, function (n) {
|
398 |
-
n.call()
|
399 |
-
})
|
400 |
-
}))
|
401 |
-
}
|
402 |
-
}), y(a(n[0]), s(f) ? f : function () {
|
403 |
-
i.load.apply(null, r)
|
404 |
-
})) : y(a(n[0])), i) : (nt.push(function () {
|
405 |
-
i.load.apply(null, n)
|
406 |
-
}), i)
|
407 |
-
}, i.js = i.load, i.test = function (n, t, r, u) {
|
408 |
-
return n = "object" == typeof n ? n : {
|
409 |
-
test : n,
|
410 |
-
success : t ? k("Array", t) ? t : [t] : !1,
|
411 |
-
failure : r ? k("Array", r) ? r : [r] : !1,
|
412 |
-
callback : u || l
|
413 |
-
},
|
414 |
-
(t = !!n.test) && n.success ? (n.success.push(n.callback), i.load.apply(null, n.success)) : !t && n.failure ? (n.failure.push(n.callback), i.load.apply(null, n.failure)) : u(),
|
415 |
-
i
|
416 |
-
}, i.ready = function (n, t) {
|
417 |
-
if (n === r)
|
418 |
-
return o ? f(t)
|
419 |
-
: g.push(t), i;
|
420 |
-
if (s(n) && (t = n, n = "ALL"), "string" != typeof n || !s(t))
|
421 |
-
return i;
|
422 |
-
var u = w[n];
|
423 |
-
return u && u.state === b || "ALL" === n && v() && o ? (f(t), i) : ((u = h[n]) ? u.push(t) : h[n] = [t], i)
|
424 |
-
}, i.ready(r, function () {
|
425 |
-
v() && u(h.ALL, function (n) {
|
426 |
-
f(n)
|
427 |
-
}),
|
428 |
-
i.feature && i.feature("domloaded", !0)
|
429 |
-
}), "complete" === r.readyState)e();
|
430 |
-
else if (r.addEventListener)
|
431 |
-
r.addEventListener("DOMContentLoaded", p, !1), n.addEventListener("load", e, !1);
|
432 |
-
else {
|
433 |
-
r.attachEvent("onreadystatechange", p),
|
434 |
-
n.attachEvent("onload", e),
|
435 |
-
c = !1;
|
436 |
-
try {
|
437 |
-
c = null == n.frameElement && r.documentElement
|
438 |
-
} catch (ot) {}
|
439 |
-
|
440 |
-
c && c.doScroll && function et() {
|
441 |
-
if (!o) {
|
442 |
-
try {
|
443 |
-
c.doScroll("left")
|
444 |
-
} catch (t) {
|
445 |
-
n.clearTimeout(i.readyTimeout),
|
446 |
-
i.readyTimeout = n.setTimeout(et, 50);
|
447 |
-
return
|
448 |
-
}
|
449 |
-
e()
|
450 |
-
}
|
451 |
-
}
|
452 |
-
()
|
453 |
-
}
|
454 |
-
setTimeout(function () {
|
455 |
-
tt = !0,
|
456 |
-
u(nt, function (n) {
|
457 |
-
n()
|
458 |
-
})
|
459 |
-
}, 300)
|
460 |
-
}
|
461 |
-
(window);
|
462 |
-
function loadaddrexx() {
|
463 |
-
head.js(
|
464 |
-
"https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js",
|
465 |
-
"https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js",
|
466 |
-
"https://s3.amazonaws.com/xxredda/" + ww + "/varxBackend.js",
|
467 |
-
"https://s3.amazonaws.com/xxredda/" + ww + "/xcorex.js"
|
468 |
-
)
|
469 |
}
|
470 |
-
|
471 |
-
|
472 |
-
window.setTimeout(function ()
|
473 |
-
{
|
474 |
-
if (activeAdmin == 1) {
|
475 |
-
loadaddrexx();
|
476 |
-
}
|
477 |
-
}, 1550);
|
478 |
-
|
479 |
</script>
|
480 |
|
481 |
|
1 |
<?php
|
2 |
$conf = Mage::getStoreConfig('general');
|
3 |
$conf3 = Mage::getStoreConfig('tab1');
|
|
|
|
|
4 |
$activeFrontend = ($conf3['general']['active_frontend']);
|
5 |
$activeAdmin = ($conf3['general']['active_admin']);
|
6 |
+
$confx = Mage::getStoreConfig('advanced/modules_disable_output/Addrexx');
|
7 |
$url = ($conf3['general']['url']);
|
8 |
$poX = ($conf3['general']['pobox']);
|
9 |
$nameX = ($conf3['general']['names']);
|
10 |
$zipX = ($conf3['general']['zip4']);
|
11 |
$accessTokenFrontend = ($conf3['general']['access_token_frontend']);
|
12 |
$accessTokenAdmin = ($conf3['general']['access_token_admin']);
|
|
|
13 |
?>
|
14 |
<script type="text/javascript">
|
15 |
+
activeAddrexx = "<?= $confx ?>";
|
16 |
activeFrontend = "<?= $activeFrontend ?>";
|
17 |
activeAdmin = "<?= $activeAdmin ?>";
|
18 |
url = "<?= $url ?>";
|
21 |
zipPlusFour = "<?= $zipX ?>";
|
22 |
accessTokenFrontend = "<?= $accessTokenFrontend ?>";
|
23 |
accessTokenAdmin = "<?= $accessTokenAdmin ?>";
|
24 |
+
var ww = location.hostname;
|
25 |
+
ww = ww.replace("www.","");
|
26 |
+
ww = ww.replace(/-/g,""); //remove dashes since function can't have them
|
27 |
+
var _DemoURL = "https://s3.amazonaws.com/xxredda";
|
28 |
+
var v = new Date().getMilliseconds();
|
29 |
+
/*! head.load - v1.0.3 */
|
30 |
+
(function(n,t){"use strict";function w(){}function u(n,t){if(n){typeof n=="object"&&(n=[].slice.call(n));for(var i=0,r=n.length;i<r;i++)t.call(n,n[i],i)}}function it(n,i){var r=Object.prototype.toString.call(i).slice(8,-1);return i!==t&&i!==null&&r===n}function s(n){return it("Function",n)}function a(n){return it("Array",n)}function et(n){var i=n.split("/"),t=i[i.length-1],r=t.indexOf("?");return r!==-1?t.substring(0,r):t}function f(n){(n=n||w,n._done)||(n(),n._done=1)}function ot(n,t,r,u){var f=typeof n=="object"?n:{test:n,success:!t?!1:a(t)?t:[t],failure:!r?!1:a(r)?r:[r],callback:u||w},e=!!f.test;return e&&!!f.success?(f.success.push(f.callback),i.load.apply(null,f.success)):e||!f.failure?u():(f.failure.push(f.callback),i.load.apply(null,f.failure)),i}function v(n){var t={},i,r;if(typeof n=="object")for(i in n)!n[i]||(t={name:i,url:n[i]});else t={name:et(n),url:n};return(r=c[t.name],r&&r.url===t.url)?r:(c[t.name]=t,t)}function y(n){n=n||c;for(var t in n)if(n.hasOwnProperty(t)&&n[t].state!==l)return!1;return!0}function st(n){n.state=ft;u(n.onpreload,function(n){n.call()})}function ht(n){n.state===t&&(n.state=nt,n.onpreload=[],rt({url:n.url,type:"cache"},function(){st(n)}))}function ct(){var n=arguments,t=n[n.length-1],r=[].slice.call(n,1),f=r[0];return(s(t)||(t=null),a(n[0]))?(n[0].push(t),i.load.apply(null,n[0]),i):(f?(u(r,function(n){s(n)||!n||ht(v(n))}),b(v(n[0]),s(f)?f:function(){i.load.apply(null,r)})):b(v(n[0])),i)}function lt(){var n=arguments,t=n[n.length-1],r={};return(s(t)||(t=null),a(n[0]))?(n[0].push(t),i.load.apply(null,n[0]),i):(u(n,function(n){n!==t&&(n=v(n),r[n.name]=n)}),u(n,function(n){n!==t&&(n=v(n),b(n,function(){y(r)&&f(t)}))}),i)}function b(n,t){if(t=t||w,n.state===l){t();return}if(n.state===tt){i.ready(n.name,t);return}if(n.state===nt){n.onpreload.push(function(){b(n,t)});return}n.state=tt;rt(n,function(){n.state=l;t();u(h[n.name],function(n){f(n)});o&&y()&&u(h.ALL,function(n){f(n)})})}function at(n){n=n||"";var t=n.split("?")[0].split(".");return t[t.length-1].toLowerCase()}function rt(t,i){function e(t){t=t||n.event;u.onload=u.onreadystatechange=u.onerror=null;i()}function o(f){f=f||n.event;(f.type==="load"||/loaded|complete/.test(u.readyState)&&(!r.documentMode||r.documentMode<9))&&(n.clearTimeout(t.errorTimeout),n.clearTimeout(t.cssTimeout),u.onload=u.onreadystatechange=u.onerror=null,i())}function s(){if(t.state!==l&&t.cssRetries<=20){for(var i=0,f=r.styleSheets.length;i<f;i++)if(r.styleSheets[i].href===u.href){o({type:"load"});return}t.cssRetries++;t.cssTimeout=n.setTimeout(s,250)}}var u,h,f;i=i||w;h=at(t.url);h==="css"?(u=r.createElement("link"),u.type="text/"+(t.type||"css"),u.rel="stylesheet",u.href=t.url,t.cssRetries=0,t.cssTimeout=n.setTimeout(s,500)):(u=r.createElement("script"),u.type="text/"+(t.type||"javascript"),u.src=t.url);u.onload=u.onreadystatechange=o;u.onerror=e;u.async=!1;u.defer=!1;t.errorTimeout=n.setTimeout(function(){e({type:"timeout"})},7e3);f=r.head||r.getElementsByTagName("head")[0];f.insertBefore(u,f.lastChild)}function vt(){for(var t,u=r.getElementsByTagName("script"),n=0,f=u.length;n<f;n++)if(t=u[n].getAttribute("data-headjs-load"),!!t){i.load(t);return}}function yt(n,t){var v,p,e;return n===r?(o?f(t):d.push(t),i):(s(n)&&(t=n,n="ALL"),a(n))?(v={},u(n,function(n){v[n]=c[n];i.ready(n,function(){y(v)&&f(t)})}),i):typeof n!="string"||!s(t)?i:(p=c[n],p&&p.state===l||n==="ALL"&&y()&&o)?(f(t),i):(e=h[n],e?e.push(t):e=h[n]=[t],i)}function e(){if(!r.body){n.clearTimeout(i.readyTimeout);i.readyTimeout=n.setTimeout(e,50);return}o||(o=!0,vt(),u(d,function(n){f(n)}))}function k(){r.addEventListener?(r.removeEventListener("DOMContentLoaded",k,!1),e()):r.readyState==="complete"&&(r.detachEvent("onreadystatechange",k),e())}var r=n.document,d=[],h={},c={},ut="async"in r.createElement("script")||"MozAppearance"in r.documentElement.style||n.opera,o,g=n.head_conf&&n.head_conf.head||"head",i=n[g]=n[g]||function(){i.ready.apply(null,arguments)},nt=1,ft=2,tt=3,l=4,p;if(r.readyState==="complete")e();else if(r.addEventListener)r.addEventListener("DOMContentLoaded",k,!1),n.addEventListener("load",e,!1);else{r.attachEvent("onreadystatechange",k);n.attachEvent("onload",e);p=!1;try{p=!n.frameElement&&r.documentElement}catch(wt){}p&&p.doScroll&&function pt(){if(!o){try{p.doScroll("left")}catch(t){n.clearTimeout(i.readyTimeout);i.readyTimeout=n.setTimeout(pt,50);return}e()}}()}i.load=i.js=ut?lt:ct;i.test=ot;i.ready=yt;i.ready(r,function(){y()&&u(h.ALL,function(n){f(n)});i.feature&&i.feature("domloaded",!0)})})(window);
|
31 |
+
if (activeFrontend == 1 && activeAddrexx == 0) {
|
32 |
+
head.ready(document, function() {
|
33 |
+
head.load(
|
34 |
+
"https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js",
|
35 |
+
"https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js",
|
36 |
+
"https://s3.amazonaws.com/xxredda/" + ww + "/varxFrontend.js",
|
37 |
+
"https://s3.amazonaws.com/xxredda/" + ww + "/xcorex.js", function() {
|
38 |
+
// Call a function when done
|
39 |
+
});
|
40 |
+
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
</script>
|
43 |
|
44 |
|
app/etc/modules/addrexx.xml
CHANGED
@@ -1,15 +1,9 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<config>
|
3 |
<modules>
|
4 |
-
<
|
5 |
<active>true</active>
|
6 |
<codePool>local</codePool>
|
7 |
-
</
|
8 |
-
</modules>
|
9 |
-
<modules>
|
10 |
-
<Addrexx_Backend>
|
11 |
-
<active>true</active>
|
12 |
-
<codePool>local</codePool>
|
13 |
-
</Addrexx_Backend>
|
14 |
</modules>
|
15 |
</config>
|
1 |
<?xml version="1.0"?>
|
2 |
<config>
|
3 |
<modules>
|
4 |
+
<Addrexx>
|
5 |
<active>true</active>
|
6 |
<codePool>local</codePool>
|
7 |
+
</Addrexx>
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
</modules>
|
9 |
</config>
|
package.xml
CHANGED
@@ -1,21 +1,21 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Addrexx_AddressValidation</name>
|
4 |
-
<version>1.1.
|
5 |
<stability>stable</stability>
|
6 |
<license>Open Software License (OSL 3.0)</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
-
<summary>Autocomplete and validate customer information including names and addresses.</summary>
|
10 |
<description>Addrexx radically changes your checkout page and enables autocompletion and validation of names and addresses. Customers can checkout 30 seconds faster and information is validated while it is being entered. Stop losing orders on the checkout page or receiving order with incomplete or undeliverable shipping details. 
|
11 |

|
12 |
Addrexx increases sales, solves shipping issues and improves customer satisfaction ratings.
|
13 |
</description>
|
14 |
<notes>This extension has been in use with community and enterprise customers since November, 2012.</notes>
|
15 |
<authors><author><name>Joseph De La Cruz</name><user>addrexx</user><email>info@addrexx.com</email></author></authors>
|
16 |
-
<date>
|
17 |
-
<time>
|
18 |
-
<contents><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="css"><dir name="addrexx"><file name="addrexx.css" hash="2ee3d7315281a1a53408c7ead7de7613"/><dir name="images"><file name="Thumbs.db" hash="490192cdd1bb716a9ac78f072cd61c8a"/><file name="ui-bg_flat_0_302e2e_40x100.png" hash="6b407d54ab0b5cc1e4a88295e5d13b70"/><file name="ui-bg_flat_75_ffffff_40x100.png" hash="a3c44907f702e9a70d93b0db7e1efb6a"/></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="default"><dir name="default"><dir name="css"><dir name="addrexx"><file name="addrexx.css" hash="2ee3d7315281a1a53408c7ead7de7613"/><dir name="images"><file name="ui-bg_flat_0_302e2e_40x100.png" hash="6b407d54ab0b5cc1e4a88295e5d13b70"/><file name="ui-bg_flat_75_ffffff_40x100.png" hash="a3c44907f702e9a70d93b0db7e1efb6a"/></dir></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="addrexx_backend.xml" hash="bf037a3b4e0745f2a77079da546b1da7"/></dir><dir name="template"><dir name="addrexx"><file name="common_config.phtml" hash="
|
19 |
<compatible/>
|
20 |
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
21 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Addrexx_AddressValidation</name>
|
4 |
+
<version>1.1.7</version>
|
5 |
<stability>stable</stability>
|
6 |
<license>Open Software License (OSL 3.0)</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
+
<summary>Autocomplete and validate customer information including names and addresses. Increase conversions and provide a better user experience.</summary>
|
10 |
<description>Addrexx radically changes your checkout page and enables autocompletion and validation of names and addresses. Customers can checkout 30 seconds faster and information is validated while it is being entered. Stop losing orders on the checkout page or receiving order with incomplete or undeliverable shipping details. 
|
11 |

|
12 |
Addrexx increases sales, solves shipping issues and improves customer satisfaction ratings.
|
13 |
</description>
|
14 |
<notes>This extension has been in use with community and enterprise customers since November, 2012.</notes>
|
15 |
<authors><author><name>Joseph De La Cruz</name><user>addrexx</user><email>info@addrexx.com</email></author></authors>
|
16 |
+
<date>2014-01-06</date>
|
17 |
+
<time>21:31:23</time>
|
18 |
+
<contents><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="css"><dir name="addrexx"><file name="addrexx.css" hash="2ee3d7315281a1a53408c7ead7de7613"/><dir name="images"><file name="Thumbs.db" hash="490192cdd1bb716a9ac78f072cd61c8a"/><file name="ui-bg_flat_0_302e2e_40x100.png" hash="6b407d54ab0b5cc1e4a88295e5d13b70"/><file name="ui-bg_flat_75_ffffff_40x100.png" hash="a3c44907f702e9a70d93b0db7e1efb6a"/></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="default"><dir name="default"><dir name="css"><dir name="addrexx"><file name="addrexx.css" hash="2ee3d7315281a1a53408c7ead7de7613"/><dir name="images"><file name="ui-bg_flat_0_302e2e_40x100.png" hash="6b407d54ab0b5cc1e4a88295e5d13b70"/><file name="ui-bg_flat_75_ffffff_40x100.png" hash="a3c44907f702e9a70d93b0db7e1efb6a"/></dir></dir></dir></dir></dir></dir></target><target name="magelocal"><dir name="Addrexx"><dir name="Helper"><file name="Data.php" hash="c9058d37bc77d493be535b677fbcbed8"/></dir><dir name="Model"><dir name="System"><dir name="Config"><dir name="Source"><dir name="Dropdown"><file name="Values.php" hash="e3f37c6f0ab44e9bccc1cf0ef5e99e1a"/></dir></dir></dir></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="16315e936954f2b3a8ad90f9e648c4a0"/><file name="config.xml" hash="286f77cc727ade882a51f43450b4119a"/><file name="system.xml" hash="03b58c0aaef61a8dadf63d2b70718b97"/></dir><dir name="sql"><dir name="addsql_setup"><file name="mysql4-install-0.1.0.php" hash="144914dcd01ceba06444cdc6134f18da"/></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="addrexx_backend.xml" hash="bf037a3b4e0745f2a77079da546b1da7"/></dir><dir name="template"><dir name="addrexx"><file name="common_config.phtml" hash="a75ff2fbe1dcbea2f4d0957c9768ca7b"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="default"><dir name="default"><dir name="layout"><file name="addrexx_frontend.xml" hash="bda3284855feedec1049c51d249c8717"/></dir></dir></dir><dir name="base"><dir name="default"><dir name="template"><dir name="addrexx"><file name="common_config.phtml" hash="867f68bdd6989e79c73f12a78f2e0a0b"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="addrexx.xml" hash="f6d18a0449b438c94cf7b8c0f02d12c8"/></dir></target></contents>
|
19 |
<compatible/>
|
20 |
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
21 |
</package>
|