FEATURE: add page ordering

This commit is contained in:
Michal Kváček
2017-09-13 14:02:07 +02:00
parent d90ca08ba6
commit 3fdae2669b
13 changed files with 293 additions and 215 deletions
+8 -2
View File
@@ -7,6 +7,7 @@ use App\CMS\Helpers\Traits\Nullable;
use App\CMS\Observers\Content as ContentObserver;
use App\Models\FileManager\File;
use App\Models\Module;
use App\Models\Templates\Template;
use App\Models\User;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
@@ -33,6 +34,7 @@ class Content extends Model
'isHomepage',
'title',
'url',
'order',
'metaKeywords',
'metaDescription',
'pageContent',
@@ -63,6 +65,10 @@ class Content extends Model
return $this->hasMany(ContentHistory::class);
}
public function templateModel() {
return $this->belongsTo(Template::class, 'template', 'template_name');
}
/**
* Mark relationship with users table
* @return \Illuminate\Database\Eloquent\Relations\BelongsTo
@@ -100,7 +106,7 @@ class Content extends Model
*/
public function subpages()
{
return $this->hasMany(Content::class, 'parentId');
return $this->hasMany(Content::class, 'parentId')->orderBy('order')->orderBy('created_at', 'DESC');
}
/**
@@ -109,7 +115,7 @@ class Content extends Model
*/
public function publishedSubpages()
{
$query = $this->hasMany(Content::class, 'parentId');
$query = $this->subpages();
if (\Auth::check()) {
$query = $query->where('status', '!=', ContentContract::STATUS_DRAFT);