[issue #195] Merge branch '3.2-master' into 195-new_design_for_projects
Conflicts: app/assets/stylesheets/custom.scss
This commit is contained in:
commit
2a4e978857
|
@ -0,0 +1,55 @@
|
|||
function disError(elem) {
|
||||
$("#hint").fadeOut("fast");
|
||||
if (document.getElementById("user_login").className=="registartion-input-error") {
|
||||
if (this.id=="user_login") {
|
||||
document.getElementById("user_login").className="registartion-input-focus";
|
||||
} else {
|
||||
document.getElementById("user_login").className="registartion-input-no-focus";
|
||||
}
|
||||
}
|
||||
if (document.getElementById("user_password").className=="registartion-input-error") {
|
||||
if (this.id=="user_password") {
|
||||
document.getElementById("user_password").className="registartion-input-focus";
|
||||
} else {
|
||||
document.getElementById("user_password").className="registartion-input-no-focus";
|
||||
}
|
||||
}
|
||||
buttonCheck();
|
||||
}
|
||||
|
||||
function buttonCheck() {
|
||||
var login_default = document.getElementById("login_default").value;
|
||||
var pass_default = document.getElementById("password_default").value;
|
||||
if ((document.getElementById("user_login").value!="")&&(document.getElementById("user_login").value!=login_default)&&
|
||||
(document.getElementById("user_password").value!="")&&(document.getElementById("user_password").value!=pass_default)) {
|
||||
document.getElementById("btnLogin").className = "button";
|
||||
} else {
|
||||
document.getElementById("btnLogin").className = "button disabled";
|
||||
}
|
||||
}
|
||||
|
||||
function changeCheck(el) {
|
||||
var el = el,
|
||||
input = el.getElementsByTagName("input")[0];
|
||||
|
||||
if(input.checked) {
|
||||
el.style.backgroundPosition="0 0";
|
||||
input.checked=false;
|
||||
}
|
||||
else {
|
||||
el.style.backgroundPosition="0 -17px";
|
||||
input.checked=true;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function startChangeCheck(el) {
|
||||
var el = el,
|
||||
input = el.getElementsByTagName("input")[0];
|
||||
if(input.checked) { el.style.backgroundPosition="0 -17px"; }
|
||||
return true;
|
||||
}
|
||||
|
||||
function startCheck() {
|
||||
startChangeCheck(document.getElementById("niceCheckbox1"));
|
||||
}
|
|
@ -280,3 +280,7 @@ article div.file table {
|
|||
#repo-wrapper div.comment div.comment-right {
|
||||
float: right;
|
||||
}
|
||||
|
||||
table.tablesorter tbody td a .issue_title {
|
||||
color: #58595B;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,276 @@
|
|||
html, body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-family: Tahoma, Geneva, Helvetica, sans-serif;
|
||||
color: #565667;
|
||||
background: #1f60a1 image-url("bg.png") repeat-x;
|
||||
min-width: 940px;
|
||||
min-height: 300px;
|
||||
text-align: center;
|
||||
height: 100%; }
|
||||
|
||||
header, section, footer, aside, nav, article, menu {
|
||||
display: block; }
|
||||
|
||||
input {
|
||||
&[type="text"]:focus, &[type="password"]:focus, &:focus {
|
||||
outline: none; } }
|
||||
|
||||
select:focus {
|
||||
outline: none; }
|
||||
|
||||
a img {
|
||||
border: none; }
|
||||
|
||||
.wrap {
|
||||
width: 940px;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
min-height: 95%; }
|
||||
|
||||
.both {
|
||||
clear: both; }
|
||||
|
||||
/* Header */
|
||||
|
||||
header div {
|
||||
&.logo {
|
||||
background: image-url("logo.png") no-repeat 50% 100%;
|
||||
height: 89px;
|
||||
width: 233px;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
padding-top: 12%; }
|
||||
&.text {
|
||||
color: #FFF;
|
||||
font-size: 28px;
|
||||
width: 800px;
|
||||
text-align: left;
|
||||
margin-left: 90px;
|
||||
margin-top: 50px;
|
||||
font-family: Arial;
|
||||
text-shadow: 0px 1px 1px #000000;
|
||||
filter: dropshadow(color = black, offx = 0, offy = 1);
|
||||
padding-left: 0px; } }
|
||||
|
||||
.niceCheck {
|
||||
width: 17px;
|
||||
height: 17px;
|
||||
display: inline-block;
|
||||
cursor: pointer;
|
||||
background: image-url("checkbox.png");
|
||||
input {
|
||||
display: none; } }
|
||||
|
||||
/* Content */
|
||||
|
||||
article {
|
||||
width: 257px;
|
||||
height: 227px;
|
||||
background: #1c394c image-url("bg-signup.png") repeat-x;
|
||||
border-radius: 5px;
|
||||
border: 1px solid #38658c;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
margin-top: 75px;
|
||||
-webkit-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.5);
|
||||
-moz-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.5);
|
||||
box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.5); }
|
||||
|
||||
a.button {
|
||||
background: #125687;
|
||||
background: image-url("button-green-normal.png");
|
||||
border-radius: 3px;
|
||||
color: #FFF;
|
||||
font-family: Tahoma;
|
||||
font-size: 12px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
font-weight: normal;
|
||||
padding: 5px 25px;
|
||||
text-align: center;
|
||||
border: none;
|
||||
height: 25px;
|
||||
width: 106px;
|
||||
text-decoration: none; }
|
||||
|
||||
input.button {
|
||||
background: #125687;
|
||||
background: image-url("button-green-normal.png");
|
||||
border-radius: 3px;
|
||||
color: #FFF;
|
||||
font-family: Tahoma;
|
||||
font-size: 12px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
font-weight: normal;
|
||||
padding: 5px 25px;
|
||||
text-align: center;
|
||||
border: none;
|
||||
height: 25px;
|
||||
width: 106px;
|
||||
text-decoration: none;
|
||||
padding: 3px 27px 8px 27px;
|
||||
height: 25px;
|
||||
width: auto; }
|
||||
|
||||
a.button:hover, input.button:hover {
|
||||
background: #1874b6;
|
||||
background: image-url("button-green-hover.png");
|
||||
cursor: pointer; }
|
||||
|
||||
a.button:active, input.button:active {
|
||||
background: image-url("button-green-press.png"); }
|
||||
|
||||
a.button {
|
||||
&:disabled, &.disabled {
|
||||
background: #125687;
|
||||
background: image-url("button-green-disabled.png");
|
||||
cursor: default; } }
|
||||
|
||||
input.button {
|
||||
&:disabled, &.disabled {
|
||||
background: #125687;
|
||||
background: image-url("button-green-disabled.png");
|
||||
cursor: default; } }
|
||||
|
||||
article h1 {
|
||||
color: #FFF;
|
||||
font-size: 18px;
|
||||
font-weight: normal;
|
||||
font-family: Tahoma;
|
||||
margin-bottom: 5px; }
|
||||
|
||||
.registartion-input, .registartion-input-focus, .registartion-input-error, .registartion-input-no-focus {
|
||||
height: 24px;
|
||||
width: 217px;
|
||||
border: 1px solid #8199a9;
|
||||
border-radius: 2px;
|
||||
color: #cfcfcf;
|
||||
font-family: Tahoma;
|
||||
font-size: 12px;
|
||||
padding-left: 10px;
|
||||
margin-top: 10px; }
|
||||
|
||||
.registartion-input-focus, .registartion-input-focus-signup {
|
||||
color: #575756;
|
||||
-webkit-box-shadow: 0px 0px 7px 2px rgba(126, 183, 237, 0.75);
|
||||
-moz-box-shadow: 0px 0px 7px 2px rgba(126, 183, 237, 0.75);
|
||||
box-shadow: 0px 0px 7px 2px rgba(126, 183, 237, 0.75); }
|
||||
|
||||
.registartion-input-no-focus, .registartion-input-no-focus-signup {
|
||||
color: #575756; }
|
||||
|
||||
.registartion-input-error, .registartion-input-error-signup {
|
||||
border: 1px solid #bd4d40;
|
||||
outline: 1px solid #bd4d40;
|
||||
outline-offset: -2px; }
|
||||
|
||||
div {
|
||||
&.registration div {
|
||||
&.remember {
|
||||
color: #FFF;
|
||||
font-size: 12px;
|
||||
float: left;
|
||||
padding-left: 15px;
|
||||
padding-top: 5px;
|
||||
div {
|
||||
&.check {
|
||||
float: left;
|
||||
margin-top: 15px;
|
||||
margin-right: 4px; }
|
||||
&.text {
|
||||
float: left;
|
||||
margin-top: 15px; } } }
|
||||
&.in {
|
||||
float: right;
|
||||
padding-right: 15px;
|
||||
padding-top: 15px; } }
|
||||
&.hr {
|
||||
margin-top: 10px;
|
||||
height: 1px;
|
||||
width: 100%;
|
||||
border-bottom: 1px solid #264862;
|
||||
border-top: 1px solid #264862; } }
|
||||
|
||||
article div.other div {
|
||||
&.left {
|
||||
float: left;
|
||||
font-size: 12px;
|
||||
color: #FFFFFF;
|
||||
margin-top: 6px;
|
||||
margin-left: 15px; }
|
||||
&.right {
|
||||
float: right;
|
||||
margin-right: 15px;
|
||||
margin-top: 13px; } }
|
||||
|
||||
div {
|
||||
&.forgot {
|
||||
width: 257px;
|
||||
text-align: center;
|
||||
margin: 0 auto; }
|
||||
&.password {
|
||||
float: right;
|
||||
padding-top: 4px;
|
||||
p {
|
||||
margin: 0;
|
||||
padding: 0; }
|
||||
a {
|
||||
color: #FFF;
|
||||
font-size: 12px;
|
||||
text-decoration: none;
|
||||
&:hover {
|
||||
text-decoration: underline; } } } }
|
||||
|
||||
nav {
|
||||
width: 96px;
|
||||
height: 47px;
|
||||
background: image-url("registration.png") no-repeat;
|
||||
float: right;
|
||||
cursor: pointer;
|
||||
a {
|
||||
font-size: 14px;
|
||||
color: #FFF;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
padding-top: 10px;
|
||||
text-decoration: none;} }
|
||||
|
||||
div.error {
|
||||
background: image-url("error-message.png");
|
||||
width: 237px;
|
||||
height: 35px;
|
||||
font-size: 12px;
|
||||
position: absolute;
|
||||
margin-top: -159px;
|
||||
margin-left: 582px;
|
||||
display: none;
|
||||
p {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
padding-top: 7px;
|
||||
text-align: center; } }
|
||||
|
||||
/* Footer */
|
||||
|
||||
footer {
|
||||
height: 32px;
|
||||
padding-left: 15px;
|
||||
width: 900px;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
font-size: 12px;
|
||||
color: #FFF;
|
||||
padding-top: 10px;
|
||||
text-align: center;
|
||||
li {
|
||||
display: inline;
|
||||
a {
|
||||
font-size: 12px;
|
||||
color: #FFF;
|
||||
text-decoration: none;
|
||||
&:hover {
|
||||
text-decoration: underline; } } } } }
|
|
@ -0,0 +1,15 @@
|
|||
@import "registration";
|
||||
|
||||
nav {
|
||||
width: 96px;
|
||||
height: 47px;
|
||||
background: image-url("registration.png") no-repeat;
|
||||
float: right;
|
||||
cursor: pointer;
|
||||
a {
|
||||
font-size: 14px;
|
||||
color: #FFF;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
padding-top: 10px;
|
||||
text-decoration: none;} }
|
|
@ -0,0 +1,227 @@
|
|||
html, body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-family: Tahoma, Geneva, Helvetica, sans-serif;
|
||||
color: #565667;
|
||||
background: #1f60a1 image-url("bg.png") repeat-x;
|
||||
min-width: 940px;
|
||||
min-height: 300px;
|
||||
text-align: center;
|
||||
height: 100%; }
|
||||
|
||||
header, section, footer, aside, nav, article, menu {
|
||||
display: block; }
|
||||
|
||||
input {
|
||||
&[type="text"]:focus, &[type="password"]:focus, &:focus {
|
||||
outline: none; } }
|
||||
|
||||
select:focus {
|
||||
outline: none; }
|
||||
|
||||
a img {
|
||||
border: none; }
|
||||
|
||||
.wrap {
|
||||
width: 940px;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
min-height: 95%; }
|
||||
|
||||
.both {
|
||||
clear: both; }
|
||||
|
||||
/* Header */
|
||||
|
||||
header div {
|
||||
&.logo {
|
||||
background: image-url("logo.png") no-repeat 50% 100%;
|
||||
height: 89px;
|
||||
width: 233px;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
padding-top: 12%; }
|
||||
&.text {
|
||||
color: #FFF;
|
||||
font-size: 28px;
|
||||
width: 800px;
|
||||
text-align: left;
|
||||
margin-left: 90px;
|
||||
margin-top: 50px;
|
||||
font-family: Arial;
|
||||
text-shadow: 0px 1px 1px #000000;
|
||||
filter: dropshadow(color = black, offx = 0, offy = 1);
|
||||
padding-left: 0px; } }
|
||||
|
||||
.niceCheck {
|
||||
width: 17px;
|
||||
height: 17px;
|
||||
display: inline-block;
|
||||
cursor: pointer;
|
||||
background: image-url("checkbox.png");
|
||||
input {
|
||||
display: none; } }
|
||||
|
||||
/* Content */
|
||||
|
||||
article {
|
||||
width: 380px;
|
||||
height: 254px;
|
||||
background: #1c394c image-url("bg-signup.png") repeat-x;
|
||||
border-radius: 5px;
|
||||
border: 1px solid #38658c;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
margin-top: 75px;
|
||||
-webkit-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.5);
|
||||
-moz-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.5);
|
||||
box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.5); }
|
||||
|
||||
a.button, input.button {
|
||||
background: #125687;
|
||||
background: image-url("button-green-normal.png");
|
||||
border-radius: 3px;
|
||||
color: #FFF;
|
||||
font-family: Tahoma;
|
||||
font-size: 12px;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
font-weight: normal;
|
||||
padding: 5px 25px;
|
||||
text-align: center;
|
||||
border: none;
|
||||
height: 25px;
|
||||
width: 106px;
|
||||
text-decoration: none; }
|
||||
|
||||
article div {
|
||||
&.left {
|
||||
float: left;
|
||||
font-size: 12px;
|
||||
color: #FFF;
|
||||
margin-left: 15px;
|
||||
margin-top: 16px; }
|
||||
&.right {
|
||||
float: right;
|
||||
margin-right: 15px;
|
||||
padding-bottom: 2px; } }
|
||||
|
||||
.first {
|
||||
padding-top: 5px; }
|
||||
|
||||
input.button {
|
||||
padding: 3px 27px 8px 27px;
|
||||
height: 25px;
|
||||
width: auto; }
|
||||
|
||||
a.button:hover, input.button:hover {
|
||||
background: #1874b6;
|
||||
background: image-url("button-green-hover.png");
|
||||
cursor: pointer; }
|
||||
|
||||
a.button:active, input.button:active {
|
||||
background: image-url("button-green-press.png"); }
|
||||
|
||||
a.button {
|
||||
&:disabled, &.disabled {
|
||||
background: #125687;
|
||||
background: image-url("button-green-disabled.png");
|
||||
cursor: default; } }
|
||||
|
||||
input.button {
|
||||
&:disabled, &.disabled {
|
||||
background: #125687;
|
||||
background: image-url("button-green-disabled.png");
|
||||
cursor: default; } }
|
||||
|
||||
article h1 {
|
||||
color: #FFF;
|
||||
font-size: 18px;
|
||||
font-weight: normal;
|
||||
font-family: Tahoma;
|
||||
margin-bottom: 5px; }
|
||||
|
||||
.registartion-input, .registartion-input-focus, .registartion-input-error, .registartion-input-no-focus {
|
||||
height: 24px;
|
||||
width: 217px;
|
||||
border: 1px solid #8199a9;
|
||||
border-radius: 2px;
|
||||
color: #cfcfcf;
|
||||
font-family: Tahoma;
|
||||
font-size: 12px;
|
||||
padding-left: 10px;
|
||||
margin-top: 10px; }
|
||||
|
||||
.registartion-input-focus, .registartion-input-focus-signup {
|
||||
color: #575756;
|
||||
-webkit-box-shadow: 0px 0px 7px 2px rgba(126, 183, 237, 0.75);
|
||||
-moz-box-shadow: 0px 0px 7px 2px rgba(126, 183, 237, 0.75);
|
||||
box-shadow: 0px 0px 7px 2px rgba(126, 183, 237, 0.75); }
|
||||
|
||||
.registartion-input-no-focus, .registartion-input-no-focus-signup {
|
||||
color: #575756; }
|
||||
|
||||
.registartion-input-error, .registartion-input-error-signup {
|
||||
border: 1px solid #bd4d40;
|
||||
outline: 1px solid #bd4d40;
|
||||
outline-offset: -2px; }
|
||||
|
||||
div.in {
|
||||
float: right;
|
||||
margin-right: 15px;
|
||||
margin-top: 12px; }
|
||||
|
||||
/* Footer */
|
||||
|
||||
footer {
|
||||
height: 32px;
|
||||
padding-left: 15px;
|
||||
width: 900px;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
ul {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
font-size: 12px;
|
||||
color: #FFF;
|
||||
padding-top: 10px;
|
||||
text-align: center;
|
||||
li {
|
||||
display: inline;
|
||||
a {
|
||||
font-size: 12px;
|
||||
color: #FFF;
|
||||
text-decoration: none;
|
||||
&:hover {
|
||||
text-decoration: underline; } } } } }
|
||||
|
||||
div.error {
|
||||
background: image-url("error-message.png");
|
||||
width: 237px;
|
||||
height: 35px;
|
||||
font-size: 12px;
|
||||
position: absolute;
|
||||
margin-top: -159px;
|
||||
margin-left: 582px;
|
||||
//display: none;
|
||||
p {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
padding-top: 7px;
|
||||
text-align: center; }
|
||||
&.login {
|
||||
margin-top: -242px;
|
||||
margin-left: 650px; }
|
||||
&.name {
|
||||
margin-top: -202px;
|
||||
margin-left: 650px; }
|
||||
&.email {
|
||||
margin-top: -161px;
|
||||
margin-left: 650px; }
|
||||
&.password {
|
||||
margin-top: -101px;
|
||||
margin-left: 650px; } }
|
||||
|
||||
div.error.forgot {
|
||||
margin-top: 8px;
|
||||
margin-left: 308px; }
|
|
@ -1,22 +1,24 @@
|
|||
.block
|
||||
%h2= title t('devise.passwords.link')
|
||||
.content
|
||||
- if resource.errors.present?
|
||||
.flash
|
||||
.message.error
|
||||
- messages = resource.errors.full_messages.map { |msg| content_tag(:p, msg) }.join.html_safe
|
||||
= messages
|
||||
.wrap
|
||||
%nav
|
||||
%a{:href => new_register_request_path}
|
||||
%p=t("layout.devise.shared_links.sign_up")
|
||||
/ Top block
|
||||
%header
|
||||
.logo
|
||||
/ Page
|
||||
%article
|
||||
%br
|
||||
%h1= title t('devise.passwords.forgot')
|
||||
%br
|
||||
.content
|
||||
- if resource.errors.present?
|
||||
.flash
|
||||
.message.error.forgot
|
||||
- messages = resource.errors.full_messages.map { |msg| content_tag(:p, msg) }.join.html_safe
|
||||
= messages
|
||||
|
||||
= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post, :class => "form" }) do |f|
|
||||
.group.wat-cf
|
||||
.left
|
||||
= f.label :email, :class => "label"
|
||||
.right
|
||||
= f.text_field :email, :class => "text_field"
|
||||
|
||||
.group.navform.wat-cf
|
||||
%button.button{:tyle => "submit"}
|
||||
= image_tag "choose.png", :alt => t("devise.passwords.button")
|
||||
= t("devise.passwords.button")
|
||||
%span.text_button_padding
|
||||
= render :partial => "devise/shared/links"
|
||||
= f.text_field :login, :name => 'user[email]', :class => "registartion-input", :onblur => "if(this.value==''){this.value='#{t('activerecord.attributes.user.email')}';this.className='registartion-input';} else{this.className='registartion-input-no-focus';};", :onfocus => "if(this.value=='#{t('activerecord.attributes.user.email')}'){this.value='';this.className='registartion-input-focus';};", :value => t('activerecord.attributes.user.email')
|
||||
.both
|
||||
%br
|
||||
=f.submit t("devise.passwords.send"), :class => 'button', :id => 'btnLogin'
|
||||
|
|
|
@ -1,52 +1,53 @@
|
|||
#block-signup.block
|
||||
%h2= title t("devise.registrations.sign_up_header")
|
||||
.content
|
||||
.wrap
|
||||
/ Top block
|
||||
%header
|
||||
.logo
|
||||
/ Page
|
||||
- uname_error = name_error = email_error = password_error = password_confirm_error = nil
|
||||
- if resource.errors.present? # Trash
|
||||
- resource.errors.each do |attr, array|
|
||||
-uname_error = array if attr == :uname
|
||||
-name_error = array if attr == :name
|
||||
-email_error = array if attr == :email
|
||||
-password_error = array if attr == :password
|
||||
-password_confirm_error = array if attr == :password_confirmation
|
||||
|
||||
%article
|
||||
= form_for(resource, :as => resource_name, :url => registration_path(resource_name), :html => { :class => "form" }) do |f|
|
||||
= hidden_field_tag :invitation_token, @invitation_token
|
||||
- if resource.errors.present?
|
||||
.flash
|
||||
.message.error= resource.errors.full_messages.map { |msg| content_tag(:p, msg) }.join.html_safe
|
||||
.left.first=t('activerecord.attributes.user.uname')
|
||||
.right.first
|
||||
= f.text_field :uname, :id => 'login', :class => "registartion-input #{uname_error ? "registartion-input-error" : ''}", :onblur => "if(this.value==''){this.value='';this.className='registartion-input';}else{this.className='registartion-input-no-focus';};", :onfocus => "if(this.value==''){this.value='';this.className='registartion-input-focus';};"
|
||||
.both
|
||||
.left=t('activerecord.attributes.user.name')
|
||||
.right
|
||||
= f.text_field :name, :id => 'name', :class => "registartion-input #{name_error ? "registartion-input-error" : ''}", :onblur => "if(this.value==''){this.value='';this.className='registartion-input';}else{this.className='registartion-input-no-focus';};", :onfocus => "if(this.value==''){this.value='';this.className='registartion-input-focus';};"
|
||||
.both
|
||||
.left=t('activerecord.attributes.user.email')
|
||||
.right
|
||||
= f.text_field :email, :id => 'email', :readonly => 'readonly', :class => "registartion-input #{email_error ? "registartion-input-error" : ''}", :onblur => "if(this.value==''){this.value='';this.className='registartion-input';}else{this.className='registartion-input-no-focus';};", :onfocus => "if(this.value==''){this.value='';this.className='registartion-input-focus';};"
|
||||
.both
|
||||
.left=t('activerecord.attributes.user.password')
|
||||
.right
|
||||
= f.text_field :password, :id => 'pass', :class => "registartion-input #{password_error ? "registartion-input-error" : ''}", :onblur => "if(this.value==''){this.value='';this.className='registartion-input';}else{this.className='registartion-input-no-focus';};", :onfocus => "if(this.value==''){this.value='';this.className='registartion-input-focus';};"
|
||||
.both
|
||||
.left=t('activerecord.attributes.user.password_confirm')
|
||||
.right
|
||||
= f.text_field :password_confirmation, :id => 'pass2', :class => "registartion-input #{password_confirm_error ? "registartion-input-error" : ''}", :onClick => "this.className='registartion-input-focus';disError(this);", :onblur => "if(this.value==''){this.value='';this.className='registartion-input';}else{this.className='registartion-input-no-focus';};buttonCheck();", :onfocus => "if(this.value==''){this.value='';this.className='registartion-input-focus';};", :onkeydown => "buttonCheck();"
|
||||
.both
|
||||
.in
|
||||
=f.submit t("layout.devise.shared_links.sign_up"), :class => 'button', :id => 'btnLogin'
|
||||
.both
|
||||
|
||||
.group.wat-cf
|
||||
.left
|
||||
= f.label :uname, :class => "label"
|
||||
.right
|
||||
= f.text_field :uname, :class => "text_field"
|
||||
|
||||
.group.wat-cf
|
||||
.left
|
||||
= f.label :email, :class => "label"
|
||||
.right
|
||||
= f.text_field :email, :class => "text_field", :readonly => 'readonly'
|
||||
|
||||
.group.wat-cf
|
||||
.left
|
||||
= f.label :name, :class => "label"
|
||||
.right
|
||||
= f.text_field :name, :class => "text_field"
|
||||
|
||||
- if resource.authentications.blank?
|
||||
.group.wat-cf
|
||||
.left
|
||||
= f.label :password, :class => "label"
|
||||
.right
|
||||
= f.password_field :password, :class => "text_field"
|
||||
|
||||
.group.wat-cf
|
||||
.left
|
||||
= f.label :password_confirmation, :class => "label"
|
||||
.right
|
||||
= f.password_field :password_confirmation, :class => "text_field"
|
||||
|
||||
.group.wat-cf
|
||||
.left
|
||||
= f.label :language, :class => "label"
|
||||
.right
|
||||
= f.select :language, User::LANGUAGES_FOR_SELECT
|
||||
|
||||
.group.navform.wat-cf
|
||||
%button.button{:type => "submit"}
|
||||
= image_tag("choose.png", :alt => t("devise.registrations.sign_up_header"))
|
||||
= t("devise.registrations.sign_up_header")
|
||||
%span.text_button_padding
|
||||
= render :partial => "devise/shared/links"
|
||||
-if uname_error
|
||||
.error.login#hintLogin
|
||||
%p=uname_error
|
||||
-if name_error
|
||||
.error.name#hintName
|
||||
%p=name_error
|
||||
-if email_error
|
||||
.error.email#hintEmail
|
||||
%p=email_error
|
||||
-if password_error
|
||||
.error.password#hintPassword
|
||||
%p=password_error
|
|
@ -1,22 +1,34 @@
|
|||
#block-login.block
|
||||
%h2= title t("layout.sessions.sign_in_header")
|
||||
.content.login
|
||||
- if flash.present?
|
||||
.flash
|
||||
- flash.each do |key, value|
|
||||
.message{ :title => key.to_s.humanize, :class => (key == :alert ? "error" : key) }
|
||||
%p= value
|
||||
.wrap
|
||||
%nav
|
||||
%a{:href => new_register_request_path}
|
||||
%p=t("layout.devise.shared_links.sign_up")
|
||||
/ Top block
|
||||
%header
|
||||
.logo
|
||||
/ Page
|
||||
%article
|
||||
- is_error = (flash.try(:first).try(:first) == :alert && flash.try(:first).try(:last) == t('devise.failure.invalid')) # Trash
|
||||
- login = t('devise.sessions.login'); password = t('devise.sessions.password')
|
||||
=hidden_field_tag :login_default, login
|
||||
=hidden_field_tag :password_default, password
|
||||
= form_for(resource, :as => resource_name, :url => session_path(resource_name), :html => { :class => "form login" }) do |f|
|
||||
.group.wat-cf
|
||||
.left= f.label :login, :class => "label right"
|
||||
.right= f.text_field :login, :class => "text_field"
|
||||
.group.wat-cf
|
||||
.left= f.label :password, :class => "label right"
|
||||
.right= f.password_field :password, :class => "text_field"
|
||||
.group.navform.wat-cf
|
||||
.right
|
||||
%button.button{:type => "submit"}
|
||||
= image_tag 'code.png', :alt => "Save"
|
||||
= t("layout.login")
|
||||
%span.text_button_padding
|
||||
= render :partial => "devise/shared/links"
|
||||
%h1= title t("layout.sessions.sign_in_header")
|
||||
= f.text_field :login, :class => "registartion-input #{is_error ? "registartion-input-error" : ''}", :onblur => "if(this.value==''){this.value='#{login}';this.className='registartion-input';} else{this.className='registartion-input-no-focus';};buttonCheck();", :onfocus => "if(this.value=='#{login}'){this.value='';this.className='registartion-input-focus';};", :onkeydown => "buttonCheck();", :type => "text", :value => login
|
||||
%br/
|
||||
= f.password_field :password, :class => "registartion-input #{is_error ? "registartion-input-error" : ''}", :onblur => "if(this.value==''){this.value='#{password}';this.className='registartion-input';}else{this.className='registartion-input-no-focus';};buttonCheck();", :onfocus => "if(this.value=='#{password}'){this.value='';this.className='registartion-input-focus';};", :onkeydown => "buttonCheck();", :type => "password", :value => password
|
||||
%br/
|
||||
.registration
|
||||
.remember
|
||||
.check
|
||||
%span#niceCheckbox1.niceCheck{:onclick => "changeCheck(this)"}
|
||||
= f.check_box :remember_me
|
||||
.text=t('devise.sessions.remember_me')
|
||||
.in=f.submit t('layout.devise.shared_links.sign_in'), :class => 'button disabled', :id => 'btnLogin'
|
||||
%div{:style => "clear: both;"}
|
||||
.hr
|
||||
.both
|
||||
#hint.error{:style => is_error ? 'display: block;' : ''}
|
||||
%p=t('devise.failure.invalid')
|
||||
.forgot
|
||||
.password
|
||||
%p= link_to t("layout.devise.shared_links.forgot_password"), new_password_path(resource_name)
|
|
@ -3,7 +3,8 @@
|
|||
%span{:style => "display: none;"}=issue.serial_id
|
||||
%td.td1=issue.serial_id
|
||||
%td
|
||||
%div=issue.title
|
||||
%a{:href => project_issue_path(@project.id, issue.serial_id)}
|
||||
%div.issue_title=issue.title
|
||||
.smalltext
|
||||
=issue.created_at.to_s(:long)
|
||||
=t("layout.issues.by") if issue.creator
|
||||
|
@ -13,8 +14,6 @@
|
|||
.labeltext.selected{:style => "background: ##{label.color};"}=label.name
|
||||
.both
|
||||
%td.td3
|
||||
%a{:href => project_issue_path(@project.id, issue.serial_id)}
|
||||
.code='#'
|
||||
.avatar
|
||||
=link_to image_tag(issue.user.avatar(22), :alt => 'avatar'), user_path(issue.user) if issue.user
|
||||
%a{:href => "#{project_issue_path @project, issue}#block-list"}
|
||||
|
|
|
@ -3,13 +3,16 @@
|
|||
%head
|
||||
%meta{:content => "text/html; charset=utf-8", "http-equiv" => "content-type"}
|
||||
= display_meta_tags :site => APP_CONFIG['project_name']
|
||||
= stylesheet_link_tag "application"
|
||||
= javascript_include_tag "application"
|
||||
- if controller_name == 'sessions' && action_name == 'new'
|
||||
= stylesheet_link_tag "login"
|
||||
= javascript_include_tag "login"
|
||||
- elsif ['registrations', 'passwords'].include?(controller_name) && ['new', 'create'].include?(action_name)
|
||||
= stylesheet_link_tag "reg_session"
|
||||
= csrf_meta_tag
|
||||
|
||||
%body
|
||||
#container
|
||||
#box
|
||||
= render :partial => "layouts/flashes"
|
||||
= yield
|
||||
-# render :partial => "layouts/flashes"
|
||||
= yield
|
||||
|
||||
= render 'layouts/counters' unless current_user.try(:admin?)
|
||||
%footer= render "layouts/menu/bottom"
|
||||
|
|
|
@ -62,7 +62,7 @@ Rosa::Application.configure do
|
|||
config.assets.digest = true
|
||||
|
||||
# Precompile additional assets (application.js, application.css, and all non-JS/CSS are already added)
|
||||
config.assets.precompile += %w()
|
||||
config.assets.precompile += %w(login.css login.js reg_session.css)
|
||||
end
|
||||
|
||||
# require 'stub_xml_rpc'
|
||||
|
|
|
@ -22,11 +22,16 @@ en:
|
|||
sessions:
|
||||
signed_in: 'Signed in successfully.'
|
||||
signed_out: 'Signed out successfully.'
|
||||
remember_me: 'Remember me'
|
||||
login: 'Login or email'
|
||||
password: 'Password'
|
||||
passwords:
|
||||
send_instructions: 'You will receive an email with instructions about how to reset your password in a few minutes.'
|
||||
updated: 'Your password was changed successfully. You are now signed in.'
|
||||
updated_not_active: 'Your password was changed successfully.'
|
||||
send_paranoid_instructions: "If your e-mail exists on our database, you will receive a password recovery link on your e-mail"
|
||||
forgot: 'Forgot password'
|
||||
send: 'Send'
|
||||
confirmations:
|
||||
send_instructions: 'You will receive an email with instructions about how to confirm your account in a few minutes.'
|
||||
send_paranoid_instructions: 'If your e-mail exists on our database, you will receive an email with instructions about how to confirm your account in a few minutes.'
|
||||
|
|
|
@ -24,11 +24,16 @@ ru:
|
|||
sessions:
|
||||
signed_in: "Вход в систему выполнен."
|
||||
signed_out: "Выход из системы выполнен."
|
||||
remember_me: 'Запомнить меня'
|
||||
login: 'Логин или email'
|
||||
password: 'Пароль'
|
||||
passwords:
|
||||
send_instructions: "В течение нескольких минут вы получите e-mail с инструкциями по восстановлению вашего пароля."
|
||||
updated: "Ваш пароль изменён. Теперь вы вошли в систему."
|
||||
updated_not_active: 'Ваш пароль успешно изменён.'
|
||||
send_paranoid_instructions: "Если Ваш e-mail существует, в течение нескольких минут вы получите e-mail с инструкциями по восстановлению вашего пароля."
|
||||
forgot: 'Забыли пароль'
|
||||
send: 'Послать'
|
||||
confirmations:
|
||||
send_instructions: "В течение нескольких минут вы получите e-mail с инструкциями по подтверждению вашей учётной записи."
|
||||
send_paranoid_instructions: 'Если Ваш e-mail существует, то в течение нескольких минут вы получите e-mail с инструкциями по подтверждению вашей учётной записи.'
|
||||
|
|
|
@ -600,6 +600,8 @@ en:
|
|||
updated_at: Updated
|
||||
role: System role
|
||||
language: Language
|
||||
password: Password
|
||||
password_confirm: Confirmation
|
||||
|
||||
product_build_list:
|
||||
id: Id
|
||||
|
@ -615,6 +617,15 @@ en:
|
|||
platform: Platform
|
||||
counter: Downloads
|
||||
|
||||
errors:
|
||||
messages:
|
||||
too_long:
|
||||
one: "maximum is %{count} character"
|
||||
other: "maximum is %{count} characters"
|
||||
too_short:
|
||||
one: "minimum is %{count} character"
|
||||
other: "minimum is %{count} characters"
|
||||
|
||||
notifications:
|
||||
subjects:
|
||||
new_comment_notification: New comment to your task
|
||||
|
|
|
@ -54,7 +54,7 @@ ru:
|
|||
devise:
|
||||
shared_links:
|
||||
sign_in: Войти
|
||||
sign_up: Зарегистрироваться
|
||||
sign_up: Регистрация
|
||||
forgot_password: Забыли пароль?
|
||||
confirm_again: Не получили инструкции по подтверждению?
|
||||
unlock: Не получили инструкции по разблокировке?
|
||||
|
@ -587,7 +587,7 @@ ru:
|
|||
name: Имя
|
||||
login: Псевдоним или Email
|
||||
email: Email
|
||||
uname: Псевдоним
|
||||
uname: Никнейм
|
||||
ssh_key: SSH ключ
|
||||
current_password: Текущий пароль
|
||||
role: Роль
|
||||
|
@ -595,6 +595,8 @@ ru:
|
|||
updated_at: Обновлен
|
||||
role: Роль в системе
|
||||
language: Язык
|
||||
password: Пароль
|
||||
password_confirm: Повторите пароль
|
||||
|
||||
product_build_list:
|
||||
id: Id
|
||||
|
@ -610,6 +612,19 @@ ru:
|
|||
platform: Архитектура
|
||||
counter: Закачки
|
||||
|
||||
errors:
|
||||
messages:
|
||||
too_long:
|
||||
one: "не может быть больше чем %{count} символ"
|
||||
few: "не может быть больше чем %{count} символа"
|
||||
many: "не может быть больше чем %{count} символов"
|
||||
other: "не может быть больше чем %{count} символа"
|
||||
too_short:
|
||||
one: "не может быть меньше %{count} символа"
|
||||
few: "не может быть меньше %{count} символов"
|
||||
many: "не может быть меньше %{count} символов"
|
||||
other: "не может быть меньше %{count} символа"
|
||||
|
||||
notifications:
|
||||
subjects:
|
||||
new_comment_notification: Новый комментарий к Вашей задаче
|
||||
|
|
Loading…
Reference in New Issue