33/**
44 * A Magento 2 module named DevBera/CmsLinkToMenu
55 * Copyright (C) 2019 Copyright 2019 © amitbera.com. All Rights Reserved
6- *
6+ *
77 * This file included in DevBera/CmsLinkToMenu is licensed under OSL 3.0
8- *
8+ *
99 * http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
1010 * Please see LICENSE.txt for the full text of the OSL 3.0 license
1111 */
1616use Magento \Framework \Data \Tree \NodeFactory ;
1717use Magento \Store \Model \ScopeInterface ;
1818
19-
20- class AddItemtoMenu
19+ class AddItemtoMenu
2120{
2221
2322 private $ homePageIdentifier ;
@@ -75,16 +74,16 @@ class AddItemtoMenu
7574 private $ logger ;
7675
7776 public function __construct (
78- NodeFactory $ nodeFactory ,
79- \Magento \Cms \Api \PageRepositoryInterface $ pageRepository ,
80- \Magento \Store \Model \StoreManagerInterface $ storeManager ,
81- \Magento \Framework \UrlInterface $ urlBuilder ,
82- \Magento \Framework \App \Config \ScopeConfigInterface $ scopeConfig ,
83- \Magento \Framework \Api \SearchCriteriaBuilder $ searchCriteriaBuilder ,
84- \Magento \Framework \Api \FilterBuilder $ filterBuilder ,
85- \Magento \Framework \Api \SortOrderBuilder $ sortOrderBuilder ,
86- \DevBera \CmsLinkToMenu \Model \System \Config \Backend \FieldProcessor $ fieldProcessor ,
87- \Psr \Log \LoggerInterface $ logger
77+ NodeFactory $ nodeFactory ,
78+ \Magento \Cms \Api \PageRepositoryInterface $ pageRepository ,
79+ \Magento \Store \Model \StoreManagerInterface $ storeManager ,
80+ \Magento \Framework \UrlInterface $ urlBuilder ,
81+ \Magento \Framework \App \Config \ScopeConfigInterface $ scopeConfig ,
82+ \Magento \Framework \Api \SearchCriteriaBuilder $ searchCriteriaBuilder ,
83+ \Magento \Framework \Api \FilterBuilder $ filterBuilder ,
84+ \Magento \Framework \Api \SortOrderBuilder $ sortOrderBuilder ,
85+ \DevBera \CmsLinkToMenu \Model \System \Config \Backend \FieldProcessor $ fieldProcessor ,
86+ \Psr \Log \LoggerInterface $ logger
8887 ) {
8988
9089 $ this ->pageRepository = $ pageRepository ;
@@ -101,38 +100,38 @@ public function __construct(
101100
102101 /**
103102 * Get List of Cms Pages from settings
104- *
103+ *
105104 * @param \Magento\Theme\Block\Html\Topmenu $subject
106105 */
107- public function addCmsPagesToMenu ($ subject ,$ position = 'left ' )
106+ public function addCmsPagesToMenu ($ subject , $ position = 'left ' )
108107 {
109108 $ pagesIdentifierWithFieldPosition = [];
110109
111-
112- $ fieldName = $ position .'_cms_pages ' ;
110+ $ fieldName = $ position .'_cms_pages ' ;
113111
114- $ pagesIdentifierWithFieldPosition = $ this ->fieldProcessor ->getConfigValue ($ fieldName , $ this ->storeManager ->getStore ());
112+ $ pagesIdentifierWithFieldPosition = $ this ->fieldProcessor
113+ ->getConfigValue ($ fieldName , $ this ->storeManager ->getStore ());
115114
116- // Sort $pagesIdentifierWithFieldPosition arrays in ascending order, according to the value
117- if (!empty ($ pagesIdentifierWithFieldPosition )){
118- asort ($ pagesIdentifierWithFieldPosition ) ;
119- }
115+ // Sort $pagesIdentifierWithFieldPosition arrays in ascending order, according to the value
116+ if (!empty ($ pagesIdentifierWithFieldPosition )) {
117+ asort ($ pagesIdentifierWithFieldPosition ) ;
118+ }
120119
121- $ menuItems = $ this ->getPagesListWithSortOrder ($ pagesIdentifierWithFieldPosition );
120+ $ menuItems = $ this ->getPagesListWithSortOrder ($ pagesIdentifierWithFieldPosition );
122121
123- $ homePageIdentifier = $ this ->getHomePageIdentifier ();
122+ $ homePageIdentifier = $ this ->getHomePageIdentifier ();
124123
125- if (!empty ($ menuItems )){
126- foreach ($ menuItems as $ page ){
124+ if (!empty ($ menuItems )) {
125+ foreach ($ menuItems as $ page ) {
127126 $ subject ->getMenu ()->addChild (
128- $ this ->buildMenuItem ($ page , $ subject ,$ position )
129- );
127+ $ this ->buildMenuItem ($ page , $ subject , $ position )
128+ );
130129 }
131130
132131 }
133132 }
134133
135- private function buildMenuItem ($ page ,$ subject ,$ position )
134+ private function buildMenuItem ($ page , $ subject , $ position )
136135 {
137136 $ node = $ this ->nodeFactory ->create (
138137 [
@@ -151,7 +150,7 @@ private function buildMenuItem($page,$subject,$position)
151150 }
152151
153152 /**
154- *
153+ *
155154 * @param array $pagesIdentifierWithFieldPosition
156155 * @return array
157156 */
@@ -161,7 +160,7 @@ private function avaliableCmsPage($pagesIdentifierWithFieldPosition)
161160 }
162161
163162 /**
164- *
163+ *
165164 * @param array $pagesIdentifierWithFieldPosition
166165 * @return array
167166 */
@@ -194,18 +193,18 @@ private function getPagesListWithSortOrder($pagesIdentifierWithFieldPosition)
194193
195194 $ this ->searchCriteriaBuilder ->setCurrentPage (1 )->setPageSize (count ($ cmsPagesIdentifier ));
196195
197- $ searchCriteria = $ this ->searchCriteriaBuilder ->create ();
198- $ pages = $ this ->pageRepository ->getList ($ searchCriteria );
196+ $ searchCriteria = $ this ->searchCriteriaBuilder ->create ();
197+ $ pages = $ this ->pageRepository ->getList ($ searchCriteria );
199198
200- if ($ pages ->getTotalCount () >0 ) {
199+ if ($ pages ->getTotalCount () >0 ) {
201200 $ items = $ pages ->getItems ();
202- foreach ($ items as $ page ){
203- $ result [$ page ->getIdentifier ()] = $ page ;
204- }
201+ foreach ($ items as $ page ) {
202+ $ result [$ page ->getIdentifier ()] = $ page ;
203+ }
205204 }
206205
207- foreach ($ pagesIdentifierWithFieldPosition as $ cmsIdentifier=> $ postion ){
208- if (array_key_exists ($ cmsIdentifier , $ result )){
206+ foreach ($ pagesIdentifierWithFieldPosition as $ cmsIdentifier => $ postion ) {
207+ if (array_key_exists ($ cmsIdentifier , $ result )) {
209208 $ menuItems [] = $ result [$ cmsIdentifier ];
210209 }
211210 }
@@ -215,32 +214,32 @@ private function getPagesListWithSortOrder($pagesIdentifierWithFieldPosition)
215214
216215 private function getCmsPageUrl ($ page )
217216 {
218- if ($ page ->getIdentifier () == $ this ->getHomePageIdentifier ()){
217+ if ($ page ->getIdentifier () == $ this ->getHomePageIdentifier ()) {
219218 return $ this ->urlBuilder ->getUrl ();
220219 }
221- return $ this ->urlBuilder ->getUrl (null , ['_direct ' => $ page ->getIdentifier ()]);
220+ return $ this ->urlBuilder ->getUrl (null , ['_direct ' => $ page ->getIdentifier ()]);
222221 }
223222
224223 /**
225- *
224+ *
226225 * @return string
227226 */
228227 private function getHomePageIdentifier ()
229228 {
230- if (!$ this ->homePageIdentifier ){
229+ if (!$ this ->homePageIdentifier ) {
231230
232231 $ this ->homePageIdentifier = $ this ->scopeConfig ->getValue (
233232 'web/default/cms_home_page ' ,
234233 ScopeInterface::SCOPE_STORE
235234 );
236235 }
237- return $ this ->homePageIdentifier ;
236+ return $ this ->homePageIdentifier ;
238237 }
239238 private function getCmsPageTitle ($ page )
240239 {
241- if ($ page ->getIdentifier () == $ this ->getHomePageIdentifier ()){
240+ if ($ page ->getIdentifier () == $ this ->getHomePageIdentifier ()) {
242241 return __ ('Home ' );
243242 }
244- return __ ($ page ->getTitle ());
245- }
243+ return __ ($ page ->getTitle ());
244+ }
246245}
0 commit comments