Version Notes
Welcome to the Linc Care extension for Magento.
Installation and configuration process:
1. Go to System / Magento Connect / Magento Connect Manager
2. Search for Linc Care and then follow the normal procedure for installing an extension
3. Go to System / Configuration / Linc Care / General
4. Select a store to configure. You must register and configure each store separately.
5a. If you've made arrangements to have a custom landing page URL, enter the value you were given by Linc Global.
5b. Enter the store's name, url and admin email (defaults to the Magento values) Specify and confirm a password, then click register. Each store must have a unique URL and admin email.
6. When the Linc Care Merchant portal is launched, login with the URL, email and password you just specified. Fill in the requested information. Some information is optional, but you must complete the configuration before continuing. If you need to
come back and finish later, the URL to the portal is https://care.letslinc.com/merchants
7. On the last page of the configuration, you will be given the widget code to be inserted into your emails.
8. Go to System / Transactional Email
9. If you have a have custom New Order template already, edit it and insert the widget code where you want the Linc Care widget to appear. Then save the template.
10. Repeat for any other order-based emails you want connected to Linc Care. We suggest the New Order Guest, New Shipment and New Shipment Guest templates as well.
11. Go to System / Sales / Sales Email and select the new templates
12. Save the configuration and you're done.
If you have any comments or questions, please email us at support-magento@letslinc.com
Release Info
Developer | Linc Care |
Extension | Linc_Care |
Version | 1.2.5 |
Comparing to | |
See all releases |
Code changes from version 1.2.4 to 1.2.5
- app/code/community/Linc/Care/Block/Adminhtml/System/Config/Form/Register.php +18 -0
- app/code/community/Linc/Care/Block/Landingpage.php +73 -0
- app/code/community/Linc/Care/Block/Storename.php +71 -0
- app/code/community/Linc/Care/Block/Widget.php +63 -32
- app/code/community/Linc/Care/Model/Fulfillmentobserver.php +5 -5
- app/code/community/Linc/Care/controllers/CareController.php +9 -21
- app/code/community/Linc/Care/etc/config.xml +1 -1
- app/code/community/Linc/Care/etc/system.xml +22 -7
- app/design/adminhtml/default/default/template/care/system/config/register.phtml +4 -0
- package.xml +8 -6
@@ -96,6 +96,24 @@ class Linc_Care_Block_Adminhtml_System_Config_Form_Register extends Mage_Adminht
|
|
96 |
$shop_id = $rows[0]['value'];
|
97 |
}
|
98 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
99 |
# get url
|
100 |
$shop_url = '';
|
101 |
$select = $read->select()
|
96 |
$shop_id = $rows[0]['value'];
|
97 |
}
|
98 |
|
99 |
+
# get store name
|
100 |
+
$store_name = '';
|
101 |
+
$select = $read->select()
|
102 |
+
->from(array('cd'=>$configDataTable))
|
103 |
+
->where('cd.scope=?', 'store')
|
104 |
+
->where("cd.scope_id=?", $store_id)
|
105 |
+
->where("cd.path=?", 'linc_store_name');
|
106 |
+
$rows = $read->fetchAll($select);
|
107 |
+
|
108 |
+
if (count($rows) > 0)
|
109 |
+
{
|
110 |
+
$store_name = $rows[0]['value'];
|
111 |
+
}
|
112 |
+
else
|
113 |
+
{
|
114 |
+
$store_name = Mage::getStoreConfig('general/store_information/name');
|
115 |
+
}
|
116 |
+
|
117 |
# get url
|
118 |
$shop_url = '';
|
119 |
$select = $read->select()
|
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
require_once "Linc/Care/common.php";
|
3 |
+
|
4 |
+
class Linc_Care_Block_Landingpage extends Mage_Adminhtml_Block_System_Config_Form_Field
|
5 |
+
{
|
6 |
+
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
|
7 |
+
{
|
8 |
+
$resource = Mage::getSingleton('core/resource');
|
9 |
+
$read = $resource->getConnection('core_read');
|
10 |
+
$configDataTable = $read->getTableName('core_config_data');
|
11 |
+
|
12 |
+
# get store_id
|
13 |
+
$store_id = '1';
|
14 |
+
$select = $read->select()
|
15 |
+
->from(array('cd'=>$configDataTable))
|
16 |
+
->where("cd.path=?", 'linc_current_store');
|
17 |
+
$rows = $read->fetchAll($select);
|
18 |
+
|
19 |
+
if (count($rows) > 0)
|
20 |
+
{
|
21 |
+
$store_id = $rows[0]['value'];
|
22 |
+
}
|
23 |
+
|
24 |
+
# get shop_id
|
25 |
+
$shop_id = '';
|
26 |
+
$select = $read->select()
|
27 |
+
->from(array('cd'=>$configDataTable))
|
28 |
+
->where('cd.scope=?', 'store')
|
29 |
+
->where("cd.scope_id=?", $store_id)
|
30 |
+
->where("cd.path=?", 'linc_shop_id');
|
31 |
+
$rows = $read->fetchAll($select);
|
32 |
+
|
33 |
+
if (count($rows) > 0)
|
34 |
+
{
|
35 |
+
$shop_id = $rows[0]['value'];
|
36 |
+
}
|
37 |
+
|
38 |
+
# get landing page
|
39 |
+
$page = '';
|
40 |
+
$select = $read->select()
|
41 |
+
->from(array('cd'=>$configDataTable))
|
42 |
+
->where('cd.scope=?', 'store')
|
43 |
+
->where("cd.scope_id=?", $store_id)
|
44 |
+
->where("cd.path=?", 'linc_landing_page');
|
45 |
+
$rows = $read->fetchAll($select);
|
46 |
+
|
47 |
+
if (count($rows) > 0)
|
48 |
+
{
|
49 |
+
$page = $rows[0]['value'];
|
50 |
+
}
|
51 |
+
else
|
52 |
+
{
|
53 |
+
$protocol = SERVER_PROTOCOL;
|
54 |
+
$url = SERVER_PATH;
|
55 |
+
$page = "$protocol://care.$url";
|
56 |
+
}
|
57 |
+
|
58 |
+
$disabled = "";
|
59 |
+
if ($shop_id != "")
|
60 |
+
{
|
61 |
+
$disabled = "disabled";
|
62 |
+
}
|
63 |
+
|
64 |
+
if (DBGLOG) Mage::log("Landing page - $store_id; $page $shop_id", null, 'register.log', true);
|
65 |
+
|
66 |
+
$html = parent::_getElementHtml($element);
|
67 |
+
$html .= "<input type=text class='input-text required-entry validate-url' id=linccaresection_linccaregroup_landingpage maxlength=2000 value='$page' $disabled />";
|
68 |
+
|
69 |
+
return $html;
|
70 |
+
}
|
71 |
+
}
|
72 |
+
|
73 |
+
?>
|
@@ -0,0 +1,71 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
require_once "Linc/Care/common.php";
|
3 |
+
|
4 |
+
class Linc_Care_Block_Storename extends Mage_Adminhtml_Block_System_Config_Form_Field
|
5 |
+
{
|
6 |
+
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
|
7 |
+
{
|
8 |
+
$resource = Mage::getSingleton('core/resource');
|
9 |
+
$read = $resource->getConnection('core_read');
|
10 |
+
$configDataTable = $read->getTableName('core_config_data');
|
11 |
+
|
12 |
+
# get store_id
|
13 |
+
$store_id = '1';
|
14 |
+
$select = $read->select()
|
15 |
+
->from(array('cd'=>$configDataTable))
|
16 |
+
->where("cd.path=?", 'linc_current_store');
|
17 |
+
$rows = $read->fetchAll($select);
|
18 |
+
|
19 |
+
if (count($rows) > 0)
|
20 |
+
{
|
21 |
+
$store_id = $rows[0]['value'];
|
22 |
+
}
|
23 |
+
|
24 |
+
# get shop_id
|
25 |
+
$shop_id = '';
|
26 |
+
$select = $read->select()
|
27 |
+
->from(array('cd'=>$configDataTable))
|
28 |
+
->where('cd.scope=?', 'store')
|
29 |
+
->where("cd.scope_id=?", $store_id)
|
30 |
+
->where("cd.path=?", 'linc_shop_id');
|
31 |
+
$rows = $read->fetchAll($select);
|
32 |
+
|
33 |
+
if (count($rows) > 0)
|
34 |
+
{
|
35 |
+
$shop_id = $rows[0]['value'];
|
36 |
+
}
|
37 |
+
|
38 |
+
# get store name
|
39 |
+
$name = '';
|
40 |
+
$select = $read->select()
|
41 |
+
->from(array('cd'=>$configDataTable))
|
42 |
+
->where('cd.scope=?', 'store')
|
43 |
+
->where("cd.scope_id=?", $store_id)
|
44 |
+
->where("cd.path=?", 'linc_store_name');
|
45 |
+
$rows = $read->fetchAll($select);
|
46 |
+
|
47 |
+
if (count($rows) > 0)
|
48 |
+
{
|
49 |
+
$name = $rows[0]['value'];
|
50 |
+
}
|
51 |
+
else
|
52 |
+
{
|
53 |
+
$name = Mage::getStoreConfig('general/store_information/name');
|
54 |
+
}
|
55 |
+
|
56 |
+
$disabled = "";
|
57 |
+
if ($shop_id != "")
|
58 |
+
{
|
59 |
+
$disabled = "disabled";
|
60 |
+
}
|
61 |
+
|
62 |
+
if (DBGLOG) Mage::log("Store name - $store_id; $name; $shop_id", null, 'register.log', true);
|
63 |
+
|
64 |
+
$html = parent::_getElementHtml($element);
|
65 |
+
$html .= "<input type=text class='input-text required-entry ' id=linccaresection_linccaregroup_storename maxlength=2000 value='$name' $disabled />";
|
66 |
+
|
67 |
+
return $html;
|
68 |
+
}
|
69 |
+
}
|
70 |
+
|
71 |
+
?>
|
@@ -33,11 +33,28 @@ class Linc_Care_Block_Widget extends Mage_Core_Block_Abstract
|
|
33 |
$shop_id = $rows[0]['value'];
|
34 |
}
|
35 |
|
36 |
-
|
37 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
$query = "shop_id=".$shop_id;
|
39 |
-
$html = "<a href='$
|
40 |
-
$html .= $query."'><img src='$
|
41 |
$html .= $query."&v=2&widget=0'></a>";
|
42 |
}
|
43 |
else
|
@@ -57,9 +74,32 @@ class Linc_Care_Block_Widget extends Mage_Core_Block_Abstract
|
|
57 |
$shop_id = $rows[0]['value'];
|
58 |
}
|
59 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
60 |
$items = $order->getItemsCollection();
|
61 |
|
62 |
-
$query = "";
|
|
|
|
|
|
|
|
|
63 |
$baseurl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).'catalog/product';
|
64 |
foreach ($items as $item)
|
65 |
{
|
@@ -70,12 +110,7 @@ class Linc_Care_Block_Widget extends Mage_Core_Block_Abstract
|
|
70 |
{
|
71 |
$imgurl = $baseurl.$product->getImage();
|
72 |
|
73 |
-
|
74 |
-
{
|
75 |
-
$query .= "&";
|
76 |
-
}
|
77 |
-
|
78 |
-
$query .= "q=".$item->getQtyOrdered();
|
79 |
$query .= "&p=".$product->getId();
|
80 |
$query .= "&pp=".$item->getPrice();
|
81 |
$query .= "&w=".$item->getWeight();
|
@@ -92,32 +127,28 @@ class Linc_Care_Block_Widget extends Mage_Core_Block_Abstract
|
|
92 |
$s_addr = $order->getBillingAddress();
|
93 |
}
|
94 |
|
95 |
-
$query .= "&a1=".urlencode($s_addr->getStreet1());
|
96 |
-
$query .= "&a2=".urlencode($s_addr->getStreet2());
|
97 |
-
$query .= "&au=".urlencode($s_addr->getCountry());
|
98 |
-
$query .= "&ac=".urlencode($s_addr->getCity());
|
99 |
-
$query .= "&as=".urlencode($s_addr->getRegion());
|
100 |
-
$query .= "&az=".urlencode($s_addr->getPostcode());
|
101 |
-
$query .= "&fn=".urlencode($order->getCustomerFirstname());
|
102 |
-
$query .= "&ln=".urlencode($order->getCustomerLastname());
|
103 |
-
$query .= "&
|
104 |
-
$query .= "&
|
105 |
-
$query .= "&
|
106 |
-
$query .= "&osi=".urlencode($order->getIncrementId());
|
107 |
-
$query .= "&pd=".urlencode($order->getUpdatedAt('long'));
|
108 |
-
$query .= "&ph=".urlencode($s_addr->getTelephone());
|
109 |
-
$query .= "&shop_id=".urlencode($shop_id);
|
110 |
$query .= "&source=email";
|
111 |
-
$query .= "&viewer=".urlencode($order->getCustomerEmail());
|
112 |
$query .= "&v=2";
|
113 |
|
114 |
$protocol = SERVER_PROTOCOL;
|
115 |
$url = SERVER_PATH;
|
116 |
-
$html = "<img src='$
|
117 |
-
$html .= $query."&activity=widget_impression' border='0' height='1' width='1'>";
|
118 |
-
$html .= "<a href='$
|
119 |
-
$html .= $query
|
120 |
-
$html .= $query
|
121 |
|
122 |
//Mage::log("Widget complete - $html", null, 'order.log', true);
|
123 |
}
|
33 |
$shop_id = $rows[0]['value'];
|
34 |
}
|
35 |
|
36 |
+
# get landing page
|
37 |
+
$page_id = '';
|
38 |
+
$select = $read->select()
|
39 |
+
->from(array('cd'=>$configDataTable))
|
40 |
+
->where('cd.scope=?', 'store')
|
41 |
+
->where("cd.path=?", 'linc_landing_page');
|
42 |
+
$rows = $read->fetchAll($select);
|
43 |
+
|
44 |
+
if (count($rows) > 0)
|
45 |
+
{
|
46 |
+
$page = $rows[0]['value'];
|
47 |
+
}
|
48 |
+
else
|
49 |
+
{
|
50 |
+
$protocol = SERVER_PROTOCOL;
|
51 |
+
$url = SERVER_PATH;
|
52 |
+
$page = '$protocol://care.$url';
|
53 |
+
}
|
54 |
+
|
55 |
$query = "shop_id=".$shop_id;
|
56 |
+
$html = "<a href='$page/home?";
|
57 |
+
$html .= $query."'><img src='$page/widget_image?";
|
58 |
$html .= $query."&v=2&widget=0'></a>";
|
59 |
}
|
60 |
else
|
74 |
$shop_id = $rows[0]['value'];
|
75 |
}
|
76 |
|
77 |
+
# get landing page
|
78 |
+
$page_id = '';
|
79 |
+
$select = $read->select()
|
80 |
+
->from(array('cd'=>$configDataTable))
|
81 |
+
->where('cd.scope=?', 'store')
|
82 |
+
->where("cd.path=?", 'linc_landing_page');
|
83 |
+
$rows = $read->fetchAll($select);
|
84 |
+
|
85 |
+
if (count($rows) > 0)
|
86 |
+
{
|
87 |
+
$page = $rows[0]['value'];
|
88 |
+
}
|
89 |
+
else
|
90 |
+
{
|
91 |
+
$protocol = SERVER_PROTOCOL;
|
92 |
+
$url = SERVER_PATH;
|
93 |
+
$page = '$protocol://care.$url';
|
94 |
+
}
|
95 |
+
|
96 |
$items = $order->getItemsCollection();
|
97 |
|
98 |
+
$query = "shop_id=" . urlencode($shop_id);
|
99 |
+
$query .= "&o=" . urlencode($order->getIncrementId());
|
100 |
+
$query .= "&e=" . urlencode($order->getCustomerEmail());
|
101 |
+
$query .= "&osi=" . urlencode($order->getIncrementId());
|
102 |
+
|
103 |
$baseurl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA).'catalog/product';
|
104 |
foreach ($items as $item)
|
105 |
{
|
110 |
{
|
111 |
$imgurl = $baseurl.$product->getImage();
|
112 |
|
113 |
+
$query .= "&q=".$item->getQtyOrdered();
|
|
|
|
|
|
|
|
|
|
|
114 |
$query .= "&p=".$product->getId();
|
115 |
$query .= "&pp=".$item->getPrice();
|
116 |
$query .= "&w=".$item->getWeight();
|
127 |
$s_addr = $order->getBillingAddress();
|
128 |
}
|
129 |
|
130 |
+
$query .= "&a1=" . urlencode($s_addr->getStreet1());
|
131 |
+
$query .= "&a2=" . urlencode($s_addr->getStreet2());
|
132 |
+
$query .= "&au=" . urlencode($s_addr->getCountry());
|
133 |
+
$query .= "&ac=" . urlencode($s_addr->getCity());
|
134 |
+
$query .= "&as=" . urlencode($s_addr->getRegion());
|
135 |
+
$query .= "&az=" . urlencode($s_addr->getPostcode());
|
136 |
+
$query .= "&fn=" . urlencode($order->getCustomerFirstname());
|
137 |
+
$query .= "&ln=" . urlencode($order->getCustomerLastname());
|
138 |
+
$query .= "&g=" . urlencode($order->getGrandTotal());
|
139 |
+
$query .= "&pd=" . urlencode($order->getUpdatedAt('long'));
|
140 |
+
$query .= "&ph=" . urlencode($s_addr->getTelephone());
|
|
|
|
|
|
|
|
|
141 |
$query .= "&source=email";
|
142 |
+
$query .= "&viewer=" . urlencode($order->getCustomerEmail());
|
143 |
$query .= "&v=2";
|
144 |
|
145 |
$protocol = SERVER_PROTOCOL;
|
146 |
$url = SERVER_PATH;
|
147 |
+
$html = "<img src='$page/user_activity?";
|
148 |
+
$html .= $query . "&activity=widget_impression' border='0' height='1' width='1'>";
|
149 |
+
$html .= "<a href='$page/home?";
|
150 |
+
$html .= "$query'><img src='$page/widget_image?";
|
151 |
+
$html .= "$query&widget=0'></a>";
|
152 |
|
153 |
//Mage::log("Widget complete - $html", null, 'order.log', true);
|
154 |
}
|
@@ -128,17 +128,17 @@ class Linc_Care_Model_Fulfillmentobserver
|
|
128 |
$this->log("buildJson started");
|
129 |
|
130 |
$track = $observer->getEvent()->getTrack();
|
131 |
-
$this->log("buildJson Got
|
132 |
$store = $track->getStore();
|
133 |
-
$this->log("buildJson Got
|
134 |
$shipment = $track->getShipment();
|
135 |
-
$this->log("buildJson Got
|
136 |
$order = $shipment->getOrder();
|
137 |
$this->log("buildJson Got order");
|
138 |
$carrier = $order->getShippingCarrier();
|
139 |
-
$this->log("buildJson Got
|
140 |
$store_id = $observer->getStoreId();
|
141 |
-
$this->log("buildJson Got
|
142 |
|
143 |
$postdata = "";
|
144 |
$CarrierCode = "";
|
128 |
$this->log("buildJson started");
|
129 |
|
130 |
$track = $observer->getEvent()->getTrack();
|
131 |
+
$this->log("buildJson Got track");
|
132 |
$store = $track->getStore();
|
133 |
+
$this->log("buildJson Got store");
|
134 |
$shipment = $track->getShipment();
|
135 |
+
$this->log("buildJson Got shipment");
|
136 |
$order = $shipment->getOrder();
|
137 |
$this->log("buildJson Got order");
|
138 |
$carrier = $order->getShippingCarrier();
|
139 |
+
$this->log("buildJson Got carrier");
|
140 |
$store_id = $observer->getStoreId();
|
141 |
+
$this->log("buildJson Got store_id");
|
142 |
|
143 |
$postdata = "";
|
144 |
$CarrierCode = "";
|
@@ -10,13 +10,15 @@ class Linc_Care_CareController extends Mage_Adminhtml_Controller_Action
|
|
10 |
{
|
11 |
if (DBGLOG) Mage::log("Care::registerAction called", null, 'register.log', true);
|
12 |
|
|
|
|
|
13 |
$url = $this->getRequest()->getParam('url');
|
14 |
$email = $this->getRequest()->getParam('email');
|
15 |
$password = $this->getRequest()->getParam('password');
|
16 |
$confirm = $this->getRequest()->getParam('confirm');
|
17 |
$ecommerce = $this->getRequest()->getParam('ecommerce');
|
18 |
|
19 |
-
$post_data_json = $this->buildJson($url, $email, $password, $confirm, $ecommerce);
|
20 |
$this->sendRegister($post_data_json);
|
21 |
}
|
22 |
|
@@ -39,24 +41,7 @@ class Linc_Care_CareController extends Mage_Adminhtml_Controller_Action
|
|
39 |
$this->getLayout()->setArea($this->_currentArea);
|
40 |
$_isValidFormKey = true;
|
41 |
$_isValidSecretKey = true;
|
42 |
-
|
43 |
-
Mage::dispatchEvent('adminhtml_controller_action_predispatch_start', array());
|
44 |
-
parent::preDispatch();
|
45 |
-
$_keyErrorMsg = '';
|
46 |
-
if (Mage::getSingleton('admin/session')->isLoggedIn())
|
47 |
-
{
|
48 |
-
if ($this->getRequest()->isPost())
|
49 |
-
{
|
50 |
-
$_isValidFormKey = $this->_validateFormKey();
|
51 |
-
$_keyErrorMsg = Mage::helper('adminhtml')->__('Invalid Form Key. Please refresh the page.');
|
52 |
-
}
|
53 |
-
elseif (Mage::getSingleton('adminhtml/url')->useSecretKey())
|
54 |
-
{
|
55 |
-
$_isValidSecretKey = $this->_validateSecretKey();
|
56 |
-
$_keyErrorMsg = Mage::helper('adminhtml')->__('Invalid Secret Key. Please refresh the page.');
|
57 |
-
}
|
58 |
-
}
|
59 |
-
*/
|
60 |
if (!$_isValidFormKey || !$_isValidSecretKey)
|
61 |
{
|
62 |
$this->setFlag('', self::FLAG_NO_DISPATCH, true);
|
@@ -89,7 +74,6 @@ class Linc_Care_CareController extends Mage_Adminhtml_Controller_Action
|
|
89 |
&& !$this->_getSession()->getIsUrlNotice(true)
|
90 |
&& !Mage::getConfig()->getNode('global/can_use_base_url'))
|
91 |
{
|
92 |
-
//$this->_checkUrlSettings();
|
93 |
$this->setFlag('', self::FLAG_IS_URLS_CHECKED, true);
|
94 |
}
|
95 |
|
@@ -165,6 +149,8 @@ class Linc_Care_CareController extends Mage_Adminhtml_Controller_Action
|
|
165 |
$array = Mage::helper('core')->jsonDecode($temp);
|
166 |
|
167 |
# write values into core_config_data
|
|
|
|
|
168 |
Mage::getConfig()->saveConfig('linc_url', $array['url'], 'store', $store_id);
|
169 |
Mage::getConfig()->saveConfig('linc_email', $array['email'], 'store', $store_id);
|
170 |
Mage::getConfig()->saveConfig('linc_password', $array['password'], 'store', $store_id);
|
@@ -211,9 +197,11 @@ class Linc_Care_CareController extends Mage_Adminhtml_Controller_Action
|
|
211 |
'Content-Type' => 'application/json'));
|
212 |
}
|
213 |
|
214 |
-
public function buildJson($url, $email, $password, $confirm, $ecommerce)
|
215 |
{
|
216 |
$dataorder = array(
|
|
|
|
|
217 |
'email' => $email,
|
218 |
'password' => $password,
|
219 |
'url' => $url,
|
10 |
{
|
11 |
if (DBGLOG) Mage::log("Care::registerAction called", null, 'register.log', true);
|
12 |
|
13 |
+
$name = $this->getRequest()->getParam('name');
|
14 |
+
$page = $this->getRequest()->getParam('page');
|
15 |
$url = $this->getRequest()->getParam('url');
|
16 |
$email = $this->getRequest()->getParam('email');
|
17 |
$password = $this->getRequest()->getParam('password');
|
18 |
$confirm = $this->getRequest()->getParam('confirm');
|
19 |
$ecommerce = $this->getRequest()->getParam('ecommerce');
|
20 |
|
21 |
+
$post_data_json = $this->buildJson($name, $page, $url, $email, $password, $confirm, $ecommerce);
|
22 |
$this->sendRegister($post_data_json);
|
23 |
}
|
24 |
|
41 |
$this->getLayout()->setArea($this->_currentArea);
|
42 |
$_isValidFormKey = true;
|
43 |
$_isValidSecretKey = true;
|
44 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
45 |
if (!$_isValidFormKey || !$_isValidSecretKey)
|
46 |
{
|
47 |
$this->setFlag('', self::FLAG_NO_DISPATCH, true);
|
74 |
&& !$this->_getSession()->getIsUrlNotice(true)
|
75 |
&& !Mage::getConfig()->getNode('global/can_use_base_url'))
|
76 |
{
|
|
|
77 |
$this->setFlag('', self::FLAG_IS_URLS_CHECKED, true);
|
78 |
}
|
79 |
|
149 |
$array = Mage::helper('core')->jsonDecode($temp);
|
150 |
|
151 |
# write values into core_config_data
|
152 |
+
Mage::getConfig()->saveConfig('linc_store_name', $array['name'], 'store', $store_id);
|
153 |
+
Mage::getConfig()->saveConfig('linc_landing_page', $array['page'], 'store', $store_id);
|
154 |
Mage::getConfig()->saveConfig('linc_url', $array['url'], 'store', $store_id);
|
155 |
Mage::getConfig()->saveConfig('linc_email', $array['email'], 'store', $store_id);
|
156 |
Mage::getConfig()->saveConfig('linc_password', $array['password'], 'store', $store_id);
|
197 |
'Content-Type' => 'application/json'));
|
198 |
}
|
199 |
|
200 |
+
public function buildJson($name, $page, $url, $email, $password, $confirm, $ecommerce)
|
201 |
{
|
202 |
$dataorder = array(
|
203 |
+
'name' => $name,
|
204 |
+
'page' => $page,
|
205 |
'email' => $email,
|
206 |
'password' => $password,
|
207 |
'url' => $url,
|
@@ -10,7 +10,7 @@
|
|
10 |
<config>
|
11 |
<modules>
|
12 |
<Linc_Care>
|
13 |
-
<version>1.2.
|
14 |
</Linc_Care>
|
15 |
</modules>
|
16 |
<admin>
|
10 |
<config>
|
11 |
<modules>
|
12 |
<Linc_Care>
|
13 |
+
<version>1.2.5</version>
|
14 |
</Linc_Care>
|
15 |
</modules>
|
16 |
<admin>
|
@@ -25,8 +25,23 @@
|
|
25 |
<show_in_store>1</show_in_store>
|
26 |
<expanded>1</expanded>
|
27 |
<fields>
|
28 |
-
<
|
29 |
<sort_order>200</sort_order>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30 |
<frontend_type>label</frontend_type>
|
31 |
<frontend_model>care/note</frontend_model>
|
32 |
<show_in_default>1</show_in_default>
|
@@ -34,7 +49,7 @@
|
|
34 |
<show_in_store>0</show_in_store>
|
35 |
</message>
|
36 |
<url translate="label">
|
37 |
-
<sort_order>
|
38 |
<label for="Url" class="required">Enter your store URL</label>
|
39 |
<frontend_type>label</frontend_type>
|
40 |
<frontend_model>care/url</frontend_model>
|
@@ -42,7 +57,7 @@
|
|
42 |
<show_in_store>1</show_in_store>
|
43 |
</url>
|
44 |
<email translate="label">
|
45 |
-
<sort_order>
|
46 |
<label for="Email" class="required">Enter your administrator email address</label>
|
47 |
<frontend_type>label</frontend_type>
|
48 |
<frontend_model>care/email</frontend_model>
|
@@ -50,7 +65,7 @@
|
|
50 |
<show_in_store>1</show_in_store>
|
51 |
</email>
|
52 |
<password translate="label">
|
53 |
-
<sort_order>
|
54 |
<label for="Password" class="required">Enter a password</label>
|
55 |
<frontend_type>label</frontend_type>
|
56 |
<frontend_model>care/pwd</frontend_model>
|
@@ -58,7 +73,7 @@
|
|
58 |
<show_in_store>1</show_in_store>
|
59 |
</password>
|
60 |
<confirm translate="label">
|
61 |
-
<sort_order>
|
62 |
<label for="Confirm Password" class="required">Enter a password</label>
|
63 |
<frontend_type>label</frontend_type>
|
64 |
<frontend_model>care/confirm</frontend_model>
|
@@ -66,14 +81,14 @@
|
|
66 |
<validate>required-entry validate-cpassword</validate>
|
67 |
</confirm>
|
68 |
<linktolinccare translate="label">
|
69 |
-
<sort_order>
|
70 |
<label>Fill out the fields above and click to register</label>
|
71 |
<frontend_type>button</frontend_type>
|
72 |
<frontend_model>care/adminhtml_system_config_form_register</frontend_model>
|
73 |
<show_in_store>1</show_in_store>
|
74 |
</linktolinccare>
|
75 |
<linktoinfo translate="label">
|
76 |
-
<sort_order>
|
77 |
<label>Learn more...</label>
|
78 |
<frontend_type>button</frontend_type>
|
79 |
<frontend_model>care/faqbutton</frontend_model>
|
25 |
<show_in_store>1</show_in_store>
|
26 |
<expanded>1</expanded>
|
27 |
<fields>
|
28 |
+
<storename translate="label">
|
29 |
<sort_order>200</sort_order>
|
30 |
+
<label for="Store Name" class="required">Enter your store's name</label>
|
31 |
+
<frontend_type>label</frontend_type>
|
32 |
+
<frontend_model>care/storename</frontend_model>
|
33 |
+
<show_in_store>1</show_in_store>
|
34 |
+
</storename>
|
35 |
+
<landingpage translate="label">
|
36 |
+
<sort_order>205</sort_order>
|
37 |
+
<label for="Landing Page">Enter your store's Linc Care Landing Page (optional)</label>
|
38 |
+
<comment>Contact Linc Global Sales before modifying this field. It is a URL which will be inserted into the Linc Care widget. When clicked, the customer will be directed to that page. The URL must be in the form https://myname.letslinc.com</comment>
|
39 |
+
<frontend_type>label</frontend_type>
|
40 |
+
<frontend_model>care/landingpage</frontend_model>
|
41 |
+
<show_in_store>1</show_in_store>
|
42 |
+
</landingpage>
|
43 |
+
<message translate="label">
|
44 |
+
<sort_order>210</sort_order>
|
45 |
<frontend_type>label</frontend_type>
|
46 |
<frontend_model>care/note</frontend_model>
|
47 |
<show_in_default>1</show_in_default>
|
49 |
<show_in_store>0</show_in_store>
|
50 |
</message>
|
51 |
<url translate="label">
|
52 |
+
<sort_order>215</sort_order>
|
53 |
<label for="Url" class="required">Enter your store URL</label>
|
54 |
<frontend_type>label</frontend_type>
|
55 |
<frontend_model>care/url</frontend_model>
|
57 |
<show_in_store>1</show_in_store>
|
58 |
</url>
|
59 |
<email translate="label">
|
60 |
+
<sort_order>220</sort_order>
|
61 |
<label for="Email" class="required">Enter your administrator email address</label>
|
62 |
<frontend_type>label</frontend_type>
|
63 |
<frontend_model>care/email</frontend_model>
|
65 |
<show_in_store>1</show_in_store>
|
66 |
</email>
|
67 |
<password translate="label">
|
68 |
+
<sort_order>225</sort_order>
|
69 |
<label for="Password" class="required">Enter a password</label>
|
70 |
<frontend_type>label</frontend_type>
|
71 |
<frontend_model>care/pwd</frontend_model>
|
73 |
<show_in_store>1</show_in_store>
|
74 |
</password>
|
75 |
<confirm translate="label">
|
76 |
+
<sort_order>230</sort_order>
|
77 |
<label for="Confirm Password" class="required">Enter a password</label>
|
78 |
<frontend_type>label</frontend_type>
|
79 |
<frontend_model>care/confirm</frontend_model>
|
81 |
<validate>required-entry validate-cpassword</validate>
|
82 |
</confirm>
|
83 |
<linktolinccare translate="label">
|
84 |
+
<sort_order>235</sort_order>
|
85 |
<label>Fill out the fields above and click to register</label>
|
86 |
<frontend_type>button</frontend_type>
|
87 |
<frontend_model>care/adminhtml_system_config_form_register</frontend_model>
|
88 |
<show_in_store>1</show_in_store>
|
89 |
</linktolinccare>
|
90 |
<linktoinfo translate="label">
|
91 |
+
<sort_order>240</sort_order>
|
92 |
<label>Learn more...</label>
|
93 |
<frontend_type>button</frontend_type>
|
94 |
<frontend_model>care/faqbutton</frontend_model>
|
@@ -10,6 +10,8 @@
|
|
10 |
var validator = new Validation(configForm);
|
11 |
if (validator.validate())
|
12 |
{
|
|
|
|
|
13 |
var url = document.getElementById('linccaresection_linccaregroup_url').value;
|
14 |
var email = document.getElementById('linccaresection_linccaregroup_email').value;
|
15 |
var pw = document.getElementById('linccaresection_linccaregroup_password').value;
|
@@ -19,6 +21,8 @@
|
|
19 |
{
|
20 |
method: 'get',
|
21 |
parameters: {
|
|
|
|
|
22 |
url: url,
|
23 |
email: email,
|
24 |
password: pw,
|
10 |
var validator = new Validation(configForm);
|
11 |
if (validator.validate())
|
12 |
{
|
13 |
+
var name = document.getElementById('linccaresection_linccaregroup_storename').value;
|
14 |
+
var page = document.getElementById('linccaresection_linccaregroup_landingpage').value;
|
15 |
var url = document.getElementById('linccaresection_linccaregroup_url').value;
|
16 |
var email = document.getElementById('linccaresection_linccaregroup_email').value;
|
17 |
var pw = document.getElementById('linccaresection_linccaregroup_password').value;
|
21 |
{
|
22 |
method: 'get',
|
23 |
parameters: {
|
24 |
+
name: name,
|
25 |
+
page: page,
|
26 |
url: url,
|
27 |
email: email,
|
28 |
password: pw,
|
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Linc_Care</name>
|
4 |
-
<version>1.2.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.letslinc.com/legal/linccarelicenseagreement/">Linc Global Commercial License</license>
|
7 |
<channel>community</channel>
|
@@ -42,7 +42,9 @@ Installation and configuration process:
|
|
42 |

|
43 |
4. Select a store to configure. You must register and configure each store separately.
|
44 |

|
45 |
-
|
|
|
|
|
46 |

|
47 |
6. When the Linc Care Merchant portal is launched, login with the URL, email and password you just specified. Fill in the requested information. Some information is optional, but you must complete the configuration before continuing. If you need to
|
48 |
come back and finish later, the URL to the portal is https://care.letslinc.com/merchants
|
@@ -61,10 +63,10 @@ come back and finish later, the URL to the portal is https://care.letslinc.com/m
|
|
61 |

|
62 |
If you have any comments or questions, please email us at support-magento@letslinc.com
|
63 |
</notes>
|
64 |
-
<authors><author><name>Linc Care</name><user>letslincapp</user><email>apps@letslinc.com</email></author></authors>
|
65 |
-
<date>2015-02-
|
66 |
-
<time>
|
67 |
-
<contents><target name="mageetc"><dir name="modules"><file name="Linc_Care.xml" hash="8dd7784200f8ff440a0c970d89db190d"/></dir></target><target name="magecommunity"><dir name="Linc"><dir name="Care"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><file name="Register.php" hash="
|
68 |
<compatible/>
|
69 |
<dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
|
70 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Linc_Care</name>
|
4 |
+
<version>1.2.5</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.letslinc.com/legal/linccarelicenseagreement/">Linc Global Commercial License</license>
|
7 |
<channel>community</channel>
|
42 |

|
43 |
4. Select a store to configure. You must register and configure each store separately.
|
44 |

|
45 |
+
5a. If you've made arrangements to have a custom landing page URL, enter the value you were given by Linc Global.
|
46 |
+

|
47 |
+
5b. Enter the store's name, url and admin email (defaults to the Magento values) Specify and confirm a password, then click register. Each store must have a unique URL and admin email.
|
48 |

|
49 |
6. When the Linc Care Merchant portal is launched, login with the URL, email and password you just specified. Fill in the requested information. Some information is optional, but you must complete the configuration before continuing. If you need to
|
50 |
come back and finish later, the URL to the portal is https://care.letslinc.com/merchants
|
63 |

|
64 |
If you have any comments or questions, please email us at support-magento@letslinc.com
|
65 |
</notes>
|
66 |
+
<authors><author><name>Linc Care</name><user>letslincapp</user><email>apps@letslinc.com</email></author><author><name>Rick Murtagh</name><user>rmurtagh</user><email>rick@letslinc.com</email></author></authors>
|
67 |
+
<date>2015-02-17</date>
|
68 |
+
<time>04:43:44</time>
|
69 |
+
<contents><target name="mageetc"><dir name="modules"><file name="Linc_Care.xml" hash="8dd7784200f8ff440a0c970d89db190d"/></dir></target><target name="magecommunity"><dir name="Linc"><dir name="Care"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><file name="Register.php" hash="5399701439cf930012ac773ecd6ecc4a"/></dir></dir></dir></dir><file name="Confirm.php" hash="c5802e17ab99fe29759d4f0c3b61c16d"/><file name="Email.php" hash="8f6eb60dd06f7258c842377cb92bec07"/><file name="Faqbutton.php" hash="e9804ff3824aaaa5383af0f97fc75c1b"/><file name="Landingpage.php" hash="744023ff93e9c49a77dd0695b1bbf758"/><file name="Note.php" hash="637733c4a7ad19ef66b9db1d75c28b8d"/><file name="Pwd.php" hash="7dbe6f455456f06cb47ebdd072bdbd7f"/><file name="Storename.php" hash="2ce78902a34e7a4af50b1c3c542ccada"/><file name="Url.php" hash="98d81a2b8c1fbbccc3928cdc4c8d9a5b"/><file name="Widget.php" hash="a663a9e1694a52b163a231bfdd3785de"/></dir><dir name="Helper"><file name="Data.php" hash="34aec0a0ed4d5a1652b46fb7fe54707d"/></dir><dir name="Model"><file name="Fulfillmentobserver.php" hash="950c869d0556e3c07e7b6954cf7d6716"/><file name="Orderobserver.php" hash="9942bc307a6027cbbd932ac1028289aa"/><dir name="Resource"><file name="Setup.php" hash="7169ea333f6a42a0edc86effa4a11195"/></dir></dir><file name="common.php" hash="82b09b911018f12ce42efd9a32bbddf1"/><dir name="controllers"><file name="CareController.php" hash="7b92dec3dcc4faafbf0a78d0aa06c667"/></dir><dir name="etc"><file name="config.xml" hash="31d638515696156ac32cc30548b29a0a"/><file name="system.xml" hash="d599461bc561b1bc88caaa123b5ba846"/></dir><dir name="sql"><dir name="linc_setup"><file name="mysql4-install-1.2.3.php" hash="ab29cefebab6089b060584cda4ad7d77"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="care"><dir name="system"><dir name="config"><file name="register.phtml" hash="37fdf092c19fdc2a31b6ce1511ffa458"/></dir></dir></dir></dir></dir></dir></dir></target></contents>
|
70 |
<compatible/>
|
71 |
<dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
|
72 |
</package>
|