Hirdetés

Expresszbolt.com SPAM-elés! Mostmár elég!

Nem tudom, hogy kinek volt dolga az Expresszbolt.com-al SPAM ügyben.
Remélem, ha van ilyen a Google találatai alapján több ember is ide talál, akik egyszerűen képtelenek leiratkozni az expresszbolt.com hírleveléről, ami ezáltal SPAM-mé minősül. A leiratkozás linkre kattintva tovább jutunk egyfajta oldalra, ahol mégegyszer meg kell nyomni a leiratkozom lehetőséget, de a mailek ugyanúgy érkeznek tovább

.

Ha más is ebben a cipőben jár, akkor nyugodtan keresse fel az NMHH kéretlen hirdetést bejelentő űrlapját és tegyen bejelentést. Én vagy hatszor próbáltam leiratkozni, levelet is írtam nekik, először szépen, aztán most egymás után két b+-eset is. Először kilátásba helyezve a bejelentést és egyet a bejelentés után, mivel továbbra sem voltak hajlandók leálni a szemeteléssel. Nem tudom mért kell a hatósági bejelentést megvárni? De ha jó ez nekik így, ám legyen. Nem rajtam múlt.

Weboldalba illeszthető analóg óra script

Előnézeti kép:

A kód:
(Ezt egy tetszőleges nevű .html kiterjesztésű fájlba beletehetjük)

<html>
<head>
<title>ORA MUTATOS</title>
<canvas id="my_canvas" width="520" height="510" ></canvas>
</head>
<body>
<script>

var angle_jump=6;
var dt= new Date();

sec = dt.getSeconds()*angle_jump;

var min=dt.getMinutes();
min=min*angle_jump;
min=min + (sec/360)
var hour=dt.getHours();
hour=hour*30;
hour=hour + (min/12);

var ang_second=90-sec;
var ang_minute=90-min;
var ang_hour=90-hour;

var r=160;
//var my_canvas=$('#my_canvas').get(0)
var my_canvas=document.getElementById("my_canvas");

var gctx = my_canvas.getContext("2d");

var x=my_canvas.width/2;
var y=my_canvas.height/2;
speed=1000;

arc_angle=10;// angle of oppisite end of second niddle

////////////
my_function=function my_function(){

gctx.clearRect(0, 0, my_canvas.width,my_canvas.height);
///////////////////
gctx.moveTo(x+r*1.4,y);
gctx.strokeStyle= '#d28c23';
gctx.lineWidth=30;
gctx.shadowColor = 'black';
gctx.shadowOffsetX=5;
gctx.shadowOffsetY=5;
gctx.shadowBlur = 15;

gctx.arc(x,y,r*1.4,0,2*Math.PI);
gctx.stroke(); ///Outer circle
////////////////////
gctx.lineWidth=1;

//////////// To show number indicating Hours ///////////
var h=2;
var x_gap=-5;
var y_gap=5;
for(j=0;j<360;j += angle_jump){
j_radian=j*(Math.PI/180);

gctx.beginPath()
gctx.strokeStyle= '#464623';
if((j % (5*angle_jump))==0){
var y1_out=y+ 1.1*r*Math.sin(j_radian);
var x1_out=x+ 1.1*r*Math.cos(j_radian);

var y1_text=y+ 1*r*Math.sin(j_radian);
var x1_text=x+ 1*r*Math.cos(j_radian);

//h=h+5;
if(h<12){
h=h+1; // to show hour
}else{
h=1;
}

gctx.font = '36px serif';
if(y_gap<15){y_gap=y_gap+1;}
x_gap=x_gap-1;
void gctx.fillText(h,x1_text+x_gap, y1_text+y_gap);
}else{
var y1_out=y+ 1.15*r*Math.sin(j_radian);
var x1_out=x+ 1.15*r*Math.cos(j_radian);
}

var y2_out=y+ 1.2*r*Math.sin(j_radian);
var x2_out=x+ 1.2*r*Math.cos(j_radian);

gctx.moveTo(x1_out,y1_out);
gctx.lineTo(x2_out,y2_out);
gctx.stroke();
}

/////////////////////
gctx.beginPath()
gctx.strokeStyle= '#46d2f5'; // border color of the second needle
var startAngle=(1/180) * (360-ang_second); // In degree
var a_end_ang=(1/180) * (360-(ang_second + 180 -arc_angle));
var a_start_ang=(1/180) *(360-(ang_second + 180 + arc_angle));

var y1=y+ r*Math.sin(startAngle*Math.PI);
var x1=x+ r*Math.cos(startAngle*Math.PI);

gctx.moveTo(x1,y1); // Coordinate of tip of the needle
gctx.arc(x,y,0.3*r,a_start_ang*Math.PI,a_end_ang*Math.PI);
gctx.lineTo(x1,y1); // Full second needle path
gctx.fillStyle = '#46d2f5'; // fill colour of the second needle
gctx.fill();
gctx.stroke(); // draw the second needle
//////////////////////////////////

///////////Minute Needle//////////
gctx.beginPath()
gctx.strokeStyle= '#f5d200'; // border color of the minute needle
var startAngle=(1/180) * (360-ang_minute); // In degree
var a_end_ang=(1/180) * (360-(ang_minute + 180 -arc_angle));
var a_start_ang=(1/180) *(360-(ang_minute + 180 + arc_angle));

var y1=y+ 0.9*r*Math.sin(startAngle*Math.PI);
var x1=x+ 0.9*r*Math.cos(startAngle*Math.PI);

gctx.moveTo(x1,y1); // Coordinate of tip of the needle
gctx.arc(x,y,0.3*r,a_start_ang*Math.PI,a_end_ang*Math.PI);
gctx.lineTo(x1,y1); // Full minute needle path
gctx.fillStyle = '#f5d200'; // fill colour of the minute needle
gctx.fill();
gctx.stroke(); // draw the minute needle
//////////////////////////////////

///////////hour Needle//////////
gctx.beginPath()
gctx.strokeStyle= '#f52300'; // border color of the hour needle
var startAngle=(1/180) * (360-ang_hour); // In degree
var a_end_ang=(1/180) * (360-(ang_hour + 180 -(arc_angle*2)));
var a_start_ang=(1/180) *(360-(ang_hour + 180 + (arc_angle*2)));

var y1=y+ 0.8*r*Math.sin(startAngle*Math.PI);
var x1=x+ 0.8*r*Math.cos(startAngle*Math.PI);

gctx.moveTo(x1,y1); // Coordinate of tip of the needle
gctx.arc(x,y,0.15*r,a_start_ang*Math.PI,a_end_ang*Math.PI);
gctx.lineTo(x1,y1); // Full hour needle path
gctx.fillStyle = '#f52300'; // fill colour of the hour needle
gctx.fill();
gctx.stroke(); // draw the hour needle
//////////////////////////////////

/// small Circle at center of the clock
gctx.beginPath()
gctx.strokeStyle= '#000000';
gctx.arc(x,y,3,0,2*Math.PI);
gctx.fillStyle = '#ff00ff';
gctx.fill();
gctx.stroke();
my_function2();
}
////////

my_function2=function my_function2(){
if(ang_second > -264){
ang_second=ang_second-angle_jump;
my_time=setTimeout('my_function()',speed)
//$('#d1').html("ang_second: " + ang_second + "<br>ang_minute" + ang_minute + "<br>ang_hour" + ang_hour);
}else{
ang_second=90;

if(ang_minute > -264){
ang_minute=ang_minute - angle_jump;
}else{
ang_minute=90;
ang_hour=ang_hour-angle_jump;
}
my_time=setTimeout('my_function()',speed)
}
}
/////////
my_function();
</script>

</body>
</html>

Simplepie FEED item forditottt dátum rendezés

A http://simplepie.org oldalról tölthető le ez a PHP alapú script, amivel saját oldaladon jelenítheted meg külső oldalak cikkeit.

Én egy skis dobozos formában csináltam ezt meg, ami így néz ki:

Ehhez csak egy fájlt kell létrehozni, a neve bármi lehet, az alábbi tartalommal, a letöltött simplepie scriptek gyökérkönyvtárában:

<?php
require_once('autoloader.php');
$feed = new SimplePie();
$feed->set_feed_url('https://prohardver.hu/hirfolyam/anyagok/rss.xml'); //Itt bármelyik weboldal feed-je megadható, amit meg szeretnénk jeleníteni
$feed->enable_order_by_date(false); // Erőltetett dátum szerinti rendezés kikapcsolva
$feed->enable_cache(false); // Cache kapcsoló
$feed->init();
$feed->handle_content_type();
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//HU"

<html xmlns
<head>
<title>Sample SimplePie Page</title>
<style>
#contentbox {
border: 2px solid #FF8000;
padding: 5px;
border-radius: 10px;
background-color: #FBF1A4;
color: black;
margin-top: 10px;
margin-bottom: 15px;
margin-left: 20px;
margin-right: 20px;
box-shadow: 5px 5px 20px 2px black;
}


#timedate {
color: red;
margin-left: 3px;
margin-top: 1px;
}


#timedate p{
margin-top: 1px;
margin-bottom: 1px;
}

.contentbox h2, a{
color: #FF8000;
font-size: 0.6em;
text-decoration: none;
margin-bottom: 0px;
}

h2 {
color: #FF8000;
font-size: 1.5em;
text-decoration: none;
margin-bottom: 0px;
}
</style>
</head>
<body>

<?php

foreach ($feed->get_items() as $item):
?>

<div id="contentbox">
<h2><a href="<?php echo $item->get_permalink(); ?>"><?php echo $item->get_title(); ?></a></h2>


<div id="timedate">
....................................................
<p><small>Posztolva <?php echo $item->get_date('Y F j | H:i'); ?></small></p>
</div>
<hr />
<p><?php echo $item->get_description(); ?></p>
</div>
<?php endforeach; ?>

</body>
</html>

Ipv6 tiltása PPPoE WAN interfészen Openwrt alatt

Az /etc/config6network konfigurációs állományába kell szúrni ezt a sort:

option ipv6 '0'

a

option ipv6 '1'-t törölni kell

Forbidden Rejected request from RFC1918 IP to public server address Openwrt Luci

Forbidden Rejected request from RFC1918 IP to public server address probléma Openwrt Luci
A luci felület nem nyitható meg belső internetről, de külső netről - például mobilinternet - ebben az esetben sincs gond. Nem tudom miért kell defaultra tennni ezt az ökörséget filtert :W :W :W

Probléma oka: /etc/config/uhttp fájlban option rfc1918_filter '1' érték található. Ezt option rfc1918_filter '0'-ra kell állítani.

A fájl jelenlegi tartalma :

config uhttpd 'main'
list listen_http '0.0.0.0:80'
list listen_http '[::]:80'
list listen_https '0.0.0.0:443'
list listen_https '[::]:443'
option redirect_https '1'
option home '/www'
option rfc1918_filter '0'
option max_requests '3'
option max_connections '100'
option cert '/etc/uhttpd.crt'
option key '/etc/uhttpd.key'
option cgi_prefix '/cgi-bin'
option script_timeout '60'
option network_timeout '30'
option http_keepalive '20'
option tcp_keepalive '1'
option ubus_prefix '/ubus'

config cert 'px5g'
option days '730'
option bits '1024'
option country 'ZZ'
option state 'Somewhere'
option location 'Uknown'
option commonname 'OpenWrt'

BTZ on FACEBOOK

Követhetsz a facebookon is!

HELP: DHCP és StrongSwan IPSEC Ikev2 ugyanazon a szerveren nem megy(?)

Sajnos arra lettem figyelmes, hogy a már jó egy éve bejáratott VPN-em nem működik, pedig semmilyen változtatást nem hajtottam végre a konfigurációban.

A VPN szerver még mindig az Openwrt-s TP-Link, a gateway még mindig a Telekomos Speedport Entry 2i.
A valahogy így néz ki a hálózat:

Mit változtattam?
A Speedport helyett a TP-Link lett a DHCP szerver. Ha visszaállítom a Speedportot DHCP szervernek, minden működik, a VPN kliens tud csatlakozni a szerverhez, IP címet is kap a DHCP szerver Speedport által, Ha ismét a TP-Linket állítom be DHCP szervernek, akkor nem működik az egész. Pedig a helyi hálózaton keresztül csatlakoztatott eszközök kapnak IP-t a TP-Linktől, Internet is van, mivel a TP-Link DHCP szervere Gateway-nek az Speedport IP-jét (ami 192.168.1.4) adja a klienseknek nem a sajátját az 192.168.1.250-et.

reCaptcha v2 PHPBB 3.0.X fórumokhoz

Sajnos a reCaptcha v1-t shut downlolták a Googlenél 2018.03.31-én, ezért egy új reChaptcha v2 ellenőrzőre volt szükségem egy PHPBB 3.0.11 rendszerű fórum regisztrációját ellátó (SPAM)bot védelemhez.

Ehhez először is törölni kellett az oldalhoz kapcsolt v1 API kulcsokat a Google reCaptcha admin oldalán, majd új nyilvános és titkos v2 API kulcsot kellett létrehozni az oldalhoz, ezt a PHPBB adminfelületén a Fórum konfiguráció, Spam megelőzés, Elérhető bővítmény, Telepített bővítményrész konfigurációs ablakánál kellett bemásolni.

A Githubról az alábbi csomag SRC könyvtárának tartalmát a :/var/www/phpBB3/includes/captcha/plugins könyvtárba kellett másolni. Természetesen mindenki a saját elérési útjának megfelelően másolja.

Tesco gazdaságos micro USB töltő és adatkábel

Egy hete vettem a Tescoban és mára be is adta az unalmast. Ha tehetitek kerüljétek ezt a fajta USB-t.

Urbanz Incredi Cables Micro USB.

Javascript lenyíló menü

<!DOCTYPE html>
<html>
<head>
<style>
.dropbtn {
background-color: #4CAF50;
color: white;
padding: 16px;
font-size: 16px;
border: none;
cursor: pointer;
}

.dropbtn:hover, .dropbtn:focus {
background-color: #3e8e41;
}

.dropdown {
position: relative;
display: inline-block;
}

.dropdown-content {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
overflow: auto;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}

.dropdown-content a {
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
}

.dropdown-content a:hover {background-color: #f1f1f1}

.dropdown-content2 {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
overflow: auto;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
margin-left: 107px;
}

.dropdown-content2 a {
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
}

.dropdown-content2 a:hover {background-color: #f1f1f1}

.show {display:block;}
</style>
</head>
<body>

<h2>Clickable Dropdown</h2>
<p>Click on the button to open the dropdown menu.</p>

<div class="dropdown">
<button id="myBtn" class="dropbtn">Dropdown</button>
<div id="myDropdown" class="dropdown-content">
<a href="#home">Home</a>
<a href="#about">About</a>
<a href="#contact">Contact</a>
</div>
<button id="myBtn2" class="dropbtn">Dropdown</button>
<div id="myDropdown2" class="dropdown-content2">
<a href="#home">Home2</a>
<a href="#about">About2</a>
<a href="#contact">Contact2</a>
</div>

</div>

<script>
// Get the button, and when the user clicks on it, execute myFunction
document.getElementById("myBtn").onclick = function() {myFunction()};
document.getElementById("myBtn2").onclick = function() {myFunction2()};

/* myFunction toggles between adding and removing the show class, which is used to hide and show the dropdown content */
function myFunction() {
document.getElementById("myDropdown").classList.toggle("show");
}
function myFunction2() {
document.getElementById("myDropdown2").classList.toggle("show");
}
</script>

</body>
</html>