Giter Site home page Giter Site logo

justice's People

Contributors

alitopal89 avatar almightyboz avatar glassjoseph avatar iamanissa avatar jmkoni avatar malissaromero avatar osondoar avatar seanmarcia avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

justice's Issues

Lessons can be added to the calendar

Add a lesson input field to the calendar item view to allow users to add lessons to the calendar.

Lesson (Optional) – Entity reference field to select and link to a lesson (autocomplete).
Item calendar will link to the lesson page

Lesson links are not being saved

Steps to reproduce:

  • Edit a lessons and add some links

Expected results

  • Links are saved in the db as an array
  • Links show in the UI

Actual results

  • Links are not being saved in the db

Calendar Page

Overview

Displays a calendar to show calendar items for events as well as dates that a lesson plan will be used in a session.

Add Calendar Item Button Section

Allows for the addition of a new calendar item.

Calendar Section

Displays a standard calendar with calendar item titles displayed on appropriate dates.

  • Calendar item title will link to calendar item page
  • User can move to different months
  • Only month view is needed

Permissions

Permissions Authentication Details
Private This is a privately-viewable page, so it will be able to be accessed by only those with appropriate permissions: Volunteers and Site Admins

Mockups

https://wireframe.cc/pro/pp/ae39beb9684732

Bug in lessons/new

The "term" field shows an AR association collection proxy object( eg. #Term::ActiveRecord_Associations_CollectionProxy:0x007fa24ef5deb0), not the plaintext term itself.

Use a select_to drop-down instead, because a lesson can have many terms.
Should also have functionality to add a new term through that page instead of having to go to a new page to add a term

Header & Footer

Overview

These elements are used on various pages and so are described here to avoid requirements for them being in more than one place.

Header

Contains the following (all items configurable by Site Admins):

  • Site logo that links to the home page left aligned
    • Logo is uploaded and can be replaced by Site Admins
  • Navigation menu right aligned
    • Configurable by Site Admins. Menu items can have their order controlled as well as hierarchy level. Menu items consist of a link and can be either relative or absolute. Menu items also have access settings based on role
  • Social media icons
  • Search box

Footer

TBD.

Permissions

Permissions Authentication Details
Public This is a publicly-viewable page, so it will be able to be accessed by anyone without logging in.
Private Editing of this page is private (by site admins).

Lesson Page

Overview

This is a content type that can be used to document lessons used by Justice for Juniors to work with juveniles in the justice system.

Print Button Section

This button allows a user to see and print a printer-friendly version of the lesson.
Layout will be Title, Body, Links, and Questions fields stacked and full width

Add to Calendar Button Section

This button allows a user to schedule the lesson on the calendar.
Links to the calendar item creation page
Autofills the lesson reference field on the calendar item

Metadata Section

This displays relevant metadata about the lesson.

  • Byline (populated by metadata) – Full name of the lesson’s author pulled from the user
  • Date (populated by metadata) – Creation date
  • Type (required field) – A two option field that denotes the lesson as either “Article-based” or “Activity-based”
  • Terms (required field) – Taxonomy terms associated with the lesson. Terms link to the term page. Taxonomy is managed by Site Admins.

Content Section

There are no sidebar blocks available on this type of page so it can always span full width. Elements of this section are:

  • Title (required field)
  • Body (required field) – Configured via a WYSIWG by any logged in user
  • Links (optional) – Unlimited input fields available for a URL. On render is a clickable link
  • Article or supporting document (optional) – File upload field that can accept .doc, .docx, and pdf files
  • Questions (required field) – Configured via a WYSIWG by any logged in user

Permissions

Permissions Authentication Details
Private This is a privately-viewable page, so it will be able to be accessed by only those with appropriate permissions: Volunteers and Site Admins

Mockups

https://wireframe.cc/pro/pp/e480334e984728

Set up user authentication and authorization

User Roles

  • Anonymous – logged out visitor to the site. Can only access public pages, sections and functionality
  • Volunteer – authenticated user. Can access private pages where noted.
  • Site Admin – authenticated user. Can access private pages where noted.
  • Super User – authenticated user. Has all privileges.

Style Home Page

Overview

This is the page all users will use as their home page. This is also where the logo and home menu item will link to.

Hero Section

This above the fold section will have 3 blocks that can be configured by Site Admins. One large block (640px x 488px) to the left of two blocks half the height of the larger one (320x244). Elements for each of the blocks are the same:

  • Image (cropped on render to correct dimensions to fill 100% of the block as a background)
  • Text
  • URL for text to link to

Content Section

This is a WYSIWYG that allows Site Admins to have control over this area.

Right Sidebar Section

If blocks are placed in this section they will show up. It should be 300px in width and if not present will not be rendered allowing the content section to span 100% of the width.

Permissions

Permissions Authentication Details
Public This is a publicly-viewable page, so it will be able to be accessed by anyone without logging in.
Private Editing of this page is private (by site admins).

Mockups

https://wireframe.cc/pro/pp/973dd11fc84472

Calendar Item Page

Status and TODOs

UI is functional, but the following changes are needed:

  • Style calendar item show page
  • Style calendar item edit/new page. Those two pages should share the same erb template

Overview

This is a calendar item that can present information about any date-based event.

Content Section

Displays relevant information about the item.

  • Title
  • Date – configurable date field
  • Lesson (Optional) – Entity reference field to select and link to a lesson (autocomplete)
    • On display this will link to the lesson page
  • Body (Optional) – a WYSIWYG field

Permissions

Permissions Authentication Details
Private This is a privately-viewable page, so it will be able to be accessed by only those with appropriate permissions: Volunteers and Site Admins

Basic Page

Overview

This is a content type that can be used to add internal pages for various uses.

Hero Section

This above the fold section will have a single image that spans full width that can be configured by Site Admins.

Content Section

This is a WYSIWYG that allows Site Admins to have control over this area.

Right Sidebar Section

If blocks are placed in this section they will show up. It should be 300px in width and if not present will not be rendered allowing the content section to span 100% of the width.

Permissions

Permissions Authentication Details
Public This is a publicly-viewable page, so it will be able to be accessed by anyone without logging in.
Private Editing of this page is private (by site admins).

Mockups

https://wireframe.cc/pro/pp/24455d09c84483

Lesson Listing Page

Overview

This pages shows all of the lessons on the site. This is where volunteers can easily locate lessons for use during sessions.

Create New Button

Allows the user to create a new lesson.

Filters Section

Helps volunteers more easily locate specific lessons.

  • Title – searches for titles that contain the search text
  • Type (single-select) – filters on the lesson “type” field
  • Term (multi-select) – filters on the lesson “terms” field

Lesson List Section

Displays all of the lessons or just those that match the filters. This section is paginated showing 50 lessons per page.
Columns:

  • Title
  • Type
  • Terms – comma-separated list of terms associated with the lesson. Each will link to a filtered lesson listing page that is filtered on the term selected
  • Created – creation date of the lesson

Permissions

Permissions Authentication Details
Private This is a privately-viewable page, so it will be able to be accessed by only those with appropriate permissions: Volunteers and Site Admins

Mockups

https://wireframe.cc/pro/pp/0e83656a984547

Enforce authentication

  • Volunteers can add new lessons and edit their own.
  • Site admins can create lessons and edit any
  • Volunteers can view calendar items
  • Only Site Admins can create calendar items and edit any
  • Only admins should be able to show/edit users

Users need to be approved by an admin before being able to log in to the site.

Users can sign up to the website, but they need to be approved by an admin before being able to log in.
Devise has a tutorial for that: https://github.com/plataformatec/devise/wiki/How-To:-Require-admin-to-activate-account-before-sign_in

This feature has 2 parts:

  1. Check the approved flag when users sign up and sign in
  2. The user admin view should have a way for approving users.

Nice to have:

  • Admins get notified when a new user signs up

Improve documentation

  • How to set up the application
  • Architecture
  • How to deploy
  • How to add users via console and/or change user roles
  • User approval proccess
  • Workflow for how admins can add new pictures and change copy on the site

List of Users Page

Overview

Displays a list of all active users and allows for creation of new users as well as emailing bulk selected users.

Add User Button Section

Allows for the addition of a new user.

User List Section

Displays a list of users and allows for multi-select of users to allow for bulk emailing.
Shows 100 users per page
Allow for a “select all” option

Permissions

Permissions Authentication Details
Private This is a privately-viewable page, so it will be able to be accessed by only those with appropriate permissions: Site Admins

Mockups

https://wireframe.cc/pro/pp/ac3e73eb484737

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.