function DDSlider() {
    var a = [];
    a['trans'] = 'random';
    a['delay'] = 50;
    a['waitTime'] = 10000;
    a['duration'] = 500;
    a['stopSlide'] = 1;
    a['bars'] = 15;
    a['columns'] = 9;
    a['rows'] = 3;
    var b = arguments[0] || {};
    if (b.trans == undefined) {
        b.trans = a['trans']
    }
    if (b.delay == undefined) {
        b.delay = a['delay']
    }
    if (b.duration == undefined) {
        b.duration = a['duration']
    }
    if (b.waitTime == undefined) {
        b.waitTime = a['waitTime']
    }
    if (b.stopSlide == undefined) {
        b.stopSlide = a['stopSlide']
    }
    if (b.bars == undefined) {
        b.bars = a['bars']
    }
    if (b.columns == undefined) {
        b.columns = a['columns']
    }
    if (b.rows == undefined) {
        b.rows = a['rows']
    }
    b.width = $('#slider_images').width();
    b.height = $('#slider_images').height();
    $('#slider_images li:first').addClass('current');
    $i = 1;
    $('#slider_images').after('<ul id="slider_selector"></ul>');
    $('ul#slider_images li:not(#slider_images li ul li)').each(function () {
        $(this).addClass('slider_' + $i);
        if ($i == 1) {
            $('#slider_selector').append('<li class="current sel_' + $i + '"></li>')
        } else {
            $('#slider_selector').append('<li class="sel_' + $i + '"></li>')
        }
        $i++
    });
    $('#slider_arrow_left').click(function () {
        prevSlide(b);
        c = 1
    });
    $('#slider_arrow_right').click(function () {
        nextSlide(b);
        c = 1
    });
    if (typeof(c) == 'undefined') {
        var c = 0
    }
    $('#slider_selector li').click(function () {
        $id = $(this).attr('class').split(' ');
        if ($id[0] == 'current' || $id[1] == 'current') {} else {
            $id = $id[0].split('_');
            c = 1;
            callSlide($id[1], b)
        }
    });
    if (typeof(d) == 'undefined') {
        var d = 0
    }
    $("#slider").hover(function () {
        d = 1
    }, function () {
        d = 0
    });
    setInterval(function () {
        if (b.stopSlide == 1) {
            if (d == 0 && c == 0) {
                nextSlide(b)
            }
        } else {
            if (c == 0) {
                nextSlide(b)
            }
        }
    }, b.waitTime)
}
function nextTransition(a, b, c, d, e) {
    $nextTransition = b.attr('title');
    if ($nextTransition == '') {
        $nextTransition = a.trans
    }
    if ($nextTransition == 'random' || $nextTransition == 'fading' || $nextTransition == 'barTop' || $nextTransition == 'barBottom' || $nextTransition == 'square' || $nextTransition == 'squareMoving' || $nextTransition == 'barFade' || $nextTransition == 'barFadeRandom' || $nextTransition == 'squareRandom') {} else {
        $nextTransition = 'random'
    }
    if ($nextTransition == 'random') {
        var f = ['barTop', 'fading', 'barBottom', 'square', 'squareRandom', 'squareMoving', 'barFade', 'barFadeRandom'];
        var g = [0, 1, 2, 3, 4, 5, 6, 7];
        g = DDRandomItem(g);
        $nextTransition = f[g]
    }
    if ($nextTransition == 'fading') {
        DDFading(a, b, c, d, e)
    } else if ($nextTransition == 'barTop') {
        DDBarTop(a, b, c, d, e)
    } else if ($nextTransition == 'barBottom') {
        DDBarBottom(a, b, c, d, e)
    } else if ($nextTransition == 'square') {
        DDSquare(a, b, c, d, e)
    } else if ($nextTransition == 'squareRandom') {
        DDSquareRandom(a, b, c, d, e)
    } else if ($nextTransition == 'squareMoving') {
        DDSquareMoving(a, b, c, d, e)
    } else if ($nextTransition == 'barFade') {
        DDBarFade(a, b, c, d, e)
    } else if ($nextTransition == 'barFadeRandom') {
        DDBarFadeRandom(a, b, c, d, e)
    } else {
        DDFading(a, b, c, d, e)
    }
}
function nextSlide(a) {
    $current = $('#slider_images li.current');
    $next = $('#slider_images li.current').next();
    $current_sel = $('#slider_selector li.current');
    $next_sel = $('#slider_selector li.current').next();
    if ($next.length > 0) {} else {
        $next = $("#slider_images li:first");
        $next_sel = $("#slider_selector li:first")
    }
    nextTransition(a, $next, $current, $next_sel, $current_sel)
}
function prevSlide(a) {
    $current = $('#slider_images li.current');
    $prev = $('#slider_images li.current').prev();
    $current_sel = $('#slider_selector li.current');
    $prev_sel = $('#slider_selector li.current').prev();
    if ($prev.length > 0) {} else {
        $prev = $("#slider_images li:last");
        $prev_sel = $("#slider_selector li:last")
    }
    nextTransition(a, $prev, $current, $prev_sel, $current_sel)
}
function callSlide(a, b) {
    $current = $('#slider_images li.current');
    $next = $('#slider_images li.slider_' + a);
    $current_sel = $('#slider_selector li.current');
    $next_sel = $('#slider_selector li.sel_' + a);
    nextTransition(b, $next, $current, $next_sel, $current_sel)
}
function DDFading(a, b, c, d, e) {
    disableSelectors();
    b.addClass('next');
    c.stop().animate({
        opacity: 0
    }, a.duration, function () {
        b.addClass('current').removeClass('next');
        c.removeClass('current').css({
            opacity: 1
        });
        e.removeClass('current');
        d.addClass('current');
        enableSelectors()
    })
}
function DDBarTop(a, b, c, d, e) {
    disableSelectors();
    $bar_width = a.width / a.bars;
    $bar_height = a.height;
    $bar_top = ($bar_height - ($bar_height * 2));
    $i = 1;
    while ($i <= a.bars) {
        $position = ($i * $bar_width) - $bar_width;
        $('#slider_images').append('<div class="slider_bar" id="slider_bar_' + $i + '" style="position: absolute; overflow: hidden;' + b.attr('style') + '"></div>');
        $('#slider_bar_' + $i).css({
            left: $position,
            height: $bar_height,
            width: $bar_width,
            top: $bar_top,
            'z-index': 3,
            'background-position': '-' + $position + 'px top'
        });
        $i++
    }
    $ii = 1;
    while ($ii <= a.bars) {
        $position = ($ii * $bar_width) - $bar_width;
        $delay = ($ii * a.delay);
        $('#slider_bar_' + $ii).append('<div style="position: absolute; left: -' + $position + 'px; width: ' + a.width + 'px; height: ' + a.height + 'px;">' + b.html() + '</div>');
        $('#slider_bar_' + $ii).delay($delay).animate({
            top: 0
        }, {
            duration: a.duration,
            easing: 'easeOutQuad'
        });
        $ii++
    }
    $totalDelay = (a.bars * a.delay);
    b.delay($totalDelay).animate({
        opacity: 0
    }, a.duration, function () {
        $(this).addClass('current').css({
            opacity: 1
        });
        $current.removeClass('current');
        $('.slider_bar').remove();
        enableSelectors();
        e.removeClass('current');
        d.addClass('current')
    })
}
function DDBarBottom(a, b, c, d, e) {
    disableSelectors();
    $bar_width = a.width / a.bars;
    $bar_height = a.height;
    $bar_top = $bar_height;
    $i = 1;
    while ($i <= a.bars) {
        $position = ($i * $bar_width) - $bar_width;
        $('#slider_images').append('<div class="slider_bar" id="slider_bar_' + $i + '" style="position: absolute; overflow: hidden;' + b.attr('style') + '"></div>');
        $('#slider_bar_' + $i).css({
            left: $position,
            height: $bar_height,
            width: $bar_width,
            top: $bar_top,
            'z-index': 3,
            'background-position': '-' + $position + 'px top'
        });
        $i++
    }
    $ii = 1;
    $i2 = a.bars;
    $bar_width = a.width / a.bars;
    $bar_height = a.height;
    $item = b.children('a').children('img').attr('src');
    while ($ii <= a.bars) {
        $position = ($ii * $bar_width) - $bar_width;
        $delay = ($ii * a.delay);
        $('#slider_bar_' + $ii).append('<div style="position: absolute; left: -' + $position + 'px; width: ' + a.width + 'px; height: ' + a.height + 'px;">' + b.html() + '</div>');
        $('#slider_bar_' + $i2).delay($delay).animate({
            top: 0
        }, {
            duration: 500,
            easing: 'easeOutQuad'
        });
        $ii++;
        $i2--
    }
    $totalDelay = (a.bars * a.delay);
    b.delay($totalDelay).animate({
        opacity: 0
    }, a.duration, function () {
        $(this).addClass('current').css({
            opacity: 1
        });
        $current.removeClass('current');
        $('.slider_bar').remove();
        enableSelectors();
        e.removeClass('current');
        d.addClass('current')
    })
}
function DDSquare(a, b, c, d, e) {
    disableSelectors();
    $item = b.children('a').children('img').attr('src');
    $row_width = a.width / a.columns;
    $row_height = a.height / a.rows;
    $i_row_numbers = 1;
    $i_column_numbers = 1;
    while ($i_row_numbers <= a.rows) {
        $initial = $i_row_numbers;
        $class_row = 'block_row_' + $i_row_numbers;
        while ($i_column_numbers <= a.columns) {
            $block_ID_name = 'block_ID_' + ((a.columns * $i_row_numbers) - (a.columns - $i_column_numbers));
            $class_block = 'slider_block_' + ($initial++);
            $class_column = 'block_column_' + $i_column_numbers;
            $block_top = (($i_row_numbers * $row_height) - $row_height);
            $block_left = (($i_column_numbers * $row_width) - $row_width);
            $position_left = ($row_width * $i_column_numbers) - $row_width;
            $position_top = ($row_height * $i_row_numbers) - $row_height;
            if (b.attr('style') == undefined) {
                $('#slider_images').append('<div id="' + $block_ID_name + '" class="slider_block ' + $class_block + ' ' + $class_row + ' ' + $class_column + '" style="position: absolute; overflow: hidden;"></div>')
            } else {
                $('#slider_images').append('<div id="' + $block_ID_name + '" class="slider_block ' + $class_block + ' ' + $class_row + ' ' + $class_column + '" style="position: absolute; overflow: hidden;' + b.attr('style') + '"></div>')
            }
            $('#' + $block_ID_name).css({
                width: $row_width,
                height: $row_height,
                'z-index': 4,
                top: $block_top + 'px',
                left: $block_left + 'px',
                opacity: 0,
                'background-position': '-' + $position_left + 'px -' + $position_top + 'px'
            }).append('<div style="position: absolute; left: -' + $position_left + 'px; top: -' + $position_top + 'px; width: ' + a.width + 'px; height: ' + a.height + 'px;">' + b.html() + '</div>');
            $i_column_numbers++;
            $initial++
        }
        $i_row_numbers++;
        $i_column_numbers = 1
    }
    $i_row_numbers = 1;
    $i_column_numbers = 1;
    while ($i_row_numbers <= a.rows) {
        $initial = $i_row_numbers;
        $class_row = 'block_row_' + $i_row_numbers;
        while ($i_column_numbers <= a.columns) {
            $animated_class = '.slider_block_' + ($initial++);
            $delay = (a.delay * $initial);
            $($animated_class).delay($delay).animate({
                opacity: 1
            }, {
                duration: a.duration,
                easing: 'easeOutQuad'
            });
            $i_column_numbers++;
            $initial++
        }
        $i_row_numbers++;
        $i_column_numbers = 1
    }
    $delay_total = $delay + a.duration;
    b.delay($delay_total).animate({
        opacity: 0
    }, 1, function () {
        $(this).addClass('current').css({
            opacity: 1
        });
        $current.removeClass('current');
        $('.slider_block').remove();
        enableSelectors();
        e.removeClass('current');
        d.addClass('current')
    })
}
function DDSquareRandom(a, b, c, d, e) {
    disableSelectors();
    $item = b.children('a').children('img').attr('src');
    $row_width = a.width / a.columns;
    $row_height = a.height / a.rows;
    $i_row_numbers = 1;
    $i_column_numbers = 1;
    $square_arr = [];
    $square_total = 0;
    while ($i_row_numbers <= a.rows) {
        $initial = $i_row_numbers;
        $class_row = 'block_row_' + $i_row_numbers;
        while ($i_column_numbers <= a.columns) {
            $square_arr[$square_total] = ($square_total + 1);
            $square_total++;
            $block_ID_name = 'block_ID_' + ((a.columns * $i_row_numbers) - (a.columns - $i_column_numbers));
            $class_block = 'slider_block_' + ($initial++);
            $class_column = 'block_column_' + $i_column_numbers;
            $block_top = (($i_row_numbers * $row_height) - $row_height);
            $block_left = (($i_column_numbers * $row_width) - $row_width);
            $position_left = ($row_width * $i_column_numbers) - $row_width;
            $position_top = ($row_height * $i_row_numbers) - $row_height;
            if (b.attr('style') == undefined) {
                $('#slider_images').append('<div id="' + $block_ID_name + '" class="slider_block ' + $class_block + ' ' + $class_row + ' ' + $class_column + '" style="position: absolute; overflow: hidden;"></div>')
            } else {
                $('#slider_images').append('<div id="' + $block_ID_name + '" class="slider_block ' + $class_block + ' ' + $class_row + ' ' + $class_column + '" style="position: absolute; overflow: hidden;' + b.attr('style') + '"></div>')
            }
            $('#' + $block_ID_name).css({
                width: $row_width,
                height: $row_height,
                'z-index': 4,
                top: $block_top + 'px',
                left: $block_left + 'px',
                opacity: 0,
                'background-position': '-' + $position_left + 'px -' + $position_top + 'px'
            }).append('<div style="position: absolute; left: -' + $position_left + 'px; top: -' + $position_top + 'px; width: ' + a.width + 'px; height: ' + a.height + 'px;">' + b.html() + '</div>');
            $i_column_numbers++;
            $initial++
        }
        $i_row_numbers++;
        $i_column_numbers = 1
    }
    $squareArrShuffle = $.shuffle($square_arr);
    $i_row_numbers = 1;
    $i_column_numbers = 1;
    $squareAnimate = 0;
    while ($i_row_numbers <= a.rows) {
        $initial = $i_row_numbers;
        $class_row = 'block_row_' + $i_row_numbers;
        while ($i_column_numbers <= a.columns) {
            $animated_class = '#block_ID_' + ($squareArrShuffle[$squareAnimate]);
            $delay = (a.delay * $initial);
            $($animated_class).delay($delay).animate({
                opacity: 1
            }, {
                duration: a.duration,
                easing: 'easeOutQuad'
            });
            $i_column_numbers++;
            $initial++;
            $squareAnimate++
        }
        $i_row_numbers++;
        $i_column_numbers = 1
    }
    $delay_total = $delay + a.duration;
    b.delay($delay_total).animate({
        opacity: 0
    }, 1, function () {
        $(this).addClass('current').css({
            opacity: 1
        });
        $current.removeClass('current');
        $('.slider_block').remove();
        enableSelectors();
        e.removeClass('current');
        d.addClass('current')
    })
}
function DDSquareMoving(a, b, c, d, e) {
    disableSelectors();
    $item = b.children('a').children('img').attr('src');
    $row_width = a.width / a.columns;
    $row_height = a.height / a.rows;
    $i_row_numbers = 1;
    $i_column_numbers = 1;
    while ($i_row_numbers <= a.rows) {
        $initial = $i_row_numbers;
        $class_row = 'block_row_' + $i_row_numbers;
        while ($i_column_numbers <= a.columns) {
            $block_ID_name = 'block_ID_' + ((a.columns * $i_row_numbers) - (a.columns - $i_column_numbers));
            $class_block = 'slider_block_' + ($initial++);
            $class_column = 'block_column_' + $i_column_numbers;
            $block_top = ($i_row_numbers * $row_height) + 80;
            $block_left = ($i_column_numbers * $row_width) + 80;
            $position_left = ($row_width * $i_column_numbers) - $row_width;
            $position_top = ($row_height * $i_row_numbers) - $row_height;
            if (b.attr('style') == undefined) {
                $('#slider_images').append('<div id="' + $block_ID_name + '" class="slider_block ' + $class_block + ' ' + $class_row + ' ' + $class_column + '" style="position: absolute; overflow: hidden;"></div>')
            } else {
                $('#slider_images').append('<div id="' + $block_ID_name + '" class="slider_block ' + $class_block + ' ' + $class_row + ' ' + $class_column + '" style="position: absolute; overflow: hidden;' + b.attr('style') + '"></div>')
            }
            $('#' + $block_ID_name).css({
                width: $row_width,
                height: $row_height,
                'z-index': 4,
                opacity: 0,
                top: $block_top + 'px',
                left: $block_left + 'px',
                'background-position': '-' + $position_left + 'px -' + $position_top + 'px'
            }).append('<div style="position: absolute; left: -' + $position_left + 'px; top: -' + $position_top + 'px; width: ' + a.width + 'px; height: ' + a.height + 'px;">' + b.html() + '</div>');
            $i_column_numbers++;
            $initial++
        }
        $i_row_numbers++;
        $i_column_numbers = 1
    }
    $i_row_numbers = 1;
    $i_column_numbers = 1;
    while ($i_row_numbers <= a.rows) {
        $initial = $i_row_numbers;
        $class_row = 'block_row_' + $i_row_numbers;
        while ($i_column_numbers <= a.columns) {
            $block_ID_name = 'block_ID_' + ((a.columns * $i_row_numbers) - (a.columns - $i_column_numbers));
            $block_top = (($i_row_numbers * $row_height) - $row_height) + 'px';
            $block_left = (($i_column_numbers * $row_width) - $row_width) + 'px';
            $delay = (a.delay * $initial);
            $('#' + $block_ID_name).delay($delay).animate({
                opacity: 1,
                top: $block_top,
                left: $block_left
            }, {
                duration: a.duration,
                easing: 'easeOutQuad'
            });
            $i_column_numbers++;
            $initial++
        }
        $i_row_numbers++;
        $i_column_numbers = 1
    }
    $delay_total = $delay + a.duration;
    b.delay($delay_total).animate({
        opacity: 0
    }, 1, function () {
        $(this).addClass('current').css({
            opacity: 1
        });
        $current.removeClass('current');
        $('.slider_block').remove();
        e.removeClass('current');
        d.addClass('current');
        enableSelectors()
    })
}
function DDBarFade(a, b, c, d, e) {
    disableSelectors();
    $bar_width = a.width / a.bars;
    $bar_height = a.height;
    $bar_top = ($bar_height - ($bar_height * 2));
    $i = 1;
    while ($i <= a.bars) {
        $position = ($i * $bar_width) - $bar_width;
        $('#slider_images').append('<div class="slider_bar" id="slider_bar_' + $i + '" style="position: absolute; overflow: hidden;' + b.attr('style') + '"></div>');
        $('#slider_bar_' + $i).css({
            left: $position,
            opacity: 0,
            height: $bar_height,
            width: $bar_width,
            'z-index': 3,
            'background-position': '-' + $position + 'px top'
        });
        $i++
    }
    $ii = 1;
    while ($ii <= a.bars) {
        $position = ($ii * $bar_width) - $bar_width;
        $delay = ($ii * a.delay);
        $('#slider_bar_' + $ii).append('<div style="position: absolute; left: -' + $position + 'px; width: ' + a.width + 'px; height: ' + a.height + 'px;">' + b.html() + '</div>');
        $('#slider_bar_' + $ii).delay($delay).animate({
            opacity: 1
        }, {
            duration: a.duration,
            easing: 'easeOutQuad'
        });
        $ii++
    }
    $totalDelay = (a.bars * a.delay);
    b.delay($totalDelay).animate({
        opacity: 0
    }, a.duration, function () {
        $(this).addClass('current').css({
            opacity: 1
        });
        $current.removeClass('current');
        $('.slider_bar').remove();
        enableSelectors();
        e.removeClass('current');
        d.addClass('current')
    })
}
function DDBarFadeRandom(a, b, c, d, e) {
    disableSelectors();
    $bar_width = a.width / a.bars;
    $bar_height = a.height;
    $bar_top = ($bar_height - ($bar_height * 2));
    var f = [];
    $i = 1;
    while ($i <= a.bars) {
        $position = ($i * $bar_width) - $bar_width;
        $('#slider_images').append('<div class="slider_bar" id="slider_bar_' + $i + '" style="position: absolute; overflow: hidden;' + b.attr('style') + '"></div>');
        $('#slider_bar_' + $i).css({
            left: $position,
            opacity: 0,
            height: $bar_height,
            width: $bar_width,
            'z-index': 3,
            'background-position': '-' + $position + 'px top'
        });
        f[($i - 1)] = [$i];
        $i++
    }
    $bars_array_shuffle = $.shuffle(f);
    $ii = 1;
    while ($ii <= a.bars) {
        $position = ($ii * $bar_width) - $bar_width;
        $delay = ($ii * a.delay);
        $('#slider_bar_' + $ii).append('<div style="position: absolute; left: -' + $position + 'px; width: ' + a.width + 'px; height: ' + a.height + 'px;">' + b.html() + '</div>');
        $('#slider_bar_' + $bars_array_shuffle[($ii) - 1]).delay($delay).animate({
            opacity: 1
        }, {
            duration: a.duration,
            easing: 'easeOutQuad'
        });
        $ii++
    }
    $totalDelay = (a.bars * a.delay);
    b.delay($totalDelay).animate({
        opacity: 0
    }, a.duration, function () {
        $(this).addClass('current').css({
            opacity: 1
        });
        $current.removeClass('current');
        $('.slider_bar').remove();
        enableSelectors();
        e.removeClass('current');
        d.addClass('current')
    })
}
function DDRandomItem(a) {
    for (var j, x, i = a.length; i; j = parseInt(Math.random() * i), x = a[--i], a[i] = a[j], a[j] = x);
    return a[0]
}(function ($) {
    $.fn.shuffle = function () {
        return this.each(function () {
            var a = $(this).children();
            return (a.length) ? $(this).html($.shuffle(a)) : this
        })
    };
    $.shuffle = function (a) {
        for (var j, x, i = a.length; i; j = parseInt(Math.random() * i), x = a[--i], a[i] = a[j], a[j] = x);
        return a
    }
})(jQuery);

function randomNumber(a) {
    var b = 1;
    var c = a;
    var d = (parseFloat(c) - parseFloat(b)) + 1;
    var e = Math.floor(Math.random() * d) + parseFloat(b);
    return e
}
function disableSelectors() {
    $('#slider_arrow_right').after('<div id="slider_arrow_right_disabled"></div>');
    $('#slider_arrow_left').after('<div id="slider_arrow_left_disabled"></div>');
    $('#slider_selector').after('<ul id="slider_selector_dis"></div>');
    $('#slider_selector_dis').html($('#slider_selector').html())
}
function enableSelectors() {
    $('#slider_arrow_right_disabled').hide().remove();
    $('#slider_arrow_left_disabled').hide().remove();
    $('#slider_selector_dis').hide().remove()
}
var is = {
    ie: navigator.appName == 'Microsoft Internet Explorer',
    java: navigator.javaEnabled(),
    ns: navigator.appName == 'Netscape',
    ua: navigator.userAgent.toLowerCase(),
    version: parseFloat(navigator.appVersion.substr(21)) || parseFloat(navigator.appVersion),
    win: navigator.platform == 'Win32'
};
is.mac = is.ua.indexOf('mac') >= 0;
if (is.ua.indexOf('opera') >= 0) {
    is.ie = is.ns = false;
    is.opera = true
}
if (is.ua.indexOf('gecko') >= 0) {
    is.ie = is.ns = false;
    is.gecko = true
}
