function PK() {
	this.help_container=null;
	this.initialize();
}
PK.prototype=({
initialize: function() {
	this.help_container=document.createElement('DIV');
	this.help_container.style.display='none';
	this.help_container.style.position='absolute';
	this.help_container.className='pk_help_container';
	this.help_container.id='pk_help_container';
	this.widget=new Widget();
},
display_registration_form: function(is_clean,display_my_form,abiturientid) {
	var form_obj=document.getElementById('registration_form');
	display_my_form=display_my_form ? 1 : 0;
	if(display_my_form) {
		is_clean=true;
	}
	var lastname=null;
	var firstname=null;
	var secondname=null;
	var email=null;
	var birthplace=null;
	var country=null;
	var region=null;
	var index=null;
	var city=null;
	var street=null;
	var house=null;
	var corpus=null;
	var flat=null;
	var pl_country=null;
	var pl_region=null;
	var pl_index=null;
	var pl_city=null;
	var pl_street=null;
	var pl_house=null;
	var pl_corpus=null;
	var pl_flat=null;
	var edu_speciality=null;
	var edu_organisation=null;
	var icq=null;
	var phone=null;
	var job=null;
	var appointment=null;
	var notes=null;
	var birthday=null;
	var gender=null;
	var citizenship=null;
	var familystatus=null;
	var baselevel=null;
	var edu_year=null;
	var levelid=null;
	var directionid=null;
	var partnerid=null;
	var formid=null;
	var specializationid=null;
	var ege_number=null;
	var clean=1;
	if(!is_clean) {
		lastname=form_obj.elements['lastname'].value;
		firstname=form_obj.elements['firstname'].value;
		secondname=form_obj.elements['secondname'].value;
		email=form_obj.elements['email'].value;
		birthplace=form_obj.elements['birthplace'].value;
		country=form_obj.elements['country'].value;
		region=form_obj.elements['region'].value;
		index=form_obj.elements['index'].value;
		city=form_obj.elements['city'].value;
		street=form_obj.elements['street'].value;
		house=form_obj.elements['house'].value;
		corpus=form_obj.elements['corpus'].value;
		flat=form_obj.elements['flat'].value;
		pl_country=form_obj.elements['pl_country'].value;
		pl_region=form_obj.elements['pl_region'].value;
		pl_index=form_obj.elements['pl_index'].value;
		pl_city=form_obj.elements['pl_city'].value;
		pl_street=form_obj.elements['pl_street'].value;
		pl_house=form_obj.elements['pl_house'].value;
		pl_corpus=form_obj.elements['pl_corpus'].value;
		pl_flat=form_obj.elements['pl_flat'].value;
		edu_speciality=form_obj.elements['edu_speciality'].value;
		edu_organisation=form_obj.elements['edu_organisation'].value;
		icq=form_obj.elements['icq'].value;
		phone=form_obj.elements['phone'].value;
		job=form_obj.elements['job'].value;
		appointment=form_obj.elements['appointment'].value;
		notes=form_obj.elements['notes'].value;
		var birth_date=new String(form_obj.elements['birthday[day]'].options[form_obj.elements['birthday[day]'].selectedIndex].value);
		var birth_month=new String(form_obj.elements['birthday[month]'].options[form_obj.elements['birthday[month]'].selectedIndex].value);
		var birth_year=new String(form_obj.elements['birthday[year]'].options[form_obj.elements['birthday[year]'].selectedIndex].value);
		birthday=birth_date+'-'+birth_month+'-'+birth_year;
		gender=form_obj.elements['gender'].options[form_obj.elements['gender'].selectedIndex].value;
		citizenship=form_obj.elements['citizenship'].options[form_obj.elements['citizenship'].selectedIndex].value;
		familystatus=form_obj.elements['familystatus'].options[form_obj.elements['familystatus'].selectedIndex].value;
		baselevel=form_obj.elements['baselevel'].options[form_obj.elements['baselevel'].selectedIndex].value;
		edu_year=form_obj.elements['edu_year'].options[form_obj.elements['edu_year'].selectedIndex].value;
		levelid=form_obj.elements['levelid'].options[form_obj.elements['levelid'].selectedIndex].value;
		directionid=form_obj.elements['directionid'].options[form_obj.elements['directionid'].selectedIndex].value;
		partnerid=form_obj.elements['partnerid'].options[form_obj.elements['partnerid'].selectedIndex].value;
		formid=form_obj.elements['formid'].options[form_obj.elements['formid'].selectedIndex].value;
		specializationid=form_obj.elements['specializationid'].options[form_obj.elements['specializationid'].selectedIndex].value;
		ege_number=form_obj.elements['ege_number'].value;
		clean=0;
	}
	var ajax=new Ajax('pk/request.php',form_obj,'getHtmlOutput','html');
//	ajax.loadingHTML=get_loading_html_table(form_obj);
	ajax.method='POST';
	ajax.execute(
		new Array('lastname',lastname),
		new Array('firstname',firstname),
		new Array('secondname',secondname),
		new Array('email',email),
		new Array('birthplace',birthplace),
		new Array('country',country),
		new Array('region',region),
		new Array('index',index),
		new Array('city',city),
		new Array('street',street),
		new Array('house',house),
		new Array('corpus',corpus),
		new Array('flat',flat),
		new Array('pl_country',pl_country),
		new Array('pl_region',pl_region),
		new Array('pl_index',pl_index),
		new Array('pl_city',pl_city),
		new Array('pl_street',pl_street),
		new Array('pl_house',pl_house),
		new Array('pl_corpus',pl_corpus),
		new Array('pl_flat',pl_flat),
		new Array('edu_speciality',edu_speciality),
		new Array('edu_organisation',edu_organisation),
		new Array('icq',icq),
		new Array('phone',phone),
		new Array('job',job),
		new Array('appointment',appointment),
		new Array('notes',notes),
		new Array('birthday',birthday),
		new Array('gender',gender),
		new Array('citizenship',citizenship),
		new Array('familystatus',familystatus),
		new Array('baselevel',baselevel),
		new Array('edu_year',edu_year),
		new Array('levelid',levelid),
		new Array('directionid',directionid),
		new Array('partnerid',partnerid),
		new Array('formid',formid),
		new Array('specializationid',specializationid),
		new Array('abiturientid',abiturientid),
		new Array('ege_number',ege_number),
		new Array('clean',clean),
		new Array('display_my_form',display_my_form),
		new Array('display_registration_form',null),
		new Array('html',null)
		);
	return;
},
variant_filter: function(ftitle,reg_form) {
	var form_obj=document.getElementById('variant_filter');
	var felements=form_obj.elements;
	if(!felements) {
		felements=form_obj.getElementsByTagName('SELECT');
	}
	if(!reg_form) {
		reg_form=0;
	}
	var ajax=new Ajax('pk/request.php',form_obj,'getHtmlOutput','html');
	ajax.loadingHTML=get_loading_html_table(form_obj);
	ajax.method='POST';
	ajax.execute(
		new Array('formid',felements['formid'].options[felements['formid'].selectedIndex].value),
		new Array('partnerid',felements['partnerid'].options[felements['partnerid'].selectedIndex].value),
		new Array('levelid',felements['levelid'].options[felements['levelid'].selectedIndex].value),
		new Array('directionid',felements['directionid'].options[felements['directionid'].selectedIndex].value),
		new Array('specializationid',felements['specializationid'].options[felements['specializationid'].selectedIndex].value),
		new Array('reg_form',reg_form),
		new Array('title',ftitle),
		new Array('variant_filter',null),
		new Array('html',null)
		);
	return;
},
registration_law_view: function() {
	if(this.widget.w_id) {
		return;
	}
	var _this=this;
	this.widget.new_button('Закрыть',function() { _this.widget.close(); });
	with(this.widget) {
		title='Условия передачи личных данных в ПК СДО МГУПП';
		width=600;
		widget('registration_law','',document.getElementById('formid'));
	}
	var ajax=new Ajax('pk/request.php',this.widget.get_element('content'),'getHtmlOutput','html');
	ajax.method='POST';
	ajax.execute(
		new Array('registration_law_view',null),
		new Array('html',null)
		);
	return;
},
registration_submit: function() {
	if(!this.registration_validate()) { return; }
//	if(!confirm('С передачей своих личных данных в Приемную комиссию ДО МГУПП согласен')) { return; }
	window.location='#top';
	this.display_registration_form(false);
	return;
},
registration_validate: function() {
	var form_obj=document.getElementById('registration_form');
	var redirected=false;
	for(var i=0;i<form_obj.elements.length;i++) {
		var elem=form_obj.elements[i];
		if(elem.className!='obligatory') { continue; }
		var correct=false;
		if(elem.tagName=='SELECT') {
			if(elem.options[elem.selectedIndex].value!=0) { correct=true; }
		} else if(elem.tagName=='INPUT') {
			if(elem.type=='checkbox') {
				if(elem.checked) { correct=true; }
			} else {
				if(elem.value!='') { correct=true; }
			}
		}
		this.clean_alerts(elem);
		if(!correct) {
			if(!redirected) {
				window.location='#'+elem.name;
				redirected=true;
			}
			this.alert_registration_error(elem,'Поле не заполнено');
		}
	}
	return !redirected;
},
clean_alerts: function (elem) {
	var td=elem.parentNode;
	td.className='common';
	var spans=td.getElementsByTagName('span');
	for(var i=0;i<spans.length;i++) {
		if(spans[i].className!='incorrect') { continue; }
		td.removeChild(spans[i]);
	}
	return;
},
alert_registration_error: function(elem,message) {
	if(!message) { message=''; }
	var td=elem.parentNode;
	td.className='incorrect';
	var span=document.createElement('span');
	span.className='incorrect';
	span.innerHTML=message;
	td.appendChild(span);
	return;
},
copy_pl: function () {
	var form_elements=document.getElementById('registration_form').elements;
	var elem_names=new Array('country','region','index','city','street','house','corpus','flat');
	for(var i=0;i<elem_names.length;i++) {
		form_elements['pl_'+elem_names[i]].value=form_elements[elem_names[i]].value;
	}
	return;
},
answer_faq_message_form: function(messageid) {
	window.location='#faq_message_form_header';
	var form_obj=document.getElementById('faq_message_form');
	var ajax=new Ajax('pk/request.php',form_obj,'getHtmlOutput','html');
	ajax.method='POST';
	ajax.execute(
		new Array('messageid',messageid),
		new Array('answer_faq_message_form',null),
		new Array('html',null)
		);
	return;
},
news_edit: function(messageid) {
	window.location='#news_edit_header';
	var form_obj=document.getElementById('news_edit');
	var ajax=new Ajax('pk/request.php',form_obj,'getHtmlOutput','html');
	ajax.method='POST';
	ajax.execute(
		new Array('id',messageid),
		new Array('news_edit_form',null),
		new Array('html',null)
		);
	interval_id=setInterval(function() {
		if(document.getElementById('news_edit').getElementsByTagName('TEXTAREA').length) {
			clearInterval(interval_id);
			HTMLArea.init();
		}
	
	},1000);
	return;
},
term_edit: function(termid) {
	window.location='#term_edit_header';
	var form_obj=document.getElementById('term_edit');
	var ajax=new Ajax('pk/request.php',form_obj,'getHtmlOutput','html');
	ajax.method='POST';
	ajax.execute(
		new Array('id',termid),
		new Array('term_edit_form',null),
		new Array('html',null)
		);
	interval_id=setInterval(function() {
		if(document.getElementById('term_edit').getElementsByTagName('TEXTAREA').length==2) {
			clearInterval(interval_id);
			HTMLArea.init();
		}
	
	},1000);
	return;
},
display_help: function(message) {
	if(!document.getElementById('pk_help_container')) {
		document.getElementById('page').appendChild(this.help_container);
	}
	if(!message) {
		this.help_container.style.display='none';
		return;
	}
	pos_x=50;
	pos_y=50+getBodyScrollTop();
	this.help_container.style.left=pos_x+'px';
	this.help_container.style.top=pos_y+'px';
	this.help_container.style.display='block';
	this.help_container.innerHTML=message;
	return;
},
display_option_text: function(sel_obj,opt_val) {
	var opt_n=option_num_by_value(sel_obj,opt_val);
	var opt_obj=sel_obj.options[opt_n];
	this.display_help(opt_obj.text);
	return;
},
hide_option_text: function() {
	this.display_help(false);
}
});
function form_element(el_type,el_name,el_value) {
	var el	=document.createElement('INPUT');
	el.setAttribute('type',el_type);
	el.setAttribute('name',el_name);
	el.setAttribute('value',el_value);
	return el;
}

function get_loading_html(obj)
	{
	var first_tr=obj.getElementsByTagName('TR')[0];
	setElementOpacity(first_tr,0.5);
	return obj.innerHTML;
	}
function get_loading_html_table(sobj)
	{
	var first_table=sobj.getElementsByTagName('TABLE')[0];
	if(!first_table) { return ''; }
	var table_trs=first_table.getElementsByTagName('TR');
	for(var i=0;i<table_trs.length;i++) {
		set_tr_opacity(table_trs[i],0.5);
	}
	return sobj.innerHTML;
	}
function option_num_by_value(sel_obj,val) {
	for(var i=0;i<sel_obj.options.length;i++) {
		if(sel_obj.options[i].value==val) { return i; }
	}
	return false;
}
function get_event_target_value(event) {
	return (event.target ? event.target.value : event.srcElement.value);
}
function pk_main_menu_button_pos(aobj,pos_x,pos_y) {
	var container=aobj;
	while(container.tagName!='LI') {
		container=container.parentNode;
	}
	container.style.left=pos_x+'px';
	container.style.top=pos_y+'px';
	return;
}
function getBodyScrollTop()
{
  return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
}
function alee_clock() {
	var container=document.getElementById('alee_clock');
	var currentTime=new Date();
	var gmtHours = -currentTime.getTimezoneOffset()/60;
	var mskGMT=4;
	var msk_offset=gmtHours-mskGMT;
	var currentHours=currentTime.getHours()-msk_offset;
	var currentMinutes=currentTime.getMinutes();
	var currentSeconds=currentTime.getSeconds();
	currentMinutes=(currentMinutes<10 ? '0' : '' )+currentMinutes;
	currentSeconds=(currentSeconds<10 ? '0' : '' )+currentSeconds;
	var currentTimeString=currentHours+':'+currentMinutes+':'+currentSeconds;
	container.innerHTML=currentTimeString+' <i>МСК</i>';
	return;
}

