Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Named(value = "loginBean")
- @EJB
- private RoleServiceLocal rsbl;
- @EJB
- private ProfilServiceLocal psbl;
- @EJB
- private UtilisateurServiceLocal usbl;
- private String username;
- private String password;
- private String newPass;
- private String retapPass;
- private String lastPass;
- private String us = "";
- private String per = "";
- private String question;
- private String recupResponse = "";
- private String reponse;
- private String creerDoleance, modifierDoleance,
- creerficheExec, modifierficheExec, creerRapportTest, modifierRapportTest, fiche, direction, creerDirection, modifierDirection,
- creerProduit, modifierProduit, creerClient, modifierClient, creerVersion, modifierVersion, technicien, creerTechnicien, modifierTechnicien,
- creerMAJ, modifierMAJ, MAJ, doleance, ficheExec, RapportTest, produit, client, version, technique, creerTechnique, modifierTechnique,
- profil, creerProfil, modifierProfil, associerProfil, associerRole, activerCompte, desactiverCompte, securite, administration;
- private Utilisateur user;
- private Utilisateur utilisateur;
- private boolean remember = false;
- private boolean admin;
- @EJB //HUM Tu m'as vraiment dérangé.plus de 24h avant de me rappeller de te mettre.hum
- private ProfilRoleServiceLocal prsbl;
- public LoginBean() {
- user = new Utilisateur();
- utilisateur = new Utilisateur();
- }
- @PostConstruct
- public void init() {
- List<Role> all = rsbl.getAll();
- if (all.isEmpty()) {
- this.rsbl.saveOne(new Role(1, "Créer une Doléance", "doleance"));
- this.rsbl.saveOne(new Role(2, "Modifier Doléance", "doleance"));
- this.rsbl.saveOne(new Role(3, "Créer une fiche", "fiche"));
- this.rsbl.saveOne(new Role(4, "Modifier une fiche", "fiche"));
- this.rsbl.saveOne(new Role(5, "Créer une fiche d'exécution", "fiche d'exécution"));
- this.rsbl.saveOne(new Role(6, "Modifier fiche d'exécution", "fiche d'exécution"));
- this.rsbl.saveOne(new Role(7, "Créer une rapport de test", "rapport de test"));
- this.rsbl.saveOne(new Role(8, "Modifier une rapport de test", "rapport de test"));
- this.rsbl.saveOne(new Role(9, "Créer un produit", "produit"));
- this.rsbl.saveOne(new Role(10, "Modifier un produit", "produit"));
- this.rsbl.saveOne(new Role(11, "Créer un client", "client"));
- this.rsbl.saveOne(new Role(12, "Modifier un client", "client"));
- this.rsbl.saveOne(new Role(13, "Créer une direction", "direction"));
- this.rsbl.saveOne(new Role(14, "Modifier une direction", "direction"));
- this.rsbl.saveOne(new Role(15, "Créer une version", "version"));
- this.rsbl.saveOne(new Role(16, "Modifier une version", "version"));
- this.rsbl.saveOne(new Role(17, "Créer une mise à jour", "mise à jour"));
- this.rsbl.saveOne(new Role(18, "Modifier une mise à jour", "mise à jour"));
- this.rsbl.saveOne(new Role(19, "Créer une solution technique", "solution technique"));
- this.rsbl.saveOne(new Role(20, "Modifier une solution technique", "solution technique"));
- this.rsbl.saveOne(new Role(21, "Modifier planning", "planning"));
- this.rsbl.saveOne(new Role(22, "Créer profil", "profil"));
- this.rsbl.saveOne(new Role(23, "Modifier profil", "profil"));
- this.rsbl.saveOne(new Role(24, "Créer securite", "securite"));
- this.rsbl.saveOne(new Role(25, "Associer profil", "role"));
- this.rsbl.saveOne(new Role(26, "Associer role", "role"));
- this.rsbl.saveOne(new Role(27, "Activer compte", "compte"));
- this.rsbl.saveOne(new Role(28, "Désactiver compte", "compte"));
- this.rsbl.saveOne(new Role(29, "Modifier securite", "securite"));
- }
- List<Profil> alle = psbl.getAll();
- if (alle.isEmpty()) {
- this.psbl.saveOne(new Profil(1, "Administrateur", "administrer"));
- this.psbl.saveOne(new Profil(2, "Super Admin", "Super admin"));
- this.psbl.saveOne(new Profil(3, "Directeur", "directeur"));
- this.psbl.saveOne(new Profil(4, "Responsable", "Responsable"));
- this.psbl.saveOne(new Profil(5, "Collaborateur", "collaborer"));
- this.psbl.saveOne(new Profil(6, "Technicien", "technicien"));
- }
- List<Profil> profils = psbl.getBy("nom", "Rohastrick");
- UserTransaction tx = TransactionManager.getUserTransaction();
- if (profils.isEmpty()) {
- try {
- tx.begin();
- this.psbl.saveOne(new Profil(1, "Rohastrick", "rot2rick"));
- List<Role> roles = this.rsbl.getAll();
- for (Role role : roles) {
- ProfilRole pr = new ProfilRole();
- pr.setRole(role);
- pr.setProfil(psbl.getOneBy("nom", "Rohastrick"));
- prsbl.saveOne(pr);
- }
- Utilisateur ut = new Utilisateur();
- ut.setNom("Rot2rick");
- ut.setLogin("Rohastrick");
- ut.setPass(new Sha256Hash("helen@").toHex());
- ut.setEmail("admin");
- ut.setTelephone("admin");
- ut.setProfil(psbl.getOneBy("nom", "Rohastrick"));
- ut.setActif(true);
- usbl.saveOne(ut);
- tx.commit();
- } catch (Exception e) {
- try {
- tx.rollback();
- } catch (IllegalStateException ex) {
- Logger.getLogger(FicheBean.class.getName()).log(Level.SEVERE, null, ex);
- } catch (SecurityException ex) {
- Logger.getLogger(FicheBean.class.getName()).log(Level.SEVERE, null, ex);
- } catch (SystemException ex) {
- Logger.getLogger(FicheBean.class.getName()).log(Level.SEVERE, null, ex);
- } catch (AuthenticationException ex) {
- ex.printStackTrace();
- }
- }
- }
- }
- public boolean checkIntConnection() {
- boolean status = false;
- Socket sock = new Socket();
- InetSocketAddress address = new InetSocketAddress("www.google.com", 80);
- try {
- sock.connect(address, 3000);
- if (sock.isConnected()) {
- status = true;
- }
- } catch (Exception e) {
- } finally {
- try {
- sock.close();
- } catch (Exception e) {
- }
- }
- return status;
- }
- public void login() throws IOException {
- System.out.println("Test Roler");
- try {
- System.out.println("user=" + username);
- System.out.println("ps=" + password);
- user = usbl.getOneBy("login", username);
- if (user != null) {
- if (user.isActif() == false) {
- RequestContext context = RequestContext.getCurrentInstance();
- context.execute("PF('error').show();");
- username = "";
- return;
- }
- }
- if (user != null) {
- boolean test = new Sha256Hash("admin").toHex().equals(user.getPass());
- if (test && user.isActif() == false) {
- RequestContext context = RequestContext.getCurrentInstance();
- context.execute("PF('dialogpasse').show();");
- return;
- }
- }
- UsernamePasswordToken token = new UsernamePasswordToken(username.trim(), password.trim());
- token.setRememberMe(false);
- try {
- SecurityUtils.getSubject().login(token);
- } catch (Exception e) {
- System.out.println(""+ e.getMessage());
- }
- Subject subject = EntityRealm.getSubject();
- if (!username.equalsIgnoreCase("admin")) {
- if (subject.hasRole("Créer une fiche") || subject.hasRole("Modifier une fiche")
- || subject.hasRole("Créer une fiche d'exécution") || subject.hasRole("Modifier une fiche d'exécution")
- || subject.hasRole("Créer une Doléance") || subject.hasRole("Modifier une Doléance")
- || subject.hasRole("Créer un rapport de test") || subject.hasRole("Modifier un rapport de test")
- || subject.hasRole("Créer un produit") || subject.hasRole("Modifier un produit")
- || subject.hasRole("Créer une version à un produit") || subject.hasRole("Modifier une version du produit")
- || subject.hasRole("Créer une mise à jour") || subject.hasRole("Modifier une mise à jour")
- || subject.hasRole("Créer un Client") || subject.hasRole("Modifier Client")
- || subject.hasRole("Créer un Technicien") || subject.hasRole("Modifier un Technicien")
- || subject.hasRole("Créer une Solution Technique") || subject.hasRole("Modifier une Solution Technique")
- || subject.hasRole("Créer une Direction") || subject.hasRole("Modifier une Direction")) {
- this.administration = "true";
- } else {
- this.administration = "false";
- }
- //connexion();
- if (subject.hasRole("Créer une fiche")
- || subject.hasRole("Modifier fiche") || subject.hasRole("Modifier fiche")
- || subject.hasRole("Supprimer fiche")) {
- this.fiche = "true";
- } else {
- this.fiche = "false";
- }
- if (subject.hasRole("Créer securite") || subject.hasRole("Modifier securite")
- || subject.hasRole("Créer profil") || subject.hasRole("Modifier profil")
- || subject.hasRole("Creer securite") || subject.hasRole("Associer profil")
- || subject.hasRole("Associer role") || subject.hasRole("Activer compte")
- || subject.hasRole("Désactiver compte")) {
- this.securite = "true";
- } else {
- this.securite = "false";
- }
- if (subject.hasRole("Créer une Doléance")) {
- this.creerDoleance = "true";
- } else {
- this.creerDoleance = "false";
- }
- if (subject.hasRole("Modifier une Doléance")) {
- this.modifierDoleance = "true";
- this.doleance = "true";
- } else {
- this.modifierDoleance = "false";
- this.doleance = "false";
- }
- if (subject.hasRole("Créer un rapport de test") || subject.hasRole("Modifier un rapport de test")) {
- this.RapportTest = "true";
- } else {
- this.RapportTest = "false";
- }
- if (subject.hasRole("Créer une fiche d'exécution") || subject.hasRole("Modifier une fiche d'exécution")) {
- this.ficheExec = "true";
- } else {
- this.ficheExec = "false";
- }
- if (subject.hasRole("Créer une fiche d'exécution")) {
- this.creerficheExec = "true";
- } else {
- this.creerficheExec = "false";
- }
- if (subject.hasRole("Modifier une fiche d'exécution")) {
- this.modifierficheExec = "true";
- } else {
- this.modifierficheExec = "false";
- }
- if (subject.hasRole("Créer un rapport de test") || subject.hasRole("Modifier un rapport de test")) {
- this.RapportTest = "true";
- } else {
- this.RapportTest = "false";
- }
- if (subject.hasRole("Créer un rapport de test")) {
- this.creerRapportTest = "true";
- } else {
- this.creerRapportTest = "false";
- }
- if (subject.hasRole("Modifier un rapport de test")) {
- this.modifierRapportTest = "true";
- } else {
- this.modifierRapportTest = "false";
- }
- if (subject.hasRole("Créer un produit") || subject.hasRole("Modifier un produit")) {
- this.produit = "true";
- } else {
- this.produit = "false";
- }
- if (subject.hasRole("Créer un produit")) {
- this.creerProduit = "true";
- } else {
- this.creerProduit = "false";
- }
- if (subject.hasRole("Modifier un produit")) {
- this.modifierProduit = "true";
- } else {
- this.modifierProduit = "false";
- }
- if (subject.hasRole("Créer un technicien") || subject.hasRole("Modifier un technicien")) {
- this.technicien = "true";
- } else {
- this.technicien = "false";
- }
- if (subject.hasRole("Créer un technicien")) {
- this.creerTechnicien = "true";
- } else {
- this.creerTechnicien = "false";
- }
- if (subject.hasRole("Modifier un technicien")) {
- this.modifierTechnicien = "true";
- } else {
- this.modifierTechnicien = "false";
- }
- if (subject.hasRole("Créer un client") || subject.hasRole("Modifier un client")) {
- this.client = "true";
- } else {
- this.client = "false";
- }
- if (subject.hasRole("Créer un client")) {
- this.creerClient = "true";
- } else {
- this.creerClient = "false";
- }
- if (subject.hasRole("Modifier un client")) {
- this.modifierClient = "true";
- } else {
- this.modifierClient = "false";
- }
- if (subject.hasRole("Créer un client") || subject.hasRole("Modifier un client")) {
- this.client = "true";
- } else {
- this.client = "false";
- }
- if (subject.hasRole("Créer un client")) {
- this.creerClient = "true";
- } else {
- this.creerClient = "false";
- }
- if (subject.hasRole("Modifier un client")) {
- this.modifierClient = "true";
- } else {
- this.modifierClient = "false";
- }
- if (subject.hasRole("Créer une solution technique") || subject.hasRole("Modifier une solution technique")) {
- this.technique = "true";
- } else {
- this.technique = "false";
- }
- if (subject.hasRole("Créer une solution technique")) {
- this.creerTechnique = "true";
- } else {
- this.creerTechnique = "false";
- }
- if (subject.hasRole("Modifier une solution technique")) {
- this.modifierTechnique = "true";
- } else {
- this.modifierTechnique = "false";
- }
- if (subject.hasRole("Créer une direction") || subject.hasRole("Modifier une direction")) {
- this.direction = "true";
- } else {
- this.direction = "false";
- }
- if (subject.hasRole("Créer une direction")) {
- this.creerDirection = "true";
- } else {
- this.creerDirection = "false";
- }
- if (subject.hasRole("Modifier une direction")) {
- this.modifierDirection = "true";
- } else {
- this.modifierDirection = "false";
- }
- if (subject.hasRole("Créer un produit") || subject.hasRole("Modifier un produit")) {
- this.produit = "true";
- } else {
- this.produit = "false";
- }
- if (subject.hasRole("Créer un produit")) {
- this.creerProduit = "true";
- } else {
- this.creerProduit = "false";
- }
- if (subject.hasRole("Modifier un produit")) {
- this.modifierProduit = "true";
- } else {
- this.modifierProduit = "false";
- }
- if (subject.hasRole("Créer une mise à jour") || subject.hasRole("Modifier une mise à jour")) {
- this.MAJ = "true";
- } else {
- this.MAJ = "false";
- }
- if (subject.hasRole("Créer une mise à jour")) {
- this.creerMAJ = "true";
- } else {
- this.creerMAJ = "false";
- }
- if (subject.hasRole("Modifier une mise à jour")) {
- this.modifierMAJ = "true";
- } else {
- this.modifierMAJ = "false";
- }
- if (subject.hasRole("Créer un client") || subject.hasRole("Modifier un client")) {
- this.client = "true";
- } else {
- this.client = "false";
- }
- if (subject.hasRole("Créer un client")) {
- this.creerClient = "true";
- } else {
- this.creerClient = "false";
- }
- if (subject.hasRole("Modifier un client")) {
- this.modifierClient = "true";
- } else {
- this.modifierClient = "false";
- }
- if (subject.hasRole("Créer un profil") || subject.hasRole("Modifier un profil")) {
- this.profil = "true";
- } else {
- this.profil = "false";
- }
- if (subject.hasRole("Créer un profil")) {
- this.creerProfil = "true";
- } else {
- this.creerProfil = "false";
- }
- if (subject.hasRole("Modifier un profil")) {
- this.modifierProfil = "true";
- } else {
- this.modifierProfil = "false";
- }
- if (subject.hasRole("Associer un profil")) {
- this.associerProfil = "true";
- } else {
- this.associerProfil = "false";
- }
- if (subject.hasRole("Associer role")) {
- this.associerRole = "true";
- } else {
- this.associerRole = "false";
- }
- if (subject.hasRole("Activer un compte")) {
- this.activerCompte = "true";
- } else {
- this.activerCompte = "false";
- }
- if (subject.hasRole("Désactiver un compte")) {
- this.desactiverCompte = "true";
- } else {
- this.desactiverCompte = "false";
- }
- }
- SavedRequest savedRequest = WebUtils.getAndClearSavedRequest(Faces.getRequest());
- Faces.redirect(savedRequest != null ? savedRequest.getRequestUrl() : "index.xhtml");
- } catch (AuthenticationException e) {
- e.printStackTrace();
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_FATAL,
- "Nom d'utlisateur ou mot de passe incorrect", "");
- FacesContext.getCurrentInstance().addMessage("", mf);
- }
- //return "index";
- }
- public String currentUser() {
- Utilisateur user = EntityRealm.getUser();
- if (user == null) {
- return "Admin";
- }
- return EntityRealm.getUser().getLogin();
- }
- public Date sessionTime() {
- return EntityRealm.getSubject().getSession().getStartTimestamp();
- }
- public void logout() {
- try {
- EntityRealm.getSubject().logout();
- Faces.redirect("login.xhtml");
- username = "";
- } catch (IOException ex) {
- }
- }
- public void mot() {
- System.out.println("test");
- }
- public void modifierPasse() {
- System.out.println("test");
- System.out.println(newPass);
- System.out.println(retapPass);
- if (newPass.trim().equals(retapPass.trim())) {
- user.setPass(new Sha256Hash(newPass.trim()).toHex());
- user.setQuestion(question);
- user.setReponse(reponse);
- usbl.updateOne(user);
- question = "";
- reponse = "";
- RequestContext.getCurrentInstance().execute("PF('dialogpasse').hide();");
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_INFO,
- "Mot de passe corriger", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- } else {
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_FATAL,
- "Les mots de passe ne concorde pas", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- }
- }
- public void modifierPasse2() {
- if (new Sha256Hash(lastPass).toHex().equals(EntityRealm.getUser().getPass())) {
- if (newPass.trim().equals(retapPass.trim())) {
- if (new Sha256Hash(newPass).toHex().equals(EntityRealm.getUser().getPass())) {
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_FATAL,
- "Tapez un mot de passe différent de l'ancien", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- newPass = "";
- lastPass = "";
- retapPass = "";
- } else {
- EntityRealm.getUser().setPass(new Sha256Hash(newPass.trim()).toHex());
- usbl.updateOne(EntityRealm.getUser());
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_INFO,
- "Mot de passe corrigé", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- RequestContext context = RequestContext.getCurrentInstance();
- context.execute("PF('dialogpasse').hide()");
- }
- } else {
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_FATAL,
- "Les mots de passe ne concorde pas", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- newPass = "";
- lastPass = "";
- retapPass = "";
- }
- } else {
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_FATAL,
- "mot de passe incorrect!!!", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- newPass = "";
- lastPass = "";
- retapPass = "";
- }
- }
- public void reinitialiserPasse() {
- Utilisateur u = this.usbl.getOneBy("login", per);
- if (u.isActif() == true) {
- if (reponse.equals(u.getReponse())) {
- u.setPass(new Sha256Hash("admin").toHex());
- u.setQuestion(null);
- u.setReponse(null);
- usbl.updateOne(u);
- question = "";
- reponse = "";
- RequestContext context = RequestContext.getCurrentInstance();
- context.execute("PF('dialogRecup').hide();");
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_INFO,
- "Mot de passe réinitialisé", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- } else {
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_FATAL,
- "La reponse est fausse", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- }
- }
- }
- public String recupererQuestion() {
- if (!per.equals("")) {
- Utilisateur u = this.usbl.getOneBy("login", per);
- String quest = "";
- if (u != null) {
- if (!u.getPass().equals(new Sha256Hash("admin").toHex())) {
- if (u.isActif() == true) {
- quest = u.getQuestion();
- RequestContext context = RequestContext.getCurrentInstance();
- context.execute("PF('dialogRecup').show();");
- context.execute("PF('dialogOublie').hide();");
- return quest;
- } else {
- per = "";
- RequestContext context = RequestContext.getCurrentInstance();
- context.execute("PF('dialogOublie').hide();");
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_FATAL,
- "Votre compte est inactif,contactez l'administrateur", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- }
- } else {
- RequestContext context = RequestContext.getCurrentInstance();
- context.execute("PF('dialogOublie').hide();");
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_INFO,
- "Connectez vous à votre compte pour changer votre mot de passe", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- }
- } else {
- per = "";
- FacesMessage mf = new FacesMessage(FacesMessage.SEVERITY_FATAL,
- "le login saisi est inconnu", "");
- FacesContext.getCurrentInstance().addMessage("erreur_login", mf);
- }
- }
- return "";
- }
- this is the JSF page
- <h:form id="login" >
- <p:growl id="message" life="4000" showSummary="true" />
- <p:outputPanel autoUpdate="true" style="background-image:">
- <div class="card login-panel ui-fluid" style=" border-radius: 10px;">
- <div class="ui-g">
- <div class="ui-g-12">
- <p:graphicImage name="images/logo2x.png" library="ultima-layout" />
- </div>
- <div class="ui-g-12">
- <h:panelGroup styleClass="md-inputfield">
- <p:inputText id="identifiant" value="#{loginBean.username}" />
- <label>Email...</label>
- </h:panelGroup>
- </div>
- <div class="ui-g-12">
- <h:panelGroup styleClass="md-inputfield">
- <p:password id="motdepasse" value="#{loginBean.password}" />
- <label>Mot de Passe...</label>
- </h:panelGroup>
- </div>
- <div class="ui-g-12">
- <p:commandButton process="@form" value="Se connecter" icon="ui-icon-person" update="message" actionListener="#{loginBean.login()}" />
- <p:commandButton value="Mot de passe oublié" icon="ui-icon-help" styleClass="secondary" onclick="PF('dialogOublie').show()"/>
- </div>
- </div>
- </div>
- </p:outputPanel>
- </h:form>
Add Comment
Please, Sign In to add comment