|
Server : Apache System : Linux server.mata-lashes.com 3.10.0-1160.90.1.el7.x86_64 #1 SMP Thu May 4 15:21:22 UTC 2023 x86_64 User : matalashes ( 1004) PHP Version : 8.1.29 Disable Function : NONE Directory : /home/matalashes/.trash/app.bak300125/Libraries/Ps/ |
Upload File : |
<?php
namespace App\Libraries\Ps;
use Config\Services;
use Google;
class Mylib
{
public function getRandomBg($counter)
{
$bg1 = 'bg-danger';
$bg2 = 'bg-primary';
$bg3 = 'bg-warning';
$bg4 = 'bg-info';
$bg5 = 'bg-success';
$bg6 = 'bg-dark';
return ${'bg' . $counter};
}
public function getRandomFoodIcon()
{
$icon1 = 'fa-bread-slice';
$icon2 = 'fa-cheese';
$icon3 = 'fa-drumstick-bite';
$icon4 = 'fa-egg';
$icon5 = 'fa-hamburger';
$icon6 = 'fa-hotdog';
$icon7 = 'fa-apple-alt';
$icon8 = 'fa-ice-cream';
$icon9 = 'fa-pepper-hot';
$icon10 = 'fa-pizza-slice';
$number = rand(1, 10);
return ${'icon' . $number};
}
public function secure_id($id)
{
$encrypter = Services::encrypter();
try {
return bin2hex($encrypter->encrypt($id));
} catch (\Exception $e) {
return 'override404';
}
}
public function reveal_id($id)
{
if ($id != '') {
$encrypter = Services::encrypter();
try {
return $encrypter->decrypt(hex2bin($id));
} catch (\Exception $e) {
return 'override404';
}
}
}
public function check_last_uri()
{
$session = Services::session();
if ($session->get('current_uri') != $session->get('last_uri')) {
$session->set('sort-by', 'default');
$session->set('order', '');
$session->set('last_uri', $session->get('current_uri'));
}
}
public function getBaseDir($alc_url)
{
$mdl = $this->getNewModel('PsAdmListmenuChild');
$data = $mdl->where('alc_url', $alc_url)->first();
return $data->alc_basedir;
}
public function getOnlyControllersName()
{
return strtolower(explode('\\', service('router')->controllerName())[4]);
}
public function getNewModel($_model)
{
$class = '\App\Models\\' . ucwords($_model);
return new $class();
}
public function get_all_data($model, $is_where = false, $where_v1_var = '', $where_v1_op = '', $where_v1_string = '',
$is_where2 = false, $where_v2_var = '', $where_v2_op = '', $where_v2_string = '', $order_by = '', $sort = '')
{
$session = Services::session();
$mdl = $this->getNewModel($model['base_model']);
//Check if session active
if ($session->get('access') == 'master') {
if ($is_where) {
if (!$is_where2) {
if ($order_by != '') {
$_data = $mdl->where($where_v1_var . $where_v1_op . $where_v1_string)
->where('ps_store_id', $session->get('ps_store_id'))->where('deleted_at', null)->orderBy($order_by, $sort)->get()->getResult();
} else {
$_data = $mdl->where($where_v1_var . $where_v1_op . $where_v1_string)
->where('ps_store_id', $session->get('ps_store_id'))->where('deleted_at', null)->get()->getResult();
}
} else {
if ($order_by != '') {
$_data = $mdl::where($where_v1_var . $where_v1_op . $where_v1_string)
->where($where_v2_var . $where_v2_op . $where_v2_string)
->where('ps_store_id', $session->get('ps_store_id'))
->where('deleted_at', null)->orderBy($order_by, $sort)->get()->getResult();
} else {
$_data = $mdl::where($where_v1_var . $where_v1_op . $where_v1_string)
->where($where_v2_var . $where_v2_op . $where_v2_string)
->where('ps_store_id', $session->get('ps_store_id'))
->where('deleted_at', null)->get()->getResult();
}
}
} else {
if ($mdl->fieldExist('ps_store_id')) {
if ($order_by != '') {
$_data = $mdl->where('deleted_at', null)
->where('ps_store_id', $session->get('ps_store_id'))->orderBy('created_at', 'DESC')->get()->getResult();
} else {
$_data = $mdl->where('deleted_at', null)
->where('ps_store_id', $session->get('ps_store_id'))->orderBy('created_at', 'DESC')->get()->getResult();
}
} else {
if ($order_by != '') {
$_data = $mdl->where('deleted_at', null)->orderBy('created_at', 'DESC')->get()->getResult();
} else {
$_data = $mdl->where('deleted_at', null)->orderBy('created_at', 'DESC')->get()->getResult();
}
}
}
} else {
if ($is_where) {
if (!$is_where2) {
if ($order_by != '') {
$_data = $mdl->where($where_v1_var . $where_v1_op . $where_v1_string)->where('deleted_at', null)->orderBy($order_by, $sort)->get()->getResult();
} else {
$_data = $mdl->where($where_v1_var . $where_v1_op . $where_v1_string)->where('deleted_at', null)->get()->getResult();
}
} else {
if ($order_by != '') {
$_data = $mdl::where($where_v1_var . $where_v1_op . $where_v1_string)
->where($where_v2_var . $where_v2_op . $where_v2_string)
->where('deleted_at', null)->orderBy($order_by, $sort)->get()->getResult();
} else {
$_data = $mdl::where($where_v1_var . $where_v1_op . $where_v1_string)
->where($where_v2_var . $where_v2_op . $where_v2_string)
->where('deleted_at', null)->get()->getResult();
}
}
} else {
if ($order_by != '') {
$_data = $mdl->where('deleted_at', null)->orderBy($order_by, $sort)->get()->getResult();
} else {
$_data = $mdl->where('deleted_at', null)->get()->getResult();
}
}
}
$data = array(
'_data' => $_data
);
return $data;
}
public function get_all_trash($model)
{
$session = Services::session();
$mdl = $this->getNewModel($model);
if ($mdl->fieldExist('ps_store_id') && $session->has('ps_store_id')) {
$ps_store_id = $session->get('ps_store_id');
$_data = $mdl->onlyDeleted()->where('ps_store_id', $ps_store_id)->get()->getResult();
}else{
$_data = $mdl->onlyDeleted()->findAll();
}
$data = array(
'_data' => $_data
);
return $data;
}
public function generate_random_code($prefix = '', $suffix = '')
{
$length = max(1, 15);
$split = max(0, 15);
$splitChar = '-';
$charset = 'abcdefghijklmnopqrstuvwxyz0123456789';
$charset = str_split($charset);
$code = '';
for ($i = 0; $i < $length; $i++) {
$char = $charset[array_rand($charset)];
if ($split > 0 && $i % $split == 0 && $i != 0) {
$char = "{$splitChar}{$char}";
}
$code .= $char;
}
$code = "{$prefix}{$code}{$suffix}";
return $code;
}
public function sendMail($email_config)
{
$this->CI->load->library('email');
$config['protocol'] = "smtp";
$config['smtp_host'] = $email_config['host'];
$config['smtp_port'] = $email_config['port'];
$config['smtp_user'] = $email_config['user'];
$config['smtp_pass'] = $email_config['pass'];
$config['charset'] = "iso-8859-1";
$config['mailtype'] = "html";
$config['newline'] = "\r\n";
$this->CI->email->initialize($config);
$this->CI->email->from($email_config['sender'], $email_config['header']);
$this->CI->email->to($email_config['sendto']);
$this->CI->email->subject($email_config['subject']);
$this->CI->email->message($email_config['message']);
if ($this->CI->email->send()) {
return 'Email sent.';
} else {
return show_error($this->email->print_debugger());
}
}
function convertmonth($num)
{
if ($num == 1)
return 'Januari';
else if ($num == 2)
return 'Februari';
else if ($num == 3)
return 'Maret';
else if ($num == 4)
return 'April';
else if ($num == 5)
return 'Mei';
else if ($num == 6)
return 'Juni';
else if ($num == 7)
return 'Juli';
else if ($num == 8)
return 'Agustus';
else if ($num == 9)
return 'September';
else if ($num == 10)
return 'Oktober';
else if ($num == 11)
return 'November';
else if ($num == 12)
return 'Desember';
else
return '-';
}
function convertmonth_simple($num)
{
if ($num == 1)
return 'Jan';
else if ($num == 2)
return 'Feb';
else if ($num == 3)
return 'Mar';
else if ($num == 4)
return 'Apr';
else if ($num == 5)
return 'Mei';
else if ($num == 6)
return 'Jun';
else if ($num == 7)
return 'Jul';
else if ($num == 8)
return 'Agt';
else if ($num == 9)
return 'Sep';
else if ($num == 10)
return 'Okt';
else if ($num == 11)
return 'Nov';
else if ($num == 12)
return 'Des';
}
function converttoordernumber($bulan)
{
$result = 0;
if ($bulan >= 7) {
$result = $bulan - 6;
} else {
$result = $bulan + 6;
}
return $result;
}
function createEnumArray($table_name, $column_name)
{
$db = \Config\Database::connect();
$query = 'SHOW COLUMNS FROM ' . $table_name . ' WHERE field = "' . $column_name . '"';
$type = $db->query($query)->getRow()->Type;
$enumList = explode(",", str_replace("'", "", substr($type, 5, (strlen($type) - 6))));
return $enumList;
}
public function calculate_date_diff_now($value)
{
$date1 = date_create($value);
$date2 = date_create(date("Y-m-d"));
$interval = date_diff($date1, $date2);
$masa = $interval->format('%y Tahun %m Bulan %d Hari');
return $masa;
}
function round_to_year_month($start, $end)
{
$interval = ceil(abs(strtotime(date("Y-m-d", strtotime($end))) - strtotime(date("Y-m-d", strtotime($start)))) / 86400) + 1;
$_y = intval($interval / 365);
$_m = round(($interval % 365) / 30, 0);
return $_y . ' Tahun ' . $_m . ' Bulan';
}
function date_format($value)
{
return $value ? date('d M Y', strtotime($value)) : '';
}
function date_indonesia($value)
{
$bulan = array(
1 => 'Januari',
2 => 'Februari',
3 => 'Maret',
4 => 'April',
5 => 'Mei',
6 => 'Juni',
7 => 'Juli',
8 => 'Agustus',
9 => 'September',
10 => 'Oktober',
11 => 'November',
12 => 'Desember'
);
$temp = explode('-', $value);
return $temp[2] . ' ' . $bulan[(int)$temp[1]] . ' ' . $temp[0];
}
function date_indonesia_m_y($value)
{
$bulan = array(
1 => 'Januari',
2 => 'Februari',
3 => 'Maret',
4 => 'April',
5 => 'Mei',
6 => 'Juni',
7 => 'Juli',
8 => 'Agustus',
9 => 'September',
10 => 'Oktober',
11 => 'November',
12 => 'Desember'
);
$temp = explode('-', $value);
return $bulan[(int)$temp[1]] . ' ' . $temp[0];
}
function convertmonthromawi($num)
{
if ($num == 1)
return 'I';
else if ($num == 2)
return 'II';
else if ($num == 3)
return 'III';
else if ($num == 4)
return 'IV';
else if ($num == 5)
return 'V';
else if ($num == 6)
return 'VI';
else if ($num == 7)
return 'VII';
else if ($num == 8)
return 'VIII';
else if ($num == 9)
return 'IX';
else if ($num == 10)
return 'X';
else if ($num == 11)
return 'XI';
else if ($num == 12)
return 'XII';
}
public function converturitoaction($uri)
{
if ($uri == 'add') {
return 1;
} else if (strpos($uri, 'edit')) {
return 2;
} else if ($uri == 'delete') {
return 3;
}
}
public function verify_reCaptchaV2($response)
{
$secret = '6LfvinspAAAAAEEfw0oJTy7A1QtTRHkC_GT9oLTN';
$credential = array(
'secret' => $secret,
'response' => $response
);
$verify = curl_init();
curl_setopt($verify, CURLOPT_URL, "https://www.google.com/recaptcha/api/siteverify");
curl_setopt($verify, CURLOPT_POST, true);
curl_setopt($verify, CURLOPT_POSTFIELDS, http_build_query($credential));
curl_setopt($verify, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($verify, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($verify);
return json_decode($response, true);
}
public function custom_seo()
{
return array(
'current_url' => (isset($_SERVER['HTTPS']) ? "https://" : "http://") . "$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]",
'config_creator' => 'www.pintarstudio.com',
'config_logo' => '#',
'config_favicon' => base_url("assets/theme/default/images/favicon.ico"),
'config_name' => 'Pengelolaan Daftar Program Lister',
'config_description' => 'Pengelolaan Daftar Program Lister',
'config_app_keywords' => 'Pengelolaan Daftar Program Lister',
'config_app_keywords' => 'Pengelolaan Daftar Program Lister',
);
}
}