summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLogan Fick <logaldeveloper@protonmail.com>2019-02-23 13:56:59 -0500
committerLogan Fick <logaldeveloper@protonmail.com>2019-02-23 13:56:59 -0500
commit244a047cad85690a29af12c2f3d7866fe9f79e40 (patch)
tree6fd083503c9917cc4c49fdc88efdf892f22014e1
parent293e86ee67c190cdd5103234f4aad82b1d456c9a (diff)
parent9870b0e4a9abee40575aa063fe3c5fda5addf894 (diff)
Merged pull request #55.
-rw-r--r--Gemfile.lock4
-rw-r--r--app/controllers/users_controller.rb4
-rw-r--r--app/models/user.rb4
-rw-r--r--app/views/users/edit.html.erb4
-rw-r--r--app/views/users/show.html.erb8
-rw-r--r--db/migrate/20190222152220_drop_forums_labels.rb5
-rw-r--r--db/migrate/20190222152638_remove_skype_add_discord_from_users.rb6
-rw-r--r--db/schema.rb13
-rw-r--r--db/seeds.rb4
9 files changed, 30 insertions, 22 deletions
diff --git a/Gemfile.lock b/Gemfile.lock
index 99ea724..ef66509 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -196,7 +196,7 @@ GEM
rails-html-sanitizer (1.0.4)
loofah (~> 2.2, >= 2.2.2)
raindrops (0.19.0)
- rake (12.3.1)
+ rake (12.3.2)
rb-fsevent (0.10.3)
rb-inotify (0.9.10)
ffi (>= 0.5.0, < 2)
@@ -287,4 +287,4 @@ DEPENDENCIES
webrick
BUNDLED WITH
- 1.17.1
+ 1.17.3
diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb
index 28bdf7b..61613af 100644
--- a/app/controllers/users_controller.rb
+++ b/app/controllers/users_controller.rb
@@ -149,9 +149,9 @@ class UsersController < ApplicationController
def update
if (mod? && current_user.role >= @user.role ) || (@user.is?(current_user) && confirmed?)
if mod?
- userdata = user_params([:name, :skype, :youtube, :twitter, :about, :role, :badge, :confirmed, :header_scroll, :utc_time, :dark])
+ userdata = user_params([:name, :discord, :youtube, :twitter, :about, :role, :badge, :confirmed, :header_scroll, :utc_time, :dark])
else
- userdata = user_params([:name, :skype, :youtube, :twitter, :about, :header_scroll, :utc_time, :dark])
+ userdata = user_params([:name, :discord, :youtube, :twitter, :about, :header_scroll, :utc_time, :dark])
end
if User.find_by(name: userdata[:name]) && User.find_by(name: userdata[:name]) != @user
flash[:alert] = "You have entered a name that belongs to someone else. Please try another."
diff --git a/app/models/user.rb b/app/models/user.rb
index 4f682c6..85c154e 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -18,9 +18,11 @@ class User < ActiveRecord::Base
validates_length_of :name, in: 2..30
validates_length_of :about, maximum: 5000
validates_length_of :ign, minimum: 1, maximum: 16
+ validates_length_of :discord, minimum: 2, maximum: 37 # The maximum length of a name is 32, but you need the # and four numbers
validates :email, uniqueness: {case_sensitive: false}, format: {with: /\A.+@(.+\..{2,}|\[(IPv6)?[0-9a-f:.]+\])\z/i, message: "That doesn't look like an email address."}
validates :ign, uniqueness: {case_sensitive: false}, format: {with: /\A[a-z\d_]+\z/i, message: "Username is invalid (a-z, 0-9, _)."}
+ validates :discord, uniqueness: {case_sensitive: false}, format: {with: /\A^(?!everyone|here|discordtag|.*```.*)([^@#:]{2,32}#[0-9]{4})$\z/i, message: "Discord name is invalid."}
validates :public_key, format: {with: /\A(-----BEGIN PGP PUBLIC KEY BLOCK-----((.|\n)*?)-----END PGP PUBLIC KEY BLOCK-----)?\z/i, message: "That doesn't look like a PGP formatted public key."}
@@ -168,7 +170,7 @@ class User < ActiveRecord::Base
self.ign.strip! if self.ign
self.email.strip! if self.email
self.about.strip! if self.about
- self.skype.strip! if self.skype
+ self.discord.strip! if self.discord
self.youtube.strip! if self.youtube
self.twitter.strip! if self.twitter
end
diff --git a/app/views/users/edit.html.erb b/app/views/users/edit.html.erb
index 3516cc9..cfbf229 100644
--- a/app/views/users/edit.html.erb
+++ b/app/views/users/edit.html.erb
@@ -43,9 +43,9 @@
</tr>
<% end %>
<tr>
- <td>Skype username</td>
+ <td>Discord username</td>
<td>
- <%= f.text_field :skype, placeholder: "Skype username", disabled: !can_edit? %>
+ <%= f.text_field :discord, placeholder: "Discord username", disabled: !can_edit? %>
</td>
</tr>
<tr>
diff --git a/app/views/users/show.html.erb b/app/views/users/show.html.erb
index cafe726..1edf6db 100644
--- a/app/views/users/show.html.erb
+++ b/app/views/users/show.html.erb
@@ -25,7 +25,7 @@
<% if !@user.confirmed? %>
<% if @user.is?(current_user) || mod? %>
<span class="user-unconfirmed">Please confirm your email <u><%= @user.email %></u> !</span>
- <%= button_to "Resend the confirmation mail", resend_mail_user_path, class: "btn dark", form_class: "inline-block", data: {confirm: "Did you check your spam folder?"} %>
+ <%= button_to "Resend the confirmation mail", resend_mail_user_path, class: "btn blue", form_class: "inline-block", data: {confirm: "Did you check your spam folder?"} %>
<% else %>
<span class="user-unconfirmed">This user hasn't confirmed their email yet!</span>
<% end %>
@@ -54,10 +54,10 @@
<td><b>Role</b></td>
<td><%= link_to @user.role, users_path(:role => @user.role.name) %></td>
</tr>
- <% if current_user && !@user.skype.blank? %>
+ <% if current_user && !@user.discord.blank? %>
<tr>
- <td><b>Skype</b></td>
- <td><%= link_to @user.skype, "skype:#{@user.skype}?chat", target: "_blank" %></a></td>
+ <td><b>Discord</b></td>
+ <td><%= @user.discord %></td>
</tr>
<% end %>
<% if !@user.youtube.blank? && !@user.youtube_channelname.blank? %>
diff --git a/db/migrate/20190222152220_drop_forums_labels.rb b/db/migrate/20190222152220_drop_forums_labels.rb
new file mode 100644
index 0000000..06d8c4a
--- /dev/null
+++ b/db/migrate/20190222152220_drop_forums_labels.rb
@@ -0,0 +1,5 @@
+class DropForumsLabels < ActiveRecord::Migration
+ def change
+ drop_table :forums_labels
+ end
+end
diff --git a/db/migrate/20190222152638_remove_skype_add_discord_from_users.rb b/db/migrate/20190222152638_remove_skype_add_discord_from_users.rb
new file mode 100644
index 0000000..34f1dea
--- /dev/null
+++ b/db/migrate/20190222152638_remove_skype_add_discord_from_users.rb
@@ -0,0 +1,6 @@
+class RemoveSkypeAddDiscordFromUsers < ActiveRecord::Migration
+ def change
+ remove_column :users, :skype
+ add_column :users, :discord, :string
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 1e4d5f4..dba9247 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -11,7 +11,7 @@
#
# It's strongly recommended that you check this file into your version control system.
-ActiveRecord::Schema.define(version: 20180606223258) do
+ActiveRecord::Schema.define(version: 20190222152638) do
create_table "badges", force: :cascade do |t|
t.string "name", limit: 191
@@ -54,11 +54,6 @@ ActiveRecord::Schema.define(version: 20180606223258) do
t.integer "necro_length", limit: 4
end
- create_table "forums_labels", id: false, force: :cascade do |t|
- t.integer "forum_id", limit: 4
- t.integer "label_id", limit: 4
- end
-
create_table "forumthreads", force: :cascade do |t|
t.string "title", limit: 255
t.text "content", limit: 16777215
@@ -134,7 +129,6 @@ ActiveRecord::Schema.define(version: 20180606223258) do
t.string "email", limit: 191
t.text "about", limit: 65535
t.string "last_ip", limit: 255
- t.string "skype", limit: 255
t.string "youtube", limit: 255
t.string "youtube_channelname", limit: 255
t.string "twitter", limit: 255
@@ -154,14 +148,15 @@ ActiveRecord::Schema.define(version: 20180606223258) do
t.boolean "header_scroll", default: false
t.boolean "dark", default: false
t.text "public_key", limit: 65535
- t.string "totp_secret", limit: 255
+ t.string "totp_secret", limit: 255
t.boolean "totp_enabled", default: false
+ t.string "discord", limit: 191
end
add_index "users", ["email"], name: "index_users_on_email", unique: true, using: :btree
add_index "users", ["ign"], name: "index_users_on_ign", unique: true, using: :btree
add_index "users", ["name"], name: "index_users_on_name", unique: true, using: :btree
- add_index "users", ["skype"], name: "index_users_on_skype", unique: true, using: :btree
+ add_index "users", ["discord"], name: "index_users_on_discord", unique: true, using: :btree
add_index "users", ["twitter"], name: "index_users_on_twitter", unique: true, using: :btree
add_index "users", ["uuid"], name: "index_users_on_uuid", unique: true, using: :btree
add_index "users", ["youtube"], name: "index_users_on_youtube", unique: true, using: :btree
diff --git a/db/seeds.rb b/db/seeds.rb
index f6b731f..7ecb6de 100644
--- a/db/seeds.rb
+++ b/db/seeds.rb
@@ -32,7 +32,7 @@ deleted_user = User.create!(
password_confirmation: userpw,
role: Role.get(:disabled),
badge: Badge.get(:none),
- skype: "echo123",
+ discord: "echo123",
last_ip: "0.0.0.0",
confirmed: true,
last_seen: Time.utc(0).to_datetime,
@@ -40,4 +40,4 @@ deleted_user = User.create!(
utc_time: false,
dark: false
)
-deleted_user.update_attribute(:ign, "Steve")
+deleted_user.update_attribute(:ign, "Steve") \ No newline at end of file