Commit 8ad11a4e authored by Julia Santos's avatar Julia Santos

Merge branch 'adaptHTML' into 'master'

Adapt html

See merge request !9
parents 393a2df7 2416b949
......@@ -3,8 +3,9 @@ import datetime
from django.core.validators import FileExtensionValidator
class LoginForm(forms.Form):
user = forms.CharField(label = 'username', max_length = 100)
password = forms.CharField(widget = forms.PasswordInput())
user = forms.CharField(label = 'username', max_length = 100, widget = forms.TextInput(attrs={'class':'emailBox'}))
password = forms.CharField(widget = forms.PasswordInput(attrs={'class':'passwordBox'}))
auto_id = False
class ProductTypeForm(forms.Form):
Product_Name = forms.CharField(max_length = 255)
......
body {
width: 100%;
height: 100%;
margin: 0px;
}
.listViewHeader {
background-color: rgba(40, 40, 40, 1);
width: 100vw;
color: white;
text-align: left;
}
.breadcrumbsHead {
font-family: "Roboto Bold";
font-size: 46px;
margin-left: 50px;
}
.lowerPage {
width: 100vw;
display: grid;
grid-template-columns: repeat(6, 16.67vw);
grid-template-rows: 12.5vh 87.5vh;
text-align: left;
background-color: rgba(196, 196, 196, 1);
}
.sidebar {
height: 200vh;
background-color: rgba(196, 196, 196, 1);
display: grid;
grid-template-rows: repeat(16, 6.25vh);
grid-template-columns: repeat(2, 8.33vw);
grid-column: 1/2;
z-index: 1;
left: 0;
}
.sideItem {
display: grid;
background-color: rgba(104, 104, 104, 0.7);
transform: none;
}
.sideText {
font-family: "Roboto";
font-size: 24px;
color: white;
grid-column: 2/3;
margin-right: 5px;
text-align: right;
}
#fridgeIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 1/6;
grid-column: 1/2;
margin: 10px;
}
#statsIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 4/9;
grid-column: 1/2;
margin: 10px;
}
#toBuyIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 7/12;
grid-column: 1/2;
margin: 10px;
}
.fridge {
grid-row: 3/4;
grid-column: 1/3;
}
.stats {
grid-row: 6/7;
grid-column: 1/3;
}
.toBuy {
grid-row: 9/10;
grid-column: 1/3;
}
.pageSubhead {
grid-column: 2/7;
grid-row: 1/2;
background-color: white;
display: grid;
grid-template-columns: 3vw repeat(6, 15.67vw) 3vw;
grid-template-rows: repeat(3, 6.25vh);
}
.subheader {
font-family: "Roboto Medium";
font-size: 10vh;
grid-column: 2/3;
text-align: center;
}
.addItem {
grid-column: 3/4;
grid-row: 2/3
}
.addItemButton {
margin-left: 20px;
margin-right: 20px;
background-color: rgba(175, 175, 175, 0.7);
border-radius: 100px;
transform: none;
}
.addItemText {
font-family: "Roboto Medium";
font-size: 18px;
color: white;
text-align: center;
}
.changeView {
grid-column: 5/6;
grid-row: 2/3;
}
.changeViewDropdown {
background-color: rgba(228, 228, 228, 0.7);
transform: none;
}
.changeViewText {
text-align: center;
font-family: "Roboto Medium";
font-size: 14px;
}
.month {
display: grid;
grid-column: 2/3;
margin-left: 1vw;
font-family: Roboto;
font-style: normal;
font-size: 24px;
align-items: center;
}
.addItem {
display: grid;
grid-column: 2/3;
margin-left: 1vw;
align-items: center;
font-family: Roboto;
font-style: normal;
font-size: 24px;
}
a {
color: rgba(0,0,0,0);
}
\ No newline at end of file
body {
width: 100%;
height: 100%;
margin: 0px;
}
.listViewHeader {
background-color: rgba(40, 40, 40, 1);
width: 100vw;
color: white;
text-align: left;
}
.breadcrumbsHead {
font-family: "Roboto Bold";
font-size: 46px;
margin-left: 50px;
}
.lowerPage {
width: 100vw;
display: grid;
grid-template-columns: repeat(6, 16.67vw);
grid-template-rows: 12.5vh 87.5vh;
text-align: left;
background-color: rgba(196, 196, 196, 1);
}
.sidebar {
height: 200vh;
background-color: rgba(196, 196, 196, 1);
display: grid;
grid-template-rows: repeat(16, 6.25vh);
grid-template-columns: repeat(2, 8.33vw);
grid-column: 1/2;
z-index:1;
left:0;
}
.sideItem {
display: grid;
background-color: rgba(104, 104, 104, 0.7);
transform: none;
}
.sideText {
font-family: "Roboto";
font-size: 24px;
color: white;
grid-column: 2/3;
margin-right: 5px;
text-align: right;
}
#fridgeIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 1/6;
grid-column: 1/2;
margin: 10px;
}
#statsIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 4/9;
grid-column: 1/2;
margin: 10px;
}
#toBuyIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 7/12;
grid-column: 1/2;
margin: 10px;
}
.fridge {
grid-row: 3/4;
grid-column: 1/3;
}
.stats {
grid-row: 6/7;
grid-column: 1/3;
}
.toBuy {
grid-row: 9/10;
grid-column: 1/3;
}
.pageSubhead {
grid-column: 2/7;
grid-row: 1/2;
background-color: white;
display: grid;
grid-template-columns: 3vw repeat(6, 15.67vw) 3vw;
grid-template-rows: repeat(3, 6.25vh);
}
.subheader {
font-family: "Roboto Medium";
font-size: 10vh;
grid-column: 2/3;
text-align: center;
}
.addItem {
grid-column: 3/4;
grid-row: 2/3
}
.addItemButton {
margin-left: 20px;
margin-right: 20px;
background-color: rgba(175, 175, 175, 0.7);
border-radius: 100px;
transform: none;
}
.addItemText {
font-family: "Roboto Medium";
font-size: 18px;
color: white;
text-align: center;
}
.changeView {
grid-column: 5/6;
grid-row: 2/3;
}
.changeViewDropdown {
background-color: rgba(228, 228, 228, 0.7);
transform: none;
}
.changeViewText {
text-align: center;
font-family: "Roboto Medium";
font-size: 14px;
}
.month {
display: grid;
grid-column: 2/3;
margin-left: 1vw;
font-family: Roboto;
font-style: normal;
font-size: 24px;
align-items: center;
}
.addItemForm {
display: grid;
grid-column: 2/3;
margin-left: 1vw;
align-items: center;
font-family: Roboto;
font-style: normal;
font-size: 24px;
}
.back{
color:black;
font-family: "Roboto Bold";
}
a {
color: rgba(0,0,0,0);
}
@font-face {
font-family: Roboto Bold;
src: url(Roboto-Bold.ttf);
}
@font-face {
font-family: Roboto Black;
src: url(Roboto-Black.ttf);
}
@font-face {
font-family: Roboto Medium;
src: url(Roboto-Medium.ttf);
}
@font-face {
font-family: Roboto;
src: url(Roboto-Regular.ttf);
}
body {
width: 100%;
height: 100%;
margin: 0px;
}
.addProductHeader {
background-color: rgba(40, 40, 40, 1);
width: 100vw;
color: white;
text-align: left;
}
.breadcrumbsHead {
font-family: "Roboto Bold";
font-size: 46px;
margin-left: 50px;
}
.lowerPage {
width: 100vw;
display: grid;
grid-template-columns: repeat(6, 16.67vw);
text-align: left;
background-color: white;
}
.sidebar {
height: 200vh;
background-color: rgba(196, 196, 196, 1);
display: grid;
grid-template-rows: repeat(16, 6.25vh);
grid-template-columns: repeat(2, 8.33vw);
grid-column: 1/2;
z-index:1;
left:0;
}
.sideItem {
display: grid;
background-color: rgba(104, 104, 104, 0.7);
transform: none;
}
.sideText {
font-family: "Roboto";
font-size: 24px;
color: white;
grid-column: 2/3;
margin-right: 5px;
text-align: right;
}
#fridgeIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 1/6;
grid-column: 1/2;
margin: 10px;
}
#statsIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 4/9;
grid-column: 1/2;
margin: 10px;
}
#toBuyIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 7/12;
grid-column: 1/2;
margin: 10px;
}
.fridge {
grid-row: 3/4;
grid-column: 1/3;
}
.stats {
grid-row: 6/7;
grid-column: 1/3;
}
.toBuy {
grid-row: 9/10;
grid-column: 1/3;
}
.pageSubhead {
grid-column: 2/7;
background-color: white;
display: grid;
grid-template-columns: 3vw repeat(6, 15.67vw) 3vw;
grid-template-rows: repeat(3, 6.25vh);
}
.subheader {
font-family: "Roboto Medium";
font-size: 10vh;
grid-column: 2/3;
text-align: center;
}
.addItem {
grid-column: 3/4;
grid-row: 2/3
}
.addItemButton {
margin-left: 20px;
margin-right: 20px;
background-color: rgba(175, 175, 175, 0.7);
border-radius: 100px;
transform: none;
}
.addItemText {
font-family: "Roboto Medium";
font-size: 18px;
color: white;
text-align: center;
}
.changeView {
grid-column: 5/6;
grid-row: 2/3;
}
.changeViewDropdown {
background-color: rgba(228, 228, 228, 0.7);
transform: none;
}
.changeViewText {
text-align: center;
font-family: "Roboto Medium";
font-size: 14px;
}
.month {
display: grid;
grid-column: 2/3;
margin-left: 1vw;
font-family: Roboto;
font-style: normal;
font-size: 24px;
align-items: center;
}
.addProduct {
display: grid;
grid-column: 2/3;
margin-top: 50px;
margin-left: 1vw;
align-items: center;
font-family: "Roboto Medium";
font-style: normal;
font-size: 24px;
}
@font-face {
font-family: Roboto Bold;
src: url(Roboto-Bold.ttf);
}
@font-face {
font-family: Roboto Black;
src: url(Roboto-Black.ttf);
}
@font-face {
font-family: Roboto Medium;
src: url(Roboto-Medium.ttf);
}
@font-face {
font-family: Roboto;
src: url(Roboto-Regular.ttf);
}
.sideItem:hover {
background-color: rgba(104, 104, 104, 1);
transition: background-color .5s;
}
.listItem:hover {
background-color: rgba(237, 237, 237, 1);
transition: background-color .5s;
}
.addItemButton:hover {
background-color: rgba(175, 175, 175, 1);
transition: background-color .5s;
}
.changeViewDropdown:hover {
background-color: rgba(240, 240, 240, 1);
transition: background-color .5s;
}
a {
color: rgba(0,0,0,0);
}
.main{
margin-left: 23%;
}
.black{
color:black;
}
\ No newline at end of file
body {
width: 100%;
height: 100%;
margin: 0px;
}
.editItemHeader {
background-color: rgba(40, 40, 40, 1);
width: 100vw;
color: white;
text-align: left;
}
.breadcrumbsHead {
font-family: "Roboto Bold";
font-size: 46px;
margin-left: 50px;
}
.lowerPage {
width: 100vw;
display: grid;
grid-template-columns: repeat(6, 16.67vw);
text-align: left;
background-color: white;
}
.sidebar {
height: 200vh;
background-color: rgba(196, 196, 196, 1);
display: grid;
grid-template-rows: repeat(16, 6.25vh);
grid-template-columns: repeat(2, 8.33vw);
grid-column: 1/2;
z-index:1;
left:0;
}
.sideItem {
display: grid;
background-color: rgba(104, 104, 104, 0.7);
transform: none;
}
.sideText {
font-family: "Roboto";
font-size: 24px;
color: white;
grid-column: 2/3;
margin-right: 5px;
text-align: right;
}
#fridgeIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 1/6;
grid-column: 1/2;
margin: 10px;
}
#statsIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 4/9;
grid-column: 1/2;
margin: 10px;
}
#toBuyIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 7/12;
grid-column: 1/2;
margin: 10px;
}
.fridge {
grid-row: 3/4;
grid-column: 1/3;
}
.stats {
grid-row: 6/7;
grid-column: 1/3;
}
.toBuy {
grid-row: 9/10;
grid-column: 1/3;
}
.pageSubhead {
grid-column: 2/7;
background-color: white;
display: grid;
grid-template-columns: 3vw repeat(6, 15.67vw) 3vw;
grid-template-rows: repeat(3, 6.25vh);
}
.subheader {
font-family: "Roboto Medium";
font-size: 10vh;
grid-column: 2/3;
text-align: center;
}
.addItem {
grid-column: 3/4;
grid-row: 2/3
}
.addItemButton {
margin-left: 20px;
margin-right: 20px;
background-color: rgba(175, 175, 175, 0.7);
border-radius: 100px;
transform: none;
}
.addItemText {
font-family: "Roboto Medium";
font-size: 18px;
color: white;
text-align: center;
}
.changeView {
grid-column: 5/6;
grid-row: 2/3;
}
.changeViewDropdown {
background-color: rgba(228, 228, 228, 0.7);
transform: none;
}
.changeViewText {
text-align: center;
font-family: "Roboto Medium";
font-size: 14px;
}
.month {
display: grid;
grid-column: 2/3;
margin-left: 1vw;
font-family: Roboto;
font-style: normal;
font-size: 24px;
align-items: center;
}
.editItem {
display: grid;
grid-column: 2/3;
margin-top: 50px;
margin-left: 1vw;
align-items: center;
font-family: "Roboto Medium";
font-style: normal;
font-size: 24px;
}
@font-face {
font-family: Roboto Bold;
src: url(Roboto-Bold.ttf);
}
@font-face {
font-family: Roboto Black;
src: url(Roboto-Black.ttf);
}
@font-face {
font-family: Roboto Medium;
src: url(Roboto-Medium.ttf);
}
@font-face {
font-family: Roboto;
src: url(Roboto-Regular.ttf);
}
.sideItem:hover {
background-color: rgba(104, 104, 104, 1);
transition: background-color .5s;
}
.listItem:hover {
background-color: rgba(237, 237, 237, 1);
transition: background-color .5s;
}
.addItemButton:hover {
background-color: rgba(175, 175, 175, 1);
transition: background-color .5s;
}
.changeViewDropdown:hover {
background-color: rgba(240, 240, 240, 1);
transition: background-color .5s;
}
a {
color: rgba(0,0,0,0);
}
.main{
margin-left: 23%;
}
.black{
color:black;
}
\ No newline at end of file
body {
width: 100%;
height: 100%;
margin: 0px;
}
.detailedViewHeader {
background-color: rgba(40, 40, 40, 1);
width: 100vw;
color: white;
text-align: left;
}
.breadcrumbsHead {
font-family: "Roboto Bold";
font-size: 46px;
margin-left: 50px;
}
.lowerPage {
width: 100vw;
display: grid;
grid-template-columns: repeat(6, 16.67vw);
text-align: left;
background-color: white;
}
.sidebar {
height: 200vh;
background-color: rgba(196, 196, 196, 1);
display: grid;
grid-template-rows: repeat(16, 6.25vh);
grid-template-columns: repeat(2, 8.33vw);
grid-column: 1/2;
z-index:1;
left:0;
}
.sideItem {
display: grid;
background-color: rgba(104, 104, 104, 0.7);
transform: none;
}
.sideText {
font-family: "Roboto";
font-size: 24px;
color: white;
grid-column: 2/3;
margin-right: 5px;
text-align: right;
}
#fridgeIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 1/6;
grid-column: 1/2;
margin: 10px;
}
#statsIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 4/9;
grid-column: 1/2;
margin: 10px;
}
#toBuyIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 7/12;
grid-column: 1/2;
margin: 10px;
}
.fridge {
grid-row: 3/4;
grid-column: 1/3;
}
.stats {
grid-row: 6/7;
grid-column: 1/3;
}
.toBuy {
grid-row: 9/10;
grid-column: 1/3;
}
.pageSubhead {
grid-column: 2/7;
background-color: white;
display: grid;
grid-template-columns: 3vw repeat(6, 15.67vw) 3vw;
grid-template-rows: repeat(3, 6.25vh);
}
.subheader {
font-family: "Roboto Medium";
font-size: 10vh;
grid-column: 2/3;
text-align: center;
}
.addItem {
grid-column: 3/4;
grid-row: 2/3
}
.addItemButton {
margin-left: 20px;
margin-right: 20px;
background-color: rgba(175, 175, 175, 0.7);
border-radius: 100px;
transform: none;
}
.addItemText {
font-family: "Roboto Medium";
font-size: 18px;
color: white;
text-align: center;
}
.changeView {
grid-column: 5/6;
grid-row: 2/3;
}
.changeViewDropdown {
background-color: rgba(228, 228, 228, 0.7);
transform: none;
}
.changeViewText {
text-align: center;
font-family: "Roboto Medium";
font-size: 14px;
}
.detailedView {
grid-column: 2/7;
background-color: rgba(196, 196, 196, 1);
display: grid;
grid-template-columns: repeat (6, 13.89vw);
grid-row-gap: 10px;
}
.productHeader {
grid-column: 1/8;
background-color: white;
font-family: "Roboto Medium";
font-size: 36px;
text-align: center;
}
.tableHeader {
grid-column: 1/7;
display: grid;
background-color: rgba(40, 40, 40, 1);
}
.header {
background-color: rgba(40, 40, 40, 1);
color: white;
text-align: center;
font-family: "Roboto Medium";
font-size: 20px;
}
.itemRow {
grid-column: 1/7;
display: grid;
background-color: rgba(104, 104, 104, 1);
}
.item {
background-color: rgba(104, 104, 104, 1);
color: white;
text-align: center;
font-family: "Roboto";
font-size: 20px;
}
.name {
grid-column: 1/2;
}
.description {
grid-column: 2/3;
}
.quantity {
grid-column: 3/4;
}
.expiration {
grid-column: 4/5;
}
.purchase {
grid-column: 5/6;
}
.status {
grid-column: 6/7;
}
.options {
grid-column: 7/8;
}
.white{
color:white;
}
@font-face {
font-family: Roboto Bold;
src: url(Roboto-Bold.ttf);
}
@font-face {
font-family: Roboto Black;
src: url(Roboto-Black.ttf);
}
@font-face {
font-family: Roboto Medium;
src: url(Roboto-Medium.ttf);
}
@font-face {
font-family: Roboto;
src: url(Roboto-Regular.ttf);
}
.sideItem:hover {
background-color: rgba(104, 104, 104, 1);
transition: background-color .5s;
}
.listItem:hover {
background-color: rgba(237, 237, 237, 1);
transition: background-color .5s;
}
.addItemButton:hover {
background-color: rgba(175, 175, 175, 1);
transition: background-color .5s;
}
.changeViewDropdown:hover {
background-color: rgba(240, 240, 240, 1);
transition: background-color .5s;
}
a {
color: rgba(0,0,0,0);
}
.main{
margin-left: 23%;
}
body {
width: 100%;
height: 100%;
margin: 0px;
}
.listViewHeader {
background-color: rgba(40, 40, 40, 1);
width: 100vw;
color: white;
text-align: left;
}
.breadcrumbsHead {
font-family: "Roboto Bold";
font-size: 46px;
margin-left: 50px;
}
.lowerPage {
width: 100vw;
display: grid;
grid-template-columns: repeat(6, 16.67vw);
text-align: left;
}
.sidebar {
background-color: rgba(196, 196, 196, 1);
display: grid;
grid-template-rows: repeat(16, 6.25vh);
grid-column: 1/2;
}
.sideItem {
grid-template-columns: repeat(2, 12.5vw);
text-align: center;
background-color: rgba(104, 104, 104, 1);
}
.text {
font-family: "Roboto";
font-size: 24px;
color: white;
grid-column: 2/3;
}
.icon {
grid-column: 1/2;
}
.circle {
margin: 5px;
clip-path: circle();
background-color: white;
}
.fridge {
grid-row: 3/4;
}
.recipes {
grid-row: 6/7;
}
.stats {
grid-row: 9/10;
}
.toBuy {
grid-row: 12/13;
}
@font-face {
font-family: Roboto Bold;
src: url(Roboto-Bold.ttf);
}
@font-face {
font-family: Roboto;
src: url(Roboto-Regular.ttf);
}
\ No newline at end of file
body {
width: 100%;
height: 100%;
margin: 0px;
}
.loginHeader {
background-color: rgba(40, 40, 40, 1);
width: 100vw;
display: grid;
grid-template-columns: repeat(4, 25vw);
}
.breadcrumbsHead {
font-family: "Roboto Bold";
font-size: 46px;
margin-left: 50px;
color: white;
grid-column: 1/2;
}
.sideHeader {
grid-column: 4/5;
display: grid;
grid-template-columns: repeat(2, 12.5vw);
}
.loginText {
grid-column: 1/2;
font-family: "Roboto";
font-size: 24px;
margin-top: 15px;
color: white;
text-align: center;
}
.signUpButton {
grid-column: 2/3;
margin: 10px;
background-color: rgba(140, 140, 140, 0.7);
transform: none;
}
.signUpText {
font-family: "Roboto Black";
font-size: 16px;
color: white;
margin: 10px;
text-align: center;
}
.lowerPage {
width: 100vw;
display: grid;
grid-template-columns: repeat(4, 25vw);
background-color: white;
}
.loginArea {
grid-column: 2/4;
margin-top: 20vh;
border: solid;
border-color: black;
border-radius: 10px;
grid-template-rows: repeat (7, 4.76vh);
}
.breadcrumbsText {
grid-row: 1/2;
text-align: center;
font-family: "Roboto Black";
font-size: 36px;
margin: 10px;
}
.loginText2 {
grid-row: 2/3;
text-align: center;
font-family: "Roboto";
font-size: 24px;
margin: 10px;
}
.continueText {
grid-row: 3/4;
text-align: center;
font-family: "Roboto Slab";
font-size: 16px;
margin: 10px;
}
.emailBox {
grid-row: 4/5;
text-align: left;
font-family: "Roboto Slab";
font-size: 16px;
margin: 5px;
margin-left: 15px;
margin-right: 15px;
border: solid;
border-color: rgba(141, 141, 141, 1);
color: rgba(141, 141, 141, 1);
}
.passwordBox {
grid-row: 5/6;
text-align: left;
font-family: "Roboto Slab";
font-size: 16px;
margin: 5px;
margin-left: 15px;
margin-right: 15px;
border: solid;
border-color: rgba(141, 141, 141, 1);
color: rgba(141, 141, 141, 1);
}
.lowerBar {
grid-row: 7/8;
display: grid;
grid-template-columns: repeat(2)
}
.createAccountText {
grid-column: 1/2;
font-family: "Roboto";
font-size: 16px;
margin: 10px;
color: blue;
}
.nextButton {
grid-column: 2/3;
font-family: "Roboto";
font-size: 16px;
margin: 10px;
text-align: center;
background-color: rgba(31, 31, 31, 1);
color: white;
}
@font-face {
font-family: Roboto Bold;
src: url(Roboto-Bold.ttf);
}
@font-face {
font-family: Roboto Black;
src: url(Roboto-Black.ttf);
}
@font-face {
font-family: Roboto Medium;
src: url(Roboto-Medium.ttf);
}
@font-face {
font-family: Roboto;
src: url(Roboto-Regular.ttf);
}
@font-face {
font-family: Roboto Slab;
src: url(Roboto-Slab.ttf);
}
.signUpButton:hover {
background-color: rgba(140, 140, 140, 1);
transition: background-color .5s;
}
a {
color: rgba(0,0,0,0);
}
body {
width: 100%;
height: 100%;
margin: 0px;
}
.signUpHeader {
background-color: rgba(40, 40, 40, 1);
width: 100vw;
display: grid;
grid-template-columns: repeat(4, 25vw);
}
.breadcrumbsHead {
font-family: "Roboto Bold";
font-size: 46px;
margin-left: 50px;
color: white;
grid-column: 1/2;
}
.sideHeader {
grid-column: 4/5;
display: grid;
grid-template-columns: repeat(2, 12.5vw);
}
.loginText {
grid-column: 1/2;
font-family: "Roboto";
font-size: 24px;
margin-top: 15px;
color: white;
text-align: center;
}
.signUpButton {
grid-column: 2/3;
margin: 10px;
background-color: rgba(140, 140, 140, 0.7);
transform: none;
}
.signUpText {
font-family: "Roboto Black";
font-size: 16px;
color: white;
margin: 10px;
text-align: center;
}
.lowerPage {
width: 100vw;
display: grid;
grid-template-columns: repeat(4, 25vw);
background-color: white;
}
.signUpArea {
grid-column: 2/4;
margin-top: 20vh;
border: solid;
border-color: black;
border-radius: 10px;
}
.breadcrumbsText {
text-align: center;
font-family: "Roboto Black";
font-size: 36px;
margin: 10px;
}
.signUpText2 {
text-align: center;
font-family: "Roboto";
font-size: 24px;
margin: 10px;
}
.getStartedText {
text-align: center;
font-family: "Roboto Slab";
font-size: 16px;
margin: 10px;
}
.box {
text-align: left;
font-family: "Roboto Slab";
font-size: 16px;
margin: 5px;
margin-left: 15px;
margin-right: 15px;
border: solid;
border-color: rgba(141, 141, 141, 1);
color: rgba(141, 141, 141, 1);
}
.lowerBar {
display: grid;
grid-template-columns: repeat(2)
}
.alreadyHaveAccountText {
grid-column: 1/2;
font-family: "Roboto";
font-size: 16px;
margin: 10px;
color: blue;
}
.submitButton {
grid-column: 2/3;
font-family: "Roboto";
font-size: 16px;
margin: 10px;
text-align: center;
background-color: rgba(31, 31, 31, 1);
color: white;
}
b{
font-family:"Roboto-Black";
}
@font-face {
font-family: Roboto Bold;
src: url(Roboto-Bold.ttf);
}
@font-face {
font-family: Roboto Black;
src: url(Roboto-Black.ttf);
}
@font-face {
font-family: Roboto Medium;
src: url(Roboto-Medium.ttf);
}
@font-face {
font-family: Roboto;
src: url(Roboto-Regular.ttf);
}
@font-face {
font-family: Roboto Slab;
src: url(Roboto-Slab.ttf);
}
.signUpButton:hover {
background-color: rgba(140, 140, 140, 1);
transition: background-color .5s;
}
a {
color: rgba(0,0,0,0);
}
.main{
margin-left: 23%;
}
\ No newline at end of file
body {
width: 100%;
height: 100%;
margin: 0px;
}
.toBuyHeader {
background-color: rgba(40, 40, 40, 1);
width: 100vw;
color: white;
text-align: left;
}
.breadcrumbsHead {
font-family: "Roboto Bold";
font-size: 46px;
margin-left: 50px;
}
.lowerPage {
width: 100vw;
display: grid;
grid-template-columns: repeat(6, 16.67vw);
grid-template-rows: 12.5vh 87.5vh;
text-align: left;
background-color: rgba(196, 196, 196, 1);
}
.sidebar {
height: 200vh;
background-color: rgba(196, 196, 196, 1);
display: grid;
grid-template-rows: repeat(16, 6.25vh);
grid-template-columns: repeat(2, 8.33vw);
grid-column: 1/2;
z-index:1;
left:0;
}
.sideItem {
display: grid;
background-color: rgba(104, 104, 104, 0.7);
transform: none;
}
.sideText {
font-family: "Roboto";
font-size: 24px;
color: white;
grid-column: 2/3;
margin-right: 5px;
text-align: right;
}
#fridgeIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 1/6;
grid-column: 1/2;
margin: 10px;
}
#statsIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 4/9;
grid-column: 1/2;
margin: 10px;
}
#toBuyIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 7/12;
grid-column: 1/2;
margin: 10px;
}
.fridge {
grid-row: 3/4;
grid-column: 1/3;
}
.stats {
grid-row: 6/7;
grid-column: 1/3;
}
.toBuy {
grid-row: 9/10;
grid-column: 1/3;
}
.pageSubhead {
grid-column: 2/7;
grid-row: 1/2;
background-color: white;
display: grid;
grid-template-columns: 3vw repeat(6, 15.67vw) 3vw;
grid-template-rows: repeat(3, 6.25vh);
}
.subheader {
font-family: "Roboto Medium";
font-size: 10vh;
grid-column: 2/5;
text-align: left;
}
.sortBy {
grid-column: 5/6;
grid-row: 2/3;
}
.sortByDropdown {
background-color: rgba(228, 228, 228, 0.7);
transform: none;
}
.sortByText {
text-align: center;
font-family: "Roboto Medium";
font-size: 14px;
}
.listView {
grid-column: 2/7;
grid-row: 2/3;
background-color: white;
display: grid;
grid-template-columns: 0vw repeat(3, 25vw) 0vw;
grid-template-rows: repeat(4, 20vh);
grid-column-gap: 0vw;
grid-row-gap: 3vw;
}
.listItem {
background-color: rgba(237, 237, 237, 0.7);
display: grid;
grid-template-columns: 10vw 40vw 20vw;
grid-template-rows: repeat(5, 5vh);
transform: none;
}
#listIcon {
grid-column: 1/2;
grid-row: 1/5;
text-align: center;
clip-path: circle();
/* width: 150px;
height: 150px*/
background-color: rgba(196, 196, 196, 1);
margin: 5px;
margin-left:120px;
}
.listText {
grid-column: 2/3;
text-align: left;
margin: 10px;
margin-left: 130px;
}
.product {
font-family: "Roboto Black";
font-size: 24px;
}
.category {
font-family: "Roboto";
font-size: 18px;
}
.listRemove {
grid-column: 3/4;
grid-row: 2/3;
background-color: rgba(175, 175, 175);
font-size: 15px;
text-align: center;
font-family: "Roboto Medium";
margin: 5px;
}
.removeText {
text-align: center;
margin: 15px;
font-family: "Roboto Medium";
color:black;
}
.one {
grid-column: 2/5;
grid-row: 1/2;
}
.listAdd {
grid-column: 3/4;
grid-row: 3/4;
background-color: rgba(175, 175, 175);
font-size: 15px;
text-align: center;
margin: 15px;
font-family: "Roboto Medium";
margin: 5px;
}
.black{
color:black;
}
@font-face {
font-family: Roboto Bold;
src: url(Roboto-Bold.ttf);
}
@font-face {
font-family: Roboto Black;
src: url(Roboto-Black.ttf);
}
@font-face {
font-family: Roboto Medium;
src: url(Roboto-Medium.ttf);
}
@font-face {
font-family: Roboto;
src: url(Roboto-Regular.ttf);
}
.sideItem:hover {
background-color: rgba(104, 104, 104, 1);
transition: background-color .5s;
}
.listItem:hover {
background-color: rgba(237, 237, 237, 1);
transition: background-color .5s;
}
.addItemButton:hover {
background-color: rgba(175, 175, 175, 1);
transition: background-color .5s;
}
.changeViewDropdown:hover {
background-color: rgba(240, 240, 240, 1);
transition: background-color .5s;
}
a {
color: rgba(0,0,0,0);
}
.main{
margin-left: 23%;
}
......@@ -16,6 +16,7 @@ body {
margin-left: 50px;
}
.lowerPage {
width: 100vw;
display: grid;
......@@ -38,8 +39,7 @@ body {
}
.sideItem {
display: grid;
background-color: rgba(104, 104, 104, 1);
opacity: 0.7;
background-color: rgba(104, 104, 104, 0.7);
transform: none;
}
.sideText {
......@@ -58,19 +58,12 @@ body {
grid-column: 1/2;
margin: 10px;
}
#recipesIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 4/9;
grid-column: 1/2;
margin: 10px;
}
#statsIcon {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 7/12;
grid-row: 4/9;
grid-column: 1/2;
margin: 10px;
}
......@@ -78,7 +71,7 @@ body {
background-color: white;
clip-path: circle();
height: 15vh;
grid-row: 10/15;
grid-row: 7/12;
grid-column: 1/2;
margin: 10px;
}
......@@ -86,16 +79,13 @@ body {
grid-row: 3/4;
grid-column: 1/3;
}
.recipes {
grid-row: 6/7;
grid-column: 1/3;
}
.stats {
grid-row: 9/10;
grid-row: 6/7;
grid-column: 1/3;
}
.toBuy {
grid-row: 12/13;
grid-row: 9/10;
grid-column: 1/3;
}
......@@ -105,6 +95,7 @@ body {
background-color: white;
display: grid;
grid-template-columns: 3vw repeat(6, 15.67vw) 3vw;
grid-template-rows: repeat(3, 6.25vh);
}
.subheader {
font-family: "Roboto Medium";
......@@ -114,14 +105,13 @@ body {
}
.addItem {
grid-column: 3/4;
grid-row: 2/3
}
.addItemButton {
margin-top: 35px;
margin-left: 20px;
margin-right: 20px;
background-color: rgba(175, 175, 175, 1);
background-color: rgba(175, 175, 175, 0.7);
border-radius: 100px;
opacity: 0.7;
transform: none;
}
.addItemText {
......@@ -131,12 +121,17 @@ body {
text-align: center;
}
.changeView {
background-color: rgba(228, 228, 228, 1);
font-family: "Roboto Medium";
font-size: 14px;
grid-column: 5/6;
margin-top: 35px;
grid-row: 2/3;
}
.changeViewDropdown {
background-color: rgba(228, 228, 228, 0.7);
transform: none;
}
.changeViewText {
text-align: center;
font-family: "Roboto Medium";
font-size: 14px;
}
.listView {
......@@ -144,17 +139,16 @@ body {
grid-row: 2/3;
background-color: white;
display: grid;
grid-template-columns: 3vw repeat(3, 23vw) 3vw;
grid-template-columns: 0vw repeat(3, 25vw) 0vw;
grid-template-rows: repeat(4, 20vh);
grid-column-gap: 3vw;
grid-column-gap: 0vw;
grid-row-gap: 3vw;
}
.listItem {
background-color: rgba(237, 237, 237, 1);
background-color: rgba(237, 237, 237, 0.7);
display: grid;
grid-template-columns: 10vw 15vw;
grid-template-columns: 10vw 40vw 20vw;
grid-template-rows: repeat(5, 5vh);
opacity: 0.7;
transform: none;
}
#listIcon {
......@@ -162,75 +156,84 @@ body {
grid-row: 1/5;
text-align: center;
clip-path: circle();
/* width: 150px;
height: 150px*/
background-color: rgba(196, 196, 196, 1);
margin: 5px;
margin-left:120px;
}
.listText {
grid-column: 2/3;
text-align: left;
margin: 10px;
margin-left:130px;
}
.daysLeft {
font-family: "Roboto Black";
font-size: 24px;
color:black;
}
.product {
font-family: "Roboto Regular";
font-family: "Roboto";
font-size: 20px;
}
.category {
font-family: "Roboto Regular";
font-family: "Roboto";
font-size: 14px;
}
.one {
grid-column: 2/3;
grid-row: 1/2;
}
.two {
grid-column: 2/3;
grid-row: 2/3;
}
.three {
grid-column: 2/3;
grid-row: 3/4;
.listToBuy {
grid-column: 3/4;
grid-row: 2/4;
background-color: rgba(175, 175, 175);
}
.four {
grid-column: 2/3;
grid-row: 4/5;
.toBuyText {
font-size: 20px;
text-align: center;
margin: 15px;
font-family: "Roboto Medium";
}
.five {
grid-column: 3/4;
.one {
grid-column: 2/5;
grid-row: 1/2;
}
.six {
grid-column: 3/4;
grid-row: 2/3;
.addProdType {
grid-column: 2/4;
margin-top:20px;
margin-left: 4vw;
align-items: center;
font-family: Roboto;
font-style: normal;
font-size: 24px;
}
.seven {
grid-column: 3/4;
grid-row: 3/4;
.addProdfield {
font-family: Roboto;
font-style: normal;
font-size: 20px;
}
.eight {
.listEdit {
grid-column: 3/4;
grid-row: 4/5;
}
.nine {
grid-column: 4/5;
grid-row: 1/2;
}
.ten {
grid-column: 4/5;
grid-row: 2/3;
}
.eleven {
grid-column: 4/5;
grid-row: 3/4;
background-color: rgba(175, 175, 175);
font-size: 15px;
text-align: center;
margin: 15px;
font-family: "Roboto Medium";
margin: 5px;
}
.twelve {
grid-column: 4/5;
grid-row: 4/5;
.black{
color:black;
}
a {
color: rgba(0,0,0,0);
}
@font-face {
font-family: Roboto Bold;
src: url(Roboto-Bold.ttf);
......@@ -250,18 +253,34 @@ body {
.sideItem:hover {
opacity: 1;
transition: opacity .5s;
background-color: rgba(104, 104, 104, 1);
transition: background-color .5s;
}
.listItem:hover {
opacity: 1;
transition: opacity .5s;
background-color: rgba(237, 237, 237, 1);
transition: background-color .5s;
}
.addItemButton:hover {
opacity: 1;
transition: opacity .5s;
background-color: rgba(175, 175, 175, 1);
transition: background-color .5s;
}
.changeViewDropdown:hover {
background-color: rgba(240, 240, 240, 1);
transition: background-color .5s;
}
.main{
margin-left: 23%;
}
.listRemove {
grid-column: 3/4;
grid-row: 2/4;
background-color: rgba(175, 175, 175);
}
.removeText {
font-size: 20px;
text-align: center;
margin: 15px;
font-family: "Roboto Medium";
color:black;
}
\ No newline at end of file
......@@ -4,7 +4,7 @@ from django.conf.urls.static import static
from django.views.generic import TemplateView
from django.urls import include, path
from Breadcrumbs import views
from .views import ProductListViewName, ProductListViewCategory, add_product_type, delete_product_type, ItemViewPDate, add_item, delete_item, ToBuyViewName
from .views import ProductListViewName, ProductListViewCategory, add_product_type, delete_product_type, ItemViewPDate, add_item, delete_item, ToBuyViewName, UnmarkToBuy, editProductType,editItem
urlpatterns = [
url(r'^fridge/list/', ProductListViewName.as_view(), name='fridgeLN'),
......@@ -15,7 +15,10 @@ urlpatterns = [
url(r'^fridge/(?P<Product_ID>\d+)/$', ItemViewPDate.as_view(), name='item-purchase-date-view'),
path('fridge/<id>/add', add_item, name = 'add-item'),
path('fridge/<id>/<id2>/delete', delete_item, name = 'delete-item'),
url(r'^to-buy/', ToBuyViewName.as_view(), name = 'to-buyLN')
url(r'^to-buy/', ToBuyViewName.as_view(), name = 'to-buyLN'),
path('fridge/<int:pk>/update', UnmarkToBuy.as_view(), name = 'to-buy-unmark'),
path('fridge/<int:pk>/edit', editProductType.as_view(), name = 'edit-product-type'),
path('fridge/<id>/<int:pk>/edit', editItem.as_view(), name = 'edit-item'),
]
if settings.DEBUG:
......
from django.views.generic import ListView
from django.views.generic import ListView, UpdateView
from django.db.models import Q
from .forms import LoginForm, ProductTypeForm, AddItemForm
from django.http import HttpResponseRedirect
......@@ -27,7 +27,7 @@ def login(request):
class ProductListViewName(ListView):
model = Product_Type
template_name = 'placeholder-list.html'
template_name = 'fridge-list.html'
context_object_name = 'product'
def get_queryset(self):
......@@ -35,7 +35,7 @@ class ProductListViewName(ListView):
class ProductListViewCategory(ListView):
model = Product_Type
template_name = 'placeholder-list.html'
template_name = 'fridge-list.html'
context_object_name = 'product'
def get_queryset(self):
......@@ -43,7 +43,7 @@ class ProductListViewCategory(ListView):
class ToBuyViewName(ListView):
model = Product_Type
template_name = 'placeholder-list.html'
template_name = 'to-buy.html'
context_object_name = 'product'
def get_queryset(self):
......@@ -93,6 +93,7 @@ def add_product_type(request):
return render(request,'add-product-type.html',context)
def delete_product_type(request,id):
model = Product_Type
context = {}
obj = get_object_or_404(Product_Type,Product_ID = id)
......@@ -104,7 +105,7 @@ def delete_product_type(request,id):
class ItemViewPDate(ListView):
model = Item
template_name = 'placeholder-items.html'
template_name = 'per-items.html'
context_object_name = 'item'
def get_queryset(self, **kwargs):
......@@ -159,3 +160,21 @@ def delete_item(request,id,id2):
return HttpResponseRedirect("/fridge/" + str(prod_type))
return render(request, 'product-type-confirm-delete.html', context)
class UnmarkToBuy(UpdateView):
model = Product_Type
fields = ['To_Buy']
template_name = 'unmark.html'
success_url = 'http://127.0.0.1:8000/to-buy/'
class editProductType(UpdateView):
model = Product_Type
fields = ['Product_Name','Product_Category','Icon','To_Buy']
template_name = 'edit-product-type.html'
success_url = 'http://127.0.0.1:8000/fridge/list'
class editItem(UpdateView):
model = Item
fields = ['Item_Quantity','Quantity_Unit', 'Item_Description','Purchase_Date','Expiration_Date', 'Is_Expired','Is_Consumed']
template_name = 'edit-item.html'
success_url = 'http://127.0.0.1:8000/fridge/list'
<!DOCTYPE html>
<html lang="en">
{% load static %}
<link rel="stylesheet" href="{%static "sidebar.css" %}">
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Add Item</title>
{% load static %}
<link rel="stylesheet" href="{%static "mainAddProduct.css" %}">
</head>
<body>
<div class = "listViewHeader">
<div class = "addProductHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
</div>
<div class = "lowerPage">
<!-- sidebar start-->
<div class = "sidebar">
<div class = "sideItem text fridge">
FRIDGE
<div class = "sideItem fridge">
<a href="http://127.0.0.1:8000/fridge/list/">
<div class = " sideText"> FRIDGE </div>
</a>
</div>
<div class = "sideItem icon fridge">
<div class = "circle"> :3 </div>
<img id= "fridgeIcon" src= "{%static "fridge.png" %}"" alt= "a flat icon of a refrigerator";>
<div class = "sideItem stats">
<a href = "indexStatistics.html">
<div class = "sideText"> STATS </div>
</a>
</div>
<img id= "statsIcon" src= "{%static "stats.png" %}" alt= "a flat icon of a graph";>
<div class = "sideItem text recipes">
RECIPES
<div class = "sideItem toBuy">
<a href = "http://127.0.0.1:8000/to-buy/">
<div class = "sideText"> TO BUY </div>
</a>
</div>
<div class = "sideItem icon recipes">
<div class = "circle"> :3 </div>
<img id= "toBuyIcon" src= "{%static "add-to-cart.png" %}" alt= "a flat icon of a shopping cart";>
</div>
<div class = "sideItem text stats">
STATS
<!-- sidebar end-->
<!-- subhead start-->
<div class = "pageSubhead">
<div class = "subheader"> Fridge </div>
<div class = "addItem">
<a href = "indexaddItem.html">
<div class = "addItemButton">
<div class = "addItemText"> <a href="{{ request.path }}add" class = "addItemText"> ADD ITEM +</a> </div>
</div>
<div class = "sideItem icon stats">
<div class = "circle"> :3 </div>
</a>
</div>
<!-- subhead end-->
<div class ="addProduct">
<form method="POST" enctype="multipart/form-data" div class="addItemForm">
{% csrf_token %}
{{ form.non_field_errors }}
<div class = "sideItem text toBuy">
TO BUY
</div>
<div class = "sideItem icon toBuy">
<div class = "circle"> :3 </div>
Item Quantity:<div class="box itemQuantity"> {{form.Item_Quantity}}</div>
Quantity Unit:<div class="box quantityUnit">
{{form.Quantity_Unit}}</div>
Item Description:<div class="box itemDescription">
{{form.Item_Description}} </div>
Purchase Date:<div class="box purchaseDate">
{{form.Purchase_Date}} </div>
Expiration Date:<div class="box expDate">
{{form.Expiration_Date}}</div>
<div class="deleteItemBox">
{{form.Is_Consumed}} Is this Item Consumed?
</div>
<input type="submit" value = "SUBMIT"></input>
<a href="http://127.0.0.1:8000/fridge/list"><div class = "back">Back</div></a>
</form>
</div>
</div>
<h3>Add Item</h3>
<form method="POST" enctype="multipart/form-data" div class="main">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Submit">
</form>
<a href="http://127.0.0.1:8000/fridge/list" div class="main">Back</a>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html lang="en">
{% load static %}
<link rel="stylesheet" href="{%static "sidebar.css" %}">
<link rel="stylesheet" href="{%static "mainAddProduct.css" %}">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Add Product Type</title>
</head>
<body>
<div class = "listViewHeader">
<div class = "addProductHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
</div>
<div class = "lowerPage">
<!-- sidebar start-->
<div class = "sidebar">
<div class = "sideItem text fridge">
FRIDGE
</div>
<div class = "sideItem icon fridge">
<div class = "circle"> :3 </div>
<div class = "sideItem fridge">
<a href="http://127.0.0.1:8000/fridge/list/">
<div class = " sideText"> FRIDGE </div>
</a>
</div>
<img id= "fridgeIcon" src= "{%static "fridge.png" %}"" alt= "a flat icon of a refrigerator";>
<div class = "sideItem text recipes">
RECIPES
</div>
<div class = "sideItem icon recipes">
<div class = "circle"> :3 </div>
<div class = "sideItem stats">
<a href = "indexStatistics.html">
<div class = "sideText"> STATS </div>
</a>
</div>
<img id= "statsIcon" src= "{%static "stats.png" %}" alt= "a flat icon of a graph";>
<div class = "sideItem text stats">
STATS
<div class = "sideItem toBuy">
<a href = "http://127.0.0.1:8000/to-buy/">
<div class = "sideText"> TO BUY </div>
</a>
</div>
<div class = "sideItem icon stats">
<div class = "circle"> :3 </div>
<img id= "toBuyIcon" src= "{%static "add-to-cart.png" %}" alt= "a flat icon of a shopping cart";>
</div>
<!-- sidebar end-->
<!-- subhead start-->
<div class = "pageSubhead">
<div class = "subheader"> Fridge </div>
<div class = "sideItem text toBuy">
TO BUY
</div>
<div class = "sideItem icon toBuy">
<div class = "circle"> :3 </div>
</div>
<form method="POST" enctype="multipart/form-data" class = "addProduct">
{% csrf_token %}
{{ form.non_field_errors }}
{{form.Icon.errors}}
Product Name:<div class="box productName"> {{ form.Product_Name }} </div>
Product Category:<div class="box productCategory">{{form.Product_Category}}</div>
Product Description:<div class="box productDecription">{{form.Product_Description}}</div>
<div class="toBuyBox">
{{form.To_Buy}}
To Buy?
</label>
<br>
<div> Icon:
{{form.Icon}}
</div>
</div>
<h3>Add Product Type</h3>
<form method="POST" enctype="multipart/form-data" div class="main">
{% csrf_token %}
{{ form.as_p }}
</br>
<input type="submit" value="Submit">
<a href="http://127.0.0.1:8000/fridge/list/"><div class = "
black">Back</div></a>
</form>
<a href="http://127.0.0.1:8000/fridge/list" div class="main">Back</a>
</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
{% load static %}
<link rel="stylesheet" href="{%static "mainEditItem.css" %}">
</head>
<body>
<div class = "editItemHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
</div>
<div class = "lowerPage">
<div class = "sidebar">
<div class = "sideItem fridge">
<a href="http://127.0.0.1:8000/fridge/list/">
<div class = " sideText"> FRIDGE </div>
</a>
</div>
<img id= "fridgeIcon" src= "{%static "fridge.png" %}"" alt= "a flat icon of a refrigerator";>
<div class = "sideItem stats">
<a href = "indexStatistics.html">
<div class = "sideText"> STATS </div>
</a>
</div>
<img id= "statsIcon" src= "{%static "stats.png" %}" alt= "a flat icon of a graph";>
<div class = "sideItem toBuy">
<a href = "http://127.0.0.1:8000/to-buy/">
<div class = "sideText"> TO BUY </div>
</a>
</div>
<img id= "toBuyIcon" src= "{%static "add-to-cart.png" %}" alt= "a flat icon of a shopping cart";>
</div>
<div class = "pageSubhead">
<div class = "subheader"> Fridge </div>
<form method="POST" enctype="multipart/form-data" class = "editItem">
{% csrf_token %}
Quantity: {{form.Item_Quantity}}
Unit: {{form.Quantity_Unit}}
Description: {{form.Item_Description}}
Purchase date: {{form.Purchase_Date}}
Expiration date: {{form.Expiration_Date}}
<div class="deleteItemBox">
{{form.Is_Expired}}
Expired?
</div>
<div class="deleteItemBox">
{{form.Is_Consumed}}
Consumed?
</div>
<input type="submit" value="Submit">
<a href="http://127.0.0.1:8000/fridge/list/"><div class = "
black">Back</div></a>
</form>
</div>
</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
{% load static %}
<link rel="stylesheet" href="{%static "mainEditItem.css" %}">
</head>
<body>
<div class = "editItemHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
</div>
<div class = "lowerPage">
<div class = "sidebar">
<div class = "sideItem fridge">
<a href="http://127.0.0.1:8000/fridge/list/">
<div class = " sideText"> FRIDGE </div>
</a>
</div>
<img id= "fridgeIcon" src= "{%static "fridge.png" %}"" alt= "a flat icon of a refrigerator";>
<div class = "sideItem stats">
<a href = "indexStatistics.html">
<div class = "sideText"> STATS </div>
</a>
</div>
<img id= "statsIcon" src= "{%static "stats.png" %}" alt= "a flat icon of a graph";>
<div class = "sideItem toBuy">
<a href = "http://127.0.0.1:8000/to-buy/">
<div class = "sideText"> TO BUY </div>
</a>
</div>
<img id= "toBuyIcon" src= "{%static "add-to-cart.png" %}" alt= "a flat icon of a shopping cart";>
</div>
<div class = "pageSubhead">
<div class = "subheader"> Fridge </div>
<form method="POST" enctype="multipart/form-data" class = "editItem">
{% csrf_token %}
{{ form.non_field_errors }}
{{form.Icon.errors}}
Product Name: {{form.Product_Name}}
Category: {{form.Product_Category}}
Description: {{form.Product_Description}}
<div class="deleteItemBox">
{{form.To_Buy}}
To Buy?
</div>
<div class="deleteItemBox black">
Icon: {{form.Icon}}<br>
</div>
<input type="submit" value="Submit">
<a href="http://127.0.0.1:8000/fridge/list/"><div class = "
black">Back</div></a>
</form>
</div>
</div>
</body>
</html>
\ No newline at end of file
......@@ -14,79 +14,67 @@
</div>
</div>
<div class = "lowerPage">
<!-- sidebar start-->
<div class = "sidebar">
<div class = "sideItem fridge">
<a href="http://127.0.0.1:8000/fridge/list/">
<div class = " sideText"> FRIDGE </div>
</a>
</div>
<img id= "fridgeIcon" src= "" alt= "a flat icon of a refrigerator";>
<div class = "sideItem recipes">
<div class = "sideText"> RECIPES </div>
</div>
<img id= "recipesIcon" src= "" alt= "a flat icon of a cook book";>
<img id= "fridgeIcon" src= "{%static "fridge.png" %}" alt= "a flat icon of a refrigerator">
<div class = "sideItem stats">
<a href = "">
<div class = "sideText"> STATS </div>
</a>
</div>
<img id= "statsIcon" src= "" alt= "a flat icon of a graph";>
<img id= "statsIcon" src= "{%static "stats.png" %}" alt= "a flat icon of a graph";>
<div class = "sideItem toBuy">
<a href = "http://127.0.0.1:8000/to-buy/">
<div class = "sideText"> TO BUY </div>
</a>
</div>
<img id= "toBuyIcon" src= "" alt= "a flat icon of a shopping cart";>
<img id= "toBuyIcon" src= "{%static "add-to-cart.png" %}" alt= "a flat icon of a shopping cart";>
</div>
<!-- sidebar end-->
<!-- subhead start-->
<div class = "pageSubhead">
<div class = "subheader"> Fridge </div>
<div class = "addItem">
<div class = "addItemButton">
<div class = "addItemText"><a href="http://127.0.0.1:8000/fridge/add/"> ADD ITEM + </a></div>
</div>
<div class = "addItemText"><a href="http://127.0.0.1:8000/fridge/add/" class = "addItemText"> ADD +</a> </div>
</div>
<div class = "changeView"> LIST VIEW </div>
</div>
<div class = "changeView">
<select name="changeViewDropdown">
<option value="listView">List View</option>
<option value="detailedView">Calendar View</option>
</select>
</div>
</div>
<!-- subhead end-->
{% for product in object_list %}
<div class = "listView">
<div class = "listItem one">
<img id= "listIcon" src= "{{product.Icon.url}}" width = "185" height = "185" alt= "a flat icon the product";>
<div class = "listText">
<a href='http://127.0.0.1:8000/fridge/{{product.Product_ID}}' class = "daysLeft"> {{product.Product_Name}} </a>
<div class = "product"> {{product.Product_Category}} </div>
<div class = "category"> To buy: {{product.To_Buy}} </div>
</div>
<div class = "listRemove">
<a href = "http://127.0.0.1:8000/fridge/{{product.Product_ID}}/delete"><div class= "removeText">DELETE</div></a>
</div>
<h2>Fridge</h2>
<table style="width:70%" div class="main">
<div class = "listEdit">
<a href = "http://127.0.0.1:8000/fridge/{{product.Product_ID}}/edit">
<div class = "black">EDIT</div></a>
</div>
</div>
<tr><th></th>
<th><a href="http://127.0.0.1:8000/fridge/list/">name</a></th>
<th><a href="http://127.0.0.1:8000/fridge/list-category">category</a></th>
<th>description</th>
<th>to buy?</th>
<th>user</th>
</tr>
{% for product in object_list %}
<tr>
<th>
<img src = "{{product.Icon.url}}" width = "100" height ="100">
</th>
<th>
<a href='http://127.0.0.1:8000/fridge/{{product.Product_ID}}'>
{{product.Product_Name}}</a>
</th>
<th>
{{product.Product_Category}}
</th>
<th>
{{product.Product_Description}}
</th>
<th>
{{product.To_Buy}}
</th>
<th>
<a href='http://127.0.0.1:8000/fridge/{{product.Product_ID}}/delete'>Delete?</a>
</th>
</tr>
{% endfor %}
</table>
{% endblock %}
</html>
<html>
<title>Fridge</title>
{% load static %}
<link rel="stylesheet" href="{%static "mainFridgeDetailed.css" %}">
{% block content %}
<body>
<div class = "detailedViewHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
</div>
<div class = "lowerPage">
<!-- sidebar start-->
<div class = "sidebar">
<div class = "sideItem fridge">
<a href="http://127.0.0.1:8000/fridge/list/">
<div class = " sideText"> FRIDGE </div>
</a>
</div>
<img id= "fridgeIcon" src= "{%static "fridge.png" %}"" alt= "a flat icon of a refrigerator";>
<div class = "sideItem stats">
<a href = "indexStatistics.html">
<div class = "sideText"> STATS </div>
</a>
</div>
<img id= "statsIcon" src= "{%static "stats.png" %}" alt= "a flat icon of a graph";>
<div class = "sideItem toBuy">
<a href = "http://127.0.0.1:8000/to-buy/">
<div class = "sideText"> TO BUY </div>
</a>
</div>
<img id= "toBuyIcon" src= "{%static "add-to-cart.png" %}" alt= "a flat icon of a shopping cart";>
</div>
<!-- sidebar end-->
<!-- subhead start-->
<div class = "pageSubhead">
<div class = "subheader"> Fridge </div>
<div class = "addItem">
<a href = "indexaddItem.html">
<div class = "addItemButton">
<div class = "addItemText"> <a href="{{ request.path }}add" class = "addItemText"> ADD ITEM +</a> </div>
</div>
</a>
</div>
<!-- subhead end-->
<div class = "detailedView">
<div class = "productHeader"> PRODUCT </div>
<div class = "header name"> Name </div>
<div class = "header description"> Description </div>
<div class = "header quantity"> Quantity </div>
<div class = "header expiration"> Expiration Date </div>
<div class = "header purchase"> Purchase Date </div>
<div class = "header status"> Expired? </div>
<div class = "header"> </div>
{%for item in object_list%}
<div class = "item name"> {{item.Product_ID.Product_Name}} </div>
<div class = "item description"> {{item.Item_Description}}</div>
<div class = "item quantity"> {{item.Item_Quantity}} {{item.Quantity_Unit}} </div>
<div class = "item expiration"> {{item.Expiration_Date}} </div>
<div class = "item purchase"> {{item.Purchase_Date}} </div>
<div class = "item status"> {{item.Is_Expired}} </div>
<div class = "item options"> <a href = "http://127.0.0.1:8000/fridge/{{item.Product_ID}}/{{item.Item_ID}}/edit"><div class = "white">Edit</div></a>
<a href = "http://127.0.0.1:8000/fridge/{{item.Product_ID}}/{{item.Item_ID}}/delete"><div class = "white">Remove</div></a> </div>
{%endfor%}
</div>
</div>
</div>
</body>
{% endblock %}
</html>
<html>
<title>Fridge</title>
{% load static %}
<link rel="stylesheet" href="{%static "sidebar.css" %}">
{% block content %}
<style>
table, th, td {
border: 1px solid black;
}
</style>
<div class = "listViewHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
</div>
<div class = "lowerPage">
<div class = "sidebar">
<div class = "sideItem text fridge">
FRIDGE
</div>
<div class = "sideItem icon fridge">
<div class = "circle"> :3 </div>
</div>
<div class = "sideItem text recipes">
RECIPES
</div>
<div class = "sideItem icon recipes">
<div class = "circle"> :3 </div>
</div>
<div class = "sideItem text stats">
STATS
</div>
<div class = "sideItem icon stats">
<div class = "circle"> :3 </div>
</div>
<div class = "sideItem text toBuy">
TO BUY
</div>
<div class = "sideItem icon toBuy">
<div class = "circle"> :3 </div>
</div>
</div>
</div>
<h2>Fridge</h2>
<table style="width:70%" div class="main">
<tr><th colspan="5"><a href="{{request.path}}add"> Add</a></th></tr>
<tr>
<th><a href="http://127.0.0.1:8000/fridge/{{object_list.Product_ID}}">Name</a></th>
<th><a href="http://127.0.0.1:8000/fridge/{{object_list.Product_ID}}">Description</a></th>
<th>Quantity</th>
<th>Expiration Date</th>
<th>Purchase Date</th>
<th>Status</th>
</tr>
{% for item in object_list %}
<tr>
<th>
{{item.Product_ID.Product_Name}}
</th>
<th>
{{item.Item_Description}}
</th>
<th>
{{item.Item_Quantity}} {{item.Quantity_Unit}}
</th>
<th>
{{item.Expiration_Date}}
</th>
<th>
{{item.Purchase_Date}}
</th>
<th>
{{item.Is_Expired}}
</th>
<th>
<a href='http://127.0.0.1:8000/fridge/{{item.Product_ID}}/{{item.Item_ID}}/delete'>Delete?</a>
</th>
</tr>
{% endfor %}
</table>
{% endblock %}
</html>
<html>
<head>
{% load static %}
<link rel="stylesheet" href="{%static "sidebar.css" %}">
</head>
<body>
<form method="post">{% csrf_token %}
<p>Are you sure you want to delete "{{ object }}"?</p>
<input type="submit" value="Confirm">
</form>
<div class = "listViewHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
</div>
<div class = "lowerPage">
<!-- sidebar start-->
<div class = "sidebar">
<div class = "sideItem fridge">
<a href="http://127.0.0.1:8000/fridge/list/">
<div class = " sideText"> FRIDGE </div>
</a>
</div>
<img id= "fridgeIcon" src= "{%static "fridge.png" %}" alt= "a flat icon of a refrigerator">
<div class = "sideItem stats">
<a href = "">
<div class = "sideText"> STATS </div>
</a>
</div>
<img id= "statsIcon" src= "{%static "stats.png" %}" alt= "a flat icon of a graph";>
<div class = "sideItem toBuy">
<a href = "http://127.0.0.1:8000/to-buy/">
<div class = "sideText"> TO BUY </div>
</a>
</div>
<img id= "toBuyIcon" src= "{%static "add-to-cart.png" %}" alt= "a flat icon of a shopping cart";>
</div>
<!-- sidebar end-->
<!-- subhead start-->
<div class = "pageSubhead">
<div class = "subheader"> Fridge </div>
</div>
<!-- subhead end-->
{% block content %}
<div class = "listView">
<div class = "listItem one">
<div class = "listText">
<br/>
<form method="post">{% csrf_token %}
<div class ="product">Are you sure you want to delete this item?</div> <br/> <br/>
<input type="submit" value = "Confirm"></form></div>
</div>
</div>
</div>
{% endblock %}
</body>
</html>
{% load static %}
<link rel="stylesheet" href="{%static "sidebar.css" %}">
<div class = "listViewHeader">
<html>
<head>
<link rel="stylesheet" href="{%static "mainLogIn.css" %}">
</head>
<body>
<div class = "loginHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
<div class = "sideHeader">
<a href= "http://127.0.0.1:8000/accounts/login">
<div class = "loginText">Log In</div>
</a>
<a href= "http://127.0.0.1:8000/accounts/signup">
<div class = "signUpButton">
<div class = "signUpText">Sign Up for Free!</div>
</div>
<form method="post">
</a>
</div>
</div>
<div class = "lowerPage">
<div class = "loginArea">
<div class = "breadcrumbsText"> BREADCRUMBS </div>
<div class = "loginText2"> Log In </div>
<form method="POST">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Log In</button>
</form>
\ No newline at end of file
<div class = "continueText">{{ form.non_field_errors }}
{{ form.username.errors }}
{{ form.password.errors }}</div>
<div class = "loginText2"> Username:<br>
{{form.username}}
</div>
<div class = "loginText2"> Password:<br>
{{form.password}}
</div>
<div class = "lowerBar">
<a href= "http://127.0.0.1:8000/accounts/signup">
<div class = "createAccountText"> Create an account</div>
</a>
<button type = "submit" class = "nextButton">NEXT</button></form>
</div>
</div>
</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<title> Sign Up to BreadCrumbs! </title>
<!-- I used a random css online so pls change it to what we're using -->
<link rel="stylesheet" href "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
</head>
{% load static %}
<html>
<head>
<link rel="stylesheet" href="{%static "mainSignUp.css" %}">
</head>
<body>
<center>
<h1 class = 'alert alert-success'> Sign Up </h1>
<h3 class = "p-3 mb-2 bg-primary text-white" style = 'font-size: 50px;'>BREADCRUMBS EMAIL </h3>
<div class = "signupHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
<div class = "sideHeader">
<a href= "http://127.0.0.1:8000/accounts/login">
<div class = "loginText">Log In</div>
</a>
<a href= "http://127.0.0.1:8000/accounts/signup">
<div class = "signUpButton">
<div class = "signUpText">Sign Up for Free!</div>
</div>
</a>
</div>
</div>
<div class = "lowerPage">
<div class = "signUpArea">
<div class = "breadcrumbsText"> BREADCRUMBS </div>
<div class = "signUpText2"> Sign Up </div>
<div class = "getStartedText"> Get started on leaving your trail(mix)! </div>
<form method="POST">
<!-- Very Important csrf Token -->
{% csrf_token %}
<div class = "form-group">
<p>
<h3> {{ form.as_p }} </h3>
</p>
<br>
<input type="submit" name="SignUp" class = 'btn btn-primary btn-lg'>
{% csrf_token %} <br>
<div class = "getStartedText">{{ form.non_field_errors }}
{{ form.username.errors }}
{{ form.email.errors }}
{{ form.password1.errors }}
{{ form.password2.errors }}</div>
<div class ="signUpText2"> Username</div><div class ="getStartedText">
Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.<br><br>
{{ form.username }} </div><br>
<div class ="signUpText2"> Email</div><div class ="getStartedText">
{{form.email}}
</div><br>
<div class ="signUpText2"> Password</div><div class ="getStartedText">
<ul>
<li> Your password can’t be too similar to your other personal information.
<li> Your password must contain at least 8 characters.
<li> Your password can’t be a commonly used
<li> Your password can’t be entirely numeric. <br><br></ul>
{{ form.password1 }} </div><br>
<div class ="signUpText2"> Password confirmation</div>
<div class ="getStartedText">Enter the same password as before, for verification.<br><br>
{{form.password2}}
</div>
<div class = "lowerBar">
<a href= "http://127.0.0.1:8000/accounts/login">
<div class = "alreadyHaveAccountText">I already have an account</div>
</a>
<input type="submit" name="SignUp" class = "submitButton" value = "Create Account">
</div>
</form>
</center>
</div>
</body>
</html>
\ No newline at end of file
<html>
<head>
{% load static %}
<link rel="stylesheet" href="{%static "mainToBuy.css" %}">
</head>
<body>
<div class = "toBuyHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
</div>
<div class = "lowerPage">
<!-- sidebar start-->
<div class = "sidebar">
<div class = "sideItem fridge">
<a href="http://127.0.0.1:8000/fridge/list/">
<div class = " sideText"> FRIDGE </div>
</a>
</div>
<img id= "fridgeIcon" src= "{%static "fridge.png" %}" alt= "a flat icon of a refrigerator">
<div class = "sideItem stats">
<a href = "">
<div class = "sideText"> STATS </div>
</a>
</div>
<img id= "statsIcon" src= "{%static "stats.png" %}" alt= "a flat icon of a graph";>
<div class = "sideItem toBuy">
<a href = "http://127.0.0.1:8000/to-buy/">
<div class = "sideText"> TO BUY </div>
</a>
</div>
<img id= "toBuyIcon" src= "{%static "add-to-cart.png" %}" alt= "a flat icon of a shopping cart";>
</div>
<!-- sidebar end-->
<div class = "pageSubhead">
<div class = "subheader"> To Buy </div>
<div class = "sortBy">
<div class = "sortByDropdown">
<div class = "sortByText"> SORT BY </div>
</div>
</div>
</div>
{% for product in object_list %}
<div class = "listView">
<div class = "listItem one">
<img id= "listIcon" src= "{{product.Icon.url}}" width = "185" height = "185" alt= "a flat icon the product";>
<div class = "listText">
<div class = "product"> {{product.Product_Name}} </div>
<div class = "category"> {{product.Product_Category}} </div>
</div>
<div class = "listRemove">
<a href = "http://127.0.0.1:8000/fridge/{{product.Product_ID}}/update"><div class= "removeText"> REMOVE </div></a>
</div>
<div class = "listAdd">
<a href = "http://127.0.0.1:8000/fridge/{{product.Product_ID}}/add"><div class = "black">ADD ITEM</div></a>
</div>
</div>
{% endfor %}
</body>
</html>
<!DOCTYPE html>
<html lang="en">
{% load static %}
<link rel="stylesheet" href="{%static "sidebar.css" %}">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Add Item</title>
</head>
<body>
<div class = "listViewHeader">
<div class = "breadcrumbsHead">
BREADCRUMBS
</div>
</div>
<div class = "lowerPage">
<!-- sidebar start-->
<div class = "sidebar">
<div class = "sideItem fridge">
<a href="http://127.0.0.1:8000/fridge/list/">
<div class = " sideText"> FRIDGE </div>
</a>
</div>
<img id= "fridgeIcon" src= "{%static "fridge.png" %}" alt= "a flat icon of a refrigerator">
<div class = "sideItem stats">
<a href = "">
<div class = "sideText"> STATS </div>
</a>
</div>
<img id= "statsIcon" src= "{%static "stats.png" %}" alt= "a flat icon of a graph";>
<div class = "sideItem toBuy">
<a href = "http://127.0.0.1:8000/to-buy/">
<div class = "sideText"> TO BUY </div>
</a>
</div>
<img id= "toBuyIcon" src= "{%static "add-to-cart.png" %}" alt= "a flat icon of a shopping cart";>
</div>
<!-- sidebar end-->
<!-- subhead start-->
<div class = "pageSubhead">
<div class = "subheader"> To Buy </div>
</div>
<!-- subhead end-->
<div class = "listView">
<div class = "listItem one">
<div class = "listText">
<br/>
<form method="post">{% csrf_token %}
<div class ="product">To Buy status:
{{ form.To_Buy }}</div> <br/> <br/>
<input type="submit" value = "Confirm"></form></div>
</div>
</div>
</div>
<input type="submit" value="Update">
</form>
</body>
</html>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment