Skip to content

Instantly share code, notes, and snippets.

View armandofox's full-sized avatar

Armando Fox armandofox

View GitHub Profile
@armandofox
armandofox / infoAssessment.json
Last active February 7, 2025 02:24
Example infoAssessment.json for allowing students to upload personal cheatsheets for use during CBTF exams
//
// NOTE: delete all lines beginning with '//' before using--the file
// will cause errors otherwise!
//
{
// replace the following with a real uuid, as always
"uuid": "99999999-8888-7777-6666-555544443333",
"type": "Homework",
"title": "Quiz 1 Cheatsheet",
"set": "Personal Cheatsheets",
@armandofox
armandofox / question.html
Created February 7, 2025 02:19
Example question.html for student to upload personal cheatsheet. See detailed instructions in CBTF Course Staff Handbook
<pl-question-panel>
Instructions on what makes a valid cheatsheet go here.
Name your cheatsheet "cheatsheet.pdf" and use the panel below to upload it.
</pl-question-panel>
<pl-file-upload file-names="cheatsheet.pdf">
</pl-file-upload>
@armandofox
armandofox / infoAssessment.json
Last active March 11, 2025 17:19
infoAssessment.json for CBTF Orientation quiz. Copy this file into its own subdirectory under the `assessments/` directory of the appropriate courseInstance of your PrairieLearn course. Change line 2 to contain an actual UID, which you can generate using the command line `uuidgen` on Mac/Unix-like systems or from the website https://www.uuidgene…
{
"uuid": "REPLACE WITH A UUID",
"type": "Homework",
"allowAccess": [
{
"mode": "Exam"
}
],
"title": "CBTF Orientation",
"set": "Practice Quiz",
function parse_git_branch {
git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'
}
export PS1="\[\033[1;34m\]\w[\$(parse_git_branch)]$\[\033[0m\] "
@armandofox
armandofox / application.html.erb
Created July 8, 2021 23:31
application.html.erb
<!DOCTYPE html>
<html>
<head>
<title> RottenPotatoes! </title>
<link rel="stylesheet" href="https://getbootstrap.com/docs/4.0/dist/css/bootstrap.min.css">
<%= javascript_include_tag :application %>
<%= csrf_meta_tags %>
</head>
<body>
<div class="container">
@armandofox
armandofox / association1.rb
Created July 8, 2021 23:31
association1.rb
# it would be nice if we could do this:
inception = Movie.where(:title => 'Inception')
alice,bob = Moviegoer.find(alice_id, bob_id)
# alice likes Inception, bob less so
alice_review = Review.new(:potatoes => 4)
bob_review = Review.new(:potatoes => 3)
# a movie has many reviews:
inception.reviews = [alice_review, bob_review]
# a moviegoer has many reviews:
alice.reviews << alice_review
@armandofox
armandofox / application.html.erb
Created July 8, 2021 23:31
application.html.erb
<!DOCTYPE html>
<html>
<head>
<title> RottenPotatoes! </title>
<link rel="stylesheet" href="https://getbootstrap.com/docs/4.0/dist/css/bootstrap.min.css">
<%= javascript_include_tag :application %>
<%= csrf_meta_tags %>
</head>
<body>
<div class="container">
@armandofox
armandofox / association1.rb
Created July 8, 2021 23:31
association1.rb
# it would be nice if we could do this:
inception = Movie.where(:title => 'Inception')
alice,bob = Moviegoer.find(alice_id, bob_id)
# alice likes Inception, bob less so
alice_review = Review.new(:potatoes => 4)
bob_review = Review.new(:potatoes => 3)
# a movie has many reviews:
inception.reviews = [alice_review, bob_review]
# a moviegoer has many reviews:
alice.reviews << alice_review
@armandofox
armandofox / topmovies.rb
Created May 11, 2021 16:39
topmovies.rb
class MoviesController < ApplicationController
def index
@movies = Movie.all
@top_5 = Movie.joins(:reviews).group('movie_id').
order("AVG(potatoes) DESC").limit(5)
end
end
@armandofox
armandofox / topmovies.html.erb
Created May 11, 2021 16:39
topmovies.html.erb
<!-- a cacheable partial for top movies -->
<%- cache('top_moviegoers') do %>
<ul id="topmovies">
<%- @top_5.each do |movie| %>
<li> <%= movie.name %> </li>
<% end %>
</ul>
<% end %>