Skip to content

Commit fd3cb6e

Browse files
committed
Merge branch 'develop' of github.corp.magento.com:magento2/magento2ce into MAGETWO-52374
2 parents e10ecc5 + 981d1f4 commit fd3cb6e

File tree

32 files changed

+1148
-166
lines changed

32 files changed

+1148
-166
lines changed

app/code/Magento/Backend/Block/System/Store/Edit/Form/Website.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ protected function _prepareStoreFieldset(\Magento\Framework\Data\Form $form)
9292
if ($this->_coreRegistry->registry('store_action') == 'edit') {
9393
$groups = $this->_groupFactory->create()->getCollection()->addWebsiteFilter(
9494
$websiteModel->getId()
95-
)->setWithoutStoreViewFilter()->toOptionArray();
95+
)->toOptionArray();
9696

9797
$fieldset->addField(
9898
'website_default_group_id',

app/code/Magento/Catalog/view/frontend/web/js/catalog-add-to-cart.js

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,9 @@ define([
2020
productStatusSelector: '.stock.available',
2121
addToCartButtonSelector: '.action.tocart',
2222
addToCartButtonDisabledClass: 'disabled',
23-
addToCartButtonTextWhileAdding: $t('Adding...'),
24-
addToCartButtonTextAdded: $t('Added'),
25-
addToCartButtonTextDefault: $t('Add to Cart')
26-
23+
addToCartButtonTextWhileAdding: '',
24+
addToCartButtonTextAdded: '',
25+
addToCartButtonTextDefault: ''
2726
},
2827

2928
_create: function() {
@@ -108,26 +107,29 @@ define([
108107
},
109108

110109
disableAddToCartButton: function(form) {
110+
var addToCartButtonTextWhileAdding = this.options.addToCartButtonTextWhileAdding || $t('Adding...');
111111
var addToCartButton = $(form).find(this.options.addToCartButtonSelector);
112112
addToCartButton.addClass(this.options.addToCartButtonDisabledClass);
113-
addToCartButton.attr('title', this.options.addToCartButtonTextWhileAdding);
114-
addToCartButton.find('span').text(this.options.addToCartButtonTextWhileAdding);
113+
addToCartButton.find('span').text(addToCartButtonTextWhileAdding);
114+
addToCartButton.attr('title', addToCartButtonTextWhileAdding);
115115
},
116116

117117
enableAddToCartButton: function(form) {
118+
var addToCartButtonTextAdded = this.options.addToCartButtonTextAdded || $t('Added');
118119
var self = this,
119120
addToCartButton = $(form).find(this.options.addToCartButtonSelector);
120121

121-
addToCartButton.find('span').text(this.options.addToCartButtonTextAdded);
122-
addToCartButton.attr('title', this.options.addToCartButtonTextAdded);
122+
addToCartButton.find('span').text(addToCartButtonTextAdded);
123+
addToCartButton.attr('title', addToCartButtonTextAdded);
123124

124125
setTimeout(function() {
126+
var addToCartButtonTextDefault = self.options.addToCartButtonTextDefault || $t('Add to Cart');
125127
addToCartButton.removeClass(self.options.addToCartButtonDisabledClass);
126-
addToCartButton.find('span').text(self.options.addToCartButtonTextDefault);
127-
addToCartButton.attr('title', self.options.addToCartButtonTextDefault);
128+
addToCartButton.find('span').text(addToCartButtonTextDefault);
129+
addToCartButton.attr('title', addToCartButtonTextDefault);
128130
}, 1000);
129131
}
130132
});
131133

132134
return $.mage.catalogAddToCart;
133-
});
135+
});

app/code/Magento/Cms/Api/Data/PageInterface.php

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ interface PageInterface
1818
const IDENTIFIER = 'identifier';
1919
const TITLE = 'title';
2020
const PAGE_LAYOUT = 'page_layout';
21+
const META_TITLE = 'meta_title';
2122
const META_KEYWORDS = 'meta_keywords';
2223
const META_DESCRIPTION = 'meta_description';
2324
const CONTENT_HEADING = 'content_heading';
@@ -62,6 +63,13 @@ public function getTitle();
6263
*/
6364
public function getPageLayout();
6465

66+
/**
67+
* Get meta title
68+
*
69+
* @return string|null
70+
*/
71+
public function getMetaTitle();
72+
6573
/**
6674
* Get meta keywords
6775
*
@@ -192,6 +200,14 @@ public function setTitle($title);
192200
*/
193201
public function setPageLayout($pageLayout);
194202

203+
/**
204+
* Set meta title
205+
*
206+
* @param string $metaTitle
207+
* @return \Magento\Cms\Api\Data\PageInterface
208+
*/
209+
public function setMetaTitle($metaTitle);
210+
195211
/**
196212
* Set meta keywords
197213
*

app/code/Magento/Cms/Block/Page.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,8 @@ protected function _prepareLayout()
101101
$page = $this->getPage();
102102
$this->_addBreadcrumbs($page);
103103
$this->pageConfig->addBodyClass('cms-' . $page->getIdentifier());
104-
$this->pageConfig->getTitle()->set($page->getTitle());
104+
$metaTitle = $page->getMetaTitle();
105+
$this->pageConfig->getTitle()->set($metaTitle ? $metaTitle : $page->getTitle());
105106
$this->pageConfig->setKeywords($page->getMetaKeywords());
106107
$this->pageConfig->setDescription($page->getMetaDescription());
107108

app/code/Magento/Cms/Model/Page.php

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,16 @@ public function getPageLayout()
168168
return $this->getData(self::PAGE_LAYOUT);
169169
}
170170

171+
/**
172+
* Get meta title
173+
*
174+
* @return string|null
175+
*/
176+
public function getMetaTitle()
177+
{
178+
return $this->getData(self::META_TITLE);
179+
}
180+
171181
/**
172182
* Get meta keywords
173183
*
@@ -352,6 +362,17 @@ public function setPageLayout($pageLayout)
352362
return $this->setData(self::PAGE_LAYOUT, $pageLayout);
353363
}
354364

365+
/**
366+
* Set meta title
367+
*
368+
* @param string $metaTitle
369+
* @return \Magento\Cms\Api\Data\PageInterface
370+
*/
371+
public function setMetaTitle($metaTitle)
372+
{
373+
return $this->setData(self::META_TITLE, $metaTitle);
374+
}
375+
355376
/**
356377
* Set meta keywords
357378
*
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<?php
2+
/**
3+
* Copyright © 2016 Magento. All rights reserved.
4+
* See COPYING.txt for license details.
5+
*/
6+
namespace Magento\Cms\Setup;
7+
8+
use Magento\Framework\Setup\UpgradeSchemaInterface;
9+
use Magento\Framework\Setup\ModuleContextInterface;
10+
use Magento\Framework\Setup\SchemaSetupInterface;
11+
12+
/**
13+
* Upgrade the Cms module DB scheme
14+
*/
15+
class UpgradeSchema implements UpgradeSchemaInterface
16+
{
17+
/**
18+
* {@inheritdoc}
19+
*/
20+
public function upgrade(SchemaSetupInterface $setup, ModuleContextInterface $context)
21+
{
22+
if (version_compare($context->getVersion(), '2.0.1', '<')) {
23+
$this->addMetaTitleField($setup);
24+
}
25+
}
26+
27+
/**
28+
* Add meta title
29+
*
30+
* @param SchemaSetupInterface $setup
31+
* @return $this
32+
*/
33+
protected function addMetaTitleField(SchemaSetupInterface $setup)
34+
{
35+
$setup->getConnection()->addColumn(
36+
$setup->getTable('cms_page'),
37+
'meta_title',
38+
[
39+
'type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
40+
'length' => 255,
41+
'nullable' => true,
42+
'comment' => 'Page Meta Title'
43+
]
44+
);
45+
return $this;
46+
}
47+
}

app/code/Magento/Cms/i18n/en_US.csv

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,3 +149,4 @@ Enable,Enable
149149
"Custom design to","Custom design to"
150150
"Custom Theme","Custom Theme"
151151
"Custom Layout","Custom Layout"
152+
"Meta Title","Meta Title"

app/code/Magento/Cms/view/adminhtml/ui_component/cms_page_form.xml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,17 @@
145145
</item>
146146
</argument>
147147
</field>
148+
<field name="meta_title">
149+
<argument name="data" xsi:type="array">
150+
<item name="config" xsi:type="array">
151+
<item name="dataType" xsi:type="string">text</item>
152+
<item name="label" xsi:type="string" translate="true">Meta Title</item>
153+
<item name="formElement" xsi:type="string">input</item>
154+
<item name="source" xsi:type="string">page</item>
155+
<item name="dataScope" xsi:type="string">meta_title</item>
156+
</item>
157+
</argument>
158+
</field>
148159
<field name="meta_keywords">
149160
<argument name="data" xsi:type="array">
150161
<item name="config" xsi:type="array">

app/code/Magento/Cms/view/adminhtml/ui_component/cms_page_listing.xml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,6 +304,16 @@
304304
</item>
305305
</argument>
306306
</column>
307+
<column name="meta_title">
308+
<argument name="data" xsi:type="array">
309+
<item name="config" xsi:type="array">
310+
<item name="filter" xsi:type="string">text</item>
311+
<item name="editor" xsi:type="string">text</item>
312+
<item name="label" xsi:type="string" translate="true">Meta Title</item>
313+
<item name="visible" xsi:type="boolean">false</item>
314+
</item>
315+
</argument>
316+
</column>
307317
<column name="meta_keywords">
308318
<argument name="data" xsi:type="array">
309319
<item name="config" xsi:type="array">

app/code/Magento/Directory/Model/Currency.php

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -330,7 +330,7 @@ public function getOutputFormat()
330330
{
331331
$formatted = $this->formatTxt(0);
332332
$number = $this->formatTxt(0, ['display' => \Magento\Framework\Currency::NO_SYMBOL]);
333-
return str_replace($number, '%s', $formatted);
333+
return str_replace($this->trimUnicodeDirectionMark($number), '%s', $formatted);
334334
}
335335

336336
/**
@@ -402,4 +402,18 @@ public function saveRates($rates)
402402
$this->_getResource()->saveRates($rates);
403403
return $this;
404404
}
405+
406+
/**
407+
* This method removes LRM and RLM marks from string
408+
*
409+
* @param string $string
410+
* @return $this
411+
*/
412+
private function trimUnicodeDirectionMark($string)
413+
{
414+
if (preg_match('/^(\x{200E}|\x{200F})/u', $string, $match)) {
415+
$string = preg_replace('/^'.$match[1].'/u', '', $string);
416+
}
417+
return $string;
418+
}
405419
}

0 commit comments

Comments
 (0)