git-svn-id: https://192.168.0.254/svn/Proyectos.Incam_Intranet/trunk/src@77 e2b1556b-49f8-d141-9351-52d6861a72d9
249 lines
9.5 KiB
PHP
249 lines
9.5 KiB
PHP
<?php
|
|
include("seguridad.php");
|
|
include("functions.php");
|
|
|
|
$idPedido=$_GET['idPedido'];
|
|
include_once("html/cabecera.php");
|
|
include_once("Objects/HTML.php");
|
|
include_once("Objects/Pedido.php");
|
|
|
|
$pedido=new Pedido($idPedido,$usuario);
|
|
$html=new HTML($locale);
|
|
// Comprobamos los permisos
|
|
// Sólo el gerente de ese pedido puede editarlo
|
|
if(($pedido->getValor("gerente")!=$usuario->getValor("oid"))
|
|
&& !$usuario->tieneRol("1")){
|
|
header("Location: aplicacion.php?e=permiso");
|
|
exit;
|
|
}
|
|
|
|
// Comprobamos si estamos haciendo algo
|
|
$action="";
|
|
if (isset($_POST['action']) || isset($_GET['action'])) {
|
|
if (isset($_POST['action']) && ($_POST['action']!="")) {
|
|
$action = $_POST['action'];
|
|
} else {
|
|
if (isset($_GET['action']) && ($_GET['action']!="")) {
|
|
$action = $_GET['action'];
|
|
}
|
|
}
|
|
}
|
|
|
|
$errores = array();
|
|
$mensaje="";
|
|
|
|
switch ($action) {
|
|
case "edit":
|
|
try{
|
|
$pesoTec=$_POST['pesoTec'];
|
|
$pesoIdi=$_POST['pesoIdi'];
|
|
$pesoPer=$_POST['pesoPer'];
|
|
if(($pesoTec=="") ||($pesoIdi=="") || ($pesoPer=="")
|
|
|| !is_numeric($pesoTec) || !is_numeric($pesoIdi) || !is_numeric($pesoPer)
|
|
|| (!($pesoTec>=0)) ||(!($pesoIdi>=0)) || (!($pesoPer>=0))
|
|
|| ($pesoTec + $pesoIdi + $pesoPer != 100)){
|
|
$errores[]="8";
|
|
}
|
|
/* Comprobamos que el número de personas necesarios no sea inferior el número de personas
|
|
* que están actualmente aceptadas
|
|
*/
|
|
$listaAceptadas=$pedido->getCandidatosAceptados();
|
|
if($_POST['empleados']< count($listaAceptadas)){
|
|
$errores[]="9";
|
|
$mensaje=$locale['1096'];
|
|
}
|
|
|
|
if(count($errores)==0){
|
|
$pedido->setCampo("nombre",$_POST['nombre']);
|
|
$pedido->setCampo("prioridad",$_POST['prioridad']);
|
|
$pedido->setCampo("empleados",$_POST['empleados']);
|
|
$pedido->setCampo("duracion",$_POST['duracion']);
|
|
$pedido->setCampo("gerente",$_POST['gerente']);
|
|
$pedido->setCampo("cliente",$_POST['clientes']);
|
|
$pedido->setCampo("salario_min",$_POST['salario_min']);
|
|
$pedido->setCampo("salario_max",$_POST['salario_max']);
|
|
$pedido->setCampo("procedencia",$_POST['procedencia']);
|
|
$pedido->setCampo("pesoIdioma",$pesoIdi);
|
|
$pedido->setCampo("pesoPerfil",$pesoPer);
|
|
$pedido->setCampo("pesoTecno",$pesoTec);
|
|
|
|
$pedido->addPerfiles($_POST['perfil']);
|
|
$pedido->addTecnologias($_POST['tecnologia']);
|
|
$pedido->addIdiomas($_POST['idiomas']);
|
|
$pedido->addProvincias($_POST['provincias']);
|
|
$pedido->setCampo("observaciones",$_POST['observaciones']);
|
|
$mensaje=$locale['1063'];
|
|
}
|
|
} catch (Exception $e){
|
|
$mensaje=$locale[$e->getMessage()];
|
|
}
|
|
|
|
break;
|
|
case "dellTec": $idAction=$_GET['id'];
|
|
$pedido->removeTecnologia($idAction);
|
|
$mensaje=$locale['1064'];
|
|
break;
|
|
case "dellIdi": $idAction=$_GET['id'];
|
|
$pedido->removeIdioma($idAction);
|
|
$mensaje=$locale['1065'];
|
|
break;
|
|
case "dellLoc": $idAction=$_GET['id'];
|
|
$pedido->removeProvincia($idAction);
|
|
$mensaje=$locale['1089'];
|
|
break;
|
|
case "dellPer": $idAction=$_GET['id'];
|
|
$pedido->removePerfil($idAction);
|
|
$mensaje=$locale['1090'];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
echo $html->menuPedidos($usuario,"");
|
|
|
|
|
|
echo "<h2>".$pedido->getValor("nombre")."</h2>";
|
|
if($mensaje!=""){
|
|
// Mostramos el mensaje
|
|
if(in_array("9",$errores)){
|
|
echo "<div class=\"aviso error\">".$mensaje."</div>";
|
|
}else{
|
|
echo "<div class=\"aviso ok\">".$mensaje."</div>";
|
|
}
|
|
|
|
}
|
|
echo '<form method="POST" action="gestion_pedido.php?idPedido='.$pedido->getValor("oid").'" name="form_registro" enctype="multipart/form-data">';
|
|
echo "<input type=\"hidden\" name=\"action\" value=\"edit\" />";
|
|
echo '<input type="submit" value="'.$locale['gu'].'" onclick="return comprobar_registro(this)" class="button">';
|
|
echo "<table id=\"editPedido\">" .
|
|
"<tr>" .
|
|
" <td>".$locale['1043']."<input type=\"text\" name=\"nombre\" value=\"".$pedido->getValor("nombre")."\" size=\"30\" maxlength=\"255\" ></td>" .
|
|
" <td>" .$locale['1022'].":";
|
|
rellena_prioridad_select("prioridad",$pedido->getValor("prioridad"));
|
|
echo " - ".$locale['1024'].": <input type=\"text\" name=\"empleados\" value=\"".$pedido->getValor("empleados")."\" maxlenght=\"3\" size=\"2\" />" .
|
|
"<br />".$locale['1026'].": <input type=\"text\" name=\"duracion\" value=\"".$pedido->getValor("duracion")."\" maxlenght=\"3\" size=\"2\" />" .
|
|
"</td>";
|
|
echo "<td>".$locale['1027'];
|
|
$auxiliar = '<option value="">'.$locale['ns'].'</option>';
|
|
rellena_personal_permiso("gerente","GP",$auxiliar,$pedido->getValor("gerente"));
|
|
echo "</td></tr>" .
|
|
" <tr><td>".$locale['1504'];
|
|
$auxiliar = '<option selected value="">'.$locale['ns'].'</option>';
|
|
rellena_desplegable_select_oid("clientes","clientes",$auxiliar,$pedido->getValor("cliente"));
|
|
echo "</td><td>".$locale['121']."<br/>";
|
|
|
|
$perfiles=$pedido->getPerfiles();
|
|
$keyperfiles=array_values($perfiles);
|
|
// Mostramos la lista para borrar
|
|
if(count($perfiles)>0){
|
|
foreach ($perfiles as $nombre =>$valor) {
|
|
echo $nombre." <a href=\"gestion_pedido.php?idPedido=".$pedido->getValor("oid")."&action=dellPer&id=".$valor."\">Borrar</a><br />";
|
|
}
|
|
} else {
|
|
?>
|
|
<span class="errorcampo"><?php if($pedido->getValor("pesoPerfil") > 0) echo $locale['1097'];?></span><br />
|
|
<?php
|
|
}
|
|
echo $html->listaSelect("perfil","oid","id","perfil",array("",$locale['ns']),$keyperfiles,false,true,"15");
|
|
|
|
|
|
|
|
|
|
//rellena_desplegable_select_oid("perfil","perfil",$auxiliar,$pedido->getValor("perfil"));
|
|
|
|
|
|
echo "</td><td>".$locale['132'].$pedido->getValor("nombre_estado");
|
|
|
|
echo "</td></tr>";
|
|
|
|
echo "<tr><td colspan=\"2\">";
|
|
echo $locale['129'];
|
|
rellena_desplegable_select_oidCol("salario","id","nombre","salario_min",$auxiliar,$pedido->getValor("salario_min"));
|
|
echo ' - '.$locale['130'].'';
|
|
rellena_desplegable_select_oidCol("salario","id","nombre","salario_max",$auxiliar,$pedido->getValor("salario_max"));
|
|
|
|
|
|
echo "</td><td>".$locale['1800'];
|
|
rellena_procedencias("procedencia",$auxiliar,$pedido->getValor("procedencia"));
|
|
echo "</td></tr>";
|
|
echo "<tr><td colspan=\"3\">" .
|
|
"<table><tr><td>".$locale['122']."</td><td>";
|
|
|
|
$tecnologias=$pedido->getTecnologias();
|
|
$keytecnologias=array_values($tecnologias);
|
|
// Mostramos la lista para borrar
|
|
if(count($tecnologias)>0){
|
|
foreach ($tecnologias as $nombre =>$valor) {
|
|
echo $nombre." <a href=\"gestion_pedido.php?idPedido=".$pedido->getValor("oid")."&action=dellTec&id=".$valor."\">Borrar</a><br />";
|
|
}
|
|
} else {
|
|
?>
|
|
<span class="errorcampo"><?php if($pedido->getValor("pesoTecno") > 0) echo $locale['1097'];?></span><br />
|
|
<?php
|
|
}
|
|
echo $html->listaSelect("tecnologia","oid","id","tecnologia",array("",$locale['ns']),$keytecnologias,false,true,"15");
|
|
|
|
|
|
|
|
|
|
echo "</td><td>".$locale['123']."</td><td>";
|
|
$idiomas=$pedido->getIdiomas();
|
|
$keyidiomas=array_values($idiomas);
|
|
// Mostramos la lista para borrar
|
|
if(count($idiomas)>0){
|
|
foreach ($idiomas as $nombre =>$valor) {
|
|
echo $nombre." <a href=\"gestion_pedido.php?idPedido=".$pedido->getValor("oid")."&action=dellIdi&id=".$valor."\">Borrar</a><br />";
|
|
}
|
|
} else {?>
|
|
<span class="errorcampo"><?php if($pedido->getValor("pesoIdioma") > 0) echo $locale['1097'];?></span><br />
|
|
<?php
|
|
}
|
|
echo $html->listaSelect("idiomas","oid","id","idiomas",array("",$locale['ns']),$keyidiomas,false,true,"15");
|
|
|
|
|
|
|
|
echo "</td><td>".$locale['209']."</td><td>";
|
|
$localidades=$pedido->getProvincias();
|
|
$keylocalidades=array_values($localidades);
|
|
// Mostramos la lista para borrar
|
|
if(count($localidades)>0){
|
|
foreach ($localidades as $nombre =>$valor) {
|
|
echo $nombre." <a href=\"gestion_pedido.php?idPedido=".$pedido->getValor("oid")."&action=dellLoc&id=".$valor."\">Borrar</a><br />";
|
|
}
|
|
} else {
|
|
?>
|
|
<span class="errorcampo"><?php echo $locale['1097']; ?></span><br />
|
|
<?php
|
|
}
|
|
echo $html->listaSelect("provincias","oid","id","provincias",array("",$locale['ns']),$keylocalidades,false,true,"15");
|
|
|
|
|
|
|
|
echo "</td>";
|
|
?>
|
|
<!--td <?php if(in_array("8",$errores)) {echo " class=\"errorcampo\"";} ?> width="200px">
|
|
<?php echo $locale['1078']; ?>: <input name="pesoTec" type="text" size="5" align="right" value="<?php echo $pedido->getValor("pesoTecno"); ?>" <?php if((!is_numeric($pesoTec))&& ($pesoTec!="")) {echo " class=\"errorcampo\"";}?> <?php echo "/> %<br />"; ?>
|
|
<?php echo $locale['1079']; ?>: <input name="pesoIdi" type="text" size="5" value="<?php echo $pedido->getValor("pesoIdioma"); ?>" <?php if((!is_numeric($pesoIdi)) && ($pesoIdi!="")) {echo " class=\"errorcampo\"";} ?> <?php echo "/> %<br />"; ?>
|
|
<?php echo $locale['1080']; ?>: <input name="pesoPer" type="text" size="5" value="<?php echo $pedido->getValor("pesoPerfil"); ?>" <?php if((!is_numeric($pesoPer))&& ($pesoPer!="")) {echo " class=\"errorcampo\"";} ?> <?php echo "/> %<br />"; ?>
|
|
<?php echo $locale['1081']; ?>
|
|
</td-->
|
|
<?php
|
|
|
|
echo "</tr></table></td></tr>";
|
|
echo '<tr><td colspan="3" align="center">'.$locale['135'].'<br><textarea name="observaciones" rows="30" cols="120" style="overflow: auto; width:100%; ">'.
|
|
$pedido->getValor("observaciones").
|
|
'</textarea></td></tr>';
|
|
echo '<tr><td colspan="3" align="center">'.$locale['127'].'<br><textarea name="historial" readonly rows="8" cols="120" maxlength="300" style="overflow: auto;">';
|
|
echo $pedido->getHistorial();
|
|
echo '</textarea></td></tr>';
|
|
|
|
/* Botones de guardar y restablecer */
|
|
echo "<tr><td colspan=\"3\" align=\"center\">";
|
|
echo '<input type="submit" value="'.$locale['gu'].'" onclick="return comprobar_registro(this)" class="button">';
|
|
echo '<input type="reset" value="'.$locale['res'].'" class="button"></td>';
|
|
echo "</tr></table>";
|
|
echo "</form>";
|
|
include_once("html/pie.php");
|
|
|
|
?>
|