Give users access to the attachment manager without having to upload any files.

Added the action_end_add_attach_to_reply hook.
Added the action_end_remove_attach_from_reply hook.
This commit is contained in:
Azareal 2019-04-11 14:22:03 +10:00
parent 5dec69b682
commit 3db09c6a1f
5 changed files with 23 additions and 13 deletions

View File

@ -83,10 +83,12 @@ var hookTable = &HookTable{
"simple_forum_check_pre_perms": nil,
"forum_check_pre_perms": nil,
"action_end_create_topic": nil,
"action_end_create_reply": nil,
"action_end_edit_reply": nil,
"action_end_delete_reply": nil,
"action_end_create_topic": nil,
"action_end_create_reply": nil,
"action_end_edit_reply": nil,
"action_end_delete_reply": nil,
"action_end_add_attach_to_reply": nil,
"action_end_remove_attach_from_reply": nil,
"router_after_filters": nil,
"router_pre_route": nil,

View File

@ -1076,9 +1076,7 @@ function mainInit(){
$("#mod_topic_mover .pane_row").click(function(){
modTopicMover.find(".pane_row").removeClass("pane_selected");
let fid = this.getAttribute("data-fid");
if (fid == null) {
return;
}
if (fid == null) return;
this.classList.add("pane_selected");
console.log("fid: " + fid);
forumToMoveTo = fid;

View File

@ -368,7 +368,7 @@ func AddAttachToReplySubmit(w http.ResponseWriter, r *http.Request, user common.
return common.NotFoundJS(w, r)
}
_, ferr := common.SimpleForumUserCheck(w, r, &user, topic.ParentID)
lite, ferr := common.SimpleForumUserCheck(w, r, &user, topic.ParentID)
if ferr != nil {
return ferr
}
@ -389,6 +389,11 @@ func AddAttachToReplySubmit(w http.ResponseWriter, r *http.Request, user common.
return common.InternalErrorJS(errors.New("no paths for attachment add"), w, r)
}
skip, rerr := lite.Hooks.VhookSkippable("action_end_add_attach_to_reply", reply.ID)
if skip || rerr != nil {
return rerr
}
var elemStr string
for path, aids := range pathMap {
elemStr += "\"" + path + "\":\"" + aids + "\","
@ -420,7 +425,7 @@ func RemoveAttachFromReplySubmit(w http.ResponseWriter, r *http.Request, user co
return common.NotFoundJS(w, r)
}
_, ferr := common.SimpleForumUserCheck(w, r, &user, topic.ParentID)
lite, ferr := common.SimpleForumUserCheck(w, r, &user, topic.ParentID)
if ferr != nil {
return ferr
}
@ -443,6 +448,11 @@ func RemoveAttachFromReplySubmit(w http.ResponseWriter, r *http.Request, user co
}
}
skip, rerr := lite.Hooks.VhookSkippable("action_end_remove_attach_from_reply", reply.ID)
if skip || rerr != nil {
return rerr
}
w.Write(successJSONBytes)
return nil
}

View File

@ -68,7 +68,7 @@
{{if .CurrentUser.Loggedin}}<textarea name="topic_content" class="show_on_edit topic_content_input edit_source">{{.Topic.Content}}</textarea>
{{if .CurrentUser.Perms.EditTopic}}
{{if .Topic.Attachments}}<div class="show_on_edit attach_edit_bay" type="topic" id="{{.Topic.ID}}">
<div class="show_on_edit attach_edit_bay" type="topic" id="{{.Topic.ID}}">
{{range .Topic.Attachments}}
<div class="attach_item{{if .Image}} attach_image_holder{{end}}">
{{if .Image}}<img src="//{{$.Header.Site.URL}}/attachs/{{.Path}}?sectionID={{.SectionID}}&amp;sectionType=forums" height=24 width=24 />{{end}}
@ -83,7 +83,7 @@
<label for="upload_files_op" class="formbutton add_file_button">{{lang "topic.upload_button_text"}}</label>{{end}}
<button class="attach_item_delete">{{lang "topic.delete_button_text"}}</button>
</div>
</div>{{end}}
</div>
{{end}}{{end}}
<div class="controls button_container{{if .Topic.LikeCount}} has_likes{{end}}">

View File

@ -10,7 +10,7 @@
<div class="edit_source auto_hide">{{.Content}}</div>
{{if $.CurrentUser.Perms.EditReply}}
{{if .Attachments}}<div class="show_on_edit show_on_block_edit attach_edit_bay" type="reply" id="{{.ID}}">
<div class="show_on_edit show_on_block_edit attach_edit_bay" type="reply" id="{{.ID}}">
{{range .Attachments}}
<div class="attach_item{{if .Image}} attach_image_holder{{end}}">
{{if .Image}}<img src="//{{$.Header.Site.URL}}/attachs/{{.Path}}?sectionID={{.SectionID}}&amp;sectionType=forums" height=24 width=24 />{{end}}
@ -25,7 +25,7 @@
<label for="upload_files_post_{{.ID}}" class="formbutton add_file_button">{{lang "topic.upload_button_text"}}</label>{{end}}
<button class="attach_item_delete">{{lang "topic.delete_button_text"}}</button>
</div>
</div>{{end}}
</div>
{{end}}{{end}}
<div class="controls button_container{{if .LikeCount}} has_likes{{end}}">