lepisi-pengumuman/assets/js/components/images.js

49 lines
1.6 KiB
JavaScript

let m = require('mithril')
let landingPost = require('../models/landingPost')
let swiper = require('swiper')
let marked = require('../vendor/marked')
let fitText = require('../others/fitText')
require('../../../node_modules/swiper/dist/css/swiper.css')
var images = {
root: null,
oncreate: function() {
setTimeout(function() {
landingPost(images.root)
var imgSwiper = new swiper('.swiper-container', {
speed: 500,
autoplay: 5000,
autoplayDisableOnInteraction: false,
loop: true,
onTransitionEnd: function(imgSwiper) {
landingPost(images.root)
}
})
fitText.fitAll('fitThis')
}, 500)
window.onresize = function() {
setTimeout(function() {
fitText.fitAll('fitThis')
}, 100)
}
},
list: [],
view: function() {
return m('.swiper-container', [
m('.swiper-wrapper', images.list != [] ? [
images.list.map(function(item) {
return m('.swiper-slide.fitThis', {
"data-swiper-autoplay": item.delay,
style: "text-align: center; word-wrap: break-word;background-color:" + item.background + "; color:" + item.foreground + ";"
}, m.trust(marked(item.content)))
})
] : m('.swiper-slide.fitty', {
style: "background-color: #F0F0F0;color: #FFF;padding: 15vh 0;"
}, m.trust(marked("*Tidak ada pengumuman*"))))
])
}
}
module.exports = images