refactored crawler controllers and bundled them in crawlers namespace

This commit is contained in:
Pfingstfrosch 2020-05-12 19:49:18 +02:00
parent d7907a3a0c
commit d34a3d583c
13 changed files with 34 additions and 32 deletions

View File

@ -1,4 +1,4 @@
class CoursesCrawlerController < TissCrawlerController class Crawlers::CoursesCrawlerController < TissCrawlerController
def show_basic def show_basic
params[:api] = '/api/search/course/v1.0/quickSearch' params[:api] = '/api/search/course/v1.0/quickSearch'

View File

@ -1,4 +1,4 @@
class PeopleCrawlerController < TissCrawlerController class Crawlers::PeopleCrawlerController < TissCrawlerController
def show_basic def show_basic
params[:api] = '/api/person/v22/psuche' params[:api] = '/api/person/v22/psuche'
@ -30,7 +30,7 @@ class PeopleCrawlerController < TissCrawlerController
if FavoritePerson.create(tiss_id: @person['tiss_id'], first_name: @person['first_name'], last_name: @person['last_name'], picture_uri: @person['picture_uri']).valid? if FavoritePerson.create(tiss_id: @person['tiss_id'], first_name: @person['first_name'], last_name: @person['last_name'], picture_uri: @person['picture_uri']).valid?
FavoritePerson.create(tiss_id: @person['tiss_id'], first_name: @person['first_name'], last_name: @person['last_name'], picture_uri: @person['picture_uri']) FavoritePerson.create(tiss_id: @person['tiss_id'], first_name: @person['first_name'], last_name: @person['last_name'], picture_uri: @person['picture_uri'])
respond_to do |format| respond_to do |format|
format.html { redirect_to favorite_person_index_url, notice: 'Favorite person stored' } format.html { redirect_to favorites_people_url, notice: 'Favorite person stored' }
end end
else else
flash[:alert] = "Person is already favorited!" flash[:alert] = "Person is already favorited!"

View File

@ -1,4 +1,4 @@
class ProjectsCrawlerController < TissCrawlerController class Crawlers::ProjectsCrawlerController < TissCrawlerController
def show_basic def show_basic
end end

View File

@ -1,4 +1,4 @@
class ThesesCrawlerController < TissCrawlerController class Crawlers::ThesesCrawlerController < TissCrawlerController
def show_basic def show_basic
end end

View File

@ -1,4 +1,4 @@
class TissCrawlerController < ApplicationController class Crawlers::TissCrawlerController < ApplicationController
# self designed lib to call the Tiss API # self designed lib to call the Tiss API
require 'tiss/tiss_crawler' require 'tiss/tiss_crawler'
@ -11,10 +11,10 @@ class TissCrawlerController < ApplicationController
case $search_context case $search_context
when 'People' when 'People'
# redirect to people_show_basic, propagate the search_term # redirect to people_show_basic, propagate the search_term
redirect_to :controller => 'people_crawler', :action => :show_basic, :search_term => params[:search_term] redirect_to :controller => 'crawlers/people_crawler', :action => :show_basic, :search_term => params[:search_term]
when 'Courses' when 'Courses'
# redirect to courses_show_basic, propagate the search_term # redirect to courses_show_basic, propagate the search_term
redirect_to :controller => 'courses_crawler', :action => :show_basic, :search_term => params[:search_term] redirect_to :controller => 'crawlers/courses_crawler', :action => :show_basic, :search_term => params[:search_term]
when 'Theses' when 'Theses'
when 'Projects' when 'Projects'
else else

View File

@ -3,7 +3,7 @@
<ul class="courses-list"> <ul class="courses-list">
<% @courses.each_with_index do |course| %> <% @courses.each_with_index do |course| %>
<li class="course"> <li class="course">
<%= link_to courses_crawler_show_detail_url(:title => course['title'], :detail_url => course['detail_url']) do %> <%= link_to crawlers_courses_crawler_show_detail_url(:title => course['title'], :detail_url => course['detail_url']) do %>
<span class="list-link"> <span class="list-link">
<span class="course-title"> <span class="course-title">
<%= course['title'] %> <%= course['title'] %>
@ -11,7 +11,7 @@
</span> </span>
<% end %> <% end %>
<span class="add-to-fav"> <span class="add-to-fav">
<%= link_to courses_crawler_add_to_fav_url(:title => course['title'], :detail_url => course['detail_url']) do %> <%= link_to crawlers_courses_crawler_add_to_fav_url(:title => course['title'], :detail_url => course['detail_url']) do %>
<%= show_svg('favorite-24px.svg') %> <%= show_svg('favorite-24px.svg') %>
<% end %> <% end %>
</span> </span>

View File

@ -3,7 +3,7 @@
<ul class="people-list"> <ul class="people-list">
<% @people.each_with_index do |person| %> <% @people.each_with_index do |person| %>
<li class="person"> <li class="person">
<%= link_to people_crawler_show_detail_url(:tiss_id => person['tiss_id']) do %> <%= link_to crawlers_people_crawler_show_detail_url(:tiss_id => person['tiss_id']) do %>
<span class="list-link"> <span class="list-link">
<span class="person-icon"> <span class="person-icon">
<% if person['picture_uri'] != nil %> <% if person['picture_uri'] != nil %>
@ -19,7 +19,7 @@
</span> </span>
<% end %> <% end %>
<span class="add-to-fav"> <span class="add-to-fav">
<%= link_to people_crawler_add_to_fav_url(:tiss_id => person['tiss_id']) do %> <%= link_to crawlers_people_crawler_add_to_fav_url(:tiss_id => person['tiss_id']) do %>
<%= show_svg('favorite-24px.svg') %> <%= show_svg('favorite-24px.svg') %>
<% end %> <% end %>
</span> </span>

View File

@ -1,7 +1,7 @@
<h1>Search through @TU Vienna Database</h1> <h1>Search through @TU Vienna Database</h1>
<p>Only people can be searched right now</p> <p>Only people can be searched right now</p>
<%= form_tag('/tiss_crawler/search', :method => "get") do %> <%= form_tag(crawlers_tiss_crawler_search_path, :method => "get") do %>
<%= label_tag(:search_term, "Enter your search term") %> <%= label_tag(:search_term, "Enter your search term") %>
<%= text_field_tag(:search_term) %> <%= text_field_tag(:search_term) %>
<%= radio_button_tag(:search_context, 'People', true) %> People <%= radio_button_tag(:search_context, 'People', true) %> People

View File

@ -5,7 +5,7 @@
<ul class="people-list"> <ul class="people-list">
<% @favoritePeople.each do |person| %> <% @favoritePeople.each do |person| %>
<li class="person"> <li class="person">
<%= link_to people_crawler_show_detail_url(:tiss_id => person['tiss_id']) do %> <%= link_to crawlers_people_crawler_show_detail_url(:tiss_id => person['tiss_id']) do %>
<span class="list-link"> <span class="list-link">
<span class="person-icon"> <span class="person-icon">
<% if person['picture_uri'] != nil %> <% if person['picture_uri'] != nil %>

View File

@ -20,7 +20,7 @@
</label> </label>
<a href="#" class="logo">tiss2go</a> <a href="#" class="logo">tiss2go</a>
<div class="left-menu"> <div class="left-menu">
<%= link_to 'Search TISS', tiss_crawler_search_path %> <%= link_to 'Search TISS', crawlers_tiss_crawler_search_path %>
<%= link_to 'Your Favorites', favorites_people_path %> <%= link_to 'Your Favorites', favorites_people_path %>
</div> </div>
<div class="right-menu"> <div class="right-menu">

View File

@ -2,24 +2,26 @@ Rails.application.routes.draw do
devise_for :users, path_names: {sign_in: 'log_in', sign_out: 'log out'} devise_for :users, path_names: {sign_in: 'log_in', sign_out: 'log out'}
namespace :tiss_crawler do namespace :crawlers do
get 'search' namespace :tiss_crawler do
end get 'search'
end
namespace :people_crawler do namespace :people_crawler do
get 'show_basic' get 'show_basic'
get 'show_detail' get 'show_detail'
post 'show_detail' post 'show_detail'
get 'add_to_fav' get 'add_to_fav'
post 'add_to_fav' post 'add_to_fav'
end end
namespace :courses_crawler do namespace :courses_crawler do
get 'show_basic' get 'show_basic'
get 'show_detail' get 'show_detail'
post 'show_detail' post 'show_detail'
get 'add_to_fav' get 'add_to_fav'
post 'add_to_fav' post 'add_to_fav'
end
end end
namespace :favorites do namespace :favorites do
@ -31,5 +33,5 @@ Rails.application.routes.draw do
end end
# For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html # For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
root 'tiss_crawler#search' root 'crawlers/tiss_crawler#search'
end end