diff --git a/.gitignore b/.gitignore index 5b106cc..54546b0 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,14 @@ node_modules/ *.sqlite-wal *.pid *.map +state.sqlite + +# Builders +linux_glibc219_i686_cmake +linux_glibc219_x86_64_cmake +mac_x86_64_10_6_cmake +win32_cmake_vc2013 +win32_cmake_vc2015 +win64_cmake_vc2013 +win64_cmake_vc2015 + diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index 6a4f770..0000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "public_html/assets_shared"] - path = public_html/assets_shared - url = git://git.blender.org/blender-web-assets.git diff --git a/Gruntfile.js b/Gruntfile.js deleted file mode 100644 index 3b10ba4..0000000 --- a/Gruntfile.js +++ /dev/null @@ -1,31 +0,0 @@ -module.exports = function(grunt) { - grunt.initConfig({ - pkg: grunt.file.readJSON('package.json'), - - sass: { - dist: { - options: { - style: 'compressed' - }, - files: { - 'public_html/assets/css/main.css': 'public_html/assets/sass/main.sass' - } - } - }, - - autoprefixer: { - no_dest: { src: 'public_html/assets/css/main.css' } - }, - - watch: { - files: ['public_html/assets/sass/main.sass'], - tasks: ['sass', 'autoprefixer'], - } - }); - - grunt.loadNpmTasks('grunt-contrib-sass'); - grunt.loadNpmTasks('grunt-autoprefixer'); - grunt.loadNpmTasks('grunt-contrib-watch'); - - grunt.registerTask('default', ['sass', 'autoprefixer', 'watch']); -}; diff --git a/master.cfg b/master.cfg index e310143..d0f6c12 100644 --- a/master.cfg +++ b/master.cfg @@ -9,81 +9,31 @@ NIGHT_SCHEDULE_BRANCHES = [None, "blender2.8"] # List of the branches available for force build FORCE_SCHEDULE_BRANCHES = ["master", "blender2.8", "experimental-build"] -""" -Stock Twisted directory lister doesn't provide any information about last file -modification time, we hack the class a bit in order to have such functionaliity -:) -""" - -from buildbot.status.web.base import DirectoryLister - - -def get_files_and_directories(self, directory): - from twisted.web.static import (getTypeAndEncoding, - formatFileSize) - import urllib - import cgi - import time - import os - files = [] - dirs = [] - for path in directory: - url = urllib.quote(path, "/") - escapedPath = cgi.escape(path) - lastmodified = time.ctime(os.path.getmtime( - os.path.join(self.path, path))) - if os.path.isdir(os.path.join(self.path, path)): - url = url + '/' - dirs.append({'text': escapedPath + "/", 'href': url, - 'size': '', 'type': '[Directory]', - 'encoding': '', - 'lastmodified': lastmodified}) - else: - mimetype, encoding = getTypeAndEncoding(path, self.contentTypes, - self.contentEncodings, - self.defaultType) - try: - size = os.stat(os.path.join(self.path, path)).st_size - except OSError: - continue - files.append({ - 'text': escapedPath, "href": url, - 'type': '[%s]' % mimetype, - 'encoding': (encoding and '[%s]' % encoding or ''), - 'size': formatFileSize(size), - 'lastmodified': lastmodified}) - return dirs, files -DirectoryLister._getFilesAndDirectories = get_files_and_directories - # Dictionary that the buildmaster pays attention to. c = BuildmasterConfig = {} -# BUILD SLAVES +# BUILD WORKERS # # We load the slaves and their passwords from a separator file, so we can have # this one in SVN. -from buildbot.buildslave import BuildSlave +from buildbot.worker import Worker import master_private -c['slaves'] = [] - +c['workers'] = [] for slave in master_private.slaves: - c['slaves'].append(BuildSlave(slave['name'], slave['password'])) + c['workers'].append(Worker(slave['name'], slave['password'])) # TCP port through which slaves connect - -c['slavePortnum'] = 9989 +c['protocols'] = {'pb': {'port': 9989}} # CHANGE SOURCES from buildbot.changes.svnpoller import SVNPoller from buildbot.changes.gitpoller import GitPoller -c['change_source'] = GitPoller( - 'git://git.blender.org/blender.git', - pollinterval=1200) - +c['change_source'] = GitPoller('git://git.blender.org/blender.git', + pollinterval=1200) # CODEBASES # @@ -116,7 +66,7 @@ c['schedulers'] = [] def schedule_force_build(name): - c['schedulers'].append(forcesched.ForceScheduler(name='force ' + name, + c['schedulers'].append(forcesched.ForceScheduler(name='force_' + name, builderNames=[name], codebases=[forcesched.CodebaseParameter( codebase="blender", @@ -170,16 +120,15 @@ def schedule_build(name, hour, minute=0): # perform a build: what steps, and which slaves can execute them. # Note that any particular build will only take place on one slave. +from buildbot.config import BuilderConfig +from buildbot.plugins import steps, util from buildbot.process.factory import BuildFactory from buildbot.process.properties import Interpolate -from buildbot.steps.source import SVN -from buildbot.steps.source import Git from buildbot.steps.shell import ShellCommand from buildbot.steps.shell import Compile from buildbot.steps.shell import Test from buildbot.steps.transfer import FileUpload from buildbot.steps.master import MasterShellCommand -from buildbot.config import BuilderConfig # add builder utility @@ -189,18 +138,18 @@ buildernames = [] def add_builder(c, name, libdir, factory, branch='', rsync=False, hour=3, minute=0): - slavenames = [] + workernames = [] for slave in master_private.slaves: if name in slave['builders']: - slavenames.append(slave['name']) + workernames.append(slave['name']) - if len(slavenames) > 0: + if workernames: f = factory(name, libdir, branch, rsync) c['builders'].append(BuilderConfig(name=name, - slavenames=slavenames, + workernames=workernames, factory=f, - category='blender')) + tags=['blender'])) buildernames.append(name) schedule_build(name, hour, minute) @@ -210,29 +159,29 @@ def add_builder(c, name, libdir, factory, branch='', def git_submodule_step(submodule): - return Git(name=submodule + '.git', - repourl='git://git.blender.org/' + submodule + '.git', - mode='update', - codebase=submodule, - workdir=submodule + '.git') + return steps.Git(name=submodule + '.git', + repourl='git://git.blender.org/' + submodule + '.git', + mode='incremental', + codebase=submodule, + workdir=submodule + '.git') def git_step(branch=''): if branch: - return Git(name='blender.git', - repourl='git://git.blender.org/blender.git', - mode='update', - branch=branch, - codebase='blender', - workdir='blender.git', - submodules=True) + return steps.Git(name='blender.git', + repourl='git://git.blender.org/blender.git', + mode='incremental', + branch=branch, + codebase='blender', + workdir='blender.git', + submodules=True) else: - return Git(name='blender.git', - repourl='git://git.blender.org/blender.git', - mode='update', - codebase='blender', - workdir='blender.git', - submodules=True) + return steps.Git(name='blender.git', + repourl='git://git.blender.org/blender.git', + mode='incremental', + codebase='blender', + workdir='blender.git', + submodules=True) def git_submodules_update(): @@ -245,12 +194,11 @@ def git_submodules_update(): def lib_svn_step(dir): - return SVN(name='lib svn', - baseURL='https://svn.blender.org/svnroot/bf-blender/%%BRANCH%%/lib/' + dir, - codebase='lib svn', - mode='update', - defaultBranch='trunk', - workdir='lib/' + dir) + return steps.SVN(name='lib svn', + repourl=util.Interpolate('https://svn.blender.org/svnroot/bf-blender/%(src::branch)s/lib/' + dir), + codebase='lib svn', + mode='incremental', + workdir='lib/' + dir) def rsync_step(id, branch, rsync_script): @@ -294,7 +242,7 @@ def generic_builder(id, libdir='', branch='', rsync=False): f.addStep(rsync_step(id, branch, rsync_script)) else: f.addStep(FileUpload(name='upload', - slavesrc='buildbot_upload.zip', + workersrc='buildbot_upload.zip', masterdest=filename, maxsize=180 * 1024 * 1024, workdir='install')) @@ -314,55 +262,16 @@ add_builder(c, 'win64_cmake_vc2013', 'win64_vc12', generic_builder, hour=2) add_builder(c, 'win32_cmake_vc2015', 'windows_vc14', generic_builder, hour=3) add_builder(c, 'win64_cmake_vc2015', 'win64_vc14', generic_builder, hour=4) -# STATUS TARGETS -# -# 'status' is a list of Status Targets. The results of each build will be -# pushed to these targets. buildbot/status/*.py has a variety to choose from, -# including web pages, email senders, and IRC bots. - -c['status'] = [] - -from buildbot.status import html -from buildbot.status.web import authz -from buildbot.status.web import auth - -users = [] -for slave in master_private.slaves: - users += [(slave['name'], slave['password'])] - -authz_cfg = authz.Authz( - auth=auth.BasicAuth(users), - # change any of these to True to enable; see the manual for more - # options - gracefulShutdown=False, - forceBuild=True, # use this to test your slave once it is set up - forceAllBuilds=False, - pingBuilder=False, - stopBuild=True, - stopAllBuilds=False, - cancelPendingBuild=True, -) - -c['status'].append(html.WebStatus(http_port=8010, authz=authz_cfg)) -#c['status'].append(html.WebStatus(http_port=8010)) +# WWW +c['www'] = dict(port=8010) # PROJECT IDENTITY - c['projectName'] = "Blender" c['projectURL'] = "http://www.blender.org" -# the 'buildbotURL' string should point to the location where the buildbot's -# internal web server (usually the html.WebStatus page) is visible. This -# typically uses the port number set in the Waterfall 'status' entry, but -# with an externally-visible host name which the buildbot cannot figure out -# without some help. - +# Buildbot information c['buildbotURL'] = "http://builder.blender.org/" +c['buildbotNetUsageData'] = 'basic' -# DB URL -# -# This specifies what database buildbot uses to store change and scheduler -# state. You can leave this at its default for all but the largest -# installations. - +# Various c['db_url'] = "sqlite:///state.sqlite" diff --git a/public_html/assets/css/main.css b/public_html/assets/css/main.css deleted file mode 100644 index 805bcab..0000000 --- a/public_html/assets/css/main.css +++ /dev/null @@ -1,19 +0,0 @@ -@import url(//fonts.googleapis.com/css?family=Open+Sans);@import url(//fonts.googleapis.com/css?family=Open+Sans+Condensed:300);@import url(../../assets_shared/css/font-borg.css);/*! - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - * Blender Web Assets - * Design components for Blender.org websites - * - * Authors: Pablo Vazquez, Niklas Ravnsborg-Gjertsen - *//*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}.media-debug{color:#444}@media (max-width: 767px){.media-debug{color:#e95d4f}}@-webkit-keyframes blink{0%{opacity:1}50%{opacity:0}100%{opacity:1}}@-webkit-keyframes fade-in-pause-out /* Used for alerts */{0%{opacity:0}10%{opacity:1}90%{opacity:1}100%{opacity:0}}html,body{font-family:"Open Sans","Lucida Sans","Lucida Grande",sans-serif,sans-serif;font-size:14px;color:#444;cursor:default;width:100%;height:100%;margin:0;background-color:#dfdfdf;-webkit-font-smoothing:antialiased}body{padding:52px 0 0 0}body.dark{background-color:#b8b8b8}.dark{color:#fff}.container-main{background-color:#f0f0f0;padding-bottom:20px}a,a:visited,.link{color:#109df0}a:hover,.link:hover{color:#f84;text-decoration:none !important;cursor:pointer}a:active,.link,.link:active{text-decoration:underline}a:focus,.link:focus{text-decoration:none}a,button,button:focus,button::-moz-focus-inner{outline:none !important}header{width:100%;border-bottom:thin solid rgba(248,248,248,0.3)}header:nth-last-of-type(1){margin-bottom:20px}strong,b{font-weight:700}.container-fluid.bright{background-color:#f8f8f8;padding:0 0 1% 0 !important;height:100%;min-height:100%}h1,h2,h3,h4,h5,h6{font-family:"Open Sans Condensed","Lucida Sans","Lucida Grande",sans-serif,sans-serif !important;font-weight:normal;color:#2b2b2b}h1{font-size:265%}h2{font-size:220%}h3{font-size:180%;font-weight:lighter}h4{font-size:140%}h5{font-size:120%}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small{text-shadow:none}p+h1{margin-top:32px}p+h2,p+h3,p+h4{margin-top:25px}.dark h1,.dark h2,.dark h3,.dark h4,.dark h5,.dark h6{color:#fff}hr{clear:both;width:90%;height:1px;border:none;margin:15px auto 10px auto;background-color:#dfdfdf}hr.dark{background-color:rgba(184,184,184,0.4)}input,button,select,textarea{font-family:"Open Sans","Lucida Sans","Lucida Grande",sans-serif !important;font-weight:lighter;transition:background-color .1s ease-in;box-shadow:2px 2px 0 rgba(95,95,95,0.1);border-radius:3px !important}textarea{resize:vertical;padding:6px 6px 6px 10px !important;min-height:180px}blockquote{background-color:#f3f3f3;font-size:120%;margin:10px;padding:5px 15px;font-size:initial}blockquote p,.box blockquote p{margin:5px 15px 5px 0;padding:5px 15px 5px 0}fieldset{border:none;margin:0;padding:0}.flex{display:-ms-flexbox;display:flex}@media (max-width: 767px){.flex{display:block}}@media (min-width: 768px) and (max-width: 991px){.flex{display:block}}.flex [class^="col-"]{display:-ms-flexbox;display:flex}@media (max-width: 767px){.flex [class^="col-"]{display:block}}@media (min-width: 768px) and (max-width: 991px){.flex [class^="col-"]{display:block}}.flex [class^="col-"] .box{width:100%}.input-group{width:100%;position:relative}.input-append input,.input-prepend input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend .uneditable-input{background-color:#fff;transition:background-color .1s ease-in}.form-control{top:0;color:#111;position:absolute;background-color:#fff !important;border:none;margin-top:30px;border:thin solid #c4c4c4 !important;border-radius:3px;box-shadow:2px 2px 0 rgba(95,95,95,0.1);transition:all .15s ease-in-out}.form-control:focus,.form-control:hover{background-color:#fff !important;border:thin solid #f8f8f8 !important;color:#0b6ea9;box-shadow:2px 2px 0 rgba(95,95,95,0.2)}.has-error .form-control{border:thin solid #ef877c !important}.has-error.input-group .input-group-addon,.has-error.input-group .control-label{color:#e95d4f !important}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{padding:0px 4px 0px 10px;height:40px;font-size:120%}.input-group input.form-control[type=checkbox],.input-group.input-group-lg input.form-control[type=checkbox]{box-shadow:none !important}.input-group input.form-control[type=checkbox]{width:15px}.input-group.input-group-lg input.form-control[type=checkbox]{width:20px}.input-group input.form-control[type=checkbox]+label.control-label,.input-group.input-group-lg input.form-control[type=checkbox]+label.control-label{text-align:left;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;transition:color .1s ease-out}.input-group input.form-control[type=checkbox]:hover+label.control-label,.input-group.input-group-lg input.form-control[type=checkbox]:hover+label.control-label{color:#f84}.input-group input.form-control[type=checkbox]:checked+label.control-label,.input-group.input-group-lg input.form-control[type=checkbox]:checked+label.control-label{color:#109df0}.input-group input.form-control[type=checkbox]:checked+label.control-label:hover,.input-group.input-group-lg input.form-control[type=checkbox]:checked+label.control-label:hover{color:#f84}.input-group input.form-control[type=checkbox]+label.control-label{padding-left:22px;padding-top:3px}.input-group.input-group-lg input.form-control[type=checkbox]+label.control-label{padding-left:30px;padding-top:6px}.input-group input.form-control[type=checkbox]+label.control-label,.input-group.input-group-lg input.form-control[type=checkbox]+label.control-label{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.input-group .input-group-addon{position:absolute;top:30px;z-index:3;padding:10px 15px 10px 12px !important;background:transparent;border:0;color:#777 !important}.input-group .input-group-addon+.form-control,.input-group .input-group-addon+select.form-control{padding-left:35px !important}.input-group .input-group-addon .bf-network{font-size:140% !important;position:absolute;left:8px;top:8px}.input-group .input-group-addon .bf-cloud{font-size:160% !important;position:absolute;left:8px;top:4px}.input-group.input-group-lg .input-group-addon .bf-cloud{top:6px}.input-group.input-group-lg .input-group-addon{top:28px}.form-control+.input-group-addon{float:right;right:10px}.form-control+.input-group-addon>button{position:relative;margin-top:-6px;right:8px;background-color:transparent;border:none;opacity:.5;transition:opacity .2s ease;box-shadow:none}.form-control:focus+.input-group-addon>button,.form-control:hover+.input-group-addon>button,.form-control+.input-group-addon>button:hover{opacity:1}.form-control+.input-group-addon.danger>button{color:#e95d4f}.error{color:#e95d4f}ul.error{margin:0 !important;padding:5px 0 0 0 !important;display:inline-block}ul.error li:after{content:"" !important}.box ul.error li,.box ul.error li:last-child{margin-bottom:0}.edit_box{background-color:#6cc2e7;float:right;color:#fff;padding:8px 10px;margin:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:3px;box-shadow:2px 2px 0 rgba(0,0,0,0.1)}.edit_box:hover{background-color:#56b9e4}.edit_box:focus,.edit_box:active{background-color:#f84}.panel{border-radius:3px;box-shadow:2px 2px 0 rgba(0,0,0,0.1)}.panel-default{border:none}.panel-default a:focus{text-decoration:none}.panel-default>.panel-heading{color:#444;margin:0;background-color:#ebebeb;border:none;border-bottom:2px solid #ddd}.panel-title{font-size:160%;text-shadow:1px 1px 0 rgba(255,255,255,0.5)}a.list-group-item,.panel>.list-group .list-group-item{background-color:#fff;color:#444;border:thin solid #eaeaea;border-left:2px solid #eaeaea;padding:5% 5% 5% 40px}a.list-group-item:hover,a.list-group-item:focus{background-color:#ebebeb;color:#109df0 !important;border:thin solid #ddd;border-left:2px solid #70c4f6 !important}a.list-group-item.active,a.list-group-item.active:hover,a.list-group-item.active:focus{background-color:transparent;color:#f84 !important;border:thin solid #ddd;border-left:2px solid #f84 !important}.list-group-with-icon a.list-group-item i,.panel>.list-group.list-group-with-icon .list-group-item i{padding:3px 15px 5px;position:absolute;float:left;left:0}.accordion .panel-heading{border-bottom:thin solid #dfdfdf;transition:border-bottom .2s ease-out}.accordion .collapsed .panel-heading{border-bottom:thin solid transparent}.accordion a .panel-title{color:#109df0;transition:color .1s ease-out}.accordion a:hover .panel-title{color:#f84 !important}.accordion a.collapsed .panel-title{color:#777}.panel-collapse-widget{font-family:"Open Sans","Lucida Sans","Lucida Grande",sans-serif;color:#aaa;display:block;float:right;-webkit-transform:rotate(45deg);transform:rotate(45deg);transition:all .25s ease-out}.panel-collapse-widget:after{content:"+"}.collapsed .panel-collapse-widget{-webkit-transform:rotate(0deg);transform:rotate(0deg)}.accordion .panel-body{position:relative;-webkit-transform:translateY(-2px);transform:translateY(-2px);opacity:0;transition:opacity .2s ease-out;transition:-webkit-transform .2s ease-out;transition:transform .2s ease-out}.accordion .collapse.in .panel-body{opacity:1;-webkit-transform:translateY(0);transform:translateY(0);transition:opacity .2s ease-out;transition:-webkit-transform .2s ease-out;transition:transform .2s ease-out}.accordion .collapsed+.collapsing .panel-body{opacity:0;transition:opacity .2s ease-out}.cke_chrome{font-family:"Open Sans","Lucida Sans","Lucida Grande",sans-serif !important;font-weight:lighter;color:#2b2b2b !important;border:thin solid #aaa !important;background-color:#fff !important;resize:vertical;margin:0 !important;box-shadow:2px 2px 0 rgba(95,95,95,0.1);border-radius:3px}span#cke_2_top{padding:5px !important;border:none;background-image:none;background-color:transparent !important;box-shadow:none}span.cke_toolgroup{border:none;border-bottom:2px solid transparent;background-image:none;background-color:#fff}a.cke_button_off{border-bottom:2px solid transparent !important;box-shadow:none}a.cke_button_off:hover,a.cke_button_off:focus,a.cke_button_off:active,a.cke_button_disabled:hover,a.cke_button_disabled:focus,a.cke_button_disabled:active{background-image:none !important;background-color:transparent !important;color:#fff !important;border-bottom:2px solid #109df0 !important}a.cke_button_on,a.cke_button_on:hover,a.cke_button_on:focus,a.cke_button_on:active{background-image:none !important;background-color:transparent !important;border-bottom:2px solid #f84 !important;color:#fff !important;box-shadow:none}::-webkit-input-placeholder{color:#aaa !important}:-moz-placeholder{color:#aaa !important;opacity:1}::-moz-placeholder{color:#aaa !important;opacity:1}:-ms-input-placeholder{color:#aaa !important}.input-group.input-checkbox{margin-top:25px;margin-bottom:25px}.input-group.input-checkbox .control-label{font-size:100%;text-align:left !important}.input-group.input-checkbox .btn-group{float:right}.input-group.input-checkbox .btn-group .btn{min-width:45px;font-weight:bolder;color:#fff;background-color:#109df0;border-bottom-color:#095f91}.input-group.input-checkbox .btn-group .btn.active{background-color:#f84;border-bottom-color:#dd5000}.input-group.input-checkbox .btn-group .btn:before{content:"";font-family:"FontAwesome"}.input-group.input-checkbox .btn-group .btn.active:before{content:"";font-family:"FontAwesome"}.input-group.input-checkbox .btn-group .btn{color:#fff;border-left-color:#fff !important;border-right-color:#fff !important}.input-group.input-checkbox .btn-group .btn.active{box-shadow:none}.input-group.input-checkbox .btn-group .btn:hover{color:#fff !important}.btn-group.open .dropdown-toggle{box-shadow:none}.btn-group ul.dropdown-menu{font-size:100%}label{font-weight:normal}.control-label{font-size:95%}.input-group-lg .control-label{font-size:100%}.input-group .control-label{position:absolute;left:0;top:8px}.form-horizontal .control-label{padding-top:0}.input-group select:focus{border:none;box-shadow:none}.input-group select{height:auto !important;padding:6px 7px 7px !important;text-transform:capitalize}.input-group select:hover,.input-group select:focus{color:inherit}.input-group option{margin:0 4px 0 8px !important}.input-group.disabled{opacity:.5;pointer-events:none}.input-group.disabled .form-control{border-color:transparent;background-color:#e9e9e9}.input-group .form-control[type='file']{padding-top:5px}.input-group.input-group-lg .form-control[type='file']{padding-top:6px}.disabled{opacity:.65 !important;pointer-events:none !important;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.user-select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pointer-events-none{pointer-events:none}.top{position:absolute !important;top:0 !important}.bottom{position:absolute !important;bottom:0 !important}.left{float:left !important;left:0 !important}.right{float:right !important;right:0 !important}.text-align-center{text-align:center !important}.text-align-left{text-align:left !important}.text-align-right{text-align:right !important}.text-transform-uppercase{text-transform:uppercase !important}.text-transform-lowercase{text-transform:lowercase !important}.text-transform-capitalize{text-transform:capitalize !important}.text-size-100{font-size:100% !important}.text-size-120{font-size:120% !important}.content-margin-center{margin-left:auto !important;margin-right:auto !important}.margin-top-0{margin-top:0 !important}.margin-top-1{margin-top:1% !important}.margin-top-2{margin-top:2% !important}.margin-top-3{margin-top:3% !important}.margin-top-4{margin-top:4% !important}.margin-top-5{margin-top:5% !important}.margin-top-5px{margin-top:5px !important}.margin-top-10px{margin-top:10px !important}.margin-top-15px{margin-top:15px !important}.margin-top-20px{margin-top:20px !important}.margin-top-25px{margin-top:25px !important}.margin-bottom-0{margin-bottom:0 !important}.margin-bottom-1{margin-bottom:1% !important}.margin-bottom-2{margin-bottom:2% !important}.margin-bottom-3{margin-bottom:3% !important}.margin-bottom-4{margin-bottom:4% !important}.margin-bottom-5{margin-bottom:5% !important}.margin-bottom-5px{margin-bottom:5px !important}.margin-bottom-10px{margin-bottom:10px !important}.margin-bottom-15px{margin-bottom:15px !important}.margin-bottom-20px{margin-bottom:20px !important}.margin-bottom-25px{margin-bottom:25px !important}.margin-left-0{margin-left:0 !important}.margin-left-1{margin-left:1% !important}.margin-left-2{margin-left:2% !important}.margin-left-3{margin-left:3% !important}.margin-left-4{margin-left:4% !important}.margin-left-5{margin-left:5% !important}.margin-left-5px{margin-left:5px !important}.margin-left-10px{margin-left:10px !important}.margin-left-15px{margin-left:15px !important}.margin-left-20px{margin-left:20px !important}.margin-left-25px{margin-left:25px !important}.margin-right-0{margin-right:0 !important}.margin-right-1{margin-right:1% !important}.margin-right-2{margin-right:2% !important}.margin-right-3{margin-right:3% !important}.margin-right-4{margin-right:4% !important}.margin-right-5{margin-right:5% !important}.margin-right-5px{margin-right:5px !important}.margin-right-10px{margin-right:10px !important}.margin-right-15px{margin-right:15px !important}.margin-right-20px{margin-right:20px !important}.margin-right-25px{margin-right:25px !important}.padding-top-0{padding-top:0 !important}.padding-top-1{padding-top:1% !important}.padding-top-2{padding-top:2% !important}.padding-top-3{padding-top:3% !important}.padding-top-4{padding-top:4% !important}.padding-top-5{padding-top:5% !important}.padding-top-5px{padding-top:5px !important}.padding-top-10px{padding-top:10px !important}.padding-top-15px{padding-top:15px !important}.padding-top-20px{padding-top:20px !important}.padding-top-25px{padding-top:25px !important}.padding-bottom-0{padding-bottom:0 !important}.padding-bottom-1{padding-bottom:1% !important}.padding-bottom-2{padding-bottom:2% !important}.padding-bottom-3{padding-bottom:3% !important}.padding-bottom-4{padding-bottom:4% !important}.padding-bottom-5{padding-bottom:5% !important}.padding-bottom-5px{padding-bottom:5px !important}.padding-bottom-10px{padding-bottom:10px !important}.padding-bottom-15px{padding-bottom:15px !important}.padding-bottom-20px{padding-bottom:20px !important}.padding-bottom-25px{padding-bottom:25px !important}.padding-left-0{padding-left:0 !important}.padding-left-1{padding-left:1% !important}.padding-left-2{padding-left:2% !important}.padding-left-3{padding-left:3% !important}.padding-left-4{padding-left:4% !important}.padding-left-5{padding-left:5% !important}.padding-left-5px{padding-left:5px !important}.padding-left-10px{padding-left:10px !important}.padding-left-15px{padding-left:15px !important}.padding-left-20px{padding-left:20px !important}.padding-left-25px{padding-left:25px !important}.padding-right-0{padding-right:0 !important}.padding-right-1{padding-right:1% !important}.padding-right-2{padding-right:2% !important}.padding-right-3{padding-right:3% !important}.padding-right-4{padding-right:4% !important}.padding-right-5{padding-right:5% !important}.padding-right-5px{padding-right:5px !important}.padding-right-10px{padding-right:10px !important}.padding-right-15px{padding-right:15px !important}.padding-right-20px{padding-right:20px !important}.padding-right-25px{padding-right:25px !important}.width-full{width:100% !important;max-width:100% !important}.width-75{width:75% !important;max-width:75% !important}.width-half{width:50% !important;max-width:50% !important}.width-25{width:25% !important;max-width:25% !important}.opacity-full{opacity:1 !important}.opacity-75{opacity:.75 !important}.opacity-half{opacity:.5 !important}.opacity-25{opacity:.25 !important}.opacity-0{opacity:0 !important}.relative{position:relative !important}.absolute{position:absolute !important}.inline-block{display:inline-block !important}.block{display:block !important}.height-full{height:100% !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.text-overflow-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.text-overflow-clip{overflow:hidden;white-space:nowrap;text-overflow:clip}.vertical-align{position:relative;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.cursor-hover-pointer{cursor:pointer !important}.background-default{background-color:#f8f8f8 !important}.background-bright{background-color:#fff !important}.background-dark{background-color:#b8b8b8 !important;color:#fff}.background-info{background-color:#40b0e0 !important;color:#fff}.background-success{background-color:#d5d644 !important;text-shadow:1px 1px 0 rgba(255,255,255,0.4)}.background-warning{background-color:#faaf40 !important}.background-danger{background-color:#e95d4f !important;color:#fff}.background-info h1,.background-info h2,.background-info h3,.background-info h4,.background-danger h1,.background-danger h2,.background-danger h3,.background-danger h4,.background-dark h1,.background-dark h2,.background-dark h3,.background-dark h4{color:#fff}.background-success h1,.background-success h2,.background-success h3,.background-success h4,.background-success h5,.background-success h6{text-shadow:1px 1px 0 rgba(255,255,255,0.4)}.background-info a,.background-danger a,.background-dark a{color:#fff !important;font-weight:bold}.background-info .disabled label,.background-danger .disabled label,.background-dark .disabled label{color:#fff}input.form-control.background-danger{color:#fff !important;border-color:#d12b1a !important}input.form-control:hover.background-danger,input.form-control:focus.background-danger{color:#fff !important;background-color:#d12b1a !important;border-color:#a42215 !important}.color-bright{color:#fff !important}.table-row-link:hover .background-info,.table-row-link:hover .background-danger,.table-row-link:hover .background-dark{color:#fff !important;font-weight:bold}.z-index-2{z-index:2}.list-margin-bottom-1 li{margin-bottom:1%}.list-margin-bottom-2 li{margin-bottom:2%}.list-margin-bottom-3 li{margin-bottom:3%}.list-margin-bottom-4 li{margin-bottom:4%}.list-margin-bottom-5 li{margin-bottom:5%}.border-left{border-left:thin solid #d0d0d0}.border-left.dark{border-left-color:#eaeaea}.border-left.bright{border-left-color:#b7b7b7}.border-right{border-right:thin solid #d0d0d0}.border-right.dark{border-right-color:#eaeaea}.border-right.bright{border-right-color:#b7b7b7}.border-top{border-top:thin solid #d0d0d0}.border-top.dark{border-top-color:#eaeaea}.border-top.bright{border-top-color:#b7b7b7}.border-bottom{border-bottom:thin solid #d0d0d0}.border-bottom.dark{border-bottom-color:#eaeaea}.border-bottom.bright{border-bottom-color:#b7b7b7}.border-none{border:none !important}.border-radius-3{border-radius:3px}.border-radius-none{border-radius:0}.navbar{color:#444;border:none;z-index:9 !important;margin-bottom:0;font-size:140%;min-height:44px}.navbar.navbar-secondlevel:nth-last-of-type(1),.navbar.navbar-thirdlevel:nth-last-of-type(1){box-shadow:2px 2px 0 rgba(95,95,95,0.1)}@media (max-width: 767px){.navbar-nav{margin:0 -15px}}.navbar.dark{color:#fff}.navbar li:after,.navbar-nav li:after{content:""}.navbar-nav>li>a{color:#444;font-family:"Open Sans Condensed","Lucida Sans","Lucida Grande",sans-serif !important;border-bottom:2px solid transparent;text-shadow:1px 1px 2px #f8f8f8;transition:border-color .1s ease-out}.navbar-default.dark .nav>li>a{color:#fff;text-shadow:1px 1px 2px #f8f8f8}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#109df0;border-color:#109df0}.navbar-default.dark .navbar-nav>li>a:hover{color:#fff}.navbar-default{background-color:#fff}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{font-weight:normal;color:#f75a00;background-color:transparent;border-bottom-color:#ff9558}.navbar-brand{color:#444 !important}.navbar-brand:hover{opacity:.9;transition:opacity .1s ease}.navbar li.current_page_item a,.navbar li.current-page-parent a,.navbar li.current-page-ancestor a,.navbar li.current_page_parent a{font-weight:normal;color:#ff782b;border-bottom-color:rgba(255,136,68,0.8)}.navbar li.current_page_item a:hover,.navbar li.current-page-parent a:hover,.navbar li.current-page-ancestor a:hover,.navbar li.current_page_parent a:hover,.navbar li.current_page_ancestor a:hover{color:#f84;border-bottom-color:rgba(255,136,68,0.8);cursor:default}.navbar li.current-page-ancestor a,.navbar li.current_page_ancestor a{color:rgba(255,136,68,0.85)}.navbar li.current-page-ancestor a:hover,.navbar li.current_page_ancestor a:hover{cursor:pointer}.navbar-secondlevel.navbar{z-index:8 !important}.navbar-secondlevel.navbar,.navbar-thirdlevel.navbar{background-color:#fff;min-height:41px}.navbar-secondlevel .navbar-nav>li>a,.navbar-thirdlevel .navbar-nav>li>a{padding:10px 15px 8px 15px;position:relative;top:3px}.navbar-thirdlevel{z-index:7 !important;border-top:1px solid #f0f0f0;font-size:140%}@media (min-width: 768px) and (max-width: 991px){ul.nav.navbar-nav.navbar-left{max-width:105%;margin-bottom:0}}@media (min-width: 768px) and (max-width: 991px){ul.nav.navbar-nav.navbar-left .dropdown-menu li{margin:10px 0 10px -15px;font-size:110%}}.navbar-toggle{font-size:1em}.dropdown-menu{border:0;min-width:130px;background:#fff;font-size:70%;padding:0;border-radius:0;box-shadow:2px 2px 0 rgba(0,0,0,0.1);transition:opacity .1s ease}.dropdown-menu>li>a{padding:6% 8% 6% 6%;padding-right:45px;font-weight:normal;line-height:1.42857;color:#444;transition:border-color .05s ease}.dropdown-menu>li>a:hover{background:transparent;color:#40b1f3}.dropdown-menu>.active>a{background:transparent;color:#f84}.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus,.dropdown-menu>li>a:active{background:transparent;color:#ff6811;cursor:default}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:active,.dropdown-menu>.active>a:focus,.dropdown-menu>li>a:active{background:transparent;color:#109df0}.dropdown-menu .divider{height:1px;margin:0;background:#f8f8f8}.dropdown-menu i{float:left;width:22px;margin:3px 0 0 2px}.navbar-nav .open .dropdown-menu{border-bottom-left-radius:3px !important;border-bottom-right-radius:3px !important}@media (min-width: 768px) and (max-width: 991px){.navbar-nav .open .dropdown-menu{float:left !important;width:100%}}@media (min-width: 768px) and (max-width: 991px){li.dropdown.absolute.right{position:relative !important;float:left !important;width:100%}}img.alignright{float:right;margin:10px 0 10px 10px}img.alignleft{float:right;margin:10px 10px 10px 0}.backicon{z-index:0;position:absolute;font-size:1400%;bottom:-50px;right:-35px;color:rgba(68,68,68,0.08);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.divider{margin:20px auto;width:100%;height:2px;border-top:thin solid #ebebeb}.title{position:relative;margin:5px 0;padding:10px 0;color:#fff;text-shadow:2px 2px 0 rgba(43,43,43,0.3)}i.title-icon{position:relative;float:right;margin:0 3%;bottom:.1em;font-size:116%;opacity:.2}.info{color:#40b0e0 !important}.warning{color:#faaf40 !important}.danger{color:#e95d4f !important}.success{color:#bcbd2a !important}.text-color-brand-main{color:#109df0 !important}.text-color-brand-secondary{color:#f84 !important}.info h1,.info h2,.info h3,.info h4,.info h5,.info h6{color:#40b0e0 !important}.danger h1,.danger h2,.danger h3,.danger h4,.danger h5,.danger h6{color:#e95d4f !important}.warning h1,.warning h2,.warning h3,.warning h4,.warning h5,.warning h6{color:#faaf40 !important}.success h1,.success h2,.success h3,.success h4,.success h5,.success h6{color:#d5d644 !important}ul{margin:0}ul li{margin-left:0;list-style-type:none;position:relative;transition:all .1s ease-out}ul li:after{content:"";position:absolute;left:-10px;top:-2px;text-align:right;font-size:120%;color:rgba(68,68,68,0.5);transition:all .15s ease-in}ul.list-bullets-check li:after{content:"";font-size:75%;top:4px;left:-15px;font-family:"FontAwesome"}ul.list-bullets-none li:after{content:""}li [class^="fa-"]{text-align:left}ul.list-margin-none{padding:0 10px 0 28px}ul ul{padding-left:10px}ul li ul li:after{content:"";font-size:85%;top:2px;left:-11px;font-family:"FontAwesome"}.pagination{margin:30px auto 0px auto;width:100%;text-align:center}.pagination .active span{background-color:#f84}a.btn,.btn,button{background-color:#f1f1f1;color:#444;font-family:"Open Sans Condensed","Lucida Sans","Lucida Grande",sans-serif !important;font-size:130%;text-shadow:0 1px 1px rgba(255,255,255,0.06);border:thin solid #eaeaea;border-bottom:1px solid #d8d8d8;border-radius:3px;transition:all .1s ease-in-out}a.btn:hover,.btn:hover,button:hover{background-color:#f7f7f7;border-color:#eaeaea;border-bottom:1px solid #8dd0f8;color:#109df0 !important}a.btn:active,a.btn:focus,.btn:active,.btn:focus,button:active,button:focus{background-color:#f7f7f7;color:#f84 !important;border-color:#eaeaea;border-bottom-color:#f84;outline:none !important;box-shadow:1px 1px 0 rgba(0,0,0,0.1)}a.btn.btn-squishy,.btn.btn-squishy{position:relative;top:0;margin-bottom:8px;font-weight:600;border-radius:3px;box-shadow:0 3px 0 #d8d8d8}a.btn.btn-squishy:hover,.btn.btn-squishy:hover{background-color:#f7f7f7;top:2px;box-shadow:0 1px 0 #d8d8d8}a.btn.btn-squishy:active,a.btn.btn-squishy:focus,.btn.btn-squishy:active,.btn.btn-squishy:focus{border-bottom-color:#f84;color:#f84 !important;background-color:#f7f7f7;border-top-color:#f7f7f7}.btn-group.open .dropdown-toggle{border:thin solid #eaeaea}a.btn.btn-outline,.btn.btn-outline{background-color:transparent;color:#fff;border:1px solid #fff;padding:5px 20px;box-shadow:none}a.btn.btn-outline:hover,.btn.btn-outline:hover{color:#fff !important;border:1px solid #fff;background-color:rgba(255,255,255,0.25)}a.btn.btn-outline:active,a.btn.btn-outline:focus,.btn.btn-outline:active,.btn.btn-outline:focus{color:#fff !important;border:1px solid #fff;background-color:rgba(255,255,255,0.5)}.box a.btn.btn-outline,.box .btn.btn-outline{color:#444;border:1px solid #aaa}.box a.btn.btn-outline:hover,.box .btn.btn-outline:hover{color:#000 !important;border:1px solid #777;background-color:rgba(255,255,255,0.25)}.box a.btn.btn-outline:active,.box a.btn.btn-outline:focus,.box .btn.btn-outline:active,.box .btn.btn-outline:focus{color:#000 !important;border:1px solid #444;background-color:rgba(255,255,255,0.5)}a.btn-success,.btn-success{background-color:#d5d644;color:#40400e;border-color:#d0d12f;text-shadow:1px 1px 0 rgba(255,255,255,0.6)}a.btn-success:hover,.btn-success:hover{color:#444 !important;background-color:#e3e483;border-color:#d0d12f}a.btn.btn-squishy.btn-success,.btn.btn-squishy.btn-success{background-color:#d5d644;border-color:#d0d12f;border-bottom-color:#c5c62b;box-shadow:0 3px 0 #c5c62b}a.btn.btn-squishy.btn-success:hover,.btn.btn-squishy.btn-success:hover{background-color:#dadb59;box-shadow:0 1px 0 #c5c62b}a.btn-success:focus,.btn-success:focus,a.btn-success:active,.btn-success:active,a.btn.btn-squishy.btn-success:focus,.btn.btn-squishy.btn-success:focus,a.btn.btn-squishy.btn-success:active,.btn.btn-squishy.btn-success:active{color:#444 !important;background-color:#bcbd2a;border-bottom-color:#bcbd2a}a.btn-danger,.btn-danger{color:#fff !important;background-color:#ea6558;border-color:#e64838;text-shadow:1px 1px 0 rgba(0,0,0,0.4)}a.btn-danger:hover,.btn-danger:hover{color:#fff !important;background-color:#ec766a;border-color:#e64838;border-bottom-color:#e33322}a.btn.btn-squishy.btn-danger,.btn.btn-squishy.btn-danger{background-color:#ea6558;border-bottom-color:#e33322;box-shadow:0 3px 0 #d64739}a.btn.btn-squishy.btn-danger:hover,.btn.btn-squishy.btn-danger:hover{border-color:#e74c3d;background-color:#ec7266;box-shadow:0 1px 0 #d12b1a}a.btn-danger:focus,.btn-danger:focus,a.btn-danger:active,.btn-danger:active,a.btn.btn-squishy.btn-danger:focus,.btn.btn-squishy.btn-danger:focus,a.btn.btn-squishy.btn-danger:active,.btn.btn-squishy.btn-danger:active{color:#fff !important;background-color:#e33322;border-bottom-color:#df2e1c}a.btn-warning,.btn-warning{color:#523202;background-color:#fbbb5e;border-color:#faab36;text-shadow:1px 1px 1px rgba(255,255,255,0.5)}a.btn-warning:hover,.btn-warning:hover{color:#2b2b2b !important;background-color:#fcc87c;border-color:#faab36;border-bottom-color:#e78d06}a.btn.btn-squishy.btn-warning,.btn.btn-squishy.btn-warning{background-color:#fbbb5e;border-bottom-color:#f69606;box-shadow:0 3px 0 #e68e0c}a.btn.btn-squishy.btn-warning:hover,.btn.btn-squishy.btn-warning:hover{background-color:#fcc87c;box-shadow:0 1px 0 #e78d06}a.btn-warning:focus,.btn-warning:focus,a.btn-warning:active,.btn-warning:active,a.btn.btn-squishy.btn-warning:focus,.btn.btn-squishy.btn-warning:focus,a.btn.btn-squishy.btn-warning:active,.btn.btn-squishy.btn-warning:active{color:#444 !important;background-color:#f99a0e}a.btn-info,.btn-info{color:#fff !important;background-color:#52b7e3;border-color:#37acdf;text-shadow:1px 1px 0 rgba(0,0,0,0.4)}a.btn-info:hover,.btn-info:hover{color:#fff !important;background-color:#6cc2e7;border-color:#37acdf;border-bottom-color:#1e88b6}a.btn.btn-squishy.btn-info,.btn.btn-squishy.btn-info{background-color:#52b7e3;border-bottom-color:#2092c3;box-shadow:0 3px 0 #239fd5}a.btn.btn-squishy.btn-info:hover,.btn.btn-squishy.btn-info:hover{background-color:#6cc2e7;box-shadow:0 1px 0 #2aa7dc}a.btn-info:focus,.btn-info:focus,a.btn-info:active,.btn-info:active,a.btn.btn-squishy.btn-info:focus,.btn.btn-squishy.btn-info:focus,a.btn.btn-squishy.btn-info:active,.btn.btn-squishy.btn-info:active{color:#fff !important;background-color:#2199cc;border-bottom-color:#2092c3}a.btn.external{border-bottom:2px solid rgba(255,136,68,0.2)}a.btn.external:after{content:"";float:right;font-size:75%;color:rgba(68,68,68,0.6);position:absolute;top:6px;right:8px;font-family:"FontAwesome"}.btn-xs{font-size:90%}.nav-tabs li:after{content:""}.nav-tabs>li>a{color:#444;border-color:transparent;cursor:pointer;transition:color .1s,opacity .1s}.nav-tabs>li>a:hover,.nav-tabs>li>a:focus,.nav-tabs.nav-justified>li>a:hover,.nav-tabs.nav-justified>li>a:focus{border:none;background-color:transparent;color:#0c7ec1;border-color:transparent;border-bottom:2px solid #40b1f3 !important}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus,.nav-tabs.nav-justified>li.active>a,.nav-tabs.nav-justified>li.active>a:hover,.nav-tabs.nav-justified>li.active>a:focus{border:none;background-color:transparent;color:#109df0;border-color:transparent;border-bottom:2px solid #109df0 !important;cursor:default}.nav-tabs.nav-justified>li>a{border-bottom:2px solid #dfdfdf !important}.tab-content{position:relative;height:100%;background-color:#fff;border:none;overflow:hidden;border-radius:3px;box-shadow:2px 2px 0 rgba(95,95,95,0.1)}.tab-content p{padding:10px}.label{padding:.2em .7em .3em;font-size:90%;font-weight:normal;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,0.2);box-shadow:1px 1px 0 rgba(0,0,0,0.1);border-radius:3px}.label.label-2x{font-size:100%}.label-info{background-color:#40b0e0;color:#fff;font-weight:bold;text-shadow:1px 1px 0 rgba(0,0,0,0.2);border:thin solid #2aa7dc}.label-danger{background-color:#e95d4f;color:#fff;font-weight:bold;text-shadow:1px 1px 0 rgba(0,0,0,0.2);border:thin solid #e64838}.label-warning{background-color:#faaf40;color:#523202;text-shadow:1px 1px 0 rgba(255,255,255,0.5);border:thin solid #f9a527}.label-success{background-color:#d5d644;color:#40400e;text-shadow:1px 1px 0 rgba(255,255,255,0.5);border:thin solid #d0d12f}.disabled label{color:#515151}.flip{-webkit-perspective:1170px;-o-perspective:1170px;perspective:1170px;position:relative;clear:both}.flip .card{height:100%;-webkit-transform-style:preserve-3d;-o-transform-style:preserve-3d;transform-style:preserve-3d;transition:.3s}.flip .card .face{-webkit-backface-visibility:hidden;-o-backface-visibility:hidden;backface-visibility:hidden;z-index:3}.flip .card .front{position:absolute;width:100%;z-index:2;-webkit-backface-visibility:hidden !important;-o-backface-visibility:hidden !important;backface-visibility:hidden !important;transition:opacity .15s ease-in-out}.flip .card .back{-webkit-transform:rotatey(-180deg);transform:rotatey(-180deg)}.flip .face>h1,.flip .face>h2,.flip .face>h3,.flip .face>h4{margin-top:0}.flip .card.flipped{-webkit-transform:rotatey(-180deg);transform:rotatey(-180deg)}.flipped .front{opacity:0;-webkit-backface-visibility:hidden !important;-o-backface-visibility:hidden !important;backface-visibility:hidden !important}.flip_toggle{display:block;position:absolute;right:0;top:5px;padding:2px;min-width:40px;min-height:40px;z-index:2;transition:color .15s ease-in-out}.flip_toggle:hover{cursor:pointer;color:#40b1f3}.flip_toggle:before{content:"";font-family:"FontAwesome";right:12px;position:absolute}.box,.breadcrumb{position:relative;background-color:#fff;border:thin solid #f1f1f1;overflow:hidden;word-break:break-word;border-radius:3px;box-shadow:2px 2px 0 rgba(95,95,95,0.1)}@media (max-width: 767px){.box{margin-bottom:14px}}@media (min-width: 768px) and (max-width: 991px){.box{margin-bottom:14px}}.box p{position:relative;margin:15px}.box p+ul{margin-top:-7px}.box a{text-shadow:none}.box h1{margin:10px 10px 0 15px;text-shadow:none}.box h2{margin:10px 10px 0 15px;text-shadow:none}.box h3,.box h4,.box h5,.box h6{margin:10px 0 0 15px;text-shadow:none}.box h2+p{margin-top:10px}.box h3+p,.box h4+p,.box h5+p{margin-top:5px}.box hr{width:95%;opacity:.8}.box ul{margin-top:10px;margin-left:0;padding-left:30px}.box ul li{margin-bottom:10px;padding-right:15px}.box ul li:after{content:"·";top:-1px;left:-13px;color:#aaa}.box ul li:last-child{margin-bottom:35px}.box .bottom{width:100%}.box+.box{margin-top:20px}.box ul.nav.nav-tabs{margin:0;padding:0;list-style:none}.box ul.nav.nav-tabs li{margin:0;padding:0;background-color:#ebebeb;text-shadow:1px 1px 1px rgba(255,255,255,0.8)}.box ul.nav.nav-tabs li:first-child{border-top-left-radius:3px}.box ul.nav.nav-tabs li:last-child{border-top-right-radius:3px}.box ul.nav.nav-tabs li:after{content:""}.box ul.nav.nav-tabs li.active{background-color:#fff}.box ul.nav.nav-tabs li a{border:none;border-right-color:#fff;border-bottom-color:#fff;text-shadow:1px 1px 1px rgba(255,255,255,0.8)}.featured{height:350px;overflow:hidden;position:relative;background-color:#fff;border:none;border-bottom:thin solid #eaeaea;background-image:url(https://www.blender.org/wp-content/themes/bthree/assets/images/placeholder_background.jpg);background-size:cover;box-shadow:2px 2px 0 rgba(95,95,95,0.1)}@media (max-width: 767px){.featured{height:160px}}.featured-xs{height:100px}.featured-sm{height:160px}.featured-md{height:250px}.featured-lg{height:350px}.featured-xl{height:450px}.featured h1,.featured h2,.featured h3,.featured h4,.featured h5,.featured h6{color:#fff}.featured h1{font-size:360%}@media (max-width: 767px){.featured h1{font-size:200%;padding:0;margin:0}}.featured h3{font-size:180%}@media (max-width: 767px){.featured h3{font-size:130%;padding:0;margin:0}}.featured .backicon{font-size:2500%;top:116.66667px}.featured-xs .backicon{top:-50px}.featured-sm .backicon{top:-40px}.featured-md .backicon{top:31.25px}.featured-lg .backicon{top:116.66667px}.featured-xl .backicon{top:180px}.thumbnail{padding:4px;border:none;background-color:#fff;box-shadow:1px 1px 0 rgba(68,68,68,0.25);transition:all .1s ease-out}a img.thumbnail:hover{opacity:.9}.soyadmin{float:right;color:#444;font-size:150%;position:fixed;right:17px;top:12px;z-index:10;opacity:.3}.soyadmin:hover{color:#109df0;opacity:1}.alert{margin-bottom:0;border:none;position:fixed;z-index:9;width:100%;border-radius:0;text-align:center;color:#2b2b2b;font-size:110%;padding:0;-webkit-animation:fade-in-pause-out 6s;-webkit-animation-fill-mode:both;-moz-animation:fade-in-pause-out 6s;-moz-animation-fill-mode:both;-o-animation:fade-in-pause-out 6s;-o-animation-fill-mode:both;-ms-animation:fade-in-pause-out 6s;-ms-animation-fill-mode:both}.alert .container{padding:.5em 0}.alert-info,.alert-warning,.alert-danger,.alert-success{box-shadow:0 2px 2px rgba(0,0,0,0.1)}.alert-info{background-color:rgba(64,176,224,0.9);color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,0.2)}.alert-warning{background-color:#ff9b08;color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,0.4)}.alert-warning .close{color:#444}.alert-warning .close:hover{color:#2b2b2b !important}.alert-danger{background-color:rgba(233,93,79,0.9);color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,0.2)}.alert-success{background-color:rgba(239,240,83,0.9);text-shadow:1px 1px 1px rgba(255,255,255,0.5)}.alert-success .close{color:#444}.alert-success .close:hover{color:#2b2b2b !important}.alert button.close{font-size:90%;padding:.2em .5em 0 0}.alert-info h1,.alert-info h2,.alert-info h3,.alert-info h4,.alert-danger h1,.alert-danger h2,.alert-danger h3,.alert-danger h4{color:#fff}.close{color:#fff;text-shadow:none;opacity:.5}.close:hover{color:#fff !important;background-color:transparent;opacity:1}.alert button.close{box-shadow:none}.alert button.close:hover{border:none;box-shadow:none}.table{border-collapse:initial}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{border-top:thin solid transparent;border-bottom:thin solid transparent}.table tr:hover td{border-top:thin solid #d8d8d8 !important;border-bottom:thin solid #d8d8d8 !important}.table-striped>tbody>tr:nth-child(2n+1)>td,.table-striped>tbody>tr:nth-child(2n+1)>th{background-color:#f0f0f0}.table-striped>tbody>tr:nth-child(2n+1):hover>td,.table-striped>tbody>tr:nth-child(2n+1):hover>th,.table-striped>tbody>tr:nth-child(2n):hover>td,.table-striped>tbody>tr:nth-child(2n):hover>th{background-color:#eee}.table .table-row-link:hover>tr,.table .table-row-link:hover>td{color:#109df0;cursor:pointer}tbody>tr.danger>td a,tbody>tr.info>td a,tbody>tr.warning>td a,tbody>tr.success>td a{font-weight:bold}tbody>tr.danger>td a:hover,tbody>tr.info>td a:hover,tbody>tr.warning>td a:hover,tbody>tr.success>td a:hover{text-decoration:underline !important}tbody>tr.danger>td a,tbody>tr.info>td a{color:#fff}tbody>tr.warning>td a,tbody>tr.success>td a{color:#444}.table tr.info:hover td{background-color:#2199cc !important;border-top:thin solid #2199cc !important;border-bottom:thin solid #2199cc !important}.table tr.danger:hover td{background-color:#e64838 !important;border-top:thin solid #e95d4f !important;border-bottom:thin solid #e95d4f !important}.table tr.warning:hover td{background-color:#f9a527 !important;border-top:thin solid #faaf40 !important;border-bottom:thin solid #faaf40 !important}.table tr.success:hover td{background-color:#d0d12f !important;border-top:thin solid #d5d644 !important;border-bottom:thin solid #d5d644 !important}.table-striped>tbody>tr.danger:nth-child(2n)>td,.table-striped>tbody>tr.danger:nth-child(2n)>th,.table-striped>tbody>tr.danger:nth-child(2n+1)>td,.table-striped>tbody>tr.danger:nth-child(2n+1)>th,.table-striped>tbody>tr.info:nth-child(2n)>td,.table-striped>tbody>tr.info:nth-child(2n)>th,.table-striped>tbody>tr.info:nth-child(2n+1)>td,.table-striped>tbody>tr.info:nth-child(2n+1)>th{color:#fff}.table>tbody>tr.success>td,.table-striped>tbody>tr.success:nth-child(2n)>td,.table-striped>tbody>tr.success:nth-child(2n)>th,.table-striped>tbody>tr.success:nth-child(2n+1)>td,.table-striped>tbody>tr.success:nth-child(2n+1)>th,.table-striped>tbody>tr.warning:nth-child(2n)>td,.table-striped>tbody>tr.warning:nth-child(2n)>th,.table-striped>tbody>tr.warning:nth-child(2n+1)>td,.table-striped>tbody>tr.warning:nth-child(2n+1)>th{color:#444}.table-striped>tbody>tr.danger:nth-child(2n)>td,.table-striped>tbody>tr.danger:nth-child(2n)>th{background-color:#ec7266}.table-striped>tbody>tr.danger:nth-child(2n+1)>td,.table-striped>tbody>tr.danger:nth-child(2n+1)>th{background-color:#e95d4f}.table-striped>tbody>tr.success:nth-child(2n)>td,.table-striped>tbody>tr.success:nth-child(2n)>th{background-color:#d0d12f}.table>tbody>tr.success>td,.table-striped>tbody>tr.success:nth-child(2n+1)>td,.table-striped>tbody>tr.success:nth-child(2n+1)>th{background-color:#d5d644}.table-striped>tbody>tr.warning:nth-child(2n)>td,.table-striped>tbody>tr.warning:nth-child(2n)>th{background-color:#fbc472}.table-striped>tbody>tr.warning:nth-child(2n+1)>td,.table-striped>tbody>tr.warning:nth-child(2n+1)>th{background-color:#faaf40}.table-striped>tbody>tr.info:nth-child(2n)>td,.table-striped>tbody>tr.info:nth-child(2n)>th{background-color:#6cc2e7}.table-striped>tbody>tr.info:nth-child(2n+1)>td,.table-striped>tbody>tr.info:nth-child(2n+1)>th{background-color:#40b0e0}.dataTable .group{font-size:200%;font-family:"Open Sans Condensed","Lucida Sans","Lucida Grande",sans-serif;text-shadow:1px 1px 0 rgba(0,0,0,0.2)}.dataTable .group td,.dataTable .group td:hover{background-color:#40b0e0 !important;color:#fff !important;border:none !important;border-bottom:2px solid #2199cc !important;padding-top:7px;padding-bottom:0}.dataTable .sorting{position:relative}.dataTable .fa-sort{font-size:80%;position:absolute;color:#aaa;top:12px;right:2px}header a.logo{display:block;position:relative;float:left;height:36px;font-family:"Open Sans Condensed","Lucida Sans","Lucida Grande",sans-serif !important;color:#515151;text-align:right;font-size:120%;background:url(https://www.blender.org/wp-content/themes/bthree/assets/images/logo.png) no-repeat;font-weight:lighter;line-height:180%;width:123px;opacity:1;margin:8px 0 0 0;background-size:123px 36px;transition:opacity .2s ease-in}@media (max-width: 767px){header a.logo{margin:12px 0 0 15px}}header a.logo:hover{color:#444;opacity:.8}footer{font-size:80%}footer a{color:#777 !important}footer a:hover{color:#109df0 !important}#footer-navigation{font-size:85%;margin-bottom:5px;color:#6a6a6a;border-top:thick solid #ddd}#footer-navigation ul{position:relative;margin:0;padding:0 0 10px 16px;list-style-type:none}#footer-navigation li{position:relative}#footer-navigation a{color:#6a6a6a}#footer-navigation a:hover{color:#109df0}#footer-navigation i{font-size:80%;position:absolute;left:-14px;top:20%}#footer-navigation h4{color:#585858;margin-bottom:5px}.breadcrumb>li+li:before{content:"";font-family:"FontAwesome"}.breadcrumb>.active{color:#919191}.well{overflow:hidden}.tooltip{font-size:14px;position:absolute}.tooltip.in{opacity:1}.tooltip-inner{margin:0 auto;background-color:#f8f8f8;color:#444;border-radius:3px;box-shadow:2px 2px 0 rgba(95,95,95,0.2)}.tooltip.bottom .tooltip-arrow{border-bottom-color:#f8f8f8;border-radius:6px}.tooltip.top .tooltip-arrow{border-top-color:#f8f8f8}.tooltip.bottom .tooltip-arrow{border-bottom-color:#f8f8f8}.tooltip.left .tooltip-arrow{border-left-color:#f8f8f8}.tooltip.right .tooltip-arrow{border-left-color:#f8f8f8}.popover .arrow{display:none}.popover{min-width:250px;background-color:transparent;border:none;border-radius:3px}.popover-title{background-color:#f8f8f8;font-size:110%;border-radius:0;display:none}.popover-content{font-size:14px;border-radius:3px;background-color:#f8f8f8;box-shadow:2px 2px 0 rgba(95,95,95,0.2)}.blink{transition:all 2s ease-in-out;-webkit-animation:blink 2s infinite ease-in-out;animation:blink 2s infinite ease-in-out;-webkit-animation-name:blink;animation-name:blink;-moz-animation-name:blink;-webkit-animation-direction:normal;animation-direction:normal;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}.blink.slowest{-webkit-animation-duration:12s;animation-duration:12s}.blink.slow{-webkit-animation-duration:6s;animation-duration:6s}.blink.fast{-webkit-animation-duration:1s;animation-duration:1s}.blink.fastest{-webkit-animation-duration:.5s;animation-duration:.5s}.table td.success{background-color:#dff0d8 !important}table.builders{width:100%}table.builders td.LastBuild{padding:0.5ex 2ex}table.builders td.Activity{padding-left:2ex}table.builders td a{display:block;padding:0.5ex 2ex} diff --git a/public_html/assets/sass/main.sass b/public_html/assets/sass/main.sass deleted file mode 100644 index 5845f75..0000000 --- a/public_html/assets/sass/main.sass +++ /dev/null @@ -1,20 +0,0 @@ -@import url(//fonts.googleapis.com/css?family=Open+Sans) -@import url(//fonts.googleapis.com/css?family=Open+Sans+Condensed:300) -@import url(../../assets_shared/css/font-borg.css) -@import ../../assets_shared/sass/main.sass - -.table td.success - background-color: #dff0d8 !important - -table.builders - width: 100% - -table.builders td.LastBuild - padding: 0.5ex 2ex - -table.builders td.Activity - padding-left: 2ex - -table.builders td a - display: block - padding: 0.5ex 2ex diff --git a/public_html/assets_shared b/public_html/assets_shared deleted file mode 160000 index 98b8939..0000000 --- a/public_html/assets_shared +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 98b8939012674c043cf0f52909eaef85a5f9ba7a diff --git a/public_html/bg_gradient.jpg b/public_html/bg_gradient.jpg deleted file mode 100644 index 677b254..0000000 Binary files a/public_html/bg_gradient.jpg and /dev/null differ diff --git a/public_html/default.css b/public_html/default.css deleted file mode 100644 index 87c2ae5..0000000 --- a/public_html/default.css +++ /dev/null @@ -1,621 +0,0 @@ - -.auth { -position:absolute; -top:5px; -right:40px; -} - -.alert { - color: #c30000; - background-color: #f2dcdc; - padding: 5px 5px 5px 25px; - margin-bottom: 20px; - border-top:1px solid #ccc; - border-bottom:1px solid #ccc; - border-color: #c30000; - font-size: 20px; -} -a:link,a:visited,a:active { - color: #444; -} - -.Project { - min-width: 6em; -} - -.LastBuild,.Activity { - padding: 0 0 0 4px; -} - -.LastBuild,.Activity,.Builder,.BuildStep { - min-width: 5em; -} - -/* Chromium Specific styles */ -div.BuildResultInfo { - color: #444; -} - -div.Announcement { - margin-bottom: 1em; -} - -div.Announcement>a:hover { - color: black; -} - -div.Announcement>div.Notice { - background-color: #afdaff; - padding: 0.5em; - font-size: 16px; - text-align: center; -} - -div.Announcement>div.Open { - border: 3px solid #8fdf5f; - padding: 0.5em; - font-size: 16px; - text-align: center; -} - -div.Announcement>div.Closed { - border: 5px solid #e98080; - padding: 0.5em; - font-size: 24px; - font-weight: bold; - text-align: center; -} - -td.Time { - color: #000; - border-bottom: 1px solid #aaa; - background-color: #eee; -} - -td.Activity,td.Change,td.Builder { - color: #333333; - background-color: #CCCCCC; -} - -td.Change { - border-radius: 5px; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; -} - -td.Event { - color: #777; - background-color: #ddd; - border-radius: 5px; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; -} - -td.Activity { - border-top-left-radius: 10px; - -webkit-border-top-left-radius: 10px; - -moz-border-radius-topleft: 10px; - min-height: 20px; - padding: 2px 0 2px 0; -} - -td.idle,td.waiting,td.offline,td.building { - border-top-left-radius: 0px; - -webkit-border-top-left-radius: 0px; - -moz-border-radius-topleft: 0px; -} - -.LastBuild { - border-top-left-radius: 5px; - -webkit-border-top-left-radius: 5px; - -moz-border-radius-topleft: 5px; - border-top-right-radius: 5px; - -webkit-border-top-right-radius: 5px; - -moz-border-radius-topright: 5px; -} - -/* Console view styles */ -td.DevStatus > table { - table-layout: fixed; -} - -td.DevRev { - padding: 4px 8px 4px 8px; - color: #333333; - border-top-left-radius: 5px; - -webkit-border-top-left-radius: 5px; - -moz-border-radius-topleft: 5px; - background-color: #eee; - width: 1%; -} - -td.DevRevCollapse { - border-bottom-left-radius: 5px; - -webkit-border-bottom-left-radius: 5px; - -moz-border-radius-bottomleft: 5px; -} - -td.DevName { - padding: 4px 8px 4px 8px; - color: #333333; - background-color: #eee; - width: 1%; - text-align: left; -} - -td.DevStatus { - padding: 4px 4px 4px 4px; - color: #333333; - background-color: #eee; -} - -td.DevSlave { - padding: 4px 4px 4px 4px; - color: #333333; - background-color: #eee; -} - -td.first { - border-top-left-radius: 5px; - -webkit-border-top-left-radius: 5px; - -moz-border-radius-topleft: 5px; -} - -td.last { - border-top-right-radius: 5px; - -webkit-border-top-right-radius: 5px; - -moz-border-radius-topright: 5px; -} - -td.DevStatusCategory { - border-radius: 5px; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; - border-width: 1px; - border-style: solid; -} - -td.DevStatusCollapse { - border-bottom-right-radius: 5px; - -webkit-border-bottom-right-radius: 5px; - -moz-border-radius-bottomright: 5px; -} - -td.DevDetails { - font-weight: normal; - padding: 8px 8px 8px 8px; - color: #333333; - background-color: #eee; - text-align: left; -} - -td.DevDetails li a { - padding-right: 5px; -} - -td.DevComment { - font-weight: normal; - padding: 8px 8px 8px 8px; - color: #333333; - background-color: #eee; - text-align: left; -} - -td.DevBottom { - border-bottom-right-radius: 5px; - -webkit-border-bottom-right-radius: 5px; - -moz-border-radius-bottomright: 5px; - border-bottom-left-radius: 5px; - -webkit-border-bottom-left-radius: 5px; - -moz-border-radius-bottomleft: 5px; -} - -td.Alt { - background-color: #ddd; -} - -.legend { - border-radius: 5px !important; - -webkit-border-radius: 5px !important; - -moz-border-radius: 5px !important; - width: 100px; - max-width: 100px; - text-align: center; - padding: 2px 2px 2px 2px; - height: 14px; - white-space: nowrap; -} - -.DevStatusBox { - text-align: center; - height: 20px; - padding: 0 2px; - line-height: 0; - white-space: nowrap; -} - -.DevStatusBox a { - opacity: 0.85; - border-width: 1px; - border-style: solid; - border-radius: 4px; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - display: block; - width: 90%; - height: 20px; - line-height: 20px; - margin-left: auto; - margin-right: auto; -} - -.DevStatusBox a.notinbuilder { - border-style: none; -} - -.DevSlaveBox { - text-align: center; - height: 10px; - padding: 0 2px; - line-height: 0; - white-space: nowrap; -} - -.DevSlaveBox a { - opacity: 0.85; - border-width: 1px; - border-style: solid; - border-radius: 4px; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - display: block; - width: 90%; - height: 10px; - line-height: 20px; - margin-left: auto; - margin-right: auto; -} - -a.noround { - border-radius: 0px; - -webkit-border-radius: 0px; - -moz-border-radius: 0px; - position: relative; - margin-top: -8px; - margin-bottom: -8px; - height: 36px; - border-top-width: 0; - border-bottom-width: 0; -} - -a.begin { - border-top-width: 1px; - position: relative; - margin-top: 0px; - margin-bottom: -7px; - height: 27px; - border-top-left-radius: 4px; - -webkit-border-top-left-radius: 4px; - -moz-border-radius-topleft: 4px; - border-top-right-radius: 4px; - -webkit-border-top-right-radius: 4px; - -moz-border-radius-topright: 4px; -} - -a.end { - border-bottom-width: 1px; - position: relative; - margin-top: -7px; - margin-bottom: 0px; - height: 27px; - border-bottom-left-radius: 4px; - -webkit-border-bottom-left-radius: 4px; - -moz-border-radius-bottomleft: 4px; - border-bottom-right-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -moz-border-radius-bottomright: 4px; -} - -.center_align { - text-align: center; -} - -.right_align { - text-align: right; -} - -.left_align { - text-align: left; -} - -div.BuildWaterfall { - border-radius: 7px; - -webkit-border-radius: 7px; - -moz-border-radius: 7px; - position: absolute; - left: 0px; - top: 0px; - background-color: #FFFFFF; - padding: 4px 4px 4px 4px; - float: left; - display: none; - border-width: 1px; - border-style: solid; -} - -/* LastBuild, BuildStep states / -.success { - background-color: #D5D644; - color: #40400E; - text-shadow: 1px 1px 0px rgba(255, 255, 255, 0.5); - border: thin solid #D0D12F; -} - -.failure { - color: #000; - background-color: #e88; - border-color: #A77272; -} - -.failure-again { - color: #000; - background-color: #eA9; - border-color: #A77272; -} - -.warnings { - color: #FFFFFF; - background-color: #fa3; - border-color: #C29D46; -} - -.skipped { - color: #000; - background: #AADDEE; - border-color: #AADDEE; -} - -.exception,.retry { - color: #FFFFFF; - background-color: #c6c; - border-color: #ACA0B3; -} - -.start { - color: #000; - background-color: #ccc; - border-color: #ccc; -} - -.running,.waiting,td.building { - color: #000; - background-color: #fd3; - border-color: #C5C56D; -} - -.paused { - color: #FFFFFF; - background-color: #8080FF; - border-color: #dddddd; -} - -.offline,td.offline { - color: #FFFFFF; - background-color: #777777; - border-color: #dddddd; -} - - -.start { - border-bottom-left-radius: 10px; - -webkit-border-bottom-left-radius: 10px; - -moz-border-radius-bottomleft: 10px; - border-bottom-right-radius: 10px; - -webkit-border-bottom-right-radius: 10px; - -moz-border-radius-bottomright: 10px; -} - -.notstarted { - border-width: 1px; - border-style: solid; - border-color: #aaa; - background-color: #fff; -} - -.closed { - background-color: #ff0000; -} - -.closed .large { - font-size: 1.5em; - font-weight: bolder; -} - -*/ -td.Project a:hover,td.start a:hover { - color: #000; -} - -.mini-box { - text-align: center; - height: 20px; - padding: 0 2px; - line-height: 0; - white-space: nowrap; -} - -.mini-box a { - border-radius: 0; - -webkit-border-radius: 0; - -moz-border-radius: 0; - display: block; - width: 100%; - height: 20px; - line-height: 20px; - margin-top: -30px; -} - -.mini-closed { - -box-sizing: border-box; - -webkit-box-sizing: border-box; - border: 4px solid red; -} - -/* grid styles */ -table.Grid { - border-collapse: collapse; -} - -table.Grid tr td { - padding: 0.2em; - margin: 0px; - text-align: center; -} - -table.Grid tr td.title { - font-size: 90%; - border-right: 1px gray solid; - border-bottom: 1px gray solid; -} - -table.Grid tr td.sourcestamp { - font-size: 90%; -} - -table.Grid tr td.builder { - text-align: right; - font-size: 90%; -} - -table.Grid tr td.build { - border: 1px gray solid; -} - -/* column container/ -div.column { - margin: 0 2em 2em 0; - float: left; -} -*/ -/* info tables */ -table.info { - border-spacing: 1px; -} - -table.info td { - padding: 0.1em 1em 0.1em 1em; - text-align: center; -} - -table.info th { - padding: 0.2em 1.5em 0.2em 1.5em; - text-align: center; -} - -table.info td.left { - text-align: left -} - -table.info td .reason { - display:block; - font-weight: bold; -} - -.alt { - background-color: #f6f6f6; -} - -li { - padding: 0.1em 1em 0.1em 1em; -} - -.result { - padding: 0.3em 1em 0.3em 1em; -} - -/* log view */ -.log * { - vlink: #800080; -} - -span.stdout { - color: black; -} - -span.stderr { - color: red; -} - -span.header { - color: blue; -} -span.ansi30 { - color: black; -} -span.ansi31 { - color: red; -} -span.ansi32 { - color: green; -} -span.ansi33 { - color: orange; -} -span.ansi34 { - color: yellow; -} -span.ansi35 { - color: purple; -} -span.ansi36 { - color: blue; -} -span.ansi37 { - color: white; -} - -/* revision & email */ -.revision .full { - display: none; -} - -.user .email { - display: none; -} - -pre { - white-space: pre-wrap; -} - -/* change comments (use regular colors here) */ -pre.comments>a:link,pre.comments>a:visited { - color: blue; -} - -pre.comments>a:active { - color: purple; -} - -form.command_forcebuild { - border-top: 1px solid black; - padding: .5em; - margin: .5em; -} - -form.command_forcebuild > .row { - border-top: 1px dotted gray; - padding: .5em 0; -} - -form.command_forcebuild .force-textarea > .label { - display: block; -} - -form.command_forcebuild .force-nested > .label { - font-weight: bold; - display: list-item; -} - -form.command_forcebuild .force-any .force-text { - display: inline; -} diff --git a/public_html/default.css.new b/public_html/default.css.new deleted file mode 100644 index 14f206d..0000000 --- a/public_html/default.css.new +++ /dev/null @@ -1,641 +0,0 @@ -body.interface { - margin-left: 30px; - margin-right: 30px; - margin-top: 20px; - margin-bottom: 50px; - padding: 0; - background: url(bg_gradient.jpg) repeat-x; - font-family: Verdana, sans-serif; - font-size: 10px; - background-color: #fff; - color: #333; -} - -.auth { -position:absolute; -top:5px; -right:40px; -} - -.alert { - color: #c30000; - background-color: #f2dcdc; - padding: 5px 5px 5px 25px; - margin-bottom: 20px; - border-top:1px solid #ccc; - border-bottom:1px solid #ccc; - border-color: #c30000; - font-size: 20px; -} -a:link,a:visited,a:active { - color: #444; -} - -table { - border-spacing: 1px 1px; -} - -table td { - padding: 3px 4px 3px 4px; - text-align: center; -} - -.Project { - min-width: 6em; -} - -.LastBuild,.Activity { - padding: 0 0 0 4px; -} - -.LastBuild,.Activity,.Builder,.BuildStep { - min-width: 5em; -} - -/* Chromium Specific styles */ -div.BuildResultInfo { - color: #444; -} - -div.Announcement { - margin-bottom: 1em; -} - -div.Announcement>a:hover { - color: black; -} - -div.Announcement>div.Notice { - background-color: #afdaff; - padding: 0.5em; - font-size: 16px; - text-align: center; -} - -div.Announcement>div.Open { - border: 3px solid #8fdf5f; - padding: 0.5em; - font-size: 16px; - text-align: center; -} - -div.Announcement>div.Closed { - border: 5px solid #e98080; - padding: 0.5em; - font-size: 24px; - font-weight: bold; - text-align: center; -} - -td.Time { - color: #000; - border-bottom: 1px solid #aaa; - background-color: #eee; -} - -td.Activity,td.Change,td.Builder { - color: #333333; - background-color: #CCCCCC; -} - -td.Change { - border-radius: 5px; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; -} - -td.Event { - color: #777; - background-color: #ddd; - border-radius: 5px; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; -} - -td.Activity { - border-top-left-radius: 10px; - -webkit-border-top-left-radius: 10px; - -moz-border-radius-topleft: 10px; - min-height: 20px; - padding: 2px 0 2px 0; -} - -td.idle,td.waiting,td.offline,td.building { - border-top-left-radius: 0px; - -webkit-border-top-left-radius: 0px; - -moz-border-radius-topleft: 0px; -} - -.LastBuild { - border-top-left-radius: 5px; - -webkit-border-top-left-radius: 5px; - -moz-border-radius-topleft: 5px; - border-top-right-radius: 5px; - -webkit-border-top-right-radius: 5px; - -moz-border-radius-topright: 5px; -} - -/* Console view styles */ -td.DevStatus > table { - table-layout: fixed; -} - -td.DevRev { - padding: 4px 8px 4px 8px; - color: #333333; - border-top-left-radius: 5px; - -webkit-border-top-left-radius: 5px; - -moz-border-radius-topleft: 5px; - background-color: #eee; - width: 1%; -} - -td.DevRevCollapse { - border-bottom-left-radius: 5px; - -webkit-border-bottom-left-radius: 5px; - -moz-border-radius-bottomleft: 5px; -} - -td.DevName { - padding: 4px 8px 4px 8px; - color: #333333; - background-color: #eee; - width: 1%; - text-align: left; -} - -td.DevStatus { - padding: 4px 4px 4px 4px; - color: #333333; - background-color: #eee; -} - -td.DevSlave { - padding: 4px 4px 4px 4px; - color: #333333; - background-color: #eee; -} - -td.first { - border-top-left-radius: 5px; - -webkit-border-top-left-radius: 5px; - -moz-border-radius-topleft: 5px; -} - -td.last { - border-top-right-radius: 5px; - -webkit-border-top-right-radius: 5px; - -moz-border-radius-topright: 5px; -} - -td.DevStatusCategory { - border-radius: 5px; - -webkit-border-radius: 5px; - -moz-border-radius: 5px; - border-width: 1px; - border-style: solid; -} - -td.DevStatusCollapse { - border-bottom-right-radius: 5px; - -webkit-border-bottom-right-radius: 5px; - -moz-border-radius-bottomright: 5px; -} - -td.DevDetails { - font-weight: normal; - padding: 8px 8px 8px 8px; - color: #333333; - background-color: #eee; - text-align: left; -} - -td.DevDetails li a { - padding-right: 5px; -} - -td.DevComment { - font-weight: normal; - padding: 8px 8px 8px 8px; - color: #333333; - background-color: #eee; - text-align: left; -} - -td.DevBottom { - border-bottom-right-radius: 5px; - -webkit-border-bottom-right-radius: 5px; - -moz-border-radius-bottomright: 5px; - border-bottom-left-radius: 5px; - -webkit-border-bottom-left-radius: 5px; - -moz-border-radius-bottomleft: 5px; -} - -td.Alt { - background-color: #ddd; -} - -.legend { - border-radius: 5px !important; - -webkit-border-radius: 5px !important; - -moz-border-radius: 5px !important; - width: 100px; - max-width: 100px; - text-align: center; - padding: 2px 2px 2px 2px; - height: 14px; - white-space: nowrap; -} - -.DevStatusBox { - text-align: center; - height: 20px; - padding: 0 2px; - line-height: 0; - white-space: nowrap; -} - -.DevStatusBox a { - opacity: 0.85; - border-width: 1px; - border-style: solid; - border-radius: 4px; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - display: block; - width: 90%; - height: 20px; - line-height: 20px; - margin-left: auto; - margin-right: auto; -} - -.DevStatusBox a.notinbuilder { - border-style: none; -} - -.DevSlaveBox { - text-align: center; - height: 10px; - padding: 0 2px; - line-height: 0; - white-space: nowrap; -} - -.DevSlaveBox a { - opacity: 0.85; - border-width: 1px; - border-style: solid; - border-radius: 4px; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - display: block; - width: 90%; - height: 10px; - line-height: 20px; - margin-left: auto; - margin-right: auto; -} - -a.noround { - border-radius: 0px; - -webkit-border-radius: 0px; - -moz-border-radius: 0px; - position: relative; - margin-top: -8px; - margin-bottom: -8px; - height: 36px; - border-top-width: 0; - border-bottom-width: 0; -} - -a.begin { - border-top-width: 1px; - position: relative; - margin-top: 0px; - margin-bottom: -7px; - height: 27px; - border-top-left-radius: 4px; - -webkit-border-top-left-radius: 4px; - -moz-border-radius-topleft: 4px; - border-top-right-radius: 4px; - -webkit-border-top-right-radius: 4px; - -moz-border-radius-topright: 4px; -} - -a.end { - border-bottom-width: 1px; - position: relative; - margin-top: -7px; - margin-bottom: 0px; - height: 27px; - border-bottom-left-radius: 4px; - -webkit-border-bottom-left-radius: 4px; - -moz-border-radius-bottomleft: 4px; - border-bottom-right-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -moz-border-radius-bottomright: 4px; -} - -.center_align { - text-align: center; -} - -.right_align { - text-align: right; -} - -.left_align { - text-align: left; -} - -div.BuildWaterfall { - border-radius: 7px; - -webkit-border-radius: 7px; - -moz-border-radius: 7px; - position: absolute; - left: 0px; - top: 0px; - background-color: #FFFFFF; - padding: 4px 4px 4px 4px; - float: left; - display: none; - border-width: 1px; - border-style: solid; -} - -/* LastBuild, BuildStep states */ -.success { - color: #000; - background-color: #8d4; - border-color: #4F8530; -} - -.failure { - color: #000; - background-color: #e88; - border-color: #A77272; -} - -.failure-again { - color: #000; - background-color: #eA9; - border-color: #A77272; -} - -.warnings { - color: #FFFFFF; - background-color: #fa3; - border-color: #C29D46; -} - -.skipped { - color: #000; - background: #AADDEE; - border-color: #AADDEE; -} - -.exception,.retry { - color: #FFFFFF; - background-color: #c6c; - border-color: #ACA0B3; -} - -.start { - color: #000; - background-color: #ccc; - border-color: #ccc; -} - -.running,.waiting,td.building { - color: #000; - background-color: #fd3; - border-color: #C5C56D; -} - -.paused { - color: #FFFFFF; - background-color: #8080FF; - border-color: #dddddd; -} - -.offline,td.offline { - color: #FFFFFF; - background-color: #777777; - border-color: #dddddd; -} - - -.start { - border-bottom-left-radius: 10px; - -webkit-border-bottom-left-radius: 10px; - -moz-border-radius-bottomleft: 10px; - border-bottom-right-radius: 10px; - -webkit-border-bottom-right-radius: 10px; - -moz-border-radius-bottomright: 10px; -} - -.notstarted { - border-width: 1px; - border-style: solid; - border-color: #aaa; - background-color: #fff; -} - -.closed { - background-color: #ff0000; -} - -.closed .large { - font-size: 1.5em; - font-weight: bolder; -} - -td.Project a:hover,td.start a:hover { - color: #000; -} - -.mini-box { - text-align: center; - height: 20px; - padding: 0 2px; - line-height: 0; - white-space: nowrap; -} - -.mini-box a { - border-radius: 0; - -webkit-border-radius: 0; - -moz-border-radius: 0; - display: block; - width: 100%; - height: 20px; - line-height: 20px; - margin-top: -30px; -} - -.mini-closed { - -box-sizing: border-box; - -webkit-box-sizing: border-box; - border: 4px solid red; -} - -/* grid styles */ -table.Grid { - border-collapse: collapse; -} - -table.Grid tr td { - padding: 0.2em; - margin: 0px; - text-align: center; -} - -table.Grid tr td.title { - font-size: 90%; - border-right: 1px gray solid; - border-bottom: 1px gray solid; -} - -table.Grid tr td.sourcestamp { - font-size: 90%; -} - -table.Grid tr td.builder { - text-align: right; - font-size: 90%; -} - -table.Grid tr td.build { - border: 1px gray solid; -} - -/* column container */ -div.column { - margin: 0 2em 2em 0; - float: left; -} - -/* info tables */ -table.info { - border-spacing: 1px; -} - -table.info td { - padding: 0.1em 1em 0.1em 1em; - text-align: center; -} - -table.info th { - padding: 0.2em 1.5em 0.2em 1.5em; - text-align: center; -} - -table.info td.left { - text-align: left -} - -table.info td .reason { - display:block; - font-weight: bold; -} - -.alt { - background-color: #f6f6f6; -} - -li { - padding: 0.1em 1em 0.1em 1em; -} - -.result { - padding: 0.3em 1em 0.3em 1em; -} - -/* log view */ -.log * { - vlink: #800080; - font-family: "Courier New", courier, monotype, monospace; -} - -span.stdout { - color: black; -} - -span.stderr { - color: red; -} - -span.header { - color: blue; -} -span.ansi30 { - color: black; -} -span.ansi31 { - color: red; -} -span.ansi32 { - color: green; -} -span.ansi33 { - color: orange; -} -span.ansi34 { - color: yellow; -} -span.ansi35 { - color: purple; -} -span.ansi36 { - color: blue; -} -span.ansi37 { - color: white; -} - -/* revision & email */ -.revision .full { - display: none; -} - -.user .email { - display: none; -} - -pre { - white-space: pre-wrap; -} - -/* change comments (use regular colors here) */ -pre.comments>a:link,pre.comments>a:visited { - color: blue; -} - -pre.comments>a:active { - color: purple; -} - -form.command_forcebuild { - border-top: 1px solid black; - padding: .5em; - margin: .5em; -} - -form.command_forcebuild > .row { - border-top: 1px dotted gray; - padding: .5em 0; -} - -form.command_forcebuild .force-textarea > .label { - display: block; -} - -form.command_forcebuild .force-nested > .label { - font-weight: bold; - display: list-item; -} - -form.command_forcebuild .force-any .force-text { - display: inline; -} diff --git a/public_html/favicon.ico b/public_html/favicon.ico deleted file mode 100644 index f125d24..0000000 Binary files a/public_html/favicon.ico and /dev/null differ diff --git a/public_html/lin.png b/public_html/lin.png deleted file mode 100644 index c666762..0000000 Binary files a/public_html/lin.png and /dev/null differ diff --git a/public_html/osx.png b/public_html/osx.png deleted file mode 100644 index 2ffe7e0..0000000 Binary files a/public_html/osx.png and /dev/null differ diff --git a/public_html/robots.txt b/public_html/robots.txt deleted file mode 100644 index b139ade..0000000 --- a/public_html/robots.txt +++ /dev/null @@ -1,10 +0,0 @@ -User-agent: * -Disallow: /waterfall -Disallow: /builders -Disallow: /changes -Disallow: /buildslaves -Disallow: /schedulers -Disallow: /one_line_per_build -Disallow: /builders -Disallow: /grid -Disallow: /tgrid diff --git a/public_html/win.png b/public_html/win.png deleted file mode 100644 index 912aebb..0000000 Binary files a/public_html/win.png and /dev/null differ diff --git a/state.sqlite b/state.sqlite deleted file mode 100644 index 76047ad..0000000 Binary files a/state.sqlite and /dev/null differ diff --git a/templates/build.html b/templates/build.html deleted file mode 100644 index 5a80533..0000000 --- a/templates/build.html +++ /dev/null @@ -1,253 +0,0 @@ -{% extends "layout.html" %} -{% import 'forms.html' as forms %} -{% from "change_macros.html" import change with context %} - -{% block content %} -
- -

-Builder {{ b.getBuilder().getName() }} -Build #{{ b.getNumber() }} -

- -{% if not b.isFinished() %} -

Build In Progress:

- - {% if when_time %} -

ETA: {{ when_time }} [{{ when }}]

- {% endif %} - - {{ current_step }} - - {% if authz.advertiseAction('stopBuild', request) %} -

Stop Build

- {{ forms.stop_build(build_url+"/stop", authz, on_all=False, short=False, label='This Build') }} - {% endif %} -{% else %} -

Results:

- - -

- {{ b.getText()|join(' ')|capitalize }} - -

- - {% if b.getTestResults() %} -

- {% endif %} -{% endif %} - -

-{% if sourcestamps|count == 1 %} -SourceStamp: -{% else %} -SourceStamps: -{% endif %} -

- -{% for sourcestamps_row in sourcestamps | batch(3, ' ') %} -
-{% for ss in sourcestamps_row %} -
-
-

{{ ss }}

- - {% set ss_class = cycler('alt','') %} - - {% if ss.project %} - - {% endif %} - - {% if ss.repository %} - - {% endif %} - - {% if ss.branch %} - - {% endif %} - - {% if ss.revision %} - - {% endif %} - - {% if got_revisions[ss] %} - - {% endif %} - - {% if ss.patch %} - - {% endif %} - - {% if ss.changes %} - - {% endif %} - - {% if not ss.branch and not ss.revision and not ss.patch and not ss.changes %} - - {% endif %} -
Project{{ ss.project|projectlink }}
Repository{{ ss.repository|repolink }}
Branch{{ ss.branch|e }}
Revision{{ ss.revision|revlink(ss.repository) }}
Got Revision{{ got_revisions[ss.codebase]|revlink(ss.repository) }}
PatchYES
Changes{{ ss.changes|count }} change{{ 's' if ss.changes|count > 1 else '' }}
Build of most recent revision
-
-{% endfor %} -
-{% endfor %} - -{# - # TODO: turn this into a table, or some other sort of definition-list - # that doesn't take up quite so much vertical space - #} - -

BuildSlave:

- -{% if slave_url %} -
{{ b.getSlavename()|e }} -{% else %} - {{ b.getSlavename()|e }} -{% endif %} - -

Reason:

-

-{{ b.getReason()|e }} -

- -

Steps and Logfiles:

- -{# - # TODO: - # urls = self.original.getURLs() - # ex_url_class = "BuildStep external" - # for name, target in urls.items(): - # text.append('[%s]' % - # (target, ex_url_class, html.escape(name))) - #} - -{# TODO(sergey): Move hardcoded span with inline-block into a CSS class. #} - -
    -{% for s in steps %} -
  1. - {{ s.name }} - - {{ s.text }}   {{ '( ' + s.time_to_run + ' )' if s.time_to_run else '' }} - - -
      - {% set item_class = cycler('alt', '') %} - {% for l in s.logs %} - {{ l.name }} - {% else %} - - no logs - - {% endfor %} - {% for u in s.urls %} - {{ u.logname }} - {% endfor %} -
    -
    -
  2. -{% endfor %} -
- -
-
- -

Build Properties:

- - - - -{% for p in properties %} -{% if p.source != "Force Build Form" %} - - - {% if p.short_value %} - - {% else %} - {% if p.value is not mapping %} - - {% else %} - - {% endif %} - {% endif %} - - -{% endif %} -{% endfor %} -
NameValueSource
{{ p.name|e }}{{ p.short_value|e }} .. [property value too long]{{ p.value|e }} - - {%- for key, value in p.value.items() recursive %} - - {% endfor %} -
{{ key|e }}{{ value|e }}
-
{{ p.source|e }}
-

Forced Build Properties:

- - - -{% for p in properties %} - {% if p.source == "Force Build Form" %} - - - - {% if p.text %} - - {% else %} - - {% endif %} - - {% endif %} -{% endfor %} -
NameLabelValue
{{ p.name|e }} - {% if p.label %} - {{ p.label }} - {% endif %} - {{ p.value|e }}
- -

Responsible Users:

- -{% if responsible_users %} -
    - {% for u in responsible_users %} -
  1. {{ u|user }}
  2. - {% endfor %} -
-{% else %} -

no responsible users

-{% endif %} - - -

Timing:

- - -{% if end %} - -{% endif %} - -
Start{{ start }}
End{{ end }}
Elapsed{{ elapsed }}
- - {% if authz.advertiseAction('forceBuild', request) %} -

Resubmit Build:

- {{ forms.rebuild_build(build_url+"/rebuild", authz, sourcestamps[0]) }} - {% endif %} - -
- -
- -{% if has_changes %} -
-

All Changes:

- {% for ss in sourcestamps %} - {% if ss.changes %} -

{{ ss.codebase }}:

-
    - {% for c in ss.changes %} -
  1. Change #{{ c.number }}

    - {{ change(c.asDict()) }} -
  2. - {% endfor %} -
- {% endif %} - {% endfor %} -
-{% endif %} - -{% endblock %} diff --git a/templates/build_line.html b/templates/build_line.html deleted file mode 100644 index 63d2117..0000000 --- a/templates/build_line.html +++ /dev/null @@ -1,61 +0,0 @@ -{% macro build_line(b, include_builder=False) %} - ({{ b.time }}) - Rev: {% if b.multiple_revs -%} - multiple rev - {%- else -%} - {{ b.rev_list[0]['rev']|shortrev(b.rev_list[0]['repo']) }} - {%- endif %} - {{ b.results }} - {% if include_builder %} - {{ b.builder_name }} - {% endif %} - #{{ b.buildnum }} - - {{ b.text|capitalize }} -{% endmacro %} - -{% macro build_tr(b, include_builder=False, loop=None) %} - - {{ b.time }} - {%- for rev in b.rev_list -%} - {%- if not loop.first %}
{% endif -%} - {%- if rev.get('codebase', '') %}{{ rev['codebase'] }}: {% endif -%} - {{ rev['rev']|shortrev(rev['repo']) }} - {%- endfor -%} - - {{ b.results }} - {%- if include_builder %} - {{ b.builder_name }} - {% endif %} - #{{ b.buildnum }} - {{ b.reason|e }} - {%- for user in (b.interested_users or []) -%} - {%- if not loop.first %}, {% endif -%} - {{ user|e }} - {%- endfor -%} - - {{ b.text|capitalize }} - -{% endmacro %} - -{% macro build_table(builds, include_builder=False) %} -{% if builds %} - - - - - - {%- if include_builder %} - - {% endif %} - - - - - {% for b in builds %} - {{ build_tr(b, include_builder, loop) }} - {% endfor %} -
TimeRevisionResultBuilderBuild #ReasonInfo
-{% else %} - No matching builds found -{% endif %} -{% endmacro %} diff --git a/templates/builder.html b/templates/builder.html deleted file mode 100644 index e9e2e16..0000000 --- a/templates/builder.html +++ /dev/null @@ -1,124 +0,0 @@ -{% from 'build_line.html' import build_table %} -{% import 'forms.html' as forms %} - -{% extends "layout.html" %} -{% block content %} - -

Builder {{ name }}

- -

(view in waterfall)

- -{% if description %} -
{{ description }}
-{% endif %} - -
- -{% if current %} -

Current Builds:

- -{% else %} -

No current builds

-{% endif %} - -{% if pending %} -

Pending build requests:

- - - {% if authz.advertiseAction('cancelPendingBuild', request) %} - {{ forms.cancel_pending_build(builder_url+"/cancelbuild", authz, short=False, id='all') }} - {% endif %} - -{% else %} -

No pending build requests

-{% endif %} - -

Recent builds:

- -{{ build_table(recent) }} - -Show more - -
-
- -

Buildslaves:

- -{% if slaves %} - - - - - -{% endif %} -{% for s in slaves %} - - - {% if s.connected %} - {% if s.paused %} - - {% else %} - - {% endif %} - {% else %} - - {% endif %} - - -{% else %} - -{% endfor %} -
NameStatusAdmin
{{ s.name|e }}pausedconnectedoffline{{ s.admin|email if s.admin else ""}}
no slaves attached
- -{% if authz.advertiseAction('pingBuilder', request) %} -

Ping slaves

- {{ forms.ping_builder(builder_url+"/ping", authz) }} -{% endif %} - -{% if authz.advertiseAction('forceBuild', request) and force_schedulers != {} %} -

Force build

- {{ forms.force_build(builder_url+"/force", authz, request, False, force_schedulers=force_schedulers,default_props=default_props) }} -{% endif %} - -
- -{% endblock %} diff --git a/templates/builders.html b/templates/builders.html deleted file mode 100644 index 6e627a9..0000000 --- a/templates/builders.html +++ /dev/null @@ -1,52 +0,0 @@ -{% extends 'layout.html' %} -{% import 'forms.html' as forms %} -{% from "box_macros.html" import box %} - -{% block content %} -

Builders: {{ branches|join(', ')|e }}

- - -{% for b in builders %} - - - {% if b.build_url %} - - {% else %} - - {% endif %} - {# Sybren: The following removes the last 'next in', because it's always duplicated, - # and removes some newlines (box() adds a
after every list item). #} - {{ box(text='
next in '.join(' '.join(b.current_box['text']).split('next in')[:-1]), class_=b.current_box['class']) }} - -{% endfor %} -
{{ b.name|e }} - {{ b.build_label }} -
{{ b.build_text }} -
no build
- -{% if num_building > 0 %} - {% if authz.advertiseAction('stopAllBuilds', request) or authz.advertiseAction('stopBuild', request) %} -

Stop selected builds

- {{ forms.stop_build(path_to_root+"builders/_selected/stopselected", authz, on_selected=True, builders=builders, label='Selected Builds') }} -

Stop all builds

- {{ forms.stop_build(path_to_root+"builders/_all/stopall", authz, on_all=True, label='All Builds') }} - {% endif %} -{% endif %} - -{% if authz.advertiseAction('cancelAllPendingBuilds', request) %} -

Cancel selected pending builds

- {{ forms.cancel_build(path_to_root+"builders/_selected/cancelpendingselected", authz, on_selected=True, builders=builders, label='Selected Pending Builds') }} -

Cancel All Pending Builds

- {{ forms.cancel_build(path_to_root+"builders/_all/cancelpendingall", authz, on_all=True, label='All Pending Builds') }} -{% endif %} - -{% if num_online > 0 %} - {% if authz.advertiseAction('forceAllBuilds', request) or authz.advertiseAction('forceBuild', request) %} -

Force selected builds

- {{ forms.force_build(path_to_root+"builders/_selected/forceselected", authz, request, on_selected=True, builders=builders, force_schedulers=force_schedulers, default_props=default_props) }} -

Force all builds

- {{ forms.force_build(path_to_root+"builders/_all/forceall", authz,request, on_all=True, force_schedulers=force_schedulers, default_props=default_props) }} - {% endif %} -{% endif %} - -{% endblock %} diff --git a/templates/buildslave.html b/templates/buildslave.html deleted file mode 100644 index c53cab0..0000000 --- a/templates/buildslave.html +++ /dev/null @@ -1,94 +0,0 @@ -{% from 'build_line.html' import build_table, build_line %} -{% import 'forms.html' as forms %} - -{% extends "layout.html" %} -{% block content %} -

Buildslave: {{ slavename|e }}

- -
- -{% if current %} -

Currently building:

- -{% else %} -

No current builds

-{% endif %} - -

Recent builds

-{{ build_table(recent, True) }} - -
-
-{% if access_uri %} - Click to Access Slave -{% endif %} - -{% if admin %} -

Administrator

-

{{ admin|email }}

-{% endif %} - -{% if host or info %} -

Slave information

- -{% if host %} - Buildbot-Slave {{ slave_version }} -

{{ host|e }}

-{% endif %} - -{% if info %} - - - -{% for info_name, info_val in info.iteritems() %} - - - {% if info_val is not mapping %} - - {% else %} - - {% endif %} - -{% endfor %} -
NameValue
{{ info_name|e }}{{ info_val|e }} - - {%- for key, value in info_val.items() recursive %} - - {% endfor %} -
{{ key|e }}{{ value|e }}
-
-{% endif %} -{% endif %} - -

Connection Status

-

-{{ connect_count }} connection(s) in the last hour -{% if not slave.isConnected() %} -(not currently connected) -{% else %} -

- {% if authz.advertiseAction('gracefulShutdown', request) %} -

Graceful Shutdown

- {% if slave.getGraceful() %} -

Slave will shut down gracefully when it is idle.

- {% else %} - {{ forms.graceful_shutdown(shutdown_url, authz) }} - {% endif %} - {% endif %} - {% if authz.advertiseAction('pauseSlave', request) %} -

Pause Slave

- {{ forms.pause_slave(pause_url, authz, slave.isPaused()) }} - {% endif %} -{% endif %} -
- -{% endblock %} diff --git a/templates/buildslaves.html b/templates/buildslaves.html deleted file mode 100644 index 167966e..0000000 --- a/templates/buildslaves.html +++ /dev/null @@ -1,76 +0,0 @@ -{% extends "layout.html" %} - -{% block content %} - -

Buildslaves

- -
- - - - - - {%- if show_builder_column %} - - {%- endif %} - - - - - - - -{% for s in slaves %} - - - - {%- if show_builder_column %} - - {%- endif %} - - - - - {%- if s.admin -%} - - {%- else -%} - - {%- endif -%} - - - - - {% if s.connected %} - {% if s.running_builds %} - - {% elif s.paused %} - - {% else %} - - {% endif %} - - {% else %} - - {% endif %} - - -{% endfor %} -
NameBuildersBuildBotAdminLast heard fromConnects/HourStatus
{{ s.name }} - {%- if s.builders %} - {%- for b in s.builders %} - {{ b.name }} - {%- endfor %} - {%- else %} - no builders - {%- endif -%} - {{ (s.version or '-')|e }}{{ s.admin|email }}- - {%- if s.last_heard_from_age -%} - {{ s.last_heard_from_age }} ({{ s.last_heard_from_time }}) - {%- endif -%} - - {{ s.connectCount }} - Running {{ s.running_builds }} build(s)PausedIdle Not connected
- -
- -{% endblock %} diff --git a/templates/directory.html b/templates/directory.html deleted file mode 100644 index 51b9e6b..0000000 --- a/templates/directory.html +++ /dev/null @@ -1,245 +0,0 @@ -{% extends "layout.html" %} - -{% block content %} - -{% if path == "download/" %} -

Directory listing for {{ path }}

-{% else %} -

Download Latest Builds

- -If you are interested to help developers improve an area of Blender you are experienced, mail bf-committers. -
-
- -
-

These builds are not as stable as releases, use at your own risk.

-
-{% endif %} - -{% if path == "/download/experimental/" %} -

-

These builds are for developer use only!

-

They contain highly experimental patches, which might ruin your day!

-

If you're NOT a developer, please leave this page IMMEDIATELY!

-

-{% endif %} - -{% set row_class = cycler('alt', '') %} - - - - - - - - - - - -{% for d in directories %} - {% if not ("experimental" in d,text) %} - - - - - - - - {% endif %} -{% endfor %} - -{% for f in files|sort %} - {% if ("mingw" in f.text) or ("vc1" in f.text) or ("blender-2.8" in f.text) or ("experimental" in f.text) %} - {% else %} - - {% if "mingw32" in f.text %} - - - - - - - - - {% endif %} -{% endfor %} - -{% for f in files|sort %} -{% if ("experimental" in f.text) %} - - {% if "mingw32" in f.text %} - - - - - - - -{% endif %} -{% endfor %} - -
Operating SystemVariationNameSizeBuilt On
{{ d.text }}{{ d.size }}{{ d.lastmodified }}
Windows 32 bit - {% elif "win32" in f.text %} - Windows 32 bit - {% elif "mingw64" in f.text %} - Windows 64 bit - {% elif "win64" in f.text %} - Windows 64 bit - {% elif "OSX" in f.text %} - {% if "x86_64" in f.text %} - Mac OS X 64 bit - {% else %} - Mac OS X 32 bit - {% endif %} - {% elif "linux" in f.text %} - {% if "x86_64" in f.text %} - Linux 64 bit - {% else %} - Linux 32 bit - {% endif %} - {% endif %} - - Official - {{ f.text }}{{ f.size }} - {{ f.lastmodified }} -
Windows 32 bit - {% elif "win32" in f.text %} - Windows 32 bit - {% elif "mingw64" in f.text %} - Windows 64 bit - {% elif "win64" in f.text %} - Windows 64 bit - {% elif "OSX" in f.text %} - {% if "x86_64" in f.text %} - Mac OS X 64 bit - {% else %} - Mac OS X 32 bit - {% endif %} - {% elif "linux" in f.text %} - {% if "x86_64" in f.text %} - Linux 64 bit - {% else %} - Linux 32 bit - {% endif %} - {% endif %} - Experimental Build Branch{{ f.text }}{{ f.size }}{{ f.lastmodified }}
- -
-

These builds are done by new compilers which are aiming to become official.

-
- - - - -{% for f in files|sort %} - {% if (not (("mingw" in f.text) or ("vc1" in f.text))) or ("blender-2.8" in f.text) %} - {% else %} - - {% if "mingw32" in f.text %} - - - - - - - - - {% endif %} -{% endfor %} -
Windows 32 bit - {% elif "win32" in f.text %} - Windows 32 bit - {% elif "mingw64" in f.text %} - Windows 64 bit - {% elif "win64" in f.text %} - Windows 64 bit - {% elif "OSX" in f.text %} - {% if "x86_64" in f.text %} - Mac OS X 64 bit - {% else %} - Mac OS X 32 bit - {% endif %} - {% elif "linux" in f.text %} - {% if "x86_64" in f.text %} - Linux 64 bit - {% else %} - Linux 32 bit - {% endif %} - {% endif %} - - {% if "mingw" in f.text %} - Experimental MinGW - {% elif "vc14" in f.text %} - Experimental Build Branch by VS 2015
(Windows Vista/7/8/10) - {% else %} - Official - {% endif %} -
{{ f.text }}{{ f.size }}{{ f.lastmodified }}
- -
-

These builds are from the Blender 2.8 project. Do not use in production nor save important files with it.

-
- -Currently we are aware of many issues in 2.8 and actively working to fix them.
-Since replying to reports takes time, we have decided to limit bug reports to module team members

-
- - - - -{% for f in files|sort %} - {% if ("blender-2.8" in f.text) %} - - {% if "mingw32" in f.text %} - - - - - - - - - {% endif %} -{% endfor %} -
Windows 32 bit - {% elif "win32" in f.text %} - Windows 32 bit - {% elif "mingw64" in f.text %} - Windows 64 bit - {% elif "win64" in f.text %} - Windows 64 bit - {% elif "OSX" in f.text %} - {% if "x86_64" in f.text %} - Mac OS X 64 bit - {% else %} - Mac OS X 32 bit - {% endif %} - {% elif "linux" in f.text %} - {% if "x86_64" in f.text %} - Linux 64 bit - {% else %} - Linux 32 bit - {% endif %} - {% endif %} - - {% if "mingw" in f.text %} - Experimental MinGW - {% elif "vc14" in f.text %} - {% if "blender-2.8" in f.text %} - Blender 2.8 Branch by VS 2015
(Windows Vista/7/8/10) - {% else %} - Experimental VS 2015
(Windows Vista/7/8/10) - {% endif %} - {% elif "win32-vc12" in f.text %} - Official Preview VS 2013
(Windows XP/Vista/7/8/10) - {% elif "win64-vc12" in f.text %} - Official Preview VS 2013
(Windows Vista/7/8/10) - {% elif "blender-2.8" in f.text %} - Blender 2.8 Branch - {% else %} - Official - {% endif %} -
{{ f.text }}{{ f.size }}{{ f.lastmodified }}
- - -{% endblock %} diff --git a/templates/forms.html b/templates/forms.html deleted file mode 100644 index d59a7af..0000000 --- a/templates/forms.html +++ /dev/null @@ -1,283 +0,0 @@ - -{% macro cancel_pending_build(cancel_url, authz, short=False, id='all') %} -
- {% if not short %} - {% if id == 'all' %} -

To cancel all builds, push the 'Cancel' button

-

To cancel individual builds, click the 'Cancel' buttons above.

- {% else %} -

To cancel this build, push the 'Cancel' button

- {% endif %} - {% endif %} - - -
-{% endmacro %} - -{% macro stop_change_builds(stopchange_url, changenum, authz) %} - {% if not changenum %} -
- {% if changenum %} -

To cancel all builds for this change, push the 'Cancel' button

- {% else %} -

To cancel builds for this builder for a given change, fill out the - following field and push the 'Cancel' button

- {% endif %} - - {% if changenum %} - - {% else %} -
- Change #: - -
- {% endif %} - -
- {% endif %} -{% endmacro %} - -{% macro stop_build(stop_url, authz, on_all=False, on_selected=False, builders=[], short=False, label="Build") %} - {% if not short %} -
-
- {% if not short %} - {% if on_all %} -

To stop all builds, fill out the following field and - push the Stop {{ label }} button

- {% elif on_selected %} -

To stop selected builds, select the builders, fill out the - following field and push the Stop {{ label }} button

- - {% for b in builders %} - - - - - {% endfor %} -
{{ b.name|e }}
- - {% else %} -

To stop this build, fill out the following field and - push the Stop {{ label }} button

- {% endif %} - {% endif %} - - {% if not short %} -

- Reason: - -

-
-

- {% else %} - - {% endif %} -
-
- {% endif %} -{% endmacro %} - -{% macro cancel_build(cancel_url, authz, on_all=False, on_selected=False, builders=[], short=False, label="Build") %} - {% if not short %} -
- {% if not short %} - {% if on_all %} -

To cancel all pending builds, fill out the following field and - push the Cancel {{ label }} button

- {% elif on_selected %} -

To cancel selected pending builds, select the builders, fill out the - following field and push the Cancel {{ label }} button

- - {% for b in builders %} - - - - - {% endfor %} -
{{ b.name|e }}
- - {% else %} -

To cancel this pending build, fill out the following field and - push the Cancel {{ label }} button

- {% endif %} - {% endif %} - - {% if not short %} -
- Reason: - -
- {% endif %} - - -
- {% endif %} -{% endmacro %} - -{# TODO(sergey): Move hardcoded span with inline-block into a CSS class. #} - -{% macro force_build_scheduler_parameter(f, authz, request, sch, default_props) %} - {% if f and not f.hide and (f.fullName != "username" or not authz.authenticated(request)) %} -

- {% if 'text' in f.type or 'int' in f.type %} - {{f.label}} - - {% elif 'bool' in f.type%} - - {{f.label}} - {% elif 'textarea' in f.type %} - {{f.label}} - - {% elif 'list' in f.type %} - {{f.label}} - - - - {% elif 'nested' in f.type %} - {% if f.label %}{{f.label}}{% endif %} - {% for subfield in f.fields %} - {{ force_build_scheduler_parameter(subfield, authz, request, sch, default_props) }} - {% endfor %} - {% endif %} -

- {% endif %} -{% endmacro %} - -{% macro force_build_one_scheduler(force_url, authz, request, on_all, on_selected, builders, sch, default_props) %} -
- -

{{ sch.name|e }}

- {% if on_all %} -

To force a build on all Builders, fill out the following fields - and push the 'Force Build' button

- {% elif on_selected %} -

To force a build on certain Builders, select the - builders, fill out the following fields and push the - 'Force Build' button

- - - {% for b in builders %} - {% if b.name in sch.builderNames %} - - - - - {% endif %} - {% endfor %} -
{{ b.name|e }}
- - {% else %} -

To force a build, fill out the following fields and - push the 'Force Build' button

- {% endif %} - - {% for f in sch.all_fields %} - {{ force_build_scheduler_parameter(f, authz, request, sch, default_props) }} - {% endfor %} -
-

-
-{% endmacro %} -{% macro force_build(force_url, authz, request, on_all=False, on_selected=False, builders=[], force_schedulers={},default_props={}) %} -
- {% for name, sch in force_schedulers.items() | sort %} - {{ force_build_one_scheduler(force_url, authz, request, on_all, on_selected, builders, sch, default_props=default_props) }} - {% endfor %} -
-{% endmacro %} - -{% macro graceful_shutdown(shutdown_url, authz) %} -
- -

To cause this slave to shut down gracefully when it is idle, - push the 'Graceful Shutdown' button

- -
-{% endmacro %} - -{% macro pause_slave(pause_url, authz, paused) %} -
- - {% if paused %} -

To cause this slave to start running new builds again, - push the 'Unpause Slave' button

- {% else %} -

To cause this slave to stop running new builds, - push the 'Pause Slave' button

- {% endif %} - - {% if paused %} - - {% else %} - - {% endif %} -
-{% endmacro %} - -{% macro clean_shutdown(shutdown_url, authz) %} -
-

To cause this master to shut down cleanly, push the 'Clean Shutdown' button.

-

No other builds will be started on this master, and the master will - stop once all current builds are finished.

- - -
-{% endmacro %} - -{% macro cancel_clean_shutdown(cancel_shutdown_url, authz) %} -
-

To cancel a previously initiated shutdown, push the 'Cancel Shutdown' button.

- - -
-{% endmacro %} - -{% macro ping_builder(ping_url, authz) %} -
-

To ping the buildslave(s), push the 'Ping' button

- -
-{% endmacro %} - -{% macro rebuild_build(rebuild_url, authz, ss) %} -
-
- {% if on_all %} -

To force a build on all Builders, fill out the following fields - and push the 'Force Build' button

- {% else %} -

To force a build, fill out the following fields and - push the 'Rebuild' button

- {% endif %} -

- Reason for re-running build: - -

-

- Rebuild using: - -

-
-

-
-
-{% endmacro %} - -{% macro show_users(users_url, authz) %} -
-

To show users, press the 'Show Users' button

- - -
-{% endmacro %} diff --git a/templates/grid.html b/templates/grid.html deleted file mode 100644 index 2540fde..0000000 --- a/templates/grid.html +++ /dev/null @@ -1,31 +0,0 @@ -{% extends "layout.html" %} -{% import 'grid_macros.html' as grid with context %} - -{% block content %} - -

Grid View

- - - - - - - {% for s in stamps %} - {{ grid.stamp_td(s) }} - {% endfor %} - - -{% for builder in builders %} - - {{ grid.builder_td(builder) }} - {% for build in builder.builds %} - {{ grid.build_td(build) }} - {% endfor %} - -{% endfor %} - -
{{ title }} - {{ grid.tag_title() }} -
- -{% endblock %} diff --git a/templates/grid_transposed.html b/templates/grid_transposed.html deleted file mode 100644 index 5e48d5e..0000000 --- a/templates/grid_transposed.html +++ /dev/null @@ -1,30 +0,0 @@ -{% extends "layout.html" %} -{% import 'grid_macros.html' as grid with context %} - -{% block content %} - -

Transposed Grid View

- - - - - - {% for builder in builders %} - {{ grid.builder_td(builder) }} - {% endfor %} - - -{% for i in range %} - - {{ grid.stamp_td(stamps[i]) }} - {% for b in builder_builds %} - {{ grid.build_td(b[i]) }} - {% endfor %} - -{% endfor %} - -
{{ title }} - {{ grid.tag_title() }} -
- -{% endblock %} diff --git a/templates/layout.html b/templates/layout.html deleted file mode 100644 index 66bfd88..0000000 --- a/templates/layout.html +++ /dev/null @@ -1,205 +0,0 @@ -{%- block doctype -%} - -{% endblock %} - - - {% block head %} - - {% if metatags %} - {{ metatags }} - {% endif %} - {% if refresh %} - - {% endif %} - {{ title|e }} - - - - - - - - - {% endblock %} - - - - {% block header -%} - - - - - -
- - - - - {% endblock %} - - {%- block barecontent -%} -
-
-
- {%- block content -%} - {%- endblock -%} -
-
-
- {%- endblock -%} -
- - {%- block footer -%} - - - - {% endblock -%} - - - - diff --git a/templates/root.html b/templates/root.html deleted file mode 100644 index d352206..0000000 --- a/templates/root.html +++ /dev/null @@ -1,17 +0,0 @@ -{% extends 'layout.html' %} -{% import 'forms.html' as forms %} - -{% block content %} - -

Blender Buildbot

- -
- -

Download latest builds

- -

Buildbot setup notes

- -
- -{% endblock %} - diff --git a/templates/waterfall.html b/templates/waterfall.html deleted file mode 100644 index d8738db..0000000 --- a/templates/waterfall.html +++ /dev/null @@ -1,66 +0,0 @@ -{% extends "layout.html" %} -{% from "box_macros.html" import box %} - -{% block content %} - -
-

Waterfall

- waterfall help -
- - - - - - -{% for b in builders %} - -{% endfor %} - - - - - -{% for b in builders %} - -{% endfor %} - - - - - - -{% for b in builders %} - -{% endfor %} - - -{# waterfall contents goes here #} -{% for i in range(gridlen) -%} - - {% for strip in grid -%} - {%- if strip[i] -%}{{ box(**strip[i]) }} - {%- elif no_bubble -%}{{ box() }} - {%- endif -%} - {%- endfor -%} - -{% endfor %} - -
- last build - - {{ b.name }}
- {{ " ".join(b.top) }} -
current activity - {{ "
".join(b.status) }} -
{{ tz }}changes{{ b.name }}
- -{% if nextpage %} - next page -{% endif %} - -{% if no_reload_page %} - Stop Reloading -{% endif %} - -{% endblock %}