protected function compileMediaQuery($queryList)
{
$out = "@media";
$first = true;
foreach ($queryList as $query) {
$parts = array();
foreach ($query as $q) {
switch ($q[0]) {
case "mediaType":
$parts[] = implode(" ", array_map(array($this, "compileValue"), array_slice($q, 1)));
break;
case "mediaExp":
if (isset($q[2])) {
$parts[] = "(" . $this->compileValue($q[1]) . $this->formatter->assignSeparator . $this->compileValue($q[2]) . ")";
} else {
$parts[] = "(" . $this->compileValue($q[1]) . ")";
}
break;
}
}
if (!empty($parts)) {
if ($first) {
$first = false;
$out .= " ";
} else {
$out .= $this->formatter->tagSeparator;
}
$out .= implode(" and ", $parts);
}
}
return $out;
}