- # require that the user is a administrator, or fill out a helpful error message
- # and return them to the user page.
- def require_administrator
- unless @user.administrator?
- flash[:error] = t('user.filter.not_an_administrator')
- redirect_to :controller => 'diary_entry', :action => 'view', :display_name => params[:id]
+ # return permitted diary entry parameters
+ def entry_params
+ params.require(:diary_entry).permit(:title, :body, :language_code, :latitude, :longitude)
+ rescue ActionController::ParameterMissing
+ ActionController::Parameters.new.permit(:title, :body, :language_code, :latitude, :longitude)
+ end
+
+ ##
+ # return permitted diary comment parameters
+ def comment_params
+ params.require(:diary_comment).permit(:body)
+ end
+
+ ##
+ # decide on a location for the diary entry map
+ def set_map_location
+ if @diary_entry.latitude && @diary_entry.longitude
+ @lon = @diary_entry.longitude
+ @lat = @diary_entry.latitude
+ @zoom = 12
+ elsif current_user.home_lat.nil? || current_user.home_lon.nil?
+ @lon = params[:lon] || -0.1
+ @lat = params[:lat] || 51.5
+ @zoom = params[:zoom] || 4
+ else
+ @lon = current_user.home_lon
+ @lat = current_user.home_lat
+ @zoom = 12