Skip to content

Commit ef81bba

Browse files
committed
Admin Pages - add featured order and fix redirect on edit page content submit
1 parent 0e72ddb commit ef81bba

File tree

5 files changed

+41
-22
lines changed

5 files changed

+41
-22
lines changed

app/Http/Controllers/Admin/Pages/OrderController.php

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212

1313
class OrderController extends TitanAdminController
1414
{
15-
private $navigationType = 'main';
15+
private $navigationType = 'list';
1616

1717
private $defaultParent = 0;
1818

1919
private $orderProperty = 'header_order';
2020

21-
private function updateNavType($type = 'all')
21+
private function updateNavType($type = 'list')
2222
{
2323
$this->defaultParent = 0;
2424
$this->navigationType = $type;
@@ -31,7 +31,7 @@ private function updateNavType($type = 'all')
3131
* @param string $type
3232
* @return Response
3333
*/
34-
public function index($type = 'all')
34+
public function index($type = 'list')
3535
{
3636
$this->updateNavType($type);
3737

@@ -47,7 +47,7 @@ public function index($type = 'all')
4747
* @param Request $request
4848
* @return array
4949
*/
50-
public function updateOrder(Request $request, $type = 'main')
50+
public function updateOrder(Request $request, $type = 'list')
5151
{
5252
$this->updateNavType($type);
5353

@@ -76,14 +76,17 @@ private function getNavigationHtml($parent = null)
7676
$html = '<ol class="dd-list">';
7777

7878
$parentId = ($parent ? $parent->id : 0);
79-
$items = Page::whereParentIdORM($parentId, $this->navigationType,
80-
$this->orderProperty);
79+
$items = Page::whereParentIdORM($parentId, $this->navigationType, $this->orderProperty);
8180

8281
foreach ($items as $key => $nav) {
8382
$html .= '<li class="dd-item" data-id="' . $nav->id . '">';
8483
$html .= '<div class="dd-handle">' . '<i class="fa-fw fa fa-' . $nav->icon . '"></i> ';
8584
$html .= $nav->title . ' ' . ($nav->is_hidden == 1 ? '(HIDDEN)' : '') . ' <span style="float:right"> ' . $nav->url . ' </span></div>';
86-
$html .= $this->getNavigationHtml($nav);
85+
// featured - ignore parent_id (only one level)
86+
if ($this->orderProperty != "featured_order") {
87+
$html .= $this->getNavigationHtml($nav);
88+
}
89+
8790
$html .= '</li>';
8891
}
8992

app/Http/Controllers/Admin/Pages/PagesController.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,12 @@ public function show(Page $page)
8282
*/
8383
public function edit(Page $page)
8484
{
85+
// fix for when you
86+
// edit sections from the edit page
87+
// or delete photo/document then
88+
// need to update resource url
89+
save_resource_url();
90+
8591
$parents = Page::getAllList();
8692
$banners = Banner::getAllList();
8793

app/Models/Traits/PageHelper.php

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -37,23 +37,28 @@ public function urlParent()
3737
*/
3838
static public function whereParentIdORM(
3939
$id,
40-
$type = 'header',
41-
$order = 'header_order',
40+
$type = 'list',
41+
$order = 'list_order',
4242
$hidden = 0
4343
) {
44-
$query = self::whereParentId($id);
44+
$query = Page::query();
45+
if($type != "featured") {
46+
$query->whereParentId($id);
47+
}
4548

4649
switch ($type) {
47-
case 'all':
48-
$order = 'header_order';
49-
$query->where('is_header', 0);
50-
$query->where('is_footer', 0);
50+
case "header":
51+
$query->where('is_header', 1);
5152
break;
52-
case 'footer';
53+
case "footer";
5354
$query->where('is_footer', 1);
5455
break;
56+
case "featured":
57+
$query->where('is_featured', 1);
58+
break;
5559
default:
56-
$query->where('is_header', 1);
60+
$query->where('is_header', 0);
61+
$query->where('is_footer', 0);
5762
}
5863

5964
return $query->orderBy($order)->get();
@@ -65,8 +70,6 @@ static public function whereParentIdORM(
6570
* Get the url from db
6671
* If true given, we generate a new one,
6772
* This us usefull if parent_id updated, etc
68-
*
69-
* @return \Eloquent
7073
*/
7174
public function updateUrl()
7275
{
@@ -208,7 +211,7 @@ public static function getHeaderNavigation()
208211

209212
public static function getFeatured()
210213
{
211-
return self::where('is_featured', 1)->orderBy('name')->get();
214+
return self::where('is_featured', 1)->orderBy('featured_order')->get();
212215
}
213216

214217
public static function getHeaderNavigationRight()

database/migrations/2017_09_26_154748_create_pages_table.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,14 @@ public function up()
2020
$table->string('slug')->nullable();
2121
$table->string('url')->nullable();
2222
$table->string('icon')->nullable();
23+
$table->integer('list_order')->nullable();
2324
$table->boolean('is_header')->nullable();
24-
$table->integer('header_order')->default(99);
25+
$table->integer('header_order')->nullable();
2526
$table->boolean('is_footer')->nullable();
2627
$table->integer('footer_order')->nullable();
2728
$table->boolean('is_hidden')->default(0);
2829
$table->boolean('is_featured')->nullable();
30+
$table->integer('featured_order')->nullable();
2931
$table->integer('parent_id')->unsigned()->default(0);
3032
$table->integer('url_parent_id')->unsigned()->default(0);
3133
$table->unsignedBigInteger('views')->default(0);

resources/views/admin/pages/index.blade.php

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,18 @@
2424
<span class="btn-label"><i class="fa fa-fw fa-align-center"></i></span>General Order
2525
</a>
2626

27+
<a class="btn btn-labeled btn-default text-black" href="{{ Request::url().'/order/featured' }}">
28+
<span class="btn-label"><i class="fa fa-fw fa-align-center"></i></span>
29+
Featured Order
30+
</a>
31+
2732
<a class="btn btn-labeled btn-default text-black" href="{{ request()->url().'/order/header' }}">
28-
<span class="btn-label"><i class="fa fa-fw fa-align-center"></i></span>{{ ucfirst($resource) }}
33+
<span class="btn-label"><i class="fa fa-fw fa-align-center"></i></span>
2934
Header Order
3035
</a>
3136

3237
<a class="btn btn-labeled btn-default text-black" href="{{ request()->url().'/order/footer' }}">
33-
<span class="btn-label"><i class="fa fa-fw fa-align-center"></i></span>{{ ucfirst($resource) }}
38+
<span class="btn-label"><i class="fa fa-fw fa-align-center"></i></span>
3439
Footer Order
3540
</a>
3641
</div>

0 commit comments

Comments
 (0)