PaperModX/layouts/partials/telegram_widget.html

53 lines
1.3 KiB
HTML

<div class="telegram-widget-container"></div>
<script>
(function() {
const attrs = {
'data-telegram-discussion': "{{ .channel }}",
'data-comments-limit': "{{ .limit | default 10 }}",
// prevent the <script> from loading mutiple times by InstantClick
'data-no-instant': '',
}
const accentColor = '{{ with .accentColor }}{{ . }}{{ end }}';
if (accentColor) {
attrs['data-color'] = accentColor;
}
if (isDarkTheme()) {
attrs['data-dark'] = '1'
}
var d = document, s = d.createElement('script');
s.src = "https://telegram.org/js/telegram-widget.js?19";
for (const key in attrs) {
s.setAttribute(key, attrs[key]);
}
const container = document.querySelector('.telegram-widget-container')
container.innerHTML = '';
container.appendChild(s);
})();
</script>
<script data-no-instant>
(function() {
if (!toggleThemeCallbacks) {
return;
}
if (document.getElementsByClassName('telegram-widget-container').length === 0) {
return;
}
toggleThemeCallbacks.push((isDark) => {
// console.log('window toggle-theme for telegram widget')
if (!window.Telegram) {
return;
}
if (isDark) {
Telegram.setWidgetOptions({'nodark': 1})
} else {
Telegram.setWidgetOptions({'dark': 1})
}
});
})();
</script>