Search in sources :

Example 1 with Principal

use of com.autentia.tnt.manager.security.Principal in project TNTConcept by autentia.

the class DynMenuBean method generateMenu.

/**
 * Generates a list of navigation items, representating entries of the dynamic menu bar
 *
 * @return
 */
private List<NavigationMenuItem> generateMenu() {
    if (navItems == null || !locale.equals(FacesUtils.getViewLocale())) {
        locale = FacesUtils.getViewLocale();
        if (log.isDebugEnabled()) {
            log.debug("generating dynamic menu");
        }
        Principal creds = null;
        boolean isAnonymous = true;
        try {
            creds = SpringUtils.getPrincipal();
            isAnonymous = false;
        } catch (ClassCastException e) {
            // veamos si es un usuario anonimo
            if ("anonymousUser".equals(SpringUtils.getPrincipalAsObject())) {
                isAnonymous = true;
            } else {
                throw new RuntimeException(e);
            }
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
        navItems = new ArrayList<NavigationMenuItem>();
        NavigationMenuItem item = null;
        if (!isAnonymous) {
            if (log.isDebugEnabled()) {
                log.debug("user is NOT anonymous");
            }
            // file menu
            if ((item = createMenuItem(creds, null, "file", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Setting.class), "settings", "/img/configure.png")));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(User.class), "#{dynMenuBean.exit}", "/img/exit.png")));
                addItem2Items(navItems, item);
            }
            // administration menu
            if ((item = createMenuItem(creds, null, "admin", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(User.class), "users", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(UserCategory.class), "userCategorys", null)));
                addItem2Item(item, (createMenuItem(creds, null, "changePassword", "/img/key.png")));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Department.class), "departments", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(WorkingAgreement.class), "workingAgreements", null)));
                addItem2Items(navItems, item);
            }
            // master tables menu
            if ((item = createMenuItem(creds, null, "masterTables", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(AccountEntryType.class), "accountEntryTypes", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(OrganizationType.class), "organizationTypes", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(InteractionType.class), "interactionTypes", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(OrganizationISOCategory.class), "organizationISOCategorys", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(ContractType.class), "contractTypes", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Magazine.class), "magazines", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(OfferRejectReason.class), "offerRejectReasons", null)));
                addItem2Items(navItems, item);
            }
            // billing
            if ((item = createMenuItem(creds, null, "billing", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Bill.class), "sii", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Bill.class), "bills", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(CreditTitle.class), "creditTitles", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(AccountEntryType.class), "accounts", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(AccountEntry.class), "accountEntrys", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(PeriodicalAccountEntry.class), "periodicalAccountEntrys", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_NOF, "nof", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(FinancialRatio.class), "financialRatios", null)));
                addItem2Items(navItems, item);
            }
            // contacts
            if ((item = createMenuItem(creds, null, "contacts", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Organization.class), "organizations", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Position.class), "positions", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Interaction.class), "interactions", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Contact.class), "contacts", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Offer.class), "offers", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Project.class), "projects", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Tag.class), "tags", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Collaborator.class), "collaborators", null)));
                addItem2Items(navItems, item);
            }
            // commissionings
            if ((item = createMenuItem(creds, null, "commissionings", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Commissioning.class), "commissionings", null)));
                addItem2Items(navItems, item);
            }
            // quality
            if ((item = createMenuItem(creds, null, "quality", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Action_ListQualityDocuments, "qualityDocuments", null)));
                addItem2Items(navItems, item);
            }
            // bulletin
            if ((item = createMenuItem(creds, null, "bulletin", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(BulletinBoard.class), "bulletinBoards", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(CompanyState.class), "companyStates", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(BulletinBoardCategory.class), "bulletinBoardCategorys", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Idea.class), "ideas", null)));
                addItem2Items(navItems, item);
            }
            // activity
            if ((item = createMenuItem(creds, null, "activity", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Activity.class), "activitys", null)));
                // addItem2Item(item,(createMenuItem(creds, Permission.Entity_Menu(ExternalActivity.class),
                // "externalActivities", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Objective.class), "objectives", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_GlobalHoursReport, "globalHoursReport", null)));
                // addItem2Item(item,(createMenuItem(creds, Permission.Entity_Menu(Occupation.class), "jpivotTest", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Occupation.class), "availabilitys", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Occupation.class), "occupations", null)));
                addItem2Items(navItems, item);
            }
            // reports tables menu
            if ((item = createMenuItem(creds, null, "reports", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Action_GeneralReports, "generalReports", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_BitacoreReports, "bitacoreReports", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_BillReports, "billReports", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_ProjectReports, "projectReports", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_InteractionReports, "interactionReports", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_OrganizationReports, "organizationReports", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_OfferReports, "offerReports", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_CommissioningReports, "commissioningReports", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_OwnReports, "ownReports", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_PersonalReports, "personalReports", null)));
                addItem2Items(navItems, item);
            }
            // publish
            if ((item = createMenuItem(creds, null, "publish", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Tutorial.class), "tutorials", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Publication.class), "publications", null)));
                addItem2Items(navItems, item);
            }
            // holiday
            if ((item = createMenuItem(creds, null, "holiday", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Holiday.class), "holidays", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(RequestHoliday.class), "requestHolidays", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(AdminHoliday.class), "adminHolidays", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_UserHolidaysState, "userHolidayState", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Action_MyHolidays, "#{userHolidaysStateBean.myHolidays}", null)));
                addItem2Items(navItems, item);
            }
            // utils
            if ((item = createMenuItem(creds, null, "utils", null)) != null) {
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Book.class), "books", null)));
                addItem2Item(item, (createMenuItem(creds, Permission.Entity_Menu(Inventary.class), "inventarys", null)));
                addItem2Items(navItems, item);
            }
        } else {
            // menu items for anonymous users
            if (log.isDebugEnabled()) {
                log.debug("user is NOT anonymous");
            }
        }
    }
    return navItems;
}
Also used : InteractionType(com.autentia.tnt.businessobject.InteractionType) UserCategory(com.autentia.tnt.businessobject.UserCategory) User(com.autentia.tnt.businessobject.User) Organization(com.autentia.tnt.businessobject.Organization) BulletinBoardCategory(com.autentia.tnt.businessobject.BulletinBoardCategory) CreditTitle(com.autentia.tnt.businessobject.CreditTitle) Activity(com.autentia.tnt.businessobject.Activity) PeriodicalAccountEntry(com.autentia.tnt.businessobject.PeriodicalAccountEntry) AccountEntry(com.autentia.tnt.businessobject.AccountEntry) RequestHoliday(com.autentia.tnt.businessobject.RequestHoliday) Department(com.autentia.tnt.businessobject.Department) PeriodicalAccountEntry(com.autentia.tnt.businessobject.PeriodicalAccountEntry) Book(com.autentia.tnt.businessobject.Book) OrganizationISOCategory(com.autentia.tnt.businessobject.OrganizationISOCategory) FinancialRatio(com.autentia.tnt.businessobject.FinancialRatio) Tutorial(com.autentia.tnt.businessobject.Tutorial) Position(com.autentia.tnt.businessobject.Position) Interaction(com.autentia.tnt.businessobject.Interaction) Setting(com.autentia.tnt.businessobject.Setting) Publication(com.autentia.tnt.businessobject.Publication) AccountEntryType(com.autentia.tnt.businessobject.AccountEntryType) CompanyState(com.autentia.tnt.businessobject.CompanyState) OrganizationType(com.autentia.tnt.businessobject.OrganizationType) Inventary(com.autentia.tnt.businessobject.Inventary) MissingResourceException(java.util.MissingResourceException) Contact(com.autentia.tnt.businessobject.Contact) Commissioning(com.autentia.tnt.businessobject.Commissioning) BulletinBoard(com.autentia.tnt.businessobject.BulletinBoard) Project(com.autentia.tnt.businessobject.Project) Objective(com.autentia.tnt.businessobject.Objective) Occupation(com.autentia.tnt.businessobject.Occupation) Collaborator(com.autentia.tnt.businessobject.Collaborator) OfferRejectReason(com.autentia.tnt.businessobject.OfferRejectReason) Offer(com.autentia.tnt.businessobject.Offer) Idea(com.autentia.tnt.businessobject.Idea) Holiday(com.autentia.tnt.businessobject.Holiday) AdminHoliday(com.autentia.tnt.businessobject.AdminHoliday) RequestHoliday(com.autentia.tnt.businessobject.RequestHoliday) NavigationMenuItem(org.apache.myfaces.custom.navmenu.NavigationMenuItem) Bill(com.autentia.tnt.businessobject.Bill) ContractType(com.autentia.tnt.businessobject.ContractType) Tag(com.autentia.tnt.businessobject.Tag) Principal(com.autentia.tnt.manager.security.Principal) Magazine(com.autentia.tnt.businessobject.Magazine) WorkingAgreement(com.autentia.tnt.businessobject.WorkingAgreement) AdminHoliday(com.autentia.tnt.businessobject.AdminHoliday)

Example 2 with Principal

use of com.autentia.tnt.manager.security.Principal in project TNTConcept by autentia.

the class BillExpirationDateBean method authenticateAs.

// TODO Extract to a Security Utils Class or similar
private void authenticateAs(final String userLogin) {
    final Principal principal = (Principal) AuthenticationManager.getDefault().loadUserByUsername(userLogin);
    Authentication auth = new UsernamePasswordAuthenticationToken(principal, principal.getUser().getPassword(), principal.getAuthorities());
    SecurityContextHolder.getContext().setAuthentication(auth);
}
Also used : Authentication(org.acegisecurity.Authentication) UsernamePasswordAuthenticationToken(org.acegisecurity.providers.UsernamePasswordAuthenticationToken) Principal(com.autentia.tnt.manager.security.Principal)

Example 3 with Principal

use of com.autentia.tnt.manager.security.Principal in project TNTConcept by autentia.

the class ActivityEvidenceNotificationBean method authenticateAs.

// TODO Extract to a Security Utils Class or similar
private void authenticateAs(final String userLogin) {
    final Principal principal = (Principal) AuthenticationManager.getDefault().loadUserByUsername(userLogin);
    Authentication auth = new UsernamePasswordAuthenticationToken(principal, principal.getUser().getPassword(), principal.getAuthorities());
    SecurityContextHolder.getContext().setAuthentication(auth);
}
Also used : Authentication(org.acegisecurity.Authentication) UsernamePasswordAuthenticationToken(org.acegisecurity.providers.UsernamePasswordAuthenticationToken) Principal(com.autentia.tnt.manager.security.Principal)

Example 4 with Principal

use of com.autentia.tnt.manager.security.Principal in project TNTConcept by autentia.

the class HibernateManagerBase method insertWithoutUser.

public void insertWithoutUser(T obj) throws DataAccException {
    Principal principal = SpringUtils.getPrincipalAdmin();
    insert(obj, principal);
}
Also used : Principal(com.autentia.tnt.manager.security.Principal)

Example 5 with Principal

use of com.autentia.tnt.manager.security.Principal in project TNTConcept by autentia.

the class ReportGeneratorStandardImpl method generate.

public void generate(ReportInfo parameters, OutputStream outputStream) throws ReportException {
    JasperReport report = null;
    Session session = null;
    Connection con = null;
    try {
        report = initReport(parameters.name, parameters.category);
        debug("ReportGenerator - report: " + report);
        debug("ReportGenerator - iniciando lista de parametros");
        if (report == null) {
            debug("ReportGenerator - SC_NOT_FOUND");
            // response.sendError(HttpServletResponse.SC_NOT_FOUND);
            this.throwError("Null report");
            return;
        }
        Map args = getParametersAsMapAndSubReport(parameters.parameters, parameters.category);
        // establecemos el resource bundle correspondiente al locale actual
        // del usuario al JasperReport
        final Principal principal = AuthenticationManager.getDefault().getCurrentPrincipal();
        args.put(JRParameter.REPORT_RESOURCE_BUNDLE, ResourceBundle.getBundle("com.autentia.tnt.resources.report", principal.getLocale()));
        debug("ReportGenerator - argc " + args.size());
        debug("ReportGenerator - iniciando conexion and BD");
        session = HibernateUtil.getSessionFactory().getCurrentSession();
        con = session.connection();
        debug("ReportGenerator - generación del informe en función del formato");
        GeneratorFactory.getFactory().getGeneratorByFormat(parameters.format).generate(outputStream, report, args, con);
        debug("ReportGenerator - finalización del informe");
    } catch (Exception e) {
        log.error("ReportGenerator - exception", e);
        this.throwError("Exception");
    /*
			 * try {
			 * response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR,
			 * e.getMessage()); } catch (IOException e1) { // TODO
			 * Auto-generated catch block e1.printStackTrace(); }
			 */
    } finally {
        if (con != null) {
            try {
                con.close();
            } catch (SQLException e1) {
                log.error("ReportGenerator - exception cerrando conexion", e1);
            }
            con = null;
        }
    }
}
Also used : SQLException(java.sql.SQLException) Connection(java.sql.Connection) JasperReport(net.sf.jasperreports.engine.JasperReport) HashMap(java.util.HashMap) Map(java.util.Map) Principal(com.autentia.tnt.manager.security.Principal) JRException(net.sf.jasperreports.engine.JRException) URISyntaxException(java.net.URISyntaxException) SQLException(java.sql.SQLException) IOException(java.io.IOException) ReportException(com.autentia.tnt.error.ReportException) Session(org.hibernate.Session)

Aggregations

Principal (com.autentia.tnt.manager.security.Principal)13 UsernamePasswordAuthenticationToken (org.acegisecurity.providers.UsernamePasswordAuthenticationToken)7 Authentication (org.acegisecurity.Authentication)6 AccountEntry (com.autentia.tnt.businessobject.AccountEntry)2 AccountEntryType (com.autentia.tnt.businessobject.AccountEntryType)2 Activity (com.autentia.tnt.businessobject.Activity)2 AdminHoliday (com.autentia.tnt.businessobject.AdminHoliday)2 Bill (com.autentia.tnt.businessobject.Bill)2 Book (com.autentia.tnt.businessobject.Book)2 BulletinBoard (com.autentia.tnt.businessobject.BulletinBoard)2 BulletinBoardCategory (com.autentia.tnt.businessobject.BulletinBoardCategory)2 CompanyState (com.autentia.tnt.businessobject.CompanyState)2 Contact (com.autentia.tnt.businessobject.Contact)2 ContractType (com.autentia.tnt.businessobject.ContractType)2 Department (com.autentia.tnt.businessobject.Department)2 FinancialRatio (com.autentia.tnt.businessobject.FinancialRatio)2 Holiday (com.autentia.tnt.businessobject.Holiday)2 Idea (com.autentia.tnt.businessobject.Idea)2 Interaction (com.autentia.tnt.businessobject.Interaction)2 InteractionType (com.autentia.tnt.businessobject.InteractionType)2