Code Monkey home page Code Monkey logo

sweatbox-calendar's Introduction

Sweatbox Calendar Build Status

About this project

This project has been created using Laravel. The purpose was for me to learn Laravel, so I can use it for later projects.

Features

  • Create/Edit/Remove students.
  • Create/Edit/Remove sessions.
  • Easy way to retrieve stats of student.
  • Session types can be edited to what's needed within your vACC.

Installing

These steps already assume you have a working PHP (>= 7.1.3) server to work with (or go here https://laravel.com/docs/master/homestead)

  1. Clone/Download the repository
  2. Copy .env.example to .env, and change data where needed. Only change the DB credentials as required.
    • At some point, emails will also be used to send reminders to mentors/students before a session (if they want).
  3. Run php artisan key:generate. This will generate a new APP_KEY, and replaces the one in .env
  4. Run composer install to install all the other dependencies.
  5. Open database/migrations/2018_03_01_102943_create_session_types.php, and add/edit/remove session types if needed.
    • At some point, a page will be created where you can edit the session types.
  6. Run php artisan migrate to run all the database migrations.
  7. Run php artisan serve to start a local PHP server. You can also wish to use something like XAMPP to create new local domain, but I won't explain how to do that.
  8. Navigate to http://localhost:8000 (or whatever you have setup as said before).

Default Login: Email: [email protected] | Password: admin (can be changed after first login). It is recommended to only use this account to create some initial data, then to use that data to work with all other data.

Default password for new students/mentors: Password (subject to change before v1.0.0 is live)

sweatbox-calendar's People

Contributors

daveroverts avatar dependabot[bot] avatar

Watchers

 avatar

sweatbox-calendar's Issues

student/mentor.edit: Change rating dropdown to buttons

Normally, a student begins with OBS rating. When you edit it, you don't directly go to S3, but S1. I think it's better to just use buttons instead of a dropdown to upgrade/downgrade a rating. Might aswell also do this for mentors.

mentor.delete returns blank if students => 1

When a admin presses delete on a mentor that has at least 1 student. The page returns blank. I can do a few things here:

  • Return to mentor.overview view with error that you need to reassign students new/no mentor.
  • Auto remove the mentor from students, then remove the mentor.
  • Change students table to use onDelete('cascade').

I'll decide what I'll do, and then work on this issue.

Combine students and mentors table into one

I think it's a good idea to combine students and mentors into 1 table. Because, well, think about it, everybody begins as a student, and may later decide that he/she wants to become a mentor.

Also, make the registration form only accessable by the admin

MentorController@Show

Create MentorController@Show, where you can find information regarding the mentor + all students

All views: Container

I noticed that I put the container in every single view. It should be in the app.blade view.

Generating routes/url's in forms

There are a few ways to generate routes/url's within a form. Within the current views, I use these 2 methods:

  1. <form action="/student/{{$student->id}}/edit">.
  2. <form action ="{{ route('student.edit', $id) }}">".

I'm thinking to change everything to the shorter route() function

Add session report

Add session reports. This is something the mentor will be able to fill in after the session has been finished. Mentors should be able to edit the session reports later on.

Add some tests

Add some tests in using PhpUnit so I know when I screwed up or not. When tests are created, include TravisCI

Add messages after action

Would be great to see a error/info message after you press a button. For example Student has been added to the system

All views: messages

In commit d176084, I've added a message should you delete a mentor. I have also opened #30 to get messages on all views.

Time to add a general message generator in app.blade

Student.edit: Update returns blank page

Somehow, I got a feeling the same thing is happening in #17 , but now the page just returns a blank page. I really need to figure out if it's possible to create a second form, while still keeping the delete button on the same place.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.