jQuery(function($){

	var actualPage = window.location.href;
	
//	$(".pxSingleView .tx-proxsysext-pi3-right").append($(".pxSingleView .button_back"));

	// Put pdf link of container to the form above.
	$(".tx-proxsysext-pi2 .container_pdf").appendTo(".px_pi2_projectForm .actionsOther ");

	pxAttachTo_classId();

	var urlGet = new pxWerteliste(location.search);
	var imitateGETarray = new Object();
	for (var getParam in urlGet) {
		imitateGETarray[getParam] = urlGet[getParam];
	}

	if(imitateGETarray["pageIdPi8"]){
		$(".page" + imitateGETarray["pageIdPi8"]).addClass("active");
		$(".page-" + imitateGETarray["pageIdPi8"]).addClass("active");
	}

	if(imitateGETarray["pxSingleView[popUp_contentId]"]){
		var bodyCss = jQuery("body").addClass("singleView_popUp");
		if(imitateGETarray["parentContentId"]){
			jQuery('.tx-proxsysext-pi2 li.tx-proxsysext-pi3-item .RC_' + imitateGETarray["pxSingleView[popUp_contentId]"] + ' img').trigger('click');
		} else {
			jQuery('.tx-proxsysext-pi2 li.tx-proxsysext-pi3-item').find('.detailInfo').trigger('click');
		}
	}

/*
	var urlGet = new pxWerteliste(location.search);
  	var testOutputGET = new Object();
  for (var getParam in urlGet) {
    testOutputGET[getParam] = urlGet[getParam];
  }
  alert(testOutputGET["pxExtSearch[Kommentar]"]);
*/

	// To achive that a deleted video disappears without clicking a second link.
	if (actualPage.search(/tx_proxsysext_pi3\[deleteMedia\]=.+/) != -1) {
		var cutLinkQuestionmark = actualPage.indexOf("?");
		var newLocation = actualPage.substr(0, cutLinkQuestionmark);
		window.location.href = newLocation;
	}
	if (actualPage.search(/tx_proxsysext_pi3\[publishMedia\]=.+/) != -1) {
		var cutLinkQuestionmark = actualPage.indexOf("?");
		var newLocation = actualPage.substr(0, cutLinkQuestionmark);
		window.location.href = newLocation;
	}
	// mm_forum. To make possible that a new forum is shown without making a reload/page-change manually
	if (actualPage.search(/tx_mmforum_pi1\[action\]=$/) != -1) {
		var cutLinkQuestionmark = actualPage.indexOf("?");
		var newLocation = actualPage.substr(0, cutLinkQuestionmark);
		window.location.href = newLocation;
	}
	// Use words from Px-Quickselect in search form of proxsysext
	$('.px_quickselect li').click(function(){
		var quickSearchItem = $(this).text();
		$('.proxsysext-searchform').find('input[name=tx_proxsysext_pi5[searchString]]').attr('value', quickSearchItem);
		$('.proxsysext-searchform').find('input[type=submit]').click();
	});

	// Enable search result according to page
	$('.proxsysext-search-contentMenu li a').click(function(){
		var searchPageLink = $(this).attr('href');
		$('.proxsysext-searchform').attr('action', searchPageLink);
		var pxSearchItem = $('.px_label_searchString .searchString').text();
		$('.proxsysext-searchform').find('input[name=tx_proxsysext_pi5[searchString]]').attr('value', pxSearchItem);
		$('.proxsysext-searchform').find('input[type=submit]').click();
		return false;
	});
/*
	$(".px_quickselect ul").css({"display":"none"});
	$(".px_quickselect .qsHeader").toggle(
		function () {
			$(".px_quickselect ul").css({"display":"block"});
		 },
		function () {
			$(".px_quickselect ul").css({"display":"none"});
		 }
	);
*/
	// For menu of Disk ID
/*
if (window.location.search != "")
  alert(window.location.search);
*/

	if(actualPage.match(/modus=container/) == "modus=container"){
		var modusContainer = true;
	}
	if ((actualPage.search(/pxDiskID.+/) == -1) || (modusContainer == true)) {
		$(".px_diskIdOutput ul").css({"display":"none"});
	} else if(actualPage.search(/pxDiskID.+/) != -1){	
		$(".px_diskIdOutput ul").css({"display":"block"});	
		$(".px_selectFolderDelete, .px_newFolder_inputName, .px_newFolder_submit").css({"display":"none"});	
//		$(".tx-proxsysext-pi2 form[name=projectForm], .px_label_actualFolder").css({"display":"none"});
		$(".px_label_actualFolder").css({"display":"none"});
		$(".tx-proxsysext-pi3-item #published, .tx-proxsysext-pi3-item  #publish").css({"display":"none"});
//		$(".tx-proxsysext-pi2 form[name=projectForm] input[name=searchPhrase]").css({"display":"block"});
	}
	$(".px_diskIdOutput .header").click(function () {
		var px_diskIdOutput_ul_css = $(".px_diskIdOutput ul").css("display");
		if(px_diskIdOutput_ul_css == 'none'){
			window.location.href = $(".px_diskIdOutput ul li:first a").attr('href');
//			$(".px_diskIdOutput ul").css({"display":"block"});
//			$(".px_quickselect ul").css({"display":"none"});
		} else {
			$(".px_diskIdOutput ul").css({"display":"none"});
		}
	});

//	px_GET_param('modus');
//	if ((actualPage.search(/pxQuickSearchYear.+/) == -1) || (GET['modus'] == 'container')) {
	if ((actualPage.search(/pxQuickSearchYear.+/) == -1) || (modusContainer == true)) {
//	if ((actualPage.search(/pxQuickSearchYear.+/) == -1)) {
		$(".px_quickselect ul").css({"display":"none"});
	} else if(actualPage.search(/pxQuickSearchYear.+/) != -1) {	
//	} else {	
		$(".px_quickselect ul").css({"display":"block"});
		$(".px_selectFolderDelete, .px_newFolder_inputName, .px_newFolder_submit").css({"display":"none"});	
//		$(".tx-proxsysext-pi2 form[name=projectForm], .px_label_actualFolder").css({"display":"none"});
		$(".px_label_actualFolder").css({"display":"none"});
		$(".tx-proxsysext-pi3-item #published, .tx-proxsysext-pi3-item  #publish").css({"display":"none"});
	}

	$(".px_quickselect .qsHeader").click(function () {
		var px_quickselect_ul_css = $(".px_quickselect ul").css("display");
		if(px_quickselect_ul_css == 'none'){
			window.location.href = $(".px_quickselect ul li:first a").attr('href');
		} else {
			$(".px_quickselect ul").css({"display":"none"});
		}
	});

/*
	if (actualPage.search(/fId.+/) == -1) {
		$("ul.px_folderList").css({"display":"none"});
	} else {	
		$("ul.px_folderList").css({"display":"block"});			
	}
*/
	if ((actualPage.search(/pId.+/) != -1) && (actualPage.search(/fId.+/) != -1)) {
		$("ul.px_folderList").css({"display":"block"});
	} else {	
		$("ul.px_folderList").css({"display":"none"});			
	}
	$(".px_folder_header").click(function () {
		var px_folderList_ul_css = $("ul.px_folderList").css("display");
		if(px_folderList_ul_css == 'none'){
			window.location.href = $("ul.px_folderList li:first a").attr('href');
		} else {
			$("ul.px_folderList").css({"display":"none"});
		}

	});

/*
	$('.px_diskIdOutput .diskIdList_form option').click(function(){
		$(".px_diskIdOutput .diskIdList_form").submit();
	});
*/

	// Make that enter-key can submit a form for some input fields
//	var pxFormEnter = $("form.px_pi2_projectForm input[type=text], .px_media_search input.searchPhrase");
	var pxFormEnter = $("form.px_pi2_projectForm input[type=text], form.px_pi2_searchForm input[type=text]");
	pxFormEnter.keypress(function (e) {
		if (e.which == 13) {
//	pxFormEnter.keydown(function (e) {
//		if (e.keyCode == 13) {
			$("~ input[type=button]", this).click();
			// for "safari":
			return false;
		};
	});

	pxSearchFormat();

})

	// Search: Format metadata-item, if it fits the search result
	function pxSearchFormat(){

	//	var px_label_actualFolder_valueSearch = jQuery(".px_label_actualFolder .value_search").text();
		var searchTerm = actualPage.split('search=');
	//	if(px_label_actualFolder_valueSearch){
		if(searchTerm[1]){

			searchTerm = searchTerm[1].split('&');
			searchTerm = searchTerm[0];
			searchTerm = searchTerm.replace(/%20/g, " ");
			searchTerm = searchTerm.replace(/%22/g, ""); //double quotes
			searchTerm = searchTerm.replace(/%5C%27/g, ""); //single quotes

		//	var px_l_aF_vS_array = px_label_actualFolder_valueSearch.split(" ");
			var px_l_aF_vS_array = searchTerm.split(" ");
//			jQuery(".tx-proxsysext-pi3-item .detailInfo").click(function(){
				jQuery(".tx-proxsysext-pi3-item .mediafiles_filename .name").each(function(){
					for(var i=0;i<px_l_aF_vS_array.length;i++){
						jQuery(this).filter(":contains(" + px_l_aF_vS_array[i] + ")").parents("h5:first").css("background-color", "#fdd9c7");
					}
				});
				jQuery(".tx-proxsysext-pi3-item .content").each(function(){
					for(var i=0;i<px_l_aF_vS_array.length;i++){
						jQuery(this).filter(":contains(" + px_l_aF_vS_array[i] + ")").css("background-color", "#fdd9c7");
					}
				});
			//	jQuery(".tx-proxsysext-pi3-item .content, .selectableMetadata_list li .content, .tx-proxsysext-pi3-item #longList li .metaValue").each(function(){
				jQuery(".selectableMetadata_list li .content, .tx-proxsysext-pi3-item #longList li .metaValue").each(function(){
					for(var i=0;i<px_l_aF_vS_array.length;i++){
						jQuery(this).filter(":contains(" + px_l_aF_vS_array[i] + ")").parents("li:first").css("background-color", "#fdd9c7");
					}
				});
//			});
		}
	}

/*
// Works after click of the submit-button of the edit form of a media content:
function redirectFromMetaformToShowInfo(){
	var selected_showNewsInfo1 = jQuery("#" + pxMediaId + " .detailInfo[onClick^=showNewsInfo]");
	var selected_showDirektInfo1 =  jQuery("#" + pxMediaId + " .detailInfo[onClick^=showDirektInfo]");
	var selected_showNewsInfo2 = selected_showNewsInfo1.attr("class");
	var selected_showDirektInfo2 =  selected_showDirektInfo1.attr("class");
//alert(selected_showDirektInfo2);
	if(selected_showNewsInfo2 == "detailInfo"){
// alert(selected_showNewsInfo);
		selected_showNewsInfo1.attr("onClick");
	} else if(selected_showDirektInfo2 == "detailInfo"){
// alert(selected_showDirektInfo2);
		var x = selected_showDirektInfo1.attr("onClick");
// alert(x);
	//	x = x.slice(0,14);
		x = x.slice(15, x.length - 1);
// alert(x);
	//	selected_showDirektInfo2.attr("onClick");
	showDirektInfo(x);
	}
}
*/
// Works after click of the submit-button of the edit form of a media content:
function redirectFromMetaformToShowInfo(){

	var selected_showNewsInfo = jQuery("#" + pxMediaId + " .detailInfo[onClick^=showNewsInfo]");
	var selected_showDirektInfo =  jQuery("#" + pxMediaId + " .detailInfo[onClick^=showDirektInfo]");
	var selected_showNewsInfo_class = selected_showNewsInfo.attr("class");
	var selected_showDirektInfo_class =  selected_showDirektInfo.attr("class");

	if(selected_showNewsInfo_class == "detailInfo"){
		var selected_showNewsInfo_onClick = selected_showNewsInfo.attr("onClick");
		if(selected_showNewsInfo_onClick.match(/big3.png/) == "big3.png"){
			return 1;
		} else {
			return 0;
		}
	} else if(selected_showDirektInfo_class == "detailInfo"){
		var selected_showDirektInfo_onClick = selected_showDirektInfo.attr("onClick");
		if(selected_showDirektInfo_onClick.match(/big3.png/) == "big3.png"){
			return 1;
		} else {
			return 0;
		}
	}

}

// Make ":contains" case insensitive:
jQuery.expr[':'].contains = function(a,i,m){
  return jQuery(a).text().toUpperCase()
  .indexOf(m[3].toUpperCase())>=0;
};

//Put Folders to places, that were entered in flexform or as typoscript constant.
//Start function pxChangeClassCurrent to change the menu item that has the class current.
function pxAttachTo_classId(){

	var PX_classId_projectFolders = jQuery("*").is("meta[name=PX_classId_projectFolders]");
	if(PX_classId_projectFolders != false) {
		var PX_classId_append = document.getElementsByName('PX_classId_append')[0].content;
		var PX_classId_projectFolders = document.getElementsByName('PX_classId_projectFolders')[0].content;
		if(PX_classId_projectFolders != ''){
			if(PX_classId_append == 1){
				jQuery(PX_classId_projectFolders).append(jQuery(".px_folderList"));
			} else{
				jQuery(PX_classId_projectFolders).after(jQuery(".px_folderList"));
			}
		}
		var PX_classId_quickselect = document.getElementsByName('PX_classId_quickselect')[0].content;
		if(PX_classId_quickselect != ''){
			if(PX_classId_append == 1){
				jQuery(PX_classId_quickselect).append(jQuery(".quickselectList"));
			} else{
				jQuery(PX_classId_quickselect).after(jQuery(".quickselectList"));
			}
			pxChangeClassCurrent ("pxQuickSearchYear", PX_classId_quickselect, PX_classId_projectFolders);
		}

		var PX_classId_diskId = document.getElementsByName('PX_classId_diskId')[0].content;
		if(PX_classId_diskId != ''){
			if(PX_classId_append == 1){
				jQuery(PX_classId_diskId).append(jQuery(".diskIdList"));
			} else{
				jQuery(PX_classId_diskId).after(jQuery(".diskIdList"));
			}
			pxChangeClassCurrent ("pxDiskID", PX_classId_diskId, PX_classId_projectFolders);
		}

		var PX_classId_container = document.getElementsByName('PX_classId_container')[0].content;
		if(PX_classId_container != ''){
			pxChangeClassCurrent ("modus=container", PX_classId_container, PX_classId_projectFolders);
		}

		pxClassCurrentRemove ("pxExtendedSearch=1", PX_classId_projectFolders);
		pxClassCurrentRemove ("pxExtSearch", PX_classId_projectFolders);

	}
}
// Change the menu item that has the class "current".
function pxChangeClassCurrent (matchTerm, PX_classId, PX_classId_projectFolders) {
	
	matchTerm = new RegExp(matchTerm);
	var uri_matchTerm = actualPage.match(matchTerm);
	
	if(uri_matchTerm){	
		var getClassCurrent_true = jQuery(PX_classId).siblings().not("ul").not("span").is(".current");
		if(getClassCurrent_true){
			var getClassCurrent = jQuery(PX_classId_projectFolders);
			var getClassCurrent_text = jQuery(PX_classId_projectFolders).attr("class");
			if (getClassCurrent_text) {
				getClassCurrent_text = getClassCurrent_text.replace(/ current/, "");
				getClassCurrent.attr('class', getClassCurrent_text);
			}
		}
		createNewClassWithCurrent (PX_classId, "");

	}
	
}

// Only do away with "current" in class.
function pxClassCurrentRemove (matchTerm, PX_classId_projectFolders) {
	
	matchTerm = new RegExp(matchTerm);
	var uri_matchTerm = actualPage.match(matchTerm);
	
	if(uri_matchTerm){	
			var getClassCurrent = jQuery(PX_classId_projectFolders);
			var getClassCurrent_text = jQuery(PX_classId_projectFolders).attr("class");
			if (getClassCurrent_text) {
				getClassCurrent_text = getClassCurrent_text.replace(/ current/, "");
				getClassCurrent.attr('class', getClassCurrent_text);
			}

	}
	
}

function createNewClassWithCurrent (PX_classId, suffix){

	var PX_class = PX_classId.match(/^./);
	if (PX_class) {
//		PX_class = PX_classId;
	PX_classArray = PX_classId.split(".");
	PX_class = PX_classArray[PX_classArray.length - 1];
	}
	else {
		PX_class = "";
	}
	jQuery(PX_classId).attr("class", PX_class + " current"+suffix);
}

/*
function px_GET_params() {
   var GET = new Array();
   if(location.search.length > 0) {
      var get_param_str = location.search.substring(1, location.search.length);
      var get_params = get_param_str.split("&");
      for(i = 0; i < get_params.length; i++) {
         var key_value = get_params[i].split("=");
         if(key_value.length == 2) {
            var key = key_value[0];
            var value = key_value[1];
            GET[key] = value;
         }
      }
   }
   return(GET);
}
 
function px_GET_param(key) {
   var get_params = px_GET_params();
   if(get_params[key])
      return(get_params[key]);
   else
      return false;
}
*/

function pxWerteliste (querystring) {
  if (querystring == '') return;
  var wertestring = querystring.slice(1);
  var paare = wertestring.split("&");
  var paar, name, wert;
  for (var i = 0; i < paare.length; i++) {
    paar = paare[i].split("=");
    name = paar[0];
    wert = paar[1];
    name = unescape(name).replace("+", " ");
    wert = unescape(wert).replace("+", " ");
    this[name] = wert;
  }
}

