How to fix the related product issue in admin after migrated to magento 1 to magento 2.3 The 2019 Stack Overflow Developer Survey Results Are In Unicorn Meta Zoo #1: Why another podcast? Announcing the arrival of Valued Associate #679: Cesar ManaraHow to override product model files in Magento 2?Cannot See Product name in admin panel after savingHow to fix Magento 2 2.0.0-RC Admin page not found after installationMagento 2: Why is the cart empty?Fetch commission of related Designer for each ordered Product in admin DashboardMagento 2 : Display Related Products Block in Product ViewMagento product export issue?Product Delete create re- indexer issue in magento 2Magento 2.3: How to solve the message “Unable to send email”?Description Attribute Editor Issue in Magento 2.3'Migration Meta Information' is not updating when I edit product title/name in magento 2.3
How did passengers keep warm on sail ships?
Button changing its text & action. Good or terrible?
Can I visit the Trinity College (Cambridge) library and see some of their rare books
Why can't devices on different VLANs, but on the same subnet, communicate?
Is there a way to generate uniformly distributed points on a sphere from a fixed amount of random real numbers per point?
Visa regaring travelling European country
Are spiders unable to hurt humans, especially very small spiders?
Variable with quotation marks "$()"
Do I have Disadvantage attacking with an off-hand weapon?
Is every episode of "Where are my Pants?" identical?
Accepted by European university, rejected by all American ones I applied to? Possible reasons?
Can we generate random numbers using irrational numbers like π and e?
Huge performance difference of the command find with and without using %M option to show permissions
Did the UK government pay "millions and millions of dollars" to try to snag Julian Assange?
How to politely respond to generic emails requesting a PhD/job in my lab? Without wasting too much time
Homework question about an engine pulling a train
What is the padding with red substance inside of steak packaging?
Is this wall load bearing? Blueprints and photos attached
The following signatures were invalid: EXPKEYSIG 1397BC53640DB551
Sub-subscripts in strings cause different spacings than subscripts
Why can't wing-mounted spoilers be used to steepen approaches?
Why are there uneven bright areas in this photo of black hole?
"... to apply for a visa" or "... and applied for a visa"?
Why are PDP-7-style microprogrammed instructions out of vogue?
How to fix the related product issue in admin after migrated to magento 1 to magento 2.3
The 2019 Stack Overflow Developer Survey Results Are In
Unicorn Meta Zoo #1: Why another podcast?
Announcing the arrival of Valued Associate #679: Cesar ManaraHow to override product model files in Magento 2?Cannot See Product name in admin panel after savingHow to fix Magento 2 2.0.0-RC Admin page not found after installationMagento 2: Why is the cart empty?Fetch commission of related Designer for each ordered Product in admin DashboardMagento 2 : Display Related Products Block in Product ViewMagento product export issue?Product Delete create re- indexer issue in magento 2Magento 2.3: How to solve the message “Unable to send email”?Description Attribute Editor Issue in Magento 2.3'Migration Meta Information' is not updating when I edit product title/name in magento 2.3
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
I am using Magento 2.3.0
I have migrated products from Magento 1 to Magento 2. I can see related products in product detail page in the front end and it is proper and also I can find related products entry in the database as well but when I checked related products in admin I found that there are some related products missing in some of the products
For Ex. When I checked one product in the front end. I saw three related products there as well as in the database but I can find only 2 products in admin there is one product missing in admin.
I checked two tables in database for related products: "catalog_product_link
" and "catalog_product_link_attribute_int
".
I have found some values in the "value" column in "catalog_product_link_attribute_int
" table which represents the position of the related products in admin and in front end but I found value 0 in "value" column of this table for some of the products and when I checked these products I found that only those products which do have only 0 in "value" column in "catalog_product_link_attribute_int
" table are missing related products in admin.
So, How can I solve this issue?
Check my below question as well:
How to override product model files in Magento 2?
I have created a new module to solve the related product issue which I mentioned in this question but I got an error.
magento2 database catalog magento2.3 related-products
add a comment |
I am using Magento 2.3.0
I have migrated products from Magento 1 to Magento 2. I can see related products in product detail page in the front end and it is proper and also I can find related products entry in the database as well but when I checked related products in admin I found that there are some related products missing in some of the products
For Ex. When I checked one product in the front end. I saw three related products there as well as in the database but I can find only 2 products in admin there is one product missing in admin.
I checked two tables in database for related products: "catalog_product_link
" and "catalog_product_link_attribute_int
".
I have found some values in the "value" column in "catalog_product_link_attribute_int
" table which represents the position of the related products in admin and in front end but I found value 0 in "value" column of this table for some of the products and when I checked these products I found that only those products which do have only 0 in "value" column in "catalog_product_link_attribute_int
" table are missing related products in admin.
So, How can I solve this issue?
Check my below question as well:
How to override product model files in Magento 2?
I have created a new module to solve the related product issue which I mentioned in this question but I got an error.
magento2 database catalog magento2.3 related-products
add a comment |
I am using Magento 2.3.0
I have migrated products from Magento 1 to Magento 2. I can see related products in product detail page in the front end and it is proper and also I can find related products entry in the database as well but when I checked related products in admin I found that there are some related products missing in some of the products
For Ex. When I checked one product in the front end. I saw three related products there as well as in the database but I can find only 2 products in admin there is one product missing in admin.
I checked two tables in database for related products: "catalog_product_link
" and "catalog_product_link_attribute_int
".
I have found some values in the "value" column in "catalog_product_link_attribute_int
" table which represents the position of the related products in admin and in front end but I found value 0 in "value" column of this table for some of the products and when I checked these products I found that only those products which do have only 0 in "value" column in "catalog_product_link_attribute_int
" table are missing related products in admin.
So, How can I solve this issue?
Check my below question as well:
How to override product model files in Magento 2?
I have created a new module to solve the related product issue which I mentioned in this question but I got an error.
magento2 database catalog magento2.3 related-products
I am using Magento 2.3.0
I have migrated products from Magento 1 to Magento 2. I can see related products in product detail page in the front end and it is proper and also I can find related products entry in the database as well but when I checked related products in admin I found that there are some related products missing in some of the products
For Ex. When I checked one product in the front end. I saw three related products there as well as in the database but I can find only 2 products in admin there is one product missing in admin.
I checked two tables in database for related products: "catalog_product_link
" and "catalog_product_link_attribute_int
".
I have found some values in the "value" column in "catalog_product_link_attribute_int
" table which represents the position of the related products in admin and in front end but I found value 0 in "value" column of this table for some of the products and when I checked these products I found that only those products which do have only 0 in "value" column in "catalog_product_link_attribute_int
" table are missing related products in admin.
So, How can I solve this issue?
Check my below question as well:
How to override product model files in Magento 2?
I have created a new module to solve the related product issue which I mentioned in this question but I got an error.
magento2 database catalog magento2.3 related-products
magento2 database catalog magento2.3 related-products
edited yesterday
Chintan Kaneriya
asked yesterday
Chintan KaneriyaChintan Kaneriya
353214
353214
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Why it happens
This happens when there are inconsistent positions for the related products. This might happen after a migration from magento 1. It was the case for me also.
The problem is cause by the method MagentoCatalogModelProductLinkCollectionProvider::getCollection()
.
That's the one responsible for retrieving the products.
The part that does not behave as expected is this:
foreach ($output as $item)
$itemPosition = $item['position'];
if (!isset($sorterItems[$itemPosition]))
$sorterItems[$itemPosition] = $item;
else
$newPosition = $itemPosition + 1;
$sorterItems[$newPosition] = $item;
Let's take 2 cases.
THe one that works:
Let's say
$output = [
['position' => 0],
['position' => 2],
['position' => 1],
];
(I ignored the other values for the related items as they are not important).
After running the code above this results in
Array
(
[0] => Array
(
[position] => 0
)
[2] => Array
(
[position] => 2
)
[1] => Array
(
[position] => 1
)
)
which is later sorted by the ksort
function.
So 3 items on input, 3 on output. So far so good.
But let's take this case:
$output = [
['position' => 0], // or null
['position' => 1],
['position' => 0], // or null
];
The same piece of code returns:
Array
(
[0] => Array
(
[position] => 0
)
[1] => Array
(
[position] => 0
)
)
So 3 items in, 2 out.
Solution
I solve this by rewriting the method mentioned above and ensuring there are no position clashes.
To override it, add this in the di.xml
file in one of your custom modules
<preference for="MagentoCatalogModelProductLinkCollectionProvider" type="[Vendor][Module]ModelProductLinkCollectionProvider" />
Then create the class [Vendor][Module]ModelProductLinkCollectionProvider
in the file [Vendor]/[Module]/Model/ProductLink/CollectionProvider.php
The class should look like this:
<?php
namespace [Vendor][Module]ModelProductLink;
use MagentoFrameworkExceptionNoSuchEntityException;
class CollectionProvider extends MagentoCatalogModelProductLinkCollectionProvider
/**
* Get product collection by link type
*
* @param MagentoCatalogModelProduct $product
* @param string $type
* @return array
* @throws NoSuchEntityException
*/
public function getCollection(MagentoCatalogModelProduct $product, $type)
if (!isset($this->providers[$type]))
throw new NoSuchEntityException(__('Collection provider is not registered'));
$products = $this->providers[$type]->getLinkedProducts($product);
$converter = $this->converterPool->getConverter($type);
$output = [];
$sorterItems = [];
foreach ($products as $item)
$output[$item->getId()] = $converter->convert($item);
foreach ($output as $item)
$itemPosition = (int)$item['position'];
while (isset($sorterItems[$itemPosition]))
$itemPosition++;
$sorterItems[$itemPosition] = $item;
ksort($sorterItems);
return $sorterItems;
How can I rewrite this method. Can I change the method directly in the vendor file?
– Chintan Kaneriya
yesterday
I've updated the answer to include the full solution.
– Marius♦
yesterday
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "479"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f269651%2fhow-to-fix-the-related-product-issue-in-admin-after-migrated-to-magento-1-to-mag%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Why it happens
This happens when there are inconsistent positions for the related products. This might happen after a migration from magento 1. It was the case for me also.
The problem is cause by the method MagentoCatalogModelProductLinkCollectionProvider::getCollection()
.
That's the one responsible for retrieving the products.
The part that does not behave as expected is this:
foreach ($output as $item)
$itemPosition = $item['position'];
if (!isset($sorterItems[$itemPosition]))
$sorterItems[$itemPosition] = $item;
else
$newPosition = $itemPosition + 1;
$sorterItems[$newPosition] = $item;
Let's take 2 cases.
THe one that works:
Let's say
$output = [
['position' => 0],
['position' => 2],
['position' => 1],
];
(I ignored the other values for the related items as they are not important).
After running the code above this results in
Array
(
[0] => Array
(
[position] => 0
)
[2] => Array
(
[position] => 2
)
[1] => Array
(
[position] => 1
)
)
which is later sorted by the ksort
function.
So 3 items on input, 3 on output. So far so good.
But let's take this case:
$output = [
['position' => 0], // or null
['position' => 1],
['position' => 0], // or null
];
The same piece of code returns:
Array
(
[0] => Array
(
[position] => 0
)
[1] => Array
(
[position] => 0
)
)
So 3 items in, 2 out.
Solution
I solve this by rewriting the method mentioned above and ensuring there are no position clashes.
To override it, add this in the di.xml
file in one of your custom modules
<preference for="MagentoCatalogModelProductLinkCollectionProvider" type="[Vendor][Module]ModelProductLinkCollectionProvider" />
Then create the class [Vendor][Module]ModelProductLinkCollectionProvider
in the file [Vendor]/[Module]/Model/ProductLink/CollectionProvider.php
The class should look like this:
<?php
namespace [Vendor][Module]ModelProductLink;
use MagentoFrameworkExceptionNoSuchEntityException;
class CollectionProvider extends MagentoCatalogModelProductLinkCollectionProvider
/**
* Get product collection by link type
*
* @param MagentoCatalogModelProduct $product
* @param string $type
* @return array
* @throws NoSuchEntityException
*/
public function getCollection(MagentoCatalogModelProduct $product, $type)
if (!isset($this->providers[$type]))
throw new NoSuchEntityException(__('Collection provider is not registered'));
$products = $this->providers[$type]->getLinkedProducts($product);
$converter = $this->converterPool->getConverter($type);
$output = [];
$sorterItems = [];
foreach ($products as $item)
$output[$item->getId()] = $converter->convert($item);
foreach ($output as $item)
$itemPosition = (int)$item['position'];
while (isset($sorterItems[$itemPosition]))
$itemPosition++;
$sorterItems[$itemPosition] = $item;
ksort($sorterItems);
return $sorterItems;
How can I rewrite this method. Can I change the method directly in the vendor file?
– Chintan Kaneriya
yesterday
I've updated the answer to include the full solution.
– Marius♦
yesterday
add a comment |
Why it happens
This happens when there are inconsistent positions for the related products. This might happen after a migration from magento 1. It was the case for me also.
The problem is cause by the method MagentoCatalogModelProductLinkCollectionProvider::getCollection()
.
That's the one responsible for retrieving the products.
The part that does not behave as expected is this:
foreach ($output as $item)
$itemPosition = $item['position'];
if (!isset($sorterItems[$itemPosition]))
$sorterItems[$itemPosition] = $item;
else
$newPosition = $itemPosition + 1;
$sorterItems[$newPosition] = $item;
Let's take 2 cases.
THe one that works:
Let's say
$output = [
['position' => 0],
['position' => 2],
['position' => 1],
];
(I ignored the other values for the related items as they are not important).
After running the code above this results in
Array
(
[0] => Array
(
[position] => 0
)
[2] => Array
(
[position] => 2
)
[1] => Array
(
[position] => 1
)
)
which is later sorted by the ksort
function.
So 3 items on input, 3 on output. So far so good.
But let's take this case:
$output = [
['position' => 0], // or null
['position' => 1],
['position' => 0], // or null
];
The same piece of code returns:
Array
(
[0] => Array
(
[position] => 0
)
[1] => Array
(
[position] => 0
)
)
So 3 items in, 2 out.
Solution
I solve this by rewriting the method mentioned above and ensuring there are no position clashes.
To override it, add this in the di.xml
file in one of your custom modules
<preference for="MagentoCatalogModelProductLinkCollectionProvider" type="[Vendor][Module]ModelProductLinkCollectionProvider" />
Then create the class [Vendor][Module]ModelProductLinkCollectionProvider
in the file [Vendor]/[Module]/Model/ProductLink/CollectionProvider.php
The class should look like this:
<?php
namespace [Vendor][Module]ModelProductLink;
use MagentoFrameworkExceptionNoSuchEntityException;
class CollectionProvider extends MagentoCatalogModelProductLinkCollectionProvider
/**
* Get product collection by link type
*
* @param MagentoCatalogModelProduct $product
* @param string $type
* @return array
* @throws NoSuchEntityException
*/
public function getCollection(MagentoCatalogModelProduct $product, $type)
if (!isset($this->providers[$type]))
throw new NoSuchEntityException(__('Collection provider is not registered'));
$products = $this->providers[$type]->getLinkedProducts($product);
$converter = $this->converterPool->getConverter($type);
$output = [];
$sorterItems = [];
foreach ($products as $item)
$output[$item->getId()] = $converter->convert($item);
foreach ($output as $item)
$itemPosition = (int)$item['position'];
while (isset($sorterItems[$itemPosition]))
$itemPosition++;
$sorterItems[$itemPosition] = $item;
ksort($sorterItems);
return $sorterItems;
How can I rewrite this method. Can I change the method directly in the vendor file?
– Chintan Kaneriya
yesterday
I've updated the answer to include the full solution.
– Marius♦
yesterday
add a comment |
Why it happens
This happens when there are inconsistent positions for the related products. This might happen after a migration from magento 1. It was the case for me also.
The problem is cause by the method MagentoCatalogModelProductLinkCollectionProvider::getCollection()
.
That's the one responsible for retrieving the products.
The part that does not behave as expected is this:
foreach ($output as $item)
$itemPosition = $item['position'];
if (!isset($sorterItems[$itemPosition]))
$sorterItems[$itemPosition] = $item;
else
$newPosition = $itemPosition + 1;
$sorterItems[$newPosition] = $item;
Let's take 2 cases.
THe one that works:
Let's say
$output = [
['position' => 0],
['position' => 2],
['position' => 1],
];
(I ignored the other values for the related items as they are not important).
After running the code above this results in
Array
(
[0] => Array
(
[position] => 0
)
[2] => Array
(
[position] => 2
)
[1] => Array
(
[position] => 1
)
)
which is later sorted by the ksort
function.
So 3 items on input, 3 on output. So far so good.
But let's take this case:
$output = [
['position' => 0], // or null
['position' => 1],
['position' => 0], // or null
];
The same piece of code returns:
Array
(
[0] => Array
(
[position] => 0
)
[1] => Array
(
[position] => 0
)
)
So 3 items in, 2 out.
Solution
I solve this by rewriting the method mentioned above and ensuring there are no position clashes.
To override it, add this in the di.xml
file in one of your custom modules
<preference for="MagentoCatalogModelProductLinkCollectionProvider" type="[Vendor][Module]ModelProductLinkCollectionProvider" />
Then create the class [Vendor][Module]ModelProductLinkCollectionProvider
in the file [Vendor]/[Module]/Model/ProductLink/CollectionProvider.php
The class should look like this:
<?php
namespace [Vendor][Module]ModelProductLink;
use MagentoFrameworkExceptionNoSuchEntityException;
class CollectionProvider extends MagentoCatalogModelProductLinkCollectionProvider
/**
* Get product collection by link type
*
* @param MagentoCatalogModelProduct $product
* @param string $type
* @return array
* @throws NoSuchEntityException
*/
public function getCollection(MagentoCatalogModelProduct $product, $type)
if (!isset($this->providers[$type]))
throw new NoSuchEntityException(__('Collection provider is not registered'));
$products = $this->providers[$type]->getLinkedProducts($product);
$converter = $this->converterPool->getConverter($type);
$output = [];
$sorterItems = [];
foreach ($products as $item)
$output[$item->getId()] = $converter->convert($item);
foreach ($output as $item)
$itemPosition = (int)$item['position'];
while (isset($sorterItems[$itemPosition]))
$itemPosition++;
$sorterItems[$itemPosition] = $item;
ksort($sorterItems);
return $sorterItems;
Why it happens
This happens when there are inconsistent positions for the related products. This might happen after a migration from magento 1. It was the case for me also.
The problem is cause by the method MagentoCatalogModelProductLinkCollectionProvider::getCollection()
.
That's the one responsible for retrieving the products.
The part that does not behave as expected is this:
foreach ($output as $item)
$itemPosition = $item['position'];
if (!isset($sorterItems[$itemPosition]))
$sorterItems[$itemPosition] = $item;
else
$newPosition = $itemPosition + 1;
$sorterItems[$newPosition] = $item;
Let's take 2 cases.
THe one that works:
Let's say
$output = [
['position' => 0],
['position' => 2],
['position' => 1],
];
(I ignored the other values for the related items as they are not important).
After running the code above this results in
Array
(
[0] => Array
(
[position] => 0
)
[2] => Array
(
[position] => 2
)
[1] => Array
(
[position] => 1
)
)
which is later sorted by the ksort
function.
So 3 items on input, 3 on output. So far so good.
But let's take this case:
$output = [
['position' => 0], // or null
['position' => 1],
['position' => 0], // or null
];
The same piece of code returns:
Array
(
[0] => Array
(
[position] => 0
)
[1] => Array
(
[position] => 0
)
)
So 3 items in, 2 out.
Solution
I solve this by rewriting the method mentioned above and ensuring there are no position clashes.
To override it, add this in the di.xml
file in one of your custom modules
<preference for="MagentoCatalogModelProductLinkCollectionProvider" type="[Vendor][Module]ModelProductLinkCollectionProvider" />
Then create the class [Vendor][Module]ModelProductLinkCollectionProvider
in the file [Vendor]/[Module]/Model/ProductLink/CollectionProvider.php
The class should look like this:
<?php
namespace [Vendor][Module]ModelProductLink;
use MagentoFrameworkExceptionNoSuchEntityException;
class CollectionProvider extends MagentoCatalogModelProductLinkCollectionProvider
/**
* Get product collection by link type
*
* @param MagentoCatalogModelProduct $product
* @param string $type
* @return array
* @throws NoSuchEntityException
*/
public function getCollection(MagentoCatalogModelProduct $product, $type)
if (!isset($this->providers[$type]))
throw new NoSuchEntityException(__('Collection provider is not registered'));
$products = $this->providers[$type]->getLinkedProducts($product);
$converter = $this->converterPool->getConverter($type);
$output = [];
$sorterItems = [];
foreach ($products as $item)
$output[$item->getId()] = $converter->convert($item);
foreach ($output as $item)
$itemPosition = (int)$item['position'];
while (isset($sorterItems[$itemPosition]))
$itemPosition++;
$sorterItems[$itemPosition] = $item;
ksort($sorterItems);
return $sorterItems;
edited yesterday
answered yesterday
Marius♦Marius
168k28324692
168k28324692
How can I rewrite this method. Can I change the method directly in the vendor file?
– Chintan Kaneriya
yesterday
I've updated the answer to include the full solution.
– Marius♦
yesterday
add a comment |
How can I rewrite this method. Can I change the method directly in the vendor file?
– Chintan Kaneriya
yesterday
I've updated the answer to include the full solution.
– Marius♦
yesterday
How can I rewrite this method. Can I change the method directly in the vendor file?
– Chintan Kaneriya
yesterday
How can I rewrite this method. Can I change the method directly in the vendor file?
– Chintan Kaneriya
yesterday
I've updated the answer to include the full solution.
– Marius♦
yesterday
I've updated the answer to include the full solution.
– Marius♦
yesterday
add a comment |
Thanks for contributing an answer to Magento Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmagento.stackexchange.com%2fquestions%2f269651%2fhow-to-fix-the-related-product-issue-in-admin-after-migrated-to-magento-1-to-mag%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown