diff options
author | Jonne Haß <me@mrzyx.de> | 2013-02-17 21:53:38 +0400 |
---|---|---|
committer | Jonne Haß <me@mrzyx.de> | 2013-02-17 21:55:26 +0400 |
commit | 288e1ddd6cb1939291f3f8780ac471f9df93f43e (patch) | |
tree | 76ef096c78efc3c26aeae9938a98cf8d3eca1517 | |
parent | 2f5ef39e1a2bfe6eba925de858f2a31197de9666 (diff) | |
parent | 35ba082ab5577c5c4c2e528a937521693cead046 (diff) |
Merge branch 'release/0.0.3.0'v0.0.3.0
374 files changed, 5278 insertions, 4312 deletions
diff --git a/Changelog.md b/Changelog.md index 8562eed19..bfa2036f4 100644 --- a/Changelog.md +++ b/Changelog.md @@ -1,3 +1,123 @@ +# 0.0.3.0 + +## Refactor + +* Removed unused stuff [#3714](https://github.com/diaspora/diaspora/pull/3714), [#3754](https://github.com/diaspora/diaspora/pull/3754) +* Last post link isn't displayed anymore if there are no visible posts [#3750](https://github.com/diaspora/diaspora/issues/3750) +* Ported tag followings to backbone [#3713](https://github.com/diaspora/diaspora/pull/3713), [#3775](https://github.com/diaspora/diaspora/pull/3777) +* Extracted configuration system to a gem. +* Made number of unicorn workers configurable. +* Made loading of the configuration environment independent of Rails. +* Do not generate paths like `/a/b/c/config/boot.rb/../../Gemfile` to require and open things, create a proper path instead. +* Remove the hack for loading the entire lib folder with a proper solution. [#3809](https://github.com/diaspora/diaspora/issues/3750) +* Update and refactor the default public view `public/default.html` [#3811](https://github.com/diaspora/diaspora/issues/3811) +* Write unicorn stderr and stdout [#3785](https://github.com/diaspora/diaspora/pull/3785) +* Ported aspects to backbone [#3850](https://github.com/diaspora/diaspora/pull/3850) +* Join tagging's table instead of tags to improve a bit the query [#3932](https://github.com/diaspora/diaspora/pull/3932) +* Refactor contacts/index view [#3937](https://github.com/diaspora/diaspora/pull/3937) +* Ported aspect membership dropdown to backbone [#3864](https://github.com/diaspora/diaspora/pull/3864) + +## Features + +* Updates to oEmbed, added new providers and fixed photo display. [#3880](https://github.com/diaspora/diaspora/pull/3880) +* Add 'screenshot tool' for taking before/after images of stylesheet changes. [#3797](https://github.com/diaspora/diaspora/pull/3797) +* Add possibility to contact the administrator. [#3792](https://github.com/diaspora/diaspora/pull/3792) +* Add simple background for unread messages/conversations mobile. [#3724](https://github.com/diaspora/diaspora/pull/3724) +* Add flash warning to conversation mobile, unification of flash warning with login and register mobile, and add support for flash warning to Opera browser. [#3686](https://github.com/diaspora/diaspora/pull/3686) +* Add progress percentage to upload images. [#3740](https://github.com/diaspora/diaspora/pull/3740) +* Mark all unread post-related notifications as read, if one of this gets opened. [#3787](https://github.com/diaspora/diaspora/pull/3787) +* Add flash-notice when sending messages to non-contacts. [#3723](https://github.com/diaspora/diaspora/pull/3723) +* Re-add hovercards [#3802](https://github.com/diaspora/diaspora/pull/3802) +* Add images to notifications [#3821](https://github.com/diaspora/diaspora/pull/3821) +* Show pod version in footer and updated the link to the changelog [#3822](https://github.com/diaspora/diaspora/pull/3822) +* Footer links moved to sidebar [#3827](https://github.com/diaspora/diaspora/pull/3827) +* Changelog now points to correct revision if possible [#3921](https://github.com/diaspora/diaspora/pull/3921) +* User interface enhancements [#3832](https://github.com/diaspora/diaspora/pull/3832), [#3839](https://github.com/diaspora/diaspora/pull/3839), [#3834](https://github.com/diaspora/diaspora/pull/3834), [#3840](https://github.com/diaspora/diaspora/issues/3840), [#3846](https://github.com/diaspora/diaspora/issues/3846), [#3851](https://github.com/diaspora/diaspora/issues/3851), [#3828](https://github.com/diaspora/diaspora/issues/3828), [#3874](https://github.com/diaspora/diaspora/issues/3874), [#3806](https://github.com/diaspora/diaspora/issues/3806), [#3906](https://github.com/diaspora/diaspora/issues/3906). +* Add settings web mobile. [#3701](https://github.com/diaspora/diaspora/pull/3701) +* Stream form on profile page [#3910](https://github.com/diaspora/diaspora/issues/3910). +* Add Getting_Started page mobile. [#3949](https://github.com/diaspora/diaspora/issues/3949). +* Autoscroll to the first unread message in conversations. [#3216](https://github.com/diaspora/diaspora/issues/3216) +* Friendlier new-conversation mobile. [#3984](https://github.com/diaspora/diaspora/issues/3984) + +## Bug Fixes + +* Force Typhoeus/cURL to use the CA bundle we query via the config. Also add a setting for extra verbose output. +* Validate input on sending invitations, validate email format, send correct ones. [#3748](https://github.com/diaspora/diaspora/pull/3748), [#3271](https://github.com/diaspora/diaspora/issues/3271) +* moved Aspects JS initializer to the correct place so aspect selection / deselection works again. [#3737](https://github.com/diaspora/diaspora/pull/3737) +* Do not strip "markdown" in links when posting to services. [#3765](https://github.com/diaspora/diaspora/issues/3765) +* Renamed `server.db` to `server.database` to match the example configuration. +* Fix insecure image of cat on user edit page - New photo courtesy of [khanb1 on flickr](http://www.flickr.com/photos/albaraa/) under CC BY 2.0. +* Allow translation of "suggest member" of Community Spotlight. [#3791](https://github.com/diaspora/diaspora/issues/3791) +* Resize deletelabel and ignoreuser images to align them. [#3779](https://github.com/diaspora/diaspora/issues/3779) +* Patch in Armenian pluralization rule until CLDR provides it. +* Fix reshare a post multiple times. [#3831](https://github.com/diaspora/diaspora/issues/3671) +* Fix services index view. [#3884](https://github.com/diaspora/diaspora/issues/3884) +* Excessive padding with "user-controls" in single post view. [#3861](https://github.com/diaspora/diaspora/issues/3861) +* Resize full scaled image to a specific width. [#3818](https://github.com/diaspora/diaspora/issues/3818) +* Fix translation issue in contacts_helper [#3937](https://github.com/diaspora/diaspora/pull/3937) +* Show timestamp hovering a timeago string (stream) [#3149](https://github.com/diaspora/diaspora/issues/3149) +* Fix reshare and like a post on a single post view [#3672](https://github.com/diaspora/diaspora/issues/3672) +* Fix posting multiple times the same content [#3272](https://github.com/diaspora/diaspora/issues/3272) +* Excessive padding with select aspect in mobile publisher. [#3951](https://github.com/diaspora/diaspora/issues/3951) +* Adapt css for search mobile page. [#3953](https://github.com/diaspora/diaspora/issues/3953) +* Twitter/Facebook/Tumblr count down characters is hidden by the picture of the post. [#3963](https://github.com/diaspora/diaspora/issues/3963) +* Buttons on mobile are hard to click on. [#3973](https://github.com/diaspora/diaspora/issues/3973) +* RTL-language characters in usernames no longer overlay post dates [#2339](https://github.com/diaspora/diaspora/issues/2339) +* Overflow info author mobile web. [#3983](https://github.com/diaspora/diaspora/issues/3983) +* Overflow name author mobile post. [#3981](https://github.com/diaspora/diaspora/issues/3981) + +## Gem Updates + +* Removed `debugger` since it was causing bundle problems, and is not necessary given 1.9.3 has a built-in debugger. +* dropped unnecessary fastercsv +* markerb switched from git release to 1.0.1 +* added rmagick as development dependency for making screenshot comparisons +* jasmine 1.2.1 -> 1.3.1 (+ remove useless spec) +* activerecord-import 0.2.11 -> 0.3.1 +* asset_sync 0.5.0 -> 0.5.4 +* bootstap-sass 2.1.1.0 -> 2.2.2.0 +* carrierwave 0.7.1 -> 0.8.0 +* configurate 0.0.1 -> 0.0.2 +* factory_girl_rails 4.1.0 -> 4.2.0 +* faraday 0.8.4 -> 0.8.5 +* ffi 1.1.5 -> 1.4.0 +* fixture_builder 0.3.4 -> 0.3.5 +* fog 1.6.0 -> 1.9.0 +* foreigner 1.2.1 -> 1.3.0 +* foreman 0.60.2 -> 0.61 +* gon 4.0.1 -> 4.0.2 +* guard 1.5.4 -> 1.6.2 + * guard-cucumber 1.2.2 -> 1.3.2 + * guard-rspec 2.1.1 -> 2.4.0 + * guard-spork 1.2.3 -> 1.4.2 + * rb-fsevent 0.9.2 -> 0.9.3 + * rb-inotify 0.8.8 -> 0.9.0 +* haml 3.1.7 -> 4.0.0 +* handlebars_assets 0.6.6 -> 0.11.0 +* jquery-rails 2.1.3 -> 2.1.4 +* jquery-ui-rails 2.0.2 -> 3.0.1 +* mini_magick 3.4 -> 3.5.0 +* mobile-fu 1.1.0 -> 1.1.1 +* multi_json 1.5.1 -> 1.6.1 +* nokogiri 1.5.5 -> 1.5.6 +* omniauth 1.1.1 -> 1.1.3 + * omniauth-twitter 0.0.13 -> 0.0.14 +* rack-ssl 1.3.2 -> 1.3.3 +* rack-rewrite 1.3.1 -> 1.3.3 +* rails-i18n 0.7.0 -> 0.7.2 +* rails_admin 0.2.0 -> 0.4.5 +* remotipart 1.0.2 -> 1.0.5 +* ruby-oembed 0.8.7 -> 0.8.8 +* rspec 2.11.0 -> 2.12.0 +* rspec-rails 2.11.4 -> 2.12.2 +* sass-rails 3.2.5 -> 3.2.6 +* selenium-webdriver 2.26.0 -> 2.29.0 +* timecop 0.5.3 -> 0.5.9.2 +* twitter 4.2.0 -> 4.5.0 +* unicorn 4.4.0 -> 4.6.0 +* will_paginate 3.0.3 -> 3.0.4 + + # 0.0.2.5 * Fix CVE-2013-0269 by updating the gems json to 1.7.7 and multi\_json to 1.5.1. [Read more](https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/4_YvCpLzL58) @@ -2,12 +2,15 @@ source 'http://rubygems.org' gem 'rails', '3.2.12' -gem 'foreman', '0.60.2' +gem 'foreman', '0.61' -gem 'unicorn', '4.4.0', :require => false +gem 'unicorn', '4.6.0', :require => false gem 'rails_autolink', '1.0.9' +# configuration +gem 'configurate', '0.0.2' + # cross-origin resource sharing gem 'rack-cors', '0.2.7', :require => 'rack/cors' @@ -20,46 +23,45 @@ gem 'rack-protection', '1.2' gem 'devise', '2.1.3' -gem 'remotipart', '1.0.2' +gem 'remotipart', '1.0.5' -gem 'omniauth', '1.1.1' +gem 'omniauth', '1.1.3' gem 'omniauth-facebook', '1.4.1' gem 'omniauth-tumblr', '1.1' -gem 'omniauth-twitter', '0.0.13' +gem 'omniauth-twitter', '0.0.14' -gem 'twitter', '4.2.0' +gem 'twitter', '4.5.0' # mail -gem 'markerb', :git => 'https://github.com/plataformatec/markerb.git' +gem 'markerb', '1.0.1' gem 'messagebus_ruby_api', '1.0.3' group :production do # we don't install these on travis to speed up test runs - gem 'rails_admin', '0.2.0' - gem 'fastercsv', '1.5.5', :require => false - gem 'rack-ssl', '1.3.2', :require => 'rack/ssl' - gem 'rack-rewrite', '1.3.1', :require => false + gem 'rails_admin', '0.4.5' + gem 'rack-ssl', '1.3.3', :require => 'rack/ssl' + gem 'rack-rewrite', '1.3.3', :require => false # analytics gem 'rack-google-analytics', '0.11.0', :require => 'rack/google-analytics' gem 'rack-piwik', '0.1.3', :require => 'rack/piwik', :require => false - + end # database -gem "activerecord-import", "0.2.11" -gem 'foreigner', '1.2.1' +gem "activerecord-import", "0.3.1" +gem 'foreigner', '1.3.0' gem 'mysql2', '0.3.11' if ENV['DB'].nil? || ENV['DB'] == 'all' || ENV['DB'] == 'mysql' gem 'pg', '0.14.1' if ENV['DB'] == 'all' || ENV['DB'] == 'postgres' gem 'sqlite3' if ENV['DB'] == 'all' || ENV['DB'] == 'sqlite' # file uploading -gem 'carrierwave', '0.7.1' -gem 'fog', '1.6.0' -gem 'mini_magick', '3.4' +gem 'carrierwave', '0.8.0' +gem 'fog', '1.9.0' +gem 'mini_magick', '3.5' # JSON and API @@ -69,14 +71,14 @@ gem 'acts_as_api', '0.4.1 ' # localization gem 'i18n-inflector-rails', '~> 1.0' -gem 'rails-i18n', '0.7.0' +gem 'rails-i18n', '0.7.2' # parsing -gem 'nokogiri', '1.5.5' +gem 'nokogiri', '1.5.6' gem 'redcarpet', "2.2.2" gem 'roxml', :git => 'https://github.com/Empact/roxml.git', :ref => '7ea9a9ffd2338aaef5b0' -gem 'ruby-oembed', '0.8.7' +gem 'ruby-oembed', '0.8.8' # queue @@ -95,18 +97,18 @@ gem 'typhoeus', '0.3.3' # views -gem 'haml', '3.1.7' -gem 'mobile-fu', '1.1.0' +gem 'haml', '4.0.0' +gem 'mobile-fu', '1.1.1' -gem 'will_paginate', '3.0.3' +gem 'will_paginate', '3.0.4' gem 'client_side_validations', '3.2.1' -gem 'gon', '4.0.1' +gem 'gon', '4.0.2' # assets group :assets do - gem 'bootstrap-sass', '2.1.1.0' - gem 'sass-rails', '3.2.5' + gem 'bootstrap-sass', '2.2.2.0' + gem 'sass-rails', '3.2.6' # Windows and OSX have an execjs compatible runtime built-in, Linux users should # install Node.js or use 'therubyracer'. @@ -115,21 +117,21 @@ group :assets do # gem 'therubyracer', :platform => :ruby - gem 'handlebars_assets', '0.6.6' + gem 'handlebars_assets', '0.11.0' gem 'uglifier', '1.3.0' - gem "asset_sync", '0.5.0', :require => false + gem "asset_sync", '0.5.4', :require => false end -gem 'jquery-rails', '2.1.3' +gem 'jquery-rails', '2.1.4' # web -gem 'faraday', '0.8.4' +gem 'faraday', '0.8.5' gem 'faraday_middleware', '0.9.0' -gem 'jasmine', '1.2.1' +gem 'jasmine', '1.3.1' ### GROUPS #### @@ -140,31 +142,30 @@ group :test do gem 'cucumber-rails', '1.3.0', :require => false gem 'database_cleaner', '0.9.1' - gem 'timecop', '0.5.3' - gem 'factory_girl_rails', '4.1.0' - gem 'fixture_builder', '0.3.4' + gem 'timecop', '0.5.9.2' + gem 'factory_girl_rails', '4.2.1' + gem 'fixture_builder', '0.3.5' gem 'fuubar', '1.1.0' gem 'rspec-instafail', '0.2.4', :require => false - gem 'selenium-webdriver', '2.26.0' + gem 'selenium-webdriver', '2.29.0' gem 'webmock', '1.8.11', :require => false gem 'spork', '1.0.0rc3' - gem 'guard-rspec', '2.1.1' - gem 'guard-spork', '1.2.3' - gem 'guard-cucumber', '1.2.2' - gem 'rb-inotify', '0.8.8', :require => false - gem 'rb-fsevent', '0.9.2', :require => false - + gem 'guard-rspec', '2.4.0' + gem 'guard-spork', '1.4.2' + gem 'guard-cucumber', '1.3.2' + gem 'rb-inotify', '0.9.0', :require => false + gem 'rb-fsevent', '0.9.3', :require => false end group :test, :development do - gem 'debugger', '1.2.1' - gem "rspec-rails", "2.11.4" + gem "rspec-rails", "2.12.2" end group :development do gem 'capistrano', '2.12.0', :require => false gem 'capistrano_colors', '0.5.5', :require => false - gem 'capistrano-ext', '1.2.1', :require => false + + gem 'rmagick', '2.13.2', :require => false end diff --git a/Gemfile.lock b/Gemfile.lock index d182224e1..fe94fab4a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -7,13 +7,6 @@ GIT activesupport (>= 2.3.0) nokogiri (>= 1.3.3) -GIT - remote: https://github.com/plataformatec/markerb.git - revision: 93b1e8bea9b8fa89ef930f78ba562f596c022198 - specs: - markerb (1.0.0) - redcarpet (>= 2.0) - GEM remote: http://rubygems.org/ specs: @@ -38,8 +31,7 @@ GEM activesupport (= 3.2.12) arel (~> 3.0.2) tzinfo (~> 0.3.29) - activerecord-import (0.2.11) - activerecord (~> 3.0) + activerecord-import (0.3.1) activerecord (~> 3.0) activeresource (3.2.12) activemodel (= 3.2.12) @@ -55,11 +47,12 @@ GEM rack (>= 1.1.0) addressable (2.3.2) arel (3.0.2) - asset_sync (0.5.0) + asset_sync (0.5.4) activemodel fog bcrypt-ruby (3.0.1) - bootstrap-sass (2.1.1.0) + bootstrap-sass (2.2.2.0) + sass (~> 3.2) builder (3.0.4) capistrano (2.12.0) highline @@ -67,8 +60,6 @@ GEM net-sftp (>= 2.0.0) net-ssh (>= 2.0.14) net-ssh-gateway (>= 1.1.0) - capistrano-ext (1.2.1) - capistrano (>= 1.0.0) capistrano_colors (0.5.5) capybara (1.1.3) mime-types (>= 1.16) @@ -77,11 +68,11 @@ GEM rack-test (>= 0.5.4) selenium-webdriver (~> 2.0) xpath (~> 0.1.4) - carrierwave (0.7.1) + carrierwave (0.8.0) activemodel (>= 3.2.0) activesupport (>= 3.2.0) - childprocess (0.3.6) - ffi (~> 1.0, >= 1.0.6) + childprocess (0.3.8) + ffi (~> 1.0, >= 1.0.11) client_side_validations (3.2.1) coderay (1.0.8) coffee-rails (3.2.2) @@ -91,8 +82,8 @@ GEM coffee-script-source execjs coffee-script-source (1.4.0) - columnize (0.3.6) - crack (0.3.1) + configurate (0.0.2) + crack (0.3.2) cucumber (1.2.1) builder (>= 2.1.2) diff-lcs (>= 1.1.3) @@ -103,13 +94,6 @@ GEM cucumber (>= 1.1.8) nokogiri (>= 1.5.0) database_cleaner (0.9.1) - debugger (1.2.1) - columnize (>= 0.3.1) - debugger-linecache (~> 1.1.1) - debugger-ruby_core_source (~> 1.1.4) - debugger-linecache (1.1.2) - debugger-ruby_core_source (>= 1.1.1) - debugger-ruby_core_source (1.1.4) devise (2.1.3) bcrypt-ruby (~> 3.0) orm_adapter (~> 0.1) @@ -117,24 +101,23 @@ GEM warden (~> 1.2.1) diff-lcs (1.1.3) erubis (2.7.0) - excon (0.16.7) + excon (0.16.10) execjs (1.4.0) multi_json (~> 1.0) - factory_girl (4.1.0) + factory_girl (4.2.0) activesupport (>= 3.0.0) - factory_girl_rails (4.1.0) - factory_girl (~> 4.1.0) + factory_girl_rails (4.2.1) + factory_girl (~> 4.2.0) railties (>= 3.0.0) - faraday (0.8.4) + faraday (0.8.5) multipart-post (~> 1.1) faraday_middleware (0.9.0) faraday (>= 0.7.4, < 0.9) - fastercsv (1.5.5) - ffi (1.1.5) - fixture_builder (0.3.4) + ffi (1.4.0) + fixture_builder (0.3.5) activerecord (>= 2) activesupport (>= 2) - fog (1.6.0) + fog (1.9.0) builder excon (~> 0.14) formatador (~> 0.2.0) @@ -144,41 +127,42 @@ GEM net-ssh (>= 2.1.3) nokogiri (~> 1.5.0) ruby-hmac - font-awesome-sass-rails (2.0.0.0) + font-awesome-sass-rails (3.0.2.1) railties (>= 3.1.1) sass-rails (>= 3.1.1) - foreigner (1.2.1) + foreigner (1.3.0) activerecord (>= 3.0.0) - foreman (0.60.2) + foreman (0.61.0) thor (>= 0.13.6) formatador (0.2.4) fuubar (1.1.0) rspec (~> 2.0) rspec-instafail (~> 0.2.0) ruby-progressbar (~> 1.0.0) - gherkin (2.11.5) - json (>= 1.4.6) - gon (4.0.1) + gherkin (2.11.6) + json (>= 1.7.6) + gon (4.0.2) actionpack (>= 2.3.0) json - guard (1.5.4) - listen (>= 0.4.2) + guard (1.6.2) + listen (>= 0.6.0) lumberjack (>= 1.0.2) pry (>= 0.9.10) + terminal-table (>= 1.4.3) thor (>= 0.14.6) - guard-cucumber (1.2.2) + guard-cucumber (1.3.2) cucumber (>= 1.2.0) guard (>= 1.1.0) - guard-rspec (2.1.1) + guard-rspec (2.4.0) guard (>= 1.1) rspec (~> 2.11) - guard-spork (1.2.3) + guard-spork (1.4.2) childprocess (>= 0.2.3) guard (>= 1.1) spork (>= 0.8.4) - sys-proctable - haml (3.1.7) - handlebars_assets (0.6.6) + haml (4.0.0) + tilt + handlebars_assets (0.11.0) execjs (>= 1.2.9) sprockets (>= 2.0.3) tilt @@ -194,56 +178,54 @@ GEM actionpack (~> 3.0) i18n-inflector (~> 2.6) railties (~> 3.0) - jasmine (1.2.1) - jasmine-core (>= 1.2.0) + jasmine (1.3.1) + jasmine-core (~> 1.3.1) rack (~> 1.0) rspec (>= 1.3.1) selenium-webdriver (>= 0.1.3) - jasmine-core (1.2.0) + jasmine-core (1.3.1) journey (1.0.4) - jquery-rails (2.1.3) - railties (>= 3.1.0, < 5.0) - thor (~> 0.14) - jquery-ui-rails (2.0.2) + jquery-rails (2.1.4) + railties (>= 3.0, < 5.0) + thor (>= 0.14, < 2.0) + jquery-ui-rails (3.0.1) jquery-rails railties (>= 3.1.0) - jruby-pageant (1.1.1) json (1.7.7) jwt (0.1.5) multi_json (>= 1.0) kaminari (0.14.1) actionpack (>= 3.0.0) activesupport (>= 3.0.0) - kgio (2.7.4) - libwebsocket (0.1.5) - addressable - listen (0.5.3) + kgio (2.8.0) + listen (0.7.2) lumberjack (1.0.2) mail (2.4.4) i18n (>= 0.4.0) mime-types (~> 1.16) treetop (~> 1.4.8) + markerb (1.0.1) + redcarpet (>= 2.0) messagebus_ruby_api (1.0.3) method_source (0.8.1) mime-types (1.21) - mini_magick (3.4) + mini_magick (3.5.0) subexec (~> 0.2.1) - mobile-fu (1.1.0) + mobile-fu (1.1.1) rack-mobile-detect rails - multi_json (1.5.1) + multi_json (1.6.1) multipart-post (1.1.5) mysql2 (0.3.11) - nested_form (0.2.3) + nested_form (0.3.1) net-scp (1.0.4) net-ssh (>= 1.99.1) net-sftp (2.0.5) net-ssh (>= 2.0.9) - net-ssh (2.6.0) - jruby-pageant (>= 1.1.1) + net-ssh (2.6.3) net-ssh-gateway (1.1.0) net-ssh (>= 1.99.1) - nokogiri (1.5.5) + nokogiri (1.5.6) oauth (0.4.7) oauth2 (0.8.0) faraday (~> 0.8) @@ -251,7 +233,7 @@ GEM jwt (~> 0.1.4) multi_json (~> 1.0) rack (~> 1.2) - omniauth (1.1.1) + omniauth (1.1.3) hashie (~> 1.2) rack omniauth-facebook (1.4.1) @@ -264,15 +246,15 @@ GEM omniauth (~> 1.0) omniauth-tumblr (1.1) omniauth-oauth (~> 1.0) - omniauth-twitter (0.0.13) + omniauth-twitter (0.0.14) multi_json (~> 1.3) omniauth-oauth (~> 1.0) orm_adapter (0.4.0) polyglot (0.3.3) - pry (0.9.10) + pry (0.9.12) coderay (~> 1.0.5) method_source (~> 0.8) - slop (~> 3.3.1) + slop (~> 3.4) rack (1.4.5) rack-cache (1.2) rack (>= 0.4) @@ -282,13 +264,13 @@ GEM rack-mobile-detect (0.4.0) rack rack-piwik (0.1.3) - rack-pjax (0.6.0) + rack-pjax (0.7.0) nokogiri (~> 1.5) rack (~> 1.3) rack-protection (1.2.0) rack - rack-rewrite (1.3.1) - rack-ssl (1.3.2) + rack-rewrite (1.3.3) + rack-ssl (1.3.3) rack rack-test (0.6.2) rack (>= 1.0) @@ -300,21 +282,22 @@ GEM activesupport (= 3.2.12) bundler (~> 1.0) railties (= 3.2.12) - rails-i18n (0.7.0) + rails-i18n (0.7.2) i18n (~> 0.5) - rails_admin (0.2.0) - bootstrap-sass (~> 2.1) + rails_admin (0.4.5) + bootstrap-sass (~> 2.2) builder (~> 3.0) coffee-rails (~> 3.1) - font-awesome-sass-rails (~> 2.0) - haml (~> 3.1) + font-awesome-sass-rails (~> 3.0, >= 3.0.0.1) + haml (~> 4.0) jquery-rails (~> 2.1) - jquery-ui-rails (~> 2.0) + jquery-ui-rails (~> 3.0) kaminari (~> 0.14) - nested_form (~> 0.2.3) + nested_form (~> 0.3) rack-pjax (~> 0.6) rails (~> 3.1) remotipart (~> 1.0) + safe_yaml (~> 0.6) sass-rails (~> 3.1) rails_autolink (1.0.9) rails (~> 3.1) @@ -327,8 +310,8 @@ GEM thor (>= 0.14.6, < 2.0) raindrops (0.10.0) rake (10.0.3) - rb-fsevent (0.9.2) - rb-inotify (0.8.8) + rb-fsevent (0.9.3) + rb-inotify (0.9.0) ffi (>= 0.5.0) rdoc (3.12.1) json (~> 1.4) @@ -336,7 +319,7 @@ GEM redis (3.0.2) redis-namespace (1.2.1) redis (~> 3.0.0) - remotipart (1.0.2) + remotipart (1.0.5) resque (1.23.0) multi_json (~> 1.0) redis-namespace (~> 1.0) @@ -344,40 +327,44 @@ GEM vegas (~> 0.1.2) resque-timeout (1.0.0) resque (~> 1.0) - rspec (2.11.0) - rspec-core (~> 2.11.0) - rspec-expectations (~> 2.11.0) - rspec-mocks (~> 2.11.0) - rspec-core (2.11.1) - rspec-expectations (2.11.3) + rmagick (2.13.2) + rspec (2.12.0) + rspec-core (~> 2.12.0) + rspec-expectations (~> 2.12.0) + rspec-mocks (~> 2.12.0) + rspec-core (2.12.2) + rspec-expectations (2.12.1) diff-lcs (~> 1.1.3) rspec-instafail (0.2.4) - rspec-mocks (2.11.3) - rspec-rails (2.11.4) + rspec-mocks (2.12.2) + rspec-rails (2.12.2) actionpack (>= 3.0) activesupport (>= 3.0) railties (>= 3.0) - rspec (~> 2.11.0) + rspec-core (~> 2.12.0) + rspec-expectations (~> 2.12.0) + rspec-mocks (~> 2.12.0) ruby-hmac (0.4.0) - ruby-oembed (0.8.7) + ruby-oembed (0.8.8) ruby-progressbar (1.0.2) rubyzip (0.9.9) - sass (3.2.3) - sass-rails (3.2.5) + safe_yaml (0.8.0) + sass (3.2.5) + sass-rails (3.2.6) railties (~> 3.2.0) sass (>= 3.1.10) tilt (~> 1.3) - selenium-webdriver (2.26.0) + selenium-webdriver (2.29.0) childprocess (>= 0.2.5) - libwebsocket (~> 0.1.3) multi_json (~> 1.0) rubyzip - simple_oauth (0.1.9) + websocket (~> 1.0.4) + simple_oauth (0.2.0) sinatra (1.3.3) rack (~> 1.3, >= 1.3.6) rack-protection (~> 1.2) tilt (~> 1.3, >= 1.3.3) - slop (3.3.3) + slop (3.4.3) spork (1.0.0rc3) sprockets (2.2.2) hike (~> 1.2) @@ -385,24 +372,24 @@ GEM rack (~> 1.0) tilt (~> 1.1, != 1.3.0) subexec (0.2.2) - sys-proctable (0.9.2) + terminal-table (1.4.5) thor (0.17.0) tilt (1.3.3) - timecop (0.5.3) + timecop (0.5.9.2) treetop (1.4.12) polyglot polyglot (>= 0.3.1) - twitter (4.2.0) - faraday (~> 0.8) - multi_json (~> 1.3) - simple_oauth (~> 0.1.6) + twitter (4.5.0) + faraday (~> 0.8, < 0.10) + multi_json (~> 1.0) + simple_oauth (~> 0.2) typhoeus (0.3.3) mime-types tzinfo (0.3.35) uglifier (1.3.0) execjs (>= 0.3.0) multi_json (~> 1.0, >= 1.0.2) - unicorn (4.4.0) + unicorn (4.6.0) kgio (~> 2.6) rack raindrops (~> 0.7) @@ -413,7 +400,8 @@ GEM webmock (1.8.11) addressable (>= 2.2.7) crack (>= 0.1.7) - will_paginate (3.0.3) + websocket (1.0.7) + will_paginate (3.0.4) xpath (0.1.4) nokogiri (~> 1.3) @@ -421,79 +409,78 @@ PLATFORMS ruby DEPENDENCIES - activerecord-import (= 0.2.11) + activerecord-import (= 0.3.1) acts-as-taggable-on (= 2.3.3) acts_as_api (= 0.4.1) addressable (= 2.3.2) - asset_sync (= 0.5.0) - bootstrap-sass (= 2.1.1.0) + asset_sync (= 0.5.4) + bootstrap-sass (= 2.2.2.0) capistrano (= 2.12.0) - capistrano-ext (= 1.2.1) capistrano_colors (= 0.5.5) capybara (= 1.1.3) - carrierwave (= 0.7.1) + carrierwave (= 0.8.0) client_side_validations (= 3.2.1) + configurate (= 0.0.2) cucumber-rails (= 1.3.0) database_cleaner (= 0.9.1) - debugger (= 1.2.1) devise (= 2.1.3) - factory_girl_rails (= 4.1.0) - faraday (= 0.8.4) + factory_girl_rails (= 4.2.1) + faraday (= 0.8.5) faraday_middleware (= 0.9.0) - fastercsv (= 1.5.5) - fixture_builder (= 0.3.4) - fog (= 1.6.0) - foreigner (= 1.2.1) - foreman (= 0.60.2) + fixture_builder (= 0.3.5) + fog (= 1.9.0) + foreigner (= 1.3.0) + foreman (= 0.61) fuubar (= 1.1.0) - gon (= 4.0.1) - guard-cucumber (= 1.2.2) - guard-rspec (= 2.1.1) - guard-spork (= 1.2.3) - haml (= 3.1.7) - handlebars_assets (= 0.6.6) + gon (= 4.0.2) + guard-cucumber (= 1.3.2) + guard-rspec (= 2.4.0) + guard-spork (= 1.4.2) + haml (= 4.0.0) + handlebars_assets (= 0.11.0) http_accept_language (= 1.0.2) i18n-inflector-rails (~> 1.0) - jasmine (= 1.2.1) - jquery-rails (= 2.1.3) + jasmine (= 1.3.1) + jquery-rails (= 2.1.4) json (= 1.7.7) - markerb! + markerb (= 1.0.1) messagebus_ruby_api (= 1.0.3) - mini_magick (= 3.4) - mobile-fu (= 1.1.0) + mini_magick (= 3.5) + mobile-fu (= 1.1.1) mysql2 (= 0.3.11) - nokogiri (= 1.5.5) - omniauth (= 1.1.1) + nokogiri (= 1.5.6) + omniauth (= 1.1.3) omniauth-facebook (= 1.4.1) omniauth-tumblr (= 1.1) - omniauth-twitter (= 0.0.13) + omniauth-twitter (= 0.0.14) rack-cors (= 0.2.7) rack-google-analytics (= 0.11.0) rack-piwik (= 0.1.3) rack-protection (= 1.2) - rack-rewrite (= 1.3.1) - rack-ssl (= 1.3.2) + rack-rewrite (= 1.3.3) + rack-ssl (= 1.3.3) rails (= 3.2.12) - rails-i18n (= 0.7.0) - rails_admin (= 0.2.0) + rails-i18n (= 0.7.2) + rails_admin (= 0.4.5) rails_autolink (= 1.0.9) - rb-fsevent (= 0.9.2) - rb-inotify (= 0.8.8) + rb-fsevent (= 0.9.3) + rb-inotify (= 0.9.0) redcarpet (= 2.2.2) - remotipart (= 1.0.2) + remotipart (= 1.0.5) resque (= 1.23.0) resque-timeout (= 1.0.0) + rmagick (= 2.13.2) roxml! rspec-instafail (= 0.2.4) - rspec-rails (= 2.11.4) - ruby-oembed (= 0.8.7) - sass-rails (= 3.2.5) - selenium-webdriver (= 2.26.0) + rspec-rails (= 2.12.2) + ruby-oembed (= 0.8.8) + sass-rails (= 3.2.6) + selenium-webdriver (= 2.29.0) spork (= 1.0.0rc3) - timecop (= 0.5.3) - twitter (= 4.2.0) + timecop (= 0.5.9.2) + twitter (= 4.5.0) typhoeus (= 0.3.3) uglifier (= 1.3.0) - unicorn (= 4.4.0) + unicorn (= 4.6.0) webmock (= 1.8.11) - will_paginate (= 3.0.3) + will_paginate (= 3.0.4) @@ -1,7 +1,7 @@ # A sample Guardfile # More info at https://github.com/guard/guard#readme # also, http://asciicasts.com/episodes/264-guard -guard 'rspec', :all_on_start => false do +guard 'rspec', :all_on_start => false, :all_after_pass => false do watch(%r{^spec/.+_spec\.rb$}) watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" } watch('spec/spec_helper.rb') { "spec" } @@ -19,7 +19,7 @@ guard 'rspec', :all_on_start => false do watch(%r{^app/views/(.+)/.*\.(erb|haml)$}) { |m| "spec/requests/#{m[1]}_spec.rb" } end -guard 'spork', :cucumber_env => { 'RAILS_ENV' => 'test' }, :rspec_env => { 'RAILS_ENV' => 'test' }, :all_on_start => false , :wait => 70 do +guard 'spork', :cucumber_env => { 'RAILS_ENV' => 'test' }, :rspec_env => { 'RAILS_ENV' => 'test' }, :all_on_start => false, :all_after_pass => false, :wait => 70 do watch('config/application.rb') watch('config/environment.rb') watch(%r{^config/environments/.+\.rb$}) @@ -31,7 +31,7 @@ guard 'spork', :cucumber_env => { 'RAILS_ENV' => 'test' }, :rspec_env => { 'RAIL watch(%r{features/support/}) { :cucumber } end -guard 'cucumber', :all_on_start => false do +guard 'cucumber', :all_on_start => false, :all_after_pass => false do watch(%r{^features/.+\.feature$}) watch(%r{^features/support/.+$}) { 'features' } watch(%r{^features/step_definitions/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'features' } @@ -5,7 +5,7 @@ Diaspora is a privacy-aware, personally-controlled, do-it-all open source social * **master:** [![Build Status master](https://secure.travis-ci.org/diaspora/diaspora.png?branch=master)](http://travis-ci.org/diaspora/diaspora) * **develop:** [![Build Status develop](https://secure.travis-ci.org/diaspora/diaspora.png?branch=develop)](http://travis-ci.org/diaspora/diaspora) * [![Dependency Status](https://gemnasium.com/diaspora/diaspora.png?travis)](https://gemnasium.com/diaspora/diaspora) -* [![Code Climate](https://codeclimate.com/badge.png)](https://codeclimate.com/github/diaspora/diaspora) +* [![Code Climate](https://codeclimate.com/github/diaspora/diaspora.png)](https://codeclimate.com/github/diaspora/diaspora) With Diaspora you can: diff --git a/app/assets/images/deletelabel.png b/app/assets/images/deletelabel.png Binary files differindex 768ed6608..b3e53ee3a 100644 --- a/app/assets/images/deletelabel.png +++ b/app/assets/images/deletelabel.png diff --git a/app/assets/images/icons/ignoreuser.png b/app/assets/images/icons/ignoreuser.png Binary files differindex c12f90842..b02d62923 100644 --- a/app/assets/images/icons/ignoreuser.png +++ b/app/assets/images/icons/ignoreuser.png diff --git a/app/assets/images/icons/mail.png b/app/assets/images/icons/mail.png Binary files differnew file mode 100644 index 000000000..44b5eeea4 --- /dev/null +++ b/app/assets/images/icons/mail.png diff --git a/app/assets/images/sadcat.jpg b/app/assets/images/sadcat.jpg Binary files differnew file mode 100644 index 000000000..3503b97c1 --- /dev/null +++ b/app/assets/images/sadcat.jpg diff --git a/app/assets/javascripts/app/app.js b/app/assets/javascripts/app/app.js index 3b29d5361..b9f497686 100644 --- a/app/assets/javascripts/app/app.js +++ b/app/assets/javascripts/app/app.js @@ -37,7 +37,7 @@ var app = { app.currentUser = app.user(window.current_user_attributes) || new app.models.User() if(app.currentUser.authenticated()){ - app.header = new app.views.Header; + app.header = new app.views.Header(); $("header").prepend(app.header.el); app.header.render(); } @@ -52,7 +52,10 @@ var app = { $(".stream_title").text(link.text()) app.router.navigate(link.attr("href").substring(1) ,true) - }) + }); + + app.hovercard = new app.views.Hovercard(); + app.aspectMemberships = new app.views.AspectMembership(); }, hasPreload : function(prop) { diff --git a/app/assets/javascripts/app/collections/aspects.js b/app/assets/javascripts/app/collections/aspects.js new file mode 100644 index 000000000..33c9cb56c --- /dev/null +++ b/app/assets/javascripts/app/collections/aspects.js @@ -0,0 +1,26 @@ +app.collections.Aspects = Backbone.Collection.extend({ + model: app.models.Aspect, + + selectedAspects: function(attribute){ + return _.pluck(_.filter(this.toJSON(), function(a){ + return a.selected; + }), attribute); + }, + + allSelected: function(){ + return this.length === _.filter(this.toJSON(), function(a){ return a.selected; }).length; + }, + + selectAll: function(){ + this.map(function(a){ a.set({ 'selected' : true })} ); + }, + + deselectAll: function(){ + this.map(function(a){ a.set({ 'selected' : false })} ); + }, + + toSentence: function(){ + var separator = Diaspora.I18n.t("comma") + ' '; + return this.selectedAspects('name').join(separator).replace(/,\s([^,]+)$/, ' ' + Diaspora.I18n.t("and") + ' $1') || Diaspora.I18n.t("my_aspects"); + } +}) diff --git a/app/assets/javascripts/app/collections/tag_followings.js b/app/assets/javascripts/app/collections/tag_followings.js new file mode 100644 index 000000000..d969a598b --- /dev/null +++ b/app/assets/javascripts/app/collections/tag_followings.js @@ -0,0 +1,17 @@ +app.collections.TagFollowings = Backbone.Collection.extend({ + + model: app.models.TagFollowing, + + url : "/tag_followings", + + create : function(model) { + var name = model.name || model.get("name"); + if(!this.any( + function(tagFollowing){ + return tagFollowing.get("name") === name; + })) { + Backbone.Collection.prototype.create.apply(this, arguments); + } + } + +}); diff --git a/app/assets/javascripts/app/helpers/handlebars-helpers.js b/app/assets/javascripts/app/helpers/handlebars-helpers.js index e1984aed2..a289b5a64 100644 --- a/app/assets/javascripts/app/helpers/handlebars-helpers.js +++ b/app/assets/javascripts/app/helpers/handlebars-helpers.js @@ -1,26 +1,46 @@ Handlebars.registerHelper('t', function(scope, values) { return Diaspora.I18n.t(scope, values.hash) -}) +}); Handlebars.registerHelper('imageUrl', function(path){ return app.baseImageUrl() + path; -}) +}); Handlebars.registerHelper('linkToPerson', function(context, block) { - var html = "<a href=\"/people/" + context.guid + "\" class=\"author-name\">"; - html+= block.fn(context); - html+= "</a>"; + var html = "<a href=\"/people/" + context.guid + "\" class=\"author-name "; + html += Handlebars.helpers.hovercardable(context); + html += "\">"; + html += block.fn(context); + html += "</a>"; return html -}) +}); + + +// allow hovercards for users that are not the current user. +// returns the html class name used to trigger hovercards. +Handlebars.registerHelper('hovercardable', function(person) { + if( app.currentUser.get('guid') != person.guid ) { + return 'hovercardable'; + } + return ''; +}); Handlebars.registerHelper('personImage', function(person, size, imageClass) { /* we return here if person.avatar is blank, because this happens when a * user is unauthenticated. we don't know why this happens... */ - if(typeof(person.avatar) == "undefined") { return } + if( _.isUndefined(person.avatar) ) { return } + + size = ( !_.isString(size) ) ? "small" : size; + imageClass = ( !_.isString(imageClass) ) ? size : imageClass; - size = (typeof(size) != "string" ? "small" : size); - imageClass = (typeof(imageClass) != "string" ? size : imageClass); + return _.template('<img src="<%= src %>" class="avatar <%= img_class %>" title="<%= title %>" />', { + 'src': person.avatar[size], + 'img_class': imageClass, + 'title': _.escape(person.name) + }); +}); - return "<img src=\"" + person.avatar[size] +"\" class=\"avatar " + imageClass + "\" title=\"" + _.escape(person.name) +"\" />"; -}) +Handlebars.registerHelper('localTime', function(timestamp) { + return new Date(timestamp).toLocaleString(); +});
\ No newline at end of file diff --git a/app/assets/javascripts/app/models/aspect.js b/app/assets/javascripts/app/models/aspect.js new file mode 100644 index 000000000..8ae6dac71 --- /dev/null +++ b/app/assets/javascripts/app/models/aspect.js @@ -0,0 +1,5 @@ +app.models.Aspect = Backbone.Model.extend({ + toggleSelected: function(){ + this.set({'selected' : !this.get('selected')}); + } +}); diff --git a/app/assets/javascripts/app/models/aspect_membership.js b/app/assets/javascripts/app/models/aspect_membership.js new file mode 100644 index 000000000..73a213f45 --- /dev/null +++ b/app/assets/javascripts/app/models/aspect_membership.js @@ -0,0 +1,7 @@ +/** + * this model represents the assignment of an aspect to a person. + * (only valid for the context of the current user) + */ +app.models.AspectMembership = Backbone.Model.extend({ + urlRoot: "/aspect_memberships" +});
\ No newline at end of file diff --git a/app/assets/javascripts/app/models/post/interactions.js b/app/assets/javascripts/app/models/post/interactions.js index 40fd28444..d510ca8b5 100644 --- a/app/assets/javascripts/app/models/post/interactions.js +++ b/app/assets/javascripts/app/models/post/interactions.js @@ -95,14 +95,20 @@ app.models.Post.Interactions = Backbone.Model.extend({ reshare : function(){ var interactions = this , reshare = this.post.reshare() + , flash = new Diaspora.Widgets.FlashMessages; reshare.save({}, { success : function(resp){ - var flash = new Diaspora.Widgets.FlashMessages; flash.render({ success: true, notice: Diaspora.I18n.t("reshares.successful") }); + }, + error: function(resp){ + flash.render({ + success: false, + notice: Diaspora.I18n.t("reshares.duplicate") + }); } }).done(function(){ interactions.reshares.add(reshare) @@ -119,7 +125,8 @@ app.models.Post.Interactions = Backbone.Model.extend({ , publicPost = this.post.get("public") , userIsNotAuthor = this.post.get("author").diaspora_id != app.currentUser.get("diaspora_id") , userIsNotRootAuthor = rootExists && (isReshare ? this.post.get("root").author.diaspora_id != app.currentUser.get("diaspora_id") : true) + , notReshared = this.reshares.length === 0; - return publicPost && app.currentUser.authenticated() && userIsNotAuthor && userIsNotRootAuthor; + return publicPost && app.currentUser.authenticated() && userIsNotAuthor && userIsNotRootAuthor && notReshared; } -});
\ No newline at end of file +}); diff --git a/app/assets/javascripts/app/models/stream_aspects.js b/app/assets/javascripts/app/models/stream_aspects.js new file mode 100644 index 000000000..f8536c65d --- /dev/null +++ b/app/assets/javascripts/app/models/stream_aspects.js @@ -0,0 +1,27 @@ +app.models.StreamAspects = app.models.Stream.extend({ + + url : function(){ + return _.any(this.items.models) ? this.timeFilteredPath() : this.basePath() + }, + + initialize : function(models, options){ + var collectionClass = options && options.collection || app.collections.Posts; + this.items = new collectionClass([], this.collectionOptions()); + this.aspects_ids = options.aspects_ids; + }, + + basePath : function(){ + return '/aspects'; + }, + + fetch: function() { + if(this.isFetching()){ return false } + var url = this.url(); + var ids = this.aspects_ids; + this.deferred = this.items.fetch({ + add : true, + url : url, + data : { 'a_ids': ids } + }).done(_.bind(this.triggerFetchedEvents, this)) + } +}); diff --git a/app/assets/javascripts/app/models/tag_following.js b/app/assets/javascripts/app/models/tag_following.js new file mode 100644 index 000000000..b2ab35977 --- /dev/null +++ b/app/assets/javascripts/app/models/tag_following.js @@ -0,0 +1,3 @@ +app.models.TagFollowing = Backbone.Model.extend({ + urlRoot: "/tag_followings" +}); diff --git a/app/assets/javascripts/app/router.js b/app/assets/javascripts/app/router.js index 1e9a19425..f1aa32b95 100644 --- a/app/assets/javascripts/app/router.js +++ b/app/assets/javascripts/app/router.js @@ -11,13 +11,13 @@ app.Router = Backbone.Router.extend({ "stream": "stream", "participate": "stream", "explore": "stream", - "aspects": "stream", - "aspects:query": "stream", + "aspects": "aspects", + "aspects/stream": "aspects_stream", "commented": "stream", "liked": "stream", "mentions": "stream", - "followed_tags": "stream", - "tags/:name": "stream", + "followed_tags": "followed_tags", + "tags/:name": "followed_tags", "people/:id/photos": "photos", "people/:id": "stream", @@ -63,6 +63,47 @@ app.Router = Backbone.Router.extend({ app.photos = new app.models.Stream([], {collection: app.collections.Photos}); app.page = new app.views.Photos({model : app.photos}); $("#main_stream").html(app.page.render().el); + }, + + followed_tags : function(name) { + this.stream(); + + app.tagFollowings = new app.collections.TagFollowings(); + var followedTagsView = new app.views.TagFollowingList({collection: app.tagFollowings}); + $("#tags_list").replaceWith(followedTagsView.render().el); + followedTagsView.setupAutoSuggest(); + + app.tagFollowings.add(preloads.tagFollowings); + + if(name) { + var followedTagsAction = new app.views.TagFollowingAction( + {tagText: name} + ); + $("#author_info").prepend(followedTagsAction.render().el) + } + }, + + aspects : function(){ + app.aspects = new app.collections.Aspects(app.currentUser.get('aspects')); + var aspects_list = new app.views.AspectsList({ collection: app.aspects }); + aspects_list.render(); + this.aspects_stream(); + }, + + aspects_stream : function(){ + + var ids = app.aspects.selectedAspects('id'); + app.stream = new app.models.StreamAspects([], { aspects_ids: ids }); + app.stream.fetch(); + + app.page = new app.views.Stream({model : app.stream}); + app.publisher = app.publisher || new app.views.Publisher({collection : app.stream.items}); + app.publisher.updateAspectsSelector(ids); + + var streamFacesView = new app.views.StreamFaces({collection : app.stream.items}); + + $("#main_stream").html(app.page.render().el); + $('#selected_aspect_contacts .content').html(streamFacesView.render().el); } }); diff --git a/app/assets/javascripts/app/views/aspect_membership_view.js b/app/assets/javascripts/app/views/aspect_membership_view.js new file mode 100644 index 000000000..aea67f090 --- /dev/null +++ b/app/assets/javascripts/app/views/aspect_membership_view.js @@ -0,0 +1,161 @@ +/** + * this view lets the user (de-)select aspect memberships in the context + * of another users profile or the contact page. + * + * updates to the list of aspects are immediately propagated to the server, and + * the results are dislpayed as flash messages. + */ +app.views.AspectMembership = Backbone.View.extend({ + + initialize: function() { + // attach event handler, removing any previous instances + var selector = '.dropdown.aspect_membership .dropdown_list > li'; + $('body') + .off('click', selector) + .on('click', selector, _.bind(this._clickHandler, this)); + + this.list_item = null; + this.dropdown = null; + }, + + // decide what to do when clicked + // -> addMembership + // -> removeMembership + _clickHandler: function(evt) { + this.list_item = $(evt.target); + this.dropdown = this.list_item.parent(); + + this.list_item.addClass('loading'); + + if( this.list_item.is('.selected') ) { + var membership_id = this.list_item.data('membership_id'); + this.removeMembership(membership_id); + } else { + var aspect_id = this.list_item.data('aspect_id'); + var person_id = this.dropdown.data('person_id'); + this.addMembership(person_id, aspect_id); + } + + return false; // stop the event + }, + + // return the (short) name of the person associated with the current dropdown + _name: function() { + return this.dropdown.data('person-short-name'); + }, + + // create a membership for the given person in the given aspect + addMembership: function(person_id, aspect_id) { + var aspect_membership = new app.models.AspectMembership({ + 'person_id': person_id, + 'aspect_id': aspect_id + }); + + aspect_membership.on('sync', this._successSaveCb, this); + aspect_membership.on('error', function() { + this._displayError('aspect_dropdown.error'); + }, this); + + aspect_membership.save(); + }, + + _successSaveCb: function(aspect_membership) { + var aspect_id = aspect_membership.get('aspect_id'); + var membership_id = aspect_membership.get('id'); + var li = this.dropdown.find('li[data-aspect_id="'+aspect_id+'"]'); + + // the user didn't have this person in any aspects before, congratulate them + // on their newly found friendship ;) + if( this.dropdown.find('li.selected').length == 0 ) { + var msg = Diaspora.I18n.t('aspect_dropdown.started_sharing_with', { 'name': this._name() }); + Diaspora.page.flashMessages.render({ 'success':true, 'notice':msg }); + } + + li.attr('data-membership_id', membership_id) // just to be sure... + .data('membership_id', membership_id) + .addClass('selected'); + + this.updateSummary(); + this._done(); + }, + + // show an error flash msg + _displayError: function(msg_id) { + this._done(); + this.dropdown.removeClass('active'); // close the dropdown + + var msg = Diaspora.I18n.t(msg_id, { 'name': this._name() }); + Diaspora.page.flashMessages.render({ 'success':false, 'notice':msg }); + }, + + // remove the membership with the given id + removeMembership: function(membership_id) { + var aspect_membership = new app.models.AspectMembership({ + 'id': membership_id + }); + + aspect_membership.on('sync', this._successDestroyCb, this); + aspect_membership.on('error', function() { + this._displayError('aspect_dropdown.error_remove'); + }, this); + + aspect_membership.destroy(); + }, + + _successDestroyCb: function(aspect_membership) { + var membership_id = aspect_membership.get('id'); + var li = this.dropdown.find('li[data-membership_id="'+membership_id+'"]'); + + li.removeAttr('data-membership_id') + .removeData('membership_id') + .removeClass('selected'); + + // we just removed the last aspect, inform the user with a flash message + // that he is no longer sharing with that person + if( this.dropdown.find('li.selected').length == 0 ) { + var msg = Diaspora.I18n.t('aspect_dropdown.stopped_sharing_with', { 'name': this._name() }); + Diaspora.page.flashMessages.render({ 'success':true, 'notice':msg }); + } + + this.updateSummary(); + this._done(); + }, + + // cleanup tasks after aspect selection + _done: function() { + if( this.list_item ) { + this.list_item.removeClass('loading'); + } + }, + + // refresh the button text to reflect the current aspect selection status + updateSummary: function() { + var btn = this.dropdown.parents('div.aspect_membership').find('.button.toggle'); + var aspects_cnt = this.dropdown.find('li.selected').length; + var txt; + + if( aspects_cnt == 0 ) { + btn.removeClass('in_aspects'); + txt = Diaspora.I18n.t('aspect_dropdown.toggle.zero'); + } else { + btn.addClass('in_aspects'); + txt = this._pluralSummaryTxt(aspects_cnt); + } + + btn.text(txt + ' ▼'); + }, + + _pluralSummaryTxt: function(cnt) { + var all_aspects_cnt = this.dropdown.find('li').length; + + if( cnt == 1 ) { + return this.dropdown.find('li.selected').first().text(); + } + + if( cnt == all_aspects_cnt ) { + return Diaspora.I18n.t('aspect_dropdown.all_aspects'); + } + + return Diaspora.I18n.t('aspect_dropdown.toggle', { 'count':cnt.toString() }); + } +}); diff --git a/app/assets/javascripts/app/views/aspect_view.js b/app/assets/javascripts/app/views/aspect_view.js new file mode 100644 index 000000000..67d15429a --- /dev/null +++ b/app/assets/javascripts/app/views/aspect_view.js @@ -0,0 +1,28 @@ +app.views.Aspect = app.views.Base.extend({ + templateName: "aspect", + + tagName: "li", + + initialize: function(){ + if (this.model.get('selected')){ + this.$el.addClass('active'); + }; + }, + + events: { + 'click a.aspect_selector': 'toggleAspect' + }, + + toggleAspect: function(evt){ + if (evt) { evt.preventDefault(); }; + this.$el.toggleClass('active'); + this.model.toggleSelected(); + app.router.aspects_stream(); + }, + + presenter : function() { + return _.extend(this.defaultPresenter(), { + aspect : this.model + }) + } +}); diff --git a/app/assets/javascripts/app/views/aspects_dropdown_view.js b/app/assets/javascripts/app/views/aspects_dropdown_view.js index 406532cfa..11e2a7d59 100644 --- a/app/assets/javascripts/app/views/aspects_dropdown_view.js +++ b/app/assets/javascripts/app/views/aspects_dropdown_view.js @@ -1,3 +1,10 @@ +/** + * the aspects dropdown specifies the scope of a posted status message. + * + * this view is part of the publisher where users are presented the options + * 'public', 'all aspects' and a list of their personal aspects, for limiting + * 'the audience of created contents. + */ app.views.AspectsDropdown = app.views.Base.extend({ templateName : "aspects-dropdown", events : { diff --git a/app/assets/javascripts/app/views/aspects_list_view.js b/app/assets/javascripts/app/views/aspects_list_view.js new file mode 100644 index 000000000..468a79b8a --- /dev/null +++ b/app/assets/javascripts/app/views/aspects_list_view.js @@ -0,0 +1,55 @@ +app.views.AspectsList = app.views.Base.extend({ + templateName: 'aspects-list', + + el: '#aspects_list', + + events: { + 'click .toggle_selector' : 'toggleAll' + }, + + initialize: function(){ + this.collection.on('change', this.toggleSelector, this); + this.collection.on('change', this.updateStreamTitle, this); + }, + + postRenderTemplate: function() { + this.collection.each(this.appendAspect, this); + this.$('a[rel*=facebox]').facebox(); + this.updateStreamTitle(); + this.toggleSelector(); + }, + + appendAspect: function(aspect) { + $("#aspects_list > *:last").before(new app.views.Aspect({ + model: aspect, attributes: {'data-aspect_id': aspect.get('id')} + }).render().el); + }, + + toggleAll: function(evt){ + if (evt) { evt.preventDefault(); }; + + if (this.collection.allSelected()) { + this.collection.deselectAll(); + this.$('li:not(:last)').removeClass("active"); + } else { + this.collection.selectAll(); + this.$('li:not(:last)').addClass("active"); + } + + this.toggleSelector(); + app.router.aspects_stream(); + }, + + toggleSelector: function(){ + var selector = this.$('a.toggle_selector'); + if (this.collection.allSelected()) { + selector.text(Diaspora.I18n.t('aspect_navigation.deselect_all')); + } else { + selector.text(Diaspora.I18n.t('aspect_navigation.select_all')); + } + }, + + updateStreamTitle: function(){ + $('.stream_title').text(this.collection.toSentence()); + } +}) diff --git a/app/assets/javascripts/app/views/content_view.js b/app/assets/javascripts/app/views/content_view.js index f8dc39388..68f5f26c8 100644 --- a/app/assets/javascripts/app/views/content_view.js +++ b/app/assets/javascripts/app/views/content_view.js @@ -82,8 +82,14 @@ app.views.OEmbed = app.views.Base.extend({ }, presenter:function () { + o_embed_cache = this.model.get("o_embed_cache") + if(o_embed_cache) { + typemodel = { rich: false, photo: false, video: false, link: false } + typemodel[o_embed_cache.data.type] = true + o_embed_cache.data.types = typemodel + } return _.extend(this.defaultPresenter(), { - o_embed_html : app.helpers.oEmbed.html(this.model.get("o_embed_cache")) + o_embed_html : app.helpers.oEmbed.html(o_embed_cache) }) }, diff --git a/app/assets/javascripts/app/views/feedback_actions.js b/app/assets/javascripts/app/views/feedback_actions.js index 60f26237f..b781bccbc 100644 --- a/app/assets/javascripts/app/views/feedback_actions.js +++ b/app/assets/javascripts/app/views/feedback_actions.js @@ -1,5 +1,7 @@ //=require "./feedback_view" app.views.FeedbackActions = app.views.Feedback.extend({ id : "user-controls", - templateName : "feedback-actions" + templateName : "feedback-actions", + events: {}, + initialize: function(){} });
\ No newline at end of file diff --git a/app/assets/javascripts/app/views/hovercard_view.js b/app/assets/javascripts/app/views/hovercard_view.js new file mode 100644 index 000000000..47a808b6a --- /dev/null +++ b/app/assets/javascripts/app/views/hovercard_view.js @@ -0,0 +1,115 @@ + +app.views.Hovercard = Backbone.View.extend({ + el: '#hovercard_container', + + initialize: function() { + $('.hovercardable') + .live('mouseenter', _.bind(this._mouseenterHandler, this)) + .live('mouseleave', _.bind(this._mouseleaveHandler, this)); + + this.show_me = false; + + this.avatar = this.$('.avatar'); + this.dropdown = this.$('.dropdown_list'); + this.dropdown_container = this.$('#hovercard_dropdown_container'); + this.hashtags = this.$('.hashtags'); + this.person_link = this.$('a.person'); + this.person_handle = this.$('p.handle'); + }, + + href: function() { + return this.$el.parent().attr('href'); + }, + + _mouseenterHandler: function(event) { + var el = $(event.target); + if( !el.is('a') ) { + el = el.parents('a'); + } + + if( el.attr('href').indexOf('/people') == -1 ) { + // can't fetch data from that URL, aborting + return false; + } + + this.show_me = true; + this.showHovercardOn(el); + return false; + }, + + _mouseleaveHandler: function(event) { + this.show_me = false; + if( this.$el.is(':visible') ) { + this.$el.fadeOut('fast'); + } else { + this.$el.hide(); + } + + this.dropdown_container.empty(); + return false; + }, + + showHovercardOn: _.debounce(function(element) { + var el = $(element); + var hc = this.$el; + + if( !this.show_me ) { + // mouse has left element + return; + } + + hc.hide(); + hc.prependTo(el); + this._positionHovercard(); + this._populateHovercard(); + }, 500, true), + + _populateHovercard: function() { + var href = this.href(); + href += "/hovercard.json"; + + var self = this; + $.get(href, function(person){ + if( !person || person.length == 0 ) { + throw new Error("received data is not a person object"); + } + + self._populateHovercardWith(person); + self.$el.fadeIn('fast'); + }); + }, + + _populateHovercardWith: function(person) { + var self = this; + + this.avatar.attr('src', person.avatar); + this.person_link.attr('href', person.url); + this.person_link.text(person.name); + this.person_handle.text(person.handle); + this.dropdown.attr('data-person-id', person.id); + + // set hashtags + this.hashtags.empty(); + this.hashtags.html( $(_.map(person.tags, function(tag){ + return $('<a/>',{href: "/tags/"+tag.substring(1)}).text(tag)[0] ; + })) ); + + // set aspect dropdown + var href = this.href(); + href += "/aspect_membership_button" + $.get(href, function(response) { + self.dropdown_container.html(response); + }); + }, + + _positionHovercard: function() { + var p = this.$el.parent(); + var p_pos = p.position(); + var p_height = p.height(); + + this.$el.css({ + top: p_pos.top + p_height - 25, + left: p_pos.left + }); + } +});
\ No newline at end of file diff --git a/app/assets/javascripts/app/views/publisher/aspects_selector.js b/app/assets/javascripts/app/views/publisher/aspects_selector.js index ecb2c5764..d3b364265 100644 --- a/app/assets/javascripts/app/views/publisher/aspects_selector.js +++ b/app/assets/javascripts/app/views/publisher/aspects_selector.js @@ -21,16 +21,28 @@ } // update the selection summary - AspectsDropdown.updateNumber( - el.closest(".dropdown_list"), - null, - el.parent().find('li.selected').length, - '' - ); + this._updateAspectsNumber(el); this._updateSelectedAspectIds(); }, + updateAspectsSelector: function(ids){ + var el = this.$("ul.dropdown_list"); + this.$('.dropdown_list > li').each(function(){ + var el = $(this); + var aspectId = el.data('aspect_id'); + if (_.contains(ids, aspectId)) { + el.addClass('selected'); + } + else { + el.removeClass('selected'); + } + }); + + this._updateAspectsNumber(el); + this._updateSelectedAspectIds(); + }, + // take care of the form fields that will indicate the selected aspects _updateSelectedAspectIds: function() { var self = this; @@ -52,6 +64,15 @@ }); }, + _updateAspectsNumber: function(el){ + AspectsDropdown.updateNumber( + el.closest(".dropdown_list"), + null, + el.parent().find('li.selected').length, + '' + ); + }, + _addHiddenAspectInput: function(id) { var uid = _.uniqueId('aspect_ids_'); this.$('.content_creation form').append( @@ -59,4 +80,4 @@ ); } }; -})();
\ No newline at end of file +})(); diff --git a/app/assets/javascripts/app/views/publisher_view.js b/app/assets/javascripts/app/views/publisher_view.js index c8c952f24..0da15b333 100644 --- a/app/assets/javascripts/app/views/publisher_view.js +++ b/app/assets/javascripts/app/views/publisher_view.js @@ -99,12 +99,19 @@ app.views.Publisher = Backbone.View.extend(_.extend( this.$("input[name='photos[]']").remove(); this.el_wrapper.removeClass("with_attachments"); + // empty upload-photo + this.$('#fileInfo').empty(); + // close publishing area (CSS) this.close(); // disable submitting this.checkSubmitAvailability(); + // force textchange plugin to update lastValue + this.el_input.data('lastValue', ''); + this.el_hiddenInput.data('lastValue', ''); + return this; }, diff --git a/app/assets/javascripts/app/views/stream_post_views.js b/app/assets/javascripts/app/views/stream_post_views.js index 5a3c970ba..89ddf9927 100644 --- a/app/assets/javascripts/app/views/stream_post_views.js +++ b/app/assets/javascripts/app/views/stream_post_views.js @@ -20,7 +20,7 @@ app.views.StreamPost = app.views.Post.extend({ "click .block_user": "blockUser" }, - tooltipSelector : ".delete, .block_user, .post_scope", + tooltipSelector : ".timeago, .delete, .block_user, .post_scope, .ignore", initialize : function(){ this.model.bind('remove', this.remove, this); diff --git a/app/assets/javascripts/app/views/tag_following_action_view.js b/app/assets/javascripts/app/views/tag_following_action_view.js new file mode 100644 index 000000000..fbfe2bae2 --- /dev/null +++ b/app/assets/javascripts/app/views/tag_following_action_view.js @@ -0,0 +1,62 @@ +app.views.TagFollowingAction = app.views.Base.extend({ + + templateName: "tag_following_action", + + events : { + "mouseenter .button.red_on_hover": "mouseIn", + "mouseleave .button.red_on_hover": "mouseOut", + "click .button": "tagAction" + }, + + initialize : function(options){ + this.tagText = options.tagText; + this.getTagFollowing(); + app.tagFollowings.bind("remove add", this.getTagFollowing, this); + }, + + presenter : function() { + return _.extend(this.defaultPresenter(), { + tag_is_followed : this.tag_is_followed(), + followString : this.followString() + }) + }, + + followString : function() { + if(this.tag_is_followed()) { + return Diaspora.I18n.t("stream.tags.following", {"tag" : this.model.attributes.name}); + } else { + return Diaspora.I18n.t("stream.tags.follow", {"tag" : this.model.attributes.name}); + } + }, + + tag_is_followed : function() { + return !this.model.isNew(); + }, + + getTagFollowing : function(tagFollowing) { + this.model = app.tagFollowings.where({"name":this.tagText})[0] || + new app.models.TagFollowing({"name":this.tagText}); + this.model.bind("change", this.render, this); + this.render(); + }, + + mouseIn : function(){ + this.$("input").removeClass("in_aspects"); + this.$("input").val( Diaspora.I18n.t('stream.tags.stop_following', {tag: this.model.attributes.name} ) ); + }, + + mouseOut : function() { + this.$("input").addClass("in_aspects"); + this.$("input").val( Diaspora.I18n.t('stream.tags.following', {"tag" : this.model.attributes.name} ) ); + }, + + tagAction : function(evt){ + if(evt){ evt.preventDefault(); } + + if(this.tag_is_followed()) { + this.model.destroy(); + } else { + app.tagFollowings.create(this.model); + } + } +});
\ No newline at end of file diff --git a/app/assets/javascripts/app/views/tag_following_list_view.js b/app/assets/javascripts/app/views/tag_following_list_view.js new file mode 100644 index 000000000..192d276ea --- /dev/null +++ b/app/assets/javascripts/app/views/tag_following_list_view.js @@ -0,0 +1,75 @@ +//= require jquery.autoSuggest.custom +app.views.TagFollowingList = app.views.Base.extend({ + + templateName: "tag_following_list", + + className : "sub_nav", + + id : "tags_list", + + tagName : "ul", + + events: { + "submit form": "createTagFollowing" + }, + + initialize : function(){ + this.collection.bind("add", this.appendTagFollowing, this); + }, + + postRenderTemplate : function() { + this.collection.each(this.appendTagFollowing, this); + }, + + setupAutoSuggest : function() { + this.$("input").autoSuggest("/tags", { + selectedItemProp: "name", + selectedValuesProp: "name", + searchObjProps: "name", + asHtmlID: "tags", + neverSubmit: true, + retrieveLimit: 10, + selectionLimit: false, + minChars: 2, + keyDelay: 200, + startText: "", + emptyText: "no_results", + selectionAdded: _.bind(this.suggestSelection, this) + }); + + this.$("input").bind('keydown', function(evt){ + if(evt.keyCode == 13 || evt.keyCode == 9 || evt.keyCode == 32){ + evt.preventDefault(); + if( $('li.as-result-item.active').length == 0 ){ + $('li.as-result-item').first().click(); + } + } + }); + }, + + presenter : function() { + return this.defaultPresenter(); + }, + + suggestSelection : function(elem) { + this.$(".tag_input").val($(elem[0]).text().substring(2)); + elem.remove(); + this.createTagFollowing(); + }, + + createTagFollowing: function(evt) { + if(evt){ evt.preventDefault(); } + var name = this.$(".tag_input").val(); + + this.collection.create({"name":this.$(".tag_input").val()}); + this.$(".tag_input").val(""); + return this; + }, + + appendTagFollowing: function(tag) { + this.$el.prepend(new app.views.TagFollowing({ + model: tag + }).render().el); + } + +});
\ No newline at end of file diff --git a/app/assets/javascripts/app/views/tag_following_view.js b/app/assets/javascripts/app/views/tag_following_view.js new file mode 100644 index 000000000..f59defb32 --- /dev/null +++ b/app/assets/javascripts/app/views/tag_following_view.js @@ -0,0 +1,33 @@ +app.views.TagFollowing = app.views.Base.extend({ + + templateName: "tag_following", + + className : "unfollow", + + tagName: "li", + + events : { + "click .tag_following_delete": "destroyModel" + }, + + initialize : function(){ + this.el.id = "tag-following-" + this.model.get("name"); + this.model.bind("destroy", this.hide, this); + }, + + hide : function() { + this.$el.slideUp(); + }, + + postRenderTemplate : function() { + this.$el.hide(); + this.$el.slideDown(); + }, + + presenter : function() { + return _.extend(this.defaultPresenter(), { + tag : this.model + }) + } + +});
\ No newline at end of file diff --git a/app/assets/javascripts/aspect-edit-pane.js b/app/assets/javascripts/aspect-edit-pane.js index b76f71a9c..26aa42a5d 100644 --- a/app/assets/javascripts/aspect-edit-pane.js +++ b/app/assets/javascripts/aspect-edit-pane.js @@ -27,3 +27,88 @@ $(document).ready(function() { toggleAspectTitle(); }); }); + + +/** + * TEMPORARY SOLUTION + * TODO remove me, when the contacts section is done with Backbone.js ... + * (this is about as much covered by tests as the old code ... not at all) + * + * see also 'contact-edit.js' + */ + +app.tmp || (app.tmp = {}); + +// on the contacts page, viewing the facebox for single aspect +app.tmp.ContactAspectsBox = function() { + $('body').on('click', '#aspect_edit_pane a.add.button', _.bind(this.addToAspect, this)); + $('body').on('click', '#aspect_edit_pane a.added.button', _.bind(this.removeFromAspect, this)); +}; +_.extend(app.tmp.ContactAspectsBox.prototype, { + addToAspect: function(evt) { + var el = $(evt.currentTarget); + var aspect_membership = new app.models.AspectMembership({ + 'person_id': el.data('person_id'), + 'aspect_id': el.data('aspect_id') + }); + + aspect_membership.on('sync', this._successSaveCb, this); + aspect_membership.on('error', function() { + this._displayError('aspect_dropdown.error', el); + }, this); + + aspect_membership.save(); + + return false; + }, + + _successSaveCb: function(aspect_membership) { + var membership_id = aspect_membership.get('id'); + var person_id = aspect_membership.get('person_id'); + var el = $('li.contact').find('a.add[data-person_id="'+person_id+'"]'); + + el.removeClass('add') + .addClass('added') + .attr('data-membership_id', membership_id) // just to be sure... + .data('membership_id', membership_id); + }, + + removeFromAspect: function(evt) { + var el = $(evt.currentTarget); + + var aspect_membership = new app.models.AspectMembership({ + 'id': el.data('membership_id') + }); + aspect_membership.on('sync', this._successDestroyCb, this); + aspect_membership.on('error', function(aspect_membership) { + this._displayError('aspect_dropdown.error_remove', el); + }, this); + + aspect_membership.destroy(); + + return false; + }, + + _successDestroyCb: function(aspect_membership) { + var membership_id = aspect_membership.get('id'); + var el = $('li.contact').find('a.added[data-membership_id="'+membership_id+'"]'); + + el.removeClass('added') + .addClass('add') + .removeAttr('data-membership_id') + .removeData('membership_id'); + }, + + _displayError: function(msg_id, contact_el) { + var name = $('li.contact') + .has(contact_el) + .find('h4.name') + .text(); + var msg = Diaspora.I18n.t(msg_id, { 'name': name }); + Diaspora.page.flashMessages.render({ 'success':false, 'notice':msg }); + } +}); + +$(function() { + var contact_aspects_box = new app.tmp.ContactAspectsBox(); +}); diff --git a/app/assets/javascripts/contact-edit.js b/app/assets/javascripts/contact-edit.js index 0e00c1c08..82d9f5dc6 100644 --- a/app/assets/javascripts/contact-edit.js +++ b/app/assets/javascripts/contact-edit.js @@ -3,34 +3,6 @@ // the COPYRIGHT file. var ContactEdit = { - init: function(){ - $.extend(ContactEdit, AspectsDropdown); - $('.dropdown.aspect_membership .dropdown_list > li, .dropdown.inviter .dropdown_list > li').live('click', function(evt){ - ContactEdit.processClick($(this), evt); - }); - }, - - updateNumber: function(dropdown, personId, number){ - var button = dropdown.parents(".dropdown").children('.button.toggle'), - replacement; - - if (number == 0) { - button.removeClass("in_aspects"); - replacement = Diaspora.I18n.t("aspect_dropdown.toggle.zero"); - }else if (number == 1) { - button.addClass("in_aspects"); - replacement = dropdown.find(".selected").first().text(); - }else if (number < 3) { - replacement = Diaspora.I18n.t('aspect_dropdown.toggle.few', { count: number.toString()}) - }else if (number > 3) { - replacement = Diaspora.I18n.t('aspect_dropdown.toggle.many', { count: number.toString()}) - }else { - //the above one are a tautology, but I want to have them here once for once we figure out a neat way i18n them - replacement = Diaspora.I18n.t('aspect_dropdown.toggle.other', { count: number.toString()}) - ContactEdit.toggleAspectMembership(li, evt); - } - }, - inviteFriend: function(li, evt) { $.post('/services/inviter/facebook.json', { "aspect_id" : li.data("aspect_id"), @@ -38,61 +10,66 @@ var ContactEdit = { }, function(data){ ContactEdit.processSuccess(li, evt, data); }); - }, + } +}; - processSuccess: function(element, evt, data) { - element.removeClass('loading') - if (data.url != undefined) { - window.location = data.url; - } else { - element.toggleClass("selected"); - Diaspora.widgets.flashes.render({'success':true, 'notice':data.message}); - } - }, +/* + TODO remove me + ContactEdit.toggleCheckbox(li); + Diaspora.page.publish("aspectDropdown/updated", [li.parent().data("person_id"), li.parents(".dropdown").parent(".right").html()]); +*/ - processClick: function(li, evt){ - var dropdown = li.closest('.dropdown'); - li.addClass('loading'); - if (dropdown.hasClass('inviter')) { - ContactEdit.inviteFriend(li, evt); - dropdown.html('sending, please wait...'); - } - else { - ContactEdit.toggleAspectMembership(li, evt); - } - }, +/** + * TEMPORARY SOLUTION + * TODO remove me, when the contacts section is done with Backbone.js ... + * (this is about as much covered by tests as the old code ... not at all) + * + * see also 'aspect-edit-pane.js' + */ - toggleAspectMembership: function(li, evt) { - var button = li.find('.button'), - dropdown = li.closest('.dropdown'), - dropdownList = li.parent('.dropdown_list'); +app.tmp || (app.tmp = {}); - if(button.hasClass('disabled') || li.hasClass('newItem')){ return; } +// on the contacts page, viewing the list of people in a single aspect +app.tmp.ContactAspects = function() { + $('#people_stream').on('click', '.contact_remove-from-aspect', _.bind(this.removeFromAspect, this)); +}; +_.extend(app.tmp.ContactAspects.prototype, { + removeFromAspect: function(evt) { + evt.stopImmediatePropagation(); + evt.preventDefault(); + + var el = $(evt.currentTarget); + var id = el.data('membership_id'); + + var aspect_membership = new app.models.AspectMembership({'id':id}); + aspect_membership.on('sync', this._successDestroyCb, this); + aspect_membership.on('error', function(aspect_membership) { + this._displayError('aspect_dropdown.error_remove', aspect_membership.get('id')); + }, this); + + aspect_membership.destroy(); + + return false; + }, - var selected = li.hasClass("selected"), - routedId = selected ? "/42" : ""; + _successDestroyCb: function(aspect_membership) { + var membership_id = aspect_membership.get('id'); - $.post("/aspect_memberships" + routedId + ".json", { - "aspect_id": li.data("aspect_id"), - "person_id": li.parent().data("person_id"), - "_method": (selected) ? "DELETE" : "POST" - }, function(aspectMembership) { - ContactEdit.toggleCheckbox(li); - ContactEdit.updateNumber(li.closest(".dropdown_list"), li.parent().data("person_id"), aspectMembership.aspect_ids.length, 'in_aspects'); + $('.stream_element').has('[data-membership_id="'+membership_id+'"]') + .fadeOut(300, function() { $(this).remove() }); + }, - Diaspora.page.publish("aspectDropdown/updated", [li.parent().data("person_id"), li.parents(".dropdown").parent(".right").html()]); - }) - .error(function() { - var message = Diaspora.I18n.t("aspect_dropdown.error", {name: dropdownList.data('person-short-name')}); - Diaspora.page.flashMessages.render({success: false, notice: message}); - dropdown.removeClass('active'); - }) - .complete(function() { - li.removeClass("loading"); - }); + _displayError: function(msg_id, membership_id) { + var name = $('.stream_element') + .has('[data-membership_id="'+membership_id+'"]') + .find('div.bd > a') + .text(); + var msg = Diaspora.I18n.t(msg_id, { 'name': name }); + Diaspora.page.flashMessages.render({ 'success':false, 'notice':msg }); } -}; +}); + -$(document).ready(function(){ - ContactEdit.init(); +$(function() { + var contact_aspects = new app.tmp.ContactAspects(); }); diff --git a/app/assets/javascripts/diaspora.js b/app/assets/javascripts/diaspora.js index 749080d42..7d683fdcb 100644 --- a/app/assets/javascripts/diaspora.js +++ b/app/assets/javascripts/diaspora.js @@ -64,7 +64,6 @@ events: function() { return Diaspora.page.eventsContainer.data("events"); }, flashMessages: this.instantiate("FlashMessages"), header: this.instantiate("Header", body.find("header")), - hoverCard: this.instantiate("HoverCard", body.find("#hovercard")), timeAgo: this.instantiate("TimeAgo") }); }; diff --git a/app/assets/javascripts/inbox.js b/app/assets/javascripts/inbox.js index 2809bea60..899fb27d0 100644 --- a/app/assets/javascripts/inbox.js +++ b/app/assets/javascripts/inbox.js @@ -6,6 +6,10 @@ $(document).ready(function(){ + if ($('#first_unread').length > 0) { + $("html").scrollTop($('#first_unread').offset().top-45); + } + $('a.conversation').live('click', function(){ $.getScript(this.href, function() { Diaspora.page.directionDetector.updateBinds(); @@ -13,7 +17,7 @@ $(document).ready(function(){ history.pushState(null, "", this.href); var conv = $(this).children('.stream_element'), - cBadge = $("#message_inbox_badge").children(".badge_count"); + cBadge = $("#message_inbox_badge .badge_count"); if(conv.hasClass('unread') ){ conv.removeClass('unread'); } diff --git a/app/assets/javascripts/mobile.js b/app/assets/javascripts/mobile.js index 226da53e6..92ec62281 100644 --- a/app/assets/javascripts/mobile.js +++ b/app/assets/javascripts/mobile.js @@ -7,6 +7,7 @@ //= require mbp-respond.min //= require mbp-helper //= require jquery.autoSuggest.custom + $(document).ready(function(){ $('.shield a').click(function(){ diff --git a/app/assets/javascripts/pages/aspects-index.js b/app/assets/javascripts/pages/aspects-index.js deleted file mode 100644 index c25257759..000000000 --- a/app/assets/javascripts/pages/aspects-index.js +++ /dev/null @@ -1,7 +0,0 @@ -Diaspora.Pages.AspectsIndex = function() { - var self = this; - - this.subscribe("page/ready", function(evt, document) { - self.aspectNavigation = self.instantiate("AspectNavigation", document.find("ul#aspect_nav")); - }); -}; diff --git a/app/assets/javascripts/pages/users-getting-started.js b/app/assets/javascripts/pages/users-getting-started.js index ec59feb8f..c402ee35c 100644 --- a/app/assets/javascripts/pages/users-getting-started.js +++ b/app/assets/javascripts/pages/users-getting-started.js @@ -36,12 +36,10 @@ Diaspora.Pages.UsersGettingStarted = function() { }); $("#awesome_button").bind("click", function(evt){ - evt.preventDefault(); var confirmMessage = Diaspora.I18n.t("getting_started.no_tags"); if(($("#as-selections-tags").find(".as-selection-item").length > 0) || confirm(confirmMessage)) { - $('.tag_input').submit(); /* flash message prompt */ var message = Diaspora.I18n.t("getting_started.preparing_your_stream"); @@ -55,18 +53,25 @@ Diaspora.Pages.UsersGettingStarted = function() { /* ------ */ var autocompleteInput = $("#follow_tags"); + var tagFollowings = new app.collections.TagFollowings(); autocompleteInput.autoSuggest("/tags", { selectedItemProp: "name", + selectedValuesProp: "name", searchObjProps: "name", asHtmlID: "tags", neverSubmit: true, - retriveLimit: 10, + retrieveLimit: 10, selectionLimit: false, minChars: 2, keyDelay: 200, startText: "", - emptyText: "no_results" + emptyText: "no_results", + selectionAdded: function(elem){tagFollowings.create({"name":$(elem[0]).text().substring(2)})}, + selectionRemoved: function(elem){ + tagFollowings.where({"name":$(elem[0]).text().substring(2)})[0].destroy(); + elem.remove(); + } }); autocompleteInput.bind('keydown', function(evt){ diff --git a/app/assets/javascripts/people.js b/app/assets/javascripts/people.js index 68a947224..4f0d7958a 100644 --- a/app/assets/javascripts/people.js +++ b/app/assets/javascripts/people.js @@ -4,4 +4,5 @@ */ //= require aspect-edit-pane //= require fileuploader-custom -//= require jquery.autoSuggest.custom
\ No newline at end of file +//= require jquery.autoSuggest.custom +//= require jquery.textchange
\ No newline at end of file diff --git a/app/assets/javascripts/widgets/aspect-navigation.js b/app/assets/javascripts/widgets/aspect-navigation.js deleted file mode 100644 index e04170c5d..000000000 --- a/app/assets/javascripts/widgets/aspect-navigation.js +++ /dev/null @@ -1,92 +0,0 @@ -/* Copyright (c) 2010, Diaspora Inc. This file is - * licensed under the Affero General Public License version 3 or later. See - * the COPYRIGHT file. - */ - -(function() { - Diaspora.Widgets.AspectNavigation = function() { - var self = this; - - this.subscribe("widget/ready", function(evt, aspectNavigation) { - $.extend(self, { - aspectNavigation: aspectNavigation, - aspectSelectors: aspectNavigation.find("a.aspect_selector[data-guid]"), - aspectLis: aspectNavigation.find("li[data-aspect_id]"), - toggleSelector: aspectNavigation.find("a.toggle_selector") - }); - - self.aspectSelectors.click(self.toggleAspect); - self.toggleSelector.click(self.toggleAll); - }); - - this.selectedAspects = function() { - return self.aspectNavigation.find("li.active[data-aspect_id]").map(function() { return $(this).data('aspect_id') }); - }; - - this.toggleAspect = function(evt) { - evt.preventDefault(); - - $(this).parent().toggleClass("active"); - self.perform(); - }; - - this.toggleAll = function(evt) { - evt.preventDefault(); - - if (self.allSelected()) { - self.aspectLis.removeClass("active"); - } else { - self.aspectLis.addClass("active"); - } - self.perform(); - }; - - this.perform = function() { - if (self.noneSelected()) { - return; - } else { - window.location = self.generateURL(); // hella hax - } - }; - - this.calculateToggleText = function() { - if (self.allSelected()) { - self.toggleSelector.text(Diaspora.I18n.t('aspect_navigation.deselect_all')); - } else { - self.toggleSelector.text(Diaspora.I18n.t('aspect_navigation.select_all')); - } - }; - - this.generateURL = function() { - var baseURL = 'aspects'; - - // generate new url - baseURL = baseURL.replace('#',''); - baseURL += '?'; - - self.aspectLis.each(function() { - var aspectLi = $(this); - if (aspectLi.hasClass("active")) { - baseURL += "a_ids[]=" + aspectLi.data("aspect_id") + "&"; - } - }); - - if(!$("#publisher").hasClass("closed")) { - // open publisher - baseURL += "op=true"; - } else { - // slice last '&' - baseURL = baseURL.slice(0,baseURL.length-1); - } - return baseURL; - }; - - this.noneSelected = function() { - return self.aspectLis.filter(".active").length === 0; - } - - this.allSelected = function() { - return self.aspectLis.not(".active").length === 0; - } - }; -})(); diff --git a/app/assets/javascripts/widgets/hovercard.js b/app/assets/javascripts/widgets/hovercard.js deleted file mode 100644 index 080b46656..000000000 --- a/app/assets/javascripts/widgets/hovercard.js +++ /dev/null @@ -1,138 +0,0 @@ -(function() { - var HoverCard = function() { - var self = this; - - self.jXHRs = []; - - self.subscribe("widget/ready", function(evt, hoverCard) { - self.personCache = new self.Cache(); - self.dropdownCache = new self.Cache(); - - self.hoverCard = { - tip: $("#hovercard_container"), - dropdownContainer: $("#hovercard_dropdown_container"), - offset: { - left: -10, - top: 13 - }, - personLink: hoverCard.find("a.person"), - personHandle: hoverCard.find("p.handle"), - avatar: hoverCard.find(".avatar"), - dropdown: hoverCard.find(".dropdown_list"), - hashtags: hoverCard.find(".hashtags") - }; - - $(document.body).delegate("a.hovercardable:not(.self)", "hover", self.handleHoverEvent); - self.hoverCard.tip.hover(self.hoverCardHover, self.clearTimeout); - - self.subscribe("aspectDropdown/updated aspectDropdown/blurred", function(evt, personId, dropdownHtml) { - self.dropdownCache.cache["/people/" + personId + "/aspect_membership_button"] = $(dropdownHtml).removeClass("active").get(0).outerHTML; - }); - }); - - this.handleHoverEvent = function(evt) { - self.target = $(evt.target); - - if(evt.type === "mouseenter") { - self.startHover(); - } - else { - self.clearTimeout(evt); - } - }; - - this.startHover = function(evt) { - if(!self.hoverCardTimeout) { - self.clearTimeout(false); - } - self.timeout = setTimeout(self.showHoverCard, 600); - }; - - this.showHoverCard = function() { - self.hoverCard.tip.hide(); - self.hoverCard.tip.prependTo(self.target.parent()); - - self.personCache.get(self.target.attr("data-hovercard") + ".json?includes=tags", function(person) { - self.populateHovercard(person); - }); - }; - - this.populateHovercard = function(person) { - var position = self.target.position(); - self.hoverCard.tip.css({ - left: position.left + self.hoverCard.offset.left, - top: position.top + self.hoverCard.offset.top - }); - - self.hoverCard.avatar.attr("src", person.avatar); - self.hoverCard.personLink.attr("href", person.url); - self.hoverCard.personLink.text(person.name); - self.hoverCard.personHandle.text(person.handle); - self.hoverCard.dropdown.attr("data-person-id", person.id); - - self.hoverCard.hashtags.html(""); - $.each(person.tags, function(index, hashtag) { - self.hoverCard.hashtags.append( - $("<a/>", { - href: "/tags/" + hashtag.substring(1) - }).text(hashtag) - ); - }); - - self.dropdownCache.get(self.target.attr("data-hovercard") + "/aspect_membership_button", function(dropdown) { - self.hoverCard.dropdownContainer.html(dropdown); - self.hoverCard.tip.fadeIn(140); - }); - }; - - this.clearTimeout = function(delayed) { - self.personCache.clearjXHRs(); - self.dropdownCache.clearjXHRs(); - - function callback() { - self.timeout = clearTimeout(self.timeout); - self.hoverCard.tip.hide(); - self.hoverCard.dropdownContainer.html(""); - } - - if((typeof delayed === "boolean" && delayed) || (typeof delayed === "object" && delayed.type === "mouseleave")) { - self.hoverCardTimeout = setTimeout(callback, 20); - } - else { - callback(); - } - }; - - this.hoverCardHover = function() { - self.hoverCardTimeout = clearTimeout(self.hoverCardTimeout); - }; - - this.Cache = function() { - var self = this; - this.cache = {}; - this.jXHRs = []; - - this.get = function(key, callback) { - if(typeof self.cache[key] === "undefined") { - self.jXHRs.push($.get(key, function(response) { - self.cache[key] = response; - callback(response); - self.jXHRs.shift(); - })); - } - else { - callback(self.cache[key]); - } - }; - - this.clearjXHRs = function() { - $.each(self.jXHRs, function(index, jXHR) { - jXHR.abort(); - }); - self.jXHRs = []; - }; - }; - }; - - Diaspora.Widgets.HoverCard = HoverCard; -})(); diff --git a/app/assets/stylesheets/_mixins.css.scss b/app/assets/stylesheets/_mixins.css.scss index bc5d6ed2b..1423a84b6 100644 --- a/app/assets/stylesheets/_mixins.css.scss +++ b/app/assets/stylesheets/_mixins.css.scss @@ -87,12 +87,14 @@ $default-border-radius: 3px; -webkit-animation : $name $speed $occurances; -moz-animation : $name $speed $occurances; -ms-animation : $name $speed $occurances; + -o-animation : $name $speed $occurances; } @mixin animation($name, $speed:0.2s, $easing:ease-in-out) { -webkit-animation: $name $speed $easing; -moz-animation: $name $speed $easing; -ms-animation: $name $speed $easing; + -o-animation: $name $speed $easing; } @mixin video-overlay(){ diff --git a/app/assets/stylesheets/application.css.sass b/app/assets/stylesheets/application.css.sass index 50343261e..d69500018 100644 --- a/app/assets/stylesheets/application.css.sass +++ b/app/assets/stylesheets/application.css.sass @@ -367,6 +367,7 @@ ul.as-selections .stream_element a.author :font-weight bold + :unicode-bidi bidi-override .photo_attachments :margin @@ -375,6 +376,14 @@ ul.as-selections img :max-width 100% + .bd + > img + :height 30px + :width 30px + :float left + :margin + :right 10px + .stream_photo :float left :margin @@ -403,6 +412,10 @@ ul.as-selections &:hover @include opacity(1) +.controls + a:hover + :text-decoration none + .status_message_show .comment_box :width 653px @@ -515,6 +528,13 @@ ul.as-selections .right :right 4px +.stream_element + .new_comment_form_wrapper + :width 415px + +.stream_element .bd + & > .likes, & > .comments + :margin-right 15px .stream_element .post-content .reshare :border-left 2px solid #ddd @@ -526,7 +546,7 @@ form.new_comment textarea :height 21px :font-size 12px - :width 355px + :width 364px &.open input @@ -659,7 +679,6 @@ form p.checkbox_select form textarea :resize none - :width 455px :height 50px :margin 0 @@ -797,8 +816,7 @@ form p.checkbox_select :z-index 3 :position absolute :bottom 0 - :width 435px - :left 5px + :right 35px :padding 0 li @@ -845,7 +863,7 @@ form p.checkbox_select .counter :position absolute :font-size 13px - :padding-top 2px + :padding 12px 0 0 5px .warning :color orange .exceeded @@ -1881,6 +1899,11 @@ ul#press_logos :margin :top 9px +.conversation_participants + a:hover + :text-decoration none + + .stream_element.conversation :padding 8px @@ -1929,6 +1952,7 @@ ul#press_logos :height 35px :margin :right 10px + :bottom 10px &:hover:not(.selected) :background @@ -2145,6 +2169,10 @@ h1.tag :padding 8px :color #999 :font-size 11px + li + :list-style none + :float left + :padding-right 10px :margin :bottom 25px @@ -2410,6 +2438,10 @@ a.toggle_selector :margin :bottom -2px +.stream-faces + a:hover + :text-decoration none + #view_all_contacts_link @include border-radius(2px) :display block @@ -2778,6 +2810,7 @@ a.toggle_selector :left 24px input[type='text'] + :width 100% :font :size 13px @@ -2801,6 +2834,9 @@ a.toggle_selector &:hover @include opacity(1) +body + .popover + :z-index 1000 .nsfw-shield @include border-radius(3px) @@ -2838,3 +2874,7 @@ a.toggle_selector :color #666 :color #666 +#fileInfo + :font-size small + :text-align right + :margin 5px 2px diff --git a/app/assets/stylesheets/hovercard.css.scss b/app/assets/stylesheets/hovercard.css.scss index 0a03c82b3..d126ccfff 100644 --- a/app/assets/stylesheets/hovercard.css.scss +++ b/app/assets/stylesheets/hovercard.css.scss @@ -8,7 +8,7 @@ display: inline-block; min-width: 250px; max-width: 400px; - + background-color: $background; height: 70px; border: 1px solid #999999; @@ -32,13 +32,17 @@ & > h4, & > div, & > p { margin-left: $image_width; } - + & > h4, & > div, & > p, .hashtags { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } + #hovercard_dropdown_container { + overflow: visible !important; /* otherwise the aspect dropdown is cropped */ + } + padding: 5px { bottom: 25px; }; @@ -91,7 +95,8 @@ display: none; z-index: 10; - width: 400px; + min-width: 250px; + max-width: 400px; padding: 10px { top: 5px; diff --git a/app/assets/stylesheets/lightbox.css.scss b/app/assets/stylesheets/lightbox.css.scss index d84680a93..fe629af9c 100644 --- a/app/assets/stylesheets/lightbox.css.scss +++ b/app/assets/stylesheets/lightbox.css.scss @@ -28,8 +28,6 @@ @include box-shadow(0, 10px, 20px, black); top: 0; display: block; - max-width: 800px; - max-height: 800px; margin-bottom: 120px; } diff --git a/app/assets/stylesheets/mobile.css.scss b/app/assets/stylesheets/mobile.css.scss index 3fd01f9a7..70028a691 100644 --- a/app/assets/stylesheets/mobile.css.scss +++ b/app/assets/stylesheets/mobile.css.scss @@ -2,6 +2,7 @@ @import 'bootstrap-responsive'; @import "_mixins.css.scss"; @import 'vendor/autoSuggest'; +@import '_flash_messages.scss'; $blue: #3f8fba; @@ -45,11 +46,13 @@ body { .from { a { - color: #444 !important; + color: #444; font-weight: bold; } margin-bottom: 2px; height: 45px; + white-space: nowrap; + overflow: hidden; } > .content, @@ -141,6 +144,12 @@ body { border-bottom: 1px solid #aaa; } +.stream_element div.img img.avatar { + margin: 10px; +} +.stream_element .bd { + padding-top: 10px; +} .photo_attachments { position: relative; left: 0; @@ -244,8 +253,9 @@ body { } #author_info { - height: 100px; + height: 100%; position: relative; + word-wrap: break-word; img { height: 90px; @@ -300,7 +310,7 @@ body { #nav_badges .badge { position: relative; display: inline; - margin: 0 2px; + margin-left: 3px; padding: 8px 3px; padding-bottom: 9px; font-weight: bold; @@ -315,13 +325,26 @@ body { border-radius: 2px 2px 2px 2px; z-index: 3; position: absolute; - top: -2px; - left: 13px; + top: 1px; padding: 0 2px; padding-bottom: 1px; background-color: #a40802; line-height: 12px; - color: white; } + color: white; + font-size: smaller; +} + +#notification { + right: 140px; +} + +#conversation { + right: 110px; +} + +.badge-inverse { + background-color: #333333 !important; +} #header_title { position: relative; @@ -659,13 +682,14 @@ display: inline-block; .message_count { border-radius: 2px 2px 2px 2px; float: right; - margin: 2px 2px 1px 5px; + margin: 10px 10px 1px 5px; padding: 0 2px 1px; position: relative; background-color: #999; color: #eee; font-size: 10px; line-height: 12px; + } .conversation_participants img.avatar{ @@ -674,10 +698,15 @@ display: inline-block; margin: 5px 0 5px 2px; } +.conversations img.avatar{ + margin: 10px; + float: left; +} + .unread_message_count { border-radius: 2px 2px 2px 2px; float: right; - margin: 2px 2px 1px 5px; + margin: 10px 2px 1px 5px; padding: 0 2px 1px; position: relative; background-color: #B11; @@ -688,7 +717,7 @@ display: inline-block; .last_author { position: relative; - margin: 10px 5px 2px; + margin: 10px 10px 2px; float: right; font-size: 12px; color: #444; @@ -730,11 +759,20 @@ textarea#message_text { } form#new_conversation.new_conversation { - background-color: #FFFFFF; - border-bottom: 1px solid #999999; - box-shadow: 0 2px 3px #999999; - margin: 5px 20px; - padding: 5px; + background-color: #FFFFFF; + border-bottom: 1px solid #999999; + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2); + border-radius: 5px; + margin: 5px 0 5px 15px; + padding: 5px 10px; + h4 { + font-size: 14px; + font-weight: normal; + line-height: 20px; + } + .span-10 { + margin: 5px; + } } .span-2 { @@ -757,25 +795,74 @@ textarea#conversation_text { } .bottom_submit_section { - display: block; - position: relative; - text-align: right; + display: block; + position: relative; + text-align: right; + padding-bottom: 5px; } .button.creation { - color: #333; + display: inline-block; + padding: 4px 12px; + margin-bottom: 0; + font-size: 14px; + line-height: 20px; + color: #333333; + text-align: center; + text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); + vertical-align: middle; + cursor: pointer; + background-color: #f5f5f5; + background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6)); + background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6); + background-image: -o-linear-gradient(top, #ffffff, #e6e6e6); + background-image: linear-gradient(to bottom, #ffffff, #e6e6e6); + background-repeat: repeat-x; + border: 1px solid #cccccc; + border-color: #e6e6e6 #e6e6e6 #bfbfbf; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + border-bottom-color: #b3b3b3; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); +} + +.button.creation:hover, +.button.creation:focus, +.button.creation:active { + color: #333333; + background-color: #e6e6e6; +} + +.button.creation:active { + background-color: #cccccc \9; +} + +.button.creation:first-child { + margin-left: 0; +} + +.button.creation:hover, +.button.creation:focus { + color: #333333; text-decoration: none; - background-color: #E6E6E6; background-position: 0 -15px; -webkit-transition: background-position 0.1s linear; - -webkit-transition-property: background-position; - -webkit-transition-duration: 0.1s; - -webkit-transition-timing-function: linear; - -webkit-transition-delay: initial; - -moz-transition: background-position 0.1s linear; - -ms-transition: background-position 0.1s linear; - -o-transition: background-position 0.1s linear; - transition: background-position 0.1s linear; + -moz-transition: background-position 0.1s linear; + -o-transition: background-position 0.1s linear; + transition: background-position 0.1s linear; +} + +.button.creation:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; } .registrations_error, @@ -787,4 +874,155 @@ textarea#conversation_text { form#new_user.new_user input.btn { white-space: normal; } - + +.unread { + background-color: LightGrey; + .ltr { + font-weight: bold; + } +} + +.read.stream_element { + color: dimGray; + .from { + a { + color: dimGray; + font-weight: bold; + } + } +} + +.conversation_error { + color: #DF0101; + text-shadow: 1px 1px 5px #666; +} + +.conversation_notice { + color: rgb(10, 150, 10); + text-shadow: 1px 1px 20px rgb(126, 240, 77); +} + +#flash_notice, +#flash_alert, +#flash_error { + .message { + min-width: 200px; + max-width: 400px; + } +} + + +form p.checkbox_select { + position: relative; + label { + left: 25px; + top: 4px; + position: absolute; + font-size: 1em; + } + img { + position: relative; + top: 6px; + } +} + +#profile_photo_upload { + margin-top: 5px; + min-height: 100px; + position: relative; + + img { + @include border-radius(5px); + @include box-shadow(0,1px,2px,#666); + + position: absolute; + left: 0; + height: 100px; + width: 100px; + + &.avatar { + @include transition(opacity, 0.5s); + &.loading { + @include opacity(0.3); + } + } + } + padding-left: 120px; +} + +#file-upload.button { + @include border-radius(3px); + @include button-gradient($light-grey); + @include box-shadow(0,1px,1px,#cfcfcf); + @include transition(border); + + display: inline-block; + + font { + style: normal; + size: 12px; + } + color: #505050; + + padding: 4px 9px; + + min-height: 10px; + + border: 1px solid; + + cursor: pointer; + white-space: normal; + + &:hover { + @include button-gradient-hover-no-saturation($light-grey); + color: #505050; + text-decoration: none; + border: 1px solid; + } +} + +#settings_nav { + font-size: 1em; + + ul { + margin: 0 0 0 15px; + } + + li { + display: inline; + } +} + +form#update_profile_form { + select { + padding: 3px; + } +} + +select#user_language, #user_auto_follow_back_aspect_id, #aspect_ids_ { + padding: 3px; +} + +#file-upload-spinner { + top: 0px; +} + +.hero-unit-mobile { + padding: 10px; + font-size: 14px; + line-height: 18px; + color: inherit; + background-color: #EEE; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 10px; +} + +.search-mobile { + text-align: center; + padding-top: 30px; +} + +input#q.search { + margin-bottom: 20px; +} diff --git a/app/assets/stylesheets/new_styles/_animations.scss b/app/assets/stylesheets/new_styles/_animations.scss index 761ec331e..3ccb0219b 100644 --- a/app/assets/stylesheets/new_styles/_animations.scss +++ b/app/assets/stylesheets/new_styles/_animations.scss @@ -13,7 +13,11 @@ 65% { @include opacity(0.9); } 100% { @include opacity(0.3); } } - +@-o-keyframes opacity-pulse { + 0% { @include opacity(0.3); } + 65% { @include opacity(0.9); } + 100% { @include opacity(0.3); } +} @-webkit-keyframes ease-over { 0% { @include opacity(0); -webkit-transform : scale(1.3); } @@ -27,6 +31,10 @@ 0% { @include opacity(0); -ms-transform : scale(1.3); } 100% { @include opacity(1); -ms-transform : scale(1); } } +@-o-keyframes ease-over { + 0% { @include opacity(0); -o-transform : scale(1.3); } + 100% { @include opacity(1); -o-transform : scale(1); } +} @-webkit-keyframes ease-out { 0% { @include opacity(1); -webkit-transform : scale(1); } @@ -40,6 +48,10 @@ 0% { @include opacity(1); -ms-transform : scale(1); } 100% { @include opacity(0); -ms-transform : scale(1.3); } } +@-o-keyframes ease-out { + 0% { @include opacity(1); -o-transform : scale(1); } + 100% { @include opacity(0); -o-transform : scale(1.3); } +} /* flash message animations */ @-webkit-keyframes expose { @@ -59,4 +71,10 @@ 15% { top : 0; } 85% { top : 0; } 100% { top : -100px; } -}
\ No newline at end of file +} +@-o-keyframes expose { + 0% { top : -100px; } + 15% { top : 0; } + 85% { top : 0; } + 100% { top : -100px; } +} diff --git a/app/assets/stylesheets/new_styles/_interactions.scss b/app/assets/stylesheets/new_styles/_interactions.scss index c4d87c1a6..69aaba9ae 100644 --- a/app/assets/stylesheets/new_styles/_interactions.scss +++ b/app/assets/stylesheets/new_styles/_interactions.scss @@ -249,13 +249,10 @@ z-index: 20; - padding: 5px; + padding: 1px 4px 0; margin-right: 5px; line-height: 24px; - padding-top: 3px; - padding-right: 2px; - i { padding: 0; margin: 0; diff --git a/app/assets/templates/aspect_tpl.jst.hbs b/app/assets/templates/aspect_tpl.jst.hbs new file mode 100644 index 000000000..5e51e1bed --- /dev/null +++ b/app/assets/templates/aspect_tpl.jst.hbs @@ -0,0 +1,6 @@ +<div class="edit"> + <a href="/aspects/{{id}}/edit" rel="facebox"> + <img alt="Pencil" src="{{imageUrl "icons/pencil.png"}}" title="{{t 'edit'}} {{name}}"> + </a> +</div> +<a class="aspect_selector name" data-guid="{{id}}" href="/aspects/query"> {{name}} </a> diff --git a/app/assets/templates/aspects-list_tpl.jst.hbs b/app/assets/templates/aspects-list_tpl.jst.hbs new file mode 100644 index 000000000..493f259a4 --- /dev/null +++ b/app/assets/templates/aspects-list_tpl.jst.hbs @@ -0,0 +1,6 @@ +<a class="toggle_selector" href="#"> + {{ t "aspect_navigation.select_all" }} +</a> +<li> + <a class="new_aspect" href="/aspects/new" rel="facebox">{{ t "aspect_navigation.add_an_aspect" }}</a> +</li> diff --git a/app/assets/templates/comment_tpl.jst.hbs b/app/assets/templates/comment_tpl.jst.hbs index 376f2047f..6d4b3cca3 100644 --- a/app/assets/templates/comment_tpl.jst.hbs +++ b/app/assets/templates/comment_tpl.jst.hbs @@ -1,11 +1,3 @@ -{{#if canRemove}} - <div class="controls"> - <a href="#" class="delete comment_delete" title="{{t "delete"}}"> - <img alt="Deletelabel" src="{{imageUrl "deletelabel.png"}}" /> - <a/> - </div> -{{/if}} - <div class="img"> {{#linkToPerson author}} {{{personImage this "small" "small"}}} @@ -13,7 +5,15 @@ </div> <div class="bd"> - <a href="/people/{{author.guid}}" class="author author-name"> + {{#if canRemove}} + <div class="controls"> + <a href="#" class="delete comment_delete" title="{{t "delete"}}"> + <img alt="Deletelabel" src="{{imageUrl "deletelabel.png"}}" /> + <a/> + </div> + {{/if}} + + <a href="/people/{{author.guid}}" class="author author-name {{hovercardable this}}"> {{author.name}} </a> diff --git a/app/assets/templates/composer-controls_tpl.jst.hbs b/app/assets/templates/composer-controls_tpl.jst.hbs deleted file mode 100644 index 0abe0249b..000000000 --- a/app/assets/templates/composer-controls_tpl.jst.hbs +++ /dev/null @@ -1,2 +0,0 @@ -<input type="image" src="{{imageUrl "buttons/close@2x.png"}}" class="cancel" /> -<input type="image" src="{{imageUrl "buttons/next_hov@2x.png"}}" class="next" /> diff --git a/app/assets/templates/flow_tpl.jst.hbs b/app/assets/templates/flow_tpl.jst.hbs deleted file mode 100644 index d6426a5d1..000000000 --- a/app/assets/templates/flow_tpl.jst.hbs +++ /dev/null @@ -1,24 +0,0 @@ -<div id="framer"> - <div class="container"> - <div class="row"> - <div class="span6 offset3"> - <div class="row"> - <div class="span4 offset1"> - <h3> - Make something! - </h3> - </div> - </div> - <div class="row"> - <div class="flow-content"/> - </div> - <div class="row"> - <div class="flow-controls"> - <div class="controls"/> - </div> - </div> - </div> - </div> - </div> -</div> - diff --git a/app/assets/templates/framer-content_tpl.jst.hbs b/app/assets/templates/framer-content_tpl.jst.hbs deleted file mode 100644 index 313289853..000000000 --- a/app/assets/templates/framer-content_tpl.jst.hbs +++ /dev/null @@ -1,14 +0,0 @@ -<div class="preview offset1"> </div> - -<div class='template-picker'> - {{#each templates}} - <input id='frame_name_{{name}}' name="frame_name" type="radio" class="mood" value={{name}} {{#if checked}}checked=checked{{/if}} /> - <label for='frame_name_{{name}}'> - <img src="/assets/buttons/templates/{{name}}@2x.png" /> - <div class="template-name"> - {{name}} - </div> - </label> - <br /> - {{/each}} -</div> diff --git a/app/assets/templates/framer-controls_tpl.jst.hbs b/app/assets/templates/framer-controls_tpl.jst.hbs deleted file mode 100644 index f6981b496..000000000 --- a/app/assets/templates/framer-controls_tpl.jst.hbs +++ /dev/null @@ -1,4 +0,0 @@ -<input type="image" src="{{imageUrl "buttons/back_hov@2x.png"}}" class="back" /> -<div class="aspect-selector"/> -<div class="service-selector"/> -<input type="image" src="{{imageUrl "buttons/done_hov@2x.png"}}" class="done" /> diff --git a/app/assets/templates/likes-info_tpl.jst.hbs b/app/assets/templates/likes-info_tpl.jst.hbs index 6820ffb05..a02fc0065 100644 --- a/app/assets/templates/likes-info_tpl.jst.hbs +++ b/app/assets/templates/likes-info_tpl.jst.hbs @@ -15,7 +15,7 @@ {{#each likes}} {{#with author}} - <a href="/people/{{guid}}"> + <a href="/people/{{guid}}" class="{{hovercardable this}}"> <img src="{{avatar.small}}" class="avatar micro" title="{{name}}"/> </a> {{/with}} diff --git a/app/assets/templates/oembed_tpl.jst.hbs b/app/assets/templates/oembed_tpl.jst.hbs index fba433935..57eafd54d 100644 --- a/app/assets/templates/oembed_tpl.jst.hbs +++ b/app/assets/templates/oembed_tpl.jst.hbs @@ -1,5 +1,5 @@ {{#if o_embed_cache}} - {{#if o_embed_cache.data.thumbnail_url}} + {{#if o_embed_cache.data.types.video }} <div class="thumb"> <img src="{{o_embed_cache.data.thumbnail_url}}" /> <div class="video-overlay"> @@ -17,6 +17,6 @@ </div> </div> {{else}} - {{{o_embed_html}}} + {{{o_embed_html}}} {{/if}} {{/if}}
\ No newline at end of file diff --git a/app/assets/templates/post-new_tpl.jst.hbs b/app/assets/templates/post-new_tpl.jst.hbs deleted file mode 100644 index ec69969dd..000000000 --- a/app/assets/templates/post-new_tpl.jst.hbs +++ /dev/null @@ -1,5 +0,0 @@ -<div class="framer-controls"> - <div class="controls"> - <button class="btn-primary next">Next</button> - </div> -</div> diff --git a/app/assets/templates/profile_tpl.jst.hbs b/app/assets/templates/profile_tpl.jst.hbs deleted file mode 100644 index 500ef2275..000000000 --- a/app/assets/templates/profile_tpl.jst.hbs +++ /dev/null @@ -1,51 +0,0 @@ -{{#if is_own_profile}} - <div id="wallpaper-upload"></div> -{{/if}} - -<div class="container"> - <div id="top-right-nav"> - {{#if current_user.guid}} - <a href="/" id="home-button"> - <span class="label label-inverse"> - <i class="icon-home icon-white"></i> - <span> - HOME - </span> - </span> - </a> - - <a href="/users/sign_out" title="Log out" id="logout-button"> - <span class="label label-inverse"> - <i class="icon-off icon-white"></i> - </span> - </a> - {{else}} - <a href="/" id="home-button"> - <span class="label label-inverse"> - <span> - DIASPORA - </span> - </span> - </a> - {{/if}} - </div> - - <section id="profile-info"/> - - <section id="profile-controls"> - {{#if is_own_profile}} - <div id="composer" class="hidden"></div> - - <a href="#" id="composer-button" class="control small label label-inverse"> - MAKE - </a> - <a href="#" id="edit-mode-toggle" class="control small label label-inverse" title="Edit Posts" rel="tooltip"> - <img src='{{imageUrl "buttons/edit2@2x.png"}}'/> - </a> - {{/if}} - </section> - - <section id="canvas"></section> - - <div id="paginate"><span class="loader hidden"/></div> -</div> diff --git a/app/assets/templates/reshare_tpl.jst.hbs b/app/assets/templates/reshare_tpl.jst.hbs index c75f8f446..b528bfc55 100644 --- a/app/assets/templates/reshare_tpl.jst.hbs +++ b/app/assets/templates/reshare_tpl.jst.hbs @@ -5,7 +5,7 @@ <div class="media"> {{#with root}} - <a href="/people/{{author.guid}}" class="img"> + <a href="/people/{{author.guid}}" class="img {{{hovercardable this}}}"> <img src="{{author.avatar.small}}" class="avatar" /> </a> {{/with}} @@ -13,9 +13,7 @@ {{#with root}} <div class="bd"> <div> - <a href="/people/{{author.guid}}" class="author"> - {{author.name}} - </a> + <a href="/people/{{author.guid}}" class="author {{{hovercardable this}}}">{{author.name}}</a> <span class="details grey"> - diff --git a/app/assets/templates/stream-element_tpl.jst.hbs b/app/assets/templates/stream-element_tpl.jst.hbs index c57305996..4826ce5c1 100644 --- a/app/assets/templates/stream-element_tpl.jst.hbs +++ b/app/assets/templates/stream-element_tpl.jst.hbs @@ -1,40 +1,38 @@ <div class="media"> - {{#if current_user}} - <div class="controls"> - {{#unless authorIsCurrentUser}} - <a href="#" rel="nofollow" class="block_user"> - <img src="{{imageUrl "icons/ignoreuser.png"}}"" alt="Ignoreuser" class="control_icon" title="{{t "ignore"}}" /> - </a> - <a href="#" rel="nofollow" class="hide_post"> - <img src="{{imageUrl "deletelabel.png"}}" class="delete control_icon" title="{{t "stream.hide"}}" /> - </a> - {{else}} - <a href="#" rel="nofollow" class="remove_post"> - <img src="{{imageUrl "deletelabel.png"}}" class="delete control_icon" title="{{t "delete"}}" /> - </a> - {{/unless}} - </div> - {{/if}} - {{#with author}} - <a href="/people/{{guid}}" class="img"> + <a href="/people/{{guid}}" class="img {{{hovercardable this}}}"> {{{personImage this}}} </a> {{/with}} <div class="bd"> + {{#if loggedIn}} + <div class="controls"> + {{#unless authorIsCurrentUser}} + <a href="#" rel="nofollow" class="block_user"> + <img src="{{imageUrl "icons/ignoreuser.png"}}" alt="Ignoreuser" class="ignore control_icon" title="{{t "ignore"}}" /> + </a> + <a href="#" rel="nofollow" class="hide_post"> + <img src="{{imageUrl "deletelabel.png"}}" class="delete control_icon" title="{{t "stream.hide"}}" /> + </a> + {{else}} + <a href="#" rel="nofollow" class="remove_post"> + <img src="{{imageUrl "deletelabel.png"}}" class="delete control_icon" title="{{t "delete"}}" /> + </a> + {{/unless}} + </div> + {{/if}} + <div> {{#with author}} - <a href="/people/{{guid}}" class="author"> - {{name}} - </a> + <a href="/people/{{guid}}" class="author {{{hovercardable this}}}">{{name}}</a> {{/with}} <span class="details grey"> - <a href="/posts/{{id}}"> - <time class="timeago" datetime="{{created_at}}" /> + <time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}" /> </a> {{#if interactions.reshares_count}} diff --git a/app/assets/templates/tag_following_action_tpl.jst.hbs b/app/assets/templates/tag_following_action_tpl.jst.hbs new file mode 100644 index 000000000..606f6778f --- /dev/null +++ b/app/assets/templates/tag_following_action_tpl.jst.hbs @@ -0,0 +1,10 @@ +<div class="right"> + <form accept-charset="UTF-8" action="/tag_followings" method="post"> + <input type="submit" class="button take_action + {{#if tag_is_followed }} + red_on_hover in_aspects + {{/if}} + " type="submit" value="{{followString}}" + /> + </form> +</div>
\ No newline at end of file diff --git a/app/assets/templates/tag_following_list_tpl.jst.hbs b/app/assets/templates/tag_following_list_tpl.jst.hbs new file mode 100644 index 000000000..279fbefa7 --- /dev/null +++ b/app/assets/templates/tag_following_list_tpl.jst.hbs @@ -0,0 +1,5 @@ +<li> + <form accept-charset="UTF-8" action="/tag_followings" id="new_tag_following" method="post"> + <input class="tag_input" type="text" name="name" placeholder="{{t "stream.followed_tag.add_a_tag"}}" /> + </form> +</li>
\ No newline at end of file diff --git a/app/assets/templates/tag_following_tpl.jst.hbs b/app/assets/templates/tag_following_tpl.jst.hbs new file mode 100644 index 000000000..d19868afb --- /dev/null +++ b/app/assets/templates/tag_following_tpl.jst.hbs @@ -0,0 +1,9 @@ +<div class="unfollow_icon hidden"> + <a href="#" id="unfollow_{{name}}" rel="nofollow" class="delete tag_following_delete" title="{{t "delete"}}"> + <img alt="Deletelabel" src="{{imageUrl "deletelabel.png"}}" /> + <a/> +</div> + +<a class="tag_selector" href="/tags/{{name}}"> + #{{ name }} +</a> diff --git a/app/assets/templates/wallpaper-form_tpl.jst.hbs b/app/assets/templates/wallpaper-form_tpl.jst.hbs deleted file mode 100644 index 8af11ab1e..000000000 --- a/app/assets/templates/wallpaper-form_tpl.jst.hbs +++ /dev/null @@ -1,13 +0,0 @@ -<form accept-charset="UTF-8" action="/upload_wallpaper" class="new_photo" data-remote="true" enctype="multipart/form-data" method="post" style="position:absolute; left:10px; top: 10px; opacity:0.4;"> - <input name="authenticity_token" type="hidden"/> - <div style="margin:0;padding:0;display:inline"> - <input name="utf8" type="hidden" value="✓"/> - </div> - - <div id='photo_upload_button'> - <a href="#" class='label label-inverse'> - <i class="icon-picture icon-white" style="margin-right:4px;"></i>CHANGE WALLPAPER - </a> - <input name="photo[user_file]" type="file"/> - </div> -</form> diff --git a/app/controllers/aspect_memberships_controller.rb b/app/controllers/aspect_memberships_controller.rb index 118ec33af..2fd459828 100644 --- a/app/controllers/aspect_memberships_controller.rb +++ b/app/controllers/aspect_memberships_controller.rb @@ -6,49 +6,62 @@ class AspectMembershipsController < ApplicationController before_filter :authenticate_user! - respond_to :html, :json, :js + respond_to :html, :json def destroy - #note :id is garbage + aspect = current_user.aspects.joins(:aspect_memberships).where(:aspect_memberships=>{:id=>params[:id]}).first + contact = current_user.contacts.joins(:aspect_memberships).where(:aspect_memberships=>{:id=>params[:id]}).first - @person_id = params[:person_id] - @aspect_id = params[:aspect_id] + raise ActiveRecord::RecordNotFound unless aspect.present? && contact.present? - @contact = current_user.contact_for(Person.where(:id => @person_id).first) - membership = @contact ? @contact.aspect_memberships.where(:aspect_id => @aspect_id).first : nil + raise Diaspora::NotMine unless current_user.mine?(aspect) && + current_user.mine?(contact) - if membership && membership.destroy - @aspect = membership.aspect - flash.now[:notice] = I18n.t 'aspect_memberships.destroy.success' + membership = contact.aspect_memberships.where(:aspect_id => aspect.id).first - respond_with do |format| - format.json{ render :json => { - :person_id => @person_id, - :aspect_ids => @contact.aspects.map{|a| a.id} - } } - format.html{ redirect_to :back } - end + raise ActiveRecord::RecordNotFound unless membership.present? + + # do it! + success = membership.destroy + + # set the flash message + if success + flash.now[:notice] = I18n.t 'aspect_memberships.destroy.success' + else + flash.now[:error] = I18n.t 'aspect_memberships.destroy.failure' + end - else - flash.now[:error] = I18n.t 'aspect_memberships.destroy.failure' - errors = membership ? membership.errors.full_messages : t('aspect_memberships.destroy.no_membership') - respond_to do |format| - format.js { render :text => errors, :status => 403 } - format.html{ - redirect_to :back + respond_with do |format| + format.json do + if success + render :json => { + :person_id => contact.person_id, + :aspect_ids => contact.aspects.map{|a| a.id} } + else + render :text => membership.errors.full_messages, :status => 403 + end end + + format.all { redirect_to :back } end end def create @person = Person.find(params[:person_id]) @aspect = current_user.aspects.where(:id => params[:aspect_id]).first + @contact = current_user.share_with(@person, @aspect) - if @contact + if @contact.present? flash.now[:notice] = I18n.t('aspects.add_to_aspect.success') - respond_with AspectMembership.where(:contact_id => @contact.id, :aspect_id => @aspect.id).first + respond_with do |format| + format.json do + render :json => AspectMembership.where(:contact_id => @contact.id, :aspect_id => @aspect.id).first.to_json + end + + format.all { redirect_to :back } + end else flash.now[:error] = I18n.t('contacts.create.failure') render :nothing => true, :status => 409 @@ -58,4 +71,13 @@ class AspectMembershipsController < ApplicationController rescue_from ActiveRecord::StatementInvalid do render :text => "Duplicate record rejected.", :status => 400 end + + rescue_from ActiveRecord::RecordNotFound do + render :text => I18n.t('aspect_memberships.destroy.no_membership'), :status => 404 + end + + rescue_from Diaspora::NotMine do + render :text => "You are not allowed to do that.", :status => 403 + end + end diff --git a/app/controllers/contacts_controller.rb b/app/controllers/contacts_controller.rb index f0fdc1d32..0f7573bda 100644 --- a/app/controllers/contacts_controller.rb +++ b/app/controllers/contacts_controller.rb @@ -50,5 +50,6 @@ class ContactsController < ApplicationController end end @contacts = @contacts.for_a_stream.paginate(:page => params[:page], :per_page => 25) + @contacts_size = @contacts.length end end diff --git a/app/controllers/conversations_controller.rb b/app/controllers/conversations_controller.rb index c4eae4a5d..75ef768bd 100644 --- a/app/controllers/conversations_controller.rb +++ b/app/controllers/conversations_controller.rb @@ -10,16 +10,18 @@ class ConversationsController < ApplicationController @visibilities = ConversationVisibility.where(:person_id => current_user.person_id).paginate( :page => params[:page], :per_page => 15, :order => 'updated_at DESC') + + @conversation = Conversation.joins(:conversation_visibilities).where( + :conversation_visibilities => {:person_id => current_user.person_id, :conversation_id => params[:conversation_id]}).first @unread_counts = {} @visibilities.each { |v| @unread_counts[v.conversation_id] = v.unread } + + @first_unread_message_id = @conversation.try(:first_unread_message, current_user).try(:id) @authors = {} @conversations.each { |c| @authors[c.id] = c.last_author } - @conversation = Conversation.joins(:conversation_visibilities).where( - :conversation_visibilities => {:person_id => current_user.person_id, :conversation_id => params[:conversation_id]}).first - respond_with do |format| format.html format.json { render :json => @conversations, :status => 200 } @@ -37,11 +39,14 @@ class ConversationsController < ApplicationController params[:conversation][:messages_attributes] = [ {:author => current_user.person, :text => message_text }] @conversation = Conversation.new(params[:conversation]) - if @conversation.save + if person_ids.present? && @conversation.save Postzord::Dispatcher.build(current_user, @conversation).post flash[:notice] = I18n.t('conversations.create.sent') else flash[:error] = I18n.t('conversations.create.fail') + if person_ids.blank? + flash[:error] = I18n.t('conversations.create.no_contact') + end end if params[:profile] redirect_to person_path(params[:profile]) @@ -53,6 +58,8 @@ class ConversationsController < ApplicationController def show if @conversation = Conversation.joins(:conversation_visibilities).where(:id => params[:id], :conversation_visibilities => {:person_id => current_user.person_id}).first + + @first_unread_message_id = @conversation.first_unread_message(current_user).try(:id) if @visibility = ConversationVisibility.where(:conversation_id => params[:id], :person_id => current_user.person.id).first @visibility.unread = 0 @visibility.save diff --git a/app/controllers/invitations_controller.rb b/app/controllers/invitations_controller.rb index a73d7c5b1..984c6ff5e 100644 --- a/app/controllers/invitations_controller.rb +++ b/app/controllers/invitations_controller.rb @@ -10,6 +10,10 @@ class InvitationsController < ApplicationController def new @invite_code = current_user.invitation_code + + @invalid_emails = html_safe_string_from_session_array(:invalid_email_invites) + @valid_emails = html_safe_string_from_session_array(:valid_email_invites) + respond_to do |format| format.html do render :layout => false @@ -48,10 +52,32 @@ class InvitationsController < ApplicationController end def create - inviter = EmailInviter.new(params[:email_inviter][:emails], current_user, params[:email_inviter]) - inviter.send! + emails = params[:email_inviter][:emails].split(',').map(&:strip).uniq + + valid_emails, invalid_emails = emails.partition { |email| valid_email?(email) } + + session[:valid_email_invites] = valid_emails + session[:invalid_email_invites] = invalid_emails - redirect_to :back, :notice => t('invitations.create.sent', :emails => inviter.emails.join(', ')) + unless valid_emails.empty? + inviter = EmailInviter.new(valid_emails.join(','), current_user, + params[:email_inviter]) + inviter.send! + end + + if emails.empty? + flash[:error] = t('invitations.create.empty') + elsif invalid_emails.empty? + flash[:notice] = t('invitations.create.sent', :emails => valid_emails.join(', ')) + elsif valid_emails.empty? + flash[:error] = t('invitations.create.rejected') + invalid_emails.join(', ') + else + flash[:error] = t('invitations.create.sent', :emails => valid_emails.join(', ')) + flash[:error] << '. ' + flash[:error] << t('invitations.create.rejected') + invalid_emails.join(', ') + end + + redirect_to :back end def check_if_invites_open @@ -61,4 +87,17 @@ class InvitationsController < ApplicationController redirect_to :back end end + + private + def valid_email?(email) + User.email_regexp.match(email).present? + end + + def html_safe_string_from_session_array(key) + return "" unless session[key].present? + return "" unless session[key].respond_to?(:join) + value = session[key].join(', ').html_safe + session[key] = nil + return value + end end diff --git a/app/controllers/people_controller.rb b/app/controllers/people_controller.rb index 7bf708867..a7ea9541d 100644 --- a/app/controllers/people_controller.rb +++ b/app/controllers/people_controller.rb @@ -17,6 +17,13 @@ class PeopleController < ApplicationController :format => :html, :layout => false, :status => 404 end + rescue_from Diaspora::AccountClosed do + respond_to do |format| + format.any { redirect_to :back, :notice => t("people.show.closed_account") } + format.json { render :nothing => true, :status => 410 } # 410 GONE + end + end + helper_method :search_query def index @@ -36,7 +43,7 @@ class PeopleController < ApplicationController if diaspora_id?(search_query) @people = Person.where(:diaspora_handle => search_query.downcase) if @people.empty? - Webfinger.in_background(search_query) + Webfinger.in_background(search_query) @background_query = search_query.downcase end end @@ -66,25 +73,12 @@ class PeopleController < ApplicationController respond_with @people end - def hashes_for_people(people, aspects) - ids = people.map{|p| p.id} - contacts = {} - Contact.unscoped.where(:user_id => current_user.id, :person_id => ids).each do |contact| - contacts[contact.person_id] = contact - end - - people.map{|p| - {:person => p, - :contact => contacts[p.id], - :aspects => aspects} - } - end - + # renders the persons user profile page def show @person = Person.find_from_guid_or_username(params) authenticate_user! if remote_profile_with_no_user_session? - return redirect_to :back, :notice => t("people.show.closed_account") if @person.closed_account? + raise Diaspora::AccountClosed if @person.closed_account? @post_type = :all @aspect = :profile @@ -122,6 +116,23 @@ class PeopleController < ApplicationController end end + # hovercards fetch some the persons public profile data via json and display + # it next to the avatar image in a nice box + def hovercard + @person = Person.find_from_guid_or_username({:id => params[:person_id]}) + raise Diaspora::AccountClosed if @person.closed_account? + + respond_to do |format| + format.all do + redirect_to :action => "show", :id => params[:person_id] + end + + format.json do + render :json => HovercardPresenter.new(@person) + end + end + end + def last_post @person = Person.find_from_guid_or_username(params) last_post = Post.visible_from_author(@person, current_user).order('posts.created_at DESC').first @@ -152,20 +163,23 @@ class PeopleController < ApplicationController end end + # shows the dropdown list of aspects the current user has set for the given person. + # renders "thats you" in case the current user views himself def aspect_membership_dropdown @person = Person.find_by_guid(params[:person_id]) - if @person == current_user.person - render :text => I18n.t('people.person.thats_you') - else - @contact = current_user.contact_for(@person) || Contact.new - render :partial => 'aspect_membership_dropdown', :locals => {:contact => @contact, :person => @person, :hang => 'left'} - end + + # you are not a contact of yourself... + return render :text => I18n.t('people.person.thats_you') if @person == current_user.person + + @contact = current_user.contact_for(@person) || Contact.new + render :partial => 'aspect_membership_dropdown', :locals => {:contact => @contact, :person => @person, :hang => 'left'} end def redirect_if_tag_search if search_query.starts_with?('#') if search_query.length > 1 - redirect_to tag_path(:name => search_query.delete('#.'), :q => search_query) + + redirect_to tag_path(:name => search_query.delete('#.')) else flash[:error] = I18n.t('tags.show.none', :name => search_query) redirect_to :back @@ -175,6 +189,20 @@ class PeopleController < ApplicationController private + def hashes_for_people(people, aspects) + ids = people.map{|p| p.id} + contacts = {} + Contact.unscoped.where(:user_id => current_user.id, :person_id => ids).each do |contact| + contacts[contact.person_id] = contact + end + + people.map{|p| + {:person => p, + :contact => contacts[p.id], + :aspects => aspects} + } + end + def search_query @search_query ||= params[:q] || params[:term] || '' end diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index d6435b1c4..aa51f0581 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -1,4 +1,4 @@ - # Copyright (c) 2010-2011, Diaspora Inc. This file is +# Copyright (c) 2010-2011, Diaspora Inc. This file is # licensed under the Affero General Public License version 3 or later. See # the COPYRIGHT file. @@ -25,7 +25,7 @@ class PostsController < ApplicationController end def show - mark_corresponding_notification_read if user_signed_in? + mark_corresponding_notifications_read if user_signed_in? respond_to do |format| format.html{ gon.post = PostPresenter.new(@post, current_user); render 'posts/show' } @@ -77,7 +77,7 @@ class PostsController < ApplicationController current_user.retract(@post) respond_to do |format| - format.js { render 'destroy',:layout => false, :format => :js } + format.js { render 'destroy',:layout => false, :format => :js } format.json { render :nothing => true, :status => 204 } format.any { redirect_to stream_path } end @@ -104,10 +104,10 @@ class PostsController < ApplicationController request.format = :html if request.format == 'application/html+xml' end - def mark_corresponding_notification_read - if notification = Notification.where(:recipient_id => current_user.id, :target_id => @post.id, :unread => true).first - notification.unread = false - notification.save + def mark_corresponding_notifications_read + Notification.where(recipient_id: current_user.id, target_id: @post.id, unread: true).each do |n| + n.unread = false + n.save! end end end diff --git a/app/controllers/profiles_controller.rb b/app/controllers/profiles_controller.rb index 342158afa..ef1ec28e4 100644 --- a/app/controllers/profiles_controller.rb +++ b/app/controllers/profiles_controller.rb @@ -53,7 +53,7 @@ class ProfilesController < ApplicationController respond_to do |format| format.js { render :nothing => true, :status => 200 } - format.html { + format.any { flash[:notice] = I18n.t 'profiles.update.updated' if current_user.getting_started? redirect_to getting_started_path diff --git a/app/controllers/reshares_controller.rb b/app/controllers/reshares_controller.rb index 25ea951f3..5748386e1 100644 --- a/app/controllers/reshares_controller.rb +++ b/app/controllers/reshares_controller.rb @@ -7,8 +7,9 @@ class ResharesController < ApplicationController if @reshare.save current_user.add_to_streams(@reshare, current_user.aspects) current_user.dispatch_post(@reshare, :url => post_url(@reshare), :additional_subscribers => @reshare.root_author) + render :json => ExtremePostPresenter.new(@reshare, current_user), :status => 201 + else + render :nothing => true, :status => 422 end - - render :json => ExtremePostPresenter.new(@reshare, current_user), :status => 201 end end diff --git a/app/controllers/status_messages_controller.rb b/app/controllers/status_messages_controller.rb index bef5341e8..1b0e4589b 100644 --- a/app/controllers/status_messages_controller.rb +++ b/app/controllers/status_messages_controller.rb @@ -60,7 +60,7 @@ class StatusMessagesController < ApplicationController current_user.participate!(@status_message) - if coming_from_profile_page? # if this is a post coming from a profile page + if coming_from_profile_page? && !own_profile_page? # if this is a post coming from a profile page flash[:notice] = successful_mention_message end @@ -96,6 +96,10 @@ class StatusMessagesController < ApplicationController request.env['HTTP_REFERER'].include?("people") end + def own_profile_page? + request.env['HTTP_REFERER'].include?("/people/" + params[:status_message][:author][:guid].to_s) + end + def normalize_public_flag! # mobile || desktop conditions sm = params[:status_message] diff --git a/app/controllers/streams_controller.rb b/app/controllers/streams_controller.rb index a28f47715..a4e300823 100644 --- a/app/controllers/streams_controller.rb +++ b/app/controllers/streams_controller.rb @@ -21,7 +21,7 @@ class StreamsController < ApplicationController :json def aspects - aspect_ids = (session[:a_ids] ? session[:a_ids] : []) + aspect_ids = (session[:a_ids] || []) @stream = Stream::Aspect.new(current_user, aspect_ids, :max_time => max_time) stream_responder @@ -52,6 +52,7 @@ class StreamsController < ApplicationController end def followed_tags + gon.tagFollowings = tags stream_responder(Stream::FollowedTag) end diff --git a/app/controllers/tag_followings_controller.rb b/app/controllers/tag_followings_controller.rb index fc5aa0ca4..c447d9e92 100644 --- a/app/controllers/tag_followings_controller.rb +++ b/app/controllers/tag_followings_controller.rb @@ -6,7 +6,7 @@ class TagFollowingsController < ApplicationController before_filter :authenticate_user! - respond_to :html, :json + respond_to :json # POST /tag_followings # POST /tag_followings.xml @@ -14,52 +14,38 @@ class TagFollowingsController < ApplicationController name_normalized = ActsAsTaggableOn::Tag.normalize(params['name']) if name_normalized.nil? || name_normalized.empty? - flash[:error] = I18n.t('tag_followings.create.none') + render :nothing => true, :status => 403 else @tag = ActsAsTaggableOn::Tag.find_or_create_by_name(name_normalized) @tag_following = current_user.tag_followings.new(:tag_id => @tag.id) if @tag_following.save - flash[:notice] = I18n.t('tag_followings.create.success', :name => name_normalized) + render :json => @tag.to_json, :status => 201 else - flash[:error] = I18n.t('tag_followings.create.failure', :name => name_normalized) + render :nothing => true, :status => 403 end end - redirect_to :back end # DELETE /tag_followings/1 # DELETE /tag_followings/1.xml def destroy - @tag = ActsAsTaggableOn::Tag.find_by_name(params[:name]) - tag_following = current_user.tag_followings.find_by_tag_id( @tag.id ) + tag_following = current_user.tag_followings.find_by_tag_id( params['id'] ) + if tag_following && tag_following.destroy - tag_unfollowed = true + respond_to do |format| + format.any(:js, :json) { render :nothing => true, :status => 204 } + end else - tag_unfollowed = false - end - - respond_to do |format| - format.js { render 'tags/update' } - format.any { - if tag_unfollowed - flash[:notice] = I18n.t('tag_followings.destroy.success', :name => params[:name]) - else - flash[:error] = I18n.t('tag_followings.destroy.failure', :name => params[:name]) - end - redirect_to tag_path(:name => params[:name]) - } + respond_to do |format| + format.any(:js, :json) {render :nothing => true, :status => 403} + end end end - def create_multiple - if params[:tags].present? - params[:tags].split(",").each do |name| - name_normalized = ActsAsTaggableOn::Tag.normalize(name) - @tag = ActsAsTaggableOn::Tag.find_or_create_by_name(name_normalized) - @tag_following = current_user.tag_followings.create(:tag_id => @tag.id) - end + def index + respond_to do |format| + format.json{ render(:json => tags.to_json, :status => 200) } end - redirect_to stream_path end end diff --git a/app/controllers/tags_controller.rb b/app/controllers/tags_controller.rb index 45a8ee954..13766ac13 100644 --- a/app/controllers/tags_controller.rb +++ b/app/controllers/tags_controller.rb @@ -32,8 +32,10 @@ class TagsController < ApplicationController end def show + if user_signed_in? + gon.tagFollowings = tags + end @stream = Stream::Tag.new(current_user, params[:name], :max_time => max_time, :page => params[:page]) - respond_with do |format| format.json { render :json => @stream.stream_posts.map { |p| LastThreeCommentsDecorator.new(PostPresenter.new(p, current_user)) }} end @@ -47,18 +49,10 @@ class TagsController < ApplicationController def prep_tags_for_javascript @tags.map! do |tag| - { - :name => ("#" + tag.name), - :value => ("#" + tag.name), - :url => tag_path(tag.name) - } + { :name => ("#" + tag.name) } end - @tags << { - :name => ('#' + params[:q]), - :value => ("#" + params[:q]), - :url => tag_path(params[:q].downcase) - } + @tags << { :name => ('#' + params[:q]) } @tags.uniq! end end diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index fe25b7717..f980f2424 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -60,8 +60,10 @@ class UsersController < ApplicationController elsif u[:email] @user.unconfirmed_email = u[:email] if @user.save - @user.mail_confirm_email - flash[:notice] = I18n.t 'users.update.unconfirmed_email_changed' + @user.mail_confirm_email == @user.email + if @user.unconfirmed_email + flash[:notice] = I18n.t 'users.update.unconfirmed_email_changed' + end else flash[:error] = I18n.t 'users.update.unconfirmed_email_not_changed' end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 9095dddf4..985f506f8 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -7,6 +7,16 @@ module ApplicationHelper AppConfig.settings.pod_name.present? ? AppConfig.settings.pod_name : "DIASPORA*" end + def pod_version + AppConfig.version.number.present? ? AppConfig.version.number : "" + end + + def changelog_url + url = "https://github.com/diaspora/diaspora/blob/master/Changelog.md" + url.sub!('/master/', "/#{AppConfig.git_revision}/") if AppConfig.git_revision.present? + url + end + def how_long_ago(obj) timeago(obj.created_at) end @@ -44,14 +54,6 @@ module ApplicationHelper without_close_html + link_to(image_tag('deletelabel.png'), "#", :class => 'close') end - def diaspora_id_host - User.diaspora_id_host - end - - def modernizer_responsive_tag - javascript_tag("Modernizr.mq('(min-width:0)') || document.write(unescape('#{j javascript_include_tag("mbp-respond.min")}'));") - end - # Require jQuery from CDN if possible, falling back to vendored copy, and require # vendored jquery_ujs def jquery_include_tag diff --git a/app/helpers/aspect_global_helper.rb b/app/helpers/aspect_global_helper.rb index 5dec3d540..501cfab1a 100644 --- a/app/helpers/aspect_global_helper.rb +++ b/app/helpers/aspect_global_helper.rb @@ -3,54 +3,28 @@ # the COPYRIGHT file. module AspectGlobalHelper - def aspects_with_post(aspects, post) - aspects.select do |aspect| - AspectVisibility.exists?(:aspect_id => aspect.id, :shareable_id => post.id, :shareable_type => 'Post') - end - end - - def aspect_links(aspects, opts={}) - str = "" - aspects.each do |aspect| - str << '<li>' - str << link_for_aspect(aspect, :params => opts, 'data-guid' => aspect.id).html_safe - str << '</li>' - end - str.html_safe - end - - def link_for_aspect(aspect, opts={}) - opts[:params] ||= {} - params ||= {} - opts[:params] = opts[:params].merge("a_ids[]" => aspect.id, :created_at => params[:created_at]) - opts['data-guid'] = aspect.id - - link_to aspect.name, aspects_path( opts[:params] ), opts - end - - def aspect_or_all_path(aspect) - if @aspect.is_a? Aspect - aspect_path @aspect - else - aspects_path - end - end - def aspect_membership_dropdown(contact, person, hang, aspect=nil) + aspect_membership_ids = {} + selected_aspects = all_aspects.select{|aspect| contact.in_aspect?(aspect)} + selected_aspects.each do |a| + record = a.aspect_memberships.find { |am| am.contact_id == contact.id } + aspect_membership_ids[a.id] = record.id + end render "shared/aspect_dropdown", :selected_aspects => selected_aspects, + :aspect_membership_ids => aspect_membership_ids, :person => person, :hang => hang, :dropdown_class => "aspect_membership" end - def aspect_dropdown_list_item(aspect, checked) - klass = checked ? "selected" : "" + def aspect_dropdown_list_item(aspect, am_id=nil) + klass = am_id.present? ? "selected" : "" str = <<LISTITEM -<li data-aspect_id=#{aspect.id} class='#{klass} aspect_selector'> +<li data-aspect_id="#{aspect.id}" data-membership_id="#{am_id}" class="#{klass} aspect_selector"> #{aspect.name} </li> LISTITEM diff --git a/app/helpers/aspects_helper.rb b/app/helpers/aspects_helper.rb index f02505b01..77fb5a55d 100644 --- a/app/helpers/aspects_helper.rb +++ b/app/helpers/aspects_helper.rb @@ -3,48 +3,41 @@ # the COPYRIGHT file. module AspectsHelper - def remove_link(aspect) - if aspect.contacts.size == 0 - link_to I18n.t('aspects.helper.remove'), aspect, :method => :delete, :confirm => I18n.t('aspects.helper.are_you_sure') - else - "<span class='grey' title=#{I18n.t('aspects.helper.aspect_not_empty')}>#{I18n.t('aspects.helper.remove')}</span>" - end - end - def add_to_aspect_button(aspect_id, person_id) link_to image_tag('icons/monotone_plus_add_round.png'), - {:controller => 'aspect_memberships', + { :controller => 'aspect_memberships', :action => 'create', + :format => :json, :aspect_id => aspect_id, - :person_id => person_id}, - :remote => true, + :person_id => person_id + }, :method => 'post', :class => 'add button', 'data-aspect_id' => aspect_id, 'data-person_id' => person_id end - def remove_from_aspect_button(aspect_id, person_id) + def remove_from_aspect_button(membership_id, aspect_id, person_id) link_to image_tag('icons/monotone_check_yes.png'), - {:controller => "aspect_memberships", + { :controller => "aspect_memberships", :action => 'destroy', - :id => 42, - :aspect_id => aspect_id, - :person_id => person_id}, - :remote => true, + :id => membership_id + }, :method => 'delete', :class => 'added button', + 'data-membership_id' => membership_id, 'data-aspect_id' => aspect_id, 'data-person_id' => person_id end def aspect_membership_button(aspect, contact, person) return if person && person.closed_account? - - if contact.nil? || !contact.aspect_memberships.detect{ |am| am.aspect_id == aspect.id} + + membership = contact.aspect_memberships.where(:aspect_id => aspect.id).first + if contact.nil? || membership.nil? add_to_aspect_button(aspect.id, person.id) else - remove_from_aspect_button(aspect.id, person.id) + remove_from_aspect_button(membership.id, aspect.id, person.id) end end end diff --git a/app/helpers/contacts_helper.rb b/app/helpers/contacts_helper.rb index 157144b1b..07a0df90e 100644 --- a/app/helpers/contacts_helper.rb +++ b/app/helpers/contacts_helper.rb @@ -1,20 +1,31 @@ module ContactsHelper def contact_aspect_dropdown(contact) - if @aspect + membership = contact.aspect_memberships.where(:aspect_id => @aspect.id).first unless @aspect.nil? + + if membership link_to(image_tag('icons/monotone_close_exit_delete.png', :height => 20, :width => 20), - {:controller => "aspect_memberships", - :action => 'destroy', - :id => 42, - :aspect_id => @aspect.id, - :person_id => contact.person_id + { :controller => "aspect_memberships", + :action => 'destroy', + :id => membership.id }, - :title => t('.remove_person_from_aspect', :person_name => contact.person_first_name, :aspect_name => @aspect.name), - :method => 'delete') + :title => t('contacts.index.remove_person_from_aspect', :person_name => contact.person_first_name, :aspect_name => @aspect.name), + :class => 'contact_remove-from-aspect', + :method => 'delete', + 'data-membership_id' => membership.id + ) else render :partial => 'people/relationship_action', - :locals => { :person => contact.person, :contact => contact, - :current_user => current_user } + :locals => { :person => contact.person, + :contact => contact, + :current_user => current_user } end end + + def start_a_conversation_link(aspect, contacts_size) + suggested_limit = 16 + conv_opts = { :class => "button conversation_button", :rel => "facebox"} + conv_opts[:title] = t('.many_people_are_you_sure', :suggested_limit => suggested_limit) if contacts_size > suggested_limit + link_to t('.start_a_conversation'), new_conversation_path(:aspect_id => aspect.id, :name => aspect.name), conv_opts + end end diff --git a/app/helpers/interim_stream_hackiness_helper.rb b/app/helpers/interim_stream_hackiness_helper.rb index 14450f233..9ed9ad7a9 100644 --- a/app/helpers/interim_stream_hackiness_helper.rb +++ b/app/helpers/interim_stream_hackiness_helper.rb @@ -39,14 +39,6 @@ module InterimStreamHackinessHelper end end - def what_stream_sentence(post) - from_group(post).map{|x| I18n.t("streams.#{x.to_s}")}.to_sentence - end - - def stream_settings_link(post) - link_to "", "#{edit_user_path}#stream-preferences" - end - def publisher_open if defined?(@stream) @stream.publisher.open? diff --git a/app/helpers/invitation_codes_helper.rb b/app/helpers/invitation_codes_helper.rb index d4bf88abb..a0f614f42 100644 --- a/app/helpers/invitation_codes_helper.rb +++ b/app/helpers/invitation_codes_helper.rb @@ -1,15 +1,4 @@ module InvitationCodesHelper - def invite_welcome_message - if invite.present? - content_tag(:div, :class => 'media well') do - person_image_link(invite.user.person, :class => 'img') + - content_tag(:div, :class => 'bd') do - I18n.translate('invitation_codes.excited', :name => invite.user_name) - end - end - end - end - def invite_hidden_tag(invite) if invite.present? hidden_field_tag 'invite[token]', invite.token diff --git a/app/helpers/layout_helper.rb b/app/helpers/layout_helper.rb index 67b1fd71d..d29b1243e 100644 --- a/app/helpers/layout_helper.rb +++ b/app/helpers/layout_helper.rb @@ -39,7 +39,8 @@ module LayoutHelper def set_current_user_in_javascript return unless user_signed_in? - user = UserPresenter.new(current_user).to_json + a_ids = session[:a_ids] || [] + user = UserPresenter.new(current_user, a_ids).to_json content_tag(:script) do <<-JS.html_safe window.current_user_attributes = #{j user} @@ -65,7 +66,7 @@ module LayoutHelper end def include_base_css_framework(use_bootstrap=false) - if use_bootstrap || @aspect == :getting_started || @page == :experimental + if use_bootstrap || @aspect == :getting_started stylesheet_link_tag 'bootstrap-complete' else stylesheet_link_tag 'blueprint', :media => 'screen' diff --git a/app/helpers/markdownify_helper.rb b/app/helpers/markdownify_helper.rb index f19f7f12b..926029077 100644 --- a/app/helpers/markdownify_helper.rb +++ b/app/helpers/markdownify_helper.rb @@ -48,7 +48,7 @@ module MarkdownifyHelper end def strip_markdown(text) - renderer = Redcarpet::Markdown.new(Redcarpet::Render::StripDown) + renderer = Redcarpet::Markdown.new(Redcarpet::Render::StripDown, :autolink => true) renderer.render(text) end diff --git a/app/helpers/notifications_helper.rb b/app/helpers/notifications_helper.rb index 6f69ac3be..42bf14244 100644 --- a/app/helpers/notifications_helper.rb +++ b/app/helpers/notifications_helper.rb @@ -3,7 +3,7 @@ module NotificationsHelper def object_link(note, actors) target_type = note.popup_translation_key - actors_count = note.actors.count + actors_count = note.actors.size if note.instance_of?(Notifications::Mentioned) if post = note.linked_object @@ -29,7 +29,7 @@ module NotificationsHelper def notification_people_link(note, people=nil) actors =people || note.actors - number_of_actors = actors.count + number_of_actors = actors.size sentence_translations = {:two_words_connector => " #{t('notifications.index.and')} ", :last_word_connector => ", #{t('notifications.index.and')} " } actor_links = actors.collect{ |person| person_link(person, :class => 'hovercardable') @@ -54,10 +54,6 @@ module NotificationsHelper object_link(note, notification_people_link(note)) end - def peoples_names(note) - note.actors.map{|p| p.name}.join(", ") - end - def the_day(i18n) i18n[0].match(/\d/) ? i18n[0].gsub('.', '') : i18n[1].gsub('.', '') end diff --git a/app/helpers/notifier_helper.rb b/app/helpers/notifier_helper.rb index 8d17fa342..050d98a4e 100644 --- a/app/helpers/notifier_helper.rb +++ b/app/helpers/notifier_helper.rb @@ -23,12 +23,4 @@ module NotifierHelper text = process_newlines(text) if opts[:process_newlines] text end - - def invite_email_title - if @inviter.present? - I18n.t 'notifier.invited_you', :name => @inviter.person.name - else - I18n.t 'notifier.accept_invite' - end - end end diff --git a/app/helpers/people_helper.rb b/app/helpers/people_helper.rb index c698a1ea6..ef751f1c5 100644 --- a/app/helpers/people_helper.rb +++ b/app/helpers/people_helper.rb @@ -16,15 +16,6 @@ module PeopleHelper end end - def request_partial single_aspect_form - if single_aspect_form - 'requests/new_request_with_aspect_to_person' - - else - 'requests/new_request_to_person' - end - end - def search_or_index if search_query I18n.t 'people.helper.results_for',:params => search_query @@ -48,8 +39,10 @@ module PeopleHelper "<a data-hovercard='#{remote_or_hovercard_link}' #{person_href(person)} class='#{opts[:class]}' #{ ("target=" + opts[:target]) if opts[:target]}>#{h(person.name)}</a>".html_safe end - def last_post_link(person) - link_to(t('people.last_post'), last_post_person_path(person.to_param)) unless person.posts.empty? + def last_visible_post_for(person, current_user=nil) + unless Post.visible_from_author(person, current_user).empty? + link_to(t('people.last_post'), last_post_person_path(person.to_param)) + end end def person_image_tag(person, size = :thumb_small) diff --git a/app/helpers/publisher_helper.rb b/app/helpers/publisher_helper.rb index d38f8a365..d90836089 100644 --- a/app/helpers/publisher_helper.rb +++ b/app/helpers/publisher_helper.rb @@ -3,18 +3,10 @@ # the COPYRIGHT file. module PublisherHelper - def public_value - params[:controller] == "tags" || params[:controller] == "posts" - end - def remote? params[:controller] != "tags" end - def public_helper_text - (public_value)? t('javascripts.publisher.public'): t('javascripts.publisher.limited') - end - def all_aspects_selected?(selected_aspects) @all_aspects_selected ||= all_aspects.size == selected_aspects.size end diff --git a/app/helpers/users_helper.rb b/app/helpers/users_helper.rb index 4f29c511b..0b81a4a3d 100644 --- a/app/helpers/users_helper.rb +++ b/app/helpers/users_helper.rb @@ -6,8 +6,4 @@ module UsersHelper def owner_image_link person_image_link(current_user.person, :size => :thumb_small) end - - def mine?(post) - current_user.owns? post - end end diff --git a/app/models/acts_as_taggable_on/tag.rb b/app/models/acts_as_taggable_on/tag.rb index 1806262e7..70b77f69b 100644 --- a/app/models/acts_as_taggable_on/tag.rb +++ b/app/models/acts_as_taggable_on/tag.rb @@ -1,5 +1,7 @@ class ActsAsTaggableOn::Tag + self.include_root_in_json = false + def followed_count @followed_count ||= TagFollowing.where(:tag_id => self.id).count end diff --git a/app/models/aspect_membership.rb b/app/models/aspect_membership.rb index ebd3756ab..8155c241f 100644 --- a/app/models/aspect_membership.rb +++ b/app/models/aspect_membership.rb @@ -19,8 +19,9 @@ class AspectMembership < ActiveRecord::Base def as_json(opts={}) { :id => self.id, - :person_id => self.person.id, + :person_id => self.person.id, :contact_id => self.contact.id, + :aspect_id => self.aspect_id, :aspect_ids => self.contact.aspects.map{|a| a.id} } end diff --git a/app/models/conversation.rb b/app/models/conversation.rb index bdc3e123a..8d2f25c25 100644 --- a/app/models/conversation.rb +++ b/app/models/conversation.rb @@ -33,6 +33,12 @@ class Conversation < ActiveRecord::Base def diaspora_handle= nh self.author = Webfinger.new(nh).fetch end + + def first_unread_message(user) + if visibility = self.conversation_visibilities.where(:person_id => user.person.id).where('unread > 0').first + self.messages.all[-visibility.unread] + end + end def public? false diff --git a/app/models/person.rb b/app/models/person.rb index 0ed354f88..4fe1fd9fb 100644 --- a/app/models/person.rb +++ b/app/models/person.rb @@ -167,12 +167,6 @@ class Person < ActiveRecord::Base }.call end - def self.public_search(query, opts={}) - return [] if query.to_s.blank? || query.to_s.length < 3 - sql, tokens = self.search_query_string(query) - Person.searchable.where(sql, *tokens) - end - def name(opts = {}) if self.profile.nil? fix_profile diff --git a/app/models/photo.rb b/app/models/photo.rb index ce666b5d1..9741985a7 100644 --- a/app/models/photo.rb +++ b/app/models/photo.rb @@ -128,10 +128,6 @@ class Photo < ActiveRecord::Base } end - def thumb_hash - {:thumb_url => url(:thumb_medium), :id => id, :album_id => nil} - end - def queue_processing_job Resque.enqueue(Jobs::ProcessPhoto, self.id) end diff --git a/app/models/post.rb b/app/models/post.rb index be325c829..9d3a85423 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -103,11 +103,6 @@ class Post < ActiveRecord::Base reshares.where(:author_id => user.person.id).first end - def participation_for(user) - return unless user - participations.where(:author_id => user.person.id).first - end - def like_for(user) return unless user likes.where(:author_id => user.person.id).first @@ -133,10 +128,6 @@ class Post < ActiveRecord::Base false end - def triggers_caching? - true - end - def comment_email_subject I18n.t('notifier.a_post_you_shared') end diff --git a/app/models/status_message.rb b/app/models/status_message.rb index e4adc4f0a..e6c46cd4d 100644 --- a/app/models/status_message.rb +++ b/app/models/status_message.rb @@ -173,7 +173,7 @@ class StatusMessage < Post private def self.tag_stream(tag_ids) - joins(:tags).where(:tags => {:id => tag_ids}) + joins(:taggings).where('taggings.tag_id IN (?)', tag_ids) end end diff --git a/app/models/user.rb b/app/models/user.rb index c505e0bfa..105b9806f 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -165,17 +165,6 @@ class User < ActiveRecord::Base self.hidden_shareables[share_type].present? end - - def self.create_from_invitation!(invitation) - user = User.new - user.generate_keys - user.send(:generate_invitation_token) - user.email = invitation.identifier if invitation.service == 'email' - # we need to make a custom validator here to make this safer - user.save(:validate => false) - user - end - def send_reset_password_instructions generate_reset_password_token! if should_generate_reset_token? Resque.enqueue(Jobs::ResetPassword, self.id) @@ -227,14 +216,6 @@ class User < ActiveRecord::Base where(conditions).first end - # @param [Person] person - # @return [Boolean] whether this user can add person as a contact. - def can_add?(person) - return false if self.person == person - return false if self.contact_for(person).present? - true - end - def confirm_email(token) return false if token.blank? || token != confirm_email_token self.email = unconfirmed_email @@ -425,6 +406,15 @@ class User < ActiveRecord::Base Role.is_admin?(self.person) end + def mine?(target) + if target.present? && target.respond_to?(:user_id) + return self.id == target.user_id + end + + false + end + + def guard_unconfirmed_email self.unconfirmed_email = nil if unconfirmed_email.blank? || unconfirmed_email == email diff --git a/app/presenters/hovercard_presenter.rb b/app/presenters/hovercard_presenter.rb new file mode 100644 index 000000000..368f8d95c --- /dev/null +++ b/app/presenters/hovercard_presenter.rb @@ -0,0 +1,39 @@ +class HovercardPresenter + + attr_accessor :person + + # initialize the presenter with the given Person object + def initialize(person) + raise ArgumentError, "the given object is not a Person" unless person.class == Person + + self.person = person + end + + # returns the json representation of the Person object for use with the + # hovercard UI + def to_json(options={}) + { :id => person.id, + :avatar => avatar('small'), + :url => profile_url, + :name => person.name, + :handle => person.diaspora_handle, + :tags => person.tags.map { |t| "#"+t.name } + }.to_json(options) + end + + # get the image url of the profile avatar for the given size + # possible sizes: 'small', 'medium', 'large' + def avatar(size="small") + if !["small", "medium", "large"].include?(size) + raise ArgumentError, "the given parameter is not a valid size" + end + + person.image_url("thumb_#{size}".to_sym) + end + + # return the (relative) url to the user profile page. + # uses the 'person_path' url helper from the rails routes + def profile_url + Rails.application.routes.url_helpers.person_path(person) + end +end diff --git a/app/presenters/user_presenter.rb b/app/presenters/user_presenter.rb index 018b57187..1874570c4 100644 --- a/app/presenters/user_presenter.rb +++ b/app/presenters/user_presenter.rb @@ -1,8 +1,9 @@ class UserPresenter - attr_accessor :user + attr_accessor :user, :aspects_ids - def initialize(user) - self.user = user + def initialize(user, aspects_ids) + self.user = user + self.aspects_ids = aspects_ids end def to_json(options = {}) @@ -27,7 +28,11 @@ class UserPresenter end def aspects - AspectPresenter.as_collection(user.aspects) + @aspects ||= begin + aspects = AspectPresenter.as_collection(user.aspects) + no_aspects = self.aspects_ids.empty? + aspects.each{ |a| a[:selected] = no_aspects || self.aspects_ids.include?(a[:id].to_s) } + end end def notifications_count diff --git a/app/uploaders/processed_image.rb b/app/uploaders/processed_image.rb index 88e889a0a..89750f336 100644 --- a/app/uploaders/processed_image.rb +++ b/app/uploaders/processed_image.rb @@ -30,7 +30,7 @@ class ProcessedImage < CarrierWave::Uploader::Base process :strip end version :scaled_full do - process :resize_to_limit => [700,700] + process :resize_to_limit => [700,nil] process :strip end diff --git a/app/views/aspect_memberships/create.js.erb b/app/views/aspect_memberships/create.js.erb index f1165c0dd..69abb4b4b 100644 --- a/app/views/aspect_memberships/create.js.erb +++ b/app/views/aspect_memberships/create.js.erb @@ -2,6 +2,8 @@ // licensed under the Affero General Public License version 3 or later. See // the COPYRIGHT file. +// TODO handle this completely in Backbone.js, then remove this view! + var element = $(".add[data-aspect_id=<%= @aspect.id %>][data-person_id=<%= @contact.person_id%>]"); if( $("#no_contacts").is(':visible') ) { diff --git a/app/views/aspect_memberships/destroy.js.erb b/app/views/aspect_memberships/destroy.js.erb index 5093635f2..8c7eb4106 100644 --- a/app/views/aspect_memberships/destroy.js.erb +++ b/app/views/aspect_memberships/destroy.js.erb @@ -2,6 +2,8 @@ // licensed under the Affero General Public License version 3 or later. See // the COPYRIGHT file. +// TODO handle this completely in Backbone.js, then remove this view! + var element = $(".added[data-aspect_id=<%= @aspect.id %>][data-person_id=<%= @contact.person_id%>]"); element.parent().html("<%= escape_javascript(render('aspect_memberships/remove_from_aspect', :aspect => @aspect, :person => @contact.person, :contact => @contact)) %>"); element.fadeTo(200,1); diff --git a/app/views/aspects/_aspect_contacts.haml b/app/views/aspects/_aspect_contacts.haml deleted file mode 100644 index 17e3f890d..000000000 --- a/app/views/aspects/_aspect_contacts.haml +++ /dev/null @@ -1,30 +0,0 @@ --# Copyright (c) 2010-2011, Diaspora Inc. This file is --# licensed under the Affero General Public License version 3 or later. See --# the COPYRIGHT file. - -- content_for :head do - =javascript_include_tag 'aspect-contacts' - :javascript - EditPane.setTranslations({ - doneEditing: "#{t('.done_editing')}", - editAspect:"#{t('aspects.show.edit_aspect')}" - }); - - - if aspect.contacts.count == 0 - :javascript - $(document).ready(function(){ - EditPane.fadeIn(); - }); - -#left_pane - .section.contact_pictures - - for contact in contacts - = person_image_link(contact[:person]) - - %br - %br - %br - .section - %h3= t('shared.invitations.invites') - = render "shared/invitations" - diff --git a/app/views/aspects/_aspect_list_item.haml b/app/views/aspects/_aspect_list_item.haml deleted file mode 100644 index 00d90df89..000000000 --- a/app/views/aspects/_aspect_list_item.haml +++ /dev/null @@ -1,9 +0,0 @@ --# Copyright (c) 2010-2011, Diaspora Inc. This file is --# licensed under the Affero General Public License version 3 or later. See --# the COPYRIGHT file. - -%li{:data=>{:guid=>aspect.id}} - %span.name - = link_to aspect.name, aspect - .right - = aspect_membership_button(aspect, contact, person) diff --git a/app/views/aspects/_aspect_listings.haml b/app/views/aspects/_aspect_listings.haml index 41659509f..8e593df9d 100644 --- a/app/views/aspects/_aspect_listings.haml +++ b/app/views/aspects/_aspect_listings.haml @@ -4,19 +4,6 @@ %ul#aspect_nav.left_nav.sub %li.all_aspects - = link_to t('streams.aspects.title'), aspects_path, :class => 'home_selector' + = link_to t('streams.aspects.title'), aspects_path, :class => 'home_selector', :rel => 'backbone' - - if @stream.is_a?(Stream::Aspect) - %ul.sub_nav - - if defined?(stream) - %a.toggle_selector{:href => '#'} - = stream.for_all_aspects? ? t('.deselect_all') : t('.select_all') - - for aspect in all_aspects - %li{:data => {:aspect_id => aspect.id}, :class => ("active" if defined?(stream) && stream.aspect_ids.include?(aspect.id))} - .edit - = link_to image_tag("icons/pencil.png", :title => t('.edit_aspect', :name => aspect.name)), edit_aspect_path(aspect), :rel => "facebox" - %a.aspect_selector{:href => aspects_path("a_ids[]" => aspect.id), :class => "name", 'data-guid' => aspect.id} - = aspect - - %li - = link_to t('.add_an_aspect'), new_aspect_path, :class => "new_aspect", :rel => "facebox" + %ul#aspects_list.sub_nav diff --git a/app/views/aspects/_aspect_stream.haml b/app/views/aspects/_aspect_stream.haml index ca9263159..46957d3ce 100644 --- a/app/views/aspects/_aspect_stream.haml +++ b/app/views/aspects/_aspect_stream.haml @@ -2,10 +2,11 @@ -# licensed under the Affero General Public License version 3 or later. See -# the COPYRIGHT file. -%h3#aspect_stream_header.stream_title - = stream.title +- if user_signed_in? && @person != current_user.person + %h3#aspect_stream_header.stream_title + = stream.title - = render 'shared/publisher', :selected_aspects => stream.aspects, :aspect_ids => stream.aspect_ids, :for_all_aspects => stream.for_all_aspects?, :aspect => stream.aspect += render 'shared/publisher', :selected_aspects => stream.aspects, :aspect_ids => stream.aspect_ids, :for_all_aspects => stream.for_all_aspects?, :aspect => stream.aspect = render 'aspects/no_posts_message' #gs-shim{:title => popover_with_close_html("3. #{t('.stay_updated')}"), 'data-content' => t('.stay_updated_explanation')} diff --git a/app/views/aspects/create.js.erb b/app/views/aspects/create.js.erb index 08e88088c..71976d074 100644 --- a/app/views/aspects/create.js.erb +++ b/app/views/aspects/create.js.erb @@ -2,10 +2,16 @@ // licensed under the Affero General Public License version 3 or later. See // the COPYRIGHT file. -var dropdown = $("ul.dropdown_list[data-person_id=<%= @person.id %>]") -$('.newItem', dropdown).before("<%= escape_javascript( aspect_dropdown_list_item(@aspect, @contact.aspects.include?(@aspect))) %>"); +// TODO create the aspect and the new aspect membership via Backbone.js and then +// remove this view! -ContactEdit.updateNumber(dropdown, "<%= @person.id %>", <%= @contact.aspects.size %>); -$.facebox.close(); -$('#profile .dropdown').toggleClass("active"); +if( app.aspectMemberships ) { + var dropdown = $("ul.dropdown_list[data-person_id=<%= @person.id %>]"); + $('.newItem', dropdown).before("<%= escape_javascript( aspect_dropdown_list_item(@aspect, @contact.aspects.include?(@aspect))) %>"); + app.aspectMemberships.dropdown = dropdown; + app.aspectMemberships.updateSummary(); + + $.facebox.close(); + $('#profile .dropdown').toggleClass("active"); +} diff --git a/app/views/aspects/index.mobile.haml b/app/views/aspects/index.mobile.haml deleted file mode 100644 index 4c5ab0cb9..000000000 --- a/app/views/aspects/index.mobile.haml +++ /dev/null @@ -1,18 +0,0 @@ --# Copyright (c) 2010-2011, Diaspora Inc. This file is --# licensed under the Affero General Public License version 3 or later. See --# the COPYRIGHT file. - -%h2{:style => "padding:0 10px;display:none;"} - - if @stream.for_all_aspects? - = t('all_aspects') - - else - = @stream.aspect - -#main_stream.stream - = render 'shared/stream', :posts => @stream.stream_posts - -if @stream.stream_posts.length > 0 - #pagination - %a.more-link.paginate{:href => next_page_path} - %h1 - = t("more") - diff --git a/app/views/aspects/update.js.erb b/app/views/aspects/update.js.erb deleted file mode 100644 index 52aee29be..000000000 --- a/app/views/aspects/update.js.erb +++ /dev/null @@ -1,5 +0,0 @@ -$(document).ready(function() { - var newName = "<%= @aspect.name %>" - $("#aspect_name").val( newName ); - $("*[data-guid='<%= @aspect.id %>']").find('.name').html( newName ); -}); diff --git a/app/views/contacts/_aspect_listings.haml b/app/views/contacts/_aspect_listings.haml index c17d7f24d..1ea66012d 100644 --- a/app/views/contacts/_aspect_listings.haml +++ b/app/views/contacts/_aspect_listings.haml @@ -10,7 +10,7 @@ = my_contacts_count %ul.sub_nav - - for aspect in all_aspects + - all_aspects.each do |aspect| %li{:data => {:aspect_id => aspect.id}, :class => ("active" if params["a_id"].to_i == aspect.id)} %a.aspect_selector{:href => contacts_path(:a_id => aspect.id)} = aspect diff --git a/app/views/contacts/_contact.html.haml b/app/views/contacts/_contact.html.haml new file mode 100644 index 000000000..79797990c --- /dev/null +++ b/app/views/contacts/_contact.html.haml @@ -0,0 +1,10 @@ +.stream_element{:id => contact.person_id} + .float-right + = contact_aspect_dropdown(contact) + .media + .img + = person_image_link(contact.person, :size => :thumb_small) + .bd + = person_link(contact.person) + .info + = contact.person_diaspora_handle diff --git a/app/views/contacts/index.html.haml b/app/views/contacts/index.html.haml index 57f8232d1..fa0e678c0 100644 --- a/app/views/contacts/index.html.haml +++ b/app/views/contacts/index.html.haml @@ -16,32 +16,14 @@ .span-18.last #people_stream.stream.contacts - - if @aspect - #aspect_controls - - suggested_limit = 16 - - conv_opts = { :class => "button conversation_button", :rel => "facebox"} - - conv_opts[:title] = t('.many_people_are_you_sure', :suggested_limit => suggested_limit) if @contacts.size > suggested_limit - - - if @contacts.size < 20 - = link_to t('.start_a_conversation'), new_conversation_path(:aspect_id => @aspect.id, :name => @aspect.name), conv_opts - - if @contacts.size + - if @contacts_size > 0 + - if @aspect + #aspect_controls + - if @contacts_size < 20 + = start_a_conversation_link(@aspect, @contacts_size) = link_to t('.add_to_aspect', :name => @aspect.name), edit_aspect_path(@aspect), :rel => "facebox" - - if @contacts.size > 0 - - for contact in @contacts - .stream_element{:id => contact.person_id} - - .float-right - = contact_aspect_dropdown(contact) - - .media - .img - = person_image_link(contact.person) - - .bd - = person_link(contact.person) - .info - = contact.person_diaspora_handle + = render @contacts = will_paginate @contacts - else diff --git a/app/views/contacts/spotlight.haml b/app/views/contacts/spotlight.haml index da61f96e4..39a1c5588 100644 --- a/app/views/contacts/spotlight.haml +++ b/app/views/contacts/spotlight.haml @@ -18,7 +18,7 @@ - if AppConfig.settings.community_spotlight.suggest_email.present? .right - = link_to "Suggest a member", "mailto:#{AppConfig.settings.community_spotlight.suggest_email}", :class => "button" + = link_to t('contacts.spotlight.suggest_member'), "mailto:#{AppConfig.settings.community_spotlight.suggest_email}", :class => "button" %h3 = t('contacts.spotlight.community_spotlight') diff --git a/app/views/conversations/_show.haml b/app/views/conversations/_show.haml index 6586340f5..2b9a1c43c 100644 --- a/app/views/conversations/_show.haml +++ b/app/views/conversations/_show.haml @@ -10,7 +10,7 @@ = conversation.subject - for participant in conversation.participants - = person_image_link(participant) + = person_image_link(participant, :size => :thumb_small) .span-15.last .stream diff --git a/app/views/conversations/index.mobile.haml b/app/views/conversations/index.mobile.haml index 9f45d082c..68ea4c8a7 100644 --- a/app/views/conversations/index.mobile.haml +++ b/app/views/conversations/index.mobile.haml @@ -5,6 +5,12 @@ .right = link_to t('.new_message'), new_conversation_path, :class => 'btn' +- flash.each do |name, msg| + %div{:id => "flash_#{name}", :class => "expose"} + .message= msg + .stream + %p{:class => "conversation_#{name}"}= msg + %h3 = t('.inbox') diff --git a/app/views/conversations/show.js.erb b/app/views/conversations/show.js.erb index 767b22ad1..e0009ea26 100644 --- a/app/views/conversations/show.js.erb +++ b/app/views/conversations/show.js.erb @@ -4,4 +4,6 @@ $(".stream_element", "#conversation_inbox").removeClass('selected'); $(".stream_element[data-guid='<%= @conversation.id %>']", "#conversation_inbox").addClass('selected'); $(".stream_element[data-guid='<%= @conversation.id %>']", "#conversation_inbox").find(".unread_message_count").remove() +$("html").scrollTop($('#first_unread').offset().top-45); + Diaspora.page.timeAgo.updateTimeAgo(); diff --git a/app/views/invitations/edit.html.haml b/app/views/invitations/edit.html.haml deleted file mode 100644 index e208b613f..000000000 --- a/app/views/invitations/edit.html.haml +++ /dev/null @@ -1,47 +0,0 @@ -= javascript_include_tag "validation" -= javascript_tag "Diaspora.Page = 'InvitationsEdit';" - -.span-7.append-1.prepend-3 - %br - %br - %br - %br - %h1 - = t('welcome') - %h3.accept_invitation_text - = t('.accept_your_invitation') - - flash.each do |name, msg| - %p{:class => "login_#{name}"}= msg - - = image_tag 'diaspora_collage.png', :style => "margin-left:-50px;" - -.span-10 - %br - %br - %br - %br - = form_for(resource, :as => resource_name, :url => invitation_path(resource_name), :html => {:method => :put, :class => 'accept_invitation_form'}, :validate => true) do |f| - %fieldset - .clearfix - %b - = t('username') - = f.text_field :username, :title => t('registrations.new.enter_username') - %span.host_uri - = diaspora_id_host - .clearfix - %b - = t('email') - = f.email_field :email, :title => t('registrations.new.enter_email') - .clearfix - %b - = t('password') - = f.password_field :password, :title => t('registrations.new.enter_password') - .clearfix - %b - = t('password_confirmation') - = f.password_field :password_confirmation, :title => t('registrations.new.enter_password_again') - = f.hidden_field :invitation_token - - .submit_field - = f.submit t('registrations.new.create_my_account'), :class => 'in_aspects' - diff --git a/app/views/invitations/edit.mobile.haml b/app/views/invitations/edit.mobile.haml deleted file mode 100644 index decfe4197..000000000 --- a/app/views/invitations/edit.mobile.haml +++ /dev/null @@ -1,26 +0,0 @@ --# Copyright (c) 2010-2011, Diaspora Inc. This file is --# licensed under the Affero General Public License version 3 or later. See --# the COPYRIGHT file. - - -#login_form - %h3 - = t('.your_account_awaits') - = form_for(resource, :as => resource_name, :url => invitation_path(resource_name), :html => {:method => :put }) do |f| - %p - = f.label :username , t('username') - = f.text_field :username, :title => t('registrations.new.enter_username') - %p - = f.label :email , t('email') - = f.text_field :email, :title => t('registrations.new.enter_email') - %p - = f.label :password , t('password') - = f.password_field :password, :title => t('registrations.new.enter_password') - %p - = f.label :password_confirmation , t('password_confirmation') - = f.password_field :password_confirmation, :title => t('registrations.new.enter_password_again') - = f.hidden_field :invitation_token - - = f.submit t('registrations.new.create_my_account') - %br - = render :partial => "devise/shared/links" diff --git a/app/views/invitations/new.html.haml b/app/views/invitations/new.html.haml index 4f25dbf68..422689f1d 100644 --- a/app/views/invitations/new.html.haml +++ b/app/views/invitations/new.html.haml @@ -19,11 +19,13 @@ = form_tag new_user_invitation_path do %h4 = t('email') - = text_field_tag 'email_inviter[emails]' ,nil, :title => t('.comma_separated_plz'), :placeholder => 'foo@bar.com, max@foo.com...' + = text_field_tag 'email_inviter[emails]', @invalid_emails, :title => t('.comma_separated_plz'), :placeholder => 'foo@bar.com, max@foo.com...' + %p + = t('invitations.create.note_already_sent', :emails => @valid_emails) unless @valid_emails.empty? %br %h4 - = t('.language') + = t('.language') = select_tag('email_inviter[locale]', options_from_collection_for_select(available_language_options, "second", "first", :selected => current_user.language)) %br diff --git a/app/views/invitations/token_not_found.html.haml b/app/views/invitations/token_not_found.html.haml deleted file mode 100644 index 81712492c..000000000 --- a/app/views/invitations/token_not_found.html.haml +++ /dev/null @@ -1,3 +0,0 @@ -.span-15.last - %h2 - = t('devise.invitations.invitation_token_invalid') diff --git a/app/views/layouts/application.html.haml b/app/views/layouts/application.html.haml index af2d720fc..47d94045f 100644 --- a/app/views/layouts/application.html.haml +++ b/app/views/layouts/application.html.haml @@ -46,6 +46,8 @@ = yield(:head) = csrf_meta_tag + = include_gon(:camel_case => true, :namespace => :preloads) + %body = flash_messages @@ -64,7 +66,11 @@ %a{:id=>"back-to-top", :title=>"#{t('.back_to_top')}", :href=>"#"} ⇧ - = render :partial =>'shared/footer' + %footer + .container + %ul#footer_nav + = render :partial =>'shared/links' + = image_tag 'branding/powered_by_diaspora.png', :height => "11px", :width => "145px" = include_chartbeat - = include_mixpanel_guid
\ No newline at end of file + = include_mixpanel_guid diff --git a/app/views/layouts/application.mobile.haml b/app/views/layouts/application.mobile.haml index c335788e9..b61f3e34a 100644 --- a/app/views/layouts/application.mobile.haml +++ b/app/views/layouts/application.mobile.haml @@ -52,22 +52,17 @@ - if user_signed_in? #nav_badges - .badge{:class => "badge-inverse", :id => "my_activity_badge"} - = link_to(image_tag('icons/my_activity.png', :height => 16, :width => 16), activity_stream_path) - .badge{:class => "badge-inverse", :id => "notification_badge"} - = link_to(image_tag('icons/notifications_grey.png', :height => 16, :width => 16, :id => 'notification-flag'), notifications_path) - - if current_user.unread_notifications.count > 0 - .badge_count - = current_user.unread_notifications.count - .badge{:class => "badge-inverse", :id => "conversations_badge"} - = link_to(image_tag('icons/mail_grey.png', :height => 11, :width => 17), conversations_path) - - if current_user.unread_message_count > 0 - .badge_count - = current_user.unread_message_count - .badge{:class => "badge-inverse", :id => "people_badge"} - = link_to(image_tag('icons/search_grey.png', :height => 14, :width => 14), people_path) - .badge{:class => "badge-inverse", :id => "contacts_badge"} - = link_to(image_tag('icons/user_grey.png', :height => 16, :width => 16), contacts_path) + = link_to(image_tag('icons/my_activity.png', :height => 16, :width => 16), activity_stream_path, :class => "badge badge-inverse", :id => "my_activity_badge") + = link_to(image_tag('icons/notifications_grey.png', :height => 16, :width => 16, :id => 'notification-flag'), notifications_path, :class => "badge badge-inverse", :id => "notification_badge") + - if current_user.unread_notifications.count > 0 + .badge_count{:id => "notification"} + = current_user.unread_notifications.count + = link_to(image_tag('icons/mail_grey.png', :height => 11, :width => 17), conversations_path, :class => "badge badge-inverse", :id => "conversations_badge") + - if current_user.unread_message_count > 0 + .badge_count{:id => "conversation"} + = current_user.unread_message_count + = link_to(image_tag('icons/search_grey.png', :height => 14, :width => 14), people_path, :class => "badge badge-inverse", :id => "people_badge") + = link_to(image_tag('icons/user_grey.png', :height => 16, :width => 16), contacts_path, :class => "badge badge-inverse", :id => "contacts_badge") - if yield(:header_action).present? = yield(:header_action) - else diff --git a/app/views/layouts/main_stream.html.haml b/app/views/layouts/main_stream.html.haml index 4aa30e9fd..bee63d6b8 100644 --- a/app/views/layouts/main_stream.html.haml +++ b/app/views/layouts/main_stream.html.haml @@ -33,12 +33,10 @@ %li = link_to t("streams.activity.title"), activity_stream_path, :class => 'home_selector', :rel => 'backbone' - %ul.left_nav.sub + %ul.left_nav %li = link_to t('streams.mentions.title'), mentioned_stream_path, :class => 'home_selector', :rel => 'backbone' - %br - %ul.left_nav %li = link_to t("streams.multi.title"), stream_path, :class => 'home_selector', :rel => 'backbone' diff --git a/app/views/likes/_likes_container.haml b/app/views/likes/_likes_container.haml deleted file mode 100644 index 1c175bf55..000000000 --- a/app/views/likes/_likes_container.haml +++ /dev/null @@ -1,12 +0,0 @@ --# Copyright (c) 2010-2011, Diaspora Inc. This file is --# licensed under the Affero General Public License version 3 or later. See --# the COPYRIGHT file. - -- if likes_count > 0 - = image_tag('icons/heart.png') - - if target_type == "Comment" - = link_to t('likes.likes.people_like_this_comment', :count => likes_count), comment_likes_path(target_id), :class => "expand_likes" - - else - = link_to t('likes.likes.people_like_this', :count => likes_count), post_likes_path(target_id), :class => "expand_likes" - %span.hidden.likes_list - diff --git a/app/views/messages/_message.haml b/app/views/messages/_message.haml index aeb265a57..12607e024 100644 --- a/app/views/messages/_message.haml +++ b/app/views/messages/_message.haml @@ -2,14 +2,14 @@ -# licensed under the Affero General Public License version 3 or later. See -# the COPYRIGHT file. -.stream_element{:data=>{:guid=>message.id}} +.stream_element{:data=>{:guid=>message.id}, :id => ('first_unread' if @first_unread_message_id == message.id)} .media .img = person_image_link(message.author, :size => :thumb_small) .bd = person_link(message.author, :class => 'author from') %time.timeago{:datetime => message.created_at} - = how_long_ago(message) + = t('ago', :time => time_ago_in_words(message.created_at)) %div{ :class => direction_for(message.text) } - = markdownify(message, :oembed => true)
\ No newline at end of file + = markdownify(message, :oembed => true) diff --git a/app/views/notifications/_notify_popup_item.haml b/app/views/notifications/_notify_popup_item.haml index b1a74de70..b761f9bcd 100644 --- a/app/views/notifications/_notify_popup_item.haml +++ b/app/views/notifications/_notify_popup_item.haml @@ -1,6 +1,6 @@ .notification_element{:data=>{:guid => n.id}, :class => (n.unread ? "unread" : "read")} - %img{:src => n.actors.first.image_url(:thumb_medium)} - = notification_message_for(n) + = person_image_tag n.actors.first, :thumb_small + = notification_message_for(n) %div %time = timeago(n.created_at) diff --git a/app/views/notifications/_popup.haml b/app/views/notifications/_popup.haml deleted file mode 100644 index e92758203..000000000 --- a/app/views/notifications/_popup.haml +++ /dev/null @@ -1,6 +0,0 @@ --# Copyright (c) 2010-2011, Diaspora Inc. This file is --# licensed under the Affero General Public License version 3 or later. See --# the COPYRIGHT file. -.notification - = person_image_tag(person) - = notification_message_for(note) diff --git a/app/views/notifications/index.html.haml b/app/views/notifications/index.html.haml index c6f57f766..afbacb82c 100644 --- a/app/views/notifications/index.html.haml +++ b/app/views/notifications/index.html.haml @@ -24,6 +24,7 @@ .media .bd + = person_image_tag note.actors.first, :thumb_medium = notification_message_for(note) %div %time diff --git a/app/views/notifications/index.mobile.haml b/app/views/notifications/index.mobile.haml index c19d28b47..24b4ed4c0 100644 --- a/app/views/notifications/index.mobile.haml +++ b/app/views/notifications/index.mobile.haml @@ -12,11 +12,10 @@ = day %ul.notifications_for_day - notes.each do |note| - .stream_element{:data=>{:guid => note.id}, :class => "#{note.unread ? 'unread' : ''}"} - - = person_image_link(note.actors.last) + .stream_element{:data=>{:guid => note.id}, :class => "#{note.unread ? 'unread' : 'read'}"} .content + =person_image_link(note.actors.last) %span.from = notification_message_for(note) .time diff --git a/app/views/people/_add_contact_small.haml b/app/views/people/_add_contact_small.haml deleted file mode 100644 index 16f548a0e..000000000 --- a/app/views/people/_add_contact_small.haml +++ /dev/null @@ -1,9 +0,0 @@ -- if current_user.can_add?(person) - .add_contact - = link_to image_tag("icons/monotone_plus_add_round.png"), - {:controller => "contacts", - :action => "new", - :person_id => person.id}, - :alt => t('.add_contact_from_tag'), - :class => 'button', - :rel => 'facebox' diff --git a/app/views/people/_aspect_list.haml b/app/views/people/_aspect_list.haml deleted file mode 100644 index 90bb6b5ac..000000000 --- a/app/views/people/_aspect_list.haml +++ /dev/null @@ -1,20 +0,0 @@ --# Copyright (c) 2010-2011, Diaspora Inc. This file is --# licensed under the Affero General Public License version 3 or later. See --# the COPYRIGHT file. - -- content_for :head do - =javascript_include_tag 'contact-list' -.aspects - - / TODO(*) add following method in contact - - if contact && contact.persisted? - .badges{:class => ("hidden" if !contact.persisted?)} - = aspect_badges(aspects_with_person, :link => true) - %p - = link_to t('.edit_membership'), - {:controller => "contacts", - :action => "edit", - :id => contact.id, - :person_id => person.id}, - :class => 'button', - :rel => 'facebox' diff --git a/app/views/people/_person.mobile.haml b/app/views/people/_person.mobile.haml index 2a8b17520..806dd2c2d 100644 --- a/app/views/people/_person.mobile.haml +++ b/app/views/people/_person.mobile.haml @@ -3,9 +3,9 @@ -# the COPYRIGHT file. .stream_element{:id => person.id} - = person_image_link(person) .content + =person_image_link(person) %span.from =person_link(person) diff --git a/app/views/people/_profile_photo_upload.html.haml b/app/views/people/_profile_photo_upload.html.haml deleted file mode 100644 index 4586ff2c2..000000000 --- a/app/views/people/_profile_photo_upload.html.haml +++ /dev/null @@ -1,14 +0,0 @@ --# Copyright (c) 2010-2011, Diaspora Inc. This file is --# licensed under the Affero General Public License version 3 or later. See --# the COPYRIGHT file. - - -#profile_photo_upload - = owner_image_tag(:thumb_medium) - = file_field_tag 'profile[image]' - - -if !@aspect.nil? && @aspect != :getting_started - %p - \...#{t('photos.new_profile_photo.or_select_one')} - = link_to t('_photos'), person_photos_path(@person) - diff --git a/app/views/people/_sub_header.html.haml b/app/views/people/_sub_header.html.haml index 1ad0a048d..d72e5a92f 100644 --- a/app/views/people/_sub_header.html.haml +++ b/app/views/people/_sub_header.html.haml @@ -15,7 +15,7 @@ = person.name %span.diaspora_handle = person.diaspora_handle - = last_post_link person + = last_visible_post_for person .description - if !person.tag_string.blank? && user_signed_in? @@ -29,5 +29,7 @@ = t('.you_have_no_tags') %span.add_tags = link_to t('.add_some'), edit_profile_path - + - if user_signed_in? && person == current_user.person && current_page?(controller: :people, action: :show) + %hr + = render 'aspects/aspect_stream', :stream => @stream %hr diff --git a/app/views/people/experimental.erb b/app/views/people/experimental.erb deleted file mode 100644 index e69de29bb..000000000 --- a/app/views/people/experimental.erb +++ /dev/null diff --git a/app/views/people/index.mobile.haml b/app/views/people/index.mobile.haml index 71ccae73a..d3aefacdd 100644 --- a/app/views/people/index.mobile.haml +++ b/app/views/people/index.mobile.haml @@ -5,11 +5,11 @@ - content_for :page_title do = t('search') -%div{:style => 'text-align:center;'} +.search-mobile = form_tag(people_path, :method => 'get') do %div{:data => {:role => 'fieldcontain', :inline => 'true'}} - = search_field_tag :q, nil, :placeholder => t('find_people') - = submit_tag t('search'), 'data-inline' => 'true' + = search_field_tag :q, nil, :placeholder => t('find_people'), :class => 'search' + = submit_tag t('search'), 'data-inline' => 'true', :class => 'btn' - if params[:q].blank? diff --git a/app/views/people/show.html.haml b/app/views/people/show.html.haml index 57e3b9a5d..a2b18ca21 100644 --- a/app/views/people/show.html.haml +++ b/app/views/people/show.html.haml @@ -5,8 +5,9 @@ - content_for :head do = javascript_include_tag :people - :javascript - Mentions.options.prefillMention = Mentions._contactToMention(#{j @person.to_json}); + - if user_signed_in? && @person != current_user.person + :javascript + Mentions.options.prefillMention = Mentions._contactToMention(#{j @person.to_json}); - content_for :page_title do = @person.name diff --git a/app/views/people/show.mobile.haml b/app/views/people/show.mobile.haml index b6b6aa7b5..28cf9a18b 100644 --- a/app/views/people/show.mobile.haml +++ b/app/views/people/show.mobile.haml @@ -39,5 +39,6 @@ - else #main_stream %div{:style=>"text-align:center;", :class => "dull"} + - if user_signed_in? && (current_user.person != @person) = t('.has_not_shared_with_you_yet', :name => @person.first_name) diff --git a/app/views/photos/_new_photo.haml b/app/views/photos/_new_photo.haml index b4aec04b3..643b2d21c 100644 --- a/app/views/photos/_new_photo.haml +++ b/app/views/photos/_new_photo.haml @@ -17,6 +17,8 @@ sizeLimit: 4194304, onProgress: function(id, fileName, loaded, total){ + var progress = Math.round(loaded / total * 100 ); + $('#fileInfo').text(fileName + ' ' + progress + '%').fadeTo(200, 1); }, messages: { @@ -38,7 +40,7 @@ }, onComplete: function(id, fileName, responseJSON) { - $('#fileInfo').text(fileName + ' completed'); + $('#fileInfo').text(Diaspora.I18n.t("photo_uploader.completed", file=fileName)).fadeTo(2000, 0); var id = responseJSON.data.photo.id, url = responseJSON.data.photo.unprocessed_image.url, currentPlaceholder = $('li.loading').first(); @@ -69,7 +71,7 @@ success: function() { photo.fadeOut(400, function(){ photo.remove(); - if ( $('.publisher_photo').length == 0){ + if ( $('.publisher_photo').length == 0){ app.publisher.el_wrapper.removeClass("with_attachments"); } }); @@ -84,4 +86,4 @@ }); } - createUploader();
\ No newline at end of file + createUploader(); diff --git a/app/views/photos/_new_profile_photo.mobile.haml b/app/views/photos/_new_profile_photo.mobile.haml new file mode 100644 index 000000000..4cd9510a6 --- /dev/null +++ b/app/views/photos/_new_profile_photo.mobile.haml @@ -0,0 +1,60 @@ +-# Copyright (c) 2010-2011, Diaspora Inc. This file is +-# licensed under the Affero General Public License version 3 or later. See +-# the COPYRIGHT file. + +- content_for :head do + :javascript + function createUploader(){ + var uploader = new qq.FileUploaderBasic({ + element: document.getElementById('file-upload'), + params: {'photo' : {'pending' : true, 'aspect_ids' : "all", 'set_profile_photo': true}}, + allowedExtensions: ['jpg', 'jpeg', 'png'], + action: "#{photos_path}", + button: document.getElementById('file-upload'), + sizeLimit: 4194304, + + onProgress: function(id, fileName, loaded, total){ + var progress = Math.round(loaded / total * 100 ); + $('#fileInfo').text(fileName + ' ' + progress + '%'); + }, + + messages: { + typeError: "#{t('photos.new_photo.invalid_ext')}", + sizeError: "#{t('photos.new_photo.size_error')}", + emptyError: "#{t('photos.new_photo.empty')}" + }, + + onSubmit: function(id, fileName){ + $('#file-upload').addClass("loading"); + $("#profile_photo_upload").find(".avatar").addClass('loading'); + $("#file-upload-spinner").removeClass("hidden"); + }, + + onComplete: function(id, fileName, result){ + $("#file-upload-spinner").addClass("hidden"); + $('#fileInfo').text(fileName + ' completed').fadeOut(2000); + $('#file-upload').removeClass("loading"); + location.reload(); + } + }); + } + window.onload = createUploader; + +#profile_photo_upload + = owner_image_tag(:thumb_medium) + + -if !aspect.nil? && aspect == :getting_started + %br + %br + + #file-upload.button + =t('.upload') + + = image_tag('mobile-spinner.gif', :class => 'hidden', :style => "z-index:-1", :id => 'file-upload-spinner') + + %br + %br + %p + #fileInfo + + #publisher_photo_upload diff --git a/app/views/profiles/_edit.mobile.haml b/app/views/profiles/_edit.mobile.haml new file mode 100644 index 000000000..8442536e9 --- /dev/null +++ b/app/views/profiles/_edit.mobile.haml @@ -0,0 +1,54 @@ +-# Copyright (c) 2010-2011, Diaspora Inc. This file is +-# licensed under the Affero General Public License version 3 or later. See +-# the COPYRIGHT file. + +- content_for :page_title do + = t('.edit_profile') + += form_tag profile_path, :method => :put, :multipart => true, :id => 'update_profile_form' do + = render 'profiles/edit_public', :profile => profile, :aspect => aspect, :person => person + + %hr + %h4 + = t('profiles.edit.your_private_profile') + + + %h4 + = t('profiles.edit.your_bio') + = text_area_tag 'profile[bio]', profile.bio, :rows => 5, :placeholder => t('fill_me_out') + + %h4 + = t('profiles.edit.your_location') + = text_field_tag 'profile[location]', profile.location, :placeholder => t('fill_me_out') + + + %br + + %h4 + = t('profiles.edit.your_gender') + = text_field_tag 'profile[gender]', profile.gender, :placeholder => t("fill_me_out") + + %br + + %h4 + = t('profiles.edit.your_birthday') + = select_date profile.birthday, :prompt => true, + :default => true, :order => t('date.order'), :start_year => 2000, :end_year => 1930, :prefix => 'profile[date]' + + %h4 + = t('search') + + %p{:class=>"checkbox_select"} + = label_tag 'profile[searchable]', t('profiles.edit.allow_search') + = check_box_tag 'profile[searchable]', true, profile.searchable + %br + + %h4= t('nsfw') + %p.nsfw_explanation=profile.nsfw? ? t('.you_are_nsfw') : t('.you_are_safe_for_work') + %p{:class=>"checkbox_select"} + = check_box_tag 'profile[nsfw]', true, profile.nsfw? + = label_tag 'profile[nsfw]', "nsfw?" + %br + + .submit_block + =yield(:submit_block) diff --git a/app/views/profiles/_edit_public.haml b/app/views/profiles/_edit_public.haml index 89a59ad5e..39df8f72a 100644 --- a/app/views/profiles/_edit_public.haml +++ b/app/views/profiles/_edit_public.haml @@ -12,10 +12,11 @@ autocompleteInput.autoSuggest("#{tags_path}", { selectedItemProp: "name", + selectedValuesProp: "name", searchObjProps: "name", asHtmlID: "tags", neverSubmit: true, - retriveLimit: 10, + retrieveLimit: 10, minChars: 2, keyDelay: 200, startText: "", diff --git a/app/views/profiles/_edit_public.mobile.haml b/app/views/profiles/_edit_public.mobile.haml new file mode 100644 index 000000000..635c905f0 --- /dev/null +++ b/app/views/profiles/_edit_public.mobile.haml @@ -0,0 +1,72 @@ +-# Copyright (c) 2010-2011, Diaspora Inc. This file is +-# licensed under the Affero General Public License version 3 or later. See +-# the COPYRIGHT file. + +- content_for :head do + = javascript_include_tag :jquery + = javascript_include_tag :home + + :javascript + $(document).ready(function () { + var data = $.parseJSON( '#{@tags_array.to_json.gsub("'", "\\\\'")}' ), + autocompleteInput = $("#profile_tag_string"); + + autocompleteInput.autoSuggest("#{tags_path}", { + selectedItemProp: "name", + selectedValuesProp: "name", + searchObjProps: "name", + asHtmlID: "tags", + neverSubmit: true, + retrieveLimit: 10, + minChars: 2, + keyDelay: 200, + startText: "", + emptyText: "#{t('no_results')}", + preFill: data + }); + + autocompleteInput.bind('keydown', function(evt){ + if(evt.keyCode == 13 || evt.keyCode == 9 || evt.keyCode == 32){ + evt.preventDefault(); + if( $('li.as-result-item.active').length == 0 ){ + $('li.as-result-item').first().click(); + } + } + }); + }); + +.stream + - flash.each do |name, msg| + %div{:id => "flash_#{name}", :class => "expose"} + .message= msg + .stream + %p{:class => "conversation_#{name}"}= msg + +%h4 + = t('profiles.edit.your_public_profile') + += error_messages_for profile + +%h4 + = t('profiles.edit.your_name') += label_tag 'profile[first_name]', t('profiles.edit.first_name') += text_field_tag 'profile[first_name]', profile.first_name, :placeholder => "Raphael" + += label_tag 'profile[first_name]', t('profiles.edit.last_name') += text_field_tag 'profile[last_name]', profile.last_name, :placeholder => "Sofaer" + +%br + +%h4 + = t('profiles.edit.your_tags') + += text_field_tag 'profile[tag_string]', "", :placeholder => t('profiles.edit.your_tags_placeholder') + +%br + +%h4 + = t('profiles.edit.your_photo') + += render 'photos/new_profile_photo', :aspect => aspect, :person => person + +%br diff --git a/app/views/profiles/edit.mobile.haml b/app/views/profiles/edit.mobile.haml new file mode 100644 index 000000000..b07788b3a --- /dev/null +++ b/app/views/profiles/edit.mobile.haml @@ -0,0 +1,16 @@ +-# Copyright (c) 2010-2011, Diaspora Inc. This file is +-# licensed under the Affero General Public License version 3 or later. See +-# the COPYRIGHT file. + + +#section_header + %h3 + = t('settings') + = render 'shared/settings_nav' + +.span-12.prepend-5.last + - content_for :submit_block do + = link_to t('cancel'), local_or_remote_person_path(current_user.person), :class => "button" + = submit_tag t('.update_profile'), :class => "btn" + = render :partial => 'edit', :locals => {:person => @person, + :profile => @profile, :aspect => @aspect, :step => @step} diff --git a/app/views/registrations/new.mobile.haml b/app/views/registrations/new.mobile.haml index 856439250..339affcfa 100644 --- a/app/views/registrations/new.mobile.haml +++ b/app/views/registrations/new.mobile.haml @@ -9,7 +9,7 @@ :css div.navbar.navbar-fixed-top{ display:none;} body{ padding: 10px;} - legend{ background-image: url(/assets/header-bg-long.jpg); color: #939393;} + #flash_error .message{ padding: 1px 1px 1px;} .stream - flash.each do |name, msg| diff --git a/app/views/requests/_new_request_to_person.haml b/app/views/requests/_new_request_to_person.haml deleted file mode 100644 index 31a75df78..000000000 --- a/app/views/requests/_new_request_to_person.haml +++ /dev/null @@ -1,11 +0,0 @@ --# Copyright (c) 2010-2011, Diaspora Inc. This file is --# licensed under the Affero General Public License version 3 or later. See --# the COPYRIGHT file. - -%div{:id => destination_handle} - = form_for(Request.new, :remote => true ) do |request| - = request.select(:into, options_from_collection_for_select(aspects, "id", "name")) - = request.hidden_field :to, :value => destination_handle - = request.submit t('people.person.add_contact'), 'data-disable-with' => t('requests.create.sending') - .message.hidden - %i= t('.sent') diff --git a/app/views/requests/_new_request_with_aspect_to_person.haml b/app/views/requests/_new_request_with_aspect_to_person.haml deleted file mode 100644 index 2edeb9f76..000000000 --- a/app/views/requests/_new_request_with_aspect_to_person.haml +++ /dev/null @@ -1,11 +0,0 @@ --# Copyright (c) 2010-2011, Diaspora Inc. This file is --# licensed under the Affero General Public License version 3 or later. See --# the COPYRIGHT file. - -%div{:id => destination_handle} - = form_for Request.new, :remote => true do |request| - = request.hidden_field :into, :value => "changeme" - = request.hidden_field :to, :value => destination_handle - = request.submit '+', :class => 'add', 'data-disable-with' => t('requests.create.sending') - .message.hidden - %i= t('requests.new_request_to_person.sent') diff --git a/app/views/sessions/new.mobile.haml b/app/views/sessions/new.mobile.haml index e4a9c87bf..b9b1560a0 100644 --- a/app/views/sessions/new.mobile.haml +++ b/app/views/sessions/new.mobile.haml @@ -6,7 +6,7 @@ :css body{ padding: 10px; margin: 0px 10px;} - #flash_alert .message{ min-width: 200px; max-width: 400px;} + #flash_alert .message{ padding: 10px 12px 8px;} footer{ padding-top: 0;} .landing{ padding: 20px; margin: -10px -20px 10px -20px; background-color:#4b4b4b; box-shadow: 0 3px 40px rgba(0,0,0,0.8); z-index: 10; position: relative; text-align: center;} h1{ font-size: 40px; font-weight: 200;} diff --git a/app/views/shared/_add_remove_services.haml b/app/views/shared/_add_remove_services.haml index d44d892ca..32ea14d50 100644 --- a/app/views/shared/_add_remove_services.haml +++ b/app/views/shared/_add_remove_services.haml @@ -15,5 +15,5 @@ = t('services.index.no_services') - AppConfig.configured_services.each do |service| - - unless @services.any?{|x| x.provider == service} + - unless @services.any?{|x| x.provider == service.to_s} %h4= link_to(t("services.index.connect_to_#{service}"), "/auth/#{service}") diff --git a/app/views/shared/_aspect_dropdown.html.haml b/app/views/shared/_aspect_dropdown.html.haml index 1f278cdd6..baae64f8c 100644 --- a/app/views/shared/_aspect_dropdown.html.haml +++ b/app/views/shared/_aspect_dropdown.html.haml @@ -15,7 +15,7 @@ .wrapper %ul.dropdown_list{:unSelectable => 'on', 'data-person_id' => (person.id if defined?(person) && person), 'data-service_uid' => (service_uid if defined?(service_uid)), 'data-person-short-name' => (person.first_name if defined?(person) && person)} - for aspect in all_aspects - = aspect_dropdown_list_item(aspect, selected_aspects.include?(aspect) ) + = aspect_dropdown_list_item(aspect, aspect_membership_ids[aspect.id] ) - if (dropdown_may_create_new_aspect && defined?(person) && person) %li.newItem diff --git a/app/views/shared/_author_info.html.haml b/app/views/shared/_author_info.html.haml deleted file mode 100644 index 168107638..000000000 --- a/app/views/shared/_author_info.html.haml +++ /dev/null @@ -1,9 +0,0 @@ -#author_info.show - = person_image_link(person) - .from - %h5 - = person.name - - #person_nav_links - = link_to t('layouts.header.profile'), local_or_remote_person_path(person) - = link_to t('_photos'), person_photos_path(person) diff --git a/app/views/shared/_author_info.mobile.haml b/app/views/shared/_author_info.mobile.haml deleted file mode 100644 index e36dc40cc..000000000 --- a/app/views/shared/_author_info.mobile.haml +++ /dev/null @@ -1,6 +0,0 @@ -#author_info.show - .thumb_small= person_image_tag(person, :thumb_small) - = link_to person.name, person - %br - .diaspora_handle - = person.diaspora_handle diff --git a/app/views/shared/_footer.html.haml b/app/views/shared/_footer.html.haml deleted file mode 100644 index 1e52630d9..000000000 --- a/app/views/shared/_footer.html.haml +++ /dev/null @@ -1,11 +0,0 @@ -%footer - .container - %ul#footer_nav - %li= link_to '@joindiaspora', "http://twitter.com/joindiaspora" - %li= link_to 'github', "https://github.com/diaspora/diaspora" - %li= link_to t('layouts.header.blog'), "http://blog.joindiaspora.com" - %li= link_to t('layouts.application.whats_new'), 'https://github.com/diaspora/diaspora/wiki/Changelog' - %li.separator= "|" - %li= link_to(t('layouts.header.code'), "#{root_path.chomp('/')}/source.tar.gz", {:title => t('layouts.application.source_package')}) unless request.url.match(/joindiaspora.com/) - %li= link_to(t('layouts.application.toggle'), toggle_mobile_path) - = image_tag 'branding/powered_by_diaspora.png', :height => "11px", :width => "145px"
\ No newline at end of file diff --git a/app/views/shared/_footer.mobile.haml b/app/views/shared/_footer.mobile.haml index bc7fd2a8e..a35b88cdf 100644 --- a/app/views/shared/_footer.mobile.haml +++ b/app/views/shared/_footer.mobile.haml @@ -1,5 +1,6 @@ %footer %strong = link_to current_user.name, current_user.person + = link_to t('layouts.header.settings'), users_edit_path = link_to t('layouts.application.toggle'), toggle_mobile_path = link_to t('layouts.header.logout'), destroy_user_session_path diff --git a/app/views/shared/_links.haml b/app/views/shared/_links.haml new file mode 100644 index 000000000..074ec453d --- /dev/null +++ b/app/views/shared/_links.haml @@ -0,0 +1,6 @@ +%li= link_to '@joindiaspora', "http://twitter.com/joindiaspora" +%li= link_to 'github', "https://github.com/diaspora/diaspora" +%li= link_to t('layouts.header.blog'), "http://blog.diasporafoundation.org/" +%li= link_to t('layouts.application.whats_new'), changelog_url +%li= link_to(t('layouts.header.code') + " " + pod_version, "#{root_path.chomp('/')}/source.tar.gz", {:title => t('layouts.application.source_package')}) unless request.url.match(/joindiaspora.com/) +%li= link_to(t('layouts.application.toggle'), toggle_mobile_path) diff --git a/app/views/shared/_mail_signup_form.erb b/app/views/shared/_mail_signup_form.erb deleted file mode 100644 index e6ae05cb4..000000000 --- a/app/views/shared/_mail_signup_form.erb +++ /dev/null @@ -1,126 +0,0 @@ - -<!-- Begin MailChimp Signup Form --> -<%= javascript_include_tag :mailchimp %> -<div id="mc_embed_signup"> -<form action="http://joindiaspora.us1.list-manage.com/subscribe/post?u=d759919b94f9cdcf39d204f3f&id=7b5ceb2f8b" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank"> - -<div class="mc-field-group"> -<input type="text" value="" name="EMAIL" class="required email" placeholder="Email" id="mce-EMAIL"> -</div> - <div><input type="submit" value="<%= t('devise.shared.mail_signup_form.sign_up_for_an_invite') %>" name="subscribe" id="mc-embedded-subscribe" class="btn"></div> - <div id="mce-responses"> - <div class="response" id="mce-error-response" style="display:none"></div> - <div class="response" id="mce-success-response" style="display:none"></div> - </div> -</form> -</div> - -<script type="text/javascript"> -var fnames = new Array();var ftypes = new Array();fnames[0]='EMAIL';ftypes[0]='email';fnames[3]='MMERGE3';ftypes[3]='text';fnames[4]='MMERGE4';ftypes[4]='text';var err_style = ''; -try{ - err_style = mc_custom_error_style; -} catch(e){ - err_style = 'margin: 1em 0 0 0; padding: 1em 0.5em 0.5em 0.5em; background: ERROR_BGCOLOR none repeat scroll 0% 0%; font-weight: bold; float: left; z-index: 1; width: 80%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; color: ERROR_COLOR;'; -} -var mce_jQuery = jQuery.noConflict(); -mce_jQuery(document).ready( function($) { - var options = { errorClass: 'mce_inline_error', errorElement: 'div', errorStyle: err_style, onkeyup: function(){}, onfocusout:function(){}, onblur:function(){} }; - var mce_validator = mce_jQuery("#mc-embedded-subscribe-form").validate(options); - options = { url: 'http://joindiaspora.us1.list-manage2.com/subscribe/post-json?u=d759919b94f9cdcf39d204f3f&id=7b5ceb2f8b&c=?', type: 'GET', dataType: 'json', contentType: "application/json; charset=utf-8", - beforeSubmit: function(){ - mce_jQuery('#mce_tmp_error_msg').remove(); - mce_jQuery('.datefield','#mc_embed_signup').each( - function(){ - var txt = 'filled'; - var fields = new Array(); - var i = 0; - mce_jQuery(':text', this).each( - function(){ - fields[i] = this; - i++; - }); - mce_jQuery(':hidden', this).each( - function(){ - if ( fields[0].value=='MM' && fields[1].value=='DD' && fields[2].value=='YYYY' ){ - this.value = ''; - } else if ( fields[0].value=='' && fields[1].value=='' && fields[2].value=='' ){ - this.value = ''; - } else { - this.value = fields[0].value+'/'+fields[1].value+'/'+fields[2].value; - } - }); - }); - return mce_validator.form(); - }, - success: mce_success_cb - }; - mce_jQuery('#mc-embedded-subscribe-form').ajaxForm(options); - -}); -function mce_success_cb(resp){ - mce_jQuery('#mce-success-response').hide(); - mce_jQuery('#mce-error-response').hide(); - if (resp.result=="success"){ - mce_jQuery('#mce-'+resp.result+'-response').show(); - mce_jQuery('#mce-'+resp.result+'-response').html(resp.msg); - mce_jQuery('#mc-embedded-subscribe-form').each(function(){ - this.reset(); - }); - } else { - var index = -1; - var msg; - try { - var parts = resp.msg.split(' - ',2); - if (parts[1]==undefined){ - msg = resp.msg; - } else { - i = parseInt(parts[0]); - if (i.toString() == parts[0]){ - index = parts[0]; - msg = parts[1]; - } else { - index = -1; - msg = resp.msg; - } - } - } catch(e){ - index = -1; - msg = resp.msg; - } - try{ - if (index== -1){ - mce_jQuery('#mce-'+resp.result+'-response').show(); - mce_jQuery('#mce-'+resp.result+'-response').html(msg); - } else { - err_id = 'mce_tmp_error_msg'; - html = '<div id="'+err_id+'" style="'+err_style+'"> '+msg+'</div>'; - - var input_id = '#mc_embed_signup'; - var f = mce_jQuery(input_id); - if (ftypes[index]=='address'){ - input_id = '#mce-'+fnames[index]+'-addr1'; - f = mce_jQuery(input_id).parent().parent().get(0); - } else if (ftypes[index]=='date'){ - input_id = '#mce-'+fnames[index]+'-month'; - f = mce_jQuery(input_id).parent().parent().get(0); - } else { - input_id = '#mce-'+fnames[index]; - f = mce_jQuery().parent(input_id).get(0); - } - if (f){ - mce_jQuery(f).append(html); - mce_jQuery(input_id).focus(); - } else { - mce_jQuery('#mce-'+resp.result+'-response').show(); - mce_jQuery('#mce-'+resp.result+'-response').html(msg); - } - } - } catch(e){ - mce_jQuery('#mce-'+resp.result+'-response').show(); - mce_jQuery('#mce-'+resp.result+'-response').html(msg); - } - } -} -</script> -<!--End mc_embed_signup--> - diff --git a/app/views/shared/_publisher.html.haml b/app/views/shared/_publisher.html.haml index 617783965..54c1e147b 100644 --- a/app/views/shared/_publisher.html.haml +++ b/app/views/shared/_publisher.html.haml @@ -14,6 +14,7 @@ = status.error_messages %div %params + #fileInfo #publisher_textarea_wrapper = link_to( image_tag('deletelabel.png'), "#", :id => "hide_publisher", :title => t('.discard_post')) %ul#photodropzone diff --git a/app/views/shared/_right_sections.html.haml b/app/views/shared/_right_sections.html.haml index 565e15dcd..fde995a24 100644 --- a/app/views/shared/_right_sections.html.haml +++ b/app/views/shared/_right_sections.html.haml @@ -81,3 +81,21 @@ = t('aspects.index.keep_diaspora_running') %br = render 'shared/donatediaspora' + +- if AppConfig.admins.podmin_email.present? + .section + .title + = image_tag('icons/mail.png') + %h5 + = t('aspects.index.help.any_problem') + .content + = t('aspects.index.help.contact_podmin') + %br + %br + = link_to t('aspects.index.help.mail_podmin'), "mailto:#{AppConfig.admins.podmin_email}", :class => "button" + +.section + .title + %ul.content + = render "shared/links" + diff --git a/app/views/shared/_settings_nav.mobile.haml b/app/views/shared/_settings_nav.mobile.haml new file mode 100644 index 000000000..9c673d74c --- /dev/null +++ b/app/views/shared/_settings_nav.mobile.haml @@ -0,0 +1,7 @@ +#span-24 + %h3 + #settings_nav + %ul + %li= link_to_unless_current t('profile'), edit_profile_path + | + %li= link_to_unless_current t('account'), edit_user_path diff --git a/app/views/tags/_followed_tags_listings.haml b/app/views/tags/_followed_tags_listings.haml index d61837c18..defb05517 100644 --- a/app/views/tags/_followed_tags_listings.haml +++ b/app/views/tags/_followed_tags_listings.haml @@ -7,15 +7,4 @@ %li %b=link_to t('streams.followed_tag.title'), followed_tags_stream_path, :class => 'home_selector' - - if @stream.is_a?(Stream::FollowedTag) - %ul.sub_nav - - if tags.size > 0 - - for tg in tags - %li.unfollow{:id => "tag-following-#{tg.name}"} - .unfollow_icon.hidden - = link_to image_tag("icons/monotone_close_exit_delete.png", :height => 16, :title => t('aspects.index.unfollow_tag', :tag => tg.name)), tag_tag_followings_path(:name => tg.name, :remote => true), :data => { :confirm => t('are_you_sure') }, :method => :delete, :remote => true, :id => "unfollow_" + tg.name - = link_to "##{tg.name}", tag_path(:name => tg.name), :class => "tag_selector" - %li - = form_for TagFollowing.new do |tg| - = text_field_tag :name, "", :class => "tag_input", :placeholder => t('streams.followed_tag.add_a_tag') - = tg.submit t('streams.followed_tag.follow'), :class => "button" + %ul.sub_nav#tags_list diff --git a/app/views/tags/show.haml b/app/views/tags/show.haml index 02f11a6b8..d04b53c5c 100644 --- a/app/views/tags/show.haml +++ b/app/views/tags/show.haml @@ -9,27 +9,6 @@ - else = t('.whatup', :pod => @pod_url) -- content_for :head do - = javascript_include_tag :home - :javascript - $(document).ready(function(){ - // Change the text and color of the "follow this tag" button on hover. - $(".button.tag_following").hover(function(){ - $this = $(this); - $this.removeClass("in_aspects"); - $this.val("#{t('.stop_following', :tag => @stream.tag_name)}"); - }, - function(){ - $this = $(this); - $this.addClass("in_aspects"); - $this.val("#{t('.following', :tag => @stream.tag_name)}"); - }); - }); - $(".people_stream .pagination a").live("click", function() { - $.getScript(this.href); - return false; - }); - - content_for :body_class do = "tags_show" @@ -49,12 +28,6 @@ .span-15.last .stream_container #author_info - - if user_signed_in? - .right - - unless tag_followed? - = button_to t('.follow', :tag => @stream.tag_name), tag_tag_followings_path(:name => @stream.tag_name), :method => :post, :class => 'button take_action' - - else - = button_to t('.following', :tag => @stream.tag_name), tag_tag_followings_path(:name => @stream.tag_name), :method => :delete, :class => 'button red_on_hover tag_following in_aspects take_action' %h2 = @stream.display_tag_name %small diff --git a/app/views/users/edit.html.haml b/app/views/users/edit.html.haml index 390d6fb2f..7c8116b9b 100644 --- a/app/views/users/edit.html.haml +++ b/app/views/users/edit.html.haml @@ -197,7 +197,7 @@ %p = t('.close_account.make_diaspora_better') .span-10 - = image_tag 'http://itstrulyrandom.com/wp-content/uploads/2008/03/sadcat.jpg' + = image_tag 'sadcat.jpg' %br %small %b diff --git a/app/views/users/edit.mobile.haml b/app/views/users/edit.mobile.haml new file mode 100644 index 000000000..927444a6e --- /dev/null +++ b/app/views/users/edit.mobile.haml @@ -0,0 +1,207 @@ +-# Copyright (c) 2010-2011, Diaspora Inc. This file is +-# licensed under the Affero General Public License version 3 or later. See +-# the COPYRIGHT file. + +- content_for :page_title do + = t('.edit_account') + +.stream + - flash.each do |name, msg| + %div{:id => "flash_#{name}", :class => "expose"} + .message= msg + .stream + %p{:class => "conversation_#{name}"}= msg + +#section_header + %h3 + = t('settings') + = render 'shared/settings_nav' + +.span-12.prepend-5.last + %hr + + %h4 + = t('.your_handle') + %p + %b= current_user.diaspora_handle + + %h4 + = t('.your_email') + = form_for 'user', :url => user_path, :html => { :method => :put } do |f| + = f.error_messages + %p + = f.text_field :email, :value => @user.unconfirmed_email || @user.email + = f.submit t('.change_email'), :class => "btn" + - if @user.unconfirmed_email.present? + %p= t('.email_awaiting_confirmation', :email => @user.email, :unconfirmed_email => @user.unconfirmed_email) + + %hr + + %h4 + = t('.change_password') + = form_for 'user', :url => user_path, :html => { :method => :put } do |f| + = f.error_messages + %p + = f.label :current_password, t('.current_password') + = f.password_field :current_password, :placeholder => t('.current_password_expl') + %p + = f.label :password, t('.new_password') + = f.password_field :password, :placeholder => t('.character_minimum_expl') + %p + = f.label :password_confirmation, t('password_confirmation') + = f.password_field :password_confirmation, :placeholder => t('.character_minimum_expl') + + .submit_block + = f.submit t('.change_password'), :class => "btn" + + %hr + + %h4 + = t('.change_language') + = form_for 'user', :url => user_path, :html => { :method => :put } do |f| + = f.error_messages + + %p + = f.select :language, available_language_options + = f.submit t('.change_language'), :class => "btn" + + %hr + + %h4#stream-preferences + = t('.stream_preferences') + = form_for current_user, :url => user_path, :html => { :method => :put } do |f| + = f.error_messages + + %p.checkbox_select + = f.label :show_community_spotlight_in_stream, t('.show_community_spotlight') + = f.check_box :show_community_spotlight_in_stream + + %br + = f.submit t('.change'), :class => 'btn' + + %hr + + %h4#auto-follow-back-preferences + = t('.following') + = form_for current_user, :url => user_path, :html => { :method => :put } do |f| + = f.error_messages + + %p.checkbox_select + = f.label :auto_follow_back, t('.auto_follow_back') + = f.check_box :auto_follow_back + %br + %p.checkbox_select + %span{:style => "color: #999"} + = t('.auto_follow_aspect') + = f.select :auto_follow_back_aspect_id, aspect_options_for_select(current_user.aspects) + %br + = f.submit t('.change'), :class => 'btn' + + %hr + + %h4#getting-started-preferences + = t('.show_getting_started') + = form_for current_user, :url => user_path, :html => { :method => :put } do |f| + = f.error_messages + + %p.checkbox_select + = f.label :getting_started, t('.show_getting_started') + = f.check_box :getting_started + %br + = f.submit t('.change'), :class => 'btn' + + %hr + + %h4 + = t('.receive_email_notifications') + = form_for 'user', :url => user_path, :html => { :method => :put } do |f| + = f.error_messages + + = f.fields_for :email_preferences do |type| + #email_prefs + %p.checkbox_select + = type.label :also_commented, t('.also_commented') + = type.check_box :also_commented, {:checked => @email_prefs['also_commented']}, false, true + %br + %p.checkbox_select + = type.label :mentioned, t('.mentioned') + = type.check_box :mentioned, {:checked => @email_prefs['mentioned']}, false, true + + + %br + %p.checkbox_select + = type.label :comment_on_post, t('.comment_on_post') + = type.check_box :comment_on_post, {:checked => @email_prefs['comment_on_post']}, false, true + + %br + %p.checkbox_select + = type.label :private_message, t('.private_message') + = type.check_box :private_message, {:checked => @email_prefs['private_message']}, false, true + + %br + %p.checkbox_select + = type.label :started_sharing, t('.started_sharing') + = type.check_box :started_sharing, {:checked => @email_prefs['started_sharing']}, false, true + + %br + %p.checkbox_select + = type.label :liked, t('.liked') + = type.check_box :liked, {:checked => @email_prefs['liked']}, false, true + + %br + %p.checkbox_select + = type.label :reshared, t('.reshared') + = type.check_box :reshared, {:checked => @email_prefs['reshared']}, false, true + %br + = f.submit t('.change'), :class => "btn" + + %hr + + #account_data.span-5.append-2 + %h4 + = t('.export_data') + = link_to t('.download_xml'), export_user_path, :class => "btn" + %br + %br + = link_to t('.download_photos'), "#", :class => "btn", :id => "photo-export-button", :title => t('.photo_export_unavailable') + + .span-5.last + %h4 + = t('.close_account_text') + =link_to t('.close_account_text'), '#close_account_pane', :rel => 'facebox', :class => "btn" + + .hidden#close_account_pane{:rel => 'facebox'} + #inner_account_delete + %h1 + = t('.close_account.dont_go') + %p + = t('.close_account.make_diaspora_better') + .span-10 + = image_tag 'http://itstrulyrandom.com/wp-content/uploads/2008/03/sadcat.jpg' + %br + %small + %b + = t('.close_account.mr_wiggles') + .span-10.last + %ul + %li + = t('.close_account.what_we_delete') + %li + = t('.close_account.locked_out') + %li + = t('.close_account.lock_username') + %li + = t('.close_account.no_turning_back') + %p + %b + = t('.close_account.no_turning_back') + + + = form_for 'user', :url => user_path, :html => { :method => :delete } do |f| + = f.error_messages + + %p + = f.label :close_account_password, t('.current_password'), :for => :close_account_password + = f.password_field :current_password, :id => :close_account_password + %p + = f.submit t('.close_account_text'), :data => { :confirm => t('are_you_sure_delete_account') } diff --git a/app/views/users/getting_started.haml b/app/views/users/getting_started.haml index 63b0a728a..0e75475ab 100644 --- a/app/views/users/getting_started.haml +++ b/app/views/users/getting_started.haml @@ -63,7 +63,7 @@ .row .span13 - = form_tag(multiple_tag_followings_path, :method => 'post', :class => "tag_input search_form") do + = form_tag(tag_followings_path, :method => 'get', :class => "tag_input search_form") do %fieldset .clearfix = label_tag 'follow_tags', t('.hashtag_suggestions'), :class => "bootstrapped" @@ -75,5 +75,5 @@ %br %br .input - = link_to "#{t('.awesome_take_me_to_diaspora')} »", "#", :id => "awesome_button", :class => "btn primary" + = link_to "#{t('.awesome_take_me_to_diaspora')} »", stream_path, :id => "awesome_button", :class => "btn primary" diff --git a/app/views/users/getting_started.mobile.haml b/app/views/users/getting_started.mobile.haml new file mode 100644 index 000000000..94d2f2ec1 --- /dev/null +++ b/app/views/users/getting_started.mobile.haml @@ -0,0 +1,104 @@ +-# Copyright (c) 2010-2011, Diaspora Inc. This file is +-# licensed under the Affero General Public License version 3 or later. See +-# the COPYRIGHT file. + +- content_for :head do + = javascript_include_tag :jquery, :home + + :javascript + $(document).ready(function () { + var data = $.parseJSON( '#{@tags_array.to_json.gsub("'", "\\\\'")}' ), + autocompleteInput = $("#follow_tags"); + + autocompleteInput.autoSuggest("#{tags_path}", { + selectedItemProp: "name", + selectedValuesProp: "name", + searchObjProps: "name", + asHtmlID: "tags", + neverSubmit: true, + retrieveLimit: 10, + minChars: 2, + keyDelay: 200, + startText: "", + emptyText: "#{t('no_results')}", + preFill: data + }); + + autocompleteInput.bind('keydown', function(evt){ + if(evt.keyCode == 13 || evt.keyCode == 9 || evt.keyCode == 32){ + evt.preventDefault(); + if( $('li.as-result-item.active').length == 0 ){ + $('li.as-result-item').first().click(); + } + } + }); + }); + +:css + .media, .bd{ overflow: visible;} + +%br + +%section#hello-there + .hero-unit-mobile + %h3.center + = t('.well_hello_there') + %p.center + = t(".community_welcome") + + = invited_by_message + + .clearfix + + .clearfix + .row + %h3 + = t(".who_are_you") + + .row + %p + != t('.connect_to_facebook', :link => link_to(t('.connect_to_facebook_link'), "auth/facebook?callback_url=#{getting_started_url}")) + + .row + .span6 + = form_tag profile_path, :method => :put, :remote => true, :id => 'edit_profile' do + %fieldset + .clearfix + = label_tag 'profile[first_name]', t('profiles.edit.your_name'), :class => "bootstrapped" + .input + = text_field_tag 'profile[first_name]', current_user.first_name + = image_tag 'ajax-loader.gif', :id => "gs-name-form-spinner", :class => "hidden" + + %span.saved{:class => "hidden"} + = image_tag 'icons/check_yes_ok.png' + = t(".saved") + + .clearfix + = label_tag :your_photo, t('profiles.edit.your_photo'), :class => "bootstrapped" + = render 'photos/new_profile_photo', :aspect => :getting_started, :person => current_user.person + + .clearfix + .row + %h3 + = t('.what_are_you_in_to') + + .row + %p + = t('.hashtag_explanation') + + .row + .span13 + = form_tag(tag_followings_path, :method => 'get', :class => "tag_input search_form") do + %fieldset + .clearfix + = label_tag 'follow_tags', t('.hashtag_suggestions'), :class => "bootstrapped" + .input + = text_field_tag 'follow_tags', nil, :class => "nostrap" + + .clearfix + %br + %br + %br + .input + = link_to "#{t('.awesome_take_me_to_diaspora')} »", stream_path, :id => "awesome_button", :class => "btn primary" + diff --git a/config/application.rb b/config/application.rb index 2292ce01f..f8b35569c 100644 --- a/config/application.rb +++ b/config/application.rb @@ -2,7 +2,8 @@ # licensed under the Affero General Public License version 3 or later. See # the COPYRIGHT file. -require File.expand_path('../boot', __FILE__) +require 'pathname' +require Pathname.new(__FILE__).expand_path.dirname.join('boot') # Needed for versions of ruby 1.9.2 that were compiled with libyaml. # They use psych by default which doesn't handle having a default set of parameters. @@ -31,12 +32,8 @@ module Diaspora # -- all .rb files in that directory are automatically loaded. # Add additional load paths for your own custom dirs - #config.autoload_paths += %W(#{config.root}/lib) - config.autoload_paths += %W(#{config.root}/lib #{config.root}/app/presenters) - #OMG HAX PLZ FIX MAKE ALL LIB AUTOLOAD KTHNX - config.autoload_paths += %W(#{config.root}/lib/*) - config.autoload_paths += %W(#{config.root}/lib/*/*) - config.autoload_paths += %W(#{config.root}/lib/*/*/*) + config.autoload_paths += %W(#{config.root}/app/presenters) + config.autoload_paths += %W(#{config.root}/lib) # Only load the plugins named here, in the order given (default is alphabetical). # :all can be used as a placeholder for all plugins not explicitly named diff --git a/config/boot.rb b/config/boot.rb index d9ac11c52..5caea9de0 100644 --- a/config/boot.rb +++ b/config/boot.rb @@ -2,17 +2,12 @@ # licensed under the Affero General Public License version 3 or later. See # the COPYRIGHT file. -if RUBY_VERSION.include?("1.9") - require 'yaml' - YAML::ENGINE.yamler= 'syck' -end - -require 'rubygems' +require 'pathname' # Set up gems listed in the Gemfile. -gemfile = File.expand_path('../../Gemfile', __FILE__) +gemfile = Pathname.new(__FILE__).dirname.join('..').expand_path.join('Gemfile') begin - ENV['BUNDLE_GEMFILE'] = gemfile + ENV['BUNDLE_GEMFILE'] = gemfile.to_s require 'bundler' Bundler.setup rescue Bundler::GemNotFound => e diff --git a/config/cucumber.yml b/config/cucumber.yml index 818f68834..cace674ba 100644 --- a/config/cucumber.yml +++ b/config/cucumber.yml @@ -1,8 +1,19 @@ <% -rerun = File.file?('rerun.txt') ? IO.read('rerun.txt') : "" -rerun_opts = rerun.to_s.strip.empty? ? "--format #{ENV['CUCUMBER_FORMAT'] || 'progress'} features" : "--format #{ENV['CUCUMBER_FORMAT'] || 'pretty'} #{rerun}" -std_opts = "--format #{ENV['CUCUMBER_FORMAT'] || 'pretty'} --strict --tags ~@wip" +rerun = File.file?('rerun.txt') ? IO.read('rerun.txt') : "" +format = ENV['CUCUMBER_FORMAT'] || 'pretty' + +# option lists for the `cucumber` command +rerun_opts = rerun.to_s.strip.empty? ? "--format #{format} features" : "--format #{format} #{rerun}" +std_opts = "--format #{format} --strict --tags ~@wip --tags ~@screenshots" +screenshot_opts = "--require features --format pretty" %> + +# 'normal' test runs default: <%= std_opts %> -r features wip: -r features --tags @wip:3 --wip features -rerun: <%= rerun_opts %> --format rerun --out rerun.txt --strict --tags ~@wip +rerun: <%= rerun_opts %> --format rerun --out rerun.txt --strict --tags ~@wip --tags ~@screenshots + +# screenshot feature +ref_screens: "<%= screenshot_opts %> --tags @reference-screenshots" +cmp_screens: "<%= screenshot_opts %> --tags @comparison-screenshots" +all_screens: "<%= screenshot_opts %> --tags @screenshots"
\ No newline at end of file diff --git a/config/defaults.yml b/config/defaults.yml index 8eadddfc7..bcfca2dfe 100644 --- a/config/defaults.yml +++ b/config/defaults.yml @@ -4,7 +4,7 @@ defaults: version: - number: "0.0.2.5" + number: "0.0.3.0" release: true # Do not touch unless in a merge conflict on doing a release, master should have a commit setting this to true which is not backported to the develop branch. heroku: false environment: @@ -28,7 +28,10 @@ defaults: server: port: 3000 rails_environment: 'development' - db: 'mysql' + stderr_log: + stdout_log: + database: 'mysql' + unicorn_worker: 2 embed_resque_worker: false resque_workers: 1 privacy: @@ -51,6 +54,7 @@ defaults: community_spotlight: enable: false suggest_email: + typhoeus_verbose: false services: facebook: enable: false @@ -83,6 +87,7 @@ defaults: message_bus_api_key: admins: account: + podmin_email: inline_resque_web: true development: @@ -91,6 +96,8 @@ development: serve: true single_process_mode: true require_ssl: false + server: + unicorn_worker: 1 settings: follow_diasporahq: false production: diff --git a/config/diaspora.yml.example b/config/diaspora.yml.example index 1932a7a6e..ec54a5070 100644 --- a/config/diaspora.yml.example +++ b/config/diaspora.yml.example @@ -107,11 +107,19 @@ configuration: ## Section ## The environment in which the server should be started by default. #rails_environment: 'production' + + ## Write unicorn stderr and stdout log + #stderr_log: '/usr/local/app/diaspora/log/unicorn-stderr.log' + #stdout_log: '/usr/local/app/diaspora/log/unicorn-stdout.log' ## The database type the server should use by default. ## Valid choices are 'mysql' and 'postgres' #database: 'mysql' - + + ## Number of unicorn worker processes, increase this if + ## you have many users + #unicorn_worker: 2 + ## Embed a resque worker inside the unicorn process, useful for ## minimal Heroku setups #embed_resque_worker: true @@ -189,6 +197,11 @@ configuration: ## Section ## E-Mail address users can make suggestions about who should be ## in the spotlight to. #suggest_email: 'admin@example.org' + + ## CURL debug + ## Turn on extra verbose output when sending stuff. No you + ## don't need to touch this unless explicitly told to. + #typhoeus_verbose: true ## Setup E-Mail mail: ## Section @@ -273,6 +286,9 @@ configuration: ## Section ## admin contact is neeeded, much like the postmaster role in mail ## systems. Set only the username, NOT the full ID. #account: "podmaster" + + ## E-Mail address users can contact the administrator + #podmin_email: 'podmin@example.org' ## Resque is the background processing system used by Diaspora ## Resque web is an admin tool for it. This settings decides whether diff --git a/config/environment.rb b/config/environment.rb index 07256b9f7..57ad7ff2e 100644 --- a/config/environment.rb +++ b/config/environment.rb @@ -12,7 +12,7 @@ def sqlite? end # Load the rails application -require File.expand_path('../application', __FILE__) +require Pathname.new(__FILE__).dirname.expand_path.join('application') require Rails.root.join("lib", "exceptions") # Load configuration system early diff --git a/config/initializers/locale.rb b/config/initializers/locale.rb index 015dc6d8c..b233dd0cc 100644 --- a/config/initializers/locale.rb +++ b/config/initializers/locale.rb @@ -3,11 +3,11 @@ # the COPYRIGHT file. require 'i18n_interpolation_fallbacks' -require "i18n/backend/fallbacks" +require "i18n/backend/fallbacks" - -if File.exists?(File.expand_path("./config/locale_settings.yml")) - locale_settings = YAML::load(File.open(File.expand_path("./config/locale_settings.yml"))) +settings_file = Pathname.new(__FILE__).dirname.join('..').expand_path.join('locale_settings.yml') +if settings_file.exist? + locale_settings = YAML.load_file(settings_file) AVAILABLE_LANGUAGES = (locale_settings['available'].length > 0) ? locale_settings['available'] : { "en" => 'English' } AVAILABLE_LANGUAGE_CODES = locale_settings['available'].keys DEFAULT_LANGUAGE = (AVAILABLE_LANGUAGE_CODES.include?(locale_settings['default'].to_s)) ? locale_settings['default'].to_s : "en" @@ -23,7 +23,8 @@ end # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded. -I18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}')] +# Use the railtie configuration option to ensure overiding devise. +Diaspora::Application.config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}')] I18n.default_locale = DEFAULT_LANGUAGE I18n::Backend::Simple.send(:include, I18n::Backend::InterpolationFallbacks) diff --git a/config/initializers/oembed.rb b/config/initializers/oembed.rb index 535e3a272..d02d8236a 100644 --- a/config/initializers/oembed.rb +++ b/config/initializers/oembed.rb @@ -9,12 +9,25 @@ require 'uri' OEmbedCubbies = OEmbed::Provider.new("http://cubbi.es/oembed") +OEmbedDailyMotion = OEmbed::Provider.new("http://www.dailymotion.com/services/oembed") +OEmbedDailyMotion << "http://www.dailymotion.com/video/*" + +OEmbedTwitter = OEmbed::Provider.new("https://api.twitter.com/1/statuses/oembed.json") +OEmbedTwitter << "http://twitter.com/*/status/*" +OEmbedTwitter << "https://twitter.com/*/status/*" + +# patch in support for new https soundcloud +OEmbed::Providers::SoundCloud << "https://*.soundcloud.com/*" + oembed_provider_list = [ OEmbed::Providers::Youtube, OEmbed::Providers::Vimeo, - OEmbed::Providers::Flickr, OEmbed::Providers::SoundCloud, - OEmbedCubbies + OEmbed::Providers::Instagram, + OEmbed::Providers::Flickr, + OEmbedCubbies, + OEmbedDailyMotion, + OEmbedTwitter ] SECURE_ENDPOINTS = oembed_provider_list.map do |provider| diff --git a/config/load_config.rb b/config/load_config.rb index 1e7cfd5ba..46102cd76 100644 --- a/config/load_config.rb +++ b/config/load_config.rb @@ -1,7 +1,13 @@ -require Rails.root.join('lib', 'configuration') -require Rails.root.join('lib', 'configuration', 'methods') +require 'configurate' -config_dir = Rails.root.join("config") +rails_root = Pathname.new(__FILE__).dirname.join('..').expand_path +rails_env = ENV['RACK_ENV'] +rails_env ||= ENV['RAILS_ENV'] +rails_env ||= 'development' + +require rails_root.join('lib', 'configuration_methods') + +config_dir = rails_root.join("config") if File.exists?(config_dir.join("application.yml")) $stderr.puts "ATTENTION: There's a new configuration system, please remove your" @@ -9,32 +15,35 @@ if File.exists?(config_dir.join("application.yml")) end -AppConfig ||= Configuration::Settings.create do - add_provider Configuration::Provider::Dynamic - add_provider Configuration::Provider::Env +AppConfig ||= Configurate::Settings.create do + add_provider Configurate::Provider::Dynamic + add_provider Configurate::Provider::Env - unless heroku? || Rails.env == "test" || File.exists?(config_dir.join("diaspora.yml")) + unless heroku? || rails_env == "test" || File.exists?(config_dir.join("diaspora.yml")) $stderr.puts "FATAL: Configuration not found. Copy over diaspora.yml.example" $stderr.puts " to diaspora.yml and edit it to your needs." Process.exit(1) end - add_provider Configuration::Provider::YAML, + add_provider Configurate::Provider::YAML, config_dir.join("diaspora.yml"), - namespace: Rails.env, required: false - add_provider Configuration::Provider::YAML, + namespace: rails_env, required: false + add_provider Configurate::Provider::YAML, config_dir.join("diaspora.yml"), namespace: "configuration", required: false - add_provider Configuration::Provider::YAML, + add_provider Configurate::Provider::YAML, config_dir.join("defaults.yml"), - namespace: Rails.env - add_provider Configuration::Provider::YAML, + namespace: rails_env + add_provider Configurate::Provider::YAML, config_dir.join("defaults.yml"), namespace: "defaults" extend Configuration::Methods - if Rails.env == "production" && (environment.certificate_authorities.blank? || !File.exists?(environment.certificate_authorities.get)) +if rails_env == "production" && + (environment.certificate_authorities.nil? || + environment.certificate_authorities.empty? || + !File.file?(environment.certificate_authorities.get)) $stderr.puts "FATAL: Diaspora doesn't know where your certificate authorities are. Please ensure they are set to a valid path in diaspora.yml" Process.exit(1) end diff --git a/config/locales/cldr/plurals.rb b/config/locales/cldr/plurals.rb index 01b566342..370acb027 100644 --- a/config/locales/cldr/plurals.rb +++ b/config/locales/cldr/plurals.rb @@ -1,5 +1,7 @@ { - :'art-nvi' => { :i18n => {:plural => { :keys => [:zero, :one, :two, :few, :other], :rule => lambda { |n| n == 0 ? :zero : n == 1 ? :one : n == 2 ? :two : n == 3 ? :few : :other }, :js_rule => 'function (n) { return n == 0 ? "zero" : n == 1 ? "one" : n == 2 ? "two" : n == 3 ? "few" : "other" }' } } }, :ar => { :i18n => {:plural => { :keys => [:zero, :one, :two, :few, :many, :other], :rule => lambda { |n| n == 0 ? :zero : n == 1 ? :one : n == 2 ? :two : [3, 4, 5, 6, 7, 8, 9, 10].include?(n % 100) ? :few : [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99].include?(n % 100) ? :many : :other }, :js_rule => 'function (n) { return n == 0 ? "zero" : n == 1 ? "one" : n == 2 ? "two" : jQuery.inArray(n % 100, [3, 4, 5, 6, 7, 8, 9, 10]) != -1 ? "few" : jQuery.inArray(n % 100, [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99]) != -1 ? "many" : "other" }' } } }, + :'art-nvi' => { :i18n => {:plural => { :keys => [:zero, :one, :two, :few, :other], :rule => lambda { |n| n == 0 ? :zero : n == 1 ? :one : n == 2 ? :two : n == 3 ? :few : :other }, :js_rule => 'function (n) { return n == 0 ? "zero" : n == 1 ? "one" : n == 2 ? "two" : n == 3 ? "few" : "other" }' } } }, + :hy => { :i18n => {:plural => { :keys => [:other], :rule => lambda { |n| :other }, :js_rule => 'function (n) { return "other"; }' } } }, + :ar => { :i18n => {:plural => { :keys => [:zero, :one, :two, :few, :many, :other], :rule => lambda { |n| n == 0 ? :zero : n == 1 ? :one : n == 2 ? :two : [3, 4, 5, 6, 7, 8, 9, 10].include?(n % 100) ? :few : [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99].include?(n % 100) ? :many : :other }, :js_rule => 'function (n) { return n == 0 ? "zero" : n == 1 ? "one" : n == 2 ? "two" : jQuery.inArray(n % 100, [3, 4, 5, 6, 7, 8, 9, 10]) != -1 ? "few" : jQuery.inArray(n % 100, [11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99]) != -1 ? "many" : "other" }' } } }, :bg => { :i18n => {:plural => { :keys => [:one, :other], :rule => lambda { |n| n == 1 ? :one : :other }, :js_rule => 'function (n) { return n == 1 ? "one" : "other" }' } } }, :br => { :i18n => {:plural => { :keys => [:one, :two, :few, :many, :other], :rule => lambda { |n| n % 10 == 1 && n ? :one : n % 10 == 2 && n ? :two : [3, 4].include?(n % 10) && ![10, 11, 12, 13, 14, 15, 16, 17, 18, 19].include?(n % 100) ? :few : n != 0 && n % 1000000 == 0 ? :many : :other }, :js_rule => 'function (n) { return n % 10 == 1 && n ? "one" : n % 10 == 2 && n ? "two" : jQuery.inArray(n % 10, [3, 4]) != -1 && !jQuery.inArray(n % 100, [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]) != -1 ? "few" : n != 0 && n % 1000000 == 0 ? "many" : "other" }' } } }, :ca => { :i18n => {:plural => { :keys => [:one, :other], :rule => lambda { |n| n == 1 ? :one : :other }, :js_rule => 'function (n) { return n == 1 ? "one" : "other" }' } } }, @@ -49,4 +51,4 @@ :ur => { :i18n => {:plural => { :keys => [:one, :other], :rule => lambda { |n| n == 1 ? :one : :other }, :js_rule => 'function (n) { return n == 1 ? "one" : "other" }' } } }, :vi => { :i18n => {:plural => { :keys => [:other], :rule => lambda { |n| :other }, :js_rule => 'function (n) { return "other" }' } } }, :zh => { :i18n => {:plural => { :keys => [:other], :rule => lambda { |n| :other }, :js_rule => 'function (n) { return "other" }' } } } -} +}
\ No newline at end of file diff --git a/config/locales/devise/devise.ca.yml b/config/locales/devise/devise.ca.yml index 5dcdff496..1b56733c6 100644 --- a/config/locales/devise/devise.ca.yml +++ b/config/locales/devise/devise.ca.yml @@ -23,7 +23,7 @@ ca: inactive: "El vostre compte encara no era actiu." sessions: new: - login: "Entrada" + login: "Entra" username: "Nom d'usuari" password: "Contrasenya" sign_in: "Entra" diff --git a/config/locales/devise/devise.el.yml b/config/locales/devise/devise.el.yml index a87b5f1f7..8f935e5d4 100644 --- a/config/locales/devise/devise.el.yml +++ b/config/locales/devise/devise.el.yml @@ -43,7 +43,7 @@ el: get_connected: "Συνδεθείτε" get_connected_paragraph: "Ως ένα διεθνές κίνημα με κοινό όραμα το καλύτερο διαδίκτυο, το #1 χαρακτηριστικό του %{strong_diaspora} είναι η κοινότητά του. Γνωρίστε νέα άτομα, συνδεθείτε με φίλους και διασκεδάστε." have_fun: "Διασκεδάστε" - have_fun_paragraph: "Με το %{strong_diaspora} θα ανακλύψετε νέα εκπληκτικά πράγματα και ανθρώπους στο διαδίκτυο. %{link}, η πρώτη παγκόσμια εφαρμογή του %{strong_diaspora} είναι μόνο η αρχή. Συλλέξτε και μοιραστείτε το διαδίκτυο σε όλη τη δόξα του. " + have_fun_paragraph: "Με το %{strong_diaspora} θα ανακαλύψετε νέα εκπληκτικά πράγματα και ανθρώπους στο διαδίκτυο. %{link}, η πρώτη παγκόσμια εφαρμογή του %{strong_diaspora} είναι μόνο η αρχή. Συλλέξτε και μοιραστείτε το διαδίκτυο σε όλη τη δόξα του." help_fund: "βοηθήστε την χρηματοδότηση του Diaspora" here: "εδώ" ignore: "Εάν δεν θέλετε να αποδεχτείτε την πρόσκληση, παρακαλώ αγνοήστε αυτό το email." diff --git a/config/locales/devise/devise.fil.yml b/config/locales/devise/devise.fil.yml new file mode 100644 index 000000000..dfb4b1a10 --- /dev/null +++ b/config/locales/devise/devise.fil.yml @@ -0,0 +1,20 @@ +# Copyright (c) 2010-2012, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. + + + +fil: + devise: + mailer: + hello: "Kumusta %{email}!" + invitation_instructions: + finally: "Sa wakas - naandito na" + here: "dito" + or: "o" + sessions: + new: + remember_me: "Tandaan Ako" + errors: + messages: + not_found: "Walang Mahanap"
\ No newline at end of file diff --git a/config/locales/devise/devise.fr.yml b/config/locales/devise/devise.fr.yml index 4a215df8b..83c30c3c9 100644 --- a/config/locales/devise/devise.fr.yml +++ b/config/locales/devise/devise.fr.yml @@ -7,22 +7,22 @@ fr: devise: confirmations: - confirmed: "Votre compte a été confirmé. Vous êtes à présent connecté(e)." + confirmed: "Votre compte a été confirmé. Vous êtes à présent connecté-e." new: resend_confirmation: "Renvoyer les instructions de confirmation" - send_instructions: "Vous allez recevoir dans quelques minutes un e-mail contenant les instructions pour confirmer votre compte." + send_instructions: "Vous allez recevoir dans quelques minutes un courriel contenant les instructions pour confirmer votre compte." failure: inactive: "Votre compte n’a pas encore été activé." invalid: "Pseudo ou mot de passe invalide." invalid_token: "Jeton d’authentification invalide." locked: "Votre compte est verrouillé." - timeout: "Votre session a expiré, veuillez vous connecter de nouveau afin de continuer." + timeout: "Votre session a expiré. Veuillez vous connecter de nouveau pour continuer." unauthenticated: "Vous devez vous connecter ou vous inscrire avant de continuer." unconfirmed: "Vous devez confirmer votre compte avant de continuer." invitations: invitation_token_invalid: "Toutes nos excuses ! Cette invitation n'est pas valide." send_instructions: "Votre invitation a été envoyée." - updated: "Votre mot de passe a été créé. Vous êtes à présent connecté(e)." + updated: "Votre mot de passe a été créé. Vous êtes à présent connecté-e." mailer: confirmation_instructions: confirm: "Confirmer mon compte" @@ -40,8 +40,8 @@ fr: email_us: "Pour des renseignements généraux ou de l'aide sur votre compte Diaspora, merci de nous envoyer un courriel à %{email}." finally: "Enfin - c'est ici" friends_saying: "Ce que disent vos amis..." - get_connected: "Soyez Connecté" - get_connected_paragraph: "Un mouvement international avec une vision partagée pour un meilleur web, la première caractéristique de %{strong_diaspora} est sa communauté. Rencontrez de nouvelles personnes, connectez-vous avec vos amis, et amusez-vous." + get_connected: "Soyez connecté-e" + get_connected_paragraph: "Un mouvement international avec une vision partagée pour un meilleur web, la première caractéristique de %{strong_diaspora} est sa communauté. Rencontrez de nouvelles personnes, connectez-vous avec vos amis, et amusez-vous." have_fun: "Prenez plaisir" have_fun_paragraph: "%{strong_diaspora} est tout un projet étonnant permettant de découvrir de nouveaux contenus et des gens en ligne. %{link}, la première application %{strong_diaspora}, et c'est juste le commencement. Recueillir et partager sur le Web dans toute sa gloire." help_fund: "aider à financer Diaspora" @@ -49,7 +49,7 @@ fr: ignore: "Si vous ne voulez pas accepter l'invitation, merci d'ignorer ce courriel." join_team: "Rejoignez notre Équipe" love: "Cordialement," - made_by_people: "%{strong_diaspora} est fait par des gens qui aiment l'Internet autant que vous. %{jointeam}, ou %{helpfund} !" + made_by_people: "%{strong_diaspora} est fait par des gens qui aiment l'Internet autant que vous. %{jointeam} ou %{helpfund} !" more_people: "Encore plus de gens sont ravis de vous voir !" no_account_till: "Votre compte ne sera créé que lorsque vous irez sur le lien ci-dessus et que vous vous inscrirez." or: "ou" @@ -64,7 +64,7 @@ fr: have_invited_you: "%{names} vous a invité à rejoindre Diaspora" reset_password_instructions: change: "Changer mon mot de passe" - ignore: "Si vous n'avez pas demandé cela, merci d'ignorer cet e-mail." + ignore: "Si vous n'avez pas demandé cela, merci d'ignorer ce courriel." someone_requested: "Quelqu'un a demandé un lien pour changer votre mot de passe, vous pouvez effectuer cela en cliquant sur le lien ci-dessous." subject: "Instructions de réinitialisation de mot de passe" wont_change: "Votre mot de passe ne changera pas tant que vous n'en aurez pas créé un nouveau en accédant au lien ci-dessus." @@ -81,11 +81,11 @@ fr: forgot_password: "Mot de passe oublié ?" no_account: "Aucun compte n'est associé à cette adresse de courrier électronique. Si vous attendez une invitation, nous les distribuons aussi vite que possible." send_password_instructions: "Envoyez-moi les instructions de réinitialisation de mot de passe" - send_instructions: "Vous allez recevoir dans quelques minutes un e-mail contenant les instructions pour réinitialiser votre mot de passe." - updated: "Votre mot de passe a été modifié. Vous êtes à présent connecté(e)." + send_instructions: "Vous allez recevoir dans quelques minutes un courriel contenant les instructions pour réinitialiser votre mot de passe." + updated: "Votre mot de passe a été modifié. Vous êtes à présent connecté-e." registrations: destroyed: "Au revoir ! Votre compte a été résilié. Nous espérons vous revoir très bientôt." - signed_up: "Votre inscription a été effectuée. Si cette dernière est activée, une confirmation a été envoyée sur votre adresse e-mail." + signed_up: "Votre inscription a été effectuée. Si cette dernière est activée, une confirmation a été envoyée à votre adresse de courrier électronique." updated: "Vous avez mis à jour votre compte." sessions: new: @@ -98,8 +98,8 @@ fr: remember_me: "Se souvenir de moi" sign_in: "Connexion" username: "Nom d'utilisateur" - signed_in: "Vous êtes à présent connecté(e)." - signed_out: "Vous êtes à présent déconnecté(e)." + signed_in: "Vous êtes à présent connecté-e." + signed_out: "Vous êtes à présent déconnecté-e." shared: links: forgot_your_password: "Mot de passe oublié ?" @@ -113,8 +113,8 @@ fr: unlocks: new: resend_unlock: "Renvoyer les instructions de déblocage" - send_instructions: "Vous allez recevoir dans quelques minutes un e-mail contenant les instructions pour déverrouiller votre compte." - unlocked: "Votre compte a été déverrouillé. Vous êtes à présent connecté(e)." + send_instructions: "Vous allez recevoir dans quelques minutes un courriel avec les instructions pour déverrouiller votre compte." + unlocked: "Votre compte a été déverrouillé. Vous êtes à présent connecté-e." errors: messages: already_confirmed: "a déjà été confirmé" diff --git a/config/locales/devise/devise.ga.yml b/config/locales/devise/devise.ga.yml index fb75d212c..24b89140d 100644 --- a/config/locales/devise/devise.ga.yml +++ b/config/locales/devise/devise.ga.yml @@ -8,6 +8,8 @@ ga: devise: mailer: hello: "Haileo %{email}!" + invitation_instructions: + love: "Grá" welcome: "Fáilte %{email}!" sessions: new: diff --git a/config/locales/devise/devise.he.yml b/config/locales/devise/devise.he.yml index 43c466554..6d27b02e4 100644 --- a/config/locales/devise/devise.he.yml +++ b/config/locales/devise/devise.he.yml @@ -38,7 +38,7 @@ he: be_yourself_paragraph: "הרשת יצרה עבורנו דרכים חדשות ויחודיות לביטא את עצמנו. %{strong_diaspora} נותנת לך להיות עצמך ולשתף בכל דרך שתרצה, עם או בלי שמך האמיתי." cubbies: "אפליקציה Cubbi.es" displaying_correctly: "%{link} ? המייל לא מוצג באופן תקין" - email_address: "questions@joindiaspora.com - לשאלות פנה אלינו " + email_address: "questions@joindiaspora.com" email_us: " %{email}עבור שאלות כלליות או תמיכה בחשבון הדיאספורה שלך נא שלח לנו מייל ל" finally: "סוף סוף - זה הגיע " friends_saying: "...מה שהחברים שלך אומרים" @@ -55,7 +55,7 @@ he: ignore: "אם אין ברצונך לאשר את ההזמנה, ניתן להתעלם מהודעה זו." join_team: "הצטרף לצוות שלנו" love: "באהבה," - made_by_people: "%{strong_diaspora}%{strong_diaspora} נכתבה על ידי אנשים שאוהבים אינטרנט בדיוק כמוך. %{jointeam} או %{helpfund}!" + made_by_people: "%{strong_diaspora} פותחה על ידי אנשים שאוהבים אינטרנט בדיוק כמוך. %{jointeam} או %{helpfund}!" more_people: "אפילו יותר אנשים מתרגשים לראות אותך" no_account_till: " החשבון שלך לא ייווצר עד לכניסתך לקישור המופיע למעלה וההרשמה לשירות." or: "או" diff --git a/config/locales/devise/devise.hu.yml b/config/locales/devise/devise.hu.yml index 6483a89d1..8c6d2e7bf 100644 --- a/config/locales/devise/devise.hu.yml +++ b/config/locales/devise/devise.hu.yml @@ -14,7 +14,7 @@ hu: failure: inactive: "A fiókod nem aktiváltad még." invalid: "Érvénytelen felhasználónév vagy jelszó." - invalid_token: "Érvénytelen hitelesítési jel." + invalid_token: "Érvénytelen hitelesítési azonosító." locked: "A fiókod zárolva van." timeout: "A munkamenet lejárt, kérjük jelentkezz be újra." unauthenticated: "A továbblépéshez jelentkezz be vagy iratkozz fel." diff --git a/config/locales/devise/devise.hy.yml b/config/locales/devise/devise.hy.yml index 7a1aa6df9..697ab5cb8 100644 --- a/config/locales/devise/devise.hy.yml +++ b/config/locales/devise/devise.hy.yml @@ -15,12 +15,12 @@ hy: inactive: "Քո հաշիվը դեռ ակտիվացված չէ։" invalid: "Սխալ օգտանուն կամ գաղտնաբառ։" invalid_token: "Նույնականացման սխալ։" - locked: "Քո հաշիվը արգելափակված է։" + locked: "Քո հաշիվն արգելափակված է։" timeout: "Աշխատաշրջանիդ ժամկետն անցել է, խնդրում ենք կրկին մուտք գործիր, որ շարունակես։" unauthenticated: "Շարունակելուց առաջ պետք է կա՛մ մուտք գործես, կա՛մ գրանցվես։" unconfirmed: "Շարունակելուց առաջ պետք է հաստատես հաշիվդ։" invitations: - invitation_token_invalid: "Ներողություն, բայց այս հրավերը գործող չէ ։(" + invitation_token_invalid: "Հազար ներողություն, բայց այս հրավերը վավեր չէ։" send_instructions: "Հրավերդ ուղարկված է։" updated: "Գաղտնաբառդ հաջողությամբ մուտքագրվեց։ Այժմ համակարգում ես։" mailer: @@ -32,7 +32,7 @@ hy: invitation_instructions: accept: "Ընդունել հրավերը" arrived: "Այն սոցիալական ցանցը, որին այդքան սպասում էինք ու որն այդքան պակասում էր, վերջապես հայտնվեց։ Ավելի հավես, ավելի ապահով ու լրիվ նոր ձևով %{strong_diaspora}-ն պատրաստ է օգնել քեզ կիսվելու ու բացահայտելու ցանցը՝ բոլորովին այլ կերպ։" - be_yourself: "Մնա այնպիսին, ինչպիսին որ կաս" + be_yourself: "Մնա այնպիսին, ինչպիսին կաս" be_yourself_paragraph: "Համացանցը ստեղծել է ինքներս մեզ արտահայտելու եզակի նոր ճանապարհներ։ %{strong_diaspora}-ն թույլ է տալիս քեզ մնալ այնպիսին, ինչպիսին կաս և կիսվել ինչպես դու կուզես՝ քո իրական կամ ոչ իրական անունով։" cubbies: "Cubbi․es" displaying_correctly: "Նամակը ընթեռնելի չէ՞։ Ահա՝ %{link}" @@ -40,8 +40,8 @@ hy: email_us: "Diaspora-ի հետ կապված ընդհանուր հարցերի կամ օգնության համար՝ նամակիր մեզ՝ %{email}։" finally: "Վերջապե՜ս։ Սա հասավ քեզ։" friends_saying: "Ի՞նչ են ասում ընկերներդ..." - get_connected: "Մնացեք կապի մեջ" - get_connected_paragraph: "Միջազգային շարժում՝ ավելի լավ համացանցի վերաբերյալ համընդհանուր պատկերացումներով, %{strong_diaspora}-ի հիմնական առանձնահատկությունը նրա համայնքայինությունն է։ Հանդիպիր նոր մարդկանց, շփվիր ընկերներիդ հետ և միացիր զվարճանքին։" + get_connected: "Մնա կապի մեջ" + get_connected_paragraph: "Միջազգային շարժում՝ ավելի լավ ցանցի վերաբերյալ համընդհանուր պատկերացումներով, %{strong_diaspora}-ի հիմնական առանձնահատկությունը նրա համայնքայինությունն է։ Հանդիպիր նոր մարդկանց, շփվիր ընկերներիդ հետ և միացիր զվարճանքին։" have_fun: "Զվարճացի՛ր" have_fun_paragraph: "%{strong_diaspora}-ն առցանց հավես մարդկանց ու բովանդակություն բացահայտելու մասին է։ %{link}-ը՝ աշխարհում առաջին %{strong_diaspora} ծրագիրը, միայն սկիզբն է։ Վերցրու ցանցից ու կիսվիր դրանով՝ իր ամենահավես դրսևորումներում։" help_fund: "օգնիր Diaspora հիմնադրամին" @@ -49,27 +49,27 @@ hy: ignore: "Եթե չես ուզում ընդունել հրավերը, ապա պարզապես արհամարհիր այս նամակը։" join_team: "Միացի՛ր մեզ" love: "Սիրով," - made_by_people: "%{strong_diaspora}-ն ստեղծվել է մարդկանց կողմից, որ համացանցը քո չափ սիրում են։ %{jointeam} կամ %{helpfund}։" - more_people: "Ավելի շատ մարդ է հուզված տեսնել քեզ։" - no_account_till: "Քո հաշիվը չի ստեղծվի, քանի դեռ ներքոհիշյալ հղմամբ չես անցել։" + made_by_people: "%{strong_diaspora}-ն ստեղծվել է մարդկանց կողմից, ովքեր համացանցը քո չափ սիրում են։ %{jointeam} կամ %{helpfund}։" + more_people: "Լիքը մարդ ուրախ կլինի տեսնել քեզ այստեղ ։Ճ" + no_account_till: "Քանի դեռ ներքոհիշյալ հղմամբ չես անցել ու մուտք չես գործել, քո հաշիվը չի ստեղծվի։" or: "կամ" sign_up_now: "Գրանցվի՛ր հիմա →" subject: "Դու հրավիրված ես՝ միանալու Diaspora-ին։" team_diaspora: "Diaspora-ի թիմ" unsubscribe: "Բաժանորդագրությունից հրաժարվելու համար սեղմիր %{link}։" - view_in: "Դիտիր սա քո զննիչում։" + view_in: "Դիտել սա քո զննիչում։" inviter: accept_at: "%{url} հասցեով, որը կարող ես հաստատել ստորև բերված հղման միջոցով։" has_invited_you: "%{name}" have_invited_you: "%{names}-ից հրավեր ես ստացել՝ միանալու Diaspora-ին։" reset_password_instructions: change: "Փոխել գաղտնաբառը" - ignore: "Եթե դուք չեք ուղարկել այս հարցումը, ապա պարզապես արհամարհեք այս նամակը։" + ignore: "Եթե չես ուղարկել այս հարցումը, ապա պարզապես անտեսիր այս նամակը։" someone_requested: "Ինչ-որ մեկը հղում է պահանջել գաղտնաբառդ փոխելու համար։ Կարող ես դա անել հետևյալ հղման միջոցով՝" subject: "Գաղտնաբառը փոխելու ցուցումներ" - wont_change: "Գաղտնաբառդ չի փոխվի, մինչև չանցնես վերը տրված հղմամբ և չստեղծես նորը։" + wont_change: "Գաղտնաբառդ չի փոխվի, եթե չանցնես վերը նշված հղմամբ և չստեղծես նոր գաղտնաբառ։" unlock_instructions: - account_locked: "Հաշիվդ արգելափակվեց՝ կապված մուտք գործելու չափից շատ չհաջողված փորձերով։" + account_locked: "Մուտք գործելու չափից շատ չհաջողված փորձերի պատճառով հաշիվդ արգելափակվեց։" click_to_unlock: "Սեղմիր ներքևի հղումը, որպեսզի ապաարգելափակես հաշիվդ։" subject: "Ապաարգելափակման ցուցումներ" unlock: "Ապաարգելափակել հաշիվս" @@ -78,20 +78,20 @@ hy: edit: change_password: "Փոխել իմ գաղտնաբառը" new: - forgot_password: "Մոռացե՞լ ես գաղտնաբառդ։" + forgot_password: "Մոռացե՞լ ես գաղտնաբառդ" no_account: "Այս էլ.հասցեով հաշիվ չկա։ Եթե հրավերի ես սպասում, մենք փորձում ենք դրանք հնարավորինս արագ աչքի անցկացնել։" send_password_instructions: "Ուղարկեք ինձ գաղտնաբառը փոխելու ցուցումները" send_instructions: "Րոպեների ընթացքում նամակ կստանաս՝ գաղտնաբառդ վերականգնելու ցուցումներով։" updated: "Գաղտաբառդ հաջողությամբ փոխվեց։ Հիմա արդեն համակարգում ես։" registrations: - destroyed: "Ց՜։ Քո հաշիվը բարեհաջող փակվեց։ Հուսով եմ շուտով կրկին կհանդիպենք։" - signed_up: "Բարեհաջող գրանցվեցիր։ Միացված լինելու դեպքում, քո էլ.փոստով հաստատման նամակ կստանաս։" + destroyed: "Ցը՜։ Քո հաշիվը բարեհաջող փակվեց։ Հուսով եմ շուտով կրկին կհանդիպենք։" + signed_up: "Բարեհաջող գրանցվեցիր։ Միացված լինելու դեպքում, քո էլ.փոստին հաստատման նամակ կստանաս։" updated: "Հաշիվդ հաջողությամբ թարմացվեց։" sessions: new: alpha_software: "Ծրագրի Ալֆա տարբերակը օգտագործելու ուղու վրա ես։" - bugs_and_feedback: "Զգո՛ն եղիր, խոտանների կհանդիպես։ Խորհուրդ ենք տալիս, որ օգտագործես զննիչիդ աջ կողմում գտնվող Հետադարձ կապի կոճակը՝ ցանկացած փռշտոցի մասին տեղեկացնելու համար։ Մենք կաշխատենք հնարավորինս արագ լուծել քո տեղեկացրած խնդիրները։" - bugs_and_feedback_mobile: "Զգո՛ն եղիր, խոտանների կհանդիպես։ Խորհուրդ ենք տալիս ցանկացած խնդրի մասին տեղեկացնել մեզ։ Կաշխատենք հնարավորինս արագ լուծել բոլոր խնդիրները։" + bugs_and_feedback: "Զգո՛ն եղիր, դու կհանդիպես բագերի։ Խորհուրդ ենք տալիս՝ օգտագործես զննիչիդ աջ կողմում գտնվող հետադարձ կապի կոճակը՝ ցանկացած փռշտոցի մասին տեղեկացնելու համար։ Մենք կաշխատենք հնարավորինս արագ լուծել բոլոր խնդիրները։" + bugs_and_feedback_mobile: "Զգո՛ն եղիր, դու կհանդիպես բագերի։ Խորհուրդ ենք տալիս ցանկացած խնդրի մասին տեղեկացնել մեզ։ Կաշխատենք հնարավորինս արագ լուծել բոլոր խնդիրները։" login: "Մտնել" modern_browsers: "աշխատում է միայն ժամանակակից զննիչներում։" password: "Գաղտնաբառ" @@ -104,12 +104,12 @@ hy: links: forgot_your_password: "Մոռացե՞լ ես գաղտնաբառդ" receive_confirmation: "Չե՞ս ստացել հաստատման ցուցումները։" - receive_unlock: "Չե՞ս ստացել ափաարգելափակման ցուցումները։" + receive_unlock: "Չե՞ս ստացել ապաարգելափակման ցուցումները։" sign_in: "Մուտք գործել" sign_up: "Գրանցվել" sign_up_closed: "Այս պահին բաց գրանցումները հասանելի չեն։" mail_signup_form: - sign_up_for_an_invite: "Գրանցվի՛ր հրավերի համար" + sign_up_for_an_invite: "Գրանցվի՛ր հրավեր ստանալու համար" unlocks: new: resend_unlock: "Կրկին ուղարկել ապաարգելափակման ցուցումները" diff --git a/config/locales/devise/devise.ja.yml b/config/locales/devise/devise.ja.yml index 89a2e1779..944131e82 100644 --- a/config/locales/devise/devise.ja.yml +++ b/config/locales/devise/devise.ja.yml @@ -31,7 +31,10 @@ ja: hello: "%{email}さん、こんにちは!" invitation_instructions: displaying_correctly: "Email not displaying correctly? %{link} in your browser" + email_address: "questions@joindiaspora.com" view_in: "View in" + inviter: + has_invited_you: "%{name}さん" reset_password_instructions: change: "パスワードを変更する" ignore: "再設定を申請した覚えがない場合はこのメールを無視してください。" diff --git a/config/locales/devise/devise.nb.yml b/config/locales/devise/devise.nb.yml index 76e2f4ed0..267d04349 100644 --- a/config/locales/devise/devise.nb.yml +++ b/config/locales/devise/devise.nb.yml @@ -40,6 +40,7 @@ nb: email_us: "For generelle spørsmål eller hjelp med din Diaspora-konto, send oss en e-post på %{email}." finally: "Endelig - det er her" friends_saying: "Det vennene dine sier..." + get_connected: "koble opp" get_connected_paragraph: "Som en internasjonal bevegelse som deler en visjon om et bedre internett, %{strong_diaspora}'s #1 egenskap er felleskapet. Møt nye mennesker, finn vennene dine, og bli med på moroa. " have_fun: "Ha det gøy" have_fun_paragraph: "%{strong_diaspora} handler om å finne utrolig nytt innhold og nye mennesker online. %{link}, den første %{strong_diaspora} applikasjonen i verden, er bare begynnelsen. Finn og del alt som gjør nettet til et fantastisk sted." @@ -58,6 +59,7 @@ nb: unsubscribe: "For å avregistrere deg klikk på %{link}." view_in: "Se i" inviter: + accept_at: "via %{url}, kan du akseptere lenken du ser under" has_invited_you: "%{name}" have_invited_you: "%{names} har invitert deg til Diaspora" reset_password_instructions: diff --git a/config/locales/devise/devise.nn.yml b/config/locales/devise/devise.nn.yml index da85ef678..12033ea5e 100644 --- a/config/locales/devise/devise.nn.yml +++ b/config/locales/devise/devise.nn.yml @@ -54,7 +54,7 @@ nn: no_account_till: "Kontoen din vil ikkje verta oppretta før du nyttar lenkja ovanfor og loggar deg på." or: "eller" sign_up_now: "Meld deg inn no →" - subject: "Du er vorten invitert til å vera med i Diaspora." + subject: "Du er invitert til å vera med i Diaspora." team_diaspora: "Team Diaspora" unsubscribe: "For å melde deg av, klikk på %{link}." view_in: "View in" @@ -81,7 +81,7 @@ nn: forgot_password: "Har du gløymt passordet ditt?" no_account: "Det finst ingen konto med denne e-postadressa. Om du ventar på ein invitasjon, skal du veta at vi sender dei ut så fort vi kan." send_password_instructions: "Send meg opplysningar om korleis nullstilla passordet" - send_instructions: "Om ei lita stund vil du få ei e-postmelding med opplysningar om korleis du kan nullstilla passordet ditt." + send_instructions: "Om ei lita stund vil du få ein e-post med opplysningar om korleis du kan nullstilla passordet ditt." updated: "Passordet ditt vart endra. Du er no pålogga." registrations: destroyed: "Ha det! Kontoen din vart sletta. Vi vonar vi ser deg att snart." diff --git a/config/locales/devise/devise.sr.yml b/config/locales/devise/devise.sr.yml index cea4bad5d..a7fdc2a1f 100644 --- a/config/locales/devise/devise.sr.yml +++ b/config/locales/devise/devise.sr.yml @@ -17,7 +17,7 @@ sr: invalid_token: "Погрешан токен за аутентификацију." locked: "Твој налог је закључан." timeout: "Истекла ти је сесија. Улогуј се поново да наставиш." - unauthenticated: "Пријави се или отвори налог да наставиш." + unauthenticated: "Треба да се пријавиш или отвориш налог за наставак даље." unconfirmed: "Треба да потврдиш свој налог пре него што наставиш." invitations: invitation_token_invalid: "Извињавамо се! Та позивница није исправна." diff --git a/config/locales/devise/devise.uk.yml b/config/locales/devise/devise.uk.yml index 1070534cf..b72841903 100644 --- a/config/locales/devise/devise.uk.yml +++ b/config/locales/devise/devise.uk.yml @@ -10,13 +10,13 @@ uk: confirmed: "Ваш аккаунт підтверджений. Ласкаво просимо." new: resend_confirmation: "Вислати повторно інструкції по підтвердженню" - send_instructions: "Ви отримаєте лист з вказівками по підтвердженню облікового запису впродовж декількох хвилин." + send_instructions: "Ви отримаєте лист з вказівками із підтвердження облікового запису впродовж декількох хвилин." failure: inactive: "Ваш аккаунт ще не активований." - invalid: "Невірний email або пароль." - invalid_token: "Невірна перевірка достовірності." + invalid: "Неправильний email або пароль." + invalid_token: "Невдала автентифікація." locked: "Ваш аккаунт заблокований." - timeout: "Ваша сесія закінчилася, будь ласка, увійдіть в раз, щоб продовжити." + timeout: "Ваш сеанс закінчилася, будь ласка, увійдіть ще раз, щоб продовжити." unauthenticated: "Ви повинні увійти або зареєструватися, перш ніж продовжити." unconfirmed: "Вам необхідно підтвердити ваш аккаунт, перш ніж продовжити." invitations: @@ -26,16 +26,16 @@ uk: mailer: confirmation_instructions: confirm: "Підтвердити мій аккаунт" - subject: "Інструкції по підтвердженню" + subject: "Інструкції з підтвердження" you_can_confirm: "Ви можете підтвердити свій аккаунт за посиланням нижче:" hello: "Привіт %{email}!" invitation_instructions: accept: "Прийняти запрошення" - arrived: "Соціальна мережа, яку ви так довго чекали, нарешті, з'явилася. Оновлена, захищеніша і доброзичливіша %{strong_diaspora} готова допомогти вам ділитися і досліджувати Мережу по-новому." + arrived: "Соціальна мережа, на яку ви чекали, нарешті з'явилася. Оновлена, більш захищена й доброзичлива %{strong_diaspora} готова допомогти вам ділитися і досліджувати Мережу по-новому." be_yourself: "Будьте собою" - be_yourself_paragraph: "Інтернет дав нам безліч унікальних способів самовираження. %{strong_diaspora} дозволяє вам бути собою і ділитися чим завгодно, як під справжнім ім'ям, так і під псевдонімом." + be_yourself_paragraph: "Інтернет дав нам безліч унікальних способів самовияву. %{strong_diaspora} дозволяє вам бути собою і ділитися чим завгодно, як під справжнім ім'ям, так і під псевдонімом." cubbies: "Підключення до Cubbi.es" - displaying_correctly: "Лист відображається некоректно? %{link}" + displaying_correctly: "Лист показується некоректно? %{link}" email_address: "questions@joindiaspora.com" email_us: "Із загальних питань або питань, пов'язаних з вашим обліковим записом в Діаспорі, будь ласка пишіть нам на адресу %{email}." finally: "Нарешті, вона тут" @@ -57,21 +57,21 @@ uk: subject: "Ви запрошені приєднатися до Діаспори!" team_diaspora: "Команда Діаспори" unsubscribe: "Щоб відписатися, натисніть %{link}." - view_in: "Відкрити його у браузері." + view_in: "Відкрити його у переглядачці." inviter: - accept_at: "в %{url}, ви можете прийняти його по посиланню нижче." + accept_at: "на %{url}, ви можете прийняти його за посиланням нижче." has_invited_you: "%{name}" - have_invited_you: "%{names} запросив[а, и] вас приєднатися до діаспори" + have_invited_you: "%{names} запросив[-ли, -ла] вас приєднатися до DIASPORA*" reset_password_instructions: change: "Змінити пароль" ignore: "Якщо ви не здійснювали запит, проігноруйте цей лист." someone_requested: "Хтось створив запит зміни вашого пароля, і ви можете зробити це через посилання нижче." - subject: "Інструкції по скиданню пароля" - wont_change: "Ваш пароль не зміниться, поки ви не перейдете по посиланню і не створите новий." + subject: "Інструкції зі скидання пароля" + wont_change: "Ваш пароль не зміниться, поки ви не перейдете за посиланням і не створите новий." unlock_instructions: account_locked: "Ваш аккаунт заблокований через надмірну кількість невдалих спроб входу." click_to_unlock: "Використайте посилання, щоб розблоковувати аккаунт:" - subject: "Інструкції по розблокуванню" + subject: "Інструкції з розблокування" unlock: "Розблоковувати мій аккаунт" welcome: "Ласкаво просимо %{email}!" passwords: @@ -80,20 +80,20 @@ uk: new: forgot_password: "Забули пароль?" no_account: "Немає жодного контакту з цим email. Якщо ви чекаєте запрошення, ми відправимо їх якнайскоріше" - send_password_instructions: "Відправити мені інструкції по скиданню пароля" - send_instructions: "Ви отримаєте email з інструкцією по скиданню пароля на протязі декількох хвилин." + send_password_instructions: "Відправити мені інструкції зі скидання пароля" + send_instructions: "Ви отримаєте email з інструкцією щодо скидання пароля протягом декількох хвилин." updated: "Ваш пароль був успішно змінений." registrations: - destroyed: "До побачення! Ваш акаунт видалений. Ми будемо раді бачити вас знову." + destroyed: "Ваш акаунт вилучено. Ми будемо раді бачити вас знову. Усього найкращого!" signed_up: "Реєстрація аккаунта завершена. Вам відправлений email з подальшими вказівками." updated: "Ваш акаунт оновлено." sessions: new: - alpha_software: "Ви збираєтеся використати альфа версію програмного забезпечення." - bugs_and_feedback: "Майте на увазі, ви стикатиметеся з помилками. Ми рекомендуємо вам використати кнопку Зворотний зв'язок з правого боку браузеру! Ми вирішуватимемо помилки так швидко, як зможемо." - bugs_and_feedback_mobile: "Будьте готовий зіткнутися з помилками. Про які ми просимо вас повідомляти негайно! Ми постараємося вирішити вашу проблему в найкоротші терміни." + alpha_software: "Ви збираєтеся використати альфа-версію програмного забезпечення." + bugs_and_feedback: "Майте на увазі, найвірогідніше ви наштовхуватиметесь на помилки програми. Ми рекомендуємо вам в таких випадках використати кнопку «Зворотний зв'язок» з правого боку переглядачки! Ми намагатимемось розв’язати кожну проблему якнайшвидше." + bugs_and_feedback_mobile: "Будьте готові наштовхнутись на помилки програми. І ми просимо вас одразу про них повідомляти! Ми старатимемось якнайшвидше виправити всі вади, про які ви повідомите." login: "Увійти" - modern_browsers: "підтримує тільки сучасні браузери." + modern_browsers: "підтримує тільки сучасні переглядачки." password: "Пароль" remember_me: "Запам'ятати" sign_in: "Увійти" @@ -103,17 +103,17 @@ uk: shared: links: forgot_your_password: "Забули пароль?" - receive_confirmation: "Не отримали інструкції по підтвердженню?" - receive_unlock: "Не отримали інструкції по розблокуванню?" + receive_confirmation: "Не отримали інструкції з підтвердження?" + receive_unlock: "Не отримали інструкції з розблокування?" sign_in: "Увійти" sign_up: "Реєстрація" - sign_up_closed: "Реєстрація на даний момент не доступна." + sign_up_closed: "Реєстрація зараз недоступна." mail_signup_form: sign_up_for_an_invite: "Зареєструйтеся для запрошення!" unlocks: new: resend_unlock: "Переслати інструкції з розблокування" - send_instructions: "Ви отримаєте email з вказівками по розблокуванню облікового запису впродовж декількох хвилин." + send_instructions: "Ви отримаєте email з вказівками щодо розблокування облікового запису впродовж декількох хвилин." unlocked: "Ваш акаунт був успішно розблокований. Тепер ви увійшли в систему." errors: messages: diff --git a/config/locales/diaspora/ar.yml b/config/locales/diaspora/ar.yml index 90f08399c..23fb7375b 100644 --- a/config/locales/diaspora/ar.yml +++ b/config/locales/diaspora/ar.yml @@ -246,7 +246,6 @@ ar: many: "%{count} رسالةً جديدة" one: "رسالةٌ واحدةٌ جديدة" other: "%{count} رسالة جديدة" - two: "%{count} رسالتان جديدتان" zero: "لا توجد رسائل جديدة" index: create_a_new_message: "إنشئ رسالة جديدة." @@ -331,21 +330,18 @@ ar: many: "%{count} كرهوا هذا" one: "كره هذا شخصُ واحد" other: "%{count} كرهو هذا" - two: "%{count} كرها" zero: "لا أحد يكره هذا" people_like_this: few: "%{count} إعجابات" many: "%{count} إعجابًا" one: "إعجابٌ واحد" other: "%{count} إعجابًا" - two: "%{count} إعجابان" zero: "لا إعجابات" people_like_this_comment: few: "%{count} إعجابات" many: "%{count} إعجابًا" one: "إعجابٌ واحد" other: "%{count} إعجاب" - two: "%{count} أعجبهما" zero: "لا إعجابات" limited: "محدود" more: "أكثر" @@ -357,21 +353,18 @@ ar: many: "%{actors} علق أيضا على %{post_link} %{post_author}." one: "%{actors} علق أيضا على %{post_link} %{post_author}." other: "%{actors} علق أيضا على %{post_link} %{post_author}." - two: "%{actors} علقا أيضا على %{post_link} مشاركة %{post_author}." zero: "%{actors} علق أيضا على %{post_link} %{post_author}." also_commented_deleted: few: "%{actors} علقوا على المشاركة المحذوفة." many: "%{actors} علقوا على المشاركة المحذوفة." one: "%{actors} علق على المشاركة المحذوفة." other: "%{actors} علقوا على المشاركة المحذوفة." - two: "%{actors} علقا على مشاركتك المحذوفة." zero: "%{actors} علق على المشاركة المحذوفة." comment_on_post: few: "%{actors} علقوا على %{post_link}." many: "%{actors} علقوا على %{post_link}." one: "%{actors} علق على %{post_link}." other: "%{actors} علقوا على %{post_link}." - two: "%{actors} علقا على %{post_link}." zero: "%{actors} علق على %{post_link}." helper: new_notifications: @@ -379,7 +372,6 @@ ar: many: "%{count} تنبيهات جديدة" one: "1 تنبيه جديد" other: "%{count} تنبيهات جديدة" - two: "%{count} تنبيهان" zero: "لا تنبيهات جديدة" index: and: "و" @@ -388,7 +380,6 @@ ar: many: "و %{count} آخرون" one: "و آخر" other: "و %{count} آخرون" - two: "و %{count} آخران" zero: "و لا أحد" mark_all_as_read: "وضع الجميع كمقروء" mark_unread: "غير مقروء" @@ -398,28 +389,24 @@ ar: many: "%{actors} أعجبوا لتوهم بـ %{post_link}." one: "%{actors} أعجب لتوه بـ %{post_link}." other: "%{actors} أعجبوا لتوهم بـ %{post_link}." - two: "%{actors} أعجبا لتوهما بـ %{post_link}." zero: "%{actors} أعجب لتوه بـ %{post_link}." liked_post_deleted: few: "%{actors} أعجبوا بمشاركتك المحذوفة." many: "%{actors} أعجبوا بمشاركتك المحذوفة." one: "%{actors} أعجب بمشاركتك المحذوفة." other: "%{actors} أعجبوا بمشاركتك المحذوفة." - two: "%{actors} أعجبتهما مشاركتك المحذوفة." zero: "%{actors} أعجب بمشاركتك المحذوفة." mentioned: few: "%{actors} أشاروا إليك في %{post_link}." many: "%{actors} أشاروا إليك في %{post_link}." one: "%{actors} أشار إليك في %{post_link}." other: "%{actors} أشاروا إليك في %{post_link}." - two: "%{actors} أشارا إليك في %{post_link}." zero: "%{actors} أشار إليك في %{post_link}." mentioned_deleted: few: "%{actors} أشاروا إليك في مشاركة محذوفة." many: "%{actors} أشاروا إليك في مشاركة محذوفة." one: "%{actors} أشار إليك في مشاركة محذوفة." other: "%{actors} أشاروا إليك في مشاركة محذوفة." - two: "%{actors} أشارا إليك في مشاركة محذوفة." zero: "%{actors} أشار إليك في مشاركة محذوفة." post: "مشاركة" private_message: @@ -427,28 +414,24 @@ ar: many: "%{actors} راسلوك." one: "%{actors} راسلك." other: "%{actors} راسلوك." - two: "%{actors} راسلاك." zero: "%{actors} راسلك." reshared: few: "%{actors} أعادوا نشر %{post_link}." many: "%{actors} أعادوا نشر %{post_link}." one: "%{actors} أعاد نشر %{post_link}." other: "%{actors} أعادوا نشر %{post_link}." - two: "%{actors} أعادا نشر %{post_link}." zero: "%{actors} أعاد نشر %{post_link}." reshared_post_deleted: few: "%{actors} أعادوا نشر مشاركتك المحذوفة." many: "%{actors} أعادوا نشر مشاركتك المحذوفة." one: "%{actors} أعاد نشر مشاركتك المحذوفة." other: "%{actors} أعادوا نشر مشاركتك المحذوفة." - two: "%{actors} أعادا نشر مشاركتك المحذوفة." zero: "%{actors} أعاد نشر مشاركتك المحذوفة" started_sharing: few: "%{actors} بدؤوا المشاركة معك." many: "%{actors} بدؤوا المشاركة معك." one: "%{actors} بدأ المشاركة معك." other: "%{actors} بدؤوا المشاركة معك." - two: "%{actors} بدآ المشاركة معك." zero: "%{actors} بدأ المشاركة معك." notifier: a_post_you_shared: "مشاركة." @@ -598,7 +581,6 @@ ar: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" reshare_by: "أعيد مشاركتها بواسطة %{author}" previous: "السابق" @@ -631,7 +613,6 @@ ar: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: closed: "التسجيلات مغلقة على هذه المنصة" @@ -669,7 +650,6 @@ ar: many: "%{count} طلب تشارك جديد!" one: "طلب تشارك جديد!" other: "%{count} طلب تشارك جديد!" - two: "%{count} طلبان جديدان!" zero: "لا يوجد طلبات مشاركة جديدة" manage_aspect_contacts: existing: "جهات الإتصال الموجودة مسبقًا" @@ -687,7 +667,6 @@ ar: many: "%{count} إعادة النشر" one: "إعادة نشرها مرات عديدة" other: "%{count} إعادة النشر" - two: "%{count} إعادة النشر مرة واحدة " zero: "إعادة النشر" reshare_confirmation: "هل أُعِيد نشرالمشاركة %{author} ؟" reshare_original: "أعد نشر المشاركة الأصلية" @@ -740,7 +719,6 @@ ar: many: "في %{count} فئات" one: "في %{count} فئات" other: "في %{count} فئة" - two: "في %{count} فئتين" zero: "أشف إلى فئة" contact_list: all_contacts: "جميع الأعضاء" @@ -815,7 +793,6 @@ ar: many: "المرجو ان تكون رسالتك أقل من %{count} حرف" one: "المرجو ان تكون رسالتك أقل من %{count} حروف" other: "المرجو ان تكون رسالتك أقل من %{count} حروف" - two: "المرجو ان تكون رسالتك أقل من %{count} حرف" zero: "المرجو ان تكون رسالتك أقل من %{count} حروف" stream_helper: hide_comments: "أخْفِ كل التعليقات" @@ -824,7 +801,6 @@ ar: many: "اعرض تعليقين أخرين " one: "اعرض %{count} تعليقات أخرى " other: "لا توجد تعليقات أخرى " - two: "اعرض تعليقا أخر" zero: "اعرض %{count} تعليقات أخرى " streams: activity: diff --git a/config/locales/diaspora/art-nvi.yml b/config/locales/diaspora/art-nvi.yml index 4d7a12158..f398d67a2 100644 --- a/config/locales/diaspora/art-nvi.yml +++ b/config/locales/diaspora/art-nvi.yml @@ -92,9 +92,6 @@ art-nvi: sent: "'Upxare fpìme'" helper: new_messages: - human: "" - po: "'upxare amip" - yml: "%{count}a upxare amip" zero: "kea 'upxare amip" index: inbox: "'Upxare tsenge" diff --git a/config/locales/diaspora/bg.yml b/config/locales/diaspora/bg.yml index df620a714..6acef39f3 100644 --- a/config/locales/diaspora/bg.yml +++ b/config/locales/diaspora/bg.yml @@ -224,7 +224,6 @@ bg: many: "%{count} нови съобщения" one: "1 ново съобщение" other: "%{count} нови съобщения" - two: "%{count} нови съобщения" zero: "Няма нови съобщения" index: create_a_new_message: "създаване на съобщение" @@ -308,21 +307,18 @@ bg: many: "не е харесана %{count} пъти" one: "не е харесана %{count} път" other: "не е харесана %{count} пъти" - two: "не е харесана %{count} пъти" zero: "всички са я харесали" people_like_this: few: "харесана %{count} пъти" many: "харесана %{count} пъти" one: "харесана %{count} път" other: "харесана %{count} пъти" - two: "харесана %{count} пъти" zero: "не е харесана" people_like_this_comment: few: "харесан %{count} пъти" many: "харесан %{count} пъти" one: "харесан %{count} път" other: "харесан %{count} пъти" - two: "харесан %{count} пъти" zero: "не е харесан" limited: "Ограничена" more: "Още" @@ -334,7 +330,6 @@ bg: many: "%{actors} също коментираха %{post_link} на %{post_author}." one: "%{actors} също коментира %{post_link} на %{post_author}." other: "%{actors} също коментираха %{post_link} на %{post_author}." - two: "%{actors} също коментираха %{post_link} на %{post_author}." zero: "%{actors} също коментира %{post_link} на %{post_author}." also_commented_deleted: one: "%{actors} коментира изтрита публикация." @@ -345,7 +340,6 @@ bg: many: "%{actors} коментираха ваша %{post_link}." one: "%{actors} коментира ваша %{post_link}." other: "%{actors} коментираха ваша %{post_link}." - two: "%{actors} коментираха ваша %{post_link}." zero: "%{actors} коментира ваша %{post_link}." helper: new_notifications: @@ -353,7 +347,6 @@ bg: many: "%{count} нови известия" one: "1 ново известие" other: "%{count} нови известия" - two: "%{count} нови известия" zero: "Няма нови известия" index: and: "и" @@ -362,7 +355,6 @@ bg: many: "и други %{count}-ма" one: "и още някой" other: "и други %{count}-ма" - two: "и други %{count}-ма" zero: "и никой друг" mark_all_as_read: "Маркиране на всички като прочетени" notifications: "Известия" @@ -529,7 +521,6 @@ bg: many: "%{count} снимки от %{author}" one: "1 снимка от %{author}" other: "%{count} снимки от %{author}" - two: "2 снимки от %{author}" zero: "Няма снимки от %{author}" previous: "предишна" privacy: "Поверителност" @@ -561,7 +552,6 @@ bg: many: "%{count} отзива" one: "1 отзив" other: "%{count} отзива" - two: "%{count} отзива" zero: "0 отзива" registrations: closed: "Нови регистрации не са възможни на този pod на Diaspora." @@ -593,7 +583,6 @@ bg: many: "%{count} нови покани!" one: "нова покана!" other: "%{count} нови покани!" - two: "%{count} нови покани!" zero: "няма нови покани" manage_aspect_contacts: existing: "Съществуващи контакти" @@ -610,7 +599,6 @@ bg: many: "%{count} споделяния" one: "1 споделяне" other: "%{count} споделяния" - two: "%{count} споделяния" zero: "Споделяне" reshare_confirmation: "Споделяне публикацията на %{author}?" reshare_original: "Споделяне на оригинала" @@ -665,7 +653,6 @@ bg: many: "В %{count} аспекта" one: "В %{count} аспект" other: "В %{count} аспекта" - two: "В %{count} аспекта" zero: "Добавете контакт" contact_list: all_contacts: "Всички контакти" @@ -738,7 +725,6 @@ bg: many: ", моля съкратете съобщението си до %{count} знака" one: ", моля съкратете съобщението си до %{count} знака" other: ", моля съкратете съобщението си до %{count} знака" - two: ", моля съкратете съобщението си до %{count} знака" zero: ", моля съкратете съобщението си до %{count} знака" stream_helper: hide_comments: "Скриване на коментарите" @@ -747,7 +733,6 @@ bg: many: "Показване на останалите %{count} коментара" one: "Показване на още 1 коментар" other: "Показване на останалите %{count} коментара" - two: "Показване на още 2 коментара" zero: "Няма други коментари" streams: aspects: diff --git a/config/locales/diaspora/br.yml b/config/locales/diaspora/br.yml index f62becd7c..e10c4024b 100644 --- a/config/locales/diaspora/br.yml +++ b/config/locales/diaspora/br.yml @@ -167,7 +167,6 @@ br: many: "%{count} a gemennadennoù nevez" one: "1 gemennadenn nevez" other: "%{count} a gemennadennoù nevez" - two: "%{count} new messages" zero: "kemenadenn nevez ebet" index: create_a_new_message: "sevel ur gemennadenn nevez" @@ -245,7 +244,6 @@ br: many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" limited: "Bevennet" more: "Muioc'h" @@ -257,21 +255,18 @@ br: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -279,7 +274,6 @@ br: many: "%{count} new notifications" one: "1 new notifications" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "no new notifications" index: and: "ha" @@ -288,7 +282,6 @@ br: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" mark_all_as_read: "Merkit pep tra evel lennet" notifications: "Kemennoù" @@ -297,28 +290,24 @@ br: many: "%{actors} has just liked your %{post_link}." one: "%{actors} has just liked your %{post_link}." other: "%{actors} has just liked your %{post_link}." - two: "%{actors} has just liked your %{post_link}." zero: "%{actors} has just liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." post: "embann" private_message: @@ -326,28 +315,24 @@ br: many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} has reshared your %{post_link}." many: "%{actors} has reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} has reshared your %{post_link}." - two: "%{actors} has reshared your %{post_link}." zero: "%{actors} has reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: click_here: "klikañ amañ" @@ -412,7 +397,6 @@ br: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" previous: "war-raok" privacy: "Prevezted" @@ -437,7 +421,6 @@ br: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: edit: @@ -462,7 +445,6 @@ br: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" new_request_to_person: sent: "kaset!" @@ -473,7 +455,6 @@ br: many: "%{count} Reshares" one: "1 Reshare" other: "%{count} Reshares" - two: "%{count} reshares" zero: "Reshare" reshare_confirmation: "Reshare %{author} - %{text}?" reshare_original: "Reshare orignial" @@ -498,7 +479,6 @@ br: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" contact_list: all_contacts: "An holl zarempredoù" @@ -534,7 +514,6 @@ br: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: hide_comments: "kuzhaat an embannoù" @@ -543,7 +522,6 @@ br: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/ca.yml b/config/locales/diaspora/ca.yml index 0679338bc..5ff7f9e46 100644 --- a/config/locales/diaspora/ca.yml +++ b/config/locales/diaspora/ca.yml @@ -1,9 +1,9 @@ -# Copyright © 2011, Diaspora Inc. This file is +# Copyright © 2011, 2012, 2013 Diaspora Inc. This file is # licensed under the Affero General Public License version 3 or later. See # the COPYRIGHT file. # # Catalan translation of Diaspora. -# Jordi Mallach <jordi@softcatala.org>, 2011. +# Jordi Mallach <jordi@softcatala.org>, 2011, 2012, 2013. # Abans d'actualitzar aquesta traducció, si us plau poseu-vos en contacte # amb Jordi Mallach o Softcatalà <info@softcatala.org>. @@ -250,6 +250,9 @@ ca: tutorials_wiki_and_forum: "%{tutorial}, %{wiki} i %{forum}: Tutorials, guies i notícies mantinguts per la comunitat" email_feedback: "Envieu per %{link} els vostres comentaris, si ho preferiu" email_link: "correu electrònic" + any_problem: "Cap problema?" + contact_podmin: "Contacteu amb l'administrador de la vostra beina!" + mail_podmin: "Correu de l'administrador de la beina" cubbies: heading: "Connecteu a Cubbi.es" explanation: "Cubbi.es és la primera aplicació Diàspora sota desenvolupament." @@ -330,6 +333,7 @@ ca: many_people_are_you_sure: "Esteu segur que voleu iniciar una conversa privada amb més de %{suggested_limit} contactes? Publicar a aquest aspecte pot ser una forma millor de contactar amb ells." spotlight: community_spotlight: "Usuaris destacats" + suggest_member: "Suggereix un membre" conversations: @@ -358,6 +362,7 @@ ca: create: sent: "S'ha enviat el missatge" fail: "Missatge invàlid" + no_contact: "Ei, primer heu d'afegir el contacte!" new_message: fail: "Missatge invàlid" destroy: @@ -375,12 +380,14 @@ ca: excited: "%{name} és molt content de trobar-vos aquí." invitations: create: - sent: "S'ha enviat invitacions a: " + sent: "S'ha enviat invitacions a: %{emails}" rejected: "Les adreces següents han tingut problemes: " no_more: "No teniu més invitacions." already_sent: "Ja heu convidat aquesta persona." already_contacts: "Ja esteu connectat a aquesta persona" own_address: "No podeu enviar una invitació a la vostra pròpia adreça." + empty: "Introduïu almenys una adreça de correu." + note_already_sent: "Ja s'ha enviat invitacions a: %{emails}" new: language: "Llengua" invite_someone_to_join: "Convideu algú a unir-se al Diàspora!" @@ -426,6 +433,7 @@ ca: public_feed: "Canal públic del Diàspora per a %{name}" your_aspects: "els vostres aspectes" back_to_top: "Torna a dalt" + source_package: "Baixa el paquet del codi font" likes: @@ -712,6 +720,7 @@ ca: email: "CORREU ELECTRÒNIC" username: "NOM D'USUARI" password: "CONTRASENYA" + password_confirmation: "CONFIRMACIÓ DE LA CONTRASENYA" continue: "Continua" create: success: "Us heu unit al Diàspora!" @@ -1043,9 +1052,8 @@ ca: awesome_take_me_to_diaspora: "Fantàstic! Porta'm al Diàspora*" who_are_you: "Qui ets?" - we_can_speed_things_up: "Podem accelerar un poc les coses" - hooking_up_fb: "enllaçant el vostre compte de Facebook" - what_facebook_does: "al Diàspora. Això obtindrà el vostre nom i foto, i habilitarà la publicació creuada." + connect_to_facebook: "Podem accelerar un poc les coses %{link} al Diàspora. Això obtindrà el vostre nom i foto, i habilitarà la publicació creuada." + connect_to_facebook_link: "enllaçant el vostre compte de Facebook" what_are_you_in_to: "Què t'interessa?" hashtag_explanation: "Les etiquetes us permeten parlar i seguir els vostres interesos. També són una bona manera de trobar gent nova al Diàspora." diff --git a/config/locales/diaspora/cs.yml b/config/locales/diaspora/cs.yml index 80fcdd792..5ef2a044e 100644 --- a/config/locales/diaspora/cs.yml +++ b/config/locales/diaspora/cs.yml @@ -253,7 +253,6 @@ cs: many: "%{count} nových zpráv" one: "1 nová zpráva" other: "%{count} nových zpráv" - two: "%{count} nové zprávy" zero: "Žádné nové zprávy" index: create_a_new_message: "vytvořit novou zprávu" @@ -334,7 +333,6 @@ cs: many: "%{count} lidem se to nelíbí" one: "1 osobě se to nelíbí" other: "%{count} lidem se to nelíbí" - two: "%{count} dislikes" zero: "žádná záporná hodnocení" people_like_this: few: "%{count} lidem se to líbí" @@ -372,7 +370,6 @@ cs: many: "%{count} nových oznámení" one: "1 nové oznámení" other: "%{count} nových oznámení" - two: "%{count} nová oznámení" zero: "Žádná nová oznámení" index: and: "a" @@ -381,7 +378,6 @@ cs: many: "a %{count} dalších" one: "a ještě jeden" other: "a %{count} dalších" - two: "a %{count} další" zero: "a už nikdo" mark_all_as_read: "Označit vše jako přečtené" notifications: "Oznámení" @@ -390,14 +386,12 @@ cs: many: "%{actors} se zalíbil váš %{post_link}." one: "%{actors} se zalíbil váš %{post_link}." other: "%{actors} se zalíbil váš %{post_link}." - two: "%{actors} se zalíbil váš %{post_link}." zero: "%{actors} se zalíbil váš %{post_link}." liked_post_deleted: few: "%{actors} se líbil váš odstraněný příspěvek." many: "%{actors} se líbil váš odstraněný příspěvek." one: "%{actors} se líbil váš odstraněný příspěvek." other: "%{actors} se líbil váš odstraněný příspěvek." - two: "%{actors} se líbil váš odstraněný příspěvek." zero: "%{actors} se líbil váš odstraněný příspěvek." mentioned: few: "%{actors} vás zmínili na %{post_link}." @@ -635,7 +629,6 @@ cs: many: "%{count} nové žádosti!" one: "nová žádost!" other: "%{count} nových žádostí!" - two: "%{count} nové žádosti!" zero: "žádné nové žádosti" manage_aspect_contacts: existing: "Existující kontakty" @@ -784,7 +777,6 @@ cs: many: "Zobrazit %{count} dalších komentářů" one: "Zobrazit 1 další komentář" other: "Zobrazit %{count} dalších komentářů" - two: "Zobrazit 2 další komentáře" zero: "Žádné další komentáře" streams: activity: diff --git a/config/locales/diaspora/cy.yml b/config/locales/diaspora/cy.yml index bf64f557c..f2834a3d5 100644 --- a/config/locales/diaspora/cy.yml +++ b/config/locales/diaspora/cy.yml @@ -110,7 +110,6 @@ cy: many: "%{count} new messages" one: "1 new messages" other: "%{count} new messages" - two: "%{count} new messages" zero: "no new messages" index: message_inbox: "Neges Inbox" @@ -142,21 +141,18 @@ cy: many: "%{count} o bobl ddim yn hoffi hwn" one: "%{count} dislike" other: "%{count} people disliked this" - two: "%{count} dislikes" zero: "no people disliked this" people_like_this: few: "%{count} people liked this" many: "%{count} people liked this" one: "1 unigolyn yn hoffi hyn" other: "%{count} pobl yn hoffi hyn" - two: "%{count} likes" zero: "no people liked this" people_like_this_comment: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" limited: "Cyfyngedig" next: "nesaf" @@ -166,21 +162,18 @@ cy: many: "Mae %{actors} hefyd wedi sylwi ar %{post_link} %{post_author}." one: "Mae %{actors} hefyd wedi sylwi ar %{post_link} %{post_author}." other: "Mae %{actors} hefyd wedi sylwi ar %{post_link} %{post_author}." - two: "Mae %{actors} hefyd wedi sylwi ar %{post_link} %{post_author}." zero: "Mae %{actors} hefyd wedi sylwi ar %{post_link} %{post_author}." also_commented_deleted: few: "Mae %{actors} wedi sylwi ar bost dileuwyd" many: "Mae %{actors} wedi sylwi ar bost dileuwyd" one: "Mae %{actors} wedi sylwi ar bost dileuwyd" other: "Mae %{actors} wedi sylwi ar bost dileuwyd" - two: "Mae %{actors} wedi sylwi ar bost dileuwyd" zero: "Mae %{actors} wedi sylwi ar bost dileuwyd" comment_on_post: few: "Mae %{actors} wedi sylwi ar eich %{post_link}." many: "Mae %{actors} wedi sylwi ar eich %{post_link}." one: "Mae %{actors} wedi sylwi ar eich %{post_link}." other: "Mae %{actors} wedi sylwi ar eich %{post_link}." - two: "Mae %{actors} wedi sylwi ar eich %{post_link}." zero: "Mae %{actors} wedi sylwi ar eich %{post_link}." helper: new_notifications: @@ -188,7 +181,6 @@ cy: many: "%{count} hysbysiadau newydd" one: "1 new notification" other: "%{count} hysbysiadau newydd" - two: "%{count} new notifications" zero: "no new notifications" index: and: "a" @@ -197,7 +189,6 @@ cy: many: "and %{count} others" one: "ac un arall" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" mark_all_as_read: "Nodiad pob wedi darllen" notifications: "Hysbysiadau" @@ -206,28 +197,24 @@ cy: many: "Mae %{actors} wedi newydd hoffi eich %{post_link}." one: "Mae %{actors} wedi newydd hoffi eich %{post_link}." other: "Mae %{actors} wedi newydd hoffi eich %{post_link}." - two: "Mae %{actors} wedi newydd hoffi eich %{post_link}." zero: "Mae %{actors} wedi newydd hoffi eich %{post_link}." liked_post_deleted: few: "%{actors} yn hoffi y post bod chi wedi dileu." many: "%{actors} yn hoffi y post bod chi wedi dileu." one: "%{actors} yn hoffi y post bod chi wedi dileu." other: "%{actors} yn hoffi y post bod chi wedi dileu." - two: "%{actors} yn hoffi y post bod chi wedi dileu." zero: "%{actors} yn hoffi y post bod chi wedi dileu." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." post: "bost" private_message: @@ -235,28 +222,24 @@ cy: many: "Mae %{actors} wedi anfon neges iddych chi." one: "Mae %{actors} wedi anfon neges iddych chi." other: "Mae %{actors} wedi anfon neges iddych chi." - two: "Mae %{actors} wedi anfon neges iddych chi." zero: "Mae %{actors} wedi anfon neges iddych chi." reshared: few: "Mae %{actors} wedi ailrhannu eich %{post_link}." many: "Mae %{actors} wedi ailrhannu eich %{post_link}." one: "Mae %{actors} wedi ail-bostio eich %{post_link}." other: "Mae %{actors} wedi ail-bostio eich %{post_link}." - two: "Mae %{actors} wedi ailrhannu eich %{post_link}." zero: "Mae %{actors} wedi ail-bostio eich %{post_link}." reshared_post_deleted: few: "mae %{actors} wedi rhannu eich post wedi dileu." many: "mae %{actors} wedi rhannu eich post wedi dileu." one: "mae %{actors} wedi rhannu eich post wedi dileu." other: "%{actors} wedi rhannu y swydd yr ydych yn dileu." - two: "mae %{actors} wedi rhannu eich post wedi dileu." zero: "%{actors} wedi rhannu y swydd yr ydych yn dileu." started_sharing: few: "Mae %{actors} wedi dechrau rhannu gyda chi." many: "Mae %{actors} wedi dechrau rhannu gyda chi." one: "Mae %{actors} wedi dechrau rhannu gyda chi." other: "Mae %{actors} wedi dechrau rhannu gyda chi." - two: "Mae %{actors} wedi dechrau rhannu gyda chi." zero: "Mae %{actors} wedi dechrau rhannu gyda chi." notifier: a_post_you_shared: "post." @@ -326,7 +309,6 @@ cy: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" previous: "blaenorol" profile: "Proffil" @@ -343,7 +325,6 @@ cy: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: create: @@ -366,7 +347,6 @@ cy: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" reshares: create: @@ -378,7 +358,6 @@ cy: many: "rhannwyd %{count} waith" one: "Rhannwyd unwaith" other: "rhannwyd %{count} waith" - two: "rhannwyd %{count} waith" zero: "Ailrhannu" reshare_confirmation: "Ailrhannu post %{author}?" reshare_original: "Ailrhannu" @@ -415,7 +394,6 @@ cy: many: "Mewn %{count} agweddau" one: "Mewn %{count} agwedd" other: "Mewn %{count} agweddau" - two: "Mewn %{count} agweddau" zero: "Add to aspect" contact_list: all_contacts: "Cysylltiadau i gŷd" @@ -455,7 +433,6 @@ cy: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: hide_comments: "hide comments" @@ -464,7 +441,6 @@ cy: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/da.yml b/config/locales/diaspora/da.yml index 27a25bf26..14402a857 100644 --- a/config/locales/diaspora/da.yml +++ b/config/locales/diaspora/da.yml @@ -224,7 +224,6 @@ da: many: "%{count} nye beskeder" one: "1 ny besked" other: "%{count} nye beskeder" - two: "%{count} nye beskeder" zero: "Ingen nye beskeder" index: create_a_new_message: "Opret ny besked" @@ -305,21 +304,18 @@ da: many: "%{count} synes ikke om" one: "Én person synes ikke om" other: "%{count} synes ikke om" - two: "%{count} synes ikke om" zero: "ingen synes ikke om" people_like_this: few: "%{count} synes om dette" many: "%{count} synes om dette" one: "%{count} synes om dette" other: "%{count} synes om dette" - two: "%{count} synes om dette" zero: "ingen synes om dette" people_like_this_comment: few: "%{count} synes om" many: "%{count} synes om" one: "%{count} synes om" other: "%{count} synes om" - two: "%{count} synes om" zero: "ingen synes om" limited: "Begrænset" more: "Mere" @@ -331,21 +327,18 @@ da: many: "%{actors} kommenterede også %{post_author}s %{post_link}." one: "%{actors} kommenterede også %{post_author}s %{post_link}." other: "%{actors} kommenterede også %{post_author}s %{post_link}." - two: "%{actors} kommenterede også %{post_author}s %{post_link}." zero: "%{actors} kommenterede også %{post_author}s %{post_link}." also_commented_deleted: few: "%{actors} kommenterede et slettet indlæg." many: "%{actors} kommenterede et slettet indlæg." one: "%{actors} kommenterede et slettet indlæg." other: "%{actors} kommenterede et slettet indlæg." - two: "%{actors} kommenterede på et slettet indlæg." zero: "%{actors} kommenterede et slettet indlæg." comment_on_post: few: "%{actors} kommenterede dit %{post_link}." many: "%{actors} kommenterede dit %{post_link}." one: "%{actors} kommenterede dit %{post_link}." other: "%{actors} kommenterede dit %{post_link}." - two: "%{actors} kommenterede dit %{post_link}." zero: "%{actors} kommenterede dit %{post_link}." helper: new_notifications: @@ -353,7 +346,6 @@ da: many: "%{count} ny notifikationer" one: "1 ny notifikation" other: "%{count} nye notifikationer" - two: "%{count} nye meddelelser" zero: "Ingen nye notifikationer" index: and: "og" @@ -362,7 +354,6 @@ da: many: "og %{count} andre" one: "og en mere" other: "og %{count} andre" - two: "og %{count} andre" zero: "og ingen andre" mark_all_as_read: "Marker alle som læst" notifications: "Notifikationer" @@ -371,28 +362,24 @@ da: many: "%{actors} har lige syntes om dit %{post_link}." one: "%{actors} har lige syntes om dit %{post_link}." other: "%{actors} har lige syntes om dit %{post_link}." - two: "%{actors} har lige syntes om dit %{post_link}." zero: "%{actors} har lige syntes om dit %{post_link}." liked_post_deleted: few: "%{actors} syntes om dit slettede indlæg." many: "%{actors} syntes om dit slettede indlæg." one: "%{actors} syntes om dit slettede indlæg." other: "%{actors} syntes om dit slettede indlæg." - two: "%{actors} syntes om dit slettede indlæg." zero: "%{actors} syntes om dit slettede indlæg." mentioned: few: "%{actors} har nævnt dig i et %{post_link}." many: "%{actors} har nævnt dig i et %{post_link}." one: "%{actors} har nævnt dig i et indlæg %{post_link}." other: "%{actors} har nævnt dig i et %{post_link}." - two: "%{actors} har nævnt dig i %{post_link}." zero: "%{actors} har nævnt dig i et %{post_link}." mentioned_deleted: few: "%{actors} har nævnt dig i et slettet indlæg." many: "%{actors} har nævnt dig i et slettet indlæg." one: "%{actors} har nævnt dig i et slettet indlæg." other: "%{actors} har nævnt dig i et slettet indlæg." - two: "%{actors} har nævnt dig i et slettet indlæg." zero: "%{actors} har nævnt dig i et slettet indlæg." post: "indlæg" private_message: @@ -400,28 +387,24 @@ da: many: "%{actors} har sendt dig en besked." one: "%{actors} har sendt dig en besked." other: "%{actors} har sendt dig en besked." - two: "%{actors} har sendt dig en besked." zero: "%{actors} har sendt dig en besked." reshared: few: "%{actors} har delt dit %{post_link}." many: "%{actors} har delt dit %{post_link}." one: "%{actors} har delt dit %{post_link}." other: "%{actors} har delt dit %{post_link}." - two: "%{actors} har delt dit %{post_link}." zero: "%{actors} har delt dit %{post_link}." reshared_post_deleted: few: "%{actors} har delt dit slettede indlæg." many: "%{actors} har delt dit slettede indlæg." one: "%{actors} har delt dit slettede indlæg." other: "%{actors} har delt dit slettede indlæg." - two: "%{actors} delte dit slettede indlæg." zero: "%{actors} har delt dit slettede indlæg." started_sharing: few: "%{actors} er begyndt at dele med dig." many: "%{actors} er begyndt at dele med dig." one: "%{actors} er begyndt at dele med dig." other: "%{actors} er begyndt at dele med dig." - two: "%{actors} begyndte at dele med dig." zero: "%{actors} er begyndt at dele med dig." notifier: a_post_you_shared: "et indlæg." @@ -554,7 +537,6 @@ da: many: "%{count} billeder af %{author}" one: "Et billede af %{author}" other: "%{count} billeder af %{author}" - two: "To billeder af %{author}" zero: "Ingen billeder af %{author}" reshare_by: "Videredelt af %{author}" previous: "Forrige" @@ -587,7 +569,6 @@ da: many: "%{count} reaktioner" one: "én reaktion" other: "%{count} reaktioner" - two: "%{count} reaktioner" zero: "nul reaktioner" registrations: closed: "Der er lukket for tilmeldinger på dette Diaspora server." @@ -622,7 +603,6 @@ da: many: "%{Count} nye anmodninger!" one: "ny anmodning!" other: "%{count} nye anmodninger!" - two: "%{count} nye ansøgninger!" zero: "ingen nye anmodninger" manage_aspect_contacts: existing: "Eksisterende kontaktpersoner" @@ -640,7 +620,6 @@ da: many: "%{count} delinger" one: "Én deling" other: "%{count} delinger" - two: "%{count} delinger" zero: "Del" reshare_confirmation: "Del %{author} - %{text}?" reshare_original: "Del original" @@ -695,7 +674,6 @@ da: many: "I %{count} aspekter" one: "I %{count} aspekt" other: "I %{count} aspekter" - two: "I %{count} aspekter" zero: "Tilføj kontakt" contact_list: all_contacts: "Alle kontaktpersoner" @@ -767,7 +745,6 @@ da: many: "Din status besked skal være mindre en %{count} tegn" one: "Status opdateringen skal være mindre end %{count} tegn" other: "Lav venligst en meddelse på under %{count} tegn" - two: "vær venlig at skrive din status besked mindre end %{count} tegn" zero: "vær' venlig at lave din status besked mindre end %{count} tegn" stream_helper: hide_comments: "Skjul alle kommentarer" @@ -776,7 +753,6 @@ da: many: "Vis %{count} flere kommentarer" one: "Vis én kommentar mere" other: "Vis %{count} flere kommentarer" - two: "Vis to kommentarer til" zero: "Ikke flere kommentarer" streams: activity: diff --git a/config/locales/diaspora/de.yml b/config/locales/diaspora/de.yml index f2e3daf9f..3be347b59 100644 --- a/config/locales/diaspora/de.yml +++ b/config/locales/diaspora/de.yml @@ -157,6 +157,8 @@ de: donate: "Spenden" handle_explanation: "Das ist deine Diaspora-ID. Du kannst sie wie eine E-Mail-Adresse weitergeben, damit andere Nutzer mit dir Kontakt aufnehmen können." help: + any_problem: "Gibt's ein Problem?" + contact_podmin: "Kontaktiere den Administrator deines Pods!" do_you: "Hast du:" email_feedback: "Dein Feedback für Diaspora per %{link}" email_link: "Email" @@ -278,11 +280,13 @@ de: people_sharing: "Leute, die mit dir teilen:" spotlight: community_spotlight: "Gemeinschafts-Schaukasten" + suggest_member: "Ein Mitglied vorschlagen" two: "%{count} Kontakte" zero: "Kontakte" conversations: create: fail: "Ungültige Nachricht" + no_contact: "Hoppla, du musst den Kontakt erst hinzufügen!" sent: "Nachricht versendet" destroy: success: "Konversation erfolgreich entfernt" @@ -292,7 +296,6 @@ de: many: "%{count} neue Nachrichten" one: "Eine neue Nachricht" other: "%{count} neue Nachrichten" - two: "%{count} neue Nachrichten" zero: "Keine neuen Nachrichten" index: create_a_new_message: "Erstelle eine neue Nachricht" @@ -338,10 +341,12 @@ de: create: already_contacts: "Du bist bereits mit dieser Person verbunden" already_sent: "Du hast diese Person bereits eingeladen." + empty: "Bitte mindestens eine E-Mail-Adresse eingeben." no_more: "Du hast keine Einladungen mehr." + note_already_sent: "Es wurde bereits eine Einladung an %{emails} gesendet" own_address: "Du kannst keine Einladung an deine eigene Adresse senden." rejected: "Mit diesen E-Mail-Adressen gab es Probleme:" - sent: "Einladungen wurden verschickt an:" + sent: "Einladungen wurden an %{emails} verschickt." edit: accept_your_invitation: "Deine Einladung akzeptieren" your_account_awaits: "Dein Konto wartet!" @@ -389,21 +394,18 @@ de: many: "%{count} Personen gefällt das nicht" one: "Einer Person gefällt das nicht" other: "%{count} Personen gefällt das nicht" - two: "%{count} Personen gefällt das nicht" zero: "Keinem gefällt das nicht" people_like_this: few: "%{count} Personen gefällt das" many: "%{count} Personen gefällt das" one: "Einer Person gefällt das" other: "%{count} Personen gefällt das" - two: "%{count} Personen gefällt das" zero: "Keinem gefällt das" people_like_this_comment: few: "Gefällt %{count}" many: "Gefällt %{count}" one: "Gefällt %{count}" other: "Gefällt %{count}" - two: "Gefällt %{count}" zero: "Gefällt niemandem" limited: "Begrenzt" more: "Mehr" @@ -415,21 +417,18 @@ de: many: "%{actors} haben auch %{post_author}s %{post_link} kommentiert." one: "%{actors} hat auch %{post_author}s %{post_link} kommentiert." other: "%{actors} haben auch %{post_author}s %{post_link} kommentiert." - two: "%{actors} haben auch %{post_author}s %{post_link} kommentiert." zero: "%{actors} hat auch %{post_author}s %{post_link} kommentiert." also_commented_deleted: few: "%{actors} haben einen inzwischen gelöschten Beitrag kommentiert." many: "%{actors} haben einen inzwischen gelöschten Beitrag kommentiert." one: "%{actors} hat einen inzwischen gelöschten Beitrag kommentiert." other: "%{actors} haben einen inzwischen gelöschten Beitrag kommentiert." - two: "%{actors} haben einen inzwischen gelöschten Beitrag kommentiert." zero: "Niemand hat einen inzwischen gelöschten Beitrag kommentiert." comment_on_post: few: "%{actors} haben deinen %{post_link} kommentiert." many: "%{actors} haben deinen %{post_link} kommentiert." one: "%{actors} hat deinen %{post_link} kommentiert." other: "%{actors} haben deinen %{post_link} kommentiert." - two: "%{actors} hat deinen %{post_link} kommentiert." zero: "Niemand hat deinen %{post_link} kommentiert." helper: new_notifications: @@ -437,7 +436,6 @@ de: many: "%{count} neue Benachrichtigungen" one: "Eine neue Benachrichtigung" other: "%{count} neue Benachrichtigungen" - two: "%{count} neue Benachrichtigungen" zero: "Keine neuen Benachrichtigungen" index: and: "und" @@ -446,7 +444,6 @@ de: many: "und %{count} anderen" one: "und einem anderen" other: "und %{count} anderen" - two: "und %{count} andere" zero: "und niemand sonst" mark_all_as_read: "Markiere alle als gelesen" mark_unread: "als ungelesen markieren" @@ -456,28 +453,24 @@ de: many: "%{actors} gefällt dein %{post_link}." one: "%{actors} gefällt dein %{post_link}." other: "%{actors} gefällt dein %{post_link}." - two: "%{actors} gefällt dein %{post_link}." zero: "Niemandem gefällt dein %{post_link}." liked_post_deleted: few: "%{actors} gefällt dein gelöschter Beitrag." many: "%{actors} gefällt dein gelöschter Beitrag." one: "%{actors} gefällt dein gelöschter Beitrag." other: "%{actors} gefällt dein gelöschter Beitrag." - two: "%{actors} gefällt dein gelöschter Beitrag." zero: "Niemandem gefällt dein gelöschter Beitrag." mentioned: few: "%{actors} haben dich in einem %{post_link} erwähnt." many: "%{actors} haben dich in einem %{post_link} erwähnt." one: "%{actors} hat dich in einem %{post_link} erwähnt." other: "%{actors} haben dich in einem %{post_link} erwähnt." - two: "%{actors} hat dich in einem %{post_link} erwähnt." zero: "Niemand hat dich in einem %{post_link} erwähnt." mentioned_deleted: few: "%{actors} haben dich in einem gelöschten Beitrag erwähnt." many: "%{actors} haben dich in einem gelöschten Beitrag erwähnt." one: "%{actors} hat dich in einem gelöschten Beitrag erwähnt." other: "%{actors} haben dich in einem gelöschten Beitrag erwähnt." - two: "%{actors} hat dich in einem bereits gelöschten Beitrag erwähnt." zero: "Niemand hat dich in einem gelöschten Beitrag erwähnt." post: "Beitrag" private_message: @@ -485,28 +478,24 @@ de: many: "%{actors} haben dir eine Nachricht gesendet." one: "%{actors} hat dir eine Nachricht gesendet." other: "%{actors} haben dir eine Nachricht gesendet." - two: "%{actors} hat dir eine Nachricht geschickt." zero: "%{actors} hat dir eine Nachricht gesendet." reshared: few: "%{actors} haben deinen %{post_link} weitergesagt." many: "%{actors} haben deinen %{post_link} weitergesagt." one: "%{actors} hat deinen %{post_link} weitergesagt." other: "%{actors} haben deinen %{post_link} weitergesagt." - two: "%{actors} hat deinen %{post_link} weitergeleitet." zero: "%{actors} haben deinen %{post_link} weitergesagt." reshared_post_deleted: few: "%{actors} haben deinen gelöschten Beitrag weitergesagt." many: "%{actors} haben deinen gelöschten Beitrag weitergesagt." one: "%{actors} hat deinen gelöschten Beitrag weitergesagt." other: "%{actors} haben deinen gelöschten Beitrag weitergesagt." - two: "%{actors} hat deinen bereits gelöschten Beitrag weitergeleitet." zero: "%{actors} haben deinen gelöschten Beitrag weitergesagt." started_sharing: few: "%{actors} haben angefangen mit dir zu teilen." many: "%{actors} haben angefangen mit dir zu teilen." one: "%{actors} hat angefangen mit dir zu teilen." other: "%{actors} haben angefangen mit dir zu teilen." - two: "%{actors} haben angefangen mit dir zu teilen." zero: "Niemand hat angefangen mit dir zu teilen." notifier: a_post_you_shared: "ein Beitrag." @@ -664,7 +653,6 @@ de: many: "%{count} Fotos von %{author}" one: "Ein Foto von %{author}" other: "%{count} Fotos von %{author}" - two: "Zwei Fotos von %{author}" zero: "Keine Fotos von %{author}" reshare_by: "Weitergesagt von %{author}" previous: "Vorherige" @@ -699,7 +687,6 @@ de: many: "%{count} Reaktionen" one: "Eine Reaktion" other: "%{count} Reaktionen" - two: "%{count} Reaktionen" zero: "Keine Reaktionen" registrations: closed: "Neuregistrierungen sind auf diesem Pod geschlossen." @@ -725,6 +712,7 @@ de: hey_make: "HEY,<br/>MACHE<br/>ETWAS." join_the_movement: "Tritt der Bewegung bei!" password: "PASSWORT" + password_confirmation: "PASSWORT BESTÄTIGEN" sign_up: "REGISTRIEREN" sign_up_message: "Soziales Netzwerken mit ♥" username: "BENUTZERNAME" @@ -742,7 +730,6 @@ de: many: "%{count} neue Anfragen!" one: "Neue Anfrage!" other: "%{count} neue Anfragen!" - two: "%{count} neue Anfragen!" zero: "Keine neuen Anfragen" manage_aspect_contacts: existing: "Bestehende Kontakte" @@ -760,7 +747,6 @@ de: many: "%{count} mal weitergesagt" one: "Einmal weitergesagt" other: "%{count} mal weitergesagt" - two: "%{count} mal weitergesagt" zero: "Weitersagen" reshare_confirmation: "%{author}s Beitrag weitersagen?" reshare_original: "Ursprünglichen Beitrag weitersagen" @@ -816,7 +802,6 @@ de: many: "In %{count} Aspekten" one: "In einem Aspekt" other: "In %{count} Aspekten" - two: "In %{count} Aspekten" zero: "Kontakt hinzufügen" contact_list: all_contacts: "Alle Kontakte" @@ -893,7 +878,6 @@ de: many: "Bitte kürze deinen Beitrag auf weniger als %{count} Zeichen." one: "Bitte kürze deinen Beitrag auf weniger als %{count} Zeichen." other: "Bitte kürze deinen Beitrag auf weniger als %{count} Zeichen." - two: "Bitte kürze deinen Beitrag auf unter %{count} Zeichen." zero: "Bitte kürze deinen Beitrag auf weniger als %{count} Zeichen." stream_helper: hide_comments: "Alle Kommentare verbergen" @@ -902,7 +886,6 @@ de: many: "Zeige %{count} weitere Kommentare" one: "Zeige einen weiteren Kommentar" other: "Zeige %{count} weitere Kommentare" - two: "Zeige zwei weitere Kommentare" zero: "Keine weiteren Kommentare" streams: activity: @@ -1023,6 +1006,8 @@ de: getting_started: awesome_take_me_to_diaspora: "Super! Bring mich zu Diaspora*" community_welcome: "Diasporas Gemeinschaft ist froh, dich an Bord zu haben!" + connect_to_facebook: "Wir können das Ganze etwas beschleunigen, indem du %{link}. So werden dein Name und dein Profilbild hier eingefügt und die Crossposting-Funktion aktiviert." + connect_to_facebook_link: "dein Facebook-Konto mit Diaspora verlinkst" hashtag_explanation: "Hashtags ermöglichen dir, über deine Interessen zu reden und ihnen zu folgen. Sie sind auch ein guter Weg, neue Leute bei Diaspora zu treffen!" hashtag_suggestions: "Probier mal Tags wie #kunst, #musik oder #gif zu folgen." saved: "Gespeichert!" diff --git a/config/locales/diaspora/de_formal.yml b/config/locales/diaspora/de_formal.yml index aff75b1f1..47d3706a7 100644 --- a/config/locales/diaspora/de_formal.yml +++ b/config/locales/diaspora/de_formal.yml @@ -232,7 +232,6 @@ de_formal: many: "%{count} neue Nachrichten" one: "Eine neue Nachricht" other: "%{count} neue Nachrichten" - two: "%{count} neue Nachrichten" zero: "Keine neuen Nachrichten" index: create_a_new_message: "Erstellen Sie eine neue Nachricht" @@ -318,21 +317,18 @@ de_formal: many: "%{count} Personen gefällt das nicht" one: "Einer Person gefällt das nicht" other: "%{count} Personen gefällt das nicht" - two: "%{count} Personen gefällt das nicht" zero: "Keinem gefällt das nicht" people_like_this: few: "%{count} Personen gefällt das" many: "%{count} Personen gefällt das" one: "Einer Person gefällt das" other: "%{count} Personen gefällt das" - two: "%{count} Personen gefällt das" zero: "Keinem gefällt das" people_like_this_comment: few: "Gefällt %{count}" many: "Gefällt %{count}" one: "Gefällt %{count}" other: "Gefällt %{count}" - two: "%{count} Personen gefällt das" zero: "Gefällt niemandem" limited: "Begrenzt" more: "Mehr" @@ -344,21 +340,18 @@ de_formal: many: "%{actors} haben auch %{post_author}s %{post_link} kommentiert." one: "%{actors} hat auch %{post_author}s %{post_link} kommentiert." other: "%{actors} haben auch %{post_author}s %{post_link} kommentiert." - two: "%{actors} haben auch %{post_author}s %{post_link} kommentiert." zero: "%{actors} hat auch %{post_author}s %{post_link} kommentiert." also_commented_deleted: few: "%{actors} haben einen inzwischen gelöschten Beitrag kommentiert." many: "%{actors} haben einen inzwischen gelöschten Beitrag kommentiert." one: "%{actors} hat einen inzwischen gelöschten Beitrag kommentiert." other: "%{actors} haben einen inzwischen gelöschten Beitrag kommentiert." - two: "%{actors} haben deinen inzwischen gelöschten Beitrag kommentiert." zero: "Niemand hat einen inzwischen gelöschten Beitrag kommentiert." comment_on_post: few: "%{actors} haben Ihren %{post_link} kommentiert." many: "%{actors} haben Ihren %{post_link} kommentiert." one: "%{actors} hat Ihren %{post_link} kommentiert." other: "%{actors} haben Ihren %{post_link} kommentiert." - two: "%{actors} hat Ihren %{post_link} kommentiert." zero: "Niemand hat Ihren %{post_link} kommentiert." helper: new_notifications: @@ -366,7 +359,6 @@ de_formal: many: "%{count} neue Benachrichtigungen" one: "Eine neue Benachrichtigung" other: "%{count} neue Benachrichtigungen" - two: "%{count} neue Benachrichtigungen" zero: "Keine neuen Benachrichtigungen" index: and: "und" @@ -375,7 +367,6 @@ de_formal: many: "und %{count} anderen" one: "und einem anderen" other: "und %{count} anderen" - two: "und %{count} andere" zero: "und niemand sonst" mark_all_as_read: "Markiere alle als gelesen" notifications: "Benachrichtigungen" @@ -384,28 +375,24 @@ de_formal: many: "%{actors} gefällt Ihr %{post_link}." one: "%{actors} gefällt Ihr %{post_link}." other: "%{actors} gefällt Ihr %{post_link}." - two: "%{actors} mag Ihr %{post_link}." zero: "Niemandem gefällt Ihr %{post_link}." liked_post_deleted: few: "%{actors} gefällt Ihr gelöschter Beitrag." many: "%{actors} gefällt Ihr gelöschter Beitrag." one: "%{actors} gefällt Ihr gelöschter Beitrag." other: "%{actors} gefällt Ihr gelöschter Beitrag." - two: "%{actors} gefällt Ihr gelöschter Beitrag." zero: "Niemandem gefällt Ihr gelöschter Beitrag." mentioned: few: "%{actors} haben Sie in einem %{post_link} erwähnt." many: "%{actors} haben Sie in einem %{post_link} erwähnt." one: "%{actors} hat Sie in einem %{post_link} erwähnt." other: "%{actors} haben Sie in einem %{post_link} erwähnt." - two: "%{actors} hat Sie in einem %{post_link} erwähnt." zero: "Niemand hat Sie in einem %{post_link} erwähnt." mentioned_deleted: few: "%{actors} haben Sie in einem gelöschten Beitrag erwähnt." many: "%{actors} haben Sie in einem gelöschten Beitrag erwähnt." one: "%{actors} hat Sie in einem gelöschten Beitrag erwähnt." other: "%{actors} haben Sie in einem gelöschten Beitrag erwähnt." - two: "%{actors} hat Sie in einem bereits gelöschten Beitrag erwähnt." zero: "Niemand hat Sie in einem gelöschten Beitrag erwähnt." post: "Beitrag" private_message: @@ -413,28 +400,24 @@ de_formal: many: "%{actors} haben Ihnen eine Nachricht gesendet." one: "%{actors} hat Ihnen eine Nachricht gesendet." other: "%{actors} haben Ihnen eine Nachricht gesendet." - two: "%{actors} hat Ihnen eine Nachricht geschickt." zero: "%{actors} hat Ihnen eine Nachricht gesendet." reshared: few: "%{actors} haben Ihren %{post_link} weitergesagt." many: "%{actors} haben Ihren %{post_link} weitergesagt." one: "%{actors} hat Ihren %{post_link} weitergesagt." other: "%{actors} haben Ihren %{post_link} weitergesagt." - two: "%{actors} hat Ihren %{post_link} weitergeleitet." zero: "%{actors} haben Ihren %{post_link} weitergesagt." reshared_post_deleted: few: "%{actors} haben Ihren gelöschten Beitrag weitergesagt." many: "%{actors} haben Ihren gelöschten Beitrag weitergesagt." one: "%{actors} hat Ihren gelöschten Beitrag weitergesagt." other: "%{actors} Ihren deinen gelöschten Beitrag weitergesagt." - two: "%{actors} hat Ihren bereits gelöschten Beitrag weitergeleitet." zero: "%{actors} haben Ihren gelöschten Beitrag weitergesagt." started_sharing: few: "%{actors} haben angefangen mit Ihnen zu teilen." many: "%{actors} haben angefangen mit Ihnen zu teilen." one: "%{actors} hat angefangen mit Ihnen zu teilen." other: "%{actors} haben angefangen mit Ihnen zu teilen." - two: "%{actors} haben angefangen mit Ihnen zu teilen." zero: "Niemand hat angefangen mit Ihnen zu teilen." notifier: a_post_you_shared: "ein Beitrag." @@ -569,7 +552,6 @@ de_formal: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" reshare_by: "Weitergesagt von %{author}" previous: "Vorherige" @@ -604,7 +586,6 @@ de_formal: many: "%{count} Reaktionen" one: "Eine Reaktion" other: "%{count} Reaktionen" - two: "%{count} Reaktionen" zero: "Keine Reaktionen" registrations: closed: "Neuregistrierungen sind auf diesem Pod geschlossen." @@ -639,7 +620,6 @@ de_formal: many: "%{count} neue Anfragen!" one: "Neue Anfrage!" other: "%{count} neue Anfragen!" - two: "%{count} neue Anfragen!" zero: "Keine neuen Anfragen" manage_aspect_contacts: existing: "Bestehende Kontakte" @@ -657,7 +637,6 @@ de_formal: many: "%{count} mal weitergesagt" one: "Einmal weitergesagt" other: "%{count} mal weitergesagt" - two: "%{count} mal weitergesagt" zero: "Weitersagen" reshare_confirmation: "%{author}'s Beitrag weitersagen?" reshare_original: "Original weitersagen" @@ -713,7 +692,6 @@ de_formal: many: "In %{count} Aspekten" one: "In einem Aspekt" other: "In %{count} Aspekten" - two: "In %{count} Aspekten" zero: "Kontakt hinzufügen" contact_list: all_contacts: "Alle Kontakte" @@ -786,7 +764,6 @@ de_formal: many: "Bitte kürzen Sie Ihren Beitrag auf weniger als %{count} Zeichen." one: "Bitte kürzen Sie Ihren Beitrag auf weniger als %{count} Zeichen." other: "Bitte kürzen Sie Ihren Beitrag auf weniger als %{count} Zeichen." - two: "Bitte kürzen Sie Ihren Beitrag auf unter %{count} Zeichen." zero: "Bitte kürzen Sie Ihren Beitrag auf weniger als %{count} Zeichen." stream_helper: hide_comments: "Alle Kommentare verbergen" @@ -795,7 +772,6 @@ de_formal: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/el.yml b/config/locales/diaspora/el.yml index d8e791881..4d793422d 100644 --- a/config/locales/diaspora/el.yml +++ b/config/locales/diaspora/el.yml @@ -30,7 +30,7 @@ el: reshare: attributes: root_guid: - taken: "Έχετε ήδη μοιραστεί αυτή την ανάρτηση!" + taken: "Έχετε ήδη κοινοποιήσει αυτή την ανάρτηση!" user: attributes: email: @@ -67,9 +67,9 @@ el: other: "%{count} αναρτήσεις" zero: "%{count} αναρτήσεις" shares: - one: "%{count} μοίρασμα" - other: "%{count} μοιράσματα" - zero: "%{count} μοιράσματα" + one: "%{count} κοινοποίηση" + other: "%{count} κοινοποιήσεις" + zero: "%{count} κοινοποιήσεις" tag_name: "Όνομα μαρκαρίσματος: <b>%{name_tag}</b> Μετρητής: <b>%{count_tag}</b>" usage_statistic: "Στατιστικά χρήσης" users: @@ -128,7 +128,7 @@ el: success: "Η νέα σας πτυχή %{name} δημιουργήθηκε" destroy: failure: "Το %{name} δεν είναι άδειο και δεν μπορεί να αφαιρεθεί." - success: "Ο χρήστης %{name} αφαιρέθηκε επιτυχώς." + success: "Ο/Η %{name} αφαιρέθηκε επιτυχώς." edit: add_existing: "Προσθέστε μια υπάρχουσα επαφή" aspect_list_is_not_visible: "η λίστα σας είναι κρυφή στους άλλους στην πτυχή" @@ -195,7 +195,7 @@ el: name: "Όνομα (εμφανίζετε μόνο σε εσάς)" no_contacts_message: community_spotlight: "δημοσιεύσεις κοινότητας" - or_spotlight: "Η μπορείτε να το μοιραστείτε με %{link}" + or_spotlight: "Ή μπορείτε να το μοιραστείτε με %{link}" try_adding_some_more_contacts: "Μπορείτε να ψάξετε ή να προσκαλέσετε περισσότερες επαφές." you_should_add_some_more_contacts: "Πρέπει να προσθέσετε περισσότερες επαφές!" no_posts_message: @@ -292,7 +292,6 @@ el: many: "%{count} νέα μηνύματα" one: "1 νέο μήνυμα" other: "%{count} νέα μηνύματα" - two: "%{count} νέα μηνύματα" zero: "Κανένα νέο μήνυμα" index: create_a_new_message: "δημιουργία νέου μηνύματος" @@ -338,7 +337,9 @@ el: create: already_contacts: "Είστε ήδη συνδεδεμένος με αυτό το άτομο" already_sent: "Έχετε ήδη προσκαλέσει αυτό το άτομο." + empty: "Παρακαλώ εισάγετε μία τουλάχιστον διεύθυνση ηλεκτρονικού ταχυδρομείου." no_more: "Δεν έχετε άλλες προσκλήσεις." + note_already_sent: "Προσκλήσεις έχουν ήδη σταλεί στα: %{emails}" own_address: "Δεν μπορείτε να στείλετε πρόσκληση στην διεύθυνση σας." rejected: "Οι παρακάτω διευθύνσεις ηλεκτρονικού ταχυδρομείου είχαν προβλήματα:" sent: "Η προσκλήσεις σας έχουν σταλεί στα: %{emails}" @@ -389,21 +390,18 @@ el: many: "Δεν αρέσει σε %{count} άτομα" one: "Δεν αρέσει σε 1 άτομο" other: "Δεν αρέσει σε %{count} άτομα" - two: "δεν αρέσει σε %{count}" zero: "κανένας δεν ανέφερε ότι δεν του αρέσει" people_like_this: few: "Αρέσει σε %{count} άτομα" many: "Αρέσει σε %{count} άτομα" one: "Αρέσει σε 1 άτομο" other: "Αρέσει σε %{count} άτομα" - two: "αρέσει σε %{count}" zero: "δεν αρέσει σε κανέναν" people_like_this_comment: few: "Αρέσει σε %{count} χρήστες" many: "Αρέσει σε %{count} χρήστες" one: "Αρέσει σε %{count} χρήστη" other: "Αρέσει σε %{count} χρήστες" - two: "αρέσει σε %{count}" zero: "Δεν αρέσει σε κανέναν " limited: "Περιορισμένο" more: "Περισσότερα" @@ -411,33 +409,23 @@ el: no_results: "Δεν βρέθηκαν αποτελέσματα" notifications: also_commented: - few: "Οι χρήστες %{actors} επίσης σχολίασαν τη %{post_link} του %{post_author}." - many: "Οι χρήστες %{actors} επίσης σχολίασαν τη %{post_link} του %{post_author}." - one: "Ο χρήστης %{actors} επίσης σχολίασε τη %{post_link} του %{post_author}." - other: "Οι χρήστες %{actors} επίσης σχολίασαν τη %{post_link} του %{post_author}." - two: "Οι χρήστες %{actors} επίσης σχολίασαν τη %{post_link} του %{post_author}." - zero: "Οι χρήστες %{actors} επίσης σχολίασαν τη %{post_link} του %{post_author}" + one: "Ο/Η %{actors} σχολίασε τη %{post_link} του %{post_author} επίσης." + other: "Οι %{actors} σχολίασαν τη %{post_link} του %{post_author} επίσης." + zero: "Οι %{actors} επίσης σχολίασαν τη %{post_link} του %{post_author}" also_commented_deleted: - few: "Οι χρήστες %{actors} σχολίασαν μια διαγεγραμμένη δημοσίευση. " - many: "Οι χρήστες %{actors} σχολίασαν μια διαγεγραμμένη δημοσίευση. " - one: "Ο χρήστης %{actors} σχολίασε μια διαγεγραμμένη δημοσίευση. " - other: "Ο χρήστης %{actors} σχολίασε μια διαγεγραμμένη δημοσίευση. " - two: "Οι χρήστες %{actors} σχολίασαν μια διαγεγραμμένη δημοσίευση." - zero: "Ο χρήστης %{actors} σχολίασε μια διαγεγραμμένη δημοσίευση. " + one: "Ο/Η %{actors} σχολίασε μια διαγραμμένη δημοσίευση. " + other: "Οι %{actors} σχολίασαν μια διαγραμμένη δημοσίευση. " + zero: "Ο %{actors} σχολίασε μια διαγεγραμμένη δημοσίευση. " comment_on_post: - few: "Οι χρήστες %{actors} σχολίασαν τη %{post_link}." - many: "Οι χρήστες %{actors} σχολίασαν τη %{post_link}." - one: "Ο χρήστης %{actors} σχολίασε τη %{post_link}." - other: "Ο χρήστης %{actors} σχολίασε τη %{post_link}." - two: "Οι χρήστες %{actors} σχολίασαν τη %{post_link}." - zero: "Ο χρήστης %{actors} σχολίασε τη %{post_link}." + one: "Ο/Η %{actors} σχολίασε τη %{post_link}." + other: "Οι %{actors} σχολίασαν τη %{post_link}." + zero: "Ο/Η %{actors} σχολίασε τη %{post_link}." helper: new_notifications: few: "%{count} νέες ειδοποιήσεις" many: "%{count} νέες ειδοποιήσεις" one: "1 νέα ειδοποίηση" other: "%{count} νέες ειδοποιήσεις" - two: "%{count} νέες ειδοποιήσεις" zero: "Kαμία νέα ειδοποίηση" index: and: "και" @@ -446,7 +434,6 @@ el: many: "και %{count} άλλοι" one: "και ένας ακόμα" other: "και %{count} άλλοι" - two: "και %{count} άλλοι" zero: "και κανένας άλλος" mark_all_as_read: "Σήμανση όλων ως διαβασμένα" mark_unread: "Σήμανε ως μη διαβασμένο" @@ -456,60 +443,40 @@ el: many: "Η %{post_link} άρεσε στους χρήστες %{actors}." one: "Η %{post_link} άρεσε στον χρήστη %{actors}." other: "Η %{post_link} άρεσε στους χρήστες %{actors}." - two: "Στους χρήστες %{actors} άρεσε το %{post_link}." zero: "Η %{post_link} άρεσε στους χρήστες %{actors}." liked_post_deleted: few: "Η διαγεγραμμένη δημοσίευσή σας άρεσε στους χρήστες %{actors}." many: "Η διαγραμμένη ανάρτησή σας άρεσε στους χρήστες %{actors}." one: "Η διαγεγραμμένη δημοσίευσή σας άρεσε στον χρήστη %{actors}." other: "Η διαγεγραμμένη δημοσίευσή σας άρεσε στον χρήστη %{actors}." - two: "Στους χρήστες %{actors} άρεσε η διαγραμμένη ανάρτησή σας." zero: "Η διαγεγραμμένη δημοσίευσή σας άρεσε στον χρήστη %{actors}." mentioned: - few: "Οι χρήστες %{actors} σας ανέφεραν στη %{post_link}." - many: "Οι χρήστες %{actors} σας ανέφεραν στη %{post_link}." - one: "Ο χρήστης %{actors} σας ανέφερε στη %{post_link}." - other: "Οι χρήστες %{actors} σας ανέφεραν σε μια %{post_link}." - two: "Οι χρήστες %{actors} σας ανέφεραν σε μια %{post_link}." - zero: "Ο χρήστης %{actors} σας ανέφερε σε μια %{post_link}." + one: "Ο/Η %{actors} σας ανέφερε στη %{post_link}." + other: "Οι %{actors} σας ανέφεραν σε μια %{post_link}." + zero: "Οι %{actors} σας ανέφερε σε μια %{post_link}." mentioned_deleted: - few: "Οι χρήστες %{actors} σας ανέφεραν σε μια διαγεγραμμένη δημοσίευση." - many: "Οι χρήστες %{actors} σας ανέφεραν σε μια διαγεγραμμένη δημοσίευση." - one: "Ο χρήστης %{actors} σας ανέφερε σε μια διαγεγραμμένη δημοσίευση." - other: "Οι χρήστες %{actors} σας ανέφεραν σε μια διαγεγραμμένη δημοσίευση." - two: "Οι χρήστες %{actors} σας ανέφεραν σε μια διαγεγραμμένη δημοσίευση. " - zero: "Οι χρήστες %{actors} σας ανέφεραν σε μια διαγεγραμμένη δημοσίευση." + one: "Ο/Η %{actors} σας ανέφερε σε μια διαγραμμένη δημοσίευση." + other: "Οι %{actors} σας ανέφεραν σε μια διαγραμμένη δημοσίευση." + zero: "Ο/Η %{actors} σας ανέφερε σε μια διαγραμμένη δημοσίευση." post: "ανάρτηση" private_message: - few: "Οι χρήστες %{actors} σας έστειλαν ένα μήνυμα." - many: "Οι χρήστες %{actors} σας έστειλαν ένα μήνυμα. " - one: "Ο χρήστης %{actors} σας έστειλε ένα μήνυμα." - other: "Ο χρήστης %{actors} σας έστειλε ένα μήνυμα." - two: "Οι χρήστες %{actors} σας έστειλαν ένα μήνυμα." - zero: "Ο χρήστης %{actors} σας έστειλε ένα μήνυμα." + one: "Ο/Η %{actors} σας έστειλε ένα μήνυμα." + other: "Οι %{actors} σας έστειλαν ένα μήνυμα." + zero: "Ο/Η χρήστης %{actors} σας έστειλε ένα μήνυμα." reshared: - few: "Οι χρήστες %{actors} μοιράστηκαν τη %{post_link}." - many: "Οι χρήστες %{actors} μοιράστηκαν τη %{post_link}." - one: "Ο χρήστης %{actors} μοιράστηκε τη %{post_link}." - other: "Οι χρήστες %{actors} μοιράστηκαν τη %{post_link}." - two: "Οι χρήστες %{actors} μοιράστηκαν τη %{post_link}." - zero: "Οι χρήστες %{actors} μοιράστηκαν τη %{post_link}." + one: "Ο/Η %{actors} μοιράστηκε τη %{post_link}." + other: "Οι %{actors} μοιράστηκαν τη %{post_link}." + zero: "Οι %{actors} μοιράστηκαν τη %{post_link}." reshared_post_deleted: - few: "Οι χρήστες %{actors} μοιράστηκαν τη διαγραμμένη ανάρτησή σας. " - many: "Οι χρήστες %{actors} μοιράστηκαν τη διαγραμμένη ανάρτησή σας." - one: "Ο χρήστης %{actors} μοιράστηκε τη διαγραμμένη ανάρτησή σας. " - other: "Ο χρήστης %{actors} μοιράστηκε τη διαγραμμένη ανάρτησή σας. " - two: "Οι χρήστες %{actors} μοιράστηκαν μια διαγεγραμμένη δημοσίευση." - zero: "Ο χρήστης %{actors} μοιράστηκε τη διαγραμμένη ανάρτησή σας." + one: "Ο/Η %{actors} κοινοποίησε τη διαγραμμένη ανάρτησή σας. " + other: "Οι %{actors} κοινοποίησαν διαγραμμένη ανάρτησή σας. " + zero: "Ο/Η %{actors} κοινοποίησε τη διαγραμμένη ανάρτησή σας." started_sharing: - few: "Οι χρήστες %{actors} άρχισαν να διαμοιράζονται μαζί σας." - many: "Οι χρήστες %{actors} άρχισαν να διαμοιράζονται μαζί σας." - one: "Ο χρήστης %{actors} άρχισε να διαμοιράζεται μαζί σας." - other: "Οι χρήστες %{actors} άρχισαν να διαμοιράζονται μαζί σας." - two: "Οι χρήστες %{actors} άρχισαν να διαμοιράζονται μαζί σας. " - zero: "Ο χρήστης %{actors} άρχισε να διαμοιράζεται μαζί σας." + one: "Ο/Η %{actors} άρχισε να μοιράζεται μαζί σας." + other: "Οι %{actors} άρχισαν να μοιράζονται μαζί σας." + zero: "Ο/Η %{actors} άρχισε να μοιράζεται μαζί σας." notifier: - a_post_you_shared: "μια ανάρτηση." + a_post_you_shared: "μια δημοσίευση." accept_invite: "Αποδέξου την πρόσκληση στο Diaspora*!" click_here: "πατήστε εδώ" comment_on_post: @@ -545,14 +512,14 @@ el: private_message: reply_to_or_view: "Απαντήστε ή δείτε τη συζήτηση >" reshared: - reshared: "ο χρήστης %{name} κοινοποίησε τη δημοσίευση σας" + reshared: "Ο/Η %{name} κοινοποίησε τη δημοσίευση σας" view_post: "Δείτε την ανάρτηση >" single_admin: admin: "Ο διαχειριστής του Diaspora σας" subject: "Μήνυμα για τον Diaspora λογαριασμό σας:" started_sharing: sharing: "ξεκίνησε το διαμοιρασμό μαζί σας!" - subject: "Ο χρήστης %{name} ξεκίνησε το διαμοιρασμό μαζί σας στο Diaspora*" + subject: "Ο/Η %{name} ξεκίνησε το διαμοιρασμό μαζί σας στο Diaspora*" view_profile: "Δείτε το προφίλ του χρήστη %{name}" thanks: "Ευχαριστώ," to_change_your_notification_settings: "για να αλλάξετε τις ρυθμίσεις των ειδοποιήσεων" @@ -599,8 +566,8 @@ el: remove_from: "Αφαίρεση του χρήστη %{name} από τη πτυχή %{aspect}?" show: closed_account: "Αυτός ο λογαριασμός έχει κλείσει." - does_not_exist: "Ο/Η χρήστης δεν υπάρχει!" - has_not_shared_with_you_yet: "Ο χρήστης %{name} δεν μοιράζεται ακόμα κάποια δημοσίευση μαζί σας!" + does_not_exist: "Δεν υπάρχει τέτοιο άτομα!" + has_not_shared_with_you_yet: "Ο/Η %{name} δεν μοιράζεται ακόμα κάποια δημοσίευση μαζί σας!" ignoring: "Αγνοείτε όλες τις αναρτήσεις από %{name}." incoming_request: "Ο/Η %{name} θέλει να μοιραστεί μαζί σας" mention: "Αναφορά" @@ -665,7 +632,7 @@ el: one: "Μια φωτογραφεία του/της %{author}" other: "%{count} φωτογραφίες του/της %{author}" zero: "Δεν υπάρχουν φωτογραφίες για τον/την %{author}" - reshare_by: "Επαναμοίραση από %{author}" + reshare_by: "Κοινοποίηση από %{author}" previous: "προηγούμενο" privacy: "Απόρρητο" privacy_policy: "Πολιτική Ιδιωτικού Απορρήτου" @@ -698,7 +665,6 @@ el: many: "%{count} αντιδράσεις" one: "1 αντίδραση" other: "%{count} αντιδράσεις" - two: "%{count} αντιδράσεις" zero: "0 αντιδράσεις" registrations: closed: "Οι εγγραφές είναι κλειστές σε αυτό το pod του Diaspora." @@ -731,7 +697,7 @@ el: requests: create: sending: "Αποστολή" - sent: "Σας ζητήθηκε να μοιράζεστε με τον/την χρήστη %{name}. Θα είναι ορατό την επόμενη φορά που θα συνδεθεί στο Diaspora." + sent: "Σας ζητήθηκε να μοιράζεστε με τον/την %{name}. Θα είναι ορατό την επόμενη φορά που θα συνδεθεί στο Diaspora." destroy: error: "Παρακαλώ επιλέξτε μια πτυχή!" ignore: "Αγνοήθηκε αίτηση επαφής." @@ -742,7 +708,6 @@ el: many: "%{count} νέα αιτήματα!" one: "νέο αίτημα!" other: "%{count} νέα αιτήματα!" - two: "%{count} νέα αιτήματα!" zero: "κανένα νέο αίτημα" manage_aspect_contacts: existing: "Υφιστάμενες επαφές" @@ -760,7 +725,6 @@ el: many: "%{count} κοινοποιήσεις" one: "1 κοινοποίηση" other: "%{count} κοινοποιήσεις" - two: "%{count} κοινοποιήσεις" zero: "Κοινοποίηση" reshare_confirmation: "Κοινοποίηση της δημοσίευσης του χρήστη %{author};" reshare_original: "Κοινοποίηση αρχικής" @@ -816,7 +780,6 @@ el: many: "Σε %{count} πτυχές" one: "Σε %{count} πτυχές" other: "Σε %{count} πτυχές" - two: "Σε %{count} πτυχές" zero: "Προσθήκη επαφής" contact_list: all_contacts: "Όλες οι επαφές" @@ -832,24 +795,24 @@ el: invite_your_friends: "Προσκαλέστε φίλους" invites: "Προσκλήσεις" invites_closed: "Οι προσκλήσεις είναι κλειστές αυτή την περίοδο στο Diaspora pod" - share_this: "Μοιραστείτε τον σύνδεσμο με ηλεκτρονικό ταχυδρομείο, blog, ή αγαπημένο κοινωνικό δίκτυο!" + share_this: "Μοιραστείτε αυτόν τον σύνδεσμο με ηλεκτρονικό ταχυδρομείο, blog, ή αγαπημένο κοινωνικό δίκτυο!" notification: new: "Νέο %{type} από τον χρήστη %{from}" public_explain: atom_feed: "" control_your_audience: "Ελέγξτε το Κοινό σας" logged_in: "συνδεδεμένος/η στο %{service}" - manage: "διαχείριση συναφών υπηρεσιών" + manage: "διαχείριση συνδεμένων υπηρεσιών" new_user_welcome_message: "Χρησιμοποιήστε τις #ετικέτες για να ταξινομήσετε τις δημοσιεύσεις σας και να βρείτε άτομα με κοινά ενδιαφέροντα με εσάς. Μνημονεύστε αξιόλογα άτομα με @αναφορές" outside: "Τα δημόσια μηνύματα θα είναι διαθέσιμα και σε χρήστες εκτός του δικτύου Diaspora" share: "Μοιραστείτε" title: "Ρύθμιση συνδεδεμένων υπηρεσιών" - visibility_dropdown: "Χρησιμοποιήστε αυτό το αναδυόμενο μενού για να αλλάξτε την ορατότητα της ανάρτησης σας. (Προτείνουμε να κάνετε αυτή τη πρώτη δημόσια.)" + visibility_dropdown: "Χρησιμοποιήστε αυτό το αναδυόμενο μενού για να αλλάξτε την ορατότητα της ανάρτησης σας. (Προτείνουμε την πρώτη σας να κάνετε δημόσια.)" publisher: all: "όλα" all_contacts: "όλες οι επαφές" discard_post: "Απόρριψη ανάρτησης" - make_public: "Δημοσιοποίησε το" + make_public: "κάντε το δημόσιο" new_user_prefill: hello: "Γεια σε όλους, είμαι #%{new_user_tag}. " i_like: "Με ενδιαφέρουν οι ετικέτες %{tags}." @@ -858,18 +821,18 @@ el: post_a_message_to: "Αναρτήστε ένα μήνυμα στην πτυχή %{aspect}" posting: "Ανάρτηση..." publishing_to: "δημοσίευση στο: " - share: "Μοιραστείτε" + share: "Κοινοποίηση" share_with: "μοιραστείτε με" upload_photos: "Μεταφόρτωση εικόνων" whats_on_your_mind: "Τι σκέφτεστε;" reshare: - reshare: "Μοιράσου και πάλι" + reshare: "Κοινοποιήστε" stream_element: connect_to_comment: "Συνδεθείτε με αυτόν τον χρήστη για να σχολιάσετε στην ανάρτησή του" currently_unavailable: "ο σχολιασμός αυτή τη στιγμή δεν είναι διαθέσιμος" dislike: "Δεν μ' αρέσει" hide_and_mute: "Απόκρυψη και σίγαση δημοσίευσης" - ignore_user: "Αγνόηση %{name}" + ignore_user: "Αγνοήστε τον/την %{name}" ignore_user_description: "Αγνόηση και αφαίρεση χρήστη από όλες τις πτυχές;" like: "Μου αρέσει" nsfw: "Αυτή η δημοσίευση έχει σημανθεί ως μη ασφαλής για δουλειά από τον δημιουργό της. %{link}" @@ -893,7 +856,6 @@ el: many: "παρακαλώ ελαττώστε το μύνημα κατάστασης σας σε λιγότερο από %{count} χαρακτήρες" one: "παρακαλώ μετατρέψτε τα μηνύματα κατάστασης σας σε λιγότερο από %{count} χαρακτήρα" other: "παρακαλώ μετατρέψτε τα μηνύματα κατάστασης σας σε λιγότερους από %{count} χαρακτήρες" - two: "παρακαλούμε ορίστε το μήνυμα κατάστασής σας σε λιγότερους από %{count} χαρακτήρες" zero: "παρακαλώ μετατρέψτε τα μηνύματα κατάστασης σας σε λιγότερους από %{count} χαρακτήρες" stream_helper: hide_comments: "Απόκρυψη όλων των σχολίων" @@ -902,7 +864,6 @@ el: many: "Εμφάνιση %{count} ακόμα σχολίων" one: "Εμφάνιση ενός ακόμα σχολίου" other: "Εμφάνιση %{count} ακόμα σχολίων" - two: "Εμφάνιση δυο ακόμα σχολίων" zero: "Δεν υπάρχουν άλλα σχόλια" streams: activity: @@ -984,7 +945,7 @@ el: auto_follow_back: "Αυτόματη ακολούθηση αν κάποιος σας ακουλουθήσει" change: "Αλλαγή" change_email: "Αλλαγή διεύθυνσης ηλεκτρονικού ταχυδρομείου" - change_language: "Αλλαγή Γλώσσας" + change_language: "Αλλαγή γλώσσας" change_password: "Αλλαγή κωδικού πρόσβασης" character_minimum_expl: "πρέπει να είναι τουλάχιστον έξι χαρακτήρες" close_account: @@ -1022,7 +983,9 @@ el: your_handle: "Το αναγνωριστικό σας στο diaspora" getting_started: awesome_take_me_to_diaspora: "Εξαιρετικά! Πήγαινέ με στο Diaspora*" - community_welcome: "Η κοινότητα του Diaspora είναι χαρούμενη να σας έχει μαζί!" + community_welcome: "Η κοινότητα του Diaspora είναι χαρούμενη να σας έχει μαζί της!" + connect_to_facebook: "Μπορούμε να επιταχύνουμε λίγο τα πράγματα %{link} στο Diaspora. Αυτό θα τραβήξει το όνομα και τη φωτογραφία σας, και θα ενεργοποιήσει την πολλαπλή ανάρτηση." + connect_to_facebook_link: "συνδέοντας τον Facebook λογαριασμό σας" hashtag_explanation: "Τα hashtags σας επιτρέπουν να συζητάτε και να ακολουθείτε συγκεκριμένα ενδιαφέροντα. Είναι ακόμα ένας ωραίος τρόπος για να γνωρίσετε νέα άτομα στο Diaspora." hashtag_suggestions: "Δοκιμάστε να ακολουθήσετε ετικέτες όπως #τέχνη, #ταινίες, #gif, κτλ." saved: "Αποθηκεύτηκε!" @@ -1039,7 +1002,7 @@ el: email_notifications_changed: "Αλλαγή ειδοποιήσεων ηλεκτρονικού ταχυδρομείου,επιτυχής" follow_settings_changed: "Οι ρυθμίσεις παρακολούθησης έχουν αλλάξει" follow_settings_not_changed: "Η αλλαγή ρυθμίσεων παρακολουθήσεις απέτυχε." - language_changed: "Αλλαγή Γλώσσας επιτυχής" + language_changed: "Η γλώσσα άλλαξε" language_not_changed: "Η αλλαγή γλώσσας απέτυχε" password_changed: "Ο κωδικός σας άλλαξε. Μπορείτε τώρα να συνδεθείτε με τον νέο κωδικό. " password_not_changed: "Η αλλαγή κωδικού απέτυχε" diff --git a/config/locales/diaspora/en.yml b/config/locales/diaspora/en.yml index 8bb171971..9f41a6793 100644 --- a/config/locales/diaspora/en.yml +++ b/config/locales/diaspora/en.yml @@ -240,6 +240,9 @@ en: tutorials_wiki_and_forum: "%{tutorial} & %{wiki} & %{forum}: Community-powered tutorials, how-to, and news" email_feedback: "%{link} your feedback, if you prefer" email_link: "Email" + any_problem: "Any Problem?" + contact_podmin: "Contact the administrator of your pod!" + mail_podmin: "Podmin E-Mail" cubbies: heading: "Connect to Cubbi.es" explanation: "Cubbi.es is the first Diaspora application under development." @@ -314,6 +317,7 @@ en: many_people_are_you_sure: "Are you sure you want to start a private conversation with more than %{suggested_limit} contacts? Posting to this aspect may be a better way to contact them." spotlight: community_spotlight: "Community Spotlight" + suggest_member: "Suggest a member" conversations: index: @@ -341,6 +345,7 @@ en: create: sent: "Message sent" fail: "Invalid message" + no_contact: "Hey, you need to add the contact first!" new_message: fail: "Invalid message" destroy: @@ -362,6 +367,8 @@ en: already_sent: "You already invited this person." already_contacts: "You are already connected with this person" own_address: "You can't send an invitation to your own address." + empty: "Please enter at least one email address." + note_already_sent: "Invitations have already been sent to: %{emails}" new: language: "Language" invite_someone_to_join: "Invite someone to join Diaspora!" @@ -519,18 +526,18 @@ en: invite: message: |- Hello! - + You have been invited to join Diaspora*! - + Click this link to get started - + [%{invite_url}][1] - - + + Love, - + The Diaspora* email robot! - + [1]: %{invite_url} people: zero: "no people" @@ -822,7 +829,7 @@ en: share: "Share" outside: "Public messages will be available for others outside of Diaspora to see." logged_in: "logged in to %{service}" - manage: "manage connected services" + manage: "Manage connected services" atom_feed: "Atom feed" notification: new: "New %{type} from %{from}" diff --git a/config/locales/diaspora/en_1337.yml b/config/locales/diaspora/en_1337.yml index fad6197c4..4197babcf 100644 --- a/config/locales/diaspora/en_1337.yml +++ b/config/locales/diaspora/en_1337.yml @@ -199,7 +199,6 @@ en_1337: many: "%{count} N3W M3554G35" one: "1 N3W M3554G3" other: "%{count} N3W M3554G35" - two: "%{count} N3W M3554G35" zero: "N0 N3W M3554G35" index: create_a_new_message: "5P4M 50M30N3!" @@ -277,21 +276,18 @@ en_1337: many: "%{count} </3" one: "%{count} </3" other: "%{count} </3" - two: "%{count} </3" zero: "N0 </3" people_like_this: few: "%{count} <3" many: "%{count} <3" one: "%{count} <3" other: "%{count} <3" - two: "%{count} <3" zero: "N0 <3" people_like_this_comment: few: "%{count} <3" many: "%{count} <3" one: "%{count} <3" other: "%{count} <3" - two: "%{count} <3" zero: "N0 <3" limited: "V1P" more: "M0R3" @@ -303,21 +299,18 @@ en_1337: many: "%{actors} 4L50 C0MM3N73D 0N %{post_author}'s %{post_link}." one: "%{actors} 4L50 C0MM3N73D 0N %{post_author}'s %{post_link}." other: "%{actors} 4L50 C0MM3N73D 0N %{post_author}'s %{post_link}." - two: "%{actors} 4L50 C0MM3N73D 0N %{post_author}'s %{post_link}." zero: "%{actors} 4L50 C0MM3N73D 0N %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} C0MM3N73D 0N 4 D3L373D P057." many: "%{actors} C0MM3N73D 0N 4 D3L373D P057." one: "%{actors} C0MM3N73D 0N 4 D3L373D P057." other: "%{actors} C0MM3N73D 0N 4 D3L373D P057." - two: "%{actors} C0MM3N73D 0N 4 D3L373D P057." zero: "%{actors} C0MM3N73D 0N 4 D3L373D P057." comment_on_post: few: "%{actors} C0MM3N73D 0N Y0UR %{post_link}." many: "%{actors} C0MM3N73D 0N Y0UR %{post_link}." one: "%{actors} C0MM3N73D 0N Y0UR %{post_link}." other: "%{actors} C0MM3N73D 0N Y0UR %{post_link}." - two: "%{actors} C0MM3N73D 0N Y0UR %{post_link}." zero: "%{actors} C0MM3N73D 0N Y0UR %{post_link}." helper: new_notifications: @@ -325,7 +318,6 @@ en_1337: many: "%{count} N3W N071F1C4710N5" one: "1 N3W N071F1C4710N" other: "%{count} N3W N071F1C4710N5" - two: "%{count} N3W N071F1C4710N5" zero: "N0 N3W N071F1C4710N5" index: and: "4ND" @@ -334,7 +326,6 @@ en_1337: many: "4ND %{count} 07H3R5" one: "4ND 0N3 M0R3" other: "4ND %{count} 07H3R5" - two: "4ND %{count} 07H3R5" zero: "4ND N0B0DY 3l53" mark_all_as_read: "M4RK 4LL 45 R34D" notifications: "N071F1C4710N5" @@ -343,56 +334,48 @@ en_1337: many: "%{actors} H45 JU57 <3 Y0UR %{post_link}." one: "%{actors} H45 JU57 <3 Y0UR %{post_link}." other: "%{actors} H45 JU57 <3 Y0UR %{post_link}." - two: "%{actors} H45 JU57 <3 Y0UR %{post_link}." zero: "%{actors} H45 JU57 <3 Y0UR %{post_link}." liked_post_deleted: few: "%{actors} <3 Y0UR D3L373D P057." many: "%{actors} <3 Y0UR D3L373D P057." one: "%{actors} <3 Y0UR D3L373D P057." other: "%{actors} <3 Y0UR D3L373D P057." - two: "%{actors} <3 Y0UR D3L373D P057." zero: "%{actors} <3 Y0UR D3L373D P057." mentioned: few: "%{actors} H45 M3N710N3D U 1N 4 %{post_link}." many: "%{actors} H45 M3N710N3D U 1N 4 %{post_link}." one: "%{actors} H45 M3N710N3D U 1N 4 %{post_link}." other: "%{actors} H45 M3N710N3D U 1N 4 %{post_link}." - two: "%{actors} H45 M3N710N3D U 1N 4 %{post_link}." zero: "%{actors} H45 M3N710N3D U 1N 4 %{post_link}." mentioned_deleted: few: "%{actors} M3N710N3D U 1N 4 D3L373D P057." many: "%{actors} M3N710N3D U 1N 4 D3L373D P057." one: "%{actors} M3N710N3D U 1N 4 D3L373D P057." other: "%{actors} M3N710N3D U 1N 4 D3L373D P057." - two: "%{actors} M3N710N3D U 1N 4 D3L373D P057." zero: "%{actors} M3N710N3D U 1N 4 D3L373D P057." private_message: few: "%{actors} 53N7 U 4 M3554G3." many: "%{actors} 53N7 U 4 M3554G3." one: "%{actors} 53N7 U 4 M3554G3." other: "%{actors} 53N7 U 4 M3554G3." - two: "%{actors} 53N7 U 4 M3554G3." zero: "%{actors} 53N7 U 4 M3554G3." reshared: few: "%{actors} H45 R35H4R3D Y0UR %{post_link}." many: "%{actors} H45 R35H4R3D Y0UR %{post_link}." one: "%{actors} H45 R35H4R3D Y0UR %{post_link}." other: "%{actors} H45 R35H4R3D Y0UR %{post_link}." - two: "%{actors} H45 R35H4R3D Y0UR %{post_link}." zero: "%{actors} H45 R35H4R3D Y0UR %{post_link}." reshared_post_deleted: few: "%{actors} R35H4R3D Y0UR D3L373D P057." many: "%{actors} R35H4R3D Y0UR D3L373D P057." one: "%{actors} R35H4R3D Y0UR D3L373D P057." other: "%{actors} R35H4R3D Y0UR D3L373D P057." - two: "%{actors} R35H4R3D Y0UR D3L373D P057." zero: "%{actors} R35H4R3D Y0UR D3L373D P057." started_sharing: few: "%{actors} 574R73D 5H4R1NG W17H U." many: "%{actors} 574R73D 5H4R1NG W17H U." one: "%{actors} 574R73D 5H4R1NG W17H U." other: "%{actors} 574R73D 5H4R1NG W17H U." - two: "%{actors} 574R73D 5H4R1NG W17H U." zero: "%{actors} 574R73D 5H4R1NG W17H U." notifier: a_post_you_shared: "4 P057!" @@ -522,7 +505,6 @@ en_1337: many: "%{count} P1CZ BY %{author}" one: "1 P1C BY %{author}" other: "%{count} P1CZ BY %{author}" - two: "2 P1CZ BY %{author}" zero: "N0 P1CZ BY %{author}" previous: "PR3V10U5" profile: "PR0F1L3" @@ -552,7 +534,6 @@ en_1337: many: "%{count} R34C710N5" one: "1 R34C710N" other: "%{count} R34C710N5" - two: "%{count} R34C710N5" zero: "0 R34C710N5" registrations: closed: "51GNUP5 4R3 CL053D 0N 7H15 D* P0D!" @@ -587,7 +568,6 @@ en_1337: many: "%{count} N3W R3QU3575!" one: "N3W R3QU357" other: "%{count} N3W R3QU3575!" - two: "%{count} N3W R3QU3575!" zero: "N0 N3W R3QU3575!" manage_aspect_contacts: existing: "3X1571NG N00B5" @@ -605,7 +585,6 @@ en_1337: many: "%{count} R35P4M5" one: "1 R35P4M" other: "%{count} R35P4M5" - two: "%{count} R35P4M5" zero: "R35P4M" reshare_confirmation: "R35P4M %{author}'s 5P4M?" reshare_original: "R35P4M 0R1G1N4L" @@ -654,7 +633,6 @@ en_1337: many: "1N %{count} 45P3C75" one: "1N %{count} 45P3C7" other: "1N %{count} 45P3C75" - two: "1N %{count} 45P3C75" zero: "4DD N00B" contact_list: all_contacts: "4LL C0N74C75" @@ -715,7 +693,6 @@ en_1337: many: "PL3453 M4K3 Y0UR 5P4M5 L355 7H3N %{count} CH4R4C73R5" one: "PL3453 M4K3 Y0UR 5P4M5 L355 7H3N %{count} CH4R4C73R\"" other: "PL3453 M4K3 Y0UR 5P4M5 L355 7H3N %{count} CH4R4C73R5" - two: "PL3453 M4K3 Y0UR 5P4M5 L355 7H3N %{count} CH4R4C73R5" zero: "PL3453 M4K3 Y0UR 5P4M5 L355 7H3N %{count} CH4R4C73R5" stream_helper: hide_comments: "H1D3 4LL 5P4M5!" @@ -724,7 +701,6 @@ en_1337: many: "5H0W %{count} M0R3 C0MM3N75" one: "5H0W 1 M0R3 C0MM3N75" other: "5H0W %{count} M0R3 C0MM3N75" - two: "5H0W 2 M0R3 C0MM3N75" zero: "N0 C0MM3N75!" streams: aspects: diff --git a/config/locales/diaspora/en_pirate.yml b/config/locales/diaspora/en_pirate.yml index a04733152..4c5928272 100644 --- a/config/locales/diaspora/en_pirate.yml +++ b/config/locales/diaspora/en_pirate.yml @@ -84,7 +84,6 @@ en_pirate: many: "%{count} new messages" one: "1 new messages" other: "%{count} new messages" - two: "%{count} new messages" zero: "No new messages" layouts: application: @@ -100,21 +99,18 @@ en_pirate: many: "%{count} dislikes" one: "%{count} dislike" other: "%{count} dislikes" - two: "%{count} dislikes" zero: "no dislikes" people_like_this: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" people_like_this_comment: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" notifications: also_commented: @@ -122,21 +118,18 @@ en_pirate: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a scuttled post." many: "%{actors} commented on a scuttled post." one: "%{actors} commented on a scuttled post." other: "%{actors} commented on a scuttled post." - two: "%{actors} commented on a scuttled post." zero: "%{actors} commented on a scuttled post." comment_on_post: few: "%{actors} commented on yer %{post_link}." many: "%{actors} commented on yer %{post_link}." one: "%{actors} commented on yer %{post_link}." other: "%{actors} commented on yer %{post_link}." - two: "%{actors} commented on yer %{post_link}." zero: "%{actors} commented on yer %{post_link}." helper: new_notifications: @@ -144,7 +137,6 @@ en_pirate: many: "%{count} new notifications" one: "1 new notifications" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "No new notifications" index: and_others: @@ -152,63 +144,54 @@ en_pirate: many: "'n %{count} others" one: "'n one more" other: "'n %{count} others" - two: "'n %{count} others" zero: "'n nobody else" liked: few: "%{actors} has just liked yer %{post_link}." many: "%{actors} has just liked yer %{post_link}." one: "%{actors} has just liked yer %{post_link}." other: "%{actors} has just liked yer %{post_link}." - two: "%{actors} has just liked yer %{post_link}." zero: "%{actors} has just liked yer %{post_link}." liked_post_deleted: few: "%{actors} liked yer scuttled post." many: "%{actors} liked yer scuttled post." one: "%{actors} liked yer scuttled post." other: "%{actors} liked yer scuttled post." - two: "%{actors} liked yer scuttled post." zero: "%{actors} liked yer scuttled post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a scuttled post." many: "%{actors} mentioned you in a scuttled post." one: "%{actors} mentioned you in a scuttled post." other: "%{actors} mentioned you in a scuttled post." - two: "%{actors} mentioned you in a scuttled post." zero: "%{actors} mentioned you in a scuttled post." private_message: few: "%{actors} sent you a message." many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} has reshared yer %{post_link}." many: "%{actors} has reshared yer %{post_link}." one: "%{actors} has reshared yer %{post_link}." other: "%{actors} has reshared yer %{post_link}." - two: "%{actors} has reshared yer %{post_link}." zero: "%{actors} has reshared yer %{post_link}." reshared_post_deleted: few: "%{actors} reshared yer scuttled post." many: "%{actors} reshared yer scuttled post." one: "%{actors} reshared yer scuttled post." other: "%{actors} reshared yer scuttled post." - two: "%{actors} reshared yer scuttled post." zero: "%{actors} reshared yer scuttled post." started_sharing: few: "%{actors} started sharin' with ye." many: "%{actors} started sharin' with ye." one: "%{actors} started sharin' with ye." other: "%{actors} started sharin' with ye." - two: "%{actors} started sharin' with ye." zero: "%{actors} started sharin' with ye." notifier: confirm_email: @@ -236,7 +219,6 @@ en_pirate: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" profiles: edit: @@ -246,7 +228,6 @@ en_pirate: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: new: @@ -259,7 +240,6 @@ en_pirate: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" reshares: reshare: @@ -268,7 +248,6 @@ en_pirate: many: "%{count} reshares" one: "1 reshare" other: "%{count} reshares" - two: "%{count} reshares" zero: "Reshare" search: "Scour" services: @@ -282,7 +261,6 @@ en_pirate: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" publisher: new_user_prefill: @@ -298,7 +276,6 @@ en_pirate: many: "Ye scallywag,make yer status messages less than %{count} characters" one: "Ye scallywag, make yer status messages less than %{count} character" other: "Ye scallywag, make yer status messages less than %{count} characters" - two: "Ye scallywag, make yer status messages less than %{count} characters" zero: "Ye scallywag,make yer status messages less than %{count} characters" stream_helper: show_comments: @@ -306,7 +283,6 @@ en_pirate: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/en_shaw.yml b/config/locales/diaspora/en_shaw.yml index c3117aa6f..e414f3a1f 100644 --- a/config/locales/diaspora/en_shaw.yml +++ b/config/locales/diaspora/en_shaw.yml @@ -190,7 +190,6 @@ en_shaw: many: "%{count} 𐑯𐑿 𐑥𐑧𐑕𐑩𐑡𐑩𐑟" one: "1 𐑯𐑿 𐑥𐑧𐑕𐑩𐑡" other: "%{count} 𐑯𐑿 𐑥𐑧𐑕𐑩𐑡𐑩𐑟" - two: "%{count} new messages" zero: "𐑯𐑴 𐑯𐑿 𐑥𐑧𐑕𐑩𐑡𐑩𐑟" index: create_a_new_message: "𐑒𐑮𐑦𐑱𐑑 𐑩 𐑯𐑿 𐑥𐑧𐑕𐑩𐑡" @@ -261,21 +260,18 @@ en_shaw: many: "%{count} 𐑛𐑦𐑕𐑤𐑲𐑒𐑕" one: "%{count} 𐑛𐑦𐑕𐑤𐑲𐑒" other: "%{count} 𐑛𐑦𐑕𐑤𐑲𐑒𐑕" - two: "%{count} dislikes" zero: "𐑯𐑴 𐑛𐑦𐑕𐑤𐑲𐑒𐑕" people_like_this: few: "%{count} 𐑤𐑲𐑒𐑕" many: "%{count} 𐑤𐑲𐑒𐑕" one: "%{count} 𐑤𐑲𐑒" other: "%{count} 𐑤𐑲𐑒𐑕" - two: "%{count} likes" zero: "𐑯𐑴 𐑤𐑲𐑒𐑕" people_like_this_comment: few: "%{count} 𐑤𐑲𐑒𐑕" many: "%{count} 𐑤𐑲𐑒𐑕" one: "%{count} 𐑤𐑲𐑒" other: "%{count} 𐑤𐑲𐑒𐑕" - two: "%{count} likes" zero: "𐑯𐑴 𐑤𐑲𐑒𐑕" limited: "𐑤𐑦𐑥𐑦𐑑𐑩𐑛" more: "𐑥𐑹" @@ -287,21 +283,18 @@ en_shaw: many: "%{actors} 𐑷𐑤𐑕𐑴 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 %{post_author}𐑟 %{post_link}." one: "%{actors} 𐑷𐑤𐑕𐑴 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 %{post_author}𐑟 %{post_link}." other: "%{actors} 𐑷𐑤𐑕𐑴 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 %{post_author}𐑟 %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} 𐑷𐑤𐑕𐑴 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 %{post_author}𐑟 %{post_link}." also_commented_deleted: few: "%{actors} 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 𐑩 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." many: "%{actors} 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 𐑩 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." one: "%{actors} 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 𐑩 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." other: "%{actors} 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 𐑩 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." - two: "%{actors} commented on a deleted post." zero: "%{actors} 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 𐑩 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." comment_on_post: few: "%{actors} 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 𐑿𐑼 %{post_link}." many: "%{actors} 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 𐑿𐑼 %{post_link}." one: "%{actors} 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 𐑿𐑼 %{post_link}." other: "%{actors} 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 𐑿𐑼 %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} 𐑒𐑪𐑥𐑩𐑯𐑑𐑩𐑛 𐑪𐑯 𐑿𐑼 %{post_link}." helper: new_notifications: @@ -309,7 +302,6 @@ en_shaw: many: "%{count} 𐑯𐑿 𐑯𐑴𐑑𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯𐑟" one: "1 𐑯𐑿 𐑯𐑴𐑑𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯" other: "%{count} 𐑯𐑿 𐑯𐑴𐑑𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯𐑟" - two: "%{count} new notifications" zero: "𐑯𐑴 𐑯𐑿 𐑯𐑴𐑑𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯𐑟" index: and: "𐑯" @@ -318,7 +310,6 @@ en_shaw: many: "𐑯 %{count} 𐑳𐑞𐑼𐑟" one: "𐑯 𐑢𐑳𐑯 𐑥𐑹" other: "𐑯 %{count} 𐑳𐑞𐑼𐑟" - two: "and %{count} others" zero: "𐑯 𐑯𐑴𐑚𐑩𐑛𐑦 𐑧𐑤𐑕" mark_all_as_read: "𐑥𐑸𐑒 𐑷𐑤 𐑨𐑟 𐑮𐑧𐑛" notifications: "𐑯𐑴𐑑𐑦𐑓𐑦𐑒𐑱𐑖𐑩𐑯𐑟" @@ -327,28 +318,24 @@ en_shaw: many: "%{actors} 𐑣𐑨𐑟 𐑡𐑩𐑕𐑑 𐑤𐑲𐑒𐑑 𐑿𐑼 %{post_link}." one: "%{actors} 𐑣𐑨𐑟 𐑡𐑩𐑕𐑑 𐑤𐑲𐑒𐑑 𐑿𐑼 %{post_link}." other: "%{actors} 𐑣𐑨𐑟 𐑡𐑩𐑕𐑑 𐑤𐑲𐑒𐑑 𐑿𐑼 %{post_link}." - two: "%{actors} has just liked your %{post_link}." zero: "%{actors} 𐑣𐑨𐑟 𐑡𐑩𐑕𐑑 𐑤𐑲𐑒𐑑 𐑿𐑼 %{post_link}." liked_post_deleted: few: "%{actors} 𐑤𐑦𐑙𐑒𐑑 𐑑 𐑿𐑼 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." many: "%{actors} 𐑤𐑦𐑙𐑒𐑑 𐑿𐑼 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." one: "%{actors} 𐑤𐑦𐑙𐑒𐑑 𐑿𐑼 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." other: "%{actors} 𐑤𐑦𐑙𐑒𐑑 𐑑 𐑿𐑼 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." - two: "%{actors} liked your deleted post." zero: "%{actors} 𐑤𐑦𐑙𐑒𐑑 𐑑 𐑿𐑼 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." mentioned: few: "%{actors} 𐑣𐑨𐑟 𐑥𐑧𐑯𐑖𐑩𐑯𐑛 𐑿 𐑦𐑯 𐑩 %{post_link}." many: "%{actors} 𐑣𐑨𐑟 𐑥𐑧𐑯𐑖𐑩𐑯𐑛 𐑿 𐑦𐑯 𐑩 %{post_link}." one: "%{actors} 𐑣𐑨𐑟 𐑥𐑧𐑯𐑖𐑩𐑯𐑛 𐑿 𐑦𐑯 𐑩 %{post_link}." other: "%{actors} 𐑣𐑨𐑟 𐑥𐑧𐑯𐑖𐑩𐑯𐑛 𐑿 𐑦𐑯 𐑩 %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} 𐑣𐑨𐑟 𐑥𐑧𐑯𐑖𐑩𐑯𐑛 𐑿 𐑦𐑯 𐑩 %{post_link}." mentioned_deleted: few: "%{actors} 𐑥𐑧𐑯𐑖𐑩𐑯𐑛 𐑿 𐑦𐑯 𐑩 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." many: "%{actors} 𐑥𐑧𐑯𐑖𐑩𐑯𐑛 𐑿 𐑦𐑯 𐑩 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." one: "%{actors} 𐑥𐑧𐑯𐑖𐑩𐑯𐑛 𐑿 𐑦𐑯 𐑩 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." other: "%{actors} 𐑥𐑧𐑯𐑖𐑩𐑯𐑛 𐑿 𐑦𐑯 𐑩 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} 𐑥𐑧𐑯𐑖𐑩𐑯𐑛 𐑿 𐑦𐑯 𐑩 𐑛𐑦𐑤𐑰𐑑𐑩𐑛 𐑐𐑴𐑕𐑑." post: "𐑐𐑴𐑕𐑑" private_message: @@ -356,28 +343,24 @@ en_shaw: many: "%{actors} 𐑕𐑧𐑯𐑑 𐑿 𐑩 𐑥𐑧𐑕𐑩𐑡." one: "%{actors} 𐑕𐑧𐑯𐑑 𐑿 𐑩 𐑥𐑧𐑕𐑩𐑡." other: "%{actors} 𐑕𐑧𐑯𐑑 𐑿 𐑩 𐑥𐑧𐑕𐑩𐑡." - two: "%{actors} sent you a message." zero: "%{actors} 𐑕𐑧𐑯𐑑 𐑿 𐑩 𐑥𐑧𐑕𐑩𐑡." reshared: few: "%{actors} has reshared your %{post_link}." many: "%{actors} has reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} has reshared your %{post_link}." - two: "%{actors} has reshared your %{post_link}." zero: "%{actors} has reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} 𐑕𐑑𐑸𐑑𐑩𐑛 𐑖𐑺𐑦𐑙 𐑢𐑦𐑞 𐑿." many: "%{actors} 𐑕𐑑𐑸𐑑𐑩𐑛 𐑖𐑺𐑦𐑙 𐑢𐑦𐑞 𐑿." one: "%{actors} 𐑕𐑑𐑸𐑑𐑩𐑛 𐑖𐑺𐑦𐑙 𐑢𐑦𐑞 𐑿." other: "%{actors} 𐑕𐑑𐑸𐑑𐑩𐑛 𐑖𐑺𐑦𐑙 𐑢𐑦𐑞 𐑿." - two: "%{actors} started sharing with you." zero: "%{actors} 𐑕𐑑𐑸𐑑𐑩𐑛 𐑖𐑺𐑦𐑙 𐑢𐑦𐑞 𐑿." notifier: click_here: "𐑒𐑤𐑦𐑒 𐑣𐑽" @@ -499,7 +482,6 @@ en_shaw: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" previous: "𐑐𐑮𐑰𐑝𐑾𐑕" profile: "𐑐𐑮𐑴𐑓𐑲𐑤" @@ -529,7 +511,6 @@ en_shaw: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: closed: "𐑕𐑲𐑯𐑩𐑐𐑕 𐑸 𐑒𐑤𐑴𐑟𐑛 𐑪𐑯 𐑞𐑦𐑕 ·𐑛𐑦𐑨𐑕𐑐𐑹𐑩 𐑐𐑪𐑛." @@ -563,7 +544,6 @@ en_shaw: many: "%{count} 𐑯𐑿 𐑮𐑦𐑒𐑢𐑧𐑕𐑑𐑕!" one: "𐑯𐑿 𐑮𐑦𐑒𐑢𐑧𐑕𐑑!" other: "%{count} 𐑯𐑿 𐑮𐑦𐑒𐑢𐑧𐑕𐑑𐑕!" - two: "%{count} new requests!" zero: "𐑯𐑴 𐑯𐑿 𐑮𐑦𐑒𐑢𐑧𐑕𐑑𐑕" manage_aspect_contacts: existing: "𐑧𐑜𐑟𐑦𐑕𐑑𐑦𐑙 𐑒𐑪𐑯𐑑𐑨𐑒𐑑𐑕" @@ -580,7 +560,6 @@ en_shaw: many: "%{count} 𐑮𐑦𐑖𐑺𐑟" one: "1 𐑮𐑦𐑖𐑺" other: "%{count} 𐑮𐑦𐑖𐑺𐑟" - two: "%{count} reshares" zero: "𐑮𐑦𐑖𐑺" reshare_confirmation: "𐑮𐑦𐑖𐑺 %{author} - %{text}?" reshare_original: "𐑮𐑦𐑖𐑺 𐑩𐑮𐑦𐑡𐑩𐑯𐑩𐑤" @@ -624,7 +603,6 @@ en_shaw: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" contact_list: all_contacts: "𐑷𐑤 𐑒𐑪𐑯𐑑𐑨𐑒𐑑𐑕" @@ -685,7 +663,6 @@ en_shaw: many: "𐑐𐑤𐑰𐑟 𐑥𐑱𐑒 𐑿𐑼 𐑕𐑑𐑨𐑑𐑩𐑕 𐑥𐑧𐑕𐑩𐑡𐑩𐑟 𐑤𐑧𐑕 𐑞𐑨𐑯 %{count} 𐑒𐑺𐑩𐑒𐑑𐑼𐑟" one: "𐑐𐑤𐑰𐑟 𐑥𐑱𐑒 𐑿𐑼 𐑕𐑑𐑨𐑑𐑩𐑕 𐑥𐑧𐑕𐑩𐑡𐑩𐑟 𐑤𐑧𐑕 𐑞𐑨𐑯 %{count} 𐑒𐑺𐑩𐑒𐑑𐑼" other: "𐑐𐑤𐑰𐑟 𐑥𐑱𐑒 𐑿𐑼 𐑕𐑑𐑨𐑑𐑩𐑕 𐑥𐑧𐑕𐑩𐑡𐑩𐑟 𐑤𐑧𐑕 𐑞𐑨𐑯 %{count} 𐑒𐑺𐑩𐑒𐑑𐑼𐑟" - two: "please make your status messages less than %{count} characters" zero: "𐑐𐑤𐑰𐑟 𐑥𐑱𐑒 𐑿𐑼 𐑕𐑑𐑨𐑑𐑩𐑕 𐑥𐑧𐑕𐑩𐑡𐑩𐑟 𐑤𐑧𐑕 𐑞𐑨𐑯 %{count} 𐑒𐑺𐑩𐑒𐑑𐑼𐑟" stream_helper: hide_comments: "𐑣𐑲𐑛 𐑷𐑤 𐑒𐑪𐑥𐑩𐑯𐑑𐑕" @@ -694,7 +671,6 @@ en_shaw: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/eo.yml b/config/locales/diaspora/eo.yml index 46e19a0bf..b85949652 100644 --- a/config/locales/diaspora/eo.yml +++ b/config/locales/diaspora/eo.yml @@ -285,8 +285,7 @@ eo: many: "%{count} novaj mesaĝoj" one: "1 nova mesaĝo" other: "%{count} novaj mesaĝoj" - two: "%{count} novaj poŝtoj" - zero: "neniuj novaj mesaĝoj" + zero: "Neniuj novaj mesaĝoj" index: create_a_new_message: "krei novan mesaĝon" inbox: "Poŝtujo" @@ -332,7 +331,7 @@ eo: no_more: "Vi ne plu havas invitojn." own_address: "Vi ne povas sendi inviton al via propra adreso." rejected: "La postaj retpoŝtadresoj estis problemaj:" - sent: "Invitoj sendiĝis al:" + sent: "Invitoj sendiĝis al: %{emails}" edit: accept_your_invitation: "Akcepti vian inviton" your_account_awaits: "Via konto atendas!" @@ -379,19 +378,17 @@ eo: many: "%{count} malŝatantoj" one: "%{count} malŝatanto" other: "%{count} malŝatantoj" - two: "%{count} malŝatadoj" - zero: "neniuj ŝatantoj" + zero: "neniuj malŝatantoj" people_like_this: few: "%{count} ŝatantoj" many: "%{count} ŝatantoj" one: "%{count} ŝatanto" other: "%{count} ŝatantoj" - two: "%{count} ŝatadoj" zero: "neniuj ŝatantoj" people_like_this_comment: one: "%{count} ŝato" other: "%{count} ŝatoj" - zero: "neniu ŝato" + zero: "neniuj ŝatoj" limited: "Limigita" more: "Pli" next: "sekva" @@ -402,7 +399,6 @@ eo: many: "%{actors} ankaŭ komentis pri %{post_link} de %{post_author}." one: "%{actors} ankaŭ komentis pri %{post_link} de %{post_author}." other: "%{actors} ankaŭ komentis pri %{post_link} de %{post_author}." - two: "%{actors} ankaŭ komentis pri la %{post_link} de %{post_author}." zero: "%{actors} ankaŭ komentis pri %{post_link} de %{post_author}." also_commented_deleted: one: "%{actors} komentis pri forigita afiŝo." @@ -413,7 +409,6 @@ eo: many: "%{actors} komentis pri via %{post_link}." one: "%{actors} komentis pri via %{post_link}." other: "%{actors} komentis pri via %{post_link}." - two: "%{actors} komentis pri via %{post_link}." zero: "%{actors} komentis pri via %{post_link}." helper: new_notifications: @@ -421,7 +416,6 @@ eo: many: "%{count} novaj sciigoj" one: "1 nova sciigo" other: "%{count} novaj sciigoj" - two: "%{count} novaj sciigoj" zero: "neniuj novaj sciigoj" index: and: "kaj" @@ -441,21 +435,18 @@ eo: many: "%{actors} ŝatis vian forigitan afiŝon." one: "%{actors} ŝatis vian forigitan afiŝon." other: "%{actors} ŝatis vian forigitan afiŝon." - two: "%{actors} ŝatis vian foritan afiŝon." zero: "%{actors} ŝatis vian forigitan afiŝon." mentioned: few: "%{actors} menciis vin en %{post_link}." many: "%{actors} menciis vin en %{post_link}." one: "%{actors} menciis vin en %{post_link}." other: "%{actors} menciis vin en %{post_link}." - two: "%{actors} menciis vin en %{post_link}." zero: "%{actors} menciis vin en %{post_link}." mentioned_deleted: few: "%{actors} menciis vin en forigita afiŝo." many: "%{actors} menciis vin en forigita afiŝo." one: "%{actors} menciis vin en forigita afiŝo." other: "%{actors} menciis vin en forigita afiŝo." - two: "%{actors} menciis vin en foritan afiŝon." zero: "%{actors} menciis vin en forigita afiŝo." post: "afiŝo" private_message: @@ -463,7 +454,6 @@ eo: many: "%{actors} sendis al vi poŝton." one: "%{actors} sendis al vi poŝton." other: "%{actors} sendis al vi poŝton." - two: "%{actors} poŝtis al vi poŝton." zero: "%{actors} sendis al vi poŝton." reshared: one: "%{actors} rekonigis vian %{post_link}-n." @@ -472,10 +462,9 @@ eo: reshared_post_deleted: few: "%{actors} rekonigis vian forviŝitan afiŝon." many: "%{actors} rekonigis vian forviŝitan afiŝon." - one: "%{actors} rekonigis vian forviŝitan afiŝon." - other: "%{actors} rekonigis vian forviŝitan afiŝon." - two: "%{actors} rekonigis vian forviŝitan afiŝon." - zero: "%{actors} rekonigis vian forviŝitan afiŝon." + one: "%{actors} rekonigis vian forigitan afiŝon." + other: "%{actors} rekonigis vian forigitan afiŝon." + zero: "%{actors} rekonigis vian forigitan afiŝon." started_sharing: one: "%{actors} komencis konigi al vi." other: "%{actors} komencis konigi al vi." @@ -638,7 +627,6 @@ eo: many: "%{count} bildoj de %{author}" one: "Unu bildo de %{author}" other: "%{count} bildoj de %{author}" - two: "Du bildoj de %{author}" zero: "Neniuj bildoj de %{author}" reshare_by: "Rekonigo de %{author}" previous: "antaŭa" @@ -713,7 +701,6 @@ eo: many: "%{count} novaj petoj!" one: "nova peto!" other: "%{count} novaj petoj!" - two: "%{count} novaj petoj!" zero: "neniuj novaj petoj" manage_aspect_contacts: existing: "Ekzistantaj kontaktoj" @@ -731,7 +718,6 @@ eo: many: "%{count} rekonigoj" one: "1 rekonigo" other: "%{count} rekonigoj" - two: "%{count} rekonigoj" zero: "Rekonigi" reshare_confirmation: "Ĉu rekonigi la afiŝon de %{author}?" reshare_original: "Rekonigi la originalon" @@ -787,7 +773,6 @@ eo: many: "En %{count} aspektoj" one: "En %{count} aspekto" other: "En %{count} aspektoj" - two: "En %{count} aspektoj" zero: "Aldoni kontakton" contact_list: all_contacts: "Ĉiuj kontaktoj" @@ -870,7 +855,6 @@ eo: many: "Montri %{count} pliajn komentojn" one: "Montri unu plian komenton" other: "Montri %{count} pliajn komentojn" - two: "Montri du pliajn komentojn" zero: "Neniuj pliaj komentoj" streams: activity: diff --git a/config/locales/diaspora/es-AR.yml b/config/locales/diaspora/es-AR.yml index e3be6e70d..a145a7075 100644 --- a/config/locales/diaspora/es-AR.yml +++ b/config/locales/diaspora/es-AR.yml @@ -157,6 +157,8 @@ es-AR: donate: "Donar" handle_explanation: "Ésta es tu identificación de Diáspora*. Es como una dirección de correo electrónico, podes dársela a la gente para que te encuentren." help: + any_problem: "¿Algún problema?" + contact_podmin: "Contacta al administrador de tu pod!" do_you: "Tal vez:" email_feedback: "Si lo prefieres, enviá tus comentarios a este %{link}." email_link: "Correo electrónico" @@ -164,6 +166,7 @@ es-AR: find_a_bug: "...encontraste un %{link}?" have_a_question: "...tengas una %{link}?" here_to_help: "La comunidad de Diaspora* está aquí para ayudarte." + mail_podmin: "Correo electrónico del administrador del pod" need_help: "¿Necesitás ayuda?" tag_bug: "error" tag_feature: "idea" @@ -278,6 +281,7 @@ es-AR: people_sharing: "Compartiendo con vos:" spotlight: community_spotlight: "Comunidad Creativa" + suggest_member: "Sugiere un usuario" two: "%{count} contactos" zero: "contactos" conversations: @@ -292,7 +296,6 @@ es-AR: many: "%{count} mensajes nuevos" one: "1 mensaje nuevo" other: "%{count} mensajes nuevos" - two: "%{count} mensajes nuevos" zero: "No hay mensajes nuevos" index: create_a_new_message: "crear un nuevo mensaje" @@ -338,7 +341,9 @@ es-AR: create: already_contacts: "Ya estás conectado con esta persona" already_sent: "Ya invitaste a esta persona." + empty: "Por favor ingresa al menos una dirección de correo electrónico." no_more: "No tenés más invitaciones." + note_already_sent: "Las invitaciones han sido enviadas a: %{emails}" own_address: "No podés enviar una invitación a tu propia dirección." rejected: "Las siguientes direcciones tuvieron problemas: " sent: "Las invitaciones se han enviado a: %{emails}" @@ -406,21 +411,18 @@ es-AR: many: "%{actors} también comentaron en la %{post_link} de %{post_author}." one: "%{actors} también comentó en la %{post_link} de %{post_author}." other: "%{actors} también comentaron en la %{post_link} de %{post_author}." - two: "%{actors} también comentó en el %{post_link} de %{post_author}" zero: "%{actors} también comentó en la %{post_link} de %{post_author}." also_commented_deleted: few: "%{actors} comentaron en una publicación eliminada." many: "%{actors} comentaron en una publicación eliminada." one: "%{actors} comentó en una publicación eliminada." other: "%{actors} comentaron en una publicación eliminada." - two: "%{actors} comentaron en una publicación borrada." zero: "%{actors} comentó en una publicación eliminada." comment_on_post: few: "%{actors} comentaron en tu %{post_link}." many: "%{actors} comentaron en tu %{post_link}." one: "%{actors} comentó en tu %{post_link}." other: "%{actors} comentaron en tu %{post_link}." - two: "%{actors} comentaron en tu %{post_link}." zero: "%{actors} comentó en tu %{post_link}." helper: new_notifications: @@ -428,7 +430,6 @@ es-AR: many: "%{count} notificaciones nuevas" one: "1 notificación nueva" other: "%{count} notificaciones nuevas" - two: "%{count} notificaciones nuevas" zero: "Ninguna notificacíon nueva" index: and: "y" @@ -437,7 +438,6 @@ es-AR: many: "y otros %{count}" one: "y alguien más" other: "y otros %{count}" - two: "y %{count} otros" zero: "y nadie más" mark_all_as_read: "Marcar todo como leído" mark_unread: "Marcar como no leído" @@ -451,7 +451,6 @@ es-AR: many: "A %{actors} les gusta tu publicación eliminada." one: "A %{actors} le gusta tu publicación eliminada." other: "A %{actors} les gusta tu publicación eliminada." - two: "a %{actors} le gustó tu publicación eliminada." zero: "A %{actors} le gusta tu publicación eliminada." mentioned: one: "%{actors} te mencionó en una %{post_link}." @@ -462,7 +461,6 @@ es-AR: many: "%{actors} te mencionaron en una publicación eliminada." one: "%{actors} te mencionó en una publicación eliminada." other: "%{actors} te mencionaron en una publicación eliminada." - two: "%{actors} te mencionó en un mensaje eliminado." zero: "%{actors} te mencionó en una publicación eliminada." post: "publicación" private_message: @@ -470,7 +468,6 @@ es-AR: many: "%{actors} te enviaron un mensaje." one: "%{actors} te envió un mensaje." other: "%{actors} te enviaron un mensaje." - two: "%{actors} te envió un mensaje." zero: "%{actors} te envió un mensaje." reshared: one: "%{actors} compartió tu %{post_link}." @@ -485,7 +482,6 @@ es-AR: many: "%{actors} comparten con vos." one: "%{actors} comparte con vos." other: "%{actors} comparten con vos." - two: "%{actors} comenzó a compartir con vos." zero: "%{actors} comparte con vos." notifier: a_post_you_shared: "una publicación." @@ -675,7 +671,6 @@ es-AR: many: "%{count} reacciones" one: "1 reacción" other: "%{count} reacciones" - two: "%{count} reacciones" zero: "0 reacciones" registrations: closed: "Los registros están cerrados en este servidor de Diáspora*." @@ -719,7 +714,6 @@ es-AR: many: "¡%{count} solicitudes nuevas!" one: "¡Una solicitud nueva!" other: "¡%{count} solicitudes nuevas!" - two: "%{count} nuevas solicitudes!" zero: "No hay solicitudes nuevas" manage_aspect_contacts: existing: "Contactos existentes" @@ -870,7 +864,6 @@ es-AR: many: "Mostrar %{count} comentarios más" one: "Mostrar 1 comentario más" other: "Mostrar %{count} comentarios más" - two: "Mostrar 2 comentarios más" zero: "No hay más comentarios" streams: activity: @@ -991,6 +984,8 @@ es-AR: getting_started: awesome_take_me_to_diaspora: "¡Asombroso! Llevame a Diaspora*" community_welcome: "¡La comunidad de Diáspora está feliz de tenerte a bordo!" + connect_to_facebook: "Podemos acelerar un poco las cosas con un %{link} a Diaspora. Esto extraerá tu nombre y foto, y habilitará la publicación cruzada." + connect_to_facebook_link: "conectando tu cuenta de Facebook" hashtag_explanation: "Los hashtags te permiten seguir y hablar sobre tus intereses. También son una gran manera de encontrar gente nueva en Diáspora." hashtag_suggestions: "Probá siguiendo tags como #arte, #películas, #activismo, #geek." saved: "¡Guardado!" diff --git a/config/locales/diaspora/es-CL.yml b/config/locales/diaspora/es-CL.yml index 5b9df76e0..4c3869ff6 100644 --- a/config/locales/diaspora/es-CL.yml +++ b/config/locales/diaspora/es-CL.yml @@ -238,7 +238,6 @@ es-CL: many: "%{count} nuevos mensajes" one: "1 nuevo mensaje" other: "%{count} nuevos mensajes" - two: "%{count} nuevos mensajes" zero: "sin nuevos mensajes" index: create_a_new_message: "crear un nuevo mensaje" @@ -325,21 +324,18 @@ es-CL: many: "%{count} personas no les gusta esto" one: "1 persona no le gusta esto" other: "%{count} personas no les gusta esto" - two: "%{count} no me gusta" zero: "a ninguna persona le disgusta esto" people_like_this: few: "%{count} personas les gusta esto" many: "%{count} personas les gusta esto" one: "1 persona le gusta esto" other: "%{count} personas les gusta esto" - two: "%{count} likes" zero: "a nadie le gusta esto aun" people_like_this_comment: few: "a %{count} les gusta esto" many: "a %{count} les gusta esto" one: "a %{count} le gusta esto" other: "a %{count} les gusta esto" - two: "%{count} me gusta" zero: "a nadie le gusta esto aun" limited: "Restringido" more: "Más" @@ -351,21 +347,18 @@ es-CL: many: "%{actors} también comentaron en el %{post_link} de %{post_author}." one: "%{actors} también comentó en el %{post_link} de %{post_author}." other: "%{actors} también comentaron en el %{post_link} de %{post_author}." - two: "%{actors} también comentaron en el %{post_link} de %{post_author}." zero: "%{actors} también comentó en el %{post_link} de %{post_author}." also_commented_deleted: few: "%{actors} comentaron en un post eliminado." many: "%{actors} comentaron en una post eliminado." one: "%{actors} comentó en un post eliminado." other: "%{actors} comentaron en un post eliminado." - two: "%{actors} comentaron en un post eliminado." zero: "%{actors} comentó en un post eliminado." comment_on_post: few: "%{actors} comentaron en tu %{post_link}." many: "%{actors} comentaron en tu %{post_link}." one: "%{actors} comentó en tu %{post_link}." other: "%{actors} comentaron en tu %{post_link}." - two: "%{actors} comentaron en tu %{post_link}." zero: "%{actors} comentó en tu %{post_link}." helper: new_notifications: @@ -373,7 +366,6 @@ es-CL: many: "%{count} nuevas notificaciones" one: "1 nueva notificación" other: "%{count} nuevas notificaciones" - two: "%{count} nuevas notificaciones" zero: "sin nuevas notificaciones" index: and: "y" @@ -382,7 +374,6 @@ es-CL: many: "y otros %{count}" one: "y uno más" other: "y otros %{count}" - two: "y %{count} más" zero: "y nadie más" mark_all_as_read: "Marcar todo como leido" mark_unread: "Marcar como no leído" @@ -392,28 +383,24 @@ es-CL: many: "A %{actors} les gustó tu %{post_link}." one: "A %{actors} le gustó tu %{post_link}." other: "A %{actors} le gustó tu %{post_link}." - two: "A %{actors} les gusto tu %{post_link}." zero: "A %{actors} le gustó tu %{post_link}." liked_post_deleted: few: "%{actors} les gustó tu post eliminado." many: "%{actors} les gustó tu post eliminado." one: "%{actors} le gustó tu post eliminado." other: "%{actors} les gustó tu post eliminado." - two: "%{actors} les gusto tu post eliminado." zero: "%{actors} le gustó tu post eliminado." mentioned: few: "%{actors} te mencionaron en un %{post_link}." many: "%{actors} te mencionaron en un %{post_link}." one: "%{actors} te menciono en %{post_link}." other: "%{actors} te mencionó en un %{post_link}." - two: "%{actors} te han mencionado en %{post_link}." zero: "%{actors} te mencionó en un %{post_link}." mentioned_deleted: few: "%{actors} te mencionó en un post eliminado." many: "%{actors} te mencionó en un post eliminado." one: "%{actors} te mencionó en un post eliminado." other: "%{actors} te mencionó en un post eliminado." - two: "%{actors} te mencionaron en un post eliminado." zero: "%{actors} te mencionó en un post eliminado." post: "publicación" private_message: @@ -421,28 +408,24 @@ es-CL: many: "%{actors} te envió un mensaje." one: "%{actors} te envió un mensaje." other: "%{actors} te envió un mensaje." - two: "%{actors} te enviaron un mensaje." zero: "%{actors} te envió un mensaje." reshared: few: "%{actors} compartieron tu %{post_link}." many: "%{actors} compartieron tu %{post_link}." one: "%{actors} compartió tu %{post_link}." other: "%{actors} compartió tu %{post_link}." - two: "%{actors} compartieron tu %{post_link}." zero: "%{actors} compartió tu %{post_link}." reshared_post_deleted: few: "%{actors} compartieron tu post eliminado." many: "%{actors} compartieron tu post eliminado." one: "%{actors} compartió tu post eliminado." other: "%{actors} compartieron tu post eliminado." - two: "%{actors} compartieron tu post eliminado." zero: "%{actors} compartió tu post eliminado." started_sharing: few: "%{actors} comenzaron a compartir contigo." many: "%{actors} comenzaron a compartir contigo." one: "%{actors} comenzó a compartir contigo." other: "%{actors} comenzaron a compartir contigo." - two: "%{actors} comenzaron a compartir contigo." zero: "%{actors} comenzó a compartir contigo." notifier: a_post_you_shared: "un post." @@ -596,7 +579,6 @@ es-CL: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" reshare_by: "Compartido por %{author}" previous: "Anterior" @@ -631,7 +613,6 @@ es-CL: many: "%{count} reacciones" one: "1 reacción" other: "%{count} reacciones" - two: "%{count} reacciones" zero: "0 reacciones" registrations: closed: "Los registros están cerrados en este servidor de Diaspora." @@ -669,7 +650,6 @@ es-CL: many: "%{count} nuevas solicitudes!" one: "nueva solicitud!" other: "%{count} nuevas solicitudes!" - two: "%{count} nuevas solicitudes!" zero: "sin nuevas solicitudes" manage_aspect_contacts: existing: "Los contactos existen" @@ -687,7 +667,6 @@ es-CL: many: "Se ha compartido %{count} veces" one: "Se ha compartido 1 vez" other: "Se ha compartido %{count} veces" - two: "se ha compartido %{count} veces" zero: "Compartir" reshare_confirmation: "Compartir el post de %{author}? " reshare_original: "Compartir el original" @@ -743,7 +722,6 @@ es-CL: many: "En %{count} aspectos" one: "En %{count} aspecto" other: "En %{count} aspectos" - two: "En %{count} aspectos" zero: "Agregar contacto" contact_list: all_contacts: "Todos los contactos" @@ -818,7 +796,6 @@ es-CL: many: "Tu mensaje de estado debe tener menos de %{count} caracteres" one: "Tu mensaje de estado debe tener menos de %{count} caracter" other: "Tu mensaje de estado debe tener menos de %{count} caracteres" - two: "tu mensaje de estado tiene que tener menos de %{count} caracteres" zero: "Tu mensaje de estado debe tener menos de %{count} caracteres" stream_helper: hide_comments: "ocultar todos los comentarios" @@ -827,7 +804,6 @@ es-CL: many: "Mostrar %{count} comentarios más" one: "Mostrar un comentario más" other: "Mostrar %{count} comentarios más" - two: "Mostrar 2 comentarios más" zero: "No más comentarios" streams: activity: diff --git a/config/locales/diaspora/es-MX.yml b/config/locales/diaspora/es-MX.yml index e7b56cabc..b9f095eb0 100644 --- a/config/locales/diaspora/es-MX.yml +++ b/config/locales/diaspora/es-MX.yml @@ -157,6 +157,8 @@ es-MX: donate: "Donar" handle_explanation: "Esta es tu dirección de Diaspora. Como una dirección de correo electrónico, puedes dársela a la gente para que te encuentre." help: + any_problem: "¿Algún problema?" + contact_podmin: "¡Contacta al administrador de tu pod!" do_you: "Tal vez:" email_feedback: "Si lo prefieres, envíanos tus opiniones a este %{link}." email_link: "Correo electrónico" @@ -164,6 +166,7 @@ es-MX: find_a_bug: "• Encontraste un %{link}." have_a_question: "• Tienes una %{link}." here_to_help: "¡La comunidad de Diaspora está aquí!" + mail_podmin: "Correo electrónico del administrador del pod" need_help: "¿Necesitas ayuda?" tag_bug: "error" tag_feature: "idea" @@ -278,11 +281,13 @@ es-MX: people_sharing: "Personas que comparten contigo:" spotlight: community_spotlight: "Lo más destacado de la comunidad" + suggest_member: "Sugiere a un miembro" two: "%{count} contactos" zero: "contactos" conversations: create: fail: "Mensaje inválido" + no_contact: "¡Eh, primero necesitas añadir al contacto!" sent: "Mensaje enviado" destroy: success: "Conversación eliminada exitosamente" @@ -335,7 +340,9 @@ es-MX: create: already_contacts: "Ya estás conectado con esta persona" already_sent: "Ya has invitado a esta persona." + empty: "Por favor, introduce al menos una dirección de correo electrónico." no_more: "No tienes más invitaciones." + note_already_sent: "Ya se han enviado invitaciones a: %{emails}" own_address: "No puedes enviar una invitación a tu propia dirección." rejected: "Las siguientes direcciones electrónicas tuvieron problemas: " sent: "Las invitaciones se han enviado a: %{emails}" @@ -776,7 +783,7 @@ es-MX: atom_feed: "canal Atom" control_your_audience: "Controla tu audiencia" logged_in: "conectado a %{service}" - manage: "gestionar servicios conectados" + manage: "Gestionar servicios conectados" new_user_welcome_message: "Utiliza #etiquetas para clasificar tus publicaciones y encontrar gente que comparta tus intereses. Llama a gente asombrosa usando las @Menciones" outside: "Los mensajes públicos podrán ser vistos por otros fuera de Diaspora." share: "Comparte" @@ -910,7 +917,7 @@ es-MX: success: "Tu cuenta ha sido bloqueada. Nos puede tomar 20 minutos terminar de cerrar tu cuenta. Gracias por probar Diaspora." wrong_password: "La contraseña introducida no coincide con tu contraseña actual." edit: - also_commented: "• Alguien también comenta en la publicación de tu contacto." + also_commented: "Alguien también comenta en la publicación de tu contacto." auto_follow_aspect: "Aspecto para los usuarios que sigues automáticamente:" auto_follow_back: "Seguir automáticamente a quien empiece a seguirte" change: "Cambiar" @@ -928,7 +935,7 @@ es-MX: no_turning_back: "Actualmente, no hay vuelta atrás." what_we_delete: "Eliminamos todas tus publicaciones, tu información de perfil, tan pronto como nos es posible. Tus comentarios estarán en línea, pero estarán asociados a tu cuenta de Diaspora." close_account_text: "Cerrar cuenta" - comment_on_post: "• Alguien comenta en tu publicación." + comment_on_post: "Alguien comenta en tu publicación." current_password: "Contraseña actual" current_password_expl: "con la que inicias sesión…" download_photos: "Descargar mis fotos" @@ -938,22 +945,24 @@ es-MX: export_data: "Exportar datos" following: "Configuración de seguimiento" getting_started: "Preferencias de nuevo usuario" - liked: "• A alguien le gusta tu publicación." + liked: "A alguien le gusta tu publicación." mentioned: "Te mencionan en una publicación." new_password: "Nueva contraseña" photo_export_unavailable: "Exportar fotos no está disponible actualmente" - private_message: "• Recibes un mensaje privado." + private_message: "Recibes un mensaje privado." receive_email_notifications: "Recibir notificaciones por correo electrónico cuando:" - reshared: "• Alguien comparte tu publicación." + reshared: "Alguien comparte tu publicación." show_community_spotlight: "¿Mostrar «Lo más destacado de la comunidad» en tu Entrada?" show_getting_started: "Volver a activar la guía de primeros pasos" - started_sharing: "• Alguien comienza a compartir contigo." + started_sharing: "Alguien comienza a compartir contigo." stream_preferences: "Preferencias de Entrada" your_email: "Tu correo electrónico" your_handle: "Tu ID de Diaspora" getting_started: awesome_take_me_to_diaspora: "¡Genial! Llévame a Diaspora*" community_welcome: "¡La comunidad de Diaspora está feliz de tenerte a bordo!" + connect_to_facebook: "Podemos acelerar un poco las cosas %{link} a Diaspora. Esto extraerá tu nombre y foto, y habilitará las publicaciones cruzadas." + connect_to_facebook_link: "conectando tu cuenta de Facebook" hashtag_explanation: "Las etiquetas te permiten hablar acerca de tus intereses, así como seguirlos. Son también una gran forma de encontrar gente en Diaspora." hashtag_suggestions: "Intenta seguir etiquetas como #arte, #películas, #español, etc." saved: "¡Guardado!" diff --git a/config/locales/diaspora/es.yml b/config/locales/diaspora/es.yml index 9355f171a..9d59404aa 100644 --- a/config/locales/diaspora/es.yml +++ b/config/locales/diaspora/es.yml @@ -157,6 +157,8 @@ es: donate: "Donar" handle_explanation: "Ésta es tu dirección Diaspora*. Como una dirección de correo electrónico, puedes dársela a la gente para que te encuentre." help: + any_problem: "¿Algún problema?" + contact_podmin: "¡Contacta con el administrador de tu pod!" do_you: "Tal vez:" email_feedback: "Si lo prefieres, envía tus comentarios a este %{link}." email_link: "Correo Electrónico" @@ -164,7 +166,8 @@ es: find_a_bug: "- Encuentres algún %{link}." have_a_question: "- Realices alguna %{link}." here_to_help: "¡La comunidad Diaspora está aquí!" - need_help: "¿Necesitas ayuda?" + mail_podmin: "Correo del podmin" + need_help: "Ayuda" tag_bug: "error" tag_feature: "idea" tag_question: "pregunta" @@ -175,7 +178,7 @@ es: new_here: follow: "¡Sigue %{link} y da la bienvenida a los nuevos miembros de Diaspora*!" learn_more: "Más información" - title: "Bienvenida a nuevos usuarios" + title: "Bienvenida" no_contacts: "No hay contactos" no_tags: "+ Encuentra una etiqueta a seguir" people_sharing_with_you: "Personas que comparten contigo" @@ -230,7 +233,7 @@ es: back: "Atrás" blocks: create: - failure: "No podría ignorar a esa persona. #evasion" + failure: "No puede ignorar a este usuario. #evasión" success: "Bien, no verás a esa persona en tu entrada otra vez. #silencio!" destroy: failure: "No podría dejar de ignorar a esa persona. #evasion" @@ -278,11 +281,13 @@ es: people_sharing: "Personas que comparten contigo:" spotlight: community_spotlight: "Comunidad Creativa" + suggest_member: "Sugiere un usuario" two: "%{count} contactos" zero: "contactos" conversations: create: fail: "Mensaje no válido" + no_contact: "¡Eh, primero tienes que añadir al contacto!" sent: "Mensaje enviado" destroy: success: "Conversación eliminada con éxito" @@ -335,10 +340,12 @@ es: create: already_contacts: "Ya estás conectad@ con esa persona" already_sent: "Ya has invitado a esta persona." + empty: "Por favor, introduce al menos una dirección de correo electrónico." no_more: "No tienes más invitaciones." + note_already_sent: "Las invitaciones han sido enviadas a: %{emails}" own_address: "No puedes enviar una invitación a tu propio correo." rejected: "Hubo problemas con las siguientes direcciones de correo: " - sent: "Se han enviado invitaciones a: %{emails}" + sent: "Las invitaciones han sido enviadas a: %{emails}" edit: accept_your_invitation: "Aceptar tu invitación" your_account_awaits: "¡Tu cuenta te espera!" @@ -366,7 +373,7 @@ es: powered_by: "IMPULSADO POR DIASPORA*" public_feed: "Canal público de %{name} " source_package: "descargar el paquete del código fuente" - toggle: "cambiar al sitio móvil" + toggle: "Interfaz móvil" whats_new: "Novedades en Diaspora*" your_aspects: "tus aspectos" header: @@ -460,7 +467,7 @@ es: notifier: a_post_you_shared: "una publicación." accept_invite: "¡Acepta tu invitación a Diaspora*!" - click_here: "clic aquí" + click_here: "haz clic aquí" comment_on_post: reply: "Responder o ver los comentarios de %{name} >" confirm_email: @@ -670,7 +677,7 @@ es: hey_make: "EH,<br/>HAZ<br/>ALGO." join_the_movement: "¡Únete al movimiento!" password: "CONTRASEÑA" - password_confirmation: "Otra vez" + password_confirmation: "CONFIRMACIÓN DE CONTRASEÑA" sign_up: "REGISTRARSE" sign_up_message: "Redes Sociales con un ♥" username: "NOMBRE" @@ -776,7 +783,7 @@ es: atom_feed: "canal Atom" control_your_audience: "Controla tu Audiencia" logged_in: "conectado a %{service}" - manage: "gestión de servicios conectados" + manage: "Gestionar servicios conectados" new_user_welcome_message: "Utiliza #etiquetas para clasificar tus publicaciones y encontrar gente que comparta tus intereses. Llama a gente asombrosa usando las @Menciones" outside: "Los mensajes públicos también podrán verse fuera de Diaspora*." share: "Comparte" @@ -954,6 +961,8 @@ es: getting_started: awesome_take_me_to_diaspora: "¡Increíble! Llévame a Diaspora*" community_welcome: "¡La comunidad de Diaspora está feliz de tenerte a bordo!" + connect_to_facebook: "Podemos acelerar un poquito las cosas %{link} en Diaspora. Esto permitirá usar tu mismo nombre y foto, además de habilitar la publicación cruzada." + connect_to_facebook_link: "conectando con tu cuenta de Facebook" hashtag_explanation: "Las etiquetas te permiten hablar sobre tus intereses así como seguirlos. Además es una forma genial de encontrar gente nueva en Diaspora. " hashtag_suggestions: "Prueba a seguir etiquetas como #arte, #cine, #activismo, #libros, etc." saved: "¡Guardado!" diff --git a/config/locales/diaspora/eu.yml b/config/locales/diaspora/eu.yml index 875716cfd..ca121ce2e 100644 --- a/config/locales/diaspora/eu.yml +++ b/config/locales/diaspora/eu.yml @@ -292,7 +292,6 @@ eu: many: "%{count} mezu pribatu berri" one: "mezu pribatu berri 1" other: "%{count} mezu pribatu berri" - two: "%{count} new messages" zero: "Mezu pribatu berririk ez" index: create_a_new_message: "mezu berria sortu" @@ -388,21 +387,18 @@ eu: many: "%{count} pertsonek ez dute hau gustuko" one: "%{count}ek ez du hau gustuko" other: "%{count} pertsonek ez dute hau gustuko" - two: "%{count} dislikes" zero: "gustuko ez duen pertsonarik ez" people_like_this: few: "%{count} pertsonek gustuko dute hau" many: "%{count} pertsonek gustuko dute hau" one: "%{count}ek du gustuko" other: "%{count} pertsonek gustuko dute hau" - two: "%{count}(e)k gustuko dute" zero: "oraindik ez du inork gustuko" people_like_this_comment: few: "%{count}(e)k gustuko dute" many: "%{count}(e)k gustuko dute" one: "%{count}ek gustuko du" other: "%{count}(e)k gustuko dute" - two: "%{count}(e)k gustuko dute" zero: "inork ez du gustuko" limited: "Mugatua" more: "Gehiago" @@ -414,21 +410,18 @@ eu: many: "%{actors}(e)k ere iruzkindu du(te) %{post_author}(r)en %{post_link}." one: "%{actors}(e)k ere iruzkindu du(te) %{post_author}(r)en %{post_link}." other: "%{actors}(e)k ere iruzkindu du(te) %{post_author}(r)en %{post_link}." - two: "%{actors}(e)k ere iruzkindu du(te) %{post_author}(r)en %{post_link}." zero: "%{actors}(e)k ere iruzkindu du(te) %{post_author}(r)en %{post_link}." also_commented_deleted: few: "%{actors}(e)k mezu ezabatu bat iruzkindu du(te)." many: "%{actors}(e)k mezu ezabatu bat iruzkindu du(te)." one: "%{actors}(e)k mezu ezabatu bat iruzkindu du(te)." other: "%{actors}(e)k mezu ezabatu bat iruzkindu du(te)." - two: "%{actors}(e)k mezu ezabatu bat iruzkindu du(te)." zero: "%{actors}(e)k mezu ezabatu bat iruzkindu du(te)." comment_on_post: few: "%{actors}(e)k zure %{post_link} iruzkindu du(te)." many: "%{actors}(e)k zure %{post_link} iruzkindu du(te)." one: "%{actors}(e)k zure %{post_link} iruzkindu du(te)." other: "%{actors}(e)k zure %{post_link} iruzkindu du(te)." - two: "%{actors}(e)k zure %{post_link} iruzkindu du(te)." zero: "%{actors}(e)k zure %{post_link} iruzkindu du(te)." helper: new_notifications: @@ -436,7 +429,6 @@ eu: many: "%{count} jakinarazpen berri" one: "jakinarazpen berri 1" other: "%{count} jakinarazpen berri" - two: "%{count} jakinarazpen berri" zero: "Jakinarazpen berririk ez" index: and: "eta" @@ -445,7 +437,6 @@ eu: many: "eta beste %{count}(e)k" one: "eta beste batek" other: "eta beste %{count}(e)k" - two: "eta beste %{count}" zero: "eta inork gehiago ez" mark_all_as_read: "Guztiak irakurrita" mark_unread: "Irakurri gabe gisa markatu" @@ -455,28 +446,24 @@ eu: many: "%{actors}(e)k gustuko dute zure %{post_link}." one: "%{actors}(e)k gustuko du zure %{post_link}." other: "%{actors}(e)k gustuko dute zure %{post_link}." - two: "%{actors}(e)k zure %{post_link} gustuko dute." zero: "%{actors}(e)k gustuko dute zure %{post_link}." liked_post_deleted: few: "%{actors}(e)k gustuko du(te) zure mezu ezabatua." many: "%{actors}(e)k gustuko du(te) zure mezu ezabatua." one: "%{actors}(e)k gustuko du(te) zure mezu ezabatua." other: "%{actors}(e)k gustuko du(te) zure mezu ezabatua." - two: "%{actors}(e)k zure mezu ezabatua gustuko du(te)" zero: "%{actors}(e)k gustuko du(te) zure mezu ezabatua." mentioned: few: "%{actors}(e)k zu aipatu zaituzte %{post_link} batean." many: "%{actors}(e)k zu aipatu zaituzte %{post_link} batean." one: "%{actors}(e)k zu aipatu zaitu(zte) %{post_link}(e)n." other: "%{actors}(e)k zu aipatu zaituzte %{post_link} batean." - two: "%{actors}(e)k zu aipatu zaituzte %{post_link} batean." zero: "%{actors}(e)k zu aipatu zaituzte %{post_link} batean." mentioned_deleted: few: "%{actors}(e)k zu aipatu zaitu(zte) mezu ezabatu batean." many: "%{actors}(e)k zu aipatu zaitu(zte) mezu ezabatu batean." one: "%{actors}(e)k zu aipatu zaitu(zte) mezu ezabatu batean.\n" other: "%{actors}(e)k mezu ezabatu batean aipatu zaitu(zte)." - two: "%{actors}(e)k mezu ezabatu batean aipatu zaitu(zte)." zero: "%{actors}(e)k mezu ezabatu batean aipatu zaitu(zte)." post: "mezua" private_message: @@ -484,28 +471,24 @@ eu: many: "%{actors}(e)k mezu bat bidali dizu(te)." one: "%{actors}(e)k mezu bat bidali dizu(te)." other: "%{actors}(e)k mezu bat bidali dizu(te)." - two: "%{actors}(e)k mezu pribatu bat bidali dizu(te)." zero: "%{actors}(e)k mezu bat bidali dizu(te)." reshared: few: "%{actors}(e)k zure %{post_link} birpartekatu dute." many: "%{actors}(e)k zure %{post_link} birpartekatu du." one: "%{actors}(e)k zure %{post_link} birpartekatu du." other: "%{actors}(e)k zure %{post_link} birpartekatu dute." - two: "%{actors}(e)k zure %{post_link} birpartekatu dute." zero: "%{actors}(e)k zure %{post_link} birpartekatu du." reshared_post_deleted: few: "%{actors}(e)k zure mezu ezabatu birpartekatu du(te)." many: "%{actors}(e)k zure mezu ezabatua iruzkindu du(te)." one: "%{actors}(e)k zure mezu ezabatua birpartekatu du(te)." other: "%{actors}(e)k zure mezu ezabatua iruzkindu du(te)." - two: "%{actors}(e)k zure mezu ezabatua iruzkindu du(te)." zero: "%{actors}(e)k zure mezu ezabatua iruzkindu du(te)." started_sharing: few: "%{actors} zurekin harremanetan hasi dir)a." many: "%{actors} zurekin harremanetan hasi d(ir)a" one: "%{actors} zurekin harremanetan hasi d(ir)a" other: "%{actors} zurekin harremanetan hasi d(ir)a" - two: "%{actors} zurekin harremanetan hasi d(ir)a." zero: "%{actors} zurekin harremanetan hasi d(ir)a" notifier: a_post_you_shared: "mezu bat." @@ -665,7 +648,6 @@ eu: many: "%{count} argazki %{author}(r)en eskutik" one: "Argazki bat %{author}(r)en eskutik" other: "%{count} argazki %{author}(r)en eskutik" - two: "Bi argazki %{author}(r)en eskutik" zero: "Argazkirik ez %{author}(r)en eskutik" reshare_by: "Birpartekaketa %{author}(r)en eskutik" previous: "aurrekoa" @@ -700,7 +682,6 @@ eu: many: "%{count} erreakzio" one: "erreakzio 1" other: "%{count} erreakzio" - two: "%{count} erreakzio" zero: "erreakziorik ez" registrations: closed: "Izen emateak itxirik daude Diaspora zerbitzari hontan." @@ -743,7 +724,6 @@ eu: many: "%{count} eskaera berri!" one: "eskaera berria!" other: "%{count} eskaera berri!" - two: "%{count} eskaera berri!" zero: "eskaera berririk ez" manage_aspect_contacts: existing: "Adiskideak" @@ -761,7 +741,6 @@ eu: many: "%{count} Birpartekaketa" one: "Birpartekaketa 1" other: "%{count} birpartekaketa " - two: "%{count} birpartekaketa" zero: "Birpartekatu" reshare_confirmation: "Birpartekatu %{author}(r)en mezua?" reshare_original: "Birpartekatu jatorrizkoa" @@ -891,7 +870,6 @@ eu: many: "mesedez, egin itzazu zure mezuak %{count} karaktere baino motzagoak" one: "mesedez, egin itzazu zure mezuak karaktere %{count} baino motzagoak" other: "mesedez, egin itzazu zure mezuak %{count} karaktere baino motzagoak" - two: "mesedez egin itzazu zure mezuak %{count} laraktere baino motzagoak" zero: "mesedez, egin itzazu zure mezuak %{count} karaktere baino motzagoak" stream_helper: hide_comments: "Iruzkin guztiak ezkutatu" @@ -900,7 +878,6 @@ eu: many: "Erakutsi %{count} iruzkin gehiago" one: "Erakutsi iruzki bat gehiago" other: "Erakutsi %{count} iruzkin gehiago" - two: "Erakutsi bi iruzkin gehiago" zero: "Ez dago iruzkin gehiago" streams: activity: diff --git a/config/locales/diaspora/fi.yml b/config/locales/diaspora/fi.yml index a03fa5f78..666b941f9 100644 --- a/config/locales/diaspora/fi.yml +++ b/config/locales/diaspora/fi.yml @@ -274,7 +274,6 @@ fi: many: "%{count} uutta viestiä" one: "1 uusi viesti" other: "%{count} uutta viestiä" - two: "%{count} uutta viestiä" zero: "Ei uusia viestejä" index: create_a_new_message: "luo uusi viesti" @@ -369,21 +368,18 @@ fi: many: "%{count} ei tykkää" one: "%{count} ei tykkää" other: "%{count} ei tykkää" - two: "%{count} ei tykkää" zero: "no people disliked this" people_like_this: few: "%{count} tykkää" many: "%{count} tykkää" one: "%{count} tykkää" other: "%{count} tykkää" - two: "%{count} tykkää" zero: "ei tykkäyksiä" people_like_this_comment: few: "%{count} tykkää" many: "%{count} tykkää" one: "%{count} tykkää" other: "%{count} tykkää" - two: "%{count} tykkää" zero: "ei tykkäyksiä" limited: "Rajoitettu" more: "Lisää" @@ -395,21 +391,18 @@ fi: many: "Myös %{actors} kommentoivat käyttäjän %{post_author} %{post_link}ä." one: "Myös %{actors} kommentoi käyttäjän %{post_author} %{post_link}ä." other: "Myös %{actors} kommentoivat käyttäjän %{post_author} %{post_link}ä." - two: "Myös %{actors} kommentoivat käyttäjän %{post_author} %{post_link}ä." zero: "Myös %{actors} kommentoi käyttäjän %{post_author} %{post_link}ä." also_commented_deleted: few: "%{actors} kommentoi poistettua viestiä." many: "%{actors} kommentoi poistettua viestiä." one: "%{actors} kommentoi poistettua viestiä." other: "%{actors} kommentoivat poistettua viestiä." - two: "%{actors} kommentoivat poistettua viestiä." zero: "%{actors} kommentoivat poistettua viestiä." comment_on_post: few: "%{actors} kommentoivat %{post_link}äsi." many: "%{actors} kommentoivat %{post_link}äsi." one: "%{actors} kommentoi %{post_link}äsi." other: "%{actors} kommentoivat %{post_link}äsi." - two: "%{actors} kommentoivat %{post_link}äsi." zero: "%{actors} kommentoi %{post_link}äsi." helper: new_notifications: @@ -417,7 +410,6 @@ fi: many: "%{count} uutta ilmoitusta" one: "1 uusi ilmoitus" other: "%{count} uutta ilmoitusta" - two: "%{count} uutta ilmoitusta" zero: "Ei uusia ilmoituksia" index: and: "ja" @@ -426,7 +418,6 @@ fi: many: "ja %{count} muuta" one: "ja yksi muu" other: "ja %{count} muuta" - two: "ja %{count} muuta" zero: "eikä kukaan muu" mark_all_as_read: "Merkitse kaikki luetuiksi" mark_unread: "Merkitse lukemattomaksi" @@ -436,21 +427,18 @@ fi: many: "%{actors} tykkäsivät %{post_link}stäsi." one: "%{actors} tykkäsi %{post_link}stäsi." other: "%{actors} tykkäsivät %{post_link}stäsi." - two: "%{actors} tykkäsivät %{post_link}stäsi." zero: "%{actors} tykkäsivät %{post_link}stäsi." liked_post_deleted: few: "%{actors} tykkäsivät poistamastasi viestistä." many: "%{actors} tykkäsivät poistamastasi viestistä." one: "%{actors} tykkäsi poistamastasi viestistä." other: "%{actors} tykkäsivät poistamastasi viestistä." - two: "%{actors} tykkäsivät poistamastasi viestistä." zero: "%{actors} tykkäsi poistamastasi viestistä." mentioned: few: "%{actors} ovat maininneet sinut %{post_link}ssä." many: "%{actors} ovat maininneet sinut %{post_link}ssä." one: "%{actors} on maininnut sinut %{post_link}ssä." other: "%{actors} ovat maininneet sinut %{post_link}ssä." - two: "%{actors} ovat maininneet sinut %{post_link}ssä." zero: "%{actors} on maininnut sinut %{post_link}ssä." mentioned_deleted: one: "%{actors} mainitsi sinut poistetussa viestissä." @@ -466,21 +454,18 @@ fi: many: "%{actors} ovat jakaneet %{post_link}si uudelleen." one: "%{actors} on jakanut %{post_link}si uudelleen." other: "%{actors} ovat jakaneet %{post_link}si uudelleen." - two: "%{actors} ovat jakaneet %{post_link}si uudelleen." zero: "%{actors} on jakanut %{post_link}si uudelleen." reshared_post_deleted: few: "%{actors} jakoivat poistamasi viestin uudelleen." many: "%{actors} jakoivat poistamasi viestin uudelleen." one: "%{actors} jakoi poistamasi viestin uudelleen." other: "%{actors} jakoivat poistamasi viestin uudelleen." - two: "%{actors} jakoivat poistamasi viestin uudelleen." zero: "%{actors} jakoivat poistamasi viestin uudelleen." started_sharing: few: "%{actors} on aloittanut jakamaan kanssasi." many: "%{actors} on aloittanut jakamaan kanssasi." one: "%{actors} on aloittanut jakamaan kanssasi." other: "%{actors} on aloittanut jakamaan kanssasi." - two: "%{actors} started sharing with you." zero: "%{actors} on aloittanut jakamaan kanssasi." notifier: a_post_you_shared: "viesti" @@ -672,7 +657,6 @@ fi: many: "%{count} reaktiota" one: "1 reaktio" other: "%{count} reaktiota" - two: "%{count} reaktiota" zero: "0 reaktiota" registrations: closed: "Rekisteröityminen on suljettu tässä Diaspora-podissa." @@ -716,7 +700,6 @@ fi: many: "%{count} uutta pyyntöä!" one: "uusi pyyntö!" other: "%{count} uutta pyyntöä!" - two: "%{count} uutta pyyntöä!" zero: "ei uusia pyyntöjä" manage_aspect_contacts: existing: "Olemassa olevat kontaktit" @@ -734,7 +717,6 @@ fi: many: "jaettu uudelleen %{count} kertaa" one: "jaettu uudelleen kerran" other: "jaettu uudelleen %{count} kertaa" - two: "jaettu uudelleen %{count} kertaa" zero: "Jaa uudelleen" reshare_confirmation: "Jaetaanko käyttäjän %{author} viesti uudelleen?" reshare_original: "Jaa alkuperäinen uudelleen" @@ -789,7 +771,6 @@ fi: many: "%{count} näkymässä" one: "%{count} näkymässä" other: "%{count} näkymässä" - two: "%{count} näkymässä" zero: "Lisää kontakti" contact_list: all_contacts: "Kaikki kontaktit" @@ -866,7 +847,6 @@ fi: many: "Ole hyvä ja kirjoita tilaasi vähemmän kuin %{count} merkkiä" one: "viestin merkkimäärä voi olla maksimissaan %{count}" other: "viestin merkkimäärä voi olla maksimissaan %{count}" - two: "statusviestisi voi olla korkeintaan %{count} merkin pituinen" zero: "viestin merkkimäärä voi olla maksimissaan %{count}" stream_helper: hide_comments: "Piilota kaikki kommentit" @@ -875,7 +855,6 @@ fi: many: "Näytä %{count} muuta kommenttia" one: "Näytä yksi muu kommentti" other: "Näytä %{count} muuta kommenttia" - two: "Näytä kaksi muuta kommenttia" zero: "Ei enempää kommentteja" streams: activity: diff --git a/config/locales/diaspora/fil.yml b/config/locales/diaspora/fil.yml index 812dba3a5..094b0f6ea 100644 --- a/config/locales/diaspora/fil.yml +++ b/config/locales/diaspora/fil.yml @@ -84,7 +84,7 @@ fil: no_contacts: "No mateys" many: "%{count} crews" new: - name: "Name" + name: "Pangalan" no_contacts_message: try_adding_some_more_contacts: "You can search (top) or invite (right) more contacts." one: "1 crew" @@ -115,7 +115,6 @@ fil: many: "%{count} new messages" one: "1 new messages" other: "%{count} new messages" - two: "%{count} new messages" zero: "No new messages" layouts: application: @@ -131,21 +130,18 @@ fil: many: "%{count} dislikes" one: "%{count} dislike" other: "%{count} dislikes" - two: "%{count} dislikes" zero: "no dislikes" people_like_this: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" people_like_this_comment: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" limited: "Limitado" notifications: @@ -154,21 +150,18 @@ fil: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -176,7 +169,6 @@ fil: many: "%{count} new notifications" one: "1 new notifications" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "No new notifications" index: and_others: @@ -184,63 +176,54 @@ fil: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" liked: few: "%{actors} has just liked your %{post_link}." many: "%{actors} has just liked your %{post_link}." one: "%{actors} has just liked your %{post_link}." other: "%{actors} has just liked your %{post_link}." - two: "%{actors} has just liked your %{post_link}." zero: "%{actors} has just liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." private_message: few: "%{actors} sent you a message." many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} has reshared your %{post_link}." many: "%{actors} has reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} has reshared your %{post_link}." - two: "%{actors} has reshared your %{post_link}." zero: "%{actors} has reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: confirm_email: @@ -282,7 +265,6 @@ fil: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" profiles: edit: @@ -292,7 +274,6 @@ fil: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: new: @@ -305,7 +286,6 @@ fil: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" reshares: reshare: @@ -314,7 +294,6 @@ fil: many: "%{count} reshares" one: "1 reshare" other: "%{count} reshares" - two: "%{count} reshares" zero: "Reshare" services: inviter: @@ -327,7 +306,6 @@ fil: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" publisher: new_user_prefill: @@ -343,7 +321,6 @@ fil: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: show_comments: @@ -351,7 +328,6 @@ fil: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/fr.yml b/config/locales/diaspora/fr.yml index e7cffd45e..fe294db02 100644 --- a/config/locales/diaspora/fr.yml +++ b/config/locales/diaspora/fr.yml @@ -79,7 +79,7 @@ fr: week: "Hebdomadaire" user_search: add_invites: "ajouter des invitations" - email_to: "Adresse e-mail de la personne à inviter" + email_to: "Adresse électronique de la personne à inviter" users: one: "%{count} utilisateur trouvé" other: "%{count} utilisateurs trouvés" @@ -99,8 +99,8 @@ fr: unknown_person: "Personne inconnue" video_title: unknown: "Titre de vidéo inconnu" - are_you_sure: "Êtes-vous certain ?" - are_you_sure_delete_account: "Êtes-vous sûr de vouloir supprimer votre compte ? Cette action est définitive !" + are_you_sure: "Êtes-vous certain-e ?" + are_you_sure_delete_account: "Souhaitez-vous vraiment supprimer votre compte ? Cette action est définitive !" aspect_memberships: destroy: failure: "Impossible de retirer la personne de l'aspect" @@ -157,6 +157,8 @@ fr: donate: "Faire un don" handle_explanation: "Ceci est votre identifiant Diaspora. Comme une adresse de courrier électronique, vous pouvez le communiquer à d'autres personnes pour leur permettre de vous joindre." help: + any_problem: "Un problème ?" + contact_podmin: "Contacter l'administrateur de votre pod !" do_you: "Avez-vous :" email_feedback: "Envoyez vos impressions par %{link} , si vous préférez." email_link: "Courriel" @@ -164,11 +166,12 @@ fr: find_a_bug: "... trouvé un %{link} ?" have_a_question: "... une %{link} ?" here_to_help: "La communauté Diaspora est là !" + mail_podmin: "E-mail du podmin" need_help: "Besoin d'aide ?" tag_bug: "bug" tag_feature: "suggestion" tag_question: "question" - tutorials_wiki_and_forum: "%{tutorial} & %{wiki} & %{forum}: Tutoriels créés par la communauté, astuces, et infos" + tutorials_wiki_and_forum: "%{tutorial} & %{wiki} & %{forum} : Tutoriels créés par la communauté, astuces, et infos" introduce_yourself: "Ceci est votre flux. Rejoignez-nous et présentez-vous." keep_diaspora_running: "Participez à un développement rapide de Diaspora avec un don mensuel !" keep_pod_running: "Permettez à %{pod} de fonctionner rapidement et offrez une dose de café mensuelle à nos serveurs !" @@ -261,7 +264,7 @@ fr: add_to_aspect_link: "ajoutez les contacts à %{name}" all_contacts: "Tous les contacts" community_spotlight: "Actualités de la communauté" - many_people_are_you_sure: "Êtes-vous sûr de vouloir commencer une conversation privée avec plus de %{suggested_limit} contacts? Envoyer des messages à cet aspect peut être un meilleur moyen de les contacter." + many_people_are_you_sure: "Voulez-vous vraiment commencer une conversation privée avec plus de %{suggested_limit} contacts ? Envoyer des messages à cet aspect peut être un meilleur moyen de les contacter." my_contacts: "Mes Contacts" no_contacts: "On dirait que vous avez besoin d'ajouter quelques contacts !" no_contacts_message: "Consultez %{community_spotlight}" @@ -278,11 +281,13 @@ fr: people_sharing: "Personnes partageant avec vous :" spotlight: community_spotlight: "Actualités de la communauté" + suggest_member: "Suggérer un membre" two: "%{count} contacts" zero: "contact" conversations: create: fail: "Message invalide" + no_contact: "Hé, vous avez besoin d'ajouter le contact d'abord !" sent: "Message envoyé" destroy: success: "La conversation a été supprimée." @@ -292,7 +297,6 @@ fr: many: "%{count} nouveaux messages" one: "1 nouveau message" other: "%{count} nouveaux messages" - two: "%{count} nouveaux messages" zero: "Aucun nouveau message" index: create_a_new_message: "créer un nouveau message" @@ -338,10 +342,12 @@ fr: create: already_contacts: "Vous avez déjà établi une connexion avec cette personne" already_sent: "Vous avez déjà invité cette personne." + empty: "Veuillez fournir au moins une adresse de courrier électronique." no_more: "Vous n’avez plus d’invitation." + note_already_sent: "Une invitation a déjà été envoyée aux e-mails %{emails}" own_address: "Vous ne pouvez pas envoyer une invitation à votre adresse." rejected: "Les adresses de courrier électronique suivantes ont rencontré des problèmes :" - sent: "Les invitations ont été envoyées à :" + sent: "Les invitations ont été envoyées à : %{emails}" edit: accept_your_invitation: "Accepter l'invitation" your_account_awaits: "Votre compte vous attend !" @@ -357,7 +363,7 @@ fr: if_they_accept_info: "s'ils acceptent, ils seront ajoutés à l'aspect dans lequel vous les avez invités." invite_someone_to_join: "Inviter quelqu'un à rejoindre Diaspora !" language: "Langue" - paste_link: "Partagez ce lien auprès de vos amis pour les inviter sur Diaspora*, ou bien envoyez-leur directement le lien par e-mail." + paste_link: "Partagez ce lien auprès de vos amis pour les inviter sur Diaspora*, ou bien envoyez-leur directement le lien par courriel." personal_message: "Message personnel" resend: "Envoyer à nouveau" send_an_invitation: "Envoyer une invitation" @@ -389,7 +395,6 @@ fr: many: "%{count} personnes n'aiment pas" one: "%{count} personne n'aime pas" other: "%{count} personnes n'aiment pas" - two: "%{count} n'aiment pas" zero: "Personne n'aime pas" people_like_this: one: "%{count} personne aime" @@ -422,7 +427,6 @@ fr: many: "%{count} nouvelles notifications" one: "1 nouvelle notification" other: "%{count} nouvelles notifications" - two: "%{count} nouvelles notifications" zero: "Aucune nouvelle notification" index: and: "et" @@ -431,7 +435,6 @@ fr: many: "et %{count} autres" one: "et un autre" other: "et %{count} autres" - two: "et %{count} autres" zero: "et personne d'autre" mark_all_as_read: "Tout marquer comme lu" mark_unread: "Marquer comme non lu" @@ -449,9 +452,9 @@ fr: other: "%{actors} vous a/ont mentionné(e) dans un %{post_link}." zero: "%{actors} vous ont mentionné(e) dans un %{post_link}." mentioned_deleted: - one: "%{actors} vous a/ont mentionné dans un message supprimé." - other: "%{actors} vous a/ont mentionné(e) dans un message supprimé." - zero: "%{actors} vous ont mentionné(e) dans un message supprimé." + one: "%{actors} vous a mentionné-e dans un message supprimé." + other: "%{actors} vous ont mentionné-e dans un message supprimé." + zero: "%{actors} vous ont mentionné-e dans un message supprimé." post: "message" private_message: one: "%{actors} vous a envoyé un message." @@ -484,7 +487,7 @@ fr: message: |- Bonjour ! - Vous avez été invité(e) à rejoindre Diaspora* ! + Vous avez été invité-e à rejoindre Diaspora* ! Pour commencer, cliquez sur ce lien : @@ -493,7 +496,9 @@ fr: Bien le bonjour chez vous, Le robot de courriel de Diaspora* - invited_you: "%{name} vous a invité(e) sur Diaspora*" + + [1] : %{invite_url} + invited_you: "%{name} vous a invité-e sur Diaspora*" liked: liked: "%{name} a épinglé votre message" view_post: "Voir le message >" @@ -521,7 +526,7 @@ fr: password_confirmation: "Confirmation du mot de passe" people: add_contact: - invited_by: "Vous avez été invité(e) par" + invited_by: "Vous avez été invité-e par" add_contact_small: add_contact_from_tag: "ajouter ce contact à partir de ce tag" aspect_list: @@ -624,8 +629,7 @@ fr: many: "%{count} photos par %{author}" one: "Une photo par %{author}" other: "%{count} photos par %{author}" - two: "Deux photos par %{author}" - zero: "Pas de photos par %{author}" + zero: "Pas de photo par %{author}" reshare_by: "Repartagé par %{author}" previous: "précédent" privacy: "Vie privée" @@ -638,8 +642,8 @@ fr: first_name: "Prénom" last_name: "Nom de famille" update_profile: "Mettre à jour le profil" - you_are_nsfw: "Vous vous êtes marqué comme non-sûr (NSFW), vos messages pourront ne pas apparaître chez les utilisateurs ayant demandé de ne pas afficher les contenus non-sûrs dans leur flux." - you_are_safe_for_work: "Vous vous êtes marqué comme sûr (SFW) ; cela signifie que vos messages devront suivre les règles de la communauté." + you_are_nsfw: "Vous vous êtes marqué-e comme « non sûr » (NSFW). Vos messages ne seront pas affichés pas chez les personnes qui ont demandé que les contenus non sûrs ne soient pas visibles dans leur flux." + you_are_safe_for_work: "Vous vous êtes marqué-e comme « sûr » (SFW) : cela signifie que vos messages devront suivre les règles de la communauté." your_bio: "Votre biographie" your_birthday: "Votre anniversaire" your_gender: "Votre sexe" @@ -659,7 +663,6 @@ fr: many: "%{count} réactions" one: "1 réaction" other: "%{count} réactions" - two: "%{count} réactions" zero: "0 réaction" registrations: closed: "Les inscriptions sont fermées sur ce pod Diaspora." @@ -677,7 +680,7 @@ fr: continue: "CONTINUER" create_my_account: "Créer mon compte !" diaspora: "<3 Diaspora*" - email: "EMAIL" + email: "COURRIEL" enter_email: "Saisissez une adresse de courrier électronique" enter_password: "Saisissez un mot de passe (d'au moins six caractères)" enter_password_again: "Saisissez à nouveau le même mot de passe" @@ -685,6 +688,7 @@ fr: hey_make: "HE !<br/>FAITES<br/>QUELQUE CHOSE." join_the_movement: "Rejoignez le mouvement !" password: "MOT DE PASSE" + password_confirmation: "CONFIRMATION DU MOT DE PASSE" sign_up: "INSCRIVEZ-VOUS" sign_up_message: "Le réseau social avec un ♥" username: "NOM D'UTILISATEUR" @@ -702,7 +706,6 @@ fr: many: "%{count} nouvelles requêtes !" one: "nouvelle requête !" other: "%{count} nouvelles requêtes !" - two: "%{count} nouvelles demandes !" zero: "aucune nouvelle requête" manage_aspect_contacts: existing: "Contacts existants" @@ -720,7 +723,6 @@ fr: many: "%{count} partages" one: "1 partage" other: "%{count} partages" - two: "%{count} partages" zero: "Repartager" reshare_confirmation: "Partager le message d'%{author} ?" reshare_original: "Partager l'original" @@ -776,7 +778,6 @@ fr: many: "Dans %{count} aspects" one: "Dans %{count} aspect" other: "Dans %{count} aspects" - two: "Dans %{count} aspects" zero: "Ajouter le contact" contact_list: all_contacts: "Tous les contacts" @@ -792,7 +793,7 @@ fr: invite_your_friends: "Invitez vos amis" invites: "Invitations" invites_closed: "Les invitations sont actuellement fermées sur ce pod Diaspora" - share_this: "Partagez ce lien par e-mail, blog ou via votre réseau social favori !" + share_this: "Partagez ce lien par courriel, sur un blog ou via votre réseau social favori !" notification: new: "Nouveau/nouvelle %{type} de %{from}" public_explain: @@ -853,7 +854,6 @@ fr: many: "merci de bien vouloir écrire des messages de moins de %{count} caractères" one: "merci de bien vouloir écrire des messages de moins de %{count} caractère" other: "merci de bien vouloir écrire des messages de moins de %{count} caractères" - two: "votre statut doit faire moins de %{count} caractères" zero: "merci de bien vouloir écrire des messages de moins de %{count} caractère" stream_helper: hide_comments: "Masquer tous les commentaires" @@ -965,7 +965,7 @@ fr: following: "Paramètres de suivi" getting_started: "Préférences de nouvel utilisateur" liked: "... quelqu'un a épinglé votre message ?" - mentioned: "…vous êtes mentionné(e) dans une publication ?" + mentioned: "…vous êtes mentionné-e dans une publication ?" new_password: "Nouveau mot de passe" photo_export_unavailable: "L'exportation des photos est actuellement indisponible" private_message: "…vous recevez un message privé ?" @@ -980,6 +980,8 @@ fr: getting_started: awesome_take_me_to_diaspora: "Impressionnant ! Offrez-moi Diaspora*" community_welcome: "La communauté Diaspora* est heureuse de vous avoir à bord !" + connect_to_facebook: "Nous pouvons accélerer un peu les choses en %{link} à Diaspora. Cela va importer votre nom et votre photo et activer l'écriture de messages entre les comptes." + connect_to_facebook_link: "connectant votre compte Facebook" hashtag_explanation: "Les tags vous permettent de parler de vos intérêts et de les suivre. Ils sont aussi un excellent moyen de rencontrer de nouvelles personnes sur Diaspora." hashtag_suggestions: "Essayez de suivre des tags comme #art, #films, #french, etc." saved: "Sauvé !" diff --git a/config/locales/diaspora/he.yml b/config/locales/diaspora/he.yml index f23a855e2..d174cf6c7 100644 --- a/config/locales/diaspora/he.yml +++ b/config/locales/diaspora/he.yml @@ -30,7 +30,7 @@ he: reshare: attributes: root_guid: - taken: "כבר שיתפת רשומה זו" + taken: "כבר ביצעת שיתוף-מחדש של הודעה זו בעבר!" user: attributes: email: @@ -44,9 +44,48 @@ he: admin_bar: correlations: "התאמות" pages: "עמודים" - pod_stats: "מצב פוד" + pod_stats: "סטטיסטיקה של הפוד" user_search: "חיפוש משתמש" - weekly_user_stats: "נתוני משתמש שבועיים" + weekly_user_stats: "סטטיסטיקת חברים שבועית" + stats: + 2weeks: "שבועיים" + 50_most: "50 התגים הפופולאריים ביותר" + comments: + one: "תגובה %{count}" + other: "%{count} תגובות" + zero: "%{count} תגובות" + daily: "יומי" + go: "הפעל" + month: "חודש" + posts: + one: "הודעה %{count}" + other: "%{count} הודעות" + zero: "%{count} הודעות" + shares: + one: "שיתוף %{count}" + other: "%{count} שיתופים" + zero: "%{count} שיתופים" + tag_name: "שם התג: <b>%{name_tag}</b> פעמים: <b>%{count_tag}</b>" + usage_statistic: "סטטיסטיקת שימוש" + users: + one: "משתמש %{count}" + other: "%{count} משתמשים" + zero: "%{count} משתמשים" + week: "שבוע" + user_search: + add_invites: "הוסף הזמנות" + email_to: "שלח אימייל על מנת להזמין" + users: + one: "נמצא משתמש %{count}" + other: "נמצאו %{count} משתמשים" + zero: "נמצאו %{count} משתמשים" + you_currently: "נכון לעכשיו נשארו לך %{user_invitation} הזמנות %{link}" + weekly_user_stats: + amount_of: + one: "מספר משתמשים חדשים השבוע: %{count}" + other: "מספר משתמשים חדשים השבוע: %{count}" + zero: "מספר משתמשים חדשים השבוע: אפס" + current_server: "השעה עכשיו בצד השרת היא %{date}" ago: "%{time} לפני" all_aspects: "כל ההיבטים" application: @@ -76,7 +115,7 @@ he: aspect_stream: stay_updated: "הישאר מעודכן" stay_updated_explanation: |- - החדשות המרכזיות שלך כוללות את כל אנשי הקשר שלך, התגיות שלך ורשומות מחברים + החדשות המרכזיות שלך כוללות את כל אנשי הקשר שלך, התגיות שלך והודעות מחברים יצירתיים בקהילה contacts_not_visible: "אנשי הקשר בתחום העניין הזה לא יוכלו לראות אחד את השני" contacts_visible: "אנשי קשר בתחום עניין זה יוכלו לראות זה את זה" @@ -114,8 +153,11 @@ he: donate: "תרומה" handle_explanation: "זהו שם המשתמש שלך בדיאספורה. בדיוק כמו כתובת דואר אלקטרוני, ניתן לחלוק אותו עם אנשים כדי שיגיעו אליך" help: + any_problem: "האם ישנה בעיה כלשהיא?" + contact_podmin: "צור קשר עם מנהל הפוד שלך!" do_you: !ruby/symbol "האם אתה" email_feedback: "התגובה שלך,אם אתה מעוניין %{link} " + email_link: "אימייל" feature_suggestion: "?רעיונות %{link} יש לך" find_a_bug: "? %{link} חפש " have_a_question: "? %{link}יש לך " @@ -126,6 +168,7 @@ he: tag_question: "שאלה" tutorials_wiki_and_forum: "הדרכה על ידי הקהילה, איך לעשות דברים וחדשות: %{tutorial} & %{wiki} & %{forum}" introduce_yourself: "אלו החדשות שלך, היכנס והצג את עצמך" + keep_diaspora_running: "עזור לשמור על קצב פתוח מהיר על ידי מתן תרומה חודשית" new_here: follow: "Diaspora*! וקבל בברכה משתמשים חדשים ל %{link} עקוב אחרי" learn_more: "למד יותר" @@ -179,6 +222,9 @@ he: index: no_applications: "לא נרשמת לאף אפליקציה עדיין" revoke_access: "שלילת הגישה" + new: + authorize: "הענק הרשאה" + nope: "לא" back: "חזרה" blocks: create: @@ -216,8 +262,8 @@ he: many_people_are_you_sure: "האם אכן ברצונך לפתוח בשיחה פרטית עם למעלה מ־%{suggested_limit} אנשי קשר? פרסום להיבט זה הוא רעיון מוצלח יותר ליצירת קשר אתם." my_contacts: "אנשי הקשר שלי" no_contacts: "נראה כאילו עליך להוסיף עוד קצת אנשי קשר!" - no_contacts_message: "תבדוק %{community_spotlight}" - no_contacts_message_with_aspect: "תבדוק %{community_spotlight} או %{add_to_aspect_link}" + no_contacts_message: "בדוק ב-%{community_spotlight}" + no_contacts_message_with_aspect: "בדוק ב-%{community_spotlight} או ב-%{add_to_aspect_link}" only_sharing_with_me: "רק אלו המשתפים אתי" remove_person_from_aspect: "הסרת %{person_name} מההיבט \"%{aspect_name}\"" start_a_conversation: "התחלת דיון" @@ -230,11 +276,13 @@ he: people_sharing: "אנשים המשתפים אותך:" spotlight: community_spotlight: "דברים חשובים בקהילה" + suggest_member: "הצע חבר" two: "%{count} אנשי קשר" zero: "אנשי קשר" conversations: create: fail: "הודעה שגויה" + no_contact: "הי, יש להוסיף את איש/אשת הקשר קודם!" sent: "ההודעה נשלחה" destroy: success: "הדיון הוסר בהצלחה" @@ -244,7 +292,6 @@ he: many: "%{count} הודעות חדשות" one: "הודעה חדשה אחת" other: "%{count} הודעות חדשות" - two: "%{count} מסרים חדשים" zero: "אין הודעות חדשות" index: create_a_new_message: "כתיבת הודעה חדשה" @@ -276,6 +323,8 @@ he: helper: correct_the_following_errors_and_try_again: "יש לתקן את השגיאות הבאות ולנסות שוב" invalid_fields: "שדות שגויים" + login_try_again: "אנא <a href='%{login_link}'>היכנס</a> ונסה שוב." + post_not_public: "ההודעה אינה פומבית!" fill_me_out: "נא לרשום אותי" find_people: "חיפוש אנשים או #תגיות" hide: "הסתרה" @@ -288,21 +337,24 @@ he: create: already_contacts: "כבר יש לך קשר עם אדם זה" already_sent: "כבר הזמנת אדם זה" + empty: "נא להזין לפחות כתובת אימייל אחת." no_more: "אין לך עוד הזמנות" + note_already_sent: "הזמנות נשלחו כבר ל: %{emails}" own_address: "אין לך אפשרות לשלוח הזמנות לכתובת העצמית שלך." rejected: "בכתובת הדוא״ל הבאה התגלו שגיאות" - sent: "נשלחו הזמנות אל" + sent: "נשלחו הזמנות אל: %{emails}" edit: accept_your_invitation: "קבלת ההזמנה שלך" your_account_awaits: "החשבון שלך ממתין!" new: already_invited: "האנשים הבאים לא נענו להזמנה שלך" aspect: "תחום עניין" - check_out_diaspora: "בוא הצטרף לדיאספורה! " + check_out_diaspora: "נסה את דיאספורה!" codes_left: one: "%{count} השאיר הזמנה לקוד זה" other: "%{count} השאירו הזמנה לקוד זה " zero: "אף אחד לא השאיר הזמנה לקוד זה " + comma_separated_plz: "ניתן להזין מספר כתובות אימייל כאשר פסיק מפריד ביניהן." if_they_accept_info: "אם הם יאשרו, הם יתווספו לתחום העניין שאליו הזמנת אותם" invite_someone_to_join: " הזמן מישהו להשתמש בדיאספורה" language: "שפה" @@ -314,9 +366,10 @@ he: to: "אל" layouts: application: - back_to_top: "חזור למעלה" + back_to_top: "חזרה למעלה" powered_by: "DIASPORA* מופעל על ידי " public_feed: " %{name} הזנת דיאספורה ציבורית עבור " + source_package: "הורד את חבילת קוד המקור" toggle: "הפעלה/נטרול האתר לניידים" whats_new: "מה חדש" your_aspects: "תחומי העניין שלך" @@ -337,21 +390,16 @@ he: many: "%{count} אנשים לא אהבו את זה" one: "אדם אחד לא אהב את זה" other: "%{count} אנשים לא אוהבים את זה" - two: "%{count} לא מתעניין" zero: "אין אנשים שלא אהבו את זה" people_like_this: - few: "%{count} אנשים אהבו את זה" - many: "%{count} אנשים אהבו את זה" - one: "אדם אחד אהב את זה" + one: "אדם %{count} אהב את זה" other: "%{count} אנשים אהבו את זה" - two: "%{count} מתעניין" zero: "אף אחד לא אהב את זה" people_like_this_comment: few: "%{count} אהבו זאת" many: "%{count} אהבו זאת" one: "%{count} אהב/ה" other: "%{count} אהבו" - two: "%{count} מתעניין" zero: "אף אחד לא אהב" limited: "מוגבל" more: "המשך" @@ -363,21 +411,16 @@ he: many: "%{actors} גם כן הגיבו על ה%{post_link} של %{post_author}." one: "%{actors} %{actors} גם כן הגיב/ה על ה%{post_link} של %{post_author}." other: "%{actors} גם כן הגיב/ה על ה%{post_link} של %{post_author}." - two: "%{post_link} %{post_author}'s גם הגיבו על %{actors} " zero: "%{actors} גם כן הגיבו על ה%{post_link} של %{post_author}." also_commented_deleted: - few: "%{actors} הגיבו על הרשומה שמחקת." - many: "%{actors} הגיבו על הרשומה שמחקת." - one: "%{actors} הגיב/ה על הרשומה שמחקת." - other: "%{actors} הגיב/ה על הרשומה שמחקת." - two: "הגיב על רשומה שמחקת %{actors} " - zero: "%{actors} הגיבו על הרשומה שמחקת." + one: "%{actors} הגיב/ה על הודעה שמחקת." + other: "%{actors} הגיב/ה על הודעה שמחקת." + zero: "%{actors} הגיבו על הודעה שמחקת." comment_on_post: few: "%{actors} הגיבו על ה%{post_link} שלך." many: "%{actors} הגיבו על ה%{post_link} שלך." one: "%{actors} הגיב/ה על ה%{post_link} שלך." other: "%{actors} הגיב/ה על ה%{post_link} שלך." - two: " %{post_link} הגיב על ה %{actors} " zero: "%{actors} הגיבו על ה־%{post_link} שלך." helper: new_notifications: @@ -385,7 +428,6 @@ he: many: "%{count} התרעות חדשות" one: "התרעה חדשה אחת" other: "%{count} התרעות חדשות" - two: "%{count} התראות חדשות" zero: "אין התרעות חדשות" index: and: "וגם " @@ -394,7 +436,6 @@ he: many: "ו־%{count} נוספים" one: "ואחד/ת נוסף/ת" other: "ו־%{count} נוספים" - two: "אחרים %{count} ו" zero: "ואף אחד אחר" mark_all_as_read: "סימון הכול כלאחר קריאה" mark_unread: "סמן כלא נקרא" @@ -404,64 +445,50 @@ he: many: " %{post_link}התעניין ב%{actors}" one: "%{post_link}התעניין ב %{actors} " other: "%{post_link}התעניין ב %{actors}" - two: " %{post_link}התעניין ב %{actors}" zero: " %{post_link} התעניין ב %{actors}" liked_post_deleted: - few: "%{actors} אהבו את הרשומה שמחקת." - many: "%{actors} אהבו את הרשומה שמחקת." - one: "%{actors} אהב/ה את הרשומה שמחקת." - other: "%{actors} אהב/ה את הרשומה שמחקת." - two: "אהב את הרשומה שמחקת %{actors}" - zero: "%{actors} אהבו את הרשומה שמחקת." + one: "%{actors} אהב/ה את ההודעה שמחקת." + other: "%{actors} אהב/ה את ההודעה שמחקת." + zero: "%{actors} אהבו את ההודעה שמחקת." mentioned: few: " %{post_link}הזכירו אותך ב %{actors}" many: " %{post_link}הזכירו אותך ב %{actors}" one: "%{actors} ציין/ה אותך ב%{post_link}." other: "%{post_link}הזכיר אותך ב%{actors} " - two: " %{post_link}הזכיר אותך ב %{actors} " zero: " %{post_link}הזכיר אותך ב%{actors}" mentioned_deleted: - few: "%{actors} ציינו אותך ברשומה שנמחקה." - many: "%{actors} ציינו אותך ברשומה שנמחקה." - one: "%{actors} ציין/ה אותך ברשומה שנמחקה." - other: "%{actors} ציין/ה אותך ברשומה שנמחקה." - two: "%{actors} הזכירו אותך ברשומות שנמחקו" - zero: "%{actors} ציינו אותך ברשומה שנמחקה." - post: "רשומה" + one: "%{actors} ציין/ה אותך בהודעה שנמחקה." + other: "%{actors} ציין/ה אותך בהודעה שנמחקה." + zero: "%{actors} ציינו אותך בהודעה שנמחקה." + post: "הודעה" private_message: few: "%{actors} שלחו לך הודעה." many: "%{actors} שלחו לך הודעה." one: "%{actors} שלח/ה לך הודעה." other: "%{actors} שלח/ה לך הודעה." - two: ".%{actors} שלחו לך מסר" zero: "%{actors} שלחו לך הודעה." reshared: few: "שלך %{post_link}שיתפו את ה %{actors}" many: "שלך %{post_link} שיתף מחדש את ה %{actors} " one: " .%{post_link} שיתף מחדש את ה %{actors}" other: " שלך %{post_link}שיתף מחדש את ה %{actors}" - two: "%{post_link}שיתף את ה %{actors} " zero: "%{post_link}שיתפו את ה %{actors} " reshared_post_deleted: - few: "שיתף מחדש את הרשומה שמחקת %{actors} " - many: "שיתף מחדש את הרשומה שמחקת %{actors} " - one: "שיתף מחדש את הרשומה שמחקת %{actors} " - other: "שיתף מחדש את הרשומה שמחקת %{actors} " - two: "%{actors} שיתף מחדש את הרשומות שמחקת" - zero: "שיתף מחדש את הרשומה שמחקת %{actors} " + one: "משתמש %{actors} שיתף מחדש את ההודעה שמחקת " + other: "%{actors} משתמשים שיתפו מחדש את ההודעה שמחקת " + zero: "%{actors} משתמשים שיתפו מחדש את ההודעה שמחקת " started_sharing: few: "%{actors} החלו לשתף אתך." many: "%{actors} החלו לשתף אתך." one: "%{actors} החל/ה לשתף אתך." other: "%{actors} החל/ה לשתף אתך." - two: "התחיל לשתף אותך %{actors} " zero: "%{actors} החלו לשתף אתך." notifier: - a_post_you_shared: "רשומה." + a_post_you_shared: "הודעה." accept_invite: "קבל את ההזמנה לדיאספורה! " click_here: "יש ללחוץ כאן" comment_on_post: - reply: "שליחת תגובה או צפייה ברשומה של %{name} >" + reply: "שליחת תגובה או צפייה בהודעה של %{name} >" confirm_email: click_link: "כדי להפעיל את כתובת הדוא״ל החדשה שלך: %{unconfirmed_email}, יש לעקוב אחר הקישור הבא:" subject: "נא להפעיל את כתובת הדוא״ל החדשה שלך: %{unconfirmed_email}" @@ -476,16 +503,16 @@ he: צוות Diaspora invited_you: "%{name} הזמין אותך ל Diaspora" liked: - liked: "התעניין ברשומה שלך %{name} " - view_post: "צפייה ברשומה >" + liked: "התעניין בהודעה שלך %{name}" + view_post: "צפייה בהודעה >" mentioned: - mentioned: "ציין/ה אותך ברשומה" + mentioned: "ציין/ה אותך בהודעה" subject: "Diaspora* הוזכרת על ידי %{name} " private_message: reply_to_or_view: "שליחת תגובה או צפייה בדיון זה >" reshared: - reshared: "כרגע שיתף את הרשומה שלך %{name} " - view_post: " >ראה רשומה " + reshared: "כרגע שיתף את ההודעה שלך %{name}" + view_post: "צפה בהודעה >" single_admin: admin: "מנהל הדיאספורה שלך" subject: "הודעה בנוגע לחשבונך בדיאספורה" @@ -513,12 +540,12 @@ he: results_for: " %{params} תוצאות עבור" index: couldnt_find_them_send_invite: "לא נמצאים? אפשר להזמין אותם" - looking_for: "? %{tag_link} מחפש רשומות שתויגו" + looking_for: "? %{tag_link} מחפש הודעות שתויגו" no_one_found: "...ולא נמצא אף אחד" no_results: "הי! לא חיפשת שום דבר" results_for: "תוצאות חיפוש עבור" searching: "מחפש, המתן בבקשה בסבלנות..." - last_post: "הרשומה האחרונה " + last_post: "ההודעה האחרונה" many: "%{count} אנשים" one: "אדם אחד" other: "%{count} אנשים" @@ -539,14 +566,14 @@ he: show: closed_account: "חשבונך נסגר" does_not_exist: "אדם זה אינו קיים" - has_not_shared_with_you_yet: "%{name} עדיין לא שיתף אתך רשומות כלל!" - ignoring: " %{name}אתה מתעלם מכל הרשומות מ " + has_not_shared_with_you_yet: "%{name} טרם שיתף אתך הודעה כלשהיא!" + ignoring: "אתה מתעלם מכל הההודעות מ%{name}" incoming_request: "רוצה לשתף אתך%{name}" mention: "אזכור" message: "הודעה" not_connected: "אין לך שיתוף עם אדם זה" - recent_posts: "רשומות אחרונות" - recent_public_posts: "הרשומות הציבוריות האחרונות" + recent_posts: "הודעות שפורסמו לאחרונה" + recent_public_posts: "ההודעות הציבוריות שפורסמו לאחרונה" return_to_aspects: "באפשרותך לחזור לעמוד תחומי העניין שלך" see_all: "צפייה בהכול" start_sharing: "התחלת השיתוף" @@ -588,26 +615,25 @@ he: edit: "עריכה" edit_delete_photo: "עריכת תיאור תמונה / מחיקת תמונה" make_profile_photo: "יצירת תמונת פרופיל" - show_original_post: "הצגת הרשומה המקורית" + show_original_post: "הצגת ההודעה המקורית" update_photo: "עדכון התמונה" update: error: "אירע כשל בעריכת התמונה" notice: "התמונה עודכנה בהצלחה" posts: presenter: - title: "רשומה מ %{name}" + title: "הודעה מ %{name}" show: destroy: "מחיקה" - not_found: "לא ניתן למצוא רשומה זו, עמך הסליחה." + not_found: "לא ניתן למצוא הודעה זו, עמך הסליחה." permalink: "קישור קבוע" photos_by: few: "%{count} photos by %{author}" many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" - reshare_by: "שתף שוב על ידי %{author}" + reshare_by: "שותף שוב על ידי %{author}" previous: "הקודמת" privacy: "פרטיות" privacy_policy: "מדיניות פרטיות" @@ -640,7 +666,6 @@ he: many: "תגובות %{count} " one: "תגובה 1 " other: "תגובות %{count} " - two: "תגובות %{count} " zero: "תגובות 0" registrations: closed: "אפשרות ההרשמה סגורה בפוד זה של דיאספורה" @@ -655,13 +680,19 @@ he: update: "עדכון" invalid_invite: "הקישור להזמנה שסיפקת אינו תקף יותר! " new: + continue: "המשך" create_my_account: "יצירת החשבון שלי" + email: "אימייל" enter_email: "נא להזין כתובת דוא״ל" enter_password: "נא להזין ססמה" enter_password_again: "להזין את אותה הססמה כמקודם" enter_username: "נא לבחור שם משתמש - אותיות, מספרים וקווים תחתונים בלבד" join_the_movement: "הצטרפות לתנועה!" + password: "סיסמה" + password_confirmation: "אימות סיסמה" + sign_up: "הרשם" sign_up_message: "♥ רשת חברתית עם" + username: "שם-משתמש" requests: create: sending: "בשליחה" @@ -678,7 +709,6 @@ he: many: "%{count} בקשות חדשות!" one: "בקשה חדשה!" other: "%{count} בקשות חדשות!" - two: "%{count} בקשות חדשות" zero: "אין בקשות חדשות" manage_aspect_contacts: existing: "אנשי הקשר הקיימים" @@ -686,19 +716,18 @@ he: new_request_to_person: sent: "נשלחה" reshares: - comment_email_subject: "שיתוף מחדש על ידי %{resharer} לרשומה של %{author}" + comment_email_subject: "שיתוף מחדש על ידי %{resharer} להודעה של %{author}" create: - failure: "פרסום מחדש של רשומה זאת הוביל לשגיאה." + failure: "ארעה שגיאה בנסיון לשתף מחדש הודעה זו." reshare: - deleted: "הרשומה המקורית נמחקה על ידי הכותב." + deleted: "ההודעה המקורית נמחקה על ידי הכותב." reshare: few: "%{count} שיתופים" many: "%{count} שיתופים" one: "שיתוף אחד" other: "%{count} שיתופים" - two: "%{count} שתף מחדש" zero: "שיתוף מחדש" - reshare_confirmation: "האם לשתף את הרשומה של %{author}?" + reshare_confirmation: "האם לשתף את ההודעה של %{author}?" reshare_original: "שיתוף המקור מחדש" reshared_via: "שיתף מחדש דרך" show_original: "הצגת המקור" @@ -735,8 +764,8 @@ he: settings: "הגדרות" share_visibilites: update: - post_hidden_and_muted: "רשומה הוסתרה, וההתראות הושתקו %{name}'s " - see_it_on_their_profile: "דף הפרופיל האישי %{name}'s אם אתה רוצה לראות עדכונים על הרשומה הזאת, בקר ב" + post_hidden_and_muted: "ההודעה של %{name} הוסתרה, וההתראות הושתקו." + see_it_on_their_profile: "אם אינך מעונין לראות עדכונים על ההודעה הזו בקר בדף הפרופיל של %{name}" shared: add_contact: add_new_contact: "הוספת איש קשר חדש" @@ -752,7 +781,6 @@ he: many: "ב־%{count} היבטים" one: "באחד מההיבטים" other: "ב־%{count} היבטים" - two: "תחומי עניין %{count} ב" zero: "הוספת איש הקשר" contact_list: all_contacts: "כל אנשי הקשר" @@ -768,6 +796,7 @@ he: invite_your_friends: "הזמנת החברים שלך" invites: "הזמנות" invites_closed: "נכון לעכשיו ההזמנות לפוד זה של דיאספורה סגורות" + share_this: "שתף את הקישור הזה דרך מייל, בלוג או רשת חברתית מועדפת!" notification: new: "%{from} חדש מאת %{type}" public_explain: @@ -776,18 +805,16 @@ he: logged_in: "%{service}נכנסת אל " manage: "ניהול השירותים המקושרים" new_user_welcome_message: |- - כדי לתייג את הרשומות ולמצוא אנשים בעלי תחומי עניין משותפים #hashtags השתמש ב + כדי לתייג את ההודעות ולמצוא אנשים בעלי תחומי עניין משותפים #hashtags השתמש ב @Mentions הזמן חברים מיוחדים עם outside: "ההודעות הציבוריות יהיו זמינות לצפייה חיצונית גם מחוץ לרשת דיאספורה" share: "שתף" title: "הגדרת שירותים מקושרים" - visibility_dropdown: |- - השתמש בגרירה למטה כדי לשנות את המראה של הרשומה (אנחנו מציעים לך שהרשומה הראשונה - .(שלך תהיה ציבורית + visibility_dropdown: "השתמש בגרירה למטה כדי לשנות את המראה של ההודעה (אנחנו מציעים לך שההודעה הראשונה שלך תהיה ציבורית)." publisher: all: "הכול" all_contacts: "כל אנשי הקשר" - discard_post: "התעלמות מרשומה" + discard_post: "התעלמות מהודעה" make_public: "הפיכה לציבורי" new_user_prefill: hello: " .#%{new_user_tag}היי חבר'ה, אני " @@ -804,24 +831,25 @@ he: reshare: reshare: "שיתוף מחדש" stream_element: - connect_to_comment: "התחבר למשתמש הזה על מנת להגיב על הרשומה שלהם" + connect_to_comment: "התחבר למשתמש הזה על מנת להגיב על הודעתו" currently_unavailable: "תגובה כרגע אינה אפשרית" dislike: "לא אהבתי את זה" hide_and_mute: "הסתר והשתק" ignore_user: " %{name} התעלם" ignore_user_description: "?התעלם והסר את המשתמש מכל תחומי העניין" like: "אהבתי" - nsfw: "%{link}על ידי הכותב NSFW הרשומה הזאת סומנה כ" + nsfw: "%{link}על ידי הכותב NSFW ההודעה הזאת סומנה כ" shared_with: "משותף עם: %{aspect_names}" show: "הצג" unlike: "לא אהבתי" via: "באמצעות %{link}" - viewable_to_anyone: "רשומה זו ניתנת לצפייה לכל גולשי הרשת" + via_mobile: "דרך הנייד" + viewable_to_anyone: "הודעה זו ניתנת לצפייה לכל גולשי הרשת" status_messages: create: success: "אוזכרו בהצלחה: %{names}" destroy: - failure: "אירע כשל במחיקת הרשומה" + failure: "אירע כשל במחיקת ההודעה" helper: no_message_to_display: "אין הודעה להצגה" new: @@ -831,7 +859,6 @@ he: many: "נא לוודא שהודעת המצב שלך אינה עולה על %{count} תווים" one: "נא לוודא שהודעת המצב שלך אינה עולה על תו אחד" other: "נא לוודא שהודעות המצב שלך אינן עולות על %{count} תווים" - two: "אותיות %{count} בבקשה וודא כי מסרי הסטאטוס שלך הנם פחות מ" zero: "נא לוודא שהודעות המצב שלך אינן עולות על %{count} תווים" stream_helper: hide_comments: "הסתרת כל ההערות" @@ -840,7 +867,6 @@ he: many: "יותר תגובות %{count} הצג" one: "הצג תגובה אחת נוספת" other: "יותר תגובות %{count} הצג" - two: "הצג שתי תגובות נוספות" zero: "אין יותר תגובות" streams: activity: @@ -849,8 +875,8 @@ he: title: "תחומי העניין שלך" aspects_stream: "תחומי עניין" comment_stream: - contacts_title: "אנשים שהגבת על הרשומה שלהם" - title: "רשומות עם תגובות" + contacts_title: "אנשים שעל הודעותיהם היגבת" + title: "הודעות עם תגובות" community_spotlight_stream: "דברים חשובים בקהילה" followed_tag: add_a_tag: "הוסף תגית" @@ -859,7 +885,7 @@ he: title: "#תגיות במעקב" followed_tags_stream: "#תגיות במעקב" like_stream: - contacts_title: "אנשים שאהבת את הרשומות שלהם" + contacts_title: "אנשים שאהבת את ההודעות שלהם" title: "החדשות שלך" mentioned_stream: "@אזכורים" mentions: @@ -869,12 +895,12 @@ he: contacts_title: "אנשים בחדשות שלך" title: "חדשות" public: - contacts_title: "מודעות חדשות" + contacts_title: "פרסמו לאחרונה" title: "פעילות ציבורית" tags: contacts_title: "אנשים ששותפים לתגית הזו" tag_prefill_text: " %{tag_name} העניין בקשר ל" - title: " %{tags} רשומות שתויגו" + title: "%{tags} הודעות שתויגו" tag_followings: create: failure: "?האם אתה כבר עוקב אחרי זה #%{name}נכשל במעקב אחרי" @@ -919,8 +945,8 @@ he: תודה על שניסית את דיאספורה wrong_password: "הסיסמה שהוכנסה לא תואמת" edit: - also_commented: "...מישהו הגיב גם על הרשומה של איש הקשר שלך?" - auto_follow_aspect: "תחומי עניין עבור משתמשים שעוקבים באופן אוטומטי " + also_commented: "...מישהו הגיב גם על הודעה של איש קשר שלך?" + auto_follow_aspect: "תחומי עניין עבור משתמשים שעוקבים אחריהם באופן אוטומטי" auto_follow_back: "Automatically follow back if a someone follows you" change: "שינוי" change_email: "החלפת כתובת הדוא״ל" @@ -938,10 +964,10 @@ he: mr_wiggles: "נהיה עצובים לראות אותך עוזב" no_turning_back: "כרגע, אין דרך חזרה" what_we_delete: |- - אנחנו נמחק את כל הרשומות שלך, את הפרופיל האישי שלך, בהקדם האפשרי - התגובות שלך יישארו בדיאספורה + אנחנו נמחק את כל ההודעות שפרסמת, את הפרופיל האישי שלך, בהקדם האפשרי. + התגובות שלך יישארו בדיאספורה וישויכו ל- DiasporaID שלך. close_account_text: "סגור חשבון" - comment_on_post: "...מישהו הגיב על הרשומה שלך?" + comment_on_post: "...מישהו הגיב על הההודעה שלך?" current_password: "הססמה הנוכחית" current_password_expl: "עבור מה שהנך נרשם עמו..." download_photos: "הורדת התמונות שלי" @@ -949,15 +975,15 @@ he: edit_account: "עריכת החשבון" email_awaiting_confirmation: "שלחנו אליך קישור הפעלה לכתובת %{unconfirmed_email}.עד שתעקוב אחר קישור זה ותפעיל את הכתובת החדשה, אנו נמשיך להשתמש בכתובת המקורית שלך: %{email}." export_data: "יצוא הנתונים" - following: "מעקב אחר ההגדרות " + following: "הגדרות מעקב" getting_started: "העדפות חדשות של המשתמש" - liked: "...מישהו אהב את הרשומה שלך?" - mentioned: "...מישהו ציין אותך ברשומה?" + liked: "...מישהו אהב הודעה שלך?" + mentioned: "...מישהו ציין אותך בהודעה שלו?" new_password: "ססמה חדשה" photo_export_unavailable: "ייצוא תמונות כרגע לא אפשרי" private_message: "...קיבלת הודעה פרטית?" receive_email_notifications: "לקבל התרעות בדוא״ל כאשר" - reshared: "?...מישהו משתף מחדש את הרשומה שלך" + reshared: "...מישהו משתף מחדש הודעה שלך?" show_community_spotlight: "?להציג את הדברים המרכזיים בקהילה בחדשות שלך" show_getting_started: "מאפשר מחדש להתחיל" started_sharing: "...מישהו התחיל לשתף אתך?" @@ -981,8 +1007,8 @@ he: does_not_exist: " אינו קיים %{username} המשתמש" update: email_notifications_changed: "ההתרעות בדוא״ל השתנו" - follow_settings_changed: "מעקב אחר שינויים בהגדרות " - follow_settings_not_changed: "המעקב אחר שינויים בהגדרות נכשל." + follow_settings_changed: "הגדרות מעקב שונו" + follow_settings_not_changed: "שינוי הגדרות המעקב נכשל." language_changed: "השפה הוחלפה" language_not_changed: "החלפת השפה נכשלה" password_changed: "הססמה הוחלפה. כעת באפשרותך להיכנס עם הססמה החדשה שלך" diff --git a/config/locales/diaspora/hu.yml b/config/locales/diaspora/hu.yml index 1dc42df19..28596b1da 100644 --- a/config/locales/diaspora/hu.yml +++ b/config/locales/diaspora/hu.yml @@ -151,6 +151,8 @@ hu: donate: "Adományozás" handle_explanation: "Ez a Te Diaspora azonosítód. Megadhatod elérhetőségként, mint egy email címet." help: + any_problem: "Gondod támadt?" + contact_podmin: "Vedd fel a kapcsolatot a kiszolgálód karbantartójával!" do_you: "Mit szeretnél?" email_feedback: "Küldd el %{link}-ben a visszajelzésed" email_link: "E-mail" @@ -158,6 +160,7 @@ hu: find_a_bug: "...feltűnt egy %{link}?" have_a_question: "...eszedbe jutott egy %{link}?" here_to_help: "A Diaspora közösség megérkezett!" + mail_podmin: "Karbantartó címe" need_help: "Segítségre van szükséged?" tag_bug: "hiba" tag_feature: "javaslat" @@ -230,7 +233,7 @@ hu: failure: "Nem tudtam kikapcsolni annak a felhasználónak a figyelmen kívül hagyását. #elkerülés" success: "Lássuk mit akarnak mondani! #sayhello" bookmarklet: - explanation: "Küldj bejegyzést a Diaspora-ra bárhonnan, csak mentsd el könyvjelzőként ezt a linket => %{link}." + explanation: "Küldj bejegyzést a Diaspora-ra bárhonnan, csak mentsd el könyvjelzőként a következő hivatkozást => %{link}." heading: "Könyvjelző" post_something: "Üzenj a Diasporára" post_success: "Elküldve! Bezárás!" @@ -272,11 +275,13 @@ hu: people_sharing: "Ismerőseid:" spotlight: community_spotlight: "A figyelem középpontjában" + suggest_member: "Javasolj egy tagot" two: "%{count} ismerős" zero: "nincs ismerős" conversations: create: fail: "Érvénytelen üzenet" + no_contact: "Hé, először kapcsolatot kell hozzáadnod!" sent: "Üzenet elküldve" destroy: success: "Üzenetváltás sikeresen eltávolítva" @@ -286,7 +291,6 @@ hu: many: "%{count} új üzenet" one: "1 új üzenet" other: "%{count} új üzenet" - two: "%{count} új üzenet" zero: "nincs új üzenet" index: create_a_new_message: "új üzenet írása" @@ -328,11 +332,13 @@ hu: invitations: a_facebook_user: "Egy Facebook felhazsnáló" check_token: - not_found: "Meghívó token nem található" + not_found: "Meghívó azonosító nem található" create: already_contacts: "Már ismerősöd ez a személy" already_sent: "Már meghívtad ezt a személyt." + empty: "Kérlek adj meg legalább egy e-mail címet." no_more: "Nincs több felkérésed." + note_already_sent: "A meghívókat már kiküldtük a következő cím(ek)re: %{emails}" own_address: "Nem küldhetsz meghívót a saját címedre." rejected: "Az alábbi e-mail címmel voltak problémák:" sent: "Meghívók elküldve ide: %{emails}" @@ -350,7 +356,7 @@ hu: if_they_accept_info: "Ha elfogadják felkérésed, akkor belekerülnek abba a csoportba amelyikbe meghívtad őket." invite_someone_to_join: "Hívj meg valakit, hogy csatlakozzon a Diaspora-hoz!" language: "Nyelv" - paste_link: "Ha meg szeretnéd hívni a barátaidat a Diaspora-ra, oszd meg ezt a linket velük, vagy küldd el nekik emailben." + paste_link: "Ha szeretnéd meghívni a barátaidat a Diaspora-ra, oszd meg velük ezt a hivatkozást vagy küldd el nekik közvetlenül levélben." personal_message: "Személyes üzenet" resend: "Újraküld" send_an_invitation: "Küldj egy meghívót" @@ -388,7 +394,6 @@ hu: many: "%{count} kedveli" one: "%{count} kedveli" other: "%{count} tetszik" - two: "%{count} ember kedveli" zero: "nincs 'tetszik'" limited: "Korlátozott" more: "Bővebben" @@ -400,21 +405,18 @@ hu: many: "%{actors} is hozzászólt %{post_author} bejegyzéséhez: %{post_link}." one: "%{actors} is hozzászólt %{post_author} bejegyzéséhez: %{post_link}." other: "%{actors} is hozzászólt %{post_author} bejegyzéséhez: %{post_link}." - two: "%{actors} is hozzászólt %{post_author} bejegyzéséhez %{post_link}." zero: "%{actors} is hozzászólt %{post_author} bejegyzéséhez: %{post_link}." also_commented_deleted: few: "%{actors} hozzászólt egy törölt bejegyzéshez." many: "%{actors} hozzászólt egy törölt bejegyzéshez." one: "%{actors} hozzászólt egy törölt bejegyzéshez." other: "%{actors} hozzászólt egy törölt bejegyzéshez." - two: "%{actors} hozzászólt egy törölt bejegyzéshez." zero: "%{actors} hozzászólt egy törölt bejegyzéshez." comment_on_post: few: "%{actors} hozzászólt a bejegyzésedhez: %{post_link}." many: "%{actors} hozzászólt a bejegyzésedhez: %{post_link}." one: "%{actors} hozzászólt a bejegyzésedhez: %{post_link}." other: "%{actors} hozzászólt a bejegyzésedhez: %{post_link}." - two: "%{actors} hozzászólt ehhez: %{post_link}." zero: "%{actors} hozzászólt a bejegyzésedhez: %{post_link}." helper: new_notifications: @@ -433,28 +435,24 @@ hu: many: "%{actors} kedveli a %{post_link}edet." one: "%{actors} kedveli a %{post_link}edet." other: "%{actors} kedveli a %{post_link}edet." - two: "%{actors} kedveli a %{post_link}edet." zero: "%{actors} kedveli a %{post_link}edet." liked_post_deleted: few: "%{actors} kedveli a már törölt bejegyzésedet." many: "%{actors} kedveli a már törölt bejegyzésedet." one: "%{actors} kedveli a már törölt bejegyzésedet." other: "%{actors} kedveli a már törölt bejegyzésedet." - two: "%{actors} kedvelte a törölt hozzászólásod." zero: "%{actors} kedveli a már törölt bejegyzésedet." mentioned: few: "%{actors} megemlített téged egy %{post_link}ben." many: "%{actors} megemlített téged egy %{post_link}ben." one: "%{actors} megemlített téged egy %{post_link}ben." other: "%{actors} megemlített téged egy %{post_link}ben." - two: "%{actors} megemlített téged egy %{post_link}ben." zero: "%{actors} megemlített téged egy %{post_link}ben." mentioned_deleted: few: "%{actors} megemlített téged egy, már törölt bejegyzésben." many: "%{actors} megemlített téged egy, már törölt bejegyzésben." one: "%{actors} megemlített téged egy, már törölt bejegyzésben." other: "%{actors} megemlített téged egy, már törölt bejegyzésben." - two: "%{actors} megemlített téged egy törölt bejegyzésben." zero: "%{actors} megemlített téged egy, már törölt bejegyzésben." post: "bejegyzés" private_message: @@ -462,28 +460,24 @@ hu: many: "%{actors} üzenetet küldött neked." one: "%{actors} üzenetet küldött neked." other: "%{actors} üzenetet küldött neked." - two: "%{actors} küldött egy üzenetet." zero: "%{actors} üzenetet küldött neked." reshared: few: "%{actors} újraosztotta a %{post_link}edet." many: "%{actors} újraosztotta a %{post_link}edet." one: "%{actors} újraosztotta a bejegyzésedet: %{post_link}." other: "%{actors} újraosztotta a %{post_link}edet." - two: "%{actors} újraosztotta a %{post_link}edet." zero: "%{actors} újraosztotta a %{post_link}edet." reshared_post_deleted: few: "%{actors} újraosztotta a már törölt bejegyzésedet." many: "%{actors} újraosztotta a már törölt bejegyzésedet." one: "%{actors} újraosztotta a már törölt bejegyzésedet." other: "%{actors} újraosztotta a már törölt bejegyzésedet." - two: "%{actors} megosztotta a törölt bejegyzésed." zero: "%{actors} újraosztotta a már törölt bejegyzésedet." started_sharing: few: "%{actors} mostantól megoszt veled." many: "%{actors} mostantól megoszt veled." one: "%{actors} mostantól megoszt veled." other: "%{actors} mostantól megoszt veled." - two: "%{actors} ezentúl megoszt veled dolgokat." zero: "%{actors} mostantól megoszt veled." notifier: a_post_you_shared: "egy bejegyzés." @@ -643,9 +637,8 @@ hu: many: "%{count} fénykép tőle: %{author}" one: "Egy fénykép tőle: %{author}" other: "%{count} fénykép tőle: %{author}" - two: "Két fénykép tőle: %{author}" zero: "Nincs fénykép tőle: %{author}" - reshare_by: "Újraosztva általa: %{author}" + reshare_by: "forrás: %{author}" previous: "előző" privacy: "Adatvédelem" privacy_policy: "Adatvédelem" @@ -696,7 +689,7 @@ hu: enter_email: "Írd be az e-mail címed" enter_password: "Adj meg egy jelszót (legalább hat karakterből álljon)" enter_password_again: "Ugyanazt a jelszót írd amit az előbb" - enter_username: "Válassz egy felhasználónevet (csak angol betű, szám és aláhúzás engedett)" + enter_username: "Válassz egy felhasználónevet (csak angol betű, szám és aláhúzás megengedett)" hey_make: "GYERÜNK,<br/>CSINÁLJ<br/>VALAMIT!" join_the_movement: "Csatlakozz!" password: "JELSZÓ" @@ -718,7 +711,6 @@ hu: many: "%{count} új felkérés!" one: "új felkérések!" other: "%{count} új felkérés!" - two: "%{count} új kérés" zero: "nincs új felkérés" manage_aspect_contacts: existing: "Meglévő kapcsolatok" @@ -736,11 +728,10 @@ hu: many: "%{count} újraosztás" one: "1 újraosztás" other: "%{count} újraosztás" - two: "%{count} megosztás" zero: "Újraosztás" reshare_confirmation: "Újraosztod %{author} - %{text}?" reshare_original: "Eredeti újraosztása" - reshared_via: "megosztva általa" + reshared_via: "forrás" show_original: "Eredeti megjelenítése" search: "Keresés" services: @@ -792,7 +783,6 @@ hu: many: "%{count} csoportban" one: "%{count} csoportban" other: "%{count} csoportban" - two: "%{count} nézetben" zero: "Ismerős hozzáadása" contact_list: all_contacts: "Összes kapcsolat" @@ -808,7 +798,7 @@ hu: invite_your_friends: "Hívd meg a barátaidat" invites: "Meghívók" invites_closed: "A meghívás jelenleg szünetel erre a Diaspora* kiszolgálóra." - share_this: "Oszd meg ezt a linket emailben, blogon vagy közösségi hálón!" + share_this: "Oszd meg ezt a hivatkozást levélben, blogon vagy közösségi hálón!" notification: new: "Új %{type} %{from}-tól/től" public_explain: @@ -871,7 +861,6 @@ hu: many: "kérlek a státusz üzeneted ne legyen több, mint %{count} karakter" one: "kérlek a státusz üzeneted ne legyen több, mint %{count} karakter" other: "kérlek a státusz üzeneted ne legyen több, mint %{count} karakter" - two: "Az állapotfrissítésednek %{count} karakternél rövidebbnek kell lennie" zero: "kérlek a státusz üzeneted ne legyen több, mint %{count} karakter" stream_helper: hide_comments: "hozzászólások elrejtése" @@ -880,7 +869,6 @@ hu: many: "Még %{count} hozzászólás megtekintése" one: "Még egy hozzászólás megtekintése" other: "Még %{count} hozzászólás megtekintése" - two: "Még két hozzászólás megtekintése" zero: "Nincs több hozzászólás" streams: activity: @@ -941,7 +929,7 @@ hu: daniels_account: "Adam Diaspora* fiókja" love_to_try: "Szeretnénk, ha kipróbálnád." making_the_connection: "Kapcsolat létrehozása" - screenshot_explanation: "%{link1}. Ez a cubby ehhez van linkelve: %{link2}." + screenshot_explanation: "%{link1}. Ez a cubby a következőre mutat: %{link2}." sign_up_today: "Iratkozz fel még ma!" typical_userpage: "Tipikus 'cubbi.es' oldal" via: "(forrás: %{link})" diff --git a/config/locales/diaspora/hy.yml b/config/locales/diaspora/hy.yml index 03176abfc..ddefcf073 100644 --- a/config/locales/diaspora/hy.yml +++ b/config/locales/diaspora/hy.yml @@ -7,7 +7,7 @@ hy: _applications: "Հավելվածներ" _comments: "Մեկնաբանություններ" - _contacts: "Ընկերներ" + _contacts: "Կոնտակտներ" _home: "Գլխավոր էջ" _photos: "նկարներ" _services: "Ծառայություններ" @@ -15,6 +15,10 @@ hy: activerecord: errors: models: + contact: + attributes: + person_id: + taken: "Պետք է միակը լինի այս օգտատիրոջ կոնտակներում։" person: attributes: diaspora_handle: @@ -34,7 +38,7 @@ hy: person: invalid: "անվավեր է" username: - invalid: "անվավեր է։ Թույլատրվում են միայն տառեր, թվեր և _։" + invalid: "անվավեր է։ Թույլատրվում են միայն տառեր, թվեր և ներքևի գծեր։" taken: "արդեն զբաղված է" admins: admin_bar: @@ -96,15 +100,16 @@ hy: video_title: unknown: "Տեսանյութի անհայտ վերնագիր" are_you_sure: "Համոզվա՞ծ ես" - are_you_sure_delete_account: "Համոզվա՞ծ ես, որ ուզում ես փակել հաշիվդ։ Այն վերականգնել չի լինի։" + are_you_sure_delete_account: "Համոզվա՞ծ ես, որ ուզում ես փակել հաշիվդ։ Էլ վերականգնել չի լինի։" aspect_memberships: destroy: failure: "Խմբից անձի հեռացումը ձախողվեց" + no_membership: "Չստացվեց գտնել ընտրված կոնտակտին այդ խմբում" success: "Անձը հաջողությամբ հեռացվեց խմբից" aspects: add_to_aspect: - failure: "Չստացվեց ընկերոջը ավելացնել այդ խմբին" - success: "Ընկերդ բարեհաջող ավելացվեց այդ խմբին" + failure: "Չստացվեց կոնտակտը այդ խմբին ավելացնել" + success: "Կոնտակտը բարեհաջող ավելացվեց այդ խմբին։" aspect_contacts: done_editing: "պատրաստ է" aspect_listings: @@ -116,8 +121,8 @@ hy: make_something: "Ստեղծիր" stay_updated: "Եղիր տեղեկացված" stay_updated_explanation: "Քո լրահոսը հեղեղված է ընկերներիդ գործողություններով, պիտակներով, որոնց հետևում ես, և համայնքի որոշ կրեատիվ անդամների գրառումներով։" - contacts_not_visible: "Այս խմբի ընկերներդ տեսանելի չեն միմյանց համար։" - contacts_visible: "Այս խմբի ընկերները կկարողանան տեսնել միմյանց։" + contacts_not_visible: "Այս խմբի կոնտակտները տեսանելի չեն միմյանց համար։" + contacts_visible: "Այս խմբի կոնտակտները կկարողանան տեսնել միմյանց։" create: failure: "Չհաջողվեց ստեղծել խումբը։" success: "Քո նոր %{name} խումբը պատրաստ է" @@ -129,7 +134,7 @@ hy: aspect_list_is_visible: "խմբի ցուցակը տեսանելի է նրա անդամներին" confirm_remove_aspect: "Վստա՞հ ես, որ ուզում ես ջնջել այս խումբը։" done: "Պատրաստ է" - make_aspect_list_visible: "այս խմբի անդամներին դարձնե՞լ տեսանելի միմյանց համար։" + make_aspect_list_visible: "այս խմբի կոնտակտներին դարձնե՞լ տեսանելի միմյանց համար։" remove_aspect: "Ջնջել այս խումբը" rename: "վերանվանել" update: "թարմացնել" @@ -152,16 +157,16 @@ hy: handle_explanation: "Սա քո Diaspora ID-ն է։ Մարդիկ կարող են գտնել քեզ ինչպես քո էլ. հասցեով, այնպես էլ քո Diaspora ID-ով։" help: do_you: "Դու." - email_feedback: "Կարող ես նաև %{link} ուղարկել քո կարծիքը։" - email_link: "նամակով" + email_feedback: "Կարող ես նաև %{link}-ին ուղարկել քո կարծիքը։" + email_link: "էլ․ փոստ" feature_suggestion: "… %{link} ունե՞ք։" - find_a_bug: "… %{link} ե՞ք գտել։" - have_a_question: "… %{link} ունե՞ք։" + find_a_bug: "… %{link} ե՞ս գտել։" + have_a_question: "… %{link} ունե՞ս։" here_to_help: "Համայնքն այստե՜ղ է։" need_help: "Օգնությու՞ն" - tag_bug: "խոտան" - tag_feature: "առաջարկությու՞ն" - tag_question: "հա՞րց" + tag_bug: "բագ" + tag_feature: "առաջարկություն" + tag_question: "հարց" tutorials_wiki_and_forum: "%{tutorial} և %{wiki} և %{forum}. Համայնքի կողմից ստեղծված ուղեցույցեր, ինչպես-անեմ-ներ և նորություններ։" introduce_yourself: "Սա քո լրահոսն է։ Ընկղմվիր և ներկայացրու քեզ։" keep_diaspora_running: "Օգնի՛ր Diaspora-ի արագ զարգացմանը ամսական նվիրատվությամբ։" @@ -170,7 +175,7 @@ hy: follow: "Հետևիր %{link}-ին և ողջունիր Diaspora*-ի նոր օգտատերերին։" learn_more: "Իմանալ ավելին" title: "Ողջունի՛ր նորեկներին" - no_contacts: "Ընկերներ չկան" + no_contacts: "Կոնտակտներ չկան" no_tags: "+ Հետևելու պիտակ գտնել" people_sharing_with_you: "Քեզ հետ կիսվող մարդիկ" post_a_message: "հաղորդագրություն գրել >>" @@ -181,7 +186,8 @@ hy: welcome_to_diaspora: "Բարի գալուստ Diaspora*, %{name} ջան։" many: "%{count} խմբեր" move_contact: - failure: "չի աշխատում %{inspect}" + error: "Չստացվեց կոնտակտը տեղափոխել՝ %{inspect}" + failure: "չաշխատեց %{inspect}" success: "Անձը տեղափոխվեց նոր խումբ։" new: create: "Ստեղծել" @@ -190,9 +196,9 @@ hy: community_spotlight: "համայնքի նորությունները" or_spotlight: "Կամ կարող ես կիսվել %{link}-ով։" try_adding_some_more_contacts: "Կարող ես ևս ընկերներ փնտրել կամ հրավիրել նրանց։" - you_should_add_some_more_contacts: "Լավ կլինի՝ մի քանի ընկեր ավելացնես։" + you_should_add_some_more_contacts: "Լավ կլինի՝ մի քանի կոնտակտ ավելացնես։" no_posts_message: - start_talking: "Ոչ ոք բան չի ասել դեռևս։" + start_talking: "Բոլորը դավադրաբար լռում են դեռ։" one: "1 խումբ" other: "%{count} խմբեր" seed: @@ -202,7 +208,7 @@ hy: work: "Աշխատանք" selected_contacts: manage_your_aspects: "Կարգավորել խմբերը" - no_contacts: "Դու դեռ ոչ մի ընկեր չունես։" + no_contacts: "Դու դեռ ոչ մի կոնտակտ չունես այստեղ։" view_all_community_spotlight: "Դիտել համայնքի բոլոր նորությունները" view_all_contacts: "Տես բոլոր կոնտակտներին" show: @@ -211,7 +217,7 @@ hy: update: failure: "Քո՝ %{name} խմբի անունը շատ երկար է և չի կարող պահպանվել։" success: "Քո՝ %{name} խումբը հաջողությամբ փոփոխվեց։" - zero: "խմբեր չկան" + zero: "ոչ մի խումբ չկա" authorizations: index: no_applications: "Դու չես գրանցել որևէ applications դեռևս։" @@ -221,11 +227,14 @@ hy: back: "Ետ" blocks: create: + failure: "Չստացվեց արհամարհել այդ օգտատիրոջը։" success: "Բարի, այլևս չես տեսնի այդ օգտատերին քո լրահոսում։ #silencio!" destroy: + failure: "Չստացվեց դադարեցնել արհամարհել այդ օգտատիրոջը։" success: "Եկ տեսնենք՝ ինչ ունեն նրանք ասելու։ #sayhello" bookmarklet: post_something: "Գրառել Diaspora-ում" + post_success: "Գրառվեց։ Փակվում եմ։ ։Ճ" cancel: "Չեղարկել" comments: few: "%{count} մեկնաբանություն" @@ -255,17 +264,17 @@ hy: only_sharing_with_me: "Միայն ինձ հետ կիսվողները" remove_person_from_aspect: "Հեռացնել %{person_name}-ին %{aspect_name}-ից" start_a_conversation: "Խոսակցություն սկսել" - title: "Ընկերներ" - your_contacts: "Քո ընկերները" + title: "Կոնտակտներ" + your_contacts: "Քո կոնտակտները" many: "%{count} ընկերներ" - one: "1 ընկեր" + one: "1 կոնտակտ" other: "%{count} ընկեր" sharing: people_sharing: "Քեզ հետ կիսվող մարդիկ" spotlight: community_spotlight: "Համայնքի նորությունները" two: "%{count} ընկեր" - zero: "ընկերներ" + zero: "կոնտակտ" conversations: create: sent: "Նամակն ուղարկված է" @@ -317,9 +326,10 @@ hy: already_contacts: "Այս մարդու հետ արդեն կապ հաստատել ես" already_sent: "Այս մարդուն արդեն հրավիրել ես։" no_more: "Այլևս հրավեր ուղարկելու իրավունք չունես։" + note_already_sent: "Հրավերները արդեն ուղարկվել են հետևյալ հադցեներին. %{emails}" own_address: "Դու չես կարող հրավեր ուղարկել քո սեփական հասցեին։" rejected: "Հետևյալ էլ.հասցեների հետ կապված խնդիրներ կան՝ " - sent: "Հրավերներ ուղարկվեցին հետևյալ անձանց՝ " + sent: "Հրավերներ ուղարկվեցին հետևյալ անձանց՝ %{emails}" edit: accept_your_invitation: "Ընդունի՛ր հրավերդ" your_account_awaits: "Հաշիվդ քե՛զ է սպասում։" @@ -347,6 +357,7 @@ hy: powered_by: "DIASPORA*-Ի ՀԻՄԱՆ ՎՐԱ" public_feed: "%{name}-ի հրապարակային հոսքը Diaspora-ում։" source_package: "ներբեռնել սկզբնական կոդի փաթեթը" + toggle: "թոգլ մոբայլ" whats_new: "ի՞նչ կա" your_aspects: "քո խմբերը" header: @@ -361,6 +372,10 @@ hy: view_all: "Դիտել ամբողջը" likes: likes: + people_dislike_this: + one: "%{count} մարդ չի հավանել" + other: "%{count} մարդ չի հավանել" + zero: "մարդ չի հավանել" people_like_this: one: "%{count} մարդ հավանել է" other: "%{count} մարդ հավանել է" @@ -421,12 +436,20 @@ hy: one: "%{actors}-ը քեզ նամակ է ուղարկել։" other: "%{actors} քեզ նամակ են ուղարկել։" zero: "%{actors} քեզ նամակ են ուղարկել։" + reshared: + one: "%{actors} տարածել է քո %{post_link}։" + other: "%{actors} տարածել են քո %{post_link}։" + zero: "%{actors} տարածել է քո %{post_link}։" + reshared_post_deleted: + one: "%{actors} տարածել է քո ջնջված գրառումը։" + other: "%{actors} տարածել են քո ջնջված գրառումը։" + zero: "%{actors} տարածել է քո ջնջված գրառումը։" started_sharing: one: "%{actors} սկսեց կիսվել հետդ։" other: "%{actors} սկսեցին կիսվել հետդ։" zero: "%{actors} սկսեցին կիսվել հետդ։" notifier: - a_post_you_shared: "գրառումը․" + a_post_you_shared: "գրառումը։" accept_invite: "Ընդունի՛ր քո՝ Diaspora*-ի հրավերը։" click_here: "սեղմի՛ր այստեղ" comment_on_post: @@ -473,7 +496,7 @@ hy: view_profile: "Տես %{name}-ի անձնական էջը" thanks: "Շնորհակալություն," to_change_your_notification_settings: "ծանուցումների կարգավորումները փոխելու համար" - nsfw: "քխ" + nsfw: "քըխ" ok: "Լավ" or: "կամ" password: "Գաղտնաբառ" @@ -485,6 +508,7 @@ hy: edit_membership: "փոփոխել խմբի անդամներին" few: "%{count} մարդ" helper: + people_on_pod_are_aware_of: " փոդի մարդիկ տեղյակ են՝" results_for: " արդյունքներ %{params}-ի համար" index: couldnt_find_them_send_invite: "Չե՞ս գտնում նրանց։ Հրավե՛ր ուղարկիր։" @@ -535,9 +559,10 @@ hy: fail: "Կներես, մենք չկարողացանք գտնել %{handle}։" zero: "մարդ չկա" photos: - comment_email_subject: "%{name}-ի նկարները" + comment_email_subject: "%{name}-ի նկարը" create: integrity_error: "Նկարի վերբեռնումը տապալվեց։ Համոզվա՞ծ ես, որ դա նկար էր։" + runtime_error: "Նկար վերբեռնել չստացվեց։ Համոզվա՞ծ ես, որ ամրագոտիները կապել էիր։" type_error: "Նկարի վերբեռնումը տապալվեց։ Համոզված ե՞ս, որ հենց նկար էիր ավելացրել։" destroy: notice: "Նկարը ջնջված է։" @@ -549,9 +574,9 @@ hy: post_it: "հրապարակի՛ր սա" new_photo: empty: "{file}-ը դատարկ է, կրկին ընտրիր ֆայլերը առանց դրա։" - size_error: "{file}-ը չափից դուրս մեծ է, հնարավոր առավելագույն չափն է՝ {sizeLimit}։" + size_error: "{file}-ը չափից դուրս մեծ է, առավելագույն չափն է՝ {sizeLimit}։" new_profile_photo: - or_select_one_existing: "կամ ընտրիր արդեն գոյություն ունեցող նկարներից մեկը՝ %{photos}" + or_select_one_existing: "կամ ընտրիր արդեն գոյություն ունեցող նկարներիցդ մեկը՝ %{photos}" upload: "Նոր նկար վերբեռնի՛ր։" photo: view_all: "դիտել %{name}-ի բոլոր նկարները" @@ -571,12 +596,12 @@ hy: title: "%{name}-ի գրառումը" show: destroy: "Ջնջել" - not_found: "Ցավում ենք, չստացվեց գտնել այդ գրառումը։" + not_found: "Ցավոք գրառումը չգտնվեց։" permalink: "սկզբնաղբյուր" photos_by: - one: "1 լուսանկար %{author}-ից" - other: "%{count} լուսանկարներ %{author}-ից" - zero: "Ոչ մի լուսանկար %{author}-ից" + one: "Մեկ նկար %{author}-ից" + other: "%{count} նկար %{author}-ից" + zero: "Ոչ մի նկար %{author}-ից" previous: "նախորդ" privacy: "Անձնական" privacy_policy: "Անձնական քաղաքականություն" @@ -589,13 +614,13 @@ hy: last_name: "Ազգանուն" update_profile: "Թարմացնել անձնական էջը" you_are_nsfw: "Նշել ես, որ աշխատանքի համար ոչ ապահով ես (քխ)։ Քո գրառումները տեսանելի չեն լինի այն մարդկանց, ովքեր հրաժարվել են objectionable բովանդակությամբ հոսքերից։" + you_are_safe_for_work: "Քեզ նշել ես, որպես ապահով աշխատանքի համար (ոչ քըխ), սա նշանակում է՝ համաձայն ես, որ քո գրառած բովանդակությունը համապատասխանում է համայնքի ուղեցույցին։" your_bio: "Կենսագրություն" your_birthday: "Ծննդյան ամսաթիվ" your_gender: "Սեռ" your_location: "Որտե՞ղ ես" - your_name: "Անուն" your_photo: "Քո նկարը" - your_private_profile: "Քո անձնական հաշիվը" + your_private_profile: "Քո անձնական էջը" your_public_profile: "Քո հրապարակային էջը" your_tags: "Նկարագրիր քեզ 5 բառով" your_tags_placeholder: "օրինակ՝ #կինոնկար #կատուներ #ճանապարհորդություն #ուսուցիչ #Երևան" @@ -638,7 +663,7 @@ hy: requests: create: sending: "Ուղարկվում է" - sent: "%{name}-ին առաջարկել ես կիսվել։ Նրանք առաջարկը կտեսնեն, երբ հաջորդ անգամ Diaspora մուտք գործեն։" + sent: "%{name}-ին առաջարկել ես ընկերանալ։ Առաջարկդ կտեսնի, երբ հաջորդ անգամ Diaspora մուտք գործի։" destroy: error: "Խումբ ընտրիր" ignore: "Արհամարհված ընկերանալու հայտ" @@ -646,30 +671,46 @@ hy: helper: new_requests: one: "նոր հայտ" - other: "%{count} նոր հայտեր" + other: "%{count} նոր հայտ" zero: "ոչ մի նոր հայտ" manage_aspect_contacts: existing: "Գոյություն ունեցող ընկերները" + manage_within: "Կարգավորել կոնտակտներդ" new_request_to_person: sent: "ուղարկվեց" reshares: + create: + failure: "Գրառումը տարածելիս խնդիրներ առաջացան։" reshare: deleted: "Օրիգինալ գրառումը ջնջվել է հեղինակի կողմից։" - reshare_confirmation: "Տարածե՞լ %{author}-ի գրառումը։" + reshare: + one: "մեկը տարածել է" + other: "%{count}-ը տարածել են" + zero: "Ոչ ոք չի տարածել" + reshare_confirmation: "Տարածե՞լ %{author}-ի գրառումը" + reshare_original: "Տարածել բնօրինակը" show_original: "Ցույց տալ բնօրինակը" search: "Որոնում" services: + create: + failure: "Նույնականացումը չստացվեց" + success: "Նույնականացումը բարեհաջող անցավ։" + destroy: + success: "Նույնականացումը բարեհաջող ջնջվեց։" + failure: + error: "Այդ ծառայությունը միացնելիս խնդիրներ առաջացան" finder: no_friends: "Facebook-ից ընկերներ չգտնվեցին։" + service_friends: "%{service}-ի ընկերները" index: connect_to_facebook: "Միացնել Facebook-ին" connect_to_tumblr: "Միացնել Tumblr-ին" connect_to_twitter: "Միացնել Twitter-ին" - disconnect: "անջատել" - edit_services: "Կարգավորել ծառայությունները" - logged_in_as: "մուտք է գործվել որպես" - no_services: "Դեռս որևիցե ծառայություն չես միացրել։" - really_disconnect: "անջատե՞լ %{service}-ը" + disconnect: "խզել կապը" + edit_services: "Փոփոխել ծառայությունները" + logged_in_as: "համակարգում ես որպես" + no_services: "Դեռևս որևիցե ծառայություն չես միացրել։" + really_disconnect: "խզե՞լ կապը %{service}-ի հետ" inviter: click_link_to_accept_invitation: "Անցիր այս հղումով, որ ընդունես քո հրավերը" join_me_on_diaspora: "Միացի՛ր ինձ DIASPORA*-ում" @@ -681,16 +722,17 @@ hy: share_visibilites: update: post_hidden_and_muted: "%{name}-ի գրառումը թաքցվել է, իսկ ծանուցումները՝ անջատվել։" - see_it_on_their_profile: "Եթե ուզում ես այս գրառման հետ կապված նորությունները տեսնել, այցելիր %{name}-ի անձնական էջը։" + see_it_on_their_profile: "Եթե ուզում ես այս գրառման թարմացումները տեսնել, այցելիր %{name}-ի էջը։" shared: add_contact: + add_new_contact: "Նոր կոնտակտ ավելացնել" create_request: "Գտնել Diaspora ID-ի միջոցով" diaspora_handle: "diaspora@pod.org" enter_a_diaspora_username: "Մուտքագրիր Diaspora օգտանուն" know_email: "Գիտես նրանց էլ.հասցենե՞րը։ Կարող ես հրավիրել նրանց։" your_diaspora_username_is: "Քո Diaspora-ի օգտանունն է՝ %{diaspora_handle}" aspect_dropdown: - add_to_aspect: "Ընդլայնել կապերը:" + add_to_aspect: "Ավելացնել" contact_list: all_contacts: "Բոլոր ընկերները" footer: @@ -711,17 +753,23 @@ hy: public_explain: atom_feed: "Ատոմ հոսքը" control_your_audience: "Ղեկավարիր քո լսարանը" + logged_in: "մոտք է գործված %{service}" + manage: "կարգավորել միացված ծառայությունները" new_user_welcome_message: "Օգտագործիր #hashպիտակները՝ գրառումներդ դասակարգելու և հետաքրքրություններդ կիսող մարդկանց գտնելու համար։ Նշիր ընկերներիդ՝ օգտագործելով @Հիշատակել" + outside: "Հրապարակային գրառումները տեսանելի կլինեն Diaspora-ից դուրս։" share: "Կիսվել" visibility_dropdown: "Սեղմիր այս սլաքը՝ քո գրառման տեսանելիությունը ընտրելու համար։ (Խորհուրդ կտանք՝ այս առաջինը հրապարակային նշես։)" publisher: all: "բոլորը" + all_contacts: "բոլոր կոնտակտները" make_public: "դարձնել հանրամատչելի" new_user_prefill: hello: "Ողջու՛յն, ժողովուրդ, #%{new_user_tag}։ " i_like: "Իմ հետաքրքրություններն են՝ %{tags}։ " invited_by: "Շնորհակալություն հրավերի համար, " newhere: "ԵսՆորեկԵմ" + post_a_message_to: "Գրառել %{aspect}ի կոնտակտների համար" + posting: "Գրառվում է..." share: "Կիսվել" upload_photos: "Վերբեռնել նկարները" whats_on_your_mind: "Ի՞նչ կա մտքիդ։" @@ -738,13 +786,18 @@ hy: nsfw: "Այս գրառումը նշված է որպես NSFW հեղինակի կողմից։ %{link}" show: "ցուցադրել" unlike: "Ապահավանել" + via: "ըստ %{link}" via_mobile: "հեռախոսով" viewable_to_anyone: "Այս գրառումը տեսանելի է համացանցում ամենքին" status_messages: + create: + success: "%{names} բարեհաջող հիշատակվեցին" destroy: failure: "Չհաջողվեց ջնջել գրառումը" helper: no_message_to_display: "Նամկներ չկան ցույց տալու համար" + new: + mentioning: "Հիշատակելով %{person}-ին" too_long: one: "պակասեցրու գրառումդ %{count} նիշով " other: "պակասեցրու գրառումդ %{count} նիշով" @@ -785,6 +838,7 @@ hy: title: "Հանրային ակտիվություն" tags: contacts_title: "Մարդիկ, ովքեր հայթայթել են այս պիտակը" + tag_prefill_text: "Բանը նրանում է, որ %{tag_name}-ը... " title: "%{tags} պիտակով գրառումները" tag_followings: create: @@ -824,7 +878,8 @@ hy: success: "Քո հաշիվն արգելափակվեց։ Մոտավորապես 20 րոպե կտևի, մինչ մենք վերջնականորեն կփակենք հաշիվդ։ Շնորհակալ ենք Diaspora-ն փորձելու համար։" wrong_password: "Մուտքագրված գաղտնաբառը չի համապատասխանում ներկայիս գաղտնաբառին։" edit: - also_commented: "...որևէ մեկը նունպես մեկնաբանում է ընկերոջդ գրառու՞մը։" + also_commented: "...որևէ մեկը նույնպես մեկնաբանում է ընկերոջդ գրառու՞մը։" + auto_follow_aspect: "Խումբ, որտեղ կավելացվեն ինքնաբերաբար հետևված կոնտակները." auto_follow_back: "Մեխանիկորեն հետևել նրանց, ով հետևում է քեզ" change: "Փոփոխել" change_email: "Փոխել էլ.հասցեն" @@ -838,6 +893,7 @@ hy: make_diaspora_better: "Կուզենայինք, որ օգնեիր դարձնել Diaspora-ն առավել լավ, այնպես որ հեռանալու փոխարեն լավ կլիներ, որ օգնեիր մեզ այդ հարցում։ Բայց եթե որոշել ես գնալ, ապա ծանոթացիր, թե ինչ կլինի դրա արդյունքում՝" mr_wiggles: "Պրն. Փիսոն կտխրի, եթե դու գնաս" no_turning_back: "Առայժմ ետդարձի ճանապարհ չկա։" + what_we_delete: "Մենք ջնջում ենք քո բոլոր գրառումները, անձնական տվյալները ինչքան հնարավոր է շուտ։ Քո մեկնաբանությունները դեռ շրջանառության մեջ կլինեն, բայց կապված կլինեն Diaspora ID-իդ հետ։" close_account_text: "Փակել հաշիվս" comment_on_post: "...որևէ մեկը մեկնաբանում է քո գրառման տա՞կ։" current_password: "Ներկայիս գաղտնաբառ" @@ -856,6 +912,8 @@ hy: private_message: "...անձնական նամա՞կ ես ստանում։" receive_email_notifications: "Ստանալ ծանուցումներ էլ.հասցեին, երբ..." reshared: "...որևէ մեկը տարածում է քո գրառու՞մը։" + show_community_spotlight: "Ցուցադրե՞լ համայնքի նորութությունները լրահոսումդ։" + show_getting_started: "Վերականգնել առաջին անգամ քեզ ողջունած էկրանը" started_sharing: "...որևէ մեկը սկսում է կիսվե՞լ քեզ հետ։" stream_preferences: "Հոսքի նախընտրությունները" your_email: "Էլ.հասցեն" @@ -863,6 +921,7 @@ hy: getting_started: awesome_take_me_to_diaspora: "Զի՛լ է։ Տար ինձ Diaspora*" community_welcome: "Diaspora-ի համայնքը ուրախ է տեսնել քեզ այստեղ։" + connect_to_facebook_link: "միացրու քո ֆեյսբուքյան հաշվին" hashtag_suggestions: "Փորձիր հետևել պիտակներ, ինչպիսիք են #արվեստ #կինոնկար #gif և այլն։" saved: "Պահված է" well_hello_there: "Դե ինչ, ողջու՜յն։" @@ -886,7 +945,7 @@ hy: settings_updated: "Կարգավորումները թարմացված են" unconfirmed_email_changed: "Էլ.հասցեն փոխված է և ակտիվացնելու կարիք ունի։" unconfirmed_email_not_changed: "Էլ.հասցեի փոփոխումը չհաջողվեց" - welcome: "Բարի գալու՜ստ։" + welcome: "Բարի գալու՜ստ" will_paginate: next_label: "հաջորդ »" previous_label: "« նախորդ"
\ No newline at end of file diff --git a/config/locales/diaspora/ia.yml b/config/locales/diaspora/ia.yml index 90c7ef3cc..65b54391b 100644 --- a/config/locales/diaspora/ia.yml +++ b/config/locales/diaspora/ia.yml @@ -227,11 +227,6 @@ ia: sent: "Message inviate" destroy: success: "Conversation removite con successo" - helper: - new_messages: - human: "Nulle nove message" - po: "1 nove message" - yml: "%{count} nove messages" index: create_a_new_message: "crear un nove message" inbox: "Cassa de entrata" @@ -309,83 +304,16 @@ ia: recent_notifications: "Notificationes recente" settings: "Configuration" view_all: "Vider totes" - likes: - likes: - people_dislike_this: - human: "nulle antipathia" - po: "%{count} antipathia" - yml: "%{count} antipathias" - people_like_this: - human: "nulle appreciation" - po: "%{count} appreciation" - yml: "%{count} appreciationes" - people_like_this_comment: - human: "nulle appreciation" - po: "%{count} appreciation" - yml: "%{count} appreciationes" limited: "Limitate" more: "Plus" next: "sequente" no_results: "Nulle resultato trovate" notifications: - also_commented: - human: "%{actors} commentava anque le %{post_link} de %{post_author}." - po: "%{actors} commentava anque le %{post_link} de %{post_author}." - yml: "%{actors} commentava anque le %{post_link} de %{post_author}." - also_commented_deleted: - human: "%{actors} commentava un entrata delite." - po: "%{actors} commentava un entrata delite." - yml: "%{actors} commentava un entrata delite." - comment_on_post: - human: "%{actors} commentava tu %{post_link}." - po: "%{actors} commentava tu %{post_link}." - yml: "%{actors} commentava tu %{post_link}." - helper: - new_notifications: - human: "Nulle nove notification" - po: "1 nove notification" - yml: "%{count} nove notificationes" index: and: "e" - and_others: - human: "e nemo altere" - po: "e un altere" - yml: "e %{count} alteres" mark_all_as_read: "Marcar totes como legite" notifications: "Notificationes" - liked: - human: "%{actors} ha appreciate tu %{post_link}." - po: "%{actors} ha appreciate tu %{post_link}." - yml: "%{actors} ha appreciate tu %{post_link}." - liked_post_deleted: - human: "%{actors} appreciava tu entrata delite." - po: "%{actors} appreciava tu entrata delite." - yml: "%{actors} appreciava tu entrata delite." - mentioned: - human: "%{actors} te ha mentionate in un %{post_link}." - po: "%{actors} te ha mentionate in un %{post_link}." - yml: "%{actors} te ha mentionate in un %{post_link}." - mentioned_deleted: - human: "%{actors} te mentionava in un entrata delite." - po: "%{actors} te mentionava in un entrata delite." - yml: "%{actors} te mentionava in un entrata delite." post: "entrata" - private_message: - human: "%{actors} te inviava un message." - po: "%{actors} te inviava un message." - yml: "%{actors} te inviava un message." - reshared: - human: "%{actors} ha repetite tu %{post_link}." - po: "%{actors} ha repetite tu %{post_link}." - yml: "%{actors} ha repetite tu %{post_link}." - reshared_post_deleted: - human: "%{actors} repeteva tu entrata delite." - po: "%{actors} repeteva tu entrata delite." - yml: "%{actors} repeteva tu entrata delite." - started_sharing: - human: "%{actors} comenciava a divider con te." - po: "%{actors} comenciava a divider con te." - yml: "%{actors} comenciava a divider con te." notifier: a_post_you_shared: "un entrata." click_here: "clicca hic" @@ -515,10 +443,6 @@ ia: destroy: "Deler" not_found: "Impossibile trovar iste entrata." permalink: "permaligamine" - photos_by: - human: "Nulle photo per %{author}" - po: "Un photo per %{author}" - yml: "%{count} photos per %{author}" reshare_by: "Repetite per %{author}" previous: "precedente" privacy: "Confidentialitate" @@ -547,10 +471,6 @@ ia: failed: "Le actualisation del profilo ha fallite" updated: "Profilo actualisate" public: "Public" - reactions: - human: "0 responsas" - po: "1 responsa" - yml: "%{count} responsas" registrations: closed: "Le creation de contos es claudite in iste pod de Diaspora." create: @@ -578,11 +498,6 @@ ia: error: "Per favor selige un aspecto!" ignore: "Demanda de contacto ignorate." success: "Tu ha comenciate a divider." - helper: - new_requests: - human: "nulle nove requesta" - po: "nove requesta!" - yml: "%{count} nove requestas!" manage_aspect_contacts: existing: "Contactos existente" manage_within: "Gerer contactos intra" @@ -594,10 +509,6 @@ ia: failure: "Un error occurreva durante le repetition de iste entrata." reshare: deleted: "Le entrata original ha essite delite per le autor." - reshare: - human: "Repeter" - po: "1 repetition" - yml: "%{count} repetitiones" reshare_confirmation: "Repeter iste entrata de %{author}?" reshare_original: "Repeter le original" reshared_via: "repetite via" @@ -647,10 +558,6 @@ ia: your_diaspora_username_is: "Tu nomine de usator de Diaspora es: %{diaspora_handle}" aspect_dropdown: add_to_aspect: "Adder contacto" - toggle: - human: "Adder contacto" - po: "In %{count} aspecto" - yml: "In %{count} aspectos" contact_list: all_contacts: "Tote le contactos" footer: @@ -719,16 +626,8 @@ ia: no_message_to_display: "Nulle message a presentar." new: mentioning: "Mentiona: %{person}" - too_long: - human: "per favor non scribe plus de %{count} characteres in tu messages de stato" - po: "per favor non scribe plus de %{count} character in tu messages de stato" - yml: "per favor non scribe plus de %{count} characteres in tu messages de stato" stream_helper: hide_comments: "Celar tote le commentos" - show_comments: - human: "Il non ha altere commentos" - po: "Monstrar 1 altere commento" - yml: "Monstrar %{count} altere commentos" streams: aspects_stream: "Aspectos" comment_stream: diff --git a/config/locales/diaspora/id.yml b/config/locales/diaspora/id.yml index a1249b8d1..2c600469a 100644 --- a/config/locales/diaspora/id.yml +++ b/config/locales/diaspora/id.yml @@ -100,7 +100,6 @@ id: many: "%{count} new messages" one: "1 new messages" other: "%{count} new messages" - two: "%{count} new messages" zero: "no new messages" delete: "Hapus" email: "E-mail" @@ -137,21 +136,18 @@ id: many: "%{count} people disliked this" one: "1 person disliked this" other: "%{count} people disliked this" - two: "%{count} dislikes" zero: "no people disliked this" people_like_this: few: "%{count} people liked this" many: "%{count} people liked this" one: "1 person liked this" other: "%{count} people liked this" - two: "%{count} likes" zero: "no people liked this" people_like_this_comment: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" notifications: also_commented: @@ -159,21 +155,18 @@ id: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -181,7 +174,6 @@ id: many: "%{count} new notifications" one: "1 new notifications" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "no new notifications" index: and_others: @@ -189,63 +181,54 @@ id: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" liked: few: "%{actors} has just liked your %{post_link}." many: "%{actors} has just liked your %{post_link}." one: "%{actors} has just liked your %{post_link}." other: "%{actors} has just liked your %{post_link}." - two: "%{actors} has just liked your %{post_link}." zero: "%{actors} has just liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." private_message: few: "%{actors} sent you a message." many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} has reshared your %{post_link}." many: "%{actors} has reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} has reshared your %{post_link}." - two: "%{actors} has reshared your %{post_link}." zero: "%{actors} has reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: confirm_email: @@ -305,7 +288,6 @@ id: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" profiles: edit: @@ -316,7 +298,6 @@ id: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: create: @@ -338,7 +319,6 @@ id: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" reshares: reshare: @@ -347,7 +327,6 @@ id: many: "%{count} Reshares" one: "1 Reshare" other: "%{count} Reshares" - two: "%{count} reshares" zero: "Reshare" reshare_confirmation: "Reshare %{author} - %{text}?" reshare_original: "Reshare orignial" @@ -372,7 +351,6 @@ id: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" invitations: by_email: "by Email" @@ -400,7 +378,6 @@ id: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: hide_comments: "hide comments" @@ -409,7 +386,6 @@ id: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/is.yml b/config/locales/diaspora/is.yml index 020babc14..ff6d18bae 100644 --- a/config/locales/diaspora/is.yml +++ b/config/locales/diaspora/is.yml @@ -150,7 +150,6 @@ is: many: "%{count} new messages" one: "1 new messages" other: "%{count} new messages" - two: "%{count} new messages" zero: "no new messages" date: formats: @@ -199,21 +198,18 @@ is: many: "%{count} people disliked this" one: "1 person disliked this" other: "%{count} people disliked this" - two: "%{count} dislikes" zero: "no people disliked this" people_like_this: few: "%{count} people liked this" many: "%{count} people liked this" one: "1 person liked this" other: "%{count} people liked this" - two: "%{count} likes" zero: "no people liked this" people_like_this_comment: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" more: "Meira" next: "næsta" @@ -223,21 +219,18 @@ is: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -245,7 +238,6 @@ is: many: "%{count} new notifications" one: "1 new notifications" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "no new notifications" index: and_others: @@ -253,7 +245,6 @@ is: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" mark_all_as_read: "Merkja allt sem lesið" notifications: "Tilkynningar" @@ -262,28 +253,24 @@ is: many: "%{actors} has just liked your %{post_link}." one: "%{actors} has just liked your %{post_link}." other: "%{actors} has just liked your %{post_link}." - two: "%{actors} has just liked your %{post_link}." zero: "%{actors} has just liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." post: "setja inn" private_message: @@ -291,28 +278,24 @@ is: many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} has reshared your %{post_link}." many: "%{actors} has reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} has reshared your %{post_link}." - two: "%{actors} has reshared your %{post_link}." zero: "%{actors} has reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: confirm_email: @@ -408,7 +391,6 @@ is: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" previous: "fyrra" profile: "Síðan mín" @@ -434,7 +416,6 @@ is: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: closed: "Innskráningar eru lokaðar á þessum Diaspora pod." @@ -468,7 +449,6 @@ is: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" manage_aspect_contacts: existing: "Núverandi tengiliðir" @@ -480,7 +460,6 @@ is: many: "%{count} Reshares" one: "1 Reshare" other: "%{count} Reshares" - two: "%{count} reshares" zero: "Reshare" reshare_confirmation: "Reshare %{author} - %{text}?" reshare_original: "Reshare orignial" @@ -519,7 +498,6 @@ is: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" contact_list: all_contacts: "Allir tengiliðir" @@ -563,7 +541,6 @@ is: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: hide_comments: "fela athugasemdir" @@ -572,7 +549,6 @@ is: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/it.yml b/config/locales/diaspora/it.yml index 2c67e1036..55ba4105a 100644 --- a/config/locales/diaspora/it.yml +++ b/config/locales/diaspora/it.yml @@ -365,6 +365,7 @@ it: back_to_top: "Torna all'inizio" powered_by: "POWERED BY DIASPORA*" public_feed: "Feed pubblici Diaspora di %{name}" + source_package: "" toggle: "attiva/disattiva versione mobile" whats_new: "novità" your_aspects: "i tuoi aspetti" @@ -389,14 +390,12 @@ it: many: "%{count} mi piace" one: "%{count} mi piace" other: "%{count} mi piace" - two: "%{count} mi piace" zero: "0 mi piace" people_like_this_comment: few: "%{count} mi piace" many: "%{count} mi piace" one: "%{count} mi piace" other: "%{count} mi piace" - two: "%{count} mi piace" zero: "0 mi piace" limited: "Non pubblico" more: "Altro" @@ -408,7 +407,6 @@ it: many: "Anche %{actors} hanno commentato il %{post_link} di %{post_author}." one: "Anche %{actors} ha commentato il %{post_link} di %{post_author}." other: "Anche %{actors} hanno commentato il %{post_link} di %{post_author}." - two: "Anche %{actors} hanno commentato il %{post_link} di %{post_author}." zero: "%{actors} ha commentato il %{post_link} di %{post_author}." also_commented_deleted: one: "%{actors} ha commentato un post che è stato eliminato." @@ -419,7 +417,6 @@ it: many: "%{actors} hanno commentato il tuo %{post_link}." one: "%{actors} ha commentato il tuo %{post_link}." other: "%{actors} hanno commentato il tuo %{post_link}." - two: "%{actors} hanno commentato il tuo %{post_link}." zero: "%{actors} ha commentato il tuo %{post_link}." helper: new_notifications: @@ -433,7 +430,6 @@ it: many: "e altre %{count} persone" one: "e un'altra persona" other: "e altre %{count} persone" - two: "e altre %{count} persone" zero: "e nessun altro" mark_all_as_read: "Segna come lette" mark_unread: "Segna come non letti" @@ -443,28 +439,24 @@ it: many: "A %{actors} piace il tuo %{post_link}." one: "A %{actors} piace il tuo %{post_link}." other: "A %{actors} piace il tuo %{post_link}." - two: "A %{actors} piace il tuo %{post_link}." zero: "A %{actors} piace il tuo %{post_link}." liked_post_deleted: few: "A %{actors} piaceva il post che hai eliminato." many: "A %{actors} piaceva il post che hai eliminato." one: "A %{actors} piaceva il post che hai eliminato." other: "A %{actors} piaceva il post che hai eliminato." - two: "A %{actors} piaceva il post che hai eliminato." zero: "A %{actors} piaceva il post che hai eliminato." mentioned: few: "%{actors} ti hanno menzionato in un %{post_link}." many: "%{actors} ti hanno menzionato in un %{post_link}." one: "%{actors} ti ha menzionato in un %{post_link}." other: "%{actors} ti hanno menzionato in un %{post_link}." - two: "%{actors} ti hanno menzionato in un %{post_link}." zero: "%{actors} ti hanno menzionato in un %{post_link}." mentioned_deleted: few: "%{actors} ti hanno menzionato in un post che è stato eliminato." many: "%{actors} ti hanno menzionato in un post che è stato eliminato." one: "%{actors} ti ha menzionato in un post che è stato eliminato." other: "%{actors} ti ha menzionato in un post che è stato eliminato." - two: "%{actors} ti hanno menzionato in un post che è stato eliminato." zero: "%{actors} ti ha menzionato in un post che è stato eliminato." post: "post" private_message: @@ -480,14 +472,12 @@ it: many: "%{actors} hanno condiviso il post che hai eliminato." one: "%{actors} ha condiviso il post che hai eliminato." other: "%{actors} hanno condiviso il post che hai eliminato." - two: "%{actors} hanno condiviso il post che hai eliminato." zero: "%{actors} hanno condiviso il post che hai eliminato." started_sharing: few: "%{actors} hanno iniziato a condividere con te." many: "%{actors} hanno iniziato a condividere con te." one: "%{actors} ha iniziato a condividere con te." other: "%{actors} hanno iniziato a condividere con te." - two: "%{actors} hanno iniziato a condividere con te." zero: "%{actors} ha iniziato a condividere con te." notifier: a_post_you_shared: "un post." @@ -647,7 +637,6 @@ it: many: "%{count} foto di %{author}" one: "Una foto di %{author}" other: "%{count} foto di %{author}" - two: "Due foto di %{author}" zero: "Nessuna foto di %{author}" reshare_by: "Condiviso da %{author}" previous: "precedente" @@ -682,7 +671,6 @@ it: many: "%{count} risposte" one: "1 risposta" other: "%{count} risposte" - two: "%{count} risposte" zero: "0 risposte" registrations: closed: "Su questo pod Diaspora le iscrizioni sono chiuse." @@ -725,7 +713,6 @@ it: many: "%{count} nuove richieste!" one: "una nuova richiesta!" other: "%{count} nuove richieste!" - two: "%{count} nuove richieste!" zero: "nessuna nuova richiesta" manage_aspect_contacts: existing: "Contatti esistenti" @@ -796,7 +783,6 @@ it: many: "In %{count} aspetti" one: "In %{count} aspetto" other: "In %{count} aspetti" - two: "In %{count} aspetti" zero: "Aggiungi" contact_list: all_contacts: "Tutti i contatti" @@ -879,7 +865,6 @@ it: many: "Mostra gli altri %{count} commenti" one: "Mostra 1 altro commento" other: "Mostra gli altri %{count} commenti" - two: "Mostra gli altri 2 commenti" zero: "Nessun altro commento" streams: activity: diff --git a/config/locales/diaspora/ja.yml b/config/locales/diaspora/ja.yml index c64f7a5b7..944378290 100644 --- a/config/locales/diaspora/ja.yml +++ b/config/locales/diaspora/ja.yml @@ -107,13 +107,14 @@ ja: other: "アスペクト%{count}集" seed: family: "家族" + friends: "友達" work: "仕事" show: edit_aspect: "アスペクトを編集する" two: "%{count} aspects" update: failure: "アスペクト名「%{name}」は長すぎて保存できませんでした。" - success: "アスペクト「%{name}」の編集するのに成功しました。" + success: "アスペクト「%{name}」の編集に成功しました。" zero: "アスペクト無し" back: "前へ" bookmarklet: @@ -130,19 +131,22 @@ ja: commenting: "コメント投稿中…" one: "コメント1件" other: "コメント%{count}件" - two: "%{count} comments" + two: "コメント%{count}件" zero: "コメントがありません" contacts: create: - failure: "連絡先を作成するのに失敗しました。" + failure: "連絡先の作成に失敗しました。" few: "連絡先%{count}件" index: + add_a_new_aspect: "新しいアスペクトを追加する" add_to_aspect: "Add contacts to %{name}" + all_contacts: "全ての連絡先" no_contacts: "No contacts." + title: "連絡先" many: "連絡先%{count}件" one: "連絡先1件" other: "連絡先%{count}件" - two: "%{count} contacts" + two: "連絡先%{count}件" zero: "連絡先無し" conversations: create: @@ -155,7 +159,6 @@ ja: many: "新着メッセージ%{count}通" one: "新着メッセージ1通" other: "新着メッセージ%{count}通" - two: "%{count} new messages" zero: "新着メッセージ無し" index: create_a_new_message: "新しいメッセージを作成する" @@ -166,11 +169,13 @@ ja: no_messages: "メッセージがありません" new: send: "送信する" + sending: "送信中…" subject: "件名" to: "宛先" show: delete: "会話を削除して、ブロックする" reply: "返信" + replying: "返信中..." date: formats: birthday: "%m月%d日" @@ -224,21 +229,18 @@ ja: many: "これが嫌いな人:%{count}人" one: "これが嫌いな人:1人" other: "これが嫌いな人:%{count}人" - two: "%{count} dislikes" zero: "これが嫌いな人:0人" people_like_this: few: "これが好きな人:%{count}人" many: "これが好きな人:%{count}人" one: "これが好きな人:1人" other: "これが好きな人:%{count}人" - two: "%{count} likes" zero: "これが好きな人:0人" people_like_this_comment: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" more: "続き" next: "次へ" @@ -249,21 +251,18 @@ ja: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -271,7 +270,6 @@ ja: many: "新着通知%{count}件" one: "新着通知1件" other: "新着通知%{count}件" - two: "%{count} new notifications" zero: "新着通知無し" index: and: "又は" @@ -280,7 +278,6 @@ ja: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" mark_all_as_read: "全件を既読にする" notifications: "通知" @@ -289,28 +286,24 @@ ja: many: "%{actors} has just liked your %{post_link}." one: "%{actors} has just liked your %{post_link}." other: "%{actors} has just liked your %{post_link}." - two: "%{actors} has just liked your %{post_link}." zero: "%{actors} has just liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." post: "(投稿で)" private_message: @@ -318,28 +311,24 @@ ja: many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} has reshared your %{post_link}." many: "%{actors} has reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} has reshared your %{post_link}." - two: "%{actors} has reshared your %{post_link}." zero: "%{actors} has reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: confirm_email: @@ -411,6 +400,7 @@ ja: fail: "%{handle}が見つかりませんでした。" zero: "連絡先無し" photos: + comment_email_subject: "%{name}さんの写真" create: integrity_error: "写真のアップロードに失敗しました。確かに画像ファイルだったのでしょうか。" runtime_error: "写真のアップロードに失敗しました。シートベルトはしっかりとお締めでしょうか。" @@ -443,12 +433,12 @@ ja: notice: "写真の更新に成功しました。" posts: show: + destroy: "削除" photos_by: few: "%{count} photos by %{author}" many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" previous: "前へ" profile: "プロフィール" @@ -477,7 +467,6 @@ ja: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: closed: "このダイアスポラ*ポッドでは新規登録を受け付けていません。" @@ -511,7 +500,6 @@ ja: many: "新リクエスト%{count}件!" one: "新リクエスト!" other: "新リクエスト%{count}件!" - two: "%{count} new requests!" zero: "新リクエスト無し" manage_aspect_contacts: existing: "現在の連絡先" @@ -525,7 +513,6 @@ ja: many: "%{count} Reshares" one: "1 Reshare" other: "%{count} Reshares" - two: "%{count} reshares" zero: "Reshare" reshare_confirmation: "Reshare %{author} - %{text}?" reshare_original: "Reshare orignial" @@ -533,6 +520,7 @@ ja: search: "検索" services: create: + failure: "認証に失敗しました。" success: "認証に成功しました。" destroy: success: "認証を削除するのに成功しました。" @@ -540,6 +528,7 @@ ja: error: "サービスへ接続中にエラーが発生しました。" index: connect_to_facebook: "Facebookに接続する" + connect_to_tumblr: "Tumblrに接続する" connect_to_twitter: "ツイッターに接続する" disconnect: "切断" edit_services: "サービスを編集する" @@ -566,7 +555,6 @@ ja: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" contact_list: all_contacts: "全ての連絡先" @@ -622,7 +610,6 @@ ja: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: hide_comments: "コメントを非表示にする" @@ -631,7 +618,6 @@ ja: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/ka.yml b/config/locales/diaspora/ka.yml index 7498a7a1b..31231943a 100644 --- a/config/locales/diaspora/ka.yml +++ b/config/locales/diaspora/ka.yml @@ -227,7 +227,6 @@ ka: many: "%{count} new messages" one: "1 new messages" other: "%{count} new messages" - two: "%{count} new messages" zero: "No new messages" index: create_a_new_message: "შექმენი ახალი წერილი" @@ -313,7 +312,6 @@ ka: many: "%{count} dislikes" one: "%{count} dislike" other: "%{count} dislikes" - two: "%{count} dislikes" zero: "no dislikes" people_like_this: other: "%{count} მოწონება" @@ -323,7 +321,6 @@ ka: many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" limited: "შეზღუდული" more: "მეტი" @@ -335,21 +332,18 @@ ka: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -357,7 +351,6 @@ ka: many: "%{count} new notifications" one: "1 new notification" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "No new notifications" index: and: "და" @@ -366,7 +359,6 @@ ka: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" mark_all_as_read: "ყველას წაკითხულად მონიშვნა" notifications: "შეტყობინებები" @@ -375,28 +367,24 @@ ka: many: "%{actors} have liked your %{post_link}." one: "%{actors} has liked your %{post_link}." other: "%{actors} have liked your %{post_link}." - two: "%{actors} have liked your %{post_link}." zero: "%{actors} have liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} have mentioned you in a %{post_link}." many: "%{actors} have mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} have mentioned you in a %{post_link}." - two: "%{actors} have mentioned you in a %{post_link}." zero: "%{actors} have mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." post: "გამოქვეყნება" private_message: @@ -404,28 +392,24 @@ ka: many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} have reshared your %{post_link}." many: "%{actors} have reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} have reshared your %{post_link}." - two: "%{actors} have reshared your %{post_link}." zero: "%{actors} have reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: a_post_you_shared: "პოსტი." @@ -561,7 +545,6 @@ ka: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" reshare_by: "თავიდან გამოქვეყნება by %{author}" previous: "წინა" @@ -596,7 +579,6 @@ ka: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: closed: "რეგისტრაცია დახურულია დიასპორას ამ პოდზე." @@ -633,7 +615,6 @@ ka: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" manage_aspect_contacts: existing: "არსებული კონტაქტები" @@ -651,7 +632,6 @@ ka: many: "%{count} reshares" one: "1 reshare" other: "%{count} reshares" - two: "%{count} reshares" zero: "Reshare" reshare_confirmation: "გსურს %{author}-ს პოსტის თავიდან გაზიარება?" reshare_original: "ორიგინალის თავიდან გაზიარება" @@ -706,7 +686,6 @@ ka: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add contact" contact_list: all_contacts: "ყველა კონტაქტი" @@ -773,7 +752,6 @@ ka: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: hide_comments: "დამალე ყველა კომენატარი" @@ -782,7 +760,6 @@ ka: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/ko.yml b/config/locales/diaspora/ko.yml index 385ce3302..f9ae8e485 100644 --- a/config/locales/diaspora/ko.yml +++ b/config/locales/diaspora/ko.yml @@ -284,7 +284,6 @@ ko: many: "새 쪽지 %{count}개" one: "새 쪽지 한 개" other: "새 쪽지 %{count}개" - two: "새 쪽지 %{count}개" zero: "새 쪽지 없음" index: create_a_new_message: "쪽지 보내기" @@ -404,7 +403,6 @@ ko: many: "새 알림 %{count}개" one: "새 알림 한 개" other: "새 알림 %{count}개" - two: "새 알림 %{count}개" zero: "새 알림 없음" index: and: "그리고" @@ -418,7 +416,6 @@ ko: many: "%{actors}님이 내 %{post_link}을 좋아합니다." one: "%{actors}님이 내 %{post_link}을 좋아합니다." other: "%{actors}님이 내 %{post_link}을 좋아합니다" - two: "%{actors}님이 %{post_link} 게시물을 좋아합니다." zero: "%{actors}님이 내 %{post_link}을 좋아합니다" liked_post_deleted: other: "%{actors}님이 내가 지운 게시물을 좋아합니다." @@ -428,14 +425,12 @@ ko: many: "%{actors}님이 %{post_link}에서 나를 멘션했습니다." one: "%{actors}님이 %{post_link}에서 나를 멘션했습니다!" other: "%{actors}님이 %{post_link}에서 나를 멘션했습니다." - two: "%{actors}님이 %{post_link} 게시물에서 나를 멘션했습니다." zero: "%{actors}님이 %{post_link}에서 나를 멘션했습니다." mentioned_deleted: few: "%{actors}님이 지워진 게시물에서 나를 멘션했습니다." many: "%{actors}님이 지워진 게시물에서 나를 멘션했습니다." one: "%{actors}님이 지워진 게시물에서 나를 멘션했습니다." other: "%{actors}님이 지워진 게시물에서 나를 멘션했습니다." - two: "%{actors}님이 지워진 게시물에서 나를 멘션했습니다." zero: "%{actors}님이 지워진 게시물에서 나를 멘션했습니다." post: "게시물" private_message: @@ -443,7 +438,6 @@ ko: many: "%{actors}님이 쪽지를 보냈습니다." one: "%{actors}님이 쪽지를 보냈습니다." other: "%{actors}님이 쪽지를 보냈습니다." - two: "%{actors}님이 내게 쪽지를 보냈습니다." zero: "%{actors}님이 쪽지를 보냈습니다." reshared: other: "%{actors}님이 내 %{post_link}을 재공유했습니다." @@ -453,14 +447,12 @@ ko: many: "%{actors}님이 내가 지운 게시물을 재공유했습니다." one: "%{actors}님이 내가 지운 게시물을 재공유했습니다." other: "%{actors}님이 내가 지운 게시물을 재공유했습니다." - two: "%{actors}님이 내가 지운 게시물을 재공유했습니다." zero: "%{actors}님이 내가 지운 게시물을 재공유했습니다." started_sharing: few: "%{actors}님이 나와 공유를 시작했습니다." many: "%{actors}님이 나와 공유를 시작했습니다." one: "%{actors}님이 나와 공유를 시작했습니다." other: "%{actors}님이 나와 공유를 시작했습니다." - two: "%{actors}님이 나와 공유를 시작했습니다." zero: "%{actors}님이 나와 공유를 시작했습니다." notifier: a_post_you_shared: "게시물" @@ -619,7 +611,6 @@ ko: many: "%{author}님의 사진 %{count}장" one: "%{author}님의 사진 한 장" other: "%{author}님의 사진 %{count}장" - two: "%{author}님의 사진 두 장" zero: "%{author}님의 사진 없음" reshare_by: "%{author}님이 재공유" previous: "이전" @@ -654,7 +645,6 @@ ko: many: "반응 %{count}개" one: "반응 한 개" other: "반응 %{count}개" - two: "반응 %{count}개" zero: "반응 %{count}개" registrations: closed: "우리 디아스포라 팓은 가입이 닫혀있습니다." @@ -697,7 +687,6 @@ ko: many: "요청이 %{count}개 들어왔습니다!" one: "요청이 한 개 들어왔습니다!" other: "요청이 %{count}개 들어왔습니다!" - two: "새 요청이 %{count}개 있습니다!" zero: "요청 없음" manage_aspect_contacts: existing: "기존 컨택" @@ -715,7 +704,6 @@ ko: many: "재공유 %{count}번" one: "재공유 한 번" other: "재공유 %{count}번" - two: "재공유 %{count}개" zero: "재공유" reshare_confirmation: "%{author}님의 %{text} 게시물을 재공유하시겠습니까?" reshare_original: "원본 재공유" @@ -849,7 +837,6 @@ ko: many: "댓글 %{count}개 더 보기" one: "댓글 한 개 더 보기" other: "댓글 %{count}개 더 보기" - two: "댓글 두 개 더 보기" zero: "댓글이 더 없습니다" streams: activity: diff --git a/config/locales/diaspora/mk.yml b/config/locales/diaspora/mk.yml index 9b62513dc..14344a094 100644 --- a/config/locales/diaspora/mk.yml +++ b/config/locales/diaspora/mk.yml @@ -94,7 +94,6 @@ mk: many: "%{count} new messages" one: "1 new messages" other: "%{count} new messages" - two: "%{count} new messages" zero: "no new messages" delete: "Избриши" email: "Е-маил" @@ -133,21 +132,18 @@ mk: many: "%{count} people disliked this" one: "1 person disliked this" other: "%{count} people disliked this" - two: "%{count} dislikes" zero: "no people disliked this" people_like_this: few: "%{count} people liked this" many: "%{count} people liked this" one: "1 person liked this" other: "%{count} people liked this" - two: "%{count} likes" zero: "no people liked this" people_like_this_comment: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" notifications: also_commented: @@ -155,21 +151,18 @@ mk: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -177,7 +170,6 @@ mk: many: "%{count} new notifications" one: "1 new notifications" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "no new notifications" index: and_others: @@ -185,63 +177,54 @@ mk: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" liked: few: "%{actors} has just liked your %{post_link}." many: "%{actors} has just liked your %{post_link}." one: "%{actors} has just liked your %{post_link}." other: "%{actors} has just liked your %{post_link}." - two: "%{actors} has just liked your %{post_link}." zero: "%{actors} has just liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." private_message: few: "%{actors} sent you a message." many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} has reshared your %{post_link}." many: "%{actors} has reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} has reshared your %{post_link}." - two: "%{actors} has reshared your %{post_link}." zero: "%{actors} has reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: confirm_email: @@ -320,7 +303,6 @@ mk: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" profile: "Профил" profiles: @@ -332,7 +314,6 @@ mk: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: closed: "Регистрирањето е затворено." @@ -362,7 +343,6 @@ mk: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" manage_aspect_contacts: existing: "Постоечки контакти" @@ -376,7 +356,6 @@ mk: many: "%{count} Reshares" one: "1 Reshare" other: "%{count} Reshares" - two: "%{count} reshares" zero: "Reshare" reshare_confirmation: "Reshare %{author} - %{text}?" reshare_original: "Reshare orignial" @@ -409,7 +388,6 @@ mk: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" invitations: by_email: "by Email" @@ -449,7 +427,6 @@ mk: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: hide_comments: "hide comments" @@ -458,7 +435,6 @@ mk: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/ml.yml b/config/locales/diaspora/ml.yml index 076302843..ebe45687d 100644 --- a/config/locales/diaspora/ml.yml +++ b/config/locales/diaspora/ml.yml @@ -255,7 +255,6 @@ ml: many: "%{count} പുതിയ സന്ദേശങ്ങള്" one: "ഒരു പുതിയ സന്ദേശം" other: "%{count} പുതിയ സന്ദേശങ്ങള്" - two: "%{count} new messages" zero: "പുതിയ സന്ദേശങ്ങളില്ല" index: create_a_new_message: "പുതിയ സന്ദേശം ഉണ്ടാക്കുക" @@ -358,21 +357,18 @@ ml: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -380,7 +376,6 @@ ml: many: "%{count} new notifications" one: "1 new notifications" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "No new notifications" index: and: "കൂടാതെ" @@ -389,7 +384,6 @@ ml: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" mark_all_as_read: "എല്ലാം വായിച്ചതായി അടയാളപ്പെടുത്തുക" mark_unread: "\"വായിച്ചിട്ടില്ല\" എന്ന് രേഖപ്പെടുത്തുക" @@ -399,28 +393,24 @@ ml: many: "%{actors} has just liked your %{post_link}." one: "%{actors} has just liked your %{post_link}." other: "%{actors} has just liked your %{post_link}." - two: "%{actors} have liked your %{post_link}." zero: "%{actors} has just liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} have mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." post: "post" private_message: @@ -428,28 +418,24 @@ ml: many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} have reshared your %{post_link}." many: "%{actors} have reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} have reshared your %{post_link}." - two: "%{actors} have reshared your %{post_link}." zero: "%{actors} have reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: a_post_you_shared: "a post." @@ -609,7 +595,6 @@ ml: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" reshare_by: "Reshare by %{author}" previous: "മുന്പത്തെ" @@ -679,7 +664,6 @@ ml: many: "%{count} പുതിയ അപേക്ഷകള്!" one: "ഒരു പുതിയ അപേക്ഷ!" other: "%{count} പുതിയ അപേക്ഷകള്!" - two: "%{count} new requests!" zero: "പുതിയ അപേക്ഷയൊന്നുമില്ല" manage_aspect_contacts: existing: "നിലവിലുള്ള സമ്പര്ക്കങ്ങള്" @@ -697,7 +681,6 @@ ml: many: "%{count} reshares" one: "1 reshare" other: "%{count} reshares" - two: "%{count} reshares" zero: "Reshare" reshare_confirmation: "Reshare %{author}'s post?" reshare_original: "Reshare original" @@ -753,7 +736,6 @@ ml: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add contact" contact_list: all_contacts: "എല്ലാ സമ്പര്ക്കവും" @@ -828,7 +810,6 @@ ml: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: hide_comments: "Hide all comments" @@ -837,7 +818,6 @@ ml: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: activity: diff --git a/config/locales/diaspora/ms.yml b/config/locales/diaspora/ms.yml index 068497850..f8e69ae19 100644 --- a/config/locales/diaspora/ms.yml +++ b/config/locales/diaspora/ms.yml @@ -141,7 +141,6 @@ ms: many: "%{count} new messages" one: "1 new messages" other: "%{count} new messages" - two: "%{count} new messages" zero: "Tiada mesej baru" index: create_a_new_message: "membuat mesej baru" @@ -195,21 +194,18 @@ ms: many: "%{count} dislikes" one: "%{count} dislike" other: "%{count} dislikes" - two: "%{count} dislikes" zero: "no dislikes" people_like_this: few: "%{count} likes" many: "%{count} suka" one: "%{count} suka" other: "%{count} suka" - two: "%{count} suka" zero: "tiada suka" people_like_this_comment: few: "%{count} suka" many: "%{count} suka" one: "%{count} suka" other: "%{count} suka" - two: "%{count} likes" zero: "tiada suka" limited: "Terhad" more: "lebih banyak" @@ -221,21 +217,18 @@ ms: many: "%{actors} juga mengulas mengenai %{post_author}'s %{post_link}." one: "%{actors} juga mengulas mengenai %{post_author}'s %{post_link}." other: "%{actors} juga mengulas mengenai %{post_author}'s %{post_link}." - two: "%{actors} juga mengulas mengenai %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -243,7 +236,6 @@ ms: many: "%{count} new notifications" one: "1 new notification" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "No new notifications" index: and: "dan" @@ -252,7 +244,6 @@ ms: many: "dan %{count} lain-lain" one: "dan satu lagi" other: "dan %{count} lain-lain" - two: "dan %{count} lain-lain" zero: "dan tiada siapa lagi" mark_all_as_read: "Tandakan Semua sebagai Sudah Baca" notifications: "Pemberitahuan" @@ -261,56 +252,48 @@ ms: many: "%{actors} telah menyukai anda %{post_link}." one: "%{actors} telah menyukai anda %{post_link}." other: "%{actors} telah menyukai anda %{post_link}." - two: "%{actors} telah menyukai anda %{post_link}." zero: "%{actors} telah menyukai anda %{post_link}." liked_post_deleted: few: "%{actors} suka pos yang dihapuskan anda." many: "%{actors} suka pos yang dihapuskan anda." one: "%{actors} suka pos yang dihapuskan anda." other: "%{actors} suka pos yang dihapuskan anda." - two: "%{actors} suka pos yang dihapuskan anda." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} have mentioned you in a %{post_link}." many: "%{actors} have mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} have mentioned you in a %{post_link}." - two: "%{actors} have mentioned you in a %{post_link}." zero: "%{actors} have mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." private_message: few: "%{actors} sent you a message." many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} telah berkongsi semula dengan anda %{post_link}." many: "%{actors} have reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} telah berkongsi semula %{post_link} anda." - two: "%{actors} telah berkongsi semula %{post_link} anda." zero: "%{actors} telah berkongsi semula %{post_link} anda." reshared_post_deleted: few: "%{actors} berkongsi semula pos yang dihapuskan anda." many: "%{actors} berkongsi semula pos yang dihapuskan anda." one: "%{actors} berkongsi semula pos yang dihapuskan anda." other: "%{actors} berkongsi semula pos yang dihapuskan anda." - two: "%{actors} berkongsi semula pos yang dihapuskan anda." zero: "%{actors} berkongsi semula pos yang dihapuskan anda." started_sharing: few: "%{actors} mula berkongsi dengan anda." many: "%{actors} mula berkongsi dengan anda." one: "%{actors} mula berkongsi dengan anda." other: "%{actors} mula berkongsi dengan anda." - two: "%{actors} mula berkongsi dengan anda." zero: "%{actors} mula berkongsi dengan anda." notifier: a_post_you_shared: "pos." @@ -363,14 +346,12 @@ ms: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" reactions: few: "%{count} reactions" many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" requests: helper: @@ -379,7 +360,6 @@ ms: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" reshares: reshare: @@ -388,7 +368,6 @@ ms: many: "%{count} reshares" one: "1 reshare" other: "%{count} reshares" - two: "%{count} reshares" zero: "Reshare" shared: aspect_dropdown: @@ -397,7 +376,6 @@ ms: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add contact" status_messages: too_long: @@ -405,7 +383,6 @@ ms: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: show_comments: @@ -413,7 +390,6 @@ ms: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/nb.yml b/config/locales/diaspora/nb.yml index f93701044..46ee18fbe 100644 --- a/config/locales/diaspora/nb.yml +++ b/config/locales/diaspora/nb.yml @@ -42,21 +42,35 @@ nb: taken: "er allerede tatt." admins: admin_bar: + correlations: "Korrellert med" pages: "Sider" + pod_stats: "Pod statistikk" + resque_overview: "Resque oversikt" user_search: "Brukersøk" weekly_user_stats: "Ukentlig brukerstatistikk" + correlations: + correlations_count: "Korrellasjoner med pålogget antall" stats: 2weeks: "To uker" + 50_most: "femti mest populære tag'er" comments: one: "%{count} kommentarer" other: "%{count} kommentarer" zero: "%{count} kommentarer" + current_segment: "Dette segmentet er et snitt av <b>%{post_yest}</b> posteringer per bruker, fra og med <b>%{post_day}</b>" daily: "Daglig" + display_results: "Viser resultatene fra det <b>%{segment}</b> segmentet" + go: "fortsett" month: "Måned" posts: one: "%{count} post" other: "%{count} poster" zero: "%{count} poster" + shares: + one: "%{count} deling" + other: "%{count} delinger" + zero: "%{count} delinger" + tag_name: "Tag-navn: <b>%{name_tag}</b> antall <b>%{count_tag}</b>" usage_statistic: "Bruksstatistikk" users: one: "%{count} bruker" @@ -64,6 +78,8 @@ nb: zero: "%{count} brukere" week: "Uke" user_search: + add_invites: "legg til invitasjoner" + email_to: "E-post for invitasjon" users: one: "%{count} bruker funnet" other: "%{count} brukere funnet" @@ -74,6 +90,7 @@ nb: one: "Antall nye brukere denne uken: %{count}" other: "Antall nye brukere denne uken: %{count}" zero: "Antall nye brukere denne uken: ingen" + current_server: "Dagens server-dato er %{date}" ago: "%{time} siden" all_aspects: "Alle aspekter" application: @@ -83,6 +100,7 @@ nb: video_title: unknown: "Ukjent Videotittel" are_you_sure: "Er du sikker?" + are_you_sure_delete_account: "Er du sikker på at du vil avslutte eller lukke din konto? Dette kan ikke angres!" aspect_memberships: destroy: failure: "Kunne ikke fjerne person fra aspekt" @@ -96,9 +114,11 @@ nb: done_editing: "fullfør" aspect_listings: add_an_aspect: "+ Lag et nytt aspekt" + deselect_all: "Fjern alle valg" edit_aspect: "Rediger %{name}" select_all: "Velg alle" aspect_stream: + make_something: "Lag noe" stay_updated: "Hold deg oppdatert" stay_updated_explanation: "Din hovedstrøm viser alle kontaktene dine, tags du følger, og innlegg fra noen kreative medlemmer i felleskapet. " contacts_not_visible: "Kontakter i dette aspektet vil ikke kunne se hverandre." @@ -137,18 +157,28 @@ nb: donate: "Doner" handle_explanation: "This is your diaspora handle. Like an email address, you can give this to people to reach you." help: + any_problem: "Noen problemer?" + contact_podmin: "Kontakt administratoren til din \"pod\"!" do_you: "Har du:" + email_feedback: "%{link} gi tilbakemelding, om du har lyst" + email_link: "E-post" feature_suggestion: "et %{link}-forslag?" - find_a_bug: "funnet en %{link}?" + find_a_bug: "... finn en %{link}?" have_a_question: "et %{link}?" - here_to_help: "Diaspora community is here to help!" + here_to_help: "Diaspora-felleskapet er her!" + mail_podmin: "Podmin e-post" need_help: "Trenger du hjelp?" tag_bug: "#bug" - tag_feature: "#feature" + tag_feature: "funksjon" tag_question: "#question" + tutorials_wiki_and_forum: "%{tutorial} & %{wiki} & %{forum}: Fellesskapets leksjoner, veiledninger og nyheter." introduce_yourself: "Dette er strømmen din. Hopp inn og presenter deg selv." + keep_diaspora_running: "Sørg for Diasporautvikling går hurtig ved å gi en månedlig donasjon!" + keep_pod_running: "Sørg for at %{pod} går kjapt ved å kjøpe kaffe-fiks til dem med en månedlig donasjon!" new_here: + follow: "Følg denne %{link} og ønsk nye brukere velkommen til Diaspora*" learn_more: "Lær mer" + title: "Ønsk nye brukere velkommen" no_contacts: "Ingen kontakter" no_tags: "No tags" people_sharing_with_you: "Folk som deler med deg" @@ -168,7 +198,9 @@ nb: name: "Navn" no_contacts_message: community_spotlight: "kreative medlemmer" + or_spotlight: "Eller du kan dele med denne %{link}" try_adding_some_more_contacts: "You can search (top) or invite (right) more contacts." + you_should_add_some_more_contacts: "Du bør legge til flere kontakter." no_posts_message: start_talking: "Ingen har sagt noe enda!" one: "1 aspekt" @@ -196,10 +228,15 @@ nb: revoke_access: "Trekk tilbake tilgangen" new: authorize: "Autoriser" + cubbies_will: "Cubbies kan laste fotoer på dine vegne" nope: "Nei" back: "Tilbake" blocks: + create: + failure: "Jeg klarte ikke å ignorere den brukeren. #evasion" + success: "Javel, du kommer ikke til å se denne brukeren i din innholdsstrøm i fremtiden. #silencio!" destroy: + failure: "Jeg klarte ikke å slutte å ignorere den brukeren. #evasion" success: "La oss se hva de har å si! #sihallo" bookmarklet: explanation: "%{link} fra hvor som helst ved å bokmerke denne linken." @@ -223,8 +260,8 @@ nb: few: "%{count} kontakter" index: add_a_new_aspect: "Legg til nytt aspekt" - add_to_aspect: "Add contacts to %{name}" - add_to_aspect_link: "Legg kontakter til i %{name}" + add_to_aspect: "Legg kontakter til %{name}" + add_to_aspect_link: "Legg kontakter til %{name}" all_contacts: "Alle kontakter" community_spotlight: "Kreative Medlemmer" many_people_are_you_sure: "Er du sikker på at du vil starte en privat samtale med flere enn %{suggested_limit} kontakter? Det kan være bedre å poste dette som et innlegg til dette aspektet. " @@ -244,11 +281,13 @@ nb: people_sharing: "Folk som deler med deg:" spotlight: community_spotlight: "kreative medlemmer" + suggest_member: "Forslå et nytt medlem" two: "%{count} kontakter" zero: "ingen kontakter" conversations: create: fail: "Ugyldig melding" + no_contact: "Heisan, du må legge til kontakten først." sent: "Melding sendt" destroy: success: "Samtale fjernet" @@ -258,7 +297,6 @@ nb: many: "%{count} nye meldinger" one: "1 ny melding" other: "%{count} nye meldinger" - two: "%{count} nye beskjeder" zero: "ingen nye meldinger" index: create_a_new_message: "skriv en ny melding" @@ -268,6 +306,7 @@ nb: no_conversation_selected: "ingen samtaler valgt" no_messages: "ingen meldinger" new: + abandon_changes: "Forkaste endringene?" send: "Send" sending: "Sender..." subject: "emne" @@ -289,27 +328,42 @@ nb: helper: correct_the_following_errors_and_try_again: "Rett opp de følgende feilene og prøv igjen." invalid_fields: "Ugyldige felter" + login_try_again: "Vennligst <a href=%{login_link}>logg på</a> og forsøk igjen." + post_not_public: "Innholdet som du forsøker å titte på er ikke alment tilgjengelig!" fill_me_out: "Fortell meg" find_people: "Find people" hide: "Skjul" + invitation_codes: + excited: "%{name} ble glad for å se deg her." invitations: a_facebook_user: "En Facebook-bruker" + check_token: + not_found: "Invitasjonsnøkkelen finnes ikke" create: already_contacts: "Du er allerede tilknyttet denne personen" already_sent: "Du har allerede invitert denne personen." + empty: "Vennligst angi i hvertfall en e-post adresse" no_more: "Du har ikke flere invitasjoner." + note_already_sent: "Invitasjoner har blitt sendt til: %{emails}" own_address: "Du kan ikke sende invitasjoner til din egen adresse." rejected: "Følgende e-postadresser hadde problemer:" sent: "Invitasjoner har blitt sendt til:" edit: accept_your_invitation: "Godta invitasjonen din" + your_account_awaits: "Kontoen din er klar!" new: already_invited: "Allerede innvitert" aspect: "Aspekt" check_out_diaspora: "Sjekk ut Diaspora!" + codes_left: + one: "En invitasjon er igjen med denne koden" + other: "%{count} invitasjoner er igjen med denne koden" + zero: "Ingen flere invitasjoner kan gjøres med denne koden" + comma_separated_plz: "Du kan skrive inn flere e-post adresser adskilt med komma." if_they_accept_info: "Hvis de aksepterer, vil de bli lagt til i aspektet du valgte." invite_someone_to_join: "Inviter noen til Diaspora!" language: "Språk" + paste_link: "Del denne lenken med vennene dine for å invitere dem til Diaspora* eller send e-post til dem med lenken direkte." personal_message: "Personlig melding" resend: "Send på nytt" send_an_invitation: "Send en invitasjon" @@ -341,21 +395,18 @@ nb: many: "%{count} personer misliker dette" one: "1 person misliker dette" other: "%{count} personer misliker dette" - two: "%{count} misliker dette" zero: "ingen misliker dette" people_like_this: few: "%{count} personer liker dette" many: "%{count} personer liker dette" one: "1 person liker dette" other: "%{count} personer liker dette" - two: "%{count} liker dette" zero: "ingen liker dette" people_like_this_comment: few: "%{count} liker" many: "%{count} liker" one: "%{count} liker" other: "%{count} liker" - two: "%{count} liker dette" zero: "ingen liker" limited: "Begrenset" more: "Mer" @@ -367,21 +418,18 @@ nb: many: "%{actors} kommenterte også på %{post_author}s %{post_link}." one: "%{actors} kommenterte også på %{post_author}s %{post_link}." other: "%{actors} har også kommentert på %{post_author}'s %{post_link}." - two: "%{actors} kommenterte også %{post_author}s %{post_link}." zero: "%{actors} har også kommentert på %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} kommenterte på en slettet post." many: "%{actors} kommenterte på en slettet post." one: "%{actors} kommenterte på en slettet post." other: "%{actors} kommenterte på en slettet post." - two: "%{actors} kommenterte en slettet post." zero: "%{actors} kommenterte på en slettet post." comment_on_post: few: "%{actors} kommenterte på din %{post_link}." many: "%{actors} kommenterte på din %{post_link}." one: "%{actors} kommenterte på din %{post_link}." other: "%{actors} kommenterte på din %{post_link}." - two: "%{actors} kommenterte din %{post_link}." zero: "%{actors} kommenterte på din %{post_link}." helper: new_notifications: @@ -389,7 +437,6 @@ nb: many: "%{count} nye varsler" one: "1 nytt varsel" other: "%{count} nye varsler" - two: "%{count} nye varsler" zero: "ingen nye varsler" index: and: "og" @@ -398,7 +445,6 @@ nb: many: "og %{count} andre" one: "og en annen" other: "og %{count} andre" - two: "og %{count} andre" zero: "og ingen andre" mark_all_as_read: "Merk alle som leste" mark_unread: "Merk som ulest" @@ -412,7 +458,6 @@ nb: many: "%{actors} likte ditt innlegg du har slettet." one: "%{actors} likte ditt innlegg du har slettet." other: "%{actors} likte ditt innlegg du har slettet." - two: "%{actors} likte din slettede post." zero: "%{actors} likte ditt innlegg du har slettet." mentioned: one: "%{actors} har nevnt deg i en %{post_link}." @@ -423,7 +468,6 @@ nb: many: "%{actors} nevnte deg i en slettet post." one: "%{actors} nevnte deg i en slettet post." other: "%{actors} nevnte deg i en slettet post." - two: "%{actors} nevnte deg i en slettet post." zero: "%{actors} nevnte deg i en slettet post." post: "innlegg" private_message: @@ -431,7 +475,6 @@ nb: many: "%{actors} sendte deg en melding." one: "%{actors} sendte deg en melding." other: "%{actors} sendte deg en melding." - two: "%{actors} sendte deg en melding." zero: "%{actors} sendte deg en melding." reshared: one: "%{actors} har delt din %{post_link}." @@ -442,7 +485,6 @@ nb: many: "%{actors} har delt innlegget du slettet." one: "%{actors} har delt innlegget du slettet." other: "%{actors} har delt innlegget du slettet." - two: "%{actors} delte din slettede post." zero: "%{actors} har delt innlegget du slettet." started_sharing: one: "%{actors} har begynt å dele med deg." @@ -529,6 +571,7 @@ nb: pending_request: "Venter på svar" thats_you: "Det er deg!" profile_sidebar: + bio: "mitt livsløp (bio)" born: "født" edit_my_profile: "Endre profilen min" gender: "kjønn" @@ -537,7 +580,9 @@ nb: remove_contact: "fjern kontakt" remove_from: "Fjern %{name} fra %{aspect}?" show: + closed_account: "Denne kontoen har blitt avsluttet." does_not_exist: "Personen eksisterer ikke!" + has_not_shared_with_you_yet: "%{name} har ikke delt noe med deg enda." ignoring: "Du ignorerer innlegg fra %{name}." incoming_request: "You have an incoming request from this person." mention: "Nevn" @@ -558,6 +603,7 @@ nb: fail: "Beklager, vi kunne ikke finne %{handle}." zero: "ingen personer" photos: + comment_email_subject: "%{name} sitt foto" create: integrity_error: "Bildeopplastning mislyktes. Er du sikker på det var et bilde?" runtime_error: "Bildeopplastning mislyktes. Har du festet sikkerhetsbeltet?" @@ -596,12 +642,15 @@ nb: show: destroy: "Slett" not_found: "Beklager, vi fant ikke det inlegget. " + permalink: "permalenke" photos_by: one: "Et bilde av %{author}" other: "%{count} bilder av %{author}" zero: "Ingen bilder av %{author}" + reshare_by: "Delt videre av %{author}" previous: "forrige" privacy: "Personvern" + privacy_policy: "Personvernspolise" profile: "Profil" profiles: edit: @@ -610,6 +659,8 @@ nb: first_name: "Fornavn" last_name: "Etternavn" update_profile: "Oppdater Profil" + you_are_nsfw: "Du har merket innholdet ditt som 'ikke passende' og det vil skjules for folk som ikke ønsker å se potensielt støtende innhold i strømmen." + you_are_safe_for_work: "Du har merket innholdet ditt som 'passende for alle formål', dette betyr at du bekrefter at innholdet i det du legger ut samsvarer med de sosiale retningslinjene for dette nettstedet." your_bio: "Om meg" your_birthday: "Din Fødselsdato" your_gender: "Ditt kjønn" @@ -629,7 +680,6 @@ nb: many: "%{count} reaksjoner" one: "1 reaksjon" other: "%{count} reaksjoner" - two: "%{count} reaksjoner" zero: "0 reaksjoner" registrations: closed: "Registreringer er stengt på denne Diaspora poden." @@ -642,14 +692,21 @@ nb: password_to_confirm: "(vi trenger ditt nåværende passord for å bekrefte endringene)" unhappy: "Ulykkelig?" update: "Oppdater" + invalid_invite: "Invitasjonslenken som du anga er ikke gyldig lenger!" new: continue: "Fortsett" create_my_account: "Create my account" + diaspora: "<3 Diaspora*" + email: "E-POST" enter_email: "Skriv en e-post" enter_password: "Skriv inn et passord" enter_password_again: "Skriv inn samme passord som før" enter_username: "Velg et brukernavn (kun bokstaver, nummer og understreker)" + hey_make: "HALLO,<br/>LAG<br/>ET ELLER ANNET." + join_the_movement: "Bli med i nettverket!" password: "PASSORD" + password_confirmation: "PASSORD BEKREFTELSE" + sign_up: "REGISTRER DEG" sign_up_message: "Social Networking with a <3" username: "BRUKERNAVN" requests: @@ -666,7 +723,6 @@ nb: many: "%{count} nye forespørsler!" one: "nye forespørsler!" other: "%{count} nye forespørsler!" - two: "%{count} nye forespørsler!" zero: "ingen nye forespørsler" manage_aspect_contacts: existing: "Eksisterende kontakter" @@ -674,6 +730,7 @@ nb: new_request_to_person: sent: "sendt!" reshares: + comment_email_subject: "%{resharer} sin videredeling av %{author} sitt innhold" create: failure: "Noe gikk galt med å dele dette innlegget." reshare: @@ -692,10 +749,13 @@ nb: already_authorized: "En bruker med diaspora id %{diaspora_id} har alllerede autorisert denne %{service_name} kontoen." failure: "Autentisering gikk galt." success: "Autentisering vellykket." + destroy: + success: "Bekrefter slettet autentisering." failure: error: "feil under tilkobling av tjenesten" finder: fetching_contacts: "Diaspora finner dine %{service} venner, vær så snill og sjekk igjen om noen få minutter." + no_friends: "Ingen Facebook-venner ble funnet." service_friends: "%{service}-venner" index: connect_to_facebook: "Koble til facebook" @@ -711,6 +771,7 @@ nb: join_me_on_diaspora: "Bli med meg på DIASPORA*" remote_friend: invite: "inviter" + not_on_diaspora: "Finnes ikke på Diaspora ennå." resend: "send på nytt" settings: "Innstillinger" share_visibilites: @@ -745,9 +806,11 @@ nb: invite_your_friends: "Innviter vennene dine" invites: "Invitasjoner " invites_closed: "Invites are currently closed on this Diaspora seed" + share_this: "Del denne lenken via e-post, blogg eller favoritt sosialt nettverk!" notification: new: "Ny %{type} fra %{from}" public_explain: + atom_feed: "Atom-strøm" control_your_audience: "Kontrollér ditt publikum" logged_in: "innlogget på %{service}" manage: "behandle tilkoblede tjenester" @@ -759,11 +822,13 @@ nb: publisher: all: "alle" all_contacts: "alle kontakter" + discard_post: "Forkast det innsendte/registrerte" make_public: "gjør offentlig" new_user_prefill: hello: "Hei alle sammen, jeg er #%{new_user_tag}. " i_like: "Jeg er interessert i %{tags}." invited_by: "Takk for invitasjonen, " + newhere: "NyHer" post_a_message_to: "Post et innlegg til %{aspect}" posting: "Poster..." publishing_to: "publiserer til:" @@ -781,9 +846,11 @@ nb: ignore_user: "Ignorér %{name}" ignore_user_description: "Ignorér og fjern bruker fra alle aspekter?" like: "Liker" + nsfw: "Dette innholdet har blitt merket som NSFW av den som har laget det. %{link}" shared_with: "Delt med: %{aspect_names}" show: "vis" unlike: "Liker ikke" + via: "via %{link}" via_mobile: "via mobil" viewable_to_anyone: "Denne posten er synlig for alle på Internett" status_messages: @@ -800,7 +867,6 @@ nb: many: "Du bør begrense statusmeldingene dine til %{count} characters" one: "du bør begrense statusmeldingene dine til %{count} tegn" other: "du må gjøre statusmeldingene dine kortere enn %{count} tegn" - two: "vær så snill og skriv statusoppdateringer som er under %{count} tegn" zero: "Statusmeldinger må være lengre enn ingenting." stream_helper: hide_comments: "skjul kommentarer" @@ -813,19 +879,29 @@ nb: title: "Min aktivitet" aspects: title: "Your Aspects" + aspects_stream: "Aspekter" comment_stream: contacts_title: "Personer hvis poster du har kommentert" title: "Kommenterte poster" + community_spotlight_stream: "Fremhevet av fellesskapet" followed_tag: + add_a_tag: "Legg til en tag" + contacts_title: "Folk som digger disse tag'ene" follow: "Følg" + title: "#Fulgte tag'er" + followed_tags_stream: "Fulgte tag'er" like_stream: contacts_title: "Personer hvis poster du liker" + title: "Liker strøm" + mentioned_stream: "@Mentions" mentions: contacts_title: "Folk som har nevnt deg" title: "Your Mentions" multi: + contacts_title: "Folk i din \"strøm\"" title: "Strøm" public: + contacts_title: "Folk som har lagt ut noe nytt" title: "Offentlig aktivitet" tags: contacts_title: "People who dig these tags" @@ -834,6 +910,7 @@ nb: tag_followings: create: failure: "Failed to follow: #%{name}" + none: "Du kan ikke følge en blank tag" success: "Successfully following: #%{name}" destroy: failure: "Failed to stop following: #%{name}" @@ -844,18 +921,22 @@ nb: followed_by: "fulgt av" following: "Følger #%{tag}" nobody_talking: "Ingen snakker om %{tag} ennå." + none: "Den tomme tag'en eksisterer ikke." people_tagged_with: "Personer tagget med %{tag}" posts_tagged_with: "Innlegg tagget med #%{tag}" stop_following: "Slutt å følge #%{tag}" + terms_and_conditions: "Vilkår og begrensninger" tokens: show: connect_to_cubbies: "Koble til Cubbi.es" connecting_is_simple: "Connecting your Diaspora account is as simple as filling out two fields on your Cubbi.es account page." daniels_account: "Daniels Diasporabruker" love_to_try: "Vi vil veldig gjerne at du skal prøve det." + making_the_connection: "Oppretter koblingen" screenshot_explanation: "%{link1}. Denne cubby-en er lenket til %{link2}." sign_up_today: "Registrer deg nå!" typical_userpage: "En typisk cubbi.es brukerside" + via: "(via %{link})" what_is_cubbies: "Cubbi.es er verdens første Diasporaapplikasjon. Det er også den beste måten å samle bilder på nettet." undo: "Angre?" username: "Brukernavn" @@ -869,22 +950,32 @@ nb: wrong_password: "Passordet du skrev inn er ikke lik ditt nåværende passord." edit: also_commented: " noen andre også kommenterte på din kontakts innlegg?" + auto_follow_aspect: "Aspekt for automatisk fulgte brukere:" auto_follow_back: "Automatically follow back if a someone follows you" change: "Endre" change_email: "Change E-Mail" change_language: "Endre Språk" change_password: "Endre Passord" + character_minimum_expl: "må være minst seks tegn" close_account: + dont_go: "Hei hei - ikke forsvinn nå!" + if_you_want_this: "Om du virkelig ønsker dette så skriv inn passordet ditt under og klikk på 'Avslutt Konto'" lock_username: "Dette vil reservere brukernavnet ditt hvis du bestemmer deg for å registrere deg igjen." + locked_out: "Du kommer til å bli avlogget og låst ute fra din konto" + make_diaspora_better: "Vi ønsker at du hjelper oss å gjøre Diaspora bedre, så det hadde vært fint om du hjalp oss i stedet for å forlate oss. Hvis du allikevel ønsker å forsvinne så vil vi gjerne at du skal få vite hva som skjer videre." + mr_wiggles: "Mr Wiggles blir lei seg om du forlater oss nå" + no_turning_back: "På dette tidspunktet er det ingen vei tilbake." what_we_delete: "We delete all of your posts, profile data, as soon as humanly possible. Your comments will hang around, but be associated with your Diaspora Handle." close_account_text: "Avslutt konto" comment_on_post: " noen kommenterer på dine innlegg?" current_password: "Nåverende passord" + current_password_expl: "den som du logget inn som..." download_photos: "last ned mine bilder" download_xml: "last ned min xml" edit_account: "Endre konto" email_awaiting_confirmation: "We have sent you an activation link to %{unconfirmed_email}. Till you follow this link and activate the new address, we will continue to use your original address %{email}." export_data: "Eksporter Data" + following: "Følgende innstillinger" getting_started: "Ny bruker preferences" liked: "... noen liker innlegget ditt?" mentioned: " du nevnes i et innlegg?" @@ -893,6 +984,7 @@ nb: private_message: " du mottar en privat melding?" receive_email_notifications: "Motta varsler på epost når:" reshared: "...noen deler igjen ditt innlegg?" + show_community_spotlight: "Vis sosiale rampelys i strømmen?" show_getting_started: "Skru på Start igjen." started_sharing: "... noen begynner å dele med deg?" stream_preferences: "Innstillinger for strøm" @@ -901,8 +993,13 @@ nb: getting_started: awesome_take_me_to_diaspora: "Supert! Ta meg til Diaspora*" community_welcome: "Diaspora-felleskapet er glad for å ha deg med på laget!" + connect_to_facebook: "Vi kan gjøre dette litt kjappere ved hjelp av %{link} til Diaspora*. Dette vil trekke ut ditt navn og foto og tillate krysslagring/oppdatering av innhold." + connect_to_facebook_link: "kobler opp til din Facebook konto" + hashtag_explanation: "Hastags lar deg beskrive og følge dine interesser. De er også en fin måte å finne nye folk i Diaspora." hashtag_suggestions: "Prøv å følge tags som #art, #movies, #gif, osv." saved: "Lagret!" + well_hello_there: "Vel, hallo !" + what_are_you_in_to: "Hva er det du virkelig liker?" who_are_you: "Hvem er du?" privacy_settings: ignored_users: "Ignorerte brukere" @@ -912,10 +1009,13 @@ nb: does_not_exist: "Bruker %{username} finnes ikke!" update: email_notifications_changed: "Language Change Failed" + follow_settings_changed: "Følgende innstillinger ble endret" + follow_settings_not_changed: "Følgende innstilinger feilet" language_changed: "Språk Endret" language_not_changed: "Endring av språk mislyktes" password_changed: "Passord Endret" password_not_changed: "Endring av Passord mislyktes" + settings_not_updated: "Oppdatering av instillinger feilet." settings_updated: "Innstillinger oppdatert" unconfirmed_email_changed: "E-Mail Changed. Needs activation." unconfirmed_email_not_changed: "E-Mail Change Failed" diff --git a/config/locales/diaspora/nl.yml b/config/locales/diaspora/nl.yml index dde8aaf4d..a39ae69eb 100644 --- a/config/locales/diaspora/nl.yml +++ b/config/locales/diaspora/nl.yml @@ -149,6 +149,8 @@ nl: donate: "Doneer" handle_explanation: "Dit is jouw Diaspora ID. Net als een e-mailadres kun je deze aan mensen geven zodat ze je kunnen bereiken." help: + any_problem: "Enige Problemen?" + contact_podmin: "Gelieve de systeembeheerder van uw pod te contacteren!" do_you: "Heb je:" email_feedback: "%{link} jouw feedback, als dat jou voorkeur heeft." email_link: "E-mail" @@ -156,6 +158,7 @@ nl: find_a_bug: "... een %{link} gevonden?" have_a_question: "... een %{link}?" here_to_help: "De Diaspora community staat voor je klaar!" + mail_podmin: "E-mail van Podmin" need_help: "Hulp nodig?" tag_bug: "bug" tag_feature: "feature" @@ -333,6 +336,7 @@ nl: create: already_contacts: "Je bent al verbonden met deze persoon" already_sent: "Je hebt deze persoon al uitgenodigd." + empty: "Gelieve minstens 1 email adres toe te voegen." no_more: "Je hebt geen uitnodigingen meer." own_address: "Het is niet mogelijk om een uitnodiging naar je eigen adres te sturen." rejected: "De volgende e-mailadressen gaven problemen: " @@ -384,14 +388,12 @@ nl: many: "%{count} mensen vinden dit niet leuk" one: "%{count} persoon vindt dit niet leuk" other: "%{count} mensen vinden dit niet leuk" - two: "%{count} niet leuk" zero: "niemand vindt dit niet leuk" people_like_this: few: "%{count} mensen vinden dit leuk" many: "%{count} mensen vinden dit leuk" one: "%{count} persoon vindt dit leuk" other: "%{count} mensen vinden dit leuk" - two: "%{count} leuk" zero: "niemand vindt dit leuk" people_like_this_comment: one: "%{count} persoon vindt dit leuk" @@ -411,14 +413,12 @@ nl: many: "%{actors} heeft gereageerd op een verwijderde post." one: "%{actors} heeft gereageerd op een verwijderd bericht." other: "%{actors} hebben gereageerd op een verwijderd bericht." - two: "%{actors} hebben gereageerd op een verwijderde post." zero: "%{actors} heeft gereageerd op een verwijderd bericht." comment_on_post: few: "%{actors} hebben op jouw %{post_link} gereageerd." many: "%{actors} hebben op jouw %{post_link} gereageerd." one: "%{actors} heeft op jouw %{post_link} gereageerd." other: "%{actors} hebben op jouw %{post_link} gereageerd." - two: "%{actors} heeft gereageerd op jou %{post_link}." zero: "%{actors} heeft op jouw %{post_link} gereageerd." helper: new_notifications: @@ -426,7 +426,6 @@ nl: many: "%{count} nieuwe notificaties" one: "1 nieuwe notificatie" other: "%{count} nieuwe notificaties" - two: "%{count} nieuwe notificaties" zero: "Geen nieuwe notificaties" index: and: "en" @@ -435,7 +434,6 @@ nl: many: "en %{count} anderen" one: "en nog iemand" other: "en %{count} anderen" - two: "en %{count} anderen" zero: "en niemand anders" mark_all_as_read: "Markeer alles gelezen" mark_unread: "Markeer ongelezen" @@ -453,14 +451,12 @@ nl: many: "%{actors} hebben je genoemd in een %{post_link}." one: "%{actors} heeft je genoemd in een %{post_link}." other: "%{actors} hebben je genoemd in een %{post_link}." - two: "%{actors} hebben je genoemd in een %{post_link}." zero: "%{actors} hebben je genoemd in een %{post_link}." mentioned_deleted: few: "%{actors} hebben jouw genoemd in een verwijderde post." many: "%{actors} hebben jou genoemd in een verwijderde post." one: "%{actors} heeft jou genoemd in een verwijderde post." other: "%{actors} hebben jou genoemd in een verwijderde post." - two: "%{actors} hebben je genoemd in een verwijderde post." zero: "%{actors} heeft jou genoemd in een verwijderde post." post: "bericht" private_message: @@ -472,7 +468,6 @@ nl: many: "%{actors} hebben jouw %{post_link} doorgegeven." one: "%{actors} heeft jouw %{post_link} doorgegeven." other: "%{actors} hebben jouw %{post_link} doorgegeven." - two: "%{actors} hebben jouw %{post_link} doorgegeven." zero: "%{actors} hebben jouw %{post_link} doorgegeven." reshared_post_deleted: one: "%{actors} hebben jouw verwijderde bericht doorgegeven." @@ -483,7 +478,6 @@ nl: many: "%{actors} delen nu met jou." one: "%{actors} deelt nu met jou." other: "%{actors} delen nu met jou." - two: "%{actors} zijn met je gaan delen." zero: "%{actors} deelt nu met jou." notifier: a_post_you_shared: "een bericht." @@ -642,7 +636,6 @@ nl: many: "%{count} foto's door %{author}" one: "Eén foto door %{author}" other: "%{count} foto's door %{author}" - two: "Twee foto's door %{author}" zero: "Geen foto's van %{author}" reshare_by: "Doorgegeven door %{author}" previous: "vorige" @@ -677,7 +670,6 @@ nl: many: "%{count} reacties" one: "1 reactie" other: "%{count} reacties" - two: "%{count} reactions" zero: "0 reacties" registrations: closed: "Registratie is gesloten op deze Diaspora pod." @@ -703,6 +695,7 @@ nl: hey_make: "HEEY,<br/>MAAK<br/>IETS" join_the_movement: "Sluit je aan!" password: "WACHTWOORD" + password_confirmation: "Wachtwoordbevestiging" sign_up: "AANMELDEN" sign_up_message: "Social Networking met een ♥" username: "GEBRUIKER" @@ -720,7 +713,6 @@ nl: many: "%{count} nieuwe verzoeken!" one: "nieuw verzoek!" other: "%{count} nieuwe verzoeken!" - two: "%{count} nieuwe verzoeken!" zero: "geen nieuwe verzoeken" manage_aspect_contacts: existing: "Bestaande contacten" @@ -791,7 +783,6 @@ nl: many: "In %{count} aspecten" one: "In %{count} aspect" other: "In %{count} aspecten" - two: "In %{count} aspecten" zero: "Voeg contact toe" contact_list: all_contacts: "Alle contacten" @@ -868,7 +859,6 @@ nl: many: "statusberichten mogen niet langer zijn dan %{count} tekens" one: "statusberichten mogen niet langer zijn dan %{count} tekens" other: "statusberichten mogen niet langer zijn dan %{count} tekens" - two: "maak je status bericht niet langer dan %{count} karakters" zero: "statusberichten mogen niet langer zijn dan %{count} tekens" stream_helper: hide_comments: "Verberg alle reacties" @@ -877,7 +867,6 @@ nl: many: "Toon nog %{count} andere reacties." one: "Toon nog één andere reactie." other: "Toon nog %{count} andere reacties" - two: "Toon nog twee andere reacties." zero: "Geen andere reacties meer" streams: activity: @@ -974,6 +963,7 @@ nl: close_account_text: "Sluit Account" comment_on_post: "...iemand op jouw post reageert?" current_password: "Huidig wachtwoord" + current_password_expl: "die gene waar je mee inlogt..." download_photos: "download mijn foto's" download_xml: "download mijn xml" edit_account: "Bewerk account" @@ -997,6 +987,7 @@ nl: getting_started: awesome_take_me_to_diaspora: "Super! Neem me naar Diaspora*" community_welcome: "De Diaspora community is blij je aan boord te hebben!" + connect_to_facebook_link: "verbinden met je Facebook account" hashtag_explanation: "Hashtags laten je gemakkelijk jou interesses volgen. Bovendien kunnen ze je helpen bij het vinden van nieuwe contacten op Diaspora." hashtag_suggestions: "Probeer het volgen van tags zoals #art, #movies, #gif, etc. eens uit." saved: "Opgeslagen!" diff --git a/config/locales/diaspora/nn.yml b/config/locales/diaspora/nn.yml index f04e418b2..9c6aaadf9 100644 --- a/config/locales/diaspora/nn.yml +++ b/config/locales/diaspora/nn.yml @@ -157,6 +157,8 @@ nn: donate: "Doner" handle_explanation: "Dette er Diaspora-ID-en din. Nett som ei e-postadresse kan du gje han til folk slik at dei kan nå deg." help: + any_problem: "Har du eit problem?" + contact_podmin: "Ta kontakt med administratoren (podminen) på poden din." do_you: "Har du:" email_feedback: "%{link} attendemeldingane dine, om du vil" email_link: "E-post" @@ -164,6 +166,7 @@ nn: find_a_bug: "funne ein %{link}?" have_a_question: "eit %{link}?" here_to_help: "Diaspora-fellesskapen er her for deg!" + mail_podmin: "Podmin e-post" need_help: "Treng du hjelp?" tag_bug: "bug" tag_feature: "feature" @@ -278,11 +281,13 @@ nn: people_sharing: "Personar som deler med deg:" spotlight: community_spotlight: "Kreative medlemer" + suggest_member: "Foreslå eit medlem" two: "%{count} kontaktar" zero: "kontaktar" conversations: create: fail: "Ugyldig melding" + no_contact: "Hei, du må leggje til kontakten først!" sent: "Meldinga er sendt" destroy: success: "Samtalen blei fjerna" @@ -292,7 +297,6 @@ nn: many: "%{count} nye meldingar" one: "1 ny melding" other: "%{count} nye meldingar" - two: "%{count} nye meldingar" zero: "Ingen nye meldingar" index: create_a_new_message: "skriv ei ny melding" @@ -338,7 +342,9 @@ nn: create: already_contacts: "Du er allereie knytt til denne personen" already_sent: "Du har allereie invitert denne personen." + empty: "Skriv inn minst ei e-post-adresse." no_more: "Du har ingen fleire invitasjonar." + note_already_sent: "Invitasjonar er allereie sende til: %{emails}" own_address: "Du kan ikkje senda invitasjon til di eiga adresse." rejected: "Det oppstod problem med desse e-postadressene:" sent: "Invitasjonar er sende til:" @@ -389,7 +395,6 @@ nn: many: "%{count} dislikes" one: "%{count} dislike" other: "%{count} dislikes" - two: "%{count} dislikes" zero: "no dislikes" people_like_this: one: "%{count} likar dette" @@ -413,7 +418,6 @@ nn: many: "%{actors} kommenterte eit sletta innlegg." one: "%{actors} kommenterte eit sletta innlegg." other: "%{actors} kommenterte eit sletta innlegg." - two: "%{actors} kommenterte eit sletta innlegg." zero: "%{actors} kommenterte eit sletta innlegg." comment_on_post: one: "%{actors} kommenterte %{post_link}et ditt." @@ -425,7 +429,6 @@ nn: many: "%{count} nye varsel" one: "1 nytt varsel" other: "%{count} nye varsel" - two: "%{count} nye varsel" zero: "Ingen nye varsel" index: and: "og" @@ -434,7 +437,6 @@ nn: many: "og %{count} andre" one: "og éin til" other: "og %{count} andre" - two: "og %{count} andre" zero: "og ingen andre" mark_all_as_read: "Merk alle som lesne" mark_unread: "Merk som ulest" @@ -448,21 +450,18 @@ nn: many: "%{actors} likte det sletta innlegget ditt." one: "%{actors} likte det sletta innlegget ditt." other: "%{actors} likte det sletta innlegget ditt." - two: "%{actors} likte det sletta innlegget ditt." zero: "%{actors} likte det sletta innlegget ditt." mentioned: few: "%{actors} har nemnt deg i eit %{post_link}." many: "%{actors} har nemnt deg i eit %{post_link}." one: "%{actors} har nemnt deg i eit %{post_link}." other: "%{actors} har nemnt deg i eit %{post_link}." - two: "%{actors} har nemnt deg i eit %{post_link}." zero: "%{actors} har nemnt deg i eit %{post_link}." mentioned_deleted: few: "%{actors} nemnde deg i eit sletta innlegg." many: "%{actors} nemnde deg i eit sletta innlegg." one: "%{actors} nemnde deg i eit sletta innlegg." other: "%{actors} nemnde deg i eit sletta innlegg." - two: "%{actors} nemnde deg i eit sletta innlegg." zero: "%{actors} nemnde deg i eit sletta innlegg." post: "innlegg" private_message: @@ -470,7 +469,6 @@ nn: many: "%{actors} sende deg ei melding." one: "%{actors} sende deg ei melding." other: "%{actors} sende deg ei melding." - two: "%{actors} sende deg ei melding." zero: "%{actors} sende deg ei melding." reshared: one: "%{actors} har delt %{post_link}et ditt." @@ -715,7 +713,6 @@ nn: many: "%{count} nye førespurnader." one: "ny førespurnad." other: "%{count} nye førespurnader." - two: "%{count} nye førespurnader." zero: "ingen nye førespurnader" manage_aspect_contacts: existing: "Eksisterande kontaktar" @@ -786,7 +783,6 @@ nn: many: "I %{count} aspekt" one: "I %{count} aspekt" other: "I %{count} aspekt" - two: "I %{count} aspekt" zero: "Legg til kontakt" contact_list: all_contacts: "Alle kontaktane" @@ -863,7 +859,6 @@ nn: many: "sjå til at statusmeldingane dine har færre enn %{count} teikn" one: "sjå til at statusmeldingane dine har færre enn %{count} teikn" other: "sjå til at statusmeldingane dine har færre enn %{count} teikn" - two: "sjå til at statusmeldingane dine har færre enn %{count} teikn" zero: "sjå til at statusmeldingane dine har færre enn %{count} teikn" stream_helper: hide_comments: "Gøym alle kommentarane" @@ -990,6 +985,8 @@ nn: getting_started: awesome_take_me_to_diaspora: "Kult! Ta meg med til Diaspora*" community_welcome: "Diaspora* sin fellesskap er glade for å ha deg ombord!" + connect_to_facebook: "Me kan få fart på sakane ved å %{link} til Diaspora. Dette vil hente namnet og profilbilete ditt derfrå og sette i gong kryss-posting." + connect_to_facebook_link: "kopla til Facebook-kontoen din" hashtag_explanation: "Grindmerke (#) gjer at du kan tala om og følgja interessene dine. Dei er òg ein fin måte å finna nye Diaspora-brukarar på." hashtag_suggestions: "Prøv å følgje tags som #kunst, #film, #åtgaum, #katt, etc." saved: "Lagra!" diff --git a/config/locales/diaspora/pa.yml b/config/locales/diaspora/pa.yml index 7965cceb2..adaf21c6b 100644 --- a/config/locales/diaspora/pa.yml +++ b/config/locales/diaspora/pa.yml @@ -78,7 +78,6 @@ pa: many: "%{count} new messages" one: "1 new messages" other: "%{count} new messages" - two: "%{count} new messages" zero: "no new messages" delete: "ਹਟਾਓ" email: "ਈਮੇਲ" @@ -104,21 +103,18 @@ pa: many: "%{count} people disliked this" one: "1 person disliked this" other: "%{count} people disliked this" - two: "%{count} dislikes" zero: "no people disliked this" people_like_this: few: "%{count} people liked this" many: "%{count} people liked this" one: "1 person liked this" other: "%{count} people liked this" - two: "%{count} likes" zero: "no people liked this" people_like_this_comment: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" more: "ਹੋਰ" next: "ਅੱਗੇ" @@ -128,21 +124,18 @@ pa: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -150,7 +143,6 @@ pa: many: "%{count} new notifications" one: "1 new notifications" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "no new notifications" index: and_others: @@ -158,35 +150,30 @@ pa: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" liked: few: "%{actors} has just liked your %{post_link}." many: "%{actors} has just liked your %{post_link}." one: "%{actors} has just liked your %{post_link}." other: "%{actors} has just liked your %{post_link}." - two: "%{actors} has just liked your %{post_link}." zero: "%{actors} has just liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." post: "ਪੋਸਟ" private_message: @@ -194,28 +181,24 @@ pa: many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} has reshared your %{post_link}." many: "%{actors} has reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} has reshared your %{post_link}." - two: "%{actors} has reshared your %{post_link}." zero: "%{actors} has reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: confirm_email: @@ -253,7 +236,6 @@ pa: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" previous: "ਪਿੱਛੇ" profiles: @@ -265,7 +247,6 @@ pa: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: edit: @@ -289,7 +270,6 @@ pa: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" new_request_to_person: sent: "ਭੇਜਿਆ!" @@ -300,7 +280,6 @@ pa: many: "%{count} Reshares" one: "1 Reshare" other: "%{count} Reshares" - two: "%{count} reshares" zero: "Reshare" reshare_confirmation: "Reshare %{author} - %{text}?" reshare_original: "Reshare orignial" @@ -329,7 +308,6 @@ pa: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" contact_list: all_contacts: "ਸਭ ਸੰਪਰਕ" @@ -358,7 +336,6 @@ pa: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: hide_comments: "ਟਿੱਪਣੀਆਂ ਓਹਲੇ ਕਰੋ" @@ -367,7 +344,6 @@ pa: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/pl.yml b/config/locales/diaspora/pl.yml index 6223691be..a07c0c935 100644 --- a/config/locales/diaspora/pl.yml +++ b/config/locales/diaspora/pl.yml @@ -163,6 +163,8 @@ pl: donate: "Wspomóż" handle_explanation: "Oto Twój identyfikator Diaspory. Tak jak adres e-mail, możesz podać go osobom, z którymi chcesz być w kontakcie." help: + any_problem: "Jakiś problem?" + contact_podmin: "Skontaktuj się z administratorem swojego poda!" do_you: "Czy:" email_feedback: "Wyślij %{link}, jeśli wolisz" email_link: "E-mail" @@ -170,6 +172,7 @@ pl: find_a_bug: "... znal@{m:azłeś|f:azłaś|n:eziono} %{link}?" have_a_question: "... masz %{link}?" here_to_help: "Społeczność Diaspory jest tutaj!" + mail_podmin: "Adres e-mail podmina" need_help: "Potrzebujesz pomocy?" tag_bug: "błąd" tag_feature: "funkcja" @@ -284,11 +287,13 @@ pl: people_sharing: "Osoby które Ci udostępniają:" spotlight: community_spotlight: "W centrum uwagi społeczności" + suggest_member: "Zasugeruj członka" two: "%{count} kontakty" zero: "kontakty" conversations: create: fail: "Nieprawidłowa wiadomość" + no_contact: "Hej! Najpierw należy dodać kontakt!" sent: "Wiadomość została wysłana" destroy: success: "Pomyślnie usunięto rozmowę" @@ -342,10 +347,12 @@ pl: create: already_contacts: "{m,f:Jesteś już|n:Połączono już}{ }{m,f:połączon}{m:y|f:a} z tą osobą." already_sent: "Już zapros@{m:iłeś|f:iłaś|n:zono} tę osobę." + empty: "Podaj przynajmniej jeden adres e-mail." no_more: "Nie masz więcej zaproszeń." + note_already_sent: "Zaproszenia zostały już wysłane do: %{emails}" own_address: "Nie możesz wysłać zaproszenia na swój własny adres." rejected: "Następujące adresy e-mail okazały się problematyczne:" - sent: "Zaproszenia zostały wysłane do:" + sent: "Zaproszenia zostały wysłane do: %{emails}" edit: accept_your_invitation: "Zaakceptuj zaproszenie" your_account_awaits: "Twoje konto czeka!" @@ -696,6 +703,7 @@ pl: hey_make: "HEJ ,<br/>ZRÓB<br/>COŚ." join_the_movement: "Dołącz do ruchu!" password: "HASŁO" + password_confirmation: "POTWIERDZENIE HASŁA" sign_up: "REJESTRACJA" sign_up_message: "Social Networking z ♥" username: "NAZWA UŻYTKOWNIKA" @@ -736,7 +744,7 @@ pl: search: "Znajdź" services: create: - already_authorized: "Użytkownik o identyfikatorze w diasporze \"%{diaspora_id\"} już autoryzował to konto w usłudze \"%{service_name}\"." + already_authorized: "Użytkownik o identyfikatorze w diasporze \"%{diaspora_id}\" już autoryzował to konto w usłudze \"%{service_name}\"." failure: "Uwierzytelnianie nie powiodło się." success: "Pomyślnie uwierzytelniono." destroy: @@ -816,7 +824,7 @@ pl: discard_post: "Porzuć wpis" make_public: "upublicznij" new_user_prefill: - hello: "Witajcie wszyscy, jestem tutaj nowy/a! #%{new_user_tag}. " + hello: "Witajcie wszyscy, jestem #%{new_user_tag}. " i_like: "Interesują mnie %{tags}." invited_by: "Dzięki za zaproszenie," newhere: "TutajOdNiedawna" @@ -984,6 +992,8 @@ pl: getting_started: awesome_take_me_to_diaspora: "Świetnie! Zabierz mnie do Diaspory*" community_welcome: "Społeczność Diaspory cieszy się, że jesteś na pokładzie!" + connect_to_facebook: "Możemy nieco przyśpieszyć poprzez %{link} do Diaspory. To spowoduje pobranie Twojej nazwy i zdjęcia i włączy publikowanie krzyżowe." + connect_to_facebook_link: "podpinanie konta na Facebooku" hashtag_explanation: "Znaczniki pozwalają łatwo odnaleźć interesujące Cię tematy. Są także świetnym sposobem na nawiązywanie znajomości na Diasporze." hashtag_suggestions: "Spróbuj obserwować znaczniki takie jak #sztuka, #filmy, #gif, itd." saved: "Zapisano!" diff --git a/config/locales/diaspora/pt-BR.yml b/config/locales/diaspora/pt-BR.yml index 07fc090d4..013b5db8e 100644 --- a/config/locales/diaspora/pt-BR.yml +++ b/config/locales/diaspora/pt-BR.yml @@ -157,6 +157,7 @@ pt-BR: donate: "Faça uma Doação" handle_explanation: "Esse é seu Diaspora ID. Como um endereço de e-mail, pode ser usado por outras pessoas para entrar em contato com você." help: + any_problem: "Algum Problema?" do_you: "Você:" email_feedback: "%{link} seu feedback, se você preferir" email_link: "E-mail" @@ -278,6 +279,7 @@ pt-BR: people_sharing: "Pessoas compartilhando com você:" spotlight: community_spotlight: "Comunidade Spotlight" + suggest_member: "Sugerir um membro" two: "%{count} contatos" zero: "contatos" conversations: @@ -292,7 +294,6 @@ pt-BR: many: "%{count} novas mensagens" one: "1 nova mensagem" other: "%{count} novas mensagens" - two: "%{count} novas mensagens" zero: "Nenhuma mensagem nova" index: create_a_new_message: "criar uma nova mensagem" @@ -338,7 +339,9 @@ pt-BR: create: already_contacts: "Você já está compartilhando com essa pessoa." already_sent: "Você já convidou essa pessoa." + empty: "Por favor, insira ao menos um endereço de email." no_more: "Você não possui mais convites." + note_already_sent: "Convites já foram enviados para: %{emails}" own_address: "Você não pode enviar um convite para o seu endereço." rejected: "Os seguintes endereços de emails tiveram problemas:" sent: "Convites enviados para:" @@ -393,14 +396,12 @@ pt-BR: many: "%{count} curtiram" one: "1 curtiu" other: "%{count} curtiram" - two: "%{count} curtiram" zero: "ninguém curtiu" people_like_this_comment: few: "%{count} curtiram" many: "%{count} curtiram" one: "%{count} curtiu" other: "%{count} curtiram" - two: "%{count} curtiram" zero: "ninguém curtiu" limited: "Limitado" more: "Mais" @@ -425,7 +426,6 @@ pt-BR: many: "%{count} novas notificações" one: "1 nova notificação" other: "%{count} novas notificações" - two: "%{count} novas notificações" zero: "Nenhuma notificação nova" index: and: "e" @@ -434,7 +434,6 @@ pt-BR: many: "e %{count} outros" one: "e mais um" other: "e %{count} outros" - two: "e %{count} outros" zero: "e mais ninguém" mark_all_as_read: "Marcar Todos como Lido" mark_unread: "Marcar como não lida" @@ -461,7 +460,6 @@ pt-BR: many: "%{actors}, te enviou uma mensagem." one: "%{actors}, te enviou uma mensagem." other: "%{actors}, te enviou uma mensagem." - two: "%{actors} lhe enviaram umas mensagens." zero: "%{actors}, te enviou uma mensagem." reshared: one: "%{actors}, compartilhou o seu %{post_link}." @@ -476,7 +474,6 @@ pt-BR: many: "%{actors}, está compartilhando com você agora." one: "%{actors}, está compartilhando com você agora." other: "%{actors}, está compartilhando com você agora." - two: "%{actors} começaram a compartilhar com você." zero: "%{actors}, está compartilhando com você agora." notifier: a_post_you_shared: "uma postagem." @@ -667,7 +664,6 @@ pt-BR: many: "%{count} reactions" one: "1 reação" other: "%{count} reações" - two: "%{count} reações" zero: "0 reações" registrations: closed: "Os cadastros estão temporariamente desabilitados." @@ -693,6 +689,7 @@ pt-BR: hey_make: "HEY,<br/>FAÇA<br/>ALGO." join_the_movement: "Junte-se ao movimento!" password: "SENHA" + password_confirmation: "CONFIRMAÇÃO DE SENHA" sign_up: "INSCREVER" sign_up_message: "Rede social com um <3" username: "APELIDO" @@ -710,7 +707,6 @@ pt-BR: many: "%{count} novos pedidos!" one: "novo pedido!" other: "%{count} novos pedidos!" - two: "%{count} novos pedidos!" zero: "nenhum pedido novo" manage_aspect_contacts: existing: "Contatos existentes" @@ -728,7 +724,6 @@ pt-BR: many: "%{count} compartilhados" one: "1 compartilhado" other: "%{count} compartilhados" - two: "%{count} recompartilhados" zero: "Compartilhar" reshare_confirmation: "Compartilhar %{author} - %{text}?" reshare_original: "Compartilhar isso" @@ -858,7 +853,6 @@ pt-BR: many: "por favor, não crie mensagens superior a %{count} caracteres" one: "por favor, não crie mensagem superior a %{count} caractere" other: "por favor, não crie mensagens superior a %{count} caracteres" - two: "Por favor, modifique sua postagem inferior a %{count} caracteres" zero: "por favor, não crie mensagens superior a %{count} caracteres" stream_helper: hide_comments: "Ocultar todos os comentários" @@ -867,7 +861,6 @@ pt-BR: many: "Ver mais %{count} comentários" one: "Ver mais um comentário" other: "Ver mais %{count} comentários" - two: "Ver mais dois comentários" zero: "Nenhum comentário" streams: activity: diff --git a/config/locales/diaspora/pt-PT.yml b/config/locales/diaspora/pt-PT.yml index de4ea25a8..de29fc459 100644 --- a/config/locales/diaspora/pt-PT.yml +++ b/config/locales/diaspora/pt-PT.yml @@ -157,6 +157,8 @@ pt-PT: donate: "Doar" handle_explanation: "Esta é a sua identificação na Diaspora. Tal como um endereço de email, pode dá-la a quem desejar que o contacte." help: + any_problem: "Algum Problema?" + contact_podmin: "Contacte o administrador do seu servidor" do_you: "Tem:" email_feedback: "%{link} o seu feedback, se preferir" email_link: "Email" @@ -164,6 +166,7 @@ pt-PT: find_a_bug: "... um %{link} para reportar?" have_a_question: "... uma %{link}?" here_to_help: "A comunidade do Diaspora está aqui!" + mail_podmin: "E-Mail do Administrador" need_help: "Precisa de ajuda?" tag_bug: "erro" tag_feature: "funcionalidade" @@ -278,11 +281,13 @@ pt-PT: people_sharing: "Pessoas a partilhar consigo:" spotlight: community_spotlight: "Destaque da comunidade" + suggest_member: "Sugerir um membro" two: "%{count} contactos" zero: "contactos" conversations: create: fail: "Mensagem inválida" + no_contact: "Cuidado, tens de adicionar o contacto primeiro!" sent: "A mensagem foi enviada" destroy: success: "A conversa foi removida com sucesso" @@ -292,7 +297,6 @@ pt-PT: many: "%{count} novas mensagens" one: "1 nova mensagem" other: "%{count} novas mensagens" - two: "%{count} novas mensagens" zero: "Não há novas mensagens" index: create_a_new_message: "criar uma nova mensagem" @@ -338,10 +342,12 @@ pt-PT: create: already_contacts: "Já está ligado a esta pessoa" already_sent: "Já convidou esta pessoa." + empty: "Por favor insira pelo menos um endereço de email." no_more: "Não tem mais convites." + note_already_sent: "Convites já foram enviados para: %{emails}" own_address: "Não pode enviar um convite para o seu próprio endereço." rejected: "Os seguintes endereços de email tiveram problemas: " - sent: "Os convites foram enviados para:" + sent: "Convites foram enviados para: %{emails}" edit: accept_your_invitation: "Aceite o seu convite" your_account_awaits: "A sua conta está à espera!" @@ -393,14 +399,12 @@ pt-PT: many: "%{count} pessoas não gostam" one: "%{count} pessoa gosta" other: "%{count} pessoas gostam" - two: "%{count} gostam" zero: "ninguém gosta" people_like_this_comment: few: "%{count} gostos" many: "%{count} gostos" one: "%{count} gosto" other: "%{count} gostos" - two: "%{count} gostam" zero: "não há gostos" limited: "Limitado" more: "Mais" @@ -408,30 +412,23 @@ pt-PT: no_results: "Não foram encontrados resultados" notifications: also_commented: - few: "%{actors} também comentaram na %{post_link} de %{post_author}." - many: "%{actors} também comentaram %{post_link} de %{post_author}." - one: "%{actors} também comentou %{post_link} de %{post_author}." - other: "%{actors} também comentaram %{post_link} de %{post_author}." - two: "%{actors} também comentaram no %{post_link} de %{post_author}." - zero: "%{actors} também comentaram %{post_link} de %{post_author}." + one: "%{actors} também comentou em %{post_link} de %{post_author}." + other: "%{actors} também comentaram em %{post_link} de %{post_author}." + zero: "%{actors} também comentaram em %{post_link} de %{post_author}." also_commented_deleted: one: "%{actors} comentou uma publicação apagada." other: "%{actors} comentaram uma publicação apagada." zero: "%{actors} comentaram uma publicação apagada." comment_on_post: - few: "%{actors} comentaram na sua %{post_link}." - many: "%{actors} comentaram na sua %{post_link}." one: "%{actors} comentou na sua %{post_link}." other: "%{actors} comentaram na sua %{post_link}." - two: "%{actors} comentaram no seu %{post_link}." - zero: "%{actors} comentou na sua %{post_link}." + zero: "%{actors} comentaram na sua %{post_link}." helper: new_notifications: few: "%{count} novas notificações" many: "%{count} novas notificações" one: "1 nova notificação" other: "%{count} novas notificações" - two: "%{count} novas notificações" zero: "Não há novas notificações" index: and: "e" @@ -440,7 +437,6 @@ pt-PT: many: "e %{count} outros" one: "e mais uma pessoa" other: "e {count} outros" - two: "e %{count} outros" zero: "e mais ninguém" mark_all_as_read: "Marcar Tudo como Lido" mark_unread: "Marcar como não lida" @@ -450,14 +446,12 @@ pt-PT: many: "%{actors} gostaram do seu %{post_link}." one: "%{actors} gostou do seu %{post_link}." other: "%{actors} gostaram do seu %{post_link}." - two: "%{actors} gostaram do seu %{post_link}." zero: "%{actors} gostaram do seu %{post_link}." liked_post_deleted: few: "%{actors} gostaram da sua publicação eliminada" many: "%{actors} gostaram da sua publicação eliminada." one: "%{actors} gostou da sua publicação eliminada." other: "%{actors} gostaram da sua publicação eliminada." - two: "%{actors} gostaram do seu artigo eliminado." zero: "%{actors} gostaram da sua publicação eliminada." mentioned: one: "%{actors} mencionou-o numa %{post_link}." @@ -468,16 +462,12 @@ pt-PT: many: "%{actors} mencionaram-no numa publicação apagada." one: "%{actors} mencionou-no numa publicação apagada." other: "%{actors} mencionaram-no numa publicação apagada." - two: "%{actors} mencionaram-no numa publicação apagada." zero: "%{actors} mencionaram-no numa publicação apagada." post: "publicação" private_message: - few: "%{actors} enviaram-lhe uma mensagem." - many: "%{actors} enviaram-lhe uma mensagem." one: "%{actors} enviou-lhe uma mensagem." other: "%{actors} enviaram-lhe uma mensagem." - two: "%{actors} enviaram-lhe uma mensagem." - zero: "%{actors} enviou-lhe uma mensagem." + zero: "%{actors} enviaram-lhe uma mensagem." reshared: one: "%{actors} partilhou o seu %{post_link}." other: "%{actors} partilharam o seu %{post_link}." @@ -491,7 +481,6 @@ pt-PT: many: "%{actors} começaram a partilhar consigo." one: "%{actors} começou a partilhar consigo." other: "%{actors} começaram a partilhar consigo." - two: "%{actors} começaram a partilhar consigo." zero: "%{actors} começou a partilhar consigo." notifier: a_post_you_shared: "uma publicação." @@ -649,7 +638,6 @@ pt-PT: many: "%{count} fotografias de %{author}" one: "Uma fotografia de %{author}" other: "%{count} fotografias de %{author}" - two: "Duas fotografias de %{author}" zero: "Nenhuma fotografia de %{author}" reshare_by: "Partilhado por %{author}" previous: "anterior" @@ -725,7 +713,6 @@ pt-PT: many: "%{count} novos pedidos!" one: "novo pedido!" other: "%{count} novos pedidos!" - two: "%{count} novos pedidos!" zero: "não há novos pedidos" manage_aspect_contacts: existing: "Contactos existentes" @@ -743,7 +730,6 @@ pt-PT: many: "%{count} repartilhas" one: "1 repartilha" other: "%{count} repartilhas" - two: "%{count} repartilhas" zero: "Repartilhar" reshare_confirmation: "Repartilhar a publicação de %{author}?" reshare_original: "Repartilha o original" @@ -799,7 +785,6 @@ pt-PT: many: "Em %{count} aspectos" one: "Em %{count} aspecto" other: "Em %{count} aspectos" - two: "Em %{count} aspectos" zero: "Adicionar contacto" contact_list: all_contacts: "Todos os contactos" @@ -1002,6 +987,8 @@ pt-PT: getting_started: awesome_take_me_to_diaspora: "Excelente! Quero ir para o Diaspora*" community_welcome: "A comunidade do Diaspora está feliz por o ter consigo!" + connect_to_facebook: "Podemos acelerar as coisas um pouco %{link} ao Diaspora. Isto irá puxar o seu nome e fotografia, e activar cruzamento de publicações." + connect_to_facebook_link: "ligando à sua conta de Facebook" hashtag_explanation: "Os hashtags permitem-lhe falar sobre e seguir os seus interesses. Também são uma ótima forma de conhecer novas pessoas no Diaspora." hashtag_suggestions: "Siga etiquetas como #arte, #cinema, #gif, etc." saved: "Guardado!" diff --git a/config/locales/diaspora/ro.yml b/config/locales/diaspora/ro.yml index 19f778e37..1bbf347d6 100644 --- a/config/locales/diaspora/ro.yml +++ b/config/locales/diaspora/ro.yml @@ -167,7 +167,6 @@ ro: many: "%{count} mesaje noi" one: "1 mesaj nou" other: "%{count} mesaje noi" - two: "%{count} mesaje noi" zero: "no new messages" index: create_a_new_message: "crează un mesaj nou" @@ -232,21 +231,18 @@ ro: many: "%{count} people disliked this" one: "1 person disliked this" other: "%{count} people disliked this" - two: "%{count} dislikes" zero: "no people disliked this" people_like_this: few: "%{count} people liked this" many: "%{count} people liked this" one: "1 person liked this" other: "%{count} people liked this" - two: "%{count} likes" zero: "no people liked this" people_like_this_comment: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" limited: "Limitat" more: "Mai mult" @@ -258,21 +254,18 @@ ro: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} le-a placut publicatia stearsa de tine." many: "%{actors} au put comentarii pe o publicatie deja stearsa." one: "%{actors} i-a placut publicatia stearsa de tine." other: "%{actors} le-a placut publicatia stearsa de tine." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} au pus comentarii pe %{post_link}." many: "%{actors} au pus comentarii pe %{post_link}." one: "%{actors} a comentat pe %{post_link} ta." other: "%{actors} au comentat pe %{post_link} ta." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -280,7 +273,6 @@ ro: many: "%{count} notificări noi" one: "1 new notifications" other: "%{count} notificări noi" - two: "%{count} new notifications" zero: "no new notifications" index: and: "şi" @@ -289,7 +281,6 @@ ro: many: "and %{count} others" one: "şi doar unul " other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" mark_all_as_read: "Marchează-le pe toate ca citite" notifications: "Notificări" @@ -298,28 +289,24 @@ ro: many: "%{actors} has just liked your %{post_link}." one: "%{actors} has just liked your %{post_link}." other: "%{actors} has just liked your %{post_link}." - two: "%{actors} has just liked your %{post_link}." zero: "%{actors} has just liked your %{post_link}." liked_post_deleted: few: "%{actors} au placut publicatia stearsa de tine." many: "%{actors} le-au placut publicatia stearsa de tine." one: "%{actors} i-a placut publicatia stearsa de tine." other: "%{actors} le-a placut publicatia stearsa de tine." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} v-a amintit intro %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} te-au amintit intro publicatie deja stearsa." many: "%{actors} te-au amintit intro publicatie deja stearsa." one: "%{actors} te-a amintit intro publicatie deja stearsa." other: "%{actors} te-au amintit intro publicatie deja stearsa." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." post: "publicatie" private_message: @@ -327,28 +314,24 @@ ro: many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} has reshared your %{post_link}." many: "%{actors} has reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} has reshared your %{post_link}." - two: "%{actors} has reshared your %{post_link}." zero: "%{actors} has reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: a_post_you_shared: "o publicatie." @@ -468,7 +451,6 @@ ro: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" previous: "anterioare" profile: "Profil" @@ -496,7 +478,6 @@ ro: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: closed: "Ȋnscrierile sunt ȋnchise pe acest pod Diaspora." @@ -529,7 +510,6 @@ ro: many: "%{count} de cereri noi!" one: "cerere nouă!" other: "%{count} noi cereri!" - two: "%{count} cereri noi!" zero: "nicio cerere nouă" manage_aspect_contacts: existing: "Contactele existente" @@ -544,7 +524,6 @@ ro: many: "%{count} Reshares" one: "1 Reshare" other: "%{count} Reshares" - two: "%{count} reshares" zero: "Reshare" reshare_confirmation: "Reshare %{author} - %{text}?" reshare_original: "Reshare orignial" @@ -587,7 +566,6 @@ ro: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" contact_list: all_contacts: "Toate contactele" @@ -637,7 +615,6 @@ ro: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: hide_comments: "ascunde comentariile" @@ -646,7 +623,6 @@ ro: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/ru.yml b/config/locales/diaspora/ru.yml index df0b4481a..75ff88b7d 100644 --- a/config/locales/diaspora/ru.yml +++ b/config/locales/diaspora/ru.yml @@ -408,14 +408,12 @@ ru: many: "Понравилось: %{count}" one: "Понравилось: %{count}" other: "Понравилось: %{count}" - two: "Понравилось: %{count}" zero: "Понравилось: 0" people_like_this_comment: few: "%{count} понравилось" many: "%{count} понравилось" one: "%{count} понравилось" other: "%{count} понравилось" - two: "%{count} понравилось" zero: "не понравилось никому" limited: "Ограниченная" more: "Еще" @@ -427,21 +425,18 @@ ru: many: "%{actors} также прокомментировали %{post_link} %{post_author}." one: "%{actors} также прокомментировал(а) %{post_link} %{post_author}." other: "%{actors} также прокомментировали %{post_link} %{post_author}." - two: "%{actors} также прокомментировали %{post_link} %{post_author}." zero: "%{actors} также прокомментировали %{post_link} %{post_author}." also_commented_deleted: few: "%{actors} комментировали ваше удаленное сообщение." many: "%{actors} комментировали ваше удаленное сообщение." one: "%{actors} комментировал(а) ваше удаленное сообщение." other: "%{actors} комментировали ваше удаленное сообщение." - two: "%{actors} комментировали удаленое сообщение." zero: "%{actors} комментировали ваше удаленное сообщение." comment_on_post: few: "%{actors} прокомментировали вашу %{post_link}." many: "%{actors} прокомментировали вашу %{post_link}." one: "%{actors} прокомментировал(а) вашу %{post_link}." other: "%{actors} прокомментировали вашу %{post_link}." - two: "%{actors} прокомментировали вашу %{post_link}." zero: "%{actors} прокомментировали вашу %{post_link}." helper: new_notifications: @@ -457,7 +452,6 @@ ru: many: "и %{count} другим" one: "и еще один" other: "и %{count} другим" - two: "и %{count} других" zero: "и больше никому" mark_all_as_read: "Отметить все как прочитанные" mark_unread: "пометить как непрочитанное" @@ -467,14 +461,12 @@ ru: many: "%{actors} понравилась ваша %{post_link}." one: "%{actors} понравилась ваша %{post_link}." other: "%{actors} понравилась ваша %{post_link}." - two: "%{actors} понравилась ваша %{post_link}." zero: "%{actors} понравилась ваша %{post_link}." liked_post_deleted: few: "%{actors} нравилась ваша удаленная запись." many: "%{actors} нравилась ваша удаленная запись." one: "%{actors} нравилась ваша удаленная запись." other: "%{actors} нравилась ваша удаленная запись." - two: "%{actors} нравилась ваша удаленная запись." zero: "%{actors} нравилась ваша удаленная запись." mentioned: few: "%{actors} упомянули вас в %{post_link}." @@ -487,7 +479,6 @@ ru: many: "%{actors} упомянули вас в удаленном сообщении." one: "%{actors} упомянул(а) вас в удаленном сообщении." other: "%{actors} упомянули вас в удаленном сообщении." - two: "%{actors} упомянули вас в удаленной записи." zero: "%{actors} упомянули вас в удаленном сообщении." post: "запись" private_message: @@ -501,14 +492,12 @@ ru: many: "%{actors} поделились вашей %{post_link}." one: "%{actors} поделился(лась) вашей %{post_link}." other: "%{actors} поделились вашей %{post_link}." - two: "%{actors} поделились вашей %{post_link}." zero: "%{actors} поделились вашей %{post_link}." reshared_post_deleted: few: "%{actors} поделились вашей удаленной записью." many: "%{actors} поделились вашей удаленной записью." one: "%{actors} поделился(лась) вашей удаленной записью." other: "%{actors} поделились вашей удаленной записью." - two: "%{actors} поделились вашей удаленной записью." zero: "%{actors} поделились вашей удаленной записью." started_sharing: few: "%{actors} начали делиться с вами." @@ -708,7 +697,6 @@ ru: many: "Отзывы: %{count}" one: "Отзывы: 1" other: "Отзывы: %{count}" - two: "Отзывы: %{count}" zero: "Отзывы: 0" registrations: closed: "На этом сервере Диаспоры регистрация закрыта." @@ -823,7 +811,6 @@ ru: many: "В %{count} аспектах" one: "В %{count} аспекте" other: "В %{count} аспектах" - two: "В %{count} аспекте[ах]" zero: "Добавить контакт" contact_list: all_contacts: "Все контакты" diff --git a/config/locales/diaspora/sk.yml b/config/locales/diaspora/sk.yml index 5fd80e71d..05d43c462 100644 --- a/config/locales/diaspora/sk.yml +++ b/config/locales/diaspora/sk.yml @@ -163,6 +163,8 @@ sk: donate: "Prispieť" handle_explanation: "Toto je tvoje ID na Diasporu. Môžeš ho dať ostatným ľuďom ako e-mailovú adresu, aby sa s tebou mohli spojiť." help: + any_problem: "Nejaký problém?" + contact_podmin: "Kontaktuj administrátora svojho podu." do_you: "Povedz:" email_feedback: "Ak ti to vyhovuje viac, svoje podnety nám môžeš poslať na %{link}" email_link: "E-mail" @@ -170,6 +172,7 @@ sk: find_a_bug: "... našiel (-šla) si %{link}?" have_a_question: "... máš %{link}?" here_to_help: "Komunita Diaspory je tu!" + mail_podmin: "E-mail podmina" need_help: "Potrebuješ pomoc?" tag_bug: "chybu" tag_feature: "funkciu" @@ -284,11 +287,13 @@ sk: people_sharing: "Ľudia, ktorí vás majú v kontaktoch:" spotlight: community_spotlight: "Aktuality z komunity" + suggest_member: "Navrhnúť člena" two: "%{count} kontakty" zero: "kontaktov" conversations: create: fail: "Neplatná správa" + no_contact: "Pozor, najprv treba pridať kontakt!" sent: "Správa odoslaná" destroy: success: "Rozhovor bol úspešne odstránený" @@ -298,7 +303,6 @@ sk: many: "%{count} nových správ" one: "1 nová správa" other: "%{count} nových správ" - two: "%{count} nové správy" zero: "Žiadne nové správy" index: create_a_new_message: "vytvoriť novú správu" @@ -344,7 +348,9 @@ sk: create: already_contacts: "Tohto človeka si už kontaktoval(a)." already_sent: "Tohto človeka si už pozval(a)." + empty: "Zadajte, prosím, aspoň jednu e-mailovú adresu." no_more: "Nemáš žiadne nové pozvánky." + note_already_sent: "Pozvánky už boli odoslané na adresy: %{emails}" own_address: "Nemôžeš poslať pozvánku na svoju vlastnú adresu." rejected: "S týmito adresami sa vyskytli problémy: " sent: "Pozvánky boli odoslané na adresy: %{emails}" @@ -432,7 +438,6 @@ sk: many: "%{count} nových oznamov" one: "1 nový oznam" other: "%{count} nových oznamov" - two: "%{count} nové oznamy" zero: "Žiadne nové oznamy" index: and: "a" @@ -643,7 +648,6 @@ sk: many: "%{count} fotiek, ktoré nahral(a) %{author}" one: "Jedna fotka, ktorú nahral(a) %{author}" other: "%{count} fotiek, ktoré nahral(a) %{author}" - two: "Dve fotky, ktoré nahral(a) %{author}" zero: "Žiadne fotky, ktoré nahral(a) %{author}" reshare_by: "Znova ukázal(a) príspevok %{author}" previous: "Predchádzajúce" @@ -991,6 +995,8 @@ sk: getting_started: awesome_take_me_to_diaspora: "Super! Prejsť na Diasporu*" community_welcome: "Komunita Diaspory je šťastná, že si na jej palube!" + connect_to_facebook: "Veci môžeme urýchliť%{link} k Diaspore. To umožní automatické doplnenie tvojho mena, fotky a preposielanie príspevkov." + connect_to_facebook_link: "pripojením tvojho účtu na Facebooku" hashtag_explanation: "Značky ti umožňujú hovoriť o tom, čo ťa zaujíma a sledovať diskusie o tom, čo ťa zaujíma. Je to aj skvelý spôsob na spoznanie nových ľudí na Diaspore." hashtag_suggestions: "Skús sledovať značky, ako napr. #umenie, #filmy, #gif, atď." saved: "Uložené!" diff --git a/config/locales/diaspora/sl.yml b/config/locales/diaspora/sl.yml index faa15fd4b..529876fa5 100644 --- a/config/locales/diaspora/sl.yml +++ b/config/locales/diaspora/sl.yml @@ -57,7 +57,6 @@ sl: few: "%{count} mnenja" one: "%{count} mnenje" other: "%{count} mnenj" - two: "%{count} mnenji" zero: "%{count} mnenj" current_segment: "Trenutni odsek ima povprečno <b>%{post_yest}</b> objav na uporabnika na <b>%{post_day}</b>" daily: "Dnevno" @@ -68,13 +67,11 @@ sl: few: "%{count} objave" one: "%{count} objava" other: "%{count} objav" - two: "%{count} objavi" zero: "%{count} objav" shares: few: "%{count} deljenja" one: "%{count} deljenje" other: "%{count} deljenj" - two: "%{count} deljenji" zero: "%{count} deljenj" tag_name: "Ime oznake: <b>%{name_tag}</b> Število: <b>%{count_tag}</b>" usage_statistic: "Statistika uporabe" @@ -82,7 +79,6 @@ sl: few: "%{count} uporabniki" one: "%{count} uporabnik" other: "%{count} uporabnikov" - two: "%{count} uporabnika" zero: "%{count} uporabnikov" week: "Teden" user_search: @@ -92,7 +88,6 @@ sl: few: "%{count} najdeni uporabniki" one: "%{count} najden uporabnik" other: "%{count} najdenih uporabnikov" - two: "%{count} najdena uporabnika" zero: "%{count} najdenih uporabnikov" you_currently: "trenutno imate na razpolago še %{user_invitation} povabil %{link}" weekly_user_stats: @@ -100,7 +95,6 @@ sl: few: "Število novih uporabnikov ta teden: %{count}" one: "Število novih uporabnikov ta teden: %{count}" other: "Število novih uporabnikov ta teden: %{count}" - two: "Število novih uporabnikov ta teden: %{count}" zero: "Nobenega novega uporabnika ta teden" current_server: "Trenutni čas strežnika je %{date}" ago: "%{time} nazaj" @@ -303,7 +297,6 @@ sl: few: "%{count} nova sporočila" one: "1 novo sporočilo" other: "%{count} novih sporočil" - two: "%{count} novi sporočili" zero: "Nobenih novih sporočil" index: create_a_new_message: "ustvari novo sporočilo" @@ -364,7 +357,6 @@ sl: few: "S to kodo so na razpolago še %{count} vabila" one: "S to kodo je na razpolago še eno vabilo" other: "S to kodo je na razpolago še %{count} vabil" - two: "S to kodo sta na razpolago še %{count} vabili" zero: "S to kodo ni več vabil na razpolago" comma_separated_plz: "Vnesete lahko več e-naslovov ločenih z vejico." if_they_accept_info: "v kolikor sprejmejo vaše povabilo, bodo samodejno dodani vidikom v katere ste jih povabili." @@ -400,19 +392,16 @@ sl: few: "%{count} osebam ni všeč" one: "1 osebi ni všeč" other: "%{count} osebam ni všeč" - two: "%{count} osebama ni všeč" zero: "ni osebe, ki ji ni všeč" people_like_this: few: "%{count} osebam je všeč" one: "1 osebi je všeč" other: "%{count} osebam je všeč" - two: "%{count} osebama je všeč" zero: "nikomur ni všeč" people_like_this_comment: few: "%{count} osebam je všeč" one: "%{count} osebi je všeč" other: "%{count} osebam je všeč." - two: "%{count} osebama je všeč" zero: "nikomur ni všeč" limited: "Omejeno" more: "Več" @@ -423,26 +412,22 @@ sl: few: "%{actors} so tudi napisali mnenje o %{post_link} osebe %{post_author}." one: "%{actors} je tudi napisal mnenje o %{post_link} osebe %{post_author}." other: "%{actors} jih je tudi napisalo mnenje o %{post_link} osebe %{post_author}." - two: "%{actors} sta tudi napisala mnenje o %{post_link} osebe %{post_author}." zero: "Nihče ni napisal mnenja o %{post_link} osebe %{post_author}." also_commented_deleted: few: "%{actors} so napisali mnenje o izbrisani objavi." one: "%{actors} je napisal mnenje o izbrisani objavi." other: "%{actors} jih je napisalo mnenje o izbrisani objavi." - two: "%{actors} sta napisala mnenje o izbrisani objavi." zero: "Nihče ni napisal mnenja o izbrisani objavi." comment_on_post: few: "%{actors} so napisali mnenje o vašem %{post_link}." one: "%{actors} je napisal mnenje o vašem %{post_link}." other: "%{actors} jih je napisalo mnenje o vašem %{post_link}." - two: "%{actors} sta napisala mnenje o vašem %{post_link}." zero: "Nihče ni napisal mnenja o vašem %{post_link}." helper: new_notifications: few: "%{count} nova obvestila" one: "1 novo obvestilo" other: "%{count} novih obvestil" - two: "%{count} novi obvestili" zero: "Ni novih obvestil" index: and: "in" @@ -451,7 +436,6 @@ sl: many: "in %{count} drugih" one: "in %{count} drugi" other: "in %{count} drugih" - two: "in %{count} druga" zero: "in nihče drug" mark_all_as_read: "Označi vse kot prebrano" mark_unread: "Označi kot neprebrano" @@ -460,50 +444,42 @@ sl: few: "%{actors} je všeč vaš %{post_link}." one: "%{actors} je všeč vaš %{post_link}." other: "%{actors} je všeč vaš %{post_link}." - two: "%{actors} je všeč vaš %{post_link}." zero: "Nikomur ni všeč vaš %{post_link}." liked_post_deleted: few: "%{actors} je všeč vaša izbrisana objava." one: "%{actors} je všeč vaša izbrisana objava." other: "%{actors} je všeč vaša izbrisana objava." - two: "%{actors} je všeč vaša izbrisana objava." zero: "%{actors} ni všeč vaša izbrisana objava." mentioned: few: "%{actors} so vas omenili v %{post_link}." one: "%{actors} vas je omenil v %{post_link}." other: "%{actors} vas je omenilo v %{post_link}." - two: "%{actors} sta vas omenila v %{post_link}." zero: "%{actors} vas ni omenilo v %{post_link}." mentioned_deleted: few: "%{actors} so vas omenili v izbrisani objavi." one: "%{actors} vas je omenil v izbrisani objavi." other: "%{actors} je omenilo vas v izbrisani objavi." - two: "%{actors} sta vas omenila v izbrisani objavi." zero: "%{actors} vas je omenilo v izbrisani objavi." post: "objava" private_message: few: "%{actors} so vam poslali sporočilo." one: "%{actors} vam je poslal sporočilo." other: "%{actors} vam jih je poslalo sporočilo." - two: "%{actors} sta vam poslala sporočilo." zero: "Nihče vam ni poslal sporočila." reshared: few: "%{actors} so delili vaš {post_link}." one: "%{actors} je delil vašo %{post_link}." other: "%{actors} jih je delilo vašo %{post_link}." - two: "%{actors} sta delila %{post_link}." zero: "Nihče ni delil vaš %{post_link}." reshared_post_deleted: few: "%{actors} so delili vašo izbrisano objavo." one: "%{actors} je delil vašo izbrisano objavo." other: "%{actors} jih je delilo vašo izbrisano objavo." - two: "%{actors} sta delila vašo izbrisano objavo." zero: "Nihče ni delil vaše izbrisane objave." started_sharing: few: "%{actors} so začeli deliti z vami." one: "%{actors} je začel deliti z vami." other: "%{actors} jih je začelo deliti z vami." - two: "%{actors} sta začela deliti z vami." zero: "%{actors} jih ni začelo deliti z vami." notifier: a_post_you_shared: "objava." @@ -662,7 +638,6 @@ sl: few: "%{count} slike o %{author}" one: "Ena slika o %{author}" other: "%{count} slik o %{author}" - two: "%{count} sliki o %{author}" zero: "Ni slik o %{author}" reshare_by: "Ponovna deljenja po %{author}" previous: "prejšnja" @@ -696,7 +671,6 @@ sl: few: "%{count} odzivi" one: "1 odziv" other: "%{count} odzivov" - two: "%{count} odziva" zero: "0 odzivov" registrations: closed: "Za ta Pod Diaspore registracije trenutno niso mogoče." @@ -739,7 +713,6 @@ sl: many: "%{count} novih prošnj!" one: "nova prošnja!" other: "%{count} novih prošenj!" - two: "%{count} novi prošnji!" zero: "ni novih prošenj" manage_aspect_contacts: existing: "Obstoječi stiki" @@ -757,7 +730,6 @@ sl: many: "%{count} delitev" one: "1 delitev" other: "%{count} delitev" - two: "%{count} delitvi" zero: "Ponovno deli" reshare_confirmation: "Deli objavo osebe %{author}?" reshare_original: "Deli izvirnik" @@ -812,7 +784,6 @@ sl: few: "V %{count} vidikih" one: "V %{count} vidiku" other: "V %{count} vidikih" - two: "V %{count} vidikih" zero: "Dodaj stik" contact_list: all_contacts: "Vsi stiki" @@ -888,7 +859,6 @@ sl: few: "vaše spročilo o stanju morajo vsebovati manj kot %{count} znake" one: "vaše spročilo o stanju morajo vsebovati manj kot %{count} znak" other: "vaše spročilo o stanju morajo vsebovati manj kot %{count} znakov" - two: "vaše spročilo o stanju morajo vsebovati manj kot %{count} znaka" zero: "vaše spročilo o stanju morajo vsebovati manj kot %{count} znakov" stream_helper: hide_comments: "Skrij vsa mnenja" @@ -896,7 +866,6 @@ sl: few: "Prikaži še %{count} mnenja" one: "Prikaži še eno mnenje" other: "Prikaži še %{count} mnenj" - two: "Prikaži še %{count} mnenji" zero: "Ni več mnenj" streams: activity: diff --git a/config/locales/diaspora/sr.yml b/config/locales/diaspora/sr.yml index 860e68e8f..ad72ee0b9 100644 --- a/config/locales/diaspora/sr.yml +++ b/config/locales/diaspora/sr.yml @@ -50,6 +50,11 @@ sr: unknown: "непознат наслов видеа" are_you_sure: "Јесте ли сигурни?" are_you_sure_delete_account: "Јесте ли сигурни да желите да затворите налог? Ово се не може повратити!" + aspect_memberships: + destroy: + failure: "Неуспех приликом уклањања особе из аспекта" + no_membership: "Немогуће пронаћи изабрану особу у том аспекту" + success: "Особа успешно уклоњена из аспекта" aspects: add_to_aspect: failure: "Неуспешно додавање особе у поглед." @@ -159,7 +164,32 @@ sr: success: "Твој поглед, %{name}, је успешно измењен." zero: "нема погледа" back: "Назад" + bookmarklet: + post_something: "Објави на Дијаспори" cancel: "Откажи" + comments: + new_comment: + commenting: "Коментарише се..." + contacts: + index: + add_to_aspect_link: "додај контакт аспекту %{name}" + all_contacts: "Сви контакти" + my_contacts: "Моји контакти" + no_contacts: "Изгледа да треба да додаш неке контакте!" + remove_person_from_aspect: "Уклони %{person_name} из аспекта %{aspect_name}" + title: "Контакти" + your_contacts: "Твоји контакти" + conversations: + index: + new_message: "Нова порука" + new: + send: "Пошаљи" + sending: "Шаљем..." + subject: "наслов" + to: "за" + show: + reply: "одговор" + replying: "Одговарам..." delete: "Уклони" email: "Имејл" error_messages: diff --git a/config/locales/diaspora/sv.yml b/config/locales/diaspora/sv.yml index 40f514766..00a8ef887 100644 --- a/config/locales/diaspora/sv.yml +++ b/config/locales/diaspora/sv.yml @@ -157,6 +157,8 @@ sv: donate: "Donera" handle_explanation: "Det här är ditt Diaspora-ID. Det är det här du ska ge till dina vänner om du vill att de ska lägga till dig på Diaspora." help: + any_problem: "Några problem?" + contact_podmin: "Kontakta din pods administratör." do_you: "Har du:" email_feedback: "%{link}a din respons, om du föredrar det" email_link: "E-post" @@ -164,6 +166,7 @@ sv: find_a_bug: "... hittat en %{link}?" have_a_question: "... en %{link}?" here_to_help: "Diaspora-gemenskapen finns här!" + mail_podmin: "Podadministratörs e-post" need_help: "Behöver du hjälp?" tag_bug: "bugg" tag_feature: "särdrag" @@ -278,11 +281,13 @@ sv: people_sharing: "Personer delar med dig:" spotlight: community_spotlight: "Gemenskapens rampljus" + suggest_member: "Föreslå en medlem" two: "%{count} kontakter" zero: "kontakter" conversations: create: fail: "Ogiltigt meddelande" + no_contact: "Hallå! Du måste först lägga till kontakten." sent: "Meddelandet har skickats" destroy: success: "Konversationen har tagits bort nu" @@ -335,7 +340,9 @@ sv: create: already_contacts: "Du är redan i kontakt med denna person" already_sent: "Du har redan bjudit in denna person." + empty: "Var snäll och ange minst en e-postadress." no_more: "Du har inga fler inbjudningar." + note_already_sent: "Inbjudningar har redan skickats till: %{emails}" own_address: "Du kan inte skicka en inbjudan till din egen adress." rejected: "Det är problem med följande e-postadresser: " sent: "Inbjudningarna har skickats till: %{emails}" @@ -416,7 +423,6 @@ sv: many: "%{count} nya notiser" one: "En ny notis" other: "%{count} nya notiser" - two: "Två nya notiser" zero: "Inga nya notiser" index: and: "och" @@ -425,7 +431,6 @@ sv: many: "och %{count} till" one: "och en till" other: "och %{count} till" - two: "och två till" zero: "och ingen mer" mark_all_as_read: "Markera alla som lästa" mark_unread: "Markera som oläst" @@ -621,7 +626,6 @@ sv: many: "%{count} foton av %{author}" one: "Ett foto av %{author}" other: "%{count} foton av %{author}" - two: "Två foton av %{author}" zero: "Inga foton av %{author}" reshare_by: "Delades vidare av %{author}" previous: "föregående" @@ -765,7 +769,6 @@ sv: many: "I %{count} aspekter" one: "I %{count} aspekt" other: "I %{count} aspekter" - two: "I %{count} aspekter" zero: "Lägg till kontakt" contact_list: all_contacts: "Alla kontakter" @@ -848,7 +851,6 @@ sv: many: "Visa %{count} ytterligare kommentarer" one: "Visa en ytterligare kommentar" other: "Visa %{count} ytterligare kommentarer" - two: "Visa två ytterligare kommentarer" zero: "Inga fler kommentarer" streams: activity: @@ -969,6 +971,8 @@ sv: getting_started: awesome_take_me_to_diaspora: "Häftigt! Ta mig till Diaspora*" community_welcome: "Vi i Diasporagemenskapen är glada att ha dig här!" + connect_to_facebook: "Vi kan skynda på processen genom %{link} till Diaspora. Det kommer att hämta ditt namn, din bild och tillåta korsinlägg." + connect_to_facebook_link: "länkar ihop ditt Facebook-konto" hashtag_explanation: "Hashtaggar gör det möjligt att diskutera och följa dina intressen. Det är också ett bra sätt att lära känna nya människor på Diaspora." hashtag_suggestions: "Testa att följa taggar såsom #konst, #film, #gif, etc." saved: "Sparat!" diff --git a/config/locales/diaspora/te.yml b/config/locales/diaspora/te.yml index c567cddfa..d16b60dd8 100644 --- a/config/locales/diaspora/te.yml +++ b/config/locales/diaspora/te.yml @@ -136,7 +136,6 @@ te: many: "%{count} కొత్త సందేశాలు" one: "1 కొత్త సందేశం" other: "%{count} కొత్త సందేశాలు" - two: "%{count} కొత్త సందేశాలు" zero: "కొత్త సందేశాలు లేవు" index: create_a_new_message: "ఒక కొత్త సందేశాన్ని సృష్టించండి" @@ -185,7 +184,6 @@ te: many: "%{count} dislikes" one: "%{count} dislike" other: "%{count} dislikes" - two: "%{count} dislikes" zero: "no dislikes" people_like_this: one: "%{count} ఇష్టం" @@ -196,7 +194,6 @@ te: many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" limited: "పరిమితం" more: "మరిన్ని" @@ -208,21 +205,18 @@ te: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -230,7 +224,6 @@ te: many: "%{count} new notifications" one: "1 new notification" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "No new notifications" index: and: "మరియు" @@ -239,63 +232,54 @@ te: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" liked: few: "%{actors} have liked your %{post_link}." many: "%{actors} have liked your %{post_link}." one: "%{actors} has liked your %{post_link}." other: "%{actors} have liked your %{post_link}." - two: "%{actors} have liked your %{post_link}." zero: "%{actors} have liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} have mentioned you in a %{post_link}." many: "%{actors} have mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} have mentioned you in a %{post_link}." - two: "%{actors} have mentioned you in a %{post_link}." zero: "%{actors} have mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." private_message: few: "%{actors} sent you a message." many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} have reshared your %{post_link}." many: "%{actors} have reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} have reshared your %{post_link}." - two: "%{actors} have reshared your %{post_link}." zero: "%{actors} have reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: click_here: "ఇక్కడ నొక్కండి" @@ -343,7 +327,6 @@ te: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" previous: "మునుపటి" privacy: "అంతరంగికత" @@ -369,7 +352,6 @@ te: many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: edit: @@ -387,7 +369,6 @@ te: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" new_request_to_person: sent: "పంపబడింది!" @@ -398,7 +379,6 @@ te: many: "%{count} reshares" one: "1 పంచుకోలు" other: "%{count} పంచుకోళ్ళు" - two: "%{count} పంచుకోళ్ళు" zero: "Reshare" show_original: "అసలుని చూపించు" search: "వెతుకు" @@ -416,7 +396,6 @@ te: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add contact" contact_list: all_contacts: "అన్ని పరిచయాలు" @@ -436,7 +415,6 @@ te: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: show_comments: @@ -444,7 +422,6 @@ te: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: activity: diff --git a/config/locales/diaspora/tr.yml b/config/locales/diaspora/tr.yml index 280b6c67c..18c59b380 100644 --- a/config/locales/diaspora/tr.yml +++ b/config/locales/diaspora/tr.yml @@ -260,7 +260,6 @@ tr: many: "%{count} yeni mesaj" one: "1 yeni mesaj" other: "%{count} yeni mesaj" - two: "%{count} yeni mesaj" zero: "Yeni mesaj yok" index: create_a_new_message: "yeni mesaj oluştur" @@ -350,21 +349,18 @@ tr: many: "%{count} kişi beğenmedi" one: "1 kişi beğenmedi" other: "%{count} kişi beğenmedi" - two: "%{count} beğenmeme" zero: "beğenmeyen yok" people_like_this: few: "%{count} kişi beğendi" many: "%{count} kişi beğendi" one: "1 kişi beğendi" other: "%{count} kişi beğendi" - two: "%{count} kişi beğendi" zero: "beğenme yok" people_like_this_comment: few: "%{count} kişi bunu beğendi" many: "%{count} kişi bunu beğendi!" one: "%{count} beğenme" other: "%{count} beğenme" - two: "%{count} kişi bunu beğendi" zero: "beğenen yok" limited: "Sınırlı" more: "Daha fazla" @@ -376,21 +372,18 @@ tr: many: "%{actors} %{post_author} kişisinin %{post_link}sini yorumladı." one: "%{actors} %{post_author} kişisinin %{post_link}sini yorumladı." other: "%{actors} %{post_author} kişisinin %{post_link}sini yorumladı." - two: "%{actors} %{post_author} kişisinin %{post_link}sini yorumladı." zero: "%{actors} %{post_author} kişisinin %{post_link}sini yorumladı." also_commented_deleted: few: "%{actors} silinmiş gönderinize yorum yazdı." many: "%{actors} silinmiş gönderinize yorum yazdı." one: "%{actors} silinmiş gönderinize yorum yazdı." other: "%{actors} silinmiş gönderinize yorum yazdı." - two: "%{actors} silinmiş gönderinize yorum yazdı." zero: "%{actors} silinmiş gönderinize yorum yazdı." comment_on_post: few: "%{actors} %{post_link}yi yorumladı." many: "%{actors} %{post_link}yi yorumladı." one: "%{actors} %{post_link}yi yorumladı." other: "%{actors} %{post_link}yi yorumladı." - two: "%{actors} %{post_link}yi yorumladı." zero: "%{actors} %{post_link}yi yorumladı." helper: new_notifications: @@ -398,7 +391,6 @@ tr: many: "%{count} yeni bildirim" one: "1 yeni bildirim" other: "%{count} yeni bildirim" - two: "%{count} yeni bildirim" zero: "Yeni bildirim yok" index: and: "ve" @@ -407,7 +399,6 @@ tr: many: "ve %{count} diğer kişi" one: "ve bir kişi daha" other: "ve %{count} diğer kişi" - two: "ve %{count} diğer kişi" zero: "ve başka hiç kimse" mark_all_as_read: "Tümünü okundu olarak işaretle" mark_unread: "Okunmadı olarak işaretle" @@ -417,28 +408,24 @@ tr: many: "%{actors} senin %{post_link} unsurunu iğneledi." one: "%{actors} senin %{post_link} unsurunu iğneledi." other: "%{actors} senin %{post_link} unsurunu iğneledi." - two: "%{actors} senin %{post_link} unsurunu iğneledi." zero: "%{actors} senin %{post_link} unsurunu iğneledi." liked_post_deleted: few: "%{actors} silinmiş gönderinizi iğneledi." many: "%{actors} silinmiş gönderinizi iğneledi." one: "%{actors} silinmiş gönderinizi iğneledi." other: "%{actors} silinmiş gönderinizi iğneledi." - two: "%{actors} silinen gönderiyi iğneledi." zero: "%{actors} silinmiş gönderinizi iğnelemedi." mentioned: few: "%{actors} %{post_link} senden bahsetti." many: "%{actors} %{post_link} senden bahsetti." one: "%{actors} kişisi %{post_link} gönderisinde senden bahsetti." other: "%{actors} %{post_link}senden bahsetti." - two: "%{actors} senden %{post_link} unsurunda bahsetti." zero: "%{actors} %{post_link} senden bahsetti." mentioned_deleted: few: "%{actors} silinmiş gönderide senden bahsetti." many: "%{actors} silinmiş gönderide senden bahsetti." one: "%{actors} silinmiş gönderide senden bahsetti." other: "%{actors} silinmiş gönderide senden bahsetti." - two: "%{actors} silinmiş bir gönderiden bahsetti." zero: "%{actors} silinmiş gönderide senden bahsetti." post: "gönderi" private_message: @@ -446,28 +433,24 @@ tr: many: "%{actors} mesaj gönderdi." one: "%{actors} mesaj gönderdi." other: "%{actors} mesaj gönderdi." - two: "%{actors} size bir mesaj gönderdi." zero: "%{actors} mesaj gönderdi." reshared: few: "%{actors} %{post_link}yi tekrar paylaştı." many: "%{actors} %{post_link}yi tekrar paylaştı." one: "%{actors} tekrar paylaştı %{post_link}." other: "%{actors} %{post_link}yi tekrar paylaştı." - two: "%{actors} %{post_link}yi tekrar paylaştı." zero: "%{actors} %{post_link}yi tekrar paylaştı." reshared_post_deleted: few: "%{actors} silenen gönderiyi tekrar paylaştı." many: "%{actors} silinen gönderiyi tekrar paylaştı." one: "%{actors} silenen gönderiyi tekrar paylaştı." other: "%{actors} silenen gönderiyi tekrar paylaştı." - two: "%{actors} silinmiş gönderiyi tekrar paylaştı." zero: "%{actors} silenen gönderiyi tekrar paylaştı." started_sharing: few: "%{actors} sizinle paylaşıma başladı." many: "%{actors} sizinle paylaşıma başladı." one: "%{actors} sizinle paylaşıma başladı." other: "%{actors} sizinle paylaşıma başladı." - two: "%{actors} sizinle paylaşıma başladı." zero: "%{actors} sizinle paylaşıma başladı." notifier: a_post_you_shared: "gönderi" @@ -627,7 +610,6 @@ tr: many: "%{author} tarafından %{count} fotoğraf" one: "%{author} tarafından bir fotoğraf" other: "%{author} tarafından %{count} fotoğraf" - two: "%{author} tarafından iki fotoğraf" zero: "%{author} tarafından fotoğraf yok" reshare_by: "%{author} tarafından tekrar paylaşım" previous: "önceki" @@ -660,7 +642,6 @@ tr: many: "%{count} tepki" one: "1 tepki" other: "%{count} tepki" - two: "%{count} tepki" zero: "0 tepki" registrations: closed: "Üyelik bu Diaspora'da kapandı." @@ -702,7 +683,6 @@ tr: many: "%{count} yeni istek!" one: "yeni istek!" other: "%{count} yeni istek!" - two: "%{count} yeni istek!" zero: "yeni istek yok" manage_aspect_contacts: existing: "Mevcut rehber" @@ -720,7 +700,6 @@ tr: many: "%{count} tekrar paylaşım" one: "1 tekrar paylaşım" other: "%{count} tekrar paylaşım" - two: "%{count} tekrar paylaşım" zero: "Tekrar paylaş" reshare_confirmation: "Tekrar paylaş %{author} - %{text}?" reshare_original: "Orijinali tekrar paylaş" @@ -776,7 +755,6 @@ tr: many: "%{count} yönde" one: "%{count} yönde" other: "%{count} yönde" - two: "%{count} yönde" zero: "Yönüne ekle" contact_list: all_contacts: "Bütün kişiler" @@ -853,7 +831,6 @@ tr: many: "durum mesajları %{count} karakterden az olmalıdır." one: "durum mesajları %{count} karakterden az olmalıdır." other: "durum mesajları %{count} karakterden az olmalıdır." - two: "lütfen durum güncellerken %{count} karakterden az kullanın" zero: "durum mesajları %{count} karakterden az olmalıdır." stream_helper: hide_comments: "Yorumları gizle" @@ -862,7 +839,6 @@ tr: many: "%{count} yorum daha göster" one: "Ek bir yorum göster" other: "%{count} ek yorum göster" - two: "İki yorum daha göster" zero: "Daha fazla yorum yok" streams: activity: diff --git a/config/locales/diaspora/uk.yml b/config/locales/diaspora/uk.yml index 886fe4c09..ea61fb59b 100644 --- a/config/locales/diaspora/uk.yml +++ b/config/locales/diaspora/uk.yml @@ -11,7 +11,7 @@ uk: _home: "Головна" _photos: "фотографій" _services: "Сервіси" - account: "Аккаунт" + account: "Обліковий запис" activerecord: errors: models: @@ -44,7 +44,7 @@ uk: admin_bar: pages: "Сторінки" pod_stats: "Активність поду" - user_search: "пошук користувачів" + user_search: "Пошук користувачів" weekly_user_stats: "Щотижнева активність користувачів" stats: 2weeks: "2 тижні" @@ -55,7 +55,10 @@ uk: one: "коментарів: %{count}" other: "коментарів: %{count}" zero: "жодного коментаря" + current_segment: "За цей період середня щоденна кількість дописів на користувача склала <b>%{post_yest}</b>, від <b>%{post_day}</b>" daily: "Щоденно" + display_results: "Результати за такий період: <b>%{segment}</b>" + go: "Уперед" month: "Місяць" posts: few: "записів: %{count}" @@ -63,7 +66,14 @@ uk: one: "записів: %{count}" other: "записів: %{count}" zero: "жодного запису" - usage_statistic: "Активність використання" + shares: + few: "%{count} поширення" + many: "%{count} поширень" + one: "%{count} поширень" + other: "поширення" + zero: "немає поширень" + tag_name: "Мітка: <b>%{name_tag}</b> Кількість: <b>%{count_tag}</b>" + usage_statistic: "Статистика використання" users: few: "користувачів: %{count}" many: "користувачів: %{count}" @@ -80,7 +90,15 @@ uk: one: "знайдено користувачів: %{count}" other: "знайдено користувачів: %{count}" zero: "не знайдено жодного користувача" - you_currently: "у вас залишилось %{user_invitation}%{user_invitation} запрошень %{link}" + you_currently: "у вас залишилось %{user_invitation} запрошень %{link}" + weekly_user_stats: + amount_of: + few: "%{count} нових користувачів цього тижня" + many: "" + one: "%{count} новий користувач цього тижня" + other: "" + zero: "Немає нових користувачів цього тижня" + current_server: "Дата зараз на сервері: %{date}" ago: "%{time} назад" all_aspects: "Усі аспекти" application: @@ -88,19 +106,19 @@ uk: unknown_person: "невідома персона" video_title: unknown: "Невідома назва відеозапису" - are_you_sure: "Ви упевнені?" - are_you_sure_delete_account: "Ви упевнені, що хочете закрити свій обліковий запис? Цю процедуру неможливо буде відмінити!" + are_you_sure: "Ви впевнені?" + are_you_sure_delete_account: "Ви впевнені, що хочете закрити свій обліковий запис? Цю процедуру неможливо буде скасувати!" aspect_memberships: destroy: - failure: "Не вдалося видалити людину з аспектів" + failure: "Не вдалося вилучити особу з аспектів" no_membership: "Не вдалося знайти цю людину в цьому аспекті" - success: "Людина успішно видалена з аспектів" + success: "Особа успішно вилучена з аспектів" aspects: add_to_aspect: failure: "Не вдалося додати друга в аспект." success: "Друг доданий в аспект." aspect_contacts: - done_editing: "редагування завершене" + done_editing: "редагування завершено" aspect_listings: add_an_aspect: "+ Додати аспект" deselect_all: "Вимкнути всі" @@ -116,13 +134,13 @@ uk: failure: "Не вдалося створити аспект." success: "Ваш новий аспект %{name} створений" destroy: - failure: "%{name} не порожній і не може бути видалений." + failure: "%{name} не порожній і не може бути вилучений." success: "%{name} успішно видалений." edit: - add_existing: "Додати існуючий контакт" + add_existing: "Додати наявний контакт" aspect_list_is_not_visible: "список аспектів прихований від інших користувачів" aspect_list_is_visible: "список аспектів видно іншим користувачам" - confirm_remove_aspect: "Ви упевнені, що хочете видалити цей аспект?" + confirm_remove_aspect: "Ви впевнені, що хочете вилучити цей аспект?" done: "Виконано" make_aspect_list_visible: "зробити контакти в цьому аспекті видимими один одному?" remove_aspect: "Видалити цей аспект" @@ -131,9 +149,9 @@ uk: updating: "оновлення" few: "%{count} аспект[-и, -ів]" helper: - are_you_sure: "Ви упевнені в тому, що хочете видалити цей аспект?" + are_you_sure: "Ви впевнені в тому, що хочете вилучити цей аспект?" aspect_not_empty: "Аспект не порожній" - remove: "видалити" + remove: "вилучити" index: cubbies: explanation: "Cubbi.es це перша програма з розвитку діаспори." @@ -141,27 +159,28 @@ uk: learn_more: "Дізнатися більше" diaspora_id: content_1: "Ваш ідентифікатор в Діаспорі:" - content_2: "По ньому будь-хто зможе знайти вас в Діаспорі." + content_2: "За ним будь-хто зможе знайти вас в Діаспорі." heading: "Ідентифікатор в Діаспорі" donate: "Пожертвувати" handle_explanation: "Це ваш ідентифікатор в Діаспорі. Як і адреса електронної пошти, ви можете дати його людям для зв'язку з вами." help: do_you: "Ви:" email_feedback: "%{link} ваші відгуки" - feature_suggestion: "... хочете запропонувати щось нове (%{link})?" + email_link: "Надіслати на email" + feature_suggestion: "...хочете запропонувати нову %{link}?" find_a_bug: "... знайшли помилку (%{link})?" have_a_question: "... хочете поставити питання (%{link})?" here_to_help: "Товариство Діаспори до ваших послуг!" need_help: "Потрібна допомога?" tag_bug: "помилка" - tag_feature: "власність" - tag_question: "питання" + tag_feature: "функцію" + tag_question: "запитання" tutorials_wiki_and_forum: "%{tutorial}, %{wiki} і %{forum}: довідкові посібники, що складаються товариством, інструкції та новини." introduce_yourself: "Це ваш потік. Пірнайте і освоюйтеся." - keep_diaspora_running: "Допоможіть розвитку Діаспори щомісячним внеском!" + keep_diaspora_running: "Допоможіть розвитку DIASPORA* щомісячним внеском!" keep_pod_running: "Допоможіть %{pod} працювати швидко — придбайте нашим серверам горнятко кави, зробивши щомісячний внесок!" new_here: - follow: "Стежте за міткою %{link} і вітайте нових користувачів в Діаспорі*!" + follow: "Стежте за міткою %{link} і вітайте нових користувачів у DIASPORA*!" learn_more: "Дізнатися більше" title: "Вітайте новачків" no_contacts: "Контакти відсутні" @@ -169,10 +188,10 @@ uk: people_sharing_with_you: "Люди діляться з вами" post_a_message: "новий запис >>" services: - content: "Ви можете підключити до Діаспори наступні служби:" + content: "Ви можете під’єднати до Діаспори такі служби:" heading: "Підключення служб" unfollow_tag: "Не стежити за міткою #%{tag}" - welcome_to_diaspora: "Ласкаво просимо в Діаспору %{name}!" + welcome_to_diaspora: "Ласкаво просимо до DIASPORA* %{name}!" many: "%{count} аспект[-и, -ів]" move_contact: error: "Помилка при переміщенні контакту : %{inspect}" @@ -196,21 +215,21 @@ uk: friends: "Друзі" work: "Робота" selected_contacts: - manage_your_aspects: "Управління аспектами." - no_contacts: "У вас тут доки немає жодного контакту." + manage_your_aspects: "Керування аспектами." + no_contacts: "У вас тут поки що немає жодного контакту." view_all_community_spotlight: "Подивитися усіх рекомендованих" view_all_contacts: "Усі контакти" show: edit_aspect: "редагувати аспект" two: "%{count} аспектів" update: - failure: "Ваш аспект %{name}, має занадто довге ім'я для збереження." + failure: "Ваш аспект %{name} має занадто довге ім'я для збереження." success: "Ваш аспект %{name} успішно відредагований." zero: "немає аспектів" authorizations: index: no_applications: "Ви ще не зареєстрували жодного додатку." - revoke_access: "Відмінити доступ" + revoke_access: "Відкликати доступ" new: authorize: "Авторизувати" cubbies_will: "Cubbies зможе публікувати фотографії від вашого імені" @@ -218,17 +237,17 @@ uk: back: "Назад" blocks: create: - failure: "Я не можу заблокувати цього користувача. #evasion" - success: "Добре, ви більше не побачите цього користувача у своєму потоці. #silencio!" + failure: "Неможливо заблокувати цього користувача. #evasion" + success: "Гаразд, ви більше не побачите цього користувача у своєму потоці. #silencio!" destroy: - failure: "Не можу припинити блокувати цього користувача. #evasion" + failure: "Неможливо припинити блокувати цього користувача. #evasion" success: "Подивимося, що вони скажуть! #sayhello" bookmarklet: explanation: "Пишіть з будь-якої сторінки, використовуючи %{link}." - heading: "Букмарклет Діаспори" + heading: "Інтерактивна закладка Діаспори" post_something: "повідомленняя до Діаспори" post_success: "Опубліковано! Закриття!" - cancel: "Відміна" + cancel: "Скасувати" comments: few: "%{count} коментарів" many: "%{count} коментарів" @@ -249,13 +268,13 @@ uk: add_to_aspect_link: "додати контакти до аспекту %{name}" all_contacts: "Усі контакти" community_spotlight: "У центрі уваги" - many_people_are_you_sure: "Ви упевнені, що хочете почати приватну бесіду з числом контактів більше %{suggested_limit}? Можливо, краще просто написати повідомлення в цей аспект." + many_people_are_you_sure: "Ви упевнені, що хочете почати приватну бесіду з кількістю контактів, більшою за %{suggested_limit}? Можливо, краще просто написати повідомлення в цей аспект." my_contacts: "Мої контакти" no_contacts: "Схоже, вам потрібно додати декілька контактів!" no_contacts_message: "Зазирніть до %{community_spotlight}" no_contacts_message_with_aspect: "Зазирніть до %{community_spotlight}%{community_spotlight} або %{add_to_aspect_link}" only_sharing_with_me: "Що тільки діляться зі мною" - remove_person_from_aspect: "Видалити %{person_name} з \"%{aspect_name}\"" + remove_person_from_aspect: "Вилучити %{person_name} з \"%{aspect_name}\"" start_a_conversation: "Почати бесіду" title: "Контакти" your_contacts: "Ваші контакти" @@ -270,17 +289,16 @@ uk: zero: "контактів" conversations: create: - fail: "Невірне повідомлення" + fail: "Неправильне повідомлення" sent: "Повідомлення відправлене" destroy: - success: "Розмова успішно видалена" + success: "Розмова успішно вилучена" helper: new_messages: few: "Нові повідомлення: %{count}" many: "Нові повідомлення: %{count}" one: "1 нове повідомлення" other: "Нові повідомлення: %{count}" - two: "%{count} нових повідомлень" zero: "Нових повідомлень немає" index: create_a_new_message: "написати нове повідомлення" @@ -292,13 +310,13 @@ uk: new: abandon_changes: "Відмовитися від змін?" send: "Відправити" - sending: "Відправка..." + sending: "Надсилання..." subject: "тема" to: "кому" new_message: fail: "Невірне повідомлення" show: - delete: "видалити і заблокувати розмову" + delete: "вилучити й заблокувати розмову" reply: "відповісти" replying: "Відповідь..." date: @@ -306,17 +324,19 @@ uk: birthday: "%d %B" birthday_with_year: "%d %B %Y" fullmonth_day: "%d %B" - delete: "Видалити" + delete: "Вилучити" email: "Е-пошта" error_messages: helper: - correct_the_following_errors_and_try_again: "Виправіть помилки і спробуйте знову." + correct_the_following_errors_and_try_again: "Виправіть такі помилки і спробуйте знову." invalid_fields: "Недійсні поля" + login_try_again: "Будь ласка, <a href='%{login_link}'>увійдіть</a> і спробуйте знову." + post_not_public: "Повідомлення, яке ви намагаєтесь переглянути, не є публічним." fill_me_out: "Заповнити" find_people: "Пошук людей або міток" hide: "Приховати" invitation_codes: - excited: "%{name} радий бачити вас тут." + excited: "%{name} радий(-а) бачити вас тут." invitations: a_facebook_user: "Користувач Facebook" check_token: @@ -326,7 +346,7 @@ uk: already_sent: "Ви вже запросили цю людину." no_more: "У вас закінчилися запрошення." own_address: "Ви не можете відправити запрошення на вашу власну адресу." - rejected: "Наступні адреси електронної пошти мають проблеми:" + rejected: "Такі адреси електронної пошти мають проблеми: " sent: "Ваші запрошення відправлені:" edit: accept_your_invitation: "Прийняти ваше запрошення" @@ -334,7 +354,7 @@ uk: new: already_invited: "Наступні люди не прийняли ваше запрошення:" aspect: "Аспект" - check_out_diaspora: "Спробуйте Діаспору!" + check_out_diaspora: "Спробуйте DIASPORA*!" codes_left: few: "За цим кодом залишилось запрошень: %{count}" many: "За цим кодом залишилось запрошень: %{count}" @@ -342,10 +362,10 @@ uk: other: "За цим кодом залишилось запрошень: %{count}" zero: "За цим кодом не залишилось запрошень." comma_separated_plz: "Ви можете додати кілька адрес електронної пошти, розділивши їх комами." - if_they_accept_info: "після згоди з їх боку, вони будуть додані в запропонований вами аспект." - invite_someone_to_join: "Запросити кого-небудь в Діаспору!" + if_they_accept_info: "після згоди з їхнього боку, вони будуть додані в запропонований вами аспект." + invite_someone_to_join: "Запросити когось до DIASPORA*!" language: "Мова" - paste_link: "Поділіться цим посиланням з друзями, щоб запросити їх до Діаспори*." + paste_link: "Поділіться цим посиланням з друзями, щоб запросити їх до DIASPORA*." personal_message: "Особисте повідомлення" resend: "Ще раз послати" send_an_invitation: "Відправити запрошення" @@ -363,7 +383,7 @@ uk: admin: "адмін" blog: "блог" code: "код" - login: "логін" + login: "увійти" logout: "вийти" profile: "профіль" recent_notifications: "Останні сповіщення" @@ -376,21 +396,18 @@ uk: many: "%{count} не сподобалося" one: "%{count} не сподобалося" other: "%{count} не сподобалося" - two: "%{count} не сподобалося" zero: "нікому не сподобалося" people_like_this: few: "%{count} сподобалося" many: "%{count} сподобалося" one: "%{count} сподобалося" other: "%{count} сподобалося" - two: "%{count} сподобалося" zero: "нікому не сподобалося" people_like_this_comment: few: "%{count} сподобалося" many: "%{count} сподобалося" one: "%{count} сподобалося" other: "%{count} сподобалося" - two: "%{count} сподобалося" zero: "не сподобалося нікому" limited: "Обмежена" more: "Ще" @@ -402,21 +419,18 @@ uk: many: "%{actors} також прокоментували %{post_link} %{post_author}." one: "%{actors} також прокоментував(ла) %{post_link} %{post_author}." other: "%{actors} також прокоментував(ла) %{post_link} %{post_author}." - two: "%{actors} також прокоментували %{post_link} %{post_author}." zero: "%{actors} також прокоментував(ла) %{post_link} %{post_author}." also_commented_deleted: - few: "%{actors} коментували ваше видалене повідомлення." - many: "%{actors} коментували видалене повідомлення." - one: "%{actors} коментували ваше видалене повідомлення." - other: "%{actors} коментували ваше видалене повідомлення." - two: "%{actors} коментували видалене повідомлення." - zero: "%{actors} коментували ваше видалене повідомлення." + few: "%{actors} коментували ваше вилучене повідомлення." + many: "%{actors} коментували вилучене повідомлення." + one: "%{actors} коментували ваше вилучене повідомлення." + other: "%{actors} коментували ваше вилучене повідомлення." + zero: "%{actors} коментували ваше вилучене повідомлення." comment_on_post: few: "%{actors} прокоментували вашу %{post_link}." many: "%{actors} прокоментували вашу %{post_link}." one: "%{actors} прокоментували вашу %{post_link}." other: "%{actors} прокоментували вашу %{post_link}." - two: "%{actors} прокоментували вашу %{post_link}." zero: "%{actors} прокоментували вашу %{post_link}." helper: new_notifications: @@ -424,7 +438,6 @@ uk: many: "%{count} нових повідомлень" one: "1 нове сповіщення" other: "Нові сповіщення: %{count}" - two: "%{count} нових повідомлень" zero: "Нових сповіщень немає" index: and: "і" @@ -433,76 +446,67 @@ uk: many: "і %{count} інших" one: "і ще один" other: "і %{count} іншим" - two: "і %{count} інших" zero: "і більше нікому" - mark_all_as_read: "Відмітити усі як прочитані" - mark_unread: "відмітити як непрочитане" + mark_all_as_read: "Позначити всі як прочитані" + mark_unread: "позначити як непрочитане" notifications: "Повідомлення" liked: few: "%{actors} сподобався ваш %{post_link}." many: "%{actors} сподобався ваш %{post_link}." one: "%{actors} сподобався ваш %{post_link}." other: "%{actors} сподобався ваш %{post_link}." - two: "%{actors} сподобався ваш %{post_link}." zero: "%{actors} сподобався ваш %{post_link}." liked_post_deleted: - few: "%{actors} подобався ваш видалений запис." - many: "%{actors} подобався ваш видалений запис." - one: "%{actors} подобався ваш видалений запис." - other: "%{actors} подобався ваш видалений запис." - two: "%{actors} подобався ваш видалений запис." - zero: "%{actors} подобався ваш видалений запис." + few: "%{actors} подобався ваш вилучений запис." + many: "%{actors} подобався ваш вилучений запис." + one: "%{actors} подобався ваш вилучений запис." + other: "%{actors} подобався ваш вилучений запис." + zero: "%{actors} подобався ваш вилучений запис." mentioned: few: "%{actors} згадали вас в %{post_link}." many: "%{actors} згадали вас в %{post_link}." one: "%{actors} згадав(ла) вас в %{post_link}." other: "%{actors} згадали вас в %{post_link}." - two: "%{actors} згадали вас в %{post_link}." zero: "%{actors} згадали вас в %{post_link}." mentioned_deleted: - few: "%{actors} згадали вас у видаленому записі." - many: "%{actors} згадали вас у видаленому записі." - one: "%{actors} згадали вас у видаленому записі." - other: "%{actors} згадали вас у видаленому повідомленні." - two: "%{actors} згадали вас у видаленому записі." - zero: "%{actors} згадали вас у видаленому повідомленні." + few: "%{actors} згадали вас у вилученому записі." + many: "%{actors} згадали вас у вилученому записі." + one: "%{actors} згадали вас у вилученому записі." + other: "%{actors} згадали вас у вилученому повідомленні." + zero: "%{actors} згадали вас у вилученому повідомленні." post: "запис" private_message: - few: "%{actors} відправили вам повідомлення." - many: "%{actors} відправили вам повідомлення." - one: "%{actors} послали вам повідомлення." - other: "%{actors} послали вам повідомлення." - two: "%{actors} відправили вам повідомлення." - zero: "%{actors} послали вам повідомлення." + few: "%{actors} надіслали вам повідомлення." + many: "%{actors} надіслали вам повідомлення." + one: "%{actors} надіслали вам повідомлення." + other: "%{actors} надіслали вам повідомлення." + zero: "%{actors} надіслали вам повідомлення." reshared: few: "%{actors} поділилися вашим %{post_link}." many: "%{actors} поділилися вашим %{post_link}." one: "%{actors} поділився(лась) вашою %{post_link}." other: "%{actors} поділилися вашим %{post_link}." - two: "%{actors} поділилися вашим %{post_link}." zero: "%{actors} поділилися вашим %{post_link}." reshared_post_deleted: - few: "%{actors} поділилися вашим видаленим записом." - many: "%{actors} поділилися вашим видаленим записом." - one: "%{actors} поділився(лась) вашим видаленим записом." - other: "%{actors} поділилися вашим видаленим записом." - two: "%{actors} поділилися вашим видаленим записом." - zero: "%{actors} поділилися вашим видаленим записом." + few: "%{actors} поділилися вашим вилученим записом." + many: "%{actors} поділилися вашим вилученим записом." + one: "%{actors} поділився(лась) вашим вилученим записом." + other: "%{actors} поділилися вашим вилученим записом." + zero: "%{actors} поділилися вашим вилученим записом." started_sharing: few: "%{actors} почав(ла) ділитися з вами." many: "%{actors} почав(ла) ділитися з вами." one: "%{actors} почав(ла) ділитися з вами." other: "%{actors} почав(ла) ділитися з вами." - two: "%{actors} почав(ла) ділитися з вами." zero: "%{actors} почав(ла) ділитися з вами." notifier: a_post_you_shared: "запис." - accept_invite: "Прийміть ваше запрошення до Діаспори*!" + accept_invite: "Прийміть ваше запрошення до DIASPORA*!" click_here: "натисніть сюди" comment_on_post: reply: "Відповісти або подивитися запис %{name} >" confirm_email: - click_link: "Щоб активувати вашу адресу %{unconfirmed_email}, будь ласка, перейдіть по цьому посиланню:" + click_link: "Щоб активувати вашу адресу %{unconfirmed_email}, будь ласка, перейдіть на цим посиланням:" subject: "Будь ласка, активуйте вашу нову адресу %{unconfirmed_email}" email_sent_by_diaspora: "Цей лист був надісланий %{pod_name}. Якщо ви не бажаєте отримувати подібні листи," hello: "Привіт %{name}!" @@ -510,7 +514,7 @@ uk: message: |- Вітаємо! - Вас запросили до Діаспори*! + Вас запросили до DIASPORA*! Щоб долучитися, перейдіть за посиланням: @@ -519,31 +523,31 @@ uk: З любов’ю, - поштовий робот Діапори*! + поштовий робот DIASPORA*. [1]: %{invite_url} - invited_you: "%{name} запросив(-ла) вас до Діаспори*" + invited_you: "%{name} запросив(-ла) вас до DIASPORA*" liked: liked: "%{name} сподобалося Ваше повідомлення" view_post: "Подивитися запис >" mentioned: - mentioned: "згадав вас в повідомленні:" - subject: "%{name} згадав вас в Діаспорі*" + mentioned: "вас згадали у дописі:" + subject: "%{name} згадав вас у DIASPORA*" private_message: reply_to_or_view: "Відповісти або подивитися цю бесіду >" reshared: - reshared: "%{name} тільки що поділився(лась) вашим записом" + reshared: "%{name} щойно поділився(лась) вашим записом" view_post: "Подивитися запис >" single_admin: - admin: "Ваш адміністратор Діаспори" - subject: "Повідомлення про ваш аккаунт Діаспори :" + admin: "Ваш адміністратор DIASPORA*" + subject: "Повідомлення про ваш аккаунт DIASPORA*:" started_sharing: sharing: "почав(ла) ділитися з вами!" - subject: "Користувач %{name} почав ділитися з вами в Діаспорі*" + subject: "Користувач %{name} почав ділитися з вами в DIASPORA*" view_profile: "%{name} - подивитися профіль" thanks: "Спасибі," to_change_your_notification_settings: "щоб змінити ваші налаштування повідомлень" - ok: "Ок" + ok: "Гаразд" or: "або" password: "Пароль" password_confirmation: "Підтвердження пароля" @@ -564,7 +568,7 @@ uk: no_one_found: "...не вдалося нікого знайти." no_results: "Введіть текст для пошуку." results_for: "результати пошуку для" - searching: "Іде пошук: будь ласка зачекайте" + searching: "Триває пошук. Будь ласка, зачекайте." last_post: "Останній коментар" many: "%{count} людина[и]" one: "1 людина" @@ -580,8 +584,8 @@ uk: edit_my_profile: "Редагувати профіль" gender: "стать" in_aspects: "у аспектах" - location: "місце розташування" - remove_contact: "видалити контакт" + location: "розташування" + remove_contact: "вилучити контакт" remove_from: "Видалити %{name} з %{aspect}?" show: closed_account: "Цей обліковий запис був закритий." @@ -592,8 +596,8 @@ uk: mention: "Згадати" message: "Повідомлення" not_connected: "Ви не ділитеся з цією людиною" - recent_posts: "Останні записи" - recent_public_posts: "Останні Публічні Пости" + recent_posts: "Останні дописи" + recent_public_posts: "Останні публічні дописи" return_to_aspects: "Повернутися на сторінку аспектів" see_all: "Показати усе" start_sharing: "поділитися" @@ -609,11 +613,11 @@ uk: photos: comment_email_subject: "Фотографія %{name}" create: - integrity_error: "Збій при завантаженні фотографії. Ви упевнені, що це правильний файл?" + integrity_error: "Помилка при завантаженні фотографії. Ви впевнені, що це графічний файл?" runtime_error: "Збій при завантаженні фотографії." - type_error: "Збій при завантаженні фототрафии. Ви упевнені, що додали фотографію?" + type_error: "Збій при завантаженні фототрафії. Ви впевнені, що додали графічний файл?" destroy: - notice: "Фотографія видалена." + notice: "Фотографію вилучено." edit: editing: "Редагування" new: @@ -621,30 +625,30 @@ uk: new_photo: "Нова Фотографія" post_it: "Опублікувати!" new_photo: - empty: "{file} порожній, виберіть будь ласка файл повторно." + empty: "{file} порожній, будь ласка, виберіть файли ще раз, але без нього." invalid_ext: "{file} має неприпустиме розширення. Дозволені тільки {extensions}." - size_error: "{file} занадто великий, максимальний розмір файлу {sizeLimit}." + size_error: "{file} занадто великий, максимальний розмір файлу: {sizeLimit}." new_profile_photo: - or_select_one_existing: "чи виберете одне із вже завантажених %{photos}" + or_select_one_existing: "чи виберіть одну із вже завантажених %{photos}" upload: "Завантажити нове фото для профілю!" photo: view_all: "Подивитися усі фотографії %{name}" show: collection_permalink: "постійне посилання на колекцію" - delete_photo: "Видалити фотографію" + delete_photo: "Вилучити фотографію" edit: "редагувати" - edit_delete_photo: "Змінити опис фотографії / видалити фотографію" + edit_delete_photo: "Змінити опис фотографії / вилучити фотографію" make_profile_photo: "зробити фотографією профілю" show_original_post: "Показати початковий запис" update_photo: "Оновити фотографію" update: error: "Не вдалося змінити фотографію." - notice: "Фотографія успішно завантажена." + notice: "Фотографія завантажена вдало." posts: presenter: title: "Запис %{name}" show: - destroy: "Видалити" + destroy: "Вилучити" not_found: "Вибачте, ми не змогли знайти цей запис." permalink: "постiйне посилання" photos_by: @@ -652,10 +656,10 @@ uk: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" + reshare_by: "Поширено %{author}" previous: "попередня" - privacy: "Приватность" + privacy: "Конфіденційність" privacy_policy: "Політика конфіденційності" profile: "Профіль" profiles: @@ -665,7 +669,7 @@ uk: first_name: "Ім'я" last_name: "Прізвище" update_profile: "Оновити профіль" - you_are_nsfw: "Ви відмітили свій акаунт як \"небезпечний для робочого місця\". Ваші записи будуть приховані для тих, хто вимкнув відображення повідомленнь сумнівного змісту." + you_are_nsfw: "Ви позначили свій обліковий запис як \"небезпечний для робочого місця\". Ваші записи будуть приховані для тих, хто вимкнув відображення повідомленнь сумнівного змісту." you_are_safe_for_work: "Ви відмітили свій акаунт як \"безпечний для робочого місця\". Ваші записи відповідають вимогам спільноти, та не будуть приховані для тих, хто вимкнув відображення повідомленнь сумнівного змісту." your_bio: "Ваша біографія" your_birthday: "Ваш день народження" @@ -676,7 +680,7 @@ uk: your_private_profile: "Ваш особистий профіль" your_public_profile: "Ваш публічний профіль" your_tags: "Опишіть себе в п'яти словах" - your_tags_placeholder: "наприклад, #кіно #котенята #подорожі #вчитель #київ" + your_tags_placeholder: "наприклад, #кіно #кошенята #подорожі #вчитель #київ" update: failed: "Не вдалося оновити профіль" updated: "Профіль оновлено" @@ -686,7 +690,6 @@ uk: many: "Відгуки: %{count}" one: "Відгуки: 1" other: "Відгуки: %{count}" - two: "Відгуки: %{count}" zero: "Відгуки: 0" registrations: closed: "У цій частині Діаспори реєстрація закрита." @@ -697,13 +700,13 @@ uk: edit: "Редагувати %{name}" leave_blank: "(Залиште порожнім, якщо не хочете міняти)" password_to_confirm: "(введіть ваш поточний пароль для підтвердження змін)" - unhappy: "Нещасні?" + unhappy: "Незадоволені?" update: "Відновити" invalid_invite: "Це запрошення вже недійсне!" new: continue: "Далі" create_my_account: "Створити мій аккаунт!" - diaspora: "<3 Діаспора*" + diaspora: "<3 DIASPORA*" email: "Пошта" enter_email: "Введіть email" enter_password: "Введіть пароль (щонайменьше шість символів)" @@ -717,8 +720,8 @@ uk: username: "Ім’я користувача" requests: create: - sending: "Відправка" - sent: "Ви просили поділитися з %{name}. Вони повинні побачити це при наступному вході в Діаспору." + sending: "Надсилання" + sent: "Ви просили поділитися з %{name}. Вони повинні побачити це при наступному вході в DIASPORA*." destroy: error: "Виберіть, будь ласка, один аспект!" ignore: "Ігнорування запитів на дружбу." @@ -729,25 +732,23 @@ uk: many: "%{count} нові[-х] заявки[-ок]!" one: "новий запит!" other: "%{count} нові[-х] заявки[-ок]!" - two: "%{count} нових запитів!" zero: "нових запитів немає" manage_aspect_contacts: - existing: "Існуючі контакти" - manage_within: "Управління контактами в" + existing: "Наявні контакти" + manage_within: "Керування контактами в" new_request_to_person: - sent: "відправлено!" + sent: "надіслано!" reshares: - comment_email_subject: "Перепост %{resharer} запису %{author}" + comment_email_subject: "%{resharer} поширює допис %{author}" create: failure: "Помилка при спробі поділитися цим записом." reshare: - deleted: "Початковий запис видалений автором." + deleted: "Початковий запис вилучено автором." reshare: few: "Поділилися: %{count}" many: "Поділилися: %{count}" one: "Поділився: 1" other: "Поділилися: %{count}" - two: "Поділилися: %{count}" zero: "Поділитися" reshare_confirmation: "Поділитися записом %{author}?" reshare_original: "Поділитися початковим записом" @@ -758,13 +759,13 @@ uk: create: already_authorized: "Користувач з ідентифікатором %{diaspora_id} вже авторизував цей обліковий запис %{service_name}." failure: "Помилка авторизації." - success: "Перевірка достовірності пройшла успішно." + success: "Автентифікація пройшла вдало." destroy: - success: "Ідентифікація успішно видалена." + success: "Автентифікацію успішно вилучено." failure: error: "Сталася помилка при підключенні цього сервісу" finder: - fetching_contacts: "Діаспора додає ваших друзів з %{service}. Будь ласка, зачекайте." + fetching_contacts: "DIASPORA* додає ваших друзів із %{service}. Будь ласка, зачекайте." no_friends: "Не знайдено друзів з Facebook." service_friends: "Друзі з %{service}" index: @@ -777,7 +778,7 @@ uk: no_services: "Ви ще не підключили жодної служби." really_disconnect: "відключити %{service}?" inviter: - click_link_to_accept_invitation: "Перейдіть по цьому посиланню для прийняття вашого запрошення" + click_link_to_accept_invitation: "Перейдіть за цим посиланням для прийняття вашого запрошення" join_me_on_diaspora: "Приєднуйтеся до мене в DIASPORA*" remote_friend: invite: "запрошення" @@ -791,10 +792,10 @@ uk: shared: add_contact: add_new_contact: "Додати контакт" - create_request: "Пошук по ідентифікатору в Діаспорі" + create_request: "Пошук за ідентифікатором у DIASPORA*" diaspora_handle: "diaspora@pod.org" enter_a_diaspora_username: "Введіть ім'я користувача Діаспори :" - know_email: "Знаєте їх email адреси? Ви повинні запропонувати їм приєднається до Діаспори" + know_email: "Знаєте їхні електронні адреси? Ви повинні запросити їх" your_diaspora_username_is: "Ваше ім'я користувача Діаспори : %{diaspora_handle}" aspect_dropdown: add_to_aspect: "Додати аспект" @@ -803,7 +804,6 @@ uk: many: "У %{count} аспектах" one: "У %{count} аспекті[ах]" other: "У %{count} аспектах" - two: "У %{count} аспектах" zero: "Додати аспект" contact_list: all_contacts: "Усі контакти" @@ -823,11 +823,11 @@ uk: notification: new: "Новий %{type} з %{from}" public_explain: - atom_feed: "Atom-стрічка" + atom_feed: "Стрічка Atom" control_your_audience: "Вибирайте свою аудиторію" logged_in: "увійшли в %{service}" manage: "управління підключеними сервісами" - new_user_welcome_message: "Використовуйте #мітки для класифікації своїх записів та пошуку людей зі схожими інтересами. Привертайте увагу цікавих людей за допомогою @згадувань" + new_user_welcome_message: "Використовуйте #мітки для класифікації своїх записів та пошуку людей зі схожими інтересами. Привертайте увагу цікавих людей з допомогою @згадувань" outside: "Публічні повідомлення доступні для читання усім, навіть за межами вашої Діаспори." share: "Діліться" title: "Налаштування підключених послуг" @@ -835,7 +835,7 @@ uk: publisher: all: "усі" all_contacts: "всі контакти" - discard_post: "Відмінити запис" + discard_post: "Відкинути допис" make_public: "зробити публічним" new_user_prefill: hello: "Привіт всім, я тут #%{new_user_tag}." @@ -843,7 +843,7 @@ uk: invited_by: "Спасибі за запрошення," newhere: "Новачок" post_a_message_to: "Опублікувати повідомлення для %{aspect}" - posting: "Відправка..." + posting: "Надсилання..." publishing_to: "публікація в:" share: "Поділитися" share_with: "поділитися з" @@ -853,13 +853,13 @@ uk: reshare: "Поділитися повторно" stream_element: connect_to_comment: "Підключитися до цього користувача для коментування повідомлення" - currently_unavailable: "коментування на даний момент не доступне" + currently_unavailable: "коментування зараз не доступне" dislike: "Не подобається" - hide_and_mute: "Приховати і відключити повідомлення" + hide_and_mute: "Приховати і вимкнути повідомлення" ignore_user: "Блокувати користувача %{name}" - ignore_user_description: "Блокувати та видалити користувача з усіх аспектів?" + ignore_user_description: "Блокувати й вилучити користувача з усіх аспектів?" like: "Мені подобається" - nsfw: "Автор помітив цей запис як тільки для дорослих\". %{link}" + nsfw: "Автор позначив цей запис як такий, що тільки для дорослих\". %{link}" shared_with: "Для аспектів: %{aspect_names}" show: "показати" unlike: "Не подобається" @@ -870,17 +870,16 @@ uk: create: success: "Успішно згадано: %{names}" destroy: - failure: "Не вдалося видалити повідомлення" + failure: "Не вдалося вилучити повідомлення" helper: no_message_to_display: "Нових повідомлень немає." new: mentioning: "Згадати: %{person}" too_long: few: "скоротіть, будь ласка, ваше повідомлення до %{count} символів" - many: "зробіть ваше повідомлення менше, ніж %{count} символів" + many: "зробіть ваше повідомлення меншим, ніж %{count} символів" one: "скоротіть, будь ласка, ваше повідомлення до %{count} символів" other: "скоротіть, будь ласка, ваше повідомлення до %{count} символів" - two: "зробіть ваше повідомлення менше, ніж %{count} символів" zero: "скоротіть, будь ласка, ваше повідомлення до %{count} символів" stream_helper: hide_comments: "Приховати усі коментарі" @@ -889,11 +888,10 @@ uk: many: "Показати ще %{count} коментарів" one: "Показати ще коментарі" other: "Показати ще %{count} коментарів" - two: "Показати ще два коментарі" zero: "Більше немає коментарів" streams: activity: - title: "Моя активність" + title: "Моя діяльність" aspects: title: "Ваші аспекти" aspects_stream: "Аспекти" @@ -923,22 +921,22 @@ uk: tags: contacts_title: "Люди, яким подобаються ця мітка" tag_prefill_text: "Щодо %{tag_name} я думаю, що..." - title: "Записи, відмічені : %{tags}" + title: "Записи, позначені: %{tags}" tag_followings: create: failure: "Помилка відстежування #%{name}" none: "Не можна стежити за порожньою міткою!" success: "Ура! Тепер ви стежите за міткою #%{name}." destroy: - failure: "Не вийшло перестати стежити за міткою #%{name}. Можливо, ви вже відписалися від неї?" - success: "На жаль! Ви більше не стежите за міткою #%{name}." + failure: "Не вдалось перестати стежити за міткою #%{name}. Можливо, ви вже відписалися від неї?" + success: "Шкода! Ви більше не стежите за міткою #%{name}." tags: show: follow: "Стежити за міткою #%{tag}" followed_by: "Спостерігають" following: "Ви стежите за міткою #%{tag}" - nobody_talking: "Ніхто доки не говорив про %{tag}." - none: "Порожня мітка не існує!" + nobody_talking: "Ніхто поки що не говорив про %{tag}." + none: "Порожньої мітки немає!" people_tagged_with: "Люди з міткою %{tag}" posts_tagged_with: "Записи з міткою #%{tag}" stop_following: "Не стежити за міткою #%{tag}" @@ -946,69 +944,72 @@ uk: tokens: show: connect_to_cubbies: "Підключення до Cubbi.es" - connecting_is_simple: "Підключити аккаунт Діаспори легко! Просто введіть ваш ідентифікатор в Діаспорі (<b>%{diaspora_id}</b>) на <a href='%{href_link}'>сторінці налаштувань</a> cubbies і натисніть \"підключити\"." - daniels_account: "Діаспора-аккаунт Данила" - love_to_try: "Ми будемо ради, якщо ви спробуєте це." + connecting_is_simple: "Під’єднати обліковий запис DIASPORA* легко! Просто введіть ваш ідентифікатор в DIASPORA* (<b>%{diaspora_id}</b>) на <a href='%{href_link}'>сторінці налаштувань</a> cubbies і натисніть \"під’єднати\"." + daniels_account: "аккаунт Деніела" + love_to_try: "Ми будемо раді, якщо ви спробуєте це." making_the_connection: "Створення підключення" screenshot_explanation: "%{link1}. Це особливо пов'язано з %{link2}." sign_up_today: "Зареєструйтеся прямо зараз!" typical_userpage: "Типова cubbi.es сторінка" - what_is_cubbies: "Cubbi.es - це перший у світі додаток для Діаспори. Крім того, це кращий спосіб створення колекції фотографій в Інтернеті." - undo: "Відмінити?" + via: "(через %{link})" + what_is_cubbies: "Cubbi.es - це перший у світі додаток для DIASPORA*. Крім того, це найкращий спосіб створення колекції фотографій в Інтернеті." + undo: "Повернути?" username: "Ім'я користувача" users: confirm_email: email_confirmed: "Адреса %{email} активована" - email_not_confirmed: "Адреса не може бути активована. Невірне посилання?" + email_not_confirmed: "Адреса не може бути активована. Неправильне посилання?" destroy: no_password: "Будь ласка, введіть пароль, щоб закрити свій обліковий запис." success: "Ваш обліковий запис заблокований. На повне закриття вашого облікового запису може піти до 20 хвилин. Спасибі, що були разом з нами." - wrong_password: "Введений вами пароль не співпадає з вашим поточним паролем." + wrong_password: "Цей пароль не співпадає з вашим поточним паролем." edit: also_commented: "... хтось коментував повідомлення ваших контактів?" auto_follow_aspect: "Додати цих користувачів до аспекту:" + auto_follow_back: "Автоматично відслідковувати тих, хто відслідковує вас" change: "Змінити" change_email: "Змінити адресу" change_language: "Змінити мову" change_password: "Змінити пароль" character_minimum_expl: "щонайменьше шість символів" close_account: - dont_go: "Будь ласка, не уходьте!" + dont_go: "Будь ласка, не йдіть!" if_you_want_this: "Якщо ви дійсно хочете це зробити, введіть ваш пароль і натисніть 'Закрити аккаунт'." lock_username: "Це зарезервує ваше ім'я користувача на випадок, якщо ви захочете знову зареєструватися." - locked_out: "Буде зроблений вихід, і ви будете відключені від вашого облікового запису." - make_diaspora_better: "Ми хотіли б, щоб ви допомогли нам зробити Діаспору краще замість того, щоб просто піти звідси. Якщо ви дійсно вирішили піти, ми хочемо, щоб ви знали, що станеться далі." - mr_wiggles: "Містер Виглз буде засмучений вашим уходом" - no_turning_back: "На даний момент зворотного шляху немає." - what_we_delete: "Ми видаляємо усі ваші записи і дані профілю так швидко, як тільки можемо. Ваші коментарі будуть як і раніше доступні, але вони не будуть прив'язані до вашого ідентифікатора в Діаспорі." + locked_out: "Буде зроблено вихід з облікового запису, і ви будете відключені від вашого облікового запису." + make_diaspora_better: "Ми хотіли б, щоб ви допомогли нам зробити Діаспору кращою замість того, щоб просто піти звідси. Якщо ви дійсно вирішили піти, ми хочемо, щоб ви знали, що станеться далі." + mr_wiggles: "Містер Віглз буде засмучений, що ви пішли" + no_turning_back: "Зараз зворотного шляху немає." + what_we_delete: "Ми вилучаємо всі ваші записи і дані профілю так швидко, як тільки можемо. Ваші коментарі будуть як і раніше доступні, але вони не будуть прив'язані до вашого ідентифікатора в DIASPORA*." close_account_text: "Закрити аккаунт" comment_on_post: "... хтось прокоментував ваш запис?" current_password: "Поточний пароль" current_password_expl: "який ви використовуєте для входу..." - download_photos: "Скачати мої фотографії" - download_xml: "Скачати мою інформацію в XML" + download_photos: "Звантажити мої фотографії" + download_xml: "Звантажити мою інформацію в XML" edit_account: "Редагувати аккаунт" - email_awaiting_confirmation: "Ми послали посилання для активації на %{unconfirmed_email}. Поки ви не пройдете по ньому і не активуєте нову адресу, ми використовуватимемо ваш колишній ящик %{email}." + email_awaiting_confirmation: "Ми надіслали посилання для активації на %{unconfirmed_email}. Поки ви не скористаєтесь ним і не активуєте нову адресу, ми використовуватимемо ваш колишній ящик %{email}." export_data: "Експорт інформації" + following: "Налаштування відслідковування" getting_started: "Нові призначені для користувача налаштування" - liked: "...кому-небудь подобається ваше повідомлення?" + liked: "...комусь подобається ваше повідомлення?" mentioned: "... ви згадані в повідомленні?" new_password: "Новий пароль" - photo_export_unavailable: "Експорт фото в даний момент недоступно" + photo_export_unavailable: "Функція експорту фото зараз недоступна" private_message: "... ви отримуєте особисте повідомлення?" receive_email_notifications: "Отримувати повідомлення електронною поштою, коли..." reshared: "...хтось ділиться вашим записом?" - show_community_spotlight: "Показувати рекомендованих користувачів в Потоці?" + show_community_spotlight: "Показувати рекомендованих користувачів у Потоці?" show_getting_started: "Повернути інформацію для початківців" started_sharing: "...хтось починає ділитися з вами?" stream_preferences: "Налаштування Потоку" your_email: "Ваша адреса електронної пошти" your_handle: "Ваш ідентифікатор в Діаспорі" getting_started: - awesome_take_me_to_diaspora: "Чудесно! Пустіть мене в Діаспору*" - community_welcome: "Товариство Діаспори раде вітати вас!" + awesome_take_me_to_diaspora: "Прекрасно! Пустіть мене до DIASPORA*" + community_welcome: "Товариство DIASPORA* раді вітати вас!" hashtag_explanation: "Мітки дозволяють вам обговорювати і стежити за темами, що цікавлять вас. Це також відмінний спосіб пошуку однодумців в Діаспорі." - hashtag_suggestions: "Спробуйте наступні мітки, наприклад #мистецтво, #кіно, #gif і т.п." + hashtag_suggestions: "Спробуйте, наприклад, мітки #мистецтво, #кіно, #gif і т.п." saved: "Збережено!" well_hello_there: "Вітаємо вас!" what_are_you_in_to: "Чим ви цікавитеся?" @@ -1016,11 +1017,13 @@ uk: privacy_settings: ignored_users: "Заблоковані користувачі" stop_ignoring: "Припинити блокування" - title: "Налаштування приватности" + title: "Налаштування конфіденційності" public: does_not_exist: "Користувача %{username} не існує!" update: - email_notifications_changed: "Повідомлення по електронною поштою змінені" + email_notifications_changed: "Налаштування повідомлень електронною поштою змінені" + follow_settings_changed: "Налаштування відслідковування змінено" + follow_settings_not_changed: "" language_changed: "Мова змінена" language_not_changed: "Не вдалося змінити мову" password_changed: "Пароль змінений. Тепер ви можете увійти з новим паролем." diff --git a/config/locales/diaspora/ur-PK.yml b/config/locales/diaspora/ur-PK.yml index b7e6cf88b..915686cbb 100644 --- a/config/locales/diaspora/ur-PK.yml +++ b/config/locales/diaspora/ur-PK.yml @@ -158,7 +158,6 @@ ur-PK: many: "%{count} new messages" one: "1 new messages" other: "%{count} new messages" - two: "%{count} new messages" zero: "No new messages" layouts: application: @@ -174,21 +173,18 @@ ur-PK: many: "%{count} dislikes" one: "%{count} dislike" other: "%{count} dislikes" - two: "%{count} dislikes" zero: "no dislikes" people_like_this: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" people_like_this_comment: few: "%{count} likes" many: "%{count} likes" one: "%{count} like" other: "%{count} likes" - two: "%{count} likes" zero: "no likes" notifications: also_commented: @@ -196,21 +192,18 @@ ur-PK: many: "%{actors} also commented on %{post_author}'s %{post_link}." one: "%{actors} also commented on %{post_author}'s %{post_link}." other: "%{actors} also commented on %{post_author}'s %{post_link}." - two: "%{actors} also commented on %{post_author}'s %{post_link}." zero: "%{actors} also commented on %{post_author}'s %{post_link}." also_commented_deleted: few: "%{actors} commented on a deleted post." many: "%{actors} commented on a deleted post." one: "%{actors} commented on a deleted post." other: "%{actors} commented on a deleted post." - two: "%{actors} commented on a deleted post." zero: "%{actors} commented on a deleted post." comment_on_post: few: "%{actors} commented on your %{post_link}." many: "%{actors} commented on your %{post_link}." one: "%{actors} commented on your %{post_link}." other: "%{actors} commented on your %{post_link}." - two: "%{actors} commented on your %{post_link}." zero: "%{actors} commented on your %{post_link}." helper: new_notifications: @@ -218,7 +211,6 @@ ur-PK: many: "%{count} new notifications" one: "1 new notifications" other: "%{count} new notifications" - two: "%{count} new notifications" zero: "No new notifications" index: and_others: @@ -226,63 +218,54 @@ ur-PK: many: "and %{count} others" one: "and one more" other: "and %{count} others" - two: "and %{count} others" zero: "and nobody else" liked: few: "%{actors} has just liked your %{post_link}." many: "%{actors} has just liked your %{post_link}." one: "%{actors} has just liked your %{post_link}." other: "%{actors} has just liked your %{post_link}." - two: "%{actors} has just liked your %{post_link}." zero: "%{actors} has just liked your %{post_link}." liked_post_deleted: few: "%{actors} liked your deleted post." many: "%{actors} liked your deleted post." one: "%{actors} liked your deleted post." other: "%{actors} liked your deleted post." - two: "%{actors} liked your deleted post." zero: "%{actors} liked your deleted post." mentioned: few: "%{actors} has mentioned you in a %{post_link}." many: "%{actors} has mentioned you in a %{post_link}." one: "%{actors} has mentioned you in a %{post_link}." other: "%{actors} has mentioned you in a %{post_link}." - two: "%{actors} has mentioned you in a %{post_link}." zero: "%{actors} has mentioned you in a %{post_link}." mentioned_deleted: few: "%{actors} mentioned you in a deleted post." many: "%{actors} mentioned you in a deleted post." one: "%{actors} mentioned you in a deleted post." other: "%{actors} mentioned you in a deleted post." - two: "%{actors} mentioned you in a deleted post." zero: "%{actors} mentioned you in a deleted post." private_message: few: "%{actors} sent you a message." many: "%{actors} sent you a message." one: "%{actors} sent you a message." other: "%{actors} sent you a message." - two: "%{actors} sent you a message." zero: "%{actors} sent you a message." reshared: few: "%{actors} has reshared your %{post_link}." many: "%{actors} has reshared your %{post_link}." one: "%{actors} has reshared your %{post_link}." other: "%{actors} has reshared your %{post_link}." - two: "%{actors} has reshared your %{post_link}." zero: "%{actors} has reshared your %{post_link}." reshared_post_deleted: few: "%{actors} reshared your deleted post." many: "%{actors} reshared your deleted post." one: "%{actors} reshared your deleted post." other: "%{actors} reshared your deleted post." - two: "%{actors} reshared your deleted post." zero: "%{actors} reshared your deleted post." started_sharing: few: "%{actors} started sharing with you." many: "%{actors} started sharing with you." one: "%{actors} started sharing with you." other: "%{actors} started sharing with you." - two: "%{actors} started sharing with you." zero: "%{actors} started sharing with you." notifier: confirm_email: @@ -298,14 +281,12 @@ ur-PK: many: "%{count} photos by %{author}" one: "One photo by %{author}" other: "%{count} photos by %{author}" - two: "Two photos by %{author}" zero: "No photos by %{author}" reactions: few: "%{count} reactions" many: "%{count} reactions" one: "1 reaction" other: "%{count} reactions" - two: "%{count} reactions" zero: "0 reactions" registrations: new: @@ -318,7 +299,6 @@ ur-PK: many: "%{count} new requests!" one: "new request!" other: "%{count} new requests!" - two: "%{count} new requests!" zero: "no new requests" reshares: reshare: @@ -327,7 +307,6 @@ ur-PK: many: "%{count} reshares" one: "1 reshare" other: "%{count} reshares" - two: "%{count} reshares" zero: "Reshare" services: inviter: @@ -340,7 +319,6 @@ ur-PK: many: "In %{count} aspects" one: "In %{count} aspect" other: "In %{count} aspects" - two: "In %{count} aspects" zero: "Add to aspect" publisher: new_user_prefill: @@ -353,7 +331,6 @@ ur-PK: many: "please make your status messages less than %{count} characters" one: "please make your status messages less than %{count} character" other: "please make your status messages less than %{count} characters" - two: "please make your status messages less than %{count} characters" zero: "please make your status messages less than %{count} characters" stream_helper: show_comments: @@ -361,7 +338,6 @@ ur-PK: many: "Show %{count} more comments" one: "Show one more comment" other: "Show %{count} more comments" - two: "Show two more comments" zero: "No more comments" streams: aspects: diff --git a/config/locales/diaspora/vi.yml b/config/locales/diaspora/vi.yml index a866e60f9..bab1f0411 100644 --- a/config/locales/diaspora/vi.yml +++ b/config/locales/diaspora/vi.yml @@ -276,7 +276,6 @@ vi: many: "%{count} tin nhắn mới" one: "1 tin nhắn mới" other: "%{count} tin nhắn mới" - two: "%{count} tin nhắn mới" zero: "Không có tin nhắn mới" index: create_a_new_message: "viết tin nhắn mới" @@ -372,7 +371,6 @@ vi: many: "%{count} người không thích" one: "%{count} người không thích" other: "%{count} người không thích" - two: "%{count} người không thích" zero: "chưa có người không thích" people_like_this: other: "%{count} người thích" @@ -396,7 +394,6 @@ vi: many: "%{actors} đã bình luận tin %{post_link} của bạn." one: "%{actors} đã bình luận tin %{post_link} của bạn." other: "%{actors} đã bình luận tin %{post_link} của bạn." - two: "%{actors} đã bình luận tin %{post_link} của bạn." zero: "%{actors} đã bình luận tin %{post_link} của bạn." helper: new_notifications: @@ -404,7 +401,6 @@ vi: many: "%{count} thông báo mới" one: "1 thông báo mới" other: "%{count} thông báo mới" - two: "%{count} thông báo mới" zero: "Không có thông báo mới" index: and: "và" @@ -441,7 +437,6 @@ vi: many: "%{actors} đã bắt đầu chia sẻ với bạn." one: "%{actors} đã bắt đầu chia sẻ với bạn." other: "%{actors} đã bắt đầu chia sẻ với bạn." - two: "%{actors} đã bắt đầu chia sẻ với bạn." zero: "%{actors} đã bắt đầu chia sẻ với bạn." notifier: a_post_you_shared: "một bài đăng." diff --git a/config/locales/diaspora/zh-TW.yml b/config/locales/diaspora/zh-TW.yml index 7ee0f61fd..16876b07e 100644 --- a/config/locales/diaspora/zh-TW.yml +++ b/config/locales/diaspora/zh-TW.yml @@ -389,21 +389,18 @@ zh-TW: many: "%{actors} 也對 %{post_author} 的%{post_link}發表了意見." one: "%{actors} 也對 %{post_author} 的%{post_link}發表了意見." other: "%{actors} 也對 %{post_author} 的%{post_link}發表了意見." - two: "%{actors} 也對 %{post_author} 的%{post_link}發表了意見." zero: "%{actors} 也對 %{post_author} 的%{post_link}發表了意見." also_commented_deleted: few: "%{actors} 對已刪掉的貼文發表了意見." many: "%{actors} 對已刪掉的貼文發表了意見." one: "%{actors} 對已刪掉的貼文發表了意見." other: "%{actors} 對已刪掉的貼文發表了意見." - two: "%{actors} 對已刪掉的貼文發表了意見." zero: "%{actors} 對已刪掉的貼文發表了意見." comment_on_post: few: "%{actors} 對你的%{post_link}發表了意見." many: "%{actors} 對你的%{post_link}發表了意見." one: "%{actors} 對你的%{post_link}發表了意見." other: "%{actors} 對你的%{post_link}發表了意見." - two: "%{actors} 對你的%{post_link}發表了意見." zero: "%{actors} 對你的%{post_link}發表了意見." helper: new_notifications: @@ -416,7 +413,6 @@ zh-TW: many: "和其他%{count}個人" one: "和另外一個人" other: "和其他%{count}個人" - two: "以及其他%{count}個" zero: "以外沒有其他人" mark_all_as_read: "全部標示為看過了" mark_unread: "標示為沒看過" @@ -426,7 +422,6 @@ zh-TW: many: "%{actors} 說你的%{post_link}很讚." one: "%{actors} 說你的%{post_link}很讚." other: "%{actors} 說你的%{post_link}很讚." - two: "%{actors} 說你的%{post_link}很讚." zero: "%{actors} 說你的%{post_link}很讚." liked_post_deleted: other: "%{actors} 說你刪掉了的貼文很讚." @@ -436,14 +431,12 @@ zh-TW: many: "%{actors} 在%{post_link}中點到了你." one: "%{actors}在%{post_link}中點到了你." other: "%{actors} 在%{post_link}中點到了你." - two: "%{actors} 在%{post_link}中點到了你." zero: "%{actors} 在%{post_link}中點到了你." mentioned_deleted: few: "%{actors} 在已刪掉的貼文中點到了你." many: "%{actors} 在已刪掉的貼文中點到了你." one: "%{actors} 在已刪掉的貼文中點到了你." other: "%{actors} 在已刪掉的貼文中點到了你." - two: "%{actors} 在刪掉的貼文中點到了你." zero: "%{actors} 在已刪掉的貼文中點到了你." post: "貼文" private_message: @@ -454,14 +447,12 @@ zh-TW: many: "%{actors} 轉貼了你的%{post_link}." one: "%{actors} 轉貼了你的%{post_link}." other: "%{actors} 轉貼了你的%{post_link}." - two: "%{actors} 轉貼了你的%{post_link}." zero: "%{actors} 轉貼了你的%{post_link}." reshared_post_deleted: few: "%{actors} 轉貼了你刪掉的貼文." many: "%{actors} 轉貼了你刪掉的貼文." one: "%{actors} 轉貼了你刪掉的貼文." other: "%{actors} 轉貼了你刪掉的貼文." - two: "%{actors} 轉貼了你刪掉的貼文." zero: "%{actors} 轉貼了你刪掉的貼文." started_sharing: other: "%{actors} 開始跟你分享了." @@ -655,7 +646,6 @@ zh-TW: many: "有%{count}次反應" one: "有1次反應" other: "有%{count}次反應" - two: "有%{count}次反應" zero: "沒有反應" registrations: closed: "本 Diaspora pod 不開放登記." @@ -711,7 +701,6 @@ zh-TW: many: "被轉貼%{count}次" one: "被轉貼1次" other: "被轉貼%{count}次" - two: "%{count}次轉貼" zero: "轉貼" reshare_confirmation: "要轉貼 %{author} 的貼文嗎?" reshare_original: "轉貼原文" @@ -766,7 +755,6 @@ zh-TW: many: "在%{count}個面向中" one: "在%{count}個面向中" other: "在%{count}個面向中" - two: "在%{count}個面向中" zero: "加聯絡人" contact_list: all_contacts: "所有聯絡人" @@ -843,7 +831,6 @@ zh-TW: many: "請限制狀態訊息在%{count}個字內" one: "請限制狀態訊息在%{count}個字內" other: "請限制狀態訊息在%{count}個字內" - two: "請縮短你的狀態訊息在%{count}個字元以下" zero: "請限制狀態訊息在%{count}個字內" stream_helper: hide_comments: "隱藏所有意見" diff --git a/config/locales/javascript/javascript.ar.yml b/config/locales/javascript/javascript.ar.yml index 6062c5bd3..a132dc947 100644 --- a/config/locales/javascript/javascript.ar.yml +++ b/config/locales/javascript/javascript.ar.yml @@ -18,7 +18,6 @@ ar: many: "في {{count}} فئات" one: "في {{count}} فئة" other: "في {{count}} فئات" - two: "في {{count}} فئات" zero: "حدّد الفئات" aspect_navigation: deselect_all: "إلغاء اختيار الكل" @@ -75,7 +74,6 @@ ar: many: "عدد المعجبين" one: "عدد المعجبين" other: "عدد المعجبين" - two: "عدد معجب" zero: "عدد المعجبين" limited: "محدود" more_comments: @@ -83,7 +81,6 @@ ar: many: "إعرض >عدد< تعليقات أكثر " one: "إعرض >عدد< تعليقات أكثر " other: "إعرض >عدد< تعليقات أكثر " - two: "إعرض >عدد< تعليق أكثر " zero: "إعرض >عدد< تعليقات أكثر " original_post_deleted: "لقد حذف المؤلف مشاركته الأصلية." public: "عام" @@ -93,7 +90,6 @@ ar: many: ">عدد< اعادة المشاركات" one: ">عدد< اعادة المشاركات" other: ">عدد< اعادة المشاركات" - two: ">عدد< اعادة المشاركة" zero: ">عدد< اعادة المشاركات" show_nsfw_post: "أظهِر المشاركة" show_nsfw_posts: "أظهِر الكل" diff --git a/config/locales/javascript/javascript.bg.yml b/config/locales/javascript/javascript.bg.yml index b25ef61e8..1cc9adea6 100644 --- a/config/locales/javascript/javascript.bg.yml +++ b/config/locales/javascript/javascript.bg.yml @@ -74,7 +74,6 @@ bg: many: "Покажи останалите <%= count %> коментара" one: "Покажи останалия <%= count %> коментар" other: "Покажи останалите <%= count %> коментара" - two: "Show <%= count %> more comments" zero: "Покажи осталите <%= count %> коментара" original_post_deleted: "Авторът на оригиналната публикация я е изтрил." public: "Публично" diff --git a/config/locales/javascript/javascript.br.yml b/config/locales/javascript/javascript.br.yml index 8a86e838d..b9818dc84 100644 --- a/config/locales/javascript/javascript.br.yml +++ b/config/locales/javascript/javascript.br.yml @@ -18,7 +18,6 @@ br: many: "In {{count}} aspects" one: "In {{count}} aspect" other: "In {{count}} aspects" - two: "In <%= count %> aspects" zero: "Add to aspect" aspect_navigation: deselect_all: "Dizilenn pep tra" diff --git a/config/locales/javascript/javascript.ca.yml b/config/locales/javascript/javascript.ca.yml index fb5c19e29..3ef9b5e3d 100644 --- a/config/locales/javascript/javascript.ca.yml +++ b/config/locales/javascript/javascript.ca.yml @@ -1,8 +1,8 @@ -# Copyright © 2011, Diaspora Inc. This file is +# Copyright © 2011, 2012, 2013 Diaspora Inc. This file is # licensed under the Affero General Public License version 3 or later. See # the COPYRIGHT file. # -# Jordi Mallach <jordi@softcatala.org>, 2011. +# Jordi Mallach <jordi@softcatala.org>, 2011, 2012, 2013. # Abans d'actualitzar aquesta traducció, si us plau poseu-vos en contacte # amb Jordi Mallach o Softcatalà <info@softcatala.org>. @@ -11,6 +11,7 @@ ca: confirm_dialog: "N'esteu segur?" delete: "Suprimeix" ignore: "Omet" + ignore_user: "Voleu ignorar aquest usuari?" timeago: prefixAgo: "fa" prefixFromNow: "fa" @@ -71,6 +72,7 @@ ca: preparing_your_stream: "S'està preparant el vostre flux personalitzat…" photo_uploader: looking_good: "Vaja, teniu un aspecte fantàstic!" + completed: "<%= file %> completat" tags: wasnt_that_interesting: "D'acord, es possible que #<%= tagName %> no fos tan interessant…" people: @@ -106,6 +108,17 @@ ca: one: "Mostra <%= count %> comentari més" other: "Mostra <%= count %> comentaris més" + followed_tag: + title: "#Etiquetes que seguiu" + contacts_title: "Gent que empra aquestes etiquetes" + add_a_tag: "Afegeix una etiqueta" + follow: "Segueix" + + tags: + follow: "Segueix #<%= tag %>" + following: "S'està seguint #<%= tag %>" + stop_following: "Deixa de seguir #<%= tag %>" + header: home: "Inici" profile: "Perfil" diff --git a/config/locales/javascript/javascript.cy.yml b/config/locales/javascript/javascript.cy.yml index ff88a9b0d..238c24dcd 100644 --- a/config/locales/javascript/javascript.cy.yml +++ b/config/locales/javascript/javascript.cy.yml @@ -18,7 +18,6 @@ cy: many: "Mewn {{count}} agweddau" one: "Mewn {{count}} agwedd" other: "Mewn {{count}} agweddau" - two: "Mewn {{count}} agweddau" zero: "Dewiswch agweddau" aspect_navigation: deselect_all: "Dad-ddewis i gŷd" @@ -51,21 +50,18 @@ cy: many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" more_comments: few: "Show <%= count %> more comments" many: "Show <%= count %> more comments" one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" zero: "Show <%= count %> more comments" reshares: few: "<%= count %> Reshares" many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" tags: wasnt_that_interesting: "OK, mae'n debyg nid yw #{{tagName}} yn ddiddorol iawn..." diff --git a/config/locales/javascript/javascript.da.yml b/config/locales/javascript/javascript.da.yml index 24468d1b7..1ad0fba2e 100644 --- a/config/locales/javascript/javascript.da.yml +++ b/config/locales/javascript/javascript.da.yml @@ -18,7 +18,6 @@ da: many: "I <%= count %> aspekter" one: "I <%= count %> aspekt" other: "I <%= count %> aspekter" - two: "I <%= count %> aspekter" zero: "Vælg aspekter" aspect_navigation: deselect_all: "Fravælg alle" @@ -74,7 +73,6 @@ da: many: "<%= count %> synes om dette" one: "<%= count %> synes om dette" other: "<%= count %> synes om dette" - two: "<%= count %> synes om dette" zero: "<%= count %> synes om dette" limited: "Begrænset" more_comments: @@ -82,7 +80,6 @@ da: many: "Show <%= count %> flere kommentarer" one: "Vis <%= count %> ekstra kommentar" other: "Vis <%= count %> ekstra kommentarer" - two: "Vis <%= count %> ekstra kommentarer" zero: "Vis <%= count %> ekstra kommentarer" original_post_deleted: "Originalt indlæg er slettet af forfatteren." public: "Offentlig" @@ -92,7 +89,6 @@ da: many: "<%= count %> videredelinger" one: "<%= count %> videredeling" other: "<%= count %> videredelinger" - two: "<%= count %> videredelinger" zero: "<%= count %> videredelinger" show_nsfw_post: "Vis indlæg" show_nsfw_posts: "Vis alle" diff --git a/config/locales/javascript/javascript.de.yml b/config/locales/javascript/javascript.de.yml index cdcb1ab01..e3511a6e8 100644 --- a/config/locales/javascript/javascript.de.yml +++ b/config/locales/javascript/javascript.de.yml @@ -6,6 +6,7 @@ de: javascripts: + and: "und" aspect_dropdown: add_to_aspect: "Kontakt hinzufügen" all_aspects: "Alle Aspekte" @@ -18,17 +19,19 @@ de: many: "In <%= count %> Aspekten" one: "In einem Aspekt" other: "In <%= count %> Aspekten" - two: "In <%= count %> Aspekten" zero: "Aspekt auswählen" aspect_navigation: + add_an_aspect: "+ Aspekt hinzufügen" deselect_all: "Auswahl aufheben" no_aspects: "Keine Aspekte ausgewählt" select_all: "Alle auswählen" + comma: "," comments: hide: "Kommentare verbergen" show: "Alle Kommentare zeigen" confirm_dialog: "Bist du dir sicher?" delete: "Löschen" + edit: "Bearbeiten" failed_to_like: "Gefällt mir fehlgeschlagen!" failed_to_post_message: "Konnte Beitrag nicht senden!" getting_started: @@ -55,10 +58,12 @@ de: infinite_scroll: no_more: "Keine weiteren Beiträge." my_activity: "Meine Aktivitäten" + my_aspects: "Meine Aspekte" my_stream: "Stream" people: not_found: "und niemand wurde gefunden..." photo_uploader: + completed: "<%= file %> hochgeladen" looking_good: "OMG, du siehst toll aus!" publisher: at_least_one_aspect: "Du musst zumindest zu einem Aspekt posten" @@ -73,6 +78,11 @@ de: stream: comment: "Kommentar" follow: "Folgen" + followed_tag: + add_a_tag: "Tag hinzufügen" + contacts_title: "Leute, die diese Tags mögen" + follow: "Folgen" + title: "#Tags, denen du folgst" hide: "Ausblenden" hide_nsfw_posts: "#nsfw-Posts verstecken" like: "Gefällt mir" @@ -81,7 +91,6 @@ de: many: "<%= count %> Personen gefällt das" one: " Einer Person gefällt das" other: "<%= count %> Personen gefällt das" - two: "<%= count %> Personen gefällt das" zero: "Keinem gefällt das" limited: "Begrenzt" more_comments: @@ -96,10 +105,13 @@ de: many: "<%= count %> mal weitergesagt" one: "<%= count %> mal weitergesagt" other: "<%= count %> mal weitergesagt" - two: "<%= count %> mal weitergesagt" zero: "<%= count %> mal weitergesagt" show_nsfw_post: "Beitrag anzeigen" show_nsfw_posts: "Alle zeigen" + tags: + follow: "#<%= tag %> folgen" + following: "Du folgst #<%=tag%>" + stop_following: "Aufhören #<%= tag %> zu folgen" unfollow: "Nicht mehr folgen" unlike: "Gefällt mir nicht mehr" tags: diff --git a/config/locales/javascript/javascript.de_formal.yml b/config/locales/javascript/javascript.de_formal.yml index 90e8320cb..fb92d1342 100644 --- a/config/locales/javascript/javascript.de_formal.yml +++ b/config/locales/javascript/javascript.de_formal.yml @@ -18,7 +18,6 @@ de_formal: many: "In {{count}} Aspekten" one: "In einem Aspekt" other: "In {{count}} Aspekten" - two: "In {{count}} Aspekten" zero: "Aspekt auswählen" aspect_navigation: deselect_all: "Auswahl aufheben" @@ -81,7 +80,6 @@ de_formal: many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" show_nsfw_post: "Beitrag anzeigen" show_nsfw_posts: "Zeige alle" diff --git a/config/locales/javascript/javascript.el.yml b/config/locales/javascript/javascript.el.yml index 09182ca5b..fb22356fb 100644 --- a/config/locales/javascript/javascript.el.yml +++ b/config/locales/javascript/javascript.el.yml @@ -68,7 +68,7 @@ el: search_for: "Αναζήτηση για <%= name %>" show_more: "Προβολή περισσότερων" stream: - comment: "Σχόλιο" + comment: "Σχολιάστε" follow: "Ακολουθήστε" hide: "Απόκρυψη" hide_nsfw_posts: "Απόκριψη των \"μη ασφαλών για εργασία\" δημοσιεύσεων" @@ -84,11 +84,11 @@ el: zero: "Δες <%= count %> περισσότερα σχόλια" original_post_deleted: "Η αρχική δημοσίευση διαγράφτηκε από τον δημιουργό της." public: "Δημόσιο" - reshare: "ξαναμοίρασε" + reshare: "Κοινοποιήστε" reshares: - one: "<%= count %> Αναδημοσίευση" - other: "<%= count %> Αναδημοσίευση" - zero: "<%= count %> Αναδημοσίευση" + one: "<%= count %> Κοινοποίηση" + other: "<%= count %> Κοινοποιήσεις" + zero: "<%= count %> Κοινοποιήσεις" show_nsfw_post: "Προβολή δημοσίευσης" show_nsfw_posts: "Προβολή όλων" unfollow: "Παύση παρακολούθησης" @@ -115,11 +115,11 @@ el: unknown: "Άγνωστος τύπος βίντεο" watch: "Δείτε το βίντεο στο <%= provider %>" viewer: - comment: "Σχόλιο" + comment: "Σχολιάστε" follow_post: "Παρακολούθησης δημοσιεύσεων" home: "ΑΡΧΙΚΗ" like: "Μου αρέσει" - reshare: "Αναδημοσίευσε" - reshared: "Αναδημοσίευση" + reshare: "Κοινοποιήστε" + reshared: "Κοινοποιήθηκε" stop_following_post: "Παύση παρακολούθησης δημοσιεύσεων" unlike: "Δεν μου αρέσει"
\ No newline at end of file diff --git a/config/locales/javascript/javascript.en.yml b/config/locales/javascript/javascript.en.yml index 851f5236d..0adf06432 100644 --- a/config/locales/javascript/javascript.en.yml +++ b/config/locales/javascript/javascript.en.yml @@ -9,6 +9,9 @@ en: delete: "Delete" ignore: "Ignore" ignore_user: "Ignore this user?" + and: "and" + comma: "," + edit: "Edit" timeago: prefixAgo: "" prefixFromNow: "" @@ -28,6 +31,7 @@ en: my_activity: "My Activity" my_stream: "Stream" + my_aspects: "My Aspects" videos: watch: "Watch this video on <%= provider %>" @@ -46,6 +50,7 @@ en: stopped_sharing_with: "You have stopped sharing with <%= name %>." started_sharing_with: "You have started sharing with <%= name %>!" error: "Couldn't start sharing with <%= name %>. Are you ignoring them?" + error_remove: "Couldn't remove <%= name %> from the aspect :(" toggle: zero: "Select aspects" one: "In <%= count %> aspect" @@ -64,6 +69,7 @@ en: select_all: "Select all" deselect_all: "Deselect all" no_aspects: "No aspects selected" + add_an_aspect: "+ Add an aspect" getting_started: hey: "Hey, <%= name %>!" no_tags: "Hey, you haven't followed any tags! Continue anyway?" @@ -71,6 +77,7 @@ en: preparing_your_stream: "Preparing your personalized stream..." photo_uploader: looking_good: "OMG, you look awesome!" + completed: "<%= file %> completed" tags: wasnt_that_interesting: "OK, I suppose #<%= tagName %> wasn't all that interesting..." people: @@ -106,6 +113,17 @@ en: one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" + followed_tag: + title: "#Followed Tags" + contacts_title: "People who dig these tags" + add_a_tag: "Add a tag" + follow: "Follow" + + tags: + follow: "Follow #<%= tag %>" + following: "Following #<%= tag %>" + stop_following: "Stop Following #<%= tag %>" + header: home: "Home" profile: "Profile" diff --git a/config/locales/javascript/javascript.en_1337.yml b/config/locales/javascript/javascript.en_1337.yml index 1e7d45450..ec1f2c4f6 100644 --- a/config/locales/javascript/javascript.en_1337.yml +++ b/config/locales/javascript/javascript.en_1337.yml @@ -17,7 +17,6 @@ en_1337: many: "1N {{count}} 45P3C75" one: "1N {{count}} 45P3C7" other: "1N {{count}} 45P3C75" - two: "1N {{count}} 45P3C75" zero: "4DD N00B" aspect_navigation: deselect_all: "D353L3C7 4LL" @@ -50,21 +49,18 @@ en_1337: many: "<%= count %> <3" one: "<%= count %> <3" other: "<%= count %> <3" - two: "<%= count %> <3" zero: "<%= count %> <3" more_comments: few: "5H0W <%= count %> M0R3 C0MM3N75" many: "5H0W <%= count %> M0R3 C0MM3N75" one: "5H0W <%= count %> M0R3 C0MM3N7" other: "5H0W <%= count %> M0R3 C0MM3N75" - two: "5H0W <%= count %> M0R3 C0MM3N75" zero: "5H0W <%= count %> M0R3 C0MM3N75" reshares: few: "<%= count %> R35H4R35" many: "<%= count %> R35H4R35" one: "<%= count %> R35H4R3" other: "<%= count %> R35H4R35" - two: "<%= count %> R35H4R35" zero: "<%= count %> R35H4R35" tags: wasnt_that_interesting: "0K, 1 5UPP053 #{{tagName}} W45N7 7H47 1N73R3571NG..." diff --git a/config/locales/javascript/javascript.en_pirate.yml b/config/locales/javascript/javascript.en_pirate.yml index 912387089..08b946de4 100644 --- a/config/locales/javascript/javascript.en_pirate.yml +++ b/config/locales/javascript/javascript.en_pirate.yml @@ -16,7 +16,6 @@ en_pirate: many: "In {{count}} aspects" one: "In {{count}} aspect" other: "In {{count}} aspects" - two: "In <%= count %> aspects" zero: "Add to aspect" getting_started: hey: "Hey, {{name}}!" @@ -32,21 +31,18 @@ en_pirate: many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" more_comments: few: "Show <%= count %> more comments" many: "Show <%= count %> more comments" one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" zero: "Show <%= count %> more comments" reshares: few: "<%= count %> Reshares" many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" tags: wasnt_that_interesting: "OK, I suppose #{{tagName}} wasn't all that interesting..." diff --git a/config/locales/javascript/javascript.en_shaw.yml b/config/locales/javascript/javascript.en_shaw.yml index 379431fa1..fff0f1176 100644 --- a/config/locales/javascript/javascript.en_shaw.yml +++ b/config/locales/javascript/javascript.en_shaw.yml @@ -16,7 +16,6 @@ en_shaw: many: "𐑦𐑯 {{count}} 𐑨𐑕𐑐𐑧𐑒𐑑𐑕" one: "𐑦𐑯 {{count}} 𐑨𐑕𐑐𐑧𐑒𐑑" other: "𐑦𐑯 {{count}} 𐑨𐑕𐑐𐑧𐑒𐑑𐑕" - two: "In <%= count %> aspects" zero: "𐑨𐑛 𐑑 𐑨𐑕𐑐𐑧𐑒𐑑" comments: hide: "𐑣𐑲𐑛 𐑒𐑪𐑥𐑩𐑯𐑑𐑕" @@ -43,21 +42,18 @@ en_shaw: many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" more_comments: few: "Show <%= count %> more comments" many: "Show <%= count %> more comments" one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" zero: "Show <%= count %> more comments" reshares: few: "<%= count %> Reshares" many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" tags: wasnt_that_interesting: "OK, I suppose #{{tagName}} wasn't all that interesting..." diff --git a/config/locales/javascript/javascript.eo.yml b/config/locales/javascript/javascript.eo.yml index 879d1d3bd..a4962fa1d 100644 --- a/config/locales/javascript/javascript.eo.yml +++ b/config/locales/javascript/javascript.eo.yml @@ -16,7 +16,7 @@ eo: toggle: one: "En <%= count %> aspekto" other: "En <%= count %> aspektoj" - zero: "En <%= count %> aspektoj" + zero: "Elektu aspektojn" aspect_navigation: deselect_all: "Malselekti ĉiujn" no_aspects: "Neniuj aspektoj selektitaj" diff --git a/config/locales/javascript/javascript.es-AR.yml b/config/locales/javascript/javascript.es-AR.yml index c64c24249..121b6bb4c 100644 --- a/config/locales/javascript/javascript.es-AR.yml +++ b/config/locales/javascript/javascript.es-AR.yml @@ -70,6 +70,11 @@ es-AR: stream: comment: "Comentar" follow: "Seguir" + followed_tag: + add_a_tag: "Añadir una etiqueta" + contacts_title: "Personas que buscaron esta etiqueta" + follow: "Seguir" + title: "#Etiquetas que sigues" hide: "Ocultar" hide_nsfw_posts: "Ocultar publicaciones no aptas para todo público (#nsfw)" like: "Me gusta" @@ -91,6 +96,10 @@ es-AR: zero: "Compartido <%= count %> veces" show_nsfw_post: "Mostrar publicación" show_nsfw_posts: "Mostrar todo" + tags: + follow: "Seguir #<%= tag %>" + following: "Siguiendo #<%= tag %>" + stop_following: "Dejar de seguir #<%= tag %>" unfollow: "Dejar de seguir" unlike: "No me gusta" tags: @@ -104,10 +113,10 @@ es-AR: minutes: "%d minutos" month: "cerca de un mes" months: "%d meses" - prefixAgo: "hace" + prefixAgo: "" prefixFromNow: "" seconds: "menos de un minuto" - suffixAgo: "hace" + suffixAgo: "" suffixFromNow: "desde ahora" year: "cerca de un año" years: "%d años" diff --git a/config/locales/javascript/javascript.es-MX.yml b/config/locales/javascript/javascript.es-MX.yml index 9c44ae181..fc9aa7bd0 100644 --- a/config/locales/javascript/javascript.es-MX.yml +++ b/config/locales/javascript/javascript.es-MX.yml @@ -6,6 +6,7 @@ es-MX: javascripts: + and: "y" aspect_dropdown: add_to_aspect: "Añadir contacto" all_aspects: "Todos los aspectos" @@ -18,14 +19,17 @@ es-MX: other: "En <%= count %> aspectos" zero: "Elige los aspectos" aspect_navigation: + add_an_aspect: "+ Añadir un aspecto" deselect_all: "Desmarcar todos" no_aspects: "No hay aspectos seleccionados" select_all: "Marcar todos" + comma: "," comments: hide: "ocultar comentarios" show: "mostrar todos los comentarios" confirm_dialog: "¿Estás seguro?" delete: "Borrar" + edit: "Editar" failed_to_like: "¡No se pudo marcar como «Me gusta»!" failed_to_post_message: "¡No se pudo publicar el mensaje!" getting_started: @@ -52,10 +56,12 @@ es-MX: infinite_scroll: no_more: "No hay más publicaciones." my_activity: "Mi actividad" + my_aspects: "Mis aspectos" my_stream: "Entrada" people: not_found: "y nadie fue encontrado…" photo_uploader: + completed: "<%= file %> completado" looking_good: "¡Ah, te ves increíble!" publisher: at_least_one_aspect: "Debes publicar al menos en un aspecto" @@ -70,6 +76,11 @@ es-MX: stream: comment: "Comentar" follow: "Seguir" + followed_tag: + add_a_tag: "Añadir una etiqueta" + contacts_title: "Personas siguiendo estas etiquetas" + follow: "Seguir" + title: "#Etiquetas seguidas" hide: "Ocultar" hide_nsfw_posts: "Ocultar publicaciones no aptas para todo público" like: "Me gusta" @@ -91,6 +102,10 @@ es-MX: zero: "Compartido <%= count %> veces" show_nsfw_post: "Mostrar publicación" show_nsfw_posts: "Mostrar todo" + tags: + follow: "Seguir #<%= tag %>" + following: "Siguiendo #<%= tag %>" + stop_following: "Dejar de seguir #<%= tag %>" unfollow: "Dejar de seguir" unlike: "No me gusta" tags: diff --git a/config/locales/javascript/javascript.es.yml b/config/locales/javascript/javascript.es.yml index 93c1f8d35..265e6e2ed 100644 --- a/config/locales/javascript/javascript.es.yml +++ b/config/locales/javascript/javascript.es.yml @@ -6,6 +6,7 @@ es: javascripts: + and: "y" aspect_dropdown: add_to_aspect: "Añadir contacto" all_aspects: "Todos los aspectos" @@ -18,14 +19,17 @@ es: other: "En <%= count %> aspectos" zero: "Elige los aspectos" aspect_navigation: + add_an_aspect: "+ Añadir un aspecto" deselect_all: "Desmarcar todos" no_aspects: "No hay aspectos seleccionados" select_all: "Marcar todos" + comma: "," comments: hide: "ocultar comentarios" show: "mostrar todos los comentarios" confirm_dialog: "¿Estás seguro?" delete: "Eliminar" + edit: "Editar" failed_to_like: "\"Me gusta\" no ha funcionado." failed_to_post_message: "¡Error al publicar el mensaje!" getting_started: @@ -52,10 +56,12 @@ es: infinite_scroll: no_more: "No hay más publicaciones." my_activity: "Mi Actividad" + my_aspects: "Mis aspectos" my_stream: "Entrada" people: not_found: "...y no se encontró a nadie." photo_uploader: + completed: "<%= file %> completado" looking_good: "¡Guau, estás increíble!" publisher: at_least_one_aspect: "Debes publicarlo al menos en un aspecto" @@ -70,6 +76,11 @@ es: stream: comment: "Comentar" follow: "Seguir" + followed_tag: + add_a_tag: "Añadir una etiqueta" + contacts_title: "Personas que buscaron esas etiquetas" + follow: "Seguir" + title: "#Etiquetas seguidas" hide: "Ocultar publicación" hide_nsfw_posts: "Ocultar publicaciones no aptas para todos los públicos" like: "Me gusta" @@ -91,6 +102,10 @@ es: zero: "Compartido <%= count %> veces" show_nsfw_post: "Mostrar publicación" show_nsfw_posts: "Mostrar todas las publicaciones" + tags: + follow: "Seguir #<%= tag %>" + following: "Siguiendo #<%= tag %>" + stop_following: "Dejar de seguir #<%= tag %>" unfollow: "Dejar de seguir" unlike: "No me gusta" tags: @@ -107,7 +122,7 @@ es: prefixAgo: "Hace" prefixFromNow: "dentro de" seconds: "menos de 1 minuto" - suffixAgo: "hace" + suffixAgo: "" suffixFromNow: "" year: "un año aproximadamente" years: "%d años" diff --git a/config/locales/javascript/javascript.eu.yml b/config/locales/javascript/javascript.eu.yml index 9ecc36456..a1c596fbc 100644 --- a/config/locales/javascript/javascript.eu.yml +++ b/config/locales/javascript/javascript.eu.yml @@ -77,7 +77,6 @@ eu: many: "<%= count %>(e)k gustuko dute" one: "<%= count %>ek gustuko du" other: "<%= count %>(e)k gustuko dute" - two: "<%= count %>(e)k gustuko dute" zero: "<%= count %>(e)k gustuko dute" limited: "Mugatua" more_comments: @@ -85,7 +84,6 @@ eu: many: "Erakutsi <%= count %> iruzkin gehiago" one: "Erakutsi iruzkin <%= count %> gehiago" other: "Erakutsi <%= count %> iruzkin gehiago" - two: "Erakutsi <%= count %> iruzkin gehiago" zero: "Erakutsi <%= count %> iruzkin gehiago" original_post_deleted: "Jatorrizko mezua egileak ezabatu du." public: "Publikoa" @@ -95,7 +93,6 @@ eu: many: "<%= count %> Birpartekaketa" one: "Birpartekaketa <%= count %> " other: "<%= count %> Birpatekaketa" - two: "<%= count %> Birpatekaketa" zero: "<%= count %> Birpatekaketa" show_nsfw_post: "Mezua erakutsi" show_nsfw_posts: "Guztiak erakutsi" diff --git a/config/locales/javascript/javascript.fi.yml b/config/locales/javascript/javascript.fi.yml index 8b3911c26..795219c79 100644 --- a/config/locales/javascript/javascript.fi.yml +++ b/config/locales/javascript/javascript.fi.yml @@ -18,7 +18,6 @@ fi: many: "<%= count %> näkymässä" one: "<%= count %> näkymässä" other: "<%= count %> näkymässä" - two: "<%= count %> näkymässä" zero: "Valitse näkymät" aspect_navigation: deselect_all: "Poista valinnat" @@ -80,7 +79,6 @@ fi: many: "<%= count %> tykkäystä" one: "<%= count %> tykkäys" other: "<%= count %> tykkäystä" - two: "<%= count %> tykkäystä" zero: "<%= count %> tykkäystä" limited: "Rajoitettu" more_comments: @@ -88,7 +86,6 @@ fi: many: "Näytä <%= count %> muuta kommenttia" one: "Näytä <%= count %> muu kommentti" other: "Näytä <%= count %> muuta kommenttia" - two: "Näytä <%= count %> muuta kommenttia" zero: "Näytä <%= count %> muuta kommenttia" original_post_deleted: "Lähettäjä on poistanut alkuperäisen viestin." public: "Julkinen" @@ -98,7 +95,6 @@ fi: many: "<%= count %> uudelleenjakoa" one: "<%= count %> uudelleenjako" other: "<%= count %> uudelleenjakoa" - two: "<%= count %> uudelleenjakoa" zero: "<%= count %> uudelleenjakoa" show_nsfw_post: "Näytä viesti" show_nsfw_posts: "Näytä kaikki" diff --git a/config/locales/javascript/javascript.fil.yml b/config/locales/javascript/javascript.fil.yml new file mode 100644 index 000000000..7341238b0 --- /dev/null +++ b/config/locales/javascript/javascript.fil.yml @@ -0,0 +1,21 @@ +# Copyright (c) 2010-2012, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. + + + +fil: + javascripts: + confirm_dialog: "Sigurado ka ba?" + header: + view_all: "Tingnan lahat" + search_for: "Hanapin si <%=name%>" + stream: + hide: "Itago" + public: "Publiko" + timeago: + minutes: "%d minuto" + prefixAgo: "" + prefixFromNow: "" + suffixAgo: "" + suffixFromNow: ""
\ No newline at end of file diff --git a/config/locales/javascript/javascript.fr.yml b/config/locales/javascript/javascript.fr.yml index 151fc6e3e..0328d8f8d 100644 --- a/config/locales/javascript/javascript.fr.yml +++ b/config/locales/javascript/javascript.fr.yml @@ -6,6 +6,7 @@ fr: javascripts: + and: "et" aspect_dropdown: add_to_aspect: "Ajouter le contact" all_aspects: "Tous les aspects" @@ -18,17 +19,19 @@ fr: many: "Dans <%= count %> aspects" one: "Dans <%= count %> aspect" other: "Dans <%= count %> aspects" - two: "Dans <%= count %> aspects" zero: "Sélectionnez les aspects" aspect_navigation: + add_an_aspect: "+ Ajouter un aspect" deselect_all: "Désélectionner tout" no_aspects: "Aucun aspect sélectionné" select_all: "Sélectionner tout" + comma: "," comments: - hide: "Cacher les commentaires" + hide: "Masquer les commentaires" show: "Afficher tous les commentaires" - confirm_dialog: "Êtes-vous sûr ?" + confirm_dialog: "Êtes-vous certain-e ?" delete: "Effacer" + edit: "Éditer" failed_to_like: "Impossible d'aimer !" failed_to_post_message: "Impossible de partager le message !" getting_started: @@ -55,10 +58,12 @@ fr: infinite_scroll: no_more: "Pas d'autres messages." my_activity: "Mon activité" + my_aspects: "Mes Aspects" my_stream: "Flux" people: not_found: "Et personne n'a été trouvé ..." photo_uploader: + completed: "<%= file %> complété" looking_good: "Impressionnant, vous avez un super look !" publisher: at_least_one_aspect: "Vous devez créer au moins un aspect" @@ -73,6 +78,11 @@ fr: stream: comment: "Commenter" follow: "Suivre" + followed_tag: + add_a_tag: "Ajouter un tag" + contacts_title: "Personnes qui suivent ces tags" + follow: "Suivre" + title: "#tags suivis" hide: "Masquer" hide_nsfw_posts: "Masquer les messages #nsfw" like: "J'aime" @@ -81,7 +91,6 @@ fr: many: "<%= count %> J'aime" one: "<%= count %> J'aime" other: "<%= count %> J'aime" - two: "<%= count %> J'aime" zero: "<%= count %> J'aime" limited: "Limité" more_comments: @@ -96,10 +105,13 @@ fr: many: "<%= count %> repartages" one: "<%= count %> repartage" other: "<%= count %> repartages" - two: "<%= count %> Repartages" zero: "<%= count %> repartages" show_nsfw_post: "Montrer le message" show_nsfw_posts: "Tout montrer" + tags: + follow: "Suivre #<%= tag %>" + following: "Suivant #<%= tag %>" + stop_following: "Arrêter de suivre #<%= tag %>" unfollow: "Ne pas suivre" unlike: "Je n'aime plus" tags: diff --git a/config/locales/javascript/javascript.he.yml b/config/locales/javascript/javascript.he.yml index ea9d31401..35772d85b 100644 --- a/config/locales/javascript/javascript.he.yml +++ b/config/locales/javascript/javascript.he.yml @@ -6,6 +6,7 @@ he: javascripts: + and: "וגם" aspect_dropdown: add_to_aspect: "הוסף איש קשר" all_aspects: "כל ההיבטים" @@ -18,17 +19,18 @@ he: many: "{{count}} תחומי עניין ב" one: "{{count}}בתחום עניין " other: "ב־{{count}} היבטים" - two: "ב־{{count}} היבטים" zero: "בחר תחום עניין" aspect_navigation: deselect_all: "בטל את הסימון" no_aspects: "אין תחום עניין שנבחר" select_all: "בחר הכל" + comma: "," comments: hide: "הסתרת תגובות" show: "הצגת כל התגובות" confirm_dialog: "בבטחה" - delete: "למחוק " + delete: "מחיקה" + edit: "עריכה" failed_to_like: "הסימון ב'אהבתי' נכשל!" failed_to_post_message: "פרסום ההודעה נכשל!" getting_started: @@ -37,47 +39,54 @@ he: no_tags: "?היי, לא עקבת אחרי אף תגית! לאן אתה רוצה להמשיך" preparing_your_stream: "החדשות האישיות שלך בשלבי הכנה" header: - admin: "מערכת" + admin: "מנהל-מערכת" + close: "סגור" contacts: "אנשי קשר " home: "בית" log_out: "התנתק" mark_all_as_read: "סמן הכל כנקרא" messages: "הודעות" - notifications: "הודעות" + notifications: "התראות" profile: "פרופיל " recent_notifications: "התראות אחרונות " search: "Find people or #tags" settings: "הגדרות" view_all: "הצג הכל" ignore: "התעלם" + ignore_user: "להתעלם ממשמש זה?" infinite_scroll: - no_more: "אין רשומות נוספות" + no_more: "אין הודעות נוספות" my_activity: "הפעילות שלי" my_stream: "חדשות " people: - not_found: "ואף אחד לא נמצא..." + not_found: "ואף לא אחד נמצא..." photo_uploader: + completed: "%= file %%= file %<%= file %> הושלמה" looking_good: "! וואו, מדהים" publisher: at_least_one_aspect: "עליך לפרסם תחום עניין אחד לפחות" limited: "מוגבל - הרשומה שלך תהיה גלויה אך ורק לאנשים אתם בחרת לשתף" - public: "ציבורי - הרשומה שלך תהיה גלויה לכולם וניתן יהיה למצוא אותה במנועי חיפוש" + public: "ציבורי - ההודעה שלך תהיה גלויה לכולם וניתן יהיה למצוא אותה במנועי חיפוש" reshares: - duplicate: "כבר שיתפת רשומה זו בעבר " + duplicate: "כבר ביצעת שיתוף-מחדש של הודעה זו בעבר!" + post: "האם לשתף מחדש את ההודעה של %= name %<%= name %>?" + successful: "ההודעה שותפה מחדש בהצלחה!" search_for: " {{name}}חיפוש אחר" show_more: "הצגת עוד" stream: comment: "תגובה" - follow: "העבר" + follow: "עקוב" + followed_tag: + add_a_tag: "הוסף תג" + follow: "עקוב" hide: "הסתר" - hide_nsfw_posts: "הסתר את הרשומות nsfw#" - like: "מתעניין" + hide_nsfw_posts: "הסתר את הההודעות אשר nsfw#" + like: "אהבתי" likes: few: "<%= count %> Likes" many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" limited: "מוגבל" more_comments: @@ -85,9 +94,8 @@ he: many: "Show <%= count %> more comments" one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" zero: "Show <%= count %> more comments" - original_post_deleted: "הרשומה המקורית נמחקה על ידי הכותב " + original_post_deleted: "ההודעה המקורית נמחקה על ידי הכותב" public: "ציבורי" reshare: "לשתף שוב" reshares: @@ -95,12 +103,11 @@ he: many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" - show_nsfw_post: "הצג את הרשומה" + show_nsfw_post: "הצג את ההודעה" show_nsfw_posts: "הצג הכל" - unfollow: "אל תעביר" - unlike: "לא מתעניין" + unfollow: "הפסק לעקוב" + unlike: "לא אהבתי" tags: wasnt_that_interesting: "...זה לא היה כל כך מעניין#{{tagName}} אוקיי, אני מניח " timeago: @@ -124,9 +131,10 @@ he: watch: " {{provider}}צפייה בסרטון וידאו זה באתר" viewer: comment: "תגובה" - follow_post: "עקוב אחר הרשומה" - like: "מתעניין" + follow_post: "עקוב אחר ההודעה" + home: "בית" + like: "אוהב" reshare: "שתף שוב " - reshared: "שותף שוב. " - stop_following_post: "הפסק לעקוב אחר הרשומה" - unlike: "לא מתעניין"
\ No newline at end of file + reshared: "שותף שוב" + stop_following_post: "הפסק לעקוב אחר ההודעה" + unlike: "לא אוהב"
\ No newline at end of file diff --git a/config/locales/javascript/javascript.hu.yml b/config/locales/javascript/javascript.hu.yml index 804f82189..19503f2f5 100644 --- a/config/locales/javascript/javascript.hu.yml +++ b/config/locales/javascript/javascript.hu.yml @@ -6,6 +6,7 @@ hu: javascripts: + and: "és" aspect_dropdown: add_to_aspect: "Hozzáadás a csoporthoz" all_aspects: "Összes csoport" @@ -18,17 +19,19 @@ hu: many: "<%= count %> csoportban" one: "<%= count %> csoportban" other: "<%= count %> csoportban" - two: "<%= count %> csoportban" zero: "Csoportok kiválasztása" aspect_navigation: + add_an_aspect: "+ Új csoport" deselect_all: "Összes kijelölés megszüntetése" no_aspects: "Nincs csoport kiválasztva" select_all: "Mindent kijelöl" + comma: "," comments: hide: "hozzászólások elrejtése" show: "összes hozzászólás" confirm_dialog: "Biztos vagy benne?" delete: "Töröl" + edit: "Szerkesztés" failed_to_like: "Hiba" failed_to_post_message: "Üzenet elküldése sikertelen!" getting_started: @@ -55,10 +58,12 @@ hu: infinite_scroll: no_more: "Nincs több bejegyzés." my_activity: "Tevékenységeim" + my_aspects: "Csoportjaim" my_stream: "Hírfolyam" people: not_found: "és nem találni senkit..." photo_uploader: + completed: "<%= file %> feltöltve" looking_good: "Azta! Remekül nézek ki!" publisher: at_least_one_aspect: "Legalább egy csoporttal meg kell osztanod!" @@ -73,6 +78,11 @@ hu: stream: comment: "Hozzászólás" follow: "Követem" + followed_tag: + add_a_tag: "Címke hozzáadása" + contacts_title: "Emberek, akik ezeket a címkéket követik" + follow: "Követés" + title: "#követett címkék" hide: "Elrejt" hide_nsfw_posts: "#nsfw bejegyzések rejtése" like: "Tetszik" @@ -85,7 +95,6 @@ hu: many: "Mutasd a további <%= count %> hozzászólást" one: "Mutasd a többi <%= count %> hozzászólást" other: "Mutasd a többi <%= count %> hozzászólást" - two: "Mutasd a többi <%= count %> hozzászólást" zero: "Mutasd a többi <%= count %> hozzászólást" original_post_deleted: "Eredeti bejegyzés törölve a szerzője által." public: "Nyilvános" @@ -95,10 +104,13 @@ hu: many: "<%= count %> megosztás" one: "<%= count %> megosztás" other: "<%= count %> megosztás" - two: "<%= count %> megosztás" zero: "<%= count %> megosztás" show_nsfw_post: "Bejegyzés megjelenítése" show_nsfw_posts: "Összes megjelenítése" + tags: + follow: "címke követése" + following: "#<%= tag %> követve" + stop_following: "követés leállítása #<%= tag %>" unfollow: "Nem követem" unlike: "Nem tetszik" tags: diff --git a/config/locales/javascript/javascript.hy.yml b/config/locales/javascript/javascript.hy.yml index 5edce65ba..d7242e71d 100644 --- a/config/locales/javascript/javascript.hy.yml +++ b/config/locales/javascript/javascript.hy.yml @@ -7,16 +7,16 @@ hy: javascripts: aspect_dropdown: - add_to_aspect: "Ընդլայնել կապերը" + add_to_aspect: "Ավելացնել" all_aspects: "Բոլոր խմբերը" - error: "Չի ստացվում սկսել կիսվել <%= name %>-ի հետ: Արհամարհու՞մ ես նրանց։" + error: "Չի ստացվում կիսվել <%= name %>-ի հետ։ Արհամարհու՞մ ես նրանց։" select_aspects: "Ընտրիր խմբերը" started_sharing_with: "Սկսեցիր կիսվել <%= name %>-ի հետ։" stopped_sharing_with: "Դու այլևս չես կիսվում <%= name %>-ի հետ։" toggle: one: "<%= count %> խմբում" other: "<%= count %> խմբերում" - zero: "Ընտրիր խումբը" + zero: "Ընտրիր խմբերը" aspect_navigation: deselect_all: "Ապանշել ամբողջը" no_aspects: "Ոչ մի խումբ ընտրված չէ" @@ -30,13 +30,13 @@ hy: failed_to_post_message: "Չհաջողվեց գրառում կատարել" getting_started: alright_ill_wait: "Լավ, ես կսպասեմ։" - hey: "Հե՜յ , <%= name %>։" + hey: "Հե՜յ, <%= name %>։" no_tags: "Հե՜յ, հետևելու ոչ մի պիտակ չնշեցիր։ Շարունակե՞լ։" preparing_your_stream: "Նախապատրաստում ենք քո անհատական լրահոսը..." header: - admin: "Ղեկավար" + admin: "Ադմին" close: "թաքցնել" - contacts: "Ընկերներ" + contacts: "Կոնտակտներ" home: "Գլխավոր էջ" log_out: "Ելք" mark_all_as_read: "Նշել ամբողջը որպես ընթերցված" @@ -59,10 +59,10 @@ hy: looking_good: "Օ՜, աստվածներ, հիանալի տեսք ունես։" publisher: at_least_one_aspect: "Գրառումդ պետք է տեսանելի լինի առնվազն մեկ խմբի։" - limited: "Սահմանափակ. սա նշանակում է, որ գրառումդ տեսանելի կլինի միայն այն մարդկանց, ում հետ կիսվում ես։" - public: "Հրապարակային. սա նշանակում է, որ գրառումդ տեսանելի կլինի բոլորին և հասանելի կլինի փնտրող համակարգերի համար։" + limited: "Սահմանափակ. սա նշանակում է, որ գրառումդ տեսանելի է լինելու միայն այն մարդկանց, ում հետ կիսվում ես։" + public: "Հրապարակային. սա նշանակում է, որ գրառումդ տեսանելի է լինելու բոլորին և հասանելի կլինի փնտրող համակարգերի համար։" reshares: - duplicate: "Օհ, այդքան լա՞վն է... Արդեն տարածել ես սա։" + duplicate: "Էդքան լա՞վն ա... Արդեն տարածել ես սա։" post: "Տարածե՞լ <%= name %>-ի գրառումը։" successful: "Այս գրառումը հաջողությամբ տարածվեց։" search_for: "Փնտրել <%= name %>" @@ -71,12 +71,12 @@ hy: comment: "Մեկնաբանել" follow: "Հետևել" hide: "Թաքցնել" - hide_nsfw_posts: "Թաքցնել #nsfw գրառումները" + hide_nsfw_posts: "Թաքցնել #քըխ գրառումները" like: "Հավանել" likes: - one: "<%= count %> հավանում" - other: "<%= count %> հավանումներ" - zero: "<%= count %> հավանում" + one: "<%= count %> մարդ հավանել է" + other: "<%= count %> մարդ հավանել է" + zero: "Ոչ ոք չի հավանել" limited: "Սահմանափակ" more_comments: one: "Ցույց տալ ևս <%= count %> մեկնաբանություն" @@ -86,12 +86,12 @@ hy: public: "Հրապարակային" reshare: "Տարածել" reshares: - one: "<%= count %> Տարածում" - other: "<%= count %> Տարածումներ" - zero: "<%= count %> Տարածում" + one: "<%= count %> մարդ տարածել է" + other: "<%= count %> մարդ տարածել է" + zero: "Ոչ ոք չի տարածել" show_nsfw_post: "Ցուցադրել գրառումը" show_nsfw_posts: "Ցուցադրել ամբողջը" - unfollow: "Դադարել հետևել" + unfollow: "Չհետևել" unlike: "Ապահավանել" tags: wasnt_that_interesting: "Լավ, ենթադրում եմ, որ #<%= tagName %>-ը էդքան էլ հետքրքիր չէր..." diff --git a/config/locales/javascript/javascript.ia.yml b/config/locales/javascript/javascript.ia.yml index 98e47b3d8..c72abd1b1 100644 --- a/config/locales/javascript/javascript.ia.yml +++ b/config/locales/javascript/javascript.ia.yml @@ -13,10 +13,6 @@ ia: select_aspects: "Seliger aspectos" started_sharing_with: "Tu ha comenciate a divider con <%= name %>!" stopped_sharing_with: "Tu ha cessate de divider con <%= name %>." - toggle: - human: "Selige aspectos" - po: "In <%= count %> aspecto" - yml: "In <%= count %> aspectos" aspect_navigation: deselect_all: "Deseliger totes" no_aspects: "Nulle aspecto seligite" @@ -67,22 +63,10 @@ ia: hide: "Celar" hide_nsfw_posts: "Celar entratas #nsfw" like: "Appreciar" - likes: - human: "Zero appreciationes" - po: "<%= count %> appreciation" - yml: "<%= count %> appreciationes" limited: "Limitate" - more_comments: - human: "Il non ha altere commentos a monstrar" - po: "Monstrar <%= count %> altere commento" - yml: "Monstrar <%= count %> altere commentos" original_post_deleted: "Le entrata original ha essite delite per le autor." public: "Public" reshare: "Repeter" - reshares: - human: "Zero repetitiones" - po: "<%= count %> repetition" - yml: "<%= count %> repetitiones" show_nsfw_post: "Monstrar entrata" show_nsfw_posts: "Monstrar totes" unfollow: "Non plus sequer" diff --git a/config/locales/javascript/javascript.id.yml b/config/locales/javascript/javascript.id.yml index b1de63a7e..6087f9df6 100644 --- a/config/locales/javascript/javascript.id.yml +++ b/config/locales/javascript/javascript.id.yml @@ -60,7 +60,6 @@ id: many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" limited: "Terbatas" more_comments: @@ -74,7 +73,6 @@ id: many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" show_nsfw_post: "Tampilkan" show_nsfw_posts: "Tampilkan semua" diff --git a/config/locales/javascript/javascript.is.yml b/config/locales/javascript/javascript.is.yml index 2168f340e..9109e126e 100644 --- a/config/locales/javascript/javascript.is.yml +++ b/config/locales/javascript/javascript.is.yml @@ -16,7 +16,6 @@ is: many: "In {{count}} aspects" one: "In {{count}} aspect" other: "In {{count}} aspects" - two: "In <%= count %> aspects" zero: "Add to aspect" confirm_dialog: "Ertu viss?" getting_started: @@ -33,21 +32,18 @@ is: many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" more_comments: few: "Show <%= count %> more comments" many: "Show <%= count %> more comments" one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" zero: "Show <%= count %> more comments" reshares: few: "<%= count %> Reshares" many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" tags: wasnt_that_interesting: "OK, I suppose #{{tagName}} wasn't all that interesting..." diff --git a/config/locales/javascript/javascript.it.yml b/config/locales/javascript/javascript.it.yml index 1e9938287..05feabad2 100644 --- a/config/locales/javascript/javascript.it.yml +++ b/config/locales/javascript/javascript.it.yml @@ -18,7 +18,6 @@ it: many: "In <%= count %> aspetti" one: "In <%= count %> aspetto" other: "In <%= count %> aspetti" - two: "In <%= count %> aspetti" zero: "Scegli gli aspetti" aspect_navigation: deselect_all: "Deseleziona tutti" @@ -81,15 +80,11 @@ it: many: "<%= count %> mi piace" one: "<%= count %> mi piace" other: "<%= count %> mi piace" - two: "<%= count %> mi piace" zero: "<%= count %> mi piace" limited: "Non pubblico" more_comments: - few: "Mostra gli altri <%= count %> commenti" - many: "Mostra gli altri <%= count %> commenti" one: "Mostra <%= count %> altro commento" other: "Mostra gli altri <%= count %> altri commenti" - two: "Mostra gli altri <%= count %> commenti" zero: "Mostra gli altri <%= count %> altri commenti" original_post_deleted: "Il post originale è stato rimosso dall'autore." public: "Pubblico" @@ -99,7 +94,6 @@ it: many: "<%= count %> Condivisioni" one: "<%= count %> Condivisione" other: "<%= count %> Condivisioni" - two: "<%= count %> Condivisioni" zero: "<%= count %> Condivisioni" show_nsfw_post: "Mostra il post" show_nsfw_posts: "Mostra tutti i post" diff --git a/config/locales/javascript/javascript.ja.yml b/config/locales/javascript/javascript.ja.yml index bbf9e2cc5..be38567c0 100644 --- a/config/locales/javascript/javascript.ja.yml +++ b/config/locales/javascript/javascript.ja.yml @@ -16,7 +16,6 @@ ja: many: "In {{count}} aspects" one: "In {{count}} aspect" other: "In {{count}} aspects" - two: "In <%= count %> aspects" zero: "Add to aspect" confirm_dialog: "本当にいいですか。" getting_started: @@ -37,21 +36,18 @@ ja: many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" more_comments: few: "Show <%= count %> more comments" many: "Show <%= count %> more comments" one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" zero: "Show <%= count %> more comments" reshares: few: "<%= count %> Reshares" many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" tags: wasnt_that_interesting: "OK, I suppose #{{tagName}} wasn't all that interesting..." diff --git a/config/locales/javascript/javascript.ka.yml b/config/locales/javascript/javascript.ka.yml index e73de3ddd..224f66962 100644 --- a/config/locales/javascript/javascript.ka.yml +++ b/config/locales/javascript/javascript.ka.yml @@ -18,7 +18,6 @@ ka: many: "{{count}} ასპექტში" one: "{{count}} ასპექტში" other: "{{count}} ასპექტში" - two: "{{count}} ასპექტში" zero: "აირჩიეთ ასპექტები" aspect_navigation: deselect_all: "მონიშვნის მოხსნა" @@ -79,7 +78,6 @@ ka: many: "Show <%= count %> more comments" one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" zero: "Show <%= count %> more comments" original_post_deleted: "ავტორმა წაშალა ორიგინალი პოსტი." public: "საჯარო" @@ -89,7 +87,6 @@ ka: many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" show_nsfw_post: "პოსტის ჩვენება" show_nsfw_posts: "ყველას ჩვენება" diff --git a/config/locales/javascript/javascript.ko.yml b/config/locales/javascript/javascript.ko.yml index 0baa6c1fb..9454ab05b 100644 --- a/config/locales/javascript/javascript.ko.yml +++ b/config/locales/javascript/javascript.ko.yml @@ -18,7 +18,6 @@ ko: many: "애스펙 <%= count %>개" one: "애스펙 하나" other: "애스펙 <%= count %>개" - two: "애스펙 <%= count %>개" zero: "애스펙 고르기" aspect_navigation: deselect_all: "선택 해제" @@ -80,7 +79,6 @@ ko: many: "<%= count %>명이 좋아합니다" one: "한 명이 좋아합니다" other: "<%= count %>명이 좋아합니다" - two: "<%= count %>명이 좋아합니다" zero: "<%= count %>명이 좋아합니다" limited: "제한됨" more_comments: diff --git a/config/locales/javascript/javascript.ml.yml b/config/locales/javascript/javascript.ml.yml index 9cc583510..1ebe0fcbb 100644 --- a/config/locales/javascript/javascript.ml.yml +++ b/config/locales/javascript/javascript.ml.yml @@ -18,7 +18,6 @@ ml: many: "In {{count}} aspects" one: "In {{count}} aspect" other: "In {{count}} aspects" - two: "In <%= count %> aspects" zero: "Add to aspect" aspect_navigation: deselect_all: "Deselect all" @@ -78,7 +77,6 @@ ml: many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" limited: "Limited" more_comments: diff --git a/config/locales/javascript/javascript.ms.yml b/config/locales/javascript/javascript.ms.yml index 784e80d04..3cb5be85d 100644 --- a/config/locales/javascript/javascript.ms.yml +++ b/config/locales/javascript/javascript.ms.yml @@ -18,7 +18,6 @@ ms: many: "Dalam {{count}} aspek" one: "Dalam {{count}} aspek" other: "dalam {{count}} aspek" - two: "Dalam {{count}} aspek" zero: "Pilih aspek" aspect_navigation: deselect_all: "menyahpilih semua" @@ -55,21 +54,18 @@ ms: many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" more_comments: few: "Show <%= count %> more comments" many: "Show <%= count %> more comments" one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" zero: "Show <%= count %> more comments" reshares: few: "<%= count %> Reshares" many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" tags: wasnt_that_interesting: "OK, saya mengandaikan # {{tagName}} tidak semua yang menarik..." diff --git a/config/locales/javascript/javascript.nb.yml b/config/locales/javascript/javascript.nb.yml index cff2f3e22..92662f972 100644 --- a/config/locales/javascript/javascript.nb.yml +++ b/config/locales/javascript/javascript.nb.yml @@ -6,6 +6,7 @@ nb: javascripts: + and: "og" aspect_dropdown: add_to_aspect: "Legg til kategori" all_aspects: "Alle kategorier" @@ -18,17 +19,19 @@ nb: many: "I {{count}} kategorier" one: "I {{count}} kategori" other: "I {{count}} kategorier" - two: "I {{count}} kategorier" zero: "Legg til kategori" aspect_navigation: + add_an_aspect: "+ Legg til et aspekt" deselect_all: "Avmerk alle" no_aspects: "Ingen kategorier valgt" select_all: "Merk alle" + comma: "," comments: hide: "skjul kommentarer" show: "vis alle kommentarer" confirm_dialog: "Er du sikker?" delete: "Slett" + edit: "Rediger" failed_to_like: "Klarte ikke å like!" failed_to_post_message: "Klarte ikke å publisere post!" getting_started: @@ -51,11 +54,16 @@ nb: settings: "Innstillinger" view_all: "Vis alle" ignore: "Ignorer" + ignore_user: "Overse denne brukeren?" infinite_scroll: no_more: "Ingen flere innlegg." my_activity: "Min aktivitet" + my_aspects: "Mine aspekter" my_stream: "Stream" + people: + not_found: "og ingen andre ble funnet..." photo_uploader: + completed: "<%= file %> ferdig" looking_good: "Wow, du ser fantastisk ut!" publisher: at_least_one_aspect: "Du må poste til minst ett aspekt" @@ -63,11 +71,18 @@ nb: public: "Offentlig - posten din vil være synlig for alle og kan bli funnet av søkemotorer" reshares: duplicate: "du har allerede delt denne posten!" + post: "Videredel <%= name %> sitt innhold?" + successful: "Dette innholdet ble videredelt" search_for: "Søk etter {{name}}" show_more: "vis mer" stream: comment: "Kommenter" follow: "Følg" + followed_tag: + add_a_tag: "Legg til en tag" + contacts_title: "Folk som liker disse tag'ene" + follow: "Følg" + title: "#Fulgte tag'er" hide: "Skjul" hide_nsfw_posts: "Gjem #nsfw-posts" like: "Liker" @@ -89,6 +104,10 @@ nb: zero: "<%= count %> delinger" show_nsfw_post: "Vis innlegg" show_nsfw_posts: "Vis alle" + tags: + follow: "Følg #<%= tag %>" + following: "Følger #<%= tag %>" + stop_following: "Stopp å følge #<%= tag %>" unfollow: "Ikke følg" unlike: "Liker ikke" tags: @@ -116,4 +135,8 @@ nb: comment: "Kommenter" follow_post: "Følg post" home: "HJEM" - stop_following_post: "Slutt å følge post"
\ No newline at end of file + like: "Liker" + reshare: "Del med andre" + reshared: "Delt med andre" + stop_following_post: "Slutt å følge post" + unlike: "Fjern liker"
\ No newline at end of file diff --git a/config/locales/javascript/javascript.nl.yml b/config/locales/javascript/javascript.nl.yml index d7dcfcd34..d06c120be 100644 --- a/config/locales/javascript/javascript.nl.yml +++ b/config/locales/javascript/javascript.nl.yml @@ -18,7 +18,6 @@ nl: many: "In <%= count %> aspecten" one: "In <%= count %> aspect" other: "In <%= count %> aspecten" - two: "In <%= count %> aspecten" zero: "Aspecten selecteren" aspect_navigation: deselect_all: "Alles deselecteren" @@ -51,6 +50,7 @@ nl: settings: "Instellingen" view_all: "Bekijk alle" ignore: "Negeer" + ignore_user: "Wilt u deze gebruiker negeren?" infinite_scroll: no_more: "Geen berichten meer." my_activity: "Mijn activiteit" @@ -72,6 +72,9 @@ nl: stream: comment: "Reageren" follow: "Volgen" + followed_tag: + add_a_tag: "Label toevoegen" + follow: "Volgen" hide: "Verberg" hide_nsfw_posts: "Verberg #nsfw berichten" like: "Vind ik leuk" diff --git a/config/locales/javascript/javascript.nn.yml b/config/locales/javascript/javascript.nn.yml index ea043909e..8a0a2f9bc 100644 --- a/config/locales/javascript/javascript.nn.yml +++ b/config/locales/javascript/javascript.nn.yml @@ -6,6 +6,7 @@ nn: javascripts: + and: "og" aspect_dropdown: add_to_aspect: "Legg til kontakt" all_aspects: "Alle aspekta" @@ -18,14 +19,17 @@ nn: other: "I <%= count %> aspekt" zero: "Vel aspekt" aspect_navigation: + add_an_aspect: "+ Legg til eit aspekt" deselect_all: "Vel vekk alle" no_aspects: "Ingen aspekt er valde" select_all: "Vel alle" + comma: "," comments: hide: "gøym merknader" show: "syn alle merknadene" confirm_dialog: "Er du sikker?" delete: "Slett" + edit: "Endra" failed_to_like: "Like-funksjonen feila." failed_to_post_message: "Klarte ikkje å senda meldinga." getting_started: @@ -52,10 +56,12 @@ nn: infinite_scroll: no_more: "Ingen fleire meldingar." my_activity: "Min aktivitet" + my_aspects: "Aspekta mine" my_stream: "Straum" people: not_found: "orsak, me kunne ikkje finne nokon." photo_uploader: + completed: "<%= file %> ferdig" looking_good: "Du verda, du ser flott ut!" publisher: at_least_one_aspect: "Du må offentleggjera til minst eitt aspekt" @@ -70,6 +76,11 @@ nn: stream: comment: "Kommenter" follow: "Følg" + followed_tag: + add_a_tag: "Legg til ein tag" + contacts_title: "Folk som lik denne tagen" + follow: "Følg" + title: "#Følgde tags" hide: "Gøym" hide_nsfw_posts: "Gøym innlegg merka med #nsfw" like: "Lik" @@ -91,6 +102,10 @@ nn: zero: "<%= count %> delingar" show_nsfw_post: "Syn innlegg" show_nsfw_posts: "Syn alt" + tags: + follow: "Følg #<%= tag %>" + following: "Følgjer #<%= tag %>" + stop_following: "Slutt å følgja #<%= tag %>" unfollow: "Ikkje følg" unlike: "Lik ikkje lenger" tags: diff --git a/config/locales/javascript/javascript.pl.yml b/config/locales/javascript/javascript.pl.yml index 7a76531e3..2da18a1ce 100644 --- a/config/locales/javascript/javascript.pl.yml +++ b/config/locales/javascript/javascript.pl.yml @@ -6,6 +6,7 @@ pl: javascripts: + and: "i" aspect_dropdown: add_to_aspect: "Dodaj kontakt" all_aspects: "Wszystkie aspekty" @@ -18,17 +19,19 @@ pl: many: "W <%= count %> aspektach" one: "W <%= count %> aspekcie" other: "W <%= count %> aspektach" - two: "W <%= count %> aspektach" zero: "Wybierz aspekty" aspect_navigation: + add_an_aspect: "+ Dodaj aspekt" deselect_all: "Odznacz wszystkie" no_aspects: "Nie wybrano aspektów" select_all: "Zaznacz wszystkie" + comma: "," comments: hide: "ukryj komentarze" show: "wyświetl wszystkie komentarze" confirm_dialog: "Czy @{m,f:jesteś|n:na}{ pew}{m:ien|f:na|n:no}?" delete: "Usuń" + edit: "Edycja" failed_to_like: "Nie udało się pulubić!" failed_to_post_message: "Nie można wysłać wiadomości!" getting_started: @@ -55,10 +58,12 @@ pl: infinite_scroll: no_more: "Nie ma więcej wpisów." my_activity: "Moja aktywność" + my_aspects: "Moje aspekty" my_stream: "Strumień" people: not_found: "...i nikogo nie odnaleziono." photo_uploader: + completed: "<%= file %> ukończono" looking_good: "O rety! Świetnie wyglądasz!" publisher: at_least_one_aspect: "Musisz udostępnić dla co najmniej jednego aspektu" @@ -73,6 +78,11 @@ pl: stream: comment: "Skomentuj" follow: "Obserwuj" + followed_tag: + add_a_tag: "Dodaj znacznik" + contacts_title: "Osoby, które wykopały te te znaczniki" + follow: "Obserwuj" + title: "#Obserwowane znaczniki" hide: "Ukryj" hide_nsfw_posts: "Ukryj wpisy #nsfw" like: "Lubię to!" @@ -81,7 +91,6 @@ pl: many: "Polubienia: <%= count %>" one: "<%= count %> polubienie" other: "<%= count %> polubienia" - two: "<%= count %> polubienia" zero: "<%= count %> polubień" limited: "Ograniczone" more_comments: @@ -97,10 +106,13 @@ pl: many: "<%= count %> razy przekazano dalej" one: "<%= count %> razy przekazano dalej" other: "<%= count %> razy przekazano dalej" - two: "<%= count %> razy przekazano dalej" zero: "<%= count %> razy przekazano dalej" show_nsfw_post: "Wyświetl wpis" show_nsfw_posts: "Wyświetl wszystko" + tags: + follow: "Obserwuj #<%= tag %>" + following: "Obserwowanie #<%= tag %>" + stop_following: "Przestań obserwować #<%= tag %>" unfollow: "Nie obserwuj" unlike: "Nie lubię" tags: diff --git a/config/locales/javascript/javascript.pt-BR.yml b/config/locales/javascript/javascript.pt-BR.yml index 46352c459..7131f3b82 100644 --- a/config/locales/javascript/javascript.pt-BR.yml +++ b/config/locales/javascript/javascript.pt-BR.yml @@ -70,6 +70,9 @@ pt-BR: stream: comment: "Comentar" follow: "Seguir" + followed_tag: + add_a_tag: "Adicionar uma tag" + follow: "Seguir" hide: "Ocultar" hide_nsfw_posts: "Esconder posts não recomendáveis para serem visualizados no escritório." like: "Curtir" @@ -91,6 +94,10 @@ pt-BR: zero: "<%= count %> Recompartilhamento" show_nsfw_post: "Mostrar post" show_nsfw_posts: "Mostrar tudo" + tags: + follow: "Seguir #<%= tag %>" + following: "Seguindo #<%= tag %>" + stop_following: "Parar de Seguir #<%= tag %>" unfollow: "Parar de seguir" unlike: "Descurtir" tags: diff --git a/config/locales/javascript/javascript.pt-PT.yml b/config/locales/javascript/javascript.pt-PT.yml index 3f9b99a84..34186a437 100644 --- a/config/locales/javascript/javascript.pt-PT.yml +++ b/config/locales/javascript/javascript.pt-PT.yml @@ -6,6 +6,7 @@ pt-PT: javascripts: + and: "e" aspect_dropdown: add_to_aspect: "Adicionar contacto" all_aspects: "Todos os grupos" @@ -26,6 +27,7 @@ pt-PT: show: "mostrar todos os comentários" confirm_dialog: "Tem a certeza?" delete: "Eliminar" + edit: "Editar" failed_to_like: "Falhou em gostar!" failed_to_post_message: "Falhou ao publicar a mensagem!" getting_started: @@ -56,6 +58,7 @@ pt-PT: people: not_found: "e ninguém foi encontrado..." photo_uploader: + completed: "<%= file %> completado" looking_good: "OMD, tu estás fantástico(a)!" publisher: at_least_one_aspect: "Tem de publicar em pelo menos um grupo" @@ -70,6 +73,11 @@ pt-PT: stream: comment: "Comentar" follow: "Seguir" + followed_tag: + add_a_tag: "Adicionar uma etiqueta" + contacts_title: "Pessoas que gostam destas etiquetas" + follow: "Seguir" + title: "#Etiquetas Seguidas" hide: "Ocultar" hide_nsfw_posts: "Ocultar publicações #nsfw" like: "Gostar" @@ -79,11 +87,8 @@ pt-PT: zero: "<%= count %> gosto" limited: "Limitado" more_comments: - few: "Mostrar <%= count %> mais comentários" - many: "Mostrar <%= count %> mais comentários" one: "Mostrar mais <%= count %> comentário" other: "Mostrar mais <%= count %> comentários" - two: "Mostrar <%= count %> mais comentários" zero: "Mostrar mais <%= count %> comentários" original_post_deleted: "Publicação original eliminada pelo autor." public: "Público" @@ -94,6 +99,10 @@ pt-PT: zero: "<%= count %> repartilhas" show_nsfw_post: "Mostrar publicação" show_nsfw_posts: "Mostrar todos" + tags: + follow: "Seguir #<%= tag %>" + following: "Seguindo #<%= tag %>" + stop_following: "Parar de Seguir #<%= tag %>" unfollow: "Não seguir" unlike: "Não gostar" tags: diff --git a/config/locales/javascript/javascript.ro.yml b/config/locales/javascript/javascript.ro.yml index 9754ac2ba..1599203c6 100644 --- a/config/locales/javascript/javascript.ro.yml +++ b/config/locales/javascript/javascript.ro.yml @@ -18,7 +18,6 @@ ro: many: "În {{count}} aspecte" one: "În {{count}} aspect" other: "În {{count}} aspecte" - two: "In {{count}} aspecte" zero: "Selectati aspecte" aspect_navigation: deselect_all: "Deselectează tot" @@ -54,21 +53,18 @@ ro: many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" more_comments: few: "Show <%= count %> more comments" many: "Show <%= count %> more comments" one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" zero: "Show <%= count %> more comments" reshares: few: "<%= count %> Reshares" many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" tags: wasnt_that_interesting: "Bine, presupun ca #{{tagName}} nu a fost chiar atat de interesant..." diff --git a/config/locales/javascript/javascript.ru.yml b/config/locales/javascript/javascript.ru.yml index ff40d7a56..f95258c41 100644 --- a/config/locales/javascript/javascript.ru.yml +++ b/config/locales/javascript/javascript.ru.yml @@ -18,7 +18,6 @@ ru: many: "В <%= count %> аспектах" one: "В <%= count %> аспекте" other: "В <%= count %> аспектах" - two: "В <%= count %> аспектах" zero: "Выбрать аспекты" aspect_navigation: deselect_all: "Выключить все" @@ -80,7 +79,6 @@ ru: many: "Понравилось: <%= count %>" one: "Понравилось: <%= count %>" other: "Понравилось: <%= count %>" - two: "Понравилось: <%= count %>" zero: "Понравилось: <%= count %>" limited: "Ограниченная" more_comments: @@ -97,7 +95,6 @@ ru: many: "Поделились: <%= count %>" one: "Поделились: <%= count %>" other: "Поделились: <%= count %>" - two: "Поделились: <%= count %>" zero: "Поделились: <%= count %>" show_nsfw_post: "Показать запись" show_nsfw_posts: "Показать все" diff --git a/config/locales/javascript/javascript.sk.yml b/config/locales/javascript/javascript.sk.yml index 5f44e1548..1b78652a1 100644 --- a/config/locales/javascript/javascript.sk.yml +++ b/config/locales/javascript/javascript.sk.yml @@ -6,6 +6,7 @@ sk: javascripts: + and: "a" aspect_dropdown: add_to_aspect: "Pridať kontakt" all_aspects: "Všetky kategórie" @@ -19,14 +20,17 @@ sk: other: "V(o) <%= count %>kategóriách" zero: "Vyber si kategórie" aspect_navigation: + add_an_aspect: "+ Pridať kategóriu" deselect_all: "Odznačiť všetky" no_aspects: "Nevybral(a) si žiadne kategórie" select_all: "Označiť všetky" + comma: "," comments: hide: "Skryť komentáre" show: "Zobraziť všetky komentáre" confirm_dialog: "Určite?" delete: "Odstrániť" + edit: "Upraviť" failed_to_like: "Nepodarilo sa označiť, že sa ti to páči!" failed_to_post_message: "Správu sa nepodarilo poslať!" getting_started: @@ -53,10 +57,12 @@ sk: infinite_scroll: no_more: "Žiadne ďalšie príspevky." my_activity: "Moja aktivita" + my_aspects: "Moje kategórie" my_stream: "Nástenka" people: not_found: "...a nikto sa nenašiel." photo_uploader: + completed: "<%= file %> hotovo" looking_good: "No teda, vyzeráš super!" publisher: at_least_one_aspect: "Musíš publikovať aspoň jednu kategóriu" @@ -71,6 +77,11 @@ sk: stream: comment: "Okomentovať" follow: "Sledovať" + followed_tag: + add_a_tag: "Pridať značku" + contacts_title: "Ľudia, ktorí hľadajú tieto značky" + follow: "Sledovať" + title: "#Sledované značky" hide: "Schovať" hide_nsfw_posts: "Schovať príspevky #nsfw" like: "Páči sa mi to" @@ -95,6 +106,10 @@ sk: zero: "<%= count %> opätovných zdieľaní" show_nsfw_post: "Zobraziť príspevok" show_nsfw_posts: "Zobraziť všetky" + tags: + follow: "Sledovať #<%= tag %>" + following: "Sleduje(š) #<%= tag %>" + stop_following: "Prestať sledovať #<%= tag %>" unfollow: "Nesledovať" unlike: "Už sa mi to nepáči" tags: diff --git a/config/locales/javascript/javascript.sl.yml b/config/locales/javascript/javascript.sl.yml index 87194bf25..7c1b65066 100644 --- a/config/locales/javascript/javascript.sl.yml +++ b/config/locales/javascript/javascript.sl.yml @@ -17,7 +17,6 @@ sl: few: "V <%= count %> vidikih" one: "V <%= count %> vidiku" other: "V <%= count %> vidikih" - two: "V <%= count %> vidikih" zero: "Izberite vidik" aspect_navigation: deselect_all: "Odstrani izbiro" @@ -78,14 +77,12 @@ sl: few: "<%= count %> je to všeč" one: "<%= count %> je to všeč" other: "<%= count %> je to všeč" - two: "<%= count %> je to všeč" zero: "Nikomur ni to všeč" limited: "Omejeno" more_comments: few: "Prikaži <%= count %> mnenja" one: "Prikaži <%= count %> mnenje" other: "Prikaži <%= count %> mnenj" - two: "Prikaži <%= count %> mnenji" zero: "Prikaži <%= count %> mnenj" original_post_deleted: "Avtor je izbrisal izvirno objavo." public: "Javno" @@ -94,7 +91,6 @@ sl: few: "<%= count %> ponovna deljenja" one: "<%= count %> ponovno deljenje" other: "<%= count %> ponovnih deljenj" - two: "<%= count %> ponovni deljenji" zero: "<%= count %> ponovnih deljenj" show_nsfw_post: "Prikaži objavo" show_nsfw_posts: "Prikaži vse" diff --git a/config/locales/javascript/javascript.sr.yml b/config/locales/javascript/javascript.sr.yml index b7c6d77ad..bcebb0e52 100644 --- a/config/locales/javascript/javascript.sr.yml +++ b/config/locales/javascript/javascript.sr.yml @@ -65,10 +65,10 @@ sr: show_more: "прикажи још" stream: comment: "Коментариши" - follow: "Прати" + follow: "Запрати" hide: "Сакриј" hide_nsfw_posts: "Сакриј #нпзп објаве" - like: "Свиђа ми се" + like: "Свиђам" likes: few: "<%= count %> свиђања" many: "<%= count %> свиђања" @@ -93,8 +93,8 @@ sr: zero: "<%= count %> дељења" show_nsfw_post: "Прикажи објаву" show_nsfw_posts: "Прикажи све" - unfollow: "Не прати" - unlike: "Не свиђа ми се" + unfollow: "Отпрати" + unlike: "Не свиђам" tags: wasnt_that_interesting: "Добро, изгледа да те #<%= tagName %> не занима толико..." timeago: diff --git a/config/locales/javascript/javascript.sv.yml b/config/locales/javascript/javascript.sv.yml index 7d26a35fd..84638b70e 100644 --- a/config/locales/javascript/javascript.sv.yml +++ b/config/locales/javascript/javascript.sv.yml @@ -6,6 +6,7 @@ sv: javascripts: + and: "och" aspect_dropdown: add_to_aspect: "Lägg till kontakt" all_aspects: "Alla aspekter" @@ -18,17 +19,19 @@ sv: many: "I <%= count %> aspekter" one: "I <%= count %> aspekt" other: "I <%= count %> aspekter" - two: "I <%= count %> aspekter" zero: "Välj aspekter" aspect_navigation: + add_an_aspect: "+ Lägg till en aspekt" deselect_all: "Visa ingen" no_aspects: "Ingen aspekt är vald" select_all: "Visa alla" + comma: "," comments: hide: "dölj kommentarer" show: "visa alla kommentarer" confirm_dialog: "Är du säker?" delete: "Radera" + edit: "Ändra" failed_to_like: "Misslyckades med att gilla!" failed_to_post_message: "Misslyckades att posta meddelande!" getting_started: @@ -55,10 +58,12 @@ sv: infinite_scroll: no_more: "Inga fler inlägg." my_activity: "Min aktivitet" + my_aspects: "Mina aspekter" my_stream: "Ström" people: not_found: "och ingen hittades..." photo_uploader: + completed: "<%= file %> färdig" looking_good: "OMG, du ser grym ut!" publisher: at_least_one_aspect: "Du måste publicera till minst en aspekt." @@ -73,6 +78,11 @@ sv: stream: comment: "Kommentar" follow: "Följ" + followed_tag: + add_a_tag: "Lägg till en tagg" + contacts_title: "Personer som gillar dessa taggar" + follow: "Följ" + title: "#Följda taggar" hide: "Göm" hide_nsfw_posts: "Dölj #nsfw-inlägg" like: "Gilla" @@ -94,6 +104,10 @@ sv: zero: "Ingen delar vidare" show_nsfw_post: "Visa inlägg" show_nsfw_posts: "Visa alla" + tags: + follow: "Följ #<%= tag %>" + following: "Följer #<%= tag %>" + stop_following: "Sluta följa #<%= tag %>" unfollow: "Sluta följ" unlike: "Sluta gilla" tags: diff --git a/config/locales/javascript/javascript.te.yml b/config/locales/javascript/javascript.te.yml index b89817f51..dfbcc0ab1 100644 --- a/config/locales/javascript/javascript.te.yml +++ b/config/locales/javascript/javascript.te.yml @@ -16,7 +16,6 @@ te: many: "In {{count}} aspects" one: "In {{count}} aspect" other: "In {{count}} aspects" - two: "In <%= count %> aspects" zero: "Select aspects" aspect_navigation: deselect_all: "ఎంపిక మొత్తం రద్దుచేయి" @@ -66,7 +65,6 @@ te: many: "Show <%= count %> more comments" one: "Show <%= count %> more comment" other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" zero: "Show <%= count %> more comments" public: "బహిరంగం" reshare: "మరలపంచుకొను" @@ -75,7 +73,6 @@ te: many: "<%= count %> Reshares" one: "<%= count %> Reshare" other: "<%= count %> Reshares" - two: "<%= count %> Reshares" zero: "<%= count %> Reshares" show_nsfw_post: "టపాను చూపించు" show_nsfw_posts: "అన్నీ చూపించు" diff --git a/config/locales/javascript/javascript.tr.yml b/config/locales/javascript/javascript.tr.yml index d21334008..049362745 100644 --- a/config/locales/javascript/javascript.tr.yml +++ b/config/locales/javascript/javascript.tr.yml @@ -18,7 +18,6 @@ tr: many: "{{count}} yön" one: "{{count}} yön" other: "{{count}} yön" - two: "{{count}} yön" zero: "Yön seç" aspect_navigation: deselect_all: "Tümünü kaldır" diff --git a/config/locales/javascript/javascript.uk.yml b/config/locales/javascript/javascript.uk.yml index db76626ea..4b9a72050 100644 --- a/config/locales/javascript/javascript.uk.yml +++ b/config/locales/javascript/javascript.uk.yml @@ -18,19 +18,18 @@ uk: many: "У {{count}} аспектах" one: "У {{count}} аспектах" other: "У {{count}} аспектах" - two: "У {{count}} аспектах" zero: "Вибрати аспекти" aspect_navigation: - deselect_all: "Відмінити всі" + deselect_all: "Зняти вибір з усіх" no_aspects: "Аспект не вибраний" select_all: "Вибрати всі" comments: hide: "приховати коментарі" show: "Показати усі коментарі" confirm_dialog: "Ви упевнені?" - delete: "Видалити" + delete: "Вилучити" failed_to_like: "Не вдалося!" - failed_to_post_message: "Не вдалося відправити повідомлення!" + failed_to_post_message: "Не вдалося надіслати повідомлення!" getting_started: alright_ill_wait: "Добре, я почекаю." hey: "Привіт, {{name}}!" @@ -47,7 +46,7 @@ uk: notifications: "Повідомлення" profile: "Профіль" recent_notifications: "Останнє повідомлення" - search: "Find people or #tags" + search: "Пошук людей чи #міток" settings: "Налаштування" view_all: "Показати все" ignore: "Iгнорувати" @@ -61,10 +60,11 @@ uk: looking_good: "Боже мій, ви виглядаєте приголомшливо!" publisher: at_least_one_aspect: "Вам потрібно створити мінімум один аспект" - limited: "Обмежена - ваш запис буде видний тільки вказаним вами людям" - public: "Публічна - ваш запис буде видний усім, включаючи пошукові системи" + limited: "Обмежена - ваш запис буде видимий тільки вказаним вами людям" + public: "Публічна - ваш запис буде видимий усім, зокрема пошуковим системам" reshares: duplicate: "Настільки круто, так? Ви вже поділилися цим записом!" + post: "Поширити допис <%= name %>?" search_for: "Шукати {{name}}" show_more: "показати більше" stream: @@ -72,53 +72,50 @@ uk: follow: "Слідкувати" hide: "Приховати" hide_nsfw_posts: "приховати NSFW повідомлення" - like: "Мені це подобається" + like: "Подобається" likes: few: "<%= count %> Likes" many: "<%= count %> Likes" one: "<%= count %> Like" other: "<%= count %> Likes" - two: "<%= count %> Likes" zero: "<%= count %> Likes" limited: "Обмежений" more_comments: - few: "Show <%= count %> more comments" - many: "Show <%= count %> more comments" - one: "Show <%= count %> more comment" - other: "Show <%= count %> more comments" - two: "Show <%= count %> more comments" - zero: "Show <%= count %> more comments" - original_post_deleted: "Початкове повідомлення було видалене автором." + few: "Показати ще <%= count %> відгуків" + many: "Показати ще <%= count %> відгуків" + one: "Показати ще <%= count %> відгуків" + other: "Показати ще <%= count %> відгуків" + zero: "Показати ще <%= count %> відгуків" + original_post_deleted: "Початкове повідомлення було вилучено автором." public: "Публічна" reshare: "Поділитись" reshares: - few: "<%= count %> Reshares" - many: "<%= count %> Reshares" - one: "<%= count %> Reshare" - other: "<%= count %> Reshares" - two: "<%= count %> Reshares" - zero: "<%= count %> Reshares" + few: "<%= count %> поширень" + many: "<%= count %> поширень" + one: "<%= count %> поширень" + other: "<%= count %> поширень" + zero: "<%= count %> поширень" show_nsfw_post: "Переглянути запис" show_nsfw_posts: "Показати все" unfollow: "Не слідкувати" - unlike: "Мені це не подобається" + unlike: "Hе подобається" tags: - wasnt_that_interesting: "OK, мабуть, стежити за міткою #{{tagName}} було не так вже цікаво..." + wasnt_that_interesting: "Гаразд, мабуть, стежити за міткою #{{tagName}} було не так вже цікаво..." timeago: day: "день" days: "%d днів[-я]" - hour: "близько години" - hours: "близько %d годин" - minute: "близько хвилини" + hour: "біля години" + hours: "біля %d годин" + minute: "біля хвилини" minutes: "%d хвилин[-и]" - month: "близько місяця" + month: "біля місяця" months: "%d місяця[-ів]" - prefixAgo: "близько" + prefixAgo: "біля" prefixFromNow: "через" seconds: "декілька секунд" - suffixAgo: "назад" + suffixAgo: "тому" suffixFromNow: "з цієї миті" - year: "близько року" + year: "біля року" years: "%d років" videos: unknown: "Невідомий відеоформат" @@ -126,7 +123,8 @@ uk: viewer: comment: "Коментувати" follow_post: "Слідкувати за записом" - like: "Мені подобається" + home: "Домівка" + like: "Подобається" reshare: "Поділитися" reshared: "Поділилися" stop_following_post: "Не слідкувати за записом" diff --git a/config/routes.rb b/config/routes.rb index 89f2e91d2..57e41286c 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -9,7 +9,7 @@ Diaspora::Application.routes.draw do get "/atom.xml" => redirect('http://blog.diasporafoundation.org/feed/atom') #too many stupid redirects :() - + get 'oembed' => 'posts#oembed', :as => 'oembed' # Posting and Reading resources :reshares @@ -48,7 +48,7 @@ Diaspora::Application.routes.draw do get "liked" => "streams#liked", :as => "liked_stream" get "commented" => "streams#commented", :as => "commented_stream" get "aspects" => "streams#aspects", :as => "aspects_stream" - + resources :aspects do put :toggle_contact_visibility end @@ -74,13 +74,8 @@ Diaspora::Application.routes.draw do end resources :tags, :only => [:index] - scope "tags/:name" do - post "tag_followings" => "tag_followings#create", :as => 'tag_tag_followings' - delete "tag_followings" => "tag_followings#destroy", :as => 'tag_tag_followings' - end - post "multiple_tag_followings" => "tag_followings#create_multiple", :as => 'multiple_tag_followings' - resources "tag_followings", :only => [:create] + resources "tag_followings", :only => [:create, :destroy, :index] get 'tags/:name' => 'tags#show', :as => 'tag' @@ -119,7 +114,7 @@ Diaspora::Application.routes.draw do get 'invitations/email' => 'invitations#email', :as => 'invite_email' get 'users/invitations' => 'invitations#new', :as => 'new_user_invitation' post 'users/invitations' => 'invitations#create', :as => 'new_user_invitation' - + get 'login' => redirect('/users/sign_in') scope 'admins', :controller => :admins do @@ -150,6 +145,7 @@ Diaspora::Application.routes.draw do resources :photos get :contacts get "aspect_membership_button" => :aspect_membership_dropdown, :as => "aspect_membership_button" + get :hovercard member do get :last_post diff --git a/config/thin.yml b/config/thin.yml deleted file mode 100644 index 903ffeffc..000000000 --- a/config/thin.yml +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright (c) 2010-2011, Diaspora Inc. This file is -# licensed under the Affero General Public License version 3 or later. See -# the COPYRIGHT file. - -rackup: /usr/local/app/diaspora/current/config.ru -pid: /tmp/pids/thin.pid -wait: 30 -timeout: 600 -log: /usr/local/log/thin -max_conns: 1024 -require: [] - -max_persistent_conns: 512 -environment: development -servers: 1 -daemonize: true -#chdir: /usr/applications/localhash/current -#socket: /tmp/thin.sock -port: 80 diff --git a/config/unicorn.rb b/config/unicorn.rb index 1f305dcf9..3610271b3 100644 --- a/config/unicorn.rb +++ b/config/unicorn.rb @@ -1,10 +1,13 @@ rails_env = ENV['RAILS_ENV'] || 'development' +require 'pathname' +require Pathname.new(__FILE__).expand_path.dirname.join('load_config') + # Enable and set these to run the worker as a different user/group #user = 'diaspora' #group = 'diaspora' -worker_processes 1 +worker_processes AppConfig.server.unicorn_worker.to_i ## Load the app before spawning workers preload_app true @@ -17,11 +20,13 @@ timeout 30 #pid '/var/run/diaspora/diaspora.pid' #listen '/var/run/diaspora/diaspora.sock', :backlog => 2048 -# Ruby Enterprise Feature -if GC.respond_to?(:copy_on_write_friendly=) - GC.copy_on_write_friendly = true +if AppConfig.server.stderr_log.present? + stderr_path AppConfig.server.stderr_log end +if AppConfig.server.stdout_log.present? + stdout_path AppConfig.server.stdout_log +end before_fork do |server, worker| # If using preload_app, enable this line diff --git a/features/aspect_navigation.feature b/features/aspect_navigation.feature index 9611d7ba8..056eea243 100644 --- a/features/aspect_navigation.feature +++ b/features/aspect_navigation.feature @@ -7,11 +7,13 @@ Feature: Aspect navigation on the left menu Background: Given a user with username "bob" And I sign in as "bob@bob.bob" + And I have an aspect called "Others" Scenario: All aspects are selected by default When I go to the aspects page Then I should see "Besties" aspect selected Then I should see "Unicorns" aspect selected + Then I should see "Others" aspect selected Scenario: Aspects selection is remembered through site navigation When I go to the aspects page @@ -20,3 +22,12 @@ Feature: Aspect navigation on the left menu And I go to the aspects page Then I should see "Besties" aspect selected Then I should see "Unicorns" aspect unselected + Then I should see "Others" aspect unselected + + Scenario: Aspects selection can include one or more aspects + When I go to the aspects page + And I select only "Besties" aspect + And I select "Unicorns" aspect as well + Then I should see "Besties" aspect selected + Then I should see "Unicorns" aspect selected + Then I should see "Others" aspect unselected diff --git a/features/closes_account.feature b/features/closes_account.feature index 485fa8dd2..dee417fb1 100644 --- a/features/closes_account.feature +++ b/features/closes_account.feature @@ -15,7 +15,7 @@ Feature: Close Account When I try to sign in manually Then I should be on the new user session page - And I should see a flash message containing "Invalid email or password" + And I should see a flash message containing "Invalid username or password" Scenario: post display should not throw error when mention is removed for the user whose account is closed Given following users exist: diff --git a/features/comments.feature b/features/comments.feature index 528d17d90..a55dbf6cf 100644 --- a/features/comments.feature +++ b/features/comments.feature @@ -20,6 +20,7 @@ Feature: commenting And I fill in the following: | text | is that a poodle? | And I press "Comment" + And I wait for the ajax to finish Then I should see "is that a poodle?" within ".comment" And I should see "less than a minute ago" within ".comment time" diff --git a/features/logged_out_browsing.feature b/features/logged_out_browsing.feature index c49a98441..9ef0562ed 100644 --- a/features/logged_out_browsing.feature +++ b/features/logged_out_browsing.feature @@ -12,6 +12,7 @@ Feature: Browsing Diaspora as a logged out user Scenario: Visiting a profile page When I am on "bob@bob.bob"'s page Then I should see "public stuff" within "body" + And page should not have ".media .controls" Scenario: Clicking Last Post When I am on "bob@bob.bob"'s page diff --git a/features/oembed.feature b/features/oembed.feature index 3777c1fc3..9ae7a2b44 100644 --- a/features/oembed.feature +++ b/features/oembed.feature @@ -17,6 +17,7 @@ Feature: oembed When I fill in the following: | status_message_fake_text | http://youtube.com/watch?v=M3r2XDceM6A&format=json | And I press "Share" + And I wait for the ajax to finish And I follow "My Aspects" Then I should see a video player And I should see a ".oembed" within ".post-content" diff --git a/features/posts_from_main_page.feature b/features/posts_from_main_page.feature index ffa4e44fa..2657e0255 100644 --- a/features/posts_from_main_page.feature +++ b/features/posts_from_main_page.feature @@ -28,6 +28,23 @@ Feature: posting from the main page And I go to the aspects page Then "I am eating yogurt" should be post 1 + Scenario: re-posting a text-only message + Given I expand the publisher + When I fill in the following: + | status_message_fake_text | The World needs more Cats. | + And I press "Share" + And I wait for the ajax to finish + + Given I expand the publisher + When I fill in the following: + | status_message_fake_text | The World needs more Cats. | + And I press "Share" + And I wait for the ajax to finish + + And I go to the aspects page + Then "The World needs more Cats." should be post 1 + Then "The World needs more Cats." should be post 2 + Scenario: posting a message appends it to the top of the stream When I click the publisher and post "sup dog" And I wait for 1 second diff --git a/features/posts_from_profile_page.feature b/features/posts_from_profile_page.feature new file mode 100644 index 000000000..99f69c6d5 --- /dev/null +++ b/features/posts_from_profile_page.feature @@ -0,0 +1,47 @@ +@javascript +Feature: posting from own profile page + In order to be all cool and stuff + I want to post from my profile page + + Background: + Given I am on the home page + And a user with username "alice" + When I sign in as "alice@alice.alice" + + Given I have following aspects: + | Family | + | Work | + + Scenario: posting some text + Given I am on "alice@alice.alice"'s page + And I have turned off jQuery effects + And I append "I want to understand people" to the publisher + And I select "Family" on the aspect dropdown + + And I press "Share" + And I wait for the ajax to finish + + Then I should see "I want to understand people" + + When I am on the home page + Then I should see "I want to understand people" + + When I am on the aspects page + And I select only "Family" aspect + Then I should see "I want to understand people" + + When I select only "Work" aspect + Then I should not see "I want to understand people" + + Scenario: post a photo with text + Given I expand the publisher + When I attach the file "spec/fixtures/button.png" to hidden element "file" within "#file-upload" + When I fill in the following: + | status_message_fake_text | who am I? | + + And I press "Share" + And I wait for the ajax to finish + + When I am on the home page + Then I should see a "img" within ".stream_element div.photo_attachments" + And I should see "who am I?" within ".stream_element" diff --git a/features/reshare.feature b/features/reshare.feature index c77cff349..aed7cb711 100644 --- a/features/reshare.feature +++ b/features/reshare.feature @@ -11,6 +11,18 @@ Feature: public repost | Alice Smith | alice@alice.alice | And a user with email "bob@bob.bob" is connected with "alice@alice.alice" + Scenario: Resharing a post from a single post page + Given "bob@bob.bob" has a public post with text "reshare this!" + And I sign in as "alice@alice.alice" + And I am on "bob@bob.bob"'s page + And I follow "Last Post" + + And I preemptively confirm the alert + And I click on selector "a.reshare" + And I wait for the ajax to finish + Then I should see a flash message indicating success + And I should see a flash message containing "successfully" + # should be covered in rspec, so testing that the post is added to # app.stream in jasmine should be enough coverage Scenario: When I reshare, it shows up on my profile page @@ -22,3 +34,4 @@ Feature: public repost And I wait for the ajax to finish Then I should see a flash message indicating success And I should see a flash message containing "successfully" + And I should not see a ".reshare" within ".feedback" diff --git a/features/screenshots.feature b/features/screenshots.feature new file mode 100644 index 000000000..194292193 --- /dev/null +++ b/features/screenshots.feature @@ -0,0 +1,31 @@ +@screenshots @javascript +Feature: layout reference screenshots + In order to be able to compare style and layout changes + As a developer + I want to be able to look at before/after screenshots + + Background: + Given following users exist: + | username | email | + | B Robertson | bob@bob.bob | + | A Aronsdottir | alice@alice.alice | + And a user with email "bob@bob.bob" is connected with "alice@alice.alice" + And "bob@bob.bob" has a public post with text "this is a test post!" + And Alice has a post mentioning Bob + And "alice@alice.alice" has a public post with text "i am using a #tag" + + @reference-screenshots + Scenario: take the reference screenshots + Given the reference screenshot directory is used + When I take the screenshots while logged out + + And I sign in as "alice@alice.alice" + Then I take the screenshots while logged in + + @comparison-screenshots + Scenario: take the comparison screenshots + Given the comparison screenshot directory is used + When I take the screenshots while logged out + + And I sign in as "alice@alice.alice" + Then I take the screenshots while logged in diff --git a/features/step_definitions/aspects_steps.rb b/features/step_definitions/aspects_steps.rb index 58770a555..b20f24edb 100644 --- a/features/step_definitions/aspects_steps.rb +++ b/features/step_definitions/aspects_steps.rb @@ -26,6 +26,14 @@ When /^I select only "([^"]*)" aspect$/ do |aspect_name| step %{I wait for the ajax to finish} end +When /^I select "([^"]*)" aspect as well$/ do |aspect_name| + within('#aspect_nav') do + click_link aspect_name + end + + step %{I wait for the ajax to finish} +end + When /^I should see "([^"]*)" aspect selected$/ do |aspect_name| aspect = @me.aspects.where(:name => aspect_name).first within("#aspect_nav") do diff --git a/features/step_definitions/custom_web_steps.rb b/features/step_definitions/custom_web_steps.rb index 6942655d0..fac961d1e 100644 --- a/features/step_definitions/custom_web_steps.rb +++ b/features/step_definitions/custom_web_steps.rb @@ -1,3 +1,55 @@ +module ScreenshotCukeHelpers + + def set_screenshot_location(path) + @screenshot_path = Rails.root.join('tmp','screenshots', path) + @screenshot_path.mkpath unless @screenshot_path.exist? + end + + def take_screenshot(name, path) + visit send("#{path}_path") + browser = page.driver.browser + pic = @screenshot_path.join("#{name}.png") + + sleep 0.5 + + browser.manage.window.resize_to(1280, 1024) + browser.save_screenshot(pic) + end + + def take_screenshots_without_login + pages = { + 'register' => 'new_user_registration', + 'login' => 'user_session' + } + + pages.each do |name, path| + take_screenshot name, path + end + end + + def take_screenshots_with_login + pages = { + 'stream' => 'stream', + 'activity' => 'activity_stream', + 'mentions' => 'mentioned_stream', + 'aspects' => 'aspects_stream', + 'tags' => 'followed_tags_stream', + 'contacts' => 'contacts', + 'settings' => 'edit_user', + 'notifications' => 'notifications', + 'conversations' => 'conversations', + 'logout' => 'destroy_user_session' + } + + pages.each do |name, path| + take_screenshot name, path + end + end + +end +World(ScreenshotCukeHelpers) + + When /^(.*) in the header$/ do |action| within('header') do step action @@ -123,6 +175,10 @@ Then /^(?:|I )should not see a "([^\"]*)"(?: within "([^\"]*)")?$/ do |selector, end end +Then /^page should (not )?have "([^\"]*)"$/ do |negate, selector| + page.has_css?(selector).should ( negate ? be_false : be_true ) +end + When /^I wait for the ajax to finish$/ do wait_for_ajax_to_finish end @@ -237,3 +293,19 @@ end Then /^I should see a flash message containing "(.+)"$/ do |text| flash_message_containing? text end + +Given /^the reference screenshot directory is used$/ do + set_screenshot_location 'reference' +end + +Given /^the comparison screenshot directory is used$/ do + set_screenshot_location 'current' +end + +When /^I take the screenshots while logged out$/ do + take_screenshots_without_login +end + +When /^I take the screenshots while logged in$/ do + take_screenshots_with_login +end diff --git a/features/step_definitions/posts_steps.rb b/features/step_definitions/posts_steps.rb index 28572573f..8282b09e5 100644 --- a/features/step_definitions/posts_steps.rb +++ b/features/step_definitions/posts_steps.rb @@ -64,3 +64,13 @@ end When /^I open the show page of the "([^"]*)" post$/ do |post_text| visit post_path_by_content(post_text) end + +When /^I select "([^"]*)" on the aspect dropdown$/ do |text| + page.execute_script( + "$('#publisher .dropdown .dropdown_list') + .find('li').each(function(i,el){ + var elem = $(el); + if ('" + text + "' == $.trim(elem.text()) ) { + elem.click(); + }});") +end diff --git a/features/support/user_cuke_helpers.rb b/features/support/user_cuke_helpers.rb index e10a57c40..6c6adc2a0 100644 --- a/features/support/user_cuke_helpers.rb +++ b/features/support/user_cuke_helpers.rb @@ -59,14 +59,14 @@ module UserCukeHelpers find("#user_menu li:last-child a").click end - # fill change password section on the user edit page + # fill change password section on the user edit page def fill_change_password_section(cur_pass, new_pass, confirm_pass) fill_in 'user_current_password', :with => cur_pass fill_in 'user_password', :with => new_pass fill_in 'user_password_confirmation', :with => confirm_pass end - # fill forgot password form to get reset password link + # fill forgot password form to get reset password link def fill_forgot_password_form(email) fill_in 'user_email', :with => email end diff --git a/lib/configuration.rb b/lib/configuration.rb deleted file mode 100644 index c691b4940..000000000 --- a/lib/configuration.rb +++ /dev/null @@ -1,69 +0,0 @@ - -require Rails.root.join('lib', 'configuration', 'lookup_chain') -require Rails.root.join('lib', 'configuration', 'provider') -require Rails.root.join('lib', 'configuration', 'proxy') - - -# A flexible and extendable configuration system. -# The calling logic is isolated from the lookup logic -# through configuration providers, which only requirement -# is to define the +#lookup+ method and show a certain behavior on that. -# The providers are asked in the order they were added until one provides -# a response. This allows to even add multiple providers of the same type, -# you never easier defined your default configuration parameters. -# There are no class methods used, you can have an unlimited amount of -# independent configuration sources at the same time. -# -# See {Settings} for a quick start. -module Configuration - # This is your main entry point. Instead of lengthy explanations - # let an example demonstrate its usage: - # - # require Rails.root.join('lib', 'configuration') - # - # AppSettings = Configuration::Settings.create do - # add_provider Configuration::Provider::Env - # add_provider Configuration::Provider::YAML, '/etc/app_settings.yml', - # namespace: Rails.env, required: false - # add_provider Configuration::Provider::YAML, 'config/default_settings.yml' - # - # extend YourConfigurationMethods - # end - # - # AppSettings.setup_something if AppSettings.something.enable? - # - # Please also read the note at {Proxy}! - class Settings - - attr_reader :lookup_chain - - undef_method :method # Remove possible conflicts with common setting names - - # @!method lookup(setting) - # (see LookupChain#lookup) - # @!method add_provider(provider, *args) - # (see LookupChain#add_provider) - # @!method [](setting) - # (see LookupChain#[]) - def method_missing(method, *args, &block) - return @lookup_chain.send(method, *args, &block) if [:lookup, :add_provider, :[]].include?(method) - - Proxy.new(@lookup_chain).send(method, *args, &block) - end - - def initialize - @lookup_chain = LookupChain.new - $stderr.puts "Warning you called Configuration::Settings.new with a block, you really meant to call #create" if block_given? - end - - # Create a new configuration object - # @yield the given block will be evaluated in the context of the new object - def self.create(&block) - config = self.new - config.instance_eval(&block) if block_given? - config - end - end - - class SettingNotFoundError < RuntimeError; end -end diff --git a/lib/configuration/lookup_chain.rb b/lib/configuration/lookup_chain.rb deleted file mode 100644 index 803a86610..000000000 --- a/lib/configuration/lookup_chain.rb +++ /dev/null @@ -1,65 +0,0 @@ -module Configuration - # This object builds a chain of configuration providers to try to find - # a setting. - class LookupChain - def initialize - @provider = [] - end - - # Add a provider to the chain. Providers are tried in the order - # they are added, so the order is important. - # - # @param provider [#lookup] - # @param *args the arguments passed to the providers constructor - # @raise [ArgumentError] if an invalid provider is given - # @return [void] - def add_provider(provider, *args) - unless provider.instance_method_names.include?("lookup") - raise ArgumentError, "the given provider does not respond to lookup" - end - - @provider << provider.new(*args) - end - - - # Tries all providers in the order they were added to provide a response - # for setting. - # - # @param setting [#to_s] settings should be underscore_case, - # nested settings should be separated by a dot - # @param *args further args passed to the provider - # @return [Array,String,Boolean,nil] whatever the provider provides - # is casted to a {String}, except for some special values - def lookup(setting, *args) - setting = setting.to_s - - @provider.each do |provider| - begin - return special_value_or_string(provider.lookup(setting, *args)) - rescue SettingNotFoundError; end - end - - nil - end - alias_method :[], :lookup - - private - - def special_value_or_string(value) - if [TrueClass, FalseClass, NilClass, Array, Hash].include?(value.class) - return value - elsif value.is_a?(String) - return case value.strip - when "true" then true - when "false" then false - when "", "nil" then nil - else value - end - elsif value.respond_to?(:to_s) - return value.to_s - else - return value - end - end - end -end diff --git a/lib/configuration/provider.rb b/lib/configuration/provider.rb deleted file mode 100644 index cb8bc82a1..000000000 --- a/lib/configuration/provider.rb +++ /dev/null @@ -1,19 +0,0 @@ -module Configuration::Provider - # This provides a basic {#lookup} method for other providers to build - # upon. Childs are expected to define +lookup_path(path, *args)+ where - # +path+ will be passed an array of settings generated by splitting the - # called setting at the dots. The method should return nil if the setting - # wasn't found and {#lookup} will raise an {SettingNotFoundError} in that - # case. - class Base - def lookup(setting, *args) - result = lookup_path(setting.split("."), *args) - return result unless result.nil? - raise Configuration::SettingNotFoundError, "The setting #{setting} was not found" - end - end -end - -require Rails.root.join("lib", "configuration", "provider", "yaml") -require Rails.root.join("lib", "configuration", "provider", "env") -require Rails.root.join("lib", "configuration", "provider", "dynamic") diff --git a/lib/configuration/provider/dynamic.rb b/lib/configuration/provider/dynamic.rb deleted file mode 100644 index 245f76a9a..000000000 --- a/lib/configuration/provider/dynamic.rb +++ /dev/null @@ -1,24 +0,0 @@ -module Configuration::Provider - # This provider knows nothing upon initialization, however if you access - # a setting ending with +=+ and give one argument to that call it remembers - # that setting, stripping the +=+ and will return it on the next call - # without +=+. - class Dynamic < Base - def initialize - @settings = {} - end - - def lookup_path(settings_path, *args) - key = settings_path.join(".") - - if key.end_with?("=") && args.length > 0 - key = key.chomp("=") - value = args.first - value = value.get if value.respond_to?(:_proxy?) && value._proxy? - @settings[key] = value - end - - @settings[key] - end - end -end diff --git a/lib/configuration/provider/env.rb b/lib/configuration/provider/env.rb deleted file mode 100644 index ea17f694e..000000000 --- a/lib/configuration/provider/env.rb +++ /dev/null @@ -1,14 +0,0 @@ -module Configuration::Provider - # This provider looks for settings in the environment. - # For the setting +foo.bar_baz+ this provider will look for an - # environment variable +FOO_BAR_BAZ+, replacing all dots in the setting - # and upcasing the result. If an value contains +,+ it's split at them - # and returned as array. - class Env < Base - def lookup_path(settings_path, *args) - value = ENV[settings_path.join("_").upcase] - value = value.split(",") if value && value.include?(",") - value - end - end -end diff --git a/lib/configuration/provider/yaml.rb b/lib/configuration/provider/yaml.rb deleted file mode 100644 index 635e179d6..000000000 --- a/lib/configuration/provider/yaml.rb +++ /dev/null @@ -1,52 +0,0 @@ -require 'yaml' - -module Configuration::Provider - # This provider tries to open a YAML file and does in nested lookups - # in it. - class YAML < Base - # @param file [String] the path to the file - # @param opts [Hash] - # @option opts [String] :namespace optionally set this as the root - # @option opts [Boolean] :required wheter or not to raise an error if - # the file or the namespace, if given, is not found. Defaults to +true+. - # @raise [ArgumentError] if the namespace isn't found in the file - # @raise [Errno:ENOENT] if the file isn't found - def initialize(file, opts = {}) - @settings = {} - required = opts.has_key?(:required) ? opts.delete(:required) : true - - @settings = ::YAML.load_file(file) - - namespace = opts.delete(:namespace) - unless namespace.nil? - actual_settings = lookup_in_hash(namespace.split("."), @settings) - unless actual_settings.nil? - @settings = actual_settings - else - raise ArgumentError, "Namespace #{namespace} not found in #{file}" if required - end - end - rescue Errno::ENOENT => e - $stderr.puts "WARNING: configuration file #{file} not found, ensure it's present" - raise e if required - end - - - def lookup_path(settings_path, *args) - lookup_in_hash(settings_path, @settings) - end - - private - - def lookup_in_hash(setting_path, hash) - setting = setting_path.shift - if hash.has_key?(setting) - if setting_path.length > 0 && hash[setting].is_a?(Hash) - return lookup_in_hash(setting_path, hash[setting]) if setting.length > 1 - else - return hash[setting] - end - end - end - end -end diff --git a/lib/configuration/proxy.rb b/lib/configuration/proxy.rb deleted file mode 100644 index 4acbbcc00..000000000 --- a/lib/configuration/proxy.rb +++ /dev/null @@ -1,76 +0,0 @@ -module Configuration - # Proxy object to support nested settings - # Cavehat: Since this is always true, adding a ? at the end - # returns the value, if found, instead of the proxy object. - # So instead of +if settings.foo.bar+ use +if settings.foo.bar?+ - # to check for boolean values, +if settings.foo.bar.nil?+ to - # check for nil values, +if settings.foo.bar.present?+ to check for - # empty values if you're in Rails and call {#get} to actually return the value, - # commonly when doing +settings.foo.bar.get || 'default'+. If a setting - # ends with +=+ is too called directly, just like with +?+. - class Proxy < BasicObject - COMMON_KEY_NAMES = [:key, :method] - - # @param lookup_chain [#lookup] - def initialize(lookup_chain) - @lookup_chain = lookup_chain - @setting = "" - end - - def ! - !self.get - end - - def !=(other) - self.get != other - end - - def ==(other) - self.get == other - end - - def _proxy? - true - end - - def respond_to?(method, include_private=false) - method == :_proxy? || self.get.respond_to?(method, include_private) - end - - def send(*args, &block) - self.__send__(*args, &block) - end - - def method_missing(setting, *args, &block) - unless COMMON_KEY_NAMES.include? setting - target = self.get - if !(target.respond_to?(:_proxy?) && target._proxy?) && target.respond_to?(setting) - return target.send(setting, *args, &block) - end - end - - setting = setting.to_s - - self.append_setting(setting) - - return self.get(*args) if setting.end_with?("?") || setting.end_with?("=") - - self - end - - # Get the setting at the current path, if found. - # (see LookupChain#lookup) - def get(*args) - setting = @setting[1..-1] - return unless setting - val = @lookup_chain.lookup(setting.chomp("?"), *args) - val - end - - protected - def append_setting(setting) - @setting << "." - @setting << setting - end - end -end diff --git a/lib/configuration/methods.rb b/lib/configuration_methods.rb index 6b58967ca..6b58967ca 100644 --- a/lib/configuration/methods.rb +++ b/lib/configuration_methods.rb diff --git a/lib/csv_generator.rb b/lib/csv_generator.rb index e1fa8cb17..0f99f1fd2 100644 --- a/lib/csv_generator.rb +++ b/lib/csv_generator.rb @@ -197,14 +197,9 @@ SQL # ---------------- HELPER METHODS ------------------------- def self.load_waiting_list_csv(filename) + require 'csv' csv = filename - if RUBY_VERSION.include? "1.8" - require 'fastercsv' - people = FasterCSV.read(csv) - else - require 'csv' - people = CSV.read(csv) - end + people = CSV.read(csv) people end diff --git a/lib/exceptions.rb b/lib/exceptions.rb index c278f72eb..79b5283bb 100644 --- a/lib/exceptions.rb +++ b/lib/exceptions.rb @@ -3,6 +3,18 @@ # the COPYRIGHT file. module Diaspora + # the post in question is not public, and that is somehow a problem class NonPublic < StandardError end + + # the account was closed and that should not be the case if we want + # to continue + class AccountClosed < StandardError + end + + # something that should be accessed does not belong to the current user and + # that prevents further execution + class NotMine < StandardError + end + end diff --git a/lib/hydra_wrapper.rb b/lib/hydra_wrapper.rb index 036f3158d..627ac3ba7 100644 --- a/lib/hydra_wrapper.rb +++ b/lib/hydra_wrapper.rb @@ -8,6 +8,8 @@ require 'active_support/base64' class HydraWrapper OPTS = {:max_redirects => 3, :timeout => 25000, :method => :post, + :verbose => AppConfig.settings.typhoeus_verbose?, + :ssl_cacert => AppConfig.environment.certificate_authorities.get, :headers => {'Expect' => '', 'Transfer-Encoding' => ''} } diff --git a/lib/rake_helpers.rb b/lib/rake_helpers.rb index 47cd7aed6..20284cb40 100644 --- a/lib/rake_helpers.rb +++ b/lib/rake_helpers.rb @@ -4,14 +4,8 @@ module RakeHelpers def process_emails(csv, num_to_process, offset, test=true) - if RUBY_VERSION.include? "1.8" - - require 'fastercsv' - backers = FasterCSV.read(csv) - else - require 'csv' - backers = CSV.read(csv) - end + require 'csv' + backers = CSV.read(csv) puts "DRY RUN" if test churn_through = 0 num_to_process.times do |n| diff --git a/lib/stream/base.rb b/lib/stream/base.rb index f8dd3f4ab..47739a6be 100644 --- a/lib/stream/base.rb +++ b/lib/stream/base.rb @@ -50,11 +50,6 @@ class Stream::Base includes(:profile) end - # @return [String] - def contacts_link_title - I18n.translate('aspects.selected_contacts.view_all_contacts') - end - # @return [String] def contacts_title 'change me in lib/base_stream.rb!' def contacts_title 'change me in lib/base_stream.rb!' diff --git a/lib/tasks/screenshots.rake b/lib/tasks/screenshots.rake new file mode 100644 index 000000000..eee87fedc --- /dev/null +++ b/lib/tasks/screenshots.rake @@ -0,0 +1,47 @@ +if defined? Cucumber + +namespace :screenshots do + + Cucumber::Rake::Task.new({:reference => 'db:test:prepare'}, 'Take reference screenshots') do |t| + t.profile = 'ref_screens' + end + + Cucumber::Rake::Task.new({:comparison => 'db:test:prepare'}, 'Take comparison screenshots') do |t| + t.profile = 'cmp_screens' + end + + desc 'Take reference and comparison screenshots' + task :all => [:reference, :comparison] + + desc 'Generate "flicker" images for easy comparison (requires RMagick)' + task :flicker do + require 'RMagick' + screen_dir = Rails.root.join('tmp', 'screenshots') + + ref_dir = screen_dir.join('reference') + cur_dir = screen_dir.join('current') + + Dir.glob("#{ref_dir}/*.png") do |img| + filename = File.basename(img) + + if !File.exist?(cur_dir.join(filename)) + raise "the comparison screenshot for #{filename} doesn't exist!" + end + + img_list = Magick::ImageList.new(ref_dir.join(filename), cur_dir.join(filename)) + img_list.delay = 65 # number of ticks between flicker img change (100 ticks/second) + img_list.iterations = 0 # -> endless loop + img_list.write(screen_dir.join("#{filename}.gif")) + end + + puts %Q( + Done! + You can find the flicker images here: + + #{screen_dir} + + ) + end +end + +end diff --git a/public/default.html b/public/default.html index c38ea5c6c..e0c6151a7 100644 --- a/public/default.html +++ b/public/default.html @@ -1,169 +1,158 @@ -<head> - <style type="text/css"> - body { - margin-top: 50px; - background-color: white; - background-image : none; - } - - #header { - -webkit-box-shadow:none; - -moz-box-shadow:none; - box-shadow:none; - border:none; - background:none; - } - - #steps { - text-align: center; - } - - hr { - border: none; - border-bottom: 1px solid #ccc; - } - - #banner { - border-bottom : 1px solid #ccc; - border-top : 1px solid #eee; - padding : 30px; - margin : 20px 0; - - -webkit-box-shadow : 0 9px 15px -10px rgba(0,0,0,0.7); - } - - #links { - margin: 0; - padding: 0; - text-align: center; - } - - #links .section { - margin: 0; - padding: 0; - display: inline-block; - vertical-align: top; - width: 24%; - max-width: 24%; - } - - #login-link { - float: right; - } - - #change-page { - color: #999; - text-align: center; - font-style: italic; - } - - footer .container { - margin-top: 15px; - } - - .helpful { - cursor: help; - } - - li { - list-style: none; - } - - </style> -</head> - -<body> -<div id="page" class="container"> - <div id="content"> - <div class="row"> - <div id="header" style="left: 0; padding: 15px 0;"> - <a id="login-link" href="login" class="btn" style="margin-right: 15px;">Log In</a> - <img src='assets/branding/logo_caps.png'/ style="margin-left: 15px;"> - </div> - </div> - - <div id="getting-started"> - <div class="row" style="text-align: center;"> - <div id="banner"> - <h1>Welcome, friend.</h1> - - <h3>You're about to change the Internet. Let's get you set up, shall we?</h3> - </div> - </div> - <br> - <br> - - <div id="steps" class="row"> - <div class="span4"> - <h2>Configure your <abbr class="helpful" title="A Diaspora installation">pod</abbr></h2> - <img src='assets/icons/cog.png'/> - - <p>Look at <code class="helpful" - title='General pod configuration (location to upload photos, SSL certs, etc.)'>config/application.yml.example</code> - and <code class="helpful" title="mySQL username/password">config/database.yml.example</code> for - help.</p> - </div> - - <div class="span4"> - - <h2>Try it out</h2> - <img src='assets/icons/smiley_laughing.png'/> - - <p>Start by <a href="users/sign_up">creating an account</a>.</p> - </div> - - <div class="span4"> - <h2>Make a contribution!</h2> - <img src='assets/icons/pen_write.png'/> - - <p>Make Diaspora even better! Fork the project on <a href="http://github.com/diaspora/diaspora/" - title="github">github</a>, make some changes, - and submit a pull request.</p> - </div> - </div> - </div> - </div> - - <br> - <br> - - <hr> - - <br> - - - <h3 style="text-align:center;">Useful Resources</h3> - <br/> - <ul id="links"> - <ul class="section"> - <li><strong><a href="http://github.com/diaspora/diaspora/" title="Git repository">Codebase</a></strong></li> - <li><strong><a href="http://github.com/diaspora/diaspora/wiki" - title="Wiki on github">Documentation</a></strong></li> - <br> - <li><a href="https://github.com/diaspora/diaspora/issues" title="Bug tracker">Find & Report bugs</a></li> - </ul> - <ul class="section"> - <li><a href="http://webchat.freenode.net/?channels=diaspora" title="#diaspora">IRC - General</a></li> - <li><a href="http://webchat.freenode.net/?channels=diaspora-dev" title="#diaspora-dev">IRC - Development</a> - </li> - </ul> - <ul class="section"> - <li><a href="http://groups.google.com/group/diaspora-discuss" title="General discussion mailing list">Discussion - - General</a></li> - <li><a href="http://groups.google.com/group/diaspora-dev" title="Dev mailing list">Discussion - - Development</a></li> - </ul> - <ul class="section"> - <li><a href="http://guides.rubyonrails.org/">Learn more about Ruby On Rails!</a></li> - </ul> - </ul> - -<br> -<br> - -<hr style="border-color:#ddd;"> - -<div id="change-page"> - This page can be changed to a custom landing page by creating <code>app/views/home/_show.html.haml</code> -</div> -</div> + <style type="text/css">
+ body {
+ margin-top: 50px;
+ background-color: white;
+ background-image : none;
+ }
+
+ li {
+ list-style: none;
+ }
+
+ footer h3 {
+ margin-bottom: 25px;
+ text-align: center;
+ }
+
+ footer {
+ margin-bottom: 12px;
+ padding: 42px;
+ border-top: 1px solid #ccc;
+ border-bottom: 1px solid #ccc;
+ }
+
+ #header {
+ /* Hack to hide the header */
+ -webkit-box-shadow:none;
+ -moz-box-shadow:none;
+ box-shadow:none;
+ border:none;
+ background:none;
+
+ left: 0px;
+ padding: 15px 0px;
+ }
+
+ #header img {
+ margin-left: 15px;
+ }
+
+ #login-link {
+ float: right;
+ margin-right: 15px;
+ }
+
+ #steps {
+ text-align: center;
+ }
+
+ #banner {
+ border-bottom : 1px solid #ccc;
+ border-top : 1px solid #eee;
+ padding : 30px;
+ margin-top: 20px;
+ text-align: center;
+
+ -webkit-box-shadow : 0 9px 15px -10px rgba(0,0,0,0.7);
+ -moz-box-shadow : 0 9px 15px -10px rgba(0,0,0,0.7);
+ -khtml-box-shadow : 0 9px 15px -10px rgba(0,0,0,0.7);
+ -o-box-shadow : 0 9px 15px -10px rgba(0,0,0,0.7);
+ -ms-box-shadow : 0 9px 15px -10px rgba(0,0,0,0.7);
+ box-shadow : 0 9px 15px -10px rgba(0,0,0,0.7);
+ }
+
+ #links {
+ margin: 0;
+ padding: 0;
+ text-align: center;
+ }
+
+ #links .section {
+ margin: 0;
+ padding: 0;
+ display: inline-block;
+ vertical-align: top;
+ width: 24%;
+ max-width: 24%;
+ }
+
+ #change-page {
+ color: #999;
+ text-align: center;
+ font-style: italic;
+ }
+
+ .helpful {
+ cursor: help;
+ }
+
+ .row {
+ margin-bottom: 60px;
+ }
+ </style>
+
+ <div id="page" class="container">
+ <header id="header">
+ <a id="login-link" href="login" class="btn">Log In</a>
+ <img src="assets/branding/logo_caps.png" />
+ </header>
+
+ <div id="banner" class="row">
+ <h1>Welcome, friend.</h1>
+ <h3>You're about to change the Internet. Let's get you set up, shall we?</h3>
+ </div>
+
+ <div id="steps" class="row">
+ <div class="span4">
+ <h2>Configure your <abbr class="helpful" title="A Diaspora installation">pod</abbr></h2>
+ <img src="assets/icons/cog.png" />
+
+ <p>Look at
+ <code class="helpful" title='General pod configuration (location to upload photos, SSL certs, etc.)'>
+ config/diaspora.yml.example</code> and <code class="helpful" title="mySQL username/password">
+ config/database.yml.example</code> for help.</p>
+ </div>
+
+ <div class="span4">
+ <h2>Try it out</h2>
+ <img src="assets/icons/smiley_laughing.png" />
+
+ <p>Start by <a href="users/sign_up">creating an account</a>.</p>
+ </div>
+
+ <div class="span4">
+ <h2>Make a contribution!</h2>
+ <img src="assets/icons/pen_write.png" />
+
+ <p>Make Diaspora even better! Fork the project on
+ <a href="http://github.com/diaspora/diaspora/" title="github">github</a>,
+ make some changes, and submit a pull request.</p>
+ </div>
+ </div>
+
+ <footer>
+ <h3>Useful Resources</h3>
+ <ul id="links">
+ <ul class="section">
+ <li><a href="http://github.com/diaspora/diaspora/" title="Git repository">Codebase</a></li>
+ <li><a href="http://github.com/diaspora/diaspora/wiki" title="Wiki on github">Documentation</a></li>
+ </ul>
+ <ul class="section">
+ <li><a href="http://webchat.freenode.net/?channels=diaspora" title="#diaspora">IRC - General</a></li>
+ <li><a href="http://webchat.freenode.net/?channels=diaspora-dev" title="#diaspora-dev">IRC - Development</a></li>
+ </ul>
+ <ul class="section">
+ <li><a href="http://groups.google.com/group/diaspora-discuss" title="General discussion mailing list">Discussion - General</a></li>
+ <li><a href="http://groups.google.com/group/diaspora-dev" title="Dev mailing list">Discussion - Development</a></li>
+ </ul>
+ <ul class="section">
+ <li><a href="https://github.com/diaspora/diaspora/issues" title="Bug tracker">Find & Report bugs</a></li>
+ <li><a href="http://guides.rubyonrails.org/">Learn more about Ruby On Rails!</a></li>
+ </ul>
+ </ul>
+ </footer>
+
+ <div id="change-page">
+ This page can be changed to a custom landing page by creating <code>app/views/home/_show.html.haml</code>
+ </div>
+ </div>
diff --git a/script/env/ruby_env b/script/env/ruby_env index 40ce85acc..0304e4da0 100644 --- a/script/env/ruby_env +++ b/script/env/ruby_env @@ -1,3 +1,3 @@ -rubygems_version="1.8.24" -ruby_version="1.9.3-p194" +rubygems_version="1.8.25" +ruby_version="1.9.3-p385" gemset="diaspora" diff --git a/script/get_config.rb b/script/get_config.rb index b9b6d6cdb..e27644312 100755 --- a/script/get_config.rb +++ b/script/get_config.rb @@ -34,7 +34,7 @@ ARGV.each do |arg| var, setting_name = arg.split("=") setting_name = var unless setting_name setting = AppConfig.send(setting_name) - setting = setting.get if setting.is_a?(Configuration::Proxy) + setting = setting.get if setting.respond_to?(:_proxy?) if var != setting_name puts "#{var}=#{setting}" else diff --git a/script/install.sh b/script/install.sh index 822a68456..fd0870e26 100755 --- a/script/install.sh +++ b/script/install.sh @@ -375,7 +375,7 @@ git_stuff_check() { if [ $? -ne 0 ]; then # not a git repo, create it? printf "the folder you specified does not exist or doesn't contain a git repo\n" - read -p "Press [Enter] to create it and contine... " + read -p "Press [Enter] to create it and continue... " run_or_error "mkdir -p -v \"$D_GIT_CLONE_PATH\"" # only if it doesn't exist run_or_error "git clone \"$D_REMOTE_REPO_URL\" \"$D_GIT_CLONE_PATH\"" else @@ -404,13 +404,16 @@ database_question() { ;; esac done + + printf "\n" } # ask for database credentials database_credentials() { - read -e -p "DB hostname: " D_DB_HOST - read -e -p "DB username: " D_DB_USER - read -e -p "DB password: " D_DB_PASS + printf "Please specify the database credentials\n(the user must be existent and allowed to create new databases)\n" + read -e -p "hostname: " D_DB_HOST + read -e -p "username: " D_DB_USER + read -e -p "password: " D_DB_PASS run_or_error "sed -i'' -e \"s/\(host:\)[^\n]*/\1 $D_DB_HOST/g\" \"$D_DB_CONFIG_FILE\"" run_or_error "sed -i'' -e \"s/\(username:\)[^\n]*/\1 $D_DB_USER/g\" \"$D_DB_CONFIG_FILE\"" @@ -429,6 +432,8 @@ EOT database_setup() { log_inf "Database setup" run_or_error "cp config/database.yml.example \"$D_DB_CONFIG_FILE\"" + printf "\n" + database_question database_credentials diff --git a/script/server b/script/server index b4966cc23..fab954e93 100755 --- a/script/server +++ b/script/server @@ -34,7 +34,7 @@ fi os=`uname -s` eval $(bundle exec ruby ./script/get_config.rb \ port=server.port \ - db=server.db \ + db=server.database \ workers=server.resque_workers \ single_process_mode=environment.single_process_mode? embed_resque_worker=server.embed_resque_worker diff --git a/spec/controllers/aspect_memberships_controller_spec.rb b/spec/controllers/aspect_memberships_controller_spec.rb index 8e7192704..a3d4666c1 100644 --- a/spec/controllers/aspect_memberships_controller_spec.rb +++ b/spec/controllers/aspect_memberships_controller_spec.rb @@ -25,7 +25,7 @@ describe AspectMembershipsController do it 'succeeds' do post :create, - :format => 'js', + :format => :json, :person_id => bob.person.id, :aspect_id => @aspect1.id response.should be_success @@ -34,7 +34,7 @@ describe AspectMembershipsController do it 'creates an aspect membership' do lambda { post :create, - :format => 'js', + :format => :json, :person_id => bob.person.id, :aspect_id => @aspect1.id }.should change{ @@ -47,7 +47,7 @@ describe AspectMembershipsController do alice.contacts.reload lambda { post :create, - :format => 'js', + :format => :json, :person_id => @person.id, :aspect_id => @aspect0.id }.should change{ @@ -58,14 +58,14 @@ describe AspectMembershipsController do it 'failure flashes error' do alice.should_receive(:share_with).and_return(nil) post :create, - :format => 'js', + :format => :json, :person_id => @person.id, :aspect_id => @aspect0.id flash[:error].should_not be_blank end it 'does not 500 on a duplicate key error' do - params = {:format => 'js', :person_id => @person.id, :aspect_id => @aspect0.id} + params = {:format => :json, :person_id => @person.id, :aspect_id => @aspect0.id} post :create, params post :create, params response.status.should == 400 @@ -74,7 +74,7 @@ describe AspectMembershipsController do context 'json' do it 'returns a list of aspect ids for the person' do post :create, - :format => 'json', + :format => :json, :person_id => @person.id, :aspect_id => @aspect0.id @@ -86,44 +86,25 @@ describe AspectMembershipsController do describe "#destroy" do it 'removes contacts from an aspect' do - alice.add_contact_to_aspect(@contact, @aspect1) - delete :destroy, - :format => 'js', :id => 123, - :person_id => bob.person.id, - :aspect_id => @aspect0.id + membership = alice.add_contact_to_aspect(@contact, @aspect1) + delete :destroy, :format => :json, :id => membership.id response.should be_success - @aspect0.reload - @aspect0.contacts.include?(@contact).should be false + @aspect1.reload + @aspect1.contacts.include?(@contact).should be false end + it 'does not 500 on an html request' do - alice.add_contact_to_aspect(@contact, @aspect1) - delete :destroy, - :id => 123, - :person_id => bob.person.id, - :aspect_id => @aspect0.id + membership = alice.add_contact_to_aspect(@contact, @aspect1) + delete :destroy, :id => membership.id response.should redirect_to :back - @aspect0.reload - @aspect0.contacts.include?(@contact).should be false + @aspect1.reload + @aspect1.contacts.include?(@contact).should be false end - context 'aspect membership does not exist' do - it 'person does not exist' do - delete :destroy, - :format => 'js', :id => 123, - :person_id => 4324525, - :id => @aspect0.id - response.should_not be_success - response.body.should include "Could not find the selected person in that aspect" - end - - it 'contact is not in the aspect' do - delete :destroy, - :format => 'js', :id => 123, - :person_id => bob.person.id, - :aspect_id => 2321 - response.should_not be_success - response.body.should include "Could not find the selected person in that aspect" - end + it 'aspect membership does not exist' do + delete :destroy, :format => :json, :id => 123 + response.should_not be_success + response.body.should include "Could not find the selected person in that aspect" end end end diff --git a/spec/controllers/conversations_controller_spec.rb b/spec/controllers/conversations_controller_spec.rb index ef4cdd86a..a0963bcf8 100644 --- a/spec/controllers/conversations_controller_spec.rb +++ b/spec/controllers/conversations_controller_spec.rb @@ -113,6 +113,30 @@ describe ConversationsController do end end + context 'with empty subject' do + before do + @hash = { + :conversation => { + :subject => ' ', + :text => 'text debug' + }, + :contact_ids => [alice.contacts.first.id] + } + end + + it 'creates a conversation' do + lambda { + post :create, @hash + }.should change(Conversation, :count).by(1) + end + + it 'creates a message' do + lambda { + post :create, @hash + }.should change(Message, :count).by(1) + end + end + context 'with empty text' do before do @hash = { @@ -136,6 +160,30 @@ describe ConversationsController do }.should_not change(Message, :count).by(1) end end + + context 'with empty contact' do + before do + @hash = { + :conversation => { + :subject => 'secret stuff', + :text => 'text debug' + }, + :contact_ids => ' ' + } + end + + it 'does not create a conversation' do + lambda { + post :create, @hash + }.should_not change(Conversation, :count).by(1) + end + + it 'does not create a message' do + lambda { + post :create, @hash + }.should_not change(Message, :count).by(1) + end + end end describe '#show' do diff --git a/spec/controllers/invitations_controller_spec.rb b/spec/controllers/invitations_controller_spec.rb index 413bbe822..5d3cc62ed 100644 --- a/spec/controllers/invitations_controller_spec.rb +++ b/spec/controllers/invitations_controller_spec.rb @@ -16,17 +16,111 @@ describe InvitationsController do before do sign_in :user, @user @controller.stub!(:current_user).and_return(@user) - request.env["HTTP_REFERER"]= 'http://test.host/cats/foo' + @referer = 'http://test.host/cats/foo' + request.env["HTTP_REFERER"] = @referer end - it 'creates an EmailInviter' do - inviter = stub(:emails => ['mbs@gmail.com'], :send! => true) - EmailInviter.should_receive(:new).with(@invite['email_inviter']['emails'], @user, @invite['email_inviter']). - and_return(inviter) - post :create, @invite + context "no emails" do + before do + @invite = {'email_inviter' => {'message' => "test", 'emails' => ""}} + end + + it 'does not create an EmailInviter' do + EmailInviter.should_not_receive(:new) + post :create, @invite + end + + it 'returns to the previous page' do + post :create, @invite + response.should redirect_to @referer + end + + it 'flashes an error' do + post :create, @invite + flash[:error].should == I18n.t("invitations.create.empty") + end + end + + context 'only valid emails' do + before do + @emails = 'mbs@gmail.com' + @invite = {'email_inviter' => {'message' => "test", 'emails' => @emails}} + end + + it 'creates an EmailInviter' do + inviter = stub(:emails => [@emails], :send! => true) + EmailInviter.should_receive(:new).with(@invite['email_inviter']['emails'], @user, @invite['email_inviter']). + and_return(inviter) + post :create, @invite + end + + it 'returns to the previous page on success' do + post :create, @invite + response.should redirect_to @referer + end + + it 'flashes a notice' do + post :create, @invite + expected = I18n.t('invitations.create.sent', :emails => @emails.split(',').join(', ')) + flash[:notice].should == expected + end + end + + context 'only invalid emails' do + before do + @emails = 'invalid_email' + @invite = {'email_inviter' => {'message' => "test", 'emails' => @emails}} + end + + it 'does not create an EmailInviter' do + EmailInviter.should_not_receive(:new) + post :create, @invite + end + + it 'returns to the previous page' do + post :create, @invite + response.should redirect_to @referer + end + + it 'flashes an error' do + post :create, @invite + + expected = I18n.t('invitations.create.rejected') + @emails.split(',').join(', ') + flash[:error].should == expected + end + end + + context 'mixed valid and invalid emails' do + before do + @valid_emails = 'foo@bar.com,mbs@gmail.com' + @invalid_emails = 'invalid' + @invite = {'email_inviter' => {'message' => "test", 'emails' => + @valid_emails + ',' + @invalid_emails}} + end + + it 'creates an EmailInviter' do + inviter = stub(:emails => [@emails], :send! => true) + EmailInviter.should_receive(:new).with(@valid_emails, @user, @invite['email_inviter']). + and_return(inviter) + post :create, @invite + end + + it 'returns to the previous page' do + post :create, @invite + response.should redirect_to @referer + end + + it 'flashes a notice' do + post :create, @invite + expected = I18n.t('invitations.create.sent', :emails => + @valid_emails.split(',').join(', ')) + + '. ' + I18n.t('invitations.create.rejected') + + @invalid_emails.split(',').join(', ') + flash[:error].should == expected + end end - it "redirects if invitations are closed" do + it 'redirects if invitations are closed' do open_bit = AppConfig.settings.invitations.open? AppConfig.settings.invitations.open = false @@ -34,11 +128,6 @@ describe InvitationsController do response.should be_redirect AppConfig.settings.invitations.open = open_bit end - - it 'returns to the previous page on success' do - post :create, @invite - response.should redirect_to("http://test.host/cats/foo") - end end describe '#email' do @@ -92,4 +181,40 @@ describe InvitationsController do response.should redirect_to new_user_session_path end end + + describe '.valid_email?' do + it 'returns false for empty email' do + subject.send(:valid_email?, '').should be false + end + + it 'returns false for email without @-sign' do + subject.send(:valid_email?, 'foo').should be false + end + + it 'returns true for valid email' do + subject.send(:valid_email?, 'foo@bar.com').should be true + end + end + + describe '.html_safe_string_from_session_array' do + it 'returns "" for blank session[key]' do + subject.send(:html_safe_string_from_session_array, :blank).should eq "" + end + + it 'returns "" if session[key] is not an array' do + session[:test_key] = "test" + subject.send(:html_safe_string_from_session_array, :test_key).should eq "" + end + + it 'returns the correct value' do + session[:test_key] = ["test", "foo"] + subject.send(:html_safe_string_from_session_array, :test_key).should eq "test, foo" + end + + it 'sets session[key] to nil' do + session[:test_key] = ["test"] + subject.send(:html_safe_string_from_session_array, :test_key) + session[:test_key].should be nil + end + end end diff --git a/spec/controllers/notifications_controller_spec.rb b/spec/controllers/notifications_controller_spec.rb index 34659b84b..256b7f465 100644 --- a/spec/controllers/notifications_controller_spec.rb +++ b/spec/controllers/notifications_controller_spec.rb @@ -75,6 +75,12 @@ describe NotificationsController do FactoryGirl.create(:notification, :recipient => alice, :target => @post) end + it 'succeeds' do + get :index + response.should be_success + assigns[:notifications].count.should == 1 + end + it 'succeeds for notification dropdown' do get :index, :format => :json response.should be_success diff --git a/spec/controllers/people_controller_spec.rb b/spec/controllers/people_controller_spec.rb index ad08a7529..c38ed5148 100644 --- a/spec/controllers/people_controller_spec.rb +++ b/spec/controllers/people_controller_spec.rb @@ -67,12 +67,12 @@ describe PeopleController do context 'query is a tag' do it 'goes to a tag page' do get :index, :q => '#babies' - response.should redirect_to(tag_path('babies', :q => '#babies')) + response.should redirect_to(tag_path('babies')) end it 'removes dots from the query' do get :index, :q => '#babi.es' - response.should redirect_to(tag_path('babies', :q => '#babi.es')) + response.should redirect_to(tag_path('babies')) end it 'stay on the page if you search for the empty hash' do @@ -366,7 +366,23 @@ describe PeopleController do end end + describe '#hovercard' do + before do + @hover_test = FactoryGirl.create(:person) + @hover_test.profile.tag_string = '#test #tags' + @hover_test.profile.save! + end + + it 'redirects html requests' do + get :hovercard, :person_id => @hover_test.guid + response.should redirect_to person_path(:id => @hover_test.guid) + end + it 'returns json with profile stuff' do + get :hovercard, :person_id => @hover_test.guid, :format => 'json' + JSON.parse( response.body )['handle'].should == @hover_test.diaspora_handle + end + end describe '#refresh_search ' do before(:each)do diff --git a/spec/controllers/posts_controller_spec.rb b/spec/controllers/posts_controller_spec.rb index de647d540..82efa7524 100644 --- a/spec/controllers/posts_controller_spec.rb +++ b/spec/controllers/posts_controller_spec.rb @@ -40,15 +40,14 @@ describe PostsController do response.should be_success end - it 'marks a corresponding notification as read' do - # Ensure that it doesn't mark a read notification as read - FactoryGirl.create(:notification, :recipient => alice, :target => @message, :unread => false) + it 'marks a corresponding notifications as read' do + FactoryGirl.create(:notification, :recipient => alice, :target => @message, :unread => true) note = FactoryGirl.create(:notification, :recipient => alice, :target => @message, :unread => true) expect { get :show, :id => @message.id note.reload - }.to change(note, :unread).from(true).to(false) + }.to change(Notification.where(:unread => true), :count).by(-2) end it 'succeeds with a AS/photo' do diff --git a/spec/controllers/registrations_controller_spec.rb b/spec/controllers/registrations_controller_spec.rb index 69a5f6059..9d52c4d64 100644 --- a/spec/controllers/registrations_controller_spec.rb +++ b/spec/controllers/registrations_controller_spec.rb @@ -52,15 +52,10 @@ describe RegistrationsController do end end - - describe "#create" do context "with valid parameters" do before do AppConfig.settings.enable_registrations = true - end - - before do user = FactoryGirl.build(:user) User.stub!(:build).and_return(user) end diff --git a/spec/controllers/reshares_controller_spec.rb b/spec/controllers/reshares_controller_spec.rb index a3414d881..180f9f6e8 100644 --- a/spec/controllers/reshares_controller_spec.rb +++ b/spec/controllers/reshares_controller_spec.rb @@ -7,7 +7,8 @@ describe ResharesController do } before do - @post_guid = FactoryGirl.create(:status_message, :public => true).guid + @post = FactoryGirl.create(:status_message, :public => true) + @post_guid = @post.guid end it 'requires authentication' do @@ -41,6 +42,18 @@ describe ResharesController do bob.should_receive(:dispatch_post).with(anything, hash_including(:additional_subscribers)) post_request! end + + context 'resharing a reshared post' do + before do + FactoryGirl.create(:reshare, :root => @post, :author => bob.person) + end + + it 'doesn\'t allow the user to reshare the post again' do + post_request! + response.code.should == '422' + response.body.strip.should be_empty + end + end end end end diff --git a/spec/controllers/services_controller_spec.rb b/spec/controllers/services_controller_spec.rb index 9e39a470b..8ce5d8fde 100644 --- a/spec/controllers/services_controller_spec.rb +++ b/spec/controllers/services_controller_spec.rb @@ -17,8 +17,6 @@ describe ServicesController do before do @user = alice - @aspect = @user.aspects.first - sign_in :user, @user @controller.stub!(:current_user).and_return(@user) mock_access_token.stub!(:token => "12345", :secret => "56789") @@ -106,5 +104,4 @@ describe ServicesController do }.should change(@user.services, :count).by(-1) end end - end diff --git a/spec/controllers/status_messages_controller_spec.rb b/spec/controllers/status_messages_controller_spec.rb index ac76ad6cc..57121d1c5 100644 --- a/spec/controllers/status_messages_controller_spec.rb +++ b/spec/controllers/status_messages_controller_spec.rb @@ -7,7 +7,6 @@ require 'spec_helper' describe StatusMessagesController do before do @aspect1 = alice.aspects.first - @aspect2 = bob.aspects.first request.env["HTTP_REFERER"] = "" sign_in :user, alice @@ -55,8 +54,7 @@ describe StatusMessagesController do describe '#new' do it 'succeeds' do - get :new, - :person_id => bob.person.id + get :new, :person_id => bob.person.id response.should be_success end diff --git a/spec/controllers/users_controller_spec.rb b/spec/controllers/users_controller_spec.rb index cc67471f7..537e7390f 100644 --- a/spec/controllers/users_controller_spec.rb +++ b/spec/controllers/users_controller_spec.rb @@ -7,8 +7,6 @@ require 'spec_helper' describe UsersController do before do @user = alice - @aspect = @user.aspects.first - @aspect1 = @user.aspects.create(:name => "super!!") sign_in :user, @user @controller.stub(:current_user).and_return(@user) end @@ -60,6 +58,7 @@ describe UsersController do get :public, :username => @user.username response.should be_redirect end + it 'redirects to a profile page if mobile is requested' do get :public, :username => @user.username, :format => :mobile response.should be_redirect @@ -120,6 +119,13 @@ describe UsersController do Resque.stub!(:enqueue) end + it 'disallow the user to change his new (unconfirmed) mail when it is the same as the old' do + @user.email = "my@newemail.com" + put(:update, :id => @user.id, :user => { :email => "my@newemail.com"}) + @user.reload + @user.unconfirmed_email.should eql(nil) + end + it 'allow the user to change his (unconfirmed) email' do put(:update, :id => @user.id, :user => { :email => "my@newemail.com"}) @user.reload @@ -210,7 +216,6 @@ describe UsersController do Resque.should_receive(:enqueue).with(Jobs::DeleteAccount, anything) delete :destroy, :user => { :current_password => "bluepin7" } end - end describe '#confirm_email' do @@ -252,4 +257,3 @@ describe UsersController do end end end - diff --git a/spec/helpers/application_helper_spec.rb b/spec/helpers/application_helper_spec.rb index 9980a48e6..249914f5b 100644 --- a/spec/helpers/application_helper_spec.rb +++ b/spec/helpers/application_helper_spec.rb @@ -38,7 +38,7 @@ describe ApplicationHelper do end @current_user = alice end - + after do AppConfig.configured_services = @old_configured_services end @@ -89,6 +89,23 @@ describe ApplicationHelper do end end + describe '#changelog_url' do + it 'defaults to master branch changleog' do + old_revision = AppConfig.git_revision + AppConfig.git_revision = nil + changelog_url.should == 'https://github.com/diaspora/diaspora/blob/master/Changelog.md' + AppConfig.git_revision = old_revision + end + + it 'displays the changelog for the current git revision if set' do + old_revision = AppConfig.git_revision + AppConfig.git_revision = '123' + changelog_url.should == 'https://github.com/diaspora/diaspora/blob/123/Changelog.md' + AppConfig.git_revision = old_revision + end + + end + describe '#pod_name' do it 'defaults to Diaspora*' do pod_name.should match /DIASPORA/i @@ -97,8 +114,18 @@ describe ApplicationHelper do it 'displays the supplied pod_name if it is set' do old_name = AppConfig.settings.pod_name.get AppConfig.settings.pod_name = "Catspora" - pod_name.should == "Catspora" + pod_name.should match "Catspora" AppConfig.settings.pod_name = old_name end end + + describe '#pod_version' do + + it 'displays the supplied pod_version if it is set' do + old_version = AppConfig.version.number.get + AppConfig.version.number = "0.0.1.0" + pod_version.should match "0.0.1.0" + AppConfig.version.number = old_version + end + end end diff --git a/spec/helpers/layout_helper_spec.rb b/spec/helpers/layout_helper_spec.rb index 4b0ef1471..dd11e3666 100644 --- a/spec/helpers/layout_helper_spec.rb +++ b/spec/helpers/layout_helper_spec.rb @@ -5,11 +5,6 @@ require 'spec_helper' describe LayoutHelper do - include ApplicationHelper - before do - @user = alice - end - describe "#set_current_user_in_javascript" do it "doesn't allow xss" do user = FactoryGirl.create :user @@ -23,12 +18,6 @@ describe LayoutHelper do end describe "#page_title" do - before do - def current_user - @current_user - end - end - context "passed blank text" do it "returns Diaspora*" do page_title.should == pod_name diff --git a/spec/helpers/markdownify_helper_spec.rb b/spec/helpers/markdownify_helper_spec.rb index dce5d70c5..0619944cd 100644 --- a/spec/helpers/markdownify_helper_spec.rb +++ b/spec/helpers/markdownify_helper_spec.rb @@ -5,7 +5,6 @@ require 'spec_helper' describe MarkdownifyHelper do - describe "#markdownify" do describe "not doing something dumb" do it "strips out script tags" do @@ -86,4 +85,11 @@ describe MarkdownifyHelper do end end end + + describe "#strip_markdown" do + it 'does not remove markdown in links' do + message = "some text and here comes http://exampe.org/foo_bar_baz a link" + strip_markdown(message).should match message + end + end end diff --git a/spec/helpers/people_helper_spec.rb b/spec/helpers/people_helper_spec.rb index 98f461a8c..b8713e1da 100644 --- a/spec/helpers/people_helper_spec.rb +++ b/spec/helpers/people_helper_spec.rb @@ -60,18 +60,23 @@ describe PeopleHelper do end end - describe '#last_post_link' do + describe '#last_visible_post_for' do before do @person = FactoryGirl.create(:person) end - it "doesn't show a link, if the person has no posts" do - last_post_link(@person).should be_blank + it "doesn't show a link, if the person has no visible posts" do + last_visible_post_for(@person).should be_blank end - it "shows the link, if the person has at leas one post" do + it "doesn't show a link, if the person has posts but none visible" do post = FactoryGirl.create(:status_message, :author => @person) - last_post_link(@person).should include last_post_person_path(@person.to_param) + last_visible_post_for(@person).should be_blank + end + + it "shows the link, if the person has at least one visible post" do + post = FactoryGirl.create(:status_message, :author => @person, :public => true) + last_visible_post_for(@person).should include last_post_person_path(@person.to_param) end end diff --git a/spec/javascripts/app/app_spec.js b/spec/javascripts/app/app_spec.js index 5e5958640..e5f396fd1 100644 --- a/spec/javascripts/app/app_spec.js +++ b/spec/javascripts/app/app_spec.js @@ -1,9 +1,5 @@ describe("app", function() { describe("user", function() { - it("sets the user if given one and returns the current user", function() { - expect(app.user()).toBeFalsy() - }); - it("returns false if the current_user isn't set", function() { app._user = undefined; expect(app.user()).toEqual(false); diff --git a/spec/javascripts/app/collections/aspects_spec.js b/spec/javascripts/app/collections/aspects_spec.js new file mode 100644 index 000000000..786cec3d6 --- /dev/null +++ b/spec/javascripts/app/collections/aspects_spec.js @@ -0,0 +1,94 @@ +describe("app.collections.Aspects", function(){ + beforeEach(function(){ + Diaspora.I18n.loadLocale({ + 'and' : "and", + 'comma' : ",", + 'my_aspects' : "My Aspects" + }); + var my_aspects = [{ name: 'Work', selected: true }, + { name: 'Friends', selected: false }, + { name: 'Acquaintances', selected: false }] + this.aspects = new app.collections.Aspects(my_aspects); + }); + + describe("#selectAll", function(){ + it("selects every aspect in the collection", function(){ + this.aspects.selectAll(); + this.aspects.each(function(aspect){ + expect(aspect.get('selected')).toBeTruthy(); + }); + }); + }); + + describe("#deselectAll", function(){ + it("deselects every aspect in the collection", function(){ + this.aspects.deselectAll(); + this.aspects.each(function(aspect){ + expect(aspect.get('selected')).toBeFalsy(); + }); + }); + }); + + describe("#allSelected", function(){ + it("returns true if every aspect is selected", function(){ + this.aspects.at(1).set('selected', true); + this.aspects.at(2).set('selected', true); + expect(this.aspects.allSelected()).toBeTruthy(); + }); + + it("returns false if at least one aspect is not selected", function(){ + expect(this.aspects.allSelected()).toBeFalsy(); + }); + }); + + describe("#toSentence", function(){ + describe('without aspects', function(){ + beforeEach(function(){ + this.aspects = new app.collections.Aspects({ name: 'Work', selected: false }) + spyOn(this.aspects, 'selectedAspects').andCallThrough(); + }); + + it("returns the name of the aspect", function(){ + expect(this.aspects.toSentence()).toEqual('My Aspects'); + expect(this.aspects.selectedAspects).toHaveBeenCalled(); + }); + }); + + describe("with one aspect", function(){ + beforeEach(function(){ + this.aspects = new app.collections.Aspects({ name: 'Work', selected: true }) + spyOn(this.aspects, 'selectedAspects').andCallThrough(); + }); + + it("returns the name of the aspect", function(){ + expect(this.aspects.toSentence()).toEqual('Work'); + expect(this.aspects.selectedAspects).toHaveBeenCalled(); + }); + }); + + describe("with three aspect", function(){ + it("returns the name of the selected aspect", function(){ + expect(this.aspects.toSentence()).toEqual('Work'); + }); + + it("returns the names of the two selected aspects", function(){ + this.aspects.at(1).set('selected', true); + expect(this.aspects.toSentence()).toEqual('Work and Friends'); + }); + + it("returns the names of the selected aspects in a comma-separated sentence", function(){ + this.aspects.at(1).set('selected', true); + this.aspects.at(2).set('selected', true); + expect(this.aspects.toSentence()).toEqual('Work, Friends and Acquaintances'); + }); + }); + }); + + describe("#selectedAspects", function(){ + describe("by name", function(){ + it("returns the names of the selected aspects", function(){ + expect(this.aspects.selectedAspects('name')).toEqual(["Work"]); + }); + }); + }); +}); diff --git a/spec/javascripts/app/collections/tag_following_collection_spec.js b/spec/javascripts/app/collections/tag_following_collection_spec.js new file mode 100644 index 000000000..6567a3b0a --- /dev/null +++ b/spec/javascripts/app/collections/tag_following_collection_spec.js @@ -0,0 +1,13 @@ +describe("app.collections.TagFollowings", function(){ + beforeEach(function(){ + this.collection = new app.collections.TagFollowings(); + }) + + describe("create", function(){ + it("should not allow duplicates", function(){ + this.collection.create({"name":"name"}) + this.collection.create({"name":"name"}) + expect(this.collection.length).toBe(1) + }) + }) +}) diff --git a/spec/javascripts/app/models/aspect_spec.js b/spec/javascripts/app/models/aspect_spec.js new file mode 100644 index 000000000..72ab56047 --- /dev/null +++ b/spec/javascripts/app/models/aspect_spec.js @@ -0,0 +1,15 @@ +describe("app.models.Aspect", function(){ + describe("#toggleSelected", function(){ + it("should select the aspect", function(){ + this.aspect = new app.models.Aspect({ name: 'John Doe', selected: false }); + this.aspect.toggleSelected(); + expect(this.aspect.get("selected")).toBeTruthy(); + }); + + it("should deselect the aspect", function(){ + this.aspect = new app.models.Aspect({ name: 'John Doe', selected: true }); + this.aspect.toggleSelected(); + expect(this.aspect.get("selected")).toBeFalsy(); + }); + }); +}); diff --git a/spec/javascripts/app/views/aspect_membership_view_spec.js b/spec/javascripts/app/views/aspect_membership_view_spec.js new file mode 100644 index 000000000..a0ee61128 --- /dev/null +++ b/spec/javascripts/app/views/aspect_membership_view_spec.js @@ -0,0 +1,130 @@ + +describe("app.views.AspectMembership", function(){ + beforeEach(function() { + // mock a dummy aspect dropdown + this.person = factory.author({name: "My Name"}); + spec.content().html( + '<div class="aspect_membership dropdown">'+ + ' <div class="button toggle">The Button</div>'+ + ' <ul class="dropdown_list" data-person-short-name="'+this.person.name+'" data-person_id="'+this.person.id+'">'+ + ' <li data-aspect_id="10">Aspect 10</li>'+ + ' <li data-membership_id="99" data-aspect_id="11" class="selected">Aspect 11</li>'+ + ' <li data-aspect_id="12">Aspect 12</li>'+ + ' </ul>'+ + '</div>' + ); + + this.view = new app.views.AspectMembership(); + }); + + it('attaches to the aspect selector', function(){ + spyOn($.fn, 'on'); + view = new app.views.AspectMembership(); + + expect($.fn.on).toHaveBeenCalled(); + }); + + context('adding to aspects', function() { + beforeEach(function() { + this.newAspect = spec.content().find('li:eq(0)'); + this.newAspectId = 10; + }); + + it('calls "addMembership"', function() { + spyOn(this.view, "addMembership"); + this.newAspect.trigger('click'); + + expect(this.view.addMembership).toHaveBeenCalledWith(this.person.id, this.newAspectId); + }); + + it('tries to create a new AspectMembership', function() { + spyOn(app.models.AspectMembership.prototype, "save"); + this.view.addMembership(1, 2); + + expect(app.models.AspectMembership.prototype.save).toHaveBeenCalled(); + }); + + it('displays an error when it fails', function() { + spyOn(this.view, "_displayError"); + spyOn(app.models.AspectMembership.prototype, "save").andCallFake(function() { + this.trigger('error'); + }); + + this.view.addMembership(1, 2); + + expect(this.view._displayError).toHaveBeenCalledWith('aspect_dropdown.error'); + }); + }); + + context('removing from aspects', function(){ + beforeEach(function() { + this.oldAspect = spec.content().find('li:eq(1)'); + this.oldMembershipId = 99; + }); + + it('calls "removeMembership"', function(){ + spyOn(this.view, "removeMembership"); + this.oldAspect.trigger('click'); + + expect(this.view.removeMembership).toHaveBeenCalledWith(this.oldMembershipId); + }); + + it('tries to destroy an AspectMembership', function() { + spyOn(app.models.AspectMembership.prototype, "destroy"); + this.view.removeMembership(1); + + expect(app.models.AspectMembership.prototype.destroy).toHaveBeenCalled(); + }); + + it('displays an error when it fails', function() { + spyOn(this.view, "_displayError"); + spyOn(app.models.AspectMembership.prototype, "destroy").andCallFake(function() { + this.trigger('error'); + }); + + this.view.removeMembership(1); + + expect(this.view._displayError).toHaveBeenCalledWith('aspect_dropdown.error_remove'); + }); + }); + + context('summary text in the button', function() { + beforeEach(function() { + this.btn = spec.content().find('div.button.toggle'); + this.btn.text(""); // reset + this.view.dropdown = spec.content().find('ul.dropdown_list'); + }); + + it('shows "no aspects" when nothing is selected', function() { + spec.content().find('li[data-aspect_id]').removeClass('selected'); + this.view.updateSummary(); + + expect(this.btn.text()).toContain(Diaspora.I18n.t('aspect_dropdown.toggle.zero')); + }); + + it('shows "all aspects" when everything is selected', function() { + spec.content().find('li[data-aspect_id]').addClass('selected'); + this.view.updateSummary(); + + expect(this.btn.text()).toContain(Diaspora.I18n.t('aspect_dropdown.all_aspects')); + }); + + it('shows the name of the selected aspect ( == 1 )', function() { + var list = spec.content().find('li[data-aspect_id]'); + list.removeClass('selected'); // reset + list.eq(1).addClass('selected'); + this.view.updateSummary(); + + expect(this.btn.text()).toContain(list.eq(1).text()); + }); + + it('shows the number of selected aspects ( > 1)', function() { + var list = spec.content().find('li[data-aspect_id]'); + list.removeClass('selected'); // reset + $([list.eq(1), list.eq(2)]).addClass('selected'); + this.view.updateSummary(); + + expect(this.btn.text()).toContain(Diaspora.I18n.t('aspect_dropdown.toggle', { 'count':2 })); + }); + }); +}); diff --git a/spec/javascripts/app/views/aspect_view_spec.js b/spec/javascripts/app/views/aspect_view_spec.js new file mode 100644 index 000000000..cfdbb387d --- /dev/null +++ b/spec/javascripts/app/views/aspect_view_spec.js @@ -0,0 +1,42 @@ +describe("app.views.Aspect", function(){ + beforeEach(function(){ + this.aspect = new app.models.Aspect({ name: 'Acquaintances', selected: true }); + this.view = new app.views.Aspect({ model: this.aspect }); + }); + + describe("render", function(){ + beforeEach(function(){ + this.view.render(); + }); + + it('should show the aspect selected', function(){ + expect(this.view.$el.hasClass('active')).toBeTruthy(); + }); + + it('should show the name of the aspect', function(){ + expect(this.view.$('a.aspect_selector').text()).toMatch('Acquaintances'); + }); + + describe('selecting aspects', function(){ + beforeEach(function(){ + app.router = new app.Router(); + spyOn(app.router, 'aspects_stream'); + spyOn(this.view, 'toggleAspect').andCallThrough(); + this.view.delegateEvents(); + }); + + it('it should deselect the aspect', function(){ + this.view.$('a.aspect_selector').trigger('click'); + expect(this.view.toggleAspect).toHaveBeenCalled(); + expect(this.view.$el.hasClass('active')).toBeFalsy(); + expect(app.router.aspects_stream).toHaveBeenCalled(); + }); + + it('should call #toggleSelected on the model', function(){ + spyOn(this.aspect, 'toggleSelected'); + this.view.$('a.aspect_selector').trigger('click'); + expect(this.aspect.toggleSelected).toHaveBeenCalled(); + }); + }); + }); +}); diff --git a/spec/javascripts/app/views/aspects_list_view_spec.js b/spec/javascripts/app/views/aspects_list_view_spec.js new file mode 100644 index 000000000..27b5ed972 --- /dev/null +++ b/spec/javascripts/app/views/aspects_list_view_spec.js @@ -0,0 +1,61 @@ +describe("app.views.AspectsList", function(){ + beforeEach(function(){ + setFixtures('<ul id="aspects_list"></ul>'); + Diaspora.I18n.loadLocale({ aspect_navigation : { + 'select_all' : 'Select all', + 'deselect_all' : 'Deselect all' + }}); + + var aspects = [{ name: 'Work', selected: true }, + { name: 'Friends', selected: false }, + { name: 'Acquaintances', selected: false }]; + this.aspects = new app.collections.Aspects(aspects); + this.view = new app.views.AspectsList({ collection: this.aspects }); + }); + + describe('rendering', function(){ + beforeEach(function(){ + this.view.render(); + }); + + it('should show the corresponding aspects selected', function(){ + expect(this.view.$('.active').length).toBe(1); + expect(this.view.$('.active > .aspect_selector').text()).toMatch('Work'); + }); + + it('should show all the aspects', function(){ + var aspect_selectors = this.view.$('.aspect_selector'); + expect(aspect_selectors.length).toBe(3) + expect(aspect_selectors[0].text).toMatch('Work'); + expect(aspect_selectors[1].text).toMatch('Friends'); + expect(aspect_selectors[2].text).toMatch('Acquaintances'); + }); + + it('should show \'Select all\' link', function(){ + expect(this.view.$('.toggle_selector').text()).toMatch('Select all'); + }); + + describe('selecting aspects', function(){ + context('selecting all aspects', function(){ + beforeEach(function(){ + app.router = new app.Router(); + spyOn(app.router, 'aspects_stream'); + spyOn(this.view, 'toggleAll').andCallThrough(); + spyOn(this.view, 'toggleSelector').andCallThrough(); + this.view.delegateEvents(); + this.view.$('.toggle_selector').click(); + }); + + it('should show all the aspects selected', function(){ + expect(this.view.toggleAll).toHaveBeenCalled(); + expect(this.view.$('li.active').length).toBe(3); + }); + + it('should show \'Deselect all\' link', function(){ + expect(this.view.toggleSelector).toHaveBeenCalled(); + expect(this.view.$('.toggle_selector').text()).toMatch('Deselect all'); + }); + }); + }); + }); +}); diff --git a/spec/javascripts/app/views/feedback_actions_view_spec.js b/spec/javascripts/app/views/feedback_actions_view_spec.js new file mode 100644 index 000000000..a45a9a967 --- /dev/null +++ b/spec/javascripts/app/views/feedback_actions_view_spec.js @@ -0,0 +1,55 @@ +describe("app.views.FeedbackActions", function(){ + beforeEach(function(){ + loginAs({id : -1, name: "alice", avatar : {small : "http://avatar.com/photo.jpg"}}); + + this.post = new app.models.Post({ + "author": { + "diaspora_id": "alice@localhost:3000" + }, + "post_type": "Reshare", + "public": true, + "root": { + "author":{"diaspora_id": null} + } + }) + + this.view = new app.views.PostViewerFeedback({model: this.post}) + }); + + describe("FeedbackActions", function(){ + it("reshares a post", function(){ + + spyOn(window, "confirm").andReturn(true) + spyOn(this.view.model.interactions, "reshare") + + this.view.render() + + this.view.$('.reshare').click() + + expect(this.view.model.interactions.reshare.callCount).toBe(1) + expect(window.confirm.callCount).toBe(1) + }); + + it('cancels a reshare confirmation ', function(){ + spyOn(window, "confirm").andReturn(false) + spyOn(this.view.model.interactions, "reshare") + + this.view.render() + + this.view.$('.reshare').click() + + expect(this.view.model.interactions.reshare).not.toHaveBeenCalled(); + }); + + it("likes a post", function(){ + + spyOn(this.view.model.interactions, "toggleLike") + + this.view.render() + + this.view.$('.like').click() + + expect(this.view.model.interactions.toggleLike.callCount).toBe(1) + }) + }) +}) diff --git a/spec/javascripts/app/views/oembed_view_spec.js b/spec/javascripts/app/views/oembed_view_spec.js index 6b635910b..7af824d20 100644 --- a/spec/javascripts/app/views/oembed_view_spec.js +++ b/spec/javascripts/app/views/oembed_view_spec.js @@ -13,7 +13,23 @@ describe("app.views.OEmbed", function(){ }); describe("rendering", function(){ - context("with thumb", function() { + + it("should set types on the data", function() { + this.view.render(); + expect(this.view.model.get("o_embed_cache").data.types).toBeDefined(); + }); + + context("is a video", function() { + + beforeEach(function(){ + this.statusMessage.set({"o_embed_cache" : {"data": {"html": "some html","thumbnail_url": "//example.com/thumb.jpg","type": "video"}}}); + }); + + it("should set types.video on the data", function() { + this.view.render(); + expect(this.view.model.get("o_embed_cache").data.types.video).toBe(true) + }); + it("shows the thumb with overlay", function(){ this.view.render(); @@ -31,7 +47,7 @@ describe("app.views.OEmbed", function(){ }); }); - context("no thumb", function() { + context("is not a video", function() { beforeEach(function(){ this.statusMessage.set({"o_embed_cache" : {"data": {"html": "some html"}}}); }); diff --git a/spec/javascripts/app/views/stream_faces_view_spec.js b/spec/javascripts/app/views/stream_faces_view_spec.js index 956802492..259dcd074 100644 --- a/spec/javascripts/app/views/stream_faces_view_spec.js +++ b/spec/javascripts/app/views/stream_faces_view_spec.js @@ -5,7 +5,7 @@ describe("app.views.StreamFaces", function(){ this.post2 = factory.post({author : factory.author({name : "John Stamos", id : 1987})}) this.post3 = factory.post({author : factory.author({name : "Michelle Tanner", id : 1986})}) this.post4 = factory.post({author : factory.author({name : "Barack Obama", id : 2000})}) - this.post5 = factory.post({author : factory.author({name : "Obie-won Kenobie", id : 2020})}) + this.post5 = factory.post({author : factory.author({name : "Obi-wan Kenobi", id : 2020})}) this.post6 = factory.post({author : rebeccaBlack}) this.post7 = factory.post({author : rebeccaBlack}) diff --git a/spec/javascripts/app/views/tag_following_action_view_spec.js b/spec/javascripts/app/views/tag_following_action_view_spec.js new file mode 100644 index 000000000..f82d60bb3 --- /dev/null +++ b/spec/javascripts/app/views/tag_following_action_view_spec.js @@ -0,0 +1,50 @@ +describe("app.views.TagFollowingAction", function(){ + beforeEach(function(){ + app.tagFollowings = new app.collections.TagFollowings(); + this.tagName = "test_tag"; + this.view = new app.views.TagFollowingAction({tagName : this.tagName}) + }) + + describe("render", function(){ + it("shows the output of followString", function(){ + spyOn(this.view, "tag_is_followed").andReturn(false) + spyOn(this.view, "followString").andReturn("a_follow_string") + expect(this.view.render().$('input').val()).toMatch(/^a_follow_string$/) + }) + + it("should have the extra classes if the tag is followed", function(){ + spyOn(this.view, "tag_is_followed").andReturn(true) + expect(this.view.render().$('input').hasClass("red_on_hover")).toBe(true) + expect(this.view.render().$('input').hasClass("in_aspects")).toBe(true) + }) + }) + + describe("tagAction", function(){ + it("toggles the tagFollowed from followed to unfollowed", function(){ + // first set the tag to followed + var origModel = this.view.model; + this.view.model.set("id", 3); + + expect(this.view.tag_is_followed()).toBe(true); + spyOn(this.view.model, "destroy").andCallFake(_.bind(function(){ + // model.destroy leads to collection.remove, which is bound to getTagFollowing + this.view.getTagFollowing(); + }, this) ) + this.view.tagAction(); + expect(origModel.destroy).toHaveBeenCalled() + + expect(this.view.tag_is_followed()).toBe(false); + }) + + + it("toggles the tagFollowed from unfollowed to followed", function(){ + expect(this.view.tag_is_followed()).toBe(false); + spyOn(app.tagFollowings, "create").andCallFake(function(model){ + // 'save' the model by giving it an id + model.set("id", 3) + }) + this.view.tagAction(); + expect(this.view.tag_is_followed()).toBe(true); + }) + }) +}) diff --git a/spec/lib/configuration/lookup_chain_spec.rb b/spec/lib/configuration/lookup_chain_spec.rb deleted file mode 100644 index 272106dc3..000000000 --- a/spec/lib/configuration/lookup_chain_spec.rb +++ /dev/null @@ -1,67 +0,0 @@ -require 'spec_helper' - -class InvalidConfigurationProvider; end -class ValidConfigurationProvider - def lookup(setting, *args); end -end - -describe Configuration::LookupChain do - subject { described_class.new } - - describe "#add_provider" do - it "adds a valid provider" do - expect { - subject.add_provider ValidConfigurationProvider - }.to change { subject.instance_variable_get(:@provider).size }.by 1 - end - - it "doesn't add an invalid provider" do - expect { - subject.add_provider InvalidConfigurationProvider - }.to raise_error ArgumentError - end - - it "passes extra args to the provider" do - ValidConfigurationProvider.should_receive(:new).with(:extra) - subject.add_provider ValidConfigurationProvider, :extra - end - end - - describe "#lookup" do - before(:all) do - subject.add_provider ValidConfigurationProvider - subject.add_provider ValidConfigurationProvider - @provider = subject.instance_variable_get(:@provider) - end - - it "it tries all providers" do - setting = "some.setting" - @provider.each do |provider| - provider.should_receive(:lookup).with(setting).and_raise(Configuration::SettingNotFoundError) - end - - subject.lookup(setting) - end - - it "stops if a value is found" do - @provider[0].should_receive(:lookup).and_return("something") - @provider[1].should_not_receive(:lookup) - subject.lookup("bla") - end - - it "converts numbers to strings" do - @provider[0].stub(:lookup).and_return(5) - subject.lookup("foo").should == "5" - end - - it "does not convert false to a string" do - @provider[0].stub(:lookup).and_return(false) - subject.lookup("enable").should be_false - end - - it "returns nil if no value is found" do - @provider.each { |p| p.stub(:lookup).and_raise(Configuration::SettingNotFoundError) } - subject.lookup("not.me").should be_nil - end - end -end diff --git a/spec/lib/configuration/provider/dynamic_spec.rb b/spec/lib/configuration/provider/dynamic_spec.rb deleted file mode 100644 index 937dd00e2..000000000 --- a/spec/lib/configuration/provider/dynamic_spec.rb +++ /dev/null @@ -1,23 +0,0 @@ -require 'spec_helper' - -describe Configuration::Provider::Dynamic do - subject { described_class.new } - describe "#lookup_path" do - it "returns nil if the setting was never set" do - subject.lookup_path(["not_me"]).should be_nil - end - - it "remembers the setting if it ends with =" do - subject.lookup_path(["find_me", "later="], "there") - subject.lookup_path(["find_me", "later"]).should == "there" - end - - it "calls .get on the argument if a proxy object is given" do - proxy = mock - proxy.stub(:respond_to?).and_return(true) - proxy.stub(:_proxy?).and_return(true) - proxy.should_receive(:get) - subject.lookup_path(["bla="], proxy) - end - end -end diff --git a/spec/lib/configuration/provider/env_spec.rb b/spec/lib/configuration/provider/env_spec.rb deleted file mode 100644 index 0bc5eaa56..000000000 --- a/spec/lib/configuration/provider/env_spec.rb +++ /dev/null @@ -1,32 +0,0 @@ -require 'spec_helper' - -describe Configuration::Provider::Env do - subject { described_class.new } - let(:existing_path) { ['existing', 'setting']} - let(:not_existing_path) { ['not', 'existing', 'path']} - let(:array_path) { ['array'] } - before(:all) do - ENV['EXISTING_SETTING'] = "there" - ENV['ARRAY'] = "foo,bar,baz" - end - - after(:all) do - ENV['EXISTING_SETTING'] = nil - ENV['ARRAY'] = nil - end - - describe '#lookup_path' do - it "joins and upcases the path" do - ENV.should_receive(:[]).with("EXISTING_SETTING") - subject.lookup_path(existing_path) - end - - it "returns nil if the setting isn't available" do - subject.lookup_path(not_existing_path).should be_nil - end - - it "makes an array out of comma separated values" do - subject.lookup_path(array_path).should == ["foo", "bar", "baz"] - end - end -end diff --git a/spec/lib/configuration/provider/yaml_spec.rb b/spec/lib/configuration/provider/yaml_spec.rb deleted file mode 100644 index ea4da964d..000000000 --- a/spec/lib/configuration/provider/yaml_spec.rb +++ /dev/null @@ -1,72 +0,0 @@ -require 'spec_helper' - -describe Configuration::Provider::YAML do - let(:settings) { {"toplevel" => "bar", - "some" => { - "nested" => { "some" => "lala", "setting" => "foo"} - } - } } - - describe "#initialize" do - it "loads the file" do - file = "foobar.yml" - ::YAML.should_receive(:load_file).with(file).and_return({}) - described_class.new file - end - - it "raises if the file is not found" do - ::YAML.stub(:load_file).and_raise(Errno::ENOENT) - expect { - described_class.new "foo" - }.to raise_error Errno::ENOENT - end - - - context "with a namespace" do - it "looks in the file for that namespace" do - namespace = "some" - ::YAML.stub(:load_file).and_return(settings) - provider = described_class.new 'bla', namespace: namespace - provider.instance_variable_get(:@settings).should == settings[namespace] - end - - it "raises if the namespace isn't found" do - ::YAML.stub(:load_file).and_return({}) - expect { - described_class.new 'bla', namespace: "foo" - }.to raise_error ArgumentError - end - end - - context "with required set to false" do - it "doesn't raise if a file isn't found" do - ::YAML.stub(:load_file).and_raise(Errno::ENOENT) - expect { - described_class.new "not_me", required: false - }.not_to raise_error Errno::ENOENT - end - - it "doesn't raise if a namespace isn't found" do - ::YAML.stub(:load_file).and_return({}) - expect { - described_class.new 'bla', namespace: "foo", required: false - }.not_to raise_error ArgumentError - end - end - end - - describe "#lookup_path" do - before do - ::YAML.stub(:load_file).and_return(settings) - @provider = described_class.new 'dummy' - end - - it "looks up the whole nesting" do - @provider.lookup_path(["some", "nested", "some"]).should == settings["some"]["nested"]["some"] - end - - it "returns nil if no setting is found" do - @provider.lookup_path(["not_me"]).should be_nil - end - end -end diff --git a/spec/lib/configuration/provider_spec.rb b/spec/lib/configuration/provider_spec.rb deleted file mode 100644 index 12cba2491..000000000 --- a/spec/lib/configuration/provider_spec.rb +++ /dev/null @@ -1,18 +0,0 @@ -require 'spec_helper' - -describe Configuration::Provider::Base do - subject { described_class.new } - describe "#lookup" do - it "calls #lookup_path with the setting as array" do - subject.should_receive(:lookup_path).with(["foo", "bar"]).and_return("something") - subject.lookup("foo.bar").should == "something" - end - - it "raises SettingNotFoundError if the #lookup_path returns nil" do - subject.should_receive(:lookup_path).and_return(nil) - expect { - subject.lookup("bla") - }.to raise_error Configuration::SettingNotFoundError - end - end -end diff --git a/spec/lib/configuration/proxy_spec.rb b/spec/lib/configuration/proxy_spec.rb deleted file mode 100644 index 950112d2f..000000000 --- a/spec/lib/configuration/proxy_spec.rb +++ /dev/null @@ -1,56 +0,0 @@ -require 'spec_helper' - -describe Configuration::Proxy do - let(:lookup_chain) { mock } - before do - lookup_chain.stub(:lookup).and_return("something") - end - - describe "#method_missing" do - it "calls #get if the method ends with a ?" do - lookup_chain.should_receive(:lookup).with("enable").and_return(false) - described_class.new(lookup_chain).method_missing(:enable?) - end - - it "calls #get if the method ends with a =" do - lookup_chain.should_receive(:lookup).with("url=").and_return(false) - described_class.new(lookup_chain).method_missing(:url=) - end - end - - describe "#get" do - [:to_str, :to_s, :to_xml, :respond_to?, :present?, :!=, - :each, :try, :size, :length, :count, :==, :=~, :gsub, :blank?, :chop, - :start_with?, :end_with?].each do |method| - it "is called for accessing #{method} on the proxy" do - target = mock - lookup_chain.should_receive(:lookup).and_return(target) - target.should_receive(method).and_return("something") - described_class.new(lookup_chain).something.__send__(method, mock) - end - end - - described_class::COMMON_KEY_NAMES.each do |method| - it "is not called for accessing #{method} on the proxy" do - target = mock - lookup_chain.should_not_receive(:lookup).and_return(target) - target.should_not_receive(method).and_return("something") - described_class.new(lookup_chain).something.__send__(method, mock) - end - end - - it "strips leading dots" do - lookup_chain.should_receive(:lookup).with("foo.bar").and_return("something") - described_class.new(lookup_chain).foo.bar.get - end - - it "returns nil if no setting is given" do - described_class.new(lookup_chain).get.should be_nil - end - - it "strips ? at the end" do - lookup_chain.should_receive(:lookup).with("foo.bar").and_return("something") - described_class.new(lookup_chain).foo.bar? - end - end -end diff --git a/spec/lib/configuration/methods_spec.rb b/spec/lib/configuration_methods_spec.rb index 1ec0b7520..8cc3525d8 100644 --- a/spec/lib/configuration/methods_spec.rb +++ b/spec/lib/configuration_methods_spec.rb @@ -2,9 +2,9 @@ require 'spec_helper' describe Configuration::Methods do before(:all) do - @settings = Configuration::Settings.create do - add_provider Configuration::Provider::Dynamic - add_provider Configuration::Provider::Env + @settings = Configurate::Settings.create do + add_provider Configurate::Provider::Dynamic + add_provider Configurate::Provider::Env extend Configuration::Methods end end diff --git a/spec/lib/configuration_spec.rb b/spec/lib/configuration_spec.rb deleted file mode 100644 index f75619541..000000000 --- a/spec/lib/configuration_spec.rb +++ /dev/null @@ -1,25 +0,0 @@ -require 'spec_helper' - -describe Configuration::Settings do - describe "#method_missing" do - subject { described_class.create } - - it "delegates the call to a new proxy object" do - proxy = mock - Configuration::Proxy.should_receive(:new).and_return(proxy) - proxy.should_receive(:method_missing).with(:some_setting).and_return("foo") - subject.some_setting - end - end - - [:lookup, :add_provider, :[]].each do |method| - describe "#{method}" do - subject { described_class.create } - - it "delegates the call to #lookup_chain" do - subject.lookup_chain.should_receive(method) - subject.send(method) - end - end - end -end diff --git a/spec/lib/i18n_interpolation_fallbacks_spec.rb b/spec/lib/i18n_interpolation_fallbacks_spec.rb index 244512847..56a05e1c3 100644 --- a/spec/lib/i18n_interpolation_fallbacks_spec.rb +++ b/spec/lib/i18n_interpolation_fallbacks_spec.rb @@ -10,7 +10,7 @@ describe "i18n interpolation fallbacks" do I18n.t('user.invalid', :resource_name => "user", :scope => "devise.failure", - :default => [:invalid, "invalid"]).should == "Invalid email or password." + :default => [:invalid, "invalid"]).should == "Invalid username or password." end end describe "when string requires interpolation arguments" do diff --git a/spec/lib/stream/person_spec.rb b/spec/lib/stream/person_spec.rb index 344e8c4ef..d29d7dbe8 100644 --- a/spec/lib/stream/person_spec.rb +++ b/spec/lib/stream/person_spec.rb @@ -9,4 +9,25 @@ describe Stream::Person do describe 'shared behaviors' do it_should_behave_like 'it is a stream' end + + it "returns the most recent posts" do + posts = [] + fetched_posts = [] + + aspect = bob.aspects.first.id + Timecop.scale(600) do + 16.times do |n| + posts << bob.post(:status_message, text: "hello#{n}", to: aspect) + posts << bob.post(:status_message, text: "hello#{n}", public: true) + end + + fetched_posts = Stream::Person.new(alice, bob.person).stream_posts + end + + posts = posts.reverse.slice(0..14) + fetched_posts = fetched_posts.slice(0..14) + + fetched_posts.should == posts + end + end diff --git a/spec/models/conversation_spec.rb b/spec/models/conversation_spec.rb index 5c5b0f40c..90a852aa0 100644 --- a/spec/models/conversation_spec.rb +++ b/spec/models/conversation_spec.rb @@ -32,6 +32,22 @@ describe Conversation do end end + describe '#first_unread_message' do + before do + @cnv = Conversation.create(@create_hash) + @message = Message.create(:author => @user2.person, :created_at => Time.now + 100, :text => "last", :conversation_id => @cnv.id) + @message.increase_unread(@user1) + end + + it 'returns the first unread message if there are unread messages in a conversation' do + @cnv.first_unread_message(@user1) == @message + end + + it 'returns nil if there are no unread messages in a conversation' do + @cnv.conversation_visibilities.where(:person_id => @user1.person.id).first.tap { |cv| cv.unread = 0 }.save + @cnv.first_unread_message(@user1).should be_nil + end + end context 'transport' do before do diff --git a/spec/models/reshare_spec.rb b/spec/models/reshare_spec.rb index 79b138b84..aedb365d5 100644 --- a/spec/models/reshare_spec.rb +++ b/spec/models/reshare_spec.rb @@ -1,12 +1,7 @@ require 'spec_helper' describe Reshare do - include ActionView::Helpers::UrlHelper include Rails.application.routes.url_helpers - def controller - mock() - end - it 'has a valid Factory' do FactoryGirl.build(:reshare).should be_valid diff --git a/spec/models/service_spec.rb b/spec/models/service_spec.rb index b71b37a8f..0d5a27fb6 100644 --- a/spec/models/service_spec.rb +++ b/spec/models/service_spec.rb @@ -23,17 +23,16 @@ describe Service do end it 'removes text formatting markdown from post text' do - service = Service.new() + service = Service.new message = "Text with some **bolded** and _italic_ parts." post = stub(:text => message) service.public_message(post, 200, '', false).should match "Text with some bolded and italic parts." end it 'keeps markdown in post text when specified' do - service = Service.new() + service = Service.new message = "Text with some **bolded** and _italic_ parts." post = stub(:text => message) service.public_message(post, 200, '', false, true).should match 'Text with some \*\*bolded\*\* and _italic_ parts.' end - end diff --git a/spec/models/status_message_spec.rb b/spec/models/status_message_spec.rb index 4425c64e0..9fb1700f6 100644 --- a/spec/models/status_message_spec.rb +++ b/spec/models/status_message_spec.rb @@ -5,12 +5,7 @@ require 'spec_helper' describe StatusMessage do - include ActionView::Helpers::UrlHelper include PeopleHelper - include Rails.application.routes.url_helpers - def controller - mock() - end before do @user = alice diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb index 905ec7295..f167d441d 100644 --- a/spec/models/user_spec.rb +++ b/spec/models/user_spec.rb @@ -407,28 +407,6 @@ describe User do end end - describe "#can_add?" do - it "returns true if there is no existing connection" do - alice.can_add?(eve.person).should be_true - end - - it "returns false if the user and the person are the same" do - alice.can_add?(alice.person).should be_false - end - - it "returns false if the users are already connected" do - alice.can_add?(bob.person).should be_false - end - - it "returns false if the user has already sent a request to that person" do - alice.share_with(eve.person, alice.aspects.first) - alice.reload - eve.reload - alice.can_add?(eve.person).should be_false - end - end - - describe '#process_invite_acceptence' do it 'sets the inviter on user' do inv = InvitationCode.create(:user => bob) diff --git a/spec/presenters/user_presenter_spec.rb b/spec/presenters/user_presenter_spec.rb index 2f322b497..38720dcb3 100644 --- a/spec/presenters/user_presenter_spec.rb +++ b/spec/presenters/user_presenter_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' describe UserPresenter do before do - @presenter = UserPresenter.new(bob) + @presenter = UserPresenter.new(bob, []) end describe '#to_json' do @@ -34,4 +34,4 @@ describe UserPresenter do @presenter.configured_services.should include("fakebook") end end -end
\ No newline at end of file +end diff --git a/spec/shared_behaviors/taggable.rb b/spec/shared_behaviors/taggable.rb index ea4957381..1d7efcbc5 100644 --- a/spec/shared_behaviors/taggable.rb +++ b/spec/shared_behaviors/taggable.rb @@ -8,9 +8,6 @@ require 'spec_helper' describe Diaspora::Taggable do shared_examples_for "it is taggable" do include ActionView::Helpers::UrlHelper - include Rails.application.routes.url_helpers - def controller - end def tag_link(s) link_to "##{s}", "/tags/#{s}", :class => 'tag' diff --git a/spec/support/user_methods.rb b/spec/support/user_methods.rb index 6d167f342..74fd44c18 100644 --- a/spec/support/user_methods.rb +++ b/spec/support/user_methods.rb @@ -31,11 +31,4 @@ class User p end end - - def post_at_time(time) - to_aspect = self.aspects.length == 1 ? self.aspects.first : self.aspects.where(:name => "generic") - p = self.post(:status_message, :text => 'hi', :to => to_aspect) - p.created_at = time - p.save! - end end |