diff options
author | Jonas Kohl | 2024-12-10 17:15:10 +0100 |
---|---|---|
committer | Jonas Kohl | 2024-12-10 17:15:10 +0100 |
commit | 7d685c5e64149e20c7dc8977f645e050be53ddfd (patch) | |
tree | 44a931c23979aaa2e22b079f8af9232f490eb4d3 /src/application/templates/old/base.twig | |
parent | 7c9f91333da983da37d3dc837fa61ef0bff64549 (diff) |
Add classic theme
Diffstat (limited to 'src/application/templates/old/base.twig')
-rw-r--r-- | src/application/templates/old/base.twig | 223 |
1 files changed, 223 insertions, 0 deletions
diff --git a/src/application/templates/old/base.twig b/src/application/templates/old/base.twig new file mode 100644 index 0000000..7b358d0 --- /dev/null +++ b/src/application/templates/old/base.twig @@ -0,0 +1,223 @@ +{%- if title -%} + {%- set title = title ~ " | " -%} +{%- endif -%} +{%- set title = title ~ (g.env.MYSTIC_FORUM_TITLE|default("Forum")) -%} +{%- set nextParam = "" -%} +{%- if g.globals.action in ["login", "register"] -%} + {%- set nextParam = g.get.next|default("") -%} +{%- else -%} + {%- set nextParam = g.server.REQUEST_URI -%} +{%- endif -%} +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html lang="{{ __("en", context: "HTML language") }}"> +<head> + <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> + <meta name="generator" content="mysticBB {{ constant("MYSTICBB_VERSION") }}"> + <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7"> + <meta http-equiv="imagetoolbar" content="no"> + <meta http-equiv="MSThemeCompatible" content="yes"> + <title>{{ title }}</title> + <link rel="stylesheet" href="?_action=ctheme&theme={{ g.cookie.theme|url_encode }}" type="text/css"> + <script type="text/javascript" src="/ui/jquery-1.12.4.min.js"></script> + {% block head_after %}{% endblock %} +</head> +<body bgcolor="white" text="black" link="blue" vlink="blue" alink="red"> +<table width="100%"> + +{% block nav %} +<tr> +<td> +<table width="100%"> +<tr> +<td align="right"> +<table border="1" cellspacing="0" cellpadding="4" bordercolor="silver" bgcolor="white"> +<tr> +{% block navbar %} + {% if currentUser %} + <td>{{ __("Welcome, %user%!", { + user: currentUser.id == constant("mystic\\forum\\orm\\User::SUPERUSER_ID") ? ('<strong class="text-danger">' ~ (currentUser.displayName|e("html")) ~ '</strong>')|raw : ('<strong>' ~ (currentUser.displayName|e("html")) ~ '</strong>')|raw + }) }}</td> + <td><img src="/ui/theme-files/old/home.gif" border="0" alt="" width="16" height="16" draggable="false" class="inline-icon"> <a href=".">{{ __("Start") }}</a></td> + <td{{ g.globals.action == "search" ? ' class="active"'|raw : '' }}><img src="/ui/theme-files/old/search.gif" border="0" alt="" width="16" height="16" draggable="false" class="inline-icon"> <a href="?_action=search">{{ __("Search") }}</a></td> + <td{{ (g.globals.action == "viewuser" and g.get.user == currentUser.id) ? ' class="active"'|raw : '' }}><img src="/ui/theme-files/old/user.gif" border="0" alt="" width="16" height="16" draggable="false" class="inline-icon"> <a href="?_action=viewuser&user={{ currentUser.id|url_encode }}">{{ __("View profile") }}</a></td> + <td><img src="/ui/theme-files/old/exit.gif" border="0" alt="" width="16" height="16" draggable="false" class="inline-icon"> <a href="?_action=logout&next={{ g.server.REQUEST_URI|url_encode }}">{{ __("Log out") }}</a></td> + {% else %} + <td><img src="/ui/theme-files/old/home.gif" border="0" alt="" width="16" height="16" draggable="false" class="inline-icon"> <a href=".">{{ __("Start") }}</a></td> + <td{{ g.globals.action == "search" ? ' class="active"'|raw : '' }}><img src="/ui/theme-files/old/search.gif" border="0" alt="" width="16" height="16" draggable="false" class="inline-icon"> <a href="?_action=search">{{ __("Search") }}</a></td> + <td{{ g.globals.action == "auth" ? ' class="active"'|raw : '' }}><img src="/ui/theme-files/old/user.gif" border="0" alt="" width="16" height="16" draggable="false" class="inline-icon"> <a href="?_action=auth&next={{ nextParam|url_encode }}">{{ __("Log in") }}</a></td> + {% if constant("REGISTRATION_ENABLED") %} + <td{{ g.globals.action == "register" ? ' class="active"'|raw : '' }}><img src="/ui/theme-files/old/user_add.gif" border="0" alt="" width="16" height="16" draggable="false" class="inline-icon"> <a href="?_action=register&next={{ nextParam|url_encode }}">{{ __("Register") }}</a></td> + {% endif %} + {% endif %} +{% endblock %} +</tr> +</table> +</tr> +</table> +</td> +</tr> +{% endblock %} + +{% block main %} +<tr><td> + {% block content %}{% endblock %} +</td></tr> +{% endblock %} + +{% block footer %} +<tr> +<td> +<table border="1" width="100%" cellpadding="4" cellspacing="0" bordercolor="silver" bgcolor="white" class="footer"> +<tr> + <td align="left"> + © {{ "now"|date("Y") }} {{ g.env.MYSTIC_FORUM_COPYRIGHT|default(g.env.MYSTIC_FORUM_TITLE)|default("Forum") }}. + Powered by <a href="https://git.jkohl.link/mystic-forum.git/tag/?h=v{{ constant("MYSTICBB_VERSION")|url_encode }}">mysticBB v{{ constant("MYSTICBB_VERSION") }}</a>. + </td> + <td align="right"> + <table><tr><td> + <form action="?_action=settheme" method="post"> + <input type="hidden" name="next" value="{{ g.server.REQUEST_URI }}"> + <div class="form-group"> + <label for="theme-select">{{ __("Theme:") }}</label> + <select id="theme-select" name="theme" onChange="this.form.submit()"> + {% for themeKey, themeInfo in availableThemes %} + <option value="{{ themeKey }}"{{ themeKey == currentTheme ? " selected" : "" }}>{{ themeInfo.name }}</option> + {% endfor %} + </select> + </div> + </form> + </td><td> + <span>{{ __("Language:") }}</span> + {% for langKey, langName in availableLangs %} + <form action="?_action=setlang" method="post" class="inline"> + <input type="hidden" name="next" value="{{ g.server.REQUEST_URI }}"> + <input type="hidden" name="lang" value="{{ langKey }}"> + <button type="submit" class="seamless inline-icon"><img src="/ui/theme-files/old/lang_{{ langKey }}.gif" width="16" height="16" border="0" draggable="false" alt="{{ langName }}"></button> + </form> + {% endfor %} + </td></tr></table> + </td> +</tr> +</table> +</td> +</tr> +{% endblock %} + +{% block scripts %} +<script type="text/javascript"> + $(function() { + function insertAroundSelection(textarea, before, after) { + var start = textarea.selectionStart; + var end = textarea.selectionEnd; + var text = textarea.value; + var pre = text.substring(0, start); + var inner = text.substring(start, end); + var post = text.substring(end); + start += before.length; + end += before.length; + text = pre + before + inner + after + post; + textarea.value = text; + textarea.focus(); + textarea.selectionStart = start; + textarea.selectionEnd = end; + } + + function getTextarea(btn) { + return $($(btn).attr("data-area"))[0]; + } + + var commands = { + bold: function(textarea) { + insertAroundSelection(textarea, "[b]", "[/b]"); + }, + italic: function(textarea) { + insertAroundSelection(textarea, "[i]", "[/i]"); + }, + underline: function(textarea) { + insertAroundSelection(textarea, "[u]", "[/u]"); + }, + strikethrough: function(textarea) { + insertAroundSelection(textarea, "[s]", "[/s]"); + }, + sup: function(textarea) { + insertAroundSelection(textarea, "[^]", "[/^]"); + }, + sub: function(textarea) { + insertAroundSelection(textarea, "[_]", "[/_]"); + }, + quote: function(textarea) { + insertAroundSelection(textarea, "> ", ""); + }, + spoiler: function(textarea) { + insertAroundSelection(textarea, "[spoiler]", "[/spoiler]"); + } + } + + $("button[data-editor-command]").attr("data-toggle", "tooltip").attr("data-placement", "bottom").click(function() { + var command = $(this).attr("data-editor-command"); + var textarea = getTextarea(this); + commands[command](textarea); + }); + }); +</script> +<script type="text/javascript"> + $(function() { + function parseISODate(str) { + var matches = str.match(/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})([+-]\d{2}(?::?\d{2}))?$/); + matches.shift(); + var year = matches[0]; + var month = matches[1]; + var day = matches[2]; + var hours = matches[3]; + var minutes = matches[4]; + var seconds = matches[5]; + var timezone = matches[6]; + if (timezone.indexOf(":") >= 0) { + var factor = 1; + if (timezone[0] == "+") { + factor = 1; + timezone = timezone.substr(1); + } else if (timezone[0] == "-") { + factor = -1; + timezone = timezone.substr(1); + } + timezone = timezone.split(":"); + var tzHours = timezone[0]; + var tzMinutes = timezone[1]; + tzHours = parseInt(tzHours); + tzMinutes = parseInt(tzMinutes) / 60; + timezone = tzHours + tzMinutes; + } else { + timezone = parseInt(timezone); + } + + var date = new Date(); + date.setUTCFullYear(year); + date.setUTCMonth(month - 1); + date.setUTCDate(day); + date.setUTCHours(hours); + date.setUTCMinutes(minutes); + date.setUTCSeconds(seconds); + + return date; + } + + $("._time").each(function(i, e) { + var date = parseISODate($(e).text()); + $(e).text(date.toLocaleString()); + }); + $("._date").each(function(i, e) { + var date = parseISODate($(e).text()); + $(e).text(date.toLocaleDateString()); + }); + $("._time-only").each(function(i, e) { + var date = parseISODate($(e).text()); + $(e).text(date.toLocaleTimeString()); + }); + }); +</script> +{% endblock %} + +</table> +</body> +</html> |