var $jq = jQuery.noConflict();

//Owain. Convert Menu Items to Welsh. 
if (!Array.prototype.map)
{
  Array.prototype.map = function(fun /*, thisp */)
  {
    "use strict";
    if (this === void 0 || this === null)
      throw new TypeError();
    var t = Object(this);
    var len = t.length >>> 0;
    if (typeof fun !== "function")
      throw new TypeError();
    var res = new Array(len);
    var thisp = arguments[1];
    for (var i = 0; i < len; i++){
      if (i in t)
        res[i] = fun.call(thisp, t[i], i, t);
    }
    return res;
  };
}

String.prototype.toTitleCase = function(str){
	return str.replace(/\w\S*/g, function(txt){return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();});
}

var FIXMENU = (function(){
	//Private methods
	var words = ['Arwyddo','Cofrhestri','English','Chwilio'];
	var w = Array.prototype.map.call(words,function(x){
		return x.toTitleCase(x);
	});

	//Public Methods
	return{
		init: function(){
			var self = this;
			var links = document.getElementById('mainbuttons').getElementsByTagName('a');
			for (var i = 0; i < links.length; i++ ) {
				links[i].innerHTML = w[i];
			
			}
		}
	}
	
})();
//End Menu Fix

Init = {};

Init.SearchPanel = function() {
	var searchPanel = $jq('#search-panel');
	$jq('#btn-search').live('click', function() {
		searchPanel.css('width', $jq('#mainbuttons').width());
		if(searchPanel.hasClass('collapsed')) {
			searchPanel.removeClass('collapsed').addClass('expanded');
			searchPanel.slideDown();
			$jq(this).animate({'height': '+=10px'}, 'fast');
			$jq('#search-bg').css('width', $jq(this).parent('li').width()-2).removeClass('hide').show();
			$jq(this).parent('li').addClass('active');
			searchPanel.find('input[type=text]').focus();
		}
		else if(searchPanel.hasClass('expanded')) {
			searchPanel.removeClass('expanded').addClass('collapsed');
			searchPanel.slideUp();
			searchPanel.find('input[type=text]').blur();
			$jq(this).animate({'height': '-=10px'}, 'fast');
			$jq(this).parent('li').removeClass('active');
			$jq('#search-bg').addClass('hide').hide();
		}
		return false;
	});
	if(searchPanel.hasClass('collapsed')) searchPanel.hide();
}

Init.MainpicSlider = function(slideValue) {
	var mainpic = $jq('#mainpic').cycle({ 
		fx:     'scrollHorz', 
		speed:   300, 
		timeout: 0,
		startingSlide: slideValue
	});
	$jq('#slider-control').slider({
		animate: true,
		step: 1,
		min: 1,
		max: 4,
		slide: function(event, ui ) {
			$jq(mainpic).cycle(ui.value-1);
			$jq('#slider-title').removeClass().addClass('slider-title'+(ui.value-1));
		}
	});
}

Init.Scroller = function() {
	$jq('marquee').marquee('scroller-text').mouseover(function () {
            $jq(this).trigger('stop');
        }).mouseout(function () {
            $jq(this).trigger('start');
        });
}

Init.Toolbar = function() {
	if($jq('#toolbar').length != 0) $jq('#wrapper').css('margin-top','100px');
}


$jq(document).ready(function() {

	if ($jq('html').hasClass('cym')){
		FIXMENU.init.call(this);
	}
	
	$jq('.pagination-prev').text('');

	var slideValue = 0;
	var body = $jq('#body');
	if(body.hasClass('yellow')) {
		Init.MainpicSlider(0);
	} else if(body.hasClass('pink')) {
		Init.MainpicSlider(1);
		$jq('.ui-slider-handle').css('left','33.3333%');
		$jq('#slider-title').removeClass().addClass('slider-title1');
	} else if(body.hasClass('blue')) {
		Init.MainpicSlider(2);
		$jq('.ui-slider-handle').css('left','66.6667%');
		$jq('#slider-title').removeClass().addClass('slider-title2');
	} else if(body.hasClass('purple')) {
		Init.MainpicSlider(3);
		$jq('.ui-slider-handle').css('left','100%');
		$jq('#slider-title').removeClass().addClass('slider-title3');
	} else {
		Init.MainpicSlider();
	}

	Init.SearchPanel();
	Init.Scroller();
	Init.Toolbar();

	// basic functions
    $jq('.hide').hide();
    $jq('.accessible');
});
