Merge branch 'next-minor'
This commit is contained in:
commit
82291ed7e7
254 changed files with 5243 additions and 1975 deletions
2
.github/workflows/ci.yml
vendored
2
.github/workflows/ci.yml
vendored
|
|
@ -44,7 +44,7 @@ jobs:
|
|||
- 5432:5432
|
||||
steps:
|
||||
- name: Install system dependencies
|
||||
run: sudo apt-get install -y build-essential curl git gsfonts imagemagick libcurl4-openssl-dev libidn11-dev libmagickwand-dev libssl-dev libxml2-dev libxslt1-dev
|
||||
run: sudo apt update && sudo apt install -y build-essential curl git gsfonts imagemagick libcurl4-openssl-dev libidn11-dev libmagickwand-dev libssl-dev libxml2-dev libxslt1-dev
|
||||
- name: Start MySQL
|
||||
run: sudo systemctl start mysql.service
|
||||
if: matrix.db == 'mysql'
|
||||
|
|
|
|||
|
|
@ -179,8 +179,6 @@ Layout/DotPosition:
|
|||
Style/HashEachMethods:
|
||||
Enabled: true
|
||||
|
||||
# TODO: Enable with Ruby 2.5
|
||||
Style/HashTransformKeys:
|
||||
Enabled: false
|
||||
Style/HashTransformValues:
|
||||
# It makes more sense to allow to structure and group them how it makes sense in the code
|
||||
Style/AccessorGrouping:
|
||||
Enabled: false
|
||||
|
|
|
|||
31
Changelog.md
31
Changelog.md
|
|
@ -1,3 +1,34 @@
|
|||
# 0.7.16.0
|
||||
|
||||
## Security
|
||||
|
||||
* Update rails to fix [CVE-2022-23633](https://github.com/advisories/GHSA-wh98-p28r-vrc9) [#8336](https://github.com/diaspora/diaspora/pull/8336)
|
||||
|
||||
## Refactor
|
||||
* Cache local posts/comments count for statistics [#8241](https://github.com/diaspora/diaspora/pull/8241)
|
||||
* Fix html-syntax in some handlebars templates [#8251](https://github.com/diaspora/diaspora/pull/8251)
|
||||
* Remove `chat_enabled` flag from archive export [#8265](https://github.com/diaspora/diaspora/pull/8265)
|
||||
* Change thumbnails in image slideshow to squares [#8275](https://github.com/diaspora/diaspora/pull/8275)
|
||||
* Replace uglifier with terser for JS compression [#8268](https://github.com/diaspora/diaspora/pull/8268)
|
||||
|
||||
## Bug fixes
|
||||
* Ensure the log folder exists [#8287](https://github.com/diaspora/diaspora/pull/8287)
|
||||
* Limit name length in header [#8313](https://github.com/diaspora/diaspora/pull/8313)
|
||||
* Fix fallback avatar in hovercards [#8316](https://github.com/diaspora/diaspora/pull/8316)
|
||||
* Use old person private key for export if relayable author migrated away [#8310](https://github.com/diaspora/diaspora/pull/8310)
|
||||
|
||||
## Features
|
||||
* Add tags to tumblr posts [#8244](https://github.com/diaspora/diaspora/pull/8244)
|
||||
* Add blocks to the archive export [#8263](https://github.com/diaspora/diaspora/pull/8263)
|
||||
* Allow points and dashes in the username [#8266](https://github.com/diaspora/diaspora/pull/8266)
|
||||
* Add support for footnotes in markdown [#8277](https://github.com/diaspora/diaspora/pull/8277)
|
||||
* Send `AccountMigration` if receiving message to a migrated account [#8288](https://github.com/diaspora/diaspora/pull/8288)
|
||||
* Add podmin mail address to the footer [#8242](https://github.com/diaspora/diaspora/pull/8242)
|
||||
* Add username to password-reset mail [#8037](https://github.com/diaspora/diaspora/pull/8037)
|
||||
* Resend account migration and deletion for closed recipients [#8309](https://github.com/diaspora/diaspora/pull/8309)
|
||||
* Add sharing status to hovercards [#8317](https://github.com/diaspora/diaspora/pull/8317)
|
||||
* Migrate photo URLs and cleanup old uploaded photos [#8314](https://github.com/diaspora/diaspora/pull/8314)
|
||||
|
||||
# 0.7.15.0
|
||||
|
||||
## Refactor
|
||||
|
|
|
|||
107
Gemfile
107
Gemfile
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
source "https://rubygems.org"
|
||||
|
||||
gem "rails", "5.2.5"
|
||||
gem "rails", "5.2.6.2"
|
||||
|
||||
# Legacy Rails features, remove me!
|
||||
# responders (class level)
|
||||
|
|
@ -15,8 +15,8 @@ gem "unicorn-worker-killer", "0.4.5"
|
|||
|
||||
# Federation
|
||||
|
||||
gem "diaspora_federation-json_schema", "0.2.6"
|
||||
gem "diaspora_federation-rails", "0.2.6"
|
||||
gem "diaspora_federation-json_schema", "0.2.7"
|
||||
gem "diaspora_federation-rails", "0.2.7"
|
||||
|
||||
# API and JSON
|
||||
|
||||
|
|
@ -26,10 +26,10 @@ gem "json-schema", "2.8.1"
|
|||
|
||||
# Authentication
|
||||
|
||||
gem "devise", "4.7.3"
|
||||
gem "devise-two-factor", "4.0.0"
|
||||
gem "devise", "4.8.0"
|
||||
gem "devise_lastseenable", "0.0.6"
|
||||
gem "rqrcode", "1.1.2"
|
||||
gem "devise-two-factor", "4.0.1"
|
||||
gem "rqrcode", "2.1.0"
|
||||
|
||||
# Captcha
|
||||
|
||||
|
|
@ -37,8 +37,8 @@ gem "simple_captcha2", "0.5.0", require: "simple_captcha"
|
|||
|
||||
# Background processing
|
||||
|
||||
gem "redis", "4.2.5"
|
||||
gem "sidekiq", "6.2.1"
|
||||
gem "redis", "4.5.1"
|
||||
gem "sidekiq", "6.2.2"
|
||||
|
||||
# Scheduled processing
|
||||
|
||||
|
|
@ -46,12 +46,12 @@ gem "sidekiq-cron", "1.2.0"
|
|||
|
||||
# Compression
|
||||
|
||||
gem "uglifier", "4.2.0"
|
||||
gem "terser", "1.1.7"
|
||||
|
||||
# Configuration
|
||||
|
||||
gem "configurate", "0.5.0"
|
||||
gem "toml-rb", "2.0.1"
|
||||
gem "toml-rb", "2.1.0"
|
||||
|
||||
# Cross-origin resource sharing
|
||||
|
||||
|
|
@ -59,12 +59,12 @@ gem "rack-cors", "1.1.1", require: "rack/cors"
|
|||
|
||||
# CSS
|
||||
|
||||
gem "autoprefixer-rails", "10.2.4.0"
|
||||
gem "autoprefixer-rails", "10.3.3.0"
|
||||
gem "bootstrap-sass", "3.4.1"
|
||||
gem "bootstrap-switch-rails", "3.3.3" # 3.3.4 and 3.3.5 is broken, see https://github.com/Bttstrp/bootstrap-switch/issues/691
|
||||
gem "compass-rails", "3.1.0"
|
||||
gem "sass-rails", "5.0.7"
|
||||
gem "sprockets-rails", "3.2.1"
|
||||
gem "sprockets-rails", "3.2.2"
|
||||
|
||||
# Database
|
||||
|
||||
|
|
@ -75,14 +75,13 @@ group :postgresql, optional: true do
|
|||
gem "pg", "1.2.3"
|
||||
end
|
||||
|
||||
|
||||
gem "activerecord-import", "1.0.4"
|
||||
gem "activerecord-import", "1.1.0"
|
||||
|
||||
# File uploading
|
||||
|
||||
gem "carrierwave", "1.3.2"
|
||||
gem "fog-aws", "3.5.2"
|
||||
gem "mini_magick", "4.10.1"
|
||||
gem "carrierwave", "2.2.2"
|
||||
gem "fog-aws", "3.12.0"
|
||||
gem "mini_magick", "4.11.0"
|
||||
|
||||
# GUID generation
|
||||
gem "uuid", "2.3.9"
|
||||
|
|
@ -93,21 +92,22 @@ gem "entypo-rails", "3.0.0"
|
|||
|
||||
# JavaScript
|
||||
|
||||
gem "handlebars_assets", "0.23.8"
|
||||
gem "jquery-rails", "4.3.5"
|
||||
gem "js-routes", "1.4.9"
|
||||
gem "handlebars_assets", "0.23.9"
|
||||
gem "jquery-rails", "4.4.0"
|
||||
gem "js-routes", "2.1.2"
|
||||
gem "js_image_paths", "0.1.1"
|
||||
|
||||
source "https://gems.diasporafoundation.org" do
|
||||
gem "rails-assets-jquery", "3.4.1" # Should be kept in sync with jquery-rails
|
||||
gem "rails-assets-jquery", "3.5.1" # Should be kept in sync with jquery-rails
|
||||
gem "rails-assets-jquery.ui", "1.11.4"
|
||||
|
||||
gem "rails-assets-highlightjs", "9.12.0"
|
||||
gem "rails-assets-markdown-it", "8.4.2"
|
||||
gem "rails-assets-markdown-it-hashtag", "0.4.0"
|
||||
gem "rails-assets-markdown-it-diaspora-mention", "1.2.0"
|
||||
gem "rails-assets-markdown-it-sanitizer", "0.4.3"
|
||||
gem "rails-assets-markdown-it-footnote", "3.0.3"
|
||||
gem "rails-assets-markdown-it-hashtag", "0.4.0"
|
||||
gem "rails-assets-markdown-it--markdown-it-for-inline", "0.1.1"
|
||||
gem "rails-assets-markdown-it-sanitizer", "0.4.3"
|
||||
gem "rails-assets-markdown-it-sub", "1.0.0"
|
||||
gem "rails-assets-markdown-it-sup", "1.0.0"
|
||||
|
||||
|
|
@ -139,14 +139,14 @@ gem "rails-i18n", "5.1.3"
|
|||
gem "markerb", "1.1.0"
|
||||
|
||||
# Map
|
||||
gem "leaflet-rails", "1.6.0"
|
||||
gem "leaflet-rails", "1.7.0"
|
||||
|
||||
# Parsing
|
||||
|
||||
gem "nokogiri", "1.11.3"
|
||||
gem "open_graph_reader", "0.7.1" # also update User-Agent in features/support/webmock.rb and open_graph_cache_spec.rb
|
||||
gem "nokogiri", "1.12.5"
|
||||
gem "open_graph_reader", "0.7.2" # also update User-Agent in features/support/webmock.rb and open_graph_cache_spec.rb
|
||||
gem "redcarpet", "3.5.1"
|
||||
gem "ruby-oembed", "0.12.0"
|
||||
gem "ruby-oembed", "0.15.0"
|
||||
gem "twitter-text", "1.14.7"
|
||||
|
||||
# RTL support
|
||||
|
|
@ -155,18 +155,19 @@ gem "string-direction", "1.2.2"
|
|||
|
||||
# Security Headers
|
||||
|
||||
gem "secure_headers", "6.3.2"
|
||||
gem "secure_headers", "6.3.3"
|
||||
|
||||
# Services
|
||||
|
||||
gem "omniauth", "1.9.1"
|
||||
gem "omniauth-tumblr", "1.2"
|
||||
gem "omniauth-twitter", "1.4.0"
|
||||
gem "omniauth-wordpress", "0.2.2"
|
||||
gem "twitter", "7.0.0"
|
||||
gem "omniauth", "2.0.4"
|
||||
gem "omniauth-rails_csrf_protection", "1.0.0"
|
||||
gem "omniauth-tumblr", "1.2"
|
||||
gem "omniauth-twitter", "1.4.0"
|
||||
gem "omniauth-wordpress", "0.2.2"
|
||||
gem "twitter", "7.0.0"
|
||||
|
||||
# OpenID Connect
|
||||
gem "openid_connect", "1.1.8"
|
||||
gem "openid_connect", "1.3.0"
|
||||
|
||||
# Serializers
|
||||
|
||||
|
|
@ -178,23 +179,23 @@ gem "rails-assets-diaspora_jsxc", "0.1.5.develop.7", source: "https://gems.diasp
|
|||
|
||||
# Tags
|
||||
|
||||
gem "acts-as-taggable-on", "6.5.0"
|
||||
gem "acts-as-taggable-on", "8.1.0"
|
||||
|
||||
# URIs and HTTP
|
||||
|
||||
gem "addressable", "2.7.0", require: "addressable/uri"
|
||||
gem "faraday", "0.15.4"
|
||||
gem "faraday_middleware", "0.13.1"
|
||||
gem "faraday-cookie_jar", "0.0.6"
|
||||
gem "addressable", "2.8.0", require: "addressable/uri"
|
||||
gem "faraday", "0.17.4"
|
||||
gem "faraday-cookie_jar", "0.0.7"
|
||||
gem "faraday_middleware", "0.14.0"
|
||||
gem "typhoeus", "1.4.0"
|
||||
|
||||
# Views
|
||||
|
||||
gem "gon", "6.3.2"
|
||||
gem "hamlit", "2.14.6"
|
||||
gem "gon", "6.4.0"
|
||||
gem "hamlit", "2.15.1"
|
||||
gem "mobile-fu", "1.4.0"
|
||||
gem "rails-timeago", "2.18.0"
|
||||
gem "will_paginate", "3.3.0"
|
||||
gem "rails-timeago", "2.19.1"
|
||||
gem "will_paginate", "3.3.1"
|
||||
|
||||
# Logging
|
||||
|
||||
|
|
@ -202,7 +203,7 @@ gem "logging-rails", "0.6.0", require: "logging/rails"
|
|||
|
||||
# Reading and writing zip files
|
||||
|
||||
gem "rubyzip", "2.3.0", require: "zip"
|
||||
gem "rubyzip", "2.3.2", require: "zip"
|
||||
|
||||
# Prevent occasions where minitest is not bundled in
|
||||
# packaged versions of ruby. See following issues/prs:
|
||||
|
|
@ -237,12 +238,12 @@ group :production do # we don"t install these on travis to speed up test runs
|
|||
|
||||
# Third party asset hosting
|
||||
|
||||
gem "asset_sync", "2.11.0", require: false
|
||||
gem "asset_sync", "2.15.0", require: false
|
||||
end
|
||||
|
||||
group :development do
|
||||
# Linters
|
||||
gem "haml_lint", "0.37.0", require: false
|
||||
gem "haml_lint", "0.37.1", require: false
|
||||
gem "pronto", "0.11.0", require: false
|
||||
gem "pronto-eslint", "0.11.0", require: false
|
||||
gem "pronto-haml", "0.11.0", require: false
|
||||
|
|
@ -275,7 +276,7 @@ group :test do
|
|||
|
||||
gem "apparition", "0.6.0"
|
||||
gem "capybara", "3.35.3"
|
||||
gem "database_cleaner-active_record", "1.8.0"
|
||||
gem "database_cleaner-active_record", "2.0.1"
|
||||
|
||||
gem "cucumber-api-steps", "0.14", require: false
|
||||
|
||||
|
|
@ -284,25 +285,25 @@ group :test do
|
|||
gem "factory_girl_rails", "4.9.0"
|
||||
gem "shoulda-matchers", "4.5.1"
|
||||
gem "timecop", "0.9.4"
|
||||
gem "webmock", "3.12.2", require: false
|
||||
gem "webmock", "3.14.0", require: false
|
||||
|
||||
gem "diaspora_federation-test", "0.2.6"
|
||||
gem "diaspora_federation-test", "0.2.7"
|
||||
end
|
||||
|
||||
group :development, :test do
|
||||
# RSpec (unit tests, some integration tests)
|
||||
gem "rspec-rails", "5.0.1"
|
||||
gem "rspec-rails", "5.0.2"
|
||||
|
||||
# Cucumber (integration tests)
|
||||
gem "cucumber-rails", "2.3.0", require: false
|
||||
gem "cucumber-rails", "2.4.0", require: false
|
||||
|
||||
# Jasmine (client side application tests (JS))
|
||||
gem "chrome_remote", "0.3.0"
|
||||
gem "jasmine", "3.7.0"
|
||||
gem "jasmine", "3.10.0"
|
||||
gem "jasmine-jquery-rails", "2.0.3"
|
||||
gem "rails-assets-jasmine-ajax", "4.0.0", source: "https://gems.diasporafoundation.org"
|
||||
gem "sinon-rails", "1.15.0"
|
||||
|
||||
# For `assigns` in controller specs
|
||||
gem "rails-controller-testing", "1.0.4"
|
||||
gem "rails-controller-testing", "1.0.5"
|
||||
end
|
||||
|
|
|
|||
500
Gemfile.lock
500
Gemfile.lock
|
|
@ -2,25 +2,25 @@ GEM
|
|||
remote: https://rubygems.org/
|
||||
remote: https://gems.diasporafoundation.org/
|
||||
specs:
|
||||
actioncable (5.2.5)
|
||||
actionpack (= 5.2.5)
|
||||
actioncable (5.2.6.2)
|
||||
actionpack (= 5.2.6.2)
|
||||
nio4r (~> 2.0)
|
||||
websocket-driver (>= 0.6.1)
|
||||
actionmailer (5.2.5)
|
||||
actionpack (= 5.2.5)
|
||||
actionview (= 5.2.5)
|
||||
activejob (= 5.2.5)
|
||||
actionmailer (5.2.6.2)
|
||||
actionpack (= 5.2.6.2)
|
||||
actionview (= 5.2.6.2)
|
||||
activejob (= 5.2.6.2)
|
||||
mail (~> 2.5, >= 2.5.4)
|
||||
rails-dom-testing (~> 2.0)
|
||||
actionpack (5.2.5)
|
||||
actionview (= 5.2.5)
|
||||
activesupport (= 5.2.5)
|
||||
actionpack (5.2.6.2)
|
||||
actionview (= 5.2.6.2)
|
||||
activesupport (= 5.2.6.2)
|
||||
rack (~> 2.0, >= 2.0.8)
|
||||
rack-test (>= 0.6.3)
|
||||
rails-dom-testing (~> 2.0)
|
||||
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
||||
actionview (5.2.5)
|
||||
activesupport (= 5.2.5)
|
||||
actionview (5.2.6.2)
|
||||
activesupport (= 5.2.6.2)
|
||||
builder (~> 3.1)
|
||||
erubi (~> 1.4)
|
||||
rails-dom-testing (~> 2.0)
|
||||
|
|
@ -28,40 +28,40 @@ GEM
|
|||
active_model_serializers (0.9.7)
|
||||
activemodel (>= 3.2)
|
||||
concurrent-ruby (~> 1.0)
|
||||
activejob (5.2.5)
|
||||
activesupport (= 5.2.5)
|
||||
activejob (5.2.6.2)
|
||||
activesupport (= 5.2.6.2)
|
||||
globalid (>= 0.3.6)
|
||||
activemodel (5.2.5)
|
||||
activesupport (= 5.2.5)
|
||||
activerecord (5.2.5)
|
||||
activemodel (= 5.2.5)
|
||||
activesupport (= 5.2.5)
|
||||
activemodel (5.2.6.2)
|
||||
activesupport (= 5.2.6.2)
|
||||
activerecord (5.2.6.2)
|
||||
activemodel (= 5.2.6.2)
|
||||
activesupport (= 5.2.6.2)
|
||||
arel (>= 9.0)
|
||||
activerecord-import (1.0.4)
|
||||
activerecord-import (1.1.0)
|
||||
activerecord (>= 3.2)
|
||||
activestorage (5.2.5)
|
||||
actionpack (= 5.2.5)
|
||||
activerecord (= 5.2.5)
|
||||
activestorage (5.2.6.2)
|
||||
actionpack (= 5.2.6.2)
|
||||
activerecord (= 5.2.6.2)
|
||||
marcel (~> 1.0.0)
|
||||
activesupport (5.2.5)
|
||||
activesupport (5.2.6.2)
|
||||
concurrent-ruby (~> 1.0, >= 1.0.2)
|
||||
i18n (>= 0.7, < 2)
|
||||
minitest (~> 5.1)
|
||||
tzinfo (~> 1.1)
|
||||
acts-as-taggable-on (6.5.0)
|
||||
activerecord (>= 5.0, < 6.1)
|
||||
acts-as-taggable-on (8.1.0)
|
||||
activerecord (>= 5.0, < 6.2)
|
||||
acts_as_api (1.0.1)
|
||||
activemodel (>= 3.0.0)
|
||||
activesupport (>= 3.0.0)
|
||||
rack (>= 1.1.0)
|
||||
addressable (2.7.0)
|
||||
addressable (2.8.0)
|
||||
public_suffix (>= 2.0.2, < 5.0)
|
||||
aes_key_wrap (1.1.0)
|
||||
apparition (0.6.0)
|
||||
capybara (~> 3.13, < 4)
|
||||
websocket-driver (>= 0.6.5)
|
||||
arel (9.0.0)
|
||||
asset_sync (2.11.0)
|
||||
asset_sync (2.15.0)
|
||||
activemodel (>= 4.1.0)
|
||||
fog-core
|
||||
mime-types (>= 2.99)
|
||||
|
|
@ -70,10 +70,10 @@ GEM
|
|||
attr_encrypted (3.1.0)
|
||||
encryptor (~> 3.0.0)
|
||||
attr_required (1.0.1)
|
||||
autoprefixer-rails (10.2.4.0)
|
||||
execjs
|
||||
autoprefixer-rails (10.3.3.0)
|
||||
execjs (~> 2)
|
||||
bcrypt (3.1.16)
|
||||
bindata (2.4.8)
|
||||
bindata (2.4.10)
|
||||
bootstrap-sass (3.4.1)
|
||||
autoprefixer-rails (>= 5.2.1)
|
||||
sassc (>= 2.0.0)
|
||||
|
|
@ -89,10 +89,13 @@ GEM
|
|||
rack-test (>= 0.6.3)
|
||||
regexp_parser (>= 1.5, < 3.0)
|
||||
xpath (~> 3.2)
|
||||
carrierwave (1.3.2)
|
||||
activemodel (>= 4.0.0)
|
||||
activesupport (>= 4.0.0)
|
||||
mime-types (>= 1.16)
|
||||
carrierwave (2.2.2)
|
||||
activemodel (>= 5.0.0)
|
||||
activesupport (>= 5.0.0)
|
||||
addressable (~> 2.6)
|
||||
image_processing (~> 1.1)
|
||||
marcel (~> 1.0.0)
|
||||
mini_mime (>= 0.1.3)
|
||||
ssrf_filter (~> 1.0)
|
||||
celluloid (0.17.4)
|
||||
celluloid-essentials
|
||||
|
|
@ -136,63 +139,65 @@ GEM
|
|||
compass (~> 1.0.0)
|
||||
sass-rails (< 5.1)
|
||||
sprockets (< 4.0)
|
||||
concurrent-ruby (1.1.8)
|
||||
concurrent-ruby (1.1.9)
|
||||
configurate (0.5.0)
|
||||
connection_pool (2.2.3)
|
||||
connection_pool (2.2.5)
|
||||
crack (0.4.5)
|
||||
rexml
|
||||
crass (1.0.6)
|
||||
cucumber (5.3.0)
|
||||
cucumber (7.1.0)
|
||||
builder (~> 3.2, >= 3.2.4)
|
||||
cucumber-core (~> 8.0, >= 8.0.1)
|
||||
cucumber-create-meta (~> 2.0, >= 2.0.2)
|
||||
cucumber-cucumber-expressions (~> 10.3, >= 10.3.0)
|
||||
cucumber-gherkin (~> 15.0, >= 15.0.2)
|
||||
cucumber-html-formatter (~> 9.0, >= 9.0.0)
|
||||
cucumber-messages (~> 13.1, >= 13.1.0)
|
||||
cucumber-wire (~> 4.0, >= 4.0.1)
|
||||
cucumber-core (~> 10.1, >= 10.1.0)
|
||||
cucumber-create-meta (~> 6.0, >= 6.0.1)
|
||||
cucumber-cucumber-expressions (~> 14.0, >= 14.0.0)
|
||||
cucumber-gherkin (~> 22.0, >= 22.0.0)
|
||||
cucumber-html-formatter (~> 17.0, >= 17.0.0)
|
||||
cucumber-messages (~> 17.1, >= 17.1.1)
|
||||
cucumber-wire (~> 6.2, >= 6.2.0)
|
||||
diff-lcs (~> 1.4, >= 1.4.4)
|
||||
mime-types (~> 3.3, >= 3.3.1)
|
||||
multi_test (~> 0.1, >= 0.1.2)
|
||||
sys-uname (~> 1.2, >= 1.2.1)
|
||||
sys-uname (~> 1.2, >= 1.2.2)
|
||||
cucumber-api-steps (0.14.0)
|
||||
cucumber (>= 2.0.2)
|
||||
jsonpath (>= 0.1.2)
|
||||
cucumber-core (8.0.1)
|
||||
cucumber-gherkin (~> 15.0, >= 15.0.2)
|
||||
cucumber-messages (~> 13.0, >= 13.0.1)
|
||||
cucumber-tag-expressions (~> 2.0, >= 2.0.4)
|
||||
cucumber-create-meta (2.0.4)
|
||||
cucumber-messages (~> 13.1, >= 13.1.0)
|
||||
sys-uname (~> 1.2, >= 1.2.1)
|
||||
cucumber-cucumber-expressions (10.3.0)
|
||||
cucumber-gherkin (15.0.2)
|
||||
cucumber-messages (~> 13.0, >= 13.0.1)
|
||||
cucumber-html-formatter (9.0.0)
|
||||
cucumber-messages (~> 13.0, >= 13.0.1)
|
||||
cucumber-messages (13.2.1)
|
||||
protobuf-cucumber (~> 3.10, >= 3.10.8)
|
||||
cucumber-rails (2.3.0)
|
||||
cucumber-core (10.1.0)
|
||||
cucumber-gherkin (~> 22.0, >= 22.0.0)
|
||||
cucumber-messages (~> 17.1, >= 17.1.1)
|
||||
cucumber-tag-expressions (~> 4.0, >= 4.0.2)
|
||||
cucumber-create-meta (6.0.2)
|
||||
cucumber-messages (~> 17.1, >= 17.1.1)
|
||||
sys-uname (~> 1.2, >= 1.2.2)
|
||||
cucumber-cucumber-expressions (14.0.0)
|
||||
cucumber-gherkin (22.0.0)
|
||||
cucumber-messages (~> 17.1, >= 17.1.1)
|
||||
cucumber-html-formatter (17.0.0)
|
||||
cucumber-messages (~> 17.1, >= 17.1.0)
|
||||
cucumber-messages (17.1.1)
|
||||
cucumber-rails (2.4.0)
|
||||
capybara (>= 2.18, < 4)
|
||||
cucumber (>= 3.0.2, < 6)
|
||||
mime-types (~> 3.2)
|
||||
nokogiri (~> 1.8)
|
||||
cucumber (>= 3.2, < 8)
|
||||
mime-types (~> 3.3)
|
||||
nokogiri (~> 1.10)
|
||||
railties (>= 5.0, < 7)
|
||||
cucumber-tag-expressions (2.0.4)
|
||||
cucumber-wire (4.0.1)
|
||||
cucumber-core (~> 8.0, >= 8.0.1)
|
||||
cucumber-cucumber-expressions (~> 10.3, >= 10.3.0)
|
||||
cucumber-messages (~> 13.0, >= 13.0.1)
|
||||
database_cleaner (1.8.5)
|
||||
database_cleaner-active_record (1.8.0)
|
||||
activerecord
|
||||
database_cleaner (~> 1.8.0)
|
||||
devise (4.7.3)
|
||||
rexml (~> 3.0)
|
||||
webrick (~> 1.7)
|
||||
cucumber-tag-expressions (4.1.0)
|
||||
cucumber-wire (6.2.0)
|
||||
cucumber-core (~> 10.1, >= 10.1.0)
|
||||
cucumber-cucumber-expressions (~> 14.0, >= 14.0.0)
|
||||
cucumber-messages (~> 17.1, >= 17.1.1)
|
||||
database_cleaner-active_record (2.0.1)
|
||||
activerecord (>= 5.a)
|
||||
database_cleaner-core (~> 2.0.0)
|
||||
database_cleaner-core (2.0.1)
|
||||
devise (4.8.0)
|
||||
bcrypt (~> 3.0)
|
||||
orm_adapter (~> 0.1)
|
||||
railties (>= 4.1.0)
|
||||
responders
|
||||
warden (~> 1.2.3)
|
||||
devise-two-factor (4.0.0)
|
||||
devise-two-factor (4.0.1)
|
||||
activesupport (< 6.2)
|
||||
attr_encrypted (>= 1.3, < 4, != 2)
|
||||
devise (~> 4.0)
|
||||
|
|
@ -202,22 +207,22 @@ GEM
|
|||
devise
|
||||
rails (>= 3.0.4)
|
||||
diaspora-prosody-config (0.0.7)
|
||||
diaspora_federation (0.2.6)
|
||||
faraday (>= 0.9.0, < 0.16.0)
|
||||
faraday_middleware (>= 0.10.0, < 0.14.0)
|
||||
diaspora_federation (0.2.7)
|
||||
faraday (>= 0.9.0, < 1.0)
|
||||
faraday_middleware (>= 0.10.0, < 1.0)
|
||||
nokogiri (~> 1.6, >= 1.6.8)
|
||||
typhoeus (~> 1.0)
|
||||
valid (~> 1.0)
|
||||
diaspora_federation-json_schema (0.2.6)
|
||||
diaspora_federation-rails (0.2.6)
|
||||
diaspora_federation-json_schema (0.2.7)
|
||||
diaspora_federation-rails (0.2.7)
|
||||
actionpack (>= 4.2, < 6)
|
||||
diaspora_federation (= 0.2.6)
|
||||
diaspora_federation-test (0.2.6)
|
||||
diaspora_federation (= 0.2.6)
|
||||
diaspora_federation (= 0.2.7)
|
||||
diaspora_federation-test (0.2.7)
|
||||
diaspora_federation (= 0.2.7)
|
||||
fabrication (~> 2.16)
|
||||
uuid (~> 2.3, >= 2.3.8)
|
||||
diff-lcs (1.4.4)
|
||||
docile (1.3.5)
|
||||
docile (1.4.0)
|
||||
domain_name (0.5.20190701)
|
||||
unf (>= 0.0.5, < 1.0.0)
|
||||
encryptor (3.0.0)
|
||||
|
|
@ -229,12 +234,12 @@ GEM
|
|||
execjs
|
||||
multi_json (>= 1.3)
|
||||
rake
|
||||
et-orbi (1.2.4)
|
||||
et-orbi (1.2.6)
|
||||
tzinfo
|
||||
ethon (0.12.0)
|
||||
ffi (>= 1.3.0)
|
||||
excon (0.79.0)
|
||||
execjs (2.7.0)
|
||||
ethon (0.15.0)
|
||||
ffi (>= 1.15.0)
|
||||
excon (0.88.0)
|
||||
execjs (2.8.1)
|
||||
eye (0.10.0)
|
||||
celluloid (~> 0.17.3)
|
||||
celluloid-io (~> 0.17.0)
|
||||
|
|
@ -247,14 +252,14 @@ GEM
|
|||
factory_girl_rails (4.9.0)
|
||||
factory_girl (~> 4.9.0)
|
||||
railties (>= 3.0.0)
|
||||
faraday (0.15.4)
|
||||
faraday (0.17.4)
|
||||
multipart-post (>= 1.2, < 3)
|
||||
faraday-cookie_jar (0.0.6)
|
||||
faraday (>= 0.7.4)
|
||||
faraday-cookie_jar (0.0.7)
|
||||
faraday (>= 0.8.0)
|
||||
http-cookie (~> 1.0.0)
|
||||
faraday_middleware (0.13.1)
|
||||
faraday_middleware (0.14.0)
|
||||
faraday (>= 0.7.4, < 1.0)
|
||||
ffi (1.15.0)
|
||||
ffi (1.15.4)
|
||||
ffi-compiler (1.0.1)
|
||||
ffi (>= 1.0.0)
|
||||
rake
|
||||
|
|
@ -262,12 +267,12 @@ GEM
|
|||
activerecord (>= 2)
|
||||
activesupport (>= 2)
|
||||
hashdiff
|
||||
fog-aws (3.5.2)
|
||||
fog-aws (3.12.0)
|
||||
fog-core (~> 2.1)
|
||||
fog-json (~> 1.1)
|
||||
fog-xml (~> 0.1)
|
||||
ipaddress (~> 0.8)
|
||||
fog-core (2.2.3)
|
||||
fog-core (2.2.4)
|
||||
builder
|
||||
excon (~> 0.71)
|
||||
formatador (~> 0.2)
|
||||
|
|
@ -275,11 +280,11 @@ GEM
|
|||
fog-json (1.2.0)
|
||||
fog-core
|
||||
multi_json (~> 1.10)
|
||||
fog-xml (0.1.3)
|
||||
fog-xml (0.1.4)
|
||||
fog-core
|
||||
nokogiri (>= 1.5.11, < 2.0.0)
|
||||
formatador (0.2.5)
|
||||
fugit (1.4.4)
|
||||
formatador (0.3.0)
|
||||
fugit (1.5.2)
|
||||
et-orbi (~> 1.1, >= 1.1.8)
|
||||
raabro (~> 1.4)
|
||||
fuubar (2.5.1)
|
||||
|
|
@ -290,27 +295,27 @@ GEM
|
|||
gitlab (4.17.0)
|
||||
httparty (~> 0.18)
|
||||
terminal-table (~> 1.5, >= 1.5.1)
|
||||
globalid (0.4.2)
|
||||
activesupport (>= 4.2.0)
|
||||
gon (6.3.2)
|
||||
globalid (1.0.0)
|
||||
activesupport (>= 5.0)
|
||||
gon (6.4.0)
|
||||
actionpack (>= 3.0.20)
|
||||
i18n (>= 0.7)
|
||||
multi_json
|
||||
request_store (>= 1.0)
|
||||
haml (5.2.1)
|
||||
haml (5.2.2)
|
||||
temple (>= 0.8.0)
|
||||
tilt
|
||||
haml_lint (0.37.0)
|
||||
haml_lint (0.37.1)
|
||||
haml (>= 4.0, < 5.3)
|
||||
parallel (~> 1.10)
|
||||
rainbow
|
||||
rubocop (>= 0.50.0)
|
||||
sysexits (~> 1.1)
|
||||
hamlit (2.14.6)
|
||||
hamlit (2.15.1)
|
||||
temple (>= 0.8.2)
|
||||
thor
|
||||
tilt
|
||||
handlebars_assets (0.23.8)
|
||||
handlebars_assets (0.23.9)
|
||||
execjs (~> 2.0)
|
||||
sprockets (>= 2.0.0)
|
||||
tilt (>= 1.2)
|
||||
|
|
@ -321,18 +326,18 @@ GEM
|
|||
http-cookie (~> 1.0)
|
||||
http-form_data (~> 2.2)
|
||||
http-parser (~> 1.2.0)
|
||||
http-cookie (1.0.3)
|
||||
http-cookie (1.0.4)
|
||||
domain_name (~> 0.5)
|
||||
http-form_data (2.3.0)
|
||||
http-parser (1.2.3)
|
||||
ffi-compiler (>= 1.0, < 2.0)
|
||||
http_accept_language (2.1.1)
|
||||
http_parser.rb (0.6.0)
|
||||
httparty (0.18.1)
|
||||
httparty (0.20.0)
|
||||
mime-types (~> 3.0)
|
||||
multi_xml (>= 0.5.2)
|
||||
httpclient (2.8.3)
|
||||
i18n (1.8.10)
|
||||
i18n (1.9.1)
|
||||
concurrent-ruby (~> 1.0)
|
||||
i18n-inflector (2.6.7)
|
||||
i18n (>= 0.4.1)
|
||||
|
|
@ -340,21 +345,24 @@ GEM
|
|||
actionpack (>= 3.0.0)
|
||||
i18n-inflector (~> 2.6)
|
||||
railties (>= 3.0.0)
|
||||
image_processing (1.12.1)
|
||||
mini_magick (>= 4.9.5, < 5)
|
||||
ruby-vips (>= 2.0.17, < 3)
|
||||
ipaddress (0.8.3)
|
||||
jasmine (3.7.0)
|
||||
jasmine-core (~> 3.7.0)
|
||||
jasmine (3.10.0)
|
||||
jasmine-core (~> 3.10.0)
|
||||
phantomjs
|
||||
rack (>= 1.2.1)
|
||||
rack (>= 2.1.4)
|
||||
rake
|
||||
jasmine-core (3.7.1)
|
||||
webrick
|
||||
jasmine-core (3.10.1)
|
||||
jasmine-jquery-rails (2.0.3)
|
||||
jquery-rails (4.3.5)
|
||||
jquery-rails (4.4.0)
|
||||
rails-dom-testing (>= 1, < 3)
|
||||
railties (>= 4.2.0)
|
||||
thor (>= 0.14, < 2.0)
|
||||
js-routes (1.4.9)
|
||||
js-routes (2.1.2)
|
||||
railties (>= 4)
|
||||
sprockets-rails
|
||||
js_image_paths (0.1.1)
|
||||
rails (>= 4.0, < 6.0)
|
||||
sprockets (>= 3.0.0)
|
||||
|
|
@ -370,10 +378,10 @@ GEM
|
|||
rspec
|
||||
jsonpath (1.1.0)
|
||||
multi_json
|
||||
jwt (2.2.2)
|
||||
kgio (2.11.3)
|
||||
kostya-sigar (2.0.8)
|
||||
leaflet-rails (1.6.0)
|
||||
jwt (2.3.0)
|
||||
kgio (2.11.4)
|
||||
kostya-sigar (2.0.10)
|
||||
leaflet-rails (1.7.0)
|
||||
rails (>= 4.2.0)
|
||||
listen (3.5.1)
|
||||
rb-fsevent (~> 0.10, >= 0.10.3)
|
||||
|
|
@ -384,27 +392,26 @@ GEM
|
|||
multi_json (~> 1.14)
|
||||
logging-rails (0.6.0)
|
||||
logging (>= 1.8)
|
||||
loofah (2.9.1)
|
||||
loofah (2.14.0)
|
||||
crass (~> 1.0.2)
|
||||
nokogiri (>= 1.5.9)
|
||||
macaddr (1.7.2)
|
||||
systemu (~> 2.6.5)
|
||||
mail (2.7.1)
|
||||
mini_mime (>= 0.1.1)
|
||||
marcel (1.0.1)
|
||||
marcel (1.0.2)
|
||||
markdown-it-html5-embed (1.0.0)
|
||||
markerb (1.1.0)
|
||||
memoizable (0.4.2)
|
||||
thread_safe (~> 0.3, >= 0.3.1)
|
||||
method_source (1.0.0)
|
||||
middleware (0.1.0)
|
||||
mime-types (3.3.1)
|
||||
mime-types-data (~> 3.2015)
|
||||
mime-types-data (3.2021.0225)
|
||||
mini_magick (4.10.1)
|
||||
mini_mime (1.1.0)
|
||||
mini_portile2 (2.5.0)
|
||||
minitest (5.14.4)
|
||||
mime-types-data (3.2021.0901)
|
||||
mini_magick (4.11.0)
|
||||
mini_mime (1.1.2)
|
||||
mini_portile2 (2.6.1)
|
||||
minitest (5.15.0)
|
||||
mobile-fu (1.4.0)
|
||||
rack-mobile-detect
|
||||
rails
|
||||
|
|
@ -414,29 +421,33 @@ GEM
|
|||
multipart-post (2.1.1)
|
||||
mysql2 (0.5.3)
|
||||
naught (1.1.0)
|
||||
nio4r (2.5.7)
|
||||
nokogiri (1.11.3)
|
||||
mini_portile2 (~> 2.5.0)
|
||||
nio4r (2.5.8)
|
||||
nokogiri (1.12.5)
|
||||
mini_portile2 (~> 2.6.1)
|
||||
racc (~> 1.4)
|
||||
oauth (0.5.6)
|
||||
oauth (0.5.7)
|
||||
oauth2 (1.4.7)
|
||||
faraday (>= 0.8, < 2.0)
|
||||
jwt (>= 1.0, < 3.0)
|
||||
multi_json (~> 1.3)
|
||||
multi_xml (~> 0.5)
|
||||
rack (>= 1.2, < 3)
|
||||
octokit (4.20.0)
|
||||
octokit (4.21.0)
|
||||
faraday (>= 0.9)
|
||||
sawyer (~> 0.8.0, >= 0.5.3)
|
||||
omniauth (1.9.1)
|
||||
omniauth (2.0.4)
|
||||
hashie (>= 3.4.6)
|
||||
rack (>= 1.6.2, < 3)
|
||||
rack-protection
|
||||
omniauth-oauth (1.2.0)
|
||||
oauth
|
||||
omniauth (>= 1.0, < 3)
|
||||
omniauth-oauth2 (1.7.1)
|
||||
omniauth-oauth2 (1.7.2)
|
||||
oauth2 (~> 1.4)
|
||||
omniauth (>= 1.9, < 3)
|
||||
omniauth-rails_csrf_protection (1.0.0)
|
||||
actionpack (>= 4.2)
|
||||
omniauth (~> 2.0)
|
||||
omniauth-tumblr (1.2)
|
||||
multi_json
|
||||
omniauth-oauth (~> 1.0)
|
||||
|
|
@ -445,10 +456,10 @@ GEM
|
|||
rack
|
||||
omniauth-wordpress (0.2.2)
|
||||
omniauth-oauth2 (>= 1.1.0)
|
||||
open_graph_reader (0.7.1)
|
||||
open_graph_reader (0.7.2)
|
||||
faraday (>= 0.9.0)
|
||||
nokogiri (~> 1.6)
|
||||
openid_connect (1.1.8)
|
||||
openid_connect (1.3.0)
|
||||
activemodel
|
||||
attr_required (>= 1.0.0)
|
||||
json-jwt (>= 1.5.0)
|
||||
|
|
@ -459,8 +470,8 @@ GEM
|
|||
validate_url
|
||||
webfinger (>= 1.0.1)
|
||||
orm_adapter (0.5.0)
|
||||
parallel (1.20.1)
|
||||
parser (3.0.1.0)
|
||||
parallel (1.21.0)
|
||||
parser (3.0.2.0)
|
||||
ast (~> 2.4.1)
|
||||
pg (1.2.3)
|
||||
phantomjs (2.1.1.0)
|
||||
|
|
@ -485,20 +496,15 @@ GEM
|
|||
pronto-scss (0.11.0)
|
||||
pronto (~> 0.11.0)
|
||||
scss_lint (~> 0.43, >= 0.43.0)
|
||||
protobuf-cucumber (3.10.8)
|
||||
activesupport (>= 3.2)
|
||||
middleware
|
||||
thor
|
||||
thread_safe
|
||||
pry (0.13.1)
|
||||
pry (0.14.1)
|
||||
coderay (~> 1.1)
|
||||
method_source (~> 1.0)
|
||||
pry-byebug (3.9.0)
|
||||
pry-byebug (3.8.0)
|
||||
byebug (~> 11.0)
|
||||
pry (~> 0.13.0)
|
||||
pry (~> 0.10)
|
||||
public_suffix (4.0.6)
|
||||
raabro (1.4.0)
|
||||
racc (1.5.2)
|
||||
racc (1.6.0)
|
||||
rack (2.2.3)
|
||||
rack-cors (1.1.1)
|
||||
rack (>= 2.0.0)
|
||||
|
|
@ -507,30 +513,32 @@ GEM
|
|||
activesupport
|
||||
rack-mobile-detect (0.4.0)
|
||||
rack
|
||||
rack-oauth2 (1.16.0)
|
||||
rack-oauth2 (1.19.0)
|
||||
activesupport
|
||||
attr_required
|
||||
httpclient
|
||||
json-jwt (>= 1.11.0)
|
||||
rack (>= 2.1.0)
|
||||
rack-piwik (0.3.0)
|
||||
rack-protection (2.1.0)
|
||||
rack
|
||||
rack-rewrite (1.5.1)
|
||||
rack-ssl (1.4.1)
|
||||
rack
|
||||
rack-test (1.1.0)
|
||||
rack (>= 1.0, < 3)
|
||||
rails (5.2.5)
|
||||
actioncable (= 5.2.5)
|
||||
actionmailer (= 5.2.5)
|
||||
actionpack (= 5.2.5)
|
||||
actionview (= 5.2.5)
|
||||
activejob (= 5.2.5)
|
||||
activemodel (= 5.2.5)
|
||||
activerecord (= 5.2.5)
|
||||
activestorage (= 5.2.5)
|
||||
activesupport (= 5.2.5)
|
||||
rails (5.2.6.2)
|
||||
actioncable (= 5.2.6.2)
|
||||
actionmailer (= 5.2.6.2)
|
||||
actionpack (= 5.2.6.2)
|
||||
actionview (= 5.2.6.2)
|
||||
activejob (= 5.2.6.2)
|
||||
activemodel (= 5.2.6.2)
|
||||
activerecord (= 5.2.6.2)
|
||||
activestorage (= 5.2.6.2)
|
||||
activesupport (= 5.2.6.2)
|
||||
bundler (>= 1.3.0)
|
||||
railties (= 5.2.5)
|
||||
railties (= 5.2.6.2)
|
||||
sprockets-rails (>= 2.0.0)
|
||||
rails-assets-autosize (4.0.2)
|
||||
rails-assets-backbone (1.3.3)
|
||||
|
|
@ -556,7 +564,7 @@ GEM
|
|||
rails-assets-jasmine (3.4.0)
|
||||
rails-assets-jasmine-ajax (4.0.0)
|
||||
rails-assets-jasmine (~> 3)
|
||||
rails-assets-jquery (3.4.1)
|
||||
rails-assets-jquery (3.5.1)
|
||||
rails-assets-jquery-colorbox (1.6.4)
|
||||
rails-assets-jquery (>= 1.3.2)
|
||||
rails-assets-jquery-fullscreen-plugin (0.5.0)
|
||||
|
|
@ -572,41 +580,42 @@ GEM
|
|||
rails-assets-markdown-it--markdown-it-for-inline (0.1.1)
|
||||
rails-assets-markdown-it (8.4.2)
|
||||
rails-assets-markdown-it-diaspora-mention (1.2.0)
|
||||
rails-assets-markdown-it-footnote (3.0.3)
|
||||
rails-assets-markdown-it-hashtag (0.4.0)
|
||||
rails-assets-markdown-it-sanitizer (0.4.3)
|
||||
rails-assets-markdown-it-sub (1.0.0)
|
||||
rails-assets-markdown-it-sup (1.0.0)
|
||||
rails-assets-underscore (1.9.1)
|
||||
rails-assets-utatti-perfect-scrollbar (1.4.0)
|
||||
rails-controller-testing (1.0.4)
|
||||
actionpack (>= 5.0.1.x)
|
||||
actionview (>= 5.0.1.x)
|
||||
activesupport (>= 5.0.1.x)
|
||||
rails-controller-testing (1.0.5)
|
||||
actionpack (>= 5.0.1.rc1)
|
||||
actionview (>= 5.0.1.rc1)
|
||||
activesupport (>= 5.0.1.rc1)
|
||||
rails-dom-testing (2.0.3)
|
||||
activesupport (>= 4.2.0)
|
||||
nokogiri (>= 1.6)
|
||||
rails-html-sanitizer (1.3.0)
|
||||
rails-html-sanitizer (1.4.2)
|
||||
loofah (~> 2.3)
|
||||
rails-i18n (5.1.3)
|
||||
i18n (>= 0.7, < 2)
|
||||
railties (>= 5.0, < 6)
|
||||
rails-timeago (2.18.0)
|
||||
rails-timeago (2.19.1)
|
||||
actionpack (>= 3.1)
|
||||
activesupport (>= 3.1)
|
||||
railties (5.2.5)
|
||||
actionpack (= 5.2.5)
|
||||
activesupport (= 5.2.5)
|
||||
railties (5.2.6.2)
|
||||
actionpack (= 5.2.6.2)
|
||||
activesupport (= 5.2.6.2)
|
||||
method_source
|
||||
rake (>= 0.8.7)
|
||||
thor (>= 0.19.0, < 2.0)
|
||||
rainbow (3.0.0)
|
||||
raindrops (0.19.1)
|
||||
raindrops (0.19.2)
|
||||
rake (12.3.3)
|
||||
rb-fsevent (0.10.4)
|
||||
rb-fsevent (0.11.0)
|
||||
rb-inotify (0.10.1)
|
||||
ffi (~> 1.0)
|
||||
redcarpet (3.5.1)
|
||||
redis (4.2.5)
|
||||
redis (4.5.1)
|
||||
regexp_parser (2.1.1)
|
||||
request_store (1.5.0)
|
||||
rack (>= 1.4)
|
||||
|
|
@ -615,10 +624,10 @@ GEM
|
|||
railties (>= 5.0)
|
||||
rexml (3.2.5)
|
||||
rotp (6.2.0)
|
||||
rqrcode (1.1.2)
|
||||
rqrcode (2.1.0)
|
||||
chunky_png (~> 1.0)
|
||||
rqrcode_core (~> 0.1)
|
||||
rqrcode_core (0.2.0)
|
||||
rqrcode_core (~> 1.0)
|
||||
rqrcode_core (1.2.0)
|
||||
rspec (3.10.0)
|
||||
rspec-core (~> 3.10.0)
|
||||
rspec-expectations (~> 3.10.0)
|
||||
|
|
@ -632,7 +641,7 @@ GEM
|
|||
rspec-mocks (3.10.2)
|
||||
diff-lcs (>= 1.2.0, < 2.0)
|
||||
rspec-support (~> 3.10.0)
|
||||
rspec-rails (5.0.1)
|
||||
rspec-rails (5.0.2)
|
||||
actionpack (>= 5.2)
|
||||
activesupport (>= 5.2)
|
||||
railties (>= 5.2)
|
||||
|
|
@ -640,7 +649,7 @@ GEM
|
|||
rspec-expectations (~> 3.10)
|
||||
rspec-mocks (~> 3.10)
|
||||
rspec-support (~> 3.10)
|
||||
rspec-support (3.10.2)
|
||||
rspec-support (3.10.3)
|
||||
rubocop (0.93.1)
|
||||
parallel (~> 1.10)
|
||||
parser (>= 2.7.1.5)
|
||||
|
|
@ -650,15 +659,17 @@ GEM
|
|||
rubocop-ast (>= 0.6.0)
|
||||
ruby-progressbar (~> 1.7)
|
||||
unicode-display_width (>= 1.4.0, < 2.0)
|
||||
rubocop-ast (1.4.1)
|
||||
parser (>= 2.7.1.5)
|
||||
rubocop-ast (1.7.0)
|
||||
parser (>= 3.0.1.1)
|
||||
rubocop-rails (2.9.1)
|
||||
activesupport (>= 4.2.0)
|
||||
rack (>= 1.1)
|
||||
rubocop (>= 0.90.0, < 2.0)
|
||||
ruby-oembed (0.12.0)
|
||||
ruby-oembed (0.15.0)
|
||||
ruby-progressbar (1.11.0)
|
||||
rubyzip (2.3.0)
|
||||
ruby-vips (2.1.3)
|
||||
ffi (~> 1.12)
|
||||
rubyzip (2.3.2)
|
||||
rugged (1.0.1)
|
||||
sass (3.4.25)
|
||||
sass-rails (5.0.7)
|
||||
|
|
@ -675,10 +686,10 @@ GEM
|
|||
scss_lint (0.55.0)
|
||||
rake (>= 0.9, < 13)
|
||||
sass (~> 3.4.20)
|
||||
secure_headers (6.3.2)
|
||||
secure_headers (6.3.3)
|
||||
shoulda-matchers (4.5.1)
|
||||
activesupport (>= 4.2.0)
|
||||
sidekiq (6.2.1)
|
||||
sidekiq (6.2.2)
|
||||
connection_pool (>= 2.2.2)
|
||||
rack (~> 2.0)
|
||||
redis (>= 4.2.0)
|
||||
|
|
@ -693,20 +704,20 @@ GEM
|
|||
simplecov-html (~> 0.11)
|
||||
simplecov_json_formatter (~> 0.1)
|
||||
simplecov-html (0.12.3)
|
||||
simplecov_json_formatter (0.1.2)
|
||||
simplecov_json_formatter (0.1.3)
|
||||
sinon-rails (1.15.0)
|
||||
railties (>= 3.1)
|
||||
sprockets (3.7.2)
|
||||
concurrent-ruby (~> 1.0)
|
||||
rack (> 1, < 3)
|
||||
sprockets-rails (3.2.1)
|
||||
sprockets-rails (3.2.2)
|
||||
actionpack (>= 4.0)
|
||||
activesupport (>= 4.0)
|
||||
sprockets (>= 3.0.0)
|
||||
ssrf_filter (1.0.7)
|
||||
state_machines (0.5.0)
|
||||
string-direction (1.2.2)
|
||||
swd (1.2.0)
|
||||
swd (1.3.0)
|
||||
activesupport (>= 3)
|
||||
attr_required (>= 0.0.5)
|
||||
httpclient (>= 2.4)
|
||||
|
|
@ -717,12 +728,14 @@ GEM
|
|||
temple (0.8.2)
|
||||
terminal-table (1.8.0)
|
||||
unicode-display_width (~> 1.1, >= 1.1.1)
|
||||
thor (1.1.0)
|
||||
terser (1.1.7)
|
||||
execjs (>= 0.3.0, < 3)
|
||||
thor (1.2.1)
|
||||
thread_safe (0.3.6)
|
||||
tilt (2.0.10)
|
||||
timecop (0.9.4)
|
||||
timers (4.3.3)
|
||||
toml-rb (2.0.1)
|
||||
toml-rb (2.1.0)
|
||||
citrus (~> 3.0, > 3.0)
|
||||
turbo_dev_assets (0.0.2)
|
||||
twitter (7.0.0)
|
||||
|
|
@ -742,12 +755,10 @@ GEM
|
|||
ethon (>= 0.9.0)
|
||||
tzinfo (1.2.9)
|
||||
thread_safe (~> 0.1)
|
||||
uglifier (4.2.0)
|
||||
execjs (>= 0.3.0, < 3)
|
||||
unf (0.1.4)
|
||||
unf_ext
|
||||
unf_ext (0.0.7.7)
|
||||
unicode-display_width (1.7.0)
|
||||
unf_ext (0.0.8)
|
||||
unicode-display_width (1.8.0)
|
||||
unicorn (6.0.0)
|
||||
kgio (~> 2.6)
|
||||
raindrops (~> 0.7)
|
||||
|
|
@ -769,17 +780,18 @@ GEM
|
|||
yard (~> 0.9.20)
|
||||
warden (1.2.9)
|
||||
rack (>= 2.0.9)
|
||||
webfinger (1.1.0)
|
||||
webfinger (1.2.0)
|
||||
activesupport
|
||||
httpclient (>= 2.4)
|
||||
webmock (3.12.2)
|
||||
addressable (>= 2.3.6)
|
||||
webmock (3.14.0)
|
||||
addressable (>= 2.8.0)
|
||||
crack (>= 0.3.2)
|
||||
hashdiff (>= 0.4.0, < 2.0.0)
|
||||
websocket-driver (0.7.3)
|
||||
webrick (1.7.0)
|
||||
websocket-driver (0.7.5)
|
||||
websocket-extensions (>= 0.1.0)
|
||||
websocket-extensions (0.1.5)
|
||||
will_paginate (3.3.0)
|
||||
will_paginate (3.3.1)
|
||||
xpath (3.2.0)
|
||||
nokogiri (~> 1.8)
|
||||
yard (0.9.26)
|
||||
|
|
@ -789,69 +801,70 @@ PLATFORMS
|
|||
|
||||
DEPENDENCIES
|
||||
active_model_serializers (= 0.9.7)
|
||||
activerecord-import (= 1.0.4)
|
||||
acts-as-taggable-on (= 6.5.0)
|
||||
activerecord-import (= 1.1.0)
|
||||
acts-as-taggable-on (= 8.1.0)
|
||||
acts_as_api (= 1.0.1)
|
||||
addressable (= 2.7.0)
|
||||
addressable (= 2.8.0)
|
||||
apparition (= 0.6.0)
|
||||
asset_sync (= 2.11.0)
|
||||
autoprefixer-rails (= 10.2.4.0)
|
||||
asset_sync (= 2.15.0)
|
||||
autoprefixer-rails (= 10.3.3.0)
|
||||
bootstrap-sass (= 3.4.1)
|
||||
bootstrap-switch-rails (= 3.3.3)
|
||||
capybara (= 3.35.3)
|
||||
carrierwave (= 1.3.2)
|
||||
carrierwave (= 2.2.2)
|
||||
chrome_remote (= 0.3.0)
|
||||
compass-rails (= 3.1.0)
|
||||
configurate (= 0.5.0)
|
||||
cucumber-api-steps (= 0.14)
|
||||
cucumber-rails (= 2.3.0)
|
||||
database_cleaner-active_record (= 1.8.0)
|
||||
devise (= 4.7.3)
|
||||
devise-two-factor (= 4.0.0)
|
||||
cucumber-rails (= 2.4.0)
|
||||
database_cleaner-active_record (= 2.0.1)
|
||||
devise (= 4.8.0)
|
||||
devise-two-factor (= 4.0.1)
|
||||
devise_lastseenable (= 0.0.6)
|
||||
diaspora-prosody-config (= 0.0.7)
|
||||
diaspora_federation-json_schema (= 0.2.6)
|
||||
diaspora_federation-rails (= 0.2.6)
|
||||
diaspora_federation-test (= 0.2.6)
|
||||
diaspora_federation-json_schema (= 0.2.7)
|
||||
diaspora_federation-rails (= 0.2.7)
|
||||
diaspora_federation-test (= 0.2.7)
|
||||
entypo-rails (= 3.0.0)
|
||||
eye (= 0.10.0)
|
||||
factory_girl_rails (= 4.9.0)
|
||||
faraday (= 0.15.4)
|
||||
faraday-cookie_jar (= 0.0.6)
|
||||
faraday_middleware (= 0.13.1)
|
||||
faraday (= 0.17.4)
|
||||
faraday-cookie_jar (= 0.0.7)
|
||||
faraday_middleware (= 0.14.0)
|
||||
fixture_builder (= 0.5.2)
|
||||
fog-aws (= 3.5.2)
|
||||
fog-aws (= 3.12.0)
|
||||
fuubar (= 2.5.1)
|
||||
gon (= 6.3.2)
|
||||
haml_lint (= 0.37.0)
|
||||
hamlit (= 2.14.6)
|
||||
handlebars_assets (= 0.23.8)
|
||||
gon (= 6.4.0)
|
||||
haml_lint (= 0.37.1)
|
||||
hamlit (= 2.15.1)
|
||||
handlebars_assets (= 0.23.9)
|
||||
http_accept_language (= 2.1.1)
|
||||
i18n-inflector-rails (= 1.0.7)
|
||||
jasmine (= 3.7.0)
|
||||
jasmine (= 3.10.0)
|
||||
jasmine-jquery-rails (= 2.0.3)
|
||||
jquery-rails (= 4.3.5)
|
||||
js-routes (= 1.4.9)
|
||||
jquery-rails (= 4.4.0)
|
||||
js-routes (= 2.1.2)
|
||||
js_image_paths (= 0.1.1)
|
||||
json (= 2.3.0)
|
||||
json-schema (= 2.8.1)
|
||||
json-schema-rspec (= 0.0.4)
|
||||
leaflet-rails (= 1.6.0)
|
||||
leaflet-rails (= 1.7.0)
|
||||
listen (= 3.5.1)
|
||||
logging-rails (= 0.6.0)
|
||||
markdown-it-html5-embed (= 1.0.0)
|
||||
markerb (= 1.1.0)
|
||||
mini_magick (= 4.10.1)
|
||||
mini_magick (= 4.11.0)
|
||||
minitest
|
||||
mobile-fu (= 1.4.0)
|
||||
mysql2 (= 0.5.3)
|
||||
nokogiri (= 1.11.3)
|
||||
omniauth (= 1.9.1)
|
||||
nokogiri (= 1.12.5)
|
||||
omniauth (= 2.0.4)
|
||||
omniauth-rails_csrf_protection (= 1.0.0)
|
||||
omniauth-tumblr (= 1.2)
|
||||
omniauth-twitter (= 1.4.0)
|
||||
omniauth-wordpress (= 0.2.2)
|
||||
open_graph_reader (= 0.7.1)
|
||||
openid_connect (= 1.1.8)
|
||||
open_graph_reader (= 0.7.2)
|
||||
openid_connect (= 1.3.0)
|
||||
pg (= 1.2.3)
|
||||
pronto (= 0.11.0)
|
||||
pronto-eslint (= 0.11.0)
|
||||
|
|
@ -865,7 +878,7 @@ DEPENDENCIES
|
|||
rack-piwik (= 0.3.0)
|
||||
rack-rewrite (= 1.5.1)
|
||||
rack-ssl (= 1.4.1)
|
||||
rails (= 5.2.5)
|
||||
rails (= 5.2.6.2)
|
||||
rails-assets-autosize (= 4.0.2)!
|
||||
rails-assets-backbone (= 1.3.3)!
|
||||
rails-assets-blueimp-gallery (= 2.33.0)!
|
||||
|
|
@ -875,7 +888,7 @@ DEPENDENCIES
|
|||
rails-assets-fine-uploader (= 5.13.0)!
|
||||
rails-assets-highlightjs (= 9.12.0)!
|
||||
rails-assets-jasmine-ajax (= 4.0.0)!
|
||||
rails-assets-jquery (= 3.4.1)!
|
||||
rails-assets-jquery (= 3.5.1)!
|
||||
rails-assets-jquery-placeholder (= 2.3.1)!
|
||||
rails-assets-jquery-textchange (= 0.2.3)!
|
||||
rails-assets-jquery.are-you-sure (= 1.9.0)!
|
||||
|
|
@ -883,47 +896,48 @@ DEPENDENCIES
|
|||
rails-assets-markdown-it (= 8.4.2)!
|
||||
rails-assets-markdown-it--markdown-it-for-inline (= 0.1.1)!
|
||||
rails-assets-markdown-it-diaspora-mention (= 1.2.0)!
|
||||
rails-assets-markdown-it-footnote (= 3.0.3)!
|
||||
rails-assets-markdown-it-hashtag (= 0.4.0)!
|
||||
rails-assets-markdown-it-sanitizer (= 0.4.3)!
|
||||
rails-assets-markdown-it-sub (= 1.0.0)!
|
||||
rails-assets-markdown-it-sup (= 1.0.0)!
|
||||
rails-assets-utatti-perfect-scrollbar (= 1.4.0)!
|
||||
rails-controller-testing (= 1.0.4)
|
||||
rails-controller-testing (= 1.0.5)
|
||||
rails-i18n (= 5.1.3)
|
||||
rails-timeago (= 2.18.0)
|
||||
rails-timeago (= 2.19.1)
|
||||
redcarpet (= 3.5.1)
|
||||
redis (= 4.2.5)
|
||||
redis (= 4.5.1)
|
||||
responders (= 3.0.1)
|
||||
rqrcode (= 1.1.2)
|
||||
rqrcode (= 2.1.0)
|
||||
rspec-json_expectations (~> 2.1)
|
||||
rspec-rails (= 5.0.1)
|
||||
rspec-rails (= 5.0.2)
|
||||
rubocop (= 0.93.1)
|
||||
rubocop-rails (= 2.9.1)
|
||||
ruby-oembed (= 0.12.0)
|
||||
rubyzip (= 2.3.0)
|
||||
ruby-oembed (= 0.15.0)
|
||||
rubyzip (= 2.3.2)
|
||||
sass-rails (= 5.0.7)
|
||||
secure_headers (= 6.3.2)
|
||||
secure_headers (= 6.3.3)
|
||||
shoulda-matchers (= 4.5.1)
|
||||
sidekiq (= 6.2.1)
|
||||
sidekiq (= 6.2.2)
|
||||
sidekiq-cron (= 1.2.0)
|
||||
simple_captcha2 (= 0.5.0)
|
||||
simplecov (= 0.21.2)
|
||||
sinon-rails (= 1.15.0)
|
||||
sprockets-rails (= 3.2.1)
|
||||
sprockets-rails (= 3.2.2)
|
||||
string-direction (= 1.2.2)
|
||||
terser (= 1.1.7)
|
||||
timecop (= 0.9.4)
|
||||
toml-rb (= 2.0.1)
|
||||
toml-rb (= 2.1.0)
|
||||
turbo_dev_assets (= 0.0.2)
|
||||
twitter (= 7.0.0)
|
||||
twitter-text (= 1.14.7)
|
||||
typhoeus (= 1.4.0)
|
||||
uglifier (= 4.2.0)
|
||||
unicorn (= 6.0.0)
|
||||
unicorn-worker-killer (= 0.4.5)
|
||||
uuid (= 2.3.9)
|
||||
versionist (= 2.0.1)
|
||||
webmock (= 3.12.2)
|
||||
will_paginate (= 3.3.0)
|
||||
webmock (= 3.14.0)
|
||||
will_paginate (= 3.3.1)
|
||||
|
||||
BUNDLED WITH
|
||||
1.17.3
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
## Installation
|
||||
|
||||
You don't have to install diaspora\* to use the network. There are many servers connected to diaspora\*s network which are open to anyone, and you can create an account on one of these servers. Have a look at our [tips for finding a home](https://wiki.diasporafoundation.org/Choosing_a_pod), or you can just go straight to the [list of open servers](https://diaspora.podupti.me) to sign up.
|
||||
You don't have to install diaspora\* to use the network. There are many servers connected to diaspora\*s network which are open to anyone, and you can create an account on one of these servers. Have a look at our [tips for finding a home](https://wiki.diasporafoundation.org/Choosing_a_pod), or you can just go straight to the [list of open servers](https://diaspora.fediverse.observer) to sign up.
|
||||
|
||||
Want to own your data and install diaspora\*? Whether you just want to try it out, want to install it on your server or want to contribute and need a development setup, our [installation guides](https://wiki.diasporafoundation.org/Installation) will get you started!
|
||||
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ Handlebars.registerHelper('linkToPerson', function(context, block) {
|
|||
// relationship indicator for profile page
|
||||
Handlebars.registerHelper("sharingMessage", function(person) {
|
||||
var i18nScope = "people.helper.is_not_sharing";
|
||||
var icon = "circle";
|
||||
var icon = "entypo-record";
|
||||
if( person.is_sharing ) {
|
||||
i18nScope = "people.helper.is_sharing";
|
||||
icon = "entypo-check";
|
||||
|
|
|
|||
|
|
@ -16,6 +16,9 @@
|
|||
typographer: true
|
||||
});
|
||||
|
||||
var footnote = window.markdownitFootnote;
|
||||
md.use(footnote);
|
||||
|
||||
var inlinePlugin = window.markdownitForInline;
|
||||
md.use(inlinePlugin, "utf8_symbols", "text", function (tokens, idx) {
|
||||
tokens[idx].content = tokens[idx].content.replace(/<->/g, "↔")
|
||||
|
|
|
|||
|
|
@ -19,10 +19,15 @@ app.views.Hovercard = app.views.Base.extend({
|
|||
|
||||
this.showMe = false;
|
||||
this.parent = null; // current 'hovercardable' element that caused HC to appear
|
||||
|
||||
this.active = true;
|
||||
},
|
||||
|
||||
presenter: function() {
|
||||
return _.extend({}, this.defaultPresenter(), {
|
||||
person: this.person
|
||||
});
|
||||
},
|
||||
|
||||
postRenderTemplate: function() {
|
||||
this.$el.appendTo($("body"));
|
||||
|
||||
|
|
@ -102,14 +107,14 @@ app.views.Hovercard = app.views.Base.extend({
|
|||
if( !person || person.length === 0 ) {
|
||||
throw new Error("received data is not a person object");
|
||||
}
|
||||
|
||||
var personModel = new app.models.Person(person);
|
||||
person.is_sharing = personModel.isSharing();
|
||||
self.person = person;
|
||||
if (app.currentUser.authenticated()) {
|
||||
self.aspectMembershipDropdown = new app.views.AspectMembership({person: new app.models.Person(person)});
|
||||
self.aspectMembershipDropdown = new app.views.AspectMembership({person: personModel});
|
||||
}
|
||||
|
||||
self.render();
|
||||
|
||||
self._populateHovercardWith(person);
|
||||
if( !self.showMe ) {
|
||||
// mouse has left element
|
||||
return;
|
||||
|
|
@ -118,23 +123,6 @@ app.views.Hovercard = app.views.Base.extend({
|
|||
});
|
||||
},
|
||||
|
||||
_populateHovercardWith: function(person) {
|
||||
this.avatarLink.attr("href", this.href());
|
||||
this.personLink.attr("href", this.href());
|
||||
this.personLink.text(person.name);
|
||||
this.personID.text(person.diaspora_id);
|
||||
|
||||
if (person.profile) {
|
||||
this.avatar.attr("src", person.profile.avatar);
|
||||
|
||||
// set hashtags
|
||||
this.hashtags.empty();
|
||||
this.hashtags.html($(_.map(person.profile.tags, function(tag) {
|
||||
return $("<a/>", {href: Routes.tag(tag)}).text("#" + tag)[0];
|
||||
})));
|
||||
}
|
||||
},
|
||||
|
||||
_positionHovercard: function() {
|
||||
var p_pos = this.parent.offset();
|
||||
var p_height = this.parent.height();
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ app.views.Location = Backbone.View.extend({
|
|||
var locator = new OSM.Locator();
|
||||
locator.getAddress(function(address, latlng){
|
||||
$(element).empty();
|
||||
$("<input/>",
|
||||
$("<input></input>",
|
||||
{ id: "location_address",
|
||||
value: address,
|
||||
type: "text",
|
||||
|
|
|
|||
|
|
@ -351,7 +351,7 @@ app.views.Publisher = Backbone.View.extend({
|
|||
};
|
||||
|
||||
var previewPost = new app.views.PreviewPost({model: new app.models.Post(previewMessage)}).render().el;
|
||||
return $("<div/>").append(previewPost).html();
|
||||
return $("<div></div>").append(previewPost).html();
|
||||
},
|
||||
|
||||
keyDown : function(evt) {
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@
|
|||
//= require markdown-it
|
||||
//= require markdown-it-diaspora-mention
|
||||
//= require markdown-it-for-inline
|
||||
//= require markdown-it-footnote
|
||||
//= require markdown-it-hashtag
|
||||
//= require markdown-it-sanitizer
|
||||
//= require markdown-it-sub
|
||||
|
|
|
|||
|
|
@ -185,8 +185,8 @@
|
|||
|
||||
addNewComments: function(bottomBar, data) {
|
||||
if ($(".comment-container", bottomBar).length === 0) {
|
||||
$(".show-comments", bottomBar).after($("<div/>", {"class": "comment-container"}));
|
||||
$(".comment-container", bottomBar).append($("<ul/>", {"class": "comments"}));
|
||||
$(".show-comments", bottomBar).after($("<div></div>", {"class": "comment-container"}));
|
||||
$(".comment-container", bottomBar).append($("<ul></ul>", {"class": "comments"}));
|
||||
}
|
||||
$(".comment-container .comments", bottomBar).append(data);
|
||||
},
|
||||
|
|
@ -212,8 +212,10 @@
|
|||
var postGuid = bottomBar.parents(".stream-element").data("guid");
|
||||
|
||||
toggleReactionsLink.remove();
|
||||
toggleReactionsLink = $("<a/>", {"class": "show-comments", "href": Routes.postComments(postGuid) + ".mobile"})
|
||||
.html(text + "<i class='entypo-chevron-up'/>");
|
||||
toggleReactionsLink = $("<a></a>", {
|
||||
"class": "show-comments",
|
||||
"href": Routes.postComments(postGuid) + ".mobile"
|
||||
}).html(text + "<i class='entypo-chevron-up'/>");
|
||||
parent.prepend(toggleReactionsLink);
|
||||
bottomBar.removeClass("inactive").addClass("active");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ $(document).ready(function(){
|
|||
if(hiddenField.length > 0) { hiddenField.remove(); }
|
||||
else {
|
||||
$("#new_status_message").append(
|
||||
$("<input/>", {
|
||||
$("<input></input>", {
|
||||
name: "services[]",
|
||||
type: "hidden",
|
||||
value: provider
|
||||
|
|
|
|||
|
|
@ -55,8 +55,8 @@ body {
|
|||
|
||||
.tag:hover { background-color: desaturate(darken($link-color, 35%), 20%); }
|
||||
|
||||
#profile_container .profile_header {
|
||||
#author_info #sharing_message.entypo-check { color: lighten($green, 10%); }
|
||||
#sharing_message.entypo-check {
|
||||
color: lighten($green, 10%);
|
||||
}
|
||||
|
||||
#invitationsModal #email_invitation { border-top: 1px dashed $gray-light; }
|
||||
|
|
|
|||
|
|
@ -55,7 +55,6 @@ $margin: 15px;
|
|||
|
||||
li {
|
||||
border: 0;
|
||||
border-radius: $thumbnail-size / 2;
|
||||
height: $thumbnail-size;
|
||||
margin: $margin 6px;
|
||||
vertical-align: middle;
|
||||
|
|
|
|||
|
|
@ -119,6 +119,19 @@
|
|||
}
|
||||
}
|
||||
|
||||
.dropdown-toggle {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
|
||||
.user-name {
|
||||
margin-right: 3px;
|
||||
max-width: 250px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
|
||||
.user-menu-dropdown {
|
||||
padding: 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,6 +33,12 @@
|
|||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.status-container {
|
||||
align-items: center;
|
||||
display: flex;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
#hovercard_dropdown_container {
|
||||
overflow: visible !important; /* otherwise the aspect dropdown is cropped */
|
||||
}
|
||||
|
|
@ -53,10 +59,7 @@
|
|||
|
||||
.handle {
|
||||
color: $text-grey;
|
||||
line-height: 18px;
|
||||
padding-top: 0px;
|
||||
margin-top: 0px;
|
||||
margin-bottom: 5px;
|
||||
margin-right: 2px;
|
||||
}
|
||||
|
||||
.btn-group.aspect-membership-dropdown { margin: 0 !important; }
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
}
|
||||
.invitations-button { padding-left: 0; }
|
||||
}
|
||||
|
||||
#people-stream {
|
||||
.media, .media-body {
|
||||
overflow: visible;
|
||||
|
|
@ -28,6 +29,7 @@
|
|||
.info { font-size: $font-size-small; }
|
||||
}
|
||||
}
|
||||
|
||||
#blocked_people {
|
||||
.blocked-person {
|
||||
border-bottom: 1px solid $border-grey;
|
||||
|
|
@ -45,3 +47,13 @@
|
|||
.btn-danger { margin-top: 9px; }
|
||||
}
|
||||
}
|
||||
|
||||
#sharing_message {
|
||||
&.entypo-check {
|
||||
color: darken($brand-success, 20%);
|
||||
}
|
||||
|
||||
&.entypo-record {
|
||||
color: $text-grey;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,11 +28,6 @@
|
|||
#sharing_message {
|
||||
cursor: default;
|
||||
font-size: 20px;
|
||||
&.circle {
|
||||
color: $text-grey;
|
||||
&:before { content: '\26aa'; }
|
||||
}
|
||||
&.entypo-check { color: darken($brand-success,20%); }
|
||||
}
|
||||
.description {
|
||||
margin-bottom: 20px;
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
{{ t "aspect_dropdown.toggle" count=aspectMembershipsLength }}
|
||||
{{/if}}
|
||||
</span>
|
||||
<span class="caret" />
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
|
||||
<ul class="dropdown-menu aspect-membership pull-right" unselectable="on">
|
||||
|
|
@ -29,8 +29,8 @@
|
|||
>
|
||||
<a>
|
||||
<span class="status_indicator">
|
||||
<i class="glyphicon glyphicon-ok" />
|
||||
<i class="glyphicon glyphicon-refresh" />
|
||||
<i class="glyphicon glyphicon-ok"></i>
|
||||
<i class="glyphicon glyphicon-refresh"></i>
|
||||
</span>
|
||||
<span class="text">
|
||||
{{name}}
|
||||
|
|
@ -39,7 +39,7 @@
|
|||
</li>
|
||||
{{/each}}
|
||||
{{#if dropdownMayCreateNewAspect}}
|
||||
<li class="divider" />
|
||||
<li class="divider"></li>
|
||||
<li class="newItem add_aspect">
|
||||
<a data-target="#newAspectModal" data-toggle="modal" href="#">
|
||||
{{ t "aspects.create.add_a_new_aspect" }}
|
||||
|
|
@ -48,5 +48,5 @@
|
|||
{{/if}}
|
||||
</ul>
|
||||
{{#if dropdownMayCreateNewAspect}}
|
||||
<div class="newAspectContainer"/>
|
||||
<div class="newAspectContainer"></div>
|
||||
{{/if}}
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
class="new-comment" id="new-comment-on-{{id}}" method="post">
|
||||
|
||||
<textarea class="comment-box form-control mention-textarea"
|
||||
id="comment_text_on_{{id}}" name="text" rows="1" required placeholder="{{t "stream.comment"}}" />
|
||||
id="comment_text_on_{{id}}" name="text" rows="1" required placeholder="{{t "stream.comment"}}"></textarea>
|
||||
<div class="typeahead-mention-box-wrap">
|
||||
<input class="typeahead-mention-box hidden" type="text">
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
{{#if canRemove}}
|
||||
<a href="#" class="delete comment_delete" title="{{t "delete"}}">
|
||||
<i class="entypo-trash"></i>
|
||||
<a/>
|
||||
</a>
|
||||
{{else}}
|
||||
<a href="#" data-type="Comment" class="comment_report" title="{{t "report.name"}}">
|
||||
<i class="entypo-warning"></i>
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
{{/linkToAuthor}}
|
||||
-
|
||||
<a href="/posts/{{parent.id}}#{{guid}}" class="permalink_comment">
|
||||
<time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}"/>
|
||||
<time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}"></time>
|
||||
</a>
|
||||
<a href="/posts/{{parent.guid}}#{{guid}}" class="permalink gray" title="{{t "stream.permalink"}}">
|
||||
<i class="entypo-link"></i>
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@
|
|||
<ul class="nav navbar-nav navbar-right">
|
||||
<li class="dropdown user-menu" id="user-menu">
|
||||
<a href="{{urlTo "person" current_user.guid}}" class="dropdown-toggle hidden-xs hidden-sm" data-toggle="dropdown" role="button" aria-expanded="false">
|
||||
<span class="user-avatar pull-left">
|
||||
<span class="user-avatar">
|
||||
{{{personImage current_user "small"}}}
|
||||
</span>
|
||||
<span class="user-name">{{current_user.name}}</span>
|
||||
|
|
|
|||
|
|
@ -1,15 +1,22 @@
|
|||
{{#with person}}
|
||||
<div id="hovercard">
|
||||
<a class='person_avatar'>
|
||||
<img class="avatar">
|
||||
<a class="person_avatar" href="{{urlTo 'person' guid}}">
|
||||
<img class="avatar" src="{{profile.avatar}}" />
|
||||
</a>
|
||||
<h4>
|
||||
<a class="person"></a>
|
||||
<a class="person" href="{{urlTo 'person' guid}}">{{name}}</a>
|
||||
</h4>
|
||||
<div class="handle"></div>
|
||||
<div class="status-container">
|
||||
<div class="handle">{{diaspora_id}}</div>
|
||||
{{{sharingMessage this}}}
|
||||
</div>
|
||||
<div id="hovercard_dropdown_container"></div>
|
||||
<div class="card-footer">
|
||||
<div class="footer-container">
|
||||
<div class="hashtags"></div>
|
||||
<div class="hashtags">
|
||||
{{fmtTags profile.tags}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/with}}
|
||||
|
|
|
|||
|
|
@ -27,10 +27,10 @@
|
|||
<div class="footer-container">
|
||||
{{#if status_message}}
|
||||
<a href="{{urlTo "post" status_message.id}}">
|
||||
<time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}" />
|
||||
<time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}"></time>
|
||||
</a>
|
||||
{{else}}
|
||||
<time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}" />
|
||||
<time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}"></time>
|
||||
{{/if}}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
</td>
|
||||
<td class="pod-title" title="{{host}}">{{host}}</td>
|
||||
<td class="added">
|
||||
<small><time datetime="{{created_at}}" title="{{localTime created_at}}" /></small>
|
||||
<small><time datetime="{{created_at}}" title="{{localTime created_at}}"></time></small>
|
||||
</td>
|
||||
<td>
|
||||
{{#if has_no_errors}}
|
||||
|
|
@ -18,10 +18,10 @@
|
|||
{{status_text}}
|
||||
{{/if}}
|
||||
{{#unless is_unchecked}}
|
||||
<br><small>{{t 'admin.pods.last_check'}} <time datetime="{{checked_at}}" title="{{localTime checked_at}}" /></small>
|
||||
<br><small>{{t 'admin.pods.last_check'}} <time datetime="{{checked_at}}" title="{{localTime checked_at}}"></time></small>
|
||||
{{/unless}}
|
||||
{{#if offline}}
|
||||
| <small>{{t 'admin.pods.offline_since'}} <time datetime="{{offline_since}}" title="{{localTime offline_since}}" /></small>
|
||||
| <small>{{t 'admin.pods.offline_since'}} <time datetime="{{offline_since}}" title="{{localTime offline_since}}"></time></small>
|
||||
{{/if}}
|
||||
{{#if is_unchecked}}<br><small class="text-muted">{{t 'admin.pods.no_info'}}</small>{{/if}}
|
||||
<pre class="details" style="display: none;">
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
<span class="details gray">
|
||||
-
|
||||
<a href="/posts/{{id}}">
|
||||
<time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}" />
|
||||
<time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}"></time>
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -40,11 +40,11 @@
|
|||
<span class="post-time">
|
||||
{{#if root}}
|
||||
<a href="/posts/{{root.guid}}">
|
||||
<time datetime="{{root.created_at}}" title="{{localTime root.created_at}}" />
|
||||
<time datetime="{{root.created_at}}" title="{{localTime root.created_at}}"></time>
|
||||
</a>
|
||||
{{else}}
|
||||
<a href="/posts/{{guid}}">
|
||||
<time datetime="{{created_at}}" title="{{localTime created_at}}" />
|
||||
<time datetime="{{created_at}}" title="{{localTime created_at}}"></time>
|
||||
</a>
|
||||
{{/if}}
|
||||
</span>
|
||||
|
|
@ -59,12 +59,12 @@
|
|||
{{/if}}
|
||||
</div>
|
||||
{{#unless root}}
|
||||
<div id="single-post-moderation" />
|
||||
<div id="single-post-moderation"></div>
|
||||
{{/unless}}
|
||||
</div>
|
||||
</div>
|
||||
{{#unless root}}
|
||||
<div id="single-post-actions" class="col-md-4" />
|
||||
<div id="single-post-actions" class="col-md-4"></div>
|
||||
{{/unless}}
|
||||
</div>
|
||||
{{#if location.lat}}
|
||||
|
|
@ -92,13 +92,13 @@
|
|||
<div class="post-context">
|
||||
<span class="post-time">
|
||||
<a href="/posts/{{guid}}">
|
||||
<time datetime="{{created_at}}" title="{{localTime created_at}}" />
|
||||
<time datetime="{{created_at}}" title="{{localTime created_at}}"></time>
|
||||
</a>
|
||||
</span>
|
||||
<span id="single-post-moderation" />
|
||||
<span id="single-post-moderation"></span>
|
||||
</div>
|
||||
</div>
|
||||
<div id="single-post-actions" class="col-md-4" />
|
||||
<div id="single-post-actions" class="col-md-4"></div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
<span class="details gray post-timestamp">
|
||||
-
|
||||
<a href="/posts/{{id}}">
|
||||
<time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}" />
|
||||
<time class="timeago" data-original-title="{{{localTime created_at}}}" datetime="{{created_at}}"></time>
|
||||
</a>
|
||||
|
||||
<a href="/posts/{{guid}}" class="permalink" title="{{t "stream.permalink"}}">
|
||||
|
|
|
|||
|
|
@ -113,15 +113,6 @@ class PeopleController < ApplicationController
|
|||
end
|
||||
end
|
||||
|
||||
def retrieve_remote
|
||||
if params[:diaspora_handle]
|
||||
Workers::FetchWebfinger.perform_async(params[:diaspora_handle])
|
||||
head :ok
|
||||
else
|
||||
head :unprocessable_entity
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def find_person
|
||||
|
|
|
|||
|
|
@ -1,17 +1,6 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
module InterimStreamHackinessHelper
|
||||
def commenting_disabled?(post)
|
||||
return true unless user_signed_in?
|
||||
if defined?(@commenting_disabled)
|
||||
@commenting_disabled
|
||||
elsif defined?(@stream)
|
||||
!@stream.can_comment?(post)
|
||||
else
|
||||
false
|
||||
end
|
||||
end
|
||||
|
||||
##### These methods need to go away once we pass publisher object into the partial ######
|
||||
def publisher_formatted_text
|
||||
if params[:prefill].present?
|
||||
|
|
|
|||
|
|
@ -90,6 +90,10 @@ class AccountMigration < ApplicationRecord
|
|||
old_user && new_user
|
||||
end
|
||||
|
||||
def includes_photo_migration?
|
||||
remote_photo_path.present?
|
||||
end
|
||||
|
||||
# We need to resend contacts of users of our pod for the remote new person so that the remote pod received this
|
||||
# contact information from the authoritative source.
|
||||
def dispatch_contacts
|
||||
|
|
@ -122,13 +126,14 @@ class AccountMigration < ApplicationRecord
|
|||
end
|
||||
|
||||
def update_all_references
|
||||
update_remote_photo_path if remotely_initiated? && includes_photo_migration?
|
||||
update_person_references
|
||||
update_user_references if user_changed_id_locally?
|
||||
end
|
||||
|
||||
def person_references
|
||||
references = Person.reflections.reject {|key, _|
|
||||
%w[profile owner notifications pod].include?(key)
|
||||
%w[profile owner notifications pod account_deletion account_migration].include?(key)
|
||||
}
|
||||
|
||||
references.map {|key, value|
|
||||
|
|
@ -200,6 +205,20 @@ class AccountMigration < ApplicationRecord
|
|||
.destroy_all
|
||||
end
|
||||
|
||||
def update_remote_photo_path
|
||||
Photo.where(author: old_person)
|
||||
.update_all(remote_photo_path: remote_photo_path) # rubocop:disable Rails/SkipsModelValidations
|
||||
return unless user_left_our_pod?
|
||||
|
||||
Photo.where(author: old_person).find_in_batches do |batch|
|
||||
batch.each do |photo|
|
||||
photo.processed_image = nil
|
||||
photo.unprocessed_image = nil
|
||||
logger.warn "Error cleaning up photo #{photo.id}" unless photo.save
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def update_person_references
|
||||
logger.debug "Updating references from person id=#{old_person.id} to person id=#{new_person.id}"
|
||||
eliminate_person_duplicates
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ class Block < ApplicationRecord
|
|||
belongs_to :person
|
||||
belongs_to :user
|
||||
|
||||
delegate :name, to: :person, prefix: true
|
||||
delegate :name, :diaspora_handle, to: :person, prefix: true
|
||||
|
||||
validates :person_id, uniqueness: {scope: :user_id}
|
||||
|
||||
|
|
|
|||
|
|
@ -57,6 +57,9 @@ class Person < ApplicationRecord
|
|||
|
||||
has_many :mentions, :dependent => :destroy
|
||||
|
||||
has_one :account_deletion, dependent: :destroy
|
||||
has_one :account_migration, foreign_key: :old_person_id, dependent: :nullify, inverse_of: :old_person
|
||||
|
||||
validate :owner_xor_pod
|
||||
validate :other_person_with_same_guid, on: :create
|
||||
validates :profile, :presence => true
|
||||
|
|
|
|||
|
|
@ -1,69 +1,78 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class Services::Tumblr < Service
|
||||
MAX_CHARACTERS = 1000
|
||||
module Services
|
||||
class Tumblr < Service
|
||||
MAX_CHARACTERS = 1000
|
||||
|
||||
def provider
|
||||
"tumblr"
|
||||
end
|
||||
|
||||
def consumer_key
|
||||
AppConfig.services.tumblr.key
|
||||
end
|
||||
|
||||
def consumer_secret
|
||||
AppConfig.services.tumblr.secret
|
||||
end
|
||||
|
||||
def post(post, url='')
|
||||
body = build_tumblr_post(post, url)
|
||||
user_info = JSON.parse(client.get("/v2/user/info").body)
|
||||
blogs = user_info["response"]["user"]["blogs"]
|
||||
primaryblog = blogs.find {|blog| blog["primary"] } || blogs[0]
|
||||
tumblr_ids = {}
|
||||
|
||||
blogurl = URI.parse(primaryblog["url"])
|
||||
resp = client.post("/v2/blog/#{blogurl.host}/post", body)
|
||||
if resp.code == "201"
|
||||
tumblr_ids[blogurl.host.to_s] = JSON.parse(resp.body)["response"]["id"]
|
||||
def provider
|
||||
"tumblr"
|
||||
end
|
||||
|
||||
post.tumblr_ids = tumblr_ids.to_json
|
||||
post.save
|
||||
end
|
||||
def post(post, url="") # rubocop:disable Metrics/AbcSize
|
||||
return true if post.nil? # return if post is deleted while waiting in queue
|
||||
|
||||
def build_tumblr_post(post, url)
|
||||
{ :type => 'text', :format => "markdown", :body => tumblr_template(post, url) }
|
||||
end
|
||||
body = build_tumblr_post(post, url)
|
||||
user_info = JSON.parse(client.get("/v2/user/info").body)
|
||||
blogs = user_info["response"]["user"]["blogs"]
|
||||
primaryblog = blogs.find {|blog| blog["primary"] } || blogs[0]
|
||||
|
||||
def tumblr_template(post, url)
|
||||
photo_html = post.photos.map {|photo|
|
||||
"})\n\n"
|
||||
}.join
|
||||
tumblr_ids = {}
|
||||
|
||||
"#{photo_html}#{post.message.html(mentioned_people: [])}\n\n[original post](#{url})"
|
||||
end
|
||||
blogurl = URI.parse(primaryblog["url"])
|
||||
tumblr_ids[blogurl.host.to_s] = request_to_external_blog(blogurl, body)
|
||||
|
||||
def post_opts(post)
|
||||
{tumblr_ids: post.tumblr_ids} if post.tumblr_ids.present?
|
||||
end
|
||||
|
||||
def delete_from_service(opts)
|
||||
logger.debug "event=delete_from_service type=tumblr sender_id=#{user_id} tumblr_ids=#{opts[:tumblr_ids]}"
|
||||
tumblr_posts = JSON.parse(opts[:tumblr_ids])
|
||||
tumblr_posts.each do |blog_name, post_id|
|
||||
delete_from_tumblr(blog_name, post_id)
|
||||
post.tumblr_ids = tumblr_ids.to_json
|
||||
post.save
|
||||
end
|
||||
end
|
||||
|
||||
def delete_from_tumblr(blog_name, service_post_id)
|
||||
client.post("/v2/blog/#{blog_name}/post/delete", "id" => service_post_id)
|
||||
end
|
||||
def post_opts(post)
|
||||
{tumblr_ids: post.tumblr_ids} if post.tumblr_ids.present?
|
||||
end
|
||||
|
||||
private
|
||||
def client
|
||||
@consumer ||= OAuth::Consumer.new(consumer_key, consumer_secret, :site => 'http://api.tumblr.com')
|
||||
@client ||= OAuth::AccessToken.new(@consumer, self.access_token, self.access_secret)
|
||||
def delete_from_service(opts)
|
||||
logger.debug "event=delete_from_service type=tumblr sender_id=#{user_id} tumblr_ids=#{opts[:tumblr_ids]}"
|
||||
tumblr_posts = JSON.parse(opts[:tumblr_ids])
|
||||
tumblr_posts.each do |blog_name, post_id|
|
||||
delete_from_tumblr(blog_name, post_id)
|
||||
end
|
||||
end
|
||||
|
||||
def build_tumblr_post(post, url)
|
||||
{type: "text", format: "markdown", body: tumblr_template(post, url), tags: tags(post), native_inline_images: true}
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def client
|
||||
@consumer ||= OAuth::Consumer.new(consumer_key, consumer_secret, site: "https://api.tumblr.com")
|
||||
@client ||= OAuth::AccessToken.new(@consumer, access_token, access_secret)
|
||||
end
|
||||
|
||||
def tumblr_template(post, url)
|
||||
photo_html = post.photos.map {|photo| "})\n\n" }.join
|
||||
|
||||
"#{photo_html}#{post.message.html(mentioned_people: [])}\n\n[original post](#{url})"
|
||||
end
|
||||
|
||||
def tags(post)
|
||||
post.tags.pluck(:name).join(",").to_s
|
||||
end
|
||||
|
||||
def delete_from_tumblr(blog_name, service_post_id)
|
||||
client.post("/v2/blog/#{blog_name}/post/delete", "id" => service_post_id)
|
||||
end
|
||||
|
||||
def request_to_external_blog(blogurl, body)
|
||||
resp = client.post("/v2/blog/#{blogurl.host}/post", body)
|
||||
JSON.parse(resp.body)["response"]["id"] if resp.code == "201"
|
||||
end
|
||||
|
||||
def consumer_key
|
||||
AppConfig.services.tumblr.key
|
||||
end
|
||||
|
||||
def consumer_secret
|
||||
AppConfig.services.tumblr.secret
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -36,10 +36,8 @@ class User < ApplicationRecord
|
|||
before_validation :set_current_language, :on => :create
|
||||
before_validation :set_default_color_theme, on: :create
|
||||
|
||||
validates :username, :presence => true, :uniqueness => true
|
||||
validates_format_of :username, :with => /\A[A-Za-z0-9_]+\z/
|
||||
validates_length_of :username, :maximum => 32
|
||||
validates_exclusion_of :username, :in => AppConfig.settings.username_blacklist
|
||||
validates :username, presence: true, uniqueness: true, format: {with: /\A[A-Za-z0-9_.\-]+\z/},
|
||||
length: {maximum: 32}, exclusion: {in: AppConfig.settings.username_blacklist}
|
||||
validates_inclusion_of :language, :in => AVAILABLE_LANGUAGE_CODES
|
||||
validates :color_theme, inclusion: {in: AVAILABLE_COLOR_THEMES}, allow_blank: true
|
||||
validates_format_of :unconfirmed_email, :with => Devise.email_regexp, :allow_blank => true
|
||||
|
|
@ -444,8 +442,13 @@ class User < ApplicationRecord
|
|||
aq = self.aspects.create(:name => I18n.t('aspects.seed.acquaintances'))
|
||||
|
||||
if AppConfig.settings.autofollow_on_join?
|
||||
default_account = Person.find_or_fetch_by_identifier(AppConfig.settings.autofollow_on_join_user)
|
||||
self.share_with(default_account, aq) if default_account
|
||||
begin
|
||||
default_account = Person.find_or_fetch_by_identifier(AppConfig.settings.autofollow_on_join_user)
|
||||
share_with(default_account, aq)
|
||||
rescue DiasporaFederation::Discovery::DiscoveryError
|
||||
logger.warn "Error auto-sharing with #{AppConfig.settings.autofollow_on_join_user}
|
||||
fix autofollow_on_join_user in configuration."
|
||||
end
|
||||
end
|
||||
aq
|
||||
end
|
||||
|
|
|
|||
|
|
@ -105,15 +105,19 @@ class NodeInfoPresenter
|
|||
end
|
||||
|
||||
def local_posts
|
||||
@local_posts ||= Post.where(type: "StatusMessage")
|
||||
.joins(:author)
|
||||
.where("owner_id IS NOT null")
|
||||
.count
|
||||
Rails.cache.fetch("NodeInfoPresenter/local_posts", expires_in: 1.hour) do
|
||||
@local_posts ||= Post.where(type: "StatusMessage")
|
||||
.joins(:author)
|
||||
.where.not(people: {owner_id: nil})
|
||||
.count
|
||||
end
|
||||
end
|
||||
|
||||
def local_comments
|
||||
@local_comments ||= Comment.joins(:author)
|
||||
.where("owner_id IS NOT null")
|
||||
.count
|
||||
Rails.cache.fetch("NodeInfoPresenter/local_comments", expires_in: 1.hour) do
|
||||
@local_comments ||= Comment.joins(:author)
|
||||
.where.not(people: {owner_id: nil})
|
||||
.count
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ class PersonPresenter < BasePresenter
|
|||
end
|
||||
|
||||
def hovercard
|
||||
base_hash_with_contact.merge(profile: ProfilePresenter.new(profile).for_hovercard)
|
||||
full_hash.merge(profile: ProfilePresenter.new(profile).for_hovercard)
|
||||
end
|
||||
|
||||
def metas_attributes
|
||||
|
|
|
|||
|
|
@ -2,6 +2,6 @@
|
|||
|
||||
module Export
|
||||
class AspectSerializer < ActiveModel::Serializer
|
||||
attributes :name, :chat_enabled
|
||||
attributes :name
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -10,7 +10,8 @@ module Export
|
|||
:show_community_spotlight_in_stream,
|
||||
:auto_follow_back,
|
||||
:auto_follow_back_aspect,
|
||||
:strip_exif
|
||||
:strip_exif,
|
||||
:blocks
|
||||
has_one :profile, serializer: FederationEntitySerializer
|
||||
has_many :contact_groups, each_serializer: Export::AspectSerializer
|
||||
has_many :contacts, each_serializer: Export::ContactSerializer
|
||||
|
|
@ -45,6 +46,10 @@ module Export
|
|||
}
|
||||
end
|
||||
|
||||
def blocks
|
||||
object.blocks.map(&:person_diaspora_handle)
|
||||
end
|
||||
|
||||
%i[comments likes poll_participations].each {|collection|
|
||||
delegate collection, to: :person
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,11 +5,26 @@
|
|||
# are used as for federation messages generation.
|
||||
class FederationEntitySerializer < ActiveModel::Serializer
|
||||
include SerializerPostProcessing
|
||||
include Diaspora::Logging
|
||||
|
||||
private
|
||||
|
||||
def modify_serializable_object(hash)
|
||||
hash.merge(entity.to_json)
|
||||
rescue DiasporaFederation::Entities::Relayable::AuthorPrivateKeyNotFound => e
|
||||
# The author of this relayable probably migrated from this pod to a different pod,
|
||||
# and we neither have the signature nor the new private key to generate a valid signature.
|
||||
# But we can use the private key of the old user to generate the signature it had when this entity was created
|
||||
old_person = AccountMigration.joins(:old_person)
|
||||
.where("new_person_id = ? AND people.owner_id IS NOT NULL", object.author_id)
|
||||
.first.old_person
|
||||
if old_person
|
||||
logger.info "Using private key of #{old_person.diaspora_handle} to export: #{e.message}"
|
||||
object.author = old_person
|
||||
hash.merge(entity.to_json)
|
||||
else
|
||||
logger.warn "Skip entity for export because #{e.class}: #{e.message}"
|
||||
end
|
||||
end
|
||||
|
||||
def entity
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ class ExportedUser < SecureUploader
|
|||
"uploads/users"
|
||||
end
|
||||
|
||||
def extension_whitelist
|
||||
def extension_allowlist
|
||||
%w[gz]
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ class ProcessedImage < CarrierWave::Uploader::Base
|
|||
"uploads/images"
|
||||
end
|
||||
|
||||
def extension_whitelist
|
||||
def extension_allowlist
|
||||
%w[jpg jpeg png gif]
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ class UnprocessedImage < CarrierWave::Uploader::Base
|
|||
"uploads/images"
|
||||
end
|
||||
|
||||
def extension_whitelist
|
||||
def extension_allowlist
|
||||
%w[jpg jpeg png gif]
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<%= t('devise.mailer.welcome', :email => @resource.email) %>
|
||||
<%= t('devise.mailer.welcome', username: @resource.username) %>
|
||||
|
||||
<%= t('.you_can_confirm') %>
|
||||
|
||||
[<%= t('.confirm') %>][1]
|
||||
|
||||
[1]: <%= confirmation_url(@resource, :confirmation_token => @token) %>
|
||||
[1]: <%= confirmation_url(@resource, confirmation_token: @token) %>
|
||||
|
|
|
|||
|
|
@ -1,10 +1,12 @@
|
|||
<%= t('devise.mailer.hello', :email => @resource.email) %>
|
||||
<%= t('devise.mailer.hello', username: @resource.username) %>
|
||||
|
||||
<%= t('.someone_requested') %>
|
||||
|
||||
[<%= t('.change') %>][1]
|
||||
|
||||
[1]: <%= edit_password_url(@resource, :reset_password_token => @token) %>
|
||||
[1]: <%= edit_password_url(@resource, reset_password_token: @token) %>
|
||||
|
||||
<%= t('.then_connect', username: @resource.username) %>
|
||||
|
||||
<%= t('.wont_change') %>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
<%= t('devise.mailer.hello', :email => @resource.email) %>
|
||||
<%= t('devise.mailer.hello', username: @resource.username) %>
|
||||
|
||||
<%= t('.account_locked') %>
|
||||
|
||||
|
|
@ -6,4 +6,4 @@
|
|||
|
||||
[<%= t('.unlock') %>][1]
|
||||
|
||||
[1]: <%= unlock_url(@resource, :unlock_token => @token) %>
|
||||
[1]: <%= unlock_url(@resource, unlock_token: @token) %>
|
||||
|
|
|
|||
|
|
@ -4,5 +4,5 @@
|
|||
|
||||
.stream
|
||||
= render partial: "shared/stream_element",
|
||||
locals: {post: post, commenting_disabled: commenting_disabled?(post), expanded_info: true}
|
||||
locals: {post: post, expanded_info: true}
|
||||
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@
|
|||
placeholder: t("registrations.new.username"),
|
||||
title: t("registrations.new.enter_username"),
|
||||
required: true,
|
||||
pattern: "[A-Za-z0-9_]+",
|
||||
pattern: "[A-Za-z0-9_.\-]+",
|
||||
aria: {labelledby: "usernameLabel"}
|
||||
|
||||
- if mobile
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
wiki: link_to(t("registrations.closed.another_pod"), "https://diasporafoundation.org/getting_started/sign_up"))
|
||||
|
||||
!= t("registrations.closed.find_pods",
|
||||
poduptime: link_to("Poduptime", "https://diaspora.podupti.me/"))
|
||||
fediverse_observer: link_to("Fediverse Observer", "https://diaspora.fediverse.observer/"))
|
||||
|
||||
!= t("registrations.closed.other_questions",
|
||||
wiki: link_to("Wiki", "https://wiki.diasporafoundation.org/Choosing_a_pod"))
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
- else
|
||||
= t("services.index.not_logged_in")
|
||||
= link_to(t("services.index.connect"), "/auth/#{provider}")
|
||||
= link_to(t("services.index.connect"), "/auth/#{provider}", method: :post)
|
||||
|
||||
- else
|
||||
.well
|
||||
|
|
|
|||
|
|
@ -7,3 +7,5 @@
|
|||
%li= link_to t("layouts.application.switch_to_touch_optimized_mode"), toggle_mobile_path
|
||||
- if AppConfig.settings.terms.enable?
|
||||
%li= link_to t("_terms"), terms_path
|
||||
- unless AppConfig.admins.podmin_email.nil?
|
||||
%li= mail_to AppConfig.admins.podmin_email, t("_podmin_mail")
|
||||
|
|
|
|||
|
|
@ -124,7 +124,7 @@
|
|||
- if service_unconnected?(service)
|
||||
= link_to(content_tag(:div, nil,
|
||||
class: "social-media-logos-#{service.to_s.downcase}-24x24",
|
||||
title: service.to_s.titleize), "/auth/#{service}")
|
||||
title: service.to_s.titleize), "/auth/#{service}", method: :post)
|
||||
|
||||
.section.collapsed
|
||||
.title
|
||||
|
|
|
|||
|
|
@ -12,7 +12,9 @@ module Workers
|
|||
person = Person.find_or_fetch_by_identifier(account)
|
||||
|
||||
# also, schedule to fetch a few public posts from that person
|
||||
Diaspora::Fetcher::Public.queue_for(person) unless person.nil?
|
||||
Diaspora::Fetcher::Public.queue_for(person)
|
||||
rescue DiasporaFederation::Discovery::DiscoveryError
|
||||
# Ignored
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -26,6 +26,7 @@ module Workers
|
|||
DiasporaFederation::Salmon::InvalidEncoding,
|
||||
Diaspora::Federation::AuthorIgnored,
|
||||
Diaspora::Federation::InvalidAuthor,
|
||||
Diaspora::Federation::RecipientClosed,
|
||||
# TODO: deprecated
|
||||
DiasporaFederation::Salmon::MissingMagicEnvelope,
|
||||
DiasporaFederation::Salmon::MissingAuthor,
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
defaults:
|
||||
version:
|
||||
number: "0.7.15.0" # Do not touch unless doing a release, do not backport the version number that's in master
|
||||
number: "0.7.16.0" # Do not touch unless doing a release, do not backport the version number that's in master
|
||||
heroku: false
|
||||
environment:
|
||||
url: "http://localhost:3000/"
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ Rails.application.configure do
|
|||
config.public_file_server.enabled = ENV["RAILS_SERVE_STATIC_FILES"].present?
|
||||
|
||||
# Compress JavaScripts and CSS.
|
||||
config.assets.js_compressor = :uglifier
|
||||
config.assets.js_compressor = :terser
|
||||
# config.assets.css_compressor = :sass
|
||||
|
||||
# Do not fallback to assets pipeline if a precompiled asset is missed.
|
||||
|
|
|
|||
|
|
@ -8,9 +8,9 @@
|
|||
ENV['SSL_CERT_FILE'] = AppConfig.environment.certificate_authorities.get
|
||||
CarrierWave.configure do |config|
|
||||
if !Rails.env.test? && AppConfig.environment.s3.enable?
|
||||
config.fog_provider = "fog/aws"
|
||||
require "carrierwave/storage/fog"
|
||||
config.storage = :fog
|
||||
config.cache_storage = :file
|
||||
config.cache_dir = Rails.root.join('tmp', 'uploads').to_s
|
||||
config.fog_credentials = {
|
||||
provider: 'AWS',
|
||||
|
|
|
|||
|
|
@ -103,7 +103,9 @@ DiasporaFederation.configure do |config|
|
|||
end
|
||||
|
||||
on :receive_entity do |entity, sender, recipient_id|
|
||||
Person.by_account_identifier(sender).pod.try(:schedule_check_if_needed)
|
||||
sender_person = Person.by_account_identifier(sender)
|
||||
sender_person.pod&.schedule_check_if_needed
|
||||
Diaspora::Federation::Receive.handle_closed_recipient(sender_person, User.find(recipient_id)) if recipient_id
|
||||
|
||||
case entity
|
||||
when DiasporaFederation::Entities::AccountDeletion
|
||||
|
|
|
|||
|
|
@ -3,4 +3,6 @@
|
|||
JsRoutes.setup do |config|
|
||||
config.camel_case = true
|
||||
config.compact = true
|
||||
config.module_type = nil
|
||||
config.namespace = "Routes"
|
||||
end
|
||||
|
|
|
|||
|
|
@ -7,19 +7,22 @@
|
|||
ar:
|
||||
devise:
|
||||
confirmations:
|
||||
confirmed: "أُكّد حسابك بنجاح. لقد ولجت."
|
||||
confirmed: "أُكّد بريدك الالكتروني بنجاح."
|
||||
new:
|
||||
resend_confirmation: "أعد إرسال إرشادات التّأكيد"
|
||||
send_instructions: "سيصلك بريد إلكترونيّ قريبًا فيه إرشادات تأكيد الحساب."
|
||||
send_paranoid_instructions: "ستصلك رسالة لتأكيد في بريدك الإلكتوني إن كان بريدك متواجدا في قاعدة البيانات"
|
||||
failure:
|
||||
already_authenticated: "ولجت بالفعل"
|
||||
inactive: "لم يُفعّل حسابك بعد."
|
||||
invalid: "اسم المستخدم أو كلمة مروره غير صالحة."
|
||||
invalid: "%{authentication_keys} أو كلمة مروره غير صالحة."
|
||||
invalid_token: "رمز الاستيثاق غير صالح."
|
||||
last_attempt: "آخر محاولة قبل إقفال حسابك."
|
||||
locked: "حسابك مقفول."
|
||||
not_found_in_database: "البريد الإلكترونيّ أو كلمة المرور غير صالحة."
|
||||
not_found_in_database: "%{authentication_keys} أو كلمة المرور غير صالحة."
|
||||
timeout: "انتهت جلستك، فضلًا لِج مجدّدًا للمتابعة."
|
||||
unauthenticated: "عليك الولوج أو التسجيل للمتابعة."
|
||||
unconfirmed: "عليك تأكيد حسابك للمتابعة."
|
||||
unconfirmed: "عليك تأكيد بريدك الالكتروني للمتابعة."
|
||||
invitations:
|
||||
invitation_token_invalid: "نأسف! رمز الدّعوة غير صالح."
|
||||
send_instructions: "أُرسلت الدّعوة."
|
||||
|
|
@ -29,11 +32,13 @@ ar:
|
|||
confirm: "أكّد حسابي"
|
||||
subject: "إرشادات التّأكيد"
|
||||
you_can_confirm: "يمكنك تأكيد حسابك عبر الوصلة الآتية:"
|
||||
hello: "أهلًا %{email}!"
|
||||
hello: "أهلًا %{username}!"
|
||||
inviter:
|
||||
accept_at: ", %{url}, يمكنك قبولها عبر الرابط التالي"
|
||||
has_invited_you: "%{name} يدعوك للإنضمام إلى دياسبرا"
|
||||
have_invited_you: "دعاك %{names} للانضمام إلى دياسبرا*"
|
||||
password_change:
|
||||
subject: "غُيِّرت كلمة المرور"
|
||||
reset_password_instructions:
|
||||
change: "غيّر كلمة المرور"
|
||||
ignore: "إن لم تكن أنت فتجاهل هذا البريد رجاءً."
|
||||
|
|
@ -45,7 +50,10 @@ ar:
|
|||
click_to_unlock: "انقر الوصلة أدناه لفكّ الحساب:"
|
||||
subject: "إرشادات فكّ القفل"
|
||||
unlock: "فكّ حسابي"
|
||||
welcome: "مرحبًا %{email}!"
|
||||
welcome: "مرحبًا %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "لا يمكنك الاستيثاق من %{kind} بسبب \"%{reason}\"."
|
||||
success: "استثقت من حساب %{kind} بنجاح"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "غيّر كلمة المرور"
|
||||
|
|
@ -56,13 +64,21 @@ ar:
|
|||
forgot_password: "أنسيت كلمة المرور؟"
|
||||
reset_password: "صفّر كلمة المرور"
|
||||
send_password_instructions: "أرسل لي إرشادات تصفير كلمة المرور"
|
||||
no_token: "لا يمكن الوصول لهذه الصفحة إلا باستخدام رابط استعادة لكمة السر. إذا كنت تريد استعادة كلمة السر، تأكد من استخدامك للرابط كاملا."
|
||||
send_instructions: "سيصلك بريد إلكترونيّ قريبًا فيه إرشادات تصفير كلمة المرور."
|
||||
send_paranoid_instructions: "اذا كان بريدك الالكتروني موجودا في قاعدة البيانات ستصلك رسالة في بضع دقائق تحوي رابط استعادة كلمة السر."
|
||||
updated: "تغيّرت كلمة المرور بنجاح. لقد ولجت."
|
||||
updated_not_active: "غُيرت كلمة المرور بنجاح."
|
||||
registrations:
|
||||
destroyed: "الوداع! حُذف حسابك بنجاح. نأمل أن نراك قريبًا."
|
||||
signed_up: "لقد سجّلت بنجاح. إن طلبت تأكيدًا فقد أُرسل إلى بريدك."
|
||||
updated: "لقد حدّثت حسابك بنجاح."
|
||||
signed_up_but_inactive: "سُجلت بنجاح. لكن لا يمكنك الولوج حتى ينشط حسابك."
|
||||
signed_up_but_locked: "سُجلت بنجاح. لكن لا يمكنك الولوج لأن حسابك مقفل."
|
||||
signed_up_but_unconfirmed: "استخدم الرابط الذي أُرسل لبريدك الإلكتروني من أجل تفعيل حسابك."
|
||||
update_needs_confirmation: "حُدث حسابك بنجاح. استخدم الرابط الذي أرسل اليك من أجل تأكيد بريدك الإلكتروني الجديد."
|
||||
updated: "حُدّثت حسابك بنجاح."
|
||||
sessions:
|
||||
already_signed_out: "خرجت بنجاح."
|
||||
new:
|
||||
login: "لِج"
|
||||
modern_browsers: "تدعم المتصفحات الحديثة فقط."
|
||||
|
|
@ -84,9 +100,19 @@ ar:
|
|||
new:
|
||||
resend_unlock: "أعد إرسال إرشادات فكّ القفل"
|
||||
send_instructions: "سيصلك بريد إلكترونيّ قريبًا فيه إرشادات لفكّ قفل الحساب."
|
||||
unlocked: "فُكّ قفل الحساب بنجاح. لقد ولجت."
|
||||
send_paranoid_instructions: "اذا كان حسابك موجودا، سيصلك بريد في بضع دقائق يحتوي ارشادات فك قفل حسابك."
|
||||
unlocked: "فُكّ قفل الحساب بنجاح. لج للمتابعة."
|
||||
errors:
|
||||
messages:
|
||||
already_confirmed: "تم التأكيد مسبقا"
|
||||
confirmation_period_expired: "يجب أن يُأكد ضمن %{period}. أطلب واحد جديد"
|
||||
expired: "انتهت صلاحيته. اطلب واحد جديد"
|
||||
not_found: "غير موجود"
|
||||
not_locked: "لم يكن مغلقا"
|
||||
not_locked: "ليس مُقفلا"
|
||||
not_saved:
|
||||
few: "%{count} أخطاء منعوا حفظ %{resource}:"
|
||||
many: "%{count} خطأ منعوا حفظ %{resource}:"
|
||||
one: "خطأ منع حفظ %{resource}:"
|
||||
other: "%{count} خطأ منع حفظ %{resource}:"
|
||||
two: "خطآن منعا حفظ %{resource}:"
|
||||
zero: "بدون أخطاء:"
|
||||
|
|
@ -14,7 +14,7 @@ art-nvi:
|
|||
unauthenticated: "Ngal kin 'ivastengyem ayoeti fu fpxäkim ayoe fte salew Diasporaru."
|
||||
unconfirmed: "Ngal kin stiveftxaw ngeyä Diasporati fte fpxäkim."
|
||||
mailer:
|
||||
hello: "Kaltxì %{email}!"
|
||||
hello: "Kaltxì %{username}!"
|
||||
inviter:
|
||||
has_invited_you: "%{name}"
|
||||
have_invited_you: "%{names} polawm ngati txo säpung Diasporaru"
|
||||
|
|
@ -22,7 +22,7 @@ art-nvi:
|
|||
change: "Latem oeyä ftemlì'u"
|
||||
someone_requested: "Tsengeäo lu fte nga tsun livatem ngeyä ftemlì'u talun tuteo pìmawm ayoe txo tìng fì'uti ngaur."
|
||||
subject: "aysänume fte zeyko oeyä ftemlì'uti"
|
||||
welcome: "Zola'u nìprrte, ma %{email}!"
|
||||
welcome: "Zola'u nìprrte, ma %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Leykatem oeyä ftemlì'ut"
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ bg:
|
|||
confirm: "Потвърждаване на акаунта"
|
||||
subject: "Инструкции за потвърждаване"
|
||||
you_can_confirm: "Можете да потвърдите акаунта си чрез долната връзка:"
|
||||
hello: "Здравейте %{email}!"
|
||||
hello: "Здравейте %{username}!"
|
||||
inviter:
|
||||
accept_at: "от %{url}, можете да приемете чрез връзката по-долу в писмото."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -44,7 +44,7 @@ bg:
|
|||
click_to_unlock: "За отключване на акаунта кликнете върху долната връзка:"
|
||||
subject: "Инструкции за отключване"
|
||||
unlock: "Отключване на акаунта"
|
||||
welcome: "Добре дошли %{email}!"
|
||||
welcome: "Добре дошли %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Промяна на паролата"
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ br:
|
|||
confirm: "Kadarnaat ma c'hont"
|
||||
subject: "Titouroù kadarnaat"
|
||||
you_can_confirm: "Gallout a rit kadarnaat ho kont gant al liamm dindan:"
|
||||
hello: "Demat deoc'h, %{email}!"
|
||||
hello: "Demat deoc'h, %{username}!"
|
||||
inviter:
|
||||
accept_at: "e %{url}, gallout a rit e zegemer dre al liamm a-is."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -45,7 +45,7 @@ br:
|
|||
click_to_unlock: "Klikit war al liamm dindan evit dibrennañ ho kont:"
|
||||
subject: "Titouroù dibrennañ"
|
||||
unlock: "Dibrennañ ma c'hont"
|
||||
welcome: "Donemat deoc'h, %{email}!"
|
||||
welcome: "Donemat deoc'h, %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Cheñch ma ger-tremen"
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ bs:
|
|||
confirm: "Potvrdi moj račun"
|
||||
subject: "Uputstva za potvrdu"
|
||||
you_can_confirm: "Možete potvrditi svoj račun sa vezom ispod:"
|
||||
hello: "Zdravo %{email}!"
|
||||
hello: "Zdravo %{username}!"
|
||||
inviter:
|
||||
accept_at: "na %{url}, možete prihvatiti vezom ispod."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -45,7 +45,7 @@ bs:
|
|||
click_to_unlock: "Kliknite na vezu ispod da bi otključali vaš račun."
|
||||
subject: "Otključaj Uputstva"
|
||||
unlock: "Otključaj moj račun"
|
||||
welcome: "Dobrodošli %{email}!"
|
||||
welcome: "Dobrodošli %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Promjeni moju šifru"
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ ca:
|
|||
confirm: "Confirma el meu compte"
|
||||
subject: "Instruccions per a la confirmació"
|
||||
you_can_confirm: "Podeu confirmar el vostre compte mitjançant l'enllaç següent:"
|
||||
hello: "Hola, %{email}!"
|
||||
hello: "Hola, %{username}!"
|
||||
inviter:
|
||||
accept_at: "a %{url}, podeu acceptar-ho mitjançant l'enllaç següent."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -44,7 +44,7 @@ ca:
|
|||
click_to_unlock: "Feu clic a l'enllaç següent per desblocar el vostre compte:"
|
||||
subject: "Instruccions per al desblocatge"
|
||||
unlock: "Desbloca el meu compte"
|
||||
welcome: "Benvingut/da, %{email}!"
|
||||
welcome: "Benvingut/da, %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Canvia la contrasenya"
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ cs:
|
|||
confirm: "Potvrdit můj účet"
|
||||
subject: "Informace o potvrzení"
|
||||
you_can_confirm: "Váš účet můžete potvrdit kliknutím na tento odkaz:"
|
||||
hello: "Zdravím %{email}!"
|
||||
hello: "Zdravím %{username}!"
|
||||
inviter:
|
||||
accept_at: "na %{url}, přijmout pozvání můžete pomocí odkazu níže."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -50,7 +50,7 @@ cs:
|
|||
click_to_unlock: "Kliknutím na uvedený odkaz odemknete svůj účet:"
|
||||
subject: "Instrukce k odemknutí účtu."
|
||||
unlock: "Odemknout můj účet"
|
||||
welcome: "Vítej %{email}!"
|
||||
welcome: "Vítej %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "Nelze vás autentikovat z %{kind}, protože \"%{reason}\""
|
||||
success: "Úspěšně jsme vás ověřili z účtu %{kind}."
|
||||
|
|
|
|||
|
|
@ -25,13 +25,13 @@ cy:
|
|||
mailer:
|
||||
confirmation_instructions:
|
||||
subject: "Cyfarwyddiadau Cadarnhad"
|
||||
hello: "Helo %{email}!"
|
||||
hello: "Helo %{username}!"
|
||||
reset_password_instructions:
|
||||
change: "Newid y cyfrinair"
|
||||
unlock_instructions:
|
||||
subject: "Cyfarwyddiadau i ddatgloi"
|
||||
unlock: "Datgloi fy nghyfrif"
|
||||
welcome: "Croeso %{email}!"
|
||||
welcome: "Croeso %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Newid fy nghyfrinair"
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ da:
|
|||
confirm: "Bekræft min konto"
|
||||
subject: "Bekræftelsesinstruktioner"
|
||||
you_can_confirm: "Du kan bekræfte din konto via nedenstående link:"
|
||||
hello: "Hej %{email}!"
|
||||
hello: "Hej %{username}!"
|
||||
inviter:
|
||||
accept_at: "på %{url}, du kan acceptere ved at følge linket nedenunder."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -44,13 +44,14 @@ da:
|
|||
ignore: "Hvis du ikke har anmodet om dette, bedes du ignorere denne e-mail."
|
||||
someone_requested: "Nogen har anmodet om et link til at ændre din adgangskode. Hvis det var dig, kan du gøre dette via linket nedenfor."
|
||||
subject: "Instruktioner til nulstilling af adgangskode"
|
||||
then_connect: "Når du har lavet en ny adgangskode, vil du være i stand til at logge ind på Diaspora* igen ved hjælp af dit brugernavn \"%{username}\" og din nye adgangskode"
|
||||
wont_change: "Din adgangskode vil ikke blive ændret før du klikker på linket ovenfor og opretter en ny."
|
||||
unlock_instructions:
|
||||
account_locked: "Din konto er blevet låst på grund af en stor mængde mislykkede log ind forsøg."
|
||||
click_to_unlock: "Klik på linket nedenfor for at aktivere din konto:"
|
||||
subject: "Aktiver instruktioner"
|
||||
unlock: "Aktiver min konto"
|
||||
welcome: "Velkommen %{email}!"
|
||||
welcome: "Velkommen %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "Kunne ikke godkende dig fra %{kind} fordi \"%{reason}\"."
|
||||
success: "Godkendelse modtaget fra %{kind} kontoen."
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ de:
|
|||
confirm: "Mein Konto bestätigen"
|
||||
subject: "Bestätigung deines diaspora*-Kontos"
|
||||
you_can_confirm: "Du kannst dein Konto über den nachfolgenden Link bestätigen:"
|
||||
hello: "Hallo %{email}!"
|
||||
hello: "Hallo %{username}!"
|
||||
inviter:
|
||||
accept_at: "unter %{url}, kannst du sie über den untenstehenden Link akzeptieren."
|
||||
has_invited_you: ""
|
||||
|
|
@ -44,13 +44,14 @@ de:
|
|||
ignore: "Wenn du dies nicht angefordert hast, ignoriere bitte diese E-Mail."
|
||||
someone_requested: "Jemand hat einen Link angefordert, um dein Kennwort zu ändern. Falls du das warst, kannst du das durch den unten aufgeführten Link tun."
|
||||
subject: "Setze dein Kenwort zurück"
|
||||
then_connect: "Nachdem du ein neues Passwort eingegeben hast, kannst du dich wieder mit deinem Benutzernamen \"%{username}\" und deinem neuen Passwort in diaspora* einloggen"
|
||||
wont_change: "Dein Kennwort bleibt unverändert, bis du es über den Link änderst und ein neues erstellst."
|
||||
unlock_instructions:
|
||||
account_locked: "Dein Konto wurde aufgrund von zu vielen fehlgeschlagenen Anmeldeversuchen gesperrt."
|
||||
click_to_unlock: "Folge dem unten aufgeführten Link, um dein Konto zu entsperren:"
|
||||
subject: "Anweisungen zum Entsperren"
|
||||
unlock: "Mein Konto entsperren"
|
||||
welcome: "Willkommen %{email}!"
|
||||
welcome: "Willkommen %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "Konnte dich nicht mittels %{kind} authentifizieren, denn „%{reason}“."
|
||||
success: "Erfolgreich authentifiziert mittels %{kind}-Konto."
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ de_formal:
|
|||
confirm: "Mein Konto bestätigen"
|
||||
subject: "Bestätigung Ihres diaspora*-Kontos"
|
||||
you_can_confirm: "Sie können Ihr Konto über den nachfolgenden Link bestätigen:"
|
||||
hello: "Hallo %{email}!"
|
||||
hello: "Hallo %{username}!"
|
||||
inviter:
|
||||
accept_at: "unter %{url}, können Sie sie über den untenstehenden Link akzeptieren."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -44,13 +44,14 @@ de_formal:
|
|||
ignore: "Wenn Sie dies nicht angefordert haben, ignorieren Sie bitte diese E-Mail."
|
||||
someone_requested: "Jemand hat einen Link angefordert, um Ihr Passwort zu ändern. Wenn Sie das waren, können Sie das durch den unten aufgeführten Link tun."
|
||||
subject: "Setzen Sie Ihr Passwort zurück"
|
||||
then_connect: "Nachdem Sie ein neues Passwort eingegeben haben, können Sie sich wieder mit Ihrem Benutzernamen \"%{username}\" und Ihrem neuen Passwort in diaspora* einloggen"
|
||||
wont_change: "Ihr Passwort bleibt unverändert, bis Sie es über den Link ändern und ein neues erstellen."
|
||||
unlock_instructions:
|
||||
account_locked: "Ihr Konto wurde aufgrund von zu vielen fehlgeschlagenen Anmeldeversuchen gesperrt."
|
||||
click_to_unlock: "Folgen Sie dem unten aufgeführten Link, um Ihr Konto zu entsperren:"
|
||||
subject: "Anweisungen zum Entsperren"
|
||||
unlock: "Mein Konto entsperren"
|
||||
welcome: "Willkommen %{email}!"
|
||||
welcome: "Willkommen %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "Konnte Sie nicht mittels %{kind} authentifizieren, denn „%{reason}”."
|
||||
success: "Erfolgreich authentifiziert mittels %{kind}-Konto."
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
|
||||
|
||||
de-moo:
|
||||
de_moo:
|
||||
devise:
|
||||
confirmations:
|
||||
confirmed: "Deine E-Mail-Adresse wurde erfolgreich bestätigt."
|
||||
|
|
@ -32,7 +32,7 @@ de-moo:
|
|||
confirm: "Mein Konto bestätigen"
|
||||
subject: "Bestätigung deines diaspora*-Kontos"
|
||||
you_can_confirm: "Du kannst dein Konto über den nachfolgenden Link bestätigen:"
|
||||
hello: "Hallo %{email}!"
|
||||
hello: "Hallo %{username}!"
|
||||
inviter:
|
||||
accept_at: "unter %{url}, kannst du sie über den untenstehenden Link akzeptieren."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -44,13 +44,14 @@ de-moo:
|
|||
ignore: "Wenn du dies nicht angefordert hast, ignoriere bitte diese E-Mail."
|
||||
someone_requested: "Jemand hat einen Link angefordert, um dein Kennwort zu ändern. Falls du das warst, kannst du das durch den unten aufgeführten Link tun."
|
||||
subject: "Setze dein Passwort zurück"
|
||||
then_connect: "Nachdem du ein neues Passwort eingegeben hast, kannst du dich wieder mit deinem Benutzernamen \"%{username}\" und deinem neuen Passwort in diaspora* einloggen"
|
||||
wont_change: "Dein Kennwort bleibt unverändert, bis du es über den Link änderst und ein neues erstellst."
|
||||
unlock_instructions:
|
||||
account_locked: "Dein Konto wurde aufgrund von zu vielen fehlgeschlagenen Anmeldeversuchen gesperrt."
|
||||
click_to_unlock: "Folge dem unten aufgeführten Link, um dein Konto zu entsperren:"
|
||||
subject: "Anweisungen zum Entsperren"
|
||||
unlock: "Mein Konto entsperren"
|
||||
welcome: "Willkommen %{email}!"
|
||||
welcome: "Willkommen %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "Konnte dich nicht mittels %{kind} authentifizieren, denn „%{reason}“."
|
||||
success: "Erfolgreich authentifiziert mittels %{kind}-Konto."
|
||||
|
|
@ -29,7 +29,7 @@ el:
|
|||
confirm: "Επιβεβαίωση του λογαριασμού μου"
|
||||
subject: "Οδηγίες επιβεβαίωσης"
|
||||
you_can_confirm: "Μπορείτε να επιβεβαιώσετε τον λογαριασμό σας μέσω του παρακάτω συνδέσμου:"
|
||||
hello: "Γειά σου %{email}!"
|
||||
hello: "Γειά σου %{username}!"
|
||||
inviter:
|
||||
accept_at: "στο %{url}, μπορείτε να το αποδεχτείτε μέσω του παρακάτω συνδέσμου."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -45,7 +45,7 @@ el:
|
|||
click_to_unlock: "Κάντε κλικ στον παρακάτω σύνδεσμο για να ξεκλειδώσετε το λογαριασμό σας:"
|
||||
subject: "Οδηγίες Ξεκλειδώματος"
|
||||
unlock: "Ξεκλείδωμα του λογαριασμού μου"
|
||||
welcome: "Καλώς ήρθατε %{email}!"
|
||||
welcome: "Καλώς ήρθατε %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Αλλαγή του κωδικού μου"
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@ en:
|
|||
someone_requested: Someone has requested a link to change your password. If
|
||||
it was you, you can do this through the link below.
|
||||
change: Change my password
|
||||
then_connect: After setting a new password, you will be able to sign into diaspora* again using your username "%{username}" and your new password
|
||||
wont_change: Your password won't change until you access the link above and
|
||||
create a new one.
|
||||
ignore: If you didn't request this, please ignore this email.
|
||||
|
|
@ -41,8 +42,8 @@ en:
|
|||
unlock: Unlock my account
|
||||
password_change:
|
||||
subject: Password Changed
|
||||
welcome: Welcome %{email}!
|
||||
hello: Hello %{email}!
|
||||
welcome: Welcome %{username}!
|
||||
hello: Hello %{username}!
|
||||
inviter:
|
||||
has_invited_you: "%{name}"
|
||||
have_invited_you: "%{names} have invited you to join diaspora*"
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ en_1337:
|
|||
confirm: "C0NF1RM3 MY 4CC!"
|
||||
subject: "C0NF1RM471ON 1N57RUC71ONS"
|
||||
you_can_confirm: "4CC C0MF1RM471ON -> L1NK B3L0W"
|
||||
hello: "H3Y %{email}!"
|
||||
hello: "H3Y %{username}!"
|
||||
inviter:
|
||||
accept_at: "@ %{url}, U C4N 4CC3P7 17 -> L1NK!"
|
||||
have_invited_you: "%{names} H4V3 1NV173D Y0U 2 J01N!"
|
||||
|
|
@ -42,7 +42,7 @@ en_1337:
|
|||
click_to_unlock: "T0 J01N -> CL1CK 7H3 L1NK B3L0W!"
|
||||
subject: "UNL0CK 1N57RUC71ON5"
|
||||
unlock: "P0WN MY 4CC!"
|
||||
welcome: "W3LC0M3 %{email}!"
|
||||
welcome: "W3LC0M3 %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "CH4NG3 MY *****"
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ en_shaw:
|
|||
confirm: "𐑒𐑩𐑯𐑓𐑻𐑥 𐑥𐑲 𐑩𐑒𐑬𐑯𐑑"
|
||||
subject: "𐑒𐑪𐑯𐑓𐑼𐑥𐑱𐑖𐑩𐑯 𐑦𐑯𐑕𐑑𐑮𐑳𐑒𐑖𐑩𐑯𐑟"
|
||||
you_can_confirm: "𐑿 𐑒𐑨𐑯 𐑒𐑩𐑯𐑓𐑻𐑥 𐑿𐑼 𐑩𐑒𐑬𐑯𐑑 𐑔𐑮𐑵 𐑞 𐑤𐑦𐑙𐑒 𐑚𐑦𐑤𐑴:"
|
||||
hello: "𐑣𐑧𐑤𐑴 %{email}!"
|
||||
hello: "𐑣𐑧𐑤𐑴 %{username}!"
|
||||
reset_password_instructions:
|
||||
change: "𐑗𐑱𐑯𐑡 𐑥𐑲 𐑐𐑨𐑕𐑢𐑼𐑛"
|
||||
ignore: "𐑦𐑓 𐑿 𐑛𐑦𐑛𐑯𐑑 𐑮𐑦𐑒𐑢𐑧𐑕𐑑 𐑞𐑦𐑕, 𐑐𐑤𐑰𐑟 𐑦𐑜𐑯𐑹 𐑞𐑦𐑕 𐑦-𐑥𐑱𐑤."
|
||||
|
|
@ -40,7 +40,7 @@ en_shaw:
|
|||
click_to_unlock: "𐑒𐑤𐑦𐑒 𐑞 𐑤𐑦𐑙𐑒 𐑚𐑦𐑤𐑴 𐑑 𐑩𐑯𐑤𐑪𐑒 𐑿𐑼 𐑩𐑒𐑬𐑯𐑑:"
|
||||
subject: "𐑩𐑯𐑤𐑪𐑒 𐑦𐑯𐑕𐑑𐑮𐑳𐑒𐑖𐑩𐑯𐑟"
|
||||
unlock: "𐑩𐑯𐑤𐑪𐑒 𐑥𐑲 𐑩𐑒𐑬𐑯𐑑"
|
||||
welcome: "𐑢𐑧𐑤𐑒𐑩𐑥 %{email}!"
|
||||
welcome: "𐑢𐑧𐑤𐑒𐑩𐑥 %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "𐑗𐑱𐑯𐑡 𐑥𐑲 𐑐𐑨𐑕𐑢𐑼𐑛"
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ en_valspeak:
|
|||
confirm: "Confirm mah account!!"
|
||||
subject: "Stuff liek, tellin u how 2 confirm ur account n stuff..."
|
||||
you_can_confirm: "U can confirm ur account through teh link below:"
|
||||
hello: "Ohai %{email}!!"
|
||||
hello: "Ohai %{username}!!"
|
||||
inviter:
|
||||
accept_at: "so like, @ %{url} u can accept it through the link below. Kay? <3"
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -48,7 +48,7 @@ en_valspeak:
|
|||
click_to_unlock: "Click teh link below 2 unlock ur account, kay?:"
|
||||
subject: "Unlock ur stuff info"
|
||||
unlock: "Unlock mah account!!!"
|
||||
welcome: "OHAI! %{email}!"
|
||||
welcome: "OHAI! %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Change mah passwerddd"
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ eo:
|
|||
invalid: "Nevalida uzantnomo aŭ pasvorto."
|
||||
invalid_token: "Malvalida identiga ĵetono."
|
||||
locked: "Via konto estas ŝlosita."
|
||||
not_found_in_database: "Nevalida %{authentication_keys} aŭ pasvorto."
|
||||
timeout: "Via seanco senvalidiĝis. Bonvolu ree ensaluti por daŭrigi."
|
||||
unauthenticated: "Vi devas ensaluti aŭ enskribiĝi antaŭ ol daŭrigi."
|
||||
unconfirmed: "Vi devas konfirmi vian konton antaŭ ol daŭrigi."
|
||||
|
|
@ -28,11 +29,13 @@ eo:
|
|||
confirm: "Konfirmi mian konton"
|
||||
subject: "Instrukcioj por konfirmi"
|
||||
you_can_confirm: "Vi povas konfirmi vian konton per la suba ligilo:"
|
||||
hello: "Saluton, %{email}!"
|
||||
hello: "Saluton, %{username}!"
|
||||
inviter:
|
||||
accept_at: "ĉe %{url}, vi povas akcepti ĝin per la suba ligilo."
|
||||
has_invited_you: "%{name}"
|
||||
have_invited_you: "%{names} invitis vin aniĝi je DIASPORA*"
|
||||
password_change:
|
||||
subject: "Pasvorta ŝanĝita"
|
||||
reset_password_instructions:
|
||||
change: "Ŝanĝi mian pasvorton"
|
||||
ignore: "Se vi ne petis ĉi tion, bonvolu ignori ĉi tiun retpoŝton."
|
||||
|
|
@ -44,11 +47,13 @@ eo:
|
|||
click_to_unlock: "Alklaku la suban ligilon por malŝlosi vian konton:"
|
||||
subject: "Instrukcioj por malŝlosi"
|
||||
unlock: "Malŝlosi mian konton."
|
||||
welcome: "Bonvenon %{email}!"
|
||||
welcome: "Bonvenon %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Ŝanĝi mian pasvorton"
|
||||
new_password: "Nova pasvorto"
|
||||
new:
|
||||
email: "Retpoŝtadreso"
|
||||
forgot_password: "Ĉu vi forgesis vian pasvorton?"
|
||||
send_password_instructions: "Sendi al mi instrukciojn por restartigi pasvorton"
|
||||
send_instructions: "Post kelkaj minutoj vi ricevos retpoŝton kun instrukcioj pri kiel restartigi vian pasvorton."
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ es-AR:
|
|||
confirm: "Confirmar mi cuenta"
|
||||
subject: "Instrucciones para la confirmación"
|
||||
you_can_confirm: "Podés confirmar tu cuenta a través del siguiente enlace:"
|
||||
hello: "¡Hola %{email}!"
|
||||
hello: "¡Hola %{username}!"
|
||||
inviter:
|
||||
accept_at: "en %{url}, podes aceptarlo desde el link de abajo "
|
||||
has_invited_you: "%{name} te ha invitado a unirte a Diaspora"
|
||||
|
|
@ -50,7 +50,7 @@ es-AR:
|
|||
click_to_unlock: "Hacé click en el siguiente enlace para desbloquear tu cuenta:"
|
||||
subject: "Instrucciones para desbloquear la cuenta"
|
||||
unlock: "Desbloquear mi cuenta"
|
||||
welcome: "¡Bienvenid@ %{email}!"
|
||||
welcome: "¡Bienvenid@ %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "Podrías no ser autenticado desde %{kind} porque \"%{reason}\"."
|
||||
success: "Autenticado correctamente desde la cuenta %{kind}."
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ es-CL:
|
|||
confirm: "Confirmar mi cuenta"
|
||||
subject: "Instrucciones de confirmación"
|
||||
you_can_confirm: "Puedes confirmar tu cuenta a través del siguiente enlace:"
|
||||
hello: "Hola %{email}!"
|
||||
hello: "Hola %{username}!"
|
||||
inviter:
|
||||
accept_at: "en %{url}, puedes aceptar en el enlace inferior."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -49,7 +49,7 @@ es-CL:
|
|||
click_to_unlock: "Haz click en el enlace de abajo para desbloquear tu cuenta:"
|
||||
subject: "Instrucciones para desbloquear tu cuenta"
|
||||
unlock: "Desbloquear mi cuenta"
|
||||
welcome: "Bienvenid@ %{email}!"
|
||||
welcome: "Bienvenid@ %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "No se pudo autenticar desde %{kind} porque \"%{reason}\"."
|
||||
success: "Autenticado correctamente desde %{kind} cuenta."
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ es-MX:
|
|||
confirm: "Confirmar mi cuenta"
|
||||
subject: "Instrucciones de confirmación"
|
||||
you_can_confirm: "Puedes confirmar tu cuenta a través del siguiente enlace:"
|
||||
hello: "¡Hola %{email}!"
|
||||
hello: "¡Hola %{username}!"
|
||||
inviter:
|
||||
accept_at: "en %{url} puedes aceptarlo a través del siguiente enlace."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -45,7 +45,7 @@ es-MX:
|
|||
click_to_unlock: "Haz clic en el siguiente enlace para desbloquear tu cuenta:"
|
||||
subject: "Instrucciones de desbloqueo"
|
||||
unlock: "Desbloquear mi cuenta"
|
||||
welcome: "¡Bienvenido/a %{email}!"
|
||||
welcome: "¡Bienvenido/a %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Cambiar mi contraseña"
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ es-VE:
|
|||
confirm: "Confirmar mi cuenta"
|
||||
subject: "Instrucciones para la confirmación"
|
||||
you_can_confirm: "Puedes confirmar tu cuenta a través del siguiente enlace:"
|
||||
hello: "¡Hola %{email}!"
|
||||
hello: "¡Hola %{username}!"
|
||||
invitation_instructions:
|
||||
accept: "Aceptar invitación"
|
||||
arrived: "La red social que has estado esperando ha llegado. Renovada, más segura, y más divertida, %{strong_diaspora} está lista para ayudarte a compartir y explorar la web en una forma totalmente nueva."
|
||||
|
|
@ -73,7 +73,7 @@ es-VE:
|
|||
click_to_unlock: "Haz clic en el siguiente enlace para desbloquear tu cuenta:"
|
||||
subject: "Instrucciones para desbloquear tu cuenta"
|
||||
unlock: "Desbloquear mi cuenta"
|
||||
welcome: "¡Bienvenid@ %{email}!"
|
||||
welcome: "¡Bienvenid@ %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Cambiar mi contraseña"
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ es:
|
|||
confirm: "Confirmar mi cuenta"
|
||||
subject: "Instrucciones de confirmación"
|
||||
you_can_confirm: "Puedes confirmar tu cuenta a través del siguiente enlace:"
|
||||
hello: "¡Hola %{email}!"
|
||||
hello: "¡Hola %{username}!"
|
||||
inviter:
|
||||
accept_at: "en %{url}, puedes aceptar en el enlace inferior."
|
||||
has_invited_you: "%{name} te ha invitado a unirte a Diaspora"
|
||||
|
|
@ -44,13 +44,14 @@ es:
|
|||
ignore: "Si no has solicitado esto, por favor ignora este mensaje."
|
||||
someone_requested: "Alguien ha solicitado un enlace para cambiar tu contraseña. Si fuiste tú, puedes hacerlo a través del siguiente enlace."
|
||||
subject: "Instrucciones para cambiar tu contraseña"
|
||||
then_connect: "Tras establecer tu nueva contraseña podrás entrar de nuevo en diaspora* con tu nombre de usuario \"%{username}\" y tu nueva contraseña."
|
||||
wont_change: "Tu contraseña no cambiará hasta que accedas al enlace anterior y crees una nueva."
|
||||
unlock_instructions:
|
||||
account_locked: "Tu cuenta ha sido bloqueada debido a demasiados intentos de ingreso fallidos."
|
||||
click_to_unlock: "Sigue el siguiente enlace para desbloquear tu cuenta:"
|
||||
subject: "Instrucciones para desbloquear la cuenta"
|
||||
unlock: "Desbloquear mi cuenta"
|
||||
welcome: "¡Bienvenid@ %{email}!"
|
||||
welcome: "¡Bienvenid@ %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "No pudimos identificarte desde %{kind} por \"%{reason}\"."
|
||||
success: "Identificado correctamente desde la cuenta %{kind}."
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ et:
|
|||
locked: "Sinu konto on suletud."
|
||||
timeout: "Sinu seanss aegus, jätkamiseks logi palun uuesti sisse."
|
||||
unauthenticated: "Enne jätkamist pead konto looma või sisse logima."
|
||||
unconfirmed: "Enne jätkamist pead oma konto kinnitama."
|
||||
unconfirmed: "Enne jätkamist pead oma eposti kinnitama."
|
||||
invitations:
|
||||
invitation_token_invalid: "Vabandame! See kutse võti ei kehti."
|
||||
send_instructions: "Sinu kutse on saadetud."
|
||||
|
|
@ -28,7 +28,7 @@ et:
|
|||
confirm: "Kinnita mu konto"
|
||||
subject: "Kinnitamise juhised"
|
||||
you_can_confirm: "Sa saad oma konto kinnitada järgneva lingi abil:"
|
||||
hello: "Tere %{email}!"
|
||||
hello: "Tere %{username}!"
|
||||
inviter:
|
||||
accept_at: "aadressil %{url}, sa saad kutse aksepteerida.kasutades alljärgnevat linki."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -36,7 +36,7 @@ et:
|
|||
reset_password_instructions:
|
||||
change: "Muuda mu parooli"
|
||||
subject: "Parooli taastamise juhised"
|
||||
welcome: "%{email}, tere tulemast!"
|
||||
welcome: "%{username}, tere tulemast!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Muuda parooli"
|
||||
|
|
@ -65,7 +65,7 @@ et:
|
|||
receive_confirmation: "Juhised konto kinnitamiseks ei saabunud?"
|
||||
receive_unlock: "Juhised konto taasavamiseks ei saabunud?"
|
||||
sign_in: "Logi sisse"
|
||||
sign_up: "Liitu"
|
||||
sign_up: "Loo konto"
|
||||
sign_up_closed: "Avatud liitumised on hetkel peatatud."
|
||||
unlocks:
|
||||
new:
|
||||
|
|
@ -74,6 +74,6 @@ et:
|
|||
unlocked: "Sinu konto on edukalt taasavatud. Oled nüüd sisse logitud."
|
||||
errors:
|
||||
messages:
|
||||
already_confirmed: "on juba kinnitatud"
|
||||
already_confirmed: "on juba kinnitatud, palun proovi sisse logida"
|
||||
not_found: "ei leitud"
|
||||
not_locked: "ei ole lukustatud"
|
||||
|
|
@ -28,7 +28,7 @@ eu:
|
|||
confirm: "Kontua baieztatu"
|
||||
subject: "Baieztapen argibideak"
|
||||
you_can_confirm: "Zure kontua baieztatu dezakezu esteka hau jarraituz:"
|
||||
hello: "Kaixo %{email}!"
|
||||
hello: "Kaixo %{username}!"
|
||||
inviter:
|
||||
accept_at: "%{url}(e)n, onartu dezakezu beheko esteka jarraituz."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -44,7 +44,7 @@ eu:
|
|||
click_to_unlock: "Sakatu honako estekan zure kontua askatzeko:"
|
||||
subject: "Askatu argibideak"
|
||||
unlock: "Askatu nire kontua"
|
||||
welcome: "Ongietorri, %{email}!"
|
||||
welcome: "Ongietorri, %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Nire pasahitza aldatu"
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ fi:
|
|||
confirm: "Vahvista käyttäjätilini"
|
||||
subject: "Vahvistamisohjeet"
|
||||
you_can_confirm: "Voit vahvistaa käyttäjätilisi alla olevan linkin kautta:"
|
||||
hello: "Hei, %{email}!"
|
||||
hello: "Hei, %{username}!"
|
||||
inviter:
|
||||
accept_at: "osoitteessa %{url}, hyväksyminen alla olevasta linkistä."
|
||||
has_invited_you: "%{names}"
|
||||
|
|
@ -50,7 +50,7 @@ fi:
|
|||
click_to_unlock: "Poista käyttäjätilisi lukitus alla olevasta linkistä:"
|
||||
subject: "Lukituksen poisto-ohjeet"
|
||||
unlock: "Poista käyttäjätilini lukitus"
|
||||
welcome: "Tervetuloa %{email}!"
|
||||
welcome: "Tervetuloa %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Vaihda salasanani"
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
fil:
|
||||
devise:
|
||||
mailer:
|
||||
hello: "Kumusta %{email}!"
|
||||
hello: "Kumusta %{username}!"
|
||||
sessions:
|
||||
new:
|
||||
remember_me: "Tandaan Ako"
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ fr:
|
|||
confirm: "Confirmer mon compte"
|
||||
subject: "Instructions de confirmation"
|
||||
you_can_confirm: "Vous pouvez confirmer votre compte en cliquant sur le lien ci-dessous :"
|
||||
hello: "Bonjour %{email} !"
|
||||
hello: "Bonjour %{username} !"
|
||||
inviter:
|
||||
accept_at: "à %{url}, vous pouvez l'accepter à travers le lien ci-dessous."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -50,7 +50,7 @@ fr:
|
|||
click_to_unlock: "Cliquez sur le lien ci-dessous pour débloquer votre compte :"
|
||||
subject: "Instructions de déverrouillage"
|
||||
unlock: "Débloquer mon compte"
|
||||
welcome: "Bienvenue %{email} !"
|
||||
welcome: "Bienvenue %{username} !"
|
||||
omniauth_callbacks:
|
||||
failure: "Impossible de vous authentifier depuis %{kind} car \"%{reason}\"."
|
||||
success: "Authentification réussie depuis le compte %{kind}."
|
||||
|
|
|
|||
|
|
@ -12,13 +12,13 @@ fy:
|
|||
mailer:
|
||||
confirmation_instructions:
|
||||
confirm: "Myn akkount befêstigje"
|
||||
hello: "Guoi %{email}!"
|
||||
hello: "Guoi %{username}!"
|
||||
inviter:
|
||||
has_invited_you: "%{name}"
|
||||
have_invited_you: "%{names} ha dy útnoadige om jin oan te slute by Diaspora"
|
||||
reset_password_instructions:
|
||||
change: "Feroarje myn wachtwurd"
|
||||
welcome: "Wolkom %{email}!"
|
||||
welcome: "Wolkom %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Feroarje myn wachtwurd"
|
||||
|
|
|
|||
|
|
@ -7,8 +7,8 @@
|
|||
ga:
|
||||
devise:
|
||||
mailer:
|
||||
hello: "Haileo %{email}!"
|
||||
welcome: "Fáilte %{email}!"
|
||||
hello: "Haileo %{username}!"
|
||||
welcome: "Fáilte %{username}!"
|
||||
sessions:
|
||||
new:
|
||||
login: "Logáil isteach"
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ gl:
|
|||
confirm: "Confirmar a conta"
|
||||
subject: "Instrucións de confirmación"
|
||||
you_can_confirm: "Pode confirmar a súa conta mediante a seguinte ligazón:"
|
||||
hello: "Ola, %{email}!"
|
||||
hello: "Ola, %{username}!"
|
||||
inviter:
|
||||
accept_at: "en %{url}, pode aceptar seguindo a seguinte ligazón."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -44,13 +44,14 @@ gl:
|
|||
ignore: "Se non foi vostede quen solicitou o cambio, pode ignorar esta mensaxe."
|
||||
someone_requested: "Alguén solicitou cambiar o teu contrasinal. Se foches ti, preme na seguinte ligazón:"
|
||||
subject: "Instrucións para cambiar o contrasinal"
|
||||
then_connect: "Após establecer o novo contrasinal terás que volver a conectarte a diaspora* utilizando o identificador \"%{username}\" e o novo contrasinal."
|
||||
wont_change: "Para cambiar de contrasinal, prema a seguinte ligazón e escolla un novo."
|
||||
unlock_instructions:
|
||||
account_locked: "A conta bloqueouse por mor do gran número de intentos errados de identificarse con ela."
|
||||
click_to_unlock: "Siga a seguinte ligazón para desbloqueala:"
|
||||
subject: "Instrucións para desbloquear a conta"
|
||||
unlock: "Desbloquear a conta"
|
||||
welcome: "Benvido, %{email}!"
|
||||
welcome: "Benvido, %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "Non se puido autenticar desde %{kind} debido a \"%{reason}\"."
|
||||
success: "Autenticada correctamente desde a conta %{kind}"
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ he:
|
|||
confirm: "אימות החשבון שלי"
|
||||
subject: "הנחיות לאימות"
|
||||
you_can_confirm: "באפשרותך לאמת את החשבון שלך באמצעות הקישור שלהלן:"
|
||||
hello: "שלום %{email}!"
|
||||
hello: "שלום %{username}!"
|
||||
inviter:
|
||||
accept_at: "בכתובת %{url}, באפשרותך לקבל זאת באמצעות הקישור שלהלן."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -45,7 +45,7 @@ he:
|
|||
click_to_unlock: "יש ללחוץ על הקישור שלהלן כדי לשחרר את חשבונך:"
|
||||
subject: "הנחיות לביטול הנעילה"
|
||||
unlock: "שחרור החשבון שלי"
|
||||
welcome: "ברוך בואך %{email}!"
|
||||
welcome: "ברוך בואך %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "שינוי הסיסמה שלי"
|
||||
|
|
|
|||
|
|
@ -7,17 +7,17 @@
|
|||
hi:
|
||||
devise:
|
||||
failure:
|
||||
inactive: "आपका खाता अभी तक सक्रिय नहीं हुआ है."
|
||||
invalid: "अमान्य उपयोगकर्ता नाम या पासवर्ड."
|
||||
inactive: "आपका खाता अभी तक सक्रिय नहीं हुआ है।"
|
||||
invalid: "अमान्य %{authentication_keys} या पासवर्ड।"
|
||||
locked: "आप का खाता अवरोधित है"
|
||||
timeout: "आपका सत्र समाप्त हो चूका है, सत्र जारी रखने के लिए कृपया फिर से साइन इन करें."
|
||||
timeout: "आपका सत्र समाप्त हो चूका है, सत्र जारी रखने के लिए कृपया फिर से साइन इन करें।"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "पासवर्ड बदलें"
|
||||
new:
|
||||
forgot_password: "पासवर्ड भूल गए?"
|
||||
send_instructions: "कुछ ही मिनटों में आप अपना पासवर्ड रीसेट करने के बारे में निर्देशों के साथ एक ईमेल प्राप्त करेंगे."
|
||||
updated: "आपका पासवर्ड सफलतापूर्वक बदल गया था. अब आप साइन इन कर चुके हैं."
|
||||
send_instructions: "कुछ ही मिनटों में आप अपना पासवर्ड रीसेट करने के बारे में निर्देशों के साथ एक ईमेल प्राप्त करेंगे।"
|
||||
updated: "आपका पासवर्ड सफलतापूर्वक बदल गया था. अब आप साइन इन कर चुके हैं।"
|
||||
sessions:
|
||||
new:
|
||||
login: "लॉगिन"
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ hu:
|
|||
confirm: "Fiókom megerősítése"
|
||||
subject: "Megerősítési utasítások"
|
||||
you_can_confirm: "Megerősítheted a fiókod ezen a linken keresztül:"
|
||||
hello: "Szia %{email}!"
|
||||
hello: "Szia %{username}!"
|
||||
inviter:
|
||||
accept_at: "Meghívás elfogadása: %{url}"
|
||||
has_invited_you: "%{name} meghívott a Diaspora* közösségi oldalra."
|
||||
|
|
@ -45,7 +45,7 @@ hu:
|
|||
click_to_unlock: "Kattints az alábbi linkre, hogy feloldd a fiókod:"
|
||||
subject: "Feloldási utasítások"
|
||||
unlock: "Fiókom feloldása"
|
||||
welcome: "Üdv %{email}!"
|
||||
welcome: "Üdv %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Megváltoztatom a jelszavamat"
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ hye-classical:
|
|||
confirm: "Հաստատել իմ հաշիւը"
|
||||
subject: "Հաստատման ցուցումներ"
|
||||
you_can_confirm: "Կարող ես հաշիւդ հաստատել հետեւեալ յղմամբ՝"
|
||||
hello: "Ողջո՜յն, %{email}"
|
||||
hello: "Ողջո՜յն, %{username}"
|
||||
inviter:
|
||||
accept_at: "%{url} հասցէով, որը կարող ես հաստատել ստորև բերուած յղման միջոցով։"
|
||||
have_invited_you: "%{names} հրաւիրել է քեզ՝ միանալու դիասպորա*֊ին"
|
||||
|
|
@ -49,7 +49,7 @@ hye-classical:
|
|||
click_to_unlock: "Սեղմիր ներքեւի յղումը, որպէսզի ապաարգելափակես հաշիւդ։"
|
||||
subject: "Ապաարգելափակման ցուցումներ"
|
||||
unlock: "Ապաարգելափակել հաշիւս"
|
||||
welcome: "Բարի գալո՜ւստ, %{email}"
|
||||
welcome: "Բարի գալո՜ւստ, %{username}"
|
||||
omniauth_callbacks:
|
||||
failure: "Չյաջողուեց նոյնականացնել քեզ %{kind}֊ից զի՝ %{reason}"
|
||||
success: "Յաջողութեամբ նոյնականացումն անցար %{kind} հաշուով։"
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ hye:
|
|||
confirm: "Հաստատել իմ հաշիվը"
|
||||
subject: "Հաստատման ցուցումներ"
|
||||
you_can_confirm: "Կարող ես հաշիվդ հաստատել հետևյալ հղմամբ՝"
|
||||
hello: "Ողջու՜յն, %{email}"
|
||||
hello: "Ողջու՜յն, %{username}"
|
||||
inviter:
|
||||
accept_at: "%{url} հասցեով, որը կարող ես հաստատել ստորև բերված հղման միջոցով։"
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -50,7 +50,7 @@ hye:
|
|||
click_to_unlock: "Սեղմիր ներքևի հղումը, որպեսզի ապաարգելափակես հաշիվդ։"
|
||||
subject: "Ապաարգելափակման ցուցումներ"
|
||||
unlock: "Ապաարգելափակել հաշիվս"
|
||||
welcome: "Բարի գալու՜ստ, %{email}"
|
||||
welcome: "Բարի գալու՜ստ, %{username}"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Փոխել իմ գաղտնաբառը"
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ ia:
|
|||
confirm: "Confirmar mi conto"
|
||||
subject: "Instructiones pro confirmar"
|
||||
you_can_confirm: "Tu pote confirmar tu conto per le ligamine sequente:"
|
||||
hello: "Salute, %{email}!"
|
||||
hello: "Salute, %{username}!"
|
||||
inviter:
|
||||
accept_at: "a %{url}, tu pote acceptar lo per le ligamine sequente."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -44,13 +44,14 @@ ia:
|
|||
ignore: "Si tu non ha demandate isto, per favor ignora iste message."
|
||||
someone_requested: "Qualcuno ha demandate un ligamine pro cambiar tu contrasigno. Si tu faceva iste demanda, tu pote facer isto per le ligamine sequente."
|
||||
subject: "Instructiones pro reinitialisar contrasigno"
|
||||
then_connect: "Post haber definite un nove contrasigno, tu potera aperir session in diaspora* de novo usante tu nomine de usator “%{username}” e tu nove contrasigno."
|
||||
wont_change: "Le contrasigno non cambiara si tu non clicca sur le ligamine precedente e specifica un nove."
|
||||
unlock_instructions:
|
||||
account_locked: "Tu conto ha essite blocate a causa de un numero excessive de tentativas fallite de accesso."
|
||||
click_to_unlock: "Clicca sur le ligamine sequente pro disblocar tu conto:"
|
||||
subject: "Instructiones pro disblocar"
|
||||
unlock: "Disblocar mi conto"
|
||||
welcome: "Benvenite, %{email}!"
|
||||
welcome: "Benvenite, %{username}!"
|
||||
omniauth_callbacks:
|
||||
failure: "Impossibile authenticar te a partir de %{kind} perque \"%{reason}\"."
|
||||
success: "Authentication a partir del conto %{kind} succedite."
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ id:
|
|||
confirm: "Konfirmasi akun saya"
|
||||
subject: "Instruksi pengesahan / konfirmasi"
|
||||
you_can_confirm: "Anda dapat mengkonfirmasi akun anda melalui link (tautan) di bawah ini:"
|
||||
hello: "Halo %{email}!"
|
||||
hello: "Halo %{username}!"
|
||||
inviter:
|
||||
accept_at: "di %{url}, anda dapat menerimanya melalui link (tautan) di bawah ini."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -44,7 +44,7 @@ id:
|
|||
click_to_unlock: "Klik link (tautan) di bawah untuk mengaktifkan akun anda:"
|
||||
subject: "Instruksi untuk membuka kunci"
|
||||
unlock: "Aktifkan akun saya"
|
||||
welcome: "Selamat datang %{email}!"
|
||||
welcome: "Selamat datang %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Ubah kata sandi saya"
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ is:
|
|||
confirm: "Staðfesta aðganginn minn"
|
||||
subject: "Leiðbeiningar um staðfestingu"
|
||||
you_can_confirm: "Þú getur staðfest aðganginn þinn með því að elta hlekkinn hér fyrir neðan:"
|
||||
hello: "Halló %{email}!"
|
||||
hello: "Halló %{username}!"
|
||||
inviter:
|
||||
accept_at: "á %{url}. Þú getur þegið boðið með því að fylgja hlekknum hér fyrir neðan."
|
||||
has_invited_you: "%{name}"
|
||||
|
|
@ -45,7 +45,7 @@ is:
|
|||
click_to_unlock: "Eltu hlekkinn hér fyrir neðan til að taka aðgang þinn úr lás."
|
||||
subject: "Leiðbeiningar fyrir aflæsingu"
|
||||
unlock: "Taka aðgang minn úr lás"
|
||||
welcome: "Velkomin/n %{email}!"
|
||||
welcome: "Velkomin/n %{username}!"
|
||||
passwords:
|
||||
edit:
|
||||
change_password: "Breyta lykilorði"
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue