Dan Brown

Added support for custom content in HTML head

...@@ -154,6 +154,11 @@ input:checked + .toggle-switch { ...@@ -154,6 +154,11 @@ input:checked + .toggle-switch {
154 154
155 .form-group { 155 .form-group {
156 margin-bottom: $-s; 156 margin-bottom: $-s;
157 + textarea {
158 + display: block;
159 + width: 100%;
160 + min-height: 64px;
161 + }
157 } 162 }
158 163
159 .form-group { 164 .form-group {
......
...@@ -20,6 +20,11 @@ ...@@ -20,6 +20,11 @@
20 @yield('head') 20 @yield('head')
21 21
22 @include('partials/custom-styles') 22 @include('partials/custom-styles')
23 +
24 + <!-- Custom user content -->
25 + @if(setting('app-custom-head', false))
26 + {!! setting('app-custom-head') !!}
27 + @endif
23 </head> 28 </head>
24 <body class="@yield('body-class')" ng-app="bookStack"> 29 <body class="@yield('body-class')" ng-app="bookStack">
25 30
......
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
25 </div> 25 </div>
26 <div class="form-group"> 26 <div class="form-group">
27 <label>Enable higher security image uploads?</label> 27 <label>Enable higher security image uploads?</label>
28 - <p class="small">For performance reasons, all images are public by default, This option adds a random, hard-to-guess characters in front of image names. Ensure directory indexes are not enabled to prevent easy access.</p> 28 + <p class="small">For performance reasons, all images are public. This option adds a random, hard-to-guess string in front of image urls. Ensure directory indexes are not enabled to prevent easy access.</p>
29 <div toggle-switch name="setting-app-secure-images" value="{{ setting('app-secure-images') }}"></div> 29 <div toggle-switch name="setting-app-secure-images" value="{{ setting('app-secure-images') }}"></div>
30 </div> 30 </div>
31 <div class="form-group"> 31 <div class="form-group">
...@@ -51,12 +51,16 @@ ...@@ -51,12 +51,16 @@
51 </div> 51 </div>
52 </div> 52 </div>
53 </div> 53 </div>
54 - 54 + <div class="form-group">
55 - 55 + <label for="setting-app-custom-head">Custom HTML head content</label>
56 + <p class="small">Any content added here will be inserted into the bottom of the &lt;head&gt; section of every page. This is handy for overriding styles or adding analytics code.</p>
57 + <textarea name="setting-app-custom-head" id="setting-app-custom-head">{{ setting('app-custom-head', '') }}</textarea>
58 + </div>
56 59
57 <hr class="margin-top"> 60 <hr class="margin-top">
58 61
59 <h3>Registration Settings</h3> 62 <h3>Registration Settings</h3>
63 +
60 <div class="row"> 64 <div class="row">
61 <div class="col-md-6"> 65 <div class="col-md-6">
62 <div class="form-group"> 66 <div class="form-group">
......