Files
mapknitter/app/controllers/feeds_controller.rb
Alicia Paz d2d45dbf42 Migrate from Travis to GitHub Actions for CI (#1534)
* Try migrating from Travis to GitHub Actions for CI

* Update actions.yml and tests.yml

* Add ruby version

* Update config/database.yml.example

* Try rubocop and docker jobs

* Fix indentation

* Update tests.yml

* Update tests.yml

* Update gemfile

* Update rubocop job and Gemfile

* Update .rubocop_shopify_styleguide.yml

* Update gemfile

* Update .rubocop_todo.yml

* Update rubocop configuration and styleguides

* Fix rubocop offenses

* Update .rubocop.yml

* Update .rubocop.yml

* Udate .codeclimate.yml

* Update .codeclimate.yml

* Update .codeclimate.yml

* Update .codeclimate.yml

* Setup unit tests

* Update find_verified_user method in connection.rb

* Add yarn cache and install to setup

* install exporter dependencies; gdal/imagemagick

* Introduce Gitpod to migration work (#1538)

* Add CORS headers (#1536)

* Create .gitpod.dockerfile

* Create .gitpod.yml

* Create database.yml.gitpod

* Update .gitpod.yml

* ruby 2.4.6 in gitpod.dockerfile

* Update .gitpod.yml

* Update database.yml.gitpod

Co-authored-by: Sebastian Silva <sebastian@fuentelibre.org>
Co-authored-by: Jeffrey Warren <jeff@unterbahn.com>

* Install gdal and use egordm for yarn cache

* Delete unnecessary query and fix layout

* Run script with verbose output

* Try installing package in action.yml

* Setup controllers job

* Fix indentation

* Setup system tests job

* Setup docker development build job

* Fix identifiers

* Fix path to action.yml

* Update development dockerfile

* Setup docker production build job

* Update tests.yml

* Setup assets precompilation job

* Setup production environment

* Update tests.yml

* Update action.yml for production

* Try with test setup

* Remove action.yml for production

* Change names of jobs for friendliness and clarity

* Update .github/workflows/tests.yml

Co-authored-by: Jeffrey Warren <jeff@unterbahn.com>

* Move dockerfiles to directory and change docker job names for clarity

* Update docker job names

Co-authored-by: Jeffrey Warren <jeff@unterbahn.com>
Co-authored-by: Sebastian Silva <sebastian@fuentelibre.org>
2021-09-20 18:50:31 -04:00

59 lines
1.7 KiB
Ruby

class FeedsController < ApplicationController
before_action :query, only: %i(clean license)
def all
# (Warpable.all + Map.all).sort_by(&:created_at)
@maps = Map.where(archived: false, password: '')
.joins(%i(user warpables))
.group('maps.id')
.order('id DESC')
.limit(20)
render(layout: false, template: 'feeds/all')
response.headers['Content-Type'] = 'application/xml; charset=utf-8'
end
def clean
render(layout: false, template: 'feeds/clean')
response.headers['Content-Type'] = 'application/xml; charset=utf-8'
end
def license
@maps = @maps.where(license: params[:id])
render(layout: false, template: 'feeds/license')
response.headers['Content-Type'] = 'application/xml; charset=utf-8'
end
def author
@maps = Map.where(author: params[:id], archived: false, password: '')
.order('id DESC')
.joins(:warpables)
.group('maps.id')
images = []
@maps.each do |map|
images += map.warpables
end
@feed = (@maps + images).sort_by(&:created_at)
render(layout: false, template: 'feeds/author')
response.headers['Content-Type'] = 'application/xml; charset=utf-8'
end
def tag
@tag = Tag.find_by_name(params[:id])
@maps = @tag.maps.paginate(page: params[:page], per_page: 24)
render(layout: false, template: 'feeds/tag')
response.headers['Content-Type'] = 'application/xml; charset=utf-8'
rescue NoMethodError
render(plain: "No maps with tag #{params[:id]}")
end
private
def query
@maps = Map.order(id: :desc)
.limit(20)
.where(archived: false, password: '')
.joins(:warpables)
.group('maps.id')
end
end