﻿// Matilde Studio utility scripts
// richiede jQuery

function utl_addLanguage(language,base)   // img con classe "lang"
{
    var $list;
    if(base==undefined)$list=$('img.lang'); else $list=$('img.lang',base);
    $list.each(function() {this.src=this.src.replace(/\/([^\/]+)\.(\w{3})$/i,'/$1-'+language+'.$2');});
    $list.removeClass('lang').addClass('lang-'+language);
    if(base==undefined)$list=$('.lang'); else $list=$('.lang',base);
    $list.removeClass('lang').addClass('lang-'+language);
}

function utl_ro_src_enter(e) {if($(e).data('sel')!=1){e.src=e.src.replace(/\/([^\/]+)\.(png|gif|jpg|bmp)$/i,'/$1-s.$2');$(e).data('sel',1);}}
function utl_ro_src_leave(e) {if($(e).data('sel')!=0){e.src=e.src.replace(/\/([^\/]+)\-s\.(png|gif|jpg|bmp)$/i,'/$1.$2');$(e).data('sel',0);}}
function utl_rop_src_enter() {if($(this).closest('.rootsel').data('sel')!=this)utl_ro_src_enter(this);}
function utl_rop_src_leave() {if($(this).closest('.rootsel').data('sel')!=this)utl_ro_src_leave(this);}
function utl_rop_src_click() {e=$(this).closest('.rootsel').data('sel');if(e!=undefined)utl_ro_src_leave(e);$(this).closest('.rootsel').data('sel',this);utl_ro_src_enter(this);}
function utl_ron_src_enter() {utl_ro_src_enter(this);}
function utl_ron_src_leave() {utl_ro_src_leave(this);}
function utl_ro_flt_enter() {$(this).css('filter',$(this).css('filter').replace(/\/([^\/]+)\.(png|gif|jpg|bmp)/i,'/$1-s.$2'));}
function utl_ro_flt_leave() {$(this).css('filter',$(this).css('filter').replace(/\/([^\/]+)\-s\.(png|gif|jpg|bmp)/i,'/$1.$2'));}
function utl_ro_bg_enter() {$(this).css('background-image',$(this).css('background-image').replace(/\/([^\/]+)\.(png|gif|jpg|bmp)$/i,'/$1-s.$2'));}
function utl_ro_bg_leave() {$(this).css('background-image',$(this).css('background-image').replace(/\/([^\/]+)\-s\.(png|gif|jpg|bmp)$/i,'/$1.$2'));}

function utl_addRollover(base)  // img con classe "ro" e "ropng", div con classe "ro"
{
    if(base==undefined)base=$(document);
    var ie6=($.browser.msie && parseInt($.browser.version, 10)==6);
    $list=$('img.ro.selectable',base);
    $list.mouseenter(utl_rop_src_enter).mouseleave(utl_rop_src_leave).click(utl_rop_src_click).removeClass('ro').removeClass('selectable');
    if(ie6)
    {
        $list=$('img.ro',base);
        $list.mouseenter(utl_ron_src_enter).mouseleave(utl_ron_src_leave).removeClass('ro');
        $list=$('img.ropng',base);
        $list.mouseenter(utl_ro_flt_enter).mouseleave(utl_ro_flt_leave).removeClass('ropng');
    }
    else
    {        
        $list=$('img.ro, img.ropng',base);
        $list.mouseenter(utl_ron_src_enter).mouseleave(utl_ron_src_leave).removeClass('ro').removeClass('ropng');
    }
    $list=$('div.ro',base);
    $list.mouseenter(utl_ro_bg_enter).mouseleave(utl_ro_bg_leave).removeClass('ro');
}

function utl_replace_path(s,path)
{
    return s.replace(/(\/?([^\/]+\/))/i,path);
}