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