Compare commits

...

1576 Commits

Author SHA1 Message Date
Dennis Schubert
f042f5d490 Merge branch 'hotfix/0.7.18.2' 2023-07-10 01:13:45 +02:00
Dennis Schubert
42b835f0c0 Enforce an ImageMagick policy.xml for all pods.
This fix was heavily inspired by Mastodon's fix for GHSA-9928-3cp5-93fm.
So, thank you Cure53 for finding this issue, thank you Mozilla for
paying Cure53 to look into it, and thanks for Mastodon for fixing it.
2023-07-10 01:12:36 +02:00
Benjamin Neff
52f206fa8a Merge branch 'hotfix/0.7.18.1' 2022-09-10 01:13:25 +02:00
Dennis Schubert
9075dfa470 Update binstubs
Newly generated binstubs will check for the string
`This file was generated by Bundler` inside `bin/bundle`, so we'd have
to update that anyway.

Also, there is a non-zero chance the updated `bundle` binstub resolves
some of the setup-specific issues we've seen.
2022-09-10 00:43:20 +02:00
Benjamin Neff
9485a02639 Merge branch 'next-minor' 2022-07-31 23:12:00 +02:00
Benjamin Neff
eaedd3d26c updated 11 locale files [ci skip] 2022-07-31 23:08:59 +02:00
Benjamin Neff
65909700f3 Merge pull request #8384 from SuperTux88/downgrade-bundler-next-minor
Downgrade Gemfile.lock to bundler 2.1.4
2022-07-24 21:08:14 +02:00
Benjamin Neff
586b319c79 Downgrade Gemfile.lock to bundler 2.1.4
This is the default bundler version that comes with ruby 2.7, and it
looks like ruby ruby 2.7 and bundler 2.3.18 have a problem with the new
splitted version where each gem source has it's own block and it
crashes.

To have less problems for podmins when updating, lets just downgrade
bundler and use the old lockfile format in next-minor. It's not a
problem anymore in develop as we don't have rails-assets anymore there,
as we switched to yarn.
2022-07-24 20:50:01 +02:00
Benjamin Neff
646685b42c Handle Faraday::ServerError (for example 502) as HTTPFailure
closes #8380
2022-07-24 17:20:21 +02:00
Benjamin Neff
78b28c3d54 Handle nodeinfo timeouts gracefully
some (especially bigger pods) are sometimes slow to respond with
statistics, so lets handle that gracefully and not mark the pods as
down.
2022-07-24 17:19:04 +02:00
Benjamin Neff
b29675fead Remove error if there was no error anymore
also add pod uri when logging offline pods ... just having a bunch of
"OFFLINE" log messages doesn't help at all.
2022-07-24 17:17:51 +02:00
Benjamin Neff
eb1c571511 Add xmppChat to NodeInfo 2.1 test for 0.7.x
Follow up for #8379
2022-07-23 18:40:11 +02:00
Benjamin Neff
4efc4dabf8 Show software and version directly in the pods table if no errors
closes #8379
2022-07-23 17:00:48 +02:00
Benjamin Neff
01f8f55dbb Add parsing of newer versions of NodeInfo
Always take the newest versions both nodes support
2022-07-23 16:59:41 +02:00
Benjamin Neff
49ba740b45 Add NodeInfo 2.1 2022-07-23 16:59:37 +02:00
Benjamin Neff
e984fa7d91 Don't use host-meta in connection tester anymore
This route was removed from the federation and doesn't exist anymore, so
checking for it doesn't make any sense.

But lets check if a server responds to /.well-known/nodeinfo instead.
All other software which supports the diaspora protocol should have this
endpoint by now. Parsing/validating nodeinfo is still handled
gracefully.

closes #8377
2022-07-23 00:53:07 +02:00
Dennis Schubert
428c97d089 Disable the default CSRF protection.
This was added in Rails 5.2 defaults, but we upgraded from 5.1 defaults to 6.1, so we didn't notice until now.

closes #8374
2022-07-21 05:30:55 +02:00
Benjamin Neff
3cf84c838f Disable export_concurrent to prevent segfault during precompile
See https://github.com/sass/sassc-ruby/issues/207

closes #8372
2022-07-21 03:57:26 +02:00
Benjamin Neff
ee68da7eeb Don't eager load active storage in production
We don't use active storage, but eager loading it tries to read the
config/storage.yml, which doesn't exist, because we don't need it.

571b4d5fb9/activestorage/lib/active_storage/engine.rb (L137)
571b4d5fb9/activestorage/app/models/active_storage/blob.rb (L354)

closes #8371
2022-07-21 03:53:47 +02:00
Benjamin Neff
2e3bd14a09 Fix some update_attributes in tests only on next-minor
These were already fixed on develop in another branch but were never
backported, so lets do that now.
2022-07-20 22:59:30 +02:00
Benjamin Neff
3c4da76be5 Fix follow up tasks for assets:precompile when no manifest existed
When no `.sprockets-manifest-xxx.json` existed, every instance of
`Sprockets::Manifest` generated their own path with their own random
filename, and since this happened before the assets were actually
precompiled, they were all empty. So the error pages didn't find the
manifest and the non-digest assets also didn't have any assets to copy.

So lets create our own instance of `Sprockets::Manifest` here, AFTER
`assets:precompile`, which then loads the manifest json that was used
during precompile, so all precompiled assets are available.

closes #8366
2022-07-20 21:32:21 +02:00
Benjamin Neff
3b02eb87bd Upgrade to bundler 2 2022-07-20 21:32:11 +02:00
Benjamin Neff
c72b30130e Bump sidekiq and sidekiq-cron 2022-07-20 21:27:53 +02:00
Benjamin Neff
01ab639736 Bump acts-as-taggable-on 2022-07-20 21:27:52 +02:00
Benjamin Neff
8a1e3fbec2 Bump nokogiri 2022-07-20 21:27:46 +02:00
Benjamin Neff
c1c9469840 Add ruby 2.7, drop ruby 2.5 2022-07-20 21:27:46 +02:00
Benjamin Neff
3bb9b9a18d Fix deprecation warnings for rails 6.1 2022-07-20 21:27:41 +02:00
Benjamin Neff
fe84d3e101 Upgrade to rails 6.1 2022-07-20 21:27:41 +02:00
Benjamin Neff
1ef3c83a0a Remove workaround for schema.rb
We don't have the schema.rb anymore in the repo, so we don't need it
compatible with both databases anymore.

See 5b1be7d8da
2022-07-20 21:26:58 +02:00
Benjamin Neff
ac86c29a85 Use template_name instead of action_name for notification mails
This is a new feature in rails 6
2022-07-20 21:26:58 +02:00
Benjamin Neff
17b84d3ddd Fix rendering of error pages to remove deprecation warning for rails 6.0 2022-07-20 21:26:58 +02:00
Benjamin Neff
b5a46cf7bb Fix deprecation warnings for rails 6.0 2022-07-20 21:26:58 +02:00
Benjamin Neff
2d38a24a86 Upgrade to rails 6.0 2022-07-20 21:26:58 +02:00
Benjamin Neff
2f30b42d93 Don't load sidekiq workers during initialization
This is to prevent the warning about zeitwerk autoloader
2022-07-20 21:26:40 +02:00
Benjamin Neff
14e27a65ae Move ActsAsTaggableOn::Tag overrides to initializer
This is to prepare for zeitwerk autoloader, and the old file couldn't be
autoloaded anyway, so the easiest is to just move it out of the models
folder.
2022-07-20 21:26:40 +02:00
Benjamin Neff
429aa8f374 Upgrade to sprockets 4 2022-07-20 21:26:40 +02:00
Benjamin Neff
0382cb48c1 Bump diaspora_federation to support rails 6 2022-07-20 21:26:13 +02:00
Benjamin Neff
13eb095e83 Bump js_image_paths to support rails 6 and sprockets 4 2022-07-20 21:25:51 +02:00
Benjamin Neff
3598a17ee2 Update .gitignore from develop branch 2022-07-18 00:54:42 +02:00
Benjamin Neff
a5e5c7f378 Fix Link to OWASP CSRF more information page
closes #8365
2022-07-16 04:44:17 +02:00
Benjamin Neff
dd3bc39c97 Render markdown to html for notifications 2022-07-16 04:34:07 +02:00
Benjamin Neff
3c02a1f067 Remove unused translation fallback 2022-07-16 04:22:51 +02:00
Benjamin Neff
a9ae84f3a6 Remove markerb dependency
markerb is dead and isn't compatible with rails 6 anymore. Removing it
means adding separate templates for text and html, this sadly means some
code duplication, but also luckily the templates aren't that
complicated, so the duplication is also very minimal.
2022-07-16 04:22:51 +02:00
Benjamin Neff
6cea355636 Fix escaping of names in the from header 2022-07-16 04:22:51 +02:00
Benjamin Neff
f76a8d7deb Fix sending mails after photo export 2022-07-16 04:22:51 +02:00
Benjamin Neff
41633fcea9 Don't autoload PeopleHelper during initialization
this is for future rails versions with zeitwerk autoloader where this
isn't allowed anymore
2022-07-16 04:22:51 +02:00
Benjamin Neff
a7a02e87cf Replace unmaintained sass-rails with sassc-rails
closes #8362
2022-07-03 23:14:42 +02:00
Benjamin Neff
485af7ea78 Remove compass-rails and just use the few images without a sprite
Fixes #6433
2022-07-03 23:14:01 +02:00
Benjamin Neff
5f48cedb84 Remove entypo-rails dependency and add font to vendor/assets
entypo-rails doesn't support newer rails versions

closes #8361
2022-07-03 20:44:10 +02:00
Benjamin Neff
739fc780c3 Manually stringify keys to fix sidekiq 7.0 deprecation warning
closes #8359
2022-06-29 13:27:37 +02:00
Benjamin Neff
2d9f133d30 Merge pull request #8357 from SuperTux88/gem-updates
Gem updates
2022-06-28 00:43:11 +02:00
Benjamin Neff
3ff162320e Bump rails-assets-jquery and jquery-rails 2022-06-27 03:21:28 +02:00
Benjamin Neff
edbb26b926 Bump other dependencies not directly in Gemfile 2022-06-27 03:00:34 +02:00
Benjamin Neff
9b23411d25 Add rails-assets-bootstrap to gems.diasporafoundation.org source block
this prevents a warning because somebody also uploaded an old version of
this to rubygems.org
2022-06-27 02:53:14 +02:00
Benjamin Neff
6753761c74 Bump cucumber-rails 2022-06-27 02:53:14 +02:00
Benjamin Neff
86f306fce8 Bump rspec-rails 2022-06-27 02:53:14 +02:00
Benjamin Neff
b48c72f188 Bump timecop 2022-06-27 02:53:14 +02:00
Benjamin Neff
47d0269043 Bump listen 2022-06-27 02:53:14 +02:00
Benjamin Neff
a1b6209415 Bump pronto-haml 2022-06-27 02:53:14 +02:00
Benjamin Neff
7d7549e01e Bump haml_lint 2022-06-27 02:53:14 +02:00
Benjamin Neff
25f5236d66 Bump asset_sync 2022-06-27 02:53:14 +02:00
Benjamin Neff
f044030db0 Fix version for minitest to 5.15.0
Newer versions don't support ruby 2.5 anymore, which we still use in CI
2022-06-27 02:53:13 +02:00
Benjamin Neff
e3e7d2daab Bump rails-timeago 2022-06-27 02:53:13 +02:00
Benjamin Neff
9189dbf348 Bump hamlit 2022-06-27 02:53:13 +02:00
Benjamin Neff
796047f543 Bump faraday 2022-06-27 02:53:13 +02:00
Benjamin Neff
61a560a58d Bump active_model_serializers 2022-06-27 02:53:13 +02:00
Benjamin Neff
aa0ac5bec6 Bump omniauth and omniauth-rails_csrf_protection 2022-06-27 02:53:13 +02:00
Benjamin Neff
1ba9416e22 Bump ruby-oembed 2022-06-27 02:53:13 +02:00
Benjamin Neff
c0450cbe9d Bump js-routes 2022-06-27 02:53:13 +02:00
Benjamin Neff
8ccf94a587 Bump fog-aws 2022-06-27 02:53:13 +02:00
Benjamin Neff
5238bb4c5d Bump activerecord-import 2022-06-27 02:53:13 +02:00
Benjamin Neff
e096c96c44 Bump pg 2022-06-27 02:53:13 +02:00
Benjamin Neff
a5a0b28d39 Bump mysql2 2022-06-27 02:53:13 +02:00
Benjamin Neff
ca40ca202a Bump sprockets-rails 2022-06-27 02:53:13 +02:00
Benjamin Neff
077bac95c0 Bump autoprefixer-rails 2022-06-27 02:53:13 +02:00
Benjamin Neff
dc1ec7665b Bump toml-rb 2022-06-27 02:53:12 +02:00
Benjamin Neff
d97ff9afce Bump terser 2022-06-27 02:53:12 +02:00
Benjamin Neff
8c4381c1ce Bump sidekiq and sidekiq-cron 2022-06-27 02:53:12 +02:00
Benjamin Neff
db74b364d6 Bump redis 2022-06-27 02:19:39 +02:00
Benjamin Neff
5b298e330c Bump rqrcode 2022-06-27 02:19:39 +02:00
Benjamin Neff
3d8cdc78e0 Bump devise-two-factor 2022-06-27 02:19:39 +02:00
Benjamin Neff
d801adcb6e Bump devise 2022-06-27 02:19:38 +02:00
Benjamin Neff
4076eb3fcf Bump json-schema and remove json-schema-rspec (unmaintained) 2022-06-27 02:19:38 +02:00
Benjamin Neff
7447beb04a Bump json 2022-06-27 02:19:38 +02:00
Benjamin Neff
a8dc10f5ad Bump unicorn 2022-06-27 02:19:38 +02:00
Benjamin Neff
0f7ea165f7 Bump rails 2022-06-27 02:19:38 +02:00
Sage Ross
6fadfb30fe Undo another Capybara refactor that causes CI to break
Alas.

Closed #8331
2022-06-19 19:30:41 +02:00
Sage Ross
107f118db4 Undo change to aspects_steps.rb that breaks the build
When I removed this and tested it locally, the feature spec still passed, but it is failing on CI, so it looks like we still need this `execute_script` use until we find a better Capybara strategy.
2022-06-19 19:29:57 +02:00
Sage Ross
ae5333d67d Revert "Replace "execute_script" for triggering hovercards"
This reverts commit e7dc4eca9e.
2022-06-19 19:29:57 +02:00
Sage Ross
4fe52a72f1 Fix comment style violation 2022-06-19 19:29:57 +02:00
Sage Ross
4588ce11c9 Replace "execute_script" for uploading images in specs 2022-06-19 19:29:57 +02:00
Sage Ross
d14036b630 Replace "evaluate_script" for toggling a Bootstrap switch in spec 2022-06-19 19:29:57 +02:00
Sage Ross
637dad208a Replace "execute_script" in publisher_steps definitions 2022-06-19 19:29:57 +02:00
Sage Ross
4548380080 Replace "execute_script" in spec scrolling down on notifications 2022-06-19 19:29:57 +02:00
Sage Ross
b67cf8e983 Replace "execute_script" for filling in Close Account modal
Using "fill_in" seems to work fine with the apparition driver, and will hopefully also work on CI now.
2022-06-19 19:29:57 +02:00
Sage Ross
ef7a5f8d6e Replace "execute_script" for triggering hovercards
In addition to getting rid of an "execute_script" instance, this approach is slightly higher fidelity, as it renders the hovercard at the correct place on the page and doesn't reach into jQuery to trigger the hovercard.
2022-06-19 19:29:57 +02:00
Sage Ross
688245c0de Remove unnecessary execute_script call in feature spec
This call to `execute_script` would directly call jQuery's `sortable` function on an element to make it sortable. However, this isn't necessary; the test can still drag the "Cat People" aspect to the desired position without it.
2022-06-19 19:29:57 +02:00
Sage Ross
245bc1a05f Remove unused custom web step
It looks like this web step is no longer used anywhere. It was implemented for the "Feature: inifinite scroll" test, but that no longer exists.
2022-06-19 19:29:57 +02:00
Sage Ross
df4504979e Refactor "I scroll" web step to avoid using execute_script
The apparition driver does not support "scroll_by" without going through "execute_script", but we can better express the intention of this test and make the scrolling action a bit more general by replacing "scroll a bit" with "scroll to [some element]" — in this case, we need to scroll until the "Change" button is visible so that we can press it.

This change_settings.feature spec is the only place that used "I scroll a bit".
2022-06-19 19:29:57 +02:00
Benjamin Neff
e5b65f6498 Fix jasmine fake publisher messing with follow up tests in random order 2022-06-19 19:29:50 +02:00
Sage Ross
cb774d1c50 Fix another order-dependent failure in router_spec.js 2022-06-19 17:24:41 +02:00
Sage Ross
692f5fdafb Fix style violations, per automated code review 2022-06-19 17:24:40 +02:00
Sage Ross
37d440f91e Turn on random spec order in jasmine.yml 2022-06-19 17:23:00 +02:00
Sage Ross
baeeee8e73 More order-dependent Jasmine test fixes 2022-06-19 17:23:00 +02:00
Sage Ross
23c2487550 Delete specs that cause order-dependent failures elsewhere
This set of specs — in particular, all the calls to `this.view.$el.find(...).trigger('click') — are changing the environment in ways that cause I18n missing key errors elsewhere.

There are failures in `app_spec.js` if this spec file is run before it, and I haven't found a way to reset the environment to avoid the issue.
2022-06-19 17:23:00 +02:00
Sage Ross
94956a2eda Add workound for order-dependent notification_collection_spec.js
This is from Flaburgan: https://github.com/diaspora/diaspora/pull/8305/files

I can't find a better way around it. The specs that call `onChangedUnreadStatus` change the environment in ways we can't figure out how to reset cleanly.
2022-06-19 17:23:00 +02:00
Sage Ross
09ecaec0b5 Fix order-dependent Jasmine failure due to missing translation key
There must be another Jasmine spec that modifies the locale without loading the default afterwards.
2022-06-19 17:23:00 +02:00
Sage Ross
2b352b86ae Fix order-dependent failures in comment_view_spec.js
It looks like these specs expect a logged-in user, and would fail when run after a test that logged out.
2022-06-19 17:23:00 +02:00
Sage Ross
1c577fb5b2 More fixes for order-dependent Jasmine spec failures
These ones would fail if `app.page` was in the wrong state from a previous test.
2022-06-19 17:23:00 +02:00
Sage Ross
b2ee986815 Fix order-dependent failure in app_spec.js
The 'sets the user' spec was failing if run after a spec that had already set the user.
2022-06-19 17:23:00 +02:00
Sage Ross
ae3bd1f62e Fix order-dependent jasmine failure in contacts_collection_spec.js
This was failing if `app.aspect` got set by another spec than ran before it (such as one of the other specs in the same file, when run in a different order).
2022-06-19 17:22:59 +02:00
Sage Ross
b195861483 Fix order-dependent failures in notification_dropdown_view_spec.js
These tests were failing because of an error thrown from `this.header.render()`, unless `head_view_spec.js` had already been run to set app.notificationsCollection.
2022-06-19 17:22:59 +02:00
Sage Ross
4e4d332d6e Fix more order-dependent jasmine specs 2022-06-19 17:22:59 +02:00
Sage Ross
56ef83fa8a Don't overwrite app.stream properties in tests
These cases of modifying app.stream can cause other specs to fail, depending on test order. Here we either don't modify them if the tests still pass without manually stubbing `addNow`, or we cache and restore the properties we need to test.
2022-06-19 17:22:59 +02:00
Sage Ross
f4234fa3a0 Fix order-dependence bug in single_post_interactions_spec.js
This was only passing when run after a loginAs from another spec.
2022-06-19 17:22:59 +02:00
Sage Ross
f85135f726 Make shortcuts_spec.js more order-independent
This spec was failing whenever router_spec.js was not run prior it it running.
2022-06-19 17:22:59 +02:00
Sage Ross
0831d4e294 Fix order-dependent failure of stream_view_spec.js
This spec was only passing when it was run after another spec (router_spec.js) that put `app.page` in an appropriate state.
2022-06-19 17:22:53 +02:00
Dennis Schubert
058090afe7 Start 0.7.18.0 cycle 2022-04-27 21:15:32 +02:00
Dennis Schubert
02eba842ae Merge branch 'next-minor' 2022-04-27 21:11:26 +02:00
Dennis Schubert
9212fd3f46 Merge pull request #8351 into next-minor 2022-04-27 20:35:34 +02:00
Dennis Schubert
31ea07daa1 Merge pull request #8350 into next-minor 2022-04-27 20:32:19 +02:00
Jonne Haß
43ee2dbb50 Do not allow to mass assign OTP fields on user edit page 2022-04-27 19:48:42 +02:00
Jonne Haß
8e6f3b91d3 bump rails to 5.2.7 2022-04-27 19:06:22 +02:00
Jonne Haß
1cfe0037f9 Do not allow the user to mass assign their own password alongside other
parameters

Much thanks to Breno Vitório (@brenu) for the report!
2022-04-27 13:44:48 +02:00
Dennis Schubert
f88807909c Merge branch 'main' into next-minor 2022-04-26 21:03:43 +02:00
Dennis Schubert
6ad4eb3be7 Add dedicated SECURITY.md.
Closes #8348
2022-04-26 21:02:35 +02:00
Dennis Schubert
7611391f9f Don't suggest to retry exports on failure.
closes #8343
2022-03-05 16:31:25 +01:00
Benjamin Neff
d896744ca1 Start 0.7.17.0 cycle 2022-02-12 00:07:58 +01:00
Benjamin Neff
82291ed7e7 Merge branch 'next-minor' 2022-02-12 00:06:20 +01:00
Benjamin Neff
d7fb7405ae updated 25 locale files [ci skip] 2022-02-11 23:59:53 +01:00
Benjamin Neff
d4800544f0 Bump rails to fix CVE-2022-23633
closes #8336
2022-02-11 23:31:19 +01:00
Benjamin Neff
eb977dc25a Use old person private key if relayable author migrated away
We only store signatures for relayables if the author is external, but
if the author becomes external through a migration, the signature is
missing. Lets just use the old persons private key to still be able to
generate a signature for the export.

closes #8310
2021-11-23 00:46:50 +01:00
Benjamin Neff
1570e3fb9a Migrate remote_photo_path and cleanup old photo uploads
If the migration contains a new remote_photo_path migrate all photos of
the old person to this path. If the person was local before, cleanup old
uploaded files of the photos.

closes #8314
2021-11-23 00:43:56 +01:00
flaburgan
c67fc4e0f7 Add sharing status in hovercards, fixes #6542
closes #8317
2021-11-23 00:31:41 +01:00
flaburgan
f6c885394d Refactor hovercards, fixes #8315
closes #8316
2021-11-23 00:30:21 +01:00
flaburgan
37f081959c Add a max-width to user name in the header, fixes #7676
closes #8313
2021-11-23 00:27:05 +01:00
Benjamin Neff
f69215edf1 Merge pull request #8318 from SuperTux88/update-gems
Update gems
2021-11-23 00:22:31 +01:00
Benjamin Neff
ec22f5883e Bump omniauth 2021-11-06 17:43:57 +01:00
Benjamin Neff
fbd14c8804 Bump indirect dependency gems 2021-11-06 05:01:21 +01:00
Benjamin Neff
b8e5021dd1 Bump will_paginate 2021-11-06 05:01:21 +01:00
Benjamin Neff
862796131f Bump webmock 2021-11-06 05:01:21 +01:00
Benjamin Neff
a5f59ef105 Bump toml-rb 2021-11-06 05:01:20 +01:00
Benjamin Neff
eea6d71c8d Bump terser 2021-11-06 05:01:20 +01:00
Benjamin Neff
c8fba1ffad Bump sidekiq 2021-11-06 05:01:20 +01:00
Benjamin Neff
fe0c143c89 Bump secure_headers 2021-11-06 05:01:20 +01:00
Benjamin Neff
62f98dcaff Bump rubyzip 2021-11-06 05:01:20 +01:00
Benjamin Neff
19f6057ded Bump rspec-rails 2021-11-06 05:01:20 +01:00
Benjamin Neff
ae6b5a634c Bump rqrcode 2021-11-06 05:01:20 +01:00
Benjamin Neff
cd32959b93 Bump redis 2021-11-06 05:01:20 +01:00
Benjamin Neff
6e8a0dd66a Bump openid_connect 2021-11-06 05:01:19 +01:00
Benjamin Neff
b3c13bc49e Bump nokogiri 2021-11-06 02:35:57 +01:00
Benjamin Neff
fef6380721 Bump js-routes 2021-11-06 02:35:57 +01:00
Benjamin Neff
9548a3645c Bump jasmine 2021-11-06 02:35:56 +01:00
Benjamin Neff
51a46f60f1 Bump hamlit 2021-11-06 02:35:56 +01:00
Benjamin Neff
a66bfc9614 Bump fog-aws 2021-11-06 02:35:56 +01:00
Benjamin Neff
10f62391d4 Bump faraday_middleware and faraday-cookie_jar 2021-11-06 02:35:56 +01:00
Benjamin Neff
a0646e9363 Bump devise-two-factor 2021-11-06 00:51:12 +01:00
Benjamin Neff
2eb52cedec Bump database_cleaner 2021-11-06 00:48:51 +01:00
Benjamin Neff
67069b1519 Bump cucumber 2021-11-06 00:45:06 +01:00
Benjamin Neff
ad24678be3 Bump autoprefixer-rails 2021-11-06 00:29:51 +01:00
Benjamin Neff
f27b4ae920 Bump asset_sync 2021-11-06 00:28:15 +01:00
Benjamin Neff
c939829912 Bump addressable 2021-11-06 00:25:18 +01:00
Benjamin Neff
39ab87d111 Remove deprecated Sidekiq::Web.sessions
See https://github.com/mperham/sidekiq/pull/4804

closes #8311
2021-10-30 03:11:23 +02:00
flaburgan
8a3c9a2463 Bump faraday to 0.17.4, diaspora_federation to 0.2.7
closes #8312
2021-10-30 03:10:36 +02:00
Benjamin Neff
5714e83ab2 Store signatures of AccountMigrations if the old person is local
That way it can be re-used when sending the AccountMigrations to other
pods again if a message for the migrated account is received.

fixes #7902
closes #8309
2021-10-25 03:40:16 +02:00
Benjamin Neff
3cb1e470a4 Resend AccountMigration or AccountDeletion for closed recipients 2021-10-25 03:34:03 +02:00
Thorsten Claus
88e2e593a4 Update open_graph_reader gem
closes #8307
2021-10-25 03:28:56 +02:00
Benjamin Neff
3292ce64fc Change placeholder in translations for #8304 2021-10-25 03:26:05 +02:00
Benjamin Neff
89cd77751f Change placeholder in translations for #8037 2021-10-25 03:26:04 +02:00
Benjamin Neff
d22ae06cff updated 82 locale files [ci skip] 2021-10-25 03:26:04 +02:00
David Morley
af9f26d11c Change domain for poduptime
closes #8304
2021-10-25 01:59:30 +02:00
flaburgan
5b3f75f011 Remind the username in the reset password e-mail
closes #8037
2021-10-25 01:58:47 +02:00
Benjamin Neff
dc99f0f77a Fix namespace for LineLength rule
closes #8303
2021-10-01 02:12:33 +02:00
Benjamin Neff
59baef3146 Enable HashTransform rules in rubocop because we have ruby >= 2.5 now 2021-10-01 02:12:25 +02:00
Benjamin Neff
0bb4ffce89 Disable Style/AccessorGrouping in rubocop
It makes more sense to allow to structure and group accessors how it
makes sense in the code instead of enforcing it to be grouped in a
specific way.
2021-10-01 02:12:25 +02:00
Benjamin Neff
b2a56376cd Fix running jasmine tests in docker
closes #8299
2021-10-01 02:11:36 +02:00
Thorsten Claus
4c337c6952 8139 add a podmin mail to footer
fixes #8139
closes #8242
2021-09-19 14:27:46 +02:00
Benjamin Neff
d39a4e3621 Also need to handle account_migration in AccountDeleter spec
Also backported from #7660
2021-09-19 03:45:52 +02:00
Benjamin Neff
fab48ee96d Also need to exclude account_migration from persons reference
Also backported from #7660
2021-09-19 03:41:26 +02:00
Benjamin Neff
b8ea120ff2 Backport account_migration relation on person from #7660 2021-09-19 03:13:02 +02:00
Thorsten Claus
2a99cc93ba diaspora should send AccountMigration message back when a federation message received for a moved account
I use Senya's Patch for this
The extra check is for satisfying tests, which don't create real database objects.

fixes #7902
closes #8288
2021-09-19 02:20:38 +02:00
Thorsten Claus
8f9ac33649 Using shared markdown options for plain text
fixes #7960
closes #8277
2021-09-18 19:22:27 +02:00
Thorsten Claus
c71caa5cb8 #7960 Add support for Markdown footnote syntax in Mobile view
Splitting stripdown and markdownify options, because the footnote option seems to let the Redcarpet::Render::StripDown function crash
2021-09-18 19:19:02 +02:00
Thorsten Claus
122e12a068 #7960 Add support for Markdown footnote syntax 2021-09-18 19:19:02 +02:00
Benjamin Neff
28f03f0a11 Cleanup person_by_handle route
I think this is a leftover from a long time ago and I can't find
anything that still uses that

closes #8280
2021-09-18 19:18:34 +02:00
Thorsten Claus
8392c894d2 ensure ./log folder exists
closes #8287
2021-09-18 19:18:03 +02:00
Benjamin Neff
b2ba0123e1 Fix FactoryBot for next-minor 2021-08-16 01:02:08 +02:00
Thorsten Claus
8691e650dc Person.find_or_fetch_by_identifier never return nil
Person.find_or_fetch_by_identifier raises an exception if person is not found localy and not fetchable. It never returns nil. These code changes take care about this behaviour and changes specs and code to behave equally.

Also related to #8253
2021-08-16 00:24:33 +02:00
Pirate Praveen
20a3abd864 Switch to terser gem from uglifier for JS compression
closes #8268
2021-08-16 00:21:17 +02:00
Thorsten Claus
07a49de7e1 Using galleries default border radius Small indicator images in image gallery are round ones, this doesn't correspond with preview shown in stream. It also doesn't look good on real-world images. (may look OK for User profile images)
closes #8275
2021-07-26 02:37:22 +02:00
Benjamin Neff
7d0c29e99a Update repo data before trying to install packages
closes #8276
2021-07-26 02:31:53 +02:00
Benjamin Neff
7e9987b7f5 Downgrade ethon because of https://github.com/typhoeus/ethon/issues/194
closes #8267
2021-07-04 23:28:15 +02:00
Dennis Schubert
805a35e985 Point /protocol route to the current federation documentation. 2021-07-04 22:07:51 +02:00
Dennis Schubert
407f51d5a3 Allow points and dashes in the username.
This reverts b3ca504c40. We don't quite know why that was added, but we assume it's because of format strings. Some pre-2011 users exist that still have dots or dashes in their username, and those accounts are somewhat broken now.

closes #8266
2021-07-04 22:07:21 +02:00
Benjamin Neff
8f804e376a Don't export chat_enabled flag anymore
The chat is already removed for 0.8, so there is no need to still export
this data since it can't be imported anyway.

Related to #8069

closes #8265
2021-07-04 22:03:37 +02:00
Benjamin Neff
342d4f7fde Add blocks to archive json schema 2021-07-03 03:00:45 +02:00
Thorsten Claus
b31f9106a1 Migration: Exporting user blocks
closes #8263
2021-07-03 02:51:41 +02:00
Benjamin Neff
7b73002a2c Merge pull request #8261 from SuperTux88/gem-updates
Gem updates
2021-06-30 23:21:52 +02:00
Benjamin Neff
c203c1eb94 Cleanup unused commenting_disabled? and can_comment?
closes #8262
2021-06-30 23:19:29 +02:00
Benjamin Neff
c1093abaef Bump some dependency gems 2021-06-28 01:34:26 +02:00
Benjamin Neff
319d5b55d9 Bump webmock 2021-06-28 01:34:26 +02:00
Benjamin Neff
6b48580373 Bump sprockets-rails 2021-06-28 01:34:25 +02:00
Benjamin Neff
da68d363a0 Bump simplecov 2021-06-28 01:34:25 +02:00
Benjamin Neff
2f29bb3035 Bump ruby-oembed 2021-06-28 01:34:25 +02:00
Benjamin Neff
b08202f51d Bump rqrcode 2021-06-28 01:31:01 +02:00
Benjamin Neff
053a93ea08 Bump redis 2021-06-28 01:30:37 +02:00
Benjamin Neff
e790e01753 Bump rails-timeago 2021-06-28 01:30:37 +02:00
Benjamin Neff
0e81a2da86 Bump rails-controller-testing 2021-06-28 01:30:37 +02:00
Benjamin Neff
2fd82c92dd Bump pry 2021-06-28 01:30:37 +02:00
Benjamin Neff
72b66a2782 Bump openid_connect 2021-06-28 01:30:37 +02:00
Benjamin Neff
72ad6fd23b Bump mini_magick 2021-06-28 01:30:37 +02:00
Benjamin Neff
29ea68737d Bump leaflet-rails 2021-06-28 01:30:37 +02:00
Benjamin Neff
c98598b8bc Bump js-routes 2021-06-28 01:30:37 +02:00
Benjamin Neff
edccab4ab3 Bump handlebars_assets 2021-06-28 01:30:36 +02:00
Benjamin Neff
414638476e Bump hamlit 2021-06-28 01:30:36 +02:00
Benjamin Neff
8eb2a9ca12 Bump haml_lint 2021-06-28 01:30:36 +02:00
Benjamin Neff
e1061c3d5c Bump fog-aws 2021-06-28 01:30:36 +02:00
Benjamin Neff
096297bd86 Bump devise 2021-06-28 01:30:34 +02:00
Benjamin Neff
dc3bef6a93 Bump carrierwave 2021-06-28 01:28:15 +02:00
Benjamin Neff
0c4d9bb702 Bump autoprefixer-rails 2021-06-28 01:28:15 +02:00
Benjamin Neff
ca44e91de6 Bump asset_sync 2021-06-28 01:28:15 +02:00
Benjamin Neff
93fae13cab Bump acts-as-taggable-on 2021-06-28 01:28:15 +02:00
Benjamin Neff
bd68e8ec83 Bump activerecord-import 2021-06-28 01:28:14 +02:00
Benjamin Neff
22f0538464 Bump gon 2021-06-27 23:09:12 +02:00
Benjamin Neff
486026a1b6 Bump nokogiri 2021-06-27 23:07:28 +02:00
Benjamin Neff
32e580b3ec Bump bindata 2021-06-27 23:05:02 +02:00
Benjamin Neff
2a22bb01c4 Bump rails 2021-06-27 23:01:41 +02:00
Akshay S Dinesh
b375bfa630 Add more closing tags to fix specs
closes #8159
2021-06-27 22:23:22 +02:00
Pirate Praveen
77edc5105e Update jquery to 3.5.1 (jquery-rails 4.4.0 and rails-assets-jquery 3.5.1) 2021-06-27 22:21:27 +02:00
Thorsten Claus
43d489edda Fixed test
closes #8244
2021-06-13 01:26:27 +02:00
Thorsten Claus
3793d36609 Added tag handling 2021-06-13 01:24:49 +02:00
Allan Klaus
b2b03d2679 Improve Service::Tumblr
- Fix rubocop styles
- Improve specs coverage
2021-06-13 01:24:48 +02:00
Pirate Praveen
92a096f03c Add closing tags to replace invalid self-closing tags
closes #8251
closes #8158
2021-06-13 01:14:03 +02:00
Thorsten Claus
1f510d0b40 Wrapped local_comments also in a cache
closes #8241
closes #7992
2021-06-13 01:09:44 +02:00
Thorsten Claus
7042237218 Styles, SQL format 2021-06-13 01:03:22 +02:00
Thorsten Claus
d4331f4e65 7992 wrap local_posts from statistics in a cache 2021-06-13 01:03:18 +02:00
Jonne Haß
ba905334f7 Start 0.7.16.0 cycle 2021-04-18 13:14:29 +02:00
Jonne Haß
1d0982822b Merge branch 'next-minor' 2021-04-18 13:09:59 +02:00
Jonne Haß
33b7d3253a Update unicorn to 6.0.0 2021-04-17 11:55:47 +02:00
Jonne Haß
0fcd166387 Redis#client.disconnect is Redis#close now 2021-04-11 20:49:41 +02:00
Jonne Haß
cba2b9a3a9 Revert "Update bootstrap-switch-rails 3.3.3 -> 3.3.5"
This reverts commit cb675f5c8d.
2021-04-11 20:34:11 +02:00
Jonne Haß
22815abb22 Rails depends on the listen gem in development mode 2021-04-11 20:30:11 +02:00
Jonne Haß
6e55ae7b5e update Gemfile.lock for carrierwave 1.3.2
🙈
2021-04-11 17:42:21 +02:00
Jonne Haß
6f9c52e2b4 update to carrierwave 1.3.2 2021-04-11 17:35:01 +02:00
Jonne Haß
231ca2c3b1 update unrestricted gems 2021-04-11 17:25:18 +02:00
Jonne Haß
24e8be37c2 update jasmine to 3.7.0 2021-04-11 17:25:18 +02:00
Jonne Haß
1d8b9bde43 update hamlit to 2.14.6 2021-04-11 17:25:18 +02:00
Jonne Haß
a18defc90f update haml to 5.2.1 2021-04-11 17:25:18 +02:00
Jonne Haß
e4164eb18f update rspec suite dependencies 2021-04-11 17:25:18 +02:00
Jonne Haß
a36ffff5f7 update linters 2021-04-11 17:25:18 +02:00
Jonne Haß
2412ee390d update capybara and cucumber-rails 2021-04-11 17:25:18 +02:00
Jonne Haß
f949ae2aab update pry 2021-04-11 17:25:18 +02:00
Jonne Haß
b4b4efbab1 drop guard dev tool 2021-04-11 17:25:18 +02:00
Jonne Haß
7277200bc5 update devise to 4.7.3 2021-04-11 17:25:18 +02:00
Jonne Haß
7960a51d12 update open_graph_reader to 0.7.1 2021-04-11 17:25:18 +02:00
Jonne Haß
f55237ca6b update nokogiri to 1.11.3 2021-04-11 17:25:18 +02:00
Jonne Haß
52f08f1178 update redcarpet to 3.5.1 2021-04-11 17:25:18 +02:00
Jonne Haß
aa51329a49 update to rails 5.2.5 2021-04-11 17:25:18 +02:00
Jonne Haß
62bb4dc7b6 Update to Sidekiq 6
closes #8153
closes #8162
2021-04-11 17:25:18 +02:00
Jonne Haß
f52dbe570d Update autoprefixer-rails to 10.2.4.0
closes #8155
2021-04-11 17:25:18 +02:00
Jonne Haß
8d7b866c87 update secure_headers to 6.3.2
closes #8151
2021-04-11 17:25:18 +02:00
Jonne Haß
ee35ad3200 update devise-two-factor to 4.0.0 2021-04-11 17:25:18 +02:00
Pirate Praveen
cb675f5c8d Update bootstrap-switch-rails 3.3.3 -> 3.3.5
closes #8149
2021-04-11 17:25:18 +02:00
Pirate Praveen
4c6937838d Update responders 2.4.1 -> 3.0.1
closes #8148
2021-04-11 17:25:18 +02:00
Pirate Praveen
18ea3343fd Update typhoeus 1.3.1 -> 1.4.0
closes #8145
2021-04-11 17:25:18 +02:00
Pirate Praveen
cd9f79a018 Update rubyzip from 1.3.0 to 2.3.0
closes #8145
2021-04-11 17:25:18 +02:00
gabrielrumiranda
394eafccc5 Actually implement validation error case in Photo#ownserhip_of_status_message
closes #8214
closes #8048

Co-authored-by: Thorsten Claus <thorstenclaus@web.de>
2021-04-11 17:22:40 +02:00
Gayathrir1666
ef9e764f7a Add scrollbar to aspect dropdowns
closes #8213
closes #7696

Co-authored-by: Hank Grabowski <hankgrabowski@gmail.com>
Co-authored-by: Thorsten Claus <thorstenclaus@web.de>
2021-04-11 17:13:25 +02:00
Thorsten Claus
a420ba2cfc Formatting post per user fractions
closes #8227
2021-04-11 13:16:15 +02:00
Thorsten Claus
a98fdc8079 Remove 'heidelberg' tile map service.
Updated settings for MapTiles as recommended by leaflet.js
Updating current licence text

Closes #8209
closes #8215
2021-04-11 01:45:05 +02:00
Jonne Haß
7154fc3ccc Port cukes from poltergeist to aparition
closes #8234
2021-04-10 23:17:39 +02:00
Jonne Haß
cd6eb3de7f Run jasmine specs using chrome headless 2021-04-10 23:16:10 +02:00
Pirate Praveen
79133df4a9 Update mimemagic (0.3.5 is removed from rubygems.org)
closes #8231
2021-04-10 11:33:22 +02:00
Benjamin Neff
e7c5da2fff Use bundler-cache: true instead of actions/cache@v2
Using actions/cache@v2 causes problems with ruby, see
https://github.com/ruby/setup-ruby#caching-bundle-install-manually

Closes #8221

closes #8226
2021-04-10 11:07:37 +02:00
Thorsten Claus
d7941230a4 Replace some http links with their https counterparts.
closes #8207
2021-02-21 19:44:42 +01:00
Ashley Nelson
d5d53baa1c Delete user invitation code during account deletion
closes #8202
2021-02-14 18:49:48 +01:00
Dennis Schubert
7a7c48a470 CI - Don't fail fast.
Other runs might still result in interesting results, even if one suite fails.

closes #8204
2021-02-08 21:13:50 +01:00
Dennis Schubert
875f54b846 CI - Install all Ubuntu deps into the CI environment.
This matches what we suggest on the wiki -- just to make sure.
2021-02-08 21:13:44 +01:00
Benjamin Neff
1faddbc911 Fix "Change email" button position on mobile-ui
closes #8193
2020-12-30 14:16:02 +01:00
Benjamin Neff
98e70c8221 Fix syntax error for default_color_theme in diaspora.toml.example
closes #8194
2020-12-30 13:29:39 +01:00
Jonne Haß
cfd5397cfc GHA: Run Jasmine in separate, time limited step for now
closes #8182
2020-11-04 18:09:36 +01:00
Benjamin Neff
d9013250fd Upgrade docker image to ruby 2.6 and debian buster
closes #8180
2020-11-04 14:22:22 +01:00
Benjamin Neff
f51ad14c1b Cleanup dependencies in docker image
Replace ghostscript with gsfonts, the captcha only needs gsfonts to
work.
2020-11-04 14:22:02 +01:00
Jonne Haß
6f3d68110a bump jasmine to 3.6.0
closes #8179
2020-11-02 19:55:38 +01:00
Jonne Haß
8bca84422e cucumber: don't fail on flaky tests, fail-fast 2020-11-02 19:55:36 +01:00
Jonne Haß
e1aff7e3ab drop coveralls 2020-11-02 19:55:36 +01:00
Jonne Haß
203ca77a2f github actions ci: don't stop other jobs in matrix if one fails 2020-11-02 16:08:10 +01:00
David Morley
9793f89761 Update poduptime link to diaspora only list
closes #8174
2020-11-02 15:33:38 +01:00
David Morley
e24eb65ca4 update poduptime to diaspora list in readme
closes #8173
2020-11-02 15:31:01 +01:00
Jonne Haß
b8a85850e1 Migrate from Travis to Github Actions
closes #8178
2020-11-02 15:20:53 +01:00
Thorsten Claus
d0eb711ca0 In single post view deleting a comment updates the counter 2020-10-24 14:25:32 +02:00
Jonne Haß
2aaf37659d bump kostya-sigar to 2.0.8
closes #8165
2020-10-20 11:54:45 +02:00
Jonne Haß
c268495e04 Switch to toml-rb gem
For them dotted keys

closes #8152
2020-09-17 08:48:39 +02:00
Jonne Haß
ce82ba3dde Drop spring
it does more harm than good at this point

closes #8133
2020-09-04 21:52:24 +02:00
Jonne Haß
2acdc8e095 Add chat configuration to diaspora.toml.example 2020-09-04 21:49:30 +02:00
Jonne Haß
08395cc877 Migrate configuration to TOML
YAML is just too easy to get wrong

closes #8132
2020-09-04 21:48:54 +02:00
Jonne Haß
9dff9642b6 bundler: disable post install messages in production
closes #8131
2020-07-08 22:05:45 +02:00
Dennis Schubert
0937bfc420 updated 9 locale files [ci skip] 2020-06-24 18:46:08 +02:00
Dennis Schubert
d061c4e2cf Merge branch 'master' into next-minor 2020-06-14 22:12:58 +02:00
Dennis Schubert
4ca68a71d9 Merge branch 'release/0.7.14.0' 2020-06-14 22:11:23 +02:00
Dennis Schubert
3c124cefc3 updated 6 locale files [ci skip] 2020-06-14 22:10:24 +02:00
Dennis Schubert
9771a96add Start 0.7.15.0 cycle.
[ci skip]
2020-06-14 21:49:07 +02:00
Dennis Schubert
efa89cc2f3 Merge pull request #8130 from denschub/gem-updates
Bump Rails
2020-06-14 20:43:00 +02:00
Dennis Schubert
77062cbcaf Bump Rails 2020-06-13 23:49:57 +02:00
Noah Leal
ad91dddd63 Issue #8119 - Add length validation to a profile's gender field.
closes #8127
2020-06-13 23:31:03 +02:00
flaburgan
7193099902 Bump ruby version to 2.6, drop support of 2.3
closes #7929
2020-06-13 23:29:47 +02:00
Benjamin Neff
f882dd2d6f Bump octokit to 4.18.0 ... 4.17.0 was yanked :(
See octokit/octokit.rb#1219
2020-03-28 01:12:53 +01:00
Vitalie Ciubotaru
827a2ce991 Remove links to deleted profiles in admin user stats
closes #8063
closes #8061
2020-03-21 19:14:56 +01:00
Jonne Haß
ba8e0907cc update rails-timeago to 2.18.0 2020-03-20 20:03:42 +01:00
Jonne Haß
38d746b240 use latest ruby patch releases on travis 2020-03-20 20:03:42 +01:00
Jonne Haß
bd7feb83a6 update rqrcode to 1.1.2 2020-03-20 20:03:42 +01:00
Jonne Haß
813e6d4781 update rubocop to 0.80.1 and rubocop-rails to 2.4.1 2020-03-20 20:03:42 +01:00
Jonne Haß
9b6bc59854 update twitter to 7.0.0 2020-03-20 20:03:42 +01:00
Jonne Haß
3a3a9008b6 update simple_captcha2 to 0.5.0 2020-03-20 20:03:42 +01:00
Jonne Haß
1da14f2ef7 update sidekiq to 5.2.8 2020-03-20 20:03:42 +01:00
Jonne Haß
bec7e77e9e update asset_sync to 2.11.0 2020-03-20 20:03:42 +01:00
Jonne Haß
4a5610df2f update acts-as-taggable-on to 6.5.0 2020-03-20 20:03:42 +01:00
Jonne Haß
a7119fa7c1 update activerecord-import to 1.0.4 2020-03-20 20:03:42 +01:00
Jonne Haß
abec056c02 update omniauth to 1.9.1 2020-03-20 20:03:42 +01:00
Jonne Haß
60a50c881d update will_paginate to 3.3.0 2020-03-20 20:03:42 +01:00
Jonne Haß
de4a416280 update versionist to 2.0.1 2020-03-20 20:03:42 +01:00
Jonne Haß
3042b385c6 update string-direction to 1.2.2 2020-03-20 20:03:42 +01:00
Jonne Haß
a7f3ea976f update redcarpet to 3.5.0 2020-03-20 20:03:42 +01:00
Jonne Haß
33405d6ee6 update pg to 1.2.3 2020-03-20 20:03:42 +01:00
Jonne Haß
a681b317f3 update mysql2 to 0.5.3 2020-03-20 20:03:42 +01:00
Jonne Haß
db8bc5d874 update leaflet-rails to 1.6.0 2020-03-20 20:03:42 +01:00
Jonne Haß
04c545ef7d update js-routes to 1.4.9 2020-03-20 20:03:42 +01:00
Jonne Haß
ecdf130bcd update handlebars_assets to 0.23.8 2020-03-20 20:03:42 +01:00
Jonne Haß
a4dd210669 update hamlit to 2.11.0 2020-03-20 20:03:42 +01:00
Jonne Haß
8913a30d57 update haml_lint to 0.35.0 2020-03-20 20:03:42 +01:00
Jonne Haß
d6814878e9 update gon to 6.3.2 2020-03-20 20:03:42 +01:00
Jonne Haß
78b62dd3ed update addressable to 2.7.0 2020-03-20 20:03:42 +01:00
Jonne Haß
c74b0ab611 update nokogiri to 1.10.9 2020-03-20 20:03:42 +01:00
Jonne Haß
3eba2f3fa3 update fog-aws to 3.5.2 2020-03-20 20:03:42 +01:00
Jonne Haß
d9ef60b8b3 update uglifier to 4.2.0 2020-03-20 20:03:42 +01:00
Jonne Haß
05ee8f3db0 update unicorn to 5.5.3 2020-03-20 20:03:42 +01:00
Jonne Haß
872d87c772 update webmock to 3.8.3 2020-03-20 20:03:42 +01:00
Jonne Haß
27493cee41 update rspec-rails to 3.9.1 2020-03-20 20:03:42 +01:00
Jonne Haß
d0e5f90f84 update yard to 0.9.24 2020-03-20 20:03:42 +01:00
Jonne Haß
25a6c9583f update tins to 1.24.1 2020-03-20 20:03:42 +01:00
Jonne Haß
e5e4189569 update tilt to 2.0.10 2020-03-20 20:03:42 +01:00
Jonne Haß
8f0826a8bc update temple to 0.8.2 2020-03-20 20:03:42 +01:00
Jonne Haß
9c7d9186f6 update sassc to 2.2.1 2020-03-20 20:03:42 +01:00
Jonne Haß
d3210f1154 update rugged to 0.99.0 2020-03-20 20:03:42 +01:00
Jonne Haß
d5c22c3e49 update request_store to 1.5.0 2020-03-20 20:03:42 +01:00
Jonne Haß
ea4b670582 update raindrops to 0.19.1 2020-03-20 20:03:42 +01:00
Jonne Haß
9c449b0298 update rack-protection to 2.0.8.1 2020-03-20 20:03:42 +01:00
Jonne Haß
fa26c29bb2 update rack-oauth2 to 1.10.1 2020-03-20 20:03:42 +01:00
Jonne Haß
7f90110696 update parser to 2.7.0.4 2020-03-20 20:03:42 +01:00
Jonne Haß
8779a15e27 update parallel to 1.19.1 2020-03-20 20:03:42 +01:00
Jonne Haß
196f0699b0 update octokit to 4.17.0 2020-03-20 20:03:42 +01:00
Jonne Haß
19314f8a94 update oauth2 to 1.4.4 2020-03-20 20:03:42 +01:00
Jonne Haß
90926d95e9 update kgio to 2.11.3 2020-03-20 20:03:42 +01:00
Jonne Haß
95aaa7a140 update jsonpath to 1.0.5 2020-03-20 20:03:42 +01:00
Jonne Haß
95f08ac9af update jaro_winkler to 1.5.4 2020-03-20 20:03:42 +01:00
Jonne Haß
f0f8cf334c update http-form_data to 2.3.0 2020-03-20 20:03:42 +01:00
Jonne Haß
195780122b update gitlab to 4.14.0 2020-03-20 20:03:42 +01:00
Jonne Haß
403960811f update get_process_mem to 0.2.5 2020-03-20 20:03:42 +01:00
Jonne Haß
659bdf4b7a update fugit to 1.3.3 2020-03-20 20:03:42 +01:00
Jonne Haß
ffa69df704 update fog-core to 2.2.0 2020-03-20 20:03:42 +01:00
Jonne Haß
2d742ec0ff update fabrication to 2.21.0 2020-03-20 20:03:42 +01:00
Jonne Haß
95422c7566 update excon to 0.73.0 2020-03-20 20:03:42 +01:00
Jonne Haß
fc6d736471 update et-orbi to 1.2.4 2020-03-20 20:03:42 +01:00
Jonne Haß
2149ebb2df update domain_name to 0.5.20190701 2020-03-20 20:03:42 +01:00
Jonne Haß
e046a4cc3a update bindata to 2.4.6 2020-03-20 20:03:42 +01:00
Jonne Haß
4ac1b9ae87 update spring to 2.1.0 2020-03-20 20:03:42 +01:00
Jonne Haß
eb7a71a2a5 update rb-inotify to 0.10.1 2020-03-20 20:03:42 +01:00
Jonne Haß
b325d2ca43 update jasmine to 3.5.1 2020-03-20 20:03:42 +01:00
Jonne Haß
7ec921c956 update guard to 2.16.1 2020-03-20 20:03:42 +01:00
Jonne Haß
d561d2caf1 update fuubar to 2.5.0 2020-03-20 20:03:42 +01:00
Jonne Haß
67924fc404 update fixture_builder to 0.5.2 2020-03-20 20:03:42 +01:00
Jonne Haß
51e7eae2c3 update factory_girl_rails to 4.9.0 2020-03-20 20:03:42 +01:00
Jonne Haß
b54679a634 update database_cleaner to 1.8.3 2020-03-20 20:03:42 +01:00
Jonne Haß
b146c90e57 update cucumber-rails to 2.0 2020-03-20 20:03:42 +01:00
Jonne Haß
9211f930cd update json to 2.3.0 2020-03-20 20:03:42 +01:00
Jonne Haß
00c5f35190 Update Rails to 5.2.4.2 2020-03-20 20:03:42 +01:00
Benjamin Neff
c432a658dd Start 0.7.14.0 cycle 2020-02-12 00:36:21 +01:00
Benjamin Neff
c2a991fec1 Merge branch 'release/0.7.13.0' 2020-02-12 00:33:50 +01:00
Benjamin Neff
6f65d9f96c updated 11 locale files [ci skip] 2020-02-12 00:29:37 +01:00
Dennis Schubert
b0181fbbb9 Bump mini_magick.
closes #8108
2020-02-12 00:09:54 +01:00
Dennis Schubert
ec72ac1277 Bump nokogiri. 2020-02-11 23:56:49 +01:00
Dennis Schubert
bc601f7c34 Bump devise. 2020-02-11 23:56:49 +01:00
Dennis Schubert
905df19a34 Bump rubyzip. 2020-02-11 23:54:56 +01:00
Dennis Schubert
43b83cf8f7 Bump json-jwt. 2020-02-11 23:54:56 +01:00
Dennis Schubert
d898b5ba69 Bump rack-cors. 2020-02-11 23:54:56 +01:00
Dennis Schubert
b7ee911778 Bump excon. 2020-02-11 23:54:56 +01:00
Dennis Schubert
67d73ece80 Bump secure_headers. 2020-02-11 23:54:55 +01:00
Dennis Schubert
71023a8713 Replace secret_token with secret_key_base.
secrets.secret_token is deprecated in favor of secret_key_base and will be removed in Rails 6.0.
2020-02-11 23:54:55 +01:00
Dennis Schubert
2e2b42ef1a Mark non-attribute usage in SQL queries as safe.
Non-attribute arguments will be disallowed in Rails 6.0.
2020-02-11 23:54:55 +01:00
Dennis Schubert
4685df634c Make Person.search_query_string public.
Accessibility of private/protected class methods in :scope is deprecated and will be removed in Rails 6.0.
2020-02-11 23:53:14 +01:00
Dennis Schubert
e40a07f204 Replace be_success with be_successful in specs.
be_success is deprecated and will be removed in Rails 6.
2020-02-11 23:53:14 +01:00
Dennis Schubert
45e8b54bea Check for status codes instead of relying on response.redirect?.
Rack did so much refactoring, we do not see a Response object here anymore.
2020-02-11 23:53:14 +01:00
Dennis Schubert
35da56109f Create a dup string from the return value of .truncate.
Due to a bug in Rails, .truncate returns a frozen string if the string actually changed, but not if there are no changes. This leads to inconsistent behaviour, and broken tests.

This was fixed upstream, see https://github.com/rails/rails/pull/36109, but the fix did not make it into 5.2.x, so we have to work around for the time being.
2020-02-11 23:53:14 +01:00
Dennis Schubert
75ef13b5d1 Replace content_security_policy_nonce with content_security_policy_script_nonce.
To avoid an conflict with Rails, and to avoid confusing by twitter's gem overloading the method.
2020-02-11 23:53:14 +01:00
Dennis Schubert
25e9728fae Do not depend on the default parameter being set in Person#initialize.
ActiveRecord 5.2.x occasionally calls with a nil parameter explicitly provided, so using default arguments does not work.
2020-02-11 23:53:14 +01:00
Dennis Schubert
93b0e1eb22 Bump Rails. 2020-02-11 23:53:14 +01:00
Jonne Haß
1e642be040 Hide sign up link in mobile header when registrations are disabled
closes #8060
2020-01-27 09:30:11 +01:00
Dennis Schubert
1d72f95705 Issue #8062 - Drop rails-assets.org.
and replace it with our own Gem cache. This isn't pretty, as we have to manage that one ourselves, and pushing updates requires a core-team member, but rails-assets.org has become way too unreliable for us to be a viable option.

closes #8087
2020-01-22 21:08:06 +01:00
Jonne Haß
36b4076af6 set better example values for unicorn stdout/stderr log settings
[ci skip]

closes #8058
2019-10-25 01:24:08 +02:00
FeruzOripov
3856b44c57 Refactoring aspects_controller.rb
closes #8064
2019-10-25 01:22:02 +02:00
Jonne Haß
ba16185b8e install ghostscript on travis
closes #8049
2019-09-01 02:43:51 +02:00
Jonne Haß
6937fa13e5 travis: ensure postgresql and mysql are available 2019-09-01 02:42:11 +02:00
Jonne Haß
5b09e9d38d install libidn-dev on travis 2019-09-01 02:42:11 +02:00
Jonne Haß
6a7e937d90 Update open_graph_reader to 0.7.0
This should fix undefined method `og' for #<OpenGraphReader::Base:0x00007f73c53f2308 @bases={}>
for sites that have OpenGraph tags of other namespaces but no actual OpenGraph core tags
2019-09-01 02:42:11 +02:00
Benjamin Neff
593614aef1 Bump fuubar
Version 2.4.0 was yanked ... why do people do such things? m(

https://github.com/thekompanee/fuubar/issues/111
2019-07-06 22:43:41 +02:00
Benjamin Neff
b42c9896bc Migrate pending profile photos and fix upload to unpend profile photos
fixes #8043

closes #8044
2019-07-04 02:29:17 +02:00
Benjamin Neff
df4e79b842 Cleanup pending photos which were never posted with cronjob
Only delete photos older than a day, so we don't delete photos for posts
which were uploaded 10 minutes ago and the author is still writing the
post for it.

closes #8041
2019-07-03 13:24:27 +02:00
Benjamin Neff
397dbdbee8 Bump unf_ext
closes #8042
2019-07-03 13:21:20 +02:00
Benjamin Neff
68234fc91f Bump macaddr 2019-07-03 13:20:09 +02:00
Benjamin Neff
2b8cc070f2 Bump jsonpath 2019-07-03 13:20:08 +02:00
Benjamin Neff
18d6d39c62 Bump jwt 2019-07-03 13:20:08 +02:00
Benjamin Neff
6ede2ade7b Bump bcrypt 2019-07-03 13:20:08 +02:00
Benjamin Neff
4b2414c9eb Bump rspec-expectations and rspec-mocks 2019-07-03 13:20:08 +02:00
Benjamin Neff
b654ca7f82 Bump rails-assets-bootstrap 2019-07-03 13:20:08 +02:00
Benjamin Neff
5278ae6a96 Bump fugit 2019-07-03 13:20:08 +02:00
Benjamin Neff
4b921816eb Bump ffi 2019-07-03 13:20:08 +02:00
Benjamin Neff
2503934a04 Bump fabrication 2019-07-03 13:20:08 +02:00
Benjamin Neff
cde29af545 Bump rails-assets-jasmine-ajax 2019-07-03 13:20:07 +02:00
Benjamin Neff
1e2e064268 Bump jasmine 2019-07-03 13:20:07 +02:00
Benjamin Neff
435e60c214 Bump cucumber-rails 2019-07-03 13:20:07 +02:00
Benjamin Neff
51e7958c4b Bump pronto 2019-07-03 13:18:38 +02:00
Benjamin Neff
18b0dd0060 Bump coveralls 2019-07-03 13:18:38 +02:00
Benjamin Neff
26b247bf98 Bump webmock 2019-07-03 13:18:38 +02:00
Benjamin Neff
800676a90f Bump rspec-json_expectations 2019-07-03 13:18:38 +02:00
Benjamin Neff
556fa42004 Bump fuubar 2019-07-03 13:18:38 +02:00
Benjamin Neff
1458d2d57f Bump rubocop 2019-07-03 13:18:38 +02:00
Benjamin Neff
d2c4faeb9f Bump versionist 2019-07-03 13:18:37 +02:00
Benjamin Neff
3a1428a672 Bump hamlit 2019-07-03 13:17:37 +02:00
Benjamin Neff
06c582a672 Bump faraday_middleware 2019-07-03 13:17:36 +02:00
Benjamin Neff
fa08ebf7bd Bump addressable 2019-07-03 13:17:36 +02:00
Benjamin Neff
c059550943 Bump openid_connect 2019-07-03 13:17:36 +02:00
Benjamin Neff
ee503737cb Bump secure_headers 2019-07-03 13:17:36 +02:00
Benjamin Neff
a6261fdc64 Bump nokogiri 2019-07-03 13:17:36 +02:00
Benjamin Neff
56670865b9 Bump leaflet-rails 2019-07-03 13:17:36 +02:00
Benjamin Neff
325a9122b8 Bump js-routes 2019-07-03 13:17:36 +02:00
Benjamin Neff
a018abcfe9 Bump jquery 2019-07-03 13:17:35 +02:00
Benjamin Neff
8f5c248536 Bump handlebars_assets 2019-07-03 13:17:35 +02:00
Benjamin Neff
e2ce43c3c7 Bump fog-aws 2019-07-03 13:17:35 +02:00
Benjamin Neff
c154c4e2af Bump activerecord-import 2019-07-03 13:17:35 +02:00
Benjamin Neff
07513e2ec0 Bump rack-cors 2019-07-03 13:17:35 +02:00
Benjamin Neff
b1441356d2 Bump sidekiq 2019-07-03 13:17:35 +02:00
Benjamin Neff
e7a7f62531 Bump unicorn 2019-07-03 13:17:35 +02:00
Benjamin Neff
4ae373e3a2 Bump rails 2019-07-03 13:17:30 +02:00
Benjamin Neff
4cef2a4325 Merge branch 'master' into next-minor 2019-06-25 02:14:45 +02:00
Benjamin Neff
09a425cbbc Merge branch 'release/0.7.12.0' 2019-06-25 02:13:50 +02:00
Benjamin Neff
1e8a96d817 updated 64 locale files [ci skip] 2019-06-25 02:06:07 +02:00
Benjamin Neff
d674f53910 Start 0.7.13.0 cycle 2019-06-17 01:19:44 +02:00
Benjamin Neff
5602dc4418 Use username parameter first if present
this makes sure we don't use an old otp_user_id from an old session

closes #8031
2019-06-17 01:14:22 +02:00
Benjamin Neff
88e35d3f3a Use :database_authenticatable strategy to check password for OTP user
This:
* makes sure that after_database_authentication is called for users with
enabled 2fa.
* handles paranoid mode correctly
2019-06-17 01:12:42 +02:00
Benjamin Neff
ef31ea6b96 Enable remember me for all forms
fixes #8023
2019-06-17 01:12:42 +02:00
flaburgan
78538d034a Harmonize markdown titles sizes
fixes #7757

closes #8029
2019-06-17 01:10:41 +02:00
flaburgan
d8b3718a08 Fix wrong padding for captcha label in registration form
fixes #8016

closes #8028
2019-06-17 01:08:38 +02:00
Jonne Haß
1227f34b2a Pass normalized URI to OpenGraphReader
This ensures the hostname is downcase and thus subsequent third party library
assumptions hold, namely http-cookie (pulled through faraday-cookie_jar) doesn't
raise

closes #8021
2019-05-24 22:43:08 +02:00
Benjamin Neff
4a22f08539 Merge branch 'master' into next-minor 2019-05-13 22:52:08 +02:00
Benjamin Neff
dc7c5ffef6 Merge branch 'release/0.7.11.0' 2019-05-13 22:51:22 +02:00
Benjamin Neff
5aec9b966c updated 74 locale files [ci skip] 2019-05-13 22:49:16 +02:00
Benjamin Neff
e5ba9a1a46 Move translations to registrations.closed
And remove unused translations and make "another pod" translatable.

closes #7896
2019-05-12 00:25:36 +02:00
flaburgan
4feab5219e Use a partial to share code between mobile and desktop, add the new route to the RegistrationController, drop flash message for closed registrations 2019-05-12 00:25:36 +02:00
alebor-5
469983a623 Improve communication about signing up on closed pods
fixes #7767
2019-05-12 00:25:08 +02:00
flaburgan
6826e89a95 Change design, add a link to the official website
fixes #7910

closes #7966
2019-05-12 00:12:12 +02:00
David Moseler
e04ddd0bcc Clarify pod is part of diaspora in splash screen 2019-05-12 00:09:58 +02:00
Benjamin Neff
4d02aee375 Merge branch 'release/0.7.11.0' into next-minor 2019-05-12 00:07:36 +02:00
Benjamin Neff
165b8f4f6e Don't encrypt the OTP secret
It doesn't add any security to have this encrypted, but it adds
complexity for podmins, because they need to backup the key.

closes #8014
2019-05-12 00:06:28 +02:00
Jonne Haß
2d23a2601e fix old photos without a remote_photo_path or remote_photo_name
closes #8012
2019-05-11 22:07:48 +02:00
Dennis Schubert
3704be8bec Prepare 0.7.12.0 cycle
[ci skip]
2019-05-05 04:22:10 +02:00
Dennis Schubert
39b86ed486 Remvoe unused Changelog headline
[ci skip]
2019-05-05 04:21:37 +02:00
flaburgan
83a9877def Improve likes steps
closes #8002
2019-05-03 17:17:32 +02:00
flaburgan
554faa4116 Reorganize steps a bit 2019-05-03 17:15:32 +02:00
Dennis Schubert
caf822f497 Make sure 2fa settings have the right background color
closes #8008
2019-05-01 00:22:04 +02:00
Benjamin Neff
54fd4846c0 Use password to disable 2FA instead of a token
Using token doesn't make much sense when you can generate new tokens
right below.

closes #8006
2019-04-30 22:51:51 +02:00
Benjamin Neff
ecda6eccf6 Remove password reset and sign up link below two factor form
They don't make sense on that page, because at this stage, the user
already has an account and also has already entered their password.

closes #8005
2019-04-30 22:51:11 +02:00
Dennis Schubert
3c06bb2f4c Center <p>s inside formes used as secondary labels
closes #8004
2019-04-30 00:21:43 +02:00
Dennis Schubert
ef137f09f2 Add lock icon to the 2fa OTP field 2019-04-30 00:21:36 +02:00
Benjamin Neff
607659939d Enable paranoid mode for devise
fixes #8001

closes #8003
2019-04-30 00:21:00 +02:00
lislis
9d5b981809 Two factor authentication (#7751) 2019-04-28 23:24:40 +02:00
cmrd Senya
3f74a759b3 Bump diaspora_federation 2019-04-28 19:28:25 +03:00
Jonne Haß
1e827161fe rubocop: increase complexity limits [ci skip] 2019-04-28 16:48:40 +02:00
Benjamin Neff
17af65e22c Allow links with only the diaspora ID to link to a profile
closes #8000
2019-04-28 16:48:31 +02:00
Benjamin Neff
91aae4d755 Fix 500er when calling protocol handler with invalid URL 2019-04-28 16:44:29 +02:00
Benjamin Neff
035b6f39fc Change wording of description in PWA manifest 2019-04-27 19:11:27 +02:00
flaburgan
2073791cee Add a manifest.json file as a first step to make diaspora* a PWA
fixes #7997

closes #7998
2019-04-27 18:00:14 +02:00
flaburgan
5b6cef0679 Remove legacy mobile web-capable 2019-04-27 17:56:51 +02:00
Jonne Haß
d443401361 Stabilize Diaspora::Federation::Entities.build.builds a comment with edited_at
closes #7994
2019-04-26 17:41:25 +02:00
Jonne Haß
a38a93523d Stabilize Diaspora::Federation::Receive.comment.saves the signature data 2019-04-26 17:40:48 +02:00
Benjamin Neff
a28be72e74 Bump other dependency gems 2019-03-30 15:04:33 +01:00
Benjamin Neff
093cca9a76 Bump rails-controller-testing 2019-03-30 15:03:12 +01:00
Benjamin Neff
ccbc65993d Bump rspec-rails 2019-03-30 15:03:12 +01:00
Benjamin Neff
d9d0eb1512 Bump webmock 2019-03-30 15:03:12 +01:00
Benjamin Neff
f8419b14ba Bump shoulda-matchers 2019-03-30 15:03:12 +01:00
Benjamin Neff
290ddbf271 Bump capybara 2019-03-30 15:03:11 +01:00
Benjamin Neff
48c4cabd3f Bump byebug 2019-03-30 15:03:11 +01:00
Benjamin Neff
18d7b38037 Bump rubocop 2019-03-30 15:03:11 +01:00
Benjamin Neff
01468c34dd Bump rb-inotify 2019-03-30 15:03:11 +01:00
Benjamin Neff
7ae2dc6249 Bump asset_sync 2019-03-30 15:03:11 +01:00
Benjamin Neff
6f53f1bc0a Bump will_paginate 2019-03-30 15:03:11 +01:00
Benjamin Neff
5195f7daac Bump rails-timeago 2019-03-30 15:03:11 +01:00
Benjamin Neff
2585fb9b49 Bump hamlit 2019-03-30 15:03:11 +01:00
Benjamin Neff
02617a3562 Bump faraday 2019-03-30 15:03:10 +01:00
Benjamin Neff
0372924b90 Bump omniauth 2019-03-30 15:03:10 +01:00
Benjamin Neff
05472cc4f9 Bump secure_headers 2019-03-30 15:03:10 +01:00
Benjamin Neff
da39750244 Bump nokogiri 2019-03-30 15:03:10 +01:00
Benjamin Neff
3b0f435f69 Bump rails-i18n 2019-03-30 15:03:10 +01:00
Benjamin Neff
adaca8d0a3 Bump handlebars_assets 2019-03-30 15:03:10 +01:00
Benjamin Neff
8a10655f7f Bump mini_magick 2019-03-30 15:01:01 +01:00
Benjamin Neff
c8bef1077d Bump fog-aws 2019-03-30 15:01:01 +01:00
Benjamin Neff
da83456660 Bump carrierwave 2019-03-30 15:01:01 +01:00
Benjamin Neff
b7183d7cee Bump activerecord-import 2019-03-30 15:01:01 +01:00
Benjamin Neff
cd7af6df50 Bump pg 2019-03-30 15:01:01 +01:00
Benjamin Neff
54e44d6d7e Bump uglifier 2019-03-30 15:01:01 +01:00
Benjamin Neff
a63f11bbf4 Bump sidekiq-cron 2019-03-30 15:01:01 +01:00
Benjamin Neff
7b201f4bb9 Bump sidekiq 2019-03-30 15:01:00 +01:00
Benjamin Neff
f4fa7e10bd Bump json 2019-03-30 15:01:00 +01:00
Benjamin Neff
23d637b9a1 Bump unicorn 2019-03-30 15:01:00 +01:00
Benjamin Neff
360780c17f Bump responders 2019-03-30 15:01:00 +01:00
Benjamin Neff
c253272d83 Bump bootstrap-sass 2019-03-30 15:01:00 +01:00
Benjamin Neff
c063f6fa1b Bump devise 2019-03-30 15:01:00 +01:00
Benjamin Neff
94a32b2833 Bump rails 2019-03-30 15:00:54 +01:00
Benjamin Neff
a4031e09e1 Merge branch 'master' into next-minor 2019-02-26 01:02:42 +01:00
Benjamin Neff
663da1ef25 Merge branch 'release/0.7.10.0' 2019-02-26 01:01:51 +01:00
Benjamin Neff
7595168e01 updated 7 locale files [ci skip] 2019-02-26 00:57:43 +01:00
Dennis Schubert
189923040d Merge branch 'release/0.7.10.0' into next-minor 2019-02-19 03:03:51 +01:00
Dennis Schubert
a3a0a1fba9 Fix incorrect bug number in the changelog
Good one, eh? [ci skip]
2019-02-19 03:03:20 +01:00
Benjamin Neff
4687d7e1ea Start 0.7.11.0 cycle 2019-02-19 01:48:11 +01:00
Dennis Schubert
e47d0d9675 Replace dandelion.jpg with a public domain photo
Closes #7972

closes #7976
2019-02-19 01:29:52 +01:00
Benjamin Neff
3ea4396ddb Merge branch 'master' into next-minor 2019-01-14 03:13:44 +01:00
Benjamin Neff
1edcb0013c Merge branch 'release/0.7.9.0' 2019-01-14 03:11:54 +01:00
Benjamin Neff
1925127964 updated 87 locale files [ci skip] 2019-01-14 03:09:05 +01:00
Benjamin Neff
2894984f57 Fix order of posts on tags-stream for tags including 'activity'
closes #7959
2019-01-13 02:17:15 +01:00
Benjamin Neff
71595b4cbd Start 0.7.10.0 cycle 2019-01-07 02:03:06 +01:00
Benjamin Neff
654b524397 Fix typo in changelog for 0.7.9.0 2019-01-06 22:27:15 +01:00
Benjamin Neff
efcaa860ac Revert "Bump bootstrap-switch-rails"
It looks like 3.3.4 is broken :(

Fixes #7940

This reverts commit 5205e3c526.

closes #7955
2019-01-06 22:16:02 +01:00
flaburgan
3f700c3960 Fix photos galley when too many thumbnails by adding a scroll-x
fixes #7942

closes #7943
2019-01-06 22:12:38 +01:00
flaburgan
c8a1f308c6 Rename 'toggle mobile' to 'switch to touch-optimized mode' or 'switch to standard mode'
closes #7926
2019-01-06 22:04:22 +01:00
flaburgan
6804132c15 Do not autofollow back a user you are ignoring
fixes #7808

closes #7913
2019-01-06 22:02:10 +01:00
Hank Grabowski
58d2ce7ba6 Ignore Users in Mobile UI
fixes #7840

closes #7884
2019-01-06 21:55:33 +01:00
CSammy
a21cde4c00 Speed up public stream and remove obsolete indexes
closes #7944
2018-12-28 01:39:49 +01:00
Benjamin Neff
5a0381f832 Merge branch 'master' into next-minor 2018-11-25 22:37:43 +01:00
Benjamin Neff
6185355e92 Merge branch 'release/0.7.8.0' 2018-11-25 22:36:59 +01:00
Benjamin Neff
09a8c84ae0 updated 51 locale files [ci skip] 2018-11-25 22:34:46 +01:00
Besnik Bleta
5766a08b22 Better wording for the latest changes, part II and final
closes #7934
2018-11-25 22:32:20 +01:00
Besnik Bleta
440775f3b0 Better wording for the latest changes 2018-11-25 22:32:17 +01:00
Besnik Bleta
5ee85721f7 Fixing an oldsyntax error of considering %{actors} as a number, rather than a list of people’s usernames 2018-11-25 22:32:17 +01:00
Besnik Bleta
6c2b3a7b11 Update sq translations 2018-11-25 22:32:14 +01:00
Benjamin Neff
95032bae92 Fix typo in changelog for 0.7.8.0 2018-11-20 22:03:15 +01:00
Benjamin Neff
2d6a68c28f Start 0.7.9.0 cycle
[ci skip]
2018-11-19 00:50:04 +01:00
Benjamin Neff
8e170ab976 Add retry on travis to reduce random failures
closes #7932
2018-11-18 19:34:41 +01:00
Benjamin Neff
7a958bce69 Bump cucumber 2018-11-18 19:32:16 +01:00
Benjamin Neff
a09f7d73d8 Remove guard-cucumber
Looks dead, last commit over two years ago, and block upgrade of cucumber

See guard/guard-cucumber#36
2018-11-18 19:27:43 +01:00
Dennis Schubert
a6655c187d Add DIASPORA_DOCKER_PORT env var to change the port exposed by Docker
Set default port to 3000 as this is the default in the diaspora.yml.example

fixes #7927

closes #7928
2018-11-18 19:27:20 +01:00
Benjamin Neff
b24b31256e Bump warden
closes #7930
2018-11-17 21:06:20 +01:00
Benjamin Neff
ce10791526 Bump guard 2018-11-17 21:05:42 +01:00
Benjamin Neff
6fb1e1f524 Bump jwt 2018-11-17 21:05:42 +01:00
Benjamin Neff
2210cf0038 Bump timers 2018-11-17 21:05:42 +01:00
Benjamin Neff
e1d65d50ab Bump rack-oauth2 2018-11-17 21:05:41 +01:00
Benjamin Neff
5960b33df0 Bump nio4r 2018-11-17 21:05:41 +01:00
Benjamin Neff
72112f8bd7 Bump jsonpath 2018-11-17 21:05:41 +01:00
Benjamin Neff
f3568d9fb3 Bump http 2018-11-17 21:05:41 +01:00
Benjamin Neff
9b435f67de Bump get_process_mem 2018-11-17 21:05:41 +01:00
Benjamin Neff
37ec02dbd0 Bump domain_name 2018-11-17 21:05:41 +01:00
Benjamin Neff
7f67d007a0 Bump bindata 2018-11-17 21:05:40 +01:00
Benjamin Neff
514a370f75 Bump mail 2018-11-17 21:05:40 +01:00
Benjamin Neff
b062818289 Bump yard 2018-11-17 21:05:40 +01:00
Benjamin Neff
19556e7d7d Bump hamlit 2018-11-17 21:05:40 +01:00
Benjamin Neff
63b23056a5 Bump gon 2018-11-17 21:05:40 +01:00
Benjamin Neff
80f57673ab Bump typhoeus 2018-11-17 21:05:40 +01:00
Benjamin Neff
de5e22a543 Bump faraday 2018-11-17 21:04:37 +01:00
Benjamin Neff
98d165c0c5 Bump acts-as-taggable-on 2018-11-17 21:04:37 +01:00
Benjamin Neff
d8016d39cf Bump secure_headers 2018-11-17 21:04:37 +01:00
Benjamin Neff
f0eead3659 Bump rails-i18n 2018-11-17 21:04:37 +01:00
Benjamin Neff
eea609a228 Bump rails-assets-utatti-perfect-scrollbar 2018-11-17 21:04:00 +01:00
Benjamin Neff
efa69a23f4 Bump rails-assets-autosize 2018-11-17 21:02:35 +01:00
Benjamin Neff
382eda2966 Bump rails-assets-markdown-it 2018-11-17 21:02:35 +01:00
Benjamin Neff
67b825233d Bump js-routes 2018-11-17 21:02:35 +01:00
Benjamin Neff
e87b751107 Bump jquery-rails and rails-assets-jquery 2018-11-17 21:02:35 +01:00
Benjamin Neff
092ff0b550 Bump uuid 2018-11-17 21:02:35 +01:00
Benjamin Neff
464854443f Bump mini_magick 2018-11-17 21:02:34 +01:00
Benjamin Neff
cd3b454853 Bump fog-aws 2018-11-17 21:02:34 +01:00
Benjamin Neff
f8b5b99c5c Bump carrierwave 2018-11-17 21:02:34 +01:00
Benjamin Neff
4c8acb5a07 Bump pg 2018-11-17 21:02:34 +01:00
Benjamin Neff
ad725c5649 Bump mysql2 2018-11-17 21:02:34 +01:00
Benjamin Neff
e6375505bc Bump compass-rails 2018-11-17 21:02:34 +01:00
Benjamin Neff
5205e3c526 Bump bootstrap-switch-rails 2018-11-17 21:02:33 +01:00
Benjamin Neff
01f426e739 Bump autoprefixer-rails 2018-11-17 21:02:33 +01:00
Benjamin Neff
06c953a400 Bump uglifier 2018-11-17 21:02:33 +01:00
Benjamin Neff
8ee15ebc13 Bump sidekiq-cron 2018-11-17 21:02:33 +01:00
Benjamin Neff
3dbc0fc632 Bump sidekiq 2018-11-17 21:02:33 +01:00
Benjamin Neff
01db49ef26 Bump devise 2018-11-17 21:02:32 +01:00
Benjamin Neff
a2e326b27d Bump json-schema 2018-11-17 21:01:41 +01:00
Benjamin Neff
a55684c751 Bump unicorn 2018-11-17 21:01:41 +01:00
Benjamin Neff
c9588442a6 Bump rails-assets-jasmine-ajax 2018-11-17 21:01:41 +01:00
Benjamin Neff
0b676452d0 Bump jasmine 2018-11-17 21:01:41 +01:00
Benjamin Neff
d2cffe9d53 Bump rspec and rspec-rails 2018-11-17 21:01:41 +01:00
Benjamin Neff
e48571d6ed Bump webmock 2018-11-17 21:01:41 +01:00
Benjamin Neff
6d46975089 Bump database_cleaner 2018-11-17 21:01:40 +01:00
Benjamin Neff
330b8cd3ba Bump poltergeist 2018-11-17 21:01:40 +01:00
Benjamin Neff
84f3f73f3f Bump fuubar 2018-11-17 21:01:40 +01:00
Benjamin Neff
8ada40ec08 Bump simplecov and coveralls 2018-11-17 21:01:40 +01:00
Benjamin Neff
126866608b Bump pry 2018-11-17 21:01:40 +01:00
Benjamin Neff
05db801925 Bump activerecord-import 2018-11-17 21:01:39 +01:00
Benjamin Neff
4e78d51195 Bump rubocop 2018-11-17 21:01:39 +01:00
Benjamin Neff
a8218a39ed Bump pronto-rubocop 2018-11-17 21:01:39 +01:00
Benjamin Neff
1b21d507c9 Bump haml_lint 2018-11-17 21:01:39 +01:00
Benjamin Neff
da305a44cd Bump asset_sync 2018-11-17 21:01:39 +01:00
Benjamin Neff
25a9f5d5d7 Merge branch 'master' into next-minor 2018-11-08 20:58:22 +01:00
Benjamin Neff
fa0e34f687 Merge branch 'hotfix/0.7.7.1' 2018-11-08 20:57:09 +01:00
Benjamin Neff
32cd764786 Fix XSS via OpenGraph on mobile 2018-11-08 20:41:50 +01:00
Benjamin Neff
f23791b7f7 Bump rack
Fixes CVE-2018-16470 and CVE-2018-16471
2018-11-08 19:29:01 +01:00
Benjamin Neff
9723e283e1 Use sudo for docker if socket is not writable
closes #7921
2018-11-08 05:15:47 +01:00
Benjamin Neff
3c55a425c7 Fix script domain for instagram in CSP header
closes #7920
2018-11-08 05:12:55 +01:00
flaburgan
e33466de89 Display raw images in gallery
closes #7890
2018-11-08 05:08:04 +01:00
Hank Grabowski
cab0e0100b 7841 Post Unlike sets status icon correctly
closes #7882
fixes #7841
2018-11-08 05:06:34 +01:00
Bennett Goble
935ff66c96 Sharpen small and medium thumbnails
closes #7924
2018-11-04 03:07:42 +01:00
Benjamin Neff
2c56e447ed Ignore invalid URLs for camo
When people only write `https://` as image URL, this would fail with
`Addressable::URI::InvalidURIError: Absolute URI missing hierarchical segment: 'https://'`.

closes #7922
2018-11-04 03:06:21 +01:00
Benjamin Neff
b2712ebf1d Use libjemalloc if it's available for better memory usage
Fixes #6763

closes #7919
2018-11-04 03:04:39 +01:00
flaburgan
470efd4ec5 Move comment timestamp next to author name, add permalink
closes #7905
2018-11-04 03:01:27 +01:00
flaburgan
b977e9c39a Save a screenshot of the page in tmp/capybara when a cucumber test is failing
closes #7912
2018-11-02 01:39:04 +01:00
flaburgan
65e0f90b86 Reword the web handler setting
fixes #7838

closes #7909
2018-11-02 01:35:44 +01:00
CSammy
dae1717da8 Add docker setup for development
closes #7870
2018-10-28 22:09:06 +01:00
Dennis Schubert
0133a9f354 updated 17 locale files [ci skip] 2018-10-27 00:13:47 +02:00
Dennis Schubert
2c8d75100c Merge branch 'master' into next-minor 2018-10-15 02:44:43 +02:00
Dennis Schubert
d8c1b4f460 Merge branch 'release/0.7.7.0' 2018-10-15 02:43:19 +02:00
Dennis Schubert
fcbc470b5c Merge branch 'release/0.7.7.0' into next-minor 2018-10-15 02:41:22 +02:00
Dennis Schubert
af3e2e6d53 updated 33 locale files [ci skip] 2018-10-15 02:40:23 +02:00
Zachary Rabinovich
c4fed4bbcc Add the ability to assign roles in the admin panel
closes #7868
2018-10-14 06:03:06 +02:00
Dennis Schubert
4911782e9b Merge branch 'release/0.7.7.0' into next-minor 2018-10-08 02:57:50 +02:00
Benjamin Neff
48ebd571d8 Bump diaspora_federation
closes #7876
2018-10-08 02:57:33 +02:00
Benjamin Neff
3be814ea0f Bump nokogiri
Fixes:
* CVE-2016-9318
* CVE-2017-16932
* CVE-2017-18258
* CVE-2018-14404
* CVE-2018-14567
2018-10-08 02:56:56 +02:00
Benjamin Neff
56bb4be9d3 Bump rubyzip
Fixes CVE-2018-1000544
2018-10-08 02:52:53 +02:00
Dennis Schubert
89d9a865b6 Merge branch 'release/0.7.7.0' into next-minor 2018-10-08 02:50:29 +02:00
Benjamin Neff
fc6893d4fc Remove facebook integration
Facebook removed the API and facebook integration is broken now, so lets
remove it.

closes #7874
2018-10-08 02:50:25 +02:00
Dennis Schubert
3cd6f9abbb Start 0.7.8.0 cycle
[ci skip]
2018-10-08 02:42:10 +02:00
Benjamin Neff
d0c6495bba Bump unicode-display_width
closes #7873
2018-10-04 04:38:05 +02:00
Luna Gloaming
45b7f0b119 Added quotation marks for postgresql parameters.
As a new, novice user, I ran into an issue where my postgresql
password contained special characters.  After a brief conversation
with DenSchub on #diaspora, it was noted that while the example
database configuration had quotes added for mysql, but not for
postgresql, and it was suggested this be improved.

closes #7875
2018-10-04 04:36:57 +02:00
Benjamin Neff
44452749bc Don't depend on the database content when loading the tests
closes #7872
2018-09-30 21:44:44 +02:00
Benjamin Neff
d765b34018 Make sure URLs are encoded before sending them to camo
Otherwise camo crashes with:
TypeError [ERR_UNESCAPED_CHARACTERS]: Request path contains unescaped characters

closes #7871
2018-09-30 18:00:49 +02:00
Benjamin Neff
b6333e0b1b Remove reference to statistics.json
and mention /statistics and NodeInfo

closes #7867
2018-09-30 17:58:55 +02:00
Benjamin Neff
49b63693c9 Fix i18n fallbacks
Fallbacks are set in config/initializers/locale.rb and this settings
conflicts with the fallbacks set there.

Fixes #7860

closes #7861
2018-09-08 02:25:36 +02:00
Dennis Schubert
65a2b8da12 Include PostsHelper in NotifierHelper
Fixes #7852

closes #7853
2018-09-06 02:33:33 +02:00
Benjamin Neff
f130ec414e Bump ffi
Fixes CVE-2018-1000201

closes #7859
2018-09-06 01:40:47 +02:00
Benjamin Neff
cd30a2814d Bump json-jwt and openid_connect
Fixes CVE-2018-1000539
2018-09-05 03:18:59 +02:00
Benjamin Neff
08e108d3d8 Fix comment notification subject for posts without text
Fixes #7854
2018-09-05 03:17:58 +02:00
lislis
546ef080c5 bump fixture_builder to 5.2rc3
closes #7849
2018-08-24 19:49:23 +02:00
Benjamin Neff
79907b78b9 Use podname for web+diaspora:// protocol handler
closes #7839
2018-07-20 11:07:11 +02:00
Senya
2be60eab1b Update archive-format.json
/ was missing in the profile entity $ref

closes #7835
2018-07-17 01:23:56 +02:00
Dennis Schubert
af500dabbc Add section in the User's settings to register the protocol handler
closes #7833
2018-07-13 10:19:43 +02:00
Dennis Schubert
f8a4a2c510 Gracefully ignore exceptions when trying to register the ProtocolHandler 2018-07-13 10:18:48 +02:00
Dennis Schubert
8709c45d30 Move the protocol handler into a proper helper module
Previous file history in 80dfdcd6af, couldn't keep it.
2018-07-13 10:18:48 +02:00
Dennis Schubert
4430f9e887 Add VSCode-related files to the .gitignore 2018-07-13 10:17:44 +02:00
cmrd Senya
a7cc0645e0 Cuke for web+diaspora:// link handler
closes #7826
2018-07-11 01:28:53 +02:00
cmrd Senya
80dfdcd6af Add web+diaspora:// links handler installation 2018-07-11 01:26:43 +02:00
cmrd Senya
6f812a5b8f Add LinksController
LinksController redirects requests for provided diaspora:// links to
respective entities urls.
2018-07-11 01:24:28 +02:00
cmrd Senya
2e0b382699 Use 'post' prefix for status message route helpers
This is required to make url_for(StatusMessage.new) work
2018-07-11 01:24:28 +02:00
Benjamin Neff
ac868c9c06 Get processor count with ruby (on linux and mac)
closes #7830
2018-06-30 23:27:32 +02:00
Benjamin Neff
c2fa0b1eba Merge branch 'master' into next-minor 2018-06-27 02:46:04 +02:00
Benjamin Neff
2b3bbc1a6c Merge branch 'release/0.7.6.0' 2018-06-27 02:42:00 +02:00
Benjamin Neff
097754e493 updated 6 locale files [ci skip] 2018-06-27 02:31:52 +02:00
Benjamin Neff
67d6d2ff25 Prepare 0.7.7.0 cycle 2018-06-20 01:38:17 +02:00
Benjamin Neff
23fcac6550 Bump sprockets
Fixes CVE-2018-3760

closes #7829
2018-06-20 00:50:24 +02:00
HankG
5a8bdc1e71 Facebook plugin always appends (via D* post URL) to cross-posts
fixes #7770

closes #7774
2018-06-20 00:47:12 +02:00
flaburgan
3d83fbdbe5 Link to the pod in the emails footer
closes #7814
2018-06-18 02:47:56 +02:00
Benjamin Neff
10841b6031 updated 16 locale files [ci skip] 2018-06-16 21:18:15 +02:00
Jonne Haß
88503539ec migrate hy users to hye
closes #7822
2018-06-16 21:14:43 +02:00
Jonne Haß
fe75602928 update armenian locales 2018-06-16 21:12:13 +02:00
Jonne Haß
fac3c4bbe3 update plural rules 2018-06-16 21:12:13 +02:00
goobertron
d1597c0b23 Update locale_settings.yml with 3 Armenian variants 2018-06-16 21:12:09 +02:00
cmrd Senya
87968284ba Support fetching StatusMessage by Poll guid
When public fetch is requested with Poll guid, return parent
StatusMessage for it, which includes the Poll in its turn.

closes #7815
2018-06-16 04:36:05 +02:00
Radomír Bosák
cfa7724d73 Escape asterisks in README
Unescaped asterisks can cause markdown text to be misinterpreted. Also
syntax highlighters (e.g. in sublime text) freak out.

References: [markdown
spec](https://daringfireball.net/projects/markdown/syntax#em)

closes #7821
2018-06-16 04:32:38 +02:00
Alex Tribble
1b03265c2e Allow fonts to be served from asset host in CSP.
Closes #7796

closes #7825
2018-06-16 01:22:22 +02:00
Benjamin Neff
fa615533f6 Bump kostya-sigar
Fixes compatibility with newer glibc

closes #7828
2018-06-16 01:19:36 +02:00
Benjamin Neff
ebaa209120 Remove gemnasium badge
See: https://docs.gitlab.com/ee/user/project/import/gemnasium.html
2018-05-16 19:09:34 +02:00
cmrd Senya
a3378ae744 Account merging: handle duplicates for TagFollowing
I missed it in #7803

closes #7807
2018-05-16 00:54:16 +02:00
cmrd Senya
cb294fd3f4 Add completed_at to account_migrations
Use completed_at datetime field as an indication of a performed migration

closes #7805
2018-05-03 21:31:29 +02:00
cmrd Senya
e9f6dbdffd Add unique index to poll participations on author_id and poll_id
Previously we had only a Rails validation which ensured poll participation
uniqueness but this adds uniqueness control to the database level, so that
uniqueness is guaranteed even when changing data with avoiding Rails
validations.

closes #7798
2018-05-03 21:28:38 +02:00
Benjamin Neff
b7cd9d6238 Merge branch 'master' into next-minor 2018-04-30 22:54:03 +02:00
Benjamin Neff
42ceb8b3e3 Merge branch 'release/0.7.5.0' 2018-04-30 22:51:23 +02:00
Benjamin Neff
6a3d9ede52 Make ja-KS avaliable 2018-04-30 22:18:55 +02:00
Benjamin Neff
f5350e2df6 updated 77 locale files [ci skip] 2018-04-30 22:10:06 +02:00
cmrd Senya
8680b24a2e Account merging support
Adds support for merging accounts with account migration by eliminating
duplicate data in favor of the target user's data.

closes #7803
2018-04-30 22:06:34 +02:00
Dennis Schubert
8d6c891ecb Prepare 0.7.6.0 cycle 2018-04-23 20:35:18 +02:00
HankG
211e5cd1bc Bugfix 7714 twitter char overflow
closes #7791
2018-04-23 20:33:07 +02:00
Dennis Schubert
6918dbc761 Randomize start times of daily Sidekiq-Cron jobs
closes #7787
2018-04-16 01:26:48 +02:00
Steffen van Bergerem
53d58a8bcb Remove fileuploader.css
closes #7778
2018-04-16 01:24:38 +02:00
Benjamin Neff
15ff67499b Revert "Bump twitter-text"
This adds a new dependency (`libidn11-dev` on debian, I'm not sure about
other distros).

This reverts commit 070e4caa57.
2018-04-12 04:00:41 +02:00
Benjamin Neff
9a661177f1 Replace rails-assets-perfect-scrollbar with rails-assets-utatti-perfect-scrollbar
closes #7772
2018-04-12 02:44:43 +02:00
Benjamin Neff
9fb63c8bd6 Bump tins 2018-04-12 02:41:58 +02:00
Benjamin Neff
417ec29ad0 Bump scss_lint 2018-04-12 02:41:57 +02:00
Benjamin Neff
6767465843 Bump rugged 2018-04-12 02:41:57 +02:00
Benjamin Neff
7e3e0058b6 Bump omniauth-oauth2 2018-04-12 02:41:57 +02:00
Benjamin Neff
e6c3d0c8f7 Bump octokit 2018-04-12 02:41:57 +02:00
Benjamin Neff
309d6d7049 Bump oauth 2018-04-12 02:41:57 +02:00
Benjamin Neff
6165a6664c Bump gitlab 2018-04-12 02:41:57 +02:00
Benjamin Neff
129efe66eb Bump et-orbi 2018-04-12 02:41:57 +02:00
Benjamin Neff
ed8c03860a Bump chunky_png 2018-04-12 02:41:57 +02:00
Benjamin Neff
0e526f9221 Bump jasmine
Disable random tests for now, many tests fail when this is true (which
is now default)
2018-04-12 02:41:56 +02:00
Benjamin Neff
eb68343ae1 Bump rspec and rspec-rails 2018-04-12 02:41:56 +02:00
Benjamin Neff
fc2834e7c1 Bump webmock 2018-04-12 02:41:56 +02:00
Benjamin Neff
42c93fd4cb Bump cucumber-api-steps 2018-04-12 02:41:56 +02:00
Benjamin Neff
2b4fed8339 Bump poltergeist 2018-04-12 02:41:56 +02:00
Benjamin Neff
e0a8a5e34c Bump database_cleaner 2018-04-12 02:41:56 +02:00
Benjamin Neff
5432a91839 Bump capybara 2018-04-12 02:41:56 +02:00
Benjamin Neff
1a6afa54e8 Bump fuubar 2018-04-12 02:41:55 +02:00
Benjamin Neff
e0b4bff6a6 Bump fixture_builder 2018-04-12 02:41:55 +02:00
Benjamin Neff
cba90cebe8 Bump pry-byebug 2018-04-12 02:41:55 +02:00
Benjamin Neff
64f330d66b Bump rubocop 2018-04-12 02:41:55 +02:00
Benjamin Neff
6d0cee3047 Bump haml_lint 2018-04-12 02:41:55 +02:00
Benjamin Neff
36c55e2d2e Bump rb-fsevent 2018-04-12 02:41:55 +02:00
Benjamin Neff
39f0c58c4e Bump guard 2018-04-12 02:41:55 +02:00
Benjamin Neff
c98b766d03 Bump asset_sync 2018-04-12 02:41:55 +02:00
Benjamin Neff
9e20215a24 Bump eye 2018-04-12 02:41:54 +02:00
Benjamin Neff
0602e7fa94 Bump versionist 2018-04-12 02:41:54 +02:00
Benjamin Neff
9240a61662 Bump hamlit 2018-04-12 02:41:54 +02:00
Benjamin Neff
7ea9a4d7ae Bump gon 2018-04-12 02:41:54 +02:00
Benjamin Neff
b8094544a0 Bump faraday 2018-04-12 02:41:54 +02:00
Benjamin Neff
9c054e03d8 Bump openid_connect 2018-04-12 02:41:54 +02:00
Benjamin Neff
6773a49362 Bump twitter 2018-04-12 02:41:54 +02:00
Benjamin Neff
8b2a4b18c6 Bump omniauth 2018-04-12 02:41:53 +02:00
Benjamin Neff
7854e14e07 Bump secure_headers 2018-04-12 02:41:53 +02:00
Benjamin Neff
f8c9d2ccd9 Bump string-direction 2018-04-12 02:40:23 +02:00
Benjamin Neff
070e4caa57 Bump twitter-text 2018-04-12 02:40:23 +02:00
Benjamin Neff
89cb887290 Bump leaflet-rails 2018-04-12 02:40:23 +02:00
Benjamin Neff
3e078643ea Bump rails-assets-blueimp-gallery 2018-04-12 02:40:22 +02:00
Benjamin Neff
f894214aa9 Bump rails-assets-autosize 2018-04-12 02:40:22 +02:00
Benjamin Neff
42b316449c Bump rails-assets-corejs-typeahead 2018-04-12 02:40:13 +02:00
Benjamin Neff
92363dc088 Bump rails-assets-markdown-it 2018-04-12 02:39:12 +02:00
Benjamin Neff
8cfe16d3b4 Bump js-routes 2018-04-12 02:39:12 +02:00
Benjamin Neff
d1ab3cf4e4 Bump fog-aws 2018-04-12 02:39:12 +02:00
Benjamin Neff
47c99207f4 Bump carrierwave 2018-04-12 02:39:11 +02:00
Benjamin Neff
312f3e4259 Bump activerecord-import 2018-04-12 02:39:11 +02:00
Benjamin Neff
1359c7a9e8 Bump pg 2018-04-12 02:39:11 +02:00
Benjamin Neff
53b3e395e0 Bump mysql2 2018-04-12 02:39:11 +02:00
Benjamin Neff
54bdd32b86 Bump sass-rails 2018-04-12 02:39:11 +02:00
Benjamin Neff
d31da2e58e Bump autoprefixer-rails 2018-04-12 02:39:11 +02:00
Benjamin Neff
264a64596c Bump rack-cors 2018-04-12 02:39:11 +02:00
Benjamin Neff
94b59f29b0 Bump uglifier 2018-04-12 02:39:11 +02:00
Benjamin Neff
1e8f404b65 Bump sidekiq 2018-04-12 02:39:10 +02:00
Benjamin Neff
a55654b7ee Bump devise 2018-04-12 02:39:10 +02:00
Benjamin Neff
85e95437d8 Bump unicorn 2018-04-12 02:39:10 +02:00
Benjamin Neff
5ee69f412a Bump rails 2018-04-12 02:39:10 +02:00
Benjamin Neff
686310fb8e Simplify /podmin redirect
Some podmins were confuse how they can disable this redirect and I think
the rule with two users can actually be a little confusing. I think the
main goal of this page to give the podmin a little start and I think
after they configured everything, the pod works and they found the link
to the wiki to make themself an admin, it is OK to remove the redirect.

Also it's bad for single-user pods where this page always stays active,
even if they are an admin, but have only one user. It's more useful for
single-user pods to have the login on the home page.

closes #7783
2018-04-12 01:55:46 +02:00
Benjamin Neff
e31ca1fd3b Fix link to "Make yourself an admin" 2018-04-12 01:45:56 +02:00
Steffen van Bergerem
4aec9fbb42 Fix mention syntax backport for two immediately consecutive mentions
Fixes #7695.

closes #7777
2018-04-12 01:44:44 +02:00
Steffen van Bergerem
01ae004518 Make public stream accessible for logged out users
Fixes #6564.

closes #7775
2018-04-12 01:42:17 +02:00
Benjamin Neff
7d6623d069 Remove contacts page on profiles
closes #7769
2018-04-12 01:40:49 +02:00
Benjamin Neff
4fa92c1823 Remove flag for contacts visible to each other
This feature only worked on the same pod and was more confusing than
useful.
2018-04-12 01:39:11 +02:00
Benjamin Neff
9b83df9646 Merge branch 'master' into next-minor 2018-04-10 01:57:56 +02:00
Benjamin Neff
aa6f4d46c9 Merge branch 'hotfix/0.7.4.1' 2018-04-10 01:56:29 +02:00
Benjamin Neff
f4ea138a64 Don't return a SafeString after truncate 2018-04-10 01:54:29 +02:00
Jonathan Brielmaier
41377378ec Bump mysql2
closes #7747
2018-03-25 08:37:03 +02:00
cmrd Senya
0080a2567f StatusMessageController#create: respond 422 when aspect_ids are wrong
fixes #3862

closes #7742
2018-03-25 08:31:32 +02:00
cmrd Senya
e0e40f73c3 Spec for post creation bad aspects_ids issue 2018-03-25 08:28:59 +02:00
cmrd Senya
f632f8a1f8 Include templates to main.js
This is needed to properly initialize Handlebars partials without
a document ready handler.

fixes #7739

closes #7740
2018-03-25 08:27:23 +02:00
Besnik Bleta
bc3908a103 Update for sq translation 2018-03-25 08:24:38 +02:00
Jonne Haß
5e96cc6d89 add carrierwave error messages 2018-03-25 08:24:10 +02:00
kas70
53b733f0cd adds byebug history to gitignore
closes #7744
2018-03-22 23:15:38 +01:00
kas70
40fc175d6e only include mutual sharing contacts in conversations form on contacts page
fixes #7377
2018-03-22 23:15:24 +01:00
Benjamin Neff
c7709e29f2 Merge branch 'master' into next-minor 2018-03-18 23:13:48 +01:00
Benjamin Neff
d031375610 Merge branch 'release/0.7.4.0' 2018-03-18 23:11:47 +01:00
Benjamin Neff
aadd64b0a5 updated 43 locale files [ci skip] 2018-03-18 23:05:19 +01:00
Jonne Haß
300d09e258 add ja-KS fallback to ja 2018-03-16 11:31:11 +01:00
Benjamin Neff
4d54c85eee Start 0.7.5.0 cycle 2018-03-12 23:59:31 +01:00
Benjamin Neff
3bb6d6d677 Bump rails-i18n
fixes #7527

closes #7731
2018-03-10 04:45:54 +01:00
Benjamin Neff
0b0070abeb Bump yard 2018-03-10 04:45:10 +01:00
Benjamin Neff
11d30f9066 Bump rack-protection 2018-03-10 04:45:06 +01:00
cmrd Senya
0ae19071ad Set video click handler at app.views.ExpandedComment
fixes #7736

closes #7737
2018-03-10 00:01:13 +01:00
Dennis Schubert
3643612b1c Back to Top: Make sure to re-check the visibility after the scrolling is done
If a user scrolls just below the 1000px threshold and clicks the back-to-top button within 250ms, we'll never hide the button as the scroll event gets throttled away. That's rather inconvenient.

closes #7729
2018-03-07 00:39:36 +01:00
Dennis Schubert
8e88f4b183 Add the back-to-top button to all views
fixes #7727
2018-03-07 00:39:26 +01:00
Benjamin Neff
4e5ee36675 Keep order of profile tags
closes #7724
2018-02-27 00:48:42 +01:00
Benjamin Neff
4cd8de5327 Refactor taggable tests to use let 2018-02-27 00:48:08 +01:00
Benjamin Neff
f883c6ede2 Add /camo/ to robots.txt
Camo only proxies images hosted somewhere else, so it doesn't make sense
to add the proxied versions to search engines. It only creates traffic
for camo when /camo/* urls are in search results.

closes #7726
2018-02-27 00:47:32 +01:00
Benjamin Neff
9fa254b898 Use https:// for media-embed tests
I overlooked this when reviewing #6418 since it is excluded on travis
because of the @nophantomjs tag (so it didn't fail). But since we block
http:// embeds now, we need to use https:// for the tests.
2018-02-25 22:59:27 +01:00
Benjamin Neff
74d027a3ab Set frozen config as boolean
This is normalized to "true" in the config after running bin/bundle, so
rerunning script/configure_bundler resets this back to 1 (which is the
same, but we don't need to change this back and forth every time).
2018-02-25 22:56:57 +01:00
Benjamin Neff
beeb073dbe Fix followed tags posts in stream for posts with multiple tags
When there were posts with many followed tags they were returned
multiple times, resulting in less than 15 unique posts. That resulted in
some posts to be missed in the stream.

Fixes #4503

closes #7715
2018-02-25 04:35:49 +01:00
Benjamin Neff
f0aca56c8f Don't retry for PublicKeyNotFound
We only return `nil` when we know the person, but don't know the key or
the key is invalid, so it doesn't make sense to retry in this case. When
the person isn't known and can't be fetched we raise a DiscoveryError
which will be retried.

Also the errors were moved to the `Signable` module in the last release.

closes #7717
2018-02-25 04:34:04 +01:00
Benjamin Neff
602a1dcd55 Store edited_at for relayables in additional_data
closes #7718
2018-02-25 04:33:03 +01:00
Benjamin Neff
0b4b3515a5 Start sending updated_at timestamp as edited_at for profiles
This can be used in later diaspora versions to order the profile updates
so we don't overwrite a newer profile with older data.
2018-02-25 04:32:19 +01:00
Benjamin Neff
86d52a0da3 Bump diaspora_federation 2018-02-25 04:32:19 +01:00
Benjamin Neff
c89b2ad809 Prevent duplicate mention notifications when the post is received twice
closes #7721
2018-02-22 00:49:21 +01:00
Brad Koehn
b80eb01f34 piped bin/bundle commands to suppress warnings when run on readonly filesystems
closes #7719
2018-02-22 00:45:45 +01:00
cmrd Senya
3e31b91b11 Add @nophantomjs tag to default cucumber profile
Use this tag for tests which can't work with PhantomJS, but which we
can run with Selenium using some other profile (not implemented here).

closes #6418
2018-02-17 19:24:39 +01:00
cmrd Senya
b32c844314 Support for embedding HTML5 media links
Use markdown-it-html5-embed plugin so user can embed audio and
video using the markdown link syntax []() in the HTML5 way.
2018-02-17 19:21:10 +01:00
Steffen van Bergerem
258b502cde Bump devise
closes #7716
2018-02-17 19:20:15 +01:00
Steffen van Bergerem
fa14e1e368 Bump hamlit 2018-02-17 19:20:12 +01:00
Steffen van Bergerem
b786d237cd Bump haml 2018-02-17 19:20:02 +01:00
Saverio Miroddi
1ebb5dd72d Don't print a warning when starting the server outside a Git repo
Currently, git checks are performed on server start, even when outside a git
repository.

This commit verify the presence of a git repository (via `git status` exit
code), and perform checks only if it exists.

closes #7712
2018-02-10 16:13:38 +01:00
Dennis Schubert
f8ce276ddc Merge branch 'master' into next-minor 2018-02-09 03:15:18 +01:00
Dennis Schubert
b23696bb88 Merge branch 'hotfix/0.7.3.1' 2018-02-09 03:13:51 +01:00
Dennis Schubert
005dd923c9 Pull updated German translations to fix "reshare" UX issues 2018-02-09 03:09:44 +01:00
Benjamin Neff
3033e915e5 Merge branch 'next-minor' of github.com:diaspora/diaspora into next-minor 2018-02-08 23:19:57 +01:00
Benjamin Neff
a8fcbb3365 Merge branch 'master' into next-minor 2018-02-08 22:55:30 +01:00
Benjamin Neff
1f3ad2fa65 Merge branch 'release/0.7.3.0' 2018-02-08 22:54:14 +01:00
Benjamin Neff
aff4be8821 updated 21 locale files [ci skip] 2018-02-08 22:46:45 +01:00
Benjamin Neff
e0687e8de3 Upgrade Nokogiri to fix a disclosed vulnerability in libxml2 2018-02-08 22:44:11 +01:00
Fla
35535d5bfb Remove unnecessary quotes in database.yml.examle
[ci skip]

closes #7711
2018-02-03 16:42:51 +01:00
Dennis Schubert
7abb0518e9 Start 0.7.4.0 cycle
[ci skip]
2018-02-01 23:48:04 +01:00
Benjamin Neff
5e157dc9c3 Send participation after receiving a public post
This is to let the author of the post know, that this pod is interested
in updates about this post.

The sending user is only used to verify that the participation was sent
from this pod, but lets use an admin/podmin account if available.

closes #7708
2018-02-01 23:40:51 +01:00
Benjamin Neff
6c5b8b73af Fix post_message for posts without text
fixes #7700
closes #7706
2018-02-01 23:39:18 +01:00
Benjamin Neff
a32cac06ab Retry Contact messages 20 time (about two weeks)
closes #7705
2018-02-01 23:37:53 +01:00
Benjamin Neff
b9787cc632 Start sending the blocking flag 2018-02-01 23:35:35 +01:00
Benjamin Neff
815cf121ab Remove participants limit for conversations
The limit was added in 2012 to prevent spam, but since the participants
need to be a mutual contact with the author nowadays, I don't think it's
a spam problem anymore.
2018-02-01 23:35:35 +01:00
Benjamin Neff
80bfc3fcfd Bump diaspora_federation 2018-02-01 23:35:35 +01:00
Benjamin Neff
746ff52256 Fix mention in #newhere message when invited by another person
fixes #7701
closes #7702
2018-02-01 23:35:04 +01:00
Benjamin Neff
f23966ef87 Make mobile bookmarklet work the same way as with desktop UI
This fixes that it fails when you call it without notes parameter.

closes #7698
2018-02-01 23:33:36 +01:00
Fla
a72feee812 Changelog misspelling [ci skip]
closes #7710
2018-01-31 22:15:27 +01:00
flaburgan
b156c2f1a3 Use current-password and new-password for password autocomplete
closes #7642
fixes #7633
2018-01-21 21:29:06 +01:00
Dennis Schubert
5a6bd47000 Merge branch 'master' into next-minor 2018-01-12 17:56:01 +01:00
Dennis Schubert
a40824cd2b Merge branch 'hotfix/0.7.2.1' 2018-01-12 17:54:27 +01:00
Benjamin Neff
5bc4473e11 Fix notifications when people remove their birthday date
Some people may remove their birthday date after the notification was
sent, which then breaks the notification page for other users. Let's
just display the date when the notification was created, and not display
the users updated birthday date. When users update from date A to B it
always looks weird anyway, when we display the same new date B twice on
different days, or display two different dates for the same user.

We could remove notifications when users change or remove their
birthday, but that would be way more complex and also we usually don't
remove notifications (not even for deleted posts).

Fixes #7689

closes #7691
2018-01-12 17:52:57 +01:00
Brad Koehn
1a3c16eb6e update to support 280 character Twitter
closes #7694
closes #7662
fixes #7661
2018-01-09 00:05:33 +01:00
Janakas
0347507b20 Delete archive files when closing an account
closes #7684
2018-01-08 21:15:41 +01:00
Janakas
d4e5d13a8f Remove old export archives after 2 weeks
Fixes #5727
2018-01-08 21:14:06 +01:00
Janakas
497c647983 Rearrange userdata-export section and change timestamp to timeago 2018-01-08 21:14:01 +01:00
Janakas
d150a6b2af Fix invite link on /contacts
closes #7690
2018-01-05 03:45:54 +01:00
Benjamin Neff
c135ace407 Fix notifications when people remove their birthday date
Some people may remove their birthday date after the notification was
sent, which then breaks the notification page for other users. Let's
just display the date when the notification was created, and not display
the users updated birthday date. When users update from date A to B it
always looks weird anyway, when we display the same new date B twice on
different days, or display two different dates for the same user.

We could remove notifications when users change or remove their
birthday, but that would be way more complex and also we usually don't
remove notifications (not even for deleted posts).

Fixes #7689

closes #7691
2018-01-05 01:50:11 +01:00
Janakas
2e3b7dee1e Check for a running redis in script/server
Fixes #5267

closes #7685
2017-12-30 15:40:30 +01:00
Benjamin Neff
25d41429bc Merge branch 'master' into next-minor 2017-12-26 03:37:57 +01:00
Benjamin Neff
cf2bd66005 Merge branch 'release/0.7.2.0' 2017-12-26 03:36:49 +01:00
Benjamin Neff
a9cce95a74 updated 32 locale files [ci skip] 2017-12-26 03:30:32 +01:00
Benjamin Neff
ba85f35ae9 Merge branch 'release/0.7.2.0' into next-minor 2017-12-25 20:55:22 +01:00
Benjamin Neff
e0eb76eb2a Remove aspect_ids parameter from publisher
closes #7683
2017-12-25 20:54:10 +01:00
Benjamin Neff
70c659192f Fix default aspects on profile page and bookmarklet publisher
Fixes #7679
2017-12-25 20:54:05 +01:00
Benjamin Neff
53b7dcd8ca Merge branch 'release/0.7.2.0' into next-minor 2017-12-24 02:50:28 +01:00
Benjamin Neff
d59b5b2df7 Fix birthday notification mail
Fixes #7681

closes #7682
2017-12-24 02:50:19 +01:00
Benjamin Neff
c5536395c0 Start 0.7.3.0 cycle 2017-12-18 04:55:45 +01:00
flaburgan
53603917eb Fix deformed hovercards avatar
closes #7656

fixes #6039
2017-12-18 04:40:13 +01:00
Rete2
fc33a2ac5d Create birthday notification and mailer
closes #7624

fixes #1649
2017-12-18 04:34:35 +01:00
Benjamin Neff
89eeec72d3 Merge branch 'master' into next-minor 2017-11-01 00:50:17 +01:00
Benjamin Neff
2c9fec91da Merge branch 'hotfix/0.7.1.1' 2017-11-01 00:49:19 +01:00
Benjamin Neff
7c4648030f Run rake directly without xvfb on travis
closes #7654
2017-11-01 00:46:36 +01:00
Benjamin Neff
4e267bb1ef Use configure_bundler script on travis 2017-11-01 00:45:22 +01:00
Benjamin Neff
a14115119c Add script/configure_bundler to set correct bundler options 2017-11-01 00:45:22 +01:00
Benjamin Neff
63fcc9c1bc Fix compatibility with Bundler 1.6
Stop using `Bundler.settings.with`, because it will be removed from
Bundler 1.6.

Also, as described in #7653, we could use `Bundler.settings[:with]`, but
that would be internal API again, so it probably breaks again in the
future. That's why I added a `BundlerHelper` module to parse the
required optional group from our config files, without the use of any
internal Bundler API.

Fixes #7653
2017-11-01 00:45:18 +01:00
Benjamin Neff
70410d1691 Ignore invalid diaspora:// links
Fixes #7651

closes #7652
2017-10-27 02:26:52 +02:00
Benjamin Neff
2ce7d59cb3 Merge branch 'master' into next-minor 2017-10-21 00:45:59 +02:00
Benjamin Neff
db95c94c97 Merge branch 'release/0.7.1.0' 2017-10-21 00:44:32 +02:00
Benjamin Neff
783650e34c updated 35 locale files [ci skip] 2017-10-21 00:41:40 +02:00
Benjamin Neff
4bf0a74382 Merge branch 'release/0.7.1.0' into next-minor 2017-10-20 02:56:16 +02:00
Benjamin Neff
0f688b9d73 Group notifications by updated_at
The notifications need to be grouped by the same date as they are
sorted, otherwise the date used for the group doesn't match all
timestamps in the group and also the groups are sorted by the wrong
date.

This fixes #7647, a regression of #7568.

closes #7648
2017-10-20 02:56:06 +02:00
Benjamin Neff
f7349457d3 Merge branch 'release/0.7.1.0' into next-minor 2017-10-20 01:25:33 +02:00
Benjamin Neff
c9423bfdd2 Add some progress indicators to the account deletions rake task
[ci skip]

closes #7646
2017-10-20 01:25:28 +02:00
Benjamin Neff
31559ce483 Merge branch 'release/0.7.1.0' into next-minor 2017-10-18 01:08:35 +02:00
Benjamin Neff
9673f45ff9 Cleanup empty signatures
Some relayables from redmatrix and hubzilla have empty signatures. They
are invalid and break therefore the user data export.

closes #7644
2017-10-18 01:08:26 +02:00
Benjamin Neff
1ac0dfbbbc Merge branch 'release/0.7.1.0' into next-minor 2017-10-17 01:39:39 +02:00
cmrd Senya
2e9c6f46dc Clean up invalid contacts from the DB
Cleans invalid contacts where the referenced user was deleted from the DB or where
the referenced person owner was deleted from the DB.

closes #7632
2017-10-17 01:39:22 +02:00
cmrd Senya
ad025850ce Forbid user destruction 2017-10-17 01:38:36 +02:00
cmrd Senya
973e9d98c6 Raise sensible error message when user is missing
That's for the case when podmin has messed up the database
2017-10-17 01:38:36 +02:00
cmrd Senya
f212b51f7f Check for user existence on aspect membership destruction 2017-10-17 01:38:36 +02:00
Benjamin Neff
a36d22d72b Handle duplicate account migrations
closes #7641
2017-10-17 01:36:25 +02:00
Benjamin Neff
2bd9c663c5 Add rake task to rerun failed account deletions
closes #7639
2017-10-17 01:33:43 +02:00
Benjamin Neff
6d5647ec11 Handle duplicate account deletions 2017-10-17 01:32:14 +02:00
Benjamin Neff
b920ddbff5 Move special and ignored associations to tests 2017-10-17 01:32:14 +02:00
Benjamin Neff
f704f30572 Remove conversation visibilities with standard person associations 2017-10-17 01:32:14 +02:00
Benjamin Neff
f4902421ea Destroy user and person associations in batches 2017-10-17 01:32:14 +02:00
Benjamin Neff
4e6d92ce63 Remove wrapping transaction for account deletion
This uses a lot of memory for big accounts. Also it doesn't make much
sense to rollback everything when something fails, it's better to delete
everything we can.
2017-10-17 01:32:13 +02:00
flaburgan
faff140a3f Avoid page to jump to top after a post deletion, fixes #7628
closes #7638
2017-10-17 01:30:12 +02:00
Benjamin Neff
2711b9dc83 Cleanup relayables where the signature is missing
When we should have the signature but don't have it, the user data
export fails. There are a few comments from back in 2011 where the
signature is missing.

Also some podmins maybe messed with signatures in their database, which
would also break the exports now.

closes #7637
2017-10-17 01:27:00 +02:00
Benjamin Neff
32067246df Delete people with invalid diaspora IDs (friendica with path)
closes #7630
2017-10-17 01:23:47 +02:00
Benjamin Neff
1b6ffa2528 Start 0.7.2.0 cycle 2017-09-28 23:38:57 +02:00
Benjamin Neff
fd36517dee Limit the number of parallel exports that are allowed to run
closes #7629
2017-09-28 23:11:46 +02:00
Benjamin Neff
b8fb4b6251 Delete invalid oEmbed caches with binary titles
There are a few old oEmbed caches which have the title saved in binary
(because they contain Chinese characters). This fails with
`ActionView::Template::Error ("å" from ASCII-8BIT to UTF-8)`. Since I
found only very old OEmbed caches with this problem (newest from 2012),
I think we can just remove these. When I create a new oEmbed cache for
the same URL it creates it without `!binary`.

closes #7620
2017-09-28 23:10:07 +02:00
Benjamin Neff
3fafcd9307 The diaspora ID validator now validates if it is lowercase
Relaying relayables will fail with non-lowercase authors.

closes #7625
2017-09-28 23:08:41 +02:00
Benjamin Neff
84b89d5594 Relay likes for comments 2017-09-28 23:04:35 +02:00
Benjamin Neff
5f5d8c5e13 Replace diaspora:// links in the text 2017-09-28 23:04:35 +02:00
Benjamin Neff
4a994b0a48 Creates references for linked posts after create 2017-09-28 23:04:34 +02:00
Benjamin Neff
c82e891c03 Add reference source and target behaviour 2017-09-28 23:04:34 +02:00
Benjamin Neff
28d3271933 Create refereces model 2017-09-28 23:04:34 +02:00
Benjamin Neff
35711606e4 Remove public and provider_display_name from reshares 2017-09-28 23:04:34 +02:00
Benjamin Neff
bb97aa8538 Allow RFC 7033 WebFinger via http:// for development 2017-09-28 23:04:34 +02:00
Benjamin Neff
7c304119e1 Bump diaspora_federation 2017-09-28 23:04:21 +02:00
Benjamin Neff
95fbd3fc66 Don't change the filename of the export everytime the user is touched
closes #7622
2017-09-28 03:28:15 +02:00
Benjamin Neff
ac39e920c8 Add camo to NodeInfo
closes #7617
2017-09-28 03:20:31 +02:00
Benjamin Neff
e4b0b569e2 Bump pry
closes #7618
2017-09-28 03:15:34 +02:00
Benjamin Neff
ca8a3db5bc Bump leaflet-rails 2017-09-28 03:15:32 +02:00
Benjamin Neff
5ebbacf444 Mock call to nominatim for cucumber 2017-09-28 03:15:32 +02:00
Benjamin Neff
bd99127600 Bump rails-assets-markdown-it 2017-09-28 03:15:32 +02:00
Benjamin Neff
1e44d9c0a9 Bump rails-assets-jasmine 2017-09-28 03:15:31 +02:00
Benjamin Neff
33c92028f8 Bump rails-assets-blueimp-gallery 2017-09-28 03:15:31 +02:00
Benjamin Neff
f35e5d9cd9 Bump simplecov-html 2017-09-28 03:15:31 +02:00
Benjamin Neff
2e19fa6eec Bump hashdiff 2017-09-28 03:15:31 +02:00
Benjamin Neff
abeb46aa2d Bump haml 2017-09-28 03:15:31 +02:00
Benjamin Neff
f50b28ab7d Bump fabrication 2017-09-28 03:15:31 +02:00
Benjamin Neff
6dbad14d00 Bump bindata 2017-09-28 03:15:31 +02:00
Benjamin Neff
a9bb673881 Bump rubocop 2017-09-28 03:15:30 +02:00
Benjamin Neff
156c7b8253 Bump pry-byebug 2017-09-28 03:15:30 +02:00
Benjamin Neff
34a149f61a Bump pronto 2017-09-28 03:15:30 +02:00
Benjamin Neff
5edbd8f740 Bump jasmine 2017-09-28 03:15:30 +02:00
Benjamin Neff
edfab73589 Bump typhoeus 2017-09-28 03:15:30 +02:00
Benjamin Neff
e607057138 Bump sprockets-rails 2017-09-28 03:15:30 +02:00
Benjamin Neff
eac9e8fd97 Bump secure_headers 2017-09-28 03:15:30 +02:00
Benjamin Neff
aac57a926b Bump js-routes 2017-09-28 03:15:30 +02:00
Benjamin Neff
769abf6948 Bump fog-aws 2017-09-28 03:15:29 +02:00
Benjamin Neff
c8f24dd872 Bump faraday_middleware 2017-09-28 03:15:29 +02:00
Benjamin Neff
9a3faa8917 Bump autoprefixer-rails 2017-09-28 03:15:29 +02:00
Benjamin Neff
8d01a1d389 Bump addressable 2017-09-28 03:15:29 +02:00
Benjamin Neff
6543e1c200 Bump activerecord-import 2017-09-28 03:15:29 +02:00
Benjamin Neff
f012a13809 Bump rails 2017-09-28 03:15:29 +02:00
Benjamin Neff
c7a3d85c83 Set TargetRubyVersion in .rubocop.yml [ci skip]
closes #7621
2017-09-28 03:14:31 +02:00
Benjamin Neff
d3d66f30c3 Bump ruby versions on travis
closes #7616
2017-09-28 03:13:07 +02:00
cmrd Senya
c6ed850a85 Memory usage optimization for archive export
- Removed posts and non contacts from other's data
- Collections are exported in batches to lower memory footprint
- In base exporters create User object instead of keeping instance because it caches all associations

closes #7627
2017-09-26 04:07:18 +02:00
cmrd Senya
ea57fc5d25 Fix mistyped remote person in dispatcher spec 2017-09-26 04:06:43 +02:00
cmrd Senya
9f0b74ebbb Memory usage test for archive export
It is not included into the main test suite, because it has :performance tag.

One can run this test using command:
$ bin/rspec --tag performance spec/integration/export/memory_usage_spec.rb

This test creates additional fixtures set to speed up repeated runs.
2017-09-26 04:06:43 +02:00
cmrd Senya
265a7ee253 Don't force fixtures rebuild on each rspec run
Main purpose of fixtures for us is to speed up test runs. Rebuilding
fixtures each run makes them pointless. They will be rebuilt automatically
if some of "files_to_check" are changed, so we're protected from the case
when fixtures are outdated and don't load properly.
2017-09-26 04:06:43 +02:00
cmrd Senya
9ee9dbe969 Fix local migration run without old private key
It was possible to run migration locally without providing old private
key. This way migration was performed but not dispatched, which obviously
leads to desynchronization of the federation state so let's validate sender
before performing any actual actions.

closes #7558
2017-09-26 04:06:16 +02:00
Benjamin Neff
c8340f7d28 Merge branch 'master' into next-minor 2017-09-19 20:26:57 +02:00
Benjamin Neff
508e44e01b Merge branch 'hotfix/0.7.0.1' 2017-09-19 20:24:37 +02:00
Benjamin Neff
13d6c23713 Bump nokogiri for a security release 2017-09-19 20:20:57 +02:00
Benjamin Neff
655fe2a912 Cleanup invalid polls without status message
closes #7614
2017-09-18 03:24:52 +02:00
Benjamin Neff
00296ffda5 Cleanup invalid likes without target 2017-09-18 03:23:01 +02:00
Benjamin Neff
028199a6f3 Remove "string" column from "ppid" table
This was added by accident in 4e18f3849d.

closes #7598
2017-09-18 03:21:41 +02:00
Benjamin Neff
4c967903fe Remove rails_admin_histories table
This was a leftover from rails_admin which was removed in #7440.

closes #7597
2017-09-17 19:35:50 +02:00
Benjamin Neff
1d2394571c Remove unused scripts
They were added a long time ago and they talk about rails 3 ... we have
rails 5 now and scripts in the bin folder, so I think we can remove
them.

closes #7596
2017-09-17 19:34:05 +02:00
Benjamin Neff
84d553555e Remove unneeded .freeze
closes #7595
2017-09-17 19:32:45 +02:00
Benjamin Neff
f7cbb20e11 Fix AppConfig.version_string with frozen strings 2017-09-17 19:29:16 +02:00
Benjamin Neff
9556790480 Fix Person.find_by_substring with frozen strings 2017-09-17 19:29:16 +02:00
Benjamin Neff
723be461cf Fix Services::Tumblr#tumblr_template with frozen strings 2017-09-17 19:29:16 +02:00
Benjamin Neff
1b30508c19 Fix ConversationsHelper#conversation_class with frozen strings 2017-09-17 19:29:16 +02:00
Benjamin Neff
79c2db65d7 Fix Diaspora::Camo.from_markdown with frozen strings 2017-09-17 19:29:16 +02:00
Benjamin Neff
f2ab09db17 Fix NotificationMailers::Base#log_mail with frozen strings 2017-09-17 19:29:16 +02:00
Benjamin Neff
9505eabcb3 Fix ApplicationHelper#changelog_url with frozen strings 2017-09-17 19:29:16 +02:00
Benjamin Neff
a6b6251b53 Fix PeopleHelper#person_link and #person_image_link with frozen strings 2017-09-17 19:29:16 +02:00
Benjamin Neff
e82690963d Add # frozen_string_literal: true to all files 2017-09-17 19:29:15 +02:00
Benjamin Neff
44ebc7375a Remove unused spec-doc.rb
closes #7594
2017-09-17 19:27:47 +02:00
Benjamin Neff
45e714776e Don't truncate ar_internal_metadata after cucumber scenarios
This is an internal active record table and shouldn't be touched. When
this is truncated you need to fix it again by running
`bin/rails db:environment:set RAILS_ENV=test`

This is a temporary fix until there is a new version of
database_cleaner.

closes #7606
2017-09-04 02:49:07 +02:00
Steffen van Bergerem
460178ad34 Fix the screenshot tool
closes #7605
2017-09-03 23:53:26 +02:00
Steffen van Bergerem
ddaa6df0b4 Replace photo_attachments with photo-attachments
closes #7601
2017-08-31 02:45:02 +02:00
Steffen van Bergerem
b77ecd482a Replace aspect_membership_dropdown with aspect-membership-dropdown 2017-08-31 02:44:54 +02:00
Steffen van Bergerem
473cc2518b Replace comment_box with comment-box 2017-08-31 02:44:53 +02:00
Steffen van Bergerem
7457f254c1 Replace last_author with last-author 2017-08-31 02:44:53 +02:00
Steffen van Bergerem
9fa032e4c9 Replace people_stream with people-stream 2017-08-31 02:44:53 +02:00
Steffen van Bergerem
7729635485 Replace publisher_textarea_wrapper with publisher-textarea-wrapper 2017-08-31 02:44:53 +02:00
Steffen van Bergerem
caeaf23d4b Replace aspect_dropdown with aspect-dropdown 2017-08-31 02:44:53 +02:00
Steffen van Bergerem
3df4749733 Replace stream_container with stream-container 2017-08-31 02:44:53 +02:00
Steffen van Bergerem
b4e3f84607 Replace main_stream with main-stream 2017-08-31 02:44:47 +02:00
Benjamin Neff
e31c5ff4dc Handle unauthenticated users for likes/comments of private posts
closes #7583
2017-08-29 12:55:03 +02:00
Benjamin Neff
350e24863f Allow to load likes and reshares without login 2017-08-29 12:35:48 +02:00
Steffen van Bergerem
d130697ce2 Use Bootstrap 3 progress-bar for polls
closes #7600
2017-08-29 02:17:32 +02:00
Steffen van Bergerem
02d9d350d9 Move person extension for prefills to conversations form view
closes #7599
2017-08-29 02:13:57 +02:00
Steffen van Bergerem
48630b3a04 Fix conversation recipient prefill on contacts page
Use the already available contacts data for the prefill
2017-08-29 02:13:27 +02:00
Steffen van Bergerem
666ada44f1 Fix conversation recipient prefill on profile page
Fixes #7586

Use the already available data about the recipient for the prefill
2017-08-29 02:13:27 +02:00
Steffen van Bergerem
9d2763089d Replace where...first with find_by
Fixes #7539

closes #7593
2017-08-29 02:11:17 +02:00
flaburgan
a358bf7b66 Move the notification to be the first icon on the left
closes #7592
2017-08-29 02:09:51 +02:00
Steffen van Bergerem
98cccda6ea Remove auto detection of languages with highlightjs
Fixes #7476

closes #7591
2017-08-29 02:07:57 +02:00
Steffen van Bergerem
2bb7d4e067 Use language- prefix for codeblocks as defined in the CommonMark spec 2017-08-29 02:07:10 +02:00
Benjamin Neff
04035c3eb7 Allow to receive reshares without root
closes #7590
2017-08-29 02:06:08 +02:00
Benjamin Neff
163ffdb19b Allow multiple reshares without root
Follow-up for #7578

Fixes #7587
2017-08-29 02:05:43 +02:00
Steffen van Bergerem
cd09c75c50 Prevent users from zooming in IE Mobile
Fixes #7499

According to https://msdn.microsoft.com/en-us/library/dn629259(v=vs.85).aspx,
“the minimum-scale, maximum-scale, and initial-scale properties are currently
unsupported for Internet Explorer for Windows Phone“.

For further information on the viewport properties see
https://drafts.csswg.org/css-device-adapt/#viewport-meta

closes #7589
2017-08-29 02:04:00 +02:00
Benjamin Neff
6d7ba96c4f Remove locals option from render_template assertion
The locals option is only supported in ActionView::TestCase, so it is
ignored anyway (even worse, it disabled the complete assertion). I added
some more assertions to ensure the template is rendered with the correct
conversation.

closes #7588
2017-08-29 02:02:03 +02:00
Benjamin Neff
634c13f967 Remove wrong format: :json from status_messages_controller_spec
This was added by accident with the rails5 upgrade
2017-08-29 02:01:43 +02:00
goobertron
e7cac2e466 Replace <b> with <strong> in translations
closes #7585
2017-08-29 02:00:34 +02:00
goobertron
51152e140d Add ignore feature to help section
Fixes #7572
2017-08-29 01:59:51 +02:00
Benjamin Neff
e36b59309f Remove xml format from posts controller
closes #7584
2017-08-29 01:59:04 +02:00
Rete2
b556ad5211 show users vote in poll
closes #7550
2017-08-26 03:16:05 +02:00
Benjamin Neff
e08440d7ba Merge migrations from before 0.6.0.0 to 0000_create_schema.rb
closes #7580
2017-08-26 03:13:05 +02:00
Benjamin Neff
b040f85790 Remove root_guid from reshares when post is deleted
And cleanup old reshares with deleted root posts

closes #7578
2017-08-26 03:08:37 +02:00
Manuel Vögele
0f771dbb10 Remove tiff support from photos
closes #7576
2017-08-26 03:02:51 +02:00
Steffen van Bergerem
ce40ec128f Fix mixed username and timestamp with LTR/RTL scripts
Fixes #7424

closes #7575
2017-08-26 02:59:24 +02:00
Steffen van Bergerem
c91c19b633 Order notifications by updated_at instead of created_at
closes #7568
2017-08-26 02:57:16 +02:00
Benjamin Neff
5ea7b8ee13 Set fog_provider and load carrierwave/storage/fog if S3 is enabled
Fixes #7563

closes #7566
2017-08-26 02:50:18 +02:00
Frédéric Bolvin
398235ee6f use asset manifest instead of entries in config.assets.precompile
closes #7565
2017-08-26 02:44:41 +02:00
Deus Figendi
e547a89246 fixes #7573 long poll answers
closes #7579
2017-08-25 01:51:31 +02:00
Benjamin Neff
9240605ad5 Remove internet explorer version check
This was in all stack traces, which confused people ...

We currently only support IE11, so the version check was already old
again ...

When we break old browser versions, we don't check that for other
browsers. So older IE browser just break, like very other older browser
too.

closes #7557
2017-08-24 14:57:43 +02:00
Benjamin Neff
8f0c74f72e Remove old_browser_js_support
This was needed for IE8 and IE9
2017-08-24 14:56:37 +02:00
Benjamin Neff
b8149a1fa1 Remove ie.js
Was needed for IE8
2017-08-24 14:56:37 +02:00
Benjamin Neff
494518def1 Remove old message parameter from invite mail
closes #7571
2017-08-23 21:55:43 +02:00
Benjamin Neff
b530ed0be0 Switch back to mobile-fu
closes #7570
2017-08-23 21:50:29 +02:00
Benjamin Neff
2f3ea8c397 Merge branch 'master' into next-minor 2017-08-19 22:41:02 +02:00
Benjamin Neff
7153df5c86 Merge branch 'release/0.7.0.0' 2017-08-19 22:38:38 +02:00
Benjamin Neff
1c753204bc Merge branch 'release/0.7.0.0' into next-minor 2017-08-19 18:24:43 +02:00
Benjamin Neff
bf47e1bc93 Make sc avaliable
Also add "it" as fallback for "oc" and "sc"
2017-08-19 18:23:38 +02:00
Benjamin Neff
3b9848802e updated 53 locale files [ci skip] 2017-08-19 18:05:00 +02:00
Benjamin Neff
278298e21d Merge branch 'release/0.7.0.0' into next-minor 2017-08-19 15:04:09 +02:00
Benjamin Neff
4ef0c19ce3 Change order of fields in fill_in_new_user_form
The user_email is the first field anyway, and login form as a
user_username field too, so it maybe happens that we already fill in the
user_username filed there before page load finished.

closes #7556
2017-08-19 15:04:04 +02:00
Batyr Nuryyev
951a258a3d no title upon hover on button
closes #7551
2017-08-19 12:39:35 +02:00
ivan sebastian
3016280ef1 add jquery are you sure to comment form
closes #7530
2017-08-19 12:31:24 +02:00
Benjamin Neff
7e0cbff4fa Merge branch 'release/0.7.0.0' into next-minor 2017-08-19 07:39:55 +02:00
Benjamin Neff
50dd7b03d7 Wait for ajax request before checking contacts
closes #7554
2017-08-19 07:39:27 +02:00
Benjamin Neff
a01cc4dfcb Merge branch 'release/0.7.0.0' into next-minor 2017-08-17 11:42:11 +02:00
Benjamin Neff
aa8d46da0c Wait for post to be deleted before continuing
closes #7548
2017-08-17 11:42:04 +02:00
Steffen van Bergerem
fdff13e542 Enable tooltips for comment timeagos
closes #7547
2017-08-17 11:40:56 +02:00
Steffen van Bergerem
6ae2df2f9e Fix missing timeagos for comments in the single post view 2017-08-17 11:40:49 +02:00
Benjamin Neff
685135474b Merge branch 'release/0.7.0.0' into next-minor 2017-08-17 03:36:38 +02:00
Benjamin Neff
17949ffb4e Match parameter with match_array to fix order mismatch
closes #7546
2017-08-17 03:27:46 +02:00
Steffen van Bergerem
4cb365a6f4 Fix missing photos in the single post view
closes #7545
2017-08-17 03:25:31 +02:00
Steffen van Bergerem
ff9591aee0 Use gender-neutral forms in comments and specs
closes #7544
2017-08-17 00:50:55 +02:00
Benjamin Neff
f295da1613 Merge branch 'release/0.7.0.0' into next-minor 2017-08-16 20:42:22 +02:00
Benjamin Neff
b49b33675f Wait for stream to load and deselect each aspect individually
closes #7543
2017-08-16 20:41:13 +02:00
Benjamin Neff
cdc3084990 Wait for stream to load for invitation test 2017-08-16 20:41:05 +02:00
Benjamin Neff
2d06b2865f Handle when the block to delete doesn't exist
closes #7542
2017-08-16 20:40:11 +02:00
Benjamin Neff
a4d1ad160c Fix stop ignoring from privacy settings and on mobile
Fixes #7541
2017-08-16 20:39:58 +02:00
Benjamin Neff
0c1dd195da Start 0.7.1.0 cycle 2017-08-15 01:45:45 +02:00
Benjamin Neff
ecd4601bac Remove 0.6.8.0 from Changelog 2017-08-15 01:40:01 +02:00
Benjamin Neff
cbc3900d59 Merge pull request #6750 from cmrd-senya/account_migration_message
Account migration model/message
2017-08-15 01:13:43 +02:00
Benjamin Neff
d6225daaf3 Merge pull request #7534 from oneturkmen/enable-mobile-web-app-capable-meta
added tag for supporting apps prior to Chrome M39
2017-08-15 00:56:43 +02:00
cmrd Senya
45619cb153 Account migration model and message support
This commit introduces support for AccountMigration federation message
receive. It covers the cases when the new home pod for a user is remote
respective to the recepient pod of the message. It also allows to initiate
migration locally by a podmin from the rails console. This will give the
pods a possibility to understand the account migration event on the
federation level and thus future version which will implement migration
will be backward compatible with the pods starting from this commit.
2017-08-15 01:32:34 +03:00
cmrd Senya
e2979df65a Add explicit mutual contact to test data
Add explicit mutual contact creation to the DataGenerator#generic_user_data
which is used in account deletion tests.
2017-08-14 19:15:54 +03:00
Batyr Nuryyev
70dfcd97c5 added tag for supporting apps prior to Chrome M39
updates tag to follow standard styleguide
2017-08-14 16:25:42 +03:00
cmrd Senya
8f46073809 Stop disabling Send workers for each example 2017-08-14 13:54:38 +03:00
Benjamin Neff
b447eb6e95 Merge pull request #7538 from SuperTux88/fix-account_deleter
Re-add disconnect_contacts in AccountDeleter
2017-08-14 10:28:57 +02:00
Benjamin Neff
a61d5739d4 Re-add disconnect_contacts in AccountDeleter 2017-08-14 04:52:00 +02:00
Benjamin Neff
064b409390 Merge pull request #7537 from SuperTux88/update-gems
Update thor, coveralls and simplecov
2017-08-14 04:08:19 +02:00
Benjamin Neff
1bd630d8a1 Merge pull request #7536 from SuperTux88/refactor-publisher-preview
Remove avatar, name, timestamp and interactions from publisher preview
2017-08-14 04:07:56 +02:00
Benjamin Neff
7a21c227f7 Merge pull request #7535 from SuperTux88/unstuck-export
Reset stuck exports and handle errors
2017-08-14 04:05:25 +02:00
Benjamin Neff
47574bc324 Bump coveralls and simplecov 2017-08-14 03:15:21 +02:00
Benjamin Neff
907e221f24 Unlock thor again
It looks like all commands we use in production fixed the warnings
(rails 5.1), so we can update that again.
2017-08-14 03:04:05 +02:00
Benjamin Neff
dd6cbbbb8e Remove avatar, name, timestamp and interactions from publisher preview
This doesn't add any value in the post preview:
* Avatar is already at the left-hand side of the publisher
* Timestamp is always "less than a minute ago"
* Interactions are disabled in the preview anyway

We don't display these things in the comment preview either, they only
need space and don't add any value to the preview.
2017-08-14 02:21:28 +02:00
Benjamin Neff
1db6381308 Reset stuck exports 2017-08-14 00:36:52 +02:00
Benjamin Neff
172f80bcae Handle unexpected errors while exporting userdata or photos
Otherwise the export stays soft-locked and the podmin needs to reset it
manually.

Fixes #6225
2017-08-14 00:36:52 +02:00
Benjamin Neff
9adcca2679 Merge pull request #7533 from SuperTux88/add-indexes
Add missing indexes from #7234
2017-08-13 20:57:39 +02:00
Benjamin Neff
cc8fa3e5cd Merge pull request #7532 from svbergerem/update-gems
Update gems
2017-08-13 20:37:52 +02:00
Benjamin Neff
dbde75abcf Add missing unique indexes from #7234 2017-08-13 20:10:07 +02:00
Benjamin Neff
1d5460cd64 Cleanup invalid aspects and set unique index 2017-08-13 20:10:07 +02:00
Benjamin Neff
0577bf8058 Add missing indexes
See #7234
2017-08-13 20:10:07 +02:00
Benjamin Neff
7ffd7878d0 Use person for AccountDeleter
Also remove `disconnect_contacts` methods, because contacts are already
removed with aspects memberships in `before_destroy`.
2017-08-13 20:10:07 +02:00
Benjamin Neff
245ad9e04d Remove diaspora_handle from AccountDeletions and add unique index 2017-08-13 19:43:04 +02:00
Benjamin Neff
fa0b78f5a2 Merge pull request #7531 from svbergerem/comment-preview-mentions
Render mentions in comment previews correctly
2017-08-13 15:04:58 +02:00
Steffen van Bergerem
3c59bcc4cd Bump raindrops 2017-08-13 14:56:25 +02:00
Steffen van Bergerem
b3a3adcd72 Bump rails-assets-jasmine 2017-08-13 14:40:49 +02:00
Steffen van Bergerem
d09bedf597 Bump jsonpath 2017-08-13 14:36:38 +02:00
Steffen van Bergerem
b1e885b0b3 Bump hitimes 2017-08-13 14:31:17 +02:00
Steffen van Bergerem
4979b8d95b Bump hashdiff 2017-08-13 14:29:45 +02:00
Steffen van Bergerem
322d112fe6 Bump haml 2017-08-13 14:28:35 +02:00
Steffen van Bergerem
2e2d3b5c7c Bump fog-core 2017-08-13 14:27:20 +02:00
Steffen van Bergerem
4e0f22ebb4 Bump excon 2017-08-13 14:25:37 +02:00
Steffen van Bergerem
d0a2fafeb7 Bump rspec-rails 2017-08-13 14:16:24 +02:00
Steffen van Bergerem
f1a7a3735c Bump poltergeist 2017-08-13 14:14:49 +02:00
Steffen van Bergerem
de4afb2d1f Bump jasmine 2017-08-13 14:12:03 +02:00
Steffen van Bergerem
c0713ddd8e Bump capybara 2017-08-13 14:08:10 +02:00
Steffen van Bergerem
2e25785f97 Bump versionist 2017-08-13 14:04:46 +02:00
Steffen van Bergerem
6df48b50c3 Bump openid_connect 2017-08-13 14:03:06 +02:00
Steffen van Bergerem
2d28ce3abf Bump mysql2 2017-08-13 14:00:51 +02:00
Steffen van Bergerem
7a3f6cec4e Bump autoprefixer-rails 2017-08-13 13:58:35 +02:00
Steffen van Bergerem
60d2db2732 Bump acts_as_api 2017-08-13 13:56:43 +02:00
Steffen van Bergerem
54d70a87ed Render mentions in comment previews correctly 2017-08-13 13:50:02 +02:00
Benjamin Neff
4b1c5685a9 Merge pull request #7529 from SuperTux88/actionview-loglevel
Disable rendering logging in production
2017-08-13 13:12:14 +02:00
Benjamin Neff
5f3a62fc43 Disable rendering logging in production 2017-08-13 05:23:57 +02:00
Benjamin Neff
138b706259 Merge pull request #7528 from Flaburgan/update-help
Update help
2017-08-13 04:56:03 +02:00
flaburgan
d14908ed0d Sharing and tags 2017-08-13 04:53:53 +02:00
flaburgan
770e7ddc2b Public post 2017-08-13 04:53:53 +02:00
flaburgan
21cdc6041d Private profile 2017-08-13 04:53:53 +02:00
flaburgan
0671a3a60c Insert an image 2017-08-13 04:53:52 +02:00
flaburgan
b968732941 Make pronto happy (double quote, spacing...) 2017-08-13 04:53:52 +02:00
flaburgan
8158a3a3b5 Markdown indications 2017-08-13 04:53:52 +02:00
flaburgan
1e591b041f Report only spam or illegal content 2017-08-13 04:53:51 +02:00
flaburgan
8b63eabcbe Search approximation 2017-08-13 04:53:51 +02:00
flaburgan
a14a0e34c6 Mention in comments 2017-08-13 04:53:51 +02:00
flaburgan
bd7f50f9b6 'Make contacts in this aspect visible to each other' is a local feature 2017-08-13 04:53:50 +02:00
flaburgan
c494640a51 Update the migration section 2017-08-13 04:53:50 +02:00
flaburgan
330e0f1fa1 Add link to discourse 2017-08-13 04:53:47 +02:00
Benjamin Neff
ce5e42c471 Merge pull request #7182 from svbergerem/spv-load-initial-interactions
Single post view interaction refactorings
2017-08-12 19:16:00 +02:00
Steffen van Bergerem
04735ce9b0 Remove unused interactions method in post controller 2017-08-12 18:09:14 +02:00
Steffen van Bergerem
ad53a43f88 Remove unused post interactions parse method 2017-08-12 18:09:14 +02:00
Steffen van Bergerem
55349162bd Fix comment highlightning in the SPV 2017-08-12 18:09:14 +02:00
Steffen van Bergerem
5808b84e83 Only include at most 30 likes and reshares on pageload in the SPV 2017-08-12 18:09:14 +02:00
Steffen van Bergerem
6b162110ce Add 'show all' links to the SPV to fetch missing likes and reshares 2017-08-12 18:09:13 +02:00
Steffen van Bergerem
6bab65e603 Stop underlining interaction avatars on hover or on focus 2017-08-12 18:09:13 +02:00
Steffen van Bergerem
7bd6825c2a Fix timeago in the single post view 2017-08-12 18:09:13 +02:00
Steffen van Bergerem
0bfc2fdd77 Load likes and reshares in the SPV via gon 2017-08-12 18:09:13 +02:00
Steffen van Bergerem
05d19e69ee Move ExtremePostPresenter methods into PostPresenter, add #with_initial_interactions method 2017-08-12 18:09:12 +02:00
Benjamin Neff
339dd27651 Merge pull request #7526 from SuperTux88/rails5-eager_load_paths
Use config.eager_load_paths instead of config.autoload_once_paths
2017-08-12 17:49:03 +02:00
Benjamin Neff
04c3880d79 Use config.eager_load_paths in production
See http://guides.rubyonrails.org/upgrading_ruby_on_rails.html#autoloading-is-disabled-after-booting-in-the-production-environment
2017-08-12 17:04:00 +02:00
Benjamin Neff
5905645d0f Fix mobile_fu
Since the gem was renamed, we need to require it manually...
2017-08-12 15:47:05 +02:00
Benjamin Neff
dc92633dab Merge pull request #7514 from SuperTux88/rails5
Upgrade to rails 5.1
2017-08-12 15:43:15 +02:00
Benjamin Neff
6b2c010ecc Wait for like to finish 2017-08-12 15:39:28 +02:00
Benjamin Neff
c2526c6111 Don't wait for .loading class, it's sometimes already removed again 2017-08-12 15:39:27 +02:00
Benjamin Neff
62cb1f99ce Get current time before the test to be safer on MySQL 2017-08-12 15:39:27 +02:00
Benjamin Neff
605e292589 Wait for image to be uploaded 2017-08-12 15:39:27 +02:00
Benjamin Neff
6b8c2ebe9f Fix rubocop cop namespace for ExtraSpacing 2017-08-12 15:39:27 +02:00
Benjamin Neff
ec680962ee Convert CreateSchema migration to real migration with up method
Otherwise Rails 5 would ignore the migration version and create the
tables with bitints as IDs on MySQL.
2017-08-12 15:39:27 +02:00
Dennis Schubert
50f1fd304f Remove UTF8 to UTF8mb4 migration
we released that in 0.5.0.0 in 2015, we do not support skipping majors
anyway, and this is broken in Rails 5, so let's remove this. If people
upgrade from before 0.5.0.0, they have to upgrade via 0.6.0.0, but
that's written in the documenation.
2017-08-12 15:39:27 +02:00
Dennis Schubert
5b1be7d8da Remove the schema.rb from this repo
Although this is contrary to rails best-practises, we cannot provide a schema.rb that works for both MySQL and PostgreSQL, so we have no choice. Our migrations are maintained, so it should always be possible to get back to a "clean" database schema anyway.
2017-08-12 15:39:26 +02:00
Dennis Schubert
ef70549832 Replace usages of the deprecated delete_all with conditions 2017-08-12 15:39:26 +02:00
Dennis Schubert
b614237504 Make all current migrations Rails 4.2 based 2017-08-12 15:39:26 +02:00
Dennis Schubert
1f272f5306 Do not touch the schema_migrations table in migrations
... this breaks the Rails 5 upgrade, and it's actually no longer needed.
New installations will have the right size anyway, and even if some
older installations miss the migration by not updating for 2 years, it
still doesn't matter since there is no risk that we will ever have
emojis in our migration filenames.
2017-08-12 15:39:26 +02:00
Benjamin Neff
b203862ca3 Workaround for bootstrap-sass
The change in assets.rb should be enough, but it doesn't work, because
sprockets `after_initialize` runs before it and initializes sprockets
with unfiltered paths.

But the trick with the underscore works, because bootstrap-sass has
named the file `_bootstrap.scss`, and rails-assets-bootstrap has
`bootstrap.scss`, so with `_bootstrap` it uses the correct bootstrap.
2017-08-12 15:39:26 +02:00
Benjamin Neff
b80d324504 Fix some failing cukes because they were too fast 2017-08-12 15:39:26 +02:00
Benjamin Neff
ff3bd1f59b Fix post service spec
* load records to array to check them
* test that only 15 people are returned
2017-08-12 15:39:25 +02:00
Benjamin Neff
33e3e3a14d Fix person spec, use first(15) instead of slice(0..14) 2017-08-12 15:39:25 +02:00
Benjamin Neff
f4136d4559 Fix post spec
* don't use `double` for queries
* use `second` instead of `at()`.
2017-08-12 15:39:25 +02:00
Benjamin Neff
29ab4d8242 Fix querying spec, remove (Post) 2017-08-12 15:39:25 +02:00
Benjamin Neff
63e342e6c4 Use aspect_ids for visible_shareables 2017-08-12 15:39:25 +02:00
Benjamin Neff
d62772f9c0 Replace Fixnum with Integer 2017-08-12 15:39:25 +02:00
Benjamin Neff
ca8974d4a0 Use ActionDispatch::TestRequest in NotificationSerializer spec 2017-08-12 15:39:24 +02:00
Benjamin Neff
b61536ff06 Remove unused formatted_birthday from profile model 2017-08-12 15:39:24 +02:00
Benjamin Neff
77951c4657 Fix user removal spec 2017-08-12 15:39:24 +02:00
Benjamin Neff
1adb4837ef Fix OpenID Connect TokenEndpoint when client id is not found 2017-08-12 15:39:24 +02:00
Benjamin Neff
385ab76077 Refactor OpenID specs to prevent duplicate client names 2017-08-12 15:39:24 +02:00
Benjamin Neff
27f3b68f54 Copy headers in OpenidConnect TokenEndpointController 2017-08-12 15:39:24 +02:00
Benjamin Neff
9626c77a1c Remove skip_fallback from post fetcher 2017-08-12 15:39:23 +02:00
Benjamin Neff
621fdda197 New syntax for request specs 2017-08-12 15:39:23 +02:00
Benjamin Neff
7c9590a27c Use .reload instead of (true) in specs
Or remove it where not needed
2017-08-12 15:39:23 +02:00
Benjamin Neff
2a6515fab9 Add params keyword to controller specs 2017-08-12 15:39:23 +02:00
Benjamin Neff
955ef43a0e Replace use_transactional_fixtures with use_transactional_tests 2017-08-12 15:39:23 +02:00
Benjamin Neff
5335ee86d6 Mobile fails now with ActionController::UnknownFormat 2017-08-12 15:39:22 +02:00
Benjamin Neff
4f5b1dd845 Fix creating share visibilities
Validation fails because there is no user set.
2017-08-12 15:39:22 +02:00
Benjamin Neff
d5f24021a7 Replace render text: ... with render plain: ... 2017-08-12 15:39:22 +02:00
Benjamin Neff
4bbc51bfb9 Remove return in scope block
Return in scope fails with `LocalJumpError: unexpected return`
2017-08-12 15:39:22 +02:00
Benjamin Neff
150fea6edb Replace render nothing: true with head 2017-08-12 15:39:22 +02:00
Benjamin Neff
80c241bc7a Replace redirect_to :back with redirect_back
Also remove some unused html responses
2017-08-12 15:39:22 +02:00
Benjamin Neff
b8ebb778bf Refactor federation mappings
The hashes don't work properly with rails 5, there are different classes
loaded when called from the rails engine with missing inheritance.

Also the hashes never worked well with spring.
2017-08-12 15:39:21 +02:00
Benjamin Neff
2b911b0131 Permit parameters before using them
ActionController::Parameters no longer inherits from HashWithIndifferentAccess
2017-08-12 15:39:21 +02:00
Benjamin Neff
8a5752dd6c Fix creating a post with poll
There were validation errors because `answer.poll` wasn't set.
2017-08-12 15:39:21 +02:00
Benjamin Neff
c382321934 Replace old ..._filter with new ..._action 2017-08-12 15:39:21 +02:00
Benjamin Neff
6e4c5bae29 Replace attribute_changed? with new methods 2017-08-12 15:39:21 +02:00
Benjamin Neff
e076910b74 Prepend protect_from_forgery because this defaults to false now 2017-08-12 15:39:21 +02:00
Benjamin Neff
b9d9a63739 Add rails-controller-testing dependency
Needed for `assigns` in controller specs
2017-08-12 15:39:20 +02:00
Benjamin Neff
ee9a299df6 Replace HashWithIndifferentAccess, it is now deprecated 2017-08-12 15:39:20 +02:00
Benjamin Neff
d0b634852b Fix belongs_to, it is now required by default 2017-08-12 15:39:20 +02:00
Benjamin Neff
eb19c327e2 Add ApplicationRecord 2017-08-12 15:39:20 +02:00
Benjamin Neff
fe57bd88e8 Add ApplicationMailer 2017-08-12 15:39:20 +02:00
Benjamin Neff
4a9548ec1b Use skip_pipeline: true for asset_url 2017-08-12 15:39:20 +02:00
Benjamin Neff
3d7061b240 Update configs for rails 5
Used `rails app:update`
2017-08-12 15:39:19 +02:00
Dennis Schubert
b711a8d4a1 Update binstubs 2017-08-12 15:39:19 +02:00
Dennis Schubert
45de17e1de Remove test_after_commit 2017-08-12 15:39:19 +02:00
Dennis Schubert
922c3ab81a Update gems 2017-08-12 15:39:19 +02:00
Steffen van Bergerem
7624854495 Merge pull request #7235 from AugierLe42e/md-editor-mobile-view
Markdown editor final chapter: add editor on publisher, comments and conversation of mobile view
2017-08-12 11:56:57 +02:00
Steffen van Bergerem
a6fb85d10f Merge pull request #7524 from ivantedja/7273-cmd-enter-submit
support cmd+enter for post submission
2017-08-12 11:55:23 +02:00
Steffen van Bergerem
f4cdec03c7 Remove obsolete conversation and new status message CSS 2017-08-12 11:02:47 +02:00
Steffen van Bergerem
d4ed3bce4d Remove unnecessary markdown editor CSS 2017-08-12 11:02:46 +02:00
Benjamin Neff
53f05eff5a Merge pull request #7525 from Flaburgan/hide-signin-on-signin-page
Hide 'Sign in' header link on the connection page
2017-08-12 03:40:31 +02:00
ivan sebastian
b154e9d7f9 support cmd+enter for post submission 2017-08-11 23:33:37 +07:00
flaburgan
2b90bb8562 Hide 'Sign in' header link on the connection page 2017-08-11 17:40:29 +02:00
Augier
008b899422 Markdown editor on publisher, conversations and mobile comments 2017-08-11 10:51:14 +02:00
Benjamin Neff
280a9e2023 Merge pull request #7523 from svbergerem/improve-adding-posts-to-stream
Improve adding posts to stream
2017-08-11 03:21:48 +02:00
Steffen van Bergerem
ba9a2cbeba Remove no posts info after rendering with available posts 2017-08-11 02:24:52 +02:00
Steffen van Bergerem
4c7948c7f7 Use id in stream comparator as fallback 2017-08-11 02:24:51 +02:00
Benjamin Neff
43bdebca74 Merge pull request #7522 from svbergerem/fix-autosize-comments-conversations
Call autosize when changing input via markdown editor
2017-08-10 22:31:12 +02:00
Steffen van Bergerem
757a5fbd10 Merge pull request #7509 from Flaburgan/responsive-header
Improve responsive header in desktop version
2017-08-10 18:48:37 +02:00
Steffen van Bergerem
39110c6b1b Use full width for notification dropdown on small devices 2017-08-10 17:51:01 +02:00
Steffen van Bergerem
8ce76882e3 Replace deprecated visible-* classes 2017-08-10 17:51:01 +02:00
Steffen van Bergerem
635a5c0564 Remove unused check for visible notification badge in notification dropdown view 2017-08-10 17:51:01 +02:00
Steffen van Bergerem
6995ca1fe3 Fix vertical alignment of search bar in the header 2017-08-10 17:51:01 +02:00
Steffen van Bergerem
9c40009ee1 Avoid using fixed vertical margins and paddings in the header 2017-08-10 17:51:01 +02:00
flaburgan
91e0e131a5 Improve colors management 2017-08-10 17:51:01 +02:00
flaburgan
047bb607f3 Do not hardcode image path 2017-08-10 17:51:01 +02:00
flaburgan
0798bfbc8c Refactor ids to classes, reorder css properties, css selectors depth 2017-08-10 17:51:01 +02:00
flaburgan
b995dfd179 Avoid search result dropdown to be hidden 2017-08-10 17:51:01 +02:00
flaburgan
99570c9c07 Responsive header for not connected pages too 2017-08-10 17:51:01 +02:00
flaburgan
569411acb8 Change global menu content on small screen 2017-08-10 17:51:01 +02:00
flaburgan
ae73294f41 Improved responsive header 2017-08-10 17:51:01 +02:00
Steffen van Bergerem
d4bdb2fcb4 Call autosize when changing input via markdown editor
Fixes #7521
2017-08-10 16:42:19 +02:00
Benjamin Neff
9d2d20e854 Merge pull request #6726 from cmrd-senya/archive-schema
Update the user data export archive format.
2017-08-10 10:54:02 +02:00
cmrd Senya
9bcdc90cfd Fix Person.in_aspects scope multiple return
Fix Person.in_aspects scope to return each person only once when the
person is in multiple aspects.
2017-08-10 09:36:34 +03:00
cmrd Senya
0a1b434607 Add a little cuke test for profile export
That should increase test coverage percentage
2017-08-10 09:36:31 +03:00
cmrd Senya
d8398caf2e Move misc_spec.rb to spec/spec
spec/spec is a new folder for "tests for tests"
2017-08-10 09:36:29 +03:00
cmrd Senya
7374661e2f Update the user data export archive format.
This commit introduces changes to the user data export archive format.
This extends data set which is included in the archive. This data can be
then imported to other pods when this feature is implemented.

Also the commit adds the archive format json schema. ATM it is used in
automatic tests only, but in future it will also be used to validate
incoming archives.
2017-08-10 09:36:26 +03:00
Benjamin Neff
eefa6701a8 Merge pull request #7520 from svbergerem/increase-mobile-post-action-size
Include count in mobile post action link and increase reshare counter after reshare
2017-08-10 01:30:39 +02:00
Benjamin Neff
05a4bf262a Merge pull request #7518 from svbergerem/fix-7245
Prevent publisher from closing in preview mode
2017-08-10 01:27:55 +02:00
Benjamin Neff
c06af05e19 Merge pull request #7516 from Flaburgan/back-to-top-position
Move back to top to the right to avoid misclicks
2017-08-10 01:26:28 +02:00
Benjamin Neff
3d8bda40e1 Merge pull request #7517 from svbergerem/update-markdown-it
Update markdown-it
2017-08-10 01:23:57 +02:00
Steffen van Bergerem
bc0088eb47 Increase mobile reshare counter after reshare 2017-08-10 01:16:53 +02:00
Steffen van Bergerem
18256f3709 Include count in mobile post action link (reshare, comment and like) 2017-08-10 01:16:53 +02:00
Steffen van Bergerem
dc828e0e5a Prevent publisher from closing in preview mode
Fixes #7245
2017-08-09 22:12:00 +02:00
Steffen van Bergerem
32233ccb99 Merge pull request #7482 from cmrd-senya/markdown-editor-conversations-comments
Add markdown editor on conversations and comments
2017-08-09 21:50:35 +02:00
cmrd Senya
621d269760 MD editor coversations&comments: refactorings
Javascript refactorings for better maintainability:
* simplePreview function to avoid code duplication
* Preloaded conversation is processed in a slightly different way
* Split isPreviewOrTexareaNotEmpty function since it has more than one responsibility
2017-08-09 21:49:25 +02:00
cmrd Senya
1b1db3bb0c Bump diaspora_federation 2017-08-09 21:43:42 +03:00
cmrd Senya
2c3f116326 Add new scopes for the Post model 2017-08-09 21:43:37 +03:00
cmrd Senya
c63493b0d1 New Exporter::NonContactAuthors class
This class is capable of quering a list of people from authors of given posts that are non-contacts of a given
user.
2017-08-09 21:43:31 +03:00
cmrd Senya
8f4498506d Fix autosize for the textarea in conversations
We need to reinit autosize when we navigate in conversations with the backbone router.
2017-08-09 20:35:23 +03:00
Augier
7b711254a5 Fix CSS and blur on commant submission 2017-08-09 20:35:23 +03:00
Augier
fd39a48bea Add markdown editor on conversations and comments 2017-08-09 20:35:23 +03:00
cmrd Senya
c985af1f85 New Exporter::OthersRelayables class
This class implements methods that allow to query relayables (comments, likes, participations,
poll_participations) of other people for posts of the given person.
2017-08-09 18:09:04 +03:00
cmrd Senya
fca6121c6a Exporter::PostsWithActivity class
This class allows to query posts where a person made any activity (submitted comments,
likes, participations or poll participations).
2017-08-09 18:09:04 +03:00
cmrd Senya
7db4f825a6 Refactor account deletion spec
This commit refactors account deletion spec by moving data creation to a helper
object DataGenerator.
2017-08-09 18:09:04 +03:00
Steffen van Bergerem
f2606386d3 Bump markdown-it 2017-08-09 13:36:28 +02:00
flaburgan
62fa43b222 Move back to top to the right to avoid misclicks 2017-08-08 13:01:58 +02:00
Benjamin Neff
f83fb6f4c3 Merge pull request #7484 from Flaburgan/7126-name-invitation-boy
Include first/last name in invitation emails body
2017-08-07 23:00:39 +02:00
flaburgan
1eea034844 Add a test 2017-08-07 20:21:51 +02:00
flaburgan
9a27983313 Refactor name condition to a cleaner code, delegate :full_name from profile to person to user 2017-08-07 19:08:17 +02:00
flaburgan
c2e0feb38b Include first/last name in invitation emails 2017-08-07 19:08:17 +02:00
Benjamin Neff
6ecf784d91 Merge pull request #7513 from SuperTux88/bump-acts-as-taggable-on
Bump acts-as-taggable-on
2017-08-04 03:10:12 +02:00
Benjamin Neff
9ca9d63285 Merge pull request #7511 from SuperTux88/sidekiq5
Upgrade sidekiq
2017-08-04 03:09:50 +02:00
Benjamin Neff
d0896c7823 Merge pull request #7512 from SuperTux88/well-known
Cleanup .gitignore and add note about .well-known to the changelog
2017-08-04 03:08:03 +02:00
Benjamin Neff
3961841506 Bump acts-as-taggable-on 2017-08-04 01:02:11 +02:00
Benjamin Neff
c6a0fbe8d4 Cleanup .gitignore and add note about .well-known to the changelog
[ci skip]
2017-08-04 00:54:51 +02:00
Benjamin Neff
31acb5348a Bump sidekiq 2017-08-03 03:14:30 +02:00
Benjamin Neff
61afb35803 Merge pull request #7510 from SuperTux88/fix-bookmarklet-for-sprockets-3
Fix bookmarklet for sprockets 3
2017-08-01 03:33:04 +02:00
Benjamin Neff
1007b3cdbd Use Rails.application.assets_manifest.assets instead of json file 2017-07-31 22:56:05 +02:00
Benjamin Neff
7f8108e4ac Precompile bookmarklet to use in production
`Rails.application.assets` is only available when `config.assets.compile`
is true (which is false in production). So the old way with a separate
rake task doesn't work in production. But we can get the filename of the
precompiled file from `Rails.application.assets_manifest.assets`.
2017-07-31 22:43:28 +02:00
Benjamin Neff
c42315f3ee Merge pull request #7507 from SuperTux88/sprockets-3
Upgrade sprockets
2017-07-31 21:43:43 +02:00
Benjamin Neff
20822d3333 Merge pull request #7508 from svbergerem/mobile-comment-link
Direct links to mobile comments
2017-07-31 03:23:13 +02:00
Steffen van Bergerem
cd0f8a6670 Remove unused data attribute from mobile comments 2017-07-30 12:20:44 +02:00
Steffen van Bergerem
8a3d33d707 Add guid as id attribute to mobile comments 2017-07-30 12:16:47 +02:00
Benjamin Neff
a797f2d27b Don't precompile all themes for tests
And sprockets 3 also caches files in tmp/cache/assets/sprockets
2017-07-30 05:57:19 +02:00
Benjamin Neff
7a26456875 Add checksums to assets in specs 2017-07-30 05:21:33 +02:00
Benjamin Neff
7ee8bfbac4 Precompile poltergeist_disable_transition.css for tests 2017-07-30 05:01:39 +02:00
Benjamin Neff
29a7f151b6 Use config.assets.quiet instead of quiet_assets gem
The quiet_assets gem doesn't support rails 5, but sprockets 3 now has a
config.assets.quiet option, which deprecates the quiet_assets gem. But
the logging gem has a no-op silence method, that's why the quiet option
doesn't work out-of-the-box. I added a little hack to use the silence
method from ActiveSupport, which is also used from the original rails
logger.
2017-07-30 04:47:16 +02:00
Benjamin Neff
1360dd4207 Fix require favico.js
See rails/sprockets#169
2017-07-30 04:47:16 +02:00
Benjamin Neff
91ec412f14 manifest-*.json is now called .sprockets-manifest-*.json 2017-07-30 04:47:16 +02:00
Benjamin Neff
5f5448f955 Bump sprockets-rails 2017-07-30 02:31:55 +02:00
Benjamin Neff
6b131409f9 Merge pull request #7505 from svbergerem/fix-presenter-spec-filename-typo
Fix filename typo for post interaction presenter spec
2017-07-26 13:16:43 +02:00
Steffen van Bergerem
308bb1f77a Fix filename typo for post interaction presenter spec 2017-07-26 12:01:38 +02:00
Benjamin Neff
e036ffccc9 Merge pull request #7504 from svbergerem/update-jasmine
Update jasmine
2017-07-25 22:47:05 +02:00
Benjamin Neff
7416cee0c9 Merge pull request #7477 from diaspora/add-contributing-file
Add a Contributing file
2017-07-25 22:43:12 +02:00
Steffen van Bergerem
adf35b4bf0 Bump jasmine 2017-07-25 16:25:44 +02:00
Benjamin Neff
7baa3c0e24 Merge pull request #7495 from codebearsteam/6559-ergonomy-suggestion
Issue #6559: Changed default mail FROM header and tests

fixes #6559
2017-07-25 01:13:32 +02:00
netagonen
ce90d6a020 Replace Diaspora* with pod_name in the FROM header
Add pod name to FROM: header for no sender case
2017-07-25 00:49:02 +02:00
Rete2
2be0644281 Issue #6559: Changed default mail FROM header and tests 2017-07-25 00:46:02 +02:00
Benjamin Neff
da904ac025 Merge pull request #7503 from SuperTux88/quickfix-multi-stream-ignore-users-with-tags
Exclude ignored people from followed tags when building stream-relation
2017-07-24 01:35:58 +02:00
Benjamin Neff
a4c26b7464 Exclude ignored people from followed tags when building stream-relation
This improves the main stream when you have less or inactive contacts
and ignored an active person that posts many posts with tags. When the
person is only removed after collecting all post ids, you don't see
posts with tags from other people.
2017-07-23 23:33:43 +02:00
Benjamin Neff
35e9faf5f2 Merge pull request #7502 from SuperTux88/cucumber-first-login-timeout
Cache assets-cache for cucumber on travis
2017-07-23 19:43:07 +02:00
Benjamin Neff
b0ac09a0a3 Cache assets-cache for cucumber on travis 2017-07-23 18:02:56 +02:00
Benjamin Neff
d8410e21b3 Merge pull request #7259 from Flaburgan/bump-ruby-2.4
Bump ruby to 2.4
2017-07-23 18:00:06 +02:00
Benjamin Neff
5d4d7ffa1e Merge pull request #7501 from SuperTux88/send-public-profile
Send public profiles publicly
2017-07-23 04:19:49 +02:00
Benjamin Neff
726e56ffb2 Install gems for production, to see when compatibility breaks 2017-07-23 02:42:01 +02:00
flaburgan
33fa2e8a9e Bump ruby to 2.4 2017-07-23 02:41:29 +02:00
Benjamin Neff
8942bb98c8 Send and receive public flag for profile 2017-07-23 02:36:29 +02:00
Benjamin Neff
f9476409c8 Send public profiles publicly
this will help big profiles, and the informations are public anyway, so no
need to encrypt them.

fixes #3164
2017-07-23 02:36:22 +02:00
Dennis Schubert
488860d2f0 Merge pull request #7500 from SuperTux88/update-gems
Update gems
2017-07-23 02:33:13 +02:00
Benjamin Neff
e94ec1e3c5 Use latest ruby-versions 2017-07-23 00:50:17 +02:00
Benjamin Neff
c0266969be Bump rails-assets-markdown-it 2017-07-23 00:31:05 +02:00
Benjamin Neff
b07114e40a Bump rails-assets-highlightjs 2017-07-23 00:31:05 +02:00
Benjamin Neff
c92b1ddcc6 Bump rails-assets-blueimp-gallery 2017-07-23 00:31:05 +02:00
Benjamin Neff
652f235ff0 Bump rails-assets-autosize 2017-07-23 00:31:05 +02:00
Benjamin Neff
7e9935c8b2 Replace jquery-ui-rails with rails-assets-jquery.ui 2017-07-23 00:31:05 +02:00
Benjamin Neff
03241c6480 Bump dependency gems 2017-07-23 00:31:05 +02:00
Benjamin Neff
a00defe0eb Bump cucumber-rails 2017-07-23 00:31:05 +02:00
Benjamin Neff
407c4f47d2 Bump rspec 2017-07-23 00:31:04 +02:00
Benjamin Neff
2a0cb17f48 Bump shoulda-matchers 2017-07-23 00:31:04 +02:00
Benjamin Neff
c44ca18e8f Bump webmock 2017-07-23 00:24:53 +02:00
Benjamin Neff
026fe3dc3d Bump timecop 2017-07-23 00:24:53 +02:00
Benjamin Neff
5bec57cfc9 Bump poltergeist 2017-07-23 00:24:52 +02:00
Benjamin Neff
bfdcb5481a Bump database_cleaner 2017-07-23 00:24:52 +02:00
Benjamin Neff
7759de8383 Bump capybara 2017-07-23 00:24:52 +02:00
Benjamin Neff
ccf938c95e Bump fixture_builder 2017-07-23 00:24:52 +02:00
Benjamin Neff
6f1571bc1b Bump spring 2017-07-23 00:24:52 +02:00
Benjamin Neff
7a0f0363e9 Bump haml_lint 2017-07-23 00:24:52 +02:00
Benjamin Neff
8c27418a55 Bump rubocop 2017-07-23 00:24:52 +02:00
Benjamin Neff
07c5dfe085 Bump pronto 2017-07-23 00:24:51 +02:00
Benjamin Neff
9031f4b772 Bump rb-inotify 2017-07-23 00:24:51 +02:00
Benjamin Neff
18f88ce252 Bump rb-fsevent 2017-07-23 00:24:51 +02:00
Benjamin Neff
f56d80f59d Bump guard-rubocop 2017-07-23 00:24:51 +02:00
Benjamin Neff
ac2265d4b4 Bump asset_sync 2017-07-23 00:24:51 +02:00
Benjamin Neff
fc45740dae Bump eye 2017-07-23 00:24:51 +02:00
Benjamin Neff
5866836557 Bump logging-rails 2017-07-23 00:24:50 +02:00
Benjamin Neff
3355f9ee16 Bump will_paginate 2017-07-23 00:24:50 +02:00
Benjamin Neff
b0d27b6907 Bump hamlit 2017-07-23 00:24:50 +02:00
Benjamin Neff
f7f4d50131 Bump addressable 2017-07-23 00:24:50 +02:00
Benjamin Neff
c81aadd574 Bump active_model_serializers 2017-07-23 00:24:44 +02:00
Benjamin Neff
9b70060f10 Bump openid_connect 2017-07-22 23:43:12 +02:00
Benjamin Neff
e773e45121 Bump omniauth 2017-07-22 23:43:12 +02:00
Benjamin Neff
8f3fccf0b2 Bump secure_headers 2017-07-22 23:43:12 +02:00
Benjamin Neff
ea73138eb8 Bump twitter-text 2017-07-22 23:43:12 +02:00
Benjamin Neff
d646563c7c Bump ruby-oembed 2017-07-22 23:43:12 +02:00
Benjamin Neff
d14d1616ff Bump nokogiri 2017-07-22 23:43:12 +02:00
Benjamin Neff
5c487a3a83 Bump leaflet-rails 2017-07-22 23:43:11 +02:00
Benjamin Neff
bde25ff6e4 Bump rails-i18n 2017-07-22 23:43:11 +02:00
Benjamin Neff
b43d9ce186 Bump http_accept_language 2017-07-22 23:43:11 +02:00
Benjamin Neff
e2072ded2c Bump jquery 2017-07-22 23:43:11 +02:00
Benjamin Neff
91ea6448fa Bump handlebars_assets 2017-07-22 23:43:11 +02:00
Benjamin Neff
047f333e88 Bump mini_magick 2017-07-22 23:43:11 +02:00
Benjamin Neff
31e85f32ac Bump carrierwave 2017-07-22 23:43:07 +02:00
Benjamin Neff
17b51beeda Bump fog-aws 2017-07-22 02:32:26 +02:00
Benjamin Neff
f0c3ae3782 Bump activerecord-import 2017-07-22 02:32:26 +02:00
Benjamin Neff
21c2864b39 Bump pg 2017-07-22 02:32:26 +02:00
Benjamin Neff
4074660a86 Bump mysql2 2017-07-22 02:32:25 +02:00
Benjamin Neff
6d9cfa961f Bump compass-rails
Add sprockets as fixed dependency, we don't want to upgrade this by
accident
2017-07-22 02:32:25 +02:00
Benjamin Neff
d33ac50060 Bump autoprefixer-rails 2017-07-22 02:32:25 +02:00
Benjamin Neff
c6be849998 Bump rack-cors 2017-07-22 02:32:25 +02:00
Benjamin Neff
ae8dd05f4f Bump uglifier 2017-07-22 02:32:25 +02:00
Benjamin Neff
512739916e Bump sidekiq-cron 2017-07-22 02:32:25 +02:00
Benjamin Neff
a89ad99617 Bump sidekiq 2017-07-22 02:32:24 +02:00
Benjamin Neff
816fa55862 Bump devise 2017-07-22 02:32:24 +02:00
Benjamin Neff
14712df69c Bump json 2017-07-22 02:32:24 +02:00
Benjamin Neff
d9b3489846 Bump responders 2017-07-22 02:32:24 +02:00
Benjamin Neff
99474d8cfa Bump unicorn 2017-07-22 02:32:24 +02:00
Benjamin Neff
126062d721 Bump rails 2017-07-22 02:32:24 +02:00
Benjamin Neff
871b8fbb01 Merge pull request #7497 from UpshiftNetwork/fix-signs-up-feature-tests
Fix: Failing 'Signs Up'-Feature Tests
2017-07-19 00:06:34 +02:00
Finn Woelm
070ef782e6 Fix: Failing 'Signs Up'-Feature Tests
Up to now, scripts were loaded prior to the stylesheet in <head>. When
scripts are loaded before stylesheets, it is possible that scripts
execute on the DOM elements before styles are fully loaded. This can
yield unexpected results.

In the case of the features/desktop/signs_up.feature tests, it would
happen every so often that the scripts ran before styles were loaded.
For example, the app.views.Publisher class (responsible for actions
related to creating a new post) relies on the poll element being either
hidden (or poll options being defined). As per stylesheet, the poll is
hidden by default. But when the scripts run before the stylesheet has
loaded, the poll appears visible to the script and post submission is
disabled.

This is fixed by loading stylesheets prior to scripts. See SO for more
info: https://stackoverflow.com/a/1324720/6451879
2017-07-18 18:38:36 +07:00
Benjamin Neff
21263edbdf Merge pull request #7491 from UpshiftNetwork/fix-failing-mention-features
Fix: Use Capybara#fill_in for appending to publisher
2017-07-14 13:23:47 +02:00
Finn Woelm
14b7c10567 Fix: Use Capybara#fill_in for appending to publisher
Capybara's native#send_key function is slow when it is passed a string
longer than just a few characters. This often results in timeout issues
and Capybara (falsely) reporting feature as failing.

To fix this, we use the faster function #fill_in. This does not trigger
JavaScript events on the input, so we manually trigger them after
fill_in by just sending a single key. This can be any key but since we
do not want to modify the text in the input, non-text keys should be
used. For a list of non-text keys, see
http://www.rubydoc.info/github/jnicklas/capybara/Capybara%2FNode%2FElement%3Asend_keys

There is an alternative to the above:
1) Use #fill_in to enter all text except for the last character:
    fill_in ..., with: "#{status_message_text} #{txt[0..-2]}"
2) And then use #send_key to send that last character:
    find("#status_message_text").native.send_key(txt.last)

At the moment, both approaches work equally well but the second approach
is documented here just in case it becomes relevant in the future.
2017-07-14 12:33:30 +07:00
Benjamin Neff
5d2ddfede1 Update changelog [ci skip] 2017-07-14 02:34:53 +02:00
Benjamin Neff
01ca08b86f Merge pull request #7436 from SuperTux88/federation-update
Federation gem update
2017-07-14 01:31:32 +02:00
Benjamin Neff
8b7a592112 Merge pull request #7488 from UpshiftNetwork/fix-assets-check-2
Fix: Check for asset precompilation when starting server
2017-07-14 00:11:11 +02:00
Finn Woelm
78986e6419 Fix: Check for asset precompilation when starting server
When `public/assets/` is a symlink, running `find public/assets ...`
does not return the correct result. By using `public/assets/`, find is
able to return the correct result regardless of whether the folder is an
actual folder or a symlink.

[ci skip]
2017-07-13 21:41:11 +07:00
Benjamin Neff
6c1ebea633 Merge pull request #7483 from Flaburgan/7393-always-link-comment-mobile
Always link comment count text on mobile
2017-07-13 02:31:30 +02:00
Benjamin Neff
3817dc9a5b Merge pull request #7480 from Flaburgan/7402-space-comment-mobile-spv
Fix height too high on mobile SPV, closes #7402
2017-07-13 02:31:07 +02:00
Fla
f94fa95653 Add a Contributing file 2017-07-12 16:14:58 +02:00
flaburgan
fc27640468 Always link comment count text on mobile 2017-07-12 16:00:26 +02:00
Benjamin Neff
d62d79bc29 Merge branch 'next-minor' into develop 2017-07-12 03:51:17 +02:00
Benjamin Neff
541dcbcd39 Merge branch 'master' into next-minor 2017-07-12 03:50:58 +02:00
Benjamin Neff
8bed8a84a3 Merge branch 'release/0.6.7.0' 2017-07-12 03:49:09 +02:00
Benjamin Neff
0e8bb71449 updated 126 locale files [ci skip] 2017-07-12 03:42:15 +02:00
Benjamin Neff
bc663253d2 Merge branch 'next-minor' into develop 2017-07-07 09:02:19 +02:00
Benjamin Neff
1ce736df16 Merge branch 'release/0.6.7.0' into next-minor 2017-07-07 09:02:10 +02:00
Dennis Schubert
e47895f3e1 Center .excellence-box contents
closes #7481
2017-07-07 09:01:34 +02:00
flaburgan
2dc142bd70 Add access to the report page on mobile for moderators
closes #7479
2017-07-07 08:58:42 +02:00
Benjamin Neff
2dc129d9be Merge branch 'next-minor' into develop 2017-07-06 02:55:31 +02:00
Benjamin Neff
2244781615 Merge branch 'release/0.6.7.0' into next-minor 2017-07-06 02:55:26 +02:00
flaburgan
59c343c0c6 Increase poltegeist timeout
closes #7478
2017-07-06 02:51:14 +02:00
flaburgan
9146c8d80f Fix height too high on mobile SPV, closes #7402 2017-07-05 17:19:20 +02:00
Benjamin Neff
58609e42d7 Merge branch 'next-minor' into develop 2017-07-05 02:10:24 +02:00
Benjamin Neff
58aa59fb8e Start 0.6.8.0 cycle 2017-07-05 02:07:45 +02:00
Benjamin Neff
068acd93ce Cleanup changelog (no bugfixes in this release) 2017-07-05 02:04:07 +02:00
Benjamin Neff
0e13a316f6 Cleanup some translations
closes #7465
2017-07-05 02:02:13 +02:00
flaburgan
ddda28102c Clean up the footer links a bit
closes #7446
2017-07-05 01:59:18 +02:00
flaburgan
ea9e50085d Add link to discourse in footer and left side bar 2017-07-05 01:57:17 +02:00
flaburgan
07d0ed916d Fix design issues + pronto
closes #7295
2017-07-05 01:51:07 +02:00
flaburgan
427aa8794e Add tests for mobile drawer 2017-07-05 01:50:16 +02:00
flaburgan
2782edc780 Refactor partials + pronto 2017-07-05 01:50:16 +02:00
flaburgan
a7d97b7fd3 Add mobile message confirmation on user invit action, Refactor admin responsive code to use bootstrap grid
Hide pod version alert only in the mobile version, not depending on screen size
2017-07-05 01:50:16 +02:00
flaburgan
7bdf33e1a8 Move invitation form under the user search in admin
Indicates when there is no report to review to avoid a weird empty page
2017-07-05 01:50:16 +02:00
SansPseudoFix
5cb4c6e5df Refactor, more partials + No version check for mobile 2017-07-05 01:50:16 +02:00
SansPseudoFix
276b640418 Add admin views to mobile, use partials for common code with desktop 2017-07-05 01:50:10 +02:00
Benjamin Neff
d71aa6a54a Merge branch 'next-minor' into develop 2017-07-03 03:46:54 +02:00
atulonruby
df1139234f Warn user if he leaves profile editing page #6520
closes #7473

closes #6589
2017-07-03 03:45:57 +02:00
Benjamin Neff
a931bee319 Make Participation entity non-relayable 2017-07-03 03:14:42 +02:00
Benjamin Neff
be8a1dfef4 Add tests for ContactRetraction 2017-07-03 03:14:42 +02:00
cmrd Senya
c2b9b8ab54 Use ContactRetraction for stop sharing with someone 2017-07-03 03:14:42 +02:00
Benjamin Neff
e2a40bb643 Send Relayables with parent author when the parent is local
Needed for diaspora/diaspora_federation#64
2017-07-03 03:14:42 +02:00
Benjamin Neff
4f9e560ab3 Use RFC 7033 webfinger from diaspora_federation gem 2017-07-03 03:14:41 +02:00
Benjamin Neff
283722a693 Use build_relayable_federation_entity helper for receive specs 2017-07-03 03:14:41 +02:00
Benjamin Neff
3ab674552f Rename xml_order to signature_order 2017-07-03 03:14:41 +02:00
Benjamin Neff
0f551c7b19 Fix public flag for contact retractions 2017-07-03 03:14:41 +02:00
Benjamin Neff
4244f2a5df Make Participation entity non-relayable
Related to diaspora/diaspora_federation#35
2017-07-03 03:14:41 +02:00
Benjamin Neff
07e9bf8be8 Remove old unused salmon method 2017-07-03 03:14:40 +02:00
Benjamin Neff
246d1ebbdf Remove legacy post xml
This was used for the old post fetching

Related to diaspora/diaspora_federation#31
2017-07-03 03:14:40 +02:00
Benjamin Neff
a6d7dbf1dd Send MagicEnvelope as body with correct Content-Type in specs
Related to diaspora/diaspora_federation#30
2017-07-03 03:14:40 +02:00
Benjamin Neff
381c03cfd7 Remove backward-compatibility for Retractions 2017-07-02 23:56:01 +02:00
Benjamin Neff
b6b0aac969 Send only Retractions
Related to diaspora/diaspora_federation#27
2017-07-02 23:56:00 +02:00
Benjamin Neff
e907b3eb18 Send Contact entity for start/stop sharing
Related to diaspora/diaspora_federation#32
2017-07-02 23:56:00 +02:00
Benjamin Neff
f6dc809e29 Send new MagicEnvelope and EncryptedMagicEnvelope
Related to diaspora/diaspora_federation#30
2017-07-02 23:56:00 +02:00
Benjamin Neff
95def40c55 Make Message entity non-relayable
Related to #36
2017-07-02 23:56:00 +02:00
Benjamin Neff
87d0778086 Remove guid and public_key from WebFinger
Related to diaspora/diaspora_federation#39
2017-07-02 23:56:00 +02:00
Benjamin Neff
5e2d063c49 Hash from federation entity now contains the correct data-type 2017-07-02 23:56:00 +02:00
Benjamin Neff
189c223224 Fix notification factory 2017-07-02 23:55:59 +02:00
Benjamin Neff
49822a9af7 New namespace for InvalidRootNode 2017-07-02 23:55:59 +02:00
Benjamin Neff
5e3ea249a9 Replace additional_xml_elements with additional_data for relayables 2017-07-02 23:55:59 +02:00
Benjamin Neff
78c7156e72 Replace FactoryGirl with Fabricate for federation factories 2017-07-02 23:55:59 +02:00
Benjamin Neff
d79c2e511b Bump diaspora_federation 2017-07-02 23:55:01 +02:00
Benjamin Neff
cb50681cea Merge branch 'next-minor' into develop 2017-06-30 02:13:40 +02:00
Benjamin Neff
0d232f1d1b Switch PercentLiteralDelimiters to new default
Let's change that to the new rubocop default, which is also the
suggestion in the ruby style guide.

See https://github.com/bbatsov/ruby-style-guide#percent-literal-braces

closes #7466
2017-06-30 02:13:31 +02:00
Benjamin Neff
05efe9b8fe Merge branch 'next-minor' into develop 2017-05-29 03:21:59 +02:00
Benjamin Neff
1751e21a87 Merge branch 'master' into next-minor 2017-05-29 03:21:49 +02:00
Benjamin Neff
7aadadce44 Merge branch 'release/0.6.6.0' 2017-05-29 03:20:38 +02:00
Benjamin Neff
f59055860a updated 70 locale files [ci skip] 2017-05-29 03:17:45 +02:00
Benjamin Neff
44e10a9172 Merge branch 'next-minor' into develop 2017-05-26 01:51:37 +02:00
Mahonri Gibson
5739f67605 Save email without confirmation when podmail is disabled.
fixes #7195

closes #7455
2017-05-26 01:50:55 +02:00
Benjamin Neff
a7093c6f7d Merge branch 'next-minor' into develop 2017-05-23 00:17:19 +02:00
Benjamin Neff
a6869197d8 Start 0.6.7.0 cycle
[ci skip]
2017-05-23 00:15:06 +02:00
Dennis Schubert
01d1bb10ac Merge branch 'next-minor' into develop 2017-05-21 12:08:16 +02:00
Benjamin Neff
0197cecaf8 Bump nokogiri
closes #7458
2017-05-21 12:08:12 +02:00
Dennis Schubert
7c37a62593 Merge branch 'next-minor' into develop 2017-05-21 12:07:14 +02:00
Benjamin Neff
65e8fc4012 Fix comment for environment.sidekiq.retry in diaspora.yml
fixes #7456

closes #7457
2017-05-21 12:07:10 +02:00
Dennis Schubert
1e06fd786c Merge branch 'next-minor' into develop 2017-05-21 12:06:41 +02:00
Benjamin Neff
e177706769 Add admin account username to NodeInfo metadata
Fixes #7421

closes #7447
2017-05-21 12:06:35 +02:00
Benjamin Neff
7934c1e969 Add NodeInfo 2.0 support 2017-05-21 12:05:54 +02:00
Dennis Schubert
010c1953f9 Merge branch 'next-minor' into develop 2017-05-21 12:05:22 +02:00
Benjamin Neff
c2eb53e827 Bump rubocop
Use old style for Style/PercentLiteralDelimiters for now. Maybe we can
change this in the future, because the ruby style guide suggests to use
`[]` (which is also the new default for rubocop).

closes #7443#
2017-05-21 12:05:17 +02:00
Benjamin Neff
153569e297 Bump pronto and all pronto-runners
Also add `require: false` everywhere.
2017-05-21 12:05:13 +02:00
Benjamin Neff
e463397122 Merge branch 'next-minor' into develop 2017-05-16 00:37:06 +02:00
cmrd Senya
6abd0509f9 Use guid instead of id at permalink and in SPV
This changes links from /posts/:id to /posts/:guid where the links are
not clicked very often. ID search is faster than guid search so we can't
change it everywhere, but these links are not very useful for clicking,
but can be used for easier guid look up.

closes #7453
2017-05-16 00:36:43 +02:00
Benjamin Neff
ee05cc8270 Merge branch 'next-minor' into develop 2017-05-13 02:09:25 +02:00
Mahonri Gibson
942e090b3a Fix welcome message crashing server if podmin is set to invalid user.
Fixes #7363

closes #7452
2017-05-13 02:08:51 +02:00
Benjamin Neff
f4f0e724c6 Merge branch 'next-minor' into develop 2017-05-11 04:24:29 +02:00
Benjamin Neff
02b4d3f347 Don't raise when the public key of a person is "broken"
Breaking a public key of a person can be used to "block" receiving posts
from this person on the pod. So we should handle that case better and
not just trigger many retries for something that will fail again.

closes #7448
2017-05-11 04:24:13 +02:00
Benjamin Neff
7d9c6c85bd Remove rails_admin
This is now broken since more than half a year, so I think we can just
remove it.

Podmins shouldn't use this anyway, because it does bad things, like
replacing NULL with an empty string when editing something. If we really
need an admin interface for something, we should add it to our own admin
panel at /admins/dashboard.

Fixes #7027 and #6413

closes #7440
2017-05-11 04:18:33 +02:00
Benjamin Neff
064fc3cc45 Merge branch 'next-minor' into develop 2017-05-05 02:30:56 +02:00
Steffen van Bergerem
23d3d9dc3f Use post page title for atom feeds and add entry author
Fixes #7249

closes #7420
2017-05-05 02:30:46 +02:00
Steffen van Bergerem
6dc4493685 Add spec for post_page_title for reshares 2017-05-05 02:29:28 +02:00
Steffen van Bergerem
fc28d6af35 Fix first comment in mobile view with french locale
Fixes #7438. The regression has possibly been introduced by #7207.

closes #7441
2017-05-05 02:26:22 +02:00
Benjamin Neff
d72eb59c07 Merge branch 'next-minor' into develop 2017-05-03 02:49:18 +02:00
Benjamin Neff
e7cfaa7e42 Bump diaspora_federation
The previous version logged the encrypted private messages of the new
protocol, which only makes the logfiles bigger without any benefit,
because it's encrypted anyway ...

closes #7435
2017-05-03 02:49:08 +02:00
Steffen van Bergerem
7f784cf2b1 Merge branch 'next-minor' into develop 2017-05-03 02:09:07 +02:00
Benjamin Neff
9e36f0201c Initialize timeago only after language is set
closes #7419
2017-05-03 02:08:57 +02:00
cmrd Senya
87ed561d45 bump rails-timeago
Here we also set autoDispose to false. This is an option that was introduced
sometime after our last bump. Default is true and it disposes timeago object
if it is not in DOM. But that is the way we initialize timeago objects, therefore
if we have autoDispose=true then they will be disposed before they inserted in DOM.
So by using autoDispose=false we enforce previous behavior that worked fine for us.
2017-05-03 02:08:50 +02:00
cmrd Senya
a880de28a8 Add a cuke for mobile stream page post timestamps 2017-05-03 02:08:50 +02:00
cmrd Senya
4621c54421 fix a typo 2017-05-03 02:08:50 +02:00
Benjamin Neff
caaea50cf6 Merge branch 'next-minor' into develop 2017-04-26 22:18:02 +02:00
pskosinski
afef279aff Fix untranslatable photo upload button's hover text
closes #7429

fixes #7427
2017-04-26 22:17:44 +02:00
Benjamin Neff
45c623c262 Merge branch 'next-minor' into develop 2017-04-19 00:52:49 +02:00
Benjamin Neff
78c9cc5754 Merge branch 'master' into next-minor 2017-04-19 00:52:38 +02:00
Dennis Schubert
3eeee4b5de Merge branch 'next-minor' into develop 2017-04-12 01:29:50 +02:00
Dennis Schubert
69be912478 Start 0.6.6.0 cycle
[ci skip]
2017-04-12 01:28:18 +02:00
Benjamin Neff
e91a0a57a3 Merge branch 'next-minor' into develop 2017-04-08 00:00:56 +02:00
Steffen van Bergerem
82629c5979 Merge branch 'next-minor' into develop 2017-04-06 14:10:31 +02:00
Benjamin Neff
24b40a4c01 Merge branch 'next-minor' into develop 2017-04-06 01:02:26 +02:00
Steffen van Bergerem
a61031710c Merge branch 'next-minor' into develop 2017-04-02 12:51:35 +02:00
Benjamin Neff
b639385c46 Merge pull request #7407 from svbergerem/statistics-json-500
Return 406 instead of 500 for statistics.json
2017-03-31 01:00:06 +02:00
Steffen van Bergerem
c94bac3cf9 Return 406 instead of 500 for statistics.json
Fixes #7406
2017-03-30 23:17:58 +02:00
Dennis Schubert
9a76cf7d3b Merge branch 'next-minor' into develop 2017-03-29 22:33:43 +02:00
Benjamin Neff
6a5c34535d Merge branch 'next-minor' into develop 2017-03-28 19:55:48 +02:00
Dennis Schubert
ec6a6d5138 Merge branch 'next-minor' into develop 2017-03-28 06:42:53 +02:00
Dennis Schubert
10bf1c0925 Merge branch 'next-minor' into develop 2017-03-28 01:57:02 +02:00
Dennis Schubert
efdfa749a7 Merge branch 'next-minor' into develop
closes #7398
2017-03-28 01:48:35 +02:00
Benjamin Neff
5de83b881b Merge pull request #7399 from svbergerem/remove-statistics-json
Remove statistics.json
2017-03-28 00:08:16 +02:00
Steffen van Bergerem
e8ee74ef87 Remove statistics.json 2017-03-27 15:54:34 +02:00
Benjamin Neff
d9b02418b6 Merge branch 'next-minor' into develop 2017-03-27 00:04:53 +02:00
Steffen van Bergerem
5b0b3d989b Merge pull request #7394 from SuperTux88/mention-backport-on-receive
Only backport mention syntax when the author is local
2017-03-26 12:26:52 +02:00
Benjamin Neff
04e653bd69 Merge branch 'next-minor' into develop 2017-03-26 04:15:19 +02:00
Benjamin Neff
a07bd94ec6 Merge pull request #7389 from svbergerem/fix-comment-mentions-spacing
Fix comment mentions spacing
2017-03-26 04:06:34 +02:00
Benjamin Neff
d04a553ae2 Merge pull request #7380 from svbergerem/refactor-mentions-css
Refactor mentions-input-box css
2017-03-26 04:04:56 +02:00
Benjamin Neff
af0a5e32a1 Merge pull request #7369 from svbergerem/color-themes-i18n
i18n for color themes
2017-03-26 03:12:54 +02:00
Benjamin Neff
d0fcdc254e Only backport mention syntax when the author is local
We don't need to change new to old syntax when we receive a post from a
newer pod, since we can handle the new syntax. This is only needed when
sending it to older pods.

related to #7392
2017-03-25 23:42:19 +01:00
Benjamin Neff
06b61b6480 Merge branch 'next-minor' into develop 2017-03-25 20:38:00 +01:00
Steffen van Bergerem
f5c937b9cf Fix comment mentions spacing 2017-03-24 13:11:16 +01:00
Steffen van Bergerem
a1199ac219 Remove mentions-input-box 2017-03-24 01:14:01 +01:00
Steffen van Bergerem
d38eabf333 Refactor mentions-input-box css 2017-03-24 01:07:39 +01:00
Steffen van Bergerem
b0da14c383 Merge pull request #7386 from cmrd-senya/comment-mention-front-end
Comment mentions front-end
2017-03-24 00:20:37 +01:00
cmrd Senya
c2f352d837 Comment mentions front-end 2017-03-24 00:40:24 +02:00
Steffen van Bergerem
b076a1a1ff Merge branch 'next-minor' into develop 2017-03-23 13:55:23 +01:00
Benjamin Neff
8ccc39e296 Merge branch 'next-minor' into develop 2017-03-23 03:42:31 +01:00
Steffen van Bergerem
55fee86a95 Merge branch 'next-minor' into develop 2017-03-21 16:29:25 +01:00
Steffen van Bergerem
a2ca68b523 Merge branch 'next-minor' into develop 2017-03-21 13:34:59 +01:00
Steffen van Bergerem
80b53adcf0 Merge branch 'next-minor' into develop 2017-03-21 13:08:52 +01:00
Steffen van Bergerem
b2d0feb00d Merge pull request #7303 from cmrd-senya/jquery3
Use jQuery 3
2017-03-18 16:06:05 +01:00
cmrd Senya
71e0bdc411 app_spec fixes 2017-03-18 16:50:55 +02:00
cmrd Senya
c90cb3328e jQuery 3 integration 2017-03-18 16:50:52 +02:00
Steffen van Bergerem
ca6ce912d3 Merge branch 'next-minor' into develop 2017-03-17 11:34:56 +01:00
Steffen van Bergerem
7eb3dabb44 i18n for color themes 2017-03-16 12:25:41 +01:00
goobertron
6657fd51fa Capitalisation of colour themes 2017-03-16 12:03:53 +01:00
Benjamin Neff
78359d69d8 Merge branch 'next-minor' into develop 2017-03-12 04:32:47 +01:00
Steffen van Bergerem
1b9ab16039 Merge branch 'next-minor' into develop 2017-03-06 21:11:54 +01:00
Steffen van Bergerem
0aefc76aaa Merge branch 'next-minor' into develop 2017-03-06 21:10:31 +01:00
Steffen van Bergerem
6fce2810e5 Merge pull request #7331 from SuperTux88/fix-mentioned-in-comments-notifications
Fix mentioned in comments notifications
2017-03-05 20:07:25 +01:00
Benjamin Neff
509f429cc8 Move 'distinct' to 'allowed_to_be_mentioned_in_a_comment_to' 2017-03-05 17:59:28 +01:00
Benjamin Neff
ce739ef5ad Merge branch 'next-minor' into develop 2017-03-05 16:29:35 +01:00
Benjamin Neff
351b4d28bf Merge branch 'next-minor' into develop 2017-03-05 01:58:24 +01:00
Benjamin Neff
ae687cf1d5 Merge branch 'next-minor' into develop 2017-03-05 00:01:11 +01:00
Benjamin Neff
e82ac2199f Merge branch 'next-minor' into develop 2017-03-04 22:11:22 +01:00
Benjamin Neff
e1bf447aad Merge branch 'next-minor' into develop 2017-03-04 21:08:18 +01:00
Steffen van Bergerem
1a14061e38 Merge branch 'next-minor' into develop 2017-03-02 12:48:53 +01:00
Benjamin Neff
f96edaa029 Merge branch 'next-minor' into develop 2017-03-02 01:27:06 +01:00
Benjamin Neff
0488902b66 Merge branch 'next-minor' into develop 2017-02-19 21:56:19 +01:00
Benjamin Neff
fa85b17890 Merge branch 'next-minor' into develop 2017-02-19 03:20:39 +01:00
Benjamin Neff
ec2c4a8564 Merge branch 'next-minor' into develop 2017-02-18 23:00:59 +01:00
Benjamin Neff
f9cf844602 Merge pull request #7280 from svbergerem/remove-chartbeat-and-mixpanel
Remove chartbeat and mixpanel support
2017-02-17 22:22:30 +01:00
Benjamin Neff
3d95642aca Fix receiving multiple mentioned-in-comment notifications
When somebody commented multiple times and is mentioned in another
comment afterwards, the person received multiple notifications.
2017-02-16 03:09:40 +01:00
Benjamin Neff
eac8c7572c Remove unused From headers
It is already added in the default_headers
2017-02-16 03:09:39 +01:00
Benjamin Neff
97c351c7b4 Add In-Reply-To and References header to mentioned in comment mail 2017-02-16 02:47:35 +01:00
Benjamin Neff
f1f1d09944 Merge pull request #7302 from svbergerem/simplify-mentions-publisher
Simplify mentions in the publisher
2017-02-15 03:15:01 +01:00
Steffen van Bergerem
810e43787c Merge branch 'next-minor' into develop 2017-02-14 10:37:05 +01:00
Steffen van Bergerem
c8ee03f639 Merge branch 'next-minor' into develop 2017-02-14 09:59:34 +01:00
Benjamin Neff
8a409c815c Merge branch 'next-minor' into develop 2017-02-14 00:30:53 +01:00
Benjamin Neff
d984178685 Merge pull request #7327 from svbergerem/display-mentions-in-comment
Render mentions as links in comments
2017-02-13 23:58:28 +01:00
Benjamin Neff
3ef98f50ee Merge pull request #7328 from svbergerem/use-new-mention-syntax-in-specs
Use new mention syntax in specs
2017-02-13 23:19:32 +01:00
Steffen van Bergerem
339c25f333 Merge pull request #7324 from SuperTux88/at-before-mention-links
Display @ before mentions
2017-02-13 22:06:50 +01:00
Steffen van Bergerem
ab0a4606e2 Use new mention syntax in specs 2017-02-13 21:56:05 +01:00
Steffen van Bergerem
ef3faff8f1 Render mentions as links in comments 2017-02-13 21:47:57 +01:00
Steffen van Bergerem
99351bd152 Merge branch 'next-minor' into develop 2017-02-13 14:21:29 +01:00
Benjamin Neff
2f9a032b38 Merge branch 'next-minor' into develop 2017-02-12 21:01:36 +01:00
Benjamin Neff
5c444e62be Add @ before mentions for mobile and notifications
fixes #7269
2017-02-12 20:10:36 +01:00
Benjamin Neff
c312ff00f3 Bump markdown-it-diaspora-mention 2017-02-12 19:30:43 +01:00
Steffen van Bergerem
a6e6e6de91 Refactor publisher mentions backbone view 2017-02-12 18:36:27 +01:00
Steffen van Bergerem
b23debf0b6 Refactor publisher backbone view 2017-02-12 18:36:27 +01:00
Steffen van Bergerem
9217df43cd Only update mentions in publisher before opening suggestions or preview 2017-02-12 18:36:27 +01:00
Steffen van Bergerem
90b379b110 Drop useless data attribute for message text in publisher 2017-02-12 18:36:26 +01:00
Steffen van Bergerem
c4b6b9534c No more fake text in the publisher 2017-02-12 18:36:26 +01:00
Steffen van Bergerem
a04f32adce Drop mentions box in the publisher 2017-02-12 18:31:37 +01:00
Steffen van Bergerem
b3c412d38f Display mention syntax in publisher instead of username 2017-02-12 18:31:36 +01:00
Steffen van Bergerem
408645cccc Use new mention syntax in the publisher 2017-02-12 18:31:36 +01:00
Benjamin Neff
cdb220be8d Merge branch 'next-minor' into develop 2017-02-11 19:37:30 +01:00
Steffen van Bergerem
f1510ba2d6 Merge branch 'next-minor' into develop 2017-02-08 12:58:27 +01:00
Dennis Schubert
63077bfeaf Merge branch 'next-minor' into develop 2017-02-05 10:34:48 +01:00
Dennis Schubert
37cdc7c10e Merge branch 'next-minor' into develop 2017-02-05 10:32:18 +01:00
Dennis Schubert
fda2d846e8 Merge branch 'next-minor' into develop 2017-02-05 10:31:34 +01:00
Dennis Schubert
29e712dfc8 Merge pull request #7305 from SuperTux88/improve-mention-syntax
Improve mention syntax
2017-02-05 10:30:06 +01:00
Benjamin Neff
2d8d0255dd Improve handling with new mention syntax without name
* fallback to diaspora ID when person is not found
* fix filter_people when the person is not found
* write some more tests
2017-01-31 20:56:22 +01:00
Benjamin Neff
84e2a131cf Remove { and } from the name when backporting mentions
Because } is not compatible with the regex.
2017-01-31 20:56:21 +01:00
Benjamin Neff
19e122264b Merge branch 'next-minor' into develop 2017-01-31 01:52:46 +01:00
Benjamin Neff
e10771c707 Merge pull request #7300 from SuperTux88/new-mention-syntax
New mention syntax - backend changes
2017-01-29 07:02:35 +01:00
Benjamin Neff
0e89d60117 Use name of mentioned person in plain text 2017-01-29 03:06:26 +01:00
Benjamin Neff
322f92110a Backport new mention syntax to old syntax for backward compatibility
See #7276
2017-01-29 03:06:26 +01:00
Benjamin Neff
a0d200d209 Update regex for new mention syntax
See #7276
2017-01-29 03:06:26 +01:00
Steffen van Bergerem
2aa91e0b62 Merge branch 'next-minor' into develop 2017-01-28 18:04:21 +01:00
Benjamin Neff
a025a23c71 Merge branch 'next-minor' into develop 2017-01-23 02:43:12 +01:00
Benjamin Neff
af00d7c5c0 Merge branch 'next-minor' into develop 2017-01-22 23:30:42 +01:00
Benjamin Neff
0e09c27a86 Merge branch 'next-minor' into develop 2017-01-19 00:20:53 +01:00
Benjamin Neff
8d84865e82 Merge branch 'next-minor' into develop 2017-01-18 23:52:17 +01:00
Benjamin Neff
a0bfe6ffbe Merge branch 'next-minor' into develop 2017-01-16 01:17:35 +01:00
Benjamin Neff
7b7fbeffdc Merge branch 'next-minor' into develop 2017-01-15 23:45:56 +01:00
Steffen van Bergerem
bd0210a181 Remove chartbeat and mixpanel support 2017-01-15 13:30:54 +01:00
Benjamin Neff
5d52c298ad Merge branch 'next-minor' into develop 2017-01-15 05:07:07 +01:00
Steffen van Bergerem
eb8d9809ff Merge branch 'next-minor' into develop 2017-01-15 04:04:31 +01:00
Benjamin Neff
03f9147589 Merge branch 'next-minor' into develop 2017-01-15 02:19:10 +01:00
Dennis Schubert
96b7c6b429 Merge branch 'next-minor' into develop 2017-01-15 00:13:17 +01:00
Dennis Schubert
00193a8866 Merge branch 'next-minor' into develop 2017-01-15 00:11:18 +01:00
Benjamin Neff
66e3cdb07e Merge branch 'next-minor' into develop 2017-01-14 03:22:36 +01:00
Benjamin Neff
c2a66966f2 Merge branch 'next-minor' into develop 2017-01-14 02:09:09 +01:00
Benjamin Neff
2bcca54330 Merge pull request #7242 from cmrd-senya/mentionable-route
new PostController#mentionable_in_comment action
2017-01-13 04:13:01 +01:00
cmrd Senya
1fb6040344 new PostController#mentionable_in_comment action 2017-01-13 04:47:50 +02:00
Benjamin Neff
479328d0e3 Merge branch 'next-minor' into develop 2017-01-13 02:49:18 +01:00
Benjamin Neff
ac136030c6 Merge branch 'next-minor' into develop 2017-01-11 02:43:41 +01:00
Benjamin Neff
f01480a14c Merge branch 'next-minor' into develop 2017-01-10 23:45:08 +01:00
Steffen van Bergerem
c164dac7a4 Merge branch 'next-minor' into develop 2017-01-07 18:32:15 +01:00
Steffen van Bergerem
a11747a579 Merge branch 'next-minor' into develop 2017-01-07 03:05:13 +01:00
Benjamin Neff
b632155772 Merge branch 'next-minor' into develop 2017-01-04 02:33:00 +01:00
Benjamin Neff
03ae48c820 Merge branch 'next-minor' into develop 2017-01-03 03:31:56 +01:00
Dennis Schubert
6a1386094a Merge branch 'next-minor' into develop 2016-12-14 00:11:41 +01:00
Dennis Schubert
f79a54fc6c Merge branch 'next-minor' into develop 2016-12-13 18:51:47 +01:00
Dennis Schubert
52b7d6ed9e updated 121 locale files [ci skip] 2016-12-13 18:49:44 +01:00
Benjamin Neff
fca13efdf2 Merge branch 'next-minor' into develop 2016-12-08 03:19:45 +01:00
Dennis Schubert
d74c182e6f Merge branch 'next-minor' into develop 2016-12-04 20:14:16 +01:00
Dennis Schubert
2c68c1f142 Merge branch 'next-minor' into develop 2016-12-04 20:10:17 +01:00
Benjamin Neff
da52627ab2 Merge branch 'next-minor' into develop 2016-12-02 03:31:45 +01:00
Dennis Schubert
af1c992e01 Merge branch 'next-minor' into develop 2016-12-01 03:17:21 +01:00
Benjamin Neff
bab503d960 Merge branch 'next-minor' into develop 2016-12-01 02:29:00 +01:00
Benjamin Neff
7bcd7cfd35 Merge pull request #7232 from svbergerem/fix-mentions-in-comments-migration
Fix mentions in comments migration on PostgreSQL
2016-11-30 00:07:14 +01:00
Steffen van Bergerem
154ea6515a Fix mentions in comments migration on PostgreSQL 2016-11-29 23:36:42 +01:00
Benjamin Neff
3b0c1020c0 Merge pull request #6818 from cmrd-senya/1851-mentions-in-comments.new
Mentions in comments backend changes
2016-11-29 19:31:43 +01:00
Benjamin Neff
4fb9d6ed11 Merge branch 'next-minor' into develop 2016-11-29 17:46:47 +01:00
cmrd Senya
33ad411bbd Mentions in comments backend changes 2016-11-28 15:56:56 +02:00
cmrd Senya
ef5751b808 Refactor mail workers to use common base
Introduce Workers::Mail::NotifierBase to be a base for all appropriate
mail workers to reduce code duplication
2016-11-28 15:35:46 +02:00
cmrd Senya
0ee34f8590 Remove the photo comment spec
This functionality is not something we support and it doesn't look
it will be reintroduced soon.

see discussion https://github.com/diaspora/diaspora/pull/6818#discussion_r70227392
2016-11-28 15:35:36 +02:00
Benjamin Neff
c1e583cffd Merge branch 'next-minor' into develop 2016-11-28 02:55:14 +01:00
Benjamin Neff
855b148ba5 Merge branch 'next-minor' into develop 2016-11-27 21:36:41 +01:00
Benjamin Neff
5c5ef38908 Merge branch 'next-minor' into develop 2016-11-26 02:38:55 +01:00
Benjamin Neff
34787043bb Merge branch 'next-minor' into develop 2016-11-25 22:37:21 +01:00
Steffen van Bergerem
443d738aee Merge branch 'next-minor' into develop 2016-11-25 15:56:39 +01:00
Steffen van Bergerem
365441ede2 Merge branch 'next-minor' into develop 2016-11-25 14:11:05 +01:00
Benjamin Neff
b6847f76b5 Merge branch 'next-minor' into develop 2016-11-24 23:30:24 +01:00
Benjamin Neff
edd3ddef52 Merge branch 'next-minor' into develop 2016-11-23 01:53:12 +01:00
Benjamin Neff
99b7229d5a Merge branch 'next-minor' into develop 2016-11-22 03:55:12 +01:00
Benjamin Neff
12a2e312d9 Merge branch 'next-minor' into develop 2016-11-19 03:40:57 +01:00
Steffen van Bergerem
9ecbac3ee0 Merge branch 'next-minor' into develop 2016-11-18 16:40:46 +01:00
Steffen van Bergerem
8cd26054c8 Merge branch 'next-minor' into develop 2016-11-18 15:29:00 +01:00
Benjamin Neff
73d352920f Merge branch 'next-minor' into develop 2016-11-18 02:14:51 +01:00
Steffen van Bergerem
f27769bcd2 Merge branch 'next-minor' into develop 2016-11-17 22:52:35 +01:00
Steffen van Bergerem
9b4f73dc77 Merge branch 'next-minor' into develop 2016-11-17 22:35:01 +01:00
Benjamin Neff
b319e0caa2 Merge branch 'next-minor' into develop 2016-11-15 22:56:06 +01:00
Benjamin Neff
6562397f64 Merge branch 'next-minor' into develop 2016-11-14 03:28:09 +01:00
Benjamin Neff
13869aa75c Merge branch 'next-minor' into develop 2016-11-13 20:11:38 +01:00
Steffen van Bergerem
766470dcd0 Merge branch 'next-minor' into develop 2016-11-12 21:39:17 +01:00
Dennis Schubert
2a927e66dc Merge branch 'next-minor' into develop 2016-11-06 03:07:00 +01:00
Dennis Schubert
b04ce82c49 Merge branch 'next-minor' into develop 2016-11-06 02:44:00 +01:00
Dennis Schubert
8fb17f8e2c Merge branch 'next-minor' into develop 2016-11-06 02:41:46 +01:00
Dennis Schubert
48cb2aca1d Merge branch 'next-minor' into develop 2016-11-06 02:41:12 +01:00
Dennis Schubert
ead2ba8edf Merge branch 'next-minor' into develop 2016-11-06 02:40:11 +01:00
Dennis Schubert
0c78fcaae7 Merge branch 'next-minor' into develop 2016-11-06 02:34:16 +01:00
Benjamin Neff
0b3f10aef2 Merge branch 'next-minor' into develop 2016-11-03 22:50:08 +01:00
Benjamin Neff
694d4cbc0f Merge branch 'next-minor' into develop 2016-11-02 23:03:36 +01:00
Dennis Schubert
bf3461ee3a Merge branch 'next-minor' into develop 2016-11-02 22:54:08 +01:00
Dennis Schubert
ad1b2793eb Merge branch 'next-minor' into develop 2016-10-30 00:15:20 +02:00
Dennis Schubert
69ec1d6fe8 Merge branch 'next-minor' into develop 2016-10-28 00:36:22 +02:00
Dennis Schubert
305958ff85 Merge branch 'next-minor' into develop 2016-10-27 02:30:37 +02:00
Dennis Schubert
402d87729c Merge branch 'next-minor' into develop 2016-10-27 02:26:57 +02:00
Dennis Schubert
75aaf869c5 Merge branch 'next-minor' into develop 2016-10-27 02:26:15 +02:00
Dennis Schubert
1e6e20bbfe Merge branch 'next-minor' into develop 2016-10-27 02:25:03 +02:00
Dennis Schubert
7cf63282af Merge branch 'next-minor' into develop 2016-10-27 02:23:40 +02:00
Dennis Schubert
3025b028e7 Merge branch 'next-minor' into develop 2016-10-27 02:22:33 +02:00
Benjamin Neff
2c0a2db848 Merge branch 'next-minor' into develop 2016-10-26 02:50:00 +02:00
Benjamin Neff
126d5f8f02 Merge branch 'next-minor' into develop 2016-10-26 00:52:02 +02:00
Steffen van Bergerem
9a09515955 Merge branch 'next-minor' into develop 2016-10-24 00:25:35 +02:00
Steffen van Bergerem
0b4215e961 Merge branch 'next-minor' into develop 2016-10-23 23:03:38 +02:00
Benjamin Neff
7e3a8b8c91 Merge branch 'next-minor' into develop 2016-10-18 23:30:42 +02:00
Steffen van Bergerem
892d2542e6 Merge branch 'next-minor' into develop 2016-10-18 15:37:37 +02:00
Steffen van Bergerem
7618b33528 Merge branch 'next-minor' into develop 2016-10-18 15:05:37 +02:00
Steffen van Bergerem
b40108e0c2 Merge branch 'next-minor' into develop 2016-10-17 22:48:01 +02:00
Dennis Schubert
563e62cbcb Merge branch 'next-minor' into develop 2016-10-01 10:24:22 +02:00
Steffen van Bergerem
fa4f7ff2d8 Merge branch 'next-minor' into develop 2016-10-01 02:37:02 +02:00
Benjamin Neff
fc3627d567 Merge branch 'next-minor' into develop 2016-10-01 02:29:11 +02:00
Dennis Schubert
c41fd52f1d Merge branch 'next-minor' into develop 2016-09-30 02:11:36 +02:00
Dennis Schubert
55b8c92809 Merge branch 'next-minor' into develop 2016-09-30 01:44:28 +02:00
Dennis Schubert
bb7928af55 Merge branch 'next-minor' into develop 2016-09-30 01:43:30 +02:00
Steffen van Bergerem
e08b775507 Merge branch 'next-minor' into develop 2016-09-30 00:33:16 +02:00
Steffen van Bergerem
3437c4d5cb Merge branch 'next-minor' into develop 2016-09-28 22:00:10 +02:00
Dennis Schubert
795283b581 Merge branch 'next-minor' into develop 2016-09-25 23:07:57 +02:00
Benjamin Neff
aa70b2f6c9 Merge branch 'next-minor' into develop 2016-09-25 20:15:34 +02:00
Dennis Schubert
3186855ffa Merge branch 'next-minor' into develop 2016-09-25 07:28:32 +02:00
Dennis Schubert
89bf1aeb4b Merge branch 'next-minor' into develop 2016-09-25 03:26:26 +02:00
Dennis Schubert
67328b9533 Merge branch 'next-minor' into develop 2016-09-25 03:20:48 +02:00
Dennis Schubert
20f93323fa Merge branch 'next-minor' into develop 2016-09-25 03:12:35 +02:00
Dennis Schubert
cff9669a03 Merge branch 'next-minor' into develop 2016-09-25 03:07:08 +02:00
Dennis Schubert
5437af74a3 Merge branch 'next-minor' into develop 2016-09-25 02:59:00 +02:00
Dennis Schubert
8a3fd1f3e7 Merge branch 'next-minor' into develop 2016-09-20 10:21:53 +02:00
Dennis Schubert
f34bf255d1 Merge branch 'next-minor' into develop 2016-09-20 04:29:47 +02:00
Dennis Schubert
d1ce590269 Merge branch 'next-minor' into develop 2016-09-20 04:25:10 +02:00
Dennis Schubert
b1eda420a3 Merge branch 'next-minor' into develop 2016-09-20 02:06:05 +02:00
Dennis Schubert
c3c5583d3e Merge branch 'next-minor' into develop 2016-09-20 01:47:32 +02:00
Benjamin Neff
9daee43aa8 Merge branch 'next-minor' into develop 2016-09-18 22:48:10 +02:00
Benjamin Neff
e88fdf8d60 Merge branch 'next-minor' into develop 2016-09-18 22:44:53 +02:00
Benjamin Neff
95167528a2 Merge branch 'next-minor' into develop 2016-09-18 22:31:18 +02:00
Steffen van Bergerem
b629f5fe32 Merge branch 'next-minor' into develop 2016-09-18 13:44:44 +02:00
Steffen van Bergerem
73d12bf344 Merge branch 'next-minor' into develop 2016-09-18 13:41:53 +02:00
Steffen van Bergerem
07883a73ba Merge branch 'next-minor' into develop 2016-09-18 13:35:53 +02:00
Benjamin Neff
1fdc17d96c Merge branch 'next-minor' into develop 2016-09-13 01:02:57 +02:00
Benjamin Neff
58642de8cb Merge branch 'next-minor' into develop 2016-09-13 01:01:12 +02:00
Benjamin Neff
36b2dff164 Merge branch 'next-minor' into develop 2016-09-13 01:00:13 +02:00
1538 changed files with 44720 additions and 23748 deletions

View File

@@ -10,16 +10,17 @@
"autosize": false,
"Backbone": false,
"Bloodhound": false,
"blueimp": false,
"gon": false,
"Handlebars": false,
"HandlebarsTemplates": false,
"ImagePaths": false,
"jsxc": false,
"L": false,
"Routes": false,
"OSM": false,
"PerfectScrollbar": false,
"qq": false,
"blueimp": false,
"Routes": false,
"loginAs": true,
"logout": true,

63
.github/workflows/ci.yml vendored Normal file
View File

@@ -0,0 +1,63 @@
name: CI
on:
push:
branches:
- develop
- next-minor
- main
- master
pull_request:
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
ruby:
- 2.7
- 2.6
db:
- mysql
- postgresql
kind:
- cucumber
- other
env:
DB: ${{ matrix.db }}
RAILS_ENV: test
BUNDLE_WITH: ${{ matrix.db }}
BUNDLE_WITHOUT: development
BUNDLE_FROZEN: true
BUNDLE_DISABLE_SHARED_GEMS: true
services:
postgres:
image: postgres
env:
POSTGRES_PASSWORD: postgres
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 5432:5432
steps:
- name: Install system dependencies
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'
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Prepare
run: script/ci/prepare.sh
- name: Run tests
run: bin/rake --trace ci:${{ matrix.kind }}
- name: Run Jasmine
run: bin/rake jasmine:ci
timeout-minutes: 2
if: matrix.kind == 'other'

35
.gitignore vendored
View File

@@ -9,28 +9,18 @@ app/views/terms/terms.*
app/assets/images/custom/
# Configuration files
config/diaspora.toml
config/diaspora.yml
config/heroku.yml
config/initializers/secret_token.rb
config/redis.conf
config/deploy_config.yml
config/schedule.rb
.bundle
vendor/bundle/
vendor/cache/
config/database.yml
.rvmrc_custom
.rvmrc.local
config/oidc_key.pem
# Mailing list stuff
config/email_offset
config/mailing_list.csv
config/schedule.yml
# Generated files
log/
public/stylesheets/*.css
public/diaspora
spec/fixtures/*.y*ml
spec/fixtures/*.fixture.*
coverage/
@@ -39,6 +29,12 @@ public/404.html
public/422.html
public/500.html
# the db/schema.rb. Although this is contrary to rails best-practises, we
# cannot provide a schema.rb that works for both MySQL and PostgreSQL, so we
# have no choice. Our migrations are maintained, so it should always be
# possible to get back to a "clean" database schema anyway.
db/schema.rb
# Sprites
app/assets/images/branding-*.png
app/assets/images/branding/logos-*.png
@@ -53,17 +49,13 @@ doc/
public/uploads/
public/assets/
public/source.tar*
public/.well-known
tmp/**/
tmp/
*.sqlite3
# Temporary files of every sort
.byebug_history
.sass-cache/
.DS_Store
.idea
.redcar
.rvmrc
.stgit*
*.swap
*.swo
@@ -76,12 +68,13 @@ tmp/
nbproject
patches-*
capybara-*.html
dump.rdb
# Rubinius's JIT
*.rbc
# IDE
.idea
.vscode
diaspora.iml
# Dolphin's directory's preferences files
@@ -89,3 +82,9 @@ diaspora.iml
# WebTranslateIt
.wti
# MacOS
/__MACOSX/
# yarn
node_modules

View File

@@ -1,22 +1,24 @@
require: rubocop-rails
AllCops:
TargetRubyVersion: 2.6
NewCops: enable
Exclude:
- "bin/**/*"
- "db/schema.rb"
Rails:
Enabled: true
- "config/locales/cldr/plurals.rb"
# Disable for rails 4
Rails/HttpPositionalArguments:
Enabled: false
# Commonly used screens these days easily fit more than 80 characters.
Metrics/LineLength:
Layout/LineLength:
Max: 120
# Too short methods lead to extraction of single-use methods, which can make
# the code easier to read (by naming things), but can also clutter the class
Metrics/MethodLength:
Metrics/MethodLength:
Max: 20
# The guiding principle of classes is SRP, SRP can't be accurately measured by LoC
@@ -24,11 +26,17 @@ Metrics/ClassLength:
Max: 1500
Metrics/ModuleLength:
Max: 1500
# Raise AbcSize from 15 to 20
# Raise complexity metrics
Metrics/AbcSize:
Max: 20
Metrics/CyclomaticComplexity:
Max: 20
Metrics/PerceivedComplexity:
Max: 20
# Some blocks are longer.
Metrics/BlockLength:
ExcludedMethods:
@@ -40,7 +48,7 @@ Metrics/BlockLength:
# No space makes the method definition shorter and differentiates
# from a regular assignment.
Style/SpaceAroundEqualsInParameterDefault:
Layout/SpaceAroundEqualsInParameterDefault:
EnforcedStyle: no_space
# Single quotes being faster is hardly measurable and only affects parse time.
@@ -49,13 +57,19 @@ Style/SpaceAroundEqualsInParameterDefault:
# are needed.
Style/StringLiterals:
EnforcedStyle: double_quotes
Exclude:
# These files are generated by rails, so it's best to keep them close to the original for smaller diffs
- "config/application.rb"
- "config/boot.rb"
- "config/environment.rb"
- "config/environments/*.rb"
# We do not need to support Ruby 1.9, so this is good to use.
Style/SymbolArray:
Enabled: true
# Most readable form.
Style/AlignHash:
Layout/HashAlignment:
EnforcedHashRocketStyle: table
EnforcedColonStyle: table
@@ -77,7 +91,6 @@ Style/CollectionMethods:
# inject seems more common in the community.
reduce: "inject"
# Either allow this style or don't. Marking it as safe with parenthesis
# is silly. Let's try to live without them for now.
Style/ParenthesesAroundCondition:
@@ -86,13 +99,13 @@ Lint/AssignmentInCondition:
AllowSafeAssignment: false
# A specialized exception class will take one or more arguments and construct the message from it.
# So both variants make sense.
# So both variants make sense.
Style/RaiseArgs:
Enabled: false
# Indenting the chained dots beneath each other is not supported by this cop,
# see https://github.com/bbatsov/rubocop/issues/1633
Style/MultilineOperationIndentation:
Layout/MultilineOperationIndentation:
Enabled: false
# Fail is an alias of raise. Avoid aliases, it's more cognitive load for no gain.
@@ -104,10 +117,10 @@ Style/SignalException:
# Suppressing exceptions can be perfectly fine, and be it to avoid to
# explicitly type nil into the rescue since that's what you want to return,
# or suppressing LoadError for optional dependencies
Lint/HandleExceptions:
Lint/SuppressedException:
Enabled: false
Style/SpaceInsideBlockBraces:
Layout/SpaceInsideBlockBraces:
# The space here provides no real gain in readability while consuming
# horizontal space that could be used for a better parameter name.
# Also {| differentiates better from a hash than { | does.
@@ -115,7 +128,7 @@ Style/SpaceInsideBlockBraces:
# No trailing space differentiates better from the block:
# foo} means hash, foo } means block.
Style/SpaceInsideHashLiteralBraces:
Layout/SpaceInsideHashLiteralBraces:
EnforcedStyle: no_space
# { ... } for multi-line blocks is okay, follow Weirichs rule instead:
@@ -149,11 +162,11 @@ Lint/ShadowingOuterLocalVariable:
# Check with yard instead.
Style/Documentation:
Enabled: false
Enabled: false
# This is just silly. Calling the argument `other` in all cases makes no sense.
Style/OpMethod:
Enabled: false
Naming/BinaryOperatorParameterName:
Enabled: false
# There are valid cases, for example debugging Cucumber steps,
# also they'll fail CI anyway
@@ -165,15 +178,13 @@ Style/NumericPredicate:
EnforcedStyle: comparison
# Reset some HoundCI changes back to Rubocop defaults
Style/DotPosition:
Layout/DotPosition:
EnforcedStyle: leading
### backward compatibility
# Not enabled by default but good
Style/HashEachMethods:
Enabled: true
# only with ruby >= 2.3
Style/FrozenStringLiteralComment:
Enabled: false
# only with ruby >= 2.4
Performance/RegexpMatch:
# It makes more sense to allow to structure and group them how it makes sense in the code
Style/AccessorGrouping:
Enabled: false

View File

@@ -1 +1 @@
2.3
2.7

View File

@@ -1,41 +0,0 @@
language: ruby
rvm:
- 2.3.1
- 2.1
env:
- DB=postgresql BUILD_TYPE=cucumber
- DB=mysql BUILD_TYPE=cucumber
- DB=postgresql BUILD_TYPE=other
- DB=mysql BUILD_TYPE=other
sudo: false
cache:
bundler: true
directories:
- app/assets/images
branches:
only:
- 'master'
- 'next-minor'
- 'develop'
before_install:
- gem install bundler
- mkdir travis-phantomjs
- wget http://cifiles.diasporafoundation.org/phantomjs-2.1.1-linux-x86_64.tar.bz2 -O $PWD/travis-phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2
- tar -xvf $PWD/travis-phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2 -C $PWD/travis-phantomjs
- export PATH=$PWD/travis-phantomjs/phantomjs-2.1.1-linux-x86_64/bin:$PATH
bundler_args: "--deployment --without development production --with mysql postgresql --jobs 3 --retry 3"
script: "./script/ci/build.sh"
notifications:
irc:
channels:
- secure: YvYkeTAw+5oOl/RaXVwu7JkKGNWPoFosNQRmLvJkBFbWzZ1s5LZD1u3+Qj819bT3lGzJu9pxmJg765IRYrGWmBi4mcAV3dpO6qowVdFTcorf0JsnLw3Kvkga9rrDunsRNr21KTAQqHOO5mKUzw9DtMzd52BiWuZwIj3xcl72gQI=
template:
- "%{repository_slug}#%{commit} (%{branch} - %{commit_subject}): %{message} %{build_url}"

42
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,42 @@
# Contributing to diaspora\*
First of all: thank you very much for helping us out!
## Things you need to know before contributing
If you want to get in touch with other diaspora\* developers, [check our wiki][how-we-communicate] for information on how we communicate. Feel free to ask if you have any questions!
Everyone interacting with our code, issue trackers, chat rooms, mailing lists, the wiki, and the discourse forum is expected to follow the [diaspora\* code of conduct][code-of-conduct].
## Report a security issue
Found a security issue? Please disclose it responsibly. We have a team of developers listening to [security@diasporafoundation.org][sec-mail]. The PGP fingerprint is [AB0D AB02 0FC5 D398 03AB 3CE1 6F70 243F 27AD 886A][pgp].
## Contributing to translations
We use [WebTranslateIt][webtranslateit] to manage translations of the app interface. Please read [our wiki page][translation-wiki] to find out more about this. If your language is featured on WebTranslateIt, please do **not** open a pull request to update translations. If it is not already featured on WebTranslateIt, please read the wiki article above to find out how to proceed.
## Contributing to the code
**Before opening a pull request** please read [how to contribute][contribute]. Doing things the right way from the start will save us time and mean that your contribution can be integrated quicker!
- Follow our [git workflow][git-workflow] method. In particular, *do not* open a pull request from the `master` or the `develop` branch.
- Follow our [styleguide][styleguide] and run pronto, our syntax analyzer, **locally before opening a pull request**. See [our wiki][pronto] for information on how to do this.
- [Write tests][testing-workflow].
- Use meaningful commit-messages and split larger tasks, e.g. refactoring, into separate commits. This makes the review process much easier.
## Other ways to contribute
You dont know code? No worries, there are plenty other ways to help the diaspora* project! Please find out how you can help [on our wiki][other-ways].
[code-of-conduct]: https://github.com/diaspora/diaspora/blob/develop/CODE_OF_CONDUCT.md
[how-we-communicate]: https://wiki.diasporafoundation.org/How_we_communicate
[pgp]: https://pgp.mit.edu/pks/lookup?op=get&search=0x6F70243F27AD886A
[sec-mail]: mailto:security@diasporafoundation.org
[webtranslateit]: https://webtranslateit.com/en/projects/3020-Diaspora
[translation-wiki]: https://wiki.diasporafoundation.org/Contribute_translations
[contribute]: https://wiki.diasporafoundation.org/Getting_started_with_contributing
[git-workflow]: https://wiki.diasporafoundation.org/Git_Workflow
[styleguide]: https://wiki.diasporafoundation.org/Styleguide
[pronto]: https://wiki.diasporafoundation.org/Styleguide#Automatic_local_review
[testing-workflow]: https://wiki.diasporafoundation.org/Testing_Workflow
[other-ways]: https://wiki.diasporafoundation.org/Other_ways_to_contribute

View File

@@ -1,3 +1,452 @@
# 0.7.18.2
To avoid potential security issues, diaspora\* now makes sure that ImageMagick image processing always runs with a restricted `policy.xml`, regardless of the global system settings.
# 0.7.18.1
## Bug fixes
* Update binstubs to fix diaspora\* being unable to start when multiple bundler versions were available [#8392](https://github.com/diaspora/diaspora/pull/8392/commits/bfd42a1914a99ac9c71ecb16bbf6fa5bb118148a)
# 0.7.18.0
## Refactor
* Fix order-dependent jasmine test failures and switch to random order [#8333](https://github.com/diaspora/diaspora/pull/8333)
* Get rid of some uses of "execute\_script" in feature specs [#8331](https://github.com/diaspora/diaspora/pull/8331)
* Fix deprecation warnings for sidekiq 7.0 [#8359](https://github.com/diaspora/diaspora/pull/8359)
* Remove entypo-rails dependency to prepare for rails 6 [#8361](https://github.com/diaspora/diaspora/pull/8361)
* Remove compass-rails dependency which is not supported anymore [#8362](https://github.com/diaspora/diaspora/pull/8362)
* Switch to sassc-rails which speeds up `assets:precompile` a lot [#8362](https://github.com/diaspora/diaspora/pull/8362)
* Remove markerb dependency which doesn't exist anymore [#8365](https://github.com/diaspora/diaspora/pull/8365)
* Upgrade to rails 6.1 [#8366](https://github.com/diaspora/diaspora/pull/8366)
* Update the suggested Ruby version to 2.7. If you run into trouble during the update and you followed our installation guides, run `rvm install 2.7`. [#8366](https://github.com/diaspora/diaspora/pull/8366)
* Upgrade to bundler 2 [#8366](https://github.com/diaspora/diaspora/pull/8366)
* Stop checking `/.well-known/host-meta`, check for `/.well-known/nodeinfo` instead [#8377](https://github.com/diaspora/diaspora/pull/8377)
* Handle NodeInfo timeouts gracefully [#8380](https://github.com/diaspora/diaspora/pull/8380)
## Bug fixes
* Fix that no mails were sent after photo export [#8365](https://github.com/diaspora/diaspora/pull/8365)
* Fix people with quotes in the name causing issues with mail sender [#8365](https://github.com/diaspora/diaspora/pull/8365)
## Features
* Render posts and comments as HTML in HTML mails [#8365](https://github.com/diaspora/diaspora/pull/8365)
* Add NodeInfo 2.1 support and also read newer versions of NodeInfo [#8379](https://github.com/diaspora/diaspora/pull/8379)
# 0.7.17.0
## Security
* Bump Rails to 5.2.7 to address [CVE-2022-22577](https://discuss.rubyonrails.org/t/cve-2022-22577-possible-xss-vulnerability-in-action-pack/80533) and [CVE-2022-27777](https://discuss.rubyonrails.org/t/cve-2022-27777-possible-xss-vulnerability-in-action-view-tag-helpers/80534) [#8350](https://github.com/diaspora/diaspora/pull/8350)
* Do not allow the user to mass assign their own password and 2fa settings alongside other parameters. Reported by Breno Vitório (@brenu) - thank you! [#8351](https://github.com/diaspora/diaspora/pull/8351)
## Bug fixes
* Don't suggest to retry exports on failure [#8343](https://github.com/diaspora/diaspora/pull/8343)
# 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
* Replaced some `http://` links in the UI with their `https://` counterparts [#8207](https://github.com/diaspora/diaspora/pull/8207)
* Testing: Replaced phantomjs with headless Chrome/Chromium [#8234](https://github.com/diaspora/diaspora/pull/8234)
## Bug fixes
* Update comment counter when weleting a comment in the Single Post View [#7938](https://github.com/diaspora/diaspora/pull/7938)
* Link diaspora only poduptime list [#8174](https://github.com/diaspora/diaspora/pull/8174)
* Delete a user's invitation code during account deletion [#8202](https://github.com/diaspora/diaspora/pull/8202)
* Bump mimemagic [#8231](https://github.com/diaspora/diaspora/pull/8231)
* Removed support for defunct Uni Heidelberg OSM tile server, Mapbox is now required if you want to show maps [#8215](https://github.com/diaspora/diaspora/pull/8215)
* Render only two fractional digits in the posts per user/day admin statistics [#8227](https://github.com/diaspora/diaspora/pull/8227)
* Make aspect dropdowns scrollable [#8213](https://github.com/diaspora/diaspora/pull/8213)
* Fix `Photo#ownserhip_of_status_message` validation [#8214](https://github.com/diaspora/diaspora/pull/8214)
## Features
* Support and recommend TOML as configuration format [#8132](https://github.com/diaspora/diaspora/pull/8132)
# 0.7.14.0
## Refactor
* Update the suggested Ruby version to 2.6. If you run into trouble during the update and you followed our installation guides, run `rvm install 2.6`. [#7929](https://github.com/diaspora/diaspora/pull/7929)
## Bug fixes
* Don't link to deleted users in admin user stats [#8063](https://github.com/diaspora/diaspora/pull/8063)
* Properly validate a profile's gender field length instead of failing with a database error. [#8127](https://github.com/diaspora/diaspora/pull/8127)
## Features
# 0.7.13.0
## Security
* Fixes [USN-4274-1](https://usn.ubuntu.com/4274-1/), a potential Denial-of-Service vulnerability in Nokogiri. [#8108](https://github.com/diaspora/diaspora/pull/8108)
## Refactor
* Set better example values for unicorn stdout/stderr log settings [#8058](https://github.com/diaspora/diaspora/pull/8058)
* Replace dependency on rails-assets.org with custom gems cache at gems.diasporafoundation.org [#8087](https://github.com/diaspora/diaspora/pull/8087)
## Bug fixes
* Fix error while trying to fetch some sites with invalid OpenGraph data [#8049](https://github.com/diaspora/diaspora/pull/8049)
* Don't show sign up link on mobile when registrations are disabled [#8060](https://github.com/diaspora/diaspora/pull/8060)
## Features
* Add cronjob to cleanup pending photos which were never posted [#8041](https://github.com/diaspora/diaspora/pull/8041)
# 0.7.12.0
## Refactor
* Harmonize markdown titles sizes [#8029](https://github.com/diaspora/diaspora/pull/8029)
## Bug fixes
* Improve handling of mixed case hostnames while fetching OpenGraph data [#8021](https://github.com/diaspora/diaspora/pull/8021)
* Fix "remember me" with two factor authentication enabled [#8031](https://github.com/diaspora/diaspora/pull/8031)
## Features
* Add line mentioning diaspora\* on the splash page [#7966](https://github.com/diaspora/diaspora/pull/7966)
* Improve communication about signing up on closed pods [#7896](https://github.com/diaspora/diaspora/pull/7896)
# 0.7.11.0
## Refactor
* Enable paranoid mode for devise [#8003](https://github.com/diaspora/diaspora/pull/8003)
* Refactor likes cucumber test [#8002](https://github.com/diaspora/diaspora/pull/8002)
## Bug fixes
* Fix old photos without remote url for export [#8012](https://github.com/diaspora/diaspora/pull/8012)
## Features
* Add a manifest.json file as a first step to make diaspora\* a Progressive Web App [#7998](https://github.com/diaspora/diaspora/pull/7998)
* Allow `web+diaspora://` links to link to a profile with only the diaspora ID [#8000](https://github.com/diaspora/diaspora/pull/8000)
* Support TOTP two factor authentication [#7751](https://github.com/diaspora/diaspora/pull/7751)
# 0.7.10.0
## Refactor
* Replace dandelion.jpg with a public domain photo [#7976](https://github.com/diaspora/diaspora/pull/7976)
## Bug fixes
* Fix incorrect post sorting on tag streams and tag searches for tags containing the word "activity" [#7959](https://github.com/diaspora/diaspora/issues/7959)
# 0.7.9.0
## Refactor
* Improve public stream performance and cleanup unused indexes [#7944](https://github.com/diaspora/diaspora/pull/7944)
* Improve wording of "Toggle mobile" [#7926](https://github.com/diaspora/diaspora/pull/7926)
## Bug fixes
* Do not autofollow back a user you are ignoring [#7913](https://github.com/diaspora/diaspora/pull/7913)
* Fix photos gallery when too many thumbnails are shown [#7943](https://github.com/diaspora/diaspora/pull/7943)
* Fix extended profile visibility switch showing the wrong state [#7955](https://github.com/diaspora/diaspora/pull/7955)
## Features
* Support ignore users on mobile [#7884](https://github.com/diaspora/diaspora/pull/7884)
# 0.7.8.0
## Refactor
* Make setting up a development environment 9001% easier by adding a Docker-based setup [#7870](https://github.com/diaspora/diaspora/pull/7870)
* Improve `web+diaspora://` handler description [#7909](https://github.com/diaspora/diaspora/pull/7909)
* Move comment timestamp next to author name [#7905](https://github.com/diaspora/diaspora/pull/7905)
* Sharpen small and medium thumbnails [#7924](https://github.com/diaspora/diaspora/pull/7924)
* Show full-res image in Desktop's full-screen image view [#7890](https://github.com/diaspora/diaspora/pull/7890)
## Bug fixes
* Ignore invalid URLs for camo [#7922](https://github.com/diaspora/diaspora/pull/7922)
* Unliking a post did not update the participation icon without a reload [#7882](https://github.com/diaspora/diaspora/pull/7882)
* Fix broken Instagram embedding [#7920](https://github.com/diaspora/diaspora/pull/7920)
## Features
* Add the ability to assign roles in the admin panel [#7868](https://github.com/diaspora/diaspora/pull/7868)
* Improve memory usage with libjemalloc if available [#7919](https://github.com/diaspora/diaspora/pull/7919)
# 0.7.7.1
Fixes a potential cross-site scripting issue with maliciously crafted OpenGraph metadata on the mobile interface.
# 0.7.7.0
## Refactor
* Remove mention of deprecated `statistic.json` [#7867](https://github.com/diaspora/diaspora/pull/7867)
* Add quotes in `database.yml.example` to fields that may contain special characters [#7875](https://github.com/diaspora/diaspora/pull/7875)
* Removed broken, and thus deprecated, Facebook integration [#7874](https://github.com/diaspora/diaspora/pull/7874)
## Bug fixes
* Add compatibility with macOS to `script/configure_bundler` [#7830](https://github.com/diaspora/diaspora/pull/7830)
* Fix comment and like notifications on posts without text [#7857](https://github.com/diaspora/diaspora/pull/7857) [#7853](https://github.com/diaspora/diaspora/pull/7853)
* Fix issue with some language fallbacks not working correctly [#7861](https://github.com/diaspora/diaspora/pull/7861)
* Make sure URLs are encoded before sending them to camo [#7871](https://github.com/diaspora/diaspora/pull/7871)
## Features
* Add `web+diaspora://` link handler [#7826](https://github.com/diaspora/diaspora/pull/7826)
# 0.7.6.0
## Refactor
* Add unique index to poll participations on `poll_id` and `author_id` [#7798](https://github.com/diaspora/diaspora/pull/7798)
* Add 'completed at' date to account migrations [#7805](https://github.com/diaspora/diaspora/pull/7805)
* Handle duplicates for TagFollowing on account merging [#7807](https://github.com/diaspora/diaspora/pull/7807)
* Add link to the pod in the email footer [#7814](https://github.com/diaspora/diaspora/pull/7814)
## Bug fixes
* Fix compatibility with newer glibc versions [#7828](https://github.com/diaspora/diaspora/pull/7828)
* Allow fonts to be served from asset host in CSP [#7825](https://github.com/diaspora/diaspora/pull/7825)
## Features
* Support fetching StatusMessage by Poll GUID [#7815](https://github.com/diaspora/diaspora/pull/7815)
* Always include link to diaspora in facebook cross-posts [#7774](https://github.com/diaspora/diaspora/pull/7774)
# 0.7.5.0
## Refactor
* Remove the 'make contacts in this aspect visible to each other' option [#7769](https://github.com/diaspora/diaspora/pull/7769)
* Remove the requirement to have at least two users to disable the /podmin redirect [#7783](https://github.com/diaspora/diaspora/pull/7783)
* Randomize start times of daily Sidekiq-Cron jobs [#7787](https://github.com/diaspora/diaspora/pull/7787)
## Bug fixes
* Prefill conversation form on contacts page only with mutual contacts [#7744](https://github.com/diaspora/diaspora/pull/7744)
* Fix profiles sometimes not loading properly in background tabs [#7740](https://github.com/diaspora/diaspora/pull/7740)
* Show error message when creating posts with invalid aspects [#7742](https://github.com/diaspora/diaspora/pull/7742)
* Fix mention syntax backport for two immediately consecutive mentions [#7777](https://github.com/diaspora/diaspora/pull/7777)
* Fix link to 'make yourself an admin' [#7783](https://github.com/diaspora/diaspora/pull/7783)
* Fix calculation of content lengths when cross-posting to twitter [#7791](https://github.com/diaspora/diaspora/pull/7791)
## Features
* Make public stream accessible for logged out users [#7775](https://github.com/diaspora/diaspora/pull/7775)
* Add account-merging support when receiving an account migration [#7803](https://github.com/diaspora/diaspora/pull/7803)
# 0.7.4.1
Fixes a possible cross-site scripting issue with maliciously crafted OpenGraph metadata.
# 0.7.4.0
## Refactor
* Don't print a warning when starting the server outside a Git repo [#7712](https://github.com/diaspora/diaspora/pull/7712)
* Make script/server work on readonly filesystems [#7719](https://github.com/diaspora/diaspora/pull/7719)
* Add camo paths to the robots.txt [#7726](https://github.com/diaspora/diaspora/pull/7726)
## Bug fixes
* Prevent duplicate mention notifications when the post is received twice [#7721](https://github.com/diaspora/diaspora/pull/7721)
* Fixed a compatiblitiy issue with non-diaspora\* webfingers [#7718](https://github.com/diaspora/diaspora/pull/7718)
* Don't retry federation for accounts without a valid public key [#7717](https://github.com/diaspora/diaspora/pull/7717)
* Fix stream generation for tagged posts with many followed tags [#7715](https://github.com/diaspora/diaspora/pull/7715)
* Fix incomplete Occitan date localizations [#7731](https://github.com/diaspora/diaspora/pull/7731)
## Features
* Add basic html5 audio/video embedding support [#6418](https://github.com/diaspora/diaspora/pull/6418)
* Add the back-to-top button to all pages [#7729](https://github.com/diaspora/diaspora/pull/7729)
# 0.7.3.1
Re-updating the German translations to fix some UX issues that were introduced by recent translation efforts.
# 0.7.3.0
## Refactor
* Work on the data downloads: Fixed general layout of buttons, added a timestamp and implemented auto-deletion of old exports [#7684](https://github.com/diaspora/diaspora/pull/7684)
* Increase Twitter character limit to 280 [#7694](https://github.com/diaspora/diaspora/pull/7694)
* Improve password autocomplete with password managers [#7642](https://github.com/diaspora/diaspora/pull/7642)
* Remove the limit of participants in private conversations [#7705](https://github.com/diaspora/diaspora/pull/7705)
* Send blocks to the blocked persons pod for better UX [#7705](https://github.com/diaspora/diaspora/pull/7705)
* Send a dummy participation on all incoming public posts to increase interaction consistency [#7708](https://github.com/diaspora/diaspora/pull/7708)
## Bug fixes
* Fix invite link on the contacts page when the user has no contacts [#7690](https://github.com/diaspora/diaspora/pull/7690)
* Fix the mobile bookmarklet when called without parameters [#7698](https://github.com/diaspora/diaspora/pull/7698)
* Properly build the #newhere message for people who got invited [#7702](https://github.com/diaspora/diaspora/pull/7702)
* Fix the admin report view for posts without text [#7706](https://github.com/diaspora/diaspora/pull/7706)
* Upgrade Nokogiri to fix [a disclosed vulnerability in libxml2](https://github.com/sparklemotion/nokogiri/issues/1714)
## Features
* Check if redis is running in script/server [#7685](https://github.com/diaspora/diaspora/pull/7685)
# 0.7.2.1
Fixes notifications when people remove their birthday date [#7691](https://github.com/diaspora/diaspora/pull/7691)
# 0.7.2.0
## Bug fixes
* Ignore invalid `diaspora://` links [#7652](https://github.com/diaspora/diaspora/pull/7652)
* Fix deformed avatar in hovercards [#7656](https://github.com/diaspora/diaspora/pull/7656)
* Fix default aspects on profile page and bookmarklet publisher [#7679](https://github.com/diaspora/diaspora/issues/7679)
## Features
* Add birthday notifications [#7624](https://github.com/diaspora/diaspora/pull/7624)
# 0.7.1.1
Fixes an issue with installing and running diaspora\* with today released bundler v1.16.0.
# 0.7.1.0
## Ensure account deletions are run
There were some issues causing accounts deletions to not properly perform in some cases, see
[#7631](https://github.com/diaspora/diaspora/issues/7631) and [#7639](https://github.com/diaspora/diaspora/pull/7639).
To ensure these are reexecuted properly, please run `RAILS_ENV=production bin/rake migrations:run_account_deletions`
after you've upgraded.
## Refactor
* Remove title from profile photo upload button [#7551](https://github.com/diaspora/diaspora/pull/7551)
* Remove Internet Explorer workarounds [#7557](https://github.com/diaspora/diaspora/pull/7557)
* Sort notifications by last interaction [#7568](https://github.com/diaspora/diaspora/pull/7568) [#7648](https://github.com/diaspora/diaspora/pull/7648)
* Remove tiff support from photos [#7576](https://github.com/diaspora/diaspora/pull/7576)
* Remove reference from reshares when original post is deleted [#7578](https://github.com/diaspora/diaspora/pull/7578)
* Merge migrations from before 0.6.0.0 to CreateSchema [#7580](https://github.com/diaspora/diaspora/pull/7580)
* Remove auto detection of languages with highlightjs [#7591](https://github.com/diaspora/diaspora/pull/7591)
* Move enable/disable notification icon [#7592](https://github.com/diaspora/diaspora/pull/7592)
* Use Bootstrap 3 progress-bar for polls [#7600](https://github.com/diaspora/diaspora/pull/7600)
* Enable frozen string literals [#7595](https://github.com/diaspora/diaspora/pull/7595)
* Remove `rails_admin_histories` table [#7597](https://github.com/diaspora/diaspora/pull/7597)
* Optimize memory usage on profile export [#7627](https://github.com/diaspora/diaspora/pull/7627)
* Limit the number of parallel exports [#7629](https://github.com/diaspora/diaspora/pull/7629)
* Reduce memory usage for account deletion [#7639](https://github.com/diaspora/diaspora/pull/7639)
## Bug fixes
* Fix displaying polls with long answers [#7579](https://github.com/diaspora/diaspora/pull/7579)
* Fix S3 support [#7566](https://github.com/diaspora/diaspora/pull/7566)
* Fix mixed username and timestamp with LTR/RTL scripts [#7575](https://github.com/diaspora/diaspora/pull/7575)
* Prevent users from zooming in IE Mobile [#7589](https://github.com/diaspora/diaspora/pull/7589)
* Fix recipient prefill on contacts and profile page [#7599](https://github.com/diaspora/diaspora/pull/7599)
* Display likes and reshares without login [#7583](https://github.com/diaspora/diaspora/pull/7583)
* Fix invalid data in the database for user data export [#7614](https://github.com/diaspora/diaspora/pull/7614)
* Fix local migration run without old private key [#7558](https://github.com/diaspora/diaspora/pull/7558)
* Fix export not downloadable because the filename was resetted on access [#7622](https://github.com/diaspora/diaspora/pull/7622)
* Delete invalid oEmbed caches with binary titles [#7620](https://github.com/diaspora/diaspora/pull/7620)
* Delete invalid diaspora IDs from friendica [#7630](https://github.com/diaspora/diaspora/pull/7630)
* Cleanup relayables where the signature is missing [#7637](https://github.com/diaspora/diaspora/pull/7637)
* Avoid page to jump to top after a post deletion [#7638](https://github.com/diaspora/diaspora/pull/7638)
* Handle duplicate account deletions [#7639](https://github.com/diaspora/diaspora/pull/7639)
* Handle duplicate account migrations [#7641](https://github.com/diaspora/diaspora/pull/7641)
* Handle bugs related to missing users [#7632](https://github.com/diaspora/diaspora/pull/7632)
* Cleanup empty signatures [#7644](https://github.com/diaspora/diaspora/pull/7644)
## Features
* Ask for confirmation when leaving a submittable comment field [#7530](https://github.com/diaspora/diaspora/pull/7530)
* Show users vote in polls [#7550](https://github.com/diaspora/diaspora/pull/7550)
* Add explanation of ignore function to in-app help section [#7585](https://github.com/diaspora/diaspora/pull/7585)
* Add camo information to NodeInfo [#7617](https://github.com/diaspora/diaspora/pull/7617)
* Add support for `diaspora://` links [#7625](https://github.com/diaspora/diaspora/pull/7625)
* Add support to relay likes for comments [#7625](https://github.com/diaspora/diaspora/pull/7625)
* Implement RFC 7033 WebFinger [#7625](https://github.com/diaspora/diaspora/pull/7625)
# 0.7.0.1
Update nokogiri to fix [multiple libxml2 vulnerabilities](https://usn.ubuntu.com/usn/usn-3424-1/).
# 0.7.0.0
## Supported Ruby versions
This release recommends using Ruby 2.4, while retaining Ruby 2.3 as an officially supported version.
Ruby 2.1 is no longer officially supported.
## Delete public/.well-known/
Before upgrading, please check if your `public/` folder contains a hidden `.well-known/` folder.
If so, please delete it since it will prevent the federation from working properly.
## Refactor
* Make the mention syntax more flexible [#7305](https://github.com/diaspora/diaspora/pull/7305)
* Display @ before mentions [#7324](https://github.com/diaspora/diaspora/pull/7324)
* Simplify mentions in the publisher [#7302](https://github.com/diaspora/diaspora/pull/7302)
* Remove chartbeat and mixpanel support [#7280](https://github.com/diaspora/diaspora/pull/7280)
* Upgrade to jQuery 3 [#7303](https://github.com/diaspora/diaspora/pull/7303)
* Add i18n for color themes [#7369](https://github.com/diaspora/diaspora/pull/7369)
* Remove deprecated statistics.json [#7399](https://github.com/diaspora/diaspora/pull/7399)
* Always link comment count text on mobile [#7483](https://github.com/diaspora/diaspora/pull/7483)
* Switch to new federation protocol [#7436](https://github.com/diaspora/diaspora/pull/7436)
* Send public profiles publicly [#7501](https://github.com/diaspora/diaspora/pull/7501)
* Change sender for mails [#7495](https://github.com/diaspora/diaspora/pull/7495)
* Move back to top to the right to avoid misclicks [#7516](https://github.com/diaspora/diaspora/pull/7516)
* Include count in mobile post action link [#7520](https://github.com/diaspora/diaspora/pull/7520)
* Update the user data export archive format [#6726](https://github.com/diaspora/diaspora/pull/6726)
* Use id as fallback when sorting posts [#7523](https://github.com/diaspora/diaspora/pull/7523)
* Remove no-posts-info when adding posts to the stream [#7523](https://github.com/diaspora/diaspora/pull/7523)
* Upgrade to rails 5.1 [#7514](https://github.com/diaspora/diaspora/pull/7514)
* Refactoring single post view interactions [#7182](https://github.com/diaspora/diaspora/pull/7182)
* Update help pages [#7528](https://github.com/diaspora/diaspora/pull/7528)
* Disable rendering logging in production [#7529](https://github.com/diaspora/diaspora/pull/7529)
* Add some missing indexes and cleanup the database if needed [#7533](https://github.com/diaspora/diaspora/pull/7533)
* Remove avatar, name, timestamp and interactions from publisher preview [#7536](https://github.com/diaspora/diaspora/pull/7536)
## Bug fixes
* Fix height too high on mobile SPV [#7480](https://github.com/diaspora/diaspora/pull/7480)
* Improve stream when ignoring a person who posts a lot of tagged posts [#7503](https://github.com/diaspora/diaspora/pull/7503)
* Fix order of comments across pods [#7436](https://github.com/diaspora/diaspora/pull/7436)
* Prevent publisher from closing in preview mode [#7518](https://github.com/diaspora/diaspora/pull/7518)
* Increase reshare counter after reshare on mobile [#7520](https://github.com/diaspora/diaspora/pull/7520)
* Reset stuck exports and handle errors [#7535](https://github.com/diaspora/diaspora/pull/7535)
## Features
* Add support for mentions in comments to the backend [#6818](https://github.com/diaspora/diaspora/pull/6818)
* Add support for new mention syntax [#7300](https://github.com/diaspora/diaspora/pull/7300) [#7394](https://github.com/diaspora/diaspora/pull/7394)
* Render mentions as links in comments [#7327](https://github.com/diaspora/diaspora/pull/7327)
* Add support for mentions in comments to the front-end [#7386](https://github.com/diaspora/diaspora/pull/7386)
* Support direct links to comments on mobile [#7508](https://github.com/diaspora/diaspora/pull/7508)
* Add inviter first and last name in the invitation e-mail [#7484](https://github.com/diaspora/diaspora/pull/7484)
* Add markdown editor for comments and conversations [#7482](https://github.com/diaspora/diaspora/pull/7482)
* Improve responsive header in desktop version [#7509](https://github.com/diaspora/diaspora/pull/7509)
* Support cmd+enter to submit posts, comments and conversations [#7524](https://github.com/diaspora/diaspora/pull/7524)
* Add markdown editor for posts, comments and conversations on mobile [#7235](https://github.com/diaspora/diaspora/pull/7235)
* Mark as "Mobile Web App Capable" on Android [#7534](https://github.com/diaspora/diaspora/pull/7534)
* Add support for receiving account migrations [#6750](https://github.com/diaspora/diaspora/pull/6750)
# 0.6.7.0
## Refactor
* Cleanup some translations [#7465](https://github.com/diaspora/diaspora/pull/7465)
## Features
* Change email without confirmation when mail is disabled [#7455](https://github.com/diaspora/diaspora/pull/7455)
* Warn users if they leave the profile editing page with unsaved changes [#7473](https://github.com/diaspora/diaspora/pull/7473)
* Add admin pages to the mobile interface [#7295](https://github.com/diaspora/diaspora/pull/7295)
* Add links to discourse to footer and sidebar [#7446](https://github.com/diaspora/diaspora/pull/7446)
# 0.6.6.0
## Refactor
* Remove rails\_admin [#7440](https://github.com/diaspora/diaspora/pull/7440)
* Use guid instead of id at permalink and in SPV [#7453](https://github.com/diaspora/diaspora/pull/7453)
## Bug fixes
* Make photo upload button hover text translatable [#7429](https://github.com/diaspora/diaspora/pull/7429)
* Fix first comment in mobile view with french locale [#7441](https://github.com/diaspora/diaspora/pull/7441)
* Use post page title and post author in atom feed [#7420](https://github.com/diaspora/diaspora/pull/7420)
* Handle broken public keys when receiving posts [#7448](https://github.com/diaspora/diaspora/pull/7448)
* Fix welcome message when podmin is set to an invalid username [#7452](https://github.com/diaspora/diaspora/pull/7452)
## Features
* Add support for Nodeinfo 2.0 [#7447](https://github.com/diaspora/diaspora/pull/7447)
# 0.6.5.0
## Refactor

260
Gemfile
View File

@@ -1,213 +1,210 @@
# frozen_string_literal: true
source "https://rubygems.org"
gem "rails", "4.2.8"
gem "rails", "6.1.6.1"
# Legacy Rails features, remove me!
# responders (class level)
gem "responders", "2.3.0"
gem "responders", "3.0.1"
# Appserver
gem "unicorn", "5.2.0", require: false
gem "unicorn-worker-killer", "0.4.4"
gem "unicorn", "6.1.0", require: false
gem "unicorn-worker-killer", "0.4.5"
# Federation
gem "diaspora_federation-rails", "0.1.8"
gem "diaspora_federation-json_schema", "0.2.8"
gem "diaspora_federation-rails", "0.2.8"
# API and JSON
gem "acts_as_api", "1.0.0"
gem "json", "1.8.6"
gem "json-schema", "2.8.0"
gem "acts_as_api", "1.0.1"
gem "json", "2.6.2"
gem "json-schema", "3.0.0"
# Authentication
gem "devise", "4.2.0"
gem "devise", "4.8.1"
gem "devise_lastseenable", "0.0.6"
gem "devise-two-factor", "4.0.2"
gem "rqrcode", "2.1.1"
# Captcha
gem "simple_captcha2", "0.4.3", require: "simple_captcha"
gem "simple_captcha2", "0.5.0", require: "simple_captcha"
# Background processing
gem "sidekiq", "4.2.9"
gem "redis", "4.7.0"
gem "sidekiq", "6.5.1"
# Scheduled processing
gem "sidekiq-cron", "0.4.5"
gem "sidekiq-cron", "1.6.0"
# Compression
gem "uglifier", "3.1.2"
gem "terser", "1.1.10"
# Configuration
gem "configurate", "0.3.1"
gem "configurate", "0.5.0"
gem "toml-rb", "2.1.2"
# Cross-origin resource sharing
gem "rack-cors", "0.4.1", require: "rack/cors"
gem "rack-cors", "1.1.1", require: "rack/cors"
# CSS
gem "autoprefixer-rails", "6.7.6"
gem "bootstrap-sass", "3.3.7"
gem "bootstrap-switch-rails", "3.3.3"
gem "compass-rails", "2.0.5"
gem "sass-rails", "5.0.6"
gem "autoprefixer-rails", "10.4.7.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 "sassc-rails", "2.1.2"
gem "sprockets-rails", "3.4.2"
# Database
group :mysql, optional: true do
gem "mysql2", "0.4.5"
gem "mysql2", "0.5.4"
end
group :postgresql, optional: true do
gem "pg", "0.19.0"
gem "pg", "1.4.1"
end
gem "activerecord-import", "0.17.1"
gem "activerecord-import", "1.4.0"
# File uploading
gem "fog-aws", "1.2.1"
gem "carrierwave", "0.11.2"
gem "mini_magick", "4.6.1"
gem "carrierwave", "2.2.2"
gem "fog-aws", "3.14.0"
gem "mini_magick", "4.11.0"
# GUID generation
gem "uuid", "2.3.8"
# Icons
gem "entypo-rails", "3.0.0"
gem "uuid", "2.3.9"
# JavaScript
gem "handlebars_assets", "0.23.1"
gem "jquery-rails", "4.2.1"
gem "jquery-ui-rails", "5.0.5"
gem "js-routes", "1.3.3"
gem "js_image_paths", "0.1.0"
gem "handlebars_assets", "0.23.9"
gem "jquery-rails", "4.5.0"
gem "js_image_paths", "0.2.0"
gem "js-routes", "2.2.4"
source "https://rails-assets.org" do
gem "rails-assets-jquery", "2.2.4" # Should be kept in sync with jquery-rails
source "https://gems.diasporafoundation.org" do
gem "rails-assets-jquery", "3.6.0" # Should be kept in sync with jquery-rails
gem "rails-assets-jquery.ui", "1.11.4"
gem "rails-assets-highlightjs", "9.9.0"
gem "rails-assets-markdown-it", "8.3.0"
gem "rails-assets-highlightjs", "9.12.0"
gem "rails-assets-markdown-it", "8.4.2"
gem "rails-assets-markdown-it-diaspora-mention", "1.2.0"
gem "rails-assets-markdown-it-footnote", "3.0.3"
gem "rails-assets-markdown-it-hashtag", "0.4.0"
gem "rails-assets-markdown-it-diaspora-mention", "1.1.1"
gem "rails-assets-markdown-it-sanitizer", "0.4.3"
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"
gem "rails-assets-backbone", "1.3.3"
gem "rails-assets-bootstrap", "3.4.1"
gem "rails-assets-bootstrap-markdown", "2.10.0"
gem "rails-assets-corejs-typeahead", "1.1.1"
gem "rails-assets-corejs-typeahead", "1.2.1"
gem "rails-assets-fine-uploader", "5.13.0"
# jQuery plugins
gem "rails-assets-autosize", "3.0.20"
gem "rails-assets-blueimp-gallery", "2.25.0"
gem "rails-assets-autosize", "4.0.2"
gem "rails-assets-blueimp-gallery", "2.33.0"
gem "rails-assets-jquery.are-you-sure", "1.9.0"
gem "rails-assets-jquery-placeholder", "2.3.1"
gem "rails-assets-jquery-textchange", "0.2.3"
gem "rails-assets-perfect-scrollbar", "0.6.16"
gem "rails-assets-utatti-perfect-scrollbar", "1.4.0"
end
gem "markdown-it-html5-embed", "1.0.0"
# Localization
gem "http_accept_language", "2.1.0"
gem "http_accept_language", "2.1.1"
gem "i18n-inflector-rails", "1.0.7"
gem "rails-i18n", "4.0.8"
# Mail
gem "markerb", "1.1.0"
gem "rails-i18n", "6.0.0"
# Map
gem "leaflet-rails", "0.7.7"
gem "leaflet-rails", "1.7.0"
# Parsing
gem "nokogiri", "1.7.1"
gem "open_graph_reader", "0.6.2" # also update User-Agent in features/support/webmock.rb
gem "redcarpet", "3.4.0"
gem "ruby-oembed", "0.10.1"
gem "twitter-text", "1.14.5"
gem "nokogiri", "1.13.7"
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.16.1"
gem "twitter-text", "1.14.7"
# RTL support
gem "string-direction", "1.2.0"
gem "string-direction", "1.2.2"
# Security Headers
gem "secure_headers", "3.6.1"
gem "secure_headers", "6.3.3"
# Services
gem "omniauth", "1.4.2"
gem "omniauth-facebook", "4.0.0"
gem "omniauth-tumblr", "1.2"
gem "omniauth-twitter", "1.4.0"
gem "twitter", "6.1.0"
gem "omniauth-wordpress", "0.2.2"
gem "omniauth", "2.1.0"
gem "omniauth-rails_csrf_protection", "1.0.1"
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", "0.12.0"
gem "openid_connect", "1.3.0"
# Serializers
gem "active_model_serializers", "0.9.5"
gem "active_model_serializers", "0.9.8"
# XMPP chat dependencies
gem "diaspora-prosody-config", "0.0.7"
gem "rails-assets-diaspora_jsxc", "0.1.5.develop.7", source: "https://rails-assets.org"
gem "rails-assets-diaspora_jsxc", "0.1.5.develop.7", source: "https://gems.diasporafoundation.org"
# Tags
gem "acts-as-taggable-on", "3.5.0"
gem "acts-as-taggable-on", "9.0.1"
# URIs and HTTP
gem "addressable", "2.5.0", require: "addressable/uri"
gem "faraday", "0.11.0" # also update User-Agent in OpenID specs
gem "faraday_middleware", "0.11.0.1"
gem "faraday-cookie_jar", "0.0.6"
gem "typhoeus", "1.1.2"
gem "addressable", "2.8.0", require: "addressable/uri"
gem "faraday", "0.17.5"
gem "faraday-cookie_jar", "0.0.7"
gem "faraday_middleware", "0.14.0"
gem "typhoeus", "1.4.0"
# Views
gem "gon", "6.1.0"
gem "hamlit", "2.8.0"
gem "mobile-fu", "1.3.1"
gem "will_paginate", "3.1.5"
gem "rails-timeago", "2.11.0"
gem "gon", "6.4.0"
gem "hamlit", "2.16.0"
gem "mobile-fu", "1.4.0"
gem "rails-timeago", "2.20.0"
gem "will_paginate", "3.3.1"
# Logging
gem "logging-rails", "0.5.0", require: "logging/rails"
gem "logging-rails", "0.6.0", require: "logging/rails"
# Reading and writing zip files
gem "rubyzip", "1.2.1", 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:
# https://github.com/gitlabhq/gitlabhq/issues/3826
# https://github.com/gitlabhq/gitlabhq/pull/3852
# https://github.com/discourse/discourse/pull/238
gem "minitest"
gem "minitest", "5.15.0"
gem "versionist", "1.5.0"
# Prevent accidental upgrades of thor
# TODO: remove this when either all gems depending on thor have fixed the warnings
# or thor released a version where they are clearly marked as warnings
# see: https://github.com/erikhuda/thor/issues/538
gem "thor", "0.19.1"
gem "versionist", "2.0.1"
# Windows and OSX have an execjs compatible runtime built-in, Linux users should
# install Node.js or use "therubyracer".
@@ -217,10 +214,6 @@ gem "thor", "0.19.1"
# gem "therubyracer", :platform => :ruby
group :production do # we don"t install these on travis to speed up test runs
# Administration
gem "rails_admin", "0.8.1"
# Analytics
gem "rack-google-analytics", "1.2.0"
@@ -228,7 +221,7 @@ group :production do # we don"t install these on travis to speed up test runs
# Process management
gem "eye", "0.9.1"
gem "eye", "0.10.0"
# Redirects
@@ -237,84 +230,71 @@ group :production do # we don"t install these on travis to speed up test runs
# Third party asset hosting
gem "asset_sync", "2.0.0", require: false
gem "asset_sync", "2.15.2", require: false
end
group :development do
# Automatic test runs
gem "guard", "2.14.1", require: false
gem "guard-cucumber", "2.1.2", require: false
gem "guard-rspec", "4.7.3", require: false
gem "guard-rubocop", "1.2.0", require: false
gem "rb-fsevent", "0.9.8", require: false
gem "rb-inotify", "0.9.8", require: false
# Linters
gem "haml_lint", "0.21.0"
gem "pronto", "0.8.2"
gem "pronto-eslint", "0.8.0"
gem "pronto-haml", "0.8.0"
gem "pronto-rubocop", "0.8.0"
gem "pronto-scss", "0.8.0", require: false
gem "rubocop", "0.47.1"
# Preloading environment
gem "spring", "2.0.1"
gem "spring-commands-rspec", "1.0.4"
gem "spring-commands-cucumber", "1.0.1"
gem "haml_lint", "0.40.0", require: false
gem "pronto", "0.11.0", require: false
gem "pronto-eslint", "0.11.0", require: false
gem "pronto-haml", "0.11.1", require: false
gem "pronto-rubocop", "0.11.1", require: false
gem "pronto-scss", "0.11.0", require: false
gem "rubocop", "0.93.1", require: false
gem "rubocop-rails", "2.9.1", require: false
# Debugging
gem "pry"
gem "pry-byebug"
# test coverage
gem "simplecov", "0.12.0", require: false
gem "simplecov", "0.21.2", require: false
gem "turbo_dev_assets", "0.0.2"
gem "listen", "3.7.1"
end
group :test do
# RSpec (unit tests, some integration tests)
gem "fixture_builder", "0.4.1"
gem "fuubar", "2.2.0"
gem "test_after_commit", "1.1.0"
gem "fixture_builder", "0.5.2"
gem "fuubar", "2.5.1"
gem "rspec-json_expectations", "~> 2.1"
# Cucumber (integration tests)
gem "capybara", "2.12.1"
gem "database_cleaner", "1.5.3"
gem "poltergeist", "1.13.0"
gem "apparition", "0.6.0"
gem "capybara", "3.35.3"
gem "database_cleaner-active_record", "2.0.1"
gem "cucumber-api-steps", "0.13", require: false
gem "cucumber-api-steps", "0.14", require: false
# General helpers
gem "factory_girl_rails", "4.8.0"
gem "timecop", "0.8.1"
gem "webmock", "2.3.2", require: false
gem "shoulda-matchers", "3.1.1"
gem "factory_girl_rails", "4.9.0"
gem "shoulda-matchers", "4.5.1"
gem "timecop", "0.9.5"
gem "webmock", "3.14.0", require: false
gem "diaspora_federation-test", "0.1.8"
# Coverage
gem 'coveralls', require: false
gem "diaspora_federation-test", "0.2.8"
end
group :development, :test do
# RSpec (unit tests, some integration tests)
gem "rspec-rails", "3.5.2"
gem "rspec-rails", "5.1.2"
# Cucumber (integration tests)
gem "cucumber-rails", "1.4.5", require: false
gem "cucumber-rails", "2.5.1", require: false
# Jasmine (client side application tests (JS))
gem "jasmine", "2.5.2"
gem "chrome_remote", "0.3.0"
gem "jasmine", "3.10.0"
gem "jasmine-jquery-rails", "2.0.3"
gem "rails-assets-jasmine-ajax", "3.3.1", source: "https://rails-assets.org"
gem "rails-assets-jasmine-ajax", "4.0.0", source: "https://gems.diasporafoundation.org"
gem "sinon-rails", "1.15.0"
# silence assets
gem "quiet_assets", "1.1.0"
# For `assigns` in controller specs
gem "rails-controller-testing", "1.0.5"
end

File diff suppressed because it is too large Load Diff

View File

@@ -1,38 +0,0 @@
guard :rspec, cmd: "bin/spring rspec", all_on_start: false, all_after_pass: false do
watch(/^spec\/.+_spec\.rb$/)
watch(/^lib\/(.+)\.rb$/) {|m| "spec/lib/#{m[1]}_spec.rb" }
watch(/spec\/spec_helper.rb/) { "spec" }
# Rails example
watch(/^spec\/.+_spec\.rb$/)
watch(/^app\/(.+)\.rb$/) {|m| "spec/#{m[1]}_spec.rb" }
watch(/^lib\/(.+)\.rb$/) {|m| "spec/lib/#{m[1]}_spec.rb" }
watch(%r{^app/controllers/(.+)_(controller)\.rb$}) {|m|
["spec/routing/#{m[1]}_routing_spec.rb",
"spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb",
"spec/acceptance/#{m[1]}_spec.rb"]
}
watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
watch("spec/spec_helper.rb") { "spec" }
watch("config/routes.rb") { "spec/routing" }
watch("app/controllers/application_controller.rb") { "spec/controllers" }
# Capybara request specs
watch(%r{^app/views/(.+)/.*\.(erb|haml)$}) {|m| "spec/requests/#{m[1]}_spec.rb" }
end
guard(:cucumber,
cmd: "bin/spring cucumber",
all_on_start: false,
all_after_pass: false) do
watch(/^features\/.+\.feature$/)
watch(%r{^features/support/.+$}) { "features" }
watch(%r{^features/step_definitions/(.+)_steps\.rb$}) {|m|
Dir[File.join("**/#{m[1]}.feature")][0] || "features"
}
end
guard :rubocop, all_on_start: false, keep_failed: false do
watch(/(?:app|config|db|lib|features|spec)\/.+\.rb$/)
watch(/(config.ru|Gemfile|Guardfile|Rakefile)$/)
end

View File

@@ -1,14 +1,6 @@
# diaspora*
# diaspora\*
### A privacy-aware, distributed, open source social network
**master:** [![Build Status master](https://secure.travis-ci.org/diaspora/diaspora.svg?branch=master)](http://travis-ci.org/diaspora/diaspora)
**next-minor:** [![Build Status next-minor](https://secure.travis-ci.org/diaspora/diaspora.svg?branch=next-minor)](http://travis-ci.org/diaspora/diaspora)
[![Coverage Status next-minor](https://coveralls.io/repos/github/diaspora/diaspora/badge.svg?branch=next-minor)](https://coveralls.io/github/diaspora/diaspora?branch=next-minor)|
**develop:** [![Build Status develop](https://secure.travis-ci.org/diaspora/diaspora.svg?branch=develop)](http://travis-ci.org/diaspora/diaspora)
[![Coverage Status develop](https://coveralls.io/repos/github/diaspora/diaspora/badge.svg?branch=develop)](https://coveralls.io/github/diaspora/diaspora?branch=develop) |
[![Dependency Status](https://gemnasium.com/badges/github.com/diaspora/diaspora.svg)](https://gemnasium.com/diaspora/diaspora)
[![Code Climate](https://codeclimate.com/github/diaspora/diaspora/badges/gpa.svg)](https://codeclimate.com/github/diaspora/diaspora)
[Project site](https://diasporafoundation.org) |
[Wiki](https://wiki.diasporafoundation.org) |
[Bugtracker](https://github.com/diaspora/diaspora/issues) |
@@ -18,9 +10,9 @@
## 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](http://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!
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!
## Questions?
@@ -36,4 +28,4 @@ Everyone interacting in diasporas codebases, issue trackers, chat rooms, the
## Security
Found a security issue? Please disclose it responsibly. We have a team of developers listening to [security@diasporafoundation.org](mailto:security@diasporafoundation.org). The PGP fingerprint is [AB0D AB02 0FC5 D398 03AB 3CE1 6F70 243F 27AD 886A](https://pgp.mit.edu/pks/lookup?op=get&search=0x6F70243F27AD886A).
See [`SECURITY.md`](/SECURITY.md) for instructions on how to responsibly report a security vulnerability.

View File

@@ -1,3 +1,5 @@
# frozen_string_literal: true
# Copyright (c) 2010-2011, Diaspora Inc. This file is
# licensed under the Affero General Public License version 3 or later. See
# the COPYRIGHT file.

9
SECURITY.md Normal file
View File

@@ -0,0 +1,9 @@
# Security Policy
## Supported Versions
We support the latest stable release, as well as the current state of the `next-minor` and `develop` branches. Security issues for older releases are out of scope.
## Reporting a Vulnerability
Found a security issue? Please disclose it responsibly. We have a team of developers listening to [security@diasporafoundation.org](mailto:security@diasporafoundation.org). The PGP fingerprint is [AB0D AB02 0FC5 D398 03AB 3CE1 6F70 243F 27AD 886A](https://pgp.mit.edu/pks/lookup?op=get&search=0x6F70243F27AD886A).

View File

@@ -0,0 +1,14 @@
//= link_tree ../images
//= link main.js
//= link mobile/mobile.js
//= link contact-list.js
//= link jquery3.js
//= link jquery_ujs.js
//= link jsxc.js
//= link bookmarklet.js
//= link mobile/bookmarklet.js
//= link admin.css
//= link error_pages.css
//= link rtl.css

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -14,7 +14,7 @@
//= require_tree ./collections
//= require_tree ./views
//= require perfect-scrollbar/perfect-scrollbar.jquery
//= require utatti-perfect-scrollbar/dist/perfect-scrollbar
var app = {
collections: {},
@@ -121,12 +121,6 @@ var app = {
app.flashMessages = new app.views.FlashMessages({el: $("#flash-container")});
},
/* mixpanel wrapper function */
instrument : function(type, name, object, callback) {
if(!window.mixpanel) { return; }
window.mixpanel[type](name, object, callback);
},
setupDisabledLinks: function() {
$("a.disabled").click(function(event) {
event.preventDefault();

View File

@@ -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";
@@ -116,7 +116,7 @@ Handlebars.registerHelper("isCurrentProfilePage", function(id, diasporaHandle, o
});
Handlebars.registerHelper('aspectMembershipIndicator', function(contact,in_aspect) {
if(!app.aspect || !app.aspect.get('id')) return '<div class="aspect_membership_dropdown placeholder"></div>';
if(!app.aspect || !app.aspect.get('id')) return '<div class="aspect-membership-dropdown placeholder"></div>';
var html = "<i class=\"entypo-";
if( in_aspect === 'in_aspect' ) {

View File

@@ -1,7 +1,4 @@
// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-v3-or-Later
/* we need to wrap this in a document ready to ensure JST is accessible */
$(function(){
Handlebars.registerPartial('status-message', HandlebarsTemplates['status-message_tpl']);
});
Handlebars.registerPartial("status-message", HandlebarsTemplates["status-message_tpl"]);
// @license-end

View File

@@ -1,25 +1,23 @@
(function() {
app.helpers.locations = {
getTiles: function() {
// If the mapbox option is enabled in the diaspora.yml, the mapbox tiles with the podmin's credentials are used.
// If the mapbox option is enabled in the diaspora.toml, the mapbox tiles with the podmin's credentials are used.
if (gon.appConfig.map.mapbox.enabled) {
return L.tileLayer("https://api.mapbox.com/styles/v1/{style}/tiles/256/{z}/{x}/{y}?access_token={accessToken}", {
accessToken: gon.appConfig.map.mapbox.access_token,
style: gon.appConfig.map.mapbox.style,
attribution: "Map data &copy; <a href='http://openstreetmap.org'>OpenStreetMap</a> contributors, " +
"<a href='http://creativecommons.org/licenses/by-sa/2.0/''>CC-BY-SA</a>, " +
"Imagery © <a href='https://www.mapbox.com'>Mapbox</a>",
maxZoom: 18
});
return L.tileLayer(
"https://api.mapbox.com/styles/v1/{style}/tiles/256/{z}/{x}/{y}?access_token={accessToken}",
{
accessToken: gon.appConfig.map.mapbox.access_token,
style: gon.appConfig.map.mapbox.style,
attribution:
"Map data &copy; <a href='https://openstreetmap.org'>OpenStreetMap</a> contributors, " +
"<a href='http://opendatacommons.org/licenses/dbcl/1.0/'>Open Database License, ODbL 1.0</a>, " +
"Imagery © <a href='https://www.mapbox.com'>Mapbox</a>",
maxZoom: 18,
tileSize: 512,
zoomOffset: -1
}
);
}
// maptiles from the Heidelberg University are used by default.
return L.tileLayer("http://korona.geog.uni-heidelberg.de/tiles/roads/x={x}&y={y}&z={z}", {
attribution: "Map data &copy; <a href='http://openstreetmap.org'>OpenStreetMap</a> contributors, " +
"rendering <a href='http://giscience.uni-hd.de/'>" +
"GIScience Research Group @ Heidelberg University</a>",
maxZoom: 18
});
}
};
})();

View File

@@ -1,6 +1,11 @@
// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-v3-or-Later
(function(){
app.helpers.allowedEmbedsMime = function(mimetype) {
var v = document.createElement(mimetype[1]);
return v.canPlayType && v.canPlayType(mimetype[0]) !== "";
};
app.helpers.textFormatter = function(text, mentions) {
mentions = mentions ? mentions : [];
@@ -8,10 +13,12 @@
breaks: true,
html: true,
linkify: true,
typographer: true,
langPrefix: ""
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, "↔")
@@ -36,7 +43,7 @@
var hashtagPlugin = window.markdownitHashtag;
md.use(hashtagPlugin, {
// compare tag_text_regexp in app/models/acts_as_taggable_on-tag.rb
// compare tag_text_regexp in config/initializers/acts_as_taggable_on.rb
hashtagRegExp: "[" + PosixBracketExpressions.word +
"\\u055b" + // Armenian emphasis mark
"\\u055c" + // Armenian exclamation mark
@@ -72,10 +79,6 @@
} catch (__) {}
}
try {
return hljs.highlightAuto(str).value;
} catch (__) {}
return "";
}
});
@@ -88,6 +91,30 @@
// Bootstrap table markup
md.renderer.rules.table_open = function () { return "<table class=\"table table-striped\">\n"; };
var html5medialPlugin = window.markdownitHTML5Embed;
md.use(html5medialPlugin, {html5embed: {
inline: false,
autoAppend: true,
renderFn: function handleBarsRenderFn(parsed, mediaAttributes) {
var attributes = mediaAttributes[parsed.mediaType];
return HandlebarsTemplates["media-embed_tpl"]({
mediaType: parsed.mediaType,
attributes: attributes,
mimetype: parsed.mimeType,
sourceURL: parsed.url,
title: parsed.title,
fallback: parsed.fallback,
needsCover: parsed.mediaType === "video"
});
},
attributes: {
"audio": "controls preload=none",
"video": "preload=none"
},
isAllowedMimeType: app.helpers.allowedEmbedsMime
}});
return md.render(text);
};
})();

View File

@@ -1,14 +1,11 @@
(function() {
app.helpers.truncate = function(passedString, length) {
if (passedString === null || passedString === undefined) {
if (passedString === null || passedString === undefined || passedString.length < length) {
return passedString;
}
if (passedString.length > length) {
var lastBlank = passedString.lastIndexOf(' ', length);
var trimstring = passedString.substring(0, Math.min(length, lastBlank));
return new Handlebars.SafeString(trimstring + " ...");
}
return new Handlebars.SafeString(passedString);
var lastBlank = passedString.lastIndexOf(" ", length);
var trimstring = passedString.substring(0, Math.min(length, lastBlank));
return trimstring + " ...";
};
})();

View File

@@ -48,12 +48,6 @@ app.models.Post = Backbone.Model.extend(_.extend({}, app.models.formatDateMixin,
var body = this.get("text").trim()
, newlineIdx = body.indexOf("\n");
return (newlineIdx > 0 ) ? body.substr(newlineIdx+1, body.length) : "";
},
//returns a promise
preloadOrFetch : function(){
var action = app.hasPreload("post") ? this.set(app.parsePreload("post")) : this.fetch();
return $.when(action);
}
}));
// @license-end

View File

@@ -3,10 +3,6 @@
//require ../post
app.models.Post.Interactions = Backbone.Model.extend({
url : function(){
return this.post.url() + "/interactions";
},
initialize : function(options){
this.post = options.post;
this.comments = new app.collections.Comments(this.get("comments"), {post : this.post});
@@ -14,33 +10,16 @@ app.models.Post.Interactions = Backbone.Model.extend({
this.reshares = new app.collections.Reshares(this.get("reshares"), {post : this.post});
},
parse : function(resp){
this.comments.reset(resp.comments);
this.likes.reset(resp.likes);
this.reshares.reset(resp.reshares);
var comments = this.comments
, likes = this.likes
, reshares = this.reshares;
return {
comments : comments,
likes : likes,
reshares : reshares,
fetched : true
};
},
likesCount : function(){
return this.get("fetched") ? this.likes.models.length : this.get("likes_count");
return this.get("likes_count");
},
resharesCount : function(){
return this.get("fetched") ? this.reshares.models.length : this.get("reshares_count");
return this.get("reshares_count");
},
commentsCount : function(){
return this.get("fetched") ? this.comments.models.length : this.get("comments_count");
return this.get("comments_count");
},
userLike : function(){
@@ -76,19 +55,19 @@ app.models.Post.Interactions = Backbone.Model.extend({
app.flashMessages.handleAjaxError(response);
}
});
app.instrument("track", "Like");
},
unlike : function() {
var self = this;
this.userLike().destroy({success : function() {
self.post.set({participation: false});
self.trigger('change');
self.set({"likes_count" : self.get("likes_count") - 1});
self.likes.trigger("change");
},
error: function(model, response) {
app.flashMessages.handleAjaxError(response);
}});
app.instrument("track", "Unlike");
},
comment: function(text, options) {
@@ -104,8 +83,10 @@ app.models.Post.Interactions = Backbone.Model.extend({
self.trigger('change'); //updates after sync
if (options.success) { options.success(); }
});
},
app.instrument("track", "Comment");
removedComment: function() {
this.set({"comments_count": this.get("comments_count") - 1});
},
reshare : function(){
@@ -126,8 +107,6 @@ app.models.Post.Interactions = Backbone.Model.extend({
.fail(function(response) {
app.flashMessages.handleAjaxError(response);
});
app.instrument("track", "Reshare");
},
userCanReshare : function(){

View File

@@ -13,8 +13,16 @@ app.models.Stream = Backbone.Collection.extend({
},
collectionOptions :function(){
var order = this.sortOrder();
return { comparator : function(item) { return -item[order](); } };
var order = this.sortOrder();
return {
comparator: function(item1, item2) {
if (item1[order]() < item2[order]()) { return 1; }
if (item1[order]() > item2[order]()) { return -1; }
if (item1.id < item2.id) { return 1; }
if (item1.id > item2.id) { return -1; }
return 0;
}
};
},
url : function(){
@@ -61,7 +69,7 @@ app.models.Stream = Backbone.Collection.extend({
},
sortOrder : function() {
return /activity/.test(this.basePath()) ? "interactedAt" : "createdAt";
return /^\/activity/.test(this.basePath()) ? "interactedAt" : "createdAt";
},
/* This function is for adding a large number of posts one by one.

View File

@@ -5,19 +5,17 @@ app.pages.Contacts = Backbone.View.extend({
el: "#contacts_container",
events: {
"click #contacts_visibility_toggle" : "toggleContactVisibility",
"click #chat_privilege_toggle" : "toggleChatPrivilege",
"click #change_aspect_name" : "showAspectNameForm",
"click .conversation_button": "showMessageModal",
"click #invitations-button": "showInvitationsModal"
"click .invitations-button": "showInvitationsModal"
},
initialize: function(opts) {
this.visibilityToggle = $("#contacts_visibility_toggle i");
this.chatToggle = $("#chat_privilege_toggle i");
this.stream = opts.stream;
this.stream.render();
$("#people_stream.contacts .header i").tooltip({"placement": "bottom"});
$("#people-stream.contacts .header i").tooltip({"placement": "bottom"});
$(document).on("ajax:success", "form.edit_aspect", this.updateAspectName);
app.events.on("aspect:create", function(){ window.location.reload() });
app.events.on("aspect_membership:create", this.addAspectMembership, this);
@@ -45,25 +43,6 @@ app.pages.Contacts = Backbone.View.extend({
}
},
toggleContactVisibility: function() {
if (this.visibilityToggle.hasClass("entypo-lock-open")) {
this.visibilityToggle.removeClass("entypo-lock-open")
.addClass("entypo-lock")
.tooltip("destroy")
.removeAttr("data-original-title")
.attr("title", Diaspora.I18n.t("contacts.aspect_list_is_not_visible"))
.tooltip({"placement": "bottom"});
}
else {
this.visibilityToggle.removeClass("entypo-lock")
.addClass("entypo-lock-open")
.tooltip("destroy")
.removeAttr("data-original-title")
.attr("title", Diaspora.I18n.t("contacts.aspect_list_is_visible"))
.tooltip({"placement": "bottom"});
}
},
showAspectNameForm: function() {
$(".header > h3").hide();
var aspectName = $.trim($(".header h3 #aspect_name").text());
@@ -80,7 +59,10 @@ app.pages.Contacts = Backbone.View.extend({
showMessageModal: function(){
$("#conversationModal").on("modal:loaded", function() {
new app.views.ConversationsForm({prefill: gon.conversationPrefill});
var people = _.pluck(app.contacts.filter(function(contact) {
return contact.person.get("relationship") === "mutual" && contact.inAspect(app.aspect.get("id"));
}), "person");
new app.views.ConversationsForm({prefill: people});
});
app.helpers.showModal("#conversationModal");
},

View File

@@ -5,7 +5,7 @@ app.pages.GettingStarted = app.views.Base.extend({
templateName: false,
subviews: {
".aspect_membership_dropdown": "aspectMembershipView"
".aspect-membership-dropdown": "aspectMembershipView"
},
initialize: function(opts) {

View File

@@ -11,7 +11,7 @@ app.pages.Profile = app.views.Base.extend({
subviews: {
"#profile": "sidebarView",
".profile_header": "headerView",
"#main_stream": "streamView"
"#main-stream": "streamView"
},
tooltipSelector: ".profile_button .profile-header-icon, .sharing_message_container",
@@ -24,9 +24,6 @@ app.pages.Profile = app.views.Base.extend({
if (app.hasPreload("photos_count")) {
this.photos = app.parsePreload("photos_count");
}
if (app.hasPreload("contacts_count")) {
this.contacts = app.parsePreload("contacts_count");
}
this.streamCollection = _.has(opts, "streamCollection") ? opts.streamCollection : null;
this.streamViewClass = _.has(opts, "streamView") ? opts.streamView : null;
@@ -70,7 +67,6 @@ app.pages.Profile = app.views.Base.extend({
return new app.views.ProfileHeader({
model: this.model,
photos: this.photos,
contacts: this.contacts
});
},

View File

@@ -11,9 +11,14 @@ app.pages.Settings = Backbone.View.extend({
new Diaspora.ProfilePhotoUploader();
this.viewAspectSelector = new app.views.PublisherAspectSelector({
el: $(".aspect_dropdown"),
el: $(".aspect-dropdown"),
form: $("#post-default-aspects")
});
$("#update_profile_form").areYouSure();
$("#register-protocol-handler").click(function() {
Diaspora.ProtocolHandler.register();
});
}
});
// @license-end

View File

@@ -3,24 +3,23 @@
app.pages.SinglePostViewer = app.views.Base.extend({
templateName: "single-post-viewer",
subviews : {
"#single-post-content" : "singlePostContentView",
'#single-post-interactions' : 'singlePostInteractionsView'
subviews: {
"#single-post-content": "singlePostContentView",
"#single-post-interactions": "singlePostInteractionsView"
},
initialize : function() {
this.model = new app.models.Post({ id : gon.post.id });
this.model.preloadOrFetch().done(_.bind(this.initViews, this));
this.model.interactions.fetch(); //async, yo, might want to throttle this later.
initialize: function() {
this.model = new app.models.Post(gon.post);
this.initViews();
},
initViews : function() {
initViews: function() {
this.singlePostContentView = new app.views.SinglePostContent({model: this.model});
this.singlePostInteractionsView = new app.views.SinglePostInteractions({model: this.model});
this.render();
},
postRenderTemplate : function() {
postRenderTemplate: function() {
if(this.model.get("title")){
// formats title to html...
var html_title = app.helpers.textFormatter(this.model.get("title"), this.model.get("mentioned_people"));

View File

@@ -9,7 +9,7 @@ app.Router = Backbone.Router.extend({
"commented(/)": "stream",
"community_spotlight(/)": "spotlight",
"contacts(/)": "contacts",
"conversations(/)(:id)(/)": "conversations",
"conversations(/)(:id)(?conversation_id=:conversation_id)(/)": "conversations",
"followed_tags(/)": "followed_tags",
"getting_started(/)": "gettingStarted",
"help(/)": "help",
@@ -20,7 +20,6 @@ app.Router = Backbone.Router.extend({
"p/:id(/)": "singlePost",
"people(/)": "peopleSearch",
"people/:id(/)": "profile",
"people/:id/contacts(/)": "profile",
"people/:id/photos(/)": "photos",
"posts/:id(/)": "singlePost",
"profile/edit(/)": "settings",
@@ -93,8 +92,8 @@ app.Router = Backbone.Router.extend({
app.page = new app.pages.Contacts({stream: stream});
},
conversations: function(id) {
app.conversations = app.conversations || new app.views.ConversationsInbox();
conversations: function(id, conversationId) {
app.conversations = app.conversations || new app.views.ConversationsInbox(conversationId);
if (parseInt("" + id, 10)) {
app.conversations.renderConversation(id);
}
@@ -182,11 +181,11 @@ app.Router = Backbone.Router.extend({
},
singlePost: function(id) {
this.renderPage(function() { return new app.pages.SinglePostViewer({id: id}); });
this.renderPage(function() { return new app.pages.SinglePostViewer({id: id, el: $("#container")}); });
},
spotlight: function() {
$("#invitations-button").click(function() {
$(".invitations-button").click(function() {
app.helpers.showModal("#invitationsModal");
});
},
@@ -220,7 +219,7 @@ app.Router = Backbone.Router.extend({
app.page.setupAvatarFallback($(".main-stream-publisher"));
}
$("#main_stream").html(app.page.render().el);
$("#main-stream").html(app.page.render().el);
this._hideInactiveStreamLists();
},
@@ -229,7 +228,7 @@ app.Router = Backbone.Router.extend({
},
renderAspectMembershipDropdowns: function($context) {
$context.find(".aspect_membership_dropdown.placeholder").each(function() {
$context.find(".aspect-membership-dropdown.placeholder").each(function() {
var personId = $(this).data("personId");
var view = new app.views.AspectMembership({person: app.contacts.findWhere({"person_id": personId}).person});
$(this).html(view.render().$el);

View File

@@ -21,10 +21,6 @@ app.views.AspectCreate = app.views.Base.extend({
});
},
_contactsVisible: function() {
return this.$("#aspect_contacts_visible").is(":checked");
},
_name: function() {
return this.$("#aspect_name").val();
},
@@ -71,8 +67,7 @@ app.views.AspectCreate = app.views.Base.extend({
app.aspects.create({
"person_id": this._personId || null,
"name": this._name(),
"contacts_visible": this._contactsVisible()
"name": this._name()
});
},

View File

@@ -9,17 +9,15 @@
*/
app.views.AspectMembership = app.views.Base.extend({
templateName: "aspect_membership_dropdown",
className: "btn-group aspect_dropdown aspect_membership_dropdown",
className: "btn-group aspect-dropdown aspect-membership-dropdown",
subviews: {
".newAspectContainer": "aspectCreateView"
},
events: {
"click ul.aspect_membership.dropdown-menu > li.aspect_selector"
: "_clickHandler",
"keypress ul.aspect_membership.dropdown-menu > li.aspect_selector"
: "_clickHandler"
"click ul.aspect-membership.dropdown-menu > li.aspect_selector": "_clickHandler",
"keypress ul.aspect-membership.dropdown-menu > li.aspect_selector": "_clickHandler"
},
initialize: function(opts) {
@@ -124,7 +122,7 @@ app.views.AspectMembership = app.views.Base.extend({
// show an error flash msg
_displayError: function(model, resp) {
this._done();
this.dropdown.closest(".aspect_membership_dropdown").removeClass("open"); // close the dropdown
this.dropdown.closest(".aspect-membership-dropdown").removeClass("open"); // close the dropdown
app.flashMessages.handleAjaxError(resp);
},
@@ -144,7 +142,7 @@ app.views.AspectMembership = app.views.Base.extend({
this.render();
// we just removed the last aspect, inform the user with a flash message
// that he is no longer sharing with that person
// that they are no longer sharing with that person
if (this.$el.find("li.selected").length === 0) {
var msg = Diaspora.I18n.t("aspect_dropdown.stopped_sharing_with", { "name": this._name() });
stopSharing = true;

View File

@@ -12,7 +12,7 @@ app.views.BackToTop = Backbone.View.extend({
backToTop: function(evt) {
evt.preventDefault();
$("html, body").animate({scrollTop: 0});
$("html, body").animate({scrollTop: 0}, this.toggleVisibility);
},
toggleVisibility: function() {

View File

@@ -0,0 +1,10 @@
// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-v3-or-Later
//= require ./publisher/mention_view
app.views.CommentMention = app.views.PublisherMention.extend({
initialize: function(opts) {
opts.url = Routes.mentionablePost(opts.postId);
app.views.PublisherMention.prototype.initialize.call(this, opts);
}
});
// @license-end

View File

@@ -7,10 +7,10 @@ app.views.CommentStream = app.views.Base.extend({
className : "comment_stream",
events: {
"keydown .comment_box": "keyDownOnCommentBox",
"keydown .comment-box": "keyDownOnCommentBox",
"submit form": "createComment",
"focus .comment_box": "commentTextareaFocused",
"click .toggle_post_comments": "expandComments"
"click .toggle_post_comments": "expandComments",
"click form": "openForm"
},
initialize: function() {
@@ -21,12 +21,24 @@ app.views.CommentStream = app.views.Base.extend({
setupBindings: function() {
this.model.comments.bind("add", this.appendComment, this);
this.model.comments.bind("remove", this.removeComment, this);
$(document.body).click(this.onFormBlur.bind(this));
},
postRenderTemplate : function() {
this.model.comments.each(this.appendComment, this);
this.commentBox = this.$(".comment_box");
this.commentBox = this.$(".comment-box");
this.commentSubmitButton = this.$("input[name='commit']");
this.mentions = new app.views.CommentMention({el: this.$el, postId: this.model.get("id")});
this.mdEditor = new Diaspora.MarkdownEditor(this.$(".comment-box"), {
onPreview: function($mdInstance) {
var renderedText = app.helpers.textFormatter($mdInstance.getContent(), this.mentions.getMentionedPeople());
return "<div class='preview-content'>" + renderedText + "</div>";
}.bind(this),
onFocus: this.openForm.bind(this)
});
this.$("form").areYouSure();
},
presenter: function(){
@@ -52,11 +64,14 @@ app.views.CommentStream = app.views.Base.extend({
success: function() {
this.commentBox.val("");
this.enableCommentBox();
this.mdEditor.hidePreview();
this.closeForm();
autosize.update(this.commentBox);
}.bind(this),
error: function() {
this.enableCommentBox();
this.commentBox.focus();
this.mdEditor.hidePreview();
this.openForm();
}.bind(this)
});
},
@@ -72,7 +87,7 @@ app.views.CommentStream = app.views.Base.extend({
},
keyDownOnCommentBox: function(evt) {
if(evt.which === Keycodes.ENTER && evt.ctrlKey) {
if (evt.which === Keycodes.ENTER && (evt.metaKey || evt.ctrlKey)) {
this.$("form").submit();
return false;
}
@@ -105,7 +120,8 @@ app.views.CommentStream = app.views.Base.extend({
// on post ownership in the Comment view.
comment.set({parent : this.model.toJSON()});
var commentHtml = new this.CommentView({model: comment}).render().el;
var commentView = new this.CommentView({model: comment});
var commentHtml = commentView.render().el;
var commentBlocks = this.$(".comments div.comment.media");
this._moveInsertPoint(comment.get("created_at"), commentBlocks);
if (this._insertPoint >= commentBlocks.length) {
@@ -115,14 +131,14 @@ app.views.CommentStream = app.views.Base.extend({
} else {
commentBlocks.eq(this._insertPoint).before(commentHtml);
}
commentView.renderPluginWidgets();
},
removeComment: function(comment) {
this.$("#" + comment.get("guid")).closest(".comment.media").remove();
},
commentTextareaFocused: function(){
this.$("form").removeClass('hidden').addClass("open");
var result = this.$("#" + comment.get("guid")).closest(".comment.media").remove();
if (result.hasClass("deleting")) {
this.model.interactions.removedComment();
}
},
expandComments: function(evt){
@@ -134,6 +150,37 @@ app.views.CommentStream = app.views.Base.extend({
this.$(".loading-comments").addClass("hidden");
}.bind(this)
});
},
openForm: function() {
this.$("form").addClass("open");
this.$(".md-editor").addClass("active");
},
closeForm: function() {
this.$("form").removeClass("open");
this.$(".md-editor").removeClass("active");
this.commentBox.blur();
autosize.update(this.commentBox);
},
isCloseAllowed: function() {
if (this.mdEditor === undefined) {
return true;
}
return !this.mdEditor.isPreviewMode() && this.mdEditor.userInputEmpty();
},
onFormBlur: function(evt) {
if (!this.isCloseAllowed()) {
return;
}
var $target = $(evt.target);
var isForm = $target.hasClass("new-comment") || $target.parents(".new-comment").length !== 0;
if (!isForm && !$target.hasClass("focus_comment_textarea")) {
this.closeForm();
}
}
});
// @license-end

View File

@@ -4,6 +4,7 @@
app.views.Comment = app.views.Content.extend({
templateName: "comment",
className : "comment media",
tooltipSelector: "time",
events : function() {
return _.extend({}, app.views.Content.prototype.events, {
@@ -20,7 +21,7 @@ app.views.Comment = app.views.Content.extend({
presenter : function() {
return _.extend(this.defaultPresenter(), {
canRemove: this.canRemove(),
text : app.helpers.textFormatter(this.model.get("text"))
text: app.helpers.textFormatter(this.model.get("text"), this.model.get("mentioned_people"))
});
},
@@ -39,6 +40,7 @@ app.views.Comment = app.views.Content.extend({
app.views.ExpandedComment = app.views.Comment.extend({
postRenderTemplate : function(){
this.bindMediaEmbedThumbClickEvent();
}
});
// @license-end

View File

@@ -4,7 +4,7 @@ app.views.Contact = app.views.Base.extend({
templateName: 'contact',
subviews: {
".aspect_membership_dropdown": "AspectMembershipView"
".aspect-membership-dropdown": "AspectMembershipView"
},
events: {

View File

@@ -17,15 +17,14 @@ app.views.Content = app.views.Base.extend({
largePhoto : function() {
var photos = this.model.get("photos");
if(!photos || photos.length === 0) { return }
if (!photos || photos.length === 0) { return false; }
return photos[0];
},
smallPhotos : function() {
var photos = this.model.get("photos");
if(!photos || photos.length < 2) { return }
photos.splice(0, 1); // remove first photo as it is already shown as largePhoto
return photos;
if (!photos || photos.length < 2) { return false; }
return photos.slice(1); // remove first photo as it is already shown as largePhoto
},
expandPost: function(evt) {
@@ -64,7 +63,29 @@ app.views.Content = app.views.Base.extend({
}
},
// This function is called when user clicks cover for HTML5 embedded video
onVideoThumbClick: function(evt) {
var clickedThumb;
if ($(evt.target).hasClass("thumb")) {
clickedThumb = $(evt.target);
} else {
clickedThumb = $(evt.target).parent(".thumb");
}
clickedThumb.find(".video-overlay").addClass("hidden");
clickedThumb.parents(".collapsed").children(".expander").click();
var video = clickedThumb.find("video");
video.attr("controls", "");
video.get(0).load();
video.get(0).play();
clickedThumb.unbind("click");
},
bindMediaEmbedThumbClickEvent: function() {
this.$(".media-embed .thumb").bind("click", this.onVideoThumbClick);
},
postRenderTemplate : function(){
this.bindMediaEmbedThumbClickEvent();
_.defer(_.bind(this.collapseOversized, this));
// run collapseOversized again after all contained images are loaded
@@ -81,7 +102,7 @@ app.views.Content = app.views.Base.extend({
});
});
var photoAttachments = this.$(".photo_attachments");
var photoAttachments = this.$(".photo-attachments");
if(photoAttachments.length > 0) {
new app.views.Gallery({ el: photoAttachments });
}
@@ -94,7 +115,9 @@ app.views.StatusMessage = app.views.Content.extend({
app.views.ExpandedStatusMessage = app.views.StatusMessage.extend({
postRenderTemplate : function(){
var photoAttachments = this.$(".photo_attachments");
this.bindMediaEmbedThumbClickEvent();
var photoAttachments = this.$(".photo-attachments");
if(photoAttachments.length > 0) {
new app.views.Gallery({ el: photoAttachments });
}

View File

@@ -24,6 +24,8 @@ app.views.ConversationsForm = app.views.Base.extend({
remoteRoute: {url: "/contacts", extraParameters: "mutual=true"}
});
this.newConversationMdEditor = this.renderMarkdownEditor("#new-message-text");
this.bindTypeaheadEvents();
this.tagListElement.empty();
@@ -31,10 +33,16 @@ app.views.ConversationsForm = app.views.Base.extend({
this.prefill(opts.prefill);
}
this.$("form#new-conversation").on("ajax:success", this.conversationCreateSuccess);
this.$("form#new-conversation").on("ajax:success", this.conversationCreateSuccess.bind(this));
this.$("form#new-conversation").on("ajax:error", this.conversationCreateError);
},
renderMarkdownEditor: function(element) {
return new Diaspora.MarkdownEditor($(element), {
onPreview: Diaspora.MarkdownEditor.simplePreview
});
},
addRecipient: function(person) {
this.conversationRecipients.push(person);
this.updateContactIdsListInput();
@@ -44,8 +52,13 @@ app.views.ConversationsForm = app.views.Base.extend({
this.setupAvatarFallback(personEl);
},
prefill: function(handles) {
handles.forEach(this.addRecipient.bind(this));
prefill: function(people) {
people.forEach(function(person) {
this.addRecipient(_.extend({
avatar: person.get("profile").avatar.small,
handle: person.get("diaspora_id")
}, person.attributes));
}, this);
},
updateContactIdsListInput: function() {
@@ -66,7 +79,7 @@ app.views.ConversationsForm = app.views.Base.extend({
},
keyDown: function(evt) {
if (evt.which === Keycodes.ENTER && evt.ctrlKey) {
if (evt.which === Keycodes.ENTER && (evt.metaKey || evt.ctrlKey)) {
$(evt.target).parents("form").submit();
}
},
@@ -84,6 +97,7 @@ app.views.ConversationsForm = app.views.Base.extend({
},
conversationCreateSuccess: function(evt, data) {
this.newConversationMdEditor.hidePreview();
app._changeLocation(Routes.conversation(data.id));
},

View File

@@ -8,11 +8,21 @@ app.views.ConversationsInbox = app.views.Base.extend({
"click .new-conversation-btn": "displayNewConversation"
},
initialize: function() {
new app.views.ConversationsForm();
initialize: function(conversationId) {
this.conversationForm = new app.views.ConversationsForm();
// Creates markdown editor in case of displaying preloaded conversation
if (conversationId != null) {
this.renderMarkdownEditor();
}
this.setupConversation();
},
renderMarkdownEditor: function() {
this.conversationForm.renderMarkdownEditor("#conversation-show .conversation-message-text");
},
renderConversation: function(conversationId) {
var self = this;
$.ajax({
@@ -23,6 +33,8 @@ app.views.ConversationsInbox = app.views.Base.extend({
self.$el.find("#conversation-show").removeClass("hidden").html(data);
self.selectConversation(conversationId);
self.setupConversation();
self.renderMarkdownEditor();
autosize(self.$("#conversation-show textarea"));
}
});
},

View File

@@ -31,12 +31,20 @@ app.views.Gallery = app.views.Base.extend({
return {
index: link,
event: event,
hidePageScrollbars: false,
disableScroll: true,
continuous: true,
toggleControlsOnReturn: false,
onopened: this.preventHideControls,
slideshowInterval: 2000
slideshowInterval: 2000,
onslidecomplete: function(index, slide) {
// If the image is very tall (more than twice its width), then it is scrollable instead of resized
var image = slide.firstElementChild;
if (image.naturalHeight > window.innerHeight && image.naturalHeight > image.naturalWidth * 2) {
image.classList.add("too-tall");
} else {
var margins = 110; // Margins are 80px for thumbnails height and 15px for top image margin + scroll-x height
image.style = "max-height: " + (window.innerHeight - margins) + "px";
}
}
};
}
});

View File

@@ -4,32 +4,36 @@ app.views.Help = app.views.StaticContentView.extend({
templateName : "help",
events : {
"click .faq-link" : "sectionClicked",
"click .faq-link-getting-help" : "gettingHelp",
"click .faq-link-sharing" : "sharing",
"click .faq-link-posts-and-posting" : "postsAndPosting",
"click .faq-link": "sectionClicked",
"click .faq-link-getting-help": "gettingHelp",
"click .faq-link-sharing": "sharing",
"click .faq-link-posts-and-posting": "postsAndPosting",
"click .faq-link-tags": "tags",
"click .faq-link-keyboard-shortcuts" : "keyboardShortcuts",
"click .faq-link-chat" : "chat"
"click .faq-link-keyboard-shortcuts": "keyboardShortcuts",
"click .faq-link-chat": "chat"
},
/* eslint-disable camelcase */
initialize : function() {
this.GETTING_HELP_SUBS = {
getting_started_a: { tutorial_series: this.linkHtml("http://diasporafoundation.org/getting_started/sign_up", Diaspora.I18n.t( 'getting_started_tutorial' )) },
get_support_a_website: { link: this.linkHtml("https://diasporafoundation.org/", Diaspora.I18n.t( 'foundation_website' ))},
get_support_a_tutorials: { tutorials: this.linkHtml("https://diasporafoundation.org/tutorials", Diaspora.I18n.t( 'tutorials' ))},
get_support_a_wiki: { link: this.linkHtml("https://wiki.diasporafoundation.org/Special:Search", Diaspora.I18n.t( 'wiki' ))},
get_support_a_irc: { irc: this.linkHtml("https://wiki.diasporafoundation.org/How_We_Communicate#IRC", Diaspora.I18n.t( 'irc' ))},
get_support_a_faq: { faq: this.linkHtml("https://wiki.diasporafoundation.org/FAQ_for_users", Diaspora.I18n.t( 'faq' ))},
get_support_a_hashtag: { question: this.linkHtml("/tags/question", "#question")}
getting_started_a: {tutorial_series: this.linkHtml("https://diasporafoundation.org/getting_started/sign_up", Diaspora.I18n.t("getting_started_tutorial"))},
get_support_a_website: {link: this.linkHtml("https://diasporafoundation.org/", Diaspora.I18n.t("foundation_website"))},
get_support_a_tutorials: {tutorials: this.linkHtml("https://diasporafoundation.org/tutorials", Diaspora.I18n.t("tutorials"))},
get_support_a_wiki: {link: this.linkHtml("https://wiki.diasporafoundation.org/Special:Search", Diaspora.I18n.t("wiki"))},
get_support_a_irc: {irc: this.linkHtml("https://wiki.diasporafoundation.org/How_We_Communicate#IRC", Diaspora.I18n.t("irc"))},
get_support_a_faq: {faq: this.linkHtml("https://wiki.diasporafoundation.org/FAQ_for_users", Diaspora.I18n.t("faq"))},
get_support_a_hashtag: {question: this.linkHtml("/tags/question", "#question")},
get_support_a_discourse: {discourse: this.linkHtml("https://discourse.diasporafoundation.org/c/support", "discussions & support")}
};
this.POSTS_AND_POSTING_SUBS = {
post_report_a: {community_guidelines: this.linkHtml("https://diasporafoundation.org/community_guidelines", Diaspora.I18n.t("community_guidelines"))},
format_text_a: {
markdown: this.linkHtml("http://diasporafoundation.org/formatting", Diaspora.I18n.t( 'markdown' )),
here: this.linkHtml("http://daringfireball.net/projects/markdown/syntax", Diaspora.I18n.t( 'here' ))
markdown: this.linkHtml("https://diasporafoundation.org/formatting", Diaspora.I18n.t("markdown")),
here: this.linkHtml("https://daringfireball.net/projects/markdown/syntax", Diaspora.I18n.t("here"))
}
};
/* eslint-enable camelcase */
this.TAGS_SUBS = {
filter_tags_a: {
@@ -53,10 +57,9 @@ app.views.Help = app.views.StaticContentView.extend({
title_pods: Diaspora.I18n.t( 'pods.title' ),
title_posts_and_posting: Diaspora.I18n.t( 'posts_and_posting.title' ),
title_private_posts: Diaspora.I18n.t( 'private_posts.title' ),
title_private_profiles: Diaspora.I18n.t( 'private_profiles.title' ),
title_public_posts: Diaspora.I18n.t( 'public_posts.title' ),
title_public_profiles: Diaspora.I18n.t( 'public_profiles.title' ),
title_resharing_posts: Diaspora.I18n.t( 'resharing_posts.title' ),
title_profile: Diaspora.I18n.t("profile.title"),
title_sharing: Diaspora.I18n.t( 'sharing.title' ),
title_tags: Diaspora.I18n.t( 'tags.title' ),
title_keyboard_shortcuts: Diaspora.I18n.t( 'keyboard_shortcuts.title' ),

View File

@@ -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();

View File

@@ -51,6 +51,12 @@ app.views.InfScroll = app.views.Base.extend({
}
},
postRenderTemplate: function() {
if (this.postViews.length > 0) {
this.$(".no-posts-info").closest(".stream-element").remove();
}
},
showNoPostsInfo: function() {
if (this.postViews.length === 0) {
var noPostsInfo = new app.views.NoPostsInfo();

View File

@@ -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",

View File

@@ -12,7 +12,7 @@ app.views.NotificationDropdown = app.views.Base.extend({
this.dropdown = $("#notification-dropdown");
this.dropdownNotifications = this.dropdown.find(".notifications");
this.ajaxLoader = this.dropdown.find(".ajax-loader");
this.perfectScrollbarInitialized = false;
this.perfectScrollbar = null;
this.dropdownNotifications.scroll(this.dropdownScroll.bind(this));
this.bindCollectionEvents();
},
@@ -26,7 +26,6 @@ app.views.NotificationDropdown = app.views.Base.extend({
toggleDropdown: function(evt){
evt.stopPropagation();
if (!$("#notifications-link .entypo-bell:visible").length) { return true; }
evt.preventDefault();
if(this.dropdownShowing()){ this.hideDropdown(evt); }
else{ this.showDropdown(); }
@@ -107,18 +106,17 @@ app.views.NotificationDropdown = app.views.Base.extend({
},
updateScrollbar: function() {
if(this.perfectScrollbarInitialized) {
this.dropdownNotifications.perfectScrollbar("update");
if (this.perfectScrollbar) {
this.perfectScrollbar.update();
} else {
this.dropdownNotifications.perfectScrollbar();
this.perfectScrollbarInitialized = true;
this.perfectScrollbar = new PerfectScrollbar(this.dropdownNotifications[0]);
}
},
destroyScrollbar: function() {
if(this.perfectScrollbarInitialized) {
this.dropdownNotifications.perfectScrollbar("destroy");
this.perfectScrollbarInitialized = false;
if (this.perfectScrollbar) {
this.perfectScrollbar.destroy();
this.perfectScrollbar = null;
}
}
});

View File

@@ -15,7 +15,7 @@ app.views.Photos = app.views.InfScroll.extend({
},
postRenderTemplate: function(){
var photoAttachments = $("#main_stream > div");
var photoAttachments = $("#main-stream > div");
if(photoAttachments.length > 0) {
new app.views.Gallery({ el: photoAttachments });
}

View File

@@ -5,7 +5,7 @@ app.views.Poll = app.views.Base.extend({
events: {
"click .submit" : "clickSubmit",
"click .toggle_result" : "toggleResult"
"click .toggle-result": "toggleResult"
},
initialize: function() {
@@ -17,15 +17,22 @@ app.views.Poll = app.views.Base.extend({
var isReshare = (this.model.get('post_type') === 'Reshare');
var showForm = defaultPresenter.loggedIn &&
!isReshare &&
!this.model.get('already_participated_in_poll');
!this.model.get("poll_participation_answer_id");
var originalPostLink = isReshare && this.model.get('root') ?
'<a href="/posts/' + this.model.get('root').id + '" class="root_post_link">' + Diaspora.I18n.t('poll.original_post') + '</a>' :
'';
var answerGiven = this.model.get("poll_participation_answer_id");
if (defaultPresenter.poll && defaultPresenter.poll.poll_answers) {
defaultPresenter.poll.poll_answers.forEach(function(answer) {
_.extend(answer, {isCurrentUserVote: answerGiven ? answer.id === answerGiven : false});
});
}
return _.extend(defaultPresenter, {
show_form: showForm,
is_reshare: isReshare,
original_post_link: originalPostLink
originalPostLink: originalPostLink
});
},
@@ -48,7 +55,7 @@ app.views.Poll = app.views.Base.extend({
percent = Math.round(answer.vote_count / participation_count * 100);
}
var progressBar = _this.$(".poll_progress_bar[data-answerid="+answer.id+"]");
var progressBar = _this.$(".progress-bar[data-answerid=" + answer.id + "]");
_this.setProgressBarData(progressBar, percent);
});
@@ -61,8 +68,8 @@ app.views.Poll = app.views.Base.extend({
pollButtons: function() {
if(!this.poll || !this.poll.post_id) {
this.$('.submit').attr('disabled', true);
this.$('.toggle_result').attr('disabled', true);
this.$(".submit").attr("disabled", true);
this.$(".toggle-result").attr("disabled", true);
}
},
@@ -76,14 +83,14 @@ app.views.Poll = app.views.Base.extend({
}
this.toggleElements();
var toggle_result = this.$('.toggle_result');
var toggleResult = this.$(".toggle-result");
if(!this.toggleMode) {
toggle_result.html(Diaspora.I18n.t("poll.close_result"));
toggleResult.html(Diaspora.I18n.t("poll.close_result"));
this.toggleMode = 1;
}
else {
toggle_result.html(Diaspora.I18n.t("poll.show_result"));
toggleResult.html(Diaspora.I18n.t("poll.show_result"));
this.toggleMode = 0;
}
},

View File

@@ -78,7 +78,8 @@ app.views.PostControls = app.views.Base.extend({
}.bind(this));
},
destroyModel: function() {
destroyModel: function(evt) {
if (evt) { evt.preventDefault(); }
this.post.destroyModel();
}
});

View File

@@ -5,7 +5,6 @@ app.views.PreviewPost = app.views.Post.extend({
className: "stream-element loaded",
subviews: {
".feedback": "feedbackView",
".post-content": "postContentView",
".oembed": "oEmbedView",
".opengraph": "openGraphView",
@@ -13,12 +12,6 @@ app.views.PreviewPost = app.views.Post.extend({
".status-message-location": "postLocationStreamView"
},
tooltipSelector: [
".timeago",
".delete",
".permalink"
].join(", "),
initialize: function() {
this.model.set("preview", true);
this.oEmbedView = new app.views.OEmbed({model: this.model});
@@ -26,10 +19,6 @@ app.views.PreviewPost = app.views.Post.extend({
this.pollView = new app.views.Poll({model: this.model});
},
feedbackView: function() {
return new app.views.Feedback({model: this.model});
},
postContentView: function() {
return new app.views.StatusMessage({model: this.model});
},

View File

@@ -4,7 +4,7 @@ app.views.ProfileHeader = app.views.Base.extend({
templateName: 'profile_header',
subviews: {
".aspect_membership_dropdown": "aspectMembershipView"
".aspect-membership-dropdown": "aspectMembershipView"
},
events: {
@@ -14,7 +14,6 @@ app.views.ProfileHeader = app.views.Base.extend({
initialize: function(opts) {
this.photos = _.has(opts, 'photos') ? opts.photos : null;
this.contacts = _.has(opts, 'contacts') ? opts.contacts : null;
this.model.on("change", this.render, this);
$("#mentionModal").on("modal:loaded", this.mentionModalLoaded.bind(this));
$("#mentionModal").on("hidden.bs.modal", this.mentionModalHidden);
@@ -24,13 +23,11 @@ app.views.ProfileHeader = app.views.Base.extend({
return _.extend({}, this.defaultPresenter(), {
show_profile_btns: this._shouldShowProfileBtns(),
show_photos: this._shouldShowPhotos(),
show_contacts: this._shouldShowContacts(),
is_blocked: this.model.isBlocked(),
is_sharing: this.model.isSharing(),
is_receiving: this.model.isReceiving(),
is_mutual: this.model.isMutual(),
has_tags: this._hasTags(),
contacts: this.contacts,
photos: this.photos
});
},
@@ -51,10 +48,6 @@ app.views.ProfileHeader = app.views.Base.extend({
return (this.photos && this.photos > 0);
},
_shouldShowContacts: function() {
return (this.contacts && this.contacts > 0);
},
showMentionModal: function() {
app.helpers.showModal("#mentionModal");
},
@@ -81,8 +74,8 @@ app.views.ProfileHeader = app.views.Base.extend({
showMessageModal: function(){
$("#conversationModal").on("modal:loaded", function() {
new app.views.ConversationsForm({prefill: gon.conversationPrefill});
});
new app.views.ConversationsForm({prefill: [this.model]});
}.bind(this));
app.helpers.showModal("#conversationModal");
}
});

View File

@@ -2,29 +2,20 @@
app.views.PublisherMention = app.views.SearchBase.extend({
triggerChar: "@",
invisibleChar: "\u200B", // zero width space
mentionRegex: /@([^@\s]+)$/,
templates: {
mentionItemSyntax: _.template("@{<%= name %> ; <%= handle %>}"),
mentionItemHighlight: _.template("<strong><span><%= name %></span></strong>")
},
mentionSyntaxTemplate: function(person) { return "@{" + person.handle + "}"; },
events: {
"keydown #status_message_fake_text": "onInputBoxKeyDown",
"input #status_message_fake_text": "onInputBoxInput",
"click #status_message_fake_text": "onInputBoxClick",
"blur #status_message_fake_text": "onInputBoxBlur"
"keydown .mention-textarea": "onInputBoxKeyDown",
"input .mention-textarea": "updateTypeaheadInput",
"click .mention-textarea": "onInputBoxClick",
"blur .mention-textarea": "onInputBoxBlur"
},
initialize: function() {
initialize: function(opts) {
this.mentionedPeople = [];
// contains the 'fake text' displayed to the user
// also has a data-messageText attribute with the original text
this.inputBox = this.$("#status_message_fake_text");
// contains the mentions displayed to the user
this.mentionsBox = this.$(".mentions-box");
var url = (opts && opts.url) || "/contacts";
this.inputBox = this.$(".mention-textarea");
this.typeaheadInput = this.$(".typeahead-mention-box");
this.bindTypeaheadEvents();
@@ -32,7 +23,7 @@ app.views.PublisherMention = app.views.SearchBase.extend({
typeaheadInput: this.typeaheadInput,
customSearch: true,
autoselect: true,
remoteRoute: {url: "/contacts"}
remoteRoute: {url: url}
});
},
@@ -55,8 +46,8 @@ app.views.PublisherMention = app.views.SearchBase.extend({
cleanMentionedPeople: function() {
var inputText = this.inputBox.val();
this.mentionedPeople = this.mentionedPeople.filter(function(person) {
return person.name && inputText.indexOf(person.name) > -1;
});
return person.handle && inputText.indexOf(this.mentionSyntaxTemplate(person)) > -1;
}.bind(this));
this.ignoreDiasporaIds = this.mentionedPeople.map(function(person) { return person.handle; });
},
@@ -70,41 +61,16 @@ app.views.PublisherMention = app.views.SearchBase.extend({
this.addPersonToMentions(person);
this.closeSuggestions();
messageText = messageText.substring(0, triggerCharPosition) +
this.invisibleChar + person.name + messageText.substring(caretPosition);
var mentionText = this.mentionSyntaxTemplate(person);
messageText = messageText.substring(0, triggerCharPosition) + mentionText + messageText.substring(caretPosition);
this.inputBox.val(messageText);
this.updateMessageTexts();
this.inputBox.focus();
var newCaretPosition = triggerCharPosition + person.name.length + 1;
var newCaretPosition = triggerCharPosition + mentionText.length;
this.inputBox[0].setSelectionRange(newCaretPosition, newCaretPosition);
},
/**
* Replaces every combination of this.invisibleChar + mention.name by the
* correct syntax for both hidden text and visible one.
*
* For instance, the text "Hello \u200Buser1" will be tranformed to
* "Hello @{user1 ; user1@pod.tld}" in the hidden element and
* "Hello <strong><span>user1</span></strong>" in the element visible to the user.
*/
updateMessageTexts: function() {
var fakeMessageText = this.inputBox.val(),
mentionBoxText = _.escape(fakeMessageText),
messageText = fakeMessageText;
this.mentionedPeople.forEach(function(person) {
var mentionName = this.invisibleChar + person.name;
messageText = messageText.replace(mentionName, this.templates.mentionItemSyntax(person));
var textHighlight = this.templates.mentionItemHighlight({name: _.escape(person.name)});
mentionBoxText = mentionBoxText.replace(mentionName, textHighlight);
}, this);
this.inputBox.data("messageText", messageText);
this.mentionsBox.find(".mentions").html(mentionBoxText);
},
updateTypeaheadInput: function() {
var messageText = this.inputBox.val();
var caretPosition = this.inputBox[0].selectionStart;
@@ -115,6 +81,8 @@ app.views.PublisherMention = app.views.SearchBase.extend({
return;
}
this.cleanMentionedPeople();
// result[1] is the string between the last '@' and the current caret position
this.typeaheadInput.typeahead("val", result[1]);
this.typeaheadInput.typeahead("open");
@@ -128,12 +96,11 @@ app.views.PublisherMention = app.views.SearchBase.extend({
prefillMention: function(persons) {
persons.forEach(function(person) {
this.addPersonToMentions(person);
var text = this.invisibleChar + person.name;
var text = this.mentionSyntaxTemplate(person);
if(this.inputBox.val().length !== 0) {
text = this.inputBox.val() + " " + text;
}
this.inputBox.val(text);
this.updateMessageTexts();
}, this);
},
@@ -154,15 +121,6 @@ app.views.PublisherMention = app.views.SearchBase.extend({
this.typeaheadInput.trigger($.Event("keydown", {keyCode: e.keyCode, which: e.which}));
},
/**
* Listens for user input and opens results dropdown when input contains the trigger char
*/
onInputBoxInput: function() {
this.cleanMentionedPeople();
this.updateMessageTexts();
this.updateTypeaheadInput();
},
onInputBoxKeyDown: function(e) {
// This also matches HOME/END on OSX which is CMD+LEFT, CMD+RIGHT
if(e.which === Keycodes.LEFT || e.which === Keycodes.RIGHT ||
@@ -205,7 +163,7 @@ app.views.PublisherMention = app.views.SearchBase.extend({
reset: function() {
this.inputBox.val("");
this.onInputBoxInput();
this.updateTypeaheadInput();
},
closeSuggestions: function() {
@@ -217,7 +175,8 @@ app.views.PublisherMention = app.views.SearchBase.extend({
return this.$(".tt-menu").is(":visible");
},
getTextForSubmit: function() {
return this.mentionedPeople.length ? this.inputBox.data("messageText") : this.inputBox.val();
getMentionedPeople: function() {
this.cleanMentionedPeople();
return this.mentionedPeople;
}
});

View File

@@ -5,7 +5,7 @@
// progress. Attaches previews of finished uploads to the publisher.
app.views.PublisherUploader = Backbone.View.extend({
allowedExtensions: ["jpg", "jpeg", "png", "gif", "tif", "tiff"],
allowedExtensions: ["jpg", "jpeg", "png", "gif"],
sizeLimit: 4194304, // bytes
initialize: function(opts) {
@@ -14,6 +14,9 @@ app.views.PublisherUploader = Backbone.View.extend({
element: this.el,
button: this.el,
text: {
fileInputTitle: Diaspora.I18n.t("photo_uploader.upload_photos")
},
request: {
endpoint: Routes.photos(),
params: {

View File

@@ -18,11 +18,11 @@ app.views.Publisher = Backbone.View.extend({
el : "#publisher",
events : {
"keydown #status_message_fake_text" : "keyDown",
"keydown #status_message_text": "keyDown",
"focus textarea" : "open",
"submit form" : "createStatusMessage",
"click #submit" : "createStatusMessage",
"textchange #status_message_fake_text": "handleTextchange",
"textchange #status_message_text": "checkSubmitAvailability",
"click #locator" : "showLocation",
"click #poll_creator" : "togglePollCreator",
"click #hide_location" : "destroyLocation",
@@ -35,9 +35,8 @@ app.views.Publisher = Backbone.View.extend({
this.disabled = false;
// init shortcut references to the various elements
this.inputEl = this.$("#status_message_fake_text");
this.hiddenInputEl = this.$("#status_message_text");
this.wrapperEl = this.$("#publisher_textarea_wrapper");
this.inputEl = this.$("#status_message_text");
this.wrapperEl = this.$("#publisher-textarea-wrapper");
this.submitEl = this.$("input[type=submit], button#submit");
this.photozoneEl = this.$("#photodropzone");
@@ -46,14 +45,6 @@ app.views.Publisher = Backbone.View.extend({
$(window).on("beforeunload", _.bind(this._beforeUnload, this));
$(window).on("unload", this.clear.bind(this));
// sync textarea content
if( this.hiddenInputEl.val() === "" ) {
this.hiddenInputEl.val( this.inputEl.val() );
}
if( this.inputEl.val() === "" ) {
this.inputEl.val( this.hiddenInputEl.val() );
}
// hide close and preview buttons and manage services link
// in case publisher is standalone
// (e.g. bookmarklet, mentions popup)
@@ -96,7 +87,7 @@ app.views.Publisher = Backbone.View.extend({
},
initSubviews: function() {
this.mention = new app.views.PublisherMention({ el: this.$("#publisher_textarea_wrapper") });
this.mention = new app.views.PublisherMention({ el: this.$("#publisher-textarea-wrapper") });
if(this.prefillMention) {
this.mention.prefillMention([this.prefillMention]);
}
@@ -110,14 +101,14 @@ app.views.Publisher = Backbone.View.extend({
});
this.viewAspectSelector = new app.views.PublisherAspectSelector({
el: this.$(".public_toggle .aspect_dropdown"),
el: this.$(".public_toggle .aspect-dropdown"),
form: form
});
this.viewGettingStarted = new app.views.PublisherGettingStarted({
firstMessageEl: this.inputEl,
visibilityEl: this.$(".public_toggle .aspect_dropdown > .dropdown-toggle"),
streamEl: $("#main_stream")
visibilityEl: this.$(".public_toggle .aspect-dropdown > .dropdown-toggle"),
streamEl: $("#main-stream")
});
this.viewUploader = new app.views.PublisherUploader({
@@ -138,7 +129,7 @@ app.views.Publisher = Backbone.View.extend({
},
onPostPreview: function() {
var photoAttachments = self.wrapperEl.find(".photo_attachments");
var photoAttachments = self.wrapperEl.find(".photo-attachments");
if (photoAttachments.length > 0) {
new app.views.Gallery({el: photoAttachments});
}
@@ -163,7 +154,7 @@ app.views.Publisher = Backbone.View.extend({
this.viewPollCreator.render();
if (this.prefillMention) {
this.handleTextchange();
this.checkSubmitAvailability();
}
},
@@ -175,12 +166,11 @@ app.views.Publisher = Backbone.View.extend({
// inject content into the publisher textarea
setText: function(txt) {
this.inputEl.val(txt);
this.hiddenInputEl.val(txt);
this.prefillText = txt;
this.inputEl.trigger("input");
autosize.update(this.inputEl);
this.handleTextchange();
this.checkSubmitAvailability();
},
// show the "getting started" popups around the publisher
@@ -188,6 +178,9 @@ app.views.Publisher = Backbone.View.extend({
if (gon.preloads.getting_started) {
this.open();
this.viewGettingStarted.show();
if (gon.preloads.mentioned_person) {
this.mention.addPersonToMentions(gon.preloads.mentioned_person);
}
}
},
@@ -202,9 +195,6 @@ app.views.Publisher = Backbone.View.extend({
// empty poll answer and failing validation.
this.viewPollCreator.removeLastAnswer();
//add missing mentions at end of post:
this.handleTextchange();
var serializedForm = $(evt.target).closest("form").serializeObject();
// disable input while posting, must be after the form is serialized
this.setInputEnabled(false);
@@ -255,7 +245,7 @@ app.views.Publisher = Backbone.View.extend({
self.setButtonsEnabled(true);
self.setInputEnabled(true);
self.wrapperEl.removeClass("submitting");
self.handleTextchange();
self.checkSubmitAvailability();
autosize.update(self.inputEl);
}
});
@@ -330,13 +320,8 @@ app.views.Publisher = Backbone.View.extend({
},
createPostPreview: function() {
//add missing mentions at end of post:
this.handleTextchange();
var serializedForm = $("#new_status_message").serializeObject();
var text = this.mention.getTextForSubmit();
var photos = this.getUploadedPhotos();
var mentionedPeople = this.mention.mentionedPeople;
var poll = this.getPollData(serializedForm);
var locationCoords = serializedForm["location[coords]"];
if(!locationCoords || locationCoords === "") {
@@ -352,12 +337,12 @@ app.views.Publisher = Backbone.View.extend({
var previewMessage = {
"id": 0,
"text": text,
"text": serializedForm["status_message[text]"],
"public": serializedForm["aspect_ids[]"] === "public",
"created_at": new Date().toISOString(),
"interacted_at": new Date().toISOString(),
"author": app.currentUser ? app.currentUser.attributes : {},
"mentioned_people": mentionedPeople,
"mentioned_people": this.mention.getMentionedPeople(),
"photos": photos,
"title": serializedForm["status_message[text]"],
"location": location,
@@ -366,11 +351,11 @@ 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) {
if(evt.which === Keycodes.ENTER && evt.ctrlKey) {
if (evt.which === Keycodes.ENTER && (evt.metaKey || evt.ctrlKey)) {
this.$("form").submit();
this.open();
return false;
@@ -381,11 +366,10 @@ app.views.Publisher = Backbone.View.extend({
// remove mentions
this.mention.reset();
// clear text(s)
// clear text
this.inputEl.val("");
this.hiddenInputEl.val("");
this.inputEl.trigger("keyup")
.trigger("keydown");
.trigger("keydown");
autosize.update(this.inputEl);
// remove photos
@@ -421,14 +405,13 @@ app.views.Publisher = Backbone.View.extend({
// force textchange plugin to update lastValue
this.inputEl.data("lastValue", "");
this.hiddenInputEl.data("lastValue", "");
return this;
},
tryClose : function(){
// if it is not submittable, close it.
if( !this._submittable() ){
// if it is not submittable and not in preview mode, close it.
if (!this._submittable() && !this.markdownEditor.isPreviewMode()) {
this.close();
}
},
@@ -472,8 +455,7 @@ app.views.Publisher = Backbone.View.extend({
setEnabled: function(bool) {
this.setInputEnabled(bool);
this.disabled = !bool;
this.handleTextchange();
this.checkSubmitAvailability();
},
setButtonsEnabled: function(bool) {
@@ -487,10 +469,8 @@ app.views.Publisher = Backbone.View.extend({
setInputEnabled: function(bool) {
if (bool) {
this.inputEl.removeAttr("disabled");
this.hiddenInputEl.removeAttr("disabled");
} else {
this.inputEl.prop("disabled", true);
this.hiddenInputEl.prop("disabled", true);
}
},
@@ -503,11 +483,6 @@ app.views.Publisher = Backbone.View.extend({
return (!onlyWhitespaces || isPhotoAttached) && isValidPoll && !this.disabled;
},
handleTextchange: function() {
this.checkSubmitAvailability();
this.hiddenInputEl.val(this.mention.getTextForSubmit());
},
_beforeUnload: function(e) {
if(this._submittable() && this.inputEl.val() !== this.prefillText){
var confirmationMessage = Diaspora.I18n.t("confirm_unload");

View File

@@ -26,8 +26,8 @@ app.views.SinglePostActions = app.views.Feedback.extend({
},
focusComment: function() {
$('.comment_stream .comment_box').focus();
$('html,body').animate({scrollTop: $('.comment_stream .comment_box').offset().top - ($('.comment_stream .comment_box').height() + 20)});
$('.comment_stream .comment-box').focus();
$('html,body').animate({scrollTop: $('.comment_stream .comment-box').offset().top - ($('.comment_stream .comment-box').height() + 20)});
return false;
},

View File

@@ -7,7 +7,9 @@ app.views.SinglePostCommentStream = app.views.CommentStream.extend({
this.CommentView = app.views.ExpandedComment;
$(window).on('hashchange',this.highlightPermalinkComment);
this.setupBindings();
this.model.comments.on("reset", this.render, this);
this.model.comments.fetch({success: function() {
setTimeout(this.highlightPermalinkComment, 0);
}.bind(this)});
},
highlightPermalinkComment: function() {
@@ -17,14 +19,13 @@ app.views.SinglePostCommentStream = app.views.CommentStream.extend({
$(".highlighted").removeClass("highlighted");
element.addClass("highlighted");
var pos = element.offset().top - headerSize;
window.scroll(0, pos);
$("html,body").animate({scrollTop: pos});
}
},
postRenderTemplate: function() {
app.views.CommentStream.prototype.postRenderTemplate.apply(this);
this.$(".new-comment-form-wrapper").removeClass("hidden");
_.defer(this.highlightPermalinkComment);
},
presenter: function(){

View File

@@ -36,8 +36,9 @@ app.views.SinglePostContent = app.views.Base.extend({
var map = L.map(mapContainer[0]).setView([location.lat, location.lng], 14);
var tiles = app.helpers.locations.getTiles();
tiles.addTo(map);
if (tiles) {
tiles.addTo(map);
}
// put marker on map
L.marker(location).addTo(map);

View File

@@ -4,8 +4,15 @@ app.views.SinglePostInteractionCounts = app.views.Base.extend({
templateName: "single-post-viewer/single-post-interaction-counts",
tooltipSelector: ".avatar.micro",
events: {
"click #show-all-likes": "showAllLikes",
"click #show-all-reshares": "showAllReshares"
},
initialize: function() {
this.model.interactions.on("change", this.render, this);
this.model.interactions.likes.on("change", this.render, this);
this.model.interactions.reshares.on("change", this.render, this);
},
presenter: function() {
@@ -15,8 +22,28 @@ app.views.SinglePostInteractionCounts = app.views.Base.extend({
reshares: interactions.reshares.toJSON(),
commentsCount: interactions.commentsCount(),
likesCount: interactions.likesCount(),
resharesCount: interactions.resharesCount()
resharesCount: interactions.resharesCount(),
showMoreLikes: interactions.likes.length < interactions.likesCount(),
showMoreReshares: interactions.reshares.length < interactions.resharesCount()
};
},
_showAll: function(interactionType, models) {
this.$("#show-all-" + interactionType).addClass("hidden");
this.$("#" + interactionType + " .loader").removeClass("hidden");
models.fetch({success: function() {
models.trigger("change");
}});
},
showAllLikes: function(evt) {
evt.preventDefault();
this._showAll("likes", this.model.interactions.likes);
},
showAllReshares: function(evt) {
evt.preventDefault();
this._showAll("reshares", this.model.interactions.reshares);
}
});
// @license-end

View File

@@ -88,7 +88,7 @@ app.views.StreamPost = app.views.Post.extend({
focusCommentTextarea: function(evt){
evt.preventDefault();
this.$(".new-comment-form-wrapper").removeClass("hidden");
this.$(".comment_box").focus();
this.$(".comment-box").focus();
return this;
}

View File

@@ -25,7 +25,7 @@ app.views.Stream = app.views.InfScroll.extend({
markNavSelected : function() {
var activeStream = Backbone.history.fragment;
var streamSelection = $("#stream_selection");
var streamSelection = $("#stream-selection");
streamSelection.find("[data-stream]").removeClass("selected");
streamSelection.find("[data-stream='" + activeStream + "']").addClass("selected");

View File

@@ -48,7 +48,7 @@ app.views.TagFollowingList = app.views.Base.extend({
if(evt){ evt.preventDefault(); }
var name = this.$(".tag_input").val();
// compare tag_text_regexp in app/models/acts_as_taggable_on-tag.rb
// compare tag_text_regexp in config/initializers/acts_as_taggable_on.rb
var normalizedName = (name === "<3" ? name : name.replace(
new RegExp("[^" + PosixBracketExpressions.alnum + "_\\-]+", "gi"), "").toLowerCase());

View File

@@ -9,7 +9,7 @@ var List = {
},
handleSearchRefresh: function( data ) {
var streamEl = $("#people_stream.stream");
var streamEl = $("#people-stream.stream");
var string = data.search_html || $("<p>", {
text : Diaspora.I18n.t("people.not_found")
});
@@ -18,7 +18,7 @@ var List = {
if (data.contacts) {
var contacts = new app.collections.Contacts(data.contacts);
$(".aspect_membership_dropdown.placeholder").each(function() {
$(".aspect-membership-dropdown.placeholder").each(function() {
var personId = $(this).data("personId");
var view = new app.views.AspectMembership({person: contacts.findWhere({"person_id": personId}).person});
$(this).html(view.render().$el);

View File

@@ -9,7 +9,8 @@ Diaspora.MarkdownEditor.prototype = {
this.options = {
resize: "none",
onHidePreview: $.noop,
onPostPreview: $.noop
onPostPreview: $.noop,
onChange: function(e) { autosize.update(e.$textarea); }
};
$.extend(this.options, opts);
@@ -130,6 +131,14 @@ Diaspora.MarkdownEditor.prototype = {
}
},
isPreviewMode: function() {
return this.instance !== undefined && this.instance.$editor.find(".md-preview").length > 0;
},
userInputEmpty: function() {
return this.instance === undefined || this.instance.getContent().length === 0;
},
localize: function() {
var locale = Diaspora.I18n.language;
@@ -160,3 +169,7 @@ Diaspora.MarkdownEditor.prototype = {
return locale;
}
};
Diaspora.MarkdownEditor.simplePreview = function($mdInstance) {
return "<div class='preview-content'>" + app.helpers.textFormatter($mdInstance.getContent()) + "</div>";
};

View File

@@ -78,6 +78,10 @@ Diaspora.ProfilePhotoUploader.prototype = {
alert(errorReason);
}
}
},
text: {
fileInputTitle: ""
}
});
}

View File

@@ -0,0 +1,21 @@
// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-v3-or-Later
Diaspora.ProtocolHandler = {
register: function() {
if (!window.navigator.registerProtocolHandler) {
return false;
}
try {
window.navigator.registerProtocolHandler(
"web+diaspora",
[window.location.protocol, "//", window.location.host, "/link?q=%s"].join(""),
gon.appConfig.settings.podname
);
} catch (_) {
return false;
}
return true;
}
};

View File

@@ -1,6 +0,0 @@
// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-v3-or-Later
document.createElement('header');
document.createElement('footer');
// @license-end

View File

@@ -1,6 +1,5 @@
//= require jquery2
//= require jquery3
//= require handlebars.runtime
//= require templates
//= require main
//= require fine-uploader/fine-uploader.core
//= require mobile/mobile

View File

@@ -1,5 +1,5 @@
//= require emojione
//= require favico.js
//= require favico.js/favico
//= require jquery.ui/ui/resizable
//= require jquery.ui/ui/draggable

View File

@@ -9,23 +9,26 @@
//= require autosize
//= require charcount
//= require jquery-placeholder
//= require rails-timeago
//= require jquery-ui/core
//= require jquery-ui/widget
//= require jquery-ui/mouse
//= require jquery-ui/sortable
//= require jquery.timeago
//= require jquery.ui/ui/core
//= require jquery.ui/ui/widget
//= require jquery.ui/ui/mouse
//= require jquery.ui/ui/sortable
//= require keycodes
//= require jquery.autoSuggest.custom
//= require fine-uploader/fine-uploader.core
//= require handlebars.runtime
//= require_tree ../templates
//= require posix-bracket-expressions
//= 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
//= require markdown-it-sup
//= require markdown-it-html5-embed
//= require highlightjs
//= require clear-form
//= require corejs-typeahead
@@ -41,5 +44,7 @@
//= require blueimp-gallery/blueimp-gallery-indicator
//= require leaflet
//= require api/authorization_page
// = require bootstrap-markdown/bootstrap-markdown
// = require helpers/markdown_editor
//= require bootstrap-markdown/bootstrap-markdown
//= require helpers/markdown_editor
//= require helpers/protocol_handler
//= require jquery.are-you-sure

View File

@@ -6,16 +6,21 @@ $(document).ready(function() {
return params.content;
}
var content = params.title + " - " + params.url;
if (params.notes.length > 0) {
content += " - " + params.notes;
var separator = "\n\n";
var contents = "### " + params.title + separator;
if (params.notes) {
var notes = params.notes.toString().replace(/(?:\r\n|\r|\n)/g, "\n> ");
contents += "> " + notes + separator;
}
return content;
contents += params.url;
return contents;
}
var content = publisherContent(gon.preloads.bookmarklet);
if (content.length > 0) {
$("#status_message_text").val(content);
var textarea = $("#status_message_text");
textarea.val(content);
autosize.update(textarea);
}
});
// @license-end

View File

@@ -1,9 +1,9 @@
// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-v3-or-Later
/* Copyright (c) 2010-2011, Diaspora Inc. This file is
* licensed under the Affero General Public License version 3 or later. See
* the COPYRIGHT file.
*/
// @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL-v3-or-Later
//= require jquery-textchange
//= require charcount
//= require js-routes
@@ -11,13 +11,15 @@
//= require keycodes
//= require jquery.autoSuggest.custom
//= require fine-uploader/fine-uploader.core
//= require rails-timeago
//= require jquery.timeago
//= require underscore
//= require bootstrap
//= require diaspora
//= require helpers/i18n
//= require helpers/profile_photo_uploader
//= require helpers/tags_autocomplete
//= require bootstrap-markdown/bootstrap-markdown
//= require helpers/markdown_editor
//= require widgets/timeago
//= require mobile/mobile_application
//= require mobile/mobile_file_uploader

View File

@@ -11,6 +11,8 @@
initialize: function() {
var self = this;
new Diaspora.MarkdownEditor(".comment-box");
this.stream().on("tap click", "a.show-comments", function(evt){
evt.preventDefault();
self.toggleComments($(this));
@@ -35,13 +37,13 @@
self.scrollToOffset(commentContainer);
});
this.stream().on("submit", ".new_comment", this.submitComment);
this.stream().on("submit", ".new-comment", this.submitComment);
},
submitComment: function(evt){
evt.preventDefault();
var form = $(this);
var commentBox = form.find(".comment_box");
var commentBox = form.find(".comment-box");
var commentText = $.trim(commentBox.val());
if(!commentText){
commentBox.focus();
@@ -167,7 +169,7 @@
showCommentBox: function(link){
var bottomBar = link.closest(".bottom-bar").first();
var textArea = bottomBar.find("textarea.comment_box").first()[0];
var textArea = bottomBar.find("textarea.comment-box").first()[0];
bottomBar.find(".add-comment-switcher").removeClass("hidden");
autosize(textArea);
},
@@ -183,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);
},
@@ -201,7 +203,7 @@
increaseReactionCount: function(bottomBar) {
var toggleReactionsLink = bottomBar.find(".show-comments").first();
var count = toggleReactionsLink.text().match(/.*(\d+).*/);
count = parseInt(count, 10);
count = parseInt(count, 10) || 0;
var text = Diaspora.I18n.t("stream.comments", {count: count + 1});
// No previous comment
@@ -210,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");
}

View File

@@ -1,6 +1,7 @@
(function() {
Diaspora.Mobile.Conversations = {
initialize: function() {
new Diaspora.MarkdownEditor(".conversation-message-text");
if (Diaspora.Page !== "ConversationsNew") { return; }
$(document).on("ajax:success", "form#new-conversation", this.conversationCreateSuccess);
$(document).on("ajax:error", "form#new-conversation", this.conversationCreateError);

View File

@@ -1,17 +1,11 @@
(function(){
(function() {
Diaspora.Mobile.Drawer = {
initialize: function(){
$("#all_aspects").bind("tap click", function(evt){
evt.preventDefault();
$(this).find("+ li").toggleClass("hide");
});
$("#menu-badge").bind("tap click", function(evt){
initialize: function() {
$("#menu-badge").bind("tap click", function(evt) {
evt.preventDefault();
$("#app").toggleClass("draw");
});
$("#followed_tags").bind("tap click", function(evt){
$("#all_aspects, #followed_tags, #admin").bind("tap click", function(evt) {
evt.preventDefault();
$(this).find("+ li").toggleClass("hide");
});

View File

@@ -19,10 +19,13 @@ function createUploader(){
}
},
validation: {
allowedExtensions: ["jpg", "jpeg", "png", "gif", "tif", "tiff"],
allowedExtensions: ["jpg", "jpeg", "png", "gif"],
sizeLimit: 4194304
},
button: document.getElementById("file-upload-publisher"),
text: {
fileInputTitle: Diaspora.I18n.t("photo_uploader.upload_photos")
},
callbacks: {
onProgress: function(id, fileName, loaded, total) {
@@ -30,8 +33,7 @@ function createUploader(){
$("#fileInfo-publisher").text(fileName + " " + progress + "%");
},
onSubmit: function() {
$("#file-upload-publisher").addClass("loading");
$("#publisher_textarea_wrapper").addClass("with_attachments");
$("#publisher-textarea-wrapper").addClass("with_attachments");
$("#photodropzone").append(
"<li class='publisher_photo loading' style='position:relative;'>" +
"<img alt='Ajax-loader2' src='" + ImagePaths.get("ajax-loader2.gif") + "' />" +
@@ -48,7 +50,7 @@ function createUploader(){
url = responseJSON.data.photo.unprocessed_image.url,
currentPlaceholder = $("li.loading").first();
$("#publisher_textarea_wrapper").addClass("with_attachments");
$("#publisher-textarea-wrapper").addClass("with_attachments");
$("#new_status_message").append("<input type='hidden' value='" + id + "' name='photos[]' />");
// replace image placeholders
@@ -74,7 +76,7 @@ function createUploader(){
photo.fadeOut(400, function() {
photo.remove();
if ($(".publisher_photo").length === 0) {
$("#publisher_textarea_wrapper").removeClass("with_attachments");
$("#publisher-textarea-wrapper").removeClass("with_attachments");
}
});
}

View File

@@ -75,7 +75,7 @@
onLike: function(evt){
evt.preventDefault();
var link = $(evt.target),
var link = $(evt.target).closest(".like-action"),
likeCounter = $(evt.target).closest(".stream-element").find(".like-count");
if(!link.hasClass("loading") && link.hasClass("inactive")) {
@@ -89,7 +89,7 @@
onReshare: function(evt) {
evt.preventDefault();
var link = $(this),
var link = $(this).closest(".reshare-action"),
href = link.attr("href"),
confirmText = link.attr("title");
@@ -103,6 +103,10 @@
},
success: function() {
Diaspora.Mobile.PostActions.toggleActive(link);
var reshareCounter = $(evt.target).closest(".stream-element").find(".reshare-count");
if (reshareCounter) {
reshareCounter.text(parseInt(reshareCounter.text(), 10) + 1);
}
},
error: function(response) {
Diaspora.Mobile.Alert.handleAjaxError(response);

View File

@@ -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
@@ -46,4 +46,6 @@ $(document).ready(function(){
evt.preventDefault();
$("#new_status_message").submit();
});
new Diaspora.MarkdownEditor("#status_message_text");
});

View File

@@ -5,12 +5,12 @@ OSM = {};
OSM.Locator = function(){
var geolocalize = function(callback){
navigator.geolocation.getCurrentPosition(function(position) {
navigator.geolocation.getCurrentPosition(function(position) {
var lat=position.coords.latitude,
lon=position.coords.longitude;
$.getJSON("https://nominatim.openstreetmap.org/reverse?format=json&lat="+lat+"&lon="+lon+"&addressdetails=3", function(data){
return callback(data.display_name, position.coords);
});
});
},errorGettingPosition);
};

View File

@@ -1,5 +0,0 @@
/* Copyright (c) 2010-2011, Diaspora Inc. This file is
* licensed under the Affero General Public License version 3 or later. See
* the COPYRIGHT file.
*/
//= require_tree ../templates

View File

@@ -26,6 +26,12 @@
}
});
}
$.timeago.settings.autoDispose = false;
$(function() {
$("time[data-time-ago]").timeago();
});
});
};
})();

View File

@@ -1,4 +1,4 @@
@import 'perfect-scrollbar';
@import 'utatti-perfect-scrollbar/css/perfect-scrollbar';
@import 'color-variables';
@import 'bootstrap-complete';
@@ -9,16 +9,13 @@
@import 'media-box';
@import 'entypo';
@import 'icons';
@import 'mentions';
@import 'animations';
@import 'flash_messages';
@import 'sprites';
@import 'hovercard';
@import 'base';
@import 'interactions';
@import 'spinner';
@import 'timeago';
@import 'vendor/fileuploader';
@import 'vendor/autoSuggest';
@import 'typeahead';
@import 'colors';
@@ -89,6 +86,7 @@
@import 'chat';
@import 'markdown-content';
@import 'oembed';
@import 'media-embed';
@import 'post-content';
// contacts

View File

@@ -2,9 +2,9 @@
@import 'bootstrap-variables';
@import 'animations';
/** ADMIN STYlES **/
/** user search **/
// ADMIN STYlES
// user search
.users {
li.user {
border-bottom: 1px solid $light-grey;
@@ -16,15 +16,14 @@
.avatar {
width: 50px;
height: 50px;
max-width: none;
}
.actions{ width: 150px; }
.pull-right .label{ display: inline-block; }
}
}
/** Invites panel **/
// Invites panel
.more_invites{
#add-invites-section{
line-height: 34px;
@@ -32,12 +31,49 @@
}
}
/** reported posts **/
.invite-emails {
margin-bottom: 10px;
}
@import 'report';
// Weekly stats
.week-selector {
margin-top: 10px;
}
/** pod list **/
// Pod stats
.segment-selection {
select,
[type=submit] {
margin-top: 10px;
}
}
.percent-change {
&.increase {
color: $increase;
}
&.decrease {
color: $decrease;
}
}
// reported posts
.reports {
.reason-label {
font-weight: bold;
}
.content {
padding-bottom: 20px;
}
.panel-body .btn-info {
margin-right: 5px;
}
}
// pod list
#pod-list {
.pod-title {
max-width: 200px;

View File

@@ -1,4 +1,4 @@
.aspect_dropdown {
.aspect-dropdown {
li {
@include selectable-list;
@@ -21,3 +21,7 @@
}
}
}
.aspect-membership {
max-height: 300px;
overflow: auto;
}

View File

@@ -10,14 +10,15 @@ body {
.page-contacts,
.page-conversations,
.page-notifications,
.page-people.action-show,
.page-people.action-contacts,
.page-people.action-show,
.page-photos,
.page-posts,
.page-profiles.action-edit,
.page-services.action-index,
.page-streams,
.page-tags,
.page-two_factor_authentications,
.page-user_applications,
.page-users.action-edit,
.page-users.action-update,
@@ -70,20 +71,29 @@ pre { word-wrap: break-word; }
height: 50px;
line-height: 50px;
opacity: 0;
pointer-events: none;
position: fixed;
right: 54px;
right: 20px;
text-decoration: none;
transition: opacity ease 400ms;
width: 50px;
z-index: 49;
&:hover,
&.visible:hover {
&:focus,
&:active {
color: $white;
opacity: .85;
text-decoration: none;
}
&.visible { opacity: .5; }
&.visible {
opacity: .5;
pointer-events: auto;
&:hover {
opacity: .85;
}
}
}
.noscript {

View File

@@ -1,7 +1,7 @@
// Calling this file bootstrap would cause an infinite recursion during asset compilation.
@import "bootstrap-sprockets";
@import "bootstrap-variables"; //our overwrites of bootstrap variables
@import "bootstrap";
@import "_bootstrap";
// Plugins

View File

@@ -32,3 +32,6 @@ $left-navbar-drawer-background: darken($white, 6%) !default;
$hovercard-background: $white !default;
$card-shadow: 0 1px 2px 0 rgba(0, 0, 0, .16), 0 2px 10px 0 rgba(0, 0, 0, .12) !default;
$increase: #008000;
$decrease: #fe0000;

View File

@@ -1,12 +1,10 @@
/* Raw CSS */
body {
#publisher_textarea_wrapper > #button_container > span.markdownIndications > a {
#publisher-textarea-wrapper > #button_container > span.markdownIndications > a {
color: fade-out($link-color, 0.4);
}
.left-navbar .hoverable:hover { background-color: $main-color-essence; }
.poll_form .progress .bar { background-color: $main-color-dark; }
.badge { background-color: $brand-primary; }
}

View File

@@ -1,31 +1,28 @@
// Only overriding existing selectors here, so disable some lint rules
// scss-lint:disable IdSelector, SelectorFormat, NestingDepth, SelectorDepth, QualifyingElement
body {
.navbar.navbar-fixed-top #user_menu .dropdown-menu > li > a {
color: $text-color;
&:hover { color: $white; }
}
.publisher {
.mentions-input-box { background-color: $gray; }
form {
#publisher_textarea_wrapper { background-color: $gray; }
#publisher-textarea-wrapper { background-color: $gray; }
.btn.btn-link.question_mark:hover .entypo-cog { color: $gray-light; }
}
.write-preview-tabs > li.active * { color: $text-color; }
.md-preview { background-color: $gray; }
.md-cancel:hover .entypo-cross { color: $gray-light; }
.publisher-buttonbar .btn.btn-link:hover i { color: $gray-light; }
}
.aspect_dropdown li a .text { color: $dropdown-link-color; }
.write-preview-tabs > li.active * { color: $text-color; }
.md-cancel:hover .entypo-cross { color: $gray-light; }
.md-input,
.md-preview { background-color: $gray; }
.aspect-dropdown li a .text { color: $dropdown-link-color; }
.info .tag { background-color: $gray-light; }
.poll_form .progress {
.poll-form .progress {
background-color: $gray-dark;
.bar { background-color: $gray-light; }
.progress-bar { background-color: $gray-light; }
.users-vote { background-color: $brand-primary; }
}
.stream-element .collapsible {
@@ -58,13 +55,13 @@ 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; }
#contacts_container #people_stream.contacts .stream-element.in_aspect {
#contacts_container #people-stream.contacts .stream-element.in_aspect {
background-color: $state-success-bg;
border-left: 3px solid darken($state-success-bg, 10%);
}
@@ -96,6 +93,7 @@ body {
#welcome-to-diaspora { background: $orange; }
.md-editor,
.block-form fieldset .form-control:focus { border-color: $input-border; }
&.page-registrations.action-new,

View File

@@ -1,5 +1,5 @@
body {
#main_stream .stream-element {
#main-stream .stream-element {
border: 0;
border-bottom: 1px solid $border-grey;
margin-bottom: 10px;

View File

@@ -59,7 +59,8 @@ $dropdown-link-hover-color: $dropdown-link-color;
//== Navbar
$navbar-inverse-bg: $gray-darker;
$navbar-inverse-link-hover-color: $text-color;
$navbar-inverse-link-color: $gray-lighter;
$navbar-inverse-link-hover-color: $white;
$navbar-inverse-brand-hover-color: $navbar-inverse-link-hover-color;
//== Tabs

View File

@@ -44,24 +44,55 @@
}
}
.permalink {
@include transition(opacity);
opacity: 0;
}
.comment:hover .permalink {
opacity: .8;
&:hover {
opacity: 1;
}
}
.comment.new-comment-form-wrapper { padding-bottom: 0; }
.submit_button {
.submit-button {
margin-top: 10px;
input {
float: right;
}
padding-left: 12px;
display: none;
}
.comment_box {
.comment-box {
height: 35px;
resize: none;
}
textarea.comment_box:focus, textarea.comment_box:valid, textarea.comment_box:active {
textarea.comment-box:focus, textarea.comment-box:valid, textarea.comment-box:active {
border-color: $border-dark-grey;
& + .submit_button { display: block; }
min-height: 35px;
box-shadow: none;
}
.twitter-typeahead {
// typeahead sets this to `display: inline-block` which adds additional space between
// the comment textarea and the submit button.
// scss-lint:disable ImportantRule
display: block !important;
// scss-lint:enable ImportantRule
}
}
.new-comment {
&:not(.open) .submit-button,
&:not(.open) .md-header {
display: none;
}
// The rule for .md-preview is required until we switch to the newer release of bootstrap-markdown with
// the following commit in:
// https://github.com/toopay/bootstrap-markdown/commit/14a21c3837140144b27efc19c795d1a37fad70fb
.md-preview,
&.open .md-editor textarea { min-height: 70px; }
}

View File

@@ -21,7 +21,7 @@
}
#contacts_container {
#people_stream.contacts {
#people-stream.contacts {
.header {
#change_aspect_name { cursor: pointer; }
#aspect_name_form {

View File

@@ -65,7 +65,7 @@
&:hover:not(.selected), &.selected {
.subject,
.last_author,
.last-author,
.last_message {
color: $white;
}
@@ -86,14 +86,14 @@
&.unread { background-color: $background-grey; }
&.selected { background-color: $brand-primary; }
.last_author, .last_message {
.last-author, .last_message {
font-size: 12px;
line-height: 15px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.last_author { color: $text-dark-grey; }
.last-author { color: $text-dark-grey; }
.message-count, .unread-message-count {
margin-left: 3px;
@@ -148,7 +148,7 @@
}
}
.stream_container .conversation-participants {
.stream-container .conversation-participants {
margin-bottom: 20px;
.hide_conversation, .delete_conversation {
@@ -238,3 +238,9 @@
}
.new-conversation.form-horizontal .form-group:last-of-type { margin-bottom: 0; }
// This rule is required until we switch to the newer release of bootstrap-markdown with
// the following commit in: https://github.com/toopay/bootstrap-markdown/commit/14a21c3837140144b27efc19c795d1a37fad70fb
.conversations-form-container .md-preview {
min-height: 105px;
}

Some files were not shown because too many files have changed in this diff Show More