fixed search and filters

This commit is contained in:
2013-01-29 09:04:40 -05:00
parent 905b3258fb
commit 19e03c4fa0
21 changed files with 414 additions and 388 deletions

View File

@@ -1,71 +1,68 @@
extends ../layout
block additionalscripts
script(src='/javascripts/newexercisevalidation.js')
block content
h1 Edit Exercise<p></p>
form(id="newexercise", method="POST", action="/admin/exercises/" + encodeURIComponent(exercise._id))
ul
li
label(for="name") Exercise Name<br />
input#name(name="name", value= exercise.name, oldvalue= exercise.name)
input#_id(name="_id", value= exercise._id, type='hidden')
li
label(for="type") Exercise Type<br />
//- first a little prep
- freeweights = ('freeweights'==exercise.type) ? 'selected' : null;
- machine = ('machine'==exercise.type) ? 'selected' : null;
- bodyweight = ('bodyweight'==exercise.type) ? 'selected' : null;
- kettlebells = ('kettelbells'==exercise.type) ? 'selected' : null;
- cardio = ('cardio'==exercise.type) ? 'selected' : null;
select#type(name="type")
option(value='notselected') Select One
option(value='freeweights', selected=freeweights) Free Weights
option(value='machine', selected=machine) Exercise Machine
option(value='bodyweight', selected=bodyweight) Bodyweight
option(value='kettlebells', selected=kettlebells) Kettlebells
option(value='cardio', selected=cardio) Cardio
li
label(for="type") Exercise Description<br />
input#description(name="description", value= exercise.description)
li
label(for="type") Exercise Difficulty<br />
input#difficulty(name="difficulty", value= exercise.difficulty)
i = 0
- for (i ; i < 10; ++i) {
marray = "musclearray[" + i + "]"
li
label(for="type") Muscle data #{i}
input(name= marray, class="musclearray", id= marray, value= exercise.musclearray[i])
- }
li
keywordlist = [ 'Free Weights', 'Exercise Machine', 'Bodyweight', 'Kettlebells', 'Cardio']
label(for="type") Keywords<br />
select#type(name="keywords", multiple="multiple")
- for keyword in keywordlist
option(selected=exercise.keywords.indexOf(keyword) != -1) #{keyword}
script(src='/javascripts/newexercisevalidation.js')
li
label(for="type") Alternatives<br />
li
datafieldlist = ['Reps','Weight','Time','Distance']
label(for="datafields") Datafields<br />
select#type(name="datafields", multiple="multiple")
- for datafield in datafieldlist
option(selected=exercise.datafields.indexOf(datafield) != -1) #{datafield}
li
input(type="submit", value="Save Changes")
h1 Edit Exercise<p></p>
p
a(href="/admin") Admin Index
p
a(href="/admin/users") Admin Users
p
a(href="/admin/exercises") Admin Exercises
form(id="newexercise", method="POST", action="/admin/exercises/" + encodeURIComponent(exercise._id))
ul
li
label(for="name") Exercise Name<br />
input#name(name="name", value= exercise.name, oldvalue= exercise.name)
input#_id(name="_id", value= exercise._id, type='hidden')
li
label(for="type") Exercise Type<br />
//- first a little prep
- freeweights = ('freeweights'==exercise.type) ? 'selected' : null;
- machine = ('machine'==exercise.type) ? 'selected' : null;
- bodyweight = ('bodyweight'==exercise.type) ? 'selected' : null;
- kettlebells = ('kettelbells'==exercise.type) ? 'selected' : null;
- cardio = ('cardio'==exercise.type) ? 'selected' : null;
select#type(name="type")
option(value='notselected') Select One
option(value='freeweights', selected=freeweights) Free Weights
option(value='machine', selected=machine) Exercise Machine
option(value='bodyweight', selected=bodyweight) Bodyweight
option(value='kettlebells', selected=kettlebells) Kettlebells
option(value='cardio', selected=cardio) Cardio
li
label(for="type") Exercise Description<br />
input#description(name="description", value= exercise.description)
li
label(for="type") Exercise Difficulty<br />
input#difficulty(name="difficulty", value= exercise.difficulty)
i = 0
- for (i ; i < 10; ++i) {
marray = "musclearray[" + i + "]"
li
label(for="type") Muscle data #{i}
input(name= marray, class="musclearray", id= marray, value= exercise.musclearray[i])
- }
li
keywordlist = [ 'Free Weights', 'Exercise Machine', 'Bodyweight', 'Kettlebells', 'Cardio']
label(for="type") Keywords<br />
select#type(name="keywords", multiple="multiple")
- for keyword in keywordlist
option(selected=exercise.keywords.indexOf(keyword) != -1) #{keyword}
li
label(for="type") Alternatives<br />
li
datafieldlist = ['Reps','Weight','Time','Distance']
label(for="datafields") Datafields<br />
select#type(name="datafields", multiple="multiple")
- for datafield in datafieldlist
option(selected=exercise.datafields.indexOf(datafield) != -1) #{datafield}
li
input(type="submit", value="Save Changes")
p
a(href="/admin") Admin Index
p
a(href="/admin/users") Admin Users
p
a(href="/admin/exercises") Admin Exercises

View File

@@ -1,21 +1,18 @@
extends ../layout
h1 Bodyrep
p Exercise Admin
block content
h1 Bodyrep
p Exercise Admin
p
a(href="/users") List Users
p
a(href="/workouts") List workouts
p
a(href="/admin") Admin Index
p
a(href="/admin/users") Admin Users
p
a(href="/admin/exercises") Admin Exercises
p
a(href="/admin/exercises/new") Add Exercise
hr
p
a(href="/users") List Users
p
a(href="/workouts") List workouts
p
a(href="/admin") Admin Index
p
a(href="/admin/users") Admin Users
p
a(href="/admin/exercises") Admin Exercises
p
a(href="/admin/exercises/new") Add Exercise
hr
p= exercise
p= exercise

View File

@@ -1,37 +1,28 @@
extends ../layout
h1 Bodyrep
p Exercise Admin
block content
h1 Bodyrep
p Exercise Admin
p
a(href="/admin/users") Admin Users
p
a(href="/admin/exercises") Admin Exercises
p
a(href="/admin/exercises/new") Add Exercise
hr
p
a(href="/users") List Users
p
a(href="/workouts") List workouts
p
a(href="/admin") Admin Index
p
a(href="/admin/users") Admin Users
p
a(href="/admin/exercises") Admin Exercises
p
a(href="/admin/exercises/new") Add Exercise
hr
ul
- exercises.forEach(function(exercise) {
li
a(href="/admin/exercises/" + encodeURIComponent(exercise._id))= exercise.name
form(action="/admin/exercises/" + encodeURIComponent(exercise._id), method="POST")
input(name="_method", type="hidden", value="DELETE")
input(type="submit", value="Delete")
- });
ul
- exercises.forEach(function(exercise) {
li
a(href="/admin/exercises/" + encodeURIComponent(exercise._id))= exercise.name
form(action="/admin/exercises/" + encodeURIComponent(exercise._id), method="POST")
input(name="_method", type="hidden", value="DELETE")
input(type="submit", value="Delete")
- });
- if (page > 0) {
a(href="?page=" + (page - 1)) Previous
&nbsp;
- }
- if (page > 0) {
a(href="?page=" + (page - 1)) Previous
&nbsp;
- }
- if (! lastPage) {
a(href="?page=" + (page + 1)) Next
- }
- if (! lastPage) {
a(href="?page=" + (page + 1)) Next
- }

View File

@@ -4,12 +4,6 @@
h1 Bodyrep
p Admin Index
p
a(href="/users") List Users
p
a(href="/workouts") List workouts
p
a(href="/admin") Admin Index
p
a(href="/admin/users") Admin Users
p

View File

@@ -1,45 +1,42 @@
extends ../layout
script(src='/javascripts/newexercisevalidation.js')
block additionalscripts
script(src='/javascripts/newexercisevalidation.js')
block content
h1 New Exercise<p></p>
h1 New Exercise<p></p>
form(id="newexercise", method="POST", action="/admin/exercises/new")
ul
li
label(for="name") Exercise Name<br />
input#name(name="name")
li
label(for="type") Exercise Description<br />
input#description(name="description", class="needsnumber")
li
label(for="type") Exercise Difficulty<br />
input#difficulty(name="difficulty")
i = 0
- for (i ; i < 10; ++i) {
marray = "musclearray[" + i + "]"
li
label(for="type") Muscle data #{i}
input(name= marray, class="musclearray", id= marray)
- }
li
label(for="type") Keywords<br />
select#type(name="keywords", multiple="multiple")
option(value='Free Weights') Free Weights
option(value='Exercise Machine') Exercise Machines
option(value='Bodyweight') Bodyweight
option(value='Kettlebells') Kettlebells
option(value='Cardio') Cardio
li
label(for="type") Alternatives<br />
li
label(for="datafields") Datafields<br />
select#type(name="datafields", multiple="multiple")
option(value='Reps') Reps
option(value='Weight') Weight
option(value='Time') Time
option(value='Distance') Distance
li
input(type="submit", value="Create")
form(id="newexercise", method="POST", action="/admin/exercises/new")
ul
li
label(for="name") Exercise Name<br />
input#name(name="name")
li
label(for="type") Exercise Description<br />
input#description(name="description", class="needsnumber")
li
label(for="type") Exercise Difficulty<br />
input#difficulty(name="difficulty")
i = 0
- for (i ; i < 10; ++i) {
marray = "musclearray[" + i + "]"
li
label(for="type") Muscle data #{i}
input(name= marray, class="musclearray", id= marray)
- }
li
label(for="type") Keywords<br />
select#type(name="keywords", multiple="multiple")
option(value='Free Weights') Free Weights
option(value='Exercise Machine') Exercise Machines
option(value='Bodyweight') Bodyweight
option(value='Kettlebells') Kettlebells
option(value='Cardio') Cardio
li
label(for="type") Alternatives<br />
li
label(for="datafields") Datafields<br />
select#type(name="datafields", multiple="multiple")
option(value='Reps') Reps
option(value='Weight') Weight
option(value='Time') Time
option(value='Distance') Distance
li
input(type="submit", value="Create")

View File

@@ -1,36 +1,27 @@
extends ../layout
h1 Bodyrep
p User Admin
block content
h1 Bodyrep
p User Admin
p
a(href="/admin/users") Admin Users
p
a(href="/admin/exercises") Admin Exercises
p
a(href="/users") List Users
p
a(href="/workouts") List workouts
p
a(href="/admin") Admin Index
p
a(href="/admin/users") Admin Users
p
a(href="/admin/exercises") Admin Exercises
hr
hr
ul
- users.forEach(function(user) {
li
a(href="/users/" + encodeURIComponent(user.username))= user.name
form(action="/admin/users/" + encodeURIComponent(user._id), method="POST")
input(name="_method", type="hidden", value="DELETE")
input(type="submit", value="Delete")
- });
ul
- users.forEach(function(user) {
li
a(href="/users/" + encodeURIComponent(user.username))= user.name
form(action="/admin/users/" + encodeURIComponent(user._id), method="POST")
input(name="_method", type="hidden", value="DELETE")
input(type="submit", value="Delete")
- });
- if (page > 0) {
a(href="?page=" + (page - 1)) Previous
&nbsp;
- }
- if (page > 0) {
a(href="?page=" + (page - 1)) Previous
&nbsp;
- }
- if (! lastPage) {
a(href="?page=" + (page + 1)) Next
- }
- if (! lastPage) {
a(href="?page=" + (page + 1)) Next
- }

View File

@@ -1,6 +1,7 @@
script(src='http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js')
script(src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js')
script(src='http://jzaefferer.github.com/jquery-validation/jquery.validate.js')
script(src='/javascripts/scripts.js')
//script(src='/javascripts/livevalidation_standalone.compressed.js')

View File

@@ -1,13 +1,14 @@
div#top
- if (session.user)
p
span
b UserName&nbsp;
b UserName&nbsp;
span= session.user.name
button.home-link(value= encodeURIComponent(session.user.name)) Home
span
b &nbspUserID&nbsp;
span= session.user._id
b &nbspUserID&nbsp;
span= session.user._id
form(method="POST", action="/session")
input(type="hidden", name="_method", value="DELETE")
input(type="submit", value="Log out")

View File

@@ -5,25 +5,8 @@ extends ../layout
block content
div#Leftpane
h2= user.name
- if (session.user)
- if (session.user.name === requested)
h2 Private View
div
button.map-link(value="/workouts/" + encodeURIComponent(session.user.name) + "/recent") Recent workouts
div
button.map-link(value="/workouts/new") Create new workout
- else
h2 Public View
- if (session.user)
- if (session.user.is_admin === true)
div
button.map-link(value="/admin") Goto Admin Page
include ./sidebar
div#Rightpane
include ../workouts/recent

View File

@@ -1,27 +1,5 @@
//extends ../layout
//block content
h1 New workout
h3 Exercises (dynamically loaded from database)
ul#exerciselist
li Unpopulated
div#filters
h3 Filters
label Free Weights
input.filter(type="checkbox", checked=true, value="Free Weights")
label Bodyweight
input.filter(type="checkbox", checked=true, value="Bodyweight")
label Exercise Machines
input.filter(type="checkbox", checked=true, value='Exercise Machine')
label Kettlebells
input.filter(type="checkbox", checked=true, value='Kettlebells')
label Cardio
input.filter(type="checkbox", checked=true, value='Cardio')
//button#addExercise(type="button") Add Exercise
hr
form#newworkout(method="POST", action="/workouts")
ul
li

View File

@@ -1,7 +1,11 @@
h3 Recent workouts:
ul
- recentworkouts.forEach(function(workout) {
li
a.map-link(href="/workouts/" + encodeURIComponent(workout._id))= workout._id
- });
- recentworkouts.forEach(function(workout) {
li
a.map-link(href="/workouts/" + encodeURIComponent(workout._id))= workout._id
each element in workout.elements
li= element.exerciseID.name
ol
each split in element.splits
li Reps: #{split.reps} Weight: #{split.weight}
- });

View File

@@ -1,35 +1,9 @@
extends ../layout
h1= workout.title
block content
h1= workout.title
div!= workout.body
hr
p
span Workout ID:
&nbsp;
a(href="/workouts/" + encodeURIComponent(workout._id))= workout._id
div= workout
ul
li Time: #{workouttime}
each element in workout.elements
li= element.exerciseID
ul
each split in element.splits
li Reps: #{split.reps} Weight: #{split.weight}
- if (session.user)
- if (session.user.is_admin === true)
form(action="/workouts/" + encodeURIComponent(workout._id), method="POST")
input(name="_method", type="hidden", value="DELETE")
input(type="submit", value="Delete")
p
a(href="/workouts") List workouts
- else
- if (session.user._id == workout.userID)
form(action="/workouts/" + encodeURIComponent(workout._id), method="POST")
input(name="_method", type="hidden", value="DELETE")
input(type="submit", value="Delete")
ul
li Time: #{workouttime}
each element in workout.elements
li= element.exerciseID
ul
each split in element.splits
li Reps: #{split.reps} Weight: #{split.weight}