| Server IP : 103.234.187.230 / Your IP : 216.73.216.216 Web Server : Apache System : Linux lserver42043-ind.megavelocity.net 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64 User : apache ( 48) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/b2bzend/library/Helper/ |
Upload File : |
<?php
/*
* Catabatic Technology Pvt. Ltd.
* File Name :BitMasking.php
* File Description :BitMasking helper contains methods related to masking (get mask, set mask, getmasking string for search/filter)
* Created By : Pooja Choudhary
* Updated By : Ranvir Singh
* Created Date: 7-Oct-2016
* Updated Date: 7-Apr-2017
*/
class Zend_Controller_Action_Helper_BitMasking extends Zend_Controller_Action_Helper_Abstract {
/*
* setMasking. To create masking (need master data, result data and primary key of master table).
* Created by Pooja on 3aug2016
* @param array $maskingArr
* @param array $masterListingArr
* @param int $primaryKey
* @return int.
*/
public function setMasking($maskingArr, $masterListingArr )
{
$mask = '1'; // prefix bit
$args = (func_get_args());
$primaryKey = (isset($args[2])) ? $args[2] : '';
if(count($args) == 3) {
if (count($masterListingArr) > 0) {
foreach ($masterListingArr as $maskVal) {
$char = in_array($maskVal[$primaryKey], $maskingArr) ? '1' : '0';
$mask .= $char;
}
}
}
else {
if (count($masterListingArr) > 0) {
foreach ($masterListingArr as $key => $maskVal) {
$char = in_array($key, $maskingArr) ? '1' : '0';
$mask .= $char;
}
}
}
return $mask;
}
/*
* getMasking(). To create masking (need master data, result data and primary key of master table).
* Created by Pooja on 4aug2016
* @param string $varfromDb
* @param array $masterListingArr
* @param int $primaryKey
* @return int.
*/
public function getMasking( $varfromDb, $masterListingArr ) {
$varfromDbArr = str_split(trim($varfromDb));
$resultMask = array();
$counter = 1;
$args = (func_get_args());
$primaryKey = (isset($args[2])) ? $args[2] : '';
if(count($args) == 3) {
foreach ($masterListingArr as $value) {
if (@$varfromDbArr[$counter] == 1) {
$resultMask[$value[$primaryKey]] = $value[$primaryKey];
}
$counter++;
}
}
else {
foreach ($masterListingArr as $k=>$value) {
if (@$varfromDbArr[$counter] == 1) {
$resultMask[$k] = $k;
}
$counter++;
}
}
return $resultMask;
}
/*
* getMaskingStringforsearch. To create masking string for search and filter.
* Created by Pooja on 6-Oct2016
* @param array $maskArray (Masking array is an array which contains keys(position of element))
* @return string.
*/
public function getMaskingStringforsearch($maskArray) {
$maskStr = '1';
for ($i = 0;
$i <= max($maskArray);
$i++) {
$maskStr .= (in_array($i, $maskArray)) ? 1 : '_';
}
return $maskStr;
}
}