X-Git-Url: http://git.dj3c1t.com/index.cgi?a=blobdiff_plain;ds=sidebyside;f=mw%2Flibs%2Ftiny_mce%2Fplugins%2Ftinybrowser%2Ffns_tinybrowser.php;fp=mw%2Flibs%2Ftiny_mce%2Fplugins%2Ftinybrowser%2Ffns_tinybrowser.php;h=c5ea26ba36b8fef30c6e6f17e118a5249e61031a;hb=36ed114046cbe3d72a3589230e9f306a54fcc79d;hp=0000000000000000000000000000000000000000;hpb=281c96e95451269f2614684b8de5be25862c8374;p=mtweb diff --git a/mw/libs/tiny_mce/plugins/tinybrowser/fns_tinybrowser.php b/mw/libs/tiny_mce/plugins/tinybrowser/fns_tinybrowser.php new file mode 100644 index 0000000..c5ea26b --- /dev/null +++ b/mw/libs/tiny_mce/plugins/tinybrowser/fns_tinybrowser.php @@ -0,0 +1,431 @@ +

$maxwidth) || ($maxheight && $height > $maxheight)) + { + if($maxwidth && $width > $maxwidth) + { + $widthratio = $maxwidth/$width; + $resizewidth=true; + } + else $resizewidth=false; + + if($maxheight && $height > $maxheight) + { + $heightratio = $maxheight/$height; + $resizeheight=true; + } + else $resizeheight=false; + + if($resizewidth && $resizeheight) + { + if($widthratio < $heightratio) $ratio = $widthratio; + else $ratio = $heightratio; + } + elseif($resizewidth) + { + $ratio = $widthratio; + } + elseif($resizeheight) + { + $ratio = $heightratio; + } + $newwidth = $width * $ratio; + $newheight = $height * $ratio; + if(function_exists('imagecopyresampled') && $imagetype !='image/gif') + { + $newim = imagecreatetruecolor($newwidth, $newheight); + } + else + { + $newim = imagecreate($newwidth, $newheight); + } + + // additional processing for png / gif transparencies (credit to Dirk Bohl) + if($imagetype == 'image/x-png' || $imagetype == 'image/png') + { + imagealphablending($newim, false); + imagesavealpha($newim, true); + } + elseif($imagetype == 'image/gif') + { + $originaltransparentcolor = imagecolortransparent( $im ); + if($originaltransparentcolor >= 0 && $originaltransparentcolor < imagecolorstotal( $im )) + { + $transparentcolor = imagecolorsforindex( $im, $originaltransparentcolor ); + $newtransparentcolor = imagecolorallocate($newim,$transparentcolor['red'],$transparentcolor['green'],$transparentcolor['blue']); + imagefill( $newim, 0, 0, $newtransparentcolor ); + imagecolortransparent( $newim, $newtransparentcolor ); + } + } + + imagecopyresampled($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); + + if($imagetype == 'image/pjpeg' || $imagetype == 'image/jpeg') + { + imagejpeg ($newim,$urlandname,$comp); + } + elseif($imagetype == 'image/x-png' || $imagetype == 'image/png') + { + imagepng ($newim,$urlandname,substr($comp,0,1)); + } + elseif($imagetype == 'image/gif') + { + imagegif ($newim,$urlandname); + } + imagedestroy ($newim); + } +else + { + if($imagetype == 'image/pjpeg' || $imagetype == 'image/jpeg') + { + imagejpeg ($im,$urlandname,$comp); + } + elseif($imagetype == 'image/x-png' || $imagetype == 'image/png') + { + imagepng ($im,$urlandname,substr($comp,0,1)); + } + elseif($imagetype == 'image/gif') + { + imagegif ($im,$urlandname); + } + } +} + +// **************************CHECK IMAGE TYPE AND CONVERT TO TEMP TYPE***************************** +function convert_image($imagetemp,$imagetype){ + +if($imagetype == 'image/pjpeg' || $imagetype == 'image/jpeg') + { + $cim1 = imagecreatefromjpeg($imagetemp); + } +elseif($imagetype == 'image/x-png' || $imagetype == 'image/png') + { + $cim1 = imagecreatefrompng($imagetemp); + imagealphablending($cim1, false); + imagesavealpha($cim1, true); + } +elseif($imagetype == 'image/gif') + { + $cim1 = imagecreatefromgif($imagetemp); + } +return $cim1; +} + +// **************************GENERATE FORM OPEN***************************** +function form_open($name,$class,$url,$parameters){ +?>
+ + + +
+ $length) + { + $textstring = substr($textstring,0,$length).'...'; + } + return $textstring; +} + +/** + * Present a size (in bytes) as a human-readable value + * + * @param int $size size (in bytes) + * @param int $precision number of digits after the decimal point + * @return string + */ +function bytestostring($size, $precision = 0) { + $sizes = array('YB', 'ZB', 'EB', 'PB', 'TB', 'GB', 'MB', 'KB', 'B'); + $total = count($sizes); + + while($total-- && $size > 1024) $size /= 1024; + return round($size, $precision).' '.$sizes[$total]; +} + +//function to clean a filename string so it is a valid filename +function clean_filename($filename){ + $filename = preg_replace('/^\W+|\W+$/', '', $filename); // remove all non-alphanumeric chars at begin & end of string + $filename = preg_replace('/\s+/', '_', $filename); // compress internal whitespace and replace with _ + return strtolower(preg_replace('/\W-/', '', $filename)); // remove all non-alphanumeric chars except _ and - + +} + +//********************************Return File MIME Type*************************** +function returnMIMEType($filename) + { + preg_match("|\.([a-z0-9]{2,4})$|i", $filename, $fileSuffix); + + switch(strtolower($fileSuffix[1])) + { + case 'js' : + return 'application/x-javascript'; + + case 'json' : + return 'application/json'; + + case 'jpg' : + case 'jpeg' : + case 'jpe' : + return 'image/jpg'; + + case 'png' : + case 'gif' : + case 'bmp' : + case 'tiff' : + return 'image/'.strtolower($fileSuffix[1]); + + case 'css' : + return 'text/css'; + + case 'xml' : + return 'application/xml'; + + case 'doc' : + case 'docx' : + return 'application/msword'; + + case 'xls' : + case 'xlt' : + case 'xlm' : + case 'xld' : + case 'xla' : + case 'xlc' : + case 'xlw' : + case 'xll' : + return 'application/vnd.ms-excel'; + + case 'ppt' : + case 'pps' : + return 'application/vnd.ms-powerpoint'; + + case 'rtf' : + return 'application/rtf'; + + case 'pdf' : + return 'application/pdf'; + + case 'html' : + case 'htm' : + case 'php' : + return 'text/html'; + + case 'txt' : + return 'text/plain'; + + case 'mpeg' : + case 'mpg' : + case 'mpe' : + return 'video/mpeg'; + + case 'mp3' : + return 'audio/mpeg3'; + + case 'wav' : + return 'audio/wav'; + + case 'aiff' : + case 'aif' : + return 'audio/aiff'; + + case 'avi' : + return 'video/msvideo'; + + case 'wmv' : + return 'video/x-ms-wmv'; + + case 'mov' : + return 'video/quicktime'; + + case 'zip' : + return 'application/zip'; + + case 'tar' : + return 'application/x-tar'; + + case 'swf' : + return 'application/x-shockwave-flash'; + + default : + if(function_exists('mime_content_type')) + { + $fileSuffix = mime_content_type($filename); + } + + return 'unknown/' . trim($fileSuffix[0], '.'); + } + } + +//************************Return Array of Directory Structure*************************** +function dirtree(&$alldirs,$types='*.*',$root='',$tree='',$branch='',$level=0) { + +// filter file types according to type +$filetypes = explode(',',preg_replace('{[ \t]+}', '',$types)); + +if($level==0 && is_dir($root.$tree.$branch)) + { + $filenum=0; + foreach($filetypes as $filetype) + { + $filenum = $filenum + count(glob($root.$tree.$branch.sql_regcase($filetype),GLOB_NOSORT)); + } + $treeparts = explode('/',rtrim($tree,'/')); + $topname = end($treeparts); + $alldirs[] = array($branch,rtrim($topname,'/').' ('.$filenum.')',rtrim($topname,'/'),rtrim($topname,'/'),$filenum,filemtime($root.$tree.$branch)); + } +$level++; + +$dh = opendir($root.$tree.$branch); +while (($dirname = readdir($dh)) !== false) + { + if($dirname != '.' && $dirname != '..' && is_dir($root.$tree.$branch.$dirname) && $dirname != '_thumbs') + { + $filenum=0; + foreach($filetypes as $filetype) + { + $filenum = $filenum + count(glob($root.$tree.$branch.$dirname.'/'.sql_regcase($filetype),GLOB_NOSORT)); + } + $indent = ''; + for($i=0;$i<$level;$i++) { $indent .= '   '; } + if(strlen($indent)>0) $indent .= '→ '; + $alldirs[] = array(urlencode($branch.$dirname.'/'),$indent.$dirname.' ('.$filenum.')',$indent.$dirname,$dirname,$filenum,filemtime($root.$tree.$branch.$dirname)); + dirtree($alldirs,$types,$root,$tree,$branch.$dirname.'/',$level); + } + } +closedir($dh); +$level--; +} + +/* user defined error handling function. */ +function userErrorHandler($errno, $errmsg, $filename, $linenum, $vars) +{ + // timestamp for the error entry. + $dt = date('Y-m-d H:i:s (T)'); + + // define an assoc array of error string + // in reality the only entries we should + // consider are E_WARNING, E_NOTICE, E_USER_ERROR, + // E_USER_WARNING and E_USER_NOTICE. + $errortype = array ( + E_ERROR => 'Error', + E_WARNING => 'Warning', + E_PARSE => 'Parsing Error', + E_NOTICE => 'Notice', + E_CORE_ERROR => 'Core Error', + E_CORE_WARNING => 'Core Warning', + E_COMPILE_ERROR => 'Compile Error', + E_COMPILE_WARNING => 'Compile Warning', + E_USER_ERROR => 'User Error', + E_USER_WARNING => 'User Warning', + E_USER_NOTICE => 'User Notice', + E_STRICT => 'Runtime Notice' + ); + // set of errors for which a var trace will be saved. + $user_errors = array(E_USER_ERROR, E_USER_WARNING, E_USER_NOTICE); + + if($errno != E_STRICT) // exclude Runtime Notices + { + $err = $dt. "\t"; + $err .= $errno.' '.$errortype[$errno]. "\t"; + $err .= $errmsg. "\t"; + $err .= 'File: '.basename($filename). "\t"; + $err .= 'Line: '.$linenum. "\t"; + + if (in_array($errno, $user_errors)) + { + $err .= 'Trace: '.wddx_serialize_value($vars, 'Variables'). "\t"; + } + $err .= "\n"; + + // save to the error log file, and e-mail me if there is a critical user error. + error_log($err, 3, 'error.log'); + } +} +$old_error_handler = set_error_handler('userErrorHandler'); + +?>