Merge branch 'neocities:master' into master

This commit is contained in:
Kiril Misnikov 2024-01-22 16:55:49 +02:00 committed by GitHub
commit f110dc6fb4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 32 additions and 5 deletions

View file

@ -62,6 +62,7 @@ gem 'dnsbl-client'
gem 'minfraud' gem 'minfraud'
gem 'image_optimizer' # apt install optipng jpegoptim pngquant gem 'image_optimizer' # apt install optipng jpegoptim pngquant
gem 'rubyzip', require: 'zip' gem 'rubyzip', require: 'zip'
gem 'airbrake'
group :development, :test do group :development, :test do
gem 'pry' gem 'pry'

View file

@ -31,6 +31,10 @@ GEM
adequate_crypto_address (0.1.9) adequate_crypto_address (0.1.9)
base58 (~> 0.2) base58 (~> 0.2)
keccak (~> 1.3) keccak (~> 1.3)
airbrake (13.0.4)
airbrake-ruby (~> 6.0)
airbrake-ruby (6.2.2)
rbtree3 (~> 0.6)
ansi (1.5.0) ansi (1.5.0)
base58 (0.2.3) base58 (0.2.3)
base64 (0.2.0) base64 (0.2.0)
@ -240,6 +244,7 @@ GEM
rb-fsevent (0.11.2) rb-fsevent (0.11.2)
rb-inotify (0.10.1) rb-inotify (0.10.1)
ffi (~> 1.0) ffi (~> 1.0)
rbtree3 (0.7.1)
redis (5.0.8) redis (5.0.8)
redis-client (>= 0.17.0) redis-client (>= 0.17.0)
redis-client (0.19.1) redis-client (0.19.1)
@ -351,6 +356,7 @@ DEPENDENCIES
activesupport activesupport
addressable (>= 2.8.0) addressable (>= 2.8.0)
adequate_crypto_address adequate_crypto_address
airbrake
bcrypt bcrypt
capybara capybara
certified certified

View file

@ -62,7 +62,7 @@ def browse_sites_dataset
when 'followers' when 'followers'
ds = ds.order :follow_count.desc, :updated_at.desc ds = ds.order :follow_count.desc, :updated_at.desc
when 'supporters' when 'supporters'
ds = ds.where id: Site.supporter_ids ds = ds.where sites__id: Site.supporter_ids
ds = ds.order :follow_count.desc, :views.desc, :site_updated_at.desc ds = ds.order :follow_count.desc, :views.desc, :site_updated_at.desc
when 'featured' when 'featured'
ds = ds.exclude featured_at: nil ds = ds.exclude featured_at: nil

View file

@ -1,6 +1,9 @@
require 'rubygems' require 'rubygems'
require './app.rb' require './app.rb'
require 'sidekiq/web' require 'sidekiq/web'
require 'airbrake/sidekiq'
use Airbrake::Rack::Middleware
map('/') do map('/') do
use(Rack::Cache, use(Rack::Cache,

View file

@ -187,3 +187,18 @@ Minfraud.configure do |c|
c.license_key = $config['minfraud_license_key'] c.license_key = $config['minfraud_license_key']
c.enable_validation = true c.enable_validation = true
end end
Airbrake.configure do |c|
c.project_id = $config['airbrake_project_id']
c.project_key = $config['airbrake_project_key']
end
Airbrake.add_filter do |notice|
if notice[:params][:password]
# Filter out password.
notice[:params][:password] = '[Filtered]'
end
notice.ignore! if notice.stash[:exception].is_a?(Sinatra::NotFound)
end

View file

@ -1538,14 +1538,16 @@ class Site < Sequel::Model
xml.image { xml.image {
xml.url sharing_screenshot_url xml.url sharing_screenshot_url
xml.title title xml.title title
xml.link uri
} }
site_change_events.each do |event| site_change_events.each do |event|
event_link = "https://neocities.org/site/#{username}?event_id=#{event.id.to_s}"
xml.item { xml.item {
xml.title "#{title} has been updated." xml.title "#{title} has been updated."
xml.link "https://neocities.org/site/#{username}?event_id=#{event.id.to_s}" xml.link event_link
xml.pubDate event.created_at.rfc822 xml.pubDate event.created_at.rfc822
xml.guid event.id.to_s xml.guid event_link
} }
end end
} }

View file

@ -5,7 +5,7 @@ require 'sanitize'
class SiteFile < Sequel::Model class SiteFile < Sequel::Model
CLASSIFIER_LIMIT = 1_000_000 CLASSIFIER_LIMIT = 1_000_000
CLASSIFIER_WORD_LIMIT = 25 CLASSIFIER_WORD_LIMIT = 25
FILE_PATH_CHARACTER_LIMIT = 600 FILE_PATH_CHARACTER_LIMIT = 1200
FILE_NAME_CHARACTER_LIMIT = 100 FILE_NAME_CHARACTER_LIMIT = 100
unrestrict_primary_key unrestrict_primary_key
plugin :update_primary_key plugin :update_primary_key

View file

@ -209,7 +209,7 @@
<div id="csitebackup" class="accordion-body collapse"> <div id="csitebackup" class="accordion-body collapse">
<div class="accordion-inner"> <div class="accordion-inner">
<p> <p>
Site downloading issues are almost always related to the internet connectivity issues. If your download is continuing to get cancelled or interrupted, check your WiFi router, or try plugging in directly to the router to see if that resolves it. You could also try downloading from a local library or coffee shop and see if you have the same issue. Site downloading issues are almost always related to the internet connectivity issues. If your download is continuing to get cancelled or interrupted, check your WiFi router, or try plugging in directly to the router to see if that resolves it. You could also try downloading from a local library or coffee shop and see if you have the same issue. If you're having trouble with the download link, you can also try <a href="https://melonking.net/free/software/neocities-downloader">SAve MY nEOCiTy!</a>, which is a third party downloading tool for Neocities sites.
</p> </p>
</div> </div>
</div> </div>