//////////////
jq = jQuery.noConflict();
fancyOptions = {};
// Tabindex
function resetTabindex()
{
var tabindex = 1;
jq('input,select').each(function() {
if (this.type != "hidden" ) {
var $input = jq(this);
$input.attr("tabindex", tabindex);
tabindex++;
}
});
}
jq(document).ready(function() {
// Calendar text overflow
jq('.calendar .begin .event-title a').ellipsis();
// File Input Field
jq('input[type=file]').filestyle({
image: "http://www.hauntedattraction.com/wp-content/themes/hauntedattraction/_img/button_browse.jpg",
imageheight : 25,
imagewidth : 67,
width : 133
});
// Carousel
var mycarousel_itemList = [ {content:"
", title:"Issue #1", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-01/", buy:"", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #2", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-2/", buy:"", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #44", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-44-2/", buy:"", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #45", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-45/", buy:"", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #46", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-46/", buy:"", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #47", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-47/", buy:"", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #48", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-48/", buy:"", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #49", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-49/", buy:"", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #50", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-50/", buy:"", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #51", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-51/", buy:"http://www.hauntedattraction.com/store", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #52", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-52-3/", buy:"http://www.hauntedattraction.com/store/", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"},{content:"
", title:"Issue #53", link:"http://www.hauntedattraction.com/the-magazine/issues/haunted-attraction-magazine-issue-53/", buy:"http://www.hauntedattraction.com/store/magazines.html", subscribe:"http://www.hauntedattraction.com/store/magazines/subscriptions.html"} ];
function mycarousel_itemLoadCallback(carousel, state)
{
for (var i = carousel.first; i <= carousel.last; i++) {
if (carousel.has(i)) {
continue;
}
if (i > mycarousel_itemList.length) {
break;
}
carousel.add( i, mycarousel_getItemHTML(mycarousel_itemList[i-1]) );
}
};
/**
* Item html creation helper.
*/
function mycarousel_getItemHTML(item)
{
// Update Buy Link
jq('#issue-widget-buy').attr('href', item.buy );
// Update Subscribe link
jq('#issue-widget-subscribe').attr('href', item.subscribe );
// Return new issue
return "" + item.content + "
";
};
jQuery(document).ready(function() {
jQuery('#issues').jcarousel({
size: mycarousel_itemList.length,
scroll: 1,
start: mycarousel_itemList.length,
itemLoadCallback: { onBeforeAnimation: mycarousel_itemLoadCallback }
});
});
resetTabindex();
if( jq('.pagination') )
{
jq('.pagination').css("float", "left");
jq('.pagination').width( jq('.pagination').width() + 10 );
jq('.pagination').css("float", "none");
jq('.pagination').css("margin", "auto");
}
// Password field
jq('#password-clear').show();
jq('#pwd').hide();
jq('#password-clear').focus(function() {
jq('#password-clear').hide();
jq('#pwd').show();
jq('#pwd').focus();
});
jq('#pwd').blur(function() {
if(jq('#pwd').val() == '') {
jq('#password-clear').show();
jq('#pwd').hide();
}
});
// Default value
jq('.default-value').each(function() {
var default_value = this.value;
jq(this).focus(function() {
if(this.value == default_value) {
this.value = '';
}
});
jq(this).blur(function() {
if(this.value == '') {
this.value = default_value;
}
});
});
// Submit forms on Enter
jq("form input").keypress(function (e) {
if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {
jq(this).parents('form').attr("onsubmit")();// run onsubmit stuff in IE
jq(this).parents('form').trigger('submit');
return false;
} else {
return true;
}
});
// Newsletter signup form
jq(function()
{
jq("#mailing-list-submit").click(function() {
// First, disable the form from submitting
jq('form#subForm').submit(function() { return false; });
// Grab form action
formAction = jq("form#subForm").attr("action");
emailId = "tykkuu";
emailId = emailId.replace("/", "");
emailId = emailId + "-" + emailId;
// Validate email address with regex
if (!checkEmail(emailId))
{
alert("Please enter a valid email address");
return;
}
// Serialize form values to be submitted with POST
var str = jq("form#subForm").serialize();
// Add form action to end of serialized data
final = str + "&action=" + formAction;
// Submit the form via ajax
jq.ajax({
url: "http://www.hauntedattraction.com/wp-content/themes/hauntedattraction/_inc/cm-proxy.php",
type: "POST",
data: final,
success: function(html){
jq("#mailing-list").hide(); // If successfully submitted hides the form
jq("#confirmation").slideDown("slow"); // Shows "Thanks for subscribing" div
}
});
});
});
function checkEmail(email)
{
var pattern = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
var emailVal = jq("#" + email).val();
return pattern.test(emailVal);
}
// FancyBox options
fancyOptions = { 'padding':10, 'overlayOpacity': 0.4, 'overlayColor': '#000' }
//SCROLLBAR
jq(function(){
jq('.additional-photos .window').jScrollHorizontalPane(
{
showArrows: true,
resize: true
});
});
// WRAP IMG TAGS
jq('.full-blog-item a[pathname$=.jpg]').each(function() {
var src = jq(this).attr('href');
var img = jq('img:first',jq(this));
if( img.length )
{
var alignclass = "";
jq.each( img.attr('class').split(' '), function( index, value ){
if( value.indexOf('align') != -1 )
alignclass = value;
});
var w = img.width();
if( w == 0 ) w = 290;
var div = jQuery('').addClass('pic-container').addClass( alignclass ).width(w);
var footer = '';
jq(this).fancybox( fancyOptions );
jq(this).wrap( div );
jq(this).after( footer );
}
});
jq('a[href*=#]').click(function() {
if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'')
&& location.hostname == this.hostname) {
var $target = jq(this.hash);
$target = $target.length && $target
|| jq('[name=' + this.hash.slice(1) +']');
if ($target.length) {
var targetOffset = $target.offset().top;
jq('html,body')
.animate({scrollTop: targetOffset}, 1000);
return false;
}
}
});
// Add zoom to all links classified as "zoom"
jq('a.zoom').fancybox( fancyOptions );
});
//////////////
// Ellipsis
(function($) {
$.fn.ellipsis = function(enableUpdating){
var s = document.documentElement.style;
if (!('textOverflow' in s || 'OTextOverflow' in s)) {
return this.each(function(){
var el = $(this);
if(el.css("overflow") == "hidden"){
var originalText = el.html();
var w = el.width();
var t = $(this.cloneNode(true)).hide().css({
'position': 'absolute',
'width': 'auto',
'overflow': 'visible',
'max-width': 'inherit',
'display': 'block'
});
el.after(t);
var text = originalText;
while(text.length > 0 && t.width() > el.width()){
text = text.substr(0, text.length - 1);
t.html(text + "...");
}
el.html(t.html());
t.remove();
if(enableUpdating == true){
var oldW = el.width();
setInterval(function(){
if(el.width() != oldW){
oldW = el.width();
el.html(originalText);
el.ellipsis();
}
}, 200);
}
}
});
} else return this;
};
})(jQuery);