Skip to content

Commit 821ba2b

Browse files
committed
Made form look decent
1 parent d4a719b commit 821ba2b

File tree

13 files changed

+651
-236
lines changed

13 files changed

+651
-236
lines changed

conditional/blueprints/major_project_submission.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ def display_major_project(user_dict=None):
4848
MajorProject.tldr,
4949
MajorProject.timeSpent,
5050
MajorProject.description,
51+
MajorProject.links,
5152
MajorProject.status,
5253
func.array_agg(MajorProjectSkill.skill).label("skills")
5354
).outerjoin(MajorProjectSkill,
@@ -67,6 +68,7 @@ def display_major_project(user_dict=None):
6768
"time_spent": p.timeSpent,
6869
"skills": p.skills,
6970
"desc": p.description,
71+
"links": p.links,
7072
"status": p.status,
7173
"is_owner": bool(user_dict["username"] == p.uid)
7274
}
@@ -123,6 +125,7 @@ def submit_major_project(user_dict=None):
123125
time_spent = post_data['projectTimeSpent']
124126
skills = post_data['projectSkills']
125127
description = post_data["projectDescription"]
128+
links = post_data['projectLinks']
126129

127130
user_id = user_dict['username']
128131

@@ -134,7 +137,7 @@ def submit_major_project(user_dict=None):
134137
return jsonify({"success": False}), 400
135138

136139
# TODO: Ensure all the information is being passed to the object
137-
project = MajorProject(user_id, name, tldr, time_spent, description)
140+
project = MajorProject(user_id, name, tldr, time_spent, description, links)
138141

139142
# Save the info to the database
140143
db.session.add(project)

conditional/templates/major_project_submission.html

Lines changed: 270 additions & 126 deletions
Large diffs are not rendered by default.

frontend/images/photo_video.svg

Lines changed: 6 additions & 0 deletions
Loading

frontend/javascript/modules/majorProjectForm.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,8 @@ export default class MajorProjectForm {
5757
projectTldr: this.form.querySelector('input[name=tldr]').value,
5858
projectTimeSpent: this.form.querySelector('textarea[name=time-commitment]').value,
5959
projectSkills: skills,
60-
projectDescription: this.form.querySelector('textarea[name=description]').value
60+
projectDescription: this.form.querySelector('textarea[name=description]').value,
61+
projectLinks: this.form.querySelector('textarea[name=links]').value
6162
};
6263

6364
console.log(payload)

frontend/stylesheets/pages/_major-project.scss

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,22 @@
1-
.major-project-desc {
2-
white-space: pre-line;
1+
.mp-form-intro {
2+
background-color: #fff;
3+
box-shadow: 1px 1px 2px grey;
4+
padding: 1em;
5+
padding-bottom: 0.25em;
6+
margin-bottom: 2em;
37
}
48

9+
.mp-form {
10+
background-color: #fff;
11+
box-shadow: 1px 1px 2px grey;
12+
margin-bottom: 2em;
13+
padding: 1em;
14+
}
15+
16+
.form-control {
17+
margin-bottom: 1em;
18+
}
519
.form-label {
6-
margin-bottom: 0;
720
margin-top: 1.25rem;
821
font-size: 2rem;
922
}
@@ -24,6 +37,10 @@
2437
height: fit-content;
2538
}
2639

40+
.mb-extra {
41+
margin-bottom: 2em;
42+
}
43+
2744
.placeholder {
2845
color: #bbb;
2946
font-size: 16px;
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
"""add time spent to major projects
2+
3+
Revision ID: 217b5842448c
4+
Revises: e2673b9e9ea8
5+
Create Date: 2026-02-21 16:45:10.780115
6+
7+
"""
8+
9+
# revision identifiers, used by Alembic.
10+
revision = '217b5842448c'
11+
down_revision = 'e2673b9e9ea8'
12+
13+
from alembic import op
14+
import sqlalchemy as sa
15+
16+
17+
def upgrade():
18+
# ### commands auto generated by Alembic - please adjust! ###
19+
op.add_column('major_projects', sa.Column('timeSpent', sa.Text(), nullable=True))
20+
# ### end Alembic commands ###
21+
22+
23+
def downgrade():
24+
# ### commands auto generated by Alembic - please adjust! ###
25+
op.drop_column('major_projects', 'timeSpent')
26+
# ### end Alembic commands ###
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
"""empty message
2+
3+
Revision ID: 72444bd2437e
4+
Revises: 217b5842448c
5+
Create Date: 2026-02-28 17:15:54.028901
6+
7+
"""
8+
9+
# revision identifiers, used by Alembic.
10+
revision = '72444bd2437e'
11+
down_revision = '217b5842448c'
12+
13+
from alembic import op
14+
import sqlalchemy as sa
15+
16+
17+
def upgrade():
18+
# ### commands auto generated by Alembic - please adjust! ###
19+
op.create_table('major_project_skills',
20+
sa.Column('project_id', sa.Integer(), nullable=False),
21+
sa.Column('skill', sa.Text(), nullable=False),
22+
sa.ForeignKeyConstraint(['project_id'], ['major_projects.id'], ondelete='cascade'),
23+
sa.PrimaryKeyConstraint('project_id', 'skill')
24+
)
25+
op.add_column('major_projects', sa.Column('tldr', sa.String(length=128), nullable=True))
26+
op.add_column('major_projects', sa.Column('timeSpent', sa.Text(), nullable=True))
27+
op.alter_column('major_projects', 'description',
28+
existing_type=sa.TEXT(),
29+
nullable=False)
30+
# ### end Alembic commands ###
31+
32+
33+
def downgrade():
34+
# ### commands auto generated by Alembic - please adjust! ###
35+
op.alter_column('major_projects', 'description',
36+
existing_type=sa.TEXT(),
37+
nullable=True)
38+
op.drop_column('major_projects', 'timeSpent')
39+
op.drop_column('major_projects', 'tldr')
40+
op.drop_table('major_project_skills')
41+
# ### end Alembic commands ###
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
"""empty message
2+
3+
Revision ID: 8182939744c8
4+
Revises: f1d08673b870
5+
Create Date: 2026-03-01 10:04:50.175588
6+
7+
"""
8+
9+
# revision identifiers, used by Alembic.
10+
revision = '8182939744c8'
11+
down_revision = 'f1d08673b870'
12+
13+
from alembic import op
14+
import sqlalchemy as sa
15+
16+
17+
def upgrade():
18+
# ### commands auto generated by Alembic - please adjust! ###
19+
op.create_table('major_project_skills',
20+
sa.Column('project_id', sa.Integer(), nullable=False),
21+
sa.Column('skill', sa.Text(), nullable=False),
22+
sa.ForeignKeyConstraint(['project_id'], ['major_projects.id'], ondelete='cascade'),
23+
sa.PrimaryKeyConstraint('project_id', 'skill')
24+
)
25+
op.add_column('major_projects', sa.Column('tldr', sa.String(length=128), nullable=True))
26+
op.alter_column('major_projects', 'description',
27+
existing_type=sa.TEXT(),
28+
nullable=False)
29+
# ### end Alembic commands ###
30+
31+
32+
def downgrade():
33+
# ### commands auto generated by Alembic - please adjust! ###
34+
op.alter_column('major_projects', 'description',
35+
existing_type=sa.TEXT(),
36+
nullable=True)
37+
op.drop_column('major_projects', 'tldr')
38+
op.drop_table('major_project_skills')
39+
# ### end Alembic commands ###
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
"""empty message
2+
3+
Revision ID: 82cdb94fc915
4+
Revises: f1d08673b870
5+
Create Date: 2026-03-01 10:19:20.002845
6+
7+
"""
8+
9+
# revision identifiers, used by Alembic.
10+
revision = '82cdb94fc915'
11+
down_revision = 'f1d08673b870'
12+
13+
from alembic import op
14+
import sqlalchemy as sa
15+
16+
17+
def upgrade():
18+
# ### commands auto generated by Alembic - please adjust! ###
19+
op.add_column('major_projects', sa.Column('links', sa.Text(), nullable=True))
20+
# ### end Alembic commands ###
21+
22+
23+
def downgrade():
24+
# ### commands auto generated by Alembic - please adjust! ###
25+
op.drop_column('major_projects', 'links')
26+
# ### end Alembic commands ###
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
"""empty message
2+
3+
Revision ID: e2673b9e9ea8
4+
Revises: 7a3904cac24b
5+
Create Date: 2026-02-21 13:10:18.957944
6+
7+
"""
8+
9+
# revision identifiers, used by Alembic.
10+
revision = 'e2673b9e9ea8'
11+
down_revision = '7a3904cac24b'
12+
13+
from alembic import op
14+
import sqlalchemy as sa
15+
16+
17+
def upgrade():
18+
# ### commands auto generated by Alembic - please adjust! ###
19+
op.drop_constraint('project_id_fk', 'major_project_skills', type_='foreignkey')
20+
op.create_foreign_key(None, 'major_project_skills', 'major_projects', ['project_id'], ['id'], ondelete='cascade')
21+
op.alter_column('major_projects', 'tldr',
22+
existing_type=sa.VARCHAR(length=128),
23+
nullable=True)
24+
# ### end Alembic commands ###
25+
26+
27+
def downgrade():
28+
# ### commands auto generated by Alembic - please adjust! ###
29+
op.alter_column('major_projects', 'tldr',
30+
existing_type=sa.VARCHAR(length=128),
31+
nullable=False)
32+
op.drop_constraint(None, 'major_project_skills', type_='foreignkey')
33+
op.create_foreign_key('project_id_fk', 'major_project_skills', 'major_projects', ['project_id'], ['id'])
34+
# ### end Alembic commands ###

0 commit comments

Comments
 (0)