Re-add compass. Add flash messages design. Refactor and fix bugs after merge. Remove duplicates, sync and separate locales . Fix some specs. Refs #263

This commit is contained in:
Pavel Chipiga 2012-03-03 02:19:31 +02:00
parent ea0ecffd23
commit 159fbe65dc
45 changed files with 791 additions and 442 deletions

View File

@ -43,8 +43,9 @@ gem 'jquery-rails', '~> 2.0.1'
group :assets do
gem 'sass-rails', '~> 3.2.4'
gem 'coffee-rails', '~> 3.2.2'
gem 'compass-rails', '~> 1.0.0.rc.3'
gem 'compass_twitter_bootstrap', '~> 2.0.1.2'
gem 'uglifier', '~> 1.2.1'
gem 'compass', '~> 0.12.rc.1' # :git => 'git://github.com/chriseppstein/compass.git', :branch => 'rails31'
gem 'therubyracer', '~> 0.9.10'
end

View File

@ -93,6 +93,10 @@ GEM
chunky_png (~> 1.2)
fssm (>= 0.2.7)
sass (~> 3.1)
compass-rails (1.0.0.rc.3)
compass (~> 0.12.rc.0)
compass_twitter_bootstrap (2.0.1.2)
compass
creole (0.4.2)
daemons (1.1.6)
delayed_job (3.0.1)
@ -111,7 +115,7 @@ GEM
execjs (1.3.0)
multi_json (~> 1.0)
expression_parser (0.9.0)
factory_girl (2.6.0)
factory_girl (2.6.1)
activesupport (>= 2.3.9)
factory_girl_rails (1.7.0)
factory_girl (~> 2.6.0)
@ -307,7 +311,8 @@ DEPENDENCIES
capistrano-ext
capistrano_colors
coffee-rails (~> 3.2.2)
compass (~> 0.12.rc.1)
compass-rails (~> 1.0.0.rc.3)
compass_twitter_bootstrap (~> 2.0.1.2)
creole
daemons (= 1.1.6)
delayed_job_active_record (~> 0.3.2)

View File

@ -1,17 +1,31 @@
@import 'compass/utilities/tables';
//@import "compass";
//@import "compass_twitter_bootstrap";
//@import "compass_twitter_bootstrap_responsive";
@import 'compass/utilities/tables';
table.info {
width: 100%;
border-spacing: 0;
td {padding: 5px;}
}
table.columns2 {
@include inner-table-borders;
th.first, td.first {width: 30%;}
}
table.columns3 {
@include alternating-rows-and-columns(#eee, #ccc, #000);
th.first, td.first, th.last, td.last {width: 30%;}
}
@import 'blueprint/interaction';
.flash {
.notice {
@include success;
}
.warning {
@include notice;
}
.error, .alert {
@include error;
}
}

View File

@ -75,7 +75,7 @@ class CommentsController < ApplicationController
def find_comment
@comment = Comment.find(params[:id])
if @comment.commentable_type == 'Grit::Commit'
if @comment.commit_comment?
@comment.project = @project
@comment.helper
end

View File

@ -41,7 +41,7 @@ class GroupsController < ApplicationController
current_user
end
if @group.save!
if @group.save
flash[:notice] = t('flash.group.saved')
redirect_to group_path(@group)
else

View File

@ -13,7 +13,7 @@ class UserMailer < ActionMailer::Base
def new_comment_notification(comment, user)
@user = user
@comment = comment
mail(:to => user.email, :subject => I18n.t("notifications.subjects.new_#{comment.commentable.class == Grit::Commit ? 'commit_' : ''}comment_notification")) do |format|
mail(:to => user.email, :subject => I18n.t("notifications.subjects.new_#{comment.commit_comment? ? 'commit_' : ''}comment_notification")) do |format|
format.html
end
end

View File

@ -45,7 +45,7 @@ class ActivityFeedObserver < ActiveRecord::Observer
)
end
end
elsif record.commentable.class == Grit::Commit
elsif record.commit_comment?
subscribes = Subscribe.comment_subscribes(record).where(:status => true)
subscribes.each do |subscribe|
next if record.own_comment?(subscribe.user)

View File

@ -1,4 +1,3 @@
.flash
- flash.each do |type, message|
.message{:class => type}
%p= message
.message{:class => type}= message

View File

@ -3,7 +3,7 @@
- if @comment.commentable.class == Issue
- link = link_to @comment.commentable.title, project_issue_url(@comment.commentable.project, @comment.commentable)
- object = 'issue'
- elsif @comment.commentable.class == Grit::Commit
- elsif @comment.commit_comment?
- link = link_to @comment.commentable.message, commit_url(@comment.project, @comment.commentable_id)
- object = 'commit'
%p #{ link_to @comment.user.uname, user_url(@comment.user)} added new comment to #{object} #{link}.

View File

@ -3,7 +3,7 @@
- if @comment.commentable.class == Issue
- link = link_to @comment.commentable.title, project_issue_url(@comment.commentable.project, @comment.commentable)
- object = 'задаче'
- elsif @comment.commentable.class == Grit::Commit
- elsif @comment.commit_comment?
- link = link_to @comment.commentable.message, commit_url(@comment.project, @comment.commentable_id)
- object = 'коммиту'
%p #{ link_to @comment.user.uname, user_url(@comment.user)} добавил комментарий к #{object} #{link}.

View File

@ -55,8 +55,5 @@ module Rosa
# Version of your assets, change this if you want to expire all your assets
config.assets.version = '1.0'
# Compass
config.sass.load_paths << Compass::Frameworks['compass'].stylesheets_directory if config.respond_to?(:sass)
end
end

View File

@ -69,9 +69,9 @@ after "deploy:setup", "deploy:symlink_pids"
# after "deploy:restart", "bluepill:start" # "bluepill:processes:restart_dj" # "bluepill:restart"
# DJ
after "deploy:stop", "delayed_job:stop"
after "deploy:start", "delayed_job:start"
after "deploy:restart", "delayed_job:restart"
# after "deploy:stop", "delayed_job:stop"
# after "deploy:start", "delayed_job:start"
# after "deploy:restart", "delayed_job:restart"
after "deploy:restart", "deploy:cleanup"

View File

@ -1,7 +0,0 @@
en:
layout:
comments:
has_commented: "adds a note"
notifications_are: "Notifications for new comments are"
comments_header: "Comments"
back: 'Back'

View File

@ -1,7 +0,0 @@
ru:
layout:
comments:
has_commented: "оставил комментарий"
notifications_are: "Уведомления о последующих комментариях"
comments_header: "Комментарии"
back: 'Назад'

View File

@ -1,15 +0,0 @@
en:
layout:
projects:
diff_show_header: "%{files} with %{additions} and %{deletions}."
about_subheader: "About project"
last_commit: "Last commit"
filename: File
age: Modification date
message: Message
author: Author
current_branch: Current branch
current_commit: Current commit
files_in_project: Files in

View File

@ -1,15 +0,0 @@
ru:
layout:
projects:
diff_show_header: "%{files} с %{additions} и %{deletions}."
about_subheader: "О проекте"
last_commit: "Последний коммит"
filename: Файл
age: Дата модификации
message: Сообщение
author: Автор
current_branch: Текущая ветка
current_commit: Текущий коммит
files_in_project: Файлы в

View File

@ -1,16 +1,16 @@
en:
layout:
activity_feed:
header: Activity Feed
notifications:
subjects:
new_comment_notification: New comment to task
new_comment_notification: New comment to your task
new_commit_comment_notification: New comment to commit
new_issue_notification: New task added to project
new_user_notification: Registered on project «%{ project_name }»
issue_assign_notification: New task assigned
invite_approve_notification: Invitation to ABF
bodies:
new_comment_notification:

View File

@ -1,16 +1,16 @@
ru:
layout:
activity_feed:
header: Лента активности
notifications:
subjects:
new_comment_notification: Новый комментарий к задаче
new_comment_notification: Новый комментарий к Вашей задаче
new_commit_comment_notification: Новый комментарий к коммиту
new_issue_notification: Новая задача добавлена к проекту
new_user_notification: Регистрация на проекте «%{ project_name }»
issue_assign_notification: Вам назначили задачу
invite_approve_notification: Приглашение в ABF
bodies:
new_comment_notification:

View File

@ -0,0 +1,22 @@
en:
layout:
comments:
confirm_delete: Are you sure to delete the comment?
new_header: New comment
edit_header: Editing a comment
has_commented: "adds a note"
notifications_are: "Notifications for new comments are"
comments_header: "Comments"
back: 'Back'
flash:
comment:
saved: Comment saved
save_error: Comment saves error
destroyed: Comment deleted
activerecord:
attributes:
comment:
body: Content
user: Author

View File

@ -0,0 +1,22 @@
ru:
layout:
comments:
confirm_delete: Вы уверены, что хотите удалить комментарий?
new_header: Новый комментарий
edit_header: Редактирование комментария
has_commented: "оставил комментарий"
notifications_are: "Уведомления о последующих комментариях"
comments_header: "Комментарии"
back: 'Назад'
flash:
comment:
saved: Комментарий успешно сохранен
save_error: Ошибка сохранения комментария
destroyed: Комментарий удален
activerecord:
attributes:
comment:
body: Содержание
user: Автор

View File

@ -48,3 +48,20 @@ en:
versions_list: version list
status: the status of the assembly
project_build: build package
layout:
event_logs:
list: List
list_header: Event log
activerecord:
models:
event_log: Event log
attributes:
event_log:
kind: Event type
created_at: Event date and time
user: User
ip: User IP
protocol: Access protocol
description: Description

View File

@ -48,3 +48,20 @@ ru:
versions_list: список версий
status: статус сборки
project_build: сборка пакета
layout:
event_logs:
list: Список
list_header: Лог событий
activerecord:
models:
event_log: Лог событий
attributes:
event_log:
kind: Тип события
created_at: Дата и время события
user: Пользователь
ip: IP пользователя
protocol: Протокол доступа
description: Описание события

View File

@ -12,6 +12,12 @@ en:
back_to_the_list: ⇐ List of groups
confirm_delete: Are you sure to remove this group?
edit_members: Edit members
group: Group
description: Descripton
leave_group: Leave group
projects_list: Projects list
public_profile: Public profile
delete_warning: Attention! Deleted group can not be restored!
members:
back_to_group: Back to group
@ -21,6 +27,12 @@ en:
input_username: Username
flash:
group:
saved: Group saved
save_error: Group saves error
destroyed: Group deleted
user_uname_exists: User already exists
members:
successfully_changed: Members list successfully changed
error_in_changing: Members list changing error
@ -29,6 +41,8 @@ en:
already_added: User already added
activerecord:
models:
group: Group
attributes:
group:
name: Name
@ -36,3 +50,4 @@ en:
owner: Owner
created_at: Created
updated_at: Updated
description: Description

View File

@ -26,7 +26,6 @@ ru:
add_member: Добавить участника
input_username: Псевдоним пользователя
flash:
group:
saved: Группа успешно сохранена
@ -41,9 +40,9 @@ ru:
error_in_adding: Ошибка при добавлении участника
already_added: Пользователь уже добавлен
activerecord:
models:
group: Группа
attributes:
group:
name: Название

View File

@ -0,0 +1,66 @@
en:
layout:
platforms:
admin_id: Owner
build_all: Build all
list: List
new: Create
edit: Edit
new_header: New platform
edit_header: Edit
list_header: Platforms
list_header_main: General
list_header_personal: Personal
list_header_all: All
clone_header: Platform clone
show: Platform
projects: Projects
products: Products
location: Location
repositories: Repositories
back_to_the_list: ⇐To platform list
freeze: Freeze
unfreeze: Unfeeze
confirm_freeze: Are you sure to freeze this platform?
confirm_freeze: Are you sure to clone this platform?
confirm_unfreeze: Are you sure to defrost this platform?
released_suffix: (released)
confirm_delete: Are you sure to delete this platform?
current_platform_header: Current platform
owner: Owner
visibility: Visibility
platform_type: Platform type
distrib_type: Distribution kit type
private_users: Access data
confirm_clone: To clone?
clone: To clone
flash:
platform:
saved: Platform saved
save_error: Platform saves error
freezed: Platform freezed
freeze_error: Platform freezing error, try again
unfreezed: Platform unfreezed
unfreeze_error: Platform unfreezing error, try again
destroyed: Platform deleted
build_all_success: All project build in progress
clone_success: Cloned successfully
activerecord:
models:
platform: Platform
attributes:
platform:
name: Name
description: Description
parent_platform_id: Parent platform
parent: Parent platform
released: Released
created_at: Created
updated_at: Updated
distrib_type: Source type
visibility: Status
visibility_types:
open: Open
hidden: Hidden

View File

@ -0,0 +1,66 @@
ru:
layout:
platforms:
admin_id: Владелец
build_all: Собрать все
list: Список
new: Создать
edit: Редактировать
new_header: Новая платформа
edit_header: Редактировать
list_header: Платформы
list_header_main: Основные
list_header_personal: Персональные
list_header_all: Все
clone_header: Клонирование платформы
show: Платформа
projects: Проекты
products: Продукты
location: Расположение
repositories: Репозитории
back_to_the_list: К списку платформ
freeze: Заморозить
unfreeze: Разморозить
confirm_freeze: Вы уверены, что хотите заморозить эту платформу?
confirm_freeze: Вы уверены, что хотите клонировать эту платформу?
confirm_unfreeze: Вы уверены, что хотите разморозить эту платформу?
released_suffix: (выпущена)
confirm_delete: Вы уверены, что хотите удалить эту платформу?
current_platform_header: Текущая платформа
owner: Владелец
visibility: Видимость
platform_type: Тип платформы
distrib_type: Тип дистрибутива
private_users: Данные для доступа
confirm_clone: Клонировать?
clone: Клонировать
flash:
platform:
saved: Платформа успешно добавлена
save_error: Не удалось создать платформу
freezed: Платформа успешно заморожена
freeze_error: Не удалось заморозить платформу, попробуйте еще раз
unfreezed: Платформа успешно разморожена
unfreeze_error: Не удалось разморозить платформу, попробуйте еще раз
destroyed: Платформа успешно удалена
build_all_success: Все проекты успешно отправлены на сборку
clone_success: Клонирование успешно
activerecord:
models:
platform: Платформа
attributes:
platform:
name: Название
description: Описание
parent_platform_id: Родительская платформа
parent: Родительская платформа
released: Released
created_at: Создана
updated_at: Обновлена
distrib_type: Тип дистрибутива
visibility: Статус
visibility_types:
open: Открытый
hidden: Закрытый

View File

@ -0,0 +1,55 @@
en:
layout:
products:
list: List
new: New product
list_header: Products
clone: Clone
build: Build
new_header: New product
edit_header: Product editing
confirm_delete: Are you sure to delete this product?
cron_tab_generator:
show: Show cron tab the generator
hide: Hide cron tab the generator
choose: Choose
every_minute: Every minute
every_hour: Every hour
every_day: Every day
every_month: Every month
every_weekday: Every weekdays
minutes: Minutes
hours: Hours
days: Days
months: Months
weekdays: weekdays
flash:
product:
saved: Product saved
save_error: Product saves error
build_started: Product build started
destroyed: Product deleted
build_list_delete: Product build list deleted
activerecord:
models:
product: Product
attributes:
product:
name: Name
platform_id: Platform
build_status: Build status
build_path: ISO path
created_at: Created
updated_at: Updated
ks: Content .ks.template
counter: Content .counter
build_script: Content build
menu: Content .menu.xml
tar: Tar.bz2 file
is_template: Template
system_wide: System
cron_tab: Cront tab
use_cron: Cron usage

View File

@ -0,0 +1,55 @@
ru:
layout:
products:
list: Список
new: Новый продукт
list_header: Продукты
clone: Клонировать
build: Собрать
new_header: Новый продукт
edit_header: Редактирование продукта
confirm_delete: Вы уверены, что хотите удалить этот продукт?
cron_tab_generator:
show: Показать cron tab генератор
hide: Спрятать cron tab генератор
choose: Выберите
every_minute: Каждую минуту
every_hour: Каждый час
every_day: Каждый день
every_month: Каждый месяц
every_weekday: Каждый день недели
minutes: Минуты
hours: Часы
days: Дни
months: Месяцы
weekdays: Дни недели
flash:
product:
saved: Продукт успешно сохранен
save_error: Не удалось сохранить изменения
build_started: Запущена сборка продукта
destroyed: Продукт удален
build_list_delete: Сборочный лист продукта удален
activerecord:
models:
product: Продукт
attributes:
product:
name: Название
platform_id: Платформа
build_status: Статус последней сборки
build_path: Путь к iso
created_at: Создан
updated_at: Обновлен
ks: Содержимое .ks.template
counter: Содержимое .counter
build_script: Содержимое build
menu: Содержимое .menu.xml
tar: Tar.bz2 файл
is_template: Шаблон
system_wide: Общесистемный
cron_tab: Cront tab
use_cron: Использовать крон

View File

@ -0,0 +1,77 @@
en:
layout:
projects:
add: Add
edit: Edit
list: List
list_header: Projects
edit_header: Edit the project
show: Project
build: Build
new_build: New build %{project_name}
confirm_delete: Are you sure to delete this project?
new: New project
new_header: New project
new_header: New project
location: Location
git_repo_location: Path to git repo
current_project_header: Current project
current_build_lists: Current builds
build_button: Start build
add_collaborators: Add collaborators
members: Members
collaborators: Collaborators
groups: Groups
edit_collaborators: Edit collaborators
issues: Issues
wiki: Wiki
delete_warning: Attention! Deleted project can not be restored!
sections: Sections
has_issue_description: Issues adds lightweight issue tracking tightly integrated with your repository. Add issues to milestones, label issues, and close & reference issues from commit messages.
has_wiki_description: Wikis are the simplest way to let others contribute content. Any user can create and edit pages to use for documentation, examples, support or anything you wish.
diff_show_header: "%{files} with %{additions} and %{deletions}."
about_subheader: "About project"
last_commit: "Last commit"
filename: File
age: Modification date
message: Message
author: Author
current_branch: Current branch
current_commit: Current commit
files_in_project: Files in
flash:
project:
saved: Project saved
save_error: Project saves error
save_warning_ssh_key: Owner of the project must specify in profile a SSH key
destroyed: Project deleted
forked: Project forked
fork_error: Project fork error
activerecord:
models:
project: Project
attributes:
project:
category_id: Category
name: Name
description: Descripton
owner: Owner
visibility: Visibility
visibility_types:
open: Open
hidden: Hidden
repository_id: Repository
repository: Repository
created_at: Created
updated_at: Updated
has_issues: Tracker on
has_wiki: Wiki on
srpm: Import code from src.rpm
who_owns:
me: I
group: Group

View File

@ -0,0 +1,77 @@
ru:
layout:
projects:
add: Добавить
edit: Редактировать
list: Список
list_header: Проекты
edit_header: Редактировать проект
show: Проект
build: Собрать
new_build: Новая сборка %{project_name}
confirm_delete: Вы уверены, что хотите удалить этот проект?
new: Новый проект
new_header: Новый проект
new_header: Новый проект
location: Расположение
git_repo_location: Путь к git-репозиторию
current_project_header: Текущий проект
current_build_lists: Текущие сборки
build_button: Начать сборку
add_collaborators: Добавить коллабораторов
members: Участники
collaborators: Коллабораторы
groups: Группы
edit_collaborators: Изменить список участников
issues: Задачи
wiki: Wiki
delete_warning: Внимание! Удаленный проект восстановлению не подлежит.
sections: Разделы
has_issue_description: Трэкер предоставляет лекговесный менеджер для задач по разработке Вашего проекта.
has_wiki_description: Wiki - это самый простой способ предоставить другим вносить свой вклад в развитие Вашего проекта. Каждый пользователь нашего сервиса может использовать Wiki для документирования, примеров, поддержки или всего другого, в чем у Вас появится необходимость.
diff_show_header: "%{files} с %{additions} и %{deletions}."
about_subheader: "О проекте"
last_commit: "Последний коммит"
filename: Файл
age: Дата модификации
message: Сообщение
author: Автор
current_branch: Текущая ветка
current_commit: Текущий коммит
files_in_project: Файлы в
flash:
project:
saved: Проект успешно сохранен
save_error: Не удалось сохранить проект
save_warning_ssh_key: Владельцу проекта необходимо указать в профиле свой SSH ключ
destroyed: Проект успешно удален
forked: Проект успешно форкнут
fork_error: Ошибка форка
activerecord:
models:
project: Проект
attributes:
project:
category_id: Категория
name: Название
description: Описание
owner: Владелец
visibility: Видимость
visibilities:
open: Публичная
hidden: Приватная
repository_id: Репозиторий
repository: Репозиторий
created_at: Создан
updated_at: Обновлен
has_issues: Включить трэкер
has_wiki: Включить Wiki
srpm: Импортировать код из src.rpm
who_owns:
me: Я
group: Группа

View File

@ -0,0 +1,45 @@
en:
layout:
repositories:
list: List
list_header: Repositories
new: New repository
new_header: New repository
show: Repository
location: Location
projects: Projects
new_header: New repository
back_to_the_list: ⇐ List of repositories
confirm_delete: Are you sure to delete this repository?
current_repository_header: Current repository
personal_repositories:
settings_header: Settings
change_visibility_from_hidden: Replace the status to "Opened"
change_visibility_from_open: Replace the status to "Private"
settings: Settings
show: My repository
private_users: Private repository users
flash:
repository:
saved: Repository added
save_error: Repository adding error
destroyed: Repository deleted
project_added: Project added on repository
project_not_added: Project adding error. In this repository already is a project with such name. First remove the old project
project_removed: Project deleted
project_not_removed: Project deleting failed
activerecord:
models:
repository: Repository
attributes:
repository:
name: Name
description: Description
platform_id: Platform
platform: Platform
created_at: Created
updated_at: Updated
owner: Owner

View File

@ -0,0 +1,45 @@
ru:
layout:
repositories:
list: Список
list_header: Репозитории
new: Новый репозиторий
new_header: Новый репозиторий
show: Репозиторий
location: Расположение
projects: Проекты
new_header: Новый репозиторий
back_to_the_list: К списку репозиториев
confirm_delete: Вы уверены, что хотите удалить этот репозиторий?
current_repository_header: Текущий репозиторий
personal_repositories:
settings_header: Настройки
change_visibility_from_hidden: Сменить статус на "Открытый"
change_visibility_from_open: Сменить статус на "Приватный"
settings: Настройки
show: Мой репозиторий
private_users: Пользователи приватного репозитория
flash:
repository:
saved: Репозиторий успешно добавлен
save_error: Не удалось добавить репозиторий
destroyed: Репозиторий успешно удален
project_added: Проект добавлен к репозиторию
project_not_added: Не удалось добавить проект. В этом репозитории уже есть проект с таким именем. Сначала нужно удалить старый проект
project_removed: Проект удален из репозитория
project_not_removed: Не удалось удалить проект из репозитория
activerecord:
models:
repository: Репозиторий
attributes:
repository:
name: Название
description: Описание
platform_id: Платформа
platform: Платформа
created_at: Создан
updated_at: Обновлен
owner: Владелец

View File

@ -0,0 +1,41 @@
en:
layout:
users:
list: List
new: Create
edit: Edit
new_header: New user
edit_header: Edit
list_header: Users
groups: Groups
show: User
back_to_the_list: ⇐ List of users
confirm_delete: Are you sure to remove this user?
own_projects: My projects
part_projects: Participate projects
filter_header: Filter
flash:
user:
saved: User saved
save_error: User data saves error
destroyed: User account deleted
activerecord:
models:
user: User
attributes:
user:
name: User
login: Nickname or Email
email: Email
uname: Nickname
ssh_key: SSH key
current_password: Current password
role: Role
created_at: Created
updated_at: Updated
role: System role
language: Language
password: Password
password_confirm: Confirmation

View File

@ -0,0 +1,41 @@
ru:
layout:
users:
list: Список
new: Создать
edit: Редактировать
new_header: Новый пользователь
edit_header: Редактировать
list_header: Пользователи
groups: Группы
show: Пользователь
back_to_the_list: К списку пользователей
confirm_delete: Вы уверены, что хотите удалить этого пользователя?
own_projects: Мои проекты
part_projects: Участвую в проектах
filter_header: Фильтр
flash:
user:
saved: Пользователь успешно сохранен
save_error: Не удалось сохранить данные о пользователе
destroyed: Учетная запись успешно удалена
activerecord:
models:
user: Пользователь
attributes:
user:
name: Имя
login: Псевдоним или Email
email: Email
uname: Никнейм
ssh_key: SSH ключ
current_password: Текущий пароль
role: Роль
created_at: Создан
updated_at: Обновлен
role: Роль в системе
language: Язык
password: Пароль
password_confirm: Повторите пароль

View File

@ -23,6 +23,7 @@ ru:
show: Просмотр
cancel: Отмена
create: Создать
update: Обновить
delete: Удалить
save: Сохранить
search: Искать
@ -37,7 +38,6 @@ ru:
false_: Нет
publish: Опубликовать
add: Добавить
update: Обновить
upload: Загрузить
not_access: Нет доступа!
owner: Владелец
@ -109,126 +109,6 @@ ru:
edit_header: Редактировать категорию
confirm_delete: Вы уверены, что хотите удалить эту категорию?
comments:
confirm_delete: Вы уверены, что хотите удалить комментарий?
new_header: Новый комментарий
edit_header: Редактирование комментария
platforms:
admin_id: Владелец
build_all: Собрать все
list: Список
new: Создать
edit: Редактировать
new_header: Новая платформа
edit_header: Редактировать
list_header: Платформы
list_header_main: Основные
list_header_personal: Персональные
list_header_all: Все
clone_header: Клонирование платформы
show: Платформа
projects: Проекты
products: Продукты
location: Расположение
repositories: Репозитории
back_to_the_list: К списку платформ
freeze: Заморозить
unfreeze: Разморозить
confirm_freeze: Вы уверены, что хотите заморозить эту платформу?
confirm_freeze: Вы уверены, что хотите клонировать эту платформу?
confirm_unfreeze: Вы уверены, что хотите разморозить эту платформу?
released_suffix: (выпущена)
confirm_delete: Вы уверены, что хотите удалить эту платформу?
current_platform_header: Текущая платформа
owner: Владелец
visibility: Видимость
platform_type: Тип платформы
distrib_type: Тип дистрибутива
private_users: Данные для доступа
confirm_clone: Клонировать?
clone: Клонировать
event_logs:
list: Список
list_header: Лог событий
repositories:
list: Список
list_header: Репозитории
new: Новый репозиторий
new_header: Новый репозиторий
show: Репозиторий
location: Расположение
projects: Проекты
new_header: Новый репозиторий
back_to_the_list: К списку репозиториев
confirm_delete: Вы уверены, что хотите удалить этот репозиторий?
current_repository_header: Текущий репозиторий
personal_repositories:
settings_header: Настройки
change_visibility_from_hidden: Сменить статус на "Открытый"
change_visibility_from_open: Сменить статус на "Приватный"
settings: Настройки
show: Мой репозиторий
private_users: Пользователи приватного репозитория
products:
list: Список
new: Новый продукт
list_header: Продукты
clone: Клонировать
build: Собрать
new_header: Новый продукт
edit_header: Редактирование продукта
confirm_delete: Вы уверены, что хотите удалить этот продукт?
cron_tab_generator:
show: Показать cron tab генератор
hide: Спрятать cron tab генератор
choose: Выберите
every_minute: Каждую минуту
every_hour: Каждый час
every_day: Каждый день
every_month: Каждый месяц
every_weekday: Каждый день недели
minutes: Минуты
hours: Часы
days: Дни
months: Месяцы
weekdays: Дни недели
projects:
add: Добавить
edit: Редактировать
list: Список
list_header: Проекты
edit_header: Редактировать проект
show: Проект
build: Собрать
new_build: Новая сборка %{project_name}
confirm_delete: Вы уверены, что хотите удалить этот проект?
new: Новый проект
new_header: Новый проект
new_header: Новый проект
location: Расположение
git_repo_location: Путь к git-репозиторию
current_project_header: Текущий проект
current_build_lists: Текущие сборки
build_button: Начать сборку
add_collaborators: Добавить коллабораторов
members: Участники
collaborators: Коллабораторы
groups: Группы
edit_collaborators: Изменить список участников
issues: Задачи
wiki: Wiki
delete_warning: Внимание! Удаленный проект восстановлению не подлежит.
sections: Разделы
has_issue_description: Трэкер предоставляет лекговесный менеджер для задач по разработке Вашего проекта.
has_wiki_description: Wiki - это самый простой способ предоставить другим вносить свой вклад в развитие Вашего проекта. Каждый пользователь нашего сервиса может использовать Wiki для документирования, примеров, поддержки или всего другого, в чем у Вас появится необходимость.
collaborators:
back_to_proj: Вернуться к проекту
edit: Редактировать список
@ -246,21 +126,6 @@ ru:
writer: Писатель
admin: Админ
users:
list: Список
new: Создать
edit: Редактировать
new_header: Новый пользователь
edit_header: Редактировать
list_header: Пользователи
groups: Группы
show: Пользователь
back_to_the_list: К списку пользователей
confirm_delete: Вы уверены, что хотите удалить этого пользователя?
own_projects: Мои проекты
part_projects: Участвую в проектах
filter_header: Фильтр
git:
repositories:
empty: "Репозиторий пуст. Если вы клонировали(Fork) проект или импортировали пакет, данные скоро появятся"
@ -318,60 +183,6 @@ ru:
save_error: Не удалось сохранить категорию
destroyed: Категория успешно удалена
comment:
saved: Комментарий успешно сохранен
save_error: Ошибка сохранения комментария
destroyed: Комментарий удален
project:
saved: Проект успешно сохранен
save_error: Не удалось сохранить проект
save_warning_ssh_key: Владельцу проекта необходимо указать в профиле свой SSH ключ
destroyed: Проект успешно удален
forked: Проект успешно форкнут
fork_error: Ошибка форка
user:
saved: Пользователь успешно сохранен
save_error: Не удалось сохранить данные о пользователе
destroyed: Учетная запись успешно удалена
repository:
saved: Репозиторий успешно добавлен
save_error: Не удалось добавить репозиторий
destroyed: Репозиторий успешно удален
project_added: Проект добавлен к репозиторию
project_not_added: Не удалось добавить проект. В этом репозитории уже есть проект с таким именем. Сначала нужно удалить старый проект
project_removed: Проект удален из репозитория
project_not_removed: Не удалось удалить проект из репозитория
product:
saved: Продукт успешно сохранен
save_error: Не удалось сохранить изменения
build_started: Запущена сборка продукта
destroyed: Продукт удален
build_list_delete: Сборочный лист продукта удален
platform:
saved: Платформа успешно добавлена
save_error: Не удалось создать платформу
freezed: Платформа успешно заморожена
freeze_error: Не удалось заморозить платформу, попробуйте еще раз
unfreezed: Платформа успешно разморожена
unfreeze_error: Не удалось разморозить платформу, попробуйте еще раз
destroyed: Платформа успешно удалена
build_all_success: Все проекты успешно отправлены на сборку
clone_success: Клонирование успешно
wiki:
ref_not_exist: Версия не существует
successfully_updated: Страница '%{name}' успешно обновлена
duplicate_page: Страница '%{name}' уже существует
page_successfully_removed: Страница успешно удалена
page_not_found: Страница '%{name}' не найдена.
revert_success: Изменения успешно откачены
patch_does_not_apply: Не удалось откатить изменения
blob:
successfully_updated: Файл '%{name}' успешно обновлен
updating_error: Ошибка обновления файла '%{name}'
@ -394,22 +205,13 @@ ru:
models:
category: Категория
repository: Репозиторий
arch: Arch
container: Container
platform: Платформа
group: Группа
event_log: Лог событий
project: Проект
rpm: RPM
user: Пользователь
private_user: Приватный пользователь
product: Продукт
product_build_list: Сборочный лист продукта
download: Статистика
auto_build_list: Автоматическая пересборка пакетов
settings:
notifier: Настройки оповещений
attributes:
settings:
@ -433,10 +235,6 @@ ru:
arch_id: Архитектура
arch: Архитектура
comment:
body: Содержание
user: Автор
private_user:
login: Логин
password: Пароль
@ -445,32 +243,6 @@ ru:
parent_id: Родитель
name: Название
repository:
name: Название
description: Описание
platform_id: Платформа
platform: Платформа
created_at: Создан
updated_at: Обновлен
owner: Владелец
product:
name: Название
platform_id: Платформа
build_status: Статус последней сборки
build_path: Путь к iso
created_at: Создан
updated_at: Обновлен
ks: Содержимое .ks.template
counter: Содержимое .counter
build_script: Содержимое build
menu: Содержимое .menu.xml
tar: Tar.bz2 файл
is_template: Шаблон
system_wide: Общесистемный
cron_tab: Cront tab
use_cron: Использовать крон
arch:
name: Название
created_at: Создана
@ -485,48 +257,6 @@ ru:
created_at: Создан
updated_at: Обновлен
platform:
name: Название
description: Описание
parent_platform_id: Родительская платформа
parent: Родительская платформа
released: Released
created_at: Создана
updated_at: Обновлена
distrib_type: Тип дистрибутива
visibility: Статус
visibility_types:
open: Открытый
hidden: Закрытый
event_log:
kind: Тип события
created_at: Дата и время события
user: Пользователь
ip: IP пользователя
protocol: Протокол доступа
description: Описание события
project:
category_id: Категория
name: Название
description: Описание
owner: Владелец
visibility: Видимость
visibilities:
open: Публичная
hidden: Приватная
repository_id: Репозиторий
repository: Репозиторий
created_at: Создан
updated_at: Обновлен
has_issues: Включить трэкер
has_wiki: Включить Wiki
srpm: Импортировать код из src.rpm
who_owns:
me: Я
group: Группа
rpm:
name: Название
arch_id: Arch
@ -536,28 +266,6 @@ ru:
created_at: Создан
updated_at: Обновлен
role:
name: Название
on: Ведомый
to: Ведущий
use_default: По умолчанию
use_default_for_owner: По умолчанию для владельца
user:
name: Имя
login: Псевдоним или Email
email: Email
uname: Никнейм
ssh_key: SSH ключ
current_password: Текущий пароль
role: Роль
created_at: Создан
updated_at: Обновлен
role: Роль в системе
language: Язык
password: Пароль
password_confirm: Повторите пароль
product_build_list:
id: Id
product: Продукт
@ -571,4 +279,3 @@ ru:
distro: Дистрибутив
platform: Архитектура
counter: Закачки

View File

@ -63,3 +63,13 @@ en:
# Welcome to **Wiki** #
Edit this page and create new ones.
flash:
wiki:
ref_not_exist: No such version
successfully_updated: Page '%{name}' successfully updated
duplicate_page: Page '%{name}' already exists
page_successfully_removed: Page successfully removed
page_not_found: Page '%{name}' not found
revert_success: Changes successfully reverted
patch_does_not_apply: Patch does not apply

View File

@ -63,3 +63,13 @@ ru:
# Добро пожаловать в **Wiki** #
Отредактируйте эту страницу и создайте новые.
flash:
wiki:
ref_not_exist: Версия не существует
successfully_updated: Страница '%{name}' успешно обновлена
duplicate_page: Страница '%{name}' уже существует
page_successfully_removed: Страница успешно удалена
page_not_found: Страница '%{name}' не найдена.
revert_success: Изменения успешно откачены
patch_does_not_apply: Не удалось откатить изменения

View File

@ -17,22 +17,14 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.integer "user_id", :null => false
t.string "kind"
t.text "data"
t.datetime "created_at"
t.datetime "updated_at"
end
create_table "activity_feeds", :force => true do |t|
t.integer "user_id", :null => false
t.string "kind"
t.text "data"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "arches", :force => true do |t|
t.string "name", :null => false
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
add_index "arches", ["name"], :name => "index_arches_on_name", :unique => true
@ -41,8 +33,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.integer "user_id"
t.string "provider"
t.string "uid"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
add_index "authentications", ["provider", "uid"], :name => "index_authentications_on_provider_and_uid", :unique => true
@ -53,8 +45,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.integer "arch_id"
t.integer "pl_id"
t.integer "bpl_id"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "build_list_items", :force => true do |t|
@ -62,8 +54,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.integer "level"
t.integer "status"
t.integer "build_list_id"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "version"
end
@ -77,8 +69,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.integer "project_id"
t.integer "arch_id"
t.datetime "notified_at"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.boolean "is_circle", :default => false
t.text "additional_repos"
t.string "name"
@ -101,16 +93,16 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.string "name"
t.string "ancestry"
t.integer "projects_count", :default => 0, :null => false
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "comments", :force => true do |t|
t.string "commentable_type"
t.integer "user_id"
t.text "body"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.decimal "commentable_id", :precision => 50, :scale => 0
end
@ -118,8 +110,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.string "name", :null => false
t.integer "project_id", :null => false
t.integer "owner_id", :null => false
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "delayed_jobs", :force => true do |t|
@ -131,8 +123,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.datetime "locked_at"
t.datetime "failed_at"
t.string "locked_by"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "queue"
end
@ -144,8 +136,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.string "distro"
t.string "platform"
t.integer "counter", :default => 0
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "event_logs", :force => true do |t|
@ -160,14 +152,14 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.string "controller"
t.string "action"
t.text "message"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "groups", :force => true do |t|
t.integer "owner_id"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "uname"
t.integer "own_projects_count", :default => 0, :null => false
t.text "description"
@ -180,8 +172,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.string "title"
t.text "body"
t.string "status", :default => "open"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.integer "creator_id"
t.datetime "closed_at"
t.integer "closed_by"
@ -212,8 +204,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.string "description"
t.string "name"
t.integer "parent_platform_id"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.boolean "released", :default => false
t.integer "owner_id"
t.string "owner_type"
@ -226,8 +218,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.integer "platform_id"
t.string "login"
t.string "password"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.integer "user_id"
end
@ -235,8 +227,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.integer "product_id"
t.integer "status", :default => 2, :null => false
t.datetime "notified_at"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
add_index "product_build_lists", ["product_id"], :name => "index_product_build_lists_on_product_id"
@ -246,8 +238,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.integer "platform_id", :null => false
t.integer "build_status", :default => 2, :null => false
t.string "build_path"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.text "build_script"
t.text "counter"
t.text "ks"
@ -267,8 +259,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.string "name"
t.string "version"
t.datetime "file_mtime"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.integer "platform_id"
end
@ -277,14 +269,14 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
create_table "project_to_repositories", :force => true do |t|
t.integer "project_id"
t.integer "repository_id"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "projects", :force => true do |t|
t.string "name"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.integer "owner_id"
t.string "owner_type"
t.string "visibility", :default => "open"
@ -301,6 +293,9 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.boolean "is_rpm", :default => true
end
add_index "projects", ["category_id"], :name => "index_projects_on_category_id"
add_index "projects", ["owner_id"], :name => "index_projects_on_name_and_owner_id_and_owner_type", :unique => true, :case_sensitive => false
create_table "register_requests", :force => true do |t|
t.string "name"
t.string "email"
@ -321,16 +316,16 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.string "object_type"
t.integer "target_id"
t.string "target_type"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "role"
end
create_table "repositories", :force => true do |t|
t.string "description", :null => false
t.integer "platform_id", :null => false
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "name", :null => false
end
@ -338,8 +333,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.string "name", :null => false
t.integer "arch_id", :null => false
t.integer "project_id", :null => false
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
add_index "rpms", ["project_id", "arch_id"], :name => "index_rpms_on_project_id_and_arch_id"
@ -352,8 +347,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
t.boolean "new_comment_reply", :default => true
t.boolean "new_issue", :default => true
t.boolean "issue_assign", :default => true
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.boolean "new_comment_commit_owner", :default => true
t.boolean "new_comment_commit_repo_owner", :default => true
t.boolean "new_comment_commit_commentor", :default => true
@ -362,8 +357,8 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
create_table "subscribes", :force => true do |t|
t.string "subscribeable_type"
t.integer "user_id"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.boolean "status", :default => true
t.integer "project_id"
t.decimal "subscribeable_id", :precision => 50, :scale => 0
@ -372,24 +367,19 @@ ActiveRecord::Schema.define(:version => 20120302102734) do
create_table "users", :force => true do |t|
t.string "name"
t.string "email", :default => "", :null => false
t.string "encrypted_password", :limit => 128, :default => "", :null => false
t.string "password_salt", :default => "", :null => false
t.string "encrypted_password", :default => "", :null => false
t.string "reset_password_token"
t.datetime "reset_password_sent_at"
t.datetime "remember_created_at"
t.datetime "created_at"
t.datetime "updated_at"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.text "ssh_key"
t.string "uname"
t.string "role"
t.string "language", :default => "en"
t.string "confirmation_token"
t.datetime "confirmed_at"
t.datetime "confirmation_sent_at"
t.integer "own_projects_count", :default => 0, :null => false
t.datetime "reset_password_sent_at"
end
add_index "users", ["confirmation_token"], :name => "index_users_on_confirmation_token", :unique => true
add_index "users", ["email"], :name => "index_users_on_email", :unique => true
add_index "users", ["reset_password_token"], :name => "index_users_on_reset_password_token", :unique => true
add_index "users", ["uname"], :name => "index_users_on_uname", :unique => true

View File

@ -1,6 +1,6 @@
#!/usr/bin/env ruby
ENV['RAILS_ENV'] ||= "production"
# ENV['RAILS_ENV'] ||= "production"
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'config', 'environment'))
require 'delayed/command'
Delayed::Command.new(ARGV).daemonize

View File

@ -6,8 +6,8 @@ describe GroupsController do
stub_rsync_methods
@group = Factory(:group)
@another_user = Factory(:user)
@create_params = {:group => {:name => 'grp1', :uname => 'un_grp1'}}
@update_params = {:group => {:name => 'grp2'}}
@create_params = {:group => {:description => 'grp1', :uname => 'un_grp1'}}
@update_params = {:group => {:description => 'grp2'}}
end
context 'for guest' do

View File

@ -1,6 +1,6 @@
# -*- encoding : utf-8 -*-
Factory.define(:group) do |g|
g.name { Factory.next(:string) }
g.uname { Factory.next(:uname) }
g.description 'Description'
g.association :owner, :factory => :user
end