mirror of
https://github.com/neocities/neocities.git
synced 2025-04-25 01:32:36 +02:00
DRY up file uri / index stuff a bit
This commit is contained in:
parent
18041d4d28
commit
4d27f625f1
2 changed files with 24 additions and 17 deletions
|
@ -53,21 +53,23 @@ class Site < Sequel::Model
|
|||
VALID_HOSTNAME = /^[a-z0-9][a-z0-9-]+?[a-z0-9]$/i # http://tools.ietf.org/html/rfc1123
|
||||
|
||||
# FIXME smarter DIR_ROOT discovery
|
||||
DIR_ROOT = './'
|
||||
TEMPLATE_ROOT = File.join DIR_ROOT, 'views', 'templates'
|
||||
PUBLIC_ROOT = File.join DIR_ROOT, 'public'
|
||||
SITE_FILES_ROOT = File.join PUBLIC_ROOT, (ENV['RACK_ENV'] == 'test' ? 'sites_test' : 'sites')
|
||||
SCREENSHOTS_ROOT = File.join(PUBLIC_ROOT, (ENV['RACK_ENV'] == 'test' ? 'site_screenshots_test' : 'site_screenshots'))
|
||||
THUMBNAILS_ROOT = File.join(PUBLIC_ROOT, (ENV['RACK_ENV'] == 'test' ? 'site_thumbnails_test' : 'site_thumbnails'))
|
||||
SCREENSHOTS_URL_ROOT = ENV['RACK_ENV'] == 'test' ? '/site_screenshots_test' : '/site_screenshots'
|
||||
THUMBNAILS_URL_ROOT = ENV['RACK_ENV'] == 'test' ? '/site_thumbnails_test' : '/site_thumbnails'
|
||||
DELETED_SITES_ROOT = File.join PUBLIC_ROOT, 'deleted_sites'
|
||||
BANNED_SITES_ROOT = File.join PUBLIC_ROOT, 'banned_sites'
|
||||
IMAGE_REGEX = /jpg|jpeg|png|bmp|gif/
|
||||
LOSSLESS_IMAGE_REGEX = /png|bmp|gif/
|
||||
LOSSY_IMAGE_REGEX = /jpg|jpeg/
|
||||
HTML_REGEX = /.html$|.htm$/
|
||||
MAX_COMMENT_SIZE = 420 # Used to be the limit for Facebook.. no comment (PUN NOT INTENDED).
|
||||
DIR_ROOT = './'
|
||||
TEMPLATE_ROOT = File.join DIR_ROOT, 'views', 'templates'
|
||||
PUBLIC_ROOT = File.join DIR_ROOT, 'public'
|
||||
SITE_FILES_ROOT = File.join PUBLIC_ROOT, (ENV['RACK_ENV'] == 'test' ? 'sites_test' : 'sites')
|
||||
SCREENSHOTS_ROOT = File.join(PUBLIC_ROOT, (ENV['RACK_ENV'] == 'test' ? 'site_screenshots_test' : 'site_screenshots'))
|
||||
THUMBNAILS_ROOT = File.join(PUBLIC_ROOT, (ENV['RACK_ENV'] == 'test' ? 'site_thumbnails_test' : 'site_thumbnails'))
|
||||
SCREENSHOTS_URL_ROOT = ENV['RACK_ENV'] == 'test' ? '/site_screenshots_test' : '/site_screenshots'
|
||||
THUMBNAILS_URL_ROOT = ENV['RACK_ENV'] == 'test' ? '/site_thumbnails_test' : '/site_thumbnails'
|
||||
DELETED_SITES_ROOT = File.join PUBLIC_ROOT, 'deleted_sites'
|
||||
BANNED_SITES_ROOT = File.join PUBLIC_ROOT, 'banned_sites'
|
||||
IMAGE_REGEX = /jpg|jpeg|png|bmp|gif/
|
||||
LOSSLESS_IMAGE_REGEX = /png|bmp|gif/
|
||||
LOSSY_IMAGE_REGEX = /jpg|jpeg/
|
||||
HTML_REGEX = /.html$|.htm$/
|
||||
INDEX_HTML_REGEX = /\/?index.html$/
|
||||
ROOT_INDEX_HTML_REGEX = /^\/?index.html$/
|
||||
MAX_COMMENT_SIZE = 420 # Used to be the limit for Facebook.. no comment (PUN NOT INTENDED).
|
||||
|
||||
SCREENSHOT_RESOLUTIONS = ['540x405', '210x158', '100x100', '50x50']
|
||||
THUMBNAIL_RESOLUTIONS = ['210x158']
|
||||
|
@ -1383,6 +1385,11 @@ class Site < Sequel::Model
|
|||
"#{default_schema}://#{host}"
|
||||
end
|
||||
|
||||
def file_uri(path)
|
||||
path = '/' + path unless path[0] == '/'
|
||||
uri + (path =~ ROOT_INDEX_HTML_REGEX ? '/' : path)
|
||||
end
|
||||
|
||||
def title
|
||||
begin
|
||||
if values[:title].blank? || values[:title].strip.empty?
|
||||
|
@ -1527,7 +1534,7 @@ class Site < Sequel::Model
|
|||
end
|
||||
|
||||
def empty_index?
|
||||
!site_files_dataset.where(path: /^\/?index.html$/).where(sha1_hash: EMPTY_FILE_HASH).first.nil?
|
||||
!site_files_dataset.where(path: ROOT_INDEX_HTML_REGEX).where(sha1_hash: EMPTY_FILE_HASH).first.nil?
|
||||
end
|
||||
|
||||
def tipping_enabled?
|
||||
|
|
|
@ -159,7 +159,7 @@
|
|||
<% if file[:is_directory] %>
|
||||
<a class="link-overlay" href="?dir=<%= Rack::Utils.escape file[:path] %>" title="View <%= file[:path] %>"></a>
|
||||
<% else %>
|
||||
<a class="link-overlay" href="https://<%= current_site.username %>.neocities.org<%= file[:path] == '/index.html' ? '/' : file[:path] %>" title="View <%= file[:path] == '/index.html' ? 'your site' : file[:path] %>" target="_blank"></a>
|
||||
<a class="link-overlay" href="<%= current_site.file_uri file[:path] %>" title="View <%= file[:path] == '/index.html' ? 'your site index' : file[:path] %>" target="_blank"></a>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
|
|
Loading…
Add table
Reference in a new issue