mirror of
https://github.com/Shadowss/TravianZ.git
synced 2026-06-28 08:34:33 +00:00
273 lines
5.7 KiB
JavaScript
273 lines
5.7 KiB
JavaScript
function handleMove(element, dx, leftXLimit, rightXLimit)
|
|
{
|
|
var xStart = element.getStyle('left').toInt();
|
|
|
|
var xDest = xStart + dx;
|
|
|
|
|
|
|
|
xDest = Math.min(xDest, rightXLimit);
|
|
xDest = Math.max(xDest, leftXLimit);
|
|
|
|
var nextStyle = 'block';
|
|
if (xDest == leftXLimit) {
|
|
nextStyle = 'none';
|
|
}
|
|
$$('#screenshots .next img').setStyle('display', nextStyle);
|
|
|
|
var prevStyle = 'block';
|
|
if (xDest == rightXLimit) {
|
|
prevStyle = 'none';
|
|
}
|
|
$$('#screenshots .prev img').setStyle('display', prevStyle);
|
|
|
|
element.lastDest = xDest;
|
|
|
|
if(element.fx == null){
|
|
element.fx = new Fx.Morph(element, {duration: 'normal', transition: Fx.Transitions.Sine.easeInOut});
|
|
}
|
|
element.fx.start({
|
|
'left': xDest
|
|
});
|
|
}
|
|
|
|
window.addEvent('domready', function() {
|
|
|
|
//Overlay functions. Add FadeIN/OUT later.
|
|
$$('div.overlay').addEvents({
|
|
show: function() {
|
|
this.setStyle('display', 'block');
|
|
},
|
|
hide: function() {
|
|
this.setStyle('display', 'none');
|
|
}
|
|
});
|
|
|
|
//Close Buttons
|
|
$$('div.overlay .closer').addEvent('click', function(event) {
|
|
event.stop();
|
|
this.getParent('div.overlay').fireEvent('hide');
|
|
});
|
|
|
|
//Signup Buttons
|
|
$$('.signup_link').addEvent('click', function(event) {
|
|
event.stop();
|
|
$('signup_layer').fireEvent('show');
|
|
});
|
|
|
|
//Login Buttons
|
|
$$('.login_link').addEvent('click', function(event) {
|
|
event.stop();
|
|
$('login_layer').fireEvent('show');
|
|
});
|
|
|
|
//Login Buttons
|
|
$$('#screenshot_list li a').each(function(item, index){
|
|
item.addEvent('click', function(event) {
|
|
event.stop();
|
|
galarie.show(index);
|
|
$('screenshot_layer').fireEvent('show');
|
|
});
|
|
});
|
|
|
|
|
|
if ($('screenshot_list')) {
|
|
$('screenshot_list').addEvents({
|
|
moveRight: function() {
|
|
var windowSize = 300;
|
|
var w = this.getStyle('width').toInt();
|
|
var leftXLimit = windowSize - w;
|
|
var rightXLimit = 0;
|
|
handleMove(this, 98, leftXLimit, rightXLimit);
|
|
},
|
|
moveLeft: function() {
|
|
var windowSize = 300;
|
|
var w = this.getStyle('width').toInt();
|
|
var leftXLimit = windowSize - w;
|
|
var rightXLimit = 0;
|
|
handleMove(this, -98, leftXLimit, rightXLimit);
|
|
}
|
|
});
|
|
|
|
$$('*.dynamic_img').addEvents({
|
|
'mouseenter': function() {
|
|
this.addClass('over');
|
|
},
|
|
'mouseleave': function() {
|
|
this.removeClass('over');
|
|
}
|
|
});
|
|
|
|
$$('*.dynamic_btn').addEvents({
|
|
'mouseenter': function() {
|
|
this.addClass('over');
|
|
},
|
|
'mouseleave': function() {
|
|
this.removeClass('over');
|
|
this.removeClass('clicked');
|
|
},
|
|
'mousedown': function() {
|
|
this.removeClass('over');
|
|
this.addClass('clicked');
|
|
},
|
|
'mouseup': function() {
|
|
this.removeClass('clicked');
|
|
this.addClass('over');
|
|
}
|
|
});
|
|
|
|
|
|
$$('#screenshots .next').addEvent('click', function(e) {
|
|
$('screenshot_list').fireEvent('moveLeft');
|
|
});
|
|
$$('#screenshots .prev').addEvent('click', function(e) {
|
|
$('screenshot_list').fireEvent('moveRight');
|
|
});
|
|
}
|
|
|
|
t_minus();
|
|
|
|
});
|
|
|
|
Fx.Screenshots = new Class({
|
|
|
|
Implements: [Events, Options],
|
|
|
|
$current: 0,
|
|
$length: 0,
|
|
|
|
initialize: function(image, headline, comment, elements){
|
|
var self = this;
|
|
|
|
this.elements = elements;
|
|
this.targetImg = $(image);
|
|
this.targetHl = $(headline);
|
|
this.targetDesc = $(comment);
|
|
this.$length = this.elements.length;
|
|
},
|
|
|
|
showNext: function(){
|
|
var index = this.$current + 1;
|
|
if (index >= this.$length) index = 0;
|
|
this.render(index);
|
|
},
|
|
|
|
showPrev: function(){
|
|
var index = this.$current - 1;
|
|
if (index < 0) index = this.$length - 1;
|
|
this.render(index);
|
|
},
|
|
|
|
show: function(num){
|
|
this.render(num);
|
|
return this;
|
|
},
|
|
|
|
render: function(index){
|
|
index = this.elements[index] != undefined ? index : 0;
|
|
var elem = this.elements[index];
|
|
this.targetImg.src = elem.img;
|
|
this.targetHl.innerHTML = elem.hl;
|
|
this.targetDesc.innerHTML = elem.desc;
|
|
this.$current = index;
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
function Popup(i, j, game_url)
|
|
{
|
|
var layer = $('iframe_layer');
|
|
|
|
$('frame_box').empty();
|
|
$('frame_box').innerHTML = "<iframe frameborder=\"0\" id=\"Frame\" src=\"" + game_url + "manual.php?typ=" + i + "&s=" + j + "\" width=\"412\" height=\"440\" border=\"0\"></iframe>";
|
|
|
|
$('iframe_layer').fireEvent('show');
|
|
|
|
var windowSize = window.getSize();
|
|
|
|
if (windowSize.x < 700 || windowSize.y < 700) {
|
|
$$('#iframe_layer .overlay_content').setStyle('position', 'absolute');
|
|
return true;
|
|
} else {
|
|
$$('#iframe_layer .overlay_content').setStyle('position', 'fixed');
|
|
return false;
|
|
}
|
|
}
|
|
|
|
function t_minus()
|
|
{
|
|
// Zeit wird herunter gezaehlt
|
|
for (i = 1;; i++)
|
|
{
|
|
myElement = document.getElementById("timer" + i);
|
|
if (myElement != null)
|
|
{
|
|
sek = t_format1(myElement) - 1;
|
|
if (sek < 0)
|
|
{
|
|
setTimeout("document.location.reload()", 1000);
|
|
}
|
|
else
|
|
{
|
|
sek = t_format2(sek);
|
|
myElement.innerHTML = sek;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
setTimeout("t_minus()", 1000);
|
|
}
|
|
|
|
function t_format1(myElement)
|
|
{
|
|
// 00:01:30 wird zu 90s umformatiert
|
|
p = myElement.innerHTML.split(":");
|
|
sek = p[0] * 3600 + p[1] * 60 + p[2] * 1;
|
|
return sek;
|
|
}
|
|
|
|
function t_format2(s)
|
|
{
|
|
// 90s wird zu 00:01:30 umformatiert
|
|
if (s > -1)
|
|
{
|
|
stunden = Math.floor(s / 3600);
|
|
minuten = Math.floor(s / 60) % 60;
|
|
sekunden = s % 60;
|
|
t = stunden + ":";
|
|
if (minuten < 10)
|
|
{
|
|
t += "0";
|
|
}
|
|
t += minuten + ":";
|
|
if (sekunden < 10)
|
|
{
|
|
t += "0";
|
|
}
|
|
t += sekunden;
|
|
}
|
|
else
|
|
{
|
|
t = "0:00:0?";
|
|
}
|
|
return t;
|
|
}
|
|
|
|
|
|
|
|
function showLayer(layer)
|
|
{
|
|
closeLayers();
|
|
var layerName = layer+'_layer';
|
|
$(layerName).fireEvent('show');
|
|
}
|
|
|
|
function closeLayers()
|
|
{
|
|
$$('div.overlay').fireEvent('hide');
|
|
} |