/*------------ Used in templates: oppdater_firma, bli_kunde ----------*/
function check_company(){
var contact = document.company.elements['contact'].value;
var companyname = document.company.elements['companyname'].value;
//var orgnu = document.company.elements['orgnu'].value;
var address = document.company.elements['address'].value;
var zipcode = document.company.elements['zipcode'].value;
var city = document.company.elements['city'].value;
var telephone = document.company.elements['telephone'].value;
var email = document.company.elements['from'].value;
//-----Check for content-----
if (!contact) {
window.alert(freetext.alert_contact);
return false;
}
else if (!companyname) {
window.alert(freetext.alert_company);
return false;
}
//else if (!orgnu) {
// window.alert(freetext.alert_organization);
// return false;
//}
else if (!address) {
window.alert(freetext.alert_address);
return false;
}
else if (!zipcode) {
window.alert(freetext.alert_post);
return false;
}
else if (!city) {
window.alert(freetext.alert_postalcode);
return false;
}
else if (!email) {
window.alert(freetext.alert_email);
return false;
}
else if (!telephone) {
window.alert(freetext.alert_telephone);
return false;
}
//-----Check for valid content-----
if(!validate_zipcode_no(zipcode)){
return false;
}
else if(!validate_email(email)){
return false;
}
else if(!validate_telephone(telephone)){
return false;
}
//-----Return true if everything is ok-----
return true;
}
/*------------ Used in templates: kurs_skjema ----------*/
function check_courseinfo(){
var contact = document.course.elements['contact'].value;
var address = document.course.elements['address'].value;
var zipcode = document.course.elements['zipcode'].value;
var city = document.course.elements['city'].value;
var telephone = document.course.elements['telephone'].value;
var email = document.course.elements['email'].value;
var cc = document.course.elements['cc'].value;
//-----Check for content-----
if (!contact) {
window.alert(freetext.alert_contact);
return false;
}
else if (!address) {
window.alert(freetext.alert_address);
return false;
}
else if (!zipcode) {
window.alert(freetext.alert_post);
return false;
}
else if (!city) {
window.alert(freetext.alert_postalcode);
return false;
}
else if (!telephone) {
window.alert(freetext.alert_telephone);
return false;
}
//-----Check for valid content-----
if(!validate_zipcode_no(zipcode)){
return false;
}
else if(email != "" && !validate_email(email)){
return false;
}
else if(!validate_telephone(telephone)){
return false;
}
//-----Send copy of email to user-----
if(email != ""){
document.course.elements['cc'].value = email;
}
//-----Return true if everything is ok-----
return true;
}
/*------------ Used in templates: kontakt_skjema ----------*/
function check_contactinfo(){
var contact = document.contact.elements['contact'].value;
var title = document.contact.elements['title'].value;
var telephone = document.contact.elements['telephone'].value;
var email = document.contact.elements['from'].value;
var companyname = document.contact.elements['companyname'].value;
var info = document.contact.elements['contact_info'].value;
//-----Check for content-----
if (!contact) {
window.alert(freetext.alert_contact);
return false;
}
else if (!title) {
window.alert(freetext.alert_title);
return false;
}
else if (!telephone) {
window.alert(freetext.alert_telephone);
return false;
}
else if (!email) {
window.alert(freetext.alert_email);
return false;
}
else if (!companyname) {
window.alert(freetext.alert_companyname);
return false;
}
else if (!info) {
window.alert(freetext.alert_state_inquiry);
return false;
}
if($('department')){
var department = document.contact.elements['department'].value;
if(!department) {
window.alert(freetext.alert_department);
return false;
}
}
//-----Check for valid content-----
if(!validate_email(email)){
return false;
}
//-----Return true if everything is ok-----
return true;
}
/*------------ Used in templates: competition_form ----------*/
function check_competition_info(){
var contact = document.contact.elements['contact'].value;
var email = document.contact.elements['from'].value;
var mand_error = document.contact.elements['mand_error'].value;
var email_error = document.contact.elements['email_error'].value;
//-----Check for content-----
if (!contact) {
window.alert(mand_error);
return false;
}
else if (!email) {
window.alert(mand_error);
return false;
}
//-----Check for valid content-----
if(!validate_email_language(email)){
window.alert(email_error);
return false;
}
//-----Return true if everything is ok-----
return true;
}
function check_order(){
/* ----------midlertidig deaktivert-------------
var d_fname = document.orders.elements['ORDERS.D_FNAME'].value;
var d_lname = document.orders.elements['ORDERS.D_LNAME'].value;
var d_zipcode = document.orders.elements['ORDERS.D_ZIPCODE'].value;
var d_city = document.orders.elements['ORDERS.D_CITY'].value;
var d_email = document.orders.elements['ORDERS.D_EMAIL'].value;
var d_telephone = document.orders.elements['ORDERS.D_TELEPHONE'].value;
//-----Check for content-----
if (!d_fname) {
window.alert(freetext.alert_name);
return false;
}
else if (!d_lname) {
window.alert(freetext.alert_lastname);
return false;
}
else if (!d_zipcode) {
window.alert(freetext.alert_post);
return false;
}
else if (!d_city) {
window.alert(freetext.alert_postalcode);
return false;
}
else if (!d_email) {
window.alert(freetext.alert_email);
return false;
}
else if (!d_telephone) {
window.alert(reetext.alert_telephone);
return false;
}
//-----Check for valid content-----
if(!validate_zipcode_no(d_zipcode)){
return false;
}
else if(!validate_email(d_email)){
return false;
}
else if(!validate_telephone(d_telephone)){
return false;
}
*/
//-----Return true if everything is ok-----
return true;
}
function validate_email_language(email_str){
var email_filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
if (!email_filter.test(email_str)){
return false;
}
else {
return true;
}
}
function validate_email(email_str){
var email_filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
if (!email_filter.test(email_str)){
alert(freetext.alert_invalid_email);
return false;
}
else {
return true;
}
}
function validate_zipcode_no(zipcode_str){
var zipcode_filter = /^([\d]+)$/i;
if (!zipcode_filter.test(zipcode_str)){
alert(freetext.alert_only_number);
return false;
}
else if(zipcode_str < 1 || zipcode_str > 9999){
alert(freetext.alert_number_must_be);
return false;
}
else {
return true;
}
}
function validate_telephone(telephone_str){
var telephone_filter = /^([\d]+)$/i;
if (!telephone_filter.test(telephone_str)){
alert(freetext.alert_phone_only_number);
return false;
}
else if(telephone_str < 10000000 || telephone_str > 99999999){
alert(freetext.alert_invalid_phone);
return false;
}
else {
return true;
}
}
function check_rest(quantity,stock){
if(quantity > stock){
return confirm('Det er kun '+stock+' på lager. Vil du allikevel bestille?');
}
return true;
}
function confirm_delete() {
return confirm('Slett varekurv / varukorg?');
}
function getElements() {
var aElems = new Array();
$$('.formline').each(
function(oCheck) {
if (oCheck.checked) {
var sQTY = $('a_'+oCheck.id).value;
var sPID = $(oCheck.id).value;
var strElem = sPID + '=' + sQTY;
aElems.push(strElem);
}
}
);
var sJoined = aElems.join(",");
$('elems').value=sJoined;
$('frm_shoplist').submit();
}
function swap(obj){
$('yellow_basket').show();
$('yellow_basket').fade({ duration:3.0, from:1.0, to:0.0 });
/* new Effect.Opacity('yellow_basket', { from: 1.0, to: 0.0, duration: 2.5 });*/
}
document.observe('dom:loaded',function(){
confirmDelete();
updateQty();
viewBasket();
togglingInput();
toggle_input();
if ($('frm_user_addrs')) {
$('frm_user_addrs').observe('submit',valid_form);
}
if ($('frm_compaddrs_addrs')) {
$('frm_compaddrs_addrs').observe('submit',valid_company_form);
}
if ($('frm_unregister_orders')) {
$('frm_unregister_orders').observe('submit',valid_unregis_order);
}
if ($('copy_address')) {
$('copy_address').observe('click',copy_address);
}
if ($('orders')) {
$('orders').observe('submit',valid_regis_order);
}
});
function valid_regis_order(e){
Event.stop(e);
var id = 'CUSTOMER_REF';
var err_msg = "error_mandatory_field";
if($(id).value.blank()){
var err = new Element('span',{ 'class' : 'error'}).update(err_msg);
if(!$(id).next('span.error')){
$(id).insert({'after': err});
//$(id).previous('label').addClassName("error");
}
}else{
remove_err(id);
//WOSUP00000-1297 Disable order confirm after first click
disable_send();
$('orders').submit();
}
}
function disable_send() {
if($('send').hasClassName('after_clk_disable')) {
$('send').writeAttribute('disabled', 'true');
$('send').removeClassName('focus');
$('send').addClassName('notfocus');
$('send').up('p').insert(' '+ freetext.wait_sap_response +'');
}
}
function copy_address(){
if($('copy_address').checked){
if(!$('o_del_address').getValue().blank()){
$('o_bill_address').value = $('o_del_address').value;
}
if(!$('o_del_zipcode').getValue().blank()){
$('o_bill_zipcode').value = $('o_del_zipcode').value;
}
if(!$('o_del_city').getValue().blank()){
$('o_bill_city').value = $('o_del_city').value;
}
}
}
function togglingInput(){
if($$('.toggle')){
$$('.toggle').each(function(i){
i.observe('focus', function(e){ if(this.getValue() == this.title){ this.clear(); }});
i.observe('blur', function(e){ if(this.getValue().blank()) {this.value=this.title; }});
});
}
}
function viewBasket(){
var menu;
if($('green')){
$('green').observe('mouseover', function(e){
if($('green_text')){
if($('basket_box')){
if($('productnu')){
$('productnu').blur();
}
$('basket_box').show();
}
}
});
$('green').observe('mouseout', function(e){
if($('green_text')){
if($('basket_box')){
$('basket_box').hide();
if($('productnu')){
$('productnu').focus();
}
}
}
});
}
if($('yellow')){
$('yellow').observe('mouseover', function(e){
if($('basket_box')){
if($('productnu')){
$('productnu').blur();
}
$('basket_box').show();
}
});
$('yellow').observe('mouseout', function(e){
if($('basket_box')){
$('basket_box').hide();
if($('productnu')){
$('productnu').focus();
}
}
});
}
}
function testing(){
alert('Hei');
}
function shop_effect(){
new Effect.Fade('green', {afterFinish: function (obj) {
new Effect.Appear('yellow');
}
});
}
function confirmDelete(){
var a = $$('a[rel="confirm"]');
if(a){
a.each(function(e){
e.observe('click', function(o){
var msg = "confirm_delete";
if(!confirm(msg)){
Event.stop(o);
}
});
});
}
}
function showQtyResult(html){
$("order_loop").replace(html);
updateQty();
}
function updateQty(){
var a = $$('a[rel^="line_"]');
if(a){
var preload = new Element('img', { id:"updating", src : "http://medinor2.webon.net/medinor7/frontend/files/updating.gif"});
//var preload = 'Oppdatering...';
var warning = 'Vennligst oppgi nummer';
a.each(function(o){
var q = $(o.readAttribute("rel"));
o.observe('click', function(e){
var val = q.value;
Event.stop(e);
if(isNaN(val)){
alert(warning);
q.focus();
}else{
new Ajax.Request(o.href+'&quantity='+val+'&ajax=yes', {
method : 'get',
onCreate : function(){ /*$("order_loop").update(preload);*/ q.replace(preload); },
onComplete : function(resp){ showQtyResult(resp.responseText); }
});
}
});
});
}
preventEnterKey();
}
function preventEnterKey(){
var f = $("orders");
var submitOk = true;
if(f){
f.observe('submit', function(e){
if(!submitOk){ Event.stop(e); }
});
var inp = f.select('#basket-lines input[name="quantity"]'); // function to prevent submit by pressing ENTER when focusing in quantity boxes
inp.each(function(o){
o.observe('focus', function(e){
submitOk=false;
});
o.observe('blur', function(e){
if(!isNaN(Event.element(e).getValue())){submitOk = true;}else{ alert('Vennligst oppgi nummer'); Event.element(e).focus(); }
});
})
}
}
function check_newsletterinfo(){
var contact = document.contact.elements['contact'].value;
var email = document.contact.elements['to'].value;
if (!contact) {
window.alert(freetext.alert_contact);
return false;
}
else if (!email) {
window.alert(freetext.alert_email);
return false;
}
else if(!validate_email(email)){
return false;
}
}
function newspop(url)
{
var newwindow;
newwindow=window.open(url,'','height=600,width=800,resizable=yes,scrollbars=yes,toolbar=no,status=no,menubar=no,location=no');
if (window.focus) {newwindow.focus()}
return false;
}
function toggle_input()
{
var rdo = $$('input[name="typeuser"]');
if(rdo){
rdo.each(function(r){
r.observe('click',function(e){
var o = this;
var div = $('view-student');
var txtbox = div.select('input[type="text"]');
if(o.id == "student"){
div.show();
$('student_legend').show();
$('privat_legend').hide();
txtbox.each(function(t){
t.removeAttribute('disabled');
});
}else{
div.hide();
$('student_legend').hide();
$('privat_legend').show();
txtbox.each(function(t){
t.writeAttribute({'disabled':'disabled'});
});
}
})
})
}
}
function valid_form(e){
Event.stop(e);
var status1 = show_error('user_firstname','Skriv inn Fornavn');
var status2 = show_error('user_lastname','Skriv inn Etternavn');
var status3 = show_error('user_email','Ugyldig E-post');
var status4 = show_error('user_date','Ugyldig Fødselsdato');
if($('student').checked){
var status5 = show_error('user_universitet','Skriv Universitet/Høyskole');
var status6 = show_error('user_studie','Skriv Studie/Fagområde');
var status7 = show_error('user_kull','Skriv Årskul');
}else{
var status5 = true;
var status6 = true;
var status7 = true;
}
var status8 = show_error('user_address','Skriv Adresse');
var status9 = show_error('user_zipcode','Ugyldig Postnummer');
var status10 = show_error('user_city','Skriv Poststed');
if((status1)&&(status2)&&(status3)&&(status4)&&(status5)&&(status6)&&(status7)&&(status8)&&(status9)&&(status10)){
$('frm_user_addrs').submit();
}
}
function valid_company_form(e){
Event.stop(e);
var status1 = show_error('addressname','Skriv inn Adressenavn');
var status2 = show_error('companyname','Skriv inn Firma/Navn');
var status3 = show_error('address','Skriv inn Adressen');
var status4 = show_error('zipcode','Ugyldig Postnummer');
var status5 = show_error('city','Skriv Poststed');
var status6 = show_error('telephone','Ugyldig telefonr');
if((status1)&&(status2)&&(status3)&&(status4)&&(status5)&&(status6)){
$('frm_compaddrs_addrs').submit();
}
}
function show_error(id,err_msg){
var status;
if($(id).value.blank()){
var err = new Element('span',{ 'class' : 'error'}).update(err_msg);
if(!$(id).next('span.error')){
$(id).insert({'after': err});
$(id).previous('label').addClassName("error");
}
status = false;
}else{
if((id == 'user_date')||(id == 'user_zipcode')||(id == 'zipcode')||(id == 'telephone')){
status = validate_number(id);
}else if(id == 'user_email'){
status = Validate_Email(id,$(id).value);
}else{
remove_err(id);
status = true;
}
}
return status;
}
function valid_unregis_order(e){
Event.stop(e);
var status1 = show_unregis_error('o_company','Obligatorisk felt ikke utfylt');
var status2 = show_unregis_error('o_id','Obligatorisk felt ikke utfylt');
var status11 = show_unregis_error('o_id2','Obligatorisk felt ikke utfylt');
var status3 = show_unregis_error('o_bill_address','Obligatorisk felt ikke utfylt');
var status4 = show_unregis_error('o_bill_zipcode','Obligatorisk felt ikke utfylt');
var status5 = show_unregis_error('o_bill_city','Obligatorisk felt ikke utfylt');
var status6 = show_unregis_error('o_del_address','Obligatorisk felt ikke utfylt');
var status7 = show_unregis_error('o_del_zipcode','Obligatorisk felt ikke utfylt');
var status8 = show_unregis_error('o_del_city','Obligatorisk felt ikke utfylt');
var status9 = show_unregis_error('o_email','Obligatorisk felt ikke utfylt');
var status10 = show_unregis_error('o_contact','Obligatorisk felt ikke utfylt');
if((status1)&&(status2||status11)&&(status3)&&(status4)&&(status5)&&(status6)&&(status7)&&(status8)&&(status9)&&(status10)){
//WOSUP00000-1297 Disable order confirm after first click
disable_send();
$('frm_unregister_orders').submit();
}
}
function show_unregis_error(id,err_msg){
var status;
var err = new Element('span',{ 'class' : 'error'}).update(err_msg);
if($(id).value.blank()){
if(!$(id).next('span.error')){
$(id).insert({'after': err});
}
status = false;
}else{
if((id == 'o_id')||(id == 'o_id2')||(id == 'o_bill_zipcode')||(id == 'o_del_zipcode')||(id == 'o_tel')){
status = validate_number(id);
}else if(id == 'o_email'){
status = Validate_Email2(id,$(id).value);
}else{
remove_err(id);
status = true;
}
}
return status;
}
function Validate_Email2(no,email_str){
var email_filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
return add_errormsg2(no,!email_filter.test(email_str),'E-Post adressen er ikke gyldig');
}
function Validate_Email(no,email_str){
var email_filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
return add_errormsg(no,!email_filter.test(email_str),'E-Post adressen er ikke gyldig');
}
function show_valid_error(id,err_msg){
var status;
if($(id).value.blank()){
var err = new Element('span',{ 'class' : 'error'}).update(err_msg);
if(!$(id).next('span.error')){
$(id).insert({'after': err});
$(id).previous('label').addClassName("error");
}
status = false;
}
return status;
}
function remove_err(id){
if($(id).next('span.error')){
$(id).next('span.error').remove();
}
if($(id).previous('label.error')){
$(id).previous('label').removeClassName("error");
}
}
function validate_number(no){
var status;
var date_filter = /^(\d{6})$/i;
var date_filter2 = /^(\d{9})$/i;
var organize_filter = /^(\d{11})$/i;
if(no == 'user_date'){
status = add_errormsg(no,!date_filter.test($(no).value),'Dato kan bare inneholde tall, 6 siffer.');
}
/*
if(no == 'o_id'){
if(!date_filter.test($(no).value)){
if(!organize_filter.test($(no).value)){
status = true;
}else{
status = false;
}
}else{
status = false;
}
status = add_errormsg2(no,status,'Dato kan bare inneholde tall, 6 siffer eller 11 siffer1.');
}
*/
if(no == 'o_id'){
status = add_errormsg2(no,!date_filter2.test($(no).value),'Organisasjonsnummer kan bare inneholde tall, 9 siffer.');
}
if(no == 'o_id2'){
status = add_errormsg(no,!date_filter.test($(no).value),'Fødselsdato kan bare inneholde tall, 6 siffer.');
}
var zipcode_filter = /^(\d{4})$/i;
if(no == 'user_zipcode'){
status = add_errormsg(no,!zipcode_filter.test($(no).value),'Postnummer kan bare inneholde tall, 4 siffer.');
}
if(no == 'o_bill_zipcode'){
status = add_errormsg2(no,!zipcode_filter.test($(no).value),'Postnummer kan bare inneholde tall, 4 siffer.');
}
if(no == 'o_del_zipcode'){
status = add_errormsg2(no,!zipcode_filter.test($(no).value),'Postnummer kan bare inneholde tall, 4 siffer.');
}
var zipcode_filter = /^(\d{4})$/i;
if(no == 'zipcode'){
status = add_errormsg(no,!zipcode_filter.test($(no).value),'Postnummer kan bare inneholde tall, 4 siffer.');
}
var telefonr_filter = /^(\d{8})$/i;
if(no == 'telephone'){
status = add_errormsg(no,!telefonr_filter.test($(no).value),'Telefonr kan bare inneholde tall, 8 siffer.');
}
if(no == 'o_tel'){
status = add_errormsg2(no,!telefonr_filter.test($(no).value),'Telefonr kan bare inneholde tall, 8 siffer.');
}
return status;
}
function add_errormsg(no,status,msg){
if (status){
remove_err(no);
var err = new Element('span',{ 'class' : 'error'}).update(msg);
if(!$(no).next('span.error')){
$(no).insert({'after': err});
$(no).previous('label').addClassName("error");
}
var result = false;
}else{
remove_err(no);
var result = true;
}
return result;
}
function add_errormsg2(no,status,msg){
if (status){
remove_err(no);
var err = new Element('span',{ 'class' : 'error'}).update(msg);
if(!$(no).next('span.error')){
$(no).insert({'after': err});
//$(no).previous('label').addClassName("error");
}
var result = false;
}else{
remove_err(no);
var result = true;
}
return result;
}