Fix search box on Safari and make pages validate

release-0.6
thomascube 16 years ago
parent 20a25197f3
commit a3f149eb57

@ -248,7 +248,7 @@ class html_inputfield extends html
{ {
protected $tagname = 'input'; protected $tagname = 'input';
protected $type = 'text'; protected $type = 'text';
protected $allowed = array('type','name','value','size','tabindex','autocomplete','checked','onchange','onclick','disabled','readonly','spellcheck'); protected $allowed = array('type','name','value','size','tabindex','autocomplete','checked','onchange','onclick','disabled','readonly','spellcheck','results');
public function __construct($attrib = array()) public function __construct($attrib = array())
{ {

@ -43,7 +43,8 @@ class rcube_browser
$this->ns = ($this->ns4 || stristr($HTTP_USER_AGENT, 'netscape')); $this->ns = ($this->ns4 || stristr($HTTP_USER_AGENT, 'netscape'));
$this->ie = stristr($HTTP_USER_AGENT, 'compatible; msie') && !$this->opera; $this->ie = stristr($HTTP_USER_AGENT, 'compatible; msie') && !$this->opera;
$this->mz = stristr($HTTP_USER_AGENT, 'mozilla/5'); $this->mz = stristr($HTTP_USER_AGENT, 'mozilla/5');
$this->safari = stristr($HTTP_USER_AGENT, 'safari'); $this->khtml = stristr($HTTP_USER_AGENT, 'khtml');
$this->safari = ($this->khtml || stristr($HTTP_USER_AGENT, 'safari'));
if ($this->ns) { if ($this->ns) {
$test = eregi("mozilla\/([0-9\.]+)", $HTTP_USER_AGENT, $regs); $test = eregi("mozilla\/([0-9\.]+)", $HTTP_USER_AGENT, $regs);

@ -54,6 +54,7 @@ class rcube_template extends rcube_html_page
$this->app = rcmail::get_instance(); $this->app = rcmail::get_instance();
$this->config = $this->app->config->all(); $this->config = $this->app->config->all();
$this->browser = new rcube_browser();
//$this->framed = $framed; //$this->framed = $framed;
$this->set_env('task', $task); $this->set_env('task', $task);
@ -707,8 +708,6 @@ class rcube_template extends rcube_html_page
return ''; return '';
} }
$browser = new rcube_browser();
// try to find out the button type // try to find out the button type
if ($attrib['type']) { if ($attrib['type']) {
$attrib['type'] = strtolower($attrib['type']); $attrib['type'] = strtolower($attrib['type']);
@ -755,7 +754,7 @@ class rcube_template extends rcube_html_page
$attrib['alt'] = Q(rcube_label($attrib['alt'])); $attrib['alt'] = Q(rcube_label($attrib['alt']));
} }
// set title to alt attribute for IE browsers // set title to alt attribute for IE browsers
if ($browser->ie && $attrib['title'] && !$attrib['alt']) { if ($this->browser->ie && $attrib['title'] && !$attrib['alt']) {
$attrib['alt'] = $attrib['title']; $attrib['alt'] = $attrib['title'];
unset($attrib['title']); unset($attrib['title']);
} }
@ -1018,6 +1017,10 @@ class rcube_template extends rcube_html_page
if (empty($attrib['id'])) { if (empty($attrib['id'])) {
$attrib['id'] = 'rcmqsearchbox'; $attrib['id'] = 'rcmqsearchbox';
} }
if ($attrib['type'] == 'search' && !$this->browser->khtml) {
unset($attrib['type'], $attrib['results']);
}
$input_q = new html_inputfield($attrib); $input_q = new html_inputfield($attrib);
$out = $input_q->show(); $out = $input_q->show();

@ -755,7 +755,6 @@ table.headers-table tr td.all
#messagebody #messagebody
{ {
position:relative; position:relative;
min-height: 300px;
padding-bottom: 10px; padding-bottom: 10px;
background-color: #FFFFFF; background-color: #FFFFFF;
} }

@ -1,6 +1,7 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<title></title>
</head> </head>
<body style="background-color:#F2F2F2;"> <body style="background-color:#F2F2F2;">

Loading…
Cancel
Save