/*
CSS Browser Selector v0.3.5 (Feb 05, 2010)
Rafael Lima (http://rafael.adm.br)
http://rafael.adm.br/css_browser_selector
License: http://creativecommons.org/licenses/by/2.5/
Contributors: http://rafael.adm.br/css_browser_selector#contributors
*/
function css_browser_selector(u){var ua = u.toLowerCase(),is=function(t){return ua.indexOf(t)>-1;},g='gecko',w='webkit',s='safari',o='opera',h=document.documentElement,b=[(!(/opera|webtv/i.test(ua))&&/msie\s(\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?g+' ff2':is('firefox/3.5')?g+' ff3 ff3_5':is('firefox/3')?g+' ff3':is('gecko/')?g:is('opera')?o+(/version\/(\d+)/.test(ua)?' '+o+RegExp.$1:(/opera(\s|\/)(\d+)/.test(ua)?' '+o+RegExp.$2:'')):is('konqueror')?'konqueror':is('chrome')?w+' chrome':is('iron')?w+' iron':is('applewebkit/')?w+' '+s+(/version\/(\d+)/.test(ua)?' '+s+RegExp.$1:''):is('mozilla/')?g:'',is('j2me')?'mobile':is('iphone')?'iphone':is('ipod')?'ipod':is('mac')?'mac':is('darwin')?'mac':is('webtv')?'webtv':is('win')?'win':is('freebsd')?'freebsd':(is('x11')||is('linux'))?'linux':'','js']; c = b.join(' '); h.className += ' '+c; return c;}; css_browser_selector(navigator.userAgent);

/*
FOOTER MAP SHOW/HIDE SCRIPT
*/
/*			$(document).ready(function(){
				$('.footer_map').hide();
				$('a.footer_find_us').click(function() {
					$('.footer_map').toggle('slow');
					$('html, body').animate({ scrollTop: 600000 }, 'slow'); 
					return false;
					})
			});
*/
/*
FORM FIELD CLEAR SCRIPT
*/
	function clearText(field){
    if (field.defaultValue == field.value) field.value = '';
    else if (field.value == '') field.value = field.defaultValue;
	}

/*
LIGHT BOX
*/


$(document).ready(function(){
	//lightbox
	$('.lightbox').click(function() {
		_buildLightbox($(this).attr('name'));

    

		return false;
	});
});
var galleryTimer, currentLb;
// ------------------------------------------------------------------------------------
function _buildLightbox(id) {
    $('body').append('<div id="lightboxOverlay"></div>');
    var sH = $('body').height();
    var sW = $('body').width();
    $("#lightboxOverlay").css('height', sH + 'px').css('display', 'block');
    if ($.browser.msie) {
        if ($.browser.version <= 6) {
            $('#lightboxOverlay').bgiframe(); // js to fix select boxes in IE 6		
        }
    }
    var lbx = $('#' + id);
    lbx.fadeIn();
    lbx.css('left', (sW / 2) - ($('#' + id).width() / 2));
    currentLb = lbx;
    var gallery = lbx.find(".imgGallery");
    if (gallery.length > 0) {
        if (gallery.find('.imgContainer img').length > 1) {
            $('.casestudy_gallery_nav').show();
            galleryTimer = setInterval(function() {
                var anchor = currentLb.find(".casestudy_gallery_nav_next");


                if (anchor.parent().parent().find('div.imgContainer img:visible').next('img').length > 0) {
                    var visibleEL = anchor.parent().parent().find('div.imgContainer img:visible');
                    visibleEL.hide();
                    visibleEL.next('img').fadeIn(1000);
                } else {
                    var visibleEL = anchor.parent().parent().find('div.imgContainer img:visible');
                    visibleEL.hide();
                    anchor.parent().parent().find('div.imgContainer img:first-child').fadeIn(1000);
                }
                return false;

            }, 8000);
        }
        else {
            $('.casestudy_gallery_nav').hide();
        }
    }

    // Scroll viewport to top
    var viewportWidth = jQuery(window).width(),
		viewportHeight = jQuery(window).height(),
		$lightboxContent = jQuery('#' + id),
		elWidth = $lightboxContent.width(),
		elHeight = $lightboxContent.height(),
		elOffset = $lightboxContent.offset();
    jQuery(window)
		.scrollTop(elOffset.top + (elHeight / 2) - (viewportHeight / 2))
		.scrollLeft(elOffset.left + (elWidth / 2) - (viewportWidth / 2));



    // CLOSE LIGHTBOX

    $('#lightboxOverlay').click(function() {
        _destroyLightbox(id)
    });
    $('.lightboxClose').click(function() {
        _destroyLightbox(id)
    });
};

/*
LIGHTBOX GALLERY 
*/
    $(document).ready(function() {
        //preview gallery code
        function initPreviewGallery() {
            jQuery.each($('.imgContainer'), function() {
                if ($(this).find('img').length < 2) {
                    $(this).parent().find('div.objButtons').hide();
                }
            });
            $('.imgContainer img:first-child').css('display', 'block');
        }
        initPreviewGallery();


        $('.casestudy_gallery_nav_previous').bind('click', onPreviewGalleryPrevClick);
        function onPreviewGalleryPrevClick() {
            if ($(this).parent().parent().find('div.imgContainer img:visible').prev('img').length > 0) {
                var visibleEL = $(this).parent().parent().find('div.imgContainer img:visible');
                visibleEL.hide();
                visibleEL.prev('img').fadeIn(1000);
            } else {
                var visibleEL = $(this).parent().parent().find('div.imgContainer img:visible');
                visibleEL.hide();
                $(this).parent().parent().find('div.imgContainer img:last-child').fadeIn(1000);
            }
            return false;
        }
        
        $('.casestudy_gallery_nav_next').bind('click', onPreviewGalleryNextClick);
        function onPreviewGalleryNextClick() {
            if ($(this).parent().parent().find('div.imgContainer img:visible').next('img').length > 0) {
                var visibleEL = $(this).parent().parent().find('div.imgContainer img:visible');
                visibleEL.hide();
                visibleEL.next('img').fadeIn(1000);
            } else {
                var visibleEL = $(this).parent().parent().find('div.imgContainer img:visible');
                visibleEL.hide();
                $(this).parent().parent().find('div.imgContainer img:first-child').fadeIn(1000);
            }
            return false;
        }
    });

// ------------------------------------------------------------------------------------
function _destroyLightbox(id) {
  if(galleryTimer)
    clearInterval(galleryTimer);
	$('#lightboxOverlay').fadeOut(function(){
		$('#lightboxOverlay').remove();
	});
	$('#' + id).fadeOut();
		lightboxStatus = false;	
};

$(window).resize(function() {
	var sH = $('body').height();
	var sW = $('body').width();
	$("#lightboxOverlay").css('height',sH+'px').css('display','block');
	if ( $.browser.msie) {
		if($.browser.version  <= 6){
			$('#lightboxOverlay').bgiframe(); // js to fix select boxes in IE 6		
		}
	}
	$('#lightboxContent').css('left', (sW / 2) - ($('#lightboxContent').width() / 2));	
});


/*-- Blog --*/
function isValidEmail(email) {
    var regex = /([\w\d\-_]+)(\.[\w\d\-_]+)*@([\w\d\-_]+\.)([\w\d\-_]+\.)*([\w]{2,3})/;
    if (regex.test(email))
        return true;
    else
        return false;
}
function trim(str, chars) {
    return ltrim(rtrim(str, chars), chars);
}
function ltrim(str, chars) {
    chars = chars || '\\s';
    return str.replace(new RegExp('^[" + chars + "]+', 'g'), '');
}
function rtrim(str, chars) {
    chars = chars || '\\s';
    return str.replace(new RegExp('[" + chars + "]+$', 'g'), '');
}
function setupDefaultTextReset(obj, message) {
    obj.click(function() {
        if (obj.val() == message)
            obj.val('');
    });
    obj.blur(function() {
        if (obj.val() == '')
            obj.val(message);
    });
}
function PostBackOnReturn(event, postbackMethod) {
    if (event) {
        if (event.keyCode == 13) {
            __doPostBack(postbackMethod, '');
        }
    }
}
String.prototype.startsWith = function(str) { return (this.match("^" + str) == str); }
String.prototype.trim = function() { return trim(this); }
/*~~~~~ start blog ~~~~~*/
$(document).ready(function() {
    setupDefaultTextReset($('div.comment_form textarea.comment_message'), 'Comment');
    setupDefaultTextReset($('div.commentFormContainer input.comment_name'), 'Your Name');
    setupDefaultTextReset($('div.commentFormContainer input.comment_email'), 'Your Email');
    $('.reply').click(function() {
        $('.blog-reply-comment').html('');
        $(this).parents('div.comment').nextAll('.blog-reply-comment').eq(0).html(
        '<div class="comment_form" id="replyform">' +
          '<div class="clearer"></div>' +
          '<textarea id="tbBlogCommentComment" name="tbBlogCommentComment" class="comment_message" rows="5" style="margin-top:5px;width:530px;">Comment</textarea>' +
          '<label for="tbBlogCommentName"><input id="tbBlogCommentName" name="tbBlogCommentName" type="text" class="comment_name" value="Your Name" /></label>' +
          '<label for="tbBlogCommentEmail"><input id="tbBlogCommentEmail" name="tbBlogCommentEmail" type="text" class="comment_email" value="Your Email" /></label>' +
          '<p class="error blog-reply-error" style="display:none"></p>' +
          '<a href="javascript:void(0)" class="comment_form_button_cancel">Cancel</a>' +
          '<a href="#" class="comment_form_button">Send</a>' +
          

          '<div class="clearer"></div>' +
        '</div><div class="clearer"></div>');

        setupDefaultTextReset($('div.blog-reply-comment div.comment_form textarea.comment'), 'Comment');
        setupDefaultTextReset($('div.blog-reply-comment div.comment_form input.commentorName'), 'Your Name');
        setupDefaultTextReset($('div.blog-reply-comment div.comment_form input.commentorEmail'), 'Your Email');

        window.location.hash = '#replyform';

        $('.comment_form_button_cancel').click(function() {
            $(this).parents('.blog-reply-comment').html('');
        });
        $('.comment_form_button').click(function() {
            var name = $(this).parent().find('label input[name=tbBlogCommentName]').val();
            var email = $(this).parent().find('label input[name=tbBlogCommentEmail]').val();
            var comment = $(this).siblings('textarea[name=tbBlogCommentComment]').val();

            //validation
            $(this).siblings('p.blog-reply-error').html('');
            $(this).siblings('p.blog-reply-error').css('display', 'none');
            var isValid = true;
            var errorMsg = '';
            if (comment.trim() == '' || comment.trim().toLowerCase() == 'comment') {
                isValid = false;
                errorMsg += 'Please enter your comment<br />';
            }
            if (name.trim() == '' || name.trim().toLowerCase() == 'your name') {
                isValid = false;
                errorMsg += 'Please enter your name<br />';
            }
            if (email.trim() == '' || email.trim().toLowerCase() == 'your email') {
                isValid = false;
                errorMsg += 'Please enter your email address<br />';
            }
            else if (!isValidEmail(email)) {
                isValid = false;
                errorMsg += 'Please enter a valid email address<br />';
            }
            if (!isValid) {
                $(this).siblings('p.blog-reply-error').html(errorMsg);
                $(this).siblings('p.blog-reply-error').css('display', 'block');
                return false;
            }

            var commentID = $(this).parents('.blog-reply-comment').next('input:hidden').val();
            $('p.blog-reply-wait').html('Submitting... Please Wait');
            $('p.blog-reply-wait').css('display', 'block');

            jQuery.post('/handlers/BlogCommentReply.ashx', { commentid: commentID, name: name, email: email, comment: comment }, function(data) {
                $('p.blog-reply-wait').css('display', 'none');
                if (data.startsWith('Success')) {
                    if (data.startsWith("Success:posted")) {
                        $('#divBlogReplyComment-' + commentID).html('<div class="reply"><p>' + comment + '<br /><span class="commentor">' + name + '</span></p></div>');
                    }
                    else {
                        $('#divBlogReplyComment-' + commentID).html('<div class="reply"><p>' + comment + '<br /><em>Your reply is now submitted and pending approval</em><br /><span class="commentor">' + name + '</span></p></div>');
                    }
                }
                else {
                    $('#divBlogReplyComment-' + commentID + ' div.commentFormContainer p.blog-reply-error').html('An error had occurred. Please try again later.');
                    $('#divBlogReplyComment-' + commentID + ' div.commentFormContainer p.blog-reply-error').css('display', 'block');
                }
            });
            return false;
        });
        return false;
    });
});
/*~~~~~ end blog ~~~~~*/




    var subscribeInactivityCount = 0;
    var subscribeDefText = 'type your email address here';   
    function subscribeInactivity(){
        if(subscribeInactivityCount > 10){
            $('#fsBlogSubscribe').fadeOut(500);
		    $('.blogUpdateDot,#blogBtnTwitterRss,.btnEmailBlog').fadeIn(500);
		    $('#tbUpdates').val(subscribeDefText);
            subscribeInactivityCount = 0;
        }
        else{
            subscribeInactivityCount += 1;
            setTimeout('subscribeInactivity()', 1000);
        }
    }
    
    $(document).ready(function() {
             
        //subscribe
        $('#aViaEmail').click(function(){
		    $('.blogUpdateDot,#blogBtnTwitterRss,.btnEmailBlog').fadeOut(500);
			$('#fsBlogSubscribe').fadeIn(500);
			var tbUpdates = $("#tbUpdates");
			tbUpdates.focus();
			tbUpdates.get(0).selectionStart = 0;
			tbUpdates.get(0).selectionEnd = 0;
			setTimeout('subscribeInactivity()', 1000);
		});
		$('#tbUpdates').blur(function(){
		    /*$('#fsBlogSubscribe').fadeOut(500);
		    $('.blogUpdateDot,#blogBtnTwitterRss,.btnEmailBlog').fadeIn(500);*/
		}).keypress(function(e){
		    subscribeInactivityCount = 0;
		    if($(this).val() == subscribeDefText){
		        $(this).val('');
		    }
		});
        /*$('#fsBlogSubscribe').mouseover(function() {
            $('#fsBlogSubscribe>label').fadeOut(100);
        });*/
        $('#fsBlogSubscribe>a.buttonSignup').click(function() {
            blogSubscribe();
            return false;
        });
        $('#fsBlogSubscribe input#tbUpdates').keyup(function(event) {
            if (event.keyCode == '13') {
                blogSubscribe();
            }
        });
        setupDefaultTextReset($('#fsBlogSubscribe input#tbUpdates'), subscribeDefText);
        
    });
    function blogSubscribe() {
        var email = $('#fsBlogSubscribe input#tbUpdates').val();
        $('#fsBlogSubscribe span.error').html('');
        $('#fsBlogSubscribe input#tbUpdates').removeClass('error');

        if (trim(email) == '' ||
        trim(email) == 'type your email address here') {
            $('#fsBlogSubscribe span.error').html('Please enter your email address');
        }
        else if (!isValidEmail(email)) {
            $('#fsBlogSubscribe span.error').html('Please enter a valid email address');
        }
        if ($('#fsBlogSubscribe span.error').html() != '') {
            $('#fsBlogSubscribe span.error').fadeIn(500);
            $('#fsBlogSubscribe input#tbUpdates').addClass('error');
            setTimeout(function() { $('#fsBlogSubscribe span.error').fadeOut(500); }, 3000);
        }
        else {
            //send
            $('#fsBlogSubscribe span.wait').show();
            $.post("/handlers/BlogSubscriptionHandler.ashx", { email: email }, function(data) {
                $('#fsBlogSubscribe span.wait').hide();

                if (data.indexOf('Error:') != -1) {
                    $('#fsBlogSubscribe span.error').fadeIn(500);
                    $('#fsBlogSubscribe span.error').html('An error had occured. Please try again later.');
                }
                else if (data.indexOf('Success') != -1) {
                    $('#fsBlogSubscribe span.success').fadeIn(500);
                }
            });
        }
    }
    
    $(function() {
        $('#twitterBtn').hover(function() {
            $('#blogBtnTwitterRss').css('background-position','0px -160px');
        }, function() {
            $('#blogBtnTwitterRss').css('background-position','0px 0px');
        });
    });
	$(function() {
        $('#rssBtn').hover(function() {
            $('#blogBtnTwitterRss').css('background-position','0px -80px');
        }, function() {
            $('#blogBtnTwitterRss').css('background-position','0px 0px');
        });
    });

