Files
TravianZ/new2.js

277 lines
5.5 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) {
if (typeof(event) !== 'undefined') {
event.stop();
}
$('signup_layer').fireEvent('show');
});
//Login Buttons
$$('.login_link').addEvent('click', function(event) {
if (typeof(event) !== 'undefined') {
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');
}