- let emojiMaps = '""' if site.data.valine - emojiMaps = JSON.stringify(site.data.valine) script. function loadValine () { function requestSetting (from, set) { var from = from var setting = set.split(',').filter(function(item){ return from.indexOf(item) > -1 }); setting = setting.length == 0 ? from :setting; return setting } var guestInfo = requestSetting(['nick','mail','link'],'#{ theme.valine.guest_info }') var requiredFields = requestSetting(['nick','mail'],'#{ theme.valine.requiredFields }') function initValine () { window.valine = new Valine({ el: '#vcomment', appId: '#{theme.valine.appId}', appKey: '#{theme.valine.appKey}', placeholder: '#{theme.valine.placeholder}', avatar: '#{theme.valine.avatar}', meta: guestInfo, pageSize: '#{theme.valine.pageSize}', lang: '#{theme.valine.lang}', recordIP: #{theme.valine.recordIP}, serverURLs: '#{theme.valine.serverURLs}', emojiCDN: '#{theme.valine.emojiCDN}', emojiMaps: !{emojiMaps}, enableQQ: #{theme.valine.enableQQ}, requiredFields: requiredFields, path: window.location.pathname, }); } if (typeof Valine === 'function') initValine() else $.getScript('!{url_for(theme.CDN.valine)}', initValine) } if ('!{defaultComment}' === 'Valine' || !{theme.comments.load_begin}) { document.querySelector('#vcomment') && loadValine() !{theme.pjax} && document.addEventListener('pjax:complete', () => document.querySelector('#vcomment') && loadValine()) } else { function loadOtherComment () { loadValine() } }