Skip to content

Commit 8c3aafe

Browse files
committed
feature/Move all modals into modals namespace
1 parent 914e0fb commit 8c3aafe

32 files changed

+132
-126
lines changed

app/controllers/folders/modals_controller.rb

Lines changed: 0 additions & 5 deletions
This file was deleted.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
class Modals::FoldersController < ModalsController
2+
def new
3+
4+
end
5+
end
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
class Modals::SnippetsController < ModalsController
2+
before_action :set_snippet, only: %i(edit)
3+
4+
def new
5+
@snippet = Snippet.new
6+
@folders = current_user.folders
7+
end
8+
9+
def edit
10+
@folders = current_user.folders
11+
@folder = current_user.snippet_folders.find_by(snippet_id: params[:id]).folder
12+
end
13+
14+
def move
15+
@snippet = Snippet.find(params[:id])
16+
@current_folder_id = current_user.snippet_folders.find_by(snippet_id: params[:id])&.folder&.id
17+
@header = @current_folder_id ? 'Move Snippet' : 'File Snippet'
18+
@folders = current_user.folders
19+
end
20+
21+
private
22+
23+
def set_snippet
24+
unless @snippet = current_user.snippets.find_by(id: params[:id])
25+
respond_to do |format|
26+
format.html { redirect_to root_path, alert: UNAUTHORIZED }
27+
format.json { render json: { message: UNAUTHORIZED }, status: 401 }
28+
end
29+
end
30+
end
31+
end

app/controllers/users/modals_controller.rb renamed to app/controllers/modals/users_controller.rb

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
class Users::ModalsController < ModalsController
1+
class Modals::UsersController < ModalsController
22
def sign_in_sign_up; end
33

44
def sign_in
@@ -8,4 +8,6 @@ def sign_in
88
def sign_up
99
@user = User.new
1010
end
11+
12+
def edit_avatar; end
1113
end

app/controllers/snippets/modals_controller.rb

Lines changed: 0 additions & 6 deletions
This file was deleted.

app/controllers/snippets_controller.rb

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -74,29 +74,6 @@ def file
7474
end
7575
end
7676

77-
def new_snippet_modal
78-
@snippet = Snippet.new
79-
@folders = current_user.folders
80-
81-
render 'new', layout: false
82-
end
83-
84-
def move_modal
85-
@snippet = Snippet.find(params[:id])
86-
@current_folder_id = current_user.snippet_folders.find_by(snippet_id: params[:id])&.folder&.id
87-
@header = @current_folder_id ? 'Move Snippet' : 'File Snippet'
88-
@folders = current_user.folders
89-
90-
render layout: false
91-
end
92-
93-
def edit_modal
94-
@folders = current_user.folders
95-
@folder = current_user.snippet_folders.find_by(snippet_id: params[:id]).folder
96-
97-
render 'edit', layout: false
98-
end
99-
10077
def delete_alert
10178
@snippet = current_user.snippets.find(params[:id])
10279
@title = 'Delete Snippet'
@@ -242,15 +219,6 @@ def destroy
242219

243220
private
244221

245-
def set_snippet
246-
unless @snippet = current_user.snippets.find_by(id: params[:id])
247-
respond_to do |format|
248-
format.html { redirect_to root_path, alert: UNAUTHORIZED }
249-
format.json { render json: { message: UNAUTHORIZED }, status: 401 }
250-
end
251-
end
252-
end
253-
254222
def snippet_params
255223
params.require(:snippet).permit(
256224
:description,

app/controllers/users_controller.rb

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
11
class UsersController < ApplicationController
2-
def edit_avatar_modal
3-
render layout: false
4-
end
5-
62
def index
73
users = User.limit(5)
84

app/javascript/controllers/modal_controller.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import axios from 'axios';
33

44
export default class extends Controller {
55
static targets = ["modal", "header", "body"];
6+
static values = { url: String }
67

78
connect() {
89
this.element[this.identifier] = this
@@ -14,11 +15,11 @@ export default class extends Controller {
1415
}
1516

1617
present(event) {
17-
console.log('click', event.currentTarget.dataset)
18+
console.log('click', this.urlValue)
1819
event.preventDefault();
1920
event.stopPropagation();
2021

21-
axios.get(event.currentTarget.dataset.modalUrl)
22+
axios.get(this.urlValue)
2223
.then(res => {
2324
console.log(res)
2425
this.close();

app/javascript/controllers/upload_controller.js

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,17 +23,14 @@ export default class extends Controller {
2323
reader.onload = function(e) {
2424
self.uploadedFile = e.target.result
2525

26-
self.modal.present('/users/edit_avatar_modal')
26+
const event = new CustomEvent('open-avatar-modal')
27+
window.dispatchEvent(event)
2728
}
2829

2930
reader.readAsDataURL(input.files[0]);
3031
}
3132
}
3233

33-
get modal() {
34-
return document.getElementById('modal').modal
35-
}
36-
3734
set cropper(cropperObj) {
3835
return this.cropper = cropperObj
3936
}

app/models/folder.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ class Folder < ApplicationRecord
66
def popover_options_for(user)
77
options = []
88

9-
options << { type: :modal, title: 'Add snippet', url: new_snippet_modal_snippets_path(folder_id: id) }
9+
options << { type: :modal, title: 'Add snippet', url: new_modals_snippet_path(folder_id: id) }
1010
options << { type: :link, title: 'Rename folder', url: edit_folder_path(self) }
1111

1212
if snippets.empty?

0 commit comments

Comments
 (0)