From fda695f29732f5e5bcaa55e7e7abd090d2359927 Mon Sep 17 00:00:00 2001 From: thomascube <thomas@roundcube.net> Date: Fri, 01 Sep 2006 13:14:51 -0400 Subject: [PATCH] Finalized quota image --- program/include/rcube_shared.inc | 67 +++++++++++++++++++++++++++------ 1 files changed, 55 insertions(+), 12 deletions(-) diff --git a/program/include/rcube_shared.inc b/program/include/rcube_shared.inc index da56651..af4c295 100644 --- a/program/include/rcube_shared.inc +++ b/program/include/rcube_shared.inc @@ -33,6 +33,7 @@ var $script_tag_file = "<script type=\"text/javascript\" src=\"%s%s\"></script>\n"; var $script_tag = "<script type=\"text/javascript\">\n<!--\n%s\n\n//-->\n</script>\n"; + var $default_template = "<html>\n<head><title></title></head>\n<body></body>\n</html>"; var $title = ''; var $header = ''; @@ -78,10 +79,11 @@ } - function set_title() + function set_title($t) { - + $this->title = $t; } + function set_charset($charset) { @@ -95,20 +97,29 @@ $MBSTRING = FALSE; } } - + function get_charset() { return $this->charset; } + function reset() + { + $this->css = new rcube_css(); + $this->script_files = array(); + $this->scripts = array(); + $this->title = ''; + } + + function write($templ='', $base_path='') { - $output = trim($templ); - + $output = empty($templ) ? $this->default_template : trim($templ); + // set default page title if (!strlen($this->title)) - $this->title = 'RoundCube|Mail'; + $this->title = 'RoundCube Mail'; // replace specialchars in content $__page_title = rep_specialchars_output($this->title, 'html', 'show', FALSE); @@ -117,7 +128,10 @@ // include meta tag with charset if (!empty($this->charset)) - $__page_header = '<meta http-equiv="content-type" content="text/html; charset='.$this->charset.'" />'."\n";; + { + header('Content-Type: text/html; charset='.$this->charset); + $__page_header = '<meta http-equiv="content-type" content="text/html; charset='.$this->charset.'" />'."\n"; + } // definition of the code to be placed in the document header and footer @@ -190,6 +204,7 @@ // correct absolute pathes in images and other tags $output = preg_replace('/(src|href|background)=(["\']?)(\/[a-z0-9_\-]+)/Ui', "\\1=\\2$base_path\\3", $output); + $output = str_replace('$__skin_path', $base_path, $output); print rcube_charset_convert($output, 'UTF-8', $this->charset); } @@ -1284,12 +1299,25 @@ } -function show_bytes($numbytes) +// create a human readable string for a number of bytes +function show_bytes($bytes) { - if ($numbytes > 1024) - return sprintf('%d KB', round($numbytes/1024)); + if ($bytes > 1073741824) + { + $gb = $bytes/1073741824; + $str = sprintf($gb>=10 ? "%d GB" : "%.1f GB", $gb); + } + else if ($bytes > 1048576) + { + $mb = $bytes/1048576; + $str = sprintf($mb>=10 ? "%d MB" : "%.1f MB", $mb); + } + else if ($bytes > 1024) + $str = sprintf("%d KB", round($bytes/1024)); else - return sprintf('%d B', $numbytes); + $str = sprintf('%d B', $bytes); + + return $str; } @@ -1330,7 +1358,8 @@ } - +// replace the middle part of a string with ... +// if it is longer than the allowed length function abbrevate_string($str, $maxlength, $place_holder='...') { $length = strlen($str); @@ -1346,6 +1375,20 @@ } +// make sure the string ends with a slash +function slashify($str) + { + return unslashify($str).'/'; + } + + +// remove slash at the end of the string +function unslashify($str) + { + return preg_replace('/\/$/', '', $str); + } + + // delete all files within a folder function clear_directory($dir_path) { -- Gitblit v1.9.1