Well, for one thing, 「よかったら」 is more like "if it's okay...".
Those かs are just the question particle. These are examples of embedded clauses, in this case they are questions within sentences.
In each sentence, they are embedding the question, "what did (we) do in class yesterday?"
Another example:
今朝、何を食べたか思い出さない。
"I don't remember what I ate this morning."
The embedded question clause "what did I eat this morning" acts as the object of 思い出す (to remember/recall).
However, if the embedded question doesn't contain a question word like 何, どこ, etc., then か is replaced with かどうか.
Example:
勝てるかどうかは、どのぐらい練習するによる。*
"Whether or not we can win depends on how much we practice."
*That example took me FAR too long to construct and required me to look through examples on alc.co.jp... -_-