# HG changeset patch # User Luis Figueira # Date 1292507025 0 # Node ID 5467cbbf393b06708f737ec019cd93b68fbd900a # Parent 7366fb57fce9a86d3749ebc8a453898738770c8b# Parent 98b2834d136b3339d186b0c491cd2658e110275d Merge from branch "live" diff -r 7366fb57fce9 -r 5467cbbf393b app/controllers/application_controller.rb --- a/app/controllers/application_controller.rb Thu Dec 16 13:02:04 2010 +0000 +++ b/app/controllers/application_controller.rb Thu Dec 16 13:43:45 2010 +0000 @@ -314,7 +314,7 @@ if api_request? logger.error "Form authenticity token is missing or is invalid. API calls must include a proper Content-type header (text/xml or text/json)." end - render_error "Invalid form authenticity token." + render_error "Invalid form authenticity token. Perhaps your session has timed out; try reloading the form and entering your details again." end def render_feed(items, options={}) diff -r 7366fb57fce9 -r 5467cbbf393b app/helpers/repositories_helper.rb --- a/app/helpers/repositories_helper.rb Thu Dec 16 13:02:04 2010 +0000 +++ b/app/helpers/repositories_helper.rb Thu Dec 16 13:43:45 2010 +0000 @@ -181,7 +181,8 @@ end def mercurial_field_tags(form, repository) - content_tag('p', form.text_field(:url, :label => 'Root directory', :size => 60, :required => true, :disabled => (repository && !repository.root_url.blank?))) + content_tag('p', form.text_field(:url, :label => 'Root directory', :size => 60, :required => true, :disabled => true)) +# (repository && !repository.root_url.blank?))) end def git_field_tags(form, repository) diff -r 7366fb57fce9 -r 5467cbbf393b app/views/account/register.rhtml --- a/app/views/account/register.rhtml Thu Dec 16 13:02:04 2010 +0000 +++ b/app/views/account/register.rhtml Thu Dec 16 13:43:45 2010 +0000 @@ -38,7 +38,6 @@ <%= ssamr_user_detail.text_area :description, :rows => 3, :cols => 40, :required => true, :class => 'wiki-edit' %> <%= wikitoolbar_for 'ssamr_user_details_description' %> -
<%=l(:text_user_ssamr_description_info)%>

<% end %> diff -r 7366fb57fce9 -r 5467cbbf393b app/views/projects/settings/_repository.rhtml --- a/app/views/projects/settings/_repository.rhtml Thu Dec 16 13:02:04 2010 +0000 +++ b/app/views/projects/settings/_repository.rhtml Thu Dec 16 13:43:45 2010 +0000 @@ -6,6 +6,9 @@ <%= error_messages_for 'repository' %>
+<% if !@repository || !@repository.url %> + +<% end %>

<%= label_tag('repository_scm', l(:label_scm)) %><%= scm_select_tag(@repository) %>

<%= repository_field_tags(f, @repository) if @repository %>
diff -r 7366fb57fce9 -r 5467cbbf393b app/views/repositories/_dir_list_content.rhtml --- a/app/views/repositories/_dir_list_content.rhtml Thu Dec 16 13:02:04 2010 +0000 +++ b/app/views/repositories/_dir_list_content.rhtml Thu Dec 16 13:43:45 2010 +0000 @@ -16,7 +16,7 @@ :class => (entry.is_dir? ? 'icon icon-folder' : "icon icon-file #{Redmine::MimeType.css_class_of(entry.name)}")%> <%= (entry.size ? number_to_human_size(entry.size) : "?") unless entry.is_dir? %> -<% changeset = @project.repository.changesets.find_by_revision(entry.lastrev.identifier) if entry.lastrev && entry.lastrev.identifier %> +<% changeset = @project.repository.changesets.find_by_revision(entry.lastrev.identifier.to_s) if entry.lastrev && entry.lastrev.identifier %> <%= link_to_revision(changeset, @project) if changeset %> <%= distance_of_time_in_words(entry.lastrev.time, Time.now) if entry.lastrev && entry.lastrev.time %> <%= changeset.nil? ? h(entry.lastrev.author.to_s.split('<').first) : changeset.author if entry.lastrev %> diff -r 7366fb57fce9 -r 5467cbbf393b app/views/welcome/index.rhtml --- a/app/views/welcome/index.rhtml Thu Dec 16 13:02:04 2010 +0000 +++ b/app/views/welcome/index.rhtml Thu Dec 16 13:43:45 2010 +0000 @@ -4,7 +4,7 @@ <% end %> -

<%= l(:label_home) %>

+

<%= l(:label_home_heading) %>

<%= textilizable Setting.welcome_text %> diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/bg.yml --- a/config/locales/bg.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/bg.yml Thu Dec 16 13:43:45 2010 +0000 @@ -308,6 +308,7 @@ label_register: Регистрация label_password_lost: Забравена парола label_home: Начало + label_home_heading: Начало label_my_page: Лична страница label_my_account: Профил label_my_projects: Проекти, в които участвам diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/bs.yml --- a/config/locales/bs.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/bs.yml Thu Dec 16 13:43:45 2010 +0000 @@ -434,6 +434,7 @@ label_login_with_open_id_option: ili prijava sa OpenID-om label_password_lost: Izgubljena lozinka label_home: Početna stranica + label_home_heading: Početna stranica label_my_page: Moja stranica label_my_account: Moj korisnički račun label_my_projects: Moji projekti diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/ca.yml --- a/config/locales/ca.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/ca.yml Thu Dec 16 13:43:45 2010 +0000 @@ -470,6 +470,7 @@ label_login_with_open_id_option: "o entra amb l'OpenID" label_password_lost: Contrasenya perduda label_home: Inici + label_home_heading: Inici label_my_page: La meva pàgina label_my_account: El meu compte label_my_projects: Els meus projectes diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/cs.yml --- a/config/locales/cs.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/cs.yml Thu Dec 16 13:43:45 2010 +0000 @@ -352,6 +352,7 @@ label_register: Registrovat label_password_lost: Zapomenuté heslo label_home: Úvodní + label_home_heading: Úvodní label_my_page: Moje stránka label_my_account: Můj účet label_my_projects: Moje projekty diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/da.yml --- a/config/locales/da.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/da.yml Thu Dec 16 13:43:45 2010 +0000 @@ -360,6 +360,7 @@ label_register: Registrér label_password_lost: Glemt kodeord label_home: Forside + label_home_heading: Forside label_my_page: Min side label_my_account: Min konto label_my_projects: Mine projekter diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/de.yml --- a/config/locales/de.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/de.yml Thu Dec 16 13:43:45 2010 +0000 @@ -486,6 +486,7 @@ label_login_with_open_id_option: oder mit OpenID anmelden label_password_lost: Kennwort vergessen label_home: Hauptseite + label_home_heading: Hauptseite label_my_page: Meine Seite label_my_account: Mein Konto label_my_projects: Meine Projekte diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/el.yml --- a/config/locales/el.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/el.yml Thu Dec 16 13:43:45 2010 +0000 @@ -432,6 +432,7 @@ label_login_with_open_id_option: ή συνδεθείτε με OpenID label_password_lost: Ανάκτηση κωδικού πρόσβασης label_home: Αρχική σελίδα + label_home_heading: Αρχική σελίδα label_my_page: Η σελίδα μου label_my_account: Ο λογαριασμός μου label_my_projects: Τα έργα μου diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/en-GB.yml --- a/config/locales/en-GB.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/en-GB.yml Thu Dec 16 13:43:45 2010 +0000 @@ -203,8 +203,8 @@ field_description: Description field_summary: Summary field_is_required: Required - field_firstname: Firstname - field_lastname: Lastname + field_firstname: First name + field_lastname: Last name field_mail: Email field_filename: File field_filesize: Size @@ -412,7 +412,7 @@ label_tipoftheday: Tip of the day label_notifications: Important Message - label_ssamr_description: Description + label_ssamr_description: Research description label_ssamr_details: Other Details label_user: User @@ -468,6 +468,7 @@ label_login_with_open_id_option: or login with OpenID label_password_lost: Lost password label_home: Home + label_home_heading: Welcome! label_my_page: My page label_my_account: My account label_my_projects: My projects @@ -840,6 +841,8 @@ text_project_identifier_info: 'Only lower case letters (a-z), numbers and dashes are allowed.
This will be used in all project-related URLs, and as the repository name. Once saved, the identifier can not be changed.' text_project_name_info: "This will be the name of your project throughout this site.
You can change your project's name at any time, in the project's settings." text_project_visibility_info: "If your project is not public, it will only be visible to users that you have added as project members." + text_user_ssamr_description_info: 'Please describe your current research or development interests, within the fields of audio and music.
This information is publicly visible in your profile and you can edit it at any time.' + text_issue_parent_issue_info: 'If this is a subtask, please insert its parent task number or write the main task name.' text_caracters_maximum: "{{count}} characters maximum." text_caracters_minimum: "Must be at least {{count}} characters long." text_length_between: "Length between {{min}} and {{max}} characters." diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/en.yml --- a/config/locales/en.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/en.yml Thu Dec 16 13:43:45 2010 +0000 @@ -207,8 +207,8 @@ field_description: Description field_summary: Summary field_is_required: Required - field_firstname: Firstname - field_lastname: Lastname + field_firstname: First name + field_lastname: Last name field_mail: Email field_filename: File field_filesize: Size @@ -303,7 +303,7 @@ setting_tipoftheday_text: Tip of the Day setting_notifications_text: Notifications - label_ssamr_description: Description + label_ssamr_description: Research description setting_app_title: Application title setting_app_subtitle: Application subtitle setting_welcome_text: Welcome text @@ -484,6 +484,7 @@ label_login_with_open_id_option: or login with OpenID label_password_lost: Lost password label_home: Home + label_home_heading: Welcome! label_my_page: My page label_my_account: My account label_my_projects: My projects @@ -869,7 +870,7 @@ text_project_name_info: "This will be the name of your project throughout this site.
You can change your project's name at any time, in the project's settings." text_project_visibility_info: "If your project is not public, it will only be visible to users that you have added as project members." text_project_homepage_info: 'Link to an external project page.' - text_user_ssamr_description_info: 'Description of your interests and experience as a Researcher/Developer in the field of Audio and Music.' + text_user_ssamr_description_info: 'Please describe your current research or development interests, within the fields of audio and music.
This information is publicly visible in your profile and you can edit it at any time.' text_issue_parent_issue_info: 'If this is a subtask, please insert its parent task number or write the main task name.' text_caracters_maximum: "{{count}} characters maximum." text_caracters_minimum: "Must be at least {{count}} characters long." diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/es.yml --- a/config/locales/es.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/es.yml Thu Dec 16 13:43:45 2010 +0000 @@ -460,6 +460,7 @@ label_help: Ayuda label_history: Histórico label_home: Inicio + label_home_heading: Inicio label_in: en label_in_less_than: en menos que label_in_more_than: en más que diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/eu.yml --- a/config/locales/eu.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/eu.yml Thu Dec 16 13:43:45 2010 +0000 @@ -455,6 +455,7 @@ label_login_with_open_id_option: edo OpenID-rekin saioa hasi label_password_lost: Pasahitza galduta label_home: Hasiera + label_home_heading: Hasiera label_my_page: Nire orria label_my_account: Nire kontua label_my_projects: Nire proiektuak diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/fi.yml --- a/config/locales/fi.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/fi.yml Thu Dec 16 13:43:45 2010 +0000 @@ -360,6 +360,7 @@ label_register: Rekisteröidy label_password_lost: Hukattu salasana label_home: Koti + label_home_heading: Koti label_my_page: Omasivu label_my_account: Oma tili label_my_projects: Omat projektit diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/fr.yml --- a/config/locales/fr.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/fr.yml Thu Dec 16 13:43:45 2010 +0000 @@ -477,6 +477,7 @@ label_login_with_open_id_option: S'authentifier avec OpenID label_password_lost: Mot de passe perdu label_home: Accueil + label_home_heading: Accueil label_my_page: Ma page label_my_account: Mon compte label_my_projects: Mes projets diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/gl.yml --- a/config/locales/gl.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/gl.yml Thu Dec 16 13:43:45 2010 +0000 @@ -437,6 +437,7 @@ label_help: Axuda label_history: Histórico label_home: Inicio + label_home_heading: Inicio label_in: en label_in_less_than: en menos que label_in_more_than: en mais que diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/he.yml --- a/config/locales/he.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/he.yml Thu Dec 16 13:43:45 2010 +0000 @@ -474,6 +474,7 @@ label_login_with_open_id_option: או התחבר באמצעות OpenID label_password_lost: אבדה הסיסמה? label_home: דף הבית + label_home_heading: דף הבית label_my_page: הדף שלי label_my_account: החשבון שלי label_my_projects: הפרויקטים שלי diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/hr.yml --- a/config/locales/hr.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/hr.yml Thu Dec 16 13:43:45 2010 +0000 @@ -450,6 +450,7 @@ label_login_with_open_id_option: or login with OpenID label_password_lost: Izgubljena zaporka label_home: Početna stranica + label_home_heading: Početna stranica label_my_page: Moja stranica label_my_account: Moj profil label_my_projects: Moji projekti diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/hu.yml --- a/config/locales/hu.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/hu.yml Thu Dec 16 13:43:45 2010 +0000 @@ -376,6 +376,7 @@ label_register: Regisztráljon label_password_lost: Elfelejtett jelszó label_home: Kezdőlap + label_home_heading: Kezdőlap label_my_page: Saját kezdőlapom label_my_account: Fiókom adatai label_my_projects: Saját projektem diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/id.yml --- a/config/locales/id.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/id.yml Thu Dec 16 13:43:45 2010 +0000 @@ -441,6 +441,7 @@ label_login_with_open_id_option: atau login menggunakan OpenID label_password_lost: Lupa password label_home: Halaman depan + label_home_heading: Halaman depan label_my_page: Beranda label_my_account: Akun saya label_my_projects: Proyek saya diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/it.yml --- a/config/locales/it.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/it.yml Thu Dec 16 13:43:45 2010 +0000 @@ -319,6 +319,7 @@ label_register: Registrati label_password_lost: Password dimenticata label_home: Home + label_home_heading: Home label_my_page: Pagina personale label_my_account: Il mio utente label_my_projects: I miei progetti diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/ja.yml --- a/config/locales/ja.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/ja.yml Thu Dec 16 13:43:45 2010 +0000 @@ -499,6 +499,7 @@ label_login_with_open_id_option: またはOpenIDでログインする label_password_lost: パスワードの再発行 label_home: ホーム + label_home_heading: ホーム label_my_page: マイページ label_my_account: 個人設定 label_my_projects: マイプロジェクト diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/ko.yml --- a/config/locales/ko.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/ko.yml Thu Dec 16 13:43:45 2010 +0000 @@ -484,6 +484,7 @@ label_login_with_open_id_option: 또는 OpenID로 로그인 label_password_lost: 비밀번호 찾기 label_home: 초기화면 + label_home_heading: 초기화면 label_my_page: 내 페이지 label_my_account: 내 계정 label_my_projects: 내 프로젝트 diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/lt.yml --- a/config/locales/lt.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/lt.yml Thu Dec 16 13:43:45 2010 +0000 @@ -500,6 +500,7 @@ label_register: Užsiregistruoti label_password_lost: Prarastas slaptažodis label_home: Pagrindinis + label_home_heading: Pagrindinis label_my_page: Mano puslapis label_my_account: Mano paskyra label_my_projects: Mano projektai diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/lv.yml --- a/config/locales/lv.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/lv.yml Thu Dec 16 13:43:45 2010 +0000 @@ -449,6 +449,7 @@ label_login_with_open_id_option: vai pieslēgties ar OpenID label_password_lost: Nozaudēta parole label_home: Sākums + label_home_heading: Sākums label_my_page: Mana lapa label_my_account: Mans konts label_my_projects: Mani projekti diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/mk.yml --- a/config/locales/mk.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/mk.yml Thu Dec 16 13:43:45 2010 +0000 @@ -467,6 +467,7 @@ label_login_with_open_id_option: или најави се со OpenID label_password_lost: Изгубена лозинка label_home: Почетна + label_home_heading: Почетна label_my_page: Мојата страна label_my_account: Мојот профил label_my_projects: Мои проекти diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/mn.yml --- a/config/locales/mn.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/mn.yml Thu Dec 16 13:43:45 2010 +0000 @@ -453,6 +453,7 @@ label_login_with_open_id_option: or login with OpenID label_password_lost: Нууц үгээ алдсан label_home: Нүүр + label_home_heading: Нүүр label_my_page: Миний хуудас label_my_account: Миний данс label_my_projects: Миний төслүүд diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/nl.yml --- a/config/locales/nl.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/nl.yml Thu Dec 16 13:43:45 2010 +0000 @@ -403,6 +403,7 @@ label_help: Help label_history: Geschiedenis label_home: Home + label_home_heading: Home label_in: in label_in_less_than: in minder dan label_in_more_than: in meer dan diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/no.yml --- a/config/locales/no.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/no.yml Thu Dec 16 13:43:45 2010 +0000 @@ -347,6 +347,7 @@ label_register: Registrer label_password_lost: Mistet passord label_home: Hjem + label_home_heading: Hjem label_my_page: Min side label_my_account: Min konto label_my_projects: Mine prosjekter diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/pl.yml --- a/config/locales/pl.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/pl.yml Thu Dec 16 13:43:45 2010 +0000 @@ -434,6 +434,7 @@ label_help: Pomoc label_history: Historia label_home: Główna + label_home_heading: Główna label_in: w label_in_less_than: mniejsze niż label_in_more_than: większe niż diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/pt-BR.yml --- a/config/locales/pt-BR.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/pt-BR.yml Thu Dec 16 13:43:45 2010 +0000 @@ -385,6 +385,7 @@ label_register: Cadastre-se label_password_lost: Perdi minha senha label_home: Página inicial + label_home_heading: Página inicial label_my_page: Minha página label_my_account: Minha conta label_my_projects: Meus projetos diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/pt.yml --- a/config/locales/pt.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/pt.yml Thu Dec 16 13:43:45 2010 +0000 @@ -370,6 +370,7 @@ label_register: Registar label_password_lost: Perdi a palavra-chave label_home: Página Inicial + label_home_heading: Página Inicial label_my_page: Página Pessoal label_my_account: Minha conta label_my_projects: Meus projectos diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/ro.yml --- a/config/locales/ro.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/ro.yml Thu Dec 16 13:43:45 2010 +0000 @@ -413,6 +413,7 @@ label_login_with_open_id_option: sau autentificare cu OpenID label_password_lost: Parolă uitată label_home: Acasă + label_home_heading: Acasă label_my_page: Pagina mea label_my_account: Contul meu label_my_projects: Proiectele mele diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/ru.yml --- a/config/locales/ru.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/ru.yml Thu Dec 16 13:43:45 2010 +0000 @@ -516,6 +516,7 @@ label_help: Помощь label_history: История label_home: Домашняя страница + label_home_heading: Домашняя страница label_incoming_emails: Приём сообщений label_index_by_date: История страниц label_index_by_title: Оглавление diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/sk.yml --- a/config/locales/sk.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/sk.yml Thu Dec 16 13:43:45 2010 +0000 @@ -346,6 +346,7 @@ label_register: Registrovať label_password_lost: Zabudnuté heslo label_home: Domovská stránka + label_home_heading: Domovská stránka label_my_page: Moja stránka label_my_account: Môj účet label_my_projects: Moje projekty diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/sl.yml --- a/config/locales/sl.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/sl.yml Thu Dec 16 13:43:45 2010 +0000 @@ -409,6 +409,7 @@ label_register: Registracija label_password_lost: Izgubljeno geslo label_home: Domov + label_home_heading: Domov label_my_page: Moja stran label_my_account: Moj račun label_my_projects: Moji projekti diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/sr-YU.yml --- a/config/locales/sr-YU.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/sr-YU.yml Thu Dec 16 13:43:45 2010 +0000 @@ -464,6 +464,7 @@ label_login_with_open_id_option: ili prijava sa OpenID label_password_lost: Izgubljena lozinka label_home: Početak + label_home_heading: Početak label_my_page: Moja stranica label_my_account: Moj nalog label_my_projects: Moji projekti diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/sr.yml --- a/config/locales/sr.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/sr.yml Thu Dec 16 13:43:45 2010 +0000 @@ -464,6 +464,7 @@ label_login_with_open_id_option: или пријава са OpenID label_password_lost: Изгубљена лозинка label_home: Почетак + label_home_heading: Почетак label_my_page: Моја страница label_my_account: Мој налог label_my_projects: Моји пројекти diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/sv.yml --- a/config/locales/sv.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/sv.yml Thu Dec 16 13:43:45 2010 +0000 @@ -518,6 +518,7 @@ label_login_with_open_id_option: eller logga in med OpenID label_password_lost: Glömt lösenord label_home: Hem + label_home_heading: Hem label_my_page: Min sida label_my_account: Mitt konto label_my_projects: Mina projekt diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/th.yml --- a/config/locales/th.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/th.yml Thu Dec 16 13:43:45 2010 +0000 @@ -348,6 +348,7 @@ label_register: ลงทะเบียน label_password_lost: ลืมรหัสผ่าน label_home: หน้าแรก + label_home_heading: หน้าแรก label_my_page: หน้าของฉัน label_my_account: บัญชีของฉัน label_my_projects: โครงการของฉัน diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/tr.yml --- a/config/locales/tr.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/tr.yml Thu Dec 16 13:43:45 2010 +0000 @@ -375,6 +375,7 @@ label_register: Kayıt label_password_lost: Parolamı unuttum? label_home: Anasayfa + label_home_heading: Anasayfa label_my_page: Kişisel Sayfam label_my_account: Hesabım label_my_projects: Projelerim diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/uk.yml --- a/config/locales/uk.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/uk.yml Thu Dec 16 13:43:45 2010 +0000 @@ -323,6 +323,7 @@ label_register: Зареєструватися label_password_lost: Забули пароль label_home: Домашня сторінка + label_home_heading: Домашня сторінка label_my_page: Моя сторінка label_my_account: Мій обліковий запис label_my_projects: Мої проекти diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/vi.yml --- a/config/locales/vi.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/vi.yml Thu Dec 16 13:43:45 2010 +0000 @@ -415,6 +415,7 @@ label_register: Đăng ký label_password_lost: Phục hồi mật mã label_home: Trang chính + label_home_heading: Trang chính label_my_page: Trang riêng label_my_account: Cá nhân label_my_projects: Dự án của bạn diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/zh-TW.yml --- a/config/locales/zh-TW.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/zh-TW.yml Thu Dec 16 13:43:45 2010 +0000 @@ -559,6 +559,7 @@ label_login_with_open_id_option: 或使用 OpenID 登入 label_password_lost: 遺失密碼 label_home: 網站首頁 + label_home_heading: 網站首頁 label_my_page: 帳戶首頁 label_my_account: 我的帳戶 label_my_projects: 我的專案 diff -r 7366fb57fce9 -r 5467cbbf393b config/locales/zh.yml --- a/config/locales/zh.yml Thu Dec 16 13:02:04 2010 +0000 +++ b/config/locales/zh.yml Thu Dec 16 13:43:45 2010 +0000 @@ -470,6 +470,7 @@ label_login_with_open_id_option: 或使用OpenID登录 label_password_lost: 忘记密码 label_home: 主页 + label_home_heading: 主页 label_my_page: 我的工作台 label_my_account: 我的帐号 label_my_projects: 我的项目 diff -r 7366fb57fce9 -r 5467cbbf393b extra/svn/reposman-soundsoftware.rb --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/extra/svn/reposman-soundsoftware.rb Thu Dec 16 13:43:45 2010 +0000 @@ -0,0 +1,350 @@ +#!/usr/bin/env ruby + +# == Synopsis +# +# reposman: manages your repositories with Redmine +# +# == Usage +# +# reposman [OPTIONS...] -s [DIR] -r [HOST] +# +# Examples: +# reposman --svn-dir=/var/svn --redmine-host=redmine.example.net --scm subversion +# reposman -s /var/git -r redmine.example.net -u http://svn.example.net --scm git +# +# == Arguments (mandatory) +# +# -s, --svn-dir=DIR use DIR as base directory for svn repositories +# -r, --redmine-host=HOST assume Redmine is hosted on HOST. Examples: +# -r redmine.example.net +# -r http://redmine.example.net +# -r https://example.net/redmine +# -k, --key=KEY use KEY as the Redmine API key +# +# == Options +# +# -o, --owner=OWNER owner of the repository. using the rails login +# allow user to browse the repository within +# Redmine even for private project. If you want to +# share repositories through Redmine.pm, you need +# to use the apache owner. +# -g, --group=GROUP group of the repository. (default: root) +# --scm=SCM the kind of SCM repository you want to create (and +# register) in Redmine (default: Subversion). +# reposman is able to create Git and Subversion +# repositories. For all other kind, you must specify +# a --command option +# -u, --url=URL the base url Redmine will use to access your +# repositories. This option is used to automatically +# register the repositories in Redmine. The project +# identifier will be appended to this url. Examples: +# -u https://example.net/svn +# -u file:///var/svn/ +# if this option isn't set, reposman will register +# the repositories with local file paths in Redmine +# -c, --command=COMMAND use this command instead of "svnadmin create" to +# create a repository. This option can be used to +# create repositories other than subversion and git +# kind. +# This command override the default creation for git +# and subversion. +# --http-user=USER User for HTTP Basic authentication with Redmine WS +# --http-pass=PASSWORD Password for Basic authentication with Redmine WS +# -t, --test only show what should be done +# -h, --help show help and exit +# -v, --verbose verbose +# -V, --version print version and exit +# -q, --quiet no log +# +# == References +# +# You can find more information on the redmine's wiki : http://www.redmine.org/wiki/redmine/HowTos + + +require 'getoptlong' +require 'rdoc/usage' +require 'find' +require 'etc' + +Version = "1.3" +SUPPORTED_SCM = %w( Subversion Darcs Mercurial Bazaar Git Filesystem ) + +opts = GetoptLong.new( + ['--svn-dir', '-s', GetoptLong::REQUIRED_ARGUMENT], + ['--redmine-host', '-r', GetoptLong::REQUIRED_ARGUMENT], + ['--key', '-k', GetoptLong::REQUIRED_ARGUMENT], + ['--owner', '-o', GetoptLong::REQUIRED_ARGUMENT], + ['--group', '-g', GetoptLong::REQUIRED_ARGUMENT], + ['--url', '-u', GetoptLong::REQUIRED_ARGUMENT], + ['--command' , '-c', GetoptLong::REQUIRED_ARGUMENT], + ['--scm', GetoptLong::REQUIRED_ARGUMENT], + ['--http-user', GetoptLong::REQUIRED_ARGUMENT], + ['--http-pass', GetoptLong::REQUIRED_ARGUMENT], + ['--test', '-t', GetoptLong::NO_ARGUMENT], + ['--verbose', '-v', GetoptLong::NO_ARGUMENT], + ['--version', '-V', GetoptLong::NO_ARGUMENT], + ['--help' , '-h', GetoptLong::NO_ARGUMENT], + ['--quiet' , '-q', GetoptLong::NO_ARGUMENT] + ) + +$verbose = 0 +$quiet = false +$redmine_host = '' +$repos_base = '' +$http_user = '' +$http_pass = '' +$svn_owner = 'root' +$svn_group = 'root' +$use_groupid = true +$svn_url = false +$test = false +$scm = 'Subversion' + +def log(text, options={}) + level = options[:level] || 0 + puts text unless $quiet or level > $verbose + exit 1 if options[:exit] +end + +def system_or_raise(command) + raise "\"#{command}\" failed" unless system command +end + +module SCM + + module Subversion + def self.create(path) + system_or_raise "svnadmin create #{path}" + end + end + + module Git + def self.create(path) + Dir.mkdir path + Dir.chdir(path) do + system_or_raise "git --bare init --shared" + system_or_raise "git update-server-info" + end + end + end + +end + +begin + opts.each do |opt, arg| + case opt + when '--svn-dir'; $repos_base = arg.dup + when '--redmine-host'; $redmine_host = arg.dup + when '--key'; $api_key = arg.dup + when '--owner'; $svn_owner = arg.dup; $use_groupid = false; + when '--group'; $svn_group = arg.dup; $use_groupid = false; + when '--url'; $svn_url = arg.dup + when '--scm'; $scm = arg.dup.capitalize; log("Invalid SCM: #{$scm}", :exit => true) unless SUPPORTED_SCM.include?($scm) + when '--http-user'; $http_user = arg.dup + when '--http-pass'; $http_pass = arg.dup + when '--command'; $command = arg.dup + when '--verbose'; $verbose += 1 + when '--test'; $test = true + when '--version'; puts Version; exit + when '--help'; RDoc::usage + when '--quiet'; $quiet = true + end + end +rescue + exit 1 +end + +if $test + log("running in test mode") +end + +# Make sure command is overridden if SCM vendor is not handled internally (for the moment Subversion and Git) +if $command.nil? + begin + scm_module = SCM.const_get($scm) + rescue + log("Please use --command option to specify how to create a #{$scm} repository.", :exit => true) + end +end + +$svn_url += "/" if $svn_url and not $svn_url.match(/\/$/) + +if ($redmine_host.empty? or $repos_base.empty?) + RDoc::usage +end + +unless File.directory?($repos_base) + log("directory '#{$repos_base}' doesn't exists", :exit => true) +end + +begin + require 'active_resource' +rescue LoadError + log("This script requires activeresource.\nRun 'gem install activeresource' to install it.", :exit => true) +end + +class Project < ActiveResource::Base + self.headers["User-agent"] = "Redmine repository manager/#{Version}" +end + +log("querying Redmine for projects...", :level => 1); + +$redmine_host.gsub!(/^/, "http://") unless $redmine_host.match("^https?://") +$redmine_host.gsub!(/\/$/, '') + +Project.site = "#{$redmine_host}/sys"; +Project.user = $http_user; +Project.password = $http_pass; + +begin + # Get all active projects that have the Repository module enabled + projects = Project.find(:all, :params => {:key => $api_key}) +rescue => e + log("Unable to connect to #{Project.site}: #{e}", :exit => true) +end + +if projects.nil? + log('no project found, perhaps you forgot to "Enable WS for repository management"', :exit => true) +end + +log("retrieved #{projects.size} projects", :level => 1) + +def set_owner_and_rights(project, repos_path, &block) + if RUBY_PLATFORM =~ /mswin/ + yield if block_given? + else + uid, gid = Etc.getpwnam($svn_owner).uid, ($use_groupid ? Etc.getgrnam(project.identifier).gid : Etc.getgrnam($svn_group).gid) + right = project.is_public ? 02775 : 02770 + yield if block_given? + Find.find(repos_path) do |f| + File.chmod right, f + File.chown uid, gid, f + end + end +end + +def other_read_right?(file) + (File.stat(file).mode & 0007).zero? ? false : true +end + +def owner_name(file) + mswin? ? + $svn_owner : + Etc.getpwuid( File.stat(file).uid ).name +end + +def mswin? + (RUBY_PLATFORM =~ /(:?mswin|mingw)/) || (RUBY_PLATFORM == 'java' && (ENV['OS'] || ENV['os']) =~ /windows/i) +end + +projects.each do |project| + log("treating project #{project.name}", :level => 1) + + if project.identifier.empty? + log("\tno identifier for project #{project.name}") + next + elsif not project.identifier.match(/^[a-z0-9\-]+$/) + log("\tinvalid identifier for project #{project.name} : #{project.identifier}"); + next; + end + + repos_path = File.join($repos_base, project.identifier).gsub(File::SEPARATOR, File::ALT_SEPARATOR || File::SEPARATOR) + + create_repos = false + + # Logic required for SoundSoftware.ac.uk repositories: + # + # * If the project has a repository path declared already, + # - if it's a local path, + # - if it does not exist + # - if it has the right root + # - create it + # - else + # - leave alone (remote repository) + # * else + # - create repository with same name as project + # - set to project + + if project.respond_to?(:repository) + + repos_url = project.repository.url; + log("\texisting url for project #{project.identifier} is #{repos_url}"); + + if repos_url.match(/^file:\//) || repos_url.match(/^\//) + + repos_url = repos_url.gsub(/^file:\/*/, "/"); + log("\tthis is a local file path, at #{repos_url}"); + + if repos_url.slice(0, $repos_base.length) != $repos_base + log("\tit is in the wrong place: replacing it"); + # leave repos_path set to our original suggestion + create_repos = true + else + if !File.directory?(repos_url) + log("\tit doesn't exist; we should create it"); + repos_path = repos_url + create_repos = true + else + log("\tit exists and is in the right place"); + end + end + else + log("\tthis is a remote path, leaving alone"); + end + else + log("\tproject #{project.identifier} has no repository registered") +# if File.directory?(repos_path) +# log("\trepository path #{repos_path} already exists, not creating") +# else + create_repos = true +# end + end + + if create_repos + + registration_url = repos_path + if $svn_url + registration_url = "#{$svn_url}#{project.identifier}" + end + + if $test + log("\tproposal: create repository #{repos_path}") + log("\tproposal: register repository #{repos_path} in Redmine with vendor #{$scm}, url #{registration_url}") + next + end + +# No -- we need "other" users to be able to read it. Access control +# is not handled through Unix user id anyway +# project.is_public ? File.umask(0002) : File.umask(0007) + File.umask(0002) + + log("\taction: create repository #{repos_path}") + + begin + if !File.directory?(repos_path) + set_owner_and_rights(project, repos_path) do + if scm_module.nil? + log("\trunning command: #{$command} #{repos_path}") + system_or_raise "#{$command} #{repos_path}" + else + scm_module.create(repos_path) + end + end + end + rescue => e + log("\tunable to create #{repos_path} : #{e}\n") + next + end + + begin + log("\taction: register repository #{repos_path} in Redmine with vendor #{$scm}, url #{registration_url}"); + project.post(:repository, :vendor => $scm, :repository => {:url => "#{registration_url}"}, :key => $api_key) + rescue => e + log("\trepository #{repos_path} not registered in Redmine: #{e.message}"); + end + + log("\trepository #{repos_path} created"); + end + +end + diff -r 7366fb57fce9 -r 5467cbbf393b lib/redmine/info.rb --- a/lib/redmine/info.rb Thu Dec 16 13:02:04 2010 +0000 +++ b/lib/redmine/info.rb Thu Dec 16 13:43:45 2010 +0000 @@ -3,7 +3,7 @@ class << self def app_name; 'Redmine' end def url; 'http://www.redmine.org/' end - def help_url; 'http://www.redmine.org/guide' end + def help_url; '/projects/soundsoftware-site/wiki/Help' end def versioned_name; "#{app_name} #{Redmine::VERSION}" end # Creates the url string to a specific Redmine issue diff -r 7366fb57fce9 -r 5467cbbf393b vendor/plugins/redmine_checkout/db/migrate/20100808185600_change_protocol_storage_from_hash_to_array.rb --- a/vendor/plugins/redmine_checkout/db/migrate/20100808185600_change_protocol_storage_from_hash_to_array.rb Thu Dec 16 13:02:04 2010 +0000 +++ b/vendor/plugins/redmine_checkout/db/migrate/20100808185600_change_protocol_storage_from_hash_to_array.rb Thu Dec 16 13:43:45 2010 +0000 @@ -15,6 +15,7 @@ def self.up ## First migrate the individual repositories Repository.all.each do |r| + next unless r.checkout_settings next unless r.checkout_settings['checkout_protocols'].is_a? Hash r.checkout_settings['checkout_protocols'] = r.checkout_settings['checkout_protocols'].sort{|(ak,av),(bk,bv)|ak<=>bk}.collect{|id,protocol| protocol} r.save! @@ -54,4 +55,4 @@ raise ActiveRecord::IrreversibleMigration.new "Sorry, there is no down migration yet. If you really need one, please create an issue on http://dev.holgerjust.de/projects/redmine-checkout" end -end \ No newline at end of file +end