Browse Source

Allow select defering additional JS

pull/40/head
discomrade 3 years ago
parent
commit
dca55a1643
  1. 7
      inc/config.php
  2. 74
      inc/instance-config.php
  3. 7
      templates/header.html

7
inc/config.php

@ -1048,6 +1048,13 @@
// $config['additional_javascript'][] = 'js/auto-reload.js';
// $config['additional_javascript'][] = 'js/post-hover.js';
// $config['additional_javascript'][] = 'js/style-select.js';
// Defer some additional Javascript for faster initial page load times. Defering may break some scripts.
// To enable, replace the $config['additional_javascript'] array with $config['additional_javascript_init']
// and $config['additional_javascript_defer'] arrays, then merge them to with array_merge() to generate
// the $config['additional_javascript'] array. This is incompatible with additional_javascript_compile.
// Remember to add the two scripts above into ['additional_javascript_init']!
$config['deferred_javascript'] = false;
// Where these script files are located on the web. Defaults to $config['root'].
// $config['additional_javascript_url'] = 'http://static.example.org/tinyboard-javascript-stuff/';

74
inc/instance-config.php

@ -363,41 +363,45 @@ $config['default_stylesheet'] = array('Dark Red', $config['stylesheets']['Dark R
* ====================
*/
$config['additional_javascript'][] = 'js/jquery-ui.custom.min.js';
$config['additional_javascript'][] = 'js/ajax.js';
$config['additional_javascript'][] = 'js/options.js';
$config['additional_javascript'][] = 'js/strftime.min.js';
$config['additional_javascript'][] = 'js/local-time.js';
$config['additional_javascript'][] = 'js/auto-reload.js';
$config['additional_javascript'][] = 'js/auto-scroll.js';
$config['additional_javascript'][] = 'js/thread-stats.js';
$config['additional_javascript'][] = 'js/post-hover.js';
$config['additional_javascript'][] = 'js/image-hover.js';
$config['additional_javascript'][] = 'js/style-select.js';
$config['additional_javascript'][] = 'js/flag-preview.js';
$config['additional_javascript'][] = 'js/hide-threads.js';
$config['additional_javascript'][] = 'js/hide-images.js';
$config['additional_javascript'][] = 'js/show-backlinks.js';
$config['additional_javascript'][] = 'js/show-op.js';
$config['additional_javascript'][] = 'js/show-own-posts.js';
$config['additional_javascript'][] = 'js/quick-reply.js';
$config['additional_javascript'][] = 'js/post-menu.js';
$config['additional_javascript'][] = 'js/post-filter.js';
$config['additional_javascript'][] = 'js/options/general.js';
$config['additional_javascript'][] = 'js/options/user-css.js';
$config['additional_javascript'][] = 'js/options/user-js.js';
$config['additional_javascript'][] = 'js/thread-watcher.js';
$config['additional_javascript'][] = 'js/catalog-search.js';
$config['additional_javascript'][] = 'js/gallery-view.js';
$config['additional_javascript'][] = 'js/expand.js';
$config['additional_javascript'][] = 'js/file-selector.js';
$config['additional_javascript'][] = 'js/save-user_flag.js';
$config['additional_javascript'][] = 'js/webm-settings.js';
$config['additional_javascript'][] = 'js/expand-video.js';
$config['deferred_javascript'] = true;
$config['additional_javascript_init'][] = 'js/jquery.min.js';
$config['additional_javascript_init'][] = 'js/inline-expanding.js';
$config['additional_javascript_init'][] = 'js/ajax.js';
$config['additional_javascript_init'][] = 'js/post-menu.js';
$config['additional_javascript_init'][] = 'js/hide-images.js';
$config['additional_javascript_init'][] = 'js/show-backlinks.js';
$config['additional_javascript_init'][] = 'js/show-op.js';
$config['additional_javascript_init'][] = 'js/show-own-posts.js';
$config['additional_javascript_init'][] = 'js/post-filter.js';
$config['additional_javascript_init'][] = 'js/strftime.min.js';
$config['additional_javascript_init'][] = 'js/local-time.js';
$config['additional_javascript_init'][] = 'js/save-user_flag.js';
$config['additional_javascript_init'][] = 'js/auto-scroll.js';
$config['additional_javascript_init'][] = 'js/options.js';
$config['additional_javascript_init'][] = 'js/options/general.js';
$config['additional_javascript_init'][] = 'js/options/user-css.js';
$config['additional_javascript_init'][] = 'js/options/user-js.js';
$config['additional_javascript_init'][] = 'js/style-select.js';
$config['additional_javascript_init'][] = 'js/flag-preview.js';
$config['additional_javascript_init'][] = 'js/file-selector.js';
$config['additional_javascript_init'][] = 'js/post-hover.js';
$config['additional_javascript_defer'][] = 'js/auto-reload.js';
$config['additional_javascript_defer'][] = 'js/thread-stats.js';
$config['additional_javascript_defer'][] = 'js/image-hover.js';
$config['additional_javascript_init'][] = 'js/jquery-ui.custom.min.js';
$config['additional_javascript_init'][] = 'js/quick-reply.js';
$config['additional_javascript_init'][] = 'js/gallery-view.js';
$config['additional_javascript_init'][] = 'js/catalog-search.js';
$config['additional_javascript_defer'][] = 'js/thread-watcher.js';
$config['additional_javascript_defer'][] = 'js/expand.js';
$config['additional_javascript_defer'][] = 'js/webm-settings.js';
$config['additional_javascript_defer'][] = 'js/expand-video.js';
$config['additional_javascript'] = array_merge($config['additional_javascript_init'], $config['additional_javascript_defer']);
$config['flag_preview'] = true;

7
templates/header.html

@ -17,7 +17,12 @@
{% if not nojavascript %}
<script type="text/javascript" src="{{ config.url_javascript }}"></script>
{% if not config.additional_javascript_compile %}
{% for javascript in config.additional_javascript %}<script defer type="text/javascript" src="{{ config.additional_javascript_url }}{{ javascript }}"></script>{% endfor %}
{% if not config.deferred_javascript %}
{% for javascript in config.additional_javascript %}<script type="text/javascript" src="{{ config.additional_javascript_url }}{{ javascript }}"></script>{% endfor %}
{% else %}
{% for javascript in config.additional_javascript_init %}<script type="text/javascript" src="{{ config.additional_javascript_url }}{{ javascript }}"></script>{% endfor %}
{% for javascript in config.additional_javascript_defer %}<script defer type="text/javascript" src="{{ config.additional_javascript_url }}{{ javascript }}"></script>{% endfor %}
{% endif %}
{% endif %}
{% endif %}
{% if config.recaptcha %}

Loading…
Cancel
Save