1
0
mirror of https://github.com/flarum/core.git synced 2025-07-31 13:40:20 +02:00

Restructure views

- Use Laravel's view namespacing rather than the full file path
- Organise views into directories
This commit is contained in:
Toby Zerner
2017-11-29 12:49:09 +10:30
parent 7796580210
commit 479e44dd04
10 changed files with 6 additions and 6 deletions

View File

@@ -0,0 +1,37 @@
<div id="app" class="App">
<div id="app-navigation" class="App-navigation"></div>
<div id="drawer" class="App-drawer">
<header id="header" class="App-header">
<div id="header-navigation" class="Header-navigation"></div>
<div class="container">
<h1 class="Header-title">
<a href="{{ array_get($forum, 'attributes.baseUrl') }}">
<?php $title = array_get($forum, 'attributes.title'); ?>
@if ($logo = array_get($forum, 'attributes.logoUrl'))
<img src="{{ $logo }}" alt="{{ $title }}" class="Header-logo">
@else
{{ $title }}
@endif
</a>
</h1>
<div id="header-primary" class="Header-primary"></div>
<div id="header-secondary" class="Header-secondary"></div>
</div>
</header>
</div>
<main class="App-content">
<div class="container">
<div id="admin-navigation" class="App-nav sideNav"></div>
</div>
<div id="content" class="sideNavOffset"></div>
{!! $content !!}
</main>
</div>

View File

@@ -0,0 +1,68 @@
<!doctype html>
<html dir="{{ $direction }}" lang="{{ $language }}">
<head>
<meta charset="utf-8">
<title>{{ $title }}</title>
<meta name="description" content="{{ $description }}">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1">
<meta name="theme-color" content="{{ array_get($forum, 'attributes.themePrimaryColor') }}">
@if (! $allowJs)
<meta name="robots" content="noindex" />
@endif
@foreach ($cssUrls as $url)
<link rel="stylesheet" href="{{ $url }}">
@endforeach
@if ($faviconUrl = array_get($forum, 'attributes.faviconUrl'))
<link href="{{ $faviconUrl }}" rel="shortcut icon">
@endif
{!! $head !!}
</head>
<body>
{!! $layout !!}
<div id="modal"></div>
<div id="alerts"></div>
@if ($allowJs)
<script>
document.getElementById('flarum-loading').style.display = 'block';
</script>
@foreach ($jsUrls as $url)
<script src="{{ $url }}"></script>
@endforeach
<script>
document.getElementById('flarum-loading').style.display = 'none';
@if (! $debug)
try {
@endif
var app = System.get('flarum/app').default;
var modules = {!! json_encode($modules) !!};
for (var i in modules) {
var module = System.get(modules[i]);
if (module.default) module.default(app);
}
app.boot({!! json_encode($payload, JSON_HEX_TAG) !!});
@if (! $debug)
} catch (e) {
window.location += (window.location.search ? '&' : '?') + 'nojs=1';
throw e;
}
@endif
</script>
@else
<script>
window.history.replaceState(null, null, window.location.toString().replace(/([&?]nojs=1$|nojs=1&)/, ''));
</script>
@endif
{!! $foot !!}
</body>
</html>

View File

@@ -0,0 +1,23 @@
<div id="flarum-loading" style="display: none">
{{ $translator->trans('core.views.content.loading_text') }}
</div>
@if ($allowJs)
<noscript>
<div class="Alert">
<div class="container">
{{ $translator->trans('core.views.content.javascript_disabled_message') }}
</div>
</div>
{!! $content !!}
</noscript>
@else
<div class="Alert Alert--error">
<div class="container">
{{ $translator->trans('core.views.content.load_error_message') }}
</div>
</div>
{!! $content !!}
@endif

View File

@@ -0,0 +1,29 @@
<?php
$discussion = $document->data;
$postsCount = count($discussion->relationships->posts->data);
?>
<div class="container">
<h2>{{ $discussion->attributes->title }}</h2>
<div>
@foreach ($posts as $post)
<div>
<?php $user = $getResource($post->relationships->user->data); ?>
<h3>{{ $user ? $user->attributes->username : $translator->trans('core.lib.username.deleted_text') }}</h3>
<div class="Post-body">
{!! $post->attributes->contentHtml !!}
</div>
</div>
<hr>
@endforeach
</div>
@if ($page > 1)
<a href="{{ $url(['page' => $page - 1]) }}">&laquo; {{ $translator->trans('core.views.discussion.previous_page_button') }}</a>
@endif
@if ($page < $postsCount / 20)
<a href="{{ $url(['page' => $page + 1]) }}">{{ $translator->trans('core.views.discussion.next_page_button') }} &raquo;</a>
@endif
</div>

View File

@@ -0,0 +1,20 @@
<?php
$url = app('Flarum\Forum\UrlGenerator');
?>
<div class="container">
<h2>{{ $translator->trans('core.views.index.all_discussions_heading') }}</h2>
<ul>
@foreach ($document->data as $discussion)
<li>
<a href="{{ $url->toRoute('discussion', [
'id' => $discussion->id . '-' . $discussion->attributes->slug
]) }}">
{{ $discussion->attributes->title }}
</a>
</li>
@endforeach
</ul>
<a href="{{ $url->toRoute('index') }}?page={{ $page + 1 }}">{{ $translator->trans('core.views.index.next_page_button') }} &raquo;</a>
</div>

View File

@@ -0,0 +1,64 @@
<?php
/**
* Forum Web App Template
*
* NOTE: You shouldn't edit this file directly. Your changes will be overwritten
* when you update Flarum. See flarum.org/docs/templates to learn how to
* customize your forum's layout.
*
* Flarum's JavaScript app mounts various components into key elements in
* this template. They are distinguished by their ID attributes:
*
* - #app
* - #app-navigation
* - #drawer
* - #header
* - #header-navigation
* - #home-link
* - #header-primary
* - #header-secondary
* - #content
* - #composer
*/
?>
{!! array_get($forum, 'attributes.headerHtml') !!}
<div id="app" class="App">
<div id="app-navigation" class="App-navigation"></div>
<div id="drawer" class="App-drawer">
<header id="header" class="App-header">
<div id="header-navigation" class="Header-navigation"></div>
<div class="container">
<h1 class="Header-title">
<a href="{{ array_get($forum, 'attributes.baseUrl') }}" id="home-link">
<?php $title = array_get($forum, 'attributes.title'); ?>
@if ($logo = array_get($forum, 'attributes.logoUrl'))
<img src="{{ $logo }}" alt="{{ $title }}" class="Header-logo">
@else
{{ $title }}
@endif
</a>
</h1>
<div id="header-primary" class="Header-primary"></div>
<div id="header-secondary" class="Header-secondary"></div>
</div>
</header>
</div>
<main class="App-content">
<div id="content"></div>
{!! $content !!}
<div class="App-composer">
<div class="container">
<div id="composer"></div>
</div>
</div>
</main>
</div>