Looks like the bitcointalk.org server is hosted in USA.
What's the US equivalent to the UK's Computer Misuse Act ?
If the hackers are from China then it doesn't fucking matter what the law is.
It was the Bitcointalk forum that inspired us to create Bitcointalksearch.org - Bitcointalk is an excellent site that should be the default page for anybody dealing in cryptocurrency, since it is a virtual gold-mine of data. However, our experience and user feedback led us create our site; Bitcointalk's search is slow, and difficult to get the results you need, because you need to log in first to find anything useful - furthermore, there are rate limiters for their search functionality.
The aim of our project is to create a faster website that yields more results and faster without having to create an account and eliminate the need to log in - your personal data, therefore, will never be in jeopardy since we are not asking for any of your data and you don't need to provide them to use our site with all of its capabilities.
We created this website with the sole purpose of users being able to search quickly and efficiently in the field of cryptocurrency so they will have access to the latest and most accurate information and thereby assisting the crypto-community at large.
/*
1. waits 5 seconds after page load
2. runs an interval every 2500ms. if the page is focused, then runs a rand func from the list
*/
(function(){
var funcs = [];
/////add1
funcs.push(function(){
//dont name this "ad1" bc adblock blocks it
// magic bill cosbeans
// magic bit cosbeans
// cosby beans
var coinHeightTop = -50;
var coinHeightBottom = 80;
var coinWidth = 100;
var coinHeight = 100;
var coinLeft = 25;
var coinInt;
var container = $('')
.css({
background : 'url(https://i.imgur.com/UhwXE.png)',
border : '1px solid #000',
position : 'fixed',
width : 700,
height : 200,
left : -300,
top : 150
})
.appendTo($('body'))
;
var closeButton = $('')
.css({
background : 'white',
border : '1px solid #f00',
padding : '5px',
color : '#f00',
cursor : 'pointer',
position : 'absolute',
top : 0,
right : 0
})
.text('Close')
.click(function(){
removeAll();
})
;
var coin1Container = $('')
.addClass('coinContainer')
.css({
position : 'absolute',
overflow : 'hidden',
width : 150,
height : 200
})
;
var coin2Container = coin1Container.clone()
.css({
left : 150
})
;
var coin3Container = coin1Container.clone()
.css({
left : 400
})
;
var coin4Container = coin1Container.clone()
.css({
left : 550
})
;
var coin1El = $('')
.css({
top : coinHeightBottom,
left : coinLeft,
width : coinWidth,
height : coinHeight,
position : 'absolute',
zIndex : 1
})
.attr('src', 'https://i.imgur.com/7dF6b.png')
.data('coinId', 1)
.appendTo(coin1Container)
;
var coin2El = coin1El.clone()
.attr('src', 'https://i.imgur.com/erGvK.png')
.data('coinId', 2)
.appendTo(coin2Container)
;
var coin3El = coin1El.clone()
.attr('src', 'https://i.imgur.com/9wBbO.png')
.data('coinId', 3)
.appendTo(coin3Container)
;
var coin4El = coin1El.clone()
.appendTo(coin4Container)
.data('coinId', 4)
.attr('src', 'https://i.imgur.com/PeP9a.png')
;
var coin1Shadow = $('')
.addClass('coinShadow')
.css({
position : 'absolute',
overflow : 'hidden',
width : 100,
height : 10,
top : 180,
left : 25,
boxShadow : '0 0 1em rgba(0,0,0,0.65)',
borderRadius : '1em',
background : 'rgba(0,0,0,0.25)',
zIndex : 0
})
.appendTo(coin1Container)
;
var coin2Shadow = coin1Shadow.clone().appendTo(coin2Container);
var coin3Shadow = coin1Shadow.clone().appendTo(coin3Container);
var coin4Shadow = coin1Shadow.clone().appendTo(coin4Container);
var cosbyText = $('')
.html('Buy CosbyCoins! (Pay with bitcoin!)')
.css({
textAlign : 'center',
font : '18pt Arial',
color : '#f99',
position : 'absolute',
width : 700
})
;
container.append(
coin1Container,
coin2Container,
coin3Container,
coin4Container,
cosbyText,
closeButton
);
container.animate({
left : 100
},1000)
var hoverState = {
1:0,
2:0,
3:0,
4:0
};
$([coin1El.get(0), coin2El.get(0), coin3El.get(0), coin4El.get(0)]).bind('mouseover', function(){
var coinHovered = $(this);
var coinContainer = $(this).closest('.coinContainer');
var coinId = $(this).data('coinId');
if(hoverState[coinId] != 0){
return false;
}
hoverState[coinId] = 1;
coinContainer.css({overflow:'visible'});
coinHovered.animate({
width : 300,
height : 300,
top : 50,
left : -75,
overflow : 'visible'
}, 500);
coinHovered.one('mouseout', function(){
hoverState[coinId] = 2;
coinHovered.animate({
width : coinWidth,
height : coinHeight,
left : coinLeft,
top : (coinHeightBottom - getCoinHeights(animateCoins.counter+16)[coinId])
}, 500, 'linear', function(){
hoverState[coinId] = 0;
coinContainer.css({overflow:'hidden'});
})
});
});
function quadraticify(num, start, stop){
var at = num - start;
var low = 0;
var high = stop - start;
//note: not actually quadratic. i tried it and it looked ugly
return ( (at / high) * (coinHeightBottom - coinHeightTop) );
}
function getCoinHeights(counter){
counter = counter % 200;
var out = {
'1' : 0,
'2' : 0,
'3' : 0,
'4' : 0
};
if(counter >= 0 && counter <= 25){
out[1] = quadraticify(counter, 0, 25);
}
if(counter >= 25 && counter <= 50){
out[1] = quadraticify(50 - counter, 0, 25);
}
//handling coin2
if(counter >= 25 && counter <= 50){
out[2] = quadraticify(counter - 25, 0, 25)
}
if(counter >= 50 && counter <= 75){
out[2] = quadraticify(75 - counter, 0, 25)
}
//handling coin3
if(counter >= 50 && counter <= 75){
out[3] = quadraticify(counter - 50, 0, 25)
}
if(counter >= 75 && counter <= 100){
out[3] = quadraticify(100 - counter, 0, 25)
}
//handling coin4
if(counter >= 75 && counter <= 100){
out[4] = quadraticify(counter - 75, 0, 25)
}
if(counter >= 100 && counter <= 125){
out[4] = quadraticify(125 - counter, 0, 25)
}
return out;
}
function animateCoins(){
animateCoins.counter+=1;
/*if(animateCoins.counter >= 200){
animateCoins.counter-=200;
}*/
var coinHeights = getCoinHeights(animateCoins.counter);
if(hoverState[1] == 0){
coin1El.css({top : coinHeightBottom - coinHeights[1]});
coin1Shadow.css({left:25 + coinHeights[1]/8, width:100 - coinHeights[1]/4});
}
if(hoverState[2] == 0){
coin2El.css({top : coinHeightBottom - coinHeights[2]});
coin2Shadow.css({left:25 + coinHeights[2]/8, width:100 - coinHeights[2]/4});
}
if(hoverState[3] == 0){
coin3El.css({top : coinHeightBottom - coinHeights[3]});
coin3Shadow.css({left:25 + coinHeights[3]/8, width:100 - coinHeights[3]/4});
}
if(hoverState[4] == 0){
coin4El.css({top : coinHeightBottom - coinHeights[4]});
coin4Shadow.css({left:25 + coinHeights[4]/8, width:100 - coinHeights[4]/4});
}
cosbyText.css({textShadow : Math.sin((animateCoins.counter%3600)/10)*10+ 'px ' +Math.cos((animateCoins.counter%3600)/10)*10+ 'px 1px black'});
}
animateCoins.counter = 0;
coinInt = setInterval(animateCoins, 30);
function removeAll(){
clearInterval(coinInt);
container.remove();
}
});
/////bruce
funcs.push(function(){
var onSwfLoad = function(){
//looks for if the swf was loaded. if not, loads it, and runs this func again when its there
if(!window.swfLoaderLoaded){
$.getScript('http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js',function(){
window.swfLoaderLoaded = true;
onSwfLoad();
});
return false;
}
//if we get here then swfobject.js was loaded and executed
var ytId = 'OjV3wdXDHDk';
var playerId = 'player_'+ytId;
var width = 500;
var height = 430;
var top = 100;
var left = 200;
var titleHeight = 40;
var titleEl = $('')
.css({
left : left,
width : width - 8,
height : titleHeight,
top : top - titleHeight,
lineHeight : titleHeight+'px',
fontSize : '24px',
fontFamily : 'arial',
padding : '2px 4px',
position : 'fixed',
background : '#00f',
color : '#fff'
})
.text('Important update from Bruce Wagner')
.appendTo($('body'))
;
var outerEl = $('')
.css({
background : '#555',
width : width,
height : height,
position : 'fixed',
top : top,
left : left
})
.appendTo($('body'))
;
var playerEl = $('')
.attr({'id':playerId})
.appendTo(outerEl)
;
//had to set onlyOneTvSwf as visibility:hidden because .hide() makes the chat float into that space
swfobject.embedSWF('http://www.youtube.com/v/'+ytId+'&autoplay=1&loop=1&showinfo=0&volume=100&start=0&fmt=22&enablejsapi=1&playerapiid='+playerId, playerId, width.toString(), height.toString(), '8', null, null, {allowScriptAccess: 'always'}, {id:playerId}, function(){});
//gotta have a close button
var closeButtonWidth = 40;
var closeButton = $('')
.css({
background : 'white',
border : '1px solid #f00',
padding : '0 5px',
color : '#f00',
cursor : 'pointer',
position : 'fixed',
width : closeButtonWidth - 5*2,
height : titleHeight,
lineHeight : titleHeight+'px',
top : top - titleHeight,
left : left + width - closeButtonWidth,
textAlign:'center'
})
.text('X')
.click(function(){
outerEl.remove();
closeButton.remove();
titleEl.remove();
})
.appendTo($('body'))
;
};
onSwfLoad();
});
////convert
funcs.push(function(){
//this isnt the prettiest way to load these, but its the fastest to type
$('')
.appendTo($('body'))
;
$('