/* ------------------------------------------------------
 Surrey County Council - Master JavaScript functions


 last modified: 2011-11-07 by Matthew Evans
 website:       http://www.surreycc.gov.uk/
--------------------------------------------------------- */
 
/* Print page
--------------------------------------------------------- */
function printPage() {
    if (window.print) {
        window.print();
    } 
    else {
        alert("Sorry, your browser doesn't support this feature.\n" +
                "Please use your browser's print button");
    }
}

/* Listen link
--------------------------------------------------------- */
function insipio_setReferer() {
    var theRefererForm = document.getElementById('insipioRefererForm');
    theRefererForm.referer.value = document.location;
    theRefererForm.submit();
}

/* Squiz
--------------------------------------------------------- */
function unCheckBox(id)
{
uncheckBox(id);
}

/* Added by Lukasz Pelc 19/07/11 */

var ColorBox = {

	links: jQuery("a.colorbox"),
	
	initialize: function() {
		
		if(!ColorBox.links.length) {
			return false;
		}
		
		ColorBox.links.colorbox({
			maxWidth: "100%",
			maxHeight: "100%",
			scalePhotos: false,
			scrolling: true
		});
		
	}

}

ColorBox.initialize(); 

/* Modified: 14/03/2011 by Bartosz Michalkiewicz (SquizPL) */  	
/* ----- Document Ready ----- */
var ajaxcount = 0;
$(document).ready(function() {

//gallery script

jQuery(document).ready(function() {
$(".shouldBeDisabled").attr('disabled','disabled');
$("#boro-box").hide();
});


jQuery('#CustomSlideshow').slideshow({
        width:500,
        height:375,
		play:true,
		time:3000,     // time out beetwen (ms)
        title:true,   // show title
        panel:true,    // show controls panel
        loop:true,    // stop looping
		playframe:false,
		controls :{         // show/hide controls elements
		            'hide':false,    // show controls bar on mouse hover
		            'first':true,   // goto first frame
		            'prev':true,    // goto previouse frame (if it first go to last)
		            'play':true,    // play slideshow
		            'next':true,    // goto next frame (if it last go to first)
		            'last':true,    // goto last frame
		            'help':false,    // show help message
		            'counter':false  // show slide counter
		        }
		
	});

//user id change
jQuery("#idChangeButton").click(function (){
	var newUserId = jQuery("#idChangeInput").val();
	var reg = /^[0-9]+$/
	if(newUserId != "" && reg.test(newUserId)){
		var li = jQuery("li.liIdchange");
		var userId = jQuery("#userId").val();
		var Author_id;
		var Additional_editors;
		var Information_owner;
		var Deputy_information_owner;
		var Web_master_group;
		var checbox;
		var assetUrl;
		var checked = false;
		newUserId = parseInt(newUserId);
		li.each(function (){
			chebox = jQuery(this).find(".idchange");
			if(chebox.attr("checked")){
				checked = true;
				assetUrl = jQuery(this).find("input.assetUrl").val();
				Author_id = jQuery(this).find("input.Author_id").val();
				Additional_editors = jQuery(this).find("input.Additional_editors").val();
				Information_owner = jQuery(this).find("input.Information_owner").val();
				Deputy_information_owner = jQuery(this).find("input.Deputy_information_owner").val();
				Web_master_group = jQuery(this).find("input.Web_master_group").val();
				idChange(userId, Author_id, chebox.val(), newUserId, assetUrl, "a");
				idChange(userId, Additional_editors, chebox.val(), newUserId, assetUrl, "ae");
				idChange(userId, Information_owner, chebox.val(),newUserId, assetUrl, "io");
				idChange(userId, Deputy_information_owner, chebox.val(), newUserId, assetUrl, "dio");
				idChange(userId, Web_master_group, newUserId, chebox.val(), assetUrl,"wmg");
			}
		});
		if(!checked)
			alert("Please select page");
	}
	else
		alert("Please enter correct id");
});

// user login validation
if(jQuery("#login_form_login_prompt").length){
    jQuery("#login_form_login_prompt").validate();    
    jQuery("#SQ_LOGIN_USERNAME").rules("add", "required");
    jQuery("#SQ_LOGIN_PASSWORD").rules("add", "required"); 
}

  $("#q220662_q2, #q220662_q4").change(function(){
    change_select($(this));
  });
  colorboxVideos();
  if($("input[name='queries_date_query_toshow']").length){
     adjustCalendar();
  }


}); 	
/* ----- End Document Ready ----- */
/* ----- Add event form - auto select Town / bouroughs by MZ ----- */
function change_select(mySelect) {
var myObj = $(mySelect).attr('id');
var SelTownId = "q220662_q2";
var SelBourId = "q220662_q4";
  $(mySelect).find('option').each(function(){
    if ($(this).is(':selected')) {
      var reg = $(this).attr('class');
      if(reg == "") {
        $('#no_town, #no_bouroughs').attr('selected','selected');
        $('#' + SelTownId).find('option').show();
      } else
      {
        if(myObj == SelBourId) {
          $('#' + SelTownId).find('option').hide();
          $('#no_town').attr('selected','selected').show();
          $('#' + SelTownId).find('option.' + reg).show();
        } else
        {
          $('#' + SelTownId).find('option').show();
          $('#' + SelBourId).find('option.' + reg).attr('selected','selected');
        };
      };
    };
  });
};
/* ----- End Add event form - auto select Town / bouroughs by MZ ----- */
/* End Modified by Marcin Zubrzycki (SquizPL) */ 


/* 	Flowplayer Video
--------------------------------------------------------- */
function colorboxVideos(){
	var settings = {
        videoDefaultWidth:640,
        videoDefaultHeight:390,
		audioDefaultWidth:640,
		audioDefaultHeight:30,
		pattr: "v=",
		prefixYT: "http://www.youtube.com/embed/"
	}
	$(".player").each(function(){
		var str = $(this).attr("href");
		var ind = str.indexOf(settings.pattr) + settings.pattr.length;
		var href = settings.prefixYT + str.substr(ind);
		$(this).colorbox({iframe:true, href:href, innerWidth:settings.videoDefaultWidth, innerHeight:settings.videoDefaultHeight,onComplete:function(){
			$(this).find("iframe")
		}});
	});

	$("a.flowplayer-video").colorbox({title:function(){
        return $(this).html();
	}, html:function(){
        	// GET THE MAIN ATTRIBUTES
        	var attrHref = $(this).attr('href');
        	html = '<a href="'+attrHref+'" style="display:block;width:'+settings.videoDefaultWidth+'px;height:'+settings.videoDefaultHeight+'px;" id="player"></a>';
        	return html;
        },
        onComplete:function(){
        	loadFlowPlayer();
        }
	});
	$("a.flowplayer-audio").colorbox({title:function(){
        return $(this).html();
	}, html:function(){
        	// GET THE MAIN ATTRIBUTES
        	var attrHref = $(this).attr('href');
        	html = '<a href="'+attrHref+'" style="display:block;width:'+settings.audioDefaultWidth+'px;height:'+settings.audioDefaultHeight+'px;" id="player"></a>';
        	return html;
        },
        onComplete:function(){
        	loadFlowPlayer();
        }
	});
}

function loadFlowPlayer(){
	flowplayer("player", "/__data/assets/file/0007/63844/flowplayer-3.2.5.swf",{
		clip: {

				// these two configuration variables does the trick
				autoPlay: true, 
				autoBuffering: true,
				scale:"orig"
				
			},
		plugins:  {
				audio: {
					url: '/__data/assets/file/0004/65479/flowplayer.audio-3.2.2.swf'
				},
				controls: {
					url: '/__data/assets/file/0008/63845/flowplayer.controls-3.2.3.swf'
				}
		},
		onLoad: function(){
			$("#cboxLoadedContent").find("object").focus();
		}
	});
}

function adjustCalendar(){
$(".first-column img").click(function(){
   var topPos = $(this).position().top - 5;
   var leftPos = $(this).position().left + 20;
   $("table.cal").parent().css({top:topPos+"px",left:leftPos+"px"});
});
}

function idChange (userId, metadataIds, assetId, newUserId, assetUrl, type){
	var url = assetUrl;
	if (metadataIds.indexOf(userId) != -1){
		metadataIds = metadataIds.replace(userId, newUserId);
		jQuery("#idChangeInput").addClass("loading");
		if (type == "a"){
			setMetadata (assetId, 64510, metadataIds, function (){
				ajaxcount++;
				url += "?SQ_DESIGN_NAME=blank&set-admin-permissions=true&id=" + newUserId;
				jQuery.post(url, loadClose);
			});
		}
		if (type == "ae"){
			setMetadata (assetId, 8862, metadataIds, function (){
				ajaxcount++;
				url += "?SQ_DESIGN_NAME=blank&set-permissions=true&id=" + newUserId;
				jQuery.post(url, loadClose);
			});
		}
		if (type == "io"){
			setMetadata (assetId, 705, metadataIds, function (){});
		}
		if (type == "dio"){
			setMetadata (assetId, 8844, metadataIds, function (){});
		}
		if (type == "wmg"){
			setMetadata (assetId, 8842, metadataIds, function (){
				ajaxcount++;
				url += "?SQ_DESIGN_NAME=blank&set-permissions=true&id=" + newUserId;
				jQuery.post(url, loadClose);
			});
		}	
	}
}

function loadClose(){
	ajaxcount--;
	if(ajaxcount == 0){
		jQuery("#idChangeInput").removeClass("loading");
	}
}

/* ---------- Add events form validation -------------------- */
jQuery("#page_asset_builder_1793").removeAttr("onsubmit");

jQuery("#page_asset_builder_1793").each(function() {
   jQuery(this).validate();
   jQuery("#calendar_event_single_0_1106").rules("add", { required: true});
   jQuery("#metadata_field_text_714_value").rules("add", { required: true});
   jQuery("#metadata_field_text_715_value").rules("add", { required: true});
   jQuery("#metadata_field_text_718_value").rules("add", { required: true});
   jQuery("#metadata_field_select_728").rules("add", { required: true});
   jQuery("#metadata_field_text_1813_value").rules("add", { required: true});
   jQuery("#metadata_field_text_1812_value").rules("add", { required: true});
   jQuery("#metadata_field_text_719_value").rules("add", { required: true});
   jQuery("#metadata_field_text_720_value").rules("add", { required: true});
   jQuery("#metadata_field_text_723_value").rules("add", { required: true});
   jQuery("#metadata_field_text_724_value").rules("add", { required: true});
});

function select_town(form) {
      var input_field = $("#q220662_q23");
      var option = $("#q220662_q2").val();
      $(input_field).val(option);
}
var input_field = $("#q220662_q23").val();
$("#q220662_q2").find("option[value='" + input_field + "']").attr("selected", "selected");
