<?php 
 
 
$faventry = NULL; 
foreach( $this->data['idplist'] AS $tab => $slist) { 
    if (!empty($this->data['preferredidp']) && array_key_exists($this->data['preferredidp'], $slist)) 
        $faventry = $slist[$this->data['preferredidp']]; 
} 
 
 
 
 
 
 
if(!array_key_exists('header', $this->data)) { 
    $this->data['header'] = 'selectidp'; 
} 
$this->data['header'] = $this->t($this->data['header']); 
$this->data['jquery'] = array('version' => '1.6', 'core' => TRUE, 'ui' => TRUE, 'css' => TRUE); 
 
$this->data['head'] = '<link rel="stylesheet" media="screen" type="text/css" href="' . SimpleSAML_Module::getModuleUrl('discopower/style.css')  . '" />'; 
 
$this->data['head'] .= '<script type="text/javascript" src="' . SimpleSAML_Module::getModuleUrl('discopower/js/jquery.livesearch.js')  . '"></script>'; 
$this->data['head'] .= '<script type="text/javascript" src="' . SimpleSAML_Module::getModuleUrl('discopower/js/' . $this->data['score'] . '.js')  . '"></script>'; 
 
$this->data['head'] .= '<script type="text/javascript"> 
 
$(document).ready(function() { 
    $("#discotabs").tabs({ selected: ' . $this->data['defaulttab'] . ' }); '; 
     
$i = 0; 
foreach ($this->data['idplist'] AS $tab => $slist) { 
    $this->data['head'] .= "\n" . '$("#query_' . $tab . '").liveUpdate("#list_' . $tab . '")' . 
        (($i++ == 0) && (empty($faventry)) ? '.focus()' : '') . 
        ';'; 
 
 
} 
 
$this->data['head'] .= ' 
}); 
 
</script>'; 
 
 
 
 
 
if (!empty($faventry)) $this->data['autofocus'] = 'favouritesubmit'; 
 
$this->includeAtTemplateBase('includes/header.php'); 
 
// foreach ($this->data['idplist'] AS $slist) { 
//     foreach ($slist AS $idpentry) { 
//         if (isset($idpentry['name'])) 
//             $this->includeInlineTranslation('idpname_' . $idpentry['entityid'], $idpentry['name']); 
//         if (isset($idpentry['description'])) 
//             $this->includeInlineTranslation('idpdesc_' . $idpentry['entityid'], $idpentry['description']); 
//     } 
// } 
//  
 
 
function showEntry($t, $metadata, $favourite = FALSE) { 
     
    $basequerystring = '?' .  
        'entityID=' . urlencode($t->data['entityID']) . '&' .  
        'return=' . urlencode($t->data['return']) . '&' .  
        'returnIDParam=' . urlencode($t->data['returnIDParam']) . '&idpentityid='; 
     
    $extra = ($favourite ? ' favourite' : ''); 
    $html = '<a class="metaentry' . $extra . '" href="' . $basequerystring . urlencode($metadata['entityid']) . '">'; 
     
    $html .= '' . htmlspecialchars(getTranslatedName($t, $metadata)) . ''; 
 
    #print_r($metadata['scopes']);  
 
    // if (!empty($idpentry['description'])) { 
    //     $html .= '    <p>' . htmlspecialchars($t->t('idpdesc_' . $metadata['entityid'])) . '<br />'; 
    // } 
     
    if(array_key_exists('icon', $metadata) && $metadata['icon'] !== NULL) { 
        $iconUrl = SimpleSAML_Utilities::resolveURL($metadata['icon']); 
        $html .= '<img alt="Icon for identity provider" class="entryicon" src="' . htmlspecialchars($iconUrl) . '" />'; 
    } 
     
    // $html .= '<input id="preferredidp" type="submit" name="idp_' . 
    //     htmlspecialchars($metadata['entityid']) . '" value="' . 
    //     $t->t('select') . '" /></p>'; 
     
    $html .= '</a>'; 
     
    return $html; 
} 
 
?> 
 
 
 
 
<?php 
 
function getTranslatedName($t, $metadata) { 
#    if (is_null($metadata)) throw new Exception(); 
    if (isset($metadata['UIInfo']['DisplayName'])) { 
        $displayName = $metadata['UIInfo']['DisplayName']; 
        assert('is_array($displayName)'); // Should always be an array of language code -> translation. 
        if (!empty($displayName)) { 
            return $t->getTranslation($displayName); 
        } 
    } 
 
    if (array_key_exists('name', $metadata)) { 
        if (is_array($metadata['name'])) { 
            return $t->getTranslation($metadata['name']); 
        } else { 
            return $metadata['name']; 
        } 
    } 
    return $metadata['entityid']; 
} 
 
 
 
 
if (!empty($faventry)) { 
 
 
    echo('<div class="favourite">'); 
    echo($this->t('previous_auth')); 
    echo(' <strong>' . htmlspecialchars(getTranslatedName($this, $faventry)) . '</strong>'); 
    echo(' 
    <form id="idpselectform" method="get" action="' . $this->data['urlpattern'] . '"> 
        <input type="hidden" name="entityID" value="' . htmlspecialchars($this->data['entityID']) . '" /> 
        <input type="hidden" name="return" value="' . htmlspecialchars($this->data['return']) . '" /> 
        <input type="hidden" name="returnIDParam" value="' . htmlspecialchars($this->data['returnIDParam']) . '" /> 
        <input type="hidden" name="idpentityid" value="' . htmlspecialchars($faventry['entityid']) . '" /> 
 
        <input type="submit" name="formsubmit" id="favouritesubmit" value="' . $this->t('login_at') . ' ' . htmlspecialchars(getTranslatedName($this, $faventry)) . '" />  
    </form>'); 
 
    echo('</div>'); 
} 
 
 
?> 
 
 
 
 
 
 
<div id="discotabs">  
 
    <ul class="tabset_tabs">      
        <?php 
         
            $tabs = array_keys( $this->data['idplist']); 
            foreach ($tabs AS $tab) { 
            if(!empty($this->data['idplist'][$tab])) { 
                echo '<li><a href="#' . $tab . '"><span>' . $this->t('{discopower:tabs:' . $tab . '}') . '</span></a></li> '; 
            } 
            } 
         
        ?> 
    </ul>  
     
 
<?php 
 
 
 
 
foreach( $this->data['idplist'] AS $tab => $slist) { 
 
    echo '<div id="' . $tab . '">'; 
 
    if (!empty($slist)) { 
         
        // echo 'Favourite :: ' . $this->data['preferredidp'];  
        // echo '<pre>'; 
        // print_r($slist); exit; 
 
        echo('    <div class="inlinesearch">'); 
        echo('    <p>Incremental search...</p>'); 
        echo('    <form id="idpselectform" action="?" method="get"><input class="inlinesearchf" type="text" value="" name="query_' . $tab . '" id="query_' . $tab . '" /></form>'); 
        echo('    </div>'); 
     
        echo('    <div class="metalist" id="list_' . $tab  . '">'); 
        if (!empty($this->data['preferredidp']) && array_key_exists($this->data['preferredidp'], $slist)) { 
            $idpentry = $slist[$this->data['preferredidp']]; 
            echo (showEntry($this, $idpentry, TRUE)); 
        } 
 
        foreach ($slist AS $idpentry) { 
            if ($idpentry['entityid'] != $this->data['preferredidp']) { 
                echo (showEntry($this, $idpentry)); 
            } 
        } 
        echo('    </div>'); 
    } 
    echo '</div>'; 
 
} 
     
?> 
 
 
 
</div> 
 
         
<?php $this->includeAtTemplateBase('includes/footer.php'); ?> 
 
 |