Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php /* This file is protected by copyright law and provided under license. Reverse engin..
Decoded Output download
date_default_timezone_set("Asia/Kolkata");
function is_login_manager_admin(){
if(isset($_SESSION['user_type']) &&($_SESSION['user_type']=='ADMIN'||$_SESSION['user_type']=='MANAGER') &&isset($_SESSION['user_id']) &&intval($_SESSION['user_id'])>0){
return 1;
}
else
{
return 0;
}
}
function is_login_admin(){
if(isset($_SESSION['user_type']) &&($_SESSION['user_type']=='ADMIN') &&isset($_SESSION['user_id']) &&intval($_SESSION['user_id'])>0){
return 1;
}
else
{
return 0;
}
}
function is_login_secure($mysqli,$user_type)
{
if(isset($_SESSION['user_type']) &&($_SESSION['user_type']==$user_type)
&&isset($_SESSION['user_id']) &&intval($_SESSION['user_id'])>0 &&isset($_SESSION['pass'])){
$uname=$_SESSION['username'];
$pass=$_SESSION['pass'];
$get_user_sql=" SELECT * FROM `emp_table` WHERE `username` = '$uname' AND `password` = '$pass' AND `active_status` = '0' AND `real_status` = '0' ";
$selct_uname = $mysqli->query($get_user_sql);
if($selct_uname->num_rows>0){
return 1;
}
else{
return 0;
}
}else{
return 0;
}
}
function filtervar($mysqli,$data){
$data = $mysqli->real_escape_string($data);
$data = htmlentities($data,ENT_QUOTES,'UTF-8');
$data = trim($data);
return $data;
}
function filter_url($mysqli,$data){
$data = trim($data);
$data = strtolower(str_replace('+','-plus-',$data));
$data = str_replace("'","",$data);
$data = str_replace('"','',$data);
$data = str_replace('','',$data);
$data = str_replace(',','',$data);
$data = str_replace('.','',$data);
$data = str_replace('?','',$data);
$data = str_replace('/','',$data);
$data = str_replace('!','',$data);
$data = str_replace('`','',$data);
$data = str_replace('$','',$data);
$data = str_replace('&','-n-',$data);
$data = str_replace('@','',$data);
$data = str_replace('(','-',$data);
$data = str_replace(')','-',$data);
$data = str_replace('[','-',$data);
$data = str_replace(']','-',$data);
$data = str_replace('{','-',$data);
$data = str_replace('}','-',$data);
$data = str_replace('!','-',$data);
$data = str_replace('#','-',$data);
$data = str_replace('\','-',$data);
$data = str_replace('+','-',$data);
$data = str_replace('*','-',$data);
$data = str_replace('=','-',$data);
$data = str_replace('^','-',$data);
$data = str_replace(" ","-",$data);
$data = str_replace('%','-percent-',$data);
$data = str_replace('---','-',$data);
$data = str_replace('--','-',$data);
$data = $mysqli->real_escape_string($data);
$data = htmlentities($data,ENT_QUOTES,'UTF-8');
return $data;
}
function filtervar2($mysqli,$data){
$data = str_replace('||',', ',$data);
$data = $mysqli->real_escape_string($data);
$data = htmlentities($data,ENT_QUOTES,'UTF-8');
$data = trim($data);
return $data;
}
function fetch_barcode($mysqli,$barcode){
$sql="SELECT `barcode` FROM `purchase_tick` WHERE `barcode`='$barcode' AND `cancel`='0'";
$fetch = $mysqli->query($sql);
$rows=mysqli_num_rows($fetch);
if($rows>0){
return 1;
}else{return 0;}
}
function get_username($mysqli,$id){
$selectuser = $mysqli->query("SELECT `username` FROM `users` WHERE `id` = '$id'");
$user_fetch = $selectuser->fetch_assoc() ;
if(isset($user_fetch['username']))
{
return $user_fetch['username'];
}
else{
return "none";
}
}
function get_project_details($mysqli,$id){
if($id>0)
{
$selectuser = $mysqli->query("SELECT `entry_name` FROM `add_project_details` WHERE `apd_id` = '$id'");
$user_fetch = $selectuser->fetch_assoc() ;
if(isset($user_fetch['entry_name']))
{
return $user_fetch['entry_name'];
}
else{
return "none";
}
}
else{
return "All Project";
}
}
function get_expence_id_by_name($mysqli,$name){
$selectuser = $mysqli->query("SELECT `exp_nm_id` FROM `add_expense_name` WHERE `expense_name` = '$name'");
$user_fetch = $selectuser->fetch_assoc() ;
if(isset($user_fetch['exp_nm_id']))
{
return $user_fetch['exp_nm_id'];
}
else{
return "none";
}
}
function get_project_id_by_name($mysqli,$name){
$selectuser = $mysqli->query("SELECT `apd_id` FROM `add_project_details` WHERE `entry_name` = '$name'");
$user_fetch = $selectuser->fetch_assoc() ;
if(isset($user_fetch['apd_id']))
{
return $user_fetch['apd_id'];
}
else{
return "none";
}
}
function get_payment_reason($mysqli,$id){
if($id>0)
{
$selectuser = $mysqli->query("SELECT `expense_name` FROM `add_expense_name` WHERE `exp_nm_id` = '$id'");
$user_fetch = $selectuser->fetch_assoc() ;
if(isset($user_fetch['expense_name']))
{
return $user_fetch['expense_name'];
}
else{
return "none";
}
}
}
function align_timestamp($timestamp)
{
$datetime = explode(" ",$timestamp);
$date = $datetime[0];
$time = $datetime[1];
$date = date('d-m-Y',strtotime($date));
echo $time ." - ".$date;
}
function item_is_checked($sale_item_id,$item_array)
{
$size_count=sizeof($item_array);
for($i=0;$i<$size_count;$i++)
{
if($sale_item_id==$item_array[$i])
{
return true;
}
}
return false;
}
function check_item_added_in_ism($mysqli,$menu_item_id)
{
$sql_menu="SELECT * FROM `item_selected_menu` WHERE `menu_item_id`='$menu_item_id'";
$result1=$mysqli->query($sql_menu);
$number_rows=$result1->num_rows;
if($number_rows>0)
{
return true;
}
return false;
}
function get_total_item_cost($mysqli,$sql){
$total=0;
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$total=$total+$data['total_price'];
}
}
return $total;
}
function add_recurring_expence_from_stock($mysqli,$cost,$exp_date,$exp_type,$add_update,$update_id){
$timestamp=date("Y-m-d H:i:s");
if($add_update>0){
$sql="INSERT INTO `add_expence` SET
`exp_type`='$exp_type',
`exp_date`='$exp_date',
`cost`='$cost',
`stock_id`='$update_id',
`created_at`='$timestamp'";
$result=$mysqli->query($sql);
}else{
$sql="UPDATE `add_expence` SET
`exp_type`='$exp_type',
`exp_date`='$exp_date',
`cost`='$cost' WHERE `stock_id`='$update_id'";
$result=$mysqli->query($sql);
}
return $result;
}
function get_total_item_qty($mysqli,$sql){
$total=0;
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$inv_qty=(int) filter_var($data['item_qty'],FILTER_SANITIZE_NUMBER_INT);
$total=$total+$inv_qty;
}
}
return $total;
}
function get_added_stock_item($mysqli,$sql)
{
$total_kg=0;$total_gm=0;
$added_qty=0;
$return=[];
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$added_qty=(($data['item_qty_in_kg']*1000)+$data['item_qty_in_gm']);
}
}
$total_kg=floor($added_qty/1000);
$total_gm=floor($added_qty%1000);
$total_qty="$total_kg kg/lt $total_gm gm/mlt";
$return[0]=$total_qty;
return $return;
}
function array_convertion_menu_items($mysqli,$data,$data_value){
$data=explode("||",$data);
$data_value=explode("||",$data_value);
$count=sizeof($data);
for($i=0;$i<$count;$i++){
if(isset($data[$i]) &&!empty($data[$i])){
echo " ".$i+1 ." ) ".get_item_details($mysqli,$data[$i])." - ".$data_value[$i]."<br>";
}
}
}
function array_convertion_extra_items($mysqli,$data,$data_value){
$data=explode("||",$data);
$data_value=explode("||",$data_value);
$count=sizeof($data);
for($i=0;$i<$count;$i++){
if(isset($data[$i]) &&!empty($data[$i])){
echo " ".$i+1 ." ) ".get_item_details($mysqli,$data[$i])." - ".$data_value[$i]."<br>";
}
}
}
function array_convertion($data){
$data=explode("||",$data);
$count=sizeof($data);
for($i=0;$i<$count;$i++){
echo " ".$i+1 ." ) ".$data[$i]." <br>";
}
}
function get_item_details($mysqli,$item_id){
$return="";
$sql="SELECT * FROM `sale_items` WHERE `sale_item_id`='$item_id' ";
$result = $mysqli->query($sql);
$rows=mysqli_num_rows($result);
if($rows){
$data=$result->fetch_assoc();
$return=$data['item_name'];
return $return;
}
}
function get_prepared_food_qty($item_id,$date,$mysqli)
{
$return="";
$item_id= trim($item_id);
$all_item_id=[];
$all_item_qty=[];
$sql="SELECT * FROM `prepared_food` WHERE `date`='$date'";
$result = $mysqli->query($sql);
$rows=mysqli_num_rows($result);
if($rows>0){
$data=$result->fetch_assoc();
$all_item_id=explode('||',$data['item_id']);
$all_item_qty=explode('||',$data['item_qty']);
$key= array_search($item_id,$all_item_id);
if(is_numeric($key))
{
$item_qty= (int) $all_item_qty[$key];
$return= $item_qty;
}
}
return $return;
}
function get_total_item_sale($mysqli)
{
$extra_item_qty=[];
$menu_item_qty=[];
$extra_item=[];
$menu_item_id=[];
$all_extra_item=get_all_extra_item_id($mysqli);
$all_extra_item_value=[];
$count1=sizeof($all_extra_item);
for($i=0;$i<$count1;$i++)
{
$item_value=0;
$sql="SELECT * FROM `sale_details` WHERE `status`=1";
$query = $mysqli->query($sql);
while($data=$query->fetch_assoc())
{
$extra_item=explode("||",$data['extra_items']);
$extra_item_qty=explode("||",$data['extra_item_value']);
$menu_item_id=explode("||",$data['menu_items']);
$menu_item_qty=explode("||",$data['menu_item_value']);
$count=sizeof($menu_item_id);
for($j=0;$j<$count;$j++)
{
$item_value+=get_menu_added_items($mysqli,$menu_item_id[$j],$menu_item_qty[$j],$all_extra_item[$i]);
}
if(in_array($all_extra_item[$i],$extra_item))
{
$key= array_search($all_extra_item[$i],$extra_item);
$item_value+= (int) $extra_item_qty[$key];
}
}
$all_extra_item_value[$i]=$item_value;
}
$count=sizeof($all_extra_item);
for($i=0;$i<$count;$i++){
if(isset($all_extra_item[$i]) &&!empty($all_extra_item[$i])){
if($all_extra_item_value[$i]>0)
{
echo " ".$i+1 ." ) ".get_item_details($mysqli,$all_extra_item[$i])." - ".$all_extra_item_value[$i]."<br>";
}
}
}
}
function get_all_sale_item($mysqli,$from,$to)
{
$extra_item_qty=[];
$menu_item_qty=[];
$extra_item=[];
$menu_item_id=[];
$all_extra_item=get_all_extra_item_id($mysqli);
$all_extra_item_value=[];
$count1=sizeof($all_extra_item);
for($i=0;$i<$count1;$i++)
{
$item_value=0;
if($from!="")
{
$sql="SELECT * FROM `sale_details` WHERE (DATE(`created_at`) BETWEEN '$from' AND '$to') AND `status`=1";
}else{
$sql="SELECT * FROM `sale_details` WHERE (DATE(`created_at`) <= '$to') AND `status`=1";
}
$query = $mysqli->query($sql);
while($data=$query->fetch_assoc())
{
$extra_item=explode("||",$data['all_added_extra_item']);
$extra_item_qty=explode("||",$data['all_added_extra_item_value']);
if(in_array($all_extra_item[$i],$extra_item))
{
$key= array_search($all_extra_item[$i],$extra_item);
$item_value+= (int) $extra_item_qty[$key];
}
}
$all_extra_item_value[$i]=$item_value;
}
$count=sizeof($all_extra_item);
$k=1;
for($i=0;$i<$count;$i++){
if(isset($all_extra_item[$i]) &&!empty($all_extra_item[$i])){
if($all_extra_item_value[$i]>0)
{
echo " ".$k++." ) ".get_item_details($mysqli,$all_extra_item[$i])." - ".$all_extra_item_value[$i]."<br>";
}
}
}
}
function get_customer_details($mysqli,$cus_id)
{
$name="";
$mob="";
$return=[];
$sql="SELECT * FROM `customer_details` WHERE `cus_id` = '$cus_id' ";
$data=$mysqli->query($sql);
$rows=$data->num_rows;
if($rows){
$result=$data->fetch_assoc();
$name=$result['name'];
$mob=$result['phone'];
}
$return[0]=$name;
$return[1]=$mob;
return $return;
}
function manage_transactions($mysqli,$project_id,$invest_type,$invest_date,$customer_name,
$amt,$payment_method,$security_taken,$invest_id,$activity)
{
$timestamp=date("Y-m-d H:i:s");
$payment_day=date('N',strtotime($invest_date));
if($activity==1)
{
$sql_que = " INSERT INTO `add_payment` SET
`project_id` = '$project_id',
`exp_name_id` = '$invest_type',
`pay_date` = '$invest_date',
`payment_day` = '$payment_day',
`payment_method` = '$payment_method',
`amt` = '$amt',
`person_name` = '$customer_name',
`c_or_d` = '0',
`msg` = '$security_taken',
`invest_id` = '$invest_id',
`created_at`='$timestamp'";
}
else if($activity==2)
{
$sql_que = " UPDATE `add_payment` SET
`project_id` = '$project_id',
`exp_name_id` = '$invest_type',
`pay_date` = '$invest_date',
`payment_day` = '$payment_day',
`payment_method` = '$payment_method',
`amt` = '$amt',
`person_name` = '$customer_name',
`c_or_d` = '0',
`msg` = '$security_taken' WHERE
`invest_id` = '$invest_id'";
}
$query = $mysqli->query($sql_que);
return $query;
}
function manage_installment_transactions($mysqli,$project_id,$invest_type,$invest_date,$customer_name,
$amt,$payment_method,$security_taken,$installment_id,$activity)
{
$timestamp=date("Y-m-d H:i:s");
$payment_day=date('N',strtotime($invest_date));
if($activity==1)
{
$sql_que = " INSERT INTO `add_payment` SET
`project_id` = '$project_id',
`exp_name_id` = '$invest_type',
`pay_date` = '$invest_date',
`payment_day` = '$payment_day',
`payment_method` = '$payment_method',
`amt` = '$amt',
`person_name` = '$customer_name',
`c_or_d` = '1',
`msg` = '$security_taken',
`installment_id` = '$installment_id',
`created_at`='$timestamp'";
}
else if($activity==2)
{
$sql_que = " UPDATE `add_payment` SET
`project_id` = '$project_id',
`exp_name_id` = '$invest_type',
`pay_date` = '$invest_date',
`payment_day` = '$payment_day',
`payment_method` = '$payment_method',
`amt` = '$amt',
`person_name` = '$customer_name',
`c_or_d` = '1',
`msg` = '$security_taken' WHERE
`installment_id` = '$installment_id'";
}
$query = $mysqli->query($sql_que);
return $query;
}
function delete_invest_from_transaction($mysqli,$invest_id)
{
$sql_que = "DELETE FROM `add_payment` WHERE `invest_id` = '$invest_id' ";
$delete = $mysqli->query($sql_que);
return $delete;
}
function delete_instalment_from_transaction($mysqli,$installment_id)
{
$sql_que = "DELETE FROM `add_payment` WHERE `installment_id` = '$installment_id' ";
$delete = $mysqli->query($sql_que);
return $delete;
}
function get_total_sale_amount($mysqli,$from,$to)
{
$total_amount=0;
$paid_amount=0;
$total_prepared_cost=0;
$return=[];
if($from!="")
{
$sql="SELECT * FROM `sale_details` WHERE (DATE(`created_at`) BETWEEN '$from' AND '$to') AND `status`=1";
}else{
$sql="SELECT * FROM `sale_details` WHERE (DATE(`created_at`) <= '$to') AND `status`=1";
}
$query = $mysqli->query($sql);
while($data=$query->fetch_assoc())
{
$total_amount=$total_amount+$data['total_price'];
$paid_amount= $paid_amount+$data['paid_amt'];
$total_prepared_cost=$total_prepared_cost+$data['prepared_cost'];
}
$return[0]=$total_amount;
$return[1]=$paid_amount;
$return[2]=$total_prepared_cost;
return $return;
}
function get_total_rest_amount_paid($mysqli,$from,$to)
{
$total_amount=0;
$paid_amount=0;
$return=[];
if($from!="")
{
$sql="SELECT * FROM `customer_payment_list` WHERE (`pay_date` BETWEEN '$from' AND '$to') AND `status`=1";
}else{
$sql="SELECT * FROM `customer_payment_list` WHERE (`pay_date` <= '$to') AND `status`=1";
}
$query = $mysqli->query($sql);
while($data=$query->fetch_assoc())
{
$paid_amount= $paid_amount+$data['paid_amt'];
}
$return[0]=$paid_amount;
return $return;
}
function insert_sale_item($mysqli,$menu_item_id2,$menu_item_qty2,$extra_item2,$extra_item_qty2)
{
$extra_item_qty=[];
$menu_item_qty=[];
$extra_item=[];
$menu_item_id=[];
$all_extra_item=get_all_extra_item_id($mysqli);
$all_extra_item_value=[];
$all_final_extra_item=[];
$all_final_extra_item_value=[];
$return=[];
$count1=sizeof($all_extra_item);
for($i=0;$i<$count1;$i++)
{
$item_value=0;
$extra_item=explode("||",$extra_item2);
$extra_item_qty=explode("||",$extra_item_qty2);
$menu_item_id=explode("||",$menu_item_id2);
$menu_item_qty=explode("||",$menu_item_qty2);
$count=sizeof($menu_item_id);
for($j=0;$j<$count;$j++)
{
$item_value+=get_menu_added_items($mysqli,$menu_item_id[$j],$menu_item_qty[$j],$all_extra_item[$i]);
}
if(in_array($all_extra_item[$i],$extra_item))
{
$key= array_search($all_extra_item[$i],$extra_item);
$item_value+= (int) $extra_item_qty[$key];
}
$all_extra_item_value[$i]=$item_value;
}
$count=sizeof($all_extra_item);
for($i=0;$i<$count;$i++){
if(isset($all_extra_item[$i]) &&!empty($all_extra_item[$i])){
if($all_extra_item_value[$i]>0)
{
$all_final_extra_item[$i]=$all_extra_item[$i];
$all_final_extra_item_value[$i]=$all_extra_item_value[$i];
}
}
}
$return[0]=$all_final_extra_item;
$return[1]=$all_final_extra_item_value;
return $return;
}
function get_total_prepared_item($mysqli,$from,$to)
{
$extra_item_qty=[];
$extra_item=[];
$menu_item_id=[];
$all_extra_item=get_all_extra_item_id($mysqli);
$all_extra_item_value=[];
$count1=sizeof($all_extra_item);
for($i=0;$i<$count1;$i++)
{
$item_value=0;
if($from!="")
{
$sql="SELECT * FROM `prepared_food` WHERE `date` BETWEEN '$from' AND '$to' ";
}else{
$sql="SELECT * FROM `prepared_food` WHERE `date` <= '$to' ";
}
$query = $mysqli->query($sql);
while($data=$query->fetch_assoc())
{
$extra_item=explode("||",$data['item_id']);
$extra_item_qty=explode("||",$data['item_qty']);
if(in_array($all_extra_item[$i],$extra_item))
{
$key= array_search($all_extra_item[$i],$extra_item);
$item_value+= (int) $extra_item_qty[$key];
}
}
$all_extra_item_value[$i]=$item_value;
}
$count=sizeof($all_extra_item);
for($i=0;$i<$count;$i++){
if(isset($all_extra_item[$i]) &&!empty($all_extra_item[$i])){
if($all_extra_item_value[$i]>0)
{
echo " ".$i+1 ." ) ".get_item_details($mysqli,$all_extra_item[$i])." - ".$all_extra_item_value[$i]."<br>";
}
}
}
}
function get_all_extra_item_id($mysqli)
{
$all_extra_item=[];
$sql="SELECT * FROM `sale_items` WHERE `item_type`='1' ";
$query = $mysqli->query($sql);
$i=0;
while($data=$query->fetch_assoc())
{
$all_extra_item[$i]=$data['sale_item_id'];
$i++;
}
return $all_extra_item;
}
function get_menu_added_items($mysqli,$menu_item_id,$menu_item_qty,$extra_item_id)
{
$extra_item=[];
$check=0;
$sql="SELECT * FROM `item_selected_menu` WHERE `menu_item_id`='$menu_item_id'";
$query = $mysqli->query($sql);
$rows=mysqli_num_rows($query);
if($rows)
{
$data=$query->fetch_assoc();
$extra_item=explode("||",$data['selected_item_id']);
if(in_array($extra_item_id,$extra_item))
{
$check=$menu_item_qty;
}
}
return $check;
}
function get_total_sale_cost($mysqli,$sql){
$total_paid=0;
$sale_amount=0;
$total_prepared_cost=0;
$return=[];
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$total_paid=$total_paid+$data['paid_amt'];
$sale_amount=$sale_amount+$data['total_price'];
$total_prepared_cost=$total_prepared_cost+$data['prepared_cost'];
}
}
$return[0]=$total_paid;
$return[1]=$sale_amount;
$return[2]=$total_prepared_cost;
return $return;
}
function get_total_paid_amount($mysqli,$sql){
$total_paid=0;
$sale_amount=0;
$return=[];
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$total_paid=$total_paid+$data['paid_amt'];
}
}
$return[0]=$total_paid;
return $return;
}
function get_total_tax_cost($mysqli,$sql){
$total=0;
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$total=$total+$data['tax_paid'];
}
}
return $total;
}
function get_total_profit_cost($mysqli,$sql){
$total=0;
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$total=$total+$data['profit_amt'];
}
}
return $total;
}
function get_total_visit_fee($mysqli,$sql){
$total=0;
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$total=$total+$data['visit_fee'];
}
}
return $total;
}
function get_doc_name($mysqli,$user_id){
$return="";
$sql="SELECT `full_name` FROM `user_table` WHERE `user_id`='$user_id'";
$fetch = $mysqli->query($sql);
$data = $fetch ->fetch_assoc();
if($data)
{
$return=$data['full_name'];
}
else{
$return="No Last Date";
}
return $return;
}
function get_doc_fee($mysqli,$user_id){
$return="";
$sql="SELECT `visit_fee` FROM `user_table` WHERE `user_id`='$user_id'";
$fetch = $mysqli->query($sql);
$data = $fetch ->fetch_assoc();
if($data)
{
$return=$data['visit_fee'];
}
else{
$return="No Last Date";
}
return $return;
}
function get_doc_details($mysqli,$user_id){
$return=[];
$sql="SELECT * FROM `user_table` WHERE `user_id`='$user_id'";
$fetch = $mysqli->query($sql);
$data = $fetch ->fetch_assoc();
if($data)
{
$return[0]=$data['degree'];
$return[1]=$data['reg_id'];
$return[2]=$data['desig'];
$return[3]=$data['email'];
}
return $return;
}
function get_status($status){
if(intval($status) == 0){
return 'PENDING';
}else if(intval($status) == 1){
return 'FOLLOW-UP';
}else if(intval($status) == 2){
return 'CONFIRMED';
}
}
function get_fullday($day){
if($day == 'mon'){
return 'monday';
}else if($day == 'tue'){
return 'tuesday';
}else if($day == 'wed'){
return 'wednesday';
}else if($day == 'thu'){
return 'thursday';
}else if($day == 'fri'){
return 'friday';
}else if($day == 'sat'){
return 'saturday';
}else if($day == 'sun'){
return 'sunday';
}
}
function get_short_day_by_name($day){
if($day == 'Sunday'){
return 'Sun';
}else if($day == 'Monday'){
return 'Mon';
}else if($day == 'Tuesday'){
return 'Tue';
}else if($day == 'Wednesday'){
return 'Wed';
}else if($day == 'Thursday'){
return 'Thus';
}else if($day == 'Friday'){
return 'Fri';
}else if($day == 'Saturday'){
return 'Sat';
}
}
function get_short_day($day){
if($day == 1){
return 'Mon';
}else if($day == 2){
return 'Tue';
}else if($day == 3){
return 'Wed';
}else if($day == 4){
return 'Thus';
}else if($day == 5){
return 'Fri';
}else if($day == 6){
return 'Sat';
}else if($day == 7){
return 'Sun';
}
}
function randomOtp() {
$alphabet = '012345678901236547890123654789';
$pass = array();
$alphaLength = strlen($alphabet) -1;
for ($i = 0;$i <6;$i++) {
$n = rand(0,$alphaLength);
$pass[] = $alphabet[$n];
}
return implode($pass);
}
function randomOtp2() {
$alphabet = '012345678901236547890123654789';
$pass = array();
$alphaLength = strlen($alphabet) -1;
for ($i = 0;$i <8;$i++) {
$n = rand(0,$alphaLength);
$pass[] = $alphabet[$n];
}
return implode($pass);
}
function alphaOtp() {
$alphabet = 'ABCD';
$pass = array();
$alphaLength = strlen($alphabet) -1;
for ($i = 0;$i <3;$i++) {
$n = rand(0,$alphaLength);
$pass[] = $alphabet[$n];
}
return implode($pass);
}
function alphaOtp2() {
$alphabet = 'ABCD';
$pass = array();
$alphaLength = strlen($alphabet) -1;
for ($i = 0;$i <2;$i++) {
$n = rand(0,$alphaLength);
$pass[] = $alphabet[$n];
}
return implode($pass);
}
function randomOtp3() {
$alphabet = '012345678901236547890123654789';
$pass = array();
$alphaLength = strlen($alphabet) -1;
for ($i = 0;$i <2;$i++) {
$n = rand(0,$alphaLength);
$pass[] = $alphabet[$n];
}
return implode($pass);
}
function get_entry_type($category){
$category_of="";
switch ($category) {
case 1:
$category_of = "Project Name";
break;
case 2:
$category_of = "Payment Method";
break;
default:
$category_of = "";
}
return $category_of;
}
function get_total_sale_details($mysqli,$sql_st){
$sql=$sql_st;
$total_sale=0;
$total_tax=0;
$sale_profit=0;
$return=0;
$sale_details=[];
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$total_sale=$total_sale+$data['sale_amount'];
$total_tax=$total_tax+$data['tax_paid'];
$sale_profit=$sale_profit+$data['profit_amt'];
}
}
$sale_details[0]=$total_sale;
$sale_details[1]=$total_tax;
$sale_details[2]= $sale_profit;
return $sale_details;
}
function get_total_exp_cost($mysqli,$sql){
$total=0;
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$total=$total+$data['cost'];
}
}
return $total;
}
function get_total_salary_sql($mysqli,$sql)
{
$total=0;$total_pay=0;$leave_deduct=0;
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$total_pay=$total_pay+$data['gross_salary'];
$leave_deduct=$leave_deduct+$data['leave_deduct'];
}
$total=$total_pay-$leave_deduct;
}
return $total;
}
function find_advance($mysqli,$emp_id,$month,$year){
$st_sql2 = "SELECT `amount_taken` FROM `advance_entry` WHERE `emp_id` = '$emp_id' AND `month_select`='$month' AND `year_select`='$year'";
$leave_row=$mysqli->query($st_sql2);
$rows = mysqli_num_rows($leave_row);
if($rows>0)
{
$advance_taken = $leave_row->fetch_assoc();
return $advance_taken['amount_taken'];
}else{
return 0;
}
}
function check_leave($mysqli,$emp_id)
{
$selectuser = $mysqli->query("SELECT * FROM `leave_entry` WHERE `emp_id` = '$emp_id' AND `status`='1'");
$data=$selectuser->fetch_assoc();
$todayDate = date('Y-m-d');
if(isset($data['leave_from']) &&isset($data['leave_to']))
{
$leaveDateBegin =$data['leave_from'];
$leaveDateEnd =$data['leave_to'];
if ($todayDate >= $leaveDateBegin &&$todayDate <= $leaveDateEnd)
{
echo "<span style='color:red'>Employee in Leave </span>";
}
else if($todayDate <$leaveDateBegin)
{
echo "<span style='color:green'>Leave Start = ".$leaveDateBegin."</span><br>";
echo "<span style='color:green'>Leave End = ".$leaveDateEnd."</span> <br>";
echo "<span style='color:green'>Days of Leave = ".$data['num_days']."</span>";
}
else{
echo "No Upcoming Leave Added";
}
}
}
function check_leave_exist($mysqli,$emp_id)
{
$sql="SELECT * FROM `leave_entry` WHERE `emp_id` = '$emp_id' AND `status`='1'";
$leave_sql=$mysqli->query($sql);
$rows=$leave_sql->num_rows;
if($rows>0)
{
echo "Update Leave";
}
else{
echo "Add Leave";
}
}
function update_all_leave($mysqli){
$todayDate = date('Y-m-d');
$sql="UPDATE `leave_entry` SET `status`='0' WHERE `leave_to` < '$todayDate'";
$leave_sql=$mysqli->query($sql);
}
function get_student_name($mysqli,$enroll_no)
{
$return=[];
$sql="SELECT * FROM `student_info` WHERE `enroll_no` LIKE '%$enroll_no%' ";
$student = $mysqli->query($sql);
$array=$student->fetch_assoc();
$return[0]=$array['student_name'];
$return[1]=$array['f_name'];
$return[2]=$array['m_name'];
$return[3]=output_date($array['dob']);
$return[4]=$array['uploaded_file'];
return $return;
}
function send_sms($message,$phone){
$url="http://weberleads.in/http-tokenkeyapi.php?";
$ph = $phone;
$message = urlencode($message);
$curl = curl_init();
curl_setopt($curl,CURLOPT_POST,1);
curl_setopt($curl,CURLOPT_POSTFIELDS,"authentic-key=3538435942455248454c503535331551361323&senderid=CYBERH&route=2&number=$ph&message=$message");
curl_setopt($curl,CURLOPT_HTTPAUTH,CURLAUTH_BASIC);
curl_setopt($curl,CURLOPT_URL,$url);
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
if(curl_exec($curl)){
$result = true;
}else{
$result = false;
}
curl_close($curl);
return $result;
}
function get_months_name($mm){
$month_num = intval($mm);
$month_name = date("F",mktime(0,0,0,$month_num,10));
return $month_name;
}
function get_month_num($mnth){
$mnth_num=0;
switch ($mnth) {
case "January":
$mnth_num = 1;
break;
case "February":
$mnth_num = 2;
break;
case "March":
$mnth_num = 3;
break;
case "April":
$mnth_num = 4;
break;
case 'May':
$mnth_num = 5;
break;
case 'June':
$mnth_num = 6;
break;
case 'July':
$mnth_num = 7;
break;
case 'August':
$mnth_num = 8;
break;
case 'September':
$mnth_num = 9;
break;
case 'October':
$mnth_num = 10;
break;
case 'November':
$mnth_num = 11;
break;
case 'December':
$mnth_num = 12;
break;
default:
$mnth_num = 0;
}
return $mnth_num;
}
function get_month($mnth){
$mnth_of="";
switch ($mnth) {
case 1:
$mnth_of = "January";
break;
case 2:
$mnth_of = "February";
break;
case 3:
$mnth_of = "March";
break;
case 4:
$mnth_of = "April";
break;
case 5:
$mnth_of = 'May';
break;
case 6:
$mnth_of ='June';
break;
case 7:
$mnth_of = 'July';
break;
case 8:
$mnth_of = 'August';
break;
case 9:
$mnth_of = 'September';
break;
case 10:
$mnth_of = 'October';
break;
case 11:
$mnth_of = 'November';
break;
case 12:
$mnth_of = 'December';
break;
default:
$mnth_of = "";
}
return $mnth_of;
}
function get_exam_name($exam_no)
{
$exam="";
switch ($exam_no)
{
case 1:
$exam = "Secondary";
break;
case 2:
$exam = "Senior Secondary";
break;
default:
$exam = "None";
}
return $exam;
}
function convert_number_to_words($number) {
$hyphen = '-';
$conjunction = ' and ';
$separator = ' ';
$negative = 'negative ';
$decimal = ' point ';
$dictionary = array(
0 =>'zero',
1 =>'one',
2 =>'two',
3 =>'three',
4 =>'four',
5 =>'five',
6 =>'six',
7 =>'seven',
8 =>'eight',
9 =>'nine',
10 =>'ten',
11 =>'eleven',
12 =>'twelve',
13 =>'thirteen',
14 =>'fourteen',
15 =>'fifteen',
16 =>'sixteen',
17 =>'seventeen',
18 =>'eighteen',
19 =>'nineteen',
20 =>'twenty',
30 =>'thirty',
40 =>'fourty',
50 =>'fifty',
60 =>'sixty',
70 =>'seventy',
80 =>'eighty',
90 =>'ninety',
100 =>'hundred',
1000 =>'thousand',
1000000 =>'million',
1000000000 =>'billion',
1000000000000 =>'trillion',
1000000000000000 =>'quadrillion',
1000000000000000000 =>'quintillion'
);
if (!is_numeric($number)){
return false;
}
if (($number >= 0 &&(int) $number <0) ||(int) $number <0 -PHP_INT_MAX){
trigger_error(
'convert_number_to_words only accepts numbers between -'.PHP_INT_MAX .' and '.PHP_INT_MAX,
E_USER_WARNING
);
return false;
}
if ($number <0) {
return $negative .convert_number_to_words(abs($number));
}
$string = $fraction = null;
if (strpos($number,'.') !== false) {
list($number,$fraction) = explode('.',$number);
}
switch (true) {
case $number <21:
$string = $dictionary[$number];
break;
case $number <100:
$tens = ((int) ($number / 10)) * 10;
$units = $number %10;
$string = $dictionary[$tens];
if ($units) {
$string .= $hyphen .$dictionary[$units];
}
break;
case $number <1000:
$hundreds = $number / 100;
$remainder = $number %100;
$string = $dictionary[$hundreds] .' '.$dictionary[100];
if ($remainder) {
$string .= $conjunction .convert_number_to_words($remainder);
}
break;
default:
$baseUnit = pow(1000,floor(log($number,1000)));
$numBaseUnits = (int) ($number / $baseUnit);
$remainder = $number %$baseUnit;
$string = convert_number_to_words($numBaseUnits) .' '.$dictionary[$baseUnit];
if ($remainder) {
$string .= $remainder <100 ?$conjunction : $separator;
$string .= convert_number_to_words($remainder);
}
break;
}
if(null !== $fraction &&is_numeric($fraction)){
$string .= $decimal;
$words = array();
foreach (str_split((string) $fraction) as $number){
$words[] = $dictionary[$number];
}
$string .= implode(' ',$words);
}
return $string;
}
function input_date($date){
$date = str_replace('/','-',$date);
$date = new DateTime($date);
$dt2=$date->format('Y-m-d');
return $dt2;
}
function output_date($date){
$date = str_replace('/','-',$date);
$date = new DateTime($date);
$dt2=$date->format('d-m-Y');
return $dt2;
}
function st_date_differ($old_date,$new_date){
$date1=date_create($old_date);
$date2=date_create($new_date);
$diff=date_diff($date1,$date2);
return intval($diff->format("%R%a"));
}
function unique_otp($l = 4){return strtoupper(substr(md5(uniqid(mt_rand(),true)),0,$l));}
function round_to_2dp($number){return number_format((float)$number,2,'.','');}
function compress_image($source_url,$destination_url,$quality) {
$info = getimagesize($source_url);
if($info['mime'] == 'image/jpeg') $image = imagecreatefromjpeg($source_url);
elseif($info['mime'] == 'image/jpg') $image = imagecreatefromjpeg($source_url);
elseif($info['mime'] == 'image/gif') $image = imagecreatefromgif($source_url);
elseif($info['mime'] == 'image/png') $image = imagecreatefrompng($source_url);
if(isset($image)) imagejpeg($image,$destination_url,$quality);
return $destination_url;
}
function random_str($length,$keyspace = '12ABCDE5678GHJKLM415NPQR349STV8524WXYZ'){
$pieces = [];
$max = mb_strlen($keyspace,'8bit') -1;
for ($i = 0;$i <$length;++$i){
$pieces []= $keyspace[rand(0,$max)];
}
return implode('',$pieces);
}
function st_calculate_future_date($given_date,$plus_yr){
$yearArr = explode('-',$given_date);$yyy =intval($yearArr);$yyy2 =(intval($yearArr)+intval($plus_yr));$leapYrCount=0;
for($y=$yyy;$y<=$yyy2;$y++){if((intval($y)%4)==0){$leapYrCount++;}}
$days_num = ((365*intval($plus_yr))+$leapYrCount);
$dateString = $given_date.' 09:22:34';
$dt = new DateTime($dateString);
$dt->modify('+'.$days_num.' days');
return $dt->format('Y-m-d');
}
function st_get_days_in_month($month_no,$year_no){
if(intval($month_no==1)||intval($month_no==3)||intval($month_no==5)||intval($month_no==7)||intval($month_no==8)||intval($month_no==10)||intval($month_no==12)){
$days=31;
}elseif(intval($month_no)==2){
if((intval($year_no)%4)==0){$days=29;}else{$days=28;}
}
else{$days=30;}
return $days;
}
function days_btwn_two_dates($from_dt,$to_dt){
$date1=date_create($from_dt);
$date2=date_create($to_dt);
$diff=date_diff($date1,$date2);
$days = intval($diff->format("%R%a"));
return $days;
}
function get_last_week_avl_amount_details($mysqli)
{
$total_credit=0;
$total_debit=0;
$avl_bal=0;
$return=[];
$sql1="SELECT * FROM `add_payment` WHERE `c_or_d`=0 AND `pay_date` BETWEEN date_sub(now(),INTERVAL 1 WEEK) and now()";
$sql2="SELECT * FROM `add_payment` WHERE `c_or_d`=1 AND `pay_date` BETWEEN date_sub(now(),INTERVAL 1 WEEK) and now()";
$result1 = $mysqli->query($sql1);
$result2 = $mysqli->query($sql2);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_debit=$total_debit+$data1['amt'];}
}
if(mysqli_num_rows($result2))
{
while($data2=$result2->fetch_assoc())
{$total_credit=$total_credit+$data2['amt'];}
}
$avl_bal=$total_credit-$total_debit;
$return[0]=$total_credit;
$return[1]=$total_debit;
$return[2]=$avl_bal;
return $return;
}
function get_last_month_avl_amount_details($mysqli)
{
$total_credit=0;
$total_debit=0;
$avl_bal=0;
$return=[];
$sql1="SELECT * FROM `add_payment` WHERE `c_or_d`=0 AND `pay_date` BETWEEN date_sub(now(),INTERVAL 1 MONTH) and now()";
$sql2="SELECT * FROM `add_payment` WHERE `c_or_d`=1 AND `pay_date` BETWEEN date_sub(now(),INTERVAL 1 MONTH) and now()";
$result1 = $mysqli->query($sql1);
$result2 = $mysqli->query($sql2);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_debit=$total_debit+$data1['amt'];}
}
if(mysqli_num_rows($result2))
{
while($data2=$result2->fetch_assoc())
{$total_credit=$total_credit+$data2['amt'];}
}
$avl_bal=$total_credit-$total_debit;
$return[0]=$total_credit;
$return[1]=$total_debit;
$return[2]=$avl_bal;
return $return;
}
function get_added_balance_details($mysqli)
{
$total_cash=0;
$total_accnt_bal=0;
$total_added_bal=0;
$avl_trans_bal=0;
$total_avl_balance=0;
$return=[];
$st_sql="SELECT * FROM `add_self_balance` WHERE 1";
$sql1=$st_sql." AND `add_balance_in`=0";
$sql2=$st_sql." AND `add_balance_in`=1";
$total_cash=get_payment_amount_details($mysqli,$sql1)[2];
$total_accnt_bal=get_payment_amount_details($mysqli,$sql2)[2];
$total_added_bal=$total_cash+$total_accnt_bal;
$avl_trans_bal=get_payment_avl_balance($mysqli,date("Y-m-d"));
$total_avl_balance=$total_added_bal+$avl_trans_bal;
$return[0]=$total_cash;
$return[1]=$total_accnt_bal;
$return[2]=$total_added_bal;
$return[3]=$total_avl_balance;
return $return;
}
function get_payment_amount_details($mysqli,$st_sql)
{
$total_credit=0;
$total_debit=0;
$avl_bal=0;
$return=[];
$sql1=$st_sql." AND `c_or_d`=0";
$sql2=$st_sql." AND `c_or_d`=1";
$result1 = $mysqli->query($sql1);
$result2 = $mysqli->query($sql2);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_debit=$total_debit+$data1['amt'];}
}
if(mysqli_num_rows($result2))
{
while($data2=$result2->fetch_assoc())
{$total_credit=$total_credit+$data2['amt'];}
}
$avl_bal=$total_credit-$total_debit;
$return[0]=$total_credit;
$return[1]=$total_debit;
$return[2]=$avl_bal;
return $return;
}
function get_loan_amount_details($mysqli,$st_sql)
{
$total_amt=0;
$return=[];
$result1 = $mysqli->query($st_sql);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_amt=$total_amt+$data1['amt'];}
}
$return[0]=$total_amt;
return $return;
}
function get_received_amount_details_by_unique_id($mysqli,$unique_id)
{
$st_sql="SELECT * FROM `instalment_payment` WHERE `unique_id`='$unique_id'";
$total_amt=0;
$return=[];
$result1 = $mysqli->query($st_sql);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_amt=$total_amt+$data1['amt'];}
}
$return[0]=$total_amt;
return $return;
}
function get_paid_amount_details_by_unique_id($mysqli,$unique_id)
{
$st_sql="SELECT * FROM `investment_data` WHERE `unique_id`='$unique_id' AND `status`=1";
$total_amt=0;
$return=[];$result1 = $mysqli->query($st_sql);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_amt=$total_amt+$data1['amt'];}
}
$return[0]=$total_amt;
return $return;
}
function get_payment_amount_details_base_c_or_d($mysqli,$st_sql,$c_or_d)
{
$total_credit=0;
$total_debit=0;
$total_amt=0;
$return=[];
$result1 = $mysqli->query($st_sql);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_amt=$total_amt+$data1['amt'];}
}
if($c_or_d>0)
{
$total_credit=$total_amt;
}
else{
$total_debit=$total_amt;
}
$return[0]=$total_credit;
$return[1]=$total_debit;
return $return;
}
function get_payment_avl_balance($mysqli,$to)
{
$total_credit=0;
$total_debit=0;
$avl_bal=0;
$sql1="SELECT * FROM `add_payment` WHERE `c_or_d`=0 AND `pay_date`<='$to'";
$sql2="SELECT * FROM `add_payment` WHERE `c_or_d`=1 AND `pay_date`<='$to'";
$result1 = $mysqli->query($sql1);
$result2 = $mysqli->query($sql2);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_debit=$total_debit+$data1['amt'];}
}
if(mysqli_num_rows($result2))
{
while($data2=$result2->fetch_assoc())
{$total_credit=$total_credit+$data2['amt'];}
}
$avl_bal=$total_credit-$total_debit;
return $avl_bal;
}
function get_payment_method_avl_balance($mysqli,$to,$payment_method)
{
$total_credit=0;
$total_debit=0;
$avl_bal=0;
$return=[];
$sql1="SELECT * FROM `add_payment` WHERE `c_or_d`=0 AND `pay_date`<='$to'AND `payment_method`='$payment_method'";
$sql2="SELECT * FROM `add_payment` WHERE `c_or_d`=1 AND `pay_date`<='$to' AND `payment_method`='$payment_method'";
$result1 = $mysqli->query($sql1);
$result2 = $mysqli->query($sql2);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_debit=$total_debit+$data1['amt'];}
}
if(mysqli_num_rows($result2))
{
while($data2=$result2->fetch_assoc())
{$total_credit=$total_credit+$data2['amt'];}
}
$avl_bal=$total_credit-$total_debit;
$return[0]=$total_credit;
$return[1]=$total_debit;
$return[2]=$avl_bal;
return $return;
}
function get_on_assets_cost($mysqli,$to,$exp_name_id)
{
$total_credit=0;
$total_debit=0;
$avl_bal=0;
$return=[];
$sql1="SELECT * FROM `add_payment` WHERE `c_or_d`=0 AND `pay_date`<='$to'AND `exp_name_id`='$exp_name_id'";
$result1 = $mysqli->query($sql1);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_debit=$total_debit+$data1['amt'];}
}
$return[0]=$total_credit;
$return[1]=$total_debit;
$return[2]=$avl_bal;
return $return;
}
function get_payment_method_details($mysqli,$st_sql,$c_or_d,$payment_method)
{$total_credit=0;
$total_debit=0;
$avl_bal=0;
$total_amt=0;
$return=[];
if($c_or_d==2)
{
$sql1=$st_sql." AND `c_or_d`=0 AND `payment_method`='$payment_method'";
$sql2=$st_sql." AND `c_or_d`=1 AND `payment_method`='$payment_method'";
$result1 = $mysqli->query($sql1);
$result2 = $mysqli->query($sql2);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_debit=$total_debit+$data1['amt'];}
}
if(mysqli_num_rows($result2))
{
while($data2=$result2->fetch_assoc())
{$total_credit=$total_credit+$data2['amt'];}
}
}
else{
$st_sql.=" AND `payment_method`='$payment_method'";
$result1 = $mysqli->query($st_sql);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{$total_amt=$total_amt+$data1['amt'];}
}
if($c_or_d>0)
{
$total_credit=$total_amt;
}
else{
$total_debit=$total_amt;
}
}
$return[0]=$total_credit;
$return[1]=$total_debit;
$return[2]=$total_credit-$total_debit;
return $return;
}
function get_added_payment_method($mysqli,$sql_st)
{
$all_payment_method=[];
$result1 = $mysqli->query($sql_st);
if(mysqli_num_rows($result1))
{
while($data1=$result1->fetch_assoc())
{
if(!in_array($data1['payment_method'],$all_payment_method))
{
array_push($all_payment_method,$data1['payment_method']);
}
}
}
return $all_payment_method;
}
function get_this_month_collections_payable($mysqli)
{
$total_amt=0;
$todayDate = date('Y-m-d');
$return=[];
$month = date('n',strtotime($todayDate));
$sql="SELECT `emi_rate` FROM `investment_data` WHERE (`emi_start_date`<='$todayDate' OR MONTH(`emi_start_date`)=$month) AND `emi_end_date`>='$todayDate' AND `active_status`=1 AND `status`=1";
$result = $mysqli->query($sql);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
$total_amt=$total_amt+$data['emi_rate'];
}
}
$return[0]=$total_amt;
return $return;
}
function get_this_month_collections_paid($mysqli)
{
$total_amt=0;
$todayDate = date('Y-m-d');
$return=[];
$month = date('n',strtotime($todayDate));
$sql="SELECT SUM(`amt`) AS `total_amt` FROM `instalment_payment` WHERE MONTH(`paid_date`)=$month";
$result = $mysqli->query($sql);
$data=$result->fetch_assoc();
$total_amt=$data['total_amt'];
$return[0]=$total_amt;
return $return;
}
function get_alphabet_ny_no($no=0){
$alphabet = array('0','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
if(isset($alphabet[$no])){$result=$alphabet[$no];}else{$result='';}
return $result;
}
function diffMonth($from,$to) {
$d1 = new DateTime($from);
$d2 = new DateTime($to);
$diff=$d1->diff($d2)->m +($d1->diff($d2)->y*12);
return $diff;
}
function total_EMI_payable_till_today($mysqli)
{
$return=[];
$total_till_this_month_payable=0;$total_emi_recived_amt=0;
$rest_pay_this_month=0;
$rest_pay=0;
$total_received=0;
$total_payable=0;
$sql_st="SELECT * FROM `investment_data` WHERE `active_status`=1 AND `status`=1";
$result = $mysqli->query($sql_st);
if(mysqli_num_rows($result))
{
while($data=$result->fetch_assoc())
{
if($data['emi_end_date']>=date('Y-m-d'))
{
$last_date=date('Y-m-d');
}
else{
$last_date=$data['emi_end_date'];
}
$total_duration_months=diffMonth($data['emi_start_date'],$data['emi_end_date'])+1;
$test_total_payable=$total_duration_months*$data['emi_rate'];
$num_month_emi=diffMonth($data['emi_start_date'],$last_date)+1;
if($test_total_payable<=$data['return_amt'] &&$data['active_status']==1)
{
$total_till_this_month_payable=$data['emi_rate']*$num_month_emi;
$total_emi_recived_amt=get_received_amount_details_by_unique_id($mysqli,$data['unique_id'])[0];
$rest_pay_this_month=$total_till_this_month_payable-$total_emi_recived_amt;
}
$rest_pay=$rest_pay+$rest_pay_this_month;
$total_received=$total_received+$total_emi_recived_amt;
$total_payable=$total_payable+$total_till_this_month_payable;
$total_till_this_month_payable=0;
$total_emi_recived_amt=0;
$rest_pay_this_month=0;
}
}
$return[0]=$total_payable;
$return[1]= $total_received;
$return[2]=$rest_pay;
return $return;
}
function get_user($mysqli,$id){
$selectuser = $mysqli->query("SELECT * FROM `users` WHERE `u_id` = '$id'");
$user_fetch = $selectuser->fetch_assoc() ;
return $user_fetch;
}
;
Did this file decode correctly?
Original Code
<?php /* This file is protected by copyright law and provided under license. Reverse engineering of this file is strictly prohibited. */$OOO000000=urldecode('%66%67%36%73%62%65%68%70%72%61%34%63%6f%5f%74%6e%64');$OOO0000O0=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5};$OOO0000O0.=$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};$OOO0000O0.=$OOO0000O0{3}.$OOO000000{11}.$OOO000000{12}.$OOO0000O0{7}.$OOO000000{5};$OOO000O00=$OOO000000{0}.$OOO000000{12}.$OOO000000{7}.$OOO000000{5}.$OOO000000{15};$O0O000O00=$OOO000000{0}.$OOO000000{1}.$OOO000000{5}.$OOO000000{14};$O0O000O0O=$O0O000O00.$OOO000000{11};$O0O000O00=$O0O000O00.$OOO000000{3};$O0O00OO00=$OOO000000{0}.$OOO000000{8}.$OOO000000{5}.$OOO000000{9}.$OOO000000{16};$OOO00000O=$OOO000000{3}.$OOO000000{14}.$OOO000000{8}.$OOO000000{14}.$OOO000000{8};$OOO0O0O00=__FILE__;$OO00O0000=0xe310;eval($OOO0000O0('JE8wMDBPME8wMD0kT09PMDAwTzAwKCRPT08wTzBPMDAsJ3JiJyk7JE8wTzAwT08wMCgkTzAwME8wTzAwLDB4NTBhKTskT08wME8wME8wPSRPT08wMDAwTzAoJE9PTzAwMDAwTygkTzBPMDBPTzAwKCRPMDAwTzBPMDAsMHgxN2MpLCdzb3VyYXYxMjNWQVJVT1NCYkNjRGRFZUZmR2dIaElpSmpLa0xsTW1OblBwUXFUdFd3WHhZeVp6MDQ1Njc4OSsvPScsJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8nKSk7ZXZhbCgkT08wME8wME8wKTs='));return;?>yL{gmkqOUQbT@ehu}F|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3LqAJbPMH2OM31MmAuCKf0CPImMyiDy9UklAiwnlh0vqF0vZGcs93u3jEEoabECv31oKG1CJh1v5HeEtI1sjdyEdrbnj3usj3usj3usj3uojh2VWgmELIv9PG1sj3usj3us93uhlh2VWgmELIv9PGuhqrbnj3usj3usj3usj3uojGFKwFz5KHeEJgeCj3usj3us93usjVxCPHNGMh0CJI2MwGchqrbnj3usj3usj3usj3uojh1v5FzCKI1Ej3usj3usjBcsjVxCPHNGMh0CJG1vyGchqrbnj3usj3usj3usj3uojh1v5HeEtIv9lfFMj3usj3usj3ryj3usNV2oKieZMHNCJG1v5VxwOuksj3usj3usj3usj31owfFMTGe5yFzZMI1KWG1sj3usj3usjBcsj3uhlh1v5HeEtIv9TGFCnHzbNRsyA3usj3usj3usj3usjf1vTI1sj3usj3usjBcsj3uhlfeZyVxwOuksj3usj3usj3usj31owGFVYHz5JHmvTGesj3usj3usjBcsj3uhlf0EYI19TGFVJHmvTGchqrbnj3usj3usj3usj3uojfZ9WhM9lfusj3usj3us93usjVYsNRsyA3usj3usj3usj3usjf1ZYGzsj3usj3usjBcsj3uhlhzELIFVPI2MJI1vQGe4N3vI3CEVvrbnj3usj3usj3usj3uojge5zGFOyFzMlfusj3usj3us93usjVxCPHNGMh0CJgebN3LqAJbnlhFEMhNljBcslHFMYheXPRD5XIeExicjlh0vqF0vZGcl7uNVMI2ExHkslhFEMhNl7uNyAGNEtf0CPHz4jHevtfeIMFzMth0CKH1XTGe5yF0Cxfe5YfeOyge9thxjlHFMYheXPRuCwhm9pGeOyFzMlRuCPHNGMh0CJI2MwGcwlge5zGFOyFzCKI1dqV1OZh0CWHeExFz5KHedqukCKHFbqV2oKieZMHNCJHeEyg19lRuCYGeOZhmMyiE9yfeTMHkwlge5YI1vqH1ZMHNCJgebqV1vLI1MzgFC5AbP7ukCygeZMh0CKHFs9G1vyGcjkecZTRebjcrPPSNUkADqAV2oKieZMHNCJG1v5BeCKI1dnVy4NR2OyhNCWI1MTGcjlge5zGFOyFzCKI1dPADqAgefnV1vLI1MzgFC5BDyXAbP7ukCYheXJhFEM3ryj3koVDMOvdMbjcd5dDxojfeClF0oKieZMHNCj3vOvEsyA3usj3usj3usj3usjf2oxHzPMf0CJgeCj3usj3usjBcsNV2oxHzPMf0CJgebNRsyA3usj3usj3usj3usjf1E4hv9tfeZMFzMlfusj3usjBcsj3uhlge5zGFOyF0C5h1dNRsyA3usj3usj3usj3usjf2oKiE9lfFCMfusj3usj3ryj3uhlge5zGFOyFzCKI1dNRsyA3usj3usj3usj3usjf2oKieZMHNCJG1v5fusj3usj3us93usjVxCwfFMTGe5yFzCKichqrbnj3usj3usj3usj3uojh1v5HeEtIv9TGFCnHzCj3usj3usj3ryj3usNV2oKieZMHNCJHeEyg19lVxwOuksj3usj3usj3usj31oKHFCj3usj3usj3ryj3usNV1vTIuhqrbnj3usj3usj3usj3uojh1Exhz9tFz5KHeEj3usj3usj3ryj3usNV1OZh0CWHeExFz5KHedNRsyA3usj3usj3usj3usjf1OJH0VJG1sj3usj3usjBcsj3uhXVxwOuksj3usj3usj3usj31oThzIj3usj3usj3ryj3usNV2OMf0ExgFC5F0CKgzEtVxwOuksj3usj3usj3usj31oPHNOyfeXqHeEtIv9PG1sj3usj3usjBcsj3uhlge5YI1vqH1ZMHNCJgebNRsyA3usj3usj3usj3usjf1OxGevyGeCJfFCjBchlI1MTGFOyfeZwVx37uNyAGeXYGcoPGkjlfeOygFGPI2l9BD3PuNqAV2OXHv9XIedjBcsk3vEbCavdCcojfeClF0oKieZMHNCj3vOvEsyA3usj3usj3usj3usjf2oxHzPMf0CJgeCj3usj3usjBcsNV2oxHzPMf0CJgebNRsyA3usj3usj3usj3usjf1E4hv9tfeZMFzMlfusj3usjBcsj3uhlge5zGFOyF0C5h1dNRsyA3usj3usj3usj3usjf2oKiE9lfFCMfusj3usj3ryj3uhlge5zGFOyFzCKI1dNRsyA3usj3usj3usj3usjf2oKieZMHNCJG1v5fusj3usj3us93usjVxCwfFMTGe5yFzCKichqrbnj3usj3usj3usj3uojh1v5HeEtIv9TGFCnHzCj3usj3usj3ryj3usNV2oKieZMHNCJHeEyg19lVxwOuksj3usj3usj3usj31oKHFCj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Hz4jGzEyFzE4feZJHmvTGcjlGFKKHE9tHxlAiwnlGFKKHDyk3LqAh0IPI1On3ujlGFKKHE9tHxljuNqAfzvYGcsXSjnlGFKKHcs93uVDGeOWHmCKhNlkSwPkhmEKgYqAfzvYGcsxSjnlGFKKHcs93uVDGe5PH03jdzELHz5lfFV53LqAfNVMfeq7umCMGmvZH2b6ukCMi1vT3ryj3l5WHmdkSwP9uNVMI2ExHkslGFKKHDqAJbPmIe5LI1MWHkoLHz5zGFVyFz5ZHeVMhM9yHZ90H0VlhxjlHNETfmExAco7ukCniFonGe4j3usj3us93uhTVYqAV1OWHmPZHmOyge9t3ryjVxoKHmbjVYqAV2OMh1vxfFCWhksj3ryjVxsNSwnlHmENfFCPImdj3usjBcsNHmENfFCPImdjVYqAV1CMfzMTfewj3usj3ryjVxowHzMtIusNSwnlG1MLI1MWHmvxicsjBcoKhNVKicjAUusj3usj3usj3usj3usj3usj3us9BkI6GFVWVxwAUcsj3usj3usj3usj3usj3usj3us9BkIWHmdNRsnx3usj3usj3usj3usj3usj3usj3ry+V0C0HxhquLUj3usj3usj3usj3usj3usj3usjBD4NI1KxGedNRsny3usj3usj3usj3usj3usj3usj3ry+VzGWIF3NRsnZ3usj3usj3usj3usj3usj3usj3ry+VzGPImdNRsnz3usj3usj3usj3usj3usj3usj3ry+V0OPiuhquLhj3usj3usj3usj3usj3usj3usjBD4NhzEzGe4NRsn43usj3usj3usj3usj3usj3usj3ry+VzEPGzKyVxwAScsj3usj3usj3usj3usj3usj3us9BkItge5MVxwAUDsj3usj3usj3usj3usj3usj3us9BkIyGe4NRsnXUcsj3usj3usj3usj3usj3usj3ry+VzEqGFGMHkhquLax3usj3usj3usj3usj3usj3usjBD4NI2IMH2GMVxwAUDUj3usj3usj3usj3usj3usj3us9BkIyg1MxI1EMHkhquLay3usj3usj3usj3usj3usj3usjBD4NGm9ZhNCMGe4NRsnXOcsj3usj3usj3usj3usj3usj3ry+VzGPGNCMGe4NRsnXOksj3usj3usj3usj3usj3usj3ry+V0OPi2CMGe4NRsnXOxsj3usj3usj3usj3usj3usj3ry+V0OMImEtI1EMHkhquLa43usj3usj3usj3usj3usj3usjBD4NGeMNg2CMGe4NRsnXScsj3usj3usj3usj3usj3usj3ry+Vz5PHmEyGeEtVxwAULsj3usj3usj3usj3usj3usj3us9BkIyIzEtI2lNRsnYUusj3usj3usj3usj3usj3usj3ry+V0CngFVyichquLbw3usj3usj3usj3usj3usj3usjBD4NGm9ZhNC5VxwAODsj3usj3usj3usj3usj3usj3us9BkImgeGyichquLfw3usj3usj3usj3usj3usj3usjBD4NhzM4I2lNRsn0Uusj3usj3usj3usj3usj3usj3ry+V0OMImEtI2lNRsn4Uusj3usj3usj3usj3usj3usj3ry+VzEPGzKyichquLlw3usj3usj3usj3usj3usj3usjBD4NHmMtGFC5VxwAUDsw3usj3usj3usj3usj3usj3us9BkInIe5lhmElVxwAUDswUusj3usj3usj3usj3usj3us9BkIyg19ZhzvtGuhquLawUrswUrsj3usj3usj3usj3usjBD4NHeMqH1MWHkhquLawUrswUrswUrsj3usj3usj3usjBD4NfmMqH1MWHkhquLawUrswUrswUrswUrsj3usj3usjBD4NI2VPH1XPHz4NRsnXUrswUrswUrswUrswUrsw3usj3ry+V0vZfeCxgeXqge9tVxwAUDswUrswUrswUrswUrswUrswUus9BkIXIeMtI1MqH1MWHkhAADqAgefjAuvPhZ9tIeZMhmMLAuCtIeZkGF3PAFqAhmEyIFVt31GKH2OMSwP9umMm3ujnV15ZHeVMhks+Bcsw3ufmA1MtIuljV15ZHeVMhks8UuljJ2wnge5yAcslHNETfmEx3rww3uZbcvoJcd5dFyZoeuM7uNCxgeINGFVJGFVxH03nukILHz5zGFVyFz5ZHeVMhM9yHZ90H0VlhxoWHmX531vLfzEwI2UjHNETfmExhxokGFC0GeEt3uyNRMo3dv9VDMCJDdvf3u4N31vtGusNRMo3dv9VDMCJDdvfRsPvFZEDCEVJEyvcDlMSCwnPSwPxGFCZhm4jGmvqhzd7uNyAgefjAuCtIeZkGF3jBrsP32qAhmEyIFVt3uCtGeIKI1MzGcstfz9tImExIv9tIeZkGFVJ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\
Function Calls
fopen | 1 |
fread | 3 |
strtr | 2 |
fclose | 1 |
urldecode | 1 |
str_replace | 1 |
base64_decode | 3 |
Stats
MD5 | 751ecda9f8dc7f985048eb9bdfdfb19a |
Eval Count | 3 |
Decode Time | 122 ms |