%PDF- %PDF-
Direktori : /home/cargonizer/public_html/admin/assets/plugins/tinymce/js/tinymce/plugins/image/ |
Current File : /home/cargonizer/public_html/admin/assets/plugins/tinymce/js/tinymce/plugins/image/functions.php |
<?php if (!function_exists('lang')) { function lang($line) { include 'translate.php'; if (isset($lang[$line])) { return $lang[$line]; } else { return "Error: Missing Translation [$line]"; } } } if (!function_exists('e_lang')) { function e_lang($line) { include 'translate.php'; if (isset($lang[$line])) { echo $lang[$line]; } else { echo "Error: Missing Translation [$line]"; } } } function get_current_url(){ $pageURL = 'http'; if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";} $pageURL .= "://"; if ($_SERVER["SERVER_PORT"] != "80") { $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; } else { $pageURL .= $_SERVER["SERVER_NAME"].strtok($_SERVER["REQUEST_URI"],'?'); } return $pageURL; } function CreateUserFolder($new_folder){ if(!file_exists($new_folder)) { $old = umask(0); if(!mkdir($new_folder, 0777)){ //Nothing yet } umask($old); } } function is_image_extenstion($extension){ return in_array(strtolower($extension), array('gif','jpg','jpeg','png','jpe')); } function get_file_icon_path($extension){ $icon = 'bootstrap/img/file-icons/file_extension_' . $extension . '.png'; if(!is_file($icon)){ $icon = 'bootstrap/img/file-icons/document_black.png'; } return $icon; } $user = CurrentUserFolder(); define('LIBRARY_FOLDER_PATH', FOLDER_PATH . (strlen($user) > 0 ? $user . "/" : "")); define('LIBRARY_FOLDER_URL', FOLDER_URL . (strlen($user) > 0 ? $user . "/" : "")); CreateUserFolder(LIBRARY_FOLDER_PATH); function Dirtree($path, $name = "Upload to: Home", $prefix = "") { if($name == "Upload to: Home"){ $name = lang('upload_to_home'); } if(isset($_SESSION["tinymce_upload_directory"]) AND $_SESSION["tinymce_upload_directory"] == $path){ $list = '<option value="'.$path.'" selected="selected">'.$prefix.''.$name.'</option>'; }else{ $list = '<option value="'.$path.'">'.$prefix.''.$name.'</option>'; } $dircont = scandir($path); if(count($dircont) > 0){ foreach($dircont as $file){ if(is_file($path . $file)){ //do nothing }elseif($file !== '.' && $file !== '..'){ $list .= Dirtree($path . $file . '/', $file, $prefix . '… '); } } } return $list; } function startsWith($haystack,$needle,$case=true) { if($case){return (strcmp(substr($haystack, 0, strlen($needle)),$needle)===0);} return (strcasecmp(substr($haystack, 0, strlen($needle)),$needle)===0); } function lc_delete($targ) { if(is_dir($targ)){ $files = glob($targ . '*', GLOB_MARK); //GLOB_MARK adds a slash to directories returned foreach($files as $file){ lc_delete($file); } rmdir($targ); }else{ unlink($targ); } } function hide_thumbnail($file){ if(THUMBNAIL_HIDE == false){ return true; } $str = THUMBNAIL_POSTFIX . "." . GetExtension($file); $pos = strrpos($file, $str); if ($pos === false) { return true; }else{ return false; } } function scandirSorted($path) { $sortedData = array(); $dircont = scandir($path); if(count($dircont) > 0){ foreach($dircont as $file){ if(is_file($path . $file)){ if(ValidFileExtension($file) AND hide_thumbnail($file)){ array_push($sortedData, array('is_file'=>true, 'name'=>$file, 'path'=>PathToUrl($path) . $file, 'p'=>$path . $file, 's'=> filesize($path . $file), 'x'=>$path)); } }elseif($file !== '.' && $file !== '..'){ $count = count(scandirSorted($path . $file . '/')); array_unshift($sortedData, array('is_file'=>false, 'name'=>$file, 'path'=>$path . $file . '/', 'i'=>$count)); } } } return $sortedData; } function SearchFiles($path){ $sortedData = array(); $dircont = scandir($path); if(count($dircont) > 0){ foreach($dircont as $file){ if(is_file($path . $file)){ if(ValidFileExtension($file) AND hide_thumbnail($file)){ $sortedData[] = array(0=>PathToUrl($path) . $file, 1=>$file, urlencode($path.$file), urlencode($path)); } }elseif($file !== '.' && $file !== '..'){ array_merge($sortedData, SearchFiles($path . $file . '/')); } } } return $sortedData; } function PathToUrl($path){ if($path == LIBRARY_FOLDER_PATH){ return LIBRARY_FOLDER_URL; }else{ $url = str_replace(LIBRARY_FOLDER_PATH,"",$path); //array_shift($url);// Remove root of lib if($url != ""){ return LIBRARY_FOLDER_URL . $url; }else{ return LIBRARY_FOLDER_URL; } } } function ValidFileExtension($name){ $allowed_extensions = explode(',', ALLOWED_IMG_EXTENSIONS); $extension = strtolower(GetExtension($name)); if (in_array($extension, $allowed_extensions, TRUE)){ return true; } else { return false; } } if (!function_exists('random_file_nam')) { function random_file_name($name) { return "FILE-" . date("Ymd") . "-" . generateRandomNumber(12) . "." . GetExtension($name); } } if (!function_exists('generateRandomNumber')) { function generateRandomNumber($len) { $al = '123456789ABCDEFGHJKLMNPQRSTUVWXYZ'; $date = date("Hs"); $password = "$date"; for ($index = 1; $index <= $len; $index++) { $randomNumber = rand(1, strlen($al)); $password .= substr($al, $randomNumber - 1, 1); } return $password; } } function GetExtension($filename){ $x = explode('.', $filename); return end($x); } function clean($str) { if(is_array($str)){ $return = array(); foreach($str as $k=>$v){ $return[clean($k)] = clean($v); } return $return; }else{ $str = @trim($str); return $str; } } function set_filename($path, $filename){ $filename = clean_file_name($filename); $file_ext = GetExtension($filename); if ( ! file_exists($path.$filename)){ return $filename; } $new_filename = str_replace('.'.$file_ext, '', $filename); for ($i = 1; $i < 300; $i++){ if ( ! file_exists($path.$new_filename.'_'.$i.'.'.$file_ext)){ $new_filename .= '_'.$i.'.'.$file_ext; break; } } return $new_filename; } function display_thumbnails($file){ if(HOW_TO_DISPLAY_THUMBNAILS == 'timthumb'){ return 'timthumb.php?src=' . $file . '&w=130&h=90'; } if(HOW_TO_DISPLAY_THUMBNAILS == 'generated'){ $__ext = GetExtension($file); $__thumbfilename = str_replace('.'.$__ext,'',$file).THUMBNAIL_POSTFIX . '.'.$__ext; return $__thumbfilename; } return $file; } function clean_file_name($filename){ $invalid = array("<!--","-->","'","<",">",'"','&','$','=',';','?','/',"%20","%22","%3c","%253c","%3e","%0e","%28","%29","%2528","%26","%24","%3f","%3b", "%3d"); $filename = str_replace($invalid, '', $filename); $filename = preg_replace("/\s+/", "_", $filename); return stripslashes($filename); } function MBToBytes($number){ return $number*pow(1024,2); } function DoUpload($field = 'userfile'){ $output = array(); $output["success"] = true; $output["is_pdf"] = 0; if(isset($_SESSION["tinymce_upload_directory"]) AND $_SESSION["tinymce_upload_directory"] != ""){ $current_folder = $_SESSION["tinymce_upload_directory"]; }else{ $current_folder = LIBRARY_FOLDER_PATH; } if(!CanAcessUploadForm()){ $output["reason"] = lang('no_permission_to_upload'); $output["success"] = false; return $output; } if(!isset($_FILES[$field])){ $output["reason"] = lang('file_not_selected'); $output["success"] = false; return $output; } if(!is_uploaded_file($_FILES[$field]['tmp_name'])){ $error = (!isset($_FILES[$field]['error'])) ? 4 : $_FILES[$field]['error']; $output["success"] = false; switch($error){ case 1: // UPLOAD_ERR_INI_SIZE $output["reason"] = lang('file_exceeds_limit_size'); break; case 2: // UPLOAD_ERR_FORM_SIZE $output["reason"] = lang('file_exceeds_limit_size'); break; case 3: // UPLOAD_ERR_PARTIAL $output["reason"] = lang('file_uploaded_partially'); break; case 4: // UPLOAD_ERR_NO_FILE $output["reason"] = lang('file_not_selected'); break; case 6: // UPLOAD_ERR_NO_TMP_DIR $output["reason"] = lang('no_temp_directory'); break; case 7: // UPLOAD_ERR_CANT_WRITE $output["reason"] = lang('unable_to_write_the_file'); break; case 8: // UPLOAD_ERR_EXTENSION $output["reason"] = lang('invalid_extension'); break; default : $output["reason"] = lang('file_not_selected'); break; } return $output; } if(!ValidFileExtension($_FILES[$field]['name'])){ $output["reason"] = lang('invalid_extension'); $output["success"] = false; return $output; } if(RENAME_UPLOADED_FILES == true){ $file_name = random_file_name($_FILES[$field]['name']); $file_name = set_filename($current_folder, $file_name); }else{ $file_name = set_filename($current_folder, $_FILES[$field]['name']); } if(!@copy($_FILES[$field]['tmp_name'], $current_folder.$file_name)){ if(!@move_uploaded_file($_FILES[$field]['tmp_name'], $current_folder.$file_name)){ $output["reason"] = lang('could_not_move_file'); $output["success"] = false; return $output; } } if(!isset($_SESSION['SimpleImageManager'])){ $_SESSION['SimpleImageManager'] = array(); } $_SESSION['SimpleImageManager'][] = PathToUrl($current_folder).$file_name; $output["file"] = PathToUrl($current_folder).$file_name; if(is_image_extenstion(GetExtension($file_name))){ Resizing($current_folder, $file_name); }else{ $output["is_pdf"] = 1; $output["icon"] = get_file_icon_path(GetExtension($file_name)); } return $output; } function Resizing($path, $filename){ $size = getimagesize($path.$filename); if(RESIZE_ON_UPLOAD == true){ $image_lib = new Image_lib(); $config = array(); $config['source_image'] = $path.$filename; $config['create_thumb'] = FALSE; $config['maintain_ratio'] = TRUE; if(intval(RESIZE_WIDTH) > 0){ $config['width'] = intval(RESIZE_WIDTH); }elseif(intval(RESIZE_HEIGHT) > 0){ //$config['width'] = floor($size[0] * (intval(RESIZE_HEIGHT) / $size[1])); } if(intval(RESIZE_HEIGHT) > 0){ $config['height'] = intval(RESIZE_HEIGHT); }elseif(intval(RESIZE_WIDTH) > 0){ //$config['height'] = floor($size[1] * (intval(RESIZE_WIDTH) / $size[0])); } $image_lib->initialize($config); $image_lib->resize(); } Thumbnail($path, $filename); } function Thumbnail($path, $filename){ $size = getimagesize($path.$filename); if(THUMBNAIL_ON_UPLOAD == true){ $image_lib = new Image_lib(); $config = array(); $config['source_image'] = $path.$filename; $config['create_thumb'] = TRUE; $config['maintain_ratio'] = THUMBNAIL_MAINTAIN_RATIO; $config['height'] = THUMBNAIL_HEIGHT; $config['width'] = THUMBNAIL_WIDTH; $config['thumb_marker'] = THUMBNAIL_POSTFIX; $image_lib->initialize($config); $image_lib->resize(); } } function is_url_exist($url){ $ch = curl_init($url); curl_setopt($ch, CURLOPT_NOBODY, true); curl_exec($ch); $code = curl_getinfo($ch, CURLINFO_HTTP_CODE); if($code == 200){ $status = true; }else{ $status = false; } curl_close($ch); return $status; } function TrimText($input, $length) { $input = strip_tags($input); if (strlen($input) <= $length) { return $input; } $trimmed_text = substr($input, 0, $length); $trimmed_text .= ' …'; return $trimmed_text; } function formatSizeUnits($bytes){ if ($bytes >= 1073741824){ $bytes = number_format($bytes / 1073741824, 2) . ' GB'; }elseif($bytes >= 1048576){ $bytes = number_format($bytes / 1048576, 2) . ' MB'; }elseif($bytes >= 1024){ $bytes = number_format($bytes / 1024, 2) . ' KB'; }elseif($bytes > 1){ $bytes = $bytes . ' bytes'; }elseif($bytes == 1){ $bytes = $bytes . ' byte'; }else{ $bytes = '0 bytes'; } return $bytes; } function Paginate($url, $page, $total_pages, $adjacents = 3) { $prevlabel = "←"; $nextlabel = "→"; $out = '<div class="pagination"><ul>'; // previous if($page == 1){ $out.= '<li class="disabled"><a href="#">←</a></li>'; }else { $out.= '<li><a class="page-link" data-path="'.urlencode($url).'" data-page="'.($page-1).'" href="">←</a></li>'; } // first if($page > ($adjacents + 1)) { $out.= '<li><a class="page-link" data-path="'.urlencode($url).'" data-page="1" href="">1</a></li>'; } // interval if($page > ($adjacents + 2)) { $out.= '<li class="disabled"><a href="#">...</a></li>'; } // pages $pmin = ($page > $adjacents) ? ($page - $adjacents) : 1; $pmax = ($page < ($total_pages - $adjacents)) ? ($page + $adjacents) : $total_pages; for($i=$pmin; $i<=$pmax; $i++) { if($i==$page) { $out.= '<li class="disabled"><a href="#">' . $i . '</a></li>'; }else{ $out.= '<li><a class="page-link" data-path="'.urlencode($url).'" data-page="'.$i.'" href="">' . $i . '</a></li>'; } } // interval if($page<($total_pages-$adjacents-1)) { $out.= '<li class="disabled"><a href="#">...</a></li>'; } // last if($page<($total_pages-$adjacents)) { $out.= '<li><a class="page-link" data-path="'.urlencode($url).'" data-page="'.$total_pages.'" href="">' . $total_pages . '</a></li>'; } // next if($page<$total_pages) { $out.= '<li><a class="page-link" data-path="'.urlencode($url).'" data-page="'.($page+1).'" href="">→</a></li>'; } else { $out.= '<li class="disabled"><a href="#">→</a></li>'; } $out.= '</ul></div>'; return $out; }