Added Necropost Warning
This commit is contained in:
@@ -89,7 +89,7 @@ class ForumsController < ApplicationController
|
||||
end
|
||||
|
||||
def forum_params(add = [])
|
||||
a = [:name, :position, :role_read_id, :role_write_id] + add
|
||||
a = [:name, :position, :role_read_id, :role_write_id, :necro_length] + add
|
||||
params.require(:forum).permit(a)
|
||||
end
|
||||
end
|
||||
@@ -21,6 +21,10 @@
|
||||
<td><%= f.label :role_write_id, "Min. write role" %></td>
|
||||
<td><%= f.select :role_write_id, role_selection, include_blank: false %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%= f.label :necro_length, "Necropost warning delay (in days)" %></td>
|
||||
<td><%= f.number_field :necro_length, placeholder: "Warning Delay (leave blank for no warning)" %></td>
|
||||
</tr>
|
||||
</table>
|
||||
<p><%= f.submit "Update forum", class: "btn blue left" %></p>
|
||||
<% end %>
|
||||
|
||||
@@ -21,6 +21,10 @@
|
||||
<td><%= f.label :role_write_id, "Min. write role" %></td>
|
||||
<td><%= f.select :role_write_id, role_selection, include_blank: false %></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><%= f.label :necro_length, "Necropost warning delay (in days)" %></td>
|
||||
<td><%= f.number_field :necro_length, placeholder: "Warning Delay (leave blank for no warning)" %></td>
|
||||
</tr>
|
||||
</table>
|
||||
<%= f.hidden_field :forumgroup_id %>
|
||||
<p><%= f.submit "Create forum", class: "btn blue left" %></p>
|
||||
|
||||
@@ -1,4 +1,17 @@
|
||||
<%= form_for [reply.thread, reply] do |f| %>
|
||||
<%= render partial: "md_editor", locals: {name: "threadreply[content]", content: reply.content} %>
|
||||
<p><%= f.submit "Reply#{ ' (Locked)' if reply.thread.locked? }", class: "btn blue" %></p>
|
||||
<% nec_msg = "" %>
|
||||
<% forum = Forum.find(reply.thread.forum_id) %>
|
||||
<% if forum.necro_length != nil %>
|
||||
<% if Threadreply.where(forumthread: reply.thread).count != 0 %>
|
||||
<% prevAgo = Threadreply.where(forumthread: reply.thread).order(:id).last.created_at %>
|
||||
<% if prevAgo <= forum.necro_length.days.ago.utc %>
|
||||
<% nec_msg = "You may be necroposting, as the last reply was made at least #{forum.necro_length} days ago. If you still wish to make this reply, press 'Ok'." %>
|
||||
<% end %>
|
||||
<% elsif reply.thread.created_at <= forum.necro_length.days.ago.utc %>
|
||||
<% nec_msg = "You may be necroposting, as this thread was posted at least #{forum.necro_length} days ago. If you still wish to make this reply, press 'Ok'." %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<p><%= f.submit "Reply#{ ' (Locked)' if reply.thread.locked? }", class: "btn blue", data: { confirm: nec_msg } %></p>
|
||||
<% nec_msg = "" %>
|
||||
<% end %>
|
||||
5
db/migrate/20170409135858_add_necro_length_to_forums.rb
Normal file
5
db/migrate/20170409135858_add_necro_length_to_forums.rb
Normal file
@@ -0,0 +1,5 @@
|
||||
class AddNecroLengthToForums < ActiveRecord::Migration
|
||||
def change
|
||||
add_column :forums, :necro_length, :integer
|
||||
end
|
||||
end
|
||||
43
db/schema.rb
43
db/schema.rb
@@ -11,10 +11,10 @@
|
||||
#
|
||||
# It's strongly recommended that you check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(version: 20170319193517) do
|
||||
ActiveRecord::Schema.define(version: 20170409135858) do
|
||||
|
||||
create_table "blogposts", force: :cascade do |t|
|
||||
t.string "title"
|
||||
t.string "title", limit: 191
|
||||
t.text "content", limit: 65535
|
||||
t.integer "user_author_id", limit: 4
|
||||
t.integer "user_editor_id", limit: 4
|
||||
@@ -32,18 +32,19 @@ ActiveRecord::Schema.define(version: 20170319193517) do
|
||||
end
|
||||
|
||||
create_table "forumgroups", force: :cascade do |t|
|
||||
t.string "name"
|
||||
t.string "name", limit: 191
|
||||
t.integer "position", limit: 4
|
||||
t.integer "role_read_id", limit: 4
|
||||
t.integer "role_write_id", limit: 4
|
||||
end
|
||||
|
||||
create_table "forums", force: :cascade do |t|
|
||||
t.string "name"
|
||||
t.string "name", limit: 191
|
||||
t.integer "position", limit: 4
|
||||
t.integer "role_read_id", limit: 4
|
||||
t.integer "role_write_id", limit: 4
|
||||
t.integer "forumgroup_id", limit: 4
|
||||
t.integer "necro_length", limit: 4, default: -1
|
||||
end
|
||||
|
||||
create_table "forums_labels", id: false, force: :cascade do |t|
|
||||
@@ -52,7 +53,7 @@ ActiveRecord::Schema.define(version: 20170319193517) do
|
||||
end
|
||||
|
||||
create_table "forumthreads", force: :cascade do |t|
|
||||
t.string "title"
|
||||
t.string "title", limit: 191
|
||||
t.text "content", limit: 65535
|
||||
t.boolean "sticky", default: false
|
||||
t.boolean "locked", default: false
|
||||
@@ -65,29 +66,29 @@ ActiveRecord::Schema.define(version: 20170319193517) do
|
||||
end
|
||||
|
||||
create_table "info", force: :cascade do |t|
|
||||
t.string "title"
|
||||
t.string "title", limit: 191
|
||||
t.text "content", limit: 65535
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
end
|
||||
|
||||
create_table "labels", force: :cascade do |t|
|
||||
t.string "name"
|
||||
t.string "color"
|
||||
t.string "name", limit: 191
|
||||
t.string "color", limit: 191
|
||||
end
|
||||
|
||||
create_table "register_tokens", force: :cascade do |t|
|
||||
t.string "uuid", null: false
|
||||
t.string "token", null: false
|
||||
t.string "email", null: false
|
||||
t.string "uuid", limit: 191, null: false
|
||||
t.string "token", limit: 191, null: false
|
||||
t.string "email", limit: 191, null: false
|
||||
end
|
||||
|
||||
add_index "register_tokens", ["uuid"], name: "index_register_tokens_on_uuid", unique: true, using: :btree
|
||||
|
||||
create_table "roles", force: :cascade do |t|
|
||||
t.string "name"
|
||||
t.string "name", limit: 191
|
||||
t.integer "value", limit: 4
|
||||
t.string "color"
|
||||
t.string "color", limit: 191
|
||||
end
|
||||
|
||||
create_table "badges", force: :cascade do |t|
|
||||
@@ -97,7 +98,7 @@ ActiveRecord::Schema.define(version: 20170319193517) do
|
||||
end
|
||||
|
||||
create_table "sessions", force: :cascade do |t|
|
||||
t.string "session_id", null: false
|
||||
t.string "session_id", limit: 191, null: false
|
||||
t.text "data", limit: 65535
|
||||
t.datetime "created_at"
|
||||
t.datetime "updated_at"
|
||||
@@ -116,14 +117,14 @@ ActiveRecord::Schema.define(version: 20170319193517) do
|
||||
end
|
||||
|
||||
create_table "users", force: :cascade do |t|
|
||||
t.string "uuid", null: false
|
||||
t.string "name", null: false
|
||||
t.string "password_digest", null: false
|
||||
t.string "ign", null: false
|
||||
t.string "email", null: false
|
||||
t.string "uuid", limit: 191, null: false
|
||||
t.string "name", limit: 191, null: false
|
||||
t.string "password_digest", limit: 191, null: false
|
||||
t.string "ign", limit: 191, null: false
|
||||
t.string "email", limit: 191, null: false
|
||||
t.text "about", limit: 65535
|
||||
t.string "last_ip"
|
||||
t.string "skype"
|
||||
t.string "last_ip", limit: 191
|
||||
t.string "skype", limit: 191
|
||||
t.boolean "skype_public", default: false
|
||||
t.string "youtube"
|
||||
t.string "youtube_channelname"
|
||||
|
||||
Reference in New Issue
Block a user