nginx
tcp/443 tcp/80
Open service 2001:bc8:4::2:80 · swingdev.com
2025-12-31 06:06
HTTP/1.1 200 OK
Server: nginx
Date: Wed, 31 Dec 2025 06:06:30 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: close
Vary: Accept-Encoding
Vary: Accept-Encoding
Page title: - = Swing Dev = -
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="swingdev.css" />
<title>- = Swing Dev = -</title>
<script language="javascript">
var stepms = 30;
var linkNames = [['quisommesnous', 0], ['domaines', 140], ['mentions', 310], ['contact', 410]];
var intervalList = new Array();
var pageHidden = false;
var icoYpos = { icoHigh: -80, icoLow: 0 }
var LINEAR = 0;
var EASEIN = 1;
var EASEOUT = 2;
var EASEINOUT = 3;
var START_STEP = 7;
var easems = START_STEP*stepms;
function dist(x, y, x_dest, y_dest)
{
var dist_x = x-x_dest;
var dist_y = y-y_dest;
return Math.sqrt(dist_x*dist_x + dist_y*dist_y);
}
function moveItem(item, x_dest, y_dest, delta_x, delta_y)
{
var icon=document.getElementById(item);
var stop = false;
var x = intervalList[item].x;
var y = intervalList[item].y;
var initStep = intervalList[item].initStep;
if (initStep.step>0)
{
delta_x = initStep.x/initStep.step;
delta_y = initStep.y/initStep.step;
intervalList[item].initStep.step--;
}
else if (initStep.step<0 && intervalList[item].timeleft <= 0)
{
delta_x = initStep.x/(-initStep.step);
delta_y = initStep.y/(-initStep.step);
intervalList[item].initStep.step++;
}
else if (intervalList[item].timeleft <= 0)
{
icon.style.left = x_dest;
icon.style.top = y_dest;
stop = true;
}
else
{
intervalList[item].timeleft -= stepms;
}
if (!stop)
{
stop = ((x < x_dest)? x+delta_x>=x_dest : x+delta_x<=x_dest) &&
((y < y_dest)? y+delta_y>=y_dest : y+delta_y<=y_dest);
// stop = intervalList[item].timeleft <= 0;
intervalList[item].x += delta_x;
intervalList[item].y += delta_y;
icon.style.left = intervalList[item].x;
icon.style.top = intervalList[item].y;
}
if (stop)
{
clearInterval(intervalList[item].interval);
intervalList[item].interval = 0;
intervalList[item].initStep.step = 0;
}
}
function startAnim(item, x_dest, y_dest, timems, mode)
{
var icon=document.getElementById(item);
if (intervalList[item] && intervalList[item].interval)
{
clearInterval(intervalList[item].interval);
timems -= intervalList[item].timeleft;
intervalList[item].interval = 0;
intervalList[item].timeleft = 0;
}
if (timems <= 0)
{
icon.style.left = x_dest;
icon.style.top = y_dest;
return;
}
var dist_x = x_dest-icon.offsetLeft;
var dist_y = y_dest-icon.offsetTop;
var steps = timems/stepms;
var delta_x = dist_x/steps;
var delta_y = dist_y/steps;
var iniStep = { x: delta_x, y: delta_y, step: 0};
if (mode == EASEIN)
{
timems -= easems;
iniStep.step = START_STEP;
var easeDist_x = dist_x/(2*easems/stepms);
var easeDist_y = dist_y/(2*easems/stepms);
steps = timems/stepms;
delta_x = (dist_x-easeDist_x)/steps;
delta_y = (dist_y-easeDist_y)/steps;
}
else if (mode == EASEOUT)
{
timems -= easems;
iniStep.step = -START_STEP;
var easeDist_x = dist_x/(2*easems/stepms);
var easeDist_y = dist_y/(2*easems/stepms);
steps = timems/stepms;
delta_x = (dist_x-easeDist_x)/steps;
delta_y = (dist_y-easeDist_y)/steps;
}
var interval = setInterval("moveItem('"+item+"', "+x_dest+", "+y_dest+", "+delta_x+", "+delta_y+")", stepms);
intervalList[item] = { x: icon.offsetLeft, y: icon.offsetTop, interval: interval, timeleft: timems, initStep: iniStep }
}
/*
linear:
|----|----|----|----|----|----|
|<- linear speed ->|
ease in:
|----|----|----|----|----|----|
|inc|<- linear speed ->|
ease out:
|----|----|----|----|----|----|
|<- linear speed ->|dec|
ease in & out:
|----|----|----|----|----|----|
|inc|<- linear speed ->|dec|
increase/decrease time: 20ms
increase:
5ms (step 1): 1/4 step (ex: step 4 px => 1 px), min 1 px
10ms (step 2): 1/2 step ( => 2 px)
15ms (step 3): 3/4 step ( => 3 px)
20ms (step 4): 1 step + recalcul du nb steps restants en tenant compte du ease out
decrease:
20ms avant la fin: 1 step (prévu initialement)
15ms avant la fin: 3/4 de step
10ms avant la fin: 1/2 step
5ms avant la fin: 1/4 step, mini 1px
Open service 2001:bc8:4::2:443 · swingdev.com
2025-12-31 06:06
HTTP/1.1 400 Bad Request Date: Wed, 31 Dec 2025 06:06:29 GMT Content-Type: text/html Content-Length: 264 Connection: close server: nginx Page title: 400 The plain HTTP request was sent to HTTPS port <html> <head><title>400 The plain HTTP request was sent to HTTPS port</title></head> <body bgcolor="white"> <center><h1>400 Bad Request</h1></center> <center>The plain HTTP request was sent to HTTPS port</center> <hr><center>nginx</center> </body> </html>
Open service 62.210.16.61:443 · swingdev.com
2025-12-31 06:06
HTTP/1.1 400 Bad Request Date: Wed, 31 Dec 2025 06:06:29 GMT Content-Type: text/html Content-Length: 264 Connection: close server: nginx Page title: 400 The plain HTTP request was sent to HTTPS port <html> <head><title>400 The plain HTTP request was sent to HTTPS port</title></head> <body bgcolor="white"> <center><h1>400 Bad Request</h1></center> <center>The plain HTTP request was sent to HTTPS port</center> <hr><center>nginx</center> </body> </html>
Open service 62.210.16.61:80 · swingdev.com
2025-12-31 06:06
HTTP/1.1 200 OK
Server: nginx
Date: Wed, 31 Dec 2025 06:06:30 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: close
Vary: Accept-Encoding
Vary: Accept-Encoding
Page title: - = Swing Dev = -
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="swingdev.css" />
<title>- = Swing Dev = -</title>
<script language="javascript">
var stepms = 30;
var linkNames = [['quisommesnous', 0], ['domaines', 140], ['mentions', 310], ['contact', 410]];
var intervalList = new Array();
var pageHidden = false;
var icoYpos = { icoHigh: -80, icoLow: 0 }
var LINEAR = 0;
var EASEIN = 1;
var EASEOUT = 2;
var EASEINOUT = 3;
var START_STEP = 7;
var easems = START_STEP*stepms;
function dist(x, y, x_dest, y_dest)
{
var dist_x = x-x_dest;
var dist_y = y-y_dest;
return Math.sqrt(dist_x*dist_x + dist_y*dist_y);
}
function moveItem(item, x_dest, y_dest, delta_x, delta_y)
{
var icon=document.getElementById(item);
var stop = false;
var x = intervalList[item].x;
var y = intervalList[item].y;
var initStep = intervalList[item].initStep;
if (initStep.step>0)
{
delta_x = initStep.x/initStep.step;
delta_y = initStep.y/initStep.step;
intervalList[item].initStep.step--;
}
else if (initStep.step<0 && intervalList[item].timeleft <= 0)
{
delta_x = initStep.x/(-initStep.step);
delta_y = initStep.y/(-initStep.step);
intervalList[item].initStep.step++;
}
else if (intervalList[item].timeleft <= 0)
{
icon.style.left = x_dest;
icon.style.top = y_dest;
stop = true;
}
else
{
intervalList[item].timeleft -= stepms;
}
if (!stop)
{
stop = ((x < x_dest)? x+delta_x>=x_dest : x+delta_x<=x_dest) &&
((y < y_dest)? y+delta_y>=y_dest : y+delta_y<=y_dest);
// stop = intervalList[item].timeleft <= 0;
intervalList[item].x += delta_x;
intervalList[item].y += delta_y;
icon.style.left = intervalList[item].x;
icon.style.top = intervalList[item].y;
}
if (stop)
{
clearInterval(intervalList[item].interval);
intervalList[item].interval = 0;
intervalList[item].initStep.step = 0;
}
}
function startAnim(item, x_dest, y_dest, timems, mode)
{
var icon=document.getElementById(item);
if (intervalList[item] && intervalList[item].interval)
{
clearInterval(intervalList[item].interval);
timems -= intervalList[item].timeleft;
intervalList[item].interval = 0;
intervalList[item].timeleft = 0;
}
if (timems <= 0)
{
icon.style.left = x_dest;
icon.style.top = y_dest;
return;
}
var dist_x = x_dest-icon.offsetLeft;
var dist_y = y_dest-icon.offsetTop;
var steps = timems/stepms;
var delta_x = dist_x/steps;
var delta_y = dist_y/steps;
var iniStep = { x: delta_x, y: delta_y, step: 0};
if (mode == EASEIN)
{
timems -= easems;
iniStep.step = START_STEP;
var easeDist_x = dist_x/(2*easems/stepms);
var easeDist_y = dist_y/(2*easems/stepms);
steps = timems/stepms;
delta_x = (dist_x-easeDist_x)/steps;
delta_y = (dist_y-easeDist_y)/steps;
}
else if (mode == EASEOUT)
{
timems -= easems;
iniStep.step = -START_STEP;
var easeDist_x = dist_x/(2*easems/stepms);
var easeDist_y = dist_y/(2*easems/stepms);
steps = timems/stepms;
delta_x = (dist_x-easeDist_x)/steps;
delta_y = (dist_y-easeDist_y)/steps;
}
var interval = setInterval("moveItem('"+item+"', "+x_dest+", "+y_dest+", "+delta_x+", "+delta_y+")", stepms);
intervalList[item] = { x: icon.offsetLeft, y: icon.offsetTop, interval: interval, timeleft: timems, initStep: iniStep }
}
/*
linear:
|----|----|----|----|----|----|
|<- linear speed ->|
ease in:
|----|----|----|----|----|----|
|inc|<- linear speed ->|
ease out:
|----|----|----|----|----|----|
|<- linear speed ->|dec|
ease in & out:
|----|----|----|----|----|----|
|inc|<- linear speed ->|dec|
increase/decrease time: 20ms
increase:
5ms (step 1): 1/4 step (ex: step 4 px => 1 px), min 1 px
10ms (step 2): 1/2 step ( => 2 px)
15ms (step 3): 3/4 step ( => 3 px)
20ms (step 4): 1 step + recalcul du nb steps restants en tenant compte du ease out
decrease:
20ms avant la fin: 1 step (prévu initialement)
15ms avant la fin: 3/4 de step
10ms avant la fin: 1/2 step
5ms avant la fin: 1/4 step, mini 1px