TicketAlert = Class.create( {
initialize: function( data ) {
this.event_id = data.event_id;
$('ta_onsale_date').innerHTML = data.onsale_date;
var form_submit_function = this.submit_form.bind( this );
var thisobj = this;
TicketAlert.popup.addLinks( [ {
link_id: data.share_link.id('share_link'),
popup_align: {
x: 'center',
y: 'center'
},
onShow: function() {
thisobj.on_link_click( this );
$('ta_form_submit').observe( 'click', form_submit_function );
},
onHide: function() {
$('ta_form_submit').stopObserving( 'click', form_submit_function );
}
} ] );
},
on_link_click: function() {
this.clear_form();
$('ta_form').style.display = "";
$('ta_confirm').style.display = "none";
},
clear_form: function() {
$('ta_correct_msg').style.display = "none";
[
"phone_number",
"agree_to_terms"
].each( function ( name ) {
var id = 'ta_' + name + '_label';
$(id).className = "";
} );
$('ta_phone_number').value = "";
$('ta_agree_to_terms').checked = "";
},
submit_form: function() {
var parameters = {};
parameters.v = TicketAlert.v;
$('ta_form_cancel').disabled = "disabled";
$('ta_form_submit').disabled = "disabled";
parameters.phone_number = $('ta_phone_number').value;
if ( $('ta_agree_to_terms').checked )
parameters.agree_to_terms = "on";
var taobj = this;
new Ajax.Request( "/event/wireless_alerts/" + this.event_id, {
method: 'post',
parameters: parameters,
onSuccess: function( transport ) {
$('ta_form_cancel').disabled = "";
$('ta_form_submit').disabled = "";
var data = transport.responseText.evalJSON();
if ( data.errors ) {
$('ta_correct_msg').style.display = "";
[
"phone_number",
"agree_to_terms"
].each( function ( name ) {
var id = 'ta_' + name + '_label';
if ( typeof(data.errors[name]) == 'object' )
$(id).className = "errorMessage";
else
$(id).className = "";
} );
}
else if ( data.success ) {
$('ta_confirm').style.display = "";
$('ta_form').style.display = "none";
TicketAlert.popup.show( {
anchor_id: document.body,
popup_align: {
x: 'center',
y: 'center'
}
} );
}
else {
taobj.on_server_error();
}
},
onFailure: function( transport ) {
$('ta_cancel').disabled = "";
$('ta_submit').disabled = "";
taobj.on_server_error();
}
});
},
on_server_error: function() {
alert ( "Something went wrong.  Please try again later." );
}
});
TicketAlert.popup = new Popup( 'ta_display', {
zIndex: 110,
lightbox: { opacity: 0.6 },
close_id: [ "ta_form_close_box", "ta_confirm_close_box", "ta_form_cancel", "ta_confirm_close_button" ]
} );

