cleaned up page edit template, fix formatting
cleaned up the page edit template a bit to make it easier to convert to the new editor UI. php formatting also needed to be updated, so the php cs fixer file was updated and added some setting to prettier to handle blade files
This commit is contained in:
parent
47dfdbb7fc
commit
16856f6c25
7 changed files with 221 additions and 215 deletions
|
@ -55,20 +55,15 @@ return $config
|
|||
]
|
||||
],
|
||||
'no_multiline_whitespace_around_double_arrow' => true,
|
||||
'no_spaces_around_offset' => true,
|
||||
'no_unused_imports' => true,
|
||||
'no_whitespace_before_comma_in_array' => true,
|
||||
'no_whitespace_in_blank_line' => true,
|
||||
'object_operator_without_whitespace' => true,
|
||||
'single_blank_line_before_namespace' => true,
|
||||
'ternary_operator_spaces' => true,
|
||||
'trim_array_spaces' => true,
|
||||
'unary_operator_spaces' => true,
|
||||
'whitespace_after_comma_in_array' => true,
|
||||
'single_line_after_imports' => true,
|
||||
'ordered_imports' => [
|
||||
'sort_algorithm' => 'none',
|
||||
],
|
||||
//'single_blank_line_before_namespace' => true, php fixer doesn't like this rule?
|
||||
//Other rules here...
|
||||
])
|
||||
->setLineEnding("\n");
|
||||
|
|
10
.prettierrc
10
.prettierrc
|
@ -1,9 +1,7 @@
|
|||
{
|
||||
"plugins": ["@shufo/prettier-plugin-blade"],
|
||||
"overrides": [
|
||||
{
|
||||
"files": ".prettierrc",
|
||||
"options": { "parser": "json" }
|
||||
},
|
||||
{ "files": ".prettierrc", "options": { "parser": "json" } },
|
||||
{
|
||||
"files": "*.css",
|
||||
"options": {
|
||||
|
@ -31,6 +29,10 @@
|
|||
"tabWidth": 4,
|
||||
"printWidth": 90
|
||||
}
|
||||
},
|
||||
{
|
||||
"files": ["*.blade.php"],
|
||||
"options": { "parser": "blade", "tabWidth": 4 }
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
@ -92,12 +92,50 @@ class DashController extends Controller
|
|||
$mode == 'edit' ? $title = $page['title'] : $title = 'Add New';
|
||||
$mode == 'edit' ? $views = $this->themes->getCustomViews($page['layout']) : $views[] = 'page';
|
||||
|
||||
//just a patch for now to get this out of the template
|
||||
if ($mode == 'edit') {
|
||||
$id = $page['id'];
|
||||
$uuid = $page['uuid'];
|
||||
$slug = $page['slug'];
|
||||
$feature = $page['feature'];
|
||||
$layout = $page['layout'];
|
||||
$tags = $page['tags'];
|
||||
$content = $page['content'];
|
||||
$date = $page['created'];
|
||||
$updated = $page['updated'];
|
||||
$media = $page['media'];
|
||||
$files = $page['docs'];
|
||||
} else {
|
||||
$id = "";
|
||||
$uuid = "";
|
||||
$slug = "";
|
||||
$feature = "";
|
||||
$layout = "";
|
||||
$tags = "";
|
||||
$content = "";
|
||||
$date = "";
|
||||
$updated = "";
|
||||
$media = "";
|
||||
$files = "";
|
||||
};
|
||||
|
||||
return view('back.page', [
|
||||
"status" => $this->member::status(),
|
||||
"mode" => $mode,
|
||||
"page" => $page,
|
||||
"views" => $views,
|
||||
"title" => $title,
|
||||
"status" => $this->member::status(),
|
||||
"mode" => $mode,
|
||||
"page" => $page,
|
||||
"views" => $views,
|
||||
"id" => $id,
|
||||
"uuid" => $uuid,
|
||||
"slug" => $slug,
|
||||
"feature" => $feature,
|
||||
"layout" => $layout,
|
||||
"tags" => $tags,
|
||||
"content" => $content,
|
||||
"date" => $date,
|
||||
"updated" => $updated,
|
||||
"media" => $media,
|
||||
"files" => $files,
|
||||
"title" => urldecode($title),
|
||||
]);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,191 +1,82 @@
|
|||
@extends('frame')
|
||||
@extends('frame')
|
||||
@section('title', 'The Dash | Editing '. $title)
|
||||
|
||||
@php
|
||||
$title = urldecode($title);
|
||||
if($mode == 'edit')
|
||||
{
|
||||
$id = $page['id'];
|
||||
$uuid = $page['uuid'];
|
||||
$slug = $page['slug'];
|
||||
$feature = $page['feature'];
|
||||
$layout = $page['layout'];
|
||||
$tags = $page['tags'];
|
||||
$content = $page['content'];
|
||||
$date = $page['created'];
|
||||
$updated = $page['updated'];
|
||||
$media = $page['media'];
|
||||
$files = $page['docs'];
|
||||
}else{
|
||||
$id = "";
|
||||
$uuid = "";
|
||||
$slug = "";
|
||||
$feature = "";
|
||||
$layout = "";
|
||||
$tags = "";
|
||||
$content = "";
|
||||
$date = "";
|
||||
$updated = "";
|
||||
$media = "";
|
||||
$files = "";
|
||||
}
|
||||
@endphp
|
||||
@section('title', 'The Dash | Editing '. $title)
|
||||
|
||||
@section('main-content')
|
||||
<section data-index="{{ $id }}" data-uuid="{{ $uuid }}" data-slug="{{ $slug }}" data-layout="{{ $layout }}" class="file-manager">
|
||||
@if($feature == '')
|
||||
<div class="file-drop">
|
||||
<label for="page-files-upload">DRAG AND DROP FILES OR CLICK TO SELECT</label>
|
||||
@section('main-content')
|
||||
<section data-index="{{$id}}" data-uuid="{{$uuid}}" data-slug="{{$slug}}" data-layout="{{$layout}}" class="file-manager">
|
||||
@if($feature == '')
|
||||
<div class="file-drop">
|
||||
<label for="page-files-upload">DRAG AND DROP FILES OR CLICK TO SELECT</label>
|
||||
</div>
|
||||
<label class="list-title">IMAGES AND VIDEO</label>
|
||||
<div id="page-images-list" class="page-images-list"></div>
|
||||
<label class="list-title">FILES</label>
|
||||
<div class="page-files-list"></div>
|
||||
@else
|
||||
<div class="file-drop">
|
||||
<label for="page-files-upload">DRAG AND DROP FILES OR CLICK TO SELECT</label>
|
||||
</div>
|
||||
<label class="list-title">IMAGES AND VIDEO</label>
|
||||
<div id="page-images-list" class="page-images-list">
|
||||
@include('includes.media-list')
|
||||
</div>
|
||||
<label class="list-title">FILES</label>
|
||||
<div class="page-files-list">
|
||||
@include('includes.files-list')
|
||||
</div>
|
||||
@endif
|
||||
</section>
|
||||
<section class="page-meta">
|
||||
<div class="page-meta-wrapper">
|
||||
<div class="page-title">
|
||||
<strong>TITLE</strong>
|
||||
<textarea id="post-title-text" class="input-dark" type="text" name="post-title-text" class="post-edit" placeholder="TITLE">{{$title}}</textarea>
|
||||
</div>
|
||||
<div class="page-tags">
|
||||
<strong>TAGS</strong>
|
||||
<textarea id="post-tags" class="input-dark" type="text" name="post-tags" class="form-control" placeholder="tags [comma seperated]">{{$tags}}</textarea>
|
||||
</div>
|
||||
<div class="page-layouts">
|
||||
<strong>LAYOUTS</strong>
|
||||
<select id="page-templates">
|
||||
@foreach($views as $view)
|
||||
@if($view == $layout)
|
||||
<option value= {{$view}} selected>{{$view}}</option>
|
||||
@else
|
||||
<option value= {{$view}}>{{$view}}</option>
|
||||
@endif
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
<div class="page-options">
|
||||
<strong>OPTIONS</strong>
|
||||
@include('includes.options')
|
||||
</div>
|
||||
<div class="page-updated">
|
||||
<strong>UPDATED</strong>
|
||||
<span id="post-date" type="text">
|
||||
{{$updated}}
|
||||
</span>
|
||||
</div>
|
||||
<div class="page-created">
|
||||
<strong>CREATED</strong>
|
||||
<span id="post-date" type="text">
|
||||
{{$date}}
|
||||
</span>
|
||||
<input id="page-files-upload" type="file" name="page-files-upload" multiple />
|
||||
<input id="post-image-upload" type="file" name="post-image-upload" />
|
||||
<input id="form_token" name="token" type="hidden" value="needtoaddtoken">
|
||||
</div>
|
||||
</div>
|
||||
<label class="list-title">IMAGES AND VIDEO</label>
|
||||
<div id="page-images-list" class="page-images-list"></div>
|
||||
<label class="list-title">FILES</label>
|
||||
<div class="page-files-list"></div>
|
||||
@else
|
||||
<div class="file-drop">
|
||||
<label for="page-files-upload">DRAG AND DROP FILES OR CLICK TO SELECT</label>
|
||||
</div>
|
||||
<label class="list-title">IMAGES AND VIDEO</label>
|
||||
<div id="page-images-list" class="page-images-list">
|
||||
@if(count($media)>1)
|
||||
@foreach($media as $item)
|
||||
@if($item['type'] == "mp4")
|
||||
<div id="{{ $loop->index }}" class="video-item" data-id="{{ $item['file'] }}">
|
||||
<video>
|
||||
<source src="{{ $item['file'] }}"/>
|
||||
</video>
|
||||
<button id="{{ $loop->index }}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@else
|
||||
<div id="{{ $loop->index }}" class="img-item" data-id="{{ $item['file'] }}" style="background: url({{ $item['file'] }}) no-repeat center center / cover">
|
||||
<button id="{{ $loop->index }}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@endif
|
||||
@endforeach
|
||||
@else
|
||||
@if($media[0] != '')
|
||||
@if($media[0]['type'] == "mp4")
|
||||
<div id="0" class="video-item" data-id="{{ $media[0]['file'] }}">
|
||||
<button id="0" class="media-remove">X</button>
|
||||
</div>
|
||||
@else
|
||||
<div id="0" class="img-item" data-id="{{ $media[0]['file'] }}" style="background: url({{ $media[0]['file'] }}) no-repeat center center / cover">
|
||||
<button id="0" class="media-remove">X</button>
|
||||
</div>
|
||||
@endif
|
||||
@endif
|
||||
@endif
|
||||
</section>
|
||||
<section class="text-editor">
|
||||
@include('includes.editor')
|
||||
<div class="edit-post-wrapper">
|
||||
<textarea id="edit" spellcheck="false" class="language-md">{{$content}}</textarea>
|
||||
<pre id="highlight"><code id="highlight-content" class="language-md"></code></pre>
|
||||
</div>
|
||||
<label class="list-title">FILES</label>
|
||||
<div class="page-files-list">
|
||||
@if(count($files) > 1)
|
||||
@foreach($files as $item)
|
||||
@php
|
||||
$fileName = explode("/", $item['file']);
|
||||
@endphp
|
||||
@if($item['type'] == "mp3")
|
||||
<div id="{{ $loop->index }}" class="audio-item" data-id="{{ $item['file'] }}">
|
||||
<audio controls>
|
||||
<source src="{{ $item['file'] }}"/>
|
||||
</audio>
|
||||
<button id="{{ $loop->index }}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@else
|
||||
<div id="{{ $loop->index }}" class="file-item" data-id="{{ $item['file'] }}">
|
||||
<a href="{{ $item['file'] }}" target="_blank">{{ $fileName[6] }}"</a>
|
||||
<button id="{{ $loop->index }}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@endif
|
||||
@endforeach
|
||||
@else
|
||||
@if(isset($files[0]) && $files[0] != '')
|
||||
@php
|
||||
$fileName = explode("/", $item['file']);
|
||||
@endphp
|
||||
@if($files[0]['type'] == "mp3")
|
||||
<div id="0" class="audio-item" data-id="{{ $files[0]['file'] }}">
|
||||
<audio controls>
|
||||
<source src="{{ $files[0]['file'] }}"/>
|
||||
</audio>
|
||||
<button id="{{ $loop->index }}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@else
|
||||
<div id="0" class="file-item" data-id="{{ $files[0]['file'] }}">
|
||||
<a href="{{ $item['file'] }}" target="_blank">{{ $fileName[6] }}"</a>
|
||||
<button id="{{ $loop->index }}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@else
|
||||
|
||||
@endif
|
||||
@endif
|
||||
|
||||
</div>
|
||||
@endif
|
||||
</section><section class="page-meta">
|
||||
<div class="page-meta-wrapper">
|
||||
<div class="page-title">
|
||||
<strong>TITLE</strong>
|
||||
<textarea id="post-title-text" class="input-dark" type="text" name="post-title-text" class="post-edit" placeholder="TITLE">{{ $title }}</textarea>
|
||||
</div>
|
||||
<div class="page-tags">
|
||||
<strong>TAGS</strong>
|
||||
<textarea id="post-tags" class="input-dark" type="text" name="post-tags" class="form-control" placeholder="tags [comma seperated]">{{ $tags }}</textarea>
|
||||
</div>
|
||||
<div class="page-layouts">
|
||||
<strong>LAYOUTS</strong>
|
||||
<select id="page-templates">
|
||||
@foreach($views as $view)
|
||||
@if($view == $layout)
|
||||
<option value={{ $view }} selected>{{ $view }}</option>
|
||||
@else
|
||||
<option value={{ $view }}>{{ $view }}</option>
|
||||
@endif
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
<div class="page-options">
|
||||
<strong>OPTIONS</strong>
|
||||
@include('includes.options')
|
||||
</div>
|
||||
<div class="page-updated">
|
||||
<strong>UPDATED</strong>
|
||||
<span id="post-date" type="text">
|
||||
{{ $updated }}
|
||||
</span>
|
||||
</div>
|
||||
<div class="page-created">
|
||||
<strong>CREATED</strong>
|
||||
<span id="post-date" type="text">
|
||||
{{ $date }}
|
||||
</span>
|
||||
<input id="page-files-upload" type="file" name="page-files-upload" multiple/>
|
||||
<input id="post-image-upload" type="file" name="post-image-upload"/>
|
||||
<input id="form_token" name="token" type="hidden" value="needtoaddtoken"></div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<section class="text-editor">
|
||||
@include('includes.editor')
|
||||
<div class="edit-post-wrapper">
|
||||
<textarea id="edit" spellcheck="false" class="language-md">{{ $content }}</textarea>
|
||||
<pre id="highlight"><code id="highlight-content" class="language-md"></code></pre>
|
||||
</div>
|
||||
</section>
|
||||
@endsection
|
||||
@section('scripting')
|
||||
<script type="module" src="/assets/scripts/dash/app/EditPage.js"></script>
|
||||
@endsection
|
||||
</section>
|
||||
@endsection
|
||||
@section('scripting')
|
||||
<script type="module" src="/assets/scripts/dash/app/EditPage.js"></script>
|
||||
@endsection
|
50
resources/views/includes/files-list.blade.php
Normal file
50
resources/views/includes/files-list.blade.php
Normal file
|
@ -0,0 +1,50 @@
|
|||
@if(count($files) > 1)
|
||||
@foreach($files as $item)
|
||||
@php
|
||||
$fileName = explode("/", $item['file']);
|
||||
@endphp
|
||||
@if($item['type'] == "mp3")
|
||||
<div id="{{$loop->index}}" class="audio-item" data-id="{{$item['file']}}">
|
||||
<audio controls>
|
||||
<source src="{{$item['file']}}" />
|
||||
</audio>
|
||||
<button id="{{$loop->index}}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@else
|
||||
<div id="{{$loop->index}}" class="file-item" data-id="{{$item['file']}}">
|
||||
<a href="{{$item['file']}}" target="_blank">{{$fileName[6]}}"</a>
|
||||
<button id="{{$loop->index}}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@endif
|
||||
@endforeach
|
||||
@else
|
||||
@if(isset($files[0]) && $files[0] != '')
|
||||
@php
|
||||
$fileName = explode("/", $item['file']);
|
||||
@endphp
|
||||
@if($files[0]['type'] == "mp3")
|
||||
<div id="0" class="audio-item" data-id="{{$files[0]['file']}}">
|
||||
<audio controls>
|
||||
<source src="{{$files[0]['file']}}" />
|
||||
</audio>
|
||||
<button id="{{$loop->index}}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@else
|
||||
<div id="0" class="file-item" data-id="{{$files[0]['file']}}">
|
||||
<a href="{{$item['file']}}" target="_blank">{{$fileName[6]}}"</a>
|
||||
<button id="{{$loop->index}}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@else
|
||||
|
||||
@endif
|
||||
@endif
|
32
resources/views/includes/media-list.blade.php
Normal file
32
resources/views/includes/media-list.blade.php
Normal file
|
@ -0,0 +1,32 @@
|
|||
@if(count($media)>1)
|
||||
@foreach($media as $item)
|
||||
@if($item['type'] == "mp4")
|
||||
<div id="{{$loop->index}}" class="video-item" data-id="{{$item['file']}}">
|
||||
<video>
|
||||
<source src="{{$item['file']}}" />
|
||||
</video>
|
||||
<button id="{{$loop->index}}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@else
|
||||
<div id="{{$loop->index}}" class="img-item" data-id="{{$item['file']}}" style="background: url({{$item['file']}}) no-repeat center center / cover">
|
||||
<button id="{{$loop->index}}" class="media-remove">
|
||||
X
|
||||
</button>
|
||||
</div>
|
||||
@endif
|
||||
@endforeach
|
||||
@else
|
||||
@if($media[0] != '')
|
||||
@if($media[0]['type'] == "mp4")
|
||||
<div id="0" class="video-item" data-id="{{$media[0]['file']}}">
|
||||
<button id="0" class="media-remove">X</button>
|
||||
</div>
|
||||
@else
|
||||
<div id="0" class="img-item" data-id="{{$media[0]['file']}}" style="background: url({{$media[0]['file']}}) no-repeat center center / cover">
|
||||
<button id="0" class="media-remove">X</button>
|
||||
</div>
|
||||
@endif
|
||||
@endif
|
||||
@endif
|
|
@ -1,5 +1,4 @@
|
|||
|
||||
@php
|
||||
<?php
|
||||
|
||||
if(isset($page['menu']) && $page['menu'])
|
||||
{
|
||||
|
@ -28,26 +27,25 @@ if(isset($page['uuid']))
|
|||
}else{
|
||||
$uuid = 1;
|
||||
}
|
||||
|
||||
@endphp
|
||||
?>
|
||||
|
||||
<div role="toolbar" aria-label="page options" aria-orientation="horizontal">
|
||||
<button id="option-menu-pin" class="option-inactive post-option-btn" data-active="{{ $menu }}" title='Pin to Menu' aria-label="pin to menu">
|
||||
<button id="option-menu-pin" class="option-inactive post-option-btn" data-active="{{$menu}}" title='Pin to Menu' aria-label="pin to menu">
|
||||
<svg id="option-menu-pin" class="icon">
|
||||
<use id="option-menu-pin" xlink:href="/assets/images/global/sprite.svg#entypo-pin"/>
|
||||
<use id="option-menu-pin" xlink:href="/assets/images/global/sprite.svg#entypo-pin" />
|
||||
</svg>
|
||||
</button><button id="option-feature" class="option-inactive post-option-btn" data-active="{{ $featured }}" title='Feature' aria-label="feature post toggle">
|
||||
</button><button id="option-feature" class="option-inactive post-option-btn" data-active="{{$featured}}" title='Feature' aria-label="feature post toggle">
|
||||
<svg id="option-feature-icon" class="icon">
|
||||
<use id="option-feature-icon" xlink:href="/assets/images/global/sprite.svg#entypo-star"/>
|
||||
<use id="option-feature-icon" xlink:href="/assets/images/global/sprite.svg#entypo-star" />
|
||||
</svg>
|
||||
</button><button id="option-published" class="option-inactive post-option-btn" data-active="{{ $published }}" title='Published' aria-label="publish post toggle">
|
||||
</button><button id="option-published" class="option-inactive post-option-btn" data-active="{{$published}}" title='Published' aria-label="publish post toggle">
|
||||
<svg id="option-published-icon" class="icon">
|
||||
<use id="option-published-icon" xlink:href="/assets/images/global/sprite.svg#entypo-globe"/>
|
||||
<use id="option-published-icon" xlink:href="/assets/images/global/sprite.svg#entypo-globe" />
|
||||
</svg>
|
||||
</button><a href="/theme/view/page/{{ $uuid }}" target="_blank"><button id="option-preview" class="option-inactive post-option-btn" data-active="false" title='preview page' aria-label="preview post">
|
||||
</button><a href="/theme/view/page/{{$uuid}}" target="_blank"><button id="option-preview" class="option-inactive post-option-btn" data-active="false" title='preview page' aria-label="preview post">
|
||||
<svg id="option-preview-icon" class="icon">
|
||||
<use id="option-preview-icon" xlink:href="/assets/images/global/sprite.svg#entypo-eye"/>
|
||||
<use id="option-preview-icon" xlink:href="/assets/images/global/sprite.svg#entypo-eye" />
|
||||
</svg>
|
||||
</button>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
Loading…
Add table
Reference in a new issue