diff --git a/app/Handlers/History.php b/app/Handlers/History.php
index beb8f528..0d859af3 100644
--- a/app/Handlers/History.php
+++ b/app/Handlers/History.php
@@ -34,6 +34,9 @@ class History implements HistoryHandler
'to' => $statuses[$changeset->new_value]
]);
break;
+ case 'is_homepage':
+ return trans('admin/history.setupAsHomepage');
+ break;
default:
return trans('admin/history.changedFromTo', [
'from' => $changeset->old_value,
diff --git a/app/Http/Controllers/Admin/CreateNewContent.php b/app/Http/Controllers/Admin/CreateNewContent.php
index faa97e8d..2b090b9b 100644
--- a/app/Http/Controllers/Admin/CreateNewContent.php
+++ b/app/Http/Controllers/Admin/CreateNewContent.php
@@ -2,6 +2,7 @@
namespace App\Http\Controllers\Admin;
use App\Enumerations\ActiveContentStatuses;
+use App\Http\Requests\CreateNewContentRequest;
use App\Models\Content;
use App\Models\Module;
use App\Models\Template;
@@ -48,8 +49,7 @@ class CreateNewContent extends Controller
/**
* Save new content page
*
- * @param CreateNewStaticPageRequest $request
- *
+ * @param CreateNewContentRequest $request
* @param $moduleId
*
* @return \Illuminate\Http\RedirectResponse
@@ -72,8 +72,8 @@ class CreateNewContent extends Controller
$page->url = Str::slug($request->url);
$page->published_from = $request->publishedFrom;
$page->published_to = $request->publishedTo;
- $page->meta_keywords = $request->meta_description;
- $page->meta_description = $request->meta_description;
+ $page->meta_keywords = $request->metaDescription;
+ $page->meta_description = $request->metaDescription;
$page->content = $request->pageContent;
$page->status = $request->status;
$page->template = $request->template;
diff --git a/app/Http/Controllers/Admin/EditContent.php b/app/Http/Controllers/Admin/EditContent.php
index 0f95abc3..25ac10f9 100644
--- a/app/Http/Controllers/Admin/EditContent.php
+++ b/app/Http/Controllers/Admin/EditContent.php
@@ -3,6 +3,7 @@ namespace App\Http\Controllers\Admin;
use App\Enumerations\ContentStatuses;
use App\Enumerations\ModulesHandlerToId;
+use App\Http\Requests\EditContentRequest;
use App\Models\Content;
use App\Models\ContentHistory;
use App\Models\Template;
@@ -53,24 +54,24 @@ class EditContent extends Controller
// render view
return view('admin.content.edit', [
- 'contentStatuses' => $statuses,
- 'page' => $page,
- 'templates' => $templates,
+ 'contentStatuses' => $statuses,
+ 'page' => $page,
+ 'templates' => $templates,
'formSectionNames' => call_user_func([$page->module_handler, 'getExtendedFormSections']),
'formSections' => call_user_func([$page->module_handler, 'getExtendedFormInputsCreate']),
- 'historySize' => count($history['changesets'])
+ 'historySize' => count($history['changesets'])
]);
}
/**
* Edit static page and save changes into history.
*
- * @param EditStaticPageRequest $request
+ * @param EditContentRequest $request
* @param $id
*
* @return \Illuminate\Http\RedirectResponse
*/
- public function postEdit(EditStaticPageRequest $request, $id)
+ public function postEdit(EditContentRequest $request, $id)
{
try {
$page = Content::findOrFail($id);
@@ -230,7 +231,6 @@ class EditContent extends Controller
* @var $page Content
*/
$page = Content::findOrFail($id);
- $homepage = $page->getHomepage();
} catch (NotFoundHttpException $e) {
// page not found
return redirect()
@@ -238,12 +238,12 @@ class EditContent extends Controller
->with('error', trans('admin/contents.invalidPage'));
}
+ // disable any other existing homepage
+ Content::where('is_homepage', 1)
+ ->update(['is_homepage' => 0]);
-
- list ($revision, $changedColumns) = $page->updateWithHistory(['is_homepage' => 'is_homepage'], ['is_homepage' => 1]);
-
- if ($homepage)
- $homepage->updateWithHistory(['isHomepage' => 'is_homepage'], ['ishomepage' => 0]);
+ // set new homepage
+ list (, $changedColumns) = $page->updateWithHistory(['is_homepage' => 'is_homepage'], ['is_homepage' => 1]);
// was something changed?
if ($changedColumns == 0) {
diff --git a/resources/lang/en/admin/contents.php b/resources/lang/en/admin/contents.php
index 98f17d33..cce837e0 100644
--- a/resources/lang/en/admin/contents.php
+++ b/resources/lang/en/admin/contents.php
@@ -34,5 +34,6 @@ return [
'appearance' => 'Appearance',
'template' => 'Template of this page',
'overview' => 'List of all content pages',
- 'homepageSetup' => 'Homepage successfully set up.'
+ 'homepageSetup' => 'Homepage successfully set up.',
+ 'setHomepage' => 'Set page as homepage'
];
\ No newline at end of file
diff --git a/resources/lang/en/admin/history.php b/resources/lang/en/admin/history.php
index 4ee722ef..70902307 100644
--- a/resources/lang/en/admin/history.php
+++ b/resources/lang/en/admin/history.php
@@ -8,11 +8,13 @@ return [
'columnMetaDescription' => 'Description',
'columnStatus' => 'Page visibility',
'columnTemplate' => 'Template',
+ 'columnIs_homepage' => 'Homepage',
'changedFromTo' => 'Changed from :from to :to',
'numOfChanges' => 'One change|:count changes',
'diff' => 'Difference',
'diffPageName' => 'Difference of :column',
'backToOverview' => 'Back to history overview',
- 'backToEdit' => 'Back to editation form'
+ 'backToEdit' => 'Back to editation form',
+ 'setupAsHomepage' => 'Setup as homepage'
];
\ No newline at end of file
diff --git a/resources/views/admin/content/formParts/metaInformation.blade.php b/resources/views/admin/content/formParts/metaInformation.blade.php
index 12954382..259033a4 100644
--- a/resources/views/admin/content/formParts/metaInformation.blade.php
+++ b/resources/views/admin/content/formParts/metaInformation.blade.php
@@ -3,8 +3,7 @@
@@ -13,9 +12,7 @@
\ No newline at end of file
diff --git a/resources/views/admin/content/overview.blade.php b/resources/views/admin/content/overview.blade.php
index f5b833b1..cdc0ef9b 100644
--- a/resources/views/admin/content/overview.blade.php
+++ b/resources/views/admin/content/overview.blade.php
@@ -41,7 +41,7 @@
- + @if($page->is_homepage) @@ -55,9 +55,8 @@ @if($page->status == \App\Models\Content::STATUS_DRAFT) - @endif - - @if(in_array($page->status, [\App\Models\Content::STATUS_PROTECTED, \App\Models\Content::STATUS_PUBLIC])) + @else + @endif