forked from Coded/SIPRP
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							128 lines
						
					
					
						
							3.4 KiB
						
					
					
				
			
		
		
	
	
							128 lines
						
					
					
						
							3.4 KiB
						
					
					
				| /*
 | |
|  * RequestServlet.java
 | |
|  *
 | |
|  * Created on 4 de Marco de 2005, 18:19
 | |
|  */
 | |
| 
 | |
| package com.evolute.siprp.pagina;
 | |
| 
 | |
| import java.io.*;
 | |
| import java.util.*;
 | |
| 
 | |
| import javax.servlet.*;
 | |
| import javax.servlet.http.*;
 | |
| 
 | |
| import org.apache.commons.fileupload.*;
 | |
| 
 | |
| /**
 | |
|  *
 | |
|  * @author  psantos
 | |
|  */
 | |
| public class RecruitServlet extends MailerServlet
 | |
| {
 | |
| 	private final static String REC_FUNCAO = "rec_funcao";
 | |
| 	private final static String REC_NOME = "rec_nome";
 | |
| 	private final static String REC_MORADA = "rec_morada";
 | |
| 	private final static String REC_TELEFONE = "rec_telefone";
 | |
| 	private final static String REC_EMAIL = "rec_email";
 | |
| 	private final static String REC_CV = "rec_cv";
 | |
| 
 | |
| 	private final static String[] FORM_FIELDS = new String[]{
 | |
| 								REC_FUNCAO, REC_NOME, REC_MORADA, 
 | |
| 								REC_TELEFONE, REC_EMAIL, REC_CV
 | |
| 							};
 | |
| 
 | |
| 	public void doPost( HttpServletRequest req, HttpServletResponse res )
 | |
| 		throws IOException
 | |
| 	{
 | |
| 		Hashtable parameters;
 | |
| 		String fileName = "";
 | |
| 		String type = "";
 | |
| 		byte file[] = new byte[0];
 | |
| 		boolean isMultipart = FileUpload.isMultipartContent( req );
 | |
| 		
 | |
| 		ServletOutputStream out = res.getOutputStream();
 | |
| 		res.setContentType( "text/html" );
 | |
| 		
 | |
| 		if( isMultipart )
 | |
| 		{
 | |
| 			parameters = new Hashtable();
 | |
| 			DiskFileUpload upload = new DiskFileUpload();
 | |
| 			upload.setSizeThreshold(1000000);
 | |
| 			upload.setSizeMax(1000000);
 | |
| 			List items;
 | |
| 			try
 | |
| 			{
 | |
| 				items = upload.parseRequest(req);
 | |
| 			}
 | |
| 			catch( FileUploadException ex )
 | |
| 			{
 | |
| 				out.println( showResultPage( false, "mail/pedido_enviado.html", "mail/pedido_nao_enviado.html" ) );
 | |
| 				return;
 | |
| 			}
 | |
| 			Iterator iter = items.iterator();
 | |
| 			while( iter.hasNext() )
 | |
| 			{
 | |
| 				FileItem item = (FileItem) iter.next();
 | |
| 
 | |
| 				if (item.isFormField())
 | |
| 				{
 | |
| 					String name = item.getFieldName();
 | |
| 					String value = item.getString();
 | |
| 					parameters.put( name, value );
 | |
| 				}
 | |
| 				else
 | |
| 				{
 | |
| 					String fieldName = item.getFieldName();
 | |
| 					fileName = item.getName();
 | |
| 					file = item.get();
 | |
| 					if( file == null || file.length == 0 )
 | |
| 					{
 | |
| 						isMultipart = false;
 | |
| 					}
 | |
| 					type = item.getContentType();
 | |
| 				}
 | |
| 			}
 | |
| 		}
 | |
| 		else
 | |
| 		{
 | |
| 			parameters = parseParameters( new Hashtable( req.getParameterMap() ) );
 | |
| 		}
 | |
| 		String content = createContent( parameters, FORM_FIELDS, "mail/envio_cv.txt" );
 | |
| 
 | |
| 		String email = DEFAULT_EMAIL;
 | |
| 		if( PROPERTIES != null && PROPERTIES.containsKey( EMAIL_RECRUTAMENTO ) )
 | |
| 		{
 | |
| 			email = ( String ) PROPERTIES.get( EMAIL_RECRUTAMENTO );
 | |
| 		}
 | |
| 		String from = email;
 | |
| 		String destination = email;
 | |
| 		String subject = "Envio de CV atrav\u00e9s do site www.siprp.pt";
 | |
| 		// manda mail
 | |
| 		boolean success;
 | |
| 		String nome = ( String ) parameters.get( REC_NOME ); 
 | |
| 		String telefone = ( String ) parameters.get( REC_TELEFONE );
 | |
| 		String mail = ( String ) parameters.get( REC_EMAIL );
 | |
| 		if( nome == null || nome.trim().length() == 0 || telefone == null || telefone.trim().length() == 0 ||
 | |
| 			mail == null || mail.trim().length() == 0 || mail.indexOf( '@' ) == -1 )
 | |
| 		{
 | |
| System.out.println( "nome: " + nome + " teefone: "  + telefone + " email : " + email  );
 | |
| 			success = false;
 | |
| 		}
 | |
| 		else if( isMultipart )
 | |
| 		{
 | |
| System.out.println( "Multipart" );
 | |
| 			success = sendMail( from, destination, subject, content, false, fileName, file, type );
 | |
| 		}
 | |
| 		else
 | |
| 		{
 | |
| System.out.println( "Normal" );
 | |
| 			success = sendMail( from, destination, subject, content, false );
 | |
| 		}
 | |
| 
 | |
| 		// mostra pagina correspondente
 | |
| 		
 | |
| 		out.println( showResultPage( success, "mail/cv_enviado.html", "mail/cv_nao_enviado.html" ) );
 | |
| 	}
 | |
| }
 |