partially restored commits page

This commit is contained in:
Anton Romanov 2019-03-28 14:59:35 +04:00
parent e74fcb316c
commit 539095c89e
7 changed files with 1922 additions and 4 deletions

View File

@ -10,7 +10,7 @@ public class MvcConfiguration extends WebMvcConfigurerAdapter {
@Override
public void addViewControllers(ViewControllerRegistry registry) {
registry.addViewController("/{articlename:\\w+}");
//registry.addViewController("/admin/{articlename:\\w+}");
registry.addViewController("/admin/{articlename:\\w+}");
registry.addViewController("/papers/{articlename:\\w+}");
registry.addViewController("/grants/{articlename:\\w+}");
registry.addViewController("/conferences/{articlename:\\w+}");

View File

@ -0,0 +1,226 @@
.odin-unselectable {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.odin-kill-padding {
padding: 0;
}
.odin-input-group {
padding-left: 15px !important;
padding-right: 15px !important;
}
.odin-closable .fa {
font-size: 1.5em;
margin-top: -1px;
}
.odin-closable .fa:hover:before {
content: "\f057";
}
/*
Odin Toolbar
*/
.odin-toolbar {
padding-left: 1px;
padding-bottom: 4px;
}
.odin-toolbar .odin-btn {
float: none !important;
}
.odin-btn {
min-width: 112px;
margin-right: 3px;
}
@media (min-width: 768px) {
.odin-btn {
min-width: 150px;
}
}
/*
Odin Paginator
*/
.odin-paginator {
margin: 0;
margin-top: 5px;
text-align: center;
}
.odin-paginator-content {
display: inline-block;
}
.odin-paginator-content a {
cursor: pointer;
color: black;
float: left;
padding: 6px 16px;
text-decoration: none;
transition: background-color .3s;
border-radius: 4px;
}
.odin-paginator-content i {
color: black;
float: left;
padding: 6px 16px;
}
.odin-paginator-content a.active {
background-color: #4CAF50;
color: white;
}
.odin-paginator-content a:hover:not(.active) {
background-color: #ddd;
}
/*
Odin Formatters
*/
.odin-negative {
color: red;
font-weight: bold;
}
/*
Odin Table
*/
.odin-table {
min-height: 324px;
border: 1px solid #ddd;
padding: 0;
margin: 0 0 0 1px;
background-color: #f8f8f8;
}
.odin-table > table {
margin-bottom: 0;
}
.odin-table > table > tbody > tr {
background-color: #fff;
}
.odin-table-pointed-line {
cursor: pointer;
}
.odin-table-selected-line {
background-color: #5bc0de !important;
}
.odin-table-selected-line:hover {
background-color: #6bd0ee !important;
}
/*
Odin Form
*/
.odin-form {
display: none;
position: absolute;
width: 100%;
height: 100%;
overflow: hidden;
top: 0;
left: 0;
bottom: 0;
right: 0;
z-index: 1500;
background: rgba(0, 0, 0, 0.5);
}
.odin-form .panel {
position: relative;
max-height: 95%;
max-width: 95%;
overflow: auto;
}
@media (min-width: 768px) {
.odin-form .panel {
max-width: 55%;
}
}
.odin-form .panel-footer {
padding: 5px 7px;
}
.odin-form .odin-btn {
float: right;
}
.odin-checkbox {
width: 20px;
height: 20px;
}
.odin-form .tab-pane {
padding-top: 5px;
}
/*
Odin Confirm Box
*/
.odin-confirm-box {
display: none;
position: absolute;
width: 100%;
height: 100%;
overflow: hidden;
top: 0;
left: 0;
bottom: 0;
right: 0;
z-index: 2000;
background: rgba(0, 0, 0, 0.5);
}
.odin-confirm-box .panel {
position: relative;
max-width: 95%;
}
.odin-confirm-box .panel-footer {
text-align: center;
}
@media (min-width: 768px) {
.odin-confirm-box .panel {
max-width: 25%;
}
}
.odin-confirm-box .panel-body {
text-align: center;
}
/*
Odin Table Box
*/
.odin-table-box {
z-index: 2500;
}
/*
Odin Simple Box
*/
@media (min-width: 768px) {
.odin-simple-form .panel {
max-width: 35%;
}
}

View File

@ -0,0 +1,10 @@
/* exported contextPath */
var contextPath = "";
var apiVersion = "/api/1.0";
var basePath = contextPath + apiVersion;
/* exported urlVersions */
var urlVersions = basePath + "/versions";
/* exported urlCommits */
var urlCommits = basePath + "/commits";

View File

@ -88,12 +88,12 @@ function getFromRest(url, callBack, errorCallBack) {
}
/* exported getFromRestWithVersion */
function getFromRestWithVersion(url, callBack, errorCallBack) {
getFromRestWithVersionAndParams(url, "", callBack, errorCallBack);
function getFromRest(url, callBack, errorCallBack) {
getFromRestWithParams(url, "", callBack, errorCallBack);
}
/* exported getFromRestWithVersionAndParams */
function getFromRestWithVersionAndParams(url, params, callBack, errorCallBack) {
function getFromRestWithParams(url, params, callBack, errorCallBack) {
getCurrentVersion(function (version) {
$.ajax({
url: url + "?versionId=" + version + params,

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,165 @@
<script type="text/template" id="createButton">
<button type="button" class="btn btn-success odin-btn"><i class="fa fa-plus-square-o"></i> <span>{0}</span></button>
</script>
<script type="text/template" id="editButton">
<button type="button" class="btn btn-info odin-btn"><i class="fa fa-pencil-square-o"></i> <span>{0}</span></button>
</script>
<script type="text/template" id="deleteButton">
<button type="button" class="btn btn-danger odin-btn"><i class="fa fa-trash-o"></i> <span>{0}</span></button>
</script>
<script type="text/template" id="okButton">
<button type="button" class="btn btn-success odin-btn"><span>{0}</span></button>
</script>
<script type="text/template" id="cancelButton">
<button type="button" class="btn btn-danger odin-btn"><span>{0}</span></button>
</script>
<script type="text/template" id="basicButton">
<button type="button" class="btn btn-basic odin-btn"><span>{0}</span></button>
</script>
<script type="text/template" id="buttonGroup">
<div class="input-group-btn">
</div>
</script>
<script type="text/template" id="chooseButton">
<button type="button" class="btn btn-default odin-choose-btn">
<i class="fa fa-ellipsis-h"></i>
</button>
</script>
<script type="text/template" id="clearButton">
<button type="button" class="btn btn-default odin-clear-btn">
<i class="fa fa-close"></i>
</button>
</script>
<script type="text/template" id="emptyDiv">
<div>
</div>
</script>
<script type="text/template" id="anchor">
<a href="{0}">{1}</a>
</script>
<script type="text/template" id="toolbar">
<div class="odin-toolbar">
</div>
</script>
<script type="text/template" id="paginator">
<div class="odin-paginator">
<div class="odin-paginator-content">
</div>
</div>
</script>
<script type="text/template" id="paginatorButton">
<a id="odin-paginator-{0}">{1}</a>
</script>
<script type="text/template" id="paginatorSeparator">
<i class="fa fa-ellipsis-h"></i>
</script>
<script type="text/template" id="tableBoolean">
<i class="fa {0}"></i>
</script>
<script type="text/template" id="tableNumericNegative">
<span class="odin-negative">{0}</span>
</script>
<script type="text/template" id="table">
<div class="table-responsive odin-table">
<table class="table table-bordered table-condensed">
<thead>
</thead>
<tbody>
</tbody>
</table>
</div>
</script>
<script type="text/template" id="tableLine">
<tr></tr>
</script>
<script type="text/template" id="tableHeadColumn">
<th class="col-xs-1">{0}</th>
</script>
<script type="text/template" id="tableBodyColumn">
<td></td>
</script>
<script type="text/template" id="formInputGroup">
<div class="form-group clearfix">
</div>
</script>
<script type="text/template" id="formLabel">
<label class="col-lg-2 control-label" for="{0}">{1}</label>
</script>
<script type="text/template" id="formInputWrapper">
<div class="col-lg-10">
</div>
</script>
<script type="text/template" id="formInputCheckbox">
<input type="checkbox" class="odin-checkbox" id="{0}" {1}>
</script>
<script type="text/template" id="formInput">
<input class="form-control" id="{0}" value="{1}" type="{2}">
</script>
<script type="text/template" id="form">
<form class="odin-form">
</form>
</script>
<script type="text/template" id="formConfirm">
<div class="odin-confirm-box">
</div>
</script>
<script type="text/template" id="formSimple">
<div class="odin-form">
</div>
</script>
<script type="text/template" id="formPanel">
<div class="panel panel-default">
</div>
</script>
<script type="text/template" id="formHeader">
<div class="panel-heading odin-unselectable odin-closable">
<span id="caption"></span>
<i class="fa fa-times-circle-o fa-pull-right"></i>
</div>
</script>
<script type="text/template" id="formContent">
<div class="panel-body">
</div>
</script>
<script type="text/template" id="formFooter">
<div class="panel-footer clearfix">
</div>
</script>
<script type="text/template" id="choseTable">
<div id="table-block" class=\"panel-body odin-kill-padding\"></div>
</script>
<script type="text/template" id="formTabs">
<ul class="nav nav-tabs">
<li class="active">
<a data-toggle="tab" href="#{0}">{1}</a>
</li>
</ul>
<div class="tab-content">
<div id="{0}" class="tab-pane active">
</div>
</div>
</script>
<script type="text/template" id="formTab">
<li>
<a data-toggle="tab" href="#{0}">{1}</a>
</li>
</script>
<script type="text/template" id="formTabContent">
<div id="{0}" class="tab-pane">
</div>
</script>
<script type="text/template" id="copyForm">
<div class="form-group clearfix">
<label class="col-lg-2 control-label" for="fromVersion">Из версии</label>
<div class="col-lg-10">
<select class="form-control" id="fromVersion" required="required">
</select>
</div>
</div>
<div class="form-group clearfix">
<label class="col-lg-2 control-label" for="version">В версию</label>
<div class="col-lg-10">
<input class="form-control" id="version" disabled="disabled">
</div>
</div>
</script>

View File

@ -23,6 +23,7 @@
<!-- Custom styles for this template -->
<link rel="stylesheet" href="/css/agency.css"/>
<link rel="stylesheet" href="/css/odin.css"/>
<!-- Bootstrap core JavaScript -->
<script src="/webjars/jquery/3.3.1-1/jquery.min.js"></script>
<script src="/webjars/bootstrap/4.1.0/js/bootstrap.bundle.min.js"></script>
@ -94,6 +95,10 @@
</footer>
<script src="/js/core.js"></script>
<script src="/js/config.js"></script>
<script src="/js/odin.js"></script>
<th:block layout:fragment="scripts">
</th:block>
<!-- Yandex.Metrika counter -->
<script type="text/javascript" >
(function (d, w, c) {