/** * This method sets all configured CORS related headers * * @param WikiaResponse $response response object to set headers to * @param bool $mergeExisting */ public function setHeaders(WikiaResponse $response, $mergeExisting = true) { foreach ($this->allowValues as $headerName => $values) { if (!empty($values)) { $valuesToSet = $values; $headers = $response->getHeader($headerName); if (!empty($headers) && $mergeExisting) { $response->removeHeader($headerName); foreach ($headers as $header) { $valuesToSet = array_merge($valuesToSet, explode(self::HEADER_DELIMETER, $header['value'])); } } $response->setHeader($headerName, implode(self::HEADER_DELIMETER, $valuesToSet)); } } return $this; }