diff --git a/pixelegg/css/pixelegg.css b/pixelegg/css/pixelegg.css index 2e52886a3e..73aa8413f5 100644 --- a/pixelegg/css/pixelegg.css +++ b/pixelegg/css/pixelegg.css @@ -1316,7 +1316,6 @@ option:checked { ----------------------------------*/ .ui-widget { font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif; - font-size: 87.5%; font-size: 1.1em; } .ui-widget .ui-widget { @@ -1327,7 +1326,6 @@ option:checked { .ui-widget textarea, .ui-widget button { font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif; - font-size: 87.5%; font-size: 1em; } .ui-widget-content { @@ -1406,6 +1404,7 @@ option:checked { border-bottom: solid 1px 1px; border-color: #bfbfbf; background: #ffc200; + background-image: none; font-weight: bold; color: #808080; } @@ -1788,7 +1787,7 @@ button[id*="edit"], input[type="submit"][id="edit"]:hover, input[type="button"][id="edit"]:hover, button[id*="edit"]:hover { - background-image: url('../images/bearbeiten.png'); + background-image: url('../images/edit.png'); border: 1px solid rgba(0, 0, 0, 0.15); -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.5); -moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.5); @@ -1818,7 +1817,7 @@ button[id*="copy"]:hover { background-size: 20px auto; width: auto; height: 32px; - background-image: url('../images/kopieren.png'); + background-image: url('../images/copy.png'); } input[type="submit"][id*="cancel"], input[type="button"][id*="cancel"], @@ -1837,7 +1836,7 @@ button[id*="cancel"]:hover { background-size: 20px auto; width: auto; height: 32px; - background-image: url('../images/abbruch.png'); + background-image: url('../images/cancel.png'); } input[type="submit"][id*="delete"], input[type="button"][id*="delete"], @@ -1853,7 +1852,7 @@ button[id*="delete"] { background-size: 20px auto; width: auto; height: 32px; - background-image: url('../images/loeschen.png'); + background-image: url('../images/delete.png'); margin-left: 3em; } input[type="submit"][id*="delete"]:hover, @@ -1870,7 +1869,7 @@ button[id*="delete"]:hover { background-size: 20px auto; width: auto; height: 32px; - background-image: url('../images/loeschen.png'); + background-image: url('../images/delete.png'); background-color: red !important; } input[type="submit"][id*="apply"], @@ -1890,7 +1889,7 @@ button[id*="apply"]:hover { background-size: 20px auto; width: auto; height: 32px; - background-image: url('../images/uebernehmen.png'); + background-image: url('../images/apply.png'); } input[type="submit"][id*="save"], input[type="button"][id*="save"], @@ -1909,7 +1908,7 @@ button[id*="save"]:hover { background-size: 20px auto; width: auto; height: 32px; - background-image: url('../images/speichern.png'); + background-image: url('../images/save.png'); } input[type="submit"][id*="search"], input[type="button"][id*="search"], @@ -1925,7 +1924,7 @@ button[id*="search"] { background-size: 20px auto; width: auto; height: 32px; - background-image: url('../images/erweiterte-suche.png'); + background-image: url('../images/advanced-search.png'); } input[type="submit"][id*="search"]:hover, input[type="button"][id*="search"]:hover, @@ -1933,7 +1932,7 @@ button[id*="search"]:hover { -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); -moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); - background-image: url('../images/erweiterte-suche.png'); + background-image: url('../images/advanced-search.png'); } input[type="submit"][id*="search"]:focus, input[type="button"][id*="search"]:focus, @@ -1954,7 +1953,7 @@ button.button_ok { background-size: 20px auto; width: auto; height: 32px; - background-image: url('../images/speichern.png'); + background-image: url('../images/save.png'); } button.button_ok:hover { border: 1px solid rgba(0, 0, 0, 0.15); @@ -1968,7 +1967,7 @@ button.button_ok:hover { background-size: 20px auto; width: auto; height: 32px; - background-image: url('../images/speichern.png'); + background-image: url('../images/save.png'); } button#infolog-index_legacy_actions { border: 1px solid rgba(0, 0, 0, 0.15); @@ -1982,13 +1981,13 @@ button#infolog-index_legacy_actions { background-size: 20px auto; width: auto; height: 32px; - background-image: url('../images/bearbeiten.png'); + background-image: url('../images/edit.png'); } button#infolog-index_legacy_actions:hover { -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); -moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); - background-image: url('../images/bearbeiten.png'); + background-image: url('../images/edit.png'); } button#infolog-index_legacy_actions:focus { -webkit-box-shadow: inset 1px 2px 1px rgba(0, 0, 0, 0.5); @@ -2228,12 +2227,11 @@ body { padding: 0px !important; width: 100% !important; height: 100% !important; + font-size: 87.5%; } body, -td, textarea { font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif; - font-size: 87.5%; } #egw_fw_basecontainer { position: fixed; @@ -2242,7 +2240,6 @@ textarea { padding: 0px; margin: 0px; font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif; - font-size: 87.5%; background-color: #fafafa; } input { @@ -2346,6 +2343,7 @@ h6 { line-height: 1.5em; margin: 1.5em 0 0; } +/*table {font-size: 16px;}*/ @media screen and (-webkit-min-device-pixel-ratio: 0) { select { padding-right: 18px; @@ -2412,7 +2410,6 @@ div.selectbox-wrapper ul li { appearance: none; cursor: pointer; font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif; - font-size: 87.5%; font-size: 1.2em; font-weight: normal; height: 30px; @@ -2985,17 +2982,17 @@ table.egwGridView_outer thead tr th.optcol .selectcols { border-radius: 3px; right: 15px; border: 1px solid; - background-image: url(../images/selectcols.png); + background-image: url(../images/selectcols_small.png); background-position: center center; background-repeat: no-repeat; - background-size: 16px 16px; + background-size: 9px 9px; display: inline-block; - width: 20px; - height: 20px; + width: 10px; + height: 10px; margin: 0; padding: 0; } -table.egwGridView_outer thead tr th.optcol .selectcols:active { +table.egwGridView_outer thead tr th.optcol .selectcols:hover { background-color: #b3b3b3 !important; -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); -moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); @@ -3004,12 +3001,16 @@ table.egwGridView_outer thead tr th.optcol .selectcols:active { -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; - background-image: url(../images/slideup.png); + background-image: url(../images/selectcols.png); background-position: center center; background-repeat: no-repeat; + background-size: 19px 19px; + display: inline-block; + width: 20px; + height: 20px; } table.egwGridView_grid { - font-size: 1.4em; + font-size: 0.95em; background-color: #ffffff; border-spacing: 0px 1px; width: 100%; @@ -3038,25 +3039,22 @@ table.egwGridView_grid tbody tr.focused { } table.egwGridView_grid tr { border-bottom: 1px solid; - border-color: #f0f0f0; + border-color: #808080; } table.egwGridView_grid tr:hover { - background-color: #f0f0f0; + background-color: #0c5da5; } table.egwGridView_grid tr:active { - background-color: #d9d9d9; + background-color: #0c5da5; } table.egwGridView_grid tr td { border-left: 0px; border-right: 0px; padding: 0.3em 0 1em 0.3em; - /*legacy*/ -} -table.egwGridView_grid tr td:hover { - background-color: #679fd2; + /*&:hover {background-color: @egw_color_2_e;} legacy*/ } table.egwGridView_grid tr td:active { - background-color: #0c5da5; + /*background-color: @egw_color_2_a;*/ -webkit-box-shadow: inset 1px 2px 1px rgba(0, 0, 0, 0.5); -moz-box-shadow: inset 1px 2px 1px rgba(0, 0, 0, 0.5); box-shadow: inset 1px 2px 1px rgba(0, 0, 0, 0.5); @@ -3215,6 +3213,84 @@ table.egwGridView_grid tr td:active { -moz-box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.1); box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.1); } +/*Supersized*/ +* { + margin: 0; + padding: 0; +} +img { + border: medium none; +} +#supersized-loader { + background: url("../images/progress.gif") no-repeat scroll center center rgba(0, 0, 0, 0); + height: 60px; + left: 50%; + margin: -30px 0 0 -30px; + position: absolute; + text-indent: -999em; + top: 50%; + width: 60px; + z-index: 0; +} +#supersized { + display: block; + height: 100%; + left: 0; + overflow: hidden; + position: fixed; + top: 0; + width: 100%; + z-index: -999; +} +#supersized img { + border: medium none; + display: none; + height: auto; + outline: medium none; + position: relative; + width: auto; +} +#supersized.speed img { + image-rendering: -moz-crisp-edges; +} +#supersized.quality img { + image-rendering: optimizequality; +} +#supersized li { + background: none repeat scroll 0 0 #111111; + display: block; + height: 100%; + left: 0; + list-style: none outside none; + overflow: hidden; + position: fixed; + top: 0; + width: 100%; + z-index: -30; +} +#supersized a { + display: block; + height: 100%; + width: 100%; +} +#supersized li.prevslide { + z-index: -20; +} +#supersized li.activeslide { + z-index: -10; +} +#supersized li.image-loading { + background: url("../images/progress.gif") no-repeat scroll center center #111111; + height: 100%; + width: 100%; +} +#supersized li.image-loading img { + visibility: hidden; +} +#supersized li.prevslide img, +#supersized li.activeslide img { + display: inline; +} /** * EGroupware: Stylite Pixelegg template * @@ -3877,7 +3953,6 @@ div#calendar-container div.calendar table { padding: 0.3em; background-color: #fafafa; font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif; - font-size: 87.5%; } div#calendar-container div.calendar table thead .title { background-color: #ffc200; @@ -4262,12 +4337,17 @@ div.et2_container div table.et2_grid tbody tr td .et2_tabbox .et2_tabs table.et2 cursor: pointer; margin-right: 2ex; padding: 5px; + height: 25px; + padding: 0px 0px 0px 3px; } .filters select:hover { -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); -moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); } +.filters select option { + font-size: 0.9em; +} .filters select#cat_id { margin-left: 1em; } @@ -4282,6 +4362,7 @@ div.et2_container div table.et2_grid tbody tr td .et2_tabbox .et2_tabs table.et2 -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; + height: 25px; } .filters input:hover { -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); @@ -4379,6 +4460,63 @@ div.et2_container div table.et2_grid tbody tr td .et2_tabbox .et2_tabs table.et2 -moz-transition: opacity 0.5s ease-out; -webkit-transition: opacity; } +/** + * EGroupware: Stylite Pixelegg template + * + * dialog + * + * Please do NOT change css-files directly, instead change less-files and compile them! + * + * @link http://www.egroupware.org + * @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License + * @author Stefan Reinhard + * @package pixelegg + * @version $Id$ + */ +/*Main div*/ +table.dialog-main-view { + width: 100%; +} +/*Header Part*/ +tr.dialog-header { + background-color: #0c5da5; + color: #ffffff; +} +tr.dialog-header td { + padding: 5px; +} +tr.dialog-header table.et2_grid { + border-top: none; +} +tr.dialog-header .et2_label { + color: #ffffff; +} +/*Main*/ +/*Buttons / Toolbar*/ +.dialog-footer-toolbar { + background-color: #679fd2; +} +.dialog-footer-toolbar td { + padding: 10px; +} +.dialog-footer-toolbar button { + height: 32px; +} +.dialog-footer-toolbar label { + border-color: #bfbfbf; + width: auto; + margin: 0.5em 0em 0.5em 0; + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; + border: 1px solid rgba(0, 0, 0, 0.15); + -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.5); + -moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.5); + box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.5); + color: #000000; + background-color: #f0f0f0; + padding: 5px 5px 8px 0; +} /* Printing */ diff --git a/pixelegg/css/pixelegg.less b/pixelegg/css/pixelegg.less index 3fde639b1f..d000d4a2be 100644 Binary files a/pixelegg/css/pixelegg.less and b/pixelegg/css/pixelegg.less differ diff --git a/pixelegg/css/supersized.css b/pixelegg/css/supersized.css new file mode 100755 index 0000000000..99e7b73cc2 --- /dev/null +++ b/pixelegg/css/supersized.css @@ -0,0 +1,32 @@ +/* + + Supersized - Fullscreen Slideshow jQuery Plugin + Version : 3.2.7 + Site : www.buildinternet.com/project/supersized + + Author : Sam Dunn + Company : One Mighty Roar (www.onemightyroar.com) + License : MIT License / GPL License + +*/ + +* { margin:0; padding:0; } +/*body { height:100%; background: inherit;}*/ +img { border:none; } + +#supersized-loader { position:absolute; top:50%; left:50%; z-index:0; width:60px; height:60px; margin:-30px 0 0 -30px; text-indent:-999em; background:url(../img/progress.gif) no-repeat center center;} + +#supersized { display:block; position:fixed; left:0; top:0; overflow:hidden; z-index:-999; height:100%; width:100%; } +#supersized img { width:auto; height:auto; position:relative; display:none; outline:none; border:none; } +#supersized.speed img { -ms-interpolation-mode:nearest-neighbor; image-rendering: -moz-crisp-edges; } /*Speed*/ +#supersized.quality img { -ms-interpolation-mode:bicubic; image-rendering: optimizeQuality; } /*Quality*/ + +#supersized li { display:block; list-style:none; z-index:-30; position:fixed; overflow:hidden; top:0; left:0; width:100%; height:100%; background:#111; } +#supersized a { width:100%; height:100%; display:block; } +#supersized li.prevslide { z-index:-20; } +#supersized li.activeslide { z-index:-10; } +#supersized li.image-loading { background:#111 url(../img/progress.gif) no-repeat center center; width:100%; height:100%; } +#supersized li.image-loading img{ visibility:hidden; } +#supersized li.prevslide img, #supersized li.activeslide img{ display:inline; } + +// \ No newline at end of file diff --git a/pixelegg/images/advanced-search.png b/pixelegg/images/advanced-search.png new file mode 100755 index 0000000000..f7e3f68b11 Binary files /dev/null and b/pixelegg/images/advanced-search.png differ diff --git a/pixelegg/images/abbruch.png b/pixelegg/images/cancel.png old mode 100644 new mode 100755 similarity index 100% rename from pixelegg/images/abbruch.png rename to pixelegg/images/cancel.png diff --git a/pixelegg/images/kopieren.png b/pixelegg/images/copy.png old mode 100644 new mode 100755 similarity index 100% rename from pixelegg/images/kopieren.png rename to pixelegg/images/copy.png diff --git a/pixelegg/images/speichern.png b/pixelegg/images/save.png old mode 100644 new mode 100755 similarity index 100% rename from pixelegg/images/speichern.png rename to pixelegg/images/save.png diff --git a/pixelegg/images/search-ext.png b/pixelegg/images/search-ext.png new file mode 100755 index 0000000000..f7e3f68b11 Binary files /dev/null and b/pixelegg/images/search-ext.png differ diff --git a/pixelegg/images/selectcols_small.png b/pixelegg/images/selectcols_small.png new file mode 100755 index 0000000000..57bd26f88e Binary files /dev/null and b/pixelegg/images/selectcols_small.png differ diff --git a/pixelegg/js/login.js b/pixelegg/js/login.js new file mode 100755 index 0000000000..90a9fd762d --- /dev/null +++ b/pixelegg/js/login.js @@ -0,0 +1,23 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + + +egw_LAB.wait(function() { + $j(document).ready(function() { + $j('img.bgfade').hide(); +var dg_H = $j(window).height(); +var dg_W = $j(window).width(); +$j('#wrap').css({'height':dg_H,'width':dg_W}); + function anim() { + $j("#wrap img.bgfade").first().appendTo('#wrap').fadeOut(1500); + $j("#wrap img").first().fadeIn(1500); + setTimeout(anim, 3000); + } +anim(); +$j(window).resize(function(){window.location.href=window.location.href}); + }); + +}); \ No newline at end of file diff --git a/pixelegg/js/slider.js b/pixelegg/js/slider.js index 78abb3b2ab..8ab568f267 100644 --- a/pixelegg/js/slider.js +++ b/pixelegg/js/slider.js @@ -3,7 +3,7 @@ egw_LAB.wait(function() { $j('#slidetoggle').click(function(){ - if ($j('#egw_fw_header').css('display') == 'none') { + if ($j('#egw_fw_header').css('display') === 'none') { $j("#egw_fw_header").slideToggle(); $j("#egw_fw_topmenu_addons").animate({'margin-right': '20px'},1000); $j("#egw_fw_sidebar").animate({'top':'57px'},1000); diff --git a/pixelegg/js/supersized.3.2.7.js b/pixelegg/js/supersized.3.2.7.js new file mode 100755 index 0000000000..424dbe6c16 --- /dev/null +++ b/pixelegg/js/supersized.3.2.7.js @@ -0,0 +1,931 @@ +/* + + Supersized - Fullscreen Slideshow jQuery Plugin + Version : 3.2.7 + Site : www.buildinternet.com/project/supersized + + Author : Sam Dunn + Company : One Mighty Roar (www.onemightyroar.com) + License : MIT License / GPL License + +*/ + +(function($){ + + /* Place Supersized Elements + ----------------------------*/ + $(document).ready(function() { + $('body').append('
'); + }); + + + $.supersized = function(options){ + + /* Variables + ----------------------------*/ + var el = '#supersized', + base = this; + // Access to jQuery and DOM versions of element + base.$el = $(el); + base.el = el; + vars = $.supersized.vars; + // Add a reverse reference to the DOM object + base.$el.data("supersized", base); + api = base.$el.data('supersized'); + + base.init = function(){ + // Combine options and vars + $.supersized.vars = $.extend($.supersized.vars, $.supersized.themeVars); + $.supersized.vars.options = $.extend({},$.supersized.defaultOptions, $.supersized.themeOptions, options); + base.options = $.supersized.vars.options; + + base._build(); + }; + + + /* Build Elements + ----------------------------*/ + base._build = function(){ + // Add in slide markers + var thisSlide = 0, + slideSet = '', + markers = '', + markerContent, + thumbMarkers = '', + thumbImage; + + while(thisSlide <= base.options.slides.length-1){ + //Determine slide link content + switch(base.options.slide_links){ + case 'num': + markerContent = thisSlide; + break; + case 'name': + markerContent = base.options.slides[thisSlide].title; + break; + case 'blank': + markerContent = ''; + break; + } + + slideSet = slideSet+'
  • '; + + if(thisSlide == base.options.start_slide-1){ + // Slide links + if (base.options.slide_links)markers = markers+''; + // Slide Thumbnail Links + if (base.options.thumb_links){ + base.options.slides[thisSlide].thumb ? thumbImage = base.options.slides[thisSlide].thumb : thumbImage = base.options.slides[thisSlide].image; + thumbMarkers = thumbMarkers+'
  • '; + }; + }else{ + // Slide links + if (base.options.slide_links) markers = markers+''; + // Slide Thumbnail Links + if (base.options.thumb_links){ + base.options.slides[thisSlide].thumb ? thumbImage = base.options.slides[thisSlide].thumb : thumbImage = base.options.slides[thisSlide].image; + thumbMarkers = thumbMarkers+'
  • '; + }; + } + thisSlide++; + } + + if (base.options.slide_links) $(vars.slide_list).html(markers); + if (base.options.thumb_links && vars.thumb_tray.length){ + $(vars.thumb_tray).append(''); + } + + $(base.el).append(slideSet); + + // Add in thumbnails + if (base.options.thumbnail_navigation){ + // Load previous thumbnail + vars.current_slide - 1 < 0 ? prevThumb = base.options.slides.length - 1 : prevThumb = vars.current_slide - 1; + $(vars.prev_thumb).show().html($("").attr("src", base.options.slides[prevThumb].image)); + + // Load next thumbnail + vars.current_slide == base.options.slides.length - 1 ? nextThumb = 0 : nextThumb = vars.current_slide + 1; + $(vars.next_thumb).show().html($("").attr("src", base.options.slides[nextThumb].image)); + } + + base._start(); // Get things started + }; + + + /* Initialize + ----------------------------*/ + base._start = function(){ + + // Determine if starting slide random + if (base.options.start_slide){ + vars.current_slide = base.options.start_slide - 1; + }else{ + vars.current_slide = Math.floor(Math.random()*base.options.slides.length); // Generate random slide number + } + + // If links should open in new window + var linkTarget = base.options.new_window ? ' target="_blank"' : ''; + + // Set slideshow quality (Supported only in FF and IE, no Webkit) + if (base.options.performance == 3){ + base.$el.addClass('speed'); // Faster transitions + } else if ((base.options.performance == 1) || (base.options.performance == 2)){ + base.$el.addClass('quality'); // Higher image quality + } + + // Shuffle slide order if needed + if (base.options.random){ + arr = base.options.slides; + for(var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x); // Fisher-Yates shuffle algorithm (jsfromhell.com/array/shuffle) + base.options.slides = arr; + } + + /*-----Load initial set of images-----*/ + + if (base.options.slides.length > 1){ + if(base.options.slides.length > 2){ + // Set previous image + vars.current_slide - 1 < 0 ? loadPrev = base.options.slides.length - 1 : loadPrev = vars.current_slide - 1; // If slide is 1, load last slide as previous + var imageLink = (base.options.slides[loadPrev].url) ? "href='" + base.options.slides[loadPrev].url + "'" : ""; + + var imgPrev = $(''); + var slidePrev = base.el+' li:eq('+loadPrev+')'; + imgPrev.appendTo(slidePrev).wrap('').parent().parent().addClass('image-loading prevslide'); + + imgPrev.load(function(){ + $(this).data('origWidth', $(this).width()).data('origHeight', $(this).height()); + base.resizeNow(); // Resize background image + }); // End Load + } + } else { + // Slideshow turned off if there is only one slide + base.options.slideshow = 0; + } + + // Set current image + imageLink = (api.getField('url')) ? "href='" + api.getField('url') + "'" : ""; + var img = $(''); + + var slideCurrent= base.el+' li:eq('+vars.current_slide+')'; + img.appendTo(slideCurrent).wrap('').parent().parent().addClass('image-loading activeslide'); + + img.load(function(){ + base._origDim($(this)); + base.resizeNow(); // Resize background image + base.launch(); + if( typeof theme != 'undefined' && typeof theme._init == "function" ) theme._init(); // Load Theme + }); + + if (base.options.slides.length > 1){ + // Set next image + vars.current_slide == base.options.slides.length - 1 ? loadNext = 0 : loadNext = vars.current_slide + 1; // If slide is last, load first slide as next + imageLink = (base.options.slides[loadNext].url) ? "href='" + base.options.slides[loadNext].url + "'" : ""; + + var imgNext = $(''); + var slideNext = base.el+' li:eq('+loadNext+')'; + imgNext.appendTo(slideNext).wrap('').parent().parent().addClass('image-loading'); + + imgNext.load(function(){ + $(this).data('origWidth', $(this).width()).data('origHeight', $(this).height()); + base.resizeNow(); // Resize background image + }); // End Load + } + /*-----End load initial images-----*/ + + // Hide elements to be faded in + base.$el.css('visibility','hidden'); + $('.load-item').hide(); + + }; + + + /* Launch Supersized + ----------------------------*/ + base.launch = function(){ + + base.$el.css('visibility','visible'); + $('#supersized-loader').remove(); //Hide loading animation + + // Call theme function for before slide transition + if( typeof theme != 'undefined' && typeof theme.beforeAnimation == "function" ) theme.beforeAnimation('next'); + $('.load-item').show(); + + // Keyboard Navigation + if (base.options.keyboard_nav){ + $(document.documentElement).keyup(function (event) { + + if(vars.in_animation) return false; // Abort if currently animating + if($(document.activeElement).is("input, textarea")) return false; // Abort if active element is an input or a textarea. + + // Left Arrow or Down Arrow + if ((event.keyCode == 37) || (event.keyCode == 40)) { + clearInterval(vars.slideshow_interval); // Stop slideshow, prevent buildup + base.prevSlide(); + + // Right Arrow or Up Arrow + } else if ((event.keyCode == 39) || (event.keyCode == 38)) { + clearInterval(vars.slideshow_interval); // Stop slideshow, prevent buildup + base.nextSlide(); + + // Spacebar + } else if (event.keyCode == 32 && !vars.hover_pause) { + clearInterval(vars.slideshow_interval); // Stop slideshow, prevent buildup + base.playToggle(); + } + + }); + } + + // Pause when hover on image + if (base.options.slideshow && base.options.pause_hover){ + $(base.el).hover(function() { + if(vars.in_animation) return false; // Abort if currently animating + vars.hover_pause = true; // Mark slideshow paused from hover + if(!vars.is_paused){ + vars.hover_pause = 'resume'; // It needs to resume afterwards + base.playToggle(); + } + }, function() { + if(vars.hover_pause == 'resume'){ + base.playToggle(); + vars.hover_pause = false; + } + }); + } + + if (base.options.slide_links){ + // Slide marker clicked + $(vars.slide_list+'> li').click(function(){ + + index = $(vars.slide_list+'> li').index(this); + targetSlide = index + 1; + + base.goTo(targetSlide); + return false; + + }); + } + + // Thumb marker clicked + if (base.options.thumb_links){ + $(vars.thumb_list+'> li').click(function(){ + + index = $(vars.thumb_list+'> li').index(this); + targetSlide = index + 1; + + api.goTo(targetSlide); + return false; + + }); + } + + // Start slideshow if enabled + if (base.options.slideshow && base.options.slides.length > 1){ + + // Start slideshow if autoplay enabled + if (base.options.autoplay && base.options.slides.length > 1){ + vars.slideshow_interval = setInterval(base.nextSlide, base.options.slide_interval); // Initiate slide interval + }else{ + vars.is_paused = true; // Mark as paused + } + + //Prevent navigation items from being dragged + $('.load-item img').bind("contextmenu mousedown",function(){ + return false; + }); + + } + + // Adjust image when browser is resized + $(window).resize(function(){ + base.resizeNow(); + }); + + }; + + + /* Resize Images + ----------------------------*/ + base.resizeNow = function(){ + + return base.$el.each(function() { + // Resize each image seperately + $('img', base.el).each(function(){ + + thisSlide = $(this); + var ratio = (thisSlide.data('origHeight')/thisSlide.data('origWidth')).toFixed(2); // Define image ratio + + // Gather browser size + var browserwidth = base.$el.width(), + browserheight = base.$el.height(), + offset; + + /*-----Resize Image-----*/ + if (base.options.fit_always){ // Fit always is enabled + if ((browserheight/browserwidth) > ratio){ + resizeWidth(); + } else { + resizeHeight(); + } + }else{ // Normal Resize + if ((browserheight <= base.options.min_height) && (browserwidth <= base.options.min_width)){ // If window smaller than minimum width and height + + if ((browserheight/browserwidth) > ratio){ + base.options.fit_landscape && ratio < 1 ? resizeWidth(true) : resizeHeight(true); // If landscapes are set to fit + } else { + base.options.fit_portrait && ratio >= 1 ? resizeHeight(true) : resizeWidth(true); // If portraits are set to fit + } + + } else if (browserwidth <= base.options.min_width){ // If window only smaller than minimum width + + if ((browserheight/browserwidth) > ratio){ + base.options.fit_landscape && ratio < 1 ? resizeWidth(true) : resizeHeight(); // If landscapes are set to fit + } else { + base.options.fit_portrait && ratio >= 1 ? resizeHeight() : resizeWidth(true); // If portraits are set to fit + } + + } else if (browserheight <= base.options.min_height){ // If window only smaller than minimum height + + if ((browserheight/browserwidth) > ratio){ + base.options.fit_landscape && ratio < 1 ? resizeWidth() : resizeHeight(true); // If landscapes are set to fit + } else { + base.options.fit_portrait && ratio >= 1 ? resizeHeight(true) : resizeWidth(); // If portraits are set to fit + } + + } else { // If larger than minimums + + if ((browserheight/browserwidth) > ratio){ + base.options.fit_landscape && ratio < 1 ? resizeWidth() : resizeHeight(); // If landscapes are set to fit + } else { + base.options.fit_portrait && ratio >= 1 ? resizeHeight() : resizeWidth(); // If portraits are set to fit + } + + } + } + /*-----End Image Resize-----*/ + + + /*-----Resize Functions-----*/ + + function resizeWidth(minimum){ + if (minimum){ // If minimum height needs to be considered + if(thisSlide.width() < browserwidth || thisSlide.width() < base.options.min_width ){ + if (thisSlide.width() * ratio >= base.options.min_height){ + thisSlide.width(base.options.min_width); + thisSlide.height(thisSlide.width() * ratio); + }else{ + resizeHeight(); + } + } + }else{ + if (base.options.min_height >= browserheight && !base.options.fit_landscape){ // If minimum height needs to be considered + if (browserwidth * ratio >= base.options.min_height || (browserwidth * ratio >= base.options.min_height && ratio <= 1)){ // If resizing would push below minimum height or image is a landscape + thisSlide.width(browserwidth); + thisSlide.height(browserwidth * ratio); + } else if (ratio > 1){ // Else the image is portrait + thisSlide.height(base.options.min_height); + thisSlide.width(thisSlide.height() / ratio); + } else if (thisSlide.width() < browserwidth) { + thisSlide.width(browserwidth); + thisSlide.height(thisSlide.width() * ratio); + } + }else{ // Otherwise, resize as normal + thisSlide.width(browserwidth); + thisSlide.height(browserwidth * ratio); + } + } + }; + + function resizeHeight(minimum){ + if (minimum){ // If minimum height needs to be considered + if(thisSlide.height() < browserheight){ + if (thisSlide.height() / ratio >= base.options.min_width){ + thisSlide.height(base.options.min_height); + thisSlide.width(thisSlide.height() / ratio); + }else{ + resizeWidth(true); + } + } + }else{ // Otherwise, resized as normal + if (base.options.min_width >= browserwidth){ // If minimum width needs to be considered + if (browserheight / ratio >= base.options.min_width || ratio > 1){ // If resizing would push below minimum width or image is a portrait + thisSlide.height(browserheight); + thisSlide.width(browserheight / ratio); + } else if (ratio <= 1){ // Else the image is landscape + thisSlide.width(base.options.min_width); + thisSlide.height(thisSlide.width() * ratio); + } + }else{ // Otherwise, resize as normal + thisSlide.height(browserheight); + thisSlide.width(browserheight / ratio); + } + } + }; + + /*-----End Resize Functions-----*/ + + if (thisSlide.parents('li').hasClass('image-loading')){ + $('.image-loading').removeClass('image-loading'); + } + + // Horizontally Center + if (base.options.horizontal_center){ + $(this).css('left', (browserwidth - $(this).width())/2); + } + + // Vertically Center + if (base.options.vertical_center){ + $(this).css('top', (browserheight - $(this).height())/2); + } + + }); + + // Basic image drag and right click protection + if (base.options.image_protect){ + + $('img', base.el).bind("contextmenu mousedown",function(){ + return false; + }); + + } + + return false; + + }); + + }; + + + /* Next Slide + ----------------------------*/ + base.nextSlide = function(){ + + if(vars.in_animation || !api.options.slideshow) return false; // Abort if currently animating + else vars.in_animation = true; // Otherwise set animation marker + + clearInterval(vars.slideshow_interval); // Stop slideshow + + var slides = base.options.slides, // Pull in slides array + liveslide = base.$el.find('.activeslide'); // Find active slide + $('.prevslide').removeClass('prevslide'); + liveslide.removeClass('activeslide').addClass('prevslide'); // Remove active class & update previous slide + + // Get the slide number of new slide + vars.current_slide + 1 == base.options.slides.length ? vars.current_slide = 0 : vars.current_slide++; + + var nextslide = $(base.el+' li:eq('+vars.current_slide+')'), + prevslide = base.$el.find('.prevslide'); + + // If hybrid mode is on drop quality for transition + if (base.options.performance == 1) base.$el.removeClass('quality').addClass('speed'); + + + /*-----Load Image-----*/ + + loadSlide = false; + + vars.current_slide == base.options.slides.length - 1 ? loadSlide = 0 : loadSlide = vars.current_slide + 1; // Determine next slide + + var targetList = base.el+' li:eq('+loadSlide+')'; + if (!$(targetList).html()){ + + // If links should open in new window + var linkTarget = base.options.new_window ? ' target="_blank"' : ''; + + imageLink = (base.options.slides[loadSlide].url) ? "href='" + base.options.slides[loadSlide].url + "'" : ""; // If link exists, build it + var img = $(''); + + img.appendTo(targetList).wrap('').parent().parent().addClass('image-loading').css('visibility','hidden'); + + img.load(function(){ + base._origDim($(this)); + base.resizeNow(); + }); // End Load + }; + + // Update thumbnails (if enabled) + if (base.options.thumbnail_navigation == 1){ + + // Load previous thumbnail + vars.current_slide - 1 < 0 ? prevThumb = base.options.slides.length - 1 : prevThumb = vars.current_slide - 1; + $(vars.prev_thumb).html($("").attr("src", base.options.slides[prevThumb].image)); + + // Load next thumbnail + nextThumb = loadSlide; + $(vars.next_thumb).html($("").attr("src", base.options.slides[nextThumb].image)); + + } + + + + /*-----End Load Image-----*/ + + + // Call theme function for before slide transition + if( typeof theme != 'undefined' && typeof theme.beforeAnimation == "function" ) theme.beforeAnimation('next'); + + //Update slide markers + if (base.options.slide_links){ + $('.current-slide').removeClass('current-slide'); + $(vars.slide_list +'> li' ).eq(vars.current_slide).addClass('current-slide'); + } + + nextslide.css('visibility','hidden').addClass('activeslide'); // Update active slide + + switch(base.options.transition){ + case 0: case 'none': // No transition + nextslide.css('visibility','visible'); vars.in_animation = false; base.afterAnimation(); + break; + case 1: case 'fade': // Fade + nextslide.css({opacity : 0, 'visibility': 'visible'}).animate({opacity : 1, avoidTransforms : false}, base.options.transition_speed, function(){ base.afterAnimation(); }); + break; + case 2: case 'slideTop': // Slide Top + nextslide.css({top : -base.$el.height(), 'visibility': 'visible'}).animate({ top:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + break; + case 3: case 'slideRight': // Slide Right + nextslide.css({left : base.$el.width(), 'visibility': 'visible'}).animate({ left:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + break; + case 4: case 'slideBottom': // Slide Bottom + nextslide.css({top : base.$el.height(), 'visibility': 'visible'}).animate({ top:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + break; + case 5: case 'slideLeft': // Slide Left + nextslide.css({left : -base.$el.width(), 'visibility': 'visible'}).animate({ left:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + break; + case 6: case 'carouselRight': // Carousel Right + nextslide.css({left : base.$el.width(), 'visibility': 'visible'}).animate({ left:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + liveslide.animate({ left: -base.$el.width(), avoidTransforms : false }, base.options.transition_speed ); + break; + case 7: case 'carouselLeft': // Carousel Left + nextslide.css({left : -base.$el.width(), 'visibility': 'visible'}).animate({ left:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + liveslide.animate({ left: base.$el.width(), avoidTransforms : false }, base.options.transition_speed ); + break; + } + return false; + }; + + + /* Previous Slide + ----------------------------*/ + base.prevSlide = function(){ + + if(vars.in_animation || !api.options.slideshow) return false; // Abort if currently animating + else vars.in_animation = true; // Otherwise set animation marker + + clearInterval(vars.slideshow_interval); // Stop slideshow + + var slides = base.options.slides, // Pull in slides array + liveslide = base.$el.find('.activeslide'); // Find active slide + $('.prevslide').removeClass('prevslide'); + liveslide.removeClass('activeslide').addClass('prevslide'); // Remove active class & update previous slide + + // Get current slide number + vars.current_slide == 0 ? vars.current_slide = base.options.slides.length - 1 : vars.current_slide-- ; + + var nextslide = $(base.el+' li:eq('+vars.current_slide+')'), + prevslide = base.$el.find('.prevslide'); + + // If hybrid mode is on drop quality for transition + if (base.options.performance == 1) base.$el.removeClass('quality').addClass('speed'); + + + /*-----Load Image-----*/ + + loadSlide = vars.current_slide; + + var targetList = base.el+' li:eq('+loadSlide+')'; + if (!$(targetList).html()){ + // If links should open in new window + var linkTarget = base.options.new_window ? ' target="_blank"' : ''; + imageLink = (base.options.slides[loadSlide].url) ? "href='" + base.options.slides[loadSlide].url + "'" : ""; // If link exists, build it + var img = $(''); + + img.appendTo(targetList).wrap('').parent().parent().addClass('image-loading').css('visibility','hidden'); + + img.load(function(){ + base._origDim($(this)); + base.resizeNow(); + }); // End Load + }; + + // Update thumbnails (if enabled) + if (base.options.thumbnail_navigation == 1){ + + // Load previous thumbnail + //prevThumb = loadSlide; + loadSlide == 0 ? prevThumb = base.options.slides.length - 1 : prevThumb = loadSlide - 1; + $(vars.prev_thumb).html($("").attr("src", base.options.slides[prevThumb].image)); + + // Load next thumbnail + vars.current_slide == base.options.slides.length - 1 ? nextThumb = 0 : nextThumb = vars.current_slide + 1; + $(vars.next_thumb).html($("").attr("src", base.options.slides[nextThumb].image)); + } + + /*-----End Load Image-----*/ + + + // Call theme function for before slide transition + if( typeof theme != 'undefined' && typeof theme.beforeAnimation == "function" ) theme.beforeAnimation('prev'); + + //Update slide markers + if (base.options.slide_links){ + $('.current-slide').removeClass('current-slide'); + $(vars.slide_list +'> li' ).eq(vars.current_slide).addClass('current-slide'); + } + + nextslide.css('visibility','hidden').addClass('activeslide'); // Update active slide + + switch(base.options.transition){ + case 0: case 'none': // No transition + nextslide.css('visibility','visible'); vars.in_animation = false; base.afterAnimation(); + break; + case 1: case 'fade': // Fade + nextslide.css({opacity : 0, 'visibility': 'visible'}).animate({opacity : 1, avoidTransforms : false}, base.options.transition_speed, function(){ base.afterAnimation(); }); + break; + case 2: case 'slideTop': // Slide Top (reverse) + nextslide.css({top : base.$el.height(), 'visibility': 'visible'}).animate({ top:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + break; + case 3: case 'slideRight': // Slide Right (reverse) + nextslide.css({left : -base.$el.width(), 'visibility': 'visible'}).animate({ left:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + break; + case 4: case 'slideBottom': // Slide Bottom (reverse) + nextslide.css({top : -base.$el.height(), 'visibility': 'visible'}).animate({ top:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + break; + case 5: case 'slideLeft': // Slide Left (reverse) + nextslide.css({left : base.$el.width(), 'visibility': 'visible'}).animate({ left:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + break; + case 6: case 'carouselRight': // Carousel Right (reverse) + nextslide.css({left : -base.$el.width(), 'visibility': 'visible'}).animate({ left:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + liveslide.css({left : 0}).animate({ left: base.$el.width(), avoidTransforms : false}, base.options.transition_speed ); + break; + case 7: case 'carouselLeft': // Carousel Left (reverse) + nextslide.css({left : base.$el.width(), 'visibility': 'visible'}).animate({ left:0, avoidTransforms : false }, base.options.transition_speed, function(){ base.afterAnimation(); }); + liveslide.css({left : 0}).animate({ left: -base.$el.width(), avoidTransforms : false }, base.options.transition_speed ); + break; + } + return false; + }; + + + /* Play/Pause Toggle + ----------------------------*/ + base.playToggle = function(){ + + if (vars.in_animation || !api.options.slideshow) return false; // Abort if currently animating + + if (vars.is_paused){ + + vars.is_paused = false; + + // Call theme function for play + if( typeof theme != 'undefined' && typeof theme.playToggle == "function" ) theme.playToggle('play'); + + // Resume slideshow + vars.slideshow_interval = setInterval(base.nextSlide, base.options.slide_interval); + + }else{ + + vars.is_paused = true; + + // Call theme function for pause + if( typeof theme != 'undefined' && typeof theme.playToggle == "function" ) theme.playToggle('pause'); + + // Stop slideshow + clearInterval(vars.slideshow_interval); + + } + + return false; + + }; + + + /* Go to specific slide + ----------------------------*/ + base.goTo = function(targetSlide){ + if (vars.in_animation || !api.options.slideshow) return false; // Abort if currently animating + + var totalSlides = base.options.slides.length; + + // If target outside range + if(targetSlide < 0){ + targetSlide = totalSlides; + }else if(targetSlide > totalSlides){ + targetSlide = 1; + } + targetSlide = totalSlides - targetSlide + 1; + + clearInterval(vars.slideshow_interval); // Stop slideshow, prevent buildup + + // Call theme function for goTo trigger + if (typeof theme != 'undefined' && typeof theme.goTo == "function" ) theme.goTo(); + + if (vars.current_slide == totalSlides - targetSlide){ + if(!(vars.is_paused)){ + vars.slideshow_interval = setInterval(base.nextSlide, base.options.slide_interval); + } + return false; + } + + // If ahead of current position + if(totalSlides - targetSlide > vars.current_slide ){ + + // Adjust for new next slide + vars.current_slide = totalSlides-targetSlide-1; + vars.update_images = 'next'; + base._placeSlide(vars.update_images); + + //Otherwise it's before current position + }else if(totalSlides - targetSlide < vars.current_slide){ + + // Adjust for new prev slide + vars.current_slide = totalSlides-targetSlide+1; + vars.update_images = 'prev'; + base._placeSlide(vars.update_images); + + } + + // set active markers + if (base.options.slide_links){ + $(vars.slide_list +'> .current-slide').removeClass('current-slide'); + $(vars.slide_list +'> li').eq((totalSlides-targetSlide)).addClass('current-slide'); + } + + if (base.options.thumb_links){ + $(vars.thumb_list +'> .current-thumb').removeClass('current-thumb'); + $(vars.thumb_list +'> li').eq((totalSlides-targetSlide)).addClass('current-thumb'); + } + + }; + + + /* Place Slide + ----------------------------*/ + base._placeSlide = function(place){ + + // If links should open in new window + var linkTarget = base.options.new_window ? ' target="_blank"' : ''; + + loadSlide = false; + + if (place == 'next'){ + + vars.current_slide == base.options.slides.length - 1 ? loadSlide = 0 : loadSlide = vars.current_slide + 1; // Determine next slide + + var targetList = base.el+' li:eq('+loadSlide+')'; + + if (!$(targetList).html()){ + // If links should open in new window + var linkTarget = base.options.new_window ? ' target="_blank"' : ''; + + imageLink = (base.options.slides[loadSlide].url) ? "href='" + base.options.slides[loadSlide].url + "'" : ""; // If link exists, build it + var img = $(''); + + img.appendTo(targetList).wrap('').parent().parent().addClass('image-loading').css('visibility','hidden'); + + img.load(function(){ + base._origDim($(this)); + base.resizeNow(); + }); // End Load + }; + + base.nextSlide(); + + }else if (place == 'prev'){ + + vars.current_slide - 1 < 0 ? loadSlide = base.options.slides.length - 1 : loadSlide = vars.current_slide - 1; // Determine next slide + + var targetList = base.el+' li:eq('+loadSlide+')'; + + if (!$(targetList).html()){ + // If links should open in new window + var linkTarget = base.options.new_window ? ' target="_blank"' : ''; + + imageLink = (base.options.slides[loadSlide].url) ? "href='" + base.options.slides[loadSlide].url + "'" : ""; // If link exists, build it + var img = $(''); + + img.appendTo(targetList).wrap('').parent().parent().addClass('image-loading').css('visibility','hidden'); + + img.load(function(){ + base._origDim($(this)); + base.resizeNow(); + }); // End Load + }; + base.prevSlide(); + } + + }; + + + /* Get Original Dimensions + ----------------------------*/ + base._origDim = function(targetSlide){ + targetSlide.data('origWidth', targetSlide.width()).data('origHeight', targetSlide.height()); + }; + + + /* After Slide Animation + ----------------------------*/ + base.afterAnimation = function(){ + + // If hybrid mode is on swap back to higher image quality + if (base.options.performance == 1){ + base.$el.removeClass('speed').addClass('quality'); + } + + // Update previous slide + if (vars.update_images){ + vars.current_slide - 1 < 0 ? setPrev = base.options.slides.length - 1 : setPrev = vars.current_slide-1; + vars.update_images = false; + $('.prevslide').removeClass('prevslide'); + $(base.el+' li:eq('+setPrev+')').addClass('prevslide'); + } + + vars.in_animation = false; + + // Resume slideshow + if (!vars.is_paused && base.options.slideshow){ + vars.slideshow_interval = setInterval(base.nextSlide, base.options.slide_interval); + if (base.options.stop_loop && vars.current_slide == base.options.slides.length - 1 ) base.playToggle(); + } + + // Call theme function for after slide transition + if (typeof theme != 'undefined' && typeof theme.afterAnimation == "function" ) theme.afterAnimation(); + + return false; + + }; + + base.getField = function(field){ + return base.options.slides[vars.current_slide][field]; + }; + + // Make it go! + base.init(); + }; + + + /* Global Variables + ----------------------------*/ + $.supersized.vars = { + + // Elements + thumb_tray : '#thumb-tray', // Thumbnail tray + thumb_list : '#thumb-list', // Thumbnail list + slide_list : '#slide-list', // Slide link list + + // Internal variables + current_slide : 0, // Current slide number + in_animation : false, // Prevents animations from stacking + is_paused : false, // Tracks paused on/off + hover_pause : false, // If slideshow is paused from hover + slideshow_interval : false, // Stores slideshow timer + update_images : false, // Trigger to update images after slide jump + options : {} // Stores assembled options list + + }; + + + /* Default Options + ----------------------------*/ + $.supersized.defaultOptions = { + + // Functionality + slideshow : 1, // Slideshow on/off + autoplay : 1, // Slideshow starts playing automatically + start_slide : 1, // Start slide (0 is random) + stop_loop : 0, // Stops slideshow on last slide + random : 0, // Randomize slide order (Ignores start slide) + slide_interval : 5000, // Length between transitions + transition : 1, // 0-None, 1-Fade, 2-Slide Top, 3-Slide Right, 4-Slide Bottom, 5-Slide Left, 6-Carousel Right, 7-Carousel Left + transition_speed : 750, // Speed of transition + new_window : 1, // Image links open in new window/tab + pause_hover : 0, // Pause slideshow on hover + keyboard_nav : 1, // Keyboard navigation on/off + performance : 1, // 0-Normal, 1-Hybrid speed/quality, 2-Optimizes image quality, 3-Optimizes transition speed // (Only works for Firefox/IE, not Webkit) + image_protect : 1, // Disables image dragging and right click with Javascript + + // Size & Position + fit_always : 0, // Image will never exceed browser width or height (Ignores min. dimensions) + fit_landscape : 0, // Landscape images will not exceed browser width + fit_portrait : 1, // Portrait images will not exceed browser height + min_width : 0, // Min width allowed (in pixels) + min_height : 0, // Min height allowed (in pixels) + horizontal_center : 1, // Horizontally center background + vertical_center : 1, // Vertically center background + + + // Components + slide_links : 1, // Individual links for each slide (Options: false, 'num', 'name', 'blank') + thumb_links : 1, // Individual thumb links for each slide + thumbnail_navigation : 0 // Thumbnail navigation + + }; + + $.fn.supersized = function(options){ + return this.each(function(){ + (new $.supersized(options)); + }); + }; + +})(jQuery); + diff --git a/pixelegg/less/def_buttons.less b/pixelegg/less/def_buttons.less index 4393a91782..589531edb2 100755 --- a/pixelegg/less/def_buttons.less +++ b/pixelegg/less/def_buttons.less @@ -79,7 +79,7 @@ .box_shadow_standard_light; width: auto; margin: 0.5em 0em 0.5em 0.5em; - padding:3px; + padding:3px; outline:none; display: inline-block; -webkit-appearance:none; @@ -94,7 +94,7 @@ .Complete_Button_select_focus { outline:0; border-width:1px; - border-style: solid; + border-style: solid; .border-color-25-gray; -webkit-box-shadow: 0 0 2px 1px rgba(0,0,0, 0.10); -moz-box-shadow: 0 0 2px 1px rgba(0,0,0, 0.10); @@ -126,7 +126,7 @@ .Complete_Button_input_focus { outline:0; border-width:1px; - border-style: solid; + border-style: solid; .border-color-25-gray; -webkit-box-shadow: 0 0 2px 1px rgba(0,0,0, 0.10); -moz-box-shadow: 0 0 2px 1px rgba(0,0,0, 0.10); diff --git a/pixelegg/less/def_design_pattern_color_font_shadow.less b/pixelegg/less/def_design_pattern_color_font_shadow.less index 87b98b1afb..5c31be1589 100755 --- a/pixelegg/less/def_design_pattern_color_font_shadow.less +++ b/pixelegg/less/def_design_pattern_color_font_shadow.less @@ -145,7 +145,7 @@ //font-family: Verdana, Helvetica, Sans-Serif; font-family: "Lucida Grande","Lucida Sans Unicode",Helvetica,Arial,Verdana,sans-serif; // font-size: 16px; - font-size: 87.5%; + } diff --git a/pixelegg/less/layout_apps_global.less b/pixelegg/less/layout_buttons_global.less similarity index 91% rename from pixelegg/less/layout_apps_global.less rename to pixelegg/less/layout_buttons_global.less index b5ba7c7820..88602e3c5b 100755 --- a/pixelegg/less/layout_apps_global.less +++ b/pixelegg/less/layout_buttons_global.less @@ -25,7 +25,6 @@ //######################################################################################################## // ##################################################### - //Buttons et2 input[type="submit"], @@ -103,7 +102,7 @@ button[id*="edit"], input[type="submit"][id="edit"]:hover, input[type="button"][id="edit"]:hover, button[id*="edit"]:hover { - background-image:url('../images/bearbeiten.png'); + background-image:url('../images/edit.png'); .Complete_Button_text_icon_before; } @@ -117,7 +116,7 @@ input[type="submit"][id*="copy"]:hover, input[type="button"][id*="copy"]:hover, button[id*="copy"]:hover{ .Complete_Button_text_icon_before; - background-image:url('../images/kopieren.png'); + background-image:url('../images/copy.png'); } // ##################################################### // Button Abbruch @@ -129,7 +128,7 @@ input[type="submit"][id*="cancel"]:hover, input[type="button"][id*="cancel"]:hover, button[id*="cancel"]:hover{ .Complete_Button_text_icon_before; - background-image:url('../images/abbruch.png'); + background-image:url('../images/cancel.png'); } // ##################################################### @@ -139,7 +138,7 @@ input[type="submit"][id*="delete"], input[type="button"][id*="delete"], button[id*="delete"] { .Complete_Button_text_icon_before; - background-image:url('../images/loeschen.png'); + background-image:url('../images/delete.png'); margin-left: 3em; } @@ -147,7 +146,7 @@ input[type="submit"][id*="delete"]:hover, input[type="button"][id*="delete"]:hover, button[id*="delete"]:hover { .Complete_Button_text_icon_before; - background-image:url('../images/loeschen.png'); + background-image:url('../images/delete.png'); background-color: red !important; } // ##################################################### @@ -160,7 +159,7 @@ input[type="submit"][id*="apply"]:hover, input[type="button"][id*="apply"]:hover, button[id*="apply"]:hover { .Complete_Button_text_icon_before; - background-image:url('../images/uebernehmen.png'); + background-image:url('../images/apply.png'); } // ##################################################### @@ -175,7 +174,7 @@ button[id*="save"]:hover { .Complete_Button_text_icon_before; - background-image:url('../images/speichern.png'); + background-image:url('../images/save.png'); } // ##################################################### // Button Suchen @@ -185,10 +184,10 @@ input[type="button"][id*="search"], button[id*="search"]{ .Complete_Button_text_icon_before; - background-image:url('../images/erweiterte-suche.png'); + background-image:url('../images/advanced-search.png'); - &:hover {.box_shadow_standard_light_hover; background-image:url('../images/erweiterte-suche.png');} + &:hover {.box_shadow_standard_light_hover; background-image:url('../images/advanced-search.png');} &:focus {.box_shadow_standard_light_inset;} } @@ -198,11 +197,11 @@ button[id*="search"]{ button.button_ok { .Complete_Button_text_icon_before; - background-image:url('../images/speichern.png'); + background-image:url('../images/save.png'); } button.button_ok:hover { .Complete_Button_text_icon_before; - background-image:url('../images/speichern.png'); + background-image:url('../images/save.png'); } // ##################################################### @@ -211,9 +210,9 @@ button.button_ok:hover { button#infolog-index_legacy_actions{ .Complete_Button_text_icon_before; - background-image:url('../images/bearbeiten.png'); + background-image:url('../images/edit.png'); - &:hover {.box_shadow_standard_light_hover; background-image:url('../images/bearbeiten.png');} + &:hover {.box_shadow_standard_light_hover; background-image:url('../images/edit.png');} &:focus {.box_shadow_standard_light_inset;} diff --git a/pixelegg/less/layout_content_elements.less b/pixelegg/less/layout_content_elements.less index 380715b643..dd6f911a6c 100755 --- a/pixelegg/less/layout_content_elements.less +++ b/pixelegg/less/layout_content_elements.less @@ -42,9 +42,14 @@ body{ padding: 0px !important; width: 100% !important; height: 100% !important; + font-size: 87.5%; } -body, td, textarea {.basefontfamily;} +body, +textarea { + .basefontfamily; + +} #egw_fw_basecontainer { position: fixed; @@ -139,7 +144,7 @@ h6 { margin: 1.5em 0 0; } - +/*table {font-size: 16px;}*/ /////* Targetting Webkit browsers only. FF will show the dropdown arrow with so much padding. */ @@ -781,5 +786,4 @@ a.textSidebox bottom:4px; text-align:center; width:99%; -} -// \ No newline at end of file +} \ No newline at end of file diff --git a/pixelegg/less/layout_dialog.less b/pixelegg/less/layout_dialog.less new file mode 100755 index 0000000000..65f85705d2 --- /dev/null +++ b/pixelegg/less/layout_dialog.less @@ -0,0 +1,67 @@ +/** + * EGroupware: Stylite Pixelegg template + * + * dialog + * + * Please do NOT change css-files directly, instead change less-files and compile them! + * + * @link http://www.egroupware.org + * @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License + * @author Stefan Reinhard + * @package pixelegg + * @version $Id$ + */ + +@import (reference) "def_buttons.less"; +@import (reference) "def_content_elements.less"; +@import (reference) "def_design_pattern_color_font_shadow.less"; +@import (reference) "def_messages.less"; + + +/*Main div*/ + +#popupMainDiv { + + +} + + +table.dialog-main-view {width: 100%;} + + +/*Header Part*/ +tr.dialog-header{ + background-color: @egw_color_2_a; + .color-0-gray; + + td {padding: 5px;} + + table.et2_grid {border-top: none;} + .et2_label {.color-0-gray;} + + +} + +/*Main*/ + + +/*Buttons / Toolbar*/ + +.dialog-footer-toolbar{ + background-color: @egw_color_2_e; + + td {padding: 10px;} + + button { height: 32px;} + + label { + .Complete_Button_input; + .border_normal; + .box_shadow_standard_light; + .color-100-gray; + .background-color-10-gray; + padding: 5px 5px 8px 0; + } + +} +// \ No newline at end of file diff --git a/pixelegg/less/layout_loginPage.css b/pixelegg/less/layout_loginPage.css index aabb7e193a..a3a57fe4df 100644 --- a/pixelegg/less/layout_loginPage.css +++ b/pixelegg/less/layout_loginPage.css @@ -145,3 +145,81 @@ -moz-box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.1); box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.1); } +/*Supersized*/ +* { + margin: 0; + padding: 0; +} +img { + border: medium none; +} +#supersized-loader { + background: url("../images/progress.gif") no-repeat scroll center center rgba(0, 0, 0, 0); + height: 60px; + left: 50%; + margin: -30px 0 0 -30px; + position: absolute; + text-indent: -999em; + top: 50%; + width: 60px; + z-index: 0; +} +#supersized { + display: block; + height: 100%; + left: 0; + overflow: hidden; + position: fixed; + top: 0; + width: 100%; + z-index: -999; +} +#supersized img { + border: medium none; + display: none; + height: auto; + outline: medium none; + position: relative; + width: auto; +} +#supersized.speed img { + image-rendering: -moz-crisp-edges; +} +#supersized.quality img { + image-rendering: optimizequality; +} +#supersized li { + background: none repeat scroll 0 0 #111111; + display: block; + height: 100%; + left: 0; + list-style: none outside none; + overflow: hidden; + position: fixed; + top: 0; + width: 100%; + z-index: -30; +} +#supersized a { + display: block; + height: 100%; + width: 100%; +} +#supersized li.prevslide { + z-index: -20; +} +#supersized li.activeslide { + z-index: -10; +} +#supersized li.image-loading { + background: url("../images/progress.gif") no-repeat scroll center center #111111; + height: 100%; + width: 100%; +} +#supersized li.image-loading img { + visibility: hidden; +} +#supersized li.prevslide img, +#supersized li.activeslide img { + display: inline; +} diff --git a/pixelegg/less/layout_loginPage.less b/pixelegg/less/layout_loginPage.less index 68bad9f44b..660a8cb174 100644 --- a/pixelegg/less/layout_loginPage.less +++ b/pixelegg/less/layout_loginPage.less @@ -205,4 +205,86 @@ } // #loginMainDiv - // Ende Login / Start ################################################# \ No newline at end of file + // Ende Login / Start ################################################# + + /*Supersized*/ + + * { + margin: 0; + padding: 0; +} + +img { + border: medium none; +} +#supersized-loader { + background: url("../images/progress.gif") no-repeat scroll center center rgba(0, 0, 0, 0); + height: 60px; + left: 50%; + margin: -30px 0 0 -30px; + position: absolute; + text-indent: -999em; + top: 50%; + width: 60px; + z-index: 0; +} +#supersized { + display: block; + height: 100%; + left: 0; + overflow: hidden; + position: fixed; + top: 0; + width: 100%; + z-index: -999; +} +#supersized img { + border: medium none; + display: none; + height: auto; + outline: medium none; + position: relative; + width: auto; +} +#supersized.speed img { + image-rendering: -moz-crisp-edges; +} +#supersized.quality img { + image-rendering: optimizequality; +} +#supersized li { + background: none repeat scroll 0 0 #111111; + display: block; + height: 100%; + left: 0; + list-style: none outside none; + overflow: hidden; + position: fixed; + top: 0; + width: 100%; + z-index: -30; +} +#supersized a { + display: block; + height: 100%; + width: 100%; +} +#supersized li.prevslide { + z-index: -20; +} +#supersized li.activeslide { + z-index: -10; +} +#supersized li.image-loading { + background: url("../images/progress.gif") no-repeat scroll center center #111111; + height: 100%; + width: 100%; +} +#supersized li.image-loading img { + visibility: hidden; +} +#supersized li.prevslide img, #supersized li.activeslide img { + display: inline; +} + +// \ No newline at end of file diff --git a/pixelegg/less/layout_nextmatch.css b/pixelegg/less/layout_nextmatch.css index fe7e1687d2..e7509c0806 100644 --- a/pixelegg/less/layout_nextmatch.css +++ b/pixelegg/less/layout_nextmatch.css @@ -557,12 +557,17 @@ cursor: pointer; margin-right: 2ex; padding: 5px; + height: 25px; + padding: 0px 0px 0px 3px; } .filters select:hover { -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); -moz-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); } +.filters select option { + font-size: 0.9em; +} .filters select#cat_id { margin-left: 1em; } @@ -577,6 +582,7 @@ -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; + height: 25px; } .filters input:hover { -webkit-box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.9); diff --git a/pixelegg/less/layout_nextmatch.less b/pixelegg/less/layout_nextmatch.less index c0b12654e7..78890e5b94 100644 Binary files a/pixelegg/less/layout_nextmatch.less and b/pixelegg/less/layout_nextmatch.less differ diff --git a/pixelegg/less/layout_raster.css b/pixelegg/less/layout_raster.css index a9bae4e599..a71aac0751 100644 --- a/pixelegg/less/layout_raster.css +++ b/pixelegg/less/layout_raster.css @@ -990,7 +990,6 @@ div#calendar-container div.calendar table { padding: 0.3em; background-color: #fafafa; font-family: "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, sans-serif; - font-size: 87.5%; } div#calendar-container div.calendar table thead .title { background-color: #ffc200; diff --git a/pixelegg/less/layout_table.less b/pixelegg/less/layout_table.less index dcec1cd4dc..1171c60995 100755 Binary files a/pixelegg/less/layout_table.less and b/pixelegg/less/layout_table.less differ diff --git a/pixelegg/templates/pixelegg/login.tpl b/pixelegg/templates/pixelegg/login.tpl index 6a8ba03b45..bcf003f570 100644 Binary files a/pixelegg/templates/pixelegg/login.tpl and b/pixelegg/templates/pixelegg/login.tpl differ diff --git a/pixelegg/theme/supersized.shutter.css b/pixelegg/theme/supersized.shutter.css new file mode 100755 index 0000000000..fa12aa6c0c --- /dev/null +++ b/pixelegg/theme/supersized.shutter.css @@ -0,0 +1,74 @@ +/* + + Supersized - Fullscreen Slideshow jQuery Plugin + Version : 3.2.7 + Site : www.buildinternet.com/project/supersized + + Theme : Shutter 1.2 + Author : Sam Dunn + Company : One Mighty Roar (www.onemightyroar.com) + License : MIT License / GPL License + +*/ + + /* Controls Bar + ----------------------------*/ + #controls-wrapper { margin:0 auto; height:42px; width:100%; bottom:0px; left:0; z-index:4; background:url(../img/nav-bg.png) repeat-x; position:fixed; } + #controls { overflow:hidden; height:100%; position:relative; text-align:left; z-index:5; } + #slidecounter { float:left; color:#999; font:14px "Helvetica Neue", Helvetica, Arial, sans-serif; text-shadow:#000 0 -1px 0; margin:0px 10px 0 15px; line-height:42px; } + #slidecaption { overflow:hidden; float:left; color:#FFF; font:400 14px "Helvetica Neue", Helvetica, Arial, sans-serif; text-shadow:#000 1px 1px 2px; margin:0 20px 0 0; line-height:42px; } + + #navigation { float:right; margin:0px 20px 0 0; } + #play-button{ float:left; margin-top:1px;border-right:1px solid #333; background:url('../img/bg-hover.png') repeat-x 0 44px; } + #play-button:hover{ background-position:0 1px; cursor:pointer; } + + #prevslide, #nextslide{ position:absolute; height:43px; width:43px; top:50%; margin-top:-21px; opacity:0.6; } + #prevslide{ left:10px; background:url('../img/back.png'); } + #nextslide{ right:10px; background:url('../img/forward.png'); } + #prevslide:active, #nextslide:active{ margin-top:-19px; } + #prevslide:hover, #nextslide:hover{ cursor:pointer; } + + ul#slide-list{ padding:15px 0; float:left; position:absolute; left:50%; } + ul#slide-list li{ list-style:none; width:12px; height:12px; float:left; margin:0 5px 0 0; } + ul#slide-list li.current-slide a, ul#slide-list li.current-slide a:hover{ background-position:0 0px; } + ul#slide-list li a{ display:block; width:12px; height:12px; background:url('../img/nav-dot.png') no-repeat 0 -24px; } + ul#slide-list li a:hover{ background-position:0 -12px; cursor:pointer; } + + #tray-button{ float:right; margin-top:1px; border-left:1px solid #333; background:url('../img/bg-hover.png') repeat-x 0 44px; } + #tray-button:hover{ background-position:0 1px; cursor:pointer; } + + + /* Progress Bar + ----------------------------*/ + #progress-back{ z-index:5; position:fixed; bottom:42px; left:0; height:8px; width:100%; background:url('../img/progress-back.png') repeat-x; } + #progress-bar{ position:relative; height:8px; width:100%; background:url('../img/progress-bar.png') repeat-x; } + + + /* Thumbnail Navigation + ----------------------------*/ + #nextthumb,#prevthumb { z-index:2; display:none; position:fixed; bottom:61px; height:75px; width:100px; overflow:hidden; background:#ddd; border:1px solid #fff; -webkit-box-shadow:0 0 5px #000; } + #nextthumb { right:12px; } + #prevthumb { left:12px; } + #nextthumb img, #prevthumb img { width:150px; height:auto; } + #nextthumb:active, #prevthumb:active { bottom:59px; } + #nextthumb:hover, #prevthumb:hover { cursor:pointer; } + + + /* Thumbnail Tray + ----------------------------*/ + #thumb-tray{ position:fixed; z-index:3; bottom:0; left:0; background:url(../img/bg-black.png); height:150px; width:100%; overflow:hidden; text-align:center; -moz-box-shadow: 0px 0px 4px #000; -webkit-box-shadow: 0px 0px 4px #000; box-shadow: 0px 0px 4px #000; } + + #thumb-back, #thumb-forward{ position:absolute; z-index:5; bottom:42px; height:108px; width:40px; } + #thumb-back{ left:0; background: url('../img/thumb-back.png') no-repeat center center;} + #thumb-forward{ right:0; background:url('../img/thumb-forward.png') no-repeat center center;} + #thumb-back:hover, #thumb-forward:hover{ cursor:pointer; background-color:rgba(256,256,256, 0.1); } + #thumb-back:hover{ border-right:1px solid rgba(256,256,256, 0.2); } + #thumb-forward:hover{ border-left:1px solid rgba(256,256,256, 0.2); } + + + ul#thumb-list{ display:inline-block; list-style:none; position:relative; left:0px; padding:0 0px; } + ul#thumb-list li{ background:#111; list-style:none; display:inline; width:150px; height:108px; overflow:hidden; float:left; margin:0; } + ul#thumb-list li img { width:200px; height:auto; opacity:0.5; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; filter:alpha(opacity=60); -webkit-transition: all 100ms ease-in-out; -moz-transition: all 100ms ease-in-out; -o-transition: all 100ms ease-in-out; -ms-transition: all 100ms ease-in-out; transition: all 100ms ease-in-out; } + ul#thumb-list li.current-thumb img, ul#thumb-list li:hover img{ opacity:1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter:alpha(opacity=100); } + ul#thumb-list li:hover{ cursor:pointer; } + \ No newline at end of file diff --git a/pixelegg/theme/supersized.shutter.js b/pixelegg/theme/supersized.shutter.js new file mode 100755 index 0000000000..db305c7135 --- /dev/null +++ b/pixelegg/theme/supersized.shutter.js @@ -0,0 +1,337 @@ +/* + + Supersized - Fullscreen Slideshow jQuery Plugin + Version : 3.2.7 + Theme : Shutter 1.1 + + Site : www.buildinternet.com/project/supersized + Author : Sam Dunn + Company : One Mighty Roar (www.onemightyroar.com) + License : MIT License / GPL License + +*/ + +(function($){ + + theme = { + + + /* Initial Placement + ----------------------------*/ + _init : function(){ + + // Center Slide Links + if (api.options.slide_links) $(vars.slide_list).css('margin-left', -$(vars.slide_list).width()/2); + + // Start progressbar if autoplay enabled + if (api.options.autoplay){ + if (api.options.progress_bar) theme.progressBar(); + }else{ + if ($(vars.play_button).attr('src')) $(vars.play_button).attr("src", vars.image_path + "play.png"); // If pause play button is image, swap src + if (api.options.progress_bar) $(vars.progress_bar).stop().css({left : -$(window).width()}); // Place progress bar + } + + + /* Thumbnail Tray + ----------------------------*/ + // Hide tray off screen + $(vars.thumb_tray).css({bottom : -$(vars.thumb_tray).height()}); + + // Thumbnail Tray Toggle + $(vars.tray_button).toggle(function(){ + $(vars.thumb_tray).stop().animate({bottom : 0, avoidTransforms : true}, 300 ); + if ($(vars.tray_arrow).attr('src')) $(vars.tray_arrow).attr("src", vars.image_path + "button-tray-down.png"); + return false; + }, function() { + $(vars.thumb_tray).stop().animate({bottom : -$(vars.thumb_tray).height(), avoidTransforms : true}, 300 ); + if ($(vars.tray_arrow).attr('src')) $(vars.tray_arrow).attr("src", vars.image_path + "button-tray-up.png"); + return false; + }); + + // Make thumb tray proper size + $(vars.thumb_list).width($('> li', vars.thumb_list).length * $('> li', vars.thumb_list).outerWidth(true)); //Adjust to true width of thumb markers + + // Display total slides + if ($(vars.slide_total).length){ + $(vars.slide_total).html(api.options.slides.length); + } + + + /* Thumbnail Tray Navigation + ----------------------------*/ + if (api.options.thumb_links){ + //Hide thumb arrows if not needed + if ($(vars.thumb_list).width() <= $(vars.thumb_tray).width()){ + $(vars.thumb_back +','+vars.thumb_forward).fadeOut(0); + } + + // Thumb Intervals + vars.thumb_interval = Math.floor($(vars.thumb_tray).width() / $('> li', vars.thumb_list).outerWidth(true)) * $('> li', vars.thumb_list).outerWidth(true); + vars.thumb_page = 0; + + // Cycle thumbs forward + $(vars.thumb_forward).click(function(){ + if (vars.thumb_page - vars.thumb_interval <= -$(vars.thumb_list).width()){ + vars.thumb_page = 0; + $(vars.thumb_list).stop().animate({'left': vars.thumb_page}, {duration:500, easing:'easeOutExpo'}); + }else{ + vars.thumb_page = vars.thumb_page - vars.thumb_interval; + $(vars.thumb_list).stop().animate({'left': vars.thumb_page}, {duration:500, easing:'easeOutExpo'}); + } + }); + + // Cycle thumbs backwards + $(vars.thumb_back).click(function(){ + if (vars.thumb_page + vars.thumb_interval > 0){ + vars.thumb_page = Math.floor($(vars.thumb_list).width() / vars.thumb_interval) * -vars.thumb_interval; + if ($(vars.thumb_list).width() <= -vars.thumb_page) vars.thumb_page = vars.thumb_page + vars.thumb_interval; + $(vars.thumb_list).stop().animate({'left': vars.thumb_page}, {duration:500, easing:'easeOutExpo'}); + }else{ + vars.thumb_page = vars.thumb_page + vars.thumb_interval; + $(vars.thumb_list).stop().animate({'left': vars.thumb_page}, {duration:500, easing:'easeOutExpo'}); + } + }); + + } + + + /* Navigation Items + ----------------------------*/ + $(vars.next_slide).click(function() { + api.nextSlide(); + }); + + $(vars.prev_slide).click(function() { + api.prevSlide(); + }); + + // Full Opacity on Hover + if(jQuery.support.opacity){ + $(vars.prev_slide +','+vars.next_slide).mouseover(function() { + $(this).stop().animate({opacity:1},100); + }).mouseout(function(){ + $(this).stop().animate({opacity:0.6},100); + }); + } + + if (api.options.thumbnail_navigation){ + // Next thumbnail clicked + $(vars.next_thumb).click(function() { + api.nextSlide(); + }); + // Previous thumbnail clicked + $(vars.prev_thumb).click(function() { + api.prevSlide(); + }); + } + + $(vars.play_button).click(function() { + api.playToggle(); + }); + + + /* Thumbnail Mouse Scrub + ----------------------------*/ + if (api.options.mouse_scrub){ + $(vars.thumb_tray).mousemove(function(e) { + var containerWidth = $(vars.thumb_tray).width(), + listWidth = $(vars.thumb_list).width(); + if (listWidth > containerWidth){ + var mousePos = 1, + diff = e.pageX - mousePos; + if (diff > 10 || diff < -10) { + mousePos = e.pageX; + newX = (containerWidth - listWidth) * (e.pageX/containerWidth); + diff = parseInt(Math.abs(parseInt($(vars.thumb_list).css('left'))-newX )).toFixed(0); + $(vars.thumb_list).stop().animate({'left':newX}, {duration:diff*3, easing:'easeOutExpo'}); + } + } + }); + } + + + /* Window Resize + ----------------------------*/ + $(window).resize(function(){ + + // Delay progress bar on resize + if (api.options.progress_bar && !vars.in_animation){ + if (vars.slideshow_interval) clearInterval(vars.slideshow_interval); + if (api.options.slides.length - 1 > 0) clearInterval(vars.slideshow_interval); + + $(vars.progress_bar).stop().css({left : -$(window).width()}); + + if (!vars.progressDelay && api.options.slideshow){ + // Delay slideshow from resuming so Chrome can refocus images + vars.progressDelay = setTimeout(function() { + if (!vars.is_paused){ + theme.progressBar(); + vars.slideshow_interval = setInterval(api.nextSlide, api.options.slide_interval); + } + vars.progressDelay = false; + }, 1000); + } + } + + // Thumb Links + if (api.options.thumb_links && vars.thumb_tray.length){ + // Update Thumb Interval & Page + vars.thumb_page = 0; + vars.thumb_interval = Math.floor($(vars.thumb_tray).width() / $('> li', vars.thumb_list).outerWidth(true)) * $('> li', vars.thumb_list).outerWidth(true); + + // Adjust thumbnail markers + if ($(vars.thumb_list).width() > $(vars.thumb_tray).width()){ + $(vars.thumb_back +','+vars.thumb_forward).fadeIn('fast'); + $(vars.thumb_list).stop().animate({'left':0}, 200); + }else{ + $(vars.thumb_back +','+vars.thumb_forward).fadeOut('fast'); + } + + } + }); + + + }, + + + /* Go To Slide + ----------------------------*/ + goTo : function(){ + if (api.options.progress_bar && !vars.is_paused){ + $(vars.progress_bar).stop().css({left : -$(window).width()}); + theme.progressBar(); + } + }, + + /* Play & Pause Toggle + ----------------------------*/ + playToggle : function(state){ + + if (state =='play'){ + // If image, swap to pause + if ($(vars.play_button).attr('src')) $(vars.play_button).attr("src", vars.image_path + "pause.png"); + if (api.options.progress_bar && !vars.is_paused) theme.progressBar(); + }else if (state == 'pause'){ + // If image, swap to play + if ($(vars.play_button).attr('src')) $(vars.play_button).attr("src", vars.image_path + "play.png"); + if (api.options.progress_bar && vars.is_paused)$(vars.progress_bar).stop().css({left : -$(window).width()}); + } + + }, + + + /* Before Slide Transition + ----------------------------*/ + beforeAnimation : function(direction){ + if (api.options.progress_bar && !vars.is_paused) $(vars.progress_bar).stop().css({left : -$(window).width()}); + + /* Update Fields + ----------------------------*/ + // Update slide caption + if ($(vars.slide_caption).length){ + (api.getField('title')) ? $(vars.slide_caption).html(api.getField('title')) : $(vars.slide_caption).html(''); + } + // Update slide number + if (vars.slide_current.length){ + $(vars.slide_current).html(vars.current_slide + 1); + } + + + // Highlight current thumbnail and adjust row position + if (api.options.thumb_links){ + + $('.current-thumb').removeClass('current-thumb'); + $('li', vars.thumb_list).eq(vars.current_slide).addClass('current-thumb'); + + // If thumb out of view + if ($(vars.thumb_list).width() > $(vars.thumb_tray).width()){ + // If next slide direction + if (direction == 'next'){ + if (vars.current_slide == 0){ + vars.thumb_page = 0; + $(vars.thumb_list).stop().animate({'left': vars.thumb_page}, {duration:500, easing:'easeOutExpo'}); + } else if ($('.current-thumb').offset().left - $(vars.thumb_tray).offset().left >= vars.thumb_interval){ + vars.thumb_page = vars.thumb_page - vars.thumb_interval; + $(vars.thumb_list).stop().animate({'left': vars.thumb_page}, {duration:500, easing:'easeOutExpo'}); + } + // If previous slide direction + }else if(direction == 'prev'){ + if (vars.current_slide == api.options.slides.length - 1){ + vars.thumb_page = Math.floor($(vars.thumb_list).width() / vars.thumb_interval) * -vars.thumb_interval; + if ($(vars.thumb_list).width() <= -vars.thumb_page) vars.thumb_page = vars.thumb_page + vars.thumb_interval; + $(vars.thumb_list).stop().animate({'left': vars.thumb_page}, {duration:500, easing:'easeOutExpo'}); + } else if ($('.current-thumb').offset().left - $(vars.thumb_tray).offset().left < 0){ + if (vars.thumb_page + vars.thumb_interval > 0) return false; + vars.thumb_page = vars.thumb_page + vars.thumb_interval; + $(vars.thumb_list).stop().animate({'left': vars.thumb_page}, {duration:500, easing:'easeOutExpo'}); + } + } + } + + + } + + }, + + + /* After Slide Transition + ----------------------------*/ + afterAnimation : function(){ + if (api.options.progress_bar && !vars.is_paused) theme.progressBar(); // Start progress bar + }, + + + /* Progress Bar + ----------------------------*/ + progressBar : function(){ + $(vars.progress_bar).stop().css({left : -$(window).width()}).animate({ left:0 }, api.options.slide_interval); + } + + + }; + + + /* Theme Specific Variables + ----------------------------*/ + $.supersized.themeVars = { + + // Internal Variables + progress_delay : false, // Delay after resize before resuming slideshow + thumb_page : false, // Thumbnail page + thumb_interval : false, // Thumbnail interval + image_path : 'img/', // Default image path + + // General Elements + play_button : '#pauseplay', // Play/Pause button + next_slide : '#nextslide', // Next slide button + prev_slide : '#prevslide', // Prev slide button + next_thumb : '#nextthumb', // Next slide thumb button + prev_thumb : '#prevthumb', // Prev slide thumb button + + slide_caption : '#slidecaption', // Slide caption + slide_current : '.slidenumber', // Current slide number + slide_total : '.totalslides', // Total Slides + slide_list : '#slide-list', // Slide jump list + + thumb_tray : '#thumb-tray', // Thumbnail tray + thumb_list : '#thumb-list', // Thumbnail list + thumb_forward : '#thumb-forward', // Cycles forward through thumbnail list + thumb_back : '#thumb-back', // Cycles backwards through thumbnail list + tray_arrow : '#tray-arrow', // Thumbnail tray button arrow + tray_button : '#tray-button', // Thumbnail tray button + + progress_bar : '#progress-bar' // Progress bar + + }; + + /* Theme Specific Options + ----------------------------*/ + $.supersized.themeOptions = { + + progress_bar : 1, // Timer for each slide + mouse_scrub : 0 // Thumbnails move with mouse + + }; + + +})(jQuery); \ No newline at end of file diff --git a/pixelegg/theme/supersized.shutter.min.js b/pixelegg/theme/supersized.shutter.min.js new file mode 100755 index 0000000000..62cdf847cd --- /dev/null +++ b/pixelegg/theme/supersized.shutter.min.js @@ -0,0 +1,12 @@ +/* + + Supersized - Fullscreen Slideshow jQuery Plugin + Version : 3.2.7 + Theme : Shutter 1.1 + + Site : www.buildinternet.com/project/supersized + Author : Sam Dunn + Company : One Mighty Roar (www.onemightyroar.com) + License : MIT License / GPL License + +*/(function(e){theme={_init:function(){api.options.slide_links&&e(vars.slide_list).css("margin-left",-e(vars.slide_list).width()/2);if(api.options.autoplay)api.options.progress_bar&&theme.progressBar();else{e(vars.play_button).attr("src")&&e(vars.play_button).attr("src",vars.image_path+"play.png");api.options.progress_bar&&e(vars.progress_bar).stop().css({left:-e(window).width()})}e(vars.thumb_tray).css({bottom:-e(vars.thumb_tray).height()});e(vars.tray_button).toggle(function(){e(vars.thumb_tray).stop().animate({bottom:0,avoidTransforms:!0},300);e(vars.tray_arrow).attr("src")&&e(vars.tray_arrow).attr("src",vars.image_path+"button-tray-down.png");return!1},function(){e(vars.thumb_tray).stop().animate({bottom:-e(vars.thumb_tray).height(),avoidTransforms:!0},300);e(vars.tray_arrow).attr("src")&&e(vars.tray_arrow).attr("src",vars.image_path+"button-tray-up.png");return!1});e(vars.thumb_list).width(e("> li",vars.thumb_list).length*e("> li",vars.thumb_list).outerWidth(!0));e(vars.slide_total).length&&e(vars.slide_total).html(api.options.slides.length);if(api.options.thumb_links){e(vars.thumb_list).width()<=e(vars.thumb_tray).width()&&e(vars.thumb_back+","+vars.thumb_forward).fadeOut(0);vars.thumb_interval=Math.floor(e(vars.thumb_tray).width()/e("> li",vars.thumb_list).outerWidth(!0))*e("> li",vars.thumb_list).outerWidth(!0);vars.thumb_page=0;e(vars.thumb_forward).click(function(){if(vars.thumb_page-vars.thumb_interval<=-e(vars.thumb_list).width()){vars.thumb_page=0;e(vars.thumb_list).stop().animate({left:vars.thumb_page},{duration:500,easing:"easeOutExpo"})}else{vars.thumb_page=vars.thumb_page-vars.thumb_interval;e(vars.thumb_list).stop().animate({left:vars.thumb_page},{duration:500,easing:"easeOutExpo"})}});e(vars.thumb_back).click(function(){if(vars.thumb_page+vars.thumb_interval>0){vars.thumb_page=Math.floor(e(vars.thumb_list).width()/vars.thumb_interval)*-vars.thumb_interval;e(vars.thumb_list).width()<=-vars.thumb_page&&(vars.thumb_page=vars.thumb_page+vars.thumb_interval);e(vars.thumb_list).stop().animate({left:vars.thumb_page},{duration:500,easing:"easeOutExpo"})}else{vars.thumb_page=vars.thumb_page+vars.thumb_interval;e(vars.thumb_list).stop().animate({left:vars.thumb_page},{duration:500,easing:"easeOutExpo"})}})}e(vars.next_slide).click(function(){api.nextSlide()});e(vars.prev_slide).click(function(){api.prevSlide()});jQuery.support.opacity&&e(vars.prev_slide+","+vars.next_slide).mouseover(function(){e(this).stop().animate({opacity:1},100)}).mouseout(function(){e(this).stop().animate({opacity:.6},100)});if(api.options.thumbnail_navigation){e(vars.next_thumb).click(function(){api.nextSlide()});e(vars.prev_thumb).click(function(){api.prevSlide()})}e(vars.play_button).click(function(){api.playToggle()});api.options.mouse_scrub&&e(vars.thumb_tray).mousemove(function(t){var n=e(vars.thumb_tray).width(),r=e(vars.thumb_list).width();if(r>n){var i=1,s=t.pageX-i;if(s>10||s<-10){i=t.pageX;newX=(n-r)*(t.pageX/n);s=parseInt(Math.abs(parseInt(e(vars.thumb_list).css("left"))-newX)).toFixed(0);e(vars.thumb_list).stop().animate({left:newX},{duration:s*3,easing:"easeOutExpo"})}}});e(window).resize(function(){if(api.options.progress_bar&&!vars.in_animation){vars.slideshow_interval&&clearInterval(vars.slideshow_interval);api.options.slides.length-1>0&&clearInterval(vars.slideshow_interval);e(vars.progress_bar).stop().css({left:-e(window).width()});!vars.progressDelay&&api.options.slideshow&&(vars.progressDelay=setTimeout(function(){if(!vars.is_paused){theme.progressBar();vars.slideshow_interval=setInterval(api.nextSlide,api.options.slide_interval)}vars.progressDelay=!1},1e3))}if(api.options.thumb_links&&vars.thumb_tray.length){vars.thumb_page=0;vars.thumb_interval=Math.floor(e(vars.thumb_tray).width()/e("> li",vars.thumb_list).outerWidth(!0))*e("> li",vars.thumb_list).outerWidth(!0);if(e(vars.thumb_list).width()>e(vars.thumb_tray).width()){e(vars.thumb_back+","+vars.thumb_forward).fadeIn("fast");e(vars.thumb_list).stop().animate({left:0},200)}else e(vars.thumb_back+","+vars.thumb_forward).fadeOut("fast")}})},goTo:function(){if(api.options.progress_bar&&!vars.is_paused){e(vars.progress_bar).stop().css({left:-e(window).width()});theme.progressBar()}},playToggle:function(t){if(t=="play"){e(vars.play_button).attr("src")&&e(vars.play_button).attr("src",vars.image_path+"pause.png");api.options.progress_bar&&!vars.is_paused&&theme.progressBar()}else if(t=="pause"){e(vars.play_button).attr("src")&&e(vars.play_button).attr("src",vars.image_path+"play.png");api.options.progress_bar&&vars.is_paused&&e(vars.progress_bar).stop().css({left:-e(window).width()})}},beforeAnimation:function(t){api.options.progress_bar&&!vars.is_paused&&e(vars.progress_bar).stop().css({left:-e(window).width()});e(vars.slide_caption).length&&(api.getField("title")?e(vars.slide_caption).html(api.getField("title")):e(vars.slide_caption).html(""));vars.slide_current.length&&e(vars.slide_current).html(vars.current_slide+1);if(api.options.thumb_links){e(".current-thumb").removeClass("current-thumb");e("li",vars.thumb_list).eq(vars.current_slide).addClass("current-thumb");if(e(vars.thumb_list).width()>e(vars.thumb_tray).width())if(t=="next"){if(vars.current_slide==0){vars.thumb_page=0;e(vars.thumb_list).stop().animate({left:vars.thumb_page},{duration:500,easing:"easeOutExpo"})}else if(e(".current-thumb").offset().left-e(vars.thumb_tray).offset().left>=vars.thumb_interval){vars.thumb_page=vars.thumb_page-vars.thumb_interval;e(vars.thumb_list).stop().animate({left:vars.thumb_page},{duration:500,easing:"easeOutExpo"})}}else if(t=="prev")if(vars.current_slide==api.options.slides.length-1){vars.thumb_page=Math.floor(e(vars.thumb_list).width()/vars.thumb_interval)*-vars.thumb_interval;e(vars.thumb_list).width()<=-vars.thumb_page&&(vars.thumb_page=vars.thumb_page+vars.thumb_interval);e(vars.thumb_list).stop().animate({left:vars.thumb_page},{duration:500,easing:"easeOutExpo"})}else if(e(".current-thumb").offset().left-e(vars.thumb_tray).offset().left<0){if(vars.thumb_page+vars.thumb_interval>0)return!1;vars.thumb_page=vars.thumb_page+vars.thumb_interval;e(vars.thumb_list).stop().animate({left:vars.thumb_page},{duration:500,easing:"easeOutExpo"})}}},afterAnimation:function(){api.options.progress_bar&&!vars.is_paused&&theme.progressBar()},progressBar:function(){e(vars.progress_bar).stop().css({left:-e(window).width()}).animate({left:0},api.options.slide_interval)}};e.supersized.themeVars={progress_delay:!1,thumb_page:!1,thumb_interval:!1,image_path:"img/",play_button:"#pauseplay",next_slide:"#nextslide",prev_slide:"#prevslide",next_thumb:"#nextthumb",prev_thumb:"#prevthumb",slide_caption:"#slidecaption",slide_current:".slidenumber",slide_total:".totalslides",slide_list:"#slide-list",thumb_tray:"#thumb-tray",thumb_list:"#thumb-list",thumb_forward:"#thumb-forward",thumb_back:"#thumb-back",tray_arrow:"#tray-arrow",tray_button:"#tray-button",progress_bar:"#progress-bar"};e.supersized.themeOptions={progress_bar:1,mouse_scrub:0}})(jQuery); \ No newline at end of file