Skip to content

Commit 68900aa

Browse files
committed
Merge branch 'main' into next
2 parents 5711907 + d8bd81b commit 68900aa

File tree

168 files changed

+89246
-89179
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

168 files changed

+89246
-89179
lines changed

.ddev/commands/web/openmage-admin

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
#!/bin/bash
2+
3+
## ProjectTypes: magento
4+
## Description: Create/Update OpenMage Administrator Account
5+
## Usage: openmage-admin
6+
## Example: ddev openmage-admin
7+
8+
read -r -p "Choose your action for the administrator account [Create/Update]: " ACTION
9+
ACTION=${ACTION,,} # to lower
10+
11+
if [[ "${ACTION}" =~ ^(update|u) || "${ACTION}" =~ ^(create|c) ]]; then
12+
read -r -p "Admin User [admin]: " ADMIN_USER
13+
ADMIN_USER=${ADMIN_USER:-admin}
14+
read -r -p "Admin Firstname [OpenMage]: " ADMIN_FIRSTNAME
15+
ADMIN_FIRSTNAME=${ADMIN_FIRSTNAME:-OpenMage}
16+
read -r -p "Admin Lastname [Administrator]: " ADMIN_LASTNAME
17+
ADMIN_LASTNAME=${ADMIN_LASTNAME:-Administrator}
18+
read -r -p "Admin Email [[email protected]]: " ADMIN_EMAIL
19+
ADMIN_EMAIL=${ADMIN_EMAIL:-admin@example.com}
20+
read -r -p "Admin Password [veryl0ngpassw0rd]: " ADMIN_PASSWORD
21+
ADMIN_PASSWORD=${ADMIN_PASSWORD:-veryl0ngpassw0rd}
22+
read -r -p "Table Prefix []: " TABLE_PREFIX
23+
TABLE_PREFIX=${TABLE_PREFIX:-}
24+
else
25+
echo "Please run again and choose an action."
26+
exit 1
27+
fi
28+
29+
RANDOM_STRING=$({ tr -dc A-Za-z0-9 </dev/urandom | head -c 32 ; })
30+
31+
if [[ "${ACTION}" =~ ^(update|u) ]]; then
32+
if mysql -u db -h db db -e "UPDATE "${TABLE_PREFIX}"admin_user SET password=CONCAT(MD5('"${RANDOM_STRING}""${ADMIN_PASSWORD}"'),':"${RANDOM_STRING}"') WHERE username='"${ADMIN_USER}"'"; then
33+
echo "If the account "${ADMIN_USER}" exists it has been updated."
34+
else
35+
exit 1
36+
fi
37+
elif [[ "${ACTION}" =~ ^(create|c) ]]; then
38+
if mysql -u db -h db db -e "INSERT INTO "${TABLE_PREFIX}"admin_user (firstname, lastname, email, username, password) VALUES ('"${ADMIN_FIRSTNAME}"', '"${ADMIN_LASTNAME}"', '"${ADMIN_EMAIL}"', '"${ADMIN_USER}"', CONCAT(MD5('"${RANDOM_STRING}""${ADMIN_PASSWORD}"'), ':"${RANDOM_STRING}"'))"; then
39+
mysql -u db -h db db -e "INSERT INTO "${TABLE_PREFIX}"admin_role(parent_id, tree_level, sort_order, role_type, user_id, role_name)
40+
VALUES (1, 2, 0, 'U',(SELECT user_id FROM "${TABLE_PREFIX}"admin_user WHERE username = '"${ADMIN_USER}"'),'"${ADMIN_FIRSTNAME}"')"
41+
echo "The account "$ADMIN_USER" has been created."
42+
else
43+
exit 1
44+
fi
45+
fi

.htaccess

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@
247247
Order allow,deny
248248
Deny from all
249249
</FilesMatch>
250-
<FilesMatch \.(dist|lock|md|neon|sample|sh|yml|yaml)$>
250+
<FilesMatch \.(dist|flag|ip|lock|md|neon|sample|sh|yml|yaml)$>
251251
Order allow,deny
252252
Deny from all
253253
</FilesMatch>

app/code/core/Mage/Catalog/Helper/Product/View.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,9 @@ public function prepareAndRender($productId, $controller, $params = null)
118118
throw new Mage_Core_Exception($this->__('Product is not loaded'), $this->ERR_NO_PRODUCT_LOADED);
119119
}
120120

121-
$buyRequest = $params->getBuyRequest();
121+
/** @see Mage_Checkout_CartController::_setProductBuyRequest() */
122+
$checkoutBuyRequest = Mage::getSingleton('checkout/session')->getProductBuyRequest(true);
123+
$buyRequest = $params->getBuyRequest() ?: $checkoutBuyRequest;
122124
if ($buyRequest) {
123125
$productHelper->prepareProductOptions($product, $buyRequest);
124126
}

app/code/core/Mage/Checkout/controllers/CartController.php

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -251,17 +251,19 @@ public function addAction()
251251
} else {
252252
$messages = array_unique(explode("\n", $e->getMessage()));
253253
foreach ($messages as $message) {
254-
$this->_getSession()->addError(Mage::helper('core')->escapeHtml($message));
254+
$this->_getSession()->addError(Mage::helper('core')->escapeHtml($message, ['em']));
255255
}
256256
}
257257

258258
$url = $this->_getSession()->getRedirectUrl(true);
259259
if ($url) {
260+
$this->_setProductBuyRequest();
260261
$this->getResponse()->setRedirect($url);
261262
} else {
262263
$this->_redirectReferer(Mage::helper('checkout/cart')->getCartUrl());
263264
}
264265
} catch (Exception $e) {
266+
$this->_setProductBuyRequest();
265267
$this->_getSession()->addException($e, $this->__('Cannot add the item to shopping cart.'));
266268
$this->_goBack();
267269
}
@@ -415,6 +417,7 @@ public function updateItemOptionsAction()
415417
$this->_redirectReferer(Mage::helper('checkout/cart')->getCartUrl());
416418
}
417419
} catch (Exception $e) {
420+
$this->_setProductBuyRequest();
418421
$this->_getSession()->addException($e, $this->__('Cannot update the item.'));
419422
$this->_goBack();
420423
}
@@ -711,4 +714,17 @@ protected function _getCustomerSession()
711714
{
712715
return Mage::getSingleton('customer/session');
713716
}
717+
718+
/**
719+
* Set product form data in checkout session for populating the product form
720+
* in case of errors in add to cart process.
721+
*
722+
* @return void
723+
*/
724+
protected function _setProductBuyRequest(): void
725+
{
726+
$buyRequest = $this->getRequest()->getPost();
727+
$buyRequestObject = new Varien_Object($buyRequest);
728+
$this->_getSession()->setProductBuyRequest($buyRequestObject);
729+
}
714730
}

app/code/core/Mage/GoogleAnalytics/Block/Ga.php

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -143,12 +143,12 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
143143
$_removedProduct = Mage::getModel('catalog/product')->load($removedProduct);
144144
$eventData = [];
145145
$eventData['currency'] = Mage::app()->getStore()->getCurrentCurrencyCode();
146-
$eventData['value'] = number_format($_removedProduct->getFinalPrice(), 2);
146+
$eventData['value'] = number_format($_removedProduct->getFinalPrice(), 2, '.', '');
147147
$eventData['items'] = [];
148148
$_item = [
149149
'item_id' => $_removedProduct->getSku(),
150150
'item_name' => $_removedProduct->getName(),
151-
'price' => number_format($_removedProduct->getFinalPrice(), 2),
151+
'price' => number_format($_removedProduct->getFinalPrice(), 2, '.', ''),
152152
];
153153
if ($_removedProduct->getAttributeText('manufacturer')) {
154154
$_item['item_brand'] = $_removedProduct->getAttributeText('manufacturer');
@@ -174,12 +174,12 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
174174
$_addedProduct = Mage::getModel('catalog/product')->load($addedProduct);
175175
$eventData = [];
176176
$eventData['currency'] = Mage::app()->getStore()->getCurrentCurrencyCode();
177-
$eventData['value'] = number_format($_addedProduct->getFinalPrice(), 2);
177+
$eventData['value'] = number_format($_addedProduct->getFinalPrice(), 2, '.', '');
178178
$eventData['items'] = [];
179179
$_item = [
180180
'item_id' => $_addedProduct->getSku(),
181181
'item_name' => $_addedProduct->getName(),
182-
'price' => number_format($_addedProduct->getFinalPrice(), 2),
182+
'price' => number_format($_addedProduct->getFinalPrice(), 2, '.', ''),
183183
];
184184
if ($_addedProduct->getAttributeText('manufacturer')) {
185185
$_item['item_brand'] = $_addedProduct->getAttributeText('manufacturer');
@@ -205,14 +205,14 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
205205
$category = Mage::registry('current_category') ? Mage::registry('current_category')->getName() : false;
206206
$eventData = [];
207207
$eventData['currency'] = Mage::app()->getStore()->getCurrentCurrencyCode();
208-
$eventData['value'] = number_format($productViewed->getFinalPrice(), 2);
208+
$eventData['value'] = number_format($productViewed->getFinalPrice(), 2, '.', '');
209209
$eventData['items'] = [];
210210
$_item = [
211211
'item_id' => $productViewed->getSku(),
212212
'item_name' => $productViewed->getName(),
213213
'list_name' => 'Product Detail Page',
214214
'item_category' => $category,
215-
'price' => number_format($productViewed->getFinalPrice(), 2),
215+
'price' => number_format($productViewed->getFinalPrice(), 2, '.', ''),
216216
];
217217
if ($productViewed->getAttributeText('manufacturer')) {
218218
$_item['item_brand'] = $productViewed->getAttributeText('manufacturer');
@@ -251,7 +251,7 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
251251
'item_id' => $productViewed->getSku(),
252252
'index' => $index,
253253
'item_name' => $productViewed->getName(),
254-
'price' => number_format($productViewed->getFinalPrice(), 2),
254+
'price' => number_format($productViewed->getFinalPrice(), 2, '.', ''),
255255
];
256256
if ($productViewed->getAttributeText('manufacturer')) {
257257
$_item['item_brand'] = $productViewed->getAttributeText('manufacturer');
@@ -263,7 +263,7 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
263263
$index++;
264264
$eventData['value'] += $productViewed->getFinalPrice();
265265
}
266-
$eventData['value'] = number_format($eventData['value'], 2);
266+
$eventData['value'] = number_format($eventData['value'], 2, '.', '');
267267
$result[] = "gtag('event', 'view_item_list', " . json_encode($eventData, JSON_THROW_ON_ERROR) . ");";
268268
}
269269

@@ -284,7 +284,7 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
284284
$_item = [
285285
'item_id' => $_product->getSku(),
286286
'item_name' => $_product->getName(),
287-
'price' => number_format($_product->getFinalPrice(), 2),
287+
'price' => number_format($_product->getFinalPrice(), 2, '.', ''),
288288
'quantity' => (int) $productInCart->getQty(),
289289
];
290290
if ($_product->getAttributeText('manufacturer')) {
@@ -298,7 +298,7 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
298298
array_push($eventData['items'], $_item);
299299
$eventData['value'] += $_product->getFinalPrice();
300300
}
301-
$eventData['value'] = number_format($eventData['value'], 2);
301+
$eventData['value'] = number_format($eventData['value'], 2, '.', '');
302302
$result[] = "gtag('event', 'view_cart', " . json_encode($eventData, JSON_THROW_ON_ERROR) . ");";
303303
}
304304

@@ -319,7 +319,8 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
319319
$_item = [
320320
'item_id' => $_product->getSku(),
321321
'item_name' => $_product->getName(),
322-
'price' => number_format($_product->getFinalPrice(), 2),
322+
'price' => number_format($_product->getFinalPrice(), 2, '.', ''),
323+
'quantity' => (int) $productInCart->getQty(),
323324
];
324325
if ($_product->getAttributeText('manufacturer')) {
325326
$_item['item_brand'] = $_product->getAttributeText('manufacturer');
@@ -332,7 +333,7 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
332333
array_push($eventData['items'], $_item);
333334
$eventData['value'] += $_product->getFinalPrice();
334335
}
335-
$eventData['value'] = number_format($eventData['value'], 2);
336+
$eventData['value'] = number_format($eventData['value'], 2, '.', '');
336337
$result[] = "gtag('event', 'begin_checkout', " . json_encode($eventData, JSON_THROW_ON_ERROR) . ");";
337338
}
338339
}
@@ -351,10 +352,10 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
351352
$orderData = [
352353
'currency' => $order->getBaseCurrencyCode(),
353354
'transaction_id' => $order->getIncrementId(),
354-
'value' => number_format($order->getBaseGrandTotal(), 2),
355+
'value' => number_format($order->getBaseGrandTotal(), 2, '.', ''),
355356
'coupon' => strtoupper($order->getCouponCode()),
356-
'shipping' => number_format($order->getBaseShippingAmount(), 2),
357-
'tax' => number_format($order->getBaseTaxAmount(), 2),
357+
'shipping' => number_format($order->getBaseShippingAmount(), 2, '.', ''),
358+
'tax' => number_format($order->getBaseTaxAmount(), 2, '.', ''),
358359
'items' => []
359360
];
360361

@@ -364,8 +365,8 @@ protected function _getEnhancedEcommerceDataForAnalytics4()
364365
'item_id' => $item->getSku(),
365366
'item_name' => $item->getName(),
366367
'quantity' => (int) $item->getQtyOrdered(),
367-
'price' => number_format($item->getBasePrice(), 2),
368-
'discount' => number_format($item->getBaseDiscountAmount(), 2)
368+
'price' => number_format($item->getBasePrice(), 2, '.', ''),
369+
'discount' => number_format($item->getBaseDiscountAmount(), 2, '.', '')
369370
];
370371
$_product = Mage::getModel('catalog/product')->load($item->getProductId());
371372
if ($_product->getAttributeText('manufacturer')) {

composer.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,9 +84,6 @@
8484
}
8585
},
8686
"extra": {
87-
"branch-alias": {
88-
"dev-main": "1.9.4.x-dev"
89-
},
9087
"magento-root-dir": ".",
9188
"magento-deploystrategy": "copy",
9289
"magento-deploystrategy-dev": "symlink",

0 commit comments

Comments
 (0)