Feature request from danslo, posted on GitHub Aug 15, 2015
There are things like Magento\Customer\Block\Adminhtml\Edit\BackButton which don't contain any customer specific functionality, preferably they should be moved to a more generic place ( Magento\Framework\View or Magento\Ui ?) so other modules can make use of them without having dependency on Magento_Customer .
... View more
Feature request from mage2pro, posted on GitHub Sep 30, 2015
The issue is similar to (but not the same as) https://github.com/magento/magento2/issues/1909 and https://github.com/magento/magento2/issues/1980
My fix with plugins: https://mage2.pro/t/96
Surely the possibility to translate product attributes should be in the core.
... View more
Feature request from mage2pro, posted on GitHub Oct 25, 2015
Varien_Object::_construct() :
https://github.com/OpenMage/magento-mirror/blob/1.9.2.1/lib/Varien/Object.php#L154-L156
I see it is already restored (by duplication) in the base model, base block, base form and so on:
\Magento\Framework\Model\AbstractModel::_construct() :
https://github.com/magento/magento2/blob/02e0378c33054acb0cdb8d731d1e2b2c2069bc1b/lib/internal/Magento/Framework/Model/AbstractModel.php#L201-L203
\Magento\Framework\View\Element\AbstractBlock::_construct()
https://github.com/magento/magento2/blob/02e0378c33054acb0cdb8d731d1e2b2c2069bc1b/lib/internal/Magento/Framework/View/Element/AbstractBlock.php#L223-L228
\Magento\Framework\Data\Form\AbstractForm::_construct()
https://github.com/magento/magento2/blob/02e0378c33054acb0cdb8d731d1e2b2c2069bc1b/lib/internal/Magento/Framework/Data/Form/AbstractForm.php#L71-L73
Why does it absent in \Magento\Framework\DataObject ?
... View more
Feature request from mage2pro, posted on GitHub Oct 27, 2015
There is an internal field \Magento/Framework/View/Layout/Builder::$isBuilt
https://github.com/magento/magento2/blob/ffa02d82c6344c76ea6de8b50d9612b3200ea2c7/lib/internal/Magento/Framework/View/Layout/Builder.php#L61
Need a public method.
There is an event layout_generate_blocks_after :
https://github.com/magento/magento2/blob/ffa02d82c6344c76ea6de8b50d9612b3200ea2c7/lib/internal/Magento/Framework/View/Layout/Builder.php#L133
But it is inconvenient to listen for the event while an extension just need to get the current layout state: built or not.
... View more
Feature request from mage2pro, posted on GitHub Nov 02, 2015
An event on a backend CMS page form creation:
https://github.com/magento/magento2/blob/f578e54e093c31378ca981cfe336f7e651194585/app/code/Magento/Cms/Block/Adminhtml/Page/Edit/Tab/Content.php#L99
No any event on a backend CMS block form creation:
https://github.com/magento/magento2/blob/c743dec47b2e5de036eb5638fec44a54bfb31040/app/code/Magento/Cms/Block/Adminhtml/Block/Edit/Form.php#L61-L158
... View more
Feature request from mage2pro, posted on GitHub Nov 04, 2015
Similar to https://github.com/magento/magento2/issues/2248 and https://github.com/magento/magento2/issues/2249.
The «controller_action_catalog_product_save_entity_after» event firing :
https://github.com/magento/magento2/blob/16dc76df41fac703b322cc0f9ab3dba43742bbed/app/code/Magento/Catalog/Controller/Adminhtml/Product/Save.php#L105-L108
There is no similar event for a category:
https://github.com/magento/magento2/blob/16dc76df41fac703b322cc0f9ab3dba43742bbed/app/code/Magento/Catalog/Controller/Adminhtml/Category/Save.php#L73-L212
... View more
Feature request from mage2pro, posted on GitHub Nov 02, 2015
The problem line is
https://github.com/magento/magento2/blob/f578e54e093c31378ca981cfe336f7e651194585/app/code/Magento/Cms/Controller/Adminhtml/Page/Save.php#L62
I propose to change it to
if (!$this->dataProcessor->validate($model->getData())) {
My detailed explanation: https://mage2.pro/t/159
... View more
Feature request from mage2pro, posted on GitHub Nov 13, 2015
https://github.com/magento/magento2/blob/2335247d4ae2dc1e0728ee73022b0a244ccd7f4c/app/code/Magento/Catalog/Block/Product/AbstractProduct.php#L374-L379
... View more
Feature request from licentia, posted on GitHub Oct 15, 2015
Magento should save the fee charged by Paypal for the transaction. This is very useful when trying to calculate Customer Equity & LTV. We have precise values and not approximate ones.
Check this doc: https://developer.paypal.com/docs/classic/api/merchant/GetTransactionDetails_API_Operation_NVP/ and the FEEAMT field.
FEEAMT should be added to the
protected $_getTransactionDetailsResponse
in
Magento\Paypal\Model\Api\Nvp
And stored in the
sales_order_payment table
... View more
Feature request from brideo, posted on GitHub Nov 13, 2015
http://php.net/manual/en/language.oop5.late-static-bindings.php
Rather than this:
/**
* @return bool
*/
protected function _isAllowed()
{
return $this->_authorization->isAllowed(self::ADMIN_RESOURCE);
}
We should have this:
/**
* @return bool
*/
protected function _isAllowed()
{
return $this->_authorization->isAllowed(static::ADMIN_RESOURCE);
}
By using a static binding, we don't have to completely re-write the _isAllowed method in our controller action, instead we can simply define our ADMIN_RESOURCE constant, we then can let the AbstractAction handle our logic.
This would be a completely backwards compatible change.
... View more
Feature request from hostep, posted on GitHub Nov 15, 2015
Hi
Using Magento 2.0.0-rc2.
I currently find it hard to edit a static block or cms page. We are now obligated to click at least twice on a tiny target, or even more then that if you make the mistake of clicking into a column which isn't the action column, due to the inline editing feature opening up.
I can see the usefulness of inline editing when clicking on a row, but now it's becoming a bit harder to actually edit the contents of the page/block.
I think in 80% of the cases when someone goes to the blocks/pages grid, it is to edit the contents of that block/page, not to change the title or the status or something like that.
Here are some ideas to make it a bit more practical while keeping the inline editing feature:
Split the actions into multiple columns, so you can click directly on 'Edit'
Clicking on a column in a row which you can't edit inline (ID, created/modified dates, ...) should open up the static block/page immediately
Add a configuration option above the grid to enable/disable the inline editing feature
...
If anybody has other ideas to make this a less frustrating experience, please tune in :)
Thanks!
... View more
Feature request from mage2pro, posted on GitHub Nov 02, 2015
Similar to https://github.com/magento/magento2/issues/2248
The «cms_page_prepare_save» event firing :
https://github.com/magento/magento2/blob/f578e54e093c31378ca981cfe336f7e651194585/app/code/Magento/Cms/Controller/Adminhtml/Page/Save.php#L57-L60
There is no similar event for block:
https://github.com/magento/magento2/blob/f578e54e093c31378ca981cfe336f7e651194585/app/code/Magento/Cms/Controller/Adminhtml/Block/Save.php#L16-L59
... View more
Feature request from mage2pro, posted on GitHub Nov 17, 2015
See, for example:
https://github.com/magento/magento2/blob/2335247d4ae2dc1e0728ee73022b0a244ccd7f4c/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_new.xml#L55
<block
class="Magento\Catalog\Block\Adminhtml\Product\Edit\Js"
name="catalog_product_js"
template="catalog/product/js.phtml"
/>
is the same as
<block
class="Magento\Catalog\Block\Adminhtml\Product\Edit\Js"
name="catalog_product_js"
template="Magento_Catalog::catalog/product/js.phtml"
/>
But it is not possible for CSS and JS declarations:
https://github.com/magento/magento2/blob/2335247d4ae2dc1e0728ee73022b0a244ccd7f4c/app/code/Magento/Catalog/view/adminhtml/layout/catalog_product_new.xml#L12
<css src="Magento_Catalog::product/product.css"/>
It would be nice to have an abilily skip the current module prefix and use some shorter syntax like <css src="product/product.css"/> or <css src="::product/product.css"/>
... View more
Feature request from mage2pro, posted on GitHub Nov 16, 2015
https://mage2.pro/t/topic/209
... View more
Feature request from hiephm, posted on GitHub Jan 18, 2016
Although Magento 2 allows hooking to event when logging in to add additional validations (just like Magento 1), there is no way to change the error message if those validation failed (e.g by throwing Exception) since a default message is used for general Exception:
# \Magento\Customer\Controller\Account\LoginPost::execute()
...
} catch (\Exception $e) {
$this->messageManager->addError(__('Invalid login or password.'));
}
In the other hand, the same logic in Magento 1 is more customizable:
# \Mage_Customer_AccountController::loginPostAction()
switch ($e->getCode()) {
...
default:
$message = $e->getMessage();
}
$session->addError($message);
... View more
Feature request from augsteyer, posted on GitHub Feb 03, 2016
I believe this is a bug where I am trying to pass a JSON object like this
{
"action":"get_setting",
"settings":
[
{
"name": "t",
"value": "p"
}
]
}
Where the interface looks like this
/**
* @param string $action
* @param array[][] $settings - the type here is the problem area
*
* @return string
*/
public function setSettings($action, $settings);
I have currently tried many variations of string[][], array[], string[], mixed[], Array[], etc, without any way of passing settings without getting an error thrown at the lib/internal/Magento/Framework/Webapi/ServiceInputProcessor.php::process() function.
The root cause of the problem is that in lib/internal/Magento/Framework/Webapi/ServiceInputProcessor.php::convertValue() it has no way of parsing array of arrays. If it's something like "string[][]" it will consider it a simple type and will try to match it to !settype(array(...), string), which results into an error. If it's something unknown like array[][]. It will consider it complex, and try to initialize it as a class, where it will figure out that 'array' is not a class.
A way of solving, would be to make array a simple type, however I do not know the implications of such change, hence why it's not a pull request. The change would also allow this case to be accepted whether it's array[][] or array[] or array, so most likely not a good solution.
lib/internal/Magento/Framework/Reflection/TypeProcessor.php::isTypeSimple()
...
return in_array(
$type,
[
self::NORMALIZED_STRING_TYPE,
self::NORMALIZED_INT_TYPE,
self::NORMALIZED_FLOAT_TYPE,
self::NORMALIZED_DOUBLE_TYPE,
self::NORMALIZED_BOOLEAN_TYPE,
self::NORMALIZED_ARRAY_TYPE //'array' <------
]
);
... View more
Feature request from avoking100, posted on GitHub Feb 05, 2016
Hello guys. New to Github, New to M2, New to bugs.
When I add a new "Configurable product" I need to choose "weight". Now, since I dont have weight for this product, I choose "Weight" = No.
When I create configurations for this product, i see it generates VIRTUAL products instead of SIMPLE products. The problem is I want SIMPLE products, even I do not have a weight (!).
After I load the product again I See "Weight" =" yes", I try to save it as "NO" but it always keep showing "yes".
Now, the problem with Virtual products that are generated, is: when I go to checkout selection these products it does not offer me to enter shipping address. So this issue is critical for me. I can not make SIMPLE products using a "Configurable product" because I do not have a weight?
I hope anyone can help me and confirm it is a bug.
Thank you!
... View more
Feature request from stefandoorn, posted on GitHub Feb 12, 2016
The way the ErrorHandler is loaded in Framework\App\Bootstrap probably prevents interception on the ErrorHandler class. Reason I would like to use this, is to adjust the ErrorHandler in a more developer friendly version (Whoops).
It makes sense, as the error handler needs to be registered before the object manager will be loaded. But, it would be great if there is a method to register another error_handler after that is done.
So basically it would be:
Register default Magento error handler
Load object manager
Register default Magento error handler again using object manager
The second moment would allow for interception I believe. Or, am I overseeing a method to register a different error_handler?
... View more