Description of key application's layers - nhash46/Tessagon-e-Portfolio GitHub Wiki
Controllers
User Controller:
- Describes the application logic concerning user management.
- Ie. Signup/Login and Editing user model details
Upload Controller:
- Describes the application logic concerning the uploading of user documents.
- Ie. Image uploading, PDF uploading
Blog Controller:
- describes the application logic concerning blog management.
- Ie. Posting, Editing, Deleting
Comment Controller:
- describes the application logic concerning comment management.
- Ie. Posting, Editing, Deleting, Liking
Experience Controller:
- Describes the application logic concerning user experience objects.
- Ie. Adding, Editing, Deleting
Education Controller:
- Describes the application logic concerning user education objects.
- Ie. Adding, Editing, Deleting
Skill Controller:
- Describes the application logic concerning user skill objects.
- Ie. Adding, Editing, Deleting
Admin Controller:
- Describes the application logic concerning user objects with administrative privileges.
- Ie. Viewing all users, banning users, unbanning users, etc
Report Controller:
- Describes the application logic concerning report objects.
- Ie. Creating new reports, deleting reports, etc
Achievement Controller:
- Describes the application logic concerning achievement objects.
- Ie. Adding, Editing, Deleting
Models
User
- Fundamental model that stores all relevant information of a particular user
- All other models are referenced as attributes
Blog
- Model that stores information relevant to a single blog post created a particular user
- References the Comment model as an attribute
Comment
- Model that stores information relevant to a single comment made on a blog
- References the User and Blog model as attributes
Document
- Model that stores information relevant to a single document uploaded by a user
- Document types include pdfs, and jpg/png
- Ie. resume, profile picture, background picture, etc.
- References the User model as an attribute
Education
- Model that stores information relevant to a single education artefact belonging to a user
- References the User model as an attribute
Experience
- Model that stores information relevant to a single experience artefact belonging to a user
- References the User model as an attribute
Links
- Model that stores information relevant to a single link artefact belonging to a user
- Ie. resume, facebook, twitter, linkedin, etc
- References the User model as an attribute
Skill
- Model that stores information relevant to a single skill artefact belonging to a user
- References the User model as an attribute
Report
- Model that stores information relevant to a single report artefact created by a user
- References the Comment model as an attribute
Achievement
- Model that stores information relevant to a single achievement artefact belonging to a user
- References the User model as an attribute