﻿function nl(page) {
    var windowWidth = 500;
    var windowHeight = 640;
    var centerWidth = (window.screen.width - windowWidth) / 2;
    var centerHeight = (window.screen.height - windowHeight) / 2;
    newwindow = window.open(page, 'nl', 'location=0,status=0,scrollbars=1,resizable=1,width=' + windowWidth +
        ',height=' + windowHeight +
        ',left=' + centerWidth +
        ',top=' + centerHeight);
    return (false);
}

/****************/
// UTILITIES
/****************/

/**
* jQuery.query - Query String Modification and Creation for jQuery
* Written by Blair Mitchelmore (blair DOT mitchelmore AT gmail DOT com)
* Licensed under the WTFPL (http://sam.zoy.org/wtfpl/).
* Date: 2009/02/08
*
* @author Blair Mitchelmore
* @version 2.1.3
*
**/
new function(settings) {
    // Various Settings
    var $separator = settings.separator || '&';
    var $spaces = settings.spaces === false ? false : true;
    var $suffix = settings.suffix === false ? '' : '[]';
    var $prefix = settings.prefix === false ? false : true;
    var $hash = $prefix ? settings.hash === true ? "#" : "?" : "";
    var $numbers = settings.numbers === false ? false : true;

    jQuery.query = new function() {
        var is = function(o, t) {
            return o != undefined && o !== null && (!!t ? o.constructor == t : true);
        };
        var parse = function(path) {
            var m, rx = /\[([^[]*)\]/g, match = /^(\S+?)(\[\S*\])?$/.exec(path), base = match[1], tokens = [];
            while (m = rx.exec(match[2])) tokens.push(m[1]);
            return [base, tokens];
        };
        var set = function(target, tokens, value) {
            var o, token = tokens.shift();
            if (typeof target != 'object') target = null;
            if (token === "") {
                if (!target) target = [];
                if (is(target, Array)) {
                    target.push(tokens.length == 0 ? value : set(null, tokens.slice(0), value));
                } else if (is(target, Object)) {
                    var i = 0;
                    while (target[i++] != null);
                    target[--i] = tokens.length == 0 ? value : set(target[i], tokens.slice(0), value);
                } else {
                    target = [];
                    target.push(tokens.length == 0 ? value : set(null, tokens.slice(0), value));
                }
            } else if (token && token.match(/^\s*[0-9]+\s*$/)) {
                var index = parseInt(token, 10);
                if (!target) target = [];
                target[index] = tokens.length == 0 ? value : set(target[index], tokens.slice(0), value);
            } else if (token) {
                var index = token.replace(/^\s*|\s*$/g, "");
                if (!target) target = {};
                if (is(target, Array)) {
                    var temp = {};
                    for (var i = 0; i < target.length; ++i) {
                        temp[i] = target[i];
                    }
                    target = temp;
                }
                target[index] = tokens.length == 0 ? value : set(target[index], tokens.slice(0), value);
            } else {
                return value;
            }
            return target;
        };

        var queryObject = function(a) {
            var self = this;
            self.keys = {};

            if (a.queryObject) {
                jQuery.each(a.get(), function(key, val) {
                    self.SET(key, val);
                });
            } else {
                jQuery.each(arguments, function() {
                    var q = "" + this;
                    q = decodeURIComponent(q);
                    q = q.replace(/^[?#]/, ''); // remove any leading ? || #
                    q = q.replace(/[;&]$/, ''); // remove any trailing & || ;
                    if ($spaces) q = q.replace(/[+]/g, ' '); // replace +'s with spaces

                    jQuery.each(q.split(/[&;]/), function() {
                        var key = this.split('=')[0];
                        var val = this.split('=')[1];

                        if (!key) return;

                        if ($numbers) {
                            if (/^[+-]?[0-9]+\.[0-9]*$/.test(val)) // simple float regex
                                val = parseFloat(val);
                            else if (/^[+-]?[0-9]+$/.test(val)) // simple int regex
                                val = parseInt(val, 10);
                        }

                        val = (!val && val !== 0) ? true : val;

                        if (val !== false && val !== true && typeof val != 'number')
                            val = val;

                        self.SET(key, val);
                    });
                });
            }
            return self;
        };

        queryObject.prototype = {
            queryObject: true,
            has: function(key, type) {
                var value = this.get(key);
                return is(value, type);
            },
            GET: function(key) {
                if (!is(key)) return this.keys;
                var parsed = parse(key), base = parsed[0], tokens = parsed[1];
                var target = this.keys[base];
                while (target != null && tokens.length != 0) {
                    target = target[tokens.shift()];
                }
                return typeof target == 'number' ? target : target || "";
            },
            get: function(key) {
                var target = this.GET(key);
                if (is(target, Object))
                    return jQuery.extend(true, {}, target);
                else if (is(target, Array))
                    return target.slice(0);
                return target;
            },
            SET: function(key, val) {
                var value = !is(val) ? null : val;
                var parsed = parse(key), base = parsed[0], tokens = parsed[1];
                var target = this.keys[base];
                this.keys[base] = set(target, tokens.slice(0), value);
                return this;
            },
            set: function(key, val) {
                return this.copy().SET(key, val);
            },
            REMOVE: function(key) {
                return this.SET(key, null).COMPACT();
            },
            remove: function(key) {
                return this.copy().REMOVE(key);
            },
            EMPTY: function() {
                var self = this;
                jQuery.each(self.keys, function(key, value) {
                    delete self.keys[key];
                });
                return self;
            },
            load: function(url) {
                var hash = url.replace(/^.*?[#](.+?)(?:\?.+)?$/, "$1");
                var search = url.replace(/^.*?[?](.+?)(?:#.+)?$/, "$1");
                return new queryObject(url.length == search.length ? '' : search, url.length == hash.length ? '' : hash);
            },
            empty: function() {
                return this.copy().EMPTY();
            },
            copy: function() {
                return new queryObject(this);
            },
            COMPACT: function() {
                function build(orig) {
                    var obj = typeof orig == "object" ? is(orig, Array) ? [] : {} : orig;
                    if (typeof orig == 'object') {
                        function add(o, key, value) {
                            if (is(o, Array))
                                o.push(value);
                            else
                                o[key] = value;
                        }
                        jQuery.each(orig, function(key, value) {
                            if (!is(value)) return true;
                            add(obj, key, build(value));
                        });
                    }
                    return obj;
                }
                this.keys = build(this.keys);
                return this;
            },
            compact: function() {
                return this.copy().COMPACT();
            },
            toString: function() {
                var i = 0, queryString = [], chunks = [], self = this;
                var addFields = function(arr, key, value) {
                    if (!is(value) || value === false) return;
                    var o = [encodeURIComponent(key)];
                    if (value !== true) {
                        o.push("=");
                        o.push(encodeURIComponent(value));
                    }
                    arr.push(o.join(""));
                };
                var build = function(obj, base) {
                    var newKey = function(key) {
                        return !base || base == "" ? [key].join("") : [base, "[", key, "]"].join("");
                    };
                    jQuery.each(obj, function(key, value) {
                        if (typeof value == 'object')
                            build(value, newKey(key));
                        else
                            addFields(chunks, newKey(key), value);
                    });
                };

                build(this.keys);

                if (chunks.length > 0) queryString.push($hash);
                queryString.push(chunks.join($separator));

                return queryString.join("");
            }
        };

        return new queryObject(location.search, location.hash);
    };
} (jQuery.query || {}); // Pass in jQuery.query as settings object

//v1.7
// Flash Player Version Detection
// Detect Client Browser type
// Copyright 2005-2008 Adobe Systems Incorporated.  All rights reserved.
var isIE = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var isWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var isOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;
function ControlVersion() {
    var version;
    var axo;
    var e;
    // NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't in the registry
    try {
        // version will be set for 7.X or greater players
        axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");
        version = axo.GetVariable("$version");
    } catch (e) {
    }
    if (!version) {
        try {
            // version will be set for 6.X players only
            axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");

            // installed player is some revision of 6.0
            // GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,
            // so we have to be careful. 

            // default to the first public version
            version = "WIN 6,0,21,0";
            // throws if AllowScripAccess does not exist (introduced in 6.0r47)		
            axo.AllowScriptAccess = "always";
            // safe to call for 6.0r47 or greater
            version = axo.GetVariable("$version");
        } catch (e) {
        }
    }
    if (!version) {
        try {
            // version will be set for 4.X or 5.X player
            axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
            version = axo.GetVariable("$version");
        } catch (e) {
        }
    }
    if (!version) {
        try {
            // version will be set for 3.X player
            axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");
            version = "WIN 3,0,18,0";
        } catch (e) {
        }
    }
    if (!version) {
        try {
            // version will be set for 2.X player
            axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
            version = "WIN 2,0,0,11";
        } catch (e) {
            version = -1;
        }
    }

    return version;
}
// JavaScript helper required to detect Flash Player PlugIn version information
function GetSwfVer() {
    // NS/Opera version >= 3 check for Flash plugin in plugin array
    var flashVer = -1;

    if (navigator.plugins != null && navigator.plugins.length > 0) {
        if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
            var swVer2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
            var flashDescription = navigator.plugins["Shockwave Flash" + swVer2].description;
            var descArray = flashDescription.split(" ");
            var tempArrayMajor = descArray[2].split(".");
            var versionMajor = tempArrayMajor[0];
            var versionMinor = tempArrayMajor[1];
            var versionRevision = descArray[3];
            if (versionRevision == "") {
                versionRevision = descArray[4];
            }
            if (versionRevision[0] == "d") {
                versionRevision = versionRevision.substring(1);
            } else if (versionRevision[0] == "r") {
                versionRevision = versionRevision.substring(1);
                if (versionRevision.indexOf("d") > 0) {
                    versionRevision = versionRevision.substring(0, versionRevision.indexOf("d"));
                }
            }
            var flashVer = versionMajor + "." + versionMinor + "." + versionRevision;
        }
    }
    // MSN/WebTV 2.6 supports Flash 4
    else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") != -1) flashVer = 4;
    // WebTV 2.5 supports Flash 3
    else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") != -1) flashVer = 3;
    // older WebTV supports Flash 2
    else if (navigator.userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 2;
    else if (isIE && isWin && !isOpera) {
        flashVer = ControlVersion();
    }
    return flashVer;
}
// When called with reqMajorVer, reqMinorVer, reqRevision returns true if that version or greater is available
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision) {
    versionStr = GetSwfVer();
    if (versionStr == -1) {
        return false;
    } else if (versionStr != 0) {
        if (isIE && isWin && !isOpera) {
            // Given "WIN 2,0,0,11"
            tempArray = versionStr.split(" "); 	// ["WIN", "2,0,0,11"]
            tempString = tempArray[1]; 		// "2,0,0,11"
            versionArray = tempString.split(","); // ['2', '0', '0', '11']
        } else {
            versionArray = versionStr.split(".");
        }
        var versionMajor = versionArray[0];
        var versionMinor = versionArray[1];
        var versionRevision = versionArray[2];
        // is the major.revision >= requested major.revision AND the minor version >= requested minor
        if (versionMajor > parseFloat(reqMajorVer)) {
            return true;
        } else if (versionMajor == parseFloat(reqMajorVer)) {
            if (versionMinor > parseFloat(reqMinorVer))
                return true;
            else if (versionMinor == parseFloat(reqMinorVer)) {
                if (versionRevision >= parseFloat(reqRevision))
                    return true;
            }
        }
        return false;
    }
}
function AC_AddExtension(src, ext) {
    if (src.indexOf('?') != -1)
        return src.replace(/\?/, ext + '?');
    else
        return src + ext;
}
function AC_Generateobj(objAttrs, params, embedAttrs) {
    var str = '';
    if (isIE && isWin && !isOpera) {
        str += '<object ';
        for (var i in objAttrs) {
            str += i + '="' + objAttrs[i] + '" ';
        }
        str += '>';
        for (var i in params) {
            str += '<param name="' + i + '" value="' + params[i] + '" /> ';
        }
        str += '</object>';
    }
    else {
        str += '<embed ';
        for (var i in embedAttrs) {
            str += i + '="' + embedAttrs[i] + '" ';
        }
        str += '> </embed>';
    }
    document.write(str);
}
function AC_FL_RunContent() {
    var ret =
    AC_GetArgs
    (arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
    AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}
function AC_SW_RunContent() {
    var ret =
    AC_GetArgs
    (arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
    AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}
function AC_GetArgs(args, ext, srcParamName, classid, mimeType) {
    var ret = new Object();
    ret.embedAttrs = new Object();
    ret.params = new Object();
    ret.objAttrs = new Object();
    for (var i = 0; i < args.length; i = i + 2) {
        var currArg = args[i].toLowerCase();
        switch (currArg) {
            case "classid":
                break;
            case "pluginspage":
                ret.embedAttrs[args[i]] = args[i + 1];
                break;
            case "src":
            case "movie":
                args[i + 1] = AC_AddExtension(args[i + 1], ext);
                ret.embedAttrs["src"] = args[i + 1];
                ret.params[srcParamName] = args[i + 1];
                break;
            case "onafterupdate":
            case "onbeforeupdate":
            case "onblur":
            case "oncellchange":
            case "onclick":
            case "ondblclick":
            case "ondrag":
            case "ondragend":
            case "ondragenter":
            case "ondragleave":
            case "ondragover":
            case "ondrop":
            case "onfinish":
            case "onfocus":
            case "onhelp":
            case "onmousedown":
            case "onmouseup":
            case "onmouseover":
            case "onmousemove":
            case "onmouseout":
            case "onkeypress":
            case "onkeydown":
            case "onkeyup":
            case "onload":
            case "onlosecapture":
            case "onpropertychange":
            case "onreadystatechange":
            case "onrowsdelete":
            case "onrowenter":
            case "onrowexit":
            case "onrowsinserted":
            case "onstart":
            case "onscroll":
            case "onbeforeeditfocus":
            case "onactivate":
            case "onbeforedeactivate":
            case "ondeactivate":
            case "type":
            case "codebase":
            case "id":
                ret.objAttrs[args[i]] = args[i + 1];
                break;
            case "width":
            case "height":
            case "align":
            case "vspace":
            case "hspace":
            case "class":
            case "title":
            case "accesskey":
            case "name":
            case "tabindex":
                ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i + 1];
                break;
            default:
                ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i + 1];
        }
    }
    ret.objAttrs["classid"] = classid;
    if (mimeType) ret.embedAttrs["type"] = mimeType;
    return ret;
}

function parseUrl(data) {
    var e = /^((http|ftp):\/)?\/?([^:\/\s]+)((\/\w+)*\/)([\w\-\.]+\.[^#?\s]+)(#[\w\-]+)?$/;
    if (data.match(e)) {
        return { url: RegExp['$&'],
            protocol: RegExp.$2,
            host: RegExp.$3,
            path: RegExp.$4,
            file: RegExp.$6,
            hash: RegExp.$7
        };
    } else {
        return { url: "", protocol: "", host: "", path: "", file: "", hash: "" };
    }
}


/**************************/
//     JUSTWM
/**************************/


var scrollsize = 0;
var resizeLimit = 1200;
var resizeLimitH = 640;
var resizeStep = 130;

var small = false;
var zoomed = false;
var openmenu = true;
var ismodellist = false;
var ismodelbook = false;
var ismodelindex = false;
var ispackagelist = false;
var ispackagebook = false;
var isTeamPage = false;
var isDefault = false;

var menulength = 240;
var menulength2 = 180;


/*
function checkWindow() {
    if (!zoomed) {
        var ww = $(window).width();
        var wh = $(window).height();
        if (ww < 1200 || wh < 640) {
            getSkin("small");
            small = true;
            var mt = Math.floor((wh - 620) / 2);
            if (ismodelbook) {
                $("#content").animate({ height: "360px" });
            }
            if (ismodelbook) {
                resizeImages(false);
            }
        } else {
            small = false;
            $("#wrapper").removeClass("small");
            var mt = Math.floor((wh - 710) / 2);
            if (ismodelbook) {
                $("#content").animate({ height: "520px" });
            }
            if (ismodelbook) {
                resizeImages(true);
            }
        }
        if (ismodellist) {
            resizeList();
            $("#scrollableList").css("width", (ww - 78).toString() + "px");
            scrollsize = (ww - 180);
        }
        if (mt > 0) $("div#wrapper").css("margin-top", mt);
        $("div#wrapper").css("visibility", "visible");
    } else {
        zoomout();
        checkWindow();
    }
} */


function checkWindow() {
    if (!zoomed) {
        var ww = $(window).width();
        var wh = $(window).height();
        if (ww < resizeLimit || wh < resizeLimitH) {
            small = true;
            var mt = Math.floor((wh - 620) / 2);

            $("#wrapper").addClass("small");
            /* if (cname == "small") {
            if ($("#scrollableList").length > 0) {
            $("#scrollableList > ul > li > img").css("height", "220px");
            $("#scrollableList").css("height", "260px");
            $("#scrollableList > ul").css("width", (imgs.length * 180).toString() + "px");
            }
            } */

            //$("#contents").addClass("small");


            if (ismodelbook || ispackagebook) {
                $("#content").animate({ height: "360px" });
            }
            if (ismodelbook || ispackagebook) {
                resizeImages(false);
                resizeVideos(false);
            }
        } else {
            small = false;
            var mt = Math.floor((wh - 710) / 2);

            $("#wrapper").removeClass("small");
            /* $("#scrollableList > ul > li > img").css("height", "auto");
            $("#scrollableList").css("height", "398px");
            $("#scrollableList > ul").css("width", (imgs.length * 280).toString() + "px"); */

            //$("#contents").removeClass("small");

            if (ismodelbook || ispackagebook) {
                $("#content").animate({ height: "520px" });
            }
            if (ismodelbook || ispackagebook) {
                resizeImages(true);
                resizeVideos(true);
            }
        }
        //$("#scrollableList").css("width", (ww - 130).toString() + "px");
        //scrollsize = (ww - 130);

        if (!ismodelbook && !ispackagebook) {
            var dw = 800;
            if ((ww - 590) < 800) {
                dw = (ww - 590);
            }
            $("#contents #main").css("width", dw.toString() + "px");
            if ($(".jScrollPaneContainer").length > 0) {
                $(".jScrollPaneContainer").css("width", dw.toString() + "px");
            }
        }
        //$('#main').jScrollPane({ scrollbarWidth: 12, scrollbarMargin: 40, dragMaxHeight: 9, showArrows: true });
        
        if (ismodellist || ispackagelist) {
            resizeList();
            $("#scrollableList").css("width", (ww - 78).toString() + "px");
            scrollsize = (ww - 180);
        }
        if (mt > 0) $("div#wrapper").css("margin-top", mt);
        $("div#wrapper").css("visibility", "visible");

        
    } else {
        zoomout();
        checkWindow();
    }
}


// MODELLIST
function resizeList() {
    if (ismodellist || ispackagelist) {
        $("#scrollableList > ul > li > img").css("height", "auto");
        $("#scrollableList").css("height", "398px");
        $("#scrollableList > ul").css("width", (imgs.length * 280).toString() + "px");
    }
}


// RIDIMENSIONAMENTO IMMAGINI

function switchImages() { //DISABILITATO
    $("#c2 img.pic").each(function(i, item) {
        var parsedurl = parseUrl($(item).attr("src"));
        if (parsedurl.file.substring(0, 2) == "w_") {
            var newurl = parsedurl.host + parsedurl.path + parsedurl.file.replace("w_", "");
            if (parsedurl.protocol != "") {
                newurl = parsedurl.protocol + "://" + newurl;
            }
            $(item).attr("src", newurl);
        }
        if (parsedurl.file.substring(0, 6) == "ext_w_") {
            var newurl = parsedurl.host + parsedurl.path + parsedurl.file.replace("ext_w_", "ext_");
            if (parsedurl.protocol != "") {
                newurl = parsedurl.protocol + "://" + newurl;
            }
            $(item).attr("src", newurl);
        }
    });
}

function resizeImages(big) {
    $('#bio').jScrollPaneRemove();    
    if (big) {
        if ($("#c2 img.pic").height() < 500) {
            $("#c2 img.pic").animate({ height: "500px" });
            $('#bio').css("height", "480px");
            $('#bio').css("width", "340px");
        }
    } else {
        $("#c2 img.pic").animate({ height: "340px" });
        $('#bio').css("height", "340px");
        $('#bio').css("width", "210px");
    }
    $('#bio').jScrollPane({ scrollbarWidth: 12, scrollbarMargin: 40, dragMaxHeight: 9, showArrows: true });
    
}

function resizeVideos(big) {
    if ($("#booktype").html() == "video") {
        var h = 0;
        var w = 0;
        var dh = "0";
        var dw = "0";
        if (big) {
            w = 720;
            h = 480;
            dw = "720";
            dh = "400";
        } else {
            w = 600;
            h = 340;
            dw = "600";
            dh = "260";
        }
        $("div#bookpager").hide("fast");
        $("div#zoomcontrol").hide("fast");
        $("div#thumbsicon").hide("fast");
        $("#printbook").hide("fast");
        $("div#c2").empty();
        var so = new SWFObject('flvplayer.swf', 'player', w, h, '3');
        so.addParam("allowfullscreen", "true");
        so.addParam("allowscriptaccess", "always");
        so.addVariable("file", "getplaylist.aspx?b=" + idbook);
        so.addVariable("displayheight", dh);
        so.addVariable("displaywidth", dw);
        so.addVariable("overstretch", "false");
        so.addVariable("showdownload", "false");
        so.addVariable("linkfromdisplay", "false");
        so.addVariable("backcolor", "0xFFFFFF");
        so.addVariable("frontcolor", "0x000000");
        so.addVariable("screencolor", "0x000000");
        so.addVariable("lightcolor", "0xcccccc");
        so.addVariable("link", "");
        so.addVariable("thumbsinplaylist", "false");
        so.addVariable("playlist", "bottom");
        so.addVariable("shuffle", "false");
        so.addVariable("autostart", "false");
        so.addVariable("enablejs", "true");
        so.addVariable("javascriptid", "player");
        so.write("c2");
        setTimeout("sendEvent('playitem', 0)", 1500);
    }
}

// JSCROLLPANE UTILS
function fakeScrollNeeded()
{
	if($(".jScrollPaneTrack").length<=0)
	{
		$("#main").after('<div class="jScrollPaneTrack" style="width: 9px; margin-left: 10px;"></div>');
		$("#main").css("padding-right", "0");
		$("#main p").css("margin-right", "70px");
	}
}



// MENU
function showBranch(h1obj, ml) {
    $("h2.opened").each(function() {
        $(this).trigger("click");
    })
    var parentli = $(h1obj).parent();
    var myindex = $("#slideMenu > ul > li").index(parentli);
    var mylength = ml - (menulength2 * myindex);
    var mylength_str = mylength.toString() + "px";
    $(h1obj).animate(
            { width: mylength_str },
            300,
            "easeOutQuart",
            function() {
                $("ul", parentli).css("left", mylength_str);
                $("ul > li:eq(0)", parentli).hide("fast");
                $("ul > li:gt(0)", parentli).show("fast");
            }
    );
    $(h1obj).addClass("opened");
}

function hideBranch(h1obj) {
    $(h1obj).removeClass("opened");
    var myh2 = $(h1obj);
    var parentli = $(h1obj).parent();
    $("ul > li:eq(0)", parentli).show("fast");
    $("ul > li:gt(0)", parentli).hide("fast", function() {
        myh2.animate(
                    { width: (menulength + "px") },
                    200,
                    "easeOutQuart"
            );
        $(this).parent().animate(
                    { left: (menulength + "px") },
                    100,
                    "easeOutQuart"
            );
    });
}

function createMenu() {
    $("#middleMenu h1").bind("click", showMenu);
    $("#topMenu, #middleMenu h1").mouseenter(function() {
        //$(this).oneTime(1000, "menuSlide", showMenu);
        $(this).stopTime("menuHide");
        showMenu();
        $("#top").mouseleave(function() {
            $("#top").unbind("mouseleave");
            hideMenu();
        });
    })
    //.mouseleave(function() {
    //$(this).stopTime("menuSlide");
    //$(this).oneTime(900, "menuHide", hideMenu);
    //    hideMenu();
    //});
}


function showMenu() {
    $(this).stopTime("firstMenu");
    stopMenu();
    $("#sideImage").css("display", "none");
    $("#slideMenuContainer").animate({ "height": 237 }, 500, "easeOutQuart", function() {
        $("#slideMenu").css("display", "block");
    });
}

function hideMenu() {
    stopMenu();
    $("#slideMenu").css("display", "none");
    $("#slideMenuContainer").animate({ "height": 40 }, 500, "easeOutQuart", function() {
        $("#sideImage").css("display", "block");
    });

}

function stopMenu() {
    $("#slideMenu").stop();
    $("#slideMenuContainer").stop();
    $("#sideImage").stop();
}


//FUNZIONI MODEL BOOK
function zoomout() {
    $("#zoomout").hide();
    if (small) {
        $("#c2 img.pic").each(function(i, item) {
            var parsedurl = parseUrl($(item).attr("src"));
            //var newurl = "";
            //if (parsedurl.file.substring(0,4) == "ext_")
            //{
            //    newurl = parsedurl.host + parsedurl.path + parsedurl.file.replace("ext_","ext_w_");
            //} else {
            //    newurl = parsedurl.host + parsedurl.path + "w_" + parsedurl.file;
            //}
            //if (parsedurl.protocol != "")
            //{
            //        newurl = parsedurl.protocol + "://" + newurl;
            //}
            //$(item).attr("src",newurl);
        });
    } else {
        $("#c2 img.pic").each(function(i, item) {
            var parsedurl = parseUrl($(item).attr("src"));
            var newurl = "";
            if (parsedurl.file.substring(0, 6) == "ext_b_") {
                newurl = parsedurl.host + parsedurl.path + parsedurl.file.replace("ext_b_", "ext_");
            } else {
                newurl = parsedurl.host + parsedurl.path + parsedurl.file.replace("b_", "");
            }
            if (parsedurl.host == "pictures")
			{
				newurl = "/" + newurl;
			}
			if (parsedurl.protocol != "") {
                newurl = parsedurl.protocol + "://" + newurl;
            }
            $(item).attr("src", newurl);
        });
    }
    if (!small) {
        $("#content").animate({ height: "520px" });
    } else {
        $("#content").animate({ height: "360px" });
        resizeImages(false);
    }
    $("#c3").animate({ width: "80px", padding: "4px 6px 0 6px" });
    zoomed = false;
    $("#content").removeAttr("style");
    $("#zoomin").show();
}

function zoom() {
    $("#zoomin").hide();
    $("#c2 img.pic").each(function(i, item) {
        var parsedurl = parseUrl($(item).attr("src"));
        if (!small) {
            var newurl = "";
            if (parsedurl.file.substring(0, 4) == "ext_") {
                newurl = parsedurl.host + parsedurl.path + parsedurl.file.replace("ext_", "ext_b_");
            } else {
                newurl = parsedurl.host + parsedurl.path + "b_" + parsedurl.file;
            }
			if (parsedurl.host == "pictures")
			{
				newurl = "/" + newurl;
			}
			//newurl = "/" + newurl;
            if (parsedurl.protocol != "") {
                newurl = parsedurl.protocol + "://" + newurl;
            }
            $(item).attr("src", newurl);
        }
    });
    $("#c2 img.pic").removeAttr("style");
    if (!small) {
        $("#content").animate({ height: "740px" });
    } else {
        $("#content").animate({ height: "520px" });
    }
    $("#c3").animate({ width: "0px", padding: "0px" });
    zoomed = true;
    $("#zoomout").show();
}

function printBook() {
    window.open('/generatePdf.aspx?b=' + window.idbook + '&m=' + window.idmodel + '&p=0', 'pdf');
}

function showThumbnails() {
    $("#thumbsicon>img.open").hide("fast");
    $("#thumbsicon>img.close").show("fast");
    var w = $(window).width() - 249;
    var ws = w + "px";
    $("#c3").animate({ width: ws }, 1000, "easeOutQuart", function() {
        $("#thumbscont").css("display", "block");
    });
}

function hideThumbnails() {
    $("#thumbscont").css("display", "none");
    $("#c3").animate({ width: "80px" }, 1000, "easeOutQuart");
    $("#thumbsicon>img.open").show("fast");
    $("#thumbsicon>img.close").hide("fast");
}

// VARIE
function addToSl(idm) {
    $.getJSON("addToShortlist.aspx?m=" + idm,
        function(data) {
            $("#sc3 a").eq(0).html("marked as favorite").removeClass("color");
        }
    );
}

function clearSl() {
    $.getJSON("clearShortlist.aspx",
        function(data) {
            $("#favbar div:not(.favtext)").empty();
            $("#favbar div:not(.favtext)").each(
                function(i, item) {
                    $(item).append("<span>" + (i+1) + "</span>");
                }
            );
        }
    );
}

function reqSl() {
    $.getJSON("getShortListMail.aspx",
        function(data) {
            if (data.msg != "empty" && data.msg != "") {
                window.location.href = data.msg;
            } else {
                alert("no models in your shortlist!");
            }
        }
    );
}

function addToSlList(idm) {
    $.getJSON("addToShortlist.aspx?m=" + idm,
        function(data) {
            $("#model_sl").html("in your shortlist");
        }
    );
}

function contactAgent() {
    var mailmsg = "mailto:info@justwm.com?subject=more info - " + $("#modelName").html() + " " + $("#modelSurname").html() + "&body=";
    window.location.href = mailmsg;
}


// ONLOAD
$(function() {
    var t = $("#lt").html();

    //SOLO PER PAGINA BOOK MODELLA
    if (ismodelbook) {
        if (t != "index") {
            $("#backbutton").attr("href", "modellist.aspx?gb=1&tl=" + t);
        } else {
            $("#backbutton").attr("href", "modelindex.aspx?tl=" + t);
        }


        $("#Image2").bind("click", function() { __doPostBack("arrowRightLinkIn", ""); });


        $("#zoomin").bind("click", zoom);
        $("#zoomout").bind("click", zoomout);
        $("#thumbscont>div>input").each(function(i, item) {
            if ($(item).attr("src") == "") {
                $(item).css("display", "none");
            }
        });
        var w = $(window).width() - 256;
        $("#thumbscont").css("width", (w - 80) + "px");
        $("#thumbscont>div").eq(Number($("#actualpage").html()) - 1).addClass("cur");
        $('#thumbscont').jScrollPane({ scrollbarWidth: 12, scrollbarMargin: 40, dragMaxHeight: 9, showArrows: true });
        $("#thumbsicon>img.open").click(showThumbnails);
        $("#thumbsicon>img.close").click(hideThumbnails);
    }

    if (ispackagebook) {

        $("#backbutton").attr("href", "packages.aspx");
        if (mailtype == "book" || mailtype == "videobook") {
            $("#backbutton").hide("fast");
        }

        $("#Image2").bind("click", function() { __doPostBack("arrowRightLinkIn", ""); });


        $("#zoomin").bind("click", zoom);
        $("#zoomout").bind("click", zoomout);
        $("#thumbscont>div>input").each(function(i, item) {
            if ($(item).attr("src") == "") {
                $(item).css("display", "none");
            }
        });
        var w = $(window).width() - 256;
        $("#thumbscont").css("width", (w - 80) + "px");
        $("#thumbscont>div").eq(Number($("#actualpage").html()) - 1).addClass("cur");
        $('#thumbscont').jScrollPane({ scrollbarWidth: 12, scrollbarMargin: 40, dragMaxHeight: 9, showArrows: true });
        $("#thumbsicon>img.open").click(showThumbnails);
        $("#thumbsicon>img.close").click(hideThumbnails);
    }

    //SOLO PER PAGINA INDICE MODELLE
    if (ismodelindex) {
        if (names) {
            var itemtoappend;
            $.each(names, function(i, item) {
                if (i == 0 || (i % 15 == 0)) {
                    $("#nameslist").append("<div id=\"dl" + i + "\" class=\"divlist\"></div>");
                    itemtoappend = $("#dl" + i);
                }
                $(itemtoappend).append("<p id=\"" + item.mid + "\">" + item.mname.replace("_", "\'") + "</p>");
            });
        }
        $("#nameslist p").each(function(i, item) {
            $(item).bind("click", function() {
                window.location.href = "book.aspx?tl=index&m=" + $(item).attr("id");
            })
        });
    }

    //SOLO PER PAGINA DI LISTA MODELLA
    if (ismodellist) {
        var t = $("#lt").html();
        $("#slidemenu ul li ul li a").removeClass("color");
        $("#menuNav_a_" + t).addClass("color");

        if (imgs) {
            $.each(imgs, function(i, item) {
                //<a href=\"book.aspx?m=" + item.mid + "\">
                $("#scrollableList ul").append("<li id=\"" + item.mid + "\"><img src=\"" + item.url + "\" alt=\"" + item.mname + "\" /><h1>" + item.mname.replace("_", "\'") + "</h1></li>");
            });
        }
        $("#scrollableList ul li").each(function(i, item) {
            $(item).bind("click", function() {
                window.location.href = "book.aspx?tl=" + t + "&m=" + $(item).attr("id");
            })
        });
        if (sl) {
            $.each(sl, function(i, item) {
                $("#favbar div").eq(i).empty();
                $("#favbar div").eq(i).append('<img src="' + item.url + '" height="80" alt="' + item.mname + '" />');
                $("#favbar div").eq(i).bind("click", function() {
                    window.location.href = "book.aspx?tl=" + t + "&m=" + item.mid;
                });
            });
        }
        $(".prev").bind("click", function() {
            var ascroll = $("#scrollableList").scrollLeft();
            var scrollstring = "-=" + scrollsize.toString() + "px";
            $("#scrollableList").scrollTo(scrollstring, 800, { axis: "x", easing: "easeInQuad" });
            ascroll -= scrollsize;
            createCookie("actuallistpos", ascroll.toString() + "px", 1);
        });
        $(".next").bind("click", function() {
            var ascroll = $("#scrollableList").scrollLeft();
            var scrollstring = "+=" + scrollsize.toString() + "px";
            ascroll += scrollsize;
            $("#scrollableList").scrollTo(scrollstring, 800, { axis: "x", easing: "easeInQuad" });
            createCookie("actuallistpos", ascroll.toString() + "px", 1);
        });
        if ($.query.get("gb") == "1") {
            if (readCookie("actuallistpos") != null && readCookie("actuallistpos") != "") {
                $("#scrollableList").scrollTo(readCookie("actuallistpos"), 100, { axis: "x", easing: "easeInQuad" });
            }
        } else {
            eraseCookie("actuallistpos");
        }
        $("#scrollableList ul li img").draggable({
            cursor: 'pointer',
            cursorAt: { top: 10, left: 10 },
            helper: function(event) {
                return $('<img src="' + $(this).attr("src") + '" height="80" alt="' + $(this).parent().attr("id") + '" />');
            }
        });
        $("#favbar div").droppable({
            hoverClass: 'active',
            drop: function(event, ui) {
                $(this).empty();
                $(this).append('<img src="' + $(ui.draggable).attr("src") + '" height="80" alt="' + $(ui.draggable).parent().attr("id") + '" />');
                addToSlList($(ui.draggable).parent().attr("id"));
                $(this).bind("click", function() {
                    window.location.href = "book.aspx?tl=" + t + "&m=" + $(ui.draggable).parent().attr("id");
                });
            }
        });
    }
    //FINE

    //SOLO PER PAGINA DI LISTA BOOK DEL PACKAGE
    if (ispackagelist) {
        var t = $("#lt").html();
        //$("#slidemenu ul li ul li a").removeClass("color");
        //$("#menuNav_a_" + t).addClass("color");

        if (imgs) {
            $.each(imgs, function(i, item) {
                //<a href=\"book.aspx?m=" + item.mid + "\">
                $("#scrollableList ul").append("<li id=\"" + item.bid + "\" title=\"" + item.btype + "\"><img src=\"" + item.url + "\" alt=\"" + item.mname + "\" /><h1>" + item.mname.replace("_", "\'") + "<br/><span class=\"grigio\">" + item.btitle.replace("_", "\'") + "</span></h1></li>");
            });
        }
        $("#scrollableList ul li").each(function(i, item) {
            $(item).bind("click", function() {
                if ($(item).attr("title") == "video") {
                    window.location.href = "evideobook.aspx?b=" + $(item).attr("id");
                } else {
                    window.location.href = "ebook.aspx?b=" + $(item).attr("id");
                }
            })
        });
        $(".prev").bind("click", function() {
            var ascroll = $("#scrollableList").scrollLeft();
            var scrollstring = "-=" + scrollsize.toString() + "px";
            $("#scrollableList").scrollTo(scrollstring, 800, { axis: "x", easing: "easeInQuad" });
            ascroll -= scrollsize;
            createCookie("actuallistpos", ascroll.toString() + "px", 1);
        });
        $(".next").bind("click", function() {
            var ascroll = $("#scrollableList").scrollLeft();
            var scrollstring = "+=" + scrollsize.toString() + "px";
            ascroll += scrollsize;
            $("#scrollableList").scrollTo(scrollstring, 800, { axis: "x", easing: "easeInQuad" });
            createCookie("actuallistpos", ascroll.toString() + "px", 1);
        });
        if ($.query.get("gb") == "1") {
            if (readCookie("actuallistpos") != null && readCookie("actuallistpos") != "") {
                $("#scrollableList").scrollTo(readCookie("actuallistpos"), 100, { axis: "x", easing: "easeInQuad" });
            }
        } else {
            eraseCookie("actuallistpos");
        }
    }
	if (!isDefault) {
		if (!zoomed) {
			checkWindow();
		}
		$(window).unbind("resize");
		$(window).bind("resize", checkWindow);

		if (!ispackagelist && !ispackagebook) {
			var nmenu = $("#slideMenu > ul > li").length;
			var maxlength = 240 * nmenu;
			$("#slideMenu > ul > li > h2").toggle(
				function() {
					showBranch($(this), maxlength);
				},
				function() {
					hideBranch($(this));
				}
			);
			createMenu();

			if (openmenu) {
				//showMenu();
				$("#slideMenu > ul > li.sel > h2").trigger("click");
				$("#top").oneTime(1200, "firstMenu", hideMenu);
			}
		}

		//OPERAZIONI PER PAGINE CONSULTING
		$('#main').jScrollPane({ scrollbarWidth: 12, scrollbarMargin: 40, dragMaxHeight: 9, showArrows: true });
		fakeScrollNeeded();
	}
	
    if (isTeamPage) {
        $("div#people h1").hover(
            function() {
                $(this).addClass("hov");
            },
            function() {
                $(this).removeClass("hov");
            }
        );
        $("#people > div > h1").bind("click", function() {
            $("#people p").hide();
            $("#people h1").parent().removeClass("sel");
            $(this).parent().addClass("sel");
            $(this).parent().children("p").show();
            $("#sideImage").empty();
            $("#sideImage").append(
					"<img src=\"/img/people/" +
					$(this).parent().children("span").eq(0).html() +
					"\" alt=\"" +
					$(this).parent().children("h1").eq(0).html() +
					"\" />"
				);
        });
    }

});