First version.

This commit is contained in:
rulingcom 2023-07-17 03:04:42 +00:00
commit 3f7807d3e1
283 changed files with 11035 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
assets/images/ar1.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 B

BIN
assets/images/b02.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 727 B

BIN
assets/images/b03.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 776 B

BIN
assets/images/design_thumb.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 635 KiB

BIN
assets/images/dt.gif Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 B

BIN
assets/images/logo_s.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
assets/images/main_bg.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
assets/images/menu_bg.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 233 B

BIN
assets/images/ob.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 B

BIN
assets/images/page_bg.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 B

BIN
assets/images/rlogo.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 943 B

BIN
assets/images/site-logo.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
assets/images/tab_bg.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

BIN
assets/images/ydulogo.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

411
assets/javascripts/app.js Executable file
View File

@ -0,0 +1,411 @@
;(function($, win, undefined) {
'use strict';
$(document).ready(function(){
$("#add img").load(function(){
var add =$("#add img").height();
console.log(add);
$("#ad2").css({height:add});
})
})
function init() {
var doc = document;
var lang = doc.documentElement.lang;
var pageModule = doc.body.getAttribute('data-module');
var resizeTimer = -1;
var orbit = {
helpers: {
// Cross-browser class manipulation
addClass: function(el, className) {
if (el.classList) {
el.classList.add(className);
} else {
el.className += ' ' + className;
}
},
hasClass: function(el, cls) {
return (' ' + el.className + ' ').indexOf(' ' + cls + ' ') > -1;
},
// hide empty elements, not actually "remove"
removeEmpty: function(els, parent) {
var $els = $(els);
$.each($els, function(i, val) {
if ($els.eq(i).text().trim() === '') {
// check if there's parent el
if (typeof parent === 'string') {
$els
.closest($(parent))
.addClass('hide');
} else {
$els.eq(i).addClass('hide');
}
}
});
},
// system wide truncation utility
truncateText: function(els, maxLen) {
var els = doc.querySelectorAll(els);
var newTitle = '';
var i = -1;
var elsLen = els.length;
for (i = 0; i < elsLen; i++) {
if (els[i].firstChild !== null) {
if (els[i].firstChild.length > maxLen) {
newTitle = els[i].firstChild.textContent;
els[i].textContent = newTitle.substring(0, maxLen) + '...';
}
}
}
},
},
plugins: {
// RWD image resize script
bullEye: function() {
$('.bullseye').bullseye({
fadeEffect: false
});
}
},
nav: {
// Add class name to the menu item when its child items are more than 8 items
addMegaDropdownClass: function(els, len, className) {
var els = doc.querySelectorAll(els);
var elsLen = els.length;
var i = -1;
if (elsLen > 1) {
for (i = 0; i < elsLen; i++) {
if (els[i].children.length > len) {
this.helpers.addClass(els[i].parentNode, className || 'mega-dropdown');
}
}
}
},
// set up mobile dropdown
setDropdown: function() {
var $caret1 = $('<i class="dropdown-toggle-icon level-1 fa fa-chevron-down"></i>');
var $caret2 = $('<i class="dropdown-toggle-icon level-2 fa fa-chevron-down"></i>');
var $li = null;
var $this = null;
var cls = 'active';
// add class and caret on element that has dropdown
$('.nav-level-1')
.parent('li')
.addClass('has-dropdown level-1');
// check if the DOM exists
if ($('.has-dropdown.level-1 > .dropdown-toggle-icon').length < 1) {
$caret1.appendTo('.has-dropdown.level-1');
$('.nav-level-2')
.parent('li')
.addClass('has-dropdown level-2');
$caret2.appendTo('.has-dropdown.level-2');
}
// same click event for first and second level dropdown
$('.dropdown-toggle-icon.level-1, .dropdown-toggle-icon.level-2').on('click', function() {
$this = $(this);
$li = $this.parent('li');
// toggle els class
if ($li.hasClass(cls)) {
$li.removeClass(cls);
} else {
$li.siblings('li').removeClass(cls);
$li.addClass(cls);
}
});
},
// remove mobile dropdown
removeDropdown: function() {
$('.dropdown-toggle-icon').remove();
}
},
// Modules
announcement: {
// Print page
printPage: function(el) {
var $el = $(el);
$el.on('click', function(e) {
e.preventDefault();
window.print();
});
if (lang === 'en') {
$el
.find('.print-txt')
.text('Print this page');
}
}
},
member: {
// equal height for member layout
equalHeight: function() {
var bigbrother = -1;
$('.i-member-item').each(function() {
bigbrother = bigbrother > $('.i-member-item').height() ? bigbrother : $('.i-member-item').height();
});
$('.i-member-item').each(function() {
$('.i-member-item').height(bigbrother);
});
},
// Remove table row, list item if it only has sigle title or value not in pair
removeEmptyRow: function() {
// Remove index page empty item
$('.i-member-profile-item .i-member-value').each(function() {
if ($(this).text().trim() === '' || $(this).text().trim() === ':') {
$(this).parent().addClass('hide');
}
});
// Remove empty table cell on show page
$('.show-member .member-data th, .show-member .member-data td').each(function() {
if ($(this).text().trim() === '') {
$(this).parent('tr').addClass('hide');
}
});
},
},
archives: {
// remove empty title
removeEmptyTitle: function(el) {
var $el = $(el);
var $els = $el.children();
$.each($els, function(i, val) {
if ($els.eq(i).text().trim() === '') {
$els.eq(i).addClass('hide');
}
});
$.each($el, function(i, val) {
if ($el.eq(i).children('.hide').length >= 2) {
$el.eq(i).addClass('hide');
}
});
},
// enable Bootstrap panel to have more than one set
extendPanel: function() {
// check if there are panel in this page
var len = $('.i-archive .panel-title').length;
var i = -1;
if (len > 0) {
// add number after collpase id and href
for (i = 0; i < len; i++) {
$('.panel-title:eq(' + i + ') .collapsed').attr('href', '#collapse' + i);
$('.panel-collapse:eq(' + i + ')').attr('id', 'collapse' + i);
}
}
}
},
// Add link and cursor class name on element that has data-link attribute
//addLinkOnADBanner: function(els) {
//$.each(els, function() {
// if ($(this).data('link') !== '' && !$(this).hasClass('youtube')) {
// $(this).on('click', function() {
// var target = $(this).data('target'),
// link = $(this).data('link');
// if (target === '_blank') {
// window.open(link, target);
// } else {
// window.location.href = link;
// }
// }).addClass('cursor');
// }
//});
//},
// Sitemenu dropdown
sitemenuDropdown: function(els) {
var els = doc.querySelectorAll('.sitemenu-list.level-2');
var len = els.length;
var i = -1;
var caret = null;
for (i = 0; i < len; i++) {
if (els[i].children.length) {
caret = doc.createElement('span');
caret.className = 'sitemenu-dropdown-toggle fa fa-caret-down';
caret.setAttribute('data-toggle', 'dropdown');
els[i].parentNode.insertBefore(caret, els[i]);
this.helpers.addClass(els[i], 'dropdown-menu');
}
}
},
// Go back top button
goBackTop: function(txt, speed) {
var top = document.createElement('div');
top.className = 'go-back-top no-print';
top.textContent = txt;
doc.body.appendChild(top);
$(window).scroll(function() {
if ($(this).scrollTop() !== 0) {
$('.go-back-top').fadeIn();
} else {
$('.go-back-top').fadeOut();
}
});
$('.go-back-top').click(function() {
$('body, html').animate({
scrollTop: 0
}, speed);
return false;
});
}
};
// expose ORBITFRONT to gobal scope
win.ORBITFRONT = orbit;
// Specific functions that will be running on each page
switch (pageModule) {
case 'home':
break;
case 'announcement':
orbit.announcement.printPage('.print-button');
break;
case 'member':
orbit.member.removeEmptyRow();
break;
case 'archive':
orbit.archives.removeEmptyTitle('.i-archive__category-item');
orbit.archives.extendPanel();
break;
case 'gallery':
orbit.helpers.truncateText('.show-description', 15);
break;
default:
break;
}
// Functions that will be running on every page
orbit.sitemenuDropdown();
orbit.goBackTop('top', 800);
orbit.plugins.bullEye();
if ($(window).width() < 768) {
orbit.nav.setDropdown();
}
// Responsive specific
$(window).resize(function() {
if ($(window).width() < 768) {
clearTimeout(resizeTimer);
resizeTimer = setTimeout(orbit.nav.setDropdown, 500);
} else {
resizeTimer = setTimeout(orbit.nav.removeDropdown, 500);
}
});
}
$(document).ready(function() {
init();
if ($('.sitemenu-wrap li').length === 0) {
$('#sitemenu').css({'display':'none'});
}
});
$(document).ready(function() {
var $sliderHeight = $('.slider').height();
var $liCount = $('.w-annc.widget-announcement-3 li').length;
$('.w-annc.widget-announcement-3 ul').height( $sliderHeight * $liCount );
$('.w-annc.widget-announcement-3 li').height( $sliderHeight );
$('.w-annc.widget-announcement-2 li').click(function(){
var liIndex = $(this).index();
$('.w-annc.widget-announcement-3 ul').stop(true,false).animate({top:$sliderHeight*liIndex*-1});
})
})
// Run the init function when DOM is ready
$(document).ready(function() {
init();
});
$(document).ready(function(){
$('.widget-link.widget1').eq(0).addClass('active');
$('.w-annc.widget-announcement-11').eq(0).addClass('active');
$('#tab li').eq(0).addClass('active');
$('.w-annc.widget-announcement-11').eq(0).animate({opacity:'1'})
$('.widget-link.widget1').eq(0).animate({'opacity':'1','top':'10px'}).animate({'top':'0'},"fast");
var list = $('.w-annc.widget-announcement-11.active li')
for(var i=0;i<list.length;i++)
{if(list.eq(i).next())
{list.eq(0).animate({left:'0'},1100);
list.eq(i).next().delay(200*i).animate({left:'0'},1100); }}
$('#tab li').click(function(){
var index = $(this).index();
$('#tab li').eq(index).addClass('active').siblings().removeClass('active');
$('.widget-link.widget1').eq(index).addClass('active').siblings().removeClass('active');
$('.widget-link.widget1').eq(index).animate({'opacity':'1','top':'10px'}).animate({'top':'0'},"fast").siblings().css({'opacity':'','top':''});
$('.w-annc.widget-announcement-11').eq(index).addClass('active').siblings().removeClass('active');
$('.w-annc.widget-announcement-11').eq(index).animate({opacity:'1'}).siblings().css({opacity:''});
$('.w-annc.widget-announcement-11 li').css({left:''});
var list = $('.w-annc.widget-announcement-11.active li')
for(var i=0;i<list.length;i++)
{if(list.eq(i).next())
{
list.eq(0).animate({left:'0'},1100);
list.eq(i).next().delay(200*i).animate({left:'0'},1100); }}
$('.widget-link.widget1').eq(index).animate({opacity:'1'}).siblings().css({opacity:''});
})
})
$(document).ready(function(){
var cHeight =$("#slide").height();
var icHeight=$('#pics').height();
if(cHeight != icHeight)
{ $('#slide').css({height:icHeight});}
})
}(jQuery, window));

8
assets/javascripts/plugin/html5shiv.js vendored Executable file
View File

@ -0,0 +1,8 @@
/*
HTML5 Shiv v3.7.0 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
*/
(function(l,f){function m(){var a=e.elements;return"string"==typeof a?a.split(" "):a}function i(a){var b=n[a[o]];b||(b={},h++,a[o]=h,n[h]=b);return b}function p(a,b,c){b||(b=f);if(g)return b.createElement(a);c||(c=i(b));b=c.cache[a]?c.cache[a].cloneNode():r.test(a)?(c.cache[a]=c.createElem(a)).cloneNode():c.createElem(a);return b.canHaveChildren&&!s.test(a)?c.frag.appendChild(b):b}function t(a,b){if(!b.cache)b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag();
a.createElement=function(c){return!e.shivMethods?b.createElem(c):p(c,a,b)};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/[\w\-]+/g,function(a){b.createElem(a);b.frag.createElement(a);return'c("'+a+'")'})+");return n}")(e,b.frag)}function q(a){a||(a=f);var b=i(a);if(e.shivCSS&&!j&&!b.hasCSS){var c,d=a;c=d.createElement("p");d=d.getElementsByTagName("head")[0]||d.documentElement;c.innerHTML="x<style>article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}</style>";
c=d.insertBefore(c.lastChild,d.firstChild);b.hasCSS=!!c}g||t(a,b);return a}var k=l.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,r=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,j,o="_html5shiv",h=0,n={},g;(function(){try{var a=f.createElement("a");a.innerHTML="<xyz></xyz>";j="hidden"in a;var b;if(!(b=1==a.childNodes.length)){f.createElement("a");var c=f.createDocumentFragment();b="undefined"==typeof c.cloneNode||
"undefined"==typeof c.createDocumentFragment||"undefined"==typeof c.createElement}g=b}catch(d){g=j=!0}})();var e={elements:k.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:"3.7.0",shivCSS:!1!==k.shivCSS,supportsUnknownElements:g,shivMethods:!1!==k.shivMethods,type:"default",shivDocument:q,createElement:p,createDocumentFragment:function(a,b){a||(a=f);
if(g)return a.createDocumentFragment();for(var b=b||i(a),c=b.frag.cloneNode(),d=0,e=m(),h=e.length;d<h;d++)c.createElement(e[d]);return c}};l.html5=e;q(f)})(this,document);

View File

@ -0,0 +1 @@
!function($){"use strict";var t={fadeEffect:!0,effectTime:.5},i=$(window),e=function(t,i){var e=document.createElement("img"),s;t.data("bullseyeImage")?(t.html('<img src="'+t.data("bullseyeImage")+'">'),s=t.data("bullseyeImage")):(s=t.find("img").first().attr("src"),t.data("bullseyeImage",s)),i.fadeEffect&&t.find("img").first().css({opacity:0}),e.src=s,e.onload=function(){n(t,i)}},n=function(t,i){var e=t.find("img").first(),n={position:"relative",overflow:"hidden"},o={position:"absolute",top:0,right:0,bottom:0,left:0,margin:"auto",width:"100%",height:"auto"},a={start:{opacity:1,"-webkit-transition":"opacity "+i.effectTime+"s ease-in-out","-moz-transition":"opacity "+i.effectTime+"s ease-in-out","-o-transition":"opacity "+i.effectTime+"s ease-in-out",transition:"opacity "+i.effectTime+"s ease-in-out"},end:{opacity:"","-webkit-transition":"","-moz-transition":"","-o-transition":"",transition:""}};t.css(n),e.css(o),s(t),i.fadeEffect&&e.css(a.start).on("transitionend",function(){$(this).css(a.end)})},s=function(t){var i=t.find("img").first(),e=t.innerHeight(),n,s;n=i.height(),e>n?(s=e/n,i.css({"-webkit-transform":"scale("+s+")","-moz-transform":"scale("+s+")","-o-transform":"scale("+s+")",transform:"scale("+s+")"})):i.css({"-webkit-transform":"","-moz-transform":"","-o-transform":"",transform:""})},o=function(t,n){e(t,n),i.on("resize",function(){s(t)})};$.fn.bullseye=function(i){var e=$.extend({},t,i);return this.each(function(){var t=$(this);o(t,e)})}}(window.jQuery);

File diff suppressed because one or more lines are too long

8
assets/javascripts/plugin/response.min.js vendored Executable file

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,959 @@
//
// Mixins
// --------------------------------------------------
// Utilities
// -------------------------
// Clearfix
// Source: http://nicolasgallagher.com/micro-clearfix-hack/
//
// For modern browsers
// 1. The space content is one way to avoid an Opera bug when the
// contenteditable attribute is included anywhere else in the document.
// Otherwise it causes space to appear at the top and bottom of elements
// that are clearfixed.
// 2. The use of `table` rather than `block` is only necessary if using
// `:before` to contain the top-margins of child elements.
@mixin clearfix() {
&:before,
&:after {
content: " "; // 1
display: table; // 2
}
&:after {
clear: both;
}
}
// WebKit-style focus
@mixin tab-focus() {
// Default
outline: thin dotted;
// WebKit
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
// Center-align a block level element
@mixin center-block() {
display: block;
margin-left: auto;
margin-right: auto;
}
// Sizing shortcuts
@mixin size($width, $height) {
width: $width;
height: $height;
}
@mixin square($size) {
@include size($size, $size);
}
// Placeholder text
@mixin placeholder($color: $input-color-placeholder) {
&::-moz-placeholder { color: $color; // Firefox
opacity: 1; } // See https://github.com/twbs/bootstrap/pull/11526
&:-ms-input-placeholder { color: $color; } // Internet Explorer 10+
&::-webkit-input-placeholder { color: $color; } // Safari and Chrome
}
// Text overflow
// Requires inline-block or block for proper styling
@mixin text-overflow() {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
// CSS image replacement
//
// Heads up! v3 launched with with only `.hide-text()`, but per our pattern for
// mixins being reused as classes with the same name, this doesn't hold up. As
// of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`. Note
// that we cannot chain the mixins together in Less, so they are repeated.
//
// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
// Deprecated as of v3.0.1 (will be removed in v4)
@mixin hide-text() {
font: #{0/0} a;
color: transparent;
text-shadow: none;
background-color: transparent;
border: 0;
}
// New mixin to use as of v3.0.1
@mixin text-hide() {
@include hide-text();
}
// CSS3 PROPERTIES
// --------------------------------------------------
// Single side border-radius
@mixin border-top-radius($radius) {
border-top-right-radius: $radius;
border-top-left-radius: $radius;
}
@mixin border-right-radius($radius) {
border-bottom-right-radius: $radius;
border-top-right-radius: $radius;
}
@mixin border-bottom-radius($radius) {
border-bottom-right-radius: $radius;
border-bottom-left-radius: $radius;
}
@mixin border-left-radius($radius) {
border-bottom-left-radius: $radius;
border-top-left-radius: $radius;
}
// Drop shadows
//
// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's
// supported browsers that have box shadow capabilities now support the
// standard `box-shadow` property.
@mixin box-shadow($shadow...) {
-webkit-box-shadow: $shadow; // iOS <4.3 & Android <4.1
box-shadow: $shadow;
}
// Transitions
@mixin transition($transition...) {
-webkit-transition: $transition;
transition: $transition;
}
@mixin transition-property($transition-property...) {
-webkit-transition-property: $transition-property;
transition-property: $transition-property;
}
@mixin transition-delay($transition-delay) {
-webkit-transition-delay: $transition-delay;
transition-delay: $transition-delay;
}
@mixin transition-duration($transition-duration...) {
-webkit-transition-duration: $transition-duration;
transition-duration: $transition-duration;
}
@mixin transition-transform($transition...) {
-webkit-transition: -webkit-transform $transition;
-moz-transition: -moz-transform $transition;
-o-transition: -o-transform $transition;
transition: transform $transition;
}
// Transformations
@mixin rotate($degrees) {
-webkit-transform: rotate($degrees);
-ms-transform: rotate($degrees); // IE9 only
transform: rotate($degrees);
}
@mixin scale($scale-args...) {
-webkit-transform: scale($scale-args);
-ms-transform: scale($scale-args); // IE9 only
transform: scale($scale-args);
}
@mixin translate($x, $y) {
-webkit-transform: translate($x, $y);
-ms-transform: translate($x, $y); // IE9 only
transform: translate($x, $y);
}
@mixin skew($x, $y) {
-webkit-transform: skew($x, $y);
-ms-transform: skewX($x) skewY($y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+
transform: skew($x, $y);
}
@mixin translate3d($x, $y, $z) {
-webkit-transform: translate3d($x, $y, $z);
transform: translate3d($x, $y, $z);
}
@mixin rotateX($degrees) {
-webkit-transform: rotateX($degrees);
-ms-transform: rotateX($degrees); // IE9 only
transform: rotateX($degrees);
}
@mixin rotateY($degrees) {
-webkit-transform: rotateY($degrees);
-ms-transform: rotateY($degrees); // IE9 only
transform: rotateY($degrees);
}
@mixin perspective($perspective) {
-webkit-perspective: $perspective;
-moz-perspective: $perspective;
perspective: $perspective;
}
@mixin perspective-origin($perspective) {
-webkit-perspective-origin: $perspective;
-moz-perspective-origin: $perspective;
perspective-origin: $perspective;
}
@mixin transform-origin($origin) {
-webkit-transform-origin: $origin;
-moz-transform-origin: $origin;
-ms-transform-origin: $origin; // IE9 only
transform-origin: $origin;
}
// Animations
@mixin animation($animation) {
-webkit-animation: $animation;
animation: $animation;
}
@mixin animation-name($name) {
-webkit-animation-name: $name;
animation-name: $name;
}
@mixin animation-duration($duration) {
-webkit-animation-duration: $duration;
animation-duration: $duration;
}
@mixin animation-timing-function($timing-function) {
-webkit-animation-timing-function: $timing-function;
animation-timing-function: $timing-function;
}
@mixin animation-delay($delay) {
-webkit-animation-delay: $delay;
animation-delay: $delay;
}
@mixin animation-iteration-count($iteration-count) {
-webkit-animation-iteration-count: $iteration-count;
animation-iteration-count: $iteration-count;
}
@mixin animation-direction($direction) {
-webkit-animation-direction: $direction;
animation-direction: $direction;
}
// Backface visibility
// Prevent browsers from flickering when using CSS 3D transforms.
// Default value is `visible`, but can be changed to `hidden`
@mixin backface-visibility($visibility){
-webkit-backface-visibility: $visibility;
-moz-backface-visibility: $visibility;
backface-visibility: $visibility;
}
// Box sizing
@mixin box-sizing($boxmodel) {
-webkit-box-sizing: $boxmodel;
-moz-box-sizing: $boxmodel;
box-sizing: $boxmodel;
}
// User select
// For selecting text on the page
@mixin user-select($select) {
-webkit-user-select: $select;
-moz-user-select: $select;
-ms-user-select: $select; // IE10+
user-select: $select;
}
// Resize anything
@mixin resizable($direction) {
resize: $direction; // Options: horizontal, vertical, both
overflow: auto; // Safari fix
}
// CSS3 Content Columns
@mixin content-columns($column-count, $column-gap: $grid-gutter-width) {
-webkit-column-count: $column-count;
-moz-column-count: $column-count;
column-count: $column-count;
-webkit-column-gap: $column-gap;
-moz-column-gap: $column-gap;
column-gap: $column-gap;
}
// Optional hyphenation
@mixin hyphens($mode: auto) {
word-wrap: break-word;
-webkit-hyphens: $mode;
-moz-hyphens: $mode;
-ms-hyphens: $mode; // IE10+
-o-hyphens: $mode;
hyphens: $mode;
}
// Opacity
@mixin opacity($opacity) {
opacity: $opacity;
// IE8 filter
$opacity-ie: ($opacity * 100);
filter: #{alpha(opacity=$opacity-ie)};
}
// GRADIENTS
// --------------------------------------------------
// Horizontal gradient, from left to right
//
// Creates two color stops, start and end, by specifying a color and position for each color stop.
// Color stops are not available in IE9 and below.
@mixin gradient-horizontal($start-color: #555, $end-color: #333, $start-percent: 0%, $end-percent: 100%) {
background-image: -webkit-linear-gradient(left, color-stop($start-color $start-percent), color-stop($end-color $end-percent)); // Safari 5.1-6, Chrome 10+
background-image: linear-gradient(to right, $start-color $start-percent, $end-color $end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
-pie-background: linear-gradient(to right, $start-color $start-percent, $end-color $end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
behavior: url("/assets/ie_support/PIE2/PIE.htc");
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}', GradientType=1); // IE9 and down
}
// Vertical gradient, from top to bottom
//
// Creates two color stops, start and end, by specifying a color and position for each color stop.
// Color stops are not available in IE9 and below.
@mixin gradient-vertical($start-color: #555, $end-color: #333, $start-percent: 0%, $end-percent: 100%) {
background-image: -webkit-linear-gradient(top, $start-color $start-percent, $end-color $end-percent); // Safari 5.1-6, Chrome 10+
background-image: linear-gradient(to bottom, $start-color $start-percent, $end-color $end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
-pie-background: linear-gradient(to bottom, $start-color $start-percent, $end-color $end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
behavior: url("/assets/ie_support/PIE2/PIE.htc");
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}', GradientType=0); // IE9 and down
}
@mixin gradient-directional($start-color: #555, $end-color: #333, $deg: 45deg) {
background-repeat: repeat-x;
background-image: -webkit-linear-gradient($deg, $start-color, $end-color); // Safari 5.1-6, Chrome 10+
background-image: linear-gradient($deg, $start-color, $end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
-pie-background: linear-gradient($deg, $start-color, $end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+
behavior: url("/assets/ie_support/PIE2/PIE.htc");
}
@mixin gradient-horizontal-three-colors($start-color: #00b3ee, $mid-color: #7a43b6, $color-stop: 50%, $end-color: #c3325f) {
background-image: -webkit-linear-gradient(left, $start-color, $mid-color $color-stop, $end-color);
background-image: linear-gradient(to right, $start-color, $mid-color $color-stop, $end-color);
-pie-background: linear-gradient(to right, $start-color, $mid-color $color-stop, $end-color);
behavior: url("/assets/ie_support/PIE2/PIE.htc");
background-repeat: no-repeat;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}', GradientType=1); // IE9 and down, gets no color-stop at all for proper fallback
}
@mixin gradient-vertical-three-colors($start-color: #00b3ee, $mid-color: #7a43b6, $color-stop: 50%, $end-color: #c3325f) {
background-image: -webkit-linear-gradient($start-color, $mid-color $color-stop, $end-color);
background-image: linear-gradient($start-color, $mid-color $color-stop, $end-color);
-pie-background: linear-gradient($start-color, $mid-color $color-stop, $end-color);
behavior: url("/assets/ie_support/PIE2/PIE.htc");
background-repeat: no-repeat;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($start-color)}', endColorstr='#{ie-hex-str($end-color)}', GradientType=0); // IE9 and down, gets no color-stop at all for proper fallback
}
@mixin gradient-radial($inner-color: #555, $outer-color: #333) {
background-image: -webkit-radial-gradient(circle, $inner-color, $outer-color);
background-image: radial-gradient(circle, $inner-color, $outer-color);
background-repeat: no-repeat;
}
@mixin gradient-striped($color: rgba(255,255,255,.15), $angle: 45deg) {
background-image: -webkit-linear-gradient($angle, $color 25%, transparent 25%, transparent 50%, $color 50%, $color 75%, transparent 75%, transparent);
background-image: linear-gradient($angle, $color 25%, transparent 25%, transparent 50%, $color 50%, $color 75%, transparent 75%, transparent);
-pie-background: linear-gradient($angle, $color 25%, transparent 25%, transparent 50%, $color 50%, $color 75%, transparent 75%, transparent);
behavior: url("/assets/ie_support/PIE2/PIE.htc");
}
// Reset filters for IE
//
// When you need to remove a gradient background, do not forget to use this to reset
// the IE filter for IE9 and below.
@mixin reset-filter() {
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
// Retina images
//
// Short retina mixin for setting background-image and -size
@mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
background-image: url(if($bootstrap-sass-asset-helper, twbs-image-path("#{$file-1x}"), "#{$file-1x}"));
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and ( min--moz-device-pixel-ratio: 2),
only screen and ( -o-min-device-pixel-ratio: 2/1),
only screen and ( min-device-pixel-ratio: 2),
only screen and ( min-resolution: 192dpi),
only screen and ( min-resolution: 2dppx) {
background-image: url(if($bootstrap-sass-asset-helper, twbs-image-path("#{$file-2x}"), "#{$file-2x}"));
background-size: $width-1x $height-1x;
}
}
// Responsive image
//
// Keep images from scaling beyond the width of their parents.
@mixin img-responsive($display: block) {
display: $display;
max-width: 100%; // Part 1: Set a maximum relative to the parent
height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
}
// COMPONENT MIXINS
// --------------------------------------------------
// Horizontal dividers
// -------------------------
// Dividers (basically an hr) within dropdowns and nav lists
@mixin nav-divider($color: #e5e5e5) {
height: 1px;
margin: (($line-height-computed / 2) - 1) 0;
overflow: hidden;
background-color: $color;
}
// Panels
// -------------------------
@mixin panel-variant($border, $heading-text-color, $heading-bg-color, $heading-border) {
border-color: $border;
& > .panel-heading {
color: $heading-text-color;
background-color: $heading-bg-color;
border-color: $heading-border;
+ .panel-collapse .panel-body {
border-top-color: $border;
}
}
& > .panel-footer {
+ .panel-collapse .panel-body {
border-bottom-color: $border;
}
}
}
// Alerts
// -------------------------
@mixin alert-variant($background, $border, $text-color) {
background-color: $background;
border-color: $border;
color: $text-color;
hr {
border-top-color: darken($border, 5%);
}
.alert-link {
color: darken($text-color, 10%);
}
}
// Tables
// -------------------------
@mixin table-row-variant($state, $background) {
// Exact selectors below required to override `.table-striped` and prevent
// inheritance to nested tables.
.table > thead > tr,
.table > tbody > tr,
.table > tfoot > tr {
> td.#{$state},
> th.#{$state},
&.#{$state} > td,
&.#{$state} > th {
background-color: $background;
}
}
// Hover states for `.table-hover`
// Note: this is not available for cells or rows within `thead` or `tfoot`.
.table-hover > tbody > tr {
> td.#{$state}:hover,
> th.#{$state}:hover,
&.#{$state}:hover > td,
&.#{$state}:hover > th {
background-color: darken($background, 5%);
}
}
}
// List Groups
// -------------------------
@mixin list-group-item-variant($state, $background, $color) {
.list-group-item-#{$state} {
color: $color;
background-color: $background;
// [converter] extracted a& to a.list-group-item-#{$state}
}
a.list-group-item-#{$state} {
color: $color;
.list-group-item-heading { color: inherit; }
&:hover,
&:focus {
color: $color;
background-color: darken($background, 5%);
}
&.active,
&.active:hover,
&.active:focus {
color: #fff;
background-color: $color;
border-color: $color;
}
}
}
// Button variants
// -------------------------
// Easily pump out default styles, as well as :hover, :focus, :active,
// and disabled options for all buttons
@mixin button-variant($color, $background, $border) {
color: $color;
background-color: $background;
border-color: $border;
&:hover,
&:focus,
&:active,
&.active {
color: $color;
background-color: darken($background, 8%);
border-color: darken($border, 12%);
}
.open & { &.dropdown-toggle {
color: $color;
background-color: darken($background, 8%);
border-color: darken($border, 12%);
} }
&:active,
&.active {
background-image: none;
}
.open & { &.dropdown-toggle {
background-image: none;
} }
&.disabled,
&[disabled],
fieldset[disabled] & {
&,
&:hover,
&:focus,
&:active,
&.active {
background-color: $background;
border-color: $border;
}
}
.badge {
color: $background;
background-color: $color;
}
}
// Button sizes
// -------------------------
@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
padding: $padding-vertical $padding-horizontal;
font-size: $font-size;
line-height: $line-height;
border-radius: $border-radius;
}
// Pagination
// -------------------------
@mixin pagination-size($padding-vertical, $padding-horizontal, $font-size, $border-radius) {
> li {
> a,
> span {
padding: $padding-vertical $padding-horizontal;
font-size: $font-size;
}
&:first-child {
> a,
> span {
@include border-left-radius($border-radius);
}
}
&:last-child {
> a,
> span {
@include border-right-radius($border-radius);
}
}
}
}
// Labels
// -------------------------
@mixin label-variant($color) {
background-color: $color;
&[href] {
&:hover,
&:focus {
background-color: darken($color, 10%);
}
}
}
// Contextual backgrounds
// -------------------------
// [converter] $parent hack
@mixin bg-variant($parent, $color) {
#{$parent} {
background-color: $color;
}
a#{$parent}:hover {
background-color: darken($color, 10%);
}
}
// Typography
// -------------------------
// [converter] $parent hack
@mixin text-emphasis-variant($parent, $color) {
#{$parent} {
color: $color;
}
a#{$parent}:hover {
color: darken($color, 10%);
}
}
// Navbar vertical align
// -------------------------
// Vertically center elements in the navbar.
// Example: an element has a height of 30px, so write out `.navbar-vertical-align(30px);` to calculate the appropriate top margin.
@mixin navbar-vertical-align($element-height) {
margin-top: (($navbar-height - $element-height) / 2);
margin-bottom: (($navbar-height - $element-height) / 2);
}
// Progress bars
// -------------------------
@mixin progress-bar-variant($color) {
background-color: $color;
.progress-striped & {
@include gradient-striped();
}
}
// Responsive utilities
// -------------------------
// More easily include all the states for responsive-utilities.less.
// [converter] $parent hack
@mixin responsive-visibility($parent) {
#{$parent} {
display: block !important;
}
table#{$parent} { display: table; }
tr#{$parent} { display: table-row !important; }
th#{$parent},
td#{$parent} { display: table-cell !important; }
}
// [converter] $parent hack
@mixin responsive-invisibility($parent) {
#{$parent} {
display: none !important;
}
}
// Grid System
// -----------
// Centered container element
@mixin container-fixed() {
margin-right: auto;
margin-left: auto;
padding-left: ($grid-gutter-width / 2);
padding-right: ($grid-gutter-width / 2);
@include clearfix();
}
// Creates a wrapper for a series of columns
@mixin make-row($gutter: $grid-gutter-width) {
margin-left: ($gutter / -2);
margin-right: ($gutter / -2);
@include clearfix();
}
// Generate the extra small columns
@mixin make-xs-column($columns, $gutter: $grid-gutter-width) {
position: relative;
float: left;
width: percentage(($columns / $grid-columns));
min-height: 1px;
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
}
@mixin make-xs-column-offset($columns) {
@media (min-width: $screen-xs-min) {
margin-left: percentage(($columns / $grid-columns));
}
}
@mixin make-xs-column-push($columns) {
@media (min-width: $screen-xs-min) {
left: percentage(($columns / $grid-columns));
}
}
@mixin make-xs-column-pull($columns) {
@media (min-width: $screen-xs-min) {
right: percentage(($columns / $grid-columns));
}
}
// Generate the small columns
@mixin make-sm-column($columns, $gutter: $grid-gutter-width) {
position: relative;
min-height: 1px;
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
@media (min-width: $screen-sm-min) {
float: left;
width: percentage(($columns / $grid-columns));
}
}
@mixin make-sm-column-offset($columns) {
@media (min-width: $screen-sm-min) {
margin-left: percentage(($columns / $grid-columns));
}
}
@mixin make-sm-column-push($columns) {
@media (min-width: $screen-sm-min) {
left: percentage(($columns / $grid-columns));
}
}
@mixin make-sm-column-pull($columns) {
@media (min-width: $screen-sm-min) {
right: percentage(($columns / $grid-columns));
}
}
// Generate the medium columns
@mixin make-md-column($columns, $gutter: $grid-gutter-width) {
position: relative;
min-height: 1px;
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
@media (min-width: $screen-md-min) {
float: left;
width: percentage(($columns / $grid-columns));
}
}
@mixin make-md-column-offset($columns) {
@media (min-width: $screen-md-min) {
margin-left: percentage(($columns / $grid-columns));
}
}
@mixin make-md-column-push($columns) {
@media (min-width: $screen-md-min) {
left: percentage(($columns / $grid-columns));
}
}
@mixin make-md-column-pull($columns) {
@media (min-width: $screen-md-min) {
right: percentage(($columns / $grid-columns));
}
}
// Generate the large columns
@mixin make-lg-column($columns, $gutter: $grid-gutter-width) {
position: relative;
min-height: 1px;
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
@media (min-width: $screen-lg-min) {
float: left;
width: percentage(($columns / $grid-columns));
}
}
@mixin make-lg-column-offset($columns) {
@media (min-width: $screen-lg-min) {
margin-left: percentage(($columns / $grid-columns));
}
}
@mixin make-lg-column-push($columns) {
@media (min-width: $screen-lg-min) {
left: percentage(($columns / $grid-columns));
}
}
@mixin make-lg-column-pull($columns) {
@media (min-width: $screen-lg-min) {
right: percentage(($columns / $grid-columns));
}
}
// Framework grid generation
//
// Used only by Bootstrap to generate the correct number of grid classes given
// any value of `$grid-columns`.
// [converter] This is defined recursively in LESS, but Sass supports real loops
@mixin make-grid-columns() {
$list: '';
$i: 1;
$list: ".col-xs-#{$i}, .col-sm-#{$i}, .col-md-#{$i}, .col-lg-#{$i}";
@for $i from (1 + 1) through $grid-columns {
$list: "#{$list}, .col-xs-#{$i}, .col-sm-#{$i}, .col-md-#{$i}, .col-lg-#{$i}";
}
#{$list} {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: ($grid-gutter-width / 2);
padding-right: ($grid-gutter-width / 2);
}
}
// [converter] This is defined recursively in LESS, but Sass supports real loops
@mixin float-grid-columns($class) {
$list: '';
$i: 1;
$list: ".col-#{$class}-#{$i}";
@for $i from (1 + 1) through $grid-columns {
$list: "#{$list}, .col-#{$class}-#{$i}";
}
#{$list} {
float: left;
}
}
@mixin calc-grid-column($index, $class, $type) {
@if ($type == width) and ($index > 0) {
.col-#{$class}-#{$index} {
width: percentage(($index / $grid-columns));
}
}
@if ($type == push) {
.col-#{$class}-push-#{$index} {
left: percentage(($index / $grid-columns));
}
}
@if ($type == pull) {
.col-#{$class}-pull-#{$index} {
right: percentage(($index / $grid-columns));
}
}
@if ($type == offset) {
.col-#{$class}-offset-#{$index} {
margin-left: percentage(($index / $grid-columns));
}
}
}
// [converter] This is defined recursively in LESS, but Sass supports real loops
@mixin loop-grid-columns($columns, $class, $type) {
@for $i from 0 through $columns {
@include calc-grid-column($i, $class, $type);
}
}
// Create grid for specific class
@mixin make-grid($class) {
@include float-grid-columns($class);
@include loop-grid-columns($grid-columns, $class, width);
@include loop-grid-columns($grid-columns, $class, pull);
@include loop-grid-columns($grid-columns, $class, push);
@include loop-grid-columns($grid-columns, $class, offset);
}
// Form validation states
//
// Used in forms.less to generate the form validation CSS for warnings, errors,
// and successes.
@mixin form-control-validation($text-color: #555, $border-color: #ccc, $background-color: #f5f5f5) {
// Color the label and help text
.help-block,
.control-label,
.radio,
.checkbox,
.radio-inline,
.checkbox-inline {
color: $text-color;
}
// Set the border and box shadow on specific inputs to match
.form-control {
border-color: $border-color;
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work
&:focus {
border-color: darken($border-color, 10%);
$shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten($border-color, 20%);
@include box-shadow($shadow);
}
}
// Set validation states also for addons
.input-group-addon {
color: $text-color;
border-color: $border-color;
background-color: $background-color;
}
// Optional feedback icon
.form-control-feedback {
color: $text-color;
}
}
// Form control focus state
//
// Generate a customized focus state and for any input with the specified color,
// which defaults to the `$input-focus-border` variable.
//
// We highly encourage you to not customize the default value, but instead use
// this to tweak colors on an as-needed basis. This aesthetic change is based on
// WebKit's default styles, but applicable to a wider range of browsers. Its
// usability and accessibility should be taken into account with any change.
//
// Example usage: change the default blue border and shadow to white for better
// contrast against a dark gray background.
@mixin form-control-focus($color: $input-border-focus) {
$color-rgba: rgba(red($color), green($color), blue($color), .6);
&:focus {
border-color: $color;
outline: 0;
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px $color-rgba);
}
}
// Form control sizing
//
// Relative text size, padding, and border-radii changes for form controls. For
// horizontal sizing, wrap controls in the predefined grid classes. `<select>`
// element gets special love because it's special, and that's a fact!
// [converter] $parent hack
@mixin input-size($parent, $input-height, $padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
#{$parent} {
height: $input-height;
padding: $padding-vertical $padding-horizontal;
font-size: $font-size;
line-height: $line-height;
border-radius: $border-radius;
}
select#{$parent} {
height: $input-height;
line-height: $input-height;
}
textarea#{$parent},
select[multiple]#{$parent} {
height: auto;
}
}

View File

@ -0,0 +1,833 @@
// a flag to toggle asset pipeline / compass integration
// defaults to true if twbs-font-path function is present (no function => twbs-font-path('') parsed as string == right side)
// in Sass 3.3 this can be improved with: function-exists(twbs-font-path)
$bootstrap-sass-asset-helper: (twbs-font-path("") != unquote('twbs-font-path("")')) !default;
//
// Variables
// --------------------------------------------------
//== Colors
//
//## Gray and brand colors for use across Bootstrap.
$gray-darker: lighten(#000, 13.5%) !default; // #222
$gray-dark: lighten(#000, 20%) !default; // #333
$gray: lighten(#000, 33.5%) !default; // #555
$gray-light: lighten(#000, 60%) !default; // #999
$gray-lighter: lighten(#000, 93.5%) !default; // #eee
$brand-primary: #47bab5 !default;
$brand-success: #5cb85c !default;
$brand-info: #5bc0de !default;
$brand-warning: #f0ad4e !default;
$brand-danger: #ed4c43 !default;
//== Scaffolding
//
// ## Settings for some of the most global styles.
//** Background color for `<body>`.
$body-bg: #fff !default;
//** Global text color on `<body>`.
$text-color: $gray-dark !default;
//** Global textual link color.
$link-color: $brand-primary !default;
//** Link hover color set via `darken()` function.
$link-hover-color: darken($link-color, 15%) !default;
//== Typography
//
//## Font, line-height, and color for body text, headings, and more.
$font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif !default;
$font-family-serif: Georgia, "Times New Roman", Times, serif !default;
//** Default monospace fonts for `<code>`, `<kbd>`, and `<pre>`.
$font-family-monospace: Menlo, Monaco, Consolas, "Courier New", monospace !default;
$font-family-base: $font-family-sans-serif !default;
$font-size-base: 14px !default;
$font-size-large: ceil(($font-size-base * 1.25)) !default; // ~18px
$font-size-small: ceil(($font-size-base * 0.85)) !default; // ~12px
$font-size-h1: floor(($font-size-base * 2.6)) !default; // ~36px
$font-size-h2: floor(($font-size-base * 2.15)) !default; // ~30px
$font-size-h3: ceil(($font-size-base * 1.7)) !default; // ~24px
$font-size-h4: ceil(($font-size-base * 1.25)) !default; // ~18px
$font-size-h5: $font-size-base !default;
$font-size-h6: ceil(($font-size-base * 0.85)) !default; // ~12px
//** Unit-less `line-height` for use in components like buttons.
$line-height-base: 1.428571429 !default; // 20/14
//** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.
$line-height-computed: floor(($font-size-base * $line-height-base)) !default; // ~20px
//** By default, this inherits from the `<body>`.
$headings-font-family: inherit !default;
$headings-font-weight: 500 !default;
$headings-line-height: 1.1 !default;
$headings-color: inherit !default;
//-- Iconography
//
//## Specify custom locations of the include Glyphicons icon font. Useful for those including Bootstrap via Bower.
$icon-font-path: "bootstrap/" !default;
$icon-font-name: "glyphicons-halflings-regular" !default;
$icon-font-svg-id: "glyphicons_halflingsregular" !default;
//== Components
//
//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).
$padding-base-vertical: 6px !default;
$padding-base-horizontal: 12px !default;
$padding-large-vertical: 10px !default;
$padding-large-horizontal: 16px !default;
$padding-small-vertical: 5px !default;
$padding-small-horizontal: 10px !default;
$padding-xs-vertical: 1px !default;
$padding-xs-horizontal: 5px !default;
$line-height-large: 1.33 !default;
$line-height-small: 1.5 !default;
$border-radius-base: 4px !default;
$border-radius-large: 6px !default;
$border-radius-small: 3px !default;
//** Global color for active items (e.g., navs or dropdowns).
$component-active-color: #fff !default;
//** Global background color for active items (e.g., navs or dropdowns).
$component-active-bg: $brand-primary !default;
//** Width of the `border` for generating carets that indicator dropdowns.
$caret-width-base: 4px !default;
//** Carets increase slightly in size for larger components.
$caret-width-large: 5px !default;
//== Tables
//
//## Customizes the `.table` component with basic values, each used across all table variations.
//** Padding for `<th>`s and `<td>`s.
$table-cell-padding: 8px !default;
//** Padding for cells in `.table-condensed`.
$table-condensed-cell-padding: 5px !default;
//** Default background color used for all tables.
$table-bg: transparent !default;
//** Background color used for `.table-striped`.
$table-bg-accent: #f9f9f9 !default;
//** Background color used for `.table-hover`.
$table-bg-hover: #f5f5f5 !default;
$table-bg-active: $table-bg-hover !default;
//** Border color for table and cell borders.
$table-border-color: #ddd !default;
//== Buttons
//
//## For each of Bootstrap's buttons, define text, background and border color.
$btn-font-weight: normal !default;
$btn-default-color: #333 !default;
$btn-default-bg: #fff !default;
$btn-default-border: #ccc !default;
$btn-primary-color: #fff !default;
$btn-primary-bg: $brand-primary !default;
$btn-primary-border: darken($btn-primary-bg, 5%) !default;
$btn-success-color: #fff !default;
$btn-success-bg: $brand-success !default;
$btn-success-border: darken($btn-success-bg, 5%) !default;
$btn-info-color: #fff !default;
$btn-info-bg: $brand-info !default;
$btn-info-border: darken($btn-info-bg, 5%) !default;
$btn-warning-color: #fff !default;
$btn-warning-bg: $brand-warning !default;
$btn-warning-border: darken($btn-warning-bg, 5%) !default;
$btn-danger-color: #fff !default;
$btn-danger-bg: $brand-danger !default;
$btn-danger-border: darken($btn-danger-bg, 5%) !default;
$btn-link-disabled-color: $gray-light !default;
//== Forms
//
//##
//** `<input>` background color
$input-bg: #fff !default;
//** `<input disabled>` background color
$input-bg-disabled: $gray-lighter !default;
//** Text color for `<input>`s
$input-color: $gray !default;
//** `<input>` border color
$input-border: #ccc !default;
//** `<input>` border radius
$input-border-radius: $border-radius-base !default;
//** Border color for inputs on focus
$input-border-focus: #66afe9 !default;
//** Placeholder text color
$input-color-placeholder: $gray-light !default;
//** Default `.form-control` height
$input-height-base: ($line-height-computed + ($padding-base-vertical * 2) + 2) !default;
//** Large `.form-control` height
$input-height-large: (ceil($font-size-large * $line-height-large) + ($padding-large-vertical * 2) + 2) !default;
//** Small `.form-control` height
$input-height-small: (floor($font-size-small * $line-height-small) + ($padding-small-vertical * 2) + 2) !default;
$legend-color: $gray-dark !default;
$legend-border-color: #e5e5e5 !default;
//** Background color for textual input addons
$input-group-addon-bg: $gray-lighter !default;
//** Border color for textual input addons
$input-group-addon-border-color: $input-border !default;
//== Dropdowns
//
//## Dropdown menu container and contents.
//** Background for the dropdown menu.
$dropdown-bg: #fff !default;
//** Dropdown menu `border-color`.
$dropdown-border: rgba(0,0,0,.15) !default;
//** Dropdown menu `border-color` **for IE8**.
$dropdown-fallback-border: #ccc !default;
//** Divider color for between dropdown items.
$dropdown-divider-bg: #e5e5e5 !default;
//** Dropdown link text color.
$dropdown-link-color: $gray-dark !default;
//** Hover color for dropdown links.
$dropdown-link-hover-color: darken($gray-dark, 5%) !default;
//** Hover background for dropdown links.
$dropdown-link-hover-bg: #f5f5f5 !default;
//** Active dropdown menu item text color.
$dropdown-link-active-color: $component-active-color !default;
//** Active dropdown menu item background color.
$dropdown-link-active-bg: $component-active-bg !default;
//** Disabled dropdown menu item background color.
$dropdown-link-disabled-color: $gray-light !default;
//** Text color for headers within dropdown menus.
$dropdown-header-color: $gray-light !default;
// Note: Deprecated $dropdown-caret-color as of v3.1.0
$dropdown-caret-color: #000 !default;
//-- Z-index master list
//
// Warning: Avoid customizing these values. They're used for a bird's eye view
// of components dependent on the z-axis and are designed to all work together.
//
// Note: These variables are not generated into the Customizer.
$zindex-navbar: 1000 !default;
$zindex-dropdown: 1000 !default;
$zindex-popover: 1010 !default;
$zindex-tooltip: 1030 !default;
$zindex-navbar-fixed: 1030 !default;
$zindex-modal-background: 1040 !default;
$zindex-modal: 1050 !default;
//== Media queries breakpoints
//
//## Define the breakpoints at which your layout will change, adapting to different screen sizes.
// Extra small screen / phone
// Note: Deprecated $screen-xs and $screen-phone as of v3.0.1
$screen-xs: 480px !default;
$screen-xs-min: $screen-xs !default;
$screen-phone: $screen-xs-min !default;
// Small screen / tablet
// Note: Deprecated $screen-sm and $screen-tablet as of v3.0.1
$screen-sm: 768px !default;
$screen-sm-min: $screen-sm !default;
$screen-tablet: $screen-sm-min !default;
// Medium screen / desktop
// Note: Deprecated $screen-md and $screen-desktop as of v3.0.1
$screen-md: 992px !default;
$screen-md-min: $screen-md !default;
$screen-desktop: $screen-md-min !default;
// Large screen / wide desktop
// Note: Deprecated $screen-lg and $screen-lg-desktop as of v3.0.1
$screen-lg: 1200px !default;
$screen-lg-min: $screen-lg !default;
$screen-lg-desktop: $screen-lg-min !default;
// So media queries don't overlap when required, provide a maximum
$screen-xs-max: ($screen-sm-min - 1) !default;
$screen-sm-max: ($screen-md-min - 1) !default;
$screen-md-max: ($screen-lg-min - 1) !default;
//== Grid system
//
//## Define your custom responsive grid.
//** Number of columns in the grid.
$grid-columns: 12 !default;
//** Padding between columns. Gets divided in half for the left and right.
$grid-gutter-width: 30px !default;
// Navbar collapse
//** Point at which the navbar becomes uncollapsed.
$grid-float-breakpoint: $screen-sm-min !default;
//** Point at which the navbar begins collapsing.
$grid-float-breakpoint-max: ($grid-float-breakpoint - 1) !default;
//== Container sizes
//
//## Define the maximum width of `.container` for different screen sizes.
// Small screen / tablet
$container-tablet: ((720px + $grid-gutter-width)) !default;
//** For `$screen-sm-min` and up.
$container-sm: $container-tablet !default;
// Medium screen / desktop
$container-desktop: ((940px + $grid-gutter-width)) !default;
//** For `$screen-md-min` and up.
$container-md: $container-desktop !default;
// Large screen / wide desktop
$container-large-desktop: ((1140px + $grid-gutter-width)) !default;
//** For `$screen-lg-min` and up.
$container-lg: $container-large-desktop !default;
//== Navbar
//
//##
// Basics of a navbar
$navbar-height: 50px !default;
$navbar-margin-bottom: $line-height-computed !default;
$navbar-border-radius: $border-radius-base !default;
$navbar-padding-horizontal: floor(($grid-gutter-width / 2)) !default;
$navbar-padding-vertical: (($navbar-height - $line-height-computed) / 2) !default;
$navbar-collapse-max-height: 340px !default;
$navbar-default-color: #777 !default;
$navbar-default-bg: #f8f8f8 !default;
$navbar-default-border: darken($navbar-default-bg, 6.5%) !default;
// Navbar links
$navbar-default-link-color: #777 !default;
$navbar-default-link-hover-color: #333 !default;
$navbar-default-link-hover-bg: transparent !default;
$navbar-default-link-active-color: #555 !default;
$navbar-default-link-active-bg: darken($navbar-default-bg, 6.5%) !default;
$navbar-default-link-disabled-color: #ccc !default;
$navbar-default-link-disabled-bg: transparent !default;
// Navbar brand label
$navbar-default-brand-color: $navbar-default-link-color !default;
$navbar-default-brand-hover-color: darken($navbar-default-brand-color, 10%) !default;
$navbar-default-brand-hover-bg: transparent !default;
// Navbar toggle
$navbar-default-toggle-hover-bg: #ddd !default;
$navbar-default-toggle-icon-bar-bg: #888 !default;
$navbar-default-toggle-border-color: #ddd !default;
// Inverted navbar
// Reset inverted navbar basics
$navbar-inverse-color: $gray-light !default;
$navbar-inverse-bg: #222 !default;
$navbar-inverse-border: darken($navbar-inverse-bg, 10%) !default;
// Inverted navbar links
$navbar-inverse-link-color: $gray-light !default;
$navbar-inverse-link-hover-color: #fff !default;
$navbar-inverse-link-hover-bg: transparent !default;
$navbar-inverse-link-active-color: $navbar-inverse-link-hover-color !default;
$navbar-inverse-link-active-bg: darken($navbar-inverse-bg, 10%) !default;
$navbar-inverse-link-disabled-color: #444 !default;
$navbar-inverse-link-disabled-bg: transparent !default;
// Inverted navbar brand label
$navbar-inverse-brand-color: $navbar-inverse-link-color !default;
$navbar-inverse-brand-hover-color: #fff !default;
$navbar-inverse-brand-hover-bg: transparent !default;
// Inverted navbar toggle
$navbar-inverse-toggle-hover-bg: #333 !default;
$navbar-inverse-toggle-icon-bar-bg: #fff !default;
$navbar-inverse-toggle-border-color: #333 !default;
//== Navs
//
//##
//=== Shared nav styles
$nav-link-padding: 10px 15px !default;
$nav-link-hover-bg: $gray-lighter !default;
$nav-disabled-link-color: $gray-light !default;
$nav-disabled-link-hover-color: $gray-light !default;
$nav-open-link-hover-color: #fff !default;
//== Tabs
$nav-tabs-border-color: #ddd !default;
$nav-tabs-link-hover-border-color: $gray-lighter !default;
$nav-tabs-active-link-hover-bg: $body-bg !default;
$nav-tabs-active-link-hover-color: $gray !default;
$nav-tabs-active-link-hover-border-color: #ddd !default;
$nav-tabs-justified-link-border-color: #ddd !default;
$nav-tabs-justified-active-link-border-color: $body-bg !default;
//== Pills
$nav-pills-border-radius: $border-radius-base !default;
$nav-pills-active-link-hover-bg: $component-active-bg !default;
$nav-pills-active-link-hover-color: $component-active-color !default;
//== Pagination
//
//##
$pagination-color: $link-color !default;
$pagination-bg: #fff !default;
$pagination-border: #ddd !default;
$pagination-hover-color: $link-hover-color !default;
$pagination-hover-bg: $gray-lighter !default;
$pagination-hover-border: #ddd !default;
$pagination-active-color: #fff !default;
$pagination-active-bg: $brand-primary !default;
$pagination-active-border: $brand-primary !default;
$pagination-disabled-color: $gray-light !default;
$pagination-disabled-bg: #fff !default;
$pagination-disabled-border: #ddd !default;
//== Pager
//
//##
$pager-bg: $pagination-bg !default;
$pager-border: $pagination-border !default;
$pager-border-radius: 15px !default;
$pager-hover-bg: $pagination-hover-bg !default;
$pager-active-bg: $pagination-active-bg !default;
$pager-active-color: $pagination-active-color !default;
$pager-disabled-color: $pagination-disabled-color !default;
//== Jumbotron
//
//##
$jumbotron-padding: 30px !default;
$jumbotron-color: inherit !default;
$jumbotron-bg: $gray-lighter !default;
$jumbotron-heading-color: inherit !default;
$jumbotron-font-size: ceil(($font-size-base * 1.5)) !default;
//== Form states and alerts
//
//## Define colors for form feedback states and, by default, alerts.
$state-success-text: #3c763d !default;
$state-success-bg: #dff0d8 !default;
$state-success-border: darken(adjust-hue($state-success-bg, -10), 5%) !default;
$state-info-text: #31708f !default;
$state-info-bg: #d9edf7 !default;
$state-info-border: darken(adjust-hue($state-info-bg, -10), 7%) !default;
$state-warning-text: #8a6d3b !default;
$state-warning-bg: #fcf8e3 !default;
$state-warning-border: darken(adjust-hue($state-warning-bg, -10), 5%) !default;
$state-danger-text: #a94442 !default;
$state-danger-bg: #f2dede !default;
$state-danger-border: darken(adjust-hue($state-danger-bg, -10), 5%) !default;
//== Tooltips
//
//##
//** Tooltip max width
$tooltip-max-width: 200px !default;
//** Tooltip text color
$tooltip-color: #fff !default;
//** Tooltip background color
$tooltip-bg: #000 !default;
$tooltip-opacity: .9 !default;
//** Tooltip arrow width
$tooltip-arrow-width: 5px !default;
//** Tooltip arrow color
$tooltip-arrow-color: $tooltip-bg !default;
//== Popovers
//
//##
//** Popover body background color
$popover-bg: #fff !default;
//** Popover maximum width
$popover-max-width: 276px !default;
//** Popover border color
$popover-border-color: rgba(0,0,0,.2) !default;
//** Popover fallback border color
$popover-fallback-border-color: #ccc !default;
//** Popover title background color
$popover-title-bg: darken($popover-bg, 3%) !default;
//** Popover arrow width
$popover-arrow-width: 10px !default;
//** Popover arrow color
$popover-arrow-color: #fff !default;
//** Popover outer arrow width
$popover-arrow-outer-width: ($popover-arrow-width + 1) !default;
//** Popover outer arrow color
$popover-arrow-outer-color: fadein($popover-border-color, 5%) !default;
//** Popover outer arrow fallback color
$popover-arrow-outer-fallback-color: darken($popover-fallback-border-color, 20%) !default;
//== Labels
//
//##
//** Default label background color
$label-default-bg: $gray-light !default;
//** Primary label background color
$label-primary-bg: $brand-primary !default;
//** Success label background color
$label-success-bg: $brand-success !default;
//** Info label background color
$label-info-bg: $brand-info !default;
//** Warning label background color
$label-warning-bg: $brand-warning !default;
//** Danger label background color
$label-danger-bg: $brand-danger !default;
//** Default label text color
$label-color: #fff !default;
//** Default text color of a linked label
$label-link-hover-color: #fff !default;
//== Modals
//
//##
//** Padding applied to the modal body
$modal-inner-padding: 20px !default;
//** Padding applied to the modal title
$modal-title-padding: 15px !default;
//** Modal title line-height
$modal-title-line-height: $line-height-base !default;
//** Background color of modal content area
$modal-content-bg: #fff !default;
//** Modal content border color
$modal-content-border-color: rgba(0,0,0,.2) !default;
//** Modal content border color **for IE8**
$modal-content-fallback-border-color: #999 !default;
//** Modal backdrop background color
$modal-backdrop-bg: #000 !default;
//** Modal backdrop opacity
$modal-backdrop-opacity: .5 !default;
//** Modal header border color
$modal-header-border-color: #e5e5e5 !default;
//** Modal footer border color
$modal-footer-border-color: $modal-header-border-color !default;
$modal-lg: 900px !default;
$modal-md: 600px !default;
$modal-sm: 300px !default;
//== Alerts
//
//## Define alert colors, border radius, and padding.
$alert-padding: 15px !default;
$alert-border-radius: $border-radius-base !default;
$alert-link-font-weight: bold !default;
$alert-success-bg: $state-success-bg !default;
$alert-success-text: $state-success-text !default;
$alert-success-border: $state-success-border !default;
$alert-info-bg: $state-info-bg !default;
$alert-info-text: $state-info-text !default;
$alert-info-border: $state-info-border !default;
$alert-warning-bg: $state-warning-bg !default;
$alert-warning-text: $state-warning-text !default;
$alert-warning-border: $state-warning-border !default;
$alert-danger-bg: $state-danger-bg !default;
$alert-danger-text: $state-danger-text !default;
$alert-danger-border: $state-danger-border !default;
//== Progress bars
//
//##
//** Background color of the whole progress component
$progress-bg: #f5f5f5 !default;
//** Progress bar text color
$progress-bar-color: #fff !default;
//** Default progress bar color
$progress-bar-bg: $brand-primary !default;
//** Success progress bar color
$progress-bar-success-bg: $brand-success !default;
//** Warning progress bar color
$progress-bar-warning-bg: $brand-warning !default;
//** Danger progress bar color
$progress-bar-danger-bg: $brand-danger !default;
//** Info progress bar color
$progress-bar-info-bg: $brand-info !default;
//== List group
//
//##
//** Background color on `.list-group-item`
$list-group-bg: #fff !default;
//** `.list-group-item` border color
$list-group-border: #ddd !default;
//** List group border radius
$list-group-border-radius: $border-radius-base !default;
//** Background color of single list elements on hover
$list-group-hover-bg: #f5f5f5 !default;
//** Text color of active list elements
$list-group-active-color: $component-active-color !default;
//** Background color of active list elements
$list-group-active-bg: $component-active-bg !default;
//** Border color of active list elements
$list-group-active-border: $list-group-active-bg !default;
$list-group-active-text-color: lighten($list-group-active-bg, 40%) !default;
$list-group-link-color: #555 !default;
$list-group-link-heading-color: #333 !default;
//== Panels
//
//##
$panel-bg: #fff !default;
$panel-body-padding: 15px !default;
$panel-border-radius: $border-radius-base !default;
//** Border color for elements within panels
$panel-inner-border: #ddd !default;
$panel-footer-bg: #f5f5f5 !default;
$panel-default-text: $gray-dark !default;
$panel-default-border: #ddd !default;
$panel-default-heading-bg: #f5f5f5 !default;
$panel-primary-text: #fff !default;
$panel-primary-border: $brand-primary !default;
$panel-primary-heading-bg: $brand-primary !default;
$panel-success-text: $state-success-text !default;
$panel-success-border: $state-success-border !default;
$panel-success-heading-bg: $state-success-bg !default;
$panel-info-text: $state-info-text !default;
$panel-info-border: $state-info-border !default;
$panel-info-heading-bg: $state-info-bg !default;
$panel-warning-text: $state-warning-text !default;
$panel-warning-border: $state-warning-border !default;
$panel-warning-heading-bg: $state-warning-bg !default;
$panel-danger-text: $state-danger-text !default;
$panel-danger-border: $state-danger-border !default;
$panel-danger-heading-bg: $state-danger-bg !default;
//== Thumbnails
//
//##
//** Padding around the thumbnail image
$thumbnail-padding: 4px !default;
//** Thumbnail background color
$thumbnail-bg: $body-bg !default;
//** Thumbnail border color
$thumbnail-border: #ddd !default;
//** Thumbnail border radius
$thumbnail-border-radius: $border-radius-base !default;
//** Custom text color for thumbnail captions
$thumbnail-caption-color: $text-color !default;
//** Padding around the thumbnail caption
$thumbnail-caption-padding: 9px !default;
//== Wells
//
//##
$well-bg: #f5f5f5 !default;
$well-border: darken($well-bg, 7%) !default;
//== Badges
//
//##
$badge-color: #fff !default;
//** Linked badge text color on hover
$badge-link-hover-color: #fff !default;
$badge-bg: $gray-light !default;
//** Badge text color in active nav link
$badge-active-color: $link-color !default;
//** Badge background color in active nav link
$badge-active-bg: #fff !default;
$badge-font-weight: bold !default;
$badge-line-height: 1 !default;
$badge-border-radius: 10px !default;
//== Breadcrumbs
//
//##
$breadcrumb-padding-vertical: 8px !default;
$breadcrumb-padding-horizontal: 15px !default;
//** Breadcrumb background color
$breadcrumb-bg: #f5f5f5 !default;
//** Breadcrumb text color
$breadcrumb-color: #ccc !default;
//** Text color of current page in the breadcrumb
$breadcrumb-active-color: $gray-light !default;
//** Textual separator for between breadcrumb elements
$breadcrumb-separator: "/" !default;
//== Carousel
//
//##
$carousel-text-shadow: 0 1px 2px rgba(0,0,0,.6) !default;
$carousel-control-color: #fff !default;
$carousel-control-width: 15% !default;
$carousel-control-opacity: .5 !default;
$carousel-control-font-size: 20px !default;
$carousel-indicator-active-bg: #fff !default;
$carousel-indicator-border-color: #fff !default;
$carousel-caption-color: #fff !default;
//== Close
//
//##
$close-font-weight: bold !default;
$close-color: #000 !default;
$close-text-shadow: 0 1px 0 #fff !default;
//== Code
//
//##
$code-color: #c7254e !default;
$code-bg: #f9f2f4 !default;
$kbd-color: #fff !default;
$kbd-bg: #333 !default;
$pre-bg: #f5f5f5 !default;
$pre-color: $gray-dark !default;
$pre-border-color: #ccc !default;
$pre-scrollable-max-height: 340px !default;
//== Type
//
//##
//** Text muted color
$text-muted: $gray-light !default;
//** Abbreviations and acronyms border color
$abbr-border-color: $gray-light !default;
//** Headings small color
$headings-small-color: $gray-light !default;
//** Blockquote small color
$blockquote-small-color: $gray-light !default;
//** Blockquote font size
$blockquote-font-size: ($font-size-base * 1.25) !default;
//** Blockquote border color
$blockquote-border-color: $gray-lighter !default;
//** Page header border color
$page-header-border-color: $gray-lighter !default;
//== Miscellaneous
//
//##
//** Horizontal line color.
$hr-border: $gray-lighter !default;
//** Horizontal offset for forms and lists.
$component-offset-horizontal: 180px !default;

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,14 @@
@charset "utf-8";
a[accesskey] {
position: absolute;
margin-left: -15px;
color: transparent !important;
display: none;
}
#accesskey_sitemenu{
display: none;
}
#accesskey_menu{
display: none;
}

View File

@ -0,0 +1,102 @@
.response-content {
position: relative;
@media (min-width: $screen-sm) {
width: 100%;
}
@media (min-width: $screen-md) {
width: 970px;
}
@media (min-width: $screen-lg) {
width: 1100px;
}
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}
.response-content {
justify-self: auto;
}

View File

@ -0,0 +1,81 @@
@charset "utf-8";
@import "../initial";
@import "variables";
html {
font-size: 100%;
}
body {
font-family: $sub-font;
font-size: inherit;
margin-top: 40px;
}
a:link,
a:visited {
color: darken(#71550d,10);
}
a:hover,
a:focus {
color: lighten(#71550d, 5%);
text-decoration: none;
}
img {
max-width: 100%;
height: auto;
}
.admin-edit {
clear: both;
}
// override bootsrap settings
th,
td {
padding: 8px .5rem;
}
.borderless > tbody > tr > td,
.borderless > tbody > tr > th,
.borderless > tfoot > tr > td,
.borderless > tfoot > tr > th,
.borderless > thead > tr > td,
.borderless > thead > tr > th {
border: none !important;
}
a.btn-primary {
color: $theme-white;
border-color: $theme-color-main;
background-color: $theme-color-main;
font-size: 0.8125rem;
&:hover {
background-color: darken($theme-color-main, 10%);
border-color: darken($theme-color-main, 10%);
}
}
// Page heading
.page-module-title {
@extend .unity-title;
margin-bottom: 18px;
}
.view-count {
font-size: 0.75rem;
}
.view_count {
> i {
font-size: 0.75rem;
&:before {
margin-right: 8px;
}
}
}

View File

@ -0,0 +1,22 @@
@charset "utf-8";
@import "variables";
.go-back-top {
background: rgba(#d94444, .9);
text-align: center;
padding: 10px 12px;
position: fixed;
bottom: 15px;
right: 15px;
cursor: pointer;
display: none;
color: $theme-white;
font-size: 12px;
border-radius: 2px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
z-index: 1050;
&:hover {
background: rgba(#d94444, 1);
}
}

View File

@ -0,0 +1,37 @@
// Set Triangle
@import "variables";
@mixin arrow($direction, $width, $height, $color) {
width: 0px;
height: 0px;
border-style: solid;
@if $direction == "top" {
border-width: $width $height 0 $height;
border-color: $color transparent transparent transparent;
} @else if $direction == "right" {
border-width: $height $width $height 0;
border-color: transparent $color transparent transparent;
} @else if $direction == "bottom" {
border-width: 0 $height $width $height;
border-color: transparent transparent $color transparent;
} @else if $direction == "left" {
border-width: $height 0 $height $width;
border-color: transparent transparent transparent $color;
} @else if $direction == "top-right" {
border-width: 0 $width $height 0;
border-color: transparent $color transparent transparent;
} @else if $direction == "top-left" {
border-width: $height $width 0 0;
border-color: $color transparent transparent transparent;
} @else if $direction == "bottom-right" {
border-width: 0 0 $height $width;
border-color: transparent transparent $color transparent;
} @else if $direction == "bottom-left" {
border-width: $height 0 0 $width;
border-color: transparent transparent transparent $color;
}
}
@mixin list-reset() {
margin: 0;
padding: 0;
list-style: none;
}

View File

@ -0,0 +1,81 @@
@charset "utf-8";
@import "variables";
$theme-white: #fff;
$orbit-bg-color: #333;
$orbit-bg-hover-color: #0095CF;
$orbit-border-color: #444;
body {
#orbit-bar .orbit-bar-inner > ul > li:hover > a,
#orbit-bar .orbit-bar-inner > ul > li:hover > span,
#orbit-bar .orbit-bar-inner > ul > li:hover > label,
#orbit-bar .orbit-bar-inner > ul > li > ul li:hover,
#orbit-bar .orbit-bar-inner > ul > li > ul li.active {
background: $orbit-bg-hover-color;
}
#orbit-bar .orbit-bar-inner {
background-image: url("/assets/ob.png");
}
#orbit-bar .orbit-bar-search-sign-language #search input[type="search"] {
margin-bottom: 0;
font-size: 0.8rem;
}
#orbit-bar #search {
border-right: none;
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}
}
@media screen and (max-width: 550px) {
body #orbit-bar .orbit-bar-search-sign-language #search input[type="search"] {
width: 140px;
}
}
@media (max-width: 540px) {
body {
#orbit-bar ul.orbit-bar-search-sign-language > li + li:hover > a,
#orbit-bar ul.orbit-bar-search-sign-language > li + li:hover > span {
background-color: $orbit-bg-color;
}
#orbit-bar .orbit-bar-inner > label {
border-color: $theme-white;
color: $theme-white;
}
#orbit-bar .orbit-bar-inner > ul {
background: $orbit-bg-color;
}
#orbit-bar .orbit-bar-inner > ul > li > ul li:hover,
#orbit-bar .orbit-bar-inner > ul > li > ul li.active {
background: $orbit-bg-hover-color;
}
#orbit-bar .orbit-bar-inner > ul > li > ul a {
color: $theme-white;
}
#orbit-bar .orbit-bar-inner > ul > li > ul li.divider {
background: none;
display: none;
}
#orbit-bar ul.orbit-bar-search-sign-language > li {
background: none;
}
#orbit-bar ul.orbit-bar-search-sign-language > li {
display: block;
}
#orbit-bar ul.orbit-bar-search-sign-language > li + li {
border-top: 1px solid $orbit-border-color;
border-right: 1px solid $orbit-border-color;
box-sizing: border-box;
box-shadow: none;
}
#orbit-bar ul.orbit-bar-search-sign-language > li + li:hover > ul {
background-color: #d94444;
}
.orbit-bar-logo + ul > li {
border-bottom: 1px solid $orbit-border-color;
}
}
}

View File

@ -0,0 +1,20 @@
@charset "utf-8";
@import "variables";
.pagination {
li {
a {
font-size: 0.8125rem;
margin: 0 0.2em;
color: $theme-color-main;
}
}
.active {
a {
background-color: $theme-color-main;
border-color: $theme-color-main;
}
}
}

View File

@ -0,0 +1,12 @@
@charset "utf-8";
@import "variables";
body .sitemap-list {
a {
color: $theme-gray;
&:hover {
color: lighten($theme-color-main, 10%);
}
}
}

View File

@ -0,0 +1,31 @@
@charset "utf-8";
@import "variables";
// Title
.unity-title {
margin: 0.5em 0;
line-height: 1.5;
font-family: $main-font;
font-size: 1.5rem;
.layout-footer & {
margin-bottom: 10px;
border-bottom: none;
span {
display: inline;
margin-bottom: 0;
border-bottom: none;
}
}
}
.status {
font-family: $main-font;
font-size: 12px;
}
.status-top {
background: $theme-color-second;
}
.status-hot {
background: $theme-color-third;
}

View File

@ -0,0 +1,122 @@
@charset "utf-8";
$font-h1: 1.5rem;
$font-h2: 1.35rem;
$font-h3: 1.2rem;
$font-h4: 1.1rem;
$font-h5: 1rem;
$font-h6: 0.9rem;
// Base Color
$theme-gray: #495054;
$theme-gray-subtle: #ddd;
$theme-gray-light: #cecece;
$theme-gray-lighter: #f3f3f3;
$theme-gray-dark: #363636;
$theme-gray-darker: #242424;
$theme-white: #fff;
$theme-red: #d20001;
$theme-blue: #003d7e;
$theme-color-main: #71550d;
$theme-color-second: #5bc0de;
$theme-color-third: #ed4c43;
// Font stacks
$main-font: 'Roboto', "微軟正黑體", "Helvetica Neue", Helvetica, sans-serif;
$sub-font: 'Roboto', "新細明體", "Helvetica Neue", Helvetica, sans-serif;
// Font sizes
$font-15: 0.9375rem;
$font-13: 0.8125rem;
//
// Modules
// --------------------------------------------------
// ## commonly use in all widgets
// Font sizes
$w-widget-title-font-size: 1.5rem;
// Colors
$w-border-color: $theme-gray-lighter;
//
// AD banner Module
// --------------------------------------------------
// Font sizes
$w-caption-font-size: 1.4rem;
$w-caption-desc: 0.85rem;
//
// Announcement Module
// --------------------------------------------------
// Font sizes
$w-title-font-size-small: 0.75rem;
$w-subtitle-font-size: 0.75rem;
$w-meta-font-size: 0.75rem;
$w-table-th-font-size: 0.75em;
$w-table-td-font-size: 0.75em;
$i-title-font-size-large: 2em;
// colors
$link-color: $theme-color-main;
$link-hover-color: lighten($theme-color-main, 10%);
$table-th-bgcolor: $theme-color-main;
//
// Archive Module
// --------------------------------------------------
// Font sizes
$w-item-heading-font-size: 0.85rem;
//
// Member Module
// --------------------------------------------------
$border-width: 4px;@import "../../bootstrap/variables";
.response-content {
justify-self: auto;
}

View File

@ -0,0 +1,5 @@
@import "bootstrap/mixins";
@import "bootstrap/variables";
@import "base/mixins";
@import "base/variables";
@import "base/unity";

View File

@ -0,0 +1,627 @@
@charset "utf-8";
@import "../initial";
html{height: 100%}
body{height: 100%}
.page-home{
background: #fff url("/assets/main_bg.png") center -83px repeat-x;
}
.internal-page
{
background: #fff url("/assets/page_bg.png") center -50px repeat-x;
}
.layout-content {
.control{
outline:1px solid #0f0;
width: 100%;
height: 50px;
text-align: center;
}
.control li{
display:inline-block;
width: 15px;
height: 15px;
background-color:#aaa;
border-radius:50%;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
border:1px solid #999;
margin: 10px;
cursor:pointer;
}
.control li.active{
background-color:#666;
}
min-height: 600px;
margin-bottom: 2em;
@media(max-width : 767px) {
margin-bottom: 0;
}
.container {
// @extend %response-content;
@media(min-width : 1200px){
width: 1000px;
}
@media(min-width : 768px) and (max-width : 991px) {
width: 100% ;
}
}
section[data-pp="1"]
{ width: 60.7%;
border: solid 1px #E4E4E4;
@media (min-width : 1200px){
padding: 0 ;
}
@media (min-width : 768px) and (max-width : 1199px) {
width: 64.6% ;
}
@media(max-width : 340px) {
width: 300px;
margin:auto;
background-color: #fff;
margin-bottom: 30px;
}
@media (min-width : 341px) and (max-width : 480px) {
width: 341px;
margin:auto;
background-color: #fff;
margin-bottom: 30px;
}
.w-annc.widget-announcement-1.container{
overflow: hidden;
width:100%;
margin:0;
padding: 0;
}
.w-annc__item{
width: 293.1px !important;
a{font-size: 15.6px;
font-weight: bold;
}
@media(min-width :1200px){
padding-left:20px;
padding-right: 0;
}
@media(min-width : 992px) and (max-width : 1199px) {
width: 298px !important;
}
@media(min-width : 989px) and (max-width : 991px) {
width: 304px !important;
}
@media(min-width : 972px) and (max-width : 988px){
width:303px !important;
}
@media(min-width : 961px) and (max-width : 971px){
width:298px !important;
}
@media(min-width : 951px) and (max-width : 960px){
width:294px !important;
}
@media(min-width : 941px) and (max-width : 950px){
width:291px !important;
}
@media(min-width : 931px) and (max-width : 940px){
width:287.7px !important;
}
@media(min-width : 921px) and (max-width : 930px){
width:284px !important;
}
@media(min-width : 911px) and (max-width : 920px){
width:281px !important;
}
@media(min-width : 901px) and (max-width : 910px){
width:278px !important;
}
@media(min-width : 891px) and (max-width : 900px){
width:275px !important;
}
@media(min-width : 881px) and (max-width : 890px){
width:272px !important;
}
@media(min-width : 871px) and (max-width : 880px){
width:270px !important;
}
@media(min-width : 861px) and (max-width : 870px){
width:265px !important;
}
@media(min-width : 851px) and (max-width : 860px){
width:262px !important;
}
@media(min-width : 841px) and (max-width : 850px){
width:258px !important;
}
@media(min-width : 831px) and (max-width : 840px){
width:255px !important;
}
@media(min-width : 821px) and (max-width : 830px){
width:252px !important;
}
@media(min-width : 811px) and (max-width : 820px){
width:250px !important;
}
@media(min-width : 801px) and (max-width : 810px){
width:245px !important;
}
@media(min-width : 791px) and (max-width : 800px){
width:242px !important;
}
@media(min-width : 781px) and (max-width : 790px){
width:238px !important;
}
@media(min-width : 771px) and (max-width : 780px){
width:235px !important;
}
@media(min-width : 768px) and (max-width : 770px){
width:235px !important;
}
@media(min-width : 481px) and (max-width : 767px) {
}
@media (min-width : 401px) and (max-width : 480px) {
width:310px !important;
margin-right: 40px;
}
@media (min-width : 341px) and (max-width : 400px) {
width:310px !important;
margin-right: 36px;
}
@media(max-width : 340px){
width:270px !important;
margin-right: 20px;
}
}
.cycle-carousel-wrap{
white-space: normal !important;
}
.cycle-prev{
margin-right: 10px;
float: right;
padding:0 15px;
background-color: #f6d16e;
position:relative;
color: #bf8e0c;
@media(max-width : 340px){
padding:0 5px;
}
}
.cycle-next{
margin-right: 30px;
float: right;
padding:0 15px;
background-color: #f6d16e;
position: relative;
color: #bf8e0c;
@media(max-width : 340px){
padding:0 5px;
}
}
.w-annc__widget-title{
padding: 0 15px;
}
.w-annc__box{
width:1400%;
}
.more{
float: right;
font-size: 10pt;
line-height: 35px;
color:#333;
}
.w-annc__entry-title{
a{
color: #333;
}
}
}
#pics
{
width: 37.8%;
margin-left:15px;
border: solid 1px #E4E4E4;
height:310px;
overflow: hidden;
@media (min-width : 1200px) {
height:299px;
}
@media (min-width : 992px) and (max-width : 1199px) {
width: 33.8% ;
}
@media(min-width : 768px) and (max-width : 991px) {
width: 33% ;
}
@media(max-width : 767px) {
width: 100%;
margin:0;
}
}
#tabs{
height: 100%;
border: solid 1px #E4E4E4;
margin-top: 30px;
padding: 0;
background: url("/assets/tab_bg.png") repeat-y scroll 0 0;
@media(max-width : 767px) {
overflow: hidden;
background: inherit;
}
}
#links{
padding-left:0;
width: 34.5%;
float: left;
@media(min-width : 825px) and (max-width : 1199px) {
width: 34% ;
}
@media (min-width : 481px) and (max-width : 825px){
width: 33%;
padding-left: 0;
}
@media (max-width : 480px){
width: 100%;
padding-left: 15px;
}
}
#news{
padding: 0 33px 0 0;
width: 55%;
float: left;
@media(min-width : 481px) and (max-width : 1199px) {
width: 54%;
padding: 0 15px;
}
@media (max-width : 480px){
width: 100%;
padding: 0;
}
}
#ads{
padding: 0;
margin-top: 30px;
}
aside[data-pp="2"]
{ padding: 0;
h3{
width: 76%;
margin: 12px 0;
font-family: "微軟正黑體";
.more{
float: right;
font-size: 10pt;
line-height: 35px;
color:#333;
}
}
}
aside[data-pp="3"]
{ float: left;
width:70%;
top:45px;
position: absolute;
.slider{
width:270px;
height: 300px;
overflow: hidden;
@media (max-width : 1199px) {
width: inherit;
}
}
.w-annc__list{
position: relative;
overflow: hidden;
}
.w-annc__item{
width: auto;
margin-bottom:0;
@media (max-width : 1199px) {
width: auto;
}
}
.w-annc__title{
color:#333;
font-size: 12pt;
line-height: 24px;
}
.w-annc__entry-title{
overflow: auto;
background-color: #f6d16e;
padding: 8px;
margin: 0;
}
.w-annc__img-wrap img{
position: inherit!important;
}
}
aside[data-pp="4"]
{
float: right;
width:19%;
.w-annc__item.row{
margin: 0;
width: 100%;
}
.w-annc.widget-announcement-2{
@media(min-width : 1200px) {
margin-left:5px;
}
}
.w-annc__img-wrap.col-sm-4.bullseye
{width: 100%;
height: 47px;
cursor: pointer;
margin:auto;
margin-bottom: 10px;
@media(max-width : 767px) {
width:inherit;
}
}
.w-annc__list{
margin-top: -38px;
}
}
section[data-pp="5"]
{
width: 10.4%;
float: left;
overflow: hidden;
height: 100%;
@media(min-width : 992px) and (max-width : 1199px) {
width: 10.7%;
}
@media(min-width : 825px) and (max-width : 991px) {
width: 10.9% ;
}
@media(min-width : 768px) and (max-width : 825px) {
width: 12.5% ;
}
@media(max-width : 767px){
width: 100% ;
background-color: rgb(236,110,25);
}
ul{
position: relative;
margin:0;
padding: 0;
list-style: none;
@media(max-width : 767px){
text-align: center;
}
li{ cursor:pointer;
color:#fff;
font-family: "微軟正黑體";
padding: 20px 0 20px 15px;
@media(max-width : 767px){
padding: 20px 10px;
display: inline-block;
}
}
.active{
background-color: #DE4F03;
&:before {
content: '';
position:absolute;
left: 0;
margin-top:5px;
@include arrow("left", 6px, 6px, #fff);
@media(max-width : 767px){
display:none;
}
}
}
}
}
aside[data-pp="11"]{
h3{
margin: 20px 0 0 15px;
font-family: "微軟正黑體";
font-size: 12pt;
font-weight: bold;
}
}
section[data-pp="6"]
{ .w-annc.widget-announcement-11{
padding-top: 13px;
position: relative;
display: none;
opacity: 0;
@media(max-width : 1199px){
padding-top: 15px;
}
}
.w-annc.widget-announcement-11.active{
display: block;
overflow: hidden;
}
.w-annc__item{
position: relative;
left: 0;
padding: 0 0 5px 10px;
margin-left:0;
margin-right:0;
border-bottom: solid 1px #eee;
}
.w-annc__category{
font-size: 10pt;
margin: 0 10px 1px;
background-color: #999;
color: #fff;
padding: 4px;
}
.w-annc__postdate{
color:#aaa;
font-size: 10pt;
}
.w-annc__title{
width: 87%;
display: inline-block;
margin-top:10px;
color:#333;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
@media(min-width : 992px) and (max-width : 1199px) {
display: inline-block;
width: 58%;
}
@media (max-width : 991px) {
display: inline-block;
width: 48%;
padding-top: 10px;
}
@media (max-width : 797px) {
width: 44%;
}
@media (max-width : 480px) {
width: 100%;
}
&:hover{
color:#f77319;
}
}
.w-annc__widget-title{
display: inline;
position: absolute;
right:0;
margin:0;
top:-9px;
z-index: 5;
font-weight: bold;
font-size: 12pt;
padding-left:15px;
@media (max-width : 1199px) {
}
}
.w-annc__more.btn.btn-primary.pull-right{
background-color: inherit;
color:#333;
border:0;
font-size: 10pt;
}
}
section[data-pp="7"]{
h3{
margin: 20px 0 0 0;
font-family: "微軟正黑體";
font-size: 12pt;
font-weight: bold;
@media (max-width : 1199px) {
margin-left: 0;
margin-right: 0;
}
}
}
section[data-pp="8"]
{ overflow: hidden;
padding-bottom: 10px;
.widget-link.widget1{
display: none;
opacity: 0;
position: relative;
top:-350px;
}
.widget-link.widget1.active{
display: block;
}
.widget-content{
position: relative;
left: 20px;
float: left;
display: list-item;
width: 49%;
width: calc(50% - 1em);
border-top:inherit !important;
font-size: 10pt;
list-style:disc;
@media(max-width : 965px) {
width: 100% ;
}
a{color:#333;}
}
.widget-title{
//margin-left: -15px;
}
.widget-content-title{
&:hover{
color:#f77319;
}
}
.status-top{
display: none;
}
}
section[data-pp="9"]
{ overflow:hidden;
width: 62.7%;
.w-ad-banner__caption{
display: none !important;
}
padding-left: 0;
@media(max-width : 767px) {
padding: 0;
}
}
aside[data-pp="10"]
{ width: 37.3%;
background-color: #0f2d4f;
padding-left: 30px;
@media(max-width : 1199px) {
height: 192px;
}
.w-annc__more.btn.btn-primary.pull-right{
background-color: inherit;
border: inherit;
}
.w-annc__widget-title{
color: #fff;
font-size: 12pt;
font-weight: bold;
//padding: 15px 0;
}
.w-annc__category{
display: none;
}
.w-annc__postdate{
color:#2776d0;
font-size: 10pt;
}
.w-annc__item.row{
margin: 0;
border-bottom:1px solid #17457a;
//padding: 6px 0;
&:first-child{
padding-top: 0;
}
a{
color:#fff;
}
}
}
.w-ad-banner.ad-banner-widget-4{
margin-bottom: 15px;
}
}

View File

@ -0,0 +1,44 @@
@charset "utf-8";
@import "../initial";
.layout-footer {
padding: 2em 0;
color: #999999;
font-size: 0.8125em;
background-color: $theme-gray-dark;
.logo{
vertical-align: top;
display: inline-block;
margin-right: 10px;
}
.layout-footer-content{
width: 50%;
display: inline-block;
@media (max-width : 767px){
width: 88%;
}
}
.footer-counter{
width: 30%;
float: right;
text-align: right;
img{
margin-right: 10px;
}
@media (max-width : 767px){
width: 100%;
text-align: left;
}
}
.container {
// @extend .response-content;
}
a {
color: #999999;
&:hover,
&:focus {
color: lighten(#999999, 10%)
}
}
}

View File

@ -0,0 +1,191 @@
@charset "utf-8";
@import "../initial";
.top{
display: none;
@media (max-width : 767px){
display: block;
height: 136px;
}
}
.layout-header {
z-index: 1000 !important;
position:relative;
margin-bottom: 0;
border: none;
border-radius: 0;
@media (max-width : 767px){
position:fixed;
background-color: rgb(247,241,224);
top: 40px;
}
z-index: 1;
.container {
width: 1000px;
padding: 0;
// @extend .response-content;
@media (max-width : 1199px){
width: 100%;
}
}
.collapse.navbar-collapse.modules-menu{
padding: 0;
@media (max-width:767px) {
padding: 0 15px;
}
}
#main-nav{
text-align: center;
width:100%;
background: #d94444 url("/assets/menu_bg.png") center top repeat-x;
-webkit-border-radius: 4px 4px 0 0;
-moz-border-radius: 4px 4px 0 0;
border-radius: 4px 4px 0 0;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
@media (max-width:985px) {
overflow: hidden;
border-radius: 0;
}
}
.header-nav {
margin-top: 20px;
background-color: #fae8b6;
padding: 8px;
color: #FFF;
font-family: $main-font;
float: right;
@media (max-width : 985px){
width: 100%;
}
ul{
padding: 0;
@media (max-width : 985px){
text-align: center;
width:100%;
}
}
li{
border-left: solid 1px #333;
display: inline-block;
@media (max-width : 985px){
border:0;
padding-bottom: 5px;
}
&:first-child{
border: 0;
}
a{
padding: 0 1px 0 5px;
font: 12px/1.5 'arial',sans-serif;
color:#333;
@media (max-width : 985px){
font-weight: bold;
}
}
}
& > * {
display: inline-block;
margin-top: 0;
margin-bottom: 0;
font-size: 0.8em;
color: #fff;
}
a {
color: #fff;
text-decoration: none;
}
@media (min-width: $screen-sm) {
text-align: right;
}
}
.navbar-header {
width: 100%;
padding: 0 ;
@media (max-width:767px) {
margin:0;
}
.navbar-toggle {
position: absolute;
right: 0;
padding: 14px 10px;
border-radius: 2px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
border-width: 2px;
border-color: lighten($theme-gray, 30%);
// &:hover {
// border-color: lighten($theme-gray, 45%);
// .icon-bar {
// background-color: lighten($theme-gray, 45%);
// transition: .2s all;
// }
// }
.icon-bar {
background-color: lighten($theme-gray, 30%);
}
&.collapsed {
.icon-bar-top {
top: 0;
transform: rotate(0);
}
.icon-bar-middle {
opacity: 1;
}
.icon-bar-bottom {
top: 0;
transform: rotate(0);
}
}
// icon bar animation
.icon-bar {
transition: .2s all;
position: relative;
}
.icon-bar-top {
top: 6px;
transform: rotate(45deg);
}
.icon-bar-middle {
opacity: 0;
}
.icon-bar-bottom {
top: -6px;
transform: rotate(-45deg);
}
}
.navbar-brand {
height: 34px;
margin: 8px 0;
padding-top: 0;
padding-bottom: 0;
line-height: 34px;
color: #FFF;
font-size: 1.4em;
font-family: $main-font;
@media (min-width: 986px) {
height: 60px;
margin: 0.5rem 0 0;
padding-left: 0;
line-height: 60px;
font-size: 1.5em;
}
@media(min-width : 768px) and (max-width : 985px) {
height: 34px;
}
.site-logo {
width: auto;
margin-right: 0.5em;
float: left;
@media (max-width:767px) {
width: 85%;
}
}
}
}
}

View File

@ -0,0 +1,16 @@
@charset "utf-8";
@import "../initial";
.layout-slide {
position: relative;
margin-bottom: 2rem;
z-index: 0;
overflow: hidden;
.w-ad-banner {
max-width: 1000px;
max-height: 220px;
margin: auto;
background-color: rgb(247,247,247);
}
}

View File

@ -0,0 +1,127 @@
@charset "utf-8";
@import "../initial";
//
// Widget
//
// Widget
// ## gerenral styles
.w-ad-banner {
position: relative;
.cursor {
cursor: pointer;
}
}
.w-ad-banner__wrap {
width: 100%;
}
.w-ad-banner__slide {
width: 100%;
}
.banner-pager {
@include list-reset;
position: absolute;
right: 1em;
top: 1em;
z-index: 200;
li {
display: inline-block;
}
a {
border: 2px solid #fff;
background: #d94444;
display: inline-block;
margin-right: 0.25em;
width: 1em;
height: 1em;
border-radius: 50%;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
opacity: .5;
}
.active-slide a {
opacity: 1;
}
}
.banner-responsive {
width: 100%;
}
// Widget 1
.ad-banner-widget-1 {
.w-ad-banner__caption {
background: $theme-color-main;
color: $theme-white;
z-index: 200;
padding: 0.5em 1em;
h2 {
font-family: $main-font;
font-size: $w-caption-font-size;
margin: 0.5em 0;
}
p {
font-family: $main-font;
font-size: $w-caption-desc;
}
}
}
// Widget 2
.ad-banner-widget-2 {
.w-ad-banner__image {
width: 100%;
height: auto;
}
.youtube, .cycle-youtube {
width: 100%;
height: 100%;
}
object, embed {
width: 100%;
height: 100%;
}
.banner-pager {
right: 1em;
bottom: 1em;
z-index: 102;
}
}
// Widget 3
.ad-banner-widget-3 {
.w-ad-banner__wrap {
width: 100%;
}
.w-ad-banner__slide {
width: 100%;
}
.banner-pager {
top: auto;
right: 1em;
bottom: 1em;
}
}
// specific style for youtube widget
.ad-banner-widget-youtube {
.cycle-slide-active {
z-index: 101 !important;
}
}

View File

@ -0,0 +1,680 @@
@charset "utf-8";
@import "../initial";
//
// Widget
//
// Announcement widget
// ## Gerneral styles for widgets
.w-annc {
.w-annc__widget-title {
@extend .unity-title;
}
.w-annc__list {
margin: 0;
padding: 0;
list-style: none;
}
.w-annc__item {
margin-bottom: 30px;
}
.label {
font-size: 0.75rem;
font-weight: normal;
}
.w-annc__meta {
.w-annc__status-wrap,
.w-annc__postdate-wrap,
.w-annc__category-wrap {
display: inline-block;
margin-right: 0.2em;
font-size: 0.8125em;
color: $theme-gray;
font-weight: normal;
}
i {
color: $theme-gray;
}
}
.w-annc__subtitle {
font-size: 0.8125em;
color: $theme-gray;
}
.w-annc__entry-title {
margin-bottom: 10px;
}
.w-annc__title {
font-family: $sub-font;
color: $theme-color-main;
text-decoration: none;
font-size: 0.8125rem;
&:hover {
color: darken($theme-color-main, 10%);
}
}
}
// Widget-1
.widget-announcement-1 {
.w-annc__img-wrap {
height: 165px;
margin: 0 0 1em 0;
}
.w-annc__title {
font-family: $main-font;
line-height: 1.3;
font-size: 1.2rem;
}
}
// Widget-2
.widget-announcement-2 {
.w-annc__img-wrap {
height: 200px;
margin: 0 0 1em 0;
}
.w-annc__title {
font-family: $main-font;
line-height: 1.3;
font-size: 1.2rem;
}
.w-annc__list{
margin-top: -38px;
}
}
// Widget-3
.widget-announcement-3 {
.w-annc__img-wrap {
height: 165px;
margin: 0 0 5px 0;
}
.w-annc__title {
font-family: $main-font;
line-height: 1.3;
font-size: 1.2rem;
}
}
// Widget-4
.widget-announcement-4 {
.w-annc__title {
font-family: $main-font;
line-height: 1.3;
font-size: 1.2rem;
}
.w-annc__list > .w-annc__item:nth-child(3n+1) {
clear: both;
}
.w-annc__img-wrap {
height: 200px;
margin: 0 0 1em 0;
}
}
// Widget-5
.widget-announcement-5 {
.w-annc__title {
font-family: $main-font;
line-height: 1.3;
font-size: 1.2rem;
}
.w-annc__item {
border-bottom: 1px dashed lighten($theme-gray, 65%);
padding-bottom: 1em;
margin-bottom: 1em;
}
}
// Widget-6
.widget-announcement-6 {
.w-annc__item {
margin-bottom: 0.8em;
padding-bottom: 0.8em;
border-bottom: 1px dashed lighten($theme-gray, 65%);
}
.w-annc__entry-title {
margin: 0;
}
.w-annc__category-wrap,
.w-annc__status,
.w-annc__title,
.w-annc__postdate-wrap {
font-size: 0.8125rem;
}
.w-annc__status {
display: inline-block;
}
}
// Widget-7
.widget-announcement-7 {
.w-annc__item {
margin-bottom: 0.8em;
padding-bottom: 0.8em;
border-bottom: 1px dashed lighten($theme-gray, 65%);
}
.w-annc__entry-title {
margin: 0;
}
.w-annc__category-wrap,
.w-annc__status,
.w-annc__title,
.w-annc__postdate-wrap {
font-size: 0.75rem;
}
.w-annc__status {
display: inline-block;
}
}
// Widget-8
// ## Table
.widget-announcement-8 {
.w-annc__th {
color: #fff;
background: $theme-color-main;
font-size: 0.8125em;
border: none;
}
.w-annc__status {
display: inline-block;
font-size: 0.75rem;
}
td {
font-size: 0.8125em;
}
a:hover {
text-decoration: none;
}
}
// Widget-9
// ## Table
.widget-announcement-9 {
.w-annc__th {
color: #fff;
background: $theme-color-main;
font-size: 0.8125em;
border: none;
}
.w-annc__status {
display: inline-block;
font-size: 0.75rem;
}
td {
font-size: 0.8125em;
}
a:hover {
text-decoration: none;
}
}
// Widget-10
.widget-announcement-10 {
.w-annc__item {
margin-bottom: 0.8em;
padding-bottom: 0.8em;
border-bottom: 1px dashed lighten($theme-gray, 65%);
}
.w-annc__entry-title {
margin: 0;
}
.w-annc__postdate-wrap {
font-size: 0.8125em;
}
.w-annc__status {
display: inline-block;
font-size: 0.75rem;
}
}
// Widget-11
.widget-announcement-11 {
.w-annc__item {
margin-bottom: 0;
//padding-bottom: 0.8em;
border-bottom: 1px dashed lighten($theme-gray, 65%);
}
.w-annc__entry-title {
margin: 0;
padding: 0;
}
.w-annc__postdate-wrap {
font-size: 0.8125em;
}
.w-annc__status {
display: inline-block;
font-size: 0.75rem;
}
}
// Widget-12
// ## Table
.widget-announcement-12 {
.w-annc__th {
color: #fff;
background: $theme-color-main;
font-size: 0.8125em;
border: none;
}
.w-annc__status {
display: inline-block;
font-size: 0.75rem;
}
td {
font-size: 0.8125em;
}
a:hover {
text-decoration: none;
}
}
// Widget-13
// ## Table
.widget-announcement-13 {
.w-annc__th {
color: #fff;
background: $theme-color-main;
font-size: 0.8125em;
border: none;
}
.w-annc__status {
display: inline-block;
font-size: 0.75rem;
}
td {
font-size: 0.8125em;
}
a:hover {
text-decoration: none;
}
}
// Widget-14
.widget-announcement-14 {
.w-annc__list {
padding: 0 15px;
}
.w-annc__img-wrap {
height: 300px;
margin-bottom: 15px;
@media (min-width: $screen-md) {
height: 200px;
margin-bottom: 0;
}
}
.w-annc__item {
margin-bottom: 0.8em;
padding-bottom: 0.8em;
border-bottom: 1px dashed lighten($theme-gray, 65%);
}
.w-annc__entry-title {
margin: 0 0 10px 0;
@media (min-width: $screen-md) {
margin-bottom: 0;
}
}
.w-annc__postdate-wrap {
font-size: 0.8125em;
}
.w-annc__status {
display: inline-block;
}
.w-annc__postdate {
font-size: 0.8125rem;
}
}
// Announcement index
// ## General style for index pages
.i-annc {
.i-annc__page-title {
@extend .unity-title;
}
.i-annc__list {
margin: 0;
padding: 0;
list-style: none;
}
.i-annc__widget-title {
@extend .unity-title;
}
.i-annc__item {
margin-bottom: 30px;
}
.i-annc__img {
width: 100%;
max-width: 100%;
height: auto;
}
.i-annc__th {
color: #fff;
background: #d94444;
font-size: 0.8125em;
border: none;
white-space: nowrap;
}
.i-annc__status-wrap {
span {
display: inline-block;
padding: .2em .6em .3em;
&:last-child {
margin: 0 5px 3px 0;
display: inline-block;
}
}
}
td {
font-size: 0.8125rem;
}
.i-annc__title:hover {
text-decoration: none;
}
.label {
font-size: 0.75rem;
font-weight: normal;
}
.i-annc__meta {
.i-annc__status-wrap,
.i-annc__postdate-wrap,
.i-annc__category-wrap {
display: inline-block;
margin-right: 0.2em;
font-size: 0.8125em;
color: $theme-gray;
font-weight: normal;
}
i {
color: $theme-gray;
}
}
.i-annc__subtitle {
font-size: 0.8125em;
color: $theme-gray;
}
.i-annc__entry-title {
margin-bottom: 10px;
}
.i-annc__title {
font-family: $sub-font;
color: darken(#71550d,5%);
text-decoration: none;
font-size: 0.8125rem;
&:hover {
color: darken(#71550d,10%);
}
}
}
// Index-1
.index-announcement-1 {}
// Index-5
// Index-6
.index-announcement-5,
.index-announcement-6 {
.i-annc__img-wrap {
margin: 0 0 1em;
}
.i-annc__title {
font-family: $main-font;
font-size: 1.2rem;
line-height: 1.3;
}
}
// Index-7
.index-announcement-7 {
.i-annc__title {
font-family: $main-font;
line-height: 1.3;
font-size: 1.2rem;
}
.i-annc__list > .i-annc__item:nth-child(3n+1) {
clear: both;
}
.i-annc__img-wrap {
height: 200px;
margin: 0 0 1em 0;
}
}
// Index-8
.index-announcement-8 {
.i-annc__title {
font-family: $main-font;
line-height: 1.3;
font-size: 1.2rem;
}
.i-annc__item {
border-bottom: 1px dashed lighten($theme-gray, 65%);
padding-bottom: 1em;
margin-bottom: 1em;
}
}
// Index-9
// Index-10
.index-announcement-9,
.index-announcement-10 {
.i-annc__item {
margin-bottom: 0.8em;
padding-bottom: 0.8em;
border-bottom: 1px dashed lighten($theme-gray, 65%);
}
.i-annc__entry-title {
margin: 0;
}
.i-annc__category-wrap,
.i-annc__status,
.i-annc__title,
.i-annc__postdate-wrap {
font-size: 0.8125rem;
}
.i-annc__status {
display: inline-block;
}
}
// Index-11
// Index-12
.index-announcement-11,
.index-announcement-12 {
.i-annc__item {
margin-bottom: 0.8em;
padding-bottom: 0.8em;
border-bottom: 1px dashed lighten($theme-gray, 65%);
}
.i-annc__entry-title {
margin: 0;
}
.i-annc__postdate-wrap {
font-size: 0.8125em;
}
.i-annc__status {
display: inline-block;
font-size: 0.75rem;
}
}
// Index-16
.index-announcement-16 {
td ul {
margin: 0;
padding: 0;
list-style: none;
}
}
// Announcement show
.s-annc {
.s-annc__show-title {
@extend .unity-title;
}
.s-annc__meta-wrap {
border-bottom: 1px solid $theme-gray-light;
@include clearfix;
.s-annc__meta--item {
font-size: 0.875rem;
margin-right: 1em;
margin-bottom: 0.6em;
float: left;
i {
color: darken($theme-gray-light, 10%);
}
}
.s-annc__tag-wrap {
position: relative;
margin-right: 0;
padding-left: 1.6em;
clear: both;
float: none;
i {
position: absolute;
top: 7px;
left: 0;
}
}
.s-annc__tag-wrap {
.s-annc__tag {
font-weight: normal;
}
}
}
.s-annc__post-wrap {
@include clearfix;
margin-bottom: 2em;
}
.s-annc__related-wrap {
padding-top: 1em;
border-top: 1px dotted $theme-gray-light;
}
.s-annc__related-file {
margin-bottom: 15px;
}
.s-annc__related-file,
.s-annc__related-link {
padding-bottom: 6px;
padding-left: 1.6em;
i {
margin: 8px 0 0 -1.6em;
float: left;
color: darken($theme-gray-light, 10%);
}
a {}
}
.s-annc__related-link-list,
.s-annc__related-file-list {
display: inline-block;
}
.s-annc__flie-title {
max-width: 9.375rem;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.s-annc__social > * {
display: inline-block;
vertical-align: top;
}
.s-annc__social .print-button {
color: #fff;
font-size: 11px;
border-radius: 4px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
padding: 2px 6px;
background-color: $theme-color-main;
}
.s-annc__social .print-button:hover {
background-color: lighten($theme-color-main, 10%);
}
}

View File

@ -0,0 +1,188 @@
@charset "utf-8";
@import "../initial";
//
// Widget
//
// Widget
// ## gerenral styles
.w-archive {
.w-archive__widget-title {
font-family: $main-font;
font-size: $w-widget-title-font-size;
color: $theme-gray;
margin: 0.5rem 0;
}
}
// Widget 1
.widget-archive-1 {
.w-archive__list.level-1 {
padding: 0.5rem;
}
.w-archive__item.level-1 {
list-style-position: inside;
margin-bottom: 0.8rem;
}
.w-archive__item-heading {
display: inline-block;
font-size: $w-item-heading-font-size;
font-family: $main-font;
color: $theme-gray;
margin: 0;
padding-bottom: 0.25rem;
}
.w-archive__list.level-2 {
margin: 0;
padding: 0;
}
.w-archive__item.level-2 {
border-bottom: 1px dashed $w-border-color;
padding: 0 0 0.5rem 0.4rem;
}
.w-archive__link {
font-size: $w-title-font-size-small;
}
}
// Archive index 1
.index-archive-1 {
font-family: $main-font;
.i-archive__archive-title {
font-size: 1rem;
margin-bottom: 10px;
vertical-align: top;
}
.i-archive__status-wrap {
vertical-align: top;
display: inline-block;
margin-bottom: 10px;
}
.i-archive__item {
margin-bottom: 40px;
}
.i-archive__category-list {
}
.i-archive__category-title {
padding-bottom: 5px;
}
.i-archive__category-item {
font-size: 13px;
display: inline;
font-size: .8125rem;
}
.i-archive__item-wrap {}
.i-archive__file-list {
display: block;
margin-bottom: 0.8em;
}
.i-archive__file-wrap {
margin: 0 0.625rem 15px 0;
padding: 8px 12px;
border-radius: 2px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
border: 1px solid lighten($theme-gray-light, 10%);
}
.i-archive__file-name {
font-size: 12px;
font-size: 0.75rem;
}
}
.index-archive-2,
.index-archive-4 {
.panel {
font-family: $main-font;
margin-bottom: 10px;
}
.panel-title {
font-family: $main-font;
}
.i-archive-tags {
margin-bottom: 0;
}
.i-archive-files-item {
font-size: 13px;
font-family: $main-font;
}
.i-archive-files-list {
dd {
margin-bottom: 15px;
}
}
.i-archive-tag-name {
margin-bottom: 8px;
font-size: 0.9375rem;
display: inline-block;
}
@media screen and (min-width: $screen-sm) {
.dl-horizontal {
dt {
text-align: left;
}
}
}
}
.has-archive-tab {
.i-tag__item {
display: none;
}
.tab-content--active {
display: block !important;
}
.i-archive__tag-name {
cursor: pointer;
}
}
.index-archive-3 {
.i-archive__tag-name {
background-color: $theme-color-main;
color: $theme-white;
font-family: $main-font;
display: inline-block;
padding: 10px 12px;
margin-right: 5px;
border-radius: 4px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
font-size: 15px;
&:hover {
background-color: darken($theme-color-main, 7%);
}
&.tab--active {
background-color: darken($theme-color-main, 7%);
}
}
.tab-content {
background-color: lighten($theme-gray, 65%);
padding: 25px;
}
.i-archive__category-item {
margin-bottom: 8px;
}
.i-archive__category-title {
font-family: $main-font;
}
.i-archive__archive-title {
font-size: 15px;
}
.tab-content {
margin-bottom: 10px;
}
.i-archive__file-name {
font-size: 13px;
}
.i-archive__file-wrap {
margin-bottom: 10px;
}
.i-archive__item-wrap {
font-family: $main-font;
}
}

View File

@ -0,0 +1,54 @@
@charset "utf-8";
@import "../initial";
.w-calendar {
width: 100%;
position: relative;
.widget-title {
text-align: center;
border: 1px solid $theme-gray-subtle;
margin: 0;
padding: 8px 0;
}
th {
background: $theme-color-main;
color: $theme-white;
text-align: center;
font-size: 0.8125rem;
}
td {
border: 1px solid $theme-gray-subtle;
text-align: center;
font-size: 0.8125rem;
}
}
.w-calendar-table {
margin-bottom: 0;
.w-calendar-today {
background: $theme-color-main;
color: $theme-white;
}
.w-calendar-event {
background: $theme-color-third;
color: $theme-white;
cursor: pointer;
}
}
.w-calendar-nav {
a {
position: absolute;
top: 8px;
left: 10px;
color: $theme-color-main;
}
.w-calendar-nav-next {
left: auto;
right: 10px;
}
}

View File

@ -0,0 +1,54 @@
@charset "utf-8";
@import "../initial";
// Faqs MODULES
.widget-faqs {
&.widget1 {
.widget-content {
padding-bottom: 10px;
& + .widget-content {
border-top: 1px dotted $theme-gray-light;
}
.widget-content-title {
display: inline-block;
padding: 5px 0;
}
}
// layout-content 下的樣式
.layout-content & {
.widget-title {
@extend .unity-title;
}
}
// layout-footer 下的樣式
.layout-footer & {
.widget-content {
line-height: 2em;
border-top-color: $theme-gray;
}
}
}
}
// Faqs INDEX
.index-faqs {
.index-title {
@extend .unity-title;
}
&.index1 {
.index-content {
list-style-type: decimal-leading-zero;
list-style-position: inside;
& + .index-content {
border-top: 1px dotted $theme-gray-light;
}
}
}
}

View File

@ -0,0 +1,122 @@
@charset "utf-8";
@import "../initial";
// Gallery MODULES
.widget-gallery {
.widget-title {
@extend .unity-title;
}
.widget-content {
position: relative;
}
&.widget1 {
.widget-content {
overflow: hidden;
.widget-pic {
display: inline-block;
padding: 1px;
text-align: center;
@include size(33.3333%, auto);
img {
@include size(100%, 100%);
}
}
}
}
&.widget2 {
.widget-content {
margin-left: -5px;
margin-right: -5px;
.widget-pic {
margin-bottom: 10px;
padding-left: 5px;
padding-right: 5px;
img {
@include size(100%, auto);
}
}
}
}
}
.index-gallery {
.index-title {
@extend .unity-title;
}
&.index1 {
.index-content {
&:nth-child(4n+1) {
clear: both;
}
.index-part {
padding: 8px;
}
.index-content-inner {
position: relative;
}
.index-content-title {
font-family: $main-font;
font-size: 15px;
}
.index-img-description {
font-size: 13px;
}
}
}
&.index2 {
.index-content {
padding: 25px 15px;
background: lighten($theme-gray, 60%);
margin-bottom: 20px;
border-radius: 2px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
@media screen and (max-width: $screen-sm) {
margin-right: 20px;
margin-left: 20px;
}
}
.index-content-inner {
margin-bottom: 25px;
}
.index-img {
border-radius: 2px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
}
.index-content-title {
font-family: $main-font;
font-size: 15px;
}
.index-img-description {
font-size: 13px;
}
}
}
.show-gallery {
.show-title {
@extend .unity-title;
}
.show-content {
padding-right: 0;
padding-left: 0;
&:nth-child(6n+1) {
clear: both;
}
.img {
display: inline-block;
width: 100%;
height: auto;
border-radius: 2px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
}
.show-content-inner {
position: relative;
padding: 5px;
z-index: 0;
}
.show-description {
font-family: $main-font;
font-size: 13px;
padding: 8px;
}
}
}

View File

@ -0,0 +1,133 @@
@charset "utf-8";
@import "../initial";
//
// Index
//
// Member Index
// ## Gerneral styles for Index
// Index 1
.index-member-1 {
.i-member-tr-head {
&:nth-child(1n+2) {
display: none;
}
th {
background: $theme-color-main;
color: #fff;
}
}
}
// Index 2
.index-member-2 {
.i-member-section {
max-width: 500px;
margin: auto;
}
.i-member-status-title {
@extend .unity-title;
}
.i-member-item-inner {
background: none;
border-radius: 0.25rem;
padding: 24px 1rem;
margin-bottom: 16px;
}
.i-member-pic-wrap {
height: auto;
margin-bottom: 16px;
}
.i-member-pic {
width: 100%;
}
.i-member-profile-list {
@include list-reset;
}
.i-member-profile-item {
margin-bottom: 8px;
font-size: $font-13;
}
// RWD
@media screen and (min-width: $screen-sm) {
.i-member-section {
max-width: 100%;
}
.i-member-item-inner {
background: $theme-gray-lighter;
}
}
}
// // Index 3
.index-member-3 {
.i-member-section {
max-width: 500px;
margin: auto;
}
.i-member-status-title {
@extend .unity-title;
}
.i-member-item-inner {
background: none;
border-radius: 0.25rem;
padding: 24px 1rem;
margin-bottom: 16px;
}
.i-member-pic-wrap {
height: auto;
margin-bottom: 16px;
}
.i-member-pic {
width: 100%;
}
.i-member-profile-list {
@include list-reset;
}
.i-member-profile-item {
margin-bottom: 8px;
font-size: $font-13;
}
.i-member-item:nth-child(odd) {
clear: both;
}
.i-member-item-inner {}
.i-member-pic-wrap {
padding: 0;
}
// RWD
@media screen and (min-width: $screen-sm) {
.i-member-section {
max-width: 100%;
}
.i-member-item-inner {
background: $theme-gray-lighter;
}
}
@media screen and (min-width: $screen-md) {
.i-member-pic-wrap {
position: relative;
overflow: hidden;
height: 125px;
}
.i-member-pic {
}
}
}
// Show page
.show-member {
font-family: $sub-font;
th, td {
font-size: .8125rem;
}
.member-plugins {
margin: 20px 0;
a {
font-size: .8125rem;
}
}
}

View File

@ -0,0 +1,273 @@
@charset "utf-8";
@import "../initial";
.modules-menu {
font-family: $sub-font;
max-height: none;
li {
white-space: nowrap;
& > a,
& > .fa {
color: $theme-white;
}
&:hover {
& > a,
& > .fa {
color: $theme-white;
text-decoration: none;
}
}
}
.modules-menu-level-0 {
margin: 0;
padding: 0;
list-style: none;
.has-dropdown.level-1.active {
.modules-menu-level-1 {
display: block;
}
}
.has-dropdown.level-2.active {
.modules-menu-level-2 {
display: block;
}
}
.dropdown-toggle-icon {
position: absolute;
top: 8px;
right: 5px;
width: 40px;
height: 40px;
cursor: pointer;
line-height: 40px;
font-size: 1em;
text-align: center;
border-radius: 2px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
display: none;
}
.dropdown-toggle-icon.level-1 {
background-color: lighten($theme-gray, 10%);
}
.dropdown-toggle-icon.level-2 {
background-color: lighten($theme-gray, 10%);
}
& > li {
position: relative;
margin: 0 -15px;
padding: 0 15px;
border-bottom: 1px solid lighten($theme-gray, 5%);
@media (max-width:767px) {
border:0;
width: 50%;
float:left;
margin:0;
}
& > a {
display: block;
padding: 18px 0;
font-family: $main-font;
@media (max-width:767px) {
padding: 10px 0;
}
}
&:hover {
background-color: darken(#d94444,10%);
& > a {
background-color: transparent;
}
@media (min-width: $screen-sm) {
background-color: transparent;
}
}
@media (min-width: $screen-sm) {
float: none;
display: inline-block;
border-left:dotted 1px #fff;
position: relative;
margin: 6px 0;
padding: 0;
border-bottom: none;
// @media (max-width: 985px) {
// border:0;
// }
&:first-child {
margin-left: 0;
border-color:transparent;
}
&:last-child {
margin-right: 0;
.modules-menu-level-1 {
right: 15px;
left: auto;
&:before {
right: 10px;
left: auto;
}
& > li {
padding-right: 15px;
padding-left: 15px;
& > a {
padding-left: 0;
}
}
.modules-menu-level-2 {
right: 100%;
left: auto;
&:before {
right: -6px;
left: auto;
@include arrow("left", 6px, 6px, $theme-gray-darker);
}
}
}
}
& > a {
border-radius: 4px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
padding: 5px 16px;
}
& > .fa {
position: static;
@include size(auto, auto);
padding: 0;
line-height: 1;
font-size: 1em;
cursor: default;
}
&:hover {
& > a {
color:#333;
background-color: #fff;
border-bottom-color: $brand-primary;
}
.modules-menu-level-1 {
display: block;
}
}
}
}
}
.modules-menu-level-1 {
display: none;
min-width: 100%;
margin: 0 -15px;
padding: 15px 0;
background-color: $theme-gray-dark;
list-style: none;
z-index: 1;
& > li {
position: relative;
padding:0 10px;
& + li {
}
& > a {
display: block;
padding: 3px 12px 3px 16px;
font-family: $main-font;
font-size: 15px;
}
&:hover {
& > a,
& > .fa {
color: #333;
text-decoration: underline;
}
}
}
@media (min-width: $screen-sm) {
position: absolute;
left: 15px;
top:35px;
margin-top: -0.5rem;
background-color: #fff;
& > li {
& > a {
text-align: left;
color: #333;
padding-left: 15px;
background:transparent url("/assets/ar1.png") 3px 7px no-repeat;
}
& > .fa {
position: static;
@include size(auto, auto);
padding: 0;
margin-right: 0;
line-height: 1;
float: none;
font-size: 1em;
cursor: default;
}
&:hover {
.modules-menu-level-2 {
display: block;
}
}
}
.fa {
&:before {
content: "\f105";
}
}
}
}
.modules-menu-level-2 {
display: none;
margin: 0;
padding: 0;
background-color: #fff;
list-style: none;
& > li {
& + li {
}
& > a {
color:#333;
display: block;
padding: 15px 50px;
font-family: $main-font;
}
&:hover {
& > a {
color: #333;
text-decoration:underline;
}
}
}
@media (min-width: $screen-sm) {
position: absolute;
top: 0;
left: 100%;
& > li {
padding:0 10px;
& > a {
text-align: left;
padding-left: 15px;
padding: 0.7em 0 0.7em 15px;
background:transparent url("/assets/ar1.png") 3px 16px no-repeat;
}
}
.fa {
&:before {
content: "\f105";
}
}
}
}
}
.has-mobile-dropdown {
.modules-menu {
.dropdown-toggle-icon {
display: block;
}
}
}

View File

@ -0,0 +1,6 @@
@charset "utf-8";
.plugin-show-table th{
text-align: right;
min-width: 80px;
}

View File

@ -0,0 +1,84 @@
@charset "utf-8";
@import "../initial";
// Link MODULES
.widget-link {
// layout-content 下的樣式
.widget-title {
@extend .unity-title;
}
&.widget1,&.widget1s {
.widget-title {
color: #000;
font-size: 18px;
font-weight: 700;
margin: 0;
font-family: "新細明體";
}
ul {
font-size: 12px;
display: flex;
flex-wrap: wrap;
}
.widget-content {
line-height: 2.5em;
border-top: 1px solid #ddd;
list-style: disc inside none;
& + .widget-content {
//border-top: 1px dotted $theme-gray-light;
}
.widget-content-title {
display: inline-block;
color: #000;
padding-right: 2px;
}
}
a.btn-primary {
color: #000;
border-color: transparent;
background-color: transparent;
font-size: 12px;
}
// layout-footer 下的樣式
.layout-footer & {
.widget-content {
line-height: 2em;
border-top-color: $theme-gray;
}
}
}
}
// Link INDEX
.index-link {
.index-title {
@extend .unity-title;
}
&.index1 {
.index-content {
h4 {
margin: 0;
}
& + .index-content {
border-top: 1px dotted $theme-gray-light;
}
.index-context {
display: inline-block;
font-size: 13px;
margin: 0 0 10px 2em;
color: darken($theme-gray-light, 20%);
}
}
.index-content-title {
font-family: $main-font;
font-size: 16px;
background: url(/assets/dt.gif) 0 50% no-repeat;
padding-left: 1.5em;
}
}
}

View File

@ -0,0 +1,25 @@
// Customize this scss file as you need to fit the design
@charset "utf-8";
body {
background: #fff;
color: #000;
font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
line-height: 1.3;
font-size: 12pt;
}
blockquote,
ul {
margin: 0;
padding: 0;
}
ul {
list-style: none;
}
#orbit-bar,
.no-print {
display: none !important;
}

View File

@ -0,0 +1,102 @@
@import url("http://fonts.googleapis.com/css?family=Droid+Sans:400,700");
// Base
@import "base/pagination";
@import "base/orbitbar-override";
@import "base/global";
@import "base/accesskey";
@import "base/go_back_top";
// Layout
@import "layout/header";
@import "layout/slide";
@import "layout/content";
@import "layout/footer";
// Modules
@import "modules/*";
// Widget
@import "widget/breadcrumb";
@import "widget/sitemenu";
.adminstration {
-webkit-column-count: 2;
-webkit-column-gap: 15px;
column-count: 2;
column-gap: 15px;
}
.adminstration-item {
display: flex;
margin: 0 0 10px 0;
border: 1px solid #ccc;
break-inside: avoid;
box-sizing: border-box;
break-inside: avoid;
padding: 10px;
.item-link {
ul { list-style: none; }
& > ul {
padding: 0 1rem;
}
& > ul > li:before {
content: '';
display: inline-block;
background: url(/assets/ar1.png) 0 0 no-repeat;
width: 1em;
height: 0.7em;
}
ul > li > ul { font-size: 0.95rem; }
}
}
.academics {
display: flex;
flex-wrap: wrap;
table { width: calc( 100% / 2 - 2em ); margin: 1em; }
tbody { background: #f6f6f6; }
}
#orbit-bar .orbit-bar-inner .orbit-bar-mobile-sign-language { display: none; }
@media (max-width: 767px) {
.layout-content aside[data-pp="10"] {
width: 37%;
}
.layout-content section[data-pp="1"] {
margin:auto;
background-color: #fff;
margin-bottom: 30px;
width: 100%;
height: 100% !important;
}
.layout-content #ads {
display: flex; flex-wrap: wrap;
}
.sitemenu-wrap img { display: none; }
.adminstration {
-webkit-column-count: 1;
column-count: 1;
}
}
@media (max-width: 580px) {
.layout-content aside[data-pp="10"], .layout-content section[data-pp="9"] {
width: 100%;
}
.academics table { width: 100%; margin: 0; }
.layout-content aside[data-pp="10"] {
height: unset !important;
padding-bottom: 2em;
}
}
html[lang='en'] {
.more, .cycle-next, .cycle-prev, .w-annc__more, .more-wrap { display: none !important; }
}
.layout-content .sitemenu-wrap .widget-link.widget1.active{
@media (max-width:420px){
display: none;
}
}

View File

@ -0,0 +1,20 @@
@charset "utf-8";
@import "../initial";
.widget-breadcrumb {
&.widget1 {
li {
a {
font-size: 0.8125rem;
}
&:last-child {
a {
color: $theme-gray-dark;
pointer-events: none;
}
}
}
}
}

View File

@ -0,0 +1,172 @@
@charset "utf-8";
@import "../initial";
#submenu{
width: 20%;
@media (max-width : 767px){
width: 100%;
}
}
#submenu.col1{
display: none;
}
#page{
width: 79%;
overflow: auto;
@media (max-width : 767px){
width: 100%;
}
#main-content{
overflow: auto;
}
}
#page.col1{
width: 100%;
}
.sitemenu-wrap.sitemenu-vertical {
padding: 10px 0;
@include clearfix;
.sitemenu-title {
display: none;
}
.sitemenu-list {
border-right: 5px solid rgb(224,224,224);
margin: 0;
padding: 0;
list-style: none;
@media (max-width : 767px){
background-color: rgb(224,224,224);
border:0;
}
}
.sitemenu-list.level-1{
border-bottom:5px solid rgb(224,224,224);
}
.sitemenu-item.level-1 {
font-size: 0.8125rem;
position: relative;
color: #333;
font-family: "微軟正黑體";
font-size: 13.8px;
transition:.3s;
@media (max-width : 767px){
display: inline-block;
width: 49%;
}
&:hover {
background:#dfb64c;
transition:.3s;
}
}
.sitemenu-link.level-1 {
padding: 10px .8em;
display: block;
color: #333;
}
.sitemenu-dropdown-toggle {
position: relative;
display:none;
font-size: 0.75rem;
padding: 2px .8em;
cursor: pointer;
}
// sitemenu dropdown
.sitemenu-list.dropdown-menu {
min-width: 100%;
margin-top: 4px;
border: none;
border-radius: .2em;
background: $theme-color-main;
}
.sitemenu-link.level-2 {
color: #fff;
font-size: 0.8125rem;
padding: 4px 0.625rem;
&:hover {
background: lighten($theme-color-second, 5%);
}
}
}
.sitemenu-wrap.sitemenu-horizontal {
padding: 0;
@include clearfix;
.sitemenu-title { display: none; }
.sitemenu-list.level-1 {
margin: 0;
padding: 8px 0 0 8px;
list-style: none;
display: flex;
border: 0;
border-bottom: solid 1px #d4d4d4;
background-color: #eee;
margin-bottom: 20px;
border-radius: 3px 3px 3px 3px;
behavior: url("/assets/ie_support/PIE2/PIE.htc");
flex-wrap: wrap;
}
.sitemenu-item.level-1 {
font-size: 0.8125rem;
position: relative;
color: #333;
font-family: "微軟正黑體";
font-size: 13.8px;
transition:.3s;
margin: 0 8px 8px 0;
&:hover {
background:#fff;
transition:.3s;
}
}
.sitemenu-link.level-1 {
padding: 2px 6px;
display: block;
color: #333;
color: #BC922C;
font-size: 0.75rem;
}
.sitemenu-dropdown-toggle {
position: relative;
display:none;
font-size: 0.75rem;
padding: 2px .8em;
cursor: pointer;
}
// sitemenu dropdown
.sitemenu-list.dropdown-menu {
min-width: 100%;
margin-top: 4px;
border: none;
border-radius: .2em;
background: $theme-color-main;
}
.sitemenu-link.level-2 {
color: #fff;
font-size: 0.8125rem;
padding: 4px 0.625rem;
&:hover {
background: lighten($theme-color-second, 5%);
}
}
}

7
home/footer.html.erb Executable file
View File

@ -0,0 +1,7 @@
<footer class="layout-footer no-print">
<div class="container layout-footer-inner">
<div class="logo"><img src="/assets/logo_s.png" alt=""></div>
<div class="layout-footer-content">{{footer-data}}</div>
<div class="footer-counter"><img src="/assets/rlogo.png" alt="this is footer">{{site-counter}}</div>
</div>
</footer>

35
home/header.html.erb Executable file
View File

@ -0,0 +1,35 @@
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/zh_TW/sdk.js#xfbml=1&version=v2.0";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
<header class="navbar layout-header no-print" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#layout-navigation">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar icon-bar-top"></span>
<span class="icon-bar icon-bar-middle"></span>
<span class="icon-bar icon-bar-bottom"></span>
</button>
<a title="{{site_title_1}}" class="navbar-brand" href="{{home_link_1}}"><img class="site-logo" src="{{logo_url_1}}" alt="Site Logo"></a><script>$(document).ready(function(){var url =$('.site-logo').eq(0).attr('src');if(url == "/assets/default-site-logo.png"){$('.navbar-brand').eq(0).remove();};if($('.navbar-brand').length == 2){$('.site-logo').css('height','auto')};$('.site-logo').eq(0).css('margin-right',0);$('.navbar-brand').css('padding-right',0)})</script><a title="{{site_title}}" class="navbar-brand" href="{{home_link}}"><img class="site-logo" src="{{logo_url}}" alt="Site Logo"> {{site_name}}</a>
<div class="header-nav" >
<a id="accesskey_top" accesskey="Q" href="/<%= "#{locale.to_s}" %>/accesskey" title="Toolbar"></a>
{{header-data}}
</div>
</div>
<div class="collapse navbar-collapse modules-menu" id="layout-navigation">
<a id="accesskey_menu" accesskey="M" href="/<%= "#{locale.to_s}" %>/accesskey" title="Main menu"></a>
<%= render_menu %>
</div>
</div>
</header>
<div class="top"></div>

56
home/index.html.erb Executable file
View File

@ -0,0 +1,56 @@
<!doctype html>
<html lang="<%= I18n.locale.to_s %>" class="orbit">
<head>
<%= render_partial("head") %>
</head>
<body class="page-home">
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MJN7F"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
<%= render_orbit_bar %>
<%= render_header %>
<section class="layout-slide no-print" data-pp="300"></section>
<div class="layout-content">
<a id="accesskey_content" accesskey="C" href="/<%= "#{locale.to_s}" %>/accesskey" title="Content">:::</a>
<div class="layout-content-inner container">
<div class="row">
<section class="layout-content-box col-sm-8" data-pp="1" id="slide"></section>
<aside class="layout-content-box aside col-sm-4" id="pics" >
<aside class="layout-content-box aside col-sm-12" data-pp="2"></aside>
<aside class="layout-content-box aside " data-pp="3">
</aside>
<aside class="layout-content-box aside " data-pp="4"></aside>
</aside>
<section class="layout-content-box col-sm-12" id="tabs">
<section class="layout-content-box " data-pp="5">
</section>
<section class="layout-content-box " id="news">
<aside class="layout-content-box " data-pp="11"></aside>
<section class="layout-content-box " data-pp="6"></section>
</section>
<section class="layout-content-box " id="links">
<section class="layout-content-box " data-pp="7"></section>
<section class="layout-content-box " data-pp="8"></section>
</section>
</section>
<section class="layout-content-box col-sm-12" id="ads">
<section class="layout-content-box col-sm-7" data-pp="9" id="add"></section>
<aside class="layout-content-box aside col-sm-5" data-pp="10" id="ad2"></aside>
</section>
</div>
</div>
</div>
<%= render_footer %>
</body>
</html>

15
home/menu.html.erb Executable file
View File

@ -0,0 +1,15 @@
<ul id="main-nav" class="navbar-right navbar-nav modules-menu-level-0 nav-level-0 no-print" data-menu-level="0">
<li>
<a href="" data-menu-link="true" class="dropdown-toggle">{{link_name}}</a>
<ul class="modules-menu-level-1 nav-level-1" data-menu-level="1">
<li>
<a href="" data-menu-link="true">{{link_name}}</a>
<ul class="modules-menu-level-2 nav-level-2" data-menu-level="2">
<li>
<a href="" data-menu-link="true">{{link_name}}</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>

37
home/page.html.erb Executable file
View File

@ -0,0 +1,37 @@
<!doctype html>
<html lang="<%= I18n.locale.to_s %>" class="orbit">
<head>
<%= render_partial("head") %>
</head>
<body class="internal-page">
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MJN7F"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
<%= render_orbit_bar %>
<%= render_header %>
<section class="layout-slide no-print" data-pp="300"></section>
<div class="layout-content">
<div class="layout-content-inner container">
<div class="breadcrumb-wrap" data-pp="500"></div>
<div class="row">
<aside class="layout-content-box aside col-sm-2" id="submenu" >
<div class="sitemenu-wrap" data-pp="400" id="sitemenu"></div>
<aside class="layout-content-box aside" data-pp="11"></aside>
</aside>
<section class="layout-content-box col-sm-10" id="page">
<div class="page-menu" data-pp="501"></div>
<main id="main-content" data-content="true">
<%= yield %>
</main>
</section>
</div>
<div class="extra" data-pp="600"></div>
</div>
</div>
<%= render_footer %>
</body>
</html>

5
home/pagination.html.erb Executable file
View File

@ -0,0 +1,5 @@
<ul class="pagination pagination-sm" data-pagination="true">
<li class="{{pagination_active}}">
<a href="{{pagination_link}}">{{page_number}}</a>
</li>
</ul>

0
modules/.gitkeep Executable file
View File

View File

@ -0,0 +1,24 @@
<table class="table table-hover table-striped active-index">
<caption>
<h3>{{page-title}}</h3>
</caption>
<thead>
<tr>
<th class="col-md-2">{{th_category}}</th>
<th class="col-md-2">{{th_act_time_range}}</th>
<th class="col-md-5">{{th_title}}</th>
<th class="col-md-2">{{th_sign_up_time_range}}</th>
<th class="col-md-2">{{th_sign_up}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="acts">
<tr>
<td>{{category}}</td>
<td>{{act_start_date}} ~ <br /> {{act_end_date}}</td>
<td>{{title}}</td>
<td>{{sign_start_date}} ~ <br /> {{sign_end_date}}</td>
<td>{{sign_up}}</i></td>
</tr>
</tbody>
</table>
{{pagination_goes_here}}

12
modules/active/info.json Executable file
View File

@ -0,0 +1,12 @@
{
"frontend": [
{
"filename" : "archive_index",
"name" : {
"zh_tw" : "1. 列表",
"en" : "1. List"
},
"thumbnail" : "thumb.png"
}
]
}

BIN
modules/active/thumbs/thumb.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

View File

@ -0,0 +1,79 @@
<div class="w-ad-banner w-ba-banner ad-banner-widget-1 ba-banner-widget-1">
<div class="w-ad-banner__wrap w-ba-banner__wrap cycle-slideshow"
data-list="images"
data-level="0"
data-cycle-slides=".w-ba-banner__slide"
data-cycle-log="false"
data-overlay=".w-ad-banner__overlay_{{subpart-id}}"
data-cycle-auto-height="{{base_image}}"
data-cycle-speed="{{speed}}"
data-cycle-timeout="{{timeout}}"
data-cycle-fx="{{ad_fx}}"
data-cycle-pager=".banner_caption_{{subpart-id}}"
data-pager-template=""
data-pager-active-class="active-slide"
data-cycle-swipe=true
data-cycle-swipe-fx="scrollHorz"
>
<div class="w-ad-banner__slide w-ba-banner__slide {{class}}"
data-link="{{link}}"
data-cycle-title="{{title}}"
data-cycle-desc="{{context}}"
data-overlay-template="<h3>{{title}}</h3><p>{{desc}}</p>"
data-target="{{target}}"
>
<a href="{{link}}" target="{{target}}" title="{{alt_title}}">
<img class="w-ad-banner__image w-ba-banner__image banner-responsive" src="{{image_link}}" alt="{{alt_title}}">
</a>
</div>
</div>
<div class="w-ad-banner__caption ad-overlay w-ba-banner__caption w-ad-banner__caption w-ad-banner__overlay_{{subpart-id}}"></div>
<div class="w-ad-banner__pager-1 w-ba-banner__caption banner-pager banner_caption_{{subpart-id}}" data-list="images" data-level="0">
<li><button title="Slide {{slide_number}}"><span style="display: none;">Slide {{slide_number}}</span></button></li>
</div>
<ul class="controlplay"><a href="javascript:;" class="resume-slide active" title="<%= I18n.t("ad_banner.resume") %>"><i aria-hidden="true" aria-label="<%= I18n.t("ad_banner.resume") %>"></i><p style="display: none;"><%= I18n.t("ad_banner.resume") %></p></a><a href="javascript:;" class="pause-slide" title="<%= I18n.t("ad_banner.pause") %>"><i aria-hidden="true" aria-label="<%= I18n.t("ad_banner.pause") %>"></i><p style="display: none;"><%= I18n.t("ad_banner.pause") %></p></a></ul>
<ul class="button-mid">
<i class="fa fa-angle-left prev-button" aria-label="<%= I18n.t("ad_banner.prev") %>"></i>
<i class="fa fa-angle-right next-button" aria-label="<%= I18n.t("ad_banner.next") %>"></i>
</ul>
</div>
<script>
$('[data-subpart-id="{{subpart-id}}"] .pause-slide').click(function(){
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle('pause');
$(this).addClass('active')
$(this).parents('.controlplay').eq(0).find('.resume-slide').removeClass('active')
});
$('[data-subpart-id="{{subpart-id}}"] .resume-slide').click(function(){
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle('resume');
$(this).addClass('active')
$(this).parents('.controlplay').eq(0).find('.pause-slide').removeClass('active')
});
$('[data-subpart-id="{{subpart-id}}"] .next-button').click(function(){
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle("next");
})
$('[data-subpart-id="{{subpart-id}}"] .prev-button').click(function(){
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle("prev");
})
</script>
<style type="text/css">
.w-ba-banner .controlplay .resume-slide.active i{
color: #32D9C3;
}
.w-ba-banner .controlplay .pause-slide.active i{
color: #ff4500;
}
.w-ba-banner .controlplay{
width: auto;
}
.w-ba-banner .button-mid{
position: absolute;
width: 100%;
height: 0;
top: 50%;
}
.next-button,.prev-button{
cursor: pointer;
}
</style>

View File

@ -0,0 +1,22 @@
<div class="w-ad-banner ad-banner-widget-2">
<div class="w-ad-banner__wrap cycle-slideshow"
data-list="images"
data-level="0"
data-cycle-slides=".w-ad-banner__slide"
data-cycle-log="false"
data-cycle-auto-height="{{base_image}}"
data-cycle-speed="{{speed}}"
data-cycle-timeout="{{timeout}}"
data-cycle-fx="{{ad_fx}}"
data-overlay=".w-ad-banner__caption"
data-pager=".w-ad-banner__pager"
data-pager-template="<li><a href='#'></a></li>"
data-pager-active-class="active-slide"
data-cycle-youtube=true
data-cycle-youtube-autostart=false
>
{{html}}
</div>
<ul class="w-ad-banner__pager"></ul>
</div>

View File

@ -0,0 +1,463 @@
<div class="w-ad-banner ad-banner-widget-2 w-ba-banner ba-banner-widget-1 ba-banner-widget-youtube">
<div class="w-ad-banner__wrap w-ba-banner__wrap cycle-slideshow"
data-list="images"
data-level="0"
data-cycle-slides=".w-ba-banner__slide"
data-cycle-log="false"
data-overlay=".w-ad-banner__overlay_{{subpart-id}}"
data-overlay-template="<h2><span>{{title}}</span></h2>{{desc}}"
data-cycle-auto-height="{{base_image}}"
data-cycle-speed="{{speed}}"
data-cycle-timeout="{{timeout}}"
data-cycle-fx="{{ad_fx}}"
data-pager=".banner_caption_{{subpart-id}}"
data-pager-template="<li><button title='pager'></button></li>"
data-pager-active-class="active-slide"
data-cycle-youtube="true"
data-cycle-youtube-autostart="false"
data-cycle-swipe="true"
data-cycle-prev=".banner_prev"
data-cycle-next=".banner_next"
data-cycle-pause-on-hover="true"
style="padding-bottom: 56.25%;"
>
{{html}}
</div>
<div class="ad-overlay w-ad-banner__overlay_{{subpart-id}}"></div>
<div class="w-ba-banner__caption w-ad-banner__pager-2 banner-pager banner_caption_{{subpart-id}}"></div>
<ul class="controlplay"><a href="javascript:;" class="resume-slide active" title="<%= I18n.t("ad_banner.resume") %>"><i aria-hidden="true" aria-label="<%= I18n.t("ad_banner.resume") %>"></i><p style="display: none;"><%= I18n.t("ad_banner.resume") %></p></a><a href="javascript:;" class="pause-slide" title="<%= I18n.t("ad_banner.pause") %>"><i aria-hidden="true" aria-label="<%= I18n.t("ad_banner.pause") %>"></i><p style="display: none;"><%= I18n.t("ad_banner.pause") %></p></a></ul>
<ul class="button-mid">
<i class="fa fa-angle-left prev-button" aria-label="<%= I18n.t("ad_banner.prev") %>"></i>
<i class="fa fa-angle-right next-button" aria-label="<%= I18n.t("ad_banner.next") %>"></i>
</ul>
</div>
<script type="text/javascript">
var ad_trigger_time;
if (typeof ad_banners_count === 'undefined'){
var ad_banners_count = 0;
}
var control_play_btn_pause = function(){
this.attr('aria-label', '<%= I18n.t("ad_banner.resume") %>');
this.attr('title', '<%= I18n.t("ad_banner.resume") %>');
this.find('p').text('<%= I18n.t("ad_banner.resume") %>');
this.find('i.fa-pause').removeClass('fa-pause').addClass('fa-play');
}
var control_play_btn_play = function(){
this.attr('aria-label', '<%= I18n.t("ad_banner.pause") %>');
this.attr('title', '<%= I18n.t("ad_banner.pause") %>');
this.find('p').text('<%= I18n.t("ad_banner.pause") %>');
this.find('i.fa-play').removeClass('fa-play').addClass('fa-pause');
}
function ad_audio_button(ele,is_stop){
var $self = $(ele);
var button_container = $self.parents('.ba-banner-widget-youtube').eq(0);
var append_class = "";
if (is_stop){
button_container.find('.jarallax-video-audio').remove();
var control_play_btn = $('.jarallax-video-control-play');
if(control_play_btn.length){
control_play_btn_pause.call(control_play_btn);
}
}else{
var control_play_btn = null;
if(window.accessibility_mode){
append_class = " accessibility_mode_btn";
var control_play_btn = $('.jarallax-video-control-play');
if(control_play_btn.length){
control_play_btn_play.call(control_play_btn);
control_play_btn = null;
}else{
control_play_btn = $('<button title="<%= I18n.t("ad_banner.pause") %>" class="jarallax-video-control-play"><i class="fas fa-pause" aria-label="<%= I18n.t("ad_banner.pause") %>" aria-hidden="true"></i><p style=\"display: none;\"><%= I18n.t("ad_banner.pause") %></p></button>');
}
}
var audio_div;
if ($self.hasClass('have-audio')){
audio_div = $('<button title="<%= I18n.t("ad_banner.muted") %>" class="jarallax-video-audio'+append_class+'"><i class="fas fa-volume-up" aria-label="<%= I18n.t("ad_banner.muted") %>" aria-hidden="true"></i><p style=\"display: none;\"><%= I18n.t("ad_banner.muted") %></p></button>');
}else{
audio_div = $('<button title="<%= I18n.t("ad_banner.unmuted") %>" class="jarallax-video-audio'+append_class+'"><i class="fas fa-volume-mute" aria-label="<%= I18n.t("ad_banner.unmuted") %>" aria-hidden="true"></i><p style=\"display: none;\"><%= I18n.t("ad_banner.unmuted") %></p></button>');
}
audio_div.find('p').css('display','none'); //fix CSP
audio_div.click(function(event) {
var currentTime = new Date();
if (ad_trigger_time&&currentTime-ad_trigger_time<500){
return false;
}else{
ad_trigger_time = currentTime;
}
event.stopPropagation();
var $video = $self.find('video');
if ($self.hasClass('have-audio')){
$self.removeClass('have-audio');
$(this).attr('title','<%= I18n.t("ad_banner.unmuted") %>').find('i.fas').attr('class','fas fa-volume-mute').attr('aria-label','<%= I18n.t("ad_banner.unmuted") %>');
}else{
$self.addClass('have-audio');
$(this).attr('title','<%= I18n.t("ad_banner.muted") %>').find('i.fas').attr('class','fas fa-volume-up').attr('aria-label','<%= I18n.t("ad_banner.muted") %>');
}
if ($video.length>0){
$self.jPlayer("mute", !$self.data().jPlayer.options.muted);
}else{//youtube
var player = $self.find('iframe').data("yt_player");
if (player.isMuted()){
player.unMute();
}else{
player.mute();
}
}
});
button_container.find('.jarallax-video-audio').remove();
button_container.append(audio_div);
if(control_play_btn != null){
audio_div.after(control_play_btn);
control_play_btn.click(function(){
var cycle_slideshow = button_container.find('.cycle-slideshow');
var opts = cycle_slideshow.data('cycle.opts');
var active_slide = opts.slides.filter('.'+opts.slideActiveClass);
if(active_slide.length){
var yt_iframe = active_slide.find('iframe');
if(yt_iframe.length == 0){
var jplayer = active_slide.find('.jp-jplayer').data('jPlayer');
if(jplayer){
if(jplayer.htmlElement.video.paused){
jplayer.play();
}else{
jplayer.pause();
}
}
}else{
if(window.yt_players){
var subpart_id = button_container.attr('data-subpart-id');
var subpart_yt_players = window.yt_players[subpart_id];
if(subpart_yt_players){
var yt_player = subpart_yt_players[yt_iframe.attr('id')];
var play_state = yt_player.getPlayerState();
if(play_state == YT.PlayerState.PLAYING || play_state == YT.PlayerState.BUFFERING){
yt_player.pauseVideo();
}else if(play_state == YT.PlayerState.UNSTARTED || play_state == YT.PlayerState.PAUSED || play_state == YT.PlayerState.ENDED || play_state == YT.PlayerState.CUED){
yt_player.playVideo();
play_state = yt_player.getPlayerState();
if(play_state == YT.PlayerState.UNSTARTED || play_state == YT.PlayerState.PAUSED || play_state == YT.PlayerState.ENDED || play_state == YT.PlayerState.CUED){
yt_player.mute().playVideo();
}
}
}
}
}
}
})
}
}
}
if(document.getElementById("youtube-iframe-api") == null){
var tag = document.createElement('script');
tag.setAttribute("id", "youtube-iframe-api");
tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName('script')[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
}
if(window.init_yt_banner == undefined){
function init_yt_banner(banner__slide){
var $banner__slide = $(banner__slide);
if( $banner__slide.data("yt-binded")== "0" ){
$banner__slide.data("yt-binded","1");
var obj = $banner__slide.find("iframe");
obj.attr("id", $banner__slide.data("youtube-id") + "_" + ad_banners_count);
ad_banners_count++;
}
}
}
$("*[data-yt-binded=0]").each(function(){
init_yt_banner(this);
})
if (typeof onYouTubeIframeAPIReady !== 'function'){
$(document).ready(function() {
$(document).on('touchstart click mousedown',".jarallax-video-audio",function(){
$(this).trigger('click');
});
});
if(window.yt_players == undefined)
window.yt_players = {};
function find_out_yt_event_list_key(yt_player){
var defalt_key = 'o';
var all_keys = Object.keys(yt_player).filter(function(s){return s.length == 1});
var prop_nums_thresh = 6;
if(all_keys.indexOf(defalt_key) != -1){
if((yt_player[defalt_key] instanceof Object) && Object.keys(yt_player[defalt_key]).length > prop_nums_thresh){
return defalt_key;
}
}
var event_key;
all_keys.forEach(function(k){
if((yt_player[k] instanceof Object) && Object.keys(yt_player[k]).length > prop_nums_thresh){
event_key = k;
return false;
}
})
return event_key;
}
function find_out_yt_event_list_count_key(yt_player, event_list_key){
var defalt_key = 'v';
var all_keys = Object.keys(yt_player).filter(function(s){return s.length == 1});
var equal_count = yt_player[event_list_key].length;
if(all_keys.indexOf(defalt_key) != -1){
if(yt_player[defalt_key] == equal_count){
return defalt_key;
}
}
var count_key;
all_keys.forEach(function(k){
if(yt_player[k] == equal_count){
count_key = k;
return false;
}
})
return count_key;
}
function find_out_yt_event_list_array_key(event_dict){
var defalt_key = 'i';
var all_keys = Object.keys(event_dict);
if(all_keys.indexOf(defalt_key) != -1){
var tmp = event_dict[defalt_key];
if(Array.isArray(tmp) && tmp.indexOf('onStateChange') != -1){
return defalt_key;
}
}
var array_key;
all_keys.forEach(function(k){
var tmp = event_dict[k];
if(Array.isArray(tmp) && tmp.indexOf('onStateChange') != -1){
array_key = k;
return false;
}
})
return array_key;
}
function find_out_yt_event_relation_key(event_dict, is_obj){ // is_obj = true => store event idx array. false => store whether event init(true or false)
var defalt_key = 'j';
var all_keys = Object.keys(event_dict);
if(all_keys.indexOf(defalt_key) != -1){
var tmp = event_dict[defalt_key];
if((tmp instanceof Object) && tmp['onStateChange']){
if(!is_obj || (tmp['onStateChange'] instanceof Object)){
return defalt_key;
}
}
}
var relation_key;
all_keys.forEach(function(k){
var tmp = event_dict[k];
if((tmp instanceof Object) && tmp['onStateChange']){
if(!is_obj || (tmp['onStateChange'] instanceof Object)){
relation_key = k;
return false;
}
}
})
return relation_key;
}
function onYouTubeIframeAPIReady(){
$(".w-ba-banner").on('cycle-post-initialize', function(){
init_banner(this);
});
function init_banner(banner){
var $banner = $(banner);
$banner.find('.w-ad-banner__slide').each(function(j, banner__slide){
init_yt_banner(banner__slide);
})
var iframes = $banner.find("iframe");
if(iframes.length > 0){
var id = $banner.attr("data-subpart-id");
if(yt_players[id] == undefined)
yt_players[id] = {};
var remove_ids = [];
Object.keys(yt_players[id]).forEach(function(k){
var yt_player = yt_players[id][k];
if($(yt_player.getIframe()).length == 0){
yt_player.destroy();
remove_ids.push(k);
}
})
remove_ids.forEach(function(k){
delete yt_players[id][k];
})
iframes.each(function(i,iframe){
var $iframe = $(iframe);
var yt_id = $iframe.attr("id");
var yt_player = yt_players[id][yt_id];
if(yt_player){
}else{
yt_player = new YT.Player(yt_id, {
events: {
'onReady': function(event){
var yt_player = event.target;
var height = $(yt_player.getIframe()).height();
var banner_wrap = $iframe.parents('.w-ba-banner__wrap').eq(0);
var carousel_wrap = banner_wrap.find(".cycle-carousel-wrap");
if(carousel_wrap.length){
carousel_wrap.css("top","3em");
height += parseInt(carousel_wrap.css('font-size')) * 3;
}
var overlay_in_slide = $iframe.parent().siblings('.ad-overlay,.banner-overlay');
if(overlay_in_slide.length != 0){
height += overlay_in_slide.outerHeight(true);
}
banner_wrap.height(height).css({"padding-bottom":"","padding-top":""});
var init_key = find_out_yt_event_relation_key(yt_player, false);
if(init_key){
delete yt_player[init_key].onStateChange;
}
else{
console.log("{onReady: true, onStateChange: true} missing!");
}
var event_list_key = find_out_yt_event_list_key(yt_player);
if(event_list_key){
var event_dict = yt_player[event_list_key];
var array_key = find_out_yt_event_list_array_key(event_dict);
var count_key = find_out_yt_event_list_count_key(event_dict, array_key);
var relation_key = find_out_yt_event_relation_key(event_dict, true);
var onStateChange_idx = event_dict[relation_key].onStateChange;
onStateChange_idx.reverse();
var event_size = 3;
onStateChange_idx.forEach(function(start_idx){
event_dict[array_key].splice(start_idx,event_size);
});
event_dict[relation_key].onStateChange = [];
event_dict[count_key] = event_dict[array_key].length;
yt_player.addEventListener('onStateChange',onPlayerStateChange);
banner_wrap.trigger('resize');
if(i == 0 && $iframe.parents(".youtube_slide[data-autoplay=\"1\"]").length != 0){
yt_player.mute().playVideo();
}
}else{
console.log("YT player changes its variables!")
}
{{extra_ready_script}}
},
'onStateChange': onPlayerStateChange
}
});
yt_players[id][yt_id] = yt_player;
$iframe.data("yt_player",yt_player);
}
})
}
}
$(".w-ba-banner").each(function(i,banner){
init_banner(banner);
})
}
function onPlayerStateChange(event){
var iframe = $(event.target.getIframe()),
cyclediv = iframe.parents("div.cycle-slideshow");
var widget = cyclediv.parents('.ba-banner-widget-youtube');
if(event.data == YT.PlayerState.PLAYING || event.data == YT.PlayerState.BUFFERING){
cyclediv[0].need_resume = !(cyclediv.hasClass("cycle-paused"));
cyclediv.cycle("pause");
widget.find('.banner-pager,.controlplay,.button-mid,.ad-overlay,.banner-overlay').css('visibility','hidden')
ad_audio_button(iframe.parents(".w-ad-banner__slide").eq(0),false);
}else if(event.data == YT.PlayerState.UNSTARTED || event.data == YT.PlayerState.PAUSED || event.data == YT.PlayerState.ENDED){
if(cyclediv[0].need_resume)
cyclediv.cycle("resume");
widget.find('.banner-pager,.controlplay,.button-mid,.ad-overlay,.banner-overlay').css('visibility','')
ad_audio_button(iframe.parents(".w-ad-banner__slide").eq(0),true);
}
{{extra_state_chnage_script}}
}
}
$(document).ready(function(){
window.onYouTubePlayerAPIReady = function() {
onYouTubeIframeAPIReady.apply(this,arguments);
};
var banner_wrap = $(".w-ba-banner__wrap[data-overlay=\".w-ad-banner__overlay_{{subpart-id}}\"]");
var opts = banner_wrap.data('cycle.opts');
banner_wrap.on('cycle-paused',function(opts){
var controlplay = $(this).nextAll(".controlplay");
if(controlplay.length != 0){
controlplay.find(".resume-slide").removeClass("active");
controlplay.find(".pause-slide").addClass("active");
}
})
banner_wrap.on('cycle-resumed',function(opts){
if(!($(this).data('paused'))){
var controlplay = $(this).nextAll(".controlplay");
if(controlplay.length != 0){
controlplay.find(".resume-slide").addClass("active");
controlplay.find(".pause-slide").removeClass("active");
}
}
})
/*
var height = opts.slides.filter('.active').height() || opts.slides.height();
banner_wrap.height(height)*/
banner_wrap.css("padding-bottom","");
{{extra_document_ready_script}}
$('[data-subpart-id="{{subpart-id}}"] .pause-slide').click(function(){
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").data('paused', true).cycle('pause');
$(this).addClass('active');
$(this).parents('.controlplay').eq(0).find('.resume-slide').removeClass('active');
});
$('[data-subpart-id="{{subpart-id}}"] .resume-slide').click(function(){
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").data('paused', false).cycle('resume');
$(this).addClass('active');
$(this).parents('.controlplay').eq(0).find('.pause-slide').removeClass('active');
});
$('[data-subpart-id="{{subpart-id}}"] .next-button').click(function(){
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle("next");
})
$('[data-subpart-id="{{subpart-id}}"] .prev-button').click(function(){
$(this).parent("ul").parent('.w-ba-banner').find(".cycle-slideshow").cycle("prev");
})
})
</script>
<style type="text/css">
.jarallax-video-audio, .jarallax-video-control-play{
z-index: 201;
font-size: 2em;
color: #FFF;
text-align: center;
position: absolute;
top: 2%;
right: 2%;
height: 66px;
width: 66px;
border-radius: 50%;
line-height: 1.8;
cursor: pointer;
border: 2px solid rgba(255,255,255,.6);
background-color: rgba(0,0,0,.6);
transition: all 1.2s ease;
}
.jarallax-video-control-play{
margin-top: 66px;
}
@media (max-width: 768px){
.jarallax-video-audio, .jarallax-video-control-play{
top: 50%;
}
.jarallax-video-audio.accessibility_mode_btn{
margin-top: -33px;
}
.jarallax-video-control-play{
margin-top: 33px;
}
}
.jarallax-video-audio:hover,.jarallax-video-audio:focus,.jarallax-video-control-play:hover,.jarallax-video-control-play:focus {
color: #FFC500;
transition: all 0.6s ease;
}
.w-ba-banner .controlplay .resume-slide.active i{
color: #32D9C3;
}
.w-ba-banner .controlplay .pause-slide.active i{
color: #ff4500;
}
.w-ba-banner .controlplay{
width: auto;
}
.next-button,.prev-button{
cursor: pointer;
}
</style>

View File

@ -0,0 +1,39 @@
<div class="w-ad-banner ad-banner-widget-3">
<div class="w-ad-banner__wrap cycle-slideshow"
data-list="images"
data-level="0"
data-cycle-slides=".w-ad-banner__slide"
data-cycle-log="false"
data-cycle-auto-height="{{base_image}}"
data-cycle-speed="{{speed}}"
data-cycle-timeout="{{timeout}}"
data-cycle-fx="{{ad_fx}}"
data-pager=".w-ad-banner__pager-3"
data-pager-template="<li><a href='#'></a></li>"
data-pager-active-class="active-slide"
data-cycle-pager=".banner_caption_{{subpart-id}}"
>
<div class="w-ad-banner__slide {{class}}"
data-link="{{link}}"
data-cycle-title="{{title}}"
data-cycle-desc="{{context}}"
data-overlay-template="<h2>{{title}}</h2>{{desc}}"
data-target="{{target}}"
>
<a href="{{link}}" target="{{target}}" title="{{alt_title}}">
<img class="w-ba-banner__image banner-responsive" src="{{image_link}}" alt="{{alt_title}}"width="{{width}}" height="{{height}}">
</a>
</div>
</div>
<ul class="w-ad-banner__pager-3 banner-pager banner_caption_{{subpart-id}}"></ul>
</div>
<script>
$(window).load(function(){
var $els = $('.w-ad-banner__slide a');
for(var i=0;i < $els.length ; i++){
if($els.eq(i).attr('target') == '_blank')
$els.eq(i).find('img').attr('onclick','');
}
})
</script>

View File

@ -0,0 +1,20 @@
<div class="w-ad-banner ad-banner-widget-4">
<div class="w-ad-banner__wrap cycle-slideshow"
data-list="images"
data-level="0"
data-cycle-slides=".w-ad-banner__slide"
data-cycle-log="false"
data-cycle-auto-height="{{base_image}}"
data-cycle-speed="{{speed}}"
data-cycle-timeout="{{timeout}}"
data-cycle-fx="{{ad_fx}}"
>
<div class="w-ad-banner__slide {{class}}"
data-link="{{link}}"
data-target="{{target}}"
>
<img class="w-ad-banner__image banner-responsive" src="{{image_link}}" alt="{{alt_title}}">
</div>
</div>
</div>

45
modules/ad_banner/info.json Executable file
View File

@ -0,0 +1,45 @@
{
"widgets" : [
{
"filename" : "ad_banner_widget1",
"name" : {
"zh_tw" : "1. 橫幅輪播 ( 圖片, 圖片說明文字, 導航圖示 )",
"en" : "1. Carousel ( image, description, navigation )"
},
"thumbnail" : "thumb.png"
},
{
"filename" : "ad_banner_widget2_video",
"name" : {
"zh_tw" : "2. 橫幅輪播 + Youtube影片 ( 圖片, Youtube影片, 導航圖示 )",
"en" : "2. Carousel ( image, Youtube video, navigation )"
},
"thumbnail" : "thumb.png"
},
{
"filename" : "ad_banner_widget2",
"name" : {
"zh_tw" : "2. 橫幅輪播 ( 圖片, 導航圖示 )",
"en" : "2. Carousel ( image, navigation )"
},
"thumbnail" : "thumb.png"
},
{
"filename" : "ad_banner_widget3",
"name" : {
"zh_tw" : "3. 橫幅輪播 ( 圖片, 導航圖示 )",
"en" : "3. Carousel ( image, navigation )"
},
"thumbnail" : "thumb.png"
},
{
"filename" : "ad_banner_widget4",
"name" : {
"zh_tw" : "4. 廣告輪播 ( 圖片 )",
"en" : "4. AD banner ( image )"
},
"thumbnail" : "thumb.png"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@ -0,0 +1,43 @@
<div class="w-annc widget-announcement-1 container">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</a>
<a class="more" href="{{more_url}}">更多+</a>
<a href="#" class="cycle-next"> <i class="fa fa-angle-right"></i></a>
<a href="#" class="cycle-prev"> <i class="fa fa-angle-left"></i></a>
</h3>
<div>
</div>
<div class="w-annc__box">
<ul class="w-annc__list row cycle-slideshow"
data-level="0"
data-list="announcements"
data-cycle-slides="li"
data-cycle-fx="carousel"
data-cycle-carousel-visible="2"
data-cycle-timeout=0
data-cycle-next=".cycle-next"
data-cycle-prev=".cycle-prev"
data-cycle-carousel-fluid=true
>
<li class="w-annc__item col-sm-3">
<div class="w-annc__img-wrap bullseye">
<img class="w-annc__img" src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
</div>
<h4 class="w-annc__entry-title">
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label {{status-class}}">{{status}}</span>
</span>
</h4>
</li>
</ul>
</div>

View File

@ -0,0 +1,22 @@
<div class="w-annc widget-announcement-10">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<ul class="w-annc__list" data-level="0" data-list="announcements">
<li class="w-annc__item row">
<h4 class="w-annc__entry-title col-sm-9">
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<span class="w-annc__postdate-wrap col-sm-3" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="w-annc__postdate">{{postdate}}</span>
</span>
</li>
</ul>
<div class="w-annc__more-wrap clearfix">
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}">Read more</a>
</div>
</div>

View File

@ -0,0 +1,23 @@
<div class="w-annc widget-announcement-11">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span> <a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}">更多+</a>
</h3>
<ul class="w-annc__list" data-level="0" data-list="announcements">
<li class="w-annc__item row">
<span date-format="%Y-%m-%d">
<span class="w-annc__postdate">{{postdate}}</span>
</span>
<span >
<span class="w-annc__category">{{category}}</span>
</span>
<span>
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</span>
</li>
</ul>
</div>

View File

@ -0,0 +1,27 @@
<div class="w-annc widget-announcement-12">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<table class="w-annc__table table">
<thead>
<tr>
<th class="w-annc__th w-annc__th--title">{{title-head}}</th>
<th class="w-annc__th w-annc__th--date">{{date-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td>
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
<td class="w-annc__postdate" date-format="%Y-%m-%d">{{postdate}}</td>
</tr>
</tbody>
</table>
<div class="w-annc__more-wrap clearfix">
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}">Read more</a>
</div>
</div>

View File

@ -0,0 +1,27 @@
<div class="w-annc widget-announcement-13">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<table class="w-annc__table table">
<thead>
<tr>
<th class="w-annc__th w-annc__th--date">{{date-head}}</th>
<th class="w-annc__th w-annc__th--title">{{title-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td class="w-annc__postdate" date-format="%Y-%m-%d">{{postdate}}</td>
<td>
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
</tr>
</tbody>
</table>
<div class="w-annc__more-wrap clearfix">
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}">Read more</a>
</div>
</div>

View File

@ -0,0 +1,29 @@
<div class="w-annc widget-announcement-14">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<div class="w-annc__inner row">
<div class="w-annc__img-wrap col-xs-4 bullseye">
<img class="w-annc__img" src="{{main_picture}}" alt="{{main_picture_description}}" title="{{main_picture_description}}">
</div>
<ul class="w-annc__list col-xs-8" data-level="0" data-list="announcements">
<li class="w-annc__item">
<div class="w-annc__content row">
<h4 class="w-annc__entry-title col-xs-9">
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label {{status-class}}">{{status}}</span>
</span>
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<span class="w-annc__postdate-wrap col-xs-3" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="w-annc__postdate">{{postdate}}</span>
</span>
</div>
</li>
</ul>
</div>
<div class="w-annc__more-wrap clearfix">
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}">Read more</a>
</div>
</div>

View File

@ -0,0 +1,32 @@
<div class="w-annc widget-announcement-11">
<div class="search_block" style="padding-left: 1.5em;font-size: 0.8em;">
<span style=" float: left; padding-right: 2em; ">Search</span>
<% p = Page.where(:module=> "announcement",:categories=>["all"]).first %>
<form accept-charset="UTF-8" action="<%=p.nil? ? "{{more_url}}" : "/#{I18n.locale}#{p.url}"%>" method="get"><div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓"></div>
<p>
<input id="search_query" name="keywords" placeholder="搜尋" type="text">
<input type="submit" value="搜尋">
</p>
</form>
</div>
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<ul class="w-annc__list" data-level="0" data-list="announcements">
<li class="w-annc__item row">
<span class="w-annc__postdate-wrap col-sm-3" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="w-annc__postdate">{{postdate}}</span>
</span>
<h4 class="w-annc__entry-title col-sm-9">
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
</li>
</ul>
<div class="w-annc__more-wrap clearfix">
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}"><%= (I18n.locale.to_s =="zh_tw") ? "更多最新消息" : "More NEWS" %></a>
</div>
</div>

View File

@ -0,0 +1,171 @@
<div class="w-annc widget-announcement-4 w-annc widget-announcement-15" style="position:relative;">
<div class="w-annc__more-wrap clearfix">
<h2 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h2>
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}"><%= (I18n.locale.to_s =="zh_tw") ? "更多最新消息" : "More NEWS" %></a>
</div>
<div style="position: absolute;top: 50%;bottom: 50%;width:100%;">
<button class="btn-left" title = "<%= (I18n.locale.to_s =="zh_tw") ? "上一張" : "prev" %>" style="float: left;height: 2.5em; width: 2.5em;background: border: 0;background-size: contain;position: absolute;transition:.3s; left: 0.6%;color: #ffffff;
background: rgba(0, 0, 0, 0.2);
border-radius: 50%;
border: none;"><i class="fa fa-angle-left prev-button" aria-hidden="true" style="font-size: 1.5rem;"></i><span style="display: none;"><%= (I18n.locale.to_s =="zh_tw") ? "上一張" : "prev" %></span></button>
<button class="btn-right" title = "<%= (I18n.locale.to_s =="zh_tw") ? "下一張" : "next" %>" style="float: right;;height: 2.5em; width: 2.5em;background-size: contain;border: 0;position: absolute;transition:.3s;right: 0.6%;color: #ffffff;
background: rgba(0, 0, 0, 0.2);
border-radius: 50%;
border: none;"><i class="fa fa-angle-right next-button" aria-hidden="true" style="font-size: 1.5rem;"></i><span style="display: none;"><%= (I18n.locale.to_s =="zh_tw") ? "下一張" : "next" %></span></button>
</div>
<ul class="w-annc__list row" data-level="0" data-list="announcements">
<li class="w-annc__item col-md-4">
<div class="w-annc__img-wrap bullseye">
<img class="w-annc__img" src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
<div class="transitionfade"></div>
</div>
<div class="w-annc__content-wrap">
<div class="w-annc__meta">
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label {{status-class}}">{{status}}</span>
</span>
<span class="w-annc__postdate-wrap" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="w-annc__postdate">{{postdate}}</span>
</span>
<span class="w-annc__category-wrap">
<i class="fa fa-tasks"></i>
<span class="w-annc__category">{{category}}</span>
</span>
</div>
<h4 class="w-annc__entry-title">
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<p class="w-annc__subtitle">{{subtitle}}</p>
</div>
</li>
</ul>
</div>
<script src="//code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
function combineul_{{subpart-id}}(){
var parents = $('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list').parent();
parents.each(function(i,v){
for(var i=1;i<$(v).find('ul.w-annc__list').length;i++)
$(v).find('ul.w-annc__list').eq(0).find('>li').eq(-1).after($(v).find('ul.w-annc__list').eq(i).html());
var ullength = $(v).find('ul.w-annc__list').length;
for(var i = 1;i < ullength;i++)
$(v).find('ul.w-annc__list').eq(-1).remove();
})
};
var num;
var lilength = $('[data-subpart-id=\"{{subpart-id}}\"] li.w-annc__item').length;
function reorganize_{{subpart-id}}(num){
var uls = $('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list').toArray();
var currentul = uls.findIndex(function(v){
return $(v).hasClass("active") && !$(v).hasClass("hidden_item");
})
if(currentul == -1)
currentul = 0;
var li_active_idx = 0;
if(currentul != 0)
li_active_idx = $(uls[currentul]).find("li.w-annc__item").eq(0).index("li.w-annc__item");
combineul_{{subpart-id}}();
var parents = $('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list').parent();
parents.each(function(i,v){
var lilength = $(v).find('li.w-annc__item').length;
var ul_length = Math.ceil(lilength/num);
for(var ii=1;ii< ul_length;ii++){
var clone_ul = $(v).find('ul.w-annc__list').eq(-1).clone();
clone_ul.empty();
clone_ul.removeClass("active");
clone_ul.css("display","");
$(v).find('ul.w-annc__list').eq(-1).after(clone_ul.prop("outerHTML"));
var lihtml="";
if(ii != (ul_length-1)){
for(var j=0;j<num;j++){
lihtml += $(v).find('li.w-annc__item').eq(ii*num+j).prop("outerHTML");
};
}else{
for(var j=0;j< lilength - num *(ul_length-1) ;j++){
lihtml += $(v).find('li.w-annc__item').eq(ii*num+j).prop("outerHTML");
};
};
$(v).find('ul.w-annc__list').eq(-1).html(lihtml);
}
if(ul_length != 1 )
for(var i=0;i< lilength -num ; i++)
$(v).find('ul.w-annc__list').eq(0).find("li.w-annc__item").eq(num).remove();
})
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list').css("display","none");
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list').css('padding','0 1.125em');
$('[data-subpart-id=\"{{subpart-id}}\"] button').css('z-index','10');
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list >li').css('width','calc('+100/num+'% - '+20/16+'em)'); //20px=>li的margin
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list >li').css('float','left');
var active_ul = $("[data-subpart-id=\"{{subpart-id}}\"] li.w-annc__item").eq(li_active_idx).parents("ul.w-annc__list");
active_ul.addClass("active");
active_ul.removeClass("hidden_item");
active_ul.css("display","");
};
$(window).resize(function(){
if($(window).width()>1024){
reorganize_{{subpart-id}}(3);
num=3;
}else if($(window).width()>576){
reorganize_{{subpart-id}}(2);
num=2;
}else{
reorganize_{{subpart-id}}(1);
num=1;
}
})
$(document).ready(function(){
if($(window).width()>1024){
reorganize_{{subpart-id}}(3);
num=3;
}else if($(window).width()>576){
reorganize_{{subpart-id}}(2);
num=2;
}else{
reorganize_{{subpart-id}}(1);
num=1;
}
var flag=false;
$('[data-subpart-id=\"{{subpart-id}}\"] .btn-left').click(function(){
if(!flag){
var uls = $('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list:not(.hidden_item)').toArray();
var ul_length = uls.length;
var currentul = uls.findIndex(function(v){
return $(v).hasClass("active");
})
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list').css('display','none');
if(currentul - 1 < 0)
currentul += ul_length;
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list:not(.hidden_item)').removeClass("active");
var active_item = $(uls[currentul-1]);
active_item.addClass("active");
active_item.find("li").css("display","block");
flag=true;
$("body").css("overflow-x","hidden");
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list.active').eq(0).effect("slide", { direction: "left", mode: 'show', duration: 500},function(){$("body").css("overflow-x","");flag=false;});
};
});
$('[data-subpart-id=\"{{subpart-id}}\"] .btn-right').click(function(){
var lilength = $('[data-subpart-id=\"{{subpart-id}}\"] li.w-annc__item').length;
if(!flag){
var uls = $('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list:not(.hidden_item)').toArray();
var ul_length = uls.length;
var currentul = uls.findIndex(function(v){
return $(v).hasClass("active");
})
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list').css('display','none');
if(currentul + 1 > ul_length - 1)
currentul -= ul_length;
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list:not(.hidden_item)').removeClass("active");
var active_item = $(uls[currentul+1]);
active_item.addClass("active");
active_item.find("li").css("display","block");
flag=true;
$("body").css("overflow-x","hidden");
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list.active').eq(0).effect("slide", { direction: "right", mode: 'show', duration: 500},function(){$("body").css("overflow-x","");flag=false;});
};
});
});
</script>

View File

@ -0,0 +1,86 @@
<div class="w-annc widget-announcement-18">
<div class="w-annc__more-wrap clearfix">
<h2 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h2>
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}"><%= (I18n.locale.to_s =="zh_tw") ? "更多最新消息" : "More NEWS" %></a>
</div>
<ul class="w-annc__list row" data-level="0" data-list="announcements">
<li class="w-annc__item col-md-4">
<div class="w-annc__img-wrap">
<a href="{{link_to_show}}" title="{{title}}">
<img class="w-annc__img" src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
</a>
</div>
<div class="w-annc__content-wrap">
<h4 class="w-annc__entry-title">
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<div class="w-annc__subtitle">{{subtitle}}</div>
<div class="w-annc_read_more"><a href="{{link_to_show}}" title="{{title}}">{{read_more_text}}</a></div>
</div>
</li>
</ul>
</div>
<style type="text/css">
.widget-announcement-18 [data-list="announcements"] li > *{
background: #ffffff;
width: 100%;
float: left;
}
.widget-announcement-18 [data-list="announcements"] .w-annc__img{
width: 100%;
}
.widget-announcement-18 [data-list="announcements"] .w-annc__content-wrap{
padding: 0 1em;
}
.widget-announcement-18 .w-annc__title {
line-height: 1.3;
font-size: 1.2rem;
}
.widget-announcement-18 .w-annc__widget-title {
float: left;
}
.widget-announcement-18 .w-annc__more {
margin-top: 1.5em;
}
.widget-announcement-18 .w-annc__list > .w-annc__item:nth-child(3n+1) {
clear: both;
}
.widget-announcement-18 li.w-annc__item{
float: left;
}
.widget-announcement-18 .w-annc__img-wrap {
padding: 0 0 1em 0;
}
.w-annc_read_more{
display: inline-block;
padding: 1em;
}
.w-annc_read_more a{
float: left;
background: #4a97c2;
color: #ffffff;
padding: 0 0.5em;
border-radius: 0.3em;
border: 0.5em solid #4a97c2;
}
.w-annc__subtitle {
padding-bottom: 0.3em;
}
.w-annc_read_more a:hover{
background: #327397;
border: 0.5em solid #327397;
}
</style>
<script type="text/javascript">
$(document).ready(function(){
$("[data-subpart-id=\"{{subpart-id}}\"] .w-annc__subtitle").each(function(i,v){
var subtitle = $(v).text();
if(subtitle.length > 15){
$(v).text(subtitle.slice(0,15) + "...");
}
})
})
</script>

View File

@ -0,0 +1,47 @@
<div class="w-annc widget-announcement-16">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<div class="slide-button">
<button class="cycle-prev btn btn-warning"> <i class="fa fa-angle-left"></i></button>
<button class="cycle-next btn btn-warning"> <i class="fa fa-angle-right"></i></button>
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}"><%= (I18n.locale.to_s =="zh_tw") ? "更多+" : "More NEWS" %></a>
</div>
<div class="w-annc__wrap cycle-slideshow"
data-level="0"
data-list="announcements"
data-cycle-slides=".w-annc__item"
data-cycle-fx="carousel"
data-cycle-carousel-fluid=true
data-cycle-pause-on-hover="true"
data-cycle-speed="200"
data-cycle-carousel-visible="1"
data-cycle-prev=".cycle-prev"
data-cycle-next=".cycle-next"
data-cycle-swipe=true
data-cycle-swipe-fx="carousel"
>
<div class="w-annc__item">
<div class="w-annc__img-wrap">
<img class="w-annc__img" src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
</div>
<div class="w-annc__content-wrap">
<div class="w-annc__meta">
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label {{status-class}}">{{status}}</span>
</span>
<span class="w-annc__postdate-wrap" date-format="%Y-%m-%d">
<span class="w-annc__postdate">{{postdate}}</span>
</span>
</div>
<h4 class="w-annc__entry-title">
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,11 @@
<div class="w-annc widget-announcement-2">
<ul class="w-annc__list" data-level="0" data-list="announcements">
<li class="w-annc__item row" id="controlli">
<div class="w-annc__img-wrap col-sm-4 bullseye">
<img class="w-annc__img" src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
</div>
</li>
</ul>
</div>

View File

@ -0,0 +1,32 @@
<div class="i-annc index-announcement-18">
<style>
@media (min-width: 992px){
li.i-annc__item.col-md-4:nth-child(3n) {
clear: left;
}
}
</style>
<h3 class="i-annc__page-title">{{widget-title}}</h3>
<ul class="i-annc__list row" data-level="0" data-list="announcements">
<li class="i-annc__item col-md-4">
<div class="i-annc__content-wrap">
<div class="i-annc__meta">
<span class="i-annc__postdate-wrap" date-format="%Y-%m-%d">
<span class="i-annc__postdate">{{postdate}}</span>
</span>
<span class="i-annc__category-wrap">
<i class="fa fa-clone"></i>
<span class="i-annc__category">{{category}}</span>
</span>
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
<span class="i-annc__status label status {{status-class}}">{{status}}</span>
</span>
</div>
<h4 class="i-annc__entry-title">
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<p class="i-annc__subtitle">{{subtitle}}</p>
</div>
</li>
</ul>
</div>

View File

@ -0,0 +1,20 @@
<div class="w-annc widget-announcement-3">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<div class="slider">
<ul class="w-annc__list" data-level="0" id="sliderul"data-list="announcements">
<li class="w-annc__item" id="sliderli">
<div class="w-annc__img-wrap bullseye">
<img class="w-annc__img" src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
</div>
<h4 class="w-annc__entry-title">
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
</li>
</ul>
</div>
</div>

View File

@ -0,0 +1,108 @@
<div class="w-annc widget-announcement-4">
<div class="w-annc__more-wrap clearfix">
<h2 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h2>
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}"><%= (I18n.locale.to_s =="zh_tw") ? "更多最新消息" : "More NEWS" %></a>
</div>
<ul class="w-annc__list row" data-level="0" data-list="announcements">
<li class="w-annc__item col-md-4">
<div class="w-annc__img-wrap bullseye">
<img class="w-annc__img" src="{{img_src}}" alt="{{img_description}}" title="{{img_description}}">
</div>
<div class="w-annc__content-wrap">
<div class="w-annc__meta">
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label {{status-class}}">{{status}}</span>
</span>
<span class="w-annc__postdate-wrap" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="w-annc__postdate">{{postdate}}</span>
</span>
<span class="w-annc__category-wrap">
<i class="fa fa-tasks"></i>
<span class="w-annc__category">{{category}}</span>
</span>
</div>
<h4 class="w-annc__entry-title">
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<p class="w-annc__subtitle">{{subtitle}}</p>
</div>
</li>
</ul>
</div>
<style type="text/css">
[data-subpart-id="{{subpart-id}}"] .bullseye{
overflow: hidden;
}
</style>
<script>
function combineul_{{subpart-id}}(){
var parents = $('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list').parent();
parents.each(function(i,v){
for(var i=1;i<$(v).find('ul.w-annc__list').length;i++)
$(v).find('ul.w-annc__list').eq(0).find('>li').eq(-1).after($(v).find('ul.w-annc__list').eq(i).html());
var ullength = $(v).find('ul.w-annc__list').length;
for(var i = 1;i < ullength;i++)
$(v).find('ul.w-annc__list').eq(-1).remove();
})
};
var num;
var lilength = $('[data-subpart-id=\"{{subpart-id}}\"] li.w-annc__item').length;
function reorganize_{{subpart-id}}(num){
combineul_{{subpart-id}}();
var parents = $('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list').parent();
parents.each(function(i,v){
var lilength = $(v).find('li.w-annc__item').length;
var ul_length = Math.ceil(lilength/num);
for(var ii=1;ii< ul_length;ii++){
var clone_ul = $(v).find('ul.w-annc__list').eq(-1).clone();
clone_ul.empty();
clone_ul.removeClass("active");
clone_ul.css("display","");
$(v).find('ul.w-annc__list').eq(-1).after(clone_ul.prop("outerHTML"));
var lihtml="";
if(ii != (ul_length-1)){
for(var j=0;j<num;j++){
lihtml += $(v).find('li.w-annc__item').eq(ii*num+j).prop("outerHTML");
};
}else{
for(var j=0;j< lilength - num *(ul_length-1) ;j++){
lihtml += $(v).find('li.w-annc__item').eq(ii*num+j).prop("outerHTML");
};
};
$(v).find('ul.w-annc__list').eq(-1).html(lihtml);
}
if(ul_length != 1 )
for(var i=0;i< lilength -num ; i++)
$(v).find('ul.w-annc__list').eq(0).find("li.w-annc__item").eq(num).remove();
})
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list >li').css('width','calc('+100/num+'% - '+20/16+'em)'); //20px=>li的margin
$('[data-subpart-id=\"{{subpart-id}}\"] ul.w-annc__list >li').css("float","left");
};
$(window).resize(function(){
if($(window).width()>1024){
reorganize_{{subpart-id}}(3);
num=3;
}else if($(window).width()>576){
reorganize_{{subpart-id}}(2);
num=2;
}else{
reorganize_{{subpart-id}}(1);
num=1;
}
})
$(document).ready(function(){
if($(window).width()>1024){
reorganize_{{subpart-id}}(3);
num=3;
}else if($(window).width()>576){
reorganize_{{subpart-id}}(2);
num=2;
}else{
reorganize_{{subpart-id}}(1);
num=1;
}
})
</script>

View File

@ -0,0 +1,31 @@
<div class="w-annc widget-announcement-5">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<ul class="w-annc__list row" data-level="0" data-list="announcements">
<li class="w-annc__item">
<div class="w-annc__content-wrap">
<div class="w-annc__meta">
<span class="w-annc__postdate-wrap" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="w-annc__postdate">{{postdate}}</span>
</span>
<span class="w-annc__category-wrap">
<i class="fa fa-tasks"></i>
<span class="w-annc__category">{{category}}</span>
</span>
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
</div>
<h4 class="w-annc__entry-title">
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<p class="w-annc__subtitle">{{subtitle}}</p>
</div>
</li>
</ul>
<div class="w-annc__more-wrap clearfix">
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}">Read more</a>
</div>
</div>

View File

@ -0,0 +1,26 @@
<div class="w-annc widget-announcement-6">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<ul class="w-annc__list" data-level="0" data-list="announcements">
<li class="w-annc__item row">
<span class="w-annc__category-wrap col-sm-2">
<i class="fa fa-tasks"></i>
<span class="w-annc__category">{{category}}</span>
</span>
<h4 class="w-annc__entry-title col-sm-8">
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<span class="w-annc__postdate-wrap col-sm-2" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="w-annc__postdate">{{postdate}}</span>
</span>
</li>
</ul>
<div class="w-annc__more-wrap clearfix">
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}">Read more</a>
</div>
</div>

View File

@ -0,0 +1,26 @@
<div class="w-annc widget-announcement-7">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<ul class="w-annc__list" data-level="0" data-list="announcements">
<li class="w-annc__item row">
<span class="w-annc__postdate-wrap col-sm-2" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="w-annc__postdate">{{postdate}}</span>
</span>
<h4 class="w-annc__entry-title col-sm-8">
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<span class="w-annc__category-wrap col-sm-2">
<i class="fa fa-tasks"></i>
<span class="w-annc__category">{{category}}</span>
</span>
</li>
</ul>
<div class="w-annc__more-wrap clearfix">
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}">Read more</a>
</div>
</div>

View File

@ -0,0 +1,29 @@
<div class="w-annc widget-announcement-8">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<table class="w-annc__table table">
<thead>
<tr>
<th class="w-annc__th w-annc__th--category">{{category-head}}</th>
<th class="w-annc__th w-annc__th--title">{{title-head}}</th>
<th class="w-annc__th w-annc__th--date">{{date-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td class="w-annc__category">{{category}}</td>
<td>
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
<td class="w-annc__postdate" date-format="%Y-%m-%d">{{postdate}}</td>
</tr>
</tbody>
</table>
<div class="w-annc__more-wrap clearfix">
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}">Read more</a>
</div>
</div>

View File

@ -0,0 +1,29 @@
<div class="w-annc widget-announcement-9">
<h3 class="w-annc__widget-title">
<span>{{widget-title}}</span>
</h3>
<table class="w-annc__table table">
<thead>
<tr>
<th class="w-annc__th w-annc__th--date">{{date-head}}</th>
<th class="w-annc__th w-annc__th--title">{{title-head}}</th>
<th class="w-annc__th w-annc__th--category">{{category-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td class="w-annc__postdate" date-format="%Y-%m-%d">{{postdate}}</td>
<td>
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="w-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
<td class="w-annc__category">{{category}}</td>
</tr>
</tbody>
</table>
<div class="w-annc__more-wrap clearfix">
<a class="w-annc__more btn btn-primary pull-right" href="{{more_url}}">Read more</a>
</div>
</div>

View File

@ -0,0 +1,25 @@
<div class="i-annc index-announcement-1 {{display}}">
<h3 class="i-annc__page-title">{{page-title}}</h3>
<table class="i-annc__table table table-striped">
<thead>
<tr>
<th class="i-annc__th i-annc__th--category">{{category-head}}</th>
<th class="i-annc__th i-annc__th--title">{{title-head}}</th>
<th class="i-annc__th i-annc__th--date">{{date-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td class="i-annc__category">{{category}}</td>
<td>
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
<td><span class="i-annc__postdate" date-format="%Y-%m-%d">{{postdate}}</span></td>
</tr>
</tbody>
</table>
</div>
{{pagination_goes_here}}

View File

@ -0,0 +1,22 @@
<div class="i-annc index-announcement-10">
<h3 class="i-annc__page-title">{{page-title}}</h3>
<ul class="i-annc__list" data-level="0" data-list="announcements">
<li class="i-annc__item row">
<span class="i-annc__postdate-wrap col-sm-2" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="i-annc__postdate">{{postdate}}</span>
</span>
<h4 class="i-annc__entry-title col-sm-8">
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
<span class="i-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<span class="i-annc__category-wrap col-sm-2">
<i class="fa fa-tasks"></i>
<span class="i-annc__category">{{category}}</span>
</span>
</li>
</ul>>
</div>
{{pagination_goes_here}}

View File

@ -0,0 +1,18 @@
<div class="i-annc index-announcement-11">
<h3 class="i-annc__page-title">{{page-title}}</h3>
<ul class="i-annc__list" data-level="0" data-list="announcements">
<li class="i-annc__item row">
<h4 class="i-annc__entry-title col-sm-9">
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
<span class="i-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
<span class="i-annc__postdate-wrap col-sm-3" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="i-annc__postdate">{{postdate}}</span>
</span>
</li>
</ul>
</div>
{{pagination_goes_here}}

View File

@ -0,0 +1,18 @@
<div class="i-annc index-announcement-12">
<h3 class="i-annc__page-title">{{page-title}}</h3>
<ul class="i-annc__list" data-level="0" data-list="announcements">
<li class="i-annc__item row">
<span class="i-annc__postdate-wrap col-sm-3" date-format="%Y-%m-%d">
<i class="fa fa-calendar-o"></i>
<span class="i-annc__postdate">{{postdate}}</span>
</span>
<h4 class="i-annc__entry-title col-sm-9">
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
<span class="i-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</h4>
</li>
</ul>
</div>
{{pagination_goes_here}}

View File

@ -0,0 +1,23 @@
<div class="i-annc index-announcement-13 {{display}}">
<h3 class="i-annc__page-title">{{page-title}}</h3>
<table class="i-annc__table table table-striped">
<thead>
<tr>
<th class="i-annc__th i-annc__th--title">{{title-head}}</th>
<th class="i-annc__th i-annc__th--date">{{date-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td>
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
<span class="i-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
<td class="i-annc__postdate" date-format="%Y-%m-%d">{{postdate}}</td>
</tr>
</tbody>
</table>
</div>
{{pagination_goes_here}}

View File

@ -0,0 +1,23 @@
<div class="i-annc index-announcement-14 {{display}}">
<h3 class="i-annc__page-title">{{page-title}}</h3>
<table class="i-annc__table table table-striped">
<thead>
<tr>
<th class="i-annc__th i-annc__th--date">{{date-head}}</th>
<th class="i-annc__th i-annc__th--title">{{title-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td class="i-annc__postdate" date-format="%Y-%m-%d">{{postdate}}</td>
<td>
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
<span class="i-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
</tr>
</tbody>
</table>
</div>
{{pagination_goes_here}}

View File

@ -0,0 +1,25 @@
<div class="i-annc index-announcement-15 {{display}}">
<h3 class="i-annc__page-title">{{page-title}}</h3>
<table class="i-annc__table table table-striped">
<thead>
<tr>
<th class="i-annc__th i-annc__th--date">{{date-head}}</th>
<th class="i-annc__th i-annc__th--title">{{title-head}}</th>
<th class="i-annc__th i-annc__th--category">{{view-count-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td class="i-annc__postdate" date-format="%Y-%m-%d">{{postdate}}</td>
<td>
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
<span class="i-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
<td class="i-annc__category">{{view_count}}</td>
</tr>
</tbody>
</table>
</div>
{{pagination_goes_here}}

View File

@ -0,0 +1,39 @@
<div class="i-annc index-announcement-16 {{display}}">
<h3 class="i-annc__page-title">{{page-title}}</h3>
<table class="i-annc__table table table-striped">
<thead>
<tr>
<th class="i-annc__th i-annc__th--date">{{date-head}}</th>
<th class="i-annc__th i-annc__th--title">{{title-head}}</th>
<th class="i-annc__th i-annc__th--title">{{link-head}}</th>
<th class="i-annc__th i-annc__th--title">{{file-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td class="i-annc__postdate" date-format="%Y-%m-%d">{{postdate}}</td>
<td>
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
<span class="i-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
<td>
<ul data-list="bulletin_links" data-level="1">
<li>
<a class="i-annc__title" href="{{link_url}}">{{link_title}}</a>
</li>
</ul>
</td>
<td>
<ul data-list="bulletin_files" data-level="1">
<li>
<a class="i-annc__title" href="{{file_url}}">{{file_title}}</a>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
</div>
{{pagination_goes_here}}

View File

@ -0,0 +1,27 @@
<div class="i-annc index-announcement-1 {{display}}">
<h1 class="i-annc__page-title">{{page-title}}</h1>
<table class="i-annc__table table table-striped">
<thead>
<tr>
<th class="i-annc__th i-annc__th--category">{{category-head}}</th>
<th class="i-annc__th i-annc__th--title">{{title-head}}</th>
<th class="i-annc__th i-annc__th--date">{{date-head}}</th>
<th class="i-annc__th i-annc__th--department">{{department-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td class="i-annc__category">{{category}}</td>
<td class="i-annc__content">
<span class="i-annc__status-wrap" data-list="statuses" data-level="1">
<span class="i-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
<td class="i-annc__postdate"><span class="i-annc__postdate-content" date-format="%Y-%m-%d">{{postdate}}</span></td>
<td class="i-annc__department"><span class="i-annc__department-content">{{department}}</span></td>
</tr>
</tbody>
</table>
</div>
{{pagination_goes_here}}

View File

@ -0,0 +1,27 @@
<div class="i-annc index-announcement-1 {{display}}">
<h3 class="i-annc__page-title">{{page-title}}</h3>
<table class="i-annc__table table table-striped">
<thead>
<tr>
<th class="i-annc__th i-annc__th--category">{{category-head}}</th>
<th class="i-annc__th i-annc__th--title">{{title-head}}</th>
<th class="i-annc__th i-annc__th--date">{{date-head}}</th>
<th class="i-annc__th i-annc__th--category">{{view-count-head}}</th>
</tr>
</thead>
<tbody data-level="0" data-list="announcements">
<tr>
<td class="i-annc__category">{{category}}</td>
<td>
<span class="w-annc__status-wrap" data-list="statuses" data-level="1">
<span class="w-annc__status label status {{status-class}}">{{status}}</span>
</span>
<a class="i-annc__title" href="{{link_to_show}}">{{title}}</a>
</td>
<td><span class="i-annc__postdate" date-format="%Y-%m-%d">{{postdate}}</span></td>
<td class="i-annc__category">{{view_count}}</td>
</tr>
</tbody>
</table>
</div>
{{pagination_goes_here}}

Some files were not shown because too many files have changed in this diff Show More