mirror of
https://github.com/discourse/discourse.git
synced 2024-11-22 15:25:35 +08:00
Don't try to import invalid websites
This commit is contained in:
parent
e8d837269b
commit
eb166e78b6
|
@ -1,8 +1,10 @@
|
|||
class UserProfile < ActiveRecord::Base
|
||||
belongs_to :user, inverse_of: :user_profile
|
||||
|
||||
WEBSITE_REGEXP = /(^$)|(^(http|https):\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,9}(([0-9]{1,5})?\/.*)?$)/ix
|
||||
|
||||
validates :bio_raw, length: { maximum: 3000 }
|
||||
validates :website, format: { with: /(^$)|(^(http|https):\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,9}(([0-9]{1,5})?\/.*)?$)/ix }, allow_blank: true
|
||||
validates :website, format: { with: WEBSITE_REGEXP }, allow_blank: true
|
||||
validates :user, presence: true
|
||||
before_save :cook
|
||||
after_save :trigger_badges
|
||||
|
|
|
@ -306,8 +306,8 @@ class ImportScripts::Base
|
|||
User.transaction do
|
||||
u.save!
|
||||
if bio_raw.present? || website.present? || location.present?
|
||||
u.user_profile.bio_raw = bio_raw if bio_raw.present?
|
||||
u.user_profile.website = website if website.present?
|
||||
u.user_profile.bio_raw = bio_raw[0..2999] if bio_raw.present?
|
||||
u.user_profile.website = website unless website.blank? || website !~ UserProfile::WEBSITE_REGEXP
|
||||
u.user_profile.location = location if location.present?
|
||||
u.user_profile.save!
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue
Block a user