Author: stephen

Magento 2 Developer Extensions Wall of Shame

This Hall of shame will act as a warning system for Magento 2 developers to help avoid bad quality extensions. If an extension of bad quality is produced the developer brand will be shown here.

  1. Mageworx
  2. MagePlaza
  3. Magecomp

 

MageWorx Multifees

Untested code.

Here is the code to add the isRequired Filter:

public function addRequiredFilter($isRequired = true)
{
    if ($isRequired) {
        $this->getSelect()->where('main_table.required = ?', Fee::REQUIRED);
    }
    return $this;
}

But the Fee::REQUIRED constant is: a string

const FEE_ID                   = 'fee_id';
const TYPE                     = 'type';
const INPUT_TYPE               = 'input_type';
const IS_ONETIME               = 'is_onetime';
const REQUIRED                 = '1';
const SALES_METHODS            = 'sales_methods';
const APPLIED_TOTALS           = 'applied_totals';
const TAX_CLASS_ID             = 'tax_class_id';
const CONDITIONS_SERIALIZED    = 'conditions_serialized';
const ENABLE_CUSTOMER_MESSAGE  = 'enable_customer_message';
const ENABLE_DATA_FIELD        = 'enable_date_field';
const TOTAL_ORDERED            = 'total_ordered';
const TOTAL_BASE_AMOUNT        = 'total_base_amount';
const SORT_ORDER               = 'sort_order';
const STATUS                   = 'status';

Forming a query that checks where the field is required instead of 1

Mage Plaza – Layered Navigaiton

Breaks layered navigation with elasticsearch and allows multiple attributes with an AND when it should only be a single

 

MageComp_Recaptcha

Horrific rewrites and module does not work at all.

Incompetent developers.