/*-- spam protection --*/

    function getAdr(prefix, postfix, text) {
        document.write('<a href="mailto:' + prefix + '@' + postfix + '">' + (text ? text.replace(/&quot;/g, '"').replace(/%EMAIL%/, prefix + '@' + postfix) : prefix + '@' + postfix) + '</a>');
    }

/*-- swap image --*/

    function swapImage(element, newimage) {
        var oldsrc = element.src;
        element.src = newimage;
        if (!element.onmouseout) {
            element.onmouseout = function () {
                swapImage(this, oldsrc);
            }
        }
    }

/*-- popup --*/

    function popup(url, width, height) {
        window.open(url, 'Popup', 'width=' + width + ', height=' + height + ',scrollbars=1');
        return false;
    }

/*-- getElementsByClassName --*/

    function getElementsByClassName(strClass, strTag, objContElm) {
        strTag = strTag || "*";
        objContElm = objContElm || document;
        var objColl = objContElm.getElementsByTagName(strTag);
        if (!objColl.length &&  strTag == "*" &&  objContElm.all) objColl = objContElm.all;
        var arr = new Array();
        var delim = strClass.indexOf('|') != -1  ? '|' : ' ';
        var arrClass = strClass.split(delim);
        for (var i = 0, j = objColl.length; i < j; i++) {
            var arrObjClass = objColl[i].className.split(' ');
            if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
            var c = 0;
            comparisonLoop:
            for (var k = 0, l = arrObjClass.length; k < l; k++) {
                for (var m = 0, n = arrClass.length; m < n; m++) {
                    if (arrClass[m] == arrObjClass[k]) c++;
                    if (( delim == '|' && c == 1) || (delim == ' ' && c == arrClass.length)) {
                        arr.push(objColl[i]);
                        break comparisonLoop;
                    }
                }
            }
        }
        return arr;
    }

/*-- validform --*/

    function init_forms() {
        var content = document.getElementById('content');
        if(content) {
            var forms = content.getElementsByTagName('form');
            for(f=0; f<forms.length; f++) {
                init_form(forms[f]);
            }
        }
        var email_empfaenger;
        var inputs = document.getElementsByTagName('*');
        for(i=0; i < inputs.length; i++) {
            if(inputs[i].name) {
                if(inputs[i].name == 'email_empfaenger') {
                    email_empfaenger = inputs[i];
                }
            }
        }
        if(email_empfaenger) {
            if(email_empfaenger.tagName.toLowerCase() == 'select') {
                var options = email_empfaenger.getElementsByTagName('option');
                for(o=0; o<options.length; o++) {
                    options[o].value = options[o].value.replace(/\+at\+/g, '@');
                }
                email_empfaenger.onchange = function() {
                    var options = this.getElementsByTagName('option');
                    for(o=1; o<options.length; o++) {
                        if(options[o].selected) {
                            var location_data = $($('.form_locations>div')[o-1]).find('span');
                            var form = this.parentNode;
                            while(form.tagName.toLowerCase() != 'form') {
                                form = form.parentNode;
                            }
                            for(i=0; i<location_data.length; i++) {
                                if(location_data[i].title != 'location_id') {
                                    form['to_' + location_data[i].title].value = location_data[i].innerHTML;
                                }
                            }
                        }
                    }
                }
                email_empfaenger.onchange();
            }
            else {
                email_empfaenger.value = email_empfaenger.value.replace(/\+at\+/g, '@');
            }
        }

        // check for form_application
        var url = document.location.href;
        if(url.indexOf('job_title') > -1 && document.getElementById('form_application')) {
            var spliturl = url.split('?');
            var splitparams = spliturl[1].split('&');
            var params = new Object();
            for(i=0; i<splitparams.length; i++) {
                var splitvalues = splitparams[i].split('=');
                params[splitvalues[0]] = splitvalues[1];
            }

            if(params['job_title'] && params['location_id'] && $("select[name='email_empfaenger']").length > 0) {
                $('.job input')[0].value = params['job_title'];
                $('.form_locations>div').each(function(i) {
                    $(this).find('span').each(function(s) {
                        if(this.title == 'location_id' && this.innerHTML == params['location_id']) {
                            $("select[name='email_empfaenger'] option")[i+1].selected = true;
                            $("select[name='email_empfaenger']")[0].disabled = true;
                        }
                    });
                });
                $("select[name='email_empfaenger']")[0].onchange();
            }
        }
    }

    function init_form(form) {
        var required = getElementsByClassName('required', '*', form);
        for(i=0; i<required.length; i++) {
            required[i].oldformonblur = required[i].onblur;
            required[i].onblur = function() {
                validate(this);
                if(this.oldformonblur)
                    this.oldformonblur();
            }
        }
        form.onsubmit = function() {
            var doSubmit = true;
            var list = new Array();
            var required = getElementsByClassName('required', '*', this);
            for(v=0; v<required.length; v++) {
                if(! validate(required[v])) {
                    doSubmit = false;
                    list.push(required[v]);
                }
            }
            var checkboxeles = getElementsByClassName('required_checkbox', '*', this);
            for(i=0; i<checkboxeles.length; i++) {
                valid = false;
                checkboxes = checkboxeles[i].getElementsByTagName('input');
                for(c=0; c<checkboxes.length; c++) {
                    if(checkboxes[c].type == 'checkbox') {
                        checkboxeles[i].name = checkboxes[c].name; // we need the name to check for custom_required_texts
                        if(checkboxes[c].checked)
                            valid = true;
                    }
                }
    
                if(valid == false) {
                    doSubmit = false;
                    set_msg(checkboxeles[i], FORM_valid_checkbox);
                    list.push(checkboxeles[i]);
                } 
                else {
                    clear_msg(checkboxeles[i]);
                }
            }
            var radioeles = getElementsByClassName('required_radio', '*', this);
            for(i=0; i<radioeles.length; i++) {
                valid = false;
                radios = radioeles[i].getElementsByTagName('input');
                for(c=0; c<radios.length; c++) {
                    if(radios[c].type == 'radio') {
                        radioeles[i].name = radios[c].name; // we need the name to check for custom_required_texts
                        if(radios[c].checked)
                            valid = true;
                    }
                }
    
                if(valid == false) {
                    doSubmit = false;
                    set_msg(radioeles[i], FORM_valid_radio);
                    list.push(radioeles[i]);
                } 
                else {
                    clear_msg(radioeles[i]);
                }
            }

            if(doSubmit == false) {
                show_error(list);
                return doSubmit;
            }
        }
    }

    function validate(el) {
        var valid = true;
        clear_msg(el);
        switch(el.type) {
            case 'text':
            case 'textarea':
            case 'select-one':
                if(el.value != '') {
                    if(el.className.indexOf('email') > -1) {
                        var regEmail = /^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/;
                        if(el.value.toUpperCase().match(regEmail)){
                            valid = true;
                        }
                        else {
                            valid = false;
                            set_msg(el, FORM_valid_email);
                        }
                    }
                    if(el.className.indexOf('number') > -1) {
                        if(el.value == Math.round(el.value)) {
                            valid = true;
                        }
                        else {
                            valid = false;
                            set_msg(el, FORM_valid_postal_code);
                        }
                    }
                }
                else {
                    valid = false;
                    set_msg(el);
                }
                break;
        }
    
        return valid;
    }

    function set_msg(el, msg) {
        if(msg == undefined) {
            msg = el.parentNode.getElementsByTagName('span')[0].innerHTML.replace(' *', '') + ' ' + FORM_valid_required;
        }

        if(custom_required_text[el.name])
            msg = custom_required_text[el.name];

        el.errorMessage = msg;
        if(el.parentNode.className.indexOf('error') == -1)
            el.parentNode.className += ' error';
    }

    function clear_msg(el) {
        var classes = el.parentNode.className.split(' ');
        for(e=0; e<classes.length; e++) {
            if(classes[e].indexOf('error') > -1)
                classes[e] = "";
        }
        el.parentNode.className = classes.join(' ');
        el.errorMessage = "";
    }

    function show_error(list) {
        errorlist = '<ul>';
        for(i=0; i<list.length; i++) {
            el = list[i];
            if(el.errorMessage != undefined)
                errorMessage = el.errorMessage;
            else
                var errorMessage = el.parentNode.getElementsByTagName('span')[0].innerHTML.replace(' *', '') + ' ' + FORM_valid_required;
    
            errorlist += '<li>' + errorMessage + '</li>';
        };
        errorlist += '</ul>';
    
        var validationMessage = document.getElementById('validationMessage');
        validationMessage.innerHTML = '<h2 title="' + FORM_valid_error + '">' + FORM_valid_error + '</h2>' + errorlist;
        document.location.href = '#validationMessage';
    }

    $(function() {
        init_forms();
    });




/*-- alternativ x-menu --*/

    // -- change any of the following settings to true or false, depending on your preferred animation style -- //
    var navAnimateSettings = {
        slide_vertical: false,
        slide_horizontal: false,
        opacity: false
    };

    // -- change the following value for animation speed (in milliseconds) -- //
    var navAnimationSpeed = 0;

    // -- don't change anything below this line! -- //
    var navImagesNormal = new Array();
    var navImagesHover = new Array();
    var navPrevOpened;
    var navInterval;
    var defaultSettings = {
        paddingTop: 0,
        paddingBottom: 0,
        paddingLeft: 0,
        paddingRight: 0
    };
    
    if(navAnimateSettings['slide_vertical']) defaultSettings['height'] = 0;
    if(navAnimateSettings['slide_horizontal']) defaultSettings['width'] = 0;
    if(navAnimateSettings['opacity']) defaultSettings['opacity'] = 0;

    function nav_close_prev_opened() {
        if(navPrevOpened) {
            if(navInterval)
                clearInterval(navInterval);

            // when there's no subnav, remove class now
            if($(navPrevOpened).children('ul').length == 0) {
                $(navPrevOpened).removeClass('hover');
            }
            else {
                $(navPrevOpened).children('ul').stop().animate(defaultSettings, navAnimationSpeed, function() {
                    $(this).css('display', 'none');
                    $(this).parent('li').removeClass('hover');
                });
            }

            var img = navPrevOpened.getElementsByTagName('img');
            if(img[0] && navImagesNormal[navPrevOpened.number])
                img[0].src = navImagesNormal[navPrevOpened.number];
        }
    }

    function init_nav() {
        if(document.getElementById('nav')) {
            var nav = document.getElementById('nav');
            var lis = nav.getElementsByTagName('li');
            for(var i = 0; i < lis.length; i++) {
                if(lis[i].parentNode.id == 'nav') {
                    $(lis[i]).addClass('hover'); // to see what it looks like on hover
                    lis[i].ulHeight = $(lis[i]).find('ul').height();
                    lis[i].ulWidth = $(lis[i]).find('ul').width();
                    lis[i].ulPaddingTop = $(lis[i]).find('ul').css('padding-top');
                    lis[i].ulPaddingBottom = $(lis[i]).find('ul').css('padding-bottom');
                    lis[i].ulPaddingLeft = $(lis[i]).find('ul').css('padding-left');
                    lis[i].ulPaddingRight = $(lis[i]).find('ul').css('padding-right');
                    $(lis[i]).removeClass('hover'); // remove class hover, we know what it should look like

                    $(lis[i]).children('ul').css(defaultSettings);
                    $(lis[i]).children('ul').css({
                        visibility: 'visible',
                        display: 'none',
                        overflow: 'hidden',
                        minWidth: 0,
                        minHeight: 0
                    });
                    lis[i].number = i;
                    $(lis[i]).mouseenter(function() {
                        nav_close_prev_opened();
                        navPrevOpened = this;

                        var animationObject = {
                           height: this.ulHeight + 'px',
                            width: this.ulWidth + 'px',
                            paddingTop: this.ulPaddingTop,
                            paddingBottom: this.ulPaddingBottom,
                            paddingLeft: this.ulPaddingLeft,
                            paddingRight: this.ulPaddingRight 
                        }

                        if(navAnimateSettings['opacity']) {
                            animationObject.opacity = 1;
                        }

                        $(this).addClass('hover');
                        $(this).find('ul').stop().animate(animationObject, navAnimationSpeed);

                        var img = this.getElementsByTagName('img');
                        if(img[0] && navImagesHover[this.number])
                            img[0].src = navImagesHover[this.number];
                    });
                    $(lis[i]).mouseleave(function() {
                        navInterval = setInterval('nav_close_prev_opened()', 1000);
                    });
                    var img = lis[i].getElementsByTagName('img');
                    if(img[0] && img[0].onmouseover) {
                        navImagesNormal[i] = img[0].src;
                        img[0].onmouseover();
                        navImagesHover[i] = img[0].src;
                        img[0].onmouseout();
                        img[0].onmouseover = function() {};
                        img[0].onmouseout = function() {};
                    }
                    var anchors = lis[i].getElementsByTagName('A');
                    for(j=0; j<anchors.length; j++) {
                        anchors[j].title = '';
                    }
                }
            }
        }
    }


    $(function() {
        init_nav();
    });
 
 
/*-- display elements onmouseover --*/

    var hover_links = new Array();
    hover_links.push(new Array('fontchange', 'fontsize'));
    // To add more links, follow the same pattern
    // hoverLinks.push(new Array('linkid', 'elementid'));

    function init_show_elements() {
        for (i = 0; i < hover_links.length; i++) {
            var link = document.getElementById(hover_links[i][0]);
            if (link) {
                link.el = document.getElementById(hover_links[i][1]);
                if (link.el) {
                    link.onmouseover = function() {
                        this.el.style.display = 'block';
                    };
                    link.onmouseout = function() {
                        this.el.style.display = 'none';
                    }
                    link.onclick = function() {
                        return false;
                    }
                }
            }
        }
    }

    $(function() {
        init_show_elements();
    });

/*-- filter/sort tables --*/

    function init_table_sort() {
        var tables = document.getElementsByTagName('table');
        for(t=0; t<tables.length; t++) {
            if(tables[t].className.indexOf('sortable') > -1) {
                tables[t].data = new Array();
                // check column descriptions
                tables[t].columndesc = new Array();
                tables[t].filterstrings = new Array();
                var ths = tables[t].getElementsByTagName('thead')[0].getElementsByTagName('th');
                for(th=0; th<ths.length; th++) {
                    var col = new Object();
                    col['name'] = ths[th].innerHTML;
                    col['settings'] = new Object();
                    var settings = ths[th].className.split(' ');
                    for(set=0; set<settings.length; set++) {
                        col['settings'][settings[set]] = 1;
                    }
                    tables[t].columndesc.push(col);

                    if(ths[th].title) {
                        tables[t].filterstrings[th] = ths[th].title.replace('%', col['name']);
                    }
                }
                // check values
                tables[t].columntagnames = new Array(); // so we can support td and th
                var trs = tables[t].getElementsByTagName('tbody')[0].getElementsByTagName('tr');
                for(tr=0; tr<trs.length; tr++) {
                    var trdata = new Array();
                    var tds = trs[tr].getElementsByTagName('*');
                    if(tds.length > 0) {
                        for(td=0; td<tds.length; td++) {
                            if(tds[td].tagName.toLowerCase() == 'td' || 
                                tds[td].tagName.toLowerCase() == 'th') {

                                // get rid of script tags
                                if(tds[td].getElementsByTagName('script').length > 0) {
                                    var scripts = tds[td].getElementsByTagName('script');
                                    for(script=0; script<scripts.length; script++) {
                                        scripts[script].parentNode.removeChild(scripts[script]);
                                    }
                                }

                                trdata.push(tds[td].innerHTML);

                                if(tables[t].columntagnames.length < tables[t].columndesc.length) {
                                    tables[t].columntagnames.push(tds[td].tagName.toLowerCase()); // save tagname so we can reproduce it later
                                }
                            }
                        }
                        tables[t].data.push(trdata);
                    }
                }
                // now create control panel depending on settings of colum descriptions
                tables[t].panel = document.createElement('div');
                tables[t].panel.className = 'panel';
                tables[t].parentNode.insertBefore(tables[t].panel, tables[t]);
                // * sortable
                var sorter = document.createElement('select');
                sorter.className = 'sort';
                for(col=0; col<tables[t].columndesc.length; col++) {
                    var coldesc = tables[t].columndesc[col];
                    if(coldesc['settings']['sort']) {
                        var opt = new Option(TABLESORT_sort + ' ' + coldesc['name'], col);
                        sorter.options[sorter.options.length] = opt;
                    }
                }
                if(sorter.options.length > 0)
                    tables[t].panel.appendChild(sorter);
                // * ascending / descending
                var ascdesc = document.createElement('select');
                ascdesc.className = 'ascdesc';
                var ascdesc_values = new Array(TABLESORT_asc, TABLESORT_desc);
                for(c=0; c<ascdesc_values.length; c++) {
                    var opt = new Option(ascdesc_values[c], c);
                    ascdesc.options[ascdesc.options.length] = opt;
                }
                if(sorter.options.length > 0)
                    tables[t].panel.appendChild(ascdesc);
                // * filter
                for(col=0; col<tables[t].columndesc.length; col++) {
                    var coldesc = tables[t].columndesc[col];
                    var coldfilterstring = tables[t].filterstrings[col];
                    if(coldesc['settings']['filter']) {
                        var filter = document.createElement('select');
                        filter.col = col; // save to which column this filter belongs to
                        filter.className = 'filter';
                        var opt = new Option(coldfilterstring ? coldfilterstring : TABLESORT_showall.replace('STRING', coldesc['name']), '');
                        filter.options[filter.options.length] = opt;
                        var words = new Object();
                        for(d=0; d<tables[t].data.length; d++) {
                            if(coldesc['settings']['list']) {
                                var tempdiv = document.createElement('div');
                                tempdiv.innerHTML = tables[t].data[d][col];
                                var lis = tempdiv.getElementsByTagName('li');
                                for(li=0; li<lis.length; li++) {
                                    words[lis[li].innerHTML] = 1;
                                }
                            }
                            else {
                                words[tables[t].data[d][col]] = 1;
                            }
                        }
                        for(w in words) {
                            var opt = new Option(TABLESORT_showonly.replace('STRING', w), w);
                            filter.options[filter.options.length] = opt;
                        }
                        tables[t].panel.appendChild(filter);
                    }
                }
                // * onchange function
                var selects = tables[t].panel.getElementsByTagName('select');
                tables[t].panel.table = tables[t]; // save table in panel
                for(s=0; s<selects.length; s++) {
                    selects[s].onchange = function() {
                        table_sort(this.parentNode.table, (this.className.indexOf('filter') > -1 ? 'filter_only' : ''));
                    }
                    selects[s].onclick = selects[s].onchange;
                }

                if(tables[t].className.indexOf('no_initial_sort') == -1) {
                    table_sort(tables[t]);
                }
            }
        }
    }

    function table_sort(table, options) {
        if(options == undefined)
            options = "";

        var stable = document.createElement('table'); // sortable table
        stable.data = table.data;
        stable.columndesc = table.columndesc;
        stable.columntagnames = table.columntagnames;
        stable.panel = table.panel;
        stable.panel.table = stable; // save table in panel
        stable.className = table.className;

        // get info of which column should be sorted, and which filter should be applied
        stable.sortbycol = 0;
        stable.ascdesc = 0; // ascending
        stable.ascdesc_select;
        stable.sort_select;
        stable.filtercol = new Array();
        var selects = stable.panel.getElementsByTagName('select');
        for(s=0; s<selects.length; s++) {
            if(selects[s].className.indexOf('sort') > -1) {
                stable.sortbycol = selects[s].value;
                stable.sort_select = selects[s];
            }

            if(selects[s].className.indexOf('filter') > -1) {
                stable.filtercol[selects[s].col] = selects[s].value;
            }

            if(selects[s].className.indexOf('ascdesc') > -1) {
                stable.ascdesc = selects[s].value;
                stable.ascdesc_select = selects[s];
            }
        }

        if(options.indexOf('filter_only') == -1) {
            // sort
            // we'll do a little trick here; we simply copy the col values in front, sort it, and then drop the first col again
            for(d=0; d<stable.data.length; d++) {
                stable.data[d].unshift(stable.data[d][stable.sortbycol]);
            }
            stable.data.sort();
            if(stable.ascdesc == 1) { // ascending (0) or descending (1)?
                stable.data.reverse();
            }
            for(d=0; d<stable.data.length; d++) {
                stable.data[d].shift();
            }
        }

        // clone colgroups
        var colgroups = table.getElementsByTagName('colgroup');
        if(colgroups.length > 0) {
            var colgroup = colgroups[0].cloneNode(true);
            stable.appendChild(colgroup);
        }

        // draw header
        var thead = document.createElement('thead');
        stable.appendChild(thead);
        var tr = document.createElement('tr');
        thead.appendChild(tr);
        for(c=0; c<stable.columndesc.length; c++) {
            if(!stable.columndesc[c]['settings']['hide']) {
                var th = document.createElement('th');
                th.innerHTML = stable.columndesc[c]['name'];
                th.col = c; // save which column this th belongs to
                th.table = stable; // save my parent table
                tr.appendChild(th);
                if(stable.sortbycol == c) {
                    if(stable.ascdesc == 0) {
                        th.className = 'sort_asc';
                    }
                    else {
                        th.className = 'sort_desc';
                    }
                }
                if(stable.columndesc[c]['settings']['sort']) {
                    th.className += ' sortable';
                    th.onclick = function() {
                        var tbl = this.table;
                        if(tbl.sortbycol == this.col) {
                            tbl.ascdesc_select.value = (tbl.ascdesc_select.value == 0 ? 1 : 0);
                        }
                        stable.sort_select.value = this.col;
                        table_sort(tbl);
                    }
                }
            }
        }

        // draw body, but only rows that are allowed by filter, and not hidden
        var tbody = document.createElement('tbody');
        stable.appendChild(tbody);
        for(d=0; d<stable.data.length; d++) {
            var tr = document.createElement('tr');
            var show = 1;
            for(c=0; c<stable.columndesc.length; c++) {
                var td = document.createElement(stable.columntagnames[c]);

                if(!stable.columndesc[c]['settings']['hide'])
                    tr.appendChild(td);

                td.innerHTML = stable.data[d][c];

                if(stable.columndesc[c]['settings']['filter'] &&  stable.filtercol[c] != "") {
                    if(stable.columndesc[c]['settings']['list']) {
                        var lis = td.getElementsByTagName('li');
                        var correct = 0;
                        for(li=0; li<lis.length; li++) {
                            if(lis[li].innerHTML == stable.filtercol[c]) {
                                correct++;
                            }
                        }
                        if(correct == 0)
                            show = 0;
                    }
                    else {
                        if(td.innerHTML != stable.filtercol[c]) {
                            show = 0;
                        }
                    }
                }
            }

            if(show)
                tbody.appendChild(tr);
        }

        // insert new table, delete old table
        table.parentNode.insertBefore(stable, table);
        table.parentNode.removeChild(table);
    }

    $(function() {
        init_table_sort();
    });


  /*---imagefade by ksc--*/
  
  function initImagefader( targetImages, speed ) {
     $(targetImages+":first").fadeIn();
     if($(targetImages).length > 1){
      $("<a><span>next</span></a>").addClass("ifControll ifNext").click(function() { 
        $(targetImages+":visible").fadeOut(speed, function() {
          if(!$(this).next().is("img")) $(targetImages+":first").fadeIn(speed);
          else $(this).next().fadeIn(speed); 
        });
      }).insertBefore($(targetImages+":first"));
      $("<a><span>prev</span></a>").addClass("ifControll ifPrev").click(function() {
        $(targetImages+":visible").fadeOut(speed, function() {
          if(!$(this).prev().is("img")) $(targetImages+":last").fadeIn(speed);
          else $(this).prev().fadeIn(speed);
        });
      }).insertBefore($(targetImages+":first"));
     }
  }
  $(function() {
        initImagefader( "#content .staff_text img", "" );
    });
    

    
    /*$(document).ready(function() {
          $('.newsticker').append('<li>' + $('.newsticker li').text() + '</li><li>' + $('.newsticker li').text() + '</li><li>' + $('.newsticker li').text() + '</li><li>' + $('.newsticker li').text() + '</li><li>' + $('.newsticker li').text() + '</li><li>' + $('.newsticker li').text() + '</li>');
          $("ul.newsticker").liScroll({travelocity: 0.075}); 
    });*/
    
    
    
    /*!
 * liScroll 1.0
 * Examples and documentation at: 
 * http://www.gcmingati.net/wordpress/wp-content/lab/jquery/newsticker/jq-liscroll/scrollanimate.html
 * 2007-2010 Gian Carlo Mingati
 * Version: 1.0.2 (30-MARCH-2009)
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 * Requires:
 * jQuery v1.2.x or later
 * 



jQuery.fn.liScroll = function(settings) {
        settings = jQuery.extend({
        travelocity: 0.07
        }, settings);        
        return this.each(function(){
                var $strip = jQuery(this);
                $strip.addClass("newsticker")
                var stripWidth = 0;
                var $mask = $strip.wrap("<div class='mask'></div>");
                var $tickercontainer = $strip.parent().wrap("<div class='tickercontainer'></div>");                                
                var containerWidth = $strip.parent().parent().width();    
                $strip.find("li").each(function(i){
                stripWidth += jQuery(this, i).outerWidth(true);
                });
                $strip.width(stripWidth);            
                var totalTravel = stripWidth+containerWidth;
                var defTiming = totalTravel/settings.travelocity;        
                function scrollnews(spazio, tempo){
                $strip.animate({left: '-='+ spazio}, tempo, "linear", function(){$strip.css("left", containerWidth); scrollnews(totalTravel, defTiming);});
                }
                scrollnews(totalTravel, defTiming);                
                $strip.hover(function(){
                jQuery(this).stop();
                },
                function(){
                var offset = jQuery(this).offset();
                var residualSpace = offset.left + stripWidth;
                var residualTime = residualSpace/settings.travelocity;
                scrollnews(residualSpace, residualTime);
                });            
        });    
};
*/
