Fix status and add_http method
This commit is contained in:
parent
176d338ed2
commit
8f85d8939f
|
@ -15,17 +15,22 @@ class WebLink
|
|||
field :create_user_id
|
||||
field :update_user_id
|
||||
|
||||
scope :can_display, ->{where(is_hidden: false)}
|
||||
scope :can_display, ->{where(is_hidden: false).order_by([:is_top, :desc])}
|
||||
|
||||
before_validation :add_http
|
||||
validates :url, :presence => true, :format => /\A(http|https):\/\/(([a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5})|((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))(:[0-9]{1,5})?(\/.*)?\Z/i
|
||||
before_save :add_http
|
||||
|
||||
protected
|
||||
|
||||
def add_http
|
||||
unless self.url[/^http:\/\//] || self.url[/^https:\/\//]
|
||||
self.url = 'http://' + self.url
|
||||
temp_url = {}
|
||||
Site.first.in_use_locales.each do |locale|
|
||||
locale = locale.to_s
|
||||
temp_url[locale] = self.url_translations[locale]
|
||||
unless /https?:\/\/[\S]+/.match(self.url_translations[locale]) || self.url_translations[locale].blank?
|
||||
temp_url[locale] = 'http://' + self.url_translations[locale]
|
||||
end
|
||||
end
|
||||
self.url_translations = temp_url
|
||||
end
|
||||
|
||||
end
|
Loading…
Reference in New Issue