[refs #921] add new filter to the build list monitoring
This commit is contained in:
parent
7efae107eb
commit
e5db61197e
Binary file not shown.
After Width: | Height: | Size: 268 B |
|
@ -34,9 +34,8 @@ $(document).ready(function() {
|
|||
});
|
||||
|
||||
$('#build_list_save_to_repository_id').trigger('change');
|
||||
});
|
||||
|
||||
function setBranchSelected(selected_option) {
|
||||
function setBranchSelected(selected_option) {
|
||||
var pl_name = selected_option.text().match(/([\w-.]+)\/[\w-.]+/)[1];
|
||||
var bl_version_sel = $('#build_list_project_version');
|
||||
var branch_pl_opt = bl_version_sel.find('option[value="' + pl_name + '"]');
|
||||
|
@ -48,4 +47,36 @@ function setBranchSelected(selected_option) {
|
|||
// hack for FF to force render of select box.
|
||||
bl_version_sel[0].innerHTML = bl_version_sel[0].innerHTML;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
var ownership_btn = $('.btn.ownership');
|
||||
ownership_btn.click(function() {
|
||||
ownership_btn.removeClass('active');
|
||||
$('#filter_ownership').val($(this).val());
|
||||
$(this).addClass('active');
|
||||
return false;
|
||||
});
|
||||
|
||||
var perpage_btn = $('.btn.per_page');
|
||||
perpage_btn.click(function() {
|
||||
perpage_btn.removeClass('active');
|
||||
$('#per_page').val($(this).val());
|
||||
$(this).addClass('active');
|
||||
return false;
|
||||
});
|
||||
|
||||
$('a#updated_at_clear').click(function() {
|
||||
var tmp = $(this).attr('href');
|
||||
tmp = $(tmp);
|
||||
$($(this).attr('href')).val('');
|
||||
return false;
|
||||
});
|
||||
|
||||
$('#filter_clear').click(function() {
|
||||
$('form .input_cleanse').val('');
|
||||
$('.btn-group .btn').removeClass('active');
|
||||
if(ownership_btn.length > 0) { ownership_btn[0].click(); }
|
||||
perpage_btn[0].click();
|
||||
return false;
|
||||
});
|
||||
});
|
||||
|
|
|
@ -3,3 +3,4 @@
|
|||
@import "design/git";
|
||||
@import "design/common";
|
||||
@import "design/custom";
|
||||
@import "design/build_lists_monitoring";
|
||||
|
|
|
@ -0,0 +1,748 @@
|
|||
#lleo_dialog, #lleo_dialog * {
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
background: none !important;
|
||||
border: none 0 !important;
|
||||
position: static !important;
|
||||
vertical-align: baseline !important;
|
||||
font: normal 13px Arial, Helvetica !important;
|
||||
line-height: 15px !important;
|
||||
color: #000 !important;
|
||||
overflow: visible !important;
|
||||
width: auto !important;
|
||||
height: auto !important;
|
||||
float: none !important;
|
||||
visibility: visible !important;
|
||||
text-align: left !important;
|
||||
border-collapse: separate !important;
|
||||
border-spacing: 2px !important;
|
||||
}
|
||||
|
||||
#lleo_dialog iframe {
|
||||
height: 0 !important;
|
||||
width: 0 !important;
|
||||
}
|
||||
|
||||
#lleo_dialog {
|
||||
position: absolute !important;
|
||||
background: #fff !important;
|
||||
border: solid 1px #ccc !important;
|
||||
padding: 7px 0 0 !important;
|
||||
left: -999px;
|
||||
top: -999px;
|
||||
/*max-width: 450px !important;*/
|
||||
width: 440px !important;
|
||||
overflow: hidden;
|
||||
display: block !important;
|
||||
z-index: 999999999 !important;
|
||||
opacity: 0 !important;
|
||||
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.18) !important;
|
||||
-moz-border-radius: 3px !important;
|
||||
-webkit-border-radius: 3px !important;
|
||||
border-radius: 3px !important;
|
||||
}
|
||||
#lleo_dialog.lleo_show {
|
||||
opacity: 1 !important;
|
||||
-webkit-transition: opacity 0.3s !important;
|
||||
}
|
||||
#lleo_dialog input::-webkit-input-placeholder {
|
||||
color: #aaa !important;
|
||||
}
|
||||
#lleo_dialog .lleo_has_pic #lleo_word {
|
||||
margin-right: 80px !important;
|
||||
}
|
||||
#lleo_dialog #lleo_translationsCopntainer1 {
|
||||
position: relative !important;
|
||||
}
|
||||
#lleo_dialog #lleo_translationsCopntainer2 {
|
||||
padding: 7px 0 0 !important;
|
||||
vertical-align: middle !important;
|
||||
}
|
||||
#lleo_dialog #lleo_word {
|
||||
color: #000 !important;
|
||||
margin: 0 5px 2px 0 !important;
|
||||
/*float: left !important;*/
|
||||
}
|
||||
#lleo_dialog .lleo_has_sound #lleo_word {
|
||||
margin-left: 17px !important;
|
||||
}
|
||||
#lleo_dialog #lleo_text {
|
||||
font-weight: bold !important;
|
||||
color: #d56e00 !important;
|
||||
text-decoration: none !important;
|
||||
cursor: default !important;
|
||||
}
|
||||
#lleo_dialog #lleo_text.lleo_known {
|
||||
cursor: pointer !important;
|
||||
text-decoration: underline !important;
|
||||
}
|
||||
#lleo_dialog #lleo_closeBtn {
|
||||
position: absolute !important;
|
||||
right: 6px !important;
|
||||
top: 5px !important;
|
||||
line-height: 1px !important;
|
||||
text-decoration: none !important;
|
||||
font-weight: bold !important;
|
||||
font-size: 0 !important;
|
||||
color: #aaa !important;
|
||||
display: block !important;
|
||||
padding: 2px !important;
|
||||
z-index: 9999999999 !important;
|
||||
width: 7px !important;
|
||||
height: 7px !important;
|
||||
padding: 0 !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_optionsBtn {
|
||||
position: absolute !important;
|
||||
right: 1px !important;
|
||||
top: 12px !important;
|
||||
line-height: 1px !important;
|
||||
text-decoration: none !important;
|
||||
font-weight: bold !important;
|
||||
font-size: 13px !important;
|
||||
color: #aaa !important;
|
||||
padding: 2px !important;
|
||||
display: none;
|
||||
}
|
||||
#lleo_dialog #lleo_optionsBtn img{
|
||||
width: 12px !important;
|
||||
height: 12px !important;
|
||||
}
|
||||
#lleo_dialog #lleo_sound {
|
||||
float: left !important;
|
||||
width: 16px !important;
|
||||
height: 16px !important;
|
||||
margin-left: 12px !important;
|
||||
background: 0 0 no-repeat !important;
|
||||
cursor: pointer !important;
|
||||
display: none !important;
|
||||
}
|
||||
#lleo_dialog .lleo_has_sound #lleo_sound {
|
||||
display: block !important;
|
||||
}
|
||||
#lleo_dialog #lleo_picOuter {
|
||||
position: absolute !important;
|
||||
float: right !important;
|
||||
right: 29px;
|
||||
top: 0;
|
||||
display: none !important;
|
||||
z-index: 9 !important;
|
||||
}
|
||||
#lleo_dialog .lleo_has_pic #lleo_picOuter {
|
||||
display: block !important;
|
||||
}
|
||||
#lleo_dialog #lleo_picOuter:hover {
|
||||
z-index: 11 !important;
|
||||
}
|
||||
#lleo_dialog #lleo_pic,
|
||||
#lleo_dialog #lleo_picBig {
|
||||
position: absolute !important;
|
||||
top: 0 !important;
|
||||
right: 0 !important;
|
||||
border: solid 2px #fff !important;
|
||||
-moz-border-radius: 2px !important;
|
||||
-webkit-border-radius: 2px !important;
|
||||
border-radius: 2px !important;
|
||||
z-index: 1 !important;
|
||||
}
|
||||
#lleo_dialog #lleo_pic {
|
||||
position: relative !important;
|
||||
border: none !important;
|
||||
width: 34px !important;
|
||||
}
|
||||
#lleo_dialog #lleo_picBig {
|
||||
box-shadow: -1px 2px 4px rgba(0,0,0,0.3);
|
||||
z-index: 2 !important;
|
||||
opacity: 0 !important;
|
||||
visibility: hidden !important;
|
||||
}
|
||||
#lleo_dialog #lleo_picOuter:hover #lleo_picBig {
|
||||
visibility: visible !important;
|
||||
opacity: 1 !important;
|
||||
-webkit-transition: opacity 0.3s !important;
|
||||
-webkit-transition-delay: 0.3s !important;
|
||||
}
|
||||
#lleo_dialog #lleo_transcription {
|
||||
color: #486D85 !important;
|
||||
margin: 0 0 4px 29px !important;
|
||||
color: #aaaaaa !important;
|
||||
}
|
||||
#lleo_dialog .lleo_no_trans {
|
||||
color: #aaa !important;
|
||||
}
|
||||
#lleo_dialog .ll-translation-counter {
|
||||
float: right !important;
|
||||
font-size: 11px !important;
|
||||
color: #aaa !important;
|
||||
padding: 2px 2px 1px 10px !important;
|
||||
}
|
||||
|
||||
#lleo_dialog .ll-translation-text {
|
||||
float: left !important;
|
||||
width: 80% !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_trans a {
|
||||
color: #3F669F !important;
|
||||
padding: 1px 4px !important;
|
||||
text-decoration: none !important;
|
||||
text-overflow: ellipsis !important;
|
||||
overflow: hidden !important;
|
||||
}
|
||||
|
||||
#lleo_dialog .ll-translation-item {
|
||||
width: 100% !important;
|
||||
float: left !important;
|
||||
padding:1px 4px;
|
||||
color: #3F669F !important;
|
||||
padding: 3px !important;
|
||||
border: solid 1px white !important;
|
||||
-moz-border-radius: 2px !important;
|
||||
-webkit-border-radius: 2px !important;
|
||||
border-radius: 2px !important;
|
||||
}
|
||||
|
||||
#lleo_dialog .ll-translation-item:hover {
|
||||
border: solid 1px #9FC2C9 !important;
|
||||
background: #EDF4F6 !important;
|
||||
cursor: pointer !important;
|
||||
}
|
||||
|
||||
#lleo_dialog .ll-translation-marker {
|
||||
margin: 0px 5px 2px 2px !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_icons {
|
||||
margin: 10px 0 7px !important;
|
||||
color: #aaa !important;
|
||||
line-height: 20px !important;
|
||||
font-size: 11px !important;
|
||||
clear: both !important;
|
||||
padding-left: 16px !important;
|
||||
}
|
||||
#lleo_icons a {
|
||||
display: inline-block !important;
|
||||
width: 16px !important;
|
||||
height: 16px !important;
|
||||
margin: 0 0 -2px 3px !important;
|
||||
text-decoration: none !important;
|
||||
background: 0 0 no-repeat !important;
|
||||
opacity: 0.5 !important;
|
||||
}
|
||||
#lleo_icons a:hover {
|
||||
opacity: 1 !important;
|
||||
}
|
||||
#lleo_icons a.lleo_google {background-position:-34px 0 !important;}
|
||||
#lleo_icons a.lleo_multitran {background-position:-64px 0 !important;}
|
||||
#lleo_icons a.lleo_lingvo {background-position:-51px 0 !important; width: 12px !important;}
|
||||
#lleo_icons a.lleo_dict {background-position:-17px 0 !important;}
|
||||
#lleo_icons a.lleo_linguee {background-position:-81px 0 !important;}
|
||||
#lleo_icons a.lleo_michaelis {background-position:-98px 0 !important;}
|
||||
|
||||
#lleo_dialog #lleo_contextContainer {
|
||||
margin: 0 !important;
|
||||
padding: 3px 15px 3px 10px !important;
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eee)) !important;
|
||||
border-bottom: solid 1px #ddd !important;
|
||||
border-top-left-radius: 3px !important;
|
||||
border-top-right-radius: 3px !important;
|
||||
display: none !important;
|
||||
overflow: hidden !important;
|
||||
}
|
||||
#lleo_dialog .lleo_has_context #lleo_contextContainer {
|
||||
display: block !important;
|
||||
}
|
||||
#lleo_dialog #lleo_context {
|
||||
color: #444 !important;
|
||||
text-shadow: 1px 1px 0 #f4f4f4 !important;
|
||||
line-height: 12px !important;
|
||||
font-size: 11px !important;
|
||||
margin-left: 2px !important;
|
||||
}
|
||||
#lleo_dialog #lleo_context b {
|
||||
line-height: 12px !important;
|
||||
color: #000 !important;
|
||||
font-weight: bold !important;
|
||||
font-size: 11px !important;
|
||||
}
|
||||
#lleo_dialog #lleo_gBrand {
|
||||
color: #aaa !important;
|
||||
font-size: 10px !important;
|
||||
/*padding-right: 52px !important;*/
|
||||
padding-bottom: 14px !important;
|
||||
margin: -3px 4px 0 4px !important;
|
||||
background: left bottom no-repeat !important;
|
||||
display: inline-block !important;
|
||||
float: right !important;
|
||||
}
|
||||
#lleo_dialog #lleo_gBrand.hidden {
|
||||
display: none !important;
|
||||
}
|
||||
#lleo_dialog #lleo_translateContextLink {
|
||||
color: #444 !important;
|
||||
text-shadow: 1px 1px 0 #f4f4f4 !important;
|
||||
background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#ddd)) !important;
|
||||
border: solid 1px !important;
|
||||
box-shadow: 1px 1px 0 #f6f6f6 !important;
|
||||
border-color: #999 #aaa #aaa #999 !important;
|
||||
-moz-border-radius: 2px !important;
|
||||
-webkit-border-radius: 2px !important;
|
||||
border-radius: 2px !important;
|
||||
padding: 0 3px !important;
|
||||
font-size: 11px !important;
|
||||
text-decoration: none !important;
|
||||
margin: 1px 5px 0 !important;
|
||||
display: inline-block !important;
|
||||
white-space: nowrap !important;
|
||||
}
|
||||
#lleo_dialog #lleo_translateContextLink:hover {
|
||||
background: #f8f8f8 !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_setTransForm {
|
||||
display: block !important;
|
||||
margin-top: 3px !important;
|
||||
padding-top: 5px !important;
|
||||
/* Set position and background because the form might be overlapped by an image when no translations */
|
||||
position: relative !important;
|
||||
background: #fff !important;
|
||||
z-index: 10 !important;
|
||||
padding-bottom: 10px !important;
|
||||
padding-left: 16px !important;
|
||||
}
|
||||
#lleo_dialog .lleo-custom-translation {
|
||||
padding: 4px 5px !important;
|
||||
border: solid 1px #ddd !important;
|
||||
-moz-border-radius: 2px !important;
|
||||
-webkit-border-radius: 2px !important;
|
||||
border-radius: 2px !important;
|
||||
width: 90% !important;
|
||||
min-width: 270px !important;
|
||||
background: -webkit-gradient(linear, 0 0, 0 20, from(#f1f1f1), to(#fff)) !important;
|
||||
font: normal 13px Arial, Helvetica !important;
|
||||
line-height: 15px !important;
|
||||
}
|
||||
#lleo_dialog .lleo-custom-translation:hover {
|
||||
border: solid 1px #aaa !important;
|
||||
}
|
||||
#lleo_dialog .lleo-custom-translation:focus {
|
||||
background: #FFFEC9 !important;
|
||||
}
|
||||
|
||||
#lleo_dialog *.hidden {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
#lleo_dialog .infinitive{
|
||||
color: #D56E00 !important;
|
||||
text-decoration: none;
|
||||
border-bottom: 1px dotted #D56E00 !important;
|
||||
}
|
||||
#lleo_dialog .infinitive:hover{
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_trans{
|
||||
zoom: 1;
|
||||
border-top: 1px solid #eeeeee !important;
|
||||
margin: 10px 0 0 !important;
|
||||
padding: 5px 30px 0 14px !important;
|
||||
}
|
||||
|
||||
#lleo_dialog .lleo_clearfix {
|
||||
display: block !important;
|
||||
clear: both !important;
|
||||
visibility: hidden !important;
|
||||
height: 0 !important;
|
||||
font-size: 0 !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_markBlock {
|
||||
background: #eeeeee !important;
|
||||
cursor: pointer !important;
|
||||
border-bottom-left-radius: 3px !important;
|
||||
border-bottom-right-radius: 3px !important;
|
||||
border-collapse: separate !important;
|
||||
border-spacing: 2px !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_markBlock img{
|
||||
width: 14px !important;
|
||||
height: 14px !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_markBlock .icon-cell {
|
||||
padding: 5px 2px 5px 16px !important;
|
||||
height: 17px !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_markBlock .wide-cell {
|
||||
width: 100% !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_markBlock .text-cell {
|
||||
color: #999999 !important;
|
||||
font: normal 13px Arial, Helvetica !important;
|
||||
text-shadow: 0 1px #fff !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_markBlock td {
|
||||
vertical-align: middle !important;
|
||||
border-collapse: separate !important;
|
||||
border-spacing: 2px !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_picOuter table{
|
||||
width: 44px !important;
|
||||
position: absolute !important;
|
||||
right: 0 !important;
|
||||
vertical-align: middle !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_picOuter td{
|
||||
width: 38px !important;
|
||||
height: 38px !important;
|
||||
border: 1px solid #eeeeee !important;
|
||||
vertical-align: middle !important;
|
||||
text-align: center !important;
|
||||
}
|
||||
|
||||
#lleo_dialog #lleo_picOuter td div {
|
||||
height: 38px !important;
|
||||
overflow: hidden !important;
|
||||
}
|
||||
.ll-content-notification *{
|
||||
letter-spacing: normal !important;
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
background: none !important;
|
||||
border: 0 !important;
|
||||
float: none !important;
|
||||
text-align: left !important;
|
||||
text-decoration: none !important;
|
||||
font: normal 15px 'Lucida Grande', 'Lucida Sans Unicode', Lucida, Arial, Helvetica, sans-serif !important;
|
||||
}
|
||||
|
||||
.ll-content-notification {
|
||||
vertical-align: baseline !important;
|
||||
color: #000 !important;
|
||||
overflow: visible !important;
|
||||
visibility: visible !important;
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
position: fixed !important;
|
||||
background: #fff !important;
|
||||
border: solid 1px #AAA !important;
|
||||
/*
|
||||
left: -999px;
|
||||
top: -999px;
|
||||
*/
|
||||
width: auto;
|
||||
/* width: 300px !important; */
|
||||
display: block;
|
||||
z-index: 999999999 !important;
|
||||
-webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.18) !important;
|
||||
-moz-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.18) !important;
|
||||
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.18) !important;
|
||||
-webkit-border-radius: 3px !important;
|
||||
-moz-border-radius: 3px !important;
|
||||
border-radius: 3px !important;
|
||||
overflow: hidden !important;
|
||||
/* opacity: 0 !important; */
|
||||
transition: opacity 0.8s !important;
|
||||
-moz-transition: opacity 0.8s !important; /* Firefox 4 */
|
||||
-webkit-transition: opacity 0.8s !important; /* Safari and Chrome */
|
||||
-o-transition: opacity 0.8s !important; /* Opera */
|
||||
cursor: default !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-shown {
|
||||
opacity: 1 !important;
|
||||
transition: opacity 0.8s !important;
|
||||
-moz-transition: opacity 0.8s !important; /* Firefox 4 */
|
||||
-webkit-transition: opacity 0.8s !important; /* Safari and Chrome */
|
||||
-o-transition: opacity 0.8s !important; /* Opera */
|
||||
}
|
||||
|
||||
.ll-content-notification-header {
|
||||
border: 0 !important;
|
||||
margin: 0 !important;
|
||||
background: url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAABCAIAAABsYngUAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAadEVYdFNvZnR3YXJlAFBhaW50Lk5FVCB2My41LjEwMPRyoQAAABJJREFUGFdjePHmCxw9e/UZjgAVYhYtk8xZqAAAAABJRU5ErkJggg==) !important;
|
||||
border-bottom: solid 1px #CCC !important;
|
||||
padding: 1px 4px !important;
|
||||
min-height: 18px !important;
|
||||
width: 100% !important;
|
||||
-webkit-border-top-left-radius: 3px !important;
|
||||
-webkit-border-top-right-radius: 3px !important;
|
||||
-moz-border-radius-topleft: 3px !important;
|
||||
-moz-border-radius-topright: 3px !important;
|
||||
border-top-left-radius: 3px !important;
|
||||
border-top-right-radius: 3px !important;
|
||||
border-collapse: collapse !important;
|
||||
border-spacing: 0 !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-header-pic {
|
||||
border: 0 !important;
|
||||
margin: 0 !important;
|
||||
padding: 3px 0 0 3px !important;
|
||||
width: 20px !important;
|
||||
vertical-align: top !important;
|
||||
line-height: 1px !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-header-pic img{
|
||||
border: 0 !important;
|
||||
padding: 0 !important;
|
||||
margin: 0 !important;
|
||||
line-height: 1px !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-header-caption {
|
||||
font: normal 13px 'Lucida Grande', 'Lucida Sans Unicode', Lucida, Arial, Helvetica, sans-serif !important;
|
||||
font-weight: bold !important;
|
||||
line-height: 15px !important;
|
||||
color: #555 !important;
|
||||
float: left !important;
|
||||
text-shadow: none !important;
|
||||
letter-spacing: normal !important;
|
||||
white-space: normal !important;
|
||||
padding: 3px !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-header-close {
|
||||
width: 15px !important;
|
||||
vertical-align: top !important;
|
||||
text-align: right !important;
|
||||
padding: 6px 5px 0 0 !important;
|
||||
margin: 0 !important;
|
||||
line-height: 1px !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-header-close img {
|
||||
border: 0 !important;
|
||||
width: 7px !important;
|
||||
height: 7px !important;
|
||||
margin: 0 !important;
|
||||
padding: 0 !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-content {
|
||||
margin: 0 !important;
|
||||
padding: 8px !important;
|
||||
float: left !important;
|
||||
overflow: hidden !important;
|
||||
width: auto !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-content-logo {
|
||||
float: left !important;
|
||||
height: 48px !important;
|
||||
width: 48px !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-content-main {
|
||||
margin-left: 60px !important;
|
||||
overflow: hidden !important;
|
||||
padding: 0 0 2px 0 !important;
|
||||
color: #333 !important;
|
||||
text-align: left !important;
|
||||
text-shadow: none !important;
|
||||
letter-spacing: normal !important;
|
||||
font: normal 13px 'Lucida Grande', 'Lucida Sans Unicode', Lucida, Arial, Helvetica, sans-serif !important;
|
||||
line-height: 15px !important;
|
||||
width: auto !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-content-header {
|
||||
text-align: left !important;
|
||||
text-decoration: none !important;
|
||||
font: bold 15px 'Lucida Grande', 'Lucida Sans Unicode', Lucida, Arial, Helvetica, sans-serif !important;
|
||||
line-height: 19px !important;
|
||||
margin: 0 0 4px 0 !important;
|
||||
padding: 0 !important;
|
||||
border: 0 !important;
|
||||
color: #333 !important;
|
||||
text-shadow: none !important;
|
||||
letter-spacing: normal !important;
|
||||
display: block !important;
|
||||
top: 0 !important;
|
||||
left: 0 !important;
|
||||
}
|
||||
|
||||
.ll-content-notification-word {
|
||||
color: #d56e00 !important;
|
||||
font-weight: bold !important;
|
||||
font-size: 14px !important;
|
||||
}
|
||||
|
||||
article .all .top {
|
||||
|
||||
background: #e9f4fb;
|
||||
border: 1px solid #dfeefa;
|
||||
-moz-border-radius: 5px;
|
||||
-webkit-border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
// width: 760px;
|
||||
color: 477cae;
|
||||
padding: 8px;
|
||||
|
||||
}
|
||||
|
||||
article .all .top .column {
|
||||
width: 190px;
|
||||
margin: 5px 10px;
|
||||
float:left;
|
||||
}
|
||||
|
||||
div.reloader {
|
||||
float: none;
|
||||
}
|
||||
|
||||
.floatright, article input.floatright {
|
||||
float: right;
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.floatleft {
|
||||
float: left;
|
||||
}
|
||||
|
||||
h3.medium {
|
||||
font-size: 13px;
|
||||
margin: 5px 0px;
|
||||
padding: 3px 0px;
|
||||
}
|
||||
|
||||
.switch {
|
||||
font-size: 11px;
|
||||
float: center;
|
||||
text-align: center;
|
||||
color: #125687;
|
||||
font-weight: bold;
|
||||
//margin: -7px 0;
|
||||
margin-bottom: -7px;
|
||||
}
|
||||
|
||||
.top .switch a {
|
||||
text-decoration: none;
|
||||
}
|
||||
.btn-group {
|
||||
width: 180px;
|
||||
}
|
||||
|
||||
.btn-group .btn {
|
||||
width: 40%;
|
||||
height: 26px;
|
||||
padding: 2px 0px;
|
||||
}
|
||||
|
||||
.btn-group > .btn:first-child,
|
||||
.btn-group > .btn:last-child {
|
||||
width: 30%;
|
||||
}
|
||||
|
||||
.sel80.medium {
|
||||
display: inline-block;
|
||||
width: 180px;
|
||||
margin-bottom: 0px;
|
||||
height: 26px;
|
||||
line-height: 26px;
|
||||
padding: 4px 2px;
|
||||
// margin-bottom: 5px;
|
||||
color: #555;
|
||||
vertical-align: middle;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
background-color: white;
|
||||
border: 1px solid #CCC;
|
||||
}
|
||||
|
||||
input.mediumheight {
|
||||
height: 20px;
|
||||
margin-bottom: 0px;
|
||||
width: 180px;
|
||||
margin-right: -19px;
|
||||
}
|
||||
input.mediumheight.min {
|
||||
width: 85px;
|
||||
font-size: 12px;
|
||||
padding-left: 5px;
|
||||
}
|
||||
article .all .top form .butgrp {
|
||||
margin-top: 20px;
|
||||
float: right;
|
||||
margin-right: 17px;
|
||||
}
|
||||
|
||||
article .all .top form .butgrp input[type="submit"] {
|
||||
width: 85px;
|
||||
padding: 3px 13px 5px;
|
||||
float: right;
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
.ui-datepicker, .ui-widget, .ui-widget-content, .ui-helper-clearfix, .ui-corner-all {
|
||||
font-size: 75%;
|
||||
z-index: 99!important;
|
||||
}
|
||||
|
||||
article label {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
article .all .top form .floatleft a img,
|
||||
article .all .top form .floatright a img {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
/* bootstrap 3149*/
|
||||
.btn {
|
||||
display: inline-block;
|
||||
padding: 4px 12px;
|
||||
margin-bottom: 0;
|
||||
line-height: 20px;
|
||||
color: #333333;
|
||||
text-align: center;
|
||||
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
|
||||
vertical-align: middle;
|
||||
cursor: pointer;
|
||||
background-color: #f5f5f5;
|
||||
background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
|
||||
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
|
||||
background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
|
||||
background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
|
||||
background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
|
||||
background-repeat: repeat-x;
|
||||
border: 1px solid #bbbbbb;
|
||||
border-color: #e6e6e6 #e6e6e6 #bfbfbf;
|
||||
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
|
||||
border-bottom-color: #a2a2a2;
|
||||
-webkit-border-radius: 4px;
|
||||
-moz-border-radius: 4px;
|
||||
border-radius: 4px;
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
|
||||
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||
-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
|
||||
/* bootstrap 3190*/
|
||||
.btn:hover, .btn:active, .btn.active, .btn.disabled, .btn[disabled] {
|
||||
color: #333333;
|
||||
background-color: #e6e6e6;
|
||||
}
|
||||
|
||||
/* bootstrap 3222*/
|
||||
.btn.active, .btn:active {
|
||||
background-image: none;
|
||||
outline: 0;
|
||||
-webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||
-moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
|
||||
}
|
|
@ -16,6 +16,7 @@ class Projects::BuildListsController < Projects::BaseController
|
|||
params[:filter].each do |k,v|
|
||||
new_params[:filter][k] = v unless v.empty?
|
||||
end
|
||||
new_params[:per_page] = params[:per_page] if params[:per_page].present?
|
||||
redirect_to @project ? project_build_lists_path(@project, new_params) : build_lists_path(new_params)
|
||||
end
|
||||
|
||||
|
@ -24,7 +25,8 @@ class Projects::BuildListsController < Projects::BaseController
|
|||
@filter = BuildList::Filter.new(@project, current_user, params[:filter] || {})
|
||||
|
||||
page = params[:page].to_i == 0 ? nil : params[:page]
|
||||
@bls = @filter.find.recent.paginate :page => page
|
||||
@per_page = [25, 50, 100].include?(params[:per_page].to_i) ? params[:per_page].to_i : 25
|
||||
@bls = @filter.find.recent.paginate :page => page, :per_page => @per_page
|
||||
@build_lists = BuildList.where(:id => @bls.pluck("#{BuildList.table_name}.id")).recent
|
||||
@build_lists = @build_lists.includes [:save_to_platform, :save_to_repository, :arch, :user, :project => [:owner]]
|
||||
|
||||
|
|
|
@ -4,8 +4,6 @@ module ApplicationHelper
|
|||
case
|
||||
when controller_name == 'issues' && action_name == 'new'
|
||||
'right nopadding'
|
||||
when controller_name == 'build_lists' && action_name == 'index'
|
||||
'right slim'
|
||||
when controller_name == 'build_lists' && ['new', 'create'].include?(action_name)
|
||||
nil
|
||||
when controller_name == 'platforms' && ['build_all', 'mass_builds'].include?(action_name)
|
||||
|
|
|
@ -71,14 +71,11 @@ class BuildList::Filter
|
|||
end
|
||||
|
||||
def build_date_from_params(field_name, params)
|
||||
if params[field_name].present?
|
||||
Time.at(params[field_name].to_i)
|
||||
elsif params["#{field_name}(1i)"].present? || params["#{field_name}(2i)"].present? || params["#{field_name}(3i)"].present?
|
||||
Date.civil((params["#{field_name}(1i)"].presence || Date.today.year).to_i,
|
||||
(params["#{field_name}(2i)"].presence || Date.today.month).to_i,
|
||||
(params["#{field_name}(3i)"].presence || Date.today.day).to_i)
|
||||
else
|
||||
nil
|
||||
end
|
||||
return nil if params[field_name].blank?
|
||||
return Date.parse(params[field_name]) if params[field_name].strip =~ /\A\d{2}.\d{2}\.\d{4}\z/
|
||||
|
||||
time = params[field_name].to_i
|
||||
return Time.at(time) if time != 0
|
||||
Date.parse params[field_name].trim
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,49 +1,92 @@
|
|||
- content_for :sidebar do
|
||||
= render 'server_status'
|
||||
|
||||
.top
|
||||
.filter
|
||||
= form_for :filter, :url => @action_url, :html => { :method => :post, :class => :form } do |f|
|
||||
.column
|
||||
= render 'server_status'
|
||||
= hidden_field_tag :servertime, Time.now.utc.to_i
|
||||
.reloader
|
||||
= label_tag :autoreload do
|
||||
= check_box_tag :autoreload, true, true
|
||||
= t 'layout.autoreload_page'
|
||||
.column
|
||||
- if current_user
|
||||
.bordered.nopadding
|
||||
%h3= t("layout.build_lists.ownership.header")
|
||||
.table
|
||||
.lefter= f.radio_button :ownership, 'owned', :class => 'niceRadio', :id => 'myradio1'
|
||||
.lefter= t("layout.build_lists.ownership.owned")
|
||||
%h3.medium= t("layout.build_lists.ownership.header")
|
||||
=f.hidden_field :ownership
|
||||
.btn-group
|
||||
-if @project
|
||||
%button.btn.ownership{:value => 'owned', :class => @filter.ownership == 'owned' ? 'active' : '', :style => 'width:50%;'}= t 'layout.build_lists.ownership.owned'
|
||||
%button.btn.ownership{:value => 'everything', :class => @filter.ownership == 'everything' ? 'active' : '', :style => 'width:50%;'}= t 'layout.build_lists.ownership.everything'
|
||||
-else
|
||||
%button.btn.ownership{:value => 'owned', :class => @filter.ownership == 'owned' ? 'active' : ''}= t 'layout.build_lists.ownership.owned'
|
||||
%button.btn.ownership{:class => @filter.ownership == 'related' ? 'active' : '', :value => "related"}= t 'layout.build_lists.ownership.related'
|
||||
%button.btn.ownership{:value => 'everything', :class => @filter.ownership == 'everything' ? 'active' : ''}= t 'layout.build_lists.ownership.everything'
|
||||
%h3.medium= t 'number_rows'
|
||||
=hidden_field_tag :per_page, @per_page
|
||||
.btn-group
|
||||
-[25,50,100].each do |num|
|
||||
%button.btn.per_page{:value => num, :class => @per_page == num ? 'active' : ''}=num
|
||||
%h3.medium= t 'activerecord.attributes.build_list.status'
|
||||
.lineForm.aside
|
||||
= f.select :status, BuildList::STATUSES.collect{|status| [BuildList.human_status(status), status]}, {:include_blank => true, :selected => @filter.status},
|
||||
{:class => 'sel80 medium input_cleanse', :id => 'status', :tabindex => 2}
|
||||
.both
|
||||
- unless @project
|
||||
.table
|
||||
.lefter= f.radio_button :ownership, 'related', :class => 'niceRadio', :id => 'myradio2'
|
||||
.lefter= t("layout.build_lists.ownership.related")
|
||||
%br/
|
||||
.column
|
||||
%h3.medium= t 'activerecord.models.platform'
|
||||
.lineForm.aside
|
||||
= f.select :platform_id, Platform.main.collect{|pl| [pl.name, pl.id]}, {:include_blank => true, :selected => @filter.platform_id},
|
||||
{:class => 'sel80 medium input_cleanse', :id => 'platform', :tabindex => 2}
|
||||
%h3.medium= t 'activerecord.attributes.build_list.arch'
|
||||
.lineForm.aside
|
||||
= f.select :arch_id, Arch.recent.collect{|arch| [arch.name, arch.id]}, {:include_blank => true, :selected => @filter.arch_id},
|
||||
{:class => 'sel80 medium input_cleanse', :id => 'architecture', :tabindex => 2}
|
||||
%h3.medium= t 'activerecord.models.mass_build'
|
||||
.lineForm.aside
|
||||
= f.select :mass_build_id, options_from_collection_for_select( MassBuild.all, :id, :name, @filter.mass_build_id ), {:include_blank => true, :selected => @filter.mass_build_id},
|
||||
{:class => 'sel80 medium input_cleanse', :id => 'mass_build', :tabindex => 2}
|
||||
.column
|
||||
.floatleft
|
||||
%h3.medium= t '_on'
|
||||
-date = @filter.updated_at_start ? @filter.updated_at_start.strftime('%d.%m.%Y') : nil
|
||||
=f.text_field :updated_at_start, :readonly => "readonly", :size => 10, :class => 'mediumheight min input_cleanse', :value => date
|
||||
=link_to image_tag('x-pale.png', :alt => 'x'), '#filter_updated_at_start', :id => 'updated_at_clear'
|
||||
.floatright
|
||||
%h3.medium= t 'until'
|
||||
-date = @filter.updated_at_end ? @filter.updated_at_end.strftime('%d.%m.%Y') : nil
|
||||
=f.text_field :updated_at_end, :readonly => "readonly", :size => 10, :class => 'mediumheight min input_cleanse', :value => date
|
||||
=link_to image_tag('x-pale.png', :alt => 'x'), '#filter_updated_at_end', :id => 'updated_at_clear'
|
||||
.both
|
||||
.table
|
||||
.lefter= f.radio_button :ownership, 'everything', :class => 'niceRadio', :id => 'myradio3'
|
||||
.lefter= t("layout.build_lists.ownership.everything")
|
||||
%h3.medium= t 'layout.build_lists.project_name_search'
|
||||
%input#filter_project_name.mediumheight.input_cleanse{:name => "filter[project_name]", :size => "30", :type => "text"}/
|
||||
%h3.medium= t 'layout.build_lists.bs_id_search'
|
||||
%input#filter_bs_id.mediumheight.input_cleanse{:name => "filter[bs_id]", :size => "30", :type => "text"}/
|
||||
%br/
|
||||
%br/
|
||||
.butgrp
|
||||
-if @project and can?(:create, @project.build_lists.build)
|
||||
%input{:type => 'button', :onclick => "location.href='#{new_project_build_list_path(@project)}'", :value => t('layout.build_lists.new_header')}
|
||||
= f.submit t('layout.search.header')
|
||||
= f.submit t('reset'), :id => 'filter_clear'
|
||||
.both
|
||||
%br
|
||||
= f.submit t("layout.search.header")
|
||||
.block
|
||||
%h3.small= t("activerecord.attributes.build_list.new_core")
|
||||
.lineForm.aside= f.select :new_core, build_list_options_for_new_core, {:include_blank => true, :selected => @filter.new_core}, {:class => 'sel80 aside', :id => 'new_core', :tabindex => 2}
|
||||
%h3.small= t("activerecord.attributes.build_list.status")
|
||||
.lineForm.aside= f.select :status, BuildList::STATUSES.collect{|status| [BuildList.human_status(status), status]}, {:include_blank => true, :selected => @filter.status}, {:class => 'sel80 aside', :id => 'status', :tabindex => 2}
|
||||
%h3.small= t("activerecord.models.platform")
|
||||
.lineForm.aside= f.select :platform_id, Platform.main.collect{|pl| [pl.name, pl.id]}, {:include_blank => true, :selected => @filter.platform_id}, {:class => 'sel80 aside', :id => 'platform', :tabindex => 2}
|
||||
%h3.small= t("activerecord.attributes.build_list.mass_build")
|
||||
.lineForm.aside= f.select :mass_build_id, options_from_collection_for_select( MassBuild.all, :id, :name, @filter.mass_build_id ), {:include_blank => true}
|
||||
%h3.small= t("activerecord.attributes.build_list.arch")
|
||||
.lineForm.aside= f.select :arch_id, Arch.recent.collect{|arch| [arch.name, arch.id]}, {:include_blank => true, :selected => @filter.arch_id}, {:class => 'sel80 aside', :id => 'architecture', :tabindex => 2}
|
||||
-# TODO [BuildList#created_at filters] Uncomment here and in BuildList::Filter to return filters
|
||||
%h3.small= t("layout.build_lists.created_at_start")
|
||||
.date_select= f.date_select(:created_at_start, :include_blank => true, :selected => @filter.created_at_start)
|
||||
%h3.small= t("layout.build_lists.created_at_end")
|
||||
.date_select= f.date_select(:created_at_end, :include_blank => true, :selected => @filter.created_at_end)
|
||||
%h3.small= t("layout.build_lists.updated_at_start")
|
||||
.date_select= f.date_select(:updated_at_start, :include_blank => true, :selected => @filter.updated_at_start)
|
||||
%h3.small= t("layout.build_lists.updated_at_end")
|
||||
.date_select= f.date_select(:updated_at_end, :include_blank => true, :selected => @filter.updated_at_end)
|
||||
%h3.small= t("layout.build_lists.project_name_search")
|
||||
= f.text_field :project_name
|
||||
%h3.small= t("layout.build_lists.bs_id_search")
|
||||
= f.text_field :bs_id
|
||||
%br
|
||||
%br
|
||||
= f.submit t("layout.search.header")
|
||||
.both
|
||||
.switch
|
||||
%a{:href => "#"}= t 'layout.hide'
|
||||
:javascript
|
||||
$(".switch").toggle(
|
||||
function () {
|
||||
$(".filter").hide("slow");
|
||||
$(".switch a").text("#{t 'layout.show'}");
|
||||
},
|
||||
function () {
|
||||
$(".filter").show("slow");
|
||||
$(".switch a").text("#{t 'layout.hide'}");
|
||||
}
|
||||
);
|
||||
$('.mediumheight.min').datetimepicker({
|
||||
dateFormat: 'dd.mm.yy',
|
||||
timeFormat: '',
|
||||
showTime: false,
|
||||
showHour: false,
|
||||
showMinute: false
|
||||
});
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
- queues ||= [:rpm, :publish]
|
||||
.bordered.nopadding
|
||||
%h3= t('layout.build_lists.build_server_status.header')
|
||||
|
||||
%h3.medium= t('layout.build_lists.build_server_status.header')
|
||||
- queues.each do |queue|
|
||||
.table
|
||||
.lefter= t("layout.build_lists.build_server_status.#{queue}_workers")
|
||||
|
@ -12,4 +11,3 @@
|
|||
.righter= @build_server_status[queue][metric]
|
||||
.both
|
||||
%br
|
||||
= link_to t('layout.build_lists.new_header'), new_project_build_list_path(@project), :class => 'button' if @project and can?(:create, @project.build_lists.build)
|
|
@ -1,11 +1,6 @@
|
|||
-set_meta_tags :title => t('.title')
|
||||
|
||||
= hidden_field_tag :servertime, Time.now.utc.to_i
|
||||
%div.reloader
|
||||
= label_tag :autoreload do
|
||||
= check_box_tag :autoreload, true, true
|
||||
= t("layout.autoreload_page")
|
||||
.both
|
||||
= render 'filter'
|
||||
|
||||
%table.tablesorter{:cellpadding => "0", :cellspacing => "0"}
|
||||
%thead
|
||||
|
@ -74,5 +69,4 @@
|
|||
|
||||
= will_paginate @bls
|
||||
|
||||
= render 'filter'
|
||||
= render @project ? 'projects/base/submenu' : 'projects/build_lists/submenu'
|
||||
|
|
|
@ -20,6 +20,7 @@ en:
|
|||
user_list: User list
|
||||
edit: Edit
|
||||
show: View
|
||||
hide: Hide
|
||||
cancel: Cancel
|
||||
create: Create
|
||||
update: Update
|
||||
|
@ -203,3 +204,7 @@ en:
|
|||
from: from
|
||||
by: by
|
||||
diff: Diff
|
||||
number_rows: Number rows
|
||||
reset: Reset
|
||||
_on: 'On'
|
||||
until: Until
|
||||
|
|
|
@ -89,7 +89,7 @@ ru:
|
|||
ownership:
|
||||
header: Принадлежность заданий
|
||||
owned: Мне
|
||||
related: Связанные со мной
|
||||
related: Связанные
|
||||
everything: Все
|
||||
|
||||
build_server_status:
|
||||
|
|
|
@ -20,6 +20,7 @@ ru:
|
|||
user_list: Список пользователей
|
||||
edit: Редактировать
|
||||
show: Просмотр
|
||||
hide: Скрыть
|
||||
cancel: Отмена
|
||||
create: Создать
|
||||
update: Обновить
|
||||
|
@ -204,3 +205,7 @@ ru:
|
|||
from: из
|
||||
by: от
|
||||
diff: Изменения
|
||||
number_rows: Количество строк
|
||||
reset: Сброс
|
||||
_on: с
|
||||
until: по
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -18,3 +18,4 @@
|
|||
//= require chosen.jquery
|
||||
// require html5shiv
|
||||
// require_tree .
|
||||
//= require jquery-ui-timepicker-addon
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
.ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
|
||||
.ui-timepicker-div dl { text-align: left; }
|
||||
.ui-timepicker-div dl dt { height: 25px; margin-bottom: -25px; }
|
||||
.ui-timepicker-div dl dd { margin: 0 10px 10px 65px; }
|
||||
.ui-timepicker-div td { font-size: 90%; }
|
||||
.ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; }
|
||||
|
||||
.ui-timepicker-rtl{ direction: rtl; }
|
||||
.ui-timepicker-rtl dl { text-align: right; }
|
||||
.ui-timepicker-rtl dl dd { margin: 0 65px 10px 10px; }
|
|
@ -15,3 +15,4 @@
|
|||
|
||||
@import "bootstrap";
|
||||
@import "chosen.scss";
|
||||
@import "jquery-ui-timepicker-addon.css";
|
Loading…
Reference in New Issue