FIU’s College of Engineering and Computer Science is working with the Pinecrest Police Department (PPD) to create a web application that replaces the current process to manually fill and distribute Be On the Look Out (BOLO) reports. The BOLO application was designed and developed by past FIU students and each semester students have worked to enhance the system.

IMPORTANT: The default branch is master. Thanks

Please see the index.html file for videos of further explanation.

The Project Directory Structure looks like the tree below:

    > bolo2019
     --> bolo-angular-client
     |
     |---> e2e
     |	     ...	
     |---> node_modules
     |	     ...
     |---> src
     |	   |--> app
     |	   |    |--> 404
     |	   |	|	404.component.html
     |	   |	|	...
     |	   |	|--> about-us
     |	   |	|	about-us.component.html
     |	   |	|	...
     |	   |	|--> admin
     |	   |	|	|--> admin-about-us
     |	   |	|	|	admin-about-us.component.html
     |	   |	|	|	...
     |	   |	|	|--> admin-agency
     |	   |	|	|	agency-detail.component.html
     |	   |	|	|	...
     |	   |	|	|--> admin-categories
     |	   |	|	...
     |	   |	|	...
     |	   |	|--> agency
     |	   |	|	agency.component.html
     |	   |	|	...
     |	   |	|--> bolo
     |	   |	|	addBolo.component.html
     |	   |	|	addBolo.component.ts
     |	   |	|	...
     |	   |	|--> file
     |	   |	|	file.ts
     |	   |	|	FileService.ts
     |	   |	|--> fiucontribution
     |	   |	|	fiucontribution.component.html
     |	   |	|	...
     |	   |	|--> login
     |	   |	|	auth.guard.ts
     |	   |	|	authentication.service.ts
     |	   |	|	...
     |	   |	|--> mdcacp
     |	   |	|	mdcacp.component.html
     |	   |	|	...
     |	   |	|--> myaccount
     |	   |	|	|--> myaccountchangepassword
     |	   |	|	|	myaccountchangepassword.component.html
     |	   |	|	|	...
     |	   |	|	|--> subscribeagency
     |	   |	|	|	subscribeagency.component.html
     |	   |	|	|	...
     |	   |	|	...
     |	   |	|	...
     |	   |	|--> services
     |	   |	|     	BoloBagResponse.ts
     |	   |	|	GenericService.ts
     |	   |	|     	...
     |	   |	|--> userguides
     |	   |	|	userguide.component.html
     |	   |	|	...
     |	   |	|  app.component.html
     |	   |	|  app.component.ts
     |	   |	|  app.module.ts
     |	   |	|  app.routing.ts
     |	   |	|  ...
     |	   |	|  ...
     |	   |--> assets
     |	   |    |--> css
     |	   |	|    ...
     |	   |	|--> images
     |	   |	|    ...
     |	   |	| ...
     |	   |    | ...
     |     |--> environments
     |	   |	   environment.prod.ts
     |	   |       ...
     |     |     browserslist
     |     |     favicon.ico 
     |     |     index.html
     |     |     ...
     |     |     ...
     |     |  angular.json      
     |     |  package.json
     |     |  ...
     |	   |  ...
     |
     --> bolo-rest-api
     |
     |---> bin
     |     | ...
     |---> src
     |     |--> main
     |     |    |--> java
     |     |    |    |--> BOLO
     |     |    |    |    |--> controller    
     |     |    |    |    |    	  AgencyController.java 
     |     |    |    |    |       ... 
     |     |    |    |    |--> model
     |     |    |    |    |       Agency.java
     |     |    |    |    |       ...
     |     |    |    |    |    ...
     |     |    |--> resources
     |     |    |        application-dev.properties
     |     |    |        ...
     |     |    ...
     |---> uploads
     |     ...
     |     pom.xml



In order to get the API working, you will need to check the file: application-dev.properties, located in folder bolo-rest-api/src/main/resources. This file has the settings for SpringBoot database connection and email smtp used for API for sending email notifications.

For the email, you need to use the current or change the username and password from a google email account, that will be used to send emails notification

- spring.mail.host=smtp.gmail.com
- spring.mail.port=587
- spring.mail.username=devbolo2019@gmail.com
- spring.mail.password=bolo2019-1
- spring.mail.properties.mail.smtp.auth=true
- spring.mail.properties.mail.smtp.starttls.enable=true


For the database connection, yo will create a database, an admin user/password for SQL server and match them on the file section:

- spring.datasource.url=jdbc:sqlserver://localhost:1433;database=boloSql
- spring.datasource.username=sa
- spring.datasource.password=reallyStrongPwd123
- spring.datasource.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
- spring.jpa.show-sql=true
- spring.jpa.hibernate.dialect=org.hibernate.dialect.SQLServer2012Dialect
- spring.jpa.hibernate.ddl-auto = update

To set the email account for the receiver of the notification got to the website->click admin->user management->add new user or change email address


=====================================================================================================================================================================


# BoloAngularClient

This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 6.1.5.

## Development server

Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.

## Code scaffolding

Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`.

## Build

Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build.

## Running unit tests

Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).

## Running end-to-end tests

Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).

## Further help

To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).





 