7ee96bf6c6
* fix topic spec * fix synapse/mapping spec * brakeman csrf warning suppressed :| * follows for maps in the ui for internal testing only still (#1072) * follows for maps in the ui for testers * require user for these actions * match how map follow works * include ability to unfollow from email * fixup templates * add unfollow_from_email to the policies * Update _cheatsheet.html.erb Clean up text, clarify, and bring in line with current functionality * topicsRegex and synapsesRegex should allow commas (#1073) * even better import csv regexes * prevent double prompt on file drop import * topic card in react (#1031) * its coming along * links bar * scssify a bunch * metacode image working a bit better * metacode selector in react topic card * riek editing for name field on topic card * riek submit on enter * factor out Title and Links from Topic Card component, but not the listeners * create working Desc editor * styling is much better now * textarea min height for desc * disallow images in topic card markdown * shift enter is linebreak, enter is save * attachments split out, but it's pretty buggy * move listeners into Links.js * slightly wider metacodeTitle * fix positioning on metacode selector * fix metacode selection * move metacode and permissions into subcomponents * fixes * prevent editing on desc/title if not authorized to edit * fix topic card draggability * fix embedly * fix md test * remove the removed link card manually with jquery * fix test syntax * eslint * more eslin * reuse authorizedToEdit * convert metacode sets to a json object for react * add the html in react whoop * fix metacode styling * sort wasn't working * finishing metacode select * readd the above link input border * fix syntax * multiline title editable textarea * more portable metacode selector component * factor out #metacodeOptions into one react component with a callback :D:D:D * render metacodeOptions in right click menu with react * render metacodeOptions in right click menu with react * fix up right click menu's metacode editing * fix topic card title character counter * ignore metamaps secret bundle in ag * simplify Attachments props * factor out embedly card into its own component; it seems to help * link resetter * fix edit icon on title in topic card * move mapCount and synapseCount hover/click logic to react * fix up the showMore control * metacode selection tweaks * tweak links bar spacing in topic card * rubocop * remove TODOs * more badass permissions selector * close permission selector when you click outside * fix overeager metacode selector * more modular attachments component * fix bug in Desc.js * fix right click styling * permission changes are different than edit rights * bad module ref * ensure maxLength on topic titles * hellz yeah (#1074) * fix drop from two touches to one * don't commit activity service * ability to select/unselect all metacodes in custom set with keyboard shortcut (fix #390) (#1078) * ability to select/unselect all metacodes in custom set with keyboard shortcut * select all button * nicer all/none buttons * set up react testing (#1080) * install mocha-webpack. also switch hark to npm version instead of github version * well, mocha-webpack runs * add jsdom for tests * upgrade to webpack 2 * fix npm run test errors * ImportDialogBox component tests * Fixes bug where pressing delete key while editing text will suggest... (#1083) * Fixes bug where pressing delete key while editing text will suggest the deletion of selected map entities * Changed the DEL key to remove entities instead of delete them * temporarily disable code climate duplication engine * add topic following for internal testing * daily map activity emails (#1081) * data prepared, task setup * add the basics of the email template * cover granular permissions * unfollow this map * break out permissions tests better * rename so test runs
148 lines
4.3 KiB
Ruby
148 lines
4.3 KiB
Ruby
# frozen_string_literal: true
|
|
Metamaps::Application.routes.draw do
|
|
use_doorkeeper
|
|
mount ActionCable.server => '/cable'
|
|
|
|
root to: 'main#home', via: :get
|
|
get 'request', to: 'main#requestinvite', as: :request
|
|
|
|
namespace :explore do
|
|
get 'active'
|
|
get 'featured'
|
|
get 'mine'
|
|
get 'shared'
|
|
get 'starred'
|
|
get 'mapper/:id', action: 'mapper'
|
|
end
|
|
get :explore, to: redirect('/')
|
|
|
|
resources :maps, except: [:index, :edit] do
|
|
member do
|
|
get :conversation
|
|
get :export
|
|
post 'events/:event', action: :events
|
|
get :contains
|
|
|
|
get :request_access,
|
|
to: 'access#request_access'
|
|
get 'approve_access/:request_id',
|
|
to: 'access#approve_access',
|
|
as: :approve_access
|
|
get 'deny_access/:request_id',
|
|
to: 'access#deny_access',
|
|
as: :deny_access
|
|
|
|
post :access_request,
|
|
to: 'access#access_request',
|
|
default: { format: :json }
|
|
post 'approve_access/:request_id',
|
|
to: 'access#approve_access_post',
|
|
as: :approve_access_post,
|
|
default: { format: :json }
|
|
post 'deny_access/:request_id',
|
|
to: 'access#deny_access_post',
|
|
as: :deny_access_post,
|
|
default: { format: :json }
|
|
|
|
post :access, to: 'access#access', default: { format: :json }
|
|
|
|
post :star, to: 'stars#create', default: { format: :json }
|
|
post :unstar, to: 'stars#destroy', default: { format: :json }
|
|
post :follow, default: { format: :json }
|
|
post :unfollow, default: { format: :json }
|
|
get :unfollow_from_email
|
|
end
|
|
end
|
|
|
|
resources :mappings, except: [:index, :new, :edit]
|
|
|
|
resources :messages, only: [:show, :create, :update, :destroy]
|
|
resources :notifications, only: [:index, :show] do
|
|
collection do
|
|
get :unsubscribe
|
|
end
|
|
member do
|
|
put :mark_read
|
|
put :mark_unread
|
|
end
|
|
end
|
|
|
|
resources :metacode_sets, except: [:show]
|
|
|
|
resources :metacodes, except: [:destroy]
|
|
get 'metacodes/:name', to: 'metacodes#show'
|
|
|
|
namespace :search do
|
|
get :topics
|
|
get :maps
|
|
get :mappers
|
|
get :synapses
|
|
end
|
|
|
|
resources :synapses, except: [:index, :new, :edit]
|
|
|
|
resources :topics, except: [:index, :new, :edit] do
|
|
member do
|
|
get :network
|
|
get :relative_numbers
|
|
get :relatives
|
|
post :follow, default: { format: :json }
|
|
post :unfollow, default: { format: :json }
|
|
get :unfollow_from_email
|
|
end
|
|
collection do
|
|
get :autocomplete_topic
|
|
end
|
|
end
|
|
|
|
resources :tokens, only: [:new]
|
|
|
|
devise_for :users, skip: :sessions, controllers: {
|
|
registrations: 'users/registrations',
|
|
passwords: 'users/passwords',
|
|
sessions: 'users/sessions'
|
|
}
|
|
|
|
devise_scope :user do
|
|
get 'login' => 'users/sessions#new', :as => :sign_in
|
|
post 'login' => 'users/sessions#create', :as => :user_session
|
|
get 'logout' => 'users/sessions#destroy', :as => :destroy_user_session
|
|
get 'join' => 'users/registrations#new', :as => :sign_up
|
|
end
|
|
|
|
resources :users, except: [:index, :destroy] do
|
|
member do
|
|
get :details
|
|
end
|
|
end
|
|
post 'user/updatemetacodes', to: 'users#updatemetacodes', as: :updatemetacodes
|
|
post 'user/update_metacode_focus', to: 'users#update_metacode_focus'
|
|
|
|
namespace :api, path: '/api', default: { format: :json } do
|
|
namespace :v2, path: '/v2' do
|
|
resources :metacodes, only: [:index, :show]
|
|
resources :mappings, only: [:index, :create, :show, :update, :destroy]
|
|
resources :maps, only: [:index, :create, :show, :update, :destroy] do
|
|
post :stars, to: 'stars#create', on: :member
|
|
delete :stars, to: 'stars#destroy', on: :member
|
|
end
|
|
resources :synapses, only: [:index, :create, :show, :update, :destroy]
|
|
resources :tokens, only: [:index, :create, :destroy]
|
|
resources :topics, only: [:index, :create, :show, :update, :destroy]
|
|
resources :users, only: [:index, :show] do
|
|
get :current, on: :collection
|
|
end
|
|
match '*path', to: 'restful#catch_404', via: :all
|
|
end
|
|
namespace :v1, path: '/v1' do
|
|
root to: 'deprecated#deprecated', via: :all
|
|
match '*path', to: 'deprecated#deprecated', via: :all
|
|
end
|
|
match '*path', to: 'v2/restful#catch_404', via: :all
|
|
end
|
|
|
|
namespace :hacks do
|
|
get 'load_url_title'
|
|
end
|
|
end
|
|
# rubocop:enable Rubocop/Metrics/BlockLength
|