function Encode($data)
{
$pwd = 'SunnyVisionc28h54i';
$pwd_length = strlen($pwd);
for ($i = 0; $i < 255; $i++)
{
$key[$i] = ord(substr($pwd, ($i % $pwd_length)+1, 1));
$counter[$i] = $i;
}
$x = 0;
$Zcrypt = "";
for ($i = 0; $i < 255; $i++)
{
$x = ($x + $counter[$i] + $key[$i]) % 256;
$temp_swap = $counter[$i];
$counter[$i] = $counter[$x];
$counter[$x] = $temp_swap;
}
for ($i = 0; $i < strlen($data); $i++)
{
$a = ($a + 1) % 256;
$j = ($j + $counter[$a]) % 256;
$temp = $counter[$a];
$counter[$a] = $counter[$j];
$counter[$j] = $temp;
$k = $counter[(($counter[$a] + $counter[$j]) % 256)];
$Zcipher = ord(substr($data, $i, 1)) ^ $k;
$Zcrypt .= chr($Zcipher);
}
return $Zcrypt;
}
function str_replace_last( $search , $replace , $str ) {
if( ( $pos = strrpos( $str , $search ) ) !== false ) {
$search_length = strlen( $search );
$str = substr_replace( $str , $replace , $pos , $search_length );
}
return $str;
}
function urlsafe_b64encode($string,$pwd) {
$data = base64_encode($string . $pwd);
$data = str_replace(array('+','/','='),array('-','_',''),$data);
return $data;
}
function urlsafe_b64decode($string,$pwd) {
$data = str_replace(array('-','_'),array('+','/'),$string);
$mod4 = strlen($data) % 4;
if ($mod4) {
$data .= substr('====', $mod4);
}
$data = base64_decode($data);
$data = str_replace_last( $pwd , '' , $data );
return $data;
}
if ( !function_exists( 'hex2bin' ) ) {
function hex2bin( $str ) {
$sbin = "";
$len = strlen( $str );
for ( $i = 0; $i < $len; $i += 2 ) {
$sbin .= pack( "H*", substr( $str, $i, 2 ) );
}
return $sbin;
}
}
function str_encode_plus($data,$pwd)
{
$x = $j = $a = $Zcrypt = false;
$pwd_length = strlen($pwd);
for ($i = 0; $i < 255; $i++) {
$key[$i] = ord(substr($pwd, ($i % $pwd_length)+1, 1));
$counter[$i] = $i;
}
for ($i = 0; $i < 255; $i++) {
$x = ($x + $counter[$i] + $key[$i]) % 256;
$temp_swap = $counter[$i];
if(isset($counter[$x])) $counter[$i] = $counter[$x];
$counter[$x] = $temp_swap;
}
for ($i = 0; $i < strlen($data); $i++) {
$a = ($a + 1) % 256;
$j = ($j + $counter[$a]) % 256;
$temp = $counter[$a];
$counter[$a] = $counter[$j];
$counter[$j] = $temp;
$k = $counter[(($counter[$a] + $counter[$j]) % 256)];
$Zcipher = ord(substr($data, $i, 1)) ^ $k;
$Zcrypt .= chr($Zcipher);
}
return $Zcrypt;
}
function fencode($string,$pwd1 = ENCRYPTION_KEY1,$pwd2 = ENCRYPTION_KEY2) {
$encryption_KEY1 = md5($pwd1);
// $encryption_KEY2 = sha1($pwd2);
$encryption_KEY3 = md5($pwd2 . sha1($pwd1));
return str_rot13(urlsafe_b64encode(bin2hex(str_encode_plus($string , $encryption_KEY3)) , $encryption_KEY1));
}
function fdecode($string,$pwd1 = ENCRYPTION_KEY1,$pwd2 = ENCRYPTION_KEY2) {
$encryption_KEY1 = md5($pwd1);
// $encryption_KEY2 = sha1($pwd2);
$encryption_KEY3 = md5($pwd2 . sha1($pwd1));
return str_encode_plus(hex2bin(urlsafe_b64decode(str_rot13($string) , $encryption_KEY1)) , $encryption_KEY3);
}
function pcrypt($password, $salt = false){
$crypt = bin2hex(Encode($password));
if (strlen($salt) > 1){
return crypt($crypt, $salt);
}else{
return crypt($crypt);
}
return $crypt;
}
function pcrypt2($password, $salt = false){
$crypt = bin2hex(Encode($password));
if (strlen($salt) > 1){
return crypt($crypt, $salt);
}else{
return crypt($crypt);
}
}
?>
Projects - 72 Nathan Road | Dafy Holdings Ltd
72 Nathan Road
Test
Project Detail:
Location:
B/F – 2/F, 72 Nathan Road, Tsim Sha Tsui, Kowloon, Hong Kong
Project Scope:
Façade Designer, Structural engineer and Statutory submission and façade work.
Project Size:
400 sq.m
This is one of the fast track projects taking place over 7 months from design to completion. The project includes internal alteration and addition works, and the erection of a new LED screen and a glass canopy along the shop front. The most challenging part is maintaining business operation while the work in progress. The planning of the site work, phasing and scheduling of the project, and temporary protection require substantial experience and excellent communication among all parties.
Back to Project List