update controllers and routes; fix view