function d(e){if(arguments.length>1){for(var i=0,ee=[],l=arguments.length; i<l;i++){ee.push($(arguments[i]));}return ee;}if(typeof e=='string'){e=document.getElementById(e);}return e;} function dc(t){return document.createElement(t);} function dr(e){document.body.removeChild(e);} function da(e){document.body.appendChild(e);}
var Monta = {
    isReady: false, ip:'', cp:'', r:'',
    isFade: false,
    isLoaded: true,
    createOverlay: function() {
        if (d('overlay-image')) return null;
        var c=dc('link'), o=dc('div'), p=dc('p'), i=dc('img');
        c.setAttribute('rel', 'stylesheet'); c.setAttribute('type', 'text/css'); c.setAttribute('href', Monta.r + 'montana_overlay.css'); c.id = 'overlay-style'; document.getElementsByTagName('head')[0].appendChild(c);
        o.id = 'overlay-image';
        var w = self.innerWidth || (document.documentElement.clientWidth || document.body.clientWidth);
        var xs = document.body.scrollWidth || document.body.offsetWidth;
        var h = self.innerHeight || (document.documentElement.clientHeight || document.body.clientHeight);
        if (window.innerHeight && window.scrollMaxY) { var ys = window.innerHeight + window.scrollMaxY; } else { var ys = document.body.scrollHeight || document.body.offsetHeight; }
        o.style.cssText = 'width:' + (xs < w ? w : xs) + 'px;height:' + (ys < w ? h : ys) + 'px;';
        var y = self.pageYOffset || (document.documentElement.scrollTop || document.body.scrollTop);
        p.appendChild(document.createTextNode('× クリックすると閉じます')); p.style.marginTop = y + 30 + 'px'; o.appendChild(p);
        o.appendChild(i);
        var bg = o.cloneNode(false);
        bg.id = 'overlay-background'; da(bg); 
        Monta.addEvent(p, 'click', Monta.removeOverlay); Monta.addEvent(o, 'click', Monta.removeOverlay); Monta.addEvent(i, 'click', Monta.removeOverlay);
        return o;
    },
    removeOverlay: function() {
        if(!d('overlay-image')){return;}dr(d('overlay-image'));dr(d('overlay-background'));var h=document.getElementsByTagName('head')[0];h.removeChild(d('overlay-style'));var c=dc('link');c.setAttribute('rel', 'stylesheet');c.setAttribute('type', 'text/css');c.setAttribute('href', Monta.r+'montana_overlay_remove.css');h.appendChild(c);
    },
    createMap: function() {
        var o=Monta.createOverlay();if(!o){return;}o.getElementsByTagName('img')[0].src=Monta.r+'map_deliver.gif';da(o);
    },
	createCatalog: function() {
        var o=Monta.createOverlay(); if(!o){return;}o.getElementsByTagName('img')[0].src=Monta.cp+imageId+'.jpg';o.appendChild(d('item-name').cloneNode(true));o.appendChild(d('item-spec').cloneNode(true));da(o);
    },
	addEvent: function(src, type, listener) {
		if(src.addEventListener){src.addEventListener(type,listener,false);}else if(src.attachEvent){src.attachEvent('on'+type,listener);}
	},
	ready: function(callback) {
        if(Monta.isReady){return;}Monta.isReady=true;
        if(document.addEventListener){document.addEventListener('DOMContentLoaded',callback,false);}else if(document.attachEvent){document.attachEvent('onreadystatechange',callback);}else{var l=window.onload;window.onload=function(){if(l){l();}callback();}}
    },
    cache: {},
    xfade: function( src ) {
        if ( d('item-image').src == src ) return;
        Monta.isFade = true;
        Monta.isLoaded = false;
        var div = d('item-image-500') || d('item-image-400');
        var thumbnail = d('item-thumbnail');
        var a = d('mojomagnify_parent');
        if (a) {
            var imgOutSrc = d('item-image').src;
            div.removeChild(a);
            var imgOut = dc('img');
            imgOut.style.position = 'absolute';
            imgOut.src = imgOutSrc;
            imgOut.id = 'item-image2';
            div.insertBefore(imgOut, thumbnail);
        } else {
            var imgOut = d('item-image');
            imgOut.style.position = 'absolute';
        }
        imgOut.id = 'item-image2';

        var imgIn = dc('img');
        imgIn.id = 'item-image';
        imgIn.src = src;
        $( imgIn ).load( function() {
            Monta.isLoaded = true;
        } );
        div.insertBefore(imgIn, thumbnail);

        $( imgOut ).fadeOut( 'slow', function() {

            $( this ).remove();
            if (imageWidth != 400 && src.indexOf( '/measure/' ) == -1) {
                MojoMagnify.makeMagnifiable(imgIn, src.replace('thumb/', '').replace('_500.', '_1500.'));
            }
            Monta.isFade = false;

        } );

    },
	createThumbnail: function() {
		var thumbnail = d('item-thumbnail');
		if (!thumbnail) { return; }
		thumbnail.innerHTML = '';
		var p=dc('p'), ul=dc('ul'), css='';
		var imgs = [];
		for (var i=1;i<=imageNum;i++) {
			var li = dc('li'), img = dc('img')
			li.className = (i == 1 ? 'current' : '');
			img.src = Monta.ip + 'thumb/' + imageId + '_' + i + (imageWidth != 400 ? '_' + imageWidth : '') + '.jpg';
			img.setAttribute('title', '画像' + i);
			img.setAttribute('alt', '画像' + i);


			Monta.addEvent(img, 'click', function(e) {

                if ( Monta.isFade || !Monta.isLoaded ) return;
        		var element = e.target || e.srcElement;
                var src = element.src.replace('thumb/', '');

                Monta.xfade( src );

                var l = d('item-thumbnail').getElementsByTagName('li');
                for (var j = 0; j < l.length; j++) {
                    l[j].className = '';
                }
                element.parentNode.className = 'current';

			});
			li.appendChild(img);
			ul.appendChild(li);
            if ( i > 1 ) {
                imgs.push( Monta.ip + imageId + '_' + i + (imageWidth != 400 ? '_' + imageWidth : '') + '.jpg' );
            }
		}
		if (measure) {
            var img = dc('img');
            img.src = Monta.r + 'images/button_measure.gif';
			img.setAttribute('title', '採寸方法');
			img.setAttribute('alt', '採寸方法');
			Monta.addEvent(img, 'click', Monta.measure);

            var li = dc('li');
            li.id = 'button-measure';
            li.appendChild(img);
            ul.appendChild(li);
        }
        var catalog = d('catalog');
        if (catalog) {
            var a = catalog.cloneNode(true);
            if (measure) {
                li.appendChild(dc('br'));
            } else {
    			var li = dc('li');
                ul.appendChild(li);
            }
            li.appendChild(a);
            catalog.style.display = 'none';
        }
		thumbnail.appendChild(p);
		thumbnail.appendChild(ul);

        Monta.addEvent( window, 'load', function() {
            for ( var i = 0; i < imgs.length; i++ ) {
                var img = dc('img'); img.src = imgs[i];
            }
        } );
        var itemName = d('item-name');
        itemName = itemName.textContent || itemName.innerText;
        if ( /デニム\sジーンズ/.test( itemName ) ) {

            var a = dc('a');
            a.href='/jeans.htm';
            a.target='_blank';
            var img = dc('img');
            img.src = Monta.r + 'images/button_jeans.gif';
			img.setAttribute('title', 'デニムジーンズの選び方');
			img.setAttribute('alt', 'デニムジーンズの選び方');
            a.appendChild(img);
            if (measure) {
                img.style.marginTop = '2px';
                li.appendChild(dc('br'));
            } else {
    			var li = dc('li');
                ul.appendChild(li);
            }
            li.appendChild(a);
        }
	},
	measure : function(n) {
		var image = d('item-image');
        
        var src = Monta.r + 'images/measure/' + measure + (imageWidth != 400 ? '_' + imageWidth : '') + '.png';
        if ( Monta.isFade || !Monta.isLoaded ) return;
        Monta.xfade( src );

        var l = d('item-thumbnail').getElementsByTagName('li');
        for (var j = 0; j < l.length; j++) {
            l[j].className = '';
        }
    },
	setKey : function(src) {
		var input = d('order-quantity');
		if (!input) return;
		input.setAttribute('name', src.value);
	}
}
loc = location.href;
var t = d('item-thumbnail'), l = loc.indexOf('local.monta');
if (typeof imageDir != 'string') var imageDir = '';
if (typeof imageWidth != 'number') {
     var imageWidth = '400';
    if (t && l != -1)alert('画像横幅が入力されてません');

}
if (typeof imageNum != 'number') {
    var imageNum = 1;
    if (t && l != -1)alert('画像枚数が入力されてません');
}
if (loc.indexOf('local.monta') == -1) { Monta.ip = 'http://www.monta.co.jp/' + imageDir + '/img/'; Monta.cp = '/catalog/' + imageDir + '/'; Monta.r  = '/'; } else { Monta.ip = '/web/img/' + imageDir + '/'; Monta.cp = '/web/monta/catalog/' + imageDir + '/'; Monta.r = '/web/montana/'; }
Monta.ready(function() {
    var form = d('order-form');
    if (form) form.style.display = 'block';
    Monta.createThumbnail();
});

