campos = $campos_nuevos; } /** * Inserta una nueva capacidad profesional a la lista de capacidades. * @param campos - datos de la capacidad. */ function addCapacidad($campos) { $inserto = "";//,id_solicitud,id_perfil_tecnico, id_perfil_funcional, meses_tecnico, meses_funcional, observaciones"; $valores = ""; //, $fecha, $fecha"; //Procesamos los datos $i=1; foreach($campos as $key => $value){ if ($i>1) { $inserto .= ","; $valores .= ","; } $inserto .= " $key"; $valores .= " '$value'"; $i++; } //Insertamos en la BD $consulta = "INSERT INTO capacidades ($inserto) VALUES ($valores)"; $bd = new BD(); if(!$bd->execQuery($consulta)){ $error = "Campos de la capacidad incorrectos. Por favor, avise al webmaster de este error."; throw new Exception($error); return false; } $id = mysql_insert_id(); return $id; } } class Lista_capacidad_profesional{ public $capacidad = array(); function Lista_capacidad_profesional($id, $tipo){ $bd = new BD(); $consulta = ""; $tipo_capacidad = $tipo; $consulta = "select C.id, C.id_usuario, C.id_solicitud, C.id_perfil_tecnico, C.id_perfil_funcional, C.meses_tecnico, C.meses_funcional, C.observaciones, "; $consulta = $consulta . "PT.id as perfil_tecnico, PT.abrev, PF.id as perfil_funcional, PF.abrev "; $consulta = $consulta . "from capacidades as C left join perfil as PT on (PT.oid = C.id_perfil_tecnico) "; $consulta = $consulta . "left join perfil_funcional as PF on (PF.oid = C.id_perfil_funcional) "; switch ($tipo_capacidad) { case "candidato": $consulta = $consulta. "WHERE id_usuario = ".$id; break; case "solicitud": $consulta = $consulta. "WHERE id_solicitud = ".$id; break; } $resultado = $bd->execQuery($consulta); //Procesamos las capacidades if (mysql_num_rows($resultado) != 0) { while ($row = mysql_fetch_array($resultado)) { $this->capacidad[] = new Capacidad_profesional($row); } } return $this->capacidad; } } ?>