1
0
mirror of https://github.com/flarum/core.git synced 2025-07-30 21:20:24 +02:00

Build very rough HTML-only content

And redirect to the "no JS" mode if the JS app crashes on boot.

ClientView/ClientAction is all a bit of a mess and will need to be
radically cleaned up at some point...
This commit is contained in:
Toby Zerner
2015-08-06 12:21:11 +09:30
parent bb89ef276f
commit 6f4d7a36b6
9 changed files with 128 additions and 42 deletions

View File

@@ -21,31 +21,27 @@
<div id="modal"></div>
<div id="alerts"></div>
@foreach ($scripts as $file)
<script src="{{ str_replace(public_path(), '', $file) }}"></script>
@endforeach
<script>
try {
var app = System.get('flarum/app').default;
babelHelpers._extends(app, {!! json_encode($app) !!});
@foreach ($bootstrappers as $bootstrapper)
System.get('{{ $bootstrapper }}');
@if (! $noJs)
@foreach ($scripts as $file)
<script src="{{ str_replace(public_path(), '', $file) }}"></script>
@endforeach
app.boot();
} catch (e) {
document.write('<div class="container">Something went wrong.</div>');
throw e;
}
</script>
<script>
try {
var app = System.get('flarum/app').default;
@if ($content)
<noscript>
{!! $content !!}
</noscript>
babelHelpers._extends(app, {!! json_encode($app) !!});
@foreach ($bootstrappers as $bootstrapper)
System.get('{{ $bootstrapper }}');
@endforeach
app.boot();
} catch (e) {
window.location = window.location + '?nojs=1';
throw e;
}
</script>
@endif
{!! $foot !!}

View File

@@ -0,0 +1,6 @@
@if (! $noJs) <noscript> @endif
<div class="container">
<div class="Alert">You're viewing the HTML-only version of {{ $forum->attributes->title }}. Upgrade your browser for the full version.</div>
</div>
{!! $content !!}
@if (! $noJs) </noscript> @endif

View File

@@ -1 +1,29 @@
discussion SEO content
<?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 : '[deleted]' }}</h3>
<div class="Post-body">
{!! $post->attributes->contentHtml !!}
</div>
</div>
<hr>
@endforeach
</div>
@if ($page > 1)
<a href="{{ $url(['page' => $page - 1]) }}">&laquo; Previous Page</a>
@endif
@if ($page < $postsCount / 20)
<a href="{{ $url(['page' => $page + 1]) }}">Next Page &raquo;</a>
@endif
</div>

View File

@@ -45,6 +45,8 @@
<main class="App-content">
<div id="content"></div>
{!! $content !!}
<div class="App-composer">
<div class="container">
<div id="composer"></div>

View File

@@ -1 +1,21 @@
index SEO content
<?php
$url = app('Flarum\Http\UrlGeneratorInterface');
?>
<div class="container">
<h2>All Discussions</h2>
<ul>
@foreach ($document->data as $discussion)
<li>
<a href="{{ $url->toRoute('flarum.forum.discussion', [
'id' => $discussion->id,
'slug' => $discussion->attributes->title
]) }}">
{{ $discussion->attributes->title }}
</a>
</li>
@endforeach
</ul>
<a href="{{ $url->toRoute('flarum.forum.index') }}?page={{ $page + 1 }}">Next Page &raquo;</a>
</div>