Yeah! The lower temperature makes the yeast eat more slowly. Sounds to me like it is doing just fine. The question for how long will depend entirely on the yeast. One way to tell how long to keep it in the primary is to watch the krausen. Take a piece of tape or something and mark the top of the krausen and check it every couple days. If it increases in size then move the tape. After a week or two you'll notice the krausen will start decreasing in height. At this point you should perform a diacetyl rest. Every day increase the temp by 2-5 (no more than 5) degrees F per day until you are 10 degrees higher than your primary temp. When you hit the 10 degree above mark, let it sit for 2 days and then reverse the temp using the same step method as before and take it all the way down to your lagering temp (which in your case should be between 33 and 37 degF). When you get down to your lagering temp, rack it to your lagering container and lager it for whatever time you decide.
Primary fermentation: 1-2 weeks
Diacetyl rest and step up/down: 3 days increase + 2 days rest + 6 days decrease = 11 days
Total fermentation (minus lagering time): 18 - 25 days
'Kilgore Trout once wrote a short story which was a dialogue between two pieces of yeast. They were discussing the possible purposes of life as they ate sugar and suffocated in their own excrement. Because of their limited intelligence, they never came close to guessing that they were making champagne.'
—Kurt Vonnegut, Breakfast of Champions