Skip to content
This repository was archived by the owner on Jan 3, 2023. It is now read-only.

Commit d3c4c38

Browse files
committed
more cleanup
1 parent 2934957 commit d3c4c38

File tree

5 files changed

+74
-159
lines changed

5 files changed

+74
-159
lines changed

composer.json

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,7 @@
2424
"autoload": {
2525
"psr-4": {
2626
"ctf0\\SimpleMenu\\": "src"
27-
},
28-
"files": [
29-
"src/helpers.php"
30-
]
27+
}
3128
},
3229
"extra": {
3330
"laravel": {

src/Traits/NavigationTrait.php

Lines changed: 63 additions & 91 deletions
Original file line numberDiff line numberDiff line change
@@ -43,95 +43,38 @@ public function getUrl($name, $code)
4343
/**
4444
* resolve route & params for links.
4545
*
46-
* @param [type] $crntRouteName [description]
47-
* @param [type] $another [description]
48-
* @param [type] $params [description]
46+
* @param [type] $crntRouteName [description]
47+
* @param array|null $params [description]
4948
*
5049
* @return [type] [description]
5150
*/
52-
public function getRoute($crntRouteName, $another = null, $params = null)
51+
public function getRoute($crntRouteName, array $params = null)
5352
{
5453
$code = LaravelLocalization::getCurrentLocale();
5554
$url = $this->routeLink($crntRouteName, $code);
5655

57-
// resolve multi routes with params
58-
if (is_array($another)) {
59-
foreach ($another as $k => $v) {
60-
if ($crntRouteName == $k) {
56+
// resolve route params
57+
if ($params) {
58+
foreach ($params as $key => $value) {
59+
if ($crntRouteName == $key) {
6160
if (!session()->has($crntRouteName)) {
62-
session([$crntRouteName => $v]);
61+
session([$crntRouteName => $value]);
6362
}
6463

65-
return $this->checkForhideDefaultLocaleInURL($code, $url, $v);
66-
}
67-
}
68-
}
64+
if (LaravelLocalization::hideDefaultLocaleInURL() && $code == LaravelLocalization::getDefaultLocale()) {
65+
return url($this->getParams($url, $value));
66+
}
6967

70-
// resolve a single route with params
71-
else {
72-
if (($crntRouteName == $another) && $params) {
73-
// set a session item so we can redir with params
74-
// from the lang switcher
75-
if (!session()->has($crntRouteName)) {
76-
session([$crntRouteName => $params]);
68+
return LaravelLocalization::getLocalizedURL(
69+
$code, url($this->getParams($url, $value)), [], true
70+
);
7771
}
78-
79-
return $this->checkForhideDefaultLocaleInURL($code, $url, $params);
8072
}
8173
}
8274

8375
return route($crntRouteName);
8476
}
8577

86-
/**
87-
* render menu.
88-
*
89-
* @param [type] $pages [description]
90-
* @param [type] $classes [description]
91-
* @param [type] $params [description]
92-
* @param [type] $url [description]
93-
*
94-
* @return [type] [description]
95-
*/
96-
public function render($pages, $classes = null, $params = null, $url = null)
97-
{
98-
switch ($classes) {
99-
case 'config':
100-
$ul = config('simpleMenu.listClasses.ul');
101-
$li = config('simpleMenu.listClasses.li');
102-
$a = config('simpleMenu.listClasses.a');
103-
break;
104-
default:
105-
$ul = array_get($classes, 'ul');
106-
$li = array_get($classes, 'li');
107-
$a = array_get($classes, 'a');
108-
break;
109-
}
110-
111-
return $this->getHtml($pages, $ul, $li, $a, $params, $url);
112-
}
113-
114-
/**
115-
* to resolve links not being 'is-active' when 'hideDefaultLocaleInURL => true'.
116-
*
117-
* @param [type] $code [description]
118-
* @param [type] $url [description]
119-
* @param [type] $params [description]
120-
*
121-
* @return [type] [description]
122-
*/
123-
protected function checkForhideDefaultLocaleInURL($code, $url, $params)
124-
{
125-
if (LaravelLocalization::hideDefaultLocaleInURL() &&
126-
LaravelLocalization::getCurrentLocale() == app('laravellocalization')->getDefaultLocale()) {
127-
return url($this->getParams($url, $params));
128-
}
129-
130-
return LaravelLocalization::getLocalizedURL(
131-
$code, url($this->getParams($url, $params)), [], true
132-
);
133-
}
134-
13578
/**
13679
* resolve route url.
13780
*
@@ -163,33 +106,31 @@ protected function routeLink($name, $code)
163106
}
164107

165108
/**
166-
* resolve params.
109+
* render menu.
167110
*
168-
* @param [type] $url [description]
169-
* @param [type] $params [description]
111+
* @param [type] $pages [description]
112+
* @param [type] $classes [description]
113+
* @param [type] $params [description]
114+
* @param [type] $url [description]
170115
*
171116
* @return [type] [description]
172117
*/
173-
protected function getParams($url, $params)
118+
public function render($pages, $classes = null, $params = null, $url = null)
174119
{
175-
foreach ($params as $key => $value) {
176-
$url = preg_replace('/\{'.preg_quote($key).'(\?)?\}/', $value, $url);
120+
switch ($classes) {
121+
case 'config':
122+
$ul = config('simpleMenu.listClasses.ul');
123+
$li = config('simpleMenu.listClasses.li');
124+
$a = config('simpleMenu.listClasses.a');
125+
break;
126+
default:
127+
$ul = array_get($classes, 'ul');
128+
$li = array_get($classes, 'li');
129+
$a = array_get($classes, 'a');
130+
break;
177131
}
178132

179-
return $this->rmvUnUsedParams($url);
180-
}
181-
182-
/**
183-
* remove optional params.
184-
* so we dont get badly formated url.
185-
*
186-
* @param [type] $url [description]
187-
*
188-
* @return [type] [description]
189-
*/
190-
protected function rmvUnUsedParams($url)
191-
{
192-
return preg_replace('/\{.*\}/', '', $url);
133+
return $this->getHtml($pages, $ul, $li, $a, $params, $url);
193134
}
194135

195136
/**
@@ -208,6 +149,7 @@ protected function getHtml($pages, $ul, $li, $a, $params, $url)
208149
{
209150
$html = '';
210151
$html .= "<ul class=\"{$ul}\">";
152+
211153
foreach ($pages as $one) {
212154
// escape empty url
213155
if (empty($one->getTranslationWithoutFallback('url', app()->getLocale()))) {
@@ -225,8 +167,38 @@ protected function getHtml($pages, $ul, $li, $a, $params, $url)
225167
}
226168
$html .= '</li>';
227169
}
170+
228171
$html .= '</ul>';
229172

230173
return $html;
231174
}
175+
176+
/**
177+
* resolve params.
178+
*
179+
* @param [type] $url [description]
180+
* @param [type] $params [description]
181+
*
182+
* @return [type] [description]
183+
*/
184+
protected function getParams($url, $params)
185+
{
186+
foreach ($params as $key => $value) {
187+
$url = preg_replace('/\{'.preg_quote($key).'(\?)?\}/', $value, $url);
188+
}
189+
190+
return $this->rmvUnUsedParams($url);
191+
}
192+
193+
/**
194+
* remove optional params. so we dont get badly formated url.
195+
*
196+
* @param [type] $url [description]
197+
*
198+
* @return [type] [description]
199+
*/
200+
protected function rmvUnUsedParams($url)
201+
{
202+
return preg_replace('/\{.*\}/', '', $url);
203+
}
232204
}

src/Traits/RoutesTrait.php

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,6 @@ trait RoutesTrait
1515
protected $localeCodes;
1616
protected $listFileFound = true;
1717

18-
/**
19-
* [createRoutes description].
20-
*
21-
* @return [type] [description]
22-
*/
2318
public function createRoutes()
2419
{
2520
Route::group([
@@ -93,22 +88,6 @@ protected function pageComp($page)
9388
}
9489
}
9590

96-
/**
97-
* [routeGen description].
98-
*
99-
* @param [type] $routeName [description]
100-
* @param [type] $route [description]
101-
* @param [type] $action [description]
102-
* @param [type] $roles [description]
103-
* @param [type] $permissions [description]
104-
* @param [type] $template [description]
105-
* @param [type] $title [description]
106-
* @param [type] $body [description]
107-
* @param [type] $desc [description]
108-
* @param [type] $breadCrump [description]
109-
*
110-
* @return [type] [description]
111-
*/
11291
protected function routeGen($routeName, $route, $action, $roles, $permissions, $template, $title, $body, $desc, $breadCrump)
11392
{
11493
// escape empty route
@@ -135,15 +114,6 @@ protected function routeGen($routeName, $route, $action, $roles, $permissions, $
135114
}
136115
}
137116

138-
/**
139-
* [createRoutesList description].
140-
*
141-
* @param [type] $action [description]
142-
* @param [type] $page [description]
143-
* @param [type] $routeName [description]
144-
*
145-
* @return [type] [description]
146-
*/
147117
protected function createRoutesList($action, $page, $routeName)
148118
{
149119
foreach ($this->localeCodes as $code) {
@@ -159,13 +129,6 @@ protected function createRoutesList($action, $page, $routeName)
159129
}
160130
}
161131

162-
/**
163-
* [saveRoutesListToFile description].
164-
*
165-
* @param mixed $routes
166-
*
167-
* @return [type] [description]
168-
*/
169132
protected function saveRoutesListToFile($routes)
170133
{
171134
$data = "<?php\n\nreturn ".var_export($routes, true).';';

src/database/seeds/PagesTableSeeder.php

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,16 @@ public function run()
1414
$heros = ['Home', 'Contact Us', 'About'];
1515
foreach ($heros as $one) {
1616
Page::create([
17-
'route_name'=> slugfy($one),
17+
'route_name'=> str_slug($one),
1818
'template' => 'hero',
1919
'action' => 'PageController@'.camel_case($one),
2020
'title' => [
2121
'en' => $one,
2222
'fr' => $one,
2323
],
2424
'url' => [
25-
'en' => slugfy($one),
26-
'fr' => slugfy($one),
25+
'en' => str_slug($one),
26+
'fr' => str_slug($one),
2727
],
2828
]);
2929
}
@@ -32,26 +32,26 @@ public function run()
3232
$i = 1;
3333
while ($i <= 20) {
3434
$en = $faker->unique()->city;
35-
$ar = $faker->unique()->city;
35+
$fr = $faker->unique()->city;
3636

3737
Page::create([
3838
'template' => 'hero',
39-
'route_name'=> slugfy($en),
39+
'route_name'=> str_slug($en),
4040
'title' => [
4141
'en' => $en,
42-
'fr' => $ar,
42+
'fr' => $fr,
4343
],
4444
'body' => [
4545
'en' => $faker->text(),
4646
'fr' => $faker->text(),
4747
],
4848
'prefix' => [
49-
'en' => slugfy($faker->unique()->country),
50-
'fr' => slugfy($faker->unique()->country),
49+
'en' => str_slug($faker->unique()->country),
50+
'fr' => str_slug($faker->unique()->country),
5151
],
5252
'url' => [
53-
'en' => slugfy($en),
54-
'fr' => slugfy($ar),
53+
'en' => str_slug($en),
54+
'fr' => str_slug($fr),
5555
],
5656
]);
5757

src/helpers.php

Lines changed: 0 additions & 17 deletions
This file was deleted.

0 commit comments

Comments
 (0)