We are no longer offering accounts on this server. Consider https://gitlab.freedesktop.org/ as a place to host projects.

Commit 3ff5dd69 authored by Sarven Capadisli's avatar Sarven Capadisli

Doing content negotiation only once

parent 93f6981b
......@@ -64,20 +64,7 @@ class MobileProfilePlugin extends WAP20Plugin
function onStartShowHTML($action)
{
if (!$type) {
$httpaccept = isset($_SERVER['HTTP_ACCEPT']) ?
$_SERVER['HTTP_ACCEPT'] : null;
$cp = common_accept_to_prefs($httpaccept);
$sp = common_accept_to_prefs(PAGE_TYPE_PREFS);
$type = common_negotiate_type($cp, $sp);
if (!$type) {
throw new ClientException(_('This page is not available in a '.
'media type you accept'), 406);
}
}
// XXX: This should probably graduate to WAP20Plugin
......@@ -184,11 +171,29 @@ class MobileProfilePlugin extends WAP20Plugin
return true;
}
header('Content-Type: '.$type);
if (!$type) {
$httpaccept = isset($_SERVER['HTTP_ACCEPT']) ?
$_SERVER['HTTP_ACCEPT'] : null;
$cp = common_accept_to_prefs($httpaccept);
$sp = common_accept_to_prefs(PAGE_TYPE_PREFS);
$action->extraHeaders();
$type = common_negotiate_type($cp, $sp);
$action->startXML('html',
if (!$type) {
throw new ClientException(_('This page is not available in a '.
'media type you accept'), 406);
}
}
header('Content-Type: '.$type);
$this->extraHeaders();
if (preg_match("/.*\/.*xml/", $type)) {
// Required for XML documents
$this->xw->startDocument('1.0', 'UTF-8');
}
$this->xw->writeDTD('html',
'-//WAPFORUM//DTD XHTML Mobile 1.0//EN',
$this->DTD);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment