Skip to content

Commit

Permalink
Add admin UI
Browse files Browse the repository at this point in the history
  • Loading branch information
bmarkons committed Jul 5, 2017
1 parent 85605f6 commit 219e43c
Show file tree
Hide file tree
Showing 16 changed files with 85 additions and 7 deletions.
1 change: 1 addition & 0 deletions Gemfile
Expand Up @@ -21,6 +21,7 @@ gem 'responders'
gem 'jbuilder'
gem 'msgpack'
gem 'octokit'
gem 'bootstrap_sb_admin_base_v2'

group :development do
gem 'spring'
Expand Down
6 changes: 6 additions & 0 deletions Gemfile.lock
Expand Up @@ -53,6 +53,9 @@ GEM
bootstrap-sass (3.3.7)
autoprefixer-rails (>= 5.2.1)
sass (>= 3.3.4)
bootstrap_sb_admin_base_v2 (0.3.6)
font-awesome-rails
jquery-rails
bugsnag (5.0.1)
builder (3.2.2)
bullet (5.4.2)
Expand Down Expand Up @@ -113,6 +116,8 @@ GEM
faraday (0.12.1)
multipart-post (>= 1.2, < 3)
ffi (1.9.14)
font-awesome-rails (4.7.0.2)
railties (>= 3.2, < 5.2)
globalid (0.3.7)
activesupport (>= 4.1.0)
haml (4.0.7)
Expand Down Expand Up @@ -328,6 +333,7 @@ DEPENDENCIES
better_errors
binding_of_caller
bootstrap-sass
bootstrap_sb_admin_base_v2
bugsnag
bullet
byebug
Expand Down
5 changes: 5 additions & 0 deletions app/assets/javascripts/admin.js
@@ -0,0 +1,5 @@
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require bootstrap_sb_admin_base_v2
//= require_tree ./admin
Empty file.
7 changes: 3 additions & 4 deletions app/assets/javascripts/application.js
Expand Up @@ -20,7 +20,6 @@
//= require bootstrap/transition.js
//= require bootstrap/modal.js
//= require bootstrap/collapse.js
//= require modules/release_chart
//= require modules/chart
//= require modules/sparkline
//= require_tree .
//= require_tree ./lib
//= require_tree ./modules
//= require_tree ./application
File renamed without changes.
File renamed without changes.
File renamed without changes.
4 changes: 4 additions & 0 deletions app/assets/stylesheets/admin.scss
@@ -0,0 +1,4 @@
@import "bootstrap-sprockets";
@import "bootstrap";
@import "font-awesome";
@import "bootstrap_sb_admin_base_v2";
25 changes: 24 additions & 1 deletion app/controllers/admin_controller.rb
Expand Up @@ -2,10 +2,33 @@ class AdminController < ApplicationController
http_basic_authenticate_with(
name: 'admin',
password: Rails.application.secrets.admin_password
)
) unless Rails.env.test?

layout "admin"

before_action :set_repos
before_action :set_repo, :only => [:repo]

def toggle_admin
session['admin'] = !session['admin']
redirect_to root_path
end

def home
end

def repo
end

def run
end

private

def set_repos
@repos = Repo.all
end
def set_repo
@repo = Repo.find_by_name(params[:repo_name])
end
end
Empty file added app/views/admin/home.html.haml
Empty file.
Empty file added app/views/admin/repo.html.haml
Empty file.
13 changes: 13 additions & 0 deletions app/views/layouts/admin.html.haml
@@ -0,0 +1,13 @@
%HTML{ lang: 'en' }
%head
%title RubyBench Admin

= stylesheet_link_tag 'admin'
= javascript_include_tag 'admin'
= csrf_meta_tags

%body
#wrapper
= render 'layouts/admin/navbar'

#page-wrapper
24 changes: 24 additions & 0 deletions app/views/layouts/admin/_navbar.html.haml
@@ -0,0 +1,24 @@
%nav.navbar.navbar-default.navbar-static-top{:role => "navigation", :style => "margin-bottom: 0"}
.navbar-header
%button.navbar-toggle{"data-target" => ".navbar-collapse", "data-toggle" => "collapse", :type => "button"}
%span.sr-only Toggle navigation
%span.icon-bar
%span.icon-bar
%span.icon-bar
%a.navbar-brand{:href => '/admin'} RubyBench Admin

%ul.nav.navbar-top-links.navbar-right.pull-right
%li.dropdown
%a{:href => '/'}
%i.fa.fa-sign-out

.navbar-default.sidebar{:role => "navigation"}
.sidebar-nav.navbar-collapse
%ul#side-menu.nav.in
%li
%a{:href => "/"}
%i.fa.fa-dashboard.fa-fw
Dashboard
- @repos.each do |repo|
%li
= link_to repo.name, admin_repo_path(repo.name)
2 changes: 1 addition & 1 deletion config/initializers/assets.rb
Expand Up @@ -5,4 +5,4 @@

# Precompile additional assets.
# application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
# Rails.application.config.assets.precompile += %w( search.js )
Rails.application.config.assets.precompile += %w( admin.js admin.scss )
5 changes: 4 additions & 1 deletion config/routes.rb
Expand Up @@ -18,9 +18,12 @@
get 'hardware' => 'static_pages#hardware'
get 'contributing' => 'static_pages#contribute', as: :contribute
get 'sponsors' => 'static_pages#sponsors', as: :sponsors
get 'admin' => 'admin#toggle_admin'
get 'benchmarks' => 'organizations#index'
get ':organization_name/:repo_name/commits/overview' => 'repos#index', as: :overview
get ':organization_name/:repo_name/commits' => 'repos#commits', as: :commits
get ':organization_name/:repo_name/releases' => 'repos#releases', as: :releases

get 'admin' => 'admin#home'
get 'admin/repos/:repo_name' => 'admin#repo', as: :admin_repo
get 'admin/toggle' => 'admin#toggle_admin'
end

0 comments on commit 219e43c

Please sign in to comment.