%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
<?php /** Functions **/ function pr($data) { echo '<pre>';print_r($data);echo '</pre>'; } function h($data) { return html_escape($data); } function view($view, $data=array(), $layout="default", $return=FALSE){ $ci =&get_instance(); $data['page_view'] =$view; $data['page_title'] =isset($data['page_title'])?$data['page_title']:SITE_NAME; if($layout){ $html=$ci->load->view('layouts/'.$layout, $data, TRUE); }else{ $html=$ci->load->view($view, $data, TRUE); } if($return){ return compress_html($html); }else{ echo compress_html($html); } } function compress_html($buffer) { $search = array( '/\>[^\S ]+/s', // strip whitespaces after tags, except space '/[^\S ]+\</s', // strip whitespaces before tags, except space '/(\s)+/s', // shorten multiple whitespace sequences '/<!--(.|\s)*?-->/' // Remove HTML comments ); $replace = array( '>', '<', '\\1', '' ); $buffer = preg_replace($search, $replace, $buffer); return $buffer; } function set_error_css($errors, $class='has-error', $errMsg=TRUE, $errBdr=TRUE, $parent='') { if(is_array($errors)){ echo "<script>"; $ids=""; foreach($errors as $k=>$v){ if($v) {$ids.="$parent [name='$k'],";} if($errMsg) {echo "jQuery('$parent [name=\"$k\"]').parent().append('<div class=\"text-danger ferr\">$v</div>');";} } if($ids){ $ids=substr($ids, 0, -1); if($errBdr) {echo "jQuery(\"$ids\").parent().addClass('$class');";} } echo "</script>"; } } function set_flash($msg, $key='tmp_flash') { $ci =&get_instance(); $ci->session->set_flashdata($key,$msg); } function get_flash($key='tmp_flash') { $ci =&get_instance(); return $ci->session->flashdata($key); } function encrypt_password($txt) { return hash_hmac('sha256', $txt, 'app[007]'); } function array_to_hidden_inputs($arr){ $str=""; foreach($arr as $k=>$v){ $str.='<input type="hidden" name="'.$k.'" value="'.$v.'" />'; } return $str; } function encode($arg) { return base64_encode($arg); } function decode($arg) { return base64_decode($arg); } function set_checked($cond=FALSE) { if($cond) {echo 'checked="checked"';} } function trim_array($arr){ if(!$arr) {return $arr;} foreach($arr as &$v){ if(!is_array($v)){$v=trim($v);} } return $arr; } function key_val_array($arr, $key, $val) { $ar=array(); if($arr and is_array($arr)){ foreach($arr as $d){ if($key and $d[$key]) {$ar[$d[$key]]=$d[$val];} else {$ar[]=$d[$val];} } } return $ar; } function group_array($arr, $key){ $result=array(); foreach($arr as $data){ $k = $data[$key]; if(isset($result[$k])) { $result[$k][]=$data; }else{ $result[$k]=array($data); } } return $result; } function make_groups_array($arr, $key1, $key2=''){ $rs = array(); foreach($arr as $data) { $k = $data[$key1]; if(isset($rs[$k])) { $rs[$k]['list'][]=$data; }else{ $rs[$k]['group'][$key1]=$data[$key1]; if($key2) {$rs[$k]['group'][$key2]=$data[$key2];} $rs[$k]['list']=array($data); } } return $rs; } function rename_key(&$array, $old_keys, $new_keys){ if(!is_array($array)){ return $array; } if(is_array($old_keys)){ foreach($new_keys as $k => $new_key){ if(isset($array[$old_keys[$k]])){ $array[$new_key]=$array[$old_keys[$k]]; unset($array[$old_keys[$k]]); } } }else{ if(isset($array[$old_keys])){ $array[$new_keys] = $array[$old_keys]; unset($array[$old_keys]); } } return $array; } function filter_value($post, $keys){ $data=array(); foreach($post as $k=>$v){ if(in_array($k, $keys)){ $data[$k]=$v; } } return $data; } function str_short($string='',$len=0) { $string=strip_tags($string); $tmp=substr($string,0,$len); if(strlen($string)<=$len) {return $string;} return trim($tmp).((strlen($string)<=$len)?'':'...'); } function get_ext($file_name='') { $fn=explode(".", $file_name); return end($fn); } function append_to_filename($fn='',$appendTxt='') { $fn=str_replace(" ", "-", $fn); $arr=explode(".", $fn); $ext=end($arr); $n=substr(str_replace(".".$ext,"",$fn), 0, 80); return $n.$appendTxt.".".$ext; } function to_date_format($T){ if(!$T) {return '';} if(!is_numeric($T) and is_date_blank($T)) {return '';} if(!is_numeric($T)) {$T=strtotime($T);} return date('Y-m-d H:i:s', $T); } function is_date_blank($date){ $date=trim($date); if(!$date || $date=="" || $date=="0000-00-00 00:00:00" || $date=="0000-00-00") {return TRUE;} } function is_valid_date($d, $format="d M Y"){ $d=trim($d); if(!$d){ return FALSE; } $nd=get_date($d, FALSE, $format); if($nd==$d){ return TRUE; } return FALSE; } function get_date($timestamp=FALSE, $long=FALSE, $format=''){ if($timestamp) { if(!is_numeric($timestamp) && is_date_blank($timestamp)) {return;} if(!is_numeric($timestamp)) {$timestamp=strtotime($timestamp);} if($format) {return date($format, $timestamp);} if($long) {return date('d M Y - h:i A',$timestamp);} else {return date('d M Y', $timestamp);} } } function currentDT(){ return date('Y-m-d H:i:s'); } function escape_str($data, $like=FALSE){ $ci=&get_instance(); if(is_array($data)) { $inf=array(); foreach($data as $field => $val){ if(!is_array($val)) {$inf[$field]=$ci->db->escape_str($val, $like);}else {$inf[$field]=$val;} } }else{ $inf=$ci->db->escape_str($data, $like); } return $inf; } function replace_special_chars($arg, $repW='-'){ return preg_replace('/[^a-zA-Z0-9_\-]/',$repW, $arg); } function replace_non_digits($str){ return preg_replace("/[^0-9]/", "", $str); } function fno($a){ return floatval($a.''); } function replace_null($arr) { if(!is_array($arr)){ if(is_null($arr)){ $arr=''; } }else{ foreach($arr as $k=>$v){ if(is_null($v)){ $arr[$k]=''; } } } return $arr; } function encode_html($arg){ return str_replace(array('<', '>'), array('<', '>'),$arg); } function encode_script($arg){ return str_replace(array('<script>', '</script>'), array('<script>', '</script>'),$arg); } function check_image_ext($filename){ if(in_array(strtolower(get_ext($filename)), array('jpg', 'jpeg', 'png', 'gif'))){ return TRUE; }else{ return FALSE; } } function check_doc_ext($filename){ if(in_array(strtolower(get_ext($filename)), array('pdf', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx'))){ return TRUE; }else{ return FALSE; } } function ext_type($filename) { $ext=strtolower(get_ext($filename)); $type=''; if($ext=='pdf') {$type='PDF';} elseif($ext=='doc' or $ext=='docx') {$type='WORD';} elseif($ext=='xls' or $ext=='xlsx') {$type='EXCEL';} elseif($ext=='ppt' or $ext=='pptx') {$type='POWER POINT';} elseif(check_image_ext($filename)) {$type='IMAGE';} return $type; } function del_file($file){ if(file_exists($file)) {unlink($file);} } function rename_exist_file($path, $file){ $file=str_replace(' ', '-', $file); if(file_exists($path.$file)) { $fn=str_replace(" ", "-", $file); $ext=end(explode(".", $fn)); $n=str_replace(".".$ext,"",$fn); $file=$n.'-'.time().".".$ext; } return $file; } function xml2array($xml) { return simplexml_load_string(file_get_contents($xml)); } function is_email($email) { return filter_var($email, FILTER_VALIDATE_EMAIL); } function set_session($sname, $val, $key=''){ if($key){ $_SESSION[$sname][$key]=$val; }else{ $_SESSION[$sname]=$val; } } function get_session($sname, $key=''){ if($key){ return isset($_SESSION[$sname][$key])?$_SESSION[$sname][$key]:''; }else{ return isset($_SESSION[$sname])?$_SESSION[$sname]:''; } } function delete_session($sname, $key=''){ if($key){ unset($_SESSION[$sname][$key]); }else{ unset($_SESSION[$sname]); } } function destroy_session() { session_destroy(); } function paging_links($data, $url, $activeClass = 'active', $sep = '') { if (!$data) { return; } $total_pages = $data['total_pages']; $cur_page = $data['cur_page']; $pages = array(); if ($total_pages > 1) { echo '<ul class="pagination">'; $qs = $_GET; if (substr($url, -1, 1) == '/') { $url = substr($url, 0, -1); } $qs['p']=$cur_page - 1; echo '<li class="page-item '.($cur_page<=1?'disabled':'').'"><a href="' . ($cur_page<=1?'javascript:;;':$url.'?'.http_build_query($qs)) . '" class="page-link"> < </a></li>'; for ($i = $data['page_start']; $i <= $data['page_end']; $i++) { $qs['p']=$i; $link = '<li class="page-item '.($cur_page == $i?$activeClass:'').'"><a href="' . $url . '?' .http_build_query($qs) . '" class="page-link">' . $i . '</a></li>'; echo $link; if ($sep and $i < $total_pages) { echo '' . $sep . ''; } } $qs['p']=$cur_page + 1; echo '<li class="page-item '.($cur_page>=$total_pages?'disabled':'').'"><a href="' . ($cur_page>=$total_pages?'javascript:;;':$url.'?'.http_build_query($qs)) . '" class="page-link"> > </a></li>'; echo '</ul>'; } } function next_prev_links($data, $url) { if(!$data) {return;} $cur_page=$data['cur_page']; $qs=$_GET; if(substr($url, -1, 1)=='/') {$url=substr($url, 0, -1);} $prevdis=$nextdis=''; if(!$data['isprev']) {$prevdis='disabled';} if(!$data['isnext']) {$nextdis='disabled';} $qs['p']=$cur_page - 1; $prev='<a class="btn btn-default '.$prevdis.'" href="'.$url.http_build_query($qs).'"><i class="fa fa-chevron-left"></i></a>'; $qs['p']=$cur_page + 1; $next='<a class="btn btn-default '.$nextdis.'" href="'.$url.http_build_query($qs).'"><i class="fa fa-chevron-right"></i></a>'; if($data['isprev'] or $data['isnext']) {echo $prev.' '.$next;} } function curl($url, $data=null) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); $output = curl_exec($ch); //$info = curl_getinfo($ch); curl_close($ch); return $output; } function get_lat_long($address) { $address = str_replace(" ","+",$address); $url = "http://maps.google.com/maps/api/geocode/json?address=$address&sensor=false"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_PROXYPORT, 3128); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); $response = curl_exec($ch); curl_close($ch); $response_a = json_decode($response); $lat = $response_a->results[0]->geometry->location->lat; $long = $response_a->results[0]->geometry->location->lng; return array("Lat"=>$lat,"Long"=>$long); } function send_email_sendgrid($to, $subject, $message, $fromname='', $fromemail=''){ if(ENVIRONMENT=='development'){ //return TRUE; } //$key="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"; $key=SEND_GRID_KEY; //$key=SendgridKey; if(!$fromname) {$fromname="Mudra Portal";} if(!$fromemail) {$fromemail="info@mudramittra.in";} require_once("sendgrid/sendgrid-php.php"); $email = new \SendGrid\Mail\Mail(); $email->setFrom($fromemail, $fromname); $email->setSubject($subject); $email->addTo($to); //$email->addCcs(array("sat.web1989@gmail.com"=>"Satyendra")); //$email->addContent("text/plain", "and easy to do anywhere, even with PHP"); $email->addContent("text/html", $message); $sendgrid = new \SendGrid($key); try { $response = $sendgrid->send($email); pr($response); return $response->statusCode()==202; } catch (Exception $e) { //echo 'Caught exception: '. $e->getMessage() ."\n"; } } function send_email_pepipost($to_emails, $subject, $message, $fromname='', $fromemail='', $replyto=''){ $fromname=$fromname?$fromname:'Sharda University'; $fromemail=$fromemail?$fromemail:'info@shardauniversity.com'; $replyto=$replyto?$replyto:'info@shardauniversity.com'; if(!$to_emails){ return; } if(is_string($to_emails)){ $to_emails=explode(",", $to_emails); } foreach($to_emails as $to){ $d=array ( 'personalizations' => array (0 => array ('recipient' => $to)), 'from' => array ('fromEmail' => $fromemail, 'fromName' => $fromname), 'replyToId'=>$replyto, 'subject' => $subject, 'content' => $message, ); $email_jason_data=json_encode($d); $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => "https://api.pepipost.com/v2/sendEmail", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => $email_jason_data, CURLOPT_HTTPHEADER => array( "api_key: c77184012dcf9bd5cd1886b4e0a2bb89", "content-type: application/json" ), )); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { //echo "cURL Error #:" . $err; } else { //echo $response; } } } function send_email_bkp($to, $subject, $message, $attachments=array(), $smtp=TRUE, $smtpdtl=array()){ if(ENVIRONMENT=='development'){ return TRUE; } send_email_pepipost($to, $subject, $message); return 1; if(!$smtpdtl){ $smtpdtl=array( 'host'=>'ssl://smtp.gmail.com', 'user'=> 'enquiry@sharda.ac.in',//'admissions@sharda.ac.in', 'pass'=> 'Enquiry@su16', //'SU@lp2015', 'port'=>'465', ); } $fromname="Sharda University"; $fromemail="info@sharda.ac.in"; $CI =& get_instance(); $CI->load->library('email'); $mail=$CI->email; $mail->clear(); $config['charset'] = 'utf-8'; $config['wordwrap'] = TRUE; $config['mailtype'] = 'html'; if($smtp){ $config['protocol'] = "smtp"; $config['smtp_host'] = $smtpdtl['host']; $config['smtp_user'] = $smtpdtl['user']; $config['smtp_pass'] = $smtpdtl['pass']; $config['smtp_port'] = $smtpdtl['port']; $config['_auth_smtp'] = TRUE; $config['newline'] = "\r\n"; $config['crlf'] = "\r\n"; } $mail->initialize($config); $mail->from($fromemail, $fromname); $mail->to($to); $mail->reply_to('noreply@harda.ac.in', $fromname); $mail->subject($subject); $mail->message($message); if($attachments and is_array($attachments)){ foreach($attachments as $f){ $mail->attach($f); } } $res=$mail->send(); //echo $mail->print_debugger(); return $res; } function send_email($to, $subject, $message, $attachments=array(), $smtp=TRUE, $smtpdtl=array(), $replyto=USER_EMAIL){ if(ENVIRONMENT=='development'){ //return TRUE; $to="sat.web1989@gmail.com"; //$to=['to'=>'sat.web1989@gmail.com', 'cc'=>'satyendrayadav1989@gmail.com,b2yadav12@gmail.com']; } if(is_array($to) && isset($to['to'])){ $cc=$to['cc']; $to=$to['to']; } send_email_pepipost($to, $subject, $message); return 1; if(!$smtpdtl){ /* $smtpdtl=array( 'host'=>'ssl://smtp.gmail.com', 'user'=> 'enquiry@sharda.ac.in',//'admissions@sharda.ac.in', 'pass'=> 'Enquiry@su16', //'SU@lp2015', 'port'=>'465', ); */ $smtpdtl=[ 'host'=>'smtp.sendgrid.net', 'user'=> 'apikey', 'pass'=> SEND_GRID_KEY, 'port'=>'587', ]; } $smtpdtl=[ 'host'=>'smtp.instaalerts.zone', 'user'=> 'Sharda_email', 'pass'=> 'Akashok636', 'port'=>'25', ]; $fromname="Sharda University"; //$fromemail="enquiry@sharda.ac.in"; $fromemail="admissions@sharda.ac.in"; //$fromemail="abc@sharda.ac.in"; $CI =& get_instance(); $CI->load->library('email'); $mail=$CI->email; $mail->clear(); $config['charset'] = 'utf-8'; $config['wordwrap'] = TRUE; $config['mailtype'] = 'html'; if($smtp){ $config['protocol'] = "smtp"; $config['smtp_host'] = $smtpdtl['host']; $config['smtp_user'] = $smtpdtl['user']; $config['smtp_pass'] = $smtpdtl['pass']; $config['smtp_port'] = $smtpdtl['port']; $config['_auth_smtp'] = TRUE; $config['newline'] = "\r\n"; $config['crlf'] = "\r\n"; } $mail->initialize($config); $mail->from($fromemail, $fromname); $mail->to($to); if($cc){ $mail->cc($cc); } if(!$replyto){ $replyto='info@shardauniversity.com'; } $replyto='admissions@sharda.ac.in'; $mail->reply_to($replyto, $fromname); $mail->subject($subject); $mail->message($message); if($attachments and is_array($attachments)){ foreach($attachments as $f){ $mail->attach($f); } } $res=$mail->send(); //echo $mail->print_debugger(); return $mail->print_debugger(); } function sendEmailSendGrid($to, $subject, $message, $attachments=array(), $smtp=TRUE, $smtpdtl=array(), $replyto=USER_EMAIL){ if(ENVIRONMENT=='development'){ return TRUE; //$to="sat.web1989@gmail.com"; //$to=['to'=>'sat.web1989@gmail.com', 'cc'=>'satyendrayadav1989@gmail.com,b2yadav12@gmail.com']; } //send_email_sendgrid($to, $subject, $message, "Sharda University", "global.apply@sharda.ac.in"); //return 1; send_email_pepipost($to, $subject, $message); return 1; if(is_array($to) && isset($to['to'])){ $cc=$to['cc']; $to=$to['to']; } //send_email_pepipost($to, $subject, $message); //return 1; if(!$smtpdtl){ /* $smtpdtl=array( 'host'=>'ssl://smtp.gmail.com', 'user'=> 'global.apply@sharda.ac.in', 'pass'=> 'SUGlobal@2021', 'port'=>'465', ); */ $smtpdtl=[ 'host'=>'smtp.sendgrid.net', 'user'=> 'apikey', 'pass'=> SEND_GRID_KEY, 'port'=>'587', ]; } $fromname="Sharda University"; $fromemail="global.apply@sharda.ac.in"; $CI =& get_instance(); $CI->load->library('email'); $mail=$CI->email; $mail->clear(); $config['charset'] = 'utf-8'; $config['wordwrap'] = TRUE; $config['mailtype'] = 'html'; if($smtp){ $config['protocol'] = "smtp"; $config['smtp_host'] = $smtpdtl['host']; $config['smtp_user'] = $smtpdtl['user']; $config['smtp_pass'] = $smtpdtl['pass']; $config['smtp_port'] = $smtpdtl['port']; $config['_auth_smtp'] = TRUE; $config['newline'] = "\r\n"; $config['crlf'] = "\r\n"; } $mail->initialize($config); $mail->from($fromemail, $fromname); $mail->to($to); if($cc){ $mail->cc($cc); } if(!$replyto){ $replyto='noreply@harda.ac.in'; } $mail->reply_to($replyto, $fromname); $mail->subject($subject); $mail->message($message); if($attachments and is_array($attachments)){ foreach($attachments as $f){ $mail->attach($f); } } $res=$mail->send(); //echo $mail->print_debugger(); return $res; } function get_words($str){ $words=array_unique(str_word_count($str, 1, '0123456789')); return $words; } function str_for_fulltext($k, $partsearch=FALSE, $allmatch=FALSE){ $c=array('/\(/', '/\)/', '/@/'); $r=array(':', ':', ':'); $words=get_words($k); if($words){ foreach($words as &$w){ if($allmatch){ $w='+'.$w; } if($partsearch and substr($k, 0,1)!='"' and substr($k, -1, 1)!='"'){ $w=$w.'*'; } } if($allmatch or $partsearch){ $k=implode(" ", $words); } } $k=rtrim($k, '-+()~'); $k=rtrim($k, '><'); $k=preg_replace($c, $r, $k); return $k; } function json_data($res){ header('Content-Type: application/json'); $res=$res?$res:array(); echo json_encode($res); die; } function add_jquery_ui(){ echo '<link href="'.THEME_URL.'plugins/jquery-ui/jquery-ui.min.css" rel="stylesheet" type="text/css"/>'; echo '<script src="'.THEME_URL.'plugins/jquery-ui/jquery-ui.min.js" type="text/javascript"></script>'; } /** Login **/ function not_logged_res(){ if(!IS_AJAX){ //redirect_not_logged(); } if(!USER_ID){ json_data(array('NotLogged'=>TRUE)); } } function redirect_logged() { if(USER_ID){ redirect(URL.'dashboard'); } } function redirect_not_logged() { if(!USER_ID){ redirect(URL); } } /** New */ function jsonData($res, $die=true){ header('Content-Type: application/json'); $res=$res?$res:array(); http_response_code($res['code']); echo json_encode($res, JSON_PARTIAL_OUTPUT_ON_ERROR); if($die){ die; } } function md5enc($str, $extraSalt=''){ return md5($str.SALT_KEY.$extraSalt); } function zeroFormatNo($no, $n=5){ return str_pad($no, $n, '0', STR_PAD_LEFT); } function calcAge($birth_date){ $dt2=date('Y-m-d'); $datetime1 = new DateTime($birth_date); $datetime2 = new DateTime($dt2); $interval = $datetime1->diff($datetime2); $y = $interval->format('%y'); $m = $interval->format('%m'); $d = $interval->format('%d'); $age = ''; if ($y) $age .= "$y Year" . ($y > 1 ? 's ' : ' '); if ($m) $age .= "$m Month" . ($m > 1 ? 's' : ''); if(!$age){ $age="0 Month"; } return [$y, $m, $d, $age]; } function downloadCsv($data, $h, $keys, $filename='export'){ $filename=$filename.".csv"; header('Content-Type: application/csv; charset=UTF-8'); header('Content-Disposition: attachment; filename="'.$filename.'";'); $f=fopen('php://output', 'w'); if($data){ fputcsv($f, $h); foreach($data as $i=>$r){ $res=[]; foreach($keys as $k){ $res[]=$r[$k]; } fputcsv($f, $res); } fclose($f); } die; } function trimArray($arr){ if(!$arr) {return $arr;} foreach($arr as &$v){ if(!is_array($v)){$v=trim($v);} } return $arr; } function filterValue($post, $keys){ $data=array(); foreach($post as $k=>$v){ if(in_array($k, $keys)){ $data[$k]=$v; } } return $data; } function shortString($string='', $len=0) { $string=str_replace([' '], [' '], strip_tags($string)); $tmp=substr($string,0,$len); if(strlen($string)<=$len) {return $string;} return trim($tmp).((strlen($string)<=$len)?'':'...'); } function getExt($file_name='') { $fn=explode(".", $file_name); return end($fn); } function appendToFilename($fn='', $appendTxt='') { $fn=str_replace(" ", "-", $fn); $arr=explode(".", $fn); $ext=end($arr); $n=substr(str_replace(".".$ext,"",$fn), 0, 80); return $n.$appendTxt.".".$ext; } function toDate($timestamp=FALSE, $long=FALSE, $format=''){ if($timestamp) { if(!is_numeric($timestamp) && isDateBlank($timestamp)) {return;} if(!is_numeric($timestamp)) {$timestamp=strtotime($timestamp);} if($format) {return date($format, $timestamp);} if($long) {return date('d M Y - h:i A',$timestamp);} else {return date('d M Y', $timestamp);} } } function toDateFormat($T){ if(!$T) {return '';} if(!is_numeric($T) && isDateBlank($T)){return '';} if(!is_numeric($T)) {$T=strtotime($T);} return date('Y-m-d H:i:s', $T); } function isDateBlank($date){ $date=trim($date); if(!$date || $date=="" || $date=="0000-00-00 00:00:00" || $date=="0000-00-00") {return TRUE;} } function isValidDate($d, $format="d M Y"){ $d=trim($d); if(!$d){ return FALSE; } $nd=toDate($d, FALSE, $format); if($nd==$d){ return TRUE; } return FALSE; } function replaceSpecialChars($arg, $repW='-'){ return preg_replace('/[^a-zA-Z0-9_\-]/',$repW, $arg); } function replaceNonDigits($str){ return preg_replace("/[^0-9]/", "", $str); } function replaceNull($arr) { if(!is_array($arr)){ if(is_null($arr)){ $arr=''; } }else{ foreach($arr as $k=>$v){ if(is_null($v)){ $arr[$k]=''; } } } return $arr; } function encodeHtml($arg){ return str_replace(array('<', '>'), array('<', '>'), $arg); } function encodeScript($arg){ $r=['<script>', '</script>']; $r1=['<script>', '</script>']; return str_replace($r, $r1, $arg); } function checkImageExt($filename){ if(in_array(strtolower(getExt($filename)), array('jpg', 'jpeg', 'png', 'gif'))){ return TRUE; }else{ return FALSE; } } function checkDocExt($filename){ if(in_array(strtolower(getExt($filename)), array('pdf', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx'))){ return TRUE; }else{ return FALSE; } } function extType($filename) { $ext=strtolower(getExt($filename)); $type=''; if($ext=='pdf') {$type='PDF';} elseif($ext=='doc' or $ext=='docx') {$type='WORD';} elseif($ext=='xls' or $ext=='xlsx') {$type='EXCEL';} elseif($ext=='ppt' or $ext=='pptx') {$type='POWER POINT';} elseif(checkImageExt($filename)) {$type='IMAGE';} return $type; } function delFile($file){ if(file_exists($file)) {unlink($file);} } function renameExistFile($path, $file){ $file=str_replace(' ', '-', $file); if(file_exists($path.$file)){ $fn=str_replace(" ", "-", $file); $ext=end(explode(".", $fn)); $n=str_replace(".".$ext,"",$fn); $file=$n.'-'.time().".".$ext; } return $file; } function isEmail($email) { return filter_var($email, FILTER_VALIDATE_EMAIL); } function getWords($str){ $words=array_unique(str_word_count($str, 1, '0123456789')); return $words; } function strForFulltext($k, $partsearch=FALSE, $allmatch=FALSE){ $c=array('/\(/', '/\)/', '/@/'); $r=array(':', ':', ':'); $words=get_words($k); if($words){ foreach($words as &$w){ if($allmatch){ $w='+'.$w; } if($partsearch and substr($k, 0, 1)!='"' and substr($k, -1, 1)!='"'){ $w=$w.'*'; } } if($allmatch or $partsearch){ $k=implode(" ", $words); } } $k=rtrim($k, '-+()~'); $k=rtrim($k, '><'); $k=preg_replace($c, $r, $k); return $k; } //EOF