shorten titles, DRY up url generation

This commit is contained in:
Kyle Drake 2014-07-03 14:03:35 -05:00
parent c512b579ce
commit 50d0e9d4db
9 changed files with 66 additions and 31 deletions

View file

@ -1,5 +1,6 @@
require 'tilt'
require 'rss'
require 'nokogiri'
class Site < Sequel::Model
include Sequel::ParanoidDelete
@ -61,6 +62,8 @@ class Site < Sequel::Model
BANNED_TIME = 2592000 # 30 days in seconds
TITLE_MAX = 100
many_to_one :server
many_to_many :tags
@ -256,6 +259,15 @@ class Site < Sequel::Model
return false
end
if filename == 'index.html'
new_title = Nokogiri::HTML(File.read(uploaded.path)).css('title').first.text
if new_title.length < TITLE_MAX
self.title = new_title
save_changes(validate: false)
end
end
FileUtils.mv uploaded.path, file_path(filename)
File.chmod(0640, file_path(filename))
@ -509,8 +521,16 @@ class Site < Sequel::Model
Event.filter(site_id: following_ids+[self.id]).order(:created_at.desc).limit(limit, offset).all
end
def host
domain ? domain : "#{username}.neocities.org"
end
def title
values[:title] || "#{values[:username]}.neocities.org"
if values[:title].nil? || values[:title].empty?
domain ? domain : "#{username}.neocities.org"
else
values[:title]
end
end
def hits_english