123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- # Copyright (C) 2012-2024 Zammad Foundation, https://zammad-foundation.org/
- class RecentViewController < ApplicationController
- prepend_before_action :authentication_check
- =begin
- Resource:
- GET /api/v1/recent_viewed
- Response:
- {
- ...
- }
- Test:
- curl http://localhost/api/v1/recent_view -v -u #{login}:#{password} -H "Content-Type: application/json" -X GET
- =end
- def index
- recent_viewed = RecentView.list(current_user, 10)
- if response_expand?
- list = recent_viewed.map(&:attributes_with_association_names)
- render json: list, status: :ok
- return
- end
- if response_full?
- assets = {}
- item_ids = []
- recent_viewed.each do |item|
- item_ids.push item.id
- assets = item.assets(assets)
- end
- render json: {
- record_ids: item_ids,
- assets: assets,
- }, status: :ok
- return
- end
- all = recent_viewed.map(&:attributes_with_association_ids)
- render json: all, status: :ok
- end
- =begin
- Resource:
- POST /api/v1/recent_viewed
- Payload:
- {
- "object": "Ticket",
- "o_id": 123,
- }
- Response:
- {}
- Test:
- curl http://localhost/api/v1/recent_view -v -u #{login}:#{password} -H "Content-Type: application/json" -X POST -d '{"object": "Ticket","o_id": 123}'
- =end
- def create
- RecentView.log(params[:object], params[:o_id], current_user)
- # return result
- render json: { message: 'ok' }
- end
- end
|