server/src/app/Services/ViafResolver.php
changeset 524 85e8382852e7
parent 133 821253d361d1
equal deleted inserted replaced
523:98c45e30b841 524:85e8382852e7
    53         $names = [];
    53         $names = [];
    54         foreach ($graph->allLiterals("<$url>", "schema:name") as $nameLit) {
    54         foreach ($graph->allLiterals("<$url>", "schema:name") as $nameLit) {
    55             $lang = $nameLit->getLang();
    55             $lang = $nameLit->getLang();
    56             if(!$lang && !isset($names[''])) {
    56             if(!$lang && !isset($names[''])) {
    57                 $names[''] = $nameLit->getvalue();
    57                 $names[''] = $nameLit->getvalue();
    58             }
    58             } elseif (strpos($lang, 'fr') === 0 && !isset($names['fr'])) {
    59             elseif (strpos($lang, 'fr') === 0 && !isset($names['fr'])) {
       
    60                 $names['fr'] = $nameLit->getvalue();
    59                 $names['fr'] = $nameLit->getvalue();
    61             }
    60             } elseif (strpos($lang, 'en') === 0 && !isset($names['en'])) {
    62             elseif (strpos($lang, 'en') === 0 && !isset($names['en'])) {
       
    63                 $names['en'] = $nameLit->getvalue();
    61                 $names['en'] = $nameLit->getvalue();
       
    62             } else {
       
    63                 $names[$lang] = $nameLit->getvalue();
    64             }
    64             }
    65         }
    65         }
    66 
    66 
    67         return (isset($names['fr'])) ? $names['fr'] : ((isset($names['en'])) ? $names['en'] : ((isset($names['']))? $names[''] : null));
    67         $firstVal = reset($names);
       
    68         if($firstVal === false) {
       
    69             $firstVal = null;
       
    70         }
       
    71         return (isset($names['fr'])) ? $names['fr'] : ((isset($names['en'])) ? $names['en'] : $firstVal);
    68 
    72 
    69     }
    73     }
    70 
    74 
    71     /**
    75     /**
    72      * Check viaf id format
    76      * Check viaf id format