diff --git a/app/dashboard.rb b/app/dashboard.rb index 1c4ea63b..79a3943f 100644 --- a/app/dashboard.rb +++ b/app/dashboard.rb @@ -2,4 +2,24 @@ get '/dashboard' do require_login dashboard_init erb :'dashboard' +end + +def dashboard_init + if params[:dir] && params[:dir][0] != '/' + params[:dir] = '/'+params[:dir] + end + + if !File.directory?(current_site.files_path(params[:dir])) + if !File.directory?(current_site.files_path) + flash[:error] = 'Could not find your web site, please contact support.' + session[:id] = nil + redirect '/' + else + flash[:error] = 'Could not find the requested directory.' + redirect '/dashboard' + end + end + + @dir = params[:dir] + @file_list = current_site.file_list @dir end \ No newline at end of file diff --git a/app_helpers.rb b/app_helpers.rb index 23c95898..3ab58ae3 100644 --- a/app_helpers.rb +++ b/app_helpers.rb @@ -14,19 +14,6 @@ def dashboard_if_signed_in redirect '/dashboard' if signed_in? end -def dashboard_init - if params[:dir] && params[:dir][0] != '/' - params[:dir] = '/'+params[:dir] - end - - if !File.directory?(current_site.files_path(params[:dir])) - redirect '/dashboard' - end - - @dir = params[:dir] - @file_list = current_site.file_list @dir -end - def require_login_ajax halt 'You are not logged in!' unless signed_in? halt 'You are banned.' if current_site.is_banned? || parent_site.is_banned?