X-Git-Url: https://git.llucax.com/mecon/intranet.git/blobdiff_plain/70a0967626e32dcef5d1d96756e967b49cc07f44..ba466154033d54821e07ab851bccc42e8e344fe9:/sistema/www/sistemas.php diff --git a/sistema/www/sistemas.php b/sistema/www/sistemas.php index 05b10d6..dbc1d37 100644 --- a/sistema/www/sistemas.php +++ b/sistema/www/sistemas.php @@ -1,82 +1,189 @@ '100%', + 'width' => '760', 'cellspacing' => '0', 'cellpadding' => '0', 'border' => '0', - 'align' => 'left', - 'valign' => 'middle', ) ); -$db = IntranetDB::connect(); -$sistemas = AI_Sistema::getSistemas($db); +// Agrego fila con espaciados. +$img = new MECON_HTML_Image('/MECON/images/blanco', '', array('height' => 1)); +$img->updateAttributes(array('width' => 46)); +$fila[] = $img; +$img->updateAttributes(array('width' => 4)); +$fila[] = $img; +$img->updateAttributes(array('width' => 190)); +$fila[] = $img; +$img->updateAttributes(array('width' => 20)); +$fila[] = $img; +$img->updateAttributes(array('width' => 46)); +$fila[] = $img; +$img->updateAttributes(array('width' => 4)); +$fila[] = $img; +$img->updateAttributes(array('width' => 190)); +$fila[] = $img; +$img->updateAttributes(array('width' => 20)); +$fila[] = $img; +$img->updateAttributes(array('width' => 46)); +$fila[] = $img; +$img->updateAttributes(array('width' => 4)); +$fila[] = $img; +$img->updateAttributes(array('width' => 190)); +$fila[] = $img; +$t->addRow($fila); -$pct = intval(100/COLUMNAS) . '%'; +$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); + +if (!$sistemas) { + $t = new HTML_Mensaje('denegado', + 'No tiene permisos para usar ningĂșn sistema', 370); +} $sistema = @array_shift($sistemas); while ($sistema) { $row = array(); - for ($j = 0; $j < COLUMNAS; $j++) { + for ($j = 1; $j <= COLUMNAS; $j++) { if ($sistema) { - $img = new HTML_Image( + $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( - 'title' => $sistema->descripcion, 'border' => 0, - 'align' => 'absmiddle', + 'width' => '46', + 'height' => '46', ) ); - $link = new HTML_Link( - $sistema->link, - $sistema->nombre, + $row[] = new MECON_HTML_Link( + $url, + $img, array(), array( - 'title' => $sistema->descripcion, + 'OnClick' => + "javascript:window.open('$url','s{$sistema->sistema}'," + . "'width=790,height=550,scrollbars=yes,resizable=yes');return false;", 'target' => '_blank', ) ); - $html = $img->toHtml() . $link->toHtml() . '
' - . $sistema->descripcion; + $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) { - $link = new HTML_Link( + $html .= ' '; + $img = new MECON_HTML_Image( + '/sistemas/intranet/images/sistemas_ayuda', + '(?)' + ); + $link = new MECON_HTML_Link( $sistema->link_ayuda, - '(?)', + $img, array(), - array('target' => '_blank') + 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(); + $html .= $link->toHtml(); } $row[] = $html; $sistema = @array_shift($sistemas); } else { $row[] = ' '; + $row[] = ' '; + $row[] = ' '; + } + if ($j % (COLUMNAS)) { + $row[] = ' '; } } - $t->addRow($row, array('width' => $pct)); + $t->addRow(array(' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ')); + $t->addRow($row, array('class' => 'intranet_sistemas_txt')); } -$m = new HTML_DietMarco('sistemas'); -$m->addTitle('Sistemas'); +$m = new HTML_DietMarco('sistemas', 'Sistemas'); +//$m->addTitle('Sistemas'); +$m->addStyleDeclaration(' + .intranet_sistemas_txt { + color: #003366; + font-family: Arial, Helvetica, sans-serif; + font-size: 10pt; + } + A.intranet_sistemas_txt { + font-weight: bold; + text-decoration: none; + }' +); $m->addBodyContent($t); $m->display();