Commit 2b683807 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Use GitLab UI when render CI

parent e3c30bf2
...@@ -10,20 +10,10 @@ ...@@ -10,20 +10,10 @@
# WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD # WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
# GO AFTER THE REQUIRES BELOW. # GO AFTER THE REQUIRES BELOW.
# #
#= require jquery
#= require bootstrap
#= require jquery_ujs
#= require turbolinks
#= require jquery.turbolinks
#= require jquery.endless-scroll
#= require pager #= require pager
#= require nprogress
#= require nprogress-turbolinks
#= require jquery_nested_form #= require jquery_nested_form
#= require_tree . #= require_tree .
# #
#
$(document).on 'click', '.edit-runner-link', (event) -> $(document).on 'click', '.edit-runner-link', (event) ->
event.preventDefault() event.preventDefault()
......
...@@ -61,3 +61,9 @@ ...@@ -61,3 +61,9 @@
* Styles for JS behaviors. * Styles for JS behaviors.
*/ */
@import "behaviors.scss"; @import "behaviors.scss";
/**
* CI specific styles:
*/
@import "ci/**/*";
/*
* This is a manifest file that'll be compiled into application.css, which will include all the files
* listed below.
*
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
* or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
*
* You're free to add application-wide styles to this file and they'll appear at the top of the
* compiled file, but it's generally better to create a new file per style scope.
*
*= require_self
*/
@import "../base/fonts";
@import "../base/variables";
@import "../base/mixins";
@import "../base/layout";
@import "../base/gl_variables";
@import "../base/gl_bootstrap";
/**
* Customized Twitter bootstrap
*/
@import '../base/gl_variables';
@import '../base/gl_bootstrap';
/**
* Font icons
*
*/
@import "font-awesome";
/**
* Generic css (forms, nav etc):
*/
@import "../generic/**/*";
/**
* Page specific styles (issues, projects etc):
*/
@import "xterm";
@import "sections/*";
/*
* NProgress
*/
$nprogress-color: #9BC;
@import 'nprogress';
@import 'nprogress-bootstrap';
body {
padding-top: 0 !important;
a {
color: #3084bb;
}
}
.ci-body {
pre.trace {
background: #111111;
color: #fff;
font-family: $monospace_font;
white-space: pre;
white-space: pre-wrap; /* css-3 */
white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
white-space: -pre-wrap; /* Opera 4-6 */
white-space: -o-pre-wrap; /* Opera 7 */
word-wrap: break-word; /* Internet Explorer 5.5+ */
overflow: auto;
overflow-y: hidden;
font-size: 12px;
.fa-refresh {
font-size: 24px;
margin-left: 20px;
}
}
.autoscroll-container {
position: fixed;
bottom: 10px;
right: 20px;
z-index: 100;
}
.scroll-controls {
position: fixed;
bottom: 10px;
left: 250px;
z-index: 100;
a {
display: block;
margin-bottom: 5px;
}
}
.page-sidebar-collapsed {
.scroll-controls {
left: 70px;
}
}
.build-widget {
padding: 10px;
background: $background-color;
margin-bottom: 20px;
border-radius: 4px;
.title {
margin-top: 0;
color: #666;
line-height: 1.5;
}
.attr-name {
color: #777;
}
}
.alert-disabled {
background: $background-color;
a {
color: #3084bb !important;
}
}
}
.ci-body {
.incorrect-syntax{
font-size: 19px;
color: red;
}
.correct-syntax{
font-size: 19px;
color: #47a447;
}
}
.ci-body {
.project-title {
margin: 0;
color: #444;
font-size: 20px;
line-height: 1.5;
}
.builds {
@extend .table;
.build {
&.alert{
margin-bottom: 6px;
}
}
}
.projects-table {
td {
vertical-align: middle !important;
}
}
.commit-info {
font-size: 14px;
.attr-name {
font-weight: 300;
color: #666;
margin-right: 5px;
}
pre.commit-message {
font-size: 14px;
background: none;
padding: 0;
margin: 0;
border: none;
margin: 20px 0;
border-bottom: 1px solid #EEE;
padding-bottom: 20px;
border-radius: 0;
}
}
.loading{
font-size: 20px;
}
}
.ci-body {
.runner-state {
padding: 6px 12px;
margin-right: 10px;
color: #FFF;
&.runner-state-shared {
background: #32b186;
}
&.runner-state-specific {
background: #3498db;
}
}
.runner-status-online {
color: green;
}
.runner-status-offline {
color: gray;
}
.runner-status-paused {
color: red;
}
.runner {
.btn {
padding: 1px 6px;
}
h4 {
font-weight: normal;
}
}
}
pre.trace {
background: #111111;
color: #fff;
font-family: $monospace_font;
white-space: pre;
white-space: pre-wrap; /* css-3 */
white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
white-space: -pre-wrap; /* Opera 4-6 */
white-space: -o-pre-wrap; /* Opera 7 */
word-wrap: break-word; /* Internet Explorer 5.5+ */
overflow: auto;
overflow-y: hidden;
font-size: 12px;
.fa-refresh {
font-size: 24px;
margin-left: 20px;
}
}
.autoscroll-container {
position: fixed;
bottom: 10px;
right: 20px;
z-index: 100;
}
.scroll-controls {
position: fixed;
bottom: 10px;
left: 20px;
z-index: 100;
a {
display: block;
margin-bottom: 5px;
}
}
.build-widget {
padding: 10px;
background: #f4f4f4;
margin-bottom: 20px;
border-radius: 4px;
.title {
margin-top: 0;
color: #666;
line-height: 1.5;
}
.attr-name {
color: #777;
}
}
.alert-disabled {
background: #EEE;
a {
color: #3084bb !important;
}
}
.incorrect-syntax{
font-size: 19px;
color: red;
}
.correct-syntax{
font-size: 19px;
color: #47a447;
}
\ No newline at end of file
.login-block {
padding: 15px;
margin: 0 auto;
text-align: center;
p {
font-size: 15px;
}
.btn-login {
padding: 18px 32px;
}
}
.navbar-static-top {
margin-bottom: 20px;
}
.navbar-ci {
background: #224466;
.navbar-brand {
color: #fff;
&:hover {
color: #fff;
}
}
.brand,
.nav > li > a {
color: #fff;
&:hover, &:focus, &:active {
background: none;
}
}
.profile-holder {
position: relative;
img {
position: absolute;
top: -8px;
width: 32px;
@include border-radius(32px);
}
span {
margin-left: 42px;
}
}
.btn-login {
padding: 7px 22px;
margin-top: 7px;
&:hover, &:active, &:focus {
background: #018865 !important;
}
}
}
.turbolink-spinner {
position: absolute;
top: 11px;
left: 50%;
color: #FFF;
font-size: 20px;
}
.project-title {
margin: 0;
color: #444;
font-size: 20px;
line-height: 1.5;
}
.builds {
@extend .table;
.build {
&.alert{
margin-bottom: 6px;
}
}
}
.projects-table {
td {
vertical-align: middle !important;
}
}
.commit-info {
font-size: 14px;
.attr-name {
font-weight: 300;
color: #666;
margin-right: 5px;
}
pre.commit-message {
font-size: 14px;
background: none;
padding: 0;
margin: 0;
border: none;
margin: 20px 0;
border-bottom: 1px solid #EEE;
padding-bottom: 20px;
border-radius: 0;
}
}
.search{
width: 300px;
.search-input{
height: 35px;
}
form{
margin-top: 0;
margin-bottom: 0;
}
}
.loading{
font-size: 20px;
}
.runner-state {
padding: 6px 12px;
margin-right: 10px;
color: #FFF;
&.runner-state-shared {
background: #32b186;
}
&.runner-state-specific {
background: #3498db;
}
}
.runner-status-online {
color: green;
}
.runner-status-offline {
color: gray;
}
.runner-status-paused {
color: red;
}
.runner {
.btn {
padding: 1px 6px;
}
h4 {
font-weight: normal;
}
}
.welcome-block {
margin-top: 50px;
color: #555;
font-size: 16px;
line-height: 1.5;
h1, h2, h3 {
font-weight: bold;
margin-bottom: 20px;
}
}
// color codes are based on http://en.wikipedia.org/wiki/File:Xterm_256color_chart.svg .ci-body {
// see also: https://gist.github.com/jasonm23/2868981 // color codes are based on http://en.wikipedia.org/wiki/File:Xterm_256color_chart.svg
// see also: https://gist.github.com/jasonm23/2868981
$black: #000000; $black: #000000;
$red: #cd0000; $red: #cd0000;
$green: #00cd00; $green: #00cd00;
$yellow: #cdcd00; $yellow: #cdcd00;
$blue: #0000ee; // according to wikipedia, this is the xterm standard $blue: #0000ee; // according to wikipedia, this is the xterm standard
//$blue: #1e90ff; // this is used by all the terminals I tried (when configured with the xterm color profile) //$blue: #1e90ff; // this is used by all the terminals I tried (when configured with the xterm color profile)
$magenta: #cd00cd; $magenta: #cd00cd;
$cyan: #00cdcd; $cyan: #00cdcd;
$white: #e5e5e5; $white: #e5e5e5;
$l-black: #7f7f7f; $l-black: #7f7f7f;
$l-red: #ff0000; $l-red: #ff0000;
$l-green: #00ff00; $l-green: #00ff00;
$l-yellow: #ffff00; $l-yellow: #ffff00;
$l-blue: #5c5cff; $l-blue: #5c5cff;
$l-magenta: #ff00ff; $l-magenta: #ff00ff;
$l-cyan: #00ffff; $l-cyan: #00ffff;
$l-white: #ffffff; $l-white: #ffffff;
.term-bold { .term-bold {
font-weight: bold; font-weight: bold;
} }
.term-italic { .term-italic {
font-style: italic; font-style: italic;
} }
.term-conceal { .term-conceal {
visibility: hidden; visibility: hidden;
} }
.term-underline { .term-underline {
text-decoration: underline; text-decoration: underline;
} }
.term-cross { .term-cross {
text-decoration: line-through; text-decoration: line-through;
} }
.term-fg-black { .term-fg-black {
color: $black; color: $black;
} }
.term-fg-red { .term-fg-red {
color: $red; color: $red;
} }
.term-fg-green { .term-fg-green {
color: $green; color: $green;
} }
.term-fg-yellow { .term-fg-yellow {
color: $yellow; color: $yellow;
} }
.term-fg-blue { .term-fg-blue {
color: $blue; color: $blue;
} }
.term-fg-magenta { .term-fg-magenta {
color: $magenta; color: $magenta;
} }
.term-fg-cyan { .term-fg-cyan {
color: $cyan; color: $cyan;
} }
.term-fg-white { .term-fg-white {
color: $white; color: $white;
} }
.term-fg-l-black { .term-fg-l-black {
color: $l-black; color: $l-black;
} }
.term-fg-l-red { .term-fg-l-red {
color: $l-red; color: $l-red;
} }
.term-fg-l-green { .term-fg-l-green {
color: $l-green; color: $l-green;
} }
.term-fg-l-yellow { .term-fg-l-yellow {
color: $l-yellow; color: $l-yellow;
} }
.term-fg-l-blue { .term-fg-l-blue {
color: $l-blue; color: $l-blue;
} }
.term-fg-l-magenta { .term-fg-l-magenta {
color: $l-magenta; color: $l-magenta;
} }
.term-fg-l-cyan { .term-fg-l-cyan {
color: $l-cyan; color: $l-cyan;
} }
.term-fg-l-white { .term-fg-l-white {
color: $l-white; color: $l-white;
} }
.term-bg-black { .term-bg-black {
background-color: $black; background-color: $black;
} }
.term-bg-red { .term-bg-red {
background-color: $red; background-color: $red;
} }
.term-bg-green { .term-bg-green {
background-color: $green; background-color: $green;
} }
.term-bg-yellow { .term-bg-yellow {
background-color: $yellow; background-color: $yellow;
} }
.term-bg-blue { .term-bg-blue {
background-color: $blue; background-color: $blue;
} }
.term-bg-magenta { .term-bg-magenta {
background-color: $magenta; background-color: $magenta;
} }
.term-bg-cyan { .term-bg-cyan {
background-color: $cyan; background-color: $cyan;
} }
.term-bg-white { .term-bg-white {
background-color: $white; background-color: $white;
} }
.term-bg-l-black { .term-bg-l-black {
background-color: $l-black; background-color: $l-black;
} }
.term-bg-l-red { .term-bg-l-red {
background-color: $l-red; background-color: $l-red;
} }
.term-bg-l-green { .term-bg-l-green {
background-color: $l-green; background-color: $l-green;
} }
.term-bg-l-yellow { .term-bg-l-yellow {
background-color: $l-yellow; background-color: $l-yellow;
} }
.term-bg-l-blue { .term-bg-l-blue {
background-color: $l-blue; background-color: $l-blue;
} }
.term-bg-l-magenta { .term-bg-l-magenta {
background-color: $l-magenta; background-color: $l-magenta;
} }
.term-bg-l-cyan { .term-bg-l-cyan {
background-color: $l-cyan; background-color: $l-cyan;
} }
.term-bg-l-white { .term-bg-l-white {
background-color: $l-white; background-color: $l-white;
} }
.xterm-fg-0 { .xterm-fg-0 {
color: #000000; color: #000000;
} }
.xterm-fg-1 { .xterm-fg-1 {
color: #800000; color: #800000;
} }
.xterm-fg-2 { .xterm-fg-2 {
color: #008000; color: #008000;
} }
.xterm-fg-3 { .xterm-fg-3 {
color: #808000; color: #808000;
} }
.xterm-fg-4 { .xterm-fg-4 {
color: #000080; color: #000080;
} }
.xterm-fg-5 { .xterm-fg-5 {
color: #800080; color: #800080;
} }
.xterm-fg-6 { .xterm-fg-6 {
color: #008080; color: #008080;
} }
.xterm-fg-7 { .xterm-fg-7 {
color: #c0c0c0; color: #c0c0c0;
} }
.xterm-fg-8 { .xterm-fg-8 {
color: #808080; color: #808080;
} }
.xterm-fg-9 { .xterm-fg-9 {
color: #ff0000; color: #ff0000;
} }
.xterm-fg-10 { .xterm-fg-10 {
color: #00ff00; color: #00ff00;
} }
.xterm-fg-11 { .xterm-fg-11 {
color: #ffff00; color: #ffff00;
} }
.xterm-fg-12 { .xterm-fg-12 {
color: #0000ff; color: #0000ff;
} }
.xterm-fg-13 { .xterm-fg-13 {
color: #ff00ff; color: #ff00ff;
} }
.xterm-fg-14 { .xterm-fg-14 {
color: #00ffff; color: #00ffff;
} }
.xterm-fg-15 { .xterm-fg-15 {
color: #ffffff; color: #ffffff;
} }
.xterm-fg-16 { .xterm-fg-16 {
color: #000000; color: #000000;
} }
.xterm-fg-17 { .xterm-fg-17 {
color: #00005f; color: #00005f;
} }
.xterm-fg-18 { .xterm-fg-18 {
color: #000087; color: #000087;
} }
.xterm-fg-19 { .xterm-fg-19 {
color: #0000af; color: #0000af;
} }
.xterm-fg-20 { .xterm-fg-20 {
color: #0000d7; color: #0000d7;
} }
.xterm-fg-21 { .xterm-fg-21 {
color: #0000ff; color: #0000ff;
} }
.xterm-fg-22 { .xterm-fg-22 {
color: #005f00; color: #005f00;
} }
.xterm-fg-23 { .xterm-fg-23 {
color: #005f5f; color: #005f5f;
} }
.xterm-fg-24 { .xterm-fg-24 {
color: #005f87; color: #005f87;
} }
.xterm-fg-25 { .xterm-fg-25 {
color: #005faf; color: #005faf;
} }
.xterm-fg-26 { .xterm-fg-26 {
color: #005fd7; color: #005fd7;
} }
.xterm-fg-27 { .xterm-fg-27 {
color: #005fff; color: #005fff;
} }
.xterm-fg-28 { .xterm-fg-28 {
color: #008700; color: #008700;
} }
.xterm-fg-29 { .xterm-fg-29 {
color: #00875f; color: #00875f;
} }
.xterm-fg-30 { .xterm-fg-30 {
color: #008787; color: #008787;
} }
.xterm-fg-31 { .xterm-fg-31 {
color: #0087af; color: #0087af;
} }
.xterm-fg-32 { .xterm-fg-32 {
color: #0087d7; color: #0087d7;
} }
.xterm-fg-33 { .xterm-fg-33 {
color: #0087ff; color: #0087ff;
} }
.xterm-fg-34 { .xterm-fg-34 {
color: #00af00; color: #00af00;
} }
.xterm-fg-35 { .xterm-fg-35 {
color: #00af5f; color: #00af5f;
} }
.xterm-fg-36 { .xterm-fg-36 {
color: #00af87; color: #00af87;
} }
.xterm-fg-37 { .xterm-fg-37 {
color: #00afaf; color: #00afaf;
} }
.xterm-fg-38 { .xterm-fg-38 {
color: #00afd7; color: #00afd7;
} }
.xterm-fg-39 { .xterm-fg-39 {
color: #00afff; color: #00afff;
} }
.xterm-fg-40 { .xterm-fg-40 {
color: #00d700; color: #00d700;
} }
.xterm-fg-41 { .xterm-fg-41 {
color: #00d75f; color: #00d75f;
} }
.xterm-fg-42 { .xterm-fg-42 {
color: #00d787; color: #00d787;
} }
.xterm-fg-43 { .xterm-fg-43 {
color: #00d7af; color: #00d7af;
} }
.xterm-fg-44 { .xterm-fg-44 {
color: #00d7d7; color: #00d7d7;
} }
.xterm-fg-45 { .xterm-fg-45 {
color: #00d7ff; color: #00d7ff;
} }
.xterm-fg-46 { .xterm-fg-46 {
color: #00ff00; color: #00ff00;
} }
.xterm-fg-47 { .xterm-fg-47 {
color: #00ff5f; color: #00ff5f;
} }
.xterm-fg-48 { .xterm-fg-48 {
color: #00ff87; color: #00ff87;
} }
.xterm-fg-49 { .xterm-fg-49 {
color: #00ffaf; color: #00ffaf;
} }
.xterm-fg-50 { .xterm-fg-50 {
color: #00ffd7; color: #00ffd7;
} }
.xterm-fg-51 { .xterm-fg-51 {
color: #00ffff; color: #00ffff;
} }
.xterm-fg-52 { .xterm-fg-52 {
color: #5f0000; color: #5f0000;
} }
.xterm-fg-53 { .xterm-fg-53 {
color: #5f005f; color: #5f005f;
} }
.xterm-fg-54 { .xterm-fg-54 {
color: #5f0087; color: #5f0087;
} }
.xterm-fg-55 { .xterm-fg-55 {
color: #5f00af; color: #5f00af;
} }
.xterm-fg-56 { .xterm-fg-56 {
color: #5f00d7; color: #5f00d7;
} }
.xterm-fg-57 { .xterm-fg-57 {
color: #5f00ff; color: #5f00ff;
} }
.xterm-fg-58 { .xterm-fg-58 {
color: #5f5f00; color: #5f5f00;
} }
.xterm-fg-59 { .xterm-fg-59 {
color: #5f5f5f; color: #5f5f5f;
} }
.xterm-fg-60 { .xterm-fg-60 {
color: #5f5f87; color: #5f5f87;
} }
.xterm-fg-61 { .xterm-fg-61 {
color: #5f5faf; color: #5f5faf;
} }
.xterm-fg-62 { .xterm-fg-62 {
color: #5f5fd7; color: #5f5fd7;
} }
.xterm-fg-63 { .xterm-fg-63 {
color: #5f5fff; color: #5f5fff;
} }
.xterm-fg-64 { .xterm-fg-64 {
color: #5f8700; color: #5f8700;
} }
.xterm-fg-65 { .xterm-fg-65 {
color: #5f875f; color: #5f875f;
} }
.xterm-fg-66 { .xterm-fg-66 {
color: #5f8787; color: #5f8787;
} }
.xterm-fg-67 { .xterm-fg-67 {
color: #5f87af; color: #5f87af;
} }
.xterm-fg-68 { .xterm-fg-68 {
color: #5f87d7; color: #5f87d7;
} }
.xterm-fg-69 { .xterm-fg-69 {
color: #5f87ff; color: #5f87ff;
} }
.xterm-fg-70 { .xterm-fg-70 {
color: #5faf00; color: #5faf00;
} }
.xterm-fg-71 { .xterm-fg-71 {
color: #5faf5f; color: #5faf5f;
} }
.xterm-fg-72 { .xterm-fg-72 {
color: #5faf87; color: #5faf87;
} }
.xterm-fg-73 { .xterm-fg-73 {
color: #5fafaf; color: #5fafaf;
} }
.xterm-fg-74 { .xterm-fg-74 {
color: #5fafd7; color: #5fafd7;
} }
.xterm-fg-75 { .xterm-fg-75 {
color: #5fafff; color: #5fafff;
} }
.xterm-fg-76 { .xterm-fg-76 {
color: #5fd700; color: #5fd700;
} }
.xterm-fg-77 { .xterm-fg-77 {
color: #5fd75f; color: #5fd75f;
} }
.xterm-fg-78 { .xterm-fg-78 {
color: #5fd787; color: #5fd787;
} }
.xterm-fg-79 { .xterm-fg-79 {
color: #5fd7af; color: #5fd7af;
} }
.xterm-fg-80 { .xterm-fg-80 {
color: #5fd7d7; color: #5fd7d7;
} }
.xterm-fg-81 { .xterm-fg-81 {
color: #5fd7ff; color: #5fd7ff;
} }
.xterm-fg-82 { .xterm-fg-82 {
color: #5fff00; color: #5fff00;
} }
.xterm-fg-83 { .xterm-fg-83 {
color: #5fff5f; color: #5fff5f;
} }
.xterm-fg-84 { .xterm-fg-84 {
color: #5fff87; color: #5fff87;
} }
.xterm-fg-85 { .xterm-fg-85 {
color: #5fffaf; color: #5fffaf;
} }
.xterm-fg-86 { .xterm-fg-86 {
color: #5fffd7; color: #5fffd7;
} }
.xterm-fg-87 { .xterm-fg-87 {
color: #5fffff; color: #5fffff;
} }
.xterm-fg-88 { .xterm-fg-88 {
color: #870000; color: #870000;
} }
.xterm-fg-89 { .xterm-fg-89 {
color: #87005f; color: #87005f;
} }
.xterm-fg-90 { .xterm-fg-90 {
color: #870087; color: #870087;
} }
.xterm-fg-91 { .xterm-fg-91 {
color: #8700af; color: #8700af;
} }
.xterm-fg-92 { .xterm-fg-92 {
color: #8700d7; color: #8700d7;
} }
.xterm-fg-93 { .xterm-fg-93 {
color: #8700ff; color: #8700ff;
} }
.xterm-fg-94 { .xterm-fg-94 {
color: #875f00; color: #875f00;
} }
.xterm-fg-95 { .xterm-fg-95 {
color: #875f5f; color: #875f5f;
} }
.xterm-fg-96 { .xterm-fg-96 {
color: #875f87; color: #875f87;
} }
.xterm-fg-97 { .xterm-fg-97 {
color: #875faf; color: #875faf;
} }
.xterm-fg-98 { .xterm-fg-98 {
color: #875fd7; color: #875fd7;
} }
.xterm-fg-99 { .xterm-fg-99 {
color: #875fff; color: #875fff;
} }
.xterm-fg-100 { .xterm-fg-100 {
color: #878700; color: #878700;
} }
.xterm-fg-101 { .xterm-fg-101 {
color: #87875f; color: #87875f;
} }
.xterm-fg-102 { .xterm-fg-102 {
color: #878787; color: #878787;
} }
.xterm-fg-103 { .xterm-fg-103 {
color: #8787af; color: #8787af;
} }
.xterm-fg-104 { .xterm-fg-104 {
color: #8787d7; color: #8787d7;
} }
.xterm-fg-105 { .xterm-fg-105 {
color: #8787ff; color: #8787ff;
} }
.xterm-fg-106 { .xterm-fg-106 {
color: #87af00; color: #87af00;
} }
.xterm-fg-107 { .xterm-fg-107 {
color: #87af5f; color: #87af5f;
} }
.xterm-fg-108 { .xterm-fg-108 {
color: #87af87; color: #87af87;
} }
.xterm-fg-109 { .xterm-fg-109 {
color: #87afaf; color: #87afaf;
} }
.xterm-fg-110 { .xterm-fg-110 {
color: #87afd7; color: #87afd7;
} }
.xterm-fg-111 { .xterm-fg-111 {
color: #87afff; color: #87afff;
} }
.xterm-fg-112 { .xterm-fg-112 {
color: #87d700; color: #87d700;
} }
.xterm-fg-113 { .xterm-fg-113 {
color: #87d75f; color: #87d75f;
} }
.xterm-fg-114 { .xterm-fg-114 {
color: #87d787; color: #87d787;
} }
.xterm-fg-115 { .xterm-fg-115 {
color: #87d7af; color: #87d7af;
} }
.xterm-fg-116 { .xterm-fg-116 {
color: #87d7d7; color: #87d7d7;
} }
.xterm-fg-117 { .xterm-fg-117 {
color: #87d7ff; color: #87d7ff;
} }
.xterm-fg-118 { .xterm-fg-118 {
color: #87ff00; color: #87ff00;
} }
.xterm-fg-119 { .xterm-fg-119 {
color: #87ff5f; color: #87ff5f;
} }
.xterm-fg-120 { .xterm-fg-120 {
color: #87ff87; color: #87ff87;
} }
.xterm-fg-121 { .xterm-fg-121 {
color: #87ffaf; color: #87ffaf;
} }
.xterm-fg-122 { .xterm-fg-122 {
color: #87ffd7; color: #87ffd7;
} }
.xterm-fg-123 { .xterm-fg-123 {
color: #87ffff; color: #87ffff;
} }
.xterm-fg-124 { .xterm-fg-124 {
color: #af0000; color: #af0000;
} }
.xterm-fg-125 { .xterm-fg-125 {
color: #af005f; color: #af005f;
} }
.xterm-fg-126 { .xterm-fg-126 {
color: #af0087; color: #af0087;
} }
.xterm-fg-127 { .xterm-fg-127 {
color: #af00af; color: #af00af;
} }
.xterm-fg-128 { .xterm-fg-128 {
color: #af00d7; color: #af00d7;
} }
.xterm-fg-129 { .xterm-fg-129 {
color: #af00ff; color: #af00ff;
} }
.xterm-fg-130 { .xterm-fg-130 {
color: #af5f00; color: #af5f00;
} }
.xterm-fg-131 { .xterm-fg-131 {
color: #af5f5f; color: #af5f5f;
} }
.xterm-fg-132 { .xterm-fg-132 {
color: #af5f87; color: #af5f87;
} }
.xterm-fg-133 { .xterm-fg-133 {
color: #af5faf; color: #af5faf;
} }
.xterm-fg-134 { .xterm-fg-134 {
color: #af5fd7; color: #af5fd7;
} }
.xterm-fg-135 { .xterm-fg-135 {
color: #af5fff; color: #af5fff;
} }
.xterm-fg-136 { .xterm-fg-136 {
color: #af8700; color: #af8700;
} }
.xterm-fg-137 { .xterm-fg-137 {
color: #af875f; color: #af875f;
} }
.xterm-fg-138 { .xterm-fg-138 {
color: #af8787; color: #af8787;
} }
.xterm-fg-139 { .xterm-fg-139 {
color: #af87af; color: #af87af;
} }
.xterm-fg-140 { .xterm-fg-140 {
color: #af87d7; color: #af87d7;
} }
.xterm-fg-141 { .xterm-fg-141 {
color: #af87ff; color: #af87ff;
} }
.xterm-fg-142 { .xterm-fg-142 {
color: #afaf00; color: #afaf00;
} }
.xterm-fg-143 { .xterm-fg-143 {
color: #afaf5f; color: #afaf5f;
} }
.xterm-fg-144 { .xterm-fg-144 {
color: #afaf87; color: #afaf87;
} }
.xterm-fg-145 { .xterm-fg-145 {
color: #afafaf; color: #afafaf;
} }
.xterm-fg-146 { .xterm-fg-146 {
color: #afafd7; color: #afafd7;
} }
.xterm-fg-147 { .xterm-fg-147 {
color: #afafff; color: #afafff;
} }
.xterm-fg-148 { .xterm-fg-148 {
color: #afd700; color: #afd700;
} }
.xterm-fg-149 { .xterm-fg-149 {
color: #afd75f; color: #afd75f;
} }
.xterm-fg-150 { .xterm-fg-150 {
color: #afd787; color: #afd787;
} }
.xterm-fg-151 { .xterm-fg-151 {
color: #afd7af; color: #afd7af;
} }
.xterm-fg-152 { .xterm-fg-152 {
color: #afd7d7; color: #afd7d7;
} }
.xterm-fg-153 { .xterm-fg-153 {
color: #afd7ff; color: #afd7ff;
} }
.xterm-fg-154 { .xterm-fg-154 {
color: #afff00; color: #afff00;
} }
.xterm-fg-155 { .xterm-fg-155 {
color: #afff5f; color: #afff5f;
} }
.xterm-fg-156 { .xterm-fg-156 {
color: #afff87; color: #afff87;
} }
.xterm-fg-157 { .xterm-fg-157 {
color: #afffaf; color: #afffaf;
} }
.xterm-fg-158 { .xterm-fg-158 {
color: #afffd7; color: #afffd7;
} }
.xterm-fg-159 { .xterm-fg-159 {
color: #afffff; color: #afffff;
} }
.xterm-fg-160 { .xterm-fg-160 {
color: #d70000; color: #d70000;
} }
.xterm-fg-161 { .xterm-fg-161 {
color: #d7005f; color: #d7005f;
} }
.xterm-fg-162 { .xterm-fg-162 {
color: #d70087; color: #d70087;
} }
.xterm-fg-163 { .xterm-fg-163 {
color: #d700af; color: #d700af;
} }
.xterm-fg-164 { .xterm-fg-164 {
color: #d700d7; color: #d700d7;
} }
.xterm-fg-165 { .xterm-fg-165 {
color: #d700ff; color: #d700ff;
} }
.xterm-fg-166 { .xterm-fg-166 {
color: #d75f00; color: #d75f00;
} }
.xterm-fg-167 { .xterm-fg-167 {
color: #d75f5f; color: #d75f5f;
} }
.xterm-fg-168 { .xterm-fg-168 {
color: #d75f87; color: #d75f87;
} }
.xterm-fg-169 { .xterm-fg-169 {
color: #d75faf; color: #d75faf;
} }
.xterm-fg-170 { .xterm-fg-170 {
color: #d75fd7; color: #d75fd7;
} }
.xterm-fg-171 { .xterm-fg-171 {
color: #d75fff; color: #d75fff;
} }
.xterm-fg-172 { .xterm-fg-172 {
color: #d78700; color: #d78700;
} }
.xterm-fg-173 { .xterm-fg-173 {
color: #d7875f; color: #d7875f;
} }
.xterm-fg-174 { .xterm-fg-174 {
color: #d78787; color: #d78787;
} }
.xterm-fg-175 { .xterm-fg-175 {
color: #d787af; color: #d787af;
} }
.xterm-fg-176 { .xterm-fg-176 {
color: #d787d7; color: #d787d7;
} }
.xterm-fg-177 { .xterm-fg-177 {
color: #d787ff; color: #d787ff;
} }
.xterm-fg-178 { .xterm-fg-178 {
color: #d7af00; color: #d7af00;
} }
.xterm-fg-179 { .xterm-fg-179 {
color: #d7af5f; color: #d7af5f;
} }
.xterm-fg-180 { .xterm-fg-180 {
color: #d7af87; color: #d7af87;
} }
.xterm-fg-181 { .xterm-fg-181 {
color: #d7afaf; color: #d7afaf;
} }
.xterm-fg-182 { .xterm-fg-182 {
color: #d7afd7; color: #d7afd7;
} }
.xterm-fg-183 { .xterm-fg-183 {
color: #d7afff; color: #d7afff;
} }
.xterm-fg-184 { .xterm-fg-184 {
color: #d7d700; color: #d7d700;
} }
.xterm-fg-185 { .xterm-fg-185 {
color: #d7d75f; color: #d7d75f;
} }
.xterm-fg-186 { .xterm-fg-186 {
color: #d7d787; color: #d7d787;
} }
.xterm-fg-187 { .xterm-fg-187 {
color: #d7d7af; color: #d7d7af;
} }
.xterm-fg-188 { .xterm-fg-188 {
color: #d7d7d7; color: #d7d7d7;
} }
.xterm-fg-189 { .xterm-fg-189 {
color: #d7d7ff; color: #d7d7ff;
} }
.xterm-fg-190 { .xterm-fg-190 {
color: #d7ff00; color: #d7ff00;
} }
.xterm-fg-191 { .xterm-fg-191 {
color: #d7ff5f; color: #d7ff5f;
} }
.xterm-fg-192 { .xterm-fg-192 {
color: #d7ff87; color: #d7ff87;
} }
.xterm-fg-193 { .xterm-fg-193 {
color: #d7ffaf; color: #d7ffaf;
} }
.xterm-fg-194 { .xterm-fg-194 {
color: #d7ffd7; color: #d7ffd7;
} }
.xterm-fg-195 { .xterm-fg-195 {
color: #d7ffff; color: #d7ffff;
} }
.xterm-fg-196 { .xterm-fg-196 {
color: #ff0000; color: #ff0000;
} }
.xterm-fg-197 { .xterm-fg-197 {
color: #ff005f; color: #ff005f;
} }
.xterm-fg-198 { .xterm-fg-198 {
color: #ff0087; color: #ff0087;
} }
.xterm-fg-199 { .xterm-fg-199 {
color: #ff00af; color: #ff00af;
} }
.xterm-fg-200 { .xterm-fg-200 {
color: #ff00d7; color: #ff00d7;
} }
.xterm-fg-201 { .xterm-fg-201 {
color: #ff00ff; color: #ff00ff;
} }
.xterm-fg-202 { .xterm-fg-202 {
color: #ff5f00; color: #ff5f00;
} }
.xterm-fg-203 { .xterm-fg-203 {
color: #ff5f5f; color: #ff5f5f;
} }
.xterm-fg-204 { .xterm-fg-204 {
color: #ff5f87; color: #ff5f87;
} }
.xterm-fg-205 { .xterm-fg-205 {
color: #ff5faf; color: #ff5faf;
} }
.xterm-fg-206 { .xterm-fg-206 {
color: #ff5fd7; color: #ff5fd7;
} }
.xterm-fg-207 { .xterm-fg-207 {
color: #ff5fff; color: #ff5fff;
} }
.xterm-fg-208 { .xterm-fg-208 {
color: #ff8700; color: #ff8700;
} }
.xterm-fg-209 { .xterm-fg-209 {
color: #ff875f; color: #ff875f;
} }
.xterm-fg-210 { .xterm-fg-210 {
color: #ff8787; color: #ff8787;
} }
.xterm-fg-211 { .xterm-fg-211 {
color: #ff87af; color: #ff87af;
} }
.xterm-fg-212 { .xterm-fg-212 {
color: #ff87d7; color: #ff87d7;
} }
.xterm-fg-213 { .xterm-fg-213 {
color: #ff87ff; color: #ff87ff;
} }
.xterm-fg-214 { .xterm-fg-214 {
color: #ffaf00; color: #ffaf00;
} }
.xterm-fg-215 { .xterm-fg-215 {
color: #ffaf5f; color: #ffaf5f;
} }
.xterm-fg-216 { .xterm-fg-216 {
color: #ffaf87; color: #ffaf87;
} }
.xterm-fg-217 { .xterm-fg-217 {
color: #ffafaf; color: #ffafaf;
} }
.xterm-fg-218 { .xterm-fg-218 {
color: #ffafd7; color: #ffafd7;
} }
.xterm-fg-219 { .xterm-fg-219 {
color: #ffafff; color: #ffafff;
} }
.xterm-fg-220 { .xterm-fg-220 {
color: #ffd700; color: #ffd700;
} }
.xterm-fg-221 { .xterm-fg-221 {
color: #ffd75f; color: #ffd75f;
} }
.xterm-fg-222 { .xterm-fg-222 {
color: #ffd787; color: #ffd787;
} }
.xterm-fg-223 { .xterm-fg-223 {
color: #ffd7af; color: #ffd7af;
} }
.xterm-fg-224 { .xterm-fg-224 {
color: #ffd7d7; color: #ffd7d7;
} }
.xterm-fg-225 { .xterm-fg-225 {
color: #ffd7ff; color: #ffd7ff;
} }
.xterm-fg-226 { .xterm-fg-226 {
color: #ffff00; color: #ffff00;
} }
.xterm-fg-227 { .xterm-fg-227 {
color: #ffff5f; color: #ffff5f;
} }
.xterm-fg-228 { .xterm-fg-228 {
color: #ffff87; color: #ffff87;
} }
.xterm-fg-229 { .xterm-fg-229 {
color: #ffffaf; color: #ffffaf;
} }
.xterm-fg-230 { .xterm-fg-230 {
color: #ffffd7; color: #ffffd7;
} }
.xterm-fg-231 { .xterm-fg-231 {
color: #ffffff; color: #ffffff;
} }
.xterm-fg-232 { .xterm-fg-232 {
color: #080808; color: #080808;
} }
.xterm-fg-233 { .xterm-fg-233 {
color: #121212; color: #121212;
} }
.xterm-fg-234 { .xterm-fg-234 {
color: #1c1c1c; color: #1c1c1c;
} }
.xterm-fg-235 { .xterm-fg-235 {
color: #262626; color: #262626;
} }
.xterm-fg-236 { .xterm-fg-236 {
color: #303030; color: #303030;
} }
.xterm-fg-237 { .xterm-fg-237 {
color: #3a3a3a; color: #3a3a3a;
} }
.xterm-fg-238 { .xterm-fg-238 {
color: #444444; color: #444444;
} }
.xterm-fg-239 { .xterm-fg-239 {
color: #4e4e4e; color: #4e4e4e;
} }
.xterm-fg-240 { .xterm-fg-240 {
color: #585858; color: #585858;
} }
.xterm-fg-241 { .xterm-fg-241 {
color: #626262; color: #626262;
} }
.xterm-fg-242 { .xterm-fg-242 {
color: #6c6c6c; color: #6c6c6c;
} }
.xterm-fg-243 { .xterm-fg-243 {
color: #767676; color: #767676;
} }
.xterm-fg-244 { .xterm-fg-244 {
color: #808080; color: #808080;
} }
.xterm-fg-245 { .xterm-fg-245 {
color: #8a8a8a; color: #8a8a8a;
} }
.xterm-fg-246 { .xterm-fg-246 {
color: #949494; color: #949494;
} }
.xterm-fg-247 { .xterm-fg-247 {
color: #9e9e9e; color: #9e9e9e;
} }
.xterm-fg-248 { .xterm-fg-248 {
color: #a8a8a8; color: #a8a8a8;
} }
.xterm-fg-249 { .xterm-fg-249 {
color: #b2b2b2; color: #b2b2b2;
} }
.xterm-fg-250 { .xterm-fg-250 {
color: #bcbcbc; color: #bcbcbc;
} }
.xterm-fg-251 { .xterm-fg-251 {
color: #c6c6c6; color: #c6c6c6;
} }
.xterm-fg-252 { .xterm-fg-252 {
color: #d0d0d0; color: #d0d0d0;
} }
.xterm-fg-253 { .xterm-fg-253 {
color: #dadada; color: #dadada;
} }
.xterm-fg-254 { .xterm-fg-254 {
color: #e4e4e4; color: #e4e4e4;
} }
.xterm-fg-255 { .xterm-fg-255 {
color: #eeeeee; color: #eeeeee;
}
} }
...@@ -7,6 +7,7 @@ module Ci ...@@ -7,6 +7,7 @@ module Ci
before_filter :authorize_manage_project!, except: [:status, :show, :retry, :cancel] before_filter :authorize_manage_project!, except: [:status, :show, :retry, :cancel]
before_filter :authorize_manage_builds!, only: [:retry, :cancel] before_filter :authorize_manage_builds!, only: [:retry, :cancel]
before_filter :build, except: [:show] before_filter :build, except: [:show]
layout 'ci/project'
def show def show
if params[:id] =~ /\A\d+\Z/ if params[:id] =~ /\A\d+\Z/
......
...@@ -6,6 +6,7 @@ module Ci ...@@ -6,6 +6,7 @@ module Ci
before_filter :authorize_access_project!, except: [:status, :show, :cancel] before_filter :authorize_access_project!, except: [:status, :show, :cancel]
before_filter :authorize_manage_builds!, only: [:cancel] before_filter :authorize_manage_builds!, only: [:cancel]
before_filter :commit, only: :show before_filter :commit, only: :show
layout 'ci/project'
def show def show
@builds = @commit.builds @builds = @commit.builds
......
%h4.page-title %h4.page-title
= link_to ci_project_path(@project) = link_to @project.name, ci_project_path(@project)
@ @
= @commit.short_sha = @commit.short_sha
......
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
%i.fa.fa-time %i.fa.fa-time
#{time_interval_in_words @commit.duration} #{time_interval_in_words @commit.duration}
%table.builds %table.table.builds
%thead %thead
%tr %tr
%th Status %th Status
...@@ -81,7 +81,7 @@ ...@@ -81,7 +81,7 @@
%h3 %h3
Retried builds Retried builds
%table.builds %table.table.builds
%thead %thead
%tr %tr
%th Status %th Status
......
...@@ -16,7 +16,8 @@ ...@@ -16,7 +16,8 @@
%li{class: 'active'} %li{class: 'active'}
= link_to @ref, ci_project_path(@project, ref: @ref) = link_to @ref, ci_project_path(@project, ref: @ref)
%li.pull-right
= link_to 'View on GitLab', @project.gitlab_url, no_turbolink.merge( class: 'btn btn-sm' )
- if @ref - if @ref
%p %p
...@@ -37,7 +38,7 @@ ...@@ -37,7 +38,7 @@
%table.builds %table.table.builds
%thead %thead
%tr %tr
%th Status %th Status
......
%head
%meta{charset: "utf-8"}
%meta{content: "GitLab Continuous Integration", name: "description"}
%title GitLab CI
= stylesheet_link_tag "ci/application", :media => "all"
= javascript_include_tag "ci/application"
= csrf_meta_tags
= favicon_link_tag 'ci/favicon.ico'
:erb
<meta name="viewport" content="width=device-width, initial-scale=1.0">
.navbar.navbar-static-top.navbar-ci
.container
.navbar-header
%button.navbar-toggle{"data-target" => ".navbar-collapse", "data-toggle" => "collapse", type: "button"}
%span.sr-only Toggle navigation
%i.fa.fa-reorder
= link_to 'GitLab CI', ci_root_path, class: "navbar-brand"
.collapse.navbar-collapse
%ul.nav.navbar-nav
- if current_user && current_user.is_admin?
%li
= link_to ci_admin_projects_path do
Admin
%li
= link_to 'Help', ci_help_path
%ul.nav.navbar-nav.pull-right
- if current_user
%li
= link_to "/profile", no_turbolink do
.profile-holder
= image_tag user_avatar_url(current_user, 64), class: 'avatar s32', alt: ''
%span= current_user.name
%li
= link_to destroy_user_session_path, class: "logout", method: :delete do
%i.fa.fa-signout
Logout
- else
%li
= link_to "Login with GitLab", auth_ci_user_sessions_path, no_turbolink.merge(class: 'btn btn-success btn-login')
%ul.nav.nav-pills.nav-stacked.admin-menu %ul.nav.nav-sidebar
= nav_link do
= link_to ci_root_path, title: 'Back to dashboard', data: {placement: 'right'}, class: 'back-link' do
= icon('caret-square-o-left fw')
%span
Back to Dashboard
%li.separate-item
= nav_link path: 'projects#index' do = nav_link path: 'projects#index' do
= link_to ci_admin_projects_path do = link_to ci_admin_projects_path do
%i.fa.fa-list-alt %i.fa.fa-list-alt
...@@ -19,8 +26,6 @@ ...@@ -19,8 +26,6 @@
Builds Builds
%small.pull-right %small.pull-right
= Ci::Build.count(:all) = Ci::Build.count(:all)
%li
%hr
= nav_link(controller: :application_settings, html_options: { class: 'separate-item'}) do = nav_link(controller: :application_settings, html_options: { class: 'separate-item'}) do
= link_to ci_admin_application_settings_path do = link_to ci_admin_application_settings_path do
%i.fa.fa-cogs %i.fa.fa-cogs
......
%ul.nav.nav-sidebar
= nav_link do
= link_to root_path, title: 'Back to dashboard', data: {placement: 'right'}, class: 'back-link' do
= icon('caret-square-o-left fw')
%span
Back to GitLab
%li.separate-item
= nav_link path: 'projects#show' do
= link_to ci_root_path do
%i.fa.fa-home
%span
Projects
- if current_user && current_user.is_admin?
%li
= link_to ci_admin_projects_path do
%i.fa.fa-cogs
%span
Admin
%li
= link_to ci_help_path do
%i.fa.fa-info
%span
Help
%ul.nav.nav-pills.nav-stacked.project-menu %ul.nav.nav-sidebar
= nav_link path: 'projects#show' do = nav_link path: 'projects#show' do
= link_to ci_project_path(@project) do = link_to ci_project_path(@project) do
%i.fa.fa-list-alt %i.fa.fa-list-alt
Commits %span
%small.pull-right= @project.commits.count Commits
%small.pull-right= @project.commits.count
= nav_link path: 'charts#show' do = nav_link path: 'charts#show' do
= link_to ci_project_charts_path(@project) do = link_to ci_project_charts_path(@project) do
%i.fa.fa-bar-chart %i.fa.fa-bar-chart
Charts %span
Charts
= nav_link path: ['runners#index', 'runners#show'] do = nav_link path: ['runners#index', 'runners#show'] do
= link_to ci_project_runners_path(@project) do = link_to ci_project_runners_path(@project) do
%i.fa.fa-cog %i.fa.fa-cog
Runners %span
Runners
= nav_link path: 'variables#show' do = nav_link path: 'variables#show' do
= link_to ci_project_variables_path(@project) do = link_to ci_project_variables_path(@project) do
%i.fa.fa-code %i.fa.fa-code
Variables %span
Variables
= nav_link path: 'web_hooks#index' do = nav_link path: 'web_hooks#index' do
= link_to ci_project_web_hooks_path(@project) do = link_to ci_project_web_hooks_path(@project) do
%i.fa.fa-link %i.fa.fa-link
Web Hooks %span
Web Hooks
= nav_link path: 'triggers#index' do = nav_link path: 'triggers#index' do
= link_to ci_project_triggers_path(@project) do = link_to ci_project_triggers_path(@project) do
%i.fa.fa-retweet %i.fa.fa-retweet
Triggers %span
Triggers
= nav_link path: 'services#index' do = nav_link path: 'services#index' do
= link_to ci_project_services_path(@project) do = link_to ci_project_services_path(@project) do
%i.fa.fa-share %i.fa.fa-share
Services %span
Services
= nav_link path: 'events#index' do = nav_link path: 'events#index' do
= link_to ci_project_events_path(@project) do = link_to ci_project_events_path(@project) do
%i.fa.fa-book %i.fa.fa-book
Events %span
%li Events
%hr %li.separate-item
= nav_link path: 'projects#edit' do = nav_link path: 'projects#edit' do
= link_to edit_ci_project_path(@project) do = link_to edit_ci_project_path(@project) do
%i.fa.fa-cogs %i.fa.fa-cogs
Settings %span
Settings
.page-with-sidebar{ class: nav_sidebar_class }
= render "layouts/broadcast"
.sidebar-wrapper.nicescroll
.header-logo
= link_to ci_root_path, class: 'home', title: 'Dashboard', id: 'js-shortcuts-home', data: {toggle: 'tooltip', placement: 'bottom'} do
= brand_header_logo
.gitlab-text-container
%h3 GitLab CI
- if defined?(sidebar) && sidebar
= render "layouts/ci/#{sidebar}"
- elsif current_user
= render 'layouts/nav/dashboard'
.collapse-nav
= render partial: 'layouts/collapse_button'
- if current_user
= link_to current_user, class: 'sidebar-user' do
= image_tag avatar_icon(current_user.email, 60), alt: 'User activity', class: 'avatar avatar s36'
.username
= current_user.username
.content-wrapper
= render "layouts/flash"
= render 'layouts/ci/info'
%div{ class: container_class }
.content
.clearfix
= yield
!!! 5 !!! 5
%html{ lang: "en"} %html{ lang: "en"}
= render 'layouts/ci/head' = render 'layouts/head'
%body{ :'data-page' => body_data_page } %body{class: "ci-body #{user_application_theme}", 'data-page' => body_data_page}
= render 'layouts/ci/nav' - header_title = "Admin area"
= render 'layouts/ci/info' - if current_user
- if content_for?(:title) = render "layouts/header/default", title: header_title
.container.container-title - else
= yield(:title) = render "layouts/header/public", title: header_title
%hr
.container.container-body = render 'layouts/ci/page', sidebar: 'nav_admin'
.content
.row
.col-md-2.append-bottom-20
= render 'layouts/ci/nav_admin'
.col-md-10
= yield
!!! 5 !!! 5
%html{ lang: "en"} %html{ lang: "en"}
= render 'layouts/ci/head' = render 'layouts/head'
%body{ :'data-page' => body_data_page } %body{class: "ci-body #{user_application_theme}", 'data-page' => body_data_page}
= render 'layouts/ci/nav' - header_title = "Projects"
= render 'layouts/ci/info' - if current_user
- if content_for?(:title) = render "layouts/header/default", title: header_title
.container.container-title - else
= yield(:title) = render "layouts/header/public", title: header_title
%hr
.container.container-body = render 'layouts/ci/page', sidebar: 'nav_dashboard'
.content
= yield
!!! 5
%html{ lang: "en"}
= render 'layouts/ci/head'
%body{ :'data-page' => body_data_page }
= render 'layouts/ci/info'
- if content_for?(:title)
.container.container-title
= yield(:title)
%hr
.container.container-body
.content
= yield
!!! 5 !!! 5
%html{ lang: "en"} %html{ lang: "en"}
= render 'layouts/ci/head' = render 'layouts/head'
%body{ :'data-page' => body_data_page } %body{class: "ci-body #{user_application_theme}", 'data-page' => body_data_page}
= render 'layouts/ci/nav' - header_title = @project.name
= render 'layouts/ci/info' - if current_user
.container = render "layouts/header/default", title: header_title
%h3.project-title - else
= @project.name = render "layouts/header/public", title: header_title
- if @project.public
%small
%i.fa.fa-globe
Public
.pull-right = render 'layouts/ci/page', sidebar: 'nav_project'
= link_to 'View on GitLab', @project.gitlab_url, no_turbolink.merge( class: 'btn btn-sm' )
%hr
.container.container-body
.content
- if current_user && can?(current_user, :admin_project, gl_project)
.row
.col-md-2.append-bottom-20
= render 'layouts/ci/nav_project'
.col-md-10
= yield
- else
= yield
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment