+$sists = AI_Sistema::getSistemas($DB);
+
+// Me fijo que sistemas puede ver este usuario.
+require_once 'SAMURAI/Perm.php';
+require_once 'SAMURAI/constantes.php';
+$perm = new SAMURAI_Perm($_SESSION['usuario'], 0, $DB);
+$samurai = false;
+$sistemas = array();
+foreach ($sists as $id => $s) {
+ // Agrego los sistemas en los que tiene permiso.
+ $perm->setSistema($s->sistema);
+ if ($perm->tiene()) {
+ // Si es SAMURAI hay que ver si ya no lo agregamos antes.
+ if ($id == SAMURAI_PERM) {
+ if (!$samurai) {
+ $samurai = true;
+ $sistemas[] = $sists[$id];
+ }
+ } else { // Si no es SAMURAI lo agregamos incondicionalmente.
+ $sistemas[] = $sists[$id];
+ }
+ }
+ // Si tiene permisos de SAMURAI en un sistema, hay que mostrar un link a
+ // SAMURAI.
+ if (!$samurai and $perm->tiene(SAMURAI_PERM_PERFIL_ALTA,
+ SAMURAI_PERM_PERFIL_BAJA, SAMURAI_PERM_PERFIL_MODIF,
+ SAMURAI_PERM_USUARIO_ALTA, SAMURAI_PERM_USUARIO_BAJA,
+ SAMURAI_PERM_USUARIO_MODIF)) {
+ $samurai = true;
+ if (@$sists[SAMURAI_PERM]) {
+ $sistemas[] = $sists[SAMURAI_PERM];
+ }
+ }
+}
+unset($sists);
+unset($samurai);
+
+$sistema = @array_shift($sistemas);
+while ($sistema) {
+ $row = array();
+ for ($j = 1; $j <= COLUMNAS; $j++) {
+ if ($sistema) {
+ $url = $sistema->link;
+ if ($sistema->tipo == 'embperl') {
+ $url = '/Php2Embperl_Session?redirect=' . urlencode($url);
+ }
+ $img = new MECON_HTML_Image(
+ "/sistemas/intranet/images/$sistema->icono",
+ $sistema->nombre,
+ array(
+ 'border' => 0,
+ 'width' => '46',
+ 'height' => '46',
+ )
+ );
+ $row[] = new MECON_HTML_Link(
+ $url,
+ $img,
+ array(),
+ array(
+ 'OnClick' =>
+ "javascript:window.open('$url','s{$sistema->sistema}',"
+ . "'width=790,height=550,scrollbars=yes,resizable=yes');return false;",
+ 'target' => '_blank',
+ )
+ );
+ $row[] = ' ';
+ $link = new MECON_HTML_Link(
+ $url,
+ $sistema->nombre,
+ array(),
+ array(
+ 'OnClick' =>
+ "javascript:window.open('$url','s{$sistema->sistema}',"
+ . "'width=790,height=550,scrollbars=yes,resizable=yes');return false;",
+ 'target' => '_blank',
+ 'class' => 'intranet_sistemas_txt',
+ )
+ );
+ $html = $link->toHtml() . ': ' . $sistema->descripcion;
+ if ($sistema->link_ayuda) {
+ $html .= ' ';
+ $img = new MECON_HTML_Image(
+ '/sistemas/intranet/images/sistemas_ayuda',
+ '(?)'
+ );
+ $link = new MECON_HTML_Link(
+ $sistema->link_ayuda,
+ $img,
+ array(),
+ array(
+ 'OnClick' =>
+ "javascript:window.open('{$sistema->link_ayuda}',"
+ . "'sa{$sistema->sistema}',"
+ . "'width=790,height=550,scrollbars=yes,resizable=yes');return false;",
+ 'target' => '_blank',
+ )
+ );
+ $html .= $link->toHtml();
+ }
+ $row[] = $html;
+ $sistema = @array_shift($sistemas);
+ } else {
+ $row[] = ' ';
+ $row[] = ' ';
+ $row[] = ' ';
+ }
+ if ($j % (COLUMNAS)) {
+ $row[] = ' ';
+ }
+ }
+ $t->addRow(array(' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '));
+ $t->addRow($row, array('class' => 'intranet_sistemas_txt'));