﻿/// <reference path="jquery-1.2.6-vsdoc.js" />

jQuery(document).ready(function() {

    $('#getDirections').click(function() {
        var street = document.getElementById('dstreet').value;
        var city = document.getElementById('dcity').value;
        var state = document.getElementById('dstate').value;
        var zip = document.getElementById('dzip').value;
        var from = escape(street + ', ' + city + ', ' + state + ' ' + zip);
        var dest = escape(pageData.address.replace('<br />', ','));
        var s = document.getElementById('dservice');
        var url = s.options[s.selectedIndex].value;
        url = url.replace('$from', from).replace('$dest', dest);
        launchDirection(url, 820, 700);
    });

    $('#sharelink,#hideshare').click(function() {
        $('.contactbox').slideUp('normal', function() {
            $('.cellbox').slideUp('normal', function() {
                $('.sharebox').slideToggle('slow');
            });
        });
    });
    $('#contactlink,#hidecontact').click(function() {
        $('.sharebox').slideUp('normal', function() {
            $('.cellbox').slideUp('normal', function() {
                $('.contactbox').slideToggle('slow');
            });
        });
    });
    $('#celllink,#hidecell').click(function() {
        $('.sharebox').slideUp('normal', function() {
            $('.contactbox').slideUp('normal', function() {
                $('.cellbox').slideToggle('slow');
            });
        });
    });

    $('.details-images a').fancybox({
        'overlayShow': true,
        'hideOnContentClick': true
    });

    $('#btnShare').click(function() {
        var sname = document.getElementById('sname');
        var semail = document.getElementById('semail');
        var sfriends = document.getElementById('sfriends');
        var smsg = document.getElementById('smsg');
        var data = {
            RestaurantID: pageData.restaurantId,
            Url: document.location.href,
            FromName: sname.value,
            FromEmail: semail.value,
            ToEmails: sfriends.value,
            Message: smsg.value
        };
        var err = '';
        if (data.fromName == '') err += " - please enter your name.\n";
        if (data.fromEmail == '') err += " - please enter your email address.\n";
        if (data.friendEmails == '') err += " - please enter your friend's email address.\n";
        if (data.message == '') err += " - please enter a message.\n";
        if (err != '') {
            alert('Please fix the following errors:\n' + err);
            return;
        }

        jQuery.post(pageData.shareUrl, data, function(response) {
            if (!response.success) {
                if (response.message) {
                    alert(response.message);
                } else {
                    alert('There was a problem sending your message. Please try again. \nTry refreshing the page if the problem persists.');
                }
                return;
            }
            $('.sharebox').slideToggle('slow');
            sname.value = semail.value = sfriends.value = smsg.value = '';
        }, 'json');
    });

    $('#btnContact').click(function() {
        var cname = document.getElementById('cname');
        var cemail = document.getElementById('cemail');
        var ctel = document.getElementById('ctel');
        var cmsg = document.getElementById('cmsg');
        var data = {
            RestaurantID: pageData.restaurantId,
            Name: cname.value,
            Email: cemail.value,
            Phone: ctel.value,
            Message: cmsg.value
        };
        jQuery.post(pageData.contactUrl, data, function(response) {
            if (!response.success) {
                if (response.message) {
                    alert(response.message);
                } else {
                    alert('There was a problem sending your message. Please try again. \nTry refreshing the page if the problem persists.');
                }
                return;
            }
            $('.contactbox').slideToggle('slow');
            cname.value = cemail.value = ctel.value = cmsg.value = '';
        }, 'json');
    });

    $('#btnCell').click(function() {
        var cnumber1 = document.getElementById('cnumber1');
        var cnumber2 = document.getElementById('cnumber2');
        var cnumber3 = document.getElementById('cnumber3');
        if (!parseInt(cnumber1.value) || !parseInt(cnumber2.value) || !parseInt(cnumber3.value)) {
            alert('Please enter a valid phone number!');
        }
        var cprovider = document.getElementById('cprovider');
        var data = {
            RestaurantID: pageData.restaurantId,
            Email: cnumber1.value + cnumber2.value + cnumber3.value + '@' + cprovider.options[cprovider.selectedIndex].value
        };
        jQuery.post(pageData.cellUrl, data, function(response) {
            if (!response.success) {
                if (response.message) {
                    alert(response.message);
                } else {
                    alert('There was a problem sending your message. Please try again. \nTry refreshing the page if the problem persists.');
                }
                return;
            }
            $('.cellbox').slideToggle('slow');
            cnumber1.value = cnumber2.value = cnumber3.value = '';
        }, 'json');
    });

    $('#lnkMenus').click(function() {
        var html = $.get(this.href, null, function(response) {
            if (response == '') return;
            $('#restDetails').slideUp('slow', function() {
                $('#restMenus .top .left').html(response);
                $('#restMenus').slideDown('slow');
                bindMenuLinks();
            });
        }, 'html');
        return false;
    });
});

function bindMenuLinks() {
    $('.rest-menu .links a').unbind('click');
    $('.rest-menu .links a').click(function() {
        var html = $.get(this.href, null, function(response) {
            if (response == '') return;
            $('#restMenus').slideUp('slow', function() {
                $('#restMenus .top .left').html(response);
                $('#restMenus').slideDown('slow');
                bindMenuLinks();
            });
        }, 'html');
        return false;
    });
    $('.rest-menu .rest-menu-details').unbind('click');
    $('.rest-menu .rest-menu-details').click(function() {
        $('#restMenus').slideUp('slow', function() {
            $('#restDetails').slideDown('slow');
        });
    });
}

function launchDirection(url, width, height) {
    var left = (screen.width / 2) - width / 2;
    var top = (screen.height / 2) - height / 2;
    var styleStr = 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width=' + width + ',height=' + height + ',left=' + left + ',top=' + top + ',screenX=' + left + ',screenY=' + top;
    var mapWindow = window.open(url, "popupWindow", styleStr);
    if (!mapWindow) {
        alert('You have a popup blocker enabled which prevented the Driving Directions window from appearing. Please disable the popup blocker in order to utilize this function of the website.');
    }
}

//FlashTag.prototype.toStringOrig = FlashTag.prototype.toString
//FlashTag.prototype.toString = function() {
//    this.setWmode('transparent');
//    return this.toStringOrig();
//}
