Преглед на файлове

Add /api/v1/notifications/clear, non-existing link cards for statuses will

now return empty hash instead of throwing a 404 error. When following,
merge into timeline will filter statuses
master
Eugen Rochko преди 7 години
родител
ревизия
f392030ab8
променени са 5 файла, в които са добавени 21 реда и са изтрити 11 реда
  1. +3
    -4
      app/assets/javascripts/components/actions/cards.jsx
  2. +5
    -0
      app/controllers/api/v1/notifications_controller.rb
  3. +2
    -1
      app/controllers/api/v1/statuses_controller.rb
  4. +1
    -0
      app/lib/feed_manager.rb
  5. +10
    -6
      config/routes.rb

+ 3
- 4
app/assets/javascripts/components/actions/cards.jsx Целия файл

@@ -9,13 +9,12 @@ export function fetchStatusCard(id) {
dispatch(fetchStatusCardRequest(id));

api(getState).get(`/api/v1/statuses/${id}/card`).then(response => {
dispatch(fetchStatusCardSuccess(id, response.data));
}).catch(error => {
if (error.response.status === 404) {
// This is fine
if (response.data.length === 0) {
return;
}

dispatch(fetchStatusCardSuccess(id, response.data));
}).catch(error => {
dispatch(fetchStatusCardFail(id, error));
});
};


+ 5
- 0
app/controllers/api/v1/notifications_controller.rb Целия файл

@@ -24,4 +24,9 @@ class Api::V1::NotificationsController < ApiController
def show
@notification = Notification.where(account: current_account).find(params[:id])
end

def clear
Notification.where(account: current_account).delete_all
render_empty
end
end

+ 2
- 1
app/controllers/api/v1/statuses_controller.rb Целия файл

@@ -22,7 +22,8 @@ class Api::V1::StatusesController < ApiController
end

def card
@card = PreviewCard.find_by!(status: @status)
@card = PreviewCard.find_by(status: @status)
render_empty if @card.nil?
end

def reblogged_by


+ 1
- 0
app/lib/feed_manager.rb Целия файл

@@ -43,6 +43,7 @@ class FeedManager
timeline_key = key(:home, into_account.id)

from_account.statuses.limit(MAX_ITEMS).each do |status|
next if filter?(:home, status, into_account)
redis.zadd(timeline_key, status.id, status.id)
end



+ 10
- 6
config/routes.rb Целия файл

@@ -103,10 +103,11 @@ Rails.application.routes.draw do
get '/timelines/public', to: 'timelines#public', as: :public_timeline
get '/timelines/tag/:id', to: 'timelines#tag', as: :hashtag_timeline

resources :follows, only: [:create]
resources :media, only: [:create]
resources :apps, only: [:create]
resources :blocks, only: [:index]
resources :follows, only: [:create]
resources :media, only: [:create]
resources :apps, only: [:create]
resources :blocks, only: [:index]
resources :favourites, only: [:index]

resources :follow_requests, only: [:index] do
member do
@@ -115,8 +116,11 @@ Rails.application.routes.draw do
end
end

resources :notifications, only: [:index, :show]
resources :favourites, only: [:index]
resources :notifications, only: [:index, :show] do
collection do
post :clear
end
end

resources :accounts, only: [:show] do
collection do


Зареждане…
Отказ
Запис