/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package socius.telas.cadastro; import java.net.URL; import java.util.ResourceBundle; import java.util.logging.Level; import java.util.logging.Logger; import javafx.event.ActionEvent; import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.control.Dialogs; import javafx.scene.control.Label; import javafx.scene.control.TextField; import javafx.stage.Stage; import socius.telas.util.DadosGlobais; import socius.modelo.Usuario; import socius.app.ClientBoot; import socius.telas.util.CadastroHandler; /** * FXML Controller class * * @author Ana */ public class CadastroController implements Initializable { /** * Initializes the controller class. * */ @FXML private Label boasVindas; @FXML private TextField sobrenome; @FXML private TextField nome; @FXML private TextField usuario; @FXML private TextField senha; @FXML private TextField confirma; @FXML public void cancelAction(ActionEvent e) { clear(); Stage stage = (Stage) confirma.getScene().getWindow(); stage.close(); //retorno login voltarLogin(); } public void clear() { sobrenome.clear(); nome.clear(); usuario.clear(); senha.clear(); confirma.clear(); } public void voltarLogin() { try { ClientBoot redirect = DadosGlobais.getInstance().getRedirect(); redirect.telaLogin(); redirect.start(new Stage()); } catch (Exception ex) { Logger.getLogger(CadastroController.class.getName()).log(Level.SEVERE, null, ex); } } public void salvar() { try { Usuario user = new Usuario(); user.setNome(nome.getText() + " " + sobrenome.getText()); user.setLogin(usuario.getText()); if (senha.getText().equals(confirma.getText())) { user.setSenha(senha.getText()); boolean cadastroRealizado = new CadastroHandler().enviarServidor(user); if (cadastroRealizado) { Dialogs.showInformationDialog(new Stage(), "Salvo com sucesso. Você já pode realizar login utilizando as credenciais informadas." + "", "Sucesso", "Cadastro"); ClientBoot redirect = new ClientBoot(); redirect.telaLogin(); redirect.start(new Stage()); Stage st = (Stage) senha.getScene().getWindow(); st.close(); } else { Dialogs.showErrorDialog(new Stage(), "Login informado já em uso. Altere e tente novamente.", "Login já em uso", "Erro"); usuario.requestFocus(); } } else { //travar tela de baixo Dialogs.showErrorDialog(new Stage(), "Senha" + " e confirmação estão diferentes.", "Erro", "Erro"); clear(); } } catch (Exception ex) { Logger.getLogger(CadastroController.class.getName()).log(Level.SEVERE, null, ex); } } @FXML public void okAction(ActionEvent e) { if (!(nome.getText().isEmpty() || sobrenome.getText().isEmpty() && senha.getText().isEmpty() && confirma.getText().isEmpty())) { salvar(); } else { Dialogs.showErrorDialog(new Stage(), "É necessario preencher todos" + " os campos. Verifique e tente novamente.", "Erro", "Erro"); } } @Override public void initialize(URL url, ResourceBundle rb) { // String vazio="obrigatório preencher!"; // nome.setPromptText(vazio); // sobrenome.setPromptText(vazio); // usuario.setPromptText(vazio); // confirma.setPromptText(vazio); // senha.setPromptText(vazio); } }