
/* Merged Plone Javascript file
 * This file is dynamically assembled from separate parts.
 * Some of these parts have 3rd party licenses or copyright information attached
 * Such information is valid for that section,
 * not for the entire composite file
 * originating files are separated by - filename.js -
 */

/* - ++resource++collective.flowplayer.js/init.js - */
/*global jQuery, flowplayer, window */
(function($) {
function initialVolume() {
    var volume = window.collective_flowplayer.initialVolumePercentage;
    if (volume !== null) {
        this.setVolume(volume);
    }
}
function loop() {
    return !window.collective_flowplayer.loop;
}
$(function() {
    $('.autoFlowPlayer').each(function() {
        // Take a copy of the global config
        var config = jQuery.extend(true, {}, window.collective_flowplayer.config);
        var $self = $(this);
        if ($self.is('.minimal')) {
            config.plugins.controls = null;
        }
        var audio = $self.is('.audio');
        if (audio && !$self.is('.minimal')) {
            config.plugins.controls.all = false;
            config.plugins.controls.play = true;
            config.plugins.controls.scrubber = true;
            config.plugins.controls.mute = true;
            config.plugins.controls.volume = true;
            config.plugins.controls.time = true;
            config.plugins.controls.autoHide = false;
        }
        if ($self.is('div')) {
            // comming from Kupu, there are relative urls
            config.clip.baseUrl = $('base').attr('href');
            config.clip.url = $self.find('a').attr('href');
            if (audio) {
              // force .mp3 extension
              config.clip.url = config.clip.url + '?e=.mp3';
            }
            // Ignore global autoplay settings
            if ($self.find('img').length === 0) {
                // no image. Don't autoplay, remove all elements inside the div to show player directly.
                config.clip.autoPlay = false;
                $self.empty();
            } else {
                // Clip is probably linked as image, so autoplay the clip after image is clicked
                config.clip.autoPlay = true;
            }
        }
        flowplayer(this, window.collective_flowplayer.params, config).onLoad(initialVolume).onBeforeFinish(loop);
        $('.flowPlayerMessage').remove();
    });
    $('.playListFlowPlayer').each(function() {
        // Take a copy of the global config
        var config = jQuery.extend(true, {}, window.collective_flowplayer.config);
        var $self = $(this);
        var audio = $self.is('.audio');
        if (audio) { config.plugins.controls.fullscreen = false; }
        if ($self.is('.minimal')) { config.plugins.controls = null; }
        if ($self.find('img').length > 0) {
            // has splash
            config.clip.autoPlay = true;
        }
        var portlet_parents = $self.parents('.portlet');
        var playlist_selector = 'div#flowPlaylist';
        var portlet;
        if (portlet_parents.length > 0) {
            portlet = true;
            // playlist has to be bound to unique item
            var playlist_selector_id = portlet_parents.parent().attr('id')+'-playlist';
            $self.parent().find('.flowPlaylist-portlet-marker').attr('id', playlist_selector_id);
            playlist_selector = '#'+playlist_selector_id;
            if (audio && !$self.is('.minimal')) {
                config.plugins.controls.all = false;
                config.plugins.controls.play = true;
                config.plugins.controls.scrubber = true;
                config.plugins.controls.mute = true;
                config.plugins.controls.volume = false;
            }
        } else {
            portlet = false;
        }
        if (!portlet) {
            $("#pl").scrollable({items:playlist_selector, size:4, clickable:false, prev:'a.prevPage', next:'a.nextPage'});
        }
        // manual = playlist is setup using HTML tags, not using playlist array in config
        flowplayer(this, window.collective_flowplayer.params, config).playlist(playlist_selector, {loop: true, manual: true}).onLoad(initialVolume).onBeforeFinish(loop);
        $self.show();
        $('.flowPlayerMessage').remove();

    });
});
}(jQuery));


/* - ++resource++apkn.workspaces.media/js/superfish.js - */
// http://www.apkn.org/portal_javascripts/++resource++apkn.workspaces.media/js/superfish.js?original=1
;(function($){$.fn.superfish=function(op){var sf=$.fn.superfish,c=sf.c,$arrow=$(['<span class="',c.arrowClass,'"> &#187;</span>'].join('')),over=function(){var $$=$(this),menu=getMenu($$);clearTimeout(menu.sfTimer);$$.showSuperfishUl().siblings().hideSuperfishUl()},out=function(){var $$=$(this),menu=getMenu($$),o=sf.op;clearTimeout(menu.sfTimer);menu.sfTimer=setTimeout(function(){o.retainPath=($.inArray($$[0],o.$path)>-1);$$.hideSuperfishUl();if(o.$path.length&&$$.parents(['li.',o.hoverClass].join('')).length<1){over.call(o.$path)}},o.delay)},getMenu=function($menu){var menu=$menu.parents(['ul.',c.menuClass,':first'].join(''))[0];sf.op=sf.o[menu.serial];return menu},addArrow=function($a){$a.addClass(c.anchorClass).append($arrow.clone())};return this.each(function(){var s=this.serial=sf.o.length;var o=$.extend({},sf.defaults,op);o.$path=$('li.'+o.pathClass,this).slice(0,o.pathLevels).each(function(){$(this).addClass([o.hoverClass,c.bcClass].join(' ')).filter('li:has(ul)').removeClass(o.pathClass)});sf.o[s]=sf.op=o;$('li:has(ul)',this)[($.fn.hoverIntent&&!o.disableHI)?'hoverIntent':'hover'](over,out).each(function(){if(o.autoArrows) addArrow($('>a:first-child',this))}).not('.'+c.bcClass).hideSuperfishUl();var $a=$('a',this);$a.each(function(i){var $li=$a.eq(i).parents('li');$a.eq(i).focus(function(){over.call($li)}).blur(function(){out.call($li)})});o.onInit.call(this)}).each(function(){var menuClasses=[c.menuClass];if(sf.op.dropShadows&&!($.browser.msie&&$.browser.version<7)) menuClasses.push(c.shadowClass);$(this).addClass(menuClasses.join(' '))})};var sf=$.fn.superfish;sf.o=[];sf.op={};sf.IE7fix=function(){var o=sf.op;if($.browser.msie&&$.browser.version>6&&o.dropShadows&&o.animation.opacity!=undefined)
this.toggleClass(sf.c.shadowClass+'-off')};sf.c={bcClass:'sf-breadcrumb',menuClass:'sf-js-enabled',anchorClass:'sf-with-ul',arrowClass:'sf-sub-indicator',shadowClass:'sf-shadow'};sf.defaults={hoverClass:'sfHover',pathClass:'overideThisToUse',pathLevels:1,delay:800,animation:{opacity:'show'},speed:'normal',autoArrows:true,dropShadows:true,disableHI:false,onInit: function(){},onBeforeShow: function(){},onShow: function(){},onHide: function(){}};$.fn.extend({hideSuperfishUl: function(){var o=sf.op,not=(o.retainPath===true)?o.$path:'';o.retainPath=false;var $ul=$(['li.',o.hoverClass].join(''),this).add(this).not(not).removeClass(o.hoverClass).find('>ul').hide().css('visibility','hidden');o.onHide.call($ul);return this},showSuperfishUl: function(){var o=sf.op,sh=sf.c.shadowClass+'-off',$ul=this.addClass(o.hoverClass).find('>ul:hidden').css('visibility','visible');sf.IE7fix.call($ul);o.onBeforeShow.call($ul);$ul.animate(o.animation,o.speed,function(){sf.IE7fix.call($ul);o.onShow.call($ul)});return this}})})(jQuery);

/* - ++resource++apkn.workspaces.media/js/slidemenu.js - */
// http://www.apkn.org/portal_javascripts/++resource++apkn.workspaces.media/js/slidemenu.js?original=1
jQuery(document).ready(function(){jQuery("ul.sf-menu").superfish({onShow:function(){var scroll_window=jQuery('body').scrollTop();var view_port_height=jQuery(window).height();var scroll_bottom=scroll_window+view_port_height;var menu_top=jQuery(this).offset().top;var menu_height=jQuery(this).height();var menu_pos=menu_top+menu_height;if(menu_pos>scroll_bottom){var moveTo=menu_height-25;moveTo='-'+moveTo+'px';jQuery(this).animate({top:moveTo},500)}},onHide:function(){jQuery(this).animate({top:0},500)}})});

/* - ++resource++apkn.workspaces.media/js/contacts-overlay.js - */
// http://www.apkn.org/portal_javascripts/++resource++apkn.workspaces.media/js/contacts-overlay.js?original=1
jq(document).ready(function(){jq('#contact_navigator a').prepOverlay({subtype:'ajax',filter:'#content > *'})});

