Skip to content
Snippets Groups Projects
Commit 45215b83 authored by Olav Morken's avatar Olav Morken
Browse files

Add support for multiple languages for organization url in

generated metadata.


git-svn-id: https://simplesamlphp.googlecode.com/svn/trunk@1363 44740490-163a-0410-bde0-09ae8108e29a
parent 81dcc2b6
No related branches found
No related tags found
No related merge requests found
......@@ -142,45 +142,45 @@ class SimpleSAML_Metadata_SAMLBuilder {
private function addOrganizationInfo($metadata) {
if (array_key_exists('name', $metadata)) {
$org = $this->createElement('Organization');
$org = $this->createElement('Organization');
if (is_array($metadata['name'])) {
foreach($metadata['name'] AS $lang => $localname) {
$orgname = $this->createTextElement('OrganizationName', $localname);
$orgname->setAttribute('xml:lang', $lang);
$org->appendChild($orgname);
}
$name = $metadata['name'];
} else {
$orgname = $this->createTextElement('OrganizationName', $metadata['name']);
$orgname->setAttribute('xml:lang', 'en');
$org->appendChild($orgname);
$name = array('en' => $metadata['name']);
}
foreach($name AS $lang => $localname) {
$orgname = $this->createTextElement('OrganizationName', $localname);
$orgname->setAttribute('xml:lang', $lang);
$org->appendChild($orgname);
}
if (is_array($metadata['name'])) {
foreach($metadata['name'] AS $lang => $localname) {
$orgname = $this->createTextElement('OrganizationDisplayName', $localname);
$orgname->setAttribute('xml:lang', $lang);
$org->appendChild($orgname);
}
} else {
$orgname = $this->createTextElement('OrganizationDisplayName', $metadata['name']);
$orgname->setAttribute('xml:lang', 'en');
foreach($name AS $lang => $localname) {
$orgname = $this->createTextElement('OrganizationDisplayName', $localname);
$orgname->setAttribute('xml:lang', $lang);
$org->appendChild($orgname);
}
$url = '';
if (array_key_exists('url', $metadata)) {
if (!array_key_exists('url', $metadata)) {
/*
* The specification requires an OrganizationURL element, but
* we haven't got an URL. Insert an empty element instead.
*/
$url = array('en' => '');
} elseif (is_array($metadata['url'])) {
$url = $metadata['url'];
} else {
$url = array('en' => $metadata['url']);
}
foreach($url AS $lang => $locallink) {
$uel = $this->createTextElement('OrganizationURL', $locallink);
$uel->setAttribute('xml:lang', $lang);
$org->appendChild($uel);
}
$uel = $this->createTextElement('OrganizationURL', $url);
$uel->setAttribute('xml:lang', 'en');
$org->appendChild($uel);
$this->entityDescriptor->appendChild($org);
$this->entityDescriptor->appendChild($org);
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment